It is currently Sat Oct 21, 2017 8:03 pm

All times are UTC - 7 hours





Post new topic Reply to topic  [ 7 posts ] 
Author Message
PostPosted: Tue Jan 28, 2014 3:29 pm 
Offline
User avatar

Joined: Wed Apr 07, 2010 1:14 am
Posts: 484
Location: Iran
Yet another sh1t :mrgreen:

Image

Download patches (Menu + Conversion)

All Credit for NROM to MMC3 conversion patches goes to infidelity

Registers of the Menu (Mapper 52) :
$6000-7FFF
D7.... ....D0
ABCD EFGH
A (D7) : LATCH [0:En 1:Dis]
B (D6) : CHR Size [0:256 1:128]
C (D5) : CHR bit 1 [CHR A18]
D (D4) : CHR bit 0 [CHR A17]
E (D3) : PRG Size [0:256 1:128]
F (D2) : PRG bit 2 + CHR bit 2 [PRG A19 + CHR A19]
G (D1) : PRG bit 1 [PRG A18]
H (D0) : PRG bit 0 [PRG A17]

All of the games must be MMC3 (Mapper4) :
ROM1 --> Super Mario Bros. 3 (E) [!].nes --> PRG1 + CHR1 --> 256 + 256 --> 1000 0000 --> 80 [Menu]
ROM2 --> Super Mario Bros. 2 (J).nes --> PRG2 + CHR2 --> 128 + 128 --> 1110 1010 --> EA
ROM3 --> Mario's Time Machine! (U) [!].nes --> PRG3 + CHR3 --> 128 + 128 --> 1111 1011 --> FB
ROM4 --> Mario Bros. (E) [!].nes --> PRG4 + CHR4 --> 128 + 128 --> 1100 1100 --> CC
ROM5 --> Super Mario Bros. (W) [b1].nes --> PRG5 + CHR5 --> 128 + 128 --> 1101 1101 --> DD
ROM6 --> Super Mario Bros. 2 (E) [!].nes --> PRG6 + CHR6 --> 128 + 128 --> 1110 1110 --> EE
ROM7 --> Mario is Missing! (E) [!].nes --> PRG7 + CHR7 --> 128 + 128 --> 1111 1111 --> FF

Designing the hardware is a little bit of challenge, anyone want to suggest anything?


Last edited by FARID on Wed Jan 29, 2014 1:45 am, edited 2 times in total.

Top
 Profile  
 
PostPosted: Tue Jan 28, 2014 4:22 pm 
Online

Joined: Sun Apr 13, 2008 11:12 am
Posts: 6293
Location: Seattle
FARID wrote:
Designing the hardware the hardware is a little bit of challenge, anyone want to suggest anything?
Hard to do better than two 74'161s so that it has all of {Clear, Clock, ClockEnable} inputs.
If the games don't use RAM, and never write to $6000-$7FFF, you might be able to just use a 74'273 and ignore D7.


Top
 Profile  
 
PostPosted: Tue Jan 28, 2014 10:23 pm 
Offline
User avatar

Joined: Wed Apr 07, 2010 1:14 am
Posts: 484
Location: Iran
@ lidnariq
Thanks for the answer

What about PRG and CHR size switch? I think 161 can't handle it just by itself, no?
How do you suggest to generate the clock signal?
You know SMB3 has PRG-RAM so it always access 6000~7FFF during the game play and generates unwanted clock signal during the game play, so I think using D7 is mandatory to prevent game crashing while playing.
Is it necessary to disable PRG-RAM for other games? Or it can be enabled all the time?
Why 273 and not just 174? I had to set all of the bits for running the rom on emulator but for real hardware there is no need that much and it is possible to share some of the bits.


Top
 Profile  
 
PostPosted: Tue Jan 28, 2014 10:42 pm 
Online

Joined: Sun Apr 13, 2008 11:12 am
Posts: 6293
Location: Seattle
FARID wrote:
What about PRG and CHR size switch? I think 161 can't handle it just by itself, no?
Brains. I completely forgot.
A lot of pirate multicarts used a 74'153 wired funny to make two independent 1-of-2 multiplexers. Could also use a 4053.
Quote:
How do you suggest to generate the clock signal?
Should just be able to use the MMC3 WRAM /CE signal.
Quote:
Is it necessary to disable PRG-RAM for other games? Or it can be enabled all the time?
Not clear which of two things you're asking, so let me answer both:
1- I don't know if we need to prevent register writes for the other six games. I assume all of infidelity's conversions (as well as the original games) don't write there, but ...
2- RAM itself shouldn't need to be disabled beyond the standard MMC3 WRAM disable.
Quote:
Why 273 and not just 174?
8 bits instead of 6.


Top
 Profile  
 
PostPosted: Tue Jan 28, 2014 10:59 pm 
Offline
User avatar

Joined: Wed Apr 07, 2010 1:14 am
Posts: 484
Location: Iran
How is this :

Registers with shared bits :
$6000-7FFF
D7.... ....D0
ABCD EFGH
A (D7) : LATCH [0:En 1:Dis]
B (D6) : X
C (D5) : PRG + CHR bit 1 [A18]
D (D4) : PRG + CHR bit 0 [A17]
E (D3) : PRG + CHR Size [0:256 1:128]
F (D2) : PRG + CHR bit 2 [A19]
G (D1) : X
H (D0) : X

Needed Chips :
27C080 --> PRG-ROM
6264 --> PRG-RAM
27C080 --> CHR-ROM
AX5202P --> MMC3
174 --> Latch
4053 --> Switch

Schematic :
Image

I am not sure for pin 13 of Switch, please suggest something, thanks.


Top
 Profile  
 
PostPosted: Tue Jan 28, 2014 11:15 pm 
Online

Joined: Sun Apr 13, 2008 11:12 am
Posts: 6293
Location: Seattle
FARID wrote:
I am not sure for pin 13 of Switch, please suggest something, thanks.
Doesn't matter. 74'174 latches contents on rising edge of /CLK, so the order of events will be

/WRAMCE falls
/WRAMCE rises and D7 is latched,
multiplexer changes from /WRAMCE (currently high) to Vcc (still high)
or
multiplexer changes from high to low, but 174 only cares about rising edges.

Vcc feels tidier, though.


Top
 Profile  
 
PostPosted: Thu Feb 13, 2014 8:44 am 
Offline

Joined: Mon Feb 04, 2013 8:48 am
Posts: 45
FARID I enjoy this. It is "close" to my personal vision of a Mario all in one.


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 7 posts ] 

All times are UTC - 7 hours


Who is online

Users browsing this forum: No registered users and 7 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Group