ZX Evolution a.k.a Pentevo a.k.a ZX-EVO

For many years, I am a keen user of ZX Spetrum+ 128k (and gray +2) with DivIDE and esxDos. This year I have upgraded to the new model: ZX Evolution (I have also backed the second KickStarter for ZX Spectrum NEXT, so another upgrade is on its way).

zx-evo-mainboard.jpg|thumb-zx-evo-mainboard.jpg|Mainboard.

Why did I choose ZX-EVO? It has the original Zilog CPU (small IC Z84C0020AEG in the corner of the board running on 3.5, 7, or 14 MHz), 4096 kB of RAM, big "ULA" close to the center – Altera FPGA. It has also the original AY-3-8910 chip, floppy driver, SD-Card and IDE hard drive support, ZXBUS extension slots. Personally, I prefer this combination of old and new, more than pure FPGA implemented machines, because it has that Speccy-like spirit (however, everything-in-FPGA machines can be reconfigured into different computers which is advantage for somebody else). It is compatible with the original Spectrum and also the Russian clone Pentagon. I have read a lot about the Russian scene around Pentagon, but I have never intended to get one, especially if many of Pentagon SW is being also ported to original Spectrums. ZX-EVO is also the successor of probably the best clone Sprinter produced until 2004 by Russian company PeterPlus. However, the late 90s/early 2000s was not a good time for alternative platforms and too early for retro/hobby computers hype (luckily, being into retro computing at these times brought me many interesting machines for free to my collection).

The big advantage is a quite big community around ZX-EVO and I have read a few enthusiastic reviews. Of course, this community is mainly from eastern European countries, so let the Google Translator be your friend. The ZX-EVO is produced for more than 10 years, already has a third revision and there is also alternative firmware with enhanced graphic modes called TS-Conf and a new operating system NedoOS.

Hardcore Speccy users will aside from floppy driver enjoy also TAPE IN. I believe there is still some missing SW that needs to be saved from floppies and tapes. TAPE IN may be also useful to explore games with some special effects in loader in TZX archives.

Getting my own ZX-EVO

I've got mine directly from Russia, from tetroid.nedopc.com. Vitaliy/Tetroid who is the producer communicates in English. I have sent money as Paypal Friend, and it took 1 week to process the order and less than 3 weeks to arrive from Novosibirsk/Russia to Nova Scotia/Canada.

zx-evo-package.jpg|thumb-zx-evo-package.jpg|Order unpacked.

I have ordered the mainboard and two extension cards. The General Sound compatible sound card NeoGS, which can play MP3, modules and it is supported in many games and demos. The card itself has another SD-Card slot which can be used as the second storage device. The second card is the ZXUSBNET network interface which has support in NedoOS operating system. To be able to use composite video there is also an extension board with RGB to CVBS/S-video converter.

The parcel with components wrapped in antistatic bags was very well packaged and survived travel across the globe without any scarves. As the bonus, there were also keyboard stickers and rear cover of peripherals for PC case.

User experience

The assembly itself is very straightforward. I have used 400W ATX PSU and plugged cards, there is a link between the board and the sound card so all sounds are coming from one jack. I have used a 16GB SDHC micro card via an SD-Card adapter and one big FAT32 partition. The computer booted on the first try and there is a nice menu that allows you to browse files, load *.TAP, snapshots, and TR-DOS images. A disadvantage is, that this menu (EVO Reset Service) is accessible only after reset, so I think it is not possible for example to load ArtStudio and then some SCREEN$ from different *.TAP (which is possible in esxDOS via NMI menu).

The web page about ZX-EVO also emphasized that it is necessary to use a VGA display that supports 50 Hz mode (if you do not want RGB/CVBS/S-Video). However newer versions of EVO Reset Service are supporting different timing modes: 48k VGA, 128k VGA, PENT VGA, 60Hz VGA. You can cycle between TV/Scan-doubler and these modes by pressing Scroll Lock. The timing is important for having pixel-perfect output compatibility with different models. As a benchmark the Shock Megademo part II is often used, it has a multicolor scroll in paper and border. ZX-EVO will display this without any issue, but you need to select the right timing. I have found only one LCD monitor (ACER AL1716) having issues and be able to display just 60Hz mode. I am usually using cute 8" Sony PVM CRT as my main screen, but the latest programs are often using better graphic modes with higher resolution or tiny fonts and it made me to switch to 19" analog VGA CRT.

I did not find any issue with software incompatibility or troubles like picture "raining" seen on +2As or +3s. I have noticed the sound output is also outstanding (the original AY output on good old Spectrums sucks and contains bad digital noise if you do not build your own ABC/ACB stereo output).

Initially, I have used some combo keyboard PS/2-USB and some keys were getting "stuck", of course not mechanically. I have switched to pure PS/2 keyboard and this has issue disappeared. There is keyboard testing tool in Evo Reset Service, so I believe this may be quite a common problem.

Setting Real-Time Clock

Time settings are quite tricky and not very well explained in the manual. You need to modify bytes directly in CMOS memory. It is accessible from the menu in R. Service  → M. Edit CMOS  → Edit bytes  → X. Exit (and save). Cursor keys are moving along memory cells and values are stored as BCD (Binary Coded Decimals), so the value 17 means 17 hours (and note 0x17 = 23). CMOS editor shows the meaning of addresses.

I had set 17:46:56 and 10. January/01. 21:

zx-evo-cmos-clock-time.jpg

Go to sleep stupid user

Some of my early user operations corrupted CMOS memory (I think, I have tried stupidly to boot file for a different clone). After that, it was not possible to boot from TRD and SCL images. It has always ended with a "DOS MEDITATE!" error and when you press Break, the system will send you to sleep (funny if you have only time to play with the machine around 1 am).

I have reset CMOS memory via the menu in EVO Reset Service and it solved the issue.

TS-Conf firmware update

TS-Configuration is different firmware developed by Ukrainian coder TSLabs. It supports enhanced graphics modes and hardware tiles and sprites, check specification on GitHub. I have installed "ZXEvoTS&BASE 16.06.2020 beta", which supports switching between BaseConfing and TS-Config. However, it contains older BaseConfing without 60Hz VGA support. TS-Config does not provide a user menu but it boots into Wild Commander, the dual-panel file manager which has many plugins as a music player, image viewers, etc., and of course also for loading TAPs and disk images.

There are already few games ported from Sega Master Systems and they look very nice. For demos, check the ZX Enhanced platform on pouet.net and TS-Config on Retroscene.org.

The FPGA firmware flashing requires to use of hard and soft reset buttons. I have not chosen any ITX case for the computers, so I have soldered mine buttons and added also Power-On LED and IDE LED (this one is not necessary, because it displays only IDE operations).

Warning: I have read complaints about bricking the ZX-EVO by unsuccessful firmware upgrade by one guy. Don't be like that guy :)

  1. Copy Wild Commander to the root of the SD Card. Directory WC will be in root and also file boot.$c.
    Link: wc.zip
  2. Controller firmware zxevo_fw.bin (it contains FPGA guts). Copy this file to the root of SD card, it contains TS-Conf+Baseconf.
    Link:zxevo_fw.bin

    Flashing FPGA: Hold down the SOFT RESET switch (J6) and press HARD RESET (J9) momentarily while the soft reset is still down, the power LED will start flashing. Firmware upload is signaled by speed flashing. Beeps will signalize errors. (There is also an alternative way via serial port and sending the file in XMODEM protocol.) The computer will reset automatically once the firmware upgrade is done, if it is not resetting and LED is still flashing there was some problem.

  3. Flash TS BIOS (ts-bios.rom), can be flashed from Baseconf menu R. Service → U. Update custom ROM.
    Link:ts-bios.rom
  4. After the boot Select NVRAM options (this boot menu can be called by RShift+F2) and set the boot device as SD-Z Controller and set "Reset to" as BD boot.$c.

Done, the F12 still works as reset, and with LShift+F2 you can switch between EVO Reset Service and Wild Commander.

zx-evo-desktop.jpg|thumb-zx-evo-desktop.jpg|Sonic The Hedgehog ported to ZX EVO with TS-Conf.

There is also additional support for Wifi over ESP8266 (Zifi) and more colors in IDE VideoDAC in TS-Conf, but I did not try these yet.

NedoOS

NedoOS is a new multitasking operating system, it is being actively developed since 2018. It has a command prompt, supports VT100 terminal output, dual-panel navigator (NedoVigator), and supports networking. It has few network utilities for web browsing and HTTP downloading, IRC client and FTP, TELNET (client, servers). I will cover it in a different article.

I have got excited about this OS and translated its basic user guide: nedoos_en.md.

Note: I strongly suggest updating to the latest EVO Reset Service, with preinstalled v0.58.09, the boot from the SD card ended with errors like "Number too High" and "Out of Memory". The update to the zxevo.rom v0.58.16 solved the booting problem.

Additional links