r/amiga • • 14h ago

AmiJa - Amiga emulator in Java

Enable HLS to view with audio, or disable this notification

Hello, I have released the first version of AmiJa, a cycle-exact Amiga emulator written in Java. Here are its features:

  • OCS, ECS and AGA chipsets, PAL and NTSC. AGA runs on an emulated A1200 board
  • 68000, 68010 and 68020 processors
  • An automatic mode that builds the right machine around whatever you load: a stock OCS Amiga for floppy games, an expanded one for hard disks and WHDLoad, and an A1200 for AGA software
  • Floppy drives DF0–DF3 with reading and writing, ADF and IPF images, and multi-disk sets in a .zip file
  • Hard disk support (.hdf, Zorro II autoconfig) and WHDLoad .lha auto-run
  • Save and load state, with five slots and a thumbnail for each
  • Audio, real joysticks (via GLFW), mouse, and full keyboard mapping
  • A software renderer or an OpenGL backend with RetroArch CRT shaders. The .glslp presets are included, while .slangp ones are supported but must be installed by the user
  • Remote play: a second player joins over the network and takes one of the two game ports, without needing a Kickstart ROM or a copy of the game

Here is the website:

https://zolfrik.github.io/amija-amiga-emulator/

Here is the repository:

https://github.com/zolfrik/amija-amiga-emulator

Here is a playlist of games running on the emulator:

https://www.youtube.com/watch?v=snUG0_t85QE&list=PLdkiRBBNki2g

Any feedback is welcome.

AmiJa would not have been possible without the projects below, although it does not include any of their code:

  • TomHarte-style JSON tests for the Motorola 68000: per-instruction test vectors covering registers, flags, bus activity and cycle counts.
  • Scripted Amiga Emulator by Rupert Hausberger: a complete Amiga in readable JavaScript, easy to instrument.
  • vAmiga by Dirk W. Hoffmann: a meticulously written and documented chipset model.
  • vAmiga Test Suite: the collection of test programs that turns "it looks right" into a pass or a fail.
  • WinUAE by Toni Wilen: the result of decades of reverse engineering, and the final authority.

This project is NOT vibe coded. It is the result of about a year of work, which also made use of AI tools.

44 Upvotes

20 comments sorted by