2018-08-21 13:58:28 +00:00
|
|
|
#
|
|
|
|
# 4cade Makefile
|
|
|
|
# assembles source code, optionally builds a disk image and mounts it
|
2018-11-07 23:56:39 +00:00
|
|
|
# note: Windows users should probably use winmake.bat instead
|
2018-08-21 13:58:28 +00:00
|
|
|
#
|
|
|
|
# original by Quinn Dunki on 2014-08-15
|
|
|
|
# One Girl, One Laptop Productions
|
|
|
|
# http://www.quinndunki.com/blondihacks
|
|
|
|
#
|
|
|
|
# adapted by 4am on 2018-08-19
|
|
|
|
#
|
|
|
|
|
|
|
|
DISK=4cade.2mg
|
2018-08-23 20:02:48 +00:00
|
|
|
VOLUME=A.4AM.PACK
|
2018-08-21 13:58:28 +00:00
|
|
|
|
|
|
|
# third-party tools required to build
|
|
|
|
# https://sourceforge.net/projects/acme-crossass/
|
|
|
|
ACME=acme
|
|
|
|
# https://www.brutaldeluxe.fr/products/crossdevtools/cadius/
|
|
|
|
# https://github.com/mach-kernel/cadius
|
|
|
|
CADIUS=cadius
|
|
|
|
|
|
|
|
asm: md
|
2019-06-19 22:50:09 +00:00
|
|
|
$(ACME) -r build/4cade.lst src/4cade.a 2>build/relbase.log
|
2019-06-19 04:49:12 +00:00
|
|
|
$(ACME) -r build/4cade.lst -DRELBASE=`cat build/relbase.log | grep "RELBASE =" | cut -d"=" -f2 | cut -d"(" -f2 | cut -d")" -f1` src/4cade.a
|
2019-06-21 17:10:29 +00:00
|
|
|
$(ACME) src/fx/fx.cover.fade.a
|
2019-06-24 18:00:44 +00:00
|
|
|
$(ACME) src/fx/fx.dhgr.fizzle.a
|
2019-06-24 18:54:49 +00:00
|
|
|
$(ACME) src/fx/fx.dhgr.fizzle.white.a
|
2018-11-07 02:18:13 +00:00
|
|
|
$(ACME) src/fx/fx.dhgr.ripple.a
|
2019-06-24 18:54:49 +00:00
|
|
|
$(ACME) src/fx/fx.dhgr.ripple.white.a
|
2018-11-07 02:18:13 +00:00
|
|
|
$(ACME) src/fx/fx.dhgr.iris.a
|
2019-06-24 18:54:49 +00:00
|
|
|
$(ACME) src/fx/fx.dhgr.iris.white.a
|
2018-11-07 02:18:13 +00:00
|
|
|
$(ACME) src/fx/fx.dhgr.radial.a
|
2019-06-24 18:54:49 +00:00
|
|
|
$(ACME) src/fx/fx.dhgr.radial.white.a
|
2018-11-07 02:18:13 +00:00
|
|
|
$(ACME) src/fx/fx.dhgr.radial2.a
|
2019-06-24 18:54:49 +00:00
|
|
|
$(ACME) src/fx/fx.dhgr.radial2.white.a
|
2018-11-07 02:18:13 +00:00
|
|
|
$(ACME) src/fx/fx.dhgr.radial3.a
|
2019-06-24 18:54:49 +00:00
|
|
|
$(ACME) src/fx/fx.dhgr.radial3.white.a
|
2018-11-07 02:18:13 +00:00
|
|
|
$(ACME) src/fx/fx.dhgr.radial4.a
|
2019-06-24 18:54:49 +00:00
|
|
|
$(ACME) src/fx/fx.dhgr.radial4.white.a
|
2018-11-07 02:18:13 +00:00
|
|
|
$(ACME) src/fx/fx.dhgr.radial5.a
|
2019-06-24 18:54:49 +00:00
|
|
|
$(ACME) src/fx/fx.dhgr.radial5.white.a
|
2018-11-07 02:18:13 +00:00
|
|
|
$(ACME) src/fx/fx.dhgr.star.a
|
2019-06-24 18:54:49 +00:00
|
|
|
$(ACME) src/fx/fx.dhgr.star.white.a
|
2018-10-29 23:23:43 +00:00
|
|
|
$(ACME) src/fx/fx.hgr.diagonal.a
|
|
|
|
$(ACME) src/fx/fx.hgr.interlock.ud.a
|
|
|
|
$(ACME) src/fx/fx.hgr.interlock.lr.a
|
|
|
|
$(ACME) src/fx/fx.hgr.spiral.a
|
2018-11-04 16:09:37 +00:00
|
|
|
$(ACME) src/fx/fx.hgr.fourspiral.a
|
2018-10-29 23:23:43 +00:00
|
|
|
$(ACME) src/fx/fx.hgr.fizzle.a
|
2018-10-30 01:27:11 +00:00
|
|
|
$(ACME) src/fx/fx.hgr.bar.dissolve.a
|
2018-10-30 22:27:51 +00:00
|
|
|
$(ACME) src/fx/fx.hgr.block.fizzle.a
|
2018-11-03 13:23:04 +00:00
|
|
|
$(ACME) src/fx/fx.hgr.block.fizzle.white.a
|
2018-10-31 01:28:14 +00:00
|
|
|
$(ACME) src/fx/fx.hgr.2pass.lr.a
|
2018-11-01 02:25:59 +00:00
|
|
|
$(ACME) src/fx/fx.hgr.crystal.a
|
2018-11-03 13:23:04 +00:00
|
|
|
$(ACME) src/fx/fx.hgr.foursquare.white.a
|
|
|
|
$(ACME) src/fx/fx.hgr.onesquare.white.a
|
2018-11-02 00:59:23 +00:00
|
|
|
$(ACME) src/fx/fx.hgr.diamond.a
|
2018-11-03 13:23:04 +00:00
|
|
|
$(ACME) src/fx/fx.hgr.checkerboard.white.a
|
2018-11-02 02:35:48 +00:00
|
|
|
$(ACME) src/fx/fx.hgr.halfblock.fizzle.a
|
2018-11-03 13:23:04 +00:00
|
|
|
$(ACME) src/fx/fx.hgr.halfblock.fizzle.white.a
|
|
|
|
$(ACME) src/fx/fx.hgr.stagger.ud.a
|
|
|
|
$(ACME) src/fx/fx.hgr.stagger.ud.white.a
|
|
|
|
$(ACME) src/fx/fx.hgr.stagger.lr.a
|
|
|
|
$(ACME) src/fx/fx.hgr.stagger.lr.white.a
|
|
|
|
$(ACME) src/fx/fx.hgr.corner.circle.a
|
|
|
|
$(ACME) src/fx/fx.hgr.sunrise.a
|
2018-11-04 15:18:30 +00:00
|
|
|
$(ACME) src/fx/fx.hgr.sunset.a
|
2018-11-03 13:23:04 +00:00
|
|
|
$(ACME) src/fx/fx.hgr.radial.a
|
2018-11-04 15:18:30 +00:00
|
|
|
$(ACME) src/fx/fx.hgr.radial2.a
|
|
|
|
$(ACME) src/fx/fx.hgr.radial3.a
|
|
|
|
$(ACME) src/fx/fx.hgr.radial4.a
|
|
|
|
$(ACME) src/fx/fx.hgr.radial5.a
|
2018-11-03 15:04:09 +00:00
|
|
|
$(ACME) src/fx/fx.hgr.split.ud.intro.a
|
2018-11-03 15:39:07 +00:00
|
|
|
$(ACME) src/fx/fx.hgr.iris.a
|
2018-11-03 18:03:38 +00:00
|
|
|
$(ACME) src/fx/fx.hgr.ripple.a
|
2018-11-04 16:09:37 +00:00
|
|
|
$(ACME) src/fx/fx.hgr.ripple2.a
|
2018-11-03 19:24:23 +00:00
|
|
|
$(ACME) src/fx/fx.hgr.star.a
|
2019-06-24 18:54:49 +00:00
|
|
|
$(ACME) src/fx/fx.hgr.star.white.a
|
2019-01-13 23:55:40 +00:00
|
|
|
$(ACME) src/fx/fx.shr.fizzle.a
|
2019-07-15 15:21:24 +00:00
|
|
|
$(ACME) src/fx/fx.gr.fizzle.a
|
2018-08-21 13:58:28 +00:00
|
|
|
|
|
|
|
dsk: md asm
|
2018-09-13 13:53:04 +00:00
|
|
|
$(CADIUS) CREATEVOLUME build/"$(DISK)" "${VOLUME}" 32766KB >>build/log
|
|
|
|
cp res/_FileInformation.txt build/ >>build/log
|
|
|
|
$(CADIUS) ADDFILE build/"$(DISK)" "/${VOLUME}/" "build/LAUNCHER.SYSTEM" >>build/log
|
2018-11-18 16:18:42 +00:00
|
|
|
cp res/prefs.conf build/PREFS.CONF >>build/log
|
2019-07-10 17:37:59 +00:00
|
|
|
cp res/credits.txt build/CREDITS >>build/log
|
2019-01-04 17:23:27 +00:00
|
|
|
bin/padto 512 build/PREFS.CONF
|
2019-06-24 23:03:59 +00:00
|
|
|
$(CADIUS) ADDFILE build/"$(DISK)" "/${VOLUME}/" "res/TITLE" >>build/log
|
2018-12-22 14:13:34 +00:00
|
|
|
$(CADIUS) ADDFILE build/"$(DISK)" "/${VOLUME}/" "res/COVER" >>build/log
|
2018-11-17 14:02:43 +00:00
|
|
|
$(CADIUS) ADDFILE build/"$(DISK)" "/${VOLUME}/" "build/PREFS.CONF" >>build/log
|
2018-09-13 13:53:04 +00:00
|
|
|
$(CADIUS) ADDFILE build/"$(DISK)" "/${VOLUME}/" "res/GAMES.CONF" >>build/log
|
2018-10-23 19:44:06 +00:00
|
|
|
$(CADIUS) ADDFILE build/"$(DISK)" "/${VOLUME}/" "res/ATTRACT.CONF" >>build/log
|
2018-10-29 23:23:43 +00:00
|
|
|
$(CADIUS) ADDFILE build/"$(DISK)" "/${VOLUME}/" "res/FX.CONF" >>build/log
|
2018-11-07 23:56:39 +00:00
|
|
|
$(CADIUS) ADDFILE build/"$(DISK)" "/${VOLUME}/" "res/DFX.CONF" >>build/log
|
2019-07-10 17:37:59 +00:00
|
|
|
$(CADIUS) ADDFILE build/"$(DISK)" "/${VOLUME}/" "build/CREDITS" >>build/log
|
2019-02-09 01:48:07 +00:00
|
|
|
rsync -aP res/title.hgr/* build/TITLE.HGR >>build/log
|
|
|
|
bin/buildfileinfo.py build/TITLE.HGR "06" "4000" >>build/log
|
|
|
|
$(CADIUS) ADDFOLDER build/"$(DISK)" "/${VOLUME}/TITLE.HGR" "build/TITLE.HGR" >>build/log
|
|
|
|
rsync -aP res/title.dhgr/* build/TITLE.DHGR >>build/log
|
|
|
|
bin/buildfileinfo.py build/TITLE.DHGR "06" "4000" >>build/log
|
|
|
|
$(CADIUS) ADDFOLDER build/"$(DISK)" "/${VOLUME}/TITLE.DHGR" "build/TITLE.DHGR" >>build/log
|
|
|
|
rsync -aP res/action.hgr/* build/ACTION.HGR >>build/log
|
|
|
|
bin/buildfileinfo.py build/ACTION.HGR "06" "4000" >>build/log
|
|
|
|
$(CADIUS) ADDFOLDER build/"$(DISK)" "/${VOLUME}/ACTION.HGR" "build/ACTION.HGR" >>build/log
|
|
|
|
rsync -aP res/action.dhgr/* build/ACTION.DHGR >>build/log
|
|
|
|
bin/buildfileinfo.py build/ACTION.DHGR "06" "4000" >>build/log
|
|
|
|
$(CADIUS) ADDFOLDER build/"$(DISK)" "/${VOLUME}/ACTION.DHGR" "build/ACTION.DHGR" >>build/log
|
2019-07-12 14:12:20 +00:00
|
|
|
rsync -aP res/action.gr/* build/ACTION.GR >>build/log
|
2019-07-15 15:42:05 +00:00
|
|
|
bin/buildfileinfo.py build/ACTION.GR "06" "6000" >>build/log
|
2019-07-12 14:12:20 +00:00
|
|
|
$(CADIUS) ADDFOLDER build/"$(DISK)" "/${VOLUME}/ACTION.GR" "build/ACTION.GR" >>build/log
|
2019-02-09 01:48:07 +00:00
|
|
|
rsync -aP res/artwork.shr/* build/ARTWORK.SHR >>build/log
|
|
|
|
bin/buildfileinfo.py build/ARTWORK.SHR "C1" "2000" >>build/log
|
|
|
|
$(CADIUS) ADDFOLDER build/"$(DISK)" "/${VOLUME}/ARTWORK.SHR" "build/ARTWORK.SHR" >>build/log
|
2019-06-27 02:51:34 +00:00
|
|
|
rsync -aP res/attract/* build/ATTRACT >>build/log
|
|
|
|
bin/buildfileinfo.py build/ATTRACT "04" "8000" >>build/log
|
|
|
|
$(CADIUS) ADDFOLDER build/"$(DISK)" "/${VOLUME}/ATTRACT" "build/ATTRACT" >>build/log
|
2018-10-22 22:36:37 +00:00
|
|
|
rsync -aP res/ss/* build/SS >>build/log
|
2019-01-01 02:20:35 +00:00
|
|
|
bin/buildfileinfo.py build/SS "04" "4000" >>build/log
|
2018-10-22 22:36:37 +00:00
|
|
|
$(CADIUS) ADDFOLDER build/"$(DISK)" "/${VOLUME}/SS" "build/SS" >>build/log
|
2018-10-28 21:20:48 +00:00
|
|
|
rsync -aP res/demo/* build/DEMO >>build/log
|
|
|
|
$(CADIUS) ADDFOLDER build/"$(DISK)" "/${VOLUME}/DEMO" "build/DEMO" >>build/log
|
2018-10-29 23:23:43 +00:00
|
|
|
rsync -aP res/fx/* build/FX >>build/log
|
|
|
|
$(CADIUS) ADDFOLDER build/"$(DISK)" "/${VOLUME}/FX" "build/FX" >>build/log
|
2019-01-08 19:10:26 +00:00
|
|
|
$(CADIUS) CREATEFOLDER build/"$(DISK)" "/${VOLUME}/X/" >>build/log
|
2019-06-20 17:56:31 +00:00
|
|
|
bin/do2po.py res/dsk/ build/po/
|
|
|
|
rsync -a res/dsk/*.po build/po/
|
|
|
|
bin/extract.py build/po/ | sh >>build/log
|
2019-01-08 19:10:26 +00:00
|
|
|
rm -f build/X/**/.DS_Store
|
|
|
|
rm -f build/X/**/PRODOS
|
|
|
|
rm -f build/X/**/LOADER.SYSTEM
|
2019-01-12 14:23:34 +00:00
|
|
|
$(CADIUS) ADDFOLDER build/"$(DISK)" "/${VOLUME}/X" "build/X" >>build/log
|
2018-10-31 15:13:03 +00:00
|
|
|
bin/changebootloader.py build/"$(DISK)" res/proboothd
|
2018-08-21 13:58:28 +00:00
|
|
|
|
|
|
|
mount: dsk
|
|
|
|
osascript bin/V2Make.scpt "`pwd`" bin/4cade.vii build/"$(DISK)"
|
|
|
|
|
|
|
|
md:
|
2018-08-23 20:02:48 +00:00
|
|
|
mkdir -p build/po
|
|
|
|
mkdir -p build/X
|
2019-02-09 01:48:07 +00:00
|
|
|
mkdir -p build/TITLE.HGR
|
|
|
|
mkdir -p build/TITLE.DHGR
|
|
|
|
mkdir -p build/ACTION.HGR
|
|
|
|
mkdir -p build/ACTION.DHGR
|
2019-07-12 14:12:20 +00:00
|
|
|
mkdir -p build/ACTION.GR
|
2019-02-09 01:48:07 +00:00
|
|
|
mkdir -p build/ARTWORK.SHR
|
2019-06-27 02:51:34 +00:00
|
|
|
mkdir -p build/ATTRACT
|
2018-10-22 22:36:37 +00:00
|
|
|
mkdir -p build/SS
|
2018-10-28 21:20:48 +00:00
|
|
|
mkdir -p build/DEMO
|
2018-10-29 23:23:43 +00:00
|
|
|
mkdir -p build/FX
|
2018-08-21 13:58:28 +00:00
|
|
|
|
|
|
|
clean:
|
2018-11-07 02:18:13 +00:00
|
|
|
rm -rf build/ || rm -rf build
|
2018-08-21 13:58:28 +00:00
|
|
|
|
2018-10-31 15:13:03 +00:00
|
|
|
all: clean asm dsk mount
|