{"id":24946421,"url":"https://github.com/hippietrail/retroghidra","last_synced_at":"2025-04-10T05:14:47.189Z","repository":{"id":251588621,"uuid":"837847873","full_name":"hippietrail/RetroGhidra","owner":"hippietrail","description":"Ghidra Loaders and FileSystems for retrocomputing platforms","archived":false,"fork":false,"pushed_at":"2025-01-22T09:51:08.000Z","size":351,"stargazers_count":11,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-03-24T06:23:21.471Z","etag":null,"topics":["apple2","atari-st","atari2600","atari800","ghidra","ghidra-extension","ghidra-loader","qdos","retrocomputing","reverse-engineering","riscos","sinclair","sinclair-ql","tandy","tandy-color-computer","ti-99","trs-80","vic20","x68000","zx-spectrum"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/hippietrail.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-08-04T08:07:14.000Z","updated_at":"2025-01-17T18:24:05.000Z","dependencies_parsed_at":"2024-08-27T20:33:14.145Z","dependency_job_id":"102a8eeb-b840-414c-9a9b-ec6dae624847","html_url":"https://github.com/hippietrail/RetroGhidra","commit_stats":null,"previous_names":["hippietrail/retro"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hippietrail%2FRetroGhidra","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hippietrail%2FRetroGhidra/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hippietrail%2FRetroGhidra/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hippietrail%2FRetroGhidra/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/hippietrail","download_url":"https://codeload.github.com/hippietrail/RetroGhidra/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248161278,"owners_count":21057555,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["apple2","atari-st","atari2600","atari800","ghidra","ghidra-extension","ghidra-loader","qdos","retrocomputing","reverse-engineering","riscos","sinclair","sinclair-ql","tandy","tandy-color-computer","ti-99","trs-80","vic20","x68000","zx-spectrum"],"created_at":"2025-02-02T20:24:38.155Z","updated_at":"2025-04-10T05:14:47.165Z","avatar_url":"https://github.com/hippietrail.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# RetroGhidra\n\n\u003cimg src=\"https://github.com/user-attachments/assets/4b48b672-e1a0-43c1-b6f1-b45808ab8224\" width=\"256\"\u003e\n\n[Ghidra](https://github.com/NationalSecurityAgency/ghidra) Loaders, FileSystems, and Processors for various retrocomputing platforms.\n\n# Done\n## Loaders\n- Apple II file loader that works with Binary II, DOS 3, ProDOS FileSystems\n- Apple II NAPS (NuLib2 Attribute Preservation String) loader\n- Apple Lisa object file loader\n- Atari 2600 .a26/.bin cartridge file loader - only 2K and 4K are possible\n- Atari 8-bit .XEX file loader\n- Atari ST executable file loader\n- Classic 680x0 Mac application loader\n- Commodore 64 .CRT cartridge loader - loads straightforward cartridges\n- Commodore Disk File loader - understands .PRG files from .D80 disk images\n- Commodore VIC-20 .PRG cartridge loader - not other types of .PRG\n- Exidy Sorcerer .SNP snapshot loader\n- KC 85 .kcc file loader\n- RISC OS AIF (Arm Image Format) loader\n- Sharp X68000 .X executable file loader\n- Sinclair QL executable file loader\n- Sinclair ZX Spectrum .SNA snapshot loader - 48K snapshots\n- Tandy TRS-80 Model I/III /CMD command file loader\n- Tandy TRS-80 Color Computer .CCC cartridge loader - 2K, 4K, and 8K\n- Tandy TRS-80 Model 100 .co file loader\n- Tandy TRS-80 Model 100 RLC file loader\n- Texas Instruments Z80 calculator TI83F .8xp file loader\n- TI-99/4A .bin file loader\n- TI-99/4A FIAD (V9T9) file loader\n- TI-99/4A .rpk cartridge loader\n- TI-99/4A TIFILES (XMODEM) file loader\n\n## FileSystems\n- Apple II Binary II file system\n- Apple II DOS 3.3 disk images in .do or .po sector order\n- Apple II Pascal disk images in .do sector order (no .po order yet)\n- Apple II ProDOS disk images in .do or .po sector order\n- Commodore D80 disk image file system\n\n# In progress\n## Loaders\n- Agon Light MOS .bin loader - identifies but does not load yet\n- Amstrad CPC .SNA snapshot format loader - some 64K snapshots might be usable\n- Commodore 64 X00 format (P00, R00, S00, U00, etc)\n- Commodore Amiga: \"Hunk\" executable and object file loader - identifies but does not load yet\n- CP/M .CMD command file loader\n- Neo Geo .neo file loader - identifies but does not load yet\n- Sharp X68000 .Z executable format - identifies but does not load yet\n- Sinclair QL Zip file system that handles the QDOS headers in zip extra fields\n- Sinclair ZX Spectrum PZX tape image loader - identifies but does not load yet\n- Sinclair ZX Spectrum TAP tape image loader - identifies but does not load yet\n- Sinclair ZX Spectrum TZX tape image loader - identifies but does not load yet\n- Spectrum Next .nex file loader - identifies but does not load yet\n- TI-99/4A .ctg cartridge format - identifies but does not load yet\n- TK2000/Microprofessor II: .ct2 tape format - identifies but does not load yet\n\n## Filesystems\n- Apple II CP/M disk images in .do sector order\n- BinHex 4.0\n- CP/M (just as KC 85 et al use it for now)\n- Teledisk disk image format (just as KC 85 et al use it for now)\n\n## Processors\n- TI-99/4A GPL bytecode disassembler\n\n## Ghidra features\n- [Submitted a PR](https://github.com/NationalSecurityAgency/ghidra/pull/7062) allowing FileSystems to pass filetype info to the filesystem browser, which works on filename extensions by default.\n\n# Planned\n## Loaders\n- Sharp X68000: .R executable format\n- Sinclair QL: SROFF object file format\n- Sinclair ZX Spectrum: .SNA snapshot format - 128K variant\n- Sinclair ZX Spectrum: More snapshot and emulator formats\n\n## FileSystems\n- Commodore 64 disk image format\n- Sinclair Spectrum: .DSK +3DOS disk image format\n- Sinclair Spectrum: .SCL disk format\n- Sinclair Spectrum: .TRD Beta Disk TR-DOS disk iamge format\n- Tandy Coco disk formats\n- Tandy TRS-80 Model I/III: .DMK disk image format\n- Tandy TRS-80 Model I/III: .JV1 disk image format\n- Tandy TRS-80 Model I/III: .JV3 disk image format\n- TI-99/4A: .ark Archiver format\n\n# To investigate\n- Acorn: UEF (Unified Emulator Format) for BBC Micro and Electron\n- Apple II Pascal P-code disassembler\n- Apple IIgs\n- Apple Newton\n- Atari 8-bit cartridge, disk, and tape formats\n- Atari ST DRI .o object and/or library file format  \n  - [ALN_RN_1-24-1990.pdf](https://web.archive.org/web/20140217215356/http://dev-docs.atariforge.org/files/ALN_RN_1-24-1990.pdf) page 7\n- Atari ST GST .bin object and/or library file format\n- Atari ST Lattice .O object and/or library file format\n- BeOS (Ghidra natively supports PEF)\n- Camputers Lynx\n- Coleco Adam\n- Commodore PET and SuperPET\n- CP/M .REL file loader\n- CP/M .SPR file loader\n- CP/M Plus and MP/M .PRL relocatable binary file loader\n- Dragon 32/64\n- Jupiter Ace\n- KC 87\n- Memotech MTX 512\n- NeXT\n- Oric\n- Palm Pilot\n- Philips CD-i\n- MSX\n- OS-9/68000\n- Panasonic 3DO\n- RISC OS AOF (ARM Object Format) and ALF (Acorn Library Format)\n- SAM Coupé\n- Sinclair ZX81\n- Tandy Coco: .cas tape images\n- Thomson MO, TO\n- TI-89, TI-92\n- Timex Sinclair\n- Xerox Alto, Star\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhippietrail%2Fretroghidra","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhippietrail%2Fretroghidra","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhippietrail%2Fretroghidra/lists"}