Live data from Hacker News

Porting my 1993 Amiga game to Godot, with an LLM reading the 68000 assembly

babyloniantwins.com

41–50 of 148 posts

Re: Porting my 1993 Amiga game to Godot, with an LLM reading the 68000 assembly

#41
post #37

Hmm did you ever run the game port against the original one in UAE? With the same inputs? Or is it just "it plays right when I play it"? That 108 byte delta is puzzling...

You mean run them side by side ? No, I did not do that. I played the ported game on my Mac only. The movement feels right based on my thousands of hours playing the original. There was only small tweak I had to make the trampoline jump, but everything else ported so smooth. I think the decision that Claude made not to use Godot physics and just port everything as as, made the gameplay feels right without much tweaks.

Have you been following the videos on Youtube of the Amiga port of Sonic?

Their approach to replicating the behaviour is to run the original game logic. The display has to be totally rewritten but they had the advantage of 68k for both machines.

I don't know of any games that used the blitter for calculation like some programs did for MFM decoding, that might have presented quite the porting challenge.

Re: Porting my 1993 Amiga game to Godot, with an LLM reading the 68000 assembly

#42
post #31
post #15

Very cool! Wish you had released it back then

Thanks. I know the Amiga version took a long time. It was very hard to even look at the assembly code I wrote after so many years. AI was the hero that explained everything and helped me to package it for releasee. Enjoy!

How was Baghdad like in 1993? All I remember from that time was the Gulf war, Saddam and much conflict. I can only imagine how it would be finding hardware, books and resources such a time. That was hard enough even in parts of Europe.

Re: Porting my 1993 Amiga game to Godot, with an LLM reading the 68000 assembly

#44
A few weeks ago I downloaded a memory dump of a zx81 game, and ask Claude to build it in Go. It nailed it. Converted the binary back to basic and then to go. My idea was that the game would be unknown to llm training and perhaps a nice bench.

What a crazy thing it is to be first at the advent of personal computing, and then in the inflection point where AI treats that first experience as archeology.

Re: Porting my 1993 Amiga game to Godot, with an LLM reading the 68000 assembly

#46
> I spent the last few weeks analyzing what Claude did, feeding it my 33 years of memory of how I built the game, my notes and the git repos. It wrote the first draft of the article, and I edited line by line over a week.

Sooooo cool! I did something similar a few months ago: had the old source code (and executable files) of a game I wrote in 1991 (PC DOS) and a few notes in source code and, well, my old memories of how things worked. I didn't know how to compile it anymore but with the help of LLMs I managed to get it compiling again.

Since then I found about 8 pages of handwritten notes I took back in the days and I did immediately scan them and I added them to the repo.

Now my PC DOS from 1991/1992 does compile again and, well, I really should blog post about it one of these days (if only I had a blog...).

Re: Porting my 1993 Amiga game to Godot, with an LLM reading the 68000 assembly

#47
I just wanted to add how much in awe I am at you creating this game in '93 in assembly. Around the same time I was trying to write a game on the Atari ST, and the dedication to the project -- especially when documentation was so thin on the ground, pre-Internet -- is extraordinary. Do you have any stories from debugging the game? I always found that the most dispiriting part, after the endless hope of handcrafting the code that I was sure would work first time...

Re: Porting my 1993 Amiga game to Godot, with an LLM reading the 68000 assembly

#48
post #35
post #16

Earlier quoted context omitted.

I mentioned the same thing to OP by email, but this story is too good to block on that.

I couldn't detect it from my casual read. English is almost certainly OP's second language so it seems much more forgivable.

Yes, and that is unfortunately the worst of the fuzzy areas. We get a lot of emails from non-native English speakers asking why their posts are getting killed. This is what I usually say these days:

We understand that our non-native English speaking users are in a special position with all of this, and we sympathize - but we don't have an easy way to treat posts differently on that basis. What we're telling such users is to please write in your own voice and don't worry about any mistakes, because those are rapidly becoming signs of authenticity at this point (https://hn.algolia.com/?dateRange=all&page=0&prefix=false&qu...).

To judge by how the AI classifiers react, translation tools are leaving a ton of LLM imprints on text which are not strictly about translation. As many of us have been learning, it's hard to restrict what these systems do. They are overeager on every level.

Re: Porting my 1993 Amiga game to Godot, with an LLM reading the 68000 assembly

#49
post #28

> one copy of the Amiga Hardware Reference Manual aka The Book... my, this brings back dusty memories Babylonian Twins has such strong "Gods: Into the Wonderful" vibes, I wonder if that game was an inspiration for you https://www.lemonamiga.com/game/gods-into-the-wonderful https://www.youtube.com/watch?v=1kAXGjUwHyA

The main inspiration for Babylonian Twins that nobody mentioned or even thought about was https://en.wikipedia.org/wiki/The_Maze_of_Galious it predates them all.

Ah! How many times I played that game. I missed it on the Amiga after and never unfortunately saw your game. Those old MSX games just had good ideas.

Re: Porting my 1993 Amiga game to Godot, with an LLM reading the 68000 assembly

#50

I just wanted to add how much in awe I am at you creating this game in '93 in assembly. Around the same time I was trying to write a game on the Atari ST, and the dedication to the project -- especially when documentation was so thin on the ground, pre-Internet -- is extraordinary. Do you have any stories from debugging the game? I always found that the most dispiriting part, after the endless hope of handcrafting th…

Thank you for sharing your experience. It can be hard to remember all the details of debugging in assembly, but the main aspect I recall was managing game performance to ensure all rendering and processing stayed within 1/50 of a second. My technique was drawing a white line using the Amiga Copper, starting at the beginning of the top vertical blanking period. As I added more game objects, logic, and rendering, I had to make sure the line does not drop below the beginning of the active display area. If it went below that point, a frame would be dropped, resulting the game to flicker. I had to use many techniques to split the processing of the game objects in batches across multiple frames. Fun time.
Post reply on HN