kichikuou
cc75dd7c94
Convert linebreaks from CRLF to LF
2022-04-03 11:34:48 +09:00
kichikuou
08de113b8f
MSVC build: Upgrade SDL and SDL_ttf
...
- SDL 2.0.20
- SDL_ttf 2.0.18
2022-01-22 10:02:11 +09:00
kichikuou
80ea44e3c6
Fix issues with reading system3.ini and playlist made on Windows
...
- Replace backslashes in pathnames with slashes
- Strip '\r' in playlist
2021-11-27 13:23:11 +09:00
kichikuou
dc471399e5
Rewrite fade in / fade out implementation
...
Before this change, fade in and fade out was implemented using a
16-steps dithering pattern.
Now fading uses alpha-blending. It behaves like the PC98 version, where
fading was done by palette animation.
This reduces `sizeof(AGS)` by 1.2MB.
2021-11-20 17:09:17 +09:00
kichikuou
ef8253c252
MSVC build: Update SDL2 to 2.0.16
2021-09-19 13:59:02 +09:00
kichikuou
a0e46ce23b
MSVC build: Statically link runtime library
2021-09-18 21:09:57 +09:00
kichikuou
bc3580e4ef
Implement MAKO::get_mark() for FM sound
...
It still does not work for MIDI.
2021-09-18 21:05:38 +09:00
kichikuou
da91f10779
Allow overriding hard-coded strings by system3.ini
...
Some strings ("戻る" and "次のページ" in menu, character names in DPS)
are not included in game files but are hard-coded in the executable.
Now those strings can be overridden by adding [string] section to
system3.ini. For example, system3.ini for English translation of DPS
may look like this:
[config]
game = dps
title = D.P.S - Dream Program System
[string]
back = Back
next_page = Next Page
dps_custom = Custom
dps_linus = Linus
dps_katsumi = Katsumi
dps_yumiko = Yumiko
dps_itsumi = Itsumi
dps_hitomi = Hitomi
dps_mariko = Mariko
2021-09-11 13:20:48 +09:00
kichikuou
cbf2a9c86f
Report parse error of AG00.DAT
2021-09-09 21:06:15 +09:00
kichikuou
4004d39f22
Add "title" system3.ini option
...
So that translators don't need to change C++ code to localize game
titles.
2021-09-08 17:35:23 +09:00
kichikuou
bce7f5e4c2
Improve system3.ini parser
...
- keys are case-insensitive
- spaces are allowed in values
2021-09-08 17:20:45 +09:00
kichikuou
72e00ff20d
Add Chinese translation for text input dialog
...
From silas1037/system3-sdl2@4803ae3da7 .
2021-09-06 18:28:07 +09:00
kichikuou
45f6e5cc74
Add Japanese and Simplified Chinese menu resource
...
The Chinese text was taken from https://github.com/silas1037/SysEng/ .
2021-09-05 16:12:29 +09:00
kichikuou
4244fe63f5
Clean up win/resource.rc
2021-09-05 15:38:48 +09:00
kichikuou
ccd99dab07
Apply character encoding conversion to hard-coded strings
...
This fixes an issue where menu items like "戻る" were garbled in Unicode
mode.
2021-09-05 15:10:22 +09:00
kichikuou
f4799161a9
Fix encoding conversion in Windows text input dialog
2021-09-05 10:41:36 +09:00
kichikuou
7834004648
Fix unicode conversion on Android / Emscripten
...
This also moves functions in utfsjis.cpp to encoding.cpp.
2021-09-05 10:02:31 +09:00
kichikuou
14d0033db3
Add support for UTF-8 encoded scenario files
...
If `encoding = utf8` is specified in system3.ini, system3-sdl2 uses
UTF-8 as its multibyte character encoding. It will be used to run games
translated into non-(Japanese|English) languages.
2021-09-04 15:21:52 +09:00
kichikuou
92487ada06
Introduce Encoding class
...
It represents a multi-byte character encoding. Currently, SjisEncoding
is the only implementation of it.
2021-09-04 13:41:37 +09:00
kichikuou
d3c89aa697
Do hankaku-zenkaku conversion after Unicode conversion
...
As a bonus, Unicode character literal syntax can be used now.
2021-09-04 10:42:16 +09:00
kichikuou
ddd1be04ef
Map gaiji to Unicode Private Use Area U+E000-U+E0BB
2021-09-04 10:33:19 +09:00
kichikuou
231523f9c5
Simplify FILEIO::Fgets()
...
Control characters do not overlap with SJIS second bytes, so no need to
special case multibyte characters.
2021-09-04 10:33:19 +09:00
kichikuou
55e2b3bd8c
Redraw screen on SDL_WINDOWEVENT_EXPOSED
...
Fixes #17 .
2021-09-01 20:35:52 +09:00
kichikuou
d0e40c1c6d
Fix a bug in M command + quoted string
2021-08-30 19:28:10 +09:00
kichikuou
201924f88c
Fix escaping in quoted strings
...
Do not treat 0x5c as an escaping character if it is part of a multibyte
character.
Fixes #15 .
2021-08-29 16:52:03 +09:00
kichikuou
1e04c03469
Add Language field to CRCTable struct
2021-08-28 13:40:25 +09:00
kichikuou
6ec42bbdfc
Make window resizable
2021-08-14 13:28:56 +09:00
kichikuou
c58d5b690a
Fix mouse cursor movement in fullscreen mode
...
Ported from kichikuou/xsystem35-sdl2@91d30c9 .
2021-08-14 13:18:42 +09:00
kichikuou
8f48093409
Update emscripten to 2.0.25
2021-07-14 18:29:50 +09:00
kichikuou
af6da1f0c5
Fix incorrect warning while parsing system3.ini
...
Also fixes a typo in README.md.
Fixes #12 .
2021-07-08 17:12:42 +09:00
kichikuou
98038a5c74
Do not use SDL_RWFromFile on Windows
...
It does not work in the MSVC build of SDL2 (although it works in
Mingw-w64's SDL2 package).
Fixes #11 .
2021-07-08 17:08:20 +09:00
kichikuou
52eea935fe
Android: Allow specifying custom fonts in system3.ini
...
Now custom font files specified in system3.ini (as relative paths from the
game directory) can be loaded correctly.
2021-06-06 22:08:07 +09:00
kichikuou
14f4c38d85
Load configurations from system3.ini
...
This corresponds to xsystem35's `.xsys35rc` file (but loaded only from
the game directory). The format is a subset of .ini file.
This will enable using custom fonts on Android / Web.
2021-06-06 22:04:16 +09:00
kichikuou
0f4984bef5
Introduce Config struct
...
For now, it's just a container for command line arguments.
2021-06-06 16:18:17 +09:00
kichikuou
34175d5a85
Add English translations for string constants
2021-03-18 09:38:13 +09:00
kichikuou
4c6d8d5f8b
Support Y240 (hankaku mode) in System1
2021-03-18 09:38:13 +09:00
kichikuou
8417e7758a
Skip SysEng's "new style" marker
...
It can be simply skipped, because SysEng's command set is a superset
of System1-3.
2021-03-18 09:38:13 +09:00
kichikuou
9a8ebbdcb0
Support SysEng's quoted message commands
2021-03-18 09:38:10 +09:00
kichikuou
20e06235d2
Add CRC32 for English translations of Little Vampire / Rance 4.x
...
Note that these are still in beta; CRC32s may change.
2021-03-17 20:47:01 +09:00
kichikuou
77d50780f8
Implement AGS::paint()
2021-01-23 10:51:05 +09:00
kichikuou
db66e62b88
emscripten: Drop MIDI support
...
After kichikuou/web@c901b19 , the web port only supports FM sound.
2021-01-17 17:37:58 +09:00
kichikuou
cbb40d0b67
emscripten: minor refactoring
...
- Remove the use of EXPORTED_FUNCTIONS in favor of EMSCRIPTEN_KEEPALIVE
- SDL_Delay is no longer aliased to emscripten_sleep
2021-01-17 13:55:43 +09:00
kichikuou
8519bc1a55
Implement NACT::set_cursor()
2021-01-11 20:48:49 +09:00
kichikuou
4351f21dc4
Make FILEIO::Fopen() case insensitive
2021-01-11 10:53:32 +09:00
kichikuou
7f1d41ae61
Use SDL logging functions in ERROR/WARNING/NOTICE
...
They choose appropriate destination depending on the platform.
2021-01-09 11:07:41 +09:00
kichikuou
00df3274ac
MSVC build: Build as a GUI executable
2021-01-02 14:16:39 +09:00
kichikuou
65aec8da58
Move all files in src/res3 to src/win
...
And rename Script1.rc to resource.rc.
2021-01-02 13:46:12 +09:00
kichikuou
1d3715580b
MSVS build: Suppress warning C4244 (possible loss of data)
...
VC++ is picky about narrowing conversion. Let's ignore it instead of
scattering static_casts.
2021-01-02 13:22:36 +09:00
kichikuou
60a0b43831
Fix warnings in MSVS build
2021-01-02 10:45:38 +09:00
kichikuou
4621c13b75
Do not stack-allocate MAKOMidi
...
It causes stack overflow in MSVS build.
2021-01-02 10:04:59 +09:00