Skip to content

Latest commit

 

History

2 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

amiga-multiwb

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 layout

Partition Contents
DH0: Boot / dispatcher (tiny)
DH1: Workbench 1.3
DH2: Workbench 2.05
DH3: Workbench 3.1

How the dispatcher works

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.

Repository layout

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)

Requirements

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 (not Fonts2.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

Install order

  1. Partition DH0/DH1/DH2/DH3 as DOS\1 FFS; full-format each.
  2. 3.1 — install31/31-0-Skeleton … 31-5-Storage
  3. 2.05 — install20/20-0-Skeleton … 20-3-Fonts
  4. 1.3 — install13/13-0-Skeleton … 13-2-Extras
  5. DH0 — cd DF1:install-dh0 then Execute 00-DH0-Boot (run last, under 2.05/3.1)
  6. 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.

Per-version notes

3.1 (DH3:)

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-5 copies a sensible subset (PAL/NTSC/VGAOnly, gb keymap); edit it to match your hardware.
  • English-only users can delete other Catalogs/* after the Locale step to save space.

2.05 (DH2:)

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, not Fonts2.0.
  • 20-3 also copies the larger diskfont.library from the Fonts disk over the smaller Workbench-disk one.
  • The 2.0 Install disk (HDToolBox + FastFileSystem) is not needed for a manual file install.

1.3 (DH1:)

Step Disk
13-0-Skeleton (none)
13-1-Workbench Workbench1.3
13-2-Extras Extras 1.3 (note the space)
  • Extras 1.3 has a space in its volume name, so it is quoted in the scripts.

Booting 1.3

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 mount DH1: and hand off to it — this is what boot13/ 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.

Shared tools layer

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.

Line endings

All scripts use UNIX (LF) line endings. If you edit on Windows, keep LF.

General tips

  • Full-format each partition as DOS\1 FFS 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. Remove QUIET if 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.

About

Setup scripts for multi-booting Amiga Workbenches 1.3,2.0, and 3.1

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors