diff --git a/README.md b/README.md index 576c0f2..af430bb 100644 --- a/README.md +++ b/README.md @@ -9,7 +9,7 @@ emulation using RunZ80, SIMH or ZXCC. Each release is a consolidated milestone with various updates and patches applied. -The latest release is V3.09-7b (see Modification History below). +The latest release is V3.09-8 (see Modification History below). I welcome bug reports/fixes and additional commentry and discussion. @@ -926,6 +926,27 @@ been adjusted to be consistently in uppercase. I've re-issued this as a revised v3.09-7b release too. + +### Release v3.09-8 (support for Z280 MPU) + +The compiler front-end source in cpm/C.C has been updated so that it +can be compiled to produce a Z280 MPU version. Co-existence with the Z80 +version is now also possible due to the renaming of the various Z280 versions +start-up modules to C280CPM.OBJ, D280CPM.OBJ and R280CPM.OBJ. + +The original source-code to the C280 front-end is lost (not included with the +UZI-280 distribution files) - so now Z280 users (like me) have the updated +version supporting overlays etc. + +You'll find updated Z280 files in the *z280dist* folder. The +z280dist/C280-8.COM is the new front-end and can be copied to the system +drive as C280.COM. It tests for, and will only run on a Z280 MPU. +Be sure to copy the start-up object modules (?280CPM.OBJ files) and +the z280dist/LIB280*.LIB libraries to the system drive too. + +This is also a new release milestone at v3.09-8. + + -- Tony Nicholson 15-Jan-2021 diff --git a/cpm/BUILD-C.LOG b/cpm/BUILD-C.LOG new file mode 100644 index 0000000..40651ac --- /dev/null +++ b/cpm/BUILD-C.LOG @@ -0,0 +1,94 @@ + +10E>; +10E>date +A:DATE COM (User 0) + Fri 15/01/2021 12:20:27 +10E>; +10E>; Build Z80 version +10E>c -o -v c309-8.c +A:C COM (User 0) +Hi-Tech C Compiler (CP/M-80) V3.09-7 +Copyright (C) 1984-87 HI-TECH SOFTWARE +Updated from https://github.com/agn453/HI-TECH-Z80-C +0:A:CPP -DCPM -DHI_TECH_C -Dz80 -I0:A: C309-8.C M:$CTMP1.$$$ +0:A:P1 M:$CTMP1.$$$ M:$CTMP2.$$$ M:$CTMP3.$$$ +0:A:CGEN M:$CTMP2.$$$ M:$CTMP1.$$$ +0:A:OPTIM M:$CTMP1.$$$ M:$CTMP2.$$$ +0:A:ZAS -J -N -OC309-8.OBJ M:$CTMP2.$$$ +ERA M:$CTMP1.$$$ +ERA M:$CTMP2.$$$ +ERA M:$CTMP3.$$$ +ERA M:$CTMP5.$$$ +0:A:LINQ -Z -Ptext=0,data,bss -C100H -OC309-8.COM 0:A:CRTCPM.OBJ C309-8.OBJ 0:A:LIBC.LIB +ERA C309-8.OBJ +ERA M:$$EXEC.$$$ + +10E>; +10E>; Now build Z280 version +10E>; +10E>; First a Z280 version using the Z80 LIBC.C (runs on Z80) +10E>c309-8 -o -v -ec280z80.com -dZ280 c309-8.c +E:C309-8 COM +Hi-Tech C Compiler (CP/M-80) V3.09-8 +Copyright (C) 1984-87 HI-TECH SOFTWARE +Updated from https://github.com/agn453/HI-TECH-Z80-C +0:A:CPP -DCPM -DHI_TECH_C -DZ80 -DZ280 -I0:A: C309-8.C M:$CTMP1.$$$ +0:A:P1 M:$CTMP1.$$$ M:$CTMP2.$$$ M:$CTMP3.$$$ +0:A:CGEN M:$CTMP2.$$$ M:$CTMP1.$$$ +0:A:OPTIM M:$CTMP1.$$$ M:$CTMP2.$$$ +0:A:ZAS -J -N -OC309-8.OBJ M:$CTMP2.$$$ +ERA M:$CTMP1.$$$ +ERA M:$CTMP2.$$$ +ERA M:$CTMP3.$$$ +ERA M:$CTMP5.$$$ +0:A:LINQ -Z -Ptext=0,data,bss -C100H -OC280Z80.COM 0:A:CRTCPM.OBJ C309-8.OBJ 0:A:LIBC.LIB +ERA C309-8.OBJ +ERA M:$$EXEC.$$$ + +10E>; +10E>; and the Z280 optimized version from it (only runs on a Z280) +10E>c280z80 -of2 -v -ec280-8.com c309-8.c +E:C280Z80 COM +Hi-Tech C Compiler (CP/M-80) V3.09-8 [Z280 MPU version] +Copyright (C) 1984-87 HI-TECH SOFTWARE +Updated from https://github.com/agn453/HI-TECH-Z80-C +0:A:CPP -DCPM -DHI_TECH_C -DZ80 -DZ280 -I0:A: C309-8.C M:$CTMP1.$$$ +0:A:P1 M:$CTMP1.$$$ M:$CTMP2.$$$ M:$CTMP3.$$$ +0:A:CGEN M:$CTMP2.$$$ M:$CTMP1.$$$ +0:A:OPTIM -F M:$CTMP1.$$$ M:$CTMP2.$$$ +0:A:OPTIMH M:$CTMP2.$$$ M:$CTMP5.$$$ + 576 bytes optimized away + 1452 bytes replaced +0:A:ZAS -N -OC309-8.OBJ M:$CTMP5.$$$ +ERA M:$CTMP1.$$$ +ERA M:$CTMP2.$$$ +ERA M:$CTMP3.$$$ +ERA M:$CTMP5.$$$ +0:A:LINQ -Z -Ptext=0,data,bss -C100H -OC280-8.COM 0:A:C280CPM.OBJ C309-8.OBJ 0:A:LIB280C.LIB +ERA C309-8.OBJ +ERA M:$$EXEC.$$$ + +10E>; +10E>dir c*.com [fu +A:DIR COM (User 0) + +Scanning Directory... + +Sorting Directory... + +Directory For Drive E: User 10 + + Name Bytes Recs Attributes Prot Update Create +------------ ------ ------ ------------ ------ -------------- -------------- + +C280-8 COM 24k 191 Dir RW None 15/01/21 12:30 15/01/21 12:30 +C280Z80 COM 28k 203 Dir RW None 15/01/21 12:26 15/01/21 12:26 +C309-8 COM 28k 201 Dir RW None 15/01/21 12:23 15/01/21 12:23 + +Total Bytes = 80k Total Records = 595 Files Found = 3 +Total 1k Blocks = 76 Used/Max Dir Entries For Drive E: 1064/2048 + +10E>; +10E>; Done +10E>put console to console +A:PUT COM (User 0) diff --git a/cpm/BUILD-C.SUB b/cpm/BUILD-C.SUB new file mode 100644 index 0000000..cdabb25 --- /dev/null +++ b/cpm/BUILD-C.SUB @@ -0,0 +1,20 @@ +era build-c.log +put console output to file build-c.log [system] +; +date +; +; Build Z80 version +c -o -v c309-8.c +; +; Now build Z280 version +; +; First a Z280 version using the Z80 LIBC.C (runs on Z80) +c309-8 -o -v -ec280z80.com -dZ280 c309-8.c +; +; and the Z280 optimized version from it (only runs on a Z280) +c280z80 -of2 -v -ec280-8.com c309-8.c +; +dir c*.com [fu +; +; Done +put console to console diff --git a/cpm/BUILDCRT.SUB b/cpm/BUILDCRT.SUB new file mode 100644 index 0000000..cabd42f --- /dev/null +++ b/cpm/BUILDCRT.SUB @@ -0,0 +1,5 @@ +; +; Build the start-up modules +; +c -c -o zcrtcpm.as zdrtcpm.as zrrtcpm.as +c280 -c -o zc280cpm.as zd280cpm.as zr280cpm.as diff --git a/cpm/C.C b/cpm/C.C index 88de698..a041f67 100644 --- a/cpm/C.C +++ b/cpm/C.C @@ -26,6 +26,8 @@ | Revised to better support building self-relocating .COM files and | | overlays by automating the building of the resident and overlay | | portions (new -Y compiler flag). | + | | + | For new features, re-implement Z280 version (original sources lost) | \*----------------------------------------------------------------------*/ #include @@ -71,6 +73,9 @@ static char reloc, /* auto-relocate program at run time */ xref, /* generate cross reference listing */ nolocal, /* strip local symbols */ +#ifdef Z280 + z280optim, /* Z280 code optimization */ +#endif overlay=0; /* build with overlays */ static char @@ -95,13 +100,24 @@ static char *paths[] = "OPTIM", "CPP", "ZAS", +#ifdef Z280 + "LIB280", +#else "LIB", +#endif "P1", +#ifdef Z280 + "C280CPM.OBJ", +#else "CRTCPM.OBJ", +#endif "$EXEC", "CREF", "SYMTOAS", "OPTIONS", +#ifdef Z280 + "OPTIMH", +#endif }; #define linker paths[0] @@ -117,6 +133,9 @@ static char *paths[] = #define cref paths[10] #define symtoas paths[11] #define options paths[12] +#ifdef Z280 +#define optimh paths[13] +#endif #define RELSTRT strtoff[plen] @@ -146,7 +165,7 @@ static char *tempm[] = #define l_dot_obj temps[4] #define execmd temps[5] #define crtmp temps[6] -#define tmpas temps[7] +#define tmpf5 temps[7] #define osegs tempm[0] #define nsegs tempm[1] @@ -154,7 +173,14 @@ static char *tempm[] = static int cbase = 0x0100; -static char *cppdef[] = { "-DCPM", "-DHI_TECH_C", "-Dz80" }; +static char *cppdef[] = { + "-DCPM", + "-DHI_TECH_C", + "-DZ80", +#ifdef Z280 + "-DZ280", +#endif +}; static char *cpppath = "-I"; static char tmpbuf[128]; /* gen. purpose buffer */ @@ -200,8 +226,11 @@ int main(int argc, char **argv) signal_t prev_sig; prev_sig=signal(SIGINT,SIG_IGN); - fprintf(stderr, "Hi-Tech C Compiler (CP/M-80) V3.09-7\n"); - fprintf(stderr, "Copyright (C) 1984-87 HI-TECH SOFTWARE\n"); + fprintf(stderr, "Hi-Tech C Compiler (CP/M-80) V3.09-8"); +#ifdef Z280 + fprintf(stderr, " [Z280 MPU version]"); +#endif + fprintf(stderr, "\nCopyright (C) 1984-87 HI-TECH SOFTWARE\n"); fprintf(stderr, "Updated from https://github.com/agn453/HI-TECH-Z80-C\n"); #if EDUC fprintf(stderr, "Licensed for Educational purposes only\n"); @@ -265,7 +294,13 @@ int main(int argc, char **argv) case 'O': optimize = 1; if(argv[0][2] == 'F' || argv[0][2] == 'f') + { speed = 1; +#ifdef Z280 + if (argv[0][3] == '2') + z280optim = 1; +#endif + } break; case 'I': @@ -417,7 +452,7 @@ void doit() rm(RM_FILE, tmpf1); rm(RM_FILE, tmpf2); rm(RM_FILE, tmpf3); - rm(RM_FILE, tmpas); + rm(RM_FILE, tmpf5); if (!keep) { char * segopt = 0; @@ -677,7 +712,7 @@ void assemble_sym(char *s) { cbase = sym2as(s); vec[0] = s; - vec[1] = tmpas; + vec[1] = tmpf5; vec[2] = 0; doexec(symtoas, vec); put_cmd(TRAP); @@ -698,7 +733,7 @@ void assemble_sym(char *s) *rindex(buf, '.') = 0; strcat(buf, ".OBJ"); vec[i++] = buf; - vec[i++] = tmpas; + vec[i++] = tmpf5; vec[i] = (char *)0; doexec(assem, vec); } @@ -778,15 +813,33 @@ void compile(char *s) if (speed) vec[i++] = "-F"; vec[i++] = tmpf1; +#ifdef Z280 + if (keepas && !z280optim) +#else if (keepas) +#endif vec[i++] = strcat(strcpy(tmpbuf, s), ".AS"); else vec[i++] = tmpf2; vec[i] = (char *)0; doexec(optim, vec); + cp = tmpf2; +#ifdef Z280 + if (z280optim) + { + i = 0; + vec[i++] = cp; + if (keepas) + vec[i++] = strcat(strcpy(tmpbuf, s), ".AS"); + else + vec[i++] = tmpf5; + vec[i] = (char *)0; + doexec(optimh, vec); + cp = tmpf5; + } +#endif if (keepas) return; - cp = tmpf2; } i = 0; if (nolocal) diff --git a/dist/C309-7.COM b/dist/C309-8.COM similarity index 99% rename from dist/C309-7.COM rename to dist/C309-8.COM index 85be38f..3a35e28 100644 Binary files a/dist/C309-7.COM and b/dist/C309-8.COM differ diff --git a/test/TEST.LOG b/test/TEST.LOG index 57744a4..7b0066d 100644 --- a/test/TEST.LOG +++ b/test/TEST.LOG @@ -1,18 +1,18 @@ 10E>date A:DATE COM (User 0) - Thu 14/01/2021 14:50:14 + Fri 15/01/2021 12:37:20 10E>; Compile all tests 10E>c -v -o testver.c A:C COM (User 0) -Hi-Tech C Compiler (CP/M-80) V3.09-7 +Hi-Tech C Compiler (CP/M-80) V3.09-8 Copyright (C) 1984-87 HI-TECH SOFTWARE Updated from https://github.com/agn453/HI-TECH-Z80-C -0:A:CPP -DCPM -DHI_TECH_C -Dz80 -I0:A: TESTVER.C M:$CTMP1.$$$ +0:A:CPP -DCPM -DHI_TECH_C -DZ80 -I0:A: TESTVER.C M:$CTMP1.$$$ 0:A:P1 M:$CTMP1.$$$ M:$CTMP2.$$$ M:$CTMP3.$$$ 0:A:CGEN M:$CTMP2.$$$ M:$CTMP1.$$$ 0:A:OPTIM M:$CTMP1.$$$ M:$CTMP2.$$$ -0:A:ZAS -J -N -oTESTVER.OBJ M:$CTMP2.$$$ +0:A:ZAS -J -N -OTESTVER.OBJ M:$CTMP2.$$$ ERA M:$CTMP1.$$$ ERA M:$CTMP2.$$$ ERA M:$CTMP3.$$$ @@ -23,14 +23,14 @@ ERA M:$$EXEC.$$$ 10E>c -v -o testio.c A:C COM (User 0) -Hi-Tech C Compiler (CP/M-80) V3.09-7 +Hi-Tech C Compiler (CP/M-80) V3.09-8 Copyright (C) 1984-87 HI-TECH SOFTWARE Updated from https://github.com/agn453/HI-TECH-Z80-C -0:A:CPP -DCPM -DHI_TECH_C -Dz80 -I0:A: TESTIO.C M:$CTMP1.$$$ +0:A:CPP -DCPM -DHI_TECH_C -DZ80 -I0:A: TESTIO.C M:$CTMP1.$$$ 0:A:P1 M:$CTMP1.$$$ M:$CTMP2.$$$ M:$CTMP3.$$$ 0:A:CGEN M:$CTMP2.$$$ M:$CTMP1.$$$ 0:A:OPTIM M:$CTMP1.$$$ M:$CTMP2.$$$ -0:A:ZAS -J -N -oTESTIO.OBJ M:$CTMP2.$$$ +0:A:ZAS -J -N -OTESTIO.OBJ M:$CTMP2.$$$ ERA M:$CTMP1.$$$ ERA M:$CTMP2.$$$ ERA M:$CTMP3.$$$ @@ -41,14 +41,14 @@ ERA M:$$EXEC.$$$ 10E>c -v -o testuid.c A:C COM (User 0) -Hi-Tech C Compiler (CP/M-80) V3.09-7 +Hi-Tech C Compiler (CP/M-80) V3.09-8 Copyright (C) 1984-87 HI-TECH SOFTWARE Updated from https://github.com/agn453/HI-TECH-Z80-C -0:A:CPP -DCPM -DHI_TECH_C -Dz80 -I0:A: TESTUID.C M:$CTMP1.$$$ +0:A:CPP -DCPM -DHI_TECH_C -DZ80 -I0:A: TESTUID.C M:$CTMP1.$$$ 0:A:P1 M:$CTMP1.$$$ M:$CTMP2.$$$ M:$CTMP3.$$$ 0:A:CGEN M:$CTMP2.$$$ M:$CTMP1.$$$ 0:A:OPTIM M:$CTMP1.$$$ M:$CTMP2.$$$ -0:A:ZAS -J -N -oTESTUID.OBJ M:$CTMP2.$$$ +0:A:ZAS -J -N -OTESTUID.OBJ M:$CTMP2.$$$ ERA M:$CTMP1.$$$ ERA M:$CTMP2.$$$ ERA M:$CTMP3.$$$ @@ -59,14 +59,14 @@ ERA M:$$EXEC.$$$ 10E>c -v -o teststr.c A:C COM (User 0) -Hi-Tech C Compiler (CP/M-80) V3.09-7 +Hi-Tech C Compiler (CP/M-80) V3.09-8 Copyright (C) 1984-87 HI-TECH SOFTWARE Updated from https://github.com/agn453/HI-TECH-Z80-C -0:A:CPP -DCPM -DHI_TECH_C -Dz80 -I0:A: TESTSTR.C M:$CTMP1.$$$ +0:A:CPP -DCPM -DHI_TECH_C -DZ80 -I0:A: TESTSTR.C M:$CTMP1.$$$ 0:A:P1 M:$CTMP1.$$$ M:$CTMP2.$$$ M:$CTMP3.$$$ 0:A:CGEN M:$CTMP2.$$$ M:$CTMP1.$$$ 0:A:OPTIM M:$CTMP1.$$$ M:$CTMP2.$$$ -0:A:ZAS -J -N -oTESTSTR.OBJ M:$CTMP2.$$$ +0:A:ZAS -J -N -OTESTSTR.OBJ M:$CTMP2.$$$ ERA M:$CTMP1.$$$ ERA M:$CTMP2.$$$ ERA M:$CTMP3.$$$ @@ -77,14 +77,14 @@ ERA M:$$EXEC.$$$ 10E>c -v -o testbios.c A:C COM (User 0) -Hi-Tech C Compiler (CP/M-80) V3.09-7 +Hi-Tech C Compiler (CP/M-80) V3.09-8 Copyright (C) 1984-87 HI-TECH SOFTWARE Updated from https://github.com/agn453/HI-TECH-Z80-C -0:A:CPP -DCPM -DHI_TECH_C -Dz80 -I0:A: TESTBIOS.C M:$CTMP1.$$$ +0:A:CPP -DCPM -DHI_TECH_C -DZ80 -I0:A: TESTBIOS.C M:$CTMP1.$$$ 0:A:P1 M:$CTMP1.$$$ M:$CTMP2.$$$ M:$CTMP3.$$$ 0:A:CGEN M:$CTMP2.$$$ M:$CTMP1.$$$ 0:A:OPTIM M:$CTMP1.$$$ M:$CTMP2.$$$ -0:A:ZAS -J -N -oTESTBIOS.OBJ M:$CTMP2.$$$ +0:A:ZAS -J -N -OTESTBIOS.OBJ M:$CTMP2.$$$ ERA M:$CTMP1.$$$ ERA M:$CTMP2.$$$ ERA M:$CTMP3.$$$ @@ -95,14 +95,14 @@ ERA M:$$EXEC.$$$ 10E>c -v -o testbdos.c A:C COM (User 0) -Hi-Tech C Compiler (CP/M-80) V3.09-7 +Hi-Tech C Compiler (CP/M-80) V3.09-8 Copyright (C) 1984-87 HI-TECH SOFTWARE Updated from https://github.com/agn453/HI-TECH-Z80-C -0:A:CPP -DCPM -DHI_TECH_C -Dz80 -I0:A: TESTBDOS.C M:$CTMP1.$$$ +0:A:CPP -DCPM -DHI_TECH_C -DZ80 -I0:A: TESTBDOS.C M:$CTMP1.$$$ 0:A:P1 M:$CTMP1.$$$ M:$CTMP2.$$$ M:$CTMP3.$$$ 0:A:CGEN M:$CTMP2.$$$ M:$CTMP1.$$$ 0:A:OPTIM M:$CTMP1.$$$ M:$CTMP2.$$$ -0:A:ZAS -J -N -oTESTBDOS.OBJ M:$CTMP2.$$$ +0:A:ZAS -J -N -OTESTBDOS.OBJ M:$CTMP2.$$$ ERA M:$CTMP1.$$$ ERA M:$CTMP2.$$$ ERA M:$CTMP3.$$$ @@ -113,14 +113,14 @@ ERA M:$$EXEC.$$$ 10E>c -v -o testtrig.c -lf A:C COM (User 0) -Hi-Tech C Compiler (CP/M-80) V3.09-7 +Hi-Tech C Compiler (CP/M-80) V3.09-8 Copyright (C) 1984-87 HI-TECH SOFTWARE Updated from https://github.com/agn453/HI-TECH-Z80-C -0:A:CPP -DCPM -DHI_TECH_C -Dz80 -I0:A: TESTTRIG.C M:$CTMP1.$$$ +0:A:CPP -DCPM -DHI_TECH_C -DZ80 -I0:A: TESTTRIG.C M:$CTMP1.$$$ 0:A:P1 M:$CTMP1.$$$ M:$CTMP2.$$$ M:$CTMP3.$$$ 0:A:CGEN M:$CTMP2.$$$ M:$CTMP1.$$$ 0:A:OPTIM M:$CTMP1.$$$ M:$CTMP2.$$$ -0:A:ZAS -J -N -oTESTTRIG.OBJ M:$CTMP2.$$$ +0:A:ZAS -J -N -OTESTTRIG.OBJ M:$CTMP2.$$$ ERA M:$CTMP1.$$$ ERA M:$CTMP2.$$$ ERA M:$CTMP3.$$$ @@ -131,14 +131,14 @@ ERA M:$$EXEC.$$$ 10E>c -v -o testftim.c A:C COM (User 0) -Hi-Tech C Compiler (CP/M-80) V3.09-7 +Hi-Tech C Compiler (CP/M-80) V3.09-8 Copyright (C) 1984-87 HI-TECH SOFTWARE Updated from https://github.com/agn453/HI-TECH-Z80-C -0:A:CPP -DCPM -DHI_TECH_C -Dz80 -I0:A: TESTFTIM.C M:$CTMP1.$$$ +0:A:CPP -DCPM -DHI_TECH_C -DZ80 -I0:A: TESTFTIM.C M:$CTMP1.$$$ 0:A:P1 M:$CTMP1.$$$ M:$CTMP2.$$$ M:$CTMP3.$$$ 0:A:CGEN M:$CTMP2.$$$ M:$CTMP1.$$$ 0:A:OPTIM M:$CTMP1.$$$ M:$CTMP2.$$$ -0:A:ZAS -J -N -oTESTFTIM.OBJ M:$CTMP2.$$$ +0:A:ZAS -J -N -OTESTFTIM.OBJ M:$CTMP2.$$$ ERA M:$CTMP1.$$$ ERA M:$CTMP2.$$$ ERA M:$CTMP3.$$$ @@ -149,14 +149,14 @@ ERA M:$$EXEC.$$$ 10E>c -v -o testfile.c A:C COM (User 0) -Hi-Tech C Compiler (CP/M-80) V3.09-7 +Hi-Tech C Compiler (CP/M-80) V3.09-8 Copyright (C) 1984-87 HI-TECH SOFTWARE Updated from https://github.com/agn453/HI-TECH-Z80-C -0:A:CPP -DCPM -DHI_TECH_C -Dz80 -I0:A: TESTFILE.C M:$CTMP1.$$$ +0:A:CPP -DCPM -DHI_TECH_C -DZ80 -I0:A: TESTFILE.C M:$CTMP1.$$$ 0:A:P1 M:$CTMP1.$$$ M:$CTMP2.$$$ M:$CTMP3.$$$ 0:A:CGEN M:$CTMP2.$$$ M:$CTMP1.$$$ 0:A:OPTIM M:$CTMP1.$$$ M:$CTMP2.$$$ -0:A:ZAS -J -N -oTESTFILE.OBJ M:$CTMP2.$$$ +0:A:ZAS -J -N -OTESTFILE.OBJ M:$CTMP2.$$$ ERA M:$CTMP1.$$$ ERA M:$CTMP2.$$$ ERA M:$CTMP3.$$$ @@ -167,14 +167,14 @@ ERA M:$$EXEC.$$$ 10E>c -v -o testaes.c A:C COM (User 0) -Hi-Tech C Compiler (CP/M-80) V3.09-7 +Hi-Tech C Compiler (CP/M-80) V3.09-8 Copyright (C) 1984-87 HI-TECH SOFTWARE Updated from https://github.com/agn453/HI-TECH-Z80-C -0:A:CPP -DCPM -DHI_TECH_C -Dz80 -I0:A: TESTAES.C M:$CTMP1.$$$ +0:A:CPP -DCPM -DHI_TECH_C -DZ80 -I0:A: TESTAES.C M:$CTMP1.$$$ 0:A:P1 M:$CTMP1.$$$ M:$CTMP2.$$$ M:$CTMP3.$$$ 0:A:CGEN M:$CTMP2.$$$ M:$CTMP1.$$$ 0:A:OPTIM M:$CTMP1.$$$ M:$CTMP2.$$$ -0:A:ZAS -J -N -oTESTAES.OBJ M:$CTMP2.$$$ +0:A:ZAS -J -N -OTESTAES.OBJ M:$CTMP2.$$$ ERA M:$CTMP1.$$$ ERA M:$CTMP2.$$$ ERA M:$CTMP3.$$$ @@ -185,14 +185,14 @@ ERA M:$$EXEC.$$$ 10E>c -v -o testrc.c A:C COM (User 0) -Hi-Tech C Compiler (CP/M-80) V3.09-7 +Hi-Tech C Compiler (CP/M-80) V3.09-8 Copyright (C) 1984-87 HI-TECH SOFTWARE Updated from https://github.com/agn453/HI-TECH-Z80-C -0:A:CPP -DCPM -DHI_TECH_C -Dz80 -I0:A: TESTRC.C M:$CTMP1.$$$ +0:A:CPP -DCPM -DHI_TECH_C -DZ80 -I0:A: TESTRC.C M:$CTMP1.$$$ 0:A:P1 M:$CTMP1.$$$ M:$CTMP2.$$$ M:$CTMP3.$$$ 0:A:CGEN M:$CTMP2.$$$ M:$CTMP1.$$$ 0:A:OPTIM M:$CTMP1.$$$ M:$CTMP2.$$$ -0:A:ZAS -J -N -oTESTRC.OBJ M:$CTMP2.$$$ +0:A:ZAS -J -N -OTESTRC.OBJ M:$CTMP2.$$$ ERA M:$CTMP1.$$$ ERA M:$CTMP2.$$$ ERA M:$CTMP3.$$$ @@ -203,14 +203,14 @@ ERA M:$$EXEC.$$$ 10E>c -v -o testview.c A:C COM (User 0) -Hi-Tech C Compiler (CP/M-80) V3.09-7 +Hi-Tech C Compiler (CP/M-80) V3.09-8 Copyright (C) 1984-87 HI-TECH SOFTWARE Updated from https://github.com/agn453/HI-TECH-Z80-C -0:A:CPP -DCPM -DHI_TECH_C -Dz80 -I0:A: TESTVIEW.C M:$CTMP1.$$$ +0:A:CPP -DCPM -DHI_TECH_C -DZ80 -I0:A: TESTVIEW.C M:$CTMP1.$$$ 0:A:P1 M:$CTMP1.$$$ M:$CTMP2.$$$ M:$CTMP3.$$$ 0:A:CGEN M:$CTMP2.$$$ M:$CTMP1.$$$ 0:A:OPTIM M:$CTMP1.$$$ M:$CTMP2.$$$ -0:A:ZAS -J -N -oTESTVIEW.OBJ M:$CTMP2.$$$ +0:A:ZAS -J -N -OTESTVIEW.OBJ M:$CTMP2.$$$ ERA M:$CTMP1.$$$ ERA M:$CTMP2.$$$ ERA M:$CTMP3.$$$ @@ -221,14 +221,14 @@ ERA M:$$EXEC.$$$ 10E>c -v -o testwild.c A:C COM (User 0) -Hi-Tech C Compiler (CP/M-80) V3.09-7 +Hi-Tech C Compiler (CP/M-80) V3.09-8 Copyright (C) 1984-87 HI-TECH SOFTWARE Updated from https://github.com/agn453/HI-TECH-Z80-C -0:A:CPP -DCPM -DHI_TECH_C -Dz80 -I0:A: TESTWILD.C M:$CTMP1.$$$ +0:A:CPP -DCPM -DHI_TECH_C -DZ80 -I0:A: TESTWILD.C M:$CTMP1.$$$ 0:A:P1 M:$CTMP1.$$$ M:$CTMP2.$$$ M:$CTMP3.$$$ 0:A:CGEN M:$CTMP2.$$$ M:$CTMP1.$$$ 0:A:OPTIM M:$CTMP1.$$$ M:$CTMP2.$$$ -0:A:ZAS -J -N -oTESTWILD.OBJ M:$CTMP2.$$$ +0:A:ZAS -J -N -OTESTWILD.OBJ M:$CTMP2.$$$ ERA M:$CTMP1.$$$ ERA M:$CTMP2.$$$ ERA M:$CTMP3.$$$ @@ -239,14 +239,14 @@ ERA M:$$EXEC.$$$ 10E>c -ftestovrx.sym -v -o testovr.c -lovr A:C COM (User 0) -Hi-Tech C Compiler (CP/M-80) V3.09-7 +Hi-Tech C Compiler (CP/M-80) V3.09-8 Copyright (C) 1984-87 HI-TECH SOFTWARE Updated from https://github.com/agn453/HI-TECH-Z80-C -0:A:CPP -DCPM -DHI_TECH_C -Dz80 -I0:A: TESTOVR.C M:$CTMP1.$$$ +0:A:CPP -DCPM -DHI_TECH_C -DZ80 -I0:A: TESTOVR.C M:$CTMP1.$$$ 0:A:P1 M:$CTMP1.$$$ M:$CTMP2.$$$ M:$CTMP3.$$$ 0:A:CGEN M:$CTMP2.$$$ M:$CTMP1.$$$ 0:A:OPTIM M:$CTMP1.$$$ M:$CTMP2.$$$ -0:A:ZAS -J -N -oTESTOVR.OBJ M:$CTMP2.$$$ +0:A:ZAS -J -N -OTESTOVR.OBJ M:$CTMP2.$$$ ERA M:$CTMP1.$$$ ERA M:$CTMP2.$$$ ERA M:$CTMP3.$$$ @@ -257,18 +257,16 @@ ERA M:$$EXEC.$$$ 10E>c -y -o -v testovr2.c testovrx.sym A:C COM (User 0) -Hi-Tech C Compiler (CP/M-80) V3.09-7 +Hi-Tech C Compiler (CP/M-80) V3.09-8 Copyright (C) 1984-87 HI-TECH SOFTWARE Updated from https://github.com/agn453/HI-TECH-Z80-C TESTOVR2.C -0:A:CPP -DCPM -DHI_TECH_C -Dz80 -I0:A: TESTOVR2.C M:$CTMP1.$$$ +0:A:CPP -DCPM -DHI_TECH_C -DZ80 -I0:A: TESTOVR2.C M:$CTMP1.$$$ 0:A:P1 M:$CTMP1.$$$ M:$CTMP2.$$$ M:$CTMP3.$$$ 0:A:CGEN M:$CTMP2.$$$ M:$CTMP1.$$$ 0:A:OPTIM M:$CTMP1.$$$ M:$CTMP2.$$$ -0:A:ZAS -J -N -oTESTOVR2.OBJ M:$CTMP2.$$$ +0:A:ZAS -J -N -OTESTOVR2.OBJ M:$CTMP2.$$$ 0:A:SYMTOAS TESTOVRX.SYM M:$CTMP5.$$$ -SYM2AS V1.00 -M:$CTMP5.$$$ 31663166 TESTOVRX.SYM 0:A:ZAS -J -OTESTOVRX.OBJ M:$CTMP5.$$$ ERA M:$CTMP1.$$$ @@ -280,18 +278,16 @@ ERA M:$$EXEC.$$$ 10E>c -y -o -v testovr1.c testovrx.sym A:C COM (User 0) -Hi-Tech C Compiler (CP/M-80) V3.09-7 +Hi-Tech C Compiler (CP/M-80) V3.09-8 Copyright (C) 1984-87 HI-TECH SOFTWARE Updated from https://github.com/agn453/HI-TECH-Z80-C TESTOVR1.C -0:A:CPP -DCPM -DHI_TECH_C -Dz80 -I0:A: TESTOVR1.C M:$CTMP1.$$$ +0:A:CPP -DCPM -DHI_TECH_C -DZ80 -I0:A: TESTOVR1.C M:$CTMP1.$$$ 0:A:P1 M:$CTMP1.$$$ M:$CTMP2.$$$ M:$CTMP3.$$$ 0:A:CGEN M:$CTMP2.$$$ M:$CTMP1.$$$ 0:A:OPTIM M:$CTMP1.$$$ M:$CTMP2.$$$ -0:A:ZAS -J -N -oTESTOVR1.OBJ M:$CTMP2.$$$ +0:A:ZAS -J -N -OTESTOVR1.OBJ M:$CTMP2.$$$ 0:A:SYMTOAS TESTOVRX.SYM M:$CTMP5.$$$ -SYM2AS V1.00 -M:$CTMP5.$$$ 31663166 TESTOVRX.SYM 0:A:ZAS -J -OTESTOVRX.OBJ M:$CTMP5.$$$ ERA M:$CTMP1.$$$ @@ -303,19 +299,19 @@ ERA M:$$EXEC.$$$ 10E>c -a -v -o testhell.c A:C COM (User 0) -Hi-Tech C Compiler (CP/M-80) V3.09-7 +Hi-Tech C Compiler (CP/M-80) V3.09-8 Copyright (C) 1984-87 HI-TECH SOFTWARE Updated from https://github.com/agn453/HI-TECH-Z80-C -0:A:CPP -DCPM -DHI_TECH_C -Dz80 -I0:A: TESTHELL.C M:$CTMP1.$$$ +0:A:CPP -DCPM -DHI_TECH_C -DZ80 -I0:A: TESTHELL.C M:$CTMP1.$$$ 0:A:P1 M:$CTMP1.$$$ M:$CTMP2.$$$ M:$CTMP3.$$$ 0:A:CGEN M:$CTMP2.$$$ M:$CTMP1.$$$ 0:A:OPTIM M:$CTMP1.$$$ M:$CTMP2.$$$ -0:A:ZAS -J -N -oTESTHELL.OBJ M:$CTMP2.$$$ +0:A:ZAS -J -N -OTESTHELL.OBJ M:$CTMP2.$$$ ERA M:$CTMP1.$$$ ERA M:$CTMP2.$$$ ERA M:$CTMP3.$$$ ERA M:$CTMP5.$$$ -0:A:LINQ -Z -L -Ptext=0100h,data,bss -oM:$L.OBJ 0:A:RRTCPM.OBJ TESTHELL.OBJ 0:A:LIBC.LIB +0:A:LINQ -Z -L -Ptext=0100h,data,bss -OM:$L.OBJ 0:A:RRTCPM.OBJ TESTHELL.OBJ 0:A:LIBC.LIB 0:A:OBJTOHEX -R -B100H M:$L.OBJ TESTHELL.COM ERA M:$L.OBJ ERA TESTHELL.OBJ @@ -330,11 +326,9 @@ BIOS Address (0xF800) TPA Size (57.0K) 10E>era testio.sta -No File 10E>era testio.out No File 10E>era testio.err -No File 10E>testovr E:TESTOVR COM overlay test @@ -445,8 +439,8 @@ E:TESTTRIG COM 10E>testftim E:TESTFTIM COM -34: 03:01 PM -Thu Jan 14 15:01:14 2021 +34: 12:48 PM +Fri Jan 15 12:48:13 2021 10E>testfile @@ -559,20 +553,20 @@ Program name: TESTWILD 20: TESTVER.C 21: TESTVIEW.C 22: TESTWILD.C -23: TESTVER.COM -24: TESTIO.COM -25: TESTUID.COM -26: TESTSTR.COM -27: TESTBIOS.COM -28: TESTBDOS.COM -29: TESTTRIG.COM -30: TESTFTIM.COM -31: TESTFILE.COM -32: TESTAES.COM -33: TESTRC.COM -34: TESTVIEW.COM -35: TESTWILD.COM -36: TESTOVR.COM +23: TESTOVR.COM +24: TESTVER.COM +25: TESTIO.COM +26: TESTUID.COM +27: TESTSTR.COM +28: TESTBIOS.COM +29: TESTBDOS.COM +30: TESTTRIG.COM +31: TESTFTIM.COM +32: TESTFILE.COM +33: TESTAES.COM +34: TESTRC.COM +35: TESTVIEW.COM +36: TESTWILD.COM 37: TESTHELL.COM 10E>testhell diff --git a/z280dist/C280-8.COM b/z280dist/C280-8.COM new file mode 100644 index 0000000..abdb083 Binary files /dev/null and b/z280dist/C280-8.COM differ diff --git a/z280dist/CRTCPM.OBJ b/z280dist/C280CPM.OBJ similarity index 100% rename from z280dist/CRTCPM.OBJ rename to z280dist/C280CPM.OBJ diff --git a/z280dist/C280LIBC.SUB b/z280dist/C280LIBC.SUB new file mode 100644 index 0000000..2ba70b0 --- /dev/null +++ b/z280dist/C280LIBC.SUB @@ -0,0 +1,174 @@ +era c280libc.log +put console output to file c280libc.log [system] +; Compile all LIB280C.LIB modules from sources for Z280 +c280 +<-of2 -c abort.c \ +