home *** CD-ROM | disk | FTP | other *** search
/ CP/M / CPM_CDROM.iso / mbug / mbug103.arc / MAC.H < prev    next >
Text File  |  1979-12-31  |  2KB  |  55 lines

  1. /*
  2. ** miscellaneous definitions
  3. */
  4. #define MAXFN      15        /* max file name space */
  5. #define INTSZ       2        /* integer size in bytes */
  6. #define COMMENT   ';'        /* comment delimiter */
  7. #define ANOTHER   '|'        /* another operand option */
  8. #define MAXLINE    81        /* length of source line */
  9. #define MICOUNT   150        /* machine instruction hash space */
  10. #define MIOPNDS   300        /* maximum unique operand formats */
  11. #define MIBUFSZ  4600        /* mit syntax space */
  12. #define OBJEXT  ".REL"        /* object file extension */
  13. #define SRCEXT  ".MAC"        /* source file extension */
  14. #define MAXLAB      8        /* maximum label characters used */
  15. #define STACK    1024        /* reserved for stack space */
  16. #define OHDOPEN   164        /* overhead bytes per open file */
  17. #define MAXOPEN     2        /* maximum open files */
  18.  
  19. /*
  20. ** symbol table
  21. */
  22. #define STMAX   500            /* maximum lables allowed */
  23. #define STVALUE (MAXLAB + 1)        /* offset to value field */
  24. #define STFLAG  (STVALUE + INTSZ)    /* offset to flag byte */
  25. #define STENTRY (STFLAG + 1)        /* st entry size */
  26. #define STBUFSZ (stmax * STENTRY)    /* st buffer size */
  27. #define LABBIT2 128            /* label flag (pass 2) */
  28. #define LABBIT   64            /* label flag */
  29. #define EQUBIT   32            /* EQU flag (pass 2) */
  30. #define SETBIT   16            /* SET flag */
  31. #define XRBIT     8            /* external-reference flag */
  32. #define EPBIT     4            /* entry-point flag */
  33. #define RELBITS   3            /* relative bits (ABS, PREL) */
  34.  
  35. /*
  36. ** macro table
  37. */
  38. #define MTNXT       0        /* pointer to next macro */
  39. #define MTNAM   INTSZ        /* macro name */
  40.  
  41. /*
  42. ** assembler instruction codes
  43. */
  44. #define DW     1
  45. #define DB     2
  46. #define DS     3
  47. #define EX     4
  48. #define SET    5
  49. #define EQU    6
  50. #define ORG    7
  51. #define END    8
  52. #define MACRO  9
  53. #define ENDM  10
  54. #define CALL  11
  55.