mirror of
https://github.com/wwarthen/RomWBW.git
synced 2026-02-06 14:11:48 -06:00
Per Issue #541, a platform configuration file has been created for the EZZ80 platform. The two ROM builds for this platform have changed prefix from RCZ80 to EZZ80.
147 lines
5.2 KiB
Makefile
147 lines
5.2 KiB
Makefile
DIST_OBJECTS := \
|
|
DYNO_std MK4_std N8_std RCZ180_ext RCZ180_nat RCZ180_z1rcc \
|
|
RCZ280_ext RCZ280_nat RCZ280_zz80mb RCZ280_zzrcc RCZ280_zzrcc_ram \
|
|
RCZ80_std RCZ80_kio EZZ80_easy EZZ80_tiny RCZ80_skz RCZ80_zrc \
|
|
RCZ80_zrc_ram RCZ80_zrc512 RPH_std SBC_std SBC_simh MBC_std \
|
|
DUO_std SCZ180_sc126 SCZ180_sc130 SCZ180_sc131 SCZ180_sc140 \
|
|
SCZ180_sc503 SCZ180_sc700 S100_std UNA_std Z80RETRO_std \
|
|
ZETA_std ZETA2_std HEATH_std EPITX_std GMZ180_std
|
|
# RCZ80_mt RCZ80_duart MON_std
|
|
|
|
OBJECTS := $(DIST_OBJECTS)
|
|
OBJECTS := RCZ80_std
|
|
# OBJECTS := DUO_std
|
|
|
|
OBJECTS := $(OBJECTS:=.rom) $(OBJECTS:=.com) $(OBJECTS:=.upd)
|
|
OBJECTS := $(filter-out UNA_%.com UNA_%.upd,$(OBJECTS))
|
|
|
|
DEST = ../../Binary
|
|
TOOLS = ../../Tools
|
|
OTHERS := *.img *.rom *.com *.upd *.bin *.hex cpm.sys zsys.sys build.inc
|
|
OTHERS += *.build.inc font*.asm *.dat hbios_env.sh
|
|
|
|
FONTS := font8x11c.asm font8x11u.asm font8x16c.asm font8x16u.asm
|
|
FONTS += font8x8c.asm font8x8u.asm fontcgac.asm fontcgau.asm
|
|
FONTS += fontvgarcc.asm fontvgarcu.asm
|
|
|
|
define BUILD_COMPONENT
|
|
cp $(*F).build.inc build.inc
|
|
$(TASM) $(TASMFLAGS) $1 $< $@ $(@:.bin=.lst)
|
|
rm build.inc
|
|
endef
|
|
|
|
SHELL=/bin/bash
|
|
|
|
include $(TOOLS)/Makefile.inc
|
|
|
|
all:: sysconf.com
|
|
|
|
font%.asm:
|
|
cp ../Fonts/$@ .
|
|
|
|
camel80.bin:
|
|
cp ../Forth/$@ .
|
|
|
|
tastybasic.bin:
|
|
cp ../TastyBasic/src/$@ .
|
|
|
|
s100mon.bin:
|
|
$(ZXCC) $(CPM)/SLR180 -s100mon/FH
|
|
$(ZXCC) $(CPM)/MLOAD25 -s100mon.bin=s100mon
|
|
|
|
%.build.inc:
|
|
echo $@
|
|
echo "; RomWBW Configured for $(*F) at $$(date +%Y-%m-%d)" >>$@
|
|
echo ";" >>$@
|
|
echo "#DEFINE TIMESTAMP \"$$(date +%Y-%m-%d)\"" >>$@
|
|
echo "#DEFINE CONFIG \"$(*F)\"" >>$@
|
|
echo ";" >>$@
|
|
echo "#INCLUDE \"Config/$(*F).asm\"" >>$@
|
|
echo ";" >>$@
|
|
cat $@
|
|
|
|
%.usrrom.bin: usrrom.asm %.build.inc ; $(call BUILD_COMPONENT)
|
|
%.updater.bin: updater.asm %.build.inc ; $(call BUILD_COMPONENT)
|
|
%.eastaegg.bin: eastaegg.asm %.build.inc ; $(call BUILD_COMPONENT)
|
|
%.game.bin: game.asm %.build.inc ; $(call BUILD_COMPONENT)
|
|
%.nascom.bin: nascom.asm %.build.inc ; $(call BUILD_COMPONENT)
|
|
%.romldr.bin: romldr.asm %.build.inc ; $(call BUILD_COMPONENT)
|
|
%.dbgmon.bin: dbgmon.asm %.build.inc ; $(call BUILD_COMPONENT)
|
|
%.sysconf.bin: sysconf.asm %.build.inc ; $(call BUILD_COMPONENT, -dROMWBW)
|
|
|
|
sysconf.com: sysconf.asm
|
|
$(TASM) -dCPM sysconf.asm sysconf.com sysconf_com.lst
|
|
cp $@ $(DEST)/Apps
|
|
|
|
%.hbios_env.com: hbios_env.asm %.build.inc
|
|
cp $(*F).build.inc build.inc
|
|
$(TASM) $(TASMFLAGS) -dBASH $< $@ $(@:.com=.lst)
|
|
rm build.inc
|
|
|
|
%.hbios_env.sh: %.hbios_env.com
|
|
$(ZXCC) $< >$@
|
|
|
|
%.hbios_rom.bin: hbios.asm %.build.inc %.hbios_env.sh $(FONTS)
|
|
. ./$(*F).hbios_env.sh
|
|
TARGETS=("" "z80" "hd64180" "z280")
|
|
CPU=$${TARGETS[$$CPUFAM]}
|
|
cp $(*F).build.inc build.inc
|
|
$(BINDIR)/uz80as -t $$CPU -dROMBOOT $< $@ $(@:.bin=.lst)
|
|
srec_cat $@ -Binary -Crop 0 0x7FFF -Checksum_Negative_Big_Endian 0x7FFF 1 1 -o $@ -Binary
|
|
rm build.inc
|
|
|
|
%.hbios_app.bin: hbios.asm %.build.inc %.hbios_env.sh $(FONTS)
|
|
. ./$(*F).hbios_env.sh
|
|
TARGETS=("" "z80" "hd64180" "z280")
|
|
CPU=$${TARGETS[$$CPUFAM]}
|
|
cp $(*F).build.inc build.inc
|
|
$(BINDIR)/uz80as -t $$CPU -dAPPBOOT $< $@ $(@:.bin=.lst)
|
|
rm build.inc
|
|
|
|
UNA_%.osimg.bin: UNA_%.romldr.bin UNA_%.dbgmon.bin
|
|
cat UNA_$(*F).romldr.bin UNA_$(*F).dbgmon.bin ../ZSDOS/zsys_una.bin ../CPM22/cpm_una.bin >$@
|
|
srec_cat $@ -Binary -Crop 0 0x7FFF -Checksum_Negative_Big_Endian 0x7FFF 1 1 -o $@ -Binary
|
|
|
|
%.osimg.bin: %.romldr.bin %.dbgmon.bin
|
|
cat $(*F).romldr.bin $(*F).dbgmon.bin ../ZSDOS/zsys_wbw.bin ../CPM22/cpm_wbw.bin >$@
|
|
srec_cat $@ -Binary -Crop 0 0x7FFF -Checksum_Negative_Big_Endian 0x7FFF 1 1 -o $@ -Binary
|
|
|
|
%.osimg_small.bin: %.romldr.bin %.dbgmon.bin
|
|
cat $(*F).romldr.bin $(*F).dbgmon.bin ../ZSDOS/zsys_wbw.bin >$@
|
|
|
|
DUO_%.osimg1.bin: NETBOOT=netboot-duo.mod
|
|
|
|
%.osimg1.bin: NETBOOT=netboot-mt.mod
|
|
|
|
%.osimg1.bin: camel80.bin %.nascom.bin tastybasic.bin %.game.bin %.eastaegg.bin $(NETBOOT) %.updater.bin %.sysconf.bin %.usrrom.bin
|
|
cat camel80.bin $(*F).nascom.bin tastybasic.bin $(*F).game.bin $(*F).eastaegg.bin $(NETBOOT) $(*F).updater.bin $(*F).sysconf.bin $(*F).usrrom.bin >$@
|
|
srec_cat $@ -Binary -Crop 0 0x7FFF -Checksum_Negative_Big_Endian 0x7FFF 1 1 -o $@ -Binary
|
|
|
|
S100_%.imgpad2.bin: s100mon.bin
|
|
cp $< $@
|
|
srec_cat $@ -Binary -Crop 0 0x7FFF -Checksum_Negative_Big_Endian 0x7FFF 1 1 -o $@ -Binary
|
|
|
|
%.imgpad2.bin: imgpad2.asm %.build.inc
|
|
cp $(*F).build.inc build.inc
|
|
$(TASM) $(TASMFLAGS) $< $@ $(@:.bin=.lst)
|
|
srec_cat $@ -Binary -Crop 0 0x7FFF -Checksum_Negative_Big_Endian 0x7FFF 1 1 -o $@ -Binary
|
|
rm build.inc
|
|
|
|
UNA_%.rom: UNA_%.osimg.bin UNA_%.hbios_env.sh
|
|
. ./UNA_$(*F).hbios_env.sh
|
|
cat ../UBIOS/UNA-BIOS.BIN UNA_$(*F).osimg.bin ../UBIOS/FSFAT.BIN ../RomDsk/rom$${ROMDISKSIZE}_una.dat >$@
|
|
cp UNA_$(*F).osimg.bin $(DEST)/UNA_WBW_SYS.bin
|
|
cp ../RomDsk/rom$${ROMDISKSIZE}_una.dat $(DEST)/UNA_WBW_ROM$${ROMDISKSIZE}.bin
|
|
|
|
%.rom: %.hbios_rom.bin %.osimg.bin %.osimg1.bin %.imgpad2.bin %.hbios_env.sh
|
|
. ./$(*F).hbios_env.sh
|
|
if [ $$ROMSIZE -gt 0 ] ; then RD="rom$$ROMDISKSIZE" ; else RD="rom$$RAMDISKSIZE" ; fi
|
|
cat $(*F).hbios_rom.bin $(*F).osimg.bin $(*F).osimg1.bin $(*F).imgpad2.bin ../RomDsk/$${RD}_wbw.dat >$@
|
|
|
|
%.com: %.hbios_app.bin %.osimg_small.bin
|
|
cat $(*F).hbios_app.bin $(*F).osimg_small.bin >$@
|
|
|
|
%.upd: %.hbios_rom.bin %.osimg.bin %.osimg1.bin %.imgpad2.bin
|
|
cat $(*F).hbios_rom.bin $(*F).osimg.bin $(*F).osimg1.bin $(*F).imgpad2.bin >$@
|
|
|