mirror of
https://github.com/A2osX/A2osX.git
synced 2024-06-27 00:29:29 +00:00
Kernel 0.93++
This commit is contained in:
parent
bf1990479c
commit
c29cb8be90
|
@ -133,19 +133,6 @@ Create a hDEV
|
||||||
Y,A = PTR to Expanded String
|
Y,A = PTR to Expanded String
|
||||||
X = hMem to Expanded String (C-String)
|
X = hMem to Expanded String (C-String)
|
||||||
|
|
||||||
# PutEnv
|
|
||||||
Change or add an environment variable, string is 'NAME=VALUE'
|
|
||||||
|
|
||||||
## C
|
|
||||||
`int putenv(char *string);`
|
|
||||||
|
|
||||||
## ASM
|
|
||||||
**In:**
|
|
||||||
`>PUSHW string`
|
|
||||||
`>SYSCALL putenv`
|
|
||||||
|
|
||||||
## RETURN VALUE
|
|
||||||
|
|
||||||
# SetEnv
|
# SetEnv
|
||||||
Change or add an environment variable
|
Change or add an environment variable
|
||||||
|
|
||||||
|
@ -177,6 +164,19 @@ and returns a pointer to the corresponding value string.
|
||||||
CC : Y,A = PTR to VALUE (C-String)
|
CC : Y,A = PTR to VALUE (C-String)
|
||||||
CS : not found
|
CS : not found
|
||||||
|
|
||||||
|
# PutEnv
|
||||||
|
Change or add an environment variable, string is 'NAME=VALUE'
|
||||||
|
|
||||||
|
## C
|
||||||
|
`int putenv(char *string);`
|
||||||
|
|
||||||
|
## ASM
|
||||||
|
**In:**
|
||||||
|
`>PUSHW string`
|
||||||
|
`>SYSCALL putenv`
|
||||||
|
|
||||||
|
## RETURN VALUE
|
||||||
|
|
||||||
# UnsetEnv
|
# UnsetEnv
|
||||||
Remove an environment variable
|
Remove an environment variable
|
||||||
|
|
||||||
|
@ -357,15 +357,19 @@ Add Data to MD5 computation
|
||||||
|
|
||||||
## RETURN VALUE
|
## RETURN VALUE
|
||||||
|
|
||||||
# GetMem0
|
# Realloc
|
||||||
Y,A = Size Requested
|
|
||||||
|
## C
|
||||||
|
`void *realloc(short int hMem, int size);`
|
||||||
|
|
||||||
|
## ASM
|
||||||
|
`>PUSHB hMem`
|
||||||
|
`>PUSHW size`
|
||||||
|
`>SYSCALL realloc`
|
||||||
|
|
||||||
## RETURN VALUE
|
## RETURN VALUE
|
||||||
CC : success
|
YA = ptr
|
||||||
YA = PTR to Mem (ZERO Initialised)
|
X = hMem
|
||||||
* X = hMem
|
|
||||||
CS :
|
|
||||||
A = EC
|
|
||||||
|
|
||||||
# GetMem
|
# GetMem
|
||||||
Y,A = Size Requested
|
Y,A = Size Requested
|
||||||
|
@ -1292,24 +1296,41 @@ CS : no match
|
||||||
CC, Y,A=0
|
CC, Y,A=0
|
||||||
CS, Y,A > 0 or < 0
|
CS, Y,A > 0 or < 0
|
||||||
|
|
||||||
# NewStrV
|
# StrVShift
|
||||||
**In:**
|
|
||||||
A = Initial Size (Page)
|
## ASM
|
||||||
|
`>PUSHB hSTRV`
|
||||||
|
`>PUSHB index`
|
||||||
|
`>SYSCALL StrVShift`
|
||||||
|
|
||||||
## RETURN VALUE
|
## RETURN VALUE
|
||||||
X = hStrV
|
|
||||||
Y,A = Ptr
|
|
||||||
|
|
||||||
# StrVGet
|
# StrVGet
|
||||||
**In:**
|
|
||||||
A = hStrV
|
## ASM
|
||||||
X = index
|
`>PUSHB hSTRV`
|
||||||
|
`>PUSHB index`
|
||||||
|
`>PUSHW ptr`
|
||||||
|
`>SYSCALL StrVGet`
|
||||||
|
|
||||||
## RETURN VALUE
|
## RETURN VALUE
|
||||||
Y,A = Ptr
|
CC: Y,A = Ptr
|
||||||
|
CS: Y,A = NULL
|
||||||
|
|
||||||
|
# StrVAdd
|
||||||
|
|
||||||
|
## ASM
|
||||||
|
`>PUSHB hSTRV`
|
||||||
|
`>PUSHW str`
|
||||||
|
`>SYSCALL StrVAdd`
|
||||||
|
|
||||||
|
## RETURN VALUE
|
||||||
|
CC : str added to hSTRV
|
||||||
|
CS : hSTRV full
|
||||||
|
|
||||||
# StrVDup
|
# StrVDup
|
||||||
**In:**
|
|
||||||
|
## ASM
|
||||||
Y,A = Src StrV
|
Y,A = Src StrV
|
||||||
|
|
||||||
## RETURN VALUE
|
## RETURN VALUE
|
||||||
|
@ -1317,7 +1338,7 @@ CS : no match
|
||||||
A = Str Count
|
A = Str Count
|
||||||
|
|
||||||
# Str2StrV
|
# Str2StrV
|
||||||
Expand String and convert to ArgV List
|
Expand String and convert to StrV List
|
||||||
|
|
||||||
## C
|
## C
|
||||||
short int str2strv(char* args, char* argv[])
|
short int str2strv(char* args, char* argv[])
|
||||||
|
|
|
@ -1,72 +0,0 @@
|
||||||
*** Auto generated by docgen.cmd ***
|
|
||||||
|
|
||||||
## Copyright
|
|
||||||
Copyright 2015 - 2020, Remy Gibert and the A2osX contributors.
|
|
||||||
|
|
||||||
## MD5
|
|
||||||
Return MD5 Hash for input String
|
|
||||||
|
|
||||||
# C
|
|
||||||
`void md5 (const char* str, char* digest);`
|
|
||||||
|
|
||||||
# ASM
|
|
||||||
`>PUSHW digest`
|
|
||||||
`>PUSHW str`
|
|
||||||
|
|
||||||
## RETURN VALUE
|
|
||||||
CC
|
|
||||||
|
|
||||||
## MD5Init
|
|
||||||
Initialize a MD5 computation
|
|
||||||
|
|
||||||
# C
|
|
||||||
`hMD5 md5init ();`
|
|
||||||
|
|
||||||
# ASM
|
|
||||||
`>LIBCALL hLIBCRYPT,LIBCRYPT.MD5Init`
|
|
||||||
|
|
||||||
## RETURN VALUE
|
|
||||||
A = hMem To S.MD5
|
|
||||||
|
|
||||||
## MD5Update
|
|
||||||
Add Data to MD5 computation
|
|
||||||
|
|
||||||
# C
|
|
||||||
`void md5update (hMD5 md5, char* data, int len);`
|
|
||||||
|
|
||||||
# ASM
|
|
||||||
`>PUSHW len`
|
|
||||||
`>PUSHW data`
|
|
||||||
`>LDA.G md5`
|
|
||||||
`>hLIBCRYPT,LIBCRYPT.MD5Update`
|
|
||||||
|
|
||||||
## RETURN VALUE
|
|
||||||
|
|
||||||
## MD5Finalize
|
|
||||||
|
|
||||||
# C
|
|
||||||
`void md5finalize (hMD5 md5, char* digest);`
|
|
||||||
|
|
||||||
# ASM
|
|
||||||
`>PUSHW digest`
|
|
||||||
`>LDA.G md5`
|
|
||||||
`>LIBCALL hLIBCRYPT,LIBCRYPT.MD5Finalize`
|
|
||||||
|
|
||||||
## RETURN VALUE
|
|
||||||
|
|
||||||
## License
|
|
||||||
A2osX is licensed under the GNU General Public License.
|
|
||||||
|
|
||||||
This program is free software; you can redistribute it and/or modify
|
|
||||||
it under the terms of the GNU General Public License as published by
|
|
||||||
the Free Software Foundation; either version 2 of the License, or
|
|
||||||
(at your option) any later version.
|
|
||||||
|
|
||||||
This program is distributed in the hope that it will be useful,
|
|
||||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
GNU General Public License for more details.
|
|
||||||
|
|
||||||
The full A2osX license can be found **[Here](../LICENSE)**.
|
|
||||||
|
|
||||||
*** End of Auto generated file ***
|
|
Binary file not shown.
|
@ -319,6 +319,7 @@ Ctrl.O ldy #FileY+1
|
||||||
sta (pData),y
|
sta (pData),y
|
||||||
|
|
||||||
>STZ.G FileX
|
>STZ.G FileX
|
||||||
|
>STA.G ScreenX
|
||||||
|
|
||||||
jmp SCRN.UpdateMainAndStatus
|
jmp SCRN.UpdateMainAndStatus
|
||||||
|
|
||||||
|
@ -345,9 +346,6 @@ Ctrl.P ldy #FileY+1
|
||||||
jsr BUF.GetLineAX A,X = FileY+PAGE
|
jsr BUF.GetLineAX A,X = FileY+PAGE
|
||||||
bcs .8
|
bcs .8
|
||||||
|
|
||||||
tya Y = line length
|
|
||||||
>STA.G FileX
|
|
||||||
|
|
||||||
ldy #FileY+1
|
ldy #FileY+1
|
||||||
pla
|
pla
|
||||||
sta (pData),y
|
sta (pData),y
|
||||||
|
@ -365,6 +363,9 @@ Ctrl.P ldy #FileY+1
|
||||||
adc #0
|
adc #0
|
||||||
sta (pData),y
|
sta (pData),y
|
||||||
|
|
||||||
|
>STZ.G FileX
|
||||||
|
>STA.G ScreenX
|
||||||
|
|
||||||
jmp SCRN.UpdateMainAndStatus
|
jmp SCRN.UpdateMainAndStatus
|
||||||
|
|
||||||
.8 pla
|
.8 pla
|
||||||
|
|
|
@ -283,9 +283,12 @@ SCRN.UpdateCurrentLine
|
||||||
inx
|
inx
|
||||||
|
|
||||||
.1 jsr BUF.GetLineAX
|
.1 jsr BUF.GetLineAX
|
||||||
bcs SCRN.UpdateMain.9
|
bcc .2
|
||||||
|
|
||||||
phy
|
jsr SCRN.LineBufInitEdit
|
||||||
|
jmp SCRN.UpdateLineAtBufPtr.EOL
|
||||||
|
|
||||||
|
.2 phy
|
||||||
>LDA.G CurY
|
>LDA.G CurY
|
||||||
ply
|
ply
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
|
|
|
@ -35,17 +35,8 @@ CMD.SHIFT lda (ZPArgVBufPtr)
|
||||||
|
|
||||||
CMD.SHIFT.1 inc
|
CMD.SHIFT.1 inc
|
||||||
|
|
||||||
CMD.SHIFTA >SYSCALL ArgV
|
CMD.SHIFTA >SYSCALL Shift
|
||||||
bcs .8
|
|
||||||
|
|
||||||
jsr RemoveStrFromArgV
|
|
||||||
|
|
||||||
ldy #S.PS.ARGC
|
|
||||||
lda (pPS),y
|
|
||||||
dec
|
|
||||||
sta (pPS),y
|
|
||||||
|
|
||||||
.8 clc
|
|
||||||
CMD.SHIFTA.RTS rts
|
CMD.SHIFTA.RTS rts
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
CMD.PUSHD >LDA.G PUSHD.STACK
|
CMD.PUSHD >LDA.G PUSHD.STACK
|
||||||
|
@ -133,7 +124,12 @@ CMD.CD.YA >SYSCALL realpath
|
||||||
bcs .19
|
bcs .19
|
||||||
>STYA ZPPtr2
|
>STYA ZPPtr2
|
||||||
|
|
||||||
jsr StrCpyPtr1Ptr2
|
ldy #$ff
|
||||||
|
.1 iny
|
||||||
|
lda (ZPPtr1),y
|
||||||
|
sta (ZPPtr2),y
|
||||||
|
bne .1
|
||||||
|
|
||||||
lda #'/'
|
lda #'/'
|
||||||
sta (ZPPtr2),y
|
sta (ZPPtr2),y
|
||||||
|
|
||||||
|
|
35
BIN/SH.S.txt
35
BIN/SH.S.txt
|
@ -486,21 +486,6 @@ CheckSleep ldy #Sleep+3
|
||||||
ora (pData),y
|
ora (pData),y
|
||||||
rts
|
rts
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
RemoveStrFromArgV
|
|
||||||
>STYA ZPPtr1
|
|
||||||
>STYA ZPPtr2
|
|
||||||
|
|
||||||
jsr GetPtr1LenY
|
|
||||||
.2 jsr AddYp1Ptr1
|
|
||||||
|
|
||||||
jsr StrCpyPtr1Ptr2
|
|
||||||
tya
|
|
||||||
beq .8
|
|
||||||
|
|
||||||
jsr AddAp1Ptr2
|
|
||||||
bra .2
|
|
||||||
.8 rts
|
|
||||||
*--------------------------------------
|
|
||||||
GetPtr1NextChar lda (ZPPtr1)
|
GetPtr1NextChar lda (ZPPtr1)
|
||||||
beq IncPtr1.8
|
beq IncPtr1.8
|
||||||
|
|
||||||
|
@ -518,31 +503,15 @@ GetPtr1LenY ldy #$ff
|
||||||
GetPtr1NextString
|
GetPtr1NextString
|
||||||
jsr GetPtr1LenY
|
jsr GetPtr1LenY
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
AddYp1Ptr1 tya
|
tya
|
||||||
AddAp1Ptr1 sec
|
AddAp1Ptr1 sec
|
||||||
.HS 90 BCC
|
|
||||||
AddAPtr1 clc
|
|
||||||
adc ZPPtr1
|
adc ZPPtr1
|
||||||
sta ZPPtr1
|
sta ZPPtr1
|
||||||
bcc .8
|
bcc .8
|
||||||
inc ZPPtr1+1
|
inc ZPPtr1+1
|
||||||
.8 rts
|
.8 rts
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
AddAp1Ptr2 sec
|
|
||||||
adc ZPPtr2
|
|
||||||
sta ZPPtr2
|
|
||||||
bcc .8
|
|
||||||
inc ZPPtr2+1
|
|
||||||
.8 rts
|
|
||||||
*--------------------------------------
|
|
||||||
StrCpyPtr1Ptr2 ldy #$ff
|
|
||||||
.1 iny
|
|
||||||
lda (ZPPtr1),y
|
|
||||||
sta (ZPPtr2),y
|
|
||||||
bne .1
|
|
||||||
|
|
||||||
rts
|
|
||||||
*--------------------------------------
|
|
||||||
ToUpperCase cmp #'a'
|
ToUpperCase cmp #'a'
|
||||||
bcc .8
|
bcc .8
|
||||||
cmp #'z'+1
|
cmp #'z'+1
|
||||||
|
|
|
@ -267,7 +267,7 @@ SYS.LoadTxtFile .EQ $AA
|
||||||
SYS.GetMemStat .EQ $AC
|
SYS.GetMemStat .EQ $AC
|
||||||
* .EQ $AE
|
* .EQ $AE
|
||||||
|
|
||||||
* .EQ $B0
|
SYS.Shift .EQ $B0
|
||||||
SYS.ArgV .EQ $B2
|
SYS.ArgV .EQ $B2
|
||||||
SYS.Expand .EQ $B4
|
SYS.Expand .EQ $B4
|
||||||
SYS.FileSearch .EQ $B6
|
SYS.FileSearch .EQ $B6
|
||||||
|
|
|
@ -1,9 +1,52 @@
|
||||||
NEW
|
NEW
|
||||||
AUTO 3,1
|
AUTO 3,1
|
||||||
*/--------------------------------------
|
*/--------------------------------------
|
||||||
|
* # Shift
|
||||||
|
* ## ASM
|
||||||
|
* A = argument index.
|
||||||
|
* ## RETURN VALUE
|
||||||
|
* CC : success
|
||||||
|
* Y,A = PTR To Arg[A]
|
||||||
|
* CS : Out Of Bound
|
||||||
|
*\--------------------------------------
|
||||||
|
K.Shift jsr K.ArgV
|
||||||
|
bcs .9
|
||||||
|
|
||||||
|
>STYA ZPPtr1
|
||||||
|
* >STYA ZPPtr2 already set from ArgV
|
||||||
|
|
||||||
|
ldy #$ff
|
||||||
|
|
||||||
|
.1 iny
|
||||||
|
lda (ZPPtr1),y
|
||||||
|
bne .1
|
||||||
|
|
||||||
|
.2 jsr SHARED.AddYp1ToPtr1
|
||||||
|
|
||||||
|
ldy #$ff
|
||||||
|
|
||||||
|
.3 iny
|
||||||
|
lda (ZPPtr1),y
|
||||||
|
sta (ZPPtr2),y
|
||||||
|
bne .3
|
||||||
|
|
||||||
|
tya
|
||||||
|
beq .8
|
||||||
|
|
||||||
|
jsr SHARED.AddYp1ToPtr2
|
||||||
|
bra .2
|
||||||
|
|
||||||
|
.8 ldy #S.PS.ARGC
|
||||||
|
lda (pPS),y
|
||||||
|
dec
|
||||||
|
sta (pPS),y
|
||||||
|
clc
|
||||||
|
rts
|
||||||
|
|
||||||
|
.9 rts
|
||||||
|
*/--------------------------------------
|
||||||
* # ArgV
|
* # ArgV
|
||||||
* ## ASM
|
* ## ASM
|
||||||
* **In:**
|
|
||||||
* A = argument index.
|
* A = argument index.
|
||||||
* ## RETURN VALUE
|
* ## RETURN VALUE
|
||||||
* CC : success
|
* CC : success
|
||||||
|
|
|
@ -84,7 +84,11 @@ K.Expand jsr K.strdup
|
||||||
lda /K.Buf256
|
lda /K.Buf256
|
||||||
>STYA FORPNT
|
>STYA FORPNT
|
||||||
|
|
||||||
jsr K.GetEnv.I
|
ldy #S.PS.hENV
|
||||||
|
lda (pPs),y
|
||||||
|
|
||||||
|
ldx #SYS.GetEnv
|
||||||
|
jsr K.SYSCALL.JMPX
|
||||||
bcs .70
|
bcs .70
|
||||||
|
|
||||||
ldx ENV.BufLen
|
ldx ENV.BufLen
|
||||||
|
@ -318,42 +322,6 @@ ENV.GetP3LenY ldy #$ff
|
||||||
bne .1
|
bne .1
|
||||||
rts
|
rts
|
||||||
*/--------------------------------------
|
*/--------------------------------------
|
||||||
* # PutEnv
|
|
||||||
* Change or add an environment variable, string is 'NAME=VALUE'
|
|
||||||
* ## C
|
|
||||||
* `int putenv(char *string);`
|
|
||||||
* ## ASM
|
|
||||||
* **In:**
|
|
||||||
* `>PUSHW string`
|
|
||||||
* `>SYSCALL putenv`
|
|
||||||
* ## RETURN VALUE
|
|
||||||
*\--------------------------------------
|
|
||||||
K.PutEnv >PULLW TXTPTR NAME=VALUE
|
|
||||||
|
|
||||||
ldy #$ff
|
|
||||||
|
|
||||||
.1 iny
|
|
||||||
lda (TXTPTR),y NAME=
|
|
||||||
beq .9
|
|
||||||
|
|
||||||
cmp #'='
|
|
||||||
bne .1
|
|
||||||
|
|
||||||
tya
|
|
||||||
sec skip =
|
|
||||||
adc TXTPTR
|
|
||||||
sta FORPNT
|
|
||||||
|
|
||||||
lda #0
|
|
||||||
adc TXTPTR+1
|
|
||||||
sta FORPNT+1
|
|
||||||
|
|
||||||
bra K.SetEnv.I
|
|
||||||
|
|
||||||
.9 lda #E.SYN
|
|
||||||
sec
|
|
||||||
rts
|
|
||||||
*/--------------------------------------
|
|
||||||
* # SetEnv
|
* # SetEnv
|
||||||
* Change or add an environment variable
|
* Change or add an environment variable
|
||||||
* ## C
|
* ## C
|
||||||
|
@ -365,18 +333,14 @@ K.PutEnv >PULLW TXTPTR NAME=VALUE
|
||||||
* `>SYSCALL setenv`
|
* `>SYSCALL setenv`
|
||||||
* ## RETURN VALUE
|
* ## RETURN VALUE
|
||||||
*\--------------------------------------
|
*\--------------------------------------
|
||||||
K.SetEnv >PULLW FORPNT value
|
K.SetEnv
|
||||||
>PULLW TXTPTR name
|
* >PULLW FORPNT value
|
||||||
|
* >PULLW TXTPTR name
|
||||||
|
|
||||||
K.SetEnv.I ldy #S.PS.hENV
|
* ldy #S.PS.hENV
|
||||||
lda (pPs),y
|
* lda (pPs),y
|
||||||
|
|
||||||
sta SETREADAUX
|
* jmp K.SYSCALL.JMPX
|
||||||
sta SETWRITEAUX
|
|
||||||
jsr ENVX.SetEnv
|
|
||||||
sta CLRREADAUX
|
|
||||||
sta CLRWRITEAUX
|
|
||||||
rts
|
|
||||||
*/--------------------------------------
|
*/--------------------------------------
|
||||||
* # GetEnv
|
* # GetEnv
|
||||||
* searches the environment list to find the environment variable name,
|
* searches the environment list to find the environment variable name,
|
||||||
|
@ -393,17 +357,24 @@ K.SetEnv.I ldy #S.PS.hENV
|
||||||
* CS : not found
|
* CS : not found
|
||||||
*\--------------------------------------
|
*\--------------------------------------
|
||||||
K.GetEnv >PULLW FORPNT value
|
K.GetEnv >PULLW FORPNT value
|
||||||
>PULLW TXTPTR name
|
* >PULLW TXTPTR name
|
||||||
|
*
|
||||||
|
* ldy #S.PS.hENV
|
||||||
|
* lda (pPs),y
|
||||||
|
|
||||||
K.GetEnv.I ldy #S.PS.hENV
|
* jmp K.SYSCALL.JMPX
|
||||||
lda (pPs),y
|
*/--------------------------------------
|
||||||
|
* # PutEnv
|
||||||
sta SETREADAUX
|
* Change or add an environment variable, string is 'NAME=VALUE'
|
||||||
sta SETWRITEAUX
|
* ## C
|
||||||
jsr ENVX.GetEnv
|
* `int putenv(char *string);`
|
||||||
sta CLRREADAUX
|
* ## ASM
|
||||||
sta CLRWRITEAUX
|
* **In:**
|
||||||
rts
|
* `>PUSHW string`
|
||||||
|
* `>SYSCALL putenv`
|
||||||
|
* ## RETURN VALUE
|
||||||
|
*\--------------------------------------
|
||||||
|
K.PutEnv >PULLW TXTPTR NAME=VALUE
|
||||||
*/--------------------------------------
|
*/--------------------------------------
|
||||||
* # UnsetEnv
|
* # UnsetEnv
|
||||||
* Remove an environment variable
|
* Remove an environment variable
|
||||||
|
@ -415,17 +386,13 @@ K.GetEnv.I ldy #S.PS.hENV
|
||||||
* `>SYSCALL unsetenv`
|
* `>SYSCALL unsetenv`
|
||||||
* ## RETURN VALUE
|
* ## RETURN VALUE
|
||||||
*\--------------------------------------
|
*\--------------------------------------
|
||||||
K.UnsetEnv >PULLW TXTPTR name
|
K.UnsetEnv
|
||||||
|
* >PULLW TXTPTR name
|
||||||
|
|
||||||
ldy #S.PS.hENV
|
ldy #S.PS.hENV
|
||||||
lda (pPs),y
|
lda (pPs),y
|
||||||
|
|
||||||
sta SETREADAUX
|
jmp K.SYSCALL.JMPX
|
||||||
sta SETWRITEAUX
|
|
||||||
jsr ENVX.UnsetEnv
|
|
||||||
sta CLRREADAUX
|
|
||||||
sta CLRWRITEAUX
|
|
||||||
rts
|
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
MAN
|
MAN
|
||||||
SAVE USR/SRC/SYS/KERNEL.S.ENV
|
SAVE USR/SRC/SYS/KERNEL.S.ENV
|
||||||
|
|
|
@ -3,11 +3,17 @@ NEW
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
ENVX.hEnv .BS 1
|
ENVX.hEnv .BS 1
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
ENVX.PutEnv ldy #$ff
|
ENVX.PutEnv.9 lda #E.SYN
|
||||||
|
sec
|
||||||
|
rts
|
||||||
|
*--------------------------------------
|
||||||
|
ENVX.PutEnv tax save hEnv
|
||||||
|
|
||||||
|
ldy #$ff
|
||||||
|
|
||||||
.1 iny
|
.1 iny
|
||||||
jsr SHARED.TXTPTR.GetY NAME=
|
jsr SHARED.TXTPTR.GetY NAME=
|
||||||
beq .9
|
beq ENVX.PutEnv.9
|
||||||
|
|
||||||
cmp #'='
|
cmp #'='
|
||||||
bne .1
|
bne .1
|
||||||
|
@ -21,11 +27,7 @@ ENVX.PutEnv ldy #$ff
|
||||||
adc TXTPTR+1
|
adc TXTPTR+1
|
||||||
sta FORPNT+1
|
sta FORPNT+1
|
||||||
|
|
||||||
bra ENVX.SetEnv
|
txa get back hEnv
|
||||||
|
|
||||||
.9 lda #E.SYN
|
|
||||||
sec
|
|
||||||
rts
|
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
ENVX.SetEnv jsr ENVX.UnsetEnv
|
ENVX.SetEnv jsr ENVX.UnsetEnv
|
||||||
|
|
||||||
|
|
|
@ -106,7 +106,7 @@ K.SYSCALL .DA 0 $00
|
||||||
.DA K.GetMemStat
|
.DA K.GetMemStat
|
||||||
.DA 0
|
.DA 0
|
||||||
|
|
||||||
.DA 0 $B0
|
.DA K.Shift $B0
|
||||||
.DA K.ArgV
|
.DA K.ArgV
|
||||||
.DA K.Expand
|
.DA K.Expand
|
||||||
.DA K.FileSearch
|
.DA K.FileSearch
|
||||||
|
@ -351,17 +351,17 @@ K.SYSCALL.BANK .DA #RRAMWRAMBNK1 $00
|
||||||
.DA #RRAMWRAMBNK2
|
.DA #RRAMWRAMBNK2
|
||||||
.DA #$80
|
.DA #$80
|
||||||
.DA #RRAMWRAMBNK2
|
.DA #RRAMWRAMBNK2
|
||||||
.DA #$80
|
.DA #0 $B8 : ENV
|
||||||
.DA #RRAMWRAMBNK2
|
.DA #0
|
||||||
.DA #$80
|
.DA #0
|
||||||
.DA #RRAMWRAMBNK2
|
.DA #0
|
||||||
.DA #$80
|
.DA #0
|
||||||
.DA #RRAMWRAMBNK2
|
.DA #0
|
||||||
.DA #$80
|
.DA #0
|
||||||
.DA #RRAMWRAMBNK2
|
.DA #0
|
||||||
.DA #$80
|
.DA #0
|
||||||
|
|
||||||
.DA #0 $C0
|
.DA #0 $C0 : TIME
|
||||||
.DA #$80
|
.DA #$80
|
||||||
.DA #0
|
.DA #0
|
||||||
.DA #$80
|
.DA #$80
|
||||||
|
@ -482,10 +482,18 @@ K.SYSCALL.JMPX sta SETREADAUX
|
||||||
sta CLRWRITEAUX
|
sta CLRWRITEAUX
|
||||||
rts
|
rts
|
||||||
|
|
||||||
.1 jmp (.2-SYS.StrFTime,x)
|
.1 jmp (.2-SYS.PutEnv,x)
|
||||||
.2 .DA TIMEX.StrFTime
|
|
||||||
|
.2 .DA ENVX.PutEnv
|
||||||
|
.DA ENVX.SetEnv
|
||||||
|
.DA ENVX.GetEnv
|
||||||
|
.DA ENVX.UnsetEnv
|
||||||
|
|
||||||
|
.DA 0 Time
|
||||||
|
.DA TIMEX.StrFTime
|
||||||
.DA TIMEX.PTime2Time
|
.DA TIMEX.PTime2Time
|
||||||
.DA TIMEX.CTime2Time
|
.DA TIMEX.CTime2Time
|
||||||
|
|
||||||
.DA MD5X.MD5
|
.DA MD5X.MD5
|
||||||
.DA MD5X.Init
|
.DA MD5X.Init
|
||||||
.DA MD5X.Update
|
.DA MD5X.Update
|
||||||
|
|
|
@ -226,7 +226,8 @@ PS.Load ldy #$ff
|
||||||
|
|
||||||
.6 lda K.S.STAT+S.STAT.P.TYPE
|
.6 lda K.S.STAT+S.STAT.P.TYPE
|
||||||
cmp #S.FI.T.BIN
|
cmp #S.FI.T.BIN
|
||||||
beq PS.LoadBIN
|
bne .7
|
||||||
|
jmp PS.LoadBIN
|
||||||
|
|
||||||
.7 cmp #S.FI.T.TXT
|
.7 cmp #S.FI.T.TXT
|
||||||
beq PS.Load.SCRIPT
|
beq PS.Load.SCRIPT
|
||||||
|
@ -251,7 +252,7 @@ PS.Load.SCRIPT ldx #$ff
|
||||||
|
|
||||||
>PUSHWI PS.Load.ROOT
|
>PUSHWI PS.Load.ROOT
|
||||||
>PUSHWI K.Buf256 K.Buf256 = "$ROOT"
|
>PUSHWI K.Buf256 K.Buf256 = "$ROOT"
|
||||||
jsr K.GetEnv
|
>SYSCALL2 GetEnv
|
||||||
bcs PS.Load.IPATH
|
bcs PS.Load.IPATH
|
||||||
|
|
||||||
ldx #$ff
|
ldx #$ff
|
||||||
|
@ -795,7 +796,7 @@ ENV.Search.PATH ldx #4
|
||||||
|
|
||||||
>PUSHW ENV.VARS,x
|
>PUSHW ENV.VARS,x
|
||||||
>PUSHWI 0 allocate...
|
>PUSHWI 0 allocate...
|
||||||
jsr K.GetEnv get value for Search Path
|
>SYSCALL2 GetEnv get value for Search Path
|
||||||
bcs K.FileSearch.RTS
|
bcs K.FileSearch.RTS
|
||||||
|
|
||||||
>STYA ENV.Search.2+1
|
>STYA ENV.Search.2+1
|
||||||
|
|
|
@ -5,57 +5,43 @@ DRV.TERM cld
|
||||||
|
|
||||||
jmp (.1,x)
|
jmp (.1,x)
|
||||||
|
|
||||||
.1 .DA DRV.TERM.STATUS.LC
|
.1 .DA TERM.STATUS
|
||||||
.DA A2osX.BADCALL
|
.DA A2osX.BADCALL
|
||||||
.DA A2osX.BADCALL
|
.DA A2osX.BADCALL
|
||||||
.DA A2osX.BADCALL
|
.DA A2osX.BADCALL
|
||||||
.DA DRV.TERM.CONTROL.LC
|
.DA TERM.CONTROL
|
||||||
.DA A2osX.BADCALL
|
.DA A2osX.BADCALL
|
||||||
.DA DRV.TERM.OPEN.LC
|
.DA TERM.OPEN
|
||||||
.DA DRV.TERM.CLOSE.LC
|
.DA TERM.CLOSE
|
||||||
.DA DRV.TERM.READ.LC
|
.DA TERM.READ
|
||||||
.DA DRV.TERM.WRITE.LC
|
.DA TERM.WRITE
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
DRV.TERM.STATUS.LC
|
TERM.STATUS jsr TERM.GetIOCTLBufCntDCB
|
||||||
jsr DRV.TERM.GetIOCTLBufCntDCB
|
|
||||||
|
|
||||||
ldy #S.IOCTL.STATCODE
|
ldy #S.IOCTL.STATCODE
|
||||||
lda (ZPIOCTL),y
|
lda (ZPIOCTL),y
|
||||||
bra DRV.TERM.TOAUX
|
bra TERM.TOAUX
|
||||||
|
|
||||||
DRV.TERM.CONTROL.LC
|
TERM.CONTROL
|
||||||
DRV.TERM.OPEN.LC
|
TERM.OPEN
|
||||||
DRV.TERM.CLOSE.LC
|
TERM.CLOSE pha DEV.ID in A for OPEN
|
||||||
pha DEV.ID in A for OPEN
|
jsr TERM.GetDCB
|
||||||
jsr DRV.TERM.GetDCB
|
|
||||||
pla
|
pla
|
||||||
bra DRV.TERM.TOAUX
|
bra TERM.TOAUX
|
||||||
|
|
||||||
DRV.TERM.READ.LC
|
TERM.READ
|
||||||
DRV.TERM.WRITE.LC
|
TERM.WRITE jsr TERM.GetIOCTLBufCntDCB
|
||||||
jsr DRV.TERM.GetIOCTLBufCntDCB
|
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
DRV.TERM.TOAUX sta SETREADAUX
|
TERM.TOAUX sta SETREADAUX
|
||||||
sta SETWRITEAUX
|
sta SETWRITEAUX
|
||||||
jsr .1
|
jsr .1
|
||||||
sta CLRREADAUX
|
sta CLRREADAUX
|
||||||
sta CLRWRITEAUX
|
sta CLRWRITEAUX
|
||||||
rts
|
rts
|
||||||
|
|
||||||
.1 jmp (.2,x)
|
.1 jmp (TERMX,x)
|
||||||
|
|
||||||
.2 .DA DRV.TERM.STATUS
|
|
||||||
.DA A2osX.BADCALL
|
|
||||||
.DA A2osX.BADCALL
|
|
||||||
.DA A2osX.BADCALL
|
|
||||||
.DA DRV.TERM.CONTROL
|
|
||||||
.DA A2osX.BADCALL
|
|
||||||
.DA DRV.TERM.OPEN
|
|
||||||
.DA DRV.TERM.CLOSE
|
|
||||||
.DA DRV.TERM.READ
|
|
||||||
.DA DRV.TERM.WRITE
|
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
DRV.TERM.GetIOCTLBufCntDCB
|
TERM.GetIOCTLBufCntDCB
|
||||||
>STYA ZPIOCTL
|
>STYA ZPIOCTL
|
||||||
|
|
||||||
ldy #S.IOCTL.BUFPTR
|
ldy #S.IOCTL.BUFPTR
|
||||||
|
@ -74,7 +60,7 @@ DRV.TERM.GetIOCTLBufCntDCB
|
||||||
eor #$ff
|
eor #$ff
|
||||||
sta ZPCount+1
|
sta ZPCount+1
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
DRV.TERM.GetDCB ldy #S.FD.DEV.DCBPTR
|
TERM.GetDCB ldy #S.FD.DEV.DCBPTR
|
||||||
lda (pFD),y
|
lda (pFD),y
|
||||||
sta ZPDCBPtr
|
sta ZPDCBPtr
|
||||||
|
|
||||||
|
@ -100,14 +86,12 @@ DRV.TERM.GetDCB ldy #S.FD.DEV.DCBPTR
|
||||||
|
|
||||||
rts
|
rts
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
DRV.TERM.GetBufByte
|
TERM.GetBufByte sta CLRREADAUX
|
||||||
sta CLRREADAUX
|
|
||||||
lda (ZPBufPtr)
|
lda (ZPBufPtr)
|
||||||
sta SETREADAUX
|
sta SETREADAUX
|
||||||
rts
|
rts
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
DRV.TERM.GetDevName
|
TERM.GetDevName sta CLRREADAUX
|
||||||
sta CLRREADAUX
|
|
||||||
|
|
||||||
lda (ZPDCBPtr) #S.DCB.TTY.DEVID
|
lda (ZPDCBPtr) #S.DCB.TTY.DEVID
|
||||||
tax
|
tax
|
||||||
|
|
|
@ -26,7 +26,18 @@ CsiParamCnt .BS 1
|
||||||
CsiParams .BS 4
|
CsiParams .BS 4
|
||||||
.ED
|
.ED
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
DRV.TERM.STATUS beq .1
|
TERMX .DA TERMX.STATUS
|
||||||
|
.DA A2osX.BADCALL
|
||||||
|
.DA A2osX.BADCALL
|
||||||
|
.DA A2osX.BADCALL
|
||||||
|
.DA TERMX.CONTROL
|
||||||
|
.DA A2osX.BADCALL
|
||||||
|
.DA TERMX.OPEN
|
||||||
|
.DA TERMX.CLOSE
|
||||||
|
.DA TERMX.READ
|
||||||
|
.DA TERMX.WRITE
|
||||||
|
*--------------------------------------
|
||||||
|
TERMX.STATUS beq .1
|
||||||
|
|
||||||
cmp #S.IOCTL.STATCODE.GETDIB
|
cmp #S.IOCTL.STATCODE.GETDIB
|
||||||
bne .3
|
bne .3
|
||||||
|
@ -37,7 +48,7 @@ DRV.TERM.STATUS beq .1
|
||||||
|
|
||||||
sta CLRWRITEAUX
|
sta CLRWRITEAUX
|
||||||
|
|
||||||
.2 lda DRV.TERM.DIB,y
|
.2 lda TERMX.DIB,y
|
||||||
sta (ZPBufPtr),y
|
sta (ZPBufPtr),y
|
||||||
dey
|
dey
|
||||||
bne .2
|
bne .2
|
||||||
|
@ -51,10 +62,10 @@ DRV.TERM.STATUS beq .1
|
||||||
.3 cmp #S.IOCTL.STATCODE.EOF
|
.3 cmp #S.IOCTL.STATCODE.EOF
|
||||||
bne .9
|
bne .9
|
||||||
|
|
||||||
jsr DRV.TERM.ISOPENED
|
jsr TERMX.ISOPENED
|
||||||
beq DRV.TERM.OPEN.E
|
beq TERMX.OPEN.E
|
||||||
|
|
||||||
jsr DRV.TERM.CURBLNK
|
jsr TERMX.CURBLNK
|
||||||
ldy #S.DCB.TTY.OUTTAIL
|
ldy #S.DCB.TTY.OUTTAIL
|
||||||
lda (ZPDCBPtr),y
|
lda (ZPDCBPtr),y
|
||||||
iny
|
iny
|
||||||
|
@ -79,15 +90,15 @@ DRV.TERM.STATUS beq .1
|
||||||
|
|
||||||
.9 lda #MLI.E.BADCTL
|
.9 lda #MLI.E.BADCTL
|
||||||
.HS 2C BIT ABS
|
.HS 2C BIT ABS
|
||||||
DRV.TERM.OPEN.E lda #MLI.E.OPEN
|
TERMX.OPEN.E lda #MLI.E.OPEN
|
||||||
sec
|
sec
|
||||||
rts
|
rts
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
DRV.TERM.OPEN tax
|
TERMX.OPEN tax
|
||||||
jsr DRV.TERM.ISOPENED
|
jsr TERMX.ISOPENED
|
||||||
bne DRV.TERM.OPEN.E
|
bne TERMX.OPEN.E
|
||||||
|
|
||||||
DRV.TERM.OPEN.1 txa
|
TERMX.OPEN.1 txa
|
||||||
ldx #0
|
ldx #0
|
||||||
|
|
||||||
.2 ldy DevMgr.SCRNDEVS,x
|
.2 ldy DevMgr.SCRNDEVS,x
|
||||||
|
@ -108,17 +119,16 @@ DRV.TERM.OPEN.1 txa
|
||||||
ldy #S.DCB.TTY.STATUS
|
ldy #S.DCB.TTY.STATUS
|
||||||
lda (ZPDCBPtr),y
|
lda (ZPDCBPtr),y
|
||||||
ora #S.DIB.S.OPENED
|
ora #S.DIB.S.OPENED
|
||||||
ora DRV.TERM.DIB+S.DIB.S
|
ora TERMX.DIB+S.DIB.S
|
||||||
sta (ZPDCBPtr),y
|
sta (ZPDCBPtr),y
|
||||||
jsr RESET
|
jsr RESET
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
DRV.TERM.CONTROL
|
TERMX.CONTROL lda (ZPDCBPtr) #S.DCB.TTY.DEVID
|
||||||
lda (ZPDCBPtr) #S.DCB.TTY.DEVID
|
|
||||||
sta DevMgr.ASCREEN
|
sta DevMgr.ASCREEN
|
||||||
|
|
||||||
sta SETTEXT
|
sta SETTEXT
|
||||||
|
|
||||||
jsr DRV.TERM.SCRCPY
|
jsr TERMX.SCRCPY
|
||||||
lda #0
|
lda #0
|
||||||
|
|
||||||
ldy #S.DCB.TTY.bCURON
|
ldy #S.DCB.TTY.bCURON
|
||||||
|
@ -129,10 +139,10 @@ DRV.TERM.CONTROL
|
||||||
clc
|
clc
|
||||||
rts
|
rts
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
DRV.TERM.CLOSE jsr DRV.TERM.ISOPENED
|
TERMX.CLOSE jsr TERMX.ISOPENED
|
||||||
beq .9
|
beq .9
|
||||||
|
|
||||||
lda DRV.TERM.DIB+S.DIB.S
|
lda TERMX.DIB+S.DIB.S
|
||||||
sta (ZPDCBPtr),y
|
sta (ZPDCBPtr),y
|
||||||
ldx #0
|
ldx #0
|
||||||
|
|
||||||
|
@ -152,24 +162,23 @@ DRV.TERM.CLOSE jsr DRV.TERM.ISOPENED
|
||||||
sec
|
sec
|
||||||
rts
|
rts
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
DRV.TERM.ISOPENED
|
TERMX.ISOPENED ldy #S.DCB.TTY.STATUS
|
||||||
ldy #S.DCB.TTY.STATUS
|
|
||||||
lda (ZPDCBPtr),y
|
lda (ZPDCBPtr),y
|
||||||
bit #S.DIB.S.OPENED
|
bit #S.DIB.S.OPENED
|
||||||
rts
|
rts
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
DRV.TERM.READ bit bActive is screen active?
|
TERMX.READ bit bActive is screen active?
|
||||||
bpl .6 no....go check flush...
|
bpl .6 no....go check flush...
|
||||||
jsr DRV.TERM.CURBLNK
|
jsr TERMX.CURBLNK
|
||||||
|
|
||||||
lda OPENAPPLE
|
lda OPENAPPLE
|
||||||
bpl .1
|
bpl .1
|
||||||
|
|
||||||
jsr DRV.TERM.Title.ON
|
jsr TERMX.Title.ON
|
||||||
|
|
||||||
bra .6 Open apple key, not for us...
|
bra .6 Open apple key, not for us...
|
||||||
|
|
||||||
.1 jsr DRV.TERM.Title.OFF
|
.1 jsr TERMX.Title.OFF
|
||||||
|
|
||||||
lda KBD
|
lda KBD
|
||||||
sta A2osX.RANDOM16
|
sta A2osX.RANDOM16
|
||||||
|
@ -249,7 +258,7 @@ DRV.TERM.READ bit bActive is screen active?
|
||||||
* sec
|
* sec
|
||||||
rts
|
rts
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
DRV.TERM.WRITE jsr DRV.TERM.CUROFF
|
TERMX.WRITE jsr TERMX.CUROFF
|
||||||
|
|
||||||
.1 inc ZPCount
|
.1 inc ZPCount
|
||||||
bne .2
|
bne .2
|
||||||
|
@ -269,26 +278,26 @@ DRV.TERM.WRITE jsr DRV.TERM.CUROFF
|
||||||
|
|
||||||
.3 jmp (.4,x)
|
.3 jmp (.4,x)
|
||||||
|
|
||||||
.4 .DA DRV.TERM.COUT
|
.4 .DA TERMX.COUT
|
||||||
.DA DRV.TERM.ESC
|
.DA TERMX.ESC
|
||||||
.DA DRV.TERM.CSI
|
.DA TERMX.CSI
|
||||||
.DA DRV.TERM.IAC
|
.DA TERMX.IAC
|
||||||
.DA DRV.TERM.G0
|
.DA TERMX.G0
|
||||||
.DA DRV.TERM.G1
|
.DA TERMX.G1
|
||||||
|
|
||||||
.8 clc
|
.8 clc
|
||||||
rts
|
rts
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
DRV.TERM.COUT jsr DRV.TERM.GetBufByte
|
TERMX.COUT jsr TERM.GetBufByte
|
||||||
|
|
||||||
cmp #IAC
|
cmp #IAC
|
||||||
bne .1
|
bne .1
|
||||||
|
|
||||||
lda #S.DCB.TTY.MODE.IAC
|
lda #S.DCB.TTY.MODE.IAC
|
||||||
jmp DRV.TERM.SETMODE
|
jmp TERMX.SETMODE
|
||||||
|
|
||||||
.1 cmp #C.DEL
|
.1 cmp #C.DEL
|
||||||
beq DRV.TERM.COUT.DEL
|
beq TERMX.COUT.DEL
|
||||||
|
|
||||||
cmp #C.SPACE
|
cmp #C.SPACE
|
||||||
bcs .8
|
bcs .8
|
||||||
|
@ -310,45 +319,43 @@ DRV.TERM.COUT jsr DRV.TERM.GetBufByte
|
||||||
jmp (.4,x)
|
jmp (.4,x)
|
||||||
|
|
||||||
.4 .DA ENQ
|
.4 .DA ENQ
|
||||||
.DA DRV.TERM.COUT.BS
|
.DA TERMX.COUT.BS
|
||||||
.DA DRV.TERM.COUT.LF
|
.DA TERMX.COUT.LF
|
||||||
.DA DRV.TERM.COUT.FF
|
.DA TERMX.COUT.FF
|
||||||
.DA DRV.TERM.COUT.CR
|
.DA TERMX.COUT.CR
|
||||||
.DA DRV.TERM.COUT.SO
|
.DA TERMX.COUT.SO
|
||||||
.DA DRV.TERM.COUT.SI
|
.DA TERMX.COUT.SI
|
||||||
.DA DRV.TERM.COUT.FS
|
.DA TERMX.COUT.FS
|
||||||
.DA DRV.TERM.COUT.ESC
|
.DA TERMX.COUT.ESC
|
||||||
|
*--------------------------------------
|
||||||
.8 jsr SetCharAtCurPos
|
.8 jsr SetCharAtCurPos
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
DRV.TERM.COUT.FS
|
TERMX.COUT.FS ldy #S.DCB.TTY.CH
|
||||||
ldy #S.DCB.TTY.CH
|
|
||||||
lda (ZPDCBPtr),y
|
lda (ZPDCBPtr),y
|
||||||
inc
|
inc
|
||||||
sta (ZPDCBPtr),y
|
sta (ZPDCBPtr),y
|
||||||
cmp #80
|
cmp #80
|
||||||
bcc DRV.TERM.COUT.BS.8
|
bcc TERMX.COUT.BS.8
|
||||||
|
|
||||||
ldy #S.DCB.TTY.bLINEWRAP
|
ldy #S.DCB.TTY.bLINEWRAP
|
||||||
lda (ZPDCBPtr),y
|
lda (ZPDCBPtr),y
|
||||||
bpl DRV.TERM.COUT.BS.8
|
bpl TERMX.COUT.BS.8
|
||||||
|
|
||||||
jsr DRV.TERM.COUT.CR
|
jsr TERMX.COUT.CR
|
||||||
|
|
||||||
jmp DRV.TERM.COUT.LF.1
|
jmp TERMX.COUT.LF.1
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
DRV.TERM.COUT.BS
|
TERMX.COUT.BS ldy #S.DCB.TTY.CH
|
||||||
ldy #S.DCB.TTY.CH
|
|
||||||
lda (ZPDCBPtr),y
|
lda (ZPDCBPtr),y
|
||||||
beq DRV.TERM.COUT.BS.1
|
beq TERMX.COUT.BS.1
|
||||||
|
|
||||||
dec
|
dec
|
||||||
sta (ZPDCBPtr),y
|
sta (ZPDCBPtr),y
|
||||||
DRV.TERM.COUT.BS.8
|
|
||||||
clc
|
TERMX.COUT.BS.8 clc
|
||||||
rts
|
rts
|
||||||
|
|
||||||
DRV.TERM.COUT.BS.1
|
TERMX.COUT.BS.1 ldy #S.DCB.TTY.CV
|
||||||
ldy #S.DCB.TTY.CV
|
|
||||||
lda (ZPDCBPtr),y
|
lda (ZPDCBPtr),y
|
||||||
beq .2
|
beq .2
|
||||||
|
|
||||||
|
@ -362,8 +369,7 @@ DRV.TERM.COUT.BS.1
|
||||||
.2 clc
|
.2 clc
|
||||||
rts
|
rts
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
DRV.TERM.COUT.DEL
|
TERMX.COUT.DEL ldy #S.DCB.TTY.CH
|
||||||
ldy #S.DCB.TTY.CH
|
|
||||||
lda (ZPDCBPtr),y
|
lda (ZPDCBPtr),y
|
||||||
beq .1
|
beq .1
|
||||||
|
|
||||||
|
@ -373,7 +379,7 @@ DRV.TERM.COUT.DEL
|
||||||
|
|
||||||
.1 ldy #S.DCB.TTY.CV
|
.1 ldy #S.DCB.TTY.CV
|
||||||
lda (ZPDCBPtr),y
|
lda (ZPDCBPtr),y
|
||||||
beq DRV.TERM.COUT.BS.8
|
beq TERMX.COUT.BS.8
|
||||||
dec
|
dec
|
||||||
sta (ZPDCBPtr),y
|
sta (ZPDCBPtr),y
|
||||||
|
|
||||||
|
@ -383,34 +389,29 @@ DRV.TERM.COUT.DEL
|
||||||
.3 lda #C.SPACE
|
.3 lda #C.SPACE
|
||||||
jmp SetCharAtCurPos
|
jmp SetCharAtCurPos
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
DRV.TERM.COUT.FF
|
TERMX.COUT.FF jsr HOME
|
||||||
jsr HOME
|
jmp TERMX.CLRSCR
|
||||||
jmp DRV.TERM.CLRSCR
|
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
DRV.TERM.COUT.CR
|
TERMX.COUT.CR lda #0
|
||||||
lda #0
|
|
||||||
ldy #S.DCB.TTY.CH
|
ldy #S.DCB.TTY.CH
|
||||||
sta (ZPDCBPtr),y
|
sta (ZPDCBPtr),y
|
||||||
clc
|
clc
|
||||||
rts
|
rts
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
DRV.TERM.COUT.SO
|
TERMX.COUT.SO sec
|
||||||
sec
|
|
||||||
.HS 90 BCC
|
.HS 90 BCC
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
DRV.TERM.COUT.SI
|
TERMX.COUT.SI clc
|
||||||
clc
|
|
||||||
ldy #S.DCB.TTY.bG0G1
|
ldy #S.DCB.TTY.bG0G1
|
||||||
ror
|
ror
|
||||||
sta (ZPDCBPtr),y
|
sta (ZPDCBPtr),y
|
||||||
clc
|
clc
|
||||||
rts
|
rts
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
DRV.TERM.COUT.ESC
|
TERMX.COUT.ESC lda #S.DCB.TTY.MODE.ESC
|
||||||
lda #S.DCB.TTY.MODE.ESC
|
bra TERMX.SETMODE
|
||||||
bra DRV.TERM.SETMODE
|
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
DRV.TERM.ESC jsr DRV.TERM.GetBufByte y = #S.DCB.TTY.MODE
|
TERMX.ESC jsr TERM.GetBufByte y = #S.DCB.TTY.MODE
|
||||||
|
|
||||||
ldx #EscCodes.Cnt-1
|
ldx #EscCodes.Cnt-1
|
||||||
.2 cmp EscCodes,x
|
.2 cmp EscCodes,x
|
||||||
|
@ -418,13 +419,13 @@ DRV.TERM.ESC jsr DRV.TERM.GetBufByte y = #S.DCB.TTY.MODE
|
||||||
dex
|
dex
|
||||||
bpl .2
|
bpl .2
|
||||||
|
|
||||||
bra DRV.TERM.SETMODE0
|
bra TERMX.SETMODE0
|
||||||
|
|
||||||
.3 phx
|
.3 phx
|
||||||
jsr .4
|
jsr .4
|
||||||
plx
|
plx
|
||||||
lda EscModes,x
|
lda EscModes,x
|
||||||
bra DRV.TERM.SETMODE
|
bra TERMX.SETMODE
|
||||||
|
|
||||||
.4 txa
|
.4 txa
|
||||||
asl
|
asl
|
||||||
|
@ -436,33 +437,31 @@ DRV.TERM.ESC jsr DRV.TERM.GetBufByte y = #S.DCB.TTY.MODE
|
||||||
.DA Scroll.Dn M
|
.DA Scroll.Dn M
|
||||||
.DA Scroll.Up D
|
.DA Scroll.Up D
|
||||||
.DA RESET c
|
.DA RESET c
|
||||||
.DA DRV.TERM.SETMODE.RTS [
|
.DA TERMX.SETMODE.RTS [
|
||||||
.DA DRV.TERM.SETMODE.RTS (
|
.DA TERMX.SETMODE.RTS (
|
||||||
.DA DRV.TERM.SETMODE.RTS )
|
.DA TERMX.SETMODE.RTS )
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
DRV.TERM.SETMODE0
|
TERMX.SETMODE0 lda #0
|
||||||
lda #0
|
TERMX.SETMODE ldy #S.DCB.TTY.MODE
|
||||||
DRV.TERM.SETMODE
|
|
||||||
ldy #S.DCB.TTY.MODE
|
|
||||||
sta (ZPDCBPtr),y
|
sta (ZPDCBPtr),y
|
||||||
ldy #S.DCB.TTY.INBUFFER
|
ldy #S.DCB.TTY.INBUFFER
|
||||||
lda #S.DCB.TTY.INBUFFER
|
lda #S.DCB.TTY.INBUFFER
|
||||||
sta (ZPDCBPtr),y
|
sta (ZPDCBPtr),y
|
||||||
clc
|
clc
|
||||||
DRV.TERM.SETMODE.RTS
|
TERMX.SETMODE.RTS
|
||||||
rts
|
rts
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
DRV.TERM.CSI ldy #S.DCB.TTY.INBUFFER
|
TERMX.CSI ldy #S.DCB.TTY.INBUFFER
|
||||||
lda (ZPDCBPtr),y
|
lda (ZPDCBPtr),y
|
||||||
inc
|
inc
|
||||||
sta (ZPDCBPtr),y
|
sta (ZPDCBPtr),y
|
||||||
tay
|
tay
|
||||||
|
|
||||||
jsr DRV.TERM.GetBufByte
|
jsr TERM.GetBufByte
|
||||||
|
|
||||||
sta (ZPDCBPtr),y
|
sta (ZPDCBPtr),y
|
||||||
cmp #64 End of Seq ?
|
cmp #64 End of Seq ?
|
||||||
bcs DRV.TERM.CSI.Exec
|
bcs TERMX.CSI.Exec
|
||||||
cpy #S.DCB.TTY.INBUFFER.MAX-1 buffer full?
|
cpy #S.DCB.TTY.INBUFFER.MAX-1 buffer full?
|
||||||
bne .8
|
bne .8
|
||||||
|
|
||||||
|
@ -471,8 +470,7 @@ DRV.TERM.CSI ldy #S.DCB.TTY.INBUFFER
|
||||||
.8 clc
|
.8 clc
|
||||||
rts
|
rts
|
||||||
|
|
||||||
DRV.TERM.CSI.Exec
|
TERMX.CSI.Exec stz CsiHeader
|
||||||
stz CsiHeader
|
|
||||||
stz CsiParamCnt
|
stz CsiParamCnt
|
||||||
|
|
||||||
lda #S.DCB.TTY.INBUFFER+1 EscSeq Ptr
|
lda #S.DCB.TTY.INBUFFER+1 EscSeq Ptr
|
||||||
|
@ -651,15 +649,15 @@ Csi.Scroll ldy CsiParamCnt
|
||||||
Csi.EraseScreen ldx CsiParamCnt
|
Csi.EraseScreen ldx CsiParamCnt
|
||||||
|
|
||||||
bne .1
|
bne .1
|
||||||
jmp DRV.TERM.CLRSCR.DN
|
jmp TERMX.CLRSCR.DN
|
||||||
.1 lda CsiParams
|
.1 lda CsiParams
|
||||||
cmp #1
|
cmp #1
|
||||||
bne .2
|
bne .2
|
||||||
jmp DRV.TERM.CLRSCR.UP
|
jmp TERMX.CLRSCR.UP
|
||||||
|
|
||||||
.2 cmp #2
|
.2 cmp #2
|
||||||
bne .9
|
bne .9
|
||||||
jmp DRV.TERM.CLRSCR
|
jmp TERMX.CLRSCR
|
||||||
|
|
||||||
.9 clc
|
.9 clc
|
||||||
rts
|
rts
|
||||||
|
@ -724,13 +722,13 @@ HOME lda #0
|
||||||
clc
|
clc
|
||||||
rts
|
rts
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
DRV.TERM.G0 ldx #$80
|
TERMX.G0 ldx #$80
|
||||||
.HS 2C BIT ABS
|
.HS 2C BIT ABS
|
||||||
DRV.TERM.G1 ldx #$40
|
TERMX.G1 ldx #$40
|
||||||
|
|
||||||
ldy #S.DCB.TTY.bG0G1ALT
|
ldy #S.DCB.TTY.bG0G1ALT
|
||||||
|
|
||||||
jsr DRV.TERM.GetBufByte
|
jsr TERM.GetBufByte
|
||||||
cmp #'0'
|
cmp #'0'
|
||||||
beq .1
|
beq .1
|
||||||
|
|
||||||
|
@ -743,15 +741,15 @@ DRV.TERM.G1 ldx #$40
|
||||||
ora (ZPDCBPtr),y
|
ora (ZPDCBPtr),y
|
||||||
.8 sta (ZPDCBPtr),y
|
.8 sta (ZPDCBPtr),y
|
||||||
|
|
||||||
jmp DRV.TERM.SETMODE0
|
jmp TERMX.SETMODE0
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
DRV.TERM.IAC ldy #S.DCB.TTY.INBUFFER
|
TERMX.IAC ldy #S.DCB.TTY.INBUFFER
|
||||||
lda (ZPDCBPtr),y
|
lda (ZPDCBPtr),y
|
||||||
inc
|
inc
|
||||||
sta (ZPDCBPtr),y
|
sta (ZPDCBPtr),y
|
||||||
tay
|
tay
|
||||||
|
|
||||||
jsr DRV.TERM.GetBufByte
|
jsr TERM.GetBufByte
|
||||||
|
|
||||||
sta (ZPDCBPtr),y
|
sta (ZPDCBPtr),y
|
||||||
cpy #S.DCB.TTY.INBUFFER+1 CMD ?
|
cpy #S.DCB.TTY.INBUFFER+1 CMD ?
|
||||||
|
@ -762,7 +760,7 @@ DRV.TERM.IAC ldy #S.DCB.TTY.INBUFFER
|
||||||
cmp #SB
|
cmp #SB
|
||||||
bne .1 not a SB/SE....stop with CMD/SUBCMD
|
bne .1 not a SB/SE....stop with CMD/SUBCMD
|
||||||
|
|
||||||
jsr DRV.TERM.GetBufByte
|
jsr TERM.GetBufByte
|
||||||
|
|
||||||
cmp #SE
|
cmp #SE
|
||||||
bne Csi.Home.8 wait for ending SE....keep bIACMode
|
bne Csi.Home.8 wait for ending SE....keep bIACMode
|
||||||
|
@ -868,7 +866,7 @@ RESET ldy #S.DCB.TTY.MODE
|
||||||
iny
|
iny
|
||||||
cpy #S.DCB.TTY.INBUFFER+1
|
cpy #S.DCB.TTY.INBUFFER+1
|
||||||
bne .1
|
bne .1
|
||||||
jmp DRV.TERM.CLRSCR
|
jmp TERMX.CLRSCR
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
RESETATTR lda #$80
|
RESETATTR lda #$80
|
||||||
ldy #S.DCB.TTY.bNORMAL
|
ldy #S.DCB.TTY.bNORMAL
|
||||||
|
@ -887,13 +885,12 @@ ENQ ldx #0
|
||||||
.8 clc
|
.8 clc
|
||||||
rts
|
rts
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
DRV.TERM.COUT.LF
|
TERMX.COUT.LF ldy #S.DCB.TTY.bCRLF
|
||||||
ldy #S.DCB.TTY.bCRLF
|
|
||||||
lda (ZPDCBPtr),y
|
lda (ZPDCBPtr),y
|
||||||
bpl DRV.TERM.COUT.LF.1
|
bpl TERMX.COUT.LF.1
|
||||||
jsr DRV.TERM.COUT.CR
|
jsr TERMX.COUT.CR
|
||||||
DRV.TERM.COUT.LF.1
|
|
||||||
ldy #S.DCB.TTY.CV
|
TERMX.COUT.LF.1 ldy #S.DCB.TTY.CV
|
||||||
lda (ZPDCBPtr),y
|
lda (ZPDCBPtr),y
|
||||||
ldy #S.DCB.TTY.SCROLLBOT
|
ldy #S.DCB.TTY.SCROLLBOT
|
||||||
cmp (ZPDCBPtr),y
|
cmp (ZPDCBPtr),y
|
||||||
|
@ -953,7 +950,7 @@ SaveCurPos ldy #S.DCB.TTY.CH
|
||||||
sta (ZPDCBPtr),y
|
sta (ZPDCBPtr),y
|
||||||
rts
|
rts
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
RestoreCurPos jsr DRV.TERM.CUROFF
|
RestoreCurPos jsr TERMX.CUROFF
|
||||||
|
|
||||||
ldy #S.DCB.TTY.CV.SAVE
|
ldy #S.DCB.TTY.CV.SAVE
|
||||||
|
|
||||||
|
@ -971,10 +968,10 @@ SCROLL.UP ldy #S.DCB.TTY.SCROLLTOP
|
||||||
|
|
||||||
tax
|
tax
|
||||||
|
|
||||||
.1 jsr DRV.TERM.SETUP.L1X
|
.1 jsr TERMX.SETUP.L1X
|
||||||
|
|
||||||
inx
|
inx
|
||||||
jsr DRV.TERM.COPY.XtoL1
|
jsr TERMX.COPY.XtoL1
|
||||||
|
|
||||||
txa
|
txa
|
||||||
ldy #S.DCB.TTY.SCROLLBOT
|
ldy #S.DCB.TTY.SCROLLBOT
|
||||||
|
@ -987,10 +984,10 @@ SCROLL.DN ldy #S.DCB.TTY.SCROLLBOT
|
||||||
|
|
||||||
tax
|
tax
|
||||||
|
|
||||||
.1 jsr DRV.TERM.SETUP.L1X
|
.1 jsr TERMX.SETUP.L1X
|
||||||
|
|
||||||
dex
|
dex
|
||||||
jsr DRV.TERM.COPY.XtoL1
|
jsr TERMX.COPY.XtoL1
|
||||||
|
|
||||||
txa
|
txa
|
||||||
ldy #S.DCB.TTY.SCROLLTOP
|
ldy #S.DCB.TTY.SCROLLTOP
|
||||||
|
@ -1000,35 +997,33 @@ SCROLL.DN ldy #S.DCB.TTY.SCROLLBOT
|
||||||
clc
|
clc
|
||||||
rts
|
rts
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
DRV.TERM.CURBLNK
|
TERMX.CURBLNK bit bActive
|
||||||
bit bActive
|
|
||||||
bpl .9
|
bpl .9
|
||||||
|
|
||||||
lda DevMgr.Timer
|
lda DevMgr.Timer
|
||||||
and #CURSOR.BLINK.SPEED
|
and #CURSOR.BLINK.SPEED
|
||||||
ldy #S.DCB.TTY.bCURON
|
ldy #S.DCB.TTY.bCURON
|
||||||
eor (ZPDCBPtr),y
|
eor (ZPDCBPtr),y
|
||||||
bne DRV.TERM.CURBLNK.1
|
bne TERMX.CURBLNK.1
|
||||||
|
|
||||||
.9 rts
|
.9 rts
|
||||||
|
|
||||||
DRV.TERM.CUROFF bit bActive
|
TERMX.CUROFF bit bActive
|
||||||
bpl DRV.TERM.CURBLNK.RTS
|
bpl TERMX.CURBLNK.RTS
|
||||||
ldy #S.DCB.TTY.bCURON
|
ldy #S.DCB.TTY.bCURON
|
||||||
lda (ZPDCBPtr),y
|
lda (ZPDCBPtr),y
|
||||||
beq DRV.TERM.CURBLNK.RTS
|
beq TERMX.CURBLNK.RTS
|
||||||
|
|
||||||
DRV.TERM.CURBLNK.1
|
TERMX.CURBLNK.1 lda (ZPDCBPtr),y
|
||||||
lda (ZPDCBPtr),y
|
bne TERMX.CURBLNK.OFF
|
||||||
bne DRV.TERM.CURBLNK.OFF
|
|
||||||
|
|
||||||
jsr GetCharAtCurPos
|
jsr GetCharAtCurPos
|
||||||
bcs DRV.TERM.CURBLNK.RTS Out of screen
|
bcs TERMX.CURBLNK.RTS Out of screen
|
||||||
|
|
||||||
and #$80
|
and #$80
|
||||||
eor #" "
|
eor #" "
|
||||||
|
|
||||||
DRV.TERM.CURBLNK.SET
|
TERMX.CURBLNK.SET
|
||||||
jsr SetCharAtY.SCR
|
jsr SetCharAtY.SCR
|
||||||
ldy #S.DCB.TTY.bCURON
|
ldy #S.DCB.TTY.bCURON
|
||||||
lda (ZPDCBPtr),y
|
lda (ZPDCBPtr),y
|
||||||
|
@ -1036,17 +1031,17 @@ DRV.TERM.CURBLNK.SET
|
||||||
sta (ZPDCBPtr),y
|
sta (ZPDCBPtr),y
|
||||||
rts
|
rts
|
||||||
|
|
||||||
DRV.TERM.CURBLNK.OFF
|
TERMX.CURBLNK.OFF
|
||||||
jsr GetCharAtCurPos
|
jsr GetCharAtCurPos
|
||||||
bcc DRV.TERM.CURBLNK.SET if not Out of screen
|
bcc TERMX.CURBLNK.SET if not Out of screen
|
||||||
DRV.TERM.CURBLNK.RTS
|
TERMX.CURBLNK.RTS
|
||||||
rts
|
rts
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
Decimal.Out jsr MATH.A2STR10NP
|
Decimal.Out jsr MATH.A2STR10NP
|
||||||
|
|
||||||
ldx #0
|
ldx #0
|
||||||
.1 lda A2osX.NumStrBuf,x
|
.1 lda A2osX.NumStrBuf,x
|
||||||
beq DRV.TERM.CURBLNK.RTS
|
beq TERMX.CURBLNK.RTS
|
||||||
inx
|
inx
|
||||||
jsr Char.Out.Put
|
jsr Char.Out.Put
|
||||||
bra .1
|
bra .1
|
||||||
|
@ -1095,8 +1090,7 @@ Char.Out.Get ldy #S.DCB.TTY.OUTTAIL
|
||||||
clc
|
clc
|
||||||
.9 rts
|
.9 rts
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
DRV.TERM.SETUP.L1X
|
TERMX.SETUP.L1X lda ZPBufBase
|
||||||
lda ZPBufBase
|
|
||||||
clc
|
clc
|
||||||
adc BUF.BASEL,x
|
adc BUF.BASEL,x
|
||||||
sta ZPBufBaseL1
|
sta ZPBufBaseL1
|
||||||
|
@ -1106,9 +1100,9 @@ DRV.TERM.SETUP.L1X
|
||||||
sta ZPBufBaseL1+1
|
sta ZPBufBaseL1+1
|
||||||
|
|
||||||
bit bActive
|
bit bActive
|
||||||
bpl DRV.TERM.SETUP.L1X.8
|
bpl TERMX.SETUP.L1X.8
|
||||||
|
|
||||||
DRV.TERM.SETUP.L1X.SCR
|
TERMX.SETUP.L1X.SCR
|
||||||
lda SCR.BASEL,x
|
lda SCR.BASEL,x
|
||||||
sta ZPScrBaseL1
|
sta ZPScrBaseL1
|
||||||
txa
|
txa
|
||||||
|
@ -1117,32 +1111,30 @@ DRV.TERM.SETUP.L1X.SCR
|
||||||
ora #4
|
ora #4
|
||||||
* lda SCR.BASEH,x
|
* lda SCR.BASEH,x
|
||||||
sta ZPScrBaseL1+1
|
sta ZPScrBaseL1+1
|
||||||
DRV.TERM.SETUP.L1X.8
|
TERMX.SETUP.L1X.8
|
||||||
rts
|
rts
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
DRV.TERM.CLRSCR.DN
|
TERMX.CLRSCR.DN ldy #S.DCB.TTY.CV
|
||||||
ldy #S.DCB.TTY.CV
|
|
||||||
sta (ZPDCBPtr),y
|
sta (ZPDCBPtr),y
|
||||||
tax
|
tax
|
||||||
bra DRV.TERM.CLRSCR.1
|
bra TERMX.CLRSCR.1
|
||||||
DRV.TERM.CLRSCR.UP
|
|
||||||
ldx #0
|
TERMX.CLRSCR.UP ldx #0
|
||||||
ldy #S.DCB.TTY.CV
|
ldy #S.DCB.TTY.CV
|
||||||
sta (ZPDCBPtr),y
|
sta (ZPDCBPtr),y
|
||||||
tay
|
tay
|
||||||
bra DRV.TERM.CLRSCR.2
|
bra TERMX.CLRSCR.2
|
||||||
DRV.TERM.CLRSCR ldx #0
|
|
||||||
|
|
||||||
DRV.TERM.CLRSCR.1
|
TERMX.CLRSCR ldx #0
|
||||||
ldy #24
|
|
||||||
|
|
||||||
DRV.TERM.CLRSCR.2
|
TERMX.CLRSCR.1 ldy #24
|
||||||
sty .1+1
|
|
||||||
|
TERMX.CLRSCR.2 sty .1+1
|
||||||
|
|
||||||
sta SET80STORE
|
sta SET80STORE
|
||||||
.1 cpx #$ff SELF MODIFIED
|
.1 cpx #$ff SELF MODIFIED
|
||||||
beq .9
|
beq .9
|
||||||
jsr DRV.TERM.SETUP.L1X
|
jsr TERMX.SETUP.L1X
|
||||||
lda #" "
|
lda #" "
|
||||||
|
|
||||||
bit bActive
|
bit bActive
|
||||||
|
@ -1167,18 +1159,17 @@ DRV.TERM.CLRSCR.2
|
||||||
bpl .8
|
bpl .8
|
||||||
.9 rts
|
.9 rts
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
DRV.TERM.Title.ON
|
TERMX.Title.ON ldy #S.DCB.TTY.bTITLE
|
||||||
ldy #S.DCB.TTY.bTITLE
|
|
||||||
lda (ZPDCBPtr),y
|
lda (ZPDCBPtr),y
|
||||||
bmi DRV.TERM.Title.RTS
|
bmi TERMX.Title.RTS
|
||||||
|
|
||||||
lda #$ff
|
lda #$ff
|
||||||
sta (ZPDCBPtr),y
|
sta (ZPDCBPtr),y
|
||||||
|
|
||||||
jsr DRV.TERM.GetDevName
|
jsr TERM.GetDevName
|
||||||
|
|
||||||
ldx #0
|
ldx #0
|
||||||
jsr DRV.TERM.SETUP.L1X.SCR
|
jsr TERMX.SETUP.L1X.SCR
|
||||||
|
|
||||||
ldy #0
|
ldy #0
|
||||||
|
|
||||||
|
@ -1205,20 +1196,18 @@ DRV.TERM.Title.ON
|
||||||
iny
|
iny
|
||||||
cpy #80
|
cpy #80
|
||||||
bne .4
|
bne .4
|
||||||
DRV.TERM.Title.RTS
|
|
||||||
rts
|
|
||||||
|
|
||||||
DRV.TERM.Title.OFF
|
TERMX.Title.RTS rts
|
||||||
ldy #S.DCB.TTY.bTITLE
|
|
||||||
|
TERMX.Title.OFF ldy #S.DCB.TTY.bTITLE
|
||||||
lda (ZPDCBPtr),y
|
lda (ZPDCBPtr),y
|
||||||
bpl DRV.TERM.Title.RTS
|
bpl TERMX.Title.RTS
|
||||||
lda #$0
|
lda #$0
|
||||||
sta (ZPDCBPtr),y
|
sta (ZPDCBPtr),y
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
DRV.TERM.LINE0CPY
|
TERMX.LINE0CPY ldx #0
|
||||||
ldx #0
|
|
||||||
.HS 2C BIT ABS
|
.HS 2C BIT ABS
|
||||||
DRV.TERM.SCRCPY ldx #23
|
TERMX.SCRCPY ldx #23
|
||||||
|
|
||||||
sta SET80STORE
|
sta SET80STORE
|
||||||
|
|
||||||
|
@ -1230,7 +1219,7 @@ DRV.TERM.SCRCPY ldx #23
|
||||||
lda ZPBufBase+1
|
lda ZPBufBase+1
|
||||||
adc BUF.BASEH,x
|
adc BUF.BASEH,x
|
||||||
sta .80+2
|
sta .80+2
|
||||||
jsr DRV.TERM.SETUP.L1X.SCR
|
jsr TERMX.SETUP.L1X.SCR
|
||||||
|
|
||||||
phx
|
phx
|
||||||
|
|
||||||
|
@ -1266,7 +1255,7 @@ DRV.TERM.SCRCPY ldx #23
|
||||||
|
|
||||||
rts
|
rts
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
DRV.TERM.COPY.XtoL1
|
TERMX.COPY.XtoL1
|
||||||
lda ZPBufBase
|
lda ZPBufBase
|
||||||
clc
|
clc
|
||||||
adc BUF.BASEL,x
|
adc BUF.BASEL,x
|
||||||
|
@ -1353,7 +1342,7 @@ SetCharAtYX ror A2osX.RANDOM16+1
|
||||||
lda REMAP.E0.FF-$E0,y
|
lda REMAP.E0.FF-$E0,y
|
||||||
sta ZPTmpChar
|
sta ZPTmpChar
|
||||||
|
|
||||||
.3 jsr DRV.TERM.SETUP.L1X
|
.3 jsr TERMX.SETUP.L1X
|
||||||
ply
|
ply
|
||||||
lda ZPTmpChar
|
lda ZPTmpChar
|
||||||
sta (ZPBufBaseL1),y
|
sta (ZPBufBaseL1),y
|
||||||
|
@ -1380,7 +1369,7 @@ GetCharAtCurPos ldy #S.DCB.TTY.CV
|
||||||
bcs .9 Out of screen
|
bcs .9 Out of screen
|
||||||
|
|
||||||
tax
|
tax
|
||||||
jsr DRV.TERM.SETUP.L1X
|
jsr TERMX.SETUP.L1X
|
||||||
|
|
||||||
ldy #S.DCB.TTY.CH
|
ldy #S.DCB.TTY.CH
|
||||||
lda (ZPDCBPtr),y
|
lda (ZPDCBPtr),y
|
||||||
|
@ -1451,7 +1440,7 @@ RESET.VALUES .DA #0 MODE
|
||||||
.DA #S.DCB.TTY.OUTBUFFER OUTHEAD
|
.DA #S.DCB.TTY.OUTBUFFER OUTHEAD
|
||||||
.DA #S.DCB.TTY.INBUFFER INBUFFER
|
.DA #S.DCB.TTY.INBUFFER INBUFFER
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
DRV.TERM.DIB .DA #S.DIB.S.WRITE+S.DIB.S.READ
|
TERMX.DIB .DA #S.DIB.S.WRITE+S.DIB.S.READ
|
||||||
.DA #0,#0,#0
|
.DA #0,#0,#0
|
||||||
>PSTR "A2osX VT100 term"
|
>PSTR "A2osX VT100 term"
|
||||||
.DA #S.DIB.T.CHAR
|
.DA #S.DIB.T.CHAR
|
||||||
|
|
|
@ -16,7 +16,6 @@ K.Time >PULLW FORPNT
|
||||||
>LDYAI DATELO
|
>LDYAI DATELO
|
||||||
>STYA TXTPTR
|
>STYA TXTPTR
|
||||||
ldx #SYS.PTime2Time
|
ldx #SYS.PTime2Time
|
||||||
|
|
||||||
jmp K.SYSCALL.JMPX
|
jmp K.SYSCALL.JMPX
|
||||||
*/--------------------------------------
|
*/--------------------------------------
|
||||||
* # StrFTime
|
* # StrFTime
|
||||||
|
|
Loading…
Reference in New Issue
Block a user