Browse Source

Finish DEVICE API extension

pull/138/head
Wayne Warthen 6 years ago
parent
commit
9857dda5b5
  1. BIN
      Doc/RomWBW Applications.pdf
  2. BIN
      Doc/RomWBW Architecture.pdf
  3. BIN
      Doc/RomWBW Disk Catalog.pdf
  4. BIN
      Doc/RomWBW Getting Started.pdf
  5. 37
      Source/Doc/Architecture.md
  6. 16
      Source/HBIOS/ay38910.asm
  7. 2
      Source/HBIOS/bqrtc.asm
  8. 2
      Source/HBIOS/cvdu.asm
  9. 2
      Source/HBIOS/dsrtc.asm
  10. 2
      Source/HBIOS/fd.asm
  11. 2
      Source/HBIOS/hbios.asm
  12. 18
      Source/HBIOS/hbios.inc
  13. 2
      Source/HBIOS/hdsk.asm
  14. 2
      Source/HBIOS/ide.asm
  15. 2
      Source/HBIOS/intrtc.asm
  16. 2
      Source/HBIOS/md.asm
  17. 2
      Source/HBIOS/ppide.asm
  18. 2
      Source/HBIOS/ppp.asm
  19. 2
      Source/HBIOS/prp.asm
  20. 2
      Source/HBIOS/rf.asm
  21. 12
      Source/HBIOS/sd.asm
  22. 2
      Source/HBIOS/simrtc.asm
  23. 12
      Source/HBIOS/sn76489.asm
  24. 16
      Source/HBIOS/spk.asm
  25. 2
      Source/HBIOS/tms.asm
  26. 2
      Source/HBIOS/vdu.asm
  27. 2
      Source/HBIOS/vga.asm
  28. 2
      Source/ver.inc
  29. 2
      Source/ver.lib

BIN
Doc/RomWBW Applications.pdf

Binary file not shown.

BIN
Doc/RomWBW Architecture.pdf

Binary file not shown.

BIN
Doc/RomWBW Disk Catalog.pdf

Binary file not shown.

BIN
Doc/RomWBW Getting Started.pdf

Binary file not shown.

37
Source/Doc/Architecture.md

@ -747,6 +747,8 @@ of memory.
| C: Attributes
| D: Device Type
| E: Device Number
| H: Disk Device Unit Mode
| L: Disk Device Unit I/O Base Address
Reports information about the character device unit specified. Register D
indicates the device type (driver) and register E indicates the physical
@ -966,6 +968,8 @@ Documentation required...
| A: Status (0=OK, else error)
| D: Device Type
| E: Device Number
| H: RTC Device Unit Mode
| L: RTC Device Unit I/O Base Address
Reports information about the RTC device unit specified. Register D
indicates the device type (driver) and register E indicates the physical
@ -1138,8 +1142,10 @@ Keyboard should be flushed.
| _Exit Results_
| A: Status (0=OK, else error)
| D=Device Type
| E=Device Number
| D: Device Type
| E: Device Number
| H: VDA Device Unit Mode
| L: VDA Device Unit I/O Base Address
Reports information about the video device unit specified.
@ -1570,6 +1576,33 @@ not play a note if the duration is zero.
For other values, when a tone is played, it will play for the duration defined in HL
and then return.
### Function 0x57 -- Sound Device (SNDDEVICE)
| _Entry Parameters_
| B: 0x57
| C: Sound Device Unit Number
| _Exit Results_
| A: Status (0=OK, else error)
| D: Serial Device Type
| E: Serial Device Number
| H: Serial Device Unit Mode
| L: Serial Device Unit I/O Base Address
Reports information about the sound device unit specified. Register D
indicates the device type (driver) and register E indicates the physical
device number assigned by the driver.
Each character device is handled by an appropriate driver (AY38910, SN76489,
etc.). The driver can be identified by the Device Type. The assigned Device
Types are listed below.
_Id_ | _Device Type / Driver_
---- | ----------------------
0x00 | SN76489
0x10 | AY38910
0x20 | BITMODE
`\clearpage`{=latex}
System (SYS)

16
Source/HBIOS/ay38910.asm

@ -57,6 +57,7 @@ AY_FNTBL:
.DW AY_PLAY
.DW AY_QUERY
.DW AY_DURATION
.DW AY_DEVICE
;
#IF (($ - AY_FNTBL) != (SND_FNCNT * 2))
.ECHO "*** INVALID SND FUNCTION TABLE ***\n"
@ -428,7 +429,7 @@ AY_QUERY_VOLUME:
RET
;
AY_QUERY_DEV:
LD B, BF_SND_AY38910 ; RETURN DEVICE IDENTIFIER
LD B, SNDDEV_AY38910 ; RETURN DEVICE IDENTIFIER
LD DE, (AY_RSEL*256)+AY_RDAT ; AND ADDRESS AND DATA PORT
XOR A
RET
@ -443,6 +444,19 @@ AY_DURATION:
RET
;
;======================================================================
; SOUND DRIVER FUNCTION - DEVICE
;======================================================================
;
AY_DEVICE:
LD D,SNDDEV_AY38910 ; D := DEVICE TYPE
LD E,0 ; E := PHYSICAL UNIT
LD C,$00 ; C := DEVICE TYPE
LD H,AYMODE ; H := MODE
LD L,AY_RSEL ; L := BASE I/O ADDRESS
XOR A
RET
;
;======================================================================
; NON-BLOCKING INTERRUPT CODE
;======================================================================
;

2
Source/HBIOS/bqrtc.asm

@ -344,6 +344,8 @@ BQRTC_SETALM:
BQRTC_DEVICE:
LD D,RTCDEV_BQ ; D := DEVICE TYPE
LD E,0 ; E := PHYSICAL DEVICE NUMBER
LD H,0 ; H := 0, DRIVER HAS NO MODES
LD L,BQRTC_BASE ; L := BASE I/O ADDRESS
XOR A ; SIGNAL SUCCESS
RET

2
Source/HBIOS/cvdu.asm

@ -132,6 +132,8 @@ CVDU_VDARES:
CVDU_VDADEV:
LD D,VDADEV_CVDU ; D := DEVICE TYPE
LD E,0 ; E := PHYSICAL UNIT IS ALWAYS ZERO
LD H,0 ; H := 0, DRIVER HAS NO MODES
LD L,CVDU_BASE ; L := BASE I/O ADDRESS
XOR A ; SIGNAL SUCCESS
RET

2
Source/HBIOS/dsrtc.asm

@ -369,6 +369,8 @@ DSRTC_SETBYT:
DSRTC_DEVICE:
LD D,RTCDEV_DS ; D := DEVICE TYPE
LD E,0 ; E := PHYSICAL DEVICE NUMBER
LD H,DSRTCMODE ; H := MODE
LD L,DSRTC_IO ; L := BASE I/O ADDRESS
XOR A ; SIGNAL SUCCESS
RET
;

2
Source/HBIOS/fd.asm

@ -508,6 +508,8 @@ FD_DEVICE:
#IF (FDMEDIA == FDM111)
LD C,%10010100 ; 8" DS/DD
#ENDIF
LD H,FDMODE ; H := MODE
LD L,FDC_MSR ; L := BASE I/O ADDRESS
XOR A ; SIGNAL SUCCESS
RET
;

2
Source/HBIOS/hbios.asm

@ -2294,7 +2294,7 @@ SND_ADDENT:
; WORD DRIVER FUNCTION TABLE ADDRESS
; WORD UNIT SPECIFIC DATA (TYPICALLY A DEVICE INSTANCE DATA ADDRESS)
;
SND_FNCNT .EQU 7 ; NUMBER OF SND FUNCS (FOR RANGE CHECK)
SND_FNCNT .EQU 8 ; NUMBER OF SND FUNCS (FOR RANGE CHECK)
SND_MAX .EQU 3 ; UP TO 2 UNITS
SND_SIZ .EQU SND_MAX * 4 ; EACH ENTRY IS 4 BYTES
;

18
Source/HBIOS/hbios.inc

@ -63,6 +63,7 @@ BF_SNDNOTE .EQU BF_SND + 3 ; REQUEST NOTE - L CONTAINS NOTE - EACH VALUE IS QUAR
BF_SNDPLAY .EQU BF_SND + 4 ; INITIATE THE REQUESTED SOUND COMMAND
BF_SNDQUERY .EQU BF_SND + 5 ; E IS SUBFUNCTION
BF_SNDDURATION .EQU BF_SND + 6 ; REQUEST DURATION HL MILLISECONDS
BF_SNDDEVICE .EQU BF_SND + 7 ; SOUND DEVICE INFO REQUEST
;
; BF_SNDQUERY SUBCOMMANDS
BF_SNDQ_STATUS .EQU 0
@ -71,11 +72,6 @@ BF_SNDQ_VOLUME .EQU BF_SNDQ_STATUS + 2 ; 8 BIT NUMBER
BF_SNDQ_PERIOD .EQU BF_SNDQ_STATUS + 3 ; 16 BIT NUMBER
BF_SNDQ_DEV .EQU BF_SNDQ_STATUS + 4 ; RETURN DEVICE TYPE CODE AND IO PORTS - TYPE IN B, PORTS IN DE, HL
;
BF_SNDDEV .EQU 0 ; TYPES OF SOUND DRIVERS
BF_SND_SN76489 .EQU BF_SNDDEV + 1
BF_SND_AY38910 .EQU BF_SNDDEV + 2
BF_SND_BITMODE .EQU BF_SNDDEV + 3
;
BF_SYS .EQU $F0
BF_SYSRESET .EQU BF_SYS + 0 ; SOFT RESET HBIOS
BF_SYSVER .EQU BF_SYS + 1 ; GET HBIOS VERSION
@ -200,12 +196,12 @@ VDADEV_CVDU .EQU $10 ; ECB COLOR VDU - MOS 8563
VDADEV_NEC .EQU $20 ; ECB UPD7220 - NEC UPD7220
VDADEV_TMS .EQU $30 ; N8 ONBOARD VDA SUBSYSTEM - TMS 9918
VDADEV_VGA .EQU $40 ; ECB VGA3 - HITACHI HD6445
;;
;; EMULATION TYPES - moved to std.asm
;;
;EMUTYP_NONE .EQU 0 ; NONE
;EMUTYP_TTY .EQU 1 ; TTY
;EMUTYP_ANSI .EQU 2 ; ANSI
;
; SOUND DEVICE IDS
;
SNDDEV_SN76489 .EQU $00
SNDDEV_AY38910 .EQU $10
SNDDEV_BITMODE .EQU $20
;
; HBIOS CONTROL BLOCK OFFSETS
; WARNING: THESE OFFSETS WILL CHANGE SIGNIFICANTLY BETWEEN RELEASES

2
Source/HBIOS/hdsk.asm

@ -169,6 +169,8 @@ HDSK_DEVICE:
LD D,DIODEV_HDSK ; D := DEVICE TYPE
LD E,(IY+HDSK_DEV) ; E := PHYSICAL DEVICE NUMBER
LD C,%00000000 ; C := ATTRIBUTES, NON-REMOVABLE HARD DISK
LD H,0 ; H := 0, DRIVER HAS NO MODES
LD L,HDSK_IO ; L := BASE I/O ADDRESS
XOR A ; SIGNAL SUCCESS
RET
;

2
Source/HBIOS/ide.asm

@ -546,6 +546,8 @@ IDE_DEVICE:
JR Z,IDE_DEVICE1 ; IF Z, WE ARE DONE
LD C,%01001000 ; OTHERWISE REMOVABLE COMPACT FLASH
IDE_DEVICE1:
LD H,(IY+IDE_MODE) ; H := MODE
LD L,(IY+IDE_IOBASE) ; L := BASE I/O ADDRESS
XOR A ; SIGNAL SUCCESS
RET
;

2
Source/HBIOS/intrtc.asm

@ -138,6 +138,8 @@ INTRTC_SETTIM:
INTRTC_DEVICE:
LD D,RTCDEV_INT ; D := DEVICE TYPE
LD E,0 ; E := PHYSICAL DEVICE NUMBER
LD H,0 ; H := 0, DRIVER HAS NO MODES
LD L,0 ; L := 0, NO I/O ADDRESS
XOR A ; SIGNAL SUCCESS
RET
;

2
Source/HBIOS/md.asm

@ -149,6 +149,8 @@ MD_DEVICE:
LD C,%00100000 ; ASSUME ROM DISK ATTRIBUTES
JR Z,MD_DEVICE1 ; IF ZERO, IT IS ROM DISK, DONE
LD C,%00101000 ; USE RAM DISK ATTRIBUTES
LD H,0 ; H := 0, DRIVER HAS NO MODES
LD L,0 ; L := 0, NO BASE I/O ADDRESS
MD_DEVICE1:
XOR A ; SIGNAL SUCCESS
RET

2
Source/HBIOS/ppide.asm

@ -555,6 +555,8 @@ PPIDE_DEVICE:
JR Z,PPIDE_DEVICE1 ; IF Z, WE ARE DONE
LD C,%01001000 ; OTHERWISE REMOVABLE COMPACT FLASH
PPIDE_DEVICE1:
LD H,0 ; H := 0, DRIVER HAS NO MODES
LD L,(IY+PPIDE_DATALO) ; L := BASE I/O ADDRESS
XOR A ; SIGNAL SUCCESS
RET
;

2
Source/HBIOS/ppp.asm

@ -693,6 +693,8 @@ PPPSD_DEVICE:
LD D,DIODEV_PPPSD ; D := DEVICE TYPE
LD E,(IY+PPPSD_DEV) ; E := PHYSICAL DEVICE NUMBER
LD C,%01010000 ; C := ATTRIBUTES, REMOVABLE, SD CARD
LD H,0 ; H := 0, DRIVER HAS NO MODES
LD L,PPIBASE ; L := BASE I/O ADDRESS
XOR A ; SIGNAL SUCCESS
RET
;

2
Source/HBIOS/prp.asm

@ -550,6 +550,8 @@ PRPSD_DEVICE:
LD D,DIODEV_PRPSD ; D := DEVICE TYPE
LD E,(IY+PRPSD_DEV) ; E := PHYSICAL DEVICE NUMBER
LD C,%01010000 ; C := ATTRIBUTES, REMOVABLE, SD CARD
LD H,0 ; H := 0, DRIVER HAS NO MODES
LD L,PRP_IOBASE ; L := BASE I/O ADDRESS
XOR A ; SIGNAL SUCCESS
RET
;

2
Source/HBIOS/rf.asm

@ -181,6 +181,8 @@ RF_DEVICE:
LD D,DIODEV_RF ; D := DEVICE TYPE
LD E,(IY+RF_DEV) ; E := PHYSICAL DEVICE NUMBER
LD C,%00110000 ; C := ATTRIBUTES, NON-REMOVABLE RAM FLOPPY
LD H,0 ; H := 0, DRIVER HAS NO MODES
LD L,(IY+RF_IOAD) ; L := BASE I/O ADDRESS
XOR A ; SIGNAL SUCCESS
RET
;

12
Source/HBIOS/sd.asm

@ -125,6 +125,7 @@ SD_CS0 .EQU %00000100 ; RTC:2 IS SELECT
SD_CLK .EQU %00000010 ; RTC:1 IS CLOCK
SD_DI .EQU %00000001 ; RTC:0 IS DATA IN (CARD <- CPU)
SD_DO .EQU %10000000 ; RTC:7 IS DATA OUT (CARD -> CPU)
SD_IOBASE .EQU SD_OPRREG ; IOBASE
;
RTCDEF .SET SD_OPRDEF ; SET DEFAULT IN HBIOS MAINLINE
#ENDIF
@ -139,6 +140,7 @@ SD_CS0 .EQU %00000100 ; RTC:2 IS SELECT
SD_CLK .EQU %00000010 ; RTC:1 IS CLOCK
SD_DI .EQU %00000001 ; RTC:0 IS DATA IN (CARD <- CPU)
SD_DO .EQU %01000000 ; RTC:6 IS DATA OUT (CARD -> CPU)
SD_IOBASE .EQU SD_OPRREG ; IOBASE
;
RTCDEF .SET SD_OPRDEF ; SET DEFAULT IN HBIOS MAINLINE
#ENDIF
@ -151,6 +153,7 @@ SD_OPRMSK .EQU %00000100 ; MASK FOR BITS WE OWN IN RTC LATCH PORT
SD_CS0 .EQU %00000100 ; RTC:2 IS SELECT
SD_CNTR .EQU Z180_CNTR
SD_TRDR .EQU Z180_TRDR
SD_IOBASE .EQU SD_OPRREG ; IOBASE
;
RTCDEF .SET SD_OPRDEF ; SET DEFAULT IN HBIOS MAINLINE
#ENDIF
@ -168,6 +171,7 @@ SD_CS0 .EQU %00010000 ; PPIC:4 IS SELECT
SD_CLK .EQU %00000010 ; PPIC:1 IS CLOCK
SD_DI .EQU %00000001 ; PPIC:0 IS DATA IN (CARD <- CPU)
SD_DO .EQU %10000000 ; PPIB:7 IS DATA OUT (CARD -> CPU)
SD_IOBASE .EQU SD_PPIBASE ; IOBASE
#ENDIF
;
#IF (SDMODE == SDMODE_UART)
@ -180,6 +184,7 @@ SD_CS0 .EQU %00001000 ; UART MCR:3 IS SELECT
SD_CLK .EQU %00000100 ; UART MCR:2 IS CLOCK
SD_DI .EQU %00000001 ; UART MCR:0 IS DATA IN (CARD <- CPU)
SD_DO .EQU %00100000 ; UART MSR:5 IS DATA OUT (CARD -> CPU)
SD_IOBASE .EQU UARTIOB ; IOBASE
#ENDIF
;
#IF (SDMODE == SDMODE_DSD) ; DUAL SD
@ -193,6 +198,7 @@ SD_CS0 .EQU %00000100 ; RTC:2 IS SELECT
SD_CLK .EQU %00000010 ; RTC:1 IS CLOCK
SD_DI .EQU %00000001 ; RTC:6 IS DATA IN (CARD <- CPU)
SD_DO .EQU %00000001 ; RTC:0 IS DATA OUT (CARD -> CPU)
SD_IOBASE .EQU SD_OPRREG ; IOBASE
#ENDIF
;
#IF (SDMODE == SDMODE_MK4) ; MARK IV (CSIO STYLE INTERFACE)
@ -202,6 +208,7 @@ SD_OPRDEF .EQU %00000000 ; QUIESCENT STATE
SD_CS0 .EQU %00000100 ; SELECT ACTIVE
SD_CNTR .EQU Z180_CNTR
SD_TRDR .EQU Z180_TRDR
SD_IOBASE .EQU SD_OPRREG ; IOBASE
#ENDIF
;
#IF (SDMODE == SDMODE_SC) ; SC
@ -213,6 +220,7 @@ SD_CS0 .EQU %00000100 ; RTC:2 IS SELECT FOR PRIMARY SPI CARD
SD_CS1 .EQU %00001000 ; RTC:3 IS SELECT FOR SECONDARY SPI CARD
SD_CNTR .EQU Z180_CNTR
SD_TRDR .EQU Z180_TRDR
SD_IOBASE .EQU SD_OPRREG ; IOBASE
;
RTCDEF .SET SD_OPRDEF ; SET DEFAULT IN HBIOS MAINLINE
#ENDIF
@ -236,7 +244,7 @@ SD_CD1 .EQU %00000100 ; IN:SD_OPREG:2 = CD2, IN=0 Card detect switch
SD_CSX .EQU %00001000 ; IN/OUT:SD_OPREG:3 = CS0, PMOD SPI CS
SD_CS0 .EQU %00010000 ; IN/OUT:SD_OPREG:4 = CS1, SDCARD1 CS, IN=1 Card present
SD_CS1 .EQU %00100000 ; IN/OUT:SD_OPREG:5 = CS2, SDCARD2 CS, IN=1 Card present
SD_IOBASE .EQU SD_BASE ; IOBASE
#ENDIF
;
; SD CARD COMMANDS
@ -771,6 +779,8 @@ SD_DEVICE:
LD D,DIODEV_SD ; D := DEVICE TYPE
LD E,(IY+SD_DEV) ; E := PHYSICAL DEVICE NUMBER
LD C,%01010000 ; C := ATTRIBUTES, REMOVABLE, SD CARD
LD H,SDMODE ; H := MODE
LD L,(SD_IOBASE) ; L := BASE I/O ADDRESS
XOR A ; SIGNAL SUCCESS
RET
;

2
Source/HBIOS/simrtc.asm

@ -140,6 +140,8 @@ SIMRTC_SETTIM:
SIMRTC_DEVICE:
LD D,RTCDEV_SIMH ; D := DEVICE TYPE
LD E,0 ; E := PHYSICAL DEVICE NUMBER
LD H,0 ; H := 0, DRIVER HAS NO MODES
LD L,SIMRTC_IO ; L := BASE I/O ADDRESS
XOR A ; SIGNAL SUCCESS
RET
;

12
Source/HBIOS/sn76489.asm

@ -197,7 +197,7 @@ SN7_QUERY_VOLUME:
SN7_QUERY_DEV:
LD B, BF_SND_SN76489
LD B, SNDDEV_SN76489
LD DE, SN76489_PORT_LEFT ; E WITH LEFT PORT
LD HL, SN76489_PORT_RIGHT ; L WITH RIGHT PORT
@ -304,6 +304,15 @@ SN7_DURATION:
XOR A
RET
SN7_DEVICE:
LD D,SNDDEV_SN76489 ; D := DEVICE TYPE
LD E,0 ; E := PHYSICAL UNIT
LD C,$00 ; C := DEVICE TYPE
LD H,0 ; H := 0, DRIVER HAS NO MODES
LD L,SN76489_PORT_LEFT ; L := BASE I/O ADDRESS
XOR A
RET
SN7_FNTBL:
.DW SN7_RESET
.DW SN7_VOLUME
@ -312,6 +321,7 @@ SN7_FNTBL:
.DW SN7_PLAY
.DW SN7_QUERY
.DW SN7_DURATION
.DW SN7_DEVICE
;
#IF (($ - SN7_FNTBL) != (SND_FNCNT * 2))
.ECHO "*** INVALID SND FUNCTION TABLE ***\n"

16
Source/HBIOS/spk.asm

@ -20,6 +20,7 @@ SP_FNTBL:
.DW SP_PLAY
.DW SP_QUERY
.DW SP_DURATION
.DW SP_DEVICE
;
#IF (($ - SP_FNTBL) != (SND_FNCNT * 2))
.ECHO "*** INVALID SND FUNCTION TABLE ***\n"
@ -149,7 +150,7 @@ SP_QUERY_VOLUME:
RET
;
SP_QUERY_DEV:
LD B, BF_SND_BITMODE ; RETURN DEVICE IDENTIFIER
LD B, SNDDEV_BITMODE ; RETURN DEVICE IDENTIFIER
LD DE, (RTCIO*256)+SP_RTCIOMSK ; AND ADDRESS AND DATA PORT
XOR A
RET
@ -321,6 +322,19 @@ SP_DURATION:
RET
;
;======================================================================
; SOUND DRIVER FUNCTION - DEVICE
;======================================================================
;
SP_DEVICE:
LD D,SNDDEV_BITMODE ; D := DEVICE TYPE
LD E,0 ; E := PHYSICAL UNIT
LD C,$00 ; C := DEVICE TYPE
LD H,0 ; H := 0, DRIVER HAS NO MODES
LD L,RTCIO ; L := BASE I/O ADDRESS
XOR A
RET
;
;======================================================================
;
; STANDARD ONE SECOND TONE TABLES AT 1MHZ.
; FOR SP_BEEPER ROUTINE, FIRST WORD LOADED INTO DE, SECOND INTO HL

2
Source/HBIOS/tms.asm

@ -222,6 +222,8 @@ TMS_VDARES1: ; ENTRY POINT TO AVOID TMS_Z180IO RECURSION
TMS_VDADEV:
LD D,VDADEV_TMS ; D := DEVICE TYPE
LD E,0 ; E := PHYSICAL UNIT IS ALWAYS ZERO
LD H,TMSMODE ; H := MODE
LD L,TMS_DATREG ; L := BASE I/O ADDRESS
XOR A ; SIGNAL SUCCESS
RET

2
Source/HBIOS/vdu.asm

@ -181,6 +181,8 @@ VDU_VDARES:
VDU_VDADEV:
LD D,VDADEV_VDU ; D := DEVICE TYPE
LD E,0 ; E := PHYSICAL UNIT IS ALWAYS ZERO
LD H,0 ; H := 0, DRIVER HAS NO MODES
LD L,VDU_BASE ; L := BASE I/O ADDRESS
XOR A ; SIGNAL SUCCESS
RET

2
Source/HBIOS/vga.asm

@ -204,6 +204,8 @@ VGA_VDARES:
VGA_VDADEV:
LD D,VDADEV_VGA ; D := DEVICE TYPE
LD E,0 ; E := PHYSICAL UNIT IS ALWAYS ZERO
LD H,0 ; H := 0, DRIVER HAS NO MODES
LD L,VGA_BASE ; L := BASE I/O ADDRESS
XOR A ; SIGNAL SUCCESS
RET

2
Source/ver.inc

@ -2,4 +2,4 @@
#DEFINE RMN 1
#DEFINE RUP 1
#DEFINE RTP 0
#DEFINE BIOSVER "3.1.1-pre.17"
#DEFINE BIOSVER "3.1.1-pre.18"

2
Source/ver.lib

@ -3,5 +3,5 @@ rmn equ 1
rup equ 1
rtp equ 0
biosver macro
db "3.1.1-pre.17"
db "3.1.1-pre.18"
endm

Loading…
Cancel
Save