Makefile 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  1. # SDK Config
  2. PLATFORM=mac
  3. ifeq ($(PLATFORM),linux)
  4. # Linux Wine
  5. SDK=/home/david/.wine/drive_c/65xx_FreeSDK
  6. WINE=wine
  7. EMU=zsnes
  8. EMU_DEBUG=/home/david/Devel/arch/snes/tools/zsnes_linux_debug151/src/zsnesd -d
  9. else
  10. # Mac Wine
  11. SDK=/Users/david/.wine/drive_c/65xx_FreeSDK
  12. WINE=wine
  13. EMU=zsnes
  14. endif
  15. CC=$(WINE) $(SDK)/bin/WDC816CC.exe
  16. AS=$(WINE) $(SDK)/bin/WDC816AS.exe
  17. LD=$(WINE) $(SDK)/bin/WDCLN.exe
  18. PADBIN=$(WINE) tools/padbin.exe
  19. PCX2SNES=$(WINE) tools/Pcx2Snes.exe
  20. # Project
  21. INC=$(SDK)/include
  22. LIBS=$(SDK)/lib/cc
  23. #OBJS=StartupSnes.obj main.obj pad.obj event.obj myEvents.obj PPU.obj debug.obj ressource.obj
  24. OBJS=StartupSnes.obj main.obj pad.obj PPU.obj debug.obj ressource.obj crc.obj
  25. APP=banks.smc
  26. GFX=kungfu debugfont
  27. all: $(APP)
  28. run:
  29. $(EMU) $(APP)
  30. debugger:
  31. $(EMU_DEBUG) $(APP)
  32. upload:
  33. ucon64 $(APP)
  34. cp -rv $(APP) /Volumes/SNES
  35. sync
  36. diskutil unmount /Volumes/SNES
  37. crc:
  38. python ../../scripts/crc_xmodem.py $(APP)
  39. kungfu:
  40. $(PCX2SNES) ressource/kungfu -n -c16 -screen
  41. debugfont:
  42. $(PCX2SNES) ressource/debugFont -n -c16 -s8 -o1
  43. StartupSnes.obj: StartupSnes.asm
  44. $(AS) -V $?
  45. ressource.obj: ressource.asm
  46. $(AS) -V $?
  47. %.obj: %.c
  48. $(CC) -wl -wp -sop -MC -I $(INC) $?
  49. $(APP): $(OBJS)
  50. $(LD) -HB -M21 -V -T -Pff \
  51. -C008000,0000 -U0000,0000 \
  52. -Avectors=FFE4,7FE4 \
  53. -Aregistration_data=FFB0,7FB0 \
  54. -Aressource=18000,8000 \
  55. -N $(OBJS) -L$(LIBS) -O $@
  56. $(PADBIN) 0x40000 $(APP)
  57. clean:
  58. rm -vf $(APP) *.obj