Incorporate FDISK80

This commit is contained in:
Wayne Warthen
2016-03-21 17:05:57 -07:00
parent 5adbef5f68
commit b4fc05acfb
68 changed files with 2004 additions and 1829 deletions

View File

@@ -18,6 +18,7 @@
;_______________________________________________________________________________
;
; Change Log:
; 2016-03-21 [WBW] Updated for HBIOS 2.8
;_______________________________________________________________________________
;
; ToDo:
@@ -37,7 +38,7 @@ bdos .equ $0005 ; BDOS invocation vector
stamp .equ $40 ; loc of RomWBW CBIOS zero page stamp
;
rmj .equ 2 ; CBIOS version - major
rmn .equ 7 ; CBIOS version - minor
rmn .equ 8 ; CBIOS version - minor
;
;===============================================================================
; Code Section
@@ -283,22 +284,18 @@ devlist:
or a ; set flags
jr nz,devlstu ; do UNA mode dev list
;
ld b,$1a ; hbios func: diodevcnt
rst 08 ; call hbios, device count to B
ld b,$f7 ; hbios func: sysget
ld c,$10 ; sysget subfunc: diocnt
rst 08 ; call hbios, E := device count
ld b,e ; use device count for loop count
ld c,0 ; use C for device index
devlist1:
call crlf ; formatting
ld de,indent ; indent
call prtstr ; ... to look nice
push bc ; preserve loop control
ld b,$1b ; hbios func: diodevinf
rst 08 ; call hbios, return device/unit in C
ld a,c ; device/unit to A
push af ; save it
ld c,a ; device to A
call prtdev ; print device mnemonic
pop af ; get device/unit back
and $0f ; isolate unit num
call prtdecb ; append unit num
ld a,':' ; colon for device/unit format
call prtchr ; print it
pop bc ; restore loop control
@@ -426,7 +423,7 @@ dph_init2:
push bc ; save DPH location
push bc ; move DPH location
pop de ; ... to DE
ld a,(hl) ; device/unit to A
ld a,(hl) ; unit to A
call makdph ; make the DPH
pop de ; restore DPH pointer to DE
pop hl ; restore drive map pointer to HL
@@ -644,11 +641,11 @@ valid2: ; setup for inner loop
;
valid3: ; inner loop
; bypass unassigned drives (only need to test 1)
ld a,(hl) ; get first drive device/unit in A
ld a,(hl) ; get first drive unit in A
cp $ff ; unassigned?
jr z,valid4 ; yes, skip
;
; compare device/unit/slice values
; compare unit/slice values
ld a,(de) ; first byte to A
cp (hl) ; compare
jr nz,valid4 ; if not equal, continue loop
@@ -768,7 +765,7 @@ drvswap:
xor a ; signal success
ret ; exit
;
; Assign drive to specified device/unit/slice
; Assign drive to specified unit/slice
;
drvmap:
; check for UNA mode
@@ -801,32 +798,46 @@ drvmap1: ; loop through device table looking for a match
djnz drvmap1 ; and loop
jp errdev
;
drvmap2: ; verify the unit is eligible for assignment (hard disk unit only!)
ld a,c ; get the specified device number
; call chktyp ; check it
; jp nz,errtyp ; abort with bad unit error
;
; construct the requested dph table entry
ld a,c ; C has device num
drvmap2:
; convert index to device type id
ld a,c ; index to accum
rlca ; move it to upper nibble
rlca ; ...
rlca ; ...
rlca ; ...
ld c,a ; stash it back in C
ld a,(unit) ; get the unit number
or c ; combine device and unit
ld c,a ; and save in C
ld a,(slice) ; get the slice
ld b,a ; and save in B
ld (device),a ; save as device id
;
; check for valid device/unit (supported by BIOS)
push bc ; save device/unit/slice
ld a,c ; device/unit to A
call chkdev ; device/unit OK?
pop bc ; restore device/unit/slice
; jp nz,errdev ; invalid device specified
ret nz
; loop thru hbios units looking for device type/unit match
ld b,$f7 ; hbios func: sysget
ld c,$10 ; sysget subfunc: diocnt
rst 08 ; call hbios, E := device count
ld b,e ; use device count for loop count
ld c,0 ; use C for device index
drvmap3:
push bc ; preserve loop control
ld b,$17 ; hbios func: diodevice
rst 08 ; call hbios, D := device, E := unit
pop bc ; restore loop control
ld a,(device)
cp d
jr nz,drvmap4
ld a,(unit)
cp e
jr z,drvmap5 ; match, continue, C = BIOS unit
drvmap4:
; continue looping
inc c
djnz drvmap3
jp errdev ; invalid device specified
;
drvmap5:
; check for valid unit (supported by BIOS)
push bc ; save unit
ld a,c ; unit to A
call chkdev ; check validity
pop bc ; restore unit
ret nz ; bail out on error
; resolve the CBIOS DPH table entry
ld a,(dstdrv) ; dest drv num to A
call chkdrv ; valid drive?
@@ -837,10 +848,11 @@ drvmap2: ; verify the unit is eligible for assignment (hard disk unit only!)
call addhl ; adjust HL to point to entry
ld (dstptr),hl ; save it
;
; shove updated device/unit/slice into the entry
ld (hl),c ; save device/unit byte
; shove updated unit/slice into the entry
ld (hl),c ; save unit byte
inc hl ; bump to next byte
ld (hl),b ; save slice
ld a,(slice)
ld (hl),a ; save slice
;
; finish up
ld a,(dstdrv) ; get the destination drive
@@ -911,14 +923,7 @@ drvmapu1:
call addhl ; adjust HL to point to entry
ld (dstptr),hl ; save it
;
; ; verify the drive letter being assigned is a hard disk
; ld a,(hl) ; get the device/unit byte
; push hl ; save pointer
; call chktypu ; check it
; pop hl ; recover pointer
; jp nz,errtyp ; abort with bad device type error
;
; shove updated device/unit/slice into the entry
; shove updated unit/slice into the entry
ld a,(unit) ; get specified unit
ld (hl),a ; save it
inc hl ; next byte is slice
@@ -945,7 +950,9 @@ showall:
;
showall1: ; loop
ld a,c ;
push bc ; save loop control
call showass
pop bc ; restore loop control
inc c
djnz showall1
or $ff
@@ -962,7 +969,7 @@ showass:
rlca
rlca
call addhl ; HL = address of drive map table entry
ld a,(hl) ; get device/unit value
ld a,(hl) ; get unit value
cp $ff ; compare to unassigned value
ld a,c ; recover original drive num
ret z ; bail out if unassigned drive
@@ -997,16 +1004,13 @@ showone:
call prtchr ; print it
;
; render the map entry
ld a,(hl) ; load device/unit
ld a,(hl) ; load unit
cp $FF ; empty?
ret z ; yes, bypass
call prtdev ; print device mnemonic
ld a,(hl) ; load device/unit again
and $0f ; isolate unit num
call prtdecb ; print it
inc hl ; point to slice num
ld a,':' ; colon to separate slice
ld a,':' ; colon for device/unit format
call prtchr ; print it
inc hl ; point to slice num
ld a,(hl) ; load slice num
call prtdecb ; print it
;
@@ -1033,6 +1037,11 @@ prtdev:
or a ; set flags
ld a,e ; put device num back
jr nz,prtdevu ; print device in UNA mode
ld b,$17 ; hbios func: diodevice
ld c,a ; unit to C
rst 08 ; call hbios, D := device, E := unit
push de ; save results
ld a,d ; device to A
rrca ; isolate high nibble (device)
rrca ; ...
rrca ; ...
@@ -1048,54 +1057,63 @@ prtdev:
ld e,a ; ...
call prtstr ; print the device nmemonic
pop hl ; restore HL
pop de ; get device/unit data back
ld a,e ; device id to a
call prtdecb ; print it
ret ; done
;
prtdevu:
ld e,a ; save unit num in E
push bc
push de
push hl
;
; UNA mode version of print device
ld b,a ; B := unit num
push bc ; save for later
ld c,$48 ; UNA func: get disk type
rst 08 ; call UNA
ld a,d ; disk type to A
pop hl
pop de
pop bc
pop bc ; get unit num back in C
;
; pick string based on disk type
cp $40 ; RAM/ROM?
jr z,prtdevu1 ; if so, handle it
cp $41 ; IDE?
ld de,udevide ; load string
jp z,prtstr ; if IDE, print and return
jr z,prtdevu2 ; if IDE, print and return
cp $42 ; PPIDE?
ld de,udevppide ; load string
jp z,prtstr ; if PPIDE, print and return
jr z,prtdevu2 ; if PPIDE, print and return
cp $43 ; SD?
ld de,udevsd ; load string
jp z,prtstr ; if SD, print and return
jr z,prtdevu2 ; if SD, print and return
cp $44 ; DSD?
ld de,udevdsd ; load string
jp z,prtstr ; if DSD, print and return
jr z,prtdevu2 ; if DSD, print and return
ld de,udevunk ; load string for unknown
jp prtstr ; and print it
jr prtdevu2 ; and print it
;
prtdevu1:
; handle RAM/ROM
push bc
push hl
ld b,e ; unit num to B
push bc ; save unit num
ld c,$45 ; UNA func: get disk info
ld de,$9000 ; 512 byte buffer *** FIX!!! ***
rst 08 ; call UNA
bit 7,b ; test RAM drive bit
pop hl
pop bc
pop bc ; restore unit num
ld de,udevrom ; load string
jp z,prtstr ; print and return
jr z,prtdevu2 ; print and return
ld de,udevram ; load string
jp prtstr ; print and return
jr prtdevu2 ; print and return
;
prtdevu2:
call prtstr ; print the device nmemonic
ld a,b ; get the unit num back
call prtdecb ; append it
pop hl
pop de
pop bc
ret
;
; Check that specified drive num is valid
;
@@ -1105,36 +1123,32 @@ chkdrv:
cp a ; set Z to signal good
ret ; and return
;
; Check that the device/unit value in A is valid
; Check that the unit value in A is valid
; according to active BIOS support.
;
;
chkdev: ; HBIOS variant
push af ; save incoming device/unit
ld b,$1a ; hbios func: diodevcnt
rst 08 ; call hbios, device count to B
ld c,0 ; use C for device index
pop af ; restore incoming device/unit
chkdev1:
push bc ; preserve loop control
push af ; save incoming device/unit
ld b,$1b ; hbios func: diodevinf
rst 08 ; call hbios, return device/unit in C
pop af ; restore incoming device/unit
cp c ; match to device/unit from BIOS list?
pop bc ; restore loop control
jr z,chkdev2 ; yes, match
inc c ; next device list entry
djnz chkdev1 ; loop as needed
jp errdev ; no match, handle error
push af ; save incoming unit
ld b,$f7 ; hbios func: sysget
ld c,$10 ; sysget subfunc: diocnt
rst 08 ; call hbios, E := device count
pop af ; restore incoming unit
cp e ; compare to unit count
jp nc,errdev ; if too high, error
;
chkdev2: ; check slice support
; get device/unit info
ld b,$17 ; hbios func: diodevice
ld c,a ; unit to C
rst 08 ; call hbios, D := device, E := unit
ld a,d ; device to A
;
; check slice support
cp $30 ; A has device/unit, in hard disk range?
jr c,chkdev3 ; if not hard disk, check slice val
jr c,chkdev1 ; if not hard disk, check slice val
xor a ; otherwise, signal OK
ret
;
chkdev3: ; not a hard disk, make sure slice == 0
chkdev1: ; not a hard disk, make sure slice == 0
ld a,(slice) ; get specified slice
or a ; set flags
jp nz,errslc ; invalid slice error
@@ -1615,10 +1629,10 @@ stack .equ $ ; stack top
; Messages
;
indent .db " ",0
msgban1 .db "ASSIGN v1.0a for RomWBW CP/M 2.2, 25-Oct-2014",0
msgban1 .db "ASSIGN v1.0b for RomWBW CP/M 2.2, 20-Mar-2016",0
msghb .db " (HBIOS Mode)",0
msgub .db " (UBIOS Mode)",0
msgban2 .db "Copyright 2014, Wayne Warthen, GNU GPL v3",0
msgban2 .db "Copyright 2016, Wayne Warthen, GNU GPL v3",0
msguse .db "Usage: ASSIGN D:[=[{D:|<device>[<unitnum>]:[<slicenum>]}]][,...]",13,10
.db " ex. ASSIGN (display all active assignments)",13,10
.db " ASSIGN /? (display version and usage)",13,10

View File

@@ -59,7 +59,7 @@ MEMTOP .EQU $10000
#ENDIF
;
#IFDEF PLTUNA
#INCLUDE "../HBIOS/ubios.inc"
#INCLUDE "../UBIOS/ubios.inc"
#ENDIF
;
.ORG CBIOS_LOC ; DEFINED IN STD.ASM
@@ -1790,19 +1790,14 @@ INIT:
LD HL,($FFFE) ; UNA ENTRY VECTOR
LD (9),HL ; STORE AT 0x0009
#ELSE
; ASK HBIOS FOR CRITICAL BANK ID'S (BIOS AND USER BANKS)
; SAVE THESE VALUES FOR LATER USE
LD B,BF_SYSHCBGETB ; HB FUNC: GET HCB BYTE
LD C,HCB_BIDBIOS ; BIOS BANK ID
CALL $FFF0 ; RST 8 IS NOT YET INSTALLED
LD A,E ; PUT IN A
LD (BNKBIOS),A ; SAVE IT
LD B,BF_SYSHCBGETB ; HB FUNC: GET HCB BYTE
LD C,HCB_BIDUSR ; USER BANK ID
CALL $FFF0 ; RST 8 IS NOT YET INSTALLED
LD A,E ; PUT IN A
LD (BNKUSER),A ; SAVE IT
LD B,BF_SYSGET ; HBIOS FUNC=GET SYS INFO
LD C,BF_SYSGET_BNKINFO ; HBIOS SUBFUNC=GET BANK ASSIGNMENTS
CALL $FFF0 ; CALL HBIOS, RST 08 NOT YET INSTALLED
LD A,D ; GET HBIOS BANK RETURNED IN D
LD (BNKBIOS),A ; ... AND SAVE IT
LD A,E ; GET USER BANK RETURNED IN E
LD (BNKUSER),A ; ... AND SAVE IT
; MAKE SURE USER BANK IS ACTIVE
LD B,BF_SYSSETBNK ; HB FUNC: SET BANK
LD A,(BNKUSER) ; SELECT USER BANK
@@ -1831,11 +1826,6 @@ INIT:
LD (BNKRAMD),A
#ENDIF
; CBIOS BANNER
CALL NEWLINE ; FORMATTING
LD DE,STR_BANNER ; POINT TO BANNER
CALL WRITESTR ; DISPLAY IT
; PARAMETER INITIALIZATION
XOR A ; LOAD DEFAULT IOBYTE
LD (IOBYTE),A ; STORE IT
@@ -1844,6 +1834,11 @@ INIT:
XOR A ; ZERO
LD (DEFDRIVE),A ; STORE IT
; CBIOS BANNER
CALL NEWLINE ; FORMATTING
LD DE,STR_BANNER ; POINT TO BANNER
CALL WRITESTR ; DISPLAY IT
#IFDEF PLTUNA
; SAVE COMMAND PROCESSOR IMAGE TO MALLOCED CACHE IN UNA BIOS PAGE
LD C,$F7 ; UNA MALLOC

View File

@@ -243,20 +243,22 @@ CP/M 2.2 Copyright 1979 (c) by Digital Research
<VDA>_INI:
- CALL <VDA>_RES
- INITIALIZE EMULATION BY CALLING EMU_INIT (PASS IN C=EMU_TYPE & DE=VDA_DISPATCH ADDRESS)
- EMU_INIT RETURNS ADDRESS OF CIO DISPATCHER ADDRESS FOR SUBSEQUENT FORWARDING
- RECORD EMULATORS CIO DISPATCHER ADDRESS IN <VDA>_CIODISPATCH
- INITIALIZE EMULATION BY CALLING EMU_INIT (PASS IN B=EMU_TYPE, C=VDA CIO UNIT NUM, DE=VDA DISPATCH ADR)
- RECORD DE (EMULATOR CIO DISPATCH ADR) <VDA>_CIODISPADR TO FORWARD SUBSEQUENT CIO FUNCTION CALLS
- RETURN (A=STATUS)
<VDA>_RES:
- RESET HARDWARE
- RETURN (A=STATUS)
EMU_INIT:
- CALL <EMU>_INIT BASED ON VALUE IN C
EMU_INIT: (B=EMU TYPE, C=VDA CIO UNIT #, DE=VDA DISPATCH ADR) ==> (DE=EMULATOR CIO DISPATCH ADR)
- GOTO TO <EMU>_INIT BASED ON VALUE IN B
<EMU>_INIT:
- RECORD DE IN VDA_DISPADR
<EMU>_INIT: (C=VDA CIO UNIT #, DE=VDA DISPATCH ADR) ==> (DE=EMULATOR CIO DISPATCH ADR)
- RECORD C (VDA CIO UNIT) IN <EMU>_VDACIOUNIT SO <EMU>_DEVICE FUNCTION CAN RETURN IT
- RECORD DE IN <EMU>_VDADISPADR FOR LATER USE IN CALLING PARENT VDA DRIVER
- INITIALIZE/RESET EMULATION ENGINE
- RETURN EMULATOR CIO DISPATCH ADDRESS IN DE
- RETURN (A=STATUS, DE=EMULATOR CIO DISPATCH)

View File

@@ -9,10 +9,7 @@ CPUOSC .EQU 18432000 ; CPU OSC FREQ
RAMSIZE .EQU 512 ; SIZE OF RAM IN KB, MUST MATCH YOUR HARDWARE!!!
CONBAUD .EQU 38400 ; DEFAULT BAUDRATE USED BELOW
;
SERDEV .EQU CIODEV_ASCI ; PRIMARY SERIAL DEVICE FOR BOOT/DEBUG/MONITOR (TYPICALLY CIODEV_UART OR CIODEV_ASCI)
CRTDEV .EQU CIODEV_VDA ; CRT DEVICE (CIODEV_PRPCON, CIODEV_PPPCON, CIODEV_VDA), USE CIODEV_NUL IF NO CRT
CRTACT .EQU FALSE ; CRT ACTIVATION AT STARTUP
VDADEV .EQU VDADEV_CVDU ; CRT VDA DEVICE (VDADEV_NONE, VDADEV_VDU, VDADEV_CVDU, VDADEV_N8V, VDADEV_UPD7220)
VDAEMU .EQU EMUTYP_ANSI ; DEFAULT VDA EMULATION (EMUTYP_TTY, EMUTYP_ANSI, ...)
;
DSKYENABLE .EQU FALSE ; TRUE FOR DSKY SUPPORT (DO NOT COMBINE WITH PPIDE)
@@ -31,7 +28,7 @@ ASCI1BAUD .EQU CONBAUD ; ASCI1 BAUDRATE (IMPLEMENTED BY Z180_ASCIB1)
VDUENABLE .EQU FALSE ; TRUE FOR VDU BOARD SUPPORT
CVDUENABLE .EQU TRUE ; TRUE FOR CVDU BOARD SUPPORT
UPD7220ENABLE .EQU FALSE ; TRUE FOR uPD7220 BOARD SUPPORT
N8VENABLE .EQU FALSE ; TRUE FOR N8 (TMS9918) VIDEO/KBD SUPPORT
SCGENABLE .EQU FALSE ; TRUE FOR N8 (TMS9918) VIDEO/KBD SUPPORT
;
MDENABLE .EQU TRUE ; TRUE FOR ROM/RAM DISK SUPPORT (ALMOST ALWAYS WANT THIS ENABLED)
MDTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF MDENABLE = TRUE)
@@ -67,9 +64,9 @@ SDTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF IDEENABLE
SDCAPACITY .EQU 64 ; CAPACITY OF DEVICE (IN MB)
SDCSIOFAST .EQU TRUE ; TABLE-DRIVEN BIT INVERTER
;
PRPENABLE .EQU FALSE ; TRUE FOR PROPIO SD SUPPORT (FOR N8VEM PROPIO ONLY!)
PRPENABLE .EQU FALSE ; TRUE FOR PROPIO SUPPORT
PRPIOB .EQU $A8 ; PORT IO ADDRESS BASE
PRPSDENABLE .EQU TRUE ; TRUE FOR PROPIO SD SUPPORT (FOR N8VEM PROPIO ONLY!)
PRPSDENABLE .EQU TRUE ; TRUE FOR PROPIO SD SUPPORT
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)

View File

@@ -9,10 +9,7 @@ CPUOSC .EQU 18432000 ; CPU OSC FREQ
RAMSIZE .EQU 512 ; SIZE OF RAM IN KB, MUST MATCH YOUR HARDWARE!!!
CONBAUD .EQU 38400 ; DEFAULT BAUDRATE USED BELOW
;
SERDEV .EQU CIODEV_ASCI ; PRIMARY SERIAL DEVICE FOR BOOT/DEBUG/MONITOR (TYPICALLY CIODEV_UART OR CIODEV_ASCI)
CRTDEV .EQU CIODEV_NUL ; CRT DEVICE (CIODEV_PRPCON, CIODEV_PPPCON, CIODEV_VDA), USE CIODEV_NUL IF NO CRT
CRTACT .EQU FALSE ; CRT ACTIVATION AT STARTUP
VDADEV .EQU VDADEV_NONE ; CRT VDA DEVICE (VDADEV_NONE, VDADEV_VDU, VDADEV_CVDU, VDADEV_N8V, VDADEV_UPD7220)
VDAEMU .EQU EMUTYP_TTY ; DEFAULT VDA EMULATION (EMUTYP_TTY, EMUTYP_ANSI, ...)
;
DSKYENABLE .EQU FALSE ; TRUE FOR DSKY SUPPORT (DO NOT COMBINE WITH PPIDE)
@@ -31,7 +28,7 @@ ASCI1BAUD .EQU CONBAUD ; ASCI1 BAUDRATE (IMPLEMENTED BY Z180_ASCIB1)
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
SCGENABLE .EQU FALSE ; TRUE FOR N8 (TMS9918) VIDEO/KBD SUPPORT
;
MDENABLE .EQU TRUE ; TRUE FOR ROM/RAM DISK SUPPORT (ALMOST ALWAYS WANT THIS ENABLED)
MDTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF MDENABLE = TRUE)
@@ -67,9 +64,9 @@ SDTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF IDEENABLE
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!)
PRPENABLE .EQU FALSE ; TRUE FOR PROPIO SUPPORT
PRPIOB .EQU $A8 ; PORT IO ADDRESS BASE
PRPSDENABLE .EQU TRUE ; TRUE FOR PROPIO SD SUPPORT (FOR N8VEM PROPIO ONLY!)
PRPSDENABLE .EQU TRUE ; TRUE FOR PROPIO SD SUPPORT
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)

View File

@@ -9,10 +9,7 @@ CPUOSC .EQU 18432000 ; CPU OSC FREQ
RAMSIZE .EQU 512 ; SIZE OF RAM IN KB, MUST MATCH YOUR HARDWARE!!!
CONBAUD .EQU 38400 ; DEFAULT BAUDRATE USED BELOW
;
SERDEV .EQU CIODEV_ASCI ; PRIMARY SERIAL DEVICE FOR BOOT/DEBUG/MONITOR (TYPICALLY CIODEV_UART OR CIODEV_ASCI)
CRTDEV .EQU CIODEV_VDA ; CRT DEVICE (CIODEV_PRPCON, CIODEV_PPPCON, CIODEV_VDA), USE CIODEV_NUL IF NO CRT
CRTACT .EQU FALSE ; CRT ACTIVATION AT STARTUP
VDADEV .EQU VDADEV_CVDU ; CRT VDA DEVICE (VDADEV_NONE, VDADEV_VDU, VDADEV_CVDU, VDADEV_N8V, VDADEV_UPD7220)
VDAEMU .EQU EMUTYP_ANSI ; DEFAULT VDA EMULATION (EMUTYP_TTY, EMUTYP_ANSI, ...)
;
DSKYENABLE .EQU FALSE ; TRUE FOR DSKY SUPPORT (DO NOT COMBINE WITH PPIDE)
@@ -31,7 +28,7 @@ ASCI1BAUD .EQU CONBAUD ; ASCI1 BAUDRATE (IMPLEMENTED BY Z180_ASCIB1)
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
SCGENABLE .EQU FALSE ; TRUE FOR N8 (TMS9918) VIDEO/KBD SUPPORT
;
MDENABLE .EQU TRUE ; TRUE FOR ROM/RAM DISK SUPPORT (ALMOST ALWAYS WANT THIS ENABLED)
MDTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF MDENABLE = TRUE)
@@ -64,9 +61,9 @@ SDMODE .EQU SDMODE_DSD ; SDMODE_JUHA, SDMODE_CSIO, SDMODE_UART, SDMODE_PPI, SDM
SDTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF IDEENABLE = TRUE)
SDCSIOFAST .EQU TRUE ; TABLE-DRIVEN BIT INVERTER
;
PRPENABLE .EQU FALSE ; TRUE FOR PROPIO SD SUPPORT (FOR N8VEM PROPIO ONLY!)
PRPENABLE .EQU FALSE ; TRUE FOR PROPIO SUPPORT
PRPIOB .EQU $A8 ; PORT IO ADDRESS BASE
PRPSDENABLE .EQU TRUE ; TRUE FOR PROPIO SD SUPPORT (FOR N8VEM PROPIO ONLY!)
PRPSDENABLE .EQU TRUE ; TRUE FOR PROPIO SD SUPPORT
PRPSDTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF PRPSDENABLE = TRUE)
PRPCONENABLE .EQU TRUE ; TRUE FOR PROPIO CONSOLE SUPPORT (PS/2 KBD & VGA VIDEO)
;

View File

@@ -9,10 +9,7 @@ CPUOSC .EQU 18432000 ; CPU OSC FREQ
RAMSIZE .EQU 512 ; SIZE OF RAM IN KB, MUST MATCH YOUR HARDWARE!!!
CONBAUD .EQU 38400 ; DEFAULT BAUDRATE USED BELOW
;
SERDEV .EQU CIODEV_ASCI ; PRIMARY SERIAL DEVICE FOR BOOT/DEBUG/MONITOR (TYPICALLY CIODEV_UART OR CIODEV_ASCI)
CRTDEV .EQU CIODEV_PRPCON ; CRT DEVICE (CIODEV_PRPCON, CIODEV_PPPCON, CIODEV_VDA), USE CIODEV_NUL IF NO CRT
CRTACT .EQU FALSE ; CRT ACTIVATION AT STARTUP
VDADEV .EQU VDADEV_NONE ; CRT VDA DEVICE (VDADEV_NONE, VDADEV_VDU, VDADEV_CVDU, VDADEV_N8V, VDADEV_UPD7220)
VDAEMU .EQU EMUTYP_TTY ; DEFAULT VDA EMULATION (EMUTYP_TTY, EMUTYP_ANSI, ...)
;
DSKYENABLE .EQU FALSE ; TRUE FOR DSKY SUPPORT (DO NOT COMBINE WITH PPIDE)
@@ -31,7 +28,7 @@ ASCI1BAUD .EQU CONBAUD ; ASCI1 BAUDRATE (IMPLEMENTED BY Z180_ASCIB1)
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
SCGENABLE .EQU FALSE ; TRUE FOR N8 (TMS9918) VIDEO/KBD SUPPORT
;
MDENABLE .EQU TRUE ; TRUE FOR ROM/RAM DISK SUPPORT (ALMOST ALWAYS WANT THIS ENABLED)
MDTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF MDENABLE = TRUE)
@@ -67,9 +64,9 @@ SDTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF IDEENABLE
SDCAPACITY .EQU 64 ; CAPACITY OF DEVICE (IN MB)
SDCSIOFAST .EQU FALSE ; TABLE-DRIVEN BIT INVERTER
;
PRPENABLE .EQU TRUE ; TRUE FOR PROPIO SD SUPPORT (FOR N8VEM PROPIO ONLY!)
PRPENABLE .EQU TRUE ; TRUE FOR PROPIO SD SUPPORT
PRPIOB .EQU $A8 ; PORT IO ADDRESS BASE
PRPSDENABLE .EQU TRUE ; TRUE FOR PROPIO SD SUPPORT (FOR N8VEM PROPIO ONLY!)
PRPSDENABLE .EQU TRUE ; TRUE FOR PROPIO SD SUPPORT
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)

View File

@@ -9,10 +9,7 @@ CPUOSC .EQU 18432000 ; CPU OSC FREQ
RAMSIZE .EQU 512 ; SIZE OF RAM IN KB, MUST MATCH YOUR HARDWARE!!!
CONBAUD .EQU 38400 ; DEFAULT BAUDRATE USED BELOW
;
SERDEV .EQU CIODEV_ASCI ; PRIMARY SERIAL DEVICE FOR BOOT/DEBUG/MONITOR (TYPICALLY CIODEV_UART OR CIODEV_ASCI)
CRTDEV .EQU CIODEV_VDA ; CRT DEVICE (CIODEV_PRPCON, CIODEV_PPPCON, CIODEV_VDA), USE CIODEV_NUL IF NO CRT
CRTACT .EQU FALSE ; CRT ACTIVATION AT STARTUP
VDADEV .EQU VDADEV_CVDU ; CRT VDA DEVICE (VDADEV_NONE, VDADEV_VDU, VDADEV_CVDU, VDADEV_N8V, VDADEV_UPD7220)
VDAEMU .EQU EMUTYP_ANSI ; DEFAULT VDA EMULATION (EMUTYP_TTY, EMUTYP_ANSI, ...)
;
DSKYENABLE .EQU FALSE ; TRUE FOR DSKY SUPPORT (DO NOT COMBINE WITH PPIDE)
@@ -31,7 +28,7 @@ ASCI1BAUD .EQU CONBAUD ; ASCI1 BAUDRATE (IMPLEMENTED BY Z180_ASCIB1)
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
SCGENABLE .EQU FALSE ; TRUE FOR N8 (TMS9918) VIDEO/KBD SUPPORT
;
MDENABLE .EQU TRUE ; TRUE FOR ROM/RAM DISK SUPPORT (ALMOST ALWAYS WANT THIS ENABLED)
MDTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF MDENABLE = TRUE)
@@ -64,9 +61,9 @@ SDMODE .EQU SDMODE_MK4 ; SDMODE_JUHA, SDMODE_CSIO, SDMODE_UART, SDMODE_PPI, SDM
SDTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF IDEENABLE = TRUE)
SDCSIOFAST .EQU TRUE ; TABLE-DRIVEN BIT INVERTER
;
PRPENABLE .EQU FALSE ; TRUE FOR PROPIO SD SUPPORT (FOR N8VEM PROPIO ONLY!)
PRPENABLE .EQU FALSE ; TRUE FOR PROPIO SUPPORT
PRPIOB .EQU $A8 ; PORT IO ADDRESS BASE
PRPSDENABLE .EQU TRUE ; TRUE FOR PROPIO SD SUPPORT (FOR N8VEM PROPIO ONLY!)
PRPSDENABLE .EQU TRUE ; TRUE FOR PROPIO SD SUPPORT
PRPSDTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF PRPSDENABLE = TRUE)
PRPCONENABLE .EQU TRUE ; TRUE FOR PROPIO CONSOLE SUPPORT (PS/2 KBD & VGA VIDEO)
;

View File

@@ -9,10 +9,7 @@ CPUOSC .EQU 18432000 ; CPU OSC FREQ
RAMSIZE .EQU 512 ; SIZE OF RAM IN KB, MUST MATCH YOUR HARDWARE!!!
CONBAUD .EQU 38400 ; DEFAULT BAUDRATE USED BELOW
;
SERDEV .EQU CIODEV_ASCI ; PRIMARY SERIAL DEVICE FOR BOOT/DEBUG/MONITOR (TYPICALLY CIODEV_UART OR CIODEV_ASCI)
CRTDEV .EQU CIODEV_VDA ; CRT DEVICE (CIODEV_PRPCON, CIODEV_PPPCON, CIODEV_VDA), USE CIODEV_NUL IF NO CRT
CRTACT .EQU FALSE ; CRT ACTIVATION AT STARTUP
VDADEV .EQU VDADEV_N8V ; CRT VDA DEVICE (VDADEV_NONE, VDADEV_VDU, VDADEV_CVDU, VDADEV_N8V, VDADEV_UPD7220)
VDAEMU .EQU EMUTYP_ANSI ; DEFAULT VDA EMULATION (EMUTYP_TTY, EMUTYP_ANSI, ...)
;
DSKYENABLE .EQU FALSE ; TRUE FOR DSKY SUPPORT (DO NOT COMBINE WITH PPIDE)
@@ -31,7 +28,7 @@ ASCI1BAUD .EQU CONBAUD ; ASCI1 BAUDRATE (IMPLEMENTED BY Z180_ASCIB1)
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 TRUE ; TRUE FOR N8 (TMS9918) VIDEO/KBD SUPPORT
SCGENABLE .EQU TRUE ; TRUE FOR N8 (TMS9918) VIDEO/KBD SUPPORT
;
MDENABLE .EQU TRUE ; TRUE FOR ROM/RAM DISK SUPPORT (ALMOST ALWAYS WANT THIS ENABLED)
MDTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF MDENABLE = TRUE)
@@ -67,9 +64,9 @@ SDTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF IDEENABLE
SDCAPACITY .EQU 64 ; CAPACITY OF DEVICE (IN MB)
SDCSIOFAST .EQU TRUE ; TABLE-DRIVEN BIT INVERTER
;
PRPENABLE .EQU FALSE ; TRUE FOR PROPIO SD SUPPORT (FOR N8VEM PROPIO ONLY!)
PRPENABLE .EQU FALSE ; TRUE FOR PROPIO SUPPORT
PRPIOB .EQU $A8 ; PORT IO ADDRESS BASE
PRPSDENABLE .EQU TRUE ; TRUE FOR PROPIO SD SUPPORT (FOR N8VEM PROPIO ONLY!)
PRPSDENABLE .EQU TRUE ; TRUE FOR PROPIO SD SUPPORT
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)

View File

@@ -9,10 +9,7 @@ CPUOSC .EQU 18432000 ; CPU OSC FREQ
RAMSIZE .EQU 512 ; SIZE OF RAM IN KB, MUST MATCH YOUR HARDWARE!!!
CONBAUD .EQU 38400 ; DEFAULT BAUDRATE USED BELOW
;
SERDEV .EQU CIODEV_ASCI ; PRIMARY SERIAL DEVICE FOR BOOT/DEBUG/MONITOR (TYPICALLY CIODEV_UART OR CIODEV_ASCI)
CRTDEV .EQU CIODEV_VDA ; CRT DEVICE (CIODEV_PRPCON, CIODEV_PPPCON, CIODEV_VDA), USE CIODEV_NUL IF NO CRT
CRTACT .EQU FALSE ; CRT ACTIVATION AT STARTUP
VDADEV .EQU VDADEV_N8V ; CRT VDA DEVICE (VDADEV_NONE, VDADEV_VDU, VDADEV_CVDU, VDADEV_N8V, VDADEV_UPD7220)
VDAEMU .EQU EMUTYP_ANSI ; DEFAULT VDA EMULATION (EMUTYP_TTY, EMUTYP_ANSI, ...)
;
DSKYENABLE .EQU FALSE ; TRUE FOR DSKY SUPPORT (DO NOT COMBINE WITH PPIDE)
@@ -31,7 +28,7 @@ ASCI1BAUD .EQU CONBAUD ; ASCI1 BAUDRATE (IMPLEMENTED BY Z180_ASCIB1)
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 TRUE ; TRUE FOR N8 (TMS9918) VIDEO/KBD SUPPORT
SCGENABLE .EQU TRUE ; TRUE FOR N8 (TMS9918) VIDEO/KBD SUPPORT
;
MDENABLE .EQU TRUE ; TRUE FOR ROM/RAM DISK SUPPORT (ALMOST ALWAYS WANT THIS ENABLED)
MDTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF MDENABLE = TRUE)
@@ -67,9 +64,9 @@ SDTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF IDEENABLE
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!)
PRPENABLE .EQU FALSE ; TRUE FOR PROPIO SUPPORT
PRPIOB .EQU $A8 ; PORT IO ADDRESS BASE
PRPSDENABLE .EQU TRUE ; TRUE FOR PROPIO SD SUPPORT (FOR N8VEM PROPIO ONLY!)
PRPSDENABLE .EQU TRUE ; TRUE FOR PROPIO SD SUPPORT
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)

View File

@@ -1,6 +1,6 @@
;
;==================================================================================================
; ROMWBW 2.X CONFIGURATION FOR N8VEM SBC W/ CASSETTE INTERFACE
; ROMWBW 2.X CONFIGURATION FOR SBC W/ CASSETTE INTERFACE
;==================================================================================================
;
; BUILD CONFIGURATION OPTIONS
@@ -9,10 +9,7 @@ CPUOSC .EQU 8000000 ; CPU OSC FREQ
RAMSIZE .EQU 512 ; SIZE OF RAM IN KB, MUST MATCH YOUR HARDWARE!!!
CONBAUD .EQU 38400 ; DEFAULT BAUDRATE USED BELOW
;
SERDEV .EQU CIODEV_UART ; PRIMARY SERIAL DEVICE FOR BOOT/DEBUG/MONITOR (TYPICALLY CIODEV_UART OR CIODEV_ASCI)
CRTDEV .EQU CIODEV_NUL ; CRT DEVICE (CIODEV_PRPCON, CIODEV_PPPCON, CIODEV_VDA), USE CIODEV_NUL IF NO CRT
CRTACT .EQU FALSE ; CRT ACTIVATION AT STARTUP
VDADEV .EQU VDADEV_NONE ; CRT VDA DEVICE (VDADEV_NONE, VDADEV_VDU, VDADEV_CVDU, VDADEV_N8V, VDADEV_UPD7220)
VDAEMU .EQU EMUTYP_TTY ; DEFAULT VDA EMULATION (EMUTYP_TTY, EMUTYP_ANSI, ...)
;
DSKYENABLE .EQU FALSE ; TRUE FOR DSKY SUPPORT (DO NOT COMBINE WITH PPIDE)
@@ -26,7 +23,7 @@ UARTCNT .EQU 2 ; NUMBER OF UARTS
UART0IOB .EQU $68 ; UART0 IOBASE
UART0OSC .EQU 1843200 ; UART0 OSC FREQUENCY
UART0BAUD .EQU CONBAUD ; UART0 BAUDRATE
UART0FIFO .EQU TRUE ; UART0 TRUE ENABLES UART FIFO (16550 ASSUMED, N8VEM AND ZETA ONLY)
UART0FIFO .EQU TRUE ; UART0 TRUE ENABLES UART FIFO (16550 ASSUMED, SBC AND ZETA ONLY)
UART0AFC .EQU FALSE ; UART0 TRUE ENABLES AUTO FLOW CONTROL (YOUR TERMINAL/UART MUST SUPPORT RTS/CTS FLOW CONTROL!!!)
UART1IOB .EQU $80 ; UART1 IOBASE IS $80 FOR CASSETTE INTERFACE
UART1OSC .EQU 1843200 ; UART1 OSC FREQUENCY
@@ -41,7 +38,7 @@ 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
SCGENABLE .EQU FALSE ; TRUE FOR N8 (TMS9918) VIDEO/KBD SUPPORT
;
MDENABLE .EQU TRUE ; TRUE FOR ROM/RAM DISK SUPPORT (ALMOST ALWAYS WANT THIS ENABLED)
MDTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF MDENABLE = TRUE)
@@ -77,9 +74,9 @@ SDTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF IDEENABLE
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!)
PRPENABLE .EQU FALSE ; TRUE FOR PROPIO SUPPORT
PRPIOB .EQU $A8 ; PORT IO ADDRESS BASE
PRPSDENABLE .EQU TRUE ; TRUE FOR PROPIO SD SUPPORT (FOR N8VEM PROPIO ONLY!)
PRPSDENABLE .EQU TRUE ; TRUE FOR PROPIO SD SUPPORT
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)

View File

@@ -1,6 +1,6 @@
;
;==================================================================================================
; ROMWBW 2.X CONFIGURATION FOR N8VEM SBC W/ COLOR VDU
; ROMWBW 2.X CONFIGURATION FOR SBC W/ COLOR VDU
;==================================================================================================
;
; BUILD CONFIGURATION OPTIONS
@@ -9,10 +9,7 @@ CPUOSC .EQU 8000000 ; CPU OSC FREQ
RAMSIZE .EQU 512 ; SIZE OF RAM IN KB, MUST MATCH YOUR HARDWARE!!!
CONBAUD .EQU 38400 ; DEFAULT BAUDRATE USED BELOW
;
SERDEV .EQU CIODEV_UART ; PRIMARY SERIAL DEVICE FOR BOOT/DEBUG/MONITOR (TYPICALLY CIODEV_UART OR CIODEV_ASCI)
CRTDEV .EQU CIODEV_VDA ; CRT DEVICE (CIODEV_PRPCON, CIODEV_PPPCON, CIODEV_VDA), USE CIODEV_NUL IF NO CRT
CRTACT .EQU FALSE ; CRT ACTIVATION AT STARTUP
VDADEV .EQU VDADEV_CVDU ; CRT VDA DEVICE (VDADEV_NONE, VDADEV_VDU, VDADEV_CVDU, VDADEV_N8V, VDADEV_UPD7220)
VDAEMU .EQU EMUTYP_ANSI ; DEFAULT VDA EMULATION (EMUTYP_TTY, EMUTYP_ANSI, ...)
;
DSKYENABLE .EQU FALSE ; TRUE FOR DSKY SUPPORT (DO NOT COMBINE WITH PPIDE)
@@ -26,7 +23,7 @@ UARTCNT .EQU 1 ; NUMBER OF UARTS
UART0IOB .EQU $68 ; UART0 IOBASE
UART0OSC .EQU 1843200 ; UART0 OSC FREQUENCY
UART0BAUD .EQU CONBAUD ; UART0 BAUDRATE
UART0FIFO .EQU TRUE ; UART0 TRUE ENABLES UART FIFO (16550 ASSUMED, N8VEM AND ZETA ONLY)
UART0FIFO .EQU TRUE ; UART0 TRUE ENABLES UART FIFO (16550 ASSUMED, SBC AND ZETA ONLY)
UART0AFC .EQU TRUE ; UART0 TRUE ENABLES AUTO FLOW CONTROL (YOUR TERMINAL/UART MUST SUPPORT RTS/CTS FLOW CONTROL!!!)
;
ASCIENABLE .EQU FALSE ; TRUE FOR Z180 ASCI SUPPORT
@@ -36,7 +33,7 @@ ASCI1BAUD .EQU CONBAUD ; ASCI1 BAUDRATE (IMPLEMENTED BY Z180_CNTLB1)
VDUENABLE .EQU FALSE ; TRUE FOR VDU BOARD SUPPORT
CVDUENABLE .EQU TRUE ; TRUE FOR CVDU BOARD SUPPORT
UPD7220ENABLE .EQU FALSE ; TRUE FOR uPD7220 BOARD SUPPORT
N8VENABLE .EQU FALSE ; TRUE FOR N8 (TMS9918) VIDEO/KBD SUPPORT
SCGENABLE .EQU FALSE ; TRUE FOR N8 (TMS9918) VIDEO/KBD SUPPORT
;
MDENABLE .EQU TRUE ; TRUE FOR ROM/RAM DISK SUPPORT (ALMOST ALWAYS WANT THIS ENABLED)
MDTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF MDENABLE = TRUE)
@@ -72,9 +69,9 @@ SDTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF IDEENABLE
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!)
PRPENABLE .EQU FALSE ; TRUE FOR PROPIO SUPPORT
PRPIOB .EQU $A8 ; PORT IO ADDRESS BASE
PRPSDENABLE .EQU TRUE ; TRUE FOR PROPIO SD SUPPORT (FOR N8VEM PROPIO ONLY!)
PRPSDENABLE .EQU TRUE ; TRUE FOR PROPIO SD SUPPORT
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)

View File

@@ -1,6 +1,6 @@
;
;==================================================================================================
; ROMWBW 2.X CONFIGURATION FOR N8VEM SBC W/ DUAL IDE + FLOPPY
; ROMWBW 2.X CONFIGURATION FOR SBC W/ DUAL IDE + FLOPPY
;==================================================================================================
;
; BUILD CONFIGURATION OPTIONS
@@ -9,10 +9,7 @@ CPUOSC .EQU 8000000 ; CPU OSC FREQ
RAMSIZE .EQU 512 ; SIZE OF RAM IN KB, MUST MATCH YOUR HARDWARE!!!
CONBAUD .EQU 38400 ; DEFAULT BAUDRATE USED BELOW
;
SERDEV .EQU CIODEV_UART ; PRIMARY SERIAL DEVICE FOR BOOT/DEBUG/MONITOR (TYPICALLY CIODEV_UART OR CIODEV_ASCI)
CRTDEV .EQU CIODEV_NUL ; CRT DEVICE (CIODEV_PRPCON, CIODEV_PPPCON, CIODEV_VDA), USE CIODEV_NUL IF NO CRT
CRTACT .EQU FALSE ; CRT ACTIVATION AT STARTUP
VDADEV .EQU VDADEV_NONE ; CRT VDA DEVICE (VDADEV_NONE, VDADEV_VDU, VDADEV_CVDU, VDADEV_N8V, VDADEV_UPD7220)
VDAEMU .EQU EMUTYP_TTY ; DEFAULT VDA EMULATION (EMUTYP_TTY, EMUTYP_ANSI, ...)
;
DSKYENABLE .EQU FALSE ; TRUE FOR DSKY SUPPORT (DO NOT COMBINE WITH PPIDE)
@@ -26,7 +23,7 @@ UARTCNT .EQU 1 ; NUMBER OF UARTS
UART0IOB .EQU $68 ; UART0 IOBASE
UART0OSC .EQU 1843200 ; UART0 OSC FREQUENCY
UART0BAUD .EQU CONBAUD ; UART0 BAUDRATE
UART0FIFO .EQU TRUE ; UART0 TRUE ENABLES UART FIFO (16550 ASSUMED, N8VEM AND ZETA ONLY)
UART0FIFO .EQU TRUE ; UART0 TRUE ENABLES UART FIFO (16550 ASSUMED, SBC 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
@@ -36,7 +33,7 @@ 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
SCGENABLE .EQU FALSE ; TRUE FOR N8 (TMS9918) VIDEO/KBD SUPPORT
;
MDENABLE .EQU TRUE ; TRUE FOR ROM/RAM DISK SUPPORT (ALMOST ALWAYS WANT THIS ENABLED)
MDTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF MDENABLE = TRUE)
@@ -72,9 +69,9 @@ SDTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF IDEENABLE
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!)
PRPENABLE .EQU FALSE ; TRUE FOR PROPIO SUPPORT
PRPIOB .EQU $A8 ; PORT IO ADDRESS BASE
PRPSDENABLE .EQU TRUE ; TRUE FOR PROPIO SD SUPPORT (FOR N8VEM PROPIO ONLY!)
PRPSDENABLE .EQU TRUE ; TRUE FOR PROPIO SD SUPPORT
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)

View File

@@ -1,6 +1,6 @@
;
;==================================================================================================
; ROMWBW 2.X CONFIGURATION FOR N8VEM W/ DISKIO (ORIGINAL V1)
; ROMWBW 2.X CONFIGURATION FOR SBC W/ DISKIO (ORIGINAL V1)
;==================================================================================================
;
; BUILD CONFIGURATION OPTIONS
@@ -9,10 +9,7 @@ CPUOSC .EQU 8000000 ; CPU OSC FREQ
RAMSIZE .EQU 512 ; SIZE OF RAM IN KB, MUST MATCH YOUR HARDWARE!!!
CONBAUD .EQU 38400 ; DEFAULT BAUDRATE USED BELOW
;
SERDEV .EQU CIODEV_UART ; PRIMARY SERIAL DEVICE FOR BOOT/DEBUG/MONITOR (TYPICALLY CIODEV_UART OR CIODEV_ASCI)
CRTDEV .EQU CIODEV_NUL ; CRT DEVICE (CIODEV_PRPCON, CIODEV_PPPCON, CIODEV_VDA), USE CIODEV_NUL IF NO CRT
CRTACT .EQU FALSE ; CRT ACTIVATION AT STARTUP
VDADEV .EQU VDADEV_NONE ; CRT VDA DEVICE (VDADEV_NONE, VDADEV_VDU, VDADEV_CVDU, VDADEV_N8V, VDADEV_UPD7220)
VDAEMU .EQU EMUTYP_TTY ; DEFAULT VDA EMULATION (EMUTYP_TTY, EMUTYP_ANSI, ...)
;
DSKYENABLE .EQU FALSE ; TRUE FOR DSKY SUPPORT (DO NOT COMBINE WITH PPIDE)
@@ -26,7 +23,7 @@ UARTCNT .EQU 1 ; NUMBER OF UARTS
UART0IOB .EQU $68 ; UART0 IOBASE
UART0OSC .EQU 1843200 ; UART0 OSC FREQUENCY
UART0BAUD .EQU CONBAUD ; UART0 BAUDRATE
UART0FIFO .EQU TRUE ; UART0 TRUE ENABLES UART FIFO (16550 ASSUMED, N8VEM AND ZETA ONLY)
UART0FIFO .EQU TRUE ; UART0 TRUE ENABLES UART FIFO (16550 ASSUMED, SBC 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
@@ -36,7 +33,7 @@ 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
SCGENABLE .EQU FALSE ; TRUE FOR N8 (TMS9918) VIDEO/KBD SUPPORT
;
MDENABLE .EQU TRUE ; TRUE FOR ROM/RAM DISK SUPPORT (ALMOST ALWAYS WANT THIS ENABLED)
MDTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF MDENABLE = TRUE)
@@ -72,9 +69,9 @@ SDTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF IDEENABLE
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!)
PRPENABLE .EQU FALSE ; TRUE FOR PROPIO SUPPORT
PRPIOB .EQU $A8 ; PORT IO ADDRESS BASE
PRPSDENABLE .EQU TRUE ; TRUE FOR PROPIO SD SUPPORT (FOR N8VEM PROPIO ONLY!)
PRPSDENABLE .EQU TRUE ; TRUE FOR PROPIO SD SUPPORT
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)

View File

@@ -1,6 +1,6 @@
;
;==================================================================================================
; ROMWBW 2.X CONFIGURATION FOR N8VEM SBC W/ COLOR VDU
; ROMWBW 2.X CONFIGURATION FOR SBC W/ COLOR VDU
;==================================================================================================
;
; BUILD CONFIGURATION OPTIONS
@@ -9,10 +9,7 @@ CPUOSC .EQU 8000000 ; CPU OSC FREQ
RAMSIZE .EQU 512 ; SIZE OF RAM IN KB, MUST MATCH YOUR HARDWARE!!!
CONBAUD .EQU 38400 ; DEFAULT BAUDRATE USED BELOW
;
SERDEV .EQU CIODEV_UART ; PRIMARY SERIAL DEVICE FOR BOOT/DEBUG/MONITOR (TYPICALLY CIODEV_UART OR CIODEV_ASCI)
CRTDEV .EQU CIODEV_VDA ; CRT DEVICE (CIODEV_PRPCON, CIODEV_PPPCON, CIODEV_VDA), USE CIODEV_NUL IF NO CRT
CRTACT .EQU TRUE ; CRT ACTIVATION AT STARTUP
VDADEV .EQU VDADEV_CVDU ; CRT VDA DEVICE (VDADEV_NONE, VDADEV_VDU, VDADEV_CVDU, VDADEV_N8V, VDADEV_UPD7220)
VDAEMU .EQU EMUTYP_ANSI ; DEFAULT VDA EMULATION (EMUTYP_TTY, EMUTYP_ANSI, ...)
;
DSKYENABLE .EQU FALSE ; TRUE FOR DSKY SUPPORT (DO NOT COMBINE WITH PPIDE)
@@ -26,7 +23,7 @@ UARTCNT .EQU 1 ; NUMBER OF UARTS
UART0IOB .EQU $68 ; UART0 IOBASE
UART0OSC .EQU 1843200 ; UART0 OSC FREQUENCY
UART0BAUD .EQU CONBAUD ; UART0 BAUDRATE
UART0FIFO .EQU TRUE ; UART0 TRUE ENABLES UART FIFO (16550 ASSUMED, N8VEM AND ZETA ONLY)
UART0FIFO .EQU TRUE ; UART0 TRUE ENABLES UART FIFO (16550 ASSUMED, SBC 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
@@ -36,7 +33,7 @@ ASCI1BAUD .EQU CONBAUD ; ASCI1 BAUDRATE (IMPLEMENTED BY Z180_CNTLB1)
VDUENABLE .EQU FALSE ; TRUE FOR VDU BOARD SUPPORT
CVDUENABLE .EQU TRUE ; TRUE FOR CVDU BOARD SUPPORT
UPD7220ENABLE .EQU FALSE ; TRUE FOR uPD7220 BOARD SUPPORT
N8VENABLE .EQU FALSE ; TRUE FOR N8 (TMS9918) VIDEO/KBD SUPPORT
SCGENABLE .EQU FALSE ; TRUE FOR N8 (TMS9918) VIDEO/KBD SUPPORT
;
MDENABLE .EQU TRUE ; TRUE FOR ROM/RAM DISK SUPPORT (ALMOST ALWAYS WANT THIS ENABLED)
MDTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF MDENABLE = TRUE)
@@ -72,9 +69,9 @@ SDTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF IDEENABLE
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!)
PRPENABLE .EQU FALSE ; TRUE FOR PROPIO SUPPORT
PRPIOB .EQU $A8 ; PORT IO ADDRESS BASE
PRPSDENABLE .EQU TRUE ; TRUE FOR PROPIO SD SUPPORT (FOR N8VEM PROPIO ONLY!)
PRPSDENABLE .EQU TRUE ; TRUE FOR PROPIO SD SUPPORT
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)

View File

@@ -1,6 +1,6 @@
;
;==================================================================================================
; ROMWBW 2.X CONFIGURATION FOR N8VEM SBC W/ DISKIO V3
; ROMWBW 2.X CONFIGURATION FOR SBC W/ DISKIO V3
;==================================================================================================
;
; BUILD CONFIGURATION OPTIONS
@@ -9,10 +9,7 @@ CPUOSC .EQU 8000000 ; CPU OSC FREQ
RAMSIZE .EQU 512 ; SIZE OF RAM IN KB, MUST MATCH YOUR HARDWARE!!!
CONBAUD .EQU 38400 ; DEFAULT BAUDRATE USED BELOW
;
SERDEV .EQU CIODEV_UART ; PRIMARY SERIAL DEVICE FOR BOOT/DEBUG/MONITOR (TYPICALLY CIODEV_UART OR CIODEV_ASCI)
CRTDEV .EQU CIODEV_NUL ; CRT DEVICE (CIODEV_PRPCON, CIODEV_PPPCON, CIODEV_VDA), USE CIODEV_NUL IF NO CRT
CRTACT .EQU FALSE ; CRT ACTIVATION AT STARTUP
VDADEV .EQU VDADEV_NONE ; CRT VDA DEVICE (VDADEV_NONE, VDADEV_VDU, VDADEV_CVDU, VDADEV_N8V, VDADEV_UPD7220)
VDAEMU .EQU EMUTYP_TTY ; DEFAULT VDA EMULATION (EMUTYP_TTY, EMUTYP_ANSI, ...)
;
DSKYENABLE .EQU FALSE ; TRUE FOR DSKY SUPPORT (DO NOT COMBINE WITH PPIDE)
@@ -26,7 +23,7 @@ UARTCNT .EQU 1 ; NUMBER OF UARTS
UART0IOB .EQU $68 ; UART0 IOBASE
UART0OSC .EQU 1843200 ; UART0 OSC FREQUENCY
UART0BAUD .EQU CONBAUD ; UART0 BAUDRATE
UART0FIFO .EQU TRUE ; UART0 TRUE ENABLES UART FIFO (16550 ASSUMED, N8VEM AND ZETA ONLY)
UART0FIFO .EQU TRUE ; UART0 TRUE ENABLES UART FIFO (16550 ASSUMED, SBC 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
@@ -36,7 +33,7 @@ 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
SCGENABLE .EQU FALSE ; TRUE FOR N8 (TMS9918) VIDEO/KBD SUPPORT
;
MDENABLE .EQU TRUE ; TRUE FOR ROM/RAM DISK SUPPORT (ALMOST ALWAYS WANT THIS ENABLED)
MDTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF MDENABLE = TRUE)
@@ -72,9 +69,9 @@ SDTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF IDEENABLE
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!)
PRPENABLE .EQU FALSE ; TRUE FOR PROPIO SUPPORT
PRPIOB .EQU $A8 ; PORT IO ADDRESS BASE
PRPSDENABLE .EQU TRUE ; TRUE FOR PROPIO SD SUPPORT (FOR N8VEM PROPIO ONLY!)
PRPSDENABLE .EQU TRUE ; TRUE FOR PROPIO SD SUPPORT
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)

View File

@@ -1,6 +1,6 @@
;
;==================================================================================================
; ROMWBW 2.X CONFIGURATION FOR N8VEM SBC W/ DUAL SD
; ROMWBW 2.X CONFIGURATION FOR SBC W/ DUAL SD
;==================================================================================================
;
; BUILD CONFIGURATION OPTIONS
@@ -9,10 +9,7 @@ CPUOSC .EQU 8000000 ; CPU OSC FREQ
RAMSIZE .EQU 512 ; SIZE OF RAM IN KB, MUST MATCH YOUR HARDWARE!!!
CONBAUD .EQU 38400 ; DEFAULT BAUDRATE USED BELOW
;
SERDEV .EQU CIODEV_UART ; PRIMARY SERIAL DEVICE FOR BOOT/DEBUG/MONITOR (TYPICALLY CIODEV_UART OR CIODEV_ASCI)
CRTDEV .EQU CIODEV_NUL ; CRT DEVICE (CIODEV_PRPCON, CIODEV_PPPCON, CIODEV_VDA), USE CIODEV_NUL IF NO CRT
CRTACT .EQU FALSE ; CRT ACTIVATION AT STARTUP
VDADEV .EQU VDADEV_NONE ; CRT VDA DEVICE (VDADEV_NONE, VDADEV_VDU, VDADEV_CVDU, VDADEV_N8V, VDADEV_UPD7220)
VDAEMU .EQU EMUTYP_TTY ; DEFAULT VDA EMULATION (EMUTYP_TTY, EMUTYP_ANSI, ...)
;
DSKYENABLE .EQU FALSE ; TRUE FOR DSKY SUPPORT (DO NOT COMBINE WITH PPIDE)
@@ -26,7 +23,7 @@ UARTCNT .EQU 1 ; NUMBER OF UARTS
UART0IOB .EQU $68 ; UART0 IOBASE
UART0OSC .EQU 1843200 ; UART0 OSC FREQUENCY
UART0BAUD .EQU CONBAUD ; UART0 BAUDRATE
UART0FIFO .EQU TRUE ; UART0 TRUE ENABLES UART FIFO (16550 ASSUMED, N8VEM AND ZETA ONLY)
UART0FIFO .EQU TRUE ; UART0 TRUE ENABLES UART FIFO (16550 ASSUMED, SBC 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
@@ -36,7 +33,7 @@ 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
SCGENABLE .EQU FALSE ; TRUE FOR N8 (TMS9918) VIDEO/KBD SUPPORT
;
MDENABLE .EQU TRUE ; TRUE FOR ROM/RAM DISK SUPPORT (ALMOST ALWAYS WANT THIS ENABLED)
MDTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF MDENABLE = TRUE)
@@ -72,9 +69,9 @@ SDTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF IDEENABLE
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!)
PRPENABLE .EQU FALSE ; TRUE FOR PROPIO SUPPORT
PRPIOB .EQU $A8 ; PORT IO ADDRESS BASE
PRPSDENABLE .EQU TRUE ; TRUE FOR PROPIO SD SUPPORT (FOR N8VEM PROPIO ONLY!)
PRPSDENABLE .EQU TRUE ; TRUE FOR PROPIO SD SUPPORT
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)

View File

@@ -1,6 +1,6 @@
;
;==================================================================================================
; ROMWBW 2.X CONFIGURATION FOR N8VEM SBC W/ MF/PIC
; ROMWBW 2.X CONFIGURATION FOR SBC W/ MF/PIC
;==================================================================================================
;
; BUILD CONFIGURATION OPTIONS
@@ -9,10 +9,7 @@ CPUOSC .EQU 8000000 ; CPU OSC FREQ
RAMSIZE .EQU 512 ; SIZE OF RAM IN KB, MUST MATCH YOUR HARDWARE!!!
CONBAUD .EQU 38400 ; DEFAULT BAUDRATE USED BELOW
;
SERDEV .EQU CIODEV_UART ; PRIMARY SERIAL DEVICE FOR BOOT/DEBUG/MONITOR (TYPICALLY CIODEV_UART OR CIODEV_ASCI)
CRTDEV .EQU CIODEV_NUL ; CRT DEVICE (CIODEV_PRPCON, CIODEV_PPPCON, CIODEV_VDA), USE CIODEV_NUL IF NO CRT
CRTACT .EQU FALSE ; CRT ACTIVATION AT STARTUP
VDADEV .EQU VDADEV_NONE ; CRT VDA DEVICE (VDADEV_NONE, VDADEV_VDU, VDADEV_CVDU, VDADEV_N8V, VDADEV_UPD7220)
VDAEMU .EQU EMUTYP_TTY ; DEFAULT VDA EMULATION (EMUTYP_TTY, EMUTYP_ANSI, ...)
;
DSKYENABLE .EQU FALSE ; TRUE FOR DSKY SUPPORT (DO NOT COMBINE WITH PPIDE)
@@ -26,12 +23,12 @@ UARTCNT .EQU 2 ; NUMBER OF UARTS
UART0IOB .EQU $68 ; UART0 IOBASE
UART0OSC .EQU 1843200 ; UART0 OSC FREQUENCY
UART0BAUD .EQU CONBAUD ; UART0 BAUDRATE
UART0FIFO .EQU TRUE ; UART0 TRUE ENABLES UART FIFO (16550 ASSUMED, N8VEM AND ZETA ONLY)
UART0FIFO .EQU TRUE ; UART0 TRUE ENABLES UART FIFO (16550 ASSUMED, SBC AND ZETA ONLY)
UART0AFC .EQU FALSE ; UART0 TRUE ENABLES AUTO FLOW CONTROL (YOUR TERMINAL/UART MUST SUPPORT RTS/CTS FLOW CONTROL!!!)
UART1IOB .EQU $48 ; UART1 IOBASE AT $48 FOR MFPIC
UART1OSC .EQU 1843200 ; UART1 OSC FREQUENCY
UART1BAUD .EQU CONBAUD ; UART1 BAUDRATE
UART1FIFO .EQU TRUE ; UART1 TRUE ENABLES UART FIFO (16550 ASSUMED, N8VEM AND ZETA ONLY)
UART1FIFO .EQU TRUE ; UART1 TRUE ENABLES UART FIFO (16550 ASSUMED, SBC AND ZETA ONLY)
UART1AFC .EQU FALSE ; UART1 TRUE ENABLES AUTO FLOW CONTROL (YOUR TERMINAL/UART MUST SUPPORT RTS/CTS FLOW CONTROL!!!)
;
ASCIENABLE .EQU FALSE ; TRUE FOR Z180 ASCI SUPPORT
@@ -41,7 +38,7 @@ 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
SCGENABLE .EQU FALSE ; TRUE FOR N8 (TMS9918) VIDEO/KBD SUPPORT
;
MDENABLE .EQU TRUE ; TRUE FOR ROM/RAM DISK SUPPORT (ALMOST ALWAYS WANT THIS ENABLED)
MDTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF MDENABLE = TRUE)
@@ -77,9 +74,9 @@ SDTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF IDEENABLE
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!)
PRPENABLE .EQU FALSE ; TRUE FOR PROPIO SUPPORT
PRPIOB .EQU $A8 ; PORT IO ADDRESS BASE
PRPSDENABLE .EQU TRUE ; TRUE FOR PROPIO SD SUPPORT (FOR N8VEM PROPIO ONLY!)
PRPSDENABLE .EQU TRUE ; TRUE FOR PROPIO SD SUPPORT
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)

View File

@@ -1,6 +1,6 @@
;
;==================================================================================================
; ROMWBW 2.X CONFIGURATION FOR N8VEM SBC W/ PPIDE
; ROMWBW 2.X CONFIGURATION FOR SBC W/ PPIDE
;==================================================================================================
;
; BUILD CONFIGURATION OPTIONS
@@ -9,10 +9,7 @@ CPUOSC .EQU 8000000 ; CPU OSC FREQ
RAMSIZE .EQU 512 ; SIZE OF RAM IN KB, MUST MATCH YOUR HARDWARE!!!
CONBAUD .EQU 38400 ; DEFAULT BAUDRATE USED BELOW
;
SERDEV .EQU CIODEV_UART ; PRIMARY SERIAL DEVICE FOR BOOT/DEBUG/MONITOR (TYPICALLY CIODEV_UART OR CIODEV_ASCI)
CRTDEV .EQU CIODEV_NUL ; CRT DEVICE (CIODEV_PRPCON, CIODEV_PPPCON, CIODEV_VDA), USE CIODEV_NUL IF NO CRT
CRTACT .EQU FALSE ; CRT ACTIVATION AT STARTUP
VDADEV .EQU VDADEV_NONE ; CRT VDA DEVICE (VDADEV_NONE, VDADEV_VDU, VDADEV_CVDU, VDADEV_N8V, VDADEV_UPD7220)
VDAEMU .EQU EMUTYP_TTY ; DEFAULT VDA EMULATION (EMUTYP_TTY, EMUTYP_ANSI, ...)
;
DSKYENABLE .EQU FALSE ; TRUE FOR DSKY SUPPORT (DO NOT COMBINE WITH PPIDE)
@@ -26,7 +23,7 @@ UARTCNT .EQU 1 ; NUMBER OF UARTS
UART0IOB .EQU $68 ; UART0 IOBASE
UART0OSC .EQU 1843200 ; UART0 OSC FREQUENCY
UART0BAUD .EQU CONBAUD ; UART0 BAUDRATE
UART0FIFO .EQU TRUE ; UART0 TRUE ENABLES UART FIFO (16550 ASSUMED, N8VEM AND ZETA ONLY)
UART0FIFO .EQU TRUE ; UART0 TRUE ENABLES UART FIFO (16550 ASSUMED, SBC 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
@@ -36,7 +33,7 @@ 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
SCGENABLE .EQU FALSE ; TRUE FOR N8 (TMS9918) VIDEO/KBD SUPPORT
;
MDENABLE .EQU TRUE ; TRUE FOR ROM/RAM DISK SUPPORT (ALMOST ALWAYS WANT THIS ENABLED)
MDTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF MDENABLE = TRUE)
@@ -72,9 +69,9 @@ SDTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF IDEENABLE
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!)
PRPENABLE .EQU FALSE ; TRUE FOR PROPIO SUPPORT
PRPIOB .EQU $A8 ; PORT IO ADDRESS BASE
PRPSDENABLE .EQU TRUE ; TRUE FOR PROPIO SD SUPPORT (FOR N8VEM PROPIO ONLY!)
PRPSDENABLE .EQU TRUE ; TRUE FOR PROPIO SD SUPPORT
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)

View File

@@ -1,6 +1,6 @@
;
;==================================================================================================
; ROMWBW 2.X CONFIGURATION FOR N8VEM SBC W/ PPISD
; ROMWBW 2.X CONFIGURATION FOR SBC W/ PPISD
;==================================================================================================
;
; BUILD CONFIGURATION OPTIONS
@@ -9,10 +9,7 @@ CPUOSC .EQU 8000000 ; CPU OSC FREQ
RAMSIZE .EQU 512 ; SIZE OF RAM IN KB, MUST MATCH YOUR HARDWARE!!!
CONBAUD .EQU 38400 ; DEFAULT BAUDRATE USED BELOW
;
SERDEV .EQU CIODEV_UART ; PRIMARY SERIAL DEVICE FOR BOOT/DEBUG/MONITOR (TYPICALLY CIODEV_UART OR CIODEV_ASCI)
CRTDEV .EQU CIODEV_NUL ; CRT DEVICE (CIODEV_PRPCON, CIODEV_PPPCON, CIODEV_VDA), USE CIODEV_NUL IF NO CRT
CRTACT .EQU FALSE ; CRT ACTIVATION AT STARTUP
VDADEV .EQU VDADEV_NONE ; CRT VDA DEVICE (VDADEV_NONE, VDADEV_VDU, VDADEV_CVDU, VDADEV_N8V, VDADEV_UPD7220)
VDAEMU .EQU EMUTYP_TTY ; DEFAULT VDA EMULATION (EMUTYP_TTY, EMUTYP_ANSI, ...)
;
DSKYENABLE .EQU FALSE ; TRUE FOR DSKY SUPPORT (DO NOT COMBINE WITH PPIDE)
@@ -26,7 +23,7 @@ UARTCNT .EQU 1 ; NUMBER OF UARTS
UART0IOB .EQU $68 ; UART0 IOBASE
UART0OSC .EQU 1843200 ; UART0 OSC FREQUENCY
UART0BAUD .EQU CONBAUD ; UART0 BAUDRATE
UART0FIFO .EQU TRUE ; UART0 TRUE ENABLES UART FIFO (16550 ASSUMED, N8VEM AND ZETA ONLY)
UART0FIFO .EQU TRUE ; UART0 TRUE ENABLES UART FIFO (16550 ASSUMED, SBC 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
@@ -36,7 +33,7 @@ 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
SCGENABLE .EQU FALSE ; TRUE FOR N8 (TMS9918) VIDEO/KBD SUPPORT
;
MDENABLE .EQU TRUE ; TRUE FOR ROM/RAM DISK SUPPORT (ALMOST ALWAYS WANT THIS ENABLED)
MDTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF MDENABLE = TRUE)
@@ -72,9 +69,9 @@ SDTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF IDEENABLE
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!)
PRPENABLE .EQU FALSE ; TRUE FOR PROPIO SUPPORT
PRPIOB .EQU $A8 ; PORT IO ADDRESS BASE
PRPSDENABLE .EQU TRUE ; TRUE FOR PROPIO SD SUPPORT (FOR N8VEM PROPIO ONLY!)
PRPSDENABLE .EQU TRUE ; TRUE FOR PROPIO SD SUPPORT
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)

View File

@@ -1,6 +1,6 @@
;
;==================================================================================================
; ROMWBW 2.X CONFIGURATION FOR N8VEM SBC W/ PROP IO
; ROMWBW 2.X CONFIGURATION FOR SBC W/ PROP IO
;==================================================================================================
;
; BUILD CONFIGURATION OPTIONS
@@ -9,10 +9,7 @@ CPUOSC .EQU 8000000 ; CPU OSC FREQ
RAMSIZE .EQU 512 ; SIZE OF RAM IN KB, MUST MATCH YOUR HARDWARE!!!
CONBAUD .EQU 38400 ; DEFAULT BAUDRATE USED BELOW
;
SERDEV .EQU CIODEV_UART ; PRIMARY SERIAL DEVICE FOR BOOT/DEBUG/MONITOR (TYPICALLY CIODEV_UART OR CIODEV_ASCI)
CRTDEV .EQU CIODEV_PRPCON ; CRT DEVICE (CIODEV_PRPCON, CIODEV_PPPCON, CIODEV_VDA), USE CIODEV_NUL IF NO CRT
CRTACT .EQU TRUE ; CRT ACTIVATION AT STARTUP
VDADEV .EQU VDADEV_NONE ; CRT VDA DEVICE (VDADEV_NONE, VDADEV_VDU, VDADEV_CVDU, VDADEV_N8V, VDADEV_UPD7220)
VDAEMU .EQU EMUTYP_TTY ; DEFAULT VDA EMULATION (EMUTYP_TTY, EMUTYP_ANSI, ...)
;
DSKYENABLE .EQU FALSE ; TRUE FOR DSKY SUPPORT (DO NOT COMBINE WITH PPIDE)
@@ -26,7 +23,7 @@ UARTCNT .EQU 1 ; NUMBER OF UARTS
UART0IOB .EQU $68 ; UART0 IOBASE
UART0OSC .EQU 1843200 ; UART0 OSC FREQUENCY
UART0BAUD .EQU CONBAUD ; UART0 BAUDRATE
UART0FIFO .EQU TRUE ; UART0 TRUE ENABLES UART FIFO (16550 ASSUMED, N8VEM AND ZETA ONLY)
UART0FIFO .EQU TRUE ; UART0 TRUE ENABLES UART FIFO (16550 ASSUMED, SBC 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
@@ -36,7 +33,7 @@ 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
SCGENABLE .EQU FALSE ; TRUE FOR N8 (TMS9918) VIDEO/KBD SUPPORT
;
MDENABLE .EQU TRUE ; TRUE FOR ROM/RAM DISK SUPPORT (ALMOST ALWAYS WANT THIS ENABLED)
MDTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF MDENABLE = TRUE)
@@ -72,9 +69,9 @@ SDTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF IDEENABLE
SDCAPACITY .EQU 64 ; CAPACITY OF DEVICE (IN MB)
SDCSIOFAST .EQU FALSE ; TABLE-DRIVEN BIT INVERTER
;
PRPENABLE .EQU TRUE ; TRUE FOR PROPIO SD SUPPORT (FOR N8VEM PROPIO ONLY!)
PRPENABLE .EQU TRUE ; TRUE FOR PROPIO SD SUPPORT
PRPIOB .EQU $A8 ; PORT IO ADDRESS BASE
PRPSDENABLE .EQU TRUE ; TRUE FOR PROPIO SD SUPPORT (FOR N8VEM PROPIO ONLY!)
PRPSDENABLE .EQU TRUE ; TRUE FOR PROPIO SD SUPPORT
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)

View File

@@ -9,10 +9,7 @@ CPUOSC .EQU 8000000 ; CPU OSC FREQ
RAMSIZE .EQU 512 ; SIZE OF RAM IN KB, MUST MATCH YOUR HARDWARE!!!
CONBAUD .EQU 38400 ; DEFAULT BAUDRATE USED BELOW
;
SERDEV .EQU CIODEV_UART ; PRIMARY SERIAL DEVICE FOR BOOT/DEBUG/MONITOR (TYPICALLY CIODEV_UART OR CIODEV_ASCI)
CRTDEV .EQU CIODEV_NUL ; CRT DEVICE (CIODEV_PRPCON, CIODEV_PPPCON, CIODEV_VDA), USE CIODEV_NUL IF NO CRT
CRTACT .EQU FALSE ; CRT ACTIVATION AT STARTUP
VDADEV .EQU VDADEV_NONE ; CRT VDA DEVICE (VDADEV_NONE, VDADEV_VDU, VDADEV_CVDU, VDADEV_N8V, VDADEV_UPD7220)
VDAEMU .EQU EMUTYP_TTY ; DEFAULT VDA EMULATION (EMUTYP_TTY, EMUTYP_ANSI, ...)
;
DSKYENABLE .EQU FALSE ; TRUE FOR DSKY SUPPORT (DO NOT COMBINE WITH PPIDE)
@@ -26,7 +23,7 @@ UARTCNT .EQU 1 ; NUMBER OF UARTS
UART0IOB .EQU $68 ; UART0 IOBASE
UART0OSC .EQU 1843200 ; UART0 OSC FREQUENCY
UART0BAUD .EQU CONBAUD ; UART0 BAUDRATE
UART0FIFO .EQU TRUE ; UART0 TRUE ENABLES UART FIFO (16550 ASSUMED, N8VEM AND ZETA ONLY)
UART0FIFO .EQU TRUE ; UART0 TRUE ENABLES UART FIFO (16550 ASSUMED, SBC 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
@@ -36,7 +33,7 @@ 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
SCGENABLE .EQU FALSE ; TRUE FOR N8 (TMS9918) VIDEO/KBD SUPPORT
;
MDENABLE .EQU TRUE ; TRUE FOR ROM/RAM DISK SUPPORT (ALMOST ALWAYS WANT THIS ENABLED)
MDTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF MDENABLE = TRUE)
@@ -72,9 +69,9 @@ SDTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF IDEENABLE
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!)
PRPENABLE .EQU FALSE ; TRUE FOR PROPIO SUPPORT
PRPIOB .EQU $A8 ; PORT IO ADDRESS BASE
PRPSDENABLE .EQU TRUE ; TRUE FOR PROPIO SD SUPPORT (FOR N8VEM PROPIO ONLY!)
PRPSDENABLE .EQU TRUE ; TRUE FOR PROPIO SD SUPPORT
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)

View File

@@ -9,10 +9,7 @@ CPUOSC .EQU 8000000 ; CPU OSC FREQ
RAMSIZE .EQU 512 ; SIZE OF RAM IN KB, MUST MATCH YOUR HARDWARE!!!
CONBAUD .EQU 115200 ; DEFAULT BAUDRATE USED BELOW
;
SERDEV .EQU CIODEV_UART ; PRIMARY SERIAL DEVICE FOR BOOT/DEBUG/MONITOR (TYPICALLY CIODEV_UART OR CIODEV_ASCI)
CRTDEV .EQU CIODEV_NUL ; CRT DEVICE (CIODEV_PRPCON, CIODEV_PPPCON, CIODEV_VDA), USE CIODEV_NUL IF NO CRT
CRTACT .EQU FALSE ; CRT ACTIVATION AT STARTUP
VDADEV .EQU VDADEV_NONE ; CRT VDA DEVICE (VDADEV_NONE, VDADEV_VDU, VDADEV_CVDU, VDADEV_N8V, VDADEV_UPD7220)
VDAEMU .EQU EMUTYP_TTY ; DEFAULT VDA EMULATION (EMUTYP_TTY, EMUTYP_ANSI, ...)
;
DSKYENABLE .EQU FALSE ; TRUE FOR DSKY SUPPORT (DO NOT COMBINE WITH PPIDE)
@@ -26,7 +23,7 @@ UARTCNT .EQU 1 ; NUMBER OF UARTS
UART0IOB .EQU $68 ; UART0 IOBASE
UART0OSC .EQU 1843200 ; UART0 OSC FREQUENCY
UART0BAUD .EQU CONBAUD ; UART0 BAUDRATE
UART0FIFO .EQU FALSE ; UART0 TRUE ENABLES UART FIFO (16550 ASSUMED, N8VEM AND ZETA ONLY)
UART0FIFO .EQU FALSE ; UART0 TRUE ENABLES UART FIFO (16550 ASSUMED, SBC 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
@@ -36,7 +33,7 @@ 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
SCGENABLE .EQU FALSE ; TRUE FOR N8 (TMS9918) VIDEO/KBD SUPPORT
;
MDENABLE .EQU TRUE ; TRUE FOR ROM/RAM DISK SUPPORT (ALMOST ALWAYS WANT THIS ENABLED)
MDTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF MDENABLE = TRUE)
@@ -72,9 +69,9 @@ SDTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF IDEENABLE
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!)
PRPENABLE .EQU FALSE ; TRUE FOR PROPIO SUPPORT
PRPIOB .EQU $A8 ; PORT IO ADDRESS BASE
PRPSDENABLE .EQU TRUE ; TRUE FOR PROPIO SD SUPPORT (FOR N8VEM PROPIO ONLY!)
PRPSDENABLE .EQU TRUE ; TRUE FOR PROPIO SD SUPPORT
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)

View File

@@ -1,6 +1,6 @@
;
;==================================================================================================
; ROMWBW 2.X CONFIGURATION FOR N8VEM SBC
; ROMWBW 2.X CONFIGURATION FOR SBC
;==================================================================================================
;
; BUILD CONFIGURATION OPTIONS
@@ -9,10 +9,7 @@ CPUOSC .EQU 8000000 ; CPU OSC FREQ
RAMSIZE .EQU 512 ; SIZE OF RAM IN KB, MUST MATCH YOUR HARDWARE!!!
CONBAUD .EQU 38400 ; DEFAULT BAUDRATE USED BELOW
;
SERDEV .EQU CIODEV_UART ; PRIMARY SERIAL DEVICE FOR BOOT/DEBUG/MONITOR (TYPICALLY CIODEV_UART OR CIODEV_ASCI)
CRTDEV .EQU CIODEV_NUL ; CRT DEVICE (CIODEV_PRPCON, CIODEV_PPPCON, CIODEV_VDA), USE CIODEV_NUL IF NO CRT
CRTACT .EQU FALSE ; CRT ACTIVATION AT STARTUP
VDADEV .EQU VDADEV_NONE ; CRT VDA DEVICE (VDADEV_NONE, VDADEV_VDU, VDADEV_CVDU, VDADEV_N8V, VDADEV_UPD7220)
VDAEMU .EQU EMUTYP_TTY ; DEFAULT VDA EMULATION (EMUTYP_TTY, EMUTYP_ANSI, ...)
;
DSKYENABLE .EQU FALSE ; TRUE FOR DSKY SUPPORT (DO NOT COMBINE WITH PPIDE)
@@ -26,7 +23,7 @@ UARTCNT .EQU 1 ; NUMBER OF UARTS
UART0IOB .EQU $68 ; UART0 IOBASE
UART0OSC .EQU 1843200 ; UART0 OSC FREQUENCY
UART0BAUD .EQU CONBAUD ; UART0 BAUDRATE
UART0FIFO .EQU TRUE ; UART0 TRUE ENABLES UART FIFO (16550 ASSUMED, N8VEM AND ZETA ONLY)
UART0FIFO .EQU TRUE ; UART0 TRUE ENABLES UART FIFO (16550 ASSUMED, SBC 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
@@ -36,7 +33,7 @@ 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
SCGENABLE .EQU FALSE ; TRUE FOR N8 (TMS9918) VIDEO/KBD SUPPORT
;
MDENABLE .EQU TRUE ; TRUE FOR ROM/RAM DISK SUPPORT (ALMOST ALWAYS WANT THIS ENABLED)
MDTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF MDENABLE = TRUE)
@@ -72,9 +69,9 @@ SDTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF IDEENABLE
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!)
PRPENABLE .EQU FALSE ; TRUE FOR PROPIO SUPPORT
PRPIOB .EQU $A8 ; PORT IO ADDRESS BASE
PRPSDENABLE .EQU TRUE ; TRUE FOR PROPIO SD SUPPORT (FOR N8VEM PROPIO ONLY!)
PRPSDENABLE .EQU TRUE ; TRUE FOR PROPIO SD SUPPORT
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)

View File

@@ -1,6 +1,6 @@
;
;==================================================================================================
; ROMWBW 2.X CONFIGURATION FOR N8VEM SBC W/ VDU
; ROMWBW 2.X CONFIGURATION FOR SBC W/ VDU
;==================================================================================================
;
; BUILD CONFIGURATION OPTIONS
@@ -9,10 +9,7 @@ CPUOSC .EQU 8000000 ; CPU OSC FREQ
RAMSIZE .EQU 512 ; SIZE OF RAM IN KB, MUST MATCH YOUR HARDWARE!!!
CONBAUD .EQU 38400 ; DEFAULT BAUDRATE USED BELOW
;
SERDEV .EQU CIODEV_UART ; PRIMARY SERIAL DEVICE FOR BOOT/DEBUG/MONITOR (TYPICALLY CIODEV_UART OR CIODEV_ASCI)
CRTDEV .EQU CIODEV_NUL ; CRT DEVICE (CIODEV_PRPCON, CIODEV_PPPCON, CIODEV_VDA), USE CIODEV_NUL IF NO CRT
CRTACT .EQU TRUE ; CRT ACTIVATION AT STARTUP
VDADEV .EQU VDADEV_VDU ; CRT VDA DEVICE (VDADEV_NONE, VDADEV_VDU, VDADEV_CVDU, VDADEV_N8V, VDADEV_UPD7220)
VDAEMU .EQU EMUTYP_ANSI ; DEFAULT VDA EMULATION (EMUTYP_TTY, EMUTYP_ANSI, ...)
;
DSKYENABLE .EQU FALSE ; TRUE FOR DSKY SUPPORT (DO NOT COMBINE WITH PPIDE)
@@ -26,7 +23,7 @@ UARTCNT .EQU 1 ; NUMBER OF UARTS
UART0IOB .EQU $68 ; UART0 IOBASE
UART0OSC .EQU 1843200 ; UART0 OSC FREQUENCY
UART0BAUD .EQU CONBAUD ; UART0 BAUDRATE
UART0FIFO .EQU TRUE ; UART0 TRUE ENABLES UART FIFO (16550 ASSUMED, N8VEM AND ZETA ONLY)
UART0FIFO .EQU TRUE ; UART0 TRUE ENABLES UART FIFO (16550 ASSUMED, SBC 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
@@ -36,7 +33,7 @@ ASCI1BAUD .EQU CONBAUD ; ASCI1 BAUDRATE (IMPLEMENTED BY Z180_CNTLB1)
VDUENABLE .EQU TRUE ; 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
SCGENABLE .EQU FALSE ; TRUE FOR N8 (TMS9918) VIDEO/KBD SUPPORT
;
MDENABLE .EQU TRUE ; TRUE FOR ROM/RAM DISK SUPPORT (ALMOST ALWAYS WANT THIS ENABLED)
MDTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF MDENABLE = TRUE)
@@ -72,9 +69,9 @@ SDTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF IDEENABLE
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!)
PRPENABLE .EQU FALSE ; TRUE FOR PROPIO SUPPORT
PRPIOB .EQU $A8 ; PORT IO ADDRESS BASE
PRPSDENABLE .EQU TRUE ; TRUE FOR PROPIO SD SUPPORT (FOR N8VEM PROPIO ONLY!)
PRPSDENABLE .EQU TRUE ; TRUE FOR PROPIO SD SUPPORT
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)

View File

@@ -9,10 +9,7 @@ CPUOSC .EQU 20000000 ; CPU OSC FREQ
RAMSIZE .EQU 512 ; SIZE OF RAM IN KB, MUST MATCH YOUR HARDWARE!!!
CONBAUD .EQU 38400 ; DEFAULT BAUDRATE USED BELOW
;
SERDEV .EQU CIODEV_UART ; PRIMARY SERIAL DEVICE FOR BOOT/DEBUG/MONITOR (TYPICALLY CIODEV_UART OR CIODEV_ASCI)
CRTDEV .EQU CIODEV_NUL ; CRT DEVICE (CIODEV_PRPCON, CIODEV_PPPCON, CIODEV_VDA), USE CIODEV_NUL IF NO CRT
CRTACT .EQU FALSE ; CRT ACTIVATION AT STARTUP
VDADEV .EQU VDADEV_NONE ; CRT VDA DEVICE (VDADEV_NONE, VDADEV_VDU, VDADEV_CVDU, VDADEV_N8V, VDADEV_UPD7220)
VDAEMU .EQU EMUTYP_TTY ; DEFAULT VDA EMULATION (EMUTYP_TTY, EMUTYP_ANSI, ...)
;
DSKYENABLE .EQU FALSE ; TRUE FOR DSKY SUPPORT (DO NOT COMBINE WITH PPIDE)
@@ -26,7 +23,7 @@ UARTCNT .EQU 1 ; NUMBER OF UARTS
UART0IOB .EQU $68 ; UART0 IOBASE
UART0OSC .EQU 1843200 ; UART0 OSC FREQUENCY
UART0BAUD .EQU CONBAUD ; UART0 BAUDRATE
UART0FIFO .EQU TRUE ; UART0 TRUE ENABLES UART FIFO (16550 ASSUMED, N8VEM AND ZETA ONLY)
UART0FIFO .EQU TRUE ; UART0 TRUE ENABLES UART FIFO (16550 ASSUMED, SBC 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
@@ -36,7 +33,7 @@ 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
SCGENABLE .EQU FALSE ; TRUE FOR N8 (TMS9918) VIDEO/KBD SUPPORT
;
MDENABLE .EQU TRUE ; TRUE FOR ROM/RAM DISK SUPPORT (ALMOST ALWAYS WANT THIS ENABLED)
MDTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF MDENABLE = TRUE)
@@ -72,9 +69,9 @@ SDTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF IDEENABLE
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!)
PRPENABLE .EQU FALSE ; TRUE FOR PROPIO SUPPORT
PRPIOB .EQU $A8 ; PORT IO ADDRESS BASE
PRPSDENABLE .EQU TRUE ; TRUE FOR PROPIO SD SUPPORT (FOR N8VEM PROPIO ONLY!)
PRPSDENABLE .EQU TRUE ; TRUE FOR PROPIO SD SUPPORT
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)

View File

@@ -9,10 +9,7 @@ CPUOSC .EQU 20000000 ; CPU OSC FREQ
RAMSIZE .EQU 512 ; SIZE OF RAM IN KB, MUST MATCH YOUR HARDWARE!!!
CONBAUD .EQU 38400 ; DEFAULT BAUDRATE USED BELOW
;
SERDEV .EQU CIODEV_UART ; PRIMARY SERIAL DEVICE FOR BOOT/DEBUG/MONITOR (TYPICALLY CIODEV_UART OR CIODEV_ASCI)
CRTDEV .EQU CIODEV_NUL ; CRT DEVICE (CIODEV_PRPCON, CIODEV_PPPCON, CIODEV_VDA), USE CIODEV_NUL IF NO CRT
CRTACT .EQU FALSE ; CRT ACTIVATION AT STARTUP
VDADEV .EQU VDADEV_NONE ; CRT VDA DEVICE (VDADEV_NONE, VDADEV_VDU, VDADEV_CVDU, VDADEV_N8V, VDADEV_UPD7220)
VDAEMU .EQU EMUTYP_TTY ; DEFAULT VDA EMULATION (EMUTYP_TTY, EMUTYP_ANSI, ...)
;
DSKYENABLE .EQU FALSE ; TRUE FOR DSKY SUPPORT (DO NOT COMBINE WITH PPIDE)
@@ -26,7 +23,7 @@ UARTCNT .EQU 1 ; NUMBER OF UARTS
UART0IOB .EQU $68 ; UART0 IOBASE
UART0OSC .EQU 1843200 ; UART0 OSC FREQUENCY
UART0BAUD .EQU CONBAUD ; UART0 BAUDRATE
UART0FIFO .EQU TRUE ; UART0 TRUE ENABLES UART FIFO (16550 ASSUMED, N8VEM AND ZETA ONLY)
UART0FIFO .EQU TRUE ; UART0 TRUE ENABLES UART FIFO (16550 ASSUMED, SBC 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
@@ -36,7 +33,7 @@ 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
SCGENABLE .EQU FALSE ; TRUE FOR N8 (TMS9918) VIDEO/KBD SUPPORT
;
MDENABLE .EQU TRUE ; TRUE FOR ROM/RAM DISK SUPPORT (ALMOST ALWAYS WANT THIS ENABLED)
MDTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF MDENABLE = TRUE)
@@ -72,9 +69,9 @@ SDTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF IDEENABLE
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!)
PRPENABLE .EQU FALSE ; TRUE FOR PROPIO SUPPORT
PRPIOB .EQU $A8 ; PORT IO ADDRESS BASE
PRPSDENABLE .EQU TRUE ; TRUE FOR PROPIO SD SUPPORT (FOR N8VEM PROPIO ONLY!)
PRPSDENABLE .EQU TRUE ; TRUE FOR PROPIO SD SUPPORT
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)

View File

@@ -9,10 +9,7 @@ CPUOSC .EQU 20000000 ; CPU OSC FREQ
RAMSIZE .EQU 512 ; SIZE OF RAM IN KB, MUST MATCH YOUR HARDWARE!!!
CONBAUD .EQU 38400 ; DEFAULT BAUDRATE USED BELOW
;
SERDEV .EQU CIODEV_UART ; PRIMARY SERIAL DEVICE FOR BOOT/DEBUG/MONITOR (TYPICALLY CIODEV_UART OR CIODEV_ASCI)
CRTDEV .EQU CIODEV_PPPCON ; CRT DEVICE (CIODEV_PRPCON, CIODEV_PPPCON, CIODEV_VDA), USE CIODEV_NUL IF NO CRT
CRTACT .EQU TRUE ; CRT ACTIVATION AT STARTUP
VDADEV .EQU VDADEV_NONE ; CRT VDA DEVICE (VDADEV_NONE, VDADEV_VDU, VDADEV_CVDU, VDADEV_N8V, VDADEV_UPD7220)
VDAEMU .EQU EMUTYP_TTY ; DEFAULT VDA EMULATION (EMUTYP_TTY, EMUTYP_ANSI, ...)
;
DSKYENABLE .EQU FALSE ; TRUE FOR DSKY SUPPORT (DO NOT COMBINE WITH PPIDE)
@@ -26,7 +23,7 @@ UARTCNT .EQU 1 ; NUMBER OF UARTS
UART0IOB .EQU $68 ; UART0 IOBASE
UART0OSC .EQU 1843200 ; UART0 OSC FREQUENCY
UART0BAUD .EQU CONBAUD ; UART0 BAUDRATE
UART0FIFO .EQU TRUE ; UART0 TRUE ENABLES UART FIFO (16550 ASSUMED, N8VEM AND ZETA ONLY)
UART0FIFO .EQU TRUE ; UART0 TRUE ENABLES UART FIFO (16550 ASSUMED, SBC 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
@@ -36,7 +33,7 @@ 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
SCGENABLE .EQU FALSE ; TRUE FOR N8 (TMS9918) VIDEO/KBD SUPPORT
;
MDENABLE .EQU TRUE ; TRUE FOR ROM/RAM DISK SUPPORT (ALMOST ALWAYS WANT THIS ENABLED)
MDTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF MDENABLE = TRUE)
@@ -72,9 +69,9 @@ SDTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF IDEENABLE
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!)
PRPENABLE .EQU FALSE ; TRUE FOR PROPIO SUPPORT
PRPIOB .EQU $A8 ; PORT IO ADDRESS BASE
PRPSDENABLE .EQU TRUE ; TRUE FOR PROPIO SD SUPPORT (FOR N8VEM PROPIO ONLY!)
PRPSDENABLE .EQU TRUE ; TRUE FOR PROPIO SD SUPPORT
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)

View File

@@ -9,10 +9,7 @@ CPUOSC .EQU 20000000 ; CPU OSC FREQ
RAMSIZE .EQU 512 ; SIZE OF RAM IN KB, MUST MATCH YOUR HARDWARE!!!
CONBAUD .EQU 38400 ; DEFAULT BAUDRATE USED BELOW
;
SERDEV .EQU CIODEV_UART ; PRIMARY SERIAL DEVICE FOR BOOT/DEBUG/MONITOR (TYPICALLY CIODEV_UART OR CIODEV_ASCI)
CRTDEV .EQU CIODEV_NUL ; CRT DEVICE (CIODEV_PRPCON, CIODEV_PPPCON, CIODEV_VDA), USE CIODEV_NUL IF NO CRT
CRTACT .EQU FALSE ; CRT ACTIVATION AT STARTUP
VDADEV .EQU VDADEV_NONE ; CRT VDA DEVICE (VDADEV_NONE, VDADEV_VDU, VDADEV_CVDU, VDADEV_N8V, VDADEV_UPD7220)
VDAEMU .EQU EMUTYP_TTY ; DEFAULT VDA EMULATION (EMUTYP_TTY, EMUTYP_ANSI, ...)
;
DSKYENABLE .EQU FALSE ; TRUE FOR DSKY SUPPORT (DO NOT COMBINE WITH PPIDE)
@@ -26,7 +23,7 @@ UARTCNT .EQU 1 ; NUMBER OF UARTS
UART0IOB .EQU $68 ; UART0 IOBASE
UART0OSC .EQU 1843200 ; UART0 OSC FREQUENCY
UART0BAUD .EQU CONBAUD ; UART0 BAUDRATE
UART0FIFO .EQU TRUE ; UART0 TRUE ENABLES UART FIFO (16550 ASSUMED, N8VEM AND ZETA ONLY)
UART0FIFO .EQU TRUE ; UART0 TRUE ENABLES UART FIFO (16550 ASSUMED, SBC 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
@@ -36,7 +33,7 @@ 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
SCGENABLE .EQU FALSE ; TRUE FOR N8 (TMS9918) VIDEO/KBD SUPPORT
;
MDENABLE .EQU TRUE ; TRUE FOR ROM/RAM DISK SUPPORT (ALMOST ALWAYS WANT THIS ENABLED)
MDTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF MDENABLE = TRUE)
@@ -72,9 +69,9 @@ SDTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF IDEENABLE
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!)
PRPENABLE .EQU FALSE ; TRUE FOR PROPIO SUPPORT
PRPIOB .EQU $A8 ; PORT IO ADDRESS BASE
PRPSDENABLE .EQU TRUE ; TRUE FOR PROPIO SD SUPPORT (FOR N8VEM PROPIO ONLY!)
PRPSDENABLE .EQU TRUE ; TRUE FOR PROPIO SD SUPPORT
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)

View File

@@ -9,10 +9,7 @@ CPUOSC .EQU 20000000 ; CPU OSC FREQ
RAMSIZE .EQU 512 ; SIZE OF RAM IN KB, MUST MATCH YOUR HARDWARE!!!
CONBAUD .EQU 38400 ; DEFAULT BAUDRATE USED BELOW
;
SERDEV .EQU CIODEV_UART ; PRIMARY SERIAL DEVICE FOR BOOT/DEBUG/MONITOR (TYPICALLY CIODEV_UART OR CIODEV_ASCI)
CRTDEV .EQU CIODEV_NUL ; CRT DEVICE (CIODEV_PRPCON, CIODEV_PPPCON, CIODEV_VDA), USE CIODEV_NUL IF NO CRT
CRTACT .EQU FALSE ; CRT ACTIVATION AT STARTUP
VDADEV .EQU VDADEV_NONE ; CRT VDA DEVICE (VDADEV_NONE, VDADEV_VDU, VDADEV_CVDU, VDADEV_N8V, VDADEV_UPD7220)
VDAEMU .EQU EMUTYP_TTY ; DEFAULT VDA EMULATION (EMUTYP_TTY, EMUTYP_ANSI, ...)
;
DSKYENABLE .EQU FALSE ; TRUE FOR DSKY SUPPORT (DO NOT COMBINE WITH PPIDE)
@@ -26,7 +23,7 @@ UARTCNT .EQU 1 ; NUMBER OF UARTS
UART0IOB .EQU $68 ; UART0 IOBASE
UART0OSC .EQU 1843200 ; UART0 OSC FREQUENCY
UART0BAUD .EQU CONBAUD ; UART0 BAUDRATE
UART0FIFO .EQU TRUE ; UART0 TRUE ENABLES UART FIFO (16550 ASSUMED, N8VEM AND ZETA ONLY)
UART0FIFO .EQU TRUE ; UART0 TRUE ENABLES UART FIFO (16550 ASSUMED, SBC 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
@@ -36,7 +33,7 @@ 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
SCGENABLE .EQU FALSE ; TRUE FOR N8 (TMS9918) VIDEO/KBD SUPPORT
;
MDENABLE .EQU TRUE ; TRUE FOR ROM/RAM DISK SUPPORT (ALMOST ALWAYS WANT THIS ENABLED)
MDTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF MDENABLE = TRUE)
@@ -72,9 +69,9 @@ SDTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF IDEENABLE
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!)
PRPENABLE .EQU FALSE ; TRUE FOR PROPIO SUPPORT
PRPIOB .EQU $A8 ; PORT IO ADDRESS BASE
PRPSDENABLE .EQU TRUE ; TRUE FOR PROPIO SD SUPPORT (FOR N8VEM PROPIO ONLY!)
PRPSDENABLE .EQU TRUE ; TRUE FOR PROPIO SD SUPPORT
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)

View File

@@ -9,10 +9,7 @@ CPUOSC .EQU 20000000 ; CPU OSC FREQ
RAMSIZE .EQU 512 ; SIZE OF RAM IN KB, MUST MATCH YOUR HARDWARE!!!
CONBAUD .EQU 38400 ; DEFAULT BAUDRATE USED BELOW
;
SERDEV .EQU CIODEV_UART ; PRIMARY SERIAL DEVICE FOR BOOT/DEBUG/MONITOR (TYPICALLY CIODEV_UART OR CIODEV_ASCI)
CRTDEV .EQU CIODEV_NUL ; CRT DEVICE (CIODEV_PRPCON, CIODEV_PPPCON, CIODEV_VDA), USE CIODEV_NUL IF NO CRT
CRTACT .EQU FALSE ; CRT ACTIVATION AT STARTUP
VDADEV .EQU VDADEV_NONE ; CRT VDA DEVICE (VDADEV_NONE, VDADEV_VDU, VDADEV_CVDU, VDADEV_N8V, VDADEV_UPD7220)
VDAEMU .EQU EMUTYP_TTY ; DEFAULT VDA EMULATION (EMUTYP_TTY, EMUTYP_ANSI, ...)
;
DSKYENABLE .EQU FALSE ; TRUE FOR DSKY SUPPORT (DO NOT COMBINE WITH PPIDE)
@@ -26,7 +23,7 @@ UARTCNT .EQU 1 ; NUMBER OF UARTS
UART0IOB .EQU $68 ; UART0 IOBASE
UART0OSC .EQU 1843200 ; UART0 OSC FREQUENCY
UART0BAUD .EQU CONBAUD ; UART0 BAUDRATE
UART0FIFO .EQU TRUE ; UART0 TRUE ENABLES UART FIFO (16550 ASSUMED, N8VEM AND ZETA ONLY)
UART0FIFO .EQU TRUE ; UART0 TRUE ENABLES UART FIFO (16550 ASSUMED, SBC 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
@@ -36,7 +33,7 @@ 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
SCGENABLE .EQU FALSE ; TRUE FOR N8 (TMS9918) VIDEO/KBD SUPPORT
;
MDENABLE .EQU TRUE ; TRUE FOR ROM/RAM DISK SUPPORT (ALMOST ALWAYS WANT THIS ENABLED)
MDTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF MDENABLE = TRUE)
@@ -72,9 +69,9 @@ SDTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF IDEENABLE
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!)
PRPENABLE .EQU FALSE ; TRUE FOR PROPIO SUPPORT
PRPIOB .EQU $A8 ; PORT IO ADDRESS BASE
PRPSDENABLE .EQU TRUE ; TRUE FOR PROPIO SD SUPPORT (FOR N8VEM PROPIO ONLY!)
PRPSDENABLE .EQU TRUE ; TRUE FOR PROPIO SD SUPPORT
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)

View File

@@ -9,10 +9,7 @@ CPUOSC .EQU 20000000 ; CPU OSC FREQ
RAMSIZE .EQU 512 ; SIZE OF RAM IN KB, MUST MATCH YOUR HARDWARE!!!
CONBAUD .EQU 38400 ; DEFAULT BAUDRATE USED BELOW
;
SERDEV .EQU CIODEV_UART ; PRIMARY SERIAL DEVICE FOR BOOT/DEBUG/MONITOR (TYPICALLY CIODEV_UART OR CIODEV_ASCI)
CRTDEV .EQU CIODEV_PPPCON ; CRT DEVICE (CIODEV_PRPCON, CIODEV_PPPCON, CIODEV_VDA), USE CIODEV_NUL IF NO CRT
CRTACT .EQU TRUE ; CRT ACTIVATION AT STARTUP
VDADEV .EQU VDADEV_NONE ; CRT VDA DEVICE (VDADEV_NONE, VDADEV_VDU, VDADEV_CVDU, VDADEV_N8V, VDADEV_UPD7220)
VDAEMU .EQU EMUTYP_TTY ; DEFAULT VDA EMULATION (EMUTYP_TTY, EMUTYP_ANSI, ...)
;
DSKYENABLE .EQU FALSE ; TRUE FOR DSKY SUPPORT (DO NOT COMBINE WITH PPIDE)
@@ -26,7 +23,7 @@ UARTCNT .EQU 1 ; NUMBER OF UARTS
UART0IOB .EQU $68 ; UART0 IOBASE
UART0OSC .EQU 1843200 ; UART0 OSC FREQUENCY
UART0BAUD .EQU CONBAUD ; UART0 BAUDRATE
UART0FIFO .EQU TRUE ; UART0 TRUE ENABLES UART FIFO (16550 ASSUMED, N8VEM AND ZETA ONLY)
UART0FIFO .EQU TRUE ; UART0 TRUE ENABLES UART FIFO (16550 ASSUMED, SBC 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
@@ -36,7 +33,7 @@ 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
SCGENABLE .EQU FALSE ; TRUE FOR N8 (TMS9918) VIDEO/KBD SUPPORT
;
MDENABLE .EQU TRUE ; TRUE FOR ROM/RAM DISK SUPPORT (ALMOST ALWAYS WANT THIS ENABLED)
MDTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF MDENABLE = TRUE)
@@ -72,9 +69,9 @@ SDTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF IDEENABLE
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!)
PRPENABLE .EQU FALSE ; TRUE FOR PROPIO SUPPORT
PRPIOB .EQU $A8 ; PORT IO ADDRESS BASE
PRPSDENABLE .EQU TRUE ; TRUE FOR PROPIO SD SUPPORT (FOR N8VEM PROPIO ONLY!)
PRPSDENABLE .EQU TRUE ; TRUE FOR PROPIO SD SUPPORT
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)

View File

@@ -9,10 +9,7 @@ CPUOSC .EQU 20000000 ; CPU OSC FREQ
RAMSIZE .EQU 512 ; SIZE OF RAM IN KB, MUST MATCH YOUR HARDWARE!!!
CONBAUD .EQU 38400 ; DEFAULT BAUDRATE USED BELOW
;
SERDEV .EQU CIODEV_UART ; PRIMARY SERIAL DEVICE FOR BOOT/DEBUG/MONITOR (TYPICALLY CIODEV_UART OR CIODEV_ASCI)
CRTDEV .EQU CIODEV_NUL ; CRT DEVICE (CIODEV_PRPCON, CIODEV_PPPCON, CIODEV_VDA), USE CIODEV_NUL IF NO CRT
CRTACT .EQU FALSE ; CRT ACTIVATION AT STARTUP
VDADEV .EQU VDADEV_NONE ; CRT VDA DEVICE (VDADEV_NONE, VDADEV_VDU, VDADEV_CVDU, VDADEV_N8V, VDADEV_UPD7220)
VDAEMU .EQU EMUTYP_TTY ; DEFAULT VDA EMULATION (EMUTYP_TTY, EMUTYP_ANSI, ...)
;
DSKYENABLE .EQU FALSE ; TRUE FOR DSKY SUPPORT (DO NOT COMBINE WITH PPIDE)
@@ -26,7 +23,7 @@ UARTCNT .EQU 1 ; NUMBER OF UARTS
UART0IOB .EQU $68 ; UART0 IOBASE
UART0OSC .EQU 1843200 ; UART0 OSC FREQUENCY
UART0BAUD .EQU CONBAUD ; UART0 BAUDRATE
UART0FIFO .EQU TRUE ; UART0 TRUE ENABLES UART FIFO (16550 ASSUMED, N8VEM AND ZETA ONLY)
UART0FIFO .EQU TRUE ; UART0 TRUE ENABLES UART FIFO (16550 ASSUMED, SBC 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
@@ -36,7 +33,7 @@ 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
SCGENABLE .EQU FALSE ; TRUE FOR N8 (TMS9918) VIDEO/KBD SUPPORT
;
MDENABLE .EQU TRUE ; TRUE FOR ROM/RAM DISK SUPPORT (ALMOST ALWAYS WANT THIS ENABLED)
MDTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF MDENABLE = TRUE)
@@ -72,9 +69,9 @@ SDTRACE .EQU 1 ; 0=SILENT, 1=ERRORS, 2=EVERYTHING (ONLY RELEVANT IF IDEENABLE
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!)
PRPENABLE .EQU FALSE ; TRUE FOR PROPIO SUPPORT
PRPIOB .EQU $A8 ; PORT IO ADDRESS BASE
PRPSDENABLE .EQU TRUE ; TRUE FOR PROPIO SD SUPPORT (FOR N8VEM PROPIO ONLY!)
PRPSDENABLE .EQU TRUE ; TRUE FOR PROPIO SD SUPPORT
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)

View File

@@ -18,17 +18,23 @@ ANSI_DEFCOLOR .EQU 7 ; WHITE ON BLACK
; ANSI EMULATION MODULE
;==================================================================================================
;
; INITIALIZATION OF EMULATION MODULE CALLED BY PARENT VDA DRIVER
; ON ENTRY:
; C: CIO UNIT NUMBER OF CALLING VDA DRIVER
; DE: DISPATCH ADDRESS OF CALLING VDA DRIVER
; RETURNS:
; DE: OUR CIO DISPATCH ADDRESS
;
ANSI_INIT:
; SAVE INCOMING VDA DISPATCH ADDRESS
CALL TSTPT ; *DEBUG*
LD (EMU_VDADISPADR),DE ; RECORD NEW VDA DISPATCH ADDRESS
LD C,A ; VDA DRIVER'S CIO UNIT NUMBER
LD (ANSI_CIOUNIT),A ; ... SAVED LOCALLY
LD (ANSI_VDADISPADR),DE ; RECORD NEW VDA DISPATCH ADDRESS
;
; QUERY THE VIDEO DRIVER FOR SCREEN DIMENSIONS
LD B,BF_VDAQRY ; FUNCTION IS QUERY
LD HL,0 ; WE DO NOT WANT A COPY OF THE CHARACTER BITMAP DATA
CALL TSTPT ; *DEBUG*
CALL EMU_VDADISP ; PERFORM THE QUERY FUNCTION
CALL TSTPT ; *DEBUG*
CALL ANSI_VDADISP ; PERFORM THE QUERY FUNCTION
LD (ANSI_DIM),DE ; SAVE THE SCREEN DIMENSIONS RETURNED
;
; INITIALIZE ALL WORKING VARIABLES
@@ -60,14 +66,18 @@ ANSI_INIT2: ; LOOP TO RESET TAB STOPS
DJNZ ANSI_INIT2 ; LOOP TILL ALL BYTES DONE
;
LD DE,ANSI_DISPATCH ; RETURN OUR DISPATCH ADDRESS
CALL TSTPT ; *DEBUG*
XOR A
RET
;
;
;
ANSI_VDADISP:
JP PANIC
ANSI_VDADISPADR .EQU $ - 2
;
;
;
ANSI_DISPATCH:
LD (ANSI_CIODEV),A ; *DEBUG*
LD A,B ; GET REQUESTED FUNCTION
AND $0F ; ISOLATE SUB-FUNCTION
JR Z,ANSI_IN ; $30
@@ -109,7 +119,7 @@ ANSI_IN: ; HANDLE INPUT REQUEST
;
ANSI_IN1: ; PERFORM ACTUAL KEYBOARD INPUT
LD B,BF_VDAKRD ; SET FUNCTION TO KEYBOARD READ
CALL EMU_VDADISP ; CALL VDA DISPATCHER
CALL ANSI_VDADISP ; CALL VDA DISPATCHER
LD A,E ; CHARACTER READ INTO A
BIT 7,A ; TEST HIGH BIT
JR NZ,ANSI_IN2 ; HANDLE $80 OR HIGHER AS SPECIAL CHAR
@@ -151,13 +161,13 @@ ANSI_IST: ; CHECK QUEUE FIRST
;
; QUEUE WAS EMPTY, CHECK HARDWARE STATUS
LD B,BF_VDAKST ; SET FUNCTION TO KEYBOARD STATUS
CALL EMU_VDADISP ; CHECK STATUS
CALL ANSI_VDADISP ; CHECK STATUS
OR A ; SET FLAGS
RET Z ; NO KEYS WAITING, RETURN NO JOY
;
; KEY WAITING, GET IT AND HANDLE IT
LD B,BF_VDAKRD ; SET FUNCTION TO KEYBOARD READ
CALL EMU_VDADISP ; DO IT
CALL ANSI_VDADISP ; DO IT
LD A,E ; CHARACTER READ TO A
BIT 7,A ; TEST HIGH BIT
JR NZ,ANSI_IST1 ; HANDLE $80 OR HIGHER AS SPECIAL CHAR
@@ -198,9 +208,8 @@ ANSI_QUERY:
; REPORT DEVICE
;
ANSI_DEVICE:
;LD D,CIODEV_VDA ; D := DEVICE TYPE
LD A,(ANSI_CIODEV) ; GET THE CURRENT CIO DEVICE *DEBUG*
LD D,A ; AND PASS BACK IN D *DEBUG*
LD A,(ANSI_CIOUNIT) ; GET THE CURRENT CIO DEVICE
LD D,A ; AND PASS BACK IN D
LD E,C ; E := PHYSICAL UNIT
XOR A ; SIGNAL SUCCESS
RET
@@ -554,7 +563,7 @@ ANSI_RENDER:
ANSI_RENDER1: ; WRITE THE CHARACTER
POP DE ; RECOVER THE CHAR TO RENDER
LD B,BF_VDAWRC ; FUNC := WRITE CHARACTER
CALL EMU_VDADISP ; SPIT OUT THE RAW CHARACTER
CALL ANSI_VDADISP ; SPIT OUT THE RAW CHARACTER
;
; END OF LINE HANDLING (CHECK FOR RIGHT MARGIN EXCEEDED)
LD A,(ANSI_COLS) ; GET SCREEN COLUMNS
@@ -582,7 +591,7 @@ ANSI_FF:
CALL MULT8 ; HL := H * E TO GET TOTAL SCREEN POSITIONS
LD E,' ' ; FILL SCREEN WITH BLANKS
LD B,BF_VDAFIL ; SET FUNCTION TO FILL
CALL EMU_VDADISP ; PERFORM FILL
CALL ANSI_VDADISP ; PERFORM FILL
JP ANSI_XY ; HOME CURSOR AND RETURN
;
ANSI_BS:
@@ -610,7 +619,7 @@ ANSI_LF: ; LINEFEED (FORWARD INDEX)
ANSI_LF1: ; SCROLL
LD E,1 ; SCROLL FORWARD 1 LINE
LD B,BF_VDASCR ; SET FUNCTION TO SCROLL
JP EMU_VDADISP ; DO THE SCROLLING AND RETURN
JP ANSI_VDADISP ; DO THE SCROLLING AND RETURN
;
ANSI_RI: ; REVERSE INDEX (REVERSE LINEFEED)
LD A,(ANSI_ROW) ; GET CURRENT ROW
@@ -653,7 +662,7 @@ ANSI_HT2: ; COMMIT THE NEW COLUMN VALUE
ANSI_RI1: ; REVERSE SCROLL
LD E,-1 ; SCROLL -1 LINES (REVERSE SCROLL 1 LINE)
LD B,BF_VDASCR ; SET FUNCTION TO SCROLL
JP EMU_VDADISP ; DO THE SCROLLING AND RETURN
JP ANSI_VDADISP ; DO THE SCROLLING AND RETURN
;
;
;
@@ -915,7 +924,7 @@ ANSI_ED1: ; ERASE CURSOR THRU EOS
ANSI_ED2: ; ERASE START THRU CURSOR
LD DE,0 ; CURSOR TO 0,0 FOR NOW
LD B,BF_VDASCP ; SET FUNCTION TO SET CURSOR POSITION
CALL EMU_VDADISP ; DO IT
CALL ANSI_VDADISP ; DO IT
LD DE,(ANSI_POS) ; GET ORIGINAL CURSOR POSITION
CALL ANSI_XY2IDX ; HL NOW HAS INDEX
INC HL ; ADD 1 POSITION TO ERASE THRU CURSOR POSITION
@@ -924,14 +933,14 @@ ANSI_ED2: ; ERASE START THRU CURSOR
ANSI_ED3: ; ERASE FULL DISPLAY
LD DE,0 ; CURSOR POS 0,0
LD B,BF_VDASCP ; FUNCTION = SET CURSOR POS
CALL EMU_VDADISP ; DO IT
CALL ANSI_VDADISP ; DO IT
LD DE,(ANSI_DIM) ; DE := SCREEN ROWS/COLS
CALL ANSI_XY2IDX ; HL := CHARS ON SCREEN
;
ANSI_ED4: ; COMMON FILL PROCESS COMPLETION
LD E,' ' ; FILL WITH BLANK
LD B,BF_VDAFIL ; FUNCTION = FILL
CALL EMU_VDADISP ; DO IT
CALL ANSI_VDADISP ; DO IT
JP ANSI_XY ; RESTORE CURSOR POS AND RETURN
;
;
@@ -963,7 +972,7 @@ ANSI_EL2: ; ERASE START THRU CURSOR
LD DE,(ANSI_POS) ; GET CURSOR POS
LD E,0 ; COL := 0, START OF ROW
LD B,BF_VDASCP ; SET FUNCTION TO SET CURSOR POSITION
CALL EMU_VDADISP ; DO IT
CALL ANSI_VDADISP ; DO IT
LD HL,(ANSI_POS) ; GET ORIGINAL CURSOR POSITION
LD H,0 ; ONLY ERASE COLUMNS
INC HL ; ADD 1 POSITION TO ERASE THRU CURSOR POSITION
@@ -973,7 +982,7 @@ ANSI_EL3: ; ERASE FULL LINE
LD DE,(ANSI_POS) ; GET CURSOR POSITION
LD E,0 ; COL := 0 (START OF ROW)
LD B,BF_VDASCP ; FUNC = SET CURSOR POS
CALL EMU_VDADISP ; DO IT
CALL ANSI_VDADISP ; DO IT
LD HL,(ANSI_DIM) ; GET SCREEN DIM IN HL
LD H,0 ; H := 0, HL IS NOW CHARS IN A LINE
JR ANSI_EL4 ; COMPLETE THE FILL
@@ -1009,7 +1018,7 @@ ANSI_IL3:
; SET CURSOR POSITION TO DEST
PUSH DE ; PRESERVE DE
LD B,BF_VDASCP ; FUNC = SET CURSOR POS
CALL EMU_VDADISP ; DO IT
CALL ANSI_VDADISP ; DO IT
POP DE ; RECOVER DE
; SET HL TO LENGTH
LD HL,(ANSI_DIM) ; GET DIMENSIONS
@@ -1023,14 +1032,14 @@ ANSI_IL3:
; DO THE COPY
PUSH DE ; PRESERVE DE
LD B,BF_VDACPY ; FUNCTION = COPY
CALL EMU_VDADISP ; COPY THE LINE
CALL ANSI_VDADISP ; COPY THE LINE
POP DE ; RECOVER DE
JR ANSI_IL3 ; LOOP
;
ANSI_IL4: ;CLEAR INSERTED LINE
LD E,' ' ; FILL WITH BLANK
LD B,BF_VDAFIL ; FUNCTION = FILL
JP EMU_VDADISP ; DO IT
JP ANSI_VDADISP ; DO IT
;
;
;
@@ -1060,7 +1069,7 @@ ANSI_DL3:
; SET CURSOR TO START OF DEST ROW
PUSH DE ; PRESERVE DE
LD B,BF_VDASCP ; FUNC = SET CURSOR POS
CALL EMU_VDADISP ; DO IT
CALL ANSI_VDADISP ; DO IT
POP DE ; RECOVER DE
; SET DE TO SOURCE POS
INC D ; NEXT ROW, DE NOW HAS SOURCE
@@ -1074,14 +1083,14 @@ ANSI_DL3:
; DO THE COPY
PUSH DE ; PRESERVE DE
LD B,BF_VDACPY ; FUNCTION = COPY
CALL EMU_VDADISP ; COPY THE LINE
CALL ANSI_VDADISP ; COPY THE LINE
POP DE ; RECOVER DE
JR ANSI_DL3 ; LOOP
;
ANSI_DL4: ;CLEAR BOTTOM LINE
LD E,' ' ; FILL WITH BLANK
LD B,BF_VDAFIL ; FUNCTION = FILL
JP EMU_VDADISP ; DO IT
JP ANSI_VDADISP ; DO IT
;
;
;
@@ -1105,11 +1114,11 @@ ANSI_SGR1: ; PROCESSING LOOP
LD A,(ANSI_ATTR) ; GET THE ATTRIBUTE VALUE
LD E,A ; MOVE TO E
LD B,BF_VDASAT ; SET ATTRIBUTE FUNCTION
CALL EMU_VDADISP ; CALL THE FUNCTION
CALL ANSI_VDADISP ; CALL THE FUNCTION
LD A,(ANSI_COLOR) ; GET THE COLOR VALUE
LD E,A ; MOVE TO E
LD B,BF_VDASCO ; SET ATTRIBUTE FUNCTION
CALL EMU_VDADISP ; CALL THE FUNCTION
CALL ANSI_VDADISP ; CALL THE FUNCTION
RET ; RETURN
;
ANSI_SGR2: ; HANDLE THE REQUEST CODE
@@ -1197,7 +1206,7 @@ ANSI_DECALN: ; DEC SCREEN ALIGNMENT TEST
CALL MULT8 ; HL := H * E TO GET TOTAL SCREEN POSITIONS
LD E,'E' ; FILL SCREEN WITH BLANKS
LD B,BF_VDAFIL ; SET FUNCTION TO FILL
CALL EMU_VDADISP ; PERFORM FILL
CALL ANSI_VDADISP ; PERFORM FILL
JP ANSI_XY ; HOME CURSOR AND RETURN
;
;==================================================================================================
@@ -1318,7 +1327,7 @@ ANSI_XY:
LD (ANSI_WRAP),A ; CLEAR THE WRAP FLAG
LD DE,(ANSI_POS) ; GET THE DESIRED CURSOR POSITION
LD B,BF_VDASCP ; SET FUNCTION TO SET CURSOR POSITION
JP EMU_VDADISP ; REPOSITION CURSOR
JP ANSI_VDADISP ; REPOSITION CURSOR
;
; CONVERT XY COORDINATES IN DE INTO LINEAR INDEX IN HL
; D=ROW, E=COL
@@ -1367,4 +1376,4 @@ ANSI_PARIDX .DB 0 ; NUMBER OF PARAMETERS RECORDED
ANSI_PARLST .FILL 16,0 ; PARAMETER VALUE LIST (UP TO 16 BYTE VALUES)
ANSI_VARLEN .EQU $ - ANSI_VARS
;
ANSI_CIODEV .DB 0 ; *DEBUG*
ANSI_CIOUNIT .DB $FF ; CIO UNIT NUMBER OF PARENT VDA

View File

@@ -42,13 +42,13 @@ CVDU_INIT:
LD C,CIODEV_CVDU ; DEVICE TYPE
LD DE,0 ; UNIT DATA BLOB ADDRESS
CALL CIO_ADDENT ; ADD ENTRY, A := UNIT ASSIGNED
LD (CVDU_CIOUNIT),A ; SAVE IT LOCALLY
LD (HCB + HCB_CRTDEV),A ; SET OURSELVES AS THE CRT DEVICE
CALL TSTPT ; *DEBUG*
LD D,VDAEMU ; DEFAULT EMULATION
LD E,0 ; VIDEO MODE = 0
JP CVDU_VDAINI
;
;
;======================================================================
; CVDU DRIVER - CHARACTER I/O (CIO) DISPATCHER AND FUNCTIONS
;======================================================================
@@ -101,12 +101,12 @@ CVDU_VDAINI:
POP DE ; RECOVER EMULATION TYPE
; INITIALIZE EMULATION
LD C,D ; EMULATION MODE TO C
LD B,D ; EMULATION TYPE TO B
LD A,(CVDU_CIOUNIT) ; CIO UNIT NUMBER
LD C,A ; ... IS PASSED IN C
LD DE,CVDU_DISPATCH ; DISPATCH ADDRESS TO DE
CALL TSTPT ; *DEBUG*
CALL EMU_INIT ; INITIALIZE EMULATION, DE := CIO DISPATCHER
LD (CVDU_CIODISPADR),DE ; SAVE EMULATORS CIO DISPATCH INTERFACE ADDRESS
CALL TSTPT ; *DEBUG*
XOR A ; SIGNAL SUCCESS
RET
@@ -649,6 +649,8 @@ CVDU_BLKCPY1:
; CVDU DRIVER - DATA
;==================================================================================================
;
CVDU_CIOUNIT .DB $FF ; LOCAL COPY OF OUR CIO UNIT NUMBER
;
CVDU_ATTR .DB 0 ; CURRENT COLOR
CVDU_POS .DW 0 ; CURRENT DISPLAY POSITION
;

File diff suppressed because it is too large Load Diff

View File

@@ -687,6 +687,83 @@ GETLNDONE:
LD (HL),00H ; STORE NULL IN BUFFER
POP DE ; RESTORE DE
RET ;
#IF (PLATFORM == PLT_UNA)
;
;__COUT_______________________________________________________________________
;
; OUTPUT CHARACTER FROM A
;_____________________________________________________________________________
;
COUT:
; SAVE ALL INCOMING REGISTERS
PUSH AF
PUSH BC
PUSH DE
PUSH HL
;
; OUTPUT CHARACTER TO CONSOLE VIA UBIOS
LD E,A
LD BC,$12
RST 08
;
; RESTORE ALL REGISTERS
POP HL
POP DE
POP BC
POP AF
RET
RET
;
;__CIN________________________________________________________________________
;
; INPUT CHARACTER TO A
;_____________________________________________________________________________
;
CIN:
; SAVE INCOMING REGISTERS (AF IS OUTPUT)
PUSH BC
PUSH DE
PUSH HL
;
; INPUT CHARACTER FROM CONSOLE VIA UBIOS
LD BC,$11
RST 08
LD A,E
;
; RESTORE REGISTERS (AF IS OUTPUT)
POP HL
POP DE
POP BC
RET
RET
;
;__CST________________________________________________________________________
;
; RETURN INPUT STATUS IN A (0 = NO CHAR, !=0 CHAR WAITING)
;_____________________________________________________________________________
;
CST:
; SAVE INCOMING REGISTERS (AF IS OUTPUT)
PUSH BC
PUSH DE
PUSH HL
;
; GET CONSOLE INPUT STATUS VIA UBIOS
LD BC,$13
RST 08
LD A,E
;
; RESTORE REGISTERS (AF IS OUTPUT)
POP HL
POP DE
POP BC
RET
RET
#ELSE
;
;__COUT_______________________________________________________________________
;
@@ -757,6 +834,8 @@ CST:
POP DE
POP BC
RET
#ENDIF
;
;__KIN________________________________________________________________________
;

View File

@@ -764,18 +764,6 @@ FD_SELECTUNIT:
;
;
FD_SEEK:
;CALL TSTPT ; *DEBUG*
;PUSH BC ; *DEBUG*
;CALL PC_COLON
;PUSH HL
;POP BC
;CALL PRTHEXWORD
;PUSH DE
;POP BC
;CALL PRTHEXWORD
;CALL PC_SPACE
;POP BC ; *DEBUG*
LD (HSTSEC),DE ; RECORD HEAD/SECTOR
LD (HSTTRK),HL ; RECORD TRACK
XOR A ; SIGNAL SUCCESS
@@ -784,7 +772,6 @@ FD_SEEK:
;
;
FD_READ:
;CALL TSTPT ; *DEBUG*
LD (FD_DSKBUF),HL ; SAVE DISK BUFFER ADDRESS
LD A,DOP_READ
JR FD_RUN
@@ -826,12 +813,10 @@ FD_RETRY:
PUSH BC
CALL FD_START
POP BC
;CALL TSTPT ; *DEBUG*
LD A,(FST_RC) ; CHECK RESULT
OR A
RET Z ; SUCCESS
;CALL TSTPT ; *DEBUG*
DJNZ FD_RETRY ; RETRY TILL COUNTER EXHAUSTED
@@ -1297,10 +1282,6 @@ FOP_CMD2: ; START OF LOOP TO SEND NEXT BYTE
FOP_CMD4: ; START OF STATUS LOOP, WAIT FOR FDC TO BE READY FOR BYTE
CALL DELAY ; FDC MAY TAKE UP TO 12us TO UPDATE MSR
IN A,(FDC_MSR) ; READ MAIN STATUS REGISTER
; PUSH AF ; *DEBUG*
; CALL PC_SPACE ; *DEBUG*
; CALL PRTHEXBYTE ; *DEBUG*
; POP AF ; *DEBUG*
AND 0C0H ; ISOLATE RQM/DIO
CP 080H ; LOOKING FOR RQM=1, DIO=0 (FDC READY FOR A BYTE)
JR Z,FOP_CMD6 ; GOOD, GO TO SEND BYTE

View File

@@ -617,8 +617,8 @@ HB_INITTBL:
#IF (UPD7220ENABLE)
.DW UPD7220_INIT
#ENDIF
#IF (N8VENABLE)
.DW N8V_INIT
#IF (SCGENABLE)
.DW SCG_INIT
#ENDIF
#IF (DSKYENABLE)
.DW DSKY_INIT
@@ -751,10 +751,6 @@ CIO_DISPATCH:
CALL PANIC ; PANIC
OR $FF ; SIGNAL ERROR
RET ; AND RETURN
;
CIO_DISPATCH_CON:
LD A,(HCB + HCB_CONDEV) ; PUT CONSOLE UNIT NUMBER IN A
JR CIO_DISPATCH1 ; AND CONTINUE
;;
;CIO_DISPATCH_VDA:
; LD A,B ; FUNCTION NUMBER TO A
@@ -763,6 +759,10 @@ CIO_DISPATCH_CON:
; POP HL ; RESTORE HL/STACK
; JP EMU_DISPATCH ; CHAIN TO EMULATOR DISPATCH
;
CIO_DISPATCH_CON:
LD A,(HCB + HCB_CONDEV) ; PUT CONSOLE UNIT NUMBER IN A
; FALL THRU
;
CIO_DISPATCH1:
;
INC HL ; BUMP PAST COUNT PREFIX TO START OF TABLE
@@ -804,9 +804,9 @@ CIO_DISPATCH1:
CP CIODEV_UPD7220
JP Z,UPD7220_DISPCIO
#ENDIF
#IF (N8VENABLE)
CP CIODEV_N8V
JP Z,N8V_DISPCIO
#IF (SCGENABLE)
CP CIODEV_SCG
JP Z,SCG_DISPCIO
#ENDIF
CALL PANIC
RET
@@ -1069,10 +1069,13 @@ RTC_DISPATCH:
; THE VDA DRIVER CALLS EMU_INIT TO DISPATCH THE INITIALIZATION REQUEST
; TO THE CORRRECT EMULATION MODULE.
;
; C: EMULATION TYPE
; B: EMULATION TYPE ID (1=TTY, 2=ANSI, ETC.)
; C: VDA DRIVER'S CIO UNIT NUMBER
; DE: VDA DRIVER'S DISPATCH ADDRESS
;
;
EMU_INIT:
LD A,C ; GET REQUESTED EMULATION
LD A,B ; GET REQUESTED EMULATION
;
DEC A ; 1 = TTY
#IF (TTYENABLE)
@@ -1088,26 +1091,9 @@ EMU_INIT:
RET
;
EMU_INIT1:
CALL TSTPT ; *DEBUG*
JP (HL) ; DO THE EMULATOR INIT, DE := CIO DISPATCH ADR
;
;==================================================================================================
; VDA DISPATCHING FOR EMULATION HANDLERS
;==================================================================================================
;
; BELOW IS THE DYNAMICALLY MANAGED EMULATION VDA DISPATCH.
; EMULATION HANDLERS CAN CALL EMU_VDADISP TO INVOKE A VDA
; FUNCTION. EMU_VDADISPADR IS USED TO MARK THE LOCATION
; OF THE VDA DISPATCH ADDRESS. THIS ALLOWS US TO MODIFY
; THE CODE DYNAMICALLY WHEN EMULATION IS INITIALIZED AND
; A NEW VDA TARGET IS SPECIFIED.
;
EMU_VDADISP:
JP PANIC ; JP TGT IS UPDATED DYNAMICALLY
;
EMU_VDADISPADR .EQU $ - 2 ; ADDRESS PORTION OF JP INSTRUCTION ABOVE
;
;==================================================================================================
; VIDEO DISPLAY ADAPTER DEVICE DISPATCHER
;==================================================================================================
;
@@ -1130,9 +1116,9 @@ VDA_DISPATCH:
CP VDADEV_7220
JP Z,UPD7220_DISPATCH
#ENDIF
#IF (N8VENABLE)
CP VDADEV_N8V
JP Z,N8V_DISPATCH
#IF (SCGENABLE)
CP VDADEV_SCG
JP Z,SCG_DISPATCH
#ENDIF
CALL PANIC
;
@@ -1145,29 +1131,27 @@ VDA_DISPATCH:
SYS_DISPATCH:
LD A,B ; GET REQUESTED FUNCTION
AND $0F ; ISOLATE SUB-FUNCTION
JR Z,SYS_SETBNK ; $F0
JP Z,SYS_SETBNK ; $F0
DEC A
JR Z,SYS_GETBNK ; $F1
JP Z,SYS_GETBNK ; $F1
DEC A
JP Z,SYS_COPY ; $F2
DEC A
JP Z,SYS_XCOPY ; $F3
DEC A
JR Z,SYS_ALLOC ; $F4
JP Z,SYS_ALLOC ; $F4
DEC A
JR Z,SYS_GET ; $F5
JP Z,SYS_FREE ; $F5
DEC A
JR Z,SYS_SET ; $F6
JP Z,SYS_VER ; $F6
DEC A
;JR Z,SYS_??? ; $F7
JP Z,SYS_GET ; $F7
DEC A
JR Z,SYS_HCBGETB ; $F8
JP Z,SYS_SET ; $F8
DEC A
JR Z,SYS_HCBPUTB ; $F9
JP Z,SYS_PEEK ; $F9
DEC A
JR Z,SYS_HCBGETW ; $FA
DEC A
JR Z,SYS_HCBPUTW ; $FB
JP Z,SYS_POKE ; $FA
CALL PANIC ; INVALID
;
; SET ACTIVE MEMORY BANK AND RETURN PREVIOUSLY ACTIVE MEMORY BANK
@@ -1256,33 +1240,100 @@ SYS_XCOPY:
SYS_ALLOC:
JP HB_ALLOC
;
; GET SYSTEM INFORMATION
; ITEM TO RETURN INDICATED IN C
; FREE HEAP MEMORY BY SIMPLY RELEASING ALL
; MEMORY BEYOND POINTER IN HL.
; ON SUCCESS RETURN A == 0, AND Z SET
; ON FAILURE A <> 0 AND NZ SET AND HL TRASHED
; ALL OTHER REGISTERS PRESERVED
;
SYS_GET:
LD A,C ; GET REQUESTED SUB-FUNCTION
CP BF_SYSGET_VER
JR Z,SYS_GETVER
CP BF_SYSGET_CIOCNT
JR Z,SYS_GETCIOCNT
CP BF_SYSGET_DIOCNT
JR Z,SYS_GETDIOCNT
OR $FF ; SIGNAL ERROR
SYS_FREE:
CALL PANIC ; NOT YET IMPLEMENTED
OR $FF
RET
;
; GET THE CURRENT HBIOS VERSION
; ON INPUT, C=0
; RETURNS VERSION IN DE AS BCD
; D: MAJOR VERION IN TOP 4 BITS, MINOR VERSION IN LOW 4 BITS
; E: UPDATE VERION IN TOP 4 BITS, PATCH VERSION IN LOW 4 BITS
; L: PLATFORM ID
;
SYS_GETVER:
SYS_VER:
LD DE,0 | (RMJ << 12) | (RMN << 8) | (RUP << 4) | RTP
LD L,PLATFORM
XOR A
RET
;
; GET SYSTEM INFORMATION
; ITEM TO RETURN INDICATED IN C
;
SYS_GET:
LD A,C ; GET REQUESTED SUB-FUNCTION
CP BF_SYSGET_CIOCNT
JR Z,SYS_GETCIOCNT
CP BF_SYSGET_DIOCNT
JR Z,SYS_GETDIOCNT
CP BF_SYSGET_BOOTINFO
JR Z,SYS_GETBOOTINFO
CP BF_SYSGET_CPUINFO
JR Z,SYS_GETCPUINFO
CP BF_SYSGET_MEMINFO
JR Z,SYS_GETMEMINFO
CP BF_SYSGET_BNKINFO
JR Z,SYS_GETBNKINFO
OR $FF ; SIGNAL ERROR
RET
;
; GET BOOT INFORMATION
; RETURNS:
; L: BOOT BANK ID
; DE: BOOT DISK VOLUME (UNIT/SLICE)
;
SYS_GETBOOTINFO:
LD A,(HCB + HCB_BOOTBID)
LD L,A
LD DE,(HCB + HCB_BOOTVOL)
XOR A
RET
;
; GET CPU INFORMATION
; RETURNS:
; H: Z80 CPU VARIANT
; L: CPU SPEED IN MHZ
; DE: CPU SPEED IN KHZ
;
SYS_GETCPUINFO:
LD H,0 ; NOT YET DEFINED
LD A,(HCB + HCB_CPUMHZ)
LD L,A
LD DE,(HCB + HCB_CPUKHZ)
XOR A
RET
;
; GET MEMORY INFORMATION
; RETURNS:
; D: COUNT OF ROM BANKS
; E: COUNT OF RAM BANKS
;
SYS_GETMEMINFO:
LD D,ROMSIZE / 32
LD D,RAMSIZE / 32
XOR A
RET
;
; GET SERIAL UNIT COUNT
; RETURNS:
; D: HBIOS BANK ID
; E: USER BANK ID
;
SYS_GETBNKINFO:
LD A,(HCB + HCB_BIDBIOS)
LD D,A
LD A,(HCB + HCB_BIDUSR)
LD E,A
XOR A
RET
;
; GET SERIAL UNIT COUNT
;
SYS_GETCIOCNT:
@@ -1298,63 +1349,93 @@ SYS_GETDIOCNT:
LD E,A ; PUT IT IN E
XOR A ; SIGNALS SUCCESS
RET
;
; SET SYSTEM PARAMETERS
; PARAMETER(S) TO SET INDICATED IN C
;
SYS_SET:
LD A,C ; GET REQUESTED SUB-FUNCTION
CP BF_SYSSET_BOOTINFO
JR Z,SYS_SETBOOTINFO
OR $FF ; SIGNAL ERROR
RET
;
; GET HCB VALUE BYTE
; C: HCB INDEX (OFFSET INTO HCB)
; RETURN BYTE VALUE IN E
; SET BOOT INFORMATION
; ON ENTRY:
; L: BOOT BANK ID
; DE: BOOT DISK VOLUME (UNIT/SLICE)
;
SYS_HCBGETB:
CALL SYS_HCBPTR ; LOAD HL WITH PTR
LD E,(HL) ; GET BYTE VALUE
RET ; DONE
;
; PUT HCB VALUE BYTE
; C: HCB INDEX (OFFSET INTO HCB)
; E: VALUE TO WRITE
;
SYS_HCBPUTB:
CALL SYS_HCBPTR ; LOAD HL WITH PTR
LD (HL),E ; PUT BYTE VALUE
SYS_SETBOOTINFO:
LD A,L
LD (HCB + HCB_BOOTBID),A
LD (HCB + HCB_BOOTVOL),DE
XOR A
RET
;
; GET HCB VALUE WORD
; C: HCB INDEX (OFFSET INTO HCB)
; RETURN WORD VALUE IN DE
; RETURN A BYTE OF MEMORY FROM HBIOS BANK
; ENTRY: HL=ADDRESS IN HBIOS BANK (0H-7FFFH)
; RETURN: C=BYTE VALUE
;
SYS_HCBGETW:
CALL SYS_HCBPTR ; LOAD HL WITH PTR
LD E,(HL) ; GET BYTE VALUE
INC HL
LD D,(HL) ; GET BYTE VALUE
RET ; DONE
;
; PUT HCB VALUE WORD
; C: HCB INDEX (OFFSET INTO HCB)
; DE: VALUE TO WRITE
;
SYS_HCBPUTW:
CALL SYS_HCBPTR ; LOAD HL WITH PTR
LD (HL),E ; PUT BYTE VALUE
INC HL
LD (HL),D ; PUT BYTE VALUE
SYS_PEEK:
LD C,(HL)
XOR A
RET
;
; CALCULATE REAL ADDRESS OF HCB VALUE FROM HCB OFFSET
; WRITE A BYTE OF MEMORY TO HBIOS BANK
; ENTRY: HL=ADDRESS IN HBIOS BANK (0H-7FFFH)
; RETURN: C=BYTE VALUE
;
SYS_HCBPTR:
LD A,C ; LOAD INDEX (HCB OFFSET)
LD HL,HCB ; GET HCB ADDRESS
JP ADDHLA ; CALC REAL ADDRESS AND RET
SYS_POKE:
LD (HL),C
XOR A
RET
;;
;; GET HCB VALUE BYTE
;; C: HCB INDEX (OFFSET INTO HCB)
;; RETURN BYTE VALUE IN E
;;
;SYS_HCBGETB:
; CALL SYS_HCBPTR ; LOAD HL WITH PTR
; LD E,(HL) ; GET BYTE VALUE
; RET ; DONE
;;
;; PUT HCB VALUE BYTE
;; C: HCB INDEX (OFFSET INTO HCB)
;; E: VALUE TO WRITE
;;
;SYS_HCBPUTB:
; CALL SYS_HCBPTR ; LOAD HL WITH PTR
; LD (HL),E ; PUT BYTE VALUE
; RET
;;
;; GET HCB VALUE WORD
;; C: HCB INDEX (OFFSET INTO HCB)
;; RETURN WORD VALUE IN DE
;;
;SYS_HCBGETW:
; CALL SYS_HCBPTR ; LOAD HL WITH PTR
; LD E,(HL) ; GET BYTE VALUE
; INC HL
; LD D,(HL) ; GET BYTE VALUE
; RET ; DONE
;;
;; PUT HCB VALUE WORD
;; C: HCB INDEX (OFFSET INTO HCB)
;; DE: VALUE TO WRITE
;;
;SYS_HCBPUTW:
; CALL SYS_HCBPTR ; LOAD HL WITH PTR
; LD (HL),E ; PUT BYTE VALUE
; INC HL
; LD (HL),D ; PUT BYTE VALUE
; RET
;
;; CALCULATE REAL ADDRESS OF HCB VALUE FROM HCB OFFSET
;;
;SYS_HCBPTR:
; LD A,C ; LOAD INDEX (HCB OFFSET)
; LD HL,HCB ; GET HCB ADDRESS
; JP ADDHLA ; CALC REAL ADDRESS AND RET
;
;==================================================================================================
; GLOBAL HBIOS FUNCTIONS
@@ -1544,12 +1625,12 @@ SIZ_UPD7220 .EQU $ - ORG_UPD7220
.ECHO " bytes.\n"
#ENDIF
;
#IF (N8VENABLE)
ORG_N8V .EQU $
#INCLUDE "n8v.asm"
SIZ_N8V .EQU $ - ORG_N8V
.ECHO "N8V occupies "
.ECHO SIZ_N8V
#IF (SCGENABLE)
ORG_SCG .EQU $
#INCLUDE "scg.asm"
SIZ_SCG .EQU $ - ORG_SCG
.ECHO "SCG occupies "
.ECHO SIZ_SCG
.ECHO " bytes.\n"
#ENDIF
;

View File

@@ -57,32 +57,37 @@ BF_SYSGETBNK .EQU BF_SYS + 1 ; GET CURRENT BANK
BF_SYSCPY .EQU BF_SYS + 2 ; COPY TO/FROM RAM/ROM MEMORY BANK
BF_SYSXCPY .EQU BF_SYS + 3 ; EXTENDED COPY SETUP
BF_SYSALLOC .EQU BF_SYS + 4 ; ALLOC HBIOS HEAP MEMORY
BF_SYSGET .EQU BF_SYS + 5 ; GET HBIOS INFO
BF_SYSSET .EQU BF_SYS + 6 ; SET HBIOS PARMS
BF_SYSHCBGETB .EQU BF_SYS + 8 ; GET HCB BYTE VALUE
BF_SYSHCBPUTB .EQU BF_SYS + 9 ; PUT HCB BYTE VALUE
BF_SYSHCBGETW .EQU BF_SYS + 10 ; GET HCB WORD VALUE
BF_SYSHCBPUTW .EQU BF_SYS + 11 ; PUT HCB BYTE VALUE
BF_SYSFREE .EQU BF_SYS + 5 ; FREE HBIOS HEAP MEMORY
BF_SYSVER .EQU BF_SYS + 6 ; GET HBIOS VERSION
BF_SYSGET .EQU BF_SYS + 7 ; GET HBIOS INFO
BF_SYSSET .EQU BF_SYS + 8 ; SET HBIOS PARAMETERS
BF_PEEK .EQU BF_SYS + 9 ; GET A BYTE FROM HBIOS BANK
BF_POKE .EQU BF_SYS + 10 ; PUT A BYTE TO HBIOS BANK
;
BF_SYSGET_CIOCNT .EQU $00 ; GET SERIAL UNIT COUNT
BF_SYSGET_CIOCNT .EQU $00 ; GET CHAR UNIT COUNT
BF_SYSGET_DIOCNT .EQU $10 ; GET DISK UNIT COUNT
BF_SYSGET_VER .EQU $F0 ; GET HBIOS VERSION INFO
BF_SYSGET_BOOTINFO .EQU $E0 ; GET BOOT INFORMATION
BF_SYSGET_CPUINFO .EQU $F0 ; GET CPU INFORMATION
BF_SYSGET_MEMINFO .EQU $F1 ; GET MEMORY CAPACTITY INFO
BF_SYSGET_BNKINFO .EQU $F2 ; GET BANK ASSIGNMENT INFO
;
; CHARACTER DEVICES
BF_SYSSET_BOOTINFO .EQU $E0 ; SET BOOT INFORMATION
;
; CHARACTER DEVICE IDS
;
CIODEV_UART .EQU $00
CIODEV_ASCI .EQU $10
CIODEV_VDU .EQU $20
CIODEV_CVDU .EQU $30
CIODEV_UPD7220 .EQU $40
CIODEV_N8V .EQU $50
CIODEV_SCG .EQU $50
CIODEV_PRPCON .EQU $60
CIODEV_PPPCON .EQU $70
CIODEV_CONSOLE .EQU $D0
CIODEV_VDA .EQU $E0
CIODEV_NUL .EQU $F0
;CIODEV_VDA .EQU $E0 ; DEPRECATED
;CIODEV_NUL .EQU $F0 ; DEPRECATED
;
; DISK DEVICES (ONLY FIRST NIBBLE RELEVANT, SECOND NIBBLE RESERVED FOR UNIT)
; DISK DEVICE IDS
;
DIODEV_MD .EQU $00
DIODEV_FD .EQU $10
@@ -95,13 +100,13 @@ DIODEV_PRPSD .EQU $70
DIODEV_PPPSD .EQU $80
DIODEV_HDSK .EQU $90
;
; VDA DEVICES (VIDEO DISPLAY ADAPTER)
; VDA DEVICE IDS
;
VDADEV_NONE .EQU $00 ; NO VDA DEVICE
VDADEV_VDU .EQU $10 ; ECB VDU - 6545 CHIP
VDADEV_CVDU .EQU $20 ; ECB COLOR VDU - 8563 CHIP (NOT IMP)
VDADEV_UPD7220 .EQU $30 ; ECB uP7220 (NOT IMPLEMENTED)
VDADEV_N8V .EQU $40 ; N8 ONBOARD VDA SUBSYSTEM
VDADEV_SCG .EQU $40 ; N8 ONBOARD VDA SUBSYSTEM
;
; EMULATION TYPES
;
@@ -141,11 +146,11 @@ HCB_BIDRAMDN .EQU $DD ; LAST BANK OF RAM DRIVE
HCB_BIDROMD0 .EQU $DE ; FIRST BANK OF ROM DRIVE
HCB_BIDROMDN .EQU $DF ; LAST BANK OF ROM DRIVE
; DEVICE LISTS (POINTS TO START OF LIST, PREFIXED BY ENTRY COUNT)
HCB_CDL .EQU $E0 + 1 ; CHARACTER DEVICES (MAX 7)
HCB_PDL .EQU $E8 + 1 ; PRINT DEVICE LIST (MAX 3)
HCB_VDL .EQU $EC + 1 ; VIDEO DEVICE LIST (MAX 3)
HCB_DDL .EQU $F0 + 1 ; DISK DEVICE LIST (MAX 15)
;; DEVICE LISTS (POINTS TO START OF LIST, PREFIXED BY ENTRY COUNT)
;HCB_CDL .EQU $E0 + 1 ; CHARACTER DEVICES (MAX 7)
;HCB_PDL .EQU $E8 + 1 ; PRINT DEVICE LIST (MAX 3)
;HCB_VDL .EQU $EC + 1 ; VIDEO DEVICE LIST (MAX 3)
;HCB_DDL .EQU $F0 + 1 ; DISK DEVICE LIST (MAX 15)
;
; HBIOS PROXY COMMON DATA BLOCK
; EXACTLY 32 BYTES AT $FFE0-$FFFF

View File

@@ -103,12 +103,13 @@ MD_CAP:
JR Z,MD_CAP1 ; UNIT 1
CALL PANIC ; PANIC ON INVALID UNIT
MD_CAP0:
LD HL,(HCB + HCB_ROMBANKS) ; POINT TO ROM BANK COUNT
LD A,(HCB + HCB_ROMBANKS) ; POINT TO ROM BANK COUNT
JR MD_CAP2
MD_CAP1:
LD HL,(HCB + HCB_RAMBANKS) ; POINT TO RAM BANK COUNT
LD A,(HCB + HCB_RAMBANKS) ; POINT TO RAM BANK COUNT
MD_CAP2:
LD H,(HL) ; H := # BANKS
SUB 4 ; SUBTRACT OUT RESERVED BANKS
LD H,A ; H := # BANKS
LD E,64 ; # 512 BYTE BLOCKS / BANK
CALL MULT8 ; HL := TOTAL # 512 BYTE BLOCKS
LD DE,0 ; NEVER EXCEEDS 64K, ZERO HIGH WORD
@@ -121,7 +122,6 @@ MD_GEOM:
; RAM/ROM DISKS ALLOW CHS STYLE ACCESS BY EMULATING
; A DISK DEVICE WITH 1 HEAD AND 16 SECTORS / TRACK.
CALL MD_CAP ; HL := CAPACITY IN BLOCKS
EX DE,HL ; SWAP
LD D,1 | $80 ; HEADS / CYL := 1 BY DEFINITION, SET LBA CAPABILITY BIT
LD E,16 ; SECTORS / TRACK := 16 BY DEFINTION
LD B,4 ; PREPARE TO DIVIDE BY 16

View File

@@ -219,9 +219,14 @@ GOCPM2:
LD BC,$01FC ; UNA FUNC: SET BOOTSTRAP HISTORY
RST 08 ; CALL UNA
#ELSE
LD B,BF_SYSHCBPUTW ; HB FUNC: PUT HCB WORD
LD C,HCB_BOOTVOL ; BOOT VOLUME (UNIT, SLICE)
LD DE,$0100
;LD B,BF_SYSHCBPUTW ; HB FUNC: PUT HCB WORD
;LD C,HCB_BOOTVOL ; BOOT VOLUME (UNIT, SLICE)
;LD DE,$0100
LD B,BF_SYSSET ; HB FUNC: SET HBIOS PARAMETER
LD C,BF_SYSSET_BOOTINFO ; HB SUBFUNC: SET BOOT INFO
LD A,(HB_CURBNK) ; GET CURRENT BANK ID FROM PROXY DATA
LD L,A ; ... AND SAVE AND BOOT BANK
LD DE,$0100 ; BOOT VOLUME (UNIT, SLICE)
RST 08
#ENDIF
JP CPM_ENT
@@ -571,8 +576,12 @@ DB_LOOP:
CALL NEWLINE ; FORMATTING
; PASS BOOT DEVICE/UNIT/LU TO CBIOS COLD BOOT
LD B,BF_SYSHCBPUTW ; HB FUNC: PUT HCB WORD
LD C,HCB_BOOTVOL ; BOOT VOLUME (DEV/UNIT, SLICE)
;LD B,BF_SYSHCBPUTW ; HB FUNC: PUT HCB WORD
;LD C,HCB_BOOTVOL ; BOOT VOLUME (DEV/UNIT, SLICE)
LD B,BF_SYSSET ; HB FUNC: SET HBIOS PARAMETER
LD C,BF_SYSSET_BOOTINFO ; HB SUBFUNC: SET BOOT INFO
LD A,(HB_CURBNK) ; GET CURRENT BANK ID FROM PROXY DATA
LD L,A ; ... AND SAVE AND BOOT BANK
LD A,(BL_DEVICE) ; LOAD BOOT DEVICE/UNIT
LD D,A ; SAVE IN D
LD A,(BL_LU) ; LOAD BOOT LU
@@ -887,6 +896,8 @@ BOOT:
; CONSOLE CHARACTER I/O HELPER ROUTINES (REGISTERS PRESERVED)
;==================================================================================================
;
#IF (PLATFORM != PLT_UNA)
;
; OUTPUT CHARACTER FROM A
;
COUT:
@@ -948,6 +959,71 @@ CST:
POP BC
RET
;
#ENDIF
;
#IF (PLATFORM == PLT_UNA)
;
; OUTPUT CHARACTER FROM A
;
COUT:
; SAVE ALL INCOMING REGISTERS
PUSH AF
PUSH BC
PUSH DE
PUSH HL
;
; OUTPUT CHARACTER TO CONSOLE VIA UBIOS
LD E,A
LD BC,$12
RST 08
;
; RESTORE ALL REGISTERS
POP HL
POP DE
POP BC
POP AF
RET
;
; INPUT CHARACTER TO A
;
CIN:
; SAVE INCOMING REGISTERS (AF IS OUTPUT)
PUSH BC
PUSH DE
PUSH HL
;
; INPUT CHARACTER FROM CONSOLE VIA UBIOS
LD BC,$11
RST 08
LD A,E
;
; RESTORE REGISTERS (AF IS OUTPUT)
POP HL
POP DE
POP BC
RET
;
; RETURN INPUT STATUS IN A (0 = NO CHAR, !=0 CHAR WAITING)
;
CST:
; SAVE INCOMING REGISTERS (AF IS OUTPUT)
PUSH BC
PUSH DE
PUSH HL
;
; GET CONSOLE INPUT STATUS VIA UBIOS
LD BC,$13
RST 08
LD A,E
;
; RESTORE REGISTERS (AF IS OUTPUT)
POP HL
POP DE
POP BC
RET
;
#ENDIF
;
; READ A CONSOLE CHARACTER AND CONVERT TO UPPER CASE
;
CINUC:

View File

@@ -11,82 +11,82 @@
; - IMPLEMENT DYNAMIC READ/WRITE OF CHARACTER BITMAP DATA?
;
;======================================================================
; N8V DRIVER - CONSTANTS
; SCG DRIVER - CONSTANTS
;======================================================================
;
N8V_CMDREG .EQU N8_BASE + $19 ; READ STATUS / WRITE REG SEL
N8V_DATREG .EQU N8_BASE + $18 ; READ/WRITE DATA
SCG_CMDREG .EQU N8_BASE + $19 ; READ STATUS / WRITE REG SEL
SCG_DATREG .EQU N8_BASE + $18 ; READ/WRITE DATA
;
N8V_ROWS .EQU 24
N8V_COLS .EQU 40
SCG_ROWS .EQU 24
SCG_COLS .EQU 40
;
; BELOW WAS TUNED FOR N8 AT 18MHZ WITH 3 IO WAIT STATES
; WILL NEED TO BE MODIFIED FOR DIFFERENT ACCESS SPEEDS
; IF YOU SEE SCREEN CORRUPTION, ADJUST THIS!!!
;
#DEFINE N8V_IODELAY NOP \ NOP \ NOP \ NOP \ NOP \ NOP
#DEFINE SCG_IODELAY NOP \ NOP \ NOP \ NOP \ NOP \ NOP
;
;======================================================================
; N8V DRIVER - INITIALIZATION
; SCG DRIVER - INITIALIZATION
;======================================================================
;
N8V_INIT:
PRTS("N8V: IO=0x$")
LD A,N8V_DATREG
SCG_INIT:
PRTS("SCG: IO=0x$")
LD A,SCG_DATREG
CALL PRTHEXBYTE
;
CALL N8V_CRTINIT ; SETUP THE N8V CHIP REGISTERS
CALL N8V_LOADFONT ; LOAD FONT DATA FROM ROM TO N8V STRORAGE
CALL SCG_CRTINIT ; SETUP THE SCG CHIP REGISTERS
CALL SCG_LOADFONT ; LOAD FONT DATA FROM ROM TO SCG STRORAGE
;
; ADD OURSELVES TO CIO DISPATCH TABLE
LD B,0 ; PHYSICAL UNIT IS ZERO
LD C,CIODEV_N8V ; DEVICE TYPE
LD C,CIODEV_SCG ; DEVICE TYPE
LD DE,0 ; UNIT DATA BLOB ADDRESS
CALL CIO_ADDENT ; ADD ENTRY, A := UNIT ASSIGNED
LD (SCG_CIOUNIT),A ; SAVE IT LOCALLY
LD (HCB + HCB_CRTDEV),A ; SET OURSELVES AS THE CRT DEVICE
CALL TSTPT ; *DEBUG*
LD D,VDAEMU ; DEFAULT EMULATION
LD E,0 ; VIDEO MODE = 0
JP N8V_VDAINI
JP SCG_VDAINI
;
;======================================================================
; N8V DRIVER - CHARACTER I/O (CIO) DISPATCHER AND FUNCTIONS
; SCG DRIVER - CHARACTER I/O (CIO) DISPATCHER AND FUNCTIONS
;======================================================================
;
N8V_DISPCIO:
SCG_DISPCIO:
JP PANIC
N8V_CIODISPADR .EQU $ - 2
SCG_CIODISPADR .EQU $ - 2
;
;======================================================================
; N8V DRIVER - VIDEO DISPLAY ADAPTER (VDA) DISPATCHER AND FUNCTIONS
; SCG DRIVER - VIDEO DISPLAY ADAPTER (VDA) DISPATCHER AND FUNCTIONS
;======================================================================
;
N8V_DISPATCH:
SCG_DISPATCH:
LD A,B ; GET REQUESTED FUNCTION
AND $0F ; ISOLATE SUB-FUNCTION
JP Z,N8V_VDAINI ; $40
JP Z,SCG_VDAINI ; $40
DEC A
JP Z,N8V_VDAQRY ; $41
JP Z,SCG_VDAQRY ; $41
DEC A
JP Z,N8V_VDARES ; $42
JP Z,SCG_VDARES ; $42
DEC A
JP Z,N8V_VDASCS ; $43
JP Z,SCG_VDASCS ; $43
DEC A
JP Z,N8V_VDASCP ; $44
JP Z,SCG_VDASCP ; $44
DEC A
JP Z,N8V_VDASAT ; $45
JP Z,SCG_VDASAT ; $45
DEC A
JP Z,N8V_VDASCO ; $46
JP Z,SCG_VDASCO ; $46
DEC A
JP Z,N8V_VDAWRC ; $47
JP Z,SCG_VDAWRC ; $47
DEC A
JP Z,N8V_VDAFIL ; $48
JP Z,SCG_VDAFIL ; $48
DEC A
JP Z,N8V_VDACPY ; $49
JP Z,SCG_VDACPY ; $49
DEC A
JP Z,N8V_VDASCR ; $4A
JP Z,SCG_VDASCR ; $4A
DEC A
JP Z,PPK_STAT ; $4B
DEC A
@@ -95,302 +95,302 @@ N8V_DISPATCH:
JP Z,PPK_READ ; $4D
CALL PANIC
N8V_VDAINI:
SCG_VDAINI:
; RESET VDA
PUSH DE ; SAVE EMULATION TYPE (IN D)
CALL N8V_VDARES ; RESET VDA
CALL SCG_VDARES ; RESET VDA
POP DE ; RECOVER EMULATION TYPE
; INITIALIZE EMULATION
LD C,D ; EMULATION MODE TO C
LD DE,N8V_DISPATCH ; DISPATCH ADDRESS TO DE
CALL TSTPT ; *DEBUG*
LD B,D ; EMULATION TYPE TO B
LD A,(SCG_CIOUNIT) ; CIO UNIT NUMBER
LD C,A ; ... IS PASSED IN C
LD DE,SCG_DISPATCH ; DISPATCH ADDRESS TO DE
CALL EMU_INIT ; INITIALIZE EMULATION, DE := CIO DISPATCHER
LD (N8V_CIODISPADR),DE ; SAVE EMULATORS CIO DISPATCH INTERFACE ADDRESS
CALL TSTPT ; *DEBUG*
LD (SCG_CIODISPADR),DE ; SAVE EMULATORS CIO DISPATCH INTERFACE ADDRESS
XOR A ; SIGNAL SUCCESS
RET
N8V_VDAQRY:
SCG_VDAQRY:
LD C,$00 ; MODE ZERO IS ALL WE KNOW
LD D,N8V_ROWS ; ROWS
LD E,N8V_COLS ; COLS
LD D,SCG_ROWS ; ROWS
LD E,SCG_COLS ; COLS
LD HL,0 ; EXTRACTION OF CURRENT BITMAP DATA NOT SUPPORTED YET
XOR A ; SIGNAL SUCCESS
RET
N8V_VDARES:
SCG_VDARES:
LD DE,0 ; ROW = 0, COL = 0
CALL N8V_XY ; SEND CURSOR TO TOP LEFT
CALL SCG_XY ; SEND CURSOR TO TOP LEFT
LD A,' ' ; BLANK THE SCREEN
LD DE,N8V_ROWS * N8V_COLS ; FILL ENTIRE BUFFER
CALL N8V_FILL ; DO IT
LD DE,SCG_ROWS * SCG_COLS ; FILL ENTIRE BUFFER
CALL SCG_FILL ; DO IT
LD DE,0 ; ROW = 0, COL = 0
CALL N8V_XY ; SEND CURSOR TO TOP LEFT
CALL SCG_XY ; SEND CURSOR TO TOP LEFT
XOR A
DEC A
LD (N8V_CURSAV),A
CALL N8V_SETCUR ; SET CURSOR
LD (SCG_CURSAV),A
CALL SCG_SETCUR ; SET CURSOR
XOR A ; SIGNAL SUCCESS
RET
N8V_VDASCS:
SCG_VDASCS:
CALL PANIC ; NOT IMPLEMENTED (YET)
N8V_VDASCP:
CALL N8V_CLRCUR
CALL N8V_XY ; SET CURSOR POSITION
CALL N8V_SETCUR
SCG_VDASCP:
CALL SCG_CLRCUR
CALL SCG_XY ; SET CURSOR POSITION
CALL SCG_SETCUR
XOR A ; SIGNAL SUCCESS
RET
N8V_VDASAT:
SCG_VDASAT:
XOR A ; NOT POSSIBLE, JUST SIGNAL SUCCESS
RET
N8V_VDASCO:
SCG_VDASCO:
XOR A ; NOT POSSIBLE, JUST SIGNAL SUCCESS
RET
N8V_VDAWRC:
CALL N8V_CLRCUR ; CURSOR OFF
SCG_VDAWRC:
CALL SCG_CLRCUR ; CURSOR OFF
LD A,E ; CHARACTER TO WRITE GOES IN A
CALL N8V_PUTCHAR ; PUT IT ON THE SCREEN
CALL N8V_SETCUR
CALL SCG_PUTCHAR ; PUT IT ON THE SCREEN
CALL SCG_SETCUR
XOR A ; SIGNAL SUCCESS
RET
N8V_VDAFIL:
CALL N8V_CLRCUR
SCG_VDAFIL:
CALL SCG_CLRCUR
LD A,E ; FILL CHARACTER GOES IN A
EX DE,HL ; FILL LENGTH GOES IN DE
CALL N8V_FILL ; DO THE FILL
CALL N8V_SETCUR
CALL SCG_FILL ; DO THE FILL
CALL SCG_SETCUR
XOR A ; SIGNAL SUCCESS
RET
N8V_VDACPY:
CALL N8V_CLRCUR
; LENGTH IN HL, SOURCE ROW/COL IN DE, DEST IS N8V_POS
SCG_VDACPY:
CALL SCG_CLRCUR
; LENGTH IN HL, SOURCE ROW/COL IN DE, DEST IS SCG_POS
; BLKCPY USES: HL=SOURCE, DE=DEST, BC=COUNT
PUSH HL ; SAVE LENGTH
CALL N8V_XY2IDX ; ROW/COL IN DE -> SOURCE ADR IN HL
CALL SCG_XY2IDX ; ROW/COL IN DE -> SOURCE ADR IN HL
POP BC ; RECOVER LENGTH IN BC
LD DE,(N8V_POS) ; PUT DEST IN DE
CALL N8V_BLKCPY ; DO A BLOCK COPY
CALL N8V_SETCUR
LD DE,(SCG_POS) ; PUT DEST IN DE
CALL SCG_BLKCPY ; DO A BLOCK COPY
CALL SCG_SETCUR
XOR A
RET
N8V_VDASCR:
CALL N8V_CLRCUR
N8V_VDASCR0:
SCG_VDASCR:
CALL SCG_CLRCUR
SCG_VDASCR0:
LD A,E ; LOAD E INTO A
OR A ; SET FLAGS
JR Z,N8V_VDASCR2 ; IF ZERO, WE ARE DONE
JR Z,SCG_VDASCR2 ; IF ZERO, WE ARE DONE
PUSH DE ; SAVE E
JP M,N8V_VDASCR1 ; E IS NEGATIVE, REVERSE SCROLL
CALL N8V_SCROLL ; SCROLL FORWARD ONE LINE
JP M,SCG_VDASCR1 ; E IS NEGATIVE, REVERSE SCROLL
CALL SCG_SCROLL ; SCROLL FORWARD ONE LINE
POP DE ; RECOVER E
DEC E ; DECREMENT IT
JR N8V_VDASCR0 ; LOOP
N8V_VDASCR1:
CALL N8V_RSCROLL ; SCROLL REVERSE ONE LINE
JR SCG_VDASCR0 ; LOOP
SCG_VDASCR1:
CALL SCG_RSCROLL ; SCROLL REVERSE ONE LINE
POP DE ; RECOVER E
INC E ; INCREMENT IT
JR N8V_VDASCR0 ; LOOP
N8V_VDASCR2:
CALL N8V_SETCUR
JR SCG_VDASCR0 ; LOOP
SCG_VDASCR2:
CALL SCG_SETCUR
XOR A
RET
;
;======================================================================
; N8V DRIVER - PRIVATE DRIVER FUNCTIONS
; SCG DRIVER - PRIVATE DRIVER FUNCTIONS
;======================================================================
;
;----------------------------------------------------------------------
; SET TMS9918 REGISTER VALUE
; N8V_SET WRITES VALUE IN A TO VDU REGISTER SPECIFIED IN C
; SCG_SET WRITES VALUE IN A TO VDU REGISTER SPECIFIED IN C
;----------------------------------------------------------------------
;
N8V_SET:
OUT (N8V_CMDREG),A ; WRITE IT
N8V_IODELAY
SCG_SET:
OUT (SCG_CMDREG),A ; WRITE IT
SCG_IODELAY
LD A,C ; GET THE DESIRED REGISTER
OR $80 ; SET BIT 7
OUT (N8V_CMDREG),A ; SELECT THE DESIRED REGISTER
N8V_IODELAY
OUT (SCG_CMDREG),A ; SELECT THE DESIRED REGISTER
SCG_IODELAY
RET
;
;----------------------------------------------------------------------
; SET TMS9918 READ/WRITE ADDRESS
; N8V_WR SETS TMS9918 TO BEGIN WRITING TO ADDRESS SPECIFIED IN HL
; N8V_RD SETS TMS9918 TO BEGIN READING TO ADDRESS SPECIFIED IN HL
; SCG_WR SETS TMS9918 TO BEGIN WRITING TO ADDRESS SPECIFIED IN HL
; SCG_RD SETS TMS9918 TO BEGIN READING TO ADDRESS SPECIFIED IN HL
;----------------------------------------------------------------------
;
N8V_WR:
SCG_WR:
PUSH HL
SET 6,H ; SET WRITE BIT
CALL N8V_RD
CALL SCG_RD
POP HL
RET
;
N8V_RD:
SCG_RD:
LD A,L
OUT (N8V_CMDREG),A
N8V_IODELAY
OUT (SCG_CMDREG),A
SCG_IODELAY
LD A,H
OUT (N8V_CMDREG),A
N8V_IODELAY
OUT (SCG_CMDREG),A
SCG_IODELAY
RET
;
;----------------------------------------------------------------------
; MOS 8563 DISPLAY CONTROLLER CHIP INITIALIZATION
;----------------------------------------------------------------------
;
N8V_CRTINIT:
SCG_CRTINIT:
; SET WRITE ADDRESS TO $0
LD HL,0
CALL N8V_WR
CALL SCG_WR
;
; FILL ENTIRE RAM CONTENTS
LD DE,$4000
N8V_CRTINIT1:
SCG_CRTINIT1:
XOR A
OUT (N8V_DATREG),A
OUT (SCG_DATREG),A
DEC DE
LD A,D
OR E
JR NZ,N8V_CRTINIT1
JR NZ,SCG_CRTINIT1
;
; INITIALIZE VDU REGISTERS
LD C,0 ; START WITH REGISTER 0
LD B,N8V_INIT9918LEN ; NUMBER OF REGISTERS TO INIT
LD HL,N8V_INIT9918 ; HL = POINTER TO THE DEFAULT VALUES
N8V_CRTINIT2:
LD B,SCG_INIT9918LEN ; NUMBER OF REGISTERS TO INIT
LD HL,SCG_INIT9918 ; HL = POINTER TO THE DEFAULT VALUES
SCG_CRTINIT2:
LD A,(HL) ; GET VALUE
CALL N8V_SET ; WRITE IT
CALL SCG_SET ; WRITE IT
INC HL ; POINT TO NEXT VALUE
INC C ; POINT TO NEXT REGISTER
DJNZ N8V_CRTINIT2 ; LOOP
DJNZ SCG_CRTINIT2 ; LOOP
RET
;
;----------------------------------------------------------------------
; LOAD FONT DATA
;----------------------------------------------------------------------
;
N8V_LOADFONT:
SCG_LOADFONT:
; SET WRITE ADDRESS TO $800
LD HL,$800
CALL N8V_WR
CALL SCG_WR
;
; FILL $800 BYTES FROM FONTDATA
LD HL,N8V_FONTDATA
LD HL,SCG_FONTDATA
LD DE,$100 * 8
N8V_LOADFONT1:
SCG_LOADFONT1:
LD B,8
N8V_LOADFONT2:
SCG_LOADFONT2:
LD A,(HL)
PUSH AF
INC HL
DJNZ N8V_LOADFONT2
DJNZ SCG_LOADFONT2
;
LD B,8
N8V_LOADFONT3:
SCG_LOADFONT3:
POP AF
OUT (N8V_DATREG),A
OUT (SCG_DATREG),A
DEC DE
DJNZ N8V_LOADFONT3
DJNZ SCG_LOADFONT3
;
LD A,D
OR E
JR NZ,N8V_LOADFONT1
JR NZ,SCG_LOADFONT1
;
RET
;
;----------------------------------------------------------------------
; VIRTUAL CURSOR MANAGEMENT
; N8V_SETCUR CONFIGURES AND DISPLAYS CURSOR AT CURRENT CURSOR LOCATION
; N8V_CLRCUR REMOVES THE CURSOR
; SCG_SETCUR CONFIGURES AND DISPLAYS CURSOR AT CURRENT CURSOR LOCATION
; SCG_CLRCUR REMOVES THE CURSOR
;
; VIRTUAL CURSOR IS GENERATED BY DYNAMICALLY CHANGING FONT GLYPH
; FOR CHAR 255 TO BE THE INVERSE OF THE GLYPH OF THE CHARACTER UNDER
; THE CURRENT CURSOR POSITION. THE CHARACTER CODE IS THEN SWITCH TO
; THE VALUE 255 AND THE ORIGINAL VALUE IS SAVED. WHEN THE DISPLAY
; NEEDS TO BE CHANGED THE PROCESS IS UNDONE. IT IS ESSENTIAL THAT
; ALL DISPLAY CHANGES BE BRACKETED WITH CALLS TO N8V_CLRCUR PRIOR TO
; CHANGES AND N8V_SETCUR AFTER CHANGES.
; ALL DISPLAY CHANGES BE BRACKETED WITH CALLS TO SCG_CLRCUR PRIOR TO
; CHANGES AND SCG_SETCUR AFTER CHANGES.
;----------------------------------------------------------------------
;
N8V_SETCUR:
SCG_SETCUR:
PUSH HL ; PRESERVE HL
PUSH DE ; PRESERVE DE
LD HL,(N8V_POS) ; GET CURSOR POSITION
CALL N8V_RD ; SETUP TO READ VDU BUF
IN A,(N8V_DATREG) ; GET REAL CHAR UNDER CURSOR
N8V_IODELAY ; DELAY
LD HL,(SCG_POS) ; GET CURSOR POSITION
CALL SCG_RD ; SETUP TO READ VDU BUF
IN A,(SCG_DATREG) ; GET REAL CHAR UNDER CURSOR
SCG_IODELAY ; DELAY
PUSH AF ; SAVE THE CHARACTER
CALL N8V_WR ; SETUP TO WRITE TO THE SAME PLACE
CALL SCG_WR ; SETUP TO WRITE TO THE SAME PLACE
LD A,$FF ; REPLACE REAL CHAR WITH 255
OUT (N8V_DATREG),A ; DO IT
N8V_IODELAY ; DELAY
OUT (SCG_DATREG),A ; DO IT
SCG_IODELAY ; DELAY
POP AF ; RECOVER THE REAL CHARACTER
LD B,A ; PUT IT IN B
LD A,(N8V_CURSAV) ; GET THE CURRENTLY SAVED CHAR
LD A,(SCG_CURSAV) ; GET THE CURRENTLY SAVED CHAR
CP B ; COMPARE TO CURRENT
JR Z,N8V_SETCUR3 ; IF EQUAL, BYPASS EXTRA WORK
JR Z,SCG_SETCUR3 ; IF EQUAL, BYPASS EXTRA WORK
LD A,B ; GET REAL CHAR BACK TO A
LD (N8V_CURSAV),A ; SAVE IT
LD (SCG_CURSAV),A ; SAVE IT
; GET THE GLYPH DATA FOR REAL CHARACTER
LD HL,0 ; ZERO HL
LD L,A ; HL IS NOW RAW CHAR INDEX
LD B,3 ; LEFT SHIFT BY 3 BITS
N8V_SETCUR0: ; MULT BY 8 FOR FONT INDEX
SCG_SETCUR0: ; MULT BY 8 FOR FONT INDEX
SLA L ; SHIFT LSB INTO CARRY
RL H ; SHFT MSB FROM CARRY
DJNZ N8V_SETCUR0 ; LOOP 3 TIMES
DJNZ SCG_SETCUR0 ; LOOP 3 TIMES
LD DE,$800 ; OFFSET TO START OF FONT TABLE
ADD HL,DE ; ADD TO FONT INDEX
CALL N8V_RD ; SETUP TO READ GLYPH
CALL SCG_RD ; SETUP TO READ GLYPH
LD B,8 ; 8 BYTES
LD HL,N8V_BUF ; INTO BUFFER
N8V_SETCUR1: ; READ GLYPH LOOP
IN A,(N8V_DATREG) ; GET NEXT BYTE
N8V_IODELAY ; IO DELAY
LD HL,SCG_BUF ; INTO BUFFER
SCG_SETCUR1: ; READ GLYPH LOOP
IN A,(SCG_DATREG) ; GET NEXT BYTE
SCG_IODELAY ; IO DELAY
LD (HL),A ; SAVE VALUE IN BUF
INC HL ; BUMP BUF POINTER
DJNZ N8V_SETCUR1 ; LOOP FOR 8 BYTES
DJNZ SCG_SETCUR1 ; LOOP FOR 8 BYTES
;
; NOW WRITE INVERTED GLYPH INTO FONT INDEX 255
LD HL,$800 + (255 * 8) ; LOC OF GLPYPH DATA FOR CHAR 255
CALL N8V_WR ; SETUP TO WRITE THE INVERTED GLYPH
CALL SCG_WR ; SETUP TO WRITE THE INVERTED GLYPH
LD B,8 ; 8 BYTES PER GLYPH
LD HL,N8V_BUF ; POINT TO BUFFER
N8V_SETCUR2: ; WRITE INVERTED GLYPH LOOP
LD HL,SCG_BUF ; POINT TO BUFFER
SCG_SETCUR2: ; WRITE INVERTED GLYPH LOOP
LD A,(HL) ; GET THE BYTE
INC HL ; BUMP THE BUF POINTER
XOR $FF ; INVERT THE VALUE
OUT (N8V_DATREG),A ; WRITE IT TO VDU
N8V_IODELAY ; IO DELAY
DJNZ N8V_SETCUR2 ; LOOP FOR ALL 8 BYTES OF GLYPH
OUT (SCG_DATREG),A ; WRITE IT TO VDU
SCG_IODELAY ; IO DELAY
DJNZ SCG_SETCUR2 ; LOOP FOR ALL 8 BYTES OF GLYPH
;
N8V_SETCUR3: ; RESTORE REGISTERS AND RETURN
SCG_SETCUR3: ; RESTORE REGISTERS AND RETURN
POP DE ; RECOVER DE
POP HL ; RECOVER HL
RET ; RETURN
;
;
;
N8V_CLRCUR: ; REMOVE VIRTUAL CURSOR FROM SCREEN
SCG_CLRCUR: ; REMOVE VIRTUAL CURSOR FROM SCREEN
PUSH HL ; SAVE HL
LD HL,(N8V_POS) ; POINT TO CURRENT CURSOR POS
CALL N8V_WR ; SET UP TO WRITE TO VDU
LD A,(N8V_CURSAV) ; GET THE REAL CHARACTER
OUT (N8V_DATREG),A ; WRITE IT
N8V_IODELAY ; IO DELAY
LD HL,(SCG_POS) ; POINT TO CURRENT CURSOR POS
CALL SCG_WR ; SET UP TO WRITE TO VDU
LD A,(SCG_CURSAV) ; GET THE REAL CHARACTER
OUT (SCG_DATREG),A ; WRITE IT
SCG_IODELAY ; IO DELAY
POP HL ; RECOVER HL
RET ; RETURN
;
@@ -398,9 +398,9 @@ N8V_CLRCUR: ; REMOVE VIRTUAL CURSOR FROM SCREEN
; SET CURSOR POSITION TO ROW IN D AND COLUMN IN E
;----------------------------------------------------------------------
;
N8V_XY:
CALL N8V_XY2IDX ; CONVERT ROW/COL TO BUF IDX
LD (N8V_POS),HL ; SAVE THE RESULT (DISPLAY POSITION)
SCG_XY:
CALL SCG_XY2IDX ; CONVERT ROW/COL TO BUF IDX
LD (SCG_POS),HL ; SAVE THE RESULT (DISPLAY POSITION)
RET
;
;----------------------------------------------------------------------
@@ -408,10 +408,10 @@ N8V_XY:
; D=ROW, E=COL
;----------------------------------------------------------------------
;
N8V_XY2IDX:
SCG_XY2IDX:
LD A,E ; SAVE COLUMN NUMBER IN A
LD H,D ; SET H TO ROW NUMBER
LD E,N8V_COLS ; SET E TO ROW LENGTH
LD E,SCG_COLS ; SET E TO ROW LENGTH
CALL MULT8 ; MULTIPLY TO GET ROW OFFSET
LD E,A ; GET COLUMN BACK
ADD HL,DE ; ADD IT IN
@@ -421,15 +421,15 @@ N8V_XY2IDX:
; WRITE VALUE IN A TO CURRENT VDU BUFFER POSTION, ADVANCE CURSOR
;----------------------------------------------------------------------
;
N8V_PUTCHAR:
SCG_PUTCHAR:
PUSH AF ; SAVE CHARACTER
LD HL,(N8V_POS) ; LOAD CURRENT POSITION INTO HL
CALL N8V_WR ; SET THE WRITE ADDRESS
LD HL,(SCG_POS) ; LOAD CURRENT POSITION INTO HL
CALL SCG_WR ; SET THE WRITE ADDRESS
POP AF ; RECOVER CHARACTER TO WRITE
OUT (N8V_DATREG),A ; WRITE THE CHARACTER
LD HL,(N8V_POS) ; LOAD CURRENT POSITION INTO HL
OUT (SCG_DATREG),A ; WRITE THE CHARACTER
LD HL,(SCG_POS) ; LOAD CURRENT POSITION INTO HL
INC HL
LD (N8V_POS),HL
LD (SCG_POS),HL
RET
;
;----------------------------------------------------------------------
@@ -439,19 +439,19 @@ N8V_PUTCHAR:
; DE: NUMBER OF CHARACTERS TO FILL
;----------------------------------------------------------------------
;
N8V_FILL:
SCG_FILL:
LD C,A ; SAVE THE CHARACTER TO WRITE
LD HL,(N8V_POS) ; SET STARTING POSITION
CALL N8V_WR ; SET UP FOR WRITE
LD HL,(SCG_POS) ; SET STARTING POSITION
CALL SCG_WR ; SET UP FOR WRITE
;
N8V_FILL1:
SCG_FILL1:
LD A,C ; RECOVER CHARACTER TO WRITE
OUT (N8V_DATREG),A
N8V_IODELAY
OUT (SCG_DATREG),A
SCG_IODELAY
DEC DE
LD A,D
OR E
JR NZ,N8V_FILL1
JR NZ,SCG_FILL1
;
RET
;
@@ -459,50 +459,50 @@ N8V_FILL1:
; SCROLL ENTIRE SCREEN FORWARD BY ONE LINE (CURSOR POSITION UNCHANGED)
;----------------------------------------------------------------------
;
N8V_SCROLL:
SCG_SCROLL:
LD HL,0 ; SOURCE ADDRESS OF CHARACER BUFFER
LD C,N8V_ROWS - 1 ; SET UP LOOP COUNTER FOR ROWS - 1
LD C,SCG_ROWS - 1 ; SET UP LOOP COUNTER FOR ROWS - 1
;
N8V_SCROLL0: ; READ LINE THAT IS ONE PAST CURRENT DESTINATION
SCG_SCROLL0: ; READ LINE THAT IS ONE PAST CURRENT DESTINATION
PUSH HL ; SAVE CURRENT DESTINATION
LD DE,N8V_COLS
LD DE,SCG_COLS
ADD HL,DE ; POINT TO NEXT ROW SOURCE
CALL N8V_RD ; SET UP TO READ
LD DE,N8V_BUF
LD B,N8V_COLS
N8V_SCROLL1:
IN A,(N8V_DATREG)
N8V_IODELAY
CALL SCG_RD ; SET UP TO READ
LD DE,SCG_BUF
LD B,SCG_COLS
SCG_SCROLL1:
IN A,(SCG_DATREG)
SCG_IODELAY
LD (DE),A
INC DE
DJNZ N8V_SCROLL1
DJNZ SCG_SCROLL1
POP HL ; RECOVER THE DESTINATION
;
; WRITE THE BUFFERED LINE TO CURRENT DESTINATION
CALL N8V_WR ; SET UP TO WRITE
LD DE,N8V_BUF
LD B,N8V_COLS
N8V_SCROLL2:
CALL SCG_WR ; SET UP TO WRITE
LD DE,SCG_BUF
LD B,SCG_COLS
SCG_SCROLL2:
LD A,(DE)
OUT (N8V_DATREG),A
N8V_IODELAY
OUT (SCG_DATREG),A
SCG_IODELAY
INC DE
DJNZ N8V_SCROLL2
DJNZ SCG_SCROLL2
;
; BUMP TO NEXT LINE
LD DE,N8V_COLS
LD DE,SCG_COLS
ADD HL,DE
DEC C ; DECREMENT ROW COUNTER
JR NZ,N8V_SCROLL0 ; LOOP THRU ALL ROWS
JR NZ,SCG_SCROLL0 ; LOOP THRU ALL ROWS
;
; FILL THE NEWLY EXPOSED BOTTOM LINE
CALL N8V_WR
CALL SCG_WR
LD A,' '
LD B,N8V_COLS
N8V_SCROLL3:
OUT (N8V_DATREG),A
N8V_IODELAY
DJNZ N8V_SCROLL3
LD B,SCG_COLS
SCG_SCROLL3:
OUT (SCG_DATREG),A
SCG_IODELAY
DJNZ SCG_SCROLL3
;
RET
;
@@ -510,50 +510,50 @@ N8V_SCROLL3:
; REVERSE SCROLL ENTIRE SCREEN BY ONE LINE (CURSOR POSITION UNCHANGED)
;----------------------------------------------------------------------
;
N8V_RSCROLL:
LD HL,N8V_COLS * (N8V_ROWS - 1)
LD C,N8V_ROWS - 1
SCG_RSCROLL:
LD HL,SCG_COLS * (SCG_ROWS - 1)
LD C,SCG_ROWS - 1
;
N8V_RSCROLL0: ; READ THE LINE THAT IS ONE PRIOR TO CURRENT DESTINATION
SCG_RSCROLL0: ; READ THE LINE THAT IS ONE PRIOR TO CURRENT DESTINATION
PUSH HL ; SAVE THE DESTINATION ADDRESS
LD DE,-N8V_COLS
LD DE,-SCG_COLS
ADD HL,DE ; SET SOURCE ADDRESS
CALL N8V_RD ; SET UP TO READ
LD DE,N8V_BUF ; POINT TO BUFFER
LD B,N8V_COLS ; LOOP FOR EACH COLUMN
N8V_RSCROLL1:
IN A,(N8V_DATREG) ; GET THE CHAR
N8V_IODELAY ; RECOVER
CALL SCG_RD ; SET UP TO READ
LD DE,SCG_BUF ; POINT TO BUFFER
LD B,SCG_COLS ; LOOP FOR EACH COLUMN
SCG_RSCROLL1:
IN A,(SCG_DATREG) ; GET THE CHAR
SCG_IODELAY ; RECOVER
LD (DE),A ; SAVE IN BUFFER
INC DE ; BUMP BUFFER POINTER
DJNZ N8V_RSCROLL1 ; LOOP THRU ALL COLS
DJNZ SCG_RSCROLL1 ; LOOP THRU ALL COLS
POP HL ; RECOVER THE DESTINATION ADDRESS
;
; WRITE THE BUFFERED LINE TO CURRENT DESTINATION
CALL N8V_WR ; SET THE WRITE ADDRESS
LD DE,N8V_BUF ; POINT TO BUFFER
LD B,N8V_COLS ; INIT LOOP COUNTER
N8V_RSCROLL2:
CALL SCG_WR ; SET THE WRITE ADDRESS
LD DE,SCG_BUF ; POINT TO BUFFER
LD B,SCG_COLS ; INIT LOOP COUNTER
SCG_RSCROLL2:
LD A,(DE) ; LOAD THE CHAR
OUT (N8V_DATREG),A ; WRITE TO SCREEN
N8V_IODELAY ; DELAY
OUT (SCG_DATREG),A ; WRITE TO SCREEN
SCG_IODELAY ; DELAY
INC DE ; BUMP BUF POINTER
DJNZ N8V_RSCROLL2 ; LOOP THRU ALL COLS
DJNZ SCG_RSCROLL2 ; LOOP THRU ALL COLS
;
; BUMP TO THE PRIOR LINE
LD DE,-N8V_COLS ; LOAD COLS (NEGATIVE)
LD DE,-SCG_COLS ; LOAD COLS (NEGATIVE)
ADD HL,DE ; BACK UP THE ADDRESS
DEC C ; DECREMENT ROW COUNTER
JR NZ,N8V_RSCROLL0 ; LOOP THRU ALL ROWS
JR NZ,SCG_RSCROLL0 ; LOOP THRU ALL ROWS
;
; FILL THE NEWLY EXPOSED BOTTOM LINE
CALL N8V_WR
CALL SCG_WR
LD A,' '
LD B,N8V_COLS
N8V_RSCROLL3:
OUT (N8V_DATREG),A
N8V_IODELAY
DJNZ N8V_RSCROLL3
LD B,SCG_COLS
SCG_RSCROLL3:
OUT (SCG_DATREG),A
SCG_IODELAY
DJNZ SCG_RSCROLL3
;
RET
;
@@ -561,48 +561,50 @@ N8V_RSCROLL3:
; BLOCK COPY BC BYTES FROM HL TO DE
;----------------------------------------------------------------------
;
N8V_BLKCPY:
SCG_BLKCPY:
; SAVE DESTINATION AND LENGTH
PUSH BC ; LENGTH
PUSH DE ; DEST
;
; READ FROM THE SOURCE LOCATION
N8V_BLKCPY1:
CALL N8V_RD ; SET UP TO READ FROM ADDRESS IN HL
LD DE,N8V_BUF ; POINT TO BUFFER
SCG_BLKCPY1:
CALL SCG_RD ; SET UP TO READ FROM ADDRESS IN HL
LD DE,SCG_BUF ; POINT TO BUFFER
LD B,C
N8V_BLKCPY2:
IN A,(N8V_DATREG) ; GET THE NEXT BYTE
N8V_IODELAY ; DELAY
SCG_BLKCPY2:
IN A,(SCG_DATREG) ; GET THE NEXT BYTE
SCG_IODELAY ; DELAY
LD (DE),A ; SAVE IN BUFFER
INC DE ; BUMP BUF PTR
DJNZ N8V_BLKCPY2 ; LOOP AS NEEDED
DJNZ SCG_BLKCPY2 ; LOOP AS NEEDED
;
; WRITE TO THE DESTINATION LOCATION
POP HL ; RECOVER DESTINATION INTO HL
CALL N8V_WR ; SET UP TO WRITE
LD DE,N8V_BUF ; POINT TO BUFFER
CALL SCG_WR ; SET UP TO WRITE
LD DE,SCG_BUF ; POINT TO BUFFER
POP BC ; GET LOOP COUNTER BACK
LD B,C
N8V_BLKCPY3:
SCG_BLKCPY3:
LD A,(DE) ; GET THE CHAR FROM BUFFER
OUT (N8V_DATREG),A ; WRITE TO VDU
N8V_IODELAY ; DELAY
OUT (SCG_DATREG),A ; WRITE TO VDU
SCG_IODELAY ; DELAY
INC DE ; BUMP BUF PTR
DJNZ N8V_BLKCPY3 ; LOOP AS NEEDED
DJNZ SCG_BLKCPY3 ; LOOP AS NEEDED
;
RET
;
;==================================================================================================
; N8V DRIVER - DATA
; SCG DRIVER - DATA
;==================================================================================================
;
N8V_POS .DW 0 ; CURRENT DISPLAY POSITION
N8V_CURSAV .DB 0 ; SAVES ORIGINAL CHARACTER UNDER CURSOR
N8V_BUF .FILL 256,0 ; COPY BUFFER
SCG_CIOUNIT .DB $FF ; LOCAL COPY OF OUR CIO UNIT NUMBER
;
SCG_POS .DW 0 ; CURRENT DISPLAY POSITION
SCG_CURSAV .DB 0 ; SAVES ORIGINAL CHARACTER UNDER CURSOR
SCG_BUF .FILL 256,0 ; COPY BUFFER
;
;==================================================================================================
; N8V DRIVER - TMS9918 REGISTER INITIALIZATION
; SCG DRIVER - TMS9918 REGISTER INITIALIZATION
;==================================================================================================
;
; Control Registers (write CMDREG):
@@ -643,7 +645,7 @@ N8V_BUF .FILL 256,0 ; COPY BUFFER
; 5S Fifth sprite (not displayed) detected. Value in FS* is valid.
; INT Set at each screen update, used for interrupts.
;
N8V_INIT9918:
SCG_INIT9918:
.DB $00 ; REG 0 - NO EXTERNAL VID
.DB $50 ; REG 1 - ENABLE SCREEN, SET MODE 1
.DB $00 ; REG 2 - PATTERN NAME TABLE := 0
@@ -653,11 +655,11 @@ N8V_INIT9918:
.DB $00 ; REG 6 - NO SPRITE GENERATOR TABLE
.DB $F0 ; REG 7 - WHITE ON BLACK
;
N8V_INIT9918LEN .EQU $ - N8V_INIT9918
SCG_INIT9918LEN .EQU $ - SCG_INIT9918
;
;==================================================================================================
; N8V DRIVER - FONT DATA
; SCG DRIVER - FONT DATA
;==================================================================================================
;
N8V_FONTDATA:
#INCLUDE "n8v_font.inc"
SCG_FONTDATA:
#INCLUDE "scg_font.inc"

View File

@@ -33,9 +33,9 @@ PLT_N8 .EQU 4 ; N8 (HOME COMPUTER) Z180 SBC
PLT_MK4 .EQU 5 ; MARK IV
PLT_UNA .EQU 6 ; UNA BIOS
;
;#IFDEF PLTWBW
#IF (PLATFORM != PLT_UNA)
#INCLUDE "hbios.inc"
;#ENDIF
#ENDIF
;
; BOOT STYLE
;

View File

@@ -6,14 +6,23 @@
; TODO:
; - SOME FUNCTIONS ARE NOT IMPLEMENTED!!!
;
; INITIALIZATION OF EMULATION MODULE CALLED BY PARENT VDA DRIVER
; ON ENTRY:
; C: CIO UNIT NUMBER OF CALLING VDA DRIVER
; DE: DISPATCH ADDRESS OF CALLING VDA DRIVER
; RETURNS:
; DE: OUR CIO DISPATCH ADDRESS
;
TTY_INIT:
; SAVE INCOMING VDA DISPATCH ADDRESS
LD (EMU_VDADISPADR),DE ; RECORD NEW VDA DISPATCH ADDRESS
; SAVE CALLING VDA DRIVER'S CIO UNIT NUMBER AND VDA DISPATCH ADDRESS
LD C,A ; VDA DRIVER'S CIO UNIT NUMBER
LD (TTY_CIOUNIT),A ; ... SAVED LOCALLY
LD (TTY_VDADISPADR),DE ; ALSO SAVE VDA DRIVER'S DISPATCH ADDRESS
;
; QUERY THE VIDEO DRIVER FOR SCREEN DIMENSIONS
LD B,BF_VDAQRY ; FUNCTION IS QUERY
LD HL,0 ; WE DO NOT WANT A COPY OF THE CHARACTER BITMAP DATA
CALL EMU_VDADISP ; PERFORM THE QUERY FUNCTION
CALL TTY_VDADISP ; PERFORM THE QUERY FUNCTION
LD (TTY_DIM),DE ; SAVE THE SCREEN DIMENSIONS RETURNED
;
LD DE,0 ; DE := 0, CURSOR TO HOME POSITION 0,0
@@ -25,8 +34,13 @@ TTY_INIT:
;
;
;
TTY_VDADISP:
JP PANIC
TTY_VDADISPADR .EQU $ - 2
;
;
;
TTY_DISPATCH:
LD (TTY_CIODEV),A ; *DEBUG*
LD A,B ; GET REQUESTED FUNCTION
AND $0F ; ISOLATE SUB-FUNCTION
JR Z,TTY_IN ; $30
@@ -48,7 +62,7 @@ TTY_DISPATCH:
;
TTY_IN:
LD B,BF_VDAKRD ; SET FUNCTION TO KEYBOARD READ
JP EMU_VDADISP ; CHAIN TO VDA DISPATCHER
JP TTY_VDADISP ; CHAIN TO VDA DISPATCHER
;
;
;
@@ -61,7 +75,7 @@ TTY_OUT:
;
TTY_IST:
LD B,BF_VDAKST ; SET FUNCTION TO KEYBOARD STATUS
JP EMU_VDADISP ; CHAIN TO VDA DISPATCHER
JP TTY_VDADISP ; CHAIN TO VDA DISPATCHER
;
;
;
@@ -85,9 +99,8 @@ TTY_QUERY:
;
;
TTY_DEVICE:
;LD D,CIODEV_VDA ; D := DEVICE TYPE
LD A,(TTY_CIODEV) ; GET THE CURRENT CIO DEVICE *DEBUG*
LD D,A ; AND PASS BACK IN D *DEBUG*
LD A,(TTY_CIOUNIT) ; PARENT VDA CIO UNIT
LD D,A ; AND PASS BACK IN D
LD E,C ; E := PHYSICAL UNIT
XOR A ; SIGNAL SUCCESS
RET
@@ -107,7 +120,7 @@ TTY_DOCHAR:
CP 32 ; COMPARE TO SPACE (FIRST PRINTABLE CHARACTER)
RET C ; SWALLOW OTHER CONTROL CHARACTERS
LD B,BF_VDAWRC
CALL EMU_VDADISP ; SPIT OUT THE RAW CHARACTER
CALL TTY_VDADISP ; SPIT OUT THE RAW CHARACTER
LD A,(TTY_COL) ; GET CUR COL
INC A ; INCREMENT
LD (TTY_COL),A ; SAVE IT
@@ -126,7 +139,7 @@ TTY_FF:
CALL MULT8 ; HL := H * E TO GET TOTAL SCREEN POSITIONS
LD E,' ' ; FILL SCREEN WITH BLANKS
LD B,BF_VDAFIL ; SET FUNCTION TO FILL
CALL EMU_VDADISP ; PERFORM FILL
CALL TTY_VDADISP ; PERFORM FILL
JR TTY_XY ; HOME CURSOR AND RETURN
;
TTY_BS:
@@ -154,12 +167,12 @@ TTY_LF: ; LINEFEED (FORWARD INDEX)
TTY_LF1: ; SCROLL
LD E,1 ; SCROLL FORWARD 1 LINE
LD B,BF_VDASCR ; SET FUNCTION TO SCROLL
JP EMU_VDADISP ; DO THE SCROLLING AND RETURN
JP TTY_VDADISP ; DO THE SCROLLING AND RETURN
;
TTY_XY:
LD DE,(TTY_POS) ; GET THE DESIRED CURSOR POSITION
LD B,BF_VDASCP ; SET FUNCTIONT TO SET CURSOR POSITION
JP EMU_VDADISP ; REPOSITION CURSOR
JP TTY_VDADISP ; REPOSITION CURSOR
;
;
;
@@ -171,4 +184,4 @@ TTY_DIM:
TTY_COLS .DB 80 ; NUMBER OF COLUMNS ON SCREEN
TTY_ROWS .DB 24 ; NUMBER OF ROWS ON SCREEN
;
TTY_CIODEV .DB 0 ; *DEBUG*
TTY_CIOUNIT .DB $FF ; CIO UNIT NUMBER OF PARENT VDA

View File

@@ -501,7 +501,8 @@ BYTE2BCD1:
POP BC
RET
;#IFDEF PLTWBW
#IF (PLATFORM != PLT_UNA)
#IFDEF USEDELAY
;
@@ -593,10 +594,14 @@ LDELAY:
; CPU SCALER := MAX(1, (PHIMHZ - 2))
;
DELAY_INIT:
LD B,BF_SYSHCBGETB ; HB FUNC: GET HCB BYTE
LD C,HCB_CPUMHZ ; CPU SPEED IN MHZ
RST 08 ; DO IT
LD A,E ; VALUE TO ACCUM
;LD B,BF_SYSHCBGETB ; HB FUNC: GET HCB BYTE
;LD C,HCB_CPUMHZ ; CPU SPEED IN MHZ
;RST 08 ; DO IT
;LD A,E ; VALUE TO ACCUM
LD B,BF_SYSGET ; HBIOS FUNC=GET SYS INFO
LD C,BF_SYSGET_CPUINFO ; HBIOS SUBFUNC=GET CPU INFO
RST 08 ; CALL HBIOS, RST 08 NOT YET INSTALLED
LD A,L ; PUT SPEED IN MHZ IN ACCUM
SUB 2 ; ADJUST AS REQUIRED BY DELAY FUNCTIONS
LD (CPUSCL),A ; UPDATE CPU SCALER VALUE
CP 1 ; CHECK FOR MINIMUM VALUE ALLOWED
@@ -604,7 +609,7 @@ DELAY_INIT:
LD A,1 ; OTHERWISE, SET MIN VALUE
LD (CPUSCL),A ; AND SAVE IT
RET
;
#IF (CPUMHZ < 3)
CPUSCL .DB 1 ; CPU SCALER MUST BE > 0
#ELSE
@@ -612,7 +617,8 @@ CPUSCL .DB CPUMHZ - 2 ; OTHERWISE 2 LESS THAN PHI MHZ
#ENDIF
;
#ENDIF
;#ENDIF
;
#ENDIF
;
; SHORT DELAY FUNCTIONS. NO CLOCK SPEED COMPENSATION, SO THEY
; WILL RUN LONGER ON SLOWER SYSTEMS. THE NUMBER INDICATES THE

View File

@@ -39,9 +39,9 @@ VDU_INIT:
LD C,CIODEV_VDU ; DEVICE TYPE
LD DE,0 ; UNIT DATA BLOB ADDRESS
CALL CIO_ADDENT ; ADD ENTRY, A := UNIT ASSIGNED
LD (VDU_CIOUNIT),A ; SAVE IT LOCALLY
LD (HCB + HCB_CRTDEV),A ; SET OURSELVES AS THE CRT DEVICE
CALL TSTPT ; *DEBUG*
LD D,VDAEMU ; DEFAULT EMULATION
LD E,0 ; VIDEO MODE = 0
JP VDU_VDAINI
@@ -98,12 +98,12 @@ VDU_VDAINI:
POP DE ; RECOVER EMULATION TYPE
; INITIALIZE EMULATION
LD C,D ; EMULATION MODE TO C
LD B,D ; EMULATION TYPE TO B
LD A,(VDU_CIOUNIT) ; CIO UNIT NUMBER
LD C,A ; ... IS PASSED IN C
LD DE,VDU_DISPATCH ; DISPATCH ADDRESS TO DE
CALL TSTPT ; *DEBUG*
CALL EMU_INIT ; INITIALIZE EMULATION, DE := CIO DISPATCHER
LD (VDU_CIODISPADR),DE ; SAVE EMULATORS CIO DISPATCH INTERFACE ADDRESS
CALL TSTPT ; *DEBUG*
XOR A ; SIGNAL SUCCESS
RET
@@ -468,6 +468,8 @@ VDU_RSCROLL:
; VDU DRIVER - DATA
;==================================================================================================
;
VDU_CIOUNIT .DB $FF ; LOCAL COPY OF OUR CIO UNIT NUMBER
;
VDU_POS .DW 0 ; CURRENT DISPLAY POSITION
VDU_OFFSET .DW 0 ; CURRENT DISPLAY POSITION
VDU_BUF .FILL 256,0 ; COPY BUFFER

View File

@@ -1,5 +1,5 @@
#DEFINE RMJ 2
#DEFINE RMN 7
#DEFINE RUP 2
#DEFINE RMN 8
#DEFINE RUP 0
#DEFINE RTP 0
#DEFINE BIOSVER "2.7.2-alpha.7"
#DEFINE BIOSVER "2.8.0-alpha.0"

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.