The Amiga had a great trick. Both the CPU and the display/audio hardware share the same RAM (called Chip RAM), so they have to arbitrate for access to it, through a chip called Agnus, which prioritises who gets to read/write memory, depending on importance. You can starve the blitter, you can starve the CPU, but you can't starve the audio or video or disk I/O. As the 68000 CPU only needed memory access every second clock cycle, the Amiga designers arranged it so that the custom chips preferred odd cycles and saved the even cycles for the 68000. So your 68000 runs at full speed.
But if you need more and more work done by the custom chips, it starts to rob some of the even cycles from the 68000.
If you have a 16-colour lowres screen (4 bitplanes), Denise (the chip that turns RAM values into video signals) only reads display data on odd cycles. But if you add another bitplane for 32 colours, she needs some of the even cycles. If you add another bitplane for HAM or EHB mode, she needs even more.
In hires mode, it needs twice the bandwidth for twice the pixels. So if you have a 4-colour hires screen, it only needs odd cycles and the 68000 is full speed. If you go for 8 or 16 colours, it starts slowing the 68000 down.
This is why the default Workbench screen is 4-colour hires. It's hires to look nice and professional like an IBM, and not like a kid's toy like the Atari ST's default lowres GEM interface. It's 4-colours to show it's colourful and not black-and-white, but it's not 8- or 16- colours because that would nearly halve the speed of the CPU !!!
Neat. 3MB would have been insane. That year, my family bought the 512KB trapdoor expansion for A500, so that we could play Monkey Island. It was every bit worth it!
Of course, the extra 512KB made our Amiga that much more useful, and eventually we did the solder-jumper change to make it chip, as our A500 is a rev6 with the 1MB ECS Agnus.
I still have this A500; now it also has 8mb fast on cpu slot, an ECS denise and a 68010.
Cool! I never knew anyone who did a 68010 upgrade back in the day.
I also had a 30 meg hard drive on my A500 (Supra, which included the RAM expansion.) It was a pretty decent Amiga setup. I taught myself C on that machine (Lattice / SAS C)
amiga386 · · focus · HN ↗
<a href="https://amigadev.grimore.org/Hardware_Manual_guide/node02d4.html" rel="nofollow">https://amigadev.grimore.org/Hardware_Manual_guide/node02d4....
The Amiga had a great trick. Both the CPU and the display/audio hardware share the same RAM (called Chip RAM), so they have to arbitrate for access to it, through a chip called Agnus, which prioritises who gets to read/write memory, depending on importance. You can starve the blitter, you can starve the CPU, but you can't starve the audio or video or disk I/O. As the 68000 CPU only needed memory access every second clock cycle, the Amiga designers arranged it so that the custom chips preferred odd cycles and saved the even cycles for the 68000. So your 68000 runs at full speed.
But if you need more and more work done by the custom chips, it starts to rob some of the even cycles from the 68000.
If you have a 16-colour lowres screen (4 bitplanes), Denise (the chip that turns RAM values into video signals) only reads display data on odd cycles. But if you add another bitplane for 32 colours, she needs some of the even cycles. If you add another bitplane for HAM or EHB mode, she needs even more.
In hires mode, it needs twice the bandwidth for twice the pixels. So if you have a 4-colour hires screen, it only needs odd cycles and the 68000 is full speed. If you go for 8 or 16 colours, it starts slowing the 68000 down.
This is why the default Workbench screen is 4-colour hires. It's hires to look nice and professional like an IBM, and not like a kid's toy like the Atari ST's default lowres GEM interface. It's 4-colours to show it's colourful and not black-and-white, but it's not 8- or 16- colours because that would nearly halve the speed of the CPU !!!
icedchai · · focus · HN ↗
snvzz · · focus · HN ↗
Until you added FAST RAM (e.g. via lefthand expansion slot), exclusive to the CPU.
The system prefers allocating there unless CHIP is explicitly requested.
icedchai · · focus · HN ↗
snvzz · · focus · HN ↗
Of course, the extra 512KB made our Amiga that much more useful, and eventually we did the solder-jumper change to make it chip, as our A500 is a rev6 with the 1MB ECS Agnus.
I still have this A500; now it also has 8mb fast on cpu slot, an ECS denise and a 68010.
icedchai · · focus · HN ↗
I also had a 30 meg hard drive on my A500 (Supra, which included the RAM expansion.) It was a pretty decent Amiga setup. I taught myself C on that machine (Lattice / SAS C)