Add Dreamcast pinout

This commit is contained in:
Travis Burtrum 2021-01-03 20:29:09 -05:00
parent 8849140029
commit 9e4ce62a21
2 changed files with 53 additions and 27 deletions

View File

@ -25,33 +25,33 @@ Wiring
![DB-25 Pinout](images/db25pins.jpg) ![DB-25 Pinout](images/db25pins.jpg)
| DB-25 Pins | Arduino Pro Micro GPIO | ESP32 GPIO | Radio | SNES | PSX | N64 | Gamecube | Genesis | | DB-25 Pins | Arduino Pro Micro GPIO | ESP32 GPIO | Radio | SNES | PSX | N64 | Gamecube | Genesis | Dreamcast |
|---------------|------------------------|------------|----------|--------|--------|----------|----------|-------------| |---------------|------------------------|------------|----------|---------|--------|----------|----------|-------------|-----------|
| 1 TX | 1 | 19 | - | LATCH | - | - | - | P1-1 | | 1 TX | 1 | 19 | - | LATCH | - | - | - | P1-1 | P1-DATA1 |
| 2 SDA | 2 | 21 | - | CLOCK | DATA | DATA1 | DATA1 | P1-3 | | 2 SDA | 2 | 21 | - | CLOCK | DATA | P1-DATA | P1-DATA | P1-3 | P1-DATA5 |
| 3 SCL | 3 | 22 | - | DATA1 | CMD | - | - | P1-4 | | 3 SCL | 3 | 22 | - | P1-DATA | CMD | - | - | P1-4 | - |
| 4 Analog | 4 | 15 | - | DATA2 | ATT | - | - | P1-6 | | 4 Analog | 4 | 15 | - | P2-DATA | ATT | - | - | P1-6 | - |
| 5 Digital | 5 | 16 | - | DATA3 | CLK | - | - | P1-7 | | 5 Digital | 5 | 16 | - | P3-DATA | CLK | - | - | P1-7 | - |
| 6 Analog | 6 | 2 | - | DATA4 | - | - | - | P1-9 | | 6 Analog | 6 | 2 | - | P4-DATA | - | - | - | P1-9 | - |
| 7 Digital | 7 | 17 | CE | - | - | - | - | P2-7* | | 7 Digital | 7 | 17 | CE | - | - | - | - | P2-7* | - |
| 8 Analog | 8 | 4 | CSN | - | - | - | - | - | | 8 Analog | 8 | 4 | CSN | - | - | - | - | - | - |
| 9 Analog | 9 > 1k Ω | 35 > 1k Ω | - | 330 Ω | 100 Ω | 220 Ω | 680 Ω | 470 Ω | | 9 Analog | 9 > 1k Ω | 35 > 1k Ω | - | 330 Ω | 100 Ω | 220 Ω | 680 Ω | 470 Ω | 820 Ω |
| 10 Analog | 10 | 32 | - | - | - | - | - | - | | 10 Analog | 10 | 32 | - | - | - | - | - | - | - |
| 11 RX | 0 | 18 | - | - | - | - | - | P1-2 | | 11 RX | 0 | 18 | - | - | - | - | - | P1-2 | - |
| 12 - | - | - | - | - | - | - | - | - | | 12 - | - | - | - | - | - | - | - | - | - |
| 13 - | - | - | - | - | - | - | - | - | | 13 - | - | - | - | - | - | - | - | - | - |
| 14 MISO | 14 | 12 | MISO | - | - | - | - | P2-6* | | 14 MISO | 14 | 12 | MISO | - | - | - | - | P2-6* | - |
| 15 SCLK | 15 | 14 | SCLK | - | - | - | - | P2-9* | | 15 SCLK | 15 | 14 | SCLK | - | - | - | - | P2-9* | - |
| 16 MOSI | 16 | 13 | MOSI | - | - | - | - | - | | 16 MOSI | 16 | 13 | MOSI | - | - | - | - | - | - |
| 17 - | - | - | - | - | - | - | - | - | | 17 - | - | - | - | - | - | - | - | - | - |
| 18 Analog | 18 | 27 | - | - | - | - | - | P2-1 | | 18 Analog | 18 | 27 | - | - | - | - | - | P2-1 | - |
| 19 Analog | 19 | 26 | - | - | - | - | - | P2-2 | | 19 Analog | 19 | 26 | - | - | - | - | - | P2-2 | - |
| 20 Analog | 20 | 25 | - | - | - | - | - | P2-3 | | 20 Analog | 20 | 25 | - | - | - | - | - | P2-3 | - |
| 21 Analog | 21 | 33 | - | - | - | - | - | P2-4 | | 21 Analog | 21 | 33 | - | - | - | - | - | P2-4 | - |
| 22 - | - | - | - | - | - | - | - | - | | 22 - | - | - | - | - | - | - | - | - | - |
| 23 3.3V VCC | - | 3.3V VCC | 3.3V VCC | - | - | 3.3V VCC | 3.3V VCC | - | | 23 3.3V VCC | - | 3.3V VCC | 3.3V VCC | - | - | 3.3V VCC | 3.3V VCC | - | - |
| 24 5V VCC | 5V VCC OUT | 5V VCC | 5V VCC | 5V VCC | 5V VCC | - | 5V VCC | PX-5 5V VCC | | 24 5V VCC | 5V VCC OUT | 5V VCC | 5V VCC | 5V VCC | 5V VCC | - | 5V VCC | PX-5 5V VCC | 5V VCC |
| 25 GND | GND | GND | GND | GND | - | GND | GND | PX-8 GND | | 25 GND | GND | GND | GND | GND | - | GND | GND | PX-8 GND | GND |
* 2nd player Genesis is incompatible with Radio because it uses the same pins, 1 player Genesis is compatible * 2nd player Genesis is incompatible with Radio because it uses the same pins, 1 player Genesis is compatible
Ω This is optional and only used for dongle detection. On the microcontroller side, put a 1k resistor between DB-25 pin 9 and VCC (3.3v for ESP32, 5V for Micro). On each controller dongle, put a resistor of the given value between DB-25 pin 9 and GND. Ω This is optional and only used for dongle detection. On the microcontroller side, put a 1k resistor between DB-25 pin 9 and VCC (3.3v for ESP32, 5V for Micro). On each controller dongle, put a resistor of the given value between DB-25 pin 9 and GND.

26
src/Dreamcast.cpp Normal file
View File

@ -0,0 +1,26 @@
/*
LOOKING AT THE PLUG ON FRONT OF CONSOLE (not coming from controller)
6
---------------------
| o |
| |
| 1 3 5 |
| o o o |
| |
\ o o /
\ 2 4 /
`-. .-'
~-._.-~
PIN # USAGE (colors from my extension cable, check your own)
1: DATA1 - orange
2: 5V VCC - green
3: GND - white
4: SENSE - blue
5: DATA5 - red
6: GND - grey
Connect both GNDs and SENSE together.
*/