Fabricación de un Cartridge Atari 2600
How I built my Custom Atari 2600 Cartridge
Now, in english.
Cómo se hizo
Aquí muestro como fabriqué mi propio cartridge Atari 2600. Esta página es un poco técnica (no mucho).
Esta es la foto del Cartridge. Se pueden apreciar la ROM, el Dipswitch, un arreglo de resistencias de 4.7 K y un 4011, usado como inversor. Todo en un cartridge Atari 2600 descartado. Made in Chile.
Pueden ver una imagen ampliada aquí (58 K JPG).
Primer paso: Obtención de la ROM
Bueno, para empezar, yo tenía una vieja máquina Clon de Atari 2600, que no funcionaba, pero sospechaba que la ROM estaba buena, ya que tenía imagen, pero no se podía jugar.
Atari 2600 Clon: Dice 208 juegos, pero en realidad son 160.
Extraje la ROM, que no estaba soldada, sino que en una base (afortunadamente).
Tenía el siguiente aspecto:
Nótese que son dos ROM, una montada sobre la otra. Una memoria de 4M (512Kx8), con 128 juegos de 4 K y encima una de 512 K (64Kx8) con 32 juegos de 2 K. Esto es algo así como una 27C512 sobre una 27C4001, sugiero que tengan a mano las hojas de datos de dichas EPROMS para entender mejor todo esto. El pin 22 de la ROM inferior (OE), que coincide con el pin 20 de la ROM superior, se manejaba manualmente con un switch externo, vía un inversor. Tal parece que al estar activada una, la otra no, con la misma señal.
El pin 23 de la ROM superior (A11 ?), que está levantado, está conectado con el pin 2 de la inferior (A16 ?). Una interesante manera de direccionar ambas memorias.
Las memorias ROM Atari se direccionan igual que las memorias comerciales, con la pequeña salvedad que el pin CE (Chip Enable) está invertido. Para esto usé un 4011.
A continuación los pines del conector del atari 2600: (De algún lugar de Internet)
The Atari 2600 Cartridge:
________________Top Row__________________Bottom Row__________
Slot |
2716 |
CPU |
2716 |
CPU |
1 |
13 |
D3 |
1 |
A7 |
2 |
14 |
D4 |
2 |
A6 |
3 |
15 |
D5 |
3 |
A5 |
4 |
16 |
D6 |
4 |
A4 |
5 |
17 |
D7 |
5 |
A3 |
6 |
* |
A12 |
6 |
A2 |
7 |
19 |
A10 |
7 |
A1 |
8 |
NC |
A11 |
8 |
A0 |
9 |
22 |
A9 |
9 |
D0 |
10 |
23 |
A8 |
10 |
D1 |
11 |
24 |
+5V |
11 |
D2 |
12 |
12 |
Shield Ground |
NC |
Ground |
Note: numbers indicate left to right numbering. * to inverter and back to 18 for chip select
¿ No está muy claro ? Aquí es mas claro.
Esta información del conector atari está referida a una memoria 2716, para un juego de 2 K.
Se puede concluir que tenemos una ROM con 19 pines de direcciones (A0 - A18), de los cuales el atari ocupa 12 (A0 - A11 (datos), y quedan 7 para seleccionar juegos (A12 - A18) . Esta selección la hice con un simple dipswitch de 8. En este caso, el pin 6 Top Row Atari, A12 (no confundir este A12 con el de la ROM), ataca directamente el pin OE (Output Enable) de la ROM, vía un inversor. Las salidas de la ROM coinciden con el conector Atari (D0 - D7).
Como resultado, dibujé el siguiente diagrama:
Lo siento por el diagrama, pero no tengo más recursos. Aquí puede verse la ampliación. Aquí hay un ZIP más detallado. (484 K).
El diagrama dice R=10 K. En realidad, R=4.7 K. En el diagrama, le asigné a los pines del conector Atari el código JAMMA, por costumbre.
Segundo paso: Dónde meter el Chip
A continuación desarmé un viejo cartridge Atari 2600 para meter la ROM. Corté el pequeño cicuito impreso de modo que quedara sólo el conector, y le atornillé un circuito impreso adecuado para contener la ROM, el inversor y el Dipswitch. (Ver Foto).
Funcionó perfectamente. 160 juegos para mi vieja consola Atari 2600. Son un poco menos, varios vienen repetidos.
Es interesante notar que el Dipswitch 1, al estar On, activa una memoria y, aparentemente, deja a la otra con sus salidas en tercer estado, y vicecersa. La máquina clon 2600 venía con su ROM "expandida". Normalmente, estas máquinas venían con una sola ROM de 128 juegos. Aquí está un listado con todos los juegos (160), y su dirección en el dipswitch: ("-"=don't care).
Cartridge 160 in 1 - Atari 2600 |
||
********************************************************** |
||
Switches |
||
Nº |
12345678 |
Game |
94 |
1011101 |
*No Game* |
46 |
101101 |
?? (Laberintos, Enem. Aparecen y Desap) |
107 |
1101010 |
Galactic |
129 |
1--00000 |
3D Tic-Tac-Toe |
13 |
1100 |
Air Raiders |
134 |
1--00101 |
Air-Sea Battle |
34 |
100001 |
Alien |
21 |
10100 |
Alien's Return |
19 |
10010 |
Amidar |
47 |
101110 |
Assault |
11 |
1010 |
Assault (Clon) |
12 |
1011 |
Atlantis |
127 |
1111110 |
Atlantis |
73 |
1001000 |
Bank Heist |
125 |
1111100 |
Barnstorming |
147 |
1--10010 |
Basic Math |
148 |
1--10011 |
Basketball |
76 |
1001011 |
Beany Booper |
39 |
100110 |
Bermuda |
105 |
1101000 |
Berzerk |
90 |
1011001 |
Blackjack |
159 |
1--11110 |
Blackjack |
45 |
101100 |
Bobby Is Going Home |
16 |
1111 |
Boom Bang |
136 |
1--00111 |
Bowling |
132 |
1--00011 |
Boxing |
22 |
10101 |
Brick Kick |
77 |
1001100 |
Bridge |
5 |
100 |
Canyon Bomber |
43 |
101010 |
Carnival |
23 |
10110 |
Challenge |
157 |
1--11100 |
Checkers |
52 |
110011 |
China Syndrome |
126 |
1111101 |
Chopper Commando |
72 |
1000111 |
Circus |
101 |
1100100 |
Commando Raid |
1 |
0 |
Condor Attack |
51 |
110010 |
Cosmic Ark |
3 |
10 |
Cosmic Creeps |
137 |
1--01000 |
Cosmic Swarm |
57 |
111000 |
Crackpots |
26 |
11001 |
Criminal Pursuit |
55 |
110110 |
Crossforce |
116 |
1110011 |
Cruise Missile |
42 |
101001 |
Dark Cavern |
18 |
10001 |
Deadly Duck |
110 |
1101101 |
Defender |
113 |
1110000 |
Demon Attack |
15 |
1110 |
Dishaster |
114 |
1110001 |
Dodge 'Em |
29 |
11100 |
Donkey Kong (Clon) |
84 |
1010011 |
Dragonfire |
97 |
1100000 |
Dragster |
17 |
10000 |
Enduro |
92 |
1011011 |
Fantastic Voyage |
36 |
100011 |
Fast Eddie |
78 |
1001101 |
Fire Fighter |
143 |
1--01110 |
Fishing Derby |
146 |
1--10001 |
Flag Capture |
62 |
111101 |
Flash Gordon |
141 |
1--01100 |
Football |
151 |
1--10110 |
Freeway |
142 |
1--01101 |
Freeway (Rabbits) |
124 |
1111011 |
Frogger |
37 |
100100 |
Frogs And Flyes |
68 |
1000011 |
Frostbite |
58 |
111001 |
Gas Hog |
96 |
1011111 |
Ghoper |
139 |
1--01010 |
Golf |
30 |
11101 |
Grand Prix |
70 |
1000101 |
Hangman |
156 |
1--11011 |
Homerun |
155 |
1--11010 |
Human Cannonball |
80 |
1001111 |
Ice Hockey |
60 |
111011 |
International Soccer |
100 |
1100011 |
Jawbreak |
24 |
10111 |
Karate |
109 |
1101100 |
Keystone Capers |
40 |
100111 |
King Kong |
131 |
1--00010 |
Laser Blast |
140 |
1--01011 |
Laser Blast (Bird) |
74 |
1001001 |
Laser Gates |
120 |
1110111 |
Lock'n Chase |
102 |
1100101 |
M*A*S*H |
67 |
1000010 |
M.A.D. |
53 |
110100 |
Master Builder |
119 |
1110110 |
Math Gran Prix |
115 |
1110010 |
Mazecraze |
56 |
110111 |
Megaforce |
83 |
1010010 |
Megamania |
8 |
111 |
Meteor Defense |
160 |
1--11111 |
Miniature Golf |
28 |
11011 |
Missile Command |
99 |
1100010 |
Mission 3000 AD |
7 |
110 |
Mouse Highway |
44 |
101011 |
Mr. Postman |
117 |
1110100 |
Name This Game |
65 |
1000000 |
Nexar |
54 |
110101 |
Nuts |
75 |
1001010 |
Oink! |
130 |
1--00001 |
Otello |
149 |
1--10100 |
Outlaw |
123 |
1111010 |
Pac-Kong |
122 |
1111001 |
Pac-Man |
106 |
1101001 |
Pele's Soccer |
86 |
1010101 |
Pitfall! |
32 |
11111 |
Planet Patrol |
63 |
111110 |
Plaque Attack |
61 |
111100 |
Pooyan |
59 |
111010 |
Q*Bert |
95 |
1011110 |
Racquetball |
108 |
1101011 |
Raft Rider |
69 |
1000100 |
Real Sports Volleyball |
112 |
1101111 |
River Raid |
27 |
11010 |
Save Our Ship |
50 |
110001 |
Sea Hawk |
35 |
100010 |
Sea Monster |
79 |
1001110 |
Seaquest |
145 |
1--10000 |
Skiing |
158 |
1--11101 |
Sky Diver |
152 |
1--10111 |
Sky Diver (Boxes) |
4 |
11 |
Sky Jinks |
153 |
1--11000 |
Slot Machine |
138 |
1--01001 |
Slot Racers |
14 |
1101 |
Snail Against Squirrel |
49 |
110000 |
Space Cavern |
111 |
1101110 |
Space Invaders |
6 |
101 |
Space Raid |
10 |
1001 |
Space Robot |
103 |
1100110 |
Spacemaster X-7 |
82 |
1010001 |
Spider Fighter |
25 |
11000 |
Spiderman |
93 |
1011100 |
Squeeze Box |
133 |
1--00100 |
Stampede |
154 |
1--11001 |
Stampede |
128 |
1111111 |
Star Wars: The Empire Strikes Back |
31 |
11110 |
Sub Scan |
87 |
1010110 |
Super Challenge Baseball |
85 |
1010100 |
Superman |
144 |
1--01111 |
Surround |
64 |
111111 |
Tac-Scan |
150 |
1--10101 |
Tank |
38 |
100101 |
Task Force |
135 |
1--00110 |
Tennis |
66 |
1000001 |
The Earth Dies Screaming |
71 |
1000110 |
Thunderground |
9 |
1000 |
Tom Boy |
33 |
100000 |
Towering Inferno |
20 |
10011 |
Traffic |
81 |
1010000 |
Trick Shot |
2 |
1 |
Tuby Bird |
88 |
1010111 |
Turmoil |
118 |
1110101 |
Ufo Patrol |
48 |
101111 |
Venture |
91 |
1011010 |
Video Chess |
89 |
1011000 |
Video Pinball |
121 |
1111000 |
Word Zapper |
98 |
1100001 |
Worm War |
41 |
101000 |
X-Tack |
104 |
1100111 |
Yars' Revenge |
¡Sólo Clásicos! Así se jugaba hace casi 20 años. Hay uno que no puedo identificar, lamentablemente. Si alguien sospecha cuál juego es, que me lo haga saber.
Como una extensión de este pequeño proyecto, se podrían bajar archivos BIN de Internet, quemarlos dentro de una EPROM de 4 M (27C4001 o similar) y enchufarla en este cartridge. Debería funcionar. Yo he probado sacar otra ROM a otro clon 2600 y funcionó igual de bien.
Actualmente tengo pensado construirme un quemador de EPROM y probar.
Algunos Links relacionados:
Estos son algunos sitios donde obtuve la información necesaria para este proyecto:
http://members.cox.net/rcolbert/multi.htm
http://www.netway.com/~hozervideo/atari/makecart.html
Comentarios, críticas, felicitaciones, descalificaciones o cualquier mensaje a gamemasterquilpue en:
Otra interesante página sobre ATARI 2600: http://es.geocities.com/gamemasterquilpue/indy500hack.htm
También pueden visitar mi página principal http://www.ericzone.50megs.com Y pueden ver también un listado de mi gran colección de videojuegos de todo tipo y de todas las épocas en http://es.geocities.com/gamemasterquilpue
Quilpué, V Región, Chile, Mayo del 2001.