Skip to content

Basic RAM Expansion

This is not-smart ("Dumb") RAM. It can support up to 64MB of RAM (which is still a lot) across up to 256 pages. It has no safety checks on available banks, no IRQs on errors, etc. It's setup this way to make it easy to bolt SRAM on the bus without having a full memory controller, but it also is expected to be faster (running at bus speed).

Page Select

There are only 1 or 2 registers in the command space, which select the page.

  • 0x40000: Page Select Low
  • 0x40001: Page Select High

If a basic RAM card, for some reason, wants to support tons of pages, the application would need to set both low and high page selects under certain scenarios. On the Basic RAM card, these are uncorrelated writes - changing the low or high register will flip the bank to the resulting value of both. This is to simplify decoding and is a pretty extreme edge case anyway (who can afford >64MB of SRAM!?)