home *** CD-ROM | disk | FTP | other *** search
- /* global variables */
- int Line_num =0; /* current global line number */
- int Local_Line_num =0; /* current file line number */
- int PageLen =0; /* page form length from input line */
- int Err_count =0; /* total number of errors */
- char Line[MAXBUF] = {0}; /* input line buffer */
- char Label[MAXLAB] = {0}; /* label on current line */
- char Op[MAXOP] = {0}; /* opcode mnemonic on current line */
- char Operand[MAXBUF] = {0}; /* remainder of line after op */
- /* (up to ';' rel TER_2.0) */
- char *Optr =0; /* pointer into current Operand field */
- int Result =0; /* result of expression evaluation */
- int Force_word =0; /* Result should be a word when set */
- int Force_byte =0; /* Result should be a byte when set */
- int Pc =0; /* Program Counter */
- int Old_pc =0; /* Program Counter at beginning */
-
- int Last_sym =0; /* result of last lookup */
-
- int Pass =0; /* Current pass # */
- int N_files =0; /* Number of files to assemble */
- FILE *Fd =0; /* Current input file structure */
- int Cfn =0; /* Current file number 1...n */
- int Ffn =0; /* forward ref file # */
- int F_ref =0; /* next line with forward ref */
- char **Argv =0; /* pointer to file names */
-
- int E_total =0; /* total # bytes for one line */
- int E_bytes[E_LIMIT] = {0}; /* Emitted held bytes */
- int E_pc =0; /* Pc at beginning of collection*/
-
- int Lflag = 0; /* listing flag 0=nolist, 1=list*/
- int ObjFilePos=0; /* Object file name position in command line*/
-
-
- int P_force = 0; /* force listing line to include Old_pc */
- int P_total =0; /* current number of bytes collected */
- int P_bytes[P_LIMIT] = {0}; /* Bytes collected for listing */
-
- int Splitflag =0; /* split xref, list and map files */
- int Cflag = 0; /* cycle count flag */
- int Cycles = 0; /* # of cycles per instruction */
- long Ctotal = 0; /* # of cycles seen so far */
- int Sflag = 0; /* symbol table flag, 0=no symbol */
- int N_page = 0; /* new page flag */
- int Page_num = 2; /* page number */
- int CREflag = 0; /* cross reference table flag */
- int ENDflag = 0; /* enable END directive flag */
- int CRflag = 0; /* flag to add <CR><LF> to S record */
- /* added ver TER_1.1 June 3, 1989 */
- int nfFlag = 1; /* if=1 number INCLUDE files separate */
- /* ver TER_2.0 June 17, 1989 */
- int FdCount = 0; /* INCLUDE files "stack" pointer */
- /* ver TER_2.0 June 17, 1989 */
- char InclFName[MAXBUF]={0}; /* current INCLUDE file name */
- int F_total = 0; /* total bytes emitted in S file */
- /* ver (TER) 2.02 19 Jun 89 */
- int Page_lines = 0; /* total lines this page */
- /* ver (TER) 2.02 19 Jun 89 */
- int Pflag50 = 0; /* if 1 then form feed every 50 lines */
- /* ver (TER) 2.02 19 Jun 89 */
- int PC_Save[4] = {0,0,0,0}; /* saved contents of CODE,DATA,BSS,AUTO PCs */
- /* ver TER_2.09 25 July 89 */
- int PC_ptr = 0; /* index or pointer to current PC */
- /* initialized to CODE ver TER_2.09 25 July 89 */
- int Pflag = 0; /* selects c preprocessing */
- int NoAflag = 0; /* selects c preprocessing only when cpp selected */
- struct nlist *root; /* root node of the tree */
- struct InclFile InclFiles[MAXINCFILES]; /* the nesting stack itself */
- FILE *Objfil =0; /* object file's file descriptor*/
- FILE *Forward; /* temp file's file descriptor */
- FILE *Listfil; /* list file's file descriptor */
- FILE *Mapfil; /* map file's file descriptor */
- FILE *Xfil; /* Xref file's file descriptor */
- FILE *Pfil; /* cpp file's file descriptor */
- char *Obj_name;
- char Fwd_name[] = {"<Wimp$ScrapDir>.Asm11Fwd"};
-
- int cppargpos[10];
- int cppargc;
- char *cppnp[256];
- int end_found = NO;
-