Added SER_ prefix
This commit is contained in:
committed by
Oliver Schmidt
parent
7b4807a8f7
commit
ad0b0982d0
@@ -44,15 +44,15 @@
|
|||||||
.addr $0000
|
.addr $0000
|
||||||
|
|
||||||
; Jump table
|
; Jump table
|
||||||
.addr INSTALL
|
.addr SER_INSTALL
|
||||||
.addr UNINSTALL
|
.addr SER_UNINSTALL
|
||||||
.addr OPEN
|
.addr SER_OPEN
|
||||||
.addr CLOSE
|
.addr SER_CLOSE
|
||||||
.addr GET
|
.addr SER_GET
|
||||||
.addr PUT
|
.addr SER_PUT
|
||||||
.addr SER_STATUS
|
.addr SER_STATUS
|
||||||
.addr IOCTL
|
.addr SER_IOCTL
|
||||||
.addr IRQ
|
.addr SER_IRQ
|
||||||
|
|
||||||
;----------------------------------------------------------------------------
|
;----------------------------------------------------------------------------
|
||||||
; Global variables
|
; Global variables
|
||||||
@@ -116,23 +116,23 @@ ParityTable:
|
|||||||
.code
|
.code
|
||||||
|
|
||||||
;----------------------------------------------------------------------------
|
;----------------------------------------------------------------------------
|
||||||
; INSTALL: Is called after the driver is loaded into memory. If possible,
|
; SER_INSTALL: Is called after the driver is loaded into memory. If possible,
|
||||||
; check if the hardware is present. Must return an SER_ERR_xx code in a/x.
|
; check if the hardware is present. Must return an SER_ERR_xx code in a/x.
|
||||||
;
|
;
|
||||||
; Since we don't have to manage the IRQ vector on the Telestrat/Atmos, this is
|
; Since we don't have to manage the IRQ vector on the Telestrat/Atmos, this is
|
||||||
; actually the same as:
|
; actually the same as:
|
||||||
;
|
;
|
||||||
; UNINSTALL: Is called before the driver is removed from memory.
|
; SER_UNINSTALL: Is called before the driver is removed from memory.
|
||||||
; No return code required (the driver is removed from memory on return).
|
; No return code required (the driver is removed from memory on return).
|
||||||
;
|
;
|
||||||
; and:
|
; and:
|
||||||
;
|
;
|
||||||
; CLOSE: Close the port and disable interrupts. Called without parameters.
|
; SER_CLOSE: Close the port and disable interrupts. Called without parameters.
|
||||||
; Must return an SER_ERR_xx code in a/x.
|
; Must return an SER_ERR_xx code in a/x.
|
||||||
|
|
||||||
INSTALL:
|
SER_INSTALL:
|
||||||
UNINSTALL:
|
SER_UNINSTALL:
|
||||||
CLOSE:
|
SER_CLOSE:
|
||||||
ldx Index ; Check for open port
|
ldx Index ; Check for open port
|
||||||
beq :+
|
beq :+
|
||||||
|
|
||||||
@@ -147,10 +147,10 @@ CLOSE:
|
|||||||
rts
|
rts
|
||||||
|
|
||||||
;----------------------------------------------------------------------------
|
;----------------------------------------------------------------------------
|
||||||
; OPEN: A pointer to a ser_params structure is passed in ptr1.
|
; SER_OPEN: A pointer to a ser_params structure is passed in ptr1.
|
||||||
; Must return an SER_ERR_xx code in a/x.
|
; Must return an SER_ERR_xx code in a/x.
|
||||||
|
|
||||||
OPEN:
|
SER_OPEN:
|
||||||
; Check if the handshake setting is valid
|
; Check if the handshake setting is valid
|
||||||
ldy #SER_PARAMS::HANDSHAKE ; Handshake
|
ldy #SER_PARAMS::HANDSHAKE ; Handshake
|
||||||
lda (ptr1),y
|
lda (ptr1),y
|
||||||
@@ -220,11 +220,11 @@ InvBaud:lda #<SER_ERR_BAUD_UNAVAIL
|
|||||||
rts
|
rts
|
||||||
|
|
||||||
;----------------------------------------------------------------------------
|
;----------------------------------------------------------------------------
|
||||||
; GET: Will fetch a character from the receive buffer and store it into the
|
; SER_GET: Will fetch a character from the receive buffer and store it into the
|
||||||
; variable pointed to by ptr1. If no data is available, SER_ERR_NO_DATA is
|
; variable pointed to by ptr1. If no data is available, SER_ERR_NO_DATA is
|
||||||
; returned.
|
; returned.
|
||||||
|
|
||||||
GET:
|
SER_GET:
|
||||||
ldy SendFreeCnt ; Send data if necessary
|
ldy SendFreeCnt ; Send data if necessary
|
||||||
iny ; Y == $FF?
|
iny ; Y == $FF?
|
||||||
beq :+
|
beq :+
|
||||||
@@ -261,10 +261,10 @@ GET:
|
|||||||
rts
|
rts
|
||||||
|
|
||||||
;----------------------------------------------------------------------------
|
;----------------------------------------------------------------------------
|
||||||
; PUT: Output character in A.
|
; SER_PUT: Output character in A.
|
||||||
; Must return an SER_ERR_xx code in a/x.
|
; Must return an SER_ERR_xx code in a/x.
|
||||||
|
|
||||||
PUT:
|
SER_PUT:
|
||||||
; Try to send
|
; Try to send
|
||||||
ldy SendFreeCnt
|
ldy SendFreeCnt
|
||||||
iny ; Y = $FF?
|
iny ; Y = $FF?
|
||||||
@@ -303,22 +303,22 @@ SER_STATUS:
|
|||||||
rts
|
rts
|
||||||
|
|
||||||
;----------------------------------------------------------------------------
|
;----------------------------------------------------------------------------
|
||||||
; IOCTL: Driver defined entry point. The wrapper will pass a pointer to ioctl
|
; SER_IOCTL: Driver defined entry point. The wrapper will pass a pointer to ioctl
|
||||||
; specific data in ptr1, and the ioctl code in A.
|
; specific data in ptr1, and the ioctl code in A.
|
||||||
; Must return an SER_ERR_xx code in a/x.
|
; Must return an SER_ERR_xx code in a/x.
|
||||||
|
|
||||||
IOCTL:
|
SER_IOCTL:
|
||||||
lda #<SER_ERR_INV_IOCTL
|
lda #<SER_ERR_INV_IOCTL
|
||||||
ldx #>SER_ERR_INV_IOCTL
|
ldx #>SER_ERR_INV_IOCTL
|
||||||
rts
|
rts
|
||||||
|
|
||||||
;----------------------------------------------------------------------------
|
;----------------------------------------------------------------------------
|
||||||
; IRQ: Called from the builtin runtime IRQ handler as a subroutine. All
|
; SER_IRQ: Called from the builtin runtime IRQ handler as a subroutine. All
|
||||||
; registers are already saved, no parameters are passed, but the carry flag
|
; registers are already saved, no parameters are passed, but the carry flag
|
||||||
; is clear on entry. The routine must return with carry set if the interrupt
|
; is clear on entry. The routine must return with carry set if the interrupt
|
||||||
; was handled, otherwise with carry clear.
|
; was handled, otherwise with carry clear.
|
||||||
|
|
||||||
IRQ:
|
SER_IRQ:
|
||||||
ldx Index ; Check for open port
|
ldx Index ; Check for open port
|
||||||
beq Done
|
beq Done
|
||||||
lda ACIA::STATUS,x ; Check ACIA status for receive interrupt
|
lda ACIA::STATUS,x ; Check ACIA status for receive interrupt
|
||||||
|
|||||||
Reference in New Issue
Block a user