mirror of
https://github.com/wwarthen/RomWBW.git
synced 2026-02-06 22:43:15 -06:00
Compare commits
84 Commits
v3.5.0-dev
...
v3.5.0-dev
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
2788fa4fdf | ||
|
|
1468cecfad | ||
|
|
8f75441317 | ||
|
|
007e8a372a | ||
|
|
7606abb8f3 | ||
|
|
e3192bfbe6 | ||
|
|
9d7adbec63 | ||
|
|
2d1811dcb4 | ||
|
|
cfa86a9f2a | ||
|
|
7a663e2a3c | ||
|
|
1a73a9614b | ||
|
|
660bb20bba | ||
|
|
f03dcf7193 | ||
|
|
64dbf4ff35 | ||
|
|
edd0e58031 | ||
|
|
887311827a | ||
|
|
ce98947d07 | ||
|
|
5d92341189 | ||
|
|
2a501566d7 | ||
|
|
56a1e86788 | ||
|
|
9c51d56c6a | ||
|
|
736e4e276c | ||
|
|
14486c0276 | ||
|
|
6edb7bb0c7 | ||
|
|
dbde08cc74 | ||
|
|
f61d96bf93 | ||
|
|
b032694e01 | ||
|
|
6c96afcb5a | ||
|
|
73a7338140 | ||
|
|
925b2870eb | ||
|
|
65413e50d1 | ||
|
|
a0ae357d9b | ||
|
|
e6b2cf7f55 | ||
|
|
b0bafb70e4 | ||
|
|
2fccb9dac7 | ||
|
|
7f07af1b62 | ||
|
|
02895a7d84 | ||
|
|
9713ca445c | ||
|
|
f6ef90fe14 | ||
|
|
7a87dd6805 | ||
|
|
5e0f9b3e89 | ||
|
|
c60d46d773 | ||
|
|
72527366cb | ||
|
|
de426b9833 | ||
|
|
c7923bbcff | ||
|
|
29b2bec1e7 | ||
|
|
e97c0d7288 | ||
|
|
68d88be975 | ||
|
|
cecb72f20d | ||
|
|
d7225f40cd | ||
|
|
99bf1799a6 | ||
|
|
3470b9a656 | ||
|
|
803d1b2d4a | ||
|
|
a410e81689 | ||
|
|
8b299428b3 | ||
|
|
76567d1e53 | ||
|
|
0683b0f483 | ||
|
|
b802915067 | ||
|
|
497fa3cdf3 | ||
|
|
5ddde9cee2 | ||
|
|
e946116cc8 | ||
|
|
e7fb74b73f | ||
|
|
683121ace2 | ||
|
|
a3a3b20ded | ||
|
|
ba25ff879a | ||
|
|
93f1964052 | ||
|
|
33df7fab30 | ||
|
|
65fa595602 | ||
|
|
355902fe25 | ||
|
|
19d1547606 | ||
|
|
582b73cee0 | ||
|
|
063a15c338 | ||
|
|
830195cd42 | ||
|
|
1fe47c4100 | ||
|
|
0c7dfa0ae7 | ||
|
|
0113852f7b | ||
|
|
dde7a46b87 | ||
|
|
22290294ef | ||
|
|
3f5a3683f7 | ||
|
|
dbbfd5dfcc | ||
|
|
55fa39730a | ||
|
|
610c0f7856 | ||
|
|
81da5af7ae | ||
|
|
7b5f1f3884 |
@@ -30,10 +30,13 @@ The original DRI CP/M 3.0 Operating System Documentation Set. This
|
||||
should be considered the primary reference for CP/M 3 system operation.
|
||||
|
||||
|
||||
NZCOM User's Manual ("NZCOM Users Manual.pdf")
|
||||
----------------------------------------------
|
||||
NZCOM, Z3PLUS, and replace ZCPR3.3 Documentation
|
||||
------------------------------------------------
|
||||
|
||||
NZCOM operating system operation manual.
|
||||
NZCOM operating system operation manual. ("NZCOM Users Manual.pdf")
|
||||
Z3PLUS operating system operation manual. ("Z3PLUS Users Manual.pdf")
|
||||
Z-System User Guide ("Z-System User Guide.pdf")
|
||||
ZCPR3.3 Users Guide ("ZCPR3.3 Users Guide.pdf")
|
||||
|
||||
|
||||
QP/M 2.7 Installation Guide and Supplements ("qpm27.pdf")
|
||||
|
||||
BIN
Doc/CPM/Z-System Users Guide.pdf
Normal file
BIN
Doc/CPM/Z-System Users Guide.pdf
Normal file
Binary file not shown.
6773
Doc/CPM/Z3PLUS Users Manual.pdf
Normal file
6773
Doc/CPM/Z3PLUS Users Manual.pdf
Normal file
File diff suppressed because it is too large
Load Diff
BIN
Doc/CPM/ZCPR3.3 User Guide.pdf
Normal file
BIN
Doc/CPM/ZCPR3.3 User Guide.pdf
Normal file
Binary file not shown.
@@ -44,6 +44,10 @@ Version 3.5
|
||||
- MAP: CBIOS now uses EXT_SLICE during drive selection
|
||||
- MAP: CPM3 Boot Loader, and BIOS (drive select) now use EXT_SLICE
|
||||
- M?R: Added REBOOT application
|
||||
- MAP: Significant improvement in Disk Catalog document
|
||||
- MAP: Added Disk Image for the Z3PLUS (Z-System for CP/M-Plus) os.
|
||||
- H?H: Fix XModem 12.3 WRERR to put CAN char in proper register to send.
|
||||
- MAP: Initial NVRAM configuration infrastructure, and boot device selection.
|
||||
|
||||
Version 3.4
|
||||
-----------
|
||||
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
2
Makefile
2
Makefile
@@ -28,4 +28,4 @@ dist:
|
||||
$(MAKE) --directory Source clean
|
||||
|
||||
distlog:
|
||||
$(MAKE) dist 2>&1 | tee make.log
|
||||
time -p $(MAKE) dist 2>&1 | tee make.log
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
**RomWBW ReadMe** \
|
||||
Version 3.5 \
|
||||
Wayne Warthen ([wwarthen@gmail.com](mailto:wwarthen@gmail.com)) \
|
||||
13 Oct 2024
|
||||
05 Dec 2024
|
||||
|
||||
# Overview
|
||||
|
||||
@@ -198,8 +198,10 @@ let me know if I missed you!
|
||||
- Martin R has provided substantial help reviewing and improving the
|
||||
User Guide and Applications documents.
|
||||
|
||||
- Mark Pruden has also contributed a great deal of content to the User
|
||||
Guide as well as the COPYSL utility.
|
||||
- Mark Pruden has also contributed a great deal of content to the Disk
|
||||
Catalog, User Guide as well as contributing the disk image for the
|
||||
Z3PLUS operating system, the COPYSL utility, and also implemented
|
||||
feature for RomWBW configuration by NVRAM.
|
||||
|
||||
- Jacques Pelletier has contributed the DS1501 RTC driver code.
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
RomWBW ReadMe
|
||||
Wayne Warthen (wwarthen@gmail.com)
|
||||
13 Oct 2024
|
||||
05 Dec 2024
|
||||
|
||||
|
||||
|
||||
@@ -199,8 +199,10 @@ let me know if I missed you!
|
||||
- Martin R has provided substantial help reviewing and improving the
|
||||
User Guide and Applications documents.
|
||||
|
||||
- Mark Pruden has also contributed a great deal of content to the User
|
||||
Guide as well as the COPYSL utility.
|
||||
- Mark Pruden has also contributed a great deal of content to the Disk
|
||||
Catalog, User Guide as well as contributing the disk image for the
|
||||
Z3PLUS operating system, the COPYSL utility, and also implemented
|
||||
feature for RomWBW configuration by NVRAM.
|
||||
|
||||
- Jacques Pelletier has contributed the DS1501 RTC driver code.
|
||||
|
||||
|
||||
@@ -2,50 +2,37 @@
|
||||
setlocal
|
||||
|
||||
set TOOLS=..\..\Tools
|
||||
set APPBIN=..\..\Binary\Apps
|
||||
set PATH=%TOOLS%\tasm32;%TOOLS%\zxcc;%PATH%
|
||||
set TASMTABS=%TOOLS%\tasm32
|
||||
set CPMDIR80=%TOOLS%/cpm/
|
||||
|
||||
call :asm syscopy || exit /b
|
||||
call :asm assign || exit /b
|
||||
call :asm format || exit /b
|
||||
call :asm talk || exit /b
|
||||
call :asm mode || exit /b
|
||||
call :asm rtc || exit /b
|
||||
call :asm timer || exit /b
|
||||
call :asm rtchb || exit /b
|
||||
|
||||
zxcc Z80ASM -SYSGEN/F || exit /b
|
||||
|
||||
pushd XM && call Build || exit /b & popd
|
||||
pushd FDU && call Build || exit /b & popd
|
||||
pushd Tune && call Build || exit /b & popd
|
||||
pushd FAT && call Build || exit /b & popd
|
||||
pushd Test && call Build || exit /b & popd
|
||||
pushd ZMP && call Build || exit /b & popd
|
||||
pushd ZMD && call Build || exit /b & popd
|
||||
pushd Dev && call Build || exit /b & popd
|
||||
pushd VGM && call Build || exit /b & popd
|
||||
pushd cpuspd && call Build || exit /b & popd
|
||||
pushd reboot && call Build || exit /b & popd
|
||||
pushd Survey && call Build || exit /b & popd
|
||||
pushd HTalk && call Build || exit /b & popd
|
||||
pushd BBCBASIC && call Build || exit /b & popd
|
||||
pushd copysl && call Build || exit /b & popd
|
||||
|
||||
copy *.com %APPBIN%\ || exit /b
|
||||
call :build syscopy || exit /b
|
||||
call :build assign || exit /b
|
||||
call :build format || exit /b
|
||||
call :build talk || exit /b
|
||||
call :build mode || exit /b
|
||||
call :build rtc || exit /b
|
||||
call :build timer || exit /b
|
||||
call :build sysgen || exit /b
|
||||
call :build XM || exit /b
|
||||
call :build FDU || exit /b
|
||||
call :build Tune || exit /b
|
||||
call :build FAT || exit /b
|
||||
call :build Test || exit /b
|
||||
call :build ZMP || exit /b
|
||||
call :build ZMD || exit /b
|
||||
call :build Dev || exit /b
|
||||
call :build VGM || exit /b
|
||||
call :build cpuspd || exit /b
|
||||
call :build reboot || exit /b
|
||||
call :build Survey || exit /b
|
||||
call :build HTalk || exit /b
|
||||
call :build BBCBASIC || exit /b
|
||||
call :build copysl || exit /b
|
||||
|
||||
goto :eof
|
||||
|
||||
:asm
|
||||
echo.
|
||||
echo Building %1...
|
||||
tasm -t80 -g3 -fFF %1.asm %1.com %1.lst || exit /b
|
||||
goto :eof
|
||||
|
||||
:asm180
|
||||
echo.
|
||||
echo Building %1...
|
||||
tasm -t180 -g3 -fFF %1.asm %1.com %1.lst || exit /b
|
||||
:build
|
||||
echo Building %1
|
||||
pushd %1 && call Build || exit /b & popd
|
||||
goto :eof
|
||||
|
||||
@@ -1,24 +1,32 @@
|
||||
@echo off
|
||||
setlocal
|
||||
|
||||
if exist *.bin del *.bin
|
||||
if exist *.com del *.com
|
||||
if exist *.lst del *.lst
|
||||
if exist *.hex del *.hex
|
||||
if exist *.prn del *.prn
|
||||
call :clean syscopy || exit /b
|
||||
call :clean assign || exit /b
|
||||
call :clean format || exit /b
|
||||
call :clean talk || exit /b
|
||||
call :clean mode || exit /b
|
||||
call :clean rtc || exit /b
|
||||
call :clean timer || exit /b
|
||||
call :clean sysgen || exit /b
|
||||
call :clean XM || exit /b
|
||||
call :clean FDU || exit /b
|
||||
call :clean Tune || exit /b
|
||||
call :clean FAT || exit /b
|
||||
call :clean Test || exit /b
|
||||
call :clean ZMP || exit /b
|
||||
call :clean ZMD || exit /b
|
||||
call :clean Dev || exit /b
|
||||
call :clean VGM || exit /b
|
||||
call :clean cpuspd || exit /b
|
||||
call :clean reboot || exit /b
|
||||
call :clean Survey || exit /b
|
||||
call :clean HTalk || exit /b
|
||||
call :clean BBCBASIC || exit /b
|
||||
call :clean copysl || exit /b
|
||||
|
||||
pushd XM && call Clean || exit /b 1 & popd
|
||||
pushd FDU && call Clean || exit /b 1 & popd
|
||||
pushd Tune && call Clean || exit /b 1 & popd
|
||||
pushd FAT && call Clean || exit /b 1 & popd
|
||||
pushd Test && call Clean || exit /b 1 & popd
|
||||
pushd ZMP && call Clean || exit /b 1 & popd
|
||||
pushd ZMD && call Clean || exit /b 1 & popd
|
||||
pushd Dev && call Clean || exit /b 1 & popd
|
||||
pushd VGM && call Clean || exit /b 1 & popd
|
||||
pushd cpuspd && call Clean || exit /b 1 & popd
|
||||
pushd reboot && call Clean || exit /b 1 & popd
|
||||
pushd Survey && call Clean || exit /b 1 & popd
|
||||
pushd HTalk && call Clean || exit /b 1 & popd
|
||||
pushd BBCBASIC && call Clean || exit /b 1 & popd
|
||||
pushd copysl && call Clean || exit /b 1 & popd
|
||||
goto :eof
|
||||
|
||||
:clean
|
||||
pushd %1 && call Clean || exit /b & popd
|
||||
goto :eof
|
||||
|
||||
@@ -1,9 +1,5 @@
|
||||
OBJECTS = sysgen.com syscopy.com assign.com format.com talk.com \
|
||||
mode.com rtc.com timer.com rtchb.com
|
||||
SUBDIRS = HTalk XM FDU FAT Tune Test ZMP ZMD Dev VGM cpuspd reboot Survey BBCBASIC copysl
|
||||
DEST = ../../Binary/Apps
|
||||
SUBDIRS = HTalk XM FDU FAT Tune Test ZMP ZMD Dev VGM cpuspd reboot Survey BBCBASIC copysl \
|
||||
sysgen syscopy assign format talk mode rtc timer
|
||||
TOOLS =../../Tools
|
||||
|
||||
include $(TOOLS)/Makefile.inc
|
||||
|
||||
USETASM = 1
|
||||
|
||||
@@ -1,10 +1,8 @@
|
||||
@echo off
|
||||
setlocal
|
||||
|
||||
set TOOLS=..\..\..\..\Tools
|
||||
|
||||
set TOOLS=../../../../Tools
|
||||
set PATH=%TOOLS%\zxcc;%PATH%
|
||||
|
||||
set CPMDIR80=%TOOLS%/cpm/
|
||||
|
||||
zxcc M80 -=2piotst/l || exit /b
|
||||
|
||||
@@ -1,42 +1,31 @@
|
||||
@echo off
|
||||
setlocal
|
||||
|
||||
set TOOLS=../../../Tools
|
||||
set APPBIN=..\..\Binary\Apps
|
||||
|
||||
set TOOLS=..\..\..\Tools
|
||||
set PATH=%TOOLS%\tasm32;%TOOLS%\zxcc;%PATH%
|
||||
|
||||
set TASMTABS=%TOOLS%\tasm32
|
||||
|
||||
set CPMDIR80=%TOOLS%/cpm/
|
||||
|
||||
pushd DMAmon && call Build || exit /b & popd
|
||||
pushd tstdskng && call Build || exit /b & popd
|
||||
pushd inttest && call Build || exit /b & popd
|
||||
pushd ppidetst && call Build || exit /b & popd
|
||||
pushd ramtest && call Build || exit /b & popd
|
||||
pushd I2C && call Build || exit /b & popd
|
||||
pushd rzsz && call Build || exit /b & popd
|
||||
pushd vdctest && call Build || exit /b & popd
|
||||
pushd kbdtest && call Build || exit /b & popd
|
||||
pushd ps2info && call Build || exit /b & popd
|
||||
pushd 2piotst && call Build || exit /b & popd
|
||||
pushd piomon && call Build || exit /b & popd
|
||||
pushd banktest && call Build || exit /b & popd
|
||||
pushd portscan && call Build || exit /b & popd
|
||||
pushd sound && call Build || exit /b & popd
|
||||
pushd testh8p && call Build || exit /b & popd
|
||||
call :build DMAmon || exit /b
|
||||
call :build tstdskng || exit /b
|
||||
call :build inttest || exit /b
|
||||
call :build ppidetst || exit /b
|
||||
call :build ramtest || exit /b
|
||||
call :build I2C || exit /b
|
||||
call :build rzsz || exit /b
|
||||
call :build vdctest || exit /b
|
||||
call :build kbdtest || exit /b
|
||||
call :build ps2info || exit /b
|
||||
call :build 2piotst || exit /b
|
||||
call :build piomon || exit /b
|
||||
call :build banktest || exit /b
|
||||
call :build portscan || exit /b
|
||||
call :build sound || exit /b
|
||||
call :build testh8p || exit /b
|
||||
|
||||
goto :eof
|
||||
|
||||
:asm
|
||||
echo.
|
||||
echo Building %1...
|
||||
tasm -t80 -g3 -fFF %1.asm %1.com %1.lst || exit /b
|
||||
goto :eof
|
||||
|
||||
:asm180
|
||||
echo.
|
||||
echo Building %1...
|
||||
tasm -t180 -g3 -fFF %1.asm %1.com %1.lst || exit /b
|
||||
:build
|
||||
echo Building %1
|
||||
pushd %1 && call Build || exit /b & popd
|
||||
goto :eof
|
||||
|
||||
@@ -362,7 +362,7 @@ SPDDISP:LD DE,DMA_SPD_STR
|
||||
CALL PRTIDXDEA
|
||||
;
|
||||
call PRTSTRD
|
||||
.db "\n\rTransfer Mode: $" ; DIPLAY TRANSFER
|
||||
.db "\n\rTransfer Mode: $" ; DISPLAY TRANSFER
|
||||
LD a,(dmaxfer) ; MODE
|
||||
LD DE,DMA_XFRMODE
|
||||
CALL PRTIDXDEA
|
||||
|
||||
@@ -5,9 +5,9 @@ set TOOLS=../../../../Tools
|
||||
set PATH=%TOOLS%\tasm32;%PATH%
|
||||
set TASMTABS=%TOOLS%\tasm32
|
||||
|
||||
tasm -t180 -g3 -fFF i2cscan.asm i2cscan.com i2cscan.lst || exit /b
|
||||
tasm -t180 -g3 -fFF rtcds7.asm rtcds7.com rtcds7.lst || exit /b
|
||||
tasm -t180 -g3 -fFF i2clcd.asm i2clcd.com i2clcd.lst || exit /b
|
||||
tasm -t80 -g3 -fFF i2cscan.asm i2cscan.com i2cscan.lst || exit /b
|
||||
tasm -t80 -g3 -fFF rtcds7.asm rtcds7.com rtcds7.lst || exit /b
|
||||
tasm -t80 -g3 -fFF i2clcd.asm i2clcd.com i2clcd.lst || exit /b
|
||||
tasm -t80 -g3 -ff srom.asm srom.com srom.lst || exit /b
|
||||
|
||||
copy /Y i2c*.com ..\..\..\..\Binary\Apps\Test\ || exit /b
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
OBJECTS =
|
||||
# OBJECTS =
|
||||
SUBDIRS = DMAmon I2C inttest ppidetst ramtest tstdskng rzsz vdctest kbdtest ps2info 2piotst piomon banktest portscan sound testh8p
|
||||
DEST = ../../../Binary/Apps/Test
|
||||
# DEST = ../../../Binary/Apps/Test
|
||||
TOOLS =../../../Tools
|
||||
|
||||
include $(TOOLS)/Makefile.inc
|
||||
@@ -5,7 +5,7 @@ set TOOLS=../../../../Tools
|
||||
set PATH=%TOOLS%\tasm32;%PATH%
|
||||
set TASMTABS=%TOOLS%\tasm32
|
||||
|
||||
tasm -t180 -g3 -fFF inttest.asm inttest.com inttest.lst || exit /b
|
||||
tasm -t80 -g3 -fFF inttest.asm inttest.com inttest.lst || exit /b
|
||||
|
||||
copy /Y inttest.com ..\..\..\..\Binary\Apps\Test\ || exit /b
|
||||
copy /Y inttest.doc ..\..\..\..\Binary\Apps\Test\ || exit /b
|
||||
|
||||
@@ -5,7 +5,7 @@ set TOOLS=../../../../Tools
|
||||
set PATH=%TOOLS%\tasm32;%PATH%
|
||||
set TASMTABS=%TOOLS%\tasm32
|
||||
|
||||
tasm -t180 -g3 -fFF kbdtest.asm kbdtest.com kbdtest.lst || exit /b
|
||||
tasm -t80 -g3 -fFF kbdtest.asm kbdtest.com kbdtest.lst || exit /b
|
||||
|
||||
copy /Y kbdtest.com ..\..\..\..\Binary\Apps\Test\ || exit /b
|
||||
|
||||
|
||||
@@ -5,6 +5,6 @@ set TOOLS=../../../../Tools
|
||||
set PATH=%TOOLS%\tasm32;%PATH%
|
||||
set TASMTABS=%TOOLS%\tasm32
|
||||
|
||||
tasm -t180 -g3 -fFF piomon.asm piomon.com piomon.lst || exit /b
|
||||
tasm -t80 -g3 -fFF piomon.asm piomon.com piomon.lst || exit /b
|
||||
|
||||
copy /Y piomon.com ..\..\..\..\Binary\Apps\Test\ || exit /b
|
||||
|
||||
@@ -5,7 +5,7 @@ set TOOLS=../../../../Tools
|
||||
set PATH=%TOOLS%\tasm32;%PATH%
|
||||
set TASMTABS=%TOOLS%\tasm32
|
||||
|
||||
tasm -t180 -g3 -fFF ppidetst.asm ppidetst.com ppidetst.lst || exit /b
|
||||
tasm -t80 -g3 -fFF ppidetst.asm ppidetst.com ppidetst.lst || exit /b
|
||||
|
||||
copy /Y ppidetst.com ..\..\..\..\Binary\Apps\Test\ || exit /b
|
||||
|
||||
|
||||
@@ -5,6 +5,6 @@ set TOOLS=../../../../Tools
|
||||
set PATH=%TOOLS%\tasm32;%PATH%
|
||||
set TASMTABS=%TOOLS%\tasm32
|
||||
|
||||
tasm -t180 -g3 -fFF ps2info.asm ps2info.com ps2info.lst || exit /b
|
||||
tasm -t80 -g3 -fFF ps2info.asm ps2info.com ps2info.lst || exit /b
|
||||
|
||||
copy /Y ps2info.com ..\..\..\..\Binary\Apps\Test\ || exit /b
|
||||
|
||||
@@ -2,7 +2,7 @@ OBJECTS = ramtest.com
|
||||
DEST = ../../../../Binary/Apps/Test
|
||||
DOCDEST = ../../../../Doc
|
||||
TOOLS = ../../../../Tools
|
||||
OTHERS = loader.bin dbgmon.bin
|
||||
OTHERS = *.bin
|
||||
include $(TOOLS)/Makefile.inc
|
||||
|
||||
ramtest.com: loader.bin dbgmon.bin
|
||||
|
||||
@@ -5,7 +5,7 @@ set TOOLS=../../../../Tools
|
||||
set PATH=%TOOLS%\tasm32;%PATH%
|
||||
set TASMTABS=%TOOLS%\tasm32
|
||||
|
||||
tasm -t180 -g3 -fFF tstdskng.asm tstdskng.com tstdskng.lst || exit /b
|
||||
tasm -t80 -g3 -fFF tstdskng.asm tstdskng.com tstdskng.lst || exit /b
|
||||
|
||||
copy /Y tstdskng.com ..\..\..\..\Binary\Apps\Test\ || exit /b
|
||||
|
||||
|
||||
@@ -5,8 +5,8 @@ set TOOLS=../../../../Tools
|
||||
set PATH=%TOOLS%\tasm32;%PATH%
|
||||
set TASMTABS=%TOOLS%\tasm32
|
||||
|
||||
tasm -t180 -g3 -fFF vdctest.asm vdctest.com vdctest.lst || exit /b
|
||||
tasm -t180 -g3 -fFF vdconly.asm vdconly.com vdconly.lst || exit /b
|
||||
tasm -t80 -g3 -fFF vdctest.asm vdctest.com vdctest.lst || exit /b
|
||||
tasm -t80 -g3 -fFF vdconly.asm vdconly.com vdconly.lst || exit /b
|
||||
|
||||
copy /Y vdctest.com ..\..\..\..\Binary\Apps\Test\ || exit /b
|
||||
copy /Y vdconly.com ..\..\..\..\Binary\Apps\Test\ || exit /b
|
||||
|
||||
@@ -5,9 +5,9 @@ set TOOLS=../../../Tools
|
||||
set PATH=%TOOLS%\tasm32;%PATH%
|
||||
set TASMTABS=%TOOLS%\tasm32
|
||||
|
||||
tasm -t180 -g3 -fFF -dWBW tune.asm tune.com tune.lst || exit /b
|
||||
tasm -t180 -g3 -fFF -dZX tune.asm tunezx.com tunezx.lst || exit /b
|
||||
tasm -t180 -g3 -fFF -dMSX tune.asm tunemsx.com tunemsx.lst || exit /b
|
||||
tasm -t80 -g3 -fFF -dWBW tune.asm tune.com tune.lst || exit /b
|
||||
tasm -t80 -g3 -fFF -dZX tune.asm tunezx.com tunezx.lst || exit /b
|
||||
tasm -t80 -g3 -fFF -dMSX tune.asm tunemsx.com tunemsx.lst || exit /b
|
||||
|
||||
copy /Y tune*.com ..\..\..\Binary\Apps\ || exit /b
|
||||
copy /Y Tunes\*.* ..\..\..\Binary\Apps\Tunes\ || exit /b
|
||||
@@ -5,8 +5,8 @@ set TOOLS=../../../Tools
|
||||
set PATH=%TOOLS%\tasm32;%PATH%
|
||||
set TASMTABS=%TOOLS%\tasm32
|
||||
|
||||
tasm -t180 -g3 -fFF -dWBW vgmplay.asm vgmplay.com vgmplay.lst || exit /b
|
||||
tasm -t180 -g3 -fFF -dWBW ymfmdemo.asm ymfmdemo.com ymfmdemo.lst || exit /b
|
||||
tasm -t80 -g3 -fFF -dWBW vgmplay.asm vgmplay.com vgmplay.lst || exit /b
|
||||
tasm -t80 -g3 -fFF -dWBW ymfmdemo.asm ymfmdemo.com ymfmdemo.lst || exit /b
|
||||
|
||||
copy /Y vgmplay.com ..\..\..\Binary\Apps\ || exit /b
|
||||
copy /Y Tunes\*.vgm ..\..\..\Binary\Apps\Tunes\ || exit /b
|
||||
|
||||
@@ -3478,7 +3478,17 @@ RSDMA: LXI D,TBUF ; Reset DMA address
|
||||
RET
|
||||
;
|
||||
WRERR: CALL RSDMA ; Reset DMA to normal
|
||||
MVI C,CAN ; Cancel
|
||||
; [WBW] BEGIN: Fixed to put CAN character in A instead of C because
|
||||
; SEND uses the A register. Also increased number of CAN characters
|
||||
; sent to 3. Credit to HubertH for finding this and providing the fix.
|
||||
; MVI C,CAN ; Cancel
|
||||
; [WBW] -----
|
||||
MVI A,CAN ; Cancel
|
||||
CALL SEND ; Sender
|
||||
MVI A,CAN ; Cancel
|
||||
CALL SEND ; Sender
|
||||
MVI A,CAN ; Cancel
|
||||
; [WBW] END
|
||||
CALL SEND ; Sender
|
||||
; [WBW] BEGIN: RCVSABT does not return, so file write error
|
||||
; message was never being displayed. Swapped things around
|
||||
|
||||
10
Source/Apps/assign/Build.cmd
Normal file
10
Source/Apps/assign/Build.cmd
Normal file
@@ -0,0 +1,10 @@
|
||||
@echo off
|
||||
setlocal
|
||||
|
||||
set TOOLS=../../../Tools
|
||||
set PATH=%TOOLS%\tasm32;%PATH%
|
||||
set TASMTABS=%TOOLS%\tasm32
|
||||
|
||||
tasm -t80 -g3 -fFF assign.asm assign.com assign.lst || exit /b
|
||||
|
||||
copy /Y assign.com ..\..\..\Binary\Apps\ || exit /b
|
||||
6
Source/Apps/assign/Clean.cmd
Normal file
6
Source/Apps/assign/Clean.cmd
Normal file
@@ -0,0 +1,6 @@
|
||||
@echo off
|
||||
setlocal
|
||||
|
||||
if exist *.com del *.com
|
||||
if exist *.lst del *.lst
|
||||
if exist *.bin del *.bin
|
||||
7
Source/Apps/assign/Makefile
Normal file
7
Source/Apps/assign/Makefile
Normal file
@@ -0,0 +1,7 @@
|
||||
OBJECTS = assign.com
|
||||
DEST = ../../../Binary/Apps
|
||||
TOOLS =../../../Tools
|
||||
|
||||
USETASM=1
|
||||
|
||||
include $(TOOLS)/Makefile.inc
|
||||
@@ -51,7 +51,7 @@ bnksel .equ $FFF3 ; HBIOS bank select vector
|
||||
;
|
||||
stamp .equ $40 ; loc of RomWBW CBIOS zero page stamp
|
||||
;
|
||||
#include "../ver.inc"
|
||||
#include "../../ver.inc"
|
||||
;
|
||||
;===============================================================================
|
||||
; Code Section
|
||||
@@ -5,6 +5,6 @@ set TOOLS=../../../Tools
|
||||
set PATH=%TOOLS%\tasm32;%PATH%
|
||||
set TASMTABS=%TOOLS%\tasm32
|
||||
|
||||
tasm -t180 -g3 -fFF cpuspd.asm cpuspd.com cpuspd.lst || exit /b
|
||||
tasm -t80 -g3 -fFF cpuspd.asm cpuspd.com cpuspd.lst || exit /b
|
||||
|
||||
copy /Y cpuspd.com ..\..\..\Binary\Apps\ || exit /b
|
||||
|
||||
10
Source/Apps/format/Build.cmd
Normal file
10
Source/Apps/format/Build.cmd
Normal file
@@ -0,0 +1,10 @@
|
||||
@echo off
|
||||
setlocal
|
||||
|
||||
set TOOLS=../../../Tools
|
||||
set PATH=%TOOLS%\tasm32;%PATH%
|
||||
set TASMTABS=%TOOLS%\tasm32
|
||||
|
||||
tasm -t80 -g3 -fFF format.asm format.com format.lst || exit /b
|
||||
|
||||
copy /Y format.com ..\..\..\Binary\Apps\ || exit /b
|
||||
6
Source/Apps/format/Clean.cmd
Normal file
6
Source/Apps/format/Clean.cmd
Normal file
@@ -0,0 +1,6 @@
|
||||
@echo off
|
||||
setlocal
|
||||
|
||||
if exist *.com del *.com
|
||||
if exist *.lst del *.lst
|
||||
if exist *.bin del *.bin
|
||||
7
Source/Apps/format/Makefile
Normal file
7
Source/Apps/format/Makefile
Normal file
@@ -0,0 +1,7 @@
|
||||
OBJECTS = format.com
|
||||
DEST = ../../../Binary/Apps
|
||||
TOOLS =../../../Tools
|
||||
|
||||
USETASM=1
|
||||
|
||||
include $(TOOLS)/Makefile.inc
|
||||
@@ -19,7 +19,7 @@
|
||||
; 1) Actually implement this
|
||||
;_______________________________________________________________________________
|
||||
;
|
||||
#include "../ver.inc"
|
||||
#include "../../ver.inc"
|
||||
;
|
||||
;===============================================================================
|
||||
; Definitions
|
||||
10
Source/Apps/mode/Build.cmd
Normal file
10
Source/Apps/mode/Build.cmd
Normal file
@@ -0,0 +1,10 @@
|
||||
@echo off
|
||||
setlocal
|
||||
|
||||
set TOOLS=../../../Tools
|
||||
set PATH=%TOOLS%\tasm32;%PATH%
|
||||
set TASMTABS=%TOOLS%\tasm32
|
||||
|
||||
tasm -t80 -g3 -fFF mode.asm mode.com mode.lst || exit /b
|
||||
|
||||
copy /Y mode.com ..\..\..\Binary\Apps\ || exit /b
|
||||
6
Source/Apps/mode/Clean.cmd
Normal file
6
Source/Apps/mode/Clean.cmd
Normal file
@@ -0,0 +1,6 @@
|
||||
@echo off
|
||||
setlocal
|
||||
|
||||
if exist *.com del *.com
|
||||
if exist *.lst del *.lst
|
||||
if exist *.bin del *.bin
|
||||
7
Source/Apps/mode/Makefile
Normal file
7
Source/Apps/mode/Makefile
Normal file
@@ -0,0 +1,7 @@
|
||||
OBJECTS = mode.com
|
||||
DEST = ../../../Binary/Apps
|
||||
TOOLS =../../../Tools
|
||||
|
||||
USETASM=1
|
||||
|
||||
include $(TOOLS)/Makefile.inc
|
||||
@@ -37,7 +37,7 @@
|
||||
; 1) Implement flow control settings
|
||||
;_______________________________________________________________________________
|
||||
;
|
||||
#include "../ver.inc"
|
||||
#include "../../ver.inc"
|
||||
;
|
||||
;===============================================================================
|
||||
; Definitions
|
||||
@@ -5,6 +5,6 @@ set TOOLS=../../../Tools
|
||||
set PATH=%TOOLS%\tasm32;%PATH%
|
||||
set TASMTABS=%TOOLS%\tasm32
|
||||
|
||||
tasm -t180 -g3 -fFF reboot.asm reboot.com reboot.lst || exit /b
|
||||
tasm -t80 -g3 -fFF reboot.asm reboot.com reboot.lst || exit /b
|
||||
|
||||
copy /Y reboot.com ..\..\..\Binary\Apps\ || exit /b
|
||||
|
||||
12
Source/Apps/rtc/Build.cmd
Normal file
12
Source/Apps/rtc/Build.cmd
Normal file
@@ -0,0 +1,12 @@
|
||||
@echo off
|
||||
setlocal
|
||||
|
||||
set TOOLS=../../../Tools
|
||||
set PATH=%TOOLS%\tasm32;%PATH%
|
||||
set TASMTABS=%TOOLS%\tasm32
|
||||
|
||||
tasm -t80 -g3 -fFF rtc.asm rtc.com rtc.lst || exit /b
|
||||
tasm -t80 -g3 -fFF rtchb.asm rtchb.com rtchb.lst || exit /b
|
||||
|
||||
copy /Y rtc.com ..\..\..\Binary\Apps\ || exit /b
|
||||
copy /Y rtchb.com ..\..\..\Binary\Apps\ || exit /b
|
||||
6
Source/Apps/rtc/Clean.cmd
Normal file
6
Source/Apps/rtc/Clean.cmd
Normal file
@@ -0,0 +1,6 @@
|
||||
@echo off
|
||||
setlocal
|
||||
|
||||
if exist *.com del *.com
|
||||
if exist *.lst del *.lst
|
||||
if exist *.bin del *.bin
|
||||
7
Source/Apps/rtc/Makefile
Normal file
7
Source/Apps/rtc/Makefile
Normal file
@@ -0,0 +1,7 @@
|
||||
OBJECTS = rtc.com rtchb.com
|
||||
DEST = ../../../Binary/Apps
|
||||
TOOLS =../../../Tools
|
||||
|
||||
USETASM=1
|
||||
|
||||
include $(TOOLS)/Makefile.inc
|
||||
10
Source/Apps/syscopy/Build.cmd
Normal file
10
Source/Apps/syscopy/Build.cmd
Normal file
@@ -0,0 +1,10 @@
|
||||
@echo off
|
||||
setlocal
|
||||
|
||||
set TOOLS=../../../Tools
|
||||
set PATH=%TOOLS%\tasm32;%PATH%
|
||||
set TASMTABS=%TOOLS%\tasm32
|
||||
|
||||
tasm -t80 -g3 -fFF syscopy.asm syscopy.com syscopy.lst || exit /b
|
||||
|
||||
copy /Y syscopy.com ..\..\..\Binary\Apps\ || exit /b
|
||||
6
Source/Apps/syscopy/Clean.cmd
Normal file
6
Source/Apps/syscopy/Clean.cmd
Normal file
@@ -0,0 +1,6 @@
|
||||
@echo off
|
||||
setlocal
|
||||
|
||||
if exist *.com del *.com
|
||||
if exist *.lst del *.lst
|
||||
if exist *.bin del *.bin
|
||||
7
Source/Apps/syscopy/Makefile
Normal file
7
Source/Apps/syscopy/Makefile
Normal file
@@ -0,0 +1,7 @@
|
||||
OBJECTS = syscopy.com
|
||||
DEST = ../../../Binary/Apps
|
||||
TOOLS =../../../Tools
|
||||
|
||||
USETASM=1
|
||||
|
||||
include $(TOOLS)/Makefile.inc
|
||||
13
Source/Apps/sysgen/Build.cmd
Normal file
13
Source/Apps/sysgen/Build.cmd
Normal file
@@ -0,0 +1,13 @@
|
||||
@echo off
|
||||
setlocal
|
||||
|
||||
set TOOLS=..\..\..\Tools
|
||||
set PATH=%TOOLS%\tasm32;%TOOLS%\zxcc;%PATH%
|
||||
set TASMTABS=%TOOLS%\tasm32
|
||||
set CPMDIR80=%TOOLS%/cpm/
|
||||
|
||||
:: tasm -t80 -g3 -fFF sysgen.asm sysgen.com sysgen.lst || exit /b
|
||||
|
||||
zxcc Z80ASM -SYSGEN/F || exit /b
|
||||
|
||||
copy /Y sysgen.com ..\..\..\Binary\Apps\ || exit /b
|
||||
6
Source/Apps/sysgen/Clean.cmd
Normal file
6
Source/Apps/sysgen/Clean.cmd
Normal file
@@ -0,0 +1,6 @@
|
||||
@echo off
|
||||
setlocal
|
||||
|
||||
if exist *.com del *.com
|
||||
if exist *.lst del *.lst
|
||||
if exist *.bin del *.bin
|
||||
7
Source/Apps/sysgen/Makefile
Normal file
7
Source/Apps/sysgen/Makefile
Normal file
@@ -0,0 +1,7 @@
|
||||
OBJECTS = sysgen.com
|
||||
DEST = ../../../Binary/Apps
|
||||
TOOLS =../../../Tools
|
||||
|
||||
USETASM=1
|
||||
|
||||
include $(TOOLS)/Makefile.inc
|
||||
10
Source/Apps/talk/Build.cmd
Normal file
10
Source/Apps/talk/Build.cmd
Normal file
@@ -0,0 +1,10 @@
|
||||
@echo off
|
||||
setlocal
|
||||
|
||||
set TOOLS=../../../Tools
|
||||
set PATH=%TOOLS%\tasm32;%PATH%
|
||||
set TASMTABS=%TOOLS%\tasm32
|
||||
|
||||
tasm -t80 -g3 -fFF talk.asm talk.com talk.lst || exit /b
|
||||
|
||||
copy /Y talk.com ..\..\..\Binary\Apps\ || exit /b
|
||||
6
Source/Apps/talk/Clean.cmd
Normal file
6
Source/Apps/talk/Clean.cmd
Normal file
@@ -0,0 +1,6 @@
|
||||
@echo off
|
||||
setlocal
|
||||
|
||||
if exist *.com del *.com
|
||||
if exist *.lst del *.lst
|
||||
if exist *.bin del *.bin
|
||||
7
Source/Apps/talk/Makefile
Normal file
7
Source/Apps/talk/Makefile
Normal file
@@ -0,0 +1,7 @@
|
||||
OBJECTS = talk.com
|
||||
DEST = ../../../Binary/Apps
|
||||
TOOLS =../../../Tools
|
||||
|
||||
USETASM=1
|
||||
|
||||
include $(TOOLS)/Makefile.inc
|
||||
10
Source/Apps/timer/Build.cmd
Normal file
10
Source/Apps/timer/Build.cmd
Normal file
@@ -0,0 +1,10 @@
|
||||
@echo off
|
||||
setlocal
|
||||
|
||||
set TOOLS=../../../Tools
|
||||
set PATH=%TOOLS%\tasm32;%PATH%
|
||||
set TASMTABS=%TOOLS%\tasm32
|
||||
|
||||
tasm -t80 -g3 -fFF timer.asm timer.com timer.lst || exit /b
|
||||
|
||||
copy /Y timer.com ..\..\..\Binary\Apps\ || exit /b
|
||||
6
Source/Apps/timer/Clean.cmd
Normal file
6
Source/Apps/timer/Clean.cmd
Normal file
@@ -0,0 +1,6 @@
|
||||
@echo off
|
||||
setlocal
|
||||
|
||||
if exist *.com del *.com
|
||||
if exist *.lst del *.lst
|
||||
if exist *.bin del *.bin
|
||||
7
Source/Apps/timer/Makefile
Normal file
7
Source/Apps/timer/Makefile
Normal file
@@ -0,0 +1,7 @@
|
||||
OBJECTS = timer.com
|
||||
DEST = ../../../Binary/Apps
|
||||
TOOLS =../../../Tools
|
||||
|
||||
USETASM=1
|
||||
|
||||
include $(TOOLS)/Makefile.inc
|
||||
@@ -40,7 +40,7 @@
|
||||
; Includes division subroutines from: https://wikiti.brandonw.net/
|
||||
;;_______________________________________________________________________________
|
||||
;
|
||||
#include "../ver.inc" ; Used for building RomWBW
|
||||
#include "../../ver.inc" ; Used for building RomWBW
|
||||
;#include "ver.inc" ; Used for testing purposes during code development
|
||||
;
|
||||
;===============================================================================
|
||||
@@ -15,4 +15,4 @@ call BuildFZ80 || exit /b
|
||||
|
||||
if "%1" == "dist" (
|
||||
call Clean || exit /b
|
||||
)
|
||||
)
|
||||
|
||||
@@ -78,7 +78,7 @@ MEMTOP .EQU $10000
|
||||
#INCLUDE "../UBIOS/ubios.inc"
|
||||
#ENDIF
|
||||
;
|
||||
.ORG CBIOS_LOC ; DEFINED IN STD.ASM
|
||||
.ORG CBIOS_LOC ; DEFINED IN LAYOUT.INC
|
||||
;
|
||||
STACK .EQU CBIOS_END ; USE SLACK SPACE FOR STACK AS NEEDED
|
||||
;
|
||||
|
||||
@@ -384,6 +384,112 @@ protocol.
|
||||
|
||||
**`X`** - Exit the monitor program back to the main boot menu.
|
||||
|
||||
## RomWBW System Configuration
|
||||
|
||||
System Configuration (`SYSCONF`) is a utility that allows system configuration to
|
||||
be set, dynamically and stored in NVRAM provided by an RTC chip.
|
||||
|
||||
(`SYSCONF`) is both a ROM application ('W' Menu option), and a CP/M utility.
|
||||
Noting however the CP/M utility is not included on an disk image, it is found in
|
||||
the `Binary/Applications` folder of the RomWBW distribution.
|
||||
|
||||
The $doc_user$ has additional information on the use of NVRAM to set your
|
||||
system configuration.
|
||||
|
||||
### Basic Operation
|
||||
|
||||
The application is an interactive application; it does not have a command line syntax.
|
||||
Instead commands are executed from within the application in a command line structure.
|
||||
|
||||
When you first start the (`SYSCONF`) utility it will display the current switches
|
||||
followed by a command listing.
|
||||
|
||||
When you first run the (`SYSCONF`) utility the NVRAM will be uninitialised, and can
|
||||
be initialised using the (R)eset command, which writes default values to NVRAM.
|
||||
|
||||
Updates are done immediately to NVRAM as you enter them, i.e. there is no confirm
|
||||
changes step. If you make any incorrect changes, you simply need to enter a new
|
||||
command to set the Switch value correctly.
|
||||
|
||||
Once a change has been made it is available, however it may not take effect until
|
||||
the next system reboot. This is dependent on the Switch itself.
|
||||
|
||||
If no NVRAM is provided by your hardware, then running this application will just
|
||||
report the missing hardware and exit immediately.
|
||||
|
||||
To exit from the application use the (Q)uit command.
|
||||
|
||||
### Commands and Syntax
|
||||
|
||||
The following are the accepted commands, unless otherwise specified a "Space"
|
||||
character is used to delimit parameters in the command.
|
||||
|
||||
| Command | Argument(s) | Description |
|
||||
|------------|------------------|-----------------------------------------------|
|
||||
| (P)rint | -none- | Display a list of the current switch value(s) |
|
||||
| (S)et | {SW} {val},... | Sets an Switch {SW} with specific values(s) |
|
||||
| (R)eset | -none- | Reset all setting to default |
|
||||
| (H)elp | {SW} | Provides help on the syntax (values) |
|
||||
| (Q)uit | -none- | Exit the application |
|
||||
|
||||
**Where**
|
||||
|
||||
| Argument | Description |
|
||||
|-----------|----------------------------------------------------------------------|
|
||||
| {SW} | Switch ID, typically this is 2 character name to identify the switch |
|
||||
| {val},... | a "Comma" separated list of values to set into the switch |
|
||||
|
||||
### Switch Options
|
||||
|
||||
#### Auto Boot (AB)
|
||||
|
||||
This switch will define if the system will perform auto boot at the RomWBW boot prompt.
|
||||
Enabling this will not prevent a user from typing a boot command, so long as the timeout is not
|
||||
exceeded. When configured this replaces the (`AUTO_CMD`) variable
|
||||
defined in build configuration.
|
||||
|
||||
Making changes to auto boot has no affect until the next reboot.
|
||||
|
||||
**Arguments**
|
||||
|
||||
| Type | Arguments | Description |
|
||||
|----------|------------|--------------------------------------------------------|
|
||||
| Enable | 'E' | Auto Boot. eg. "E,10" will auto boot, after 10 seconds |
|
||||
| | Timout | Timeout in seconds in the range 0-15, 0 = immediate |
|
||||
| Disabled | 'D' | No Auto Boot. e.g. "D" will disable autoboot |
|
||||
|
||||
**Examples**
|
||||
|
||||
| Command | Description |
|
||||
|-----------------------|---------------------------------------------------|
|
||||
| S AB E,10 | Enable Auto Boot with 10 second delay |
|
||||
| S AB D | Disable Auto Boot |
|
||||
|
||||
#### Boot Options (BO)
|
||||
|
||||
This switch will define the boot command to be executed when auto boot is
|
||||
enabled. When configured this replaces the (`AUTO_CMD`) variable
|
||||
defined in the ROM build configuration.
|
||||
|
||||
Making changes to boot options has no affect until the next reboot.
|
||||
|
||||
**Arguments**
|
||||
|
||||
| Type | Arguments | Description |
|
||||
|------|------------------|----------------------------------------------------------|
|
||||
| Disk | 'D' | Disk Boot. eg. "D,2,14" will boot, disk unit 2, slice 14 |
|
||||
| | Disk Unit Number | Unit number in the range 0-127 |
|
||||
| | Disk Slice | Slice in the range 0-255, use 0 for floppy boot |
|
||||
| ROM | 'R' | ROM App. e.g. "R,M" will boot the Monitor App |
|
||||
| | Rom App Name | single character used on the Menu to identify the app |
|
||||
|
||||
**Examples**
|
||||
|
||||
| Command | Description |
|
||||
|-------------|----------------------------------------------------------|
|
||||
| S BO D,2,14 | Set the default boot from Disk; Unit 2, Slice 14 |
|
||||
| S BO R,M | Set the default boot to be the (M)onitor Rom Application |
|
||||
|
||||
## CP/M 2.2
|
||||
|
||||
This option will boot the CP/M 2.2 disk operating system
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -190,7 +190,9 @@ please let me know if I missed you!
|
||||
User Guide and Applications documents.
|
||||
|
||||
* Mark Pruden has also contributed a great deal of content to the
|
||||
User Guide as well as the COPYSL utility.
|
||||
Disk Catalog, User Guide as well as contributing the disk image
|
||||
for the Z3PLUS operating system, the COPYSL utility, and also
|
||||
implemented feature for RomWBW configuration by NVRAM.
|
||||
|
||||
* Jacques Pelletier has contributed the DS1501 RTC driver code.
|
||||
|
||||
|
||||
@@ -499,6 +499,97 @@ The startup then proceeds very much like the Application Boot
|
||||
process described above. HBIOS is installed in its operating bank
|
||||
and control is passed to the Boot Loader.
|
||||
|
||||
## Boot Recovery
|
||||
|
||||
To assist users when driver faults or misconfiguration causes a boot
|
||||
failure, RomWBW supports a limited recovery capability. This is
|
||||
achieved by allowing the user to reboot their machine, loading
|
||||
a minimal driver set. Implementation of this feature requires a
|
||||
hardware input "BOOT RECOVERY" button to be available and
|
||||
appropriate software configuration to be completed in the HBIOS.
|
||||
|
||||
When implemented, holding the "BOOT RECOVERY" button in after a
|
||||
reset or power cycle will cause the normal driver load process to
|
||||
be skipped in preference to a minimal set of drivers being loaded.
|
||||
|
||||
Typically this would be: Serial communication, RAM disk and parallel
|
||||
port IDE interface drivers.
|
||||
|
||||
Platforms supporting this option currently are the MBC, Duodyne and
|
||||
latter version of the SBC.
|
||||
|
||||
# Configuration
|
||||
|
||||
## RomWBW NVRAM Configuration
|
||||
|
||||
On systems with RTC devices (that have Non-Volatile RAM), RomWBW supports storing
|
||||
some limited configuration option options inside this RAM.
|
||||
|
||||
Several configuration options are currently supported; these are known as Switches.
|
||||
The following switch ID's are defined, and described in sections below.
|
||||
|
||||
| Switch Number | Name | Description |
|
||||
|---------------|--------------|-----------------------------------------------|
|
||||
| 0x00 | -reserved- | Reserved |
|
||||
| 0x01 | Boot Options | ROM or Disk Boot Settings |
|
||||
| 0x02 | -n/a- | -n/a- high order byte of previous switch |
|
||||
| 0x03 | Auto Boot | Automatically boot enabled without user input |
|
||||
| 0x04 - 0xFE | -future- | Future general usage |
|
||||
| 0xFF | Status Reset | Get Status or Reset Switches to Default |
|
||||
|
||||
RomWBW uses bytes located at the start of RTC NVRAM, and includes a Parity check of
|
||||
the bytes in NVRAM to check for authenticity before using the configuration.
|
||||
|
||||
| NVRAM Byte | Name | Description |
|
||||
|-------------|--------------|-----------------------------------|
|
||||
| 0x00 | Header Byte | Header Signature Byte 'W' |
|
||||
| 0x01 - 0x03 | Switch Data | Actual Switch Data |
|
||||
| 0x04 | Parity Check | Checksum byte to check integrity |
|
||||
|
||||
The above data is copied into the HBIOS Configuration Block (HCB) at startup at
|
||||
the location starting at CB_SWITCHES.
|
||||
|
||||
### Boot Options (NVSW_BOOTOPTS)
|
||||
|
||||
16 bit Switch defining the ROM application or Disk device to boot if
|
||||
automatic booting is enabled.
|
||||
|
||||
| Bit 15 | Bits 14-8 | Bits 7-0 |
|
||||
|-------------|-------------------|--------------------|
|
||||
| 1 = ROM App | -undefined- | App to Boot (Char) |
|
||||
| 0 = Disk | Disk Unit (0-127) | Disk Slice (0-255) |
|
||||
|
||||
### Auto Boot (NVSW_AUTOBOOT)
|
||||
|
||||
8 bit Switch defining if the system should auto boot at startup.
|
||||
|
||||
| Bits 7-6 | Bit 5 | Bit 4 | Bits 3-0 |
|
||||
|----------|------------------------|----------|--------------------------------------|
|
||||
| -unused- | 1 = Auto Boot Enabled | -unused- | 0 = Immediate Boot with no delay |
|
||||
| -unused- | 1 = Auto Boot Enabled | -unused- | (1-15) Timeout (seconds) before boot |
|
||||
| -unused- | 0 = Auto Boot Disabled | -unused- | -undefined- |
|
||||
|
||||
### Status Reset (0xFF)
|
||||
|
||||
The Status Reset switch is not a general purpose switch, it is a control mechanism
|
||||
to allow the global status of all switches to be determined. The meaning of the switch
|
||||
is different for Read (Get Status) and Write (Reset NVRAM)
|
||||
|
||||
#### GET (Get Status)
|
||||
|
||||
The read Get Status of switches. This returns very specific values from the function call.
|
||||
|
||||
| Status | A Register | Z / NZ Flag |
|
||||
|----------------------------------------------|------------|--------------|
|
||||
| NVRAM does not exist | A=0 | NZ flag set |
|
||||
| NVRAM exists, but has not been initialised | A=1 | NZ flag set |
|
||||
| NVRAM exists, and has been fully initialised | A='W' | Z flag set |
|
||||
|
||||
#### SET (Reset NVRAM)
|
||||
|
||||
Reset NVRAM to default values. This will wipe any existing data and set default
|
||||
values into NVRAM.
|
||||
|
||||
# Driver Model
|
||||
|
||||
The framework code for bank switching also allows hardware drivers to be
|
||||
@@ -2611,6 +2702,27 @@ the caller can use interbank calls directly to the function in the
|
||||
driver which bypasses the overhead of the normal function invocation
|
||||
lookup.
|
||||
|
||||
#### SYSGET Subfunction 0xC0 -- Get Switches (SWITCH)
|
||||
|
||||
| **Entry Parameters** | **Returned Values** |
|
||||
|----------------------|---------------------|
|
||||
| B: 0xF8 | A: Status |
|
||||
| C: 0xC0 | HL: Switch Value |
|
||||
| D: Switch Key | |
|
||||
|
||||
This function will return the current value (HL) of the switch (D) from NVRAM.
|
||||
|
||||
Switches may be returned as a 16 bit (HL) or 8 bit (L) value. It is up to the caller
|
||||
to process the returned value correctly. Note for Switch 0xFF (status) the returned value
|
||||
is primarily in the Status (A) register.
|
||||
|
||||
Errors are signalled in the return by setting the NZ flag. When set the
|
||||
(A) register may contain an error code, but this code does not conform to RomWBW standard
|
||||
|
||||
Success is indicated by setting the Z flag
|
||||
|
||||
For a description of switches please see [RomWBW NVRAM Configuration]
|
||||
|
||||
#### SYSGET Subfunction 0xD0 -- Get Timer Tick Count (TIMER)
|
||||
|
||||
| **Entry Parameters** | **Returned Values** |
|
||||
@@ -2783,6 +2895,27 @@ sub-function value. The following lists the subfunctions available along
|
||||
with the registers/information utilized. The Status (A) is a standard
|
||||
HBIOS result code.
|
||||
|
||||
#### SYSSET Subfunction 0xC0 -- Set Switches (SWITCH)
|
||||
|
||||
| **Entry Parameters** | **Returned Values** |
|
||||
|----------------------|---------------------|
|
||||
| B: 0xF9 | A: Status |
|
||||
| C: 0xC0 | |
|
||||
| D: Switch Key | |
|
||||
| HL: Switch Value | |
|
||||
|
||||
This function will set the value (HL) into the switch (D) and store it into NVRAM.
|
||||
|
||||
Switches may be passed as a 16 bit (HL) or 8 bit (L) value. It is up to the caller
|
||||
to send the value correctly. Note for Switch 0xFF (reset) the value (HL) is ignored
|
||||
|
||||
Errors are signalled in the return by setting the NZ flag. When set the
|
||||
(A) register may contain an error code, but this code does not conform to RomWBW standard
|
||||
|
||||
Success is indicated by setting the Z flag
|
||||
|
||||
For a description of switches please see [RomWBW NVRAM Configuration]
|
||||
|
||||
#### SYSSET Subfunction 0xD0 -- Set Timer Tick Count (TIMER)
|
||||
|
||||
| **Entry Parameters** | **Returned Values** |
|
||||
|
||||
@@ -897,7 +897,56 @@ Boot [H=Help]: r
|
||||
Restarting System...
|
||||
```
|
||||
|
||||
### Changing Console and Console speed
|
||||
### Setting NVRAM Options
|
||||
|
||||
On systems with RTC devices (that have Non-Volatile RAM), RomWBW supports storing
|
||||
some limited configuration option options inside this NVRAM.
|
||||
|
||||
Several configuration options are currently supported, these are known as Switches
|
||||
|
||||
* Specify Automatic boot at startup, after an optional delay (AB)
|
||||
* Define the Disk or ROM App to be booted at for automatic boot (BO)
|
||||
|
||||
RomWBW uses bytes located at the start of RTC NVRAM, and includes a checksum of
|
||||
the bytes in NVRAM to check for integrity before using the configuration.
|
||||
|
||||
Initially NVRAM has to be reset (with default values), before it can be used.
|
||||
As well as setting defaults, it also writes the correct checksum, and allows the
|
||||
NVRAM to be accessed and to store the RomWBW config.
|
||||
|
||||
This is an explicit step that must be done, as any existing data stored is overwritten.
|
||||
If you are using NVRAM for other purposes, then you can continue to do so
|
||||
so long as you do NOT perform this Reset step.
|
||||
|
||||
NVRAM may also need to be reset in these circumstances:
|
||||
|
||||
* When there has been a loss of power to the NVRAM.
|
||||
* When upgrading to a new RomWBW version, or a RomWBW version that has new switches.
|
||||
* If the NVRAM has been overwritten by another application.
|
||||
|
||||
If you want to continue to use NVRAM in your applications you may want to consider storing
|
||||
your data above the RomWBW Switch data.
|
||||
|
||||
To configure these options an inbuilt ROM application is provided which can be accessed
|
||||
by the command "`W`" from the RomWBW boot menu.
|
||||
|
||||
This application is also built as a CP/M utility, but is not included on an disk image,
|
||||
it is found in the `Binary/Applications` folder of the RomWBW distribution.
|
||||
|
||||
For further guidance on using this application please see the section
|
||||
"RomWBW System Configuration" in the $doc_apps$ document.
|
||||
|
||||
If your system has both a [Front Panel] as well as NVRAM, be aware that
|
||||
the Front Panel switches take precedence over the NVRAM configuration
|
||||
settings.
|
||||
|
||||
Note that the WizNet class of Network devices also contain NVRAM which is
|
||||
entirely separate from the RomWBW configuration NVRAM described here. A
|
||||
separate utility is used to set the WizNet NVRAM (see [CP/NET Client Setup]).
|
||||
|
||||
[RomWBW Applications]($doc_root$/RomWBW Applications.pdf)
|
||||
|
||||
### Changing Console and Console Speed
|
||||
|
||||
Your system can support a number of devices for the console. They may
|
||||
be VDU type devices or serial devices. If you want to change which
|
||||
@@ -2288,12 +2337,21 @@ survive re-imaging, you **must** follow these rules:
|
||||
|
||||
This section covers techniques to copy partial images onto pre-existing media,
|
||||
in effect performing a selective slice copy. These techniques currently **only** apply to
|
||||
hd1k formatted media, which has a convienient 1MB size metric.
|
||||
However adapting to hd512 is possible.
|
||||
hd1k formatted media, which has a convenient 1MB size metric.
|
||||
However adapting to hd512 is possible, but left to the user.
|
||||
|
||||
On Linux/MacOS the `dd` command can be used to write data in a controlled manner.
|
||||
The `dd` command supports options to define precisly souce
|
||||
and destination offsets and sizes to copy.
|
||||
Although Windows does not have a native `dd` command, there are multiple
|
||||
options for installing it including [MSYS2](https://www.msys2.org/),
|
||||
[CygWin](https://www.cygwin.com/),
|
||||
and [dd for Windows](http://www.chrysocome.net/dd).
|
||||
|
||||
**WARNING**: The `dd` command is a low-level utility that writes
|
||||
directly to raw disk sectors with almost no safety checks. It is very
|
||||
easy to corrupt a disk if this tool is used incorrectly.
|
||||
|
||||
The `dd` command supports options to define precisely source
|
||||
and destination offsets and sizes to copy.
|
||||
From the documentation of `dd` the following options are important.
|
||||
|
||||
```
|
||||
@@ -2365,6 +2423,27 @@ and 1 is the size of the partition table im megabytes.
|
||||
Thus we are skipping 6 slices (in the combo image)
|
||||
and writing to the 7th slice.
|
||||
|
||||
#### Example 3 : Copy image using partition
|
||||
|
||||
In the previous examples, the hard disk is addressed as a raw disk
|
||||
device and we took steps to calculate the assumed start of the RomWBW
|
||||
partition. However, as long as the hd1k format is in use, it is
|
||||
also possible to just point `dd` directly to the partition itself.
|
||||
|
||||
To do this, you must first determine the name that your operating
|
||||
system is using for the desired partition. Frequently, partitions
|
||||
are named by simply adding a number after the name of the hard disk
|
||||
device. For example, if the hard disk is /dev/sdg, the first
|
||||
partition is frequently /dev/sdg1 or /dev/sdgp1.
|
||||
|
||||
Taking advantage of this, it is safer and easier to calculate the
|
||||
offset of a slice within the partition. It is simply the slice
|
||||
number \* 8MB. Example 2 above, could now be performed as:
|
||||
|
||||
```
|
||||
Binary % sudo dd if=hd1k_games.img of=/dev/sdg1 seek=48 bs=1M
|
||||
```
|
||||
|
||||
# Operating Systems
|
||||
|
||||
One of the primary goals of RomWBW is to expose a set of generic
|
||||
@@ -2418,6 +2497,88 @@ call "CPM.SYS". For example:
|
||||
|
||||
`SYSCOPY C:=B:CPM.SYS`
|
||||
|
||||
#### Character Device Mapping
|
||||
|
||||
Character device mapping under CP/M 2.2 has 3 layers:
|
||||
|
||||
CP/M Logical Device --> CP/M Physical Device --> RomWBW HBIOS Device
|
||||
|
||||
The CP/M Logical Devices are:
|
||||
|
||||
| Device | Description |
|
||||
|--------|--------------------------------------------------------------------------|
|
||||
| `CON:` | System console device, used by CCP for communication with the operator |
|
||||
| `RDR:` | Paper tape reader device |
|
||||
| `PUN:` | Paper tape punch device |
|
||||
| `LST:` | Output list device |
|
||||
|
||||
The CP/M Physical Devices are:
|
||||
|
||||
| Device | Description |
|
||||
|--------|--------------------------------------------------------------------------|
|
||||
| `TTY:` | Teletype device (slow speed console) |
|
||||
| `CRT:` | Cathode ray tube device (high speed console) |
|
||||
| `BAT:` | Batch processing (input from `RDR:`, output to `LST:`) |
|
||||
| `UC1:` | User-defined console |
|
||||
| `PTR:` | Paper tape reader (high speed reader) |
|
||||
| `UR1:` | User-defined reader #1 |
|
||||
| `UR2:` | User-defined reader #2 |
|
||||
| `PTP:` | Paper tape punch (high speed punch) |
|
||||
| `UP1:` | User-defined punch #1 |
|
||||
| `UP2:` | User-defined punch #2 |
|
||||
| `LPT:` | Line printer |
|
||||
| `UL1:` | User-defined list device #1 |
|
||||
|
||||
CP/M Logical Devices are mapped to CP/M Physical Devices via the
|
||||
IOBYTE at 0x0003 as shown below.
|
||||
|
||||
+----------------+----------+----------+----------+----------+
|
||||
| Logical Device | `LST:` | `PUN:` | `RDR:` | `CON:` |
|
||||
+----------------+----------+----------+----------+----------+
|
||||
| IOBYTE Bits | 7 6 | 5 4 | 3 2 | 1 0 |
|
||||
+================+==========+==========+==========+==========+
|
||||
| 0 (0b00) | `TTY:` | `TTY:` | `TTY:` | `TTY:` |
|
||||
+----------------+----------+----------+----------+----------+
|
||||
| 1 (0b01) | `CRT:` | `PTP:` | `PTR:` | `CRT:` |
|
||||
+----------------+----------+----------+----------+----------+
|
||||
| 2 (0b10) | `LPT:` | `UP1:` | `UR1:` | `BAT:` |
|
||||
+----------------+----------+----------+----------+----------+
|
||||
| 3 (0b11) | `UL1:` | `UP2:` | `UR2:` | `UC1:` |
|
||||
+----------------+----------+----------+----------+----------+
|
||||
|
||||
The mappings above can be managed using the `STAT` command. This
|
||||
command essentially just modifies the IOBYTE value.
|
||||
|
||||
CP/M Physical Devices are mapped to RomWBW HBIOS devices during
|
||||
the boot process depending on the number of HBIOS Char devices
|
||||
in the system.
|
||||
|
||||
All CP/M Physical Devices are initially mapped to HBIOS Char 0.
|
||||
If additional HBIOS Char devices are available in the system, they will
|
||||
be mapped as below:
|
||||
|
||||
| CP/M | RomWBW HBIOS |
|
||||
|--------|------------------|
|
||||
| `TTY:` | Char 0 |
|
||||
| `CRT:` | CRT |
|
||||
| `BAT:` | CP/M RDR/LST |
|
||||
| `UC1:` | Char 1 |
|
||||
| `PTR:` | Char 1 |
|
||||
| `UR1:` | Char 2 |
|
||||
| `UR2:` | Char 3 |
|
||||
| `PTP:` | Char 1 |
|
||||
| `UP1:` | Char 2 |
|
||||
| `UP2:` | Char 3 |
|
||||
| `LPT:` | Char 1 |
|
||||
| `UL1:` | Char 2 |
|
||||
|
||||
Normally, the HBIOS Console device (Loader prompt) is on HBIOS Device
|
||||
Char 0. If it has been reassigned to a different HBIOS character
|
||||
device before launching CP/M, then the above mapping will be modified.
|
||||
TTY: will be assigned to the current HBIOS console Char device. The
|
||||
remaining assignments will be filled in with the other Char devices
|
||||
as available.
|
||||
|
||||
#### Notes
|
||||
|
||||
* You can change media, but it must be done while at the OS
|
||||
@@ -2466,6 +2627,12 @@ call "ZSYS.SYS". For example:
|
||||
|
||||
`SYSCOPY C:=B:ZSYS.SYS`
|
||||
|
||||
#### Character Device Mapping
|
||||
|
||||
Mapping of character devices to RomWBW HBIOS Character devices
|
||||
operates exactly the same as described in [Digital Research CP/M 2.2].
|
||||
The CP/M 2.2 `STAT` command is used to manipulate the device mappings.
|
||||
|
||||
#### Notes
|
||||
|
||||
* Although most CP/M 2.2 applications will run under Z-System, some
|
||||
@@ -2512,6 +2679,11 @@ a host OS. On the RomWBW NZCOM disk images, the boot OS is ZSDOS 1.1.
|
||||
A `PROFILE.SUB` file is included which automatically launches NZCOM
|
||||
as soon as ZSDOS loads.
|
||||
|
||||
NZCOM is a companion product to Z3PLUS, they are almost identical having
|
||||
been written by the same team. The only difference is the base operating
|
||||
system on which they run, but the architecture, the tools, libraries,
|
||||
files, etc are all primarily the same.
|
||||
|
||||
NZCOM is highly configurable. The RomWBW distribution has been
|
||||
configured in the most basic way possible. You should refer to the
|
||||
documentation and use `MKZCM` as desired to customize your system.
|
||||
@@ -2523,6 +2695,8 @@ Manual.pdf" document in order to use this operating system effectively.
|
||||
#### Documentation
|
||||
|
||||
* [NZCOM Users Manual]($doc_root$/CPM/NZCOM Users Manual.pdf)
|
||||
* [Z-System Users Guide]($doc_root$/CPM/Z-System Users Guide.pdf)
|
||||
* [ZCPR3.3 User Guide]($doc_root$/CPM/ZCPR3.3 User Guide.pdf)
|
||||
|
||||
#### Boot Disk
|
||||
|
||||
@@ -2530,6 +2704,18 @@ Since NZ-COM boots via Z-System, you can make a bootable
|
||||
NZ-COM disk using `ZSYS.SYS` as described in [Z-System] above. You
|
||||
will need to add a `PROFILE.SUB` file to auto-start NZ-COM itself.
|
||||
|
||||
#### Character Device Mapping
|
||||
|
||||
Mapping of character devices to RomWBW HBIOS Character devices
|
||||
operates exactly the same as described in [Digital Research CP/M 2.2].
|
||||
However, it is **not** possible to manipulate the CP/M Logical to
|
||||
Physical device mapping using the `STAT` command. The mapping is
|
||||
static.
|
||||
|
||||
Note: A custom ZCPR IOP module could theoretically be used to manage
|
||||
the character device mappings. RomWBW does not provide this module
|
||||
and writing an IOP module is beyond the scope of this document.
|
||||
|
||||
#### Notes
|
||||
|
||||
* All of the notes for [Z-System] above generally apply to NZCOM.
|
||||
@@ -2537,6 +2723,10 @@ will need to add a `PROFILE.SUB` file to auto-start NZ-COM itself.
|
||||
* There is no `DIR` command, you must use `SDZ` instead. If you don't
|
||||
like this, look into the `ALIAS` facility.
|
||||
|
||||
* For consistency with other ZCPR3 operating systems (ZPM3, Z3PLUS)
|
||||
the SHOW.COM and HELP.COM command files were renamed to ZSHOW.COM
|
||||
and ZHELP.COM
|
||||
|
||||
## Digital Research CP/M 3
|
||||
|
||||
This is the Digital Research follow-up product to their very popular
|
||||
@@ -2596,6 +2786,36 @@ COPY A:CCP.COM F:
|
||||
Note in the example above that `CPM3BNK.SYS` is renamed to `CPM3.SYS`
|
||||
in the copy command.
|
||||
|
||||
#### Character Device Mapping
|
||||
|
||||
Character device mapping under CP/M 3 has 3 layers:
|
||||
|
||||
CP/M Logical Device --> CP/M Physical Device --> RomWBW HBIOS Device
|
||||
|
||||
The primary CP/M Logical Devices are:
|
||||
|
||||
| Device | Description |
|
||||
|--------|--------------------------------------------------------------------------|
|
||||
| `CON:` | Console input or output device |
|
||||
| `AUX:` | Auxiliary Input or Output Device |
|
||||
| `LST:` | List output device, usually the printer |
|
||||
|
||||
There are various aliases for these devices. Please refer to the CP/M 3
|
||||
Users Guide for more information.
|
||||
|
||||
The mapping of CP/M 3 Logical Devices to Physical Devices is performed
|
||||
using the `DEVICE` command.
|
||||
|
||||
CP/M 3 refers to Physical Character Devices using the `COM` device
|
||||
label. These `COM` devices are mapped directly to the RomWBW HBIOS Char
|
||||
devices as described below:
|
||||
|
||||
| `COM0:` --> HBIOS Char 0
|
||||
| `COM1:` --> HBIOS Char 1
|
||||
| `COM2:` --> HBIOS Char 2
|
||||
| . . .
|
||||
| `COMn:` --> HBIOS Char n
|
||||
|
||||
#### Notes
|
||||
|
||||
- The `COPYSYS` command described in the DRI CP/M 3 documentation is
|
||||
@@ -2613,6 +2833,58 @@ in the copy command.
|
||||
has not been performed on the CP/M 3 disk image. Follow the
|
||||
CP/M 3 documentation to complete this process, if desired.
|
||||
|
||||
## Z3PLUS Z-System for CP/M-Plus
|
||||
|
||||
Z3PLUS is a much further refined version of Z-System (ZCPR 3.4). Z3PLUS
|
||||
was sold as an enhancement for existing users of CP/M 3.
|
||||
For this reason, (by design) Z3PLUS does not provide a way to boot
|
||||
directly from disk. Rather, it is loaded after the system boots into
|
||||
CP/M 3. A `PROFILE.SUB` file is included which automatically launches
|
||||
Z3PLUS as soon as CP/M 3 loads.
|
||||
|
||||
Z3PLUS is a companion product to NZ-COM, they are almost identical having
|
||||
been written by the same team. The only difference is the base operating
|
||||
system on which they run, but the architecture, the tools, libraries,
|
||||
files, etc are all primarily the same.
|
||||
|
||||
Z3PLUS is highly configurable. The RomWBW distribution has been
|
||||
configured in the most basic way possible. You should refer to the
|
||||
documentation to customize your system.
|
||||
|
||||
Z3PLUS has substantially more functionality than CP/M 3 or the basic
|
||||
Z-System. It is important to read the "Z3PLUS Users Manual.pdf"
|
||||
document in order to use this operating system effectively.
|
||||
|
||||
#### Documentation
|
||||
|
||||
* [Z3PLUS Users Manual]($doc_root$/CPM/Z3PLUS Users Manual.pdf)
|
||||
* [Z-System Users Guide]($doc_root$/CPM/Z-System Users Guide.pdf)
|
||||
* [ZCPR3.3 User Guide]($doc_root$/CPM/ZCPR3.3 User Guide.pdf)
|
||||
|
||||
#### Boot Disk
|
||||
|
||||
Since Z3PLUS boots via CP/M 3, you first must make the disk CP/M 3
|
||||
bootable. This is not a simple process, as well as placing `CPMLDR.SYS` on
|
||||
the system track of the disk there are several files that are required
|
||||
on the disk itself.This is described in [Digital Research CP/M 3]
|
||||
section above.
|
||||
|
||||
You will need to add a `PROFILE.SUB` file to auto-start Z3PLUS itself.
|
||||
|
||||
#### Character Device Mapping
|
||||
|
||||
Mapping of character devices to RomWBW HBIOS Character devices
|
||||
operates exactly the same as described in [Digital Research CP/M 3].
|
||||
The CP/M 3 `DEVICE` command is used to manipulate the device mappings.
|
||||
|
||||
#### Notes
|
||||
|
||||
* All of the notes for [Digital Research CP/M 3] above generally
|
||||
apply to Z3PLUS.
|
||||
|
||||
* Some applications in the Z3PLUS distribution have been upgraded
|
||||
with newer versions. This is done with in
|
||||
|
||||
## ZPM3
|
||||
|
||||
Simeon Cran's ZPM3 is an interesting combination of the features of both
|
||||
@@ -2682,6 +2954,12 @@ COPY A:ZINSTAL.ZPM F:
|
||||
COPY A:STARTZPM.COM F:
|
||||
```
|
||||
|
||||
#### Character Device Mapping
|
||||
|
||||
Mapping of character devices to RomWBW HBIOS Character devices
|
||||
operates exactly the same as described in [Digital Research CP/M 3].
|
||||
The CP/M 3 `DEVICE` command is used to manipulate the device mappings.
|
||||
|
||||
#### Notes
|
||||
|
||||
- The ZPM3 operating system is contained in the file called CPM3.SYS
|
||||
@@ -2705,7 +2983,6 @@ regarding the RomWBW adaptation and customizations.
|
||||
|
||||
#### Boot Disk
|
||||
|
||||
|
||||
To create or update a bootable QP/M Z-System disk, a special process
|
||||
is required. QP/M is not provided in source format. You are expected
|
||||
to install QP/M over an existing CP/M installation using the
|
||||
@@ -2736,6 +3013,14 @@ pre-built RomWBW QP/M disk image includes a couple of specific
|
||||
non-default settings to optimize use with RomWBW. Please review the
|
||||
notes in the ReadMe.txt file in Source/Images/d_qpm.
|
||||
|
||||
#### Character Device Mapping
|
||||
|
||||
Mapping of character devices to RomWBW HBIOS Character devices operates
|
||||
exactly the same as described in [Digital Research CP/M 2.2]. The
|
||||
mappings can be viewed or modified using the QP/M `QSTAT` command which
|
||||
is analogous to the CP/M 2.2 `STAT` command. Do **not** use the CP/M
|
||||
2.2 `STAT` command under QP/M.
|
||||
|
||||
#### Notes
|
||||
|
||||
- QPM is not available as source. This implementation was based
|
||||
@@ -2799,6 +3084,13 @@ scratch under RomWBW. This has already been done as part of the
|
||||
porting process. You must use the provided p-System hard disk image
|
||||
file which is bootable.
|
||||
|
||||
#### Character Device Mapping
|
||||
|
||||
RomWBW Character Devices are automatically assigned to p-System devices
|
||||
at startup. The current HBIOS Console device is assigned to CONSOLE:.
|
||||
The next available HBIOS Char device is assigned to REMIN:/REMOUT:. The
|
||||
next available HBIOS Char devices is assigned to PRINTER:
|
||||
|
||||
#### Notes
|
||||
|
||||
* There is no floppy support at this time.
|
||||
@@ -4024,6 +4316,11 @@ ALIAS facility.
|
||||
p-System has its own startup command processing mechanism that is
|
||||
covered in the p-System documentation.
|
||||
|
||||
## NVRAM Configuration
|
||||
|
||||
See section [Setting NVRAM Options] for information about how to
|
||||
apply NVRAM configuration.
|
||||
|
||||
## ROM Customization
|
||||
|
||||
The pre-built ROM images are configured for the basic capabilities of
|
||||
@@ -4056,6 +4353,14 @@ Note that the ROM customization process does not apply to UNA. All
|
||||
UNA customization is performed within the ROM setup script that is
|
||||
built into the ROM.
|
||||
|
||||
## ROM User Application
|
||||
|
||||
The User App is provided as a way to access a custom written
|
||||
ROM application. In the pre-built ROMs, selecting User App will just
|
||||
return to the Boot Loader menu. If you are interested in creating a
|
||||
custom application to run instead, review the "usrrom.asm" file in the
|
||||
Source/HBIOS folder of the distribution.
|
||||
|
||||
# UNA Hardware BIOS
|
||||
|
||||
John Coffman has produced a new generation of hardware BIOS called
|
||||
@@ -4464,7 +4769,9 @@ please let me know if I missed you!
|
||||
User Guide and Applications documents.
|
||||
|
||||
* Mark Pruden has also contributed a great deal of content to the
|
||||
User Guide as well as the COPYSL utility.
|
||||
Disk Catalog, User Guide as well as contributing the disk image
|
||||
for the Z3PLUS operating system, the COPYSL utility, and also
|
||||
implemented feature for RomWBW configuration by NVRAM.
|
||||
|
||||
* Jacques Pelletier has contributed the DS1501 RTC driver code.
|
||||
|
||||
|
||||
@@ -89,6 +89,10 @@ call :asm usrrom || exit /b
|
||||
call :asm updater || exit /b
|
||||
call :asm imgpad2 || exit /b
|
||||
|
||||
:: Sysconf builds as both BIN and COM files
|
||||
tasm -t%CPUType% -g3 -fFF -dROMWBW sysconf.asm sysconf.bin sysconf_bin.lst || exit /b
|
||||
tasm -t%CPUType% -g3 -fFF -dCPM sysconf.asm sysconf.com sysconf_com.lst || exit /b
|
||||
|
||||
::
|
||||
:: Create additional ROM bank images by assembling components into
|
||||
:: 32K chunks which can be concatenated later. Note that
|
||||
@@ -97,7 +101,7 @@ call :asm imgpad2 || exit /b
|
||||
::
|
||||
|
||||
copy /b romldr.bin + dbgmon.bin + ..\zsdos\zsys_wbw.bin + ..\cpm22\cpm_wbw.bin osimg.bin || exit /b
|
||||
copy /b ..\Forth\camel80.bin + nascom.bin + ..\tastybasic\src\tastybasic.bin + game.bin + eastaegg.bin + netboot.mod + updater.bin + usrrom.bin osimg1.bin || exit /b
|
||||
copy /b ..\Forth\camel80.bin + nascom.bin + ..\tastybasic\src\tastybasic.bin + game.bin + eastaegg.bin + netboot.mod + updater.bin + sysconf.bin + usrrom.bin osimg1.bin || exit /b
|
||||
|
||||
if %Platform%==S100 (
|
||||
zxcc slr180 -s100mon/fh
|
||||
@@ -153,6 +157,8 @@ if exist %ROMName%.rom copy %ROMName%.rom ..\..\Binary || exit /b
|
||||
if exist %ROMName%.upd copy %ROMName%.upd ..\..\Binary || exit /b
|
||||
if exist %ROMName%.com copy %ROMName%.com ..\..\Binary || exit /b
|
||||
|
||||
if exist sysconf.com copy sysconf.com ..\..\Binary\Apps\ || exit /b
|
||||
|
||||
goto :eof
|
||||
|
||||
::
|
||||
|
||||
@@ -42,7 +42,8 @@
|
||||
; ".SET" TO OVERRIDE SETTINGS. THE ASSEMBLER WILL ERROR IF YOU ATTEMPT
|
||||
; TO USE ".EQU" BECAUSE IT WON'T LET YOU REDEFINE A SETTING WITH ".EQU".
|
||||
;
|
||||
#DEFINE BOOT_DEFAULT "H" ; DEFAULT BOOT LOADER CMD ON <CR> OR AUTO BOOT
|
||||
#DEFINE BOOT_DEFAULT "H" ; DEFAULT BOOT LOADER CMD FOR EMPTY CMD LINE
|
||||
#DEFINE AUTO_CMD "" ; AUTO CMD WHEN BOOT_TIMEOUT IS ENABLED
|
||||
;
|
||||
#INCLUDE "cfg_DUO.asm"
|
||||
;
|
||||
|
||||
@@ -42,7 +42,8 @@
|
||||
; ".SET" TO OVERRIDE SETTINGS. THE ASSEMBLER WILL ERROR IF YOU ATTEMPT
|
||||
; TO USE ".EQU" BECAUSE IT WON'T LET YOU REDEFINE A SETTING WITH ".EQU".
|
||||
;
|
||||
#DEFINE BOOT_DEFAULT "H" ; DEFAULT BOOT LOADER CMD ON <CR> OR AUTO BOOT
|
||||
#DEFINE BOOT_DEFAULT "H" ; DEFAULT BOOT LOADER CMD FOR EMPTY CMD LINE
|
||||
#DEFINE AUTO_CMD "" ; AUTO CMD WHEN BOOT_TIMEOUT IS ENABLED
|
||||
;
|
||||
#INCLUDE "cfg_DYNO.asm"
|
||||
;
|
||||
|
||||
@@ -44,7 +44,8 @@
|
||||
;
|
||||
#DEFINE PLATFORM_NAME "Z180 MiniITX"
|
||||
;
|
||||
#DEFINE BOOT_DEFAULT "H" ; DEFAULT BOOT LOADER CMD ON <CR> OR AUTO BOOT
|
||||
#DEFINE BOOT_DEFAULT "H" ; DEFAULT BOOT LOADER CMD FOR EMPTY CMD LINE
|
||||
#DEFINE AUTO_CMD "" ; AUTO CMD WHEN BOOT_TIMEOUT IS ENABLED
|
||||
;
|
||||
#INCLUDE "cfg_EPITX.asm"
|
||||
;
|
||||
|
||||
@@ -42,7 +42,8 @@
|
||||
; ".SET" TO OVERRIDE SETTINGS. THE ASSEMBLER WILL ERROR IF YOU ATTEMPT
|
||||
; TO USE ".EQU" BECAUSE IT WON'T LET YOU REDEFINE A SETTING WITH ".EQU".
|
||||
;
|
||||
#DEFINE BOOT_DEFAULT "H" ; DEFAULT BOOT LOADER CMD ON <CR> OR AUTO BOOT
|
||||
#DEFINE BOOT_DEFAULT "H" ; DEFAULT BOOT LOADER CMD FOR EMPTY CMD LINE
|
||||
#DEFINE AUTO_CMD "" ; AUTO CMD WHEN BOOT_TIMEOUT IS ENABLED
|
||||
;
|
||||
#INCLUDE "cfg_FZ80.asm"
|
||||
;
|
||||
|
||||
@@ -44,7 +44,8 @@
|
||||
;
|
||||
#DEFINE PLATFORM_NAME "GM STD BUS Z180", " [", CONFIG, "]"
|
||||
;
|
||||
#DEFINE BOOT_DEFAULT "H" ; DEFAULT BOOT LOADER CMD ON <CR> OR AUTO BOOT
|
||||
#DEFINE BOOT_DEFAULT "H" ; DEFAULT BOOT LOADER CMD FOR EMPTY CMD LINE
|
||||
#DEFINE AUTO_CMD "" ; AUTO CMD WHEN BOOT_TIMEOUT IS ENABLED
|
||||
;
|
||||
#INCLUDE "cfg_GMZ180.asm"
|
||||
;
|
||||
|
||||
@@ -42,6 +42,7 @@
|
||||
; ".SET" TO OVERRIDE SETTINGS. THE ASSEMBLER WILL ERROR IF YOU ATTEMPT
|
||||
; TO USE ".EQU" BECAUSE IT WON'T LET YOU REDEFINE A SETTING WITH ".EQU".
|
||||
;
|
||||
#DEFINE BOOT_DEFAULT "H" ; DEFAULT BOOT LOADER CMD ON <CR> OR AUTO BOOT
|
||||
#DEFINE BOOT_DEFAULT "H" ; DEFAULT BOOT LOADER CMD FOR EMPTY CMD LINE
|
||||
#DEFINE AUTO_CMD "" ; AUTO CMD WHEN BOOT_TIMEOUT IS ENABLED
|
||||
;
|
||||
#INCLUDE "cfg_HEATH.asm"
|
||||
|
||||
@@ -42,7 +42,8 @@
|
||||
; ".SET" TO OVERRIDE SETTINGS. THE ASSEMBLER WILL ERROR IF YOU ATTEMPT
|
||||
; TO USE ".EQU" BECAUSE IT WON'T LET YOU REDEFINE A SETTING WITH ".EQU".
|
||||
;
|
||||
#DEFINE BOOT_DEFAULT "H" ; DEFAULT BOOT LOADER CMD ON <CR> OR AUTO BOOT
|
||||
#DEFINE BOOT_DEFAULT "H" ; DEFAULT BOOT LOADER CMD FOR EMPTY CMD LINE
|
||||
#DEFINE AUTO_CMD "" ; AUTO CMD WHEN BOOT_TIMEOUT IS ENABLED
|
||||
;
|
||||
#INCLUDE "cfg_MBC.asm"
|
||||
;
|
||||
|
||||
@@ -42,7 +42,8 @@
|
||||
; ".SET" TO OVERRIDE SETTINGS. THE ASSEMBLER WILL ERROR IF YOU ATTEMPT
|
||||
; TO USE ".EQU" BECAUSE IT WON'T LET YOU REDEFINE A SETTING WITH ".EQU".
|
||||
;
|
||||
#DEFINE BOOT_DEFAULT "H" ; DEFAULT BOOT LOADER CMD ON <CR> OR AUTO BOOT
|
||||
#DEFINE BOOT_DEFAULT "H" ; DEFAULT BOOT LOADER CMD FOR EMPTY CMD LINE
|
||||
#DEFINE AUTO_CMD "" ; AUTO CMD WHEN BOOT_TIMEOUT IS ENABLED
|
||||
;
|
||||
#INCLUDE "cfg_MK4.asm"
|
||||
;
|
||||
|
||||
@@ -42,7 +42,8 @@
|
||||
; ".SET" TO OVERRIDE SETTINGS. THE ASSEMBLER WILL ERROR IF YOU ATTEMPT
|
||||
; TO USE ".EQU" BECAUSE IT WON'T LET YOU REDEFINE A SETTING WITH ".EQU".
|
||||
;
|
||||
#DEFINE BOOT_DEFAULT "H" ; DEFAULT BOOT LOADER CMD ON <CR> OR AUTO BOOT
|
||||
#DEFINE BOOT_DEFAULT "H" ; DEFAULT BOOT LOADER CMD FOR EMPTY CMD LINE
|
||||
#DEFINE AUTO_CMD "" ; AUTO CMD WHEN BOOT_TIMEOUT IS ENABLED
|
||||
;
|
||||
#INCLUDE "cfg_MON.asm"
|
||||
;
|
||||
|
||||
@@ -42,7 +42,8 @@
|
||||
; ".SET" TO OVERRIDE SETTINGS. THE ASSEMBLER WILL ERROR IF YOU ATTEMPT
|
||||
; TO USE ".EQU" BECAUSE IT WON'T LET YOU REDEFINE A SETTING WITH ".EQU".
|
||||
;
|
||||
#DEFINE BOOT_DEFAULT "H" ; DEFAULT BOOT LOADER CMD ON <CR> OR AUTO BOOT
|
||||
#DEFINE BOOT_DEFAULT "H" ; DEFAULT BOOT LOADER CMD FOR EMPTY CMD LINE
|
||||
#DEFINE AUTO_CMD "" ; AUTO CMD WHEN BOOT_TIMEOUT IS ENABLED
|
||||
;
|
||||
#INCLUDE "cfg_N8.asm"
|
||||
;
|
||||
|
||||
@@ -42,7 +42,8 @@
|
||||
; ".SET" TO OVERRIDE SETTINGS. THE ASSEMBLER WILL ERROR IF YOU ATTEMPT
|
||||
; TO USE ".EQU" BECAUSE IT WON'T LET YOU REDEFINE A SETTING WITH ".EQU".
|
||||
;
|
||||
#DEFINE BOOT_DEFAULT "H" ; DEFAULT BOOT LOADER CMD ON <CR> OR AUTO BOOT
|
||||
#DEFINE BOOT_DEFAULT "H" ; DEFAULT BOOT LOADER CMD FOR EMPTY CMD LINE
|
||||
#DEFINE AUTO_CMD "" ; AUTO CMD WHEN BOOT_TIMEOUT IS ENABLED
|
||||
;
|
||||
#INCLUDE "cfg_NABU.asm"
|
||||
;
|
||||
|
||||
@@ -42,7 +42,8 @@
|
||||
; ".SET" TO OVERRIDE SETTINGS. THE ASSEMBLER WILL ERROR IF YOU ATTEMPT
|
||||
; TO USE ".EQU" BECAUSE IT WON'T LET YOU REDEFINE A SETTING WITH ".EQU".
|
||||
;
|
||||
#DEFINE BOOT_DEFAULT "H" ; DEFAULT BOOT LOADER CMD ON <CR> OR AUTO BOOT
|
||||
#DEFINE BOOT_DEFAULT "H" ; DEFAULT BOOT LOADER CMD FOR EMPTY CMD LINE
|
||||
#DEFINE AUTO_CMD "" ; AUTO CMD WHEN BOOT_TIMEOUT IS ENABLED
|
||||
;
|
||||
#INCLUDE "cfg_RCEZ80.asm"
|
||||
;
|
||||
|
||||
@@ -42,7 +42,8 @@
|
||||
; ".SET" TO OVERRIDE SETTINGS. THE ASSEMBLER WILL ERROR IF YOU ATTEMPT
|
||||
; TO USE ".EQU" BECAUSE IT WON'T LET YOU REDEFINE A SETTING WITH ".EQU".
|
||||
;
|
||||
#DEFINE BOOT_DEFAULT "H" ; DEFAULT BOOT LOADER CMD ON <CR> OR AUTO BOOT
|
||||
#DEFINE BOOT_DEFAULT "H" ; DEFAULT BOOT LOADER CMD FOR EMPTY CMD LINE
|
||||
#DEFINE AUTO_CMD "" ; AUTO CMD WHEN BOOT_TIMEOUT IS ENABLED
|
||||
;
|
||||
#INCLUDE "cfg_RCZ180.asm"
|
||||
;
|
||||
|
||||
@@ -42,7 +42,8 @@
|
||||
; ".SET" TO OVERRIDE SETTINGS. THE ASSEMBLER WILL ERROR IF YOU ATTEMPT
|
||||
; TO USE ".EQU" BECAUSE IT WON'T LET YOU REDEFINE A SETTING WITH ".EQU".
|
||||
;
|
||||
#DEFINE BOOT_DEFAULT "H" ; DEFAULT BOOT LOADER CMD ON <CR> OR AUTO BOOT
|
||||
#DEFINE BOOT_DEFAULT "H" ; DEFAULT BOOT LOADER CMD FOR EMPTY CMD LINE
|
||||
#DEFINE AUTO_CMD "" ; AUTO CMD WHEN BOOT_TIMEOUT IS ENABLED
|
||||
;
|
||||
#INCLUDE "cfg_RCZ180.asm"
|
||||
;
|
||||
|
||||
@@ -44,7 +44,8 @@
|
||||
;
|
||||
#DEFINE PLATFORM_NAME "Z1RCC", " [", CONFIG, "]"
|
||||
;
|
||||
#DEFINE BOOT_DEFAULT "H" ; DEFAULT BOOT LOADER CMD ON <CR> OR AUTO BOOT
|
||||
#DEFINE BOOT_DEFAULT "H" ; DEFAULT BOOT LOADER CMD FOR EMPTY CMD LINE
|
||||
#DEFINE AUTO_CMD "" ; AUTO CMD WHEN BOOT_TIMEOUT IS ENABLED
|
||||
;
|
||||
#INCLUDE "cfg_RCZ180.asm"
|
||||
;
|
||||
|
||||
@@ -42,7 +42,8 @@
|
||||
; ".SET" TO OVERRIDE SETTINGS. THE ASSEMBLER WILL ERROR IF YOU ATTEMPT
|
||||
; TO USE ".EQU" BECAUSE IT WON'T LET YOU REDEFINE A SETTING WITH ".EQU".
|
||||
;
|
||||
#DEFINE BOOT_DEFAULT "H" ; DEFAULT BOOT LOADER CMD ON <CR> OR AUTO BOOT
|
||||
#DEFINE BOOT_DEFAULT "H" ; DEFAULT BOOT LOADER CMD FOR EMPTY CMD LINE
|
||||
#DEFINE AUTO_CMD "" ; AUTO CMD WHEN BOOT_TIMEOUT IS ENABLED
|
||||
;
|
||||
#INCLUDE "cfg_RCZ280.asm"
|
||||
;
|
||||
|
||||
@@ -42,7 +42,8 @@
|
||||
; ".SET" TO OVERRIDE SETTINGS. THE ASSEMBLER WILL ERROR IF YOU ATTEMPT
|
||||
; TO USE ".EQU" BECAUSE IT WON'T LET YOU REDEFINE A SETTING WITH ".EQU".
|
||||
;
|
||||
#DEFINE BOOT_DEFAULT "H" ; DEFAULT BOOT LOADER CMD ON <CR> OR AUTO BOOT
|
||||
#DEFINE BOOT_DEFAULT "H" ; DEFAULT BOOT LOADER CMD FOR EMPTY CMD LINE
|
||||
#DEFINE AUTO_CMD "" ; AUTO CMD WHEN BOOT_TIMEOUT IS ENABLED
|
||||
;
|
||||
#INCLUDE "cfg_RCZ280.asm"
|
||||
;
|
||||
|
||||
@@ -44,7 +44,8 @@
|
||||
;
|
||||
#DEFINE PLATFORM_NAME "ZZ80MB", " [", CONFIG, "]"
|
||||
;
|
||||
#DEFINE BOOT_DEFAULT "H" ; DEFAULT BOOT LOADER CMD ON <CR> OR AUTO BOOT
|
||||
#DEFINE BOOT_DEFAULT "H" ; DEFAULT BOOT LOADER CMD FOR EMPTY CMD LINE
|
||||
#DEFINE AUTO_CMD "" ; AUTO CMD WHEN BOOT_TIMEOUT IS ENABLED
|
||||
;
|
||||
#INCLUDE "cfg_RCZ280.asm"
|
||||
;
|
||||
|
||||
@@ -44,7 +44,8 @@
|
||||
;
|
||||
#DEFINE PLATFORM_NAME "ZZRCC", " [", CONFIG, "]"
|
||||
;
|
||||
#DEFINE BOOT_DEFAULT "H" ; DEFAULT BOOT LOADER CMD ON <CR> OR AUTO BOOT
|
||||
#DEFINE BOOT_DEFAULT "H" ; DEFAULT BOOT LOADER CMD FOR EMPTY CMD LINE
|
||||
#DEFINE AUTO_CMD "" ; AUTO CMD WHEN BOOT_TIMEOUT IS ENABLED
|
||||
;
|
||||
#INCLUDE "cfg_RCZ280.asm"
|
||||
;
|
||||
|
||||
@@ -44,7 +44,8 @@
|
||||
;
|
||||
#DEFINE PLATFORM_NAME "ZZRCC", " [", CONFIG, "]"
|
||||
;
|
||||
#DEFINE BOOT_DEFAULT "H" ; DEFAULT BOOT LOADER CMD ON <CR> OR AUTO BOOT
|
||||
#DEFINE BOOT_DEFAULT "H" ; DEFAULT BOOT LOADER CMD FOR EMPTY CMD LINE
|
||||
#DEFINE AUTO_CMD "" ; AUTO CMD WHEN BOOT_TIMEOUT IS ENABLED
|
||||
;
|
||||
#INCLUDE "cfg_RCZ280.asm"
|
||||
;
|
||||
|
||||
@@ -44,7 +44,8 @@
|
||||
;
|
||||
#DEFINE PLATFORM_NAME "Easy-Z80", " [", CONFIG, "]"
|
||||
;
|
||||
#DEFINE BOOT_DEFAULT "H" ; DEFAULT BOOT LOADER CMD ON <CR> OR AUTO BOOT
|
||||
#DEFINE BOOT_DEFAULT "H" ; DEFAULT BOOT LOADER CMD FOR EMPTY CMD LINE
|
||||
#DEFINE AUTO_CMD "" ; AUTO CMD WHEN BOOT_TIMEOUT IS ENABLED
|
||||
;
|
||||
#INCLUDE "cfg_RCZ80.asm"
|
||||
;
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user