diff --git a/Makefile b/Makefile index f63a0567..44d7847e 100644 --- a/Makefile +++ b/Makefile @@ -12,6 +12,7 @@ clobber: cd Tools/unix ; make clobber cd Source ; make clobber cd Binary ; make clobber + rm -f typescript diff: cd Source ; make diff diff --git a/Source/BPBIOS/Makefile b/Source/BPBIOS/Makefile index 3eda8896..64c07d60 100644 --- a/Source/BPBIOS/Makefile +++ b/Source/BPBIOS/Makefile @@ -18,7 +18,12 @@ SUBDIRS = ZCPR33 NZFCP13 Z34RCP11 include $(TOOLS)/Makefile.inc $(HD0IMG): $(IMGFILES) - $(CPMCP) -f wbw_hd0 $(HD0IMG) $(IMGFILES) $(DISTFILES) 0: + if [ -f $(HD0IMG) ] ; then \ + for f in $(IMGFILES) $(DISTFILES) ; do \ + $(BINDIR)/cpmrm -f wbw_hd0 $(HD0IMG) 0:$$f ; \ + done ; \ + $(CPMCP) -f wbw_hd0 $(HD0IMG) $(IMGFILES) $(DISTFILES) 0: ; \ + fi zcpr33n.rel zcpr33t.rel: (cd ZCPR33 ; make) diff --git a/Source/CPM22/Makefile b/Source/CPM22/Makefile index d13a30cc..2b1da28c 100644 --- a/Source/CPM22/Makefile +++ b/Source/CPM22/Makefile @@ -6,7 +6,7 @@ TOOLS = ../../Tools include $(TOOLS)/Makefile.inc cpm_wbw.sys: loader.bin OS2CCP.bin OS3BDOS.bin ../CBIOS/cbios_wbw.bin - cat loader.bin OS2CCP.bin OS3BDOS.bin ../CBIOS/cbios_wbw.bin > cpm_wbw.sys + cat loader.bin OS2CCP.bin OS3BDOS.bin ../CBIOS/cbios_wbw.bin > $@ cpm_una.sys: loader.bin OS2CCP.bin OS3BDOS.bin ../CBIOS/cbios_una.bin - cat loader.bin OS2CCP.bin OS3BDOS.bin ../CBIOS/cbios_una.bin > cpm_una.sys + cat loader.bin OS2CCP.bin OS3BDOS.bin ../CBIOS/cbios_una.bin > $@ diff --git a/Source/CPM3/Makefile b/Source/CPM3/Makefile index 3f86379a..f3ad7abc 100644 --- a/Source/CPM3/Makefile +++ b/Source/CPM3/Makefile @@ -4,8 +4,8 @@ # # it does this by overriding OBJECTS in an invoked sub-make # -OBJECTS = cpmldr.com cpm3res cpm3bnk zpmbios3 cpm3.sys gencpm.dat -OTHERS = cpmldr.rel biosldr.rel cpm3res.sys cpm3bnk.sys zpmbios3.spr +OBJECTS = cpmldr.com cpmldr.sys cpm3res cpm3bnk zpmbios3 cpm3.sys gencpm.dat +OTHERS = cpmldr.rel biosldr.rel cpm3res.sys cpm3bnk.sys zpmbios3.spr loader.bin cpmldr.bin TOOLS = ../../Tools include $(TOOLS)/Makefile.inc @@ -51,6 +51,24 @@ zpmbios3: make OBJECTS=zpmbios3.spr rm gencpm.dat +cpmldr.bin: biosldrd.rel cpmldr.rel + $(ZXCC) $(TOOLS)/cpm/bin/LINK -CPMLDRD[L100]=CPMLDR,BIOSLDRD + mv cpmldrd.com cpmldr.bin + +cpmldr.com: biosldrc.rel cpmldr.rel + $(ZXCC) $(TOOLS)/cpm/bin/LINK -CPMLDRC[L100]=CPMLDR,BIOSLDRC + mv cpmldrc.com cpmldr.com + +biosldrc.rel: biosldr.z80 optcmd.lib + cp optcmd.lib ldropts.lib + $(ZXCC) $(TOOLS)/cpm/bin/Z80ASM -BIOSLDR/MF + mv biosldr.rel biosldrc.rel + +biosldrd.rel: biosldr.z80 optdsk.lib + cp optdsk.lib ldropts.lib + $(ZXCC) $(TOOLS)/cpm/bin/Z80ASM -BIOSLDR/MF + mv biosldr.rel biosldrd.rel + bios3.spr: $(BIOSOBJS) $(ZXCC) $(CPM)/LINK -bios3[OS]=$(BIOSNAMES) @@ -60,13 +78,11 @@ bnkbios3.spr: $(BIOSOBJS) zpmbios3.spr: $(BIOSOBJS) $(ZXCC) $(TOOLS)/cpm/bin/LINK -zpmbios3[B]=$(BIOSNAMES) -cpmldr.com: cpmldr.rel biosldr.rel - $(ZXCC) $(TOOLS)/cpm/bin/LINK -cpmldr[L100]=cpmldr,biosldr - rm -f cpmldr.sym - cpm3.sys: cpm3$(DEFCPM3).sys cp cpm3$(DEFCPM3).sys cpm3.sys gencpm.dat: gen$(DEFCPM3).dat cp gen$(DEFCPM3).dat gencpm.dat +cpmldr.sys: loader.bin cpmldr.bin + cat loader.bin cpmldr.bin > $@ diff --git a/Source/Makefile b/Source/Makefile index 06d19b78..7c69b6f0 100644 --- a/Source/Makefile +++ b/Source/Makefile @@ -1,6 +1,11 @@ +# +# order is actually important, because of build dependencies +# NOTDONE = Doc SUBDIRS = Prop -SUBDIRS += Apps CPM22 ZCPR ZCPR-DJ ZSDOS CBIOS CPM3 +SUBDIRS += Apps +SUBDIRS += CBIOS HBIOS +SUBDIRS += CPM22 ZCPR ZCPR-DJ ZSDOS CPM3 SUBDIRS += ZPM3 SUBDIRS += Forth NOTDONE += Fonts diff --git a/Source/ZPM3/Makefile b/Source/ZPM3/Makefile index 344c6543..9eebbc35 100644 --- a/Source/ZPM3/Makefile +++ b/Source/ZPM3/Makefile @@ -1,12 +1,20 @@ -OBJECTS = zpmldr.com cpm3.sys zinstal.zpm startzpm.com zccp.com \ - setz3.com clrhist.com autotog.com cpmldr.com +OBJECTS = zpmldr.com zpmldr.sys cpm3.sys zinstal.zpm startzpm.com zccp.com \ + setz3.com clrhist.com autotog.com OTHERS = biosldr.rel gencpm.com gencpm.dat bnkbios3.spr TOOLS =../../Tools include $(TOOLS)/Makefile.inc -zpmldr.com: zpm3ldr.rel biosldr.rel - $(ZXCC) $(CPM)/LINK -ZPMLDR[L100]=ZPM3LDR,BIOSLDR +zpmldr.bin: zpm3ldr.rel biosldrd.rel + $(ZXCC) $(CPM)/LINK -ZPMLDRD[L100]=ZPM3LDR,BIOSLDRD + mv zpmldrd.com zpmldr.bin + +zpmldr.com: zpm3ldr.rel biosldrc.rel + $(ZXCC) $(CPM)/LINK -ZPMLDRC[L100]=ZPM3LDR,BIOSLDRC + mv zpmldrc.com zpmldr.com + +zpmldr.sys: zpmldr.bin loader.bin + cat loader.bin zpmldr.bin > $@ cpm3.sys: gencpm.com gencpm.dat bnkbios3.spr $(ZXCC) gencpm -auto -display @@ -20,10 +28,10 @@ gencpm.dat: ../CPM3/genbnk.dat gencpm.com: ../CPM3/gencpm.com cp $< $@ -biosldr.rel: ../CPM3/biosldr.rel +biosldrc.rel: ../CPM3/biosldrc.rel cp $< $@ -cpmldr.com: ../CPM3/cpmldr.com +biosldrd.rel: ../CPM3/biosldrd.rel cp $< $@ zccp.com: ../ZCCP/ccp.com diff --git a/Source/ZSDOS/Makefile b/Source/ZSDOS/Makefile index 483a2915..72cff2b3 100644 --- a/Source/ZSDOS/Makefile +++ b/Source/ZSDOS/Makefile @@ -1,6 +1,9 @@ -OBJECTS = zsdos.bin -OTHERS = zsdos.rel zsdos.err +SYSFILES = zsys_wbw.sys zsys_una.sys +OBJECTS = $(SYSFILES) +OTHERS = zsdos.rel zsdos.err loader.bin TOOLS = ../../Tools +CCP = ../ZCPR-DJ/zcpr.bin + include $(TOOLS)/Makefile.inc zsdos.rel: zsdos.z80 @@ -9,3 +12,9 @@ zsdos.rel: zsdos.z80 zsdos.bin: zsdos.rel $(ZXCC) $(CPM)/LINK -$@=$<[LD800] +zsys_wbw.sys: loader.bin $(CCP) zsdos.bin ../CBIOS/cbios_wbw.bin + cat loader.bin $(CCP) zsdos.bin ../CBIOS/cbios_wbw.bin > $@ + +zsys_una.sys: loader.bin $(CCP) zsdos.bin ../CBIOS/cbios_una.bin + cat loader.bin $(CCP) zsdos.bin ../CBIOS/cbios_una.bin > $@ + diff --git a/Tools/Makefile.inc b/Tools/Makefile.inc index 9614238a..beb67b1c 100644 --- a/Tools/Makefile.inc +++ b/Tools/Makefile.inc @@ -11,6 +11,7 @@ # .azm: zsm sources # UNAME := $(shell uname) +BINDIR = $(TOOLS)/$(UNAME) # # since this file is included from below, it's handy to have an idea @@ -32,11 +33,11 @@ DIFFPATH := $(DIFFTO)/$(RELPATH) # CASEFN = $(TOOLS)/unix/casefn.sh -ZXCC=$(TOOLS)/$(UNAME)/zx -TASM=$(TOOLS)/$(UNAME)/uz80as -OPENSPIN=$(TOOLS)/$(UNAME)/openspin -BSTC=$(TOOLS)/$(UNAME)/bstc -CPMCP=$(TOOLS)/$(UNAME)/cpmcp +ZXCC=$(BINDIR)/zx +TASM=$(BINDIR)/uz80as +OPENSPIN=$(BINDIR)/openspin +BSTC=$(BINDIR)//bstc +CPMCP=$(BINDIR)/cpmcp # # directory containing cpm binaries diff --git a/Tools/unix/cpmtools/cpmfs.c b/Tools/unix/cpmtools/cpmfs.c index eaba3ad4..750b3ce6 100644 --- a/Tools/unix/cpmtools/cpmfs.c +++ b/Tools/unix/cpmtools/cpmfs.c @@ -681,7 +681,7 @@ static int diskdefReadSuper(struct cpmSuperBlock *d, const char *format) d->type=0; if ( (fp=fopen("diskdefs","r"))==(FILE*)0 && - (ddenv && ((fp=fopen(DISKDEFS,"r"))==(FILE*)0)) && + (ddenv && ((fp=fopen(ddenv,"r"))==(FILE*)0)) && (fp=fopen(DISKDEFS,"r"))==(FILE*)0) { fprintf(stderr,"%s: Neither `diskdefs' nor `" DISKDEFS "' could be opened.\n",cmd);