hippietrail / RetroGhidra

Ghidra Loaders and FileSystems for retrocomputing platforms
4 stars 0 forks source link

16 bit support #4

Closed polluks closed 2 months ago

polluks commented 2 months ago

FYI there's already some support https://github.com/BartmanAbyss/ghidra-amiga https://github.com/czietz/ghidraScripts_for_Atari https://github.com/gnulnulf/Ghidra-TMS9900

hippietrail commented 2 months ago

Yep I think I've starred all of those.

I started work on an Amiga hunk loader and found out the first files I tried it on (from the oldest Fish Disk) broke every Hunk Parser on GitHub so I decided it must be hard to implement correctly.

I have stub loaders for Amiga and Atari binary executable formats that recognize them but don't load them yet.

I may have gotten further with the Sharp X68000 or Sinclair QL loaders. M68K is one of the CPUs I used to code in assembly back in the day.

polluks commented 2 months ago

I'll stay tuned.

hippietrail commented 2 months ago

I just pushed a working Sinclair QL loader and I pushed the working Atari ST loader a couple of days ago. The 68000-based Mac loader has been working for a long time. I'll do at least one of the Sharp X68000 executable formats next.

Are you using TI 99-4/A? What file formats are most popular?

Note that disk image formats are a lot harder and I'll be doing them as proper Ghidra FileSystems a bit later. So for now I'm working with native executable formats, machine state snapshot formats, cartridge formats, and the like that just represent a single program.

polluks commented 2 months ago

There's no executable format, maybe https://www.ninerpedia.org/wiki/TIFILES_format. BTW https://wiki.freepascal.org/Sinclair_QL#Setting_metadata_format.

hippietrail commented 2 months ago

I also noticed that the TMS9900 CPU support doesn't work in current Ghidra. It hasn't been updated in two years. But I made a quick TIFILES recognizer, I hadn't found that format and it seems perfect.