Why Was the Amiga Such a Success? | page 1 2
|
---|
|
---|
| | ![](gfx/user2.gif) Gunnar von Boehn (Apollo Team Member) Posts 6250 30 Jan 2023 09:35
| Sometimes people ask what makes a Amiga an Amiga. Maybe a good answer to this is look at "Why" the Amiga was such a great success. In my opinion very important for the success of the Amiga was the combination of 2 factors. 1) The 68K CPU The 68K architecture has many advantages which make it great. * very powerful instruction set, you easily solve all coding problems * very flexible address modes and plenty register = makes coding easy * very human readable and easy to understand. This makes coding and debugging much easier * very compact code, this makes program small / need less memory and allows them to fit on floppy drives This combination of easy to learn, very nice to code, and very powerful instruction set of the 68K CPU was in my opinion a major factor of having so many coders coding on Amiga. Which in return resulted in that so many games and demos were done for Amiga. Many of our Amiga coders were self educated teenagers - which learned programming with the Amiga. That the 68000 CPU was so coder friendly - made this possible. How does the 68K architecture compare to other CPUs? Would the Amiga have been the same success using for example a PowerPC CPU? I think that with a PowerPC the Amiga would not have had the same success. I can give reasons why I think this. a) The PowerPC CPU is much less coder friendly. PowerPC code is harder to write and much harder to read. You often need several PowerPC instruction to do the work of one 68K instruction. This can be as many as 5 to 7 times. This makes coding a lot more complicated and frustrating. Debugging gets also a lot more difficult. PowerPC has a weak memory model - which again makes coding harder. In my the main factor for the many games we have on Amiga was that the easy to learn 68K CPU enabled many people to learn to code and to make games. I think using an PowerPC this would not have been possible - as the PowerPC is much harder to learn and to code. Also PowerPC program are bigger, need more memory. This means the 512k of the Amiga would not be enough for making the games with PPC and also these games being bigger would not all anymore have fitted on the floppy. I think we can be very happy that Amiga has an 68000 CPU. 2) The elegant AMIGA DMA based chipset. The Amiga chipset is DMA based. What does this mean? This means the chipset can by itself do work, like display a Sprtie on Screen or play music. Without the CPU needing to copy data around. The CPU does not need to copy Byte like a beast of burden. The CPU in the AMIGA has the role of a orchestral conductor. The CPU tells the Amiga chipset what it shall do, and the chipset then works independently A special inventions is here the Amiga Copper. The Copper is a special Unit which can also program the Amiga chipset. This desing makes Amiga very powerful and flexible.
| |
| | ![](gfx/user2323.gif) Danilo Drago
Posts 43 30 Jan 2023 10:51
| Don't forget the Blitter :) I like Amiga because of its co-processor architecture.
| |
| | ![](gfx/user2.gif) Gunnar von Boehn (Apollo Team Member) Posts 6250 30 Jan 2023 14:42
| Danilo Drago wrote:
| Don't forget the Blitter :) I like Amiga because of its co-processor architecture.
|
Yes you are right. The Blitter was an important part of the Amiga chipset. And another example of the CPU tells the Amiga hardware what todo and the Amiga hardware - in this case the Blitter does job independently.Both CPU and Copper can give jobs to the Blitter. The Blitter does DMA and can read and write memory and can do logical operations on the memory. The Blitter is typically used to copy memory/ copy graphics/fill screens/draw lines.
| |
| | ![](gfx/user2321.gif) Eddie Cejvan
Posts 28 30 Jan 2023 23:49
| A good level of detailed insights regarding the Hi-Toro/Amiga choice of M68000. But more than purely a technical choice, I believe the 68k fit the founders' mission and vision, and overall philosophy that drove their startup. To put it more in fundamental terms: The Amiga was such a success because it allowed more people access to effective computing possibilities. It was the pinnacle of the 2nd computer revolution; As you say, it made it easy for any kid in their bedroom to learn how to program, even directly to the hardware. Back in '87, in my final year of high school, I was helping a friend to create a Spindizzy-like game on the A500. The only computer experience we've had until that point was a C64. The overall Amiga architecture allowed more software and hardware developers to create new things, which by osmosis allowed a very broad spectrum of general creative users to dream up new things. Inspired things breed inspiration. As for your PowerPC comparison, it is kind of pointless as that CPU was not available to Hi-Toro/Amiga at that time. The other choices would've been a Z80, or perhaps an 80286. When you think about it, Motorola hit it out of the proverbial park with the M68k, and like most companies never really had a good second act.
| |
| | ![](gfx/user2462.gif) Steffen Häuser
Posts 60 31 Jan 2023 12:12
| I think the again Anti-PowerPC propaganda is unneeded to answer this question, even on your home turf ;-) For me personally the PowerPC felt like a huge upgrade (stuff like 3 operators instead of 2, many registers, and operations like rlwimi). And today I see PowerPC Amigas and 68k Amigas as natural ALLIES - producing a software for both would make it more viable. Anyways IMHO the success of the Amiga (at the time where it WAS a success) were (most people of the target buyers did not know or care on internals of the CPU or even knew what a Copper list IS): - Color Depth - 320x240 - x256 in EU - with 32 colors, or 64 colors with EHB was LIGHTYEARS ahead of the concurrence. EGA graphics ? Or whatever ST offered ? Inferior. - GUI. Do not underestimate it. For myselves, when I "upgraded" from ZX Spectrum to Amiga 500 this was the ONE thing which blew me away. And despite experiments like Lisa Amiga was the first to offer it. - Games. And that Amiga was getting them had a lot to do with the Color Depth point I think. And the last iten on the list. Which is not technical. - Sound (compare it to a C64 - even if Amiga was developed outside of Commodore - I still got an Autograph from Jay Miner somewhere - it was the natural inheritor of C64 - it was just phantastic!!!) COMPANY. Commodore was at that point a famous company. Games Companies were SUPPORTING what they do. When Commodore went bust I thought "doesn't matter. Hardware is still the same. And Phase 5 will take their place". I believed so strongly I even quit my dayjob for a VERY wellknown US Software company and joined newcomer Hyperion Entertainment to write games for Amigas with PowerPC Accelerators. So strong was my belief in the Amiga. And all the "old" Amiga software houses were doing the opposite to me. Thalion was going PC were they released a mediocre title, which would have been a FANTASTIC SUCCESS on Amiga. Hey, if they back then would have asked me on it, I would have done an Amiga port for them. For free. But some years later I saw the "big ones" thought differently (Thalion in my last example probably did not freely think like that - BlueByte did the decision for them). "big company behind it" beats hardware. And in the 80s the Amiga HAD "big company behind it". Commodore WAS "big company". Some years later - they all flocked behind PSX. The games companies. The same stuff would run on a PowerPC accelerated Amiga (or possibly today on a 68080 equipped Vampire). It was not on technical things. It was on business. And this was (despite the color depth thing) the biggest reason for Amiga's success. Even if it HURTS to realize it. Myselves before I realized it I always thought the OS and the GUI and the colordepth were the major things... Actually there might be one more reason for success Amiga had. Style. In more modern times PSX got it. But back then Amiga. Today - I like both the style of x1000/x5000 - for myselves the best Amiga ever made, but I am sure on this forum people will disagree - (that big boing ball drawing on the case, and the Amiga keyboard - when mine broke I was getting weird looks by the mobile phone repair shop guy that I was willing to pay 3x the worth of a new keyboard to repair THIS ONE, when I explained about Amiga he understood it - or at least said he understood ^^) and the style of the Vampire (I am referring to the standalone device - really fantastic looks!!! Like a blast from the past - to the point that I ).
| |
| | ![](gfx/user2.gif) Gunnar von Boehn (Apollo Team Member) Posts 6250 31 Jan 2023 12:52
| Steffen Häuser wrote:
| For me personally the PowerPC felt like a huge upgrade (stuff like 3 operators instead of 2, many registers, and operations like rlwimi).
|
Lets look at this. 68000 has 16 register (8/8) PowerPC has 32 register The 68080 has 48 register (16/32) We have to mind that the PowerPC can not operate on memory. Therefore it need to use scratch register and needs to have more register to be able to do the same work. The PowerPC needs scratch register to construct in them long immediate, it needs scratch register to be able to construct addresses. Our simple example ADD.L #100000,SCORE This instruction is easy to write. Easy to understand. And fast. And its not need a single register on the 68K CPU. You need 6 instruction and 3 scratch register to do the same on PowerPC. The PowerPC has the big problem of the instruction not having the possibility to include long immediate. This means you always need to construct these number at runtime in scratch registers. The same problem is valid for addresses, you need to construct them and hold them in registers. This is not needed on 68k. Another big problem is that you can not directly work/write on memory. And you can not directly use memory or stack as source values. This means you always need to preload the values with extra LOAD instructions, and for this you again need more scratch register. So 32 register might sound at first like a lot. But in reality its not that much more as you need many registers for scratch and temps. The 68080 CPU does not have these problem. The 68080 can easily use long immediates. The 68080 can use addresses instructions directly. The 68080 can operate/write/work on memory directly. And the 68080 can easily use memory /stack as source. And the 68080 has 48 register. And all 48 register you really use for coding and not waste any for scratch.
| |
| | ![](gfx/user2.gif) Gunnar von Boehn (Apollo Team Member) Posts 6250 31 Jan 2023 13:06
| Steffen Häuser wrote:
| For me personally the PowerPC felt like a huge upgrade (stuff like 3 operators instead of 2, ).
|
But lets looks at this. The 2 operant encoding of the 68K resulted in minimum instruction size of 2 BYTE. While the PowerPC instruction are 4 Byte long. You might ask: Why instruction length important? You might say then the Amiga games need not 1 Floppy disk but 2 Floppy disk - who cares? Yes good point. But also more code means more instruction loaded from memory. More memory bandwidth lost. And less instructions will fit in the CPU instructions cache = speed lost. You sometimes but not always need 3 operant operation. Very commonly you need 2 operants. And if you need 3 operant then you get this with 2 instruction each 2 operant. 2+2 BYTE = 4 Byte - so you are then even with 68k encoding. While you might think the 2 operant encoding of Motorola is a drawback - it in reality a big advantage. If you need 3 operant then you can use 2 times 2 = with has the same size as the PPC instruction. But as more often you not need 3 but need 2 - you save a lot of space with the 2 operant encoding. Motorola did know this and did design it therefore on purpose this way. BTW the 68080 CPU offers you both. You can use both 2 and 3 operant encoding in 68K with it.
| |
| | ![](gfx/user2.gif) Gunnar von Boehn (Apollo Team Member) Posts 6250 31 Jan 2023 14:26
| Steffen Häuser wrote:
| And in the 80s the Amiga HAD "big company behind it". Commodore WAS "big company".
|
Of course it never hurts to have big companies behind But was the Amiga gaming development done by big companies? Lets look at it: I'm with Amiga since the Amiga 1000. My impression was that often Amiga game coding was done be single person or small teams. Let us look at some example: MENACE David Jones, music: David Whittaker (he did also Lemmings) FAERY TALE ADVENTURE David Joiner HYBRIS Martin B. Pedersen Torben B. Larsen music Paul van der Valk IK+ Archer Maclean Music Dave Love Many Amiga games were done by single persons or small teams of 2-3 guys. Many of the Amiga games coder where young sometimes still going to university or school. To me this was great of the AMIGA time - people could use their creative and home make complete games and be successful.
| |
| | ![](gfx/user2462.gif) Steffen Häuser
Posts 60 31 Jan 2023 14:26
| Gunnar von Boehn wrote:
| Lets look at this. 68000 has 16 register (8/8) PowerPC has 32 register The 68080 has 48 register (16/32) |
68080 at that point was not available and no possible comparision. I am talking of the time I first learned the PowerPC. This was in year 2000 or whatever. Was there a 68080 at that time ? I am really impressed on your work on 68080. And again - I do not think this discussion is relevant to the question "Why was the Amiga such a Success ?" I am pretty sure if the Amiga would have come out on 68k or PPC (which was not available at the time) would have been irrelevant ("big company" and "high color depth" were what made the Amiga a success). The target audience would not have cared. And again - I do not see these two CPU families as concurrence, I see them as "allies" (at least in the Amiga context). We have to mind that the PowerPC can not operate on memory. Therefore it need to use scratch register and needs to have more register to be able to do the same work. |
Both architectures have advantages and disadvantages. and yes, I know the example you cited (a big disadvantage of 68k appearently - the state of gcc for that CPU platform as you wrote me yourselves). I actually think should the PPC platform come to an end your 68080 might be an alternative - just my personal opinion - (still big issue: "Big Company" - but yeah, we on Amiga - regardless which kind of Amiga - ignored that anyways, so who cares). >You might say then the Amiga games need not 1 Floppy disk but 2 >Floppy disk - who cares? Indeed my point. >BTW the 68080 CPU offers you both. >You can use both 2 and 3 operant encoding in 68K with it. Wow that is pretty cool ;-) Again - I do not see the 68080 as "enemy" as you see the PPC. I see that the current remaining (as small as it is) Amiga Market needs both. We need both Amiga types. To come out big again. Right now the PPC-Amiga definitely has the advance (even on that forum one cannot fail to see this), but as you have the control of the development of the 68080 and what happens with it - who knows what the future will bring for you ? Again this discussion has little to do with what made the Amiga a success. For me this is clear. OS. Big Company. Color Depth. You know what made "Project Hombre" fail (asides from Commodore going bancrupt haha) - it would have had all the custom chips and stuff - but no compatibility to the AmigaOS anymore. The AmigaOS itselves is really the core. "Project Hombre Amiga" would not have been an Amiga for me. Full compatibility to the custom chips but not to the OS ? Sorry, no Amiga. Steffen
| |
| | ![](gfx/user2462.gif) Steffen Häuser
Posts 60 31 Jan 2023 14:42
| Gunnar von Boehn wrote:
| Of course it never hurts to have big companies behind But was the Amiga gaming development done by big companies? |
Absolutely agreed. You are talking to a founding member of Hyperion Entertainment here. Not exactly "Big company". But the support of the big companies what caused the platform to be a success. And actually I did not mean "big games company". I meant "big hardware company". As long as it was Commodore - the big names in game companies would support the platform. As soon as Commodore went bunk - they left. I was myselves really surprised how fast they did. Didn't they get it the hardware HAD NOT CHANGED and the users STILL HAD THIS HARDWARE ?You might call this sort of company "locusts" of course. But still the locusts were important in Amiga's success (there is still a company who owns the rights of a certain RPG game where I am pretty sure I could bring out an Amiga Betaversion - for both PPC and 68k - in the run of a few weeks but if it does not have "PC" or certain consoles in it they are not interested - regardless that it would cost them no money). Steffen
| |
| | ![](gfx/user2.gif) Gunnar von Boehn (Apollo Team Member) Posts 6250 31 Jan 2023 15:12
| Steffen Häuser wrote:
| Right now the PPC-Amiga definitely has the advance
|
But aren't this just PC-clones using PC chips together a with PowerPC CPU - In my book these are definitely not AMIGAs. They do not have the Amiga chipset and as they can not run the original AMIGA-OS (or can they run Amiga OS 1.3 or Amiga OS 3.0?) Yes they can run a ported OS, derived from Amiga - but this does not make them an Amiga. I can also run MAC OS on my Amiga - and this not make my Amiga a MAC - or does it? And I have ported PC games to real Amiga and I can run these ported PC game on my Amiga - but this does not make my Amiga a PC. Regarding "Advance": As far as I know the sales of 68K Apollo System is higher than PPC systems. Would that not mean the advance is on 68k?
| |
| | ![](gfx/user2.gif) Gunnar von Boehn (Apollo Team Member) Posts 6250 31 Jan 2023 15:59
| Steffen Häuser wrote:
| As soon as Commodore went bunk - they left. I was myselves really surprised how fast they did. Didn't they get it the hardware HAD NOT CHANGED and the users STILL HAD THIS HARDWARE ? |
Developing a game does take some time. This can be some month, halve a year, or over a year depending on the size of the game and your speed. If you want to make living from this and feed your childern. then thinking before you start a new game if there is still a market to sell when its ready. Yes the Amiga market was still existing - but certainly it was declining. At the same time the play station market was booming. Making games for a booming market for sure was not a bad idea, was it?
| |
| | ![](gfx/user805.gif) Samuel Crow
Posts 424 31 Jan 2023 16:27
| Re:One man band games I like the fact that one person could make an impact on Amiga. As Michael Parent, the head artist at BitBeamCannon has observed, this was also the undoing of Amiga. The code was top-notch but the level design and artwork were sometimes suffering as a result of it.On Metro Siege, BitBeamCannon's beat-'em-up that is soon to be released, they made the game 4 bitplanes and not more. The copper got enough color for the game to look good enough but needed to have fewer than 5 bitplanes to have enough bandwidth to allow the blitter to update fast enough. While 32-color palettes were easy to do on Amiga, and the Tiertex/U.S. Gold port of the Final Fight used them, they slowed down the system too much and used too much memory at the time. The graphics look alright on the Final Fight but the gameplay is terrible while Metro Siege is designed to be both playable and beautiful. Ultimately, the 3-man team used by BitBeamCannon is more able to do the job by diversifying the work and dividing the load. The Final Fight port is an embarrassment to the Amiga. Re:PPC and 68k One advantage that PPC has over the 68k is that it was designed to be upwardly capable to 64-bit addressing and 64-bit register usage. The 68080 has 64-bit registers also but there is no compatible way to implement 64-bit memory addressing. There will need to be a compatibility-break somewhere, sometime. Re:Hardware only vs. hardware+OS The AmigaOS was useless for games due to its poor design of Graphics.library. It barely used the Copper and made it just as cumbersome for the programmer to use the Copper as they possibly could. They made it look like an after-thought in the design. This is something that could be remedied with some work. For productivity, the chipset was underused also. The sprites could have made up the side borders of full-screen windows and copper split-screens made the top and bottom borders of the same window. This would have freed up the full palette usage of the middle of the screen in the high-res mode of the OCS/ECS system and also allowed the Copper wraparound scrolling techniques to allow documents to scroll quickly and efficiently using the same techniques as tile-mappers did in the games. In short, the lack of integration between hardware and software was the downfall of the performance of the Amiga in many ways.
| |
| | ![](gfx/user2.gif) Gunnar von Boehn (Apollo Team Member) Posts 6250 31 Jan 2023 16:43
| Samuel Crow wrote:
| Re:PPC and 68k One advantage that PPC has over the 68k is that it was designed to be upwardly capable to 64-bit addressing and 64-bit register usage. The 68080 has 64-bit registers also but there is no compatible way to implement 64-bit memory addressing. There will need to be a compatibility-break somewhere, sometime.
|
As you all know the Amiga OS is based on 32bit addresses. All the structures use 32bit addresses. Everything is designed for 32bit And the Amiga chipset: the Copper, Blitter, the Planes, Sprites, all the DMA - all is based on 32bit addresses. If you wanted to change this .. how would you change the OS structures without breaking? Help me understand why you are not happy with AmigaOS use 32bit addresses? With 32bit addresses we can have 4000 MegaByte memory. Is this not enough for Amiga games? I fail to understand why PowerPC would have here an advantage. Maybe you can help us and explain more?
| |
| | ![](gfx/user2.gif) Gunnar von Boehn (Apollo Team Member) Posts 6250 31 Jan 2023 16:58
| Samuel Crow wrote:
| Re:One man band games... Ultimately, the 3-man team used by BitBeamCannon is more able to do the job by diversifying the work and dividing the load. ... The Final Fight port is an embarrassment to the Amiga.
|
Sorry I fail to get your point. What did you want to say? I think our point was about Amiga game making in comparison to "HUGE" companies. During the C64 and AMIGA time is was common that you could single handed or with a tiny team make a great game. 3-man team = small team. So it was possible even as startup or tiny company of 3-5 people to be very successfully making games on Amiga. This is in comparison to the PC side today where you have "moloch" game companies with several thousands of people.
| |
| | ![](gfx/user2.gif) Gunnar von Boehn (Apollo Team Member) Posts 6250 31 Jan 2023 17:07
| Steffen Häuser wrote:
| "Project Hombre Amiga" would not have been an Amiga for me. Full compatibility to the custom chips but not to the OS ? Sorry, no Amiga. Steffen |
Its some years ago, but I recall this differently. Was it not that Hombre was not planned to be compatible on the Chipset? And Hombre was not compatible on the CPU (they wanted to use a ugly to code RISC)But was it not, that Hombre was planned to get a port of the OS? And they wanted to start shipping without OS to go to market sooner? But I agree with you. No 68k? No Chipset? Sorry no Amiga!
| |
| | ![](gfx/user805.gif) Samuel Crow
Posts 424 31 Jan 2023 17:07
| Gunnar von Boehn wrote:
|
Samuel Crow wrote:
| Re:PPC and 68k One advantage that PPC has over the 68k is that it was designed to be upwardly capable to 64-bit addressing and 64-bit register usage. The 68080 has 64-bit registers also but there is no compatible way to implement 64-bit memory addressing. There will need to be a compatibility-break somewhere, sometime. |
As you all know the Amiga OS is based on 32bit addresses. All the structures use 32bit addresses. Everything is designed for 32bit And the Amiga chipset: the Copper, Blitter, the Planes, Sprites, all the DMA - all is based on 32bit addresses. If you wanted to change this .. how would you change the OS structures without breaking? Help me understand why you are not happy with AmigaOS use 32bit addresses? With 32bit addresses we can have 4000 MegaByte memory. Is this not enough for Amiga games?
|
You've just made my point. A compatibility break is required to be more than 32-bit. This is enough for an Amiga game but not all productivity software will fit in 4 gigs. If you treat Amiga like a classic console, 32-bits is fine. For the chip bus addressing 32-bits and a small IOMMU for memory bank selection will get a lot of miles. (The Hombre chipset had this planned. This would allow the display DMA and Copper lists to have a separate bus from the blitter when animating.)Some PowerPC chips can address 64-bits already. The operating system will still need a compatability break, but not the hardware. AROS supports 64-bits on AMD64 but needs a hosted 32-bit mode for the 32-bit x86 software to work on it. PPC could have a similar layer. Now do you understand what I'm talking about? Maybe ApolloOS can use a similar hosted 32-bit environment on a 64-bit kernel to do more later on. 68100 anyone?
| |
| | ![](gfx/user2.gif) Gunnar von Boehn (Apollo Team Member) Posts 6250 31 Jan 2023 17:15
| Samuel Crow wrote:
| This is enough for an Amiga game but not all productivity software will fit in 4 gigs.
|
I use Amiga every day. I use it on the V4 with 512 MB of memory. So this is a lot less memory than the 4000 MB would we could have without breaking compatibility. Please help me understand what software I today miss out. Which Software would I be able to use if the V4 would have e.g 64 GB of memory.
| |
| | ![](gfx/user805.gif) Samuel Crow
Posts 424 31 Jan 2023 17:29
| Gunnar von Boehn wrote:
| Please help me understand what software I today miss out. Which Software would I be able to use if the V4 would have e.g 64 GB of memory? |
Being able to run your VHDL compiler or System Verilog for anyone else so-inclined, on your existing Amiga-compatible computer would be nice, wouldn't it? Of course you still use a PC to do that. Most VHDL compilers are not ported to Amiga. On GitHub there is an organization called the "Chips Alliance" to develop FPGA cores with open-source software. SiFive is backing the effort. I'm pretty sure the compilers for that are 64-bit only.
| |
| | ![](gfx/user805.gif) Samuel Crow
Posts 424 31 Jan 2023 17:40
| Gunnar von Boehn wrote:
| So it was possible even as startup or tiny company of 3-5 people to be very successfully making games on Amiga. This is in comparison to the PC side today where you have "moloch" game companies with several thousands of people. |
I get where you're going with this. 3D games with photo-realism are to hard to make with less than a hundred developers. Some 3D game engines can now render with AI so smaller teams can make successful games if they pay many $$$ to the engine developers. In the end, the only one paying the price is the end-user who still needs a modern graphics card to run it all.Even Rescue on Fractalus used generative fractal 3D on the Atari 8-bit and the C64. It allowed a fairly large mountainous landscape to be generated on the fly for this single-floppy game. The gameplay was too simple for a modern player but the 3D was definitely not prerendered. There wasn't enough storage on the disk nor memory in the 8-bit machine to hold it all. I just want to see some real competition in the graphics rendering world. Intel is having financial decline. AMD and nVidia are fighting over customers that don't really want to pay loads for a graphics card in the first-place. Something simple but fast would really be nice to see.
| |
|