ZX80 / ZX81 Emulator for the Raspberry Pi Pico

Emulator and emulator development specific topics
User avatar
Paul
Posts: 1496
Joined: Thu May 27, 2010 8:15 am
Location: Germanys west end

Re: ZX80 / ZX81 Emulator for the Raspberry Pi Pico

Post by Paul »

There are also 3.2 inch 320x240 spi modules
In theory, there is no difference between theory and practice. But, in practice, there is.
Exile
Posts: 31
Joined: Tue Jan 03, 2023 9:50 pm

Re: ZX80 / ZX81 Emulator for the Raspberry Pi Pico

Post by Exile »

I've now measured the frame rate on my 240x240 LCD and it looks like 50Hz (but not 60Hz) should just be possible on a similar 320 by 240 display.

I've decided to order a 2.8" 320 by 240 SPI display:
https://www.waveshare.com/wiki/Pico-ResTouch-LCD-2.8
https://thepihut.com/products/2-8-touch ... co-320x240

This uses a similar SPI controller to the one I've been testing with and also has an SD Card built in. In theory it should be possible to create a self contained display and storage solution that performs like a UK / European ZX8x. There will be no sound, but I know some do not see that as a deal breaker. I'm planning to ignore the touch capability of the display for now.

As the frame rate will be effectively software controlled, it will be interesting to see how the frame rate effects that some ZX81 programs introduce appear.

I've got a few other projects on the go at the moment though, so it may take me a while to post the results.
Exile
Posts: 31
Joined: Tue Jan 03, 2023 9:50 pm

Re: ZX80 / ZX81 Emulator for the Raspberry Pi Pico

Post by Exile »

I've now implemented support for the https://www.waveshare.com/wiki/Pico-ResTouch-LCD-2.8.

The screen resolution is 320x240. I've set the LCD up to receive RGB444, so that it can work at a sustained 60 Hz refresh rate. The refresh rate can also be configured for 50 Hz and 50.65 Hz. The Waveshare board has an SD Card, and the Pico plugs straight into the back of the board, so it is a very compact solution.

A couple of images can be seen below. The first shows Hi-Res Galaxians. It can be controlled by either the joystick or the USB keyboard (made from a 3d printed ZX81 case) that are also in the shot. The second shows MaxDemo (just) filling the screen, although in retrospect the picture makes it look like the screen has cracked :)

As ever, more information, source code and executables etc can be found at: https://github.com/ikjordan/picozx81

Image
Attachments
lcd_system.jpg
lcd.jpg
zx4ever
Posts: 12
Joined: Wed Jun 27, 2018 10:58 pm

Re: ZX80 / ZX81 Emulator for the Raspberry Pi Pico

Post by zx4ever »

Hi,
Can we use Pico W for this project ?
I read that some GPIO pins have a different function.
Also, is there a difference in boot time between Pico H and Pico W ?
Exile
Posts: 31
Joined: Tue Jan 03, 2023 9:50 pm

Re: ZX80 / ZX81 Emulator for the Raspberry Pi Pico

Post by Exile »

Yes, Pico W is supported, although the emulator does not use the WiFi functionality. @Paul kindly gave me a Picomite board to work with, which had a Pico W installed.

The boot time for the Pico H or W is very short, a few milliseconds. The time to get to the "K" prompt is governed by the emulated ZX81 ROM stepping through and checking its RAM - just like the real thing :-)
Post Reply