From c157d52c1dc07c7626b1ab66244782d22cb06491 Mon Sep 17 00:00:00 2001 From: Wayne Warthen Date: Sun, 12 Feb 2023 19:26:23 -0800 Subject: [PATCH] More Cleanup This check-in includes some refactoring of the configuration files. --- Doc/RomWBW Applications.pdf | Bin 216069 -> 216070 bytes Doc/RomWBW Disk Catalog.pdf | Bin 124529 -> 124529 bytes Doc/RomWBW Errata.pdf | Bin 28682 -> 28682 bytes Doc/RomWBW ROM Applications.pdf | Bin 159777 -> 159779 bytes Doc/RomWBW System Guide.pdf | Bin 528324 -> 528323 bytes Doc/RomWBW User Guide.pdf | Bin 444600 -> 510650 bytes ReadMe.md | 2 +- ReadMe.txt | 2 +- Source/CPM3/genbnk.dat | 2 +- Source/Doc/UserGuide.md | 69 +++----- Source/HBIOS/Build.cmd | 10 +- Source/HBIOS/Build.sh | 10 +- Source/HBIOS/Config/EZZ80_std.asm | 38 ---- Source/HBIOS/Config/EZZ80_tz80.asm | 41 ----- Source/HBIOS/Config/RCZ180_ext.asm | 14 +- Source/HBIOS/Config/RCZ180_nat.asm | 16 +- Source/HBIOS/Config/RCZ280_ext.asm | 17 +- Source/HBIOS/Config/RCZ280_nat.asm | 19 +- Source/HBIOS/Config/RCZ80_duart.asm | 34 ---- Source/HBIOS/Config/RCZ80_easy.asm | 75 ++++++++ Source/HBIOS/Config/RCZ80_kio.asm | 27 ++- Source/HBIOS/Config/RCZ80_mt.asm | 34 ---- Source/HBIOS/Config/RCZ80_skz.asm | 36 +++- Source/HBIOS/Config/RCZ80_std.asm | 13 +- Source/HBIOS/Config/RCZ80_tiny.asm | 81 +++++++++ Source/HBIOS/cfg_dyno.asm | 2 +- Source/HBIOS/cfg_ezz80.asm | 260 ---------------------------- Source/HBIOS/cfg_master.asm | 4 +- Source/HBIOS/cfg_mbc.asm | 2 +- Source/HBIOS/cfg_mk4.asm | 2 +- Source/HBIOS/cfg_n8.asm | 2 +- Source/HBIOS/cfg_rcz180.asm | 4 +- Source/HBIOS/cfg_rcz280.asm | 9 +- Source/HBIOS/cfg_rcz80.asm | 9 +- Source/HBIOS/cfg_rph.asm | 2 +- Source/HBIOS/cfg_sbc.asm | 2 +- Source/HBIOS/cfg_scz180.asm | 4 +- Source/HBIOS/cfg_zeta.asm | 2 +- Source/HBIOS/cfg_zeta2.asm | 2 +- Source/HBIOS/sd.asm | 4 +- Source/ver.inc | 2 +- Source/ver.lib | 2 +- 42 files changed, 328 insertions(+), 526 deletions(-) delete mode 100644 Source/HBIOS/Config/EZZ80_std.asm delete mode 100644 Source/HBIOS/Config/EZZ80_tz80.asm delete mode 100644 Source/HBIOS/Config/RCZ80_duart.asm create mode 100644 Source/HBIOS/Config/RCZ80_easy.asm delete mode 100644 Source/HBIOS/Config/RCZ80_mt.asm create mode 100644 Source/HBIOS/Config/RCZ80_tiny.asm delete mode 100644 Source/HBIOS/cfg_ezz80.asm diff --git a/Doc/RomWBW Applications.pdf b/Doc/RomWBW Applications.pdf index 52f0887d47253d75482b48b09fbfc1b6508913da..4ec31625686e6be24929170eeb1e0bdbaeb77043 100644 GIT binary patch delta 13754 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 delta 13655 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 delta 431 zcmex(hW+Ci_6Zx9(%($nR9fGvvi1Ap##+PmwX9#CW%;gpu}}0QPfwq##aGuID#sNW zxpz)^eC&H!O3>@>Lr0?CY;j`Sw#d`pbMKK|PMk(O;Wo?c zfNZu&-}KD&mRx)i&ALyPQ+r;&^yCb~tIO1GGOyIS6!m*wntH@E?#ZpY1=p&4K2%?+ znN*Y;vbXJIR@<#lOXbxrm0W+ae_rmy%W_4XU${?Cy>veP>9&B9d z-)dh^oSpalp?KSm)1_Rgc`3yuMX8CoAXff#g=R*UW=*E;noNvSFKQVW85mj^Sm+v9 zs2dolYbxmb=BKzMmZU0ZxL6q(7#SNF8A6q8e{q>nLnzVA$->0M(7@2d&DGGv#Mr{k z#l*kB;-<|Z(Dy-GN@J55LB z^P@$ghC5~YrPNkuiWO(o&G5KLeLRkZNS_r-j-v*G}(Du6Ri$8ioE9OyEZ$a z`0&=-XZv**hF!Rvz4*h0j1T3{o;=#LEwuV|$*FVC{;)^ve&~B)(S4!UF^?BjetxF# zLuUT7hw_{9p1s;^%M_fUWn^e+WMpclYha;nV4$w4pzoWX;*waBs-WRwWn^GvY+z&v zRkC?k)&~}66LS+s6DJn~b5jd5H*<4CS64Sza|1UEV;5&5XLEBCI|Um;N+!R}mjwXv Ct&f-h delta 328 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 delta 9155 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 diff --git a/Doc/RomWBW System Guide.pdf b/Doc/RomWBW System Guide.pdf index 9c68d99cdc0cc3e7e3128280394ee835386ffd7e..7fe9c1f0e6e6ccfc9394e1d70ebb3c1352bc43b3 100644 GIT binary patch delta 23118 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 diff --git a/Doc/RomWBW User Guide.pdf b/Doc/RomWBW User Guide.pdf index 684a36439609e11ea730b107c3acc845e948ddcf..0a2ac5afd0789bd0bbabf63713c66230846b31b5 100644 GIT binary patch delta 161795 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

7c4Nk2~OX3HZ2ZftpS|A%&5 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 OgjcU$|NQH(Uj2WM3VV3~ diff --git a/ReadMe.md b/ReadMe.md index 80dc0402..d8e10ca6 100644 --- a/ReadMe.md +++ b/ReadMe.md @@ -3,7 +3,7 @@ **RomWBW ReadMe** \ Version 3.1 Pre-release \ Wayne Warthen ([wwarthen@gmail.com](mailto:wwarthen@gmail.com)) \ -10 Feb 2023 +12 Feb 2023 # Overview diff --git a/ReadMe.txt b/ReadMe.txt index 377cf901..0ab2d7e4 100644 --- a/ReadMe.txt +++ b/ReadMe.txt @@ -1,6 +1,6 @@ RomWBW ReadMe Wayne Warthen (wwarthen@gmail.com) -10 Feb 2023 +12 Feb 2023 diff --git a/Source/CPM3/genbnk.dat b/Source/CPM3/genbnk.dat index 7ece8384..4dccf1fb 100644 --- a/Source/CPM3/genbnk.dat +++ b/Source/CPM3/genbnk.dat @@ -9,7 +9,7 @@ BNKSWT = Y COMBAS = 80 LERROR = Y NUMSEGS = 04 -MEMSEG00 = 01,43,00 +MEMSEG00 = 01,17,00 MEMSEG01 = 0E,72,02 MEMSEG02 = 01,7F,03 MEMSEG03 = 01,7F,04 diff --git a/Source/Doc/UserGuide.md b/Source/Doc/UserGuide.md index c279b3d0..c33cfe8d 100644 --- a/Source/Doc/UserGuide.md +++ b/Source/Doc/UserGuide.md @@ -182,15 +182,13 @@ below, **carefully** pick the appropriate ROM image for your hardware. | [RetroBrew N8 Z180 SBC]^1^ (date code >= 2312) | ECB | N8_std.rom | 38400 | | [RetroBrew Mark IV Z180 SBC]^3^ | ECB | MK4_std.rom | 38400 | | [RCBus Z80 CPU Module]^4^, 512K RAM/ROM | RCBus | RCZ80_std.rom | 115200 | -| [RCBus Z80 CPU Module]^4^, 512K RAM/ROM, DUART | RCBus | RCZ80_duart.rom | 115200 | -| [RCBus Z80 CPU Module]^4^, 512K RAM/ROM, MT011 | RCBus | RCZ80_mt.rom | 115200 | | [RCBus Z80 CPU Module]^4^, 512K RAM/ROM, KIO | RCBus | RCZ80_kio.rom | 115200 | | [RCBus Z180 CPU Module]^4^ w/ external banking | RCBus | RCZ180_ext.rom | 115200 | | [RCBus Z180 CPU Module]^4^ w/ native banking | RCBus | RCZ180_nat.rom | 115200 | | [RCBus Z280 CPU Module]^4^ w/ external banking | RCBus | RCZ180_ext.rom | 115200 | | [RCBus Z280 CPU Module]^4^ w/ native banking | RCBus | RCZ180_nat.rom | 115200 | -| [Easy Z80 SBC]^2^ | RCBus | EZZ80_std.rom | 115200 | -| [Tiny Z80 EIPC SBC]^2^ | RCBus | EZZ80_tz80.rom | 115200 | +| [Easy Z80 SBC]^2^ | RCBus | RCZ80_easy.rom | 115200 | +| [Tiny Z80 SBC]^2^ | RCBus | RCZ80_tiny.rom | 115200 | | [Z80-512K CPU/RAM/ROM Module]^2^ | RCBus | RCZ80_skz.rom | 115200 | | [SC126 Z180 SBC]^5^ | BP80 | SCZ180_126.rom | 115200 | | [SC130 Z180 SBC]^5^ | RCBus | SCZ180_130.rom | 115200 | @@ -3276,17 +3274,18 @@ to the user to ensure that no conflicting hardware is in use. |-------------------|---------------| | ROM Image File | RCZ80_std.rom | | Console Baud Rate | 115200 | +| Interrupt Mode | 1 | - CPU speed is detected at startup if DS1302 RTC is active - Otherwise 7.3728 MHz assumed - - Requires 512K RAM/ROM module + - Requires 512K RAM/ROM Module - Hardware auto-detected: - DS1302 RTC + - RP5C01 RTC - ACIA Serial Interface Module - SIO Serial Interface Module - EP Dual UART Serial Interface Module - WDC Floppy Disk Controller w/ 3.5" HD Drives - - AY-3-8910/YM2149 Sound Module - IDE Hard Disk Interface Module - PPIDE Hard Disk Interface Module - Serial baud rate is usually determined by hardware for ACIA and @@ -3296,29 +3295,14 @@ to the user to ensure that no conflicting hardware is in use. |-------------------|---------------| | ROM Image File | RCZ80_kio.rom | | Console Baud Rate | 38400 | +| Interrupt Mode | 2 | - - Equivalent to RCZ80_std w/ support for KIO Module: + - Equivalent to RCZ80_std w/ following modifications: - KIO-SIO Serial Interface uses KIO port standards - KIO-CTC generates system timer - SIO Serial baud rate managed by KIO-CTC - -| | | -|-------------------|-----------------| -| ROM Image File | RCZ80_duart.rom | -| Console Baud Rate | 115200 | - - - Equivalent to RCZ80_std w/ support for DUART Module: - - DUART serial interfaces supported - -| | | -|-------------------|---------------| -| ROM Image File | RCZ80_mt.rom | -| Console Baud Rate | 115200 | - - - Equivalent to RCZ80_std w/ support for MT011 Module: - - MT011 SD Card interface supported - - MT011 provides a WizNet network interface which can be utilized - by the supplied RomwWBW CP/NET client software. + - Use of Interrupt Mode 2 requires proper IEI/IEO configuration + for all peripherals generating interrupts `\clearpage`{=latex} @@ -3329,34 +3313,35 @@ to the user to ensure that no conflicting hardware is in use. | ROM Image Files | RCZ180_ext.rom | | | RCZ180_nat.rom | | Console Baud Rate | 115200 | +| Interrupt Mode | 2 | - CPU speed is detected at startup if DS1302 RTC is active - Otherwise 18.432 MHz assumed + - System timer is generated by Z180 CPU - Hardware auto-detected: - DS1302 RTC - Z180 ASCI Serial Ports - - ACIA Serial Interface Module - SIO Serial Interface Module - EP Dual UART Serial Interface Module - WDC Floppy Disk Controller w/ 3.5" HD Drives - IDE Hard Disk Interface Module - PPIDE Hard Disk Interface Module - - Serial baud rate is usually determined by hardware for ACIA and - SIO interfaces - - Requires 512K RAM/ROM module - Specific ROM image determined by memory module used: - RCZ180_ext - Bank switching on memory module (external of CPU) - RCZ180_nat - Linear memory module (native CPU bank switching) + - Use of Interrupt Mode 2 requires proper IEI/IEO configuration + for all peripherals generating interrupts `\clearpage`{=latex} ### RCBus Z280 CPU Module -| | | -|-------------------|----------------| -| ROM Image Files | RCZ280_ext.rom | -| | RCZ280_nat.rom | -| Console Baud Rate | 115200 | +| | | +|-------------------|-------------------| +| ROM Image Files | RCZ280_ext.rom | +| | RCZ280_nat.rom | +| Console Baud Rate | 115200 | +| Interrupt Mode | 1 (ext) / 3 (nat) | - CPU speed is assumed to be 12 MHz (24 MHz oscillator) - Hardware auto-detected: @@ -3377,14 +3362,13 @@ to the user to ensure that no conflicting hardware is in use. `\clearpage`{=latex} -`\clearpage`{=latex} - ### Easy Z80 SBC -| | | -|-------------------|---------------| -| ROM Image File | EZZ80_std.rom | -| Console Baud Rate | 115200 | +| | | +|-------------------|----------------| +| ROM Image File | RCZ80_easy.rom | +| Console Baud Rate | 115200 | +| Interrupt Mode | 2 | - CPU speed is detected at startup if DS1302 RTC is active - Otherwise 10.000 MHz assumed @@ -3400,12 +3384,13 @@ to the user to ensure that no conflicting hardware is in use. `\clearpage`{=latex} -### Tiny Z80 EIPC SBC +### Tiny Z80 SBC | | | |-------------------|----------------| -| ROM Image File | EZZ80_tz80.rom | +| ROM Image File | RCZ80_tiny.rom | | Console Baud Rate | 115200 | +| Interrupt Mode | 2 | - CPU speed is detected at startup if DS1302 RTC is active - Otherwise 16.000 MHz assumed diff --git a/Source/HBIOS/Build.cmd b/Source/HBIOS/Build.cmd index 46ac35a5..0f3486f5 100644 --- a/Source/HBIOS/Build.cmd +++ b/Source/HBIOS/Build.cmd @@ -201,10 +201,12 @@ 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 easy || exit /b +call Build RCZ80 tiny || exit /b +call Build RCZ80 skz || 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 @@ -217,8 +219,6 @@ 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 diff --git a/Source/HBIOS/Build.sh b/Source/HBIOS/Build.sh index 64b62889..069887bd 100755 --- a/Source/HBIOS/Build.sh +++ b/Source/HBIOS/Build.sh @@ -11,8 +11,6 @@ export CPUFAM if [ "${ROM_PLATFORM}" == "dist" ] ; then echo "!!!DISTRIBUTION BUILD!!!" 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 @@ -21,10 +19,12 @@ if [ "${ROM_PLATFORM}" == "dist" ] ; then 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="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="kio"; bash Build.sh + ROM_PLATFORM="RCZ80"; ROM_CONFIG="easy"; bash Build.sh + ROM_PLATFORM="RCZ80"; ROM_CONFIG="tiny"; 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 diff --git a/Source/HBIOS/Config/EZZ80_std.asm b/Source/HBIOS/Config/EZZ80_std.asm deleted file mode 100644 index bb7afeda..00000000 --- a/Source/HBIOS/Config/EZZ80_std.asm +++ /dev/null @@ -1,38 +0,0 @@ -; -;================================================================================================== -; EASY Z80 STANDARD CONFIGURATION -;================================================================================================== -; -; THE COMPLETE SET OF DEFAULT CONFIGURATION SETTINGS FOR THIS PLATFORM ARE FOUND IN THE -; CFG_.ASM INCLUDED FILE WHICH IS FOUND IN THE PARENT DIRECTORY. THIS FILE CONTAINS -; COMMON CONFIGURATION SETTINGS THAT OVERRIDE THE DEFAULTS. IT IS INTENDED THAT YOU MAKE -; YOUR CUSTOMIZATIONS IN THIS FILE AND JUST INHERIT ALL OTHER SETTINGS FROM THE DEFAULTS. -; EVEN BETTER, YOU CAN MAKE A COPY OF THIS FILE WITH A NAME LIKE _XXX.ASM AND SPECIFY -; YOUR FILE IN THE BUILD PROCESS. -; -; THE SETTINGS BELOW ARE THE SETTINGS THAT ARE MOST COMMONLY MODIFIED FOR THIS PLATFORM. -; MANY OF THEM ARE EQUAL TO THE SETTINGS IN THE INCLUDED FILE, SO THEY DON'T REALLY DO -; ANYTHING AS IS. THEY ARE LISTED HERE TO MAKE IT EASY FOR YOU TO ADJUST THE MOST COMMON -; SETTINGS. -; -; N.B., SINCE THE SETTINGS BELOW ARE REDEFINING VALUES ALREADY SET IN THE INCLUDED FILE, -; TASM INSISTS THAT YOU USE THE .SET OPERATOR AND NOT THE .EQU OPERATOR BELOW. ATTEMPTING -; TO REDEFINE A VALUE WITH .EQU BELOW WILL CAUSE TASM ERRORS! -; -; PLEASE REFER TO THE CUSTOM BUILD INSTRUCTIONS (README.TXT) IN THE SOURCE DIRECTORY (TWO -; DIRECTORIES ABOVE THIS ONE). -; -#DEFINE BOOT_DEFAULT "H" ; DEFAULT BOOT LOADER CMD ON OR AUTO BOOT -; -#include "cfg_ezz80.asm" -; -CRTACT .SET FALSE ; ACTIVATE CRT (VDU,CVDU,PROPIO,ETC) AT STARTUP -; -CPUOSC .SET 10000000 ; CPU OSC FREQ IN MHZ -; -FDENABLE .SET TRUE ; FD: ENABLE FLOPPY DISK DRIVER (FD.ASM) -FDMODE .SET FDMODE_RCWDC ; FD: DRIVER MODE: FDMODE_[DIO|ZETA|ZETA2|DIDE|N8|DIO3|RCSMC|RCWDC|DYNO|EPWDC] -; -IDEENABLE .SET TRUE ; IDE: ENABLE IDE DISK DRIVER (IDE.ASM) -; -PPIDEENABLE .SET TRUE ; PPIDE: ENABLE PARALLEL PORT IDE DISK DRIVER (PPIDE.ASM) diff --git a/Source/HBIOS/Config/EZZ80_tz80.asm b/Source/HBIOS/Config/EZZ80_tz80.asm deleted file mode 100644 index 96247c95..00000000 --- a/Source/HBIOS/Config/EZZ80_tz80.asm +++ /dev/null @@ -1,41 +0,0 @@ -; -;================================================================================================== -; EASY Z80 STANDARD CONFIGURATION -;================================================================================================== -; -; THE COMPLETE SET OF DEFAULT CONFIGURATION SETTINGS FOR THIS PLATFORM ARE FOUND IN THE -; CFG_.ASM INCLUDED FILE WHICH IS FOUND IN THE PARENT DIRECTORY. THIS FILE CONTAINS -; COMMON CONFIGURATION SETTINGS THAT OVERRIDE THE DEFAULTS. IT IS INTENDED THAT YOU MAKE -; YOUR CUSTOMIZATIONS IN THIS FILE AND JUST INHERIT ALL OTHER SETTINGS FROM THE DEFAULTS. -; EVEN BETTER, YOU CAN MAKE A COPY OF THIS FILE WITH A NAME LIKE _XXX.ASM AND SPECIFY -; YOUR FILE IN THE BUILD PROCESS. -; -; THE SETTINGS BELOW ARE THE SETTINGS THAT ARE MOST COMMONLY MODIFIED FOR THIS PLATFORM. -; MANY OF THEM ARE EQUAL TO THE SETTINGS IN THE INCLUDED FILE, SO THEY DON'T REALLY DO -; ANYTHING AS IS. THEY ARE LISTED HERE TO MAKE IT EASY FOR YOU TO ADJUST THE MOST COMMON -; SETTINGS. -; -; N.B., SINCE THE SETTINGS BELOW ARE REDEFINING VALUES ALREADY SET IN THE INCLUDED FILE, -; TASM INSISTS THAT YOU USE THE .SET OPERATOR AND NOT THE .EQU OPERATOR BELOW. ATTEMPTING -; TO REDEFINE A VALUE WITH .EQU BELOW WILL CAUSE TASM ERRORS! -; -; PLEASE REFER TO THE CUSTOM BUILD INSTRUCTIONS (README.TXT) IN THE SOURCE DIRECTORY (TWO -; DIRECTORIES ABOVE THIS ONE). -; -#include "cfg_ezz80.asm" -; -CRTACT .SET FALSE ; ACTIVATE CRT (VDU,CVDU,PROPIO,ETC) AT STARTUP -; -CPUOSC .SET 16000000 ; CPU OSC FREQ IN MHZ -; -IDEENABLE .SET TRUE ; IDE: ENABLE IDE DISK DRIVER (IDE.ASM) -; -PPIDEENABLE .SET TRUE ; PPIDE: ENABLE PARALLEL PORT IDE DISK DRIVER (PPIDE.ASM) -; -EIPCENABLE .SET TRUE ; EIPC: ENABLE Z80 EIPC (Z84C15) INITIALIZATION -; -CTCBASE .SET $10 ; CTC BASE I/O ADDRESS -LEDENABLE .SET TRUE ; ENABLES STATUS LED (SINGLE LED) -LEDPORT .SET $6E ; STATUS LED PORT ADDRESS -SIO0BASE .SET $18 ; SIO 0: REGISTERS BASE ADR -IDE0BASE .SET $90 ; IDE 0: IO BASE ADDRESS diff --git a/Source/HBIOS/Config/RCZ180_ext.asm b/Source/HBIOS/Config/RCZ180_ext.asm index 1fbdbba2..48842e6e 100644 --- a/Source/HBIOS/Config/RCZ180_ext.asm +++ b/Source/HBIOS/Config/RCZ180_ext.asm @@ -26,9 +26,8 @@ ; #include "cfg_rcz180.asm" ; -CRTACT .SET FALSE ; ACTIVATE CRT (VDU,CVDU,PROPIO,ETC) AT STARTUP -; CPUOSC .SET 18432000 ; CPU OSC FREQ IN MHZ +CRTACT .SET FALSE ; ACTIVATE CRT (VDU,CVDU,PROPIO,ETC) AT STARTUP ; MEMMGR .SET MM_Z2 ; MEMORY MANAGER: MM_[SBC|Z2|N8|Z180] ; @@ -39,17 +38,22 @@ Z180_IOWAIT .SET 1 ; Z180: I/O WAIT STATES TO ADD ABOVE 1 W/S BUILT-IN (0-3) UARTENABLE .SET TRUE ; UART: ENABLE 8250/16550-LIKE SERIAL DRIVER (UART.ASM) ASCIENABLE .SET TRUE ; ASCI: ENABLE Z180 ASCI SERIAL DRIVER (ASCI.ASM) ACIAENABLE .SET FALSE ; ACIA: ENABLE MOTOROLA 6850 ACIA DRIVER (ACIA.ASM) -SIOENABLE .SET FALSE ; SIO: ENABLE ZILOG SIO SERIAL DRIVER (SIO.ASM) +SIOENABLE .SET TRUE ; SIO: ENABLE ZILOG SIO SERIAL DRIVER (SIO.ASM) ; TMSENABLE .SET FALSE ; TMS: ENABLE TMS9918 VIDEO/KBD DRIVER (TMS.ASM) +TMSMODE .SET TMSMODE_MSX ; TMS: DRIVER MODE: TMSMODE_[SCG|N8|MBC|RC|RCV9958|RCKBD] +MKYENABLE .SET FALSE ; MSX 5255 PPI KEYBOARD COMPATIBLE DRIVER (REQUIRES TMS VDA DRIVER) +VDAEMU_SERKBD .SET 0 ; VDA EMULATION: SERIAL KBD UNIT #, OR $FF FOR HW KBD ; -AY38910ENABLE .SET TRUE ; AY: AY-3-8910 / YM2149 SOUND DRIVER +AY38910ENABLE .SET FALSE ; AY: AY-3-8910 / YM2149 SOUND DRIVER +SN76489ENABLE .SET FALSE ; SN: ENABLE SN76489 SOUND DRIVER ; FDENABLE .SET TRUE ; FD: ENABLE FLOPPY DISK DRIVER (FD.ASM) FDMODE .SET FDMODE_RCWDC ; FD: DRIVER MODE: FDMODE_[DIO|ZETA|ZETA2|DIDE|N8|DIO3|RCSMC|RCWDC|DYNO|EPWDC] ; IDEENABLE .SET TRUE ; IDE: ENABLE IDE DISK DRIVER (IDE.ASM) -; PPIDEENABLE .SET TRUE ; PPIDE: ENABLE PARALLEL PORT IDE DISK DRIVER (PPIDE.ASM) +SDENABLE .SET FALSE ; SD: ENABLE SD CARD DISK DRIVER (SD.ASM) +SDCNT .SET 1 ; SD: NUMBER OF SD CARD DEVICES (1-2), FOR DSD/SC/MT SC ONLY ; PRPENABLE .SET FALSE ; PRP: ENABLE ECB PROPELLER IO BOARD DRIVER (PRP.ASM) diff --git a/Source/HBIOS/Config/RCZ180_nat.asm b/Source/HBIOS/Config/RCZ180_nat.asm index eb367405..295b2387 100644 --- a/Source/HBIOS/Config/RCZ180_nat.asm +++ b/Source/HBIOS/Config/RCZ180_nat.asm @@ -1,6 +1,6 @@ ; ;================================================================================================== -; RC2014 Z180 STANDARD CONFIGURATION (NATIVE Z180 MMU W/ LINEAR MEMORY) +; RC2014 Z180 STANDARD CONFIGURATION (NATIVE Z180 MMU W/ LINEAR MEMORY MODULE) ;================================================================================================== ; ; THE COMPLETE SET OF DEFAULT CONFIGURATION SETTINGS FOR THIS PLATFORM ARE FOUND IN THE @@ -26,9 +26,8 @@ ; #include "cfg_rcz180.asm" ; -CRTACT .SET FALSE ; ACTIVATE CRT (VDU,CVDU,PROPIO,ETC) AT STARTUP -; CPUOSC .SET 18432000 ; CPU OSC FREQ IN MHZ +CRTACT .SET FALSE ; ACTIVATE CRT (VDU,CVDU,PROPIO,ETC) AT STARTUP ; MEMMGR .SET MM_Z180 ; MEMORY MANAGER: MM_[SBC|Z2|N8|Z180] ; @@ -39,17 +38,22 @@ Z180_IOWAIT .SET 1 ; Z180: I/O WAIT STATES TO ADD ABOVE 1 W/S BUILT-IN (0-3) UARTENABLE .SET TRUE ; UART: ENABLE 8250/16550-LIKE SERIAL DRIVER (UART.ASM) ASCIENABLE .SET TRUE ; ASCI: ENABLE Z180 ASCI SERIAL DRIVER (ASCI.ASM) ACIAENABLE .SET FALSE ; ACIA: ENABLE MOTOROLA 6850 ACIA DRIVER (ACIA.ASM) -SIOENABLE .SET FALSE ; SIO: ENABLE ZILOG SIO SERIAL DRIVER (SIO.ASM) +SIOENABLE .SET TRUE ; SIO: ENABLE ZILOG SIO SERIAL DRIVER (SIO.ASM) ; TMSENABLE .SET FALSE ; TMS: ENABLE TMS9918 VIDEO/KBD DRIVER (TMS.ASM) +TMSMODE .SET TMSMODE_MSX ; TMS: DRIVER MODE: TMSMODE_[SCG|N8|MBC|RC|RCV9958|RCKBD] +MKYENABLE .SET FALSE ; MSX 5255 PPI KEYBOARD COMPATIBLE DRIVER (REQUIRES TMS VDA DRIVER) +VDAEMU_SERKBD .SET 0 ; VDA EMULATION: SERIAL KBD UNIT #, OR $FF FOR HW KBD ; -AY38910ENABLE .SET TRUE ; AY: AY-3-8910 / YM2149 SOUND DRIVER +AY38910ENABLE .SET FALSE ; AY: AY-3-8910 / YM2149 SOUND DRIVER +SN76489ENABLE .SET FALSE ; SN: ENABLE SN76489 SOUND DRIVER ; FDENABLE .SET TRUE ; FD: ENABLE FLOPPY DISK DRIVER (FD.ASM) FDMODE .SET FDMODE_RCWDC ; FD: DRIVER MODE: FDMODE_[DIO|ZETA|ZETA2|DIDE|N8|DIO3|RCSMC|RCWDC|DYNO|EPWDC] ; IDEENABLE .SET TRUE ; IDE: ENABLE IDE DISK DRIVER (IDE.ASM) -; PPIDEENABLE .SET TRUE ; PPIDE: ENABLE PARALLEL PORT IDE DISK DRIVER (PPIDE.ASM) +SDENABLE .SET FALSE ; SD: ENABLE SD CARD DISK DRIVER (SD.ASM) +SDCNT .SET 1 ; SD: NUMBER OF SD CARD DEVICES (1-2), FOR DSD/SC/MT SC ONLY ; PRPENABLE .SET FALSE ; PRP: ENABLE ECB PROPELLER IO BOARD DRIVER (PRP.ASM) diff --git a/Source/HBIOS/Config/RCZ280_ext.asm b/Source/HBIOS/Config/RCZ280_ext.asm index 9eefcaaa..eb4f2682 100644 --- a/Source/HBIOS/Config/RCZ280_ext.asm +++ b/Source/HBIOS/Config/RCZ280_ext.asm @@ -26,11 +26,11 @@ ; #include "cfg_rcz280.asm" ; +CPUOSC .SET 12000000 ; CPU OSC FREQ IN MHZ +INTMODE .SET 1 ; INTERRUPTS: 0=NONE, 1=MODE 1, 2=MODE 2 CRTACT .SET FALSE ; ACTIVATE CRT (VDU,CVDU,PROPIO,ETC) AT STARTUP ; -CPUOSC .SET 24000000 ; CPU OSC FREQ IN MHZ -; -INTMODE .SET 1 +MEMMGR .SET MM_Z2 ; MEMORY MANAGER: MM_[SBC|Z2|N8|Z180] ; Z280_MEMLOWAIT .SET 0 ; Z280: LOW 8MB MEMORY WAIT STATES (0-3) Z280_MEMHIWAIT .SET 0 ; Z280: HIGH 8MB MEMORY WAIT STATES (0-3) @@ -42,11 +42,20 @@ UARTENABLE .SET TRUE ; UART: ENABLE 8250/16550-LIKE SERIAL DRIVER (UART.ASM) ACIAENABLE .SET TRUE ; ACIA: ENABLE MOTOROLA 6850 ACIA DRIVER (ACIA.ASM) SIOENABLE .SET TRUE ; SIO: ENABLE ZILOG SIO SERIAL DRIVER (SIO.ASM) ; +TMSENABLE .SET FALSE ; TMS: ENABLE TMS9918 VIDEO/KBD DRIVER (TMS.ASM) +TMSMODE .SET TMSMODE_MSX ; TMS: DRIVER MODE: TMSMODE_[SCG|N8|MBC|RC|RCV9958|RCKBD] +MKYENABLE .SET FALSE ; MSX 5255 PPI KEYBOARD COMPATIBLE DRIVER (REQUIRES TMS VDA DRIVER) +VDAEMU_SERKBD .SET 0 ; VDA EMULATION: SERIAL KBD UNIT #, OR $FF FOR HW KBD +; +AY38910ENABLE .SET FALSE ; AY: AY-3-8910 / YM2149 SOUND DRIVER +SN76489ENABLE .SET FALSE ; SN: ENABLE SN76489 SOUND DRIVER +; FDENABLE .SET TRUE ; FD: ENABLE FLOPPY DISK DRIVER (FD.ASM) FDMODE .SET FDMODE_RCWDC ; FD: DRIVER MODE: FDMODE_[DIO|ZETA|ZETA2|DIDE|N8|DIO3|RCSMC|RCWDC|DYNO|EPWDC] ; IDEENABLE .SET TRUE ; IDE: ENABLE IDE DISK DRIVER (IDE.ASM) -; PPIDEENABLE .SET TRUE ; PPIDE: ENABLE PARALLEL PORT IDE DISK DRIVER (PPIDE.ASM) +SDENABLE .SET FALSE ; SD: ENABLE SD CARD DISK DRIVER (SD.ASM) +SDCNT .SET 1 ; SD: NUMBER OF SD CARD DEVICES (1-2), FOR DSD/SC/MT SC ONLY ; PRPENABLE .SET FALSE ; PRP: ENABLE ECB PROPELLER IO BOARD DRIVER (PRP.ASM) diff --git a/Source/HBIOS/Config/RCZ280_nat.asm b/Source/HBIOS/Config/RCZ280_nat.asm index 2f0797cf..a8f38801 100644 --- a/Source/HBIOS/Config/RCZ280_nat.asm +++ b/Source/HBIOS/Config/RCZ280_nat.asm @@ -26,14 +26,12 @@ ; #include "cfg_rcz280.asm" ; -CRTACT .SET FALSE ; ACTIVATE CRT (VDU,CVDU,PROPIO,ETC) AT STARTUP -; CPUOSC .SET 12000000 ; CPU OSC FREQ IN MHZ +INTMODE .SET 3 ; INTERRUPTS: 0=NONE, 1=MODE 1, 2=MODE 2 +CRTACT .SET FALSE ; ACTIVATE CRT (VDU,CVDU,PROPIO,ETC) AT STARTUP ; MEMMGR .SET MM_Z280 ; MEMORY MANAGER: MM_[SBC|Z2|N8|Z180|Z280] ; -INTMODE .SET 3 -; Z280_MEMLOWAIT .SET 0 ; Z280: LOW 8MB MEMORY WAIT STATES (0-3) Z280_MEMHIWAIT .SET 0 ; Z280: HIGH 8MB MEMORY WAIT STATES (0-3) Z280_IOWAIT .SET 1 ; Z280: I/O WAIT STATES TO ADD ABOVE 1 W/S BUILT-IN (0-3) @@ -41,14 +39,23 @@ Z280_INTWAIT .SET 0 ; Z280: INT ACK WAIT STATUS (0-3) ; Z2UENABLE .SET TRUE ; Z2U: ENABLE Z280 UART SERIAL DRIVER (Z2U.ASM) UARTENABLE .SET TRUE ; UART: ENABLE 8250/16550-LIKE SERIAL DRIVER (UART.ASM) -ACIAENABLE .SET TRUE ; ACIA: ENABLE MOTOROLA 6850 ACIA DRIVER (ACIA.ASM) +ACIAENABLE .SET FALSE ; ACIA: ENABLE MOTOROLA 6850 ACIA DRIVER (ACIA.ASM) SIOENABLE .SET TRUE ; SIO: ENABLE ZILOG SIO SERIAL DRIVER (SIO.ASM) ; +TMSENABLE .SET FALSE ; TMS: ENABLE TMS9918 VIDEO/KBD DRIVER (TMS.ASM) +TMSMODE .SET TMSMODE_MSX ; TMS: DRIVER MODE: TMSMODE_[SCG|N8|MBC|RC|RCV9958|RCKBD] +MKYENABLE .SET FALSE ; MSX 5255 PPI KEYBOARD COMPATIBLE DRIVER (REQUIRES TMS VDA DRIVER) +VDAEMU_SERKBD .SET 0 ; VDA EMULATION: SERIAL KBD UNIT #, OR $FF FOR HW KBD +; +AY38910ENABLE .SET FALSE ; AY: AY-3-8910 / YM2149 SOUND DRIVER +SN76489ENABLE .SET FALSE ; SN: ENABLE SN76489 SOUND DRIVER +; FDENABLE .SET TRUE ; FD: ENABLE FLOPPY DISK DRIVER (FD.ASM) FDMODE .SET FDMODE_RCWDC ; FD: DRIVER MODE: FDMODE_[DIO|ZETA|ZETA2|DIDE|N8|DIO3|RCSMC|RCWDC|DYNO|EPWDC] ; IDEENABLE .SET TRUE ; IDE: ENABLE IDE DISK DRIVER (IDE.ASM) -; PPIDEENABLE .SET TRUE ; PPIDE: ENABLE PARALLEL PORT IDE DISK DRIVER (PPIDE.ASM) +SDENABLE .SET FALSE ; SD: ENABLE SD CARD DISK DRIVER (SD.ASM) +SDCNT .SET 1 ; SD: NUMBER OF SD CARD DEVICES (1-2), FOR DSD/SC/MT SC ONLY ; PRPENABLE .SET FALSE ; PRP: ENABLE ECB PROPELLER IO BOARD DRIVER (PRP.ASM) diff --git a/Source/HBIOS/Config/RCZ80_duart.asm b/Source/HBIOS/Config/RCZ80_duart.asm deleted file mode 100644 index 01dc5e5b..00000000 --- a/Source/HBIOS/Config/RCZ80_duart.asm +++ /dev/null @@ -1,34 +0,0 @@ -; -;================================================================================================== -; RC2014 Z80 CONFIGURATION W/ DUART -;================================================================================================== -; -; THE COMPLETE SET OF DEFAULT CONFIGURATION SETTINGS FOR THIS PLATFORM ARE FOUND IN THE -; CFG_.ASM INCLUDED FILE WHICH IS FOUND IN THE PARENT DIRECTORY. THIS FILE CONTAINS -; COMMON CONFIGURATION SETTINGS THAT OVERRIDE THE DEFAULTS. IT IS INTENDED THAT YOU MAKE -; YOUR CUSTOMIZATIONS IN THIS FILE AND JUST INHERIT ALL OTHER SETTINGS FROM THE DEFAULTS. -; EVEN BETTER, YOU CAN MAKE A COPY OF THIS FILE WITH A NAME LIKE _XXX.ASM AND SPECIFY -; YOUR FILE IN THE BUILD PROCESS. -; -; THE SETTINGS BELOW ARE THE SETTINGS THAT ARE MOST COMMONLY MODIFIED FOR THIS PLATFORM. -; MANY OF THEM ARE EQUAL TO THE SETTINGS IN THE INCLUDED FILE, SO THEY DON'T REALLY DO -; ANYTHING AS IS. THEY ARE LISTED HERE TO MAKE IT EASY FOR YOU TO ADJUST THE MOST COMMON -; SETTINGS. -; -; N.B., SINCE THE SETTINGS BELOW ARE REDEFINING VALUES ALREADY SET IN THE INCLUDED FILE, -; TASM INSISTS THAT YOU USE THE .SET OPERATOR AND NOT THE .EQU OPERATOR BELOW. ATTEMPTING -; TO REDEFINE A VALUE WITH .EQU BELOW WILL CAUSE TASM ERRORS! -; -; PLEASE REFER TO THE CUSTOM BUILD INSTRUCTIONS (README.TXT) IN THE SOURCE DIRECTORY (TWO -; DIRECTORIES ABOVE THIS ONE). -; -#DEFINE BOOT_DEFAULT "H" ; DEFAULT BOOT LOADER CMD ON OR AUTO BOOT -; -#include "Config/RCZ80_std.asm" -; -CRTACT .SET FALSE ; ACTIVATE CRT (VDU,CVDU,PROPIO,ETC) AT STARTUP -; -DUARTENABLE .SET TRUE ; DUART: ENABLE 2681/2692 SERIAL DRIVER (DUART.ASM) -DUARTCNT .SET 1 ; DUART: NUMBER OF CHIPS TO DETECT (1-2) -; -PRPENABLE .SET FALSE ; PRP: ENABLE ECB PROPELLER IO BOARD DRIVER (PRP.ASM) diff --git a/Source/HBIOS/Config/RCZ80_easy.asm b/Source/HBIOS/Config/RCZ80_easy.asm new file mode 100644 index 00000000..3245a621 --- /dev/null +++ b/Source/HBIOS/Config/RCZ80_easy.asm @@ -0,0 +1,75 @@ +; +;================================================================================================== +; EASY Z80 STANDARD CONFIGURATION +;================================================================================================== +; +; THE COMPLETE SET OF DEFAULT CONFIGURATION SETTINGS FOR THIS PLATFORM ARE FOUND IN THE +; CFG_.ASM INCLUDED FILE WHICH IS FOUND IN THE PARENT DIRECTORY. THIS FILE CONTAINS +; COMMON CONFIGURATION SETTINGS THAT OVERRIDE THE DEFAULTS. IT IS INTENDED THAT YOU MAKE +; YOUR CUSTOMIZATIONS IN THIS FILE AND JUST INHERIT ALL OTHER SETTINGS FROM THE DEFAULTS. +; EVEN BETTER, YOU CAN MAKE A COPY OF THIS FILE WITH A NAME LIKE _XXX.ASM AND SPECIFY +; YOUR FILE IN THE BUILD PROCESS. +; +; THE SETTINGS BELOW ARE THE SETTINGS THAT ARE MOST COMMONLY MODIFIED FOR THIS PLATFORM. +; MANY OF THEM ARE EQUAL TO THE SETTINGS IN THE INCLUDED FILE, SO THEY DON'T REALLY DO +; ANYTHING AS IS. THEY ARE LISTED HERE TO MAKE IT EASY FOR YOU TO ADJUST THE MOST COMMON +; SETTINGS. +; +; N.B., SINCE THE SETTINGS BELOW ARE REDEFINING VALUES ALREADY SET IN THE INCLUDED FILE, +; TASM INSISTS THAT YOU USE THE .SET OPERATOR AND NOT THE .EQU OPERATOR BELOW. ATTEMPTING +; TO REDEFINE A VALUE WITH .EQU BELOW WILL CAUSE TASM ERRORS! +; +; PLEASE REFER TO THE CUSTOM BUILD INSTRUCTIONS (README.TXT) IN THE SOURCE DIRECTORY (TWO +; DIRECTORIES ABOVE THIS ONE). +; +#DEFINE PLATFORM_NAME "Easy-Z80", " [", CONFIG, "]" +; +#DEFINE BOOT_DEFAULT "H" ; DEFAULT BOOT LOADER CMD ON OR AUTO BOOT +; +#include "cfg_rcz80.asm" +; +CPUOSC .SET 10000000 ; CPU OSC FREQ IN MHZ +CRTACT .SET FALSE ; ACTIVATE CRT (VDU,CVDU,PROPIO,ETC) AT STARTUP +INTMODE .SET 2 ; INTERRUPTS: 0=NONE, 1=MODE 1, 2=MODE 2, 3=MODE 3 (Z280) +; +WDOGMODE .SET WDOG_EZZ80 ; WATCHDOG MODE: WDOG_[NONE|EZZ80|SKZ] +WDOGIO .SET $6F ; WATCHDOG REGISTER ADR +; +DIAGENABLE .SET FALSE ; ENABLES OUTPUT TO 8 BIT LED DIAGNOSTIC PORT +; +DSRTCENABLE .SET TRUE ; DSRTC: ENABLE DS-1302 CLOCK DRIVER (DSRTC.ASM) +RP5RTCENABLE .SET FALSE ; RP5C01 RTC BASED CLOCK (RP5RTC.ASM) +; +CTCENABLE .SET TRUE ; ENABLE ZILOG CTC SUPPORT +CTCTIMER .SET TRUE ; ENABLE CTC PERIODIC TIMER +CTCMODE .SET CTCMODE_CTR ; CTC MODE: CTCMODE_[NONE|CTR|TIM16|TIM256] +CTCOSC .SET 921600 ; CTC CLOCK FREQUENCY +; +UARTENABLE .SET TRUE ; UART: ENABLE 8250/16550-LIKE SERIAL DRIVER (UART.ASM) +ACIAENABLE .SET FALSE ; ACIA: ENABLE MOTOROLA 6850 ACIA DRIVER (ACIA.ASM) +SIOENABLE .SET TRUE ; SIO: ENABLE ZILOG SIO SERIAL DRIVER (SIO.ASM) +SIO0MODE .SET SIOMODE_STD ; SIO 0: CHIP TYPE: SIOMODE_[STD|RC|SMB|ZP] +SIO0ACLK .SET 1843200 ; SIO 0A: OSC FREQ IN HZ, ZP=2457600/4915200, RC/SMB=7372800 +SIO0BCLK .SET 1843200 ; SIO 0B: OSC FREQ IN HZ, ZP=2457600/4915200, RC/SMB=7372800 +SIO1ACLK .SET 7372800 ; SIO 1A: OSC FREQ IN HZ, ZP=2457600/4915200, RC/SMB=7372800 +SIO1BCLK .SET 7372800 ; SIO 1B: OSC FREQ IN HZ, ZP=2457600/4915200, RC/SMB=7372800 +DUARTENABLE .SET FALSE ; DUART: ENABLE 2681/2692 SERIAL DRIVER (DUART.ASM) +; +TMSENABLE .SET FALSE ; TMS: ENABLE TMS9918 VIDEO/KBD DRIVER (TMS.ASM) +TMSTIMENABLE .SET FALSE ; TMS: ENABLE TIMER INTERRUPTS (REQUIRES IM1) +TMSMODE .SET TMSMODE_MSX ; TMS: DRIVER MODE: TMSMODE_[SCG|N8|MBC|RC|RCV9958|RCKBD] +MKYENABLE .SET FALSE ; MSX 5255 PPI KEYBOARD COMPATIBLE DRIVER (REQUIRES TMS VDA DRIVER) +VDAEMU_SERKBD .SET 0 ; VDA EMULATION: SERIAL KBD UNIT #, OR $FF FOR HW KBD +; +AY38910ENABLE .SET FALSE ; AY: AY-3-8910 / YM2149 SOUND DRIVER +SN76489ENABLE .SET FALSE ; SN: ENABLE SN76489 SOUND DRIVER +; +FDENABLE .SET TRUE ; FD: ENABLE FLOPPY DISK DRIVER (FD.ASM) +FDMODE .SET FDMODE_RCWDC ; FD: DRIVER MODE: FDMODE_[DIO|ZETA|ZETA2|DIDE|N8|DIO3|RCSMC|RCWDC|DYNO|EPWDC] +; +IDEENABLE .SET TRUE ; IDE: ENABLE IDE DISK DRIVER (IDE.ASM) +PPIDEENABLE .SET TRUE ; PPIDE: ENABLE PARALLEL PORT IDE DISK DRIVER (PPIDE.ASM) +SDENABLE .SET FALSE ; SD: ENABLE SD CARD DISK DRIVER (SD.ASM) +SDCNT .SET 1 ; SD: NUMBER OF SD CARD DEVICES (1-2), FOR DSD/SC/MT SC ONLY +; +PRPENABLE .SET FALSE ; PRP: ENABLE ECB PROPELLER IO BOARD DRIVER (PRP.ASM) diff --git a/Source/HBIOS/Config/RCZ80_kio.asm b/Source/HBIOS/Config/RCZ80_kio.asm index 157f8cb4..2c1c7029 100644 --- a/Source/HBIOS/Config/RCZ80_kio.asm +++ b/Source/HBIOS/Config/RCZ80_kio.asm @@ -24,19 +24,23 @@ ; #DEFINE BOOT_DEFAULT "H" ; DEFAULT BOOT LOADER CMD ON OR AUTO BOOT ; -#include "Config/RCZ80_std.asm" -; -CRTACT .SET FALSE ; ACTIVATE CRT (VDU,CVDU,PROPIO,ETC) AT STARTUP +#include "cfg_rcz80.asm" ; +CPUOSC .SET 7372800 ; CPU OSC FREQ IN MHZ INTMODE .SET 2 ; INTERRUPTS: 0=NONE, 1=MODE 1, 2=MODE 2 +CRTACT .SET FALSE ; ACTIVATE CRT (VDU,CVDU,PROPIO,ETC) AT STARTUP ; +DSRTCENABLE .SET TRUE ; DSRTC: ENABLE DS-1302 CLOCK DRIVER (DSRTC.ASM) +RP5RTCENABLE .SET TRUE ; RP5C01 RTC BASED CLOCK (RP5RTC.ASM) KIOENABLE .SET TRUE ; ENABLE ZILOG KIO SUPPORT ; CTCENABLE .SET TRUE ; ENABLE ZILOG CTC SUPPORT CTCTIMER .SET TRUE ; ENABLE CTC PERIODIC TIMER CTCBASE .SET KIOBASE+$04 ; CTC BASE I/O ADDRESS ; +UARTENABLE .SET TRUE ; UART: ENABLE 8250/16550-LIKE SERIAL DRIVER (UART.ASM) ACIAENABLE .SET FALSE ; ACIA: ENABLE MOTOROLA 6850 ACIA DRIVER (ACIA.ASM) +DUARTENABLE .SET FALSE ; DUART: ENABLE 2681/2692 SERIAL DRIVER (DUART.ASM) ; SIOENABLE .SET TRUE ; SIO: ENABLE ZILOG SIO SERIAL DRIVER (SIO.ASM) SIOCNT .SET 1 ; SIO: NUMBER OF CHIPS TO DETECT (1-2), 2 CHANNELS PER CHIP @@ -47,4 +51,21 @@ SIO0ACTCC .SET 0 ; SIO 0A: CTC CHANNEL 0=A, 1=B, 2=C, 3=D, -1 FOR NONE SIO0BCLK .SET 1843200 ; SIO 0B: OSC FREQ IN HZ, ZP=2457600/4915200, RC/SMB=7372800 SIO0BCTCC .SET 1 ; SIO 0B: CTC CHANNEL 0=A, 1=B, 2=C, 3=D, -1 FOR NONE ; +TMSENABLE .SET FALSE ; TMS: ENABLE TMS9918 VIDEO/KBD DRIVER (TMS.ASM) +TMSTIMENABLE .SET FALSE ; TMS: ENABLE TIMER INTERRUPTS (REQUIRES IM1) +TMSMODE .SET TMSMODE_MSX ; TMS: DRIVER MODE: TMSMODE_[SCG|N8|MBC|RC|RCV9958|RCKBD] +MKYENABLE .SET FALSE ; MSX 5255 PPI KEYBOARD COMPATIBLE DRIVER (REQUIRES TMS VDA DRIVER) +VDAEMU_SERKBD .SET 0 ; VDA EMULATION: SERIAL KBD UNIT #, OR $FF FOR HW KBD +; +AY38910ENABLE .SET FALSE ; AY: AY-3-8910 / YM2149 SOUND DRIVER +SN76489ENABLE .SET FALSE ; SN: ENABLE SN76489 SOUND DRIVER +; +FDENABLE .SET TRUE ; FD: ENABLE FLOPPY DISK DRIVER (FD.ASM) +FDMODE .SET FDMODE_RCWDC ; FD: DRIVER MODE: FDMODE_[DIO|ZETA|ZETA2|DIDE|N8|DIO3|RCSMC|RCWDC|DYNO|EPWDC] +; +IDEENABLE .SET TRUE ; IDE: ENABLE IDE DISK DRIVER (IDE.ASM) +PPIDEENABLE .SET TRUE ; PPIDE: ENABLE PARALLEL PORT IDE DISK DRIVER (PPIDE.ASM) +SDENABLE .SET FALSE ; SD: ENABLE SD CARD DISK DRIVER (SD.ASM) +SDCNT .SET 1 ; SD: NUMBER OF SD CARD DEVICES (1-2), FOR DSD/SC/MT SC ONLY +; PRPENABLE .SET FALSE ; PRP: ENABLE ECB PROPELLER IO BOARD DRIVER (PRP.ASM) diff --git a/Source/HBIOS/Config/RCZ80_mt.asm b/Source/HBIOS/Config/RCZ80_mt.asm deleted file mode 100644 index f7c73f46..00000000 --- a/Source/HBIOS/Config/RCZ80_mt.asm +++ /dev/null @@ -1,34 +0,0 @@ -; -;================================================================================================== -; RC2014 Z80 CONFIGURATION W/ MT011 -;================================================================================================== -; -; THE COMPLETE SET OF DEFAULT CONFIGURATION SETTINGS FOR THIS PLATFORM ARE FOUND IN THE -; CFG_.ASM INCLUDED FILE WHICH IS FOUND IN THE PARENT DIRECTORY. THIS FILE CONTAINS -; COMMON CONFIGURATION SETTINGS THAT OVERRIDE THE DEFAULTS. IT IS INTENDED THAT YOU MAKE -; YOUR CUSTOMIZATIONS IN THIS FILE AND JUST INHERIT ALL OTHER SETTINGS FROM THE DEFAULTS. -; EVEN BETTER, YOU CAN MAKE A COPY OF THIS FILE WITH A NAME LIKE _XXX.ASM AND SPECIFY -; YOUR FILE IN THE BUILD PROCESS. -; -; THE SETTINGS BELOW ARE THE SETTINGS THAT ARE MOST COMMONLY MODIFIED FOR THIS PLATFORM. -; MANY OF THEM ARE EQUAL TO THE SETTINGS IN THE INCLUDED FILE, SO THEY DON'T REALLY DO -; ANYTHING AS IS. THEY ARE LISTED HERE TO MAKE IT EASY FOR YOU TO ADJUST THE MOST COMMON -; SETTINGS. -; -; N.B., SINCE THE SETTINGS BELOW ARE REDEFINING VALUES ALREADY SET IN THE INCLUDED FILE, -; TASM INSISTS THAT YOU USE THE .SET OPERATOR AND NOT THE .EQU OPERATOR BELOW. ATTEMPTING -; TO REDEFINE A VALUE WITH .EQU BELOW WILL CAUSE TASM ERRORS! -; -; PLEASE REFER TO THE CUSTOM BUILD INSTRUCTIONS (README.TXT) IN THE SOURCE DIRECTORY (TWO -; DIRECTORIES ABOVE THIS ONE). -; -#DEFINE BOOT_DEFAULT "H" ; DEFAULT BOOT LOADER CMD ON OR AUTO BOOT -; -#include "Config/RCZ80_std.asm" -; -CRTACT .SET FALSE ; ACTIVATE CRT (VDU,CVDU,PROPIO,ETC) AT STARTUP -; -TMSENABLE .SET FALSE ; TMS: ENABLE TMS9918 VIDEO/KBD DRIVER (TMS.ASM) -TMSTIMENABLE .SET FALSE ; TMS: ENABLE TIMER INTERRUPTS (REQUIRES IM1) -; -SDENABLE .SET TRUE ; SD: ENABLE SD CARD DISK DRIVER (SD.ASM) diff --git a/Source/HBIOS/Config/RCZ80_skz.asm b/Source/HBIOS/Config/RCZ80_skz.asm index 6dd09a98..08bb1d57 100644 --- a/Source/HBIOS/Config/RCZ80_skz.asm +++ b/Source/HBIOS/Config/RCZ80_skz.asm @@ -24,15 +24,43 @@ ; #DEFINE BOOT_DEFAULT "H" ; DEFAULT BOOT LOADER CMD ON OR AUTO BOOT ; -#include "Config/RCZ80_std.asm" +#include "cfg_rcz80.asm" ; -LEDENABLE .SET TRUE ; ENABLES STATUS LED (SINGLE LED) -LEDPORT .SET $6E ; STATUS LED PORT ADDRESS +CPUOSC .SET 7372800 ; CPU OSC FREQ IN MHZ +CRTACT .SET FALSE ; ACTIVATE CRT (VDU,CVDU,PROPIO,ETC) AT STARTUP ; SKZENABLE .SET TRUE ; ENABLE SERGEY'S Z80-512K FEATURES SKZDIV .SET DIV_12 ; UART CLK (CLK2) DIVIDER FOR Z80-512K -; WDOGMODE .SET WDOG_SKZ ; WATCHDOG MODE: WDOG_[NONE|EZZ80|SKZ] ; +LEDENABLE .SET TRUE ; ENABLES STATUS LED (SINGLE LED) +LEDPORT .SET $6E ; STATUS LED PORT ADDRESS +; +DSRTCENABLE .SET TRUE ; DSRTC: ENABLE DS-1302 CLOCK DRIVER (DSRTC.ASM) +RP5RTCENABLE .SET TRUE ; RP5C01 RTC BASED CLOCK (RP5RTC.ASM) +; +UARTENABLE .SET TRUE ; UART: ENABLE 8250/16550-LIKE SERIAL DRIVER (UART.ASM) +ACIAENABLE .SET TRUE ; ACIA: ENABLE MOTOROLA 6850 ACIA DRIVER (ACIA.ASM) +SIOENABLE .SET TRUE ; SIO: ENABLE ZILOG SIO SERIAL DRIVER (SIO.ASM) SIO0BCLK .SET CPUOSC / 12 ; SIO 0B: OSC FREQ IN HZ, ZP=2457600/4915200, RC/SMB=7372800 SIO0BCFG .SET SER_38400_8N1 ; SIO 0B: SERIAL LINE CONFIG +DUARTENABLE .SET FALSE ; DUART: ENABLE 2681/2692 SERIAL DRIVER (DUART.ASM) +; +TMSENABLE .SET FALSE ; TMS: ENABLE TMS9918 VIDEO/KBD DRIVER (TMS.ASM) +TMSTIMENABLE .SET FALSE ; TMS: ENABLE TIMER INTERRUPTS (REQUIRES IM1) +TMSMODE .SET TMSMODE_MSX ; TMS: DRIVER MODE: TMSMODE_[SCG|N8|MBC|RC|RCV9958|RCKBD] +MKYENABLE .SET FALSE ; MSX 5255 PPI KEYBOARD COMPATIBLE DRIVER (REQUIRES TMS VDA DRIVER) +VDAEMU_SERKBD .SET 0 ; VDA EMULATION: SERIAL KBD UNIT #, OR $FF FOR HW KBD +; +AY38910ENABLE .SET FALSE ; AY: AY-3-8910 / YM2149 SOUND DRIVER +SN76489ENABLE .SET FALSE ; SN: ENABLE SN76489 SOUND DRIVER +; +FDENABLE .SET TRUE ; FD: ENABLE FLOPPY DISK DRIVER (FD.ASM) +FDMODE .SET FDMODE_RCWDC ; FD: DRIVER MODE: FDMODE_[DIO|ZETA|ZETA2|DIDE|N8|DIO3|RCSMC|RCWDC|DYNO|EPWDC] +; +IDEENABLE .SET TRUE ; IDE: ENABLE IDE DISK DRIVER (IDE.ASM) +PPIDEENABLE .SET TRUE ; PPIDE: ENABLE PARALLEL PORT IDE DISK DRIVER (PPIDE.ASM) +SDENABLE .SET FALSE ; SD: ENABLE SD CARD DISK DRIVER (SD.ASM) +SDCNT .SET 1 ; SD: NUMBER OF SD CARD DEVICES (1-2), FOR DSD/SC/MT SC ONLY +; +PRPENABLE .SET FALSE ; PRP: ENABLE ECB PROPELLER IO BOARD DRIVER (PRP.ASM) diff --git a/Source/HBIOS/Config/RCZ80_std.asm b/Source/HBIOS/Config/RCZ80_std.asm index de027501..6ee7124d 100644 --- a/Source/HBIOS/Config/RCZ80_std.asm +++ b/Source/HBIOS/Config/RCZ80_std.asm @@ -26,13 +26,16 @@ ; #include "cfg_rcz80.asm" ; +CPUOSC .SET 7372800 ; CPU OSC FREQ IN MHZ CRTACT .SET FALSE ; ACTIVATE CRT (VDU,CVDU,PROPIO,ETC) AT STARTUP ; -CPUOSC .SET 7372800 ; CPU OSC FREQ IN MHZ +DSRTCENABLE .SET TRUE ; DSRTC: ENABLE DS-1302 CLOCK DRIVER (DSRTC.ASM) +RP5RTCENABLE .SET TRUE ; RP5C01 RTC BASED CLOCK (RP5RTC.ASM) ; UARTENABLE .SET TRUE ; UART: ENABLE 8250/16550-LIKE SERIAL DRIVER (UART.ASM) ACIAENABLE .SET TRUE ; ACIA: ENABLE MOTOROLA 6850 ACIA DRIVER (ACIA.ASM) SIOENABLE .SET TRUE ; SIO: ENABLE ZILOG SIO SERIAL DRIVER (SIO.ASM) +DUARTENABLE .SET FALSE ; DUART: ENABLE 2681/2692 SERIAL DRIVER (DUART.ASM) ; TMSENABLE .SET FALSE ; TMS: ENABLE TMS9918 VIDEO/KBD DRIVER (TMS.ASM) TMSTIMENABLE .SET FALSE ; TMS: ENABLE TIMER INTERRUPTS (REQUIRES IM1) @@ -40,15 +43,15 @@ TMSMODE .SET TMSMODE_MSX ; TMS: DRIVER MODE: TMSMODE_[SCG|N8|MBC|RC|RCV9958|RCK MKYENABLE .SET FALSE ; MSX 5255 PPI KEYBOARD COMPATIBLE DRIVER (REQUIRES TMS VDA DRIVER) VDAEMU_SERKBD .SET 0 ; VDA EMULATION: SERIAL KBD UNIT #, OR $FF FOR HW KBD ; -AY38910ENABLE .SET TRUE ; AY: AY-3-8910 / YM2149 SOUND DRIVER +AY38910ENABLE .SET FALSE ; AY: AY-3-8910 / YM2149 SOUND DRIVER +SN76489ENABLE .SET FALSE ; SN: ENABLE SN76489 SOUND DRIVER ; FDENABLE .SET TRUE ; FD: ENABLE FLOPPY DISK DRIVER (FD.ASM) FDMODE .SET FDMODE_RCWDC ; FD: DRIVER MODE: FDMODE_[DIO|ZETA|ZETA2|DIDE|N8|DIO3|RCSMC|RCWDC|DYNO|EPWDC] ; IDEENABLE .SET TRUE ; IDE: ENABLE IDE DISK DRIVER (IDE.ASM) -; PPIDEENABLE .SET TRUE ; PPIDE: ENABLE PARALLEL PORT IDE DISK DRIVER (PPIDE.ASM) +SDENABLE .SET FALSE ; SD: ENABLE SD CARD DISK DRIVER (SD.ASM) +SDCNT .SET 1 ; SD: NUMBER OF SD CARD DEVICES (1-2), FOR DSD/SC/MT SC ONLY ; PRPENABLE .SET FALSE ; PRP: ENABLE ECB PROPELLER IO BOARD DRIVER (PRP.ASM) -; -RP5RTCENABLE .SET FALSE ; RP5C01 RTC BASED CLOCK (RP5RTC.ASM) diff --git a/Source/HBIOS/Config/RCZ80_tiny.asm b/Source/HBIOS/Config/RCZ80_tiny.asm new file mode 100644 index 00000000..fed4d843 --- /dev/null +++ b/Source/HBIOS/Config/RCZ80_tiny.asm @@ -0,0 +1,81 @@ +; +;================================================================================================== +; TINY Z80 STANDARD CONFIGURATION +;================================================================================================== +; +; THE COMPLETE SET OF DEFAULT CONFIGURATION SETTINGS FOR THIS PLATFORM ARE FOUND IN THE +; CFG_.ASM INCLUDED FILE WHICH IS FOUND IN THE PARENT DIRECTORY. THIS FILE CONTAINS +; COMMON CONFIGURATION SETTINGS THAT OVERRIDE THE DEFAULTS. IT IS INTENDED THAT YOU MAKE +; YOUR CUSTOMIZATIONS IN THIS FILE AND JUST INHERIT ALL OTHER SETTINGS FROM THE DEFAULTS. +; EVEN BETTER, YOU CAN MAKE A COPY OF THIS FILE WITH A NAME LIKE _XXX.ASM AND SPECIFY +; YOUR FILE IN THE BUILD PROCESS. +; +; THE SETTINGS BELOW ARE THE SETTINGS THAT ARE MOST COMMONLY MODIFIED FOR THIS PLATFORM. +; MANY OF THEM ARE EQUAL TO THE SETTINGS IN THE INCLUDED FILE, SO THEY DON'T REALLY DO +; ANYTHING AS IS. THEY ARE LISTED HERE TO MAKE IT EASY FOR YOU TO ADJUST THE MOST COMMON +; SETTINGS. +; +; N.B., SINCE THE SETTINGS BELOW ARE REDEFINING VALUES ALREADY SET IN THE INCLUDED FILE, +; TASM INSISTS THAT YOU USE THE .SET OPERATOR AND NOT THE .EQU OPERATOR BELOW. ATTEMPTING +; TO REDEFINE A VALUE WITH .EQU BELOW WILL CAUSE TASM ERRORS! +; +; PLEASE REFER TO THE CUSTOM BUILD INSTRUCTIONS (README.TXT) IN THE SOURCE DIRECTORY (TWO +; DIRECTORIES ABOVE THIS ONE). +; +#DEFINE PLATFORM_NAME "Tiny-Z80", " [", CONFIG, "]" +; +#DEFINE BOOT_DEFAULT "H" ; DEFAULT BOOT LOADER CMD ON OR AUTO BOOT +; +#include "cfg_rcz80.asm" +; +CPUOSC .SET 16000000 ; CPU OSC FREQ IN MHZ +CRTACT .SET FALSE ; ACTIVATE CRT (VDU,CVDU,PROPIO,ETC) AT STARTUP +INTMODE .SET 2 ; INTERRUPTS: 0=NONE, 1=MODE 1, 2=MODE 2, 3=MODE 3 (Z280) +; +EIPCENABLE .SET TRUE ; EIPC: ENABLE Z80 EIPC (Z84C15) INITIALIZATION +WDOGMODE .SET WDOG_EZZ80 ; WATCHDOG MODE: WDOG_[NONE|EZZ80|SKZ] +WDOGIO .SET $6F ; WATCHDOG REGISTER ADR +; +DIAGENABLE .SET FALSE ; ENABLES OUTPUT TO 8 BIT LED DIAGNOSTIC PORT +LEDENABLE .SET TRUE ; ENABLES STATUS LED (SINGLE LED) +LEDPORT .SET $6E ; STATUS LED PORT ADDRESS +; +DSRTCENABLE .SET TRUE ; DSRTC: ENABLE DS-1302 CLOCK DRIVER (DSRTC.ASM) +RP5RTCENABLE .SET FALSE ; RP5C01 RTC BASED CLOCK (RP5RTC.ASM) +; +CTCENABLE .SET TRUE ; ENABLE ZILOG CTC SUPPORT +CTCBASE .SET $10 ; CTC BASE I/O ADDRESS +CTCTIMER .SET TRUE ; ENABLE CTC PERIODIC TIMER +CTCMODE .SET CTCMODE_CTR ; CTC MODE: CTCMODE_[NONE|CTR|TIM16|TIM256] +CTCOSC .SET 921600 ; CTC CLOCK FREQUENCY +; +UARTENABLE .SET TRUE ; UART: ENABLE 8250/16550-LIKE SERIAL DRIVER (UART.ASM) +ACIAENABLE .SET FALSE ; ACIA: ENABLE MOTOROLA 6850 ACIA DRIVER (ACIA.ASM) +SIOENABLE .SET TRUE ; SIO: ENABLE ZILOG SIO SERIAL DRIVER (SIO.ASM) +SIO0MODE .SET SIOMODE_STD ; SIO 0: CHIP TYPE: SIOMODE_[STD|RC|SMB|ZP] +SIO0BASE .SET $18 ; SIO 0: REGISTERS BASE ADR +SIO0ACLK .SET 1843200 ; SIO 0A: OSC FREQ IN HZ, ZP=2457600/4915200, RC/SMB=7372800 +SIO0BCLK .SET 1843200 ; SIO 0B: OSC FREQ IN HZ, ZP=2457600/4915200, RC/SMB=7372800 +SIO1ACLK .SET 7372800 ; SIO 1A: OSC FREQ IN HZ, ZP=2457600/4915200, RC/SMB=7372800 +SIO1BCLK .SET 7372800 ; SIO 1B: OSC FREQ IN HZ, ZP=2457600/4915200, RC/SMB=7372800 +DUARTENABLE .SET FALSE ; DUART: ENABLE 2681/2692 SERIAL DRIVER (DUART.ASM) +; +TMSENABLE .SET FALSE ; TMS: ENABLE TMS9918 VIDEO/KBD DRIVER (TMS.ASM) +TMSTIMENABLE .SET FALSE ; TMS: ENABLE TIMER INTERRUPTS (REQUIRES IM1) +TMSMODE .SET TMSMODE_MSX ; TMS: DRIVER MODE: TMSMODE_[SCG|N8|MBC|RC|RCV9958|RCKBD] +MKYENABLE .SET FALSE ; MSX 5255 PPI KEYBOARD COMPATIBLE DRIVER (REQUIRES TMS VDA DRIVER) +VDAEMU_SERKBD .SET 0 ; VDA EMULATION: SERIAL KBD UNIT #, OR $FF FOR HW KBD +; +AY38910ENABLE .SET FALSE ; AY: AY-3-8910 / YM2149 SOUND DRIVER +SN76489ENABLE .SET FALSE ; SN: ENABLE SN76489 SOUND DRIVER +; +FDENABLE .SET TRUE ; FD: ENABLE FLOPPY DISK DRIVER (FD.ASM) +FDMODE .SET FDMODE_RCWDC ; FD: DRIVER MODE: FDMODE_[DIO|ZETA|ZETA2|DIDE|N8|DIO3|RCSMC|RCWDC|DYNO|EPWDC] +; +IDEENABLE .SET TRUE ; IDE: ENABLE IDE DISK DRIVER (IDE.ASM) +IDE0BASE .SET $90 ; IDE 0: IO BASE ADDRESS +PPIDEENABLE .SET TRUE ; PPIDE: ENABLE PARALLEL PORT IDE DISK DRIVER (PPIDE.ASM) +SDENABLE .SET FALSE ; SD: ENABLE SD CARD DISK DRIVER (SD.ASM) +SDCNT .SET 1 ; SD: NUMBER OF SD CARD DEVICES (1-2), FOR DSD/SC/MT SC ONLY +; +PRPENABLE .SET FALSE ; PRP: ENABLE ECB PROPELLER IO BOARD DRIVER (PRP.ASM) diff --git a/Source/HBIOS/cfg_dyno.asm b/Source/HBIOS/cfg_dyno.asm index 06209dbc..dab43fb5 100644 --- a/Source/HBIOS/cfg_dyno.asm +++ b/Source/HBIOS/cfg_dyno.asm @@ -177,7 +177,7 @@ PPIDE0B8BIT .EQU FALSE ; PPIDE 0B (SLAVE): 8 BIT XFER SDENABLE .EQU FALSE ; SD: ENABLE SD CARD DISK DRIVER (SD.ASM) SDMODE .EQU SDMODE_PPI ; SD: DRIVER MODE: SDMODE_[JUHA|N8|CSIO|PPI|UART|DSD|MK4|SC|MT|USR] SDPPIBASE .EQU $60 ; SD: BASE I/O ADDRESS OF PPI FOR PPI MODDE -SDCNT .EQU 1 ; SD: NUMBER OF SD CARD DEVICES (1-2), FOR DSD & SC ONLY +SDCNT .EQU 1 ; SD: NUMBER OF SD CARD DEVICES (1-2), FOR DSD/SC/MT ONLY SDTRACE .EQU 1 ; SD: TRACE LEVEL (0=NO,1=ERRORS,2=ALL) SDCSIOFAST .EQU FALSE ; SD: ENABLE TABLE-DRIVEN BIT INVERTER IN CSIO MODE ; diff --git a/Source/HBIOS/cfg_ezz80.asm b/Source/HBIOS/cfg_ezz80.asm deleted file mode 100644 index e725d028..00000000 --- a/Source/HBIOS/cfg_ezz80.asm +++ /dev/null @@ -1,260 +0,0 @@ -; -;================================================================================================== -; ROMWBW 2.X CONFIGURATION DEFAULTS FOR EASY Z80 -;================================================================================================== -; -; THIS FILE CONTAINS THE FULL SET OF DEFAULT CONFIGURATION SETTINGS FOR THE PLATFORM -; INDICATED ABOVE. THIS FILE SHOULD *NOT* NORMALLY BE CHANGED. INSTEAD, YOU SHOULD -; OVERRIDE ANY SETTINGS YOU WANT USING A CONFIGURATION FILE IN THE CONFIG DIRECTORY -; UNDER THIS DIRECTORY. -; -; THIS FILE CAN BE CONSIDERED A REFERENCE THAT LISTS ALL POSSIBLE CONFIGURATION SETTINGS -; FOR THE PLATFORM. -; -#DEFINE PLATFORM_NAME "Easy-Z80", " [", CONFIG, "]" -; -#INCLUDE "hbios.inc" -; -PLATFORM .EQU PLT_EZZ80 ; 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_WBW ; HARDWARE BIOS: BIOS_[WBW|UNA] -BATCOND .EQU FALSE ; ENABLE LOW BATTERY WARNING MESSAGE -HBIOS_MUTEX .EQU FALSE ; ENABLE REENTRANT CALLS TO HBIOS (ADDS OVERHEAD) -USELZSA2 .EQU TRUE ; ENABLE FONT COMPRESSION -TICKFREQ .EQU 50 ; DESIRED PERIODIC TIMER INTERRUPT FREQUENCY (HZ) -; -BOOT_TIMEOUT .EQU -1 ; AUTO BOOT TIMEOUT IN SECONDS, -1 TO DISABLE, 0 FOR IMMEDIATE -BOOT_DELAY .EQU 0 ; FIXED BOOT DELAY IN SECONDS PRIOR TO CONSOLE OUTPUT -; -CPUSPDCAP .EQU SPD_FIXED ; CPU SPEED CHANGE CAPABILITY SPD_FIXED|SPD_HILO -CPUSPDDEF .EQU SPD_HIGH ; CPU SPEED DEFAULT SPD_UNSUP|SPD_HIGH|SPD_LOW -CPUOSC .EQU 10000000 ; CPU OSC FREQ IN MHZ -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 VERIFICATION (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) -MPGSEL_1 .EQU $79 ; Z2 MEM MGR BANK 1 PAGE SELECT REG (WRITE ONLY) -MPGSEL_2 .EQU $7A ; Z2 MEM MGR BANK 2 PAGE SELECT REG (WRITE ONLY) -MPGSEL_3 .EQU $7B ; Z2 MEM MGR BANK 3 PAGE SELECT REG (WRITE ONLY) -MPGENA .EQU $7C ; Z2 MEM MGR PAGING ENABLE REGISTER (BIT 0, WRITE ONLY) -; -RTCIO .EQU $C0 ; RTC LATCH REGISTER ADR -; -KIOENABLE .EQU FALSE ; ENABLE ZILOG KIO SUPPORT -KIOBASE .EQU $80 ; KIO BASE I/O ADDRESS -; -CTCENABLE .EQU TRUE ; ENABLE ZILOG CTC SUPPORT -CTCDEBUG .EQU FALSE ; ENABLE CTC DRIVER DEBUG OUTPUT -CTCBASE .EQU $88 ; CTC BASE I/O ADDRESS -CTCTIMER .EQU TRUE ; ENABLE CTC PERIODIC TIMER -CTCMODE .EQU CTCMODE_CTR ; CTC MODE: CTCMODE_[NONE|CTR|TIM16|TIM256] -CTCPRE .EQU 256 ; PRESCALE CONSTANT (1-256) -CTCPRECH .EQU 2 ; PRESCALE CHANNEL (0-3) -CTCTIMCH .EQU 3 ; TIMER CHANNEL (0-3) -CTCOSC .EQU 921600 ; CTC CLOCK FREQUENCY -; -EIPCENABLE .EQU FALSE ; EIPC: ENABLE Z80 EIPC (Z84C15) INITIALIZATION -; -SKZENABLE .EQU FALSE ; ENABLE SERGEY'S Z80-512K FEATURES -; -WDOGMODE .EQU WDOG_EZZ80 ; WATCHDOG MODE: WDOG_[NONE|EZZ80|SKZ] -WDOGIO .EQU $6F ; WATCHDOG REGISTER ADR -; -DIAGENABLE .EQU FALSE ; ENABLES OUTPUT TO 8 BIT LED DIAGNOSTIC PORT -DIAGPORT .EQU $00 ; DIAGNOSTIC PORT ADDRESS -DIAGDISKIO .EQU TRUE ; ENABLES DISK I/O ACTIVITY ON DIAGNOSTIC LEDS -DIAGLVL .EQU DL_CRITICAL ; ERROR LEVEL REPORTING -; -LEDENABLE .EQU FALSE ; ENABLES STATUS LED (SINGLE LED) -LEDMODE .EQU LEDMODE_STD ; LEDMODE_[STD|RTC] -LEDPORT .EQU $0E ; STATUS LED PORT ADDRESS -LEDDISKIO .EQU TRUE ; ENABLES DISK I/O ACTIVITY ON STATUS LED -; -DSKYENABLE .EQU FALSE ; ENABLES DSKY (DO NOT COMBINE WITH PPIDE) -; -BOOTCON .EQU 0 ; BOOT CONSOLE DEVICE -CRTACT .EQU FALSE ; ACTIVATE CRT (VDU,CVDU,PROPIO,ETC) AT STARTUP -VDAEMU .EQU EMUTYP_ANSI ; VDA EMULATION: EMUTYP_[TTY|ANSI] -VDAEMU_SERKBD .EQU $FF ; VDA EMULATION: SERIAL KBD UNIT #, OR $FF FOR HW KBD -ANSITRACE .EQU 1 ; ANSI DRIVER TRACE LEVEL (0=NO,1=ERRORS,2=ALL) -PPKTRACE .EQU 1 ; PPK DRIVER TRACE LEVEL (0=NO,1=ERRORS,2=ALL) -KBDTRACE .EQU 1 ; KBD DRIVER TRACE LEVEL (0=NO,1=ERRORS,2=ALL) -PPKKBLOUT .EQU KBD_US ; PPK KEYBOARD LANGUAGE: KBD_[US|DE] -KBDKBLOUT .EQU KBD_US ; KBD KEYBOARD LANGUAGE: KBD_[US|DE] -MKYENABLE .EQU FALSE ; MSX 5255 PPI KEYBOARD COMPATIBLE DRIVER (REQUIRES TMS VDA DRIVER) -MKYKBLOUT .EQU KBD_US ; KBD KEYBOARD LANGUAGE: KBD_[US|DE] -; -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 -; -INTRTCENABLE .EQU FALSE ; ENABLE PERIODIC INTERRUPT CLOCK DRIVER (INTRTC.ASM) -; -RP5RTCENABLE .EQU FALSE ; RP5C01 RTC BASED CLOCK (RP5RTC.ASM) -; -HTIMENABLE .EQU FALSE ; ENABLE SIMH TIMER SUPPORT -SIMRTCENABLE .EQU FALSE ; ENABLE SIMH CLOCK DRIVER (SIMRTC.ASM) -; -DS7RTCENABLE .EQU FALSE ; DS7RTC: ENABLE DS-1307 I2C CLOCK DRIVER (DS7RTC.ASM) -DS7RTCMODE .EQU DS7RTCMODE_PCF ; DS7RTC: OPERATING MODE: DS7RTC_[PCF] -; -DUARTENABLE .EQU FALSE ; DUART: ENABLE 2681/2692 SERIAL DRIVER (DUART.ASM) -DUARTCNT .EQU 2 ; DUART: NUMBER OF CHIPS TO DETECT (1-2) -DUART0BASE .EQU $A0 ; DUART 0: BASE ADDRESS OF CHIP -DUART0ACFG .EQU DEFSERCFG ; DUART 0A: SERIAL LINE CONFIG -DUART0BCFG .EQU DEFSERCFG ; DUART 0B: SERIAL LINE CONFIG -DUART1BASE .EQU $40 ; DUART 1: BASE ADDRESS OF CHIP -DUART1ACFG .EQU DEFSERCFG ; DUART 1A: SERIAL LINE CONFIG -DUART1BCFG .EQU DEFSERCFG ; DUART 1B: SERIAL LINE CONFIG -; -UARTENABLE .EQU TRUE ; UART: ENABLE 8250/16550-LIKE SERIAL DRIVER (UART.ASM) -UARTOSC .EQU 1843200 ; UART: OSC FREQUENCY IN MHZ -UARTINTS .EQU FALSE ; UART: INCLUDE INTERRUPT SUPPORT UNDER IM1/2/3 -UARTCFG .EQU DEFSERCFG | SER_RTS ; UART: LINE CONFIG FOR UART PORTS -UARTSBC .EQU FALSE ; UART: AUTO-DETECT SBC/ZETA ONBOARD UART -UARTSBCFORCE .EQU FALSE ; UART: FORCE DETECTION OF SBC UART (FOR SIMH) -UARTCAS .EQU FALSE ; UART: AUTO-DETECT ECB CASSETTE UART -UARTMFP .EQU FALSE ; UART: AUTO-DETECT MF/PIC UART -UART4 .EQU FALSE ; UART: AUTO-DETECT 4UART UART -UARTRC .EQU TRUE ; UART: AUTO-DETECT RC UART -UARTDUAL .EQU FALSE ; UART: AUTO-DETECT DUAL UART -; -ASCIENABLE .EQU FALSE ; ASCI: ENABLE Z180 ASCI SERIAL DRIVER (ASCI.ASM) -; -Z2UENABLE .EQU FALSE ; Z2U: ENABLE Z280 UART SERIAL DRIVER (Z2U.ASM) -; -ACIAENABLE .EQU FALSE ; ACIA: ENABLE MOTOROLA 6850 ACIA DRIVER (ACIA.ASM) -; -SIOENABLE .EQU TRUE ; SIO: ENABLE ZILOG SIO SERIAL DRIVER (SIO.ASM) -SIODEBUG .EQU FALSE ; SIO: ENABLE DEBUG OUTPUT -SIOBOOT .EQU 0 ; SIO: REBOOT ON RCV CHAR (0=DISABLED) -SIOCNT .EQU 2 ; SIO: NUMBER OF CHIPS TO DETECT (1-2), 2 CHANNELS PER CHIP -SIO0MODE .EQU SIOMODE_STD ; SIO 0: CHIP TYPE: SIOMODE_[STD|RC|SMB|ZP] -SIO0BASE .EQU $80 ; SIO 0: REGISTERS BASE ADR -SIO0ACLK .EQU 1843200 ; SIO 0A: OSC FREQ IN HZ, ZP=2457600/4915200, RC/SMB=7372800 -SIO0ACFG .EQU DEFSERCFG ; SIO 0A: SERIAL LINE CONFIG -SIO0ACTCC .EQU -1 ; SIO 0A: CTC CHANNEL 0=A, 1=B, 2=C, 3=D, -1 FOR NONE -SIO0BCLK .EQU 1843200 ; SIO 0B: OSC FREQ IN HZ, ZP=2457600/4915200, RC/SMB=7372800 -SIO0BCFG .EQU DEFSERCFG ; SIO 0B: SERIAL LINE CONFIG -SIO0BCTCC .EQU -1 ; SIO 0B: CTC CHANNEL 0=A, 1=B, 2=C, 3=D, -1 FOR NONE -SIO1MODE .EQU SIOMODE_RC ; SIO 1: CHIP TYPE: SIOMODE_[STD|RC|SMB|ZP] -SIO1BASE .EQU $84 ; SIO 1: REGISTERS BASE ADR -SIO1ACLK .EQU 7372800 ; SIO 1A: OSC FREQ IN HZ, ZP=2457600/4915200, RC/SMB=7372800 -SIO1ACFG .EQU DEFSERCFG ; SIO 1A: SERIAL LINE CONFIG -SIO1ACTCC .EQU -1 ; SIO 1A: CTC CHANNEL 0=A, 1=B, 2=C, 3=D, -1 FOR NONE -SIO1BCLK .EQU 7372800 ; SIO 1B: OSC FREQ IN HZ, ZP=2457600/4915200, RC/SMB=7372800 -SIO1BCFG .EQU DEFSERCFG ; SIO 1B: SERIAL LINE CONFIG -SIO1BCTCC .EQU -1 ; SIO 1B: CTC CHANNEL 0=A, 1=B, 2=C, 3=D, -1 FOR NONE -; -XIOCFG .EQU DEFSERCFG ; XIO: SERIAL LINE CONFIG -; -VDUENABLE .EQU FALSE ; VDU: ENABLE VDU VIDEO/KBD DRIVER (VDU.ASM) -CVDUENABLE .EQU FALSE ; CVDU: ENABLE CVDU VIDEO/KBD DRIVER (CVDU.ASM) -GDCENABLE .EQU FALSE ; GDC: ENABLE 7220 GDC VIDEO/KBD DRIVER (GDC.ASM) -TMSENABLE .EQU FALSE ; TMS: ENABLE TMS9918 VIDEO/KBD DRIVER (TMS.ASM) -TMSMODE .EQU TMSMODE_NONE ; TMS: DRIVER MODE: TMSMODE_[SCG|N8|MBC|MSX|RCV9958|RCKBD] -TMSTIMENABLE .EQU FALSE ; TMS: ENABLE TIMER INTERRUPTS (REQUIRES IM1) -VGAENABLE .EQU FALSE ; VGA: ENABLE VGA VIDEO/KBD DRIVER (VGA.ASM) -; -MDENABLE .EQU TRUE ; MD: ENABLE MEMORY (ROM/RAM) DISK DRIVER (MD.ASM) -MDROM .EQU TRUE ; MD: ENABLE ROM DISK -MDRAM .EQU TRUE ; MD: ENABLE RAM DISK -MDTRACE .EQU 1 ; MD: TRACE LEVEL (0=NO,1=ERRORS,2=ALL) -MDFFENABLE .EQU FALSE ; MD: ENABLE FLASH FILE SYSTEM -; -FDENABLE .EQU FALSE ; FD: ENABLE FLOPPY DISK DRIVER (FD.ASM) -FDMODE .EQU FDMODE_RCWDC ; FD: DRIVER MODE: FDMODE_[DIO|ZETA|ZETA2|DIDE|N8|DIO3|RCSMC|RCWDC|DYNO|EPFDC|MBC] -FDCNT .EQU 2 ; FD: NUMBER OF FLOPPY DRIVES ON THE INTERFACE (1-2) -FDTRACE .EQU 1 ; FD: TRACE LEVEL (0=NO,1=FATAL,2=ERRORS,3=ALL) -FDMEDIA .EQU FDM144 ; FD: DEFAULT MEDIA FORMAT FDM[720|144|360|120|111] -FDMEDIAALT .EQU FDM720 ; FD: ALTERNATE MEDIA FORMAT FDM[720|144|360|120|111] -FDMAUTO .EQU TRUE ; FD: AUTO SELECT DEFAULT/ALTERNATE MEDIA FORMATS -; -RFENABLE .EQU FALSE ; RF: ENABLE RAM FLOPPY DRIVER -; -IDEENABLE .EQU FALSE ; IDE: ENABLE IDE DISK DRIVER (IDE.ASM) -IDETRACE .EQU 1 ; IDE: TRACE LEVEL (0=NO,1=ERRORS,2=ALL) -IDECNT .EQU 1 ; IDE: NUMBER OF IDE INTERFACES TO DETECT (1-3), 2 DRIVES EACH -IDE0MODE .EQU IDEMODE_RC ; IDE 0: DRIVER MODE: IDEMODE_[DIO|DIDE|MK4|RC] -IDE0BASE .EQU $10 ; IDE 0: IO BASE ADDRESS -IDE0DATLO .EQU $00 ; IDE 0: DATA LO PORT FOR 16-BIT I/O -IDE0DATHI .EQU $00 ; IDE 0: DATA HI PORT FOR 16-BIT I/O -IDE0A8BIT .EQU TRUE ; IDE 0A (MASTER): 8 BIT XFER -IDE0B8BIT .EQU TRUE ; IDE 0B (MASTER): 8 BIT XFER -IDE1MODE .EQU IDEMODE_NONE ; IDE 1: DRIVER MODE: IDEMODE_[DIO|DIDE|MK4|RC] -IDE1BASE .EQU $00 ; IDE 1: IO BASE ADDRESS -IDE1DATLO .EQU $00 ; IDE 1: DATA LO PORT FOR 16-BIT I/O -IDE1DATHI .EQU $00 ; IDE 1: DATA HI PORT FOR 16-BIT I/O -IDE1A8BIT .EQU TRUE ; IDE 1A (MASTER): 8 BIT XFER -IDE1B8BIT .EQU TRUE ; IDE 1B (MASTER): 8 BIT XFER -IDE2MODE .EQU IDEMODE_NONE ; IDE 2: DRIVER MODE: IDEMODE_[DIO|DIDE|MK4|RC] -IDE2BASE .EQU $00 ; IDE 2: IO BASE ADDRESS -IDE2DATLO .EQU $00 ; IDE 2: DATA LO PORT FOR 16-BIT I/O -IDE2DATHI .EQU $00 ; IDE 2: DATA HI PORT FOR 16-BIT I/O -IDE2A8BIT .EQU TRUE ; IDE 2A (MASTER): 8 BIT XFER -IDE2B8BIT .EQU TRUE ; IDE 2B (MASTER): 8 BIT XFER -; -PPIDEENABLE .EQU FALSE ; PPIDE: ENABLE PARALLEL PORT IDE DISK DRIVER (PPIDE.ASM) -PPIDETRACE .EQU 1 ; PPIDE: TRACE LEVEL (0=NO,1=ERRORS,2=ALL) -PPIDECNT .EQU 1 ; PPIDE: NUMBER OF PPI CHIPS TO DETECT (1-3), 2 DRIVES PER CHIP -PPIDE0BASE .EQU $20 ; PPIDE 0: PPI REGISTERS BASE ADR -PPIDE0A8BIT .EQU FALSE ; PPIDE 0A (MASTER): 8 BIT XFER -PPIDE0B8BIT .EQU FALSE ; PPIDE 0B (SLAVE): 8 BIT XFER -; -SDENABLE .EQU FALSE ; SD: ENABLE SD CARD DISK DRIVER (SD.ASM) -SDMODE .EQU SDMODE_PPI ; SD: DRIVER MODE: SDMODE_[JUHA|N8|CSIO|PPI|UART|DSD|MK4|SC|MT|USR] -SDPPIBASE .EQU $60 ; SD: BASE I/O ADDRESS OF PPI FOR PPI MODDE -SDCNT .EQU 1 ; SD: NUMBER OF SD CARD DEVICES (1-2), FOR DSD & SC ONLY -SDTRACE .EQU 1 ; SD: TRACE LEVEL (0=NO,1=ERRORS,2=ALL) -SDCSIOFAST .EQU FALSE ; SD: ENABLE TABLE-DRIVEN BIT INVERTER IN CSIO MODE -SDMTSWAP .EQU FALSE ; SD: SWAP THE LOGICAL ORDER OF THE SPI PORTS OF THE MT011 -; -PRPENABLE .EQU FALSE ; PRP: ENABLE ECB PROPELLER IO BOARD DRIVER (PRP.ASM) -PRPSDENABLE .EQU TRUE ; PRP: ENABLE PROPIO DRIVER SD CARD SUPPORT -PRPSDTRACE .EQU 1 ; PRP: SD CARD TRACE LEVEL (0=NO,1=ERRORS,2=ALL) -PRPCONENABLE .EQU TRUE ; PRP: ENABLE PROPIO DRIVER VIDEO/KBD SUPPORT -; -PPPENABLE .EQU FALSE ; PPP: ENABLE ZETA PARALLEL PORT PROPELLER BOARD DRIVER (PPP.ASM) -; -HDSKENABLE .EQU FALSE ; HDSK: ENABLE SIMH HDSK DISK DRIVER (HDSK.ASM) -; -PIOENABLE .EQU FALSE ; PIO: ENABLE ZILOG PIO DRIVER (PIO.ASM) -; -LPTENABLE .EQU FALSE ; LPT: ENABLE CENTRONICS PRINTER DRIVER (LPT.ASM) -LPTCNT .EQU 1 ; LPT: NUMBER OF CHIPS TO DETECT (1-2) -LPT0BASE .EQU $E4 ; LPT 0: REGISTERS BASE ADR -LPT1BASE .EQU $E8 ; LPT 1: REGISTERS BASE ADR -; -PIO_4P .EQU FALSE ; PIO: ENABLE PARALLEL PORT DRIVER FOR ECB 4P BOARD -PIO_ZP .EQU FALSE ; PIO: ENABLE PARALLEL PORT DRIVER FOR ECB ZILOG PERIPHERALS BOARD (PIO.ASM) -PIO_SBC .EQU FALSE ; PIO: ENABLE PARALLEL PORT DRIVER FOR 8255 CHIP -; -UFENABLE .EQU FALSE ; UF: ENABLE ECB USB FIFO DRIVER (UF.ASM) -; -SN76489ENABLE .EQU FALSE ; SN: ENABLE SN76489 SOUND DRIVER -AUDIOTRACE .EQU FALSE ; ENABLE TRACING TO CONSOLE OF SOUND DRIVER -SN7CLK .EQU 3579545 ; SN: PSG CLOCK FREQ, ASSUME MSX STD -SNMODE .EQU SNMODE_RC ; SN: DRIVER MODE: SNMODE_[NONE|RC|VGM] -; -AY38910ENABLE .EQU FALSE ; AY: ENABLE AY-3-8910 / YM2149 SOUND DRIVER -AY_CLK .EQU 1789772 ; AY: PSG CLOCK FREQ, ASSUME MSX STD -AYMODE .EQU AYMODE_RCZ80 ; AY: DRIVER MODE: AYMODE_[SCG|N8|RCZ80|RCZ180|MSX|LINC|MBC] -; -SPKENABLE .EQU FALSE ; SPK: ENABLE RTC LATCH IOBIT SOUND DRIVER (SPK.ASM) -; -DMAENABLE .EQU FALSE ; DMA: ENABLE DMA DRIVER (DMA.ASM) -DMABASE .EQU $E0 ; DMA: DMA BASE ADDRESS -DMAMODE .EQU DMAMODE_NONE ; DMA: DMA MODE (NONE|ECB|Z180|Z280|RC|MBC) -; -YM2612ENABLE .EQU FALSE ; YM2612: ENABLE YM2612 DRIVER (MUTE STUB) -VGMBASE .EQU $C0 ; YM2612: BASE ADDRESS FOR VGM BOARD (YM2612/SN76469s/CTC) diff --git a/Source/HBIOS/cfg_master.asm b/Source/HBIOS/cfg_master.asm index 16e25df5..62bbfdb0 100644 --- a/Source/HBIOS/cfg_master.asm +++ b/Source/HBIOS/cfg_master.asm @@ -143,7 +143,7 @@ DS7RTCENABLE .EQU FALSE ; DS7RTC: ENABLE DS-1307 I2C CLOCK DRIVER (DS7RTC.ASM) DS7RTCMODE .EQU DS7RTCMODE_PCF ; DS7RTC: OPERATING MODE: DS7RTC_[PCF] ; DUARTENABLE .EQU FALSE ; DUART: ENABLE 2681/2692 SERIAL DRIVER (DUART.ASM) -DUARTCNT .EQU 2 ; DUART: NUMBER OF CHIPS TO DETECT (1-2) +DUARTCNT .EQU 1 ; DUART: NUMBER OF CHIPS TO DETECT (1-2) DUART0BASE .EQU $A0 ; DUART 0: BASE ADDRESS OF CHIP DUART0ACFG .EQU DEFSERCFG ; DUART 0A: SERIAL LINE CONFIG DUART0BCFG .EQU DEFSERCFG ; DUART 0B: SERIAL LINE CONFIG @@ -282,7 +282,7 @@ PPIDE2B8BIT .EQU FALSE ; PPIDE 0B (SLAVE): 8 BIT XFER SDENABLE .EQU FALSE ; SD: ENABLE SD CARD DISK DRIVER (SD.ASM) SDMODE .EQU SDMODE_NONE ; SD: DRIVER MODE: SDMODE_[JUHA|N8|CSIO|PPI|UART|DSD|MK4|SC|MT|USR] SDPPIBASE .EQU $60 ; SD: BASE I/O ADDRESS OF PPI FOR PPI MODDE -SDCNT .EQU 1 ; SD: NUMBER OF SD CARD DEVICES (1-2), FOR DSD & SC ONLY +SDCNT .EQU 1 ; SD: NUMBER OF SD CARD DEVICES (1-2), FOR DSD/SC/MT ONLY SDTRACE .EQU 1 ; SD: TRACE LEVEL (0=NO,1=ERRORS,2=ALL) SDCSIOFAST .EQU FALSE ; SD: ENABLE TABLE-DRIVEN BIT INVERTER IN CSIO MODE SDMTSWAP .EQU FALSE ; SD: SWAP THE LOGICAL ORDER OF THE SPI PORTS OF THE MT011 diff --git a/Source/HBIOS/cfg_mbc.asm b/Source/HBIOS/cfg_mbc.asm index ac19b215..5383272b 100644 --- a/Source/HBIOS/cfg_mbc.asm +++ b/Source/HBIOS/cfg_mbc.asm @@ -211,7 +211,7 @@ PPIDE2B8BIT .EQU FALSE ; PPIDE 0B (SLAVE): 8 BIT XFER SDENABLE .EQU FALSE ; SD: ENABLE SD CARD DISK DRIVER (SD.ASM) SDMODE .EQU SDMODE_JUHA ; SD: DRIVER MODE: SDMODE_[JUHA|N8|CSIO|PPI|UART|DSD|MK4|SC|MT|USR] SDPPIBASE .EQU $60 ; SD: BASE I/O ADDRESS OF PPI FOR PPI MODDE -SDCNT .EQU 1 ; SD: NUMBER OF SD CARD DEVICES (1-2), FOR DSD & SC ONLY +SDCNT .EQU 1 ; SD: NUMBER OF SD CARD DEVICES (1-2), FOR DSD/SC/MT ONLY SDTRACE .EQU 1 ; SD: TRACE LEVEL (0=NO,1=ERRORS,2=ALL) SDCSIOFAST .EQU FALSE ; SD: ENABLE TABLE-DRIVEN BIT INVERTER IN CSIO MODE ; diff --git a/Source/HBIOS/cfg_mk4.asm b/Source/HBIOS/cfg_mk4.asm index 29d5493b..b2692239 100644 --- a/Source/HBIOS/cfg_mk4.asm +++ b/Source/HBIOS/cfg_mk4.asm @@ -210,7 +210,7 @@ PPIDE2B8BIT .EQU FALSE ; PPIDE 0B (SLAVE): 8 BIT XFER SDENABLE .EQU TRUE ; SD: ENABLE SD CARD DISK DRIVER (SD.ASM) SDMODE .EQU SDMODE_MK4 ; SD: DRIVER MODE: SDMODE_[JUHA|N8|CSIO|PPI|UART|DSD|MK4|SC|MT|USR] SDPPIBASE .EQU $60 ; SD: BASE I/O ADDRESS OF PPI FOR PPI MODDE -SDCNT .EQU 1 ; SD: NUMBER OF SD CARD DEVICES (1-2), FOR DSD & SC ONLY +SDCNT .EQU 1 ; SD: NUMBER OF SD CARD DEVICES (1-2), FOR DSD/SC/MT ONLY SDTRACE .EQU 1 ; SD: TRACE LEVEL (0=NO,1=ERRORS,2=ALL) SDCSIOFAST .EQU TRUE ; SD: ENABLE TABLE-DRIVEN BIT INVERTER IN CSIO MODE ; diff --git a/Source/HBIOS/cfg_n8.asm b/Source/HBIOS/cfg_n8.asm index bdd5f0d0..f8b34a4c 100644 --- a/Source/HBIOS/cfg_n8.asm +++ b/Source/HBIOS/cfg_n8.asm @@ -212,7 +212,7 @@ PPIDE2B8BIT .EQU FALSE ; PPIDE 0B (SLAVE): 8 BIT XFER SDENABLE .EQU TRUE ; SD: ENABLE SD CARD DISK DRIVER (SD.ASM) SDMODE .EQU SDMODE_CSIO ; SD: DRIVER MODE: SDMODE_[JUHA|N8|CSIO|PPI|UART|DSD|MK4|SC|MT] SDPPIBASE .EQU N8_PPI0 ; SD: BASE I/O ADDRESS OF PPI FOR PPI MODDE -SDCNT .EQU 1 ; SD: NUMBER OF SD CARD DEVICES (1-2), FOR DSD & SC ONLY +SDCNT .EQU 1 ; SD: NUMBER OF SD CARD DEVICES (1-2), FOR DSD/SC/MT ONLY SDTRACE .EQU 1 ; SD: TRACE LEVEL (0=NO,1=ERRORS,2=ALL) SDCSIOFAST .EQU FALSE ; SD: ENABLE TABLE-DRIVEN BIT INVERTER IN CSIO MODE ; diff --git a/Source/HBIOS/cfg_rcz180.asm b/Source/HBIOS/cfg_rcz180.asm index 520e47c2..a19a3616 100644 --- a/Source/HBIOS/cfg_rcz180.asm +++ b/Source/HBIOS/cfg_rcz180.asm @@ -111,7 +111,7 @@ DS7RTCENABLE .EQU FALSE ; DS7RTC: ENABLE DS-1307 I2C CLOCK DRIVER (DS7RTC.ASM) DS7RTCMODE .EQU DS7RTCMODE_PCF ; DS7RTC: OPERATING MODE: DS7RTC_[PCF] ; DUARTENABLE .EQU FALSE ; DUART: ENABLE 2681/2692 SERIAL DRIVER (DUART.ASM) -DUARTCNT .EQU 2 ; DUART: NUMBER OF CHIPS TO DETECT (1-2) +DUARTCNT .EQU 1 ; DUART: NUMBER OF CHIPS TO DETECT (1-2) DUART0BASE .EQU $A0 ; DUART 0: BASE ADDRESS OF CHIP DUART0ACFG .EQU DEFSERCFG ; DUART 0A: SERIAL LINE CONFIG DUART0BCFG .EQU DEFSERCFG ; DUART 0B: SERIAL LINE CONFIG @@ -227,7 +227,7 @@ PPIDE2B8BIT .EQU FALSE ; PPIDE 0B (SLAVE): 8 BIT XFER SDENABLE .EQU FALSE ; SD: ENABLE SD CARD DISK DRIVER (SD.ASM) SDMODE .EQU SDMODE_MT ; SD: DRIVER MODE: SDMODE_[JUHA|N8|CSIO|PPI|UART|DSD|MK4|SC|MT|USR] SDPPIBASE .EQU $60 ; SD: BASE I/O ADDRESS OF PPI FOR PPI MODDE -SDCNT .EQU 2 ; SD: NUMBER OF SD CARD DEVICES (1-2), FOR DSD & SC ONLY +SDCNT .EQU 2 ; SD: NUMBER OF SD CARD DEVICES (1-2), FOR DSD/SC/MT ONLY SDTRACE .EQU 1 ; SD: TRACE LEVEL (0=NO,1=ERRORS,2=ALL) SDCSIOFAST .EQU FALSE ; SD: ENABLE TABLE-DRIVEN BIT INVERTER IN CSIO MODE SDMTSWAP .EQU FALSE ; SD: SWAP THE LOGICAL ORDER OF THE SPI PORTS OF THE MT011 diff --git a/Source/HBIOS/cfg_rcz280.asm b/Source/HBIOS/cfg_rcz280.asm index 05a8ce34..98caf927 100644 --- a/Source/HBIOS/cfg_rcz280.asm +++ b/Source/HBIOS/cfg_rcz280.asm @@ -59,11 +59,6 @@ CTCENABLE .EQU FALSE ; ENABLE ZILOG CTC SUPPORT CTCDEBUG .EQU FALSE ; ENABLE CTC DRIVER DEBUG OUTPUT CTCBASE .EQU $88 ; CTC BASE I/O ADDRESS CTCTIMER .EQU FALSE ; ENABLE CTC PERIODIC TIMER -CTCMODE .EQU CTCMODE_TIM16 ; CTC MODE: CTCMODE_[NONE|CTR|TIM16|TIM256] -CTCPRE .EQU 256 ; PRESCALE CONSTANT (1-256) -CTCPRECH .EQU 2 ; PRESCALE CHANNEL (0-3) -CTCTIMCH .EQU 3 ; TIMER CHANNEL (0-3) -CTCOSC .EQU 7372800 ; CTC CLOCK FREQUENCY ; EIPCENABLE .EQU FALSE ; EIPC: ENABLE Z80 EIPC (Z84C15) INITIALIZATION ; @@ -116,7 +111,7 @@ DS7RTCENABLE .EQU FALSE ; DS7RTC: ENABLE DS-1307 I2C CLOCK DRIVER (DS7RTC.ASM) DS7RTCMODE .EQU DS7RTCMODE_PCF ; DS7RTC: OPERATING MODE: DS7RTC_[PCF] ; DUARTENABLE .EQU FALSE ; DUART: ENABLE 2681/2692 SERIAL DRIVER (DUART.ASM) -DUARTCNT .EQU 2 ; DUART: NUMBER OF CHIPS TO DETECT (1-2) +DUARTCNT .EQU 1 ; DUART: NUMBER OF CHIPS TO DETECT (1-2) DUART0BASE .EQU $A0 ; DUART 0: BASE ADDRESS OF CHIP DUART0ACFG .EQU DEFSERCFG ; DUART 0A: SERIAL LINE CONFIG DUART0BCFG .EQU DEFSERCFG ; DUART 0B: SERIAL LINE CONFIG @@ -242,7 +237,7 @@ PPIDE2B8BIT .EQU FALSE ; PPIDE 0B (SLAVE): 8 BIT XFER SDENABLE .EQU FALSE ; SD: ENABLE SD CARD DISK DRIVER (SD.ASM) SDMODE .EQU SDMODE_MT ; SD: DRIVER MODE: SDMODE_[JUHA|N8|CSIO|PPI|UART|DSD|MK4|SC|MT|USR] SDPPIBASE .EQU $60 ; SD: BASE I/O ADDRESS OF PPI FOR PPI MODDE -SDCNT .EQU 2 ; SD: NUMBER OF SD CARD DEVICES (1-2), FOR DSD & SC ONLY +SDCNT .EQU 2 ; SD: NUMBER OF SD CARD DEVICES (1-2), FOR DSD/SC/MT ONLY SDTRACE .EQU 1 ; SD: TRACE LEVEL (0=NO,1=ERRORS,2=ALL) SDCSIOFAST .EQU FALSE ; SD: ENABLE TABLE-DRIVEN BIT INVERTER IN CSIO MODE SDMTSWAP .EQU FALSE ; SD: SWAP THE LOGICAL ORDER OF THE SPI PORTS OF THE MT011 diff --git a/Source/HBIOS/cfg_rcz80.asm b/Source/HBIOS/cfg_rcz80.asm index bc61bedb..a322ff3e 100644 --- a/Source/HBIOS/cfg_rcz80.asm +++ b/Source/HBIOS/cfg_rcz80.asm @@ -110,7 +110,7 @@ DS7RTCENABLE .EQU FALSE ; DS7RTC: ENABLE DS-1307 I2C CLOCK DRIVER (DS7RTC.ASM) DS7RTCMODE .EQU DS7RTCMODE_PCF ; DS7RTC: OPERATING MODE: DS7RTC_[PCF] ; DUARTENABLE .EQU FALSE ; DUART: ENABLE 2681/2692 SERIAL DRIVER (DUART.ASM) -DUARTCNT .EQU 2 ; DUART: NUMBER OF CHIPS TO DETECT (1-2) +DUARTCNT .EQU 1 ; DUART: NUMBER OF CHIPS TO DETECT (1-2) DUART0BASE .EQU $A0 ; DUART 0: BASE ADDRESS OF CHIP DUART0ACFG .EQU DEFSERCFG ; DUART 0A: SERIAL LINE CONFIG DUART0BCFG .EQU DEFSERCFG ; DUART 0B: SERIAL LINE CONFIG @@ -173,7 +173,7 @@ VDUENABLE .EQU FALSE ; VDU: ENABLE VDU VIDEO/KBD DRIVER (VDU.ASM) CVDUENABLE .EQU FALSE ; CVDU: ENABLE CVDU VIDEO/KBD DRIVER (CVDU.ASM) GDCENABLE .EQU FALSE ; GDC: ENABLE 7220 GDC VIDEO/KBD DRIVER (GDC.ASM) TMSENABLE .EQU FALSE ; TMS: ENABLE TMS9918 VIDEO/KBD DRIVER (TMS.ASM) -TMSMODE .EQU TMSMODE_NONE ; TMS: DRIVER MODE: TMSMODE_[SCG|N8|MBC|MSX|RCV9958|RCKBD] +TMSMODE .EQU TMSMODE_MSX ; TMS: DRIVER MODE: TMSMODE_[SCG|N8|MBC|MSX|RCV9958|RCKBD] TMSTIMENABLE .EQU FALSE ; TMS: ENABLE TIMER INTERRUPTS (REQUIRES IM1) VGAENABLE .EQU FALSE ; VGA: ENABLE VGA VIDEO/KBD DRIVER (VGA.ASM) ; @@ -231,7 +231,7 @@ PPIDE2B8BIT .EQU FALSE ; PPIDE 0B (SLAVE): 8 BIT XFER SDENABLE .EQU FALSE ; SD: ENABLE SD CARD DISK DRIVER (SD.ASM) SDMODE .EQU SDMODE_MT ; SD: DRIVER MODE: SDMODE_[JUHA|N8|CSIO|PPI|UART|DSD|MK4|SC|MT|USR] SDPPIBASE .EQU $60 ; SD: BASE I/O ADDRESS OF PPI FOR PPI MODDE -SDCNT .EQU 2 ; SD: NUMBER OF SD CARD DEVICES (1-2), FOR DSD & SC ONLY +SDCNT .EQU 2 ; SD: NUMBER OF SD CARD DEVICES (1-2), FOR DSD/SC/MT ONLY SDTRACE .EQU 1 ; SD: TRACE LEVEL (0=NO,1=ERRORS,2=ALL) SDCSIOFAST .EQU FALSE ; SD: ENABLE TABLE-DRIVEN BIT INVERTER IN CSIO MODE SDMTSWAP .EQU FALSE ; SD: SWAP THE LOGICAL ORDER OF THE SPI PORTS OF THE MT011 @@ -251,9 +251,6 @@ PIO0BASE .EQU $B8 ; PIO 0: REGISTERS BASE ADR PIO1BASE .EQU $BC ; PIO 1: REGISTERS BASE ADR ; LPTENABLE .EQU FALSE ; LPT: ENABLE CENTRONICS PRINTER DRIVER (LPT.ASM) -LPTCNT .EQU 1 ; LPT: NUMBER OF CHIPS TO DETECT (1-2) -LPT0BASE .EQU $E4 ; LPT 0: REGISTERS BASE ADR -LPT1BASE .EQU $E8 ; LPT 1: REGISTERS BASE ADR ; PIO_4P .EQU FALSE ; PIO: ENABLE PARALLEL PORT DRIVER FOR ECB 4P BOARD PIO_ZP .EQU FALSE ; PIO: ENABLE PARALLEL PORT DRIVER FOR ECB ZILOG PERIPHERALS BOARD (PIO.ASM) diff --git a/Source/HBIOS/cfg_rph.asm b/Source/HBIOS/cfg_rph.asm index 65dbd5b8..a2781b4c 100644 --- a/Source/HBIOS/cfg_rph.asm +++ b/Source/HBIOS/cfg_rph.asm @@ -212,7 +212,7 @@ PPIDE2B8BIT .EQU FALSE ; PPIDE 0B (SLAVE): 8 BIT XFER SDENABLE .EQU FALSE ; SD: ENABLE SD CARD DISK DRIVER (SD.ASM) SDMODE .EQU SDMODE_CSIO ; SD: DRIVER MODE: SDMODE_[JUHA|N8|CSIO|PPI|UART|DSD|MK4|SC|MT|USR] SDPPIBASE .EQU RPH_PPI0 ; SD: BASE I/O ADDRESS OF PPI FOR PPI MODDE -SDCNT .EQU 1 ; SD: NUMBER OF SD CARD DEVICES (1-2), FOR DSD & SC ONLY +SDCNT .EQU 1 ; SD: NUMBER OF SD CARD DEVICES (1-2), FOR DSD/SC/MT ONLY SDTRACE .EQU 1 ; SD: TRACE LEVEL (0=NO,1=ERRORS,2=ALL) SDCSIOFAST .EQU FALSE ; SD: ENABLE TABLE-DRIVEN BIT INVERTER IN CSIO MODE ; diff --git a/Source/HBIOS/cfg_sbc.asm b/Source/HBIOS/cfg_sbc.asm index 37d80781..3e59350d 100644 --- a/Source/HBIOS/cfg_sbc.asm +++ b/Source/HBIOS/cfg_sbc.asm @@ -211,7 +211,7 @@ PPIDE2B8BIT .EQU FALSE ; PPIDE 0B (SLAVE): 8 BIT XFER SDENABLE .EQU FALSE ; SD: ENABLE SD CARD DISK DRIVER (SD.ASM) SDMODE .EQU SDMODE_JUHA ; SD: DRIVER MODE: SDMODE_[JUHA|N8|CSIO|PPI|UART|DSD|MK4|SC|MT|USR] SDPPIBASE .EQU $60 ; SD: BASE I/O ADDRESS OF PPI FOR PPI MODDE -SDCNT .EQU 1 ; SD: NUMBER OF SD CARD DEVICES (1-2), FOR DSD & SC ONLY +SDCNT .EQU 1 ; SD: NUMBER OF SD CARD DEVICES (1-2), FOR DSD/SC/MT ONLY SDTRACE .EQU 1 ; SD: TRACE LEVEL (0=NO,1=ERRORS,2=ALL) SDCSIOFAST .EQU FALSE ; SD: ENABLE TABLE-DRIVEN BIT INVERTER IN CSIO MODE ; diff --git a/Source/HBIOS/cfg_scz180.asm b/Source/HBIOS/cfg_scz180.asm index cacb5e7a..623f21f4 100644 --- a/Source/HBIOS/cfg_scz180.asm +++ b/Source/HBIOS/cfg_scz180.asm @@ -106,7 +106,7 @@ DS7RTCENABLE .EQU FALSE ; DS7RTC: ENABLE DS-1307 I2C CLOCK DRIVER (DS7RTC.ASM) DS7RTCMODE .EQU DS7RTCMODE_PCF ; DS7RTC: OPERATING MODE: DS7RTC_[PCF] ; DUARTENABLE .EQU FALSE ; DUART: ENABLE 2681/2692 SERIAL DRIVER (DUART.ASM) -DUARTCNT .EQU 2 ; DUART: NUMBER OF CHIPS TO DETECT (1-2) +DUARTCNT .EQU 1 ; DUART: NUMBER OF CHIPS TO DETECT (1-2) DUART0BASE .EQU $A0 ; DUART 0: BASE ADDRESS OF CHIP DUART0ACFG .EQU DEFSERCFG ; DUART 0A: SERIAL LINE CONFIG DUART0BCFG .EQU DEFSERCFG ; DUART 0B: SERIAL LINE CONFIG @@ -222,7 +222,7 @@ PPIDE2B8BIT .EQU FALSE ; PPIDE 0B (SLAVE): 8 BIT XFER SDENABLE .EQU TRUE ; SD: ENABLE SD CARD DISK DRIVER (SD.ASM) SDMODE .EQU SDMODE_SC ; SD: DRIVER MODE: SDMODE_[JUHA|N8|CSIO|PPI|UART|DSD|MK4|SC|MT|USR] SDPPIBASE .EQU $60 ; SD: BASE I/O ADDRESS OF PPI FOR PPI MODDE -SDCNT .EQU 1 ; SD: NUMBER OF SD CARD DEVICES (1-2), FOR DSD & SC ONLY +SDCNT .EQU 1 ; SD: NUMBER OF SD CARD DEVICES (1-2), FOR DSD/SC/MT ONLY SDTRACE .EQU 1 ; SD: TRACE LEVEL (0=NO,1=ERRORS,2=ALL) SDCSIOFAST .EQU FALSE ; SD: ENABLE TABLE-DRIVEN BIT INVERTER IN CSIO MODE SDMTSWAP .EQU FALSE ; SD: SWAP THE LOGICAL ORDER OF THE SPI PORTS OF THE MT011 diff --git a/Source/HBIOS/cfg_zeta.asm b/Source/HBIOS/cfg_zeta.asm index ba9642a7..edacda47 100644 --- a/Source/HBIOS/cfg_zeta.asm +++ b/Source/HBIOS/cfg_zeta.asm @@ -155,7 +155,7 @@ PPIDE0B8BIT .EQU FALSE ; PPIDE 0B (SLAVE): 8 BIT XFER SDENABLE .EQU FALSE ; SD: ENABLE SD CARD DISK DRIVER (SD.ASM) SDMODE .EQU SDMODE_PPI ; SD: DRIVER MODE: SDMODE_[JUHA|N8|CSIO|PPI|UART|DSD|MK4|SC|MT|USR] SDPPIBASE .EQU $60 ; SD: BASE I/O ADDRESS OF PPI FOR PPI MODDE -SDCNT .EQU 1 ; SD: NUMBER OF SD CARD DEVICES (1-2), FOR DSD & SC ONLY +SDCNT .EQU 1 ; SD: NUMBER OF SD CARD DEVICES (1-2), FOR DSD/SC/MT ONLY SDTRACE .EQU 1 ; SD: TRACE LEVEL (0=NO,1=ERRORS,2=ALL) SDCSIOFAST .EQU FALSE ; SD: ENABLE TABLE-DRIVEN BIT INVERTER IN CSIO MODE ; diff --git a/Source/HBIOS/cfg_zeta2.asm b/Source/HBIOS/cfg_zeta2.asm index d5357338..8dfb3bd4 100644 --- a/Source/HBIOS/cfg_zeta2.asm +++ b/Source/HBIOS/cfg_zeta2.asm @@ -166,7 +166,7 @@ PPIDE0B8BIT .EQU FALSE ; PPIDE 0B (SLAVE): 8 BIT XFER SDENABLE .EQU FALSE ; SD: ENABLE SD CARD DISK DRIVER (SD.ASM) SDMODE .EQU SDMODE_PPI ; SD: DRIVER MODE: SDMODE_[JUHA|N8|CSIO|PPI|UART|DSD|MK4|SC|MT|USR] SDPPIBASE .EQU $60 ; SD: BASE I/O ADDRESS OF PPI FOR PPI MODDE -SDCNT .EQU 1 ; SD: NUMBER OF SD CARD DEVICES (1-2), FOR DSD & SC ONLY +SDCNT .EQU 1 ; SD: NUMBER OF SD CARD DEVICES (1-2), FOR DSD/SC/MT ONLY SDTRACE .EQU 1 ; SD: TRACE LEVEL (0=NO,1=ERRORS,2=ALL) SDCSIOFAST .EQU FALSE ; SD: ENABLE TABLE-DRIVEN BIT INVERTER IN CSIO MODE ; diff --git a/Source/HBIOS/sd.asm b/Source/HBIOS/sd.asm index 63c44e6e..ec379a88 100644 --- a/Source/HBIOS/sd.asm +++ b/Source/HBIOS/sd.asm @@ -1798,7 +1798,7 @@ SD_SELECT: ; CALL SD_WAITTX ;#ENDIF ; -#IF (SDMODE == SDMODE_SC) +#IF ((SDMODE == SDMODE_SC) | SDMODE == SDMODE_MT)) LD A,(IY+SD_DEV) ; GET CURRENT DEVICE OR A ; SET FLAGS LD A,(SD_OPRVAL) ; GET CURRENT OPRVAL BACK @@ -1857,7 +1857,7 @@ SD_DESELECT: #ENDIF ; LD A,(SD_OPRVAL) -#IF ((SDMODE == SDMODE_SC) & (SD_DEVCNT > 1)) +#IF (((SDMODE == SDMODE_SC) | (SDMODE_MT)) & (SD_DEVCNT > 1)) AND ~(SD_CS0 | SD_CS1) #ELSE AND ~SD_CS0 diff --git a/Source/ver.inc b/Source/ver.inc index 3b282151..c8c96fad 100644 --- a/Source/ver.inc +++ b/Source/ver.inc @@ -2,4 +2,4 @@ #DEFINE RMN 1 #DEFINE RUP 1 #DEFINE RTP 0 -#DEFINE BIOSVER "3.1.1-pre.195" +#DEFINE BIOSVER "3.1.1-pre.196" diff --git a/Source/ver.lib b/Source/ver.lib index 97eebbc4..37e1da89 100644 --- a/Source/ver.lib +++ b/Source/ver.lib @@ -3,5 +3,5 @@ rmn equ 1 rup equ 1 rtp equ 0 biosver macro - db "3.1.1-pre.195" + db "3.1.1-pre.196" endm