mirror of
https://github.com/A2osX/A2osX.git
synced 2024-06-19 20:29:34 +00:00
Kernel 0.93++
This commit is contained in:
parent
af1f73f0d0
commit
5fa8b09663
Binary file not shown.
|
@ -475,6 +475,22 @@ K.SYSCALL2.BANK bpl K.SYSCALL.JMP 0, E000, no BNK change
|
||||||
|
|
||||||
K.SYSCALL.JMP jmp (K.SYSCALL,x)
|
K.SYSCALL.JMP jmp (K.SYSCALL,x)
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
|
K.SYSCALL.JMPX sta SETREADAUX
|
||||||
|
sta SETWRITEAUX
|
||||||
|
jsr .1
|
||||||
|
sta CLRREADAUX
|
||||||
|
sta CLRWRITEAUX
|
||||||
|
rts
|
||||||
|
|
||||||
|
.1 jmp (.2-SYS.StrFTime,x)
|
||||||
|
.2 .DA TIMEX.StrFTime
|
||||||
|
.DA TIMEX.PTime2Time
|
||||||
|
.DA TIMEX.CTime2Time
|
||||||
|
.DA MD5X.MD5
|
||||||
|
.DA MD5X.Init
|
||||||
|
.DA MD5X.Update
|
||||||
|
.DA MD5X.Finalize
|
||||||
|
*--------------------------------------
|
||||||
MAN
|
MAN
|
||||||
SAVE USR/SRC/SYS/KERNEL.S.JMP
|
SAVE USR/SRC/SYS/KERNEL.S.JMP
|
||||||
LOAD USR/SRC/SYS/KERNEL.S
|
LOAD USR/SRC/SYS/KERNEL.S
|
||||||
|
|
|
@ -13,30 +13,7 @@ NEW
|
||||||
* CC
|
* CC
|
||||||
*\--------------------------------------
|
*\--------------------------------------
|
||||||
K.MD5 >PULLW FORPNT
|
K.MD5 >PULLW FORPNT
|
||||||
>PULLYA
|
>PULLW TXTPTR
|
||||||
>STYA TXTPTR
|
|
||||||
|
|
||||||
>SYSCALL2 strlen
|
|
||||||
>STYA ZPDataLen
|
|
||||||
|
|
||||||
sta SETREADAUX
|
|
||||||
sta SETWRITEAUX
|
|
||||||
|
|
||||||
.1 jsr MD5X.Init
|
|
||||||
bcs .9
|
|
||||||
|
|
||||||
pha save MD5 Context hMem
|
|
||||||
|
|
||||||
jsr MD5X.Update
|
|
||||||
jsr MD5X.Finalize
|
|
||||||
|
|
||||||
pla
|
|
||||||
>SYSCALL2 FreeMem Free MD5 Context
|
|
||||||
clc
|
|
||||||
|
|
||||||
.9 sta CLRREADAUX
|
|
||||||
sta CLRWRITEAUX
|
|
||||||
rts
|
|
||||||
*/--------------------------------------
|
*/--------------------------------------
|
||||||
* ## MD5Init
|
* ## MD5Init
|
||||||
* Initialize a MD5 computation
|
* Initialize a MD5 computation
|
||||||
|
@ -47,14 +24,7 @@ K.MD5 >PULLW FORPNT
|
||||||
* ## RETURN VALUE
|
* ## RETURN VALUE
|
||||||
* A = hMem To S.MD5
|
* A = hMem To S.MD5
|
||||||
*\--------------------------------------
|
*\--------------------------------------
|
||||||
K.MD5Init sta SETREADAUX
|
K.MD5Init jmp K.SYSCALL.JMPX
|
||||||
sta SETWRITEAUX
|
|
||||||
|
|
||||||
jsr MD5X.Init
|
|
||||||
|
|
||||||
sta CLRREADAUX
|
|
||||||
sta CLRWRITEAUX
|
|
||||||
rts
|
|
||||||
*/--------------------------------------
|
*/--------------------------------------
|
||||||
* ## MD5Update
|
* ## MD5Update
|
||||||
* Add Data to MD5 computation
|
* Add Data to MD5 computation
|
||||||
|
@ -71,17 +41,7 @@ K.MD5Update >PULLW ZPDataLen get LEN
|
||||||
>PULLW TXTPTR get DATA
|
>PULLW TXTPTR get DATA
|
||||||
>PULLA
|
>PULLA
|
||||||
|
|
||||||
sta SETREADAUX
|
jmp K.SYSCALL.JMPX
|
||||||
sta SETWRITEAUX
|
|
||||||
|
|
||||||
>SYSCALL2 GetMemPtr get MD5 Context
|
|
||||||
>STYA ZPCtxPtr
|
|
||||||
|
|
||||||
jsr MD5X.Update
|
|
||||||
|
|
||||||
sta CLRREADAUX
|
|
||||||
sta CLRWRITEAUX
|
|
||||||
rts
|
|
||||||
*/--------------------------------------
|
*/--------------------------------------
|
||||||
* ## MD5Finalize
|
* ## MD5Finalize
|
||||||
* # C
|
* # C
|
||||||
|
@ -94,21 +54,8 @@ K.MD5Update >PULLW ZPDataLen get LEN
|
||||||
*\--------------------------------------
|
*\--------------------------------------
|
||||||
K.MD5Finalize >PULLW FORPNT
|
K.MD5Finalize >PULLW FORPNT
|
||||||
>PULLA
|
>PULLA
|
||||||
sta .8+1
|
|
||||||
|
|
||||||
sta SETREADAUX
|
jmp K.SYSCALL.JMPX
|
||||||
sta SETWRITEAUX
|
|
||||||
|
|
||||||
>SYSCALL2 GetMemPtr
|
|
||||||
>STYA ZPCtxPtr get MD5 Context
|
|
||||||
|
|
||||||
jsr MD5X.Finalize
|
|
||||||
|
|
||||||
.8 lda #$ff SELF MODIFIED
|
|
||||||
>SYSCALL2 FreeMem
|
|
||||||
sta CLRREADAUX
|
|
||||||
sta CLRWRITEAUX
|
|
||||||
rts
|
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
MAN
|
MAN
|
||||||
SAVE USR/SRC/SYS/KERNEL.S.MD5
|
SAVE USR/SRC/SYS/KERNEL.S.MD5
|
||||||
|
|
|
@ -80,6 +80,26 @@ ZS.END .ED
|
||||||
bne :2
|
bne :2
|
||||||
.EM
|
.EM
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
|
MD5X.MD5 ldy #$ff
|
||||||
|
|
||||||
|
.1 iny
|
||||||
|
jsr SHARED.TXTPTR.GetY
|
||||||
|
bne .1
|
||||||
|
|
||||||
|
sty ZPDataLen
|
||||||
|
stz ZPDataLen+1
|
||||||
|
|
||||||
|
jsr MD5X.Init
|
||||||
|
bcs .9
|
||||||
|
|
||||||
|
pha save MD5 Context hMem
|
||||||
|
|
||||||
|
jsr MD5X.Update.I
|
||||||
|
|
||||||
|
jmp MD5X.Finalize.I
|
||||||
|
|
||||||
|
.9 rts
|
||||||
|
*--------------------------------------
|
||||||
MD5X.Init >LDYAI S.MD5
|
MD5X.Init >LDYAI S.MD5
|
||||||
>SYSCALL2 getmem
|
>SYSCALL2 getmem
|
||||||
bcs .9
|
bcs .9
|
||||||
|
@ -106,7 +126,10 @@ MD5X.Init >LDYAI S.MD5
|
||||||
clc
|
clc
|
||||||
.9 rts
|
.9 rts
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
MD5X.Update ldy #S.MD5.FINALIZED
|
MD5X.Update >SYSCALL2 GetMemPtr get MD5 Context
|
||||||
|
>STYA ZPCtxPtr
|
||||||
|
|
||||||
|
MD5X.Update.I ldy #S.MD5.FINALIZED
|
||||||
lda (ZPCtxPtr),y
|
lda (ZPCtxPtr),y
|
||||||
beq .1
|
beq .1
|
||||||
|
|
||||||
|
@ -174,16 +197,20 @@ MD5X.Update ldy #S.MD5.FINALIZED
|
||||||
inc TXTPTR+1
|
inc TXTPTR+1
|
||||||
bra .1
|
bra .1
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
MD5X.Finalize ldy #S.MD5.FINALIZED
|
MD5X.Finalize pha
|
||||||
|
>SYSCALL2 GetMemPtr
|
||||||
|
>STYA ZPCtxPtr get MD5 Context
|
||||||
|
|
||||||
|
MD5X.Finalize.I ldy #S.MD5.FINALIZED
|
||||||
|
|
||||||
lda (ZPCtxPtr),y
|
lda (ZPCtxPtr),y
|
||||||
bne .11
|
bne .1
|
||||||
|
|
||||||
jsr MD5ExtraChunk
|
jsr MD5ExtraChunk
|
||||||
|
|
||||||
.11 ldy #S.MD5.ABCD0
|
.1 ldy #S.MD5.ABCD0
|
||||||
|
|
||||||
.1 lda (ZPCtxPtr),y
|
.2 lda (ZPCtxPtr),y
|
||||||
lsr
|
lsr
|
||||||
lsr
|
lsr
|
||||||
lsr
|
lsr
|
||||||
|
@ -200,12 +227,13 @@ MD5X.Finalize ldy #S.MD5.FINALIZED
|
||||||
|
|
||||||
iny
|
iny
|
||||||
cpy #S.MD5.ABCD0+16
|
cpy #S.MD5.ABCD0+16
|
||||||
bne .1
|
bne .2
|
||||||
|
|
||||||
lda #0
|
lda #0
|
||||||
jsr SHARED.FORPNT.PutNext
|
jsr SHARED.FORPNT.PutNext
|
||||||
clc
|
|
||||||
.9 rts
|
pla
|
||||||
|
jmp K.FreeMem
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
* PRIVATE
|
* PRIVATE
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
|
|
|
@ -17,7 +17,7 @@ K.Time >PULLW FORPNT
|
||||||
>STYA TXTPTR
|
>STYA TXTPTR
|
||||||
ldx #SYS.PTime2Time
|
ldx #SYS.PTime2Time
|
||||||
|
|
||||||
bra TIME.JMP
|
jmp K.SYSCALL.JMPX
|
||||||
*/--------------------------------------
|
*/--------------------------------------
|
||||||
* # StrFTime
|
* # StrFTime
|
||||||
* ## C
|
* ## C
|
||||||
|
@ -48,7 +48,7 @@ K.Time >PULLW FORPNT
|
||||||
K.StrFTime >PULLW ZPPtr3 S.TIME
|
K.StrFTime >PULLW ZPPtr3 S.TIME
|
||||||
>PULLW TXTPTR format
|
>PULLW TXTPTR format
|
||||||
>PULLW FORPNT str
|
>PULLW FORPNT str
|
||||||
bra TIME.JMP
|
jmp K.SYSCALL.JMPX
|
||||||
*/--------------------------------------
|
*/--------------------------------------
|
||||||
* # PTime2Time
|
* # PTime2Time
|
||||||
* Convert ProDOS Time To S.TIME
|
* Convert ProDOS Time To S.TIME
|
||||||
|
@ -74,18 +74,7 @@ K.PTime2Time
|
||||||
*\--------------------------------------
|
*\--------------------------------------
|
||||||
K.CTime2Time >PULLW FORPNT S.TIME
|
K.CTime2Time >PULLW FORPNT S.TIME
|
||||||
>PULLW TXTPTR ptime/ctime
|
>PULLW TXTPTR ptime/ctime
|
||||||
|
jmp K.SYSCALL.JMPX
|
||||||
TIME.JMP sta SETREADAUX
|
|
||||||
sta SETWRITEAUX
|
|
||||||
jsr .1
|
|
||||||
sta CLRREADAUX
|
|
||||||
sta CLRWRITEAUX
|
|
||||||
rts
|
|
||||||
|
|
||||||
.1 jmp (.2-SYS.StrFTime,x)
|
|
||||||
.2 .DA K.StrFTime.I
|
|
||||||
.DA K.PTime2Time.I
|
|
||||||
.DA K.CTime2Time.I
|
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
MAN
|
MAN
|
||||||
SAVE USR/SRC/SYS/KERNEL.S.TIME
|
SAVE USR/SRC/SYS/KERNEL.S.TIME
|
||||||
|
|
|
@ -12,7 +12,7 @@ DAY0 .EQ 4 day 0 was a thursday
|
||||||
* FORPNT str
|
* FORPNT str
|
||||||
* TXTPTR format
|
* TXTPTR format
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
K.StrFTime.I
|
TIMEX.StrFTime
|
||||||
.1 jsr SHARED.TXTPTR.GetNext
|
.1 jsr SHARED.TXTPTR.GetNext
|
||||||
beq .8
|
beq .8
|
||||||
|
|
||||||
|
@ -167,7 +167,8 @@ TIMEX.MON >PSTR "???"
|
||||||
>PSTR "November"
|
>PSTR "November"
|
||||||
>PSTR "December"
|
>PSTR "December"
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
K.PTime2Time.I ldy #1
|
TIMEX.PTime2Time
|
||||||
|
ldy #1
|
||||||
jsr SHARED.TXTPTR.GetY Get Year
|
jsr SHARED.TXTPTR.GetY Get Year
|
||||||
lsr C is high bit of month
|
lsr C is high bit of month
|
||||||
ldy #S.Time.YEAR
|
ldy #S.Time.YEAR
|
||||||
|
@ -298,7 +299,8 @@ K.ComputeWDAY.1 ldx #$ff SELF MODIFIED : month
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
TIMEX.MDAY .DA #3,#0,#3,#2,#3,#2,#3,#3,#2,#3,#2,#3
|
TIMEX.MDAY .DA #3,#0,#3,#2,#3,#2,#3,#3,#2,#3,#2,#3
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
K.CTime2Time.I ldy #3
|
TIMEX.CTime2Time
|
||||||
|
ldy #3
|
||||||
|
|
||||||
.1 lda (ZPPtr1),y
|
.1 lda (ZPPtr1),y
|
||||||
sta ARG32,y ARG = ctime
|
sta ARG32,y ARG = ctime
|
||||||
|
|
|
@ -86,7 +86,6 @@ A2osX.D2.B .PH $D000
|
||||||
.INB USR/SRC/SYS/KERNEL.S.BIN
|
.INB USR/SRC/SYS/KERNEL.S.BIN
|
||||||
.INB USR/SRC/SYS/KERNEL.S.PS
|
.INB USR/SRC/SYS/KERNEL.S.PS
|
||||||
.INB USR/SRC/SYS/KERNEL.S.ARG
|
.INB USR/SRC/SYS/KERNEL.S.ARG
|
||||||
.INB USR/SRC/SYS/KERNEL.S.ENV
|
|
||||||
.EP
|
.EP
|
||||||
A2osX.D2.S .EQ *-A2osX.D2.B
|
A2osX.D2.S .EQ *-A2osX.D2.B
|
||||||
|
|
||||||
|
@ -99,6 +98,7 @@ A2osX.E0.B .PH $E000
|
||||||
.INB USR/SRC/SYS/KERNEL.S.SHARED
|
.INB USR/SRC/SYS/KERNEL.S.SHARED
|
||||||
.INB USR/SRC/SYS/KERNEL.S.MATH
|
.INB USR/SRC/SYS/KERNEL.S.MATH
|
||||||
.INB USR/SRC/SYS/KERNEL.S.TERM
|
.INB USR/SRC/SYS/KERNEL.S.TERM
|
||||||
|
.INB USR/SRC/SYS/KERNEL.S.ENV
|
||||||
.INB USR/SRC/SYS/KERNEL.S.TIME
|
.INB USR/SRC/SYS/KERNEL.S.TIME
|
||||||
.INB USR/SRC/SYS/KERNEL.S.MD5
|
.INB USR/SRC/SYS/KERNEL.S.MD5
|
||||||
.INB USR/SRC/SYS/KERNEL.S.PWD
|
.INB USR/SRC/SYS/KERNEL.S.PWD
|
||||||
|
|
Loading…
Reference in New Issue
Block a user