Oh well, I tried. Yeah, it's the closet I could find. All the switches with more than 3 channels all seem to be bussed (as in, same select pins)! Finding one with only half the channels sharing a select pin was a royal PITA since a lot of the parts searches won't tell you that and there's 1000's of Mux/switch parts.<Farid_> but it doesn't have any DIP package
<alphamule> Ah
Famicom TXROM PCB reproduction
Moderators: B00daW, Moderators
Forum rules
1. NO BLATANT PIRACY. This includes reproducing homebrew less than 10 years old, with the exception of free software.
2. No advertising your reproductions, with the exception of free software.
3. Be nice. See RFC 1855 if you aren't sure what this means.
1. NO BLATANT PIRACY. This includes reproducing homebrew less than 10 years old, with the exception of free software.
2. No advertising your reproductions, with the exception of free software.
3. Be nice. See RFC 1855 if you aren't sure what this means.
Re: Famicom TXROM PCB reproduction
Idealogical
From: I have an idea. It seems logical. Thus everyone must agree.
Fail, fail, fail again. Keep trying, then maybe this damn thing will work. Eventually you might even know why it worked.
From: I have an idea. It seems logical. Thus everyone must agree.
Fail, fail, fail again. Keep trying, then maybe this damn thing will work. Eventually you might even know why it worked.
Re: Famicom TXROM PCB reproduction
Anyway thank you very much, I really appreciate it.alphamule wrote: Oh well, I tried. Yeah, it's the closet I could find. All the switches with more than 3 channels all seem to be bussed (as in, same select pins)! Finding one with only half the channels sharing a select pin was a royal PITA since a lot of the parts searches won't tell you that and there's 1000's of Mux/switch parts.
Re: Famicom TXROM PCB reproduction
Transcribing the function table from the image for posterity's sake:
Registers:
D7 -> PRGA20 and CHRA20 and PRGsize[0:256 1:512]
D6 -> PRGA19 and CHRA19
D5 -> PRGA18 (but mux) and CHR A18 and CHR style
D0 -> clock latch
How is it ever possible to get CHR A18 high with CHR ROM ?
Implementation:
One multiplexer uses D7 to select whether PRGA18 comes from D5 or MMC3
Two multiplexers combined to make a demultiplexer uses D5 to select whether CHRRAM or CHRROM is enabled.
Anyway, what would you do with more than three multiplexers?
Code: Select all
PRG CHR A18 A19 A20 TYPE
1 256 256 0 0 0 TLROM / TSROM
2 256 8 1 0 0 TGROM
3 256 256 0 1 0 TLROM / TSROM
4 256 8 1 1 0 TGROM
5a 512 256 0 0 1 \
5b 512 8 1 0 1 / T[ GKLNS ] ROM
6a 512 256 0 1 1 \
6b 512 8 1 1 1 / T[ GKLNS ] ROM
D7 -> PRGA20 and CHRA20 and PRGsize[0:256 1:512]
D6 -> PRGA19 and CHRA19
D5 -> PRGA18 (but mux) and CHR A18 and CHR style
D0 -> clock latch
How is it ever possible to get CHR A18 high with CHR ROM ?
Implementation:
One multiplexer uses D7 to select whether PRGA18 comes from D5 or MMC3
Two multiplexers combined to make a demultiplexer uses D5 to select whether CHRRAM or CHRROM is enabled.
Anyway, what would you do with more than three multiplexers?
Re: Famicom TXROM PCB reproduction
Thanks for the new table.
It is more easy to understand the function.
But with another mux maybe it is possible to protect WRAM :
D6 -> PRGA19 and CHRA19 and WRAM /WE [0:Dis 1:En]
Some TLROM games like Ninja Gaiden III may mess up with the wram so it is not possible to use a TKROM or TNROM for any of the Game1 ~ Game4
It is more easy to understand the function.
When CHR A18 is high, CHR-ROM is disabled and CHR-RAM is enabledHow is it ever possible to get CHR A18 high with CHR ROM ?
I just wanted to see if there is any better TTL instead of 4053, but it seems the best TTL is 4053 itselfAnyway, what would you do with more than three multiplexers?
But with another mux maybe it is possible to protect WRAM :
D6 -> PRGA19 and CHRA19 and WRAM /WE [0:Dis 1:En]
Some TLROM games like Ninja Gaiden III may mess up with the wram so it is not possible to use a TKROM or TNROM for any of the Game1 ~ Game4
Re: Famicom TXROM PCB reproduction
So then there's no way to ever select CHR-ROM banks when that bit is high? Then why connect it to CHR-ROM at all? It seems to require a twice-as-large CHR ROM for no purpose?FARID wrote:When CHR A18 is high, CHR-ROM is disabled and CHR-RAM is enabled
Re: Famicom TXROM PCB reproduction
Yes, you are right, CHR-ROM will be 1MB at most, so the best EPROM is 27C080lidnariq wrote:So then there's no way to ever select CHR-ROM banks when that bit is high? Then why connect it to CHR-ROM at all? It seems to require a twice-as-large CHR ROM for no purpose?
But as you may know 27C080 is more expensive than 27C322 so I decided to use the cheaper EPROM in spite of wasting half of it
On the other hand A18 of 27C322 can be tied to GND and then control the other high address lines with D7 and D6 but this will make the registers even more complex :
CHR A20 --> GND
CHR A19 & PRG A20 --> D7
CHR A18 & PRG A19 --> D6
PRG A18 --> D5
So I decided to keep the registers as simple as possible, because I am wasting the half of the EPROM anyway.
Re: Famicom TXROM PCB reproduction
I guess these old 27C series UVEPROMs are the only DIP options at all... and perhaps the price difference is because more people had use for 1 MiWx8 than for 2 MiWx16 'PROMs.
If you ever do try surface mount, there are a few 5V 1MB+ options ( M29F800, MX29F800, M29F160 )
If you ever do try surface mount, there are a few 5V 1MB+ options ( M29F800, MX29F800, M29F160 )
Re: Famicom TXROM PCB reproduction
Are you really this desperate about the price?? A 27C322 may be cheaper, OK but when you really compare the prices, 27C322 is about 2$ a piece while 27C080 is about 3-4$ at most but 27C080 is MUCH shorter (32pins instead of 42) so you save much more space on board and you save much more time for your work and it is much less complicated at the same time...
Re: Famicom TXROM PCB reproduction
If I want to use SMD, I will use DA28F640J5 (8MB) for sure, then I can even expand the circuit to use its all capacity!lidnariq wrote:I guess these old 27C series UVEPROMs are the only DIP options at all... and perhaps the price difference is because more people had use for 1 MiWx8 than for 2 MiWx16 'PROMs.
If you ever do try surface mount, there are a few 5V 1MB+ options ( M29F800, MX29F800, M29F160 )
Yes the price is very important, on the other hand 27C322 is 4MB while 27C080 is only 1MB, with a better circuit I can use its all capacity!MaarioS wrote:Are you really this desperate about the price?? A 27C322 may be cheaper, OK but when you really compare the prices, 27C322 is about 2$ a piece while 27C080 is about 3-4$ at most but 27C080 is MUCH shorter (32pins instead of 42) so you save much more space on board and you save much more time for your work and it is much less complicated at the same time...
Also by using a simple adapter, programming 27C322 is as simple as programming a 27C080 :

By the way, using 27C322 as CHR-ROM is better because by using only 2 wires instead of 4053 it is possible to change the whole cartidge to TSROM 8 IN 1
Even by installing a MMC1 through an adapter instead of AX5202P it is possible to make a SLROM 8 IN 1
Using a larger EPROM can make the whole cartridge flexible and general purpose
Re: Famicom TXROM PCB reproduction
Another advantage to such a large memory is (especially if you socket it, but also if you have many of them) you can reuse it for say, a SNES or MegaDrive/Genesis or even a large custom game using a compatible mapper.
Idealogical
From: I have an idea. It seems logical. Thus everyone must agree.
Fail, fail, fail again. Keep trying, then maybe this damn thing will work. Eventually you might even know why it worked.
From: I have an idea. It seems logical. Thus everyone must agree.
Fail, fail, fail again. Keep trying, then maybe this damn thing will work. Eventually you might even know why it worked.
Re: Famicom TXROM PCB reproduction
So here is the Menu of this multicart, the source code is also included
:

Here is the latest source code :
Menu for MMC3 games
Menu for MMC1 games


Here is the latest source code :
Menu for MMC3 games
Menu for MMC1 games
- Attachments
-
- Multicard_Menu_Tutorial.doc
- (357.5 KiB) Downloaded 489 times
-
- TXROM_6IN1_Menu.zip
- (449.01 KiB) Downloaded 447 times
Last edited by FARID on Mon Jun 08, 2015 11:34 pm, edited 1 time in total.
Re: Famicom TXROM PCB reproduction
I made a Megaman 6 IN 1 :
Menu :

Front :

Back :

Full Schematic :

Mapper Schematic :

Chips :
M27C322 --> PRG-ROM
M27C322 --> CHR-ROM
KM6264 --> CHR-RAM
AX5202P --> MMC3
74HC161 --> Latch
74HC4053 --> Switch
Multicart registers :
D7 --> PRG A20, CHR A20, PRG Size [0:256 1:512]
D6 --> PRG A19, CHR A19
D5 --> PRG A18, CHR A18, CHR Control [0:ROM 1:RAM]
D0 --> Multicart register [0:Enable 1:Disable]
PRG & CHR Structure :
ROM1 --> Megaman 5 --> 256 + 256 --> PRG + CHR --> 000X XXX1 --> 0000 0001 --> 01 --> Menu
ROM2 --> Megaman 1 --> 256 + 8 ----> PRG + SRAM -> 001X XXX1 --> 0010 0001 --> 21
ROM3 --> Megaman 3 --> 256 + 256 --> PRG + CHR --> 010X XXX1 --> 0100 0001 --> 41
ROM4 --> Megaman 2 --> 256 + 8 ----> PRG + SRAM -> 011X XXX1 --> 0110 0001 --> 61
ROM5 --> Megaman 4 --> 512 + 8 ----> PRG + SRAM -> 101X XXX1 --> 1010 0001 --> A1
ROM6 --> Megaman 6 --> 512 + 8 ----> PRG + SRAM -> 111X XXX1 --> 1110 0001 --> E1
Notes :
Free blocks of CHR-ROM must be filled up.
The pinout of PRG-ROM and CHR-ROM are not standard.
All games must be Mapper 4 / MMC3. To convert Megaman 1 and 2 to Mapper 4 you must use infidelity's patch
Please someone emulate this multicart, thanks.
Menu :

Front :
Back :
Full Schematic :
Mapper Schematic :
Chips :
M27C322 --> PRG-ROM
M27C322 --> CHR-ROM
KM6264 --> CHR-RAM
AX5202P --> MMC3
74HC161 --> Latch
74HC4053 --> Switch
Multicart registers :
D7 --> PRG A20, CHR A20, PRG Size [0:256 1:512]
D6 --> PRG A19, CHR A19
D5 --> PRG A18, CHR A18, CHR Control [0:ROM 1:RAM]
D0 --> Multicart register [0:Enable 1:Disable]
PRG & CHR Structure :
ROM1 --> Megaman 5 --> 256 + 256 --> PRG + CHR --> 000X XXX1 --> 0000 0001 --> 01 --> Menu
ROM2 --> Megaman 1 --> 256 + 8 ----> PRG + SRAM -> 001X XXX1 --> 0010 0001 --> 21
ROM3 --> Megaman 3 --> 256 + 256 --> PRG + CHR --> 010X XXX1 --> 0100 0001 --> 41
ROM4 --> Megaman 2 --> 256 + 8 ----> PRG + SRAM -> 011X XXX1 --> 0110 0001 --> 61
ROM5 --> Megaman 4 --> 512 + 8 ----> PRG + SRAM -> 101X XXX1 --> 1010 0001 --> A1
ROM6 --> Megaman 6 --> 512 + 8 ----> PRG + SRAM -> 111X XXX1 --> 1110 0001 --> E1
Notes :
Free blocks of CHR-ROM must be filled up.
The pinout of PRG-ROM and CHR-ROM are not standard.
All games must be Mapper 4 / MMC3. To convert Megaman 1 and 2 to Mapper 4 you must use infidelity's patch
Please someone emulate this multicart, thanks.
- Attachments
-
- PCB.zip
- (41.42 KiB) Downloaded 494 times