Base classes:
class FunOut ok=0 all out0 all out1 all out2 all out3 all out4 class TwoInts i0=0 i1=0 class IntAndStr i=0 s="" class OkAndData ok=0 data=[] class OkAndData1 ok=0 data=[] dataCount=0 dataSize=0 lastSize=0 class AddrSize addr=0 size=0 class DateTime date=0 #year 2Bytes,month 1Byte, day 1 Byte time=0 #hour 1B,minutes 1B, seconds 6 bits, miliseconds 10 bits class Drive id=0 name="" type=0 #0 floppy 1 ide class DirItem type=0 #1 file,2 dir name="" size=0 DateTime updated DateTime created class File name="" dirName="" Drive drive class ReadFileOutput ok=0 mem data#=[mem] #dataCount=0 fileSize=0 #dataSizes=[] class WriteFileItem size=0 mem data
Base functions:
int int abs(int x) str toHex(int i) str toStr(int i) byte toByte(int i) int readMem(int address) byte readMemByte(int address) int readMemBigEndian(int address) proc setMem(int address,int val) proc setMem16(int addr1,int val) proc setMemBigEndian(int address,int val) int setBit(int x, int offset)#offset 31 - offset 0 int resetBit(int x, int offset)#lsb offset=0 int getBit(int x, int offset) byte loByte(int x) byte hiByte(int x) proc copyMem(int destAddr, int sourceAddr, int dataLen) int isEven(int l) int isOdd(int l) int divideAndRoundUp(int x, int y) int roundUp(int x,int roundTo) str chr(int i) loWord(int x) int hiWord(int x) max(int x,int y) min(int x,int y) int align(int x, int to) byte str toHex(byte b) int toInt(byte by) proc setMem(int address,byte val) byte setBit(byte x, int offset) byte resetBit(byte x, int offset) int getBit(byte x, int offset) char toChar(byte by) str toStr(byte c) byte getByte(byte ind, int buffer) proc insert(byte ind,byte val, int buffer) str chr(byte b) str str toHex(str text) int len(str s) str makeStr(int len,str c) int toInt(str s)#no sign char toChar(str text) proc rightPad(str s, str c, int len) rfind(str s, str toFind) proc insert(str s,int pos, str c) proc delete(str s, int ind) proc delete(str s, int start, int end)# end not deleted str rtrim( str s) int ord(str c) int isUpper(str c) int isLower(str c) str toLower(str s) str toUpper(str s) int isLetter(str c) int isInt(str s) int isDigit(str c) int isHex(str s) int hexToInt(str x) list split(str s) list split(str s, str del) list split(str s, str del, str del1) proc addChar(str text, char char_value) list strToLines( str text) char str toHex(char c) str toStr(char c) byte toByte(char letter) int toInt(char c) list int len(list l) proc delete(list l, int i) proc delete(list l, int start, int end)# end not deleted list delete(list l, list toDelete)#toDelete list of indexes proc deleteObjects(list l,list toDelete)#toDelete list of objects all last(list l) proc insert(list l, str s, int pos) int findTextSize(list text) find(list l, str s)= find(list l, str s, int start)= rfind(list l, str s)= rfind(list l, str s,int start)= find(str s, str toFind)= str listToStr(list l)= mem paragraphsToMem(list l)= #l list of strings # result strings separated by cr(13) and 0 at the end mem mem getMem(int size) toInt(mem m) str toHex(mem m) proc zeroMem(mem buffer, int size) proc zeroMem(mem buffer) proc copyStrToMem(mem dest, str s, int size)#str ended by 0 or size proc copyStrToMem(mem m, str s) proc copyMem(int destAddr, int sourceAddr, int dataLen) proc copyMem(mem dest, mem source, int dataLen) proc setMem(mem buffer, int offset,int val) proc setMem(mem buffer, int offset,byte val) int readMem(mem buffer, int offset ) byte readMemByte(mem buffer, int offset ) memToParagraphs(mem cs ) memToParagraphs1(mem cs )#lines separated only by CR 0d cstr int len(cstr cs) str toStr(cstr cs) str toStrFromCstrAddr(int cstrAddr) date time DateTime getDateTime() int getDate() int getTime() int toDate(int year,int month, int day) int toTime(int hour,int minutes, int seconds) str toStr(DateTime dateTime) int getSeconds(DateTime dateTime) int getMinutes(DateTime dateTime) int getHours(DateTime dateTime) int getDay(DateTime dateTime) int getMonth(DateTime dateTime) int getYear(DateTime dateTime) int getSeconds(DateTime dateTime) int getSysTime() #in miliceconds from system startup str sysTimeToStr(int sysTime) console io proc print(str text) proc print(int i) proc print(byte by) str getLine() system proc printMem(int data_addr, int len) str getLastError() proc printLastError() str getCmdText() proc runCode(str prog_name, str dir_name,Drive drive, str cmd_text) proc raiseError(str text) file io int openFile(str fileName,int style) # style OF_READ,OF_WRITE,OF_CREATE_OVERWRITE proc closeFile(int hFile) int getFileSize(int hFile) ReadFileOutput readFile(int hFile,int fSize) OkAndData readLines(int hFile) int writeLines(int hFile, list lines) str getCurrDir() others proc strCopy(int destAddr, str s, int len)=#dest is c str proc copyStrToMem(int destAddr, str s, int size)#str ended by 0 or size proc copyMemToStr( str s,int sourceAddr,int size)#str ended by 0 or size proc copyMem(mem dest , int sourceAddr, int dataLen) proc copyMem(int destAddr , mem source, int dataLen)