NESe (pronounced "Nessie") is a NES emulator based on the e6502 emulator, also written in C with a focus on speed and portability for use on embedded platforms, especially ARM.
Nevar pievienot vairāk kā 25 tēmas Tēmai ir jāsākas ar burtu vai ciparu, tā var saturēt domu zīmes ('-') un var būt līdz 35 simboliem gara.

52 rindas
1017B

  1. CC = gcc
  2. LD = $(CC)
  3. PFLAGS = -g
  4. #PFLAGS += -O3
  5. #PFLAGS += -DDEBUG_MAPPER
  6. #PFLAGS += -DDEBUG_RENDER
  7. #PFLAGS += -DDEBUG_PPU -DDEBUG_VRAM -DDEBUG_OAM
  8. PFLAGS += -DDEBUG_APU
  9. #PFLAGS += -DE6502_DEBUG
  10. CFLAGS = $(PFLAGS) -Wall -Werror -Wshadow -Wunused -I..
  11. LDFLAGS = $(PFLAGS)
  12. OBJDIR = obj
  13. SRCDIR = src
  14. BINDIR = bin
  15. # nese
  16. TARGET_1 = nese
  17. LDLIBS_1 = -lSDL2
  18. SRC_SRCS_1 = nese.c ines.c
  19. SRC_SRCS_1 += nes.c ppu.c input.c
  20. SRC_SRCS_1 += cart.c mapper.c
  21. SRC_SRCS_1 += apu.c audio.c
  22. SRC_SRCS_1 += sdl_render.c sdl_input.c sdl_audio.c
  23. MAPDIR = src/map
  24. MAP_SRCS_1 = nrom.c mmc1.c uxrom.c cnrom.c mmc3.c
  25. EXT_SRCS_1 = e6502/e6502.c e6502/opcodes.c blip-buf/blip_buf.c
  26. SRCS_1 = $(SRC_SRCS_1:%=$(SRCDIR)/%)
  27. SRCS_1 += $(MAP_SRCS_1:%=$(MAPDIR)/%)
  28. SRCS_1 += $(EXT_SRCS_1)
  29. OBJS_1 = $(SRCS_1:%.c=$(OBJDIR)/%.o)
  30. all: $(BINDIR)/$(TARGET_1)
  31. clean: ; rm -rf $(OBJDIR) $(BINDIR)
  32. $(BINDIR)/$(TARGET_1): $(OBJS_1)
  33. @mkdir -p $(@D)
  34. $(LD) $(LDFLAGS) $^ $(LDLIBS_1) -o $@
  35. $(OBJDIR)/%.o: %.c
  36. @mkdir -p $(@D)
  37. $(CC) $(CFLAGS) -c $< -o $@