Pravetz 8D - New discoveries

This is the right place to discuss on how to implement hardware vsync, adding a VIA or AY chipset, puting multiple roms, or how to design a new flash expansion card.
User avatar
Sodiumlightbaby
Squad Leader
Posts: 818
Joined: Thu Feb 22, 2024 11:38 am

Pravetz 8D - New discoveries

Post by Sodiumlightbaby »

After the Bulgarian Oric was put in the spotlight by Adrian of Adrians Digital Basement, the topic of LOCI compatibility with the dual ROM machine came up. That became a deeper and more facinating hole than I expected. Buckle up, we're diving into the Beige Beauty - the Pravetz 8D.

On the Oric expansion port there is a signal input to the machine called ROMDIS. It is for disabling the Oric basic ROM so that the expansion device can run its initalisation ROM at startup. It was probably just a little short sighted based on the Microdisc only needing 8kB of ROM address space - in the Tangerine Oric design, the expansion port signal ROMDIS is only routed to the high 8kB ROM chip. Most Orics (I believe) did however ship with only one 16kB ROM chip, so on these machines the ROMDIS signal disables the whole onboard ROM. This full-ROM disabling capability has been important for the modern storage exapansion devices like Erebus and LOCI to work correctly.

The commonly accepted solutions for making dual-ROM machines compatible have been to either convert it to single ROM machine (the motherboard was designed with both ROM chips sizes in mind), or route the ROMDIS signal to the lower ROM chip.

But then there is the Pravetz 8D. While in most cases a straight forward enhanced clone of the Atmos, the LOCI compatibility reports have been "variable" to say it mildly. Dual-ROM seems to be more common on the Pravetz, so I believed it should be the normal issue with the ROMDIS signal, but the reports were odd enough and not as clear case as I would have thought that I decided to get hold of a machine myself to do some testing. When the machine arrived, something else was high priority and the Pravetz was shelved for later.

Later became this week where I found myself with a little unease - I had just recommended doing the ROMDIS signal mod on a dual ROM machine - but I had not tried it myself and started remembering the old compatibility issues. Chatting with @iss about ROM versions and to double check the mod, he confirmed the mod was as normal but was still having issues LOCI. Better safe than sorry, I got the Pravetz 8D out and had the mod done in a few minutes - including peeling off the Bulgarian stamped tar(?) warrenty void seals on two corner screws. But it failed just like iss had said. LOCI would not boot with the modded machine. It behaved just like without the mod. However, if I pulled out the lower ROM chip, the machine would boot LOCI but it wasn't quite stable. Problem belatedly reproduced :D

pravetz_8d_dual_roms.jpg
The root cause frankly shocked me: Pravetz 8D mask ROM chips CM7864P-10 and CM7864P-09 DO NOT implement the additonal chip-select on pin 27 the Oric relies on. There is nothing there - complete open circuit(!) We know this has been an issue when sourcing EPROMs for the job, but for application specific ROM chips? :shock: :shock:

Quite a lot of chat with @iss on this you can imagine, with shock after shock as I first found it on the low size ROM (-09) assuming that explained why the ROMDIS mod didn't work, but then @iss found the high ROM was also broken and my mind blew again. And then he serves up this amazing piece of info he managed to gather:
received one more confirmation from a guy that used to be familiar with the production process - yes, the factory programed mask PROMs were without internal bonds on pins.
So there we are - the factory standard Pravetz 8D design does not support _any_ expansion devices with their own ROM. ROMDIS does not work at all on these machines with Pravetz original dual ROM chips. "But they do!" I hear you scream :lol: Yes, or else this would have been uncovered earlier.

Here is what I believe is happening: The Pravetz ROM is always on (for the ROM addresses) so when an expansion device also wants to use the bus, they fight (both put their own data on the bus for the CPU to read) and the Pravetz ROM loses almost always. Expansions like the Microdrive and others that follow the same design template use dedicated bus transcievers like 74LS245 to implement the tri-state data bus connection. Those are much stronger than what these ROM chips are able to drive.

(Me speculating) Another factor why this was not detected before could be that there was no official floppy solution for the Pravetz 8D, and the most common Bulgarian 3rd party floppy solution, was designed to my knowledge without using ROMSEL but instead maps in the tiny floppy ROM in the IO space in 0x300. So it is possible that ROMSEL based expansions were rarely used with the Pravetz 8D, and when they were used they likely still just worked. Maybe some were flaky but then it could be easily attributed to the cable or the expansion device. Try another at that might work ("works for me").

But what about LOCI? It has even stronger more modern bus drivers - why does it not work then? Well, when working with those strong bus drivers I was worried about those and signal reflections on the data bus cable so I added in-line 100 Ohm termination resistors on LOCI side to improve the cable signal environment. It worked great for that and is one of the reasons we don't have too much cable trouble with LOCI, but it means it becomes much harder to win a bus fight - no matter how much you try to scream throught the resistors, the ROM is electrically right there, whispering its sweet words straight in the ear of the CPU.
loci_bus_driver_terminated.jpg
How can we fix this? Switching to a compatible single 16kB EPROM is still an option, but that might not work for everybody. @iss and I started looking at options and tried to see if it would be possible to integrate ROMDIS in the decode logic. On dual-ROM Orics, IC11 a 74LS00 quad NAND gate, is used to combine the ROM chip-select signal from the ULA (always active when CPU address is top 16kB) and address bit 13 to make the two chip-selects for IC09(high) and IC10(low) ROM chips. Unfortunately we found no easy mod using the existing NAND chip, so went a different route.

Through some quick virtual collaboration, we cooked up 8D-Fixer (@iss did the work with some input and comments from me :lol: ) This is a IC11 replacment that correctly integrates ROMDIS into the chip-select signal calculation in dual ROM systems. It may look like a 74HCT138 3-input decoder chip on a routing PCB, but don't be fooled - this is very advanced stuff! :lol:
8d-fixer.jpg

@iss kicked off a production run so we'll not too far in the future have the confirmation we've cracked it, but this was too good of a story to wait with till then.

And that was just my part of the Pravetz discovery bonanza. On top of that it has also been discovered that the Pravetz 8D PAL PROM TBP24S10 has all bits inverted compared to the Oric PROM. Why we don't know yet (well, not I at least). And last but not least, a difference between Pravetz 8D machines with C/L button and F1 button has been found - the C/L keyboard matrix actually switches language (Ctrl-T), while F1 machines work like Atmos does. Hopefully others can elaborate more on these, I've rabled on for far too long already :lol:
You do not have the required permissions to view the files attached to this post.
User avatar
Chema
Game master
Posts: 3229
Joined: Tue Jan 17, 2006 10:55 am
Location: Gijón, SPAIN
Contact:

Re: Pravetz 8D - New discoveries

Post by Chema »

What an interesting post! Congratulations to both of you!
User avatar
Dbug
Site Admin
Posts: 5263
Joined: Fri Jan 06, 2006 10:00 pm
Location: Oslo, Norway
Contact:

Re: Pravetz 8D - New discoveries

Post by Dbug »

Indeed interesting, and explains why my Pravetz 8D worked fine with my Microdisc but not with LOCI :)
User avatar
iss
Wing Commander
Posts: 1925
Joined: Sat Apr 03, 2010 5:43 pm
Location: Bulgaria
Contact:

Re: Pravetz 8D - New discoveries

Post by iss »

Great story and amazingly told by @Sodiumlightbaby ! :D

At the moment PCBs are ready and assembly is started.
20251018_125929.jpg

It's good also that this can be useful not only for 8D but for many Orics with UV EPROMS and experiments like dual-ROM etc.

I will post here more interesting details about the other discoveries (PAL/UHF and keyboard) they are related to Oric too! :D
You do not have the required permissions to view the files attached to this post.
User avatar
coco.oric
Squad Leader
Posts: 785
Joined: Tue Aug 11, 2009 9:50 am
Location: North of France
Contact:

Re: Pravetz 8D - New discoveries

Post by coco.oric »

An impressive improvement for Pravetz owners. Congrats
coco.oric as DidierV, CEO Member
Historic owner of Oric, Apple II, Atari ST, Amiga
User avatar
iss
Wing Commander
Posts: 1925
Joined: Sat Apr 03, 2010 5:43 pm
Location: Bulgaria
Contact:

Re: Pravetz 8D - New discoveries

Post by iss »

Some pics of the result and the best thing - 8D-fixer works! :D
1.jpg
2.jpg
3.jpg
You do not have the required permissions to view the files attached to this post.
Post Reply