Wire the schematic as shown. I recommend doing this on a breadboard. And remember this schematic is based on the Arduino Duemilanove when looking at the pin numbers on the left.
For the SD card, I used a microSD card with a converter that made it into a full sized SD card. I soldered pins onto the converter making it possible to plug it into a breadboard. However you do it, make sure you take note of the pin numbers on the card and wire them correctly.
The pushbutton and switch are not required. If you don't have any handy just use hook up wires that you connect to ground when you want to "push" them, and unplug them when you're done. We will be using the pullups built into the arduino, so none are needed externally.
Note that the grounds from both the arduino and the NES are tied together. Also that the 4021 IC gets power from the NES, not the arduino.
If you are modifying this to work on another device, the NES LATCH signal MUST go into an interrupt input. Also the SD card must be connected connected to the SPI interface. For more information that, read here
, namely the "Physical Connections" section, and substitute your correct pin numbers. Also note that I left pins 0 and 1 on the arduino disconnected. These are for TX/RD to the computer, and will need to be disconnected every time when programming the device, so I worked around them completely.