Myself086 / Project-Nested

MIT License
493 stars 17 forks source link

Pal Nes games begs to be repitched to sound right on nested #58

Open johneymute opened 2 years ago

johneymute commented 2 years ago

In some instances i only got the pal version of a nes rom or only the pal version of a certain nes game will work on nested (yet,and yes they do run even amezingly faster on a ntsc snes,HOWEVER i really don’t like that most pal nes games are repitched for the pal nes,as a result they do sound too high pitched on snes,even on a pal snes,now i understand that most pal games were repitched to accomodate for the slower pal nes,but once running on a ntsc nes they sound too high pitched, But maybe nintendo also changed the code for those chromaticle pitches of pal nes systems,because on the genesis and master system when you run a pal game on a ntsc system of them,they just still do contain the same pitch notes but it only runs faster,and vice versa ,yes i know that those systems are different animals then the nes but both soundchips are still anologue so i really don’t know otherwise why it is not an issue on sega systems, Now i can imagine that programming nested to take pal aside from ntsc mode into account trough a pal button to tell nested to repitch the snes sounchip to a lower pitch and speed to accound for this,might be a dounting task,or pal games may be patched to correct their pitch with nested in mind to account for this,sure i can imagine that it is yet not something important on your agenda,but it would be a welcome option if nested could account for pal games in one way or another😁

like if the snes soundchip could repitch it’s audio while the audio is already synthesed,then nested should be only tell to switch to lower pitch in pal mode,BUT if you cannot simply do that like you can do in audacity,then in such case you should tell nested to interpret note C as note B and note B should be interpretted as note A etc,,, once in pal mode,that would be interesting,and het if a header in a game could tell the emulator whether it’s pal or ntsc,then nested could be programmed to do it even automatically for you😁

Myself086 commented 2 years ago

I didn't read the whole thing but PAL has a different pitch because the frequencies are based on the CPU clock. The CPU clock is based on the TV signal. On NTSC, it's exactly 4 dots on screen per CPU cycle. Since PAL has different timings, it throws the hardware design out the window.

It's just a matter of adding a setting and creating different lookup tables for PAL frequencies.