Browse Source

Extend serial device type to support 4 devices including parallel port device.

pull/14/head
b1ackmai1er 7 years ago
committed by GitHub
parent
commit
a28bfc157b
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
  1. 16
      Source/HBIOS/hbios.asm
  2. 10
      Source/HBIOS/hbios.inc
  3. 5
      Source/HBIOS/pio.asm

16
Source/HBIOS/hbios.asm

@ -1336,7 +1336,7 @@ CIO_ADDENT:
; WORD UNIT SPECIFIC DATA (TYPICALLY A DEVICE INSTANCE DATA ADDRESS)
;
CIO_FNCNT .EQU 7 ; NUMBER OF CIO FUNCS (FOR RANGE CHECK)
CIO_MAX .EQU 32 ; UP TO 16 UNITS
CIO_MAX .EQU 32 ; UP TO UNITS
CIO_SIZ .EQU CIO_MAX * 4 ; EACH ENTRY IS 4 BYTES
;
.DB CIO_FNCNT ; CIO FUNCTION COUNT (FOR RANGE CHECK)
@ -1399,7 +1399,7 @@ DIO_ADDENT:
; WORD UNIT SPECIFIC DATA (TYPICALLY A DEVICE INSTANCE DATA ADDRESS)
;
DIO_FNCNT .EQU 12 ; NUMBER OF DIO FUNCS (FOR RANGE CHECK)
DIO_MAX .EQU 16 ; UP TO 16 UNITS
DIO_MAX .EQU 16 ; UP TO 32 UNITS
DIO_SIZ .EQU DIO_MAX * 4 ; EACH ENTRY IS 4 BYTES
;
.DB DIO_FNCNT ; DIO FUNCTION COUNT (FOR RANGE CHECK)
@ -2931,10 +2931,15 @@ PS_PRTSC2_1:
JP Z,PS_PRTNUL ; $FF == NO CONFIG DEFINED
LD A,E
OR A
LD HL,PS_STPPTIN
LD HL,PS_STPPTIN ; Parallel Input
JR Z,PS_PRTST1
LD HL,PS_STPPTOUT
JR PS_PRTST1
LD HL,PS_STPPTOUT ; Parallel Output
DEC A
JR Z,PS_PRTST1
LD HL,PS_STRPPTBD ; Parallel BiDirectional
DEC A
JP Z,PS_PRTST1
JP PS_PRTNUL
RET
;
PS_PRTSC1:
@ -3149,6 +3154,7 @@ PS_STPARMAP .DB "NONENMNS"
;
PS_STPPTIN .TEXT "Input$"
PS_STPPTOUT .TEXT "Output$"
PS_STRPPTBD .TEXT "Bi-Directional$"
;
; VIDEO DEVICE STRINGS
;

10
Source/HBIOS/hbios.inc

@ -83,7 +83,7 @@ BF_SYSINT_INFO .EQU $00 ; GET INTERRUPT SYSTEM INFO
BF_SYSINT_GET .EQU $10 ; GET INT VECTOR ADDRESS
BF_SYSINT_SET .EQU $20 ; SET INT VECTOR ADDRESS
;
; SERIAL DEVICE IDS
; CHAR DEVICE IDS
;
CIODEV_UART .EQU $00
CIODEV_ASCI .EQU $10
@ -93,6 +93,14 @@ CIODEV_PPPCON .EQU $40
CIODEV_SIO .EQU $50
CIODEV_ACIA .EQU $60
CIODEV_CONSOLE .EQU $D0
CIODEV_PIO .EQU $70
;
; SUB TYPES OF CHAR DEVICES
;
;00 RS-232
;01 TERMINAL
;02 PARALLEL PORT
;03 UNUSED
;
; DISK DEVICE IDS
;

5
Source/HBIOS/pio.asm

@ -15,10 +15,11 @@ PIO5B .EQU ; ECB-4PIO
PIO_Input .EQU $0000
PIO_Output .EQU $0001
PIO_BiDir .Equ $0002
DEFPIOCFGA .EQU $8000 + PIO_Input
DEFPIOCFGB .EQU $8000 + PIO_Output
DEFPIOCFGX .EQU $8000 + PIO_BiDir
PIO_NONE .EQU 0
PIO_ZPIO .EQU 1
@ -160,7 +161,7 @@ PIO_CFG:
.DB PIO_ZPIO ; PIO TYPE (SET DURING INIT)
.DB 0 ; PIO CHANNEL (A)
.DB 4PIOBASE+2 ; BASE PORT (CMD PORT)
.DW DEFPIOCFGA ; LINE CONFIGURATION
.DW DEFPIOCFGX ; LINE CONFIGURATION
.DW SIOA_RCVBUF ; POINTER TO RCV BUFFER STRUCT
;
; PIO CHANNEL B

Loading…
Cancel
Save