Reply 220 of 238, by NamelessPlayer
I've heard about developers basically bit-banging PWM out of the PC speaker to play samples in some earlier games, though it's not CPU-efficient at all to do so and still sounds worse compared to how the Mac does it (also software-based and basically done in the blanking period between display frames).
I never really encountered much of that, though; later games just gave you very basic beeps and bloops as a very crude fallback to not having at least a Sound Blaster.
Well, it was rather CPU-intensive (just as the Covox Speech Thing was), but as PCs became more powerful, it was no longer an issue. By the early 90s, demosceners were starting to port tracker music to PC, by using software mixing and then playing over PWM.
This was also used in various games, such as Pinball Dreams and Pinball Fantasies. The PC version basically just played the original Amiga mods on PC, via PC speaker, Covox, AdLib (yes, digital sample playback via a hack), or SB.
With a fast 386/486, the overhead of software mixing and PC speaker sample output became negligible.
And going on into the Pentium age (the period of computing history I'm most familiar with as a kid), that sort of thing was the norm, letting non-GUS sound cards play MOD music like in Tyrian, or just have greater polyphony than the hardware would normally allow, like in Eradicator and various Build engine games.
I would've figured that hardware polyphony still would've been a limiting factor then, considering it was used as a selling point for sound cards well into the Windows age, with the X-Fi cards boasting 128 simultaneous playback channels and all, but perhaps I overestimate the CPU overhead of software mixing.
While an upgraded A1200/A4000 fulfills many 90s fantasies, if I was buying an Amiga today to play games it'd be the A500 with just a 512KB RAM upgrade and a virtual floppy which takes an SD card.
Just like old PC titles run poorly on newer hardware the developers didn't foresee, many great Amiga titles were coded to target the A500 and later ones were still mindful that this was where their market was.
Indeed, there are a number of problems that plague compatibility:
1) Kickstart 2.0 and later are not 100% backwards compatible. Some games require Kickstart 1.x (1.3 being the most common, I don't know of any software that specifically needs an earlier version).
2) AGA is not 100% backwards compatible.
3) A lot of software assumes you are using a 68000 CPU at 7 MHz, and anything faster can throw off the timing, and break the software (especially using cached memory).
The Amiga 500+ and 600 suffered from 1), which could be solved in two ways:
I) You could use a SoftKick solution, where a Kickstart 1.x image was loaded in memory (costing 512k), and then the computer was restarted. This works quite well in practice, even on a stock 1mb machine, since most software that requires 1.3 is old, and doesn't need more than a 512k Amiga.
II) You could insert a real Kickstart 1.x ROM into the machine. You could use a hardware solution where you basically insert a small PCB with two Kickstart sockets into the original socket, have both the 1.x and 2.x ROM in there, and use a simple switch to select which to use. Best of both worlds.
The Amiga 1200 and 4000 suffered from all three issues. You could disable the CPU caches to slow the machine down, which worked in some cases. But some software wouldn't work no matter what you did.
Today, this is more or less solved by the WHDLoad project. Aside from just making software run from a harddisk, it also contains all the patches and workarounds required to make the software compatible with any Amiga configuration you can think of.
But why go through all that trouble when you can just get a real A500 with Kickstart 1.3 and 1mb of memory? That's the 'original', and will run all classic Amiga software out there.
There are some Amiga games known to work on Kickstart 1.2 but not 1.3 (hope you don't mind the lack of HDD autoboot support!), and in extreme cases, even 1.1 or 1.0, which necessitates an A1000 with the appropriate Kickstart floppies. However, it wouldn't surprise me if those have all been patched by now, via WHDLoad or otherwise.
I have noted that gaming on an A500 with a Gotek floppy emulator is a very console-like experience, save for the load times and all the floppy-swapping on bigger games. You pop in the disk, turn it on, and go.
However, it won't run all classic Amiga software, as you know. Banshee needs AGA, and that's not even an FPS like Gloom or Alien Breed 3D, just a shmup. And then there's Alien Breed 3D II: The Killing Grounds - the Crysis of Amiga games, bringing a stock A4000/40 to its knees, and being seemingly unplayable unless you spend the big bucks on a 68060 or Vampire accelerator, or just take the WinUAE route. I don't know who they were trying to sell that one to if at least 90% of Amigas in existence couldn't run it beyond slideshow framerates without spending new computer money on an accelerator... (Seriously, I just saw an A4000T 68060 board sell for $800 on eBay!)
On the flip side, apparently OCS has some quirks that AGA can't quite replicate, and certain demos like The Black Lotus' EON rely on them. (Funny how they've done AGA + 68060 demos before, and the one that put them on the map for me requires nothing more than a 1 MB A500...) And other games run too fast even with WHDLoad on a 25 MHz 68040 with caches on, like Castle Master.
All I know is that I very much prefer the WHDLoad experience on my A4000, to the point that I haven't even touched my A500 in a while. Yet I can't seem to just let go of the A500, just in case I run into any of those compatibility edge cases, and also because my A2000 still hasn't been fixed yet, which would be my OCS machine of choice otherwise...