Cordoomceps – replacing an Amiga's brain with Doom
16 days ago
- #Doom
- #Amiga
- #RetroComputing
- The pistorm adapter connects a Raspberry Pi GPIO bus to a Motorola 68000 bus, enabling emulation of 68000 instructions on ARM hardware.
- Running Doom on an Amiga via a Pi involves bypassing the 68000 emulator and directly accessing Amiga hardware from Linux on the Pi.
- Amiga's graphics use bitplanes, which are memory-efficient but require complex manipulation to update pixels, making Doom run slowly.
- The CDTV, an Amiga 500 variant, was used as a test subject for running Doom without executing any 68000 instructions.
- Kickstart ROM must run at powerup, initializing hardware before custom code can execute, complicating bare-metal programming.
- Amiga's copper coprocessor helps manage graphics by programming chipset registers and synchronizing with screen scanout.
- Graphical glitches in Doom were caused by unsynchronized updates to bitplanes during screen scanout, fixed with double-buffering.
- Accessing Amiga RAM required disabling the Kickstart ROM overlay by pulsing the reset line, a poorly documented feature.