mirror of
https://github.com/A2osX/A2osX.git
synced 2024-09-27 11:58:54 +00:00
Kernel 0.93
This commit is contained in:
parent
8fd68d5d39
commit
facad7dd06
Binary file not shown.
@ -91,18 +91,16 @@ K.ReadDir.ROOT
|
||||
lda (pFD),y
|
||||
bne K.ReadDir.NoMore
|
||||
|
||||
stz K.MLI.PARAMS+1 All Volumes
|
||||
stz K.MLI.PARAMS+1 All Volumes
|
||||
|
||||
>LDYAI K.Buf256
|
||||
>STYA K.MLI.PARAMS+2
|
||||
>STYA ZPPtr2
|
||||
>MLICALL MLIONLINE
|
||||
bcc .10
|
||||
bcs K.ReadDir.RTS
|
||||
|
||||
sec
|
||||
.99 rts
|
||||
* pass #1 compute BufSize.....
|
||||
.10 lda #1 +1 for Ending 0
|
||||
lda #1 +1 for Ending 0
|
||||
sta K.ReadDir.BufSize
|
||||
stz K.ReadDir.BufSize+1
|
||||
|
||||
@ -131,7 +129,7 @@ K.ReadDir.ROOT
|
||||
|
||||
* pass #2 Fill Buffer...
|
||||
jsr K.ReadDir.GetBuf
|
||||
bcs .99
|
||||
bcs K.ReadDir.RTS
|
||||
|
||||
.3 lda (ZPPtr2)
|
||||
and #$0F
|
||||
@ -206,7 +204,7 @@ K.ReadDir.ROOT
|
||||
|
||||
jmp K.ReadDir.EXIT
|
||||
*--------------------------------------
|
||||
K.ReadDir.DIR sta K.MLI.PARAMS+1 A=#S.DIR.PRODOS.REF
|
||||
K.ReadDir.DIR sta K.MLI.PARAMS+1 A=#S.DIR.PRODOS.REF
|
||||
|
||||
>LDYAI 512 Get a 512 bytes buffer for reading dir...
|
||||
jsr K.GetMem
|
||||
@ -422,7 +420,7 @@ K.ReadDir.GetBuf
|
||||
>STYA ZPPtr4
|
||||
.9 rts
|
||||
*--------------------------------------
|
||||
K.ReadDir.ADD. ldx #1 filename="1."
|
||||
K.ReadDir.ADD. ldx #1 filename="1."
|
||||
.HS 2C bit abs
|
||||
K.ReadDir.ADD..
|
||||
ldx #2 filename="2.."
|
||||
@ -560,9 +558,9 @@ K.ReadDir.AddFNToBuf
|
||||
bne .8
|
||||
|
||||
txa
|
||||
jsr K.ReadDir.AddToBuf
|
||||
* jsr K.ReadDir.AddToBuf
|
||||
|
||||
rts
|
||||
* rts
|
||||
*--------------------------------------
|
||||
K.ReadDir.AddToBuf
|
||||
sta (ZPPtr4)
|
||||
|
@ -599,52 +599,22 @@ ENV.SysVarsPPID ldy #S.PS.PPID
|
||||
ENV.SysVarsPID ldy #S.PS.PID
|
||||
.HS 2C
|
||||
ENV.SysVarsCPID ldy #S.PS.CPID
|
||||
|
||||
lda (pPS),y
|
||||
|
||||
ENV.SysVarsNum stz .2+1
|
||||
stz .3+1
|
||||
ENV.SysVarsNum jsr MEM.Byte2Str102
|
||||
|
||||
ldx #8
|
||||
sed
|
||||
ldy #0
|
||||
|
||||
.1 asl
|
||||
pha
|
||||
.2 lda #$ff Self Modified
|
||||
adc .2+1
|
||||
sta .2+1
|
||||
.1 lda $102,y
|
||||
beq .8
|
||||
|
||||
.3 lda #$ff Self Modified
|
||||
adc .3+1
|
||||
sta .3+1
|
||||
iny
|
||||
|
||||
pla
|
||||
dex
|
||||
bne .1
|
||||
jsr ENV.AddAToBuf
|
||||
bra .1
|
||||
|
||||
cld
|
||||
|
||||
lda .3+1
|
||||
beq .4
|
||||
|
||||
jsr ENV.AddAToBuf30
|
||||
|
||||
.4 lda .2+1
|
||||
pha
|
||||
lsr
|
||||
lsr
|
||||
lsr
|
||||
lsr
|
||||
beq .5
|
||||
|
||||
jsr ENV.AddAToBuf30
|
||||
|
||||
.5 pla
|
||||
|
||||
and #$0f
|
||||
|
||||
.8 jsr ENV.AddAToBuf30
|
||||
|
||||
clc
|
||||
.8 clc
|
||||
rts
|
||||
*--------------------------------------
|
||||
ENV.SysVarsArgs lda #1
|
||||
@ -762,8 +732,6 @@ ENV.NextEnvP4Y tya
|
||||
inc ZPPtr4+1
|
||||
.8 rts
|
||||
*--------------------------------------
|
||||
ENV.AddAToBuf30 ora #$30
|
||||
|
||||
ENV.AddAToBuf ldx ENV.BufLen
|
||||
sta K.Buf256,x
|
||||
inc ENV.BufLen
|
||||
|
@ -717,13 +717,15 @@ MEM.SPtr2PPtr1 >STYA ZPPtr2
|
||||
rts
|
||||
*--------------------------------------
|
||||
MEM.GetCharPtr1 lda (ZPPtr1)
|
||||
beq MEM.GetCharPtr1.8
|
||||
bne MEM.NextCharPtr1
|
||||
rts
|
||||
|
||||
MEM.PutCharPtr1 sta (ZPPtr1)
|
||||
MEM.NextCharPtr1
|
||||
inc ZPPtr1
|
||||
bne MEM.GetCharPtr1.8
|
||||
bne .8
|
||||
inc ZPPtr1+1 never Z
|
||||
MEM.GetCharPtr1.8
|
||||
rts
|
||||
.8 rts
|
||||
*--------------------------------------
|
||||
MEM.AddYp1ToPtr1
|
||||
sec
|
||||
@ -742,38 +744,72 @@ MEM.NextCharPtr2
|
||||
bne .8
|
||||
inc ZPPtr2+1
|
||||
.8 rts
|
||||
*/--------------------------------------
|
||||
* # GetMemStat
|
||||
* **In:**
|
||||
* Y,A = Ptr to 24 bytes buffer
|
||||
* ## RETURN VALUE
|
||||
* Buffer filled with memory stats
|
||||
*\--------------------------------------
|
||||
K.GetMemStat >STYA ZPPtr1
|
||||
*--------------------------------------
|
||||
* Convert A to CSTR at $102
|
||||
*--------------------------------------
|
||||
MEM.Byte2Str102 stz .2+1 0xx
|
||||
stz .3+1 x00
|
||||
|
||||
phx
|
||||
|
||||
ldx #8
|
||||
|
||||
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
|
||||
sed
|
||||
|
||||
.1 asl
|
||||
pha
|
||||
|
||||
.2 lda #$ff Self Modified
|
||||
adc .2+1
|
||||
sta .2+1
|
||||
|
||||
.3 lda #$ff Self Modified
|
||||
adc .3+1
|
||||
sta .3+1
|
||||
|
||||
pla
|
||||
dex
|
||||
bne .1
|
||||
|
||||
cld
|
||||
|
||||
ldx #0
|
||||
|
||||
lda .3+1 x00
|
||||
beq .4
|
||||
|
||||
jsr .8
|
||||
|
||||
.4 lda .2+1
|
||||
pha
|
||||
|
||||
lsr
|
||||
lsr
|
||||
lsr
|
||||
lsr 0x0
|
||||
|
||||
bne .5
|
||||
|
||||
cpx #0
|
||||
beq .6
|
||||
|
||||
.5 jsr .8
|
||||
|
||||
.6 pla
|
||||
|
||||
and #$0f 00x
|
||||
|
||||
jsr .8
|
||||
|
||||
stz $102,x
|
||||
|
||||
plx
|
||||
|
||||
rts
|
||||
|
||||
.8 ora #$30
|
||||
sta $102,x
|
||||
inx
|
||||
rts
|
||||
*--------------------------------------
|
||||
MAN
|
||||
|
@ -490,71 +490,33 @@ PWD.GetRecordLen
|
||||
jsr PWD.StoreChar
|
||||
|
||||
txa
|
||||
|
||||
PWD.GetRecordLen.RTS
|
||||
rts
|
||||
*--------------------------------------
|
||||
PWD.StoreString iny
|
||||
jsr MEM.TXTPTR.GetY
|
||||
beq .8
|
||||
beq PWD.GetRecordLen.RTS
|
||||
jsr PWD.StoreChar
|
||||
bra PWD.StoreString
|
||||
|
||||
.8 rts
|
||||
*--------------------------------------
|
||||
PWD.StoreByte php
|
||||
phx
|
||||
|
||||
stz .2+1
|
||||
stz .3+1
|
||||
jsr MEM.Byte2Str102
|
||||
|
||||
ldx #8
|
||||
|
||||
sed
|
||||
|
||||
.1 asl
|
||||
pha
|
||||
.2 lda #$ff Self Modified
|
||||
adc .2+1
|
||||
sta .2+1
|
||||
|
||||
.3 lda #$ff Self Modified
|
||||
adc .3+1
|
||||
sta .3+1
|
||||
|
||||
pla
|
||||
dex
|
||||
bne .1
|
||||
|
||||
cld
|
||||
plx
|
||||
plp
|
||||
|
||||
lda .3+1
|
||||
beq .4
|
||||
ldy #0
|
||||
|
||||
jsr PWD.StoreChar30
|
||||
.1 lda $102,y
|
||||
beq PWD.GetRecordLen.RTS
|
||||
|
||||
.4 lda .2+1
|
||||
beq PWD.StoreChar30
|
||||
|
||||
php
|
||||
lsr
|
||||
lsr
|
||||
lsr
|
||||
lsr
|
||||
plp
|
||||
iny
|
||||
|
||||
and #$0f plp corrupt Z
|
||||
beq .5
|
||||
|
||||
jsr PWD.StoreChar30
|
||||
|
||||
.5 lda .2+1
|
||||
|
||||
and #$0f
|
||||
jsr PWD.StoreChar
|
||||
bra .1
|
||||
*--------------------------------------
|
||||
PWD.StoreChar30 ora #$30
|
||||
|
||||
PWD.StoreChar inx
|
||||
|
||||
bcc .9 Dry run, no store
|
||||
|
@ -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
|
||||
|
@ -657,7 +657,7 @@ PrintF.F clc
|
||||
|
||||
cmp (pStack)
|
||||
bcc .1
|
||||
bne .9
|
||||
bne .9 CS
|
||||
|
||||
.1 tya
|
||||
sec +1
|
||||
@ -684,17 +684,15 @@ PrintF.F clc
|
||||
.2 lda $102,y
|
||||
beq .8
|
||||
|
||||
jsr PrintF.COut
|
||||
bcs .99
|
||||
|
||||
iny
|
||||
bne .2
|
||||
|
||||
jsr PrintF.COut
|
||||
bcc .2
|
||||
|
||||
.9 rts
|
||||
|
||||
.8 clc
|
||||
rts
|
||||
|
||||
.9 sec
|
||||
.99 rts
|
||||
*--------------------------------------
|
||||
PrintF.S ldy #$ff CSTR
|
||||
.HS 2C bit abs
|
||||
@ -1017,16 +1015,12 @@ K.SScanF jsr MEM.SPtr2PPtr1 ptr2=String to Scan,Ptr1=format
|
||||
cmp (ZPPtr2) Same char in string?
|
||||
bne .9
|
||||
|
||||
inc ZPPtr2
|
||||
bne .1
|
||||
inc ZPPtr2+1
|
||||
jsr MEM.NextCharPtr2
|
||||
bra .1
|
||||
|
||||
.12 inc ZPPtr2 Space....
|
||||
bne .14
|
||||
inc ZPPtr2+1
|
||||
|
||||
.14 cmp (ZPPtr2) another one ?
|
||||
.12 jsr MEM.NextCharPtr2 Space....
|
||||
|
||||
cmp (ZPPtr2) another one ?
|
||||
beq .12
|
||||
bne .1
|
||||
|
||||
|
@ -1133,55 +1133,18 @@ DRV.TERM.CURBLNK.SET
|
||||
DRV.TERM.CURBLNK.RTS
|
||||
rts
|
||||
*--------------------------------------
|
||||
Decimal.Out stz ZPTmpWord
|
||||
stz ZPTmpWord+1
|
||||
|
||||
ldx #8
|
||||
sed
|
||||
|
||||
tay
|
||||
|
||||
.1 tya
|
||||
asl
|
||||
tay
|
||||
lda ZPTmpWord
|
||||
adc ZPTmpWord
|
||||
sta ZPTmpWord
|
||||
lda ZPTmpWord+1
|
||||
adc ZPTmpWord+1
|
||||
sta ZPTmpWord+1
|
||||
dex
|
||||
bne .1
|
||||
|
||||
cld
|
||||
|
||||
stz ZPTmpBool No leading 0
|
||||
|
||||
lda ZPTmpWord+1
|
||||
and #$0f
|
||||
beq .2
|
||||
|
||||
dec ZPTmpBool non zero, print everything
|
||||
Decimal.Out jsr MEM.Byte2Str102
|
||||
|
||||
jsr Char.Out.Put30
|
||||
ldx #0
|
||||
|
||||
.2 lda ZPTmpWord
|
||||
lsr
|
||||
lsr
|
||||
lsr
|
||||
lsr
|
||||
bne .3
|
||||
.1 lda $102,x
|
||||
|
||||
bit ZPTmpBool Print this digit ?
|
||||
bpl .4
|
||||
beq DRV.TERM.CURBLNK.RTS
|
||||
|
||||
.3 jsr Char.Out.Put30
|
||||
|
||||
.4 lda ZPTmpWord
|
||||
and #$0f
|
||||
inx
|
||||
jsr Char.Out.Put
|
||||
bra .1
|
||||
*--------------------------------------
|
||||
Char.Out.Put30 ora #$30
|
||||
|
||||
Char.Out.Put pha save char
|
||||
|
||||
ldy #S.DCB.TTY.OUTHEAD
|
||||
|
@ -426,7 +426,7 @@ K.StrFTime jsr MEM.SPtr1PPtr2
|
||||
cmp #'%'
|
||||
beq .2
|
||||
|
||||
jsr K.StrFTime.addChar
|
||||
jsr MEM.PutCharPtr1
|
||||
bra .1
|
||||
|
||||
.2 ldx #K.StrFTime.JMP-K.StrFTime.Tbl-1
|
||||
@ -507,7 +507,7 @@ K.StrFTime.STR lda (ZPPtr3),y get required S.Time field value
|
||||
|
||||
.3 iny
|
||||
lda (ZPPtr4),y
|
||||
jsr K.StrFTime.addChar
|
||||
jsr MEM.PutCharPtr1
|
||||
tya
|
||||
cmp (ZPPtr4)
|
||||
beq .8
|
||||
@ -518,7 +518,7 @@ K.StrFTime.STR lda (ZPPtr3),y get required S.Time field value
|
||||
|
||||
.9 ldx #3
|
||||
lda #'?'
|
||||
.99 jsr K.StrFTime.addChar
|
||||
.99 jsr MEM.PutCharPtr1
|
||||
dex
|
||||
bne .99
|
||||
rts
|
||||
@ -526,9 +526,10 @@ K.StrFTime.STR lda (ZPPtr3),y get required S.Time field value
|
||||
K.StrFTime.II ldy #S.Time.HOUR
|
||||
lda (ZPPtr3),y
|
||||
cmp #12
|
||||
bcc .1
|
||||
bcc K.StrFTime.addDecA
|
||||
sbc #12
|
||||
.1 bra K.StrFTime.addDecA
|
||||
bra K.StrFTime.addDecA
|
||||
|
||||
K.StrFTime.P ldy #S.Time.HOUR
|
||||
lda (ZPPtr3),y
|
||||
cmp #12
|
||||
@ -536,11 +537,13 @@ K.StrFTime.P ldy #S.Time.HOUR
|
||||
lda #'p'
|
||||
.HS 2C bit abs
|
||||
.1 lda #'a'
|
||||
jsr K.StrFTime.addChar
|
||||
jsr MEM.PutCharPtr1
|
||||
lda #'m'
|
||||
bra K.StrFTime.addChar
|
||||
jmp MEM.PutCharPtr1
|
||||
|
||||
K.StrFTime.YY ldy #S.Time.CENTURY
|
||||
jsr K.StrFTime.addDecPtr1Y
|
||||
|
||||
K.StrFTime.Y ldy #S.Time.YEAR
|
||||
.HS 2C bit abs
|
||||
K.StrFTime.D ldy #S.Time.DAY
|
||||
@ -558,40 +561,18 @@ K.StrFTime.MM ldy #S.Time.MINUTE
|
||||
K.StrFTime.addDecPtr1Y
|
||||
lda (ZPPtr3),y
|
||||
K.StrFTime.addDecA
|
||||
jsr MEM.Byte2Str102
|
||||
|
||||
stz .2+1
|
||||
lda $102
|
||||
ldx $103
|
||||
|
||||
ldx #8
|
||||
sed
|
||||
|
||||
.1 asl
|
||||
pha
|
||||
.2 lda #$ff Self Modified
|
||||
|
||||
adc .2+1
|
||||
sta .2+1
|
||||
|
||||
pla
|
||||
dex
|
||||
bne .1
|
||||
tax
|
||||
lda #$30
|
||||
|
||||
cld
|
||||
|
||||
lda .2+1
|
||||
pha
|
||||
lsr
|
||||
lsr
|
||||
lsr
|
||||
lsr
|
||||
ora #$30
|
||||
jsr K.StrFTime.addChar
|
||||
pla
|
||||
and #$0f
|
||||
ora #$30
|
||||
*--------------------------------------
|
||||
K.StrFTime.addChar
|
||||
sta (ZPPtr1)
|
||||
jmp MEM.NextCharPtr1
|
||||
.1 jsr MEM.PutCharPtr1
|
||||
txa
|
||||
jmp MEM.PutCharPtr1
|
||||
*--------------------------------------
|
||||
K.StrFTime.DAY >PSTR "Monday"
|
||||
>PSTR "Tuesday"
|
||||
|
Loading…
Reference in New Issue
Block a user