home *** CD-ROM | disk | FTP | other *** search
-
- /*
- * GLOBALS.C
- *
- * (c)Copyright 1988, Matthew Dillon, All Rights Reserved.
- *
- */
-
- #include "asm.h"
-
- SYMBOL *SHash[SHASHSIZE]; /* symbol hash table */
- MNE *MHash[MHASHSIZE]; /* mnemonic hash table */
- INCFILE *Incfile; /* include file stack */
- REPLOOP *Reploop; /* repeat loop stack */
- SEGMENT *Seglist; /* segment list */
- SEGMENT *Csegment; /* current segment */
- IFSTACK *Ifstack; /* IF/ELSE/ENDIF stack */
- ubyte *Av[256]; /* up to 256 arguments */
- ubyte Avbuf[512];
- ubyte MsbOrder = 1;
- uword Mnext;
- char Inclevel;
- uword Mlevel;
- ulong Localindex; /* to generate local variables */
- ulong Processor;
- ubyte Xdebug, Xtrace;
- ubyte Outputformat;
- ulong Redo, Redo_why;
- ulong Redo_eval; /* infinite loop detection only */
- char ListMode = 1;
- ulong CheckSum; /* output data checksum */
-
-
- ubyte F_format = 1;
- ubyte F_verbose;
- char *F_outfile = "a.out";
- char *F_listfile;
- char *F_symfile;
- char *F_temppath = "ram:";
- FILE *FI_listfile;
- FILE *FI_temp;
- ubyte Fisclear;
- ulong Plab, Pflags;
-
- uword Adrbytes[] = { 1, 2, 3, 2, 2, 2, 3, 3, 3, 2, 2, 2, 3, 1, 1, 2, 3 };
- uword Cvt[] = { 0, 2, 0, 6, 7, 8, 9, 0, 0, 0, 0, 0, 0, 4, 5, 0, 0 };
- uword Opsize[] = { 0, 1, 2, 1, 1, 1, 2, 2, 2, 2, 1, 1, 2, 0, 0, 1, 1 };
-
- MNE Ops[] = {
- { NULL, v_list , "list", 0, 0 },
- { NULL, v_include , "include", 0, 0 },
- { NULL, v_seg , "seg", 0, 0 },
- { NULL, v_hex , "hex", 0, 0 },
- { NULL, v_err , "err", 0, 0 },
- { NULL, v_dc , "dc", 0, 0 },
- { NULL, v_ds , "ds", 0, 0 },
- { NULL, v_dc , "dv", 0, 0 },
- { NULL, v_end , "end", 0, 0 },
- { NULL, v_trace , "trace", 0, 0 },
- { NULL, v_org , "org", 0, 0 },
- { NULL, v_rorg , "rorg", 0, 0 },
- { NULL, v_rend , "rend", 0, 0 },
- { NULL, v_align , "align", 0, 0 },
- { NULL, v_subroutine, "subroutine", 0, 0 },
- { NULL, v_equ , "equ", 0, 0 },
- { NULL, v_eqm , "eqm", 0, 0 },
- { NULL, v_set , "set", 0, 0 },
- { NULL, v_macro , "mac", MF_IF, 0 },
- { NULL, v_endm , "endm", MF_ENDM,0 },
- { NULL, v_mexit , "mexit", 0, 0 },
- { NULL, v_ifconst , "ifconst", MF_IF, 0 },
- { NULL, v_ifnconst, "ifnconst", MF_IF, 0 },
- { NULL, v_if , "if", MF_IF, 0 },
- { NULL, v_else , "else", MF_IF, 0 },
- { NULL, v_endif , "endif", MF_IF, 0 },
- { NULL, v_endif , "eif", MF_IF, 0 },
- { NULL, v_repeat , "repeat", MF_IF, 0 },
- { NULL, v_repend , "repend", MF_IF, 0 },
- { NULL, v_echo , "echo", 0, 0 },
- { NULL, v_processor,"processor", 0, 0 },
- NULL
- };
-
-