Reviving suicided Johnny Nero and Special Forces PCBs (ICE / Play Mechanix)

My so called good Special Forces Board has a video issue: Everything has stripes on it (static, not moving). Sound is fine. I have a nice chinese Supergun/MAK that lets me change V and H sync. Sadly that just moves the screen for me and eventually makes the stripes run. It doesn't prevent the stripes.
Do you happen to have an oscilloscope? If so, I'd check the JAMMA sync pin... I wonder if this unencrypted FPGA either uses a different resolution, uses separate H/V sync, or has different DIP sw settings than the encrypted one. The scope could easily tell what resolution and sync is used.

Attached is the full PCB schematic. The DIP sw settings I posted earlier discuss H/V vs. C sync, and note that an unpopulated P26 header has separate H and V sync, though the H sync circuitry isn't populated. So if it is separate sync, it won't work without a little bit of circuit modification.

DogP
 

Attachments

  • Schematic for Special forces.pdf
    543.1 KB · Views: 7
Do you happen to have an oscilloscope? If so, I'd check the JAMMA sync pin... I wonder if this unencrypted FPGA either uses a different resolution, uses separate H/V sync, or has different DIP sw settings than the encrypted one. The scope could easily tell what resolution and sync is used.

Attached is the full PCB schematic. The DIP sw settings I posted earlier discuss H/V vs. C sync, and note that an unpopulated P26 header has separate H and V sync, though the H sync circuitry isn't populated. So if it is separate sync, it won't work without a little bit of circuit modification.

DogP

Thanks a lot DogP!

The pinout of the non-populated video connector really helps me a lot. I was just working with P26-9, VSync/CSync yesterday. I even jumped it to the JAMMA sync pin for trouble shooting. This might invalidate my Sync experiments, I will have to check with the population status of my board. "NP" in the schematic diagram is "not populated" I assume? I also saw there are means to make sync-on-green with a bit of modification.

The trials yesterday were with the normal encrypted ROM. I yet have to try the unencrypted ROM on the "working" non-suicided board.

I do have oscilloscopes. I will look into the topic today.
 
On DogP's schematic diagram I have seen that you can force Sync-on-Green by moving one SMD jumper. I might try that later.

I think first I will be doing the oscilloscope measurements though.
 
No issues with Nero pcb. I've tried all combinations with special forces with no luck. I vaguely remember having a working special forces pcb years ago (10+years) and had the same issue with the display. I don't think it's a code issue, but something with the configuration for display and sync.
1000003559.jpg
 
The oscilloscope readings of C-Sync did not yield anything special. For comparison I measured my Johnny Nero, which looks about the same.

This image shows how the readings look most often:

CsyncMostCommon.png


At other, more seldom occasions there is a burst going downwards, containing 5 peaks of the usual signals, but now in the invers polarity:

CsyncWhenDown.png


Does anybody on the board have a opinion on these?


Also looking on my Johnny Board I can see that DIP switch S1-pin2 is flipped. But looking at DogP's table this just sets the baude rate for debugging.


EDIT:
Also I tried the unencrypted ROM on the "good" Special Forces board. Unfortunately it doesn't boot that way. But I might have written the chip wrong. I started from position 0. Maybe the ROM needs an unknown offset.
 
The sync timing looks (probably) correct... the narrow pulses every ~60us are the H-Sync pulses, and the part where it inverts is the V-Sync pulse. This tells that it's composite sync (if it was separate sync, you'd only have H-Sync on one wire and V-Sync on the other wire). The fact that the typical H-Sync pulse is falling instead of rising tells that it's negative sync. JAMMA is typically negative composite sync, so that is good.

The frequency is close to standard resolution, though looks to be a bit high... without markers on the screen, it's a bit hard to make an exact measurement... but ideally it'd be ~64 us between pulses for standard resolution (~15.625 kHz). That looks to be ~58 us, which puts the frequency a bit high at ~17.24 kHz. A real arcade monitor should be able to sync to this (probably w/ some adjustment of the H-Hold / H-Sync pot), but for example my Gonbes VGA adapter wouldn't sync to a Super Off Road PCB at about the same frequency, so it may be hit or miss.

The one thing that definitely looks wrong are the levels... high should be ~5V and low should be ~0V. Your captures show it never going above 0V, and going down to -0.5V. Any chance you had a 10x probe but scope thought it was 1x? (to explain the scale). Then maybe AC coupled instead of DC, or the GND clipped to +5V instead of GND? (maybe explain the negative voltage) I'm not familiar with the software you're using, but it does look like it might be set to 1x probe and AC coupled.

I don't think you want sync-on-green... that's a special mode that only certain monitors use. If you're using a regular monitor or converter, that most likely doesn't use sync-on-green.

Also I tried the unencrypted ROM on the "good" Special Forces board. Unfortunately it doesn't boot that way. But I might have written the chip wrong. I started from position 0. Maybe the ROM needs an unknown offset.
The ROM is just a plain binary file, so it should start at 0 and fill the entire ROM. It should be a 27C801 (or equivalent).

DogP
 
The sync timing looks (probably) correct... the narrow pulses every ~60us are the H-Sync pulses, and the part where it inverts is the V-Sync pulse. This tells that it's composite sync (if it was separate sync, you'd only have H-Sync on one wire and V-Sync on the other wire). The fact that the typical H-Sync pulse is falling instead of rising tells that it's negative sync. JAMMA is typically negative composite sync, so that is good.

The frequency is close to standard resolution, though looks to be a bit high... without markers on the screen, it's a bit hard to make an exact measurement... but ideally it'd be ~64 us between pulses for standard resolution (~15.625 kHz). That looks to be ~58 us, which puts the frequency a bit high at ~17.24 kHz. A real arcade monitor should be able to sync to this (probably w/ some adjustment of the H-Hold / H-Sync pot), but for example my Gonbes VGA adapter wouldn't sync to a Super Off Road PCB at about the same frequency, so it may be hit or miss.

The one thing that definitely looks wrong are the levels... high should be ~5V and low should be ~0V. Your captures show it never going above 0V, and going down to -0.5V. Any chance you had a 10x probe but scope thought it was 1x? (to explain the scale). Then maybe AC coupled instead of DC, or the GND clipped to +5V instead of GND? (maybe explain the negative voltage) I'm not familiar with the software you're using, but it does look like it might be set to 1x probe and AC coupled.

I don't think you want sync-on-green... that's a special mode that only certain monitors use. If you're using a regular monitor or converter, that most likely doesn't use sync-on-green.


The ROM is just a plain binary file, so it should start at 0 and fill the entire ROM. It should be a 27C801 (or equivalent).

DogP
It's indeed a 10x attenuation probe =)

I think what you say about the pulse to pulse duration really is the culprit. I will measure it tomorrow with an image processing software.

I will keep on trying to sync to it, probably at all four resolution settings. The resolution should affect the sync frequency, is that right?
 
Last edited:
I will keep on trying to sync to it, probably at all four resolution settings. The resolution should affect the sync frequency, is that right?
Yes... the resolution should change the H-Sync frequency (should be ~25 kHz for medium resolution and ~31 kHz for VGA). The V-Sync frequency should always be close to 60 Hz (if you widen your time span and look at the spacing of the wide negative pulses, you can verify it's ~60 Hz).

DogP
 
My Johnny Nero board runs at 17.12 kHz HSync and my Special Forces 17.64 kHz. Which makes sense, that the Johnny board is closer to 15.625 kHz.

Thinking of it, I will compound the problem going to higher Frequencies. But still, I must test it in the flesh to be really sure.

I found C-Sync normalizer boards, which I might give a shot.
Here a nice blog:
But seemingly there are many and some are commercially available.
 
Last edited:
Quick update:

The monitor now accepts the signal. The trick was setting it at high resolution to get HSync close to 31 kHz. From there analogue video gear can pick it up as VGA.
I used it with an Extron VSC 500 and it works fine (wants separate Syncs though).

The gun calibrated fine. I will now have to check out where my new super gun expects the start and coin buttons expects to be. I have a new unit that lets me shift vertical and horizontally but I am not quite familiar with.

EDIT:

Unfortunately the setup is not perfect yet. I sometimes lose a good chunk of the lower screen, which sucks because this lower part is necessary to calibrate the gun.

I keep on digging. I feel make good progress. I yet have other monitors to try and anther, older Extron which should behave similarly.

EDIT2:

When using the Extron, the game indeed gets out of whack with the gun tracking. But I found that one of my 15 kHz PVMs does sync up with the game at 31 kHz.
I can now use the Extron to convert a copy for recording and such while using the direct signal for playing.

EDIT3:

Well, I would say it's unplayable like this still. I come through the whole game and can record the majority of it, but sadly the picture and the calibration & aiming constantly go off.

I am now about to buy commercially available HSync cleaner boards and I will re-create the one in the blog post.
 
Last edited:
Another update on my sync issues:
They are time variable. I think on a cold PCB, the sync gets even worse after 30 min or so. This is especially true for the gun tracking.

In my experience often times this indicates thermal expansion issues. I will continue tests, but now I have decided that at some point I will re-flow the whole board. Well, not the whole board, obviously the spots close to the battery holder will be left out ^^
 
Last edited:
Personally, I'd say reflowing just about any of the board is a waste of time, and may cause more problems/damage... if you check the schematics, you'll see that the CSYNC is generated completely within the FPGA, then has one transistor (Q6) and a few passives (Rs,Cs,Ls) in the drive circuit. Nothing in the drive circuit should change the sync frequency, and if the frequency generated by the FPGA is drifting, then it'd likely be a crystal... but that shouldn't drift much.

Obviously I can't see what you're seeing, but it sounds like your converter isn't actually locked to the sync, in which case it will definitely drift. I'd put your oscilloscope on the sync line again and check it when cold and again when warm and measure the frequency of the H-Sync pulses. I'd expect a monitor to stay locked even if it drifted a kHz or so, and I can't imagine the board drifting anywhere near that much.

DogP
 
Personally, I'd say reflowing just about any of the board is a waste of time, and may cause more problems/damage... if you check the schematics, you'll see that the CSYNC is generated completely within the FPGA, then has one transistor (Q6) and a few passives (Rs,Cs,Ls) in the drive circuit. Nothing in the drive circuit should change the sync frequency, and if the frequency generated by the FPGA is drifting, then it'd likely be a crystal... but that shouldn't drift much.

Obviously I can't see what you're seeing, but it sounds like your converter isn't actually locked to the sync, in which case it will definitely drift. I'd put your oscilloscope on the sync line again and check it when cold and again when warm and measure the frequency of the H-Sync pulses. I'd expect a monitor to stay locked even if it drifted a kHz or so, and I can't imagine the board drifting anywhere near that much.

DogP

Good point, I will overthink that.

The thing is though:
The PVM locking to the raw signal from the Supergun, behaves the same way as the Extron converter thingy. But I think it would be easy enough to test the thesis: power cycle components of the video and display chain and check whether they re-lock. Thanks a ton :D I will try that tomorrow!
 
It indeed looks to be a thermal issue. Turning on/off the PCB, converter or direct display don't change anything. The picture stays shifted, if shifted.

And always starts from the same position when cool. Also gets off quicker if the ambient temperature is warm.

I can see two possible solutions:

- Build a fan rig, which blows air at the PCB (The HDD is loud anyways).
- Build Martin Jones's Hsync affecting PCB. I have now ordered the parts =)
 
Johnny Nero related... attached is a PCB design (schematics, BOM, and gerbers) for a clone of the Johnny Nero recoil driver board.

It's not a 100% reproduction, but should be a drop-in replacement (same size/shape), using the same parts, and roughly the same layout. It uses the same designators, so the schematics should also be useful for repairing an original board.

The parts are all currently in stock at Digikey - here's a cart share for convenience: https://www.digikey.com/short/tpppqhm9 (<$10 in parts per board). Note that the BOM also has the P/Ns for the connector housings and crimp sockets if you need to build your own wiring harness.

I haven't built the board, and probably won't - at least for a while (not planning to make a special order for this)... so build/use at your own risk, and be sure to post if you build one and it works (or doesn't).

DogP
I was ordering a few other boards and parts, so I added this recoil driver board to it. Overall, very simple build... took ~20 minutes start to finish. I haven't tested it yet, but hopefully later this evening.

DogP
 

Attachments

  • IMG_6372.JPG
    IMG_6372.JPG
    212.2 KB · Views: 12
  • Like
Reactions: TSB
I was ordering a few other boards and parts, so I added this recoil driver board to it. Overall, very simple build... took ~20 minutes start to finish. I haven't tested it yet, but hopefully later this evening.

DogP
I've had this in my 'add to the next pcb order' folder, too, but haven't made an order in a while.
Glad to see this project getting final testing!
 
I haven't tested it yet, but hopefully later this evening.
Finally got it tested this weekend, and it seems to work just like the original... so I'm calling this good!

DogP
 
  • Like
Reactions: TSB
Back
Top Bottom