ZX80 / ZX81 Emulator for the Raspberry Pi Pico

Emulator and emulator development specific topics
Exile
Posts: 45
Joined: Tue Jan 03, 2023 9:50 pm

Re: ZX80 / ZX81 Emulator for the Raspberry Pi Pico

Post by Exile »

Either of the Olimex uf2 files will work.

picozx81_olimexpc.uf2 will provide sound over the 3.5mm audio connection
picozx81_olimexpc_hdmi_sound.uf2 will provide sound over the hdmi cable

There was an issue with the original Olimex firmware, where stereo audio over the 3.5mm audio connection was not possible with a display, as the PWM clock for the left audio channel was shared by the pin used for the DVI clock. This was fixed in later releases of picozx81 by using a PIO state machine to generate the DVI clock.
zx4ever
Posts: 18
Joined: Wed Jun 27, 2018 10:58 pm

Re: ZX80 / ZX81 Emulator for the Raspberry Pi Pico

Post by zx4ever »

Exile wrote: Tue Mar 19, 2024 7:19 pm Either of the Olimex uf2 files will work.

picozx81_olimexpc.uf2 will provide sound over the 3.5mm audio connection
picozx81_olimexpc_hdmi_sound.uf2 will provide sound over the hdmi cable

There was an issue with the original Olimex firmware, where stereo audio over the 3.5mm audio connection was not possible with a display, as the PWM clock for the left audio channel was shared by the pin used for the DVI clock. This was fixed in later releases of picozx81 by using a PIO state machine to generate the DVI clock.
Thanks.
In the meantime, I tried a friend's hybrid monitor/TV with an HDMI input, but there is still no image.
I decided to solder anyway, just to be sure, do I need to solder this two tabs, marked in the picture ?
Image
Exile
Posts: 45
Joined: Tue Jan 03, 2023 9:50 pm

Re: ZX80 / ZX81 Emulator for the Raspberry Pi Pico

Post by Exile »

Yes, the photo shows the two pads that need to be joined.
zx4ever
Posts: 18
Joined: Wed Jun 27, 2018 10:58 pm

Re: ZX80 / ZX81 Emulator for the Raspberry Pi Pico

Post by zx4ever »

Exile wrote: Wed Mar 20, 2024 8:23 am Yes, the photo shows the two pads that need to be joined.
Last night I managed to solder these pins and it finally worked !
There is one minor issue left, but first a few words about the emulator itself.
He is simply awesome and works flawlessly. :)
Very easy to use, all the software I tried works perfectly including hdmi sound.
It's very easy to configure and I especially like the video sync at real 50.6Hz for smooth scrolling.
I really must congratulate you on this great job. :)
First, about issue i mentioned.
When I first ran the emulator through the Olimex board, everything worked great, but after I turned the device off and on, there was no signal again.
It turned out that I had to physically disconnect hdmi cable from the Olimex board when it was powered off, connect it again and after powered on, I got the picture.
Interestingly, reconnecting the hdmi cable while the Olimex is still powered on, does not solve the problem.
This is a strange side effect and its not related to the emulator itself, but it happens always with any software I flashed.
I don't know if there is a solution for this or why it happens, but for some reason only reconnecting the hdmi cable while board is off, fixes this.
So far I can be satisfied that software working well, but it seems that Olimex and my TV, for some reasons are not a happy couple.
I'm no hardware expert, but if anyone knows what would be causing this behavior, I'd love to hear it.
Ofc, it's not a critical problem, but it's certainly annoying.
Just a few more questions about the emulator.
Is it possible to use a video output other than VGA/HDMI, like a simple composite out, somehow?
Also, is there a possibility to get Chroma color support for the remaining supported boards, including this one?
For now, I can only say that its a great pleasure to use this emulator and honestly, I have not seen anything better not only on Pico, but also on some stronger platforms.
Too long post, sorry for that... ;)
Exile
Posts: 45
Joined: Tue Jan 03, 2023 9:50 pm

Re: ZX80 / ZX81 Emulator for the Raspberry Pi Pico

Post by Exile »

Thank you for the feedback, I appreciate it :-)

Sometimes there are options within the TV set-up that can help with re detection of HDMI devices.It may be related to how the TV does hot plug detection through HDMI pin 19. There are some sites that describe workaround for this by blocking connection of pin 19, but I am not an expert in this area and have never tried such a fix. What make of TV has issues with detecting the pico please?

With respect to your questions:

1) Composite
There are no pre-built boards that I know of for the Pico that support composite out. However a veroboard solution could be made as an add-on for the Cytron Maker board. Colour composite output is surprisingly difficult on the Pico. Currently I'm focusing on VGA, HDMI and LCD.

2) HDMI Chroma support
There is better news on Chroma support. Up to now the HDMI support in picozx81 has been monochrome (including a monochrome keyboard image). I am working on a colour HDMI + sound solution that will support Chroma emulation.
zx4ever
Posts: 18
Joined: Wed Jun 27, 2018 10:58 pm

Re: ZX80 / ZX81 Emulator for the Raspberry Pi Pico

Post by zx4ever »

Thanks @Exile for your reply, helpful as always.
I'll try to find out more about that HDMI hotplug fix, but now I have a place to start.
Honestly, I don't know what to say more about that HDMI detection issue, but I can try to do it more precisely.
Basically, if I leave the hdmi cable permanently connected to the Olimex board, the next time I turn it on, I get no signal again.
The only workaround is to disconnect the hdmi cable from the board and reconnect it, before each new session with Pico and this board.
Its important to say again, that this is not related to your emulator or any other software, this is obviously issue between my LCD TV and the Olimex board.
I've had this TV for a long time, connected various devices via the hdmi inputs, but none of them behaved like this.
btw, the TV model is Samsung UE32F5000AW 32".
Exile
Posts: 45
Joined: Tue Jan 03, 2023 9:50 pm

Re: ZX80 / ZX81 Emulator for the Raspberry Pi Pico

Post by Exile »

There is a new release for picozx81 at: https://github.com/ikjordan/picozx81/re ... tag/v1.0.4

This release adds the following, compared to the last release made in November:

+ Colour display emulating Chroma 81 and Chroma 80 for all board types, including HDMI
+ General support for ILI9341 and ST7789 320x240 LCDs on the Cytron Maker Pi Pico board
+ VGA RGB222 with CSYNC on the Cytron Maker Pi Pico board
+ Read support for the .p81 file format
+ Chroma and ARX Examples
+ Updated Readme with more images and description
Post Reply