📄 g1.c
字号:
# define PREFIX 99
# define max_col 12
# include "ccx.h"
# include <ctype.h>
/* *********************************************************************** */
/* Original Part of grammar control data */
/* *********************************************************************** */
int opcodeTable[] = {
/* 0 1 2 3 4 5 6 7 8 9 A B C D E F */
/* -----------------------------------------------------------------------*/
/*00*/ 6, 6, 6, 6, 1, 4, 0, 0, 6, 6, 6, 6, 1, 4, 0, -1,
/*10*/ 6, 6, 6, 6, 1, 4, 0, 0, 6, 6, 6, 6, 1, 4, 0, 0,
/*20*/ 6, 6, 6, 6, 1, 4, 99, 0, 6, 6, 6, 6, 1, 4, 99, 0,
/*30*/ 6, 6, 6, 6, 1, 4, 99, 0, 6, 6, 6, 6, 1, 4, 99, 0,
/*40*/ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
/*50*/ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
/*60*/ 0, 0, 6, 6, 99, 99, 99, 99, 4, 8, 1, 7, 0, 0, 0, 0,
/*70*/ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
/*80*/ 10, 11, -1, 10, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 9,
/*90*/ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 15, 0, 0, 0, 0,
/*A0*/ 44, 44, 44, 44, 0, 0, 0, 0, 1, 4, 0, 0, 0, 0, 0, 0,
/*B0*/ 1, 1, 1, 1, 1, 1, 1, 1, 4, 4, 4, 4, 4, 4, 4, 4,
/*C0*/ 10, 10, 2, 0, 6, 6, 10, 11, 3, 0, 2, 0, 0, 1, 0, 0,
/*D0*/ 9, 9, 9, 9, 1, 1, -1, 0, 12, 12, 12, 12, 12, 12, 12, 12,
/*E0*/ 1, 1, 1, 1, 1, 1, 1, 1, 4, 4, 5, 1, 0, 0, 0, 0,
/*F0*/ 0, 0, 16, 16, 0, 0, 14, 14, 0, 0, 0, 0, 0, 0, 9, 13};
/* -----------------------------------------------------------------------*/
int opcode2Table[] = {
/* 0 1 2 3 4 5 6 7 8 9 A B C D E F */
/* -----------------------------------------------------------------------*/
/*00*/ 4, 4, 2, 2, -1, -1, 0, -1, 0, 0, -1, 0, -1, -1, -1, -1,
/*10*/ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
/*20*/ 2, 2, 2, 2, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
/*30*/ 0, 0, 0, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
/*40*/ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
/*50*/ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
/*60*/ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, -1, -1, 2, 2,
/*70*/ -1, 5, 5, 5, 2, 2, 2, 0, -1, -1, -1, -1, -1, -1, 2, 2,
/*80*/ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
/*90*/ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
/*A0*/ 0, 0, 0, 2, 3, 2, -1, -1, 0, 0, 0, 2, 3, 2, -1, 2,
/*B0*/ 2, 2, 2, 2, 2, 2, 2, 2, -1, -1, 5, 2, 2, 2, 2, 2,
/*C0*/ 2, 2, -1, -1, -1, -1, -1, 4, 0, 0, 0, 0, 0, 0, 0, 0,
/*D0*/ -1, 2, 2, 2, -1, 2, -1, -1, 2, 2, -1, 2, 2, 2, -1, 2,
/*E0*/ -1, 2, 2, -1, -1, 2, -1, -1, 2, 2, -1, 2, 2, 2, -1, 2,
/*F0*/ -1, 2, 2, 2, -1, 2, -1, -1, 2, 2, 2, -1, 2, 2, 2, -1};
/* -----------------------------------------------------------------------*/
int repeatgroupTable[] = {
/* 0 1 2 3 4 5 6 7 8 9 A B C D E F */
/* -----------------------------------------------------------------------*/
/*00*/ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
/*10*/ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
/*20*/ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
/*30*/ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
/*40*/ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
/*50*/ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
/*60*/ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 2, 2,
/*70*/ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
/*80*/ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
/*90*/ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
/*A0*/ 0, 0, 0, 0, 2, 2, 1, 1, 0, 0, 2, 2, 2, 2, 1, 1,
/*B0*/ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
/*C0*/ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
/*D0*/ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
/*E0*/ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
/*F0*/ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
/* -----------------------------------------------------------------------*/
int modTable[] = {
/* 0 1 2 3 4 5 6 7 8 9 A B C D E F */
/* -----------------------------------------------------------------------*/
/*00*/ 1, 1, 1, 1, 2, 3, 1, 1, 1, 1, 1, 1, 2, 3, 1, 1,
/*10*/ 1, 1, 1, 1, 2, 3, 1, 1, 1, 1, 1, 1, 2, 3, 1, 1,
/*20*/ 1, 1, 1, 1, 2, 3, 1, 1, 1, 1, 1, 1, 2, 3, 1, 1,
/*30*/ 1, 1, 1, 1, 2, 3, 1, 1, 1, 1, 1, 1, 2, 3, 1, 1,
/*40*/ 4, 4, 4, 4, 5, 4, 4, 4, 4, 4, 4, 4, 5, 4, 4, 4,
/*50*/ 4, 4, 4, 4, 5, 4, 4, 4, 4, 4, 4, 4, 5, 4, 4, 4,
/*60*/ 4, 4, 4, 4, 5, 4, 4, 4, 4, 4, 4, 4, 5, 4, 4, 4,
/*70*/ 4, 4, 4, 4, 5, 4, 4, 4, 4, 4, 4, 4, 5, 4, 4, 4,
/*80*/ 6, 6, 6, 6, 7, 6, 6, 6, 6, 6, 6, 6, 7, 6, 6, 6,
/*90*/ 6, 6, 6, 6, 7, 6, 6, 6, 6, 6, 6, 6, 7, 6, 6, 6,
/*A0*/ 6, 6, 6, 6, 7, 6, 6, 6, 6, 6, 6, 6, 7, 6, 6, 6,
/*B0*/ 6, 6, 6, 6, 7, 6, 6, 6, 6, 6, 6, 6, 7, 6, 6, 6,
/*C0*/ 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8,
/*D0*/ 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8,
/*E0*/ 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8,
/*F0*/ 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8};
/* -----------------------------------------------------------------------*/
int mod16Table[] = {
/* 0 1 2 3 4 5 6 7 8 9 A B C D E F */
/* -----------------------------------------------------------------------*/
/*00*/ 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 2, 1,
/*10*/ 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 2, 1,
/*20*/ 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 2, 1,
/*30*/ 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 2, 1,
/*40*/ 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
/*50*/ 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
/*60*/ 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
/*70*/ 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
/*80*/ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
/*90*/ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
/*A0*/ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
/*B0*/ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
/*C0*/ 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
/*D0*/ 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
/*E0*/ 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
/*F0*/ 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5};
/* -----------------------------------------------------------------------*/
int sibTable[] = {
/* 0 1 2 3 4 5 6 7 8 9 A B C D E F */
/* -----------------------------------------------------------------------*/
/*00*/ 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 2, 1, 2, 2,
/*10*/ 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 2, 1, 2, 2,
/*20*/ 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 2, 1, 2, 2,
/*30*/ 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 2, 1, 2, 2,
/*40*/ 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 2, 1, 2, 2,
/*50*/ 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 2, 1, 2, 2,
/*60*/ 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 2, 1, 2, 2,
/*70*/ 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 2, 1, 2, 2,
/*80*/ 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 2, 1, 2, 2,
/*90*/ 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 2, 1, 2, 2,
/*A0*/ 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 2, 1, 2, 2,
/*B0*/ 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 2, 1, 2, 2,
/*C0*/ 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 2, 1, 2, 2,
/*D0*/ 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 2, 1, 2, 2,
/*E0*/ 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 2, 1, 2, 2,
/*F0*/ 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 2, 1, 2, 2};
/* -----------------------------------------------------------------------*/
int regTable[] = {
/* 0 1 2 3 4 5 6 7 8 9 A B C D E F */
/* -----------------------------------------------------------------------*/
/*00*/ 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1,
/*10*/ 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3,
/*20*/ 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5,
/*30*/ 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7,
/*40*/ 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1,
/*50*/ 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3,
/*60*/ 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5,
/*70*/ 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7,
/*80*/ 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1,
/*90*/ 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3,
/*A0*/ 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5,
/*B0*/ 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7,
/*C0*/ 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1,
/*D0*/ 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3,
/*E0*/ 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5,
/*F0*/ 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7};
/* -----------------------------------------------------------------------*/
int rmTable[] = {
/* 0 1 2 3 4 5 6 7 8 9 A B C D E F */
/* -----------------------------------------------------------------------*/
/*00*/ 0, 1, 2, 3, 4, 5, 6, 7, 0, 1, 2, 3, 4, 5, 6, 7,
/*10*/ 0, 1, 2, 3, 4, 5, 6, 7, 0, 1, 2, 3, 4, 5, 6, 7,
/*20*/ 0, 1, 2, 3, 4, 5, 6, 7, 0, 1, 2, 3, 4, 5, 6, 7,
/*30*/ 0, 1, 2, 3, 4, 5, 6, 7, 0, 1, 2, 3, 4, 5, 6, 7,
/*40*/ 0, 1, 2, 3, 4, 5, 6, 7, 0, 1, 2, 3, 4, 5, 6, 7,
/*50*/ 0, 1, 2, 3, 4, 5, 6, 7, 0, 1, 2, 3, 4, 5, 6, 7,
/*60*/ 0, 1, 2, 3, 4, 5, 6, 7, 0, 1, 2, 3, 4, 5, 6, 7,
/*70*/ 0, 1, 2, 3, 4, 5, 6, 7, 0, 1, 2, 3, 4, 5, 6, 7,
/*80*/ 0, 1, 2, 3, 4, 5, 6, 7, 0, 1, 2, 3, 4, 5, 6, 7,
/*90*/ 0, 1, 2, 3, 4, 5, 6, 7, 0, 1, 2, 3, 4, 5, 6, 7,
/*A0*/ 0, 1, 2, 3, 4, 5, 6, 7, 0, 1, 2, 3, 4, 5, 6, 7,
/*B0*/ 0, 1, 2, 3, 4, 5, 6, 7, 0, 1, 2, 3, 4, 5, 6, 7,
/*C0*/ 0, 1, 2, 3, 4, 5, 6, 7, 0, 1, 2, 3, 4, 5, 6, 7,
/*D0*/ 0, 1, 2, 3, 4, 5, 6, 7, 0, 1, 2, 3, 4, 5, 6, 7,
/*E0*/ 0, 1, 2, 3, 4, 5, 6, 7, 0, 1, 2, 3, 4, 5, 6, 7,
/*F0*/ 0, 1, 2, 3, 4, 5, 6, 7, 0, 1, 2, 3, 4, 5, 6, 7};
/* -----------------------------------------------------------------------*/
/* *********************************************************************** */
/* hooks between disassembler and printing */
/* *********************************************************************** */
int a_loc=0;
int a_loc_save=0;
int i_col=0;
int i_col_save=0;
int i_psp=0;
int prefixStack[8];
int opclass;
int modclass;
int i_opclass;
int i_opcode;
int i_mod;
int i_sib;
int i_byte;
int i_word;
int i_dword;
int m_byte;
int m_dword;
int needspacing=0;
int byteaddress=0;
int imb=0;
int mbytes[64];
int NumberOfBytesProcessed=-1; // we need to keep track of bytes processed.
// I don't know why I need to start from -1.... but anyway
// this is needed to process
int addressOveride=0; // prefix 0x64
int operandOveride=0; // this is needed to process
// prefix 0x66: operand size overide
int label_start_pos; /* labe start position of case jump block */
int min_label;
int cur_position;
int labelClass;
int finished;
int lastAnchor=0;
int leaveFlag=0;
int delta=0;
extern int (*prxntf)(const char *,...); // for printing contol
/* *********************************************************************** */
/* Original Part of grammar generated sources */
/* *********************************************************************** */
//win32program = translationunit
//translationunit = {instruction}*
static STATUS hid0(PARAM c){
return p_test0(c==0);
}
static STATUS hid1(PARAM c){
PARSER prefixes;
return p_many0n(TOPARSER prefixes,0);
}
static STATUS hid2(PARAM c){
PARSER instructionbody, p_uniq0;
return p_andparse0n (TOPARSER instructionbody,0,TOPARSER p_uniq0,0);
}
static STATUS hid3(PARAM c){
PARSER p_uniq0, hid2;
return p_andparse0n (TOPARSER p_uniq0,0,TOPARSER hid2,1,c);
}
static STATUS hid4(PARAM c){
PARSER hid1, hid3;
return p_andparse0n (TOPARSER hid1,1,c,TOPARSER hid3,1,c);
}
static STATUS hid5(PARAM c){
PARSER hid0, hid4;
return p_andparse0n (TOPARSER hid0,1,c,TOPARSER hid4,1,c);
}
static STATUS hid6(PARAM c){
PARSER databody, p_uniq0;
return p_andparse0n (TOPARSER databody,1,c,TOPARSER p_uniq0,0);
}
static STATUS hid7 (PARAM c){
PARSER hid5, hid6;
static STATUS p_tok;
p_tok = (TOPARSER hid5) (c);
return (GOODSTATUS(p_tok))?p_tok:(TOPARSER hid6) (c);
}
STATUS instruction(PARAM c){
PARSER hid7;
return((TOPARSER hid7)(c));
}
static STATUS hid8(PARAM c){
return p_test0(c==1);
}
static STATUS hid9(PARAM c){
PARSER hid8, labeldata;
return p_andparse0n (TOPARSER hid8,1,c,TOPARSER labeldata,0);
}
static STATUS hid10(PARAM c){
return p_test0(c==2);
}
static STATUS hid11(PARAM c){
PARSER hid10, bytex;
return p_andparse0n (TOPARSER hid10,1,c,TOPARSER bytex,0);
}
static STATUS hid12(PARAM c){
return p_test0(c==3);
}
static STATUS hid13(PARAM c){
PARSER hid12, byte;
return p_andparse0n (TOPARSER hid12,1,c,TOPARSER byte,0);
}
static STATUS hid14 (PARAM c){
PARSER hid11, hid13;
static STATUS p_tok;
p_tok = (TOPARSER hid11) (c);
return (GOODSTATUS(p_tok))?p_tok:(TOPARSER hid13) (c);
}
static STATUS hid15 (PARAM c){
PARSER hid9, hid14;
static STATUS p_tok;
p_tok = (TOPARSER hid9) (c);
return (GOODSTATUS(p_tok))?p_tok:(TOPARSER hid14) (c);
}
STATUS databody(PARAM c){
PARSER hid15;
return((TOPARSER hid15)(c));
}
static VOID hid16(PARAM x){
m_dword=x;
}
static STATUS hid17(PARAM x){
PARSER p_nothing0;ACTION hid16;
return p_attach0n(TOPARSER p_nothing0,0,hid16,1,x);
}
static STATUS hid18(){
PARSER dword, hid17; PARAM x;
static STATUS p_tok;
P_PSTAR(x,(TOPARSER dword)(),(TOPARSER hid17)(x));
return p_tok;
}
STATUS labeldata(){
PARSER hid18;
return((TOPARSER hid18)());
}
static VOID hid19(){
opclass=1;
}
static STATUS hid20(){
PARSER p_nothing0;ACTION hid19;
return p_attach0n(TOPARSER p_nothing0,0,hid19,0);
}
static STATUS hid21(){
PARSER onebyteinstr, hid20;
return p_andparse0n (TOPARSER onebyteinstr,0,TOPARSER hid20,0);
}
static STATUS hid22(PARAM x){
return p_test0(x==15);
}
static VOID hid23(PARAM x){
opclass=2;
}
static STATUS hid24(PARAM x){
PARSER p_nothing0;ACTION hid23;
return p_attach0n(TOPARSER p_nothing0,0,hid23,1,x);
}
static STATUS hid25(PARAM x){
PARSER twobyteinstr, hid24;
return p_andparse0n (TOPARSER twobyteinstr,0,TOPARSER hid24,1,x);
}
static STATUS hid26(PARAM x){
PARSER hid22, hid25;
return p_andparse0n (TOPARSER hid22,1,x,TOPARSER hid25,1,x);
}
static STATUS hid27(){
PARSER byte, hid26; PARAM x;
static STATUS p_tok;
P_PSTAR(x,(TOPARSER byte)(),(TOPARSER hid26)(x));
return p_tok;
}
static STATUS hid28 (){
PARSER hid21, hid27;
static STATUS p_tok;
p_tok = (TOPARSER hid21) ();
return (GOODSTATUS(p_tok))?p_tok:(TOPARSER hid27) ();
}
STATUS instructionbody(){
PARSER hid28;
return((TOPARSER hid28)());
}
static VOID hid29(PARAM x){
prxntf("%02X",x);a_loc++;i_col++;
}
static STATUS hid30(PARAM x){
PARSER p_nothing0;ACTION hid29;
return p_attach0n(TOPARSER p_nothing0,0,hid29,1,x);
}
static STATUS hid31(PARAM x){
return p_atch0((PARAM)(x));
}
static STATUS hid32(PARAM x){
PARSER hid30, hid31;
return p_andparse0n (TOPARSER hid30,1,x,TOPARSER hid31,1,x);
}
static STATUS hid33(){
PARSER p_anything0, hid32; PARAM x;
static STATUS p_tok;
P_PSTAR(x,(TOPARSER p_anything0)(),(TOPARSER hid32)(x));
return p_tok;
}
STATUS byte(){
PARSER hid33;
return((TOPARSER hid33)());
}
static VOID hid34(PARAM x){
m_byte=x; a_loc++; i_col++;
}
static STATUS hid35(PARAM x){
PARSER p_nothing0;ACTION hid34;
return p_attach0n(TOPARSER p_nothing0,0,hid34,1,x);
}
static STATUS hid36(PARAM x){
return p_atch0((PARAM)(x));
}
static STATUS hid37(PARAM x){
PARSER hid35, hid36;
return p_andparse0n (TOPARSER hid35,1,x,TOPARSER hid36,1,x);
}
static STATUS hid38(){
PARSER p_anything0, hid37; PARAM x;
static STATUS p_tok;
P_PSTAR(x,(TOPARSER p_anything0)(),(TOPARSER hid37)(x));
return p_tok;
}
STATUS bytex(){
PARSER hid38;
return((TOPARSER hid38)());
}
static VOID hid39(PARAM x){
prxntf("%02X",x);a_loc++;i_col++;
}
static STATUS hid40(PARAM x){
PARSER p_nothing0;ACTION hid39;
return p_attach0n(TOPARSER p_nothing0,0,hid39,1,x);
}
static STATUS hid41(PARAM x){
return p_atch0((PARAM)(x));
}
static STATUS hid42(PARAM x){
PARSER hid40, hid41;
return p_andparse0n (TOPARSER hid40,1,x,TOPARSER hid41,1,x);
}
static STATUS hid43(){
PARSER p_anything0, hid42; PARAM x;
static STATUS p_tok;
P_PSTAR(x,(TOPARSER p_anything0)(),(TOPARSER hid42)(x));
return p_tok;
}
STATUS op(){
PARSER hid43;
return((TOPARSER hid43)());
}
static STATUS hid44(PARAM x,PARAM y){
return p_atch0((PARAM)(y*256+x));
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -