home *** CD-ROM | disk | FTP | other *** search
/ RISC DISC 2 / RISC_DISC_2.iso / pd_share / program / language / motasm / src_h_as < prev    next >
Encoding:
C/C++ Source or Header  |  1993-06-27  |  3.1 KB  |  72 lines

  1. /*
  2.  *      machine independent definitions and global variables
  3.  */
  4.  
  5. #define YES     1
  6. #define NO      0
  7. #define ERR     (-1)
  8.  
  9. #define MAXBUF  128
  10. #define MAXOP   10      /* longest mnemonic */
  11. #define MAXLAB  16
  12. #define E_LIMIT 32
  13. #define P_LIMIT 64
  14. #define MAXINCFILES  30 /* nestinf levels for  INCLUDE files at one time */
  15.                         /* ver TER_2.0 6/17/89 */
  16. #define MAXIFD    30    /* max nesting levels for IFD/IFND statements */
  17.                         /* ver TER_2.0 2 Jul 89 */
  18. #define IF_FALSE  0     /* tokens for IfMachine (conditional assembly) */
  19. #define IF_TRUE   1     /* added ver TER_2.0 27Jun89 */
  20. #define IF_ELSE   2
  21. #define IF_ENDIF  3
  22. #define IF_NORMAL 4
  23. #define IF_END    5
  24. #define IF_EOF    6     /* end tokens */
  25.  
  26. /*      Character Constants     */
  27. #define NEWLINE '\n'
  28. #define CR      0x0D    /* <CR> or ^M ver TER_1.1 June 3, 1989 */
  29. #define TAB     '\t'
  30. #define BLANK   ' '
  31. #define EOS     '\0'
  32. #define SQUOT   '\''    /* delimiter for FCC ver A210*/ 
  33. #define DQUOT   '\"'    /* delimiter for FCC ver A210*/
  34.  
  35. /*      Opcode Classes          */
  36. #define INH     0       /* Inherent                     */
  37. #define GEN     1       /* General Addressing           */
  38. #define IMM     2       /* Immediate only               */
  39. #define REL     3       /* Short Relative               */
  40. #define P2REL   4       /* Long Relative                */
  41. #define P1REL   5       /* Long Relative (LBRA and LBSR)*/
  42. #define NOIMM   6       /* General except for Immediate */
  43. #define P2GEN   7       /* Page 2 General               */
  44. #define P3GEN   8       /* Page 3 General               */
  45. #define RTOR    9       /* Register To Register         */
  46. #define INDEXED 10      /* Indexed only                 */
  47. #define RLIST   11      /* Register List                */
  48. #define P2NOIMM 12      /* Page 2 No Immediate          */
  49. #define P2INH   13      /* Page 2 Inherent              */
  50. #define P3INH   14      /* Page 3 Inherent              */
  51. #define GRP2    15      /* Group 2 (Read/Modify/Write)  */
  52. #define LONGIMM 16      /* Immediate mode takes 2 bytes */
  53. #define BTB     17      /* Bit test and branch          */
  54. #define SETCLR  18      /* Bit set or clear             */
  55. #define CPD     19      /* compare d               6811 */
  56. #define XLIMM   20      /* LONGIMM for X           6811 */
  57. #define XNOIMM  21      /* NOIMM for X             6811 */
  58. #define YLIMM   22      /* LONGIMM for Y           6811 */
  59. #define YNOIMM  23      /* NOIMM for Y             6811 */
  60. #define FAKE    24      /* convenience mnemonics   6804 */
  61. #define APOST   25      /* A accum after opcode    6804 */
  62. #define BPM     26      /* branch reg plus/minus   6804 */
  63. #define CLRX    27      /* mvi x,0                 6804 */
  64. #define CLRY    28      /* mvi y,0                 6804 */
  65. #define LDX     29      /* mvi x,expr              6804 */
  66. #define LDY     30      /* mvi y,expr              6804 */
  67. #define MVI     31      /* mvi                     6804 */
  68. #define EXT     32      /* extended                6804 */
  69. #define BIT     33      /* bit manipulation        6301 */
  70. #define SYS     34      /* syscalls (really swi)        */
  71. #define PSEUDO  35      /* Pseudo ops                   */
  72.