kichikuou
86470e543a
Rework string variables
...
- strVar is now allocated as a vector of indefinite length buffers
rather than a single contiguous buffer.
- Strings can be any length, but truncated to (strvar_len * 2) bytes
when saved to a file, for backward compatibility.
- Now string commands treat 1-byte characters in the same way as System
3.9. This potentially fixes bugs in English translated games.
2020-06-20 22:29:22 +09:00
kichikuou
1cf197513c
Use const strings in message related functions
2020-06-20 10:53:38 +09:00
kichikuou
7309ed012f
Make DspDeviceSync no-op in SDL graphics
2020-06-18 21:49:51 +09:00
kichikuou
515a92544b
getCaliValue: Recover from out-of-bounds index access
...
Before this, array access caused stack underflow if the index was out of
range. After this, such index access will be evaluated to zero.
2020-06-14 22:43:17 +09:00
kichikuou
725b0ee6ab
Prevent buffer overrun by DF command
2020-06-14 22:09:14 +09:00
kichikuou
e17b447e73
Cleanup variable lookup code
...
No behavior changes.
2020-06-14 21:54:11 +09:00
kichikuou
a217df39b1
Fix compiler warnings on Windows
...
On Windows, jpeglib.h includes windows.h which defines several macros
that conflict with ours.
2020-06-14 14:23:40 +09:00
kichikuou
80266d6454
Support JPEG image format
...
JPEG images are not used in AliceSoft games, but supported since System3.6
version 3.23 and used in some third-party games (e.g. Graymerca).
2020-06-14 14:16:19 +09:00
kichikuou
2e17188f2b
Fix DI command and add tests
2020-06-13 15:46:45 +09:00
kichikuou
3fd7a58544
Android: Use filtered scaling
...
This improves text readability, especially for the Mincho font.
2020-06-07 12:55:16 +09:00
kichikuou
9a1f1c77a6
Static link DLL modules
...
We only support a fixed set of modules, so dynamic linking isn't really
necessary. This paves the way for running System3.9 games on more
platforms.
NIGHTDLL is temporarily disabled, because many symbols conflict with the
SACT module.
2020-06-04 19:56:05 +09:00
kichikuou
0351f4cbcd
Do not use tab characters in CMakeLists.txt
2020-05-30 09:33:01 +09:00
kichikuou
f1eed8f2af
Convert music.c and music_private.h to UTF-8
...
These files were removed at the time of the batch conversion to UTF-8,
and then re-added in EUC-JP encoding.
2020-05-29 23:15:47 +09:00
kichikuou
697c15854a
Update emscripten to 1.39.16
2020-05-29 22:24:10 +09:00
kichikuou
70a03ff02f
s2utbl.h: Map [82 f2] to U+3094 (HIRAGANA LETTER VU)
...
This character is used in Prostudent Good. (Although MTLc3m.ttf does not
have a glyph for it...)
This also makes the table const.
2020-05-10 22:26:04 +09:00
kichikuou
ea5776108a
Fix voice playback in Escalayer
...
- Make sure muspcm_getpos() returns non-zero while playing
- Implement mus_wav_fadeout_start()
- Fix a bug of ssnd_waitkey()
2020-05-06 15:11:00 +09:00
kichikuou
8d72775daa
Modules: Make debug messages less verbose
2020-05-04 23:02:05 +09:00
kichikuou
174f1ac359
Android: Play MIDI via temporary file
...
MediaPlayer in old versions of Android does not accept data: URL.
2020-02-16 11:35:01 +09:00
kichikuou
acd4dc239b
Android: Fix loop parameter handling for CD-DA/MIDI
...
The semantics of `loop` parameter of start() is very confusing.
Added comments in cdrom.h/midi.h to clarify the meaning.
2020-02-09 19:22:47 +09:00
kichikuou
f16f768a69
Android: Use {Push,Pop}LocalFrame to track local references
2020-02-02 11:32:38 +09:00
kichikuou
1ab4a74798
Android: Redraw screen after task resume
...
There is a bug the redrawn screen is a bit off. Not sure why.
2020-01-26 16:49:10 +09:00
kichikuou
31e073203d
Android: MIDI support
2020-01-25 17:23:53 +09:00
kichikuou
f6a39a0539
Enable text anti-aliasing by default
...
This would make more sense because the bundled fonts do not have
bitmap glyphs. The -antialias command option is removed. To disable
anti-aliasing, use -noantialias or "antialias: No" in .xsys35rc.
2020-01-19 22:41:25 +09:00
kichikuou
8f10145fc4
Android: Use android.media.MediaPlayer for BGM playback
...
Playlist is written to <gamedir>/playlist.txt during installation
("cdrom_device" in .xsys35rc is not used).
Files that match /(\d+)\.(wav|mp3|ogg)$/ are recognized as BGM files
(digits represent a track number). Note that this convention is the same
as Kichikuou on Web.
2020-01-19 22:18:04 +09:00
kichikuou
5743979bca
Android: Create window as fullscreen
...
This lets SDL use the "immersive fullscreen" mode where system bars are
hidden.
2020-01-18 12:45:29 +09:00
kichikuou
83c4195f3a
Android: Pass absolute path to Mix_LoadMUS
2020-01-13 22:55:44 +09:00
kichikuou
473e490686
Android: New launcher
...
The new launcher activity is a ListActivity and allows:
- Installing games from ZIP
- Launching installed games
- Uninstalling games
2020-01-13 18:55:52 +09:00
kichikuou
ea7eee836f
Android: Fix multi-touch detection
2020-01-04 11:22:24 +09:00
kichikuou
60df54efc6
Android: Disable window resizing
...
Calling SDL_SetWindowSize() will overwrite window->w and window->y
and break rendering.
2019-12-31 21:18:26 +09:00
kichikuou
b2c1ba5247
Android: Add simple launcher
...
This adds a minimal launcher activity for the android app, which does
the followings:
- Opens a file chooser to let user select a zip file
- Extracts the zip into the app's internal storage
- Launches the SDL activity
2019-12-31 21:18:26 +09:00
kichikuou
8588a0033c
Android: Output sys_message/sys_error to android log
2019-12-31 15:16:54 +09:00
kichikuou
eb50ac4fdc
Android: Build rules
...
This sets up Gradle / CMake rules for Android build.
2019-12-31 15:16:49 +09:00
kichikuou
8c31e7a2ec
Rename imput.[ch] to input.[ch]
2019-12-24 17:40:02 +09:00
kichikuou
a51addd73a
Fix for emscripten 1.39.1
...
Now IDBFS needs to be linked explicitly.
2019-11-18 14:37:58 +09:00
kichikuou
8958b41ad2
Windows MSYS2 build support
...
- Add feature detection and fallback implementation for some functions
- Use binary mode for fopen()
- CMake: Add workaround for MSYS link error
2019-10-14 17:32:17 +09:00
kichikuou
7a27bcaafd
Remove unused nact.tmpdir
2019-10-12 22:57:18 +09:00
kichikuou
665277fcdd
VA animation: stop using interval timer
...
Animation state is calculated in va_animation() (called from
nact_callback()) instead.
This would make porting to non-UNIX environments easier.
2019-10-12 19:32:43 +09:00
kichikuou
c1baffd583
bgm.sdlmixer.c: avoid unnecessary memory copy
2019-09-29 22:24:22 +09:00
kichikuou
71e61adbd6
sys35_initGameDataDir: support *BA.ALD
2019-09-29 19:53:37 +09:00
kichikuou
b1580643f0
BGM (*BA.ALD) support
2019-09-29 19:36:53 +09:00
kichikuou
7f0f51df41
xcore: Do not use deprecated XKeycodeToKeysym
2019-09-16 16:12:42 +09:00
kichikuou
0f3ff4ff3a
cdrom: Fix loop parameter type of start()
2019-09-16 15:45:28 +09:00
kichikuou
8f65891ed8
Fix more compiler warnings
2019-09-15 19:32:00 +09:00
kichikuou
c0ac281789
Suppress some compiler warnings
2019-09-15 18:42:19 +09:00
kichikuou
4602b1ebfc
Fix compiler warnings
2019-09-15 18:42:16 +09:00
kichikuou
641f53e5bb
Change return type of font->get_glyph
2019-09-15 16:32:02 +09:00
kichikuou
f91338aeb5
font_sdlttf: implement get_glyph
...
This is used by NIGHTDLL and SACT.
2019-09-15 16:32:02 +09:00
kichikuou
ecf0e6c829
Reduce frequency of nact->callback to once per vsync
2019-09-15 16:32:00 +09:00
Nunuhara Cabbage
eff39cf3c5
texthook: explicitly flush stdout every line
...
This allows processing the output line-by-line by a script.
2019-09-08 11:27:25 -07:00
kichikuou
17ab866835
Do not print error when .xsys35rc is missing
2019-09-08 11:45:21 +09:00