Kernel version 0.8 : BUGFIX in CD: not processing .. correctly, missing ending / when changing to another volume. BUGFIX in LS:File count missing one.

Additional Kernel API Documentation
LIBSTR deleted, now Kernel API
This commit is contained in:
Rémy GIBERT 2016-10-24 17:54:43 +02:00
parent 4a34db55ed
commit fe5e44dc5a
95 changed files with 1230 additions and 1966 deletions

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -162,14 +162,14 @@ MLIREAD00 .DA #4
MLICLOSE00 .DA #1
.BS 1
*--------------------------------------
SYSKERNEL >PSTRING "SYS/KERNEL"
SYSKERNEL >PSTR "SYS/KERNEL"
*--------------------------------------
MSG.INIT1 >PSTRING "A2osX[Stage1]:Init"
MSG.SETPREFIXOK >PSTRING "Set Prefix OK"
MSG.SETPREFIXKO >PSTRING "Insert Vol:"
MSG.KLOADING >PSTRING "Loading Kernel..."
MSG.KLOADING.KO >PSTRING "Error While Loading Kernel."
MSG.INIT1OK >PSTRING "A2osX[Stage1]:Complete."
MSG.INIT1 >PSTR "A2osX[Stage1]:Init"
MSG.SETPREFIXOK >PSTR "Set Prefix OK"
MSG.SETPREFIXKO >PSTR "Insert Vol:"
MSG.KLOADING >PSTR "Loading Kernel..."
MSG.KLOADING.KO >PSTR "Error While Loading Kernel."
MSG.INIT1OK >PSTR "A2osX[Stage1]:Complete."
*--------------------------------------
.BS $1300-*
.EP

View File

@ -361,25 +361,25 @@ LoadKM ldx Boot.Prefix
*--------------------------------------
.INB X.PRINTF.S
*--------------------------------------
MSG.INIT0 >CSTRING "A2osX[Stage0]:Init\n"
MSG.SYSMEM >CSTRING "Checking System Memory..."
MSG.SYSMEM.OK >CSTRING "128k Detected.\n"
MSG.SYSMEM.KO >CSTRING "A2osX Requires At Least 128k Memory.\n"
MSG.INIT0 >CSTR "A2osX[Stage0]:Init\n"
MSG.SYSMEM >CSTR "Checking System Memory..."
MSG.SYSMEM.OK >CSTR "128k Detected.\n"
MSG.SYSMEM.KO >CSTR "A2osX Requires At Least 128k Memory.\n"
MSG.CPU >CSTRING "Checking CPU..."
MSG.CPU.OK >CSTRING "65C02 CPU (or higher) Detected.\n"
MSG.CPU.KO >CSTRING "A2osX Requires At Least A 65C02 CPU.\n"
MSG.CPU >CSTR "Checking CPU..."
MSG.CPU.OK >CSTR "65C02 CPU (or higher) Detected.\n"
MSG.CPU.KO >CSTR "A2osX Requires At Least A 65C02 CPU.\n"
MSG.RAMDRV >CSTRING "Checking ProDOS RamDrive..."
MSG.RAMDRV.OK >CSTRING "Successfully Disabled.\n"
MSG.RAMDRV.KO0 >CSTRING "Not Detected.\n"
MSG.RAMDRV.KO1 >CSTRING "Uninstall Failed !!!\n"
MSG.RAMDRV >CSTR "Checking ProDOS RamDrive..."
MSG.RAMDRV.OK >CSTR "Successfully Disabled.\n"
MSG.RAMDRV.KO0 >CSTR "Not Detected.\n"
MSG.RAMDRV.KO1 >CSTR "Uninstall Failed !!!\n"
MSG.BOOTPREFIX >CSTRING "Boot Prefix:"
MSG.BOOTPREFIX >CSTR "Boot Prefix:"
MSG.KMENUM >CSTRING "Looking For Kernel Modules...\n"
MSG.KMLOAD >CSTRING "***Loading KM : "
MSG.INIT0OK >CSTRING "A2osX[Stage0]:Complete.\n"
MSG.KMENUM >CSTR "Looking For Kernel Modules...\n"
MSG.KMLOAD >CSTR "***Loading KM : "
MSG.INIT0OK >CSTR "A2osX[Stage0]:Complete.\n"
*--------------------------------------
MLIGETPREFIX01 .DA #1
.DA Boot.Prefix
@ -415,8 +415,8 @@ MLIQUIT01 .DA #4
.DA #0
.DA 0
*--------------------------------------
SYS >PSTRING "SYS/"
KM.PREFIX >PSTRING "KM."
SYS >PSTR "SYS/"
KM.PREFIX >PSTR "KM."
*--------------------------------------
.EP
*--------------------------------------

View File

@ -44,19 +44,19 @@ L.MSG2 .DA MSG2
.DA 0
*--------------------------------------
CS.INIT >LDYA L.LIBTCPIP
>SYSCALL SYS.LoadLibYA
>SYSCALL LoadLibYA
sta hLIBTCPIP
>SYSCALL SYS.GetArgC
>SYSCALL GetArgC
cmp #1
beq CS.INIT.DUMP
>PUSHW L.DST.IP
>PUSHW L.SSCANF.IP
lda #1
>SYSCALL SYS.GetArgA
>SYSCALL GetArgA
>PUSHYA
>SYSCALL SYS.SSCANF
>SYSCALL SSCANF
bcs .9
@ -75,7 +75,7 @@ CS.INIT >LDYA L.LIBTCPIP
CS.INIT.DUMP >LIBCALL hLIBTCPIP,LIBTCPIP.ARP.GETCACHE
>STYA ZPPTR1
>LDYA L.MSG0
>SYSCALL SYS.PRINTFYA
>SYSCALL PRINTFYA
ldx #K.ARPCACHE.SIZE
@ -103,7 +103,7 @@ CS.INIT.DUMP >LIBCALL hLIBTCPIP,LIBTCPIP.ARP.GETCACHE
>LDYA L.MSG1
phx
>SYSCALL SYS.PRINTFYA
>SYSCALL PRINTFYA
plx
.4 lda ZPPTR1
@ -132,7 +132,7 @@ CS.RUN jsr Init.Timeout
jsr Wait.TimeOut
bcs .9
>SYSCALL SYS.Sleep
>SYSCALL Sleep
bra .1
.2 ldx #5
@ -146,7 +146,7 @@ CS.RUN jsr Init.Timeout
bpl .4
>LDYA L.MSG2
>SYSCALL SYS.PRINTFYA
>SYSCALL PRINTFYA
lda #0
@ -189,7 +189,7 @@ CS.DOEVENT lda (pEvent)
rts
*--------------------------------------
CS.QUIT lda hLIBTCPIP
>SYSCALL SYS.UnloadLibA
>SYSCALL UnloadLibA
clc
rts
*--------------------------------------
@ -209,11 +209,11 @@ Wait.TimeOut sec
.9 rts
*--------------------------------------
CS.END
LIBTCPIP >PSTRING "libtcpip.o"
SSCANF.IP >PSTRING "%d.%d.%d.%d"
MSG0 >CSTRING "STS TTL MAC Address IP Address\n"
MSG1 >CSTRING "$%h %5D %h:%h:%h:%h:%h:%h %d.%d.%d.%d\n"
MSG2 >CSTRING "%d.%d.%d.%d is at %h:%h:%h:%h:%h:%h\n"
LIBTCPIP >PSTR "libtcpip.o"
SSCANF.IP >PSTR "%d.%d.%d.%d"
MSG0 >CSTR "STS TTL MAC Address IP Address\n"
MSG1 >CSTR "$%h %5D %h:%h:%h:%h:%h:%h %d.%d.%d.%d\n"
MSG2 >CSTR "%d.%d.%d.%d is at %h:%h:%h:%h:%h:%h\n"
*--------------------------------------
DS.START
hLIBTCPIP .BS 1

View File

@ -212,7 +212,7 @@ DIR.IN jsr SRC.GetArg
bcs .9
>LDYA L.SRC.BUFFER
>SYSCALL SYS.NewPStrYA
>SYSCALL NewPStrYA
phx
@ -222,7 +222,7 @@ DIR.IN jsr SRC.GetArg
pha
txa
>SYSCALL SYS.FreeMemA
>SYSCALL FreeMemA
pla
plp

View File

@ -7,7 +7,7 @@ AUTO 6
*---------------------------------------
FIO.Init ldy #S.PS.hCMDLINE
lda (pPS),y
>SYSCALL SYS.GetMemPtrA
>SYSCALL GetMemPtrA
bcs .99
>STYA ZPPtr1
lda (ZPPtr1)
@ -35,7 +35,7 @@ FIO.Init ldy #S.PS.hCMDLINE
.99 rts
*---------------------------------------
FIO.OpenFileA sta FIO.hFileName
>SYSCALL SYS.GetMemPtrA
>SYSCALL GetMemPtrA
>STYA ZPPtr1
stz FIO.hFullPath
@ -49,11 +49,11 @@ FIO.OpenFileA sta FIO.hFileName
ldy #S.PS.hPREFIX
lda (pPs),y
>PUSHA
>SYSCALL SYS.PStrCat
>SYSCALL PStrCat
sta FIO.hFullPath
sta FIO.hFileName
>SYSCALL SYS.GetMemPtrA
>SYSCALL GetMemPtrA
>STYA ZPPtr1
.1 >PUSHW ZPPtr1
@ -70,8 +70,8 @@ FIO.OpenFileA sta FIO.hFileName
bra FIO.OpenFileA.Exit
.10 lda FIO.hFileName
>SYSCALL SYS.GetMemPtrA
>SYSCALL SYS.MLIOpenYA
>SYSCALL GetMemPtrA
>SYSCALL MLIOpenYA
bcs .99
pha
@ -92,8 +92,8 @@ FIO.OpenFileA sta FIO.hFileName
sta (pData),y
lda FIO.hFileName
>SYSCALL SYS.GetMemPtrA
>SYSCALL SYS.MLIGetFileInfoYA
>SYSCALL GetMemPtrA
>SYSCALL MLIGetFileInfoYA
bcs .99
>STYA ZPPtr1
@ -127,7 +127,7 @@ FIO.OpenFileA sta FIO.hFileName
tay
lda (pData),y
>PUSHA
>SYSCALL SYS.MLINewLine
>SYSCALL MLINewLine
bcs .99
.8 ldy #SRC.COUNT
@ -144,7 +144,7 @@ FIO.OpenFileA.Exit php
pha
lda FIO.hFullPath
beq .1
>SYSCALL SYS.FreeMemA
>SYSCALL FreeMemA
.1 pla
plp
rts
@ -249,7 +249,7 @@ FIO.ReadFromFile ldy #SRC.COUNT
tay
lda (pData),y
>PUSHA
>SYSCALL SYS.MLIRead
>SYSCALL MLIRead
bcs .9
tax $100 byte transfered ?
beq .9
@ -265,7 +265,7 @@ FIO.FileClose ldy #SRC.COUNT
adc #SRC.hREFNUMS-1
tay
lda (pData),y
>SYSCALL SYS.MLICloseA
>SYSCALL MLICloseA
ldy #SRC.COUNT
lda (pData),y
@ -273,7 +273,7 @@ FIO.FileClose ldy #SRC.COUNT
adc #SRC.hBUFFERS-1
tay
lda (pData),y
>SYSCALL SYS.FreeMemA
>SYSCALL FreeMemA
ldy #SRC.COUNT
lda (pData),y
@ -286,7 +286,7 @@ FIO.FileClose ldy #SRC.COUNT
FIO.LOAD.ASM.T ldy #ASM.T.hMem
lda (pData),y
beq .1
>SYSCALL SYS.FreeMemA
>SYSCALL FreeMemA
ldy #ASM.T.hMem
lda #0
sta (pData),y
@ -299,7 +299,7 @@ FIO.LOAD.ASM.T ldy #ASM.T.hMem
>PUSHBI 6 S.FILEINFO.TYPE.BIN
>PUSHBI SYS.FOPEN.R
>PUSHW L.ASM.T.FILENAME
>SYSCALL SYS.LoadFile
>SYSCALL LoadFile
bcs .9
txa

View File

@ -32,14 +32,14 @@ SRC.PrintLineErr ldx #0
.1 lda UsrBuf256,x
beq .2
phx
>SYSCALL SYS.COutA
>SYSCALL COutA
plx
inx
bcc .1
rts
.2 lda #13
>SYSCALL SYS.COutA
>SYSCALL COutA
bcs .9
ldx #0
@ -50,19 +50,19 @@ SRC.PrintLineErr ldx #0
beq .4
phx
lda #'-'
>SYSCALL SYS.COutA
>SYSCALL COutA
plx
bcs .9
bra .3
.4 lda #'^'
phx
>SYSCALL SYS.COutA
>SYSCALL COutA
plx
bcs .9
.5 lda #13
>SYSCALL SYS.COutA
>SYSCALL COutA
.9 rts
*---------------------------------------
SRC.ParseLine ldx UsrBuf256
@ -264,7 +264,7 @@ SRC.ParseLine.OpCode
.11 ldy #ASM.T.hMem
lda (pData),y
>SYSCALL SYS.GetMemPtrA
>SYSCALL GetMemPtrA
>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 SYS.COutA
>SYSCALL COutA
plx
cpx SRC.AM.StrBuf
bne .21
lda #13
>SYSCALL SYS.COutA
>SYSCALL COutA
.20 ldy #ASM.PC

View File

@ -52,7 +52,7 @@ SYM.Quit ldy #SYM.pLastGBlock
adc #SYM.hGBlocks
tay
lda (pData),y
>SYSCALL SYS.FreeMemA
>SYSCALL FreeMemA
ldy #SYM.pLastGBlock
lda (pData),y
dec
@ -121,7 +121,7 @@ SYM.Dump >PUSHW L.MSG.SYMBOLS
rts
.5 lda #13
>SYSCALL SYS.COutA
>SYSCALL COutA
ldy #SYM.DumpCount
lda (pData),y
@ -303,7 +303,7 @@ SYM.GetGBlockA clc
tay
lda (pData),y
phx
>SYSCALL SYS.GetMemPtrA
>SYSCALL GetMemPtrA
>STYA ZPBlockPtr
plx
rts
@ -333,7 +333,7 @@ SYM.NewGBlock phx
phy
SYM.NewGBlock2 >PUSHWI 256
>PUSHBI S.MEM.F.INIT0
>SYSCALL SYS.GetMem
>SYSCALL GetMem
bcs .9
>STYA ZPBlockPtr

View File

@ -152,16 +152,16 @@ J.EXP.OP .DA EXP.OP.EOR ^!|&<=>+-*/
.DA 0
*---------------------------------------
CS.INIT >LDYA L.LIBSTR
>SYSCALL SYS.LoadLibYA
>SYSCALL LoadLibYA
sta hLIBSTR
>SYSCALL SYS.GetArgC
>SYSCALL GetArgC
cmp #1
beq .99 No arg, new file....
lda #1
>SYSCALL SYS.GetArgA
>SYSCALL SYS.GetFullPathYA
>SYSCALL GetArgA
>SYSCALL GetFullPathYA
txa
ldy #SRC.hFILENAME
@ -305,16 +305,16 @@ CS.QUIT jsr FIO.FileClose
ldy #ASM.T.hMem
lda (pData),y
beq .1
>SYSCALL SYS.FreeMemA
>SYSCALL FreeMemA
.1 ldy #SRC.hFILENAME
lda (pData),y
beq .8
>SYSCALL SYS.FreeMemA
>SYSCALL FreeMemA
.8 lda hLIBSTR
>SYSCALL SYS.UnloadLibA
>SYSCALL UnloadLibA
clc
rts
*---------------------------------------
@ -422,21 +422,21 @@ T.LI .HS 03
.AS "OFF"
.HS 00
*---------------------------------------
LIBSTR >PSTRING "libstr.o"
MSG.HELP >CSTRING "A2osX-Macro Assembler (S-C MASM 3.0 Based)\nUsage : ASM <src file> [type TXT ($04) or S-C/BAS ($FA)]\n"
MSG.PASS >CSTRING "Pass:#%d\n"
MSG.SRC.FILE >CSTRING "Reading SRC File:%S\n"
MSG.OBJ.FILE >CSTRING "Writing OBJ File:%S, Type=%02x\n"
MSG.T.FILE >CSTRING "Loading CPU File:%S\n"
MSG.SRCLINE >CSTRING "%H: %05D-%s\n"
MSG.ERROR >CSTRING "%05D-Error:$%h\n"
MSG.SYMBOLS >CSTRING "Symbol Table:\n"
MSG.GSYMBOL >CSTRING "$%H%H:%S"
MSG.LSYMBOL >CSTRING " .%d:+$%h"
MSG.SUMMARY >CSTRING "\nEnd Of Assembly.\n"
SRC.AM.RESERVED >PSTRING "[](),"
SRC.MOD.RESERVED >PSTRING "#/<>"
SRC.EXP.RESERVED >PSTRING "^!|&<=>+-*/"
LIBSTR >PSTR "libstr.o"
MSG.HELP >CSTR "A2osX-Macro Assembler (S-C MASM 3.0 Based)\nUsage : ASM <src file> [type TXT ($04) or S-C/BAS ($FA)]\n"
MSG.PASS >CSTR "Pass:#%d\n"
MSG.SRC.FILE >CSTR "Reading SRC File:%S\n"
MSG.OBJ.FILE >CSTR "Writing OBJ File:%S, Type=%02x\n"
MSG.T.FILE >CSTR "Loading CPU File:%S\n"
MSG.SRCLINE >CSTR "%H: %05D-%s\n"
MSG.ERROR >CSTR "%05D-Error:$%h\n"
MSG.SYMBOLS >CSTR "Symbol Table:\n"
MSG.GSYMBOL >CSTR "$%H%H:%S"
MSG.LSYMBOL >CSTR " .%d:+$%h"
MSG.SUMMARY >CSTR "\nEnd Of Assembly.\n"
SRC.AM.RESERVED >PSTR "[](),"
SRC.MOD.RESERVED >PSTR "#/<>"
SRC.EXP.RESERVED >PSTR "^!|&<=>+-*/"
ASM.T.DEFAULT .AS ".T.6502"
ASM.T.FILENAMELEN .BS 1
ASM.T.FILENAME .BS 65

View File

@ -47,7 +47,7 @@ CS.INIT ldy #S.PS.hARGS
>PUSHA
>PUSHBI $20 Push SEP=' '
>PUSHBI 0 Push 0 for getting CMD & ARGS
>SYSCALL SYS.PStrGetTkn
>SYSCALL PStrGetTkn
bcs .99
ldy #hArg1
@ -62,7 +62,7 @@ CS.INIT ldy #S.PS.hARGS
ldy #hArg1
lda (pData),y
>SYSCALL SYS.GetMemPtrA
>SYSCALL GetMemPtrA
>STYA ZPPtr1
lda (ZPPtr1)
beq .98
@ -81,11 +81,11 @@ CS.INIT ldy #S.PS.hARGS
ldy #S.PS.hPREFIX
lda (pPs),y
>PUSHA
>SYSCALL SYS.PStrCat
>SYSCALL PStrCat
sta hDIRPATH
.3 >SYSCALL SYS.GetMemPtrA
>SYSCALL SYS.ListDirInitYA
.3 >SYSCALL GetMemPtrA
>SYSCALL ListDirInitYA
bcs .99
ldy #hS.LISTDIR
sta (pData),y
@ -97,7 +97,7 @@ CS.INIT ldy #S.PS.hARGS
rts
.98 >LDYA L.MSG.USAGE
>SYSCALL SYS.PStrOutYA
>SYSCALL PStrOutYA
.99 lda #SYSMGR.ERRSYN
sec
rts
@ -117,11 +117,11 @@ CS.RUN ldy #bCANCEL
.1 ldy #hS.LISTDIR
lda (pData),y
>SYSCALL SYS.ListDirNextA
>SYSCALL ListDirNextA
bcs .99
pha
>SYSCALL SYS.GetMemPtrA
>SYSCALL GetMemPtrA
>STYA ZPPtr1
lda (ZPPtr1)
pha
@ -135,12 +135,12 @@ CS.RUN ldy #bCANCEL
ldy #hS.LISTDIR
lda (pData),y
>SYSCALL SYS.GetMemPtrA
>SYSCALL GetMemPtrA
>STYA ZPPtr2
ldy #S.LISTDIR.hPATH
lda (ZPPtr2),y
>SYSCALL SYS.GetMemPtrA
>SYSCALL GetMemPtrA
>STYA ZPPtr2
lda (ZPPtr2)
@ -164,24 +164,24 @@ CS.RUN ldy #bCANCEL
stx FullPath
>LDYA L.FullPath
>SYSCALL SYS.PStrOutYA
>SYSCALL PStrOutYA
>LDYA L.FullPath
>SYSCALL SYS.MLIGetFileInfoYA
>SYSCALL MLIGetFileInfoYA
bcs .5
>STYA ZPPtr3
>LDYA L.MSG.OK
>SYSCALL SYS.PStrOutYA
>SYSCALL PStrOutYA
bra .8
.5 >PUSHA
>LDYA L.MSG.ERR
>SYSCALL SYS.PStrOutYA
>SYSCALL PStrOutYA
.8 pla
>SYSCALL SYS.FreeMemA
>SYSCALL FreeMemA
clc
rts
*--------------------------------------
@ -226,27 +226,27 @@ CS.DOEVENT ldy #S.EVT.hDEV is Event from active IN device?
CS.QUIT ldy #hS.LISTDIR
lda (pData),y
beq .1
>SYSCALL SYS.ListDirCloseA
>SYSCALL ListDirCloseA
.1 ldy #hDIRPATH
lda (pData),y
beq .2
>SYSCALL SYS.FreeMemA
>SYSCALL FreeMemA
.2 ldy #hArg2
lda (pData),y
beq .3
>SYSCALL SYS.FreeMemA
>SYSCALL FreeMemA
.3 ldy #hArg1
lda (pData),y
beq .8
>SYSCALL SYS.FreeMemA
>SYSCALL FreeMemA
.8 clc
rts
*--------------------------------------
GetHexFileTypeA >SYSCALL SYS.GetMemPtrA
GetHexFileTypeA >SYSCALL GetMemPtrA
>STYA ZPPtr1
lda (ZPPtr1)
cmp #3
@ -319,9 +319,9 @@ GetHexFileTypeA >SYSCALL SYS.GetMemPtrA
rts
*--------------------------------------
CS.END
MSG.USAGE >PSTRING "Usage : CHTYP [File *,? wildcards allowed] [File type : $xx or SYS,TXT....]\n"
MSG.OK >PSTRING " [Ok]\n"
MSG.ERR >PSTRING " [%h]\n"
MSG.USAGE >PSTR "Usage : CHTYP [File *,? wildcards allowed] [File type : $xx or SYS,TXT....]\n"
MSG.OK >PSTR " [Ok]\n"
MSG.ERR >PSTR " [%h]\n"
FullPath .BS 64
Tmp .BS 1
*--------------------------------------

View File

@ -58,7 +58,7 @@ CS.INIT ldy #hS.LISTDIR.IDX
bne .1
>LDYA L.MSG.USAGE
>SYSCALL SYS.PStrOutYA
>SYSCALL PStrOutYA
lda #SYSMGR.ERRSYN
sec
.99 rts
@ -66,13 +66,13 @@ CS.INIT ldy #hS.LISTDIR.IDX
.1 >PUSHA
>PUSHBI $20 Push SEP=' '
>PUSHBI 0
>SYSCALL SYS.PStrGetTkn
>SYSCALL PStrGetTkn
bcs .99
sta hSrcPath
stx hDstPath
>SYSCALL SYS.GetMemPtrA
>SYSCALL GetMemPtrA
>STYA ZPPtr1
stz FullSrcPath
@ -106,7 +106,7 @@ CS.INIT ldy #hS.LISTDIR.IDX
jsr CS.INIT.DstPfx
bra .7
.4 >SYSCALL SYS.GetMemPtrA
.4 >SYSCALL GetMemPtrA
>STYA ZPPtr1
stz FullDstPath
@ -132,7 +132,7 @@ CS.INIT ldy #hS.LISTDIR.IDX
bne .6
.7 >LDYA L.FullDstPath
>SYSCALL SYS.MLIGetFileInfoYA
>SYSCALL MLIGetFileInfoYA
bcs .71 File not found....must be /path/file
>STYA ZPPtr3
ldy #S.FINFO.TYPE
@ -167,7 +167,7 @@ CS.INIT ldy #hS.LISTDIR.IDX
*--------------------------------------
CS.INIT.SrcPfx ldy #S.PS.hPREFIX
lda (pPs),y
>SYSCALL SYS.GetMemPtrA
>SYSCALL GetMemPtrA
>STYA ZPPtr2
lda (ZPPtr2)
@ -182,7 +182,7 @@ CS.INIT.SrcPfx ldy #S.PS.hPREFIX
*--------------------------------------
CS.INIT.DstPfx ldy #S.PS.hPREFIX
lda (pPs),y
>SYSCALL SYS.GetMemPtrA
>SYSCALL GetMemPtrA
>STYA ZPPtr2
lda (ZPPtr2)
@ -210,14 +210,14 @@ CS.RUN ldy #bCANCEL
.1 jsr GetDirList
bcs .99
>SYSCALL SYS.ListDirNextA
>SYSCALL ListDirNextA
bcc .15
jsr CloseDirList
rts if not back to first level, CC, if CS, quit!
.15 pha
>SYSCALL SYS.GetMemPtrA
>SYSCALL GetMemPtrA
>STYA ZPPtr1
lda (ZPPtr1) get File type/len
@ -232,12 +232,12 @@ CS.RUN ldy #bCANCEL
sta (ZPPtr1) Adjust Filename len
jsr GetDirList
>SYSCALL SYS.GetMemPtrA
>SYSCALL GetMemPtrA
>STYA ZPPtr2
ldy #S.LISTDIR.hPATH get Src path
lda (ZPPtr2),y
>SYSCALL SYS.GetMemPtrA
>SYSCALL GetMemPtrA
>STYA ZPPtr2
lda (ZPPtr2)
@ -286,7 +286,7 @@ CS.RUN ldy #bCANCEL
>PUSHW L.FullSrcPath
>LDYA L.MSG.CP
>SYSCALL SYS.PStrOutYA
>SYSCALL PStrOutYA
jsr CS.RUN.COPY
bcs .5
@ -296,15 +296,15 @@ CS.RUN ldy #bCANCEL
.5 >PUSHA
>LDYA L.MSG.ERR
.7 >SYSCALL SYS.PStrOutYA
.7 >SYSCALL PStrOutYA
.8 pla
>SYSCALL SYS.FreeMemA
>SYSCALL FreeMemA
clc
rts
*--------------------------------------
CS.RUN.COPY >LDYA L.FullSrcPath
>SYSCALL SYS.MLIGetFileInfoYA
>SYSCALL MLIGetFileInfoYA
bcs .9
>STYA ZPPtr1
@ -327,11 +327,11 @@ CS.RUN.COPY >LDYA L.FullSrcPath
.3 >PUSHW L.FullDstPath
>PUSHW L.FINFO
>SYSCALL SYS.MLISetFileInfo
>SYSCALL MLISetFileInfo
.9 rts
*--------------------------------------
CS.RUN.COPY.DIR >LDYA L.FullDstPath
>SYSCALL SYS.MLICreateDirYA
>SYSCALL MLICreateDirYA
bcc .10
cmp #$47
bne CS.RUN.COPY.ERR CS
@ -370,26 +370,26 @@ CS.RUN.COPY.FILE
>PUSHB FINFO+S.FINFO.TYPE
>PUSHBI $C3 R/W, we will setup attrs later
>PUSHW L.FullDstPath
>SYSCALL SYS.MLICreateFile
>SYSCALL MLICreateFile
bcc .10
cmp #$47
bne CS.RUN.COPY.ERR
.10 >LDYA L.FullSrcPath
>SYSCALL SYS.MLIOpenYA
>SYSCALL MLIOpenYA
bcs CS.RUN.COPY.RTS
sta hSrcFile
stx hSrcBuf
>LDYA L.FullDstPath
>SYSCALL SYS.MLIOpenYA
>SYSCALL MLIOpenYA
bcs .19
sta hDstFile
stx hDstBuf
>PUSHWI COPY.BUF.SIZE
>PUSHBI 0
>SYSCALL SYS.GetMem
>SYSCALL GetMem
.19 bcs .98
>STYA ZPPtr2
stx hCopyBuf
@ -397,14 +397,14 @@ CS.RUN.COPY.FILE
.2 >PUSHWI COPY.BUF.SIZE
>PUSHW ZPPtr2
>PUSHB hSrcFile
>SYSCALL SYS.MLIRead
>SYSCALL MLIRead
bcs .97
>STYA ZPPtr3 Bytes Read
>PUSHYA
>PUSHW ZPPtr2
>PUSHB hDstFile
>SYSCALL SYS.MLIWrite
>SYSCALL MLIWrite
lda ZPPtr3
cmp #COPY.BUF.SIZE
@ -418,21 +418,21 @@ CS.RUN.COPY.FILE
.97 pha
lda hCopyBuf
>SYSCALL SYS.FreeMemA
>SYSCALL FreeMemA
pla
.98 pha
lda hSrcFile
>SYSCALL SYS.MLICloseA
>SYSCALL MLICloseA
lda hSrcBuf
>SYSCALL SYS.FreeMemA
>SYSCALL FreeMemA
pla
.99 pha
lda hDstFile
>SYSCALL SYS.MLICloseA
>SYSCALL MLICloseA
lda hDstBuf
>SYSCALL SYS.FreeMemA
>SYSCALL FreeMemA
pla
sec
rts
@ -480,18 +480,18 @@ CS.QUIT jsr CloseDirList
lda hSrcPath
beq .1
>SYSCALL SYS.FreeMemA
>SYSCALL FreeMemA
.1 lda hDstPath
beq .8
>SYSCALL SYS.FreeMemA
>SYSCALL FreeMemA
.8 clc
rts
*--------------------------------------
* PRIVATE
*--------------------------------------
NewDirListYA >SYSCALL SYS.ListDirInitYA
NewDirListYA >SYSCALL ListDirInitYA
bcs .9
tax
ldy #hS.LISTDIR.IDX
@ -510,7 +510,7 @@ NewDirListYA >SYSCALL SYS.ListDirInitYA
CloseDirList jsr GetDirList
bcs .9
>SYSCALL SYS.ListDirCloseA
>SYSCALL ListDirCloseA
ldy #hS.LISTDIR.IDX
lda (pData),y
tay
@ -547,10 +547,10 @@ GetDirList ldy #hS.LISTDIR.IDX
.9 rts
*--------------------------------------
CS.END
MSG.USAGE >PSTRING "Usage : CP [-R -C] <Src file/Dir, *,? wildcards allowed> [Dest Dir]\n -R recurse subdirs\n -C resume on error\n"
MSG.CP >PSTRING "cp: %S to %S "
MSG.OK >PSTRING "[Ok]\n"
MSG.ERR >PSTRING "[%h]\n"
MSG.USAGE >PSTR "Usage : CP [-R -C] <Src file/Dir, *,? wildcards allowed> [Dest Dir]\n -R recurse subdirs\n -C resume on error\n"
MSG.CP >PSTR "cp: %S to %S "
MSG.OK >PSTR "[Ok]\n"
MSG.ERR >PSTR "[%h]\n"
hSrcPath .BS 1
hDstPath .BS 1
FullSrcPath .BS 64

View File

@ -35,14 +35,14 @@ CS.START cld
.DA CS.QUIT
.DA 0
*--------------------------------------
CS.INIT >SYSCALL SYS.GetArgC
CS.INIT >SYSCALL GetArgC
cmp #1
beq .9
lda #1
>SYSCALL SYS.GetArgA
>SYSCALL GetArgA
>SYSCALL SYS.GetDevByNameYA
>SYSCALL GetDevByNameYA
bcs .9
>STYA pDev
@ -90,15 +90,15 @@ CS.DOEVENT ldy #S.EVT.hDEV
ldy #S.EVT.DATALO
lda (pEvent),y
pha
>SYSCALL SYS.HexOutA
>SYSCALL HexOutA
lda #'('
>SYSCALL SYS.COutA
>SYSCALL COutA
pla
cmp #$20
bcc .1
>SYSCALL SYS.COutA
>SYSCALL COutA
.1 lda #')'
>SYSCALL SYS.COutA
>SYSCALL COutA
clc
rts

View File

@ -41,10 +41,10 @@ L.MSG1 .DA MSG1
.DA 0
*--------------------------------------
CS.INIT >LDYA L.LIBTCPIP
>SYSCALL SYS.LoadLibYA
>SYSCALL LoadLibYA
sta hLIBTCPIP
>SYSCALL SYS.GetArgC
>SYSCALL GetArgC
cmp #1
beq CS.INIT.DUMP
*--------------------------------------
@ -54,14 +54,14 @@ CS.INIT.ADD cmp #3
>PUSHW L.IP
>PUSHW L.SSCANF.IP
lda #3
>SYSCALL SYS.GetArgA
>SYSCALL GetArgA
>PUSHYA
>SYSCALL SYS.SSCANF
>SYSCALL SSCANF
bcs .9
>PUSHW L.IP
lda #2
>SYSCALL SYS.GetArgA
>SYSCALL GetArgA
>PUSHYA
>LIBCALL hLIBTCPIP,LIBTCPIP.DNS.ADD
bcs .99
@ -77,7 +77,7 @@ CS.INIT.ADD cmp #3
CS.INIT.DUMP >LIBCALL hLIBTCPIP,LIBTCPIP.DNS.GETCACHE
>STYA ZPPTR1
>LDYA L.MSG0
>SYSCALL SYS.PRINTFYA
>SYSCALL PRINTFYA
lda #K.DNSCACHE.SIZE
sta EntryCount
@ -101,7 +101,7 @@ CS.INIT.DUMP >LIBCALL hLIBTCPIP,LIBTCPIP.DNS.GETCACHE
ldy #S.DNSCACHE.hNAME
lda (ZPPTR1),y
>SYSCALL SYS.GetMemPtrA
>SYSCALL GetMemPtrA
>PUSHYA
ldy #S.DNSCACHE.ID
@ -112,7 +112,7 @@ CS.INIT.DUMP >LIBCALL hLIBTCPIP,LIBTCPIP.DNS.GETCACHE
>PUSHB (ZPPTR1) Entry Status
>LDYA L.MSG1
>SYSCALL SYS.PRINTFYA
>SYSCALL PRINTFYA
.2 lda ZPPTR1
clc
@ -133,15 +133,15 @@ CS.EVENT clc
rts
*--------------------------------------
CS.QUIT lda hLIBTCPIP
>SYSCALL SYS.UnloadLibA
>SYSCALL UnloadLibA
clc
rts
*--------------------------------------
CS.END
LIBTCPIP >PSTRING "libtcpip.o"
SSCANF.IP >PSTRING "%d.%d.%d.%d"
MSG0 >CSTRING "STS TR.ID Hostname IP Address TTL\n"
MSG1 >CSTRING "$%h $%H %32S %03d.%03d.%03d.%03d %L\n"
LIBTCPIP >PSTR "libtcpip.o"
SSCANF.IP >PSTR "%d.%d.%d.%d"
MSG0 >CSTR "STS TR.ID Hostname IP Address TTL\n"
MSG1 >CSTR "$%h $%H %32S %03d.%03d.%03d.%03d %L\n"
hLIBTCPIP .BS 1
IP .BS 4

View File

@ -10,7 +10,7 @@ BUF.InsertClipboard
lda (pData),y
beq .8
>SYSCALL SYS.GetMemPtrA
>SYSCALL GetMemPtrA
>STYA ClipboardPtr
jsr BUF.ComputeCOffset
@ -252,11 +252,11 @@ BUF.SelToClipboard
lda (pData),y
beq .1
>SYSCALL SYS.FreeMemA
>SYSCALL FreeMemA
.1 >PUSHW TmpCount
>PUSHB 0
>SYSCALL SYS.GetMem
>SYSCALL GetMem
bcs .9
>STYA ClipboardPtr
@ -273,7 +273,7 @@ BUF.SelToClipboard
ldy #hBuffer
lda (pData),y
>SYSCALL SYS.GetMemPtrA
>SYSCALL GetMemPtrA
>STYA BufPtr
lda BufPtr
@ -373,7 +373,7 @@ BUF.GetLineAX >STAX BUF.TmpLine1
ldy #hBuffer
lda (pData),y
>SYSCALL SYS.GetMemPtrA
>SYSCALL GetMemPtrA
>STYA BufPtr
stz BUF.TmpLine2
@ -444,18 +444,18 @@ BUF.GetNewYA >STYA TmpLen
ldy #hBufferBackup
lda (pData),y
beq .1
>SYSCALL SYS.FreeMemA
>SYSCALL FreeMemA
.1 ldy #hBuffer
lda (pData),y
ldy #hBufferBackup
sta (pData),y
>SYSCALL SYS.GetMemPtrA
>SYSCALL GetMemPtrA
>STYA BufPtrBackup
>PUSHW TmpLen
>PUSHBI S.MEM.F.INIT0
>SYSCALL SYS.GetMem
>SYSCALL GetMem
bcs .9
>STYA BufPtr

View File

@ -52,7 +52,7 @@ Ctrl.A ldy #PromptMode
>PUSHW L.SEQ.CEOL
>PUSHW ZPPTR1
>LDYA L.MSG.HELPLINE
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
bcs .9
sec
@ -308,7 +308,7 @@ Ctrl.S lda #PromptModeSave
lda (pData),y
beq .2
>SYSCALL SYS.GetMemPtrA
>SYSCALL GetMemPtrA
>STYA ZPPTR1
lda (ZPPTR1)
@ -544,10 +544,10 @@ Prompt.Save cmp #3
ldy #hFileName
lda (pData),y
beq .11
>SYSCALL SYS.FreeMemA
>SYSCALL FreeMemA
.11 >LDYA pData
>SYSCALL SYS.NewPStrYA
>SYSCALL NewPStrYA
txa
ldy #hFileName

View File

@ -10,10 +10,10 @@ SCRN.Init ldy #ScreenH
dec
>PUSHA
>LDYA L.SEQ.INIT
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
bcs .9
lda #12
>SYSCALL SYS.COutA
>SYSCALL COutA
bcs .9
lda #0
@ -45,7 +45,7 @@ SCRN.UpdateTopBar
ldy #hFileName
lda (pData),y
beq .1
>SYSCALL SYS.GetMemPtrA
>SYSCALL GetMemPtrA
bra .2
.1 >LDYA L.MSG.NEWFILE
@ -53,7 +53,7 @@ SCRN.UpdateTopBar
.2 >PUSHYA
>LDYA L.MSG.TOPBAR
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
bcs .9
@ -99,7 +99,7 @@ SCRN.UpdateMain ldy #ScreenY
bcs .9
>LDYA L.SEQ.CEOL
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
bcs .9
inc TmpByte
@ -162,7 +162,7 @@ SCRN.UpdateLineAtALenY
pla
bcs .11
>SYSCALL SYS.COutA
>SYSCALL COutA
.11 ply
plx
bcs .9
@ -176,7 +176,7 @@ SCRN.UpdateLineAtALenY
bcs .9
>LDYA L.SEQ.CEOL
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
bcs .9
rts
.9 jmp Ctrl.Q
@ -189,7 +189,7 @@ SCRN.UpdateAttrC
bpl .8
>LDYA L.SEQ.NORM
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
bcs .9
stz bSelected
rts
@ -198,7 +198,7 @@ SCRN.UpdateAttrC
bmi .8
>LDYA L.SEQ.INV
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
bcs .9
lda #$ff
sta bSelected
@ -237,7 +237,7 @@ SCRN.UpdateStatusBar
lda (pData),y
>PUSHA
>LDYA L.MSG.STATUSBAR
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
bcs .9
jmp SCRN.GotoCurXCurY
@ -248,7 +248,7 @@ SCRN.UpdateStatusBar
lda (pData),y
>PUSHA
>LDYA L.MSG.STATUSBAR,x
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
bcs .9
rts
.9 jmp Ctrl.Q
@ -259,7 +259,7 @@ SCRN.UpdateStatusBarErrA
lda (pData),y
>PUSHA
>LDYA L.MSG.STATUSBAR.E
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
bcs .9
rts
.9 jmp Ctrl.Q
@ -281,7 +281,7 @@ GotoXY txa
>PUSHA
>LDYA L.MSG.GOTOXY
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
bcs .9
rts
.9 jmp Ctrl.Q
@ -413,10 +413,10 @@ SCRN.UpdateViewPort
.9 jmp Ctrl.Q
*--------------------------------------
SCRN.scrollUp lda #$1B
>SYSCALL SYS.COutA
>SYSCALL COutA
bcs .9
lda #'M'
>SYSCALL SYS.COutA
>SYSCALL COutA
bcs .9
ldy #ScreenY+1
@ -438,10 +438,10 @@ SCRN.scrollUp lda #$1B
.9 jmp Ctrl.Q
*--------------------------------------
SCRN.scrollDn lda #$1B
>SYSCALL SYS.COutA
>SYSCALL COutA
bcs .9
lda #'D'
>SYSCALL SYS.COutA
>SYSCALL COutA
bcs .9
ldy #ScreenY+1

View File

@ -101,14 +101,14 @@ CS.INIT lda #$ff
ldy #bSaved
sta (pData),y
>SYSCALL SYS.GetArgC
>SYSCALL GetArgC
cmp #1
beq .1 No arg, new file....
lda #1
>SYSCALL SYS.GetArgA
>SYSCALL GetArgA
>SYSCALL SYS.GetFullPathYA
>SYSCALL GetFullPathYA
txa
ldy #hFileName
sta (pData),y
@ -118,7 +118,7 @@ CS.INIT lda #$ff
.1 >PUSHWI 1 buffer size = 0 (+ 1 for ending 0)
>PUSHBI S.MEM.F.INIT0
>SYSCALL SYS.GetMem
>SYSCALL GetMem
bcs .9
txa
@ -140,14 +140,14 @@ CS.RUN ldy #bCancel
bne .8
>LDYA L.SEQ.DETECT
>SYSCALL SYS.PrintFYA Send Query for term W & H
>SYSCALL PrintFYA Send Query for term W & H
bcs .9
.1 ldy #bCancel
lda (pData),y
bne .9
>SYSCALL SYS.Sleep
>SYSCALL Sleep
ldy #ScreenW Wait for Response from terminal
lda (pData),y for W & H
@ -315,28 +315,28 @@ CS.DOEVENT.Esc ldy #bEscMode
CS.QUIT ldy #hBuffer
lda (pData),y
beq .1
>SYSCALL SYS.FreeMemA
>SYSCALL FreeMemA
.1 ldy #hBufferBackup
lda (pData),y
beq .2
>SYSCALL SYS.FreeMemA
>SYSCALL FreeMemA
.2 ldy #hClipBoard
lda (pData),y
beq .3
>SYSCALL SYS.FreeMemA
>SYSCALL FreeMemA
.3 ldy #hFileName
lda (pData),y
beq .8
>SYSCALL SYS.FreeMemA
>SYSCALL FreeMemA
.8 >LDYA L.SEQ.RESET
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
bcs .9
lda #12
>SYSCALL SYS.COutA
>SYSCALL COutA
.9 rts
*--------------------------------------
LoadFile >PUSHWI 0 Aux type
@ -345,10 +345,10 @@ LoadFile >PUSHWI 0 Aux type
ldy #hFileName
lda (pData),y
>SYSCALL SYS.GetMemPtrA
>SYSCALL GetMemPtrA
>PUSHYA
>SYSCALL SYS.LoadFile
>SYSCALL LoadFile
bcs .9
stx hMem
@ -359,7 +359,7 @@ LoadFile >PUSHWI 0 Aux type
.2 >PUSHYA
>PUSHBI S.MEM.F.INIT0
>SYSCALL SYS.GetMem
>SYSCALL GetMem
bcs .98
>STYA ZPPTR2
@ -369,7 +369,7 @@ LoadFile >PUSHWI 0 Aux type
lda hMem
>SYSCALL SYS.GetMemPtrA
>SYSCALL GetMemPtrA
>STYA ZPPTR1
>LDYA TmpLen
@ -400,14 +400,14 @@ LoadFile >PUSHWI 0 Aux type
.98 pha
lda hMem
>SYSCALL SYS.FreeMemA
>SYSCALL FreeMemA
pla
sec
.9 rts
*--------------------------------------
SaveFile ldy #hBuffer
lda (pData),y
>SYSCALL SYS.GetMemPtrA
>SYSCALL GetMemPtrA
>PUSHYA
ldy #FileLen+1
@ -421,11 +421,11 @@ SaveFile ldy #hBuffer
ldy #hFileName
lda (pData),y
>SYSCALL SYS.GetMemPtrA
>SYSCALL GetMemPtrA
>PUSHYA
>SYSCALL SYS.SaveFile
>SYSCALL SaveFile
rts
*--------------------------------------
DecTmpCount lda TmpCount
@ -442,47 +442,47 @@ DecTmpCount lda TmpCount
.INB BIN/EDIT.S.SCRN
*--------------------------------------
CS.END
SEQ.DETECT >CSTRING "Querying terminal capabilities...\e[999;999H\e[6n"
SEQ.INIT >CSTRING "\ec\e[2;%dr"
SEQ.RESET >CSTRING "\ec"
SEQ.INV >CSTRING "\e[7m"
SEQ.NORM >CSTRING "\e[0m"
SEQ.CEOL >CSTRING "\e[K"
MSG.TOPBAR >CSTRING "\e[1;1H\e[7mA2osX Edit:%S\e[K\e[0m"
MSG.STATUSBAR >CSTRING "\e[%d;1H\e[7mPress Ctrl-A For Help Length:%D Col:%d Line:%D\e[K\e[0m"
MSG.STATUSBAR.H >CSTRING "\e[%d;1H\e[7mPress any key to exit this screen:\e[K\e[0m"
MSG.STATUSBAR.F >CSTRING "\e[%d;1H\e[7mFind:%S\e[K\e[0m"
MSG.STATUSBAR.R >CSTRING "\e[%d;1H\e[7mReplace:%S\e[K\e[0m"
MSG.STATUSBAR.S >CSTRING "\e[%d;1H\e[7mSave:%S\e[K\e[0m"
MSG.STATUSBAR.E >CSTRING "\e[%d;1H\e[7mError:%h\e[K\e[0m"
MSG.GOTOXY >CSTRING "\e[%d;%dH"
MSG.HELPLINE >CSTRING "%S%s\n"
MSG.HELP >PSTRING "All commands: (* = Not yet implemented)"
>PSTRING "------------"
>PSTRING " Ctrl-A : This help screen"
>PSTRING " Ctrl-B : Mark beginning of selection"
>PSTRING " Ctrl-C : Copy selection to clipboard"
>PSTRING " Ctrl-D : Delete selection"
>PSTRING " Ctrl-E : Mark end of selection"
>PSTRING " Ctrl-F : * Find a string..."
>PSTRING " Ctrl-G : Go to start of current line"
>PSTRING " Ctrl-L : Go to end of current line"
>PSTRING " Ctrl-N : * Find next"
>PSTRING " Ctrl-O : * Page up"
>PSTRING " Ctrl-P : * Page down"
>PSTRING " Ctrl-Q : Quit"
>PSTRING " Ctrl-R : * Replace found string with..."
>PSTRING " Ctrl-S : Save file to disk..."
>PSTRING " Ctrl-T : Go to top of file"
>PSTRING " Ctrl-V : Past clipboard at cursor position"
>PSTRING " Ctrl-W : * Erase current line"
>PSTRING " Ctrl-X : Cut block to clipboard"
>PSTRING " Ctrl-Y : * Go to bottom of file"
>PSTRING " Ctrl-Z : * Undo previous change"
SEQ.DETECT >CSTR "Querying terminal capabilities...\e[999;999H\e[6n"
SEQ.INIT >CSTR "\ec\e[2;%dr"
SEQ.RESET >CSTR "\ec"
SEQ.INV >CSTR "\e[7m"
SEQ.NORM >CSTR "\e[0m"
SEQ.CEOL >CSTR "\e[K"
MSG.TOPBAR >CSTR "\e[1;1H\e[7mA2osX Edit:%S\e[K\e[0m"
MSG.STATUSBAR >CSTR "\e[%d;1H\e[7mPress Ctrl-A For Help Length:%D Col:%d Line:%D\e[K\e[0m"
MSG.STATUSBAR.H >CSTR "\e[%d;1H\e[7mPress any key to exit this screen:\e[K\e[0m"
MSG.STATUSBAR.F >CSTR "\e[%d;1H\e[7mFind:%S\e[K\e[0m"
MSG.STATUSBAR.R >CSTR "\e[%d;1H\e[7mReplace:%S\e[K\e[0m"
MSG.STATUSBAR.S >CSTR "\e[%d;1H\e[7mSave:%S\e[K\e[0m"
MSG.STATUSBAR.E >CSTR "\e[%d;1H\e[7mError:%h\e[K\e[0m"
MSG.GOTOXY >CSTR "\e[%d;%dH"
MSG.HELPLINE >CSTR "%S%s\n"
MSG.HELP >PSTR "All commands: (* = Not yet implemented)"
>PSTR "------------"
>PSTR " Ctrl-A : This help screen"
>PSTR " Ctrl-B : Mark beginning of selection"
>PSTR " Ctrl-C : Copy selection to clipboard"
>PSTR " Ctrl-D : Delete selection"
>PSTR " Ctrl-E : Mark end of selection"
>PSTR " Ctrl-F : * Find a string..."
>PSTR " Ctrl-G : Go to start of current line"
>PSTR " Ctrl-L : Go to end of current line"
>PSTR " Ctrl-N : * Find next"
>PSTR " Ctrl-O : * Page up"
>PSTR " Ctrl-P : * Page down"
>PSTR " Ctrl-Q : Quit"
>PSTR " Ctrl-R : * Replace found string with..."
>PSTR " Ctrl-S : Save file to disk..."
>PSTR " Ctrl-T : Go to top of file"
>PSTR " Ctrl-V : Past clipboard at cursor position"
>PSTR " Ctrl-W : * Erase current line"
>PSTR " Ctrl-X : Cut block to clipboard"
>PSTR " Ctrl-Y : * Go to bottom of file"
>PSTR " Ctrl-Z : * Undo previous change"
.HS 00
*--------------------------------------
MSG.NEWFILE >PSTRING "(new file)"
EscChars >PSTRING "DBAC"
MSG.NEWFILE >PSTR "(new file)"
EscChars >PSTR "DBAC"
EscAscii .HS 04080A0B15
hMem .BS 1
TmpFilename .BS 1

View File

@ -58,11 +58,11 @@ L.MSG2.HOSTNAME .DA MSG2.HOSTNAME
.DA 0
*--------------------------------------
CS.INIT >LDYA L.LIBTCPIP
>SYSCALL SYS.LoadLibYA
>SYSCALL LoadLibYA
sta hLIBTCPIP
>LDYA L.MSG0
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
>LIBCALL hLIBTCPIP,LIBTCPIP.GET.IPCFG
>STYA ZPIPCfgPtr
@ -72,19 +72,19 @@ CS.INIT >LDYA L.LIBTCPIP
bne CS.INIT.DUMPDEV
>LDYA L.MSG0.NL
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
jmp CS.INIT.DONE
CS.INIT.DUMPDEV sta DevID
>SYSCALL SYS.GetDevByIDA
>SYSCALL GetDevByIDA
>STYA ZPDevPtr
lda DevID
>SYSCALL SYS.GetDevInfoA
>SYSCALL GetDevInfoA
>STYA ZPDevInfoPtr
>LDYA L.MSG0.L
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
ldy #S.DEVINFO.NET.MAC+6
.1 dey
@ -103,7 +103,7 @@ CS.INIT.DUMPDEV sta DevID
>PUSHB DevID
>LDYA L.MSG1.DEV
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
ldy #S.DEVINFO.FLAGS
lda (ZPDevInfoPtr),y
@ -112,7 +112,7 @@ CS.INIT.DUMPDEV sta DevID
lda #1
.2 >PUSHA
>LDYA L.MSG1.DEV.ARP
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
ldy #S.DEVINFO.FLAGS
lda (ZPDevInfoPtr),y
@ -121,7 +121,7 @@ CS.INIT.DUMPDEV sta DevID
lda #1
.3 >PUSHA
>LDYA L.MSG1.DEV.IP
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
ldy #S.DEVINFO.NET.STATUS
lda (ZPDevInfoPtr),y
@ -129,15 +129,15 @@ CS.INIT.DUMPDEV sta DevID
bne CS.INIT.LINK
>PUSHW L.MSG1.LINK.KO
>LDYA L.MSG1.LINK
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
bra CS.INIT.DUMPIP
CS.INIT.LINK >PUSHW L.MSG1.LINK.OK
>LDYA L.MSG1.LINK
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
>LDYA L.MSG1.LINKSPEED
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
ldy #S.DEVINFO.NET.STATUS
lda (ZPDevInfoPtr),y
@ -146,7 +146,7 @@ CS.INIT.LINK >PUSHW L.MSG1.LINK.OK
.4 phx
lda #'0'
>SYSCALL SYS.COutA
>SYSCALL COutA
plx
dex
bne .4
@ -158,10 +158,10 @@ CS.INIT.LINK >PUSHW L.MSG1.LINK.OK
>LDYA L.MSG1.DPLX.HD
bra .6
.5 >LDYA L.MSG1.DPLX.FD
.6 >SYSCALL SYS.PrintFYA
.6 >SYSCALL PrintFYA
CS.INIT.DUMPIP >LDYA L.MSG2
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
lda (ZPIPCfgPtr)
and #S.IPCFG.STATUS.OK
beq .11
@ -169,7 +169,7 @@ CS.INIT.DUMPIP >LDYA L.MSG2
bra .10
.11 >LDYA L.MSG2.U
.10 >SYSCALL SYS.PrintFYA
.10 >SYSCALL PrintFYA
ldy #S.IPCFG.DHCPSRVR+3
ldx #4
@ -178,7 +178,7 @@ CS.INIT.DUMPIP >LDYA L.MSG2
dex
bne .2
>LDYA L.MSG2.DHCPSRVR
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
ldy #S.IPCFG.IP+7 IP/MASK
ldx #8
@ -187,7 +187,7 @@ CS.INIT.DUMPIP >LDYA L.MSG2
dex
bne .3
>LDYA L.MSG2.IP
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
ldy #S.IPCFG.GW+3
ldx #4
@ -196,7 +196,7 @@ CS.INIT.DUMPIP >LDYA L.MSG2
dex
bne .4
>LDYA L.MSG2.GW
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
ldy #S.IPCFG.DNS1+7
ldx #8
@ -205,7 +205,7 @@ CS.INIT.DUMPIP >LDYA L.MSG2
dex
bne .5
>LDYA L.MSG2.DNS
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
lda ZPIPCfgPtr
clc
@ -224,7 +224,7 @@ CS.INIT.DUMPIP >LDYA L.MSG2
>PUSHYA
>LDYA L.MSG2.HOSTNAME
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
CS.INIT.DONE lda #0 tell TSKMGR that all done ok, but
sec we do not want to stay in memory
@ -235,35 +235,35 @@ CS.DOEVENT clc
rts
*--------------------------------------
CS.QUIT lda hLIBTCPIP
>SYSCALL SYS.FreeMemA
>SYSCALL FreeMemA
clc
rts
*--------------------------------------
CS.END
LIBTCPIP >PSTRING "libtcpip.o"
LIBTCPIP >PSTR "libtcpip.o"
*--------------------------------------
MSG0 >CSTRING "TCP/IP Status : "
MSG0.L >CSTRING "Loaded\n"
MSG0.NL >CSTRING "Not Loaded\n"
MSG0 >CSTR "TCP/IP Status : "
MSG0.L >CSTR "Loaded\n"
MSG0.NL >CSTR "Not Loaded\n"
*--------------------------------------
MSG1.DEV >CSTRING "\nDevice Configuration :\n DevID : $%h\n Device Name : %s\n HW Address : %02h:%02h:%02h:%02h:%02h:%02h\n"
MSG1.DEV.ARP >CSTRING " ARP Offload : %d\n"
MSG1.DEV.IP >CSTRING " IP Offload : %d\n"
MSG1.LINK >CSTRING " Link Status : %s\n"
MSG1.LINK.OK >CSTRING "OK"
MSG1.LINK.KO >CSTRING "Media Disconnected"
MSG1.LINKSPEED >CSTRING " Link Speed : 1"
MSG1.DPLX.FD >CSTRING " Mbit/s,Full Duplex\n"
MSG1.DPLX.HD >CSTRING " Mbit/s,Half Duplex\n"
MSG1.DEV >CSTR "\nDevice Configuration :\n DevID : $%h\n Device Name : %s\n HW Address : %02h:%02h:%02h:%02h:%02h:%02h\n"
MSG1.DEV.ARP >CSTR " ARP Offload : %d\n"
MSG1.DEV.IP >CSTR " IP Offload : %d\n"
MSG1.LINK >CSTR " Link Status : %s\n"
MSG1.LINK.OK >CSTR "OK"
MSG1.LINK.KO >CSTR "Media Disconnected"
MSG1.LINKSPEED >CSTR " Link Speed : 1"
MSG1.DPLX.FD >CSTR " Mbit/s,Full Duplex\n"
MSG1.DPLX.HD >CSTR " Mbit/s,Half Duplex\n"
*--------------------------------------
MSG2 >CSTRING "\nIP Configuration : "
MSG2.C >CSTRING "Configured\n"
MSG2.U >CSTRING "Not Configured\n"
MSG2.DHCPSRVR >CSTRING " DHCP Server : %d.%d.%d.%d\n"
MSG2.IP >CSTRING " IP/Mask : %d.%d.%d.%d/%d.%d.%d.%d\n"
MSG2.GW >CSTRING " Gateway : %d.%d.%d.%d\n"
MSG2.DNS >CSTRING " DNS : %d.%d.%d.%d,%d.%d.%d.%d\n"
MSG2.HOSTNAME >CSTRING " Hostname : %s.%s\n"
MSG2 >CSTR "\nIP Configuration : "
MSG2.C >CSTR "Configured\n"
MSG2.U >CSTR "Not Configured\n"
MSG2.DHCPSRVR >CSTR " DHCP Server : %d.%d.%d.%d\n"
MSG2.IP >CSTR " IP/Mask : %d.%d.%d.%d/%d.%d.%d.%d\n"
MSG2.GW >CSTR " Gateway : %d.%d.%d.%d\n"
MSG2.DNS >CSTR " DNS : %d.%d.%d.%d,%d.%d.%d.%d\n"
MSG2.HOSTNAME >CSTR " Hostname : %s.%s\n"
hLIBTCPIP .BS 1
DevID .BS 1
MAN

View File

@ -8,8 +8,8 @@ AUTO 6
.OR $2000
.TF /A2OSX.BOOT/BIN/LS
*--------------------------------------
.INB INC/MACROS.I
.INB INC/A2OSX.I
.INB /A2OSX.DEV/INC/MACROS.I
.INB /A2OSX.DEV/INC/A2OSX.I
*--------------------------------------
MAX.COL .EQ 4
MAX.RECURSE .EQ 8
@ -47,14 +47,14 @@ L.TIME.Create .DA TIME.Create
L.TIME.Mod .DA TIME.Mod
.DA 0
*--------------------------------------
CS.INIT >SYSCALL SYS.GetArgC
CS.INIT >SYSCALL GetArgC
sta ArgCount
.1 dec ArgCount
beq .5
lda ArgCount
>SYSCALL SYS.GetArgA
>SYSCALL GetArgA
>STYA ZPPtr1
lda (ZPPtr1)
@ -97,7 +97,7 @@ CS.INIT >SYSCALL SYS.GetArgC
ldy #S.PS.hPREFIX
lda (pPs),y
>SYSCALL SYS.GetMemPtrA
>SYSCALL GetMemPtrA
jsr InitSrcDirYA
bcs .9
@ -125,7 +125,7 @@ CS.RUN ldy #bCANCEL
tay
lda (pData),y
>SYSCALL SYS.READDIRA
>SYSCALL READDIRA
bcc .20
ldy #bLong
@ -137,7 +137,7 @@ CS.RUN ldy #bCANCEL
beq .89
lda #13
>SYSCALL SYS.COutA
>SYSCALL COutA
.89 lda #0
sec
@ -162,10 +162,10 @@ CS.RUN ldy #bCANCEL
lda (pData),y
beq .4 No filter....
>SYSCALL SYS.GetMemPtrA
>SYSCALL GetMemPtrA
>PUSHYA
>PUSHW ZPPtr1
>SYSCALL SYS.PStrMatch
>SYSCALL PStrMatch
bcs .7 no match, skip....
.4 ldy #S.STAT.PRODOS.DRIVE
@ -195,7 +195,7 @@ CS.RUN ldy #bCANCEL
bra .3
.8 pla Discard hDIRENT
>SYSCALL SYS.FreeMemA
>SYSCALL FreeMemA
clc
rts
@ -216,7 +216,7 @@ CS.RUN.DEV ldy #S.STAT.PRODOS.DEVBLOCKS+1
>PUSHW ZPPtr1
>LDYA L.MSG.DEV
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
rts
*--------------------------------------
CS.RUN.DIR ldy #bLong
@ -225,7 +225,7 @@ CS.RUN.DIR ldy #bLong
>PUSHW ZPPtr1
>LDYA L.MSG.DIR
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
ldy #ColCount
lda (pData),y
@ -237,7 +237,7 @@ CS.RUN.DIR ldy #bLong
lda #0
sta (pData),y
lda #13
>SYSCALL SYS.COutA
>SYSCALL COutA
.7 rts
.8 jsr CS.RUN.PUSHEXTRA
@ -251,7 +251,7 @@ CS.RUN.DIR ldy #bLong
>PUSHW ZPPtr1
>LDYA L.MSG.DIREXT
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
rts
*--------------------------------------
@ -266,7 +266,7 @@ CS.RUN.FILE ldy #bLong
>PUSHW ZPPtr1
>LDYA L.MSG.FILE
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
ldy #ColCount
lda (pData),y
@ -278,7 +278,7 @@ CS.RUN.FILE ldy #bLong
lda #0
sta (pData),y
lda #13
>SYSCALL SYS.COutA
>SYSCALL COutA
rts
.7 lda #80/MAX.COL-5
@ -289,7 +289,7 @@ CS.RUN.FILE ldy #bLong
.70 lda #' '
phx
>SYSCALL SYS.COutA
>SYSCALL COutA
plx
dex
bne .70
@ -327,7 +327,7 @@ CS.RUN.FILE ldy #bLong
>PUSHW ZPPtr1
>LDYA L.MSG.FILEEXT
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
rts
*--------------------------------------
CS.RUN.PUSHEXTRA
@ -340,7 +340,7 @@ CS.RUN.PUSHEXTRA
lda ZPPtr2+1
adc #0
>PUSHYA
>SYSCALL SYS.PStrFTime
>SYSCALL PStrFTime
>PUSHW L.TIME.Create
>PUSHW L.TIME.Format
@ -351,7 +351,7 @@ CS.RUN.PUSHEXTRA
lda ZPPtr2+1
adc #0
>PUSHYA
>SYSCALL SYS.PStrFTime
>SYSCALL PStrFTime
>PUSHW L.TIME.Mod ModTime
>PUSHW L.TIME.Create Create Time
@ -401,7 +401,7 @@ CS.QUIT jsr LeaveSubDir
ldy #hFilter
lda (pData),y
beq .3
>SYSCALL SYS.FreeMemA
>SYSCALL FreeMemA
.3 clc
rts
@ -443,25 +443,25 @@ FileType2PSTR ldy #0
*--------------------------------------
CS.END
*--------------------------------------
OptionList >PSTRING "LR"
OptionList >PSTR "LR"
OptionVars .DA #bLong,bRecurse
*--------------------------------------
MSG.DEV >CSTRING "%15S S%d,D%d Blocks Used:%5D,Total:%5D\n"
MSG.DIR >CSTRING "/%18S"
MSG.DIREXT >CSTRING "/%15S <dir> %a %S %S\n"
MSG.FILE >CSTRING "%S.%S"
MSG.FILEEXT >CSTRING "%15S %S $%H %a %10u %S %S\n"
MSG.DEV >CSTR "%15S S%d,D%d Blocks Used:%5D,Total:%5D\n"
MSG.DIR >CSTR "/%18S"
MSG.DIREXT >CSTR "/%15S <dir> %a %S %S\n"
MSG.FILE >CSTR "%S.%S"
MSG.FILEEXT >CSTR "%15S %S $%H %a %10u %S %S\n"
*--------------------------------------
PRODOS.FT.HEX .HS 0406FAFCFDE2FF
PRODOS.FT.TXT >PSTRING "TXT"
>PSTRING "BIN"
>PSTRING "S-C"
>PSTRING "BAS"
>PSTRING "VAR"
>PSTRING "ATK"
>PSTRING "SYS"
PRODOS.FT.DFLT >PSTRING "$ "
TIME.Format >PSTRING "%d-%b-%y %H:%M"
PRODOS.FT.TXT >PSTR "TXT"
>PSTR "BIN"
>PSTR "S-C"
>PSTR "BAS"
>PSTR "VAR"
>PSTR "ATK"
>PSTR "SYS"
PRODOS.FT.DFLT >PSTR "$ "
TIME.Format >PSTR "%d-%b-%y %H:%M"
TIME.Create .BS 20
TIME.Mod .BS 20
HEXDIGIT .AS '0123456789ABCDEF'

View File

@ -42,7 +42,7 @@ CS.INIT >LDYAI DevMgr.Table
stz DEV.ID
>LDYA L.MSG0
>SYSCALL SYS.PrintfYA
>SYSCALL PrintfYA
.2 lda (ZPPTR1)
cmp #$D8
@ -66,7 +66,7 @@ CS.INIT >LDYAI DevMgr.Table
ldy #S.DEV.ID
>PUSHB (ZPPTR1),y
>LDYA L.MSG1
>SYSCALL SYS.PrintfYA
>SYSCALL PrintfYA
lda ZPPTR1
clc
@ -90,8 +90,8 @@ CS.QUIT clc
rts
*--------------------------------------
CS.END
MSG0 >CSTRING "ID Flags Name Address\n"
MSG1 >CSTRING "%03d %b %4S $%H\n"
MSG0 >CSTR "ID Flags Name Address\n"
MSG1 >CSTR "%03d %b %4S $%H\n"
DEV.ID .BS 1
MAN
SAVE BIN/LSDEV.S

View File

@ -33,15 +33,15 @@ CS.START cld
.DA CS.QUIT
.DA 0
*--------------------------------------
CS.INIT >SYSCALL SYS.GetArgC
CS.INIT >SYSCALL GetArgC
cmp #1
beq .99
lda #1
>SYSCALL SYS.GetArgA
>SYSCALL SYS.GetFullPathYA
>SYSCALL GetArgA
>SYSCALL GetFullPathYA
stx hFullPath
>SYSCALL SYS.MKDIRYA
>SYSCALL MKDIRYA
pha save error code
jsr .98
@ -50,7 +50,7 @@ CS.INIT >SYSCALL SYS.GetArgC
rts
.98 lda hFullPath
>SYSCALL SYS.FreeMemA
>SYSCALL FreeMemA
.99 lda #SYSMGR.ERRSYN
sec
rts

View File

@ -44,10 +44,10 @@ L.MemStat .DA MemStat
.DA 0
*--------------------------------------
CS.INIT >LDYA L.MemStat
>SYSCALL SYS.GetMemStatYA
>SYSCALL GetMemStatYA
>LDYA L.MSG.Main
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
lda MemStat+S.MEMSTAT.MF
sec
@ -62,10 +62,10 @@ CS.INIT >LDYA L.MemStat
>PUSHW MemStat+S.MEMSTAT.ML
>LDYA L.MSG.Stat
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
*--------------------------------------
>LDYA L.MSG.Aux
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
lda MemStat+S.MEMSTAT.XF
sec
@ -80,10 +80,10 @@ CS.INIT >LDYA L.MemStat
>PUSHW MemStat+S.MEMSTAT.XL
>LDYA L.MSG.Stat
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
*--------------------------------------
>LDYA L.MSG.Kernel
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
lda MemStat+S.MEMSTAT.DH
sec
@ -98,10 +98,10 @@ CS.INIT >LDYA L.MemStat
>PUSHW MemStat+S.MEMSTAT.DL
>LDYA L.MSG.Stat
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
>LDYA L.MSG.End
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
lda #0
sec
rts
@ -112,11 +112,11 @@ CS.QUIT clc
rts
*--------------------------------------
CS.END
MSG.Main >CSTRING "--- Main Memory ---------------\n"
MSG.Aux >CSTRING "--- Aux Memory ----------------\n"
MSG.Kernel >CSTRING "--- Kernel (Drivers) Memory ---\n"
MSG.Stat >CSTRING " Low : $%H\n Free Ptr : $%H\n High : $%H\n Available Memory : %05D Bytes\n"
MSG.End >CSTRING "-------------------------------\n"
MSG.Main >CSTR "--- Main Memory ---------------\n"
MSG.Aux >CSTR "--- Aux Memory ----------------\n"
MSG.Kernel >CSTR "--- Kernel (Drivers) Memory ---\n"
MSG.Stat >CSTR " Low : $%H\n Free Ptr : $%H\n High : $%H\n Available Memory : %05D Bytes\n"
MSG.End >CSTR "-------------------------------\n"
MemStat .BS S.MEMSTAT
*--------------------------------------
.DUMMY

View File

@ -76,11 +76,11 @@ CS.RUN ldy #bCANCEL
bne .1
>LDYA L.MSG0
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
.1 ldy #MEM.COUNT
lda (pData),y
>SYSCALL SYS.GetMemByIDA
>SYSCALL GetMemByIDA
>STYA ZPPTR1
lda (ZPPTR1)
bpl .2
@ -126,19 +126,19 @@ CS.RUN ldy #bCANCEL
ldy #USED.COUNT
>PUSHB (pData),y
>LDYA L.MSG2
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
>PUSHW MemMgr.HiMem
>LDYA L.MSG3
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
>PUSHW MemMgr.Free
>LDYA L.MSG4
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
>PUSHW MemMgr.LoMem
>LDYA L.MSG5
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
lda MemMgr.Free
sec
@ -149,7 +149,7 @@ CS.RUN ldy #bCANCEL
>PUSHYA
>LDYA L.MSG6
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
sec
rts
*--------------------------------------
@ -185,7 +185,7 @@ CS.RUN.PRINTMEM ldy #S.MEM.LEN
>PUSHA
>LDYA L.MSG1
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
ldy #S.MEM.BIN
lda (ZPPTR1),y
@ -210,7 +210,7 @@ CS.RUN.PRINTMEM ldy #S.MEM.LEN
>PUSHW ZPPTR2 String
>PUSHB (ZPPTR2) Len
>LDYA L.MSG1.STR
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
bra .8
.2 ldy #15
@ -220,14 +220,14 @@ CS.RUN.PRINTMEM ldy #S.MEM.LEN
bpl .3
>LDYA L.MSG1.HEX
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
bra .8
****** BIN
.7 >SYSCALL SYS.GetMemPtrA
.7 >SYSCALL GetMemPtrA
>PUSHYA
>LDYA L.MSG1.BIN
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
.8 ldy #LINE.COUNT
lda (pData),y
@ -293,16 +293,16 @@ CS.QUIT clc
rts
*--------------------------------------
CS.END
MSG0 >CSTRING "hMem Flags PID REF PTR LEN BINPATH/DATA\n"
MSG1 >CSTRING " %03d %b %03d %03d $%H %05D "
MSG1.BIN >CSTRING "!BIN:%40S\n"
MSG1.STR >CSTRING "#STR:[%03d]:%32S\n"
MSG1.HEX >CSTRING "?HEX:%h%h%h%h.%h%h%h%h.%h%h%h%h.%h%h%h%h\n"
MSG2 >CSTRING "\nAllocated hMem:%d, Total:%d\n"
MSG3 >CSTRING "High Memory: $%H\n"
MSG4 >CSTRING "Free ULimit: $%H\n"
MSG5 >CSTRING "Low Memory: $%H\n"
MSG6 >CSTRING "\nFree Memory: %D Bytes.\n"
MSG0 >CSTR "hMem Flags PID REF PTR LEN BINPATH/DATA\n"
MSG1 >CSTR " %03d %b %03d %03d $%H %05D "
MSG1.BIN >CSTR "!BIN:%40S\n"
MSG1.STR >CSTR "#STR:[%03d]:%32S\n"
MSG1.HEX >CSTR "?HEX:%h%h%h%h.%h%h%h%h.%h%h%h%h.%h%h%h%h\n"
MSG2 >CSTR "\nAllocated hMem:%d, Total:%d\n"
MSG3 >CSTR "High Memory: $%H\n"
MSG4 >CSTR "Free ULimit: $%H\n"
MSG5 >CSTR "Low Memory: $%H\n"
MSG6 >CSTR "\nFree Memory: %D Bytes.\n"
*--------------------------------------
.DUMMY
.OR 0

View File

@ -55,11 +55,11 @@ L.MSG1.S .DA MSG1.S.0
.DA 0
*--------------------------------------
CS.INIT >LDYA L.LIBTCPIP
>SYSCALL SYS.LoadLibYA
>SYSCALL LoadLibYA
sta hLIBTCPIP
>LDYA L.MSG0
>SYSCALL SYS.PRINTFYA
>SYSCALL PRINTFYA
>LIBCALL hLIBTCPIP,LIBTCPIP.SKT.GETTABLE
>STYA ZPPTR1
@ -95,7 +95,7 @@ CS.INIT >LDYA L.LIBTCPIP
>PUSHB L.MSG1+1,x
>PUSHB L.MSG1,x
>LDYA L.MSG1
>SYSCALL SYS.PRINTFYA
>SYSCALL PRINTFYA
.7 clc
lda ZPPTR1
@ -116,31 +116,31 @@ CS.DOEVENT clc
rts
*--------------------------------------
CS.QUIT lda hLIBTCPIP
>SYSCALL SYS.FreeMemA
>SYSCALL FreeMemA
clc
rts
*--------------------------------------
CS.END
LIBTCPIP >PSTRING "libtcpip.o"
MSG0 >CSTRING "Proto Local Remote Options Status\n"
MSG1 >CSTRING "%s %03d.%03d.%03d.%03d:%05D %03d.%03d.%03d.%03d:%05D %b %s\n"
MSG1.UDP >CSTRING "UDP"
MSG1.TCP >CSTRING "TCP"
MSG1.RAW >CSTRING "RAW"
MSG1.RDM >CSTRING "RDM"
MSG1.SEQ >CSTRING "SEQ"
MSG1.INV >CSTRING "???"
MSG1.S.0 >CSTRING "*"
MSG1.S.1 >CSTRING "LISTENING"
MSG1.S.2 >CSTRING "SYN-SENT"
MSG1.S.3 >CSTRING "SYN-RECEIVED"
MSG1.S.4 >CSTRING "ESTABLISHED"
MSG1.S.5 >CSTRING "CLOSE-WAIT"
MSG1.S.6 >CSTRING "LAST-ACK"
MSG1.S.7 >CSTRING "FIN-WAIT-1"
MSG1.S.8 >CSTRING "FIN-WAIT-2"
MSG1.S.9 >CSTRING "CLOSING"
MSG1.S.10 >CSTRING "TIME-WAIT"
LIBTCPIP >PSTR "libtcpip.o"
MSG0 >CSTR "Proto Local Remote Options Status\n"
MSG1 >CSTR "%s %03d.%03d.%03d.%03d:%05D %03d.%03d.%03d.%03d:%05D %b %s\n"
MSG1.UDP >CSTR "UDP"
MSG1.TCP >CSTR "TCP"
MSG1.RAW >CSTR "RAW"
MSG1.RDM >CSTR "RDM"
MSG1.SEQ >CSTR "SEQ"
MSG1.INV >CSTR "???"
MSG1.S.0 >CSTR "*"
MSG1.S.1 >CSTR "LISTENING"
MSG1.S.2 >CSTR "SYN-SENT"
MSG1.S.3 >CSTR "SYN-RECEIVED"
MSG1.S.4 >CSTR "ESTABLISHED"
MSG1.S.5 >CSTR "CLOSE-WAIT"
MSG1.S.6 >CSTR "LAST-ACK"
MSG1.S.7 >CSTR "FIN-WAIT-1"
MSG1.S.8 >CSTR "FIN-WAIT-2"
MSG1.S.9 >CSTR "CLOSING"
MSG1.S.10 >CSTR "TIME-WAIT"
hLIBTCPIP .BS 1
SocketCount .BS 1
MAN

View File

@ -37,7 +37,7 @@ L.LIBTCPIP .DA LIBTCPIP
L.MSG.USAGE .DA MSG.USAGE
.DA 0
*--------------------------------------
CS.INIT >SYSCALL SYS.GetArgC
CS.INIT >SYSCALL GetArgC
cmp #1
beq .99
@ -64,7 +64,7 @@ CS.INIT >SYSCALL SYS.GetArgC
rts
.99 >LDYA L.MSG.USAGE
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
lda #SYSMGR.ERRSYN
sec
rts
@ -81,13 +81,13 @@ CS.DOEVENT
rts
*--------------------------------------
CS.QUIT lda hLIBTCPIP
>SYSCALL SYS.UnloadLibA
>SYSCALL UnloadLibA
clc
rts
*--------------------------------------
CS.END
MSG.USAGE >CSTRING "Usage : NFSMOUNT [HOST | IP]/export /mountvol\n"
LIBTCPIP >PSTRING "libtcpip.o"
MSG.USAGE >CSTR "Usage : NFSMOUNT [HOST | IP]/export /mountvol\n"
LIBTCPIP >PSTR "libtcpip.o"
hLIBTCPIP .BS 1
Socket .DA #S.SOCKET.SOCK.DGRAM
.BS 3

View File

@ -40,7 +40,7 @@ L.MSG.READ.OK4 .DA MSG.READ.OK4
L.MSG.USAGE .DA MSG.USAGE
.DA 0
*--------------------------------------
CS.INIT >SYSCALL SYS.GetArgC
CS.INIT >SYSCALL GetArgC
cmp #1
bne CS.INIT.SET
@ -56,7 +56,7 @@ CS.INIT.READ jsr NSC.Init
bpl .1
>LDYA L.MSG.READ.KO
>SYSCALL SYS.PrintfYA
>SYSCALL PrintfYA
lda #DEVMGR.ERRNOHW
sec
@ -65,14 +65,14 @@ CS.INIT.READ jsr NSC.Init
.8 jsr NSC.Dump
>LDYA L.MSG.USAGE
>SYSCALL SYS.PrintfYA
>SYSCALL PrintfYA
lda #0 tell TSKMGR that all done ok, but
sec we do not want to stay in memory
rts
CS.INIT.SET lda #1
>SYSCALL SYS.GetArgA
>SYSCALL GetArgA
>STYA ZPPtr1
lda (ZPPtr1)
@ -273,30 +273,30 @@ NSC.Dump ldx #1
>PUSHA
>LDYA L.MSG.READ.OK1
>SYSCALL SYS.PrintfYA
>SYSCALL PrintfYA
>LDYA L.MSG.READ.OK2.24
bit DS1216E.DATA+4
bpl .3
>LDYA L.MSG.READ.OK2.12
.3 >SYSCALL SYS.PrintfYA
.3 >SYSCALL PrintfYA
>LDYA L.MSG.READ.OK3
>SYSCALL SYS.PrintfYA
>SYSCALL PrintfYA
lda DS1216E.DATA+2
jsr PrintBCD
lda #'/'
>SYSCALL SYS.COutA
>SYSCALL COutA
lda DS1216E.DATA+1
jsr PrintBCD
lda #'/'
>SYSCALL SYS.COutA
>SYSCALL COutA
lda DS1216E.DATA
jsr PrintBCD
>LDYA L.MSG.READ.OK4
>SYSCALL SYS.PrintfYA
>SYSCALL PrintfYA
lda DS1216E.DATA+4
bpl .4
@ -304,15 +304,15 @@ NSC.Dump ldx #1
.4 and #$3F
jsr PrintBCD
lda #':'
>SYSCALL SYS.COutA
>SYSCALL COutA
lda DS1216E.DATA+5
jsr PrintBCD
lda #':'
>SYSCALL SYS.COutA
>SYSCALL COutA
lda DS1216E.DATA+6
jsr PrintBCD
lda #'.'
>SYSCALL SYS.COutA
>SYSCALL COutA
lda DS1216E.DATA+7
jsr PrintBCD
rts
@ -323,12 +323,12 @@ PrintBCD pha
lsr
lsr
ora #$30
>SYSCALL SYS.COutA
>SYSCALL COutA
bcs .9
pla
and #$0f
ora #$30
>SYSCALL SYS.COutA
>SYSCALL COutA
.9 rts
*--------------------------------------
GetBCD lda (ZPPtr1),y
@ -358,13 +358,13 @@ IsDigit cmp #'0'
rts
*--------------------------------------
CS.END
MSG.READ.KO >CSTRING "DS1216E Not Detected.\n"
MSG.READ.OK1 >CSTRING "DS1216E Detected:/OSC=%d,/RST=%d,mode="
MSG.READ.OK2.12 >CSTRING "am/pm"
MSG.READ.OK2.24 >CSTRING "24h"
MSG.READ.OK3 >CSTRING "\nDate:"
MSG.READ.OK4 >CSTRING "\nTime:"
MSG.USAGE >CSTRING "\n\nTo Reset the chip and set clock, type:\nNSCUTIL DD/MM/YY hh:mm:ss\n"
MSG.READ.KO >CSTR "DS1216E Not Detected.\n"
MSG.READ.OK1 >CSTR "DS1216E Detected:/OSC=%d,/RST=%d,mode="
MSG.READ.OK2.12 >CSTR "am/pm"
MSG.READ.OK2.24 >CSTR "24h"
MSG.READ.OK3 >CSTR "\nDate:"
MSG.READ.OK4 >CSTR "\nTime:"
MSG.USAGE >CSTR "\n\nTo Reset the chip and set clock, type:\nNSCUTIL DD/MM/YY hh:mm:ss\n"
TmpByte .BS 1
DS1216E.PATTERN .HS 5CA33AC55CA33AC5 Reverted 7->0
DS1216E.DETECT .BS 8

View File

@ -42,7 +42,7 @@ L.MSG2 .DA MSG2
L.MSG3 .DA MSG3
.DA 0
*--------------------------------------
CS.INIT >SYSCALL SYS.GetArgC
CS.INIT >SYSCALL GetArgC
cmp #1
bne .1
@ -51,7 +51,7 @@ CS.INIT >SYSCALL SYS.GetArgC
rts
.1 >LDYA L.LIBTCPIP
>SYSCALL SYS.LoadLibYA
>SYSCALL LoadLibYA
sta hLIBTCPIP
>LIBCALL hLIBTCPIP,LIBTCPIP.GET.IPCFG is TCPIP loaded ?
@ -89,25 +89,25 @@ CS.RUN jsr Init.Timeout
.1 >PUSHW pData DST.IP
lda #1
>SYSCALL SYS.GetArgA
>SYSCALL GetArgA
>PUSHYA
>LIBCALL hLIBTCPIP,LIBTCPIP.HST.GETBYNAME
bcc .2
>SYSCALL SYS.Sleep
>SYSCALL Sleep
jsr Wait.Timeout
bcc .1
lda #1
>SYSCALL SYS.GetArgA
>SYSCALL GetArgA
>PUSHYA
>LDYA L.MSG0
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
lda #1
sec
rts
.2 lda #1
>SYSCALL SYS.GetArgA
>SYSCALL GetArgA
>PUSHYA
ldy #3
@ -118,7 +118,7 @@ CS.RUN jsr Init.Timeout
>PUSHB (pData),y DST.IP+1
>PUSHB (pData) DST.IP
>LDYA L.MSG1
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
CS.RUN.ECHO >LIBCALL hLIBTCPIP,LIBTCPIP.NEW.ICMP.FRAME
>STYA ZPFrameBase1
@ -198,18 +198,18 @@ CS.RUN.ECHO >LIBCALL hLIBTCPIP,LIBTCPIP.NEW.ICMP.FRAME
.3 ldy #hFrame
lda (pData),y
>SYSCALL SYS.GetMemPtrA
>SYSCALL GetMemPtrA
>PUSHYA
>LIBCALL hLIBTCPIP,LIBTCPIP.SEND.ICMP.FRAME
bcc .4
>SYSCALL SYS.Sleep
>SYSCALL Sleep
jsr Wait.Timeout
bcc .3
.4 ldy #hFrame
lda (pData),y
>SYSCALL SYS.FreeMemA
>SYSCALL FreeMemA
ldy #bReply
lda #0
@ -217,7 +217,7 @@ CS.RUN.ECHO >LIBCALL hLIBTCPIP,LIBTCPIP.NEW.ICMP.FRAME
jsr Init.Timeout
CS.RUN.WAIT >SYSCALL SYS.Sleep
CS.RUN.WAIT >SYSCALL Sleep
ldy #bReply
lda (pData),y
bne .1
@ -237,7 +237,7 @@ CS.RUN.WAIT >SYSCALL SYS.Sleep
>PUSHB (pData),y DST.IP+1
>PUSHB (pData) DST.IP
>LDYA L.MSG2
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
.1 ldy #bCTRLC
lda (pData),y
@ -246,7 +246,7 @@ CS.RUN.WAIT >SYSCALL SYS.Sleep
lda (pData),y
beq .2
>SYSCALL SYS.Sleep
>SYSCALL Sleep
bra .1
.2 jmp CS.RUN.ECHO
@ -301,7 +301,7 @@ CS.DOEVENT lda (pEvent)
ldy #S.EVT.DATALO Get Frame hMem
lda (pEvent),y
>SYSCALL SYS.GetMemPtrA
>SYSCALL GetMemPtrA
>STYA ZPFrameBase1
ldy #S.IP.PROTOCOL
@ -374,7 +374,7 @@ CS.EVENT.REPLY lda #TIMEOUT.MAX
>PUSHB (ZPFrameBase1),y
>LDYA L.MSG3
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
ldy #bReply
lda (pData),y
@ -383,7 +383,7 @@ CS.EVENT.REPLY lda #TIMEOUT.MAX
rts
*--------------------------------------
CS.QUIT lda hLIBTCPIP
>SYSCALL SYS.UnloadLibA
>SYSCALL UnloadLibA
clc
rts
*--------------------------------------
@ -403,11 +403,11 @@ Wait.TimeOut sec
.9 rts
*--------------------------------------
CS.END
LIBTCPIP >PSTRING "libtcpip.o"
MSG0 >CSTRING "%S: Unknown host\n"
MSG1 >CSTRING "PING %d.%d.%d.%d (%S)\n"
MSG2 >CSTRING "%d.%d.%d.%d: TimeOut/Host unreachable\n"
MSG3 >CSTRING "32 bytes from %d.%d.%d.%d, icmp_seq=%D, ttl=%d, time=%D ms\n"
LIBTCPIP >PSTR "libtcpip.o"
MSG0 >CSTR "%S: Unknown host\n"
MSG1 >CSTR "PING %d.%d.%d.%d (%S)\n"
MSG2 >CSTR "%d.%d.%d.%d: TimeOut/Host unreachable\n"
MSG3 >CSTR "32 bytes from %d.%d.%d.%d, icmp_seq=%D, ttl=%d, time=%D ms\n"
hLIBTCPIP .BS 1
hDev .BS 1
TimeOut.ms .BS 2

View File

@ -42,14 +42,14 @@ CS.INIT >LDYAI TSKMGR.TABLE+S.PS
stz PS.COUNT
>LDYA L.MSG0
>SYSCALL SYS.PrintfYA
>SYSCALL PrintfYA
.1 lda (ZPPTR1)
bpl .4
ldy #S.PS.hCMDLINE
lda (ZPPTR1),y
>SYSCALL SYS.GetMemPtrA
>SYSCALL GetMemPtrA
>PUSHYA
ldy #S.PS.PID
@ -63,7 +63,7 @@ CS.INIT >LDYAI TSKMGR.TABLE+S.PS
lda (ZPPTR1),y
>PUSHA PID
>LDYA L.MSG1
>SYSCALL SYS.PrintfYA
>SYSCALL PrintfYA
.4 lda ZPPTR1
clc
@ -88,8 +88,8 @@ CS.QUIT clc
*--------------------------------------
CS.END
PS.COUNT .BS 1
MSG0 >CSTRING "ID Flags PID Command Line\n"
MSG1 >CSTRING "%03d %b %03d %S\n"
MSG0 >CSTR "ID Flags PID Command Line\n"
MSG1 >CSTR "%03d %b %03d %S\n"
MAN
SAVE BIN/PS.S
ASM

View File

@ -38,16 +38,16 @@ L.MSG.ERR .DA MSG.ERR
L.FullPath .DA FullPath
.DA 0
*--------------------------------------
CS.INIT >SYSCALL SYS.GetArgC
CS.INIT >SYSCALL GetArgC
cmp #1
bne .99
lda #1
>SYSCALL SYS.GetArgA
>SYSCALL SYS.GetFullPathYA
>SYSCALL GetArgA
>SYSCALL GetFullPathYA
stx hFullPath
>SYSCALL SYS.ListDirInitYA
>SYSCALL ListDirInitYA
bcs .98
ldy #hS.LISTDIR
sta (pData),y
@ -62,13 +62,13 @@ CS.INIT >SYSCALL SYS.GetArgC
.98 pha
lda hFullPath
>SYSCALL SYS.FreeMemA
>SYSCALL FreeMemA
pla
sec
rts
.99 >LDYA L.MSG.USAGE
>SYSCALL SYS.PStrOutYA
>SYSCALL PStrOutYA
lda #SYSMGR.ERRSYN
sec
rts
@ -88,11 +88,11 @@ CS.RUN ldy #bCANCEL
.1 ldy #hS.LISTDIR
lda (pData),y
>SYSCALL SYS.ListDirNextA
>SYSCALL ListDirNextA
bcs .99
pha
>SYSCALL SYS.GetMemPtrA
>SYSCALL GetMemPtrA
>STYA ZPPtr1
lda (ZPPtr1)
pha
@ -109,12 +109,12 @@ CS.RUN ldy #bCANCEL
ldy #hS.LISTDIR
lda (pData),y
>SYSCALL SYS.GetMemPtrA
>SYSCALL GetMemPtrA
>STYA ZPPtr2
ldy #S.LISTDIR.hPATH
lda (ZPPtr2),y
>SYSCALL SYS.GetMemPtrA
>SYSCALL GetMemPtrA
>STYA ZPPtr2
lda (ZPPtr2)
@ -138,21 +138,21 @@ CS.RUN ldy #bCANCEL
stx FullPath
>LDYA L.FullPath
>SYSCALL SYS.PStrOutYA
>SYSCALL PStrOutYA
>LDYA L.FullPath
>SYSCALL SYS.MLIDestroyYA
>SYSCALL MLIDestroyYA
bcs .5
>LDYA L.MSG.OK
>SYSCALL SYS.PStrOutYA
>SYSCALL PStrOutYA
bra .8
.5 >PUSHA
>LDYA L.MSG.ERR
>SYSCALL SYS.PStrOutYA
>SYSCALL PStrOutYA
.8 pla
>SYSCALL SYS.FreeMemA
>SYSCALL FreeMemA
clc
rts
*--------------------------------------
@ -198,20 +198,20 @@ CS.QUIT ldy #hS.LISTDIR
lda (pData),y
beq .1
>SYSCALL SYS.ListDirCloseA
>SYSCALL ListDirCloseA
.1 ldy #hDirPath
lda (pData),y
beq .2
>SYSCALL SYS.FreeMemA
>SYSCALL FreeMemA
.2 clc
rts
*--------------------------------------
CS.END
MSG.USAGE >PSTRING "Usage : RM [file/Dir, *,? wildcards allowed]\n"
MSG.OK >PSTRING " [Ok]\n"
MSG.ERR >PSTRING " [%h]\n"
MSG.USAGE >PSTR "Usage : RM [file/Dir, *,? wildcards allowed]\n"
MSG.OK >PSTR " [Ok]\n"
MSG.ERR >PSTR " [%h]\n"
hFullPath .BS 1
FullPath .BS 64
*--------------------------------------

View File

@ -44,12 +44,12 @@ L.MSG.DUMP0 .DA MSG.DUMP0
L.MSG.DUMP1 .DA MSG.DUMP1
.DA 0
*--------------------------------------
CS.INIT >SYSCALL SYS.GetArgC
CS.INIT >SYSCALL GetArgC
cmp #1
beq .99
>LDYA L.LIBTCPIP
>SYSCALL SYS.LoadLibYA
>SYSCALL LoadLibYA
sta hLIBTCPIP
>LIBCALL hLIBTCPIP,LIBTCPIP.GET.IPCFG is TCPIP loaded ?
@ -74,7 +74,7 @@ CS.INIT >SYSCALL SYS.GetArgC
rts
.99 >LDYA L.MSG.USAGE
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
lda #SYSMGR.ERRSYN
sec
rts
@ -83,20 +83,20 @@ CS.RUN jsr Init.Timeout
.1 >PUSHW L.Socket.Dst.Addr
lda #1
>SYSCALL SYS.GetArgA
>SYSCALL GetArgA
>PUSHYA
>LIBCALL hLIBTCPIP,LIBTCPIP.HST.GETBYNAME
bcc .2
>SYSCALL SYS.Sleep
>SYSCALL Sleep
jsr Wait.Timeout
bcc .1
lda #1
>SYSCALL SYS.GetArgA
>SYSCALL GetArgA
>PUSHYA
>LDYA L.MSG.UNKNOWN
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
sec
rts
@ -115,7 +115,7 @@ CS.RUN jsr Init.Timeout
>LIBCALL hLIBTCPIP,LIBTCPIP.SKT.SEND
bcc .4
>SYSCALL SYS.Sleep
>SYSCALL Sleep
jsr Wait.Timeout
bcc .3
bra .99
@ -127,31 +127,31 @@ CS.RUN jsr Init.Timeout
>LIBCALL hLIBTCPIP,LIBTCPIP.SKT.RCVDA
bcc .6
>SYSCALL SYS.Sleep
>SYSCALL Sleep
jsr Wait.Timeout
bcc .5
bra .99
.6 ldy #hFrame
sta (pData),y
>SYSCALL SYS.GetMemPtrA
>SYSCALL GetMemPtrA
>STYA ZPFrameBase
jsr DumpRPCFrame
ldy #hFrame
lda (pData),y
>SYSCALL SYS.FreeMemA
>SYSCALL FreeMemA
lda #0
sec
rts
.99 lda #1
>SYSCALL SYS.GetArgA
>SYSCALL GetArgA
>PUSHYA
>LDYA L.MSG.TIMEOUT
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
sec
rts
*--------------------------------------
@ -198,7 +198,7 @@ CS.QUIT ldy #hSocket
lda hLIBTCPIP
beq .8
>SYSCALL SYS.UnloadLibA
>SYSCALL UnloadLibA
.8 clc
rts
@ -227,7 +227,7 @@ DumpRPCFrame lda #S.UDP+24
sta ZPFrameBase+1
>LDYA L.MSG.DUMP0
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
.1 ldy #3
lda (ZPFrameBase),y Value follows?
@ -251,7 +251,7 @@ DumpRPCFrame lda #S.UDP+24
bne .7
>LDYA L.MSG.DUMP1
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
lda #20
clc
@ -264,12 +264,12 @@ DumpRPCFrame lda #S.UDP+24
.9 rts
*--------------------------------------
CS.END
LIBTCPIP >PSTRING "libtcpip.o"
MSG.USAGE >CSTRING "Usage : RPCDUMP <ip|host>\n"
MSG.UNKNOWN >CSTRING "%S: Unknown host\n"
MSG.TIMEOUT >CSTRING "No response from %S\n"
MSG.DUMP0 >CSTRING "Program Ver Proto:Port\n"
MSG.DUMP1 >CSTRING "%10L %2d %2d:%D\n"
LIBTCPIP >PSTR "libtcpip.o"
MSG.USAGE >CSTR "Usage : RPCDUMP <ip|host>\n"
MSG.UNKNOWN >CSTR "%S: Unknown host\n"
MSG.TIMEOUT >CSTR "No response from %S\n"
MSG.DUMP0 >CSTR "Program Ver Proto:Port\n"
MSG.DUMP1 >CSTR "%10L %2d %2d:%D\n"
Socket .DA #S.SOCKET.SOCK.DGRAM
.BS 3
Socket.Src.Addr .BS 4

View File

@ -9,7 +9,7 @@ AUTO 6
* hDIRs .BS MAX.RECURSE+1
* hBasePath .BS 1
*--------------------------------------
InitSrcDirYA >SYSCALL SYS.GetFullPathYA
InitSrcDirYA >SYSCALL GetFullPathYA
bcc .10
rts
@ -22,7 +22,7 @@ InitSrcDirYA >SYSCALL SYS.GetFullPathYA
>PUSHW L.STAT
>PUSHW ZPPtr1
>SYSCALL SYS.STAT
>SYSCALL STAT
bcs .1 File/DIR does not exists, go extract wildcard
@ -59,7 +59,7 @@ InitSrcDirYA >SYSCALL SYS.GetFullPathYA
stx UsrBuf256
>LDYAI UsrBuf256
>SYSCALL SYS.NewPstrYA
>SYSCALL NewPstrYA
bcs .9
txa
ldy #hFilter
@ -67,7 +67,7 @@ InitSrcDirYA >SYSCALL SYS.GetFullPathYA
.5 >PUSHWI 256
>PUSHBI 0
>SYSCALL SYS.GetMem Get a 256 buffer to store BasePath
>SYSCALL GetMem Get a 256 buffer to store BasePath
bcs .9
>STYA ZPPtr2
@ -77,10 +77,10 @@ InitSrcDirYA >SYSCALL SYS.GetFullPathYA
>PUSHW ZPPtr1 Push Src
>PUSHW ZPPtr2 Push Dst
>SYSCALL SYS.PStrCpy
>SYSCALL PStrCpy
>LDYA ZPPtr1
>SYSCALL SYS.OPENDIRYA
>SYSCALL OPENDIRYA
bcs .9
pha
@ -100,7 +100,7 @@ InitSrcDirYA >SYSCALL SYS.GetFullPathYA
.9 pha
.90 lda #$ff self modified
>SYSCALL SYS.FreeMemA
>SYSCALL FreeMemA
pla
sec
rts
@ -114,15 +114,15 @@ EnterSubDirYA >STYA ZPPtr2 save SUBDIR for StrCat
ldy #hBasePath
lda (pData),y
>SYSCALL SYS.GetMemPtrA
>SYSCALL GetMemPtrA
>STYA ZPPtr1 save full path
>PUSHW ZPPtr1 push Src for StrCat
>PUSHW ZPPtr2
>SYSCALL SYS.PStrCat
>SYSCALL PStrCat
>LDYA ZPPtr1
>SYSCALL SYS.OPENDIRYA
>SYSCALL OPENDIRYA
bcs .99
pha
@ -144,11 +144,11 @@ LeaveSubDir ldy #hDIRs
lda (pData),y
tay
lda (pData),y
>SYSCALL SYS.CLOSEDIRA
>SYSCALL CLOSEDIRA
ldy #hBasePath
lda (pData),y
>SYSCALL SYS.GetMemPtrA
>SYSCALL GetMemPtrA
>STYA ZPPtr1 save full path

View File

@ -37,12 +37,12 @@ L.MSG.DETECT .DA MSG.DETECT
.DA 0 End Of Reloc Table
*--------------------------------------
Dev.Detect >LDYA L.MSG.DETECT
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
clc
rts
CS.END
MSG.DETECT >CSTRING "Apple IIe/IIc 80 Col Driver.\n"
MSG.DETECT >CSTR "Apple IIe/IIc 80 Col Driver.\n"
*--------------------------------------
* Device Header (16 Bytes)
*--------------------------------------
@ -50,7 +50,7 @@ DEV.HEADER cld
jmp (DRV.CS.START,x)
.HS 00 DevID
.DA #S.DEV.F.EVENT+S.DEV.F.COUT+S.DEV.F.CHAR
>PSTRING "CON" NAME
>PSTR "CON" NAME
.HS 00 NAME must Be 5 bytes long
.HS 00
.HS 00.00.00.00
@ -774,8 +774,8 @@ Char.Out.Get sec
.9 rts
*--------------------------------------
DRV.CS.END
EscCodes >PSTRING "DMc"
EscSeqCmds >PSTRING "mnrKH"
EscCodes >PSTR "DMc"
EscSeqCmds >PSTR "mnrKH"
BASEL .HS 00.80.00.80.00.80.00.80.28.A8.28.A8.28.A8.28.A8.50.D0.50.D0.50.D0.50.D0
BASEH .HS 04.04.05.05.06.06.07.07.04.04.05.05.06.06.07.07.04.04.05.05.06.06.07.07
CH .BS 1

View File

@ -36,7 +36,7 @@ L.MSG.DETECT .DA MSG.DETECT
.DA 0 End Of Reloc Table
*--------------------------------------
Dev.Detect >LDYA L.MSG.DETECT
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
ldx #0
.1 txa
@ -123,7 +123,7 @@ Dev.Detect >LDYA L.MSG.DETECT
clc
rts
CS.END
MSG.DETECT >CSTRING "\nApple IIe/IIc DHGR Driver.\n"
MSG.DETECT >CSTR "\nApple IIe/IIc DHGR Driver.\n"
*--------------------------------------
* Device Header (16 Bytes)
*--------------------------------------
@ -131,7 +131,7 @@ DEV.HEADER cld
jmp (DRV.CS.START,x)
.HS 00 DevID
.DA #0 No Flag
>PSTRING "GFX" NAME
>PSTR "GFX" NAME
.HS 00 NAME must Be 5 bytes long
.HS 00
.HS 00.00.00.00

View File

@ -38,7 +38,7 @@ L.DEV.HEADER.NAME .DA DEV.HEADER.NAME
*--------------------------------------
Dev.Detect >STYA Args
>LDYA L.MSG.DETECT
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
ldx #$10
.1 lda L91C96.BSR+1,x
@ -53,7 +53,7 @@ Dev.Detect >STYA Args
bpl .1 not yat at $80
>LDYA L.MSG.DETECT.KO
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
lda #DEVMGR.ERRNOHW Not Found in any slot, exiting
sec
@ -68,7 +68,7 @@ Dev.Detect >STYA Args
sec
ror USERMAC
>SYSCALL SYS.GetMemPtrA
>SYSCALL GetMemPtrA
>STYA ZPTmpPTR
jsr DecodeMac
bcc .4
@ -78,16 +78,16 @@ Dev.Detect >STYA Args
.4 >PUSHW L.DEV.HEADER.NAME
>LDYA L.MSG.DETECT.OK
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
clc
rts
*--------------------------------------
.INB DRV/X.NET.DRV.S
*--------------------------------------
CS.END
MSG.DETECT >CSTRING "LanCeGS/SMSC91C96 Driver.\n"
MSG.DETECT.OK >CSTRING "LanCeGS/SMSC91C96 Installed As Device : %S\n"
MSG.DETECT.KO >CSTRING "Hardware Not Found.\n"
MSG.DETECT >CSTR "LanCeGS/SMSC91C96 Driver.\n"
MSG.DETECT.OK >CSTR "LanCeGS/SMSC91C96 Installed As Device : %S\n"
MSG.DETECT.KO >CSTR "Hardware Not Found.\n"
Args .BS 2
*--------------------------------------
* Device Header (16 Bytes)
@ -95,7 +95,7 @@ Args .BS 2
DEV.HEADER cld
jmp (DRV.CS.START,x)
.DA #S.DEV.F.SHARE+S.DEV.F.EVENT
DEV.HEADER.NAME >PSTRING "ETH1" NAME
DEV.HEADER.NAME >PSTR "ETH1" NAME
.HS 00.00
.HS 00.00.00.00
*--------------------------------------
@ -215,7 +215,7 @@ GETEVENT.RxOK lda #L91C96.2.PTR.RCVD+L91C96.2.PTR.AUTOI+L91C96.2.PTR.READ
inc
.11 >PUSHYA FRAMLEN+2
>PUSHBI 0
>SYSCALL SYS.GetMem
>SYSCALL GetMem
bcs .99
>STYA ZPTmpPTR
txa

View File

@ -64,7 +64,7 @@ L.DEV.HEADER.NAME .DA DEV.HEADER.NAME
.DA 0 End Of Reloc Table
*--------------------------------------
Dev.Detect >LDYA L.MSG.DETECT
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
stz ZPTmpPtr1
lda #$C1
@ -86,7 +86,7 @@ Dev.Detect >LDYA L.MSG.DETECT
bne .1
>LDYA L.MSG.DETECT.KO
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
lda #DEVMGR.ERRNOHW Not Found in any slot, exiting
sec
@ -106,14 +106,14 @@ Dev.Detect >LDYA L.MSG.DETECT
>PUSHW L.DEV.HEADER.NAME
>LDYA L.MSG.DETECT.OK
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
clc
rts
*--------------------------------------
CS.END
MSG.DETECT >CSTRING "Apple Mouse Card/IIc Mouse Driver.\n"
MSG.DETECT.OK >CSTRING "Mouse Installed As Device : %S\n"
MSG.DETECT.KO >CSTRING "No Mouse Found.\n"
MSG.DETECT >CSTR "Apple Mouse Card/IIc Mouse Driver.\n"
MSG.DETECT.OK >CSTR "Mouse Installed As Device : %S\n"
MSG.DETECT.KO >CSTR "No Mouse Found.\n"
DEVSIG.Offset .HS 05070B0CFB
DEVSIG.Value .HS 38180120D6
DEVSIG.Length .EQ DEVSIG.Value-DEVSIG.Offset
@ -124,7 +124,7 @@ DEV.HEADER cld
jmp (DRV.CS.START,x)
.HS 00 DevID
.DA #S.DEV.F.EVENT
DEV.HEADER.NAME >PSTRING "MOU1" NAME
DEV.HEADER.NAME >PSTR "MOU1" NAME
.HS 00
.HS 00.00.00.00
*--------------------------------------

View File

@ -37,7 +37,7 @@ L.DEV.HEADER.NAME .DA DEV.HEADER.NAME
.DA 0 End Of Reloc Table
*--------------------------------------
Dev.Detect >LDYA L.MSG.DETECT
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
stz ZPTmpPtr1
lda #$C1
@ -58,7 +58,7 @@ Dev.Detect >LDYA L.MSG.DETECT
bne .1
>LDYA L.MSG.DETECT.KO
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
lda #DEVMGR.ERRNOHW Not Found in any slot, exiting
sec
@ -78,21 +78,21 @@ Dev.Detect >LDYA L.MSG.DETECT
>PUSHW L.DEV.HEADER.NAME
>LDYA L.MSG.DETECT.OK
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
clc
rts
*--------------------------------------
CS.END
MSG.DETECT >CSTRING "Apple PIC (Parallel Interface Card).\n"
MSG.DETECT.OK >CSTRING "PIC Installed As Device : %S\n"
MSG.DETECT.KO >CSTRING "No PIC Found.\n"
MSG.DETECT >CSTR "Apple PIC (Parallel Interface Card).\n"
MSG.DETECT.OK >CSTR "PIC Installed As Device : %S\n"
MSG.DETECT.KO >CSTR "No PIC Found.\n"
*--------------------------------------
* Device Header (16 Bytes)
*--------------------------------------
DEV.HEADER cld
jmp (DRV.CS.START,x)
.DA #S.DEV.F.EVENT+S.DEV.F.COUT+S.DEV.F.CHAR
DEV.HEADER.NAME >PSTRING "LPT1" NAME
DEV.HEADER.NAME >PSTR "LPT1" NAME
.HS 00.00
.HS 00.00.00.00
*--------------------------------------

View File

@ -63,7 +63,7 @@ L.DEV.HEADER.NAME .DA DEV.HEADER.NAME
*--------------------------------------
Dev.Detect sta hArgs
>LDYA L.MSG.DETECT
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
stz ZPTmpPtr1
lda #$C1
@ -85,7 +85,7 @@ Dev.Detect sta hArgs
bne .1
>LDYA L.MSG.DETECT.KO
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
lda #DEVMGR.ERRNOHW Not Found in any slot, exiting
sec
@ -105,7 +105,7 @@ Dev.Detect sta hArgs
>PUSHW L.DEV.HEADER.NAME
>LDYA L.MSG.DETECT.OK
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
clc
rts
*--------------------------------------
@ -113,9 +113,9 @@ CS.END
DEVSIG.Offset .HS 05070B0C
DEVSIG.Value .HS 38180131
DEVSIG.Length .EQ DEVSIG.Value-DEVSIG.Offset
MSG.DETECT >CSTRING "Apple SSC (Super Serial Card,//c Serial Port) Driver.\n"
MSG.DETECT.OK >CSTRING "SSC Installed As Device : %S\n"
MSG.DETECT.KO >CSTRING "No SSC Found.\n"
MSG.DETECT >CSTR "Apple SSC (Super Serial Card,//c Serial Port) Driver.\n"
MSG.DETECT.OK >CSTR "SSC Installed As Device : %S\n"
MSG.DETECT.KO >CSTR "No SSC Found.\n"
hArgs .BS 1
*--------------------------------------
* Device Header (16 Bytes)
@ -123,7 +123,7 @@ hArgs .BS 1
DEV.HEADER cld
jmp (DRV.CS.START,x)
.DA #S.DEV.F.EVENT+S.DEV.F.COUT+S.DEV.F.CHAR
DEV.HEADER.NAME >PSTRING "COM1" NAME
DEV.HEADER.NAME >PSTR "COM1" NAME
.HS 00.00
.HS 00.00.00.00
*--------------------------------------

View File

@ -95,7 +95,7 @@ L.DEV.HEADER.NAME .DA DEV.HEADER.NAME
*--------------------------------------
Dev.Detect sta hArgs
>LDYA L.MSG.DETECT
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
stz ZPTmpPtr1
lda #$C1
@ -117,7 +117,7 @@ Dev.Detect sta hArgs
bne .1
>LDYA L.MSG.DETECT.KO
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
lda #DEVMGR.ERRNOHW Not Found in any slot, exiting
sec
@ -140,7 +140,7 @@ Dev.Detect sta hArgs
>PUSHW L.DEV.HEADER.NAME
>LDYA L.MSG.DETECT.OK
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
clc
rts
*--------------------------------------
@ -148,9 +148,9 @@ CS.END
DEVSIG.Offset .HS 05070B0C
DEVSIG.Value .HS 38180131
DEVSIG.Length .EQ DEVSIG.Value-DEVSIG.Offset
MSG.DETECT >CSTRING "Apple SSC (Super Serial Card,//c Serial Port) Driver (IRQ Enabled).\n"
MSG.DETECT.OK >CSTRING "SSC Installed As Device : %S\n"
MSG.DETECT.KO >CSTRING "No SSC Found.\n"
MSG.DETECT >CSTR "Apple SSC (Super Serial Card,//c Serial Port) Driver (IRQ Enabled).\n"
MSG.DETECT.OK >CSTR "SSC Installed As Device : %S\n"
MSG.DETECT.KO >CSTR "No SSC Found.\n"
hArgs .BS 1
*--------------------------------------
* Device Header (16 Bytes)
@ -158,7 +158,7 @@ hArgs .BS 1
DEV.HEADER cld
jmp (DRV.CS.START,x)
.DA #S.DEV.F.IRQ+S.DEV.F.EVENT+S.DEV.F.COUT+S.DEV.F.CHAR
DEV.HEADER.NAME >PSTRING "COM1" NAME
DEV.HEADER.NAME >PSTR "COM1" NAME
.HS 00.00
.HS 00.00.00.00
*--------------------------------------

View File

@ -38,7 +38,7 @@ L.DEV.HEADER.NAME .DA DEV.HEADER.NAME
*--------------------------------------
Dev.Detect >STYA Args
>LDYA L.MSG.DETECT
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
ldx #$10+$88
.1 lda #W5100.MR.RST
@ -68,7 +68,7 @@ Dev.Detect >STYA Args
bcc .1 #$108 ?
>LDYA L.MSG.DETECT.KO
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
lda #DEVMGR.ERRNOHW
sec
@ -96,7 +96,7 @@ Dev.Detect >STYA Args
sta MAC+5
bra .8
.4 >SYSCALL SYS.GetMemPtrA
.4 >SYSCALL GetMemPtrA
>STYA ZPTmpPTR
jsr DecodeMac
bcc .8
@ -106,16 +106,16 @@ Dev.Detect >STYA Args
.8 >PUSHW L.DEV.HEADER.NAME
>LDYA L.MSG.DETECT.OK
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
clc
rts
*--------------------------------------
.INB DRV/X.NET.DRV.S
*--------------------------------------
CS.END
MSG.DETECT >CSTRING "UtherNet2/W5100 Driver (ARP OffLoad).\n"
MSG.DETECT.OK >CSTRING "UtherNet2/W5100 Installed As Device : %S\n"
MSG.DETECT.KO >CSTRING "Hardware Not Found.\n"
MSG.DETECT >CSTR "UtherNet2/W5100 Driver (ARP OffLoad).\n"
MSG.DETECT.OK >CSTR "UtherNet2/W5100 Installed As Device : %S\n"
MSG.DETECT.KO >CSTR "Hardware Not Found.\n"
Args .BS 2
*--------------------------------------
* Device Header (16 Bytes)
@ -124,7 +124,7 @@ DEV.HEADER cld
jmp (DRV.CS.START,x)
.HS 00
.DA #S.DEV.F.SHARE+S.DEV.F.EVENT
DEV.HEADER.NAME >PSTRING "ETH1" NAME
DEV.HEADER.NAME >PSTR "ETH1" NAME
.HS 00
.HS 00.00.00.00
*--------------------------------------
@ -223,7 +223,7 @@ GETEVENT.RxOK >AR.SELECT S0.RX.RD
>PUSHYA
>PUSHBI 0
>SYSCALL SYS.GetMem
>SYSCALL GetMem
bcs GETEVENT.Err
>STYA ZPTmpPTR
txa

View File

@ -38,7 +38,7 @@ L.DEV.HEADER.NAME .DA DEV.HEADER.NAME
*--------------------------------------
Dev.Detect >STYA ARGS
>LDYA L.MSG.DETECT
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
ldx #$10
.1 >LDYAI PP.ID
@ -58,7 +58,7 @@ Dev.Detect >STYA ARGS
bne .1
>LDYA L.MSG.DETECT.KO
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
lda #DEVMGR.ERRNOHW
sec
@ -94,16 +94,16 @@ Dev.Detect >STYA ARGS
.8 >PUSHW L.DEV.HEADER.NAME
>LDYA L.MSG.DETECT.OK
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
clc
rts
*--------------------------------------
.INB DRV/X.NET.DRV.S
*--------------------------------------
CS.END
MSG.DETECT >CSTRING "UtherNet/CS8900A Driver.\n"
MSG.DETECT.OK >CSTRING "UtherNet/CS8900A Installed As Device : "
MSG.DETECT.KO >CSTRING "Hardware Not Found.\n"
MSG.DETECT >CSTR "UtherNet/CS8900A Driver.\n"
MSG.DETECT.OK >CSTR "UtherNet/CS8900A Installed As Device : "
MSG.DETECT.KO >CSTR "Hardware Not Found.\n"
ARGS .BS 2
*--------------------------------------
* Device Header (16 Bytes)
@ -112,7 +112,7 @@ DEV.HEADER cld
jmp (DRV.CS.START,x)
.HS 00
.DA #S.DEV.F.SHARE+S.DEV.F.EVENT
DEV.HEADER.NAME >PSTRING "ETH1" NAME
DEV.HEADER.NAME >PSTR "ETH1" NAME
.HS 00
.HS 00.00.00.00
*--------------------------------------
@ -189,7 +189,7 @@ GETEVENT.RxOK and /PP.RxEvent.Brdcast
.11 >PUSHYA Size+2
>PUSHBI 0
>SYSCALL SYS.GetMem
>SYSCALL GetMem
bcs GETEVENT.Err
>STYA ZPTmpPTR
txa

View File

@ -45,7 +45,7 @@ L.DEV.HEADER.NAME .DA DEV.HEADER.NAME
*--------------------------------------
Dev.Detect >STYA Args
>LDYA L.MSG.DETECT
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
ldx #$10+$88
.1 lda #W5100.MR.RST
@ -75,7 +75,7 @@ Dev.Detect >STYA Args
bcc .1 #$108 ?
>LDYA L.MSG.DETECT.KO
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
lda #DEVMGR.ERRNOHW
sec
@ -103,7 +103,7 @@ Dev.Detect >STYA Args
sta MAC+5
bra .8
.4 >SYSCALL SYS.GetMemPtrA
.4 >SYSCALL GetMemPtrA
>STYA ZPTmpPTR
jsr DecodeMac
bcc .8
@ -113,16 +113,16 @@ Dev.Detect >STYA Args
.8 >PUSHW L.DEV.HEADER.NAME
>LDYA L.MSG.DETECT.OK
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
clc
rts
*--------------------------------------
.INB DRV/X.NET.DRV.S
*--------------------------------------
CS.END
MSG.DETECT >CSTRING "UtherNet2/W5100 Driver.\n"
MSG.DETECT.OK >CSTRING "UtherNet2/W5100 Installed As Device : %S\n"
MSG.DETECT.KO >CSTRING "Hardware Not Found.\n"
MSG.DETECT >CSTR "UtherNet2/W5100 Driver.\n"
MSG.DETECT.OK >CSTR "UtherNet2/W5100 Installed As Device : %S\n"
MSG.DETECT.KO >CSTR "Hardware Not Found.\n"
Args .BS 2
*--------------------------------------
* Device Header (16 Bytes)
@ -131,7 +131,7 @@ DEV.HEADER cld
jmp (DRV.CS.START,x)
.HS 00
.DA #S.DEV.F.SHARE+S.DEV.F.EVENT
DEV.HEADER.NAME >PSTRING "ETH1" NAME
DEV.HEADER.NAME >PSTR "ETH1" NAME
.HS 00
.HS 00.00.00.00
*--------------------------------------
@ -219,7 +219,7 @@ GETEVENT.RxOK >AR.SELECT S0.RX.RD
* >PUSHYA Already pushed....
>PUSHBI 0
>SYSCALL SYS.GetMem
>SYSCALL GetMem
bcs GETEVENT.Err
>STYA ZPTmpPTR
txa

View File

@ -532,5 +532,4 @@ S.MEMSTAT.DH .EQ 20
S.MEMSTAT .EQ 24
*--------------------------------------
MAN
SAVE INC/A2OSX.I
SAVE /A2OSX.DEV/INC/A2OSX.I

View File

@ -67,4 +67,4 @@ ATN .EQ $F09E
*--------------------------------------
MAN
SAVE INC/APPLESOFT.I
SAVE /A2OSX.DEV/INC/APPLESOFT.I

View File

@ -94,4 +94,4 @@ RRAMWRAMBNK1 .EQ $C08B RR
*--------------------------------------
CLRC8ROM .EQ $CFFF R, Release C800-CFFF Rom Space for all cards
MAN
SAVE INC/IO.I
SAVE /A2OSX.DEV/INC/IO.I

View File

@ -25,5 +25,4 @@ S.MD5.FINALIZED .EQ 25
S.MD5.SIZE .EQ 26
*--------------------------------------
MAN
SAVE INC/LIBCRYPT.I
SAVE /A2OSX.DEV/INC/LIBCRYPT.I

View File

@ -30,5 +30,4 @@ LIBGFX.HideCursor .EQ 10
LIBGFX.ShowCursor .EQ 12
*--------------------------------------
MAN
SAVE INC/LIBGFX.I
SAVE /A2OSX.DEV/INC/LIBGFX.I

View File

@ -1,23 +0,0 @@
PR#3
PREFIX /A2OSX.SRC
NEW
INC 1
AUTO 6
.LIST OFF
.OP 65C02
*--------------------------------------
*LIBSTR.PRINTF .EQ 4
*LIBSTR.PRINTC .EQ 6
*LIBSTR.PRINTP .EQ 8
*LIBSTR.STRMATCHP .EQ 10
*LIBSTR.STRCPYP .EQ 12
*LIBSTR.STRCATP .EQ 14
*LIBSTR.UCASEP .EQ 16
*LIBSTR.LCASEP .EQ 18
*LIBSTR.PRINTDATE .EQ 20
*LIBSTR.PRINTTIME .EQ 22
LIBSTR.SSCANF .EQ 24
*--------------------------------------
MAN
SAVE INC/LIBSTR.I

View File

@ -328,4 +328,4 @@ S.DNS.QTYPE.ANY .EQ 255
S.DNS.QCLASS.IN .EQ 1
*--------------------------------------
MAN
SAVE INC/LIBTCPIP.I
SAVE /A2OSX.DEV/INC/LIBTCPIP.I

View File

@ -23,7 +23,7 @@ AUTO 6
* SYSCALLs Macros
*--------------------------------------
.MA SYSCALL
ldx #]1
ldx #SYS.]1
jsr A2osX.SYSCALL
.EM
*--------------------------------------
@ -279,15 +279,15 @@ AUTO 6
*--------------------------------------
* General Strings Macros
*--------------------------------------
.MA CSTRING
.MA CSTR
.AS "]1"
.HS 00
.EM
*--------------------------------------
.MA PSTRING
.MA PSTR
.DA #:1-*-1
.AS "]1"
:1 .EQ *
.EM
MAN
SAVE INC/MACROS.I
SAVE /A2OSX.DEV/INC/MACROS.I

View File

@ -97,4 +97,4 @@ MONZ .EQ $FF69 ENTER MONITOR QUIETLY
GETNUM .EQ $FFA7 ASCII TO HEX IN 3E & 3F
*--------------------------------------
MAN
SAVE INC/MONITOR.I
SAVE /A2OSX.DEV/INC/MONITOR.I

View File

@ -181,4 +181,4 @@ KBAKVER .EQ $BFFE
KVERSION .EQ $BFFF
*--------------------------------------
MAN
SAVE INC/PRODOS.I
SAVE /A2OSX.DEV/INC/PRODOS.I

View File

@ -39,4 +39,4 @@ SGNCPR .EQ $AB FLAGS OPP SIGN IN FP ROUT.
FAC.EXTENSION .EQ $AC FAC EXTENSION BYTE
*--------------------------------------
MAN
SAVE INC/ZP.I
SAVE /A2OSX.DEV/INC/ZP.I

View File

@ -121,7 +121,7 @@ LIB.UNLOAD clc
* out :
* A = hMem To MessageDigest
*--------------------------------------
MD5PStrA >SYSCALL SYS.GetMemPtrA
MD5PStrA >SYSCALL GetMemPtrA
>STYA ZPTmpPtr3 1 and 2 used by other MD5 functions
ldy #0
lda (ZPTmpPtr3),y get PStr len
@ -145,7 +145,7 @@ MD5PStrA >SYSCALL SYS.GetMemPtrA
plx get back MD5 Context hMem
pha save MessageDigest hMem
txa
>SYSCALL SYS.FreeMemA Free MD5 Context
>SYSCALL FreeMemA Free MD5 Context
pla get back MessageDigest hMem
clc
.9 rts
@ -157,7 +157,7 @@ MD5PStrA >SYSCALL SYS.GetMemPtrA
*--------------------------------------
MD5Init >PUSHWI S.MD5.SIZE
>PUSHBI 0
>SYSCALL SYS.GetMem
>SYSCALL GetMem
bcs .9
>STYA ZPTmpPtr1
ldy #0
@ -182,7 +182,7 @@ MD5Init >PUSHWI S.MD5.SIZE
* PULLW DATA LEN
*--------------------------------------
MD5Update >PULLA get MD5 Context
>SYSCALL SYS.GetMemPtrA
>SYSCALL GetMemPtrA
>STYA ZPTmpPtr1 get MD5 Context
>PULLW ZPDataPtr get DATA
>PULLW ZPDataLen get LEN
@ -248,7 +248,7 @@ MD5Update >PULLA get MD5 Context
* Out:
* A = MessageDigest (PSTR, 16 Bytes, 32 Chars)
*--------------------------------------
MD5FinalizeA >SYSCALL SYS.GetMemPtrA
MD5FinalizeA >SYSCALL GetMemPtrA
>STYA ZPTmpPtr1 get MD5 Context
ldy #S.MD5.FINALIZED
lda (ZPTmpPtr1),y
@ -256,7 +256,7 @@ MD5FinalizeA >SYSCALL SYS.GetMemPtrA
jsr MD5ExtraChunk
.11 >PUSHWI 33 Len + 32 Digits
>PUSHBI 0
>SYSCALL SYS.GetMem
>SYSCALL GetMem
bcs .9
>STYA ZPTmpPtr2
phx save hMem for return

View File

@ -43,7 +43,7 @@ LIB.UNLOAD clc
*--------------------------------------
InitGFXA sta hDev
>SYSCALL SYS.GetDevInfoA
>SYSCALL GetDevInfoA
bcs .9
>STYA ZPPtr1

View File

@ -1,785 +0,0 @@
PR#3
PREFIX /A2OSX.SRC
NEW
INC 1
AUTO 6
.LIST OFF
.OP 65C02
.OR $2000
.TF /A2OSX.BOOT/LIB/LIBSTR.O
*--------------------------------------
.INB INC/MACROS.I
.INB INC/A2OSX.I
*--------------------------------------
ZPTmpPtr1 .EQ ZPLIB
ZPTmpPtr2 .EQ ZPLIB+2
ZPTmpPtr3 .EQ ZPLIB+4
*--------------------------------------
* File Header (16 Bytes)
*--------------------------------------
CS.START cld
jmp (.1,x)
.DA #$61 6502,Level 1 (65c02)
.DA #1 BIN Layout Version 1
.DA 0
.DA CS.END-CS.START
.DA 0
.DA 0
.DA 0
*--------------------------------------
* Relocation Table
*--------------------------------------
.1 .DA LIB.LOAD
.DA LIB.UNLOAD
.DA PrintF
.DA PrintC
.DA PrintP
.DA STRMATCHP
.DA STRCPYP
.DA STRCATP
.DA UCASEP
.DA LCASEP
.DA PrintDATE
.DA PrintTIME
.DA SSCANF
*--------------------------------------
PrintFJMP1 .DA PrintFA
.DA PrintFB,PrintFBB
.DA PrintFD,PrintFDD,PrintFL
.DA PrintFE,PrintFEE
.DA PrintFH,PrintFHH
.DA PrintFI,PrintFII
.DA PrintFSC,PrintFSP
.DA PrintFT,PrintFTT
PrintFJMP2 .DA PrintFESC,PrintFCR,PrintFBKSLH,PrintFPERCENT
*--------------------------------------
.DA 0
*--------------------------------------
LIB.LOAD
LIB.UNLOAD clc
rts
*--------------------------------------
* PrintF :
* Prints C-Style String
* PULLW Pointer to Sting,Last Byte negative
* %a pull 1 byte to Print ATTRIB String
* %b pull 1 byte to Print BIN
* %B pull 2 byte to Print BIN
* %d pull 1 byte to Print unsigned DEC
* %D pull 2 bytes to Print unsigned DEC
* %L pull 4 bytes to Print unsigned DEC
* %n pull 1 byte to Print low Nibble HEX
* %N pull 1 byte to Print high Nibble HEX
* %h pull 1 byte to Print HEX
* %H pull 2 bytes to Print HEX
* %i pull 1 byte to Print signed DEC
* %I pull 2 bytes to Print signed DEC
* %s pull 2 bytes ptr to C-Style String
* %S pull 2 bytes ptr to P-Style String
* \e Print 'ESC' ($1B,27)
* \n Print CR=13
* \\ Print \
* \% Print %
* padding :
* %d '9' '12'
* %2d ' 9' '12'
* %02d '09' '12'
* %16s 'ABCDEFGHIjkl '
* %011s 'ABCDEFGH000'
*--------------------------------------
PrintF >PULLW ZPTmpPtr1
ldy #0
PrintFCOUT lda (ZPTmpPtr1),y
beq .1
cmp #'%'
beq PrintFESC1
cmp #'\'
beq PrintFESC2
jsr COUT
iny
bne PrintFCOUT
.1 rts
PrintFEXIT ply
iny
bne PrintFCOUT
rts
*--------------------------------------
PrintFESC1 stz PADLEN
lda #' '
sta PADCHAR
.1 ldx #PrintFTBL1.END-PrintFTBL1-1
iny
lda (ZPTmpPtr1),y
beq .9
.2 cmp PrintFTBL1,x do we have a %x command?
beq .8 yes, jmp to it!
dex
bpl .2 no valid letter...
cmp #'0' ...a 0...mmm... padding char!!
beq .4
bcc .9
cmp #'9'
bcs .9
.3 and #$0F we have a digit
pha save it...
lda PADLEN starts PADLEN * 10
asl times 2
pha save times 2
asl times 4
asl times 8
sta PADLEN
pla get back times 2
clc
adc PADLEN times 8 + times 2 = times 10
sta PADLEN
pla get back current digit
adc PADLEN
sta PADLEN
bra .5
.4 lda PADLEN do we already had met digits to build PADLEN ?
bne .3 yes, continue to build PADLEN
lda #'0'
sta PADCHAR no, this is the first 0, so make it PADCHAR
.5 bra .1
.8 phy
txa
asl
tax
jmp (PrintFJMP1,x)
.9 rts
*--------------------------------------
PrintFESC2 ldx #PrintFTBL2.END-PrintFTBL2-1
iny
lda (ZPTmpPtr1),y
beq .9
.2 cmp PrintFTBL2,x
beq .3
dex
bpl .2
rts
.3 phy
txa
asl
tax
jmp (PrintFJMP2,x)
.9 rts
*--------------------------------------
PrintFA >PULLA
ldx #0
.1 asl
pha
lda #'-'
bcc .2
lda PrintF.ATTRIB,x
.2 jsr COUT
pla
inx
cpx #8
bne .1
jmp PrintFEXIT
PrintFB ldx #8
>PULLA
.1 asl
pha
lda #'0'
bcc .2
inc
.2 jsr COUT
pla
dex
bne .1
jmp PrintFEXIT
PrintFBB >PULLA
>PULLA
jmp PrintFEXIT
PrintFD >PULLA
sta HEXBUF
stz HEXBUF+1
stz HEXBUF+2
stz HEXBUF+3
jsr HEX2DEC
jmp PrintFEXIT
PrintFDD >PULLA
sta HEXBUF
>PULLA
sta HEXBUF+1
stz HEXBUF+2
stz HEXBUF+3
jsr HEX2DEC
jmp PrintFEXIT
PrintFL >PULLA
sta HEXBUF
>PULLA
sta HEXBUF+1
>PULLA
sta HEXBUF+2
>PULLA
sta HEXBUF+3
jsr HEX2DEC
jmp PrintFEXIT
PrintFE >PULLA
jsr PRHEX
jmp PrintFEXIT
PrintFEE >PULLA
lsr
lsr
lsr
lsr
jsr PRHEX
jmp PrintFEXIT
PrintFH >PULLA
jsr PRBYTE
jmp PrintFEXIT
PrintFHH >PULLA
pha
>PULLA
jsr PRBYTE
pla
jsr PRBYTE
jmp PrintFEXIT
PrintFI >PULLA
jmp PrintFEXIT
PrintFII >PULLA
>PULLA
jmp PrintFEXIT
PrintFSC >PULLYA
jsr PrintYA
jmp PrintFEXIT
PrintFSP >PULLYA
jsr PrintYAP
jmp PrintFEXIT
PrintFT jsr PrintTIME
jmp PrintFEXIT
PrintFTT jsr PrintDATE
jmp PrintFEXIT
*--------------------------------------
PrintFESC lda #$1B ESC
jsr COUT
jmp PrintFEXIT
PrintFCR jsr CROUT
jmp PrintFEXIT
PrintFBKSLH lda #'\'
jsr COUT
jmp PrintFEXIT
PrintFPERCENT lda #'%'
jsr COUT
jmp PrintFEXIT
*--------------------------------------
PrintC >PULLW ZPTmpPtr2
ldy #0
.1 lda (ZPTmpPtr2),y
beq .8
jsr COUT
iny
bne .1
.8 rts
*--------------------------------------
PrintP >PULLW ZPTmpPtr2
ldy #0
lda (ZPTmpPtr2),y
tax
beq .8
.1 iny
lda (ZPTmpPtr2),y
jsr COUT
dex
bne .1
.8 rts
*--------------------------------------
* STRMATCHP : (P-Style Strings)
* pull PTR to Dest String
* pull PTR to Src string
* works with wildcards :
* Dest Str Src str
* message = m?ss*
* = me*ge
* = *ge
* = *
* message = me?sage != me?age
*--------------------------------------
STRMATCHP >PULLW ZPTmpPtr1
>PULLW ZPTmpPtr2
rts
*--------------------------------------
* STRCPYP : (P-Style Strings)
* pull PTR to Dest String
* pull PTR to Src string
*--------------------------------------
STRCPYP >PULLW ZPTmpPtr1
>PULLW ZPTmpPtr2
lda (ZPTmpPtr2)
sta (ZPTmpPtr1)
tay
beq .2
.1 lda (ZPTmpPtr2),y
sta (ZPTmpPtr1),y
dey
bne .1
.2 rts
*--------------------------------------
* STRCATP : (P-Style Strings)
* pull PTR to Dest String
* pull PTR to Src string
*--------------------------------------
STRCATP >PULLW ZPTmpPtr1
>PULLW ZPTmpPtr2
lda (ZPTmpPtr1)
tay
iny
lda (ZPTmpPtr2)
tax
beq .3
.1 inc ZPTmpPtr2
bne .2
inc ZPTmpPtr2+1
.2 lda (ZPTmpPtr2)
sta (ZPTmpPtr1),y
iny
dex
bne .1
dey
tya
sta (ZPTmpPtr1)
.3 rts
*--------------------------------------
UCASEP phx
>PULLW ZPTmpPtr2
ldy #0
lda (ZPTmpPtr2),y
tax
beq .9
.1 iny
lda (ZPTmpPtr2),y
cmp #'a'
bmi .2
cmp #'z'+1
bpl .2
sec
sbc #$20
sta (ZPTmpPtr2),y
.2 dex
bne .1
.9 plx
rts
*--------------------------------------
LCASEP phx
>PULLW ZPTmpPtr2
ldy #0
lda (ZPTmpPtr2),y
tax
beq .9
.1 iny
lda (ZPTmpPtr2),y
cmp #'A'
bmi .2
cmp #'Z'+1
bpl .2
clc
adc #$20
sta (ZPTmpPtr2),y
.2 dex
bne .1
.9 plx
rts
*--------------------------------------
* PULLW = DATE in ProDOS Format
* A = year, Y = month/day
*--------------------------------------
PrintDATE stz HEXBUF+1
stz HEXBUF+2
stz HEXBUF+3
ldx #'0'
stx PADCHAR
ldx #2
stx PADLEN
>PULLYA
pha save year to get high bit of month later
lsr
pha
cmp #70 are we in the 70s ?
bcc .1
lda #$19
bra .2
.1 lda #$20
.2 jsr PRBYTE
pla
sta HEXBUF
jsr HEX2DEC
lda #'/'
jsr COUT
ldx #'0'
stx PADCHAR
ldx #2
stx PADLEN
pla get back year
lsr get high bit of month in carry
tya get month/day
pha save it for day
ror pick high bit from carry
lsr
lsr
lsr
lsr
sta HEXBUF
jsr HEX2DEC
lda #'/'
jsr COUT
ldx #'0'
stx PADCHAR
ldx #2
stx PADLEN
pla get back month/day
and #$1F
sta HEXBUF
jmp HEX2DEC
*--------------------------------------
* PULLW = TIME in ProDOS Format
* A = hours, Y = minutes
*--------------------------------------
PrintTIME stz HEXBUF+1
stz HEXBUF+2
stz HEXBUF+3
ldx #'0'
stx PADCHAR
ldx #2
stx PADLEN
>PULLYA
and #$1F
sta HEXBUF
jsr HEX2DEC
lda #':'
jsr COUT
ldx #'0'
stx PADCHAR
ldx #2
stx PADLEN
tya get minutes
and #$3F
sta HEXBUF
jmp HEX2DEC
*--------------------------------------
*
*--------------------------------------
SSCANF >PULLW ZPTmpPtr1 get PString to scan (ex: "192.168.1.5")
>PULLW ZPTmpPtr2 get PString pattern (ex: "%d.%d.%d.%d")
>PULLW ZPTmpPtr3 get target buffer
ldy #0 Y = PTR in pattern
lda (ZPTmpPtr1)
beq .9
tax X = COUNT to scan
inc ZPTmpPtr1
bne .1
inc ZPTmpPtr1+1
.1 txa End Of String?
beq .8
tya
cmp (ZPTmpPtr2) End of pattern?
beq .8
iny
lda (ZPTmpPtr2),y
cmp #'%' Escape?
beq .2
cmp (ZPTmpPtr1) Same char?
bne .9
jsr SSCANF.IncPtr1
bne .1
clc
rts
.2 tya
cmp (ZPTmpPtr2) unexpected End of pattern after "%" ?
beq .9
iny
lda (ZPTmpPtr2),y
cmp #'d' BYTE ?
bne .3
stz ASCBUF
.20 lda (ZPTmpPtr1)
jsr SSCANF.IsDigit
bcs .21
phx
inc ASCBUF
ldx ASCBUF
sta ASCBUF,x
plx
jsr SSCANF.IncPtr1
bne .20 end of string ?
.21 jsr DEC2HEX
lda HEXBUF
sta (ZPTmpPtr3)
inc ZPTmpPtr3
bne .1
inc ZPTmpPtr3+1
bra .1
.3 cmp #'D' WORD ?
bne .4
bra .1
.4 cmp #'s' STRING ?
bne .9
bra .1
.8 clc
rts
.9 sec
rts
*--------------------------------------
SSCANF.IncPtr1 dex
beq .1
inc ZPTmpPtr1
bne .1
inc ZPTmpPtr1+1 never Zero
.1 rts
*--------------------------------------
SSCANF.IsDigit cmp #'0'
bcc .1
cmp #'9'+1
bcs .1
rts
.1 sec
rts
*--------------------------------------
********** PRIVATE FUNCTIONS **********
*--------------------------------------
* PrintYAC :
* Prints C-Style String
* Y,A=Pointer to Sting, Last Byte 0
*--------------------------------------
PrintYA >STYA ZPTmpPtr2
ldy #0
.1 lda (ZPTmpPtr2),y
beq .2
jsr COUT
iny
bne .1
.2 rts
*--------------------------------------
* PrintYAP :
* Prints Pascal-Style String
* Y,A=Pointer to Sting, LEN=1st Byte
*--------------------------------------
PrintYAP phx
>STYA ZPTmpPtr2
ldy #0
lda (ZPTmpPtr2),y
tax
beq .8
.1 iny
lda (ZPTmpPtr2),y
jsr COUT
lda PADLEN
beq .2
cpy PADLEN
beq .8
.2 dex
bne .1
lda PADLEN
beq .8
.3 lda PADCHAR
jsr COUT
iny
cpy PADLEN
bne .3
.8 plx
rts
*--------------------------------------
* Convert HEXBUF to ASCBUF decimal padded with 0
*--------------------------------------
HEX2DEC phx
phy
ldx #4
.1 stz BCDBUF,x Clear all 5 bytes
dex
bpl .1
ldx #32 let's roll 32 bits
sed
.2 asl HEXBUF
rol HEXBUF+1
rol HEXBUF+2
rol HEXBUF+3
php cpy will disturb carry while BCD adc
ldy #0
.3 plp
lda BCDBUF,y
adc BCDBUF,y
sta BCDBUF,y
php
iny
cpy #5 Last byte of BCDBUF?
bne .3
plp
dex
bne .2
cld
ldy #0
ldx #9
.4 lda BCDBUF,y
pha
and #$0F
ora #$30
sta ASCBUF,x
dex
pla
lsr
lsr
lsr
lsr
ora #$30
sta ASCBUF,x
iny
dex
bpl .4
lda PADLEN any Len format ?
beq .5 no
lda #10
sec yes, Print only digits starting at pos 10-padlen
sbc PADLEN
.5 tax x=0 if no padlen, or x=10-padlen
.6 lda ASCBUF,x
cmp #'0' a zero?
beq .7
inc PADLEN found a non zero, Print all digits, even if 0, next time
ldy #'0'
sty PADCHAR
bra .8
.7 cpx #9 last digit ?
beq .8 Print always
ldy PADLEN no pad to fill, do not Print 0
beq .9
lda PADCHAR fill with PADCHAR
.8 jsr COUT
.9 inx
cpx #10
bne .6
ply
plx
rts
*--------------------------------------
* Convert ASCBUF decimal to HEXBUF
*--------------------------------------
DEC2HEX phx
phy
stz HEXBUF
stz HEXBUF+1
stz HEXBUF+2
stz HEXBUF+3
ldx #0
.1 asl HEXBUF HEXBUF * 2 -> HEXBUF
rol HEXBUF+1
rol HEXBUF+2
rol HEXBUF+3
lda HEXBUF HEXBUF * 2 -> HEXBUFTMP
asl
sta HEXBUFTMP
lda HEXBUF+1
rol
sta HEXBUFTMP+1
lda HEXBUF+2
rol
sta HEXBUFTMP+2
lda HEXBUF+3
rol
sta HEXBUFTMP+3
asl HEXBUFTMP HEXBUFTMP * 2 -> HEXBUFTMP
rol HEXBUFTMP+1
rol HEXBUFTMP+2
rol HEXBUFTMP+3
lda HEXBUF HEXBUF + HEXBUFTMP -> HEXBUF
clc
adc HEXBUFTMP
sta HEXBUF
lda HEXBUF+1
adc HEXBUFTMP+1
sta HEXBUF+1
lda HEXBUF+2
adc HEXBUFTMP+2
sta HEXBUF+2
lda HEXBUF+3
adc HEXBUFTMP+3
sta HEXBUF+3
inx
lda ASCBUF,x
and #$0F
clc
adc HEXBUF
sta HEXBUF
bcc .2
inc HEXBUF+1
bne .2
inc HEXBUF+2
bne .2
inc HEXBUF+3
.2 cpx ASCBUF
bne .1
ply
plx
rts
*--------------------------------------
PRBYTE pha
lsr
lsr
lsr
lsr
ora #$30
cmp #'9'+1
bcc .1
adc #6
.1 jsr COUT
pla
PRHEX and #$0F
ora #$30
cmp #'9'+1
bcc COUT
adc #6
bra COUT
*--------------------------------------
CROUT lda #13
*--------------------------------------
COUT phx
phy
cmp #13
bne .1
ldx #DEVMGR.COUT
jsr pDevJmp
bcs .9
lda #10
.1 ldx #DEVMGR.COUT
jsr pDevJmp
ply
plx
.9 rts
*--------------------------------------
CS.END
PrintFTBL1 .AS "abBdDLnNhHiIsStT"
PrintFTBL1.END
PrintFTBL2 .AS "en\%"
PrintFTBL2.END
PrintF.ATTRIB .AS "dnb+++wr"
*--------------------------------------
PADCHAR .BS 1
PADLEN .BS 1
HEXBUF .BS 4 32 bits max
HEXBUFTMP .BS 4
BCDBUF .BS 5 5, enough to handle 32bits
ASCBUF .BS 11 LEN + 10 digits ($FFFFFFFF=4.294.967.295)
*--------------------------------------
MAN
SAVE LIB/LIBSTR.S
ASM

View File

@ -34,7 +34,7 @@ SET.IPCFG >PULLW ZPTmpPtr1
lda IPCFG+S.IPCFG.HDEV
>SYSCALL SYS.GetDevByIDA
>SYSCALL GetDevByIDA
>STYA NetDevJmp+1
ldx #DEVMGR.GETINFO

View File

@ -149,7 +149,7 @@ DNS.ADD.I sta DNS.TmpCache
jsr DNS.FIND.FREE
>LDYA ZPPtrDNS
>SYSCALL SYS.NewPStrYA
>SYSCALL NewPStrYA
bcs .9
ldy #S.DNSCACHE.hNAME
@ -184,7 +184,7 @@ DNS.FIND.BY.NAME
ldy #S.DNSCACHE.hNAME
lda (ZPCachePtr),y
>SYSCALL SYS.GetMemPtrA
>SYSCALL GetMemPtrA
bcs *
>STYA ZPTmpPtr1
@ -348,7 +348,7 @@ DNS.EXPIRE >LDYA L.DNS.CACHE
DNS.FREE ldy #S.DNSCACHE.hNAME
lda (ZPCachePtr),y
beq .1
>SYSCALL SYS.FreeMemA
>SYSCALL FreeMemA
.1 lda #0
sta (ZPCachePtr)
rts
@ -369,7 +369,7 @@ DNS.POLL lda hDNSSocket1
rts
*--------------------------------------
DNS.DecodeMsg sta hFrame1
>SYSCALL SYS.GetMemPtrA
>SYSCALL GetMemPtrA
>STYA ZPFrameBase1
ldy #S.DNS.F+1
@ -477,7 +477,7 @@ DNS.DecodeMsg sta hFrame1
jsr DNS.UPDATE.BY.ID
.9 lda hFrame1
>SYSCALL SYS.FreeMemA
>SYSCALL FreeMemA
rts
*--------------------------------------
DNS.PSTR2DNS lda (ZPPtrDNS)

View File

@ -6,7 +6,7 @@ AUTO 6
.LIST OFF
*--------------------------------------
RCVD.FRAMEA sta hFrame1
>SYSCALL SYS.GetMemPtrA
>SYSCALL GetMemPtrA
>STYA ZPFrameBase1
jsr FRM.GetLen1
@ -78,7 +78,7 @@ NEW.UDP.FRAME jsr NEW.IP.FRAME
*--------------------------------------
NEW.IP.FRAME >PUSHWI K.ETH.FRAME.LEN
>PUSHBI S.MEM.F.INIT0
>SYSCALL SYS.GetMem
>SYSCALL GetMem
bcs .9
>STYA ZPFrameBase1
@ -251,7 +251,7 @@ SEND.IP.FRAME.I ldx #3 Copy SRC.IP even if IP offload
bcs FRM.Queue
lda hFrame1
beq .9
>SYSCALL SYS.FreeMemA
>SYSCALL FreeMemA
clc
.9 rts
@ -285,7 +285,7 @@ FRM.Retry ldx FRM.QUEUE.Tail
.10 cpx FRM.QUEUE.Head
beq .8 Queue is empty, exit....
lda FRM.QUEUE.hMem,x
>SYSCALL SYS.GetMemPtrA
>SYSCALL GetMemPtrA
>STYA ZPFrameBase1
ldx FRM.QUEUE.Tail
@ -307,7 +307,7 @@ FRM.Retry ldx FRM.QUEUE.Tail
.3 ldx FRM.QUEUE.Tail Success,or max retry, discard entry
lda FRM.QUEUE.hMem,x
>SYSCALL SYS.FreeMemA
>SYSCALL FreeMemA
.4 ldx FRM.QUEUE.Tail
inx

View File

@ -188,7 +188,7 @@ TCP.IN.ESTABLISHED
>PUSHW K.TCP.WSIZE
>PUSHBI 0
>SYSCALL SYS.GetMem
>SYSCALL GetMem
bcs *
txa
@ -197,7 +197,7 @@ TCP.IN.ESTABLISHED
>PUSHW K.TCP.WSIZE
>PUSHBI 0
>SYSCALL SYS.GetMem
>SYSCALL GetMem
bcs *
txa

View File

@ -47,7 +47,7 @@ In Progress : moving TCPIP to socket API
## Internal Shell commands:
| Name | Status | Comment |
| ---- | ------ | ------- |
| CD | Working | |
| CD | Working | Improved syntax : now, 'CD ../BIN' works |
| DATE | Working | |
| ECHO | Working | |
| EXIT | Working | |

View File

@ -40,14 +40,14 @@ L.DrawLine.X1 .DA DrawLine.X1
.DA 0
*--------------------------------------
CS.INIT >LDYA L.MSG.INIT
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
>LDYA L.LIBGFX
>SYSCALL SYS.LoadLibYA
>SYSCALL LoadLibYA
sta hLIBGFX
>LDYA L.DEVNAME.GFX
>SYSCALL SYS.GetDevByNameYA
>SYSCALL GetDevByNameYA
bcc .10
rts
@ -65,7 +65,7 @@ CS.INIT >LDYA L.MSG.INIT
jsr GoDevGFX
.11 >LDYA L.DEVNAME.MOUSE
>SYSCALL SYS.GetDevByNameYA
>SYSCALL GetDevByNameYA
bcc .20
inc DEVNAME.MOUSE+4
@ -210,10 +210,10 @@ GoDevGFX jmp $ffff
GoDevMouse jmp $ffff
*--------------------------------------
CS.END
DEVNAME.GFX >PSTRING "GFX"
DEVNAME.MOUSE >PSTRING "MOU1"
LIBGFX >PSTRING "libgfx.o"
MSG.INIT >CSTRING "DESKTOP:Init...\n"
DEVNAME.GFX >PSTR "GFX"
DEVNAME.MOUSE >PSTR "MOU1"
LIBGFX >PSTR "libgfx.o"
MSG.INIT >CSTR "DESKTOP:Init...\n"
hLibGFX .BS 1
hDevGFX .BS 1
hDevMouse .BS 1

View File

@ -50,7 +50,7 @@ L.DHCP.REQ .DA DHCP.REQ
.DA 0
*--------------------------------------
CS.INIT >LDYA L.LIBTCPIP
>SYSCALL SYS.LoadLibYA
>SYSCALL LoadLibYA
sta hLIBTCPIP
>LIBCALL hLIBTCPIP,LIBTCPIP.GET.IPCFG
@ -97,7 +97,7 @@ CS.INIT >LDYA L.LIBTCPIP
.98 >LDYA L.MSG.CFG.ND
bra .90
.99 >LDYA L.MSG.CFG.NA
.90 >SYSCALL SYS.PrintFYA
.90 >SYSCALL PrintFYA
lda #0
sec
rts
@ -113,7 +113,7 @@ CS.RUN >PUSHW L.Socket
sta (pData),y
>LDYA L.MSG.CFG1
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
jsr Init.Timeout
@ -127,7 +127,7 @@ CS.RUN.SDISC >PUSHWI DHCP.DISC.LEN
.1 lda #S.IPCFG.STATUS.SDISC
sta IPCFG
CS.RUN.ROFFER >SYSCALL SYS.Sleep
CS.RUN.ROFFER >SYSCALL Sleep
jsr CS.RUN.SKT.RCVD
bcc .1
@ -151,7 +151,7 @@ CS.RUN.SREQ ldx #3
bpl .1
>LDYA L.MSG.CFG2
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
>PUSHWI DHCP.REQ.LEN
>PUSHW L.DHCP.REQ
@ -161,7 +161,7 @@ CS.RUN.SREQ ldx #3
lda #S.IPCFG.STATUS.SREQ
sta IPCFG
CS.RUN.RACK >SYSCALL SYS.Sleep
CS.RUN.RACK >SYSCALL Sleep
jsr CS.RUN.SKT.RCVD
bcc .1
@ -192,7 +192,7 @@ CS.RUN.OK lda #S.IPCFG.STATUS.OK
bpl .2
>LDYA L.MSG.CFG.OK
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
lda #0 Leave with NO ERROR
sec
rts
@ -200,7 +200,7 @@ CS.RUN.OK lda #S.IPCFG.STATUS.OK
CS.RUN.KO pha
>PUSHA
>LDYA L.MSG.CFG.KO
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
pla
sec
rts
@ -216,7 +216,7 @@ CS.RUN.SKT.RCVD ldy #hSocket
bcs .9
ldy #hFrame
sta (pData),y
>SYSCALL SYS.GetMemPtrA
>SYSCALL GetMemPtrA
>STYA ZPFrameBase
.9 rts
*--------------------------------------
@ -263,7 +263,7 @@ CS.QUIT ldy #hSocket
>LIBCALL hLIBTCPIP,LIBTCPIP.SKT.CLOSEA
.1 lda hLIBTCPIP
>SYSCALL SYS.UnloadLibA
>SYSCALL UnloadLibA
clc
rts
*--------------------------------------
@ -440,13 +440,13 @@ Wait.TimeOut sec
.9 rts
*--------------------------------------
CS.END
LIBTCPIP >PSTRING "libtcpip.o"
MSG.CFG1 >CSTRING "DHCPCLNT:Searching for DHCP servers...\n"
MSG.CFG2 >CSTRING "DHCPCLNT:Reply from DHCP Server at %d.%d.%d.%d, requesting...\n"
MSG.CFG.KO >CSTRING "DHCPCLNT:Time Out [%h].\n"
MSG.CFG.OK >CSTRING "DHCPCLNT:Success:[IP=%d.%d.%d.%d/%d.%d.%d.%d]\n"
MSG.CFG.ND >CSTRING "DHCPCLNT:No Device, exiting.\n"
MSG.CFG.NA >CSTRING "DHCPCLNT:TCPIP Already configured, exiting.\n"
LIBTCPIP >PSTR "libtcpip.o"
MSG.CFG1 >CSTR "DHCPCLNT:Searching for DHCP servers...\n"
MSG.CFG2 >CSTR "DHCPCLNT:Reply from DHCP Server at %d.%d.%d.%d, requesting...\n"
MSG.CFG.KO >CSTR "DHCPCLNT:Time Out [%h].\n"
MSG.CFG.OK >CSTR "DHCPCLNT:Success:[IP=%d.%d.%d.%d/%d.%d.%d.%d]\n"
MSG.CFG.ND >CSTR "DHCPCLNT:No Device, exiting.\n"
MSG.CFG.NA >CSTR "DHCPCLNT:TCPIP Already configured, exiting.\n"
hLIBTCPIP .BS 1
IPCFG .BS S.IPCFG
FrameLen .BS 2

View File

@ -35,19 +35,19 @@ L.MSG.USAGE .DA MSG.USAGE
L.MSG.GREETINGS .DA MSG.GREETINGS
.DA 0 End Of Reloc Table
*--------------------------------------
CS.INIT >SYSCALL SYS.GetArgC
CS.INIT >SYSCALL GetArgC
cmp #1
bne .1
>LDYA L.MSG.USAGE
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
lda #0
sec
rts
.1 lda #1
>SYSCALL SYS.GetArgA
>SYSCALL SYS.GetDevByNameYA
>SYSCALL GetArgA
>SYSCALL GetDevByNameYA
bcs .98
>STYA pDev
@ -65,10 +65,10 @@ CS.INIT >SYSCALL SYS.GetArgC
bcs .99
lda #2
>SYSCALL SYS.GetArgA
>SYSCALL GetArgA
bcs .99
>SYSCALL SYS.NewPStrYA
>SYSCALL NewPStrYA
bcs .99
txa
@ -81,7 +81,7 @@ CS.INIT >SYSCALL SYS.GetArgC
.99 rts
*--------------------------------------
CS.RUN lda #13 try send a CR...
>SYSCALL SYS.COutA Device Is Ready ?
>SYSCALL COutA Device Is Ready ?
bcs .8 no..loop...
@ -93,14 +93,14 @@ CS.RUN lda #13 try send a CR...
adc /S.DEV.NAME
>PUSHYA
>LDYA L.MSG.GREETINGS
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
bcs .8 unable to send greetings...loop..
ldy #hBinName
lda (pData),y
>SYSCALL SYS.GetMemPtrA
>SYSCALL SYS.ExecProcessNewEnvYA
>SYSCALL GetMemPtrA
>SYSCALL ExecProcessNewEnvYA
.9 rts
.8 clc
@ -112,7 +112,7 @@ CS.DOEVENT sec
CS.QUIT ldy #hBinName
lda (pData),y
beq .1
>SYSCALL SYS.FreeMemA
>SYSCALL FreeMemA
.1 ldx #DEVMGR.CLOSE
* jsr pDevJmp
@ -121,8 +121,8 @@ CS.QUIT ldy #hBinName
rts
*--------------------------------------
CS.END
MSG.USAGE >CSTRING "GETTY <DEV> <PROGRAM>"
MSG.GREETINGS >CSTRING "\e[12h\nA2osX-GeTTY on Dev=%S\n"
MSG.USAGE >CSTR "GETTY <DEV> <PROGRAM>"
MSG.GREETINGS >CSTR "\e[12h\nA2osX-GeTTY on Dev=%S\n"
*--------------------------------------
.DUMMY
.OR 0

View File

@ -46,7 +46,7 @@ L.MSG.INCOMING .DA MSG.INCOMING
.DA 0
*--------------------------------------
CS.INIT >LDYA L.LIBTCPIP
>SYSCALL SYS.LoadLibYA
>SYSCALL LoadLibYA
sta hLIBTCPIP
lda (pPs)
@ -58,7 +58,7 @@ CS.INIT >LDYA L.LIBTCPIP
CS.RUN jsr Init.Timeout
>LDYA L.MSG.TCPWAIT
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
.1 >LIBCALL hLIBTCPIP,LIBTCPIP.GET.IPCFG is TCPIP loaded ?
bcs .99
@ -67,12 +67,12 @@ CS.RUN jsr Init.Timeout
lda (ZPIPCfgPtr) Configured ?
bmi CS.RUN.INIT
>SYSCALL SYS.Sleep
>SYSCALL Sleep
jsr Wait.Timeout
bcc .1
.99 >LDYA L.MSG.TCPIPERR
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
lda #SYSMGR.ERRSYN
sec
rts
@ -93,9 +93,9 @@ CS.RUN.INIT ldx #3
sta (pData),y
>LDYA L.MSG.INITOK
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
.11 >SYSCALL SYS.Sleep
.11 >SYSCALL Sleep
ldy #bCTRLC
lda (pData),y
bmi .99
@ -118,17 +118,17 @@ CS.RUN.INIT ldx #3
bpl .2
>LDYA L.MSG.INCOMING
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
bra .11
.9 >LDYA L.MSG.SKTERR
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
lda #SYSMGR.ERRSYN
sec
rts
.99 >LDYA L.MSG.ABORT
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
lda #0
sec
rts
@ -174,7 +174,7 @@ CS.QUIT ldy #hSocket
>LIBCALL hLIBTCPIP,LIBTCPIP.SKT.CLOSEA
lda hLIBTCPIP
>SYSCALL SYS.UnloadLibA
>SYSCALL UnloadLibA
clc
rts
*--------------------------------------
@ -195,13 +195,13 @@ Wait.TimeOut sec
*--------------------------------------
CS.END
*--------------------------------------
LIBTCPIP >PSTRING "libtcpip.o"
MSG.TCPWAIT >CSTRING "HTTPD:Waiting for TCP/IP initializing...\n"
MSG.INITOK >CSTRING "HTTPD:Init Ok, Listening.\n"
MSG.TCPIPERR >CSTRING "HTTPD:TCP/IP Not initialized properly\n"
MSG.SKTERR >CSTRING "HTTPD:Listen Error\n"
MSG.ABORT >CSTRING "HTTPD:User Aborted\n"
MSG.INCOMING >CSTRING "HTTPD:Incoming Connection From : %d.%d.%d.%d\n"
LIBTCPIP >PSTR "libtcpip.o"
MSG.TCPWAIT >CSTR "HTTPD:Waiting for TCP/IP initializing...\n"
MSG.INITOK >CSTR "HTTPD:Init Ok, Listening.\n"
MSG.TCPIPERR >CSTR "HTTPD:TCP/IP Not initialized properly\n"
MSG.SKTERR >CSTR "HTTPD:Listen Error\n"
MSG.ABORT >CSTR "HTTPD:User Aborted\n"
MSG.INCOMING >CSTR "HTTPD:Incoming Connection From : %d.%d.%d.%d\n"
hLIBTCPIP .BS 1
*--------------------------------------
Socket .DA #S.SOCKET.SOCK.STREAM

View File

@ -37,27 +37,27 @@ L.MSG.HELP .DA MSG.HELP
L.MSG.LOAD .DA MSG.LOAD
.DA 0
*--------------------------------------
CS.INIT >SYSCALL SYS.GetArgC
CS.INIT >SYSCALL GetArgC
cmp #1
bne .1
>LDYA L.MSG.HELP
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
lda #0 tell TSKMGR that all done ok, but
sec we do not want to stay in memory
rts
.1 lda #1 get PTR to ARG[1] (Driver name)
>SYSCALL SYS.GetArgA
>SYSCALL GetArgA
>PUSHYA
>LDYA L.MSG.LOAD
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
lda #1 get PTR to ARG[1] (Driver name)
>SYSCALL SYS.GetArgA
>SYSCALL GetArgA
>SYSCALL SYS.LoadDrvYA YA = PTR to ARG[1...n]
>SYSCALL LoadDrvYA YA = PTR to ARG[1...n]
bcs .99
lda #0 success, but....
@ -70,8 +70,8 @@ CS.QUIT clc
rts
*--------------------------------------
CS.END
MSG.HELP >CSTRING "Usage: insdrv file.drv <args>\n"
MSG.LOAD >CSTRING "INSDRV:Loading %S...\n"
MSG.HELP >CSTR "Usage: insdrv file.drv <args>\n"
MSG.LOAD >CSTR "INSDRV:Loading %S...\n"
*--------------------------------------
MAN
SAVE SBIN/INSDRV.S

View File

@ -51,39 +51,39 @@ CS.RUN lda #0
sta (pData),y
lda #13
>SYSCALL SYS.COutA
>SYSCALL COutA
bcs .9
>LDYA L.MSG.LOGIN
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
bcs .9
lda #0 Echo all caracters
jsr INPUT.RESET
.1 >SYSCALL SYS.Sleep
.1 >SYSCALL Sleep
jsr INPUT.LINEIN
bcc .1
lda #13
>SYSCALL SYS.COutA
>SYSCALL COutA
bcs .9
>LDYA L.MSG.PASSWORD
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
lda #'*'
jsr INPUT.RESET
.2 >SYSCALL SYS.Sleep
.2 >SYSCALL Sleep
jsr INPUT.LINEIN
bcc .2
lda #13
>SYSCALL SYS.COutA
>SYSCALL COutA
bcs .9
>LDYA L.SHELL
>SYSCALL SYS.ExecProcessNewEnvYA
>SYSCALL ExecProcessNewEnvYA
bcs .9
@ -161,7 +161,7 @@ INPUT.CHARIN tax saver char...
lda (pData),y
bne .1
txa
.1 >SYSCALL SYS.COutA
.1 >SYSCALL COutA
rts
.2 cpx #13 CR
@ -196,9 +196,9 @@ INPUT.LINEIN ldy #INPUT.Status
rts
*--------------------------------------
CS.END
MSG.LOGIN >CSTRING "login:"
MSG.PASSWORD >CSTRING "password:"
SHELL >PSTRING "${A2OSX}SBIN/SHELL"
MSG.LOGIN >CSTR "login:"
MSG.PASSWORD >CSTR "password:"
SHELL >PSTR "${A2OSX}SBIN/SHELL"
.DUMMY
.OR 0
DS.START

View File

@ -8,7 +8,7 @@ AUTO 6
* Y,A -> Command line (formatted & not empty)
*--------------------------------------
Cmd.ExecYA stz Cmd.Exec.Mode
Cmd.ExecYA.1 >SYSCALL SYS.ExpandPStrYA
Cmd.ExecYA.1 >SYSCALL ExpandPStrYA
bcs .99
stx hCmdLine
@ -49,7 +49,7 @@ Cmd.ExecYA.1 >SYSCALL SYS.ExpandPStrYA
.13 stx ARGS update ARGS len
lda hCmdLine Discard Expanded Cmd Line
>SYSCALL SYS.FreeMemA
>SYSCALL FreeMemA
>LDYA L.CMDS
>STYA ZPPtr2
@ -92,21 +92,21 @@ Cmd.Exec.EXT ldy #1
jmp .3
.10 >LDYA L.ENV.PATH push ENVNAME=PATH for search
>SYSCALL SYS.GetEnvYA get value for ENV=PATH
>SYSCALL GetEnvYA get value for ENV=PATH
bcs .1 No PATH, try in CD
>PUSHYA push search list
>PUSHW L.CMD
>SYSCALL SYS.FileSearch
>SYSCALL FileSearch
bcc .2
.1 ldy #S.PS.hPREFIX not found, try in CD
lda (pPs),y
>SYSCALL SYS.GetMemPtrA
>SYSCALL GetMemPtrA
>PUSHYA push search list
>PUSHW L.CMD
>SYSCALL SYS.FileSearch
>SYSCALL FileSearch
bcs .99
.2 phx save X=hMem, Y,A = Filename
@ -114,15 +114,15 @@ Cmd.Exec.EXT ldy #1
>PUSHW L.CMD replace CMD in TmpBuffer with full path
>SYSCALL SYS.PStrCpy
>SYSCALL PStrCpy
pla
>SYSCALL SYS.FreeMemA Discard this string...
>SYSCALL FreeMemA Discard this string...
.3 stz UsrBuf256 reset UsrBuf256 for final CMDLINE
>PUSHW L.STAT
>PUSHW L.CMD
>SYSCALL SYS.STAT
>SYSCALL STAT
bcs .99
lda STAT+S.STAT.PRODOS.TYPE
@ -143,10 +143,10 @@ Cmd.Exec.EXT ldy #1
*--------------------------------------
Cmd.Exec.EXT.TXT
lda #0 Get arg[0] = /PATH/SHELL
>SYSCALL SYS.GetArgA
>SYSCALL GetArgA
>PUSHYA
>PUSHWI UsrBuf256
>SYSCALL SYS.PStrCpy
>SYSCALL PStrCpy
inc UsrBuf256 Add a space....
ldy UsrBuf256
@ -158,7 +158,7 @@ Cmd.Exec.EXT.TXT
Cmd.Exec.EXT.BIN
>PUSHW L.CMD
>PUSHWI UsrBuf256
>SYSCALL SYS.PStrCat
>SYSCALL PStrCat
lda ARGS
beq .1
@ -170,16 +170,16 @@ Cmd.Exec.EXT.BIN
>PUSHW L.ARGS
>PUSHWI UsrBuf256
>SYSCALL SYS.PStrCat
>SYSCALL PStrCat
.1 >LDYAI UsrBuf256
bit Cmd.Exec.Mode
bmi .2 startproc
>SYSCALL SYS.ExecProcessNewEnvYA
>SYSCALL ExecProcessNewEnvYA
rts
.2 >SYSCALL SYS.CreateProcessYA
.2 >SYSCALL CreateProcessYA
rts
*--------------------------------------
* Internal Commands
@ -188,88 +188,107 @@ Cmd.Exec.CD lda ARGS
bne Cmd.Exec.CD1
ldy #S.PS.hPREFIX
lda (pPs),y
>SYSCALL SYS.GetMemPtrA
>SYSCALL GetMemPtrA
>PUSHYA
>LDYA L.MSG.PSTR
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
rts
Cmd.Exec.CD1 lda ARGS+1
Cmd.Exec.CD1 stz UsrBuf256
lda ARGS+1
cmp #'/' Full Path?
bne .1
beq .1
>LDYA L.ARGS
bra Cmd.Exec.CD.Change
.1 ldy #S.PS.hPREFIX no, init target prefix with actual
ldy #S.PS.hPREFIX no, init target prefix with actual prefix
lda (pPs),y
>SYSCALL SYS.GetMemPtrA
>SYSCALL GetMemPtrA
>PUSHYA
>PUSHWI UsrBuf256
>SYSCALL SYS.PStrCpy
>SYSCALL PStrCpy
lda ARGS+1
cmp #'.' ".." ?
bne .3
cmp ARGS+2 ".." ?
bne .9
ldy UsrBuf256 remove last dir component in actual prefix
.2 dey
beq .9 nothing to remove, synerr
lda UsrBuf256,y
cmp #'/'
bne .2
sty UsrBuf256
>LDYAI UsrBuf256
bra Cmd.Exec.CD.Change
.9 lda #SYSMGR.ERRSYN
sec
rts
.3 >PUSHW L.ARGS Append ARG to buffer
.1 >PUSHW L.ARGS Append ARG to buffer
>PUSHWI UsrBuf256
>SYSCALL SYS.PStrCat
bcs .9
>SYSCALL PStrCat
lda #'/'
ldx UsrBuf256
lda #'/' Ending with '/'?
cmp UsrBuf256,x
beq .4
sta UsrBuf256+1,x
cmp UsrBuf256,x Ending '/' ?
beq .2
sta UsrBuf256+1,x no, add one...
inc UsrBuf256
.4 >LDYAI UsrBuf256
.2 ldx #0 path is something like : /dir1/../dir2/
.3 ldy #0 reset char counter
Cmd.Exec.CD.Change
>STYA ZPPtr1
.4 cpx UsrBuf256
beq .8
inx
lda UsrBuf256,x
cmp #'/'
beq .5
iny char=char+1!!!
bra .4
.5 tya any char count?
beq .4 no, start counting...
cpy #2 do we have /xx/?
bne .3 no, skip this token
lda #'.'
cmp UsrBuf256-1,x /yy/x./ ?
bne .3
cmp UsrBuf256-2,x /yy/../ ?
bne .3
cpx #4 /../ ?
beq Cmd.Exec.ERRSYN illegal
txa
tay save end of /../
sec
sbc #3 remove ../
tax
.6 dex
lda UsrBuf256,x Found beginning of dir before /../
cmp #'/'
bne .6
.7 lda UsrBuf256,y strip dir/../
sta UsrBuf256,x
cpy UsrBuf256
beq .71
iny
inx
bra .7
.71 stx UsrBuf256
bra .2 Start over...
.8 cpx #1
beq .80 we have '/' go change prefix
>PUSHW L.STAT
>PUSHW ZPPtr1
>SYSCALL SYS.STAT
>PUSHWI UsrBuf256
>SYSCALL STAT
bcs .9
lda STAT+S.STAT.PRODOS.TYPE
sec
eor #$0F Directory ?
bne .9
cmp #$0F Directory ?
bne Cmd.Exec.ERRSYN
>LDYA ZPPtr1
>SYSCALL SYS.NewPStrYA
.80 >LDYAI UsrBuf256
>SYSCALL NewPStrYA
bcs .9
phx
ldy #S.PS.hPREFIX
lda (pPs),y
>SYSCALL SYS.FreeMemA
>SYSCALL FreeMemA
pla
@ -279,6 +298,10 @@ Cmd.Exec.CD.Change
clc
.9 rts
*--------------------------------------
Cmd.Exec.ERRSYN lda #SYSMGR.ERRSYN
sec
rts
*--------------------------------------
Cmd.Exec.STARTPROC
lda ARGS
beq Cmd.Exec.ERRSYN
@ -287,17 +310,13 @@ Cmd.Exec.STARTPROC
>LDYA L.ARGS
jmp Cmd.ExecYA.1
Cmd.Exec.ERRSYN lda #SYSMGR.ERRSYN
sec
rts
*--------------------------------------
Cmd.Exec.SET lda ARGS
bne Cmd.Exec.SETVAR
ldy #S.PS.hENV
lda (pPs),y
>SYSCALL SYS.GetMemPtrA
>SYSCALL GetMemPtrA
>STYA ZPPTR1
* No arg, print all ENV
@ -320,7 +339,7 @@ Cmd.Exec.SET lda ARGS
>PUSHW ZPPTR1 Push name
>LDYA L.MSG.PRINTENV
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
bcs .9
lda ZPPTR2
@ -348,30 +367,34 @@ Cmd.Exec.SETVAR tax
bne .1
cpx #1 string is '=value' ?
beq Cmd.Exec.ERRSYN syntax error
beq .99 syntax error
>LDYA L.ARGS String is VAR=VALUE...
>SYSCALL SYS.PutEnvYA
>SYSCALL PutEnvYA
rts
.2 dec ARGS String is "VAR=", Remove endig '='
>LDYA L.ARGS String is "VAR"...
>SYSCALL SYS.UnsetEnvYA
>SYSCALL UnsetEnvYA
rts
* Print requeted VAR
* Print requested VAR
.3 >LDYA L.ARGS
>SYSCALL SYS.GetEnvYA
>SYSCALL GetEnvYA
bcs .8
>PUSHYA push value
>PUSHW L.ARGS push name
>LDYA L.MSG.PRINTENV
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
.8 clc
.9 rts
.99 lda #SYSMGR.ERRSYN
sec
rts
*--------------------------------------
Cmd.Exec.DATE sec
.HS 90 bcc
@ -379,7 +402,7 @@ Cmd.Exec.DATE sec
Cmd.Exec.TIME clc
php
>LDYA L.TIME
>SYSCALL SYS.TimeYA
>SYSCALL TimeYA
>PUSHWI UsrBuf256
plp
@ -389,18 +412,18 @@ Cmd.Exec.TIME clc
.1 >PUSHW L.FMT.TIME
.2 >PUSHW L.TIME
>SYSCALL SYS.PStrFTime
>SYSCALL PStrFTime
>PUSHWI UsrBuf256
>LDYA L.MSG.PSTR
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
rts
*--------------------------------------
Cmd.Exec.ECHO lda ARGS
beq .9
>PUSHW L.ARGS
>LDYA L.MSG.PSTR
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
clc
rts
@ -414,13 +437,13 @@ Cmd.Exec.TYPE lda ARGS
>PUSHBI 4 S.FILEINFO.TYPE.TXT
>PUSHBI SYS.FOPEN.R
>PUSHW L.ARGS
>SYSCALL SYS.LoadFile
>SYSCALL LoadFile
bcs .99
>STYA ZPPTR2 store file len
phx
txa
>SYSCALL SYS.GetMemPtrA
>SYSCALL GetMemPtrA
>STYA ZPPTR1
.1 lda ZPPTR2
bne .2
@ -430,14 +453,14 @@ Cmd.Exec.TYPE lda ARGS
.2 dec ZPPTR2
lda (ZPPTR1)
>SYSCALL SYS.COutA
>SYSCALL COutA
inc ZPPTR1
bne .1
inc ZPPTR1+1
bra .1
.3 pla
>SYSCALL SYS.FreeMemA
>SYSCALL FreeMemA
clc
rts

View File

@ -7,7 +7,7 @@ AUTO 6
*--------------------------------------
HIS.Init >PUSHWI 256 Get a buffer for History
>PUSHBI S.MEM.F.INIT0
>SYSCALL SYS.GetMem
>SYSCALL GetMem
bcs .9
txa
@ -24,7 +24,7 @@ HIS.Init >PUSHWI 256 Get a buffer for History
HIS.Add ldy #hCmdHistory
lda (pData),y
beq .9
>SYSCALL SYS.GetMemPtrA
>SYSCALL GetMemPtrA
>STYA ZPPTR1
.10 ldy #CmdHistory.END
@ -103,7 +103,7 @@ HIS.GetPrev ldy #hCmdHistory
txa
>SYSCALL SYS.GetMemPtrA
>SYSCALL GetMemPtrA
>STYA ZPPTR1
lda #0
@ -139,7 +139,7 @@ HIS.GetNext ldy #hCmdHistory
txa
>SYSCALL SYS.GetMemPtrA
>SYSCALL GetMemPtrA
>STYA ZPPTR1
ldy #CmdHistory.IDX
@ -178,7 +178,7 @@ HIS.SetBuf jsr CmdBuffer.CLR
HIS.Quit ldy #hCmdHistory
lda (pData),y
beq .9
>SYSCALL SYS.FreeMemA
>SYSCALL FreeMemA
.9 rts
*--------------------------------------
MAN

View File

@ -12,7 +12,7 @@ TXT.OpenFileYA pha
pla
>PUSHYA
>SYSCALL SYS.FOPEN
>SYSCALL FOPEN
bcs .9
ldy #hInputFile
@ -24,7 +24,7 @@ TXT.ReadFile >PUSHWI UsrBuf256+1
ldy #hInputFile
lda (pData),y
>PUSHA
>SYSCALL SYS.FREAD
>SYSCALL FREAD
bcs .9
tya
@ -51,7 +51,7 @@ TXT.ReadFile >PUSHWI UsrBuf256+1
>PUSHW pData
>LDYA L.MSG.ECHO
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
.8 clc
.9 rts
*--------------------------------------
@ -59,7 +59,7 @@ TXT.CloseFile ldy #hInputFile
lda (pData),y
beq .9
>SYSCALL SYS.FCLOSEA
>SYSCALL FCLOSEA
.9 lda #0
ldy #hInputFile

View File

@ -8,9 +8,9 @@ AUTO 6
.OR $2000
.TF /A2OSX.BOOT/SBIN/SHELL
*--------------------------------------
.INB INC/MACROS.I
.INB INC/PRODOS.I
.INB INC/A2OSX.I
.INB /A2OSX.DEV/INC/MACROS.I
.INB /A2OSX.DEV/INC/PRODOS.I
.INB /A2OSX.DEV/INC/A2OSX.I
*--------------------------------------
ZPPTR1 .EQ ZPBIN
ZPPTR2 .EQ ZPBIN+2
@ -62,13 +62,13 @@ J.INTCMDS .DA Cmd.Exec.CD
.DA Cmd.Exec.TYPE
.DA 0
*--------------------------------------
CS.INIT >SYSCALL SYS.GetArgC
CS.INIT >SYSCALL GetArgC
cmp #1
beq CS.INIT.INTERACTIVE no arg, continue starting interactive
lda #1
>SYSCALL SYS.GetArgA
>SYSCALL GetArgA
jsr TXT.OpenFileYA
bcs .9
@ -86,7 +86,7 @@ CS.INIT.INTERACTIVE
lda (pPs),y
>PUSHA
>LDYA L.MSG.GREETINGS
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
lda (pPs)
ora #S.PS.F.EVENT Now accept events
@ -111,7 +111,7 @@ CS.RUN lda #0
jsr PrintPrompt
bcs .99
.1 >SYSCALL SYS.Sleep
.1 >SYSCALL Sleep
lda (pData)
bpl .1
@ -252,7 +252,7 @@ CS.DOEVENT ldy #S.EVT.hDEV is Event from active IN device?
txa
sta (pData),y
>SYSCALL SYS.COutA
>SYSCALL COutA
.8 clc
rts
@ -261,7 +261,7 @@ CS.EVENT.CTRL.CHAR
cpx #13 CR
bne .10
txa
>SYSCALL SYS.COutA
>SYSCALL COutA
lda (pData) CmdBuffer
ora #$80
sta (pData)
@ -318,7 +318,7 @@ CS.QUIT jsr HIS.Quit
ldy #hInputFile
lda (pData),y
beq .1
>SYSCALL SYS.FCLOSEA
>SYSCALL FCLOSEA
.1
.8 clc
@ -327,16 +327,16 @@ CS.QUIT jsr HIS.Quit
* PRIVATE
*--------------------------------------
PrintPrompt lda #'$'
>SYSCALL SYS.COutA
>SYSCALL COutA
bcs .9
lda #' '
>SYSCALL SYS.COutA
>SYSCALL COutA
.9 rts
*--------------------------------------
PrintError pha
>PUSHA
>LDYA L.MSG.ERROR
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
pla
rts
*--------------------------------------
@ -397,7 +397,7 @@ CmdBuffer.Normalize.Next
CmdBuffer.PRINT ldy #0
.1 iny
lda (pData),y
>SYSCALL SYS.COutA
>SYSCALL COutA
tya
cmp (pData)
bne .1
@ -410,7 +410,7 @@ CmdBuffer.CLR jsr CmdBuffer.DEL
CmdBuffer.DEL lda (pData)
beq .9
lda #8
>SYSCALL SYS.COutA
>SYSCALL COutA
lda (pData)
dec
sta (pData)
@ -422,28 +422,28 @@ CmdBuffer.DEL lda (pData)
*--------------------------------------
CS.END
*--------------------------------------
ENV.PATH >PSTRING "PATH"
CMDS >PSTRING "CD"
>PSTRING "DATE"
>PSTRING "ECHO"
>PSTRING "EXIT"
>PSTRING "PAUSE"
>PSTRING "READ"
>PSTRING "SET"
>PSTRING "STARTPROC"
>PSTRING "TIME"
>PSTRING "TYPE"
ENV.PATH >PSTR "PATH"
CMDS >PSTR "CD"
>PSTR "DATE"
>PSTR "ECHO"
>PSTR "EXIT"
>PSTR "PAUSE"
>PSTR "READ"
>PSTR "SET"
>PSTR "STARTPROC"
>PSTR "TIME"
>PSTR "TYPE"
.HS 00
*--------------------------------------
MSG.GREETINGS >CSTRING "\nA2osX-Shell on Dev=%h\n\n"
MSG.ECHO >CSTRING ">%S\n"
MSG.ERROR >CSTRING "[%h]\n"
FMT.DATE >PSTRING "%A, %B %d %Y"
FMT.TIME >PSTRING "%H:%M:%S (%I:%M:%S%p)"
MSG.PSTR >CSTRING "%S\n"
MSG.PRINTENV >CSTRING "%S=%S\n"
MSG.GREETINGS >CSTR "\nA2osX-Shell on Dev=%h\n\n"
MSG.ECHO >CSTR ">%S\n"
MSG.ERROR >CSTR "[%h]\n"
FMT.DATE >PSTR "%A, %B %d %Y"
FMT.TIME >PSTR "%H:%M:%S (%I:%M:%S%p)"
MSG.PSTR >CSTR "%S\n"
MSG.PRINTENV >CSTR "%S=%S\n"
*--------------------------------------
EscChars >PSTRING "DBAC"
EscChars >PSTR "DBAC"
EscAscii .HS 04080A0B15
CMD .BS 256
ARGS .BS 256

View File

@ -7,42 +7,42 @@ AUTO 6
*--------------------------------------
CFG.Read >PUSHW L.HOSTNAME
>LDYA L.MSG.CFG
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
jsr CFG.Read.HOSTNAME
bcc .1
>PUSHA
>LDYA L.MSG.CFG.KO
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
bra .2
.1 >LDYA L.MSG.CFG.OK
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
.2 >PUSHW L.TCPIP.CONF
>LDYA L.MSG.CFG
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
jsr CFG.Read.TCPIP.CONF
bcc .3
>PUSHA
>LDYA L.MSG.CFG.KO
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
bra .4
.3 >LDYA L.MSG.CFG.OK
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
.4 >PUSHW L.HOSTS
>LDYA L.MSG.CFG
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
jsr CFG.Read.HOSTS
bcc .5
>PUSHA
>LDYA L.MSG.CFG.KO
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
bra .6
.5 >LDYA L.MSG.CFG.OK
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
.6 rts
*--------------------------------------
CFG.Read.HOSTNAME
@ -50,13 +50,13 @@ CFG.Read.HOSTNAME
>PUSHBI 4 S.FILEINFO.TYPE.TXT
>PUSHBI SYS.FOPEN.R
>PUSHW L.HOSTNAME
>SYSCALL SYS.LoadFile
>SYSCALL LoadFile
bcs .99
stx CFG.hCfgFile
>STYA CFG.FileLen
txa
>SYSCALL SYS.GetMemPtrA
>SYSCALL GetMemPtrA
>STYA ZPIPCfgPtr
lda CFG.FileLen+1
@ -79,7 +79,7 @@ CFG.Read.HOSTNAME
rts
.89 lda CFG.hCfgFile
>SYSCALL SYS.FreeMemA
>SYSCALL FreeMemA
clc
.99 rts
@ -89,12 +89,12 @@ CFG.Read.TCPIP.CONF
>PUSHBI 4 S.FILEINFO.TYPE.TXT
>PUSHBI SYS.FOPEN.R
>PUSHW L.TCPIP.CONF
>SYSCALL SYS.LoadFile
>SYSCALL LoadFile
bcs .99
stx CFG.hCfgFile
>STYA CFG.FileLen
txa
>SYSCALL SYS.GetMemPtrA
>SYSCALL GetMemPtrA
>STYA ZPIPCfgPtr
.1 jsr CFG.GetLine
@ -145,7 +145,7 @@ CFG.Read.TCPIP.CONF
bra .1
.89 lda CFG.hCfgFile
>SYSCALL SYS.FreeMemA
>SYSCALL FreeMemA
clc
.99 rts
@ -154,17 +154,17 @@ CFG.Read.HOSTS >PUSHWI 0 Aux type
>PUSHBI 4 S.FILEINFO.TYPE.TXT
>PUSHBI SYS.FOPEN.R
>PUSHW L.HOSTS
>SYSCALL SYS.LoadFile
>SYSCALL LoadFile
bcs .99
stx CFG.hCfgFile
>STYA CFG.FileLen
txa
>SYSCALL SYS.GetMemPtrA
>SYSCALL GetMemPtrA
>STYA ZPIPCfgPtr
.89 lda CFG.hCfgFile
>SYSCALL SYS.FreeMemA
>SYSCALL FreeMemA
clc
.99 rts
*--------------------------------------

View File

@ -47,7 +47,7 @@ L.IPCFG .DA IPCFG
.DA 0
*--------------------------------------
CS.INIT >LDYA L.LIBTCPIP
>SYSCALL SYS.LoadLibYA
>SYSCALL LoadLibYA
bcs .99
sta hLIBTCPIP
@ -96,7 +96,7 @@ CS.INIT >LDYA L.LIBTCPIP
.99 rts
*--------------------------------------
CS.INIT.DEV >LDYA L.DEVNAME
>SYSCALL SYS.GetDevByNameYA
>SYSCALL GetDevByNameYA
bcc .1
inc DEVNAME+4
lda DEVNAME+4
@ -104,7 +104,7 @@ CS.INIT.DEV >LDYA L.DEVNAME
bne CS.INIT.DEV
>LDYA L.MSG.DEV.KO
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
lda #DEVMGR.ERRDNF
sec
rts
@ -116,7 +116,7 @@ CS.INIT.DEV >LDYA L.DEVNAME
>PUSHW L.DEVNAME
>LDYA L.MSG.DEV.OK
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
ldx #DEVMGR.OPEN
jsr pNetDevJmp
@ -174,7 +174,7 @@ CS.QUIT lda IPCFG+S.IPCFG.HDEV
jsr pNetDevJmp
.1 lda hLIBTCPIP
>SYSCALL SYS.UnloadLibA
>SYSCALL UnloadLibA
clc
rts
*--------------------------------------
@ -203,24 +203,24 @@ pNetDevJmp jmp *
*--------------------------------------
CS.END
*--------------------------------------
LIBTCPIP >PSTRING "libtcpip.o"
DEVNAME >PSTRING "ETH1"
MSG.DEV.KO >CSTRING "TCPIP:No Device Found, exiting.\n"
MSG.DEV.OK >CSTRING "TCPIP:Bound To Device : %S\n"
MSG.CFG >CSTRING "TCPIP:Reading %S..."
MSG.CFG.KO >CSTRING "Failed!!! [%h]\n"
MSG.CFG.OK >CSTRING "OK.\n"
LIBTCPIP >PSTR "libtcpip.o"
DEVNAME >PSTR "ETH1"
MSG.DEV.KO >CSTR "TCPIP:No Device Found, exiting.\n"
MSG.DEV.OK >CSTR "TCPIP:Bound To Device : %S\n"
MSG.CFG >CSTR "TCPIP:Reading %S..."
MSG.CFG.KO >CSTR "Failed!!! [%h]\n"
MSG.CFG.OK >CSTR "OK.\n"
*--------------------------------------
HOSTNAME >PSTRING "${A2OSX}ETC/HOSTNAME"
TCPIP.CONF >PSTRING "${A2OSX}ETC/TCPIP.CONF"
HOSTS >PSTRING "${A2OSX}ETC/HOSTS"
DefaultHostName >CSTRING "a2osx-"
CFG.Keywords >PSTRING "DOMAIN"
>PSTRING "IP"
>PSTRING "MASK"
>PSTRING "GW"
>PSTRING "DNS1"
>PSTRING "DNS2"
HOSTNAME >PSTR "${A2OSX}ETC/HOSTNAME"
TCPIP.CONF >PSTR "${A2OSX}ETC/TCPIP.CONF"
HOSTS >PSTR "${A2OSX}ETC/HOSTS"
DefaultHostName >CSTR "a2osx-"
CFG.Keywords >PSTR "DOMAIN"
>PSTR "IP"
>PSTR "MASK"
>PSTR "GW"
>PSTR "DNS1"
>PSTR "DNS2"
CFG.Keyword.Map .DA #0 End Of Keyword table and NA Keyword
.DA #S.IPCFG.IP
.DA #S.IPCFG.MASK

View File

@ -34,7 +34,7 @@ L.LIBTCPIP .DA LIBTCPIP
.DA 0
*--------------------------------------
CS.INIT >LDYA L.LIBTCPIP
>SYSCALL SYS.LoadLibYA
>SYSCALL LoadLibYA
bcs .99
sta hLIBTCPIP
@ -68,13 +68,13 @@ CS.QUIT >PUSHB hSrvSocket
lda hLIBTCPIP
>SYSCALL SYS.UnloadLibA
>SYSCALL UnloadLibA
clc
rts
*--------------------------------------
CS.END
*--------------------------------------
LIBTCPIP >PSTRING "libtcpip.o"
LIBTCPIP >PSTR "libtcpip.o"
hLIBTCPIP .BS 1
hSrvSocket .BS 1
*--------------------------------------

View File

@ -4,9 +4,13 @@ NEW
INC 1
AUTO 6
.LIST OFF
*--------------------------------------
* Out : A = Command line Arg Count
*--------------------------------------
*/--------------------------------------
* #GetArgC
* ##In:
* none.
* ##Out:
* A = Command line Arg Count (Including /path/cmd)
*\--------------------------------------
K.GetArgC jsr ARG.InitArgPtr1
ldx #0
@ -21,13 +25,15 @@ K.GetArgC jsr ARG.InitArgPtr1
.8 txa
clc
rts
*--------------------------------------
* In :
* A = Arg Index
* Out :
* CC : Y,A = PStr To Arg[A]
*/--------------------------------------
* #GetArgA
* ##In:
* none.
* ##Out:
* CC : success
* Y,A = PStr To Arg[A]
* CS : Out Of Bound
*--------------------------------------
*\--------------------------------------
K.GetArgA sta .2+1
jsr ARG.InitArgPtr1

View File

@ -13,7 +13,7 @@ AUTO 6
* X = hMem of Code Segment
*--------------------------------------
K.LoadEXEYA >STYA K.LoadEXEYA.Filename
>SYSCALL SYS.PStrUprYA Y,A unmodified
>SYSCALL PStrUprYA Y,A unmodified
jsr K.GetMemByNameYA
bcs K.LoadEXEYA.1 not already loaded
@ -80,7 +80,7 @@ K.LoadEXEYA.1 >PUSHWI KrnBuf256
jsr BIN.RelocateEXE
>LDYA K.LoadEXEYA.Filename get back bin path
>SYSCALL SYS.NewPStrYA make a copy of this string
>SYSCALL NewPStrYA make a copy of this string
bcs .98
lda K.LoadEXEYA.hMem Keep X=hMem
@ -179,7 +179,7 @@ BIN.InstallDRV ldy #H.BIN.DRV.CODE.O
.10 sta DevMgr.LastDevID
>SYSCALL SYS.GetDevByIDA
>SYSCALL GetDevByIDA
>STYA ZPQuickPtr2 setup Ptr2 to dest HEADER
ldy #H.BIN.DRV.HEADER.O

View File

@ -96,40 +96,40 @@ K.SScanF.IsDigit cmp #'0'
rts
.1 sec
rts
*--------------------------------------
* K.PrintFYA :
*/--------------------------------------
* #PrintFYA :
* Prints C-Style String
* Y,A = PTR to Sting,Last Byte negative
*--------------------------------------
* %a pull 2 bytes to Print Access right String drwxrwxrwx
* %b pull 1 byte to Print BIN
* %B pull 2 bytes to Print BIN
* %d pull 1 byte unsigned DEC 0..255
* %D pull 2 bytes unsigned DEC 0..65535
* %u pull 2 bytes PTR to 4 bytes long unsigned DEC 0..4294967295
* %e pull 2 bytes PTR to 6 Bytes Real +1.23456789e+12
* %f pull 2 bytes PTR to 6 Bytes Real 3.1415
* %h pull 1 byte to Print HEX
* %H pull 2 bytes to Print HEX
* %i pull 1 byte to Print signed DEC -128..127
* %I pull 2 bytes to Print signed DEC -32768..32767
* %L pull 2 bytes PTR to 4 bytes signed DEC -2147483648..2147483647
* %n pull 1 byte to Print low Nibble HEX
* %N pull 1 byte to Print high Nibble HEX
* %s pull 2 bytes ptr to C-Style String
* %S pull 2 bytes ptr to P-Style String
* \e Print 'ESC' ($1B,27)
* \n Print CR=13
* \\ Print \
* \% Print %
* len/padding :
* ##In:
* Y,A = PTR to CStr
* %a : pull 2 bytes to Print Access right String 'drwxrwxrwx'
* %b : pull 1 byte to Print BIN
* %B : pull 2 bytes to Print BIN
* %d : pull 1 byte unsigned DEC 0..255
* %D : pull 2 bytes unsigned DEC 0..65535
* %u : pull 2 bytes PTR to 4 bytes long unsigned DEC 0..4294967295
* %e : pull 2 bytes PTR to 6 Bytes Real +1.23456789e+12
* %f : pull 2 bytes PTR to 6 Bytes Real 3.1415
* %h : pull 1 byte to Print HEX
* %H : pull 2 bytes to Print HEX
* %i : pull 1 byte to Print signed DEC -128..127
* %I : pull 2 bytes to Print signed DEC -32768..32767
* %L : pull 2 bytes PTR to 4 bytes signed DEC -2147483648..2147483647
* %n : pull 1 byte to Print low Nibble HEX
* %N : pull 1 byte to Print high Nibble HEX
* %s : pull 2 bytes ptr to C-Style String
* %S : pull 2 bytes ptr to P-Style String
* \e Print 'ESC' ($1B,27)
* \n Print CR=13
* \\ Print \
* \% Print %
* Modifiers for len and padding :
* %d '9' '12'
* %2d ' 9' '12'
* %02d '09' '12'
* %11s 'ABCDEFGH '
* %011s 'ABCDEFGH000'
* %02d '09' '12'
* %11s 'ABCDEFGH '
* %011s 'ABCDEFGH000'
* %2f '3.14'
*--------------------------------------
*\--------------------------------------
K.PrintFYA >STYA ZPQuickPtr1
ldy #0

View File

@ -256,7 +256,7 @@ DevMgr.SYS.CV .BS 1
DevMgr.SYS.CPULOADI .BS 1
DevMgr.SYS.CPULOADC .AS -"|/-\"
*--------------------------------------
DevMgr.SYS.TITLE >CSTRING "A2osX System Screen"
DevMgr.SYS.TITLE >CSTR "A2osX System Screen"
DevMgr.SYS.BASEL .HS 00.80.00.80.00.80.00.80.28.A8.28.A8.28.A8.28.A8.50.D0.50.D0.50.D0.50.D0
DevMgr.SYS.BASEH .HS 08.08.09.09.0A.0A.0B.0B.08.08.09.09.0A.0A.0B.0B.08.08.09.09.0A.0A.0B.0B
*--------------------------------------

View File

@ -10,8 +10,8 @@ DevMgr.LastDevID .DA #DevMgr.Count-1
TSKMGR.SIZE .BS 1
TSKMGR.LASTID .BS 1
*--------------------------------------
ENV.DRV >PSTRING "DRV"
ENV.LIB >PSTRING "LIB"
ENV.DRV >PSTR "DRV"
ENV.LIB >PSTR "LIB"
*--------------------------------------
MAN
SAVE SYS/KERNEL.S.DAT

View File

@ -4,15 +4,17 @@ NEW
INC 1
AUTO 6
.LIST OFF
*--------------------------------------
* In :
* X = #SYSCall
*/--------------------------------------
* #OpenDirYA
* ##In:
* Y,A = PATH (PSTR)
* Out :
* CC : Y,A = PTR to S.DIR
* CS : A = EC
*--------------------------------------
K.OPENDIRYA jsr PFT.CheckPathYA
* ##Out :
* CC : success
* Y,A = PTR to S.DIR
* CS : error
* A = EC
*\--------------------------------------
K.OpenDirYA jsr PFT.CheckPathYA
>STYA ZPQuickPtr2
>STYA MLICALL.PARAMS+1 For GETFILEINFO,MLIOPEN
@ -68,25 +70,29 @@ K.OPENDIRYA jsr PFT.CheckPathYA
pla get back MLI error
sec
.99 rts
*--------------------------------------
* In :
*/--------------------------------------
* #ReadDirA
* ##In:
* A = hDIR
* Out :
* CC : X = hDIREND, Y,A = PTR to S.DIRENT
* CS : A = EC, A = 0 : no more entry
*--------------------------------------
* ##Out :
* CC : success
* X = hDIRENT
* Y,A = PTR to S.DIRENT
* CS : error
* 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.READDIRA.EC2Return .BS 1
*--S.DIR Cache ------------------------
K.READDIRA.EL .BS 1
K.READDIRA.EPB .BS 1
K.READDIRA.EC .BS 2
*--------------------------------------
K.READDIRA jsr PFT.CheckDirA
K.ReadDirA jsr PFT.CheckDirA
sta K.READDIRA.hDir
jsr K.GetMemPtrA
>STYA ZPQuickPtr1
@ -260,6 +266,10 @@ K.READDIRA.DIR sta MLICALL.PARAMS+1 A=#S.DIR.PRODOS.REF
dey
dex
bpl .1
inc K.READDIRA.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
bra .4
.98 jsr K.READDIRA.CLN
@ -284,13 +294,13 @@ K.READDIRA.DIR sta MLICALL.PARAMS+1 A=#S.DIR.PRODOS.REF
ldx K.READDIRA.EPB
.5 stx K.READDIRA.ECIB
stz K.READDIRA.EC2Return
* pass #1 compute BufSize...
lda #1 For Ending 0
sta K.READDIRA.BufSize
stz K.READDIRA.BufSize+1
* pass #1 compute BufSize.....
K.READDIRA.DIR1 lda (ZPQuickPtr2) X = EntryCount In This Block
beq .7 Free slot....goto next
@ -303,10 +313,9 @@ K.READDIRA.DIR1 lda (ZPQuickPtr2) X = EntryCount In This Block
cmp #$E0 directory header ?
beq .2
inc K.READDIRA.EC2Return regular DIR or File....
tya regular DIR or File, get back LEN
tya
and #$F get filename len
and #$F compute filename len
sec add "#<filename>" + S.STAT
adc #S.STAT
@ -337,10 +346,6 @@ K.READDIRA.DIR1 lda (ZPQuickPtr2) X = EntryCount In This Block
K.READDIRA.DIR2 jsr K.READDIRA.GetBuf
bcs .98
* ldy #S.DIR.PRODOS.EL Check if first run....
* lda (ZPQuickPtr1),y
* bne .73
.71 lda (ZPQuickPtr3)
beq .78 Empty slot, skip
@ -556,10 +561,13 @@ ADDF.SRC .HS 1013141516171f20
ADDF.DST .DA #S.STAT.PRODOS.TYPE,#S.STAT.BLOCKS,#S.STAT.BLOCKS+1
.DA #S.STAT.SIZE,#S.STAT.SIZE+1,#S.STAT.SIZE+2
.DA #S.STAT.PRODOS.AUXTYPE,#S.STAT.PRODOS.AUXTYPE+1
*--------------------------------------
* In :
*/-------------------------------------
* #CloseDirA
* ##In:
* A = hDIR
*--------------------------------------
* ##Out:
* none, always succeed.
*\-------------------------------------
K.CLOSEDIRA jsr PFT.CheckDirA
sta K.READDIRA.hDir
jsr K.GetMemPtrA
@ -577,9 +585,7 @@ K.CLOSEDIRA.1 ldy #S.DIR.PRODOS.REF
jsr K.FreeMemA
.2 ldaK.READDIRA.hDir
jsr K.FreeMemA
clc
rts
jmp K.FreeMemA
*--------------------------------------
K.MKDIRYA jsr PFT.CheckPathYA
>STYA MLICALL.PARAMS+1

View File

@ -14,7 +14,7 @@ AUTO 6
K.LoadDrvYA >STYA K.LoadDrv.CmdArray
>LDYAI ENV.DRV push ENVNAME=DRV
>SYSCALL SYS.GetEnvYA get value for ENV=DRV
>SYSCALL GetEnvYA get value for ENV=DRV
bcs .99
>PUSHYA Push $DRV value

View File

@ -7,23 +7,24 @@ AUTO 6
*--------------------------------------
* For All SYS.xxxx calls, X = #SYSCall
* Must be kept in X before calling
* PFT.Check*
*--------------------------------------
* K.FOPEN
* In :
* PULLW = PATH (PSTR)
* PULLB = MODE
* SYS.FOPEN.R .EQ $01 if R and !exists -> ERROR
* SYS.FOPEN.W .EQ $02 if W and !exists -> CREATE
* 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
* PULLB = TYPE
* PULLW = AUXTYPE
* Out :
* PFT.Check
*/--------------------------------------
* #FOpen
* Open a file
* ##In :
* PUSHW = AUXTYPE
* PUSHB = TYPE
* PUSHB = MODE
* SYS.FOPEN.R : if R and !exists -> ERROR
* SYS.FOPEN.W : if W and !exists -> CREATE
* SYS.FOPEN.A : Append
* SYS.FOPEN.T : Open/Append in Text mode
* SYS.FOPEN.X : Create if not exists
* PUSHW = PATH (PSTR)
* ##Out :
* CC : A = hFILE
* CS : A = EC
*--------------------------------------
*\--------------------------------------
K.FOPEN jsr PFT.CheckPathSTK
>PULLW MLICALL.PARAMS+1
>PULLB K.FOPEN.MODE
@ -56,6 +57,7 @@ K.FOPEN jsr PFT.CheckPathSTK
>STYA ZPQuickPtr1
stx hFILE
>PUSHWI 1024 get a ProDOS IOBUF
>PUSHBI S.MEM.F.ALIGN+S.MEM.F.NOMOVE
jsr K.GetMem
@ -109,11 +111,13 @@ K.FOPEN.MODE .BS 1
K.FOPEN.TYPE .BS 1
K.FOPEN.AUXTYPE .BS 2
hFILE .BS 1
*--------------------------------------
* K.FCLOSEA
* In :
*/--------------------------------------
* #FCloseA
* Close a file
* ##In :
* A = hFILE
*--------------------------------------
* ##Out :
*\--------------------------------------
K.FCLOSEA jsr PFT.CheckFileA
sta hFILE
jsr K.GetMemPtrA
@ -133,27 +137,28 @@ K.FCLOSEA.1 ldy #S.FILE.PRODOS.REF
.2 lda hFILE
jsr K.FreeMemA
rts
*--------------------------------------
* K.FREAD
* In :
*/--------------------------------------
* #FRead
* Read bytes from file
* ##In :
* PULLB = hFILE
* PULLW = Bytes To Read
* PULLW = Dest Ptr
* Out :
* Y,A = Bytes Read
*--------------------------------------
* ##Out :
* Y,A = Bytes Read
*\--------------------------------------
K.FREAD jsr PFT.CheckFileSTK
ldx #MLIREAD
bra K.FREAD.1
*--------------------------------------
* K.FWRITE
* In :
*/--------------------------------------
* #FWrite
* ##In:
* PULLB = hFILE
* PULLW = Bytes To Write
* PULLW = Src Ptr
* Out :
* Y,A = Bytes Written
*--------------------------------------
* #Out:
* Y,A = Bytes Written
*\--------------------------------------
K.FWRITE jsr PFT.CheckFileSTK
ldx #MLIWRITE
K.FREAD.1 >PULLA
@ -168,23 +173,23 @@ K.FREAD.1 >PULLA
bcs .9
>LDYA MLICALL.PARAMS+6
.9 rts
*--------------------------------------
* K.FFLUSHA
* In :
*/--------------------------------------
* #FFLUSHA
* ##In:
* A = hFILE
*--------------------------------------
*\--------------------------------------
K.FFLUSHA jsr PFT.CheckFileA
jsr FILE.SetupPrt1A
>MLICALL MLIFLUSH
rts
*--------------------------------------
* K.FSEEK
* In :
* PULLB = hFILE
* PULLB = From
* PULLW = OffsetLo
* PULLW = OffsetHi
*--------------------------------------
*/-------------------------------------
* #FSEEK
* ##In:
* PUSHW = OffsetHi
* PUSHW = OffsetLo
* PUSHB = From
* PUSHB = hFILE
*\-------------------------------------
K.FSEEK jsr PFT.CheckFileSTK
>PULLA
jsr FILE.SetupPrt1A
@ -236,13 +241,13 @@ K.FSEEK jsr PFT.CheckFileSTK
*--------------------------------------
K.FSEEK.FROM .BS 1
K.FSEEK.OFFSET .BS 4
*--------------------------------------
* K.FTELLA
* In :
*/--------------------------------------
* #FTELLA
* ##In:
* A = hFILE
* Out :
* ##Out:
* Y,A,X = Offset
*--------------------------------------
*\--------------------------------------
K.FTELLA jsr PFT.CheckFileA
K.FTELLA.1 jsr FILE.SetupPrt1A
>MLICALL MLIGETMARK
@ -250,16 +255,16 @@ K.FTELLA.1 jsr FILE.SetupPrt1A
>LDYA MLICALL.PARAMS+2
ldx MLICALL.PARAMS+4
.9 rts
*--------------------------------------
* K.FEOFA
* In :
*/--------------------------------------
* #FEOFA
* ##In:
* A = hFILE
* Out :
* CC :
* A=0 EOF
* A !=0 NOT EOF
* CS :
*--------------------------------------
* ##Out:
* CC :
* A=0 EOF
* A !=0 NOT EOF
* CS :
*\--------------------------------------
K.FEOFA jsr PFT.CheckFileA
jsr FILE.SetupPrt1A
jsr K.FTELLA.1
@ -282,30 +287,34 @@ K.FEOFA jsr PFT.CheckFileA
.8 clc
.9 rts
K.FEOFA.MARK .BS 3
*--------------------------------------
* K.REMOVEYA
*--------------------------------------
*/--------------------------------------
* #REMOVEYA
*\--------------------------------------
K.REMOVEYA jsr PFT.CheckPathYA
>STYA MLICALL.PARAMS+1
>MLICALL MLIDESTROY
rts
*--------------------------------------
* K.RENAME
* In :
* PULLW = Old Name
* PULLW = New Name
*--------------------------------------
*/--------------------------------------
* #RENAME
* Rename a file
* ##In :
* PUSHW = New Name
* PUSHW = Old Name
* ##Out :
*\--------------------------------------
K.RENAME jsr PFT.CheckPathSTK
>PULLW MLICALL.PARAMS+1
>PULLW MLICALL.PARAMS+3
>MLICALL MLIRENAME
rts
*--------------------------------------
* K.STAT
* In :
* PULLW = PTR to Filename
* PULLW = PTR to S.STAT buffer
*--------------------------------------
*/--------------------------------------
* #STAT
* Return information about a file
* ##In :
* PUSHW = PTR to S.STAT buffer
* PUSHW = PTR to Filename (PSTR)
* ##Out :
*\--------------------------------------
K.STAT jsr PFT.CheckPathSTK
>PULLW MLICALL.PARAMS+1
>PULLW ZPQuickPtr2

View File

@ -15,7 +15,7 @@ AUTO 6
*--------------------------------------
K.FileSearch >PULLW ZPQuickPtr4 ZPQuickPtr1 trashed by ExpandPStrYA
>PULLYA Get Search list
>SYSCALL SYS.ExpandPStrYA Expand it (SYSCALL to BNK1)
>SYSCALL ExpandPStrYA Expand it (SYSCALL to BNK1)
bcs .99
stx K.FileSearch.hSrch
@ -98,14 +98,14 @@ K.GetFullPathYA >STYA ZPQuickPtr3 Ptr1 & 2 used by StrCpy
jsr K.GetMemPtrA
>PUSHYA
>PUSHWI KrnBuf256
>SYSCALL SYS.PStrCpy
>SYSCALL PStrCpy
.1 >PUSHW ZPQuickPtr3
>PUSHWI KrnBuf256
>SYSCALL SYS.PStrCat
>SYSCALL PStrCat
K.GetFullPathYA.NewStr
>LDYAI KrnBuf256
>SYSCALL SYS.NewPStrYA
>SYSCALL NewPStrYA
rts
K.GetFullPathYA.9

View File

@ -92,12 +92,12 @@ Kernel.Init2 sei
jsr PrintCStrAX
rts Do NOT replace this JSR/RTS with a JMP
*--------------------------------------
MSG.Init2 >CSTRING "A2osX[Stage2]:Init\nInstalling KERNEL...\n - $BE00 (Global Page)...\n"
MSG.D000BNK1 >CSTRING " - $D000 Bank1...\n"
MSG.D000BNK2 >CSTRING " - $D000 Bank2...\n"
MSG.E000 >CSTRING " - $E000...\n"
MSG.HZ >CSTRING "Kernel SYS Timer Set For %d0 hz Machine.\n"
MSG.Init2.OK >CSTRING "A2osX[Stage2]:Complete.\n"
MSG.Init2 >CSTR "A2osX[Stage2]:Init\nInstalling KERNEL...\n - $BE00 (Global Page)...\n"
MSG.D000BNK1 >CSTR " - $D000 Bank1...\n"
MSG.D000BNK2 >CSTR " - $D000 Bank2...\n"
MSG.E000 >CSTR " - $E000...\n"
MSG.HZ >CSTR "Kernel SYS Timer Set For %d0 hz Machine.\n"
MSG.Init2.OK >CSTR "A2osX[Stage2]:Complete.\n"
*--------------------------------------
CPU.Init >LDAXI MSG.CPU
jsr PrintCStrAX
@ -269,8 +269,8 @@ Z80Code.Start .HS 31FFFF START: LD SP,0FFFFH Init Stack
Z80Code.End .EQ *
Z80Code.Size .EQ Z80Code.End-Z80Code.Start
*--------------------------------------
MSG.CPU >CSTRING "Checking CPU..."
MSG.CPU.SPEED >CSTRING "Detecting CPU Speed..."
MSG.CPU >CSTR "Checking CPU..."
MSG.CPU.SPEED >CSTR "Detecting CPU Speed..."
MSG.CPUTYPEL .DA #MSG.6502
.DA #MSG.65C02
.DA #MSG.65R02
@ -279,14 +279,14 @@ MSG.CPUTYPEH .DA /MSG.6502
.DA /MSG.65C02
.DA /MSG.65R02
.DA /MSG.65816
MSG.6502 >CSTRING "6502.\n"
MSG.65C02 >CSTRING "65C02.\n"
MSG.65R02 >CSTRING "65R02.\n"
MSG.65816 >CSTRING "65816.\n"
MSG.CPU.SPEEDOK >CSTRING "%d.%02d Mhz.\n"
MSG.Z80 >CSTRING "Detecting Z80 CPU..."
MSG.Z80.OK >CSTRING "Detected In Slot %d.\n"
MSG.Z80.KO >CSTRING "Not Detected.\n"
MSG.6502 >CSTR "6502.\n"
MSG.65C02 >CSTR "65C02.\n"
MSG.65R02 >CSTR "65R02.\n"
MSG.65816 >CSTR "65816.\n"
MSG.CPU.SPEEDOK >CSTR "%d.%02d Mhz.\n"
MSG.Z80 >CSTR "Detecting Z80 CPU..."
MSG.Z80.OK >CSTR "Detected In Slot %d.\n"
MSG.Z80.KO >CSTR "Not Detected.\n"
*--------------------------------------
Kernel.Move ldy #0
.1 inc ZPQuickPtr3

View File

@ -9,7 +9,7 @@ Kernel.Init3 jsr K.DevMgrInit
bcs *
lda #1 SYS device
>SYSCALL SYS.GetDevByIDA
>SYSCALL GetDevByIDA
>STYA pDev
ldx #DEVMGR.OPEN
jsr pDevJmp
@ -21,51 +21,51 @@ Kernel.Init3 jsr K.DevMgrInit
sta A2osX.ASCREEN
>LDYAI MSG.Init3
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
>LDYAI MSG.IRQ
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
jsr K.IrqMgrInit
bcs *
>LDYAI MSG.MEM
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
jsr K.MemMgrInit
bcs *
>LDYAI MSG.EVT
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
jsr K.EvtMgrInit
bcs *
>LDYAI MSG.FLT
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
jsr K.FltMgrInit
bcs *
>LDYAI MSG.TSK
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
jsr K.TskMgrInit
bcs *
ldy #S.PS.hPREFIX
lda (pPs),y
>SYSCALL SYS.GetMemPtrA
>SYSCALL GetMemPtrA
>PUSHYA
>LDYAI MSG.Prefix
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
>PUSHWI STARTUP.CMDLINE
>LDYAI MSG.Startup
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
>LDYAI STARTUP.CMDLINE
>SYSCALL SYS.CreateProcessYA
>SYSCALL CreateProcessYA
bcs .9
>LDYAI MSG.Init3.OK
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
>LDYAI TskMgr.Table
>STYA pPs
@ -77,7 +77,7 @@ Kernel.Init3 jsr K.DevMgrInit
.9 >PUSHA
>LDYAI MSG.StartupErr
>SYSCALL SYS.PrintFYA
>SYSCALL PrintFYA
bra *
*--------------------------------------
* K.DevMgrInit
@ -102,7 +102,7 @@ DevMgr.NUL cld
jmp (DevMgr.NUL.Code,x)
.DA #0 DevID=0
.DA #S.DEV.F.INUSE+S.DEV.F.SHARE+S.DEV.F.COUT+S.DEV.F.CHAR
>PSTRING "NUL" NAME
>PSTR "NUL" NAME
.HS 00 NAME must Be 5 bytes long
.HS 00
.HS 00.00.00.00
@ -111,7 +111,7 @@ DevMgr.SYS cld
jmp (DevMgr.SYS.Code,x)
.DA #1 DevID=1
.DA #S.DEV.F.INUSE+S.DEV.F.EVENT+S.DEV.F.SHARE+S.DEV.F.COUT+S.DEV.F.CHAR
>PSTRING "SYS" NAME
>PSTR "SYS" NAME
.HS 00 NAME must Be 5 bytes long
.HS 00
.HS 00.00.00.00
@ -233,7 +233,7 @@ K.TskMgrInit stz TSKMGR.LASTID
>PUSHWI K.ENV.SIZE get a buffer for ENV
>PUSHBI S.MEM.F.INIT0 make sure blank
>SYSCALL SYS.GetMem create it...
>SYSCALL GetMem create it...
bcs .9
txa
@ -246,7 +246,7 @@ K.TskMgrInit stz TSKMGR.LASTID
bcs .9
>LDYAI UsrBuf256
>SYSCALL SYS.NewPStrYA
>SYSCALL NewPStrYA
bcs .9
txa
@ -255,37 +255,37 @@ K.TskMgrInit stz TSKMGR.LASTID
>PUSHWI UsrBuf256 push ENV value
>PUSHWI I.ENV.A2osX push ENV name
>SYSCALL SYS.SetEnv
>SYSCALL SetEnv
bcs .9
>LDYAI I.ENV.PATH
>SYSCALL SYS.PutEnvYA
>SYSCALL PutEnvYA
bcs .9
>LDYAI I.ENV.LIB
>SYSCALL SYS.PutEnvYA
>SYSCALL PutEnvYA
bcs .9
>LDYAI I.ENV.DRV
>SYSCALL SYS.PutEnvYA
>SYSCALL PutEnvYA
.9 rts
*--------------------------------------
I.ENV.A2osX >PSTRING "A2OSX"
I.ENV.PATH >PSTRING "PATH=${A2OSX}SBIN/;${A2OSX}BIN/"
I.ENV.LIB >PSTRING "LIB=${A2OSX}LIB/"
I.ENV.DRV >PSTRING "DRV=${A2OSX}DRV/"
STARTUP.CMDLINE >PSTRING "${A2OSX}SBIN/SHELL ${A2OSX}A2osX.STARTUP"
I.ENV.A2osX >PSTR "A2OSX"
I.ENV.PATH >PSTR "PATH=${A2OSX}SBIN/;${A2OSX}BIN/"
I.ENV.LIB >PSTR "LIB=${A2OSX}LIB/"
I.ENV.DRV >PSTR "DRV=${A2OSX}DRV/"
STARTUP.CMDLINE >PSTR "${A2OSX}SBIN/SHELL ${A2OSX}A2osX.STARTUP"
*--------------------------------------
MSG.Init3 >CSTRING "A2osX[Stage3]:Init\n"
MSG.IRQ >CSTRING " - Interrupt Manager...\n"
MSG.MEM >CSTRING " - Memory Manager...\n"
MSG.EVT >CSTRING " - Event Manager...\n"
MSG.FLT >CSTRING " - Path Filter...\n"
MSG.TSK >CSTRING " - Task Manager...\n"
MSG.Prefix >CSTRING "Prefix:%S\n"
MSG.Startup >CSTRING "Executing Kernel Startup Script...\nCmd:%S\n"
MSG.StartupErr >CSTRING "Failed : [$%h]\n"
MSG.Init3.OK >CSTRING "A2osX[Stage3]:Complete.\n"
MSG.Init3 >CSTR "A2osX[Stage3]:Init\n"
MSG.IRQ >CSTR " - Interrupt Manager...\n"
MSG.MEM >CSTR " - Memory Manager...\n"
MSG.EVT >CSTR " - Event Manager...\n"
MSG.FLT >CSTR " - Path Filter...\n"
MSG.TSK >CSTR " - Task Manager...\n"
MSG.Prefix >CSTR "Prefix:%S\n"
MSG.Startup >CSTR "Executing Kernel Startup Script...\nCmd:%S\n"
MSG.StartupErr >CSTR "Failed : [$%h]\n"
MSG.Init3.OK >CSTR "A2osX[Stage3]:Complete.\n"
*--------------------------------------
MAN
SAVE SYS/KERNEL.S.INIT3

View File

@ -13,7 +13,7 @@ AUTO 6
*--------------------------------------
K.LoadLibYA >STYA K.LoadLib.Name save libname for K.FileSearch
>LDYAI ENV.LIB push ENVNAME=LIB
>SYSCALL SYS.GetEnvYA get value for ENV=LIB
>SYSCALL GetEnvYA get value for ENV=LIB
bcs .99
>PUSHYA Push $LIB value

View File

@ -327,7 +327,7 @@ K.FreeMemA phy
bit $C000,x
bra *
*--------------------------------------
K.FreeMemA.ERR >CSTRING "***MemMgr:Attempt to Free an already freed hMem at $%H"
K.FreeMemA.ERR >CSTR "***MemMgr:Attempt to Free an already freed hMem at $%H"
*--------------------------------------
* K.GetMemPtrA
* In:

View File

@ -255,7 +255,7 @@ PS.Init >LDYA K.CreateProcess.CmdLine
pla Restore PTR...
ply
>SYSCALL SYS.LoadExeYA Y,A=filename full path
>SYSCALL LoadExeYA Y,A=filename full path
bcs .9
>STYA ZPQuickPtr4 save PTR to Code Segment

View File

@ -81,8 +81,8 @@ K.KernelRun jsr TSK.TskMgrRun
jsr K.PrintFYA
bra *
*--------------------------------------
MSG.DumpEvent >CSTRING "!Unhandled Evt:F=%b,DevID=$%h,DATALO=$%h,DATAHI=$%h,W1=$%H,W2=$%H\n"
MSG.KRNLPANIC >CSTRING "\n!!!Kernel Panic!!!\n"
MSG.DumpEvent >CSTR "!Unhandled Evt:F=%b,DevID=$%h,DATALO=$%h,DATAHI=$%h,W1=$%H,W2=$%H\n"
MSG.KRNLPANIC >CSTR "\n!!!Kernel Panic!!!\n"
*--------------------------------------
MAN
SAVE SYS/KERNEL.S.RUN

View File

@ -4,18 +4,18 @@ NEW
INC 1
AUTO 6
.LIST OFF
*--------------------------------------
* #K.NewPStrYA
* Create a new copy of PSTR
*/--------------------------------------
* #NewPStrYA
* Create a new copy of PSTR
* ##In:
* Y,A = PTR to buffer
* Y,A = PTR to buffer
* ##Out:
* CC : success
* Y,A = PTR to String
* X = hMem (PSTRING)
* Y,A = PTR to String
* X = hMem (PSTRING)
* CS : error
* A = SYS error code
*--------------------------------------
* A = SYS error code
*\--------------------------------------
K.NewPStrYA >STYA ZPQuickPtr2
lda (ZPQuickPtr2)
inc
@ -35,8 +35,8 @@ K.NewPStrYA >STYA ZPQuickPtr2
clc
.9 rts
*--------------------------------------
* #K.PStrCpy
* Copy string
* #PStrCpy
* Copy string
* ##In:
* PUSHW = PSTR to SRC (PSTRING)
* PUSHW = PSTR to DST (PSTRING)
@ -59,8 +59,8 @@ K.PStrCpyPtr2Ptr1
.2 clc
rts
*--------------------------------------
* #K.PStrCat
* Append SRC to DST
* #PStrCat
* Append SRC to DST
* ##In:
* PUSHW = PSTR to SRC (PSTRING)
* PUSHW = PSTR to DST (PSTRING)
@ -94,14 +94,14 @@ K.PStrCat jsr PullPtr1Ptr2
clc
rts
*/--------------------------------------
* #K.PStrMatch
* Compare a String against pattern
* #PStrMatch
* Compare a String against pattern
* ##In:
* PUSHW = PTR to Pattern (e.g. '*test?.txt')
* PUSHW = PTR to Src String
* ##Out:
* CC : match
* CS : no match
* CS : no match
*\--------------------------------------
K.PStrMatch jsr PullPtr1Ptr2
@ -168,12 +168,10 @@ K.PStrMatch jsr PullPtr1Ptr2
.9 sec
rts
*/--------------------------------------
* #K.PStrUprYA
* Convert string to UPPERCASE
* #K.PStrLwrYA
* Convert string to lowercase
* #PStrUprYA/PStrLwrYA
* Convert string to UPPERCASE/lowercase
* ##In:
* Y,A = PTR to String (PSTRING)
* Y,A = PTR to String (PSTRING)
* ##Out:
* Uppercased/lowercased String in Buffer
*\--------------------------------------
@ -205,27 +203,27 @@ K.PStrLwrYA ldx #2
*--------------------------------------
K.PStrUprLwr .AS "azAZ"
*/--------------------------------------
* #K.PStrFTime
* #PStrFTime
* Convert S.TIME struct to PSTR
* ##In :
* ##In:
* PUSHW = Dst PTR To PSTR Buf
* PUSHW = Src PTR To Format String
* %a Abbreviated weekday name : Thu
* %A Full weekday name : Thursday
* %b Abbreviated month name : Aug
* %B Full month name : August
* %d Day of the month, zero-padded (01-31)
* %H Hour in 24h format (00-23) 14
* %I Hour in 12h format (01-12) 02
* %m Month as a decimal number (01-12) 08
* %M Minute (00-59) 55
* %p AM or PM designation PM
* %S Second (00-61) 02
* %w Weekday as a decimal number with Sunday as 0 (0-6)
* %y Year, last two digits (00-99)
* %Y Year four digits 2001
* %a : Abbreviated weekday name : Thu
* %A : Full weekday name : Thursday
* %b : Abbreviated month name : Aug
* %B : Full month name : August
* %d : Day of the month, zero-padded (01-31)
* %H : Hour in 24h format (00-23) 14
* %I : Hour in 12h format (01-12) 02
* %m : Month as a decimal number (01-12) 08
* %M : Minute (00-59) 55
* %p : AM or PM designation PM
* %S : Second (00-61) 02
* %w : Weekday as a decimal number with Sunday as 0 (0-6)
* %y : Year, last two digits (00-99)
* %Y : Year four digits 2001
* PUSHW = Src PTR To S.Time
* ##Out :
* ##Out:
* none. always succeed.
*\--------------------------------------
K.PStrFTime jsr PullPtr1Ptr2Ptr3
@ -431,39 +429,40 @@ K.PStrFTime.addChar
sta (ZPQuickPtr3),y
rts
*--------------------------------------
K.PStrFTime.DAY >PSTRING "Monday"
>PSTRING "Tuesday"
>PSTRING "Wednesday"
>PSTRING "Thursday"
>PSTRING "Friday"
>PSTRING "Saturday"
>PSTRING "Sunday"
K.PStrFTime.DAY >PSTR "Monday"
>PSTR "Tuesday"
>PSTR "Wednesday"
>PSTR "Thursday"
>PSTR "Friday"
>PSTR "Saturday"
>PSTR "Sunday"
*--------------------------------------
K.PStrFTime.MON >PSTRING "January"
>PSTRING "February"
>PSTRING "March"
>PSTRING "April"
>PSTRING "May"
>PSTRING "June"
>PSTRING "July"
>PSTRING "August"
>PSTRING "September"
>PSTRING "October"
>PSTRING "November"
>PSTRING "December"
K.PStrFTime.MON >PSTR "January"
>PSTR "February"
>PSTR "March"
>PSTR "April"
>PSTR "May"
>PSTR "June"
>PSTR "July"
>PSTR "August"
>PSTR "September"
>PSTR "October"
>PSTR "November"
>PSTR "December"
*--------------------------------------
K.PStrFTime.BIN .BS 1
K.PStrFTime.DEC .BS 1 always < 100
*/--------------------------------------
* #K.PStr2StrArrayYA
* ##In :
* #PStr2StrArrayYA
* Convert a PSTR (e.g. : command Line) to a Array of PSTRs (Args[])
* ##In:
* Y,A = PTR to String
* ##Out :
* ##Out:
* CC : success
* Y,A = PTR to StrArray
* X = hMem
* Y,A = PTR to StrArray
* X = hMem
* CS : error
* A = SYS error code
* A = SYS error code
*\--------------------------------------
K.PStr2StrArrayYA
>STYA ZPQuickPtr1

View File

@ -8,10 +8,10 @@ AUTO 6
.OR $2000
.TF /A2OSX.BOOT/SYS/KERNEL
*--------------------------------------
.INB INC/MACROS.I
.INB INC/A2OSX.I
.INB INC/IO.I
.INB INC/PRODOS.I
.INB /A2OSX.DEV/INC/MACROS.I
.INB /A2OSX.DEV/INC/A2OSX.I
.INB /A2OSX.DEV/INC/IO.I
.INB /A2OSX.DEV/INC/PRODOS.I
*--------------------------------------
TmpPtr1 .EQ $0 for X.PRINTF.S
ZPQuickPtr1 .EQ ZPKERNEL Temp Ptrs for use in very limited scope

View File

@ -196,10 +196,10 @@ NSC.Print >STAX TmpPtr1
bne .1
.9 jmp CROUT
*--------------------------------------
NSC.MSG0 >CSTRING "NSC ('No-Slot-Clock'/DS1216E) Driver For A2osX"
NSC.MSG1 >CSTRING "A Clock Driver Is Already Installed."
NSC.MSG2 >CSTRING "DS1216E Chip Not Detected."
NSC.MSG3 >CSTRING "DS1216E Driver Successfully Installed."
NSC.MSG0 >CSTR "NSC ('No-Slot-Clock'/DS1216E) Driver For A2osX"
NSC.MSG1 >CSTR "A Clock Driver Is Already Installed."
NSC.MSG2 >CSTR "DS1216E Chip Not Detected."
NSC.MSG3 >CSTR "DS1216E Driver Successfully Installed."
*--------------------------------------
* Driver For DS1216E
*--------------------------------------

View File

@ -380,14 +380,14 @@ RW.Print >STAX TmpPtr1
bne .1
.9 jmp CROUT
*--------------------------------------
RW.MSG >CSTRING "RAMWorks (I,II,III,z-Ram) Driver For A2osX"
RW.MSG.OK >CSTRING "/RAM31 Device Already Installed."
RW.MSG.OK1 >CSTRING " Pages Detected."
RW.MSG.KO1 >CSTRING "Not Detected."
RW.MSG.OK2 >CSTRING "RamWorks Driver Installed."
RW.MSG.KO2 >CSTRING "RamWorks Driver Install Error."
RW.MSG.OK3 >CSTRING "RamWorks Drive Formatted."
RW.MSG.KO3 >CSTRING "RamWorks Drive Format Error."
RW.MSG >CSTR "RAMWorks (I,II,III,z-Ram) Driver For A2osX"
RW.MSG.OK >CSTR "/RAM31 Device Already Installed."
RW.MSG.OK1 >CSTR " Pages Detected."
RW.MSG.KO1 >CSTR "Not Detected."
RW.MSG.OK2 >CSTR "RamWorks Driver Installed."
RW.MSG.KO2 >CSTR "RamWorks Driver Install Error."
RW.MSG.OK3 >CSTR "RamWorks Drive Formatted."
RW.MSG.KO3 >CSTR "RamWorks Drive Format Error."
*--------------------------------------
* Driver for Ramworks in main LC
* $FF00 -> $FF9A (Inclusive)

View File

@ -52,6 +52,38 @@ Prints C-Style String
+ %011s 'ABCDEFGH000'
+ %2f '3.14'
#OpenDirYA
##In:
+ Y,A = PATH (PSTR)
##Out :
+ CC : success
+ Y,A = PTR to S.DIR
+ CS : error
+ A = EC
#ReadDirA
##In:
+ A = hDIR
##Out :
+ CC : success
+ X = hDIRENT
+ Y,A = PTR to S.DIRENT
+ CS : error
+ A = EC
+ note : A = 0 means no more entry
#CloseDirA
##In:
+ A = hDIR
##Out:
+ none, always succeed.
#FOpen
Open a file