mirror of
https://github.com/A2osX/A2osX.git
synced 2025-02-23 04:29:01 +00:00
Kernel 0.9.1 : Code reorganization & move to CSTR
This commit is contained in:
parent
278104b43c
commit
698a741aee
979
.Docs/KERNEL.md
979
.Docs/KERNEL.md
File diff suppressed because it is too large
Load Diff
@ -25,7 +25,7 @@
|
||||
+ PUSHW PTR to MAC
|
||||
+ PUSHW PTR to IP
|
||||
|
||||
# ARP.GetCache
|
||||
# ARP.GetC.Ache
|
||||
+ Return a Ptr to ARP Cache Table
|
||||
|
||||
## In:
|
||||
@ -58,7 +58,7 @@
|
||||
+ PUSHW = PTR to IP
|
||||
+ PUSHW = hostname PSTR to Add
|
||||
|
||||
# DNS.GetCache
|
||||
# DNS.GetC.Ache
|
||||
+ Return a Ptr to DNS Cache Table
|
||||
|
||||
## In:
|
||||
@ -155,7 +155,7 @@
|
||||
|
||||
## Out :
|
||||
|
||||
# SKT.GetCA (STREAM)
|
||||
# SKT.GetC.A (STREAM)
|
||||
+ Read a Char From Stream in A
|
||||
|
||||
## In :
|
||||
|
Binary file not shown.
Binary file not shown.
@ -106,7 +106,7 @@ CS.RUN.QUERY jsr Init.Timeout
|
||||
.9 sec
|
||||
rts
|
||||
*--------------------------------------
|
||||
CS.RUN.DUMP >LIBCALL hLIBTCPIP,LIBTCPIP.ARP.GETCACHE
|
||||
CS.RUN.DUMP >LIBCALL hLIBTCPIP,LIBTCPIP.ARP.GetC.ACHE
|
||||
>STYA ZPPTR1
|
||||
|
||||
>LDYA L.MSG0
|
||||
|
@ -222,7 +222,7 @@ DIR.IN jsr SRC.GetArg
|
||||
pha
|
||||
|
||||
txa
|
||||
>SYSCALL FreeMemA
|
||||
>SYSCALL FreeMem.A
|
||||
|
||||
pla
|
||||
plp
|
||||
|
@ -7,7 +7,7 @@ AUTO 6
|
||||
*---------------------------------------
|
||||
FIO.Init ldy #S.PS.hCMDLINE
|
||||
lda (pPS),y
|
||||
>SYSCALL GetMemPtrA
|
||||
>SYSCALL GetMemPtr.A
|
||||
bcs .99
|
||||
>STYA ZPPtr1
|
||||
lda (ZPPtr1)
|
||||
@ -35,7 +35,7 @@ FIO.Init ldy #S.PS.hCMDLINE
|
||||
.99 rts
|
||||
*---------------------------------------
|
||||
FIO.OpenFileA sta FIO.hFileName
|
||||
>SYSCALL GetMemPtrA
|
||||
>SYSCALL GetMemPtr.A
|
||||
>STYA ZPPtr1
|
||||
|
||||
stz FIO.hFullPath
|
||||
@ -53,7 +53,7 @@ FIO.OpenFileA sta FIO.hFileName
|
||||
sta FIO.hFullPath
|
||||
sta FIO.hFileName
|
||||
|
||||
>SYSCALL GetMemPtrA
|
||||
>SYSCALL GetMemPtr.A
|
||||
>STYA ZPPtr1
|
||||
|
||||
.1 >PUSHW ZPPtr1
|
||||
@ -73,7 +73,7 @@ FIO.OpenFileA sta FIO.hFileName
|
||||
>PUSHBI 4
|
||||
>PUSHBI SYS.FOpen.R+SYS.FOpen.T
|
||||
lda FIO.hFileName
|
||||
>SYSCALL GetMemPtrA
|
||||
>SYSCALL GetMemPtr.A
|
||||
>PUSHYA
|
||||
>SYSCALL FOpen
|
||||
bcs .99
|
||||
@ -117,7 +117,7 @@ FIO.OpenFileA.Exit php
|
||||
pha
|
||||
lda FIO.hFullPath
|
||||
beq .1
|
||||
>SYSCALL FreeMemA
|
||||
>SYSCALL FreeMem.A
|
||||
.1 pla
|
||||
plp
|
||||
rts
|
||||
@ -238,7 +238,7 @@ FIO.FileClose ldy #SRC.COUNT
|
||||
adc #SRC.hFILES-1
|
||||
tay
|
||||
lda (pData),y
|
||||
>SYSCALL FCloseA
|
||||
>SYSCALL FClose.A
|
||||
|
||||
ldy #SRC.COUNT
|
||||
lda (pData),y
|
||||
@ -251,7 +251,7 @@ FIO.FileClose ldy #SRC.COUNT
|
||||
FIO.LOAD.ASM.T ldy #ASM.T.hMem
|
||||
lda (pData),y
|
||||
beq .1
|
||||
>SYSCALL FreeMemA
|
||||
>SYSCALL FreeMem.A
|
||||
ldy #ASM.T.hMem
|
||||
lda #0
|
||||
sta (pData),y
|
||||
|
@ -32,14 +32,14 @@ SRC.PrintLineErr ldx #0
|
||||
.1 lda UsrBuf256,x
|
||||
beq .2
|
||||
phx
|
||||
>SYSCALL PutCharA
|
||||
>SYSCALL PutChar.A
|
||||
plx
|
||||
inx
|
||||
bcc .1
|
||||
rts
|
||||
|
||||
.2 lda #13
|
||||
>SYSCALL PutCharA
|
||||
>SYSCALL PutChar.A
|
||||
bcs .9
|
||||
|
||||
ldx #0
|
||||
@ -50,19 +50,19 @@ SRC.PrintLineErr ldx #0
|
||||
beq .4
|
||||
phx
|
||||
lda #'-'
|
||||
>SYSCALL PutCharA
|
||||
>SYSCALL PutChar.A
|
||||
plx
|
||||
bcs .9
|
||||
bra .3
|
||||
|
||||
.4 lda #'^'
|
||||
phx
|
||||
>SYSCALL PutCharA
|
||||
>SYSCALL PutChar.A
|
||||
plx
|
||||
bcs .9
|
||||
|
||||
.5 lda #13
|
||||
>SYSCALL PutCharA
|
||||
>SYSCALL PutChar.A
|
||||
.9 rts
|
||||
*---------------------------------------
|
||||
SRC.ParseLine ldx UsrBuf256
|
||||
@ -264,7 +264,7 @@ SRC.ParseLine.OpCode
|
||||
|
||||
.11 ldy #ASM.T.hMem
|
||||
lda (pData),y
|
||||
>SYSCALL GetMemPtrA
|
||||
>SYSCALL GetMemPtr.A
|
||||
>STYA ZPPtr1
|
||||
|
||||
ldy #ASM.T.O setup Ptr to Opcodes
|
||||
@ -326,12 +326,12 @@ SRC.ParseLine.OpCode
|
||||
.21 inx
|
||||
lda SRC.AM.StrBuf,x
|
||||
phx
|
||||
>SYSCALL PutCharA
|
||||
>SYSCALL PutChar.A
|
||||
plx
|
||||
cpx SRC.AM.StrBuf
|
||||
bne .21
|
||||
lda #13
|
||||
>SYSCALL PutCharA
|
||||
>SYSCALL PutChar.A
|
||||
|
||||
|
||||
.20 ldy #ASM.PC
|
||||
|
@ -41,7 +41,7 @@ SYM.Quit ldy #SYM.pLastGBlock
|
||||
adc #SYM.hGBlocks-1
|
||||
tay
|
||||
lda (pData),y
|
||||
>SYSCALL FreeMemA
|
||||
>SYSCALL FreeMem.A
|
||||
ldy #SYM.pLastGBlock
|
||||
lda (pData),y
|
||||
dec
|
||||
@ -110,7 +110,7 @@ SYM.Dump >LDYA L.MSG.SYMBOLS
|
||||
rts
|
||||
|
||||
.5 lda #13
|
||||
>SYSCALL PutCharA
|
||||
>SYSCALL PutChar.A
|
||||
|
||||
ldy #SYM.DumpCount
|
||||
lda (pData),y
|
||||
@ -292,7 +292,7 @@ SYM.GetGBlockA clc
|
||||
tay
|
||||
lda (pData),y
|
||||
phx
|
||||
>SYSCALL GetMemPtrA
|
||||
>SYSCALL GetMemPtr.A
|
||||
>STYA ZPBlockPtr
|
||||
plx
|
||||
rts
|
||||
@ -321,7 +321,7 @@ SYM.AddByteGBlock phx
|
||||
SYM.NewGBlock phx
|
||||
phy
|
||||
SYM.NewGBlock2 >LDYAI 256
|
||||
>SYSCALL GetMem0YA
|
||||
>SYSCALL GetMem0.YA
|
||||
|
||||
bcs .9
|
||||
>STYA ZPBlockPtr
|
||||
|
@ -155,7 +155,7 @@ CS.INIT >SYSCALL GetArgC
|
||||
|
||||
lda #1
|
||||
>SYSCALL GetArg.A
|
||||
>SYSCALL GetFullPathYA
|
||||
>SYSCALL GetFullPath.YA
|
||||
|
||||
txa
|
||||
ldy #SRC.hFILENAME
|
||||
@ -275,13 +275,13 @@ CS.QUIT jsr FIO.FileClose
|
||||
ldy #ASM.T.hMem
|
||||
lda (pData),y
|
||||
beq .1
|
||||
>SYSCALL FreeMemA
|
||||
>SYSCALL FreeMem.A
|
||||
|
||||
.1 ldy #SRC.hFILENAME
|
||||
lda (pData),y
|
||||
beq .8
|
||||
|
||||
>SYSCALL FreeMemA
|
||||
>SYSCALL FreeMem.A
|
||||
|
||||
.8 clc
|
||||
rts
|
||||
|
@ -76,7 +76,7 @@ CS.RUN stz K.MLI.PARAMS Sync
|
||||
>LDYAI 1024
|
||||
>STYA K.MLI.PARAMS+$10 BufLen
|
||||
|
||||
>SYSCALL GetMemYA
|
||||
>SYSCALL GetMem.YA
|
||||
bcs .99
|
||||
|
||||
>STYA K.MLI.PARAMS+$12 BufPtr
|
||||
@ -141,7 +141,7 @@ CS.DOEVENT sec
|
||||
CS.QUIT ldy #hBuf
|
||||
lda (pData),y
|
||||
beq .8
|
||||
>SYSCALL FreeMemA
|
||||
>SYSCALL FreeMem.A
|
||||
|
||||
.8 clc
|
||||
rts
|
||||
|
@ -241,11 +241,11 @@ CS.RUN.PRINT sty BytesRead Y,A = Bytes read
|
||||
bra .7
|
||||
|
||||
.4 lda #13
|
||||
>SYSCALL PutCharA
|
||||
>SYSCALL PutChar.A
|
||||
bcs .9
|
||||
lda #10
|
||||
|
||||
.6 >SYSCALL PutCharA
|
||||
.6 >SYSCALL PutChar.A
|
||||
bcs .9
|
||||
|
||||
.7 inc ByteIndex
|
||||
@ -274,7 +274,7 @@ CS.RUN.PRINTNUM clc
|
||||
>SYSCALL PrintFYA
|
||||
.8 rts
|
||||
*--------------------------------------
|
||||
CS.RUN.OPEN >SYSCALL GetFullPathYA
|
||||
CS.RUN.OPEN >SYSCALL GetFullPath.YA
|
||||
bcs .9
|
||||
stx hFullPath
|
||||
pha
|
||||
@ -302,7 +302,7 @@ CS.RUN.OPEN >SYSCALL GetFullPathYA
|
||||
|
||||
.99 pha
|
||||
lda hFullPath
|
||||
>SYSCALL FreeMemA
|
||||
>SYSCALL FreeMem.A
|
||||
pla
|
||||
.9 sec
|
||||
rts
|
||||
@ -316,7 +316,7 @@ CS.QUIT ldy #hFILE
|
||||
lda #0
|
||||
sta (pData),y
|
||||
pla
|
||||
>SYSCALL FCloseA
|
||||
>SYSCALL FClose.A
|
||||
|
||||
.8 clc
|
||||
rts
|
||||
|
@ -145,7 +145,7 @@ CS.RUN >SYSCALL GetC
|
||||
lda (pData),y
|
||||
beq .4 No filter....
|
||||
|
||||
>SYSCALL GetMemPtrA
|
||||
>SYSCALL GetMemPtr.A
|
||||
>PUSHYA
|
||||
>PUSHW ZPFileName
|
||||
>SYSCALL PStrMatch
|
||||
@ -239,9 +239,9 @@ CS.RUN.CheckErr bcs .1
|
||||
rts
|
||||
|
||||
.2 lda #13
|
||||
>SYSCALL PutCharA
|
||||
>SYSCALL PutChar.A
|
||||
lda #10
|
||||
>SYSCALL PutCharA
|
||||
>SYSCALL PutChar.A
|
||||
pla
|
||||
sec
|
||||
.9 rts
|
||||
@ -249,7 +249,7 @@ CS.RUN.CheckErr bcs .1
|
||||
CS.RUN.GetFilePath
|
||||
ldy #hSrcBasePath
|
||||
lda (pData),y
|
||||
>SYSCALL GetMemPtrA
|
||||
>SYSCALL GetMemPtr.A
|
||||
>PUSHYA
|
||||
>PUSHWI UsrBuf256
|
||||
>SYSCALL PStrCpy
|
||||
@ -268,7 +268,7 @@ CS.QUIT jsr LeaveSubDir
|
||||
ldy #hFilter
|
||||
lda (pData),y
|
||||
beq .3
|
||||
>SYSCALL FreeMemA
|
||||
>SYSCALL FreeMem.A
|
||||
|
||||
.3 clc
|
||||
rts
|
||||
|
@ -80,7 +80,7 @@ CS.RUN.ADD cmp #3
|
||||
sec
|
||||
.99 rts
|
||||
|
||||
CS.RUN.DUMP >LIBCALL hLIBTCPIP,LIBTCPIP.DNS.GETCACHE
|
||||
CS.RUN.DUMP >LIBCALL hLIBTCPIP,LIBTCPIP.DNS.GetC.ACHE
|
||||
>STYA ZPPTR1
|
||||
>LDYA L.MSG0
|
||||
>SYSCALL PrintFYA
|
||||
@ -107,7 +107,7 @@ CS.RUN.DUMP >LIBCALL hLIBTCPIP,LIBTCPIP.DNS.GETCACHE
|
||||
|
||||
ldy #S.DNSCACHE.hNAME
|
||||
lda (ZPPTR1),y
|
||||
>SYSCALL GetMemPtrA
|
||||
>SYSCALL GetMemPtr.A
|
||||
>PUSHYA
|
||||
|
||||
ldy #S.DNSCACHE.ID
|
||||
|
@ -10,7 +10,7 @@ BUF.InsertClipboard
|
||||
lda (pData),y
|
||||
beq .8
|
||||
|
||||
>SYSCALL GetMemPtrA
|
||||
>SYSCALL GetMemPtr.A
|
||||
>STYA ClipboardPtr
|
||||
|
||||
jsr BUF.ComputeCOffset
|
||||
@ -252,10 +252,10 @@ BUF.SelToClipboard
|
||||
lda (pData),y
|
||||
beq .1
|
||||
|
||||
>SYSCALL FreeMemA
|
||||
>SYSCALL FreeMem.A
|
||||
|
||||
.1 >LDYA TmpCount
|
||||
>SYSCALL GetMemYA
|
||||
>SYSCALL GetMem.YA
|
||||
bcs .9
|
||||
|
||||
>STYA ClipboardPtr
|
||||
@ -272,7 +272,7 @@ BUF.SelToClipboard
|
||||
|
||||
ldy #hBuffer
|
||||
lda (pData),y
|
||||
>SYSCALL GetMemPtrA
|
||||
>SYSCALL GetMemPtr.A
|
||||
>STYA BufPtr
|
||||
|
||||
lda BufPtr
|
||||
@ -373,7 +373,7 @@ BUF.GetLineAX >STAX BUF.TmpLine1
|
||||
|
||||
ldy #hBuffer
|
||||
lda (pData),y
|
||||
>SYSCALL GetMemPtrA
|
||||
>SYSCALL GetMemPtr.A
|
||||
>STYA BufPtr
|
||||
|
||||
stz BUF.TmpLine2
|
||||
@ -444,17 +444,17 @@ BUF.GetNewYA >STYA TmpLen
|
||||
ldy #hBufferBackup
|
||||
lda (pData),y
|
||||
beq .1
|
||||
>SYSCALL FreeMemA
|
||||
>SYSCALL FreeMem.A
|
||||
|
||||
.1 ldy #hBuffer
|
||||
lda (pData),y
|
||||
ldy #hBufferBackup
|
||||
sta (pData),y
|
||||
>SYSCALL GetMemPtrA
|
||||
>SYSCALL GetMemPtr.A
|
||||
>STYA BufPtrBackup
|
||||
|
||||
>LDYA TmpLen
|
||||
>SYSCALL GetMem0YA
|
||||
>SYSCALL GetMem0.YA
|
||||
bcs .9
|
||||
|
||||
>STYA BufPtr
|
||||
|
@ -363,7 +363,7 @@ Ctrl.S lda #PromptModeSave
|
||||
lda (pData),y
|
||||
beq .2
|
||||
|
||||
>SYSCALL GetMemPtrA
|
||||
>SYSCALL GetMemPtr.A
|
||||
>STYA ZPPTR1
|
||||
|
||||
lda (ZPPTR1)
|
||||
@ -624,7 +624,7 @@ Prompt.Save cmp #3
|
||||
ldy #hFileName
|
||||
lda (pData),y
|
||||
beq .11
|
||||
>SYSCALL FreeMemA
|
||||
>SYSCALL FreeMem.A
|
||||
|
||||
.11 >LDYA pData
|
||||
>SYSCALL NewPStrYA
|
||||
|
@ -14,7 +14,7 @@ SCRN.Init ldy #ScreenH
|
||||
>SYSCALL PrintFYA
|
||||
bcs .9
|
||||
lda #12
|
||||
>SYSCALL PutCharA
|
||||
>SYSCALL PutChar.A
|
||||
bcs .9
|
||||
|
||||
lda #0
|
||||
@ -50,7 +50,7 @@ SCRN.UpdateTopBar
|
||||
ldy #hFileName
|
||||
lda (pData),y
|
||||
beq .1
|
||||
>SYSCALL GetMemPtrA
|
||||
>SYSCALL GetMemPtr.A
|
||||
bra .2
|
||||
|
||||
.1 >LDYA L.MSG.NEWFILE
|
||||
@ -162,7 +162,7 @@ SCRN.UpdateLineAtALenY
|
||||
pla
|
||||
bcs .11
|
||||
|
||||
>SYSCALL PutCharA
|
||||
>SYSCALL PutChar.A
|
||||
.11 ply
|
||||
plx
|
||||
bcs .9
|
||||
@ -305,7 +305,7 @@ SCRN.ClearEOLA pha
|
||||
pha
|
||||
|
||||
lda #' '
|
||||
>SYSCALL PutCharA
|
||||
>SYSCALL PutChar.A
|
||||
bcc .1
|
||||
plx
|
||||
rts
|
||||
@ -332,7 +332,7 @@ SCRN.InvLineA sta .2+1
|
||||
.1 pha
|
||||
|
||||
lda #' '
|
||||
>SYSCALL PutCharA
|
||||
>SYSCALL PutChar.A
|
||||
pla
|
||||
bcs .9
|
||||
|
||||
|
@ -110,7 +110,7 @@ CS.INIT lda #$ff
|
||||
lda #1
|
||||
>SYSCALL GetArg.A
|
||||
|
||||
>SYSCALL GetFullPathYA
|
||||
>SYSCALL GetFullPath.YA
|
||||
txa
|
||||
ldy #hFileName
|
||||
sta (pData),y
|
||||
@ -119,7 +119,7 @@ CS.INIT lda #$ff
|
||||
bcc .8 if CS, Failed to load file, keep name, but new file....
|
||||
|
||||
.1 >LDYAI 1 buffer size = 0 (+ 1 for ending 0)
|
||||
>SYSCALL GetMem0YA
|
||||
>SYSCALL GetMem0.YA
|
||||
bcs .9
|
||||
|
||||
txa
|
||||
@ -171,22 +171,22 @@ CS.DOEVENT sec
|
||||
CS.QUIT ldy #hBuffer
|
||||
lda (pData),y
|
||||
beq .1
|
||||
>SYSCALL FreeMemA
|
||||
>SYSCALL FreeMem.A
|
||||
|
||||
.1 ldy #hBufferBackup
|
||||
lda (pData),y
|
||||
beq .2
|
||||
>SYSCALL FreeMemA
|
||||
>SYSCALL FreeMem.A
|
||||
|
||||
.2 ldy #hClipBoard
|
||||
lda (pData),y
|
||||
beq .3
|
||||
>SYSCALL FreeMemA
|
||||
>SYSCALL FreeMem.A
|
||||
|
||||
.3 ldy #hFileName
|
||||
lda (pData),y
|
||||
beq .8
|
||||
>SYSCALL FreeMemA
|
||||
>SYSCALL FreeMem.A
|
||||
|
||||
.8 >LDYA L.SEQ.RESET
|
||||
>SYSCALL PrintFYA
|
||||
@ -346,7 +346,7 @@ LoadFile >PUSHWI 0 Aux type
|
||||
ldy #hFileName
|
||||
lda (pData),y
|
||||
|
||||
>SYSCALL GetMemPtrA
|
||||
>SYSCALL GetMemPtr.A
|
||||
|
||||
>PUSHYA
|
||||
>SYSCALL LoadFile
|
||||
@ -358,7 +358,7 @@ LoadFile >PUSHWI 0 Aux type
|
||||
bne .2
|
||||
inc +1 for ending zero
|
||||
|
||||
.2 >SYSCALL GetMem0YA
|
||||
.2 >SYSCALL GetMem0.YA
|
||||
bcs .98
|
||||
|
||||
>STYA ZPPTR2
|
||||
@ -368,7 +368,7 @@ LoadFile >PUSHWI 0 Aux type
|
||||
|
||||
lda hMem
|
||||
|
||||
>SYSCALL GetMemPtrA
|
||||
>SYSCALL GetMemPtr.A
|
||||
>STYA ZPPTR1
|
||||
|
||||
lda TmpLen
|
||||
@ -407,14 +407,14 @@ LoadFile >PUSHWI 0 Aux type
|
||||
|
||||
.98 pha
|
||||
lda hMem
|
||||
>SYSCALL FreeMemA
|
||||
>SYSCALL FreeMem.A
|
||||
pla
|
||||
sec
|
||||
.9 rts
|
||||
*--------------------------------------
|
||||
SaveFile ldy #hBuffer
|
||||
lda (pData),y
|
||||
>SYSCALL GetMemPtrA
|
||||
>SYSCALL GetMemPtr.A
|
||||
>PUSHYA
|
||||
|
||||
ldy #FileLen+1
|
||||
@ -428,7 +428,7 @@ SaveFile ldy #hBuffer
|
||||
ldy #hFileName
|
||||
lda (pData),y
|
||||
|
||||
>SYSCALL GetMemPtrA
|
||||
>SYSCALL GetMemPtr.A
|
||||
|
||||
>PUSHYA
|
||||
|
||||
|
@ -216,7 +216,7 @@ CS.RUN.BuildCat ldy #hDev
|
||||
.99 bcs .9
|
||||
stx BlkCnt
|
||||
|
||||
>SYSCALL GetMem0YA BufferSize
|
||||
>SYSCALL GetMem0.YA BufferSize
|
||||
bcs .9
|
||||
>STYA BlkParams.Ptr
|
||||
txa
|
||||
@ -256,7 +256,7 @@ CS.DOEVENT sec
|
||||
CS.QUIT ldy #hBuf
|
||||
lda (pData),y
|
||||
beq .1
|
||||
>SYSCALL FreeMemA
|
||||
>SYSCALL FreeMem.A
|
||||
|
||||
.1 lda hLIBBLKDEV
|
||||
beq .8
|
||||
|
@ -162,7 +162,7 @@ CS.RUN.LINK >PUSHW L.MSG1.LINK.OK
|
||||
|
||||
.4 phx
|
||||
lda #'0'
|
||||
>SYSCALL PutCharA
|
||||
>SYSCALL PutChar.A
|
||||
plx
|
||||
dex
|
||||
bne .4
|
||||
@ -251,7 +251,7 @@ CS.DOEVENT sec
|
||||
*--------------------------------------
|
||||
CS.QUIT lda hLIBTCPIP
|
||||
beq .8
|
||||
>SYSCALL FreeMemA
|
||||
>SYSCALL FreeMem.A
|
||||
|
||||
.8 clc
|
||||
rts
|
||||
|
14
BIN/LS.S.txt
14
BIN/LS.S.txt
@ -103,7 +103,7 @@ CS.INIT >SYSCALL GetArgC
|
||||
|
||||
ldy #S.PS.hPREFIX
|
||||
lda (pPs),y
|
||||
>SYSCALL GetMemPtrA
|
||||
>SYSCALL GetMemPtr.A
|
||||
jsr InitSrcDirYA
|
||||
bcs .9
|
||||
|
||||
@ -141,7 +141,7 @@ CS.RUN >SYSCALL GetC
|
||||
lda (pData),y
|
||||
beq .4 No filter....
|
||||
|
||||
>SYSCALL GetMemPtrA
|
||||
>SYSCALL GetMemPtr.A
|
||||
>PUSHYA
|
||||
>PUSHW ZPFileName
|
||||
>SYSCALL PStrMatch
|
||||
@ -243,7 +243,7 @@ CS.RUN.DIR ldy #bAllmostAll
|
||||
|
||||
.1 lda #' '
|
||||
phx
|
||||
>SYSCALL PutCharA
|
||||
>SYSCALL PutChar.A
|
||||
plx
|
||||
bcs .9
|
||||
dex
|
||||
@ -401,9 +401,9 @@ CS.RUN.NewLine ldy #ColCount
|
||||
beq CS.RUN.NewLine.8
|
||||
CS.RUN.NewLine.1
|
||||
lda #13
|
||||
>SYSCALL PutCharA
|
||||
>SYSCALL PutChar.A
|
||||
lda #10
|
||||
>SYSCALL PutCharA
|
||||
>SYSCALL PutChar.A
|
||||
rts
|
||||
CS.RUN.NewLine.8
|
||||
clc
|
||||
@ -412,7 +412,7 @@ CS.RUN.NewLine.8
|
||||
CS.RUN.ENTER.MSG
|
||||
ldy #hSrcBasePath
|
||||
lda (pData),y
|
||||
>SYSCALL GetMemPtrA
|
||||
>SYSCALL GetMemPtr.A
|
||||
>PUSHYA
|
||||
>LDYA L.MSG.ENTER
|
||||
>SYSCALL PrintFYA
|
||||
@ -427,7 +427,7 @@ CS.QUIT jsr LeaveSubDir
|
||||
ldy #hFilter
|
||||
lda (pData),y
|
||||
beq .3
|
||||
>SYSCALL FreeMemA
|
||||
>SYSCALL FreeMem.A
|
||||
|
||||
.3 clc
|
||||
rts
|
||||
|
@ -73,9 +73,9 @@ CS.RUN >LDYA L.MSG0
|
||||
bcs .9
|
||||
|
||||
.6 lda #13
|
||||
>SYSCALL PutCharA
|
||||
>SYSCALL PutChar.A
|
||||
lda #10
|
||||
>SYSCALL PutCharA
|
||||
>SYSCALL PutChar.A
|
||||
|
||||
.7 inc DEV.ID
|
||||
lda DEV.ID
|
||||
|
@ -42,7 +42,7 @@ CS.RUN >SYSCALL GetArgC
|
||||
|
||||
lda #1
|
||||
>SYSCALL GetArg.A
|
||||
>SYSCALL GetFullPathYA
|
||||
>SYSCALL GetFullPath.YA
|
||||
bcs .9
|
||||
|
||||
stx hFullPath
|
||||
@ -62,7 +62,7 @@ CS.DOEVENT sec
|
||||
*--------------------------------------
|
||||
CS.QUIT lda hFullPath
|
||||
beq .8
|
||||
>SYSCALL FreeMemA
|
||||
>SYSCALL FreeMem.A
|
||||
|
||||
.8 clc
|
||||
rts
|
||||
|
@ -47,7 +47,7 @@ CS.INIT clc
|
||||
rts
|
||||
*--------------------------------------
|
||||
CS.RUN >LDYA L.MemStat
|
||||
>SYSCALL GetMemStatYA
|
||||
>SYSCALL GetMemStat.YA
|
||||
|
||||
>LDYA L.MSG.Main
|
||||
>SYSCALL PrintFYA
|
||||
|
@ -95,7 +95,7 @@ CS.RUN >SYSCALL GetC
|
||||
|
||||
.1 ldy #MEM.COUNT
|
||||
lda (pData),y
|
||||
>SYSCALL GetMemByIDA
|
||||
>SYSCALL GetMemByID.A
|
||||
>STYA ZPPTR1
|
||||
lda (ZPPTR1)
|
||||
bpl .2
|
||||
@ -242,7 +242,7 @@ CS.RUN.PRINTMEM ldy #S.MEM.LEN
|
||||
|
||||
bra .8
|
||||
****** BIN
|
||||
.7 >SYSCALL GetMemPtrA
|
||||
.7 >SYSCALL GetMemPtr.A
|
||||
>PUSHYA
|
||||
>LDYA L.MSG1.BIN
|
||||
>SYSCALL PrintFYA
|
||||
|
@ -124,7 +124,7 @@ CS.DOEVENT sec
|
||||
CS.QUIT lda hLIBTCPIP
|
||||
beq .8
|
||||
|
||||
>SYSCALL FreeMemA
|
||||
>SYSCALL FreeMem.A
|
||||
.8 clc
|
||||
rts
|
||||
*--------------------------------------
|
||||
|
@ -292,11 +292,11 @@ NSC.Dump ldx #1
|
||||
lda DS1216E.DATA+2
|
||||
jsr PrintBCD
|
||||
lda #'/'
|
||||
>SYSCALL PutCharA
|
||||
>SYSCALL PutChar.A
|
||||
lda DS1216E.DATA+1
|
||||
jsr PrintBCD
|
||||
lda #'/'
|
||||
>SYSCALL PutCharA
|
||||
>SYSCALL PutChar.A
|
||||
lda DS1216E.DATA
|
||||
jsr PrintBCD
|
||||
|
||||
@ -309,15 +309,15 @@ NSC.Dump ldx #1
|
||||
.4 and #$3F
|
||||
jsr PrintBCD
|
||||
lda #':'
|
||||
>SYSCALL PutCharA
|
||||
>SYSCALL PutChar.A
|
||||
lda DS1216E.DATA+5
|
||||
jsr PrintBCD
|
||||
lda #':'
|
||||
>SYSCALL PutCharA
|
||||
>SYSCALL PutChar.A
|
||||
lda DS1216E.DATA+6
|
||||
jsr PrintBCD
|
||||
lda #'.'
|
||||
>SYSCALL PutCharA
|
||||
>SYSCALL PutChar.A
|
||||
lda DS1216E.DATA+7
|
||||
jsr PrintBCD
|
||||
rts
|
||||
@ -328,12 +328,12 @@ PrintBCD pha
|
||||
lsr
|
||||
lsr
|
||||
ora #$30
|
||||
>SYSCALL PutCharA
|
||||
>SYSCALL PutChar.A
|
||||
bcs .9
|
||||
pla
|
||||
and #$0f
|
||||
ora #$30
|
||||
>SYSCALL PutCharA
|
||||
>SYSCALL PutChar.A
|
||||
.9 rts
|
||||
*--------------------------------------
|
||||
GetBCD lda (ZPPtr1),y
|
||||
|
@ -196,14 +196,14 @@ CS.RUN.WAIT.REPLY
|
||||
|
||||
ldy #hFrame
|
||||
sta (pData),y
|
||||
>SYSCALL GetMemPtrA
|
||||
>SYSCALL GetMemPtr.A
|
||||
>STYA ZPFrameBase
|
||||
jsr CS.Print.REPLY
|
||||
bcs CS.RUN.ERR
|
||||
|
||||
ldy #hFrame
|
||||
lda (pData),y
|
||||
>SYSCALL FreeMemA
|
||||
>SYSCALL FreeMem.A
|
||||
|
||||
ldy #hFrame
|
||||
lda #0
|
||||
@ -295,7 +295,7 @@ CS.QUIT ldy #hFrame
|
||||
lda (pData),y
|
||||
beq .1
|
||||
|
||||
>SYSCALL FreeMemA
|
||||
>SYSCALL FreeMem.A
|
||||
|
||||
.1 ldy #hSocket
|
||||
lda (pData),y
|
||||
|
@ -52,7 +52,7 @@ CS.RUN >LDYAI TSKMGR.TABLE+S.PS
|
||||
|
||||
ldy #S.PS.hCMDLINE
|
||||
lda (ZPPTR1),y
|
||||
>SYSCALL GetMemPtrA
|
||||
>SYSCALL GetMemPtr.A
|
||||
>PUSHYA
|
||||
|
||||
ldy #S.PS.PPID
|
||||
|
@ -141,14 +141,14 @@ CS.RUN jsr Init.Timeout
|
||||
|
||||
.6 ldy #hFrame
|
||||
sta (pData),y
|
||||
>SYSCALL GetMemPtrA
|
||||
>SYSCALL GetMemPtr.A
|
||||
>STYA ZPFrameBase
|
||||
|
||||
jsr DumpRPCFrame
|
||||
|
||||
ldy #hFrame
|
||||
lda (pData),y
|
||||
>SYSCALL FreeMemA
|
||||
>SYSCALL FreeMem.A
|
||||
|
||||
lda #0
|
||||
sec
|
||||
|
@ -125,13 +125,13 @@ CS.INIT >SYSCALL GetArgC
|
||||
|
||||
ldy #S.PS.hPREFIX no dst folder, use actual prefix
|
||||
lda (pPs),y
|
||||
>SYSCALL GetMemPtrA
|
||||
>SYSCALL GetMemPtr.A
|
||||
jsr InitDstDirYA
|
||||
bcs .99
|
||||
.FIN
|
||||
|
||||
.8 >LDYAI 256
|
||||
>SYSCALL GetMemYA
|
||||
>SYSCALL GetMem.YA
|
||||
bcs .9
|
||||
txa
|
||||
ldy #hSrcFullPath
|
||||
@ -139,7 +139,7 @@ CS.INIT >SYSCALL GetArgC
|
||||
|
||||
.DO X.COPY.TO.DEST=1
|
||||
>LDYAI 256
|
||||
>SYSCALL GetMemYA
|
||||
>SYSCALL GetMem.YA
|
||||
bcs .9
|
||||
txa
|
||||
ldy #hDstFullPath
|
||||
@ -225,7 +225,7 @@ CS.RUN >SYSCALL GetC
|
||||
ldy #hSrcFullPath
|
||||
jsr CS.RUN.GetPathY
|
||||
|
||||
>SYSCALL RemoveYA
|
||||
>SYSCALL Remove.YA
|
||||
bcs .22
|
||||
jsr CS.RUN.CheckErr Success!!!
|
||||
jsr CS.RUN.IncCount
|
||||
@ -243,7 +243,7 @@ CS.RUN >SYSCALL GetC
|
||||
lda (pData),y
|
||||
beq .4 No filter....
|
||||
|
||||
>SYSCALL GetMemPtrA
|
||||
>SYSCALL GetMemPtr.A
|
||||
>PUSHYA
|
||||
>PUSHW ZPFileName
|
||||
>SYSCALL PStrMatch
|
||||
@ -304,7 +304,7 @@ CS.RUN.LEAVE jsr LeaveSubDir exit this sub dir....
|
||||
bcs CS.RUN.LEAVE.RTS
|
||||
|
||||
>LDYA ZPPtr1
|
||||
>SYSCALL RemoveYA
|
||||
>SYSCALL Remove.YA
|
||||
jsr CS.RUN.CheckErr
|
||||
bcs .99
|
||||
.FIN
|
||||
@ -533,10 +533,10 @@ CS.RUN.OVERWRITE.KEY
|
||||
.FIN
|
||||
*--------------------------------------
|
||||
CS.RUN.CR lda #13
|
||||
>SYSCALL PutCharA
|
||||
>SYSCALL PutChar.A
|
||||
bcs .9
|
||||
lda #10
|
||||
>SYSCALL PutCharA
|
||||
>SYSCALL PutChar.A
|
||||
.9 rts
|
||||
*--------------------------------------
|
||||
.DO X.COPY.TO.DEST=1
|
||||
@ -588,7 +588,7 @@ CS.RUN.CopyStart
|
||||
.9 pha
|
||||
ldy #hSrcFile
|
||||
lda (pData),y
|
||||
>SYSCALL FCloseA
|
||||
>SYSCALL FClose.A
|
||||
pla
|
||||
|
||||
ldy #CopyRC
|
||||
@ -619,7 +619,7 @@ CS.RUN.Open phy Save Filename
|
||||
*--------------------------------------
|
||||
CS.RUN.Copy stz .90+1
|
||||
>LDYAI X.COPY.BUF.SIZE
|
||||
>SYSCALL GetMemYA
|
||||
>SYSCALL GetMem.YA
|
||||
bcs .9
|
||||
|
||||
>STYA ZPPtr1
|
||||
@ -646,14 +646,14 @@ CS.RUN.Copy stz .90+1
|
||||
bcs .9
|
||||
|
||||
lda .90+1
|
||||
>SYSCALL FreeMemA
|
||||
>SYSCALL FreeMem.A
|
||||
|
||||
ldy #bQuiet
|
||||
lda (pData),y
|
||||
bmi .8
|
||||
|
||||
lda #'.'
|
||||
>SYSCALL PutCharA
|
||||
>SYSCALL PutChar.A
|
||||
rts
|
||||
|
||||
.8 clc
|
||||
@ -664,15 +664,15 @@ CS.RUN.Copy stz .90+1
|
||||
|
||||
.90 lda #$00
|
||||
beq CS.RUN.CopyEnd
|
||||
>SYSCALL FreeMemA
|
||||
>SYSCALL FreeMem.A
|
||||
*--------------------------------------
|
||||
CS.RUN.CopyEnd ldy #hSrcFile
|
||||
lda (pData),y
|
||||
>SYSCALL FCloseA
|
||||
>SYSCALL FClose.A
|
||||
|
||||
ldy #hDstFile
|
||||
lda (pData),y
|
||||
>SYSCALL FCloseA
|
||||
>SYSCALL FClose.A
|
||||
|
||||
ldy #bCopy
|
||||
lda #$0
|
||||
@ -747,7 +747,7 @@ CS.RUN.BuildFilePath
|
||||
lda (pData),y
|
||||
beq .1
|
||||
|
||||
>SYSCALL GetMemPtrA
|
||||
>SYSCALL GetMemPtr.A
|
||||
>PUSHYA
|
||||
bra .2
|
||||
|
||||
@ -759,7 +759,7 @@ CS.RUN.BuildFilePath
|
||||
rts
|
||||
*--------------------------------------
|
||||
CS.RUN.GetPathY lda (pData),y
|
||||
>SYSCALL GetMemPtrA
|
||||
>SYSCALL GetMemPtr.A
|
||||
rts
|
||||
*--------------------------------------
|
||||
CS.RUN.IncCount ldy #Count
|
||||
@ -786,10 +786,10 @@ CS.QUIT jsr LeaveSubDir
|
||||
|
||||
ldy #hSrcFile
|
||||
lda (pData),y
|
||||
>SYSCALL FCloseA
|
||||
>SYSCALL FClose.A
|
||||
ldy #hDstFile
|
||||
lda (pData),y
|
||||
>SYSCALL FCloseA
|
||||
>SYSCALL FClose.A
|
||||
|
||||
.1 ldy #hDstFullPath
|
||||
jsr CS.QUIT.FREE
|
||||
@ -807,7 +807,7 @@ CS.QUIT jsr LeaveSubDir
|
||||
*--------------------------------------
|
||||
CS.QUIT.FREE lda (pData),y
|
||||
beq .9
|
||||
>SYSCALL FreeMemA
|
||||
>SYSCALL FreeMem.A
|
||||
.9 rts
|
||||
*--------------------------------------
|
||||
MAN
|
||||
|
@ -13,7 +13,7 @@ AUTO 6
|
||||
*--------------------------------------
|
||||
X.MAX.RECURSE .EQ 8
|
||||
*--------------------------------------
|
||||
InitSrcDirYA >SYSCALL GetFullPathYA
|
||||
InitSrcDirYA >SYSCALL GetFullPath.YA
|
||||
bcc .10
|
||||
rts
|
||||
|
||||
@ -85,7 +85,7 @@ InitSrcDirYA >SYSCALL GetFullPathYA
|
||||
sta (pData),y
|
||||
|
||||
.5 >LDYAI 256
|
||||
>SYSCALL GetMemYA Get a 256 buffer to store BasePath
|
||||
>SYSCALL GetMem.YA Get a 256 buffer to store BasePath
|
||||
bcs .9
|
||||
|
||||
>STYA ZPPtr2
|
||||
@ -114,7 +114,7 @@ InitSrcDirYA >SYSCALL GetFullPathYA
|
||||
sta (ZPPtr2)
|
||||
|
||||
>LDYA ZPPtr2
|
||||
>SYSCALL OpenDirYA
|
||||
>SYSCALL OpenDir.YA
|
||||
|
||||
bcs .9
|
||||
|
||||
@ -133,14 +133,14 @@ InitSrcDirYA >SYSCALL GetFullPathYA
|
||||
.91 lda #MLI.ERR.FNOTFND
|
||||
.9 pha
|
||||
.90 lda #$ff self modified
|
||||
>SYSCALL FreeMemA
|
||||
>SYSCALL FreeMem.A
|
||||
pla
|
||||
sec
|
||||
InitSrcDirYA.RTS
|
||||
rts
|
||||
*--------------------------------------
|
||||
.DO X.COPY.TO.DEST=1
|
||||
InitDstDirYA >SYSCALL GetFullPathYA
|
||||
InitDstDirYA >SYSCALL GetFullPath.YA
|
||||
bcs InitSrcDirYA.RTS
|
||||
|
||||
stx .90+1
|
||||
@ -191,7 +191,7 @@ InitDstDirYA >SYSCALL GetFullPathYA
|
||||
sta (pData),y
|
||||
|
||||
.5 >LDYAI 256
|
||||
>SYSCALL GetMemYA Get a 256 buffer to store DstBasePath
|
||||
>SYSCALL GetMem.YA Get a 256 buffer to store DstBasePath
|
||||
bcs .9
|
||||
|
||||
>STYA ZPPtr2
|
||||
@ -226,7 +226,7 @@ InitDstDirYA >SYSCALL GetFullPathYA
|
||||
|
||||
.9 pha
|
||||
.90 lda #$ff self modified
|
||||
>SYSCALL FreeMemA
|
||||
>SYSCALL FreeMem.A
|
||||
pla
|
||||
sec
|
||||
rts
|
||||
@ -322,11 +322,11 @@ GetEntry ldy #index
|
||||
bne .8
|
||||
|
||||
* txa
|
||||
* >SYSCALL FreeMemA
|
||||
* >SYSCALL FreeMem.A
|
||||
sec
|
||||
rts
|
||||
|
||||
.1 >SYSCALL GetMemPtrA
|
||||
.1 >SYSCALL GetMemPtr.A
|
||||
>STYA ZPFileName
|
||||
|
||||
ldy #index
|
||||
@ -369,7 +369,7 @@ GetEntry.ReadDir
|
||||
lda #0
|
||||
sta (pData),y reset hDIRENT
|
||||
pla
|
||||
>SYSCALL FreeMemA discard previous hDIRENT
|
||||
>SYSCALL FreeMem.A discard previous hDIRENT
|
||||
|
||||
.1 ldy #index
|
||||
lda (pData),y
|
||||
@ -378,7 +378,7 @@ GetEntry.ReadDir
|
||||
tay
|
||||
lda (pData),y
|
||||
|
||||
>SYSCALL ReadDirA
|
||||
>SYSCALL ReadDir.A
|
||||
bcs .9
|
||||
>STYA ZPFileName
|
||||
|
||||
@ -414,7 +414,7 @@ EnterSubDirYA >STYA ZPPtr2 save SUBDIR for StrCat
|
||||
jsr EnterSubDirYA.1
|
||||
|
||||
>LDYA ZPPtr1
|
||||
>SYSCALL OpenDirYA
|
||||
>SYSCALL OpenDir.YA
|
||||
|
||||
bcs .9
|
||||
pha
|
||||
@ -445,7 +445,7 @@ EnterSubDirYA >STYA ZPPtr2 save SUBDIR for StrCat
|
||||
.9 rts
|
||||
|
||||
EnterSubDirYA.1 lda (pData),y
|
||||
>SYSCALL GetMemPtrA
|
||||
>SYSCALL GetMemPtr.A
|
||||
|
||||
>STYA ZPPtr1 save full path
|
||||
|
||||
@ -477,7 +477,7 @@ LeaveSubDir ldy #index
|
||||
lda #0
|
||||
sta (pData),y
|
||||
pla
|
||||
>SYSCALL FreeMemA
|
||||
>SYSCALL FreeMem.A
|
||||
|
||||
.1 ldy #index
|
||||
lda (pData),y
|
||||
@ -490,7 +490,7 @@ LeaveSubDir ldy #index
|
||||
lda #0
|
||||
sta (pData),y
|
||||
pla
|
||||
>SYSCALL CloseDirA
|
||||
>SYSCALL CloseDir.A
|
||||
|
||||
ldy #index
|
||||
lda (pData),y
|
||||
@ -500,12 +500,12 @@ LeaveSubDir ldy #index
|
||||
|
||||
ldy #hSrcBasePath
|
||||
lda (pData),y
|
||||
>SYSCALL FreeMemA
|
||||
>SYSCALL FreeMem.A
|
||||
|
||||
.DO X.COPY.TO.DEST=1
|
||||
ldy #hDstBasePath
|
||||
lda (pData),y
|
||||
>SYSCALL FreeMemA
|
||||
>SYSCALL FreeMem.A
|
||||
.FIN
|
||||
|
||||
.9 sec
|
||||
@ -522,7 +522,7 @@ BasePath.. .DO X.COPY.TO.DEST=1
|
||||
ldy #hSrcBasePath
|
||||
|
||||
BasePath..1 lda (pData),y
|
||||
>SYSCALL GetMemPtrA
|
||||
>SYSCALL GetMemPtr.A
|
||||
|
||||
>STYA ZPPtr1 save full path
|
||||
|
||||
|
@ -79,7 +79,7 @@ Dev.Detect >STYA Args
|
||||
|
||||
sec
|
||||
ror USERMAC
|
||||
>SYSCALL GetMemPtrA
|
||||
>SYSCALL GetMemPtr.A
|
||||
>STYA ZPTmpPTR
|
||||
jsr DecodeMac
|
||||
bcc .4
|
||||
@ -196,7 +196,7 @@ READBLOCK.RxOK lda #L91C96.2.PTR.RCVD+L91C96.2.PTR.AUTOI+L91C96.2.PTR.READ
|
||||
bne .11
|
||||
|
||||
inc
|
||||
.11 >SYSCALL GetMemYA
|
||||
.11 >SYSCALL GetMem.YA
|
||||
bcs .99
|
||||
>STYA ZPTmpPTR
|
||||
stx .8+1
|
||||
|
@ -208,7 +208,7 @@ READBLOCK.RxOK >AR.SELECT S0.RX.RD
|
||||
adc /S.IP
|
||||
ply
|
||||
|
||||
>SYSCALL GetMemYA
|
||||
>SYSCALL GetMem.YA
|
||||
bcs READBLOCK.RTS
|
||||
|
||||
>STYA ZPTmpPTR
|
||||
|
@ -227,7 +227,7 @@ READBLOCK php
|
||||
lda Size+1
|
||||
adc #0
|
||||
|
||||
>SYSCALL GetMemYA
|
||||
>SYSCALL GetMem.YA
|
||||
bcs .9
|
||||
|
||||
>STYA ZPTmpPTR
|
||||
|
@ -193,7 +193,7 @@ READBLOCK.RxOK >AR.SELECT S0.RX.RD
|
||||
ldy W5100.DR,x get RX.Size LO
|
||||
sty RXTX.Size
|
||||
|
||||
>SYSCALL GetMemYA
|
||||
>SYSCALL GetMem.YA
|
||||
bcs .99
|
||||
>STYA ZPTmpPTR
|
||||
stx .8+1
|
||||
|
@ -161,7 +161,7 @@ H.BIN.DRV.REL.TABLE .EQ 0
|
||||
* A2osX.SYSCALL Functions Indexes
|
||||
*--------------------------------------
|
||||
SYS.FileSearch .EQ $00
|
||||
SYS.GetFullPathYA .EQ $02
|
||||
SYS.GetFullPath.YA .EQ $02
|
||||
SYS.LoadFile .EQ $04
|
||||
SYS.SaveFile .EQ $06
|
||||
|
||||
@ -185,7 +185,7 @@ SYS.FOpen.W .EQ $02 Open For Write
|
||||
SYS.FOpen.A .EQ $04 Append
|
||||
SYS.FOpen.T .EQ $08 Open/Append in Text mode
|
||||
SYS.FOpen.X .EQ $80 Create if not exists
|
||||
SYS.FCloseA .EQ $22
|
||||
SYS.FClose.A .EQ $22
|
||||
SYS.FRead .EQ $24
|
||||
SYS.FWrite .EQ $26
|
||||
SYS.FFlush .EQ $28
|
||||
@ -195,13 +195,13 @@ SYS.FSeek.CUR .EQ $01
|
||||
SYS.FSeek.END .EQ $02
|
||||
SYS.FTell .EQ $2C
|
||||
SYS.FEOF .EQ $2E
|
||||
SYS.RemoveYA .EQ $30
|
||||
SYS.Remove.YA .EQ $30
|
||||
SYS.Rename .EQ $32
|
||||
SYS.STAT .EQ $34
|
||||
* .EQ $36
|
||||
SYS.OpenDirYA .EQ $38
|
||||
SYS.ReadDirA .EQ $3A
|
||||
SYS.CloseDirA .EQ $3C
|
||||
SYS.OpenDir.YA .EQ $38
|
||||
SYS.ReadDir.A .EQ $3A
|
||||
SYS.CloseDir.A .EQ $3C
|
||||
SYS.MKDir.YA .EQ $3E
|
||||
*--------------------------------------
|
||||
* .EQ $40
|
||||
@ -240,41 +240,41 @@ SYS.SetEnv .EQ $7A
|
||||
SYS.GetEnv.YA .EQ $7C
|
||||
SYS.UnsetEnv.YA .EQ $7E
|
||||
*--------------------------------------
|
||||
SYS.GetDevByIDA .EQ $80
|
||||
SYS.GetDevByNameYA .EQ $82
|
||||
SYS.GetDevStatusA .EQ $84
|
||||
SYS.GetDevByID.A .EQ $80
|
||||
SYS.GetDevByName.YA .EQ $82
|
||||
SYS.GetDevStatus.A .EQ $84
|
||||
* .EQ $86
|
||||
SYS.MKNodYA .EQ $88
|
||||
SYS.MKNodA .EQ $8A
|
||||
SYS.MKNod.YA .EQ $88
|
||||
SYS.MKNod.A .EQ $8A
|
||||
SYS.MKFIFO .EQ $8C
|
||||
* .EQ $8E
|
||||
*--------------------------------------
|
||||
SYS.GetMem .EQ $90
|
||||
SYS.FreeMemA .EQ $92
|
||||
SYS.GetMemPtrA .EQ $94
|
||||
SYS.GetMemByIDA .EQ $96
|
||||
SYS.GetMemYA .EQ $98
|
||||
SYS.GetMem0YA .EQ $9A
|
||||
SYS.FreeMem.A .EQ $92
|
||||
SYS.GetMemPtr.A .EQ $94
|
||||
SYS.GetMemByID.A .EQ $96
|
||||
SYS.GetMem.YA .EQ $98
|
||||
SYS.GetMem0.YA .EQ $9A
|
||||
* .EQ $9C
|
||||
* .EQ $9E
|
||||
*--------------------------------------
|
||||
SYS.SetLoMem .EQ $A0
|
||||
SYS.GetMemStatYA .EQ $A2
|
||||
SYS.GetMemStat.YA .EQ $A2
|
||||
* .EQ $A4
|
||||
* .EQ $A6
|
||||
SYS.LoadStkObjYA .EQ $A8
|
||||
SYS.GetStkObjA .EQ $AA
|
||||
SYS.FreeStkObjA .EQ $AC
|
||||
SYS.LoadStkObj.YA .EQ $A8
|
||||
SYS.GetStkObj.A .EQ $AA
|
||||
SYS.FreeStkObj.A .EQ $AC
|
||||
* .EQ $AE
|
||||
*--------------------------------------
|
||||
SYS.FPutCAY .EQ $B0
|
||||
SYS.PutCharA .EQ $B2
|
||||
SYS.GetCA .EQ $B4
|
||||
SYS.FPutC.AY .EQ $B0
|
||||
SYS.PutChar.A .EQ $B2
|
||||
SYS.GetC.A .EQ $B4
|
||||
SYS.GetChar .EQ $B6
|
||||
SYS.FPutS .EQ $B8
|
||||
SYS.PutSYA .EQ $BA
|
||||
SYS.PutS.YA .EQ $BA
|
||||
SYS.FGetS .EQ $BC
|
||||
SYS.GetSYA .EQ $BE
|
||||
SYS.GetS.YA .EQ $BE
|
||||
*--------------------------------------
|
||||
* ProDOS ERROR CODES : $00->$5F
|
||||
* Lib ERROR CODES : $80->$BF
|
||||
|
@ -31,12 +31,12 @@ LIBTCPIP.PULSEA .EQ 10
|
||||
LIBTCPIP.ARP.Clear .EQ 12
|
||||
LIBTCPIP.ARP.Query .EQ 14
|
||||
LIBTCPIP.ARP.Add .EQ 16
|
||||
LIBTCPIP.ARP.GetCache .EQ 18
|
||||
LIBTCPIP.ARP.GetC.Ache .EQ 18
|
||||
|
||||
LIBTCPIP.DNS.Clear .EQ 20
|
||||
LIBTCPIP.DNS.Query .EQ 22
|
||||
LIBTCPIP.DNS.Add .EQ 24
|
||||
LIBTCPIP.DNS.GetCache .EQ 26
|
||||
LIBTCPIP.DNS.GetC.Ache .EQ 26
|
||||
|
||||
LIBTCPIP.HST.GetByName .EQ 28
|
||||
LIBTCPIP.HST.GetByAddr .EQ 30
|
||||
@ -54,7 +54,7 @@ LIBTCPIP.SKT.Read .EQ 46
|
||||
LIBTCPIP.SKT.ReadA .EQ 48
|
||||
LIBTCPIP.SKT.PutC .EQ 50
|
||||
LIBTCPIP.SKT.PutS .EQ 52
|
||||
LIBTCPIP.SKT.GetCA .EQ 54
|
||||
LIBTCPIP.SKT.GetC.A .EQ 54
|
||||
LIBTCPIP.SKT.GetS .EQ 56
|
||||
*--------------------------------------
|
||||
ERR.SKT.OOS .EQ $BF
|
||||
|
@ -121,7 +121,7 @@ LIB.UNLOAD clc
|
||||
* out :
|
||||
* A = hMem To MessageDigest
|
||||
*--------------------------------------
|
||||
MD5PStrA >SYSCALL GetMemPtrA
|
||||
MD5PStrA >SYSCALL GetMemPtr.A
|
||||
>STYA ZPTmpPtr3 1 and 2 used by other MD5 functions
|
||||
ldy #0
|
||||
lda (ZPTmpPtr3),y get PStr len
|
||||
@ -145,7 +145,7 @@ MD5PStrA >SYSCALL GetMemPtrA
|
||||
plx get back MD5 Context hMem
|
||||
pha save MessageDigest hMem
|
||||
txa
|
||||
>SYSCALL FreeMemA Free MD5 Context
|
||||
>SYSCALL FreeMem.A Free MD5 Context
|
||||
pla get back MessageDigest hMem
|
||||
clc
|
||||
.9 rts
|
||||
@ -156,7 +156,7 @@ MD5PStrA >SYSCALL GetMemPtrA
|
||||
* A = hMem To S.MD5
|
||||
*--------------------------------------
|
||||
MD5Init >LDYAI S.MD5.SIZE
|
||||
>SYSCALL GetMemYA
|
||||
>SYSCALL GetMem.YA
|
||||
bcs .9
|
||||
>STYA ZPTmpPtr1
|
||||
ldy #0
|
||||
@ -181,7 +181,7 @@ MD5Init >LDYAI S.MD5.SIZE
|
||||
* PULLW DATA LEN
|
||||
*--------------------------------------
|
||||
MD5Update >PULLA get MD5 Context
|
||||
>SYSCALL GetMemPtrA
|
||||
>SYSCALL GetMemPtr.A
|
||||
>STYA ZPTmpPtr1 get MD5 Context
|
||||
>PULLW ZPDataPtr get DATA
|
||||
>PULLW ZPDataLen get LEN
|
||||
@ -247,14 +247,14 @@ MD5Update >PULLA get MD5 Context
|
||||
* Out:
|
||||
* A = MessageDigest (PSTR, 16 Bytes, 32 Chars)
|
||||
*--------------------------------------
|
||||
MD5FinalizeA >SYSCALL GetMemPtrA
|
||||
MD5FinalizeA >SYSCALL GetMemPtr.A
|
||||
>STYA ZPTmpPtr1 get MD5 Context
|
||||
ldy #S.MD5.FINALIZED
|
||||
lda (ZPTmpPtr1),y
|
||||
bne .11
|
||||
jsr MD5ExtraChunk
|
||||
.11 >LDYAI 33 Len + 32 Digits
|
||||
>SYSCALL GetMemYA
|
||||
>SYSCALL GetMem.YA
|
||||
bcs .9
|
||||
>STYA ZPTmpPtr2
|
||||
phx save hMem for return
|
||||
|
@ -86,13 +86,13 @@ ARP.ADD.I sta ARP.TmpCache
|
||||
clc
|
||||
rts
|
||||
*/--------------------------------------
|
||||
* # ARP.GetCache
|
||||
* # ARP.GetC.Ache
|
||||
* Return a Ptr to ARP Cache Table
|
||||
* ## In:
|
||||
* ## Out:
|
||||
* Y,A = PTR to ARP.CACHE
|
||||
*\--------------------------------------
|
||||
ARP.GetCache >LDYA L.ARP.CACHE
|
||||
ARP.GetC.Ache >LDYA L.ARP.CACHE
|
||||
clc
|
||||
rts
|
||||
*--------------------------------------
|
||||
@ -144,7 +144,7 @@ ARP.IN ldy #S.ARP.TPA+3
|
||||
beq ARP.IN.REP
|
||||
|
||||
ARP.IN.EXIT lda hFrameIn
|
||||
>SYSCALL FreeMemA
|
||||
>SYSCALL FreeMem.A
|
||||
clc
|
||||
rts
|
||||
|
||||
|
@ -175,13 +175,13 @@ DNS.ADD.I sta DNS.TmpCache
|
||||
clc
|
||||
.9 rts
|
||||
*/--------------------------------------
|
||||
* # DNS.GetCache
|
||||
* # DNS.GetC.Ache
|
||||
* Return a Ptr to DNS Cache Table
|
||||
* ## In:
|
||||
* ## Out:
|
||||
* Y,A = PTR to DNS.CACHE
|
||||
*\--------------------------------------
|
||||
DNS.GetCache >LDYA L.DNS.CACHE
|
||||
DNS.GetC.Ache >LDYA L.DNS.CACHE
|
||||
clc
|
||||
rts
|
||||
*--------------------------------------
|
||||
@ -197,7 +197,7 @@ DNS.FIND.BY.NAME
|
||||
|
||||
ldy #S.DNSCACHE.hNAME
|
||||
lda (ZPCachePtr),y
|
||||
>SYSCALL GetMemPtrA
|
||||
>SYSCALL GetMemPtr.A
|
||||
bcs *
|
||||
>STYA ZPTmpPtr1
|
||||
|
||||
@ -362,7 +362,7 @@ DNS.FREE ldy #S.DNSCACHE.hNAME
|
||||
lda (ZPCachePtr),y
|
||||
beq .1
|
||||
|
||||
>SYSCALL FreeMemA
|
||||
>SYSCALL FreeMem.A
|
||||
.1 lda #0
|
||||
sta (ZPCachePtr)
|
||||
rts
|
||||
@ -384,7 +384,7 @@ DNS.POLL lda hDNSSocket1
|
||||
rts
|
||||
*--------------------------------------
|
||||
DNS.DecodeMsg sta hFrameIn
|
||||
>SYSCALL GetMemPtrA
|
||||
>SYSCALL GetMemPtr.A
|
||||
>STYA ZPFrameInPtr
|
||||
|
||||
ldy #S.DNS.F+1
|
||||
@ -492,7 +492,7 @@ DNS.DecodeMsg sta hFrameIn
|
||||
jsr DNS.UPDATE.BY.ID
|
||||
|
||||
.9 lda hFrameIn
|
||||
>SYSCALL FreeMemA
|
||||
>SYSCALL FreeMem.A
|
||||
rts
|
||||
*--------------------------------------
|
||||
DNS.PSTR2DNS lda (ZPPtrDNS)
|
||||
|
@ -45,7 +45,7 @@ FRM.NewIP stx .8+1
|
||||
txa
|
||||
adc #0
|
||||
|
||||
>SYSCALL GetMemYA
|
||||
>SYSCALL GetMem.YA
|
||||
bcs .9
|
||||
|
||||
stx hFrameOut
|
||||
@ -232,7 +232,7 @@ FRM.SendIP ldx #3 Copy SRC.IP even if IP offload
|
||||
|
||||
lda hFrameOut
|
||||
beq .9
|
||||
>SYSCALL FreeMemA
|
||||
>SYSCALL FreeMem.A
|
||||
|
||||
clc
|
||||
.9 rts
|
||||
@ -266,7 +266,7 @@ FRM.Retry ldx FRM.QUEUE.Tail
|
||||
.10 cpx FRM.QUEUE.Head
|
||||
beq .8 Queue is empty, exit....
|
||||
lda FRM.QUEUE.hMem,x
|
||||
>SYSCALL GetMemPtrA
|
||||
>SYSCALL GetMemPtr.A
|
||||
>STYA ZPFrameOutPtr
|
||||
|
||||
ldx FRM.QUEUE.Tail
|
||||
@ -288,7 +288,7 @@ FRM.Retry ldx FRM.QUEUE.Tail
|
||||
|
||||
.3 ldx FRM.QUEUE.Tail Success,or max retry, discard entry
|
||||
lda FRM.QUEUE.hMem,x
|
||||
>SYSCALL FreeMemA
|
||||
>SYSCALL FreeMem.A
|
||||
|
||||
.4 ldx FRM.QUEUE.Tail
|
||||
inx
|
||||
|
@ -69,7 +69,7 @@ ICMP.IN.ECHOREQ ldy #S.IP.DST+3
|
||||
jmp FRM.SendIP
|
||||
|
||||
ICMP.IN.EXIT lda hFrameIn
|
||||
>SYSCALL FreeMemA
|
||||
>SYSCALL FreeMem.A
|
||||
rts
|
||||
*--------------------------------------
|
||||
ICMP.IN.ECHOREP jsr IP.FillSKT.TemplateSrcDst
|
||||
@ -85,7 +85,7 @@ ICMP.IN.ECHOREP jsr IP.FillSKT.TemplateSrcDst
|
||||
sta SKT.Template+S.SOCKET.DST.PORT
|
||||
|
||||
lda hSocketTable
|
||||
>SYSCALL GetMemPtrA
|
||||
>SYSCALL GetMemPtr.A
|
||||
>STYA ZPPtrSKT
|
||||
|
||||
ldx #0
|
||||
@ -128,7 +128,7 @@ ICMP.IN.ECHOREP jsr IP.FillSKT.TemplateSrcDst
|
||||
bne .3
|
||||
|
||||
.9 lda hFrameIn
|
||||
>SYSCALL FreeMemA
|
||||
>SYSCALL FreeMem.A
|
||||
rts
|
||||
*--------------------------------------
|
||||
ICMP.ComputeChecksum
|
||||
|
@ -21,7 +21,7 @@ IP.IN ldy #S.IP.PROTOCOL
|
||||
jsr TCP.IN TCP will NOT discard FrameIn
|
||||
|
||||
.9 lda hFrameIn
|
||||
>SYSCALL FreeMemA
|
||||
>SYSCALL FreeMem.A
|
||||
rts
|
||||
*--------------------------------------
|
||||
* In:
|
||||
|
@ -32,7 +32,7 @@ SKT.New.Listen sec
|
||||
sta (ZPTmpPtr1),y
|
||||
|
||||
.1 lda hSocketTable
|
||||
>SYSCALL GetMemPtrA
|
||||
>SYSCALL GetMemPtr.A
|
||||
>STYA ZPTmpPtr2
|
||||
|
||||
lda #$ff
|
||||
@ -185,7 +185,7 @@ SKT.CloseA and #$7f
|
||||
sta (ZPPtrSKT),y
|
||||
|
||||
txa
|
||||
>SYSCALL FreeMemA
|
||||
>SYSCALL FreeMem.A
|
||||
bra .1
|
||||
|
||||
.8 lda #0
|
||||
@ -215,7 +215,7 @@ SKT.GetA.I and #$7f
|
||||
|
||||
pha
|
||||
lda hSocketTable
|
||||
>SYSCALL GetMemPtrA
|
||||
>SYSCALL GetMemPtr.A
|
||||
>STYA ZPPtrSKT
|
||||
|
||||
pla
|
||||
@ -257,7 +257,7 @@ SKT.GetA.I and #$7f
|
||||
* Y,A = pS.SOCKET
|
||||
*\--------------------------------------
|
||||
SKT.GetTable lda hSocketTable
|
||||
>SYSCALL GetMemPtrA
|
||||
>SYSCALL GetMemPtr.A
|
||||
clc
|
||||
rts
|
||||
*/--------------------------------------
|
||||
@ -517,14 +517,14 @@ SKT.PutS.1 >PULLA
|
||||
sec
|
||||
rts
|
||||
*/--------------------------------------
|
||||
* # SKT.GetCA (STREAM)
|
||||
* # SKT.GetC.A (STREAM)
|
||||
* Read a Char From Stream in A
|
||||
* ## In :
|
||||
* A = hSocket
|
||||
* ## Out :
|
||||
* A = char
|
||||
*\--------------------------------------
|
||||
SKT.GetCA stz bTextMode
|
||||
SKT.GetC.A stz bTextMode
|
||||
|
||||
ldx #1
|
||||
stx ZPDataOutLen
|
||||
@ -654,7 +654,7 @@ SKT.AddDataToSktIn
|
||||
|
||||
ldy #S.SOCKET.SQ.hInMem
|
||||
lda (ZPPtrSKT),y
|
||||
>SYSCALL GetMemPtrA
|
||||
>SYSCALL GetMemPtr.A
|
||||
>STYA ZPTmpPtr1 Make ZPTmpPtr1=buffer base
|
||||
|
||||
lda ZPTmpPtr1
|
||||
@ -764,7 +764,7 @@ SKT.GetDataFromSktIn
|
||||
|
||||
.10 ldy #S.SOCKET.SQ.hInMem
|
||||
lda (ZPPtrSKT),y
|
||||
>SYSCALL GetMemPtrA
|
||||
>SYSCALL GetMemPtr.A
|
||||
>STYA ZPTmpPtr1 Make ZPTmpPtr1=buffer base
|
||||
|
||||
lda ZPTmpPtr1
|
||||
@ -917,7 +917,7 @@ SKT.AddDataToSktOut
|
||||
|
||||
ldy #S.SOCKET.SQ.hOutMem
|
||||
lda (ZPPtrSKT),y
|
||||
>SYSCALL GetMemPtrA
|
||||
>SYSCALL GetMemPtr.A
|
||||
>STYA ZPTmpPtr1 Make ZPTmpPtr1=buffer base
|
||||
|
||||
lda ZPTmpPtr1
|
||||
@ -1008,7 +1008,7 @@ SKT.GetDataFromSktOut
|
||||
ldy #S.SOCKET.SQ.hOutMem
|
||||
lda (ZPPtrSKT),y
|
||||
|
||||
>SYSCALL GetMemPtrA
|
||||
>SYSCALL GetMemPtr.A
|
||||
>STYA ZPTmpPtr1 Make ZPTmpPtr1=buffer base
|
||||
|
||||
lda ZPTmpPtr1
|
||||
@ -1127,7 +1127,7 @@ SKT.AckDataToSktOut
|
||||
.8 rts
|
||||
*--------------------------------------
|
||||
SKT.NewTCB >LDYAI S.TCB
|
||||
>SYSCALL GetMem0YA
|
||||
>SYSCALL GetMem0.YA
|
||||
bcs .9
|
||||
|
||||
>STYA .4+1
|
||||
@ -1151,7 +1151,7 @@ SKT.NewTCB >LDYAI S.TCB
|
||||
bpl .2
|
||||
|
||||
>LDYAI K.TCP.WSIZE
|
||||
>SYSCALL GetMemYA
|
||||
>SYSCALL GetMem.YA
|
||||
bcs .9
|
||||
txa
|
||||
|
||||
@ -1159,7 +1159,7 @@ SKT.NewTCB >LDYAI S.TCB
|
||||
sta (ZPTmpPtr3),y
|
||||
|
||||
>LDYAI K.TCP.WSIZE
|
||||
>SYSCALL GetMemYA
|
||||
>SYSCALL GetMem.YA
|
||||
bcs .9
|
||||
txa
|
||||
|
||||
@ -1178,7 +1178,7 @@ SKT.NewTCB >LDYAI S.TCB
|
||||
*--------------------------------------
|
||||
SKT.GetTCB ldy #S.SOCKET.SQ.hTCB
|
||||
lda (ZPPtrSKT),y
|
||||
>SYSCALL GetMemPtrA
|
||||
>SYSCALL GetMemPtr.A
|
||||
bcs *
|
||||
>STYA .1+1
|
||||
|
||||
@ -1192,7 +1192,7 @@ SKT.GetTCB ldy #S.SOCKET.SQ.hTCB
|
||||
*--------------------------------------
|
||||
SKT.StoreTCB ldy #S.SOCKET.SQ.hTCB
|
||||
lda (ZPPtrSKT),y
|
||||
>SYSCALL GetMemPtrA
|
||||
>SYSCALL GetMemPtr.A
|
||||
bcs *
|
||||
>STYA .2+1
|
||||
|
||||
@ -1207,17 +1207,17 @@ SKT.StoreTCB ldy #S.SOCKET.SQ.hTCB
|
||||
SKT.Destroy ldy #S.SOCKET.SQ.hOutMem
|
||||
lda (ZPPtrSKT),y
|
||||
beq .1
|
||||
>SYSCALL FreeMemA
|
||||
>SYSCALL FreeMem.A
|
||||
|
||||
.1 ldy #S.SOCKET.SQ.hInMem
|
||||
lda (ZPPtrSKT),y
|
||||
beq .2
|
||||
>SYSCALL FreeMemA
|
||||
>SYSCALL FreeMem.A
|
||||
|
||||
.2 ldy #S.SOCKET.SQ.hTCB
|
||||
lda (ZPPtrSKT),y
|
||||
beq .3
|
||||
>SYSCALL FreeMemA
|
||||
>SYSCALL FreeMem.A
|
||||
|
||||
.3 lda #0
|
||||
sta (ZPPtrSKT)
|
||||
|
@ -22,7 +22,7 @@ TCP.IN jsr IP.FillSKT.TemplateSrcDst
|
||||
sta SKT.Template+S.SOCKET.SRC.PORT
|
||||
|
||||
lda hSocketTable
|
||||
>SYSCALL GetMemPtrA
|
||||
>SYSCALL GetMemPtr.A
|
||||
>STYA ZPPtrSKT
|
||||
|
||||
ldx #0
|
||||
|
@ -22,7 +22,7 @@ UDP.IN jsr IP.FillSKT.TemplateSrcDst
|
||||
sta SKT.Template+S.SOCKET.SRC.PORT
|
||||
|
||||
lda hSocketTable
|
||||
>SYSCALL GetMemPtrA
|
||||
>SYSCALL GetMemPtr.A
|
||||
>STYA ZPPtrSKT
|
||||
|
||||
ldx #0
|
||||
@ -74,7 +74,7 @@ UDP.IN jsr IP.FillSKT.TemplateSrcDst
|
||||
bne .3
|
||||
|
||||
.9 lda hFrameIn
|
||||
>SYSCALL FreeMemA
|
||||
>SYSCALL FreeMem.A
|
||||
rts
|
||||
*--------------------------------------
|
||||
UDP.ComputeChecksum
|
||||
|
@ -62,12 +62,12 @@ CS.START cld
|
||||
.DA ARP.CLEAR
|
||||
.DA ARP.QUERY
|
||||
.DA ARP.ADD
|
||||
.DA ARP.GETCACHE
|
||||
.DA ARP.GetC.ACHE
|
||||
|
||||
.DA DNS.CLEAR
|
||||
.DA DNS.QUERY
|
||||
.DA DNS.ADD
|
||||
.DA DNS.GETCACHE
|
||||
.DA DNS.GetC.ACHE
|
||||
|
||||
.DA HST.GETBYNAME
|
||||
.DA HST.GETBYADDR
|
||||
@ -85,7 +85,7 @@ CS.START cld
|
||||
.DA SKT.ReadA
|
||||
.DA SKT.PutC
|
||||
.DA SKT.PutS
|
||||
.DA SKT.GetCA
|
||||
.DA SKT.GetC.A
|
||||
.DA SKT.GetS
|
||||
*--------------------------------------
|
||||
L.IPCFG .DA IPCFG
|
||||
@ -117,7 +117,7 @@ LIB.LOAD ldx bFirstLoad
|
||||
jsr DNS.CLEAR
|
||||
|
||||
>LDYAI K.SKTTABLE.SIZE*S.SOCKET
|
||||
>SYSCALL GetMem0YA
|
||||
>SYSCALL GetMem0.YA
|
||||
bcs .9
|
||||
|
||||
stx hSocketTable
|
||||
@ -130,7 +130,7 @@ LIB.LOAD ldx bFirstLoad
|
||||
LIB.UNLOAD lda hSocketTable
|
||||
beq .8
|
||||
|
||||
>SYSCALL FreeMemA
|
||||
>SYSCALL FreeMem.A
|
||||
|
||||
.8 clc
|
||||
rts
|
||||
@ -169,7 +169,7 @@ POLL ldx #DEVMGR.READBLOCK
|
||||
jmp IP.IN
|
||||
|
||||
.9 lda hFrameIn
|
||||
>SYSCALL FreeMemA
|
||||
>SYSCALL FreeMem.A
|
||||
.99 rts
|
||||
*--------------------------------------
|
||||
* Expire = every sec
|
||||
@ -295,7 +295,7 @@ NODE.SSOCK .BS 1 S.NODE.HANDLER
|
||||
.BS 1 S.NODE.SSOCK.HSKT
|
||||
.DA #0 S.NODE.SSOCK.OPEN
|
||||
.DA #0 S.NODE.SSOCK.CLOSE
|
||||
.DA LIBTCPIP.SKT.GetCA
|
||||
.DA LIBTCPIP.SKT.GetC.A
|
||||
.DA LIBTCPIP.SKT.PutC
|
||||
.DA #0 S.NODE.SSOCK.STATUS
|
||||
*--------------------------------------
|
||||
|
@ -35,7 +35,7 @@ Its principal goal is to collect all "genius" 65c02 pieces of code ever written
|
||||
A2osX is designed to work on any "stock" 128k Apple //e, with no additional hardware. As VBL signal is NOT available as an IRQ on //e (it is on //c & IIgs)
|
||||
it makes preemptive multitasking impossible.
|
||||
|
||||
A new attempt using Mouse card VBL IRQ is targeted i 0.9.1.
|
||||
__A new attempt using Mouse card VBL IRQ is targeted in 0.9.1.__
|
||||
|
||||
Kernel, loading in Aux LC on top of ProDOS provide API inspired from Linux/Unix World to allow writing applications & command line tools on top of it.
|
||||
This kernel provides an advanced "Memory Manager" able to relocate 65c02 code.
|
||||
@ -206,7 +206,6 @@ note : '$VAR' does NOT expand Variable
|
||||
| Name | Status | Comment | K.Ver |
|
||||
| ---- | ------ | ------- | ----- |
|
||||
| ASM | In Progress | S-C MASM based multi CPU assembler | 0.9 |
|
||||
| DEVDUMP | | | 0.8 |
|
||||
| MEMDUMP | Working | | 0.9 |
|
||||
| RPCDUMP | Working | tool based on UDP socket API, renamed from RPCINFO | 0.9 |
|
||||
|
||||
|
@ -216,13 +216,13 @@ CS.RUN.SKT.RCVD ldy #hSocket
|
||||
bcs .9
|
||||
ldy #hFrame
|
||||
sta (pData),y
|
||||
>SYSCALL GetMemPtrA
|
||||
>SYSCALL GetMemPtr.A
|
||||
>STYA ZPFrameBase
|
||||
.9 rts
|
||||
*--------------------------------------
|
||||
CS.RUN.DISCARD ldy #hFrame
|
||||
lda (pData),y
|
||||
>SYSCALL FreeMemA
|
||||
>SYSCALL FreeMem.A
|
||||
rts
|
||||
*--------------------------------------
|
||||
CS.DOEVENT lda (pEvent)
|
||||
|
@ -198,7 +198,7 @@ CS.RUN jsr Init.Timeout
|
||||
|
||||
ldy #hBinName
|
||||
lda (pData),y
|
||||
>SYSCALL GetMemPtrA
|
||||
>SYSCALL GetMemPtr.A
|
||||
>SYSCALL ExecProcessNewEnvYA
|
||||
.9 rts
|
||||
|
||||
@ -221,7 +221,7 @@ CS.DOEVENT lda (pEvent)
|
||||
CS.QUIT ldy #hBinName
|
||||
lda (pData),y
|
||||
beq .1
|
||||
>SYSCALL FreeMemA
|
||||
>SYSCALL FreeMem.A
|
||||
|
||||
.1 ldx #DEVMGR.CLOSE
|
||||
* jsr pDevJmp
|
||||
|
@ -94,7 +94,7 @@ CS.RUN.REPaint >LDYA L.MSG.FCONF
|
||||
|
||||
ldy #hFileBuf
|
||||
lda (pData),y
|
||||
>SYSCALL GetMemPtrA
|
||||
>SYSCALL GetMemPtr.A
|
||||
jsr CS.RUN.DumpConfYA
|
||||
|
||||
CS.RUN.Loop >SYSCALL Sleep
|
||||
@ -141,7 +141,7 @@ CS.RUN.Loop >SYSCALL Sleep
|
||||
*--------------------------------------
|
||||
CS.RUN.ToggleHZ ldy #hFileBuf
|
||||
lda (pData),y
|
||||
>SYSCALL GetMemPtrA
|
||||
>SYSCALL GetMemPtr.A
|
||||
>STYA ZPTmp1
|
||||
|
||||
lda (ZPTmp1)
|
||||
@ -152,7 +152,7 @@ CS.RUN.ToggleHZ ldy #hFileBuf
|
||||
CS.RUN.ToggleCHRoot
|
||||
ldy #hFileBuf
|
||||
lda (pData),y
|
||||
>SYSCALL GetMemPtrA
|
||||
>SYSCALL GetMemPtr.A
|
||||
>STYA ZPTmp1
|
||||
|
||||
ldy #8
|
||||
@ -166,7 +166,7 @@ CS.RUN.ToggleSlotA
|
||||
|
||||
ldy #hFileBuf
|
||||
lda (pData),y
|
||||
>SYSCALL GetMemPtrA
|
||||
>SYSCALL GetMemPtr.A
|
||||
>STYA ZPTmp1
|
||||
|
||||
pla
|
||||
@ -181,7 +181,7 @@ CS.RUN.ToggleSlotA
|
||||
CS.RUN.Load >PUSHWI UsrBuf256
|
||||
ldy #hFileName
|
||||
lda (pData),y
|
||||
>SYSCALL GetMemPtrA
|
||||
>SYSCALL GetMemPtr.A
|
||||
>PUSHYA
|
||||
>SYSCALL Stat
|
||||
bcs .99
|
||||
@ -205,7 +205,7 @@ CS.RUN.Load >PUSHWI UsrBuf256
|
||||
ldy #hFileName
|
||||
lda (pData),y
|
||||
|
||||
>SYSCALL GetMemPtrA
|
||||
>SYSCALL GetMemPtr.A
|
||||
|
||||
>PUSHYA
|
||||
>SYSCALL LoadFile
|
||||
@ -217,7 +217,7 @@ CS.RUN.Load >PUSHWI UsrBuf256
|
||||
rts
|
||||
|
||||
.99 >LDYAI 16
|
||||
>SYSCALL GetMem0YA
|
||||
>SYSCALL GetMem0.YA
|
||||
|
||||
>STYA ZPTmp1
|
||||
|
||||
@ -233,7 +233,7 @@ CS.RUN.Load >PUSHWI UsrBuf256
|
||||
*--------------------------------------
|
||||
CS.RUN.Save ldy #hFileBuf
|
||||
lda (pData),y
|
||||
>SYSCALL GetMemPtrA
|
||||
>SYSCALL GetMemPtr.A
|
||||
>PUSHYA ptr
|
||||
|
||||
>PUSHWI 16 LEN
|
||||
@ -245,7 +245,7 @@ CS.RUN.Save ldy #hFileBuf
|
||||
ldy #hFileName
|
||||
lda (pData),y
|
||||
|
||||
>SYSCALL GetMemPtrA
|
||||
>SYSCALL GetMemPtr.A
|
||||
|
||||
>PUSHYA
|
||||
|
||||
@ -316,12 +316,12 @@ CS.DOEVENT sec do not discard TIMER event
|
||||
CS.QUIT ldy #hFileBuf
|
||||
lda (pData),y
|
||||
beq .1
|
||||
>SYSCALL FreeMemA
|
||||
>SYSCALL FreeMem.A
|
||||
|
||||
.1 ldy #hFileName
|
||||
lda (pData),y
|
||||
beq .8
|
||||
>SYSCALL FreeMemA
|
||||
>SYSCALL FreeMem.A
|
||||
|
||||
.8 clc
|
||||
rts
|
||||
|
@ -79,10 +79,10 @@ CS.RUN lda #0
|
||||
bcc .2
|
||||
|
||||
lda #13
|
||||
>SYSCALL PutCharA
|
||||
>SYSCALL PutChar.A
|
||||
bcs .9
|
||||
lda #10
|
||||
>SYSCALL PutCharA
|
||||
>SYSCALL PutChar.A
|
||||
bcs .9
|
||||
|
||||
>LDYA L.SHELL
|
||||
@ -95,7 +95,7 @@ CS.RUN lda #0
|
||||
php
|
||||
pha
|
||||
.3 lda #$ff Self Modified
|
||||
>SYSCALL FreeMemA
|
||||
>SYSCALL FreeMem.A
|
||||
pla
|
||||
plp
|
||||
rts
|
||||
@ -153,7 +153,7 @@ INPUT.CHARIN tax save char...
|
||||
lda (pData),y
|
||||
bne .1
|
||||
txa
|
||||
.1 >SYSCALL PutCharA
|
||||
.1 >SYSCALL PutChar.A
|
||||
rts
|
||||
|
||||
.2 cpx #13 CR
|
||||
|
@ -141,7 +141,7 @@ Cmd.ExecYA.Exit php
|
||||
pha
|
||||
Cmd.ExecYA.Exit.1
|
||||
lda #$ff
|
||||
>SYSCALL FreeMemA
|
||||
>SYSCALL FreeMem.A
|
||||
pla
|
||||
plp
|
||||
rts
|
||||
@ -169,7 +169,7 @@ Cmd.Exec.EXT ldy #1
|
||||
|
||||
.1 ldy #S.PS.hPREFIX not found, try in CD
|
||||
lda (pPs),y
|
||||
>SYSCALL GetMemPtrA
|
||||
>SYSCALL GetMemPtr.A
|
||||
>PUSHYA push search list
|
||||
>PUSHW ZPPtr1
|
||||
>PUSHWI UsrBuf256
|
||||
@ -183,7 +183,7 @@ Cmd.Exec.EXT ldy #1
|
||||
>PUSHW L.CMD replace CMD in TmpBuffer with full path
|
||||
>SYSCALL PStrCpy
|
||||
pla
|
||||
>SYSCALL FreeMemA Discard this string...
|
||||
>SYSCALL FreeMem.A Discard this string...
|
||||
|
||||
.3 stz UsrBuf256 reset UsrBuf256 for final CMDLINE
|
||||
|
||||
@ -256,7 +256,7 @@ Cmd.Exec.CD lda ARGS
|
||||
|
||||
Cmd.Exec.PWD ldy #S.PS.hPREFIX
|
||||
lda (pPs),y
|
||||
>SYSCALL GetMemPtrA
|
||||
>SYSCALL GetMemPtr.A
|
||||
>PUSHYA
|
||||
>LDYA L.MSG.PSTRCR
|
||||
>SYSCALL PrintFYA
|
||||
@ -269,7 +269,7 @@ Cmd.Exec.CD1 stz UsrBuf256
|
||||
|
||||
ldy #S.PS.hPREFIX no, init target prefix with actual prefix
|
||||
lda (pPs),y
|
||||
>SYSCALL GetMemPtrA
|
||||
>SYSCALL GetMemPtr.A
|
||||
>PUSHYA
|
||||
>PUSHWI UsrBuf256
|
||||
>SYSCALL PStrCpy
|
||||
@ -356,7 +356,7 @@ Cmd.Exec.CD1 stz UsrBuf256
|
||||
|
||||
ldy #S.PS.hPREFIX
|
||||
lda (pPs),y
|
||||
>SYSCALL FreeMemA
|
||||
>SYSCALL FreeMem.A
|
||||
|
||||
pla
|
||||
|
||||
@ -384,7 +384,7 @@ Cmd.Exec.SET lda ARGS
|
||||
|
||||
ldy #S.PS.hENV
|
||||
lda (pPs),y
|
||||
>SYSCALL GetMemPtrA
|
||||
>SYSCALL GetMemPtr.A
|
||||
>STYA ZPPTR1
|
||||
|
||||
* No arg, print all ENV
|
||||
@ -495,11 +495,11 @@ Cmd.Exec.ECHO lda ARGS
|
||||
|
||||
Cmd.Exec.ECHO.CR
|
||||
lda #13
|
||||
>SYSCALL PutCharA
|
||||
>SYSCALL PutChar.A
|
||||
bcs Cmd.Exec.ECHO.RTS
|
||||
|
||||
lda #10
|
||||
>SYSCALL PutCharA
|
||||
>SYSCALL PutChar.A
|
||||
|
||||
Cmd.Exec.ECHO.RTS
|
||||
rts
|
||||
@ -568,7 +568,7 @@ Cmd.Exec.READ lda ARGS
|
||||
cmp #'"'
|
||||
beq .1
|
||||
phx
|
||||
>SYSCALL PutCharA
|
||||
>SYSCALL PutChar.A
|
||||
plx
|
||||
bcs .99
|
||||
bra .3
|
||||
|
@ -13,7 +13,7 @@ CSH.TYPE.LONG .EQ 3
|
||||
CSH.TYPE.FLOAT .EQ 4
|
||||
*--------------------------------------
|
||||
CSH.Init >LDYAI 256
|
||||
>SYSCALL GetMem0YA
|
||||
>SYSCALL GetMem0.YA
|
||||
bcs .9
|
||||
txa
|
||||
ldy #CSH.hSymbols
|
||||
@ -24,7 +24,7 @@ CSH.Init >LDYAI 256
|
||||
sta (pData),y
|
||||
|
||||
>LDYAI 256
|
||||
>SYSCALL GetMemYA
|
||||
>SYSCALL GetMem.YA
|
||||
bcs .9
|
||||
txa
|
||||
ldy #CSH.hData
|
||||
@ -35,7 +35,7 @@ CSH.Init >LDYAI 256
|
||||
sta (pData),y
|
||||
|
||||
>LDYAI 256
|
||||
>SYSCALL GetMemYA
|
||||
>SYSCALL GetMem.YA
|
||||
bcs .9
|
||||
txa
|
||||
ldy #CSH.hStack
|
||||
@ -159,28 +159,28 @@ CSH.Run jsr CSH.GetBuf
|
||||
CSH.Quit ldy #CSH.hBuf
|
||||
lda (pData),y
|
||||
beq .1
|
||||
>SYSCALL FreeMemA
|
||||
>SYSCALL FreeMem.A
|
||||
|
||||
.1 ldy #CSH.hStack
|
||||
lda (pData),y
|
||||
beq .2
|
||||
>SYSCALL FreeMemA
|
||||
>SYSCALL FreeMem.A
|
||||
|
||||
.2 ldy #CSH.hData
|
||||
lda (pData),y
|
||||
beq .3
|
||||
>SYSCALL FreeMemA
|
||||
>SYSCALL FreeMem.A
|
||||
|
||||
.3 ldy #CSH.hSymbols
|
||||
lda (pData),y
|
||||
beq .8
|
||||
>SYSCALL FreeMemA
|
||||
>SYSCALL FreeMem.A
|
||||
|
||||
.8 rts
|
||||
*--------------------------------------
|
||||
CSH.GetBuf ldy #CSH.hBuf
|
||||
lda (pData),y
|
||||
>SYSCALL GetMemPtrA
|
||||
>SYSCALL GetMemPtr.A
|
||||
>STYA ZPBufBase
|
||||
|
||||
ldy #CSH.BufLen
|
||||
@ -208,17 +208,17 @@ CSH.SetBufPtr ldy #CSH.BufPtr
|
||||
*--------------------------------------
|
||||
CSH.GetPtrs ldy #CSH.hSymbols
|
||||
lda (pData),y
|
||||
>SYSCALL GetMemPtrA
|
||||
>SYSCALL GetMemPtr.A
|
||||
>STYA ZPCSHSymbols
|
||||
|
||||
ldy #CSH.hData
|
||||
lda (pData),y
|
||||
>SYSCALL GetMemPtrA
|
||||
>SYSCALL GetMemPtr.A
|
||||
>STYA ZPCSHData
|
||||
|
||||
ldy #CSH.hStack
|
||||
lda (pData),y
|
||||
>SYSCALL GetMemPtrA
|
||||
>SYSCALL GetMemPtr.A
|
||||
>STYA ZPCSHStack
|
||||
rts
|
||||
*--------------------------------------
|
||||
|
@ -6,7 +6,7 @@ AUTO 6
|
||||
.LIST OFF
|
||||
*--------------------------------------
|
||||
HIS.Init >LDYAI 256 Get a buffer for History
|
||||
>SYSCALL GetMem0YA
|
||||
>SYSCALL GetMem0.YA
|
||||
bcs .9
|
||||
|
||||
txa
|
||||
@ -24,7 +24,7 @@ HIS.Add ldy #HIS.hBuf
|
||||
lda (pData),y
|
||||
beq .9
|
||||
|
||||
>SYSCALL GetMemPtrA
|
||||
>SYSCALL GetMemPtr.A
|
||||
>STYA ZPPTR1
|
||||
|
||||
.10 ldy #HIS.BufEnd
|
||||
@ -104,7 +104,7 @@ HIS.GetPrev ldy #HIS.hBuf
|
||||
|
||||
txa
|
||||
|
||||
>SYSCALL GetMemPtrA
|
||||
>SYSCALL GetMemPtr.A
|
||||
>STYA ZPPTR1
|
||||
|
||||
lda #0
|
||||
@ -140,7 +140,7 @@ HIS.GetNext ldy #HIS.hBuf
|
||||
|
||||
txa
|
||||
|
||||
>SYSCALL GetMemPtrA
|
||||
>SYSCALL GetMemPtr.A
|
||||
>STYA ZPPTR1
|
||||
|
||||
ldy #HIS.BufIndex
|
||||
@ -178,7 +178,7 @@ HIS.SetBuf jsr CmdLine.CLR
|
||||
HIS.Quit ldy #HIS.hBuf
|
||||
lda (pData),y
|
||||
beq .9
|
||||
>SYSCALL FreeMemA
|
||||
>SYSCALL FreeMem.A
|
||||
.9 rts
|
||||
*--------------------------------------
|
||||
MAN
|
||||
|
@ -289,13 +289,13 @@ CS.RUN.BATCH jsr CSH.Run
|
||||
|
||||
.90 jsr CSH.GetChar
|
||||
bcs .92
|
||||
>SYSCALL PutCharA
|
||||
>SYSCALL PutChar.A
|
||||
|
||||
.91 jsr CSH.GetNextChar
|
||||
bcs .92
|
||||
cmp #13
|
||||
beq .92
|
||||
>SYSCALL PutCharA
|
||||
>SYSCALL PutChar.A
|
||||
bra .91
|
||||
|
||||
.92 pla
|
||||
@ -409,7 +409,7 @@ CS.CHARIN tax
|
||||
bne .8
|
||||
|
||||
txa
|
||||
>SYSCALL PutCharA
|
||||
>SYSCALL PutChar.A
|
||||
|
||||
.8 clc
|
||||
rts
|
||||
@ -417,9 +417,9 @@ CS.CHARIN tax
|
||||
CS.CHARIN.CTRL cpx #13 CR
|
||||
bne .10
|
||||
txa
|
||||
>SYSCALL PutCharA
|
||||
>SYSCALL PutChar.A
|
||||
lda #10
|
||||
>SYSCALL PutCharA
|
||||
>SYSCALL PutChar.A
|
||||
|
||||
lda (pData) CmdBuffer
|
||||
ora #$80
|
||||
@ -491,7 +491,7 @@ CheckSleep ldy #Sleep+3
|
||||
*--------------------------------------
|
||||
SetPWD ldy #S.PS.hPREFIX
|
||||
lda (pPs),y
|
||||
>SYSCALL GetMemPtrA
|
||||
>SYSCALL GetMemPtr.A
|
||||
>PUSHYA
|
||||
>PUSHW L.ENV.PWD
|
||||
>SYSCALL SetEnv
|
||||
@ -508,7 +508,7 @@ PrintPrompt >LDYA L.ENV.PS1
|
||||
php
|
||||
pha
|
||||
txa
|
||||
>SYSCALL FreeMemA
|
||||
>SYSCALL FreeMem.A
|
||||
pla
|
||||
plp
|
||||
.9 rts
|
||||
@ -533,7 +533,7 @@ CmdLine.DEL lda (pData)
|
||||
beq .9
|
||||
|
||||
lda #8
|
||||
>SYSCALL PutCharA
|
||||
>SYSCALL PutChar.A
|
||||
lda (pData)
|
||||
dec
|
||||
sta (pData)
|
||||
|
@ -65,7 +65,7 @@ CFG.Read.HOSTNAME
|
||||
>STYA CFG.FileLen
|
||||
|
||||
txa
|
||||
>SYSCALL GetMemPtrA
|
||||
>SYSCALL GetMemPtr.A
|
||||
>STYA ZPIPCfgPtr
|
||||
|
||||
* read 15 chars MAX, until CR or EOF
|
||||
@ -119,7 +119,7 @@ CFG.Read.TCPIP.CONF
|
||||
stx CFG.hCfgFile
|
||||
>STYA CFG.FileLen
|
||||
txa
|
||||
>SYSCALL GetMemPtrA
|
||||
>SYSCALL GetMemPtr.A
|
||||
>STYA ZPIPCfgPtr
|
||||
|
||||
.1 jsr CFG.GetLine
|
||||
@ -187,11 +187,11 @@ CFG.Read.HOSTS >PUSHWI 0 Aux type
|
||||
>STYA CFG.FileLen
|
||||
|
||||
txa
|
||||
>SYSCALL GetMemPtrA
|
||||
>SYSCALL GetMemPtr.A
|
||||
>STYA ZPIPCfgPtr
|
||||
|
||||
.89 lda CFG.hCfgFile
|
||||
>SYSCALL FreeMemA
|
||||
>SYSCALL FreeMem.A
|
||||
clc
|
||||
.99 rts
|
||||
*--------------------------------------
|
||||
@ -199,11 +199,11 @@ CFG.Read.CleanUp
|
||||
pha
|
||||
lda CFG.hCfgPath
|
||||
beq .1
|
||||
>SYSCALL FreeMemA
|
||||
>SYSCALL FreeMem.A
|
||||
|
||||
.1 lda CFG.hCfgFile
|
||||
beq .8
|
||||
>SYSCALL FreeMemA
|
||||
>SYSCALL FreeMem.A
|
||||
|
||||
.8 pla
|
||||
rts
|
||||
|
@ -174,7 +174,7 @@ CS.RUN.CLIENT ldy #SktIndex
|
||||
sta .1+1 hSocket
|
||||
sta .3+1
|
||||
|
||||
>LIBCALL hLIBTCPIP,LIBTCPIP.SKT.GetCA
|
||||
>LIBCALL hLIBTCPIP,LIBTCPIP.SKT.GetC.A
|
||||
bcc .10
|
||||
|
||||
tax
|
||||
|
@ -60,7 +60,7 @@ K.GetArg.A sta .2+1
|
||||
*--------------------------------------
|
||||
ARG.InitArgPtr1 ldy #S.PS.hCMDLINE
|
||||
lda (pPs),y
|
||||
jsr K.GetMemPtrA
|
||||
jsr K.GetMemPtr.A
|
||||
>STYA ZPPtr1
|
||||
rts
|
||||
*--------------------------------------
|
||||
|
@ -56,7 +56,7 @@ K.LoadDrv.YA >STYA K.LoadDrv.CmdArray
|
||||
|
||||
.96 pha
|
||||
.97 lda #$ff
|
||||
jsr K.FreeMemA
|
||||
jsr K.FreeMem.A
|
||||
pla
|
||||
rts
|
||||
*--------------------------------------
|
||||
@ -99,7 +99,7 @@ K.LoadLib.YA >STYA K.LoadLib.Name SAVE LIBname for K.FileSearch
|
||||
|
||||
.99 pha
|
||||
lda .8+1
|
||||
jsr K.FreeMemA
|
||||
jsr K.FreeMem.A
|
||||
pla
|
||||
|
||||
sec
|
||||
@ -113,7 +113,7 @@ K.LoadLib.Name .BS 2
|
||||
* out :
|
||||
*--------------------------------------
|
||||
K.UnloadLib.A pha
|
||||
jsr K.GetMemByIDA
|
||||
jsr K.GetMemByID.A
|
||||
>STYA ZPPtr1
|
||||
ldy #S.MEM.REFCNT
|
||||
lda (ZPPtr1),y Get count of those referencing this lib
|
||||
@ -135,7 +135,7 @@ K.UnloadLib.A pha
|
||||
ldx #LIBMGR.UNLOAD
|
||||
jsr LIB.Jump Call LIB.UNLOAD function
|
||||
pla
|
||||
jmp K.FreeMemA
|
||||
jmp K.FreeMem.A
|
||||
LIB.Jump jmp $ffff Self Modiied
|
||||
*--------------------------------------
|
||||
* K.LoadBin.YA
|
||||
@ -157,7 +157,7 @@ K.LoadBin.YA >STYA K.LoadBin.YA.Filename
|
||||
sta (ZPPtr1),y
|
||||
|
||||
txa
|
||||
jmp K.GetMemPtrA X=hMem from K.GetMemByNameA
|
||||
jmp K.GetMemPtr.A X=hMem from K.GetMemByNameA
|
||||
*--------------------------------------
|
||||
K.LoadBin.YA.1 >PUSHWI K.S.STAT
|
||||
>PUSHW K.LoadBin.YA.Filename
|
||||
@ -188,7 +188,7 @@ K.LoadBin.YA.1 >PUSHWI K.S.STAT
|
||||
sta BIN.Relocate.End+1
|
||||
|
||||
txa
|
||||
jsr K.GetMemPtrA
|
||||
jsr K.GetMemPtr.A
|
||||
>STYA ZPPtr1 set ZPPtr1 -> Code start
|
||||
|
||||
pha YA = actual load address
|
||||
@ -217,7 +217,7 @@ K.LoadBin.YA.1 >PUSHWI K.S.STAT
|
||||
bcs .98
|
||||
|
||||
lda K.LoadBin.YA.hMem Keep X=hMem
|
||||
jsr K.GetMemByIDA X unmodified
|
||||
jsr K.GetMemByID.A X unmodified
|
||||
>STYA ZPPtr1
|
||||
|
||||
lda (ZPPtr1)
|
||||
@ -230,13 +230,13 @@ K.LoadBin.YA.1 >PUSHWI K.S.STAT
|
||||
|
||||
lda K.LoadBin.YA.hMem
|
||||
tax return hMEM to Caller...
|
||||
jsr K.GetMemPtrA
|
||||
jsr K.GetMemPtr.A
|
||||
clc ...and Y,A=PTR to CS
|
||||
rts
|
||||
|
||||
.98 pha
|
||||
lda K.LoadBin.YA.hMem
|
||||
jsr K.FreeMemA Discard Loaded Code
|
||||
jsr K.FreeMem.A Discard Loaded Code
|
||||
pla
|
||||
|
||||
sec
|
||||
@ -311,7 +311,7 @@ BIN.InstallDRV ldy #H.BIN.DRV.CODE.O
|
||||
|
||||
.10 inc DevMgr.Count
|
||||
|
||||
>SYSCALL GetDevByIDA
|
||||
>SYSCALL GetDevByID.A
|
||||
>STYA ZPPtr2 setup Ptr2 to dest HEADER
|
||||
|
||||
ldy #H.BIN.DRV.HEADER.O
|
||||
|
@ -4,7 +4,7 @@ LOMEM $A00
|
||||
INC 1
|
||||
AUTO 6
|
||||
*/--------------------------------------
|
||||
* # GetDevByIDA
|
||||
* # GetDevByID.A
|
||||
* ## IN:
|
||||
* A = DevID
|
||||
* ## OUT:
|
||||
@ -12,7 +12,7 @@ AUTO 6
|
||||
* Y,A = DEVSLOT
|
||||
* note: X Unmodified
|
||||
*\--------------------------------------
|
||||
K.GetDevByIDA cmp DevMgr.Count
|
||||
K.GetDevByID.A cmp DevMgr.Count
|
||||
bcs K.GetDevDNF
|
||||
|
||||
asl
|
||||
@ -29,7 +29,7 @@ K.GetDevByIDA cmp DevMgr.Count
|
||||
adc /DevMgr.Table
|
||||
rts CC
|
||||
*/--------------------------------------
|
||||
* # GetDevByNameYA
|
||||
* # GetDevByName.YA
|
||||
* ## IN:
|
||||
* Y,A = Ptr to device name (PStr)
|
||||
* ## OUT:
|
||||
@ -37,7 +37,7 @@ K.GetDevByIDA cmp DevMgr.Count
|
||||
* X = DEVID
|
||||
* Y,A = DEVSLOT
|
||||
*\--------------------------------------
|
||||
K.GetDevByNameYA
|
||||
K.GetDevByName.YA
|
||||
>STYA ZPPtr1
|
||||
>LDYAI DevMgr.Table+S.DEV.NAME
|
||||
>STYA ZPPtr2
|
||||
@ -81,14 +81,15 @@ K.GetDevByNameYA
|
||||
K.GetDevDNF lda #MLI.ERR.NODEV CS from cpx/beq
|
||||
rts
|
||||
*/--------------------------------------
|
||||
* # GetDevStatusA
|
||||
* # GetDevStatus.A
|
||||
* ## IN:
|
||||
* A = DevID
|
||||
* ## OUT:
|
||||
* CC = OK, CS = ERROR
|
||||
* Y,A = Ptr to S.DEVINFO
|
||||
*\--------------------------------------
|
||||
K.GetDevStatusA jsr K.GetDevByIDA
|
||||
K.GetDevStatus.A
|
||||
jsr K.GetDevByID.A
|
||||
bcs K.GetDevDNF
|
||||
>STYA ZPPtr1
|
||||
ldx #DEVMGR.STATUS
|
||||
|
@ -4,7 +4,7 @@ LOMEM $A00
|
||||
INC 1
|
||||
AUTO 6
|
||||
*/--------------------------------------
|
||||
* # OpenDirYA
|
||||
* # OpenDir.YA
|
||||
* ## In:
|
||||
* Y,A = PATH (C-String)
|
||||
* ## Out:
|
||||
@ -13,16 +13,16 @@ AUTO 6
|
||||
* CS : error
|
||||
* A = EC
|
||||
*\--------------------------------------
|
||||
K.OpenDirYA jsr PFT.CheckPathYA
|
||||
K.OpenDir.YA jsr PFT.CheckPathYA
|
||||
>STYA ZPPtr2
|
||||
>STYA K.MLI.PARAMS+1 For GETFILEINFO,MLIOPEN
|
||||
|
||||
>LDYAI S.NODE.DIR
|
||||
jsr K.GetMem0YA
|
||||
jsr K.GetMem0.YA
|
||||
bcs .99
|
||||
|
||||
>STYA ZPPtr1
|
||||
stx K.ReadDirA.hDir
|
||||
stx K.ReadDir.A.hDir
|
||||
|
||||
ldy #1
|
||||
lda (ZPPtr2),y One char ?
|
||||
@ -45,18 +45,18 @@ K.OpenDirYA jsr PFT.CheckPathYA
|
||||
ldy #S.NODE.DIR.REF
|
||||
sta (ZPPtr1),y
|
||||
|
||||
.8 lda K.ReadDirA.hDir
|
||||
.8 lda K.ReadDir.A.hDir
|
||||
clc
|
||||
rts
|
||||
|
||||
.98 pha save MLI error
|
||||
lda K.ReadDirA.hDir
|
||||
jsr K.CloseDirA.1
|
||||
lda K.ReadDir.A.hDir
|
||||
jsr K.CloseDir.A.1
|
||||
pla get back MLI error
|
||||
sec
|
||||
.99 rts
|
||||
*/--------------------------------------
|
||||
* # ReadDirA
|
||||
* # ReadDir.A
|
||||
* ## In:
|
||||
* A = hDIR
|
||||
* ## Out:
|
||||
@ -67,34 +67,35 @@ K.OpenDirYA jsr PFT.CheckPathYA
|
||||
* A = EC
|
||||
* note : A = 0 means no more entry
|
||||
*\--------------------------------------
|
||||
K.ReadDirA.hDir .BS 1
|
||||
K.ReadDirA.hMem .BS 1
|
||||
K.ReadDirA.hDIRENT .BS 1
|
||||
K.ReadDirA.BufSize .BS 2
|
||||
K.ReadDirA.ECIB .BS 1
|
||||
K.ReadDir.A.hDir .BS 1
|
||||
K.ReadDir.A.hMem .BS 1
|
||||
K.ReadDir.A.hDIRENT .BS 1
|
||||
K.ReadDir.A.BufSize .BS 2
|
||||
K.ReadDir.A.ECIB .BS 1
|
||||
*--S.DIR Cache ------------------------
|
||||
K.ReadDirA.EL .BS 1
|
||||
K.ReadDirA.EPB .BS 1
|
||||
K.ReadDirA.EC .BS 2
|
||||
K.ReadDir.A.EL .BS 1
|
||||
K.ReadDir.A.EPB .BS 1
|
||||
K.ReadDir.A.EC .BS 2
|
||||
*--------------------------------------
|
||||
K.ReadDirA jsr PFT.CheckNodeA
|
||||
sta K.ReadDirA.hDir
|
||||
jsr K.GetMemPtrA
|
||||
K.ReadDir.A jsr PFT.CheckNodeA
|
||||
sta K.ReadDir.A.hDir
|
||||
jsr K.GetMemPtr.A
|
||||
>STYA ZPPtr1
|
||||
|
||||
ldy #S.NODE.DIR.REF
|
||||
lda (ZPPtr1),y
|
||||
beq K.ReadDirA.ROOT
|
||||
jmp K.ReadDirA.DIR
|
||||
beq K.ReadDir.A.ROOT
|
||||
jmp K.ReadDir.A.DIR
|
||||
|
||||
K.ReadDirA.NoMore
|
||||
K.ReadDir.A.NoMore
|
||||
lda #0
|
||||
sec CS,A=0 no more entry
|
||||
rts
|
||||
*--------------------------------------
|
||||
K.ReadDirA.ROOT ldy #S.NODE.DIR.FC did we already returned something ?
|
||||
K.ReadDir.A.ROOT
|
||||
ldy #S.NODE.DIR.FC did we already returned something ?
|
||||
lda (ZPPtr1),y
|
||||
bne K.ReadDirA.NoMore
|
||||
bne K.ReadDir.A.NoMore
|
||||
|
||||
stz K.MLI.PARAMS+1 All Volumes
|
||||
|
||||
@ -108,10 +109,10 @@ K.ReadDirA.ROOT ldy #S.NODE.DIR.FC did we already returned something ?
|
||||
.99 rts
|
||||
* pass #1 compute BufSize.....
|
||||
.10 lda #1 +1 for Ending 0
|
||||
sta K.ReadDirA.BufSize
|
||||
stz K.ReadDirA.BufSize+1
|
||||
sta K.ReadDir.A.BufSize
|
||||
stz K.ReadDir.A.BufSize+1
|
||||
|
||||
stz K.ReadDirA.EC
|
||||
stz K.ReadDir.A.EC
|
||||
|
||||
ldy #0
|
||||
|
||||
@ -119,14 +120,14 @@ K.ReadDirA.ROOT ldy #S.NODE.DIR.FC did we already returned something ?
|
||||
and #$0F
|
||||
beq .2
|
||||
|
||||
inc K.ReadDirA.EC increase entry count
|
||||
inc K.ReadDir.A.EC increase entry count
|
||||
|
||||
sec Add Filelen +1
|
||||
adc #S.STAT will ends with CC
|
||||
adc K.ReadDirA.BufSize
|
||||
sta K.ReadDirA.BufSize
|
||||
adc K.ReadDir.A.BufSize
|
||||
sta K.ReadDir.A.BufSize
|
||||
bcc .2
|
||||
inc K.ReadDirA.BufSize+1
|
||||
inc K.ReadDir.A.BufSize+1
|
||||
|
||||
.2 tya
|
||||
clc
|
||||
@ -135,7 +136,7 @@ K.ReadDirA.ROOT ldy #S.NODE.DIR.FC did we already returned something ?
|
||||
bcc .1 loop until 256 bytes scanned
|
||||
|
||||
* pass #2 Fill Buffer...
|
||||
jsr K.ReadDirA.GetBuf
|
||||
jsr K.ReadDir.A.GetBuf
|
||||
bcs .99
|
||||
|
||||
.3 lda (ZPPtr2)
|
||||
@ -151,15 +152,15 @@ K.ReadDirA.ROOT ldy #S.NODE.DIR.FC did we already returned something ?
|
||||
|
||||
.4 lda (ZPPtr2),y
|
||||
sta K.MLI.PATH+1,y
|
||||
jsr K.ReadDirA.AddToBuf
|
||||
jsr K.ReadDir.A.AddToBuf
|
||||
iny
|
||||
dex
|
||||
bne .4
|
||||
|
||||
txa Add ending 0 for C String
|
||||
jsr K.ReadDirA.AddToBuf
|
||||
jsr K.ReadDir.A.AddToBuf
|
||||
|
||||
jsr K.ReadDirA.ClrStat
|
||||
jsr K.ReadDir.A.ClrStat
|
||||
|
||||
lda (ZPPtr2)
|
||||
|
||||
@ -189,7 +190,7 @@ K.ReadDirA.ROOT ldy #S.NODE.DIR.FC did we already returned something ?
|
||||
>LDYA K.MLI.PARAMS+8
|
||||
>STYA K.S.STAT+S.STAT.BLOCKS
|
||||
|
||||
.80 jsr K.ReadDirA.ADDSTAT
|
||||
.80 jsr K.ReadDir.A.ADDSTAT
|
||||
|
||||
.88 lda ZPPtr2
|
||||
clc
|
||||
@ -197,7 +198,7 @@ K.ReadDirA.ROOT ldy #S.NODE.DIR.FC did we already returned something ?
|
||||
sta ZPPtr2
|
||||
bcc .89
|
||||
inc ZPPtr2+1
|
||||
.89 dec K.ReadDirA.EC
|
||||
.89 dec K.ReadDir.A.EC
|
||||
bne .3
|
||||
|
||||
* lda #0 done by S.MEM.F.INIT0
|
||||
@ -207,16 +208,16 @@ K.ReadDirA.ROOT ldy #S.NODE.DIR.FC did we already returned something ?
|
||||
lda #16
|
||||
sta (ZPPtr1),y Flag that we returned somthing for next time
|
||||
|
||||
lda K.ReadDirA.hDIRENT
|
||||
lda K.ReadDir.A.hDIRENT
|
||||
tax
|
||||
jmp K.GetMemPtrA
|
||||
jmp K.GetMemPtr.A
|
||||
*--------------------------------------
|
||||
K.ReadDirA.DIR sta K.MLI.PARAMS+1 A=#S.DIR.PRODOS.REF
|
||||
K.ReadDir.A.DIR sta K.MLI.PARAMS+1 A=#S.DIR.PRODOS.REF
|
||||
|
||||
>LDYAI 512 Get a 512 bytes buffer for reading dir...
|
||||
jsr K.GetMemYA
|
||||
jsr K.GetMem.YA
|
||||
bcs .99
|
||||
stx K.ReadDirA.hMem
|
||||
stx K.ReadDir.A.hMem
|
||||
|
||||
>STYA K.MLI.PARAMS+2 For reading
|
||||
|
||||
@ -244,18 +245,18 @@ K.ReadDirA.DIR sta K.MLI.PARAMS+1 A=#S.DIR.PRODOS.REF
|
||||
ldy #$1f+3
|
||||
ldx #3
|
||||
|
||||
.1 lda (ZPPtr2),y Get K.ReadDirA.EL.... From Block
|
||||
sta K.ReadDirA.EL,x
|
||||
.1 lda (ZPPtr2),y Get K.ReadDir.A.EL.... From Block
|
||||
sta K.ReadDir.A.EL,x
|
||||
dey
|
||||
dex
|
||||
bpl .1
|
||||
|
||||
inc K.ReadDirA.EC Add one to EC because we include VOL/DIR Header
|
||||
inc K.ReadDir.A.EC Add one to EC because we include VOL/DIR Header
|
||||
bne .4
|
||||
inc K.ReadDirA.EC+1 ...and ProDOS does NOT include header entry in EC
|
||||
inc K.ReadDir.A.EC+1 ...and ProDOS does NOT include header entry in EC
|
||||
bra .4
|
||||
|
||||
.98 jsr K.ReadDirA.CLN
|
||||
.98 jsr K.ReadDir.A.CLN
|
||||
sec
|
||||
.99 rts
|
||||
|
||||
@ -263,16 +264,16 @@ K.ReadDirA.DIR sta K.MLI.PARAMS+1 A=#S.DIR.PRODOS.REF
|
||||
ldx #3
|
||||
|
||||
.3 lda (ZPPtr1),y get this session parameters from S.DIR
|
||||
sta K.ReadDirA.EL,x
|
||||
sta K.ReadDir.A.EL,x
|
||||
dey
|
||||
dex
|
||||
bpl .3
|
||||
|
||||
.4 lda K.ReadDirA.EC
|
||||
.4 lda K.ReadDir.A.EC
|
||||
eor #$ff
|
||||
tax
|
||||
|
||||
lda K.ReadDirA.EC+1
|
||||
lda K.ReadDir.A.EC+1
|
||||
eor #$ff
|
||||
tay
|
||||
|
||||
@ -282,14 +283,14 @@ K.ReadDirA.DIR sta K.MLI.PARAMS+1 A=#S.DIR.PRODOS.REF
|
||||
beq .98 no...exit
|
||||
|
||||
* pass #1 compute BufSize...
|
||||
.5 lda K.ReadDirA.EPB
|
||||
sta K.ReadDirA.ECIB
|
||||
.5 lda K.ReadDir.A.EPB
|
||||
sta K.ReadDir.A.ECIB
|
||||
|
||||
lda #1 For Ending 0
|
||||
sta K.ReadDirA.BufSize
|
||||
stz K.ReadDirA.BufSize+1
|
||||
sta K.ReadDir.A.BufSize
|
||||
stz K.ReadDir.A.BufSize+1
|
||||
|
||||
K.ReadDirA.DIR1 lda (ZPPtr2) X = EntryCount In This Block
|
||||
K.ReadDir.A.DIR1 lda (ZPPtr2) X = EntryCount In This Block
|
||||
beq .7 Free slot....goto next
|
||||
|
||||
and #$F0 get storage_type
|
||||
@ -313,32 +314,32 @@ K.ReadDirA.DIR1 lda (ZPPtr2) X = EntryCount In This Block
|
||||
.2 lda #2+S.STAT+3+S.STAT add "1." + S.STAT + "2.." + S.STAT...
|
||||
|
||||
clc
|
||||
adc K.ReadDirA.BufSize
|
||||
sta K.ReadDirA.BufSize
|
||||
adc K.ReadDir.A.BufSize
|
||||
sta K.ReadDir.A.BufSize
|
||||
bcc .3
|
||||
inc K.ReadDirA.BufSize+1
|
||||
inc K.ReadDir.A.BufSize+1
|
||||
|
||||
.3 inx
|
||||
bne .7
|
||||
iny
|
||||
bra K.ReadDirA.DIR2 we reached last entry in whole DIR
|
||||
bra K.ReadDir.A.DIR2 we reached last entry in whole DIR
|
||||
|
||||
.7 lda ZPPtr2
|
||||
clc
|
||||
adc K.ReadDirA.EL
|
||||
adc K.ReadDir.A.EL
|
||||
sta ZPPtr2
|
||||
bcc .8
|
||||
inc ZPPtr2+1
|
||||
|
||||
.8 dec K.ReadDirA.ECIB
|
||||
bne K.ReadDirA.DIR1
|
||||
.8 dec K.ReadDir.A.ECIB
|
||||
bne K.ReadDir.A.DIR1
|
||||
|
||||
* pass #2 Fill Buffer...(ZPPtr1 & Ptr2 can now be trashed)
|
||||
K.ReadDirA.DIR2 jsr K.ReadDirA.GetBuf
|
||||
K.ReadDir.A.DIR2 jsr K.ReadDir.A.GetBuf
|
||||
bcs .9
|
||||
|
||||
lda K.ReadDirA.EPB
|
||||
sta K.ReadDirA.ECIB
|
||||
lda K.ReadDir.A.EPB
|
||||
sta K.ReadDir.A.ECIB
|
||||
|
||||
.1 lda (ZPPtr3)
|
||||
beq .7 Empty slot, skip
|
||||
@ -346,50 +347,50 @@ K.ReadDirA.DIR2 jsr K.ReadDirA.GetBuf
|
||||
and #$F0
|
||||
cmp #$F0 Vol Header ?
|
||||
bne .2
|
||||
jsr K.ReadDirA.ADD.
|
||||
jsr K.ReadDir.A.ADD.
|
||||
bra .6
|
||||
|
||||
.2 cmp #$E0 Dir Header ?
|
||||
bne .3
|
||||
jsr K.ReadDirA.ADD.
|
||||
jsr K.ReadDirA.ADD..
|
||||
jsr K.ReadDir.A.ADD.
|
||||
jsr K.ReadDir.A.ADD..
|
||||
bra .6
|
||||
|
||||
.3 jsr K.ReadDirA.AddFNToBuf
|
||||
jsr K.ReadDirA.ClrStat
|
||||
.3 jsr K.ReadDir.A.AddFNToBuf
|
||||
jsr K.ReadDir.A.ClrStat
|
||||
|
||||
lda (ZPPtr3)
|
||||
and #$F0
|
||||
cmp #$D0 Directory ?
|
||||
bne .5
|
||||
jsr K.ReadDirA.ADDD
|
||||
jsr K.ReadDir.A.ADDD
|
||||
bra .6
|
||||
|
||||
.5 jsr K.ReadDirA.ADDF
|
||||
.5 jsr K.ReadDir.A.ADDF
|
||||
|
||||
.6 lda K.ReadDirA.EC decrease global counter...
|
||||
.6 lda K.ReadDir.A.EC decrease global counter...
|
||||
sec
|
||||
sbc #1
|
||||
sta K.ReadDirA.EC
|
||||
sta K.ReadDir.A.EC
|
||||
|
||||
lda K.ReadDirA.EC+1
|
||||
lda K.ReadDir.A.EC+1
|
||||
sbc #0
|
||||
sta K.ReadDirA.EC+1
|
||||
ora K.ReadDirA.EC
|
||||
sta K.ReadDir.A.EC+1
|
||||
ora K.ReadDir.A.EC
|
||||
beq .8 0! no more files in DIR
|
||||
|
||||
.7 dec K.ReadDirA.ECIB 0! no more file in block
|
||||
.7 dec K.ReadDir.A.ECIB 0! no more file in block
|
||||
beq .8
|
||||
|
||||
lda ZPPtr3
|
||||
clc
|
||||
adc K.ReadDirA.EL
|
||||
adc K.ReadDir.A.EL
|
||||
sta ZPPtr3
|
||||
bcc .1
|
||||
inc ZPPtr3+1
|
||||
bra .1
|
||||
|
||||
.9 jsr K.ReadDirA.CLN
|
||||
.9 jsr K.ReadDir.A.CLN
|
||||
sec
|
||||
rts
|
||||
|
||||
@ -397,52 +398,52 @@ K.ReadDirA.DIR2 jsr K.ReadDirA.GetBuf
|
||||
* lda #0 S.MEM.F.INIT0 already did this
|
||||
* sta (ZPPtr4) Ending 0
|
||||
|
||||
lda K.ReadDirA.hDir Restore ZPPtr1 trashed by STR API calls
|
||||
jsr K.GetMemPtrA
|
||||
lda K.ReadDir.A.hDir Restore ZPPtr1 trashed by STR API calls
|
||||
jsr K.GetMemPtr.A
|
||||
>STYA ZPPtr1
|
||||
|
||||
ldx #3
|
||||
ldy #S.NODE.DIR.EL+3
|
||||
|
||||
.81 lda K.ReadDirA.EL,x Store back this session prameters to S.DIR
|
||||
.81 lda K.ReadDir.A.EL,x Store back this session prameters to S.DIR
|
||||
sta (ZPPtr1),y
|
||||
dey
|
||||
dex
|
||||
bpl .81
|
||||
|
||||
jsr K.ReadDirA.CLN Discard READBUFFER
|
||||
jsr K.ReadDir.A.CLN Discard READBUFFER
|
||||
|
||||
lda K.ReadDirA.hDIRENT
|
||||
lda K.ReadDir.A.hDIRENT
|
||||
tax
|
||||
jmp K.GetMemPtrA
|
||||
jmp K.GetMemPtr.A
|
||||
*--------------------------------------
|
||||
K.ReadDirA.CLN pha
|
||||
lda K.ReadDirA.hMem
|
||||
jsr K.FreeMemA
|
||||
K.ReadDir.A.CLN pha
|
||||
lda K.ReadDir.A.hMem
|
||||
jsr K.FreeMem.A
|
||||
pla
|
||||
rts
|
||||
*--------------------------------------
|
||||
K.ReadDirA.GetBuf
|
||||
>LDYA K.ReadDirA.BufSize Get a BufSize bytes buffer for storing results
|
||||
jsr K.GetMem0YA make sure 0 filled
|
||||
K.ReadDir.A.GetBuf
|
||||
>LDYA K.ReadDir.A.BufSize Get a BufSize bytes buffer for storing results
|
||||
jsr K.GetMem0.YA make sure 0 filled
|
||||
bcs .9
|
||||
stx K.ReadDirA.hDIRENT
|
||||
stx K.ReadDir.A.hDIRENT
|
||||
>STYA ZPPtr4
|
||||
.9 rts
|
||||
*--------------------------------------
|
||||
K.ReadDirA.ADD. ldx #1 filename="1."
|
||||
K.ReadDir.A.ADD. ldx #1 filename="1."
|
||||
.HS 2C bit abs
|
||||
K.ReadDirA.ADD..
|
||||
K.ReadDir.A.ADD..
|
||||
ldx #2 filename="2.."
|
||||
lda #'.'
|
||||
|
||||
.1 jsr K.ReadDirA.AddToBuf Add X dot(s)
|
||||
.1 jsr K.ReadDir.A.AddToBuf Add X dot(s)
|
||||
dex
|
||||
bne .1
|
||||
txa
|
||||
jsr K.ReadDirA.AddToBuf Add Ending 0
|
||||
jsr K.ReadDir.A.AddToBuf Add Ending 0
|
||||
|
||||
jsr K.ReadDirA.ClrStat
|
||||
jsr K.ReadDir.A.ClrStat
|
||||
|
||||
* ldy #$25 total_blocks
|
||||
* lda (ZPPtr3),y
|
||||
@ -451,14 +452,16 @@ K.ReadDirA.ADD..
|
||||
* lda (ZPPtr3),y
|
||||
* sta K.S.STAT+S.STAT.BLOCKS+1
|
||||
*--------------------------------------
|
||||
K.ReadDirA.ADDD lda #$0F
|
||||
K.ReadDir.A.ADDD
|
||||
lda #$0F
|
||||
sta K.S.STAT+S.STAT.P.TYPE
|
||||
|
||||
lda /S.STAT.MODE.DIR
|
||||
sta K.S.STAT+S.STAT.MODE+1
|
||||
bra K.ReadDirA.AddAccess
|
||||
bra K.ReadDir.A.AddAccess
|
||||
*--------------------------------------
|
||||
K.ReadDirA.ADDF lda /S.STAT.MODE.REG
|
||||
K.ReadDir.A.ADDF
|
||||
lda /S.STAT.MODE.REG
|
||||
sta K.S.STAT+S.STAT.MODE+1
|
||||
|
||||
ldx #ADDF.DST-ADDF.SRC
|
||||
@ -470,7 +473,7 @@ K.ReadDirA.ADDF lda /S.STAT.MODE.REG
|
||||
dex
|
||||
bne .1
|
||||
*--------------------------------------
|
||||
K.ReadDirA.AddAccess
|
||||
K.ReadDir.A.AddAccess
|
||||
ldy #$1E ProDOS Access
|
||||
lda (ZPPtr3),y
|
||||
|
||||
@ -488,16 +491,18 @@ K.ReadDirA.AddAccess
|
||||
.3 txa
|
||||
sta K.S.STAT+S.STAT.MODE
|
||||
*--------------------------------------
|
||||
K.ReadDirA.AddTime
|
||||
>PUSHWI K.S.STAT+S.STAT.CTIME
|
||||
K.ReadDir.A.AddTime
|
||||
ldx #K.S.STAT+S.STAT.CTIME
|
||||
ldy /K.S.STAT+S.STAT.CTIME
|
||||
lda #$18 creation Date/time
|
||||
jsr K.ReadDirA.ConvertTime
|
||||
jsr K.ReadDir.A.ConvertTime
|
||||
|
||||
>PUSHWI K.S.STAT+S.STAT.MTIME
|
||||
ldx #K.S.STAT+S.STAT.MTIME
|
||||
ldy /K.S.STAT+S.STAT.MTIME
|
||||
lda #$21 mod Date/time
|
||||
jsr K.ReadDirA.ConvertTime
|
||||
jsr K.ReadDir.A.ConvertTime
|
||||
*--------------------------------------
|
||||
K.ReadDirA.AddStat
|
||||
K.ReadDir.A.AddStat
|
||||
ldy #S.STAT-1
|
||||
|
||||
.1 lda K.S.STAT,y
|
||||
@ -513,7 +518,7 @@ K.ReadDirA.AddStat
|
||||
inc ZPPtr4+1
|
||||
.8 rts
|
||||
*--------------------------------------
|
||||
K.ReadDirA.ClrStat
|
||||
K.ReadDir.A.ClrStat
|
||||
ldx #S.STAT-1
|
||||
|
||||
.1 stz K.S.STAT,x
|
||||
@ -521,7 +526,7 @@ K.ReadDirA.ClrStat
|
||||
bpl .1
|
||||
rts
|
||||
*--------------------------------------
|
||||
K.ReadDirA.AddFNToBuf
|
||||
K.ReadDir.A.AddFNToBuf
|
||||
ldy #$1C version/min_version for lowercase bitmap
|
||||
lda (ZPPtr3),y check bxxxxxxx.xxxxxxxx...
|
||||
bpl .7 not set, no lowercase bitmap present
|
||||
@ -561,45 +566,48 @@ K.ReadDirA.AddFNToBuf
|
||||
ldy #1
|
||||
|
||||
.8 lda (ZPPtr3),y
|
||||
jsr K.ReadDirA.AddToBuf
|
||||
jsr K.ReadDir.A.AddToBuf
|
||||
iny
|
||||
dex
|
||||
bne .8
|
||||
|
||||
txa
|
||||
jsr K.ReadDirA.AddToBuf
|
||||
jsr K.ReadDir.A.AddToBuf
|
||||
|
||||
rts
|
||||
*--------------------------------------
|
||||
K.ReadDirA.AddToBuf
|
||||
K.ReadDir.A.AddToBuf
|
||||
sta (ZPPtr4)
|
||||
inc ZPPtr4
|
||||
bne .8
|
||||
inc ZPPtr4+1
|
||||
.8 rts
|
||||
*--------------------------------------
|
||||
K.ReadDirA.ConvertTime
|
||||
K.ReadDir.A.ConvertTime
|
||||
stx ZPPtr2
|
||||
sty ZPPtr2+1
|
||||
|
||||
clc
|
||||
adc ZPPtr3
|
||||
tay
|
||||
sta ZPPtr1
|
||||
lda ZPPtr3+1
|
||||
adc #0
|
||||
>PUSHYA
|
||||
jmp K.PTime2Time Will destroy Ptr1 & Ptr2 !!!!
|
||||
sta ZPPtr1+1
|
||||
jmp TIME.PTime2TimePtr1Ptr2
|
||||
*--------------------------------------
|
||||
ADDF.SRC .HS 1013141516171f20
|
||||
ADDF.DST .DA #S.STAT.P.TYPE,#S.STAT.BLOCKS,#S.STAT.BLOCKS+1
|
||||
.DA #S.STAT.SIZE,#S.STAT.SIZE+1,#S.STAT.SIZE+2
|
||||
.DA #S.STAT.P.AUXTYPE,#S.STAT.P.AUXTYPE+1
|
||||
*/-------------------------------------
|
||||
* # CloseDirA
|
||||
* # CloseDir.A
|
||||
* ## In:
|
||||
* A = hDIR
|
||||
* ## Out:
|
||||
* none, always succeed.
|
||||
*\-------------------------------------
|
||||
K.CloseDirA .EQ K.FCloseA
|
||||
K.CloseDirA.1 .EQ K.FCloseA.1
|
||||
K.CloseDir.A .EQ K.FClose.A
|
||||
K.CloseDir.A.1 .EQ K.FClose.A.1
|
||||
*--------------------------------------
|
||||
MAN
|
||||
SAVE /A2OSX.SRC/SYS/KERNEL.S.DIRENT
|
||||
|
@ -20,7 +20,7 @@ K.NewPStr.YA >STYA ZPPtr2
|
||||
inc
|
||||
tay
|
||||
lda #0 Y,A = len of new string
|
||||
jsr K.GetMemYA
|
||||
jsr K.GetMem.YA
|
||||
bcs .9
|
||||
|
||||
>STYA ZPPtr1
|
||||
@ -144,7 +144,7 @@ K.ExpandPStr.YA stz K.ExpandPStr.hPStr Reset Intermediate string...
|
||||
.80 lda K.ExpandPStr.hPStr working from our temp string ?
|
||||
beq .81 no...
|
||||
|
||||
jsr K.FreeMemA yes, discard....
|
||||
jsr K.FreeMem.A yes, discard....
|
||||
|
||||
.81 >LDYAI K.Buf256
|
||||
jsr K.NewPStr.YA
|
||||
@ -561,7 +561,7 @@ ENV.DiscardVarPtr3
|
||||
*--------------------------------------
|
||||
ENV.InitEnvPtr3 ldy #S.PS.hENV
|
||||
lda (pPs),y
|
||||
jsr K.GetMemPtrA
|
||||
jsr K.GetMemPtr.A
|
||||
>STYA ZPPtr3 Store ENV
|
||||
rts
|
||||
*--------------------------------------
|
||||
|
@ -117,7 +117,7 @@ EVT.DestroyEvent
|
||||
pha
|
||||
ldy #S.EVT.DATALO
|
||||
lda (pEvent),y
|
||||
jsr K.FreeMemA
|
||||
jsr K.FreeMem.A
|
||||
pla
|
||||
|
||||
.1 bit #S.EVT.F.hMEM2
|
||||
@ -125,7 +125,7 @@ EVT.DestroyEvent
|
||||
|
||||
ldy #S.EVT.DATAHI
|
||||
lda (pEvent),y
|
||||
jsr K.FreeMemA
|
||||
jsr K.FreeMem.A
|
||||
|
||||
.2 lda #0
|
||||
sta (pEvent)
|
||||
|
@ -88,12 +88,12 @@ K.FileSearch.I >PULLW ZPPtr4 ZPPtr1 trashed by ExpandStr.YA
|
||||
rts
|
||||
|
||||
.98 lda #$ff SELF MODIFIED : Discard Expanded hSrch list
|
||||
jsr K.FreeMemA
|
||||
jsr K.FreeMem.A
|
||||
lda #MLI.ERR.FNOTFND
|
||||
sec
|
||||
.99 rts
|
||||
*/--------------------------------------
|
||||
* # GetFullPathYA
|
||||
* # GetFullPath.YA
|
||||
* ## In :
|
||||
* Y,A = Filename (PSTR)
|
||||
* ## Out :
|
||||
@ -102,9 +102,10 @@ K.FileSearch.I >PULLW ZPPtr4 ZPPtr1 trashed by ExpandStr.YA
|
||||
* X = hMem of FullPath
|
||||
* CS : A = Error Code
|
||||
*\--------------------------------------
|
||||
K.GetFullPathYA >STYA ZPPtr3 Ptr1 & 2 used by StrCpy
|
||||
K.GetFullPath.YA
|
||||
>STYA ZPPtr3 Ptr1 & 2 used by StrCpy
|
||||
lda (ZPPtr3)
|
||||
beq K.GetFullPathYA.9
|
||||
beq K.GetFullPath.YA.9
|
||||
|
||||
stz K.Buf256
|
||||
|
||||
@ -115,7 +116,7 @@ K.GetFullPathYA >STYA ZPPtr3 Ptr1 & 2 used by StrCpy
|
||||
|
||||
ldy #S.PS.hPREFIX
|
||||
lda (pPs),y
|
||||
jsr K.GetMemPtrA
|
||||
jsr K.GetMemPtr.A
|
||||
>PUSHYA
|
||||
>PUSHWI K.Buf256
|
||||
>SYSCALL PStrCpy
|
||||
@ -123,12 +124,12 @@ K.GetFullPathYA >STYA ZPPtr3 Ptr1 & 2 used by StrCpy
|
||||
.1 >PUSHW ZPPtr3
|
||||
>PUSHWI K.Buf256
|
||||
>SYSCALL PStrCat
|
||||
K.GetFullPathYA.NewStr
|
||||
K.GetFullPath.YA.NewStr
|
||||
>LDYAI K.Buf256
|
||||
>SYSCALL NewPStrYA
|
||||
rts
|
||||
|
||||
K.GetFullPathYA.9
|
||||
K.GetFullPath.YA.9
|
||||
sec
|
||||
rts
|
||||
*/--------------------------------------
|
||||
@ -159,7 +160,7 @@ K.LoadFile lda (pStack) read PTR.LO on top of stack
|
||||
bne .11
|
||||
|
||||
>LDYA K.S.STAT+S.STAT.SIZE push len
|
||||
jsr K.GetMemYA
|
||||
jsr K.GetMem.YA
|
||||
bcs .10
|
||||
>STYA K.LoadFile.Mem
|
||||
stx K.LoadFile.hMem
|
||||
@ -194,12 +195,12 @@ K.LoadFile lda (pStack) read PTR.LO on top of stack
|
||||
|
||||
.97 pha
|
||||
lda K.LoadFile.hMem
|
||||
jsr K.FreeMemA
|
||||
jsr K.FreeMem.A
|
||||
pla
|
||||
|
||||
.99 pha
|
||||
lda K.LoadFile.hFile
|
||||
jsr K.FCloseA
|
||||
jsr K.FClose.A
|
||||
pla
|
||||
sec
|
||||
rts
|
||||
@ -232,7 +233,7 @@ K.SaveFile jsr K.FOpen
|
||||
|
||||
.99 pha
|
||||
.90 lda #$ff
|
||||
jsr K.FCloseA
|
||||
jsr K.FClose.A
|
||||
pla
|
||||
sec
|
||||
rts
|
||||
@ -259,6 +260,15 @@ K.ChTyp jsr PFT.CheckPathSTK
|
||||
>MLICALL MLISETFILEINFO
|
||||
.9 rts
|
||||
*/--------------------------------------
|
||||
* # ChMod
|
||||
* ## In:
|
||||
* PUSHW = UID
|
||||
* PUSHW = PATH
|
||||
*\--------------------------------------
|
||||
K.ChMod
|
||||
sec
|
||||
rts
|
||||
*/--------------------------------------
|
||||
* # ChOwn
|
||||
* ## In:
|
||||
* PUSHW = UID
|
||||
|
@ -79,9 +79,9 @@ A2osX.SYSCALL1 bit K.SYSCALL.FLAGS,x
|
||||
.7 lda #$FF Self Modified
|
||||
.8 jmp (K.SYSCALL.JMP,x)
|
||||
*--------------------------------------
|
||||
A2osX.LIBCALL1 pha No need to save X, K.GetMemPtrA will leave it unmodified
|
||||
A2osX.LIBCALL1 pha No need to save X, K.GetMemPtr.A will leave it unmodified
|
||||
tya Get LIB hMem in A
|
||||
jsr K.GetMemPtrA Get LIB Code Segment (MemMgr in $E000, no BNK change)
|
||||
jsr K.GetMemPtr.A Get LIB Code Segment (MemMgr in $E000, no BNK change)
|
||||
>STYA .1+1
|
||||
pla
|
||||
.1 jmp $ffff
|
||||
|
@ -134,7 +134,7 @@ Kernel.Init3 sta SETALTZP
|
||||
|
||||
ldy #S.PS.hPREFIX
|
||||
lda (pPs),y
|
||||
>SYSCALL GetMemPtrA
|
||||
>SYSCALL GetMemPtr.A
|
||||
|
||||
>PUSHYA
|
||||
>LDYAI MSG.Prefix
|
||||
@ -150,7 +150,7 @@ Kernel.Init3 sta SETALTZP
|
||||
>SYSCALL CreateProcessYA
|
||||
bcs .9
|
||||
pla
|
||||
>SYSCALL FreeMemA ...discard...
|
||||
>SYSCALL FreeMem.A ...discard...
|
||||
|
||||
>LDYAI MSG.Init3.OK
|
||||
>SYSCALL PrintFYA
|
||||
@ -431,7 +431,7 @@ PS0Init ldx #S.DEV*2 NUL,SYS
|
||||
bpl .2
|
||||
|
||||
>LDYAI DEV.SYS
|
||||
>SYSCALL MkNodYA
|
||||
>SYSCALL MkNod.YA
|
||||
bcs .9
|
||||
|
||||
ldy #S.PS.hStdIn
|
||||
@ -679,7 +679,7 @@ DevMgrInit.AddDev
|
||||
beq .9
|
||||
|
||||
inc DevMgr.Count
|
||||
>SYSCALL GetDevByIDA
|
||||
>SYSCALL GetDevByID.A
|
||||
>STYA ZPPtr2
|
||||
|
||||
lda DEV.HEADER+S.DEV.BUSID
|
||||
@ -768,7 +768,7 @@ TskMgrInit >LDYAI TskMgr.Table+S.PS Clear whole process table except PS0
|
||||
bne .1
|
||||
|
||||
>LDYAI K.ENV.SIZE get a buffer for ENV
|
||||
>SYSCALL GetMem0YA make sure blank!!
|
||||
>SYSCALL GetMem0.YA make sure blank!!
|
||||
bcs .9
|
||||
|
||||
txa
|
||||
|
@ -9,7 +9,7 @@ AUTO 6
|
||||
* Bank 1
|
||||
*--------------------------------------
|
||||
K.SYSCALL.JMP .DA K.FileSearch $00
|
||||
.DA K.GetFullPathYA
|
||||
.DA K.GetFullPath.YA
|
||||
.DA K.LoadFile
|
||||
.DA K.SaveFile
|
||||
.DA K.ChTyp
|
||||
@ -27,21 +27,21 @@ K.SYSCALL.JMP .DA K.FileSearch $00
|
||||
.DA 0
|
||||
*--------------------------------------
|
||||
.DA K.FOpen $20
|
||||
.DA K.FCloseA
|
||||
.DA K.FClose.A
|
||||
.DA K.FRead
|
||||
.DA K.FWrite
|
||||
.DA K.FFlushA
|
||||
.DA K.FFlush.A
|
||||
.DA K.FSeek
|
||||
.DA K.FTellA
|
||||
.DA K.FEOFA
|
||||
.DA K.FTell.A
|
||||
.DA K.FEOF.A
|
||||
*--------------------------------------
|
||||
.DA K.RemoveYA $30
|
||||
.DA K.Remove.YA $30
|
||||
.DA K.Rename
|
||||
.DA K.STAT
|
||||
.DA K.Stat
|
||||
.DA 0
|
||||
.DA K.OpenDirYA
|
||||
.DA K.ReadDirA
|
||||
.DA K.CloseDirA
|
||||
.DA K.OpenDir.YA
|
||||
.DA K.ReadDir.A
|
||||
.DA K.CloseDir.A
|
||||
.DA K.MKDir.YA
|
||||
*--------------------------------------
|
||||
* Bank 2
|
||||
@ -64,11 +64,11 @@ K.SYSCALL.JMP .DA K.FileSearch $00
|
||||
.DA K.StrFTime
|
||||
.DA 0 K.PStr2StrArrayYA
|
||||
*--------------------------------------
|
||||
.DA K.ExecProcessNewEnvYA $60
|
||||
.DA K.ExecProcessYA
|
||||
.DA K.CreateProcessNewEnvYA
|
||||
.DA K.CreateProcessYA
|
||||
.DA K.GetPSByIDA
|
||||
.DA K.ExecProcessNewEnv.YA $60
|
||||
.DA K.ExecProcess.YA
|
||||
.DA K.CreateProcessNewEnv.YA
|
||||
.DA K.CreateProcess.YA
|
||||
.DA K.GetPSByID.A
|
||||
.DA 0
|
||||
.DA K.Sleep
|
||||
.DA 0
|
||||
@ -82,43 +82,43 @@ K.SYSCALL.JMP .DA K.FileSearch $00
|
||||
.DA K.GetEnv.YA
|
||||
.DA K.UnsetEnv.YA
|
||||
*--------------------------------------
|
||||
.DA K.GetDevByIDA $80
|
||||
.DA K.GetDevByNameYA
|
||||
.DA K.GetDevStatusA
|
||||
.DA K.GetDevByID.A $80
|
||||
.DA K.GetDevByName.YA
|
||||
.DA K.GetDevStatus.A
|
||||
.DA 0
|
||||
.DA K.MKNodYA
|
||||
.DA K.MKNodA
|
||||
.DA K.MKNod.YA
|
||||
.DA K.MKNod.A
|
||||
.DA K.MKFIFO
|
||||
.DA 0
|
||||
*--------------------------------------
|
||||
* $E000
|
||||
*--------------------------------------
|
||||
.DA K.GetMem $90
|
||||
.DA K.FreeMemA
|
||||
.DA K.GetMemPtrA
|
||||
.DA K.GetMemByIDA
|
||||
.DA K.GetMemYA
|
||||
.DA K.GetMem0YA
|
||||
.DA K.FreeMem.A
|
||||
.DA K.GetMemPtr.A
|
||||
.DA K.GetMemByID.A
|
||||
.DA K.GetMem.YA
|
||||
.DA K.GetMem0.YA
|
||||
.DA 0
|
||||
.DA 0
|
||||
*--------------------------------------
|
||||
.DA K.SetLoMem $A0
|
||||
.DA K.GetMemStatYA
|
||||
.DA K.GetMemStat.YA
|
||||
.DA 0
|
||||
.DA 0
|
||||
.DA K.LoadStkObjYA
|
||||
.DA K.GetStkObjA
|
||||
.DA K.FreeStkObjA
|
||||
.DA K.LoadStkObj.YA
|
||||
.DA K.GetStkObj.A
|
||||
.DA K.FreeStkObj.A
|
||||
.DA 0
|
||||
*--------------------------------------
|
||||
.DA K.FPutCAY $B0
|
||||
.DA K.PutCharA
|
||||
.DA K.GetCA
|
||||
.DA K.FPutC.AY $B0
|
||||
.DA K.PutChar.A
|
||||
.DA K.GetC.A
|
||||
.DA K.GetChar
|
||||
.DA K.FPutS
|
||||
.DA K.PutSYA
|
||||
.DA K.PutS.YA
|
||||
.DA K.FGetS
|
||||
.DA K.GetSYA
|
||||
.DA K.GetS.YA
|
||||
*--------------------------------------
|
||||
* LO Byte :
|
||||
* #RRAMWRAMBNK1 or #RRAMWRAMBNK2
|
||||
|
@ -63,7 +63,7 @@ K.GetMem >PULLB MemMgr.ReqFlags store requested flags
|
||||
|
||||
.9 rts
|
||||
*/--------------------------------------
|
||||
* # GetMem0YA
|
||||
* # GetMem0.YA
|
||||
* ## In:
|
||||
* Y,A = Size Requested
|
||||
* ## Out:
|
||||
@ -73,11 +73,11 @@ K.GetMem >PULLB MemMgr.ReqFlags store requested flags
|
||||
* CS :
|
||||
* A = EC
|
||||
*\--------------------------------------
|
||||
K.GetMem0YA ldx #S.MEM.F.INIT0
|
||||
K.GetMem0.YA ldx #S.MEM.F.INIT0
|
||||
stx MemMgr.ReqFlags
|
||||
.HS 2C bit abs
|
||||
*/--------------------------------------
|
||||
* # GetMemYA
|
||||
* # GetMem.YA
|
||||
* ## In:
|
||||
* Y,A = Size Requested
|
||||
* ## Out:
|
||||
@ -87,7 +87,7 @@ K.GetMem0YA ldx #S.MEM.F.INIT0
|
||||
* CS :
|
||||
* A = EC
|
||||
*\--------------------------------------
|
||||
K.GetMemYA stz MemMgr.ReqFlags
|
||||
K.GetMem.YA stz MemMgr.ReqFlags
|
||||
sta MemMgr.ReqSize+1
|
||||
tya
|
||||
bit #$0F 16 bytes aligned ?
|
||||
@ -283,19 +283,19 @@ MemMgr.Init0 ldy #S.MEM.PTR
|
||||
.8 plx
|
||||
rts
|
||||
*/--------------------------------------
|
||||
* # FreeMemA
|
||||
* # FreeMem.A
|
||||
* ## In:
|
||||
* A = hMem To Free
|
||||
* ## Out:
|
||||
* none.
|
||||
* (X,Y unmodified)
|
||||
*\--------------------------------------
|
||||
K.FreeMemA phy
|
||||
K.FreeMem.A phy
|
||||
tay
|
||||
|
||||
beq * Slot=0, reserved by Kernel
|
||||
|
||||
jsr K.GetMemByIDA X unmodified
|
||||
jsr K.GetMemByID.A X unmodified
|
||||
lda (ZPMemMgrSPtr)
|
||||
bpl .9 In use ?
|
||||
|
||||
@ -312,7 +312,7 @@ K.FreeMemA phy
|
||||
lda (ZPMemMgrSPtr),y Any BINPATH to discard ?
|
||||
beq .1
|
||||
|
||||
jsr K.GetMemByIDA X unmodified
|
||||
jsr K.GetMemByID.A X unmodified
|
||||
lda (ZPMemMgrSPtr)
|
||||
bpl * ***MUST BE ALLOCATED***
|
||||
|
||||
@ -322,7 +322,7 @@ K.FreeMemA phy
|
||||
.1 lda MemMgr.LastSlot
|
||||
beq .8
|
||||
|
||||
jsr K.GetMemByIDA X unmodified
|
||||
jsr K.GetMemByID.A X unmodified
|
||||
lda (ZPMemMgrSPtr)
|
||||
bmi .8
|
||||
|
||||
@ -364,7 +364,7 @@ K.FreeMemA phy
|
||||
|
||||
>PUSHYA
|
||||
|
||||
>LDYAI K.FreeMemA.ERR
|
||||
>LDYAI K.FreeMem.A.ERR
|
||||
jsr K.PrintF.YA
|
||||
|
||||
.91 ldx #$ff
|
||||
@ -372,16 +372,16 @@ K.FreeMemA phy
|
||||
bit $C000,x
|
||||
bra *
|
||||
*--------------------------------------
|
||||
K.FreeMemA.ERR >CSTR "***MemMgr:Attempt to Free an already freed hMem at $%H"
|
||||
K.FreeMem.A.ERR >CSTR "***MemMgr:Attempt to Free an already freed hMem at $%H"
|
||||
*/--------------------------------------
|
||||
* # GetMemPtrA
|
||||
* # GetMemPtr.A
|
||||
* ## In:
|
||||
* A = hMem
|
||||
* ## Out:
|
||||
* Y,A = PTR to MemBlock
|
||||
* (X unmodified)
|
||||
*\--------------------------------------
|
||||
K.GetMemPtrA jsr K.GetMemByIDA
|
||||
K.GetMemPtr.A jsr K.GetMemByID.A
|
||||
ldy #S.MEM.PTR
|
||||
lda (ZPMemMgrSPtr),y
|
||||
pha
|
||||
@ -390,7 +390,7 @@ K.GetMemPtrA jsr K.GetMemByIDA
|
||||
ply
|
||||
rts
|
||||
*/--------------------------------------
|
||||
* # GetMemByIDA
|
||||
* # GetMemByID.A
|
||||
* ## In:
|
||||
* A = hMem
|
||||
* ## Out:
|
||||
@ -410,7 +410,7 @@ K.GetMemPtrA jsr K.GetMemByIDA
|
||||
!!!!!WARNING!!!!!
|
||||
.FIN
|
||||
*--------------------------------------
|
||||
K.GetMemByIDA sta ZPMemMgrSPtr
|
||||
K.GetMemByID.A sta ZPMemMgrSPtr
|
||||
lda /MemMgr.Table/8
|
||||
asl ZPMemMgrSPtr
|
||||
rol
|
||||
@ -440,23 +440,23 @@ K.GetMemByIDA sta ZPMemMgrSPtr
|
||||
* sta ZPMemMgrSPtr+1
|
||||
* rts
|
||||
*--------------------------------------
|
||||
K.LoadStkObjYA
|
||||
K.LoadStkObj.YA
|
||||
*--------------------------------------
|
||||
K.GetStkObjA
|
||||
K.GetStkObj.A
|
||||
*--------------------------------------
|
||||
K.FreeStkObjA
|
||||
K.FreeStkObj.A
|
||||
*--------------------------------------
|
||||
K.SetLoMem
|
||||
clc
|
||||
rts
|
||||
*/--------------------------------------
|
||||
* # GetMemStatYA
|
||||
* # GetMemStat.YA
|
||||
* ## In:
|
||||
* Y,A = 24 bytes buffer
|
||||
* ## Out:
|
||||
* Buffer filled with memory stats
|
||||
*\--------------------------------------
|
||||
K.GetMemStatYA >STYA ZPMemMgrDstPtr
|
||||
K.GetMemStat.YA >STYA ZPMemMgrDstPtr
|
||||
|
||||
ldy #6
|
||||
|
||||
@ -513,7 +513,7 @@ MEM.GetMemByNameYA
|
||||
lda (ZPMemMgrTmp1),y
|
||||
beq .6
|
||||
|
||||
jsr K.GetMemPtrA get pathname
|
||||
jsr K.GetMemPtr.A get pathname
|
||||
>STYA ZPMemMgrDstPtr
|
||||
|
||||
lda (ZPMemMgrSrcPtr)
|
||||
|
@ -59,7 +59,7 @@ PFT.CheckPathYA
|
||||
|
||||
ldy #S.PFT.HANDLER
|
||||
lda (ZPPtr2),y get hLib
|
||||
jsr K.GetMemPtrA
|
||||
jsr K.GetMemPtr.A
|
||||
>STYA .7+1
|
||||
|
||||
lda S.PFT.SYSCALL getback #SYSCALL
|
||||
@ -94,12 +94,12 @@ PFT.CheckNodeSTK
|
||||
lda (pStack) read hFILE on top of stack
|
||||
PFT.CheckNodeA stx S.PFT.SYSCALL save #SYSCALL
|
||||
sta S.PFT.hFILE
|
||||
jsr K.GetMemPtrA X = unmidified
|
||||
jsr K.GetMemPtr.A X = unmidified
|
||||
>STYA ZPPtr1
|
||||
lda (ZPPtr1)
|
||||
beq .9 Handler is 0, back to kernel....
|
||||
|
||||
jsr K.GetMemPtrA
|
||||
jsr K.GetMemPtr.A
|
||||
>STYA .1+1
|
||||
|
||||
lda S.PFT.SYSCALL getback #SYSCALL
|
||||
|
@ -4,24 +4,25 @@ LOMEM $A00
|
||||
INC 1
|
||||
AUTO 6
|
||||
*/--------------------------------------
|
||||
* # ExecProcessNewEnvYA
|
||||
* # ExecProcessYA (Blocking Parent PID)
|
||||
* # CreateProcessNewEnvYA
|
||||
* # CreateProcessYA (Non Blocking)
|
||||
* # ExecProcessNewEnv.YA
|
||||
* # ExecProcess.YA (Blocking Parent PID)
|
||||
* # CreateProcessNewEnv.YA
|
||||
* # CreateProcess.YA (Non Blocking)
|
||||
* ## In:
|
||||
* Y,A = PTR To Cmd Line
|
||||
* ## Out:
|
||||
* A = Child PSID
|
||||
*\--------------------------------------
|
||||
K.ExecProcessNewEnvYA
|
||||
K.ExecProcessNewEnv.YA
|
||||
ldx #S.PS.F.ENV+S.PS.F.HOLD
|
||||
.HS 2C bit abs
|
||||
K.ExecProcessYA ldx #S.PS.F.HOLD
|
||||
K.ExecProcess.YA
|
||||
ldx #S.PS.F.HOLD
|
||||
.HS 2C bit abs
|
||||
K.CreateProcessNewEnvYA
|
||||
K.CreateProcessNewEnv.YA
|
||||
ldx #S.PS.F.ENV
|
||||
.HS 2C bit abs
|
||||
K.CreateProcessYA
|
||||
K.CreateProcess.YA
|
||||
ldx #0
|
||||
stx K.CreateProcess.Flags
|
||||
>STYA K.CreateProcess.CmdLine
|
||||
@ -36,7 +37,7 @@ K.CreateProcessYA
|
||||
|
||||
pha save error code
|
||||
lda .8+1
|
||||
jsr PS.FreeA
|
||||
jsr PS.Free.A
|
||||
pla get back error code
|
||||
sec
|
||||
rts
|
||||
@ -47,13 +48,13 @@ K.CreateProcessYA
|
||||
K.CreateProcess.Flags .BS 1
|
||||
K.CreateProcess.CmdLine .BS 2
|
||||
*/--------------------------------------
|
||||
* # GetPSByIDA
|
||||
* # GetPSByID.A
|
||||
* ## In :
|
||||
* A = PID
|
||||
* ## Out :
|
||||
* Y,A = PTR to TSKSLOT
|
||||
*\--------------------------------------
|
||||
K.GetPSByIDA pha
|
||||
K.GetPSByID.A pha
|
||||
>LDYAI TskMgr.Table
|
||||
>STYA ZPPtr1
|
||||
|
||||
@ -151,7 +152,7 @@ PS.CreateChild >LDYAI TskMgr.Table+S.PS
|
||||
.4 inc TSKMGR.LASTID Get a PSID not alredy running
|
||||
beq .4 not = 0
|
||||
lda TSKMGR.LASTID
|
||||
jsr K.GetPSByIDA
|
||||
jsr K.GetPSByID.A
|
||||
bcc .4
|
||||
|
||||
ldy #S.PS.PID
|
||||
@ -174,7 +175,7 @@ PS.CreateChild >LDYAI TskMgr.Table+S.PS
|
||||
|
||||
ldy #S.PS.hPREFIX copy hPREFIX...
|
||||
lda (pPs),y
|
||||
jsr K.GetMemPtrA
|
||||
jsr K.GetMemPtr.A
|
||||
jsr K.NewPStr.YA
|
||||
bcs .9
|
||||
|
||||
@ -184,7 +185,7 @@ PS.CreateChild >LDYAI TskMgr.Table+S.PS
|
||||
|
||||
ldy #S.PS.hENV ...and hENV from parent PS
|
||||
lda (pPs),y
|
||||
jsr PS.DupEnvA
|
||||
jsr PS.DupEnv.A
|
||||
bcs .9
|
||||
|
||||
ldy #S.PS.hENV
|
||||
@ -232,7 +233,7 @@ PS.CreateChild >LDYAI TskMgr.Table+S.PS
|
||||
.9 rts
|
||||
*--------------------------------------
|
||||
PS.Init >LDYA K.CreateProcess.CmdLine
|
||||
jsr PS.Str2StrArrayYA
|
||||
jsr PS.Str2StrArray.YA
|
||||
bcs .9
|
||||
|
||||
phy save PTR to StrArray...
|
||||
@ -263,7 +264,7 @@ PS.Init >LDYA K.CreateProcess.CmdLine
|
||||
lda (ZPPtr4),y
|
||||
tay
|
||||
txa Y,A = DS.SIZE
|
||||
jsr K.GetMem0YA
|
||||
jsr K.GetMem0.YA
|
||||
bcs .9
|
||||
|
||||
txa
|
||||
@ -275,65 +276,65 @@ PS.Init >LDYA K.CreateProcess.CmdLine
|
||||
clc
|
||||
.9 rts
|
||||
*--------------------------------------
|
||||
* PS.FreeA
|
||||
* PS.Free.A
|
||||
* In : A = PID to free
|
||||
*--------------------------------------
|
||||
PS.FreeA jsr K.GetPSByIDA PS in ZPPtr1
|
||||
PS.Free.A jsr K.GetPSByID.A PS in ZPPtr1
|
||||
|
||||
ldy #S.PS.hCMDLINE
|
||||
jsr PS.FreeA.PsY
|
||||
jsr PS.Free.A.PsY
|
||||
|
||||
lda (ZPPtr1) get S.PS.F
|
||||
and #S.PS.F.ENV do we have to discard duplicated env & prefix ?
|
||||
beq .1
|
||||
|
||||
ldy #S.PS.hENV
|
||||
jsr PS.FreeA.PsY
|
||||
jsr PS.Free.A.PsY
|
||||
|
||||
ldy #S.PS.hPREFIX
|
||||
jsr PS.FreeA.PsY
|
||||
jsr PS.Free.A.PsY
|
||||
|
||||
.1 ldy #S.PS.hDS
|
||||
jsr PS.FreeA.PsY
|
||||
jsr PS.Free.A.PsY
|
||||
|
||||
ldy #S.PS.hCS
|
||||
jsr PS.FreeA.PsY
|
||||
jsr PS.Free.A.PsY
|
||||
|
||||
lda #0
|
||||
sta (ZPPtr1) Mark TSKSLOT as free
|
||||
clc
|
||||
PS.FreeA.RTS rts
|
||||
PS.Free.A.RTS rts
|
||||
*--------------------------------------
|
||||
PS.FreeA.PsY lda (ZPPtr1),y
|
||||
beq PS.FreeA.RTS
|
||||
jmp K.FreeMemA
|
||||
PS.Free.A.PsY lda (ZPPtr1),y
|
||||
beq PS.Free.A.RTS
|
||||
jmp K.FreeMem.A
|
||||
*--------------------------------------
|
||||
PS.Select ldy #S.PS.hCS
|
||||
lda (pPs),y
|
||||
|
||||
jsr K.GetMemPtrA
|
||||
jsr K.GetMemPtr.A
|
||||
>STYA pCode
|
||||
|
||||
ldy #S.PS.hDS
|
||||
lda (pPs),y
|
||||
beq .8
|
||||
|
||||
jsr K.GetMemPtrA
|
||||
jsr K.GetMemPtr.A
|
||||
>STYA pData
|
||||
|
||||
.8 clc
|
||||
rts
|
||||
*--------------------------------------
|
||||
* PS.DupEnvA
|
||||
* PS.DupEnv.A
|
||||
* In:
|
||||
* A = ENV hMem To Duplicate
|
||||
* Out:
|
||||
* A = hMem to new ENV
|
||||
*--------------------------------------
|
||||
PS.DupEnvA jsr K.GetMemPtrA
|
||||
PS.DupEnv.A jsr K.GetMemPtr.A
|
||||
>STYA ZPPtr1
|
||||
>LDYAI K.ENV.SIZE
|
||||
jsr K.GetMemYA
|
||||
jsr K.GetMem.YA
|
||||
bcs .9
|
||||
>STYA ZPPtr2
|
||||
|
||||
@ -353,7 +354,7 @@ PS.DupEnvA jsr K.GetMemPtrA
|
||||
clc
|
||||
.9 rts
|
||||
*/--------------------------------------
|
||||
* # Str2StrArrayYA
|
||||
* # Str2StrArray.YA
|
||||
* Convert a CSTR (e.g. : command Line) to a Array of CSTRs (Args[])
|
||||
* ## In:
|
||||
* Y,A = PTR to String
|
||||
@ -364,7 +365,7 @@ PS.DupEnvA jsr K.GetMemPtrA
|
||||
* CS : error
|
||||
* A = SYS error code
|
||||
*\--------------------------------------
|
||||
PS.Str2StrArrayYA
|
||||
PS.Str2StrArray.YA
|
||||
>STYA ZPPtr1
|
||||
lda (ZPPtr1) Get mem size STRLEN+1
|
||||
inc
|
||||
@ -372,7 +373,7 @@ PS.Str2StrArrayYA
|
||||
|
||||
lda #0
|
||||
|
||||
jsr K.GetMemYA
|
||||
jsr K.GetMem.YA
|
||||
bcs .9
|
||||
phx save hMem
|
||||
phy save PTR.LO
|
||||
|
@ -74,7 +74,7 @@ K.KernelRun jsr TSK.TskMgrRun
|
||||
lda A2osX.SCRNDEVS-1,x
|
||||
beq K.KernelRun No device claimed this screen
|
||||
|
||||
jsr K.GetDevByIDA x unmodified.....
|
||||
jsr K.GetDevByID.A x unmodified.....
|
||||
bcs K.KernelRun ???
|
||||
|
||||
stx A2osX.ASCREEN
|
||||
|
@ -12,8 +12,8 @@ AUTO 6
|
||||
* ## Out :
|
||||
*\--------------------------------------
|
||||
K.Stat jsr PFT.CheckPathSTK
|
||||
jsr STDIO.PullMLIPath
|
||||
>PULLW ZPPtr2
|
||||
>PULLW K.MLI.PARAMS+1
|
||||
>PULLW K.Stat.StoreY+1
|
||||
>MLICALL MLIGETFILEINFO
|
||||
bcs .9
|
||||
|
||||
@ -30,41 +30,44 @@ K.Stat jsr PFT.CheckPathSTK
|
||||
lda #0
|
||||
|
||||
.2 ldy #S.STAT.MODE
|
||||
sta (ZPPtr2),y
|
||||
jsr K.Stat.StoreY
|
||||
|
||||
ldx #K.Stat.DST-K.Stat.SRC
|
||||
|
||||
.3 ldy K.Stat.SRC-1,x
|
||||
lda K.MLI.PARAMS,y
|
||||
ldy K.Stat.DST-1,x
|
||||
sta (ZPPtr2),y
|
||||
jsr K.Stat.StoreY
|
||||
dex
|
||||
bne .3
|
||||
|
||||
ldy #S.STAT.SIZE
|
||||
lda #0
|
||||
sta (ZPPtr2),y
|
||||
jsr K.Stat.StoreY
|
||||
|
||||
iny
|
||||
|
||||
lda K.MLI.PARAMS+S.FILEINFO.BLOCKSUSED
|
||||
asl
|
||||
sta (ZPPtr2),y
|
||||
jsr K.Stat.StoreY
|
||||
|
||||
iny
|
||||
|
||||
lda K.MLI.PARAMS+S.FILEINFO.BLOCKSUSED+1
|
||||
rol
|
||||
sta (ZPPtr2),y
|
||||
jsr K.Stat.StoreY
|
||||
|
||||
iny
|
||||
|
||||
lda #0
|
||||
rol
|
||||
sta (ZPPtr2),y
|
||||
jsr K.Stat.StoreY
|
||||
|
||||
clc
|
||||
.9 rts
|
||||
|
||||
K.Stat.StoreY sta $ffff,y
|
||||
rts
|
||||
*--------------------------------------
|
||||
K.Stat.SRC .DA #S.FILEINFO.TYPE
|
||||
.DA #S.FILEINFO.AUXTYPE,#S.FILEINFO.AUXTYPE+1
|
||||
@ -73,7 +76,7 @@ K.Stat.DST .DA #S.STAT.P.TYPE
|
||||
.DA #S.STAT.P.AUXTYPE,#S.STAT.P.AUXTYPE+1
|
||||
.DA #S.STAT.BLOCKS,#S.STAT.BLOCKS+1
|
||||
*/-------------------------------------
|
||||
* # MKDir.YA
|
||||
* # MKDirYA
|
||||
* ## In:
|
||||
* Y,A = DIR name
|
||||
* ## Out:
|
||||
@ -82,7 +85,7 @@ K.Stat.DST .DA #S.STAT.P.TYPE
|
||||
* A = EC
|
||||
*\-------------------------------------
|
||||
K.MKDir.YA jsr PFT.CheckPathYA
|
||||
>STYA K.MLI.PARAMS+1
|
||||
jsr STDIO.SetMLIPathYA
|
||||
lda #S.FILEINFO.ACCESS.FULL
|
||||
sta K.MLI.PARAMS+S.FILEINFO.ACCESS
|
||||
lda #S.FILEINFO.TYPE.DIR
|
||||
@ -101,7 +104,7 @@ K.MKDir.YA jsr PFT.CheckPathYA
|
||||
>MLICALL MLICREATE
|
||||
rts
|
||||
*/--------------------------------------
|
||||
* # MkNodYA
|
||||
* # MkNod.YA
|
||||
* return a hFile for a given Device Name
|
||||
* ## IN:
|
||||
* Y,A=DevName
|
||||
@ -109,7 +112,7 @@ K.MKDir.YA jsr PFT.CheckPathYA
|
||||
* CC = OK, CS = ERROR
|
||||
* A = hFILE
|
||||
*\--------------------------------------
|
||||
K.MkNodYA jsr K.GetDevByNameYA Ptr1=NAME
|
||||
K.MkNod.YA jsr K.GetDevByName.YA Ptr1=NAME
|
||||
bcs .9
|
||||
>STYA pDev
|
||||
stx .1+1
|
||||
@ -125,7 +128,7 @@ K.MkNodYA jsr K.GetDevByNameYA Ptr1=NAME
|
||||
bcs .9
|
||||
|
||||
>LDYAI S.NODE.DEV
|
||||
jsr K.GetMem0YA
|
||||
jsr K.GetMem0.YA
|
||||
bcs .9
|
||||
|
||||
>STYA ZPPtr3 Ptr3=S.NODE
|
||||
@ -154,7 +157,7 @@ K.MkNodYA jsr K.GetDevByNameYA Ptr1=NAME
|
||||
sec
|
||||
rts
|
||||
*/--------------------------------------
|
||||
* # MkNodA
|
||||
* # MkNod.A
|
||||
* return a hFile for a given Socket
|
||||
* ## IN:
|
||||
* A=hSocket
|
||||
@ -163,9 +166,9 @@ K.MkNodYA jsr K.GetDevByNameYA Ptr1=NAME
|
||||
* X = hFILE
|
||||
* Y,A = pFILE
|
||||
*\--------------------------------------
|
||||
K.MkNodA sta .1+1
|
||||
K.MkNod.A sta .1+1
|
||||
>LDYAI S.NODE.SSOCK
|
||||
jsr K.GetMem0YA
|
||||
jsr K.GetMem0.YA
|
||||
bcs .9
|
||||
|
||||
>STYA ZPPtr1
|
||||
@ -189,13 +192,13 @@ K.MkNodA sta .1+1
|
||||
* A = hFILE
|
||||
*\--------------------------------------
|
||||
K.MKFIFO >LDYAI 256
|
||||
jsr K.GetMemYA
|
||||
jsr K.GetMem.YA
|
||||
bcs .99
|
||||
|
||||
stx .1+1 save FIFO buffer
|
||||
|
||||
>LDYAI S.NODE.FIFO
|
||||
jsr K.GetMem0YA
|
||||
jsr K.GetMem0.YA
|
||||
|
||||
bcs .9
|
||||
|
||||
@ -214,20 +217,11 @@ K.MKFIFO >LDYAI 256
|
||||
|
||||
.9 pha save error code
|
||||
lda .1+1 get back FIFO buffer
|
||||
jsr K.FreeMemA
|
||||
jsr K.FreeMem.A
|
||||
pla
|
||||
sec
|
||||
|
||||
.99 rts
|
||||
*/--------------------------------------
|
||||
* # ChMod
|
||||
* ## In:
|
||||
* PUSHW = MODE
|
||||
* PUSHW = PATH
|
||||
*\--------------------------------------
|
||||
K.ChMod
|
||||
sec
|
||||
rts
|
||||
*--------------------------------------
|
||||
MAN
|
||||
SAVE /A2OSX.SRC/SYS/KERNEL.S.STAT
|
||||
|
@ -53,7 +53,7 @@ K.FOpen jsr PFT.CheckPathSTK
|
||||
K.FOpen.9 rts
|
||||
|
||||
K.FOpen.10 >LDYAI S.NODE.REG
|
||||
jsr K.GetMem0YA
|
||||
jsr K.GetMem0.YA
|
||||
bcs K.FOpen.9
|
||||
|
||||
>STYA ZPPtr1
|
||||
@ -110,7 +110,7 @@ K.FOpen.10 >LDYAI S.NODE.REG
|
||||
|
||||
.98 pha save MLI error
|
||||
lda hFILE
|
||||
jsr K.FCloseA.1
|
||||
jsr K.FClose.A.1
|
||||
pla get back MLI error
|
||||
sec
|
||||
rts
|
||||
@ -120,19 +120,19 @@ K.FOpen.TYPE .BS 1
|
||||
K.FOpen.AUXTYPE .BS 2
|
||||
hFILE .BS 1
|
||||
*/--------------------------------------
|
||||
* # FCloseA
|
||||
* # FClose.A
|
||||
* Close a file
|
||||
* ## In :
|
||||
* A = hFILE
|
||||
* ## Out :
|
||||
*\--------------------------------------
|
||||
K.FCloseA jsr PFT.CheckNodeA
|
||||
K.FClose.A jsr PFT.CheckNodeA
|
||||
pha
|
||||
jsr K.GetMemPtrA
|
||||
jsr K.GetMemPtr.A
|
||||
>STYA ZPPtr1
|
||||
pla
|
||||
|
||||
K.FCloseA.1 sta K.FCloseA.2+1
|
||||
K.FClose.A.1 sta K.FClose.A.2+1
|
||||
ldy #S.NODE.REG.REF
|
||||
lda (ZPPtr1),y
|
||||
beq .1
|
||||
@ -141,35 +141,35 @@ K.FCloseA.1 sta K.FCloseA.2+1
|
||||
|
||||
.1 ldy #S.NODE.REG.IOBUF
|
||||
lda (ZPPtr1),y
|
||||
beq K.FCloseA.2
|
||||
jsr K.FreeMemA
|
||||
beq K.FClose.A.2
|
||||
jsr K.FreeMem.A
|
||||
|
||||
K.FCloseA.2 lda #$ff Self Modified
|
||||
jmp K.FreeMemA
|
||||
K.FClose.A.2 lda #$ff Self Modified
|
||||
jmp K.FreeMem.A
|
||||
*/--------------------------------------
|
||||
* # FReadA
|
||||
* # FRead.A
|
||||
* Read ONE byte from file
|
||||
* ## In :
|
||||
* A = hFILE
|
||||
* ## Out :
|
||||
* A = Byte Read
|
||||
*\--------------------------------------
|
||||
K.FReadA jsr PFT.CheckNodeA
|
||||
K.FRead.A jsr PFT.CheckNodeA
|
||||
ldx #MLIREAD
|
||||
bra K.FReadWrite.0
|
||||
*/--------------------------------------
|
||||
* # FWriteAY
|
||||
* # FWrite.AY
|
||||
* ## In:
|
||||
* A = hFILE
|
||||
* Y = char
|
||||
* # Out:
|
||||
* Y,A = Bytes Written
|
||||
*\--------------------------------------
|
||||
K.FWriteAY jsr PFT.CheckNodeA
|
||||
sty K.FWriteAY.Buf
|
||||
K.FWrite.AY jsr PFT.CheckNodeA
|
||||
sty K.FWrite.AY.Buf
|
||||
ldx #MLIWRITE
|
||||
K.FReadWrite.0 jsr STDIO.GetRefNum
|
||||
>LDYAI K.FWriteAY.Buf
|
||||
>LDYAI K.FWrite.AY.Buf
|
||||
>STYA K.MLI.PARAMS+2
|
||||
lda #1
|
||||
sta K.MLI.PARAMS+4
|
||||
@ -177,9 +177,9 @@ K.FReadWrite.0 jsr STDIO.GetRefNum
|
||||
lda #4 Param Count = 4 for MLIREAD & MLIWRITE
|
||||
jsr A2osX.MLICALL
|
||||
bcs .9
|
||||
lda K.FWriteAY.Buf
|
||||
lda K.FWrite.AY.Buf
|
||||
.9 rts
|
||||
K.FWriteAY.Buf .BS 1
|
||||
K.FWrite.AY.Buf .BS 1
|
||||
*/--------------------------------------
|
||||
* # FRead
|
||||
* Read bytes from file
|
||||
@ -215,11 +215,11 @@ K.FReadWrite.1 >PULLA
|
||||
>LDYA K.MLI.PARAMS+6
|
||||
.9 rts
|
||||
*/--------------------------------------
|
||||
* # FFlushA
|
||||
* # FFlush.A
|
||||
* ## In:
|
||||
* A = hFILE
|
||||
*\--------------------------------------
|
||||
K.FFlushA jsr PFT.CheckNodeA
|
||||
K.FFlush.A jsr PFT.CheckNodeA
|
||||
jsr STDIO.GetRefNum
|
||||
>MLICALL MLIFLUSH
|
||||
rts
|
||||
@ -285,21 +285,21 @@ K.FSeek jsr PFT.CheckNodeSTK
|
||||
*--------------------------------------
|
||||
K.FSeek.OFFSET .BS 4
|
||||
*/--------------------------------------
|
||||
* # FTellA
|
||||
* # FTell.A
|
||||
* ## In:
|
||||
* A = hFILE
|
||||
* ## Out:
|
||||
* Y,A,X = Offset
|
||||
*\--------------------------------------
|
||||
K.FTellA jsr PFT.CheckNodeA
|
||||
K.FTellA.1 jsr STDIO.GetRefNum
|
||||
K.FTell.A jsr PFT.CheckNodeA
|
||||
K.FTell.A.1 jsr STDIO.GetRefNum
|
||||
>MLICALL MLIGETMARK
|
||||
bcs .9
|
||||
>LDYA K.MLI.PARAMS+2
|
||||
ldx K.MLI.PARAMS+4
|
||||
.9 rts
|
||||
*/--------------------------------------
|
||||
* # FEOFA
|
||||
* # FEOF.A
|
||||
* ## In:
|
||||
* A = hFILE
|
||||
* ## Out:
|
||||
@ -308,32 +308,32 @@ K.FTellA.1 jsr STDIO.GetRefNum
|
||||
* A !=0 NOT EOF
|
||||
* CS :
|
||||
*\--------------------------------------
|
||||
K.FEOFA jsr PFT.CheckNodeA
|
||||
K.FEOF.A jsr PFT.CheckNodeA
|
||||
jsr STDIO.GetRefNum
|
||||
jsr K.FTellA.1
|
||||
jsr K.FTell.A.1
|
||||
bcs .9
|
||||
>STYA K.FEOFA.MARK
|
||||
stx K.FEOFA.MARK+2
|
||||
>STYA K.FEOF.A.MARK
|
||||
stx K.FEOF.A.MARK+2
|
||||
|
||||
>MLICALL MLIGETEOF
|
||||
bcs .9
|
||||
|
||||
sec
|
||||
lda K.MLI.PARAMS+2
|
||||
sbc K.FEOFA.MARK
|
||||
sbc K.FEOF.A.MARK
|
||||
bne .8
|
||||
lda K.MLI.PARAMS+3
|
||||
sbc K.FEOFA.MARK+1
|
||||
sbc K.FEOF.A.MARK+1
|
||||
bne .8
|
||||
lda K.MLI.PARAMS+4
|
||||
sbc K.FEOFA.MARK+2
|
||||
sbc K.FEOF.A.MARK+2
|
||||
.8 clc
|
||||
.9 rts
|
||||
K.FEOFA.MARK .BS 3
|
||||
K.FEOF.A.MARK .BS 3
|
||||
*/--------------------------------------
|
||||
* # RemoveYA
|
||||
* # Remove.YA
|
||||
*\--------------------------------------
|
||||
K.RemoveYA jsr PFT.CheckPathYA
|
||||
K.Remove.YA jsr PFT.CheckPathYA
|
||||
jsr STDIO.PullMLIPath
|
||||
>MLICALL MLIDESTROY
|
||||
rts
|
||||
@ -366,7 +366,9 @@ K.Rename jsr PFT.CheckPathSTK
|
||||
rts
|
||||
*--------------------------------------
|
||||
STDIO.PullMLIPath
|
||||
>PULLW .1+1
|
||||
>PULLYA
|
||||
STDIO.SetMLIPathYA
|
||||
>STYA .1+1
|
||||
|
||||
ldy #0
|
||||
|
||||
@ -393,14 +395,14 @@ STDIO.SetIOBUF >PUSHWI 1024 get a ProDOS IOBUF
|
||||
sta (ZPPtr1),y
|
||||
.9 rts
|
||||
*--------------------------------------
|
||||
STDIO.GetRefNum jsr K.GetMemPtrA
|
||||
STDIO.GetRefNum jsr K.GetMemPtr.A
|
||||
>STYA ZPPtr1
|
||||
ldy #S.NODE.REG.REF
|
||||
lda (ZPPtr1),y
|
||||
sta K.MLI.PARAMS+1
|
||||
rts
|
||||
*/--------------------------------------
|
||||
* # FPutCAY
|
||||
* # FPutC.AY
|
||||
* Print A (char) to File
|
||||
* ## In:
|
||||
* A : char to print
|
||||
@ -408,59 +410,59 @@ STDIO.GetRefNum jsr K.GetMemPtrA
|
||||
* ## Out:
|
||||
* CC = success
|
||||
*\--------------------------------------
|
||||
K.FPutCAY sta K.PutC.Char
|
||||
K.FPutC.AY sta K.PutC.Char
|
||||
sty K.PutC.Node
|
||||
tya
|
||||
phy
|
||||
bne K.PutCharA.1
|
||||
K.PutCharA.8 ply
|
||||
bne K.PutChar.A.1
|
||||
K.PutChar.A.8 ply
|
||||
clc
|
||||
rts
|
||||
*/--------------------------------------
|
||||
* # PutCharA
|
||||
* # PutChar.A
|
||||
* Print A (char) to StdOut
|
||||
* ## In:
|
||||
* A : char to print
|
||||
* ## Out:
|
||||
* CC = success
|
||||
*\--------------------------------------
|
||||
K.PutCharA sta K.PutC.Char
|
||||
K.PutChar.A sta K.PutC.Char
|
||||
phy
|
||||
ldy #S.PS.hStdOut
|
||||
lda (pPs),y
|
||||
beq K.PutCharA.8 NUL
|
||||
beq K.PutChar.A.8 NUL
|
||||
|
||||
phx
|
||||
|
||||
K.PutCharA.1 sta K.PutC.Node
|
||||
jsr K.GetMemPtrA
|
||||
K.PutChar.A.1 sta K.PutC.Node
|
||||
jsr K.GetMemPtr.A
|
||||
>STYA pDev
|
||||
|
||||
ldy #S.NODE.T
|
||||
lda (pDev),y
|
||||
asl
|
||||
tax
|
||||
jsr K.PutCharA.Jmp
|
||||
jsr K.PutChar.A.Jmp
|
||||
|
||||
plx
|
||||
ply
|
||||
rts
|
||||
*--------------------------------------
|
||||
K.PutCharA.Jmp jmp (.1,x)
|
||||
.1 .DA K.PutCharA.REG
|
||||
K.PutChar.A.Jmp jmp (.1,x)
|
||||
.1 .DA K.PutChar.A.REG
|
||||
.DA STDIO.IOERR DIR
|
||||
.DA K.PutCharA.CDEV
|
||||
.DA K.PutChar.A.CDEV
|
||||
.DA STDIO.IOERR BDEV
|
||||
.DA STDIO.IOERR LNK
|
||||
.DA STDIO.IOERR DSOCK
|
||||
.DA K.PutCharA.SSOCK
|
||||
.DA K.PutCharA.FIFO
|
||||
.DA K.PutChar.A.SSOCK
|
||||
.DA K.PutChar.A.FIFO
|
||||
*--------------------------------------
|
||||
K.PutCharA.REG lda K.PutC.Node
|
||||
K.PutChar.A.REG lda K.PutC.Node
|
||||
ldy K.PutC.Char
|
||||
jmp K.FWriteAY
|
||||
jmp K.FWrite.AY
|
||||
*--------------------------------------
|
||||
K.PutCharA.CDEV ldy #S.NODE.DEV.JMP
|
||||
K.PutChar.A.CDEV ldy #S.NODE.DEV.JMP
|
||||
lda (pDev),y
|
||||
sta .1+1
|
||||
iny
|
||||
@ -470,9 +472,9 @@ K.PutCharA.CDEV ldy #S.NODE.DEV.JMP
|
||||
ldx #DEVMGR.WRITE
|
||||
.1 jmp $ffff
|
||||
*--------------------------------------
|
||||
K.PutCharA.SSOCK
|
||||
K.PutChar.A.SSOCK
|
||||
lda (pDev) #S.NODE.HANDLER
|
||||
jsr K.GetMemPtrA
|
||||
jsr K.GetMemPtr.A
|
||||
>STYA .1
|
||||
|
||||
ldy #S.NODE.SSOCK.HSKT
|
||||
@ -484,7 +486,7 @@ K.PutCharA.SSOCK
|
||||
tax Function Offset for write
|
||||
.1 jmp $ffff
|
||||
*--------------------------------------
|
||||
K.PutCharA.FIFO ldy #S.NODE.FIFO.S
|
||||
K.PutChar.A.FIFO ldy #S.NODE.FIFO.S
|
||||
lda (pDev),y
|
||||
beq .9 Remote PS did not opened yet the pipe
|
||||
cmp #S.NODE.FIFO.S.Closed
|
||||
@ -492,7 +494,7 @@ K.PutCharA.FIFO ldy #S.NODE.FIFO.S
|
||||
|
||||
ldy #S.NODE.FIFO.hMem
|
||||
lda (pDev),y
|
||||
jsr K.GetMemPtrA
|
||||
jsr K.GetMemPtr.A
|
||||
>STYA .1+2
|
||||
|
||||
ldy #S.NODE.FIFO.Head
|
||||
@ -531,7 +533,7 @@ K.PutC.Node .BS 1
|
||||
K.GetChar ldy #S.PS.hStdIn
|
||||
lda (pPs),y
|
||||
*/--------------------------------------
|
||||
* # GetCA
|
||||
* # GetC.A
|
||||
* Get char from File
|
||||
* ## In:
|
||||
* A = hFILE
|
||||
@ -539,9 +541,9 @@ K.GetChar ldy #S.PS.hStdIn
|
||||
* CC = success
|
||||
* A = char
|
||||
*\--------------------------------------
|
||||
K.GetCA sta K.PutC.Node
|
||||
K.GetC.A sta K.PutC.Node
|
||||
|
||||
jsr K.GetMemPtrA
|
||||
jsr K.GetMemPtr.A
|
||||
>STYA pDev
|
||||
|
||||
ldy #S.NODE.T
|
||||
@ -560,7 +562,7 @@ K.GetCA sta K.PutC.Node
|
||||
.DA K.GetC.FIFO
|
||||
*--------------------------------------
|
||||
K.GetC.REG lda K.PutC.Node
|
||||
jmp K.FReadA
|
||||
jmp K.FRead.A
|
||||
*--------------------------------------
|
||||
K.GetC.CDEV ldx #DEVMGR.READ
|
||||
ldy #S.NODE.DEV.JMP
|
||||
@ -572,7 +574,7 @@ K.GetC.CDEV ldx #DEVMGR.READ
|
||||
.1 jmp $ffff
|
||||
*--------------------------------------
|
||||
K.GetC.SSOCK lda (pDev) #S.NODE.HANDLER
|
||||
jsr K.GetMemPtrA
|
||||
jsr K.GetMemPtr.A
|
||||
>STYA .1
|
||||
|
||||
ldy #S.NODE.SSOCK.READ
|
||||
@ -596,14 +598,14 @@ K.GetC.FIFO
|
||||
*\--------------------------------------
|
||||
K.FPutS
|
||||
*/--------------------------------------
|
||||
* # PutSYA
|
||||
* # PutS.YA
|
||||
* Write String to StdOut
|
||||
* ## In:
|
||||
* Y,A : CPtr
|
||||
* ## Out:
|
||||
* CC = success
|
||||
*\--------------------------------------
|
||||
K.PutSYA
|
||||
K.PutS.YA
|
||||
*/--------------------------------------
|
||||
* # FGetS
|
||||
* Read String From FILE
|
||||
@ -615,14 +617,14 @@ K.PutSYA
|
||||
*\--------------------------------------
|
||||
K.FGetS
|
||||
*/--------------------------------------
|
||||
* # GetSYA
|
||||
* # GetS.YA
|
||||
* Read String From StdIn
|
||||
* ## In:
|
||||
* Y,A : CPtr
|
||||
* ## Out:
|
||||
* CC = success
|
||||
*\--------------------------------------
|
||||
K.GetSYA
|
||||
K.GetS.YA
|
||||
bra *
|
||||
*--------------------------------------
|
||||
STDIO.IOERR lda #MLI.ERR.IO
|
||||
@ -1122,7 +1124,7 @@ PrintF.SS ldy #$00 PSTR
|
||||
.8 clc
|
||||
.9 rts
|
||||
*--------------------------------------
|
||||
Printf.Cout jmp K.PutCharA
|
||||
Printf.Cout jmp K.PutChar.A
|
||||
|
||||
Printf.Cout.Ptr sta $ffff Self modified
|
||||
*--------------------------------------
|
||||
|
@ -21,15 +21,15 @@ K.Time.YA >STYA ZPPtr2
|
||||
>MLICALL MLIGETTIME
|
||||
>LDYAI DATELO
|
||||
>STYA ZPPtr1
|
||||
bra K.PTime2Time.1
|
||||
bra TIME.PTime2TimePtr1Ptr2
|
||||
*--------------------------------------
|
||||
* In :
|
||||
* PULLW = Src PDATE/TIME (DWORD)
|
||||
* PULLW = Dst PTR To S.TIME
|
||||
*--------------------------------------
|
||||
K.PTime2Time jsr PullPtr1Ptr2
|
||||
|
||||
K.PTime2Time.1 ldy #1
|
||||
TIME.PTime2TimePtr1Ptr2
|
||||
ldy #1
|
||||
lda (ZPPtr1),y Get Year
|
||||
lsr C is high bit of month
|
||||
ldy #S.Time.YEAR
|
||||
|
@ -24,7 +24,7 @@ TSK.TskMgrRun >LDYAI TskMgr.Table+S.PS skip PS 0
|
||||
|
||||
ldy #S.PS.CPID
|
||||
lda (pPs),y
|
||||
jsr K.GetPSByIDA
|
||||
jsr K.GetPSByID.A
|
||||
bcc .7 yes, running....
|
||||
|
||||
lda (pPs) get S.PS.F
|
||||
@ -57,7 +57,7 @@ TSK.TskMgrRun >LDYAI TskMgr.Table+S.PS skip PS 0
|
||||
pha save RC
|
||||
ldy #S.PS.PPID Notify Parent Process for exit code...
|
||||
lda (pPs),y
|
||||
jsr K.GetPSByIDA will set ZPPtr1 if success
|
||||
jsr K.GetPSByID.A will set ZPPtr1 if success
|
||||
bcs .5 parent is dead.....skipping...
|
||||
|
||||
lda (ZPPtr1) Parent PS is HOLD?
|
||||
@ -79,7 +79,7 @@ TSK.TskMgrRun >LDYAI TskMgr.Table+S.PS skip PS 0
|
||||
|
||||
ldy #S.PS.PID
|
||||
lda (pPs),y
|
||||
jsr PS.FreeA
|
||||
jsr PS.Free.A
|
||||
|
||||
.7 lda pPs
|
||||
clc
|
||||
|
@ -31,7 +31,6 @@ A2osX.D1 .PH $D000
|
||||
.INB /A2OSX.SRC/SYS/KERNEL.S.STDIO
|
||||
.INB /A2OSX.SRC/SYS/KERNEL.S.STAT
|
||||
.INB /A2OSX.SRC/SYS/KERNEL.S.DIRENT
|
||||
.INB /A2OSX.SRC/SYS/KERNEL.S.PFT
|
||||
.INB /A2OSX.SRC/SYS/KERNEL.S.BIN
|
||||
.EP
|
||||
A2osX.D2 .PH $D000
|
||||
@ -53,6 +52,7 @@ A2osX.E0 .PH $E000
|
||||
.INB /A2OSX.SRC/SYS/KERNEL.S.IRQ
|
||||
.INB /A2OSX.SRC/SYS/KERNEL.S.MEM
|
||||
.INB /A2OSX.SRC/SYS/KERNEL.S.FIO
|
||||
.INB /A2OSX.SRC/SYS/KERNEL.S.PFT
|
||||
.INB /A2OSX.SRC/SYS/KERNEL.S.D01
|
||||
.EP
|
||||
A2osX.E0.E .EQ *
|
||||
@ -61,13 +61,13 @@ A2osX.E0.E .EQ *
|
||||
A2osX.D1.S .EQ A2osX.D2-A2osX.D1
|
||||
A2osX.D2.S .EQ A2osX.E0-A2osX.D2
|
||||
A2osX.E0.S .EQ A2osX.E0.E-A2osX.E0
|
||||
.LIST OFF
|
||||
.DO A2osX.D2.S>$1000
|
||||
ERROR:BNK1 too big
|
||||
.DO A2osX.D1.S>$1000
|
||||
* ERROR:BNK1 too big
|
||||
.FIN
|
||||
.DO A2osX.D2.S>$1000
|
||||
ERROR:BNK2 too big
|
||||
* ERROR:BNK2 too big
|
||||
.FIN
|
||||
.LIST OFF
|
||||
MAN
|
||||
SAVE /A2OSX.SRC/SYS/KERNEL.S
|
||||
ASM
|
||||
|
Loading…
x
Reference in New Issue
Block a user