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.
Nie możesz wybrać więcej, niż 25 tematów Tematy muszą się zaczynać od litery lub cyfry, mogą zawierać myślniki ('-') i mogą mieć do 35 znaków.

53 wiersze
1.0KB

  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. PFLAGS += -DE6502_ILLEGAL
  11. CFLAGS = $(PFLAGS) -Wall -Werror -Wshadow -Wunused -I..
  12. LDFLAGS = $(PFLAGS)
  13. OBJDIR = obj
  14. SRCDIR = src
  15. BINDIR = bin
  16. # nese
  17. TARGET_1 = nese
  18. LDLIBS_1 = -lSDL2
  19. SRC_SRCS_1 = nese.c ines.c
  20. SRC_SRCS_1 += nes.c ppu.c input.c
  21. SRC_SRCS_1 += cart.c mapper.c
  22. SRC_SRCS_1 += apu.c audio.c
  23. SRC_SRCS_1 += sdl_render.c sdl_input.c sdl_audio.c
  24. MAPDIR = src/map
  25. MAP_SRCS_1 = nrom.c mmc1.c uxrom.c cnrom.c mmc3.c
  26. EXT_SRCS_1 = e6502/e6502.c e6502/opcodes.c blip-buf/blip_buf.c
  27. SRCS_1 = $(SRC_SRCS_1:%=$(SRCDIR)/%)
  28. SRCS_1 += $(MAP_SRCS_1:%=$(MAPDIR)/%)
  29. SRCS_1 += $(EXT_SRCS_1)
  30. OBJS_1 = $(SRCS_1:%.c=$(OBJDIR)/%.o)
  31. all: $(BINDIR)/$(TARGET_1)
  32. clean: ; rm -rf $(OBJDIR) $(BINDIR)
  33. $(BINDIR)/$(TARGET_1): $(OBJS_1)
  34. @mkdir -p $(@D)
  35. $(LD) $(LDFLAGS) $^ $(LDLIBS_1) -o $@
  36. $(OBJDIR)/%.o: %.c
  37. @mkdir -p $(@D)
  38. $(CC) $(CFLAGS) -c $< -o $@