mirror of
https://github.com/wwarthen/RomWBW.git
synced 2026-02-06 22:13:13 -06:00
CPM3/ZPM3 Cleanup
This commit is contained in:
@@ -1,28 +0,0 @@
|
||||
COMMON 8F ??
|
||||
CPMSYS 8E 00
|
||||
HBIOS 8D ??
|
||||
TPA 8C 01
|
||||
BUFS 8B 02
|
||||
|
||||
8D:7000 -> 8E:0300
|
||||
|
||||
|
||||
00 -> 8E
|
||||
01 -> 8C
|
||||
02 -> 8B
|
||||
03 -> 8A
|
||||
...
|
||||
|
||||
if bnk = 0, then hbbnk = 8EH (BID_USR)
|
||||
else hbbnk = 8DH (BID_BIOS) - bnk
|
||||
|
||||
or a
|
||||
jr z,bank0
|
||||
neg ; 2 -> -2
|
||||
add 8DH ; 8D - 2 = 8B
|
||||
jp HBX_SETBNK
|
||||
bank0:
|
||||
ld a,(8EH)
|
||||
jp HBX_SETBNK
|
||||
ret
|
||||
|
||||
@@ -24,7 +24,7 @@ rem pause
|
||||
rem Resident CPM3
|
||||
echo.
|
||||
echo.
|
||||
echo *** Resident BIOS ***
|
||||
echo *** Resident CPM3 BIOS ***
|
||||
echo.
|
||||
copy optres.lib options.lib
|
||||
copy genres.dat gencpm.dat
|
||||
@@ -43,7 +43,7 @@ rem pause
|
||||
rem Banked CPM3
|
||||
echo.
|
||||
echo.
|
||||
echo *** Banked BIOS ***
|
||||
echo *** Banked CPM3 BIOS ***
|
||||
echo.
|
||||
copy optbnk.lib options.lib
|
||||
copy genbnk.dat gencpm.dat
|
||||
@@ -59,6 +59,25 @@ zx GENCPM -AUTO -DISPLAY
|
||||
copy cpm3.sys cpm3bnk.sys
|
||||
rem pause
|
||||
|
||||
rem Banked ZPM3
|
||||
echo.
|
||||
echo.
|
||||
echo *** Banked ZPM3 BIOS ***
|
||||
echo.
|
||||
copy optzpm.lib options.lib
|
||||
copy genbnk.dat gencpm.dat
|
||||
zx RMAC -BIOSKRNL
|
||||
zx RMAC -SCB
|
||||
zx Z80ASM -BOOT/MF
|
||||
zx Z80ASM -CHARIO/MF
|
||||
zx Z80ASM -MOVE/MF
|
||||
zx Z80ASM -DRVTBL/MF
|
||||
zx Z80ASM -DISKIO/MF
|
||||
zx LINK -ZPMBIOS3[B]=BIOSKRNL,SCB,BOOT,CHARIO,MOVE,DRVTBL,DISKIO
|
||||
rem zx GENCPM -AUTO -DISPLAY
|
||||
rem copy cpm3.sys zpm3.sys
|
||||
rem pause
|
||||
|
||||
rem *** Resident ***
|
||||
rem copy cpm3res.sys cpm3.sys
|
||||
rem copy genres.dat getcpm.dat
|
||||
|
||||
@@ -3,7 +3,7 @@ setlocal
|
||||
|
||||
if exist bios3.spr del bios3.spr
|
||||
if exist bnkbios3.spr del bnkbios3.spr
|
||||
if exist swpbios3.spr del swpbios3.spr
|
||||
if exist zpmbios3.spr del zpmbios3.spr
|
||||
if exist *.rel del *.rel
|
||||
if exist cpmldr.com del cpmldr.com
|
||||
if exist *.err del *.err
|
||||
|
||||
@@ -38,7 +38,7 @@ tpa$bank equ 0
|
||||
if banked
|
||||
|
||||
; Clone page zero from bank 0 to additional banks
|
||||
ld b,2 ; last bank
|
||||
ld b,3 ; last bank
|
||||
ld c,0 ; src bank
|
||||
init$2:
|
||||
push bc ; save bank id's
|
||||
@@ -250,7 +250,7 @@ stpsiz equ $ - stpimg
|
||||
|
||||
?ldccp:
|
||||
|
||||
if drvswap
|
||||
if zpm
|
||||
|
||||
; Swap A: and system drive (make A: the system drive)
|
||||
ld bc,(@dtbl) ; get drive A DPH
|
||||
@@ -614,6 +614,27 @@ bin2bcd1:
|
||||
pop bc
|
||||
ret
|
||||
|
||||
if zpm
|
||||
|
||||
signon$msg db 13,10,'ZPM3'
|
||||
if banked
|
||||
db ' [BANKED]'
|
||||
endif
|
||||
db ' on HBIOS v'
|
||||
biosver
|
||||
db 13,10,13,10,0
|
||||
|
||||
ccp$msg db 13,10,'BIOS Err on '
|
||||
ccp$msg$drv db '?'
|
||||
db ': No ZCCP.COM file',0
|
||||
|
||||
|
||||
ccp$fcb db 0,'ZCCP ','COM',0,0,0,0
|
||||
ds 16
|
||||
fcb$nr db 0,0,0
|
||||
|
||||
else
|
||||
|
||||
signon$msg db 13,10,'CP/M v3.0'
|
||||
if banked
|
||||
db ' [BANKED]'
|
||||
@@ -631,6 +652,8 @@ ccp$fcb db 0,'CCP ','COM',0,0,0,0
|
||||
ds 16
|
||||
fcb$nr db 0,0,0
|
||||
|
||||
endif
|
||||
|
||||
@bootdu db 0
|
||||
hdspv db 2 ; slices per volume for hard disks (must be >= 1)
|
||||
|
||||
|
||||
@@ -8,7 +8,7 @@ MEMTOP = FD
|
||||
BNKSWT = Y
|
||||
COMBAS = 80
|
||||
LERROR = Y
|
||||
NUMSEGS = 02
|
||||
NUMSEGS = 03
|
||||
MEMSEG00 = 01,43,00
|
||||
MEMSEG01 = 0E,72,02
|
||||
MEMSEG02 = 01,7F,03
|
||||
|
||||
@@ -5,4 +5,4 @@ false equ not true
|
||||
|
||||
banked equ true
|
||||
|
||||
drvswap equ false
|
||||
zpm equ false
|
||||
|
||||
@@ -5,4 +5,4 @@ false equ not true
|
||||
|
||||
banked equ false
|
||||
|
||||
drvswap equ false
|
||||
zpm equ false
|
||||
|
||||
@@ -6,4 +6,4 @@ false equ not true
|
||||
|
||||
banked equ true
|
||||
|
||||
drvswap equ true
|
||||
zpm equ true
|
||||
BIN
Source/Images/hd_cpm3/s0/u0/GENCPM.COM
Normal file
BIN
Source/Images/hd_cpm3/s0/u0/GENCPM.COM
Normal file
Binary file not shown.
@@ -1,3 +1,10 @@
|
||||
This is a generic CP/M 3 adaptation for RomWBW.
|
||||
|
||||
To start CP/M 3, first boot into CP/M 2.2 or ZSystem. Then
|
||||
switch to the drive that contains the CP/M 3 hard disk image
|
||||
and run CPMLDR. You will be prompted for the disk unit
|
||||
of the CP/M 3 image.
|
||||
|
||||
With the following exceptions, the files in this directory
|
||||
came from the CP/M 3 binary distribution on "The Unofficial
|
||||
CP/M Web site" at http://www.cpm.z80.de/binary.html.
|
||||
51
Source/Images/hd_zpm3/s0/u0/ROMWBW.TXT
Normal file
51
Source/Images/hd_zpm3/s0/u0/ROMWBW.TXT
Normal file
@@ -0,0 +1,51 @@
|
||||
This is a generic ZPM3 adaptation for RomWBW.
|
||||
|
||||
To start ZPM3, first boot into CP/M 2.2 or ZSystem. Then
|
||||
switch to the drive that contains the ZPM3 hard disk image
|
||||
and run CPMLDR. You will be prompted for the disk unit
|
||||
of the ZPM3 image.
|
||||
|
||||
You may notice that there is a ZPMLDR application on the
|
||||
hard disk image. This application is equivalent to CPMLDR,
|
||||
but it has some issues with the number of drives that
|
||||
RomWBW supports. So, as indicated above, use CPMLDR to
|
||||
launch ZPM3.
|
||||
|
||||
I have not found a way to make ZPM3 start up with any drive
|
||||
other than A: as the system drive. So, during the load
|
||||
process, the boot drive and drive A: are "swapped" so that
|
||||
the boot drive is always drive A:. Use the ASSIGN
|
||||
command after starting ZPM3 to see how the drives get
|
||||
mapped.
|
||||
|
||||
Per ZPM3 standard, files are distributed across different
|
||||
user areas depending on their usage. Normal applications
|
||||
are in user 15. Help files in user 10. Configuration
|
||||
files in user 14.
|
||||
|
||||
In addition to the applications provided in the ZPM3
|
||||
distributio, the normal CP/M 3 files are included in user
|
||||
area 15. A few typical ZCPR utility programs are also included
|
||||
in user area 15:
|
||||
|
||||
- ALIAS
|
||||
- ARUNZ
|
||||
- ERASE
|
||||
- HELPC (named ZHELP)
|
||||
- LBREXT
|
||||
- SALIAS
|
||||
- SETPATH
|
||||
- VERRROR
|
||||
- VLU
|
||||
- ZCNFG
|
||||
- ERASE (named ZERASE)
|
||||
- ZEX
|
||||
- ZFILER
|
||||
- ZP
|
||||
- SHOW (named ZSHOW)
|
||||
- ZXD
|
||||
|
||||
It is a bit confusing, but the ZPM3 system file is called CPM3.SYS.
|
||||
This is the ZPM3 default configuration and I guess it is done this
|
||||
way to maximize compatibility with CP/M 3. You will notice that
|
||||
the startup banner will indicate ZPM3.
|
||||
@@ -1,20 +0,0 @@
|
||||
This an experimental adaptation of ZPM3 for RomWBW.
|
||||
|
||||
Launch ZPM3 using CPMLDR. ZPMLDR is not working reliably
|
||||
at this time.
|
||||
|
||||
I have not found a way to make ZPM3 start up with any drive
|
||||
other than A: as the system drive. So, during the load
|
||||
process, the boot drive and drive A: are "swapped" so that
|
||||
the boot drive is always drive A:. Use the ASSIGN
|
||||
command after starting ZPM3 to see how the drives get
|
||||
mapped.
|
||||
|
||||
Per ZPM3 standard, files are distributed across different
|
||||
user areas depending on their usage. Normal applications
|
||||
are in user 15. Help files in user 10. Configuration
|
||||
files in user 14.
|
||||
|
||||
ZSID6.COM is the original DRI ZSID distribution, but
|
||||
patched to use RST 6 instead of RST 7 to avoid conflicting
|
||||
with mode 1 interrupts.
|
||||
Binary file not shown.
Binary file not shown.
BIN
Source/Images/hd_zpm3/s0/u15/gencpm.com
Normal file
BIN
Source/Images/hd_zpm3/s0/u15/gencpm.com
Normal file
Binary file not shown.
@@ -9,14 +9,13 @@ set ZXBINDIR=%TOOLS%/cpm/bin/
|
||||
set ZXLIBDIR=%TOOLS%/cpm/lib/
|
||||
set ZXINCDIR=%TOOLS%/cpm/include/
|
||||
|
||||
copy ..\ZCCP\ccp.com .
|
||||
copy ..\ZCCP\ccp.com zccp.com
|
||||
copy ..\ZCCP\zinstal.zpm .
|
||||
copy ..\ZCCP\startzpm.com .
|
||||
copy ..\CPM3\genbnk.dat .
|
||||
copy ..\CPM3\swpbios3.spr bnkbios3.spr
|
||||
copy ..\CPM3\zpmbios3.spr bnkbios3.spr
|
||||
copy ..\CPM3\gencpm.com .
|
||||
copy ..\CPM3\biosldr.rel .
|
||||
|
||||
copy ..\CPM3\cpmldr.com .
|
||||
|
||||
rem ZPM Loader
|
||||
@@ -27,7 +26,7 @@ echo.
|
||||
zx LINK -ZPMLDR[L100]=ZPM3LDR,BIOSLDR
|
||||
rem pause
|
||||
|
||||
rem Banked CPM3
|
||||
rem Banked ZPM3
|
||||
echo.
|
||||
echo.
|
||||
echo *** Banked ZPM3 ***
|
||||
@@ -45,17 +44,19 @@ echo *** Update Disk Image ***
|
||||
echo.
|
||||
for %%f in (
|
||||
zpmldr.com
|
||||
cpmldr.com
|
||||
autotog.com
|
||||
clrhist.com
|
||||
setz3.com
|
||||
cpm3.sys
|
||||
ccp.com
|
||||
zccp.com
|
||||
zinstal.zpm
|
||||
startzpm.com
|
||||
makedos.com
|
||||
gencpm.dat
|
||||
bnkbios3.spr
|
||||
bnkbdos3.spr
|
||||
resbdos3.spr
|
||||
cpmldr.com
|
||||
) do call :upd_img %%f
|
||||
goto :eof
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
@echo off
|
||||
setlocal
|
||||
|
||||
if exist ccp.com del ccp.com
|
||||
if exist zccp.com del zccp.com
|
||||
if exist *.sys del *.sys
|
||||
if exist gencpm.dat del gencpm.dat
|
||||
if exist loader.cim del loader.cim
|
||||
|
||||
Reference in New Issue
Block a user