(Topic ID: 243908)

Devil Riders non-booting CPU problem

By HHaase

4 years ago


Topic Heartbeat

Topic Stats

  • 61 posts
  • 4 Pinsiders participating
  • Latest reply 4 years ago by HHaase
  • Topic is favorited by 5 Pinsiders

You

Linked Games

Topic Gallery

View topic image gallery

2650_INTACK.jpg
IMG_1601 (resized).jpeg
2650_Reset.jpg
run_wait (resized).png
There are 61 posts in this topic. You are on page 1 of 2.
#1 4 years ago

Ok, I'm not used to Zac machines yet, and I don't have the gear I used to for testing a non-booting board like this.

Basically, I'm suffering from a Devil Riders that won't boot. If I power it up, it constantly flashes zeros on the displays about every second. Reset line appears to be pulsing at about the same rate. Connecting CN11 pin 8 to 5v can get the reset line to a steady 0.6v, but doing a manual reset doesn't cure anything..... just shuts the displays off completely.

Doesn't respond to a Leon test ROM at all either. Either factory rom or Leon's gives me a steady LED on the MPU board. Doesn't currently have a battery installed, the good news however is there doesn't appear to be any battery corrosion either.

Somebody already went through most of the reset circuit, so looks like this problem has been going on for a while. Nothing I've poked at so far seems to individually be working wrong. But something is causing the reset circuit to keep firing.

#2 4 years ago

A wire on the bottom side of the playfield shorting on a coil mounting bracket? I had issues like this and that is what ended being the cause . Took me forever to track the source of the problem down.

#3 4 years ago
Quoted from HHaase:

Ok, I'm not used to Zac machines yet, and I don't have the gear I used to for testing a non-booting board like this.
Basically, I'm suffering from a Devil Riders that won't boot. If I power it up, it constantly flashes zeros on the displays about every second. Reset line appears to be pulsing at about the same rate. Connecting CN11 pin 8 to 5v can get the reset line to a steady 0.6v, but doing a manual reset doesn't cure anything..... just shuts the displays off completely.
Doesn't respond to a Leon test ROM at all either. Either factory rom or Leon's gives me a steady LED on the MPU board. Doesn't currently have a battery installed, the good news however is there doesn't appear to be any battery corrosion either.
Somebody already went through most of the reset circuit, so looks like this problem has been going on for a while. Nothing I've poked at so far seems to individually be working wrong. But something is causing the reset circuit to keep firing.

Have you checked out David Gersic's website? He's THE zaccaria guy. You're more skilled at this stuff than I am but he describes the reset circuit and power failure circuits at the below link which might help.

http://www.zaccaria-pinball.com/gen2/powersupply.html#PowerFail

#4 4 years ago

I have checked Dave's page, as well as Leon's, but they don't cover a non-boot situation in any real depth. The reset circuit ties into a few different places, but I'm learning on it quick to try and figure this out. Not a complex board for the most part.... other than the reset and memory circuits.

I did disconnect the driver board completely from the MPU, so it shouldn't be affecting if the CPU is booting or not.

-Hans

#5 4 years ago

Here's an old RGP post where david talks about things in more detail. Perhaps this will help.

https://groups.google.com/forum/#!topic/rec.games.pinball/oOPVe6ko3mw

#6 4 years ago

There's also this but I can't find a source for getting David's version of the test rom. I'll contact him as I'm going to need it in the near future myself anyway.

http://www.pinrepair.com/zac/manuals/zac_gen2cpu_testdoc.pdf

#7 4 years ago

Very cool, thank you. If you get that test rom, I'd love a copy.

I've been spending a lot of time digging over the schematic for the MPU board, and most of it makes sense to me now. Unfortuantely, those are also all the areas that aren't my problem. I am suspecting IC4 at the moment however. It does have a bit of a bubble on the top, so may have blown out when somebody was goofing around with the battery. I have some fresh 6514's on the way from Jameco, as well as replacements for IC14 and IC15, though I suspect the latter two are ok.

Eventually I'll tie all my notes together into something readable to put into pinwiki, as it's sitting almost empty.

-Hans

#8 4 years ago
Quoted from HHaase:

Very cool, thank you. If you get that test rom, I'd love a copy.
I've been spending a lot of time digging over the schematic for the MPU board, and most of it makes sense to me now. Unfortuantely, those are also all the areas that aren't my problem. I am suspecting IC4 at the moment however. It does have a bit of a bubble on the top, so may have blown out when somebody was goofing around with the battery. I have some fresh 6514's on the way from Jameco, as well as replacements for IC14 and IC15, though I suspect the latter two are ok.
Eventually I'll tie all my notes together into something readable to put into pinwiki, as it's sitting almost empty.
-Hans

Glad that I could help. Whenever you get to updating your universal display let me know if I can help. I've got one of the first ones you developed. Sticker on the box says v1.0 code. I didn't realize when I ordered it that you only supported Williams games so far. Out of all the games my brother and I own we only have 1 digit display williams. We have a whole slew of Zaccaria gen2 games, a couple stern's and some bally's though.

Not sure I have a way to reprogram the board (I assume the unpopulated header on the right side is a programming header?). Let me know what I might need for that. If it's not too expensive I'm open to getting whatever it is I need.

#9 4 years ago
Quoted from pinball_ric:

Glad that I could help. Whenever you get to updating your universal display let me know if I can help. I've got one of the first ones you developed. Sticker on the box says v1.0 code. I didn't realize when I ordered it that you only supported Williams games so far. Out of all the games my brother and I own we only have 1 digit display williams. We have a whole slew of Zaccaria gen2 games, a couple stern's and some bally's though.
Not sure I have a way to reprogram the board (I assume the unpopulated header on the right side is a programming header?). Let me know what I might need for that. If it's not too expensive I'm open to getting whatever it is I need.

Don't worry, assuming I get the code updated for this, the only thing I'll be charging is return shipping.

#10 4 years ago

I'll get back to this one Friday. Ordered myself a new oscilloscope, as there's a few things I'd like to document on this design for testing purposes.
A lot of things accessible to test, but only with the right tools. Voltmeter with half-assed logic probe feature aren't the right tools.

-Hans

#11 4 years ago

Hmmm.... schematics don't cover that I can see. Where does pin 35 on the CPU chip go to?

#12 4 years ago

I don't currently have access to a board to look at unfortunately but looking at the data sheet says "Run/Wait - Informs external circuits as to the run/wait status of the 2650 processor". This would likely not be used right?

#13 4 years ago

My guess is it’s either pulled high or pulled low to lock it in a run condition. But I don’t have a data sheet for the 2650 with me right now.

J13/j14 is also undocumented. I’ll have to probably trace that the hard way when I get a chance.

#14 4 years ago

Here's the part on Run/Wait. TLDR it should be high while the processor is running instructions.

In case you missed it there's a section on david's page for datasheets for everything.
http://www.zaccaria-pinball.com/gen2/datasheets/index.html

Unfortunately for some reason he said he's not releasing his test rom so we're stuck with the Leon one for now it seems.

run_wait (resized).pngrun_wait (resized).png
#15 4 years ago

Ahhhh, it’s an output. I’lol have to hook an LED up to it and see if does anything interesting. Probably not connected anywhere.

#16 4 years ago

Oh i forgot to ask. What oscilloscope did you get? I'll probably be getting something to replace the dinosaur i currently use. (It's a tektronics 468 or something. Super old).

#17 4 years ago

I used to have an old analog 'scope too, IIRC it was a 30mhz dual trace. Wasn't bad, but took up way too much bench space. Sold it a couple years ago when I stopped doing board repair for hire.

Just ordered a Sigilent SDS1102CML+

Also going to have to upgrade my PCB design software for the current project too, I just hit the pin limit doing my own version of the Gen2 CPU board.

#18 4 years ago

I'm considering getting the Rigol DS1054Z in the future. It's 50mhz but you can software mod it to enable 100mhz. Not that I need that for pinball stuff probably. Mostly because it has 4 channels and there have been a couple times where I wish I could watch 3 things.

#19 4 years ago

A lot of time with the scope today trying to nail this down but just haven't had any luck.

Running the game rom, most of my test points appear to be doing what they should.

TP1 - Sense - Steady 5v
TP2 - Clock - 1.5mhz square wave
TP3 - Interrupt - 366hz square wave
TP4 - Reset ..... Not getting a high signal here. But jumping it high doesn't help either
TP5 - Interrupt - 366hz square wave
TP6 - Out counter - Square wave signal (Didn't catch the measurement)
TP7- Out Counter - Currently showing as low.
TP8 - Low ... whatever it is
TP9 - Clock oscilator - 6mhz sine wave.

My TP7 always matches my TP4. Not sure if that's supposed to do that or not. I need to keep digging into that.

#20 4 years ago

Going back to Leons test rom now. I see good activity on the address and data lines. chip select looks to be running correct. Clock is fine. Reset line is pulsing.

As soon as I tie the reset line high, everything stops. Chip select stays high, no activity on the data or address lines. Only the clock lines show activity.

#21 4 years ago
Quoted from HHaase:

As soon as I tie the reset line high, everything stops.

That's because RESET is active high on this CPU.

2650_Reset.jpg2650_Reset.jpg

#22 4 years ago

Yep, completely forgot about that. My head is still wrapped around how Williams works, and I was doing that wrong yesterday. I'm now correctly jumpering things to force the reset.

I think I may have at least found the symptom causing me issues, looks like a data bus problem. D2 is peaking at under 2v, all the other data lines are hitting 5v peaks. So something, somewhere, is screwing with that data line. Unfortunately, there are a lot of chips on the board that tie into the data bus. Never would have found that without a scope.

-Hans

#23 4 years ago

Do resistance measurements on data line 2 to ground and VCC differ from the other data lines?

#24 4 years ago

All the data lines read the same. About 1Mohm to ground, and 30kohm to Vcc. Pullup resistors all still check at 10k.

-Hans

#25 4 years ago

Does the D2 signal look any different if you stop the watchdog from resetting?

#26 4 years ago

Actually, I think I may have found (that) issue. Started clipping/resoldering legs on anything tied to D2. It's either IC24 or IC25, because when I disconnected them from D2, everything seems to have woken up. I'm seeing a lot more address bus activity, and all my data lines are hitting a full 5v on their peaks.

I believe the LEON rom is now properly pulsing , but I need to make up a fresh test LED, as the on-board LED isn't working right. Though the inputs into that 3081 is shifting between high and low at the right timing. Looks like I need to get some of those 3081 replacement kits. Plus do something about those 40097 IC's.

Progress for sure. Going to see what else I can diagnose for today but going to hit a limit here soon without parts.

-Hans

#27 4 years ago
Quoted from HHaase:

It's either IC24 or IC25, because when I disconnected them from D2, everything seems to have woken up.

Is the input side to D2 on pin 6 of IC24 or IC25 stuck low?

4503 can be substituted for the 40097 if you have trouble finding them.

#28 4 years ago

Both are high on pin 6. I reconnected and disconnected that leg again a couple times, it's IC24 causing it. Makes an immediate difference to how D2 looks. Good to know about the alternate IC, I was kinda worried how I was going to deal with the dead 40097.

I suspect Leon's test rom was working the whole time though, but the dead 3081 was misleading me due to the LED being stuck. Now that I'm using a test LED like he describes, I can see the test rom is running. But IC24 problems would definitely cause the game rom to not run. If I'm understanding Leon's test properly, all my RAM is checking ok now too, which is good. Not sure if I'll do a remote battery or an NVRAM right now. I'll worry about that after I get the CPU board going. I'm pretty sure the driver is going to have issues going on too, so I have time to decide.

-Hans

#29 4 years ago

Since IC24 is just an input interface to the switch matrix, the board should boot the game ROMs without it. And hopefully the watchdog will no longer cause the reset to trigger.

#30 4 years ago

Unfortunately, still stuck in the reset loop with the game ROM's. Did a verify on the ROM set, got an error, so I burned a fresh pair of roms. No change there either.

But already paying dividends for me picking up this machine. Ordering some 3081 boards of my own design tomorrow, bit different than the others on the market. Mainly wanted to keep it as close as possible to the original IC size.

#31 4 years ago

does yours use BC548's? that's what TR3 is so should probably use those in place of the 3081.

#32 4 years ago

I'm going to try MBT4401's, the SMT version of the 2N4401. More robust than the original circuits in the CA3081. Given how low some of the tolerances are, I'm surprised those chips don't fail more often.

-Hans

#33 4 years ago
Quoted from HHaase:

Unfortunately, still stuck in the reset loop with the game ROM's.

Getting any activity on the INTACK line to say the CPU has acknowledged interrupt requests? The Interrupt Service Routine (ISR) should activate the RFSH line at IC14 to prevent the watchdog resetting the CPU.

Any activity on the RFSH line? It comes from pin 1 of IC33 as part of the ISR switch matrix read routine when it activates the switch strobes.

#34 4 years ago

yes, the RFSH does have a very short blip going high. Goes high for 20ns every 4ms. I'll check the INTACK tomorrow

#35 4 years ago
Quoted from HHaase:

the RFSH does have a very short blip going high. Goes high for 20ns every 4ms.

RFSH pulsing every 4ms is well before the IC14 watchdog timeout. 20ns pulse sounds awfully short though, I'd expect it to be in the microseconds.

So I presume TP7 (the right side pad) should be staying at zero volts? But you're saying RESET is still pulsing?

Note both pads of TP7 can be solder blobbed together to bypass the watchdog. The left pad is ground and the right pad is the actual watchdog output going to the base of transistor TR1.

#36 4 years ago

Yeah, hard to follow sometimes with all the things going different as I troubleshoot it. (also finding channel 2 is hard to read the text on the bottom of my scope. Have to see if I can change that). So I went back to remeasure what it looks like right now.

Currently reset line is pulsing high ever second for 100ms.
Reset matches TP7 identically.

RFSH is pulsing high every 1.6ms for 20us.

If I force the reset low, I get garbage on the displays. Once in a while it'll actually stay low on its own and gives me the same display garbage. Actually, this same display garbage also blinks into existence at the same rate/time the reset line goes high.... but don't know if it's before, during, or after the time that line is high.

-Hans

IMG_1601 (resized).jpegIMG_1601 (resized).jpeg
#37 4 years ago

How about INTACK? Getting any activity there? I presume yes.

When you force RESET low, do you still get activity on RFSH? I wonder if RFSH is currently pulsing because the board is rebooting for other reasons and if you hold reset low, the game isn't actually servicing interrupt requests so failing to pulse RFSH under "normal" conditions.

#38 4 years ago

I'll check those more in-depth after work today, but at the moment I don't see any activity on the INTACK line. It's a solid low.

-Hans

#39 4 years ago
Quoted from HHaase:

at the moment I don't see any activity on the INTACK line. It's a solid low.

Hmm, within the first few instructions of startup, interrupts are inhibited. Guess it's safe to say the CPU is never getting through the POST to enable interrupts.

#40 4 years ago

Maybe. But isn't INTACK pulled high by R52, unless the CPU is forcing it low? Just not sure what the line is supposed to be doing. Would it be worth it to also watch TP5, to see if there's an interrupt request in the first place?

Might be a good idea to go back to Leon's ROM to check all the I/O's. I already know there are problems in IC24 and IC12 at the very least. So maybe something else is corrupting the data lines still that I haven't caught.

-Hans

#41 4 years ago

IC24 was already a known problem, IC25 had a circuit as well that wasn't working right, so I removed both IC's.

No change to the boot issue though. I'll order more in a couple days...... need to get working on some orders for customers.

#42 4 years ago
Quoted from HHaase:

Would it be worth it to also watch TP5, to see if there's an interrupt request in the first place?

You already mentioned above TP5 has a 366Hz square wave. Not 100% sure what frequency it's supposed to be but that sounds reasonable.

Quoted from HHaase:

Maybe. But isn't INTACK pulled high by R52, unless the CPU is forcing it low? Just not sure what the line is supposed to be doing.

INTACK is active high. When the game has booted and enabled interrupts, I'd expect it to be pulsing at the same rate as /INTREQ saying that the CPU is acknowledging Interrupt Requests. But since the MPU board hasn't passed power on self tests (POST) it sounds like interrupts are staying disabled which is why the CPU never responds with INTACK and it stays solid low.
When INTACK goes high, the board responds to the CPU with an Interrupt Vector via the "ISR Address" circuit plonked in the middle of the schematic. Coincidentally the "ISR Address" circuit is part of another 40097 chip at IC18..
Do you have a logic tester or EPROM programmer that can test logic chips which maybe supports 40097/4503 chips?

At any rate, lack of INTACK activity is a symptom of and not your current problem here. Like you said, probably time to go back to Leon's ROM.
2650_INTACK.jpg2650_INTACK.jpg

#43 4 years ago

I have an older usb logic analyzer in the parts bin somewhere, but been a while since I’ve used it and would have to locate the software.

#44 4 years ago

Plenty of parts on order at this point. Basically enough to rebuild the whole I/O section of the CPU board heading to C8/C10/C11 except the 3081's and pullups. Should be here by end of the week.

-Hans

#45 4 years ago

Parts are here and I’m working on sockets for IC6,10,11,18,24,25

Not sure if this will help my no boot problem but I do know a couple of them are bad already. So I’ll get that done and reevaluate at that point.

#46 4 years ago

That is an awful lot of bad chips

#47 4 years ago

I don't think they were all bad. But I do know IC24 and IC12 are were bad, and IC25 was suspect. I hate doing shotgun repairs, but I'm just completely lost trying to track down the source of my problem. So I'm taking educated guesses at what areas of the board might be causing the problem. That and a lot of this is a brain exercise to understand the systems on this board-set.

Going over the board, and looking at what's been noted on the schematics, it looks like I'm not the only one who's tried to find this problem. So I'm actually not 100% confident that I'll find it any time soon.

#48 4 years ago

Well, sometimes a shotgun is the right tool for the job, she's booting, to a point.
Comes on, solid LED, displays stay solid, reset stays solid.

Plugged in the driver board, and I've even got attract mode running.
It's counting credits as I add them.

Still a few more IC's to replace on the MPU, including at least one 3081, and god knows what I'll find with the driver board..... but this is huge progress finally.

-Hans

#49 4 years ago
Quoted from HHaase:

Well, sometimes a shotgun is the right tool for the job, she's booting, to a point.

So which chips did you replace to get it to boot?

#50 4 years ago

IC18, IC24, IC25. But since I did all three at once I don't know which one did it.

I figured they were the most likely candidates as at least one was contaminating a data line that I knew of, and they were inputs into the data bus. IC6/IC10 were less likely but I did them anyway.

Still plenty of work to go, this machine is more of a project than was my understanding. But at least this is some big progress to get me going on other things. Will also 'start' a game at current too. Not playable by any stretch of the imagination but it's getting closer.

Promoted items from Pinside Marketplace and Pinside Shops!
$ 45.00
Hey modders!
Your shop name here
There are 61 posts in this topic. You are on page 1 of 2.

Reply

Wanna join the discussion? Please sign in to reply to this topic.

Hey there! Welcome to Pinside!

Donate to Pinside

Great to see you're enjoying Pinside! Did you know Pinside is able to run without any 3rd-party banners or ads, thanks to the support from our visitors? Please consider a donation to Pinside and get anext to your username to show for it! Or better yet, subscribe to Pinside+!


This page was printed from https://pinside.com/pinball/forum/topic/devil-riders-non-booting-cpu-problem and we tried optimising it for printing. Some page elements may have been deliberately hidden.

Scan the QR code on the left to jump to the URL this document was printed from.