mirror of
https://github.com/A2osX/A2osX.git
synced 2025-04-10 00:37:11 +00:00
Kernel 0.93
This commit is contained in:
parent
20ebfb7954
commit
2ac253c43b
Binary file not shown.
@ -59,7 +59,8 @@ IO.Reset.In >LDA.G IO.hIn
|
||||
.8 clc
|
||||
IO.Reset.In.RTS rts
|
||||
*--------------------------------------
|
||||
IO.Pipe.Out >SYSCALL pipe
|
||||
IO.Pipe.Out >LDYA 256
|
||||
>SYSCALL pipe
|
||||
bcs IO.Reset.In.RTS
|
||||
>STA.G IO.hPipe
|
||||
|
||||
|
@ -291,7 +291,13 @@ CS.RUN.LOOP >SLEEP
|
||||
beq .8
|
||||
bra .61
|
||||
|
||||
.60 cmp #19 Ctrl-S
|
||||
.60 tax
|
||||
|
||||
>LDA.G bPause
|
||||
asl
|
||||
bpl .61 not from PAUSE command
|
||||
|
||||
cpx #C.CR
|
||||
bne .4
|
||||
|
||||
.61 >STZ.G bPause
|
||||
|
@ -3,7 +3,6 @@ NEW
|
||||
*--------------------------------------
|
||||
K.VER .EQ $5D00 93.0
|
||||
K.ENV.SIZE .EQ 256
|
||||
K.PIPE.SIZE .EQ 256
|
||||
*--------------------------------------
|
||||
K.MEM.ALIGN .EQ 16
|
||||
K.MEM.nALIGNm1 .EQ $F0
|
||||
@ -481,11 +480,12 @@ S.FD.SSOCK .EQ 8
|
||||
S.FD.PIPE.S .EQ 2
|
||||
S.FD.PIPE.hMem .EQ 3
|
||||
S.FD.PIPE.Tail .EQ 4
|
||||
S.FD.PIPE.Head .EQ 5
|
||||
S.FD.PIPE.Free .EQ 6
|
||||
S.FD.PIPE.Used .EQ 8
|
||||
S.FD.PIPE.Head .EQ 6
|
||||
S.FD.PIPE.Free .EQ 8
|
||||
S.FD.PIPE.Used .EQ 10
|
||||
S.FD.PIPE.Size .EQ 12
|
||||
*
|
||||
S.FD.PIPE .EQ 10
|
||||
S.FD.PIPE .EQ 14
|
||||
*--------------------------------------
|
||||
* PS STRUCT
|
||||
*--------------------------------------
|
||||
|
@ -1136,7 +1136,7 @@ MSG.KCREAD.OK .AZ "OK\n"
|
||||
MSG.KCREAD.KO .AZ "\nError While Reading Kernel Config File, Using Default.\n"
|
||||
MSG.Init2.OK .AZ "A2osX[Stage2]:Complete.\n"
|
||||
*--------------------------------------
|
||||
SYSSCREEN.TOP .AZ "A2osX 0.92 Console"
|
||||
SYSSCREEN.TOP .AZ "A2osX 0.93 Console"
|
||||
MSG.Init3 .AZ "A2osX[Stage3]:Init *** Press Ctrl-R for ROOT Mode ***"
|
||||
MSG.DEV .AZ "Device Manager..."
|
||||
MSG.BLKDEV .AZ " Adding : /DEV/%s\r\n"
|
||||
|
@ -271,7 +271,7 @@ IO.CLOSE.PIPE ldy #S.FD.PIPE.S
|
||||
IO.CLOSE.FD lda (pFD),y
|
||||
beq .1
|
||||
|
||||
jsr K.FreeMem
|
||||
jsr K.FreeStkObj
|
||||
|
||||
.1 lda IO.hFD
|
||||
jmp K.FreeMem
|
||||
@ -763,10 +763,19 @@ IO.EOF.SSOCK ldy #S.FD.SSOCK.EOF
|
||||
|
||||
.1 jmp $FFFF SELF MODIFIED
|
||||
*--------------------------------------
|
||||
IO.EOF.PIPE
|
||||
lda #MLI.E.IO
|
||||
sec
|
||||
IO.EOF.PIPE ldy #S.FD.PIPE.Used
|
||||
lda (pFD),y
|
||||
iny
|
||||
ora (pFD),y
|
||||
bne .8 Data, EOF = false
|
||||
|
||||
lda #$ff
|
||||
clc
|
||||
rts
|
||||
|
||||
.8 lda #0
|
||||
clc
|
||||
rts
|
||||
*--------------------------------------
|
||||
IO.DEVDIR >PSTR "/DEV/"
|
||||
*--------------------------------------
|
||||
|
@ -608,39 +608,6 @@ K.GetStkObjData sta SETREADAUX
|
||||
|
||||
|
||||
sta CLRREADAUX
|
||||
rts
|
||||
*/--------------------------------------
|
||||
* # GetMemStat
|
||||
* **In:**
|
||||
* Y,A = Ptr to 24 bytes buffer
|
||||
* ## RETURN VALUE
|
||||
* Buffer filled with memory stats
|
||||
*\--------------------------------------
|
||||
K.GetMemStat >STYA ZPPtr1
|
||||
|
||||
ldy #23
|
||||
ldx #7
|
||||
|
||||
.1 lda DevMgr.Stat,x
|
||||
sta (ZPPtr1),y
|
||||
dey
|
||||
dex
|
||||
bpl .1
|
||||
|
||||
sta SETREADAUX
|
||||
|
||||
jsr .2
|
||||
|
||||
sta CLRREADAUX
|
||||
|
||||
.2 ldx #7
|
||||
|
||||
.3 lda Mem.Table,x
|
||||
sta (ZPPtr1),y
|
||||
dey
|
||||
dex
|
||||
bpl .3
|
||||
|
||||
rts
|
||||
*--------------------------------------
|
||||
* in Y,A = buf size
|
||||
|
@ -1,5 +1,38 @@
|
||||
NEW
|
||||
AUTO 3,1
|
||||
*/--------------------------------------
|
||||
* # GetMemStat
|
||||
* **In:**
|
||||
* Y,A = Ptr to 24 bytes buffer
|
||||
* ## RETURN VALUE
|
||||
* Buffer filled with memory stats
|
||||
*\--------------------------------------
|
||||
K.GetMemStat >STYA ZPPtr1
|
||||
|
||||
ldy #23
|
||||
ldx #7
|
||||
|
||||
.1 lda DevMgr.Stat,x
|
||||
sta (ZPPtr1),y
|
||||
dey
|
||||
dex
|
||||
bpl .1
|
||||
|
||||
sta SETREADAUX
|
||||
|
||||
jsr .2
|
||||
|
||||
sta CLRREADAUX
|
||||
|
||||
.2 ldx #7
|
||||
|
||||
.3 lda Mem.Table,x
|
||||
sta (ZPPtr1),y
|
||||
dey
|
||||
dex
|
||||
bpl .3
|
||||
|
||||
rts
|
||||
*--------------------------------------
|
||||
* # ChMod
|
||||
* change permissions of a file
|
||||
@ -340,15 +373,16 @@ K.MKFIFO
|
||||
*/--------------------------------------
|
||||
* # pipe
|
||||
* ## C
|
||||
* `hFD pipe();`
|
||||
* `hFD pipe(int size);`
|
||||
* ## ASM
|
||||
* `>LDYA size`
|
||||
* `>SYSCALL pipe`
|
||||
* ## RETURN VALUE
|
||||
* CC = OK, CS = ERROR
|
||||
* A = hFD
|
||||
*\--------------------------------------
|
||||
K.Pipe >LDYAI K.PIPE.SIZE
|
||||
jsr K.GetMem
|
||||
K.Pipe >STYA ZPPtr1
|
||||
jsr K.NewStkObj Buffer in AUX mem
|
||||
bcs .99
|
||||
|
||||
stx .1+1 save PIPE buffer
|
||||
@ -365,15 +399,18 @@ K.Pipe >LDYAI K.PIPE.SIZE
|
||||
sta (pFD)
|
||||
|
||||
ldy #S.FD.PIPE.Free
|
||||
lda #K.PIPE.SIZE
|
||||
lda ZPPtr1
|
||||
sta (pFD),y
|
||||
iny
|
||||
lda /K.PIPE.SIZE
|
||||
lda ZPPtr1+1
|
||||
sta (pFD),y
|
||||
|
||||
ldy #S.FD.PIPE.Size
|
||||
lda ZPPtr1
|
||||
sta (pFD),y
|
||||
iny
|
||||
lda ZPPtr1+1
|
||||
sta (pFD),y
|
||||
|
||||
* ldy #S.FD.PIPE.S
|
||||
* lda #1
|
||||
* sta (pFD),y
|
||||
|
||||
ldy #S.FD.PIPE.hMem
|
||||
.1 lda #$ff Self Modified
|
||||
|
Loading…
x
Reference in New Issue
Block a user