mirror of
https://github.com/A2osX/A2osX.git
synced 2025-01-13 08:29:46 +00:00
Kernel 0.93+
This commit is contained in:
parent
f5c24a54fc
commit
be400f181b
Binary file not shown.
@ -75,6 +75,7 @@ CL.CHARIN.CTRL cpx #C.CR
|
||||
|
||||
cpx #C.EOF
|
||||
beq .18
|
||||
|
||||
.10 cpx #C.ESC
|
||||
bne .11
|
||||
lda #$ff
|
||||
@ -83,16 +84,55 @@ CL.CHARIN.CTRL cpx #C.CR
|
||||
rts
|
||||
|
||||
.11 cpx #3 Ctrl-C
|
||||
bne .12
|
||||
beq CL.CLR
|
||||
|
||||
jmp CL.CLR
|
||||
|
||||
.12 cpx #26 Ctrl-Z
|
||||
cpx #26 Ctrl-Z
|
||||
bne .13
|
||||
jmp CL.SUPPR
|
||||
.18 lda #$ff
|
||||
|
||||
.18 ldy #S.PS.hStdIn Check for any extra LF
|
||||
lda (pPS),y
|
||||
>SYSCALL feof
|
||||
bcs .9
|
||||
|
||||
tay
|
||||
bne .19
|
||||
>SYSCALL GetChar
|
||||
|
||||
.19 lda #$ff
|
||||
>STA.G CL.bReady
|
||||
|
||||
.13 clc
|
||||
.9 rts
|
||||
*--------------------------------------
|
||||
CL.CLR lda (ZPCLBuf)
|
||||
beq CL.RESET.1
|
||||
|
||||
.1 >LDA.G CL.Ptr
|
||||
>CMP.G CL.Len
|
||||
beq .2
|
||||
inc
|
||||
>STA.G CL.Ptr
|
||||
lda #C.FS
|
||||
>SYSCALL PutChar
|
||||
bra .1
|
||||
|
||||
.2 ldy #0
|
||||
|
||||
.3 lda #C.DEL
|
||||
sta (ZPCLBuf),y
|
||||
|
||||
iny
|
||||
lda (ZPCLBuf),y
|
||||
bne .3
|
||||
|
||||
jsr CL.PrintCLBuf
|
||||
*--------------------------------------
|
||||
CL.RESET lda #0
|
||||
sta (ZPCLBuf)
|
||||
CL.RESET.1 >STA.G CL.bReady
|
||||
>STA.G CL.Ptr
|
||||
>STA.G CL.Len
|
||||
rts
|
||||
*--------------------------------------
|
||||
CL.Insert >LDA.G CL.Len
|
||||
@ -132,36 +172,6 @@ CL.Insert >LDA.G CL.Len
|
||||
.8 clc
|
||||
rts
|
||||
*--------------------------------------
|
||||
CL.CLR lda (ZPCLBuf)
|
||||
beq CL.RESET.1
|
||||
|
||||
.1 >LDA.G CL.Ptr
|
||||
>CMP.G CL.Len
|
||||
beq .2
|
||||
inc
|
||||
>STA.G CL.Ptr
|
||||
lda #C.FS
|
||||
>SYSCALL PutChar
|
||||
bra .1
|
||||
|
||||
.2 ldy #0
|
||||
|
||||
.3 lda #C.DEL
|
||||
sta (ZPCLBuf),y
|
||||
|
||||
iny
|
||||
lda (ZPCLBuf),y
|
||||
bne .3
|
||||
|
||||
jsr CL.PrintCLBuf
|
||||
*--------------------------------------
|
||||
CL.RESET lda #0
|
||||
sta (ZPCLBuf)
|
||||
CL.RESET.1 >STA.G CL.bReady
|
||||
>STA.G CL.Ptr
|
||||
>STA.G CL.Len
|
||||
rts
|
||||
*--------------------------------------
|
||||
CL.BS >LDA.G CL.Ptr
|
||||
beq .9
|
||||
dec
|
||||
|
@ -279,21 +279,28 @@ CS.RUN.LOOP >SLEEP
|
||||
*--------------------------------------
|
||||
.2 >LDA.G bPause
|
||||
bpl .6
|
||||
|
||||
.3 >SYSCALL GetChar
|
||||
bcs .9 I/O err
|
||||
|
||||
cmp #3 Ctrl-C
|
||||
bne .4
|
||||
lda (pData) batch mode ?
|
||||
beq .5
|
||||
|
||||
>LDA.G bSET.C
|
||||
beq .8
|
||||
|
||||
bra .5
|
||||
|
||||
.4 tax
|
||||
>LDA.G bPause
|
||||
asl $ff ?
|
||||
bpl .5 not from PAUSE command
|
||||
|
||||
cpx #C.CR
|
||||
bne .3
|
||||
|
||||
.5 >STZ.G bPause
|
||||
*--------------------------------------
|
||||
.6 lda (pData) batch mode ?
|
||||
|
@ -39,7 +39,7 @@ CS.START cld
|
||||
.DA #0
|
||||
.DA CS.END-CS.START Code Size (without Constants)
|
||||
.DA DS.END-DS.START Data SegmentSize
|
||||
.DA #64 Stack Size
|
||||
.DA #32 Stack Size
|
||||
.DA #ZS.END-ZS.START Zero Page Size
|
||||
.DA 0
|
||||
*--------------------------------------
|
||||
@ -65,6 +65,7 @@ CS.RUN ldy #S.PS.ARGC
|
||||
cmp #2
|
||||
|
||||
bcc .9
|
||||
|
||||
.1 inc ArgIndex
|
||||
lda ArgIndex
|
||||
>SYSCALL ArgV
|
||||
@ -73,14 +74,19 @@ CS.RUN ldy #S.PS.ARGC
|
||||
|
||||
jsr CkeckOption
|
||||
bcs .9
|
||||
|
||||
beq .1 valid option, check next arg
|
||||
|
||||
lda ArgDev
|
||||
bne .2
|
||||
|
||||
lda ArgIndex
|
||||
sta ArgDev
|
||||
bra .1
|
||||
|
||||
.2 lda ArgProg
|
||||
bne .9
|
||||
|
||||
lda ArgIndex
|
||||
sta ArgProg
|
||||
bra .1
|
||||
@ -91,10 +97,13 @@ CS.RUN ldy #S.PS.ARGC
|
||||
lda #E.SYN
|
||||
sec
|
||||
.99 rts
|
||||
|
||||
.8 lda ArgDev
|
||||
beq .9
|
||||
|
||||
lda ArgProg
|
||||
beq .9
|
||||
|
||||
ldy #S.PS.hStdErr
|
||||
lda (pPs),y
|
||||
sta hErr
|
||||
@ -142,11 +151,13 @@ CS.RUN.LOOP1 >SLEEP
|
||||
|
||||
>SYSCALL GetChar
|
||||
bcs CS.RUN.9
|
||||
|
||||
cmp #IAC
|
||||
beq CS.RUN.IACMODE
|
||||
>SYSCALL PutChar
|
||||
bcs CS.RUN.EXIT
|
||||
bra CS.RUN.LOOP1
|
||||
|
||||
.1 lda TimeOut
|
||||
bne CS.RUN.LOOP1
|
||||
|
||||
@ -158,11 +169,13 @@ CS.RUN.LOOP1 >SLEEP
|
||||
>LDYA L.MSG.GREETINGS
|
||||
>SYSCALL printf
|
||||
bcs CS.RUN.EXIT unable to send greetings...
|
||||
|
||||
.2 >PUSHBI S.PS.F.HOLD
|
||||
lda ArgProg
|
||||
>SYSCALL ArgV
|
||||
>SYSCALL ExecV
|
||||
>SLEEP
|
||||
|
||||
CS.RUN.EXIT lda bExitOnClose
|
||||
bmi .8
|
||||
|
||||
@ -174,9 +187,11 @@ CS.RUN.9 rts
|
||||
*--------------------------------------
|
||||
CS.RUN.IACMODE >SYSCALL GetChar Wait for IAC CMD (or SB)
|
||||
bcs CS.RUN.9
|
||||
|
||||
sta IAC.CMD
|
||||
>SYSCALL GetChar Wait for IAC SUBCMD
|
||||
bcs CS.RUN.9
|
||||
|
||||
sta IAC.SUBCMD
|
||||
tax
|
||||
lda IAC.CMD
|
||||
@ -185,16 +200,20 @@ CS.RUN.IACMODE >SYSCALL GetChar Wait for IAC CMD (or SB)
|
||||
*--------------------------------------
|
||||
CS.RUN.IAC.CMD cmp #WILL
|
||||
bne .8
|
||||
|
||||
cpx #TELOPT.TTYPE
|
||||
bne .2
|
||||
|
||||
>PUSHWI TELNETOPT.TTYPE.LEN
|
||||
>PUSHW L.TELNETOPT.TTYPE
|
||||
bra .7
|
||||
|
||||
.2 cpx #TELOPT.LINEMODE
|
||||
bne .8
|
||||
|
||||
>PUSHWI TELNETOPT.LMODE.LEN
|
||||
>PUSHW L.TELNETOPT.LMODE
|
||||
|
||||
.7 ldy #S.PS.hStdOut
|
||||
lda (pPs),y
|
||||
>SYSCALL fwrite
|
||||
@ -255,27 +274,34 @@ CS.QUIT lda hFILE
|
||||
CkeckOption lda (ZPPtr1)
|
||||
cmp #'-'
|
||||
bne .8
|
||||
|
||||
ldy #2
|
||||
lda (ZPPtr1),y
|
||||
bne .8
|
||||
|
||||
dey
|
||||
lda (ZPPtr1),y
|
||||
ldx OptionList
|
||||
ldx #OptionVars-OptionList-1
|
||||
|
||||
.2 cmp OptionList,x
|
||||
beq .3
|
||||
|
||||
dex
|
||||
bne .2
|
||||
bpl .2
|
||||
|
||||
sec invalid option
|
||||
rts
|
||||
.3 ldy OptionVars-1,x
|
||||
|
||||
.3 ldy OptionVars,x
|
||||
eor #$80 toggle option
|
||||
sta $0,y
|
||||
lda #0 exit with 0
|
||||
|
||||
.8 clc !0 if not an option
|
||||
rts
|
||||
*--------------------------------------
|
||||
CS.END
|
||||
OptionList >PSTR "Ee"
|
||||
OptionList .AS "Ee"
|
||||
OptionVars .DA #bExitOnClose,#bExitOnClose
|
||||
MSG.USAGE .AS "Usage : GETTY <DEV> <PROGRAM>\r\n"
|
||||
.AZ " -E : Exit on disconnect\r\n"
|
||||
|
@ -50,7 +50,7 @@ CS.START cld
|
||||
.DA #0
|
||||
.DA CS.END-CS.START Code Size (without Constants)
|
||||
.DA DS.END-DS.START Data Segment Size
|
||||
.DA #64 Stack Size
|
||||
.DA #32 Stack Size
|
||||
.DA #ZS.END-ZS.START Zero Page Size
|
||||
.DA 0
|
||||
*--------------------------------------
|
||||
@ -395,13 +395,16 @@ CS.RUN.DumpFile pha
|
||||
pla
|
||||
plp
|
||||
.9 rts
|
||||
|
||||
.2 phx
|
||||
>SYSCALL puts
|
||||
pla
|
||||
>SYSCALL freemem
|
||||
bra .1
|
||||
|
||||
.7 lda ZPhBuf
|
||||
>SYSCALL freemem
|
||||
|
||||
.8 lda ZPhFile
|
||||
>SYSCALL fclose
|
||||
rts
|
||||
@ -413,14 +416,19 @@ CS.DOEVENT
|
||||
CS.QUIT lda hLIBCRYPT
|
||||
beq CS.CLEANUP
|
||||
>SYSCALL UnloadLib
|
||||
|
||||
CS.CLEANUP lda ZPhGetLine
|
||||
beq .1
|
||||
|
||||
stz ZPhGetLine
|
||||
>SYSCALL freemem
|
||||
|
||||
.1 lda ZPhPW
|
||||
beq .8
|
||||
|
||||
stz ZPhPW
|
||||
>SYSCALL freemem
|
||||
|
||||
.8 clc
|
||||
rts
|
||||
*--------------------------------------
|
||||
|
Loading…
x
Reference in New Issue
Block a user