Rombo Romboard reverse engineering troubleshooting help required

Started by The Equalizor, 02:02, 03 March 18

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

The Equalizor

Hi All,


I've been reverse engineering the Rombo ROMboard and have a full schematic and some PCBs made, but it doesn't work, on boot the CPC either remains Black screen or has weird lines going up it


I'd really appreciate someone with more knowledge just to give the schematic the once over and seeing if they can see anything obvious.


Thanks in advance :-)


Rob

rpalmer

have you checked the reversed engineered board schematic with the original board to see if each connection is the same?

If they are the same then are the components used the same as the original even for the tolerances?

rpalmer

IanS

The schematics match my notes I had on the Rombo schemtic. (As far as they go, my notes are incomplete)

What debugging tools do you have (multimeter, scope, logic analyzer?).

Does it give the black screen with no roms and all the switches turned off or only when roms are inserted/enabled?

Have you checked the power supply to each chip.

Can you post some pictures, someone might spot something obvious.

Bryce

I don't see anything obviously wrong in the schematic. The first thing to do would be to check that all ICs are getting 5V. After that I'd monitor pin 43 of the expansion port to see if the device is permanently disabling the internal ROM.

Bryce.

rpalmer

I have re-assessed the schematic and see a flaw.
If you enable the rom board with ROM 0 then the internal ROM (both upper/lower) is disabled with only a 16K ROM in the ROM board.
Not such a good design on start up when ROM 0 needs to be 32K.

You need to have for ROM 0 an Upper / Lower 16K select on the 32K ROM based on A15 (if high then Upper ROM else lower ROM). The is achieved by simply connecting A15 to ROM A14.

rpalmer

IanS

Quote from: rpalmer on 11:14, 05 March 18
I have re-assessed the schematic and see a flaw.
If you enable the rom board with ROM 0 then the internal ROM (both upper/lower) is disabled with only a 16K ROM in the ROM board.
Not such a good design on start up when ROM 0 needs to be 32K.

You need to have for ROM 0 an Upper / Lower 16K select on the 32K ROM based on A15 (if high then Upper ROM else lower ROM). The is achieved by simply connecting A15 to ROM A14.

rpalmer
The roms are only enabled if A15 is high. A15 is fed into pin 1 of the 74hc00. Follow it back from pin3 of the expansion connector.

The Equalizor

I've solved the black screen problem and its a doozy. If you have a look at the schematic at the link between r9 and d1 there should be a little dot where it joins. There wasn't, so even though it looks connected it isn't. Connecting it fixes the black screen issue and allows the CPC to boot correctly, however it still doesn't work, I dont get any ROM sign-on.


I'll check the suggestions that could now be relevant - more comments welcome!


Cheers


Rob

rpalmer

Quote from: IanS on 16:19, 05 March 18
The roms are only enabled if A15 is high. A15 is fed into pin 1 of the 74hc00. Follow it back from pin3 of the expansion connector.

The schematic will force ROMEN (Pin 42) to be High when no ROM is selected and so the internal ROM is no longer selectable as there is now a clash of voltages. The clash comes from the Gate Array output of ROMEN and the ROM board setting of ROMEN (a potentially bad situation for the gate array). This will occur when the upper ROM 0 calls for a routine outside of the upper ROM and is not a problem if ROM 0 is 32k and both are handled via ROMDIS line only.

All external ROM boards need to only use Pin 43 (ROMDIS) to stop the internal ROM output from being seen. The gate array is not connected to the ROMDIS line so all should be okay if you set it high permanently when the ROM board is connected and the external 32K ROM 0 is inserted.

rpalmer

IanS

Quote from: rpalmer on 22:30, 05 March 18
The schematic will force ROMEN (Pin 42) to be High when no ROM is selected and so the internal ROM is no longer selectable as there is now a clash of voltages. The clash comes from the Gate Array output of ROMEN and the ROM board setting of ROMEN (a potentially bad situation for the gate array). This will occur when the upper ROM 0 calls for a routine outside of the upper ROM and is not a problem if ROM 0 is 32k and both are handled via ROMDIS line only.

All external ROM boards need to only use Pin 43 (ROMDIS) to stop the internal ROM output from being seen. The gate array is not connected to the ROMDIS line so all should be okay if you set it high permanently when the ROM board is connected and the external 32K ROM 0 is inserted.

rpalmer
ROMEN is an output from the CPC. It's only fed into the input of the 74hc27 and the CE of the roms, but the OE of the roms will only be selected when the appropriate rom is selected (and A15 is high).
Are we looking at the same schematic? Which output do you think is driving ROMEN?
Nobody is suggesting using 32K external roms (or at least I'm not), the Rombo rombox was never intended to support that use case.

rpalmer


The Equalizor

Okay, I think I know what this is.


It seems I have fallen victim to something called "the curse of the invisible power pins"
[/size]
[/size]Some Logic chips have "invisible" power pins meaning they don't show up on the schematic and you cant attach them to your nets, Altium is supposed to just do this automatically.

[/size]What Altium has done in this case is created a new VCC net for the 27 and 30 ICs and just joined them together without connecting them to the actual power nets.

[/size]Now I can be pretty sure my Reverse Engineer is sound I can start redoing the board, paying particular attention to the Power pics of the chips with Hidden Pins.

[/size]IanS, as ever, thank you for your help, Gerald too, I'm going to go and get this redone.

[/size]Cheers

[/size]Rob


Bryce

If I may re-quote myself:

Quote from: Bryce on 08:42, 05 March 18
The first thing to do would be to check that all ICs are getting 5V.

Bryce.

:)

Bryce.

P.s. Doesn't Altium have an Invoke command to make the hidden pins visible?

The Equalizor

Bryce,


I can barely use this damn program normally, let alone know about extra commands like that :-)


Regards


Rob

Bryce


The Equalizor


IanS

Quote from: The Equalizor on 12:05, 06 March 18
What Altium has done in this case is created a new VCC net for the 27 and 30 ICs and just joined them together without connecting them to the actual power nets.
So if you add some wire links does it all work ok now? Any pictures?, please.

LambdaMikel

Yes, pictures please!
I always wanted to build a classic old-style EPROM-based ROM board for my CPC myself. I have plenty of EPROMS. Flash-based ROM boards are of course the current standard, but hey, EPROMS are cool.  8)

GUNHED

Better use the Dobbertin Card then (7 * 32 KB, 14 logic ROMs). It has superior technology. Ok, maybe some custom chips too, but the probably all have.


Also Bryce made a very decent MegaROM card.
http://futureos.de --> Get the revolutionary FutureOS (Update: 2023.11.30)
http://futureos.cpc-live.com/files/LambdaSpeak_RSX_by_TFM.zip --> Get the RSX-ROM for LambdaSpeak :-) (Updated: 2021.12.26)

Bryce

Quote from: GUNHED on 23:04, 07 March 18
Better use the Dobbertin Card then (7 * 32 KB, 14 logic ROMs). It has superior technology. Ok, maybe some custom chips too, but the probably all have.

Also Bryce made a very decent MegaROM card.

I wouldn't consider my MegaROM to be a classic ROMBoard because it puts all ROMs on one EPROM so these original ROMs can't be used on it. If you're looking to build your own real classic ROMBoard I'd recommend something like the ACU ROMBoard: http://www.cpcwiki.eu/index.php/ACU_Romboard_(DIY)  Full instructions and relatively easy to build. If there's interest, I could get a batch of PCBs made up for those who want to try some soldering.

The Dobbertin 224 didn't use any custom chips, the just made good use of the 74LS154 multiplexer. It's a nice board, but the jumper settings are way too complicated.

Bryce.

LambdaMikel

Quote from: Bryce on 08:27, 08 March 18
If there's interest, I could get a batch of PCBs made up for those who want to try some soldering.

That'll be awesome, count me in for that one, too  :D :)

IanS

Quote from: Bryce on 08:27, 08 March 18
I wouldn't consider my MegaROM to be a classic ROMBoard because it puts all ROMs on one EPROM so these original ROMs can't be used on it. If you're looking to build your own real classic ROMBoard I'd recommend something like the ACU ROMBoard: http://www.cpcwiki.eu/index.php/ACU_Romboard_(DIY)  Full instructions and relatively easy to build. If there's interest, I could get a batch of PCBs made up for those who want to try some soldering.
If you make some PCB's, make anything but the ACU board, it's a terrible design. It at least needs to decode the full rom number - http://www.cpcwiki.eu/forum/amstrad-cpc-hardware/acu-romboard-remix-not-working!-help-required/ . But there are other issues.
Add a couple more chips and do a Rombo clone. With a pre-made PCB, the low chip count simplicity of the ACU design is largely irrelevant.

Bryce

Ok, tell me which device to produce (with modifications if required) and I'll have some PCBs made up. If required I can make up kits with the parts too.

Bryce.

Audronic

Procrastinators Unite,
If it Ain't Broke PLEASE Don't Fix it.
I keep telling you I am Not Pedantic.
As I Live " Down Under " I Take my Gravity Tablets and Wear my Magnetic Boots to Keep me from Falling off.

||C|-|E||


tjohnson


Powered by SMFPacks Menu Editor Mod