|
Packit Service |
b98cfc |
/***************************************************************************
|
|
Packit Service |
b98cfc |
parse.h - description
|
|
Packit Service |
b98cfc |
-------------------
|
|
Packit Service |
b98cfc |
Date : May 23 2000
|
|
Packit Service |
b98cfc |
Copyright : (C) 2000 by Daniel Bertrand
|
|
Packit Service |
b98cfc |
Email : d.bertrand@ieee.ca
|
|
Packit Service |
b98cfc |
***************************************************************************/
|
|
Packit Service |
b98cfc |
|
|
Packit Service |
b98cfc |
/***************************************************************************
|
|
Packit Service |
b98cfc |
* *
|
|
Packit Service |
b98cfc |
* This program is free software; you can redistribute it and/or modify *
|
|
Packit Service |
b98cfc |
* it under the terms of the GNU General Public License as published by *
|
|
Packit Service |
b98cfc |
* the Free Software Foundation; either version 2 of the License, or *
|
|
Packit Service |
b98cfc |
* (at your option) any later version. *
|
|
Packit Service |
b98cfc |
* *
|
|
Packit Service |
b98cfc |
***************************************************************************/
|
|
Packit Service |
b98cfc |
|
|
Packit Service |
b98cfc |
//#define NUM_OPS 17 //number of op code mneumonic and directives
|
|
Packit Service |
b98cfc |
|
|
Packit Service |
b98cfc |
|
|
Packit Service |
b98cfc |
enum foo {
|
|
Packit Service |
b98cfc |
MACS=0,
|
|
Packit Service |
b98cfc |
MACS1,
|
|
Packit Service |
b98cfc |
MACW,
|
|
Packit Service |
b98cfc |
MACW1,
|
|
Packit Service |
b98cfc |
MACINTS,
|
|
Packit Service |
b98cfc |
MACINTW,
|
|
Packit Service |
b98cfc |
ACC3,
|
|
Packit Service |
b98cfc |
MACMV,
|
|
Packit Service |
b98cfc |
ANDXOR,
|
|
Packit Service |
b98cfc |
TSTNEG,
|
|
Packit Service |
b98cfc |
LIMIT,
|
|
Packit Service |
b98cfc |
LIMIT1,
|
|
Packit Service |
b98cfc |
LOG,
|
|
Packit Service |
b98cfc |
EXP,
|
|
Packit Service |
b98cfc |
INTERP,
|
|
Packit Service |
b98cfc |
SKIP,
|
|
Packit Service |
b98cfc |
EQU,
|
|
Packit Service |
b98cfc |
DS,
|
|
Packit Service |
b98cfc |
DYNAMIC,
|
|
Packit Service |
b98cfc |
DYN,
|
|
Packit Service |
b98cfc |
MACRO,
|
|
Packit Service |
b98cfc |
DC,
|
|
Packit Service |
b98cfc |
STATIC,
|
|
Packit Service |
b98cfc |
STA,
|
|
Packit Service |
b98cfc |
DIN,
|
|
Packit Service |
b98cfc |
DOUT,
|
|
Packit Service |
b98cfc |
DD,
|
|
Packit Service |
b98cfc |
DT,
|
|
Packit Service |
b98cfc |
DW,
|
|
Packit Service |
b98cfc |
DR,
|
|
Packit Service |
b98cfc |
CONTROL,
|
|
Packit Service |
b98cfc |
ENDM,
|
|
Packit Service |
b98cfc |
END,
|
|
Packit Service |
b98cfc |
INCLUDE,
|
|
Packit Service |
b98cfc |
NAME,
|
|
Packit Service |
b98cfc |
FOR,
|
|
Packit Service |
b98cfc |
ENDFOR,
|
|
Packit Service |
b98cfc |
IO,
|
|
Packit Service |
b98cfc |
CONSTANT,
|
|
Packit Service |
b98cfc |
CON,
|
|
Packit Service |
b98cfc |
NUM_OPS
|
|
Packit Service |
b98cfc |
|
|
Packit Service |
b98cfc |
};
|
|
Packit Service |
b98cfc |
|
|
Packit Service |
b98cfc |
|
|
Packit Service |
b98cfc |
char op_codes[NUM_OPS+1][9]=
|
|
Packit Service |
b98cfc |
{
|
|
Packit Service |
b98cfc |
"MACS",
|
|
Packit Service |
b98cfc |
"MACS1",
|
|
Packit Service |
b98cfc |
"MACW",
|
|
Packit Service |
b98cfc |
"MACW1",
|
|
Packit Service |
b98cfc |
|
|
Packit Service |
b98cfc |
"MACINTS",
|
|
Packit Service |
b98cfc |
"MACINTW",
|
|
Packit Service |
b98cfc |
|
|
Packit Service |
b98cfc |
"ACC3",
|
|
Packit Service |
b98cfc |
"MACMV",
|
|
Packit Service |
b98cfc |
"ANDXOR",
|
|
Packit Service |
b98cfc |
"TSTNEG",
|
|
Packit Service |
b98cfc |
"LIMIT",
|
|
Packit Service |
b98cfc |
"LIMIT1",
|
|
Packit Service |
b98cfc |
"LOG",
|
|
Packit Service |
b98cfc |
"EXP",
|
|
Packit Service |
b98cfc |
"INTERP",
|
|
Packit Service |
b98cfc |
"SKIP",
|
|
Packit Service |
b98cfc |
"equ",
|
|
Packit Service |
b98cfc |
"ds",
|
|
Packit Service |
b98cfc |
"dynamic",
|
|
Packit Service |
b98cfc |
"dyn",
|
|
Packit Service |
b98cfc |
"macro",
|
|
Packit Service |
b98cfc |
"dc",
|
|
Packit Service |
b98cfc |
"static",
|
|
Packit Service |
b98cfc |
"sta",
|
|
Packit Service |
b98cfc |
"din",
|
|
Packit Service |
b98cfc |
"dout",
|
|
Packit Service |
b98cfc |
"delay",
|
|
Packit Service |
b98cfc |
"table",
|
|
Packit Service |
b98cfc |
"twrite",
|
|
Packit Service |
b98cfc |
"tread",
|
|
Packit Service |
b98cfc |
"control",
|
|
Packit Service |
b98cfc |
"endm",
|
|
Packit Service |
b98cfc |
"end",
|
|
Packit Service |
b98cfc |
"include",
|
|
Packit Service |
b98cfc |
"name",
|
|
Packit Service |
b98cfc |
"for",
|
|
Packit Service |
b98cfc |
"endfor",
|
|
Packit Service |
b98cfc |
"IO",
|
|
Packit Service |
b98cfc |
"constant",
|
|
Packit Service |
b98cfc |
"con",
|
|
Packit Service |
b98cfc |
"NotAnOp"
|
|
Packit Service |
b98cfc |
};
|
|
Packit Service |
b98cfc |
|
|
Packit Service |
b98cfc |
//extern int file_num,source_line_num
|
|
Packit Service |
b98cfc |
|