Virtual H89 Computer Memory
The JAR defaults to a set of ROM images, but those may be overridden.
The defaults are the 444-79 "floppy" (H17) ROM and the
MMS-84B "monitor" ROM.
RAM add-on devices are installed in slots P501, P502, P503 (upper connectors,
with corresponding lower connectors).
If any memory add-on is installed, the core system is assumed to be 48K
plus add-on (regardless of any other settings).
If no memory add-on is installed (the "H88" configuration),
then the following properties determine the memory configuration:
- jj501, jj502
- These jumpers indicate the amount of memory installed, according to
the following table:
jj502 | jj501 | Memory |
0 | 0 | 16K |
0 | 1 | 32K |
1 | 0 | 48K |
1 | 1 | invalid (48K) |
Note that most OSes require more than 16K. The setting of jj502=1 and jj501=1
would normally indicate 64K, but since no memory add-on was specified that
is not a valid configuration.
If a jumper property is not specified, it is assumed to be "0".
- u517
- Value may be "org0" to indicate the presence of an "Org-0" modification
with accompanying replacement memory decoder PROM.
This permits booting CP/M (and other programs requiring RAM at 0000).
The following properties configure RAM and ROM:
- floppy_rom
- Selects the file to use for the H17 "floppy" ROM image (2K).
While most MMS configurations do not use this, it is still required
for proper operation of the monitor. Default is the built-in 444-79 image.
- monitor_rom
- Selects the file to use for the "monitor" ROM image (2K or 4K).
Default for H89 is the built-in MMS-84B image.
Default for H8: with Z80 is the built-in PAM37 image, else XCON8.
- slot_p501, slot_p502, slot_p503
- Specifies the memory add-on card installed.
Only one memory add-on can be specified, but the actual slot number
does not matter. Recognized values are:
- MMS77311, MMS77312, WH-88-16
- A 16K RAM add-on, providing 64K total RAM. ROM is enabled in the
low 8K after RESET, and setting GPIO bit 5 to "1" will disable ROM and allow
RAM to be read for the lower 8K. Writes to the lower 8K always go to RAM.
NOTE: currently it is not possible to only install the "ORG 0" mod.
The only way to run less than 64K RAM is without "ORG 0" capability.
- MMS77318
- The MMS 128K add-on RAM. Provides 8 "banks" with various configurations.
Banks 0 and 1 (A and B) are the same as the two modes for 64K add-ons.
See MMS documentation.
Similar to other memory add-ons, writes to the lower 8K always go to RAM.
For the Dump Page debug command, banks are numbered according to mappings,
from MMS documentation map "A" is 0 and so on with map "H" being 7.
- X2H8
- The X/2-H8 Trionyx banked-memory adapter, plus 256K of RAM addressed
as 16K pages. Memory pages are locked into their relative 16K page.
Depends on standard H89 "ORG0" hardware.
For the Dump Page debug command, banks are numbered according to memory address
bits 16 and 17.
- H8-512K
- Norberto's 512K addon for the H8 (and eventually H89).
This memory is organized as 16K pages but allows arbitrary mapping
of memory pages to CPU address space pages.
It also supports mapping a different page for reading than for writing,
which enables direct bank-to-bank copy operations.
This board is bypassed (forced to 64K mode) unless bit 7 of the last MMU byte output is "1".
For the Dump Page debug command, banks are numbered according to memory address
bits 16, 17, and 18.