Added additional OSBYTE calls.

This commit is contained in:
Bobbi Webber-Manners 2021-08-15 01:26:01 -04:00
parent f47efb5752
commit df3f82ea32
3 changed files with 28 additions and 15 deletions

Binary file not shown.

View File

@ -28,14 +28,14 @@ BYTEHIGH EQU $7C ; First high OSBYTE
DW BYTE85 ; OSBYTE 133 - MEMTOP for MODE
DW BYTE86 ; OSBYTE 134 - POS, VPOS
DW BYTE87 ; OSBYTE 135 - Character, MODE
* DW BYTE88 ; OSBYTE 136 - *CODE
* DW BYTE89 ; OSBYTE 137 - *MOTOR
* DW BYTE8A ; OSBYTE 138 - Buffer insert
* DW BYTE8B ; OSBYTE 139 - *OPT
* DW BYTE8C ; OSBYTE 140 - *TAPE
* DW BYTE8D ; OSBYTE 141 - *ROM
* DW BYTE8E ; OSBYTE 142 - Enter language
* DW BYTE8F ; OSBYTE 143 - Service call
DW BYTE88 ; OSBYTE 136 - *CODE
DW BYTE89 ; OSBYTE 137 - *MOTOR
DW BYTE8A ; OSBYTE 138 - Buffer insert
DW BYTE8B ; OSBYTE 139 - *OPT
DW BYTE8C ; OSBYTE 140 - *TAPE
DW BYTE8D ; OSBYTE 141 - *ROM
DW BYTE8E ; OSBYTE 142 - Enter language
DW BYTE8F ; OSBYTE 143 - Service call
BYTWRDTOP
DW BYTEVAR ; OSBYTE 166+ - Read/Write OSBYTE variable
* Maximum high OSBYTE
@ -206,7 +206,7 @@ WORD00 IF MAXLEN-OSTEXT-2
ELSE
LDA (OSCTRL),Y ; Copy control block
STA OSTEXT,Y ; 0,1 => text
INY ; 2 = MAXLEN
INY ; 2 = MAXLEN
CPY #$05 ; 3 = MINCHAR
BCC WORD00 ; 4 = MAXCHAR
LDY #$00 ; Initial line length = zero
@ -356,11 +356,22 @@ BYTE85 LDY #$80 ; $85 = top user mem for mode
LDX #$00
RTS
* BYTE86 and BYTE87 are in AUXMEM.VDU.S
BYTE88 JMP (USERV) ; $88 = *CODE
BYTE89 RTS ; $89 = *MOTOR
BYTE8A RTS ; $8A = insert val into buf
BYTE8B LDA #$00 ; $8B = *OPT
JMP (FSCV) ; Hand over to filing system
BYTE8C RTS ; $8C = *TAPE
BYTE8D RTS ; $8D = *ROM
* OSBYTE $8E - Enter language ROM
*
BYTE8E PHP ; Save CLC=RESET, SEC=Not RESET
LDA #$08
STA FAULT+0
@ -375,7 +386,6 @@ BYTE8E PHP ; Save CLC=RESET, SEC=Not RESET
* OSBYTE $8F - Issue service call
* X=service call, Y=parameter
*
BYTE8F TXA
SERVICE LDX #$0F
BIT $8006

View File

@ -304,8 +304,10 @@ OSFILEM2 ASC ')'
* A=modified if implemented
* X,Y=any return values
*
FSCHND CMP #$01
BEQ CHKEOF ; A=0 - Read EOF
FSCHND CMP #$00
BEQ FSOPT ; A=0 - *OPT
CMP #$01
BEQ CHKEOF ; A=1 - Read EOF
CMP #$02
BEQ FSCRUN ; A=2 - */filename
CMP #$04
@ -327,6 +329,9 @@ FSCREN
OSFSCM ASC 'OSFSC.'
DB $00
* Performs OSFSC *OPT function
FSOPT RTS ; No FS options for now
* Performs OSBYTE $7F EOF function
* File ref number is in X
CHKEOF >>> WRTMAIN
@ -435,5 +440,3 @@ STARDIRRET
>>> ENTAUX
RTS