Fix Y103 command (play_pcm)

* The parameter is the number of times to loop, e.g. Y103,2: will play
  the sound twice. This still does not work on Windows because
  PlaySound() does not support specifying the loop count.
* Get AMSE data size from its header. This fixes audio glitch at the end
  of sounds.
This commit is contained in:
kichikuou
2025-03-04 15:59:22 +09:00
parent c0d8566dbd
commit d97d49dbe7
5 changed files with 18 additions and 15 deletions
+1 -1
View File
@@ -35,7 +35,7 @@ public:
bool check_music();
void get_mark(int* mark, int* loop);
void play_pcm(int page, bool loop);
void play_pcm(int page, int loops);
void stop_pcm();
bool check_pcm();
+1 -1
View File
@@ -942,7 +942,7 @@ void NACT_Sys3::cmd_y()
break;
case 103:
if(pcm_index < MAX_PCM) {
mako->play_pcm(pcm[pcm_index], param ? false : true);
mako->play_pcm(pcm[pcm_index], param);
}
break;
case 104: