VOGONS


SBVGM (DOS) VGM Player

Topic actions

Reply 320 of 326, by OPLx

User metadata
Rank Member
Rank
Member
ElBrunzy wrote on 2020-07-02, 17:34:
OPLx wrote on 2020-07-01, 09:36:

By vgmplay.exe, you mean SBVGM, right?

It's not a bug per se as that is how the VGM data was captured. Some PSG chips (like the SN76489 and the NES' RP2A03) have the side effect of when a note was played at a particular high frequency, it wouldn't be audible to the human ear. As a consequence of this, some musicians used this as a means to "silence" the note rather than turning off the volume. The current version of SBVGM just takes whatever SN76489 data it receives and translates it in real time for the SAA1099. At some point, I will get around to adding support for silencing the note (it does this for the NES VGMs) so please be patient. 😀

Yes it's my mistake, I was too blunt when I wrote this message. Of course by VGMPLAY I meant SBVGM and by BUG I meant FEATURE 😅. Jokes apart I understand it was indelicate to use such word when it's just an implementation incompatibility in between the saa1099 and sn76489, I'm sorry if I offended you. I'm glad you make effort to compensate for it.

I wasn't offended at all. In many cases these chips on the surface seem more or less "the same", but as one starts to get to examining the details, there can be large differences. For example, amongst the PSG chips, the AY-3-8910 seems to actually be the most versatile, but while the RP2A03 lacks envelope generators it has some hardware features that all the others don't have.

I've also been curious as to why the SAA1099 seemingly has very little presence beyond usage on the SAM Coupé and of course the Game Blaster; there are only two arcade games on VGMRips.net that use it as well.

If it wasn't for you pointing this out, I would not have known as there are seemingly thousands of SN76489 VGMs! 😀 Even though I tested on a large number of VGMs, I still missed the ones you pointed out.

ElBrunzy wrote on 2020-07-02, 17:34:

Thanks for the information about the cmslpt, I'm curious to read that thread.

There is also the TNDLPT : Tandy Sound on parallel port thread that might be of interest to you.

Reply 321 of 326, by matze79

User metadata
Rank l33t
Rank
l33t

https://www.youtube.com/watch?v=EGr8Vi2HBHU

SBVGM playing Alex the Kid, and Batman Returns Themes on SN76489.

https://dosreloaded.de - The German Retro DOS PC Community
https://www.retroianer.de - under constructing since ever

Co2 - for a endless Summer

Reply 322 of 326, by OPLx

User metadata
Rank Member
Rank
Member
matze79 wrote on 2020-07-04, 13:07:

https://www.youtube.com/watch?v=EGr8Vi2HBHU

SBVGM playing Alex the Kid, and Batman Returns Themes on SN76489.

Very nice! Glad to see the program working with the Tandy Nano! 😀

Reply 323 of 326, by 黄禄轩

User metadata
Rank Newbie
Rank
Newbie

I have gone futher on intergrating those sound cards to my motherboard and now I noticed something quite comfusing.
Dual SN76489AN, SAA1099 and YM2151 can be assigned to left and right channel easily (by the way is ch1 goes to left and ch2 goes to right?); OPL2 and Digital Sound Processor of Sound Blaster is mono output; but OPL3 has four channels, so how they are combined to form stereo?

PS: i have already implemented software programmable address decoding, interruption and dma channel assignment to 2xSN76489AN,OPL2,OPL3,SAAYM and SoundBlaster with CPLD. (SAAYM and SoundBlaster will share the same SAA1099 so they can't be both enabled at the same time)

Reply 324 of 326, by OPLx

User metadata
Rank Member
Rank
Member
黄禄轩 wrote on 2020-07-10, 11:08:

I have gone futher on intergrating those sound cards to my motherboard and now I noticed something quite comfusing.
Dual SN76489AN, SAA1099 and YM2151 can be assigned to left and right channel easily (by the way is ch1 goes to left and ch2 goes to right?); OPL2 and Digital Sound Processor of Sound Blaster is mono output; but OPL3 has four channels, so how they are combined to form stereo?

PS: i have already implemented software programmable address decoding, interruption and dma channel assignment to 2xSN76489AN,OPL2,OPL3,SAAYM and SoundBlaster with CPLD. (SAAYM and SoundBlaster will share the same SAA1099 so they can't be both enabled at the same time)

Looking at the datasheet for the YM2151 using the YM3012 D/A, it looks like CH1 is left and CH2 is right. Most PC OPL3 sound cards only use the first two channels (CHA = left, CHB = right) for stereo output. CHC and CHD are typically not connected. To my knowledge, the only PC soundcard that uses all four channels is TexElec's Resound OPL3 in a quadraphonic-like configuration requiring two sets of speakers.

Reply 325 of 326, by ElBrunzy

User metadata
Rank Oldbie
Rank
Oldbie

I'm pretty sure those "Bell" thing would not be a matter using the sn76489 chip and I will try it using older version of sbvgm to test it, but I'm pretty certain it will not be a problem... who knows ? That bring me to the question about how did you fixed the issue with saa1099 audio chip ?

Reply 326 of 326, by OPLx

User metadata
Rank Member
Rank
Member
ElBrunzy wrote on 2020-07-11, 13:42:

I'm pretty sure those "Bell" thing would not be a matter using the sn76489 chip and I will try it using older version of sbvgm to test it, but I'm pretty certain it will not be a problem... who knows ? That bring me to the question about how did you fixed the issue with saa1099 audio chip ?

The older versions of the program likely exhibit this. When I first added SN76489 support, I had used DOSBox to test and it didn't have the issue. I just need to make time to do some additional checks with actual hardware. The way I fixed the issue on the SAA1099 is that any time a VGM SN76489 frequency produces an octave value of 7 and a frequency value of 255 (from the internal conversions done), it emulates the SN76489 behavior by disabling the SAA1099's frequency generator for that channel that produces a similar effect.