oberheimmatrix1000
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revisionNext revisionBoth sides next revision | ||
oberheimmatrix1000 [2016-07-22 22:03] – pushbutton assignments gde | oberheimmatrix1000 [2016-08-31 11:52] – [Matrix 6/100 links] gde | ||
---|---|---|---|
Line 5: | Line 5: | ||
http:// | http:// | ||
- | ===== github | + | ===== Schematics ===== |
+ | |||
+ | {{ : | ||
+ | |||
+ | ===== Github | ||
https:// | https:// | ||
Line 37: | Line 41: | ||
http:// | http:// | ||
- | Gareth is working on a 6809 plugin for radare2 specifically for this project. | + | Gareth is working on a [[https:// |
+ | |||
+ | ==== Matrix 6/100 links ==== | ||
+ | |||
+ | http:// | ||
+ | |||
+ | http:// | ||
+ | |||
+ | http:// | ||
===== Memory Map ===== | ===== Memory Map ===== | ||
< | < | ||
- | 0x0000 | + | 0x0000-0x1fff: |
I/O* | I/O* | ||
U819: { | U819: { | ||
- | 0x0000 T1* | + | 0x0000-0x03ff |
- | 0x0400 T2* | + | 0x0400-0x07ff |
- | 0x0800 T3* | + | 0x0800-0x0bff |
- | 0x0c00 T4* | + | 0x0c00-0x0fff |
+ | T1-T4 are 82C54 Programmable Timers | ||
0x1000 DAC | 0x1000 DAC | ||
0x1000 | 0x1000 | ||
Line 70: | Line 84: | ||
b10000000 - DAC 4 | b10000000 - DAC 4 | ||
- | 0x1400 UORV* | + | 0x1400-0x17ff |
- | $ U809 - 68850 - UART | + | |
- | 0x1800 SW* | + | |
+ | 0x1406 - Control/ | ||
+ | Control (write-only) { | ||
+ | Bit 0: Counter Divide Select 0 (CR0) | ||
+ | Bit 1: Counter Divide Select 1 (CR1) | ||
+ | Bit 2: Word Select 1 (CR2) | ||
+ | Bit 3: Word Select 2 (CR3) | ||
+ | Bit 4: Word Select 3 (CR4) | ||
+ | Bit 5: Transmit Control 1 (CR5) | ||
+ | Bit 6: Transmit Control 2 (CR6) | ||
+ | Bit 7: Receive Interrupt Enable (CR7) | ||
+ | } | ||
+ | Status (read-only) { | ||
+ | Bit 0: Receive Data Register Full (RDRF) | ||
+ | Bit 1: Transmit Data Register Empty (TDRE) | ||
+ | Bit 2: Data Carrier Detect (/DCD) active low | ||
+ | Bit 3: Clear To Send (/CTS) active low | ||
+ | Bit 4: Framing error (FE) | ||
+ | Bit 5: Receiver Overrun (OVRN) | ||
+ | Bit 6: Parity Error (PE) | ||
+ | Bit 7: Interrupt Request (IRQ) | ||
+ | } | ||
+ | } | ||
+ | 0x1407 - Transmit/ | ||
+ | } | ||
+ | 0x1600 - 82C54 Programmable Timer (if A9 = 1) | ||
+ | This timer is the source of /IRQ back to the 6809 | ||
+ | } | ||
+ | |||
+ | 0x1800-0x1bff | ||
Front panel switches: { | Front panel switches: { | ||
0x1800: Read push buttons 0-7 | 0x1800: Read push buttons 0-7 | ||
Line 87: | Line 130: | ||
} | } | ||
} | } | ||
- | 0x1c00 | + | 0x1c00-0x1fff WRITE ONLY |
U820: { | U820: { | ||
- | 0x1c00 L1* | + | 0x1c00-0x1c7f |
- | | + | |
- | | + | |
- | | + | |
- | $ U818 - 74LS174 - 6bit latch { | + | $ U818 - 74LS174 - 6bit latch, address bank register |
b000001 - VA13 | b000001 - VA13 | ||
b000010 - VA14 | b000010 - VA14 | ||
Line 101: | Line 144: | ||
b100000 | b100000 | ||
} | } | ||
- | | + | |
- | | + | |
- | | + | |
(LED1 to 3 are 7-segment displays labelled DISP 1 to 3 respectively. Segment mapping tbd) | (LED1 to 3 are 7-segment displays labelled DISP 1 to 3 respectively. Segment mapping tbd) | ||
- | | + | |
6 single LEDs { | 6 single LEDs { | ||
0x01 - CHANNEL | 0x01 - CHANNEL | ||
Line 142: | Line 185: | ||
0x8000 Rom Base (27256) | 0x8000 Rom Base (27256) | ||
0x8003 Reset Handler | 0x8003 Reset Handler | ||
- | 0x84b4 IRQ Handler | + | 0x84b4 IRQ Handler |
0x85e3 FIRQ Handler (Serial IRQ) | 0x85e3 FIRQ Handler (Serial IRQ) | ||
0xFFF0 Vector Table | 0xFFF0 Vector Table | ||
Line 148: | Line 191: | ||
</ | </ | ||
+ | ===== Component Datasheets ===== | ||
+ | ==== 6850 UART ==== | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | |||
+ | ===== Using r2 ===== | ||
+ | |||
+ | To start radare2 on the image: | ||
+ | |||
+ | < | ||
+ | $ r2 -a mc6809 -m 0x8000 27256.bin | ||
+ | </ |
oberheimmatrix1000.txt · Last modified: 2016-09-26 20:21 by gde