from NES CPU pin 1, can we extract both squares individually

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

Moderators: B00daW, Moderators

Post Reply
ReverendSA
Posts: 25
Joined: Wed Mar 23, 2016 12:27 pm

from NES CPU pin 1, can we extract both squares individually

Post by ReverendSA » Wed Jul 24, 2019 5:38 pm

or can it only be extracted as both squares? the same could be asked about pin 2. would it be possible to extract all 3 channels individually?

ccovell
Posts: 1006
Joined: Sun Mar 19, 2006 9:44 pm
Location: Japan
Contact:

Re: from NES CPU pin 1, can we extract both squares individu

Post by ccovell » Wed Jul 24, 2019 6:07 pm

Not possible, without actually hacking the game ROM.

User avatar
koitsu
Posts: 4215
Joined: Sun Sep 19, 2004 9:28 pm
Location: A world gone mad

Re: from NES CPU pin 1, can we extract both squares individu

Post by koitsu » Wed Jul 24, 2019 6:24 pm

If you're trying to make a stereo mod: don't. None of the music was composed/mixed with such in mind. Mono -- deal with it.

NSF players (on Windows, etc.) are a different matter. You can certainly extract individual channels there, if you wish to do so. But this is obviously not using the NES CPU/hardware.

ReverendSA
Posts: 25
Joined: Wed Mar 23, 2016 12:27 pm

Re: from NES CPU pin 1, can we extract both squares individu

Post by ReverendSA » Wed Jul 24, 2019 6:46 pm

ccovell wrote:Not possible, without actually hacking the game ROM.
I see. thank you for letting me know.
koitsu wrote:If you're trying to make a stereo mod: don't. None of the music was composed/mixed with such in mind. Mono -- deal with it.

NSF players (on Windows, etc.) are a different matter. You can certainly extract individual channels there, if you wish to do so. But this is obviously not using the NES CPU/hardware.
lol i never said that I was going to do a stereo mod.

User avatar
koitsu
Posts: 4215
Joined: Sun Sep 19, 2004 9:28 pm
Location: A world gone mad

Re: from NES CPU pin 1, can we extract both squares individu

Post by koitsu » Wed Jul 24, 2019 6:56 pm

Pretty sure I started my line with the word if... :-)

But you're effectively wanting the same thing as what stereo modders always seem to want but can't get: to isolate all 5 channels for use in one way or another: viewtopic.php?p=241137#p241137

So with the NES itself, no, can't be done. But if you're wanting NES music split up on a per-channel basis, an NSF of the game(s) you like + an NSF player can do that. A Rasberry Pi with some added circuitry (since it only has digital output via GPIO pins, and you probably want analog?) + slightly modified NSF player code (to send each channel's data to a separate pin) should work. I mention this because your other thread already is discussing use of hardware (re: pots, which are just variable resistors).

lidnariq
Posts: 8777
Joined: Sun Apr 13, 2008 11:12 am
Location: Seattle

Re: from NES CPU pin 1, can we extract both squares individu

Post by lidnariq » Wed Jul 24, 2019 8:28 pm

The math to identify exactly two pulse waves, out of a very limited set of volumes, duty cycle, and pitch, is actually really straightforward.

But it's also completely ridiculous. It would be computationally cheaper to emulate the NES than to do this math.

User avatar
Fisher
Posts: 989
Joined: Sat Jul 04, 2015 9:58 am
Location: -29.794229 -55.795374

Re: from NES CPU pin 1, can we extract both squares individu

Post by Fisher » Thu Jul 25, 2019 10:55 am

I remember to have seem sometime ago a video of a guy that claimed to have done just that.
Unfortunately the video was removed, maybe it was fake?

I think the Retrousb AVS can do that, but it seems to be a NES on a FPGA.
Maybe if someone implements a full NES CPU on FPGA each channel can have it's own output pin, but it doesn't seems much practical nor straight forward.

Edit: Just in case someone is interested in the thread I posted the (now broken) link: https://forums.nesdev.com/viewtopic.php?f=6&t=16477

User avatar
Ben Boldt
Posts: 412
Joined: Tue Mar 22, 2016 8:27 pm
Location: Minnesota, USA

Re: from NES CPU pin 1, can we extract both squares individu

Post by Ben Boldt » Fri Jul 26, 2019 12:45 pm

koitsu wrote:If you're trying to make a stereo mod: don't. None of the music was composed/mixed with such in mind.
Wholeheartedly agree with this statement. It is one of those things that seems like a cool idea but it just doesn't work. The last version of RockNES by Richard Bannister on the Mac forced stereo, it wasn't even an option to go back to mono, and it really, really sucked.

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

Re: from NES CPU pin 1, can we extract both squares individu

Post by Memblers » Sat Jul 27, 2019 12:27 am

ReverendSA wrote:
ccovell wrote:Not possible, without actually hacking the game ROM.
I see. thank you for letting me know.
It depends on the game, but I think in a lot of cases the hack might be fairly easy. I think many (most?) games only write to $4015 (channel enable) in a couple places. Games using DPCM might be different case though. But they'll write zero to it at reset, then $0F when enabling the audio. You could then make a Game Genie code to change that $0F, and enable/disable whichever channels you want. If you want to do it with an original cart.

Post Reply