Live data from Hacker News

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

babyloniantwins.com

51–60 of 147 posts

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

#51
post #19

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…

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.

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

#52
post #45

Great work! I'm planning to do that to another forgotten game (not mine) and it's great to see that this is now quite possible.

Thanks! Yes, this was not possible last year, and probably even a few months ago. Amazing times to revive forgotten games and software. Let me know if you have questions on my process.

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

#54
post #42
post #31

Earlier quoted context omitted.

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.

Yes, it was a tough time after the war, but the main difficulty was the economic sanctions, which hit us hard. There are a few interviews and news articles published after I launched the mobile version back in 2010 that discuss our experience in the 90s. You can read more about it here: https://babyloniantwins.com/story/ I am happy to go into more detail on any aspect. I will be watching this thread regularly.

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

#55
post #23
post #9

Wow, that's gorgeous for something written in assembly, running in 512k, nice work!

amigas were way ahead of their time. We had an Amiga 500 and then got a 386 and it was such a downgrade, but the Amiga was clearly a dying system.

Yeah, my cousin had one, was like a computer from a parallel evolution chain, kind of weird, but kind of awesome.

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

#56

> 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…

Thanks for sharing. It is truly an amazing feeling when AI helps us excavate the past. I never thought I would be able to do so. I'm so glad I kept all my files over the past 33 years.

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

#57
post #29

Earlier quoted context omitted.

That's a good point. I looked at the git history for my analysis. What is the best way to analyze claude sessions history? I definitely check if I still have them stored. Thanks

sessions are stored in the home folder somewhere but are deleted after 30 days by default. it won't be stored in the bash history, at least it does not for me on macOS with zsh + omz

Of course is one does nightly, off site backups, all is well! A friendly note to all, always have backups!

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

#58
post #41
post #37

Earlier quoted context omitted.

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.

No, I have not. I will definitely check before releasing the Amiga port inside the Steam. I think that would be the right approach, especially if you are porting a game you have not played enough. I did use blitter for all graphics. Now you mentioned MFM, I remember I wrote some disk copy protection code back in the day that leverages MFM encoding. I will check if that code is still around.

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

#59
post #34

What I'm interested in is performance and memory use. How many times less efficient is the 2010 port compared to the original? What about this new one?

Are you interested in comparing the 2010 remake (C++) to the original (Assembly)? They are quite different games, so hard to compare, but both run at peak frame rate for their respective platforms (60fps vs 50fps).

I have not compared the 2010 port to the current Godot port. However, I felt the Godot port was smoother. I think that was because Godot uses the latest graphics frameworks (e.g Metal) vs old Opengl ES 1. It would also be interesting to compare the godot port of the original game vs the original in assembly. Curious how I can achieve that. A good question to ask Claude.

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

#60
post #11
post #5

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.

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 :-)

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
Post reply on HN