![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)
Some crazy, wonderful person resurrected an old Apple ][ game called Robot Odyssey, making it playable in modern web browsers.
I think I was about 13 years old when I played this, and I have to give it credit for teaching me a whole lot about circuit design and programming. I obtained most of my software through piracy at the time, but this was one of the relatively few things my parents actually bought, and so I can credit them too for spending the equivalent of 80 bucks in today's money and bringing it home. That can't have been easy on the household budget.
Playing it now, I noticed a couple of references I didn't get when I was 13:

I do believe that's a Dalek, wandering the sewers! As a kid I couldn't quite parse it. It looked like a lost shopping cart.

It would be another two decades at least before I moved to Oakland and started riding BART on a regular basis.
So how did the modern developer get this ancient thing running, without using a clunky emulator which would have restricted the user interface?
They wrote a Python utility to examine the Robot Odyssey DOS executable files and translate them most of the way into C, which they then aggressively patched to add mouse and saved-game integration. Next they fed the C into a WebAssembly compiler, and wrapped that with some additional Javascript, CSS, et cetera to make a point-and-click interface with buttons for use on devices without a keyboard.
The whole thing has been open-sourced. It's a masterful bit of reverse-engineering.
If you want to hang out with the creator for a while, they recorded a Youtube stream of some of their early explorations in the code and with a previous port of the same game that they did for the Nintendo DS. It's companionable background listening, in the way many livestreams are.
I think I was about 13 years old when I played this, and I have to give it credit for teaching me a whole lot about circuit design and programming. I obtained most of my software through piracy at the time, but this was one of the relatively few things my parents actually bought, and so I can credit them too for spending the equivalent of 80 bucks in today's money and bringing it home. That can't have been easy on the household budget.
Playing it now, I noticed a couple of references I didn't get when I was 13:

I do believe that's a Dalek, wandering the sewers! As a kid I couldn't quite parse it. It looked like a lost shopping cart.

It would be another two decades at least before I moved to Oakland and started riding BART on a regular basis.
So how did the modern developer get this ancient thing running, without using a clunky emulator which would have restricted the user interface?
They wrote a Python utility to examine the Robot Odyssey DOS executable files and translate them most of the way into C, which they then aggressively patched to add mouse and saved-game integration. Next they fed the C into a WebAssembly compiler, and wrapped that with some additional Javascript, CSS, et cetera to make a point-and-click interface with buttons for use on devices without a keyboard.
The whole thing has been open-sourced. It's a masterful bit of reverse-engineering.
If you want to hang out with the creator for a while, they recorded a Youtube stream of some of their early explorations in the code and with a previous port of the same game that they did for the Nintendo DS. It's companionable background listening, in the way many livestreams are.