Lines Matching refs:pVM
66 ficlSetenv(FICL_VM *pVM) in ficlSetenv() argument
75 vmCheckStack(pVM, 4, 0); in ficlSetenv()
77 names = stackPopINT(pVM->pStack); in ficlSetenv()
78 namep = (char*) stackPopPtr(pVM->pStack); in ficlSetenv()
79 values = stackPopINT(pVM->pStack); in ficlSetenv()
80 valuep = (char*) stackPopPtr(pVM->pStack); in ficlSetenv()
85 vmThrowErr(pVM, "Error: out of memory"); in ficlSetenv()
90 vmThrowErr(pVM, "Error: out of memory"); in ficlSetenv()
103 ficlSetenvq(FICL_VM *pVM) in ficlSetenvq() argument
112 vmCheckStack(pVM, 5, 0); in ficlSetenvq()
114 overwrite = stackPopINT(pVM->pStack); in ficlSetenvq()
115 names = stackPopINT(pVM->pStack); in ficlSetenvq()
116 namep = (char*) stackPopPtr(pVM->pStack); in ficlSetenvq()
117 values = stackPopINT(pVM->pStack); in ficlSetenvq()
118 valuep = (char*) stackPopPtr(pVM->pStack); in ficlSetenvq()
123 vmThrowErr(pVM, "Error: out of memory"); in ficlSetenvq()
128 vmThrowErr(pVM, "Error: out of memory"); in ficlSetenvq()
141 ficlGetenv(FICL_VM *pVM) in ficlGetenv() argument
150 vmCheckStack(pVM, 2, 2); in ficlGetenv()
152 names = stackPopINT(pVM->pStack); in ficlGetenv()
153 namep = (char*) stackPopPtr(pVM->pStack); in ficlGetenv()
158 vmThrowErr(pVM, "Error: out of memory"); in ficlGetenv()
166 stackPushPtr(pVM->pStack, value); in ficlGetenv()
167 stackPushINT(pVM->pStack, strlen(value)); in ficlGetenv()
170 stackPushINT(pVM->pStack, -1); in ficlGetenv()
176 ficlUnsetenv(FICL_VM *pVM) in ficlUnsetenv() argument
185 vmCheckStack(pVM, 2, 0); in ficlUnsetenv()
187 names = stackPopINT(pVM->pStack); in ficlUnsetenv()
188 namep = (char*) stackPopPtr(pVM->pStack); in ficlUnsetenv()
193 vmThrowErr(pVM, "Error: out of memory"); in ficlUnsetenv()
205 ficlCopyin(FICL_VM *pVM) in ficlCopyin() argument
212 vmCheckStack(pVM, 3, 0); in ficlCopyin()
215 len = stackPopINT(pVM->pStack); in ficlCopyin()
216 dest = stackPopINT(pVM->pStack); in ficlCopyin()
217 src = stackPopPtr(pVM->pStack); in ficlCopyin()
227 ficlCopyout(FICL_VM *pVM) in ficlCopyout() argument
234 vmCheckStack(pVM, 3, 0); in ficlCopyout()
237 len = stackPopINT(pVM->pStack); in ficlCopyout()
238 dest = stackPopPtr(pVM->pStack); in ficlCopyout()
239 src = stackPopINT(pVM->pStack); in ficlCopyout()
249 ficlFindfile(FICL_VM *pVM) in ficlFindfile() argument
259 vmCheckStack(pVM, 4, 1); in ficlFindfile()
262 types = stackPopINT(pVM->pStack); in ficlFindfile()
263 typep = (char*) stackPopPtr(pVM->pStack); in ficlFindfile()
264 names = stackPopINT(pVM->pStack); in ficlFindfile()
265 namep = (char*) stackPopPtr(pVM->pStack); in ficlFindfile()
269 vmThrowErr(pVM, "Error: out of memory"); in ficlFindfile()
274 vmThrowErr(pVM, "Error: out of memory"); in ficlFindfile()
282 stackPushPtr(pVM->pStack, fp); in ficlFindfile()
291 ficlPnpdevices(FICL_VM *pVM) in ficlPnpdevices() argument
295 vmCheckStack(pVM, 0, 1); in ficlPnpdevices()
303 stackPushPtr(pVM->pStack, &pnp_devices); in ficlPnpdevices()
309 ficlPnphandlers(FICL_VM *pVM) in ficlPnphandlers() argument
312 vmCheckStack(pVM, 0, 1); in ficlPnphandlers()
315 stackPushPtr(pVM->pStack, pnphandlers); in ficlPnphandlers()
325 ficlCcall(FICL_VM *pVM) in ficlCcall() argument
332 vmCheckStack(pVM, 2, 0); in ficlCcall()
335 func = stackPopPtr(pVM->pStack); in ficlCcall()
336 nparam = stackPopINT(pVM->pStack); in ficlCcall()
339 vmCheckStack(pVM, nparam, 1); in ficlCcall()
343 p[i] = stackPopINT(pVM->pStack); in ficlCcall()
348 stackPushINT(pVM->pStack, result); in ficlCcall()
360 int ficlExecFD(FICL_VM *pVM, int fd) in ficlExecFD() argument
367 id = pVM->sourceID; in ficlExecFD()
368 pVM->sourceID.i = fd; in ficlExecFD()
383 rval = ficlExecC(pVM, cp, i); in ficlExecFD()
386 pVM->sourceID = id; in ficlExecFD()
394 pVM->sourceID.i = -1; in ficlExecFD()
395 ficlExec(pVM, ""); in ficlExecFD()
397 pVM->sourceID = id; in ficlExecFD()
401 static void displayCellNoPad(FICL_VM *pVM) in displayCellNoPad() argument
405 vmCheckStack(pVM, 1, 0); in displayCellNoPad()
407 c = stackPop(pVM->pStack); in displayCellNoPad()
408 ltoa((c).i, pVM->pad, pVM->base); in displayCellNoPad()
409 vmTextOut(pVM, pVM->pad, 0); in displayCellNoPad()
417 static void isdirQuestion(FICL_VM *pVM) in isdirQuestion() argument
424 vmCheckStack(pVM, 1, 1); in isdirQuestion()
427 fd = stackPopINT(pVM->pStack); in isdirQuestion()
438 stackPushINT(pVM->pStack, flag); in isdirQuestion()
445 static void pfopen(FICL_VM *pVM) in pfopen() argument
451 vmCheckStack(pVM, 3, 1); in pfopen()
454 mode = stackPopINT(pVM->pStack); /* get mode */ in pfopen()
455 count = stackPopINT(pVM->pStack); /* get count */ in pfopen()
456 ptr = stackPopPtr(pVM->pStack); /* get ptr */ in pfopen()
459 stackPushINT(pVM->pStack, -1); in pfopen()
471 stackPushINT(pVM->pStack, fd); in pfopen()
479 static void pfclose(FICL_VM *pVM) in pfclose() argument
484 vmCheckStack(pVM, 1, 0); in pfclose()
486 fd = stackPopINT(pVM->pStack); /* get fd */ in pfclose()
496 static void pfread(FICL_VM *pVM) in pfread() argument
502 vmCheckStack(pVM, 3, 1); in pfread()
504 len = stackPopINT(pVM->pStack); /* get number of bytes to read */ in pfread()
505 buf = stackPopPtr(pVM->pStack); /* get buffer */ in pfread()
506 fd = stackPopINT(pVM->pStack); /* get fd */ in pfread()
508 stackPushINT(pVM->pStack, read(fd, buf, len)); in pfread()
510 stackPushINT(pVM->pStack, -1); in pfread()
518 static void pfreaddir(FICL_VM *pVM) in pfreaddir() argument
532 vmCheckStack(pVM, 1, 3); in pfreaddir()
535 fd = stackPopINT(pVM->pStack); in pfreaddir()
579 stackPushPtr(pVM->pStack, d->d_name); in pfreaddir()
580 stackPushINT(pVM->pStack, strlen(d->d_name)); in pfreaddir()
581 stackPushINT(pVM->pStack, FICL_TRUE); in pfreaddir()
583 stackPushINT(pVM->pStack, FICL_FALSE); in pfreaddir()
591 static void pfload(FICL_VM *pVM) in pfload() argument
596 vmCheckStack(pVM, 1, 0); in pfload()
598 fd = stackPopINT(pVM->pStack); /* get fd */ in pfload()
600 ficlExecFD(pVM, fd); in pfload()
608 static void pfwrite(FICL_VM *pVM) in pfwrite() argument
614 vmCheckStack(pVM, 3, 1); in pfwrite()
616 len = stackPopINT(pVM->pStack); /* get number of bytes to read */ in pfwrite()
617 buf = stackPopPtr(pVM->pStack); /* get buffer */ in pfwrite()
618 fd = stackPopINT(pVM->pStack); /* get fd */ in pfwrite()
620 stackPushINT(pVM->pStack, write(fd, buf, len)); in pfwrite()
622 stackPushINT(pVM->pStack, -1); in pfwrite()
630 static void pfseek(FICL_VM *pVM) in pfseek() argument
635 vmCheckStack(pVM, 3, 1); in pfseek()
637 whence = stackPopINT(pVM->pStack); in pfseek()
638 pos = stackPopINT(pVM->pStack); in pfseek()
639 fd = stackPopINT(pVM->pStack); in pfseek()
640 stackPushINT(pVM->pStack, lseek(fd, pos, whence)); in pfseek()
648 static void key(FICL_VM *pVM) in key() argument
651 vmCheckStack(pVM, 0, 1); in key()
653 stackPushINT(pVM->pStack, getchar()); in key()
661 static void keyQuestion(FICL_VM *pVM) in keyQuestion() argument
664 vmCheckStack(pVM, 0, 1); in keyQuestion()
668 stackPushINT(pVM->pStack, FICL_TRUE); in keyQuestion()
671 stackPushINT(pVM->pStack, ischar()? FICL_TRUE : FICL_FALSE); in keyQuestion()
685 static void pseconds(FICL_VM *pVM) in pseconds() argument
688 vmCheckStack(pVM,0,1); in pseconds()
690 stackPushUNS(pVM->pStack, (FICL_UNS) time(NULL)); in pseconds()
699 static void ms(FICL_VM *pVM) in ms() argument
702 vmCheckStack(pVM,1,0); in ms()
705 usleep(stackPopUNS(pVM->pStack)*1000); in ms()
707 delay(stackPopUNS(pVM->pStack)*1000); in ms()
716 static void fkey(FICL_VM *pVM) in fkey() argument
722 vmCheckStack(pVM, 1, 1); in fkey()
724 fd = stackPopINT(pVM->pStack); in fkey()
726 stackPushINT(pVM->pStack, i > 0 ? ch : -1); in fkey()
734 static void freeHeap(FICL_VM *pVM) in freeHeap() argument
736 stackPushINT(pVM->pStack, dictCellsAvail(ficlGetDict(pVM->pSys))); in freeHeap()
742 static void ficlDictThreshold(FICL_VM *pVM) in ficlDictThreshold() argument
744 stackPushPtr(pVM->pStack, &dictThreshold); in ficlDictThreshold()
747 static void ficlDictIncrease(FICL_VM *pVM) in ficlDictIncrease() argument
749 stackPushPtr(pVM->pStack, &dictIncrease); in ficlDictIncrease()