VOGONS


SDLPAL DOS port for the RPG game LEGEND OF SWORD AND FAIRY

Topic actions

Reply 120 of 123, by LSS10999

User metadata
Rank Oldbie
Rank
Oldbie
PalMusicFan wrote on 2026-06-30, 14:57:
Would you please check the latest CI build again? […]
Show full quote

Would you please check the latest CI build again?

New feature: VGA13h mode. This is enabled by default (DOSForceMode13h=1). Its performance and compatibility are much higher than those of the VBE mode.
Note that DOSLowEndOpt=1 is required for now. Of course, it supports 320x200 only, and no gamepad overlay.

Also, could you test options like OPLCore=NUKED? This will start the software OPL core and output audio via DMA.

Since you added new parameters, I let SDLPAL recreate a new config and tried the new features.
- AVI Cinematics cannot be played properly if VGA13h mode is used (black screen, but sound still plays). Must use VBE mode for proper AVI playback. Probably because of this, SDLPAL now disables AVI cinematics by default. On my system, no noticeable performance difference between VGA13h and VBE modes.
- A correction from previous post. It seems sound effect toggle in the settings does work as expected.
- As for music, it seems with real OPL2/3 music cannot be stopped (hangs the note if a cutscene would stop the playback), and the music toggle in settings does not work.
- OPLCore=NUKED works okay on my system (no noticeable issues at the moment), and it seems with NUKED instead of real OPL2/3 the music can be correctly stopped and the music toggle works.

And regarding the stuttering of sound effects (particularly during AVI cinematics)... when I checked SDL_LOG.TXT I realized that the "SampleRate" option has no effect at all. It always used 44100Hz Stereo regardless of what I put in it. My real SB16 can't handle such high sampling rates well in DOS, and this is noticeable in games like Duke Nukem 3D. I think if SDLPAL could be made to use a lower sampling rate like 22050Hz, the stuttering issue may go away.

EDIT: Did a grep on the code in dos_sdl3 branch and I could not find anything DOS-specific that mentioned "SampleRate"... so probably the "soundblaster" backend is always being initialized with default parameters for now...

Reply 121 of 123, by PalMusicFan

User metadata
Rank Newbie
Rank
Newbie
LSS10999 wrote on 2026-06-30, 16:47:
Since you added new parameters, I let SDLPAL recreate a new config and tried the new features. - AVI Cinematics cannot be played […]
Show full quote
PalMusicFan wrote on 2026-06-30, 14:57:
Would you please check the latest CI build again? […]
Show full quote

Would you please check the latest CI build again?

New feature: VGA13h mode. This is enabled by default (DOSForceMode13h=1). Its performance and compatibility are much higher than those of the VBE mode.
Note that DOSLowEndOpt=1 is required for now. Of course, it supports 320x200 only, and no gamepad overlay.

Also, could you test options like OPLCore=NUKED? This will start the software OPL core and output audio via DMA.

Since you added new parameters, I let SDLPAL recreate a new config and tried the new features.
- AVI Cinematics cannot be played properly if VGA13h mode is used (black screen, but sound still plays). Must use VBE mode for proper AVI playback. Probably because of this, SDLPAL now disables AVI cinematics by default. On my system, no noticeable performance difference between VGA13h and VBE modes.
- A correction from previous post. It seems sound effect toggle in the settings does work as expected.
- As for music, it seems with real OPL2/3 music cannot be stopped (hangs the note if a cutscene would stop the playback), and the music toggle in settings does not work.
- OPLCore=NUKED works okay on my system (no noticeable issues at the moment), and it seems with NUKED instead of real OPL2/3 the music can be correctly stopped and the music toggle works.

And regarding the stuttering of sound effects (particularly during AVI cinematics)... when I checked SDL_LOG.TXT I realized that the "SampleRate" option has no effect at all. It always used 44100Hz Stereo regardless of what I put in it. My real SB16 can't handle such high sampling rates well in DOS, and this is noticeable in games like Duke Nukem 3D. I think if SDLPAL could be made to use a lower sampling rate like 22050Hz, the stuttering issue may go away.

EDIT: Did a grep on the code in dos_sdl3 branch and I could not find anything DOS-specific that mentioned "SampleRate"... so probably the "soundblaster" backend is always being initialized with default parameters for now...

Thanks so much!

Here is what is in today's build (v2026-07-01-gb190979):
1. AVI Cinematics are OK. DOSForceMode13h=1 + DOSLowEndOpt=1 means palette AVI playback. It would be great if you could provide a screenshot! DOSLowEndOpt=0 uses VESA AVI playback.
2. A new AVI playback implementation with much better performance. Thanks to M-HT.

Reply 122 of 123, by LSS10999

User metadata
Rank Oldbie
Rank
Oldbie
PalMusicFan wrote on Yesterday, 15:18:

Here is what is in today's build (v2026-07-01-gb190979):
1. AVI Cinematics are OK. DOSForceMode13h=1 + DOSLowEndOpt=1 means palette AVI playback. It would be great if you could provide a screenshot! DOSLowEndOpt=0 uses VESA AVI playback.
2. A new AVI playback implementation with much better performance. Thanks to M-HT.

Just tested. Good improvements.
- AVI Cinematics now plays properly, and sound no longer stutters there. Guess it really was a performance issue with the AVI playback code, not my sound card.
- AVI Cinematics works with DOSForceMode13h=1 + DOSLowEndOpt=1, though video quality will be a bit worse compared to VESA mode.
- In my system's case, performance with VGA13h mode is a bit worse than VESA mode, so I think VGA13h mode should be used more with older systems while on newer systems VESA mode is preferred.

Currently playing a bit more with OPLCore=NUKED and for now it performs a bit better than OPLCore=REAL.
- Music on/off toggle in settings and ingame fading effects work as expected.
- Music volume seems consistent, that it's not too loud during combat.

Not sure if issues with real OPL can be eventually addressed as it would be a better option in older systems.

Reply 123 of 123, by PalMusicFan

User metadata
Rank Newbie
Rank
Newbie
LSS10999 wrote on Yesterday, 16:06:
Currently playing a bit more with OPLCore=NUKED and for now it performs a bit better than OPLCore=REAL. - Music on/off toggle in […]
Show full quote

Currently playing a bit more with OPLCore=NUKED and for now it performs a bit better than OPLCore=REAL.
- Music on/off toggle in settings and ingame fading effects work as expected.
- Music volume seems consistent, that it's not too loud during combat.

Not sure if issues with real OPL can be eventually addressed as it would be a better option in older systems.

Got it. Emulated OPL Cores work in the same way as in other ports. They generate audio stream in a standalone thread (or say coroutine here).

But REAL is an ISR player. It is not in the same way. The on/off is not implemented for now.