Workbench is a program. It is the one that draws the icons and the drawers, and it is started by one line near the end of the Startup-Sequence, LoadWB. Replace that program and you have replaced the desktop while keeping every other part of the operating system, and by the mid-nineties, with Commodore gone and Workbench 3.1 frozen where it was, several people did. Directory Opus 5 was the famous one. Scalos was the one that set out to look and behave exactly like Workbench, only better.
Stefan Sommerfeld wrote it for a small German outfit called ALiENDESiGN, and sold it, briefly, at the end of the nineties. The name is from the Star Trek planet whose inhabitants live so fast they are invisible, and the point was speed: windows that open and scroll without the pauses Workbench takes, icons you can drag while the picture keeps up, drawers that keep listing while you do something else. It reads the same icons, honours the same Tools menu, opens the same windows, and adds a picture in the background, its own palette, a configurable menu, and preferences editors written with MUI.
Scalos is not an operating system, whatever the name says. It is the program that draws the desktop, swapped for a better one.
In October 1999 Sommerfeld said he was stopping, with a promise to release the source; a month later a group called Satanic Dreams Software took it over, and versions 1.1 and 1.2 went out as freeware in 2000. The source was opened in 2012 and it still builds for 68k, PowerPC and AROS. Version 1.2b, the freeware one the guide points at, is what is on this disk.
The window in the corner
Both pictures on the right show the first thing every Scalos install on this disk did: come up as a window. Workbench has a menu item, Backdrop, that turns the root window into the screen itself, and Scalos has the same item in the same place. Tick it and the desktop is right until you reset, when it is a window again. The obvious place to look is Scalos.prefs, the file its own preferences program writes, and nothing in there says backdrop.
The answer was Workbench’s. Workbench keeps its own state in ENVARC:Sys/wbconfig.prefs, and Scalos, being a faithful replacement, reads that file for the backdrop flag. Workbench 3.1 writes a version 0 of it that Scalos ignores; what Scalos wants is version 1 with the flag 0x00010000 set, and the Backdrop menu item in Scalos does not write it. Nothing does, on a stock disk. So the mint writes it, and the finished-disk check decodes the flag rather than trusting the filename. Since then the first boot has been a backdrop every time, and AmiPilot checks it on every restart: a backdrop root window has no title, so if the window list comes back without a Workbench-titled window and with the Scalos screen open, the desktop came up right.
The other thing Scalos owns is the colours of pens 4 to 7 on its screen, which is why the MagicWB icons needed two palette files: Workbench’s for the first four pens and Scalos’s Palette.prefs for the next four. Both are written by the same installer from the same eight colours.
The two editors
Scalos keeps its settings in two programs, both MUI. Scalos in the Prefs drawer has the pages the installer chapter walks through: Icons, Bobs, Titles, TextMode, Paths, Default Sizes, PlugIns, Miscellaneous, NewIcons. Scalos Palette is the colour table, the window whose saved file was taken apart in Eight pens. Neither has a button AmiPilot can press, for the reason on the MUI page, but both have a Project menu with Quit on it, and that was enough to open each one, take its picture and close it from a script. The pictures below are the first thing AmiPilot did to these windows that was not a screenshot of them being ignored.
What the scripts and AmiPilot took over
Chapter 9 of the guide is Scalos. It is the longest chapter after Workbench itself, because Scalos has an installer, an assign, a menu to import and settings to save. Where each step went.
- Automated
- Eliminated
Boot, Shell
Reload WinUAE, Shell, lha x, endcli.
7z on the host.
- Automated
Install
Run the installer: Expansion drawer, replace LoadWB, add the assign, a dozen Proceeds.
install_scalos.sh puts Scalos in SYS:Expansion/Scalos, swaps C:LoadWB for the Scalos starter, adds the Scalos: assign to S:User-Startup, and refuses to run unless MUI is already on the disk. Called by setup_winuae.sh --scalos and build_mister_image.sh.
- Automated
Menu
Open Scalos Prefs, import the menu, Save.
The saved menu file is written onto the disk by the installer.
- Automated
Backdrop
Tick Backdrop in the menu on every boot, or find out about wbconfig.prefs.
write_wbconfig_prefs.py writes the version 1 file with the backdrop flag, and the installer puts it in ENVARC:Sys. First boot is a backdrop.
- Automated
Palette
Set the MagicWB colours in Scalos Palette, Save.
write_scalos_palette_prefs.py writes ENVARC:Scalos/Palette.prefs from the Scalos source’s own format, alongside Workbench’s palette.prefs, both from one table of eight colours. --palette none skips them.
- Once
Reset
Reset so Scalos starts instead of Workbench.
The first boot of the new disk.
- Automated
Check
Look at the desktop.
check_guide_hdf.sh decodes wbconfig.prefs and the Scalos palette on the finished hardfile. verify_winuae_desktop.sh --require-backdrop restarts WinUAE and has AmiPilot confirm Scalos came up as the backdrop on its own. show_drawer.sh opens a drawer through Scalos’s own Tools/opendrawer, because a backdrop has no window title for AmiPilot to address.
Steps follow Chapter 9 of the Green Amiga Alien guide; the ledger for it is here. History from Sommerfeld’s October 1999 statement to amiga-news.de and the Scalos project. The words are ours.