diff options
author | patacongo <patacongo@42af7a65-404d-4744-a932-0658087f49c3> | 2008-02-14 20:53:15 +0000 |
---|---|---|
committer | patacongo <patacongo@42af7a65-404d-4744-a932-0658087f49c3> | 2008-02-14 20:53:15 +0000 |
commit | eba1f80b6bf73a0006e43c89b4fc96362bb1a20b (patch) | |
tree | 5066baebebfb0681bdcb113373ebae8b6f53e42d /nuttx/arch/z80/include | |
parent | 32051bc141f4b729a8738fc19633a4010201348b (diff) | |
download | nuttx-eba1f80b6bf73a0006e43c89b4fc96362bb1a20b.tar.gz nuttx-eba1f80b6bf73a0006e43c89b4fc96362bb1a20b.tar.bz2 nuttx-eba1f80b6bf73a0006e43c89b4fc96362bb1a20b.zip |
Fleshing out ez8 context switch logic
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@684 42af7a65-404d-4744-a932-0658087f49c3
Diffstat (limited to 'nuttx/arch/z80/include')
-rw-r--r-- | nuttx/arch/z80/include/z8/irq.h | 23 |
1 files changed, 13 insertions, 10 deletions
diff --git a/nuttx/arch/z80/include/z8/irq.h b/nuttx/arch/z80/include/z8/irq.h index 15979c0a6..25d6d3ef4 100644 --- a/nuttx/arch/z80/include/z8/irq.h +++ b/nuttx/arch/z80/include/z8/irq.h @@ -236,11 +236,12 @@ #define XCPT_RR10 (5) #define XCPT_RR12 (6) #define XCPT_R1R4 (7) -#define XCPT_SP (8) /* Index 8: SP[8:15] */ -#define XCPT_I (9) /* Index 9: FLAGS */ -#define XCPT_PC (10) /* Index 10: PC[8:15] */ +#define XCPT_IRQCTL (8) /* Index 8: IRQCTL register */ +#define XCPT_SP (9) /* Index 9: SP[8:15] */ +#define XCPT_RPFLAGS (10) /* Index 10: RP (MS) and FLAGS (LS) */ +#define XCPT_PC (11) /* Index 11: PC[8:15] */ -#define XCPTCONTEXT_REGS (11) +#define XCPTCONTEXT_REGS (12) /* Byte offsets: */ @@ -260,12 +261,14 @@ #define XCPT_R13_OFFS (2*XCPT_RR12+1) #define XCPT_R14_OFFS (2*XCPT_R1R4) #define XCPT_R15_OFFS (2*XCPT_R1R4+1) -#define XCPT_SPH_OFFS (2*XCPT_SP) /* Offset 16: SP[8:15] */ -#define XCPT_SPL_OFFS (2*XCPT_SP+1) /* Offset 17: SP[0:7] */ -#define XCPT_RP_OFFS (2*XCPT_I) /* Offset 18: Register pointer */ -#define XCPT_FLAGS_OFFS (2*XCPT_I+1) /* Offset 19: FLAGS */ -#define XCPT_PCH_OFFS (2*XCPT_PC) /* Offset 20: PC[8:15] */ -#define XCPT_PCL_OFFS (2*XCPT_PC+1) /* Offset 21: PC[0:7] */ +#define XCPT_UNUSED_OFFS (2*XCPT_IRQCTL) /* Offset 16: Unused (zero) */ +#define XCPT_IRQCTL_OFFS (2*XCPT_IRQCTL+1) /* offset 17: IRQCTL register */ +#define XCPT_SPH_OFFS (2*XCPT_SP) /* Offset 18: SP[8:15] */ +#define XCPT_SPL_OFFS (2*XCPT_SP+1) /* Offset 19: SP[0:7] */ +#define XCPT_RP_OFFS (2*XCPT_I) /* Offset 20: Register pointer */ +#define XCPT_FLAGS_OFFS (2*XCPT_I+1) /* Offset 21: FLAGS */ +#define XCPT_PCH_OFFS (2*XCPT_PC) /* Offset 22: PC[8:15] */ +#define XCPT_PCL_OFFS (2*XCPT_PC+1) /* Offset 23: PC[0:7] */ #define XCPTCONTEXT_SIZE (2*XCPTCONTEXT_REGS) |