mirror of
https://github.com/wwarthen/RomWBW.git
synced 2026-02-07 23:13:13 -06:00
Compare commits
3 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
dc88fde409 | ||
|
|
762f325e10 | ||
|
|
b030913abd |
@@ -1,14 +1,14 @@
|
||||
/************************************/
|
||||
/* applvers.h dwg - 2.5.0.15 */
|
||||
/* applvers.h dwg - 2.5.2.18 */
|
||||
/************************************/
|
||||
|
||||
#define A_RMJ 2
|
||||
#define A_RMN 5
|
||||
#define A_RUP 1
|
||||
#define A_RTP 17
|
||||
#define A_RUP 2
|
||||
#define A_RTP 18
|
||||
|
||||
#define A_MONTH 6
|
||||
#define A_DAY 25
|
||||
#define A_MONTH 9
|
||||
#define A_DAY 29
|
||||
#define A_YEAR 2013
|
||||
#define A_YR 13
|
||||
|
||||
|
||||
@@ -2,15 +2,15 @@
|
||||
|
||||
A$RMJ equ 2
|
||||
A$RMN equ 5
|
||||
A$RUP equ 1
|
||||
A$RTP equ 17
|
||||
A$RUP equ 2
|
||||
A$RTP equ 18
|
||||
|
||||
A$MONTH equ 6
|
||||
A$DAY equ 25
|
||||
A$MONTH equ 9
|
||||
A$DAY equ 29
|
||||
A$YEAR equ 2013
|
||||
|
||||
date macro
|
||||
dat db ' 6/25/2013$'
|
||||
dat db ' 9/29/2013$'
|
||||
endm
|
||||
|
||||
serial macro
|
||||
|
||||
@@ -131,7 +131,7 @@ prtcfg1(pSysCfg)
|
||||
pCfg->conbaud);
|
||||
pager();
|
||||
printf ("Default Video Display: %s, Default Emulation: %s",
|
||||
VDAName[pCfg->defvda], EmuName[pCfg->defemu]);
|
||||
VDAName[(pCfg->defvda) >> 4], EmuName[pCfg->defemu]);
|
||||
pager();
|
||||
printf ("Current Terminal Type: %s",
|
||||
TermName[pCfg->termtype]);
|
||||
|
||||
@@ -1,3 +1,11 @@
|
||||
Version 2.5.2
|
||||
-------------
|
||||
- WBW: Added initial support for RAM Floppy
|
||||
|
||||
Version 2.5.1
|
||||
-------------
|
||||
- WBW: Fix PPIDE bug
|
||||
|
||||
Version 2.5
|
||||
-----------
|
||||
- WBW: Implemented CRT driver model (video and keyboard)
|
||||
|
||||
Binary file not shown.
Binary file not shown.
@@ -7,7 +7,7 @@ echo which means that local scripts can be run without
|
||||
echo being signed. This is required to use the RomWBW
|
||||
echo build process.
|
||||
echo.
|
||||
PowerShell -command Write-Host "Your PowerShell ExecutionPolicy is currently (Get-ExecutionPolicy)"
|
||||
PowerShell -command Write-Host "Your PowerShell ExecutionPolicy is currently set to: `'(Get-ExecutionPolicy)`'"
|
||||
echo.
|
||||
echo In order to modify the ExecutionPolicy, this command
|
||||
echo file *MUST* be run with administrator privileges.
|
||||
@@ -24,6 +24,6 @@ echo Attempting to change Execution Policy...
|
||||
echo.
|
||||
PowerShell Set-ExecutionPolicy RemoteSigned
|
||||
echo.
|
||||
PowerShell -command Write-Host "Your new PowerShell ExecutionPolicy is now (Get-ExecutionPolicy)"
|
||||
PowerShell -command Write-Host "Your new PowerShell ExecutionPolicy is now set to: `'(Get-ExecutionPolicy)`'"
|
||||
echo.
|
||||
pause
|
||||
@@ -8,8 +8,8 @@ Builders: Wayne Warthen (wwarthen@gmail.com)
|
||||
Douglas Goodall (douglas_goodall@mac.com)
|
||||
David Giles (vk5dg@internode.on.net)
|
||||
|
||||
Updated: 2013-06-23
|
||||
Version: 2.5
|
||||
Updated: 2013-09-28
|
||||
Version: 2.5.2
|
||||
|
||||
This is an adaptation of CP/M-80 2.2 and ZSDOS/ZCPR
|
||||
targeting ROMs for all N8VEM Z80 hardware variations
|
||||
|
||||
BIN
RomDsk/cfg_n8vem_rf/1200.COM
Normal file
BIN
RomDsk/cfg_n8vem_rf/1200.COM
Normal file
Binary file not shown.
BIN
RomDsk/cfg_n8vem_rf/38400.COM
Normal file
BIN
RomDsk/cfg_n8vem_rf/38400.COM
Normal file
Binary file not shown.
BIN
RomDsk/cfg_n8vem_rf/9600.COM
Normal file
BIN
RomDsk/cfg_n8vem_rf/9600.COM
Normal file
Binary file not shown.
BIN
RomDsk/cfg_n8vem_rf/FLASHZ.COM
Normal file
BIN
RomDsk/cfg_n8vem_rf/FLASHZ.COM
Normal file
Binary file not shown.
BIN
RomDsk/cfg_n8vem_rf/LDTIM.COM
Normal file
BIN
RomDsk/cfg_n8vem_rf/LDTIM.COM
Normal file
Binary file not shown.
BIN
RomDsk/cfg_n8vem_rf/RTC.COM
Normal file
BIN
RomDsk/cfg_n8vem_rf/RTC.COM
Normal file
Binary file not shown.
BIN
RomDsk/cfg_n8vem_rf/T5.COM
Normal file
BIN
RomDsk/cfg_n8vem_rf/T5.COM
Normal file
Binary file not shown.
BIN
RomDsk/cfg_n8vem_rf/VT3.COM
Normal file
BIN
RomDsk/cfg_n8vem_rf/VT3.COM
Normal file
Binary file not shown.
BIN
RomDsk/cfg_n8vem_rf/XM.COM
Normal file
BIN
RomDsk/cfg_n8vem_rf/XM.COM
Normal file
Binary file not shown.
BIN
RomDsk/cfg_n8vem_rf/XM5.COM
Normal file
BIN
RomDsk/cfg_n8vem_rf/XM5.COM
Normal file
Binary file not shown.
BIN
RomDsk/cfg_zeta_ppisd/1200.COM
Normal file
BIN
RomDsk/cfg_zeta_ppisd/1200.COM
Normal file
Binary file not shown.
BIN
RomDsk/cfg_zeta_ppisd/38400.COM
Normal file
BIN
RomDsk/cfg_zeta_ppisd/38400.COM
Normal file
Binary file not shown.
BIN
RomDsk/cfg_zeta_ppisd/9600.COM
Normal file
BIN
RomDsk/cfg_zeta_ppisd/9600.COM
Normal file
Binary file not shown.
BIN
RomDsk/cfg_zeta_ppisd/FDTST.COM
Normal file
BIN
RomDsk/cfg_zeta_ppisd/FDTST.COM
Normal file
Binary file not shown.
BIN
RomDsk/cfg_zeta_ppisd/FLASHZ.COM
Normal file
BIN
RomDsk/cfg_zeta_ppisd/FLASHZ.COM
Normal file
Binary file not shown.
BIN
RomDsk/cfg_zeta_ppisd/LDTIM.COM
Normal file
BIN
RomDsk/cfg_zeta_ppisd/LDTIM.COM
Normal file
Binary file not shown.
BIN
RomDsk/cfg_zeta_ppisd/RTC.COM
Normal file
BIN
RomDsk/cfg_zeta_ppisd/RTC.COM
Normal file
Binary file not shown.
BIN
RomDsk/cfg_zeta_ppisd/SURVEY.COM
Normal file
BIN
RomDsk/cfg_zeta_ppisd/SURVEY.COM
Normal file
Binary file not shown.
BIN
RomDsk/cfg_zeta_ppisd/XM.COM
Normal file
BIN
RomDsk/cfg_zeta_ppisd/XM.COM
Normal file
Binary file not shown.
BIN
RomDsk/cfg_zeta_ppisd/XM5.COM
Normal file
BIN
RomDsk/cfg_zeta_ppisd/XM5.COM
Normal file
Binary file not shown.
14
RomList.txt
14
RomList.txt
@@ -108,6 +108,13 @@ DRI CP/M (BDOS & CCP)
|
||||
- Basic ROM/RAM disk (no floppy/IDE)
|
||||
- Drives A:=ROM, B:=RAM, C:=HDSK0-00, D:=HDSK0-01, E:=HDSK0-02, F:=HDSK0-03
|
||||
|
||||
N8VEM_rf.rom for N8VEM Z80 SBC V1/2 + RAM Flopppy:
|
||||
- 512KB ROM, 512KB RAM
|
||||
- 38.4KB serial console baud rate
|
||||
- Basic ROM/RAM disk (no floppy/IDE)
|
||||
- RAM Floppy support
|
||||
- Drives A:=ROM, B:=RAM, C:=RF0, D:=RF1
|
||||
|
||||
N8VEM_vdu.rom for N8VEM Z80 SBC V1/V2:
|
||||
- 512KB ROM, 512KB RAM
|
||||
- 38.4KB serial console baud rate
|
||||
@@ -253,6 +260,13 @@ ZSYSTEM (ZSDOS & ZCPR)
|
||||
- Basic ROM/RAM disk (no floppy/IDE)
|
||||
- Drives A:=ROM, B:=RAM, C:=HDSK0-00, D:=HDSK0-01, E:=HDSK0-02, F:=HDSK0-03
|
||||
|
||||
N8VEM_rf_z.rom for N8VEM Z80 SBC V1/2 + RAM Flopppy:
|
||||
- 512KB ROM, 512KB RAM
|
||||
- 38.4KB serial console baud rate
|
||||
- Basic ROM/RAM disk (no floppy/IDE)
|
||||
- RAM Floppy support
|
||||
- Drives A:=ROM, B:=RAM, C:=RF0, D:=RF1
|
||||
|
||||
ZETA_std_z.rom for Zeta Z80 SBC:
|
||||
- 512KB ROM, 512KB RAM
|
||||
- 38.4KB serial console baud rate
|
||||
|
||||
@@ -46,7 +46,7 @@ WBOOTE JP WBOOT ; #1 - WARM START
|
||||
; easily located by external programs. They transfger control to routines
|
||||
; that are located somewhere within the main section of the CBIOS.
|
||||
;
|
||||
JP BNKSEL ; #17 - SEL. RAM BANK FOR LOW32K (obsolete, use HBIOS)
|
||||
JP PANIC ; #17 - SEL. RAM BANK FOR LOW32K (deprecated, use HBIOS)
|
||||
JP GETDSK ; #18 - Get Disk Info (device/unit/lu)
|
||||
JP SETDSK ; #19 - Set Disk Into (device/unit/lu)
|
||||
JP GETINFO ; #20 - Get BIOS Info Base Ptr
|
||||
@@ -101,15 +101,13 @@ WBOOT:
|
||||
IM 1
|
||||
;
|
||||
LD SP,ISTACK ; STACK FOR INITIALIZATION
|
||||
;
|
||||
; RELOAD COMMAND PROCESSOR FROM CACHE
|
||||
LD A,1 ; SELECT RAM BANK 1
|
||||
CALL RAMPG ; DO IT
|
||||
LD HL,0800H ; LOCATION IN RAM BANK 1 OF COMMAND PROCESSOR CACHE
|
||||
LD DE,CPM_LOC ; LOCATION OF ACTIVE COMMAND PROCESSOR
|
||||
LD BC,CCPSIZ ; SIZE OF COMMAND PROCESSOR
|
||||
LDIR ; COPY
|
||||
CALL RAMPGZ ; RESTORE RAM PAGE 0
|
||||
;
|
||||
LD B,BF_SYSBNKCPY ; B = FUNCTION = BANK COPY
|
||||
LD C,$81 ; C = BANK = RAM BANK 1
|
||||
LD HL,$0800 ; SOURCE = $800, CCP CACHE IN RAM BANK 1
|
||||
LD DE,CPM_LOC ; DESTINATION IS LOCATION OF ACTIVE CCP
|
||||
LD IX,CCPSIZ ; SIZE OF CCP
|
||||
RST 08
|
||||
;
|
||||
; FALL THRU TO INVOKE CP/M
|
||||
;
|
||||
@@ -378,12 +376,6 @@ READWRITE:
|
||||
JR BLKRW
|
||||
;
|
||||
;__________________________________________________________________________________________________
|
||||
BNKSEL:
|
||||
;
|
||||
LD A,C
|
||||
JP RAMPG
|
||||
;
|
||||
;__________________________________________________________________________________________________
|
||||
GETDSK:
|
||||
;
|
||||
; INPUT: C=DRIVE # (0=A, 1=B, ... P=16)
|
||||
@@ -1433,6 +1425,14 @@ SIZ_HDSK_DPH .EQU $ - ORG_HDSK_DPH
|
||||
.ECHO SIZ_HDSK_DPH
|
||||
.ECHO " bytes.\n"
|
||||
#ENDIF
|
||||
#IF (RFENABLE)
|
||||
ORG_RF_DPH .EQU $
|
||||
#INCLUDE "rf_dph.asm"
|
||||
SIZ_RF_DPH .EQU $ - ORG_RF_DPH
|
||||
.ECHO "RF DPH occupies "
|
||||
.ECHO SIZ_RF_DPH
|
||||
.ECHO " bytes.\n"
|
||||
#ENDIF
|
||||
;
|
||||
; DISK PARAMETER BLOCKS
|
||||
;
|
||||
@@ -1496,6 +1496,24 @@ DPB_RAM:
|
||||
.DW 0 ; OFF: RESERVED TRACKS = 0 TRK
|
||||
;__________________________________________________________________________________________________
|
||||
;
|
||||
; 4MB RAM FLOPPY DRIVE, 32 TRKS, 1024 SECS/TRK, 128 BYTES/SEC
|
||||
; BLOCKSIZE (BLS) = 2K, DIRECTORY ENTRIES = 256
|
||||
; SEC/TRK ENGINEERED SO THAT AFTER DEBLOCKING, SECTOR NUMBER OCCUPIES 1 BYTE (0-255)
|
||||
;
|
||||
.DB (2048 / 128) ; RECORDS PER BLOCK (BLS / 128)
|
||||
DPB_RF:
|
||||
.DW 1024 ; SPT: SECTORS PER TRACK
|
||||
.DB 4 ; BSH: BLOCK SHIFT FACTOR
|
||||
.DB 15 ; BLM: BLOCK MASK
|
||||
.DB 0 ; EXM: EXTENT MASK
|
||||
.DW 2047 ; DSM: TOTAL STORAGE IN BLOCKS - 1 BLK = (4MB / 2K BLS) - 1 = 2047
|
||||
.DW 255 ; DRM: DIR ENTRIES - 1 = 256 - 1 = 255
|
||||
.DB 11110000B ; AL0: DIR BLK BIT MAP, FIRST BYTE
|
||||
.DB 00000000B ; AL1: DIR BLK BIT MAP, SECOND BYTE
|
||||
.DW 0 ; CKS: DIRECTORY CHECK VECTOR SIZE = 256 / 4
|
||||
.DW 0 ; OFF: RESERVED TRACKS = 0 TRK
|
||||
;__________________________________________________________________________________________________
|
||||
;
|
||||
; 8MB HARD DISK DRIVE, 65 TRKS, 1024 SECS/TRK, 128 BYTES/SEC
|
||||
; BLOCKSIZE (BLS) = 4K, DIRECTORY ENTRIES = 128
|
||||
; SEC/TRK ENGINEERED SO THAT AFTER DEBLOCKING, SECTOR NUMBER OCCUPIES 1 BYTE (0-255)
|
||||
@@ -1632,6 +1650,7 @@ DPB_MAP:
|
||||
.DW DPB_FD360 ; MID_FD360
|
||||
.DW DPB_FD120 ; MID_FD120
|
||||
.DW DPB_FD111 ; MID_FD111
|
||||
.DW DPB_RF ; MID_RF
|
||||
;
|
||||
DPB_CNT .EQU ($ - DPB_MAP) / 2
|
||||
;
|
||||
@@ -1707,6 +1726,10 @@ DPH_MAP:
|
||||
.DW HDSKDPH2
|
||||
.DW HDSKDPH3
|
||||
#ENDIF
|
||||
#IF (DSKMAP == DM_RF)
|
||||
.DW RFDPH0
|
||||
.DW RFDPH1
|
||||
#ENDIF
|
||||
#IF (DSKMAP != DM_ROM)
|
||||
.DW MDDPH0
|
||||
#ENDIF
|
||||
@@ -1753,6 +1776,10 @@ DPH_MAP:
|
||||
.DW HDSKDPH2
|
||||
.DW HDSKDPH3
|
||||
#ENDIF
|
||||
#IF ((DSKMAP != DM_RF) & RFENABLE)
|
||||
.DW RFDPH0
|
||||
.DW RFDPH1
|
||||
#ENDIF
|
||||
#ENDIF ; CUSTOM_DPHMAP
|
||||
;
|
||||
DPH_CNT .EQU ($ - DPH_MAP) / 2
|
||||
@@ -1855,9 +1882,6 @@ INIT:
|
||||
; SETUP A TEMP STACK IN UPPER 32K
|
||||
LD SP,ISTACK ; STACK FOR INITIALIZATION
|
||||
|
||||
; ENSURE RAM PAGE ZERO ACTIVE
|
||||
CALL RAMPGZ
|
||||
|
||||
; THIS INIT CODE WILL BE OVERLAID, SO WE ARE GOING
|
||||
; TO MODIFY THE BOOT ENTRY POINT TO CAUSE A PANIC
|
||||
; TO EASILY IDENTIFY IF SOMETHING TRIES TO INVOKE
|
||||
@@ -1892,14 +1916,13 @@ INIT1:
|
||||
CALL WRITESTR
|
||||
CALL NEWLINE
|
||||
|
||||
; SAVE COMMAND PROCESSOR TO CACHE IN RAM1
|
||||
LD A,1
|
||||
CALL RAMPG
|
||||
LD HL,CPM_LOC ; LOCATION OF ACTIVE COMMAND PROCESSOR
|
||||
LD DE,0800H ; LOCATION IN RAM 1 OF COMMAND PROCESSOR CACHE
|
||||
LD BC,CCPSIZ ; SIZE OF COMMAND PROCESSOR
|
||||
LDIR
|
||||
CALL RAMPGZ
|
||||
; SAVE COMMAND PROCESSOR TO CACHE IN RAM BANK 1
|
||||
LD B,BF_SYSBNKCPY ; B = FUNCTION = BANK COPY
|
||||
LD C,$81 ; C = BANK = RAM BANK 1
|
||||
LD HL,CPM_LOC ; SOURCE IS LOCATION OF ACTIVE CCP
|
||||
LD DE,$0800 ; DESTINATION = $800, CCP CACHE IN RAM BANK 1
|
||||
LD IX,CCPSIZ ; SIZE OF CCP
|
||||
RST 08
|
||||
|
||||
; SYSTEM INITIALIZATION
|
||||
CALL BLKRES ; RESET DISK (DE)BLOCKING ALGORITHM
|
||||
|
||||
@@ -83,6 +83,8 @@ HDSKENABLE .EQU FALSE ; TRUE FOR SIMH HDSK SUPPORT
|
||||
HDSKTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF IDEENABLE = TRUE)
|
||||
HDSKCAPACITY .EQU 64 ; CAPACITY OF DEVICE (IN MB)
|
||||
;
|
||||
RFENABLE .EQU FALSE ; TRUE FOR RAM FLOPPY SUPPORT
|
||||
;
|
||||
PPKENABLE .EQU TRUE ; TRUE FOR PARALLEL PORT KEYBOARD
|
||||
PPKTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF PPKENABLE = TRUE)
|
||||
KBDENABLE .EQU FALSE ; TRUE FOR PS/2 KEYBOARD ON I8242
|
||||
|
||||
@@ -83,6 +83,8 @@ HDSKENABLE .EQU FALSE ; TRUE FOR SIMH HDSK SUPPORT
|
||||
HDSKTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF IDEENABLE = TRUE)
|
||||
HDSKCAPACITY .EQU 64 ; CAPACITY OF DEVICE (IN MB)
|
||||
;
|
||||
RFENABLE .EQU FALSE ; TRUE FOR RAM FLOPPY SUPPORT
|
||||
;
|
||||
PPKENABLE .EQU TRUE ; TRUE FOR PARALLEL PORT KEYBOARD
|
||||
PPKTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF PPKENABLE = TRUE)
|
||||
KBDENABLE .EQU FALSE ; TRUE FOR PS/2 KEYBOARD ON I8242
|
||||
|
||||
@@ -91,6 +91,8 @@ HDSKENABLE .EQU FALSE ; TRUE FOR SIMH HDSK SUPPORT
|
||||
HDSKTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF IDEENABLE = TRUE)
|
||||
HDSKCAPACITY .EQU 64 ; CAPACITY OF DEVICE (IN MB)
|
||||
;
|
||||
RFENABLE .EQU FALSE ; TRUE FOR RAM FLOPPY SUPPORT
|
||||
;
|
||||
PPKENABLE .EQU FALSE ; TRUE FOR PARALLEL PORT KEYBOARD
|
||||
PPKTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF PPKENABLE = TRUE)
|
||||
KBDENABLE .EQU FALSE ; TRUE FOR PS/2 KEYBOARD ON I8242
|
||||
|
||||
@@ -87,6 +87,8 @@ HDSKENABLE .EQU FALSE ; TRUE FOR SIMH HDSK SUPPORT
|
||||
HDSKTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF IDEENABLE = TRUE)
|
||||
HDSKCAPACITY .EQU 64 ; CAPACITY OF DEVICE (IN MB)
|
||||
;
|
||||
RFENABLE .EQU FALSE ; TRUE FOR RAM FLOPPY SUPPORT
|
||||
;
|
||||
PPKENABLE .EQU FALSE ; TRUE FOR PARALLEL PORT KEYBOARD
|
||||
PPKTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF PPKENABLE = TRUE)
|
||||
KBDENABLE .EQU TRUE ; TRUE FOR PS/2 KEYBOARD ON I8242
|
||||
|
||||
@@ -87,6 +87,8 @@ HDSKENABLE .EQU FALSE ; TRUE FOR SIMH HDSK SUPPORT
|
||||
HDSKTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF IDEENABLE = TRUE)
|
||||
HDSKCAPACITY .EQU 64 ; CAPACITY OF DEVICE (IN MB)
|
||||
;
|
||||
RFENABLE .EQU FALSE ; TRUE FOR RAM FLOPPY SUPPORT
|
||||
;
|
||||
PPKENABLE .EQU FALSE ; TRUE FOR PARALLEL PORT KEYBOARD
|
||||
PPKTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF PPKENABLE = TRUE)
|
||||
KBDENABLE .EQU FALSE ; TRUE FOR PS/2 KEYBOARD ON I8242
|
||||
|
||||
@@ -87,6 +87,8 @@ HDSKENABLE .EQU FALSE ; TRUE FOR SIMH HDSK SUPPORT
|
||||
HDSKTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF IDEENABLE = TRUE)
|
||||
HDSKCAPACITY .EQU 64 ; CAPACITY OF DEVICE (IN MB)
|
||||
;
|
||||
RFENABLE .EQU FALSE ; TRUE FOR RAM FLOPPY SUPPORT
|
||||
;
|
||||
PPKENABLE .EQU FALSE ; TRUE FOR PARALLEL PORT KEYBOARD
|
||||
PPKTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF PPKENABLE = TRUE)
|
||||
KBDENABLE .EQU FALSE ; TRUE FOR PS/2 KEYBOARD ON I8242
|
||||
|
||||
@@ -87,6 +87,8 @@ HDSKENABLE .EQU FALSE ; TRUE FOR SIMH HDSK SUPPORT
|
||||
HDSKTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF IDEENABLE = TRUE)
|
||||
HDSKCAPACITY .EQU 64 ; CAPACITY OF DEVICE (IN MB)
|
||||
;
|
||||
RFENABLE .EQU FALSE ; TRUE FOR RAM FLOPPY SUPPORT
|
||||
;
|
||||
PPKENABLE .EQU FALSE ; TRUE FOR PARALLEL PORT KEYBOARD
|
||||
PPKTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF PPKENABLE = TRUE)
|
||||
KBDENABLE .EQU TRUE ; TRUE FOR PS/2 KEYBOARD ON I8242
|
||||
|
||||
@@ -87,6 +87,8 @@ HDSKENABLE .EQU FALSE ; TRUE FOR SIMH HDSK SUPPORT
|
||||
HDSKTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF IDEENABLE = TRUE)
|
||||
HDSKCAPACITY .EQU 64 ; CAPACITY OF DEVICE (IN MB)
|
||||
;
|
||||
RFENABLE .EQU FALSE ; TRUE FOR RAM FLOPPY SUPPORT
|
||||
;
|
||||
PPKENABLE .EQU FALSE ; TRUE FOR PARALLEL PORT KEYBOARD
|
||||
PPKTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF PPKENABLE = TRUE)
|
||||
KBDENABLE .EQU FALSE ; TRUE FOR PS/2 KEYBOARD ON I8242
|
||||
|
||||
@@ -87,6 +87,8 @@ HDSKENABLE .EQU FALSE ; TRUE FOR SIMH HDSK SUPPORT
|
||||
HDSKTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF IDEENABLE = TRUE)
|
||||
HDSKCAPACITY .EQU 64 ; CAPACITY OF DEVICE (IN MB)
|
||||
;
|
||||
RFENABLE .EQU FALSE ; TRUE FOR RAM FLOPPY SUPPORT
|
||||
;
|
||||
PPKENABLE .EQU FALSE ; TRUE FOR PARALLEL PORT KEYBOARD
|
||||
PPKTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF PPKENABLE = TRUE)
|
||||
KBDENABLE .EQU FALSE ; TRUE FOR PS/2 KEYBOARD ON I8242
|
||||
|
||||
@@ -91,6 +91,8 @@ HDSKENABLE .EQU FALSE ; TRUE FOR SIMH HDSK SUPPORT
|
||||
HDSKTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF IDEENABLE = TRUE)
|
||||
HDSKCAPACITY .EQU 64 ; CAPACITY OF DEVICE (IN MB)
|
||||
;
|
||||
RFENABLE .EQU FALSE ; TRUE FOR RAM FLOPPY SUPPORT
|
||||
;
|
||||
PPKENABLE .EQU FALSE ; TRUE FOR PARALLEL PORT KEYBOARD
|
||||
PPKTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF PPKENABLE = TRUE)
|
||||
KBDENABLE .EQU FALSE ; TRUE FOR PS/2 KEYBOARD ON I8242
|
||||
|
||||
@@ -87,6 +87,8 @@ HDSKENABLE .EQU FALSE ; TRUE FOR SIMH HDSK SUPPORT
|
||||
HDSKTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF IDEENABLE = TRUE)
|
||||
HDSKCAPACITY .EQU 64 ; CAPACITY OF DEVICE (IN MB)
|
||||
;
|
||||
RFENABLE .EQU FALSE ; TRUE FOR RAM FLOPPY SUPPORT
|
||||
;
|
||||
PPKENABLE .EQU FALSE ; TRUE FOR PARALLEL PORT KEYBOARD
|
||||
PPKTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF PPKENABLE = TRUE)
|
||||
KBDENABLE .EQU FALSE ; TRUE FOR PS/2 KEYBOARD ON I8242
|
||||
|
||||
@@ -87,6 +87,8 @@ HDSKENABLE .EQU FALSE ; TRUE FOR SIMH HDSK SUPPORT
|
||||
HDSKTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF IDEENABLE = TRUE)
|
||||
HDSKCAPACITY .EQU 64 ; CAPACITY OF DEVICE (IN MB)
|
||||
;
|
||||
RFENABLE .EQU FALSE ; TRUE FOR RAM FLOPPY SUPPORT
|
||||
;
|
||||
PPKENABLE .EQU FALSE ; TRUE FOR PARALLEL PORT KEYBOARD
|
||||
PPKTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF PPKENABLE = TRUE)
|
||||
KBDENABLE .EQU FALSE ; TRUE FOR PS/2 KEYBOARD ON I8242
|
||||
|
||||
@@ -87,6 +87,8 @@ HDSKENABLE .EQU FALSE ; TRUE FOR SIMH HDSK SUPPORT
|
||||
HDSKTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF IDEENABLE = TRUE)
|
||||
HDSKCAPACITY .EQU 64 ; CAPACITY OF DEVICE (IN MB)
|
||||
;
|
||||
RFENABLE .EQU FALSE ; TRUE FOR RAM FLOPPY SUPPORT
|
||||
;
|
||||
PPKENABLE .EQU FALSE ; TRUE FOR PARALLEL PORT KEYBOARD
|
||||
PPKTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF PPKENABLE = TRUE)
|
||||
KBDENABLE .EQU FALSE ; TRUE FOR PS/2 KEYBOARD ON I8242
|
||||
|
||||
103
Source/config_n8vem_rf.asm
Normal file
103
Source/config_n8vem_rf.asm
Normal file
@@ -0,0 +1,103 @@
|
||||
;
|
||||
;==================================================================================================
|
||||
; ROMWBW 2.X CONFIGURATION FOR N8VEM SBC
|
||||
;==================================================================================================
|
||||
;
|
||||
; BUILD CONFIGURATION OPTIONS
|
||||
;
|
||||
CPUFREQ .EQU 8 ; IN MHZ, USED TO COMPUTE DELAY FACTORS
|
||||
;
|
||||
BOOTCON .EQU CIODEV_UART ; CONSOLE DEVICE FOR BOOT MESSAGES (MUST BE PRIMARY SERIAL PORT FOR PLATFORM)
|
||||
DEFCON .EQU CIODEV_UART ; DEFAULT CONSOLE DEVICE (LOADER AND MONITOR): CIODEV_UART, CIODEV_CRT, CIODEV_PRPCON, CIODEV_PPPCON
|
||||
ALTCON .EQU DEFCON ; ALT CONSOLE DEVICE (USED WHEN CONFIG JUMPER SHORTED)
|
||||
CONBAUD .EQU 38400 ; BAUDRATE FOR CONSOLE DURING HARDWARE INIT
|
||||
DEFVDA .EQU VDADEV_NONE ; DEFAULT VDA DEVICE (VDADEV_NONE, VDADEV_VDU, VDADEV_CVDU, VDADEV_N8V, VDADEV_UPD7220)
|
||||
DEFEMU .EQU EMUTYP_TTY ; DEFAULT VDA EMULATION (EMUTYP_TTY, EMUTYP_ANSI, ...)
|
||||
TERMTYPE .EQU TERM_ANSI ; TERM_TTY=0, TERM_ANSI=1, TERM_WYSE=2
|
||||
;
|
||||
RAMSIZE .EQU 512 ; SIZE OF RAM IN KB, MUST MATCH YOUR HARDWARE!!!
|
||||
CLRRAMDISK .EQU CLR_AUTO ; CLR_ALWAYS, CLR_NEVER, CLR_AUTO (CLEAR IF INVALID DIR AREA)
|
||||
;
|
||||
DSKMAP .EQU DM_RAM ; DM_ROM, DM_RAM, DM_FD, DM_IDE, DM_PPIDE, DM_SD, DM_PRPSD, DM_PPPSD, DM_HDSK
|
||||
;
|
||||
DSKYENABLE .EQU FALSE ; TRUE FOR DSKY SUPPORT (DO NOT COMBINE WITH PPIDE)
|
||||
;
|
||||
UARTENABLE .EQU TRUE ; TRUE FOR UART SUPPORT (ALMOST ALWAYS WANT THIS TO BE TRUE)
|
||||
UARTCNT .EQU 1 ; NUMBER OF UARTS
|
||||
UART0IOB .EQU $68 ; UART0 IOBASE
|
||||
UART0BAUD .EQU CONBAUD ; UART0 BAUDRATE
|
||||
UART0FIFO .EQU TRUE ; UART0 TRUE ENABLES UART FIFO (16550 ASSUMED, N8VEM AND ZETA ONLY)
|
||||
UART0AFC .EQU FALSE ; UART0 TRUE ENABLES AUTO FLOW CONTROL (YOUR TERMINAL/UART MUST SUPPORT RTS/CTS FLOW CONTROL!!!)
|
||||
;
|
||||
ASCIENABLE .EQU FALSE ; TRUE FOR Z180 ASCI SUPPORT
|
||||
ASCI0BAUD .EQU CONBAUD ; ASCI0 BAUDRATE (IMPLEMENTED BY Z180_CNTLB0)
|
||||
ASCI1BAUD .EQU CONBAUD ; ASCI1 BAUDRATE (IMPLEMENTED BY Z180_CNTLB1)
|
||||
;
|
||||
VDUENABLE .EQU FALSE ; TRUE FOR VDU BOARD SUPPORT
|
||||
CVDUENABLE .EQU FALSE ; TRUE FOR CVDU BOARD SUPPORT
|
||||
UPD7220ENABLE .EQU FALSE ; TRUE FOR uPD7220 BOARD SUPPORT
|
||||
N8VENABLE .EQU FALSE ; TRUE FOR N8 (TMS9918) VIDEO/KBD SUPPORT
|
||||
;
|
||||
DEFIOBYTE .EQU $00 ; DEFAULT INITIAL VALUE FOR CP/M IOBYTE, $00=TTY, $01=CRT (MUST HAVE CRT HARDWARE)
|
||||
ALTIOBYTE .EQU DEFIOBYTE ; ALT INITIAL VALUE (USED WHEN CONFIG JUMPER SHORTED)
|
||||
WRTCACHE .EQU TRUE ; ENABLE WRITE CACHING IN CBIOS (DE)BLOCKING ALGORITHM
|
||||
DSKTRACE .EQU FALSE ; ENABLE TRACING OF CBIOS DISK FUNCTION CALLS
|
||||
;
|
||||
MDENABLE .EQU TRUE ; TRUE FOR ROM/RAM DISK SUPPORT (ALMOST ALWAYS WANT THIS ENABLED)
|
||||
;
|
||||
FDENABLE .EQU FALSE ; TRUE FOR FLOPPY SUPPORT
|
||||
FDMODE .EQU FDMODE_DIO ; FDMODE_DIO, FDMODE_ZETA, FDMODE_DIDE, FDMODE_N8, FDMODE_DIO3
|
||||
FDTRACE .EQU 1 ; 0=SILENT, 1=FATAL ERRORS, 2=ALL ERRORS, 3=EVERYTHING (ONLY RELEVANT IF FDENABLE = TRUE)
|
||||
FDMEDIA .EQU FDM144 ; FDM720, FDM144, FDM360, FDM120 (ONLY RELEVANT IF FDENABLE = TRUE)
|
||||
FDMEDIAALT .EQU FDM720 ; ALTERNATE MEDIA TO TRY, SAME CHOICES AS ABOVE (ONLY RELEVANT IF FDMAUTO = TRUE)
|
||||
FDMAUTO .EQU TRUE ; SELECT BETWEEN MEDIA OPTS ABOVE AUTOMATICALLY
|
||||
;
|
||||
IDEENABLE .EQU FALSE ; TRUE FOR IDE SUPPORT
|
||||
IDEMODE .EQU IDEMODE_DIO ; IDEMODE_DIO, IDEMODE_DIDE
|
||||
IDETRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF IDEENABLE = TRUE)
|
||||
IDE8BIT .EQU FALSE ; USE IDE 8BIT TRANSFERS (PROBABLY ONLY WORKS FOR CF CARDS!)
|
||||
IDECAPACITY .EQU 64 ; CAPACITY OF DEVICE (IN MB)
|
||||
;
|
||||
PPIDEENABLE .EQU FALSE ; TRUE FOR PPIDE SUPPORT (DO NOT COMBINE WITH DSKYENABLE)
|
||||
PPIDEIOB .EQU $60 ; PPIDE IOBASE
|
||||
PPIDETRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF PPIDEENABLE = TRUE)
|
||||
PPIDE8BIT .EQU FALSE ; USE IDE 8BIT TRANSFERS (PROBABLY ONLY WORKS FOR CF CARDS!)
|
||||
PPIDECAPACITY .EQU 64 ; CAPACITY OF DEVICE (IN MB)
|
||||
PPIDESLOW .EQU FALSE ; ADD DELAYS TO HELP PROBLEMATIC HARDWARE (TRY THIS IF PPIDE IS UNRELIABLE)
|
||||
;
|
||||
SDENABLE .EQU FALSE ; TRUE FOR SD SUPPORT
|
||||
SDMODE .EQU SDMODE_JUHA ; SDMODE_JUHA, SDMODE_CSIO, SDMODE_UART, SDMODE_PPI, SDMODE_DSD
|
||||
SDTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF IDEENABLE = TRUE)
|
||||
SDCAPACITY .EQU 64 ; CAPACITY OF DEVICE (IN MB)
|
||||
SDCSIOFAST .EQU FALSE ; TABLE-DRIVEN BIT INVERTER
|
||||
;
|
||||
PRPENABLE .EQU FALSE ; TRUE FOR PROPIO SD SUPPORT (FOR N8VEM PROPIO ONLY!)
|
||||
PRPSDENABLE .EQU TRUE ; TRUE FOR PROPIO SD SUPPORT (FOR N8VEM PROPIO ONLY!)
|
||||
PRPSDTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF PRPSDENABLE = TRUE)
|
||||
PRPSDCAPACITY .EQU 64 ; CAPACITY OF DEVICE (IN MB)
|
||||
PRPCONENABLE .EQU TRUE ; TRUE FOR PROPIO CONSOLE SUPPORT (PS/2 KBD & VGA VIDEO)
|
||||
;
|
||||
PPPENABLE .EQU FALSE ; TRUE FOR PARPORTPROP SUPPORT
|
||||
PPPSDENABLE .EQU TRUE ; TRUE FOR PARPORTPROP SD SUPPORT
|
||||
PPPSDTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF PPPENABLE = TRUE)
|
||||
PPPSDCAPACITY .EQU 64 ; CAPACITY OF PPP SD DEVICE (IN MB)
|
||||
PPPCONENABLE .EQU TRUE ; TRUE FOR PROPIO CONSOLE SUPPORT (PS/2 KBD & VGA VIDEO)
|
||||
;
|
||||
HDSKENABLE .EQU FALSE ; TRUE FOR SIMH HDSK SUPPORT
|
||||
HDSKTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF IDEENABLE = TRUE)
|
||||
HDSKCAPACITY .EQU 64 ; CAPACITY OF DEVICE (IN MB)
|
||||
;
|
||||
RFENABLE .EQU TRUE ; TRUE FOR RAM FLOPPY SUPPORT
|
||||
;
|
||||
PPKENABLE .EQU FALSE ; TRUE FOR PARALLEL PORT KEYBOARD
|
||||
PPKTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF PPKENABLE = TRUE)
|
||||
KBDENABLE .EQU FALSE ; TRUE FOR PS/2 KEYBOARD ON I8242
|
||||
KBDTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF KBDENABLE = TRUE)
|
||||
;
|
||||
TTYENABLE .EQU FALSE ; INCLUDE TTY EMULATION SUPPORT
|
||||
ANSIENABLE .EQU FALSE ; INCLUDE ANSI EMULATION SUPPORT
|
||||
ANSITRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF ANSIENABLE = TRUE)
|
||||
;
|
||||
BOOTTYPE .EQU BT_MENU ; BT_MENU (WAIT FOR KEYPRESS), BT_AUTO (BOOT_DEFAULT AFTER BOOT_TIMEOUT SECS)
|
||||
BOOT_TIMEOUT .EQU 20 ; APPROX TIMEOUT IN SECONDS FOR AUTOBOOT, 0 FOR IMMEDIATE
|
||||
BOOT_DEFAULT .EQU 'R' ; SELECTION TO INVOKE AT TIMEOUT
|
||||
@@ -87,6 +87,8 @@ HDSKENABLE .EQU TRUE ; TRUE FOR HDSK SUPPORT
|
||||
HDSKTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF IDEENABLE = TRUE)
|
||||
HDSKCAPACITY .EQU 64 ; CAPACITY OF DEVICE (IN MB)
|
||||
;
|
||||
RFENABLE .EQU FALSE ; TRUE FOR RAM FLOPPY SUPPORT
|
||||
;
|
||||
PPKENABLE .EQU FALSE ; TRUE FOR PARALLEL PORT KEYBOARD
|
||||
PPKTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF PPKENABLE = TRUE)
|
||||
KBDENABLE .EQU FALSE ; TRUE FOR PS/2 KEYBOARD ON I8242
|
||||
|
||||
@@ -87,6 +87,8 @@ HDSKENABLE .EQU FALSE ; TRUE FOR SIMH HDSK SUPPORT
|
||||
HDSKTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF IDEENABLE = TRUE)
|
||||
HDSKCAPACITY .EQU 64 ; CAPACITY OF DEVICE (IN MB)
|
||||
;
|
||||
RFENABLE .EQU FALSE ; TRUE FOR RAM FLOPPY SUPPORT
|
||||
;
|
||||
PPKENABLE .EQU FALSE ; TRUE FOR PARALLEL PORT KEYBOARD
|
||||
PPKTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF PPKENABLE = TRUE)
|
||||
KBDENABLE .EQU FALSE ; TRUE FOR PS/2 KEYBOARD ON I8242
|
||||
|
||||
@@ -87,6 +87,8 @@ HDSKENABLE .EQU FALSE ; TRUE FOR SIMH HDSK SUPPORT
|
||||
HDSKTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF IDEENABLE = TRUE)
|
||||
HDSKCAPACITY .EQU 64 ; CAPACITY OF DEVICE (IN MB)
|
||||
;
|
||||
RFENABLE .EQU FALSE ; TRUE FOR RAM FLOPPY SUPPORT
|
||||
;
|
||||
PPKENABLE .EQU TRUE ; TRUE FOR PARALLEL PORT KEYBOARD
|
||||
PPKTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF PPKENABLE = TRUE)
|
||||
KBDENABLE .EQU FALSE ; TRUE FOR PS/2 KEYBOARD ON I8242
|
||||
|
||||
103
Source/config_zeta_ppisd.asm
Normal file
103
Source/config_zeta_ppisd.asm
Normal file
@@ -0,0 +1,103 @@
|
||||
;
|
||||
;==================================================================================================
|
||||
; ROMWBW 2.X CONFIGURATION FOR ZETA W/ PPISD
|
||||
;==================================================================================================
|
||||
;
|
||||
; BUILD CONFIGURATION OPTIONS
|
||||
;
|
||||
CPUFREQ .EQU 20 ; IN MHZ, USED TO COMPUTE DELAY FACTORS
|
||||
;
|
||||
BOOTCON .EQU CIODEV_UART ; CONSOLE DEVICE FOR BOOT MESSAGES (MUST BE PRIMARY SERIAL PORT FOR PLATFORM)
|
||||
DEFCON .EQU CIODEV_UART ; DEFAULT CONSOLE DEVICE (LOADER AND MONITOR): CIODEV_UART, CIODEV_CRT, CIODEV_PRPCON, CIODEV_PPPCON
|
||||
ALTCON .EQU DEFCON ; ALT CONSOLE DEVICE (USED WHEN CONFIG JUMPER SHORTED)
|
||||
CONBAUD .EQU 38400 ; BAUDRATE FOR CONSOLE DURING HARDWARE INIT
|
||||
DEFVDA .EQU VDADEV_NONE ; DEFAULT VDA DEVICE (VDADEV_NONE, VDADEV_VDU, VDADEV_CVDU, VDADEV_N8V, VDADEV_UPD7220)
|
||||
DEFEMU .EQU EMUTYP_TTY ; DEFAULT VDA EMULATION (EMUTYP_TTY, EMUTYP_ANSI, ...)
|
||||
TERMTYPE .EQU TERM_ANSI ; TERM_TTY=0, TERM_ANSI=1, TERM_WYSE=2
|
||||
;
|
||||
RAMSIZE .EQU 512 ; SIZE OF RAM IN KB, MUST MATCH YOUR HARDWARE!!!
|
||||
CLRRAMDISK .EQU CLR_AUTO ; CLR_ALWAYS, CLR_NEVER, CLR_AUTO (CLEAR IF INVALID DIR AREA)
|
||||
;
|
||||
DSKMAP .EQU DM_RAM ; DM_ROM, DM_RAM, DM_FD, DM_IDE, DM_PPIDE, DM_SD, DM_PRPSD, DM_PPPSD, DM_HDSK
|
||||
;
|
||||
DSKYENABLE .EQU FALSE ; TRUE FOR DSKY SUPPORT (DO NOT COMBINE WITH PPIDE)
|
||||
;
|
||||
UARTENABLE .EQU TRUE ; TRUE FOR UART SUPPORT (ALMOST ALWAYS WANT THIS TO BE TRUE)
|
||||
UARTCNT .EQU 1 ; NUMBER OF UARTS
|
||||
UART0IOB .EQU $68 ; UART0 IOBASE
|
||||
UART0BAUD .EQU CONBAUD ; UART0 BAUDRATE
|
||||
UART0FIFO .EQU TRUE ; UART0 TRUE ENABLES UART FIFO (16550 ASSUMED, N8VEM AND ZETA ONLY)
|
||||
UART0AFC .EQU FALSE ; UART0 TRUE ENABLES AUTO FLOW CONTROL (YOUR TERMINAL/UART MUST SUPPORT RTS/CTS FLOW CONTROL!!!)
|
||||
;
|
||||
ASCIENABLE .EQU FALSE ; TRUE FOR Z180 ASCI SUPPORT
|
||||
ASCI0BAUD .EQU CONBAUD ; ASCI0 BAUDRATE (IMPLEMENTED BY Z180_CNTLB0)
|
||||
ASCI1BAUD .EQU CONBAUD ; ASCI1 BAUDRATE (IMPLEMENTED BY Z180_CNTLB1)
|
||||
;
|
||||
VDUENABLE .EQU FALSE ; TRUE FOR VDU BOARD SUPPORT
|
||||
CVDUENABLE .EQU FALSE ; TRUE FOR CVDU BOARD SUPPORT
|
||||
UPD7220ENABLE .EQU FALSE ; TRUE FOR uPD7220 BOARD SUPPORT
|
||||
N8VENABLE .EQU FALSE ; TRUE FOR N8 (TMS9918) VIDEO/KBD SUPPORT
|
||||
;
|
||||
DEFIOBYTE .EQU $00 ; DEFAULT INITIAL VALUE FOR CP/M IOBYTE, $00=TTY, $01=CRT (MUST HAVE CRT HARDWARE)
|
||||
ALTIOBYTE .EQU DEFIOBYTE ; ALT INITIAL VALUE (USED WHEN CONFIG JUMPER SHORTED)
|
||||
WRTCACHE .EQU TRUE ; ENABLE WRITE CACHING IN CBIOS (DE)BLOCKING ALGORITHM
|
||||
DSKTRACE .EQU FALSE ; ENABLE TRACING OF CBIOS DISK FUNCTION CALLS
|
||||
;
|
||||
MDENABLE .EQU TRUE ; TRUE FOR ROM/RAM DISK SUPPORT (ALMOST ALWAYS WANT THIS ENABLED)
|
||||
;
|
||||
FDENABLE .EQU TRUE ; TRUE FOR FLOPPY SUPPORT
|
||||
FDMODE .EQU FDMODE_ZETA ; FDMODE_DIO, FDMODE_ZETA, FDMODE_DIDE, FDMODE_N8, FDMODE_DIO3
|
||||
FDTRACE .EQU 1 ; 0=SILENT, 1=FATAL ERRORS, 2=ALL ERRORS, 3=EVERYTHING (ONLY RELEVANT IF FDENABLE = TRUE)
|
||||
FDMEDIA .EQU FDM144 ; FDM720, FDM144, FDM360, FDM120 (ONLY RELEVANT IF FDENABLE = TRUE)
|
||||
FDMEDIAALT .EQU FDM720 ; ALTERNATE MEDIA TO TRY, SAME CHOICES AS ABOVE (ONLY RELEVANT IF FDMAUTO = TRUE)
|
||||
FDMAUTO .EQU TRUE ; SELECT BETWEEN MEDIA OPTS ABOVE AUTOMATICALLY
|
||||
;
|
||||
IDEENABLE .EQU FALSE ; TRUE FOR IDE SUPPORT
|
||||
IDEMODE .EQU IDEMODE_DIO ; IDEMODE_DIO, IDEMODE_DIDE
|
||||
IDETRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF IDEENABLE = TRUE)
|
||||
IDE8BIT .EQU FALSE ; USE IDE 8BIT TRANSFERS (PROBABLY ONLY WORKS FOR CF CARDS!)
|
||||
IDECAPACITY .EQU 64 ; CAPACITY OF DEVICE (IN MB)
|
||||
;
|
||||
PPIDEENABLE .EQU FALSE ; TRUE FOR PPIDE SUPPORT (DO NOT COMBINE WITH DSKYENABLE)
|
||||
PPIDEIOB .EQU $60 ; PPIDE IOBASE
|
||||
PPIDETRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF PPIDEENABLE = TRUE)
|
||||
PPIDE8BIT .EQU FALSE ; USE IDE 8BIT TRANSFERS (PROBABLY ONLY WORKS FOR CF CARDS!)
|
||||
PPIDECAPACITY .EQU 64 ; CAPACITY OF DEVICE (IN MB)
|
||||
PPIDESLOW .EQU FALSE ; ADD DELAYS TO HELP PROBLEMATIC HARDWARE (TRY THIS IF PPIDE IS UNRELIABLE)
|
||||
;
|
||||
SDENABLE .EQU TRUE ; TRUE FOR SD SUPPORT
|
||||
SDMODE .EQU SDMODE_PPI ; SDMODE_JUHA, SDMODE_CSIO, SDMODE_UART, SDMODE_PPI, SDMODE_DSD
|
||||
SDTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF IDEENABLE = TRUE)
|
||||
SDCAPACITY .EQU 64 ; CAPACITY OF DEVICE (IN MB)
|
||||
SDCSIOFAST .EQU FALSE ; TABLE-DRIVEN BIT INVERTER
|
||||
;
|
||||
PRPENABLE .EQU FALSE ; TRUE FOR PROPIO SD SUPPORT (FOR N8VEM PROPIO ONLY!)
|
||||
PRPSDENABLE .EQU TRUE ; TRUE FOR PROPIO SD SUPPORT (FOR N8VEM PROPIO ONLY!)
|
||||
PRPSDTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF PRPSDENABLE = TRUE)
|
||||
PRPSDCAPACITY .EQU 64 ; CAPACITY OF DEVICE (IN MB)
|
||||
PRPCONENABLE .EQU TRUE ; TRUE FOR PROPIO CONSOLE SUPPORT (PS/2 KBD & VGA VIDEO)
|
||||
;
|
||||
PPPENABLE .EQU FALSE ; TRUE FOR PARPORTPROP SUPPORT
|
||||
PPPSDENABLE .EQU TRUE ; TRUE FOR PARPORTPROP SD SUPPORT
|
||||
PPPSDTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF PPPENABLE = TRUE)
|
||||
PPPSDCAPACITY .EQU 64 ; CAPACITY OF PPP SD DEVICE (IN MB)
|
||||
PPPCONENABLE .EQU TRUE ; TRUE FOR PROPIO CONSOLE SUPPORT (PS/2 KBD & VGA VIDEO)
|
||||
;
|
||||
HDSKENABLE .EQU FALSE ; TRUE FOR SIMH HDSK SUPPORT
|
||||
HDSKTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF IDEENABLE = TRUE)
|
||||
HDSKCAPACITY .EQU 64 ; CAPACITY OF DEVICE (IN MB)
|
||||
;
|
||||
RFENABLE .EQU FALSE ; TRUE FOR RAM FLOPPY SUPPORT
|
||||
;
|
||||
PPKENABLE .EQU FALSE ; TRUE FOR PARALLEL PORT KEYBOARD
|
||||
PPKTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF PPKENABLE = TRUE)
|
||||
KBDENABLE .EQU FALSE ; TRUE FOR PS/2 KEYBOARD ON I8242
|
||||
KBDTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF KBDENABLE = TRUE)
|
||||
;
|
||||
TTYENABLE .EQU FALSE ; INCLUDE TTY EMULATION SUPPORT
|
||||
ANSIENABLE .EQU FALSE ; INCLUDE ANSI EMULATION SUPPORT
|
||||
ANSITRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF ANSIENABLE = TRUE)
|
||||
;
|
||||
BOOTTYPE .EQU BT_MENU ; BT_MENU (WAIT FOR KEYPRESS), BT_AUTO (BOOT_DEFAULT AFTER BOOT_TIMEOUT SECS)
|
||||
BOOT_TIMEOUT .EQU 20 ; APPROX TIMEOUT IN SECONDS FOR AUTOBOOT, 0 FOR IMMEDIATE
|
||||
BOOT_DEFAULT .EQU 'R' ; SELECTION TO INVOKE AT TIMEOUT
|
||||
@@ -87,6 +87,8 @@ HDSKENABLE .EQU FALSE ; TRUE FOR SIMH HDSK SUPPORT
|
||||
HDSKTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF IDEENABLE = TRUE)
|
||||
HDSKCAPACITY .EQU 64 ; CAPACITY OF DEVICE (IN MB)
|
||||
;
|
||||
RFENABLE .EQU FALSE ; TRUE FOR RAM FLOPPY SUPPORT
|
||||
;
|
||||
PPKENABLE .EQU FALSE ; TRUE FOR PARALLEL PORT KEYBOARD
|
||||
PPKTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF PPKENABLE = TRUE)
|
||||
KBDENABLE .EQU FALSE ; TRUE FOR PS/2 KEYBOARD ON I8242
|
||||
|
||||
@@ -87,6 +87,8 @@ HDSKENABLE .EQU FALSE ; TRUE FOR SIMH HDSK SUPPORT
|
||||
HDSKTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF IDEENABLE = TRUE)
|
||||
HDSKCAPACITY .EQU 64 ; CAPACITY OF DEVICE (IN MB)
|
||||
;
|
||||
RFENABLE .EQU FALSE ; TRUE FOR RAM FLOPPY SUPPORT
|
||||
;
|
||||
PPKENABLE .EQU FALSE ; TRUE FOR PARALLEL PORT KEYBOARD
|
||||
PPKTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF PPKENABLE = TRUE)
|
||||
KBDENABLE .EQU FALSE ; TRUE FOR PS/2 KEYBOARD ON I8242
|
||||
|
||||
@@ -149,6 +149,9 @@ HB_INITTBL:
|
||||
#IF (HDSKENABLE)
|
||||
.DW HDSK_INIT
|
||||
#ENDIF
|
||||
#IF (RFENABLE)
|
||||
.DW RF_INIT
|
||||
#ENDIF
|
||||
#IF (PPKENABLE)
|
||||
.DW PPK_INIT
|
||||
#ENDIF
|
||||
@@ -326,6 +329,10 @@ DIO_DISPATCH1:
|
||||
#IF (HDSKENABLE)
|
||||
CP DIODEV_HDSK
|
||||
JP Z,HDSK_DISPATCH
|
||||
#ENDIF
|
||||
#IF (RFENABLE)
|
||||
CP DIODEV_RF
|
||||
JP Z,RF_DISPATCH
|
||||
#ENDIF
|
||||
CALL PANIC
|
||||
;
|
||||
@@ -734,6 +741,15 @@ SIZ_HDSK .EQU $ - ORG_HDSK
|
||||
.ECHO " bytes.\n"
|
||||
#ENDIF
|
||||
|
||||
#IF (RFENABLE)
|
||||
ORG_RF .EQU $
|
||||
#INCLUDE "rf.asm"
|
||||
SIZ_RF .EQU $ - ORG_RF
|
||||
.ECHO "RF occupies "
|
||||
.ECHO SIZ_RF
|
||||
.ECHO " bytes.\n"
|
||||
#ENDIF
|
||||
|
||||
#IF (PPKENABLE)
|
||||
ORG_PPK .EQU $
|
||||
#INCLUDE "ppk.asm"
|
||||
|
||||
@@ -524,7 +524,7 @@ dmloop:
|
||||
ld (BL_TMPDRV),a ; save it for printing if needed
|
||||
call CBIOS_GETDSK ; get drive into, c still has drive number
|
||||
or a ; set flags on result
|
||||
jr nz,dmdone ; error, skip this drive
|
||||
jp nz,dmdone ; error, skip this drive
|
||||
ld (BL_TMPLU),de ; save lu for later
|
||||
ld a,b ; device/unit into a for matching below
|
||||
|
||||
@@ -570,6 +570,10 @@ dmloop:
|
||||
cp DIODEV_HDSK ; SIMH HDSK
|
||||
jr z,dmprt
|
||||
|
||||
ld de,str_devrf
|
||||
cp DIODEV_RF ; RAM FLOPPY
|
||||
jr z,dmprt
|
||||
|
||||
jr dmdone
|
||||
|
||||
dmprt:
|
||||
@@ -770,6 +774,7 @@ str_devsd .DB "SD$"
|
||||
str_devprpsd .DB "PRPSD$"
|
||||
str_devpppsd .DB "PPPSD$"
|
||||
str_devhdsk .DB "HDSK$"
|
||||
str_devrf .DB "RF$"
|
||||
#ENDIF
|
||||
;
|
||||
;==================================================================================================
|
||||
|
||||
127
Source/rf.asm
Normal file
127
Source/rf.asm
Normal file
@@ -0,0 +1,127 @@
|
||||
;
|
||||
;==================================================================================================
|
||||
; RAM FLOPPY DISK DRIVER
|
||||
;==================================================================================================
|
||||
;
|
||||
;
|
||||
;
|
||||
RF_U0IO .EQU $A0
|
||||
RF_U1IO .EQU $A4
|
||||
;
|
||||
; IO PORT OFFSETS
|
||||
;
|
||||
RF_DAT .EQU 0
|
||||
RF_AL .EQU 1
|
||||
RF_AH .EQU 2
|
||||
RF_ST .EQU 3
|
||||
;
|
||||
;
|
||||
;
|
||||
RF_DISPATCH:
|
||||
LD A,B ; GET REQUESTED FUNCTION
|
||||
AND $0F
|
||||
JR Z,RF_READ
|
||||
DEC A
|
||||
JR Z,RF_WRITE
|
||||
DEC A
|
||||
JR Z,RF_STATUS
|
||||
DEC A
|
||||
JR Z,RF_MEDIA
|
||||
CALL PANIC
|
||||
;
|
||||
; RF_MEDIA
|
||||
;
|
||||
RF_MEDIA:
|
||||
LD A,C ; DEVICE/UNIT IS IN C
|
||||
AND $0F ; ISOLATE UNIT NUM
|
||||
CP 2 ; CHECK FOR MAX UNIT EXCEEDED
|
||||
CALL NC,PANIC ; PANIC IF TOO HIGH
|
||||
LD A,MID_RF ; SET CORRECT MEDIA VALUE
|
||||
RET
|
||||
;
|
||||
;
|
||||
;
|
||||
RF_INIT:
|
||||
PRTS("RF: UNITS=2$")
|
||||
;
|
||||
XOR A ; INIT SUCCEEDED
|
||||
RET ; RETURN
|
||||
;
|
||||
;
|
||||
;
|
||||
RF_STATUS:
|
||||
XOR A ; STATUS ALWAYS OK
|
||||
RET
|
||||
;
|
||||
;
|
||||
;
|
||||
RF_READ:
|
||||
CALL RF_SETIO
|
||||
CALL RF_SETADR
|
||||
LD HL,(DIOBUF)
|
||||
LD B,0
|
||||
LD A,(RF_IO)
|
||||
OR RF_DAT
|
||||
LD C,A
|
||||
INIR
|
||||
INIR
|
||||
XOR A
|
||||
RET
|
||||
;
|
||||
;
|
||||
;
|
||||
RF_WRITE:
|
||||
CALL RF_SETIO
|
||||
LD A,(RF_IO)
|
||||
OR RF_ST
|
||||
LD C,A
|
||||
IN A,(C)
|
||||
BIT 0,A ; CHECK WRITE PROTECT
|
||||
LD A,1 ; PREPARE TO RETURN FALSE (ERROR)
|
||||
RET NZ ; WRITE PROTECTED!
|
||||
CALL RF_SETADR
|
||||
LD HL,(DIOBUF)
|
||||
LD B,0
|
||||
LD A,(RF_IO)
|
||||
OR RF_DAT
|
||||
LD C,A
|
||||
OTIR
|
||||
OTIR
|
||||
XOR A
|
||||
RET
|
||||
;
|
||||
;
|
||||
;
|
||||
RF_SETIO:
|
||||
LD A,(HSTDSK) ; GET DEVICE/UNIT
|
||||
AND $0F ; ISOLATE UNIT NUM
|
||||
JR NZ,RF_SETIO1
|
||||
LD A,RF_U0IO
|
||||
JR RF_SETIO3
|
||||
RF_SETIO1:
|
||||
DEC A
|
||||
JR NZ,RF_SETIO2
|
||||
LD A,RF_U1IO
|
||||
JR RF_SETIO3
|
||||
RF_SETIO2:
|
||||
CALL PANIC ; INVALID UNIT
|
||||
RF_SETIO3:
|
||||
LD (RF_IO),A
|
||||
RET
|
||||
;
|
||||
;
|
||||
;
|
||||
RF_SETADR:
|
||||
LD A,(RF_IO)
|
||||
OR RF_AL
|
||||
LD C,A
|
||||
LD A,(HSTSEC)
|
||||
OUT (C),A
|
||||
LD A,(HSTTRK)
|
||||
INC C
|
||||
OUT (C),A
|
||||
RET
|
||||
;
|
||||
;
|
||||
;
|
||||
RF_IO .DB 0
|
||||
30
Source/rf_dph.asm
Normal file
30
Source/rf_dph.asm
Normal file
@@ -0,0 +1,30 @@
|
||||
;
|
||||
;==================================================================================================
|
||||
; RF DISK DRIVER - DATA
|
||||
;==================================================================================================
|
||||
;
|
||||
; RAM FLOPPY 00
|
||||
;
|
||||
.DB DIODEV_RF + 0
|
||||
RFDPH0 .DW 0000,0000
|
||||
.DW 0000,0000
|
||||
.DW DIRBF,DPB_RF
|
||||
.DW RFCSV0,RFALV0
|
||||
;
|
||||
; RAM FLOPPY 01
|
||||
;
|
||||
.DB DIODEV_RF + 1
|
||||
RFDPH1 .DW 0000,0000
|
||||
.DW 0000,0000
|
||||
.DW DIRBF,DPB_RF
|
||||
.DW RFCSV1,RFALV1
|
||||
;
|
||||
RFCKS .EQU 0 ; CKS: 0 FOR NON-REMOVABLE MEDIA
|
||||
RFALS .EQU 256 ; ALS: BLKS / 8 = 2048 / 8 = 256 (ROUNDED UP)
|
||||
;
|
||||
; BUFFERS
|
||||
;
|
||||
RFCSV0: .FILL RFCKS ; NO DIRECTORY CHECKSUM, NON-REMOVABLE DRIVE
|
||||
RFALV0: .FILL RFALS ; MAX OF 2048 DATA BLOCKS
|
||||
RFCSV1: .FILL RFCKS ; NO DIRECTORY CHECKSUM, NON-REMOVABLE DRIVE
|
||||
RFALV1: .FILL RFALS ; MAX OF 2048 DATA BLOCKS
|
||||
@@ -24,6 +24,7 @@ DIODEV_SD .EQU $50
|
||||
DIODEV_PRPSD .EQU $60
|
||||
DIODEV_PPPSD .EQU $70
|
||||
DIODEV_HDSK .EQU $80
|
||||
DIODEV_RF .EQU $90
|
||||
;
|
||||
; VDA DEVICES (VIDEO DISPLAY ADAPTER)
|
||||
;
|
||||
|
||||
@@ -57,6 +57,7 @@ DM_SD .EQU 6 ; SD DRIVE PRIORITY
|
||||
DM_PRPSD .EQU 7 ; PROPIO SD DRIVE PRIORITY
|
||||
DM_PPPSD .EQU 8 ; PROPIO SD DRIVE PRIORITY
|
||||
DM_HDSK .EQU 9 ; SIMH HARD DISK DRIVE PRIORITY
|
||||
DM_RF .EQU 10 ; RAM FLOPPY PRIORITY
|
||||
;
|
||||
; FLOPPY DISK MEDIA SELECTIONS (ID'S MUST BE INDEX OF ENTRY IN FCD_TBL)
|
||||
;
|
||||
@@ -77,6 +78,7 @@ MID_FD144 .EQU 5
|
||||
MID_FD360 .EQU 6
|
||||
MID_FD120 .EQU 7
|
||||
MID_FD111 .EQU 8
|
||||
MID_RF .EQU 9
|
||||
;
|
||||
; FD MODE SELECTIONS
|
||||
;
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
#DEFINE RMJ 2
|
||||
#DEFINE RMN 5
|
||||
#DEFINE RUP 1
|
||||
#DEFINE RTP 17
|
||||
#DEFINE BIOSVER "2.5.1"
|
||||
#DEFINE BIOSBLD "Build 17"
|
||||
#DEFINE REVISION 412
|
||||
#DEFINE RUP 2
|
||||
#DEFINE RTP 18
|
||||
#DEFINE BIOSVER "2.5.2"
|
||||
#DEFINE BIOSBLD "Build 18"
|
||||
#DEFINE REVISION 500
|
||||
|
||||
@@ -727,8 +727,9 @@ PRINT:
|
||||
;
|
||||
PRIN1:
|
||||
MOV A,M ;GET NEXT BYTE
|
||||
ANI 7FH ;WW - CLEAR MSB
|
||||
CALL CONOUT ;PRINT CHAR
|
||||
ANI ~80H ;WW - CLEAR HIGH BIT
|
||||
;WW CALL CONOUT ;PRINT CHAR
|
||||
CNZ CONOUT ;WW - DON'T OUTPUT CHAR IF ZERO
|
||||
MOV A,M ;GET NEXT BYTE AGAIN FOR TEST
|
||||
INX H ;PT TO NEXT BYTE
|
||||
ORA A ;SET FLAGS
|
||||
|
||||
Reference in New Issue
Block a user