In September 2026 I booted my old Amiga BBS, Autumn’s Harvest Inn, from a backup made in 2001. It had started as Virtual Reality in Odessa in 1989, before the move to North Carolina and the name change in 1993. The post about it covers that history and what came back. This page is the working method, for anyone restoring an Amiga setup from old archives and floppies, whether or not it’s a BBS.

Work on copies

My 2001 backup is a set of zips, one per volume. I copy them before touching them and extract the copies. The originals stay read-only. Extraction goes through Windows, which loses Amiga protection bits, so expect to run protect <file> +e on the occasional program that reports it isn’t executable.

Before rebuilding anything, list which volumes the backup actually has. Mine had eight, and the one that held the message base, Mail:, wasn’t among them. Nearly every gap I hit later traced back to that one missing volume. Knowing it early saved time I’d otherwise have spent looking for files that were never saved.

Set up the emulator to match the real machine

I configured WinUAE to mirror the A1200 the board is going back to, so the emulator doubles as a rehearsal. A few settings cost me time:

  • A 68060 needs 68060.library from disk. Kickstart 3.1 has no 68060 support, and SetPatch loads the library at boot. The stock workbench-311.hdf doesn’t have it and gurus at once. Amiga Forever’s directory-based Workbench got the first recovery booting. On September 22 I replaced it with stock OS 3.1, using 68060.library, 680x0.library, mmu.library, and Libs/MMU from the AmigaOS 3.2 CD’s MMULibs disk. Don’t copy that disk’s 68040.library into this setup: it stops the boot with a yellow 68040 Installation Alert. Kickstart opens it for a 040-class CPU, but stock 3.1’s SetPatch 40.16 cannot redirect it to the 68060 library.
  • Turn MMU emulation off. With WinUAE’s JIT it gurus at boot.
  • Match the graphics to the machine you’re restoring. The current setup uses native AGA, with gfxcard_size=0 and rtg_modes=0, because the real A1200 has no graphics card either. In the earlier setup I tried a UAE Zorro III card. Adding it wasn’t enough: ENVARC:Sys/screenmode.prefs still named a native NTSC mode instead of a UAE: mode, so Workbench ignored the card. The WinUAE status bar showing 263p was the clue. That is useful to check if you do add a card, but it isn’t required for this restoration.
  • Directory drives are easier than hardfiles when you want to read and fix files from Windows. The catch is below.

Close the emulator before editing its files

WinUAE’s directory drives are ordinary Windows folders, which makes it tempting to fix a file while the Amiga is running. Don’t. The emulator can lose track of files changed underneath it, and a program on the Amiga may write its own copy back over yours. I shut WinUAE down, make the change, and boot again.

Some Amiga text files aren’t UTF-8. Amiga Forever’s S:User-Startup is Latin-1 because of a © in it, so I edit it as bytes rather than letting an editor re-encode it.

Find the missing libraries

A program that can’t open a shared library often exits without a message. C-Net’s bbs and Control did exactly that, because cnet.library wasn’t in the hard-drive backup.

I imaged the original install floppies with a Greaseweazle, and that got the board starting. But check the update archives in the backup’s own file areas before trusting the floppy copies. The 3.05c update archive, sitting in the board’s download area all along, had a newer cnet.library that matched the program version the board actually ran. Both libraries reported version 1.0, so the mismatched pair ran for a day without complaint. I went by file dates and build, not the version number.

Learn the startup from a fresh install

The board’s startup files were on a system partition that wasn’t backed up, so I had to work out what they should have contained. Guessing got me a door-game deadlock: I had mounted the FIFO handler from a hand-written mount entry, and C-Net never does that.

What worked was a second emulated machine. I copied a clean Workbench to it, took a snapshot, installed C-Net from the original floppies, and compared the drives with the snapshot. That showed exactly what the installer writes: one block in S:User-Startup that starts the FIFO handler with run L:fifo-handler, plus its assigns. Matching it fixed the deadlock on the first try.

Compare the trees case-insensitively, as AmigaDOS does, or the diff fills with false differences.

Rebuild the assigns

Amiga software refers to logical names like Mail:, PFiles:, or SN: rather than to drives. Restoring the files isn’t enough; the names have to exist too. I laid the board out the way the installer lays out a new one, under one Work:CNet directory, and kept the sysop’s own assigns as a second block, because add-ons and doors used them. Two that nothing in the restoration had recreated turned up only when the stock layout made the gaps obvious.

Distrust the data files that almost work

Several problems were files that existed but held the wrong thing:

  • The user-count file came from a three-account test board, so the user list showed three users while the real user file held 325 records (130 of them live).
  • A folder I had created by guessing, Mail:fback, was supposed to be a file. Leaving feedback froze the port until it was gone.
  • The port settings saved from 2001 had port 1 marked offline, so it never came up at boot.

The first two I found by reading the files against the program’s own header file, which C-Net ships for add-on authors. For the feedback freeze, SnoopDos helped: running on the Amiga with its log written to a folder Windows can read, it shows every file a program asks for, including the ones it doesn’t find.

Save settings the way the program expects

This one caught me out on a newer program. In ABBS’s ConfigBBS and ConfigNode, a typed value only counts once you press Return in the field. Typing and then clicking Save keeps the old value, and Save still reports success. If a setting in an Amiga tool refuses to stick, try pressing Return in each field before saving.

Keep the startup on the Amiga

For a while, half the board’s startup ran from a script in my Windows repository. It worked, but it meant the Amiga couldn’t boot the board on its own. Now the whole startup lives in the Amiga’s S:User-Startup, where the installer puts it, and the repository keeps a record of it. That also matters for moving to real hardware: the Amiga already carries the startup it needs.