Differences
This shows you the differences between two versions of the page.
Next revision | Previous revisionLast revisionBoth sides next revision | ||
documentations:devices:6809 [2014/03/19 20:52] – created pulkomandy | documentations:devices:6809 [2014/09/19 06:03] – [Download] pulkomandy | ||
---|---|---|---|
Line 3: | Line 3: | ||
===== Technical description ===== | ===== Technical description ===== | ||
- | Registers: | + | ==== Registers |
- | * A and B: two 8-bit accumulators, | + | |
- | * X and Y: two index registers, used as memory pointers | + | |
- | * U and S: user and system stacks | + | |
- | * CC: condition flags register | + | |
- | * DP: direct-page pointer | + | |
- | ==== Instruction set ==== | + | ==== Instruction set and addressing |
- | This is already covered elsewhere on the internet. | + | This is already covered elsewhere on the internet. |
- | + | ||
- | ==== Addressing | + | |
- | This is already covered elsewhere on the internet. | + | |
+ | * [[http:// | ||
+ | * [[http:// | ||
+ | * [[http:// | ||
====Interrupts==== | ====Interrupts==== | ||
- | * Reset: at system reset. | + | |
- | * NMI: non-maskable. | + | * NMI: non-maskable. |
- | * IRQ | + | * IRQ: all registers are saved on the stack before processing the interrupt. |
- | * FIQ: registers | + | * FIQ: Only PC and CC are saved (faster than IRQ, but needs manual save of registers |
- | * SWI1, 2, and 3: software interrupts triggered by the SWI instruction. | + | * SWI1, 2, and 3: software interrupts triggered by the SWI instructions. (On Thomson machines with standard ROM, only SWI1 is useable, the others are hardcoded to do nothing). |
+ | |||
+ | The 6809 interrupts fetch an address from memory, and jumps to it. The interrupt table is at a fixed address at the top of memory: | ||
+ | * FFF2: SWI3 | ||
+ | * FFF4: SWI2 | ||
+ | * FFF6: FIRQ | ||
+ | * FFF8: IRQ | ||
+ | * FFFA: SWI | ||
+ | * FFFC: NMI | ||
+ | * FFFE: Reset | ||
===== Download ===== | ===== Download ===== | ||
- | Datasheet, | + | * Complete |
+ | * {{: | ||
+ | * Datasheet |