123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778 |
- /* $Id$ */
- /*
- * (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
- * See the copyright notice in the ACK home directory, in the file "Copyright".
- */
- /* @(#)mach1.c 1.8 */
- /*
- * Motorola 68000/68010 dependent C declarations
- */
- #define low3(z) ((short)(z) & 07)
- #define low4(z) ((short)(z) & 017)
- #define low7(z) ((short)(z) & 0177)
- #define fit3(z) ((((z)-1) & ~((int)07)) == 0)
- #define fit4(z) (((z) & ~((int)017)) == 0)
- #define fit7(z) (((z) & ~((int)0177)) == 0)
- #define sfit7(z) (fit7((z)+64))
- #define fit8(z) (((z) & ~((int)0xFF)) == 0)
- #define fit16(z) (((z) & ~(0xFFFFL)) == 0)
- #define SIZE_B 0000
- #define SIZE_W 0100
- #define SIZE_L 0200
- #define SIZE_NON 0300
- #define SIZE_DEF SIZE_W
- #define FSIZE_L 00
- #define FSIZE_S 01
- #define FSIZE_X 02
- #define FSIZE_P 03
- #define FSIZE_W 04
- #define FSIZE_D 05
- #define FSIZE_B 06
- #define DEF_FP 01000 /* default floating point processor */
- extern int co_id;
- extern int mrg_1,mrg_2;
- extern expr_t exp_1,exp_2;
- #ifndef ASLD
- extern valu_t rel_1,rel_2;
- #endif
- extern int model; /* 68000/68010 */
- extern int curr_instr;
- /* addressing mode bits */
- #define DTA 0x01
- #define MEM 0x02
- #define CTR 0x04
- #define ALT 0x08
- #define FITB 0x10
- #define FITW 0x20
- #define PUTW 0x40
- #define PUTL 0x80
- #ifndef extern
- extern short eamode[];
- #else
- short eamode[] = {
- /* 00A */ DTA |ALT,
- /* 01A */ ALT,
- /* 02A */ DTA|MEM|CTR|ALT,
- /* 03A */ DTA|MEM |ALT,
- /* 04A */ DTA|MEM |ALT,
- /* 05A */ DTA|MEM|CTR|ALT|FITW|PUTW | (RELO2 )<<8,
- /* 06A */ DTA|MEM|CTR|ALT |PUTW | (RELO1 )<<8,
- /* 07x */ 0,
- /* 070 */ DTA|MEM|CTR|ALT|FITW|PUTW | (RELO2 )<<8,
- /* 071 */ DTA|MEM|CTR|ALT |PUTL | (RELO4 )<<8,
- /* 072 */ DTA|MEM|CTR |FITW|PUTW | (RELO2|RELPC)<<8,
- /* 073 */ DTA|MEM|CTR |PUTW | (RELO1|RELPC)<<8,
- /* 074x */ 0,
- /* 074B */ DTA|MEM |FITB|PUTW | (RELO1 )<<8,
- /* 074W */ DTA|MEM |FITW|PUTW | (RELO2 )<<8,
- /* 074L */ DTA|MEM |PUTL | (RELO4 )<<8,
- };
- #endif
|