Emulating the 64DD on a flashcart for N64?

Discussion in 'Nintendo Game Development' started by sonicdude10, Dec 7, 2012.

Tags: Add Tags
  1. sonicdude10

    sonicdude10 So long AG and thanks for all the fish!

    Joined:
    Jan 17, 2012
    Messages:
    2,573
    Likes Received:
    29
    I've been wondering this for a while now. Would this be possible? I do know the system had a Zip like disk with 64 MB of space for the game code itself and 38 MB of writable space for whatever. (It was probably just a re-packaged Zip 100 disk...) Now the few games that came out on it were standalones and probably would run with the current chips used in the ED64 and 64Drive (64 MB or 512 Mb of ROM space) but that leaves the question of that 38 MB savable space not to mention FX Zero since the 64DD game was a track builder extension to be used in conjunction with the game cart.

    Any thoughts or ideas or am I talking out my ass again here?
     
    Last edited: Dec 7, 2012
  2. MasterOfPuppets

    MasterOfPuppets Site Supporter 2013

    Joined:
    Apr 6, 2010
    Messages:
    549
    Likes Received:
    5
    The entire disk was 64MB. From there, the developer could decide from 7 disk types how much room to allocate to ROM and writable memory.

    Also, I believe that expansions would only be able to be used with a 64drive due to its ability to load data from the memory card while running code. Don't quote me on this though.
     
    Last edited: Dec 7, 2012
  3. Fandangos

    Fandangos <B>Site Supporter 2013</B>

    Joined:
    Sep 19, 2012
    Messages:
    604
    Likes Received:
    23
    I asked this almost a year ago to marshall and he said: "it would be possible with herculean effort".

    So I would give up hope, unless Ozone make some really good progress.
     
  4. sonicdude10

    sonicdude10 So long AG and thanks for all the fish!

    Joined:
    Jan 17, 2012
    Messages:
    2,573
    Likes Received:
    29
    DAMN...

    I was hoping for better news.

    I mean if the upcoming Famicom/ NES flashcarts from RAMFactory and KRIKzz can emulate the Famicom DD (I know the Invite NES/ Famicom from RAMFactory can do so) why can't we get that for the N64? Surely with a little coding work it could be loaded up like a home-brewed game. Might need to swap in a 128 MB (1024 mb) chip for the games like FX Zero that had the base cart game and the DD game expansion that ran simultaneously. The other DD expansion games like the Mario paint ones might take a bit more finagling to get working since the base game was DD based too and required swapping the disks out. Of course the fact the 64 Drive allows for real time code updates can help get around the lack of space for the cart/ DD game combos.
     
  5. OzOnE

    OzOnE Site Supporter 2013

    Joined:
    Nov 10, 2011
    Messages:
    538
    Likes Received:
    173
    @sonicdude - emulating the 64DD on a Flashcart is basically one-and-the-same as getting the FPGA version working.
    ie. there's nothing inherent about a flashcart that can help make this possible. We still need proper (full) dumps first, then get the FPGA emulation to work.

    At that stage, the code could then be ported to an FPGA based Flashcart (as most of them use).

    For disk-only games, they could be emulated directly from SDRAM, but for cart + disk games you might need to do this...

    The cart part for things like F-Zero would still be emulated from SDRAM as normal, then the 64DD image could be streamed from SD card since it doesn't require the faster "instant" access of the cart.

    I haven't played with the 64DD USB interface for about two weeks as we're looking to move house, but I'm hoping to get proper dumps working soon.
    It seems like Kammedo is one of the few people to have extracted the full system areas, and he's been helping me quite a lot with the code etc.

    If I can get full dumps made successfully, then we would be about 80% of the way to hardware emulation.
    I can already access the first sector of any block I want (including the system blocks), but I now need to be able to read the full 85 sectors in each block.

    I'll be working on this again very soon. The interface to the FPGA couldn't be simpler, it's just a short piece of IDE cable soldered to an old cart PCB. :tranquillity:
    The FPGA board is a cheap Chinese one with USB, and only cost around £40. It's now just up to coding the Windows software to do the full dumps.

    Have to go now, but will chat more later. :eek:nthego:
    (We have another house viewing today.)
     
  6. Fandangos

    Fandangos <B>Site Supporter 2013</B>

    Joined:
    Sep 19, 2012
    Messages:
    604
    Likes Received:
    23
    Nice going Ozone.

    I'm at the same process as you, I'm getting married and we're looking for a new house. This can be very time consuming.
    Hope you can be back on track soon.

    And hope you can get a very nice house, choose well :)
     
  7. OzOnE

    OzOnE Site Supporter 2013

    Joined:
    Nov 10, 2011
    Messages:
    538
    Likes Received:
    173
    Thanks, Fandangos!

    Congrats on getting married too. :love-struck:

    Well, technically I still live at home (I know, tragic). lol
    We're actually looking to downsize, but I only really "live" in one big room anyway.

    I've cleared a bit more work space now, so I might have better luck with the 64DD / DC projects until we move.
    (not sold the house yet, but hoping to soon)

    Cheers,
    OzOnE.
     
    Last edited: Dec 8, 2012
  8. Rcj8993

    Rcj8993 Newly Registered

    Joined:
    Apr 30, 2013
    Messages:
    4
    Likes Received:
    0
    it should be possible, ive seen videos of people using the IPL_(J).n64 rom dump of the N64DD bios to work on Project 64 and other emulators, so Technically... it is possible.
     
  9. OzOnE

    OzOnE Site Supporter 2013

    Joined:
    Nov 10, 2011
    Messages:
    538
    Likes Received:
    173
    Hi, Rcj,

    Yes, technically it's possible, but being able to run the 64DD BIOS on an emulator unfortunately isn't quite enough by itself. :smile-new: ....

    http://www.assemblergames.com/forums/showthread.php?36210-Getting-a-64DD-unit-for-emulation-research


    I'm playing with the Dreamcast thing again, but still can't think of a decent way of debugging it unless I can test the Verilog code on an emulator somehow?

    Not sure I'll ever finish the 64DD or DC projects though.
    I got quite close with the 64DD, but really difficult to debug the DC on the real hardware.

    OzOnE.
     
  10. Rcj8993

    Rcj8993 Newly Registered

    Joined:
    Apr 30, 2013
    Messages:
    4
    Likes Received:
    0
    well they do make debugging utilities for consoles, I posted in a thread somewhere about one for the N64, but it has yet to be approved by an admin. also I sent you a message OzOnE. I included a link where you can obtain the IPL rom dump of the N64DD Bios, and of both the N64DD commercial and Developers kit bios. I hope you can make good use of them for your research, I really want to play doushin the giant (not the sequel where you have magic piss and whatnot LOL weird huh...)
     
  11. Fandangos

    Fandangos <B>Site Supporter 2013</B>

    Joined:
    Sep 19, 2012
    Messages:
    604
    Likes Received:
    23

    This phrases resume the feeling I get reading ozone posts. He's almost there... but there's a rock in the way.
    Really hope you can accomplish the 64DD.
     
    Last edited: Apr 30, 2013
  12. Zoinkity

    Zoinkity Site Supporter 2015

    Joined:
    Feb 18, 2012
    Messages:
    499
    Likes Received:
    108
    Okay, let me explain from the software side of things. It's a little clearer when you're only thinking about what the system expects.

    The IPL is little more than a ROM that's embedded on the 64DD. It isn't on a disk, so you read it like a cartridge. The only difference (that matters) is where you read it from. Getting it to run on an emulator is as difficult as changing some addresses and keeping it from checking hardware you don't have.

    The disk system though doesn't work that way. In a combo game you'll have three different loaders for data; one reads nothing but cartridge data, with the good, safe address + size method; one does the same for the IPL; and the other makes requests for loading data into a buffer from the disk. This is an oversimplification, but a decent one.

    The annoying part is that in order to read a 'disk', you have to fake the way that it loads data. First, you need some registers that act like the registers on the disk system and read/write appropriate data. Then, you need something to interpret that data and turn it into addresses/sizes for the big chip of memory you have attached to it, loading data to memory.
    There's some other concerns, like special additional data (headers, for instance), which get to be faked in a totally different way.

    So, case and point here is that you can't just have a big eeprom you RW to. You'd also need either a watchdog program or some logic built in to handle IO requests. The big concern is not everything the system expects to know is understood yet.

    [edit]
    Come to think of it, you could hook a substitute routine to force a different loading mechanism, applying a case-by-case hack to each game. That's not technically emulation though ;*) However, it would make things like the F-Zero X expansion work on console, immediately, using something like a Dr64Jr., presuming you upload the disk contents; alter the disk ROM to boot to the actual start boot; auto-confirm any requests to check the disk header; change the disk loader to convert LBAs to addresses, reading from normal cart space; changing normal cart reads, reading from the port on the back instead of the normal cart addresses; and never, ever resetting ;*)
     
    Last edited: May 10, 2013
  13. Faded

    Faded <B>Site Supporter 2014</B>

    Joined:
    Jan 4, 2013
    Messages:
    76
    Likes Received:
    0
    As of right now, the only way to play the original Doshin the Giant is through either importing the game for GameCube (good luck, I've seen them fetch a pretty penny) or playing it through emulation if your computer can handle it. You really aren't missing much though.
     
  14. sonicdude10

    sonicdude10 So long AG and thanks for all the fish!

    Joined:
    Jan 17, 2012
    Messages:
    2,573
    Likes Received:
    29
    I thought this topic was dead. So it seems to be a bit harder than what I thought. Take more than new firmware/ modded OS for flashcart and modded 64DD BIOS. hopefully someone will make it happen. I'd really like to mess with the FX Zero track builder expansion without having to import a 64DD and game. No gots the $$$ for that...
     
    Last edited: Jun 10, 2013
  15. Evotistical

    Evotistical Robust Member

    Joined:
    May 25, 2011
    Messages:
    261
    Likes Received:
    4
    You can also use wode and play it on wii, (or a moded gamecube)
     
sonicdude10
Draft saved Draft deleted
Insert every image as a...
  1.  0%

Share This Page