Commit Graph
131 Commits
Author SHA1 Message Date
kichikuou eb24179d76 Merge upstream changes: Merge NACT-common changes
- Half-width kana characters are converted to full-width hiragana if
  ags->draw_hankaku is false.
- tvars can now support 33 characters instead of 22.
2020-05-23 11:14:34 +09:00
kichikuou 5571061ac1 Merge upstream changes: Add wait after opening menu
This prevents mis-selection by key repeat etc.
2020-05-23 10:53:34 +09:00
kichikuou cda1888ebc Merge upstream changes: Prevent menu selection when cursor is out of window
This was introduced in System3-sdl2 71728db only for nact_sys3. TOTO took
this change and expanded for nact_sys1 and nact_sys2 as well.
2020-05-23 10:40:05 +09:00
kichikuou 49b4ac4053 Merge upstream changes: Merge AGS changes
- Added initial text / menu positions for newly-supported games
- convert_zenkaku and convert_hankaku are now public
- load_cg supports Ayumi Floppy
- VSP: A transparency value of 101 now ignores get_palette
2020-05-23 09:52:16 +09:00
kichikuou 6d39b6feee Merge upstream changes: Merge DRI changes
- Fail if file entry's size is 0
- load_mda() can now load MDA from subsequent disks.
2020-05-22 19:39:47 +09:00
kichikuou 657057fa64 Merge upstream changes: CRC32 updates
- Check CRC32 of both ADISK.DAT (storead as crc32_a) and BDISK.DAT (crc32_b)
- Update the CRC32 database adding more titles
2020-05-22 16:09:55 +09:00
kichikuou e8d254328a Merge upstream changes: Merge FILEIO changes
FILEIO has been updated to resolve relative paths inside FILEIO::Fopen(),
which has been already done in System3-sdl2.

FILEIO::Fgets() now uses a length param.

Callsites for these functions are also updated to reduce the diff from
upstream.
2020-05-22 12:04:36 +09:00
kichikuou 131707f9d8 Merge upstream changes: Improve error messages for unknown commands
Unlike the upstream, we use fatal() because it generates a message box
even if DEBUG_CONSOLE is disabled.
2020-05-22 09:32:04 +09:00
kichikuou 406a7fe106 Merge upstream changes: output_console() takes printf-style arguments 2020-05-21 23:24:54 +09:00
kichikuou dadf0aa6b5 MIDI: Improve SMF generation
- Fade out in the last second
- Emit channel reset messages at the end
2020-05-17 14:13:40 +09:00
kichikuou dc3a031819 Move sys/mako.cpp to linux/mako.cpp 2020-05-16 19:34:03 +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
kichikuou 7654f1a671 Fix character encoding in string literals 2020-02-24 19:38:12 +09:00
kichikuou 7a1cc2a483 Convert all Shift_JIS files to UTF-8 2020-02-24 18:06:38 +09:00
kichikuou 4ae7e9e7aa Move SYSTEM1 initialization code to NACT_Sys1 constructor 2020-02-23 14:41:10 +09:00
kichikuou 7ffa8bc306 Avoid virtual functions in NACT
Since NACT functions call asynchronous operations and we use
ASYNCIFY_IGNORE_INDIRECT in emscripten.
2020-02-23 14:23:30 +09:00
kichikuou 348dff7575 Add game table entry for Prostudent G omake
Use `-game prog_omake` to play it.
2020-02-22 16:15:51 +09:00
kichikuou 20ba438300 Unify executables
Instead of building multiple executables using #ifdefs, create a single
executable (still called "system3") that can run all System1-3 games.
2020-02-22 16:15:47 +09:00
kichikuou 387c5febf2 Remove tchar.h shim 2020-02-16 15:57:05 +09:00
kichikuou 1f5449687f Clean up MAKO code 2020-02-16 15:57:05 +09:00
kichikuou 6bd6bca7dc Implement PCM sound with SDL_mixer 2020-02-16 13:36:01 +09:00
kichikuou 4aa5cc5bfd Android: MIDI support 2020-02-15 23:01:23 +09:00
kichikuou 487bd49745 CD-DA BGM playback support with SDL_mixer
This adds -playlist command line option to specify a "playlist" file
which lists music files to be played instead of CD audio tracks.
The format of playlist file is the same as xsystem35's.
2020-02-15 17:27:37 +09:00
kichikuou 51b65c84af MIDI playback with SDL_mixer
Instead of controlling MIDI device in real time, generate a data stream
in SMF format and feed it to SDL_mixer.
2020-02-15 17:27:34 +09:00
kichikuou 2d0619a19a Android: Store saved files under game-id/ subdirectory
This is to prevent overwriting saved files of other games, since System3
uses common save file names regardless of the game.
2020-02-10 13:09:07 +09:00
kichikuou 8615df6e12 Add -game option
This overrides the title detection by CRC. For example,

  system3 -game rance41

forces system3 to work in Rance 4.1 mode. See nact_crc32.cpp for
possible flag values. This is useful when running patched games.
2020-02-10 12:14:18 +09:00
kichikuou 91993ef4a3 Android: CD-DA emulation support 2020-02-09 21:47:07 +09:00
kichikuou 55e6dde4f8 Android: Fix screen issues
- Create window as fullscreen
- Redraw screen after task resume
2020-02-09 21:47:07 +09:00
kichikuou c04301c117 Android: Fix multi-touch detection 2020-01-04 11:31:40 +09:00
kichikuou 6e73c48e68 Report errors using SDL message box 2019-12-27 19:41:55 +09:00
kichikuou 75d328f015 Fix compiler warnings 2019-09-16 11:00:31 +09:00
kichikuou bde689eaa1 Text hook 2019-09-02 09:03:29 +09:00
kichikuou ae6e20b874 Add utfsjis.{h,cpp} 2019-08-25 19:26:52 +09:00
kichikuou f6a55daff2 Fix crash in Super D.P.S. 2019-08-18 21:33:37 +09:00
kichikuou ea0be6b222 System2: disable fade commands 2019-08-18 21:11:06 +09:00
kichikuou e417118713 Add -fontfile option 2019-08-18 18:31:26 +09:00
kichikuou de3bbf2595 System1: Detect game title by CRC32 2019-08-18 16:55:17 +09:00
kichikuou b10d6447fe Add build rules for system1 and system2 2019-08-18 15:12:41 +09:00
kichikuou 4d3b06ea50 Fix freeze during fade in/out 2019-03-31 16:46:29 +09:00
kichikuou db5c8be2ac Remove unused sjis2unicode 2019-01-26 18:50:53 +09:00
kichikuou cedf84f08e Grayscale initial palette for better antialias 2017-06-17 11:14:05 +09:00
kichikuou 5dbc4d8881 Implement text input 2017-06-17 10:26:19 +09:00
kichikuou e00e1c4552 Add exported function for screenshot 2017-05-02 21:53:55 +09:00
kichikuou 0b74f252d2 Do not double-unlock surfaces 2017-05-02 09:07:18 +09:00
kichikuou 49705ee7b8 Export sjis2unicode 2017-05-01 15:33:55 +09:00
kichikuou 270e65ab78 Touch support 2017-05-01 10:24:13 +09:00
kichikuou bd8d7ebecf Tweak selection 2017-04-30 21:43:29 +09:00
kichikuou ba359b4b59 Performance tweak 2017-04-30 21:31:11 +09:00
kichikuou 7c233fd9a0 Fix load bug 2017-04-30 20:58:38 +09:00
kichikuou 71728db664 Prevent selection when cursor is out of menu window 2017-04-30 18:54:22 +09:00