Garry Kitchen se une al podcast para hablar sobre su carrera como jugador de toda la vida y cómo pasar su verano de 1982 portando Donkey Kong de Nintendo al Atari 2600 fue tedioso, pero valió la pena. También le gustaría que supieras que es un hacker de ROM bastante bueno, el ojo de Mario es solo un vacío, y tienes toda la razón, inclinó esas rampas.
Ver más de Garry Kitchen:
Gorjeo: @kitchengarry
Medio: https://garrykitchen.medium.com/
Sitio web: garrykitchen.com
Música para la historia de los videojuegos es Blippy Trance de Kevin MacLeod (incompetech.com) Bajo una licencia Creative Commons: Por licencia Attribution 4.0: http://creativecommons.org/licenses/by/4.0/
Transcripción
VGHH EPISODIO 7 Garry Kitchen EDICIÓN EN SECO
Mar 24/11 12:03 pm • 1:05:13 pm
RESUMEN DE PALABRAS CLAVE
atari, juego, código fuente, donkey kong, gente, juegos, pantalla, industria, garry, bytes, risa, carnero, escribir, dibujar, hablar, repositorio, izquierda, cartucho, años, línea de exploración
ALTAVOCES
Kelsey Lewin, Frank Cifaldi, Garry Kitchen
Kelsey Lewin 00:00
Bienvenido al episodio número siete de Video Game Gistory Hour presentado por la Video Game History Foundation. En cada episodio, invitaremos a un invitado experto: alguien que haya investigado y tenga una historia interesante que contar sobre la historia de los videojuegos. O en este caso, estaban ellos mismos. Mi nombre es Kelsey Lewin, soy codirectora de la Video Game History Foundation y estoy aquí como siempre con Frank Cifaldi, fundador y codirector de la Video Game History Foundation.
Frank Cifaldi 00:23
Gracias, Kelsey. Garry Kitchen se une a nosotros hoy. Garry es un experimentado diseñador de videojuegos, programador, hombre de negocios, un poco en la industria, en realidad. De todos modos, sus obras de las que probablemente hayas oído hablar en el espacio de la consola incluirían Keystone Kapers, Pressure Cooker, Super Battletank y The Simpsons: Bart Versus the Space Mutants. Garry publicó recientemente un artículo en los medios titulado "Cómo pasé mi verano de 1982", que, alerta de spoiler, explica cómo se las arregló para llevar el éxito de arcade de Nintendo, Donkey Kong, al mundo. Atari 2600. Garry, bienvenido al videojuego Story Time.
Cocina Garry 00:58
Gracias por invitarme.
Frank Cifaldi 01:00
Así que su historia aquí comienza en 1982. Y nos lleva de regreso allí; ¿Quién era Gary Kitchen en 1982?
Cocina Garry 01:09
Bueno, empecé en 1973, comencé la universidad con especialización en arte, como dibujo y pintura. Debido a que he estado haciendo esto toda mi juventud, fue mi gran cosa. Y realmente tenía muy poca conexión con la tecnología en ese momento. Pero unos años en la escuela, conseguí un trabajo en una empresa de ingeniería. Y era un trabajo de medio tiempo porque iba a la escuela y pagaba como quería, así que ganar dinero era bueno. Y finalmente este trabajo me llevó a los juguetes electrónicos y luego a los videojuegos. Y fui básicamente autodidacta en ambos. En algún momento del proceso cambié mi especialización de arte a ingeniería. Pero cuando me gradué como ingeniero en 1980, ya había lanzado juguetes y juegos comerciales que había diseñado e inventado. Así que fue genial tenerlo, pero en realidad no era la base, la base de mis habilidades. Estos se aprendieron en el trabajo. Así que dejé esa empresa en 1981 después de diseñar el Atari 2600 y hacer el Space Jockey para los Juegos Americanos. Uno de los primeros juegos de terceros en la plataforma. Dejé ir a mi hermano Dan, comenzamos un pequeño negocio. Y a principios de 1982, sonó mi teléfono. Y Coleco estaba buscando a alguien que trasladara el Donkey Kong de Nintendo al 2600. E irónicamente, en ese momento estaban los de Atari, los de Activision, que nacieron a partir de ahí. 39; Atari. Y luego no había muchas otras personas en el planeta que supieran cómo programar un Atari. Debido a que no había ningún libro que no compraras de un libro de texto, no había Internet. No has descargado nada. Pero lo había hecho con ingeniería inversa, así que tenía ese conocimiento. Y me contrataron para hacer el trabajo, supongo que fue de abril a mayo de 1982.
Kelsey Lewin 03:34
Así que esto es antes de los kits de desarrollo, antes de la documentación, sobre todo. Quiero decir, no es como si pudieras ir a Atari y pedir información sobre lo que hace que funcione el Atari 2600. Entonces, ¿por dónde empezar con algo así?
Cocina Garry 03:49
Bueno, lo es. Es diferente al de hoy. Ya sabes, si quieres ser desarrollador hoy en PlayStation 5, te registras con Sony, te dan todo el hardware, todo está configurado. No fue así a finales de la década de 1970. El Atari 2600 era un sistema cerrado. No hubo información pública. No les interesaba que otras personas hicieran juegos en la plataforma. Activision dio vueltas en círculos; Las cuatro estrellas de Atari ocurrieron en 1978, supongo. David Crane y sus tres socios en el momento en que se separaron, así que ahora también lo estaban haciendo. Pero más allá de eso, para entrar en el mundo Atari, tenías que romperlo y entenderlo. Porque, como dices, no había acceso a nada. No existía un sistema de desarrollo. No había herramientas y solo había esta caja que se podía comprar por $ 150 en la juguetería. Eso fue todo.
Frank Cifaldi 04:58
Quiero decir, ayúdame … Ayúdame a visualizar la ingeniería inversa. Lo entiendo de un nivel alto, pero digamos, ya sabes, juego de roles, ¿verdad? Tienes el Atari 2600, lo abres en la placa de circuito con un montón de chips. ¿Por dónde empiezas? ¿Cómo iniciar la ingeniería inversa de un sistema?
Cocina Garry 05:18
Bueno, es gracioso porque mientras lo hacía, estaba como, "Bueno, no se esforzaron demasiado para mantener esto en secreto". En primer lugar, si no quisiera que la gente entrara en un sistema, cuando abriera la caja, las fichas no tendrían números. Y lo hicieron. Así que lo abrí e inmediatamente vi que tenía un 6502, en realidad una variante del 6502, pero en la familia de microprocesadores. Eso me dijo inmediatamente con qué lenguaje escribirías juegos, ese era el lenguaje ensamblador 6502. Bueno, por casualidad, y estoy seguro de que hay algunas interrupciones en tu las carreras son pura suerte; por casualidad, muy pronto tuve una computadora Apple II. Lo compré nada más sacarlo de la caja, poco después. Así que tenía un Apple II, que también funcionaba en el 6502. Así que es difícil expresar la alegría que sentí cuando lo abrí en un Atari y lo abrí en un Atari. vi que tenía el mismo procesador. ¿No es agradable? Entonces, si pudiera instalar los programas que se están ejecutando en Atari en mi Apple II, me daría más de un sistema para poder leerlos. Así que lo entendí: tomé un cartucho Atari y lo abrí. Pasé un cordón umbilical, un montón de cables del cartucho a través de una placa, que diseñé, que se conecta a una de las ranuras en el panel posterior del Apple. II. Ahora, al hacer eso, si enchufo un … bueno, en realidad, demos un paso atrás. Lo que tenía en el otro extremo del Apple II no era un enchufe de cartucho, era al revés; era una ranura que aceptaba un cartucho. Entonces obtuve este dispositivo. Ahora, cuando conecté un cartucho Atari en ese receptáculo que había conectado a mi Apple, si entré en la memoria de Apple, en algún mapeo de memoria en la memoria donde no lo hizo. No había ROM en el Apple II, había algunas ranuras vacías, pude ver lo que había en la ROM del juego Atari. Y así es como empecé.
Frank Cifaldi 07:59
(Para reír.)
Cocina Garry 07:59
Creo que creo que el primer juego que vi fue, irónicamente, la pelea de David Crane. De hecho, en ese momento probablemente ni siquiera sabía que era de David Crane, pero era Combat. Y recuerdo que fue el primero que vi. Y solo porque pude ver las cosas no lo hizo más fácil. Todo lo que puede ver en este punto son 2048 números seguidos. Como comenté en el artículo de Medium, toda mi carrera ha consistido en hacer listas de números. Y están en el orden correcto. Así que obtuve esta lista y la traje a mi Apple. Y luego podría usar algo llamado desensamblador, que tomaría esa lista de números y la convertiría en una versión levemente legible del 6502. Código "levemente legible", porque eso me permitió leer las instrucciones, pero No incluyó nada que los programadores pusieran en el código para que pudieran resolverlo más tarde. Por ejemplo, nombrar la variable que sigue a la puntuación, "puntuación" o nombrar la variable que realiza un seguimiento de la velocidad, "velocidad" o cualquier comentario en el código que explique: "Oye, ¿qué hace este código? Es que hace ABC ". Nada de eso estaba ahí. Todo lo que tenía ahora era una gran lista de instrucciones. Y ahí es donde realmente comenzó el trabajo. Tuve que leer esta lista de instrucciones sin comentar y sin documentar y empezar a averiguar qué le estaba diciendo el programa a Atari. Y fueron unos meses de lectura, tomando notas y rascándome la cabeza.
Frank Cifaldi 08:37
Entonces, ¿realiza algún cambio en el código y luego lo implementa en Atari para ver qué hace y luego toma algunas notas? ¿Así es como funciona?
Cocina Garry 10:05 a.m.
Formaba parte de eso. En parte, encontraría algo interesante. Y yo diría: "Hmm, me pregunto qué hace esta variable". Quiero decir, en un programa, usas una lista de variables para rastrear cosas. Entonces tienes una variable que dice: "¿Cuál es la posición horizontal de Mario?" ¿Cuál es la posición vertical de Mario? ¿Cual es el puntaje? ¿En qué nivel estás? Y si puede identificar todas estas variables, de modo que pueda leer el programa y decir, "Está bien, bueno, lo que hacen es ABC, lo que sea", entonces eso sería útil para mí. . Entonces, en el Atari 2600 solo tiene 128 bytes de RAM. Entonces no hubo más de 128 variables. Así que creé una tabla y comencé a llenarlos diciendo: "Está bien, estoy seguro de que la ubicación en el número 56 tiene que ver con algo". Mientras construía esto y comenzaba a completarlas, una forma de averiguarlo es ir al código que estaba jugando con estas variables o cambiarlas de alguna manera. Y cambiaría este código. Entonces yo diría, "Está bien, aquí almacena algo en la variable 1E5, voy a hacerlo, no a almacenarlo en esa variable y ver qué le hace al código". Y luego eso me daría una pista. Entonces comencé a hacer esto. Construí esta lista de variables para el programa que estaba viendo. Y entonces podría entrar mejor en el código que estaba buscando y empezar a tener una idea de lo que estaba haciendo.
Kelsey Lewin 11:55
Así que parte de desarmar uno de esos juegos es … quiero decir, ¡básicamente estás haciendo un pirateo de ROM primitivo! Estás cambiando un poco las variables y viendo lo que hace, en el espíritu de experimentación estoy seguro de que no has decidido hacer un truco de combate ni nada. Pero creo que es fascinante que así es como comienza.
Cocina Garry 12:19
Sí, no, definitivamente es el mismo conjunto de habilidades. Soy un hacker de ROM muy bueno, tengo que decirte.
Frank Cifaldi 12:26
Es gracioso. No soy un buen hacker de ROM, pero soy bueno haciendo trampa. (Risas) Y, ya sabes, usando emuladores para juegos antiguos, básicamente haría exactamente lo que tú haces. Monitorearía las direcciones de memoria tratando de averiguar cómo funciona el contador de vida, cómo funciona el otro, ya sabes, el temporizador. Cosas así para, ya sabes, congelar valores en la memoria.
Cocina Garry 12:53
Oh, sí, también lo he hecho en vidas pasadas. Me hubiera gustado tener esta habilidad en ese entonces, pero ni siquiera la tenía. Así que una vez hice eso, y tuve un par de juegos que se dieron cuenta, como, "Está bien … Tengo una idea de qué diablos es esto". hacen." Luego tuve que resolver las cosas difíciles, a saber: sé que lanza la pantalla de una forma u otra línea de escaneo a la vez, pero cómo ¿realmente lo hace? ¿Y cuando es el momento? Y ese fue realmente un territorio de migraña, tratar de resolver esto sin tener idea de cómo funciona esta máquina. Me tomó tal vez seis o siete meses de principio a fin llegar al punto en el que había escrito un conjunto completo de documentación, que luego usé para escribir un juego de 2k, Space Jockey.
Frank Cifaldi 13:51
Y, ya sabes, estudiar combate parece una pequeña coincidencia porque entiendo que el 2600 fue diseñado como una máquina de combate, más o menos, en términos de las características que tienes como desarrollador. ¿Puede explicarnos qué tiene en términos de "jugador de un misil", etc.?
Cocina Garry 14:17
Sobre. Y cuando dijiste eso … una campana sonó en mi cabeza.
Frank Cifaldi 14:21
¡Oh asombroso! ¡Esto significa que soy un buen entrevistador!
Kelsey Lewin 14:23
(Reír)
Cocina Garry 14:24
¡Me hablé mal antes! El juego que estaba viendo era Outlaw de David Crane.
Frank Cifaldi 2:30 p.m.
¡Ah!
Cocina Garry 14:31
Forajido… El tipo de la pistola, el único a ambos lados de la pantalla, disparándose. No pelear. David Crane no ha hecho Combate. Me va a gritar más tarde sobre esto. Pero era Outlaw. Muy bien, déjame explicarte. Veamos qué puedo hacer aquí. Es como la cosa más imposible de explicar, pero déjame hacerlo.
Frank Cifaldi 14:49
¡Sí, es un buen desafío! Vamonos.
Kelsey Lewin 14:50
Y ni siquiera tienes la opción de usar imágenes porque es el podcast, ¡así que un desafío adicional!
Cocina Garry 14:53
¡Si esto es! Entonces, si piensa en un Commodore o un Apple o un IBM, creo que todos entienden que tiene lo que se llama un mapa de bits. Es decir, tiene un área de memoria compuesta por RAM, que es una memoria en la que puedes leer o escribir. Y si llena esa área con una imagen, se muestra en la pantalla dependiendo de lo que haya en esa memoria. Entonces, si, digamos, la pantalla era, digamos 200 por 160. Y cada punto estaba descrito por un byte. Entonces tendrías 200 veces 160 bytes en memoria. Cada uno tenía un valor en él. Si el valor es cero, el punto estaba apagado. Si el valor era de uno a 255, era un valor RGB. Existe un estándar de lo que estos números significan en términos de colores. Así es como funciona un mapa de bits. Entonces, si tengo una imagen de mapa de bits de ese número de bytes, que corresponde a cada píxel en la pantalla, y los lleno con uno o dos, o tres, o lo que sea, complete en una secuencia, toda la pantalla se verá como un arco iris. Independientemente, se verá como un montón de puntos aleatorios. Entonces, si tiene eso como base para, "Está bien, lo entiendo". Así es como funciona 2600. Cuando fue diseñado, nunca podría tener tanta RAM en el sistema. La RAM era muy cara. Entonces, si construye un producto convencional en el período de 1975, no tendrá 16384 bytes de RAM, como un Apple II, no lo tendrá porque no puede pagarlo. . . A menos que esté vendiendo por $ 1,000. Pero si está tratando de vender algo por $ 150, no tendrá mucha RAM. De hecho, esta es la razón por la que el Atari solo tenía 128 bytes de RAM, lo cual es criminal si intentas escribir un problema, es simplemente criminal tratando de escribir un programa porque simplemente no hay suficiente RAM para realizar un seguimiento de todo lo que necesita hacer. Pero lo que sea. Así que también hay dos usos para la RAM en el Atari. Los 128 bytes fueron usados por el programa para todo lo que hablamos antes. Lo llaman bloc de notas. Entonces, el programa realiza un seguimiento de, ya sabes, en qué nivel estás, en qué puntaje estás, dónde está el personaje. Esa clase de cosas. Pero también hay otro uso de la RAM en la máquina, que es que colocas información en una ranura y muestra algo en la pantalla de la misma manera que lo hace. 39; un mapa de bits funciona. Excepto que la cantidad limitada de RAM en el 2600 era aproximadamente un 200 de lo que obtendría en el mapa de bits. Esto significa … Digamos que hay 262 líneas en una pantalla de TV. Y en un 2600, 192 de ellos son visibles. Y estos son solo números redondos. En lugar de tener 192 líneas de gráficos representadas en la memoria, solo había una línea de gráficos en la memoria. Así que había un mapa de bits, ¡pero el mapa de bits era solo para una línea! Así que había un byte disponible para el primer reproductor, que tenía ocho bits de ancho. Un byte disponible para el jugador dos. ¿Y observe incluso lo que estaba diciendo antes acerca de que el mapa de bits tiene un byte por punto? ¡No! En el Atari 2600, esto es poco a poco. Así que un byte, ocho bits, representaba un jugador. Y solo tenías una línea de información para este reproductor. Y tenías una línea de información para el otro jugador. Entonces este es tu segundo byte. Luego tenías bits para los dos misiles, o "bolas" que se llaman, porque no tenían ninguna apariencia gráfica. Estaban encendidos o apagados. Y luego hubo dos misiles, uno asociado con cada jugador y con la pelota. Entonces aquí hay cinco objetos en movimiento. Entonces tenías un byte que describía cómo era el primer objeto en movimiento. Y estamos afirmando en este momento que la pantalla solo mide una línea.
Frank Cifaldi 19:52
Derecha…
Cocina Garry 19:52
Entonces sí, un byte para el primer objeto, un byte para el segundo objeto y tres bits para los Tres objetos en movimiento el pequeño, los llaman misiles y balas. Entonces, si piensas en Tank, Combat, el juego del que hablábamos originalmente, Combat, tienes un tanque, tienes otro y cada uno de ustedes dispara un misil. ¡Y eso es! Derecha. ¿Ping Pong, Pong? Tienes una paleta izquierda, una paleta derecha y una pelota que rebota en el medio. Para eso se diseñó la máquina: dos objetos y cada uno de ellos tiene un punto asociado. Y eso es. No hay mucho allí.
Kelsey Lewin 20:36
Esta es una muy buena máquina para crear puntos que pueden moverse entre dos jugadores y no mucho más.
Frank Cifaldi 20:43
¡Puede recuperarse!
Cocina Garry 20:44
¡Eso fue todo! Esa era toda la idea. Entonces, si escribiera un programa increíblemente simple en el Atari 2600 y valorara uno y el otro … bueno, hablemos de los dos jugadores. Si coloco un pequeño patrón en el reproductor izquierdo y un pequeño patrón en el reproductor derecho, y no he hecho nada más, verá una raya vertical a lo largo de la tira. 39; pantalla. ¿Lo mismo que ve cuando saca un cartucho, cuando ve sacar un cartucho mientras está encendido? Ves un montón de rayas verticales. Todo lo que eso significa es, "Muy bien, puse un 24 en el primer jugador". Y nunca lo cambié. Entonces, para todas las líneas en la pantalla del televisor, es decir, 24 en el primer reproductor, eso es todo lo que ves. Puede ver una lista vertical hacia la parte inferior del primer número que puse. Y eso es. Ahora, lo que estaba haciendo Atari estaba sincronizado con la pantalla del televisor, lo que significa que el programa lo sabía. El programa podía decir cuándo iba a comenzar la pantalla y podía decir cada línea que pasaba por la pantalla. Entonces podría decir en mi programa, ahora mismo, que esta cosa que se mueve a una velocidad tremenda está a punto de trazar la línea 32 en la pantalla.
Frank Cifaldi 22:08
Y creo que deberíamos detenernos aquí solo un segundo para hablar sobre cómo hablamos de nuestra televisión CRT. Y la forma en que funcionaba tu televisor en ese entonces, ¿no es así, Garry? – era dibujar una línea a la vez rápidamente, luego volver al principio y empezar de nuevo. ¿Derecha?
Cocina Garry 22:24
Esto es verdad. En realidad, fue el empate un punto a la vez. Esto se llama tubo de rayos catódicos. Y el interior del tubo tenía puntos y había un haz de electrones que comenzaría en el borde izquierdo y barrería todo, apuntando y todos estos puntos en la línea número uno. Y en lo que respecta al tiempo, cuando pasaba por un punto, el rayo estaba encendido o apagado, para encender o apagar ese punto. Y luego, cuando llegó al borde de la pantalla, hizo algo en el que iba y venía sin tirar hacia el otro lado, y ahora hace la segunda fila. Y luego volvió y ahora hace la tercera fila. Así que sí, literalmente algo en lo que nunca habrías pensado con una Xbox o PlayStation, la forma en que se dibuja la pantalla, que ya ni siquiera se dibuja de esa manera. Pero nada de esto importa. Pon valores en algún lugar y aparecerá una imagen. En el Atari, básicamente sabíamos dónde estaba ese haz de electrones en todo momento. Y la razón por la que queríamos saber esto, imagina esto: tienes esta máquina que tiene … es una pantalla de una sola línea. Y puedo poner un número en uno, un número en el otro. Y tengo dos personajes que no son muy altos. Bueno, si cronometré mi programa y estaba a punto de empezar a dibujar la segunda línea, podría cambiar esos dos números. Y luego, para la tercera fila, podría cambiar esos dos números nuevamente. Y para la cuarta línea, lo mismo. Y lo que estoy haciendo básicamente es dibujar una imagen en esa gran columna de un jugador. Entonces, el jugador es desde la parte superior de la pantalla hasta la parte inferior de la pantalla, el jugador uno y el jugador dos. Puede colocarlos horizontalmente en la pantalla en cualquier lugar que desee. Pero eso es solo un gran tubo bajando por la pantalla. Si pongo un número en la parte superior, ese número permanece todo el tiempo. Sin embargo, si pongo un número en la parte superior, un número en la segunda fila, un número en la tercera fila, un número diferente en la cuarta fila, puedo empezar a crear algo que parezca algo. Ésta es la idea básica de lo que haces. ¡Este sistema es tan ridículo para mí con lo moderno (ININTELIGABLE)! ¿Así que mientras miro el sprite de Mario que dibujaste? Si.
Frank Cifaldi 25:10
Y, como cada línea se dibuja horizontalmente, solo puede ser de un color y se puede activar o desactivar. ¿Derecha?
Cocina Garry 25:19
Correcto.
Frank Cifaldi 25:20
Entonces, para dibujar este sombrero, es como, "Está bien, te has ido, te has ido, estás un poco, luego estás de vuelta", solo para la parte superior del sombrero. Repite eso. Y luego haz eso poco a poco, cambia el color cuando llegas a su cabeza. ¿Derecha?
Cocina Garry 25:35
Si.
Frank Cifaldi 25:36
Y luego dibujas a Mario poco a poco así.
Kelsey Lewin 25:40
Y comienzas a usar ese espacio negativo para dibujar estos sprites, lo que creo que es realmente interesante con estos juegos más antiguos. Ya sabes, no está presente en versiones posteriores donde estás … Quiero decir, el negro en el sprite de Mario es solo que no dibujas.
Cocina Garry 25:54
Si.
Kelsey Lewin 25:55
No pone negro allí. ¡No se trata de dibujar!
Cocina Garry 25:58
Esto es correcto.
Frank Cifaldi 26h00
El ojo de Mario es solo un vacío.
Kelsey Lewin 26:02
Su bigote, sus patas y… Sí.
Cocina Garry 26:06
Y el brillo de ese gráfico, que vino más tarde mientras estaba trabajando en él, puso ese espacio negativo en el costado de su nariz, lo que lo hace parecer un bigote. No había estado allí mucho tiempo y su nariz se veía terrible.
Kelsey Lewin 26:22
Antes de comenzar a grabar este podcast, estábamos comentando cuánto realmente amamos el trabajo de los sprites en este juego porque es … quiero decir, ponerle el bigote a Mario, sí, tú tienen ese tipo de píxeles anchos y no hay tantos como podría. ¡Pero lograste hacer un bigote con tres píxeles vacíos aquí!
Cocina Garry 26:42
Sí, ¿no es ridículo? Si te concentras en Mario por un minuto y piensas en los bits, echa un vistazo a esta fila superior. La fila superior es 00, comenzando por la izquierda 00111000. Entonces, en el código de computadora, es 1C.
Frank Cifaldi 27:07
Ah, ya veo, está bien …
Cocina Garry 27:09
Ahora que, tengo una mesa en algún lugar que tiene un 1C. Y tomé ese 1C y lo puse allí, y obtengo la parte superior de su sombrero. Y luego el siguiente es un 3E. (Podría decirlo con solo mirarlo porque estoy tan mal.) (Risas) Así que lo dibujaría en papel. Lo convertiría en hexadecimal, de lo que estoy hablando. Así que tenía una lista de 18 números en la memoria, que en cada línea de exploración, donde sea que esté, tomaría cargar-almacenar, cargar-almacenar, cargar-almacenar, en la parte inferior de cada línea de exploración para crear esto imagen. También asumimos, pero deberíamos mencionar, que había otras dos piezas de RAM que también contenían color. Uno para el jugador uno, uno para el jugador dos. Entonces, en una línea de escaneo, si pudiera encontrar una línea de escaneo para almacenar gráficos y colores y gráficos y colores para dos jugadores. Entonces hay cuatro tiendas, dos jugadores. Podrías tener dos jugadores en la pantalla que fueran multicolores, por fila. Así que ese es el tipo de cosas que harías. El gran problema era que no disponía de mucho tiempo, desde el inicio de la línea en la pantalla desde los bordes izquierdos hasta el final de la derecha. Solo tenías 76 ciclos de computadora para almacenar tantas cosas como pudieras y cambiar tanto como pudieras para hacer que lo que está en esa fila sea diferente de lo que está en la fila de arriba. Aquí es donde siempre ha estado la cosa, "OK, ¿qué puedo permitirme cambiar en cada línea para hacer esto más interesante?" Realmente me gustaría colorear a este tipo para que se vea mejor … Me gustaría cambiar, ya sabes, los gráficos del segundo jugador … ¿Pero tengo suficiente tiempo en esta línea en particular de mi agenda para hacer eso? Y esa es la cruz que usaste al programarlo.
Kelsey Lewin 29:13
Y es por eso que obtienes algunas de esas excelentes imágenes de un color como el sprite de Donkey Kong donde todo es uno, porque imagino que se convierte en un juego de tratar de descubrir lo que puedes. lo que puede poner allí de manera realista. Entonces, incluso si quisieras darle más color, quiero decir …
Cocina Garry 29:30
¿Estás hablando de Stay Puft Marshmallow Man?
Kelsey Lewin 29:37
¡Si! (reír)
Cocina Garry 29:37
Sí, y el problema con él es que podría haberlo hecho mejor. Sigue siendo solo de 8 bits, pero hay un modo en el que puedes tomar un objeto y duplicar o triplicar su ancho. Por tanto, sigue siendo un objeto de ocho bits. Y ella se para al lado de un objeto de 8 bits. Entonces, ¿por qué no puedo hacer más con él? El problema es, si miras a la derecha, ¿esas dos cajas? Bueno, aunque en la foto que estoy mirando hay dos casillas, no sé cuántas casillas hay en lo que estás mirando. Pero a la derecha hay dos recuadros, que representan las dos vidas que salvó. Y pasará por todos ellos. Así que tenía que poder mostrar vidas en esa misma fila. Entonces ahora tengo el problema, ¿cómo voy a hacer esas dos cajas de allí? Y una princesa multicolor y Donkey Kong, así que alguien debe haber perdido. Entonces fue Donkey Kong.
Kelsey Lewin 29:44
Por lo que vale, creo que tomó la decisión correcta.
Cocina Garry 30:38
Quiero decir, tuve que mostrar las vidas. ¡Así que no tuve otra opción!
Kelsey Lewin 30:42
Bueno, creo que creo que Pauline se habría visto un poco peor como una gota que Donkey Kong.
Cocina Garry 30:47
Si. Lo pienso. ¡No creo que se vea mal! Incluso puedes ver la cola de caballo.
Kelsey Lewin 30:52
¡Ella se ve bien!
Frank Cifaldi 30:52
Ouais, c’est en fait spécifiquement avant la série, nous disions tous les deux: «Ouais, Pauline a l'air vraiment bien!»
Cuisine Garry 31h00
Oh, c'est parce que le gars qui a fait ce jeu est allé à l'école d'art. C’est mon flair artistique qui donne à ces sprites leur génie, vous savez?
Frank Cifaldi 31:11
(Reír)
Kelsey Lewin 31:13
Mais il y a vraiment un art! Je veux dire, vous ne travaillez pas avec beaucoup d’espace!
Cuisine Garry 31:17
Il y en a mais c’est vraiment bizarre! Cela n’a rien à voir avec l’art tel que nous le connaissons. Donc, la raison pour laquelle Donkey Kong a été si difficile si nous pouvons avancer un peu dans cette direction, c'est qu'il y a aussi un arrière-plan derrière tous ces sprites. Et l'arrière-plan fait 160 pixels de large. Et les pixels sont la largeur des escaliers de Donkey Kong. Ce sont donc des pixels larges. Et il n’y en a que 160 à l’écran. Mais le problème, c'est qu'ils n'avaient pas assez de RAM pour définir 160 pixels sur une ligne. C'était trop. Donc, ils ont la moitié de cette RAM. Donc, si nous faisons notre truc où nous disons que c'est une ligne de haut, pour l'arrière-plan, vous ne pouvez activer ou désactiver que 80 pixels. Et puis ce que vous obtenez à l'écran, c'est que vous obtenez soit les mêmes 80 pixels à gauche que à droite, soit vous obtenez 80 pixels à gauche et une image miroir à droite. C’est la seule chose que la machine puisse faire.
Frank Cifaldi 32:28
Lequel, encore une fois, a raison de Combat? Le combat a juste une image en miroir.
Cuisine Garry 32:33
C'est pourquoi tous les jeux et 99% des jeux que vous regardez ont soit une image miroir, soit une copie de gauche à droite.
Frank Cifaldi 32:42
…Ouais.
Cuisine Garry 32:43
Donc, la drôle d'histoire est que je l'avais programmée de cette façon. Et cela signifie que vous ne pouvez pas avoir de rampes inclinées, car elles ne sont ni dupliquées ni copiées. Ceux-ci sont uniques d'un bout à l'autre. Donc je ne l'ai pas fait. Je n'avais pas de rampes inclinées. J'avais le jeu de premier niveau; commencer la pièce. Et c'est probablement à mi-chemin du projet? Et j'avais un… je pensais à mon prochain projet. Vous savez, il faut penser à l’avance quand on est consultant indépendant! Et le vice-président de l'activation m'a rendu visite parce que je parlais peut-être de travailler avec eux ensuite. Et, euh…
Kelsey Lewin 33:28
Et très vite, je veux juste interrompre très vite, parce que je pense, vous savez, il y a… Quelle a été la réaction d'Activision, vous les appelez et vous vous dites: "Hé, je peux programmer pour l'Atari 2600" comme , ont-ils même cru, vous? Parce que personne ne le pouvait!
Cuisine Garry 33:39
Non, ils ont dit… J'ai appelé et moi, j'ai juste décroché le téléphone et je l'ai appelé j'ai eu le numéro principal. J'ai demandé qui était en charge du développement. Et ils m'ont fait rebondir, ai-je supplié, ont finalement obtenu Tom Lopez. Et j'ai dit: «Bonjour, je suis sur la côte Est, je programme l'Atari 2600.» Et il a dit: "Non, je ne pense pas que vous le faites."
Kelsey Lewin 33:52
(Reír)
Cuisine Garry 33:55
J'ai dit: "Eh bien, en ce moment, je travaille sur Donkey Kong de Coleco." Et il a dit: «Êtes-vous disponible demain?» (Reír)
Frank Cifaldi 34:14
(Reír)
Cuisine Garry 34:15
Alors il s'est envolé et il est venu. Et il est descendu dans le sous-sol de ma petite maison du New Jersey, des tuyaux de sous-sol inachevés dans le plafond et tout. Et nous avons discuté pendant un moment, puis j'ai dit: «Je vais vous montrer quelque chose mais je ne suis pas autorisé à vous le montrer car il est encore en développement. Mais je vais vous le montrer. Et je lui ai montré mon niveau en cours, premier niveau de Donkey Kong. Et il a été dûment impressionné. Je veux dire, c'était très impressionnant à l'époque pour ce que je faisais. Mais il a demandé: «Pourquoi les rampes ne sont-elles pas inclinées?» Et j'ai dit: "Eh bien, c'est une limitation de la machine." Et j'ai expliqué réfléchi, copié… Impossible. Et puis à la fin de la journée quand il partait, nous nous sommes serrés la main et alors qu'il sortait de chez moi, il a dit: «Si vous travailliez pour Activation, ces rampes seraient inclinées.»
Frank Cifaldi 35:11
Dang…
Kelsey Lewin 35:11
Sensationnel. Alors tu l'as fait par dépit?
Cuisine Garry 35:15
Si. (reír)
Kelsey Lewin 35:16
(Reír)
Frank Cifaldi 35:16
(Reír)
Cuisine Garry 35:16
Cela a pris environ une semaine, environ une semaine, mais j'ai réécrit cette partie du code pour incliner les rampes, juste pour dire «Ha!»
Frank Cifaldi 35:25
Très agréable! Eh bien, je veux dire, est-ce quelque chose qui est explicable à un humain? Comment les avez-vous mis en biais?
Cuisine Garry 35:32
Eh bien, tout cela fait partie de la même chose. J'ai donc 76 cycles. Et disons simplement pour des raisons d’argumentation, il faut six cycles, huit cycles pour charger et stocker pour changer un objet. Je dois donc faire huit cycles sur Mario. Et puis je dois faire huit cycles sur la couleur de Mario. Alors ça fait 16. Et puis je dois faire le tonneau. Maintenant, vous remarquez que les barils ne sont pas colorés. Ils n’ont donc encore que huit ans. Donc ça fait 24. Mais maintenant, j'ai un problème, je dois faire le fond. Mais je, je … ce que je vais devoir faire, c'est, à mi-chemin de l'écran, après avoir stocké 3 octets sur le côté gauche, pour l'arrière-plan – normalement je le laisserais tranquille, j'en aurai une copie ou un miroir. Mais je ne veux pas copier ou dupliquer. Je veux le droit d'être différent. Je dois stocker trois fois de plus sur la ligne pour que la droite soit différente de la gauche. Alors maintenant, c'est encore trois fois huit, c'est 24. Et là-haut près du sommet, il y a ce marteau. Et il peut attraper le marteau, et il peut courir avec. Et il peut frapper des barils. Donc, dans cette partie de l’écran, vous avez le marteau, qui est composé d’une balle et d’un missile, vous l’avez avec deux magasins, le canon avec un magasin et six magasins en arrière-plan. You don’t have enough, there’s it you can’t do it in 76 cycles. That’s the problem.
Frank Cifaldi 37:14
OKAY.
Garry Kitchen 37:15
But I did it anyway.
Frank Cifaldi 37:16
(Reír)
Kelsey Lewin 37:16
(Reír)
Garry Kitchen 37:21
And I’ll tell you one thing I did, which is very clever and I don’t think I’ve ever told anybody. And I don’t think any video game guy who performs 2600 has looked at this and tried to figure out what I did, but what I did is… I took advantage of the fact that the arcade game is more vertical than it is horizontal? Like, the aspect ratio is somewhat close to what I have here. And by doing that, I didn’t have to store anything on the left bite or the right bite of the playfield because those were always zero. So I restricted the playfield center to only be in four bytes. So rather than having to store six bytes at the store four bytes that allowed me to fit it in 76 cycles.
Kelsey Lewin 38:11
So you just made a thinner screen?
Garry Kitchen 38:13
Yeah, yeah, I mean, it’s black to the left and right. Right?
Kelsey Lewin 38:16
Wow.
Garry Kitchen 38:17
And, and I stored zero once at the top, for the one on the left and the one on the right and left them there. That’s fine. So you’ve got black on either side. And I use the Center for playfield locations, for the slanted ramps. And that worked. It still isn’t that easy. There’s still an enormous amount of nonsense going on to make it happen. But, um, that worked. And it worked pretty well.
Frank Cifaldi 38:48
So, um… That’s incredible. So one of the things you note in the in the article is, you know, you had exactly 4096 bytes of ROM memory. Was that the maximum at the time or were they just cheaping out on manufacturing costs?
Garry Kitchen 39:05
Well, you could… The standard from Atari was 2000 was 2k or 4k.
Frank Cifaldi 39:10
Si.
Garry Kitchen 39:11
I had done Space Jockey in 2k. This was 4k. Keystone Kapers was 4k. Pressure Cooker was 4k. People didn’t usually go to 8k unless they wanted to spend more money because it was more expensive. I mean, you have double the memory. So 8k was available. But the Greenberg brothers, who owned Coleco, and stood one over my left shoulder and the other over my right shoulder while I worked. They saw no reason to spend more money on a ROM because they knew they were going to basically sell every cartridge they could manufacture unless it was a complete piece of garbage, and they knew it wasn’t going to be a complete piece of garbage because they could see what I was doing. So I don’t blame them. I probably would have made the same decision. Why eat in to my profit if I’m manufacturing-limited, and I’m not going to get any more out to retail than maybe four or 5 million in 1982, and they sold every one.
Kelsey Lewin 40:15
Right, I mean, you’re pre-game crash here, so I mean, there’s not really the idea yet of, “Oh, there can be games that are so bad that people are really mad.”
Garry Kitchen 40:24
¡Derecha! Derecha.
Kelsey Lewin 40:27
It’s a popular arcade game, people are probably gonna buy it no matter what just based on the title alone.
Garry Kitchen 40:34
Derecha. And believe me, I’ve had my share of people who are mad about this game over the years because it doesn’t have the other two levels in it. But that was the limitation of 4k. And that, you know, that was their call. And, and honest to God, even if they had said, “Do it!” I couldn’t have done it anyway, because I didn’t have time. I mean, I worked from April to – I don’t know – end of July? 90-some days? And I had no more time left to do two more levels. It’s just the reality. You know, in the game industry, there’s always this problem when you’re doing licensed properties of – I mean, probably not so much now, but definitely back in the old days – you get the license, you say, “I want it for the holiday season.” And that amount of time is random. I mean, maybe you got the license in August. Or maybe you got it in January. Hey, great! But you know, they got it around mid-year or whatever, and there was no going past holiday on shipping. So you had the time you had, you know? And there was no… that was not a time, when people would say, “Oh, gee, let’s hold it up and go for the next Christmas and make the game better.” That wasn’t gonna happen.
Frank Cifaldi 42:00
So, you know, we’re always, of course, really appreciative when people publish their their memories, like you like you did, but I’m just kind of wondering: What’s inspiring you right now to write about your 2600 development?
Garry Kitchen 42:17
Well, it started a year ago, two years ago, maybe? I was on Quora. If you know, Quora?
Frank Cifaldi 42:25
Of course, yeah.
Garry Kitchen 42:26
And somebody asked a question. They said, “What’s the best program as a programmer that you wrote by yourself?” And I saw that and laughed and said, “Ah, God, I gotta answer this one!”
Kelsey Lewin 42:46
Kinda showed it to everyone else, there…
Garry Kitchen 42:48
Eh, it was just kind of for fun, you know? I said, “Maybe somebody will find this is interesting.” And I’d never done that before. So I wrote, you know, that my most impressive program that I wrote all by myself is 2600 Donkey Kong, and I put a picture. Well, that blew up on Quora like I never imagined it would. Crazy. I got hundreds and hundreds of people commenting. So people were really interested in it. And then I forgot about it. But I have been saying for years, that when David and I go to those conferences, we get up there and we tell our stories, we have always come away saying, “You know, we got to document all those stories!” Because we have so many of them. So many stories of games or things that happened or people we met or events. And I have a list on my computer of, you know, 50 or 100 topics that I’ve said, “Boy, at sometime I’ve got to start writing these down.”
Kelsey Lewin 43:55
Oh, that’s amazing.
Garry Kitchen 43:55
So I just started to do it.
Kelsey Lewin 43:57
That’s so great. I saw that when you tweeted the story out, I saw Howard Scott Warshaw even responded to you saying that he was like, you know, thankful you were sharing your stories. And he’s like, “I’m writing a book now.” And so I think there’s starting to be – and maybe it started with all of you guys going to these retro shows in the beginning and kind of realizing that people want to hear these stories – but it’s really nice to see that there’s more, more of this starting to happen, whether it’s articles or books or whatever. Really thankful that you guys are getting the chance to document some of this stuff.
Garry Kitchen 44:35
Yeah, it’s… I think it’s important. Um, I don’t… You know, I wish people had saved source code a little better than they did…
Frank Cifaldi 44:45
Don’t get us started…
Garry Kitchen 44:48
Or running versions of games, even. I mean, I did games on online that you can’t play, and you’ll never be able to play. So it’s like, you know, at least we can write this stuff down. And honestly, between you and me, all my articles will turn into a book one day. I mean, I already know I’m gonna put them all on a book. And it may be a book I do myself or it may be a book I do with Dave because he has an equal amount of stories. But I’m probably more inclined to write than he is. Both of my parents were journalists. So I have writing in the blood so I have no problem writing. So I’m going to keep doing it. And I’m going to keep publishing them, I’m going to put them in my little archive. And when I have three or four-hundred pages of them, I’ll probably publish a book about the craziness of the game industry.
Frank Cifaldi 45:44
And we will add it immediately to our library at the Video Game History Foundation.
Garry Kitchen 45:49
At least two copies!
Frank Cifaldi 45:53
Um, so why do you think… I don’t know, I don’t know if you share this opinion. But I think people are particularly fascinated with this system. You see things like, you know, Ed Fries retiring from Microsoft and writing a 2600 game? You see… actually Tim Schafer, from Double Fine? He’s kind of toying around at night with writing some 2600 software. Like what… what is it about this system that draws people?
Garry Kitchen 46:25
Well, I think for the developer, it’s almost like you have to prove you can do it. If you haven’t done it, and you’ve gone off and done amazing things like Tim Schafer has, he feels like it’s the last notch on his holster that he has to do. He’s, like, gotta they did a 2600 game. Because it was such a rite of passage to be able to do one that I think that’s part of it. But I think it’s also that people really… I mean, right, or not accurate or not, people really consider it the birth of the industry I think, in a lot of ways. Even though there were other machines before it.
Frank Cifaldi 47:13
Yeah, I think I call it the birth of maybe the modern industry, right? It sort of set the stage for how a console is, right? Whether it wanted to or not, introduced the idea of a third-party developer, right? It’s sort of, you know, set the tone for how we market games and stuff like that. So I think I agree with you.
Kelsey Lewin 47:38
And licenses and that sort of thing.
Garry Kitchen 47:40
Yeah, that’s a good way of saying it. It defined the business model, which is still around today. Where prior to that, there was no third-party business model. Or there were not cartridges, you know, there were a lot of different things. But yes, that was the first one where it was, “There’s a hardware business, there’s a software business. There are third party developers.” Dave and I laugh about this all time. I was sitting in New Jersey. When I went into a store and I saw Activision skiing, and the first thing I said to myself is, “God, that’s gotta suck! How could anybody who’s not Atari do a game for an Atari machine?” I mean, he just.. it was heresy! I mean, you buy an Atari machine, you get Atari Games! And to see a third party was like, “Well, that can’t be any good.” But I bought it anyway, and brought it home and said, “Oh, my God, these guys are knockin’ it out of the ballpark!” They were so much better. But yeah, that that really did define the industry. And the industry has grown directly out of that to what it is today, in a lot of ways.
Frank Cifaldi 48:54
So, Garry, we were talking before the show about how we’ve probably bumped into each other over the last couple decades, going to Classic Gaming Expo, things like that. So you’ve been involved in those shows. I believe you’re involved in some way with the National Videogame Museum, as well. is I mean, I’m starting to think that maybe the preservation of the history of this industry is important to you.
Garry Kitchen 49:20
Oh, yeah, no – it definitely is. Definitely is. I got a kick out of those guys. John Hardie, especially when they would come to us, I don’t know, 15-20 years ago?
Frank Cifaldi 49:34
And there weren’t all that many nerds for this stuff so it was novel for you?
Garry Kitchen 49:39
Oui! At E3 or at CES before that, they would come up to us and ask us about the games and talk about that they were in Atari’s parking lot climbing in the dumpster and they found source code. And over the years, we would just talk to them every year. And then I found out what they had and it amazed me. They had so much stuff! And stuff that I never had! I mean, things that were just incredible. And then we really started to support them and say, “Look, you’re right, what you’re doing is important.” And yeah, I’m on the board of advisors now. Talk to them all the time. I keep telling them, true or not, who knows? Maybe I’ll retire one day and be the old guy who walks around the museum in Frisco, Texas, showing people all the exhibits, you know? But yeah, no… I love those guys. I think the museum is great. And I think they’re doing great work.
Kelsey Lewin 50:53
So is that the first time that you started to think about kind of your legacy? And how far the industry had come? Was when you started getting approached by, you know, the Classic Gaming Expo people? Or had you been thinking about it before then?
Garry Kitchen 51:10
No, definitely wasn’t thinking about it before then. It’s hard when you’re active and crazy busy to think about anything having to do with legacy. Right? You just don’t even think about it. I’m just doing a job. That’s all I’m doing. No, no biggie. But you know, I got further away from the industry, because in the mid ’90s, Dave and I decided to switch over to the Internet. So rather than staying on console, we started doing games online. Because it was a different business model and we thought it would be interesting to pursue that. And we did that very successfully for a number of years and really pioneered this idea of advertising sponsored games. And then around 2009, we did iPhone for a few years, and we’re very successful at that. But, you know, then you start thinking back to, “what did we do at the beginning of the industry?” Because we were on the peripheral of the industry at that point; we weren’t deep in. So that probably made me think that it was interesting to think about what… what it was like when it was just one or two people doing a game and not, you know, 1500?
Frank Cifaldi 52:40
So, you know, you mentioned wishing that more source code have been held on to? That’s actually at the Foundation right now, that’s our main project, our main initiative right now. Is sort of an awareness campaign about the volatility of source code and what can be learned and done with any source code that survives. You know, we have our perspective on that. But why is it important to you that source code gets preserved? What do you hope to see out of source code still being around?
Garry Kitchen 53:21
Well, to me, it’s equivalent to the original films for some of the old movies. You know, they lost a lot of those, they lost them in fires, or they were just misplaced. And to think that you don’t have a print of, you know, the Wizard of Oz, or Citizen Kane or whatever, because it was never preserved. It limits dramatically what you can do with it. Now, it’s not so much Donkey Kong. If you didn’t have the source for this, at least you always have the binary, but you don’t necessarily have a platform to play it on. So, I mean, you want this art to live forever, the way songs live forever. I mean, I listen to music that’s 50 years old, which sounds ridiculous, but that’s only that’s the 1960s, 1970s. And yet, there are technical barriers to play a game from the ’60s or ’70s. And I think to stop all of those technical barriers, you’ve got to have all the assets that went into making the art, where you don’t need that on music, but it would be great to have the original tapes. And you do need it on film, because you need the original negatives, but you know… it’s different free each art. But it’s gonna have little value 50 years from now if you can’t recreate it.
Frank Cifaldi 54:59
Yeah, and I mean, you mentioned film and art. That when when things get released, remastered or a restoration, I mean… they they need that source material! They can’t just… I don’t know, like, I think I think the equivalent would be if – you mentioned the Wizard of Oz – if the only print we had of the Wizard of Oz was a VHS tape, right? That’s kind of the situation we’re in with these old video games.
Garry Kitchen 55:21
Yes, it would be. It would be a real problem.
Kelsey Lewin 55:25
And you should, you know… You would end up with sort of this game of telephone that would totally garble it 100 years from now if you’re pulling from a VHS tape, and then later from a blu-ray, and then later from whatever the next format is. I mean, you end up with something that’s just completely not at all like the original. And we’re already at risk of that with video games, because a lot of what we have is just, you know, the Atari cartridges themselves or equivalent.
Garry Kitchen 55:50
Si. And that’s sad. I mean, it’s amazing to me that… it may seem long ago to some people, it doesn’t seem long ago to me that we were doing this stuff. And yet, in a lot of cases, it’s too late. We’re too late. I don’t have the source code for Keystone Kapers. You know, and that’s terrible. And it really wasn’t that long ago in the grand scope of things. So yeah, I think anybody who doesn’t preserve source code now really just doesn’t get it.
Frank Cifaldi 56:29
But would your defense be naivety back then?
Garry Kitchen 56:36
Well, yeah, back then no one was talking about it. No one was thinking about it. And the biggest problem is that there’s so much jumping around companies in the game industry. So you work at company A, you’re there for three years, you leave, go to company B, Company A had the copyright, you can’t take the code with you. So what there almost needs to be, is there needs to be a third party repository which is independent and guarantees confidentiality, and gets every game publisher to agree that when a project completes, they will deposit the source code into a third party repository never to be touched at unless somebody has rights to touch it. But it’ll be kept confidential, but it’ll be preserved. Otherwise, programmers can’t take the work with them when they move around.
Frank Cifaldi 57:28
Speaking our language, man.
Kelsey Lewin 57:30
I swear we didn’t coach him on this!
Frank Cifaldi 57:35
Yeah, and it’s, you know, it’s not a crazy idea, what you just said. We have that for audio and video. The Library of Congress is like a free repository, you know, that’s federally funded, that a lot of the master reels for film reside. And when the commercial industry – even Walt Disney, I think – when they’re when they’re putting out a blu-ray or something for I don’t know, Sleeping Beauty, and they need to remaster that film, that master material exists in this archive. And yeah, we’re all hoping here for exactly what you’re describing that we figure out how to do that for source code. Because I just don’t trust this stuff to survive within the commercial industry.
Kelsey Lewin 58:18
And there’s a lot more secrecy, I feel like, in the in the video game industry, too, that we have to contend with that maybe isn’t there so much for some of these other industries, where even if you do have something like a third party repository. To get everyone to trust you is a pretty big undertaking.
Garry Kitchen 58:36
Derecha. And it’s even worse than that. Because you don’t know how hard it is to make sure you have THE – and I underline the – source code, even though you think, “Ah, can’t be that hard!” Dave and I did a project in the mid 1990s for a company in Japan that I had a relationship with. They wanted us to take a game on the PlayStation. What was it, take it maybe from PC to PlayStation? We said, “OK, you’re gonna give us the source code, right?” “Oh, yeah.” “All the source code, right?” “Oh, yeah.” And it’s a big, big company in Japan. So they sent us all the source code, and all the supporting files and all the tools – you need the tools that make part of it. All this stuff. And we started working on it and said, “This isn’t the right source code…” And they said, “No, no, it definitely is.” And we said no. Because there were things in the game that were different. And they swore it was the right source code. And it wasn’t. And this happens time and time and time again. You think you have the right source code, but you don’t. The only way you know you have the right source code is if you take the entire hard drive of the machine that built the game. Then you know you have the right source code. Otherwise, when you take all the files off, you leave something behind. And and people don’t… they haven’t grasped that that’s possible because they’re not that stupid. But it happens every time. À chaque fois.
Frank Cifaldi 1:00:21
Cela fait. I can vouch for that, from my brief development career. I can point to commercial published examples of that, even. There was that Silent Hill compilation from again, a Japanese publisher which would be Konami, where it was pretty obvious looking at the game that the people who ported it to the – I think it was the 360 – Xbox 360 just had source code that wasn’t quite final? Or just a little bit off? And to your point, it’s like, they might have grabbed it from someone’s computer and maybe they didn’t need those particular pieces to do their job. So it wasn’t a complete repository.
Garry Kitchen 1:01:02
Derecha. And it’s really, if you want to be completely 100% on mission, it’s not just the source. It’s the source. It’s all the tools. Because game developers always have dozens of tools that they write specifically to do a game. I have this tool here that converts the map into a data table. Well, we need that tool, because 50 years from now, we may want to do that. And it’s the original art files, and the original audio files, and the Photoshop files, and the 3d Studio Max files, and you never get that stuff. But if you don’t get that stuff, you don’t have all the source. You need it all. And it’s impossible to get it, or very hard.
Frank Cifaldi 1:01:53
Yeah, I mean, it’s impossible even inside of a studio to champion that. Like the best examples we know of: I don’t know if you’re aware, Garry, that that Electronic Arts has an archive team. And that that is their entire role. But I just I don’t suspect that many other companies have people who are dedicated to that sort of thing. And it’s a little terrifying. Yeah, no, it definitely, it definitely is. I mean, I’ll tell you what’s funny. What I do now, in addition to some game consulting, as I do a lot of work as an expert witness in the industry, meaning that I’m hired by attorneys during litigation to do analysis of things, and then to write reports explaining what I found, so that the court understands from an expert what’s really going on. And in that role, I’ve had to do everything we’ve talked about. I’ve been handed a pile of binary data and said, “This is a Super NES game. We don’t have the source code for it, could you figure out how it works?” You know, or: “This is a source repository of six gigabytes of data and we need you to find this.” And you know, so I am always doing this forensic analysis of things. So I know how hard it is to know that you’re actually getting what you think you’re getting, because a lot of times you’re not. Well, Garry, it’s been great. Thank you so much for joining us on the Video Game History Hour. Do you have anything you want to plug or talk about before we go?
Garry Kitchen 1:03:46
Non, pas vraiment. I mean, I’m on social media. And you guys have all that. No, other than that, just look for more articles. I’ll definitely be… I have a couple of them I’m writing right now. One involving, I already published a small one about some work we did in the toy industry. And I have a more robust one coming out about the first entertainment product I ever did, which was Wildfire Pinball for Parker Brothers, which was a handheld electronic toy. And I’m doing kind of a deep dive on that; how it worked and the challenges we had getting it done. But then I’ll go back and I’m going to write that VCS one one of these days. Though, I shudder a little when I think about that, but I will be doing that one! But yeah, I mean, I’m enjoying documenting, I’m trying to get as much down as we can because, as you say it has a… you know, if you don’t put it down somewhere, eventually it’s gonna go away.
Kelsey Lewin 1:05:00
Si.
Frank Cifaldi 1:05:01
Absolument. Well, I’ll look forward to those articles and thanks again!
Garry Kitchen 1:05:06
Thank you so much for your time, guys. Appréciez-le.
Kelsey Lewin 1:05:09
Thanks a bunch.
Garry Kitchen 1:05:10
All right, bye bye.
Thanks for listening to the Video Game History Hour brought to you by the Video Game History Foundation. If you have questions or comments for the show, you can find us on Twitter @gamehistoryhour or email us at podcast@notijuegos.es. Did you know that Video Game History Foundation is a 501c3 nonprofit and that all of your contributions are tax deductible? You can support this podcast and all of our other work on Patreon or at notijuegos.es/donate. This episode of the Video Game History Hour was produced by Robin Kunimune and edited by Michael Carrell. Thanks so much for listening and we’ll see you next time.
Be the first to comment