⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 m68hc11.h

📁 cygwin, 著名的在win32下模拟unix操作系统的东东
💻 H
📖 第 1 页 / 共 2 页
字号:
#define M6811_OC1M5	0x20	/*                5 */#define M6811_OC1M4	0x10	/*                4 */#define M6811_OC1M3	0x08	/*                3 *//* Flags of the OC1D register.  */#define M6811_OC1D7	0x80#define M6811_OC1D6	0x40#define M6811_OC1D5	0x20#define M6811_OC1D4	0x10#define M6811_OC1D3	0x08/* Flags of the TCTL1 register.  */#define M6811_OM2	0x80	/* Output Mode 2 */#define M6811_OL2	0x40	/* Output Level 2 */#define M6811_OM3	0x20#define M6811_OL3	0x10#define M6811_OM4	0x08#define M6811_OL4	0x04#define M6811_OM5	0x02#define M6811_OL5	0x01/* Flags of the TCTL2 register.  */#define M6811_EDG1B	0x20	/* Input Edge Capture Control 1 */#define M6811_EDG1A	0x10#define M6811_EDG2B	0x08	/* Input 2 */#define M6811_EDG2A	0x04#define M6811_EDG3B	0x02	/* Input 3 */#define M6811_EDG3A	0x01/* Flags of the TMSK1 register.  */#define M6811_OC1I	0x80	/* Output Compare 1 Interrupt */#define M6811_OC2I	0x40	/*		  2	      */#define M6811_OC3I	0x20	/*		  3	      */#define M6811_OC4I	0x10	/*		  4	      */#define M6811_OC5I	0x08	/*		  5	      */#define M6811_IC1I	0x04	/* Input Capture  1 Interrupt */#define M6811_IC2I	0x02	/*		  2	      */#define M6811_IC3I	0x01	/*		  3	      *//* Flags of the TFLG1 register.  */#define M6811_OC1F	0x80	/* Output Compare 1 Flag */#define M6811_OC2F	0x40	/*		  2	 */#define M6811_OC3F	0x20	/*		  3	 */#define M6811_OC4F	0x10	/*		  4	 */#define M6811_OC5F	0x08	/*		  5	 */#define M6811_IC1F	0x04	/* Input Capture  1 Flag */#define M6811_IC2F	0x02	/*		  2	 */#define M6811_IC3F	0x01	/*		  3	 *//* Flags of Timer Interrupt Mask Register 2 (TMSK2).  */#define M6811_TOI       0x80    /* Timer Overflow Interrupt Enable */#define M6811_RTII      0x40    /* RTI Interrupt Enable */#define M6811_PAOVI     0x20    /* Pulse Accumulator Overflow Interrupt En. */#define M6811_PAII      0x10    /* Pulse Accumulator Interrupt Enable */#define M6811_PR1       0x02    /* Timer prescaler */#define M6811_PR0       0x01    /* Timer prescaler */#define M6811_TPR_1     0x00    /* " " prescale div 1 */#define M6811_TPR_4     0x01    /* " " prescale div 4 */#define M6811_TPR_8     0x02    /* " " prescale div 8 */#define M6811_TPR_16    0x03    /* " " prescale div 16 *//* Flags of Timer Interrupt Flag Register 2 (M6811_TFLG2).  */#define M6811_TOF       0x80    /* Timer overflow bit */#define M6811_RTIF      0x40    /* Read time interrupt flag */#define M6811_PAOVF     0x20    /* Pulse accumulator overflow Interrupt flag */#define M6811_PAIF      0x10    /* Pulse accumulator Input Edge " " " *//* Flags of Pulse Accumulator Control Register (PACTL).  */#define M6811_DDRA7     0x80    /* Data direction for port A bit 7 */#define M6811_PAEN      0x40    /* Pulse accumulator system enable */#define M6811_PAMOD     0x20    /* Pulse accumulator mode */#define M6811_PEDGE     0x10    /* Pulse accumulator edge control */#define M6811_RTR1      0x02    /* RTI Interrupt rates select */#define M6811_RTR0      0x01    /* " " " " *//* Flags of the Options register.  */#define M6811_ADPU      0x80    /* A/D Powerup */#define M6811_CSEL      0x40    /* A/D/EE Charge pump clock source select */#define M6811_IRQE      0x20    /* IRQ Edge/Level sensitive */#define M6811_DLY       0x10    /* Stop exit turn on delay */#define M6811_CME       0x08    /* Clock Monitor enable */#define M6811_CR1       0x02    /* COP timer rate select */#define M6811_CR0       0x01    /* COP timer rate select *//* Flags of the HPRIO register.  */#define M6811_RBOOT	0x80	/* Read Bootstrap ROM */#define M6811_SMOD	0x40	/* Special Mode */#define M6811_MDA	0x20	/* Mode Select A */#define M6811_IRV	0x10	/* Internal Read Visibility */#define M6811_PSEL3	0x08	/* Priority Select */#define M6811_PSEL2	0x04#define M6811_PSEL1	0x02#define M6811_PSEL0	0x01/* Some insns used by gas to turn relative branches into absolute ones.  */#define M6811_BRA	0x20#define M6811_JMP	0x7e#define M6811_BSR	0x8d#define M6811_JSR	0xbd#define M6812_JMP       0x06#define M6812_BSR       0x07#define M6812_JSR       0x16/* Instruction code pages. Code page 1 is the default.  *//*#define	M6811_OPCODE_PAGE1	0x00*/#define	M6811_OPCODE_PAGE2	0x18#define	M6811_OPCODE_PAGE3	0x1A#define	M6811_OPCODE_PAGE4	0xCD/* 68HC11 operands formats as stored in the m6811_opcode table.  These   flags do not correspond to anything in the 68HC11 or 68HC12.   They are only used by GAS to recognize operands.  */#define M6811_OP_NONE         0        /* No operand */#define M6811_OP_DIRECT       0x0001   /* Page 0 addressing:   *<val-8bits>  */#define M6811_OP_IMM8         0x0002   /*  8 bits immediat:    #<val-8bits>  */#define M6811_OP_IMM16        0x0004   /* 16 bits immediat:    #<val-16bits> */#define M6811_OP_IND16        0x0008   /* Indirect abs:        <val-16>      */#define M6812_OP_IND16_P2     0x0010   /* Second parameter indirect abs.     */#define M6812_OP_REG          0x0020   /* Register operand 1                 */#define M6812_OP_REG_2        0x0040   /* Register operand 2                 */#define M6811_OP_IX           0x0080   /* Indirect IX:         <val-8>,x     */#define M6811_OP_IY           0x0100   /* Indirect IY:         <val-8>,y     */#define M6812_OP_IDX          0x0200   /* Indirect: N,r N,[+-]r[+-] N:5-bits */#define M6812_OP_IDX_1        0x0400   /* N,r N:9-bits  */#define M6812_OP_IDX_2        0x0800   /* N,r N:16-bits */#define M6812_OP_D_IDX        0x1000   /* Indirect indexed: [D,r] */#define M6812_OP_D_IDX_2      0x2000   /* [N,r] N:16-bits */#define M6812_OP_PAGE         0x4000   /* Page number */#define M6811_OP_MASK         0x07FFF#define M6811_OP_BRANCH       0x00008000 /* Branch, jsr, call */#define M6811_OP_BITMASK      0x00010000 /* Bitmask:             #<val-8>    */#define M6811_OP_JUMP_REL     0x00020000 /* Pc-Relative:         <val-8>     */#define M6812_OP_JUMP_REL16   0x00040000 /* Pc-relative:         <val-16>    */#define M6811_OP_PAGE1        0x0000#define M6811_OP_PAGE2        0x00080000 /* Need a page2 opcode before       */#define M6811_OP_PAGE3        0x00100000 /* Need a page3 opcode before       */#define M6811_OP_PAGE4        0x00200000 /* Need a page4 opcode before       */#define M6811_MAX_OPERANDS    3     /* Max operands: brset <dst> <mask> <b> */#define M6812_ACC_OFFSET      0x00400000 /* A,r B,r D,r			    */#define M6812_ACC_IND         0x00800000 /* [D,r]			    */#define M6812_PRE_INC         0x01000000 /* n,+r   n = -8..8		    */#define M6812_PRE_DEC         0x02000000 /* n,-r			    */#define M6812_POST_INC        0x04000000 /* n,r+			    */#define M6812_POST_DEC        0x08000000 /* n,r-			    */#define M6812_INDEXED_IND     0x10000000 /* [n,r]  n = 16-bits		    */#define M6812_INDEXED         0x20000000 /* n,r    n = 5, 9 or 16-bits	    */#define M6812_OP_IDX_P2       0x40000000/* Markers to identify some instructions.  */#define M6812_OP_EXG_MARKER   0x01000000 /* exg r1,r2 */#define M6812_OP_TFR_MARKER   0x02000000 /* tfr r1,r2 */#define M6812_OP_SEX_MARKER   0x04000000 /* sex r1,r2 */#define M6812_OP_EQ_MARKER    0x80000000 /* dbeq/ibeq/tbeq */#define M6812_OP_DBCC_MARKER  0x04000000 /* dbeq/dbne */#define M6812_OP_IBCC_MARKER  0x02000000 /* ibeq/ibne */#define M6812_OP_TBCC_MARKER  0x01000000#define M6812_OP_TRAP_ID      0x80000000 /* trap #N */#define M6811_OP_HIGH_ADDR    0x01000000 /* Used internally by gas.  */#define M6811_OP_LOW_ADDR     0x02000000#define M68HC12_BANK_VIRT 0x01000000#define M68HC12_BANK_MASK 0x00003fff#define M68HC12_BANK_BASE 0x00008000#define M68HC12_BANK_SHIFT 14#define M68HC12_BANK_PAGE_MASK 0x0ff/* CPU identification.  */#define cpu6811 0x01#define cpu6812 0x02/* The opcode table is an array of struct m68hc11_opcode.  */struct m68hc11_opcode {  const char*    name;     /* Op-code name */  long           format;  unsigned char  size;  unsigned char  opcode;  unsigned char  cycles_low;  unsigned char  cycles_high;  unsigned char  set_flags_mask;  unsigned char  clr_flags_mask;  unsigned char  chg_flags_mask;  unsigned char  arch;};/* Alias definition for 68HC12.  */struct m68hc12_opcode_alias {  const char*   name;  const char*   translation;  unsigned char size;  unsigned char code1;  unsigned char code2;};/* The opcode table.  The table contains all the opcodes (all pages).   You can't rely on the order.  */extern const struct m68hc11_opcode m68hc11_opcodes[];extern const int m68hc11_num_opcodes;/* Alias table for 68HC12.  It translates some 68HC11 insn which are not   implemented in 68HC12 but have equivalent translations.  */extern const struct m68hc12_opcode_alias m68hc12_alias[];extern const int m68hc12_num_alias;#endif /* _OPCODE_M68HC11_H */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -