C64Nano icon indicating copy to clipboard operation
C64Nano copied to clipboard

Video and audio problems

Open vanfanel opened this issue 1 year ago • 2 comments

Hi @vossstef!

I could finally test the latest core version on the Tang Nano 20k after flashing the BL616 with the latest firmware, I'm having A LOT of fun with it!

However, I've noticed some video & audio problems:

-If Settings->Screen is set to Wide, there is no HDMI audio. Wide is needed for correct aspect ratio on modern 16:9 monitors.

-If Settings->Screen is set to Wide, screen is not centered: it's displaced towards the left side of the screen.

-SID audio doesn't match the real C64 or the MiSTer core. For example, try Tim Follin's Ghouls'N Ghosts tittle screen music: in both 6581 and 8580 modes, with or without DIGIFIX, it doesn't sound correct (it sounds correct on the MiSTer core). This is how it sounds on real hardware and on the C64 MiSTer core: https://www.youtube.com/watch?v=wz36JWHTk-A Note this music is perhaps the definitive C64 audio test: only the C64 MiSTer core and real C64 passes this hard test :) Are filters supposed to be implemented? Maybe it's simply filters being missing at this point?

vanfanel avatar May 17 '24 16:05 vanfanel

Hi @vossstef!

I could finally test the latest core version on the Tang Nano 20k after flashing the BL616 with the latest firmware, I'm having A LOT of fun with it!

However, I've noticed some video & audio problems:

-If Settings->Screen is set to Wide, there is no HDMI audio. Wide is needed for correct aspect ratio on modern 16:9 monitors.

-If Settings->Screen is set to Wide, screen is not centered: it's displaced towards the left side of the screen.

-SID audio doesn't match the real C64 or the MiSTer core. For example, try Tim Follin's Ghouls'N Ghosts tittle screen music: in both 6581 and 8580 modes, with or without DIGIFIX, it doesn't sound correct (it sounds correct on the MiSTer core). This is how it sounds on real hardware and on the C64 MiSTer core: https://www.youtube.com/watch?v=wz36JWHTk-A Note this music is perhaps the definitive C64 audio test: only the C64 MiSTer core and real C64 passes this hard test :) Are filters supposed to be implemented? Maybe it's simply filters being missing at this point?

Hi, so far i didn't focus too mich on 16:9 but will have over time a Look at it. Concerning the Mister SID i hat a lot of Compiler Problems and therefore picked the Mega65 SID variant. Didn't know those mentioned game as reference but checked some rather New Demos that sounded about correct to my ears. Also the dual sid in Primer25k looked to me correct. Good news is that i found a lot of linting errors in the Mister sid and got it fixed and running with the Gowin IDE. Will check with that your game for Sound differences and maybe swap.

vossstef avatar May 17 '24 20:05 vossstef

@vossstef The fact that you got the MiSTer SID working on the Gowin IDE is fantastic!

If you test Ghouls'n Ghosts, please use original 6581 SID, since the game was designed with that SID variant in mind (all Tim Follin soundtracks are meant to be played on a 6581 since that's what Tim had at home back in the day, apparently).

vanfanel avatar May 17 '24 21:05 vanfanel

@vanfanel may i ask you a question... Is in a MISTer FPGA core the SID Filter Option valid for 6561 or both 6561 and 8580 ?

vossstef avatar May 22 '24 20:05 vossstef

@vossstef Good question. In MiSTEr C64 core, SID Filter option is only available for 6581, but not for 8580. As soon as 8580 SID is selected, SID Filter option becomes greyed out. I have recorded a video so you can see it better.

https://github.com/vossstef/tang_nano_20k_c64/assets/837585/8826f7b2-fe06-4218-8849-284b405ab3e9

vanfanel avatar May 23 '24 13:05 vanfanel

@vanfanel i created a new branch for testing and dropped the tang_nano_20k_c64.fs file and the needed misterynano_fw_bl616.bin You will find all here: https://github.com/vossstef/tang_nano_20k_c64/tree/55-tape-sound-and-userport-uart-option

please check Cartridge and SID and give feedback. Big Thanks for help !

Changes: SID from MISTer (incl. Filter Options) Cartridge fixed (MISTer) RS232 UART Tape Sound I was not able to detect sound changes while playing around with the SID Filters. Maybe you have more luck.

vossstef avatar May 23 '24 20:05 vossstef

@vossstef I tested the branch: https://github.com/vossstef/tang_nano_20k_c64/tree/55-tape-sound-and-userport-uart-option

...And I must say it's PERFECT now. Both 6581 and 8580 sound exactly like the MiSTer SID, which means perfect C64 sound (or as perfect as possible!).

I tested many many games (specially the fantastic 6581 OSTs from the 80's) and 8580-heavy demos, and I can't tell this C64 core audio from the real machines now.

So please, use this new SID on the main branch! It's simply perfection! Thanks for making this, really! :)

vanfanel avatar May 24 '24 16:05 vanfanel

I am so grateful for this! Perfect SID means a lot to me, this chip had a truly magical sound...

vanfanel avatar May 24 '24 16:05 vanfanel

Hi @vanfanel , i created a proposal for a new release with new features: New features:

  • 2nd SID option (Stereo) also for TN20k
  • SID Filter options : Follin, Galway, Average, Strong, Extreme not yet working: Turbo-232 serial Interface preparations

Bugfixes:

  • digital Joystick DB9 fixed
  • DualShock Paddle Emulation fixed pls. flash new misterynano fw and new fpga bitstream in branch https://github.com/vossstef/tang_nano_20k_c64/tree/63-porting-of-latest-redip-sid-pipelining-mode-for-tn20k-dual-sid-usecase pls report any issues and many thanks for checking . thx !

vossstef avatar Jun 11 '24 20:06 vossstef

@vossstef I have flashed the latest .fs and .bin, but there's some problem with the bl616 fw bin. I am flashing exactly this file: https://github.com/vossstef/tang_nano_20k_c64/raw/63-porting-of-latest-redip-sid-pipelining-mode-for-tn20k-dual-sid-usecase/misterynano_fw_bl616.bin ...But it's missing all SID options. Maybe you uploaded the wrong file? An old version maybe?

vanfanel avatar Jun 11 '24 22:06 vanfanel

@vanfanel just added again the firmware and fw.ini Would be glad if you could check SID sound. SID Filter settings like 'exteme' i checked with Ghosts_Goblins and there is a difference now. Not sure was my previous MISTer port behaving like that. Do you know? Found some dual SID $D420 music and that seem to work. Hope to hear from you soon. a big thx already !

vossstef avatar Jun 12 '24 17:06 vossstef

@vossstef With this new .bin, I could finally test the new SID options.

The only filter setting that sounds correct to me is "Follin". Extreme sounds too raw. I believe "Follin" is the default, right?

The reference game is Ghouls'n Ghosts, not Goblins, because Ghoulsn'n Ghosts music is by Tim Follin and does very sophisticated use of filters.

vanfanel avatar Jun 12 '24 18:06 vanfanel

@vanfanel the default filter in reDIP-SID is 'average'. Please store those setting in OSD.

Do you think that the new Design is suitable and good enough in terms of SID sound ? I Don't need now an answer. If you tell me let's say in 2 days is also fine. Still need to fix something related to serial RS232 Interface. thx

vossstef avatar Jun 12 '24 18:06 vossstef

@vossstef I have been testing both SID implementations all morning now (by going back and forth between stable .fs and this branch's test .fs) and I like the sound in the MiSTer version better, specially for Tim Follin games. Thankfully, things are quiet on my workplace, so I have time for these delicate tests. I brought my hi-quality headphones with me, to do the tests as they deserve.

I will be doing more tests with demos and other games, and will try to provide a definitive answer in some days. I think this question needs to be carefully considered.

I have also opened a thread on the MiSTer forum to request opinions: https://misterfpga.org/viewtopic.php?p=87479#p87479

...But for now, I would say the MiSTer version sounds better to me, more akin to real C64, also in Ghosts'n Goblins.

vanfanel avatar Jun 13 '24 11:06 vanfanel

Thanks for your effort !

Did you use the 'average' setting for your comparisson test? I can't tell at the moment which coefficients are implemented. maybe i nedd to dig a bit in MISTer. Will let you know if i Figuren out

vossstef avatar Jun 13 '24 11:06 vossstef

@vossstef Yes, but the "average" sounds pretty off compared to the MiSTer implementation.

I have also asked Sorgelig, the MiSTer creator, and he answered that the MiSTer implementation is more accurate, which confirms what I hear when doing these comparisions...

So, for now, I'd keep the MiSTer SID implementation for accuracy.

vanfanel avatar Jun 13 '24 11:06 vanfanel

@vanfanel looks that i need to rework the code significantly respectively need to make use of the latest redip-sid varaint. I only got a version running that is about similar age that Mister sid. Lokks that Mister added some more tweaks that i am missing now. Anyway i learned a lot and will release an intermediate step just to fix DB9 Joystick and Paddle for now.

vossstef avatar Jun 13 '24 14:06 vossstef

@vanfanel i got the dual SID based on well knows MIST'er core finally done and just created the release. Pls. let me know if there are problems.

vossstef avatar Jun 16 '24 12:06 vossstef

@vanfanel i got the dual SID based on well knows MIST'er core finally done and just created the release. Pls. let me know if there are problems.

Ok, I will test as soon as I can! Thanks! I am currently traveling, so I will start testing on wensday as soon as I am back at home :)

vanfanel avatar Jun 16 '24 15:06 vanfanel

@vanfanel i got the dual SID based on well knows MIST'er core finally done and just created the release. Pls. let me know if there are problems.

Ok! I've been testing the latest stable version, and 1-SID chip (both 6581 and 8580 models) sound perfect to me with games and demos.

Howevel, dual-8580 seems to be missing one SID, or it sounds bad. For dual-8580 reference, I use this astonishing demo: Here you have it in .D64 format, since current version of the core doesn't seem to load .PRGs properly: LMan - Blade Runner Main Titles.zip

Here is how it sounds when played properly (sounds perfect on the MiSTer C64 core): https://www.youtube.com/watch?v=XpP9z9gEMXA

vanfanel avatar Jun 18 '24 17:06 vanfanel

@vanfanel , thansk for all your effort and will check on that. I got in the meantime the SID Filter coefficients loader to work and will add it soon. For my bad ear's it is close to impossible to hear big differences... Unfortunately the FPGA is now entirely full and i had to sacrifice the PAUSE ON OSD feature.

vossstef avatar Jun 18 '24 19:06 vossstef

@vossstef Are PRGs supossed to be working? Some demos are in that format, but as I said loading PRGs seems to be broken (I don't want to open another non-ussue on that, but couldn't find any information on the docs about loading PRGs)

vanfanel avatar Jun 18 '24 20:06 vanfanel

@vanfanel , pls. let me check on that with the stored bitsteam in the release section. I will let you know tomorrow.

vossstef avatar Jun 18 '24 20:06 vossstef

@vossstef Please disregard my previous message saying that dual-8580 does not sound correct. It DOES sound correct. The Blade Runner demo seems to need dual-8580 from the begining and digifix ON, then it sounds as expected. So I consider dual SID audio perfect now on the core.

Other dual-SID demos you can enjoy: https://csdb.dk/release/?id=219599 https://csdb.dk/release/?id=157533

Sorry about my previous mistake: I needed more time to test dual-SID better.

vanfanel avatar Jun 19 '24 13:06 vanfanel

@vanfanel thanks for feedback. Don't worry as i didn't found a second to look into that. Will let you know when the SID filter load feature is ready for testing.

As it stand now will have today no time for PRG load testing. Tomorrow...

vossstef avatar Jun 19 '24 14:06 vossstef

@vanfanel i right away release a new version with the SID FIlter curve load feature. PRG load is working on my side. Let me know if you find buys. thx

vossstef avatar Jun 20 '24 18:06 vossstef

@vossstef This new version does not work correctly here. Loading CRTs or D64s, the core seems to hang. Nothing seems to work correctly. Maybe it was a bad build somehow?? (Yes, I updated both M0S fw and C64 .fs) (I have also checked file checksums and they are correct)

vanfanel avatar Jun 21 '24 14:06 vanfanel

Hi @vanfanel , could you pls try to delete the c64.ini on the sdcard and after boot. Set all execpt the d64 to 'no disk' and save settings. you habe to program the New firmware too. i flashed my board yesterday from the stored bitsteam and it worden correctly. Donut fully unverstanden what the problem is.

vossstef avatar Jun 21 '24 14:06 vossstef

@vossstef Yes, I tried deleting c64.ini, power-cycle, set all except D64 to "no disk", and save settings. I also updated the firmware.

But really, nothing loads. C64 boots correctly, but then loading D64s, CRTs, etc.. all fails.

Even doing a simple LOAD "$",8 with an inserted .D64 fails (the machine never completes the task).

vanfanel avatar Jun 21 '24 14:06 vanfanel

@vossstef Going back to version 1.2.3, everythig works as before. So version 1.3.0 is clearly bugged. I do these tests on the Tang Nano 20k (not 25k or 138k)

vanfanel avatar Jun 21 '24 14:06 vanfanel

I just programmed again my TN20k and bl616 and it works fine. Tested also TP25k and working fine.

Need to find another TN20k and try on that.

vossstef avatar Jun 21 '24 15:06 vossstef