home *** CD-ROM | disk | FTP | other *** search
- /* ====================================================================== *
- * def.h *
- * ====================================================================== *
- * rt/1 #defines reside in this file *
- * *
- * last changed for #9 board on 2/14/87 by tad */
-
- /* debug aids*/
- /*#define TRACE(x) x; /*trace of each function call*/
- #define TRACE(x) /**/
- /*#define DEBUG 1 /*include extra debug code*/
- #define DBG1(x) /*exclude debug code*/
- #define DBG2(x,y) /**/
- #define DBG3(x,y,z) /**/
- /*#define DBG1(x) x; /*include debug code*/
- /*#define DBG2(x,y) x;y; /**/
- /*#define DBG3(x,y,z) x;y;z; /**/
-
- /* to include/exclude groups of commands */
- #define IBMPC 1
- #define DEB 1
- #define MANUALCURSOR 1 /* use software cursor on the command line */
- #define NDEBUG 1 /* ^N print names, etc.*/
- #undef ALARMING /* remove interrupts */
- /* #define HYPERBOL 1 /*include hyperbolic functions*/
- #define TEMPDEBUG 1 /*add temp list printer for debugging*/
- #define CPLDEBUG 1 /*add compiled printer for debugging*/
- #define ZWHILE 1 /* include smeet's whiles */
-
- /* for use in interrupts */
- #define TICKS 1 /* number of 1/60 second ticks between interrupts */
- #define TIMEOUT 16 /* signal number for ticktim() timeout */
-
- /* flags */
- #define NDEL 0x01
- #define DOLDEL 0x02
- #define DOLOOP 0x04
- #define RDONLY 0x08 /* for special names ($SC, etc) not to be changed */
- #define STICKY 0x10 /* for assignable specials, sticky type */
-
- /* data types */
- #define BITS short /*type for flags*/
- #define BOOL unsigned char /*type for logical functions*/
- #define COORD float /*type for coordinate data*/
- #define ITYPE long /*type for IVALs*/
- #define FTYPE float /*type for FVALs*/
- #define BTYPE unsigned char /*type for BVALs*/
- #define TINY char /*type for type structure member*/
- #define HTYPE short /*type for HVALs (16 bit integer), by Dai 7/31/86*/
- #define NTYPE unsigned char /* type for NVALs, by Dai 8/1/86 */
-
-
- /* types */
- #define EXPEND -1 /* end of expression*/
- #define EOARG 0 /* end of arguments*/
- #define CPLNULL 1 /* NULLTYPE for compiled */
- #define NULLTYPE 2
- #define LOCAL 3
- #define IVAL 4 /* integer */
- #define HVAL 5 /* 16 bit integer, by Dai 7/31/86 */
- #define FVAL 6
- #define BVAL 7
- #define STRADR 8 /* address of a temp structure for string*/
- #define NVAL 9 /* 4 bit integer, by Dai 8/1/86 */
- #define NAMADR 10 /* address of name block*/
- #define HADR 11 /* 16 bit integer address (for array reference),
- by Dai 7/31/86 */
- #define IADR 12 /* int address (for array reference)*/
- #define SADR 13 /* string address (for array reference)*/
- #define FADR 14 /* float address (array reference)*/
- #define BADR 15 /* byte address (array reference)*/
- #define AADR 16 /* array */
- #define NADR 17 /* 4 bit integer address (for array reference),
- by Dai 8/1/86 */
- #define CPLADR 18 /* compiled macro */
- #define CGR 19 /* c graphics type to go in ttype in a TEMP*/
- #define SWAPADR 20 /* swap command */
- #define CMDADR 24 /* command */
- #define MIBBLK 34 /* IS MIB */
- #define KEYBLK 38 /* is kbd mib */
- #define CZBLOK 40 /* is ^Z mib */
- #define CPLMIB 42 /* is a cpl mib */
- #define REPEAT 48 /* repeat last argument*/
- #define ANYVAL 50 /* any value*/
- #define ANYNAM 52 /* any address*/
- #define ANYTHING 54 /* any operand*/
- #define SWITCH 56 /* switches allowed in this operand list*/
- #define LINEND 60 /* end of line (compiled)*/
- #define LABEL 62 /* label (compiled)*/
- #define IGNORE 64 /* place holder (compiled) */
- #define BRANCH 66 /* branch (compiled)*/
- #define CPLEND 68 /* end (of compiled)*/
- #define UNARY 71 /* unary operator*/
- #define BINARY 72 /* binary operator*/
- #define LPAREN 73 /* left parenthesis*/
- #define RPAREN 74 /* right parenthesis*/
- #define CPLRPAREN 75 /* right parenthesis*/
-
- /* operand types*/
- #define NUMB 1
- #define STRING 2
- #define RELAT 3
- #define ASSIGN 4
-
-
- /* size-dimension parameters*/
- #define VALSTKSIZ 100 /* operand stack size*/
- #define QUEUESIZE 80 /* parsing queue*/
- /*#define CPLSIZE 500 /* compiled region size*/ /*in comp.c*/
- #define CPLINES 200 /* compiled line table size*/
- #define NUMOPERS 28 /* number of operators*/
- #define BUFLIMIT 128 /* buffer size*/
- #define MAXCMDS 180 /* max number of commands */
- #define FREEMAX 20 /* number of mibs to initialize */
- #define CNTLMAX 32 /* number of cntl's allowed */
- #define NUMALPHA 28 /* number of valid alpha characters */
- #define NUMTRAN 10 /* number of characters to translate */
- #define NUMERR 10 /* number of errors buffered*/
- #define STRSIZE 10000 /* unknown-size allocation for strings*/
- #define WORKSIZE 130 /* character work area/buffer size*/
- #ifdef IBMPC
- #define BIGLONG 65535 /* 2**16 - 1*/
- #else
- #define BIGLONG 2147483647 /* 2**31 - 1*/
- #endif
- #define RANDRANGE BIGLONG - 0 /* range of random function*/
- #define NDIGIT 6 /* number of digits to print*/
-
-
- /* general constants*/
- #define ERROR -1
- #define FAIL -1
- #define FLUB 0
- #define SUCCEED 1
- #define FALSE 0
- #define TRUE 1
- #define PERMANENT 0 /* mib alloc type */
- #define TEMPORARY 1 /* mib alloc type */
-
- /* character typing constants*/
- #define ALPH 1 /*alphabetic*/
- #define DIG 2 /*digit*/
- #define LOW 4 /*lower case alpha*/
- #define OPR 8 /*operator*/
- #define STRD 16 /*initial string delimiter*/
- #define LEXD 32 /* , ; \n \0 for yylex*/
- #define DEL1 64 /* ; \n \0*/
- #define DEL2 128 /* \n \0*/
- #define DEL3 256 /* ; \n \0 ( for namadr*/
- #define WSP 512 /* blank \t white space*/
- #define LDIG 1024 /* 0-9 . for yylex*/
- #define CR 0x0d
- #define TILDE 0x7e
-
- /* control characters */
- #define CTLA '\001'
- #define CTLB '\002'
- #define CTLC '\003'
- #define CTLD '\004'
- #define CTLE '\005'
- #define CTLF '\006'
- #define CTLG '\007'
- #define CTLH '\010'
- #define CTLI '\011'
- #define CTLJ '\012'
- #define CTLK '\013'
- #define CTLL '\014'
- #define CTLM '\015'
- #define CTLN '\016'
- #define CTLO '\017'
- #define CTLP '\020'
- #define CTLQ '\021'
- #define CTLR '\022'
- #define CTLS '\023'
- #define CTLT '\024'
- #define CTLU '\025'
- #define CTLV '\026'
- #define CTLW '\027'
- #define CTLX '\030'
- #define CTLY '\031'
- #define CTLZ '\032'
-
- #define CTLLEFTBRKT '\033'
- #define CTLBACKSLASH '\034'
- #define CTLRIGHTBRKT '\035'
- #define CTLUPARROW '\036'
-
- #ifdef AMIGA
- #define RUB 0x7f
- #endif
-
- #define CTL_ '\037'
-
- #ifdef IBMPC
- #define RIGHTARROW (0x1C)
- #define LEFTARROW (0x1D)
- #define UPARROW (0x1E)
- #define DOWNARROW (0x1F)
- #define CTRL_BS (0x7F)
- #define WINDOW (0xBB)
- #define HOMEKEY (0xC8)
- #define ENDKEY (0xC9)
- #define PAGEUP (0xCA)
- #define PAGEDOWN (0xCB)
- #define CTRL_HOME (0xCC)
- #define CTRL_END (0xCD)
- #define INSERT (0xCE)
- #define RUB (0xCF)
- #define FUNCTION1 (0xD2)
- #define FUNCTION2 (0xD3)
- #define FUNCTION3 (0xD4)
- #define FUNCTION4 (0xD5)
- #define FUNCTION5 (0xD6)
- #define FUNCTION6 (0xD7)
- #define FUNCTION7 (0xD8)
- #define FUNCTION8 (0xD9)
- #define FUNCTION9 (0xDA)
- #define FUNCTION10 (0xDB)
- #define SFUNCTION1 (0xDC)
- #define SFUNCTION2 (0xDD)
- #define SFUNCTION3 (0xDE)
- #define SFUNCTION4 (0xDF)
- #define SFUNCTION5 (0xE0)
- #define SFUNCTION6 (0xE1)
- #define SFUNCTION7 (0xE2)
- #define SFUNCTION8 (0xE3)
- #define SFUNCTION9 (0xE4)
- #define HELP (0xE5)
- #endif
-
- #define OPAREN 5 /*( index in optab*/
- #define CPAREN 6 /*) index in optab*/
- #define UOPFIRST 0 /*first unary entry in op_tab*/
- #define UOPLAST 4 /*last unary entry in op_tab*/
- #define U2OPFIRST 26 /*first unary entry in op_tab*/
- #define U2OPLAST 27 /*last unary entry in op_tab*/
- #define SOPFIRST 7 /*single char binary*/
- #define SOPLAST 17
- #define DOPFIRST 18 /*double char binary*/
- #define DOPLAST 25
-
-
- /* error equates */
- #define ER_EXMPL 0 /* for example error */
- #define ER_SYS 3 /* internal error*/
- #define ER_CGR 4 /* not CGR type*/
- #define ER_NULL 5 /* null path name*/
- #define ER_TMOD 6 /* invalid transfer mode*/
- #define ER_FNAM 7 /* invalid file name*/
- #define ER_FCRT 8 /* cant create file*/
- #define ER_COLT 9 /* bad color type*/
- #define ER_LUTA 10 /* invalid lut array*/
- #define ER_FILL 11 /* agenda overflow in fill */
- #define ER_FILLS 12 /* fill seed out of window */
- #define ER_OPN1 19 /* operand error*/
- #define ER_OPN2 20 /* operand error*/
- #define ER_CON1 22 /* ANYVAL*/
- #define ER_CORE 27
- #define ER_128 28 /* OVER BUFFER LIMIT IN INPTTY */
- #define ER_LPAR 31 /* illegal (*/
- #define ER_DKCH 33 /* unknown character in expression */
- #define ER_CMD 34 /* not a command */
- #define ER_MAC 35 /* not a macro */
- #define ER_NOL 37 /* no such label */
- #define ER_LAB2 38 /* duplicate label */
- #define ER_ARG 39 /* incomplete argument list*/
- #define ER_RPAR 42 /* right paren*/
- #define ER_ARBND 47 /* array reference out of bounds */
- #define ER_ARA 48 /* can't convert to array */
- #define ER_DIM 50 /* too many dimensions for array*/
- #define ER_INVL 52 /* invalid argument for command*/
- #define ER_EDIT 53 /* can only edit STRADR and NULLTYPE */
- #define ER_COMP 59 /* can't compile*/
- #define ER_CPLN 60 /* too many lines for compile*/
- #define ER_CPLQ 61 /* compile ran out of queue space*/
- #define ER_INM 69 /* must be in macro */
- #define ER_READ 79 /* read error */
- #define ER_WRITE 80 /* write error */
- #define ER_SWAP 82 /* can't swap this */
- #define ER_TXT 83 /* text error */
- #define ER_STKU 87 /* stack underflow*/
- #define ER_STKF 88 /* stack full*/
- #define ER_OPEN 90 /* can't open file*/
- #define ER_DP 91 /* can't dput this*/
- #define ER_0DIM 96 /* 0 dimension for array*/
- #define ER_DIV0 97 /* divide or mod by 0*/
- #define ER_SW 98 /* no such switch*/
- #define ER_OPR 102 /* missing operator*/
- #define ER_QUF 103 /* queue full*/
- #define ER_BIN 104 /* missing binary*/
- #define ER_IND 105 /* name from string for @*/
- #define ER_ASN 122 /* assignment*/
- #define ER_CON2 123 /* ANYVAL from name*/
- #define ER_CON3 124 /* FVAL*/
- #define ER_CON4 125 /* NAMADR*/
- #define ER_CON5 126 /* STRADR*/
-
-
- /* value references for global special names (To facilitate change to ival */
- #define ABVAL _ab.nvalue.ival
- #define DAVAL _da.nvalue.ival
- #define ERVAL _er.nvalue.ival
- #define HRVAL _hr.nvalue.ival
- #define MNVAL _mn.nvalue.ival
- #define SCVAL _sc.nvalue.ival
- #define STVAL _st.nvalue.ival
- #define TKVAL _tk.nvalue.ival
- #define Z0VAL _z0.nvalue.ival
-
-
- /*include files*/
- /*these entries should be last!!*/
-
- #include <stdio.h> /*standard io*/
- #include "struct.h" /*structure definitions*/
- #include "extern.h" /*global variables*/
- #include "mac.h" /*macro definitions*/
- /*#include <signal.h>
- */
-
-
-