2017-07-28 22:11:25 +00:00
|
|
|
#
|
|
|
|
# Makefile
|
|
|
|
# GS Cats
|
|
|
|
#
|
|
|
|
# Created by Quinn Dunki on 7/14/15.
|
|
|
|
# One Girl, One Laptop Productions
|
2023-07-05 03:09:17 +00:00
|
|
|
# http://www.blondihacks.com
|
2017-07-28 22:11:25 +00:00
|
|
|
#
|
|
|
|
|
|
|
|
|
|
|
|
CL65=cl65
|
2023-06-18 23:59:37 +00:00
|
|
|
CAD=./cadius
|
|
|
|
VOLNAME=GSAPP
|
|
|
|
IMG=DiskImageParts
|
|
|
|
EMU=/Applications/GSplus.app/Contents/MacOS/gsplus
|
|
|
|
ADDR=0800
|
|
|
|
CODEBANK=CODEBANK\#060000
|
|
|
|
CODEBANKE1=CODEBANKE1\#060800
|
|
|
|
EXEC=$(PGM)\#06$(ADDR)
|
2023-07-05 03:09:17 +00:00
|
|
|
SOUNDBANK=SOUNDBANK\#060000
|
2023-07-10 00:58:05 +00:00
|
|
|
FONTBANK=FONTBANK\#060000
|
2023-07-05 03:09:17 +00:00
|
|
|
|
2017-07-28 22:11:25 +00:00
|
|
|
PGM=gscats
|
2017-10-07 22:00:40 +00:00
|
|
|
MRSPRITE=../MrSprite/mrsprite
|
2018-08-06 20:00:13 +00:00
|
|
|
GENART=Art/Generated
|
2023-07-05 03:09:17 +00:00
|
|
|
GENSOUND=Sound/Generated
|
2018-06-10 02:29:00 +00:00
|
|
|
CHROMA=a4dffb
|
2018-06-10 19:00:05 +00:00
|
|
|
PALETTE=a4dffb a4dffb 008800 886611 cc9933 eebb44 dd6666 ff99aa 777777 ff0000 b7b7b7 dddddd 0077bb ffff00 000000 ffffff
|
2017-10-07 22:00:40 +00:00
|
|
|
SPRITES=SpriteBank
|
2023-06-18 23:59:37 +00:00
|
|
|
SPRITEBANK=$(SPRITES)\#060000
|
2018-08-06 20:00:13 +00:00
|
|
|
FLIPLIST=$(wildcard Art/*Fan.gif) $(wildcard Art/*Spit*.gif)
|
2018-01-16 20:56:53 +00:00
|
|
|
REMOTESYMBOLS=-Wl $(shell ./ParseMapFile.py *.map)
|
2017-07-28 22:11:25 +00:00
|
|
|
|
2023-07-12 22:26:17 +00:00
|
|
|
all: clean diskimage terrain_e1 fonts $(PGM) loader emulate
|
2017-07-28 22:11:25 +00:00
|
|
|
|
2023-06-18 23:59:37 +00:00
|
|
|
emulate:
|
|
|
|
# Leading hypen needed because GSPlus maddeningly returns code 1 (error) always and for no reason
|
|
|
|
-/Applications/GSplus.app/Contents/MacOS/gsplus
|
|
|
|
|
|
|
|
diskimage:
|
|
|
|
$(CAD) CREATEVOLUME $(PGM).2mg $(VOLNAME) 800KB
|
|
|
|
$(CAD) ADDFILE $(PGM).2mg /$(VOLNAME) $(IMG)/BITSY.BOOT/BITSY.BOOT#FF2000
|
|
|
|
$(CAD) ADDFILE $(PGM).2mg /$(VOLNAME) $(IMG)/QUIT.SYSTEM/QUIT.SYSTEM#FF2000
|
|
|
|
$(CAD) ADDFILE $(PGM).2mg /$(VOLNAME) $(IMG)/PRODOS/PRODOS#FF0000
|
|
|
|
$(CAD) ADDFILE $(PGM).2mg /$(VOLNAME) $(IMG)/BASIC.SYSTEM/BASIC.SYSTEM#FF2000
|
2023-07-05 03:09:17 +00:00
|
|
|
|
2017-07-28 22:11:25 +00:00
|
|
|
$(PGM):
|
2018-01-16 20:56:53 +00:00
|
|
|
@echo $(REMOTESYMBOLS)
|
2023-06-18 23:59:37 +00:00
|
|
|
@PATH=$(PATH):/usr/local/bin; $(CL65) -t apple2enh -C linkerConfig --cpu 65816 --start-addr 0000 -l$(PGM).lst $(REMOTESYMBOLS) $(PGM).s -o $(CODEBANK)
|
|
|
|
$(CAD) ADDFILE $(PGM).2mg /$(VOLNAME) $(CODEBANK)
|
|
|
|
$(CAD) ADDFILE $(PGM).2mg /$(VOLNAME) $(SPRITEBANK)
|
2023-07-05 03:09:17 +00:00
|
|
|
$(CAD) ADDFILE $(PGM).2mg /$(VOLNAME) $(SOUNDBANK)
|
2023-07-10 00:58:05 +00:00
|
|
|
$(CAD) ADDFILE $(PGM).2mg /$(VOLNAME) $(FONTBANK)
|
2023-07-05 03:09:17 +00:00
|
|
|
|
2023-06-18 23:59:37 +00:00
|
|
|
rm -f $(CODEBANK)
|
2023-07-12 22:26:17 +00:00
|
|
|
rm -f $(FONTBANK)
|
2017-07-28 22:11:25 +00:00
|
|
|
rm -f $(PGM).o
|
2018-01-16 20:56:53 +00:00
|
|
|
rm -f terrain_e1.map
|
2017-07-28 22:11:25 +00:00
|
|
|
|
2017-10-02 00:36:09 +00:00
|
|
|
loader:
|
2023-06-18 23:59:37 +00:00
|
|
|
@PATH=$(PATH):/usr/local/bin; $(CL65) -t apple2enh --cpu 65816 --start-addr $(ADDR) -lloader.lst loader.s -o $(EXEC)
|
|
|
|
$(CAD) ADDFILE $(PGM).2mg /$(VOLNAME) $(EXEC)
|
|
|
|
rm -f $(EXEC)
|
2017-10-02 00:36:09 +00:00
|
|
|
rm -f loader.o
|
|
|
|
|
2018-01-16 20:56:53 +00:00
|
|
|
terrain_e1:
|
2023-06-18 23:59:37 +00:00
|
|
|
@PATH=$(PATH):/usr/local/bin; $(CL65) -t apple2enh -C linkerConfig --cpu 65816 --start-addr $(ADDR) -l -vm -m terrain_e1.map terrain_e1.s -o $(CODEBANKE1)
|
|
|
|
$(CAD) ADDFILE $(PGM).2mg /$(VOLNAME) $(CODEBANKE1)
|
|
|
|
rm -f $(CODEBANKE1)
|
2018-01-16 20:56:53 +00:00
|
|
|
rm -f terrain_e1.o
|
|
|
|
|
2023-07-12 22:26:17 +00:00
|
|
|
fonts:
|
|
|
|
rm -rf $(FONTBANK)
|
2023-07-13 19:08:21 +00:00
|
|
|
./CompileFont.py 8 8 32 14 "font8" "Art/Assets/Font8x8.gif" > font8x8.s
|
|
|
|
./CompileFont.py 16 16 32 14 "font16" "Art/Assets/Font16x16.gif" > font16x16.s
|
|
|
|
@PATH=$(PATH):/usr/local/bin; $(CL65) -t apple2enh -C linkerConfig --cpu 65816 --start-addr 0000 -lfonts.lst fontEngine.s -o $(FONTBANK)
|
2023-07-12 22:26:17 +00:00
|
|
|
rm -f fontEngine.o
|
|
|
|
|
2017-07-28 22:11:25 +00:00
|
|
|
clean:
|
|
|
|
rm -f $(PGM)
|
|
|
|
rm -f $(PGM).o
|
2017-10-02 00:36:09 +00:00
|
|
|
rm -f loader
|
|
|
|
rm -f loader.o
|
2018-01-16 20:56:53 +00:00
|
|
|
rm -f terrain_e1.o
|
|
|
|
rm -f terrain_e1.map
|
|
|
|
rm -f terrain_e1
|
2018-08-06 20:00:13 +00:00
|
|
|
rm -f Art/*m.gif
|
|
|
|
rm -f $(GENART)/*
|
2023-06-18 23:59:37 +00:00
|
|
|
rm -f $(PGM).2mg
|
|
|
|
|
2017-10-01 22:40:29 +00:00
|
|
|
.PHONY: art
|
|
|
|
art:
|
2018-08-06 20:00:13 +00:00
|
|
|
rm -f $(GENART)/*
|
|
|
|
for gif in $(FLIPLIST); do $(MRSPRITE) MIRROR "$$gif" $(CHROMA); done
|
|
|
|
./RenumberSpriteFiles.sh
|
|
|
|
$(MRSPRITE) CODE $(GENART)"/*.gif" $(CHROMA) $(PALETTE)
|
|
|
|
$(MRSPRITE) BANK $(GENART)"/*.txt" $(SPRITES)
|
|
|
|
# $(MRSPRITE) WALLPAPER "Art/*.gif" $(CHROMA) ff0000
|
2023-06-18 23:59:37 +00:00
|
|
|
mv $(GENART)/$(SPRITES)00.bin ./$(SPRITEBANK)
|
2018-08-06 20:00:13 +00:00
|
|
|
./MerlinToCA65.sh $(GENART)/$(SPRITES)Src.txt > spritebank.s
|
|
|
|
rm $(GENART)/*.txt
|
|
|
|
rm -f Art/*m.gif
|
2023-07-05 03:09:17 +00:00
|
|
|
|
|
|
|
.PHONY: sound
|
|
|
|
sound:
|
|
|
|
rm -f $(GENSOUND)/*
|
2023-07-06 03:27:47 +00:00
|
|
|
./GenerateSoundBank.sh Sound/CatHowl.wav 11264 Sound/Meow1.wav 5513 Sound/Meow2.wav 5513 Sound/Meow3.wav 5513 Sound/Meow4.wav 5513
|
2023-07-05 03:09:17 +00:00
|
|
|
rm -f $(GENSOUND)/*
|
2023-07-10 00:58:05 +00:00
|
|
|
|