Commit Graph
4 Commits
Author SHA1 Message Date
kichikuou bb9fc273ac Windows: Move MCI operation to a background thread
MCI is very slow to open a MIDI file. Not to block the main thread for
hundreds of milliseconds, this moves MCI calls to a separate thread.
2020-10-17 15:59:28 +09:00
kichikuou 520b542fcc Introduce NACT::on_syswmevent()
This is in preparation for adding more handlers for platform-specific
window messages (e.g. menu commands).
2020-10-10 15:26:01 +09:00
kichikuou c8b3cd182c Fix a bug of BGM loop in Windows
The info structure must be initialized with the SDL version before
calling SDL_GetWindowWMInfo.
2020-05-16 20:40:38 +09:00
kichikuou 9f5f4e6843 Add Windows native implementaton of MAKO
The MIDI synthesizer bundled with SDL_Mixer doesn't sound as good as
Windows' built-in software synthesizer.

This adds Windows native implementation of MAKO as win/mako.cpp. It
plays MIDI by writing out SMF to a temporary file and play it with MCI.
CD emulation (--playlist) is also implemented using MCI.
The PCM implementation is copyed from TOTO's original Win32 impl.

This removes SDL_mixer dependency in Windows.

Fixes #1.
2020-05-16 17:36:23 +09:00