It is currently Thu Jun 20, 2019 2:46 am

All times are UTC - 7 hours



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.



Post new topic Reply to topic  [ 20 posts ]  Go to page 1, 2  Next
Author Message
PostPosted: Sat May 21, 2011 9:01 am 
Offline

Joined: Sat Sep 17, 2005 12:26 pm
Posts: 278
anyone know if it possible to convert a TLSROM to TLROM? The TLSROM is found in Play Action Football:

http://bootgod.dyndns.org:7777/profile.php?id=49

i know it is possible to convert a TKROM to TKSROM, so thought this could be done. thanks!


Top
 Profile  
 
 Post subject:
PostPosted: Sat May 21, 2011 9:45 am 
Offline
Formerly 65024U

Joined: Sat Mar 27, 2010 12:57 pm
Posts: 2269
What's the difference?

Apparent mirroring for some reason....I dunno. Of course it's possible some way, and possibly easy since it's just the mirroring, but I am not sure about it.


Top
 Profile  
 
 Post subject:
PostPosted: Sat May 21, 2011 9:53 am 
Offline
User avatar

Joined: Sat Feb 12, 2005 9:43 pm
Posts: 11369
Location: Rio de Janeiro - Brazil
TLROM is one of the most common boards there are, why would you want to go through the trouble of modifying a TLSROM?

Anyway, I'm fairly sure it's possible. You'd just have to reroute a couple of traces (plus the ones you have to rewire because of the FlashROM/EPROM you're gonna use, which don't have the same pinout as Nintendo's ROMs). Just connect CHR A17 from the MMC3 to the CHR chip and the mirroring control (which is apparently unused) to CIRAM A10.


Top
 Profile  
 
 Post subject:
PostPosted: Sat May 21, 2011 10:46 am 
Offline

Joined: Sat Sep 17, 2005 12:26 pm
Posts: 278
tokumaru wrote:
TLROM is one of the most common boards there are, why would you want to go through the trouble of modifying a TLSROM?

Anyway, I'm fairly sure it's possible. You'd just have to reroute a couple of traces (plus the ones you have to rewire because of the FlashROM/EPROM you're gonna use, which don't have the same pinout as Nintendo's ROMs). Just connect CHR A17 from the MMC3 to the CHR chip and the mirroring control (which is apparently unused) to CIRAM A10.


i have an excess of them and want to use them as TLROM's. just didn't want them to go to waste


Top
 Profile  
 
 Post subject:
PostPosted: Sat May 21, 2011 6:47 pm 
Offline
User avatar

Joined: Mon Apr 04, 2011 11:49 am
Posts: 2097
Location: WhereverIparkIt, USA
Like tokumaru said it should be possible. Double check but the only thing that would really keep it from working is if you cart/NES edge connectiong that you needed and happened to be missing on the TLSROM that you actually need.

That's really the only possible deal breaker. Everything beyond that is just connections you'll either have to make or break. I'm working on drawing up the circuits for most common boards right now for another project and have plans to submit them to bootgod when I'm done to share with all.

You just need to reverse engineer the circuit. The best way I've found is to start at the NES connector edge and follow everypath the trace takes. It's probably easier to make a table of chip pin numbers vice actually drawing all the runs on a single paper.

After you do that for one board you can do the same for the other but just make note of any differences. If you're doing it already I recommend removing the rom chips atleast to make sure you find all forks in the circuit path, but it's not necessary if you're careful about it.

Then just make the necessary changes if needed. You could of course just try it first. Just directly swap roms between games or put your own rom in there with the necessary pin changes. It may very well just work.

If the difference is mirroring it should be an easy fix because they use the same mapper that's controlling the mirroring. I don't have a TLSROM on hand otherwise I'd look into it more closely for ya.


Top
 Profile  
 
 Post subject:
PostPosted: Sat May 21, 2011 7:15 pm 
Offline
User avatar

Joined: Sat Feb 12, 2005 9:43 pm
Posts: 11369
Location: Rio de Janeiro - Brazil
For those of you not familiar with TLSROM:

The CHR bankswitching logic of the MMC3 is still functional when PPU addresses outside of the $0000-$1FFF range (the pattern tables) are accessed. This means that the MMC3 can't tell the difference between pattern table accesses and name table accesses, so it will still control the CHR address lines according to the CHR banks that are switched even when name tables are accessed.

The TLSROM takes advantage of this behavior to allow better mirroring control than the MMC3 ordinarily offers. Instead of connecting the highest CHR address line to the CHR chip, this line is routed to the NES, where it will select which name table it should read from. The actual mirroring line that comes out of the MMC3 isn't used at all.

So, if the first pattern table ($0000-$0FFF) is divided into 4 1KB chunks, so will the name tables ($2000-$2FFF), because the MMC3 can't tell the difference. Conveniently enough, name tables (plus their respective attribute tables) are 1KB large, so by using the highest CHR bit of each of the 4 CHR chunks you can select which of the 2 name tables will be used for each of the 4 name table slots. This allows you to arrange the 2 existing name tables any way you want. you can have vertical mirroring, horizontal mirroring, single screen mirroring and even diagonal mirroring.

The disadvantage is that since you lose one address line, the largest CHR chip you can use is 128KB instead of the usual 256KB. Actually, you can still use all 256KB, but the half of the chip the tiles come from will be "tied" to the name table they're used in, which is not convenient at all in most cases.

As you can see, the difference between TLSROM and TLROM is very small. Like I said before, you just have to connect the CHR A17 to the CHR chip and cut the current connection, and also connect the unused mirroring pin to where CHR A17 was previously connected. After that, the usual modifications apply.


Top
 Profile  
 
 Post subject:
PostPosted: Sun May 22, 2011 7:06 am 
Offline

Joined: Sat Sep 17, 2005 12:26 pm
Posts: 278
thanks for the help, ill give this a try!


Top
 Profile  
 
 Post subject:
PostPosted: Sun May 22, 2011 10:21 am 
Offline
User avatar

Joined: Fri Nov 19, 2004 7:35 pm
Posts: 4181
If you're not trying to modify the board, you need to modify the game to pick banks differently, otherwise it will just use single-screen mirroring when you burn it on to the cartridge.

_________________
Here come the fortune cookies! Here come the fortune cookies! They're wearing paper hats!


Top
 Profile  
 
 Post subject:
PostPosted: Sun May 22, 2011 11:09 am 
Offline
User avatar

Joined: Sat Feb 12, 2005 9:43 pm
Posts: 11369
Location: Rio de Janeiro - Brazil
I think it's easier to modify the board than hack the games... but yeah, hacking them is an option. Games that divide $0000-$0FFF in 2KB chunks (as opposed to 1KB chunks) might never work properly through hacking though, since some mirroring configurations are impossible in that mode.


Top
 Profile  
 
 Post subject:
PostPosted: Sun May 22, 2011 7:49 pm 
Offline

Joined: Sun Sep 19, 2004 11:12 pm
Posts: 21443
Location: NE Indiana, USA (NTSC)
tokumaru wrote:
Actually, you can still use all 256KB, but the half of the chip the tiles come from will be "tied" to the name table they're used in, which is not convenient at all in most cases.

The wiki suggests that if you're doing single-screen mirroring, you can in theory reserve half the tiles for your playfield and the other half for your status bar, menu, cut scenes, etc. Then put your playfield tiles on nametable 0 and everything else on nametable 1. Sprites can go on either as space is available. But I doubt that the TLSROM board itself supports a 256 KiB CHR ROM.

In non-swapped CHR bank mode ($0000-$0FFF in 2 KiB chunks), single-screen mirroring and horizontal mirroring (vertical arrangement) are possible, just not vertical mirroring (horizontal arrangement) or L-shaped or diagonal mirroring.


Top
 Profile  
 
 Post subject: Re:
PostPosted: Tue Aug 09, 2016 11:34 pm 
Offline
User avatar

Joined: Wed Apr 07, 2010 1:14 am
Posts: 484
Location: Iran
tokumaru wrote:
For those of you not familiar with TLSROM:
As you can see, the difference between TLSROM and TLROM is very small. Like I said before, you just have to connect the CHR A17 to the CHR chip and cut the current connection, and also connect the unused mirroring pin to where CHR A17 was previously connected. After that, the usual modifications apply.


So is this correct?


Attachments:
TLSROM.PNG
TLSROM.PNG [ 75.96 KiB | Viewed 5004 times ]
TLROM.PNG
TLROM.PNG [ 74.46 KiB | Viewed 5004 times ]
Top
 Profile  
 
PostPosted: Thu Aug 11, 2016 12:38 pm 
Offline
User avatar

Joined: Wed Nov 25, 2015 7:54 pm
Posts: 41
Here...

TLSROM (mapper 118) -> TLROM (mapper 4):
Bend up MMC3 pin 12 (A17)
Bend up CHR pin 30 (A17)
Solder CHR pin 30 to MMC3 pin 12 (A17)
Solder NES pin 22 or FC pin 18 or MMC3 pad 12 (CIRAM A10) to MMC3 pin 10 (CIRAM A10)

Pics:

Image
Image
Image


Top
 Profile  
 
PostPosted: Thu Aug 11, 2016 9:44 pm 
Offline
User avatar

Joined: Wed Apr 07, 2010 1:14 am
Posts: 484
Location: Iran
@ HVC-Man
Thank you

Now how about patching the game itself and converting its mapper?
I mean how to convert mapper 118 to 4 and vice versa?

considering nesdev wiki info :
http://wiki.nesdev.com/w/index.php/MMC3
http://wiki.nesdev.com/w/index.php/INES_Mapper_118

Does this work?

*************************************

Running TLSROM game on TLROM PCB :

replace :
Code:
STA $8001


with :
Code:
STA $8001
ROL A
ROL A
STA $A000
ROR A
ROR A


*************************************

Running TLROM game on TLSROM PCB :

repace :
Code:
STA $A000


with :
Code:
STA $A000
ROR A
ROR A
STA $8001
ROL A
ROL A


*************************************

Or there is something more than that?


Top
 Profile  
 
PostPosted: Thu Aug 11, 2016 9:50 pm 
Offline

Joined: Sun Apr 13, 2008 11:12 am
Posts: 8379
Location: Seattle
You absolutely cannot run a TLSROM game on TLROM: TLSROM allows for "fun" mirroring layouts, whereas TLROM only allows for H and V layouts/mirroring.

Converting TLROM to run on TLSROM is possible, but it will be difficult to keep the game from stepping on the replacement mirroring configuration you set when it changes CHR banks.


Top
 Profile  
 
PostPosted: Thu Aug 11, 2016 9:55 pm 
Offline

Joined: Sun Sep 19, 2004 11:12 pm
Posts: 21443
Location: NE Indiana, USA (NTSC)
Where "fun" means single screen, diagonal, and L-shaped. (Players of Lumines will understand why.)

_________________
Pin Eight | Twitter | GitHub | Patreon


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 20 posts ]  Go to page 1, 2  Next

All times are UTC - 7 hours


Who is online

Users browsing this forum: No registered users and 2 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