Pokémon Crystal gets a PC port titled "suiCune" based on C/C++ language

1779985815687.png

Continuing with the great news of Pokémon Platinum getting a native unofficial PC port just a few days ago, today, yet another classic title from the franchise has made its debut on PC hardware as well, with the latest title being none other than Pokémon Crystal.

Originally started out by developer froggestspirit with the title "suiCune", a Crystal PC port was already being planned out since 2022 based on the PRET (Pokemon Reverse Engineering Team) project for Crystal, but it got archived in February 22 of that same year after just a few commits on the repository. After that, developers DanZC and wowjinxy then forked the repository and continued where froggestpirit left off, working hard to convert the original Z80 assembly code into C/C++ language for a proper PC port. The game was rewritten in C99 and it uses SDL2 to emulate some of the aspects of the original game, like the audio and graphics, The project also restores the networking functionality of the original Mobile Adapter GB for Crystal, using libmobile to recreate the servers and restore that function to the game.

wowjinxy said:
This is suiCune, a project that took two years to actually get done. Unlike other ports for games, this is quite different. Games on most platforms tend to use C/C++, but back in the 90s for a platform such as GBC that just wasn't possible. So all of the code written was gbz80 assembly. That means that there isn't any direct way to compile to PC. Instead, suiCune had every single function hand written to match the exact logic of the assembly. It would be one thing to stop there, however we also kept save compatibility with the original pokemon crystal and got native online working by using REON, an open source reimplementation of the GameBoy's network adapter.

We are still working on it a bit here and there, although we have begun working on some other PC ports as well.

Those willing to give the PC port a try, can do so by compiling the source code directly from DanZC's GitHub repository, and as with every other PC port, decomp or recomp project, the user is required to bring their own ROM for the assets of the original game to be able to compile the project.

:arrow: Source
 
How did you feed the whole source code to Claude so it could port it in one prompt?
I did not use Claude, I used codex. I gave it the URL to the Git repo and told it to clone the repo and analyze the repo.

Here is the full prompt:


[The is a github repo to a PC port of Pokemon crystal:
DanZC/suiCune (URL: https://github.com/DanZC/suiCune)

Here is the path to a rom that I think should be compatible:
'*path to rom*'

Clone the repo and then research it extensively to find out what's needed for us to port it to MacOS (ARM64). I give you full access to install whatever Dev tools you need for this project.

The goal is a fully functional MacOS port with graphics and audio and saving working, all packaged neatly into a .app bundle.]
Post automatically merged:

Widescreen :)
 

Attachments

  • Screenshot 2026-06-01 at 17.05.49.png
    Screenshot 2026-06-01 at 17.05.49.png
    140.7 KB · Views: 1
Last edited by Givemesteak,
  • Like
Reactions: ShadowOne333
I did not use Claude, I used codex. I gave it the URL to the Git repo and told it to clone the repo and analyze the repo.

Here is the full prompt:


[The is a github repo to a PC port of Pokemon crystal:
DanZC/suiCune (URL: https://github.com/DanZC/suiCune)

Here is the path to a rom that I think should be compatible:
'*path to rom*'

Clone the repo and then research it extensively to find out what's needed for us to port it to MacOS (ARM64). I give you full access to install whatever Dev tools you need for this project.

The goal is a fully functional MacOS port with graphics and audio and saving working, all packaged neatly into a .app bundle.]
Post automatically merged:

Widescreen :)
Try that same prompt but with /goal in front of it as well it will keep going without further prompts ;)
 
  • Like
Reactions: Givemesteak
Try that same prompt but with /goal in front of it as well it will keep going without further prompts ;)

I am aware of that feature, but my experience is that it's better to use it for goals like "improve the performance using efficient micro optimizations that doesn't introduce bugs" or something along those lines.

I prefer using planning mode and implementation as the first step.
 
How did you feed the whole source code to Claude so it could port it in one prompt?
You're probably only familiar with talking to Claude or ChatGPT in a browser window.

You can also use tools like Claude Code or Codex. Those run on a command line, or basically on your computer, and can be run from a folder. the AI knows enough to then navigate through all the folders so it can self-derive project context and write new code, or modifying existing code.

With the source code, it's actually surprisingly easy to target other build systems. Like @Givemesteak , I also was able to port a fair number of my projects and build systems to work natively on ARM Mac. I actually even had someone it exactly that way to one of my projects. I verified it on my system and it worked like a charm.
Post automatically merged:

I am aware of that feature, but my experience is that it's better to use it for goals like "improve the performance using efficient micro optimizations that doesn't introduce bugs" or something along those lines.

I prefer using planning mode and implementation as the first step.
I've been having good luck with long form things on Codex and goal mode. For something I know long tail that has a lot of technical milestones in the middle, it helps to give it more agency on moving towards the target
 
You're probably only familiar with talking to Claude or ChatGPT in a browser window.

You can also use tools like Claude Code or Codex. Those run on a command line, or basically on your computer, and can be run from a folder. the AI knows enough to then navigate through all the folders so it can self-derive project context and write new code, or modifying existing code.

With the source code, it's actually surprisingly easy to target other build systems. Like @Givemesteak , I also was able to port a fair number of my projects and build systems to work natively on ARM Mac. I actually even had someone it exactly that way to one of my projects. I verified it on my system and it worked like a charm.
I wish I could. I really want to make better use of Claude but I'm awfully limited by the downtimes of 5 hours, and worse yet that I can't run any model locally due to having shit hardware to work with.
I heard really good things about Codex too, but that one seems to have a waiting list, and again with the hardware limitation I doubt i can do anything either way.
 
I wish I could. I really want to make better use of Claude but I'm awfully limited by the downtimes of 5 hours, and worse yet that I can't run any model locally due to having shit hardware to work with.
I heard really good things about Codex too, but that one seems to have a waiting list, and again with the hardware limitation I doubt i can do anything either way.
For doing reversing, you need the $100/mo tier at a minimum. $20 barely cuts it even for more basic tasks (like web development).

Running any models locally requires insane hardware. For this type of work, you'd need easily tens of thousands of dollars worth of it. It isn't feasible for a self hosted model.
 
For doing reversing, you need the $100/mo tier at a minimum. $20 barely cuts it even for more basic tasks (like web development).

Running any models locally requires insane hardware. For this type of work, you'd need easily tens of thousands of dollars worth of it. It isn't feasible for a self hosted model.
Yeah makes sense.
Sadly with both my low tier hardware, and even worse my very limited budget I can't even afford the $20/m one.
It's good to know though for later on, same for Codex too.
 
Yeah makes sense.
Sadly with both my low tier hardware, and even worse my very limited budget I can't even afford the $20/m one.
It's good to know though for later on, same for Codex too.
Oh, I hadn't even commented on Codex. Codex's $20 is a bit more generous. I wouldn't expect to get very far on the $20 but it's a good for working on existing projects.

I find Codex has more autonomy then Claude. I actually will use Codex for more narrow spikes and it'll give me through them. If you have any bugs or missing features in missing projects, Codex's $20 may be a decent option.
 
  • Like
Reactions: ShadowOne333
For doing reversing, you need the $100/mo tier at a minimum. $20 barely cuts it even for more basic tasks (like web development).

Running any models locally requires insane hardware. For this type of work, you'd need easily tens of thousands of dollars worth of it. It isn't feasible for a self hosted model.
I was able to reverse the entire controller stack of the ps5 with a $20 cursor.com gift credit lmao

You need to know what you’re doing or you waste tokens. If you’re using that much you need to check your workflow
 
I was able to reverse the entire controller stack of the ps5 with a $20 cursor.com gift credit lmao

You need to know what you’re doing or you waste tokens. If you’re using that much you need to check your workflow
It's less a workflow problem and more of an ambition problem. I'm currently working on five separate system recompiler projects. I have one for NES, SNES, Sega Genesis, Playstation, and Virtual Boy. I'm considering each one MVP status once I can get 3 commercial titles for it.

Thus far:
NES - 10 titles
SNES - 3 titles (Super Mario World, Link to the Past, and Megaman X)
Sega Genesis: 3 titles (Sonic 1, Sonic 2 and a WIP Sonic 3)
VirtualBoy: 1 title (Mario Tennis)
Playstation*: No fully statically recompiled titles, but I do have Tomba playable with some coverage. I'm working on fixing up overlays at present.
 

Site & Scene News

Popular threads in this forum