Parkeisenbahn, Luxembourg

Reading Amiga Harddisks with Linux

While cleaning up the cellar, I found my Amiga 500 and also a GVP Impact Series II SCSI host adapter. Inside, there was a Fujitsu M2611SA harddisk. After about 25 years, I had totally forgotten about it, and I wondered what was stored on it. So let me take you on the adventure trip of how to salvage old Amiga harddisks on modern Linux machines.

The Amiga ecosystem has always been very SCSI friendly. Commodore broke this tradition only with the final AGA models, where they switched to the IDE bus to reduce costs. The Amiga community never approved this change, and many accelerator cards that were sold for these machines also came with a SCSI host adapter. The SCSI bus was a lot faster than the IDE bus. Also a single ribbon cable could connect up to seven SCSI devices, where the IDE bus only permitted two devices.

Today this SCSI affinity turns out to be a problem though. SCSI was never a topic on consumer PCs, so there are no SCSI-to-USB adapters on the market (I wish they were), and SCSI cards for the PCIe bus are very expensive. I'm still having an Adaptec SCSI card in my cupboard that I bought many years ago, but it is for the old-style PCI bus. Luckily there are PCI-to-PCIe adapters available on the market, so I could reuse this old card in my computer. The card stack looks adventurous, but it will do for a few hours of operation to backup the data.

The big question is: Can a modern Linux machine even read Amiga formatted harddisks?

Mounting Amiga Harddisks

Yes, it can. It seems that there are a lot of Amiga fans among the Linux kernel developers. The Amiga uses a different partition table scheme than PCs, but if you're lucky, your Linux will still detect the Amiga partitions and offer them as e.g. /dev/sdg1. Then all you need to do is to mount the partition via mount.

It didn't work on Fedora though, so I had to do some more typing. First I had to find out the offsets of the individual partitions. GNU Parted can be used for that, as it is able to decode Amiga partition tables:

# parted /dev/sdg
GNU Parted 3.3
Using /dev/sdg
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) u
Unit?  [compact]? b
(parted) p
Model: FUJITSU M2611S (scsi)
Disk /dev/sdg: 45078528B
Sector size (logical/physical): 512B/512B
Partition Table: amiga
Disk Flags:

Number  Start   End        Size       File system  Name  Flags
 1      52224B  45078015B  45025792B  affs1        DH0   boot

(parted) q

So there is only one partition on the HD. It starts at offset 52224 and is Amiga FFS formatted. Luckily most Linux distributions are able to mount this file system out of the box. The start offset is needed to mount the partition. I also mount it read-only to make sure that I won't accidentally change or delete my precious old data.

mount -o ro,offset=52224 -t affs /dev/sdg /mnt/

Et voilà:

# ll /mnt/
drwx------. 1 root root    0 Apr 16  1997 C
drwx------. 1 root root    0 Jun 11  1994 Devs
-rw-------. 1 root root 1233 Apr 16  1997 Devs.info
drwx------. 1 root root    0 Apr 16  1997 Fonts
drwx------. 1 root root    0 Apr 16  1997 L
drwx------. 1 root root    0 Apr 16  1997 Libs
drwx------. 1 root root    0 Feb 27  1992 Locale
drwx------. 1 root root    0 Apr 16  1997 Prefs
-rw-------. 1 root root 1238 Apr 16  1997 Prefs.info
drwx------. 1 root root    0 Apr 16  1997 S
drwx------. 1 root root    0 Apr 16  1997 Storage
-rw-------. 1 root root 1233 Apr 16  1997 Storage.info
drwx------. 1 root root    0 Jan  4  1992 System
-rw-------. 1 root root 1233 Apr 16  1997 System.info
drwx------. 1 root root    0 Feb 27  1992 Tools
-rw-------. 1 root root 1233 Apr 16  1997 Tools.info
drwx------. 1 root root    0 Jan  4  1992 Trashcan
-rw-------. 1 root root 1588 Apr 16  1997 Trashcan.info
drwx------. 1 root root    0 Feb  3  1992 Utilities
-rw-------. 1 root root 1233 Apr 16  1997 Utilities.info
drwx------. 1 root root    0 Apr 16  1997 WBStartup
-rw-------. 1 root root 1233 Apr 16  1997 WBStartup.info

Disk Dumps

As old harddisks are quite noisy, it might be a good idea to dump the entire content first, and salvage the partitions later. dd is the classic tool for creating a dump:

dd if=/dev/sdg of=amiga-hd.dd bs=512 status=progress

Later a loop device will simulate a real harddisk device:

losetup /dev/loop1 amiga-hd.dd

/dev/loop1 can now be used for parted and for mount.

To remove the loop device again:

losetup -d /dev/loop1

Smart File System

Back in the Amiga days, the Smart File System was very popular as an alternative to the original Fast File System. It was freeware, it was a lot faster than FFS, and it even had a stateless defragmentation that ran in the background.

The Linux kernel does not support SFS out of the box. However, Marek Szyprowski implemented a kernel module in 2003, which (sadly) never left the experimental stage and thus never found its way into the official set of supported Linux file systems.

To use it, you first need to set up a Linux with a 2.6.27 kernel, for example Fedora 10. After that, download the kernel patch and compile it to a kernel module. If you managed that, you can also mount Amiga SFS partitions. I was able to recover all files from an SFS partition that way, though it wasn't much fun.

PS: Sadly the harddisk I've found didn't contain forgotten source codes or other secrets. It just had a standard Amiga Workbench on it, and a copy of the game Scorched Tanks.

Read this article...
#Advertisement? This blog is free of ads. All shown products have been paid by myself.
Saturday, January 16, 2021
Shredzone à la Amiga

Look what I have found... This is my very first shredzone, as it was online from 1998 to 2003. First it was hosted by my internet provider. Then, on April 15th 2000, I registered my own domain – shredzone.de – and moved my site to a professional hoster.

The site did not use a fancy content mangagement system, but consisted only of static HTML pages. It was built on my Amiga using a preprocessor called HSC, an acronym for HTML Sucks Completely. 😜 Some parts like the gallery or the download area were generated by accompanying ARexx scripts. It was incredibly easy to add content to the site. Basically it was just adding or changing a file, and then invoking smake to rebuild the affected parts of the site within seconds, including the navigation. It was a big advantage that I was going to miss badly later.

At that time I did not use CVS yet, so sadly all the past versions and changes have been lost. The only version I still have is the final one on my Amiga harddisk. I have found the project today, by a rather lucky accident. It was only the source code though, the final compiled version has got lost over the years. There is a Linux port of HSC, so basically I could rebuild the site on my Linux machine. But the ARexx parts require an Amiga environment, and porting them to Linux would have consumed too much time.

So I started an Amiga emulator and, thanks to the good shape of the project that the past Amiga me has left the present Linux me, I actually only needed to run smake to rebuild the entire homepage in just 3 minutes.

The requirement to run on an Amiga, was what later broke the neck of this homepage. When the Amiga platform died, I moved on to Linux, but I could not move my homepage with me. So, in 2003, I replaced it with a self-made content management system that was written in PHP and was called Akiko. It had some nice features, but on the other hand it was rather tedious to add new content. Because of that, I badly neglected my homepage in those years.

In 2010, Akiko was replaced by a self-made blog system that is written in Java and is named Cilla. Even after a major redesign in 2018, it is still in use today. 🙂

Special: Emulatoren

Dass die Computergenerationen immer leistungsfähiger werden, hat einen interessanten Nebeneffekt: Es ist dadurch möglich, dass ein moderner Computer einen alten Computer vollständig simuliert, Spezialhardware eingeschlossen. Man spricht dann davon, dass der alte Computer emuliert wird. Die dazugehörige Software heißt Emulator.

Dieses Special beschäftigt sich mit einer Auswahl der Emulatoren, die es für Fedora gibt.

Read this article...
Herzlichen Glückwunsch, Amiga

Heute vor 20 Jahren wurde der Amiga das erste Mal in der Öffentlichkeit gezeigt.

Ich möchte an der Stelle meine ganz persönlichen Glückwünsche an den Amiga loswerden. Kein Computer hat mich so geprägt wie er.

Computerbegeistert war ich schon als 10-jähriger Knirps. Ich löcherte meine Grundschullehrerin damals schon mit Fragen über die Berechnung trigonometrischer Funktionen mit Taylor-Reihen, und kannte in der vierten Klasse schon die BASIC-Grundlagen, noch bevor ich meine erste Fremdsprache lernte.

Dann sah ich im Fernsehen (in einer Computersendung im Öffentlich Rechtlichen) zum ersten Mal einen Amiga 1000. Die Grafik- und Soundfähigkeiten waren für die damalige Zeit schier unglaublich, und anfangs suchte ich tatsächlich noch nach dem Haken an der Sache, zum Beispiel, dass man einen Amiga nur ein paar Stunden betreiben dürfe, da er sonst überhitzen würde.

Aber dem war natürlich nicht so, wie ich mich kurze Zeit später selbst überzeugen konnte. Ein Mitschüler bekam einen Amiga 500, und ich bewunderte staunend bunte Spiele und fetzige Demos mit richtiger Musik statt dem C64-Synthigedudel - und war grün vor Neid.

Ich begann meine Eltern zu bekneten, und 1988 bekam ich dann tatsächlich mit 16 meinen eigenen Amiga 500 geschenkt. Die damalige Pflichtlektüre, das legendäre Amiga Intern von Data Becker, verschlang ich in einer Woche, mit dem 68000-Assembler-Befehlssatz als Dessert. Noch bevor ich meinen Amiga hatte, wusste ich, wie die Wunderkiste funktioniert.

Als er dann endlich auf meinem Tisch stand, machte ich mich gleich an die Arbeit und lernte, die für die damalige "Szene" üblichen Demos, aber auch Programme zu schreiben. Damals noch am Betriebssystem vorbei. Eines meiner Programme von damals war der Mega SoundCracker, welcher in der Lage war, den Speicher nach Musik abzusuchen, die zum Beispiel ein Demo dort nach einem Reset hinterlassen hat.

Dann kam Kickstart 2.0, und damit auch die späte Einsicht, dass das Betriebssystem vielleicht doch nicht so unnütz ist. Denn damals funktionierten viele Spiele und Demos nicht mehr, weil sie sich nicht an die Programmierrichtlinien von Commodore hielten. Die Händler schoben die Schuld jedoch dem Amiga in die Schuhe und vergraulten so manchen Kunden mit dieser Falschaussage.

Ich beschäftigte mich seit dem neuen Kickstart mit dem Amiga-Betriebssystem - und fand etwas vor, was selbst für heutige Maßstäbe noch modern ist. Ein präemptives Multitasking zum Beispiel, Speicher- und Resourcenmanagement, oder etliche fertige Programmbibliotheken, die nur benutzt werden wollten. Das damals schon marktbeherrschende Windows 3.1 sah alt dagegen aus, und selbst Windows 95 kam längst nicht an die Fähigkeiten heran. AmigaOS ist sehr vergleichbar mit Unix. Die Änlichkeiten sind so groß, dass textbasierte Unix-Programme sogar relativ problemlos auf dem Amiga kompiliert werden konnten.

Schließlich wurde mir der Amiga 500 zu klein, und 1994 holte ich mir von meinem sauer verdienten Zivi-Sold einen Amiga 4000. Meine Arbeit dort verlegte sich eher hinter die Kulissen. Ich habe zwar versucht, das eine oder andere Anwendungsprogramm zu schreiben, bei EuraTools und SoundBox sogar mit Erfolg, aber meistens arbeitete ich an Bibliotheken.

Besonders stolz bin ich auf die maestix.library. Für die MaestroPro-Soundkarte (mit optischen Ein- und Ausgängen, damals revolutionär) lieferte der Hersteller leider keine Treiber mit. Ich nervte die Entwickler auf den Amiga-Messen, wurde aber stets nur vertröstet oder vertrieben. Dann setzte ich mich hin und programmierte selbst einen Treiber. Er funktionierte resourcenschonend und stabil - und so gut, dass ich eines Tages sogar einen Anruf vom Hersteller bekam, ob ich nicht für sie programmieren möchte.

Der Konkurs von Commodore 1994 traf mich hart, war aber an sich trotzdem für mich abzusehen gewesen, denn Commodore begang damals einen Managementfehler nach dem anderen. So verschwanden fertige Konstruktionspläne für einen neuen Amiga-Chipsatz in der Schublade, und sie weigerten sich trotz rückläufiger Verkaufszahlen beharrlich, Werbung für den Amiga zu machen. Sie sahen im Amiga selbst nur einen C64-Nachfolger, der alleine durch Mundpropaganda beworben wurde. Commodore unterschätzte die Fähigkeiten des Rechners, und ihre Einstellung war nicht zuletzt dafür verantwortlich, dass dem Amiga immer der Makel eines "Spielcomputers" anlastete. Ausgerechnet Windows, für das heute die meisten Spiele erhältlich sind, galt damals als seriöse Alternative.

Trotz Konkurs hielt ich dem Amiga die Treue, verfolgte die kommenden spannenden Jahre mit ihren Höhen und Tiefen. Der Kauf von Escom, neue Amigas wurden entwickelt, dann ging auch Escom pleite. Gateway erbarmte sich als nächster, stellte Amiga dann auf eigene Beine.

Die Zeit, die darauf folgte, war jedoch tragödisch. Firmen wie Haage&Partner, Phase 5 und Amiga zerfleischten sich gegenseitig in Wettbewerb um die kommende Amiga-Generation, und haben vor lauter Kleinkrieg das gemeinsame Ziel vor Augen verloren. Eine Folge war, dass oft genug Amiga-Modelle angekündigt wurden und sich dann wieder in Luft auflösten.

Mein Amiga 4000 war zu der Zeit schon hochgerüstet, steckte in einem riesigen Tower und hatte etliche Erweiterungskarten in seinem Bauch. Aber dennoch geschah das, was kommen musste: der PC holte zusehends auf und überholte schließlich, was Grafik-, Sound- und Rechenleistung anging. Linux kam auf den Markt und etablierte sich zusehends als echte Alternative zu Windows.

Im Jahr 2000 entschloss ich mich dann, den Amiga aufzugeben. Der Entschluss fiel nicht leicht, aber eine alte Indianerweisheit sagt: wenn du auf einem toten Pferd sitzt, steig ab.

Mittlerweile bin ich mit Linux ganz zufrieden, da mich vieles an den Amiga erinnert. Der Amiga-Emulator UAE ist auf modernen Rechnern auch schon leistungsfähig genug geworden, um selbst anspruchsvolle Nostalgietrips zu emulieren.

Mein Amiga 4000 steht nun wieder in seinem Desktop-Gehäuse unter dem Schreibtisch. Den Ehrenplatz hat er sich verdient.

Herzlichen Glückwunsch, Amiga!

Ruhe in Frieden, Amiga!

Gute alte Zeit

Die Soundfähigkeiten der Commodore-Computer C64 und Amiga sind legendär.

Als die Rechner auf den Markt kamen, dudelten sie alles andere locker an die Wand. Während andere Heimcomputer und auch der IBM-Kompatible gerade mal Pieplaute von sich geben konnten, hatte der C64 einen 3-kanäligen Synthesizer und der Amiga sogar vier echte Stereo-Soundkanäle.

Dementsprechend haben die Musikeigenschaften die C64- und Amiga-Generation geprägt. Einige der damaligen Musiker haben es in den kommerziellen Markt geschafft, zum Beispiel Sven Väth oder Snap.

Hobby-Musiker haben sich nun den Klassikern angenommen und sie teils mit moderner Technik, teils mit den schrägen Originalsounds aufgepeppt. Das Ergebnis ist mehr als beeindruckend und braucht sich teilweise qualitativ gar nicht mal gegen Kommerzmusik zu verstecken.

Ein paar interessante Links:

  • remix.kwed.org ist ein schier unerschöpflicher Vorrat an C64-Remixen. Respekt!
  • amigaremix.com bietet etliche Amiga-Remixe
  • SLAY Radio ist ein Online-Radio mit C64-Remixen nonstop. Achtung: absolute Suchtgefahr!