< Return to Projects
MROM64
MROM64 is a replacement for the kernal and character ROMs in a commodore 64, initially targeting the ASSY 250469 motherboard variant (typically found in the commodore 64C) with the MROM64C board.
A different PCB will be made in the future for the older "long" motherboards.
About the project
In a Commodore 64 machine exist three read-only memories:
- the kernal (containing the system kernal)
- the character set (containing the bitmaps for all text characters and symbols)
- and the BASIC ROM (containing the BASIC interpreter, keywords, functions and more)
In most motherboard versions, these memories are all contained in a single ROM chip each, except for the 250469 "short" board, which combines the kernal and BASIC ROMs into a single chip and
therefore has only two ROM chips - the character set and kernal/BASIC. It is desirable to replace the kernal in a C64 to benefit from features implemented in custom kernals and customise screen colours,
and to change the screen font by replacing the character ROM.
This project was inspired by Henning Liebenau's reprom64 project which uses a single ROM to replace the original two ROM chips and a
GAL16V8 programmable logic part to handle the banking.
Likewise, MROM64 uses a single ROM chip and banking logic mounted on a PCB that interfaces with the sockets of both ROM chips being replaced. There are some differences though:
- I use a higher-capacity ROM chip - the 1 Megabit "010" type (e.g. W27C010, 39SF010) - which gave the project its name (M from mega)
- The MROM64 can contain more kernal and character ROMs than the reprom64
- Banking logic is implemented in discrete 74-series logic chips as opposed to a single programmable logic device
With the 010 type ROM, the MROM64 can contain 16 character ROMs and 8 kernal ROMs (with the exception of the MROM64C, where one kernal ROM slot must contain a BASIC ROM, as a consequence of the
250469 motherboard's design).
The active font and kernal ROM can be selected using the pin header, either using jumper bridges or with a digital logic or microcontroller solution.
How it works
See this page for an explanation of how the MROM64 works
MROM64 PCB variants
Several boards for this project exist. See board pages for build instructions, schematics and more.
Compare them in the list below:
MROM64C
View board page
- For Assy. 250469 board
- 16 fonts, 7 kernals and 1 BASIC ROM all contained in one "010" type ROM
MROM64C-SB
View board page
- For Assy. 250469 board
- "Separate BASIC"
- 16 fonts and 8 kernals in one "010" type ROM, with a separate ROM chip required for BASIC
Page created: 20NOV2025
Last modified: 18DEC2025