VOGONS


SBVGM (DOS) VGM Player

Topic actions

Reply 400 of 410, by OPLx

User metadata
Rank Member
Rank
Member
ElBrunzy wrote on 2021-09-15, 17:23:

AY-3-8910/YM2149 would be awesome. I remember listening to them on STSound stsnd1.gif and finding them so good that I would start to collect them. This would represent my awaking to a world of FM music outside the Adlib's YM3812. Thinking it was close the the SN76489, I secretly did try to play them with SBVGM without too much conviction and of course it failed.

Although I wonder the implication of converting .YM to .VGM files since it seem to be the core of the Atari musics.

I think there might be .YM to .VGM converters out there, but I think the .YM format is perfect for what it does and would required less system resources for playback. The SN76489 can't properly handle YM2149 playback, though the SAA1099 and OPL3 could possibly do so.

Reply 401 of 410, by thepirategamerboy12

User metadata
Rank Member
Rank
Member

I found a YM to VGM converter here, and it seems to work pretty well. I've gotta say, I can't wait for when AY8910/YM2149 is eventually added. I think listening to music from games on different systems than what it's actually playing on is a really cool novelty.

Reply 403 of 410, by OPLx

User metadata
Rank Member
Rank
Member
thepirategamerboy12 wrote on 2021-09-23, 11:07:

I found a YM to VGM converter here, and it seems to work pretty well. I've gotta say, I can't wait for when AY8910/YM2149 is eventually added. I think listening to music from games on different systems than what it's actually playing on is a really cool novelty.

Hopefully I can add support for that in the near future. VGMRips has been adding Atari ST VGMs recently it seems: Packs on ST.

Reply 404 of 410, by OPLx

User metadata
Rank Member
Rank
Member
thepirategamerboy12 wrote on 2021-09-26, 23:17:

So, someone tried to run SBVGM 1.37 on a Tandy 1000 SX and it seemed to think it was running on a PC-98.

https://youtu.be/rPf_FHCxF64?t=959

Thank you for pointing it out! Apparently calling int 1a with ax = 0x1000 on a Tandy 1000 machine returns something other than 0x1000. The joys and hazards of developing on the PC! Should have a quick fix for that soon. I was mortified when I saw that! 🙁

Reply 405 of 410, by cuba200611

User metadata
Rank Newbie
Rank
Newbie

I found this program which I used to convert AY-3-8910/YM2149 VGMs to YM2203 such that they could work with SBVGM for PC-98.

I tried a couple of converted VGMs on both emulation and real hardware - they work except that the ones that play back digitized samples (usually drums) don't sound correct, if they aren't too big to fit in memory that is...

Reply 406 of 410, by ElBrunzy

User metadata
Rank Oldbie
Rank
Oldbie
thepirategamerboy12 wrote on 2021-09-23, 11:07:

I found a YM to VGM converter here, and it seems to work pretty well.

cuba200611 wrote on 2021-09-30, 03:39:

I found this program which I used to convert AY-3-8910/YM2149 VGMs to YM2203 such that they could work with SBVGM for PC-98.

Thank you alot guys, I guess I have no excuse now not to convert my YM collection to something compatible to what SBVGM actually support. I see vgm-conv support many output format. I wonder if there is any advantage to also converted them to ym3812.

Reply 407 of 410, by thepirategamerboy12

User metadata
Rank Member
Rank
Member
cuba200611 wrote on 2021-09-30, 03:39:

I found this program which I used to convert AY-3-8910/YM2149 VGMs to YM2203 such that they could work with SBVGM for PC-98.

I tried a couple of converted VGMs on both emulation and real hardware - they work except that the ones that play back digitized samples (usually drums) don't sound correct, if they aren't too big to fit in memory that is...

I don't remember the exact reason, but OPLx said that sample playback is not supported in any VGMs because of some limitation (other than the built in YM2608 samples). And holy shit, thank you so much for linking that!

Btw, since he hasn't mentioned it here yet, v1.38 is out and that should have fixed the Tandy 1000 issue.

Reply 408 of 410, by OPLx

User metadata
Rank Member
Rank
Member
cuba200611 wrote on 2021-09-30, 03:39:

I found this program which I used to convert AY-3-8910/YM2149 VGMs to YM2203 such that they could work with SBVGM for PC-98.

I tried a couple of converted VGMs on both emulation and real hardware - they work except that the ones that play back digitized samples (usually drums) don't sound correct, if they aren't too big to fit in memory that is...

Sadly, sample playback is not supported with SBVGM. It's an unfortunate side effect of not originally intending to support so many chips and also how the playback routine updates. I have been thinking on and off about how to enable this for faster CPUs, but haven't had much time to really delve into it. 🙁

Reply 409 of 410, by OPLx

User metadata
Rank Member
Rank
Member
ElBrunzy wrote on 2021-09-30, 04:29:
thepirategamerboy12 wrote on 2021-09-23, 11:07:

I found a YM to VGM converter here, and it seems to work pretty well.

cuba200611 wrote on 2021-09-30, 03:39:

I found this program which I used to convert AY-3-8910/YM2149 VGMs to YM2203 such that they could work with SBVGM for PC-98.

Thank you alot guys, I guess I have no excuse now not to convert my YM collection to something compatible to what SBVGM actually support. I see vgm-conv support many output format. I wonder if there is any advantage to also converted them to ym3812.

vgm-conv supports non-trivial conversion across various chip types. ... I definitely agree with the author of vgm-conv; it is non-trivial! 😀

AY8910/YM2149 -> SAA1099
This generally works in SBVGM though the SAA1099's envelope frequency range is nowhere as broad as the AY8910/YM2149. Sample playback (which currently isn't supported) would require doing some fancy things with the SAA1099 as mentioned here.

AY8910/YM2149 -> YM3812/YMF262
Not impossible as both chips can produce a square wave sound, but there would be an issue on the YM3812 for emulating the noise channel. YMF262 can do a kind of a noise-like effect, but it's possible that the noise frequencies wouldn't match the AY8910/YM2149 exactly. I think both the YM3812 and YMF262 could reproduce the envelope generators, but that would require some experimentation. Sample playback is possible, but more CPU overhead for that.

Reply 410 of 410, by OPLx

User metadata
Rank Member
Rank
Member
thepirategamerboy12 wrote on 2021-09-30, 05:23:
cuba200611 wrote on 2021-09-30, 03:39:

I found this program which I used to convert AY-3-8910/YM2149 VGMs to YM2203 such that they could work with SBVGM for PC-98.

I tried a couple of converted VGMs on both emulation and real hardware - they work except that the ones that play back digitized samples (usually drums) don't sound correct, if they aren't too big to fit in memory that is...

I don't remember the exact reason, but OPLx said that sample playback is not supported in any VGMs because of some limitation (other than the built in YM2608 samples). And holy shit, thank you so much for linking that!

Btw, since he hasn't mentioned it here yet, v1.38 is out and that should have fixed the Tandy 1000 issue.

Thanks for mentioning about v1.38's release; I neglected to mention about that. 🙁

The sample playback limitation is primarily from how the original playback routine was implemented. SBVGM's original purpose was to play back NES VGMs on the SAA1099 (I was doing some experiments with the SAA1099's envelope generators) and it was an "easy" thing to add support for other chips ... at least back then! 😀

For anyone who is curious, Putting the things together written by @scali had a really nice write up on how to properly do so the PC. It requires pre-processing the VGM data into a special format though.