No announcement yet.

Berzerk To Frenzy To Multigame


Share any logs or helpful information you may have to repairs of arcade PCBs, Monitors etc

  • Filter
  • Time
  • Show
Clear All
new posts

  • #16
    Click image for larger version

Name:	IMG_20190821_132607.jpg
Views:	1
Size:	339.6 KB
ID:	1852192 Click image for larger version

Name:	IMG_20190821_132631.jpg
Views:	1
Size:	339.1 KB
ID:	1852193
    Click image for larger version

Name:	IMG_20190821_132631_1.jpg
Views:	1
Size:	434.0 KB
ID:	1852194
    I've got both games running on a single 1meg rom now and using the gal I've programmed in the changes to make it switch using a jumper and a another one to A16 on the rom to switch upper and lower banks.
    I've pretty much done all I can now with my breadboard. I need to buy a protoboard now and do some hard wiring for the next step which will be making a board that can slot into the cpu and rom socket, adding the logic needed for the buffers and programming the GAL to deal with the logic for the CE and OE for the Rom and NVram. Final stage will be using EasyEDA to make a professional backyarder style board.
    Unfortunately you cant make a board that wont require some minor modifying of the original hardware to run both games. The only 2 in 1 boards I've seen is one somebody made several years ago that was a complete swap for the ZPU-1000 board and the Jroc one that replaces all the boards....but where is the fun in that?

    Anyway last update for awhile until I get the bits I need go further.


    • #17
      Still waiting on parts to continue the project however in the meantime I decided to have a go at repairing the original Electrohome GO7 chassis. I was planning to put my last good tube and chassis in the machine but seeing as these are getting scarce why not have a go?
      When I first turned this machine on there was some humming coming from the chassis then bang, a large flash then nothing. I assumed the fuse had blown but when I pulled the chassis out to inspect it both fuses were ok....
      Nothing obvious was bad, found several bad caps and one open, I ended up replacing the lot. Checked for dry joints and reflowed the joints around the EHT and also did the mod described HERE.
      Powered it up on the bench with a step down transformer, adjusted B+ to 120 volts DC and she fired right up, I could see a glow in the neck and feel static on the screen, a good start.
      Next step was to hook it up to the the test rig which was running Galaxian. I couldn't get the thing to sync. I read somewhere that there's a known issue with some Go7's where a couple incorrectly installed of resistors from factory which is part of the negative horizontal sync circuit (R314 and R317) can cause this issue, both are supposed to be 390ohms but low and behold R314 was 4.7k on mine. Replacing R314 with a 390ohm resistor fixed the issue. I'm guessing Berzerk is a little more forgiving in the h-sync department.

      Click image for larger version

Name:	IMG_20190902_114906.jpg
Views:	1
Size:	232.7 KB
ID:	1852400
      Click image for larger version

Name:	IMG_20190902_114808.jpg
Views:	1
Size:	186.6 KB
ID:	1852399
      Can see the Berzerk screen burn with the light on....seen much worse.
      Click image for larger version

Name:	IMG_20190902_114642.jpg
Views:	1
Size:	99.4 KB
ID:	1852398 Click image for larger version

Name:	IMG_20190902_115212.jpg
Views:	1
Size:	117.5 KB
ID:	1852397
      Looks fantastic with the light off.
      Pretty happy overall, was worth saving it from the scrap heap.

      Things to do.
      Replace the two red and green gain 200ohm pots. They were dodgy as.
      Hot glue the convergence rings in place.
      While its out of the machine I'll hook Berzerk up and do all the adjustments so its ready to go.


      • #18
        Click image for larger version

Name:	IMG_20190910_130407.jpg
Views:	1
Size:	231.4 KB
ID:	1852520 Click image for larger version

Name:	IMG_20190910_130450.jpg
Views:	1
Size:	270.1 KB
ID:	1852521
        Click image for larger version

Name:	IMG_20190910_130510.jpg
Views:	1
Size:	448.4 KB
ID:	1852522

        Some more progress over the weekend.
        Moved everything onto the protoboard. I've programmed the 22v10 Gal to do the memory decoding, game selection, logic for the rom output and chip enables. Works fantastic..a lot of trial and error though.

        Next step is to find a suitable NVram to replace the onboard ram so both games high scores and audits can be saved individually, maybe a Dallas NV1220?.
        I also want to program in a way to reset the cpu while switching games to save turning the machine off.
        The rest is just the logic for the OE and CE for the RAM and DIR on a 74ls245 for the databuss

        One problem I'm going to have is with the dip switch settings.
        Frenzy's bonus Life dips clash with Berzerks dips for the crosshatch and switch tests.
        The only way I can see around this is to hack Berzerk to match Frenzy and move the test dips to F2 3 and 4. I'll have to tackle that hurdle when I come to it.


        • #19
          Click image for larger version

Name:	IMG_20190912_130517.jpg
Views:	1
Size:	296.6 KB
ID:	1852546
          Exciting! I'm getting close to finishing my prototype.
          Added in a 16k ram using a 6116 for the time being until my nvrams arrive. Now both games get their own ram space to save high scores etc.
          You can see both original rams and the decoder are gone so my little board is running under her own steam now
          Just need to sort out the databuss dir and add in a reset line from the GAL to the Z80. Probably use a transistor for this to save frying the GAL.
          Probably add some LED's on there....because why not? every board needs blinky flashy LED's that nobody will see.
          Gal code is looking like
          /* *************** INPUT PINS *********************/
          PIN 1 = GAME; /* GAME = BERZERK !GAME = FRENZY */
          PIN [2..6] = [A11..A15]; /* Pins 2 to 6 A15 to A11 */
          PIN 7 = MREQ;
          PIN 8 = RFSH;
          PIN 9 = WR;
          PIN 10 = RD;
          /* *************** OUTPUT PINS *********************/
          PIN 15 = ROMOE;
          PIN 16 = ROMCE;
          PIN 20 = RAMWE;
          PIN 21 = RAMCE;
          PIN 22 = DIR;
          PIN 23 = GAMESELECT;
          RAM = A11 & A12 & A13 & A14 & A15 & !GAME # A11 & !A12 & !A13 & !A14 & !A15 & GAME;
          IO = !A11 & !A12 & !A13 & A14 & !A15 # A11 & !A12 & !A13 & A14 & !A15 
             # !A11 & A12 & !A13 & A14 & !A15 # A11 & A12 & !A13 & A14 & !A15 
             # !A11 & !A12 & A13 & A14 & !A15 # A11 & !A12 & A13 & A14 & !A15
             # !A11 & A12 & A13 & A14 & !A15 # A11 & A12 & A13 & A14 & !A15
             # !A11 & !A12 & !A13 & !A14 & A15 # A11 & !A12 & !A13 & !A14 & A15
             # !A11 & A12 & !A13 & !A14 & A15 # A11 & A12 & !A13 & !A14 & A15
             # !A11 & !A12 & A13 & !A14 & A15 # A11 & !A12 & A13 & !A14 & A15
             # !A11 & A12 & A13 & !A14 & A15 # A11 & A12 & A13 & !A14 & A15;
          !GAMESELECT = GAME;
          !ROMOE = !(MREQ & RFSH);
          !ROMCE = !(RAM # IO);
          !RAMCE = RAM # (RD & WR);
          !RAMWE = !WR;
          !DIR = IO;
          Click image for larger version

Name:	IMG_20190912_130531_1.jpg
Views:	1
Size:	411.0 KB
ID:	1852544 Click image for larger version

Name:	IMG_20190912_130543.jpg
Views:	1
Size:	429.3 KB
ID:	1852545
          Thought I'd show you the mess underneath as well


          • #20
            I dont know what in looking at but it looks complicated to me
            live between the flip and the tilt


            • #21
              Originally posted by oldhank View Post
              I dont know what in looking at but it looks complicated to me
              It's just stuff


              • #22
                Update Time.
                Click image for larger version

Name:	IMG_20190925_133056.jpg
Views:	1
Size:	295.1 KB
ID:	1852916 Click image for larger version

Name:	IMG_20190925_133102.jpg
Views:	1
Size:	337.0 KB
ID:	1852917
                We're well and truly in the home stretch now.
                Finished the programming for the GAL databuss IO logic which connects to pin 1(dir) pin on a 74ls245 . I found this pretty annoying difficult to get right. I was stuck on the Vram test for ages (3 flashes). I ended up having to to use my scope so I could check the output of each IC matched the output of the GAL.

                Decided to isolate the Z80 reset and upgrade the original flaky power on reset circuit with a Microchip Mcp120. That one little transistor looking chip above the rom does the job of all the components I've circled on the board in the second pic, works fantastic. Even though I had repaired that section, it's been playing up and will probably keep playing up due to corrosion damage from the battery. Now its fixed for good I'm also going to add in a little button to reset the board manually.
                Added in 100nf filter caps.
                Cut down the prototype board.

                Not much to do now, still waiting on my NVram.
                I'd like to replace the switch with a push button switch, problem is I'd have to program in some sort of flip flop circuit into the GAL which I'm not sure how to do. I also want this to reset the CPU at the same time so the 2 games could be switched on the fly.
                Besides that I'm very happy at the progress. I've basically achieved my main goal which was to make a Berzek/Frenzy multigame.
                Once I'm happy that everything is working perfectly I'll make something up in EasyEDA and make the board look spiffy.


                • #23
                  Click image for larger version

Name:	IMG_20191016_161502.jpg
Views:	1
Size:	293.3 KB
ID:	1855328
                  The Dallas DS1220Y NVRAM's arrived so the prototype is 100% finished now.
                  I added in the reset button also which you can hold down and flick the switch to change games.
                  Everything works as intended and no corruption in the audits or high scores in either game so now its time to fire up EasyEDA and create something spiffy looking.


                  • #24
                    Click image for larger version

Name:	Untitled-2.jpg
Views:	1
Size:	107.4 KB
ID:	1855492
                    Sneak peek.


                    • #25
                      Click image for larger version

Name:	Untitled-2.jpg
Views:	1
Size:	124.4 KB
ID:	1855543

                      95% done, just can't decide what game select switch to put on the board


                      • #26
                        Click image for larger version

Name:	Untitled-2.jpg
Views:	1
Size:	130.6 KB
ID:	1855657
                        Here's the final design....I'm going to try JLCPCB this time due to first time discounts so If I've stuffed up no major money wasted and 5 bucks USD for 10 PCB's is pretty good.
                        More to come.


                        • #27
                          Click image for larger version

Name:	IMG_20191119_163824.jpg
Views:	1
Size:	232.6 KB
ID:	1855979
                          Boards finally arrived today and look fantastic. Alignment matches the prototype and aligns well with the Berzerk CPU board sockets however still having an issue with one row of pins not aligning on the rom socket (Not the whole socket just one side). I believe this is due to the crappy old single wipe sockets on the board throwing the alignment for that side out, I'll probably have to swap them all out for dual wipes..
                          I'll try fitting it in my spare CPU board, I'm confident it will be ok.
                          Next revision I'm going to add in a jumper to disable the on board select switch, add in a header and make up a remote game select board that can be mounted anywhere. Naturally I had an idea after I sent these to get manufactured, luckily these 10 only cost $5 USD...9 boards wasted though


                          • #28
                            Nice work, I have a few lots of boards from first revisions with minor errors the can be fixed with trace cuts or jumpers. Even though they only cost a few bucks I can't bring myself to throw them out.
                            Last edited by Kaizen; 19 November 2019, 06:02 PM.
                            Namco Starblade - Taito Cocktail 14" x 3, 20" x 2 - NZ SI PtII Upright - Chase HQ DX, Taito Top Speed - Taito Grand Champion - Taito Safari - LAI SI Head to Head Cocktail - SI Cocktail Clone x 2, Pong Clone x 3


                            • #29
                              Click image for larger version

Name:	IMG_20191212_112253.jpg
Views:	1
Size:	214.9 KB
ID:	1856447
                              Version 1.1 of my board came yesterday. I made a huge mistake in my first revision, the center rom was off by exactly 1mm so I couldn't even test it....5$ USA down the drain lesson learned right there.
                              In revision 1.1 I've added a jumper to disable the onboard game selection switch so you can use an external switch mounted where ever you like.

                              Click image for larger version

Name:	IMG_20191212_112146_1.jpg
Views:	1
Size:	323.9 KB
ID:	1856445 Click image for larger version

Name:	IMG_20191212_112204.jpg
Views:	1
Size:	283.3 KB
ID:	1856446
                              Put it all together and it actually worked after some reprogramming to the gal.

                              I made 2 mistakes which I missed on the first revision due to not being able to test it.
                              1. For what ever reason I added an unnecessary output enable line to the ram using an extra pin on the gal. On my prototype the rom and ram share the same OE from the gal.....what was I thinking? No biggy I just added in a few extra lines to the Gal code but I'll rectify this in the final revision.
                              2. I went to put the socket in for the Gal and came to the realisation that the spacing was was too big! Another lesson learned don't trust the component templates in Easy EDA.
                              There was no way I was wasting more PCB's so I bent the pins out on the sockets and soldered them to the through holes. It's not obvious in the pics which is a bonus

                              So this portion of the project is complete. I'm now satisfied enough to get my Berzerk cab back together and running.
                              I'm still going to play around with the Frenzy code in MAME debug mode at some point and sort out the dips. I'll probably just hard code them to the default bonus values.


                              • #30
                                If you are making a PCB the has to line up perfectly you can export the PCB to PDF as 1:1, print it off and check it lines up. Same for pin spacing, it's hard to tell when looking at it on screen but once you print it you'll be able to see straight away if it's not right.
                                Namco Starblade - Taito Cocktail 14" x 3, 20" x 2 - NZ SI PtII Upright - Chase HQ DX, Taito Top Speed - Taito Grand Champion - Taito Safari - LAI SI Head to Head Cocktail - SI Cocktail Clone x 2, Pong Clone x 3


                                Users Viewing Topic: 0 members and 1 (guests)