diff options
-rw-r--r-- | spi/nes_gamepad/nes_gamepad_generated/README | 165 | ||||
-rw-r--r-- | spi/nes_gamepad/nes_gamepad_generated/a.sr | bin | 0 -> 477 bytes | |||
-rw-r--r-- | spi/nes_gamepad/nes_gamepad_generated/a_b.sr | bin | 0 -> 479 bytes | |||
-rw-r--r-- | spi/nes_gamepad/nes_gamepad_generated/b.sr | bin | 0 -> 484 bytes | |||
-rw-r--r-- | spi/nes_gamepad/nes_gamepad_generated/b_select_west.sr | bin | 0 -> 487 bytes | |||
-rw-r--r-- | spi/nes_gamepad/nes_gamepad_generated/east.sr | bin | 0 -> 475 bytes | |||
-rw-r--r-- | spi/nes_gamepad/nes_gamepad_generated/no_button.sr | bin | 0 -> 496 bytes | |||
-rw-r--r-- | spi/nes_gamepad/nes_gamepad_generated/north.sr | bin | 0 -> 480 bytes | |||
-rw-r--r-- | spi/nes_gamepad/nes_gamepad_generated/select.sr | bin | 0 -> 480 bytes | |||
-rw-r--r-- | spi/nes_gamepad/nes_gamepad_generated/south.sr | bin | 0 -> 479 bytes | |||
-rw-r--r-- | spi/nes_gamepad/nes_gamepad_generated/start.sr | bin | 0 -> 486 bytes | |||
-rw-r--r-- | spi/nes_gamepad/nes_gamepad_generated/unconnected.sr | bin | 0 -> 471 bytes | |||
-rw-r--r-- | spi/nes_gamepad/nes_gamepad_generated/west.sr | bin | 0 -> 480 bytes |
13 files changed, 165 insertions, 0 deletions
diff --git a/spi/nes_gamepad/nes_gamepad_generated/README b/spi/nes_gamepad/nes_gamepad_generated/README new file mode 100644 index 0000000..745149a --- /dev/null +++ b/spi/nes_gamepad/nes_gamepad_generated/README @@ -0,0 +1,165 @@ +------------------------------------------------------------------------------- +NES Gamepad signalling +------------------------------------------------------------------------------- + +Synthetically generated NES gamepad signalling. + +SPI settings are always: + +Clock polarity = 1 +Clock phase = 0 +Bit order = msb-first +Word size = 8 + +Chip-select is not used and must not be assigned to any channel. + + ___ + GND |o \ + CUP |o o| VCC + OUT 0 |o o| D3 + D1 |o o| D4 + ----- +NES Gamepad Connector + +VCC - Power 5V +GND - Ground +CUP - Shift register clock (CLK) +OUT 0 - Shift register latch (optional) +D1 - Gamepad data (MISO) +D3 - Data (unused) +D4 - Data (unused) + +Data pins D3 and D4 are not used by the standard game pad but by special +controllers like the Nintento Zapper light gun. + + +Logic analyzer setup +-------------------- + +The logic analyzer used was a DreamSourceLab DSLogic Plus (at 10 MHz): + + Probe NES gamepad + ----------------------- + 0 OUT 0 + 1 D1 + 2 CUP + + +a.sr +---- + +Button press of button 'A'. + +MISO bits: 01111111 +MISO data: 7F +Button States: A + + +b.sr +---- + +Button press of button 'B'. + +MISO bits: 10111111 +MISO data: BF +Button States: B + + +select.sr +--------- + +Button press of button 'Select'. + +MISO bits: 11011111 +MISO data: DF +Button States: Select + + +start.sr +-------- + +Button press of button 'Start'. + +MISO bits: 11101111 +MISO data: EF +Button States: Start + + +north.sr +-------- + +Button press of button 'North'. + +MISO bits: 11110111 +MISO data: F7 +Button States: North + + +south.sr +-------- + +Button press of button 'South'. + +MISO bits: 11111011 +MISO data: FB +Button States: South + + +west.sr +------- + +Button press of button 'West'. + +MISO bits: 11111101 +MISO data: FD +Button States: West + + +east.sr +------- + +Button press of button 'East'. + +MISO bits: 11111110 +MISO data: FE +Button States: East + + +a_b.sr +------ + +Button press of button 'A' and 'B'. + +MISO bits: 00111111 +MISO data: 3F +Button States: A + B + + +b_select_west.sr +---------------- + +Button press of button 'B' and 'Select' and 'West'. + +MISO bits: 10011101 +MISO data: 9D +Button States: B + Select + West + + +no_button.sr +------------ + +Controller connected but no button pressed. + +MISO bits: 11111111 +MISO data: FF +Button States: No button is pressed + + +unconnected.sr +-------------- + +Gamepad not connected. + +MISO bits: 00000000 +MISO data: 00 +Button States: Gamepad is not connected. diff --git a/spi/nes_gamepad/nes_gamepad_generated/a.sr b/spi/nes_gamepad/nes_gamepad_generated/a.sr Binary files differnew file mode 100644 index 0000000..9d6e964 --- /dev/null +++ b/spi/nes_gamepad/nes_gamepad_generated/a.sr diff --git a/spi/nes_gamepad/nes_gamepad_generated/a_b.sr b/spi/nes_gamepad/nes_gamepad_generated/a_b.sr Binary files differnew file mode 100644 index 0000000..825b953 --- /dev/null +++ b/spi/nes_gamepad/nes_gamepad_generated/a_b.sr diff --git a/spi/nes_gamepad/nes_gamepad_generated/b.sr b/spi/nes_gamepad/nes_gamepad_generated/b.sr Binary files differnew file mode 100644 index 0000000..db54ba3 --- /dev/null +++ b/spi/nes_gamepad/nes_gamepad_generated/b.sr diff --git a/spi/nes_gamepad/nes_gamepad_generated/b_select_west.sr b/spi/nes_gamepad/nes_gamepad_generated/b_select_west.sr Binary files differnew file mode 100644 index 0000000..9dbc313 --- /dev/null +++ b/spi/nes_gamepad/nes_gamepad_generated/b_select_west.sr diff --git a/spi/nes_gamepad/nes_gamepad_generated/east.sr b/spi/nes_gamepad/nes_gamepad_generated/east.sr Binary files differnew file mode 100644 index 0000000..a7e3ba6 --- /dev/null +++ b/spi/nes_gamepad/nes_gamepad_generated/east.sr diff --git a/spi/nes_gamepad/nes_gamepad_generated/no_button.sr b/spi/nes_gamepad/nes_gamepad_generated/no_button.sr Binary files differnew file mode 100644 index 0000000..438bb4c --- /dev/null +++ b/spi/nes_gamepad/nes_gamepad_generated/no_button.sr diff --git a/spi/nes_gamepad/nes_gamepad_generated/north.sr b/spi/nes_gamepad/nes_gamepad_generated/north.sr Binary files differnew file mode 100644 index 0000000..0a72b9c --- /dev/null +++ b/spi/nes_gamepad/nes_gamepad_generated/north.sr diff --git a/spi/nes_gamepad/nes_gamepad_generated/select.sr b/spi/nes_gamepad/nes_gamepad_generated/select.sr Binary files differnew file mode 100644 index 0000000..2224fd7 --- /dev/null +++ b/spi/nes_gamepad/nes_gamepad_generated/select.sr diff --git a/spi/nes_gamepad/nes_gamepad_generated/south.sr b/spi/nes_gamepad/nes_gamepad_generated/south.sr Binary files differnew file mode 100644 index 0000000..76d2c9b --- /dev/null +++ b/spi/nes_gamepad/nes_gamepad_generated/south.sr diff --git a/spi/nes_gamepad/nes_gamepad_generated/start.sr b/spi/nes_gamepad/nes_gamepad_generated/start.sr Binary files differnew file mode 100644 index 0000000..b5e60a7 --- /dev/null +++ b/spi/nes_gamepad/nes_gamepad_generated/start.sr diff --git a/spi/nes_gamepad/nes_gamepad_generated/unconnected.sr b/spi/nes_gamepad/nes_gamepad_generated/unconnected.sr Binary files differnew file mode 100644 index 0000000..2364d46 --- /dev/null +++ b/spi/nes_gamepad/nes_gamepad_generated/unconnected.sr diff --git a/spi/nes_gamepad/nes_gamepad_generated/west.sr b/spi/nes_gamepad/nes_gamepad_generated/west.sr Binary files differnew file mode 100644 index 0000000..e03e113 --- /dev/null +++ b/spi/nes_gamepad/nes_gamepad_generated/west.sr |