Page 1 of 18

Perfect FDS 2C33 audio when not using actual FDS disks?

Posted: Tue Dec 23, 2014 8:20 pm
by cr4zymanz0r
Goal: A method to play FDS games with perfectly accurate 2C33 audio without using FDS disks (eliminating need for moving parts).

Basically, I'm chasing a perfect solution for playing FDS games that will work for years to come. Using the FDS drive with real disks works currently, but since there are moving parts it will undoubtedly wear out over time. Using original FDS disks also does not provide a way to play fan translations. FDS games can also be run from flashcarts, but the games that utilize the additional audio of the 2C33 chip do not sound correct. There's FDS Loader which is fine in theory, but requires a dedicated older computer with DOS and the correct parallel port capabilities to work which is far from ideal.

I have 3 ideas that I wonder if anyone has looked into or has enough technical knowledge to comment on the feasibility or work towards a solution:

1.) A modern way of loading FDS games straight to he RAM adapter. Basically, think of something like FDS loader but using modern hardware. Even more ideal would be a flash dongle (in place of flashcart) that connects to the FDS RAM adapter to load games to it, thus utilizing the actual 2C33 chip for audio. I doubt anyone is going to whip this up out of nowhere, but I didn't know if someone is already working on a solution like this that I'm unaware of.

2.) Integrate the 2C33 chip in a flash cart. I have no idea how feasible this is, but my thought was basically modding the flashcart to hijack the command to engage the FGPA-ized 2C33 and mod in the real 2C33 to be used. I don't know how much of this is internalized to the FPGA that would make it possible or impossible.

3.) Mod the 2C33 into the console itself. If #2 is not feasible, then I wonder it would be possible to install the 2C33 in the NES/Famicom itself. I'm not sure how it operates and if the signals it needs to engage can be grabbed from the cartridge pins.


I know some people will probably think this is pointless since they consider the audio rendered by flashcarts to be acceptable, but this is for my own persuit of perfection and I'm sure other people would like something similar to what I'm looking for.

Re: Perfect FDS 2C33 audio when not using actual FDS disks?

Posted: Tue Dec 23, 2014 9:33 pm
by lidnariq
The FDS adapter is supported by the TNS-HFC NSF playing cartridges (e.g. http://www2s.biglobe.ne.jp/~tns/nr26740601.html ).

The bandwidth of the FDS is only serial at about 70kbit/sec, so a microcontroller should be able to keep up. A few people have requested such a device in the past, but most english-speakers seem to prefer more conventional flashcarts to implementing a disk drive emulator.

Re: Perfect FDS 2C33 audio when not using actual FDS disks?

Posted: Tue Dec 23, 2014 9:59 pm
by cr4zymanz0r
lidnariq wrote:The FDS adapter is supported by the TNS-HFC NSF playing cartridges (e.g. http://www2s.biglobe.ne.jp/~tns/nr26740601.html ).

The bandwidth of the FDS is only serial at about 70kbit/sec, so a microcontroller should be able to keep up. A few people have requested such a device in the past, but most english-speakers seem to prefer more conventional flashcarts to implementing a disk drive emulator.
I'm not familiar with the TNS-HFC, and it's hard to tell a lot about it since the page is in Japanese. Will it actually load FDS games too, or it is it just for playing music and using extra audio chips in cartridges when doing so?

Re: Perfect FDS 2C33 audio when not using actual FDS disks?

Posted: Tue Dec 23, 2014 10:45 pm
by lidnariq
The latter. (NSF files being a format for storing NES/FC soundtracks ... and sometimes more)

Re: Perfect FDS 2C33 audio when not using actual FDS disks?

Posted: Wed Dec 24, 2014 7:29 am
by tepples
lidnariq wrote:The bandwidth of the FDS is only serial at about 70kbit/sec, so a microcontroller should be able to keep up.
Agreed. Porting FDS Loader to an MCU is the way forward for people uninterested in using an FPGA clone of the FDS synthesizer, such as people verifying whether the FPGA clone is accurate enough. I'm surprised some Arduino fan hasn't done it already.

Re: Perfect FDS 2C33 audio when not using actual FDS disks?

Posted: Wed Dec 24, 2014 8:46 am
by rainwarrior
I have an FDS with a non-functioning disk drive, so I've wanted a way to use it without the drive.

There is a parallel port FDS loader that connects directly to the RAM adapter and can load games that way. I bought one, but then I was never able to get a parallel port working (despite many attempts, and several useless hardware purchases).
http://www.famicomdisksystem.com/tutori ... ter-cable/

I've used a CopyNES to load a game into FDS RAM, but it was a convoluted process and I never made it into something easy to use. It completely bypassed the BIOS, just wrote directly to RAM, so it wouldn't be able to deal with disk loads/swaps.

I'd really love to find an alternative solution using the FDS loader cable. I am wondering if a Papilio or Arduino could handle it? I've never wanted to take the time to reverse engineer the FDS loader software to learn how the disk protocol works, though; that's the main thing stopping me.

Re: Perfect FDS 2C33 audio when not using actual FDS disks?

Posted: Wed Dec 24, 2014 8:49 am
by tepples
FDS protocol is documented, down to the low level. The on-disk format is MFM, just as on Amiga floppies, PC floppies, and high-density Mac floppies, just with variable-length sectors (one as long as each file, instead of a fixed 512 bytes) and one long spiral track like a CD (instead of a surface divided into cylinders).

Re: Perfect FDS 2C33 audio when not using actual FDS disks?

Posted: Wed Dec 24, 2014 8:55 am
by rainwarrior
Okay, that's good stuff to tuck away in case I ever want to do it. (I probably won't, though, for the same reason as stated. Too much time required vs. too little interest.)

Re: Perfect FDS 2C33 audio when not using actual FDS disks?

Posted: Wed Dec 24, 2014 9:11 pm
by ccovell
There are also these: http://bakutendo.blog87.fc2.com/blog-category-24.html

Image

Though I don't think they are for sale.

Re: Perfect FDS 2C33 audio when not using actual FDS disks?

Posted: Fri Dec 26, 2014 3:07 am
by MP2E
ccovell wrote:There are also these: http://bakutendo.blog87.fc2.com/blog-category-24.html

... *snip* ...

Though I don't think they are for sale.
A shame too, I would be very interested in an accurate replacement of the famicom disk system. I love the real thing, but I too am concerned that it will not last forever

Re: Perfect FDS 2C33 audio when not using actual FDS disks?

Posted: Fri Dec 26, 2014 5:44 am
by Ratix
rainwarrior what type of computer did you use that had a parallel port still? if the computer used is at least a socket 7 or below it should work no problem. i've went through 2 cables and both bit the dust when i tried to convert the cables to directly connect them. trial and error for me at the time. i just lost interest when the last one broke on me.

It was great to hear what I missed out on coming from the actual system. like the real sword sounds from zelda and noises from the creatures from metroid.

Re: Perfect FDS 2C33 audio when not using actual FDS disks?

Posted: Fri Dec 26, 2014 7:51 am
by rainwarrior
I don't have any computer with a parallel port. I tried two different PCIe parallel port cards, but couldn't get either of them to function outside of Windows (FDS loader need to be run in DOS). I also tried a couple of USB to Parallel thingies for a laugh. Obviously these weren't up to snuff either.

At this point I'd had enough, and gave up on the whole thing forever.

Re: Perfect FDS 2C33 audio when not using actual FDS disks?

Posted: Fri Dec 26, 2014 5:00 pm
by Ratix
i wouldn't give up all you need is old computer. laptops will not work either. everything is explained in the documentation for FDSLOADR from what i read when i was interested in it.
what do i know anyway. sometime in the future maybe it would become of great interest again?

Re: Perfect FDS 2C33 audio when not using actual FDS disks?

Posted: Fri Dec 26, 2014 8:46 pm
by rainwarrior
Ratix wrote:i wouldn't give up
I wasn't telling you to. Feel free to pursue this however you like. As for me, no I don't need anything.

If I were to attempt it again, I'd rather buy something otherwise-useful and compact like an Ardiuno than an old computer.

The reason I'm not really interested anymore is that I only got the FDS to reverse engineer its audio hardware, which I managed to do without the parallel port anyway, and at this point I have no open questions about it. There's really nothing I need to know about the disk drive that would help me with the audio, so I can't imagine spending any further time on the loading problem.

Re: Perfect FDS 2C33 audio when not using actual FDS disks?

Posted: Tue Mar 10, 2015 7:06 am
by loopy
cr4zymanz0r wrote:Goal: A method to play FDS games with perfectly accurate 2C33 audio without using FDS disks (eliminating need for moving parts).

Basically, I'm chasing a perfect solution for playing FDS games that will work for years to come. Using the FDS drive with real disks works currently, but since there are moving parts it will undoubtedly wear out over time. Using original FDS disks also does not provide a way to play fan translations. FDS games can also be run from flashcarts, but the games that utilize the additional audio of the 2C33 chip do not sound correct. There's FDS Loader which is fine in theory, but requires a dedicated older computer with DOS and the correct parallel port capabilities to work which is far from ideal.

I have 3 ideas that I wonder if anyone has looked into or has enough technical knowledge to comment on the feasibility or work towards a solution:

1.) A modern way of loading FDS games straight to he RAM adapter. Basically, think of something like FDS loader but using modern hardware. Even more ideal would be a flash dongle (in place of flashcart) that connects to the FDS RAM adapter to load games to it, thus utilizing the actual 2C33 chip for audio. I doubt anyone is going to whip this up out of nowhere, but I didn't know if someone is already working on a solution like this that I'm unaware of.
Your post inspired me to go ahead and build one. It's a drive replacement that you flash disk images to. There's still some work to do, but you can see game loading works. It also works in the other direction, dumping disks by talking directly with the disk drive.

Image Image