Makefile 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. # SDK Config
  2. PLATFORM=$(shell uname)
  3. ifeq ($(PLATFORM),Linux)
  4. # Linux Wine
  5. SDK=/home/david/.wine/drive_c/65xx_FreeSDK
  6. WINE=wine
  7. EMU=../../tools/bsnes/bsnes
  8. DISASM=/home/david/Devel/arch/snes/devkit/bin/disasm
  9. UCON=ucon64
  10. else
  11. # Mac Wine
  12. SDK=/Users/david/.wine/drive_c/65xx_FreeSDK
  13. WINE=wine
  14. EMU=zsnes
  15. DISASM=/Users/david/Devel/arch/snes/devkit/bin/disasm
  16. UCON=ucon64
  17. endif
  18. CC=$(WINE) $(SDK)/bin/WDC816CC.exe
  19. AS=$(WINE) $(SDK)/bin/WDC816AS.exe
  20. LD=$(WINE) $(SDK)/bin/WDCLN.exe
  21. PADBIN=$(WINE) tools/padbin.exe
  22. # Project
  23. INC=$(SDK)/include
  24. LIBS=-L$(SDK)/lib/cc
  25. #-L$(SDK)/lib/c134
  26. OBJS=StartupSnes.obj main.obj pad.obj PPU.obj debug.obj ressource.obj
  27. APP=loadertest.smc
  28. GFX=debugfont
  29. all: $(APP)
  30. run:
  31. $(EMU) $(APP)
  32. disasm: $(APP)
  33. rm -rf $(APP)
  34. $(DISASM) $(APP) > $(APP).asm
  35. upload: header
  36. ucon64 --port=usb --xsnesram $(APP)
  37. repair: $(APP)
  38. $(UCON) -snes -chk $(APP) 2>&1 >/dev/null
  39. rm -rf *.bak
  40. header: $(APP)
  41. $(UCON) -smc $(APP)
  42. rm -rf *.bak
  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) -B -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) $(LIBS) -O $@
  56. $(PADBIN) 0x20000 $(APP)
  57. clean:
  58. rm -vf $(APP) *.obj *.TMP