Changes

Standard Memory Expansions

728 bytes added, 24 February
/* Extended-Standard Expansions */
(*) For example 7B01h or 7B7Fh would be no good, because the FDC command register at FB7Fh is mirrored to these locations. Using 7B80h..7BFFh would fix that problem, but might conflict with other connected expansion hardware.
* '''Compatibility''' - The first 512K (Port 7Fxxh) are fully compatible with dk'tronics. Using the next 1.5MB (Port 7Exxh,7Dxxh,7Cxxh) should similarly work without conflicting with the other hardware expansions.
* '''Compatibility Problems''' - The last upper 2MB (Port 7Bxxh,7Axxh,79xxh,78xxh) of a 4MB expansion can conflict with other hardwareas setting A10 to 0 is also used for many hardware expansions. As workaround: Either leave them unused, or If those hardware expansions do not check A15 (and most don't) they might get activated if a RAM bank in the range 2-4MB is accessed. If you need to use RAM in that range make sure to use values for "xx" that do not conflict with your hardware (which values are good for "xx" and which aren't good depends on what other hardware you have connected) (and obviously, different ". If unsure use &FF for xx" may be needed in 7Bxxh as in 7Axxhno custom hardware expansion should react if all bits of the lower byte are set. So e.g. OUT &78FF, for example&C4 or OUT &7AFF,&C5 should always be fine whereas OUT &7800,&C4 or OUT &7AC5,&C5 (as happening sometimes with speed optimised code)might unexpectedly turn on a feature on an expansion.
== Capacity ==
* [[X-MEM]]
* [[Old_School_512K_RAM_Expansion]]
* [[CPC 6320 / CPC 6512 - internal 320K / 512K for CPC 6128]] (eto) - replacement of original RAM ICs
== Extended-Standard Expansions ==
* [[Gemini]] (Shinra - PulkoTronics) - compatible with standard 512 Kbyte expansion (plus extra extended-standard 512 Kbyte), also handles special case for Amstrad Plus ASIC
* [[Y-MEM]]
* [[RAM7 2MB memory expansion]] ([[RAM7]]) - compatible with standard 512 Kbyte expansion (plus extra extended-standard 1.5 MBbyte)
* [[CPC4MB]] ([[Yarek]]) (DIY) - compatible with standard 512 Kbyte expansion (plus extra extended-standard 3.5 MBbyte)
* [[CPC iRAM]] (eto) DIY - compatible with standard 512K expansion (plus up to 512K extended-standard )
== Semi-Standard Expansions ==
* [[Otten & Fecht 1 MB RAM-Disc]] - Accessed through I/O ports (RAM is not mapped to memory)
* [[Vortex Expansions RAM card]] - an older expansion, uses 32K-banks, not compatible with the later standard
* [[Nova]] - Non-volatile 32KB RAM and RTC
== Expansions that are unknown how they work, and if they are standard or not ==
12,598
edits