Tim Holyoake Turns Your Raspberry Pi Pico, Pico 2 Into a Classic Sharp MZ-700 Microcomputer

What started as a pure Sharp MZ-80K emulator now supports the MZ-80A and color MZ-700.

Gareth Halfacree
5 days agoRetro Tech

Vintage computing enthusiast Tim Holyoake has taught the Raspberry Pi Pico, Raspberry Pi Pico 2, and other RP2040/RP2350-based development boards a new trick: emulating the Sharp MZ-700 microcomputer.

"When I first started thinking about writing an emulator for the Sharp MZ-80K in September 2024, I decided that I was only going to attempt that model and no more," Holyoake recalls of the project's beginnings. "15 months later (and a surprising RetroChallenge 2024/10 win) and here I am with an MZ-80A and MZ-700 emulator as well. Never say never, I suppose. The code is scruffier than I’d like it to be, but it does seem to work reasonably well."

Holyoake's original focus for the emulation project was to deliver performant and accurate emulation of the Sharp MZ-80K, an all-in-one microcomputer launched in 1978 and built around the eight-bit Zilog Z80. While the MZ-80K was a popular machine in Japan and Europe, though, 1982's MZ-700 was considered a major upgrade thanks to the addition of color graphics and the removal of the built-in display in order to reduce its price.

With the MZ-700 promising near-complete compatibility with the earlier MZ-80K, Holyoake decided to put the effort in to expand the emulator accordingly — taking considerably less than the four years it took Sharp to add the same functionality in hardware. "The VGA module needed to be upgraded to cope with the eight colors available," Holyoake notes. "This was easier to achieve than I initially thought. Sound […] took a while to figure out."

"I took the opportunity to clean up some pieces of code that also affect the MZ-80K and MZ-80A emulation, so I needed to put the emulator through regression testing and benchmarking," Holyoake adds. "With the exception of the RC2014 VGA boards running as a MZ-80K2, all of the MZ variants are within +/-0.32% of the run time on a real machine when tested with a BASIC program that finds the primes up to 7,500."

More information is available on Holyoake's website, while the source code and binary releases are available on GitHub under the permissive MIT license; users will need a Raspberry Pi RP2040 or RP2350 development board with VGA output and microSD Card support, a microSD Card loaded with Sharp MZ-compatible software, and a USB keyboard and VGA-compatible display.

Gareth Halfacree
Freelance journalist, technical author, hacker, tinkerer, erstwhile sysadmin. For hire: freelance@halfacree.co.uk.
Latest articles
Sponsored articles
Related articles
Latest articles
Read more
Related articles