mirror of
https://github.com/wwarthen/RomWBW.git
synced 2026-02-07 23:13:13 -06:00
Compare commits
6 Commits
v3.4.0-dev
...
v3.4.0-dev
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
f230fb22da | ||
|
|
2225847212 | ||
|
|
edbe7d0781 | ||
|
|
1d3438fb29 | ||
|
|
a5de77438b | ||
|
|
b841705023 |
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
54
ReadMe.md
54
ReadMe.md
@@ -3,7 +3,7 @@
|
||||
**RomWBW ReadMe** \
|
||||
Version 3.4 \
|
||||
Wayne Warthen ([wwarthen@gmail.com](mailto:wwarthen@gmail.com)) \
|
||||
29 Nov 2023
|
||||
30 Nov 2023
|
||||
|
||||
# Overview
|
||||
|
||||
@@ -14,15 +14,24 @@ platforms are supported including those produced by these developer
|
||||
communities:
|
||||
|
||||
- [RetroBrew Computers](https://www.retrobrewcomputers.org)
|
||||
- [RC2014](https://rc2014.co.uk),
|
||||
(<https://www.retrobrewcomputers.org>)
|
||||
- [RC2014](https://rc2014.co.uk) (<https://rc2014.co.uk>),
|
||||
[RC2014-Z80](https://groups.google.com/g/rc2014-z80)
|
||||
- [retro-comp](https://groups.google.com/forum/#!forum/retro-comp)
|
||||
(<https://groups.google.com/g/rc2014-z80>)
|
||||
- [Retro Computing](https://groups.google.com/g/retro-comp)
|
||||
(<https://groups.google.com/g/retro-comp>)
|
||||
- [Small Computer Central](https://smallcomputercentral.com/)
|
||||
(<https://smallcomputercentral.com/>)
|
||||
|
||||
A complete list of the currently supported platforms is found in the
|
||||
\[Installation\] section.
|
||||
|
||||
General features include:
|
||||
|
||||
- Z80 Family CPUs including Z80, Z180, and Z280
|
||||
- Banked memory services for several banking designs
|
||||
- Disk drivers for RAM, ROM, Floppy, IDE, CF, and SD
|
||||
- Disk drivers for RAM, ROM, Floppy, IDE ATA/ATAPI, CF, SD, USB, Zip,
|
||||
Iomega
|
||||
- Serial drivers including UART (16550-like), ASCI, ACIA, SIO
|
||||
- Video drivers including TMS9918, SY6545, MOS8563, HD6445
|
||||
- Keyboard (PS/2) drivers via VT8242 or PPI interfaces
|
||||
@@ -42,11 +51,11 @@ ROM firmware itself:
|
||||
|
||||
A dynamic disk drive letter assignment mechanism allows mapping
|
||||
operating system drive letters to any available disk media.
|
||||
Additionally, mass storage devices (IDE Disk, CF Card, SD Card) support
|
||||
the use of multiple slices (up to 256 per device). Each slice contains a
|
||||
complete CP/M filesystem and can be mapped independently to any drive
|
||||
letter. This overcomes the inherent size limitations in legacy OSes and
|
||||
allows up to 2GB of accessible storage on a single device.
|
||||
Additionally, mass storage devices (IDE Disk, CF Card, SD Card, etc.)
|
||||
support the use of multiple slices (up to 256 per device). Each slice
|
||||
contains a complete CP/M filesystem and can be mapped independently to
|
||||
any drive letter. This overcomes the inherent size limitations in legacy
|
||||
OSes and allows up to 2GB of accessible storage on a single device.
|
||||
|
||||
The pre-built ROM firmware images are generally suitable for most users.
|
||||
However, it is also very easy to modify and build custom ROM images that
|
||||
@@ -66,7 +75,7 @@ changing media.
|
||||
By design, RomWBW isolates all of the hardware specific functions in the
|
||||
ROM chip itself. The ROM provides a hardware abstraction layer such that
|
||||
all of the operating systems and applications on a disk will run on any
|
||||
RomWBW-based system. To put it simply, you can take a disk (or CF/SD
|
||||
RomWBW-based system. To put it simply, you can take a disk (or CF/SD/USB
|
||||
Card) and move it between systems transparently.
|
||||
|
||||
A tool is provided that allows you to access a FAT-12/16/32 filesystem.
|
||||
@@ -76,18 +85,19 @@ OSes such as Windows, MacOS, and Linux very easy.
|
||||
|
||||
# Acquiring RomWBW
|
||||
|
||||
The [RomWBW Repository](https://github.com/wwarthen/RomWBW) on GitHub is
|
||||
the official distribution location for all project source and
|
||||
documentation. The fully-built distribution releases are available on
|
||||
the [RomWBW Releases Page](https://github.com/wwarthen/RomWBW/releases)
|
||||
of the repository. On this page, you will normally see a Development
|
||||
Snapshot as well as recent stable releases. Unless you have a specific
|
||||
reason, I suggest you stick to the most recent stable release. Expand
|
||||
the “Assets” drop-down for the release you want to download, then select
|
||||
the asset named RomWBW-vX.X.X-Package.zip. The Package asset includes
|
||||
all pre-built ROM and Disk images as well as full source code. The other
|
||||
assets contain only source code and do not have the pre-built ROM or
|
||||
disk images.
|
||||
The [RomWBW Repository](https://github.com/wwarthen/RomWBW)
|
||||
(<https://github.com/wwarthen/RomWBW>) on GitHub is the official
|
||||
distribution location for all project source and documentation. The
|
||||
fully-built distribution releases are available on the [RomWBW Releases
|
||||
Page](https://github.com/wwarthen/RomWBW/releases)
|
||||
(<https://github.com/wwarthen/RomWBW/releases>) of the repository. On
|
||||
this page, you will normally see a Development Snapshot as well as
|
||||
recent stable releases. Unless you have a specific reason, I suggest you
|
||||
stick to the most recent stable release. Expand the “Assets” drop-down
|
||||
for the release you want to download, then select the asset named
|
||||
RomWBW-vX.X.X-Package.zip. The Package asset includes all pre-built ROM
|
||||
and Disk images as well as full source code. The other assets contain
|
||||
only source code and do not have the pre-built ROM or disk images.
|
||||
|
||||
All source code and distributions are maintained on GitHub. Code
|
||||
contributions are very welcome.
|
||||
|
||||
52
ReadMe.txt
52
ReadMe.txt
@@ -1,6 +1,6 @@
|
||||
RomWBW ReadMe
|
||||
Wayne Warthen (wwarthen@gmail.com)
|
||||
29 Nov 2023
|
||||
30 Nov 2023
|
||||
|
||||
|
||||
|
||||
@@ -13,15 +13,21 @@ Z80/180/280 retro-computing hardware systems. A wide variety of
|
||||
platforms are supported including those produced by these developer
|
||||
communities:
|
||||
|
||||
- RetroBrew Computers
|
||||
- RC2014, RC2014-Z80
|
||||
- retro-comp
|
||||
- Small Computer Central
|
||||
- RetroBrew Computers (https://www.retrobrewcomputers.org)
|
||||
- RC2014 (https://rc2014.co.uk),
|
||||
RC2014-Z80 (https://groups.google.com/g/rc2014-z80)
|
||||
- Retro Computing (https://groups.google.com/g/retro-comp)
|
||||
- Small Computer Central (https://smallcomputercentral.com/)
|
||||
|
||||
A complete list of the currently supported platforms is found in the
|
||||
[Installation] section.
|
||||
|
||||
General features include:
|
||||
|
||||
- Z80 Family CPUs including Z80, Z180, and Z280
|
||||
- Banked memory services for several banking designs
|
||||
- Disk drivers for RAM, ROM, Floppy, IDE, CF, and SD
|
||||
- Disk drivers for RAM, ROM, Floppy, IDE ATA/ATAPI, CF, SD, USB, Zip,
|
||||
Iomega
|
||||
- Serial drivers including UART (16550-like), ASCI, ACIA, SIO
|
||||
- Video drivers including TMS9918, SY6545, MOS8563, HD6445
|
||||
- Keyboard (PS/2) drivers via VT8242 or PPI interfaces
|
||||
@@ -41,11 +47,11 @@ ROM firmware itself:
|
||||
|
||||
A dynamic disk drive letter assignment mechanism allows mapping
|
||||
operating system drive letters to any available disk media.
|
||||
Additionally, mass storage devices (IDE Disk, CF Card, SD Card) support
|
||||
the use of multiple slices (up to 256 per device). Each slice contains a
|
||||
complete CP/M filesystem and can be mapped independently to any drive
|
||||
letter. This overcomes the inherent size limitations in legacy OSes and
|
||||
allows up to 2GB of accessible storage on a single device.
|
||||
Additionally, mass storage devices (IDE Disk, CF Card, SD Card, etc.)
|
||||
support the use of multiple slices (up to 256 per device). Each slice
|
||||
contains a complete CP/M filesystem and can be mapped independently to
|
||||
any drive letter. This overcomes the inherent size limitations in legacy
|
||||
OSes and allows up to 2GB of accessible storage on a single device.
|
||||
|
||||
The pre-built ROM firmware images are generally suitable for most users.
|
||||
However, it is also very easy to modify and build custom ROM images that
|
||||
@@ -65,7 +71,7 @@ changing media.
|
||||
By design, RomWBW isolates all of the hardware specific functions in the
|
||||
ROM chip itself. The ROM provides a hardware abstraction layer such that
|
||||
all of the operating systems and applications on a disk will run on any
|
||||
RomWBW-based system. To put it simply, you can take a disk (or CF/SD
|
||||
RomWBW-based system. To put it simply, you can take a disk (or CF/SD/USB
|
||||
Card) and move it between systems transparently.
|
||||
|
||||
A tool is provided that allows you to access a FAT-12/16/32 filesystem.
|
||||
@@ -78,16 +84,18 @@ OSes such as Windows, MacOS, and Linux very easy.
|
||||
ACQUIRING ROMWBW
|
||||
|
||||
|
||||
The RomWBW Repository on GitHub is the official distribution location
|
||||
for all project source and documentation. The fully-built distribution
|
||||
releases are available on the RomWBW Releases Page of the repository. On
|
||||
this page, you will normally see a Development Snapshot as well as
|
||||
recent stable releases. Unless you have a specific reason, I suggest you
|
||||
stick to the most recent stable release. Expand the “Assets” drop-down
|
||||
for the release you want to download, then select the asset named
|
||||
RomWBW-vX.X.X-Package.zip. The Package asset includes all pre-built ROM
|
||||
and Disk images as well as full source code. The other assets contain
|
||||
only source code and do not have the pre-built ROM or disk images.
|
||||
The RomWBW Repository (https://github.com/wwarthen/RomWBW) on GitHub is
|
||||
the official distribution location for all project source and
|
||||
documentation. The fully-built distribution releases are available on
|
||||
the RomWBW Releases Page (https://github.com/wwarthen/RomWBW/releases)
|
||||
of the repository. On this page, you will normally see a Development
|
||||
Snapshot as well as recent stable releases. Unless you have a specific
|
||||
reason, I suggest you stick to the most recent stable release. Expand
|
||||
the “Assets” drop-down for the release you want to download, then select
|
||||
the asset named RomWBW-vX.X.X-Package.zip. The Package asset includes
|
||||
all pre-built ROM and Disk images as well as full source code. The other
|
||||
assets contain only source code and do not have the pre-built ROM or
|
||||
disk images.
|
||||
|
||||
All source code and distributions are maintained on GitHub. Code
|
||||
contributions are very welcome.
|
||||
|
||||
@@ -1,13 +1,10 @@
|
||||
@echo off
|
||||
setlocal
|
||||
|
||||
set TOOLS=../../Tools
|
||||
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
|
||||
|
||||
@@ -3,8 +3,8 @@ setlocal
|
||||
|
||||
pushd ZCPR33 && call Build || exit /b & popd
|
||||
|
||||
set PATH=%PATH%;..\..\Tools\zxcc;..\..\Tools\cpmtools;
|
||||
|
||||
set TOOLS=..\..\Tools
|
||||
set PATH=%PATH%;%TOOLS%\zxcc;%TOOLS%\cpmtools;
|
||||
set CPMDIR80=%TOOLS%/cpm/
|
||||
|
||||
call :makebp 33
|
||||
@@ -48,7 +48,8 @@ if exist bp%VER%.prn del bp%VER%.prn || exit /b
|
||||
ren bpbio-ww.prn bp%VER%.prn || exit /b
|
||||
if exist bp%VER%.err del bp%VER%.err || exit /b
|
||||
ren bpbio-ww.err bp%VER%.err || exit /b
|
||||
copy bpbio-ww.rel bp%VER%.rel || exit /b
|
||||
if exist bp%VER%.rel del bp%VER%.rel || exit /b
|
||||
ren bpbio-ww.rel bp%VER%.rel || exit /b
|
||||
|
||||
rem pause
|
||||
|
||||
|
||||
@@ -1,44 +1,37 @@
|
||||
VERSIONS = \
|
||||
33t 33tbnk \
|
||||
33n 33nbnk \
|
||||
34t 34tbnk \
|
||||
34n 34nbnk \
|
||||
41tbnk 41nbnk
|
||||
33 33bnk \
|
||||
33 33bnk \
|
||||
34 34bnk \
|
||||
34 34bnk \
|
||||
41bnk
|
||||
|
||||
HD0IMG = ../../Binary/hd_bp.img
|
||||
IMGFILES = $(foreach ver,$(VERSIONS),bp$(ver).img)
|
||||
DISTFILES = *.zex *.rel myterm.z3t
|
||||
|
||||
OTHERS = zcpr33n.rel zcpr33t.rel \
|
||||
bpbio-ww.rel bpsys.dat bpsys.bak bpbio-ww.err def-ww.lib *.img
|
||||
OTHERS = zcpr33.rel bp*.prn bp*.rel \
|
||||
bpbio-ww.rel bpsys.dat bpsys.bak bpbio-ww.err def-ww.lib bp*.img
|
||||
|
||||
TOOLS = ../../Tools
|
||||
|
||||
SUBDIRS = ZCPR33
|
||||
include $(TOOLS)/Makefile.inc
|
||||
|
||||
$(HD0IMG): $(IMGFILES)
|
||||
if [ -f $(HD0IMG) ] ; then \
|
||||
for f in $(IMGFILES) $(DISTFILES) ; do \
|
||||
$(BINDIR)/cpmrm -f wbw_hd0 $(HD0IMG) 0:$$f ; \
|
||||
done ; \
|
||||
$(CPMCP) -f wbw_hd0 $(HD0IMG) $(IMGFILES) $(DISTFILES) 0: ; \
|
||||
fi
|
||||
|
||||
zcpr33n.rel zcpr33t.rel:
|
||||
zcpr33.rel:
|
||||
(cd ZCPR33 ; make)
|
||||
|
||||
all:: $(HD0IMG)
|
||||
all:: $(IMGFILES)
|
||||
|
||||
clean::
|
||||
@rm -f $(HD0IMG)
|
||||
# clean::
|
||||
# $(MAKE) --directory ZCPR3 clean
|
||||
|
||||
%.img: zcpr33n.rel zcpr33t.rel
|
||||
%.img: zcpr33.rel
|
||||
$(eval VER := $(subst .img,,$(subst bp,,$@)))
|
||||
cp def-ww-z$(VER).lib def-ww.lib
|
||||
rm -f bpbio-ww.rel
|
||||
$(ZXCC) ZMAC -BPBIO-WW -/P
|
||||
mv bpbio-ww.prn bp$(VER).prn
|
||||
if [ -f bpbio-ww.err ] ; then mv bpbio-ww.err bp$(VER).err; fi
|
||||
mv bpbio-ww.rel bp$(VER).rel
|
||||
cp bp$(VER).dat bpsys.dat
|
||||
$(ZXCC) ./bpbuild.com -bpsys.dat 0 < bpbld1.rsp
|
||||
cp bpsys.img bpsys.dat
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
@echo off
|
||||
setlocal
|
||||
|
||||
set PATH=%PATH%;..\..\..\Tools\zxcc;..\..\..\Tools\cpmtools;
|
||||
|
||||
set TOOLS=..\..\..\Tools
|
||||
set PATH=%PATH%;%TOOLS%\zxcc;%TOOLS%\cpmtools;
|
||||
set CPMDIR80=%TOOLS%/cpm/
|
||||
|
||||
copy ..\z3base.lib . || exit /b
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
OBJECTS = zcpr33n.rel zcpr33t.rel
|
||||
OTHERS = z3basen.lib z3baset.lib
|
||||
OBJECTS = zcpr33.rel
|
||||
OTHERS = z3base.lib *.prn *.rel
|
||||
TOOLS = ../../../Tools
|
||||
DEST = ..
|
||||
|
||||
@@ -7,12 +7,7 @@ include $(TOOLS)/Makefile.inc
|
||||
|
||||
DIFFPATH = $(DIFFTO)/Source/BPBIOS
|
||||
|
||||
zcpr33t.rel: ../z3baset.lib
|
||||
cp ../z3baset.lib z3baset.lib
|
||||
$(ZXCC) ZMAC -zcpr33t.z80 -/P
|
||||
rm z3baset.lib
|
||||
|
||||
zcpr33n.rel: ../z3basen.lib
|
||||
cp ../z3basen.lib z3basen.lib
|
||||
$(ZXCC) ZMAC -zcpr33n.z80 -/P
|
||||
rm z3basen.lib
|
||||
zcpr33.rel: ../z3base.lib
|
||||
cp ../z3base.lib z3base.lib
|
||||
$(ZXCC) ZMAC -zcpr33.z80 -/P
|
||||
rm z3base.lib
|
||||
|
||||
@@ -102,6 +102,9 @@ CBOOT:
|
||||
; BPCNFG to configure a generic IMG file for specific Hard Drive Partitions.
|
||||
|
||||
CBOOT0:
|
||||
LD BC,HBF_SYSRES_INT ; HB Func: Internal Reset
|
||||
CALL HBX_INVOKE ; Do it
|
||||
|
||||
LD HL,BRAME ; Get end of banked RAM
|
||||
LD (HISAV),HL ; and save for later use
|
||||
IF HARDDSK
|
||||
|
||||
@@ -268,16 +268,15 @@ MATCH: LD A,(SECMSK) ; Get the sector mask
|
||||
;
|
||||
; Modified to use HBIOS host buffer
|
||||
;
|
||||
; HSTBUF is always in HBIOS bank where I/O is done
|
||||
LD A,(TPABNK) ; TPA BANK
|
||||
DEC A ; HBIOS bank is one below
|
||||
LD C,A
|
||||
; HSTBUF is always in HBIOS bank where I/O is actually done
|
||||
LD A,(HB_BNKBIOS) ; HBIOS bank id
|
||||
LD C,A ; Set Read Source Bank
|
||||
IF BANKED
|
||||
LD A,(DMABNK) ; Set Read Destination Bank
|
||||
LD A,(DMABNK) ; Read Destination Bank
|
||||
ELSE
|
||||
LD A,(TPABNK) ; Set Read Destination Bank
|
||||
LD A,(TPABNK) ; Read Destination Bank
|
||||
ENDIF
|
||||
LD B,A
|
||||
LD B,A ; Set Read Destination Bank
|
||||
LD A,(READOP) ; Direction?
|
||||
OR A
|
||||
JR NZ,OKBNKS ; ..jump if read
|
||||
|
||||
@@ -133,8 +133,8 @@ BNK1 EQU BID_COM ; Second TPA Bank (Common Bank) 48000H
|
||||
BNK2 EQU BID_SYS ; System Bank (BIOS, DOS, CPR) 50000H
|
||||
BNKU EQU 00H ; User Area Bank 58000H
|
||||
; (set to 0 to disable)
|
||||
BNK3 EQU BID_RAMD ; First Bank for RAM disk 60000H
|
||||
BNKM EQU BID_RAMM ; Maximum Bank # F8000H
|
||||
BNK3 EQU BID_BUF ; First Bank for RAM disk 60000H
|
||||
BNKM EQU BID_BUF ; Maximum Bank # F8000H
|
||||
|
||||
IF NO ; REMOVE CODE - NOT NEEDED WITH HBIOS makes a
|
||||
; nice resource for Z180 programing in general
|
||||
|
||||
@@ -133,8 +133,8 @@ BNK1 EQU BID_COM ; Second TPA Bank (Common Bank) 48000H
|
||||
BNK2 EQU BID_SYS ; System Bank (BIOS, DOS, CPR) 50000H
|
||||
BNKU EQU 00H ; User Area Bank 58000H
|
||||
; (set to 0 to disable)
|
||||
BNK3 EQU BID_RAMD ; First Bank for RAM disk 60000H
|
||||
BNKM EQU BID_RAMM ; Maximum Bank # F8000H
|
||||
BNK3 EQU BID_BUF ; First Bank for RAM disk 60000H
|
||||
BNKM EQU BID_BUF ; Maximum Bank # F8000H
|
||||
|
||||
IF NO ; REMOVE CODE - NOT NEEDED WITH HBIOS makes a
|
||||
; nice resource for Z180 programing in general
|
||||
|
||||
@@ -133,8 +133,8 @@ BNK1 EQU BID_COM ; Second TPA Bank (Common Bank) 48000H
|
||||
BNK2 EQU BID_SYS ; System Bank (BIOS, DOS, CPR) 50000H
|
||||
BNKU EQU 00H ; User Area Bank 58000H
|
||||
; (set to 0 to disable)
|
||||
BNK3 EQU BID_RAMD ; First Bank for RAM disk 60000H
|
||||
BNKM EQU BID_RAMM ; Maximum Bank # F8000H
|
||||
BNK3 EQU BID_BUF ; First Bank for RAM disk 60000H
|
||||
BNKM EQU BID_BUF ; Maximum Bank # F8000H
|
||||
|
||||
IF NO ; REMOVE CODE - NOT NEEDED WITH HBIOS makes a
|
||||
; nice resource for Z180 programing in general
|
||||
|
||||
@@ -133,8 +133,8 @@ BNK1 EQU BID_COM ; Second TPA Bank (Common Bank) 48000H
|
||||
BNK2 EQU BID_SYS ; System Bank (BIOS, DOS, CPR) 50000H
|
||||
BNKU EQU 00H ; User Area Bank 58000H
|
||||
; (set to 0 to disable)
|
||||
BNK3 EQU BID_RAMD ; First Bank for RAM disk 60000H
|
||||
BNKM EQU BID_RAMM ; Maximum Bank # F8000H
|
||||
BNK3 EQU BID_BUF ; First Bank for RAM disk 60000H
|
||||
BNKM EQU BID_BUF ; Maximum Bank # F8000H
|
||||
|
||||
IF NO ; REMOVE CODE - NOT NEEDED WITH HBIOS makes a
|
||||
; nice resource for Z180 programing in general
|
||||
|
||||
@@ -133,8 +133,8 @@ BNK1 EQU BID_COM ; Second TPA Bank (Common Bank) 48000H
|
||||
BNK2 EQU BID_SYS ; System Bank (BIOS, DOS, CPR) 50000H
|
||||
BNKU EQU 00H ; User Area Bank 58000H
|
||||
; (set to 0 to disable)
|
||||
BNK3 EQU BID_RAMD ; First Bank for RAM disk 60000H
|
||||
BNKM EQU BID_RAMM ; Maximum Bank # F8000H
|
||||
BNK3 EQU BID_BUF ; First Bank for RAM disk 60000H
|
||||
BNKM EQU BID_BUF ; Maximum Bank # F8000H
|
||||
|
||||
IF NO ; REMOVE CODE - NOT NEEDED WITH HBIOS makes a
|
||||
; nice resource for Z180 programing in general
|
||||
|
||||
@@ -46,7 +46,7 @@
|
||||
; NOTE: No Skew Table needed since Hard Disk Format is locked w/No Skew
|
||||
|
||||
;.....
|
||||
; Currently, BPBIOS supports 2 memory drive devices and 3 phyical hard
|
||||
; Currently, BPBIOS supports 2 memory drive devices and 3 physical hard
|
||||
; drive like devices. BPBIOS can support seven but unfortunately
|
||||
; BPCNFG only supports 3 hard drive like devices and the source
|
||||
; code is not available, so menu 4 is meaningless. Devices
|
||||
@@ -64,26 +64,22 @@
|
||||
;
|
||||
; Starting with ver 2.8 of HBIOS, devices are discovered at boot
|
||||
; time and assigned device numbers. Since devices are tested in
|
||||
; a certain order, the device numbers are somewhat predicably
|
||||
; a certain order, the device numbers are somewhat predictably
|
||||
; assigned. Memory drives are discovered first. IDE drives are
|
||||
; discovered next so that IDE Hard drives including CF cards are
|
||||
; assigned device 2 and device 3 if a slave drive is supported by
|
||||
; the interface. Next comes the SD drive and is assigned device 3
|
||||
; or 4 depending on the whether there is an ide slave drive.
|
||||
; USB drive is assigned device 4 or 5 . For SIMH HDSK0 is device 0
|
||||
; USB drive is assigned device 4 or 5. For SIMH HDSK0 is device 0
|
||||
; and HDSK1 is device 1. Memory drives are now handled as LBA
|
||||
; devices, ie like hard drives.
|
||||
;
|
||||
; The following non-memory drive capacities and configurations used for
|
||||
; the SIMH, SD and IDE drives: Slice geometry is 256, 512 byte sectors,
|
||||
; 1 head per track and 1 with one reserved track, a block size of 4096
|
||||
; bytes with 512 directory entries. An equivalent geometry is 16
|
||||
; sectors and 16 heads per track. Internally BPBIOS uses a uniform
|
||||
; logical organization with 64 logical records per logical track.
|
||||
; Thus there are 16 logical tracks per physical track with 1040
|
||||
; logical (65 physical) tracks per slice. If all partitions are not
|
||||
; physically present, the missing partitions can be disabled in the
|
||||
; BPBCNFG configuration file or by hand. Note that HBIOS uses LBA,
|
||||
; the SIMH, SD and IDE drives: Track geometry is 16 512 byte sectors.
|
||||
; A slice is exactly 64 tracks, with 1 of the 64 tracks as a system
|
||||
; track. There are 1024 directory entries per slice. If all partitions
|
||||
; are not physically present, the missing partitions can be disabled in
|
||||
; the BPBCNFG configuration file or by hand. Note that HBIOS uses LBA,
|
||||
; Logical Block Addressing, for non-floppy drives.
|
||||
;
|
||||
; For SBC V1,2, ZETA, MARK IV and N8, the following non-memory partitions
|
||||
@@ -94,26 +90,26 @@
|
||||
; partition Size Blocks Block Offset in
|
||||
; MByte Size logical tracks
|
||||
;====================================================================
|
||||
; C 8 2048 4096 1*16 = 16
|
||||
; D 8 2048 4096 (1+65)*16 = 1056
|
||||
; E 8 2048 4096 (1+2*65)*16 = 2096
|
||||
; F 8 2048 4096 (1+3*65)*16 = 3136
|
||||
; G 8 2048 4096 (1+4*65)*16 = 4176
|
||||
; H 8 2048 4096 (1+5*65)*16 = 5216
|
||||
; I 8 2048 4096 (1+6*65)*16 = 6256
|
||||
; J 8 2048 4096 (1+7*65)*16 = 7296
|
||||
; C 8 2044 4096 128+(1024*0)+2 = 130
|
||||
; D 8 2044 4096 128+(1024*1)+2 = 1154
|
||||
; E 8 2044 4096 128+(1024*2)+2 = 2178
|
||||
; F 8 2044 4096 128+(1024*3)+2 = 3202
|
||||
; G 8 2044 4096 128+(1024*4)+2 = 4226
|
||||
; H 8 2044 4096 128+(1024*5)+2 = 5250
|
||||
; I 8 2044 4096 128+(1024*6)+2 = 6274
|
||||
; J 8 2044 4096 128+(1024*7)+2 = 7298
|
||||
;
|
||||
; These are capacities and configurations used for SD card:
|
||||
;
|
||||
; partition Size Blocks Block Offset
|
||||
; MByte Size logical tracks
|
||||
;====================================================================
|
||||
; K 8 2048 4096 1*16 = 16
|
||||
; L 8 2048 4096 (1+65)*16 = 1056
|
||||
; M 8 2048 4096 (1+2*65)*16 = 2096
|
||||
; N 8 2048 4096 (1+3*65)*16 = 3136
|
||||
; K 8 2044 4096 128+(1024*0)+2 = 130
|
||||
; L 8 2044 4096 128+(1024*1)+2 = 1154
|
||||
; M 8 2044 4096 128+(1024*2)+2 = 2178
|
||||
; N 8 2044 4096 128+(1024*3)+2 = 3202
|
||||
;
|
||||
; RAM drive is paritition A while ROM drive is partition B.
|
||||
; RAM drive is partition A while ROM drive is partition B.
|
||||
;
|
||||
; For example, a typical Memory drive configuration is:
|
||||
;
|
||||
@@ -199,17 +195,17 @@ DPBROM: DEFW 64 ; Sectors/Track
|
||||
; even though real layout is 256 physical
|
||||
; sectors per track
|
||||
DEFB 0 ; Physical tracks/side (No Meaning in HD)
|
||||
HSIZ0 EQU 2048 ; # of blocks in first Partition (1024 trks)
|
||||
HSIZ0 EQU 2048 - 4 ; # of blocks in first Partition (1022 trks)
|
||||
;
|
||||
DPB50: DEFW 64 ; Sctrs/Trk
|
||||
DEFB 5 ; Blk Shf Fctr
|
||||
DEFB 31 ; Block Mask
|
||||
DEFB 1 ; Extent Mask
|
||||
DEFW HSIZ0-1 ; Disk Size-1
|
||||
DEFW 511 ; Dir Max-1 - 4 blocks
|
||||
DEFB 0F0H,0 ; Alloc 0,1 - 4 blocks
|
||||
DEFW HSIZ0-1 ; Disk Size-1
|
||||
DEFW 1024-1 ; Dir Max-1
|
||||
DEFB 0FFH,0 ; Alloc 0,1
|
||||
DEFW 0 ; Check Size
|
||||
DEFW 16 ; Trk Offset
|
||||
DEFW 128+(1024*0)+2 ; Trk Offset
|
||||
ENDIF
|
||||
;
|
||||
;.....
|
||||
@@ -226,17 +222,17 @@ DPB50: DEFW 64 ; Sctrs/Trk
|
||||
; sectors per track
|
||||
DEFB 0 ; Physical tracks/side (No Meaning in HD)
|
||||
|
||||
HSIZ1 EQU 2048 ; # of blocks in Second Partition (1024 trks)
|
||||
HSIZ1 EQU 2048 - 4 ; # of blocks in Second Partition (1022 trks)
|
||||
;
|
||||
DPB51: DEFW 64 ; Scts/Trk
|
||||
DEFB 5 ; Blk Shf Fctr
|
||||
DEFB 31 ; Block Mask
|
||||
DEFB 1 ; Extent Mask
|
||||
DEFW HSIZ1-1 ; Disk Size-1
|
||||
DEFW 511 ; Dir Max-1 4 blocks
|
||||
DEFB 0F0H,0 ; Alloc 0,1
|
||||
DEFW 1024-1 ; Dir Max-1
|
||||
DEFB 0FFH,0 ; Alloc 0,1
|
||||
DEFW 0 ; Check size
|
||||
DEFW (1+65)*16 ; Track offset 1056
|
||||
DEFW 128+(1024*1)+2 ; Trk Offset
|
||||
ENDIF
|
||||
;
|
||||
;.....
|
||||
@@ -253,21 +249,21 @@ DPB51: DEFW 64 ; Scts/Trk
|
||||
; sectors per track
|
||||
DEFB 0 ; Physical tracks/side (No Meaning in HD)
|
||||
|
||||
HSIZ2 EQU 2048 ; # of blocks in third Partition (1024 tracks)
|
||||
HSIZ2 EQU 2048 - 4 ; # of blocks in Second Partition (1022 trks)
|
||||
;
|
||||
DPB52: DEFW 64 ; Scts/Trk
|
||||
DEFB 5 ; Blk Shf Fctr
|
||||
DEFB 31 ; Block Mask
|
||||
DEFB 1 ; Extent Mask
|
||||
DEFW HSIZ2-1 ; Disk Size-1
|
||||
DEFW 511 ; Dir Max-1 4 blocks
|
||||
DEFB 0F0H,0 ; Alloc 0,1
|
||||
DEFW 1024-1 ; Dir Max-1
|
||||
DEFB 0FFH,0 ; Alloc 0,1
|
||||
DEFW 0 ; Check size
|
||||
DEFW (1+2*65)*16 ; Track offset = 2096
|
||||
DEFW 128+(1024*2)+2 ; Trk Offset
|
||||
ENDIF
|
||||
;
|
||||
;.....
|
||||
; Partition F. HBIOS Disk 0, Slice 4
|
||||
; Partition F. HBIOS Disk 0, Slice 3
|
||||
|
||||
IF DRV_F
|
||||
DEFB 'HBDSK0:3 ','F'+80H ; Id - 10 bytes
|
||||
@@ -280,17 +276,17 @@ DPB52: DEFW 64 ; Scts/Trk
|
||||
; sectors per track
|
||||
DEFB 0 ; Physical tracks/side (No Meaning in HD)
|
||||
|
||||
HSIZ3 EQU 2048 ; # of blocks in Fourth Partition (1024 tracks)
|
||||
HSIZ3 EQU 2048 - 4 ; # of blocks in Second Partition (1022 trks)
|
||||
;
|
||||
DPB53: DEFW 64 ; Scts/Trk
|
||||
DEFB 5 ; Blk Shf Fctr
|
||||
DEFB 31 ; Block Mask
|
||||
DEFB 1 ; Extent Mask
|
||||
DEFW HSIZ3-1 ; Disk Size-1
|
||||
DEFW 511 ; Dir Max-1 4 blocks
|
||||
DEFB 0F0H,0 ; Alloc 0,1
|
||||
DEFW 1024-1 ; Dir Max-1
|
||||
DEFB 0FFH,0 ; Alloc 0,1
|
||||
DEFW 0 ; Check size
|
||||
DEFW (1+3*65)*16 ; Track offset = 3136
|
||||
DEFW 128+(1024*3)+2 ; Trk Offset
|
||||
ENDIF
|
||||
;
|
||||
;.....
|
||||
@@ -307,17 +303,17 @@ DPB53: DEFW 64 ; Scts/Trk
|
||||
; sectors per track
|
||||
DEFB 0 ; Physical tracks/side (No Meaning in HD)
|
||||
|
||||
HSIZ4 EQU 2048 ; # of blocks in first Partition (1024 trks)
|
||||
HSIZ4 EQU 2048 - 4 ; # of blocks in Second Partition (1022 trks)
|
||||
;
|
||||
DPB54: DEFW 64 ; Sctrs/Trk
|
||||
DEFB 5 ; Blk Shf Fctr
|
||||
DEFB 31 ; Block Mask
|
||||
DEFB 1 ; Extent Mask
|
||||
DEFW HSIZ4-1 ; Disk Size - 1
|
||||
DEFW 511 ; Dir Max-1 4 blocks
|
||||
DEFB 0F0H,0 ; Alloc 0,1
|
||||
DEFW 1024-1 ; Dir Max-1
|
||||
DEFB 0FFH,0 ; Alloc 0,1
|
||||
DEFW 0 ; Check size
|
||||
DEFW (1+4*65)*16 ; Track offset = 16
|
||||
DEFW 128+(1024*4)+2 ; Trk Offset
|
||||
ENDIF
|
||||
;
|
||||
;.....
|
||||
@@ -334,17 +330,17 @@ DPB54: DEFW 64 ; Sctrs/Trk
|
||||
; sectors per track
|
||||
DEFB 0 ; Physical tracks/side (No Meaning in HD)
|
||||
|
||||
HSIZ5 EQU 2048 ; # of blocks in Second Partition (1024 trks)
|
||||
HSIZ5 EQU 2048 - 4 ; # of blocks in Second Partition (1022 trks)
|
||||
;
|
||||
DPB55: DEFW 64 ; Sctrs/Trk - actually 256
|
||||
DEFB 5 ; Blk Shf Fctr
|
||||
DEFB 31 ; Block Mask
|
||||
DEFB 1 ; Extent Mask
|
||||
DEFW HSIZ5-1 ; Disk Size-1
|
||||
DEFW 511 ; Dir Max-1
|
||||
DEFB 0F0H,0 ; Alloc 0,1 - 4 blocks
|
||||
DEFW 1024-1 ; Dir Max-1
|
||||
DEFB 0FFH,0 ; Alloc 0,1
|
||||
DEFW 0 ; Check Size
|
||||
DEFW (1+5*65)*16 ; Trk Offset = 1056
|
||||
DEFW 128+(1024*5)+2 ; Trk Offset
|
||||
ENDIF
|
||||
;
|
||||
;.....
|
||||
@@ -361,17 +357,17 @@ DPB55: DEFW 64 ; Sctrs/Trk - actually 256
|
||||
; sectors per track
|
||||
DEFB 0 ; Physical tracks/side (No Meaning in HD)
|
||||
|
||||
HSIZ6 EQU 2048 ; # of blocks in third Partition (1024 tracks)
|
||||
HSIZ6 EQU 2048 - 4 ; # of blocks in Second Partition (1022 trks)
|
||||
;
|
||||
DPB56: DEFW 64 ; Scts/Trk
|
||||
DEFB 5 ; Blk Shf Fctr
|
||||
DEFB 31 ; Block Mask
|
||||
DEFB 1 ; Extent Mask
|
||||
DEFW HSIZ6-1 ; Disk Size-1
|
||||
DEFW 511 ; Dir Max-1 4 blocks
|
||||
DEFB 0F0H,0 ; Alloc 0,1
|
||||
DEFW 1024-1 ; Dir Max-1
|
||||
DEFB 0FFH,0 ; Alloc 0,1
|
||||
DEFW 0 ; Check size
|
||||
DEFW (1+6*65)*16 ; Track offset = 2096
|
||||
DEFW 128+(1024*6)+2 ; Trk Offset
|
||||
ENDIF
|
||||
|
||||
;.....
|
||||
@@ -388,17 +384,17 @@ DPB56: DEFW 64 ; Scts/Trk
|
||||
; sectors per track
|
||||
DEFB 0 ; Physical tracks/side (No Meaning in HD)
|
||||
|
||||
HSIZ7 EQU 2048 ; # of blocks in Fourth Partition (1024 tracks)
|
||||
HSIZ7 EQU 2048 - 4 ; # of blocks in Second Partition (1022 trks)
|
||||
;
|
||||
DPB57: DEFW 64 ; Scts/Trk
|
||||
DEFB 5 ; Blk Shf Fctr
|
||||
DEFB 31 ; Block Mask
|
||||
DEFB 1 ; Extent Mask
|
||||
DEFW HSIZ7-1 ; Disk Size-1
|
||||
DEFW 511 ; Dir Max-1 4 blocks
|
||||
DEFB 0F0H,0 ; Alloc 0,1
|
||||
DEFW 1024-1 ; Dir Max-1
|
||||
DEFB 0FFH,0 ; Alloc 0,1
|
||||
DEFW 0 ; Check size
|
||||
DEFW (1+7*65)*16 ; Track offset = 3136
|
||||
DEFW 128+(1024*7)+2 ; Trk Offset
|
||||
ENDIF
|
||||
;
|
||||
;.....
|
||||
@@ -414,17 +410,18 @@ DPB57: DEFW 64 ; Scts/Trk
|
||||
; even though real layout is 256 physical
|
||||
; sectors per track
|
||||
DEFB 0 ; Physical tracks/side (No Meaning in HD)
|
||||
HSIZ8 EQU 2048 ; # of blocks in first Partition (1024 trks)
|
||||
|
||||
HSIZ8 EQU 2048 - 4 ; # of blocks in Second Partition (1022 trks)
|
||||
;
|
||||
DPB58: DEFW 64 ; Sctrs/Trk
|
||||
DEFB 5 ; Blk Shf Fctr
|
||||
DEFB 31 ; Block Mask
|
||||
DEFB 1 ; Extent Mask
|
||||
DEFW HSIZ8-1 ; Disk Size-1
|
||||
DEFW 511 ; Dir Max-1 - 4 blocks
|
||||
DEFB 0F0H,0 ; Alloc 0,1 - 4 blocks
|
||||
DEFW 1024-1 ; Dir Max-1
|
||||
DEFB 0FFH,0 ; Alloc 0,1
|
||||
DEFW 0 ; Check Size
|
||||
DEFW 16 ; Trk Offset
|
||||
DEFW 128+(1024*0)+2 ; Trk Offset
|
||||
ENDIF
|
||||
;
|
||||
;.....
|
||||
@@ -441,17 +438,17 @@ DPB58: DEFW 64 ; Sctrs/Trk
|
||||
; sectors per track
|
||||
DEFB 0 ; Physical tracks/side (No Meaning in HD)
|
||||
|
||||
HSIZ9 EQU 2048 ; # of blocks in Second Partition (1024 trks)
|
||||
HSIZ9 EQU 2048 - 4 ; # of blocks in Second Partition (1022 trks)
|
||||
;
|
||||
DPB59: DEFW 64 ; Scts/Trk
|
||||
DEFB 5 ; Blk Shf Fctr
|
||||
DEFB 31 ; Block Mask
|
||||
DEFB 1 ; Extent Mask
|
||||
DEFW HSIZ9-1 ; Disk Size-1
|
||||
DEFW 511 ; Dir Max-1 4 blocks
|
||||
DEFB 0F0H,0 ; Alloc 0,1
|
||||
DEFW 1024-1 ; Dir Max-1
|
||||
DEFB 0FFH,0 ; Alloc 0,1
|
||||
DEFW 0 ; Check size
|
||||
DEFW (1+65)*16 ; Track offset 1056
|
||||
DEFW 128+(1024*1)+2 ; Trk Offset
|
||||
ENDIF
|
||||
;
|
||||
;.....
|
||||
@@ -468,17 +465,17 @@ DPB59: DEFW 64 ; Scts/Trk
|
||||
; sectors per track
|
||||
DEFB 0 ; Physical tracks/side (No Meaning in HD)
|
||||
|
||||
HSIZ10 EQU 2048 ; # of blocks in Second Partition (1024 trks)
|
||||
HSIZ10 EQU 2048 - 4 ; # of blocks in Second Partition (1022 trks)
|
||||
;
|
||||
DPB60: DEFW 64 ; Scts/Trk
|
||||
DEFB 5 ; Blk Shf Fctr
|
||||
DEFB 31 ; Block Mask
|
||||
DEFB 1 ; Extent Mask
|
||||
DEFW HSIZ10 ; Disk Size-1
|
||||
DEFW 511 ; Dir Max-1 4 blocks
|
||||
DEFB 0F0H,0 ; Alloc 0,1
|
||||
DEFW HSIZ10-1 ; Disk Size-1
|
||||
DEFW 1024-1 ; Dir Max-1
|
||||
DEFB 0FFH,0 ; Alloc 0,1
|
||||
DEFW 0 ; Check size
|
||||
DEFW (1+2*65)*16 ; Track offset 2096
|
||||
DEFW 128+(1024*2)+2 ; Trk Offset
|
||||
ENDIF
|
||||
;
|
||||
;.....
|
||||
@@ -492,18 +489,17 @@ DPB60: DEFW 64 ; Scts/Trk
|
||||
DEFB 16 ; Logical Sectors per track
|
||||
DEFB 0 ; Physical tracks/side (No Meaning in HD)
|
||||
|
||||
HSIZ11 EQU 2048 ; # of blocks in Forth Logical Drive
|
||||
; (1024 tracks)
|
||||
HSIZ11 EQU 2048 - 4 ; # of blocks in Second Partition (1022 trks)
|
||||
|
||||
DPB61: DEFW 64 ; Scts/Trk
|
||||
DEFB 5 ; Blk Shf Fctr
|
||||
DEFB 31 ; Block Mask
|
||||
DEFB 1 ; Extent Mask
|
||||
DEFW HSIZ11-1 ; Disk Size-1
|
||||
DEFW 511 ; Dir Max-1
|
||||
DEFB 0F0H,0 ; Alloc 0,1
|
||||
DEFW 1024-1 ; Dir Max-1
|
||||
DEFB 0FFH,0 ; Alloc 0,1
|
||||
DEFW 0 ; Check size
|
||||
DEFW (1+3*65)*16 ; Track offset 3136
|
||||
DEFW 128+(1024*3)+2 ; Trk Offset
|
||||
ENDIF
|
||||
|
||||
;=========== End of Hard Disk DPBs ===========
|
||||
|
||||
@@ -183,7 +183,6 @@ HDSK_RW1:
|
||||
POP BC ; RESTORE INCOMING FUNCTION, DEVICE/UNIT
|
||||
RET NZ ; ABORT IF SEEK RETURNED AN ERROR W/ ERROR IN A
|
||||
LD HL,(HB_DSKBUF) ; GET BUFFER ADDRESS
|
||||
;LD D,BID_HB ; BUFFER IN HBIOS BANK
|
||||
LD A,(HB_BNKBIOS) ; BUFFER IN HBIOS BANK
|
||||
LD D,A ; PUT IN D
|
||||
LD E,1 ; ONE SECTOR
|
||||
|
||||
@@ -9,6 +9,7 @@
|
||||
HBF_ALLOC EQU 0F6H ; HBIOS Func: ALLOCATE Heap Memory
|
||||
HBF_PEEK EQU 0FAH ; HBIOS Func: Peek Byte
|
||||
HBF_POKE EQU 0FBH ; HBIOS Func: Poke Byte
|
||||
HBF_SYSRES_INT EQU 0F000H ; HBIOS Func: Internal Reset
|
||||
HBF_MEMINFO EQU 0F8F1H ; HBIOS Func: Get Memory Info
|
||||
HBF_BNKINFO EQU 0F8F2H ; HBIOS Func: Get Bank Info
|
||||
;
|
||||
@@ -43,22 +44,23 @@ HBX_CPYLEN EQU 0FFE8H
|
||||
; call here, make required changes, then update the
|
||||
; BIOSJT to point directly to the normal SELMEM routine for
|
||||
; all subsequent calls.
|
||||
;
|
||||
; When called, the incoming bank id will be the original hard-coded
|
||||
; bank id prior to any adjustments. These original bank id's are
|
||||
; coded to be an offset from the ending HBIOS RAM bank id which
|
||||
; is (80h + RAM banks). See romwbw.lib. We update the requested
|
||||
; bank id for this initial call to make it the proper absolute
|
||||
; HBIOS bank id.
|
||||
;
|
||||
; See romwbw.lib for additional RAM bank layout information.
|
||||
|
||||
; BPBIOS HBIOS Typical
|
||||
; ------------ -------------- --------------
|
||||
; -1: <COMMON> BID_COM 90h - 1 = 8Fh
|
||||
; -2: TPABNK BID_USR 90h - 2 = 8Eh
|
||||
; -3: <HBIOS> BID_BIOS 90h - 3 = 8Dh
|
||||
; -4: SYSBNK BID_AUX 90h - 4 = 8Ch
|
||||
; -9: BNKM BID_AUX-5 90h - 9 = 87h
|
||||
; -16: RAMBNK RAMD0 90h - 16 = 80h
|
||||
|
||||
HB_SELMEM:
|
||||
PUSH AF
|
||||
PUSH BC
|
||||
PUSH DE
|
||||
PUSH HL
|
||||
|
||||
PUSH AF ; Save incoming bank request
|
||||
|
||||
IF HB_DEBUG AND FALSE
|
||||
CALL PRTSTRD
|
||||
DEFB '[HB_SELMEM: $'
|
||||
@@ -68,23 +70,30 @@ HB_SELMEM:
|
||||
ENDIF
|
||||
|
||||
LD BC,HBF_BNKINFO ; HBIOS BNKINFO function
|
||||
CALL HBX_INVOKE ; DO IT, D=BID_BIOS, E=BID_USER
|
||||
LD A,D ; BID_BIOS
|
||||
LD (HB_BNKBIOS),A ; SET HB_BNKBIOS
|
||||
ADD A,3 ; HBIOS + 3
|
||||
LD (HB_BNKEND),A ; ... is the ending RAM bank
|
||||
IF BANKED
|
||||
LD (BNKADJ+1),A ; Dynamically update SELBNK
|
||||
ENDIF
|
||||
|
||||
CALL HBX_INVOKE ; Do it, D=BIOS bank, E=USER (TPA) bank
|
||||
LD A,D ; BIOS bank
|
||||
LD (HB_BNKBIOS),A ; Save it for later (deblock & hard-ww)
|
||||
LD A,E ; USER (TPA) bank
|
||||
LD (TPABNK),A ; Update BP register
|
||||
DEC A ; SYS bank is one below USER
|
||||
LD (SYSBNK),A ; Update BP register
|
||||
DEC A ; HBIOS BUF bank is one more below
|
||||
;LD (UABNK),A ; Set BPBIOS USER bank
|
||||
LD (RAMBNK),A ; Update BP RAM disk bank register
|
||||
LD (MAXBNK),A ; Update ending bank register
|
||||
|
||||
LD HL,SELMEM ; Future SELMEM calls will
|
||||
LD (BIOSJT+(27*3)+1),HL ; ... go to real SELMEM
|
||||
|
||||
POP BC ; Recover requested bank to B
|
||||
LD A,(TPABNK) ; Get TPA bank
|
||||
ADD 2 ; Offset to ending RAM bank id
|
||||
ADD B ; Adjust for incoming request
|
||||
|
||||
POP HL
|
||||
POP DE
|
||||
POP BC
|
||||
POP AF
|
||||
JP SELMEM
|
||||
JP SELMEM ; Continue to normal SELMEM
|
||||
|
||||
;::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
|
||||
; Move Data - Possibly between banks. This resembles CP/M 3, but
|
||||
@@ -97,15 +106,10 @@ HB_SELMEM:
|
||||
;::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
|
||||
|
||||
HB_MOVE:
|
||||
PUSH HL
|
||||
LD HL,HB_BNKEND
|
||||
LD A,(HB_SRCBNK)
|
||||
ADD A,(HL) ; Adjust for HBIOS bank ids
|
||||
LD (HBX_SRCBNK),A
|
||||
LD A,(HB_DSTBNK)
|
||||
ADD A,(HL) ; Adjust for HBIOS bank ids
|
||||
LD (HBX_DSTBNK),A
|
||||
POP HL
|
||||
CALL HBX_BNKCPY
|
||||
PUSH HL
|
||||
LD HL,(TPABNK) ; Get TPA Bank #
|
||||
@@ -141,6 +145,5 @@ HB_XMOVE:
|
||||
HB_SRCBNK: DEFS 1 ; Move Source Bank #
|
||||
HB_DSTBNK: DEFS 1 ; Move Destination Bank #
|
||||
HB_BNKBIOS: DEFS 1 ; Bank id of HBIOS bank
|
||||
HB_BNKEND: DEFS 1 ; End of available RAM banks (last bank + 1)
|
||||
HB_DSKBUF: DEFS 2 ; Address of physical disk buffer in HBIOS bank
|
||||
|
||||
@@ -115,10 +115,22 @@ SELMEM: LD (USRBNK),A ; Update user bank
|
||||
; Must preserve all Registers including Flags.
|
||||
; All Bank Switching MUST be done by this routine
|
||||
;::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
|
||||
;
|
||||
; Parameter to BNKADJ (ADD) is set dynamically at initialization.
|
||||
|
||||
SELBNK: PUSH AF ; Save regs
|
||||
SELBN0: LD (CURBNK),A ; Save as current bank #
|
||||
BNKADJ: ADD A,90H ; Adjust for HBIOS bank ids
|
||||
|
||||
IF HB_DEBUG AND FALSE
|
||||
|
||||
CALL PRTSTRD
|
||||
DEFB '[SELBNK: $'
|
||||
CALL PRTHEXBYTE
|
||||
CALL PRTSTRD
|
||||
DEFB ']$'
|
||||
|
||||
ENDIF
|
||||
|
||||
CALL HBX_BNKSEL
|
||||
POP AF ; restore regs
|
||||
RET
|
||||
@@ -172,7 +184,7 @@ FRGETB:
|
||||
PUSH BC ; Save BC
|
||||
PUSH DE ; Save DE
|
||||
LD B,0FAH ; HBIOS Peek function
|
||||
LD D,C ; Bank in D
|
||||
LD D,C
|
||||
CALL HBX_INVOKE ; Do it
|
||||
LD A,E ; Value to A
|
||||
POP DE ; Restore DE
|
||||
@@ -203,8 +215,8 @@ FRPUTB:
|
||||
PUSH BC ; Save BC
|
||||
PUSH DE ; Save DE
|
||||
LD B,0FBH ; HBIOS Poke function
|
||||
LD D,C ; Bank in D
|
||||
LD E,A ; Value in E
|
||||
LD D,C
|
||||
CALL HBX_INVOKE ; Do it
|
||||
POP DE ; Restore DE
|
||||
POP BC ; Restore BC
|
||||
|
||||
@@ -48,20 +48,33 @@ DRV_P SET NO ; YES if system has flopy drives
|
||||
;
|
||||
; RAM/ROM Bank Reserve
|
||||
;
|
||||
HB_RAMRESV EQU 8 ; RAM reserve is 8 banks
|
||||
HB_RAMRESV EQU 5 ; RAM reserve is 5 banks
|
||||
HB_ROMRESV EQU 4 ; ROM reserve is 4 banks
|
||||
;
|
||||
; Layout of RAM banks
|
||||
;
|
||||
; TODO: Query system via HBIOS API to determine the actual bank
|
||||
; assignments, then adjust BPBIOS operation accordingly.
|
||||
; The BID_xxx values below are used to set the initial values of
|
||||
; the BPBIOS bank registers (see def-ww-xxx.lib and HB_SELMEM in
|
||||
; hbios.z80). The running values of the BPBIOS bank registers (TPABNK,
|
||||
; SYSBNK, etc.) are set to absolute HBIOS bank ids in hbios.z80 during
|
||||
; startup.
|
||||
;
|
||||
BID_RAMD EQU -16 ; 90h - 16 = 80h
|
||||
BID_RAMM EQU -9 ; 90h - 9 = 87h
|
||||
BID_SYS EQU -4 ; 90h - 4 = 8Ch
|
||||
BID_HB EQU -3 ; 90h - 3 = 8Dh
|
||||
BID_USR EQU -2 ; 90h - 2 = 8Eh
|
||||
BID_COM EQU -1 ; 90h - 1 = 8Fh
|
||||
; The values below are expressed as an offset from the ending HBIOS
|
||||
; RAM bank id. They map to HBIOS bank ids
|
||||
; by subtracting from the ending HBIOS bank id (N). HBIOS RAM bank ids
|
||||
; start at 80h. The ending HBIOS bank id is (80h + RAM banks). The
|
||||
; typical layout assumes 16 banks of RAM starting at HBIOS bank id 80h
|
||||
; and ending at bank id 90h (N = 90h).
|
||||
;
|
||||
; BPBIOS HBIOS (TYPICAL)
|
||||
; -------------------------------------- ---------------
|
||||
; <HBIOS> 80h (80h)
|
||||
; <RAMD> 81h (81h)
|
||||
; <RAMM> N - 5 (8Bh)
|
||||
BID_BUF EQU -4 ; BNK3 -> RAMBNK N - 4 (8Ch)
|
||||
BID_SYS EQU -3 ; BNK2 -> SYSBNK N - 3 (8Dh)
|
||||
BID_USR EQU -2 ; BNK0 -> TPABNK N - 2 (8Eh)
|
||||
BID_COM EQU -1 ; BNK1 -> N - 1 (8Fh)
|
||||
;
|
||||
HB_EI MACRO
|
||||
EI
|
||||
|
||||
@@ -4,7 +4,7 @@ setlocal
|
||||
:: call BuildDoc || exit /b
|
||||
call BuildProp || exit /b
|
||||
call BuildShared || exit /b
|
||||
:: call BuildBP || exit /b
|
||||
call BuildBP || exit /b
|
||||
call BuildImages || exit /b
|
||||
call BuildROM %* || exit /b
|
||||
call BuildZRC || exit /b
|
||||
|
||||
@@ -30,7 +30,9 @@ header-includes:
|
||||
{\scshape \bfseries \fontsize{48pt}{56pt} \selectfont $doc_product$ \par}
|
||||
{\bfseries \fontsize{32pt}{36pt} \selectfont $doc_title$ \par}
|
||||
\vspace{24pt}
|
||||
{\huge $doc_ver$ \\ $doc_date$ \par}
|
||||
{\huge $doc_ver$ \par}
|
||||
\vspace{12pt}
|
||||
{\large Updated $doc_date$ \par}
|
||||
\vspace{24pt}
|
||||
{\large \itshape $doc_orgname$ \\ \href{http://$doc_orgurl$}{$doc_orgurl$} \par}
|
||||
\vspace{12pt}
|
||||
|
||||
@@ -10,14 +10,23 @@ A wide variety of platforms are supported including those
|
||||
produced by these developer communities:
|
||||
|
||||
* [RetroBrew Computers](https://www.retrobrewcomputers.org)
|
||||
* [RC2014](https://rc2014.co.uk), [RC2014-Z80](https://groups.google.com/g/rc2014-z80)
|
||||
* [retro-comp](https://groups.google.com/forum/#!forum/retro-comp)
|
||||
(<https://www.retrobrewcomputers.org>)
|
||||
* [RC2014](https://rc2014.co.uk) (<https://rc2014.co.uk>), \
|
||||
[RC2014-Z80](https://groups.google.com/g/rc2014-z80)
|
||||
(<https://groups.google.com/g/rc2014-z80>)
|
||||
* [Retro Computing](https://groups.google.com/g/retro-comp)
|
||||
(<https://groups.google.com/g/retro-comp>)
|
||||
* [Small Computer Central](https://smallcomputercentral.com/)
|
||||
(<https://smallcomputercentral.com/>)
|
||||
|
||||
A complete list of the currently supported platforms is found in the
|
||||
[Installation] section.
|
||||
|
||||
General features include:
|
||||
|
||||
* Z80 Family CPUs including Z80, Z180, and Z280
|
||||
* Banked memory services for several banking designs
|
||||
* Disk drivers for RAM, ROM, Floppy, IDE, CF, and SD
|
||||
* Disk drivers for RAM, ROM, Floppy, IDE ATA/ATAPI, CF, SD, USB, Zip, Iomega
|
||||
* Serial drivers including UART (16550-like), ASCI, ACIA, SIO
|
||||
* Video drivers including TMS9918, SY6545, MOS8563, HD6445
|
||||
* Keyboard (PS/2) drivers via VT8242 or PPI interfaces
|
||||
@@ -34,12 +43,12 @@ ROM firmware itself:
|
||||
* ROM BASIC (Nascom BASIC and Tasty BASIC)
|
||||
* ROM Forth
|
||||
|
||||
A dynamic disk drive letter assignment mechanism allows mapping
|
||||
operating system drive letters to any available disk media.
|
||||
Additionally, mass storage devices (IDE Disk, CF Card, SD Card) support
|
||||
the use of multiple slices (up to 256 per device). Each slice contains
|
||||
a complete CP/M filesystem and can be mapped independently to any
|
||||
drive letter. This overcomes the inherent size limitations in legacy
|
||||
A dynamic disk drive letter assignment mechanism allows mapping
|
||||
operating system drive letters to any available disk media.
|
||||
Additionally, mass storage devices (IDE Disk, CF Card, SD Card, etc.)
|
||||
support the use of multiple slices (up to 256 per device). Each slice
|
||||
contains a complete CP/M filesystem and can be mapped independently to
|
||||
any drive letter. This overcomes the inherent size limitations in legacy
|
||||
OSes and allows up to 2GB of accessible storage on a single device.
|
||||
|
||||
The pre-built ROM firmware images are generally suitable for most
|
||||
@@ -61,7 +70,7 @@ By design, RomWBW isolates all of the hardware specific functions in
|
||||
the ROM chip itself. The ROM provides a hardware abstraction layer
|
||||
such that all of the operating systems and applications on a disk
|
||||
will run on any RomWBW-based system. To put it simply, you can take
|
||||
a disk (or CF/SD Card) and move it between systems transparently.
|
||||
a disk (or CF/SD/USB Card) and move it between systems transparently.
|
||||
|
||||
A tool is provided that allows you to access a FAT-12/16/32 filesystem.
|
||||
The FAT filesystem may be coresident on the same disk media as RomWBW
|
||||
@@ -70,18 +79,19 @@ OSes such as Windows, MacOS, and Linux very easy.
|
||||
|
||||
# Acquiring RomWBW
|
||||
|
||||
The [RomWBW Repository](https://github.com/wwarthen/RomWBW) on GitHub is
|
||||
the official distribution location for all project source and
|
||||
documentation. The fully-built distribution releases are available on
|
||||
the [RomWBW Releases Page](https://github.com/wwarthen/RomWBW/releases)
|
||||
of the repository. On this page, you will normally see a Development
|
||||
Snapshot as well as recent stable releases. Unless you have a specific
|
||||
reason, I suggest you stick to the most recent stable release. Expand
|
||||
the "Assets" drop-down for the release you want to download, then select
|
||||
the asset named RomWBW-vX.X.X-Package.zip. The Package asset includes
|
||||
all pre-built ROM and Disk images as well as full source code. The other
|
||||
assets contain only source code and do not have the pre-built ROM or
|
||||
disk images.
|
||||
The [RomWBW Repository](https://github.com/wwarthen/RomWBW)
|
||||
(<https://github.com/wwarthen/RomWBW>) on GitHub is the official
|
||||
distribution location for all project source and documentation. The
|
||||
fully-built distribution releases are available on the
|
||||
[RomWBW Releases Page](https://github.com/wwarthen/RomWBW/releases)
|
||||
(<https://github.com/wwarthen/RomWBW/releases>) of the repository. On
|
||||
this page, you will normally see a Development Snapshot as well as
|
||||
recent stable releases. Unless you have a specific reason, I suggest you
|
||||
stick to the most recent stable release. Expand the "Assets" drop-down
|
||||
for the release you want to download, then select the asset named
|
||||
RomWBW-vX.X.X-Package.zip. The Package asset includes all pre-built ROM
|
||||
and Disk images as well as full source code. The other assets contain
|
||||
only source code and do not have the pre-built ROM or disk images.
|
||||
|
||||
All source code and distributions are maintained on GitHub. Code
|
||||
contributions are very welcome.
|
||||
|
||||
@@ -43,6 +43,33 @@ find this document far too basic. Others will find it lacking in many
|
||||
areas. I am doing my best and encourage you to provide constructive
|
||||
feedback.
|
||||
|
||||
`\clearpage`{=latex}
|
||||
|
||||
#### Conventions
|
||||
|
||||
##### Size Suffixes
|
||||
|
||||
Within this document and in RomWBW in general, the use of size
|
||||
suffixes KB, MB, GB, and TB refer to the binary variant as shown
|
||||
below. The modern suffixes (KiB, MiB, etc.) are not used here because
|
||||
they were not prevalent during the time that the RomWBW OSes were
|
||||
used. This keeps all of RomWBW and associated applications consistent.
|
||||
|
||||
| Suffix | Value | Meaning |
|
||||
|------------|-----------|----------------------------------------|
|
||||
| KB | 1024 | 1,024 bytes |
|
||||
| MB | 1024^2^ | 1,048,576 bytes |
|
||||
| GB | 1024^3^ | 1,073,741,824 bytes |
|
||||
| TB | 1024^4^ | 1,099,511,627,776 bytes |
|
||||
|
||||
##### Links and URLs
|
||||
|
||||
Many of the references in this document to Internet addresses (URLs)
|
||||
do not provide the address in the text. However, these links are
|
||||
embedded and "clickable" within the documents. Your PDF viewer should
|
||||
highlight these links in some manner (typically an alternate color
|
||||
or an underline).
|
||||
|
||||
# Overview
|
||||
|
||||
RomWBW software provides a complete, commercial quality
|
||||
@@ -52,9 +79,14 @@ A wide variety of platforms are supported including those
|
||||
produced by these developer communities:
|
||||
|
||||
* [RetroBrew Computers](https://www.retrobrewcomputers.org)
|
||||
* [RC2014](https://rc2014.co.uk), [RC2014-Z80](https://groups.google.com/g/rc2014-z80)
|
||||
* [retro-comp](https://groups.google.com/forum/#!forum/retro-comp)
|
||||
(<https://www.retrobrewcomputers.org>)
|
||||
* [RC2014](https://rc2014.co.uk) (<https://rc2014.co.uk>), \
|
||||
[RC2014-Z80](https://groups.google.com/g/rc2014-z80)
|
||||
(<https://groups.google.com/g/rc2014-z80>)
|
||||
* [Retro Computing](https://groups.google.com/g/retro-comp)
|
||||
(<https://groups.google.com/g/retro-comp>)
|
||||
* [Small Computer Central](https://smallcomputercentral.com/)
|
||||
(<https://smallcomputercentral.com/>)
|
||||
|
||||
A complete list of the currently supported platforms is found in the
|
||||
[Installation] section.
|
||||
@@ -118,18 +150,19 @@ OSes such as Windows, MacOS, and Linux very easy.
|
||||
|
||||
## Acquiring RomWBW
|
||||
|
||||
The [RomWBW Repository](https://github.com/wwarthen/RomWBW) on GitHub is
|
||||
the official distribution location for all project source and
|
||||
documentation. The fully-built distribution releases are available on
|
||||
the [RomWBW Releases Page](https://github.com/wwarthen/RomWBW/releases)
|
||||
of the repository. On this page, you will normally see a Development
|
||||
Snapshot as well as recent stable releases. Unless you have a specific
|
||||
reason, I suggest you stick to the most recent stable release. Expand
|
||||
the "Assets" drop-down for the release you want to download, then select
|
||||
the asset named RomWBW-vX.X.X-Package.zip. The Package asset includes
|
||||
all pre-built ROM and Disk images as well as full source code. The other
|
||||
assets contain only source code and do not have the pre-built ROM or
|
||||
disk images.
|
||||
The [RomWBW Repository](https://github.com/wwarthen/RomWBW)
|
||||
(<https://github.com/wwarthen/RomWBW>) on GitHub is the official
|
||||
distribution location for all project source and documentation. The
|
||||
fully-built distribution releases are available on the
|
||||
[RomWBW Releases Page](https://github.com/wwarthen/RomWBW/releases)
|
||||
(<https://github.com/wwarthen/RomWBW/releases>) of the repository. On
|
||||
this page, you will normally see a Development Snapshot as well as
|
||||
recent stable releases. Unless you have a specific reason, I suggest you
|
||||
stick to the most recent stable release. Expand the "Assets" drop-down
|
||||
for the release you want to download, then select the asset named
|
||||
RomWBW-vX.X.X-Package.zip. The Package asset includes all pre-built ROM
|
||||
and Disk images as well as full source code. The other assets contain
|
||||
only source code and do not have the pre-built ROM or disk images.
|
||||
|
||||
All source code and distributions are maintained on GitHub. Code
|
||||
contributions are very welcome.
|
||||
@@ -277,7 +310,8 @@ your hardware provider's documentation for details. A null-modem
|
||||
connection may be required. Set the baud rate as indicated in the table
|
||||
above. Set the line characteristics to 8 data bits, 1 stop bit, no
|
||||
parity, and no flow control. If possible, select ANSI or VT-100 terminal
|
||||
emulation.
|
||||
emulation. Hardware flow control is not required for terminal
|
||||
operation, but may be necessary for [Serial Port Transfers].
|
||||
|
||||
RomWBW will automatically attempt to detect and support typical add-on
|
||||
components for each of the systems supported. More information on the
|
||||
@@ -798,7 +832,8 @@ Sound 0 SND0: AY-3-8910 3+1 CHANNELS
|
||||
|
||||
The 'R' command within the Boot Loader performs a software reset of
|
||||
the system. The system will perform a startup just like powering
|
||||
up or pressing the hardware reset button.
|
||||
up or pressing the hardware reset button (although the hardware is
|
||||
not physically reset).
|
||||
|
||||
There is generally no need to do this, but it can be convenient when
|
||||
you want to see the boot messages again or ensure your system is in
|
||||
@@ -3434,11 +3469,11 @@ users. All required build tools (compilers, assemblers, etc.) are
|
||||
included in the distribution, so it is not necessary to setup a build
|
||||
environment on your computer.
|
||||
|
||||
RomWBW can be built on modern Windows, Linux, or MacOS computers. The
|
||||
process for building a custom ROM is documented in the ReadMe.txt file
|
||||
in the Source directory of the distribution. Any modern version of
|
||||
Windows, MacOS, or Linux released in the last 10 years should be able
|
||||
to run the build process.
|
||||
RomWBW can be built on modern Windows, Linux, or MacOS computers. The
|
||||
process for building a custom ROM is documented in the ReadMe.txt file
|
||||
in the Source directory of the distribution. Any modern version of
|
||||
Windows (32-bit or 64-bit), MacOS, or Linux released in the last 10
|
||||
years should be able to run the build process.
|
||||
|
||||
For those who are interested in more than basic system customization,
|
||||
note that all source code is provided (including the operating
|
||||
|
||||
@@ -65,11 +65,11 @@ SKZENABLE .EQU FALSE ; ENABLE SERGEY'S Z80-512K FEATURES
|
||||
;
|
||||
WDOGMODE .EQU WDOG_NONE ; WATCHDOG MODE: WDOG_[NONE|EZZ80|SKZ]
|
||||
;
|
||||
FPLED_ENABLE .EQU FALSE ; FP: ENABLES FRONT PANEL LEDS
|
||||
FPLED_IO .EQU $00 ; FP: PORT ADDRESS FOR FP LEDS
|
||||
FPLED_DSKACT .EQU FALSE ; FP: ENABLES DISK I/O ACTIVITY ON FP LEDS
|
||||
FPSW_ENABLE .EQU FALSE ; FP: ENABLES FRONT PANEL SWITCHES
|
||||
FPSW_IO .EQU $00 ; FP: PORT ADDRESS FOR FP SWITCHES
|
||||
FPLED_ENABLE .EQU TRUE ; FP: ENABLES FRONT PANEL LEDS
|
||||
FPLED_IO .EQU $42 ; FP: PORT ADDRESS FOR FP LEDS
|
||||
FPLED_DSKACT .EQU TRUE ; FP: ENABLES DISK I/O ACTIVITY ON FP LEDS
|
||||
FPSW_ENABLE .EQU TRUE ; FP: ENABLES FRONT PANEL SWITCHES
|
||||
FPSW_IO .EQU $42 ; FP: PORT ADDRESS FOR FP SWITCHES
|
||||
;
|
||||
DIAGLVL .EQU DL_CRITICAL ; ERROR LEVEL REPORTING
|
||||
;
|
||||
|
||||
@@ -1,8 +1,9 @@
|
||||
@echo off
|
||||
setlocal
|
||||
|
||||
::call BuildDisk.cmd bp hd wbw_hd512 || exit /b
|
||||
::goto :eof
|
||||
:: call BuildDisk.cmd bp hd wbw_hd1k
|
||||
:: copy /b hd1k_prefix.dat + ..\..\Binary\hd1k_bp.img + ..\..\Binary\hd1k_cpm22.img + ..\..\Binary\hd1k_zsdos.img + ..\..\Binary\hd1k_nzcom.img + ..\..\Binary\hd1k_cpm3.img + ..\..\Binary\hd1k_zpm3.img + ..\..\Binary\hd1k_ws4.img ..\..\Binary\hd1k_combo_bp.img || exit /b
|
||||
:: goto :eof
|
||||
|
||||
echo.
|
||||
echo Building Floppy Disk Images...
|
||||
@@ -42,8 +43,6 @@ call BuildDisk.cmd bascomp hd wbw_hd512 || exit /b
|
||||
call BuildDisk.cmd fortran hd wbw_hd512 || exit /b
|
||||
call BuildDisk.cmd games hd wbw_hd512 || exit /b
|
||||
|
||||
if exist ..\BPBIOS\bpbio-ww.rel call BuildDisk.cmd bp hd wbw_hd512 || exit /b
|
||||
|
||||
echo.
|
||||
echo Building Combo Disk (512 directory entry format) Image...
|
||||
copy /b ..\..\Binary\hd512_cpm22.img + ..\..\Binary\hd512_zsdos.img + ..\..\Binary\hd512_nzcom.img + ..\..\Binary\hd512_cpm3.img + ..\..\Binary\hd512_zpm3.img + ..\..\Binary\hd512_ws4.img ..\..\Binary\hd512_combo.img || exit /b
|
||||
@@ -67,7 +66,7 @@ call BuildDisk.cmd bascomp hd wbw_hd1k || exit /b
|
||||
call BuildDisk.cmd fortran hd wbw_hd1k || exit /b
|
||||
call BuildDisk.cmd games hd wbw_hd1k || exit /b
|
||||
|
||||
if exist ..\BPBIOS\bpbio-ww.rel call BuildDisk.cmd bp hd wbw_hd1k || exit /b
|
||||
if exist ..\BPBIOS\bp*.rel call BuildDisk.cmd bp hd wbw_hd1k || exit /b
|
||||
|
||||
copy hd1k_prefix.dat ..\..\Binary\ || exit /b
|
||||
|
||||
|
||||
@@ -19,7 +19,7 @@ HD1KIMGS = hd1k_cpm22.img hd1k_zsdos.img hd1k_nzcom.img \
|
||||
HD1KXIMGS = hd1k_z80asm.img hd1k_aztecc.img hd1k_hitechc.img \
|
||||
hd1k_bascomp.img hd1k_fortran.img hd1k_games.img \
|
||||
hd1k_tpascal.img hd1k_qpm.img hd1k_blank.img
|
||||
# HD1KIMGS += hd1k_bp.img
|
||||
HD1KXIMGS += hd1k_bp.img
|
||||
|
||||
HD512PREFIX =
|
||||
HD1KPREFIX = hd1k_prefix.dat
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
.ONESHELL:
|
||||
.SHELLFLAGS = -cex
|
||||
|
||||
all: prop shared images rom zrc z1rcc zzrcc
|
||||
all: prop shared bp images rom zrc z1rcc zzrcc
|
||||
|
||||
doc:
|
||||
$(MAKE) --directory Doc $(ACTION)
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
#DEFINE RMN 4
|
||||
#DEFINE RUP 0
|
||||
#DEFINE RTP 0
|
||||
#DEFINE BIOSVER "3.4.0-dev.26"
|
||||
#DEFINE BIOSVER "3.4.0-dev.30"
|
||||
#define rmj RMJ
|
||||
#define rmn RMN
|
||||
#define rup RUP
|
||||
|
||||
@@ -3,5 +3,5 @@ rmn equ 4
|
||||
rup equ 0
|
||||
rtp equ 0
|
||||
biosver macro
|
||||
db "3.4.0-dev.26"
|
||||
db "3.4.0-dev.30"
|
||||
endm
|
||||
|
||||
Reference in New Issue
Block a user