Machina Speculatrix

Machina Speculatrix

Using flash memory as a homebrew computer ROM

Can a flash chip replace the ROM in a homebrew computer? Yes. But can I do it? We’ll find out.

Machina Speculatrix
Nov 16, 2025
∙ Paid
A close-up photograph of a square computer chip in a socket on a yellow printed circuit board.

So here’s the idea. The process of burning new code into an EEPROM can be tedious. When you’re developing the ROM code for a homebrew microcomputer, you find yourself doing this over and over.

It takes time and effort. It eventually wears out the EEPROM and as it involves constantly removing and reinserting the chip, there’s the ever-present danger of (even with a ZIF socket) or inserting the chip backwards

It would be so much easier to have the software toolchain simply upload the new firmware to the computer directly. After all, that’s typically the workflow with microcontrollers such as the Arduino.

Enter flash

How do microcontrollers do this? The answer is that the program code gets stored in flash memory. Like a ROM or EEPROM, this is non-volatile, so the contents remain intact even when the device is powered down.

So the answer is simple. You just replace the EEPROM with a flash chip and you’re good to go. I’ve encountered homebrew machines that have done this and mightily envied them. There’s just one problem.

See above where I used the word ‘simple’? Well, maybe it is if you know how to program flash chips. I didn’t and so I decided to find out, and share my experience with you.

User's avatar

Continue reading this post for free, courtesy of Machina Speculatrix.

Or purchase a paid subscription.
© 2026 Steve Mansfield-Devine · Privacy ∙ Terms ∙ Collection notice
Start your SubstackGet the app
Substack is the home for great culture