For example, an Amiga 500+ has 1MiB of chip memory, but it can be expanded to 2MiB. What would be the advantage?
There's two possible routes this answer can take - the first is "what is the advantage in adding memory (that happens to be chip memory)" and the second is "what is the advantage in adding chip memory as opposed to other types of memory". I'll try to answer both!
How much memory you need depends on what programs you want to run. When it comes to games, the vast majority of games will require either 512KiB (which is the basic amount of memory shipped with the Amiga 500) or 1MiB (which is what you get if you add a 512KiB expansion card to an Amiga 500 - this was a very popular configuration of Amiga). Games developed for the AGA chipset can expect a minimum of 2MiB (as there is no AGA-based machine with less than that). It's very rare for a game to need anything other than this.
For productivity software there may be an advantage in adding more memory. Most software has the same requirements as games, but adding more memory means that you can do things like run multiple programs at once, have more documents open, use the RAM disk more, and so on. More advanced productivity software, such as video processing and 3D rendering, are more likely to have higher requirements than an unexpanded Amiga.
So, what about chip memory specifically? It's most commonly understood that the Amiga has two types of memory - chip memory and fast memory. The basic difference between these two types is:
- Chip memory is the only type of memory that the custom chips can access. Therefore all data that the custom chips process must be stored in chip memory. This includes video and sound data. The CPU can access chip memory, but the custom chips are always given priority: the custom chips will lock the CPU out of chip memory if they need to access memory.
- Fast memory is available exclusively for use by the CPU. The custom chips cannot lock the CPU out of fast memory, therefore the CPU is able to operate without being delayed if its instructions and data are in fast memory.
So, to answer your question, "what's the advantage in adding more chip memory" is that there is more space to store all types of data. Because it's accessible to the custom chips, it can mean that you can use more colours, or higher resolutions, or multiple screens, than perhaps you had access to before. The related question, "what's the advantage in adding more fast memory" is that although the memory cannot be used for video and sound data (exception: see below), it could cause programs to run faster since the CPU isn't being held back from accessing memory.
Therefore in the ideal world, you would have enough chip memory to hold all the graphics, sound and other custom chip data, and enough fast memory to hold all the instruction code and non-custom chip data. This means that the CPU is not unnecessarily accessing chip memory (which can slow down the CPU if it's locked out) and you have enough memory for everything you want to do.
I say "most commonly understood" because there is a complication that is often overlooked. Some Amiga models can have memory expansions installed that appears to be fast memory, but is actually on the same memory bus as the chip memory. This means that although the custom chips cannot access it, they will still lock the CPU out of it if they want to lock the chip memory. Since it's neither chip memory, nor does it have the speed advantage of fast memory, earned the nickname of slow memory. (It's also occasionally referred to as ranger memory but I don't know where this name came from.) This affected the Amiga 500 (not 500 Plus) with memory in the trapdoor slot. Possibly other configurations are also affected, but I'm not currently sure. Memory fitted to the side connector of an Amiga 500, or to a Zorro slot or CPU slot inside a big-box Amiga, is connected directly to the CPU bus and is true fast memory.
About that exception: it's not true to say that fast memory can't store video and sound data - it can, but it just can't be displayed. If my memory serves me correctly, the Rombo Vidi Amiga product was said to be able to play longer videos than other products as it kept video data in fast memory, and copied the needed frames to chip memory just before they were needed to be displayed.
2To clarify, slow ram is allocated to the leftover addressing space where you could have chip RAM (all Amigas max at 2MB chip). By default A500s come with a standard non-fat Agnes chip that can only utilize 512KB of chip RAM. So a common configuration was 512KB of on-board chip RAM and a 512KB slow RAM trap door expansion. If the Agnes chip was upgraded to a fat 1MB version, solder jumpers on the motherboard could be changed to make that 512KB into chip RAM. To add fast RAM you need to get outside that reserved 2MB address space by using an expansion on the CPU bus (sidecar expansion).– mnemJul 18, 2016 at 16:57
1Thanks @mnem. To clarify the clarification :-) all A500s do have a Fat Agnus chip - the "fat" refers to the physical packaging of the chip, which is a different shape and has more pins (and I think those extra pins were for the purpose of enabling slow memory). Later versions of Fat Agnus can access higher chip RAM - these were informally known as "Super Agnus" and similar, although as I understand it that was not an official name. Jul 19, 2016 at 9:38
Ah, right you are. I had forgotten about that. I think the 1MB Agnus was usually referred to as the "Fatter" Agnus, and the 2MB the "Super". Either way though, most A500s shipped with the 512KB version, although I do have a later revision 6A board that shipped with a 1MB Agnus on-board but with only 512KB of chip ram enabled by default.– mnemJul 19, 2016 at 16:21
Jack Tramiel said no one would ever need more than 640K of chip RAM....wait, no that was Bill Gates. And it was conventional RAM. No, wait...none of that ever happened. I forgot what I was saying..oh well....long live the Amiga!– cbmeeksJan 12, 2017 at 19:07
Wasn't the Ranger also the name of a later Amiga branded product? Does that have something to do with the kind of memory also known as "slow memory"? Mar 29, 2018 at 12:05
As a start, more memory.
Benefits of having more of those programs that only reside in chipmem.
You can have higher resolutions/colours and still not run out of mem (Indivision or other scandoubler / ECS/AGA chipset might be needed to get a productive result).
The more Chip RAM you have, the better. This is because it's the memory used by video and audio coprocessors. These access RAM without involving the CPU, on a completely separate bus that the CPU is not even (directly) connected to.
That means the coprocessors can access it quickly, which might increase the resolution, or colour depth, the number or size of the sprites, the sample frequency of the sound, or other things that the coprocessors can do by themselves. This page will explain more.
"The more Chip RAM you have, the better", no, not really. It's very likely that adding an extra MiB to an A500 already equipped with 1 MiB of chipmem will do nothing at all unless you need to work with a very specific application. No games will for example use the extra memory, and you have to open up quite a few screens for 1 MiB to be a limitation. Unless you have a specific use case in mind, it will likely just sit unused. Then you have spent money on something that just wastes power.– pipeJul 20, 2016 at 17:13
@pipe If money and power consumption is a concern, then I guess an Amiga 500 is not the right platform for you... Jul 26, 2016 at 13:58