It is currently Fri Nov 24, 2017 7: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  [ 9 posts ] 
Author Message
PostPosted: Wed Mar 23, 2016 12:42 pm 
Offline

Joined: Wed Mar 23, 2016 12:27 pm
Posts: 10
Hi guys,

Decided to join this forum since I've been learning 6502 the passed few weeks (hacking mario bros 3 and zelda 1 has been quite fun).

I have come here to ask a question that has been bothering me for a very long time... Do you think it's possible to make a reproduction of this game? It's probably TOUGH or impossible, and I'll try to explain despite me not being adept at reproducing.

Digital Devil Monogatari: Megami Tensei
Game in question: http://bootgod.dyndns.org:7777/profile.php?id=2308

Translation: http://www.romhacking.net/translations/2287/

So, I suppose I may understand how the development of a repro works, I think. Find a matching mapper that supports a high enough CHR/PRG rom, etc. That's all I know at least.

According to bootgod, Digital Devil Monogatari has mapper 76, which is unique to that game only. Mapper 76 supports a maximum CHR or 128kb, and a maximum PRG of 128kb.

At least according to nes dev wiki, Mapper 76 seems to be derivative of mapper 206. Mapper 206 has a max capacity of 128KB PRG, and a max capacity of 64kb CHR. Mapper 76 though sacrifices something from Mapper 206 I believe to increase its CHR to 128kb, allowing for 256kb total memory.

http://wiki.nesdev.com/w/index.php/INES_Mapper_206 -> 206
http://wiki.nesdev.com/w/index.php/INES_Mapper_076 -> 76

So, with that said, I believe the only suitable donor for a translation of Digital Devil Monogatari: Megami Tensei would quite literally only be the the game itself: Digital Devil Monogatari Megami Tensei.

The hard part I think though, is that the translation actually expands the rom size. Specifically its PRG gets doubled.

The patch will make the rom a 256/128 PRG/CHR respectively.

So, now the problem I see myself is that the only suitable donor cart we could use is no longer suitable, as mapper 76's maximum supported PRG is 128kb.

Now we're entering territory that goes beyond the scope of what I know heh. My question to you, was if you'd have any idea how to make this work?

I've tested the translated rom on Krikks'z Everdrive-N8 and it works, but I'm looking to specifically have a reproduction. It feels a lot better to boot into the game instead of booting into an OS where I can browse folders to boot my game. Heck, I'd even settle for Everdrive having an option to boot straight to my game, but Krikkz has refused to add that option unfortunately =|

Heck, you know... Mapper 76 derives from 206, but 206 apparently derives from MMC3. I'm reading anyway that 206 is a stripped down MMC3.

http://wiki.nesdev.com/w/index.php/MMC3

MMC3 says it's got a PRG capacity of 512kb and a CHR capacity of 256, which is perfect, but I think I've said too much now. I don't know enough to know whether MMC3 could actually be used for this game or not.

Also, of course, I have no experience whatsoever doing this kind of thing. I've had a few repro sellers attempt it for me but they failed, except for one person who showed me just a tiny bit of a progress and has never messaged me back. I think he's been busy so I just gave up on him. For whomever could achieve this, I would love to learn the challenge and would also gladly throw my green paper at you.

My apologies for writing so much. This is something I've wanted for a very long time and I figured I'd drop by here to get definitive answers on whether its possible or not. Thanks for reading.


Top
 Profile  
 
PostPosted: Wed Mar 23, 2016 1:09 pm 
Offline

Joined: Sun Apr 13, 2008 11:12 am
Posts: 6454
Location: UK (temporarily)
So, N108 (m206) supports 8+8+16F PRG banking, to a maximum of 128 KiB. So does the MMC3, as long as the values written to $8000 have the MSbits clear.

However, DDS:MT (m76) only supports 4x2 CHR banking, which is different from almost all other mappers.

You should be able to rewire an MMC3 in the same way as the N108 is rewired on m76, to get an end result that supports 512 KiB each PRG and CHR.

Alternatively, you could mapper hack the translation to just target MMC3 (by writing to CHR bank registers R0, R1, R2+R3, R4+R5 instead of just R2, R3, R4, R5)


Top
 Profile  
 
PostPosted: Thu Mar 24, 2016 11:21 pm 
Offline

Joined: Mon Nov 30, 2015 9:15 pm
Posts: 6
lidnariq wrote:
Alternatively, you could mapper hack the translation to just target MMC3 (by writing to CHR bank registers R0, R1, R2+R3, R4+R5 instead of just R2, R3, R4, R5)



This could actually work indeed. It already runs on an MMC3 board! It just needs software modification to clear up the CHR corruption. I have a nice label to share with OP if he manages this.

I attempted to make it look like a VHS tape from the 90's haha. Especially like the Logo. Image


Top
 Profile  
 
PostPosted: Sat Mar 26, 2016 1:56 pm 
Offline

Joined: Wed Mar 23, 2016 12:27 pm
Posts: 10
That is delicious!

Though, I would not be able to do this myself. I'm wondering if anyone else could, since I am not adept at this at all ;_;


Top
 Profile  
 
PostPosted: Sun Mar 27, 2016 12:59 pm 
Offline

Joined: Sun Apr 13, 2008 11:12 am
Posts: 6454
Location: UK (temporarily)
At some point in the future, I might see about mapper hacking the translation. Right now I'm just not feeling up to it, so no promises.

The rewiring instructions to inflate the MMC3 in the same way as in Mapper 76 are straight-forward, if full of a bunch of steps:

* Disconnect MMC3 PPU A12 from card edge and tie high
* Rewire MMC3 PPU A10, A11 to instead PPU A11, A12
* Rewire MMC3 CHR A10..A15 to instead CHR A11..A16
* Connect PPU A10 to CHR A10

If that doesn't work, additionally try the following:
* Disconnect MMC3 /IRQ from card edge (disable /IRQs, since N108 doesn't support IRQs)
* Disconnect CIRAM A10 from MMC3 and tie to PPU A10 (hard-wired mirroring, since N108 doesn't support changing mirroring)
* Disconnect MMC3 CPU D6,D7 from card edge and tie low (disable MMC3 PRG and CHR layout controls)


Top
 Profile  
 
PostPosted: Wed Oct 04, 2017 5:55 pm 
Offline
User avatar

Joined: Fri May 21, 2010 4:10 pm
Posts: 279
I have been doing some digging on this topic and trying to get this to work in Nestopia. Would increasing some some of the PRG and CHR capacity work? I know this isn't a ticket forum for nestopia and moreso in hardware, but it seems like it might be an easier fix and i dont want to clog up the forums with a thread for this.

Any input would be appreciated.

According to the patch notes:

======================================================
Known Issues
======================================================
This patch is not compatible with the latest official
release of Nestopia and possibly other emulators.
To our knowledge this is not a problem with our translation,
but rather a limitation with the emulator's mapper system.
Megami Tensei's mapper is a unique mapper made solely for
this game, but it appears to be basically an MMC3 mod given
the many similarities between the two. Therefore it is logical
to assume it possesses the same capabilities. The game has
been tested on an NES with a Powerpak, so you can play the
game on an NES if you want.


Top
 Profile  
 
PostPosted: Wed Oct 04, 2017 6:23 pm 
Offline
User avatar

Joined: Fri May 21, 2010 4:10 pm
Posts: 279
Wow, just fixed it. Nevermind. That was easy. :)


Top
 Profile  
 
PostPosted: Wed Oct 04, 2017 6:27 pm 
Offline

Joined: Sun Apr 13, 2008 11:12 am
Posts: 6454
Location: UK (temporarily)
A mapper 76 game with more than 128 KiB PRG and CHR is not supported by the original hardware and thus should not be supported by emulators.

It's the same argument as why MMC3 shouldn't support 1 MiB PRG.

To address this bit:
To our knowledge this is not a problem with our translation, but rather a limitation with the emulator's mapper system. Megami Tensei's mapper is a unique mapper made solely for this game, but it appears to be basically an MMC3 mod given the many similarities between the two.
And that's true, it is a modified MMC3 but it's a modified MMC3 that can't possibly support more than 128KiB PRG and CHR.

So, yes, it is a problem with their translation, and mapper hacking it to target an ordinary MMC3 instead of defining new fictitious hardware would be the correct solution.

The game has been tested on an NES with a Powerpak, so you can play the game on an NES if you want.
An error in being too permissive in one emulator's implementation of a mapper—and that's exactly what the PowerPak is—does not constitute an error in failing to be overly permissive by other emulators.


Top
 Profile  
 
PostPosted: Wed Oct 04, 2017 7:13 pm 
Offline
User avatar

Joined: Fri May 21, 2010 4:10 pm
Posts: 279
Yes, well put lidnariq. :beer: The fix i was thinking of was more of leave the mapper alone and simply just add a database entry for it based on crc so both games will run and the original will still run accurately.

EDIT**

Looks like that will not work either since the nst.board is coded to not go over that amount. Even when i add the entry the board code has it at 128 and it still cpu jams. It sucks, because this translation is fun to play, but i don't know if it's worth it at the cost of accuracy. :cry: Decisions, decisions, i guess.


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

All times are UTC - 7 hours


Who is online

Users browsing this forum: No registered users and 1 guest


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