Short: Amiga emulator for MorphOS Author: Yannick Buchy (papiosaur2 hotmail fr) Type: misc/emu Version: 0.9 (10.10.2026) Architecture: ppc-morphos Requires: MorphOS 3.20+, sdl2.library (gamepads), your own Kickstart ROM (1.3 for the A500, 3.1 for the A1200) URL: https://papio-software.com OVERVIEW ======== Lorraine is a new Amiga emulator, developed from scratch for MorphOS and designed to run at full speed on PowerPC: 50 frames per second on a PowerBook G4 and on a Mirari. It emulates two PAL Amigas: - Amiga 500: 68000 processor, OCS/ECS chipset (copper, blitter, sprites, interlace), 512 KB or 1 MB of chip memory plus 512 KB of slow memory; - Amiga 1200: 68EC020 processor at 14 MHz with its instruction cache, a 68030 with a 68882 FPU, or a 68040 or 68060 with its FPU, AGA chipset (256 colours, HAM8, 32 and 64-bit fetch, wide sprites), 2 MB of chip memory and 8 to 32 MB of Fast memory. Both have Paula sound with the A500 filters, up to four floppy drives, keyboard, mouse and joysticks. It boots from floppy disk images, WHDLoad games straight from their .lha archive, a hard disk file (HDF, A1200) or a MorphOS drawer seen as an Amiga disk. THE NAME ======== Before it became the Amiga 1000, the first Amiga was a prototype that Amiga Corporation developed under the code name "Lorraine", after the wife of the company's president, Dave Morse. It was shown at the Consumer Electronics Show in January 1984, in a private corner of the booth open only to invited guests: its custom chips were still a table full of breadboards linked by a tangle of wires. The emulator borrows that name as a tribute to the machine before the machine. INSTALLATION ============ 1. Unpack the archive anywhere. 2. Copy your Kickstart 1.3 ROM file into the Roms drawer (any name). For the A1200, add a Kickstart 3.1 (A1200) ROM as well. The ROMs are NOT included: they are still copyrighted. 3. Double-click Lorraine: the settings panel opens. Choose the model, insert a disk in DF0: and click Start. 4. For WHDLoad games (optional), see WHDLOAD GAMES below. USAGE ===== Disk images: ADF, DMS and IPF (SPS/CAPS preservation images, with their copy protections: Rob Northen Copylock, long tracks, weak bits...), also inside ZIP, LhA and LZX archives. An archive holding several disks put in DF0: spreads them over the drives: disk 1 in DF0:, disk 2 in DF1:... up to DF3:, connecting the external drives it needs. Put in another drive, it asks which disk to insert (or name it archive.zip#2 for disk 2). Automatic disk swap (ticked by default): when a program waits for another disk in DF0:, Lorraine gives it the disk of DF1:, the one of DF1: goes to DF2:... and the disk of DF0: to the last drive used. If that is not the right one, the next disk comes a few seconds later. It works with the programs that keep reading DF0: while they wait (most games and demos), not with the Workbench "Please insert" requester. The DF0:...DF3: cycle in front of each drive swaps its disk with the chosen drive by hand: for games that only read DF0:, choose DF1: in the cycle of DF0: and disk 2 comes in DF0:, disk 1 goes to DF1:. ADF disks are writable like real floppies: games and the Workbench save to the ADF file (tick "Write-protect disks" in the panel to keep them untouched). DMS and IPF images are read only. Model: A500 or A1200. Lorraine reads the ROMs of the Roms drawer and only offers those that suit the chosen model, with the chip and Fast memory it can have (Fast: up to 8 MB on the A500, 128 MB on the A1200). On the A1200, the processor (68EC020, 68030, 68040 or 68060) and the FPU (none or 68882; built in on the 68040 and 68060) are chosen as well: some 3D demos need the FPU. Applied at the next Reset. The 68040 and 68060 run everything their FPU and integer unit leave to 68040.library or 68060.library on a real Amiga: these libraries are not needed. Their MMU does not translate addresses yet. Floppy games start on the A500 they were made for, whatever the model of the panel (an A500 ROM is needed in Roms). A game that uses the A1200 (68020 instructions, AGA registers) restarts on an A1200 by itself, and Lorraine remembers it; one that uses the FPU restarts on a 68030 with a 68882. A model chosen in the panel while a game runs is kept for that game. Hard disk: an HDF file on the IDE interface of the A1200. Host folder: any MorphOS drawer seen as an Amiga disk, bootable, on both models. Both apply at the next Reset. WHDLoad games: see WHDLOAD GAMES below. Drop an .adf file on the emulation window: it is inserted in DF0: and the Amiga restarts on it. Drop it on a drive line of the Lorraine panel to change the disk without restarting (disk 2 of a demo...). THE PANEL: three buttons at the top choose what it shows. Library: one list for the Disks drawer (floppy images and archives), the WHDLoad drawer (.lha archives or unpacked drawers) and the Harddisks drawer (HDF files, A1200 only, and drawers seen as bootable partitions); the Type column tells them apart. Start selected entry (or a double-click) starts it, the Amiga restarts if it was running. The Filter field narrows the list as you type. For each entry the list shows the Amiga it will start on: chipset (OCS, ECS or AGA), CPU, Fast memory, CPU speed (Normal or Max) and JIT, and where this comes from (Default, Auto when Lorraine found it out, Manual when you chose it). Edit settings... (or a right click) changes it for that entry; Default gives the choice back to Lorraine. Under the list: the year, publisher and developer of the selected game, from the Amiga Games List of Obligement, or the group and type of a demo, from Pouet; and its screenshot (Alt+F12 in the game). Custom config: your own Amiga, started with Start config: Machine (model, ROM, processor, FPU, memory) and Hard disks (HDF file, host folder). These apply at the next Reset. Entries of the Library set to Default start with this Amiga too. In game: what can change while the Amiga runs. Drives (the four drives, fast loading, automatic disk swap, write protection), Display & Sound (display area, monitor frame, panel attached to the Amiga window or not, volume, drive sounds, stereo), Controllers and Speed (maximum CPU speed, JIT). F12 opens it: to change a disk, F12, then Insert in Drives, then click the Amiga window. Settings > Library folders...: each drawer of the list can be another folder (Choose...), Default goes back to the one next to Lorraine. Settings are saved in Lorraine.prefs. Press F12 to pause the Amiga and bring the panel to the front (the MorphOS mouse pointer comes back); click the emulation window to go back to the Amiga, which goes on. Closing the emulation window (or Ctrl+Esc) stops the Amiga and shows the panel; Quit leaves Lorraine. The emulation window opens in the middle of the screen, unless the panel is attached to it (In game). The retro monitor frame shows the Amiga's lights: POWER, DF0 to DF3 (a disk must be in the drive) and HD. CPU speed: on the A1200, Normal runs each processor at the speed of a usual card (68030 at 50 MHz, 68040 at 40 MHz, 68060 at 50 MHz; the 68EC020 at the 14 MHz of the A1200), as far as your computer allows; Max runs it as fast as your computer allows, like a faster card. The JIT compiler (on by default) translates the Amiga program into PowerPC code as it runs: the processor gets several times faster. The title of the emulation window names what the Amiga started from: the disk in DF0:, the hard disk or the WHDLoad game. F12 pause and settings panel (releases the mouse), and back to the emulation window Ctrl+Esc close the emulation window, back to the panel Alt+Return window / full screen (at the resolution of the Workbench, the picture keeps its proportions) F11 next display area (monitor, full overscan, auto exact, auto stretched) Alt+F11 retro monitor frame on / off Alt+F12 screenshot of the game (JPEG, Amiga resolution) in Data/Screenshots (made at the first one), one per game: the next one replaces it; the Library page shows it Controllers chosen per port in the settings panel: mouse (port 1), USB gamepad (automatic or by name), numeric keypad (8 2 4 6, 0 = fire), keyboard (cursor keys, Ctrl or right Alt = fire) or nothing. Gamepads are read through SDL2: d-pad or left stick to move, face and shoulder buttons fire. The list follows the gamepads you plug or unplug. "Buttons..." gives each button of the gamepad its own job: fire, second fire, a direction (B = up to jump, for instance) or an Amiga key. The ticks under the ports show what each Amiga port receives, emulation running or not. Mouse captured by the Amiga while its window is active Mouse speed in Controllers, 1 to 200 %: lower it for the games that read the mouse themselves and find a modern mouse too fast From a Shell: Lorraine [disk] [rom] [CHIP=1024] [MODEL=A1200] [FAST=8192] [DF1=disk] [DF2=disk] [DF3=disk] [FASTLOAD=1] A disk (or a WHDLoad game) given this way goes in DF0: and the Amiga starts at once; a Kickstart ROM is told apart by its size (256 KB, 512 KB or 1 MB). WHDLOAD GAMES ============= No Workbench is needed: Lorraine builds a small boot disk for each game, the Kickstart ROM does the rest. WHDLoad itself comes with Lorraine: WHDLoad_usr.lha, the official archive from whdload.de, is in the Third-Party drawer, unchanged and included with the kind permission of its author, Bert Jahn. Lorraine takes the WHDLoad program out of it by itself. A newer WHDLoad_usr.lha from whdload.de can replace it. Needed once: a Kickstart 3.1 A1200 ROM (512 KB, 40.068 preferred) in Roms. Only for the games whose slave asks for a Kickstart image (such as kick34005.A500): the ROM of that version in Roms. The .RTB files come from skick346.lha, already in Third-Party. Lorraine tells you when something is missing. Why: many WHDLoad installs (mostly games that used AmigaDOS) run on a Kickstart that WHDLoad loads into memory, not on the one of the machine; the slave names the version it wants. WHDLoad needs that ROM image and its .RTB file, a relocation table that lets it run the ROM at another address (it holds no Commodore code). The .RTB files come with SoftKicker, freely distributed on Aminet as skick346.lha and included unchanged in Third-Party: Lorraine reads the right .RTB from it and shows it to the Amiga next to the ROM, without copying anything. Games without a Kickstart image need none of this. Put the game's archive (.lha, or .lzx) or its unpacked drawer (with the .slave file) in the WHDLoad drawer, open the Games & Demos tab of the Library page and double-click the game. You can also insert the archive in DF0: or drop it on the emulation window. The game stays in its archive: Lorraine reads it into memory (with xadmaster.library, part of MorphOS) and shows it to the Amiga as a disk. The last game started also stays unpacked in T:Lorraine-WHD, so that starting it again is quicker. What the game writes (saves, high scores) goes to WHDSaves/, next to Lorraine; an unpacked drawer keeps its saves inside, as with WHDLoad on an Amiga. Deleting the archive removes the game; its saves stay in WHDSaves until you delete them too. The options of the game icon (tooltypes) are used. Lorraine switches to an A1200 with Kickstart 3.1 and at least 8 MB of Fast memory; your previous settings come back when a floppy disk is inserted in DF0: again. The WHDLoad information window is skipped unless "Show the WHDLoad window" is ticked in Settings > Library folders. To quit a game, use its WHDLoad quit key (often F10), or close the emulation window. Some games, mostly CD32 conversions, need libraries that are not in the Kickstart ROM (lowlevel.library...): they are not supported yet. CONTENTS ======== Lorraine the emulator Lorraine.readme this file History.txt what changed, release by release Roms/ put your Kickstart ROM files here Disks/ disk images (ADF, DMS, IPF, ZIP): a few free demos to start, add your own; the Insert requester opens here Harddisks/ HDF files and drawers used as hard disk partitions: two 68060 AGA demos to start (see DEMOS) Data/ the Amiga Games List and Pouet data of the Library WHDLoad/ WHDLoad games (.lha or .lzx archives, or drawers) Third-Party/ archives by other authors, each under its own license: WHDLoad_usr.lha (WHDLoad 20.0, (C) Bert Jahn, included with his permission) and skick346.lha (SoftKicker 3.46, (C) Pavel Troller, freely redistributable unchanged) Papio-Software opens https://papio-software.com Support opens PayPal to support the development STATUS ====== Tested on real hardware (Mirari T1042, PowerBook G4): Kickstart 1.3 and 3.1, the demos Arte, State of the Art, Desert Dream (two drives), Enigma, Mental Hangover, 9 Fingers, Dead Ahead and Starstruck. The 68060 demos run slower than on a real 68060 card: they need a much faster computer than a Mirari for a smooth picture. Not yet available: hard disk on the A500, ADZ images, the MMU of the 68030/040/060, save states. HISTORY ======= See History.txt. DEMOS ===== The Disks and Harddisks drawers hold freely distributable productions of the Amiga demoscene, included with respect and credited to their authors. They will be removed on request. State of the Art Spaceballs (1992) 9 Fingers Spaceballs (1993) Desert Dream Kefrens (1993) Enigma Phenomena (1991) Hardwired Crionics & The Silents (1991) Arte Sanity (1993) Mental Hangover Scoopex (1990) Dead Ahead Flex & Ephidrena (2025), AGA, 68060 (Harddisks) Starstruck The Black Lotus (2006, final 2018), AGA, 68060, 64 MB of Fast memory (Harddisks) TRADEMARKS ========== Amiga is a trademark of its owner. Lorraine is not affiliated with, nor endorsed by, Amiga Corporation, Cloanto or Commodore. THANKS ====== - MorphOS Team for MorphOS - Bert Jahn for WHDLoad and the permission to include it - David "Daff" Brunet for the Amiga Games List (Obligement) and the permission to use it - Pouet (https://www.pouet.net) and its webmaster for the demo data and the permission to use it - CptBlood for the many tests and screenshots - BeWorld for SDL2 - Skateman, MartinW, Patricks Retro Corner and one Anonymous for their support