Advertisement
Guest User

Untitled

a guest
Feb 18th, 2019
121
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Make 2.00 KB | None | 0 0
  1. #Chemin vers le rep MSX contenant sdcc et openmsx
  2. export PATHMSX = c:/PROGRAMMATION/MSX2/
  3.  
  4. export DEVKITSDCC = $(PATHMSX)sdcc/bin/
  5. export MSXLIB = $(PATHMSX)sdcc/lib/
  6. export MSXREL = $(PATHMSX)sdcc/rel/
  7. export OPENMSX = $(PATHMSX)openmsx/
  8. export OUTPUTDIR = $(CURDIR)/out
  9.  
  10. # Nom de fichier de sorti et emplacement des rep
  11. PROJET_NAME ?= GAMENAME
  12. TARGET = $(shell basename $(CURDIR))
  13. SOURCES = $(CURDIR)/src
  14.  
  15. # Compilo
  16. CC = $(DEVKITSDCC)sdcc.exe
  17. MAKE = $(DEVKITSDCC)make.exe
  18. IHX = $(DEVKITSDCC)hex2bin.exe
  19.  
  20. # Flags
  21. CFLAGS = -mz80
  22. IFLAGS = -mz80 --no-std-crt0 --code-loc 0x107 --data-loc 0x0 $(MSXREL)crt0_msxdos.rel $(MSXLIB)/fusion.lib
  23.  
  24. # Source des fichiers
  25. CFILES := $(sort $(wildcard $(SOURCE)*.c $(SOURCE)**/*.c))
  26.  
  27. .PHONY: all
  28.  
  29. all:
  30.     $(MAKE) $(PROJET_NAME)
  31.     @echo ----- FINISH -----
  32.  
  33. $(PROJET_NAME): compilation linkage msx clean run
  34.  
  35. #---------------------------------------------------------------
  36. #   COMPILATION
  37. #---------------------------------------------------------------
  38.  
  39. compilation:
  40.     @echo Compiling to $(PROJET_NAME) ... $(notdir $<)
  41.     $(CC) -c $(CFLAGS) $(CFILES)
  42.  
  43. #---------------------------------------------------------------
  44. #   LINK
  45. #---------------------------------------------------------------
  46.  
  47. linkage:
  48.     @echo Link to $(PROJET_NAME).ihx ... $(notdir $<)
  49.     $(CC) -o $(PROJET_NAME).ihx $(IFLAGS) $(wildcard $(SOURCE)*.rel)
  50.  
  51.  
  52. #---------------------------------------------------------------
  53. #   EXPORT
  54. #---------------------------------------------------------------
  55.  
  56. msx:
  57.     @echo Export to $(PROJET_NAME).COM ... $(notdir $<)
  58.     $(IHX) -e com $(PROJET_NAME).ihx $<
  59.     copy /Y $(PROJET_NAME).COM ".\out\" $<
  60.  
  61. #---------------------------------------------------------------
  62. #   EMULATEUR
  63. #---------------------------------------------------------------
  64.  
  65. run:
  66.     $(OPENMSX)openmsx.exe -machine Philips_VG_8235 -ext msxdos2 -diska $(OUTPUTDIR)
  67.  
  68. clean:
  69.     del $(wildcard $(SOURCE)*.o $(SOURCE)**/*.o) *.com *.asm *ihx *.lk *.lst *.map *.noi *.sym $(wildcard $(SOURCE)*.rel)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement