9.1 KiB
*** Auto generated by docgen.cmd ***
GetArgC
Returns argument count in the process command line.
In:
- none.
Out:
- A = Command line Arg Count (Including /path/cmd)
GetArgA
In:
- A = argument index.
Out:
- CC : success
- Y,A = PStr To Arg[A]
- CS : Out Of Bound
FPutCAY
Print A (char) to File
In:
- A : char to print
- Y = hFILE
Out:
- CC = success
PutCA
Print A (char) to StdOut
In:
- A : char to print
Out:
- CC = success
FGetCA
Get char from File
In:
- A = hFILE
Out:
- CC = success
- A = char
GetC
Get char from StdIn
In:
- none.
Out:
- CC = success
- A = char
FPutS
Write String to FILE
In:
- PUSHW : CPtr
- PUSHB : hFILE
Out:
- CC = success
PutSYA
Write String to StdOut
In:
- Y,A : CPtr
Out:
- CC = success
FGetS
Read String From FILE
In:
- PUSHW : CPtr
- PUSHB : hFILE
Out:
- CC = success
GetSYA
Read String From StdIn
In:
- Y,A : CPtr
Out:
- CC = success
SScanF
Scan a PStr (in progress)
In:
- PUSHW PTR to target buffer
- PUSHW PSTR pattern (ex: "%d.%d.%d.%d")
- %d : byte
- PUSHW PSTR to scan (ex: "192.168.1.5")
Out:
PPrintFYA/CPrintFYA
Prints Pascal/C-Style String
In:
- Y,A = PTR to PStr/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
- \b : Print 'BS' (08)
- \e : Print 'ESC' ($1B,27)
- \f : Print 'FF' ($0C,12)
- \n : Print 'LF' ($0A,10)
- \r : Print 'CR' ($0D,13)
- \\ : Print \
- % : Print %
- Modifiers for len and padding :
- %d : '9' '12'
- %2d : ' 9' '12'
- %02d : '09' '12'
- %11s : 'ABCDEFGH '
- %011s : 'ABCDEFGH000'
- %2f : '3.14'
Out:
- CC : success
- CS : I/O error from COut
GetDevByIDA
IN:
- A = DevID
OUT:
- CC = OK, CS = ERROR
- Y,A = DEVSLOT
- note: X Unmodified
GetDevByNameYA
IN:
- Y,A = Ptr to device name (PStr)
OUT:
- CC = OK, CS = ERROR
- X = DEVID
- Y,A = DEVSLOT
GetDevStatusA
IN:
- A = DevID
OUT:
- CC = OK, CS = ERROR
- Y,A = Ptr to S.DEVINFO
MkNodYA
return a hFile for a given Device Name
IN:
- Y,A=DevName
OUT:
- CC = OK, CS = ERROR
- A = hFILE
MkNodA
return a hFile for a given Socket
IN:
- A=hSocket
OUT:
- CC = OK, CS = ERROR
- X = hFILE
- Y,A = pFILE
MKFIFO
return a S.FILE to a new FIFO
IN:
OUT:
- CC = OK, CS = ERROR
- A = hFILE
OpenDirYA
In:
- Y,A = PATH (PSTR)
Out:
- CC : success
- A = hDIR
- 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.
MKDirYA
In:
- Y,A = DIR name
Out:
- CC : success
- CS : error
- A = EC
ExpandPStrYA
In:
- Y,A = PTR to String to Expand (PSTR)
Out:
- X = hMem to Expanded String (PSTR)
- Y,A = PTR to Expanded String
PutEnvYA
In:
- Y,A = PTR to String NAME=VALUE (PSTR)
Out:
SetEnv
In:
- PUSHW = PTR To Value (PSTR)
- PUSHW = PTR To Name (PSTR)
Out:
GetEnvYA
In:
- Y,A = PTR to NAME (PSTR)
Out:
- CC : Y,A = PTR to VALUE (PSTR)
- CS : not found
UnsetEnvYA
In:
- Y,A = PTR To Name (PSTR)
Out:
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
FCloseA
Close a file
In :
- A = hFILE
Out :
FReadA
Read ONE byte from file
In :
- A = hFILE
Out :
- A = Byte Read
FWriteAY
In:
- A = hFILE
- Y = char
Out:
- Y,A = Bytes Written
FRead
Read bytes from file
In :
- PUSHW = Dest Ptr
- PUSHW = Bytes To Read
- PUSHB = hFILE
Out :
- Y,A = Bytes Read
FWrite
In:
- PUSHW = Src Ptr
- PUSHW = Bytes To Write
- PUSHB = hFILE
Out:
- Y,A = Bytes Written
FFlushA
In:
- A = hFILE
FSeek
In:
- PUSHW = OffsetHi
- PUSHW = OffsetLo
- PUSHB = From
- PUSHB = hFILE
FTellA
In:
- A = hFILE
Out:
- Y,A,X = Offset
FEOFA
In:
- A = hFILE
Out:
- CC :
- A=0 EOF
- A =0 NOT EOF
- CS :
RemoveYA
Rename
Rename a file
In :
- PUSHW = New Name
- PUSHW = Old Name
Out :
Stat
Return information about a file
In :
- PUSHW = PTR to S.STAT buffer
- PUSHW = PTR to Filename (PSTR)
Out :
FileSearch
Search a file in the provided PATH list And return, if found, the full path to it.
In:
- PUSHW = Ptr to Search Path (PSTR) %LIB%;/SYS/SLIB
- PUSHW = Ptr to File Name (PSTR)
Out:
- CC : success
- Y,A = PSTR to FilePath (PSTR)
- X = hMem to FilePath
- CS : not found
GetFullPathYA
In :
- Y,A = Filename (PSTR)
Out :
- CC : success
- Y,A = FullPath (PSTR)
- X = hMem of FullPath
- CS : A = Error Code
LoadFile
In:
- PUSHW = AUXTYPE (Handled by....
- PUSHB = TYPE ...
- PUSHB = MODE ...
- PUSHW = PATH ...FOpen)
Out:
- Y,A = File Length
- X = hMem of Loaded File
SaveFile
In:
- PUSHW = SrcPtr
- PUSHW = SrcLen
- PUSHW = AUXTYPE (Handled by....
- PUSHB = TYPE ...
- PUSHB = MODE ...
- PUSHW = PATH ...FOpen)
ChTyp
In:
- PUSHB = TYPE
- PUSHW = PATH
ChMod
In:
- PUSHW = MODE
- PUSHW = PATH
ChOwn
In:
- PUSHW = UID
- PUSHW = PATH
ChGrp
In:
- PUSHW = GID
- PUSHW = PATH
GetMem
In:
- PUSHW = Size Requested
- PUSHB = Options
- S.MEM.F.INIT0 : init memory with 00
- S.MEM.F.ALIGN : page aligned
Out:
- CC : success
- YA = PTR to Mem
- X = hMem
- CS :
- A = EC
FreeMemA
In:
- A = hMem To Free
Out:
- none.
- (X,Y unmodified)
GetMemPtrA
In:
- A = hMem
Out:
- Y,A = PTR to MemBlock
- (X unmodified)
GetMemByIDA
In:
- A = hMem
Out:
- Y,A = ZPMemMgrSPtr = PTR to S.MEM
- X unmodified
GetMemStatYA
In:
- Y,A = 24 bytes buffer
Out:
- Buffer filled with memory stats
ExecProcessNewEnvYA
ExecProcessYA (Blocking Parent PID)
CreateProcessNewEnvYA
CreateProcessYA (Non Blocking)
In:
- Y,A = PTR To Cmd Line
Out:
- A = Child PSID
GetPSByIDA
In :
- A = PID
Out :
- Y,A = PTR to TSKSLOT
Sleep
Make current process suspend until next RUN
In :
- (none)
Out :
- (none)
NewPStrYA
Create a new copy of PSTR
In:
- Y,A = PTR to buffer
Out:
- CC : success
- Y,A = PTR to String
- X = hMem (PSTR)
- CS : error
- A = SYS error code
PStrCpy
Copy string
In:
- PUSHW = Ptr to SRC (PSTR)
- PUSHW = Ptr to DST (PSTR)
Out:
- DST = SRC (PSTR)
PStrCat
Append SRC to DST
In:
- PUSHW = Ptr to SRC (PSTR)
- PUSHW = Ptr to DST (PSTR)
Out:
- DST = DST+SRC (PSTR)
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
PStrUprYA/PStrLwrYA
Convert string to UPPERCASE/lowercase
In:
- Y,A = PTR to String (PSTR)
Out:
- Uppercased/lowercased String in Buffer
PStrFTime
Convert S.TIME struct to PSTR
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
- PUSHW = Src PTR To S.Time
Out:
- none. always succeed.
PStr2StrArrayYA
Convert a PSTR (e.g. : command Line) to a Array of PSTRs (Args[])
In:
- Y,A = PTR to String
Out:
- CC : success
- Y,A = PTR to StrArray
- X = hMem
- CS : error
- A = SYS error code