AmigaDOS shell scripts for triple-booting Workbench 1.3, 2.05, and 3.1 from a single hard drive (CF card, hardfile, etc.). A small boot partition inspects the running Kickstart at boot time and hands off to the matching Workbench install.
Each Workbench keeps its own authentic Startup-Sequence, copied verbatim from its original disks. Nothing is hand-rewritten, so each install is self-contained and easy to tweak later.
Full walkthrough: Triple-booting Workbench 1.3, 2.05 and 3.1 from a single CompactFlash card on an A500 — the companion article that explains how to use these scripts end to end.
| Partition | Contents |
|---|---|
DH0: |
Boot / dispatcher (tiny) |
DH1: |
Workbench 1.3 |
DH2: |
Workbench 2.05 |
DH3: |
Workbench 3.1 |
DH0: holds only the dispatcher (install-dh0/S/Startup-Seq-DH0, installed as
DH0:S/Startup-Sequence). It detects the Kickstart version and executes the
target partition's real Startup-Sequence:
exec >= v40 -> DH3: (3.1)
exec >= v37 -> DH2: (2.05)
else -> DH1: (1.3)
Because the dispatcher must run under all three ROMs, DH0:C is populated with
1.3-era copies of the commands it uses (If, EndIf, Skip, Lab,
Assign, Execute, Path, Echo, FailAt). 1.3 commands run under 2.0 and
3.1, but newer commands do not run under 1.3. The one exception is Version,
which is taken from 2.05 because version-number comparison is a 2.0+ feature.
install13/ per-disk copy scripts for Workbench 1.3 -> DH1:
install20/ per-disk copy scripts for Workbench 2.05 -> DH2:
install31/ per-disk copy scripts for Workbench 3.1 -> DH3:
install-dh0/ assembles the DH0: dispatcher + shared Tools layer
boot13/ builds a bootable 1.3 floppy (see "Booting 1.3" below)
Original Workbench disks (or ADFs) for each version you want to install. The volume names must match what the scripts expect:
- 1.3:
Workbench1.3,Extras 1.3(note the space) - 2.05:
Workbench2.0,Extras2.0,AmigaFonts2.0(notFonts2.0) - 3.1:
Workbench3.1,Extras3.1,Fonts,Locale,Storage3.1
Keep the scripts on a separate volume (e.g. a scripts ADF mounted as DF1:) so
they stay available while you swap Workbench disks in DF0:. Each script copies
only from the disk currently inserted and checks the volume is present first
(If NOT EXISTS Vol:), so running a step with the wrong disk in just prompts
you to insert the right one — nothing breaks.
Run a step like:
Execute DF1:install31/31-0-Skeleton
- Partition
DH0/DH1/DH2/DH3asDOS\1FFS; full-format each. - 3.1 —
install31/31-0-Skeleton…31-5-Storage - 2.05 —
install20/20-0-Skeleton…20-3-Fonts - 1.3 —
install13/13-0-Skeleton…13-2-Extras - DH0 —
cd DF1:install-dh0thenExecute 00-DH0-Boot(run last, under 2.05/3.1) - Set
DH0:bootable with highest boot priority, save, and reboot.
00-DH0-Boot runs last because it copies the 1.3 command binaries from DH1:
into DH0:C, so the 1.3 install must already be complete.
| Step | Disk |
|---|---|
31-0-Skeleton |
(none) |
31-1-Workbench |
Workbench3.1 |
31-2-Extras |
Extras3.1 |
31-3-Fonts |
Fonts |
31-4-Locale |
Locale |
31-5-Storage |
Storage3.1 (selective — edit to taste) |
- Storage holds optional monitors/drivers/keymaps/printers.
31-5copies a sensible subset (PAL/NTSC/VGAOnly,gbkeymap); edit it to match your hardware. - English-only users can delete other
Catalogs/*after the Locale step to save space.
| Step | Disk |
|---|---|
20-0-Skeleton |
(none) |
20-1-Workbench |
Workbench2.0 |
20-2-Extras |
Extras2.0 |
20-3-Fonts |
AmigaFonts2.0 |
- The Fonts disk volume is
AmigaFonts2.0, notFonts2.0. 20-3also copies the largerdiskfont.libraryfrom the Fonts disk over the smaller Workbench-disk one.- The 2.0 Install disk (HDToolBox + FastFileSystem) is not needed for a manual file install.
| Step | Disk |
|---|---|
13-0-Skeleton |
(none) |
13-1-Workbench |
Workbench1.3 |
13-2-Extras |
Extras 1.3 (note the space) |
Extras 1.3has a space in its volume name, so it is quoted in the scripts.
The Kickstart 1.3 ROM has neither built-in RDB autoboot/automount nor FastFileSystem — both arrived with 2.05 (2.05+ ROMs carry FFS; the 1.3 ROM does not). So whether a 1.3 machine boots the drive directly depends on the controller: many carry their own autoboot ROM/driver, load FFS from the RDB, and boot 1.3 fine with no patching. If yours does, you can skip this section. When the controller can't (or you'd rather it didn't) autoboot 1.3, you have two options:
- Embed the 1.3 FastFileSystem in the drive's RDB so a capable controller loads it and autoboots 1.3 directly, no floppy needed. See the companion article.
- Boot from a floppy that supplies FastFileSystem (in
L:) and a MountList to mountDH1:and hand off to it — this is whatboot13/builds.
boot13/ builds that floppy. The easiest route is the automated
boot13/make-boot13 script, run from a 2.05 or 3.1 Shell (where DH1: is
readable):
Execute make-boot13 <heads> <blockspertrack> <startcyl> <endcyl> [device] [drive]
The four numbers come straight off HDInstTools for the DH1: partition
(Heads and Blocks per track from Setup Drive; Start Cyl and End Cyl from
Edit Partition). device defaults to uaehf.device (WinUAE); pass
oktagon.device for real hardware. See boot13/README-boot13.txt for the
manual build steps and details.
In WinUAE the hardfile automounts, so all three branches can be tested without the boot floppy.
00-DH0-Boot also sets up a common utility layer on DH0:, so tools are
installed once and made available to every Workbench that can run them:
DH0:Tools/common tools that run on 1.3, 2.0 and 3.1
DH0:Tools/os2 tools needing 2.0+
DH0:Tools/os3 tools needing 3.1
Path wiring is installed automatically via each partition's User-Startup
(2.05/3.1) or, for 1.3 (which has no User-Startup mechanism), by appending a
single guarded Path line to its Startup-Sequence. Optional AmiTCP/IP assigns
pointing at DH0:AmiTCP are also wired in; they warn harmlessly to NIL: until
AmiTCP is actually installed.
All scripts use UNIX (LF) line endings. If you edit on Windows, keep LF.
- Full-format each partition as
DOS\1FFS before installing. - After large copies, wait a few seconds before resetting (FFS delayed-write settle).
ALL CLONE QUIET:ALL= recursive,CLONE= keep dates/protection bits,QUIET= less output. RemoveQUIETif you want to watch every file copy.- Set each partition bootable in HDInstTools/HDToolBox so 2.05/3.1 autoboot; the
DH0:dispatcher selects which to hand off to.