]> sigrok.org Git - sigrok-dumps.git/blob - spi/nes_gamepad/nes_gamepad_generated/README
avr_isp: add dump for ATmega328/P
[sigrok-dumps.git] / spi / nes_gamepad / nes_gamepad_generated / README
1 -------------------------------------------------------------------------------
2 NES Gamepad signalling
3 -------------------------------------------------------------------------------
4
5 Synthetically generated NES gamepad signalling.
6
7 SPI settings are always:
8
9 Clock polarity = 1
10 Clock phase    = 0
11 Bit order      = msb-first
12 Word size      = 8
13
14 Chip-select is not used and must not be assigned to any channel.
15
16         ___
17    GND |o  \
18    CUP |o o| VCC
19  OUT 0 |o o| D3
20     D1 |o o| D4
21        -----
22 NES Gamepad Connector
23
24 VCC   - Power 5V
25 GND   - Ground
26 CUP   - Shift register clock (CLK)
27 OUT 0 - Shift register latch (optional)
28 D1    - Gamepad data (MISO)
29 D3    - Data (unused)
30 D4    - Data (unused)
31
32 Data pins D3 and D4 are not used by the standard game pad but by special
33 controllers like the Nintento Zapper light gun.
34
35
36 Logic analyzer setup
37 --------------------
38
39 The logic analyzer used was a DreamSourceLab DSLogic Plus (at 10 MHz):
40
41   Probe       NES gamepad
42   -----------------------
43   0           OUT 0
44   1           D1
45   2           CUP
46
47
48 a.sr
49 ----
50
51 Button press of button 'A'.
52
53 MISO bits: 01111111
54 MISO data: 7F
55 Button States: A
56
57
58 b.sr
59 ----
60
61 Button press of button 'B'.
62
63 MISO bits: 10111111
64 MISO data: BF
65 Button States: B
66
67
68 select.sr
69 ---------
70
71 Button press of button 'Select'.
72
73 MISO bits: 11011111
74 MISO data: DF
75 Button States: Select
76
77
78 start.sr
79 --------
80
81 Button press of button 'Start'.
82
83 MISO bits: 11101111
84 MISO data: EF
85 Button States: Start
86
87
88 north.sr
89 --------
90
91 Button press of button 'North'.
92
93 MISO bits: 11110111
94 MISO data: F7
95 Button States: North
96
97
98 south.sr
99 --------
100
101 Button press of button 'South'.
102
103 MISO bits: 11111011
104 MISO data: FB
105 Button States: South
106
107
108 west.sr
109 -------
110
111 Button press of button 'West'.
112
113 MISO bits: 11111101
114 MISO data: FD
115 Button States: West
116
117
118 east.sr
119 -------
120
121 Button press of button 'East'.
122
123 MISO bits: 11111110
124 MISO data: FE
125 Button States: East
126
127
128 a_b.sr
129 ------
130
131 Button press of button 'A' and 'B'.
132
133 MISO bits: 00111111
134 MISO data: 3F
135 Button States: A + B
136
137
138 b_select_west.sr
139 ----------------
140
141 Button press of button 'B' and 'Select' and 'West'.
142
143 MISO bits: 10011101
144 MISO data: 9D
145 Button States: B + Select + West
146
147
148 no_button.sr
149 ------------
150
151 Controller connected but no button pressed.
152
153 MISO bits: 11111111
154 MISO data: FF
155 Button States: No button is pressed
156
157
158 unconnected.sr
159 --------------
160
161 Gamepad not connected.
162
163 MISO bits: 00000000
164 MISO data: 00
165 Button States: Gamepad is not connected.