Archive

Archive for October 18, 2014

Building a modern Amiga, notes and ideas

October 18, 2014 11 comments

Ordinarily this is not a post you would find on my extremely dedicated Delphi and Smart Pascal blog, but readers will no doubt have noticed my love for the old Amiga home computer. A lot of my effect code have comments hinting to their ancient Amiga roots, and I have made no secret that I think it was a great tragedy that the Amiga went under (especially since those that buried it were board-members with no real passion for the product).

Sexy, compact and extremely fast! Amiga OS

Sexy, compact and extremely fast! AROS

But all is not lost, in fact – while a lot of Amiga boards are filled with a rather thick atmosphere of defeat and memories of glories long gone, the truth of the matter is that there has never been a better time to be an Amiga user! Never since you could buy a real Amiga has there been more options for people to chose from, and after nearly 30 years that speaks volumes about the platform.

UAE (universal Amiga emulator) is a fantastic piece of software engineering. It exists today in many forks and flavors (a “fork” is when a programmer clones the code, which is called a branch, and starts working on it. The process of cloning is called “fork-ing”) on just about every possible platform out there. This means that you can now turn almost any PC, especially older PC’s, into a fully fledged Amiga. In fact UAE not only runs on x86 based machines, but ARM and PPC chipset’s as well. So if you have an old G4 or G5 Mac in the attic – why not give it a new purpose as an Amiga?

Now I know what you are thinking: That’s not really an Amiga is it!

Well, that is of-course true in the literal sense, but while I could spend a few hours digging into the philosophy of what an operative system represents, or if you truly are you since the cells in your body change every 8 years or so –It would be rather pointless. Instead, I would rather spend my time looking closer at what I can do, and what my options are! In other words: what can we do to build a modern Amiga through emulation?

Options for building an Amiga

I wrote an article about how I used a humble Raspberry PI to fully emulate an Amiga, booting into UAE from linux automatically (so no Linux login-prompt. It boots straight into Workbench). Using off-the-shelf battery packs I even made it portable with 6 hours game-time without a power supply!

So the Raspberry PI is one way of going about getting a cheap Amiga. But as many people have commented – you can’t emulate an A1200 since the RPI (Raspberry PI) is not powerful enough to deal with AGA copper code. Im not even sure AGA is included in the UAE4All code (I havent looked at it) to be honest.

Also, I havent touched an Amiga since 1995 so the fact that I managed to get the system booting on a Raspberry PI after fiddling with it for less than an hour – is nothing short of a miracle in my book. It was almost an emotional experience, sitting in my living-room testing rocket ranger at age 41 (had the house to myself that weekend). That was the first Amiga game I bought as a kid and it released an avalanche of happy childhood memories.

I sincerely doubt PC owners feel the same about that 386 DX 1 they used to own 🙂

The power of freeDOS

Right. While using a Raspberry PI for your Amiga emulation is a good option, it can be a hassle to setup correctly (as many have reported). I am no Linux guru so I suspect I got lucky. Thankfully I have gotten some help after that, to make a boot sequence which is safer and valid (hope to upload a disk image when version 2 is done).

The second Amiga option is to buy a dedicated PC and install freeDOS + UAE, that is probably the fastest UAE you will ever get your hands on, since the CPU will be 90% dedicated to UAE itself. You can read more about dosUAE here. But keep in mind that this is DOS, so dont expect a codebase updated recently. But it works, no doubt about that.

DOS UAE is old but cool

DOS UAE is old but cool

The downside with regards to DOS, is that unless you have drivers for your graphics card (and a decent packet-driver for your network adapter, if UAE for DOS even supports that?) – then it wont be usable for much more than playing games. Packet drivers and “modern” dos software for new hardware is primarily the domain of embedded boards and custom designs (read: offshore, oil industry and military systems). But if you have an older PC with networking and graphics card setup correctly — why not give it a try?

The power of Linux

The same formula likewise works for a dedicated Linux box – which is a much better option than DOS since it eliminates the driver problem off the bat. This is the option I would use, because if you boot from Linux you have the benefit of hardware support. Like mention in my previous article, Ubuntu has roughly 3 times as many drivers than other distros due to the fact that it’s funded. The owner of Ubuntu has thrown massive amounts of money on driver development over the years because he knew that drivers were the key to a successful desktop operative system. So if you want a fast Amiga (as fast as Linux can push UAE) with the best possible support for fresh modern hardware (thinking especially about graphics and GPU support here) then Ubuntu Linux is as good as it gets.

The power of Windows XP

If you are going to dedicate a computer to your Amiga resurrection project, then a very fast option (probably faster than Linux and less hassle than DOS) is to install Windows XP. If you have an old XP machine you no longer use (especially if already has drivers working and is ready for use) this will have a leg up on DOS and is easier than Linux. Depending on your Linux skills naturally.

For casual gaming and retro coding

For casual gaming and retro coding

Windows XP is easy to modify to your own diabolical ends, like altering the boot-image, no login prompt – and putting UAE in the startup folder. That is basically all you need to do for your Amiga-XP-Box.

Oh and you get the benefit of using hard-disk images (or why not dedicate a whole partition for your desktop?).

The power of thin clients

This is a great option that is both non-expensive and clever. Thin clients are mini pc’s that were built to only display programs that execute on the server. Even today many TC’s ship with Windows XP embedded. A thin client is “bare-bone” with little or no disk and RAM in the 1 – 16 GB range. More than enough for your Amiga (the Amiga can do wonders with 2 megabyte, so 1024 times that is practically nerdvana). And what you do is the exact same as you would do for the dedicated XP box: You alter the boot process and fire up UAE immediately.

More than enough for Amiga emulation

TC’s — More than enough for Amiga emulation

Depending on the model it will be roughly the speed of an A4000 060 (or so I’ve heard, I have not tried this myself). I highly doubt older models can reach anything close to a 68060 processor, but state of the art TC’s might. It’s impressive how much CPU power they cram into small gadgets these days. My phone probably have more raw power than a pimped up Amiga 1200 had. But it’s how power is used that matters, and no modern device comes with software as ingeniously designed as Amiga OS. It runs on air and tears of ducklings.. It’s a work of art.

Just to make my point I did a quick visit to the most used Norwegian second-hand online marketplace FINN.NO and I found a guy selling 6 (six) HP thin clients at 100 NKR a piece ($9). That’s a bargain if I ever saw one. Here is the article link (will probably vanish quickly).

The power of torrents

I know it’s not good form to encourage piracy but we are talking games bordering on 30 years old (in some cases) so I have no problem looking at the massive collections of Amiga software out there in “torrent space” – as a pure resource of brilliance which belongs to the world. Having said that, I think people should avoid at all cost piracy of OS4 or Amiga forever. It is highly unlikely that any new environments will be created for the Amiga if people copy those systems; and besides – we are old enough now to recognize that programming is hard work. I work as a professional developer and know full well how much it hurts when people crack what you worked for 2-3 years to achieve. If you use it, support it with a purchase!

And this is coming from an ex Quartex and Alpha Flight member (for those of you that remember us). So it’s not without a sense of irony that I write about piracy.

But fact is, you will find gigabytes of games and applications online, much more than you ever had when you owned a real Amiga in your teens. The same goes for MAME (arcade emulators).

Downloading 3.500 Nintendo, Sega, Neo-Geo and Amiga games in <15 minutes is almost to good to be true. Remember Turbo-Tape on C64? You set the tape loading before you went to school and perhaps Last Ninja was done loading by the time you got home 🙂

The following search at PirateBay yields some interesting results:

http://thepiratebay.se/search/Amiga%20games

Sugar and salt

If emulation is not your thing then we should also recognize that there has never been more Amiga based operative systems than right now. Some prefer the old workbench, some prefer the new OS 4.X desktop and others still enjoy the clones. Which as of writing is Aros (and derived clones) and the “inspired” MorphOS.

Pimp up old hardware with a small, compact and lightning fast OS

MorphOS – Pimp up old PPC hardware like an G4 Mac!

Both projects have their positive and negative traits. The positive have to do with the fact that they retain and protect the legacy of Amiga – the negative is typically personified by lack of compatibility with 68K software and lack of drivers. If there is an elephant in the room, it’s undoubtably the lack of hardware for “modern” Amiga operative systems.

Having said that, people always find a way. While I havent been a part of the Amiga scene for many, many years – one thing you can always count on is the high level of skill and technical know-how in the community. If there is a technical problem, someone always figures out a solution. Just look at all those A1200 machines retro-fitted with USB disk-drives and ADF readers? So nothing is impossible.

Example: I picked up a second-hand G5 Mac with 2 monitors for 300 NKR ($30 or thereabout). Useless by modern standards and can only run “vintage” OS X, yet it runs MorphOS faster than any other machine I have! Including my brand new iMac and my Linux gaming PC (!). Imagine what a true port of Amiga OS for PPC would look like.

Truth be told, modern operative systems dont properly use the CPU. Optimization like simple “loop expansion” like we used all the time in the old days is rarely found in modern code. So when a truly human written piece of code is found, it’s typically lightning fast, small and very efficient.

New machines

From what I understand there are two systems being developed by third parties. The first is x86 based and meant for Aros, the second PPC based and suitable for MorphOS. But from what I read online prices for these systems are astronomical and borders on insanity. No-one in their right mind would pay three times as much for an “average system” just because it has a sticker with “Amiga” on the side. Refuse to buy these machines. Get a decent machine and run Aros or MorphOS in protest (!)

I must admit that I find the Amiga situation completely absurd. I have no idea who owns what, but whomever owns the OS should wake up from their psychosis – because there is absolutely no reason to sit on the Amiga codebase if you are not going to do anything with it. It’s been 19 years since I owned a real Amiga, nineteen years (!) and I it can only be described as retarded that the Amiga situation is exactly the same now as when I left.

Aros is pretty damn cool!

Aros is pretty cool!

As a developer myself I realize that the amount of work required to port Amiga OS from 68K architecture to x86 is enormous, but 19 years? I could have written the damn thing myself by now! What exactly are these people waiting for? And whomever owns the hardware rights – why can every other company out there just as small as you, create and release platforms based on off-the-shelf technology, and get it right; yet for the Amiga (which incredibly enough still has thousands of fans), building a machine is impossible?

I think we can safely assume that the owners have no intention of lifting a finger. No company is that slow neither in production or the head to fail so utterly over so many years. Sorry to burst a dream or two, but it’s utter rubbish to still believe that these companies/people have any tangible plans for the Amiga other than flamboyant nostalgia.

Interestingly, the one project that could actually give the Amiga a shot (at least as a “cult” like OS) was something called Amithlon, which was a custom Linux system which booted UAE directly (hm. interesting idea). In other words, a customized version of Linux – giving the Amiga side of things all the benefits of hardware abstraction and even new libraries for programmers to use (!)

But that was clearly to successful to the morons that own Amiga today.. heaven forbid that Amiga should run on x86 without problems — so the project was canceled (jaw drop’s here). Sometimes you just have to question the collected wisdom of the Amiga license holders. It’s almost to stupid to comment on.

Amithlon, worked like a charm on x86 -- so they killed it

Amithlon, worked like a charm on x86 — so they killed it

Still plenty of options

If we look away from the obvious stupidity of whomever owns the Amiga brand, hardware and software rights — the situation is actually optimistic: UAE takes the Amiga everywhere, and with modern processors spending most of their time in idle state – emulation is not the penalty it used to be. Heck, if UAE was modified to make use of multi-core threading, the emulation would be damn close to un-measurable in some cases. The guys behind UAE deserves a medal, it’s an excellent piece of software engineering (or reverse engineering).

I can’t remember the last time I booted an actual, real Windows machine. I do all my development in VMWare these days, including Linux and OS X development. So why I can’t enjoy my Amiga desktop with all those titles and programs is beyond me. Heck, putting together a decent emulation-station from either a cheap embedded board, thin client or older PC is a piece of cake.

Cloud, the future or everything

Cloud

Cloud

Despite the ridicules management of Amiga rights, the Amiga actually have a shot of reaching mainstream once again. Cloud services does not simply mean hosting – it also means that you upload a whole disk for executing it in the cloud. A bit like what thin clients did for terminal services, but 100 times more powerful!

With cloud taking over — it will no longer be a question of hardware, but rather a question of platform. If the Amiga have any future then that’s it. The alternative is that it remains the most widely emulated and loved home computer in the world.

A second market would be embedded systems. Have a sneak peek at QNX real-time OS. That could have been the Amiga, but someone figured it was better to do nothing for 19 years (except OS 4)… Just.. way to go!

And to those who own the rights for Amiga: give the source-code to the community. Make Amiga OS open-source. It’s the only way you will get the manpower to catch up with all the missing features. And if you ever wanted a native x86 version, then open-source is the only way to go.

What is the point of owning an OS if you are not using it for anything?

But to be honest it doesn’t matter what the Amiga copyright holders do. Emulation is so damn good these days that people have little or no use for an official Amiga. 20 years without a proper update is a long time. Just imagine the amount of code invested in Windows or Linux during those years — you can’t catch up with that without a miracle.

But once the C/BCPL code was made open-source, that reality would change drastically for the better.

So what do we need? A product that runs better on the Amiga platform (again, not hardware) than any other OS. Just look at what Apache and mySQL has done for Linux over the years. The Amiga would need something like that to adopt a serious role in the server community. Even if it was just cloud based game emulation for that matter.

Final words

Some people might think was a negative article, but it’s actually not. In Norway we have a saying which, roughly translated, goes like this: “sometimes you have to call a chair for a chair”; meaning that lying to yourself or others ultimately leads no-where. If there was no UAE then indeed – that would be grounds for sadness regarding our beloved childhood computer.

What have the romans ever done for us eeh?

10 for that you must be mad!

But we have UAE and hardware is now cheaper than ever before! Anyone with a slight bit of Amiga skill can easily put an old PC or Mac to good use. Machines which would otherwise be thrown away. Add torrents to that equation and .. thousands of games, applications and demos (!) If that is not optimistic news then I dont know what is 🙂

I have been harsh with the license holders of Amiga technology today, but after so many years I feel I have the right to speak my mind. And they have made it so utterly clear that anyone who cherish that old computer is utterly on their own. Which suits me just fine – because the community itself has everything it needs (and then some).

So to all friends of the Amiga personal computer out there —enjoy UAE and your homebrew devices!

Downloads