Kernel 0.93

This commit is contained in:
Rémy GIBERT 2019-05-25 21:24:07 +02:00
parent 417ddd6699
commit 3d40cd048d
27 changed files with 259 additions and 208 deletions

Binary file not shown.

View File

@ -166,13 +166,17 @@ BUF.DelSel jsr BUF.GetSelLen
.8 clc .8 clc
.9 rts .9 rts
*-------------------------------------- *--------------------------------------
BUF.Del ldy #FileLen * Erase char at CurXY
lda (pData),y *--------------------------------------
iny BUF.DelChar lda BUF.COffset
ora (pData),y sec
beq .8 exit with A=0 sbc #1
tay
lda BUF.COffset+1
sbc #0
bcc .9 deleting char #0
jsr BUF.ComputeCOffset >STYA TmpCount
ldy #FileLen+1 ldy #FileLen+1
lda (pData),y lda (pData),y
@ -184,17 +188,6 @@ BUF.Del ldy #FileLen
jsr BUF.GetNewYA BufferLen-1 jsr BUF.GetNewYA BufferLen-1
bcs .9 bcs .9
lda BUF.COffset
sec
sbc #1
tay
lda BUF.COffset+1
sbc #0
bcc .3 deleting char #0
sty TmpCount
sta TmpCount+1
jsr BUF.CopyCount jsr BUF.CopyCount
.3 lda (BufPtrBackup) .3 lda (BufPtrBackup)
@ -268,7 +261,7 @@ BUF.SelToClipboard
ldy #0 ldy #0
.2 jsr DecTmpCount .2 jsr DecTmpCount
beq .8 beq .7
lda (BufPtr),y lda (BufPtr),y
sta (ClipboardPtr),y sta (ClipboardPtr),y
iny iny
@ -277,7 +270,7 @@ BUF.SelToClipboard
inc ClipboardPtr+1 inc ClipboardPtr+1
bra .2 bra .2
jsr BUF.ResetSel .7 jsr BUF.ResetSel
.8 clc .8 clc
.9 rts .9 rts
@ -394,7 +387,8 @@ BUF.GetLineAX sta BUF.TmpLine1
.2 lda (BufPtr),y .2 lda (BufPtr),y
beq .7 beq .7
cmp #13
cmp #C.CR
beq .3 beq .3
iny iny

View File

@ -120,7 +120,8 @@ Ctrl.G ldy #FileX
*-------------------------------------- *--------------------------------------
Ctrl.BS ldy #FileX Ctrl.BS ldy #FileX
lda (pData),y lda (pData),y
beq .1 already at begining of line beq .1 already at beginning of line
dec dec
sta (pData),y sta (pData),y
bra .3 bra .3
@ -158,6 +159,7 @@ Ctrl.BS ldy #FileX
.8 clc .8 clc
rts rts
.9 jmp Ctrl.Q .9 jmp Ctrl.Q
*-------------------------------------- *--------------------------------------
Ctrl.TAB Ctrl.TAB
@ -520,41 +522,47 @@ Ctrl.ESC clc
rts rts
*-------------------------------------- *--------------------------------------
Prompt.Editor cmp #C.DEL Prompt.Editor cmp #C.DEL
beq .4 bne .2
cmp #C.SPACE lda BUF.COffset
bcs .7 ora BUF.COffset+1 No Backspace possible
beq .8
asl jsr Ctrl.BS
tax bcs .9
jmp (J.CTRL,x)
.4 jsr BUF.Del jsr BUF.DelChar
bcs .9 bcs .9
cmp #C.CR did we DEL a CR ? cmp #C.CR did we DEL a CR ?
bne .5 bne .1
jsr SCRN.UpdateMain jsr SCRN.UpdateMain
bcs .9 bcs .9
jsr SCRN.UpdateStatusBar
bra .6
.5 jsr SCRN.UpdateCurrentLine
bcs .9
.6 jsr SCRN.UpdateStatusBar
bcs .9
rts rts
.7 jsr BUF.InsertA .1 jsr SCRN.UpdateCurrentLine
jsr SCRN.UpdateStatusBar
rts
.2 cmp #C.SPACE
bcc .3
jsr BUF.InsertA
bcs .9 bcs .9
jsr SCRN.UpdateCurrentLine jsr SCRN.UpdateCurrentLine
bcs .9 bcs .9
jsr Ctrl.FS jsr Ctrl.FS
bcs .9 bcs .9
.8 clc
rts rts
.3 asl
tax
jmp (J.CTRL,x)
.9 jmp Ctrl.Q .9 jmp Ctrl.Q
*-------------------------------------- *--------------------------------------
Prompt.Help >STZ.G PromptMode Prompt.Help >STZ.G PromptMode

View File

@ -312,7 +312,7 @@ MSG.USAGE .AS "Usage : MORE <File>\r\n"
.AS " -P : Page mode, no scroll\r\n" .AS " -P : Page mode, no scroll\r\n"
.AS " -S : Process ESC codes" .AS " -S : Process ESC codes"
MSG.CRLF .AZ "\r\n" MSG.CRLF .AZ "\r\n"
MSG.Init .AZ "\e[7l" MSG.Init .AZ "\e[?7l"
MSG.NUMLINE .AZ "%5D:" MSG.NUMLINE .AZ "%5D:"
MSG.Pause .AZ "\r\e[7m --- 'SPACE' for more, 'CR' one line, 'Q/q' to quit --- \e[0m" MSG.Pause .AZ "\r\e[7m --- 'SPACE' for more, 'CR' one line, 'Q/q' to quit --- \e[0m"
MSG.PauseErase .AZ "\r\e[2K" MSG.PauseErase .AZ "\r\e[2K"

View File

@ -212,7 +212,7 @@ CS.QUIT clc
rts rts
*-------------------------------------- *--------------------------------------
CS.END CS.END
MSG0 .AZ "\e[7lhPS pPID PID cPID CPU\% Flags UID Command Line\r\n" MSG0 .AZ "\e[?7lhPS pPID PID cPID CPU\% Flags UID Command Line\r\n"
MSG1 .AZ "%3d %3d %3d %3d %3d\% %s %3d" MSG1 .AZ "%3d %3d %3d %3d %3d\% %s %3d"
MSG2 .AZ " %s" MSG2 .AZ " %s"
MSG3 .AZ "\r\n" MSG3 .AZ "\r\n"

View File

@ -582,8 +582,8 @@ ToUpperCase cmp #'a'
CS.END CS.END
*-------------------------------------- *--------------------------------------
MSG.GREETINGS .AZ "\r\nA2osX-SH %d.%d\r\n\r\n" MSG.GREETINGS .AZ "\r\nA2osX-SH %d.%d\r\n\r\n"
MSG.PROMPT .AZ "\e[7h$ " Enable Line Wrap MSG.PROMPT .AZ "\e[?7h$ " Enable Line Wrap
MSG.PROMPTCRLF .AZ "\e[7l\r\n" Disable Line Wrap MSG.PROMPTCRLF .AZ "\e[?7l\r\n" Disable Line Wrap
MSG.TRACE .AZ ">%s\r\n" MSG.TRACE .AZ ">%s\r\n"
MSG.BATCHERR .AZ "^\r\nLine #%D:" MSG.BATCHERR .AZ "^\r\nLine #%D:"
MSG.ERROR .AS "[$%h]:%S." MSG.ERROR .AS "[$%h]:%S."

View File

@ -1,6 +1,5 @@
NEW NEW
PREFIX AUTO 3,1
AUTO 4,1
*/-------------------------------------- */--------------------------------------
* # Args2ArgV * # Args2ArgV
* Expand String and convert to ArgV List * Expand String and convert to ArgV List

View File

@ -1,6 +1,5 @@
NEW NEW
PREFIX AUTO 3,1
AUTO 4,1
*-------------------------------------- *--------------------------------------
.DUMMY .DUMMY
.OR FAC 15 Bytes .OR FAC 15 Bytes

View File

@ -1,6 +1,5 @@
NEW NEW
PREFIX AUTO 3,1
AUTO 4,1
*-------------------------------------- *--------------------------------------
* CONTROL SECTION : * CONTROL SECTION :
.LIST ON .LIST ON

View File

@ -164,19 +164,23 @@ S.DCB.TTY.CV .EQ 4
S.DCB.TTY.SCROLLTOP .EQ 5 S.DCB.TTY.SCROLLTOP .EQ 5
S.DCB.TTY.SCROLLBOT .EQ 6 S.DCB.TTY.SCROLLBOT .EQ 6
S.DCB.TTY.bCURON .EQ 7 S.DCB.TTY.bCURON .EQ 7
S.DCB.TTY.bNORMAL .EQ 8 S.DCB.TTY.bTITLE .EQ 8
S.DCB.TTY.bLINEWRAP .EQ 9
S.DCB.TTY.bTITLE .EQ 10
S.DCB.TTY.bG0G1 .EQ 11 S.DCB.TTY.bNORMAL .EQ 9
S.DCB.TTY.bG0ALT .EQ 12 S.DCB.TTY.bLINEWRAP .EQ 10
S.DCB.TTY.bG1ALT .EQ 13 S.DCB.TTY.bCRLF .EQ 11
S.DCB.TTY.OUTTAIL .EQ 14 * .EQ 12
S.DCB.TTY.OUTHEAD .EQ 15
S.DCB.TTY.INBUFFER .EQ 16 S.DCB.TTY.bG0G1 .EQ 13
S.DCB.TTY.INBUFFER.MAX .EQ 32 S.DCB.TTY.bG0ALT .EQ 14
S.DCB.TTY.OUTBUFFER .EQ 32 S.DCB.TTY.bG1ALT .EQ 15
S.DCB.TTY.OUTTAIL .EQ 16
S.DCB.TTY.OUTHEAD .EQ 17
S.DCB.TTY.INBUFFER .EQ 18
S.DCB.TTY.INBUFFER.MAX .EQ 33
S.DCB.TTY.OUTBUFFER .EQ 34
S.DCB.TTY.OUTBUFFER.MAX .EQ 48 S.DCB.TTY.OUTBUFFER.MAX .EQ 48
* *
S.DCB.TTY .EQ 48 S.DCB.TTY .EQ 48

View File

@ -1,6 +1,5 @@
NEW NEW
PREFIX AUTO 3,1
AUTO 4,1
*/-------------------------------------- */--------------------------------------
* # GetDevByName * # GetDevByName
* Y,A = Ptr to device name (C-String) * Y,A = Ptr to device name (C-String)

View File

@ -1,6 +1,5 @@
NEW NEW
PREFIX AUTO 3,1
AUTO 4,1
*/-------------------------------------- */--------------------------------------
* # OpenDir * # OpenDir
* ## C * ## C

View File

@ -1,6 +1,5 @@
NEW NEW
PREFIX AUTO 3,1
AUTO 4,1
*-------------------------------------- *--------------------------------------
* DRV.DiskII * DRV.DiskII
* X = IOCTL * X = IOCTL

View File

@ -1,6 +1,5 @@
NEW NEW
PREFIX AUTO 3,1
AUTO 4,1
*/-------------------------------------- */--------------------------------------
* # ExpandStr * # ExpandStr
* **In:** * **In:**

View File

@ -1,6 +1,5 @@
NEW NEW
PREFIX AUTO 3,1
AUTO 4,1
*-------------------------------------- *--------------------------------------
* SYSCALL (AUXLC to AUXLC) * SYSCALL (AUXLC to AUXLC)
* Used by user & kernel for inter bank Calls * Used by user & kernel for inter bank Calls

View File

@ -1,6 +1,5 @@
NEW NEW
PREFIX AUTO 3,1
AUTO 4,1
*-------------------------------------- *--------------------------------------
* called directly by IRQ Vector $FFFE in AuxLC * called directly by IRQ Vector $FFFE in AuxLC
* Must keep: * Must keep:

View File

@ -1,6 +1,5 @@
NEW NEW
PREFIX AUTO 3,1
AUTO 4,1
*-------------------------------------- *--------------------------------------
* $E000-E1FF System calls Jump Table * $E000-E1FF System calls Jump Table
*-------------------------------------- *--------------------------------------

View File

@ -1,6 +1,5 @@
NEW NEW
PREFIX AUTO 3,1
AUTO 4,1
*/-------------------------------------- */--------------------------------------
* # FAdd,FSub,FMult,FDiv,FPwr * # FAdd,FSub,FMult,FDiv,FPwr
* Return X+Y, X-Y, X*Y, X/Y, X^Y * Return X+Y, X-Y, X*Y, X/Y, X^Y

View File

@ -1,6 +1,5 @@
NEW NEW
PREFIX AUTO 3,1
AUTO 4,1
*-------------------------------------- *--------------------------------------
ZPMemMgrSPtr .EQ ZPMEMMGR Pointer To Slot selected ZPMemMgrSPtr .EQ ZPMEMMGR Pointer To Slot selected
ZPMemMgrTmp1 .EQ ZPMEMMGR+2 ZPMemMgrTmp1 .EQ ZPMEMMGR+2

View File

@ -1,6 +1,5 @@
NEW NEW
PREFIX AUTO 3,1
AUTO 4,1
*-------------------------------------- *--------------------------------------
* K.PFTAdd * K.PFTAdd
* In : * In :

View File

@ -1,6 +1,5 @@
NEW NEW
PREFIX AUTO 3,1
AUTO 4,1
*-------------------------------------- *--------------------------------------
.DUMMY .DUMMY
.OR ZPTMP+21 .OR ZPTMP+21

View File

@ -1,6 +1,5 @@
NEW NEW
PREFIX AUTO 3,1
AUTO 4,1
*/-------------------------------------- */--------------------------------------
* # GetPWUID * # GetPWUID
* ## C * ## C

View File

@ -1,6 +1,5 @@
NEW NEW
PREFIX AUTO 3,1
AUTO 4,1
*/-------------------------------------- */--------------------------------------
* # strtof * # strtof
* Convert String to 40 bits Float * Convert String to 40 bits Float

View File

@ -1,6 +1,5 @@
NEW NEW
PREFIX AUTO 3,1
AUTO 4,1
*/-------------------------------------- */--------------------------------------
* # StrLen * # StrLen
* Returns Length of C-String * Returns Length of C-String

View File

@ -19,8 +19,10 @@ ZPTmpBool .BS 1
ZPTmpChar .BS 1 ZPTmpChar .BS 1
*-------------------------------------- *--------------------------------------
bActive .BS 1 bActive .BS 1
CsiHeader .BS 1
bCsiInNum .BS 1 bCsiInNum .BS 1
CsiParamCnt .BS 1 CsiParamCnt .BS 1
CsiParams .BS 4 CsiParams .BS 4
.ED .ED
*-------------------------------------- *--------------------------------------
@ -213,22 +215,38 @@ DRV.TERM.READ jsr DRV.TERM.GetIOCTLBufCntDCB
and #$7F and #$7F
ldx KeyRemapped ldx #KeyRemapped.cnt-1
.2 cmp KeyRemapped,x .2 cmp KeyRemapped,x
beq .3 beq .3
dex dex
bne .2 bpl .2
jsr Char.Out.Put no remap....send char....
cmp #C.CR
bne .21
jsr Char.Out.Put
ldy #S.DCB.TTY.bCRLF
lda (ZPDCBPtr),y
bpl .7
lda #C.LF
.21 jsr Char.Out.Put no remap....send char....
bra .7 and flush bra .7 and flush
.3 lda KeyRemappedIdx,x .3 lda KeyRemapped.Tbl,x
tax pha
.4 lda KeyRemappedTbl,x lda #C.ESC
beq .7 end of remap....flush
jsr Char.Out.Put jsr Char.Out.Put
inx
bra .4 lda #'['
jsr Char.Out.Put
pla
jsr Char.Out.Put
bra .7
.6 ldy #S.DCB.TTY.OUTTAIL .6 ldy #S.DCB.TTY.OUTTAIL
lda (ZPDCBPtr),y lda (ZPDCBPtr),y
@ -274,7 +292,7 @@ DRV.TERM.WRITE jsr DRV.TERM.GetIOCTLBufCntDCB
.1 inc ZPCount .1 inc ZPCount
bne .2 bne .2
inc ZPCount+1 inc ZPCount+1
beq FS.8 beq .8
.2 ldy #S.DCB.TTY.MODE .2 ldy #S.DCB.TTY.MODE
lda (ZPDCBPtr),y lda (ZPDCBPtr),y
@ -295,6 +313,9 @@ DRV.TERM.WRITE jsr DRV.TERM.GetIOCTLBufCntDCB
.DA DRV.TERM.IAC .DA DRV.TERM.IAC
.DA DRV.TERM.G0 .DA DRV.TERM.G0
.DA DRV.TERM.G1 .DA DRV.TERM.G1
.8 clc
rts
*-------------------------------------- *--------------------------------------
DRV.TERM.COUT lda (ZPBufPtr) DRV.TERM.COUT lda (ZPBufPtr)
@ -324,8 +345,8 @@ DRV.TERM.COUT lda (ZPBufPtr)
jmp (.4,x) jmp (.4,x)
.4 .DA ENQ .4 .DA ENQ
.DA BS .DA DRV.TERM.COUT.BS
.DA LF .DA DRV.TERM.COUT.LF
.DA DRV.TERM.COUT.FF .DA DRV.TERM.COUT.FF
.DA DRV.TERM.COUT.CR .DA DRV.TERM.COUT.CR
.DA DRV.TERM.COUT.SO .DA DRV.TERM.COUT.SO
@ -343,18 +364,43 @@ DRV.TERM.COUT.FS
ldy #S.DCB.TTY.bLINEWRAP ldy #S.DCB.TTY.bLINEWRAP
lda (ZPDCBPtr),y lda (ZPDCBPtr),y
bpl FS.8 bpl DRV.TERM.COUT.FS.8
ldy #S.DCB.TTY.CH ldy #S.DCB.TTY.CH
lda #0 lda #0
sta (ZPDCBPtr),y sta (ZPDCBPtr),y
jmp LF jmp DRV.TERM.COUT.LF.1
.1 inc .1 inc
sta (ZPDCBPtr),y sta (ZPDCBPtr),y
FS.8 clc DRV.TERM.COUT.FS.8
clc
rts
*--------------------------------------
DRV.TERM.COUT.BS
ldy #S.DCB.TTY.CH
lda (ZPDCBPtr),y
beq .1
dec
sta (ZPDCBPtr),y
clc
rts
.1 ldy #S.DCB.TTY.CV
lda (ZPDCBPtr),y
beq .2
dec
sta (ZPDCBPtr),y
lda #79
dey
sta (ZPDCBPtr),y
.2 clc
rts rts
*-------------------------------------- *--------------------------------------
DRV.TERM.COUT.DEL DRV.TERM.COUT.DEL
@ -367,7 +413,7 @@ DRV.TERM.COUT.DEL
.1 iny S.DCB.TTY.CV .1 iny S.DCB.TTY.CV
lda (ZPDCBPtr),y lda (ZPDCBPtr),y
beq FS.8 beq DRV.TERM.COUT.FS.8
dec dec
sta (ZPDCBPtr),y sta (ZPDCBPtr),y
@ -470,10 +516,19 @@ DRV.TERM.CSI ldy #S.DCB.TTY.INBUFFER
rts rts
DRV.TERM.CSI.Exec DRV.TERM.CSI.Exec
stz CsiHeader
stz CsiParamCnt stz CsiParamCnt
stz bCsiInNum stz bCsiInNum
ldy #S.DCB.TTY.INBUFFER EscSeq Ptr ldy #S.DCB.TTY.INBUFFER+1 EscSeq Ptr
lda (ZPDCBPtr),y
dey
cmp #'?'
bne .10
sta CsiHeader
iny
.10 stz ZPTmpWord .10 stz ZPTmpWord
stz ZPTmpWord+1 stz ZPTmpWord+1
@ -554,8 +609,8 @@ DRV.TERM.CSI.Exec
tax tax
jmp (.8,x) jmp (.8,x)
.8 .DA Csi.LWEnable h .8 .DA Csi.SetMode h
.DA Csi.LWDisable l .DA Csi.ResetMode l
.DA Csi.DispAttr m .DA Csi.DispAttr m
.DA Csi.Query n .DA Csi.Query n
.DA Csi.Scroll r .DA Csi.Scroll r
@ -563,24 +618,46 @@ DRV.TERM.CSI.Exec
.DA Csi.EraseLine K .DA Csi.EraseLine K
.DA Csi.Home H .DA Csi.Home H
*-------------------------------------- *--------------------------------------
Csi.LWEnable sec Csi.SetMode sec
.HS 90 BCC .HS 90 BCC
*-------------------------------------- *--------------------------------------
Csi.LWDisable clc Csi.ResetMode clc
ldx CsiParamCnt ldx CsiParamCnt
beq .8 beq .99
dex dex
bne .8 bne .99
ldx CsiHeader
lda CsiParams lda CsiParams
eor #7
bne .8
ror php
cmp #20 bCRLF
bne .1
txa
bne .98
ldy #S.DCB.TTY.bCRLF
bra .8
.1 cmp #7
bne .98
cpx #'?'
bne .98
ldy #S.DCB.TTY.bLINEWRAP ldy #S.DCB.TTY.bLINEWRAP
sta (ZPDCBPtr),y
.8 clc .8 plp
ror
sta (ZPDCBPtr),y
clc
rts
.98 plp
.99 clc
rts rts
*-------------------------------------- *--------------------------------------
Csi.DispAttr ldx CsiParamCnt Csi.DispAttr ldx CsiParamCnt
@ -917,30 +994,15 @@ ENQ ldx #0
.8 clc .8 clc
rts rts
*-------------------------------------- *--------------------------------------
BS ldy #S.DCB.TTY.CH DRV.TERM.COUT.LF
ldy #S.DCB.TTY.bCRLF
lda (ZPDCBPtr),y lda (ZPDCBPtr),y
beq .1 bpl DRV.TERM.COUT.LF.1
dec jsr DRV.TERM.COUT.CR
sta (ZPDCBPtr),y
clc
rts
.1 ldy #S.DCB.TTY.CV DRV.TERM.COUT.LF.1
lda (ZPDCBPtr),y ldy #S.DCB.TTY.CV
beq .2
dec
sta (ZPDCBPtr),y
lda #79
dey
sta (ZPDCBPtr),y
.2 clc
rts
*--------------------------------------
LF 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
@ -1280,66 +1342,6 @@ DRV.TERM.Title.OFF
sta (ZPDCBPtr),y sta (ZPDCBPtr),y
jmp DRV.TERM.LINE0CPY jmp DRV.TERM.LINE0CPY
*-------------------------------------- *--------------------------------------
RESET.VALUES .DA #0 S.DCB.TTY.MODE
.DA #0 S.DCB.TTY.CH
.DA #0 S.DCB.TTY.CV
.DA #0 S.DCB.TTY.SCROLLTOP
.DA #23 S.DCB.TTY.SCROLLBOT
.DA #0 S.DCB.TTY.bCURON
.DA #$80 S.DCB.TTY.bNORMAL
.DA #$80 S.DCB.TTY.bLINEWRAP
.DA #0 S.DCB.TTY.bTITLE
.DA #0 S.DCB.TTY.bG0G1
.DA #0 S.DCB.TTY.bG0ALT
.DA #$80 S.DCB.TTY.bG1ALT
.DA #S.DCB.TTY.OUTBUFFER S.DCB.TTY.OUTTAIL
.DA #S.DCB.TTY.OUTBUFFER S.DCB.TTY.OUTHEAD
.DA #S.DCB.TTY.INBUFFER S.DCB.TTY.INBUFFER
*--------------------------------------
CtrlChars .DA #C.ENQ,#C.BS,#C.LF,#C.FF,#C.CR,#C.SO,#C.SI,#C.FS,#C.ESC
CtrlChars.Cnt .EQ *-CtrlChars
*--------------------------------------
EscCodes .AZ "MDc[()"
EscCodes.Cnt .EQ *-EscCodes
EscModes .DA #0,#0,#0,#S.DCB.TTY.MODE.CSI,#S.DCB.TTY.MODE.G0,#S.DCB.TTY.MODE.G1
CsiCodes .AS "hlmnrJKH"
CsiCodes.Cnt .EQ *-CsiCodes
*--------------------------------------
KeyRemapped .HS 05080A0B0D15 L,D,U,CR,R
KeyRemappedIdx .HS 050004080C0F
KeyRemappedTbl .EQ *
KeyRemappedLEFT .HS 1B5B4400 esc[D
KeyRemappedDOWN .HS 1B5B4200 esc[B
KeyRemappedUP .HS 1B5B4100 esc[A
KeyRemappedCR .HS 0D0A00 crlf
KeyRemappedRGHT .HS 1B5B4300 esc[C
*--------------------------------------
WILLDO .DA #TELOPT.BINARY,#TELOPT.SGA
WILLDO.CNT .EQ *-WILLDO
WILLDONT .DA #TELOPT.TSPEED,#TELOPT.LINEMODE,#TELOPT.STATUS
WILLDONT.CNT .EQ *-WILLDONT
DOWILL .DA #TELOPT.BINARY,#TELOPT.SGA,#TELOPT.TTYPE,#TELOPT.NAWS
DOWILL.CNT .EQ *-DOWILL
DOWONT .DA #TELOPT.ECHO,#TELOPT.NEWENVIRON,#TELOPT.XDISPLOC,#TELOPT.TSPEED,#TELOPT.LFLOW
DOWONT.CNT .EQ *-DOWONT
SB.IS.TTYPE .DA #IAC,#SB,#TELOPT.TTYPE,#SB.IS
ENQ.String .AS "xterm"
ENQ.String.Len .EQ *-ENQ.String
.DA #IAC,#SE
SB.IS.TTYPE.LEN .EQ *-SB.IS.TTYPE
SB.IS.NAWS .DA #IAC,#SB,#TELOPT.NAWS,#SB.IS
.DA 80
.DA 24
.DA #IAC,#SE
SB.IS.NAWS.LEN .EQ *-SB.IS.NAWS
*--------------------------------------
DRV.TERM.DIB .DA #S.DIB.S.WRITE+S.DIB.S.READ
.DA #0,#0,#0
>PSTR "A2osX VT100 TERM"
.DA #S.DIB.T.CHAR
.DA #0
.DA K.VER
*--------------------------------------
MAN MAN
SAVE USR/SRC/SYS/KERNEL.S.TERM SAVE USR/SRC/SYS/KERNEL.S.TERM
LOAD USR/SRC/SYS/KERNEL.S LOAD USR/SRC/SYS/KERNEL.S

View File

@ -285,6 +285,67 @@ REMAP.E0.FF .HS 5B4142434445464748495FA0DF544e4f
* p q r s t u v w x y z { | } ~ DEL * p q r s t u v w x y z { | } ~ DEL
.HS 50DF5253545556575F595a5b5c5d5e5f .HS 50DF5253545556575F595a5b5c5d5e5f
*-------------------------------------- *--------------------------------------
RESET.VALUES .DA #0 S.DCB.TTY.MODE
.DA #0 S.DCB.TTY.CH
.DA #0 S.DCB.TTY.CV
.DA #0 S.DCB.TTY.SCROLLTOP
.DA #23 S.DCB.TTY.SCROLLBOT
.DA #0 S.DCB.TTY.bCURON
.DA #0 S.DCB.TTY.bTITLE
.DA #$80 S.DCB.TTY.bNORMAL
.DA #$80 S.DCB.TTY.bLINEWRAP
.DA #$80 S.DCB.TTY.bCRLF
.DA #0
.DA #0 S.DCB.TTY.bG0G1
.DA #0 S.DCB.TTY.bG0ALT
.DA #$80 S.DCB.TTY.bG1ALT
.DA #S.DCB.TTY.OUTBUFFER S.DCB.TTY.OUTTAIL
.DA #S.DCB.TTY.OUTBUFFER S.DCB.TTY.OUTHEAD
.DA #S.DCB.TTY.INBUFFER S.DCB.TTY.INBUFFER
*--------------------------------------
CtrlChars .DA #C.ENQ,#C.BS,#C.LF,#C.FF,#C.CR,#C.SO,#C.SI,#C.FS,#C.ESC
CtrlChars.Cnt .EQ *-CtrlChars
*--------------------------------------
EscCodes .AZ "MDc[()"
EscCodes.Cnt .EQ *-EscCodes
EscModes .DA #0,#0,#0,#S.DCB.TTY.MODE.CSI,#S.DCB.TTY.MODE.G0,#S.DCB.TTY.MODE.G1
CsiCodes .AS "hlmnrJKH"
CsiCodes.Cnt .EQ *-CsiCodes
*--------------------------------------
KeyRemapped .HS 080A0B15 Left,Down,Up,Right
KeyRemapped.Cnt .EQ *-KeyRemapped
KeyRemapped.Tbl .HS 44424143 esc[D,esc[B,esc[A,esc[C
*--------------------------------------
WILLDO .DA #TELOPT.BINARY,#TELOPT.SGA
WILLDO.CNT .EQ *-WILLDO
WILLDONT .DA #TELOPT.TSPEED,#TELOPT.LINEMODE,#TELOPT.STATUS
WILLDONT.CNT .EQ *-WILLDONT
DOWILL .DA #TELOPT.BINARY,#TELOPT.SGA,#TELOPT.TTYPE,#TELOPT.NAWS
DOWILL.CNT .EQ *-DOWILL
DOWONT .DA #TELOPT.ECHO,#TELOPT.NEWENVIRON,#TELOPT.XDISPLOC,#TELOPT.TSPEED,#TELOPT.LFLOW
DOWONT.CNT .EQ *-DOWONT
SB.IS.TTYPE .DA #IAC,#SB,#TELOPT.TTYPE,#SB.IS
ENQ.String .AS "xterm"
ENQ.String.Len .EQ *-ENQ.String
.DA #IAC,#SE
SB.IS.TTYPE.LEN .EQ *-SB.IS.TTYPE
SB.IS.NAWS .DA #IAC,#SB,#TELOPT.NAWS,#SB.IS
.DA 80
.DA 24
.DA #IAC,#SE
SB.IS.NAWS.LEN .EQ *-SB.IS.NAWS
*--------------------------------------
DRV.TERM.DIB .DA #S.DIB.S.WRITE+S.DIB.S.READ
.DA #0,#0,#0
>PSTR "A2osX VT100 TERM"
.DA #S.DIB.T.CHAR
.DA #0
.DA K.VER
*--------------------------------------
BUF.BASEL .DA #0 BUF.BASEL .DA #0
.DA #80 .DA #80
.DA #160 .DA #160

View File

@ -1,6 +1,5 @@
NEW NEW
PREFIX AUTO 3,1
AUTO 4,1
*-------------------------------------- *--------------------------------------
* https://www.cise.ufl.edu/~cop4600/cgi-bin/lxr/http/source.cgi/lib/ansi/gmtime.c * https://www.cise.ufl.edu/~cop4600/cgi-bin/lxr/http/source.cgi/lib/ansi/gmtime.c
*-------------------------------------- *--------------------------------------