Link jaudio_NES/internal/memory.c

Co-authored-by: GRAnimated <23510999+GRAnimated@users.noreply.github.com>
Co-authored-by: FlyingMeta <flyngmt@users.noreply.github.com>
This commit is contained in:
Cuyler36
2026-07-15 16:07:53 -04:00
parent bea941ac2b
commit 9610056e1d
2 changed files with 19 additions and 27 deletions
+1 -1
View File
@@ -811,7 +811,7 @@ config.libs = [
Object(Matching, "jaudio_NES/internal/ja_calc.c", extra_cflags=["-sym off"]),
Object(NonMatching, "jaudio_NES/internal/jammain_2.c", extra_cflags=["-sym on"]),
Object(Matching, "jaudio_NES/internal/jamosc.c"),
Object(Equivalent, "jaudio_NES/internal/memory.c", extra_cflags=["-pragma \"scheduling 7400\""]),
Object(Matching, "jaudio_NES/internal/memory.c", extra_cflags=["-pragma \"scheduling 7400\""]),
Object(Matching, "jaudio_NES/internal/midplay.c"),
Object(Matching, "jaudio_NES/internal/noteon.c"),
Object(Matching, "jaudio_NES/internal/oneshot.c"),
+18 -26
View File
@@ -811,7 +811,7 @@ void Nas_SetBPFilter(s16* a, s32 b, s32 c) {
Nas_SetLPFilter(a, b);
return;
} else if (b == 0) {
Nas_SetLPFilter(a, c);
Nas_SetHPFilter(a, c);
return;
}
k = 0;
@@ -975,19 +975,7 @@ void __Nas_MemoryReconfig() {
(AG.audio_params.num_samples_per_frame_target / AG.audio_params.updates_per_frame) & ~7;
/*0x2870*/ AG.audio_params.ai_sampling_frequency = AG.audio_params.sampling_frequency;
OSReport("----------------------------- SFS_NORMAL = %d\n", AG.audio_params.num_samples_per_update);
/*
order is
287c
287e
2884
2898
289c
28b8
2888
2880
288c
2890
*/
/*0x287C*/ AG.audio_params.num_samples_per_update_max = AG.audio_params.num_samples_per_update + 8;
/*0x287E*/ AG.audio_params.num_samples_per_update_min = AG.audio_params.num_samples_per_update - 8;
/*0x2884*/ AG.audio_params.resample_rate = 33476.156f / (s32)AG.audio_params.sampling_frequency;
@@ -1005,24 +993,28 @@ void __Nas_MemoryReconfig() {
}
/*0x2A18*/ AG.num_abi_cmds_max = 8;
/*0x0002*/ AG._0002 = spec->_14;
/*0x0002*/ AG._0002 = (s16)spec->_14;
s32 tmp = AG.audio_params.updates_per_frame;
/*0x28BC*/ AG.max_tempo = ((((60.0f * 1000.0f * AUDIO_TATUMS_PER_BEAT) * tmp) / AGC.timeBase) / AG._29D8) / 1.04613;
/*0x28BC*/ AG.max_tempo = (int)(((((60.0f * 1000.0f * AUDIO_TATUMS_PER_BEAT) * (s16)AG.audio_params.updates_per_frame) / AGC.timeBase) / AG._29D8) / 1.04613);
/*0x2894*/ AG.sample_to_update_delay_scale = (f32)AG.refresh_rate * (f32)tmp / AG.audio_params.ai_sampling_frequency / AG.max_tempo;
/*0x2894*/ AG.sample_to_update_delay_scale = (f32)AG.refresh_rate * (f32)AG.audio_params.updates_per_frame / AG.audio_params.ai_sampling_frequency / (s16)AG.max_tempo;
/*0x286C*/ AG.audio_params.spec = spec->_04;
/*0x2894*/ AG.sample_to_update_delay_scale = AG.refresh_rate;
/*0x2894*/ AG.sample_to_update_delay_scale *= tmp;
/*0x2894*/ AG.sample_to_update_delay_scale *= AG.audio_params.updates_per_frame;
/*0x2894*/ AG.sample_to_update_delay_scale /= AG.audio_params.ai_sampling_frequency;
/*0x2894*/ AG.sample_to_update_delay_scale /= AG.max_tempo;
/*0x2876*/ AG.audio_params.num_samples_per_frame_min *= AG.audio_params.spec;
/*0x2878*/ AG.audio_params.updates_per_frame *= AG.audio_params.spec;
/*0x2872*/ AG.audio_params.num_samples_per_frame_target *= AG.audio_params.spec;
/*0x2874*/ AG.audio_params.num_samples_per_frame_max *= AG.audio_params.spec;
/*0x2894*/ AG.sample_to_update_delay_scale /= (s16)AG.max_tempo;
if (AG.audio_params.spec > 1) {
(void)(f32)AG.refresh_rate;
(void)(f32)AG.audio_params.updates_per_frame;
(void)(f32)AG.audio_params.ai_sampling_frequency;
/*0x286C*/ AG.audio_params.spec = (s16)spec->_04;
/*0x2872*/ AG.audio_params.num_samples_per_frame_target *= (s16)AG.audio_params.spec;
/*0x2874*/ AG.audio_params.num_samples_per_frame_max *= (s16)AG.audio_params.spec;
/*0x2876*/ AG.audio_params.num_samples_per_frame_min *= (s16)AG.audio_params.spec;
/*0x2878*/ AG.audio_params.updates_per_frame *= (s16)AG.audio_params.spec;
if ((s16)AG.audio_params.spec > 1) {
/*0x2874*/ AG.audio_params.num_samples_per_frame_max -= 0x10;
}
// int c = (a + b);