mirror of
https://github.com/wwarthen/RomWBW.git
synced 2026-02-06 22:43:15 -06:00
Compare commits
6 Commits
v3.1.1-pre
...
v3.1.1-pre
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
aceef15481 | ||
|
|
d4ca3de40f | ||
|
|
f0def03d0e | ||
|
|
27935123cf | ||
|
|
aa93eb62f2 | ||
|
|
94c32c9fd0 |
@@ -62,6 +62,8 @@ Version 3.1.1
|
||||
- WBW: ZPMLDR and ZPM3 fixes, credit to Lars Nelson for finding ZPM3 source!
|
||||
- DDW: Add support for MBC sound card
|
||||
- WBW: Add support for "romless" booting
|
||||
- L?N: Fixes for ZCPR-D&J (buffer overflow, default drive/user)
|
||||
- J?P: Add support for DS1501 RTC
|
||||
|
||||
Version 3.1
|
||||
-----------
|
||||
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
3
Makefile
3
Makefile
@@ -6,6 +6,7 @@ clean:
|
||||
$(MAKE) --directory Tools clean
|
||||
$(MAKE) --directory Source clean
|
||||
$(MAKE) --directory Binary clean
|
||||
rm -f make.log
|
||||
|
||||
clobber: clean
|
||||
|
||||
@@ -13,6 +14,6 @@ diff:
|
||||
$(MAKE) --directory Source diff
|
||||
|
||||
dist:
|
||||
$(MAKE) ROM_PLATFORM=dist
|
||||
$(MAKE) ROM_PLATFORM=dist 2>&1 | tee make.log
|
||||
$(MAKE) --directory Source clean
|
||||
$(MAKE) --directory Tools clean
|
||||
|
||||
17
ReadMe.md
17
ReadMe.md
@@ -3,7 +3,7 @@
|
||||
## Z80/Z180 System Software
|
||||
|
||||
Version 3.1 Pre-release
|
||||
21 Mar 2022
|
||||
09 Jul 2022
|
||||
|
||||
Wayne Warthen <wwarthen@gmail.com>
|
||||
|
||||
@@ -418,7 +418,7 @@ therefore, globally available.
|
||||
|
||||
Some custom applications do not fit on the ROM disk. They are found on
|
||||
the disk image files or the individual files can be found in the
|
||||
Binary\\Apps directory of the distribution.
|
||||
Binary\Apps directory of the distribution.
|
||||
|
||||
| Application | Description |
|
||||
|-------------|-------------------------------------------------------------|
|
||||
@@ -924,7 +924,7 @@ documents.
|
||||
Note that the build scripts for RomWBW create the default disk images
|
||||
supplied with RomWBW. It is relatively easy to customize the contents of
|
||||
the disk images that are part of RomWBW. This is described in more
|
||||
detail in the Source\\Images directory of the distribution.
|
||||
detail in the Source\Images directory of the distribution.
|
||||
|
||||
## FAT Filesystem Transfers
|
||||
|
||||
@@ -945,7 +945,7 @@ however. Longer filenames will show up as a truncated version.
|
||||
|
||||
The `FAT` application is not on your ROM disk because it is too large to
|
||||
fit. You will find it on all of the pre-built disk images as well as in
|
||||
the Binary\\Apps directory of the distribution.
|
||||
the Binary\Apps directory of the distribution.
|
||||
|
||||
For advanced users, it is possible to create a hybrid disk that contains
|
||||
CP/M slices at the beginning and a FAT filesystem after. Such a hybrid
|
||||
@@ -953,7 +953,7 @@ disk can be used to boot an operating system and still have access to
|
||||
FAT files on the FAT portion of the disk. David Reese has prepared a
|
||||
document describing how to do this. It is called
|
||||
“SC126_How-To_No_2\_Preparing_an_SD_Card_for_Use_with_SC126_Rev_1-5.pdf”
|
||||
and can be found in the Doc\\Contrib directory of the distribution.
|
||||
and can be found in the Doc\Contrib directory of the distribution.
|
||||
|
||||
# Startup Command Processing
|
||||
|
||||
@@ -1164,7 +1164,7 @@ system on your disk.
|
||||
CP/M 3 uses a multi-step boot process involving multiple files. The
|
||||
CP/M 3 boot files are not included on the ROM disk due to space
|
||||
constraints. You will need to transfer the files to your system from
|
||||
the RomWBW distribution directory Binary\\CPM3.
|
||||
the RomWBW distribution directory Binary\CPM3.
|
||||
|
||||
After this is done, you will need to use `SYSCOPY` to place the CP/M
|
||||
3 loader image on the boot tracks of all CP/M 3 boot disks/slices.
|
||||
@@ -1182,7 +1182,7 @@ system on your disk.
|
||||
ZPM3 uses a multi-step boot process involving multiple files. The
|
||||
ZPM3 boot files are not included on the ROM disk due to space
|
||||
constraints. You will need to transfer the files to your system from
|
||||
the RomWBW distribution directory Binary\\ZPM3.
|
||||
the RomWBW distribution directory Binary\ZPM3.
|
||||
|
||||
After this is done, you will need to use `SYSCOPY` to place the ZPM3
|
||||
loader image on the boot tracks of all ZPM3 boot disks/slices. The
|
||||
@@ -1225,8 +1225,7 @@ For example: `B>COPY ASSIGN.COM C:`
|
||||
Some RomWBW custom applications are too large to fit on the ROM disk. If
|
||||
you are using any of these you will need to transfer them to your system
|
||||
and then update all copies. These applications are found in the
|
||||
Binary\\Apps directory of the distribution and in all of the disk
|
||||
images.
|
||||
Binary\Apps directory of the distribution and in all of the disk images.
|
||||
|
||||
- FAT.COM
|
||||
- TUNE.COM
|
||||
|
||||
82
ReadMe.txt
82
ReadMe.txt
@@ -1,6 +1,6 @@
|
||||
RomWBW Getting Started
|
||||
Wayne Warthen (mailto:wwarthen@gmail.com)
|
||||
21 Mar 2022
|
||||
09 Jul 2022
|
||||
|
||||
|
||||
|
||||
@@ -17,7 +17,7 @@ RomWBW
|
||||
Z80/Z180 System Software
|
||||
|
||||
Version 3.1 Pre-release
|
||||
21 Mar 2022
|
||||
09 Jul 2022
|
||||
|
||||
Wayne Warthen wwarthen@gmail.com
|
||||
|
||||
@@ -213,15 +213,23 @@ disk devices.
|
||||
|
||||
The following ROM applications are available at the boot loader prompt:
|
||||
|
||||
Application
|
||||
-------------- --------------------------------------------------------
|
||||
Monitor Z80 system debug monitor w/ Intel Hex loader
|
||||
Forth Brad Rodriguez’s ANSI compatible Forth language
|
||||
Basic Nascom 8K BASIC language
|
||||
Tasty BASIC Dimitri Theuling’s Tiny BASIC implementation
|
||||
Play A simple video game (requires ANSI terminal emulation)
|
||||
Network Boot Boot through Wiznet MT011 device
|
||||
Flash Update Upload and flash a new ROMWBW image using xmodem
|
||||
--------------------------------------------------------------------------
|
||||
Application
|
||||
------------- ------------------------------------------------------------
|
||||
Monitor Z80 system debug monitor w/ Intel Hex loader
|
||||
|
||||
Forth Brad Rodriguez’s ANSI compatible Forth language
|
||||
|
||||
Basic Nascom 8K BASIC language
|
||||
|
||||
Tasty BASIC Dimitri Theuling’s Tiny BASIC implementation
|
||||
|
||||
Play A simple video game (requires ANSI terminal emulation)
|
||||
|
||||
Network Boot Boot through Wiznet MT011 device
|
||||
|
||||
Flash Update Upload and flash a new ROMWBW image using xmodem
|
||||
--------------------------------------------------------------------------
|
||||
|
||||
In general, the command to exit these applications and restart the
|
||||
system is BYE. The exceptions are the Monitor which uses B and Play
|
||||
@@ -467,11 +475,15 @@ Some custom applications do not fit on the ROM disk. They are found on
|
||||
the disk image files or the individual files can be found in the
|
||||
Binary\Apps directory of the distribution.
|
||||
|
||||
--------------------------------------------------------------------------
|
||||
Application Description
|
||||
------------- -------------------------------------------------------------
|
||||
------------- ------------------------------------------------------------
|
||||
TUNE Play .PT2, .PT3, .MYM audio files.
|
||||
|
||||
FAT Access MS-DOS FAT filesystems from RomWBW (based on FatFs).
|
||||
|
||||
INTTEST Test interrupt vector hooking.
|
||||
--------------------------------------------------------------------------
|
||||
|
||||
Additional documentation on all of these applications can be found in
|
||||
“RomWBW Applications.pdf” in the Doc directory of the distribution.
|
||||
@@ -667,14 +679,21 @@ The following table shows the disk image files available. Note that the
|
||||
images in the “Hard” column are fine for use on CF Cards, SD Cards, as
|
||||
well as real spinning hard disks.
|
||||
|
||||
Floppy Hard Description
|
||||
-------------- -------------- ------------------------------
|
||||
fd_cpm22.img hd_cpm22.img DRI CP/M 2.2 boot disk
|
||||
fd_zsdos.img hd_zsdos.img ZSDOS 1.1 boot disk
|
||||
fd_nzcom.img hd_nzcom.img NZCOM boot disk
|
||||
fd_cpm3.img hd_cpm3.img DRI CP/M 3 boot disk
|
||||
fd_zpm3.img hd_zpm3.img ZPM3 boot disk
|
||||
fd_ws4.img hd_ws4.img WordStar v4 application disk
|
||||
-----------------------------------------------------------------------
|
||||
Floppy Hard Description
|
||||
--------------- --------------- ---------------------------------------
|
||||
fd_cpm22.img hd_cpm22.img DRI CP/M 2.2 boot disk
|
||||
|
||||
fd_zsdos.img hd_zsdos.img ZSDOS 1.1 boot disk
|
||||
|
||||
fd_nzcom.img hd_nzcom.img NZCOM boot disk
|
||||
|
||||
fd_cpm3.img hd_cpm3.img DRI CP/M 3 boot disk
|
||||
|
||||
fd_zpm3.img hd_zpm3.img ZPM3 boot disk
|
||||
|
||||
fd_ws4.img hd_ws4.img WordStar v4 application disk
|
||||
-----------------------------------------------------------------------
|
||||
|
||||
In addition to the disk images above, there is also a special hard disk
|
||||
image called hd_combo.img. This image contains all of the images above,
|
||||
@@ -685,14 +704,21 @@ system options.
|
||||
|
||||
This is the layout of the hd_combo disk image:
|
||||
|
||||
Slice Description
|
||||
--------- ------------------------------
|
||||
Slice 0 DRI CP/M 2.2 boot disk
|
||||
Slice 1 ZSDOS 1.1 boot disk
|
||||
Slice 2 NZCOM boot disk
|
||||
Slice 3 DRI CP/M 3 boot disk
|
||||
Slice 4 ZPM3 boot disk
|
||||
Slice 5 WordStar v4 application disk
|
||||
------------------------------------------------------------------------
|
||||
Slice Description
|
||||
------- ----------------------------------------------------------------
|
||||
Slice 0 DRI CP/M 2.2 boot disk
|
||||
|
||||
Slice 1 ZSDOS 1.1 boot disk
|
||||
|
||||
Slice 2 NZCOM boot disk
|
||||
|
||||
Slice 3 DRI CP/M 3 boot disk
|
||||
|
||||
Slice 4 ZPM3 boot disk
|
||||
|
||||
Slice 5 WordStar v4 application disk
|
||||
------------------------------------------------------------------------
|
||||
|
||||
Note that unlike the ROM firmware, you do not need to choose a disk
|
||||
image specific to your hardware. Because the RomWBW firmware provides a
|
||||
|
||||
14
Readme.unix
14
Readme.unix
@@ -34,13 +34,11 @@ By default, this will generate all of the standard configurations of
|
||||
RomWBW for all platforms. If you just want to build the ROM for a
|
||||
specific platform and configuration you can use
|
||||
|
||||
make ROM_PLATFORM=<platform> ROM_CONFIG=<config> [ROMSIZE=<size>]
|
||||
make ROM_PLATFORM=<platform> ROM_CONFIG=<config>
|
||||
|
||||
where <platform> is one of the supported platforms such as SBC, RCZ80,
|
||||
etc. and <config> is a configuration of that platform. A ROM size may
|
||||
optionally be specified and must be one of 128, 256, 512, or 1024. It
|
||||
defaults to 512. For example, to build the "126" configuration of
|
||||
the "SCZ180" platform:
|
||||
etc. and <config> is a configuration of that platform. For example,
|
||||
to build the "126" configuration of the "SCZ180" platform:
|
||||
|
||||
make ROM_PLATFORM=SCZ180 ROM_CONFIG=126
|
||||
|
||||
@@ -77,7 +75,7 @@ running. To disable this feature:
|
||||
DISCLAIMER: You do this at your own risk. I highly recommend that you
|
||||
return the settings back to normal immediately after doing a build.
|
||||
|
||||
Heavy use is made of make's include facility and pattern rules. the
|
||||
Heavy use is made of make's include facility and pattern rules. The
|
||||
master rule set is in Tools/Makefile.inc. Changes here will affect
|
||||
almost every Makefile, and where exceptions are needed, the overrides
|
||||
are applied in the lower Makefiles.
|
||||
@@ -101,10 +99,10 @@ Credit:
|
||||
hacked to do case-insensitivity. These are not marked, and are
|
||||
not extensive.
|
||||
|
||||
zx is from the distributed version, and also has local hacks
|
||||
zxcc is from the distributed version, and also has local hacks
|
||||
for case insensitivity.
|
||||
|
||||
Both zx and cpmtools ship with an overly complicated makefile
|
||||
Both zxcc and cpmtools ship with an overly complicated makefile
|
||||
generation system and this is ignored.
|
||||
|
||||
This whole Linux build framework is the work of Curt Mayer,
|
||||
|
||||
BIN
Source/CPM22/License.pdf
Normal file
BIN
Source/CPM22/License.pdf
Normal file
Binary file not shown.
BIN
Source/CPM3/License.pdf
Normal file
BIN
Source/CPM3/License.pdf
Normal file
Binary file not shown.
@@ -4,7 +4,7 @@ setlocal
|
||||
if "%1" == "dist" goto :dist
|
||||
|
||||
::
|
||||
:: Build [<platform> [<config> [<romsize> [<romname>]]]]
|
||||
:: Build [<platform> [<config> [<romname>]]]
|
||||
::
|
||||
|
||||
set TOOLS=../../Tools
|
||||
@@ -28,11 +28,21 @@ PowerShell -ExecutionPolicy Unrestricted .\Build.ps1 %* || exit /b
|
||||
::
|
||||
:: Below, we process the command file created by the PowerShell script.
|
||||
:: This sets the environment variables: Platform, Config, ROMName,
|
||||
:: ROMSize, & CPUType.
|
||||
:: & CPUType.
|
||||
::
|
||||
|
||||
call build_env.cmd
|
||||
|
||||
::
|
||||
:: Create a small app that is used to export key build variables of the build.
|
||||
:: Then run the app to output a file with the variables. Finally, read the
|
||||
:: file into variables usable in this batch file.
|
||||
::
|
||||
|
||||
tasm -t80 -g3 -dCMD hbios_env.asm hbios_env.com hbios_env.lst || exit /b
|
||||
zxcc hbios_env >hbios_env.cmd
|
||||
call hbios_env.cmd
|
||||
|
||||
::
|
||||
:: Start of the actual build process for a given ROM.
|
||||
::
|
||||
@@ -183,34 +193,34 @@ goto :eof
|
||||
|
||||
:dist
|
||||
|
||||
call Build SBC std 512 || exit /b
|
||||
call Build SBC simh 512 || exit /b
|
||||
call Build MBC std 512 || exit /b
|
||||
call Build ZETA std 512 || exit /b
|
||||
call Build ZETA2 std 512 || exit /b
|
||||
call Build N8 std 512 || exit /b
|
||||
call Build MK4 std 512 || exit /b
|
||||
call Build RCZ80 std 512 || exit /b
|
||||
call Build RCZ80 skz 512 || exit /b
|
||||
call Build RCZ80 kio 512 || exit /b
|
||||
call Build RCZ80 mt 512 || exit /b
|
||||
call Build RCZ80 duart 512 || exit /b
|
||||
call Build RCZ80 zrc 512 || exit /b
|
||||
call Build RCZ80 zrc_ram 0 || exit /b
|
||||
call Build RCZ180 ext 512 || exit /b
|
||||
call Build RCZ180 nat 512 || exit /b
|
||||
call Build RCZ280 ext 512 || exit /b
|
||||
call Build RCZ280 nat 512 || exit /b
|
||||
call Build RCZ280 nat_zz 512 || exit /b
|
||||
call Build RCZ280 nat_zzr 256 || exit /b
|
||||
call Build SCZ180 126 512 || exit /b
|
||||
call Build SCZ180 130 512 || exit /b
|
||||
call Build SCZ180 131 512 || exit /b
|
||||
call Build SCZ180 140 512 || exit /b
|
||||
call Build EZZ80 std 512 || exit /b
|
||||
call Build EZZ80 tz80 512 || exit /b
|
||||
call Build DYNO std 512 || exit /b
|
||||
call Build UNA std 512 || exit /b
|
||||
call Build RPH std 512 || exit /b
|
||||
call Build SBC std || exit /b
|
||||
call Build SBC simh || exit /b
|
||||
call Build MBC std || exit /b
|
||||
call Build ZETA std || exit /b
|
||||
call Build ZETA2 std || exit /b
|
||||
call Build N8 std || exit /b
|
||||
call Build MK4 std || exit /b
|
||||
call Build RCZ80 std || exit /b
|
||||
call Build RCZ80 skz || exit /b
|
||||
call Build RCZ80 kio || exit /b
|
||||
call Build RCZ80 mt || exit /b
|
||||
call Build RCZ80 duart || exit /b
|
||||
call Build RCZ80 zrc || exit /b
|
||||
call Build RCZ80 zrc_ram || exit /b
|
||||
call Build RCZ180 ext || exit /b
|
||||
call Build RCZ180 nat || exit /b
|
||||
call Build RCZ280 ext || exit /b
|
||||
call Build RCZ280 nat || exit /b
|
||||
call Build RCZ280 nat_zz || exit /b
|
||||
call Build RCZ280 nat_zzr || exit /b
|
||||
call Build SCZ180 126 || exit /b
|
||||
call Build SCZ180 130 || exit /b
|
||||
call Build SCZ180 131 || exit /b
|
||||
call Build SCZ180 140 || exit /b
|
||||
call Build EZZ80 std || exit /b
|
||||
call Build EZZ80 tz80 || exit /b
|
||||
call Build DYNO std || exit /b
|
||||
call Build UNA std || exit /b
|
||||
call Build RPH std || exit /b
|
||||
|
||||
goto :eof
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
param([string]$Platform = "", [string]$Config = "", [int]$RomSize = 512, [string]$ROMName = "")
|
||||
param([string]$Platform = "", [string]$Config = "", [string]$ROMName = "")
|
||||
|
||||
# If a PowerShell exception occurs, just stop the script immediately.
|
||||
$ErrorAction = 'Stop'
|
||||
@@ -67,19 +67,6 @@ while ($true)
|
||||
$Config = (Read-Host -prompt "Configuration").Trim()
|
||||
}
|
||||
|
||||
#
|
||||
# Establish the ROM size (in KB). It may have been passed in on the command line. Validate
|
||||
# $RomSize and loop requesting a new value as long as it is not valid. The valid ROM sizes
|
||||
# are just hard-coded for now. The ROM size does nothing more than determine the size of the
|
||||
# ROM disk portion of the ROM image.
|
||||
#
|
||||
|
||||
while ($true)
|
||||
{
|
||||
if (($RomSize -eq 0) -or ($RomSize -eq 128) -or ($RomSize -eq 256) -or ($RomSize -eq 512) -or ($RomSize -eq 1024)) {break}
|
||||
$RomSize = (Read-Host -prompt "ROM Size [0|128|256|512|1024]").Trim()
|
||||
}
|
||||
|
||||
#
|
||||
# TASM should be invoked with the proper CPU type. Below, the CPU type is inferred
|
||||
# from the platform.
|
||||
@@ -103,7 +90,7 @@ while ($ROMName -eq "")
|
||||
}
|
||||
|
||||
# Current date/time is queried here to be subsequently imbedded in image
|
||||
$TimeStamp = '"' + (Get-Date -Format 'yyyy-MM-dd') + '"'
|
||||
$TimeStamp = (Get-Date -Format 'yyyy-MM-dd')
|
||||
|
||||
#
|
||||
# Since TASM has no mechanism to include files dynamically based on variables, a file
|
||||
@@ -115,9 +102,8 @@ $TimeStamp = '"' + (Get-Date -Format 'yyyy-MM-dd') + '"'
|
||||
@"
|
||||
; RomWBW Configured for ${Platform} ${Config}, $(Get-Date -Format "s")
|
||||
;
|
||||
#DEFINE TIMESTAMP ${TimeStamp}
|
||||
;
|
||||
ROMSIZE .EQU ${ROMSize}
|
||||
#DEFINE TIMESTAMP "${TimeStamp}"
|
||||
#DEFINE CONFIG "${Platform}_${Config}"
|
||||
;
|
||||
#INCLUDE "${ConfigFile}"
|
||||
;
|
||||
@@ -134,6 +120,5 @@ ROMSIZE .EQU ${ROMSize}
|
||||
set Platform=${Platform}
|
||||
set Config=${Config}
|
||||
set ROMName=${ROMName}
|
||||
set ROMSize=${ROMSize}
|
||||
set CPUType=${CPUType}
|
||||
"@ | Out-File "build_env.cmd" -Encoding ASCII
|
||||
|
||||
@@ -6,38 +6,39 @@ set -e
|
||||
export ROM_PLATFORM
|
||||
export ROM_CONFIG
|
||||
export ROMSIZE
|
||||
export CPUFAM
|
||||
|
||||
if [ "${ROM_PLATFORM}" == "dist" ] ; then
|
||||
echo "!!!DISTRIBUTION BUILD!!!"
|
||||
ROM_PLATFORM="DYNO"; ROM_CONFIG="std"; ROMSIZE="512"; bash Build.sh
|
||||
ROM_PLATFORM="EZZ80"; ROM_CONFIG="std"; ROMSIZE="512"; bash Build.sh
|
||||
ROM_PLATFORM="EZZ80"; ROM_CONFIG="tz80"; ROMSIZE="512"; bash Build.sh
|
||||
ROM_PLATFORM="MK4"; ROM_CONFIG="std"; ROMSIZE="512"; bash Build.sh
|
||||
ROM_PLATFORM="N8"; ROM_CONFIG="std"; ROMSIZE="512"; bash Build.sh
|
||||
ROM_PLATFORM="RCZ180"; ROM_CONFIG="ext"; ROMSIZE="512"; bash Build.sh
|
||||
ROM_PLATFORM="RCZ180"; ROM_CONFIG="nat"; ROMSIZE="512"; bash Build.sh
|
||||
ROM_PLATFORM="RCZ280"; ROM_CONFIG="ext"; ROMSIZE="512"; bash Build.sh
|
||||
ROM_PLATFORM="RCZ280"; ROM_CONFIG="nat"; ROMSIZE="512"; bash Build.sh
|
||||
ROM_PLATFORM="RCZ280"; ROM_CONFIG="nat_zz"; ROMSIZE="512"; bash Build.sh
|
||||
ROM_PLATFORM="RCZ280"; ROM_CONFIG="nat_zzr"; ROMSIZE="256"; bash Build.sh
|
||||
ROM_PLATFORM="RCZ80"; ROM_CONFIG="kio"; ROMSIZE="512"; bash Build.sh
|
||||
ROM_PLATFORM="RCZ80"; ROM_CONFIG="mt"; ROMSIZE="512"; bash Build.sh
|
||||
ROM_PLATFORM="RCZ80"; ROM_CONFIG="duart"; ROMSIZE="512"; bash Build.sh
|
||||
ROM_PLATFORM="RCZ80"; ROM_CONFIG="std"; ROMSIZE="512"; bash Build.sh
|
||||
ROM_PLATFORM="RCZ80"; ROM_CONFIG="skz"; ROMSIZE="512"; bash Build.sh
|
||||
ROM_PLATFORM="RCZ80"; ROM_CONFIG="zrc"; ROMSIZE="512"; bash Build.sh
|
||||
ROM_PLATFORM="RCZ80"; ROM_CONFIG="zrc_ram"; ROMSIZE="0"; bash Build.sh
|
||||
ROM_PLATFORM="RPH"; ROM_CONFIG="std"; ROMSIZE="512"; bash Build.sh
|
||||
ROM_PLATFORM="SBC"; ROM_CONFIG="std"; ROMSIZE="512"; bash Build.sh
|
||||
ROM_PLATFORM="SBC"; ROM_CONFIG="simh"; ROMSIZE="512"; bash Build.sh
|
||||
ROM_PLATFORM="MBC"; ROM_CONFIG="std"; ROMSIZE="512"; bash Build.sh
|
||||
ROM_PLATFORM="SCZ180"; ROM_CONFIG="126"; ROMSIZE="512"; bash Build.sh
|
||||
ROM_PLATFORM="SCZ180"; ROM_CONFIG="130"; ROMSIZE="512"; bash Build.sh
|
||||
ROM_PLATFORM="SCZ180"; ROM_CONFIG="131"; ROMSIZE="512"; bash Build.sh
|
||||
ROM_PLATFORM="SCZ180"; ROM_CONFIG="140"; ROMSIZE="512"; bash Build.sh
|
||||
ROM_PLATFORM="UNA"; ROM_CONFIG="std"; ROMSIZE="512"; bash Build.sh
|
||||
ROM_PLATFORM="ZETA"; ROM_CONFIG="std"; ROMSIZE="512"; bash Build.sh
|
||||
ROM_PLATFORM="ZETA2"; ROM_CONFIG="std"; ROMSIZE="512"; bash Build.sh
|
||||
ROM_PLATFORM="DYNO"; ROM_CONFIG="std"; bash Build.sh
|
||||
ROM_PLATFORM="EZZ80"; ROM_CONFIG="std"; bash Build.sh
|
||||
ROM_PLATFORM="EZZ80"; ROM_CONFIG="tz80"; bash Build.sh
|
||||
ROM_PLATFORM="MK4"; ROM_CONFIG="std"; bash Build.sh
|
||||
ROM_PLATFORM="N8"; ROM_CONFIG="std"; bash Build.sh
|
||||
ROM_PLATFORM="RCZ180"; ROM_CONFIG="ext"; bash Build.sh
|
||||
ROM_PLATFORM="RCZ180"; ROM_CONFIG="nat"; bash Build.sh
|
||||
ROM_PLATFORM="RCZ280"; ROM_CONFIG="ext"; bash Build.sh
|
||||
ROM_PLATFORM="RCZ280"; ROM_CONFIG="nat"; bash Build.sh
|
||||
ROM_PLATFORM="RCZ280"; ROM_CONFIG="nat_zz"; bash Build.sh
|
||||
ROM_PLATFORM="RCZ280"; ROM_CONFIG="nat_zzr"; bash Build.sh
|
||||
ROM_PLATFORM="RCZ80"; ROM_CONFIG="kio"; bash Build.sh
|
||||
ROM_PLATFORM="RCZ80"; ROM_CONFIG="mt"; bash Build.sh
|
||||
ROM_PLATFORM="RCZ80"; ROM_CONFIG="duart"; bash Build.sh
|
||||
ROM_PLATFORM="RCZ80"; ROM_CONFIG="std"; bash Build.sh
|
||||
ROM_PLATFORM="RCZ80"; ROM_CONFIG="skz"; bash Build.sh
|
||||
ROM_PLATFORM="RCZ80"; ROM_CONFIG="zrc"; bash Build.sh
|
||||
ROM_PLATFORM="RCZ80"; ROM_CONFIG="zrc_ram"; bash Build.sh
|
||||
ROM_PLATFORM="RPH"; ROM_CONFIG="std"; bash Build.sh
|
||||
ROM_PLATFORM="SBC"; ROM_CONFIG="std"; bash Build.sh
|
||||
ROM_PLATFORM="SBC"; ROM_CONFIG="simh"; bash Build.sh
|
||||
ROM_PLATFORM="MBC"; ROM_CONFIG="std"; bash Build.sh
|
||||
ROM_PLATFORM="SCZ180"; ROM_CONFIG="126"; bash Build.sh
|
||||
ROM_PLATFORM="SCZ180"; ROM_CONFIG="130"; bash Build.sh
|
||||
ROM_PLATFORM="SCZ180"; ROM_CONFIG="131"; bash Build.sh
|
||||
ROM_PLATFORM="SCZ180"; ROM_CONFIG="140"; bash Build.sh
|
||||
ROM_PLATFORM="UNA"; ROM_CONFIG="std"; bash Build.sh
|
||||
ROM_PLATFORM="ZETA"; ROM_CONFIG="std"; bash Build.sh
|
||||
ROM_PLATFORM="ZETA2"; ROM_CONFIG="std"; bash Build.sh
|
||||
exit
|
||||
fi
|
||||
|
||||
@@ -59,19 +60,12 @@ done
|
||||
|
||||
CONFIGFILE=Config/${ROM_PLATFORM}_${ROM_CONFIG}.asm
|
||||
|
||||
if [ -z "${ROMSIZE}" ] ; then
|
||||
ROMSIZE="512"
|
||||
fi
|
||||
|
||||
while [ ! '(' "${ROMSIZE}" = 1024 -o "${ROMSIZE}" = 512 -o "${ROMSIZE}" = 256 -o "${ROMSIZE}" = 128 -o "${ROMSIZE}" = 0 ')' ] ; do
|
||||
echo -n "Romsize :"
|
||||
read ROMSIZE
|
||||
done
|
||||
|
||||
if [ -z "${ROMNAME}" ] ; then
|
||||
ROMNAME=${ROM_PLATFORM}_${ROM_CONFIG}
|
||||
fi
|
||||
|
||||
echo -e "\n\nBuilding $ROM_PLATFORM $ROM_CONFIG\n\n"
|
||||
|
||||
TIMESTAMP=$(date +%Y-%m-%d)
|
||||
|
||||
if [ "$1" = "-d" ] ; then
|
||||
@@ -86,19 +80,21 @@ fi
|
||||
|
||||
CONFIGFILE=Config/${ROM_PLATFORM}_${ROM_CONFIG}.asm
|
||||
|
||||
echo Building $ROMNAME for $ROM_PLATFORM $ROM_CONFIG $ROMSIZE
|
||||
|
||||
cat <<- EOF > build.inc
|
||||
; RomWBW Configured for ${ROM_PLATFORM} ${ROM_CONFIG} ${TIMESTAMP}
|
||||
;
|
||||
#DEFINE TIMESTAMP "${TIMESTAMP}"
|
||||
;
|
||||
ROMSIZE .EQU ${ROMSIZE}
|
||||
#DEFINE CONFIG "${ROM_PLATFORM}_${ROM_CONFIG}"
|
||||
;
|
||||
#INCLUDE "${CONFIGFILE}"
|
||||
;
|
||||
EOF
|
||||
|
||||
make hbios_env.sh
|
||||
source hbios_env.sh
|
||||
|
||||
echo Creating ${ROMSIZE}K ROM named ${ROMNAME}.rom
|
||||
|
||||
export OBJECTS
|
||||
OBJECTS="${ROMNAME}.rom"
|
||||
if [ "${ROM_PLATFORM}" != "UNA" ] ; then
|
||||
|
||||
@@ -14,3 +14,4 @@ if exist *.sys del *.sys
|
||||
if exist build.inc del build.inc
|
||||
if exist font*.asm del font*.asm
|
||||
if exist build_env.cmd del build_env.cmd
|
||||
if exist hbios_env.cmd del hbios_env.cmd
|
||||
|
||||
@@ -22,8 +22,6 @@
|
||||
; PLEASE REFER TO THE CUSTOM BUILD INSTRUCTIONS (README.TXT) IN THE SOURCE DIRECTORY (TWO
|
||||
; DIRECTORIES ABOVE THIS ONE).
|
||||
;
|
||||
#DEFINE PLATFORM_NAME "TINYZ80"
|
||||
;
|
||||
#include "cfg_ezz80.asm"
|
||||
;
|
||||
CRTACT .SET FALSE ; ACTIVATE CRT (VDU,CVDU,PROPIO,ETC) AT STARTUP
|
||||
|
||||
@@ -22,7 +22,6 @@
|
||||
; PLEASE REFER TO THE CUSTOM BUILD INSTRUCTIONS (README.TXT) IN THE SOURCE DIRECTORY (TWO
|
||||
; DIRECTORIES ABOVE THIS ONE).
|
||||
;
|
||||
#DEFINE PLATFORM_NAME "Multi Board Computer"
|
||||
#DEFINE BOOT_DEFAULT "H" ; DEFAULT BOOT LOADER CMD ON <CR> OR AUTO BOOT
|
||||
;
|
||||
#include "cfg_mbc.asm"
|
||||
|
||||
@@ -22,8 +22,6 @@
|
||||
; PLEASE REFER TO THE CUSTOM BUILD INSTRUCTIONS (README.TXT) IN THE SOURCE DIRECTORY (TWO
|
||||
; DIRECTORIES ABOVE THIS ONE).
|
||||
;
|
||||
#DEFINE PLATFORM_NAME "ZZ80MB"
|
||||
;
|
||||
#DEFINE BOOT_DEFAULT "H" ; DEFAULT BOOT LOADER CMD ON <CR> OR AUTO BOOT
|
||||
;
|
||||
#include "Config/RCZ280_nat.asm"
|
||||
|
||||
@@ -22,8 +22,6 @@
|
||||
; PLEASE REFER TO THE CUSTOM BUILD INSTRUCTIONS (README.TXT) IN THE SOURCE DIRECTORY (TWO
|
||||
; DIRECTORIES ABOVE THIS ONE).
|
||||
;
|
||||
#DEFINE PLATFORM_NAME "ZZRCC"
|
||||
;
|
||||
#DEFINE BOOT_DEFAULT "H" ; DEFAULT BOOT LOADER CMD ON <CR> OR AUTO BOOT
|
||||
;
|
||||
#include "Config/RCZ280_nat.asm"
|
||||
@@ -31,6 +29,7 @@
|
||||
CPUOSC .SET 14745600 ; CPU OSC FREQ IN MHZ
|
||||
;
|
||||
RAMSIZE .SET 256 ; SIZE OF RAM IN KB (MUST MATCH YOUR HARDWARE!!!)
|
||||
ROMSIZE .SET 256 ; SIZE OF ROM IN KB (MUST MATCH YOUR HARDWARE!!!)
|
||||
ROMSIZE_CHK .SET 256 ; ROMSIZE VALUE VEREIFICATION (0=DISABLED)
|
||||
;
|
||||
RAMLOC .SET 18 ; START OF RAM AS POWER OF 2 (2^N) IN PHYSICAL ADDRESS SPACE
|
||||
|
||||
@@ -24,8 +24,6 @@
|
||||
;
|
||||
#DEFINE BOOT_DEFAULT "H" ; DEFAULT BOOT LOADER CMD ON <CR> OR AUTO BOOT
|
||||
;
|
||||
#DEFINE PLATFORM_NAME "RC2014 (DUART)"
|
||||
;
|
||||
#include "Config/RCZ80_std.asm"
|
||||
;
|
||||
CRTACT .SET FALSE ; ACTIVATE CRT (VDU,CVDU,PROPIO,ETC) AT STARTUP
|
||||
|
||||
@@ -22,8 +22,6 @@
|
||||
; PLEASE REFER TO THE CUSTOM BUILD INSTRUCTIONS (README.TXT) IN THE SOURCE DIRECTORY (TWO
|
||||
; DIRECTORIES ABOVE THIS ONE).
|
||||
;
|
||||
#DEFINE PLATFORM_NAME "RC2014 (KIO)"
|
||||
;
|
||||
#DEFINE BOOT_DEFAULT "H" ; DEFAULT BOOT LOADER CMD ON <CR> OR AUTO BOOT
|
||||
;
|
||||
#include "Config/RCZ80_std.asm"
|
||||
|
||||
@@ -24,8 +24,6 @@
|
||||
;
|
||||
#DEFINE BOOT_DEFAULT "H" ; DEFAULT BOOT LOADER CMD ON <CR> OR AUTO BOOT
|
||||
;
|
||||
#DEFINE PLATFORM_NAME "RC2014 (MT)"
|
||||
;
|
||||
#include "Config/RCZ80_std.asm"
|
||||
;
|
||||
CRTACT .SET FALSE ; ACTIVATE CRT (VDU,CVDU,PROPIO,ETC) AT STARTUP
|
||||
|
||||
@@ -22,8 +22,6 @@
|
||||
; PLEASE REFER TO THE CUSTOM BUILD INSTRUCTIONS (README.TXT) IN THE SOURCE DIRECTORY (TWO
|
||||
; DIRECTORIES ABOVE THIS ONE).
|
||||
;
|
||||
#DEFINE PLATFORM_NAME "RC2014 (SKZ)"
|
||||
;
|
||||
#DEFINE BOOT_DEFAULT "H" ; DEFAULT BOOT LOADER CMD ON <CR> OR AUTO BOOT
|
||||
;
|
||||
#include "Config/RCZ80_std.asm"
|
||||
|
||||
@@ -31,6 +31,7 @@ CRTACT .SET FALSE ; ACTIVATE CRT (VDU,CVDU,PROPIO,ETC) AT STARTUP
|
||||
CPUOSC .SET 7372800 ; CPU OSC FREQ IN MHZ
|
||||
;
|
||||
RAMSIZE .SET 2048 ; SIZE OF RAM IN KB (MUST MATCH YOUR HARDWARE!!!)
|
||||
ROMSIZE .SET 0 ; SIZE OF ROM IN KB (MUST MATCH YOUR HARDWARE!!!)
|
||||
MEMMGR .SET MM_ZRC ; MEMORY MANAGER: MM_[SBC|Z2|N8|Z180]
|
||||
;
|
||||
MDROM .SET FALSE ; MD: ENABLE ROM DISK
|
||||
|
||||
@@ -24,8 +24,6 @@
|
||||
;
|
||||
#DEFINE BOOT_DEFAULT "H" ; DEFAULT BOOT LOADER CMD ON <CR> OR AUTO BOOT
|
||||
;
|
||||
#DEFINE PLATFORM_NAME "SBC (simh)"
|
||||
;
|
||||
#include "cfg_sbc.asm"
|
||||
;
|
||||
INTMODE .SET 1 ; INTERRUPTS: 0=NONE, 1=MODE 1, 2=MODE 2
|
||||
|
||||
@@ -22,8 +22,6 @@
|
||||
; PLEASE REFER TO THE CUSTOM BUILD INSTRUCTIONS (README.TXT) IN THE SOURCE DIRECTORY (TWO
|
||||
; DIRECTORIES ABOVE THIS ONE).
|
||||
;
|
||||
#DEFINE PLATFORM_NAME "SC126"
|
||||
;
|
||||
#DEFINE BOOT_DEFAULT "H" ; DEFAULT BOOT LOADER CMD ON <CR> OR AUTO BOOT
|
||||
;
|
||||
#include "cfg_scz180.asm"
|
||||
|
||||
@@ -22,8 +22,6 @@
|
||||
; PLEASE REFER TO THE CUSTOM BUILD INSTRUCTIONS (README.TXT) IN THE SOURCE DIRECTORY (TWO
|
||||
; DIRECTORIES ABOVE THIS ONE).
|
||||
;
|
||||
#DEFINE PLATFORM_NAME "SC130"
|
||||
;
|
||||
#DEFINE BOOT_DEFAULT "H" ; DEFAULT BOOT LOADER CMD ON <CR> OR AUTO BOOT
|
||||
;
|
||||
#include "cfg_scz180.asm"
|
||||
|
||||
@@ -22,8 +22,6 @@
|
||||
; PLEASE REFER TO THE CUSTOM BUILD INSTRUCTIONS (README.TXT) IN THE SOURCE DIRECTORY (TWO
|
||||
; DIRECTORIES ABOVE THIS ONE).
|
||||
;
|
||||
#DEFINE PLATFORM_NAME "SC131"
|
||||
;
|
||||
#DEFINE BOOT_DEFAULT "H" ; DEFAULT BOOT LOADER CMD ON <CR> OR AUTO BOOT
|
||||
;
|
||||
#include "cfg_scz180.asm"
|
||||
|
||||
@@ -22,8 +22,6 @@
|
||||
; PLEASE REFER TO THE CUSTOM BUILD INSTRUCTIONS (README.TXT) IN THE SOURCE DIRECTORY (TWO
|
||||
; DIRECTORIES ABOVE THIS ONE).
|
||||
;
|
||||
#DEFINE PLATFORM_NAME "SC140"
|
||||
;
|
||||
#include "cfg_scz180.asm"
|
||||
;
|
||||
CPUOSC .SET 18432000 ; CPU OSC FREQ IN MHZ
|
||||
|
||||
@@ -6,26 +6,31 @@ MOREDIFF = game.bin hbios_rom.bin nascom.bin usrrom.bin \
|
||||
SUBDIRS =
|
||||
DEST = ../../Binary
|
||||
TOOLS =../../Tools
|
||||
OTHERS = *.img *.rom *.com *.upd *.bin *.z80 cpm.sys zsys.sys Build.inc font*.asm *.dat
|
||||
include $(TOOLS)/Makefile.inc
|
||||
|
||||
FONTS := font8x11c.asm font8x11u.asm font8x16c.asm font8x16u.asm font8x8c.asm font8x8u.asm fontcgac.asm fontcgau.asm
|
||||
|
||||
ifneq ($(findstring $(ROM_PLATFORM), N8 MK4 RCZ180 SCZ180 DYNO RPH),)
|
||||
TASM=$(BINDIR)/uz80as -t hd64180
|
||||
endif
|
||||
|
||||
ifneq ($(findstring $(ROM_PLATFORM), RCZ280),)
|
||||
TASM=$(BINDIR)/uz80as -t z280
|
||||
endif
|
||||
OTHERS = *.img *.rom *.com *.upd *.bin *.z80 cpm.sys zsys.sys Build.inc font*.asm *.dat hbios_env.sh
|
||||
|
||||
# DIFFMAKE = 1
|
||||
|
||||
# DIFFPATH = $(DIFFTO)/Binary
|
||||
|
||||
ifeq ($(DIFFMAKE),1)
|
||||
DIFFBUILD := -d $(DIFFTO)/Source/HBIOS
|
||||
endif
|
||||
|
||||
# DIFFPATH = $(DIFFTO)/Binary
|
||||
ifeq ($(OBJECTS),)
|
||||
start:
|
||||
chmod +x Build.sh
|
||||
bash Build.sh $(DIFFBUILD)
|
||||
endif
|
||||
|
||||
include $(TOOLS)/Makefile.inc
|
||||
|
||||
FONTS := font8x11c.asm font8x11u.asm font8x16c.asm font8x16u.asm font8x8c.asm font8x8u.asm fontcgac.asm fontcgau.asm
|
||||
|
||||
ifeq ($(CPUFAM),2)
|
||||
TASM=$(BINDIR)/uz80as -t hd64180
|
||||
else ifeq ($(CPUFAM),3)
|
||||
TASM=$(BINDIR)/uz80as -t z280
|
||||
endif
|
||||
|
||||
DEPS=prereq dbgmon.bin romldr.bin nascom.bin tastybasic.bin game.bin eastaegg.bin updater.bin usrrom.bin imgpad2.bin
|
||||
|
||||
@@ -39,19 +44,15 @@ endif
|
||||
|
||||
ROMNAME=${ROM_PLATFORM}_${ROM_CONFIG}
|
||||
|
||||
#$(info DEPS=$(DEPS))
|
||||
#$(info ROM_PLATFORM=$(ROM_PLATFORM))
|
||||
#$(info ROM_CONFIG=$(ROM_CONFIG))
|
||||
#$(info ROMSIZE=$(ROMSIZE))
|
||||
#$(info ROMNAME=$(ROMNAME))
|
||||
# $(info DEPS=$(DEPS))
|
||||
# $(info ROM_PLATFORM=$(ROM_PLATFORM))
|
||||
# $(info ROM_CONFIG=$(ROM_CONFIG))
|
||||
# $(info ROMSIZE=$(ROMSIZE))
|
||||
# $(info ROMNAME=$(ROMNAME))
|
||||
# $(info CPUFAM=$(CPUFAM))
|
||||
# $(info TASM=$(TASM))
|
||||
|
||||
all::
|
||||
if [ -z "$(OBJECTS)" ] ; then \
|
||||
chmod +x Build.sh ; \
|
||||
bash Build.sh $(DIFFBUILD) ; \
|
||||
fi
|
||||
|
||||
$(ROMNAME).rom $(ROMNAME).com $(ROMNAME).img : $(ROMDEPS)
|
||||
$(OBJECTS) : $(ROMDEPS)
|
||||
cat romldr.bin dbgmon.bin ../ZSDOS/zsys_$(BIOS).bin ../CPM22/cpm_$(BIOS).bin >osimg.bin
|
||||
cat romldr.bin dbgmon.bin ../ZSDOS/zsys_$(BIOS).bin >osimg_small.bin
|
||||
if [ $(ROM_PLATFORM) != UNA ] ; then \
|
||||
@@ -99,6 +100,12 @@ hbios_app.bin: hbios.asm build.inc $(DEPS)
|
||||
hbios_img.bin: hbios.asm build.inc $(DEPS)
|
||||
$(TASM) -dIMGBOOT hbios.asm hbios_img.bin hbios_img.lst
|
||||
|
||||
hbios_env.com: hbios_env.asm build.inc
|
||||
$(TASM) -dBASH hbios_env.asm hbios_env.com hbios_env.lst
|
||||
|
||||
hbios_env.sh: hbios_env.com
|
||||
$(ZXCC) hbios_env.com >hbios_env.sh
|
||||
|
||||
romldr.bin: build.inc
|
||||
dbgmon.bin: build.inc
|
||||
nascom.bin: build.inc
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
; THIS FILE CAN BE CONSIDERED A REFERENCE THAT LISTS ALL POSSIBLE CONFIGURATION SETTINGS
|
||||
; FOR THE PLATFORM.
|
||||
;
|
||||
#DEFINE PLATFORM_NAME "DYNO"
|
||||
#DEFINE PLATFORM_NAME "Dyno", " [", CONFIG, "]"
|
||||
;
|
||||
#INCLUDE "hbios.inc"
|
||||
;
|
||||
@@ -33,6 +33,7 @@ INTMODE .EQU 2 ; INTERRUPTS: 0=NONE, 1=MODE 1, 2=MODE 2, 3=MODE 3 (Z280)
|
||||
DEFSERCFG .EQU SER_38400_8N1 ; DEFAULT SERIAL LINE CONFIG (SEE STD.ASM)
|
||||
;
|
||||
RAMSIZE .EQU 512 ; SIZE OF RAM IN KB (MUST MATCH YOUR HARDWARE!!!)
|
||||
ROMSIZE .EQU 512 ; SIZE OF ROM IN KB (MUST MATCH YOUR HARDWARE!!!)
|
||||
ROMSIZE_CHK .EQU 0 ; ROMSIZE VALUE VEREIFICATION (0=DISABLED)
|
||||
MEMMGR .EQU MM_Z180 ; MEMORY MANAGER: MM_[SBC|Z2|N8|Z180|Z280|MBC|RPH]
|
||||
RAMLOC .EQU 19 ; START OF RAM AS POWER OF 2 (2^N) IN PHYSICAL ADDRESS SPACE
|
||||
@@ -83,6 +84,9 @@ DSRTCENABLE .EQU FALSE ; DSRTC: ENABLE DS-1302 CLOCK DRIVER (DSRTC.ASM)
|
||||
DSRTCMODE .EQU DSRTCMODE_STD ; DSRTC: OPERATING MODE: DSRTC_[STD|MFPIC]
|
||||
DSRTCCHG .EQU FALSE ; DSRTC: FORCE BATTERY CHARGE ON (USE WITH CAUTION!!!)
|
||||
;
|
||||
DS1501RTCENABLE .EQU FALSE ; DS1501RTC: ENABLE DS-1501 CLOCK DRIVER (DS1501RTC.ASM)
|
||||
DS1501RTC_BASE .EQU $50 ; DS1501RTC: I/O BASE ADDRESS
|
||||
;
|
||||
BQRTCENABLE .EQU TRUE ; BQRTC: ENABLE BQ4845 CLOCK DRIVER (BQRTC.ASM)
|
||||
BQRTC_BASE .EQU $50 ; BQRTC: I/O BASE ADDRESS
|
||||
;
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
; THIS FILE CAN BE CONSIDERED A REFERENCE THAT LISTS ALL POSSIBLE CONFIGURATION SETTINGS
|
||||
; FOR THE PLATFORM.
|
||||
;
|
||||
#DEFINE PLATFORM_NAME "EASYZ80"
|
||||
#DEFINE PLATFORM_NAME "Easy-Z80", " [", CONFIG, "]"
|
||||
;
|
||||
#INCLUDE "hbios.inc"
|
||||
;
|
||||
@@ -33,6 +33,7 @@ INTMODE .EQU 2 ; INTERRUPTS: 0=NONE, 1=MODE 1, 2=MODE 2, 3=MODE 3 (Z280)
|
||||
DEFSERCFG .EQU SER_115200_8N1 ; DEFAULT SERIAL LINE CONFIG (SEE STD.ASM)
|
||||
;
|
||||
RAMSIZE .EQU 512 ; SIZE OF RAM IN KB (MUST MATCH YOUR HARDWARE!!!)
|
||||
ROMSIZE .EQU 512 ; SIZE OF ROM IN KB (MUST MATCH YOUR HARDWARE!!!)
|
||||
ROMSIZE_CHK .EQU 0 ; ROMSIZE VALUE VEREIFICATION (0=DISABLED)
|
||||
MEMMGR .EQU MM_Z2 ; MEMORY MANAGER: MM_[SBC|Z2|N8|Z180|Z280|MBC|RPH]
|
||||
MPGSEL_0 .EQU $78 ; Z2 MEM MGR BANK 0 PAGE SELECT REG (WRITE ONLY)
|
||||
@@ -89,6 +90,9 @@ DSRTCENABLE .EQU TRUE ; DSRTC: ENABLE DS-1302 CLOCK DRIVER (DSRTC.ASM)
|
||||
DSRTCMODE .EQU DSRTCMODE_STD ; DSRTC: OPERATING MODE: DSRTC_[STD|MFPIC]
|
||||
DSRTCCHG .EQU FALSE ; DSRTC: FORCE BATTERY CHARGE ON (USE WITH CAUTION!!!)
|
||||
;
|
||||
DS1501RTCENABLE .EQU FALSE ; DS1501RTC: ENABLE DS-1501 CLOCK DRIVER (DS1501RTC.ASM)
|
||||
DS1501RTC_BASE .EQU $50 ; DS1501RTC: I/O BASE ADDRESS
|
||||
;
|
||||
BQRTCENABLE .EQU FALSE ; BQRTC: ENABLE BQ4845 CLOCK DRIVER (BQRTC.ASM)
|
||||
BQRTC_BASE .EQU $50 ; BQRTC: I/O BASE ADDRESS
|
||||
;
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
; USED ONLY AS A REFERENCE TO HELP MANAGE THE FULL SET OF POSSIBLE SETTINGS AND
|
||||
; KEEP THINGS CONSISTENT.
|
||||
;
|
||||
#DEFINE PLATFORM_NAME "ROMWBW"
|
||||
#DEFINE PLATFORM_NAME "RomWBW", " [", CONFIG, "]"
|
||||
;
|
||||
#INCLUDE "hbios.inc"
|
||||
;
|
||||
@@ -30,6 +30,7 @@ INTMODE .EQU 0 ; INTERRUPTS: 0=NONE, 1=MODE 1, 2=MODE 2, 3=MODE 3 (Z280)
|
||||
DEFSERCFG .EQU SER_38400_8N1 ; DEFAULT SERIAL LINE CONFIG (SEE STD.ASM)
|
||||
;
|
||||
RAMSIZE .EQU 512 ; SIZE OF RAM IN KB (MUST MATCH YOUR HARDWARE!!!)
|
||||
ROMSIZE .EQU 512 ; SIZE OF ROM IN KB (MUST MATCH YOUR HARDWARE!!!)
|
||||
ROMSIZE_CHK .EQU 0 ; ROMSIZE VALUE VEREIFICATION (0=DISABLED)
|
||||
MEMMGR .EQU MM_NONE ; MEMORY MANAGER: MM_[SBC|Z2|N8|Z180|Z280|MBC|RPH]
|
||||
RAMLOC .EQU 19 ; START OF RAM AS POWER OF 2 (2^N) IN PHYSICAL ADDRESS SPACE
|
||||
@@ -123,6 +124,9 @@ DSRTCENABLE .EQU FALSE ; DSRTC: ENABLE DS-1302 CLOCK DRIVER (DSRTC.ASM)
|
||||
DSRTCMODE .EQU DSRTCMODE_STD ; DSRTC: OPERATING MODE: DSRTC_[STD|MFPIC]
|
||||
DSRTCCHG .EQU FALSE ; DSRTC: FORCE BATTERY CHARGE ON (USE WITH CAUTION!!!)
|
||||
;
|
||||
DS1501RTCENABLE .EQU FALSE ; DS1501RTC: ENABLE DS-1501 CLOCK DRIVER (DS1501RTC.ASM)
|
||||
DS1501RTC_BASE .EQU $50 ; DS1501RTC: I/O BASE ADDRESS
|
||||
;
|
||||
BQRTCENABLE .EQU FALSE ; BQRTC: ENABLE BQ4845 CLOCK DRIVER (BQRTC.ASM)
|
||||
BQRTC_BASE .EQU $50 ; BQRTC: I/O BASE ADDRESS
|
||||
;
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
; THIS FILE CAN BE CONSIDERED A REFERENCE THAT LISTS ALL POSSIBLE CONFIGURATION SETTINGS
|
||||
; FOR THE PLATFORM.
|
||||
;
|
||||
#DEFINE PLATFORM_NAME "Multi Board Computer"
|
||||
#DEFINE PLATFORM_NAME "Nhyodyne", " [", CONFIG, "]"
|
||||
;
|
||||
#INCLUDE "hbios.inc"
|
||||
;
|
||||
@@ -33,6 +33,7 @@ INTMODE .EQU 0 ; INTERRUPTS: 0=NONE, 1=MODE 1, 2=MODE 2, 3=MODE 3 (Z280)
|
||||
DEFSERCFG .EQU SER_38400_8N1 ; DEFAULT SERIAL LINE CONFIG (SEE STD.ASM)
|
||||
;
|
||||
RAMSIZE .EQU 512 ; SIZE OF RAM IN KB (MUST MATCH YOUR HARDWARE!!!)
|
||||
ROMSIZE .EQU 512 ; SIZE OF ROM IN KB (MUST MATCH YOUR HARDWARE!!!)
|
||||
ROMSIZE_CHK .EQU 0 ; ROMSIZE VALUE VEREIFICATION (0=DISABLED)
|
||||
MEMMGR .EQU MM_MBC ; MEMORY MANAGER: MM_[SBC|Z2|N8|Z180|Z280|MBC|RPH]
|
||||
MPCL_RAM .EQU $78 ; SBC MEM MGR RAM PAGE SELECT REG (WRITE ONLY)
|
||||
@@ -88,6 +89,9 @@ DSRTCENABLE .EQU TRUE ; DSRTC: ENABLE DS-1302 CLOCK DRIVER (DSRTC.ASM)
|
||||
DSRTCMODE .EQU DSRTCMODE_STD ; DSRTC: OPERATING MODE: DSRTC_[STD|MFPIC]
|
||||
DSRTCCHG .EQU FALSE ; DSRTC: FORCE BATTERY CHARGE ON (USE WITH CAUTION!!!)
|
||||
;
|
||||
DS1501RTCENABLE .EQU FALSE ; DS1501RTC: ENABLE DS-1501 CLOCK DRIVER (DS1501RTC.ASM)
|
||||
DS1501RTC_BASE .EQU $50 ; DS1501RTC: I/O BASE ADDRESS
|
||||
;
|
||||
BQRTCENABLE .EQU FALSE ; BQRTC: ENABLE BQ4845 CLOCK DRIVER (BQRTC.ASM)
|
||||
BQRTC_BASE .EQU $50 ; BQRTC: I/O BASE ADDRESS
|
||||
;
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
; THIS FILE CAN BE CONSIDERED A REFERENCE THAT LISTS ALL POSSIBLE CONFIGURATION SETTINGS
|
||||
; FOR THE PLATFORM.
|
||||
;
|
||||
#DEFINE PLATFORM_NAME "MARK IV"
|
||||
#DEFINE PLATFORM_NAME "Mark IV", " [", CONFIG, "]"
|
||||
;
|
||||
#INCLUDE "hbios.inc"
|
||||
;
|
||||
@@ -33,6 +33,7 @@ INTMODE .EQU 2 ; INTERRUPTS: 0=NONE, 1=MODE 1, 2=MODE 2, 3=MODE 3 (Z280)
|
||||
DEFSERCFG .EQU SER_38400_8N1 ; DEFAULT SERIAL LINE CONFIG (SEE STD.ASM)
|
||||
;
|
||||
RAMSIZE .EQU 512 ; SIZE OF RAM IN KB (MUST MATCH YOUR HARDWARE!!!)
|
||||
ROMSIZE .EQU 512 ; SIZE OF ROM IN KB (MUST MATCH YOUR HARDWARE!!!)
|
||||
ROMSIZE_CHK .EQU 0 ; ROMSIZE VALUE VEREIFICATION (0=DISABLED)
|
||||
MEMMGR .EQU MM_Z180 ; MEMORY MANAGER: MM_[SBC|Z2|N8|Z180|Z280|MBC|RPH]
|
||||
RAMLOC .EQU 19 ; START OF RAM AS POWER OF 2 (2^N) IN PHYSICAL ADDRESS SPACE
|
||||
@@ -94,6 +95,9 @@ DSRTCENABLE .EQU TRUE ; DSRTC: ENABLE DS-1302 CLOCK DRIVER (DSRTC.ASM)
|
||||
DSRTCMODE .EQU DSRTCMODE_STD ; DSRTC: OPERATING MODE: DSRTC_[STD|MFPIC]
|
||||
DSRTCCHG .EQU FALSE ; DSRTC: FORCE BATTERY CHARGE ON (USE WITH CAUTION!!!)
|
||||
;
|
||||
DS1501RTCENABLE .EQU FALSE ; DS1501RTC: ENABLE DS-1501 CLOCK DRIVER (DS1501RTC.ASM)
|
||||
DS1501RTC_BASE .EQU $50 ; DS1501RTC: I/O BASE ADDRESS
|
||||
;
|
||||
BQRTCENABLE .EQU FALSE ; BQRTC: ENABLE BQ4845 CLOCK DRIVER (BQRTC.ASM)
|
||||
BQRTC_BASE .EQU $50 ; BQRTC: I/O BASE ADDRESS
|
||||
;
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
; THIS FILE CAN BE CONSIDERED A REFERENCE THAT LISTS ALL POSSIBLE CONFIGURATION SETTINGS
|
||||
; FOR THE PLATFORM.
|
||||
;
|
||||
#DEFINE PLATFORM_NAME "N8"
|
||||
#DEFINE PLATFORM_NAME "N8", " [", CONFIG, "]"
|
||||
;
|
||||
#INCLUDE "hbios.inc"
|
||||
;
|
||||
@@ -33,6 +33,7 @@ INTMODE .EQU 2 ; INTERRUPTS: 0=NONE, 1=MODE 1, 2=MODE 2, 3=MODE 3 (Z280)
|
||||
DEFSERCFG .EQU SER_38400_8N1 ; DEFAULT SERIAL LINE CONFIG (SEE STD.ASM)
|
||||
;
|
||||
RAMSIZE .EQU 512 ; SIZE OF RAM IN KB (MUST MATCH YOUR HARDWARE!!!)
|
||||
ROMSIZE .EQU 512 ; SIZE OF ROM IN KB (MUST MATCH YOUR HARDWARE!!!)
|
||||
ROMSIZE_CHK .EQU 0 ; ROMSIZE VALUE VEREIFICATION (0=DISABLED)
|
||||
MEMMGR .EQU MM_N8 ; MEMORY MANAGER: MM_[SBC|Z2|N8|Z180|Z280|MBC|RPH]
|
||||
RAMBIAS .EQU 0 ; OFFSET OF START OF RAM IN PHYSICAL ADDRESS SPACE
|
||||
@@ -96,6 +97,9 @@ DSRTCENABLE .EQU TRUE ; DSRTC: ENABLE DS-1302 CLOCK DRIVER (DSRTC.ASM)
|
||||
DSRTCMODE .EQU DSRTCMODE_STD ; DSRTC: OPERATING MODE: DSRTC_[STD|MFPIC]
|
||||
DSRTCCHG .EQU FALSE ; DSRTC: FORCE BATTERY CHARGE ON (USE WITH CAUTION!!!)
|
||||
;
|
||||
DS1501RTCENABLE .EQU FALSE ; DS1501RTC: ENABLE DS-1501 CLOCK DRIVER (DS1501RTC.ASM)
|
||||
DS1501RTC_BASE .EQU $50 ; DS1501RTC: I/O BASE ADDRESS
|
||||
;
|
||||
BQRTCENABLE .EQU FALSE ; BQRTC: ENABLE BQ4845 CLOCK DRIVER (BQRTC.ASM)
|
||||
BQRTC_BASE .EQU $50 ; BQRTC: I/O BASE ADDRESS
|
||||
;
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
; THIS FILE CAN BE CONSIDERED A REFERENCE THAT LISTS ALL POSSIBLE CONFIGURATION SETTINGS
|
||||
; FOR THE PLATFORM.
|
||||
;
|
||||
#DEFINE PLATFORM_NAME "RC2014"
|
||||
#DEFINE PLATFORM_NAME "RC2014", " [", CONFIG, "]"
|
||||
;
|
||||
#INCLUDE "hbios.inc"
|
||||
;
|
||||
@@ -33,6 +33,7 @@ INTMODE .EQU 2 ; INTERRUPTS: 0=NONE, 1=MODE 1, 2=MODE 2, 3=MODE 3 (Z280)
|
||||
DEFSERCFG .EQU SER_115200_8N1 ; DEFAULT SERIAL LINE CONFIG (SEE STD.ASM)
|
||||
;
|
||||
RAMSIZE .EQU 512 ; SIZE OF RAM IN KB (MUST MATCH YOUR HARDWARE!!!)
|
||||
ROMSIZE .EQU 512 ; SIZE OF ROM IN KB (MUST MATCH YOUR HARDWARE!!!)
|
||||
ROMSIZE_CHK .EQU 0 ; ROMSIZE VALUE VEREIFICATION (0=DISABLED)
|
||||
MEMMGR .EQU MM_Z180 ; MEMORY MANAGER: MM_[SBC|Z2|N8|Z180|Z280|MBC|RPH]
|
||||
RAMLOC .EQU 19 ; START OF RAM AS POWER OF 2 (2^N) IN PHYSICAL ADDRESS SPACE
|
||||
@@ -91,6 +92,9 @@ DSRTCENABLE .EQU TRUE ; DSRTC: ENABLE DS-1302 CLOCK DRIVER (DSRTC.ASM)
|
||||
DSRTCMODE .EQU DSRTCMODE_STD ; DSRTC: OPERATING MODE: DSRTC_[STD|MFPIC]
|
||||
DSRTCCHG .EQU FALSE ; DSRTC: FORCE BATTERY CHARGE ON (USE WITH CAUTION!!!)
|
||||
;
|
||||
DS1501RTCENABLE .EQU FALSE ; DS1501RTC: ENABLE DS-1501 CLOCK DRIVER (DS1501RTC.ASM)
|
||||
DS1501RTC_BASE .EQU $50 ; DS1501RTC: I/O BASE ADDRESS
|
||||
;
|
||||
BQRTCENABLE .EQU FALSE ; BQRTC: ENABLE BQ4845 CLOCK DRIVER (BQRTC.ASM)
|
||||
BQRTC_BASE .EQU $50 ; BQRTC: I/O BASE ADDRESS
|
||||
;
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
; THIS FILE CAN BE CONSIDERED A REFERENCE THAT LISTS ALL POSSIBLE CONFIGURATION SETTINGS
|
||||
; FOR THE PLATFORM.
|
||||
;
|
||||
#DEFINE PLATFORM_NAME "RC2014"
|
||||
#DEFINE PLATFORM_NAME "RC2014", " [", CONFIG, "]"
|
||||
;
|
||||
#INCLUDE "hbios.inc"
|
||||
;
|
||||
@@ -33,6 +33,7 @@ INTMODE .EQU 0 ; INTERRUPTS: 0=NONE, 1=MODE 1, 2=MODE 2, 3=MODE 3 (Z280)
|
||||
DEFSERCFG .EQU SER_115200_8N1 ; DEFAULT SERIAL LINE CONFIG (SEE STD.ASM)
|
||||
;
|
||||
RAMSIZE .EQU 512 ; SIZE OF RAM IN KB (MUST MATCH YOUR HARDWARE!!!)
|
||||
ROMSIZE .EQU 512 ; SIZE OF ROM IN KB (MUST MATCH YOUR HARDWARE!!!)
|
||||
ROMSIZE_CHK .EQU 0 ; ROMSIZE VALUE VEREIFICATION (0=DISABLED)
|
||||
MEMMGR .EQU MM_Z2 ; MEMORY MANAGER: MM_[SBC|Z2|N8|Z180|Z280|MBC|RPH]
|
||||
RAMLOC .EQU 19 ; START OF RAM AS POWER OF 2 (2^N) IN PHYSICAL ADDRESS SPACE
|
||||
@@ -96,6 +97,9 @@ DSRTCENABLE .EQU TRUE ; DSRTC: ENABLE DS-1302 CLOCK DRIVER (DSRTC.ASM)
|
||||
DSRTCMODE .EQU DSRTCMODE_STD ; DSRTC: OPERATING MODE: DSRTC_[STD|MFPIC]
|
||||
DSRTCCHG .EQU FALSE ; DSRTC: FORCE BATTERY CHARGE ON (USE WITH CAUTION!!!)
|
||||
;
|
||||
DS1501RTCENABLE .EQU FALSE ; DS1501RTC: ENABLE DS-1501 CLOCK DRIVER (DS1501RTC.ASM)
|
||||
DS1501RTC_BASE .EQU $50 ; DS1501RTC: I/O BASE ADDRESS
|
||||
;
|
||||
BQRTCENABLE .EQU FALSE ; BQRTC: ENABLE BQ4845 CLOCK DRIVER (BQRTC.ASM)
|
||||
BQRTC_BASE .EQU $50 ; BQRTC: I/O BASE ADDRESS
|
||||
;
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
; THIS FILE CAN BE CONSIDERED A REFERENCE THAT LISTS ALL POSSIBLE CONFIGURATION SETTINGS
|
||||
; FOR THE PLATFORM.
|
||||
;
|
||||
#DEFINE PLATFORM_NAME "RC2014"
|
||||
#DEFINE PLATFORM_NAME "RC2014", " [", CONFIG, "]"
|
||||
;
|
||||
#INCLUDE "hbios.inc"
|
||||
;
|
||||
@@ -33,6 +33,7 @@ INTMODE .EQU 1 ; INTERRUPTS: 0=NONE, 1=MODE 1, 2=MODE 2, 3=MODE 3 (Z280)
|
||||
DEFSERCFG .EQU SER_115200_8N1 ; DEFAULT SERIAL LINE CONFIG (SEE STD.ASM)
|
||||
;
|
||||
RAMSIZE .EQU 512 ; SIZE OF RAM IN KB (MUST MATCH YOUR HARDWARE!!!)
|
||||
ROMSIZE .EQU 512 ; SIZE OF ROM IN KB (MUST MATCH YOUR HARDWARE!!!)
|
||||
ROMSIZE_CHK .EQU 0 ; ROMSIZE VALUE VEREIFICATION (0=DISABLED)
|
||||
MEMMGR .EQU MM_Z2 ; MEMORY MANAGER: MM_[SBC|Z2|N8|Z180|Z280|MBC|RPH]
|
||||
MPGSEL_0 .EQU $78 ; Z2 MEM MGR BANK 0 PAGE SELECT REG (WRITE ONLY)
|
||||
@@ -90,6 +91,9 @@ DSRTCENABLE .EQU TRUE ; DSRTC: ENABLE DS-1302 CLOCK DRIVER (DSRTC.ASM)
|
||||
DSRTCMODE .EQU DSRTCMODE_STD ; DSRTC: OPERATING MODE: DSRTC_[STD|MFPIC]
|
||||
DSRTCCHG .EQU FALSE ; DSRTC: FORCE BATTERY CHARGE ON (USE WITH CAUTION!!!)
|
||||
;
|
||||
DS1501RTCENABLE .EQU FALSE ; DS1501RTC: ENABLE DS-1501 CLOCK DRIVER (DS1501RTC.ASM)
|
||||
DS1501RTC_BASE .EQU $50 ; DS1501RTC: I/O BASE ADDRESS
|
||||
;
|
||||
BQRTCENABLE .EQU FALSE ; BQRTC: ENABLE BQ4845 CLOCK DRIVER (BQRTC.ASM)
|
||||
BQRTC_BASE .EQU $50 ; BQRTC: I/O BASE ADDRESS
|
||||
;
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
; THIS FILE CAN BE CONSIDERED A REFERENCE THAT LISTS ALL POSSIBLE CONFIGURATION SETTINGS
|
||||
; FOR THE PLATFORM.
|
||||
;
|
||||
#DEFINE PLATFORM_NAME "RHYOPHYRE"
|
||||
#DEFINE PLATFORM_NAME "Rhyophyre", " [", CONFIG, "]"
|
||||
;
|
||||
#INCLUDE "hbios.inc"
|
||||
;
|
||||
@@ -33,6 +33,7 @@ INTMODE .EQU 2 ; INTERRUPTS: 0=NONE, 1=MODE 1, 2=MODE 2, 3=MODE 3 (Z280)
|
||||
DEFSERCFG .EQU SER_38400_8N1 ; DEFAULT SERIAL LINE CONFIG (SEE STD.ASM)
|
||||
;
|
||||
RAMSIZE .EQU 512 ; SIZE OF RAM IN KB (MUST MATCH YOUR HARDWARE!!!)
|
||||
ROMSIZE .EQU 512 ; SIZE OF ROM IN KB (MUST MATCH YOUR HARDWARE!!!)
|
||||
ROMSIZE_CHK .EQU 0 ; ROMSIZE VALUE VEREIFICATION (0=DISABLED)
|
||||
MEMMGR .EQU MM_RPH ; MEMORY MANAGER: MM_[SBC|Z2|N8|Z180|Z280|MBC|RPH]
|
||||
RAMBIAS .EQU 0 ; OFFSET OF START OF RAM IN PHYSICAL ADDRESS SPACE
|
||||
@@ -94,6 +95,9 @@ DSRTCENABLE .EQU TRUE ; DSRTC: ENABLE DS-1302 CLOCK DRIVER (DSRTC.ASM)
|
||||
DSRTCMODE .EQU DSRTCMODE_STD ; DSRTC: OPERATING MODE: DSRTC_[STD|MFPIC]
|
||||
DSRTCCHG .EQU FALSE ; DSRTC: FORCE BATTERY CHARGE ON (USE WITH CAUTION!!!)
|
||||
;
|
||||
DS1501RTCENABLE .EQU FALSE ; DS1501RTC: ENABLE DS-1501 CLOCK DRIVER (DS1501RTC.ASM)
|
||||
DS1501RTC_BASE .EQU $50 ; DS1501RTC: I/O BASE ADDRESS
|
||||
;
|
||||
BQRTCENABLE .EQU FALSE ; BQRTC: ENABLE BQ4845 CLOCK DRIVER (BQRTC.ASM)
|
||||
BQRTC_BASE .EQU $50 ; BQRTC: I/O BASE ADDRESS
|
||||
;
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
; THIS FILE CAN BE CONSIDERED A REFERENCE THAT LISTS ALL POSSIBLE CONFIGURATION SETTINGS
|
||||
; FOR THE PLATFORM.
|
||||
;
|
||||
#DEFINE PLATFORM_NAME "SBC"
|
||||
#DEFINE PLATFORM_NAME "Single Board Computer", " [", CONFIG, "]"
|
||||
;
|
||||
#INCLUDE "hbios.inc"
|
||||
;
|
||||
@@ -33,6 +33,7 @@ INTMODE .EQU 0 ; INTERRUPTS: 0=NONE, 1=MODE 1, 2=MODE 2, 3=MODE 3 (Z280)
|
||||
DEFSERCFG .EQU SER_38400_8N1 ; DEFAULT SERIAL LINE CONFIG (SEE STD.ASM)
|
||||
;
|
||||
RAMSIZE .EQU 512 ; SIZE OF RAM IN KB (MUST MATCH YOUR HARDWARE!!!)
|
||||
ROMSIZE .EQU 512 ; SIZE OF ROM IN KB (MUST MATCH YOUR HARDWARE!!!)
|
||||
ROMSIZE_CHK .EQU 0 ; ROMSIZE VALUE VEREIFICATION (0=DISABLED)
|
||||
MEMMGR .EQU MM_SBC ; MEMORY MANAGER: MM_[SBC|Z2|N8|Z180|Z280|MBC|RPH]
|
||||
MPCL_RAM .EQU $78 ; SBC MEM MGR RAM PAGE SELECT REG (WRITE ONLY)
|
||||
@@ -88,6 +89,9 @@ DSRTCENABLE .EQU TRUE ; DSRTC: ENABLE DS-1302 CLOCK DRIVER (DSRTC.ASM)
|
||||
DSRTCMODE .EQU DSRTCMODE_STD ; DSRTC: OPERATING MODE: DSRTC_[STD|MFPIC]
|
||||
DSRTCCHG .EQU FALSE ; DSRTC: FORCE BATTERY CHARGE ON (USE WITH CAUTION!!!)
|
||||
;
|
||||
DS1501RTCENABLE .EQU FALSE ; DS1501RTC: ENABLE DS-1501 CLOCK DRIVER (DS1501RTC.ASM)
|
||||
DS1501RTC_BASE .EQU $50 ; DS1501RTC: I/O BASE ADDRESS
|
||||
;
|
||||
BQRTCENABLE .EQU FALSE ; BQRTC: ENABLE BQ4845 CLOCK DRIVER (BQRTC.ASM)
|
||||
BQRTC_BASE .EQU $50 ; BQRTC: I/O BASE ADDRESS
|
||||
;
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
; THIS FILE CAN BE CONSIDERED A REFERENCE THAT LISTS ALL POSSIBLE CONFIGURATION SETTINGS
|
||||
; FOR THE PLATFORM.
|
||||
;
|
||||
#DEFINE PLATFORM_NAME "SCZ180"
|
||||
#DEFINE PLATFORM_NAME "Small Computer", " [", CONFIG, "]"
|
||||
;
|
||||
#INCLUDE "hbios.inc"
|
||||
;
|
||||
@@ -33,6 +33,7 @@ INTMODE .EQU 2 ; INTERRUPTS: 0=NONE, 1=MODE 1, 2=MODE 2, 3=MODE 3 (Z280)
|
||||
DEFSERCFG .EQU SER_115200_8N1 ; DEFAULT SERIAL LINE CONFIG (SEE STD.ASM)
|
||||
;
|
||||
RAMSIZE .EQU 512 ; SIZE OF RAM IN KB (MUST MATCH YOUR HARDWARE!!!)
|
||||
ROMSIZE .EQU 512 ; SIZE OF ROM IN KB (MUST MATCH YOUR HARDWARE!!!)
|
||||
ROMSIZE_CHK .EQU 0 ; ROMSIZE VALUE VEREIFICATION (0=DISABLED)
|
||||
MEMMGR .EQU MM_Z180 ; MEMORY MANAGER: MM_[SBC|Z2|N8|Z180|Z280|MBC|RPH]
|
||||
RAMLOC .EQU 19 ; START OF RAM AS POWER OF 2 (2^N) IN PHYSICAL ADDRESS SPACE
|
||||
@@ -86,6 +87,9 @@ DSRTCENABLE .EQU TRUE ; DSRTC: ENABLE DS-1302 CLOCK DRIVER (DSRTC.ASM)
|
||||
DSRTCMODE .EQU DSRTCMODE_STD ; DSRTC: OPERATING MODE: DSRTC_[STD|MFPIC]
|
||||
DSRTCCHG .EQU FALSE ; DSRTC: FORCE BATTERY CHARGE ON (USE WITH CAUTION!!!)
|
||||
;
|
||||
DS1501RTCENABLE .EQU FALSE ; DS1501RTC: ENABLE DS-1501 CLOCK DRIVER (DS1501RTC.ASM)
|
||||
DS1501RTC_BASE .EQU $50 ; DS1501RTC: I/O BASE ADDRESS
|
||||
;
|
||||
BQRTCENABLE .EQU FALSE ; BQRTC: ENABLE BQ4845 CLOCK DRIVER (BQRTC.ASM)
|
||||
BQRTC_BASE .EQU $50 ; BQRTC: I/O BASE ADDRESS
|
||||
;
|
||||
|
||||
@@ -11,11 +11,12 @@
|
||||
; THIS FILE CAN BE CONSIDERED A REFERENCE THAT LISTS ALL POSSIBLE CONFIGURATION SETTINGS
|
||||
; FOR THE PLATFORM.
|
||||
;
|
||||
#DEFINE PLATFORM_NAME "UNA"
|
||||
#DEFINE PLATFORM_NAME "UNA", " [", CONFIG, "]"
|
||||
;
|
||||
#INCLUDE "../UBIOS/ubios.inc"
|
||||
;
|
||||
;PLATFORM .EQU PLT_UNA ; PLT_[SBC|ZETA|ZETA2|N8|MK4|UNA|RCZ80|RCZ180|EZZ80|SCZ180|DYNO|RCZ280|MBC|RPH]
|
||||
CPUFAM .EQU CPU_Z80 ; CPU FAMILY: CPU_[Z80|Z180|Z280]
|
||||
BIOS .EQU BIOS_UNA ; HARDWARE BIOS: BIOS_[WBW|UNA]
|
||||
;
|
||||
BOOT_TIMEOUT .EQU -1 ; AUTO BOOT TIMEOUT IN SECONDS, -1 TO DISABLE, 0 FOR IMMEDIATE
|
||||
@@ -26,6 +27,7 @@ CPUOSC .EQU 18432000 ; CPU OSC FREQ IN MHZ
|
||||
INTMODE .EQU 0 ; INTERRUPTS: 0=NONE, 1=MODE 1, 2=MODE 2, 3=MODE 3 (Z280)
|
||||
;
|
||||
RAMSIZE .EQU 512 ; SIZE OF RAM IN KB (MUST MATCH YOUR HARDWARE!!!)
|
||||
ROMSIZE .EQU 512 ; SIZE OF ROM IN KB (MUST MATCH YOUR HARDWARE!!!)
|
||||
;
|
||||
RTCIO .EQU $70 ; RTC LATCH REGISTER ADR
|
||||
;
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
; THIS FILE CAN BE CONSIDERED A REFERENCE THAT LISTS ALL POSSIBLE CONFIGURATION SETTINGS
|
||||
; FOR THE PLATFORM.
|
||||
;
|
||||
#DEFINE PLATFORM_NAME "ZETA"
|
||||
#DEFINE PLATFORM_NAME "Zeta", " [", CONFIG, "]"
|
||||
;
|
||||
#INCLUDE "hbios.inc"
|
||||
;
|
||||
@@ -33,6 +33,7 @@ INTMODE .EQU 0 ; INTERRUPTS: 0=NONE, 1=MODE 1, 2=MODE 2, 3=MODE 3 (Z280)
|
||||
DEFSERCFG .EQU SER_38400_8N1 ; DEFAULT SERIAL LINE CONFIG (SEE STD.ASM)
|
||||
;
|
||||
RAMSIZE .EQU 512 ; SIZE OF RAM IN KB (MUST MATCH YOUR HARDWARE!!!)
|
||||
ROMSIZE .EQU 512 ; SIZE OF ROM IN KB (MUST MATCH YOUR HARDWARE!!!)
|
||||
ROMSIZE_CHK .EQU 0 ; ROMSIZE VALUE VEREIFICATION (0=DISABLED)
|
||||
MEMMGR .EQU MM_SBC ; MEMORY MANAGER: MM_[SBC|Z2|N8|Z180|Z280|MBC|RPH]
|
||||
MPCL_RAM .EQU $78 ; SBC MEM MGR RAM PAGE SELECT REG (WRITE ONLY)
|
||||
@@ -75,6 +76,9 @@ DSRTCENABLE .EQU TRUE ; DSRTC: ENABLE DS-1302 CLOCK DRIVER (DSRTC.ASM)
|
||||
DSRTCMODE .EQU DSRTCMODE_STD ; DSRTC: OPERATING MODE: DSRTC_[STD|MFPIC]
|
||||
DSRTCCHG .EQU FALSE ; DSRTC: FORCE BATTERY CHARGE ON (USE WITH CAUTION!!!)
|
||||
;
|
||||
DS1501RTCENABLE .EQU FALSE ; DS1501RTC: ENABLE DS-1501 CLOCK DRIVER (DS1501RTC.ASM)
|
||||
DS1501RTC_BASE .EQU $50 ; DS1501RTC: I/O BASE ADDRESS
|
||||
;
|
||||
BQRTCENABLE .EQU FALSE ; BQRTC: ENABLE BQ4845 CLOCK DRIVER (BQRTC.ASM)
|
||||
BQRTC_BASE .EQU $50 ; BQRTC: I/O BASE ADDRESS
|
||||
;
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
; THIS FILE CAN BE CONSIDERED A REFERENCE THAT LISTS ALL POSSIBLE CONFIGURATION SETTINGS
|
||||
; FOR THE PLATFORM.
|
||||
;
|
||||
#DEFINE PLATFORM_NAME "ZETA V2"
|
||||
#DEFINE PLATFORM_NAME "Zeta 2", " [", CONFIG, "]"
|
||||
;
|
||||
#INCLUDE "hbios.inc"
|
||||
;
|
||||
@@ -33,6 +33,7 @@ INTMODE .EQU 2 ; INTERRUPTS: 0=NONE, 1=MODE 1, 2=MODE 2, 3=MODE 3 (Z280)
|
||||
DEFSERCFG .EQU SER_38400_8N1 ; DEFAULT SERIAL LINE CONFIG (SEE STD.ASM)
|
||||
;
|
||||
RAMSIZE .EQU 512 ; SIZE OF RAM IN KB (MUST MATCH YOUR HARDWARE!!!)
|
||||
ROMSIZE .EQU 512 ; SIZE OF ROM IN KB (MUST MATCH YOUR HARDWARE!!!)
|
||||
ROMSIZE_CHK .EQU 0 ; ROMSIZE VALUE VEREIFICATION (0=DISABLED)
|
||||
MEMMGR .EQU MM_Z2 ; MEMORY MANAGER: MM_[SBC|Z2|N8|Z180|Z280|MBC|RPH]
|
||||
MPGSEL_0 .EQU $78 ; Z2 MEM MGR BANK 0 PAGE SELECT REG (WRITE ONLY)
|
||||
@@ -86,6 +87,9 @@ DSRTCENABLE .EQU TRUE ; DSRTC: ENABLE DS-1302 CLOCK DRIVER (DSRTC.ASM)
|
||||
DSRTCMODE .EQU DSRTCMODE_STD ; DSRTC: OPERATING MODE: DSRTC_[STD|MFPIC]
|
||||
DSRTCCHG .EQU FALSE ; DSRTC: FORCE BATTERY CHARGE ON (USE WITH CAUTION!!!)
|
||||
;
|
||||
DS1501RTCENABLE .EQU FALSE ; DS1501RTC: ENABLE DS-1501 CLOCK DRIVER (DS1501RTC.ASM)
|
||||
DS1501RTC_BASE .EQU $50 ; DS1501RTC: I/O BASE ADDRESS
|
||||
;
|
||||
BQRTCENABLE .EQU FALSE ; BQRTC: ENABLE BQ4845 CLOCK DRIVER (BQRTC.ASM)
|
||||
BQRTC_BASE .EQU $50 ; BQRTC: I/O BASE ADDRESS
|
||||
;
|
||||
|
||||
397
Source/HBIOS/ds1501rtc.asm
Normal file
397
Source/HBIOS/ds1501rtc.asm
Normal file
@@ -0,0 +1,397 @@
|
||||
|
||||
;
|
||||
;==================================================================================================
|
||||
; Maxim DS1501/DS1511 Y2K-Compliant Watchdog RTC Driver
|
||||
;==================================================================================================
|
||||
;
|
||||
; THIS DRIVER CODE WAS CONTRIBUTED TO ROMWBW BY JPELLETIER 3:59 PM 7/24/2022
|
||||
;
|
||||
; Register Addresses (HEX / BCD):
|
||||
;
|
||||
; +---+-----+---------------+-------------------+------------------+----------------+
|
||||
; |ADR| D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 | RANGE | REGISTER |
|
||||
; +---+-----+---------------+-------------------+------------------+----------------+
|
||||
; | 0 | 0 | 10-Second | 1-Second | 00-59 | Seconds |
|
||||
; +---+-----+-----+---------+-------------------+------------------+----------------+
|
||||
; | 1 | 0 | 10-Minute | 1-Minute | 00-59 | Minutes |
|
||||
; +---+-----+-----+---------+-------------------+------------------+----------------+
|
||||
; | 2 | 0 | 0 | 10-Hour | 1-Hour | 00-23 | Hours |
|
||||
; +---+-----+-----+----+----+-------------------+------------------+----------------+
|
||||
; | 3 | 0 | 0 | 0 | 0 | 0 | Day Of Week | 01-07 | Day Of Week |
|
||||
; +---+-----+-----+----+----+----+--------------+------------------+----------------+
|
||||
; | 4 | 0 | 0 | 10-Date | 1-Date | 01-31 | Date |
|
||||
; +---+-----+-----+----+----+-------------------+------------------+----------------+
|
||||
; | 5 |/EOSC|/E32K|BB32|10Mo| 1-Month | 01-12 | Month |
|
||||
; +---+-----+-----+----+----+-------------------+------------------+----------------+
|
||||
; | 6 | 10-Year | 1-Year | 00-99 | Year |
|
||||
; +---+-----+-----+----+----+----+----+----+----+------------------+----------------+
|
||||
; | 7 | 10-Century | 1-Century | 00-39 | Century |
|
||||
; +---+-----+-----+----+----+----+----+----+----+------------------+----------------+
|
||||
; | 8 | AM1| 10-Second | 1-Second | 00-59 | Seconds Alarm |
|
||||
; +---+-----+---------------+-------------------+------------------+----------------+
|
||||
; | 9 | AM2| 10-Minute | 1-Minute | 00-59 | Minutes Alarm |
|
||||
; +---+-----+-----+---------+-------------------+------------------+----------------+
|
||||
; | A | AM3| 0 | 10-Hour | 1-Hour | 00-23 | Hours Alarm |
|
||||
; +---+-----+-----+----+----+-------------------+------------------+----------------+
|
||||
; | B | AM4|DY/DT| 10-date | Day/Date | 1-7/01-31 | Day/Date Alarm |
|
||||
; +---+-----+-----+----+----+----+--------------+------------------+----------------+
|
||||
; | C | 0.1-Second | 0.01-Second | 00-99 | Watchdog |
|
||||
; +---+-----+-----+---------+-------------------+------------------+----------------+
|
||||
; | D | 10-Second | 1-Second | 00-99 | Watchdog |
|
||||
; +---+-----+-----+---------+-------------------+------------------+----------------+
|
||||
; | E | BLF1| BLF2| PRS| PAB| TDF| KSF| WDF|IRQF| | ControlA |
|
||||
; +---+-----+-----+----+----+----+----+----+----+------------------+----------------+
|
||||
; | F | TE| CS| BME| TPE| TIE| KIE| WDE| WDS| | ControlB |
|
||||
; +---+-----+-----+----+----+----+----+----+----+------------------+----------------+
|
||||
; |10 | Extended RAM Address | 00-FF | RAM Address |
|
||||
; +---+-----+-----+----+----+----+----+----+----+------------------+----------------+
|
||||
; |11 | Reserved | | |
|
||||
; +---+-----+-----+----+----+----+----+----+----+------------------+----------------+
|
||||
; |12 | Reserved | | |
|
||||
; +---+--+--+-----+----+----+----+----+----+----+------------------+----------------+
|
||||
; |13 | Extended RAM Data | 00-FF | RAM Data |
|
||||
; +---+--+--+-----+----+----+----+----+----+----+------------------+----------------+
|
||||
; |14-1F | Reserved | | |
|
||||
; +------+--+-----+----+----+----+----+----+----+------------------+----------------+
|
||||
|
||||
; * = Unused bits; unwritable and read as 0.
|
||||
; 0 = should be set to 0 for valid time/calendar range.
|
||||
; Clock calendar data is BCD. Automatic leap year adjustment.
|
||||
; Day-Of-Week coded as Sunday = 1 through Saturday = 7.
|
||||
|
||||
; Constants
|
||||
|
||||
;By defining 2 bases, this allows some flexibility for address decoding
|
||||
DS1501NVM_BASE .EQU DS1501RTC_BASE + $10
|
||||
|
||||
DS1501RTC_SEC .EQU DS1501RTC_BASE + $00
|
||||
DS1501RTC_MIN .EQU DS1501RTC_BASE + $01
|
||||
DS1501RTC_HOUR .EQU DS1501RTC_BASE + $02
|
||||
DS1501RTC_WEEK_DAY .EQU DS1501RTC_BASE + $03
|
||||
DS1501RTC_DAY .EQU DS1501RTC_BASE + $04
|
||||
DS1501RTC_MONTH .EQU DS1501RTC_BASE + $05
|
||||
DS1501RTC_YEAR .EQU DS1501RTC_BASE + $06
|
||||
DS1501RTC_CENT .EQU DS1501RTC_BASE + $07
|
||||
DS1501RTC_SEC_ALM .EQU DS1501RTC_BASE + $08
|
||||
DS1501RTC_MIN_ALM .EQU DS1501RTC_BASE + $09
|
||||
DS1501RTC_HOUR_ALM .EQU DS1501RTC_BASE + $0A
|
||||
DS1501RTC_DAY_ALM .EQU DS1501RTC_BASE + $0B
|
||||
DS1501RTC_WDOG1 .EQU DS1501RTC_BASE + $0C
|
||||
DS1501RTC_WDOG2 .EQU DS1501RTC_BASE + $0D
|
||||
DS1501RTC_CONTROLA .EQU DS1501RTC_BASE + $0E
|
||||
DS1501RTC_CONTROLB .EQU DS1501RTC_BASE + $0F
|
||||
|
||||
DS1501RTC_RAMADDR .EQU DS1501NVM_BASE + $00
|
||||
DS1501RTC_RAMDATA .EQU DS1501NVM_BASE + $03
|
||||
|
||||
DS1501RTC_HIGH .EQU %11110000
|
||||
DS1501RTC_LOW .EQU %00001111
|
||||
|
||||
;ControlA bit masks
|
||||
;BLF1| BLF2| PRS| PAB| TDF| KSF| WDF|IRQF
|
||||
DS1501RTC_IRQF .EQU %00000001
|
||||
DS1501RTC_WDF .EQU %00000010
|
||||
DS1501RTC_KSF .EQU %00000100
|
||||
DS1501RTC_TDF .EQU %00001000
|
||||
DS1501RTC_PAB .EQU %00010000
|
||||
DS1501RTC_PRS .EQU %00100000
|
||||
DS1501RTC_BLF2 .EQU %01000000
|
||||
DS1501RTC_BLF1 .EQU %10000000
|
||||
|
||||
;ControlB bit masks
|
||||
;TE| CS| BME| TPE| TIE| KIE| WDE| WDS|
|
||||
DS1501RTC_WDS .EQU %00000001
|
||||
DS1501RTC_WDE .EQU %00000010
|
||||
DS1501RTC_KIE .EQU %00000100
|
||||
DS1501RTC_TIE .EQU %00001000
|
||||
DS1501RTC_TPE .EQU %00010000
|
||||
DS1501RTC_BME .EQU %00100000
|
||||
DS1501RTC_CS .EQU %01000000
|
||||
DS1501RTC_TE .EQU %10000000
|
||||
|
||||
DS1501RTC_BUFSIZE .EQU 6 ; 6 BYTE BUFFER (YYMMDDHHMMSS)
|
||||
|
||||
; RTC Device Initialization Entry
|
||||
|
||||
DS1501RTC_INIT:
|
||||
CALL NEWLINE ; Formatting
|
||||
PRTS("DS1501RTC: IO=0x$")
|
||||
LD A, DS1501RTC_BASE
|
||||
CALL PRTHEXBYTE
|
||||
|
||||
CALL NEWLINE ; Formatting
|
||||
PRTS("DS1501NVM: IO=0x$")
|
||||
LD A, DS1501NVM_BASE
|
||||
CALL PRTHEXBYTE
|
||||
|
||||
IN A,(DS1501RTC_CONTROLB) ;clear any pending interrupt flags
|
||||
|
||||
XOR A ; Zero A
|
||||
OR DS1501RTC_TE ;enable time updates
|
||||
OUT (DS1501RTC_CONTROLB), A
|
||||
|
||||
CALL DS1501RTC_LOAD
|
||||
; DISPLAY CURRENT TIME
|
||||
PRTS(" $")
|
||||
LD A, (DS1501RTC_BUF_MON)
|
||||
CALL PRTHEXBYTE
|
||||
PRTS("/$")
|
||||
LD A, (DS1501RTC_BUF_DAY)
|
||||
CALL PRTHEXBYTE
|
||||
PRTS("/$")
|
||||
LD A, (DS1501RTC_BUF_YEAR)
|
||||
CALL PRTHEXBYTE
|
||||
PRTS(" $")
|
||||
LD A, (DS1501RTC_BUF_HOUR)
|
||||
CALL PRTHEXBYTE
|
||||
PRTS(":$")
|
||||
LD A, (DS1501RTC_BUF_MIN)
|
||||
CALL PRTHEXBYTE
|
||||
PRTS(":$")
|
||||
LD A, (DS1501RTC_BUF_SEC)
|
||||
CALL PRTHEXBYTE
|
||||
|
||||
LD BC,DS1501RTC_DISPATCH
|
||||
CALL RTC_SETDISP
|
||||
|
||||
XOR A ; Signal success
|
||||
RET
|
||||
|
||||
; RTC Device Function Dispatch Entry
|
||||
; A: Result (OUT), 0=OK, Z=OK, NZ=Error
|
||||
; B: Function (IN)
|
||||
|
||||
DS1501RTC_DISPATCH:
|
||||
LD A, B ; Get requested function
|
||||
AND $0F ; Isolate Sub-Function
|
||||
JP Z, DS1501RTC_GETTIM ; Get Time
|
||||
DEC A
|
||||
JP Z, DS1501RTC_SETTIM ; Set Time
|
||||
DEC A
|
||||
JP Z, DS1501RTC_GETBYT ; Get NVRAM Byte Value
|
||||
DEC A
|
||||
JP Z, DS1501RTC_SETBYT ; Set NVRAM Byte Value
|
||||
DEC A
|
||||
JP Z, DS1501RTC_GETBLK ; Get NVRAM Data Block Value
|
||||
DEC A
|
||||
JP Z, DS1501RTC_SETBLK ; Set NVRAM Data Block Value
|
||||
DEC A
|
||||
JP Z, DS1501RTC_GETALM ; Get Alarm
|
||||
DEC A
|
||||
JP Z, DS1501RTC_SETALM ; Set Alarm
|
||||
;
|
||||
; NVRAM FUNCTIONS ARE NOT IMPLEMENTED YET
|
||||
;
|
||||
DS1501RTC_GETBYT:
|
||||
DS1501RTC_SETBYT:
|
||||
DS1501RTC_GETBLK:
|
||||
DS1501RTC_SETBLK:
|
||||
CALL PANIC
|
||||
|
||||
; RTC Get Time
|
||||
; A: Result (OUT), 0=OK, Z=OK, NZ=Error
|
||||
; HL: Date/Time Buffer (OUT)
|
||||
; Buffer format is BCD: YYMMDDHHMMSS
|
||||
; 24 hour time format is assumed
|
||||
;
|
||||
DS1501RTC_GETTIM:
|
||||
EX DE, HL
|
||||
CALL DS1501RTC_LOAD
|
||||
; Now copy to read destination (Interbank Save)
|
||||
LD A, BID_BIOS ; Copy from BIOS bank
|
||||
LD (HB_SRCBNK), A ; Set it
|
||||
LD A, (HB_INVBNK) ; Copy to current user bank
|
||||
LD (HB_DSTBNK), A ; Set it
|
||||
LD BC, DS1501RTC_BUFSIZE ; Length is 6 bytes
|
||||
#IF (INTMODE == 1)
|
||||
DI
|
||||
#ENDIF
|
||||
CALL HB_BNKCPY ; Copy the clock data
|
||||
#IF (INTMODE == 1)
|
||||
EI
|
||||
#ENDIF
|
||||
;
|
||||
; CLEAN UP AND RETURN
|
||||
XOR A ; SIGNAL SUCCESS
|
||||
RET ; AND RETURN
|
||||
;
|
||||
; RTC Set Time
|
||||
; A: Result (OUT), 0=OK, Z=OK, NZ=Error
|
||||
; HL: Date/Time Buffer (IN)
|
||||
; Buffer Format is BCD: YYMMDDHHMMSS
|
||||
; 24 hour time format is assumed
|
||||
;
|
||||
DS1501RTC_SETTIM:
|
||||
;
|
||||
; Copy incoming time data to our time buffer
|
||||
LD A, (HB_INVBNK) ; Copy from current user bank
|
||||
LD (HB_SRCBNK), A ; Set it
|
||||
LD A, BID_BIOS ; Copy to BIOS bank
|
||||
LD (HB_DSTBNK), A ; Set it
|
||||
LD DE, DS1501RTC_BUF ; Destination Address
|
||||
LD BC, DS1501RTC_BUFSIZE ; Length is 6 bytes
|
||||
#IF (INTMODE == 1)
|
||||
DI
|
||||
#ENDIF
|
||||
CALL HB_BNKCPY ; Copy the clock data
|
||||
#IF (INTMODE == 1)
|
||||
EI
|
||||
#ENDIF
|
||||
; Write to clock
|
||||
LD HL, DS1501RTC_BUF
|
||||
CALL DS1501RTC_SUSPEND
|
||||
LD A, (HL)
|
||||
OUT (DS1501RTC_YEAR), A ; Write Year
|
||||
INC HL
|
||||
LD A, (HL)
|
||||
OUT (DS1501RTC_MONTH), A ; Write Month
|
||||
INC HL
|
||||
LD A, (HL)
|
||||
OUT (DS1501RTC_DAY), A ; Write Day
|
||||
INC HL
|
||||
LD A, (HL)
|
||||
OUT (DS1501RTC_HOUR), A ; Write Hour
|
||||
INC HL
|
||||
LD A, (HL)
|
||||
OUT (DS1501RTC_MIN), A ; Write Minute
|
||||
INC HL
|
||||
LD A, (HL)
|
||||
OUT (DS1501RTC_SEC), A ; Write Second
|
||||
CALL DS1501RTC_RESUME
|
||||
; clean up and return
|
||||
XOR A ; Signal success
|
||||
RET ; And return
|
||||
|
||||
; RTC Get Alarm
|
||||
; A: Result (OUT), 0=OK, Z=OK, NZ=Error
|
||||
; HL: Date/Time Buffer (OUT)
|
||||
; Buffer format is BCD: YYMMDDHHMMSS
|
||||
; 24 hour time format is assumed
|
||||
;
|
||||
DS1501RTC_GETALM:
|
||||
EX DE, HL
|
||||
LD HL, DS1501RTC_BUF
|
||||
PUSH HL ; Save address of source buffer
|
||||
CALL DS1501RTC_SUSPEND
|
||||
XOR A
|
||||
LD (HL), A ; Read Year
|
||||
INC HL
|
||||
LD (HL), A ; Read Month
|
||||
INC HL
|
||||
IN A, (DS1501RTC_DAY_ALM) ; Read Day
|
||||
LD (HL), A
|
||||
INC HL
|
||||
IN A, (DS1501RTC_HOUR_ALM) ; Read Hour
|
||||
LD (HL), A
|
||||
INC HL
|
||||
IN A, (DS1501RTC_MIN_ALM) ; Read Minute
|
||||
LD (HL), A
|
||||
INC HL
|
||||
IN A, (DS1501RTC_SEC_ALM) ; Read Second
|
||||
LD (HL), A
|
||||
CALL DS1501RTC_RESUME
|
||||
POP HL ; Restore address of source buffer
|
||||
; Now copy to read destination (Interbank Save)
|
||||
LD A, BID_BIOS ; Copy from BIOS bank
|
||||
LD (HB_SRCBNK), A ; Set it
|
||||
LD A, (HB_INVBNK) ; Copy to current user bank
|
||||
LD (HB_DSTBNK), A ; Set it
|
||||
LD BC, DS1501RTC_BUFSIZE ; Length is 6 bytes
|
||||
#IF (INTMODE == 1)
|
||||
DI
|
||||
#ENDIF
|
||||
CALL HB_BNKCPY ; Copy the clock data
|
||||
#IF (INTMODE == 1)
|
||||
EI
|
||||
#ENDIF
|
||||
;
|
||||
; CLEAN UP AND RETURN
|
||||
XOR A ; SIGNAL SUCCESS
|
||||
RET ; AND RETURN
|
||||
;
|
||||
; RTC Set Alarm
|
||||
; A: Result (OUT), 0=OK, Z=OK, NZ=Error
|
||||
; HL: Date/Time Buffer (IN)
|
||||
; Buffer Format is BCD: YYMMDDHHMMSS
|
||||
; 24 hour time format is assumed
|
||||
;
|
||||
DS1501RTC_SETALM:
|
||||
; Copy incoming time data to our time buffer
|
||||
LD A, (HB_INVBNK) ; Copy from current user bank
|
||||
LD (HB_SRCBNK), A ; Set it
|
||||
LD A, BID_BIOS ; Copy to BIOS bank
|
||||
LD (HB_DSTBNK), A ; Set it
|
||||
LD DE, DS1501RTC_BUF ; Destination Address
|
||||
LD BC, DS1501RTC_BUFSIZE ; Length is 6 bytes
|
||||
#IF (INTMODE == 1)
|
||||
DI
|
||||
#ENDIF
|
||||
CALL HB_BNKCPY ; Copy the clock data
|
||||
#IF (INTMODE == 1)
|
||||
EI
|
||||
#ENDIF
|
||||
; Write to clock
|
||||
LD HL, DS1501RTC_BUF_DAY
|
||||
CALL DS1501RTC_SUSPEND
|
||||
LD A, (HL)
|
||||
OUT (DS1501RTC_DAY_ALM), A ; Write Day
|
||||
INC HL
|
||||
LD A, (HL)
|
||||
OUT (DS1501RTC_HOUR_ALM), A ; Write Hour
|
||||
INC HL
|
||||
LD A, (HL)
|
||||
OUT (DS1501RTC_MIN_ALM), A ; Write Minute
|
||||
INC HL
|
||||
LD A, (HL)
|
||||
OUT (DS1501RTC_SEC_ALM), A ; Write Second
|
||||
CALL DS1501RTC_RESUME
|
||||
; clean up and return
|
||||
XOR A ; Signal success
|
||||
RET ; And return
|
||||
|
||||
DS1501RTC_SUSPEND:
|
||||
IN A, (DS1501RTC_CONTROLB) ; Suspend Clock
|
||||
AND ~DS1501RTC_TE
|
||||
OUT (DS1501RTC_CONTROLB), A
|
||||
RET
|
||||
|
||||
DS1501RTC_RESUME:
|
||||
IN A, (DS1501RTC_CONTROLB) ; Resume Clock
|
||||
OR DS1501RTC_TE
|
||||
OUT (DS1501RTC_CONTROLB), A
|
||||
RET
|
||||
|
||||
DS1501RTC_LOAD:
|
||||
LD HL, DS1501RTC_BUF
|
||||
PUSH HL ; Save address of source buffer
|
||||
CALL DS1501RTC_SUSPEND
|
||||
IN A, (DS1501RTC_YEAR) ; Read Year
|
||||
LD (HL), A
|
||||
INC HL
|
||||
IN A, (DS1501RTC_MONTH) ; Read Month
|
||||
LD (HL), A
|
||||
INC HL
|
||||
IN A, (DS1501RTC_DAY) ; Read Day
|
||||
LD (HL), A
|
||||
INC HL
|
||||
IN A, (DS1501RTC_HOUR) ; Read Hour
|
||||
LD (HL), A
|
||||
INC HL
|
||||
IN A, (DS1501RTC_MIN) ; Read Minute
|
||||
LD (HL), A
|
||||
INC HL
|
||||
IN A, (DS1501RTC_SEC) ; Read Second
|
||||
LD (HL), A
|
||||
CALL DS1501RTC_RESUME
|
||||
POP HL ; Restore address of source buffer
|
||||
RET
|
||||
|
||||
; Working Variables
|
||||
|
||||
DS1501RTC_BUF:
|
||||
DS1501RTC_BUF_YEAR: .DB 0 ; Year
|
||||
DS1501RTC_BUF_MON: .DB 0 ; Month
|
||||
DS1501RTC_BUF_DAY: .DB 0 ; Day
|
||||
DS1501RTC_BUF_HOUR: .DB 0 ; Hour
|
||||
DS1501RTC_BUF_MIN: .DB 0 ; Minute
|
||||
DS1501RTC_BUF_SEC: .DB 0 ; Second
|
||||
@@ -219,6 +219,7 @@ RTCDEF .SET RTCDEF | %00001000 ; INITIAL SPEED LOW
|
||||
;
|
||||
.FILL (000H - $),0FFH ; RST 0
|
||||
JP HB_START
|
||||
.DB 0 ; SIG PTR STARTS AT $0004
|
||||
.DW ROM_SIG
|
||||
.FILL (008H - $),0FFH ; RST 8
|
||||
JP HB_INVOKE ; INVOKE HBIOS FUNCTION
|
||||
@@ -3005,6 +3006,9 @@ HB_INITTBL:
|
||||
#IF (DSRTCENABLE)
|
||||
.DW DSRTC_INIT
|
||||
#ENDIF
|
||||
#IF (DS1501RTCENABLE)
|
||||
.DW DS1501RTC_INIT
|
||||
#ENDIF
|
||||
#IF (BQRTCENABLE)
|
||||
.DW BQRTC_INIT
|
||||
#ENDIF
|
||||
@@ -5772,6 +5776,15 @@ SIZ_DSRTC .EQU $ - ORG_DSRTC
|
||||
.ECHO " bytes.\n"
|
||||
#ENDIF
|
||||
;
|
||||
#IF (DS1501RTCENABLE)
|
||||
ORG_DS1501RTC .EQU $
|
||||
#INCLUDE "ds1501rtc.asm"
|
||||
SIZ_DS1501RTC .EQU $ - ORG_DS1501RTC
|
||||
.ECHO "DS1501RTC occupies "
|
||||
.ECHO SIZ_DS1501RTC
|
||||
.ECHO " bytes.\n"
|
||||
#ENDIF
|
||||
;
|
||||
#IF (BQRTCENABLE)
|
||||
ORG_BQRTC .EQU $
|
||||
#INCLUDE "bqrtc.asm"
|
||||
|
||||
82
Source/HBIOS/hbios_env.asm
Normal file
82
Source/HBIOS/hbios_env.asm
Normal file
@@ -0,0 +1,82 @@
|
||||
;
|
||||
;==================================================================================================
|
||||
; HBIOS ENVIRONMENT CONFIG VALUE EXPORT TOOL
|
||||
;==================================================================================================
|
||||
;
|
||||
; Do we need a private stack???
|
||||
;
|
||||
#include "std.asm"
|
||||
;
|
||||
; Macro to make it simple to print a config value
|
||||
;
|
||||
#define prtval(tag,val) \
|
||||
#defcont \ call PREFIX
|
||||
#defcont \ call PRTSTRD
|
||||
#defcont \ .text tag
|
||||
#defcont \ call PRTEQ
|
||||
#defcont \ ld hl,val
|
||||
#defcont \ call PRTDEC
|
||||
#defcont \ call EOL
|
||||
;
|
||||
; Program starts here
|
||||
;
|
||||
.org $100 ; Normal CP/M start address
|
||||
;
|
||||
; Print all desired config values...
|
||||
;
|
||||
prtval("ROMSIZE$", ROMSIZE)
|
||||
prtval("CPUFAM$", CPUFAM)
|
||||
;
|
||||
ret
|
||||
;
|
||||
; Output correct prefix for command/shell
|
||||
;
|
||||
PREFIX:
|
||||
#ifdef CMD
|
||||
call PRTSTRD
|
||||
.text "set $"
|
||||
#endif
|
||||
ret
|
||||
;
|
||||
; Output an equal sign
|
||||
;
|
||||
PRTEQ:
|
||||
ld a,'='
|
||||
call COUT
|
||||
ret
|
||||
;
|
||||
; Output end-of-line. Handles differences between
|
||||
; DOS/Windows and Unix.
|
||||
;
|
||||
EOL:
|
||||
#ifdef CMD
|
||||
ld a,13
|
||||
call COUT
|
||||
#endif
|
||||
ld a,10
|
||||
call COUT
|
||||
ret
|
||||
|
||||
;
|
||||
; Print a single character from register A.
|
||||
; This routine is required by the utility routines included below.
|
||||
;
|
||||
COUT:
|
||||
push af
|
||||
push bc
|
||||
push de
|
||||
push hl
|
||||
ld e,a
|
||||
ld c,2
|
||||
call $0005
|
||||
pop hl
|
||||
pop de
|
||||
pop bc
|
||||
pop af
|
||||
ret
|
||||
;
|
||||
; Include the utility routines
|
||||
;
|
||||
#include "util.asm"
|
||||
;
|
||||
.end
|
||||
@@ -296,13 +296,10 @@ For example:
|
||||
In this case, you will not be prompted. This is useful if you wish
|
||||
to automate your build process.
|
||||
|
||||
There is a third parameter that you can specify to the BuildROM
|
||||
command via a command line. If you want to build a 1024K (1MB) ROM,
|
||||
you can add "1024" to the end of the line, like this:
|
||||
|
||||
C:\RomWBW\Source> BuildROM MK4 cust 1024
|
||||
|
||||
You must ensure that your system actually supports a 1024K ROM.
|
||||
In the past, the size of the ROM could be specified as the third
|
||||
parameter of the command. This parameter is now deprecated and
|
||||
the size of the ROM is specified in your configuration file
|
||||
using the ROMSIZE variable.
|
||||
|
||||
Special Build Commands
|
||||
----------------------
|
||||
|
||||
@@ -10,4 +10,7 @@ set TASMTABS=%TOOLS%\tasm32
|
||||
set CPMDIR80=%TOOLS%/cpm/
|
||||
|
||||
zxcc M80 -=zcpr/l || exit /b
|
||||
zxcc L80 -zcpr,zcpr.bin/n/e || exit /b
|
||||
zxcc L80 -zcpr,zcpr.bin/n/e || exit /b
|
||||
|
||||
zxcc M80 -=zcprdemo/l || exit /b
|
||||
zxcc L80 -zcprdemo,zcprdemo/n/e || exit /b
|
||||
@@ -5,3 +5,4 @@ if exist *.bin del *.bin
|
||||
if exist *.lst del *.lst
|
||||
if exist *.rel del *.rel
|
||||
if exist *.prn del *.prn
|
||||
if exist *.com del *.com
|
||||
|
||||
@@ -1,10 +1,13 @@
|
||||
|
||||
OBJECTS= zcpr.bin
|
||||
OBJECTS= zcpr.bin zcprdemo.com
|
||||
|
||||
OTHERS = zcpr.rel
|
||||
OTHERS = *.rel
|
||||
|
||||
TOOLS = ../../Tools
|
||||
include $(TOOLS)/Makefile.inc
|
||||
|
||||
zcpr.bin: zcpr.rel
|
||||
$(ZXCC) L80 -zcpr,zcpr.bin/n/e
|
||||
|
||||
zcprdemo.com: zcprdemo.rel
|
||||
$(ZXCC) L80 -zcprdemo,zcprdemo/n/e
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
; DATE 05/17/21 08:34:00
|
||||
; DATE 06/02/21 08:08:00
|
||||
;
|
||||
; TITLE ZCPR Console Command Processor - Version D&J
|
||||
; SUBTTL Last Modified: 10 August 1997
|
||||
@@ -396,12 +396,15 @@ CIBUFF: DB ' ' ;DEFAULT (COLD BOOT) COMMAND 13
|
||||
db 0,0,0,0,0,0,0,0 ;77
|
||||
db 0,0,0,0,0,0,0,0 ;85
|
||||
db 0,0,0,0,0,0,0,0 ;93
|
||||
db 0,0,0,0,0,0,0,0 ;101
|
||||
db 0,0,0,0,0,0,0,0 ;109
|
||||
db 0,0,0 ;96
|
||||
; DEFB 0,0,0,0,0,0,0,0 ;101
|
||||
; DEFB 0,0,0 ;104
|
||||
; DEFB 0,0,0,0,0,0,0,0 ;109
|
||||
; DEFB 0,0,0,0,0,0,0,0 ;118
|
||||
BUFEND EQU $
|
||||
; DEFW 0 ;SENTINEL FOR STACK END
|
||||
db 0,0
|
||||
; DEFS 24 ;STACK AREA
|
||||
DEFS 24,0 ;STACK AREA
|
||||
STACK EQU $ ;TOP OF STACK
|
||||
;
|
||||
; SUBMIT FILE CONTROL BLOCK
|
||||
@@ -427,7 +430,7 @@ FCBS2: db 0 ;S2
|
||||
FCBRC: db 0 ;RECORD COUNT
|
||||
FCBDM: db 0,0,0,0,0,0,0,0 ;DISK GROUP MAP
|
||||
db 0,0,0,0,0,0,0,0
|
||||
FCBCR: DEFS 1 ;CURRENT RECORD NUMBER
|
||||
FCBCR: db 0 ;CURRENT RECORD NUMBER
|
||||
;
|
||||
; Type and List Variables
|
||||
;
|
||||
@@ -466,7 +469,7 @@ CMDTBL:
|
||||
DEFW RING
|
||||
DC 'CLS'
|
||||
DEFW CLS
|
||||
DC 'WAIT' ; was 'SAK' ("strike any key")
|
||||
DC 'SAK' ; "Strike Any Key"
|
||||
DEFW SAK
|
||||
DC 'GO'
|
||||
DEFW GO
|
||||
|
||||
Binary file not shown.
@@ -1,6 +1,8 @@
|
||||
TITLE ZCPR Console Command Processor - Version D&J
|
||||
SUBTTL Last Modified: 5 March 1994
|
||||
; DATE 06/02/21 08:08:00
|
||||
;
|
||||
; TITLE ZCPR Console Command Processor - Version D&J
|
||||
; SUBTTL Last Modified: 10 August 1997
|
||||
|
||||
; CP/M Z80 Command Processor Replacement (CPR) Version 1.0
|
||||
; CCPZ CREATED AND CUSTOMIZED FOR ARIES-II BY RLC
|
||||
; FURTHER MODIFIED BY RGF AS V2.0
|
||||
@@ -66,6 +68,13 @@
|
||||
;
|
||||
; Added PEEK 30 August 1993.
|
||||
;
|
||||
; Added CLS 10 August 1997 and fixed two bugs. One caused the system to
|
||||
; hang if the command to log into another drive was given while logged
|
||||
; into a drive from which the disk had been removed. The other caused
|
||||
; a warm boot to return to the prior user area if the new user number
|
||||
; had been selected using the USER command (although not if the user area
|
||||
; had been changed using the du: command).
|
||||
;
|
||||
;******** Structure Notes ********
|
||||
;
|
||||
; This CPR is divided into a number of major sections. The following
|
||||
@@ -86,39 +95,40 @@
|
||||
;
|
||||
; 3 Utilities
|
||||
; CRLF PRINTC PRINT PRINTS BELL
|
||||
; CONOUT BREAK CHKETX ABORT READF
|
||||
; READ WRITE DEFDMA DMASET SEARF
|
||||
; SEARDE SEARN OPENF OPEN CLOSE
|
||||
; CREATE BDOSFN SUBKIL DELETE TLOGIN
|
||||
; DLOGIN LOGIN NEWUSR RSTUSR SETUSR
|
||||
; BDOSEA BDOSJP BDOSBC BDOSDE
|
||||
; CLS CONOUT BREAK CHKETX ABORT
|
||||
; READF READ WRITE DEFDMA DMASET
|
||||
; SEARF SEARDE SEARN OPENF OPEN
|
||||
; CLOSE CREATE BDOSFN SUBKIL DELETE
|
||||
; TLOGIN DLOGIN LOGIN NEWUSR RSTUSR
|
||||
; SETUSR BDOSEA BDOSJP BDOSBC BDOSDE
|
||||
;
|
||||
; 4 CPR Utilities
|
||||
; PROMPT REDBUF CNVBUF UCASE SDELM
|
||||
; ADVAN SBLANK ADDAH NUMBER A2NUM
|
||||
; HEXNUM USRNUM ERROR DIRPTR ULOGIN
|
||||
; SCANER SCANT SCANF CMDSER SETUDB
|
||||
; SCANER SCANT SCANF CMDSER
|
||||
;
|
||||
; 5 CPR-Resident Commands and Functions
|
||||
; 5A DIR DIRPR PRFN
|
||||
; 5B ERA
|
||||
; 5C ERAQ PRNNF
|
||||
; 5D SAK REPLY
|
||||
; 5E BELL
|
||||
; 5F LIST
|
||||
; 5G TYPE PAGER
|
||||
; 5H EJECT
|
||||
; 5I SAVE
|
||||
; 5J REN
|
||||
; 5K USER SUSER
|
||||
; 5L DFU
|
||||
; 5M SCL
|
||||
; 5N PEEK
|
||||
; 5O POKE
|
||||
; 5P JUMP
|
||||
; 5Q COM
|
||||
; 5R GO CLLPRG ERRLOG ERRJMP
|
||||
; 5S GET MEMLD PRNLE
|
||||
; 5E CLS
|
||||
; 5F BELL
|
||||
; 5G LIST
|
||||
; 5H TYPE PAGER
|
||||
; 5I EJECT
|
||||
; 5J SAVE
|
||||
; 5K REN
|
||||
; 5L USER SUSER
|
||||
; 5M DFU
|
||||
; 5N SCL
|
||||
; 5O PEEK
|
||||
; 5P POKE
|
||||
; 5Q JUMP
|
||||
; 5R COM UPDATE
|
||||
; 5S GO CLLPRG ERRLOG ERRJMP
|
||||
; 5T GET MEMLD PRNLE
|
||||
; BIOS BOOT
|
||||
;
|
||||
;
|
||||
@@ -142,13 +152,14 @@ TRUE EQU NOT FALSE
|
||||
;
|
||||
; P2DOS - Address of BDOS/P2DOS.
|
||||
;
|
||||
TEST EQU FALSE ;SET TO LOAD/RUN AT 8000H FOR DEBUG
|
||||
TEST EQU TRUE ;SET TO LOAD/RUN AT 8000H FOR DEBUG
|
||||
COMLD EQU FALSE ;SET TO LOAD AND EXECUTE AS A .COM FILE
|
||||
REL EQU FALSE ;SET TO TRUE FOR MOVCPM INTEGRATION
|
||||
;LEAVE ALL FALSE FOR SYSGEN IMAGE
|
||||
;
|
||||
BASE EQU 0 ;BASE OF CP/M SYSTEM
|
||||
P2DOS EQU 0E400H ;BASE OF BDOS/P2DOS
|
||||
;P2DOS EQU 0E400H ;BASE OF BDOS/P2DOS (original)
|
||||
P2DOS EQU 0D800H ;BASE OF BDOS/P2DOS (Retro-Brew)
|
||||
ZCPRSZ EQU 00800H ;SIZE OF ZCPR
|
||||
P2DOSSZ EQU 00E00H ;SIZE OF P2DOS
|
||||
BIOS EQU P2DOS+P2DOSSZ ;BASE OF BIOS
|
||||
@@ -243,7 +254,7 @@ SOFLG EQU 'S' ;LIST $SYS ONLY
|
||||
;
|
||||
; List and Type command customization equates
|
||||
;
|
||||
NLINES EQU 20 ;NUMBER OF LINES ON CRT PAGE
|
||||
NLINES EQU 22 ;NUMBER OF LINES ON CRT PAGE
|
||||
NLINEP EQU 60 ;NUMBER OF LINES ON LIST DEVICE
|
||||
FFKILL EQU TRUE ;TRUE SUPPRESSES FF UNTIL FIRST CHARACTER
|
||||
PGDFLG EQU 'P' ;TYPE AND LIST COMMAND DEFAULT TOGGLE
|
||||
@@ -254,14 +265,17 @@ NOSTAT EQU FALSE ;SET TO TRUE IF BIOS LISTST NOT IMPLEMENTED
|
||||
BUFLEN EQU 80 ;SIZE OF COMMAND INPUT BUFFER
|
||||
MAXUSR EQU 15 ;MAXIMUM USER NUMBER ACCESSIBLE
|
||||
DEFUSR EQU 0 ;DEFAULT USER NUMBER FOR COM FILES
|
||||
DEFDRV EQU 'A' ;DEFAULT DRIVE FOR COM FILES
|
||||
SPRMPT EQU '$' ;CPR PROMPT INDICATING SUBMIT COMMAND
|
||||
COMCHR EQU ';' ;BEGIN COMMENT CHARACTER
|
||||
COMCHR EQU '%' ;BEGIN COMMENT CHARACTER
|
||||
CMDCHR EQU ';' ;BEGIN NEXT COMMAND CHARACTER
|
||||
NUMBASE EQU 'H' ;CHARACTER USED TO SPECIFY HEXIDECIMAL BASE
|
||||
RECFLG EQU 'R' ;CHARACTER FOR SAVE COMMAND TO SAVE RECORDS
|
||||
SUPRES EQU TRUE ;TRUE TO SUPPRESS USER NUMBER FOR USER 0
|
||||
MULTPL EQU TRUE ;TRUE TO ALLOW MULTIPLE COMMANDS ON ONE LINE
|
||||
REBOOT EQU TRUE ;TRUE TO INCLUDE BOOT COMMAND
|
||||
CLSCHR EQU 1AH ;CHARACTER TO CLEAR TERMINAL SCREEN
|
||||
ESC EQU 1BH ;VT100 LEAD-IN CHAR. (FOR 'CLS')
|
||||
;
|
||||
IF TEST
|
||||
CPRMPT EQU '<' ;CPR PROMPT INDICATING TEST MODE
|
||||
@@ -299,7 +313,7 @@ TPA EQU BASE+0100H ;BASE OF TPA
|
||||
IF COMLD OR TEST
|
||||
LD HL,BGNXFR
|
||||
LD DE,CPRLOC
|
||||
LD BC,ENDLD-CPRLOC
|
||||
LD BC,ENDLD-BGNXFR
|
||||
LDIR
|
||||
LD BC,(UDFLAG)
|
||||
JP CPRLOC
|
||||
@@ -368,15 +382,29 @@ ENTRY:
|
||||
; warm boot reloads ZCPR and destroys the contents of the command buffer.
|
||||
; The multiple command feature may be turned off with the SCL command.
|
||||
;
|
||||
MBUFF: DEFB BUFLEN ;MAXIMUM BUFFER LENGTH
|
||||
;MBUFF: DEFB BUFLEN ;MAXIMUM BUFFER LENGTH
|
||||
MBUFF: DEFB BUFEND-CIBUFF ;MAXIMUM BUFFER LENGTH
|
||||
CBUFF: DEFB 0 ;NUMBER OF CHARACTERS IN COMMAND LINE
|
||||
CIBUFF: DEFB ' ' ;DEFAULT (COLD BOOT) COMMAND
|
||||
DEFB 0 ;COMMAND STRING TERMINATOR
|
||||
DEFB ' ZCPR-D&J of 5 March 1994 '
|
||||
DEFB 0 ;TERMINATOR FOR DUMP IDENTIFICATION
|
||||
DEFS BUFLEN-($-CIBUFF)+1
|
||||
DEFW 0 ;SENTINEL FOR STACK END
|
||||
DEFS 24 ;STACK AREA
|
||||
CIBUFF: DB ' ' ;DEFAULT (COLD BOOT) COMMAND 13
|
||||
DEFB 0 ;COMMAND STRING TERMINATOR 14
|
||||
DEFB ' ZCPR-D&J of 17 May 2021 ' ;44
|
||||
DEFB 0 ;TERMINATOR FOR DUMP IDENTIFICATION 45
|
||||
; DEFS BUFLEN-($-CIBUFF)+1
|
||||
db 0,0,0,0,0,0,0,0 ;53
|
||||
db 0,0,0,0,0,0,0,0 ;61
|
||||
db 0,0,0,0,0,0,0,0 ;69
|
||||
db 0,0,0,0,0,0,0,0 ;77
|
||||
db 0,0,0,0,0,0,0,0 ;85
|
||||
db 0,0,0,0,0,0,0,0 ;93
|
||||
db 0,0,0 ;96
|
||||
; DEFB 0,0,0,0,0,0,0,0 ;101
|
||||
; DEFB 0,0,0 ;104
|
||||
; DEFB 0,0,0,0,0,0,0,0 ;109
|
||||
; DEFB 0,0,0,0,0,0,0,0 ;118
|
||||
BUFEND EQU $
|
||||
; DEFW 0 ;SENTINEL FOR STACK END
|
||||
db 0,0
|
||||
DEFS 24,0 ;STACK AREA
|
||||
STACK EQU $ ;TOP OF STACK
|
||||
;
|
||||
; SUBMIT FILE CONTROL BLOCK
|
||||
@@ -393,22 +421,23 @@ SUBCR EQU SUBDN+32 ;CURRENT RECORD NUMBER
|
||||
;
|
||||
; COMMAND FILE CONTROL BLOCK
|
||||
;
|
||||
FCBDN: DEFS 1 ;DISK DRIVE
|
||||
FCBFN: DEFS 8 ;FILE NAME
|
||||
FCBFT: DEFS 3 ;FILE TYPE
|
||||
FCBEX: DEFS 1 ;EXTENT NUMBER
|
||||
FCBS1: DEFS 1 ;S1
|
||||
FCBS2: DEFS 1 ;S2
|
||||
FCBRC: DEFS 1 ;RECORD COUNT
|
||||
FCBDM: DEFS 16 ;DISK GROUP MAP
|
||||
FCBCR: DEFS 1 ;CURRENT RECORD NUMBER
|
||||
FCBDN: db 0 ;DISK DRIVE
|
||||
FCBFN: db 0,0,0,0,0,0,0,0 ;FILE NAME
|
||||
FCBFT: db 0,0,0 ;FILE TYPE
|
||||
FCBEX: db 0 ;EXTENT NUMBER
|
||||
FCBS1: db 0 ;S1
|
||||
FCBS2: db 0 ;S2
|
||||
FCBRC: db 0 ;RECORD COUNT
|
||||
FCBDM: db 0,0,0,0,0,0,0,0 ;DISK GROUP MAP
|
||||
db 0,0,0,0,0,0,0,0
|
||||
FCBCR: db 0 ;CURRENT RECORD NUMBER
|
||||
;
|
||||
; Type and List Variables
|
||||
;
|
||||
CHRCNT: DEFS 1 ;CHARACTER COUNT FOR TYPE AND LIST
|
||||
LNCNT: DEFS 1 ;LINE COUNT FOR TYPE AND LIST
|
||||
TYPLST: DEFS 1 ;FLAG FOR TYPE OR LIST
|
||||
TABCNT: DEFS 1 ;TAB COUNT FOR TYPE AND LIST
|
||||
CHRCNT: db 0 ;CHARACTER COUNT FOR TYPE AND LIST
|
||||
LNCNT: db 0 ;LINE COUNT FOR TYPE AND LIST
|
||||
TYPLST: db 0 ;FLAG FOR TYPE OR LIST
|
||||
TABCNT: db 0 ;TAB COUNT FOR TYPE AND LIST
|
||||
SYSTST: DEFB 0 ;LIST SYSTEM FILES IN DIRECTORY FLAG
|
||||
;
|
||||
; General Variables
|
||||
@@ -416,7 +445,7 @@ SYSTST: DEFB 0 ;LIST SYSTEM FILES IN DIRECTORY FLAG
|
||||
CIBPTR: DEFW CIBUFF ;POINTER TO COMMAND INPUT BUFFER
|
||||
CIPTR: DEFW CIBUFF ;POINTER TO CURRENT CMD FOR ERROR REPORTING
|
||||
TMPUSR: DEFB 0 ;TEMPORARY USER NUMBER
|
||||
TDRIVE: DEFB 0 ;DEFAULT DRIVE
|
||||
TDRIVE: DEFB 0 ;TEMPORARY DRIVE
|
||||
DFUSR: DEFB DEFUSR ;DEFAULT USER
|
||||
LDADR: DEFW TPA ;MEMORY LOAD ADDRESS
|
||||
;
|
||||
@@ -434,11 +463,13 @@ CMDTBL:
|
||||
DEFW USER
|
||||
DC 'DFU'
|
||||
DEFW DFU
|
||||
DC 'PAGE'
|
||||
DC 'FF' ; was 'PAGE'
|
||||
DEFW EJECT
|
||||
DC 'BELL'
|
||||
DEFW RING
|
||||
DC 'SAK'
|
||||
DC 'CLS'
|
||||
DEFW CLS
|
||||
DC 'SAK' ; "Strike Any Key"
|
||||
DEFW SAK
|
||||
DC 'GO'
|
||||
DEFW GO
|
||||
@@ -458,7 +489,7 @@ CMDTBL:
|
||||
DEFW PEEK
|
||||
DC 'POKE'
|
||||
DEFW POKE
|
||||
NCMNDS DEFL 17 ;NUMBER OF COMMANDS
|
||||
NCMNDS DEFL 18 ;NUMBER OF COMMANDS
|
||||
;
|
||||
IF MULTPL
|
||||
DC 'SCL'
|
||||
@@ -515,14 +546,11 @@ RS3:
|
||||
JR Z,RESTRT ;YES, SKIP REST OF LINE
|
||||
CALL SCANER ;PARSE COMMAND NAME FROM COMMAND LINE
|
||||
JR NZ,RS4 ;ERROR IF NAME CONTAINS A "?"
|
||||
CALL DEFDMA ;SET TBUFF TO DMA ADDRESS
|
||||
CALL DLOGIN ;ASSURE PROPER DRIVE
|
||||
CALL RSTUSR ;ASSURE PROPER USER NUMBER
|
||||
CALL SETUDB ;SET UD BYTE TO MATCH USER/DRIVE
|
||||
CALL CMDSER ;SCAN FOR CPR-RESIDENT COMMAND
|
||||
CALL CMDSER ;SCAN FOR COMMAND
|
||||
;
|
||||
; ENTRY POINT FOR CONTINUED SCAN OF COMMAND LINE
|
||||
;
|
||||
CALL UPDATE ;UPDATE BDOS/SYSTEM PARAMETERS
|
||||
CALL ADVAN ;GET ANY CHARACTER
|
||||
JR Z,RESTRT ;NONE, END OF LINE
|
||||
LD (CIPTR),DE ;UPDATE START OF LINE IN CASE ERROR
|
||||
@@ -1023,7 +1051,7 @@ SCAN4:
|
||||
LD (HL),B ;SAVE DRIVE
|
||||
LD B,8 ;MAX OF 8 CHARACTERS
|
||||
XOR A ;CLEAR '?' COUNT
|
||||
EX AF,AF ;AND SAVE
|
||||
EX AF,AF' ;AND SAVE
|
||||
CALL SCANF ;GET POSSIBLE NAME
|
||||
CALL SCANT ;AND POSSIBLE TYPE
|
||||
;
|
||||
@@ -1043,7 +1071,7 @@ SCAN4:
|
||||
; SCAN COMPLETE -- DE POINTS TO DELIMITER BYTE AFTER TOKEN
|
||||
;
|
||||
LD (CIBPTR),DE
|
||||
EX AF,AF ;GET NUMBER OF '?' IN FILENAME.TYP
|
||||
EX AF,AF' ;GET NUMBER OF '?' IN FILENAME.TYP
|
||||
RET
|
||||
;
|
||||
; EXTRACT FILE TYPE FROM POSSIBLE FILENAME.TYP
|
||||
@@ -1068,9 +1096,9 @@ SCAN12:
|
||||
SCAN13:
|
||||
CP '?' ;QUESTION MARK?
|
||||
JR NZ,SCAN14 ;NO, JUST STORE CHARACTER
|
||||
EX AF,AF ;GET QUESTION MARK COUNT
|
||||
EX AF,AF' ;GET QUESTION MARK COUNT
|
||||
INC A ;COUNT IT
|
||||
EX AF,AF ;AND SAVE COUNT
|
||||
EX AF,AF' ;AND SAVE COUNT
|
||||
SCAN14:
|
||||
INC DE ;POINT TO NEXT CHARACTER IN COMMAND LINE
|
||||
LD (HL),A ;STORE CHARACTER IN FCBDN
|
||||
@@ -1096,15 +1124,6 @@ CMDSER:
|
||||
LD A,(HL) ;LOOK FOR DRIVE SPEC
|
||||
DEC A ;ADJUST FOR LOG IN
|
||||
CALL P,TLOGIN ;LOG IN DRIVE
|
||||
SETUDB:
|
||||
LD A,(TMPUSR) ;GET CURRENT USER NUMBER
|
||||
ADD A,A ;PLACE IT IN HIGH NIBBLE
|
||||
ADD A,A
|
||||
ADD A,A
|
||||
ADD A,A
|
||||
LD HL,TDRIVE ;ADD DEFAULT DRIVE NUMBER (LOW NIBBLE)
|
||||
OR (HL)
|
||||
LD (UDFLAG),A ;UPDATE USER/DRIVE BYTE
|
||||
RET
|
||||
CMS0:
|
||||
OR (HL) ;DRIVE OR USER NUMBER
|
||||
@@ -1124,11 +1143,10 @@ CMS2:
|
||||
LD A,(DE) ;NEXT CHARACTER IN INPUT COMMAND MUST BE <SP>
|
||||
CP ' '
|
||||
JR NZ,CMS4
|
||||
LD A,(HL) ;FOUND COMMAND,
|
||||
LD E,(HL) ;FOUND COMMAND,
|
||||
INC HL ;LOAD ADDRESS,
|
||||
LD H,(HL) ;AND
|
||||
LD L,A ;JUMP TO IT
|
||||
JP (HL) ;COMMAND IS CPR-RESIDENT
|
||||
LD D,(HL) ;AND
|
||||
JR CMS6 ;UPDATE SYSTEM DATA AND EXECUTE
|
||||
CMS3:
|
||||
BIT 7,(HL) ;END OF TABLE ENTRY?
|
||||
INC HL
|
||||
@@ -1138,7 +1156,10 @@ CMS4:
|
||||
INC HL
|
||||
DJNZ CMS1 ;NOT TO END OF TABLE YET
|
||||
CMS5:
|
||||
JP COM ;COMMAND MAY BE DISK-RESIDENT
|
||||
LD DE,COM ;LOAD DESTINATION AND UPDATE
|
||||
CMS6:
|
||||
PUSH DE ;PLACE ROUTINE ADDRESS ON STACK
|
||||
JP UPDATE ;UPDATE SYSTEM DATA AND EXECUTE
|
||||
;
|
||||
;**** Section 5 ****
|
||||
; CPR-Resident Commands
|
||||
@@ -1410,6 +1431,21 @@ REPL2:
|
||||
RET
|
||||
;
|
||||
;Section 5E
|
||||
;Command: CLS
|
||||
;Function: To clear screen.
|
||||
;Forms:
|
||||
; CLS
|
||||
;
|
||||
CLS:
|
||||
; LD A,CLSCHR ; Load clear screen character
|
||||
; DEFB 21H ; and skip next instruction
|
||||
; If a multi-character string is
|
||||
; required to clear screen use:
|
||||
CALL PRINT
|
||||
DB ESC,'[2','J'+128
|
||||
RET
|
||||
;
|
||||
;Section 5F
|
||||
;Command: BELL
|
||||
;Function: To ring terminal bell.
|
||||
;Forms:
|
||||
@@ -1419,7 +1455,7 @@ RING:
|
||||
LD A,BELL ; load bell into A
|
||||
JP CONOUT ; and output it
|
||||
;
|
||||
;Section 5F
|
||||
;Section 5G
|
||||
;Command: LIST
|
||||
;Function: To print specified file on list device.
|
||||
;Forms:
|
||||
@@ -1436,7 +1472,7 @@ LIST:
|
||||
;
|
||||
JR TYPE1
|
||||
;
|
||||
;Section 5G
|
||||
;Section 5H
|
||||
;Command: TYPE
|
||||
;Function: To display specified file on console.
|
||||
;Forms:
|
||||
@@ -1559,8 +1595,8 @@ PAGER:
|
||||
PAGE2:
|
||||
JP BDOSJP ; return via bdos
|
||||
;
|
||||
;Section 5H
|
||||
;Command: PAGE
|
||||
;Section 5I
|
||||
;Command: FF (was PAGE)
|
||||
;Function: To eject a page on list device via a form feed.
|
||||
;Forms:
|
||||
; PAGE
|
||||
@@ -1578,7 +1614,7 @@ EJECT:
|
||||
LD C,05H ; list output
|
||||
JP BDOS ; output character and return via bdos
|
||||
;
|
||||
;Section 5I
|
||||
;Section 5J
|
||||
;Command: SAVE
|
||||
;Function: To save the contents of TPA onto disk as a file. Number of
|
||||
; pages or records is in decimal. Saved area begins at 100H.
|
||||
@@ -1627,7 +1663,7 @@ SAVE3:
|
||||
SAVE4:
|
||||
JP PRNLE ;PRINT 'NO SPACE' ERROR
|
||||
;
|
||||
;Section 5J
|
||||
;Section 5K
|
||||
;Command: REN
|
||||
;Function: To change the name of an existing file.
|
||||
;Forms:
|
||||
@@ -1669,7 +1705,7 @@ NAMERR:
|
||||
REN2:
|
||||
JP ABORT
|
||||
;
|
||||
;Section 5K
|
||||
;Section 5L
|
||||
;Command: USER
|
||||
;Function: To change current user number; new user number is in decimal.
|
||||
;Forms:
|
||||
@@ -1679,7 +1715,7 @@ USER:
|
||||
CALL USRNUM ;EXTRACT USER NUMBER FROM COMMAND LINE
|
||||
JP NEWUSR ;SET NEW USER NUMBER
|
||||
;
|
||||
;Section 5L
|
||||
;Section 5M
|
||||
;Command: DFU
|
||||
;Function: To set the Default User Number for the command/file scanner; new
|
||||
; default user number is in decimal.
|
||||
@@ -1691,7 +1727,7 @@ DFU:
|
||||
LD (DFUSR),A ;PUT IT AWAY
|
||||
RET
|
||||
;
|
||||
;Section 5M
|
||||
;Section 5N
|
||||
;Command: SCL
|
||||
;Function: To force ZCPR to parse only a single command per line; reset
|
||||
; to multiple command format at the next ^C.
|
||||
@@ -1708,7 +1744,7 @@ SINGLE:
|
||||
ENDIF
|
||||
;
|
||||
;
|
||||
;Section 5N
|
||||
;Section 5O
|
||||
;Command: PEEK
|
||||
;Function: To display hex values beginning at a specified address.
|
||||
;Forms:
|
||||
@@ -1755,7 +1791,7 @@ PRHEX:
|
||||
JP CONOUT ; go display value
|
||||
;
|
||||
;
|
||||
;Section 5O
|
||||
;Section 5P
|
||||
;Command: POKE
|
||||
;Function: To poke a string of hex values into a set of consecutive addresses.
|
||||
;Forms:
|
||||
@@ -1776,7 +1812,7 @@ POKE1:
|
||||
JR POKE1 ; go for more
|
||||
;
|
||||
;
|
||||
;Section 5P
|
||||
;Section 5Q
|
||||
;Command: JUMP
|
||||
;Function: To call the program (subroutine) at the specified address
|
||||
; without loading from disk.
|
||||
@@ -1787,7 +1823,7 @@ JUMP:
|
||||
CALL HEXNUM ;GET LOAD ADDRESS IN HL
|
||||
JR CLLPRG ;PERFORM CALL
|
||||
;
|
||||
;Section 5Q
|
||||
;Section 5R
|
||||
;Command: COM file processing
|
||||
;Function: To load the specified COM file from disk and execute it.
|
||||
;Forms:
|
||||
@@ -1807,7 +1843,7 @@ COM:
|
||||
CALL MEMLD ;LOAD MEMORY WITH FILE SPECIFIED
|
||||
;(NO RETURN IF ERROR OR TOO BIG)
|
||||
;
|
||||
;Section 5R
|
||||
;Section 5S
|
||||
;Command: GO
|
||||
;Function: To call the program in the TPA without loading from disk.
|
||||
; Same as JUMP 100H, but more convenient, especially when
|
||||
@@ -1868,14 +1904,24 @@ COM3:
|
||||
; RUN LOADED TRANSIENT PROGRAM
|
||||
;
|
||||
CALL CRLF ;NEW LINE
|
||||
CALL DEFDMA ;SET DMA TO 0080
|
||||
CALL RSTUSR ;RESET TO PROPER USER NUMBER
|
||||
UPDATE:
|
||||
CALL DEFDMA ;SET DMA TO DEFAULT VALUE
|
||||
CALL DLOGIN ;ASSURE PROPER DRIVE
|
||||
CALL RSTUSR ;ASSURE PROPER USER NUMBER
|
||||
LD A,E ;GET CURRENT USER NUMBER
|
||||
ADD A,A ;PLACE IT IN HIGH NIBBLE
|
||||
ADD A,A
|
||||
ADD A,A
|
||||
ADD A,A
|
||||
LD HL,TDRIVE ;ADD DEFAULT DRIVE NUMBER (LOW NIBBLE)
|
||||
OR (HL)
|
||||
LD (UDFLAG),A ;UPDATE USER/DRIVE BYTE
|
||||
;
|
||||
; EXECUTION (CALL) OF PROGRAM (SUBROUTINE) OCCURS HERE
|
||||
; EXECUTION (CALL) OF PROGRAM/SUBROUTINE/COMMAND OCCURS HERE
|
||||
;
|
||||
RET ;CALL TRANSIENT
|
||||
;
|
||||
;Section 5S
|
||||
;Section 5T
|
||||
;Command: GET
|
||||
;Function: To load the specified file from disk to the specified address
|
||||
;Forms:
|
||||
@@ -1896,9 +1942,9 @@ MEMLD:
|
||||
LD (LDADR),HL ;SET LOAD ADDRESS
|
||||
;
|
||||
; MLA is a reentry point for a non-standard CP/M Modification
|
||||
; This is the return point when the .COM (or GET) file is not found the
|
||||
; first time, the Default User is selected for the second attempt
|
||||
; and Drive A is selected for the final attempt.
|
||||
; This is the return point when the .COM (or GET) file was not found
|
||||
; so the Default Drive & User are selected for the final attempt
|
||||
; to find the file.
|
||||
;
|
||||
MLA:
|
||||
CALL ULOGIN ;LOG ANY USER
|
||||
@@ -1906,29 +1952,22 @@ MLA:
|
||||
CALL OPENF ;OPEN COMMAND.COM FILE
|
||||
JR NZ,MLA1 ;FILE FOUND - LOAD IT
|
||||
;
|
||||
; FILE NOT FOUND - SELECT DEFAULT USER
|
||||
; FILE NOT FOUND - SELECT DEFAULT COM USER
|
||||
;
|
||||
LD A,L ;GET FCB USER
|
||||
AND A ;DEFAULT USER?
|
||||
JR NZ,MLA0 ;NO
|
||||
LD HL,TMPUSR ;CURRENT USER SAME AS DEFAULT?
|
||||
LD A,(DFUSR) ;GET DEFAULT USER
|
||||
CP (HL)
|
||||
SET 7,A ;MAKE INTO VALID USER NUMBER
|
||||
LD (FCBS1),A ;PUT USER INTO FCB
|
||||
JR NZ,MLA ;AND TRY AGAIN
|
||||
;
|
||||
; FILE NOT FOUND - SELECT DRIVE A IF DEFAULT WAS SOME OTHER DRIVE
|
||||
; AND SELECT DEFAULT COM DRIVE. IF DEFAULT COM DRIVE ALREADY
|
||||
; SELECTED, GIVE UP AND PRINT ERROR MESSAGE
|
||||
;
|
||||
MLA0:
|
||||
LD A,(TDRIVE) ;DRIVE A DEFAULT?
|
||||
AND A
|
||||
LD A,DEFDRV-'@' ;A<= DEFAULT COM DRIVE
|
||||
LD HL,FCBDN ;POINT TO DRIVE IN FCB
|
||||
CP (HL) ;THE SAME?
|
||||
JR Z,MLA3 ;YES, ERROR
|
||||
XOR A
|
||||
LD HL,FCBDN ;POINT AT DRIVE IN FCB
|
||||
OR (HL) ;DRIVE ALREADY SPECIFIED?
|
||||
LD (HL),1 ;SELECT DRIVE A
|
||||
JR Z,MLA ;NO, GO GIVE IT A TRY
|
||||
LD (HL),A ;PUT DEFAULT COM DRIVE IN FCB
|
||||
JR MLA ;GO GIVE IT A TRY
|
||||
MLA3:
|
||||
CALL PRNNF ;CAN'T FIND FILE
|
||||
JR PRNLE1
|
||||
@@ -1961,6 +2000,7 @@ PRNLE1:
|
||||
IF (($-ENTRY) GT ZCPRSZ)
|
||||
*ZCPR too large!!*
|
||||
ENDIF
|
||||
.DEPHASE
|
||||
;
|
||||
IF TEST
|
||||
LISTST:
|
||||
@@ -1977,4 +2017,4 @@ ENDLD EQU $
|
||||
|
||||
END
|
||||
|
||||
PUSH HL ;SAVE POI
|
||||
|
||||
@@ -2,4 +2,4 @@
|
||||
#DEFINE RMN 1
|
||||
#DEFINE RUP 1
|
||||
#DEFINE RTP 0
|
||||
#DEFINE BIOSVER "3.1.1-pre.179"
|
||||
#DEFINE BIOSVER "3.1.1-pre.183"
|
||||
|
||||
@@ -3,5 +3,5 @@ rmn equ 1
|
||||
rup equ 1
|
||||
rtp equ 0
|
||||
biosver macro
|
||||
db "3.1.1-pre.179"
|
||||
db "3.1.1-pre.183"
|
||||
endm
|
||||
|
||||
@@ -134,7 +134,7 @@ endif
|
||||
#
|
||||
all:: $(OBJECTS)
|
||||
@for dir in $(SUBDIRS) ; do \
|
||||
$(MAKE) --directory $$dir all ; \
|
||||
$(MAKE) --directory $$dir ; \
|
||||
done
|
||||
@if [ "$(DEST)" ] && [ "$(OBJECTS)" ] ; then for file in $(filter-out $(NOCOPY),$(OBJECTS)) ; do \
|
||||
mkdir -p $(DEST) ; \
|
||||
|
||||
Reference in New Issue
Block a user