summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--spi/nes_gamepad/nes_gamepad_generated/README165
-rw-r--r--spi/nes_gamepad/nes_gamepad_generated/a.srbin0 -> 477 bytes
-rw-r--r--spi/nes_gamepad/nes_gamepad_generated/a_b.srbin0 -> 479 bytes
-rw-r--r--spi/nes_gamepad/nes_gamepad_generated/b.srbin0 -> 484 bytes
-rw-r--r--spi/nes_gamepad/nes_gamepad_generated/b_select_west.srbin0 -> 487 bytes
-rw-r--r--spi/nes_gamepad/nes_gamepad_generated/east.srbin0 -> 475 bytes
-rw-r--r--spi/nes_gamepad/nes_gamepad_generated/no_button.srbin0 -> 496 bytes
-rw-r--r--spi/nes_gamepad/nes_gamepad_generated/north.srbin0 -> 480 bytes
-rw-r--r--spi/nes_gamepad/nes_gamepad_generated/select.srbin0 -> 480 bytes
-rw-r--r--spi/nes_gamepad/nes_gamepad_generated/south.srbin0 -> 479 bytes
-rw-r--r--spi/nes_gamepad/nes_gamepad_generated/start.srbin0 -> 486 bytes
-rw-r--r--spi/nes_gamepad/nes_gamepad_generated/unconnected.srbin0 -> 471 bytes
-rw-r--r--spi/nes_gamepad/nes_gamepad_generated/west.srbin0 -> 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
new file mode 100644
index 0000000..9d6e964
--- /dev/null
+++ b/spi/nes_gamepad/nes_gamepad_generated/a.sr
Binary files differ
diff --git a/spi/nes_gamepad/nes_gamepad_generated/a_b.sr b/spi/nes_gamepad/nes_gamepad_generated/a_b.sr
new file mode 100644
index 0000000..825b953
--- /dev/null
+++ b/spi/nes_gamepad/nes_gamepad_generated/a_b.sr
Binary files differ
diff --git a/spi/nes_gamepad/nes_gamepad_generated/b.sr b/spi/nes_gamepad/nes_gamepad_generated/b.sr
new file mode 100644
index 0000000..db54ba3
--- /dev/null
+++ b/spi/nes_gamepad/nes_gamepad_generated/b.sr
Binary files differ
diff --git a/spi/nes_gamepad/nes_gamepad_generated/b_select_west.sr b/spi/nes_gamepad/nes_gamepad_generated/b_select_west.sr
new file mode 100644
index 0000000..9dbc313
--- /dev/null
+++ b/spi/nes_gamepad/nes_gamepad_generated/b_select_west.sr
Binary files differ
diff --git a/spi/nes_gamepad/nes_gamepad_generated/east.sr b/spi/nes_gamepad/nes_gamepad_generated/east.sr
new file mode 100644
index 0000000..a7e3ba6
--- /dev/null
+++ b/spi/nes_gamepad/nes_gamepad_generated/east.sr
Binary files differ
diff --git a/spi/nes_gamepad/nes_gamepad_generated/no_button.sr b/spi/nes_gamepad/nes_gamepad_generated/no_button.sr
new file mode 100644
index 0000000..438bb4c
--- /dev/null
+++ b/spi/nes_gamepad/nes_gamepad_generated/no_button.sr
Binary files differ
diff --git a/spi/nes_gamepad/nes_gamepad_generated/north.sr b/spi/nes_gamepad/nes_gamepad_generated/north.sr
new file mode 100644
index 0000000..0a72b9c
--- /dev/null
+++ b/spi/nes_gamepad/nes_gamepad_generated/north.sr
Binary files differ
diff --git a/spi/nes_gamepad/nes_gamepad_generated/select.sr b/spi/nes_gamepad/nes_gamepad_generated/select.sr
new file mode 100644
index 0000000..2224fd7
--- /dev/null
+++ b/spi/nes_gamepad/nes_gamepad_generated/select.sr
Binary files differ
diff --git a/spi/nes_gamepad/nes_gamepad_generated/south.sr b/spi/nes_gamepad/nes_gamepad_generated/south.sr
new file mode 100644
index 0000000..76d2c9b
--- /dev/null
+++ b/spi/nes_gamepad/nes_gamepad_generated/south.sr
Binary files differ
diff --git a/spi/nes_gamepad/nes_gamepad_generated/start.sr b/spi/nes_gamepad/nes_gamepad_generated/start.sr
new file mode 100644
index 0000000..b5e60a7
--- /dev/null
+++ b/spi/nes_gamepad/nes_gamepad_generated/start.sr
Binary files differ
diff --git a/spi/nes_gamepad/nes_gamepad_generated/unconnected.sr b/spi/nes_gamepad/nes_gamepad_generated/unconnected.sr
new file mode 100644
index 0000000..2364d46
--- /dev/null
+++ b/spi/nes_gamepad/nes_gamepad_generated/unconnected.sr
Binary files differ
diff --git a/spi/nes_gamepad/nes_gamepad_generated/west.sr b/spi/nes_gamepad/nes_gamepad_generated/west.sr
new file mode 100644
index 0000000..e03e113
--- /dev/null
+++ b/spi/nes_gamepad/nes_gamepad_generated/west.sr
Binary files differ