*** 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 + A = hFILE # 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 = SrcLen + PUSHW = SrcPtr + PUSHW = AUXTYPE (Handled by.... + PUSHB = TYPE ... + PUSHB = MODE ... + PUSHW = PATH ...FOpen) # 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