|
*sighs*
$4201 -- Programmble I/O port (OUT-PORT)
* This is a Programmble I/O port (OUT-PORT). The written data will be output directly from OUT-PORT.
* When this is used as a INPORT, "1" should be written to the particular bit which will be used as a IN-PORT. The input data can be read by register $4213.
* Only D6 and D7 can be used by the SNES. Joy Controller 1 and 3 (connector 1) has signal at D6 and Joy Controller 2 and 4 (connector 2) has signal at D7. Signal at D7 is also an external latch input signal (see register $213F, bit D6).
The reason $FF is written to this register is because it's the proper initialisation value according to Nintendo of Japan and Nintendo of America. Proper initialisation values are as follows (and not doing these will result in random behaviour):
$2100 = $8F (forced blank) $2101 = $00 $2102 = $00 $2103 = $00 $2104 = (OAM Data) $2105 = $00 $2106 = $00 $2107 = $00 $2108 = $00 $2109 = $00 $210A = $00 $210B = $00 $210C = $00 $210D = $00 (low) and $00 (high) $210E = $00 (low) and $00 (high) $210F = $00 (low) and $00 (high) $2110 = $00 (low) and $00 (high) $2111 = $00 (low) and $00 (high) $2112 = $00 (low) and $00 (high) $2113 = $00 (low) and $00 (high) $2114 = $00 (low) and $00 (high) $2115 = $80 $2116 = $00 $2117 = $00 $2118 = (VRAM Data) $2119 = (VRAM Data) $211A = $00 $211B = $00 (low) and $01 (high) $211C = $00 (low) and $00 (high) $211D = $00 (low) and $00 (high) $211E = $00 (low) and $01 (high) $211F = $00 (low) and $00 (high) $2120 = $00 (low) and $00 (high) $2121 = $00 $2122 = (CG Data) $2123 = $00 $2124 = $00 $2125 = $00 $2126 = $00 $2127 = $00 $2128 = $00 $2129 = $00 $212A = $00 $212B = $00 $212C = $00 $212D = $00 $212E = $00 $2130 = $30 $2131 = $00 $2132 = $E0 $2133 = $00 $4200 = $00 $4201 = $FF $4202 = $00 $4203 = $00 $4204 = $00 $4205 = $00 $4206 = $00 $4207 = $00 $4208 = $00 $4209 = $00 $420A = $00 $420B = $00 $420C = $00 $420D = $00
I never thought it was possible to find someone who complained more than I did. Sheesh.
-- jdc
|