Top
Best
New

Posted by rabahs 16 hours ago

Porting my 1993 Amiga game to Godot, with an LLM reading the 68000 assembly(babyloniantwins.com)
These are my notes from porting my Amiga game, which I originally built in Baghdad in 1993 in MC68000 assembly, to Godot, using Claude Fable 5 during last July holiday. It took an evening! Getting the feel right and shipping it took a few more weekends and evenings.

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. The screenshots of my 1993 map editor is the first I have run it since then. The one thing I never verified myself is the 108-byte explanation.

"Before starting everything, the model assembled the code using vasm on my Mac, and kept going till the binary is byte-identical to the binaries I had in my original game. Even after that, the there was mismatch of about 108 bytes. I originally used AsmOne which assembles into memory, and the game saved into the disk by saving that memory after running the game. So the original shipped files are a snapshot of the game that had already been running, not clean asm-one output."

Please post any questions. I am also releasing the original game for free.

243 points | 69 commentspage 3
TokenLat 3 hours ago||
[flagged]
harisingh1612 4 hours ago||
[flagged]
xuchenyi 2 hours ago||
[dead]
saadyousfi 9 hours ago||
[flagged]
mattbruv 12 hours ago||
I really tried to start reading this because I am interested in the idea, but the obvious AI writing prose is just so off-putting that I can't force myself to continue reading it without my eyes rolling into the back of my head. I'm not against using AI to code, but if you're actually passionate about the project and want to share it with others, you should use your own words.
dang 12 hours ago||
I mentioned the same thing to OP by email, but this story is too good to block on that.
abrookewood 5 hours ago|||
You made the right call. Very interesting article and great to hear about the history of game development that isn't focussed on the US market.
tomcam 10 hours ago|||
I couldn't detect it from my casual read. English is almost certainly OP's second language so it seems much more forgivable.
dang 9 hours ago|||
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.

IshKebab 10 hours ago|||
Yeah I think it's not 100% AI but my vomit senses started tingling at

> The test was deliberate.

> Step one, the safe ask

> Step two, the unfair ask

My guess "AI write a blog post about this" and then he edited it, but didn't quite eliminate the stench. Pretty close though to be fair.

aenis 12 hours ago|||
To me, someone with interest in amiga games and low level assembly ports, having that write up being done by hand wasn't load bearing.

Though I'd admit that using claude for a few hours every day this year desensitivized me to its prose :-)

rabahs 7 hours ago||
I hear you. However I wrote that assembly code 33+ ago :) Again, I mentioned elsewhere on this post and in the article, I had to review and/or edit every line in this post. AI biggest help in writing was referencing the right source / graphics..etc. Thanks
khazhoux 12 hours ago||
There were a couple of AI tropes but not overly so. This is a great story, especially if you’ve programmed the Amiga before.

Think of it as: this is a story that quite possibly would not be told without AI to help with the writeup.

rabahs 11 hours ago|||
Your last point is exactly right. I wouldn't have had the time to do this port and write-up without the help of AI. Having said that, the AI wrote this based on my own notes and I edited and reviewed every line over a week. AI also helped with extracting screenshots and code snippets which would have taking me more time. I don't like to read AI writing either, but I thought that the fact that this is based on my own notes and experience and using original code and screenshots from the 90s would be of interest to the community. Thanks
sitkack 11 hours ago|||
Tics, tropes are worn out predictable plot devices
lstodd 11 hours ago|
What's the point though? If you got the stuff it's better run in UAE. If you have none I don't trust you and therefore think the Amiga name is misleading. To gain trust here show some code running in UAE.

There is no point in "porting to Godot" because either you port Amiga stuff to UAE-likes or FPGAs or you in fact advertise "AN AI REWROTE MY CRAP GWBASIC GAME FROM 93 LOL". Lol. Which is riduculous.

and people will just laugh.

also 68k asm is actually human-readable compared to x86.

cstrahan 8 hours ago||
Suppose there are two options: remaster the game with AI assistance, or don’t remaster the game at all (because that would entail porting 72,758 lines of assembly by hand, and the time-to-reward ratio would be deemed to low for most people).

Why complain about the outcome? The old game remains available, and you can play it for free. This isn’t some zero sum situation where the existence of the remastered game sets the world back in some way. I could see being more interested (or only interested) in playing the original, but I don’t see what motivates the negativity.

urbnspacecowboy 11 hours ago|||
This is inordinately harsh, though I agree with wanting to just play the original Amiga game. It's available at the following link from all the way at the bottom of the article: https://bithunch.itch.io/babylonian-twins
lstodd 11 hours ago||
[flagged]
rabahs 11 hours ago||
Thanks for the feedback. If you have read the article, I also mentioned that I have released the Amiga version for free to the Amiga community. AI actually helped addressing a few bugs and get it ready. You can download the ADF and play the full Amiga game for the first time since 33 years ago. This post was more about my experience using AI and interacting with assembly code from the 90s.
mickeyp 31 minutes ago|||
You don't have to apologise for anything. Your blog post, post-mortem, and detailed walked through is fantastic. This is a great use for AI.

I miss my Amiga 500 and all those days spent playing wonderful games so much. Thank you for the hit of nostalgia.

tomcam 10 hours ago|||
You handled GP's post much better than I would have.