||This article is very short and not very detailed. Please help to improve it.
||Modern 100% compatible remake.
GeoRAM is a 512KByte memory expansion for the C64 and C128 from the company Berkeley Softworks. It uses the registers at
$dffe and $dfff to determine what part of the geoRAM memory should be mapped to $de00–$deff.
The register at $dfff selects which 16k block to map, and $dffe selects a 256-byte page in that block. Since there are only 64 × 256 byte pages inside of 16k, the value in $dffe ranges from 0–63. The number of 16k blocks that is available depends on the size of the GeoRAM:
|geoRAM Memory Blocks
||16 kB Blocks
The two registers are write-only. Attempting to read them will only return random values. If you need to know the current values of the registers, you need to write a copy in normal RAM when you set them.
- 1541_Ultimate by Gideon Zweijtzer, an implementation of GeoRAM with size 128k to 16Mb. For 8 and 16Mb the 16k page is 32k and 64k. See forum link on size detection below.
- ↑ Robert Bixby: "The GEOS Column: Closeup on GEORAM", Compute!'s Gazette, Issue 83, Vol. 8, No. 5, May 1990, p 14