/*
* Tuxánci 2 - A first person shooter
* Copyright (C) 2025-2026 Connor Thomson
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see .
*/
#ifdef ENABLE_AUDIO
#include
#include
#include "logging.h"
#include "ta_sdl.h"
#include "main.h"
openmpt_module *ta_openmpt_load_module(unsigned char *start, size_t size) {
const char *error = NULL;
ta_log("Loading OpenMPT module from memory");
openmpt_module *module = openmpt_module_create_from_memory2(
start,
size,
NULL,
NULL,
NULL,
NULL,
NULL,
&error,
NULL
);
if (module) {
return module;
} else {
SDL_Log("OpenMPT: %s", error);
ta_main_exit(1);
return NULL;
}
}
void ta_openmpt_set_module_repeat_count(openmpt_module *module, int count) {
ta_log("Setting OpenMPT module repeat count");
bool success = openmpt_module_set_repeat_count(module, count);
if (!success) {
SDL_Log("Failed to set OpenMPT module repeat count");
ta_main_exit(1);
}
}
#endif // ENABLE_AUDIO