; ; interp.sh ; ; Main entry point for the interpreter ; ; © 1995 Straylight ; ;----- Overview ------------------------------------------------------------- ; ; Functions provided: ; ; interp_start ; interp_exec ; interp_notImpl ; interp_next [ :LNOT::DEF:interp__dfn GBLL interp__dfn ; --- interp_start --- ; ; On entry: R12 == pointer to our anchor block ; ; On exit: R7-R9 == next token ; ; Use: Prepares for execution, and even does some too. IMPORT interp_start ; --- interp_exec --- ; ; On entry: R7-R9 == token to deal with ; R11 == offset in file to execute from ; R12 == pointer to the anchor block ; ; On exit: R0 == type code (eg. 0 == we are still executing ; R7-R9 == next token to deal with ; ; Use: Executes some of the file. IMPORT interp_exec ; --- interp_notImpl --- IMPORT interp_notImpl ; --- interp_next --- ; ; On entry: R7-R9 == token to deal with ; R11 == offset in file to execute from ; R12 == pointer to the anchor block ; ; On exit: R0 == type code (eg. 0 == we are still executing ; R7-R9 == next token to deal with ; ; Use: Checks the next instruction and acts approriately. IMPORT interp_next ] ;----- That's all, folks ---------------------------------------------------- END