Mr Do! Appreciation PCB redesign

myPinballs

Active member
Feedback
16 (100%)
Credits
668CR
On your foreground ram problem, it isn't the protection causing it is it ?

On the real PCB, IC U001 returns specific values dependant on what was written to screen ram before it was read.

can be removed with ... replace

049A: C0 ret nz

and

772F: 20 0C jr nz,$773D

with NOPs if that is the problem.
Thanks for the thoughts. The foreground ram issue is still puzzling me currently because phils test rom runs fine on it but the std one doesnt. The 'security' chip is in my design and i used the pal dump for it online. I was thinking this part is ok as without it i would have expected all other layers to be messed up to . Also the background and foreground sections hardware design is almost identical and background work fine, so i must be missing something simple.
 

myPinballs

Active member
Feedback
16 (100%)
Credits
668CR
Latest update. The last sprite issue is fixed. Was a problem caused by using an LS193 instead of an HCT193. I am using HCT as the goto chips as they are much less power than std LS ones and are also easier to get hold of usually. I have seen these types of issues on other some of my video related projects and you have to fine tune the chip selection. Timing requirements are often quite tight.

I also solved an extra minor foreground issue (not the ram one yet) by switching 3 HCT157's to HC175. This issue was with the tunnel graphics not always showing correctly as mr do moved about. Sometimes parts of cherries were drawn inplace of tunnels etc

So onto the final 2 issues.

1) foreground ram does not test correctly and loads with garbage (squares) at boot. Running the test clears the boot garbage however
2) sound is not working correctly
 
Last edited:

myPinballs

Active member
Feedback
16 (100%)
Credits
668CR
Another update. :)

I disappeared down a rabbit hole whilst working on the foreground ram issue and the boot display problem. I was looking into what is displayed on screen with the cpu removed to better understand the logic for loading what is initially shown on screen , as some of the garbage on screen at the first attract screen was present on the initial full garbage screen.

Turns out I had 3 problems in one!
1a) foreground ram was not testing correct on std roms (ok with phils)
1b) garbage was left over on the first attract screen on the foreground layer
1c) garbage was left over on the first attract screen on the background layer and moved with the stripe tile background present inside the mr do logo!

So,

After many many hours of experimentation and swapping chips etc I have solved all 3 problems. The board test with original roms now runs correctly to the end and the garbage at initial boot is gone

DB96B598-7709-46D7-B7CE-FFAD6DF7279B.JPEG

61B6B3DD-A121-4A9F-84EC-DE31AF82C12A.JPEG714F2F40-C7B2-47AD-821F-27D7FA25446B.JPEGFCFD9701-9FD8-4CB1-83E4-F821B3286324.JPEG

1a) The foreground ram test showing bad was to do with using 74HCT245 buffer ics instead of 74LS245 for where the cpu talks to the foreground and background ram.

1b & 1c) The garbage on screen was to do with the type of ram in use for foreground & background combined with the solution for 1a. It seems that the type of ram selected for this board needs to be quite specific and with fast timings of 25ns. Also I am not 100% sure yet whether the address side of the ram load need to use 74LS157's or maybe 74F157's so I have these ordered to try. If you remember we swapped these to 74HC157 which helped clear up some other graphics display issues.

So now just the sound problem to sort out.
 

myPinballs

Active member
Feedback
16 (100%)
Credits
668CR
One more thing to add today.

I touched on this earlier regarding utilising HCT variant chis where possible and selecting LS and others only when needed instead of a blind copy of the original pcb. Of course with this design, its not exactly the same anyway with some simplifications and updates to reduce chip count to, but the point of doing this is this....

Original pcb current draw on 5v

IMG_1008.JPG

New pcb current draw on 5v

IMG_1009.JPGIMG_1010.JPG

Very happy with this result! Hopefully the edge connector will survive long into the years with under 1a draw
 

pooman2084

Be Attitude For Gains!
vacBacker
Feedback
25 (100%)
Credits
1,830CR
@myPinballs, this is great work man!

The PCB I got with my Universal cab has a funny issue whereby you get 3 letters of your EXTRA lit straightaway and after every extra life. It makes the game too easy where you can play indefinitely. Given how far you’ve delved into the hardware and software, do you have any idea what might be causing this?
 

myPinballs

Active member
Feedback
16 (100%)
Credits
668CR
Some interesting info on the sound front (from wikipedia)

'There are two versions of the SN76489: the SN76489 (Narrow DIP version labeled SN76489N) and the SN76489A (Narrow DIP version labeled SN76489AN). The former was made around 1980–1982 and the latter from 1983 onward. They differ in that the output of the SN76489 is the inverse of the expected waveform (the waveform "grows" towards 0 V from 2.5 V), while the SN76489A the waveform is not inverted.'

The chips i got were SN76489AN not the SN76489N version so it would appear that the output is not inverted. What a bizarre thing to do by texas half way through the production of a part!!

Also testing with a scope the chips i have seem to be producing lots of noise not a clean output when sounds are called, so maybe they are bad to.
 

Dougsy

Newbie
Credits
7CR
Enjoying this thread as im a big Mr Do fan. Excellent work and that reminds me i need to get my 2 fixed in the new year.
Wish i had your skills.
 

myPinballs

Active member
Feedback
16 (100%)
Credits
668CR
Either variant of the sound chip works fine in an original board, so we can ignore the above. Also original boards also produce some minor background noise, so I need to check the preamp level out and the feed to the amp circuit.

Handy that the more available SN76489AN is confirmed as ok.
 
Last edited:

myPinballs

Active member
Feedback
16 (100%)
Credits
668CR
Sound problem fixed!!!!!!!

so that's the final issue resolved and so now we have a fully working board :love:. Great feeling to have designed and built this from scratch and shared the journey getting it working. Now to refine the layout and sort out the silkscreen layout alittle, then add the parts for @philmurr high score save option then get some rev2 blanks made to try out. I am also going to get quotes from my normal pcb assembly house on what it will cost for an assembled board with all discretes, amp parts and sockets. Just leaving the actual ics to populate by people.

So on to the reason for the sound problem. I had made a small error with the addition of the volume control meaning that the op amp became unstable and caused the board to crash. So after confirming that the sound ics were both functioning ok using the scope, I went back to basics and checked the full op amp circuit from the original design which was correctly recreated. I also spent some time to understand what it does. ( I prefer digital electronics, not analogue, but this part here isn't too complex)

The pre amp is in 2 parts. the first part is an inverter with reference voltage at 2.5v and a negative loop with gain of 2. The output of this is then fed into another negative loop opamp with gain of 1. the second op amp I believe is to add stability. A 1k resistor in series is also added to reduce noise before then being fed to the amp section.

I added a few extra resistors here also for greater noise reduction and stability. Removing and reattaching the volume pot correctly then returned the familiar sounds and music and with low bgnd noise.

Modified rev1 proto sound section
IMG_1034.JPG

Quick Video of the sound & music in game

 
Last edited:

Flinnster

The Dino King
vacBacker
Feedback
29 (100%)
Credits
2,566CR
Very very nice work!
leonardo-dicaprio-throwing-money-wallstreet-kxkrd2hxrp5v1mw7.gif
 

myPinballs

Active member
Feedback
16 (100%)
Credits
668CR
Rev2 pcbs ready to roll. Gonna get a few to test again first . Check layout and make sure all changes from the rev1 dev are included. Tweak anything else that needs fine tuning

IMG_1084.jpeg

Also included in this Rev is @philmurrs high score save option. Direct on the board. No daughter board needed. Big thanks to Phil for allowing me to include this.
 
Top