Kernel 0.92

This commit is contained in:
Rémy GIBERT 2018-12-18 15:37:07 +01:00
parent c3e396238a
commit be8d29bc45
24 changed files with 195 additions and 226 deletions

View File

@ -50,14 +50,6 @@ none
## RETURN VALUE ## RETURN VALUE
Y,A = Ptr to installed driver Y,A = Ptr to installed driver
# GetDevByID
A = DevID
## RETURN VALUE
CC = OK, CS = ERROR
Y,A = FD
X = hFD
# GetDevByName # GetDevByName
Y,A = Ptr to device name (C-String) Y,A = Ptr to device name (C-String)
@ -552,13 +544,6 @@ Load a file in AUX memory (Stock Objects)
Y,A = File Length Y,A = File Length
X = hMem of Loaded Object in AUX mem X = hMem of Loaded Object in AUX mem
# GetPSStat
**In:**
Y,A = Ptr to K.PS.MAX*2+1 bytes buffer
## RETURN VALUE
Buffer filled with PS stats
# ExecL # ExecL
## C ## C
@ -598,13 +583,6 @@ A = Child PSID
## RETURN VALUE ## RETURN VALUE
A = Child PSID A = Child PSID
# GetPSStatus
**In:**
A = PID
## RETURN VALUE
A = Status Byte
# Stat # Stat
Return information about a file Return information about a file

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -8,11 +8,16 @@ AUTO 4,1
*-------------------------------------- *--------------------------------------
.INB INC/MACROS.I .INB INC/MACROS.I
.INB INC/A2OSX.I .INB INC/A2OSX.I
.INB INC/KERNEL.I
.INB INC/LIBBLKDEV.I .INB INC/LIBBLKDEV.I
*-------------------------------------- *--------------------------------------
ZPPtr1 .EQ ZPBIN .DUMMY
ZPPtr2 .EQ ZPBIN+2 .OR ZPBIN
ZPPtrFD .EQ ZPBIN+4 ZS.START
ZPPtr1 .BS 2
ZPPtr2 .BS 2
ZS.END
.ED
*-------------------------------------- *--------------------------------------
* File Header (16 Bytes) * File Header (16 Bytes)
*-------------------------------------- *--------------------------------------
@ -20,11 +25,12 @@ CS.START cld
jmp (.1,x) jmp (.1,x)
.DA #$61 6502,Level 1 (65c02) .DA #$61 6502,Level 1 (65c02)
.DA #1 BIN Layout Version 1 .DA #1 BIN Layout Version 1
.DA 0 .DA #0 S.PS.F.EVENT
.DA CS.END-CS.START CS .DA #0
.DA DS.END-DS.START DS .DA CS.END-CS.START Code Size (without Constants)
.DA #32 SS .DA DS.END-DS.START Data SegmentSize
.DA #6 ZP .DA #32 Stack Size
.DA #ZS.END-ZS.START Zero Page Size
.DA 0 .DA 0
*-------------------------------------- *--------------------------------------
* Relocation Table * Relocation Table
@ -82,17 +88,17 @@ CS.INIT ldy #S.PS.ARGC
sta (pData),y sta (pData),y
bra .1 bra .1
.4 >LDA.G hDevFD .4 >LDA.G hDevID
bne .5 Already have a dev...go get VolName bne .5 Already have a dev...go get VolName
>LDYA ZPPtr1 >LDYA ZPPtr1
>SYSCALL GetDevByName >SYSCALL GetDevByName
bcs .99 bcs .99
>STYA ZPPtrFD
txa
>SYSCALL GetDevByID
txa txa
>STA.G hDevID
lda Dev.Table.hFD,x
>STA.G hDevFD >STA.G hDevFD
bra .1 bra .1
.5 ldy #$ff .5 ldy #$ff
@ -205,20 +211,19 @@ CS.RUN.InitCat >LDA.G CatSize
*-------------------------------------- *--------------------------------------
CS.RUN.BuildCat >PUSHEA.G DIB CS.RUN.BuildCat >PUSHEA.G DIB
>LDA.G hDevFD >LDA.G hDevFD
>SYSCALL GetDevStatus >SYSCALL GetDevStatus
bcs .99 bcs .99
lda ZPPtrFD
* clc
adc #S.FD.DEV.NAME
sta ZPPtr2
lda ZPPtrFD+1
adc /S.FD.DEV.NAME
sta ZPPtr2+1
>PUSHEA.G VolName >PUSHEA.G VolName
>PUSHW.G DIB+S.DIB.SIZE >PUSHW.G DIB+S.DIB.SIZE
>PUSHW ZPPtr2
>LDA.G hDevID
tax
lda Dev.Table.hPath,x
>SYSCALL GetMemPtr
>PUSHYA
>PUSHBI 6 >PUSHBI 6
>LDYA L.MSG.INIT >LDYA L.MSG.INIT
>SYSCALL printf >SYSCALL printf
@ -259,6 +264,7 @@ CS.RUN.BuildCat >PUSHEA.G DIB
CS.RUN.WriteCat >PUSHEA.G IOCTL CS.RUN.WriteCat >PUSHEA.G IOCTL
>PUSHBI IOCTL.WRITEBLOCK >PUSHBI IOCTL.WRITEBLOCK
>LDA.G hDevFD >LDA.G hDevFD
>SYSCALL IOCTL >SYSCALL IOCTL
bcs .9 bcs .9
@ -333,7 +339,8 @@ DS.START
ArgIndex .BS 1 ArgIndex .BS 1
bLL .BS 1 bLL .BS 1
VolName .BS 16 VolName .BS 16
hDevFD .BS 5 hDevID .BS 1
hDevFD .BS 1
CatSize .BS 1 CatSize .BS 1
CatOptions .BS 1 CatOptions .BS 1
BlkCnt .BS 1 BlkCnt .BS 1

View File

@ -4,7 +4,7 @@ AUTO 4,1
.LIST OFF .LIST OFF
.OP 65C02 .OP 65C02
.OR $2000 .OR $2000
.TF SBIN/IPCONFIG2 .TF BIN/DEV/IPCONFIG2
*-------------------------------------- *--------------------------------------
.INB INC/MACROS.I .INB INC/MACROS.I
.INB INC/A2OSX.I .INB INC/A2OSX.I

View File

@ -8,11 +8,18 @@ AUTO 4,1
*-------------------------------------- *--------------------------------------
.INB INC/MACROS.I .INB INC/MACROS.I
.INB INC/A2OSX.I .INB INC/A2OSX.I
.INB INC/KERNEL.I
*-------------------------------------- *--------------------------------------
PAGELEN .EQ 22 PAGELEN .EQ 22
*-------------------------------------- *--------------------------------------
ZPPTR1 .EQ ZPBIN .DUMMY
ZPPTR2 .EQ ZPBIN+2 .OR ZPBIN
ZS.START
ZPPTR1 .BS 2
ZPPTR2 .BS 2
ZPPSPtr .BS 2
ZS.END
.ED
*-------------------------------------- *--------------------------------------
* File Header (16 Bytes) * File Header (16 Bytes)
*-------------------------------------- *--------------------------------------
@ -20,11 +27,12 @@ CS.START cld
jmp (.1,x) jmp (.1,x)
.DA #$61 6502,Level 1 (65c02) .DA #$61 6502,Level 1 (65c02)
.DA #1 BIN Layout Version 1 .DA #1 BIN Layout Version 1
.DA 0 .DA #0 S.PS.F.EVENT
.DA CS.END-CS.START CS .DA #0
.DA DS.END-DS.START DS .DA CS.END-CS.START Code Size (without Constants)
.DA #64 SS .DA DS.END-DS.START Data SegmentSize
.DA #4 ZP .DA #32 Stack Size
.DA #ZS.END-ZS.START Zero Page Size
.DA 0 .DA 0
*-------------------------------------- *--------------------------------------
* Relocation Table * Relocation Table
@ -182,7 +190,7 @@ CS.RUN.PRINTMEM ldy #S.MEM.LEN+1
ldy #S.MEM.OWNERPID ldy #S.MEM.OWNERPID
lda (ZPPTR1),y lda (ZPPTR1),y
>SYSCALL GetPSStatus jsr CS.RUN.CHECKPS
bcc .12 bcc .12
>PUSHBI 0 >PUSHBI 0
@ -260,6 +268,18 @@ CS.RUN.PRINTMEM.EXIT
rts rts
*-------------------------------------- *--------------------------------------
CS.RUN.CHECKPS ldx #0
.1 cmp PS.Table.PID,x
beq .8
inx
cpx K.PS.MAX
bne .1
rts CS
.8 clc
rts
*--------------------------------------
CS.DOEVENT sec CS.DOEVENT sec
rts rts
*-------------------------------------- *--------------------------------------

View File

@ -10,7 +10,13 @@ AUTO 4,1
.INB INC/A2OSX.I .INB INC/A2OSX.I
.INB INC/KERNEL.I .INB INC/KERNEL.I
*-------------------------------------- *--------------------------------------
ZPPtr .EQ ZPBIN .DUMMY
.OR ZPBIN
ZS.START
ZPPSPtr .BS 2
ZPArgV .BS 2
ZS.END
.ED
*-------------------------------------- *--------------------------------------
* File Header (16 Bytes) * File Header (16 Bytes)
*-------------------------------------- *--------------------------------------
@ -18,11 +24,12 @@ CS.START cld
jmp (.1,x) jmp (.1,x)
.DA #$61 6502,Level 1 (65c02) .DA #$61 6502,Level 1 (65c02)
.DA #1 BIN Layout Version 1 .DA #1 BIN Layout Version 1
.DA 0 .DA #0 S.PS.F.EVENT
.DA CS.END-CS.START CS .DA #0
.DA DS.END-DS.START DS .DA CS.END-CS.START Code Size (without Constants)
.DA #64 SS .DA DS.END-DS.START Data SegmentSize
.DA #2 ZP .DA #16 Stack Size
.DA #ZS.END-ZS.START Zero Page Size
.DA 0 .DA 0
*-------------------------------------- *--------------------------------------
* Relocation Table * Relocation Table
@ -32,74 +39,73 @@ CS.START cld
.DA CS.DOEVENT .DA CS.DOEVENT
.DA CS.QUIT .DA CS.QUIT
L.MSG0 .DA MSG0 L.MSG0 .DA MSG0
L.MSGK .DA MSGK
L.MSG1 .DA MSG1 L.MSG1 .DA MSG1
L.MSG2 .DA MSG2
L.MSG3 .DA MSG3
.DA 0 .DA 0
*-------------------------------------- *--------------------------------------
CS.INIT clc CS.INIT clc
rts rts
*-------------------------------------- *--------------------------------------
CS.RUN >LDYA pData CS.RUN >LDYA L.MSG0
>SYSCALL GetPSStat
>LDYA L.MSG0
>SYSCALL puts >SYSCALL puts
>PUSHB.G PS.KCPU
>PUSHBI 1
>LDYA L.MSGK
>SYSCALL printf
lda #1 >LDA.G PS.Index
>STA.G PS.Index
.1 >INC.G PS.Index .1 tax
tay lda PS.Table.PID,x
lda (pData),y PID beq .7
lda PS.Table.hPS,x
>SYSCALL GetMemPtr >SYSCALL GetMemPtr
>STYA ZPPtr >STYA ZPPSPtr
ldy #S.PS.hARGV ldy #S.PS.hARGV
lda (ZPPtr),y lda (ZPPSPtr),y
>SYSCALL GetMemPtr >SYSCALL GetMemPtr
>PUSHYA >STYA ZPArgV
ldy #S.PS.PPID ldy #S.PS.PPID
lda (ZPPtr),y lda (ZPPSPtr),y
>PUSHA Parent PID >PUSHA Parent PID
ldy #S.PS.UID ldy #S.PS.UID
lda (ZPPtr),y lda (ZPPSPtr),y
>PUSHA >PUSHA
jsr CS.RUN.DecodeFlags jsr CS.RUN.DecodeFlags
>PUSHEA.G PS.FLAGS >PUSHEA.G PS.FLAGS
>INC.G PS.Index >LDA.G PS.Index
tay tax
lda (pData),y lda PS.Table.Stats,x
>PUSHA CPU% >PUSHA CPU%
ldy #S.PS.PID ldy #S.PS.PID
lda (ZPPtr),y lda (ZPPSPtr),y
>PUSHA >PUSHA
>PUSHBI 8 >PUSHBI 8
>LDYA L.MSG1 >LDYA L.MSG1
>SYSCALL printf >SYSCALL printf
bcs .9
.7 >DEC.G PS.COUNT jsr CS.RUN.PrintArgs
bcs .9
>SLEEP
.7 >INC.G PS.Index
cmp #K.PS.MAX
bne .1 bne .1
.8 .8 lda #0 tell Kernel that all done ok, but
* lda #0 tell Kernel that all done ok, but
sec we do not want to stay in memory sec we do not want to stay in memory
rts .9 rts
*-------------------------------------- *--------------------------------------
CS.RUN.DecodeFlags CS.RUN.DecodeFlags
lda (ZPPtr) Get flags lda (ZPPSPtr) Get flags
ldy #PS.FLAGS+7 ldy #PS.FLAGS+7
ldx #7 ldx #7
@ -117,6 +123,35 @@ CS.RUN.DecodeFlags
bpl .2 bpl .2
rts rts
*-------------------------------------- *--------------------------------------
CS.RUN.PrintArgs
.1 lda (ZPArgV)
beq .8
>PUSHW ZPArgV
>PUSHBI 2
>LDYA L.MSG2
>SYSCALL printf
bcs .9
.2 inc ZPArgV
bne .3
inc ZPArgV+1
.3 lda (ZPArgV)
bne .2
inc ZPArgV
bne .1
inc ZPArgV+1
bra .1
.8 >PUSHBI 0
>LDYA L.MSG3
>SYSCALL printf
.9 rts
*--------------------------------------
CS.DOEVENT sec CS.DOEVENT sec
rts rts
*-------------------------------------- *--------------------------------------
@ -125,16 +160,14 @@ CS.QUIT clc
*-------------------------------------- *--------------------------------------
CS.END CS.END
MSG0 .AZ "ID CPU% Flags UID PID Command Line" MSG0 .AZ "ID CPU% Flags UID PID Command Line"
MSGK .AZ "000 %03d\% -------- 000 --- *KERNEL*\r\n" MSG1 .AZ "\e[7l%03d %03d\% %s %03d %03d"
MSG1 .AZ "%03d %03d\% %s %03d %03d %s\r\n" MSG2 .AZ " %s"
MSG3 .AZ "\r\n"
MSG.FLAGS .AS "IRQDHSed" MSG.FLAGS .AS "IRQDHSed"
*-------------------------------------- *--------------------------------------
.DUMMY .DUMMY
.OR 0 .OR 0
DS.START DS.START
PS.COUNT .BS 1
PS.KCPU .BS 1
PS.DATA .BS K.PS.MAX*2
PS.Index .BS 1 PS.Index .BS 1
PS.FLAGS .BS 9 PS.FLAGS .BS 9
DS.END DS.END

View File

@ -4,7 +4,7 @@ AUTO 4,1
.LIST OFF .LIST OFF
.OP 65C02 .OP 65C02
.OR $2000 .OR $2000
.TF DRV/DHGR.DRV .TF DRV/GUI/DHGR.DRV
*-------------------------------------- *--------------------------------------
.INB INC/MACROS.I .INB INC/MACROS.I
.INB INC/A2OSX.I .INB INC/A2OSX.I

View File

@ -4,7 +4,7 @@ AUTO 4,1
.LIST OFF .LIST OFF
.OP 65C02 .OP 65C02
.OR $2000 .OR $2000
.TF DRV/MOUSE.DRV .TF DRV/GUI/MOUSE.DRV
*-------------------------------------- *--------------------------------------
.INB INC/MACROS.I .INB INC/MACROS.I
.INB INC/A2OSX.I .INB INC/A2OSX.I

View File

@ -4,8 +4,10 @@ AUTO 4,1
#!/BIN/SHELL #!/BIN/SHELL
ECHO *** A2osX INIT Script *** ECHO *** A2osX INIT Script ***
SET PS1 = '$PWD' SET PS1 = '$PWD'
SET PATH = ${PATH}BIN/DEV/ SET PATH = ${PATH}:${ROOT}BIN/DEV/
# Main Screen SET DRV = ${DRV}:${ROOT}DRV/GUI/
SET LIB = ${LIB}:${ROOT}LIB/GUI/
# Main Screens
GETTY /DEV/TTY1 ${ROOT}SBIN/LOGIN & GETTY /DEV/TTY1 ${ROOT}SBIN/LOGIN &
GETTY /DEV/TTY2 ${ROOT}SBIN/LOGIN & GETTY /DEV/TTY2 ${ROOT}SBIN/LOGIN &
GETTY /DEV/TTY3 ${ROOT}SBIN/LOGIN & GETTY /DEV/TTY3 ${ROOT}SBIN/LOGIN &

View File

@ -4,9 +4,11 @@ AUTO 4,1
#!/BIN/SHELL #!/BIN/SHELL
ECHO *** A2osX INIT Script *** ECHO *** A2osX INIT Script ***
SET PS1 = '$PWD' SET PS1 = '$PWD'
# Main Screen # Main Screens
INSDRV CONSOLE.DRV GETTY /DEV/TTY1 ${ROOT}SBIN/LOGIN &
STARTPROC GETTY /DEV/CON ${ROOT}SBIN/LOGIN GETTY /DEV/TTY2 ${ROOT}SBIN/LOGIN &
GETTY /DEV/TTY3 ${ROOT}SBIN/LOGIN &
GETTY /DEV/TTY4 ${ROOT}SBIN/LOGIN &
# Serial Login # Serial Login
#INSDRV SSC.DRV 9600,N,8,1,X #INSDRV SSC.DRV 9600,N,8,1,X
#INSDRV SSC.I.DRV 9600,N,8,1,X #INSDRV SSC.I.DRV 9600,N,8,1,X

View File

@ -170,7 +170,7 @@ SYS.Rename .EQ $42
* .EQ $44 * .EQ $44
* .EQ $46 * .EQ $46
SYS.GetDevByID .EQ $48 * .EQ $48
SYS.GetDevByName .EQ $4A SYS.GetDevByName .EQ $4A
SYS.GetDevStatus .EQ $4C SYS.GetDevStatus .EQ $4C
SYS.MKDev .EQ $4E SYS.MKDev .EQ $4E
@ -229,8 +229,8 @@ SYS.Kill .EQ $A6
* .EQ $A8 * .EQ $A8
SYS.GetMemStat .EQ $AA SYS.GetMemStat .EQ $AA
SYS.GetPSStatus .EQ $AC * .EQ $AC
SYS.GetPSStat .EQ $AE * .EQ $AE
SYS.Args2ArgV .EQ $B0 SYS.Args2ArgV .EQ $B0
SYS.ArgV .EQ $B2 SYS.ArgV .EQ $B2

View File

@ -12,7 +12,12 @@ AUTO 4,1
*-------------------------------------- *--------------------------------------
TIMEOUT.MAX .EQ 100 10 sec. TIMEOUT.MAX .EQ 100 10 sec.
*-------------------------------------- *--------------------------------------
ZPPtr1 .EQ ZPBIN .DUMMY
.OR ZPBIN
ZS.START
ZPPtr1 .BS 2
ZS.END
.ED
*-------------------------------------- *--------------------------------------
* File Header (16 Bytes) * File Header (16 Bytes)
*-------------------------------------- *--------------------------------------
@ -22,10 +27,10 @@ CS.START cld
.DA #1 BIN Layout Version 1 .DA #1 BIN Layout Version 1
.DA #S.PS.F.EVENT S.PS.F .DA #S.PS.F.EVENT S.PS.F
.DA #0 .DA #0
.DA CS.END-CS.START CS .DA CS.END-CS.START Code Size (without Constants)
.DA DS.END-DS.START DS .DA DS.END-DS.START Data SegmentSize
.DA #64 SS .DA #32 Stack Size
.DA #2 ZP .DA #ZS.END-ZS.START Zero Page Size
.DA 0 .DA 0
*-------------------------------------- *--------------------------------------
* Relocation Table * Relocation Table

View File

@ -9,7 +9,12 @@ AUTO 4,1
.INB INC/MACROS.I .INB INC/MACROS.I
.INB INC/A2OSX.I .INB INC/A2OSX.I
*-------------------------------------- *--------------------------------------
ZPPTR1 .EQ ZPBIN .DUMMY
.OR ZPBIN
ZS.START
ZPPTR1 .BS 2
ZS.END
.ED
*-------------------------------------- *--------------------------------------
INPUT.BufPtr.SIZE .EQ 16 INPUT.BufPtr.SIZE .EQ 16
*-------------------------------------- *--------------------------------------
@ -21,10 +26,10 @@ CS.START cld
.DA #1 BIN Layout Version 1 .DA #1 BIN Layout Version 1
.DA #S.PS.F.EVENT S.PS.F .DA #S.PS.F.EVENT S.PS.F
.DA #0 .DA #0
.DA CS.END-CS.START CS .DA CS.END-CS.START Code Size (without Constants)
.DA DS.END-DS.START DS .DA DS.END-DS.START Data SegmentSize
.DA #64 SS .DA #16 Stack Size
.DA #2 ZP SS .DA #ZS.END-ZS.START Zero Page Size
.DA 0 .DA 0
*-------------------------------------- *--------------------------------------
* Relocation Table * Relocation Table

View File

@ -387,14 +387,12 @@ CORE.ScrSel and #$0F
cmp A2osX.ASCREEN Same as active screen...nothing to do cmp A2osX.ASCREEN Same as active screen...nothing to do
beq .8 beq .8
jsr K.GetDevByID tax
bcs .8
phx
>PUSHWI 0 Param >PUSHWI 0 Param
>PUSHBI IOCTL.CONTROL request >PUSHBI IOCTL.CONTROL request
pla ID lda Dev.Table.hFD,x
jsr K.IOCTL jsr K.IOCTL

View File

@ -2,24 +2,6 @@ NEW
PREFIX PREFIX
AUTO 4,1 AUTO 4,1
*/-------------------------------------- */--------------------------------------
* # GetDevByID
* A = DevID
* ## RETURN VALUE
* CC = OK, CS = ERROR
* Y,A = FD
* X = hFD
*\--------------------------------------
K.GetDevByID cmp DevMgr.DevCnt
bcs K.GetDev.NODEV
tax
lda Dev.Table.hFD,x
beq K.GetDev.NODEV
pha
jsr K.GetMemPtr
plx
rts
*/--------------------------------------
* # GetDevByName * # GetDevByName
* Y,A = Ptr to device name (C-String) * Y,A = Ptr to device name (C-String)
* ## RETURN VALUE * ## RETURN VALUE
@ -159,7 +141,7 @@ K.MKDev jsr MEM.SPtr1PPtr2 ptr1=fd, ptr2=name
txa txa
inc DevMgr.DevCnt inc DevMgr.DevCnt
clc * clc
rts rts
*-------------------------------------- *--------------------------------------
MAN MAN

View File

@ -203,7 +203,6 @@ DRV.NULL cld
.DA DRV.NULL.CLOSE .DA DRV.NULL.CLOSE
.DA DRV.NULL.READ .DA DRV.NULL.READ
.DA DRV.NULL.WRITE .DA DRV.NULL.WRITE
.DA A2osX.BADCALL IRQ
*-------------------------------------- *--------------------------------------
DRV.NULL.STATUS >LDYAI DRV.NULL.DIB DRV.NULL.STATUS >LDYAI DRV.NULL.DIB
jmp DRV.STATUS.YA jmp DRV.STATUS.YA

View File

@ -109,6 +109,12 @@ Kernel.Init3 sta SETALTZP
jsr MemMgrInit jsr MemMgrInit
>LDYAI CORE.S.PS0 Select Process 0 (Kernel)
>STYA pPs
>LDYAI K.STACKTOP
>STYA pStack
>PUSHWI FD.NULL.NAME >PUSHWI FD.NULL.NAME
>LDYAI FD.NULL >LDYAI FD.NULL
>SYSCALL MKDev >SYSCALL MKDev
@ -355,13 +361,7 @@ SysScrInit.TTYPtrs
rts rts
*-------------------------------------- *--------------------------------------
PS0.Init >LDYAI CORE.S.PS0 Select Process 0 (Kernel) PS0.Init >PUSHWI 0 Aux type
>STYA pPs
>LDYAI K.STACKTOP
>STYA pStack
>PUSHWI 0 Aux type
>PUSHBI S.FI.T.TXT >PUSHBI S.FI.T.TXT
>PUSHBI O.RDWR >PUSHBI O.RDWR

View File

@ -46,7 +46,7 @@ K.SYSCALL.JMP .DA 0 $00
.DA K.Rename .DA K.Rename
.DA 0 .DA 0
.DA 0 .DA 0
.DA K.GetDevByID .DA 0
.DA K.GetDevByName .DA K.GetDevByName
.DA K.GetDevStatus .DA K.GetDevStatus
.DA K.MKDev .DA K.MKDev
@ -104,8 +104,8 @@ K.SYSCALL.JMP .DA 0 $00
.DA K.Kill .DA K.Kill
.DA 0 .DA 0
.DA K.GetMemStat .DA K.GetMemStat
.DA K.GetPSStatus .DA 0
.DA K.GetPSStat .DA 0
.DA K.Args2ArgV $B0 .DA K.Args2ArgV $B0
.DA K.ArgV .DA K.ArgV

View File

@ -748,43 +748,6 @@ MEM.PutCharPtr2 sta (ZPPtr2)
bne .8 bne .8
inc ZPPtr2+1 inc ZPPtr2+1
.8 rts .8 rts
*/--------------------------------------
* # GetPSStat
* **In:**
* Y,A = Ptr to K.PS.MAX*2+1 bytes buffer
* ## RETURN VALUE
* Buffer filled with PS stats
*\--------------------------------------
K.GetPSStat >STYA ZPPtr1
ldx #0
ldy #1
lda CORE.InKernelStats
sta (ZPPtr1),y
iny
.1 lda PS.Table.PID,x
beq .2
lda PS.Table.hPS,x
sta (ZPPtr1),y
iny
lda PS.Table.Stats,x
sta (ZPPtr1),y
iny
.2 inx
cpx #K.PS.MAX
bne .1
.9 tya
lsr
dec
sta (ZPPtr1)
rts
*-------------------------------------- *--------------------------------------
* 6502/65C02/65816 OPCODES * 6502/65C02/65816 OPCODES
* Bit 3 : 1 = absolute addressing * Bit 3 : 1 = absolute addressing

View File

@ -565,10 +565,6 @@ K.Kill cmp #0
rts rts
.99 >RET 1 .99 >RET 1
*--------------------------------------
K.Kill.0 clc
rts
*-------------------------------------- *--------------------------------------
K.Kill.1 lda (ZPPtr1) K.Kill.1 lda (ZPPtr1)
@ -576,21 +572,9 @@ K.Kill.1 lda (ZPPtr1)
ora #S.PS.F.QUIT ora #S.PS.F.QUIT
sta (ZPPtr1) sta (ZPPtr1)
K.Kill.0
clc clc
rts rts
*/--------------------------------------
* # GetPSStatus
* **In:**
* A = PID
* ## RETURN VALUE
* A = Status Byte
*\--------------------------------------
K.GetPSStatus jsr CORE.GetPSByID
bcs .9
>STYA ZPPtr1
lda (ZPPtr1)
.9 rts
*-------------------------------------- *--------------------------------------
MAN MAN
SAVE USR/SRC/SYS/KERNEL.S.PS SAVE USR/SRC/SYS/KERNEL.S.PS

View File

@ -544,7 +544,7 @@ PrintF.F clc
rts rts
.9 sec .9 sec
rts PrintF.H.9 rts
*-------------------------------------- *--------------------------------------
PrintF.HH jsr PrintF.GetByte PrintF.HH jsr PrintF.GetByte
bcs PrintF.H.9 bcs PrintF.H.9
@ -559,7 +559,6 @@ PrintF.H.1 pha
jsr PrintF.NN.1 jsr PrintF.NN.1
pla pla
bra PrintF.N.1 bra PrintF.N.1
PrintF.H.9 rts
*-------------------------------------- *--------------------------------------
PrintF.N jsr PrintF.GetByte PrintF.N jsr PrintF.GetByte
bcs PrintF.H.9 bcs PrintF.H.9

View File

@ -709,36 +709,34 @@ DRV.TERM.IAC ldy #S.DCB.TTY.INBUFFER
bne Csi.Home.8 wait for ending SE....keep bIACMode bne Csi.Home.8 wait for ending SE....keep bIACMode
.1 cmp #IAC .1 cmp #IAC
beq .9 beq COUT.IAC.SB.9
sec sec
sbc #SB sbc #SB
bcc .9 bcc COUT.IAC.SB.9
asl asl
tax tax
ldy #S.DCB.TTY.INBUFFER+2 ldy #S.DCB.TTY.INBUFFER+2
lda (ZPDCBPtr),y Get SUBCMD in A lda (ZPDCBPtr),y Get SUBCMD in A
cpx #10 cpx #10
bcc .8 bcs COUT.IAC.SB.9
.9 bra RESET.MODE
.8 jmp (.80,x) jmp (.8,x)
.80 .DA COUT.IAC.SB .8 .DA COUT.IAC.SB
.DA COUT.IAC.WILL .DA COUT.IAC.WILL
.DA COUT.IAC.WONT .DA COUT.IAC.WONT
.DA COUT.IAC.DO .DA COUT.IAC.DO
.DA COUT.IAC.DONT .DA COUT.IAC.DONT
*-------------------------------------- *--------------------------------------
COUT.IAC.SB cmp #TELOPT.TTYPE COUT.IAC.SB cmp #TELOPT.TTYPE
bne .9 bne COUT.IAC.SB.9
ldy #S.DCB.TTY.INBUFFER+2 ldy #S.DCB.TTY.INBUFFER+2
lda (ZPDCBPtr),y lda (ZPDCBPtr),y
cmp #SB.SEND cmp #SB.SEND
bne .9 bne COUT.IAC.SB.9
ldx #0 ldx #0
@ -748,7 +746,7 @@ COUT.IAC.SB cmp #TELOPT.TTYPE
cpx #SB.IS.TTYPE.LEN cpx #SB.IS.TTYPE.LEN
bne .1 bne .1
.9 bra RESET.MODE COUT.IAC.SB.9 bra COUT.IAC.EXIT
*-------------------------------------- *--------------------------------------
COUT.IAC.WILL ldx #WILLDO.CNT-1 COUT.IAC.WILL ldx #WILLDO.CNT-1
@ -764,7 +762,7 @@ COUT.IAC.WILL ldx #WILLDO.CNT-1
dex dex
bpl .2 bpl .2
bra .9 bra COUT.IAC.EXIT
.7 ldx #DO .7 ldx #DO
.HS 2C BIT ABS .HS 2C BIT ABS
@ -772,11 +770,6 @@ COUT.IAC.WILL ldx #WILLDO.CNT-1
.8 ldx #DONT .8 ldx #DONT
bra COUT.IAC.SendAX bra COUT.IAC.SendAX
.9 bra RESET.MODE
*--------------------------------------
COUT.IAC.WONT
bra RESET.MODE
*-------------------------------------- *--------------------------------------
COUT.IAC.DO ldx #DOWILL.CNT-1 COUT.IAC.DO ldx #DOWILL.CNT-1
@ -792,7 +785,7 @@ COUT.IAC.DO ldx #DOWILL.CNT-1
dex dex
bpl .2 bpl .2
bra COUT.IAC.SendAX.9 bra COUT.IAC.EXIT
.7 ldx #WILL .7 ldx #WILL
.HS 2C BIT ABS .HS 2C BIT ABS
@ -809,11 +802,10 @@ COUT.IAC.SendAX
pla pla
jsr Char.Out.Put jsr Char.Out.Put
COUT.IAC.SendAX.9 COUT.IAC.WONT
bra RESET.MODE
*--------------------------------------
COUT.IAC.DONT COUT.IAC.DONT
bra RESET.MODE
COUT.IAC.EXIT
*-------------------------------------- *--------------------------------------
RESET.MODE lda #0 RESET.MODE lda #0