Mapper Decapping?

Discuss hardware-related topics, such as development cartridges, CopyNES, PowerPak, EPROMs, or whatever.

Moderators: B00daW, Moderators

User avatar
Memblers
Site Admin
Posts: 3901
Joined: Mon Sep 20, 2004 6:04 am
Location: Indianapolis
Contact:

Post by Memblers »

qbradq wrote: We do :D The only down side is that if you build a custom mapper cart it will not be compatible with existing emulators. This is not a problem if you do all of your development on the hardware and do not want folks to be able to emulate your game.
I still think this problem is vastly overstated - it's only an issue if a mapper is intentionally exotic (like Squeedo with it's PIC - OTOH Action 52 used a PIC, and it's emulated fine :P). Every known board/mapper has been emulated (AFAIK), so I can't imagine any reason that wouldn't continue to be the case in the future. And that's with extensive reverse-engineering, it sure would get easier when the design specs are 100% documented.

But yeah, it's probably gonna take an FPGA or something to recreate an MMC5. It just isn't worth what it would cost, yet (it's possible there will be a cheaper 5V compatible solution later, but maybe not real likely). If it were somehow possible to do an ASIC mapper (which would be great), hopefully it would be something better than the MMC5.
Dr. Floppy
Posts: 47
Joined: Mon May 09, 2011 7:02 pm

Post by Dr. Floppy »

qbradq wrote:Either way an MMC5 reproduction is going to be very expensive. Programmable logic alone is not up to the task (due to the built-in 1KB EXRAM), so you would have to use multiple IC's and work out all of the timing issues there. A custom ASIC is going to be way too expensive for a hobby (or small to medium sized commercial) project (I think).
How expensive, approximately? The original MMC5's were used for games that sold at roughly $40-50 retail, so I'm guessing we're talking something around $7-10 per chip?

qbradq wrote:We do :D [create custom mappers] The only down side is that if you build a custom mapper cart it will not be compatible with existing emulators.
I always figured that if I succeeded in creating a custom MMC for a demonstrable homebrew game, I'd send a copy to Kevtris along with complete documentation for possible inclusion in the next iNES update. (Hopefully, the mapper# I want will still be available!)

qbradq wrote:As for MMC5 info and creating custom mappers based on it I will link to our recent discussions about it. If you have the hardware skills to pull this stuff off I will gladly bend over backwards to help you get the information and support you need.
Many thanks! The main thing I'd like to add is 4-screen mirroring, which is one of the few gaps in the MMC5's repertoire. I anticipate that this will require partial redesign of the ASIC itself, with respect to how the $5104 and $5105 registers are handled. Obviously, I'll have to provide an additional 2kB of RAM for the two extra name tables, either by bumping up the existing 1kB or doing some kind of supplemental work-around like the unlicensed version of Gauntlet. I'd also like to explore the possibility of expanding the $5130 register to allow for unique high-bits for B/G tiles across the four name tables:

d7-d6 = High bits for NT3
d5-d4 = High bits for NT2
d3-d2 = High bits for NT1
d1-d0 = High bits for NT0 (default)

If I still have time/room/sanity after all of that, I'll look into adding the extra sound channels from the VRC6 (or perhaps just the sawtooth).
User avatar
qbradq
Posts: 952
Joined: Wed Oct 15, 2008 11:50 am

Post by qbradq »

The cost of the IC will be more than $15 if you use a 5v compatible CPLD. And that is not counting the RAM chip you will need to add, which will need to be dual-ported ( I guess, like I said this is not my strong suit).

Yea, it gets expensive :)

And as for having a custom IC made most of the cost is in the up front tooling charges, I think.
User avatar
marshallh
Posts: 15
Joined: Sat Aug 11, 2007 9:36 am
Contact:

Post by marshallh »

In decreasing order of suitability


1. CPLD - cheap. MAX3000A w/ 128macrocells. Use more than one if you really need it. $6
2. PIC - cheap but not well suited to simaltaneous logic. $8
3. FPGA - expensive, 300ms start up time, may require level conversion but extremely capable. $30
4. ASIC - expensive, it's never going to happen so don't bother. $50,000
User avatar
MottZilla
Posts: 2835
Joined: Wed Dec 06, 2006 8:18 pm

Post by MottZilla »

Dr. Floppy wrote:
qbradq wrote:Either way an MMC5 reproduction is going to be very expensive. Programmable logic alone is not up to the task (due to the built-in 1KB EXRAM), so you would have to use multiple IC's and work out all of the timing issues there. A custom ASIC is going to be way too expensive for a hobby (or small to medium sized commercial) project (I think).
How expensive, approximately? The original MMC5's were used for games that sold at roughly $40-50 retail, so I'm guessing we're talking something around $7-10 per chip?
When the MMC5 was made, Nintendo was doing quite well. They sold hundreds of thousands of cartridges. For them, having the custom ASICs made of MMC5 was not a big deal and not that expensive per unit since they were made in high volume. No one now can expect to ever use that many mapper chips in those sorts of volumes. So making an ASIC clone of MMC5 would cost so much per unit that your game would be quite expensive I think.

While it would be nice, there is certainly a point to be made if someone wants MMC5 for their game, which is look at games that use discrete logic like Castlevania, Battletoads, Mega Man, Contra, as well as games that use no mapper like Super Mario Bros. You don't need all that for your game to be fun.
Dr. Floppy
Posts: 47
Joined: Mon May 09, 2011 7:02 pm

Post by Dr. Floppy »

MottZilla wrote:When the MMC5 was made, Nintendo was doing quite well. They sold hundreds of thousands of cartridges. For them, having the custom ASICs made of MMC5 was not a big deal and not that expensive per unit since they were made in high volume. No one now can expect to ever use that many mapper chips in those sorts of volumes. So making an ASIC clone of MMC5 would cost so much per unit that your game would be quite expensive I think.
ASIC, we hardly knew ye!

So I guess now it's down to either the CPGA or FPGA route...

MottZilla wrote:While it would be nice, there is certainly a point to be made if someone wants MMC5 for their game, which is look at games that use discrete logic like Castlevania, Battletoads, Mega Man, Contra, as well as games that use no mapper like Super Mario Bros. You don't need all that for your game to be fun.
True. But if a game concept is best realized via something like MMC5, I'd be foolish to dismiss it without a proper vetting. And when another game concept's summary is literally "A celebration of what could've been", I'm arguably obligated to pursue such leads.
tepples
Posts: 22345
Joined: Sun Sep 19, 2004 11:12 pm
Location: NE Indiana, USA (NTSC)
Contact:

Post by tepples »

Dr. Floppy wrote:True. But if a game concept is best realized via something like MMC5
Then it's also probably well realized on a platform that does what Nintendon't: Genesis, Super NES, Windows/Linux, or Android. And if you have two successful commercial projects behind you, you can even take it to a modern console, like how Grand Theftendo became Retro City Rampage.
User avatar
qbradq
Posts: 952
Joined: Wed Oct 15, 2008 11:50 am

Post by qbradq »

I had some success with XBox Live Indie Games. In terms of commercial viability it is a heck of a lot better than the NES scene (but nothing near Android or iOS). I don't think most folks here are trying to make a buck, it's more for the love of the thing.

Sure, I could take my retro graphics, shove them into a big 32-bit PNG, code the whole thing in C# and not have to worry about palette count and how much time I have to do collision detection, but it just wouldn't be as cool (or challenging), and it would not have that authentic soul. Then again it might actually see the light of day :D
Drag
Posts: 1350
Joined: Mon Sep 27, 2004 2:57 pm
Contact:

Post by Drag »

qbradq wrote:In terms of commercial viability it is a heck of a lot better than the NES scene (but nothing near Android or iOS). I don't think most folks here are trying to make a buck, it's more for the love of the thing.
It's still something you can put in your portfolio if you're looking to land an actual job at a game company (like I am). Coding in 6502 assembly gives you a pretty big advantage that less and less people have these days (since the NES/C64 is so old and "pointless"): experience with low-level programming and hand-optimizing your routines. :P
Dr. Floppy
Posts: 47
Joined: Mon May 09, 2011 7:02 pm

Post by Dr. Floppy »

Drag wrote:
qbradq wrote:In terms of commercial viability it is a heck of a lot better than the NES scene (but nothing near Android or iOS). I don't think most folks here are trying to make a buck, it's more for the love of the thing.
It's still something you can put in your portfolio if you're looking to land an actual job at a game company (like I am). Coding in 6502 assembly gives you a pretty big advantage that less and less people have these days (since the NES/C64 is so old and "pointless"): experience with low-level programming and hand-optimizing your routines. :P
Bingo! When people ask me what "program" I'm using to make my first game, I'm never quite sure what to say? I know "Translhextion" isn't the answer they're looking for...
tepples
Posts: 22345
Joined: Sun Sep 19, 2004 11:12 pm
Location: NE Indiana, USA (NTSC)
Contact:

Post by tepples »

Tell them what libraries you used, what tools you used for drawing CHR, whether you used asm6 or ca65, etc.
User avatar
qbradq
Posts: 952
Joined: Wed Oct 15, 2008 11:50 am

Post by qbradq »

If the goal is to get a job in the industry experience with more contemporary platforms such as iOS, Android and XNA are going to be much more attractive to prospective employers. NES dev has a coolness factor, but only for us nerds :D It has been my experience that the nerds rarely do the hiring.

Then again I'm a business programmer. So yea, grain of salt and all that.
Dr. Floppy
Posts: 47
Joined: Mon May 09, 2011 7:02 pm

Post by Dr. Floppy »

tepples wrote:Tell them what libraries you used, what tools you used for drawing CHR, whether you used asm6 or ca65, etc.
Exactly! I want to reward their interest with honest engagement, but I feel they'd be disappointed to learn that all I'm using is MSPaint / Tile Layer Pro for CHR, and Pen&Paper / Translhextion for PRG. ('Twas good enough for the professionals back in '85, 'tshould be good enough for a rank amateur such as myself.)

qbradq wrote:NES dev has a coolness factor, but only for us nerds Very Happy It has been my experience that the nerds rarely do the hiring.
No, we just do all the Making Stuff Happen™!

In the interest of full disclosure, I'm only doing this because the idea itself has enough of a stranglehold over me that I can't *not* do it. (If that makes any sense.) There's a story about a purple angelfish that needs to be told, and I'm the only one able to tell it... There's also a unique game mechanic I'm interested in executing, not to mention the allure of an 8-bit New Jack Swing soundtrack.
Last edited by Dr. Floppy on Fri May 20, 2011 12:51 pm, edited 1 time in total.
User avatar
qbradq
Posts: 952
Joined: Wed Oct 15, 2008 11:50 am

Post by qbradq »

You're coding your game in a hex editor? Wow, that is hard-core :D
Dr. Floppy
Posts: 47
Joined: Mon May 09, 2011 7:02 pm

Post by Dr. Floppy »

qbradq wrote:You're coding your game in a hex editor? Wow, that is hard-core :D
Thanx! Although I suspect it has more to do with me being a control freak than anything else...

On the plus side, I figure this is a good way to force myself to learn all this stuff (scrolling handlers, music engines, etc.) honestly. Once I've built an entire MMC5 game from the ground-up, I'll have more solid ground upon which to pursue the MMC7 Project.
Post Reply