FICL_VM
FICL_VM *bf_vm;
bf_command(FICL_VM *vm)
void ficlTextOut(FICL_VM *pVM, char *msg, int fNewline)
void ficlTextOut(FICL_VM *pVM, char *msg, int fNewline)
void ficlTextOut(FICL_VM *pVM, char *msg, int fNewline)
void dictCheck(FICL_DICT *pDict, FICL_VM *pVM, int n)
void dictHashSummary(FICL_VM *pVM)
void ficlListParseSteps(FICL_VM *pVM)
FICL_VM *ficlNewVM(FICL_SYSTEM *pSys)
FICL_VM *pVM = vmCreate(NULL, defaultStack, defaultStack);
void ficlFreeVM(FICL_VM *pVM)
FICL_VM *pList = pSys->vmList;
int ficlEvaluate(FICL_VM *pVM, char *pText)
int ficlExec(FICL_VM *pVM, char *pText)
int ficlExecC(FICL_VM *pVM, char *pText, FICL_INT size)
int ficlExecXT(FICL_VM *pVM, FICL_WORD *pWord)
FICL_VM *pVM = pSys->vmList;
int ficlParseFloatNumber( FICL_VM *pVM, STRINGINFO si ); /* float.c */
int ficlParsePrefix(FICL_VM *pVM, STRINGINFO si);
void constantParen(FICL_VM *pVM);
void twoConstParen(FICL_VM *pVM);
int ficlParseNumber(FICL_VM *pVM, STRINGINFO si);
void ficlTick(FICL_VM *pVM);
void parseStepParen(FICL_VM *pVM);
extern void ficlOutb(FICL_VM *pVM);
extern void ficlInb(FICL_VM *pVM);
extern void ficlSetenv(FICL_VM *pVM);
extern void ficlSetenvq(FICL_VM *pVM);
extern void ficlGetenv(FICL_VM *pVM);
extern void ficlUnsetenv(FICL_VM *pVM);
extern void ficlCopyin(FICL_VM *pVM);
extern void ficlCopyout(FICL_VM *pVM);
extern void ficlFindfile(FICL_VM *pVM);
extern void ficlCcall(FICL_VM *pVM);
extern void ficlPnpdevices(FICL_VM *pVM);
extern void ficlPnphandlers(FICL_VM *pVM);
typedef void (*OUTFUNC)(FICL_VM *pVM, char *text, int fNewline);
FICL_VM *link; /* Ficl keeps a VM list for simple teardown */
typedef void (*FICL_CODE)(FICL_VM *pVm);
void vmBranchRelative(FICL_VM *pVM, int offset);
FICL_VM * vmCreate (FICL_VM *pVM, unsigned nPStack, unsigned nRStack);
void vmDelete (FICL_VM *pVM);
void vmExecute (FICL_VM *pVM, FICL_WORD *pWord);
FICL_DICT *vmGetDict (FICL_VM *pVM);
char * vmGetString (FICL_VM *pVM, FICL_STRING *spDest, char delimiter);
STRINGINFO vmGetWord (FICL_VM *pVM);
STRINGINFO vmGetWord0 (FICL_VM *pVM);
int vmGetWordToPad (FICL_VM *pVM);
STRINGINFO vmParseString (FICL_VM *pVM, char delimiter);
STRINGINFO vmParseStringEx(FICL_VM *pVM, char delimiter, char fSkipLeading);
CELL vmPop (FICL_VM *pVM);
void vmPush (FICL_VM *pVM, CELL c);
void vmPopIP (FICL_VM *pVM);
void vmPushIP (FICL_VM *pVM, IPTYPE newIP);
void vmQuit (FICL_VM *pVM);
void vmReset (FICL_VM *pVM);
void vmSetTextOut (FICL_VM *pVM, OUTFUNC textOut);
void vmTextOut (FICL_VM *pVM, char *text, int fNewline);
void vmTextOut (FICL_VM *pVM, char *text, int fNewline);
void vmThrow (FICL_VM *pVM, int except);
void vmThrowErr (FICL_VM *pVM, char *fmt, ...);
void vmInnerLoop(FICL_VM *pVM);
void vmCheckStack(FICL_VM *pVM, int popCells, int pushCells);
void vmCheckFStack(FICL_VM *pVM, int popCells, int pushCells);
void vmPushTib (FICL_VM *pVM, char *text, FICL_INT nChars, TIB *pSaveTib);
void vmPopTib (FICL_VM *pVM, TIB *pTib);
void dictCheck (FICL_DICT *pDict, FICL_VM *pVM, int n);
void dictHashSummary(FICL_VM *pVM);
typedef int (*FICL_PARSE_STEP)(FICL_VM *pVM, STRINGINFO si);
void ficlListParseSteps(FICL_VM *pVM);
FICL_VM *vmList;
int ficlEvaluate(FICL_VM *pVM, char *pText);
int ficlExec (FICL_VM *pVM, char *pText);
int ficlExecC(FICL_VM *pVM, char *pText, FICL_INT nChars);
int ficlExecXT(FICL_VM *pVM, FICL_WORD *pWord);
int ficlExecFD(FICL_VM *pVM, int fd);
FICL_VM *ficlNewVM(FICL_SYSTEM *pSys);
void ficlFreeVM(FICL_VM *pVM);
static void ficlCloseFile(FICL_VM *pVM) /* ( fileid -- ior ) */
static void ficlDeleteFile(FICL_VM *pVM) /* ( c-addr u -- ior ) */
static void ficlRenameFile(FICL_VM *pVM) /* ( c-addr1 u1 c-addr2 u2 -- ior ) */
static void ficlFileStatus(FICL_VM *pVM) /* ( c-addr u -- x ior ) */
static void ficlFilePosition(FICL_VM *pVM) /* ( fileid -- ud ior ) */
static void pushIor(FICL_VM *pVM, int success)
static void ficlFileSize(FICL_VM *pVM) /* ( fileid -- ud ior ) */
static void ficlIncludeFile(FICL_VM *pVM) /* ( i*x fileid -- j*x ) */
static void ficlReadFile(FICL_VM *pVM) /* ( c-addr u1 fileid -- u2 ior ) */
static void ficlReadLine(FICL_VM *pVM) /* ( c-addr u1 fileid -- u2 flag ior ) */
static void ficlFopen(FICL_VM *pVM, char *writeMode) /* ( c-addr u fam -- fileid ior ) */
static void ficlWriteFile(FICL_VM *pVM) /* ( c-addr u1 fileid -- ior ) */
static void ficlWriteLine(FICL_VM *pVM) /* ( c-addr u1 fileid -- ior ) */
static void ficlRepositionFile(FICL_VM *pVM) /* ( ud fileid -- ior ) */
static void ficlFlushFile(FICL_VM *pVM) /* ( fileid -- ior ) */
static void ficlResizeFile(FICL_VM *pVM) /* ( ud fileid -- ior ) */
static void ficlOpenFile(FICL_VM *pVM) /* ( c-addr u fam -- fileid ior ) */
static void ficlCreateFile(FICL_VM *pVM) /* ( c-addr u fam -- fileid ior ) */
static void Fnegate(FICL_VM *pVM)
static void Fdiv(FICL_VM *pVM)
static void Faddi(FICL_VM *pVM)
static void Fsubi(FICL_VM *pVM)
static void Fmuli(FICL_VM *pVM)
static void Fdivi(FICL_VM *pVM)
static void isubf(FICL_VM *pVM)
static void idivf(FICL_VM *pVM)
static void itof(FICL_VM *pVM)
static void Ftoi(FICL_VM *pVM)
void FconstantParen(FICL_VM *pVM)
static void Fconstant(FICL_VM *pVM)
static void FDot(FICL_VM *pVM)
static void EDot(FICL_VM *pVM)
static void displayFStack(FICL_VM *pVM)
static void Fdepth(FICL_VM *pVM)
static void Fdrop(FICL_VM *pVM)
static void FtwoDrop(FICL_VM *pVM)
static void Fdup(FICL_VM *pVM)
static void FtwoDup(FICL_VM *pVM)
static void Fover(FICL_VM *pVM)
static void FtwoOver(FICL_VM *pVM)
static void Fpick(FICL_VM *pVM)
static void FquestionDup(FICL_VM *pVM)
static void Froll(FICL_VM *pVM)
static void FminusRoll(FICL_VM *pVM)
static void Frot(FICL_VM *pVM)
static void Fminusrot(FICL_VM *pVM)
static void Fswap(FICL_VM *pVM)
static void Fadd(FICL_VM *pVM)
static void FtwoSwap(FICL_VM *pVM)
static void Ffetch(FICL_VM *pVM)
static void Fstore(FICL_VM *pVM)
static void FplusStore(FICL_VM *pVM)
static void fliteralParen(FICL_VM *pVM)
static void fliteralIm(FICL_VM *pVM)
static void FzeroEquals(FICL_VM *pVM)
static void FzeroLess(FICL_VM *pVM)
static void FzeroGreater(FICL_VM *pVM)
static void FisEqual(FICL_VM *pVM)
static void FisLess(FICL_VM *pVM)
static void Fsub(FICL_VM *pVM)
static void FisGreater(FICL_VM *pVM)
static void FFrom(FICL_VM *pVM)
static void ToF(FICL_VM *pVM)
int ficlParseFloatNumber( FICL_VM *pVM, STRINGINFO si )
static void Fmul(FICL_VM *pVM)
ficl_fb_putimage(FICL_VM *pVM)
ficl_fb_setpixel(FICL_VM *pVM)
ficl_fb_line(FICL_VM *pVM)
ficl_fb_bezier(FICL_VM *pVM)
ficl_fb_drawrect(FICL_VM *pVM)
ficl_term_drawrect(FICL_VM *pVM)
ficl_term_putimage(FICL_VM *pVM)
void ficlTextOut(FICL_VM *pVM, char *msg, int fNewline)
ficlSetenvq(FICL_VM *pVM)
ficlGetenv(FICL_VM *pVM)
ficlUnsetenv(FICL_VM *pVM)
ficlCopyin(FICL_VM *pVM)
ficlCopyout(FICL_VM *pVM)
ficlFindfile(FICL_VM *pVM)
ficlIsvirtualizedQ(FICL_VM *pVM)
ficlCcall(FICL_VM *pVM)
ficlUuidFromString(FICL_VM *pVM)
ficlUuidToString(FICL_VM *pVM)
int ficlExecFD(FICL_VM *pVM, int fd)
static void displayCellNoPad(FICL_VM *pVM)
static void isdirQuestion(FICL_VM *pVM)
static void pfopen(FICL_VM *pVM)
static void pfclose(FICL_VM *pVM)
static void pfread(FICL_VM *pVM)
static void pfreaddir(FICL_VM *pVM)
static void pfload(FICL_VM *pVM)
ficlSetenv(FICL_VM *pVM)
static void pfwrite(FICL_VM *pVM)
static void pfseek(FICL_VM *pVM)
static void key(FICL_VM *pVM)
static void keyQuestion(FICL_VM *pVM)
static void pseconds(FICL_VM *pVM)
static void ms(FICL_VM *pVM)
static void fkey(FICL_VM *pVM)
static void freeHeap(FICL_VM *pVM)
static void ficlDictThreshold(FICL_VM *pVM)
static void ficlDictIncrease(FICL_VM *pVM)
void ficlTextOut(FICL_VM *pVM, char *msg, int fNewline)
static void tempBase(FICL_VM *pVM, int base)
static void fTempBase(FICL_VM *pVM)
static void prefixHex(FICL_VM *pVM)
static void prefixTen(FICL_VM *pVM)
int ficlParsePrefix(FICL_VM *pVM, STRINGINFO si)
void ficlTextOut(FICL_VM *pVM, char *msg, int fNewline)
static void getOrder(FICL_VM *pVM)
static void searchWordlist(FICL_VM *pVM)
static void setCurrent(FICL_VM *pVM)
static void setOrder(FICL_VM *pVM)
static void ficlWordlist(FICL_VM *pVM)
static void searchPop(FICL_VM *pVM)
static void searchPush(FICL_VM *pVM)
static void widGetName(FICL_VM *pVM)
static void widSetName(FICL_VM *pVM)
static void setParentWid(FICL_VM *pVM)
static void definitions(FICL_VM *pVM)
static void forthWordlist(FICL_VM *pVM)
static void getCurrent(FICL_VM *pVM)
void vmCheckStack(FICL_VM *pVM, int popCells, int pushCells)
void vmCheckFStack(FICL_VM *pVM, int popCells, int pushCells)
static void ficlSystem(FICL_VM *pVM)
static void ficlLoad(FICL_VM *pVM)
static void spewHash(FICL_VM *pVM)
static void ficlBreak(FICL_VM *pVM)
static void ficlClock(FICL_VM *pVM)
static void clocksPerSec(FICL_VM *pVM)
static void execxt(FICL_VM *pVM)
FICL_VM *pVM;
static void ficlGetCWD(FICL_VM *pVM)
static void ficlChDir(FICL_VM *pVM)
static FICL_WORD *findEnclosingWord(FICL_VM *pVM, CELL *cp)
static void seeColon(FICL_VM *pVM, CELL *pc)
static void seeXT(FICL_VM *pVM)
static void see(FICL_VM *pVM)
void ficlDebugXT(FICL_VM *pVM)
void stepIn(FICL_VM *pVM)
void stepOver(FICL_VM *pVM)
void stepBreak(FICL_VM *pVM)
static void bye(FICL_VM *pVM)
static void displayPStack(FICL_VM *pVM)
static void displayRStack(FICL_VM *pVM)
static void forgetWid(FICL_VM *pVM)
static void forget(FICL_VM *pVM)
static void listWords(FICL_VM *pVM)
static void listEnv(FICL_VM *pVM)
static void vmSetBreak(FICL_VM *pVM, FICL_BREAKPOINT *pBP)
static void envConstant(FICL_VM *pVM)
static void env2Constant(FICL_VM *pVM)
static void debugPrompt(FICL_VM *pVM)
void vmDelete (FICL_VM *pVM)
void vmExecute(FICL_VM *pVM, FICL_WORD *pWord)
void vmInnerLoop(FICL_VM *pVM)
void vmInnerLoop(FICL_VM *pVM)
FICL_DICT *vmGetDict(FICL_VM *pVM)
char *vmGetString(FICL_VM *pVM, FICL_STRING *spDest, char delimiter)
STRINGINFO vmGetWord(FICL_VM *pVM)
STRINGINFO vmGetWord0(FICL_VM *pVM)
int vmGetWordToPad(FICL_VM *pVM)
STRINGINFO vmParseString(FICL_VM *pVM, char delim)
STRINGINFO vmParseStringEx(FICL_VM *pVM, char delim, char fSkipLeading)
CELL vmPop(FICL_VM *pVM)
void vmPush(FICL_VM *pVM, CELL c)
void vmPopIP(FICL_VM *pVM)
void vmPushIP(FICL_VM *pVM, IPTYPE newIP)
void vmPushTib(FICL_VM *pVM, char *text, FICL_INT nChars, TIB *pSaveTib)
void vmPopTib(FICL_VM *pVM, TIB *pTib)
void vmQuit(FICL_VM *pVM)
void vmReset(FICL_VM *pVM)
void vmSetTextOut(FICL_VM *pVM, OUTFUNC textOut)
void vmTextOut(FICL_VM *pVM, char *text, int fNewline)
void vmThrow(FICL_VM *pVM, int except)
void vmThrowErr(FICL_VM *pVM, char *fmt, ...)
void vmBranchRelative(FICL_VM *pVM, int offset)
FICL_VM *vmCreate(FICL_VM *pVM, unsigned nPStack, unsigned nRStack)
pVM = (FICL_VM *)ficlMalloc(sizeof (FICL_VM));
memset(pVM, 0, sizeof (FICL_VM));
static void emit(FICL_VM *pVM)
static void matchControlTag(FICL_VM *pVM, char *tag)
static void cr(FICL_VM *pVM)
static void commentLine(FICL_VM *pVM)
static void commentHang(FICL_VM *pVM)
static void fetch(FICL_VM *pVM)
static void twoFetch(FICL_VM *pVM)
static void store(FICL_VM *pVM)
static void twoStore(FICL_VM *pVM)
static void plusStore(FICL_VM *pVM)
static void quadFetch(FICL_VM *pVM)
static void quadStore(FICL_VM *pVM)
static void wFetch(FICL_VM *pVM)
static void wStore(FICL_VM *pVM)
static void cFetch(FICL_VM *pVM)
static void cStore(FICL_VM *pVM)
static void branchParen(FICL_VM *pVM)
static void branch0(FICL_VM *pVM)
static void resolveBackBranch(FICL_DICT *dp, FICL_VM *pVM, char *tag)
static void ifCoIm(FICL_VM *pVM)
static void elseCoIm(FICL_VM *pVM)
static void endifCoIm(FICL_VM *pVM)
static void caseCoIm(FICL_VM *pVM)
static void endcaseCoIm(FICL_VM *pVM)
static void ofParen(FICL_VM *pVM)
static void ofCoIm(FICL_VM *pVM)
static void resolveForwardBranch(FICL_DICT *dp, FICL_VM *pVM, char *tag)
static void endofCoIm(FICL_VM *pVM)
static void fallthroughCoIm(FICL_VM *pVM)
static void hash(FICL_VM *pVM)
static void interpret(FICL_VM *pVM)
static int ficlParseWord(FICL_VM *pVM, STRINGINFO si)
static void resolveAbsBranch(FICL_DICT *dp, FICL_VM *pVM, char *tag)
static void lookup(FICL_VM *pVM)
void parseStepParen(FICL_VM *pVM)
static void addParseStep(FICL_VM *pVM)
static void literalParen(FICL_VM *pVM)
static void twoLitParen(FICL_VM *pVM)
static void literalIm(FICL_VM *pVM)
static void twoLiteralIm(FICL_VM *pVM)
static void zeroEquals(FICL_VM *pVM)
static void zeroLess(FICL_VM *pVM)
static void zeroGreater(FICL_VM *pVM)
static void isEqual(FICL_VM *pVM)
static void isLess(FICL_VM *pVM)
static void uIsLess(FICL_VM *pVM)
static void isGreater(FICL_VM *pVM)
static void uIsGreater(FICL_VM *pVM)
static void bitwiseAnd(FICL_VM *pVM)
static void bitwiseOr(FICL_VM *pVM)
static void bitwiseXor(FICL_VM *pVM)
static void bitwiseNot(FICL_VM *pVM)
static void doCoIm(FICL_VM *pVM)
static void doParen(FICL_VM *pVM)
int ficlParseNumber(FICL_VM *pVM, STRINGINFO si)
static void qDoCoIm(FICL_VM *pVM)
static void qDoParen(FICL_VM *pVM)
static void leaveCo(FICL_VM *pVM)
static void unloopCo(FICL_VM *pVM)
static void loopCoIm(FICL_VM *pVM)
static void plusLoopCoIm(FICL_VM *pVM)
static void loopParen(FICL_VM *pVM)
static void plusLoopParen(FICL_VM *pVM)
static void loopICo(FICL_VM *pVM)
static void loopJCo(FICL_VM *pVM)
static void loopKCo(FICL_VM *pVM)
static void toRStack(FICL_VM *pVM)
static void fromRStack(FICL_VM *pVM)
static void fetchRStack(FICL_VM *pVM)
static void twoToR(FICL_VM *pVM)
static void twoRFrom(FICL_VM *pVM)
static void twoRFetch(FICL_VM *pVM)
static void variableParen(FICL_VM *pVM)
static void variable(FICL_VM *pVM)
static void twoVariable(FICL_VM *pVM)
static void base(FICL_VM *pVM)
static void decimal(FICL_VM *pVM)
static void hex(FICL_VM *pVM)
static void allot(FICL_VM *pVM)
static void here(FICL_VM *pVM)
static void comma(FICL_VM *pVM)
static void cComma(FICL_VM *pVM)
static void cells(FICL_VM *pVM)
static void cellPlus(FICL_VM *pVM)
void ficlTick(FICL_VM *pVM)
static void bracketTickCoIm(FICL_VM *pVM)
static void postponeCoIm(FICL_VM *pVM)
static void execute(FICL_VM *pVM)
static void immediate(FICL_VM *pVM)
static void compileOnly(FICL_VM *pVM)
static void setObjectFlag(FICL_VM *pVM)
static void isObject(FICL_VM *pVM)
static void cstringLit(FICL_VM *pVM)
static void cstringQuoteIm(FICL_VM *pVM)
static void stringLit(FICL_VM *pVM)
static void dotQuoteCoIm(FICL_VM *pVM)
static void dotParen(FICL_VM *pVM)
static void sLiteralCoIm(FICL_VM *pVM)
static void state(FICL_VM *pVM)
static void createParen(FICL_VM *pVM)
static void create(FICL_VM *pVM)
static void add(FICL_VM *pVM)
static void doDoes(FICL_VM *pVM)
static void doesParen(FICL_VM *pVM)
static void doesCoIm(FICL_VM *pVM)
static void toBody(FICL_VM *pVM)
static void fromBody(FICL_VM *pVM)
static void toName(FICL_VM *pVM)
static void getLastWord(FICL_VM *pVM)
static void lbracketCoIm(FICL_VM *pVM)
static void sub(FICL_VM *pVM)
static void rbracket(FICL_VM *pVM)
static void lessNumberSign(FICL_VM *pVM)
static void numberSign(FICL_VM *pVM)
static void numberSignGreater(FICL_VM *pVM)
static void numberSignS(FICL_VM *pVM)
static void hold(FICL_VM *pVM)
static void mul(FICL_VM *pVM)
static void sign(FICL_VM *pVM)
static void toNumber(FICL_VM *pVM)
static void quit(FICL_VM *pVM)
static void ficlAbort(FICL_VM *pVM)
static void negate(FICL_VM *pVM)
static void accept(FICL_VM *pVM)
static void align(FICL_VM *pVM)
static void aligned(FICL_VM *pVM)
static void beginCoIm(FICL_VM *pVM)
static void untilCoIm(FICL_VM *pVM)
static void whileCoIm(FICL_VM *pVM)
static void ficlDiv(FICL_VM *pVM)
static void repeatCoIm(FICL_VM *pVM)
static void againCoIm(FICL_VM *pVM)
static void ficlChar(FICL_VM *pVM)
static void charCoIm(FICL_VM *pVM)
static void charPlus(FICL_VM *pVM)
static void ficlChars(FICL_VM *pVM)
static void count(FICL_VM *pVM)
static void environmentQ(FICL_VM *pVM)
static void evaluate(FICL_VM *pVM)
static void slashMod(FICL_VM *pVM)
static void stringQuoteIm(FICL_VM *pVM)
static void type(FICL_VM *pVM)
static void ficlWord(FICL_VM *pVM)
static void parseNoCopy(FICL_VM *pVM)
static void parse(FICL_VM *pVM)
static void fill(FICL_VM *pVM)
static void do_find(FICL_VM *pVM, STRINGINFO si, void *returnForFailure)
static void onePlus(FICL_VM *pVM)
static void cFind(FICL_VM *pVM)
static void sFind(FICL_VM *pVM)
static void fmSlashMod(FICL_VM *pVM)
static void smSlashRem(FICL_VM *pVM)
static void ficlMod(FICL_VM *pVM)
static void oneMinus(FICL_VM *pVM)
static void umSlashMod(FICL_VM *pVM)
static void lshift(FICL_VM *pVM)
static void rshift(FICL_VM *pVM)
static void mStar(FICL_VM *pVM)
static void umStar(FICL_VM *pVM)
static void twoMul(FICL_VM *pVM)
static void ficlMax(FICL_VM *pVM)
static void ficlMin(FICL_VM *pVM)
static void move(FICL_VM *pVM)
static void recurseCoIm(FICL_VM *pVM)
static void sToD(FICL_VM *pVM)
static void twoDiv(FICL_VM *pVM)
static void source(FICL_VM *pVM)
static void ficlVersion(FICL_VM *pVM)
static void toIn(FICL_VM *pVM)
static void colonNoName(FICL_VM *pVM)
static void userParen(FICL_VM *pVM)
static void userVariable(FICL_VM *pVM)
static void toValue(FICL_VM *pVM)
static void mulDiv(FICL_VM *pVM)
static void linkParen(FICL_VM *pVM)
static void unlinkParen(FICL_VM *pVM)
static void getLocalParen(FICL_VM *pVM)
static void toLocalParen(FICL_VM *pVM)
static void getLocal0(FICL_VM *pVM)
static void toLocal0(FICL_VM *pVM)
static void getLocal1(FICL_VM *pVM)
static void toLocal1(FICL_VM *pVM)
static void doLocalIm(FICL_VM *pVM)
static void localParen(FICL_VM *pVM)
static void mulDivRem(FICL_VM *pVM)
static void get2LocalParen(FICL_VM *pVM)
static void do2LocalIm(FICL_VM *pVM)
static void to2LocalParen(FICL_VM *pVM)
static void twoLocalParen(FICL_VM *pVM)
static void compareInternal(FICL_VM *pVM, int caseInsensitive)
static void compareString(FICL_VM *pVM)
static void compareStringInsensitive(FICL_VM *pVM)
static void pad(FICL_VM *pVM)
static void sourceid(FICL_VM *pVM)
static void refill(FICL_VM *pVM)
static void ficlCatch(FICL_VM *pVM)
FICL_VM VM;
memcpy((void*)&VM, (void*)pVM, sizeof(FICL_VM));
static void colon(FICL_VM *pVM)
memcpy((void*)pVM, (void*)&VM, sizeof(FICL_VM));
static void ficlThrow(FICL_VM *pVM)
static void ansAllocate(FICL_VM *pVM)
static void ansFree(FICL_VM *pVM)
static void ansResize(FICL_VM *pVM)
static void ficlExitInner(FICL_VM *pVM)
static void dnegate(FICL_VM *pVM)
static void funcname(FICL_VM *pVM)
static void ficlRandom(FICL_VM *pVM)
static void ficlSeedRandom(FICL_VM *pVM)
static void colonParen(FICL_VM *pVM)
static void semiParen(FICL_VM *pVM)
static void semicolonCoIm(FICL_VM *pVM)
static void exitParen(FICL_VM *pVM)
static void exitCoIm(FICL_VM *pVM)
static void colonParen(FICL_VM *pVM);
void constantParen(FICL_VM *pVM)
static void literalIm(FICL_VM *pVM);
void twoConstParen(FICL_VM *pVM)
static int ficlParseWord(FICL_VM *pVM, STRINGINFO si);
static void constant(FICL_VM *pVM)
static void twoConstant(FICL_VM *pVM)
static void displayCell(FICL_VM *pVM)
static void uDot(FICL_VM *pVM)
static void hexDot(FICL_VM *pVM)
static void ficlStrlen(FICL_VM *ficlVM)
static void ficlSprintf(FICL_VM *pVM) /* */
static void doLocalIm(FICL_VM *pVM);
static void do2LocalIm(FICL_VM *pVM);
static void depth(FICL_VM *pVM)
static void drop(FICL_VM *pVM)
static void twoDrop(FICL_VM *pVM)
static void dup(FICL_VM *pVM)
static void markBranch(FICL_DICT *dp, FICL_VM *pVM, char *tag)
static void twoDup(FICL_VM *pVM)
static void over(FICL_VM *pVM)
static void twoOver(FICL_VM *pVM)
static void pick(FICL_VM *pVM)
static void questionDup(FICL_VM *pVM)
static void roll(FICL_VM *pVM)
static void markControlTag(FICL_VM *pVM, char *tag)
static void minusRoll(FICL_VM *pVM)
static void rot(FICL_VM *pVM)
static void swap(FICL_VM *pVM)
static void twoSwap(FICL_VM *pVM)
ficlOutb(FICL_VM *pVM)
ficlInb(FICL_VM *pVM)