(solved)Adress decoding, combining more eproms in one, get rid of LS138 - Page 1
Forum section: electronics / projects

author: georgian
author_rank: Regular Contributor
timestamp: July 28, 2024, 07:26:12 pm
content: Hello,any tips on how can I combine more eproms that are selected from an LS138 or LS139 adress decoder? I want make an single rom version for anarcade game. This way I can use a bigger eprom and use the upper adresses to select other games.here is an schematic of the implementation of the eproms. I do have some WinCupl skills but I need some help here.Thanks a lot.

author: Doctorandus_P
author_rank: Super Contributor
timestamp: July 28, 2024, 07:40:17 pm
content: With a 27C512 you can replace 8 27C64 IC's by omitting the 74ls138 and connecting the address lines directly to the eeproms.Also, 27 series Eprom is mostly obsolete. consider 28 series EEprom.

author: georgian
author_rank: Regular Contributor
timestamp: July 28, 2024, 07:43:35 pm
content: Yes, but what about the OE and CS pins? I can tie the pin 22 (OE) on the 512 eprom LOW. I could then use the A13, A14 and A15 directly to the new 512 but what about the enable pins on the LS138? RFSH and IOREQ?

author: Doctorandus_P
author_rank: Super Contributor
timestamp: July 28, 2024, 08:09:37 pm
content: It's been 30+ years since I last looked at the Z80 and those EPROMS. I believe some combine CE and OE pins depending on whether there is room for them on the package.Back then I also bought "Z80 Applications" by James W Coffron ISBN 0-89588-094-6 And I still have it in dead tree format (It's been ages since I took THAT out of a drawer).It's a very thorough book around designing circuits around a Z80. A quick check shows it's still available:https://archive.org/details/z80_applications

author: georgian
author_rank: Regular Contributor
timestamp: July 28, 2024, 08:19:35 pm
content: This is how the eproms are on this particular PCB.What I have tried:I put the IC1 + IC2 + IC3 + empty 128k file in one 27C512Connect the 27C512 CS low, A14 to Z80 A14 and A15 to Z80 A15. The game boots but dosen't get far, so it is not working this way.I disconnected the CS pin from ground and conneted it to the Z80 pin 19 (MREQ), This way I got a streight IC3 error on boot so it obviusly dosen't work this way as well.

author: Kleinstein
author_rank: Super Contributor
timestamp: July 28, 2024, 08:37:58 pm
content: From the memory size the 27512 could replace 8 x 2764, but the address space usually still has some RAM and not 8 x 2764.The plan looks like 6 x EPROM and quite some extra decoding for the rest. This would suggest there could be enough time to keep the xx138 and than just combine the 6 ROM select signals with an extra AND gate.

author: edavid
author_rank: Super Contributor
timestamp: July 28, 2024, 08:43:11 pm
content: QuoteYou were almost there. Instead of tieing the 27C512 CS low, you need to combine the 6 existing 2764 chip selects into a new chip select signal. You need a 6 input AND gate, which you could build out of a 74HCT11 or a 74HCT30 + 74HC04.P.S. Instead of the 27C512, you might as well use an EEPROM like the W27C512 or SST27SF512.

author: georgian
author_rank: Regular Contributor
timestamp: July 28, 2024, 08:55:13 pm
content: Quote from: edavid on July 28, 2024, 08:43:11 pmThanks, so I can't get rid of the address decoder IC. The plan is to use an 28F2000 flash and use the upper address lines to select diffrent games but first I need to figure it out how to make a sigle rom.

author: Andy Chee
author_rank: Super Contributor
timestamp: July 28, 2024, 08:55:52 pm
content: Quote from: georgian on July 28, 2024, 07:26:12 pmHave you already probed with a logic analyser/oscilloscope, and confirmed that the upper addresses show zero activity?

author: georgian
author_rank: Regular Contributor
timestamp: July 28, 2024, 09:31:28 pm
content: Quote from: Andy Chee on July 28, 2024, 08:55:52 pmWith upper adresses I mean the extra addresse a much bigger eprom has. I fit all the roms in one 27C512. With one 27C1000, I have one extra address A16 that I can manually toggle to select between games. There are also graphics roms and sound but the problem was the program roms.

author: georgian
author_rank: Regular Contributor
timestamp: July 28, 2024, 09:36:04 pm
content: Quote from: edavid on July 28, 2024, 08:43:11 pmAn 74LS11 did the trick! Many thanks.

author: Doctorandus_P
author_rank: Super Contributor
timestamp: July 28, 2024, 09:49:05 pm
content: Also, why start from such an old scan of an even older schematic?There must be hundreds of completed projects in various PCB design programs floating around out there. And a bunch of them will have some kind of retro computing community around them.

author: georgian
author_rank: Regular Contributor
timestamp: July 29, 2024, 05:26:54 pm
content: Quote from: Doctorandus_P on July 28, 2024, 09:49:05 pmThere are no schematics available for this particular Sega "system1" 171-5054-02 PCB. The old scan posted in my first post is from a different PCB revision. Schematics is almost the same but different layout.The eagle incomplete schematic that I posted is what I found to be on the actual PCB.http://techdocs.exodusemulator.com/Arcade/SegaSystem1/index.html

author: georgian
author_rank: Regular Contributor
timestamp: July 29, 2024, 05:29:03 pm
content: I can now get rid of the 74LS139 that is on the PCB and the extra 74LS11 needed by using an ATF16V8.Thanks a lot for all the answers.WinCupl equations:Code:/* *************** INPUT PINS *********************/PIN2 = A14;PIN3 = A15;PIN4 = MREQ;/* *************** OUTPUT PINS *********************/PIN14 = romCS;!romCS = (!A14 & !A15 & !MREQ) # (!A14 & A15 & !MREQ) # (A14 & !A15 & !MREQ);

author: bson
author_rank: Unknown
timestamp: July 29, 2024, 07:52:34 pm
content: Quote from: georgian on July 28, 2024, 07:43:35 pmCan't you just ignore RFSH altogether? I don't see any DRAM on that schematic.I agree with the idea of using a single 64k x 8 EPROM/EEPROM/NOR Flash (or the smallest still made if you go SMD) and then simply block it out with memory mapped devices. In other words, if an address doesn't decode to something else, let it CS# the EPROM.And, by convention, ADnn is used for a multiplexed address and data bus, while in your schematic it's used to designate a pure address bus. This was rather confusing since the Z80 doesn't have a multiplexed bus.It would be useful to see an address map...

author: Dan N
author_rank: Contributor
timestamp: July 29, 2024, 10:29:04 pm
content: Quote from: georgian on July 29, 2024, 05:29:03 pmYou can also use a tiny AND-OR gate as shown in the attached pic.