mirror of
https://github.com/kichikuou/system3-sdl2.git
synced 2026-10-01 11:27:54 +03:00
98 lines
1.7 KiB
C++
98 lines
1.7 KiB
C++
/*
|
|
ALICE SOFT SYSTEM 3 for Win32
|
|
|
|
[ MAKO ]
|
|
*/
|
|
|
|
#ifndef _MAKO_H_
|
|
#define _MAKO_H_
|
|
|
|
#include <vector>
|
|
#include <stdio.h>
|
|
#include <limits.h>
|
|
#include <math.h>
|
|
#include "../common.h"
|
|
#include "nact.h"
|
|
|
|
#if !defined(__EMSCRIPTEN__) && !defined(__ANDROID__)
|
|
#include <SDL_mixer.h>
|
|
|
|
class MAKO
|
|
{
|
|
public:
|
|
MAKO(NACT* parent, const char* playlist);
|
|
~MAKO();
|
|
|
|
void play_music(int page);
|
|
void stop_music();
|
|
bool check_music();
|
|
void get_mark(int* mark, int* loop);
|
|
|
|
void play_pcm(int page, bool loop);
|
|
void stop_pcm();
|
|
bool check_pcm();
|
|
|
|
void initialize_midi();
|
|
void release_midi();
|
|
void stop_midi();
|
|
void start_midi();
|
|
void play_midi();
|
|
|
|
// AMUS.DAT, AMSE.DAT
|
|
_TCHAR amus[16];
|
|
_TCHAR amse[16];
|
|
|
|
int current_music;
|
|
int next_loop; // Y19
|
|
int cd_track[100]; // Z
|
|
|
|
private:
|
|
bool load_playlist(const char* path);
|
|
|
|
NACT* nact;
|
|
std::vector<const char*> playlist;
|
|
std::vector<uint8> smf;
|
|
Mix_Music *mix_music;
|
|
Mix_Chunk *mix_chunk;
|
|
};
|
|
|
|
#else // Emscripten or Android
|
|
|
|
class MAKO {
|
|
public:
|
|
MAKO(NACT* parent, const char* playlist);
|
|
|
|
void play_music(int page);
|
|
void stop_music();
|
|
bool check_music() { return current_music != 0; }
|
|
void get_mark(int* mark, int* loop) {}
|
|
|
|
void play_pcm(int page, bool loop) {}
|
|
void stop_pcm() {}
|
|
bool check_pcm() { return false; }
|
|
|
|
void initialize_midi() {}
|
|
void release_midi() {}
|
|
void stop_midi() {}
|
|
void start_midi() {}
|
|
void play_midi() {}
|
|
|
|
bool load_mml(int page) { return false; }
|
|
void load_mda(int page) {}
|
|
|
|
// AMUS.DAT, AMSE.DAT
|
|
_TCHAR amus[16];
|
|
_TCHAR amse[16];
|
|
|
|
int current_music;
|
|
int next_loop; // Y19
|
|
int cd_track[100]; // Z
|
|
|
|
private:
|
|
NACT* nact;
|
|
};
|
|
|
|
#endif // EMSCRIPTEN
|
|
|
|
#endif
|