SST-6809
Hardware
- Core board: https://github.com/KenWillmott/SST-6809
Part | Integrated Circuit |
---|---|
U1 | Motorola MC68B09 or Hitachi HD63C09 MPU |
U2 | Texas Instruments SN74HCT273N Octal Flip-Flop with Reset |
U3 | Alliance AS6C4008-55PCN 4Mbit / 512KB SRAM |
U4 | Motorola MC68B50 or Hitachi HD63B50 ACIA |
U5 | Dallas Semiconductor DS1813 EconoReset |
U6 | Phillips 74HCT02N Quad 2-Input NOR |
U7 | Dallas Semiconductor DS1210 Nonvolatile Controller |
U8 | Shenzhen Honglifa HLF SN74HCT139N Dual 2-to-4 Line Decoder / Demultiplexer |
U9 | Atmel At28C256 256Kbit / 32KB Parallel EEPROM |
U10 | Motorola MC74HCT138AN 3-to-8 Line Decoder / Demultiplexer |
U11 | Dallas Semiconductor DS1233 EconoReset |
U12 | |
U13 | Phillips 74HCT20N Dual 4-input NAND |
M8 Bus
- M8 Game Board: https://github.com/KenWillmott/M8-Game-Board
- M8 6809 Mezzanine: https://github.com/KenWillmott/M8-6809-Mezzanine
- M8-compatible 6522 prototyping board: https://github.com/KenWillmott/6522-proto
M8 bus fully supports DMA with the 6809 as well
Software
Getting Started
Plug in USB-C power from a serial port on a Debian GNU/Linux machine.
Install minicom if you haven't already:
sudo aptitude install minicom
Hunt down your USB device pathlist:
ls /dev/tty*
Start minicom with the path to your USB device (-D pathlist):
minicom -D /dev/ttyUSB0
Press RESET on the SST-6809 and you should see:
ASSIST09 >
Hexadecimal Loader
You can use ASSIST09 to load data and code as a hexadecimal loader with these three starting commands:
Dump out a memory range
>D 0000 0100
Display/Edit memory
>M 0000 00-
Simply pick a memory address and start typing in hex codes as 2 digits, and then hit space to go to the next byte
“Go To” an address to start running code:
>G 1000
Load Motorola S-Records
You can also load assembled code as S-record files:
>L
You can load S19 records using copy and past into the terminal emulator window, or use minicom's ASCII upload mode:
[CTRL]+[A] [S] Choose ascii Choose a file name
If the load succeeds, you will see:
>00
If the load fails, you will see:
? >
Once loaded, use the G <start address> command to start the loaded program running.
TinyBASIC and TSC BASIC from Jeff Tranter's 6809 SBC repo both load and run with these steps.
Start TinyBASIC with:
>G 020D :
Start TSC BASIC with:
>G 1000 !
The Lost Wizard Assembler (lwasm) can output assembled code as S-records, usually saved as .s19 files.
Documentation
- M8 Game Board Wiki: https://github.com/KenWillmott/M8-Game-Board/wiki
Explorations
- Learn the Memory Map and Bank Switching
- Adapt PSYMON 1.20B to the SST-6809
- Adapt BUGGY 1.01 to the SST-6809
Future ...
With the addition of DriveWire or other access to storage, loading full 6809 operating systems may become possible.
- Flex 6809?
- CP/M?
- NitrOS-9 Level 1?
- NitrOS-9 Level 2?
- Fuzix?
RTS
Return to top