Último episodio publicado: 14 de julio de 2026


8 de octubre de 2026

«Me encanta programar, sobre todo cuando supone un verdadero reto intelectual» — Entrevista a Marcus Rainbow


En un mercado cada vez más copado por el duo Centresoft (US Gold) - Ocean y sus llamativas licencias, Activision fue otra de las grandes que apostó por convertir títulos de renombre que atrajeran la atención de los jugadores domésticos. Para llevar a cabo dicha tarea bajo el sello Electric Dreams, la compañía reclutó a un nutrido grupo de programadores que en muchos casos hicieron milagros con los pocos medios a su alcance. Uno de ellos es Marcus Rainbow, quien se sacó de la manga un par de títulos de Amstrad CPC bastante llamativos y bien cuidados. Marcus se sienta hoy con nosotros para contarnos su historia.

En primer lugar, permíteme darte las gracias por tu amabilidad al aceptar esta entrevista. Empecemos por el principio: ¿cómo y cuándo empezó tu interés por la tecnología?

Me enganché cuando estaba en la universidad. Mi primer programa lo escribí en BASIC en un mainframe ICL 2980, pero luego me dieron presupuesto para comprar un ordenador con microprocesador para nuestra facultad. Era un Tandy TRS80. Mirado con perspectiva, era un ordenador horrible, pero a mí me encantaba. 

¿Cuáles fueron las primeras máquinas que entraron en tu vida?

Tuve, o al menos pude jugar con, muchas de las máquinas con microprocesador de 8 bits. Por orden aproximado: TRS80, Research Machines 380Z, Sinclair ZX81 (con su inestable memoria), Commodore PET, Oric (con Forth en lugar de BASIC), BBC Micro (esa fue la primera máquina en la que programé en serio, en lenguaje ensamblador 6502), Amstrad CPC, Sinclair Spectrum y la gama Amstrad PCW. 

Elite para BBC Micro. Fuente: bbcmicro.co.uk

Normalmente vemos que los desarrolladores de videojuegos suelen estar influenciados por los juegos a los que solían jugar de pequeños. ¿Cuáles eran tus favoritos?

Me pasé demasiado tiempo jugando a los clásicos de las máquinas recreativas: Space Invaders, Asteroids, Lander, etc. Me encantó Battlezone cuando salió al mercado. En aquella época fue revolucionario. Después me enganché a Elite. David Braben e Ian Bell eran unos genios. Y esas aventuras clásicas de texto, como La Guía del Autoestopista Galáctico; eran realmente ingeniosas.

Para la mayoría de nosotros, jugar a videojuegos era suficiente. ¿Qué te llevó a aprender a programar?

Jugar a videojuegos no era ni mucho menos suficiente. Quería saber cómo funcionaban los ordenadores. Quería hacer que hicieran lo que yo quisiera. Programar era y es mucho más divertido que jugar a videojuegos. 

Amstrad CPC 464 con monitor a color

¿Cómo entró el Amstrad CPC en tu vida?

Me encantaba programar para el BBC Micro, pero me di cuenta de que nadie me iba a pagar por hacerlo, así que lo cambié por un CPC. Para ser sincero, el Amstrad era un ordenador mejor: tenía más RAM y una CPU mejor (vale, sé que esto último es controvertido).

Una cosa es querer aprender a programar y otra muy distinta es ser capaz de hacerlo. En aquellos tiempos no teníamos ni a Claude ni a GitHub :-) ¿Cómo aprendiste a programar? ¿Cuáles eran tus recursos favoritos?

Solía leer muchas revistas, pero, sinceramente, todas eran bastante inútiles. Tenía un libro de códigos de operación del Z80 y otro del 6502, y simplemente aprendí por mi cuenta. Cometía muchos errores, pero se podía experimentar con mucha facilidad y rapidez. 

 

The Ins & Outs of the Amstrad

¿Cómo aprendiste a programar las características específicas del CPC? (CRTC, sonido, etc.).

Había un libro que era mi biblia: The Ins & Outs of the Amstrad. Uno de los mejores libros de informática que he leído, tanto antes como después. Explicaba con un detalle asombroso cómo funcionaba el hardware. No utilicé nada del firmware para Rampage, salvo para cargar inicialmente el código. Todo se programó desde cero, y eso se lo debo en gran parte al libro. Era algo alucinante, sobre todo la forma en que funcionaba el teclado del CPC. 

¿Cómo y cuándo te diste cuenta de que tu código era lo suficientemente bueno como para intentar venderlo?

Vi un anuncio en la oficina de empleo: buscaban programadores de videojuegos para trabajar en los juegos de Activision. Solicité el puesto y me lo dieron. Para ser sincero, creo que en aquella época habrían contratado a cualquiera, pero a mí me pareció que era una oportunidad de verdad. 

Pantalla de carga de Rampage

Tu primer gran juego fue Rampage para el Amstrad CPC, pero es demasiado bueno como para ser tu primer intento en el desarrollo de videojuegos. ¿Qué habías programado antes de Rampage?

Ese fue mi primer juego. Antes de eso, había escrito un intérprete de LISP para el CPC y un modelo físico técnico para la BBC, ambos en ensamblador, además de algunos otros programas principalmente en BASIC.

¿Cómo acabaste en Electric Dreams?

Fue gracias al anuncio de la oficina de empleo. En aquel momento me parecía increíble poder trabajar en los juegos de Activision.  

¿Cómo cae Rampage en tus manos?

Era un recién llegado, directamente de la oficina de empleo. Los chicos de ED me dijeron: «Este es el juego que queremos que adaptes. Tienes tres meses. Aquí tienes una bolsa de monedas de diez peniques. Ve al recreativo y juega hasta que sepas cómo escribir una copia para el CPC». Y eso fue lo que hice. 

Created on the Amstrad, literal.

¿Qué ayuda recibiste de ED para adaptar Rampage al CPC?

Esa bolsa de monedas de 10 peniques, además de un vídeo en el que se veía a alguien jugando al juego. No hubo ninguna ayuda más. 

¿Cómo era tu entorno de programación? (hardware, software, etc.)

Un fiel Amstrad CPC. Al menos era un 6128, lo que significaba que tenía una unidad de disco. Las cintas habrían sido un suplicio. Y el único software que utilizaba era un monitor de código. Podías escribir código ensamblador en él y lo convertía directamente a código máquina y lo almacenaba en memoria, o lo desensamblaba a la inversa. Podías aplicar etiquetas legibles para el ser humano, pero eso era todo. Sin comentarios ni nada más. 

No fue hasta más tarde cuando descubrí que se podían comprar ensambladores que convertían el código fuente escrito en un archivo de texto e incluso permitían incluir comentarios.

Cuando entregué el juego terminado, Activision me pidió el código fuente, pero simplemente no lo había. Solo estaba el código máquina con el que había estado trabajando directamente. 

Rampage en acción

¿Cuáles fueron los mayores retos a la hora de convertir Rampage al CPC y cómo los resolviste?

Lo más difícil fue conseguir una animación fluida en pantalla. Al final lo logré utilizando dos copias de la memoria de pantalla y alternando entre ellas. Eso significaba que siempre estaba actualizando la copia que no se veía, lo que hacía que fuera muy fluida. Eso implicaba que 32 K de la memoria del CPC quedaban ocupados solo para la visualización, pero el juego tenía que correr en los 64K del Amstrad CPC 464, asi que fue difícil encajar toda la jugabilidad en los 32 K restantes. 

¿Cómo fue trabajar con MAK? ¿Te exigía que movieras con fluidez unos gráficos espectaculares o era al revés y tú le decías: «¡Aquí tienes esta potencia, haz unos gráficos espectaculares para ello!»?

Tiene su gracia. Al principio hice mis propios gráficos. Creía que había hecho un trabajo realmente bueno, pero entonces mi jefe me dijo: «Ralph y Lizzy parecen más bien hamsters». Tenía razón, por supuesto. Se necesita mucha habilidad para crear buenos gráficos. MAK creó estas imágenes y encajaron a la perfección. Fue transformador. 

Pantalla de carga de Championship Sprint

¿Cómo acabaste participando en Championship Sprint? ¿Por qué solo programaste el editor y no todo el juego?

Me hice cargo de ese juego después de que otra persona hubiera escrito la mecánica básica. Aun así fue divertido crear el editor.

¿Cómo fue el proceso de control de calidad de ambos juegos? 

Solo recuerdo que hubiese control de calidad para Rampage. Había un tipo —a mí me parecía anciano, probablemente rondaba los 30— que estaba totalmente metido en los videojuegos. Se pasó el día jugando a Rampage sin parar y me daba listas de errores que tenía que arreglar. Solo nos llevó una semana más o menos, pero no creo que ninguno de los dos durmiese mucho.

Championship Sprint en acción

¿Creaste tus propias rutinas de carga de cintas o discos, o utilizaste las que te proporcionaron? ¿Participaste de alguna manera en el proceso de duplicación? 

Cargaba el juego por secciones desde el disco, reubicándolas manualmente, y al final sobrescribía el cargador. Funcionó bien durante el desarrollo y el control de calidad. Después, los chicos de Activision lo cogieron y escribieron su propio cargador con protección contra copias. No tengo ni idea de cómo lo hicieron, sobre todo teniendo en cuenta el estado de mi código. Fue una genialidad, supongo, pero nunca supe cómo lo hicieron.  

¿Cómo era el ambiente de trabajo en Electric Dreams? ¿Había algún tipo de rivalidad para ver quién era el mejor desarrollador o simplemente compartíais consejos con vuestros compañeros?

No había rivalidad. Nos dábamos consejos unos a otros, pero, la verdad, los demás programaban para máquinas diferentes, normalmente con procesadores distintos, así que no había mucho que pudiéramos compartir. Simplemente trabajábamos por nuestra cuenta. 

Cerca de Valencia poco después de acabar Rampage

Gente joven y creativa reunida en el mismo sitio durante varios días… Seguro que surgieron anécdotas divertidas :-) ¿Cuáles son tus favoritas? 

En la oficina de Activision había muchísima gente trabajando las 24 horas del día, los 7 días de la semana. Yo dormía en el suelo, y no mucho tiempo cada día. Lo mismo les pasaba a muchos otros. El olor se volvió tan insoportable que fui a Southampton y compré una bolsa grande de calcetines limpios, que repartí por toda la oficina. Eso ayudó un poco.  

Había otro chico que también se pasaba toda la noche programando. Se quedaba dormido mientras tecleaba y su nariz se iba hundiendo poco a poco sobre el teclado. El búfer del teclado se llenaba y empezaba a pitar. Se despertaba sobresaltado, borraba las tonterías que su nariz acababa de escribir y seguía adelante.  

Trabajábamos un porrón de horas. Una vez estuve trabajando desde el viernes por la mañana hasta el domingo por la noche sin descanso.

¿Cómo era un día normal de trabajo?

Supongo que acabo de responder a esa pregunta, aunque al principio todo era un poco más tranquilo. Solo en las últimas semanas antes del lanzamiento era cuando todo se volvía una locura. 

Edición 'The Hit Squad'
 

¿Qué te hizo dejar de hacer videojuegos?

Es una pregunta fácil de responder: la verdad es que nunca me pagaban. Cada mes se suponía que debía recibir una nómina y cada mes me daban alguna excusa: «Este mes andamos un poco justos de dinero, aquí tienes un par de cientos para que te las apañes y te lo compensaremos en Navidad». Solo que nunca lo hicieron.  

Conseguí un trabajo de verdad, en Locomotive Software, y durante años no me lo podía creer cada mes cuando el dinero aparecía sin más en mi cuenta. Parecía magia.  

¿Algún juego en el que ya estuvieras trabajando pero que nunca llegaste a terminar?

Estaba trabajando en una adaptación de After Burner para el Spectrum. Tenía los sprites básicos funcionando. El rendimiento era algo nunca visto en el Spectrum, pero solo llegué hasta los sprites. 

Marcus en la actualidad

¿Hay algún proyecto de Electric Dreams que te hubiera encantado hacer pero que no te asignaran?

Había un juego que tenía muchas ganas de crear, pero era demasiado avanzado para la tecnología de la época. Quizá ahora sería posible. Era una especie de mundo infinito que se generaba por sí mismo a medida que lo explorabas. Si abrías una puerta, se creaba lo que había detrás de ella, en función de tus experiencias hasta ese momento.  

Tus dos trabajos más conocidos en el mundo de los videojuegos fueron adaptaciones de recreativas. ¿Nunca te tentó la idea de trabajar en material propio e intentar publicarlo en otro sitio?

El mundo de los videojuegos sigue tentándome, pero he encontrado mucha satisfacción en otros aspectos de la programación, sobre todo en la creación de lenguajes de programación.  

Anuncio de LocoScript PC

¿Cómo acabaste en la legendaria Locomotive Software? ¿En qué productos trabajaste allí?

Tienes razón al llamarla legendaria. Trabajaba codo con codo con los tipos que habían escrito los intérpretes de BASIC y los sistemas operativos de los ordenadores con los que yo había aprendido. Sentía que de ninguna manera merecía estar trabajando allí.  

Fue a través de un anuncio de trabajo en The Guardian. Tuve que mudarme al sur de Inglaterra para aceptar el puesto. Cuando me mudé allí, no tenía nada. No podía permitirme el billete de tren de vuelta, así que me quedé después de la entrevista y busqué un sitio donde vivir. Mis amigos me dieron su ropa interior vieja para que pudiera arreglármelas.  

Mi primer trabajo allí fue crear LocoScript PC, una adaptación de su procesador de textos desarrollado para el PCW. Estaba escrito íntegramente en ensamblador, lo que hizo que la adaptación fuera todo un reto. El código fue toda una revelación: estaba muy bien estructurado y comentado. Todavía baso mi estilo de programación en lo que aprendí allí. Cuando terminé, lo que teníamos era básicamente un clon de la versión para PCW. Entonces, el resto del equipo se puso manos a la obra y entre todos añadimos nuevas funciones. Cuando lanzamos LocoScript PC, era mucho más potente que la antigua versión para Z80.

Mi último trabajo allí fue LocoScript 3, que consistió en adaptar de nuevo al Z80 las funciones más interesantes de LocoScript PC. El problema era la memoria. LocoScript 2 ocupaba exactamente 256 K, lo que significaba que cada byte necesario para las nuevas funciones tenía que conseguirse eliminando ineficiencias del código antiguo. Lo llamamos caza de bytes. 

Locoscript 3 

¿Qué aprendiste en aquellos años que te ha servido de ayuda a lo largo de toda tu carrera?

Los años en Locomotive me convirtieron en un programador profesional en lugar de un hacker. Solía comentar todo correctamente, probar las cosas con cuidado y configurar sistemas automatizados para que la compilación y las pruebas estuvieran totalmente automatizadas. Ahora es una práctica habitual, pero desde luego no lo era entonces. 

Has dedicado una parte bastante importante de tu carrera a trabajar en el sector bancario. Solo por curiosidad: ¿hay algo en común con el desarrollo de videojuegos?

Me encanta programar, sobre todo cuando supone un verdadero reto intelectual. La programación de videojuegos lo era en aquellos primeros tiempos, pero también lo eran los algoritmos de fijación de precios que utilizábamos en banca. La principal diferencia entre los videojuegos y el software bancario es que, en los videojuegos, lo más importante es seguir adelante: si hay un fallo, puede que seas capaz de atravesar una pared o algo así, pero nadie va a salir perjudicado. En la banca, lo que realmente importa es dar con la respuesta correcta. Puede ser un fastidio tener que arreglar el lío que provoca una excepción no gestionada, pero es mucho, mucho peor dar un precio erróneo por algo.

¿Es la programación una disciplina que se puede dominar con el estudio y la práctica, o tiene un fuerte componente de inspiración?

A menos que te guste programar, no vas a llegar a ninguna parte. Necesitas motivación pero, en realidad, es una mezcla. Puedes aprender algo de los libros y los tutoriales, pero, en última instancia, se aprende mejor probando cosas, corrigiendo errores y pensando profundamente sobre el diseño.

CPCTelera

¿Todavía conservas tu código y/o los discos de desarrollo? Si es así, ¡deberían estar en un museo!

¡Gracias! Seguro que están por ahí arriba, en mi desván.

¿Oyes la llamada del ensamblador? ¿Veremos algún día otro intento de desarrollo de videojuegos por parte de Marcus Rainbow?

Todo es posible, aunque no creo que escribiera código ensamblador a mano. Los compiladores son muy buenos hoy en día. Yo mismo he escrito muchos. De hecho, eso es lo que más me gusta hacer últimamente: diseñar nuevos lenguajes y crear compiladores para ellos.

¿A qué te dedicas hoy día?
 
Trabajo para una empresa llamada Manakau. Es un sitio estupendo para trabajar: tengo mucha libertad en lo que hago y tengo la oportunidad de trabajar con gente muy inteligente. Me he dedicado a crear compiladores para lenguajes específicos de dominio. 

¿Qué sabe ChatGPT sobre Marcus?

¿Qué tienen de especial los lenguajes específicos de dominio? ¿Acaso hoy en día no es todo IA? 

Esa es la idea. Claude y ChatGPT son excelentes programando, pero necesitan un lenguaje en el que escribir. Uno de esos lenguajes, ManakauFirm, describe las finanzas de una empresa. Un modelo de lenguaje grande (LLM) como Claude puede utilizarlo para crear un gemelo digital. Así, puedes plantear preguntas como: «¿qué pasaría si los precios del petróleo subieran aún más?» o «¿qué pasaría si lanzáramos un nuevo producto al mercado?». El lenguaje impone restricciones a lo que tú, o Claude, podéis hacer: impone un rigor contable para que Claude no pueda simplemente inventarse dinero de la nada. Pero ofrece la flexibilidad necesaria para modelar o plantear cualquier cuestión que tenga sentido desde el punto de vista financiero.

Permíteme darte nuevamente las gracias por tu tiempo y amabilidad. ¿Hay algo que te gustaría añadir para nuestros lectores?

Gracias por hacerme estas preguntas. He disfrutado mucho reviviendo aquellos años en ED y Locomotive. Fueron tiempos divertidos y sigo en contacto con algunos de los antiguos miembros del equipo de Locomotive. Y un mensaje para tus lectores: probad a programar por vuestra cuenta; os encantará.

ENGLISH INTERVIEW

First of all let me thank you for your kindness in accepting this interview. Let’s start from the very beginning: How and when did your interest in technology start?

I got hooked when I was at university. My first program was in BASIC on a ICL 2980 mainframe, but then I was given budget to buy a microprocessor based machine for our college. It was a Tandy TRS80. Horrible machine in hindsight, but I loved it.

Which were the first machines that entered your life?

I owned, or at least got to play with, a lot of the 8 bit microprocessor machines. In rough order, TRS80, Research Machines 380Z, Sinclair ZX81 (with the wobbly ram), Commodore PET, Oric (Forth instead of basic), BBC micro (that was the first machine I seriously programmed, in 6502 assembly language), Amstrad CPC, Sinclair Spectrum, Amstrad PCW range.

Elite for the BBC Micro. Fuente: bbcmicro.co.uk

We usually find that game developers are usually influenced by the games they used to play at an early age. Which ones were your favourites?

I spent far too long playing the arcade classics. Space Invaders, Asteroids, Lander etc. I loved Battlezone when that came out. It was ground breaking at the time. Then I got hooked on Elite. David Braben and Ian Bell were geniuses. And those classic text adventures, like Hitchhiker's Guide to the Galaxy - they were genuinely witty.

For the most of us, playing games were enough. What moved you to learn how to code?

Playing games was no way enough. I wanted to know how computers worked. I wanted to make them do the things I wanted them to. Programming was and is so much more fun than playing games.

Amstrad CPC 464 with color Monitor

How did the Amstrad CPC enter your life?

I loved writing for the BBC micro, but I realised that nobody was going to pay me to do that. So I traded it in for a CPC. To be honest, the Amstrad was a better machine - more RAM, better CPU (OK, I know that's controversial).

One thing is wanting to learn how to code and another one is being able to do so. Back in the day we didn’t have Claude or GitHub :-) How did you learn how to code? Which resources were your favourites?

I used to read a lot of magazines, but to be honest they were all pretty useless. I had a book of Z80 opcodes and another of 6502, and I just taught myself. Lots of mistakes, but you could experiment really easily and quickly.

The Ins & Outs of the Amstrad

How did you learn to program the specifics of the CPC? (CRTC, Sound, ETC).

There was a book that was my Bible: The Ins & Outs of the Amstrad CPC. One of the best computer books I've read before or since. It told you in amazing detail how the hardware worked. I didn't use any ofv the built in software for Rampage, except for initially loading the code. It was all programmed down to the metal, and lots of thanks to the book. It was hair-raising stuff, especially the way the CPC keyboard worked.

How and when did you realise your code was good enough to try to sell it?

I saw an advert in a job centre - games programmers needed to work on Activision games. I applied for the job and got it. To be honest, I think they would have taken anybody on at the time, but I thought it was the real deal.

Rampage Loading Screen
 

Your first big game is Rampage for the Amstrad CPC, but it’s too good to be your very first attempt at game development. What have you programmed prior to Rampage?

That was my first game. Before that, I'd written a LISP interpreter for the CPC and a technical physics model for the BBC, both in assembler, plus a few other programs, mainly in BASIC.

How did you end up working for Electric Dreams?


That was the job centre advert. At the time it seemed unbelievable, to be working on Activision games

How did Rampage end up in your hands?

I was a new recruit, straight from the job centre. The guys at ED said, here's the game we want you to convert. It should take three months. Here's a bag of ten pence pieces. Go down to the arcade and play the game until you know how to write a copy for the CPC. So that's what I did.

Created on the Amstrad, literaly.
 

What help did you have from ED to port Rampage to the CPC?

That bag of 10p coins, plus I got a video of someone playing the game. There was no help. 

How was your coding setup? (Hardware, software, etc)

Hardware was the trusty CPC. At least it was a 6128, which meant I had a disk drive. Tapes would have been painful. And the only software I used was a monitor program. You could type assembly language into it and it would convert it straight to machine code and store it in memory, or it would disassemble it the other way. You could apply human-readable labels, but that was it. No comments or anything.

It was only later that I discovered that you could buy assemblers that would convert source code written in a text file, and even allow comments.

When I handed over the finished game, Activision asked for the source code, and there just wasn't any. Only the machine code that I'd been working with directly.

Rampage in action
 

Which were the biggest challenges porting Rampage to the CPC and how did you solve them?

The hardest thing was getting smooth animation on the screen. I ended up doing it by having two copies of the screen memory and swapping between them. That meant I was always updating the copy you couldn't see, which made it super smooth. But it meant 32k of the CPC memory was tied up just for the display and the game had to run on the 64k CPC 464, so it was hard to squeeze all that gameplay into the remaining 32k

How was working with MAK? Would he push you with gorgeous graphics that you had to move smoothly or was the opposite and you told him “here’s so much power, do gorgeous graphics for it!”?

It's funny. To begin with I did my own graphics. I thought I'd done a really good job, then my boss said ‘Ralph and Lizzy look more like hamsters’. He was right of course. You need real skill to create great graphics. MAK created these images and they just plugged in. It was transformative.

Championship Sprint Loading Screen
 

How did you end up involved in Championship Sprint? Why did you just coded the editor and not the whole game?

I took that game over after someone else had written the basic gameplay. It was fun doing the editor, though.

How was the QA process of both games?

I only remember any QA for Rampage. There was this guy - he seemed ancient to me, probably about 30. He was totally into playing games. He just played Rampage to death, giving me lists of bugs to fix. It only took about a week, but I don't think either of us slept much.

Championship Sprint en acción

Did you do your own tape/disc loading routines or did you use any provided to you? Were you involved in anyway in the duplication process? 

I loaded the game in sections from disc, manually relocating them. And eventually overwriting the loader. It worked well for development and QA. Then the guys at Activision took it away and wrote their own copy protected loader. I've no idea how they did it, especially given the state of my code. Genius, I guess, but I never knew how they did it.

How was the working atmosphere in Electric Dreams? Was there any kind of competition to see who was the best developer or would you just share tips with your colleagues?

There was no competition. We'd give each other tips, but tbh the other people were programming different machines, generally different CPUs, so there wasn't a lot we could share. We just worked on our own.

Near Valencia after finishing Rampage

Young and creative people together in the same place for days… It probably happened funny anecdotes :-) Which ones are your favourites?

Working in the Activision office, there was loads of people working there 24/7. I just slept on the floor, and not for very long each day. And same with lots of other people. The smell got so bad, I walked into Southampton and bought a large bag of fresh socks, which I shared around the office. That helped a bit.

There was this other guy also coding all night. He would fall asleep while typing and his nose slowly dropped onto the keyboard. The keyboard buffer would fill up and start beeping. He'd wake up with a start, delete the rubbish his nose had just typed, and carry on.

We worked crazy hours. I once worked from Friday morning to Sunday night without a break.

How would a typical day of work be?

I guess I just answered that question. Though it was a bit more civilised to begin with. It was just the last weeks before release that got crazy.

The Hit Squad version
 

What motivated you to stop doing games?

Easy question to answer. They never really paid me. Every month I was supposed to get a pay cheque and every month I'd get some excuse - Cash a bit tight this month, here's a couple of hundred to keep you going and we'll make it up at Christmas. Only they never did.

I got a proper job, working for Locomotive Software, and for years I couldn't believe it each month when the money just appeared in my account. It felt like magic.

Any game that was already on the works but you never were able to finish?

I was working on a conversion of the After Burner Arcade for the Spectrum. I had the basic sprites working. The performance was like nothing you ever saw on the speccy, but I only got as far as the sprites.

Marcus nowadays
 

Is there any Electric Dreams project that you would have loved to do but wasn´t assigned to you?

There was this game I really wanted to make, but it was far too advanced for the technology then. Maybe it would be possible now. It was a kind of infinite world that would generate itself as you explored it. If you opened a door it would create what was behind the door, depending on your experiences up to that point.

Your two most known gaming works were arcade ports. Were you never tempted to work on your own material and try to publish it elsewhere?

I'm still tempted by the world of games, but I've found loads of fulfillment in other aspects of programming - mainly creating programming languages.

Anuncio de LocoScript PC
 

How did you end up in the legendary Locomotive Software? In which products did you work there?

You're right to call it legendary. I was working alongside these guys who had written the basic interpreters and operating systems in the computers I had learnt on. I felt there was no way I deserved to be working there.

It was a job advert in The Guardian. I had to move to the South of England to take the job. When I moved there I had nothing. I couldn't afford the return train fare so I just stayed after the interview and found somewhere to live. My friends gave me their old underwear so I could manage.

My first job there was to create LocoScript PC, a port of their word processor, which had been created for the PCW. It was all written in assembler, which made the port more of a challenge. The code was a revelation - so well structured and commented. I still base my coding style on what I learnt there. After I had finished, what we had was basically a clone of the PCW version. Then the rest of the team all pitched in and we all added features. When we shipped LocoScript PC, it was far more capable than the old Z80 version had been.

My last job there was LocoScript 3, which was a port back into Z80 of the coolest features of LocoScript PC. The problem was memory. LocoScript 2 exactly fitted into 256k, which meant every byte needed for new features had to be found by ironing out inefficiencies in the old code. We called it byte hunting.

Locoscript 3 
 

What did you learn in those years that helped you along all your career?

The Locomotive years turned me into a professional programmer instead of a hacker. I would comment everything properly; test things carefully; set up automated systems so the build and testing was completely automated. It's standard practice now, but it certainly wasn't then.

You’ve spent quite a big part of your career working in banking. Just out of curiosity: is there anything in common with game development?

I love programming, especially when it's a real intellectual challenge. Games programming was in those early days, but so were the pricing algorithms we used in banking. The main difference between games and banking software is that in games the most important thing is to keep going: if there's a glitch, you might be able to walk through a wall or something, but nobody is going to be hurt. In banking it really matters that you get the right answer. It can be a pain sorting out the mess from an unhandled exception, but it's far far worse to give the wrong price for something.

Is coding a discipline that you can master with study and practice or has it a strong component of inspiration?

Unless you enjoy coding you're not going to get anywhere. You needs motivation. But then it's a mixture. You can learn something from books and tutorials but ultimately you learn best by trying things out, fixing bugs and thinking hard about design.

CPCTelera
 

Do you still keep your code and/or development discs? If so, they belong in a museum!

Thanks! I'm sure they are up in my loft somewhere.

Do you hear the call of the assembler? Will we someday see another attempt at game development by Marcus Rainbow?

Anything is possible, though I don't think I would be hand writing assembler. Compilers are so good these days. I've written a lot of them myself. In fact, that's what I mainly enjoy these days - designing new languages and creating compilers for them.

What are you doing nowadays?
 
I am working for a company called Manakau. It's a great place to work – I have a lot of freedom over the things I do and I get to work with clever people. I've been creating compilers for domain-specific languages.
 
What does ChatGPT knows about Marcus?
 
 
What's the big deal with domain specific languages? Isn't everything AI these days?
 
That's the idea. Claude and ChatGPT are great at programming, but they need a language to write in. One of the languages, ManakauFirm, describes the finances of a company. An LLM such as Claude can use it to create a digital twin. Then you can ask questions like – what if oil prices get even higher, or what if we market a new product. The language imposes constraints on what you, or Claude, can do – it imposes accounting rigour so Claude can't just hallucinate cash. But it gives the flexibility to model or ask whatever makes financial sense.
 
Let me thank you again for your time and kindness. Is there anything that you would like to add for our readers?

Thank you for asking these questions. I've enjoyed reliving those years in ED and Locomotive. They were fun times and I'm still in touch with some of the old Locomotive team. And a message for your readers - try programming for yourself; you'll love it.

No hay comentarios:

Publicar un comentario

Nota: solo los miembros de este blog pueden publicar comentarios.

¿Es el Spectrum Next la evolución que esperabas del <i>Speccy</i>? Tim Gilberts nos muestra en exclusiva la esperada máquina

Los pasados 27 y 28 de octubre tuvo lugar la Play Expo Blackpool 2018 , un encuentro retro en la ciudad costera británica cerca de Mán...