void init_port() { DO_INIT(); DI_INIT(); CK_INIT(); CS_INIT(); }
// // BinaryTokenPPACS::init // void BinaryTokenPPACS::init() { BinaryTokenACS::init(arg_counts); #define DO_INIT(NAME,ARGC) \ arg_counts[BCODE_##NAME] = ARGC // Operators DO_INIT(ADD_AUTO, 1); DO_INIT(ADD_PTR, 1); DO_INIT(ADD_STATIC, 1); DO_INIT(AND_AUTO, 1); DO_INIT(AND_PTR, 1); DO_INIT(AND_STATIC, 1); DO_INIT(DEC_AUTO, 1); DO_INIT(DEC_PTR, 1); DO_INIT(DEC_STATIC, 1); DO_INIT(DIV_STK_X, 0); DO_INIT(DIV_AUTO, 1); DO_INIT(DIV_PTR, 1); DO_INIT(DIV_STATIC, 1); DO_INIT(INC_AUTO, 1); DO_INIT(INC_PTR, 1); DO_INIT(INC_STATIC, 1); DO_INIT(IOR_AUTO, 1); DO_INIT(IOR_PTR, 1); DO_INIT(IOR_STATIC, 1); DO_INIT(LSH_AUTO, 1); DO_INIT(LSH_PTR, 1); DO_INIT(LSH_STATIC, 1); DO_INIT(MOD_AUTO, 1); DO_INIT(MOD_PTR, 1); DO_INIT(MOD_STATIC, 1); DO_INIT(MUL_STK_X, 0); DO_INIT(MUL_AUTO, 1); DO_INIT(MUL_PTR, 1); DO_INIT(MUL_STATIC, 1); DO_INIT(RSH_AUTO, 1); DO_INIT(RSH_PTR, 1); DO_INIT(RSH_STATIC, 1); DO_INIT(SUB_AUTO, 1); DO_INIT(SUB_PTR, 1); DO_INIT(SUB_STATIC, 1); DO_INIT(XOR_AUTO, 1); DO_INIT(XOR_PTR, 1); DO_INIT(XOR_STATIC, 1); // Jumps DO_INIT(JMP, 0); // Variable Address DO_INIT(GET_AUTPTR_IMM, 1); DO_INIT(ADD_AUTPTR, 0); DO_INIT(SUB_AUTPTR, 0); // Variable Get DO_INIT(GET_STATIC, 1); DO_INIT(GET_AUTO, 1); DO_INIT(GET_PTR, 1); // Variable Set DO_INIT(SET_STATIC, 1); DO_INIT(SET_AUTO, 1); DO_INIT(SET_PTR, 1); // ACS Extensions DO_INIT(MID_GET, 0); DO_INIT(MID_SET, 0); DO_INIT(THING_GET_MID, 0); DO_INIT(THING_SET_MID, 0); // ACS Printing DO_INIT(PRINT_END_ERROR, 0); DO_INIT(PRINT_END_LOG, 0); DO_INIT(PRINT_NUM_DEC_X, 0); #undef DO_INIT }