kichikuou
1a53c50c75
Rework NACT command tracing
...
- Now tracing is not a build-time config but a runtime option (`-trace`)
- One command per line, so that traces are not mixed with other outputs
- Send traces to DAP client
- Fix garbled characters in non-SJIS environments
2025-01-02 16:53:01 +09:00
kichikuou
6800258113
NACT: Add warnings for unimplemented Y commands
2025-01-02 10:54:21 +09:00
kichikuou
2498669da3
NACT: Refactor data structure for menu
2024-12-24 13:46:47 +09:00
kichikuou
b08b9f80f2
Add some helper functions to GameId
2024-12-24 12:22:10 +09:00
kichikuou
bb1573ec6d
NACT: Factor out load/save functions
2024-12-24 12:19:13 +09:00
kichikuou
57fad54420
NACT: Make some command functions non-virtual
2024-12-24 12:19:10 +09:00
kichikuou
eae1951646
Intruder: Fix Z2 command
...
* `Z 2, 0:` clears the graphic screen.
* `Z 2, 1:` restores the screen by loading the background image, but
with a transparent color so that the preceding G command can be seen.
Fixes #31 .
2024-12-21 13:43:50 +09:00
kichikuou
24c6041915
Encoding: Refactor mblen() to accept first byte instead of pointer
2024-12-20 13:59:30 +09:00
kichikuou
b000fecf92
Remove unused NACT_Sys[12]::cali2()
2024-12-18 13:51:26 +09:00
kichikuou
f356d268df
Scenario: Refactor address handling
2024-12-18 13:50:46 +09:00
kichikuou
9173742ffb
Introduce GameId class
2024-12-11 10:43:28 +09:00
kichikuou
e77a6b8bb5
Rename skip_string to skip_syseng_string for consistency
2024-12-10 09:15:26 +09:00
kichikuou
4ec1a12daa
Add Scenario::unknown_command() for error reporting
2024-12-10 09:12:55 +09:00
kichikuou
ffa3a364ce
NACT: Make cmd_{label,page}_{jump,call} methods non-virtual
2024-12-10 08:42:36 +09:00
kichikuou
d10ae21ff4
Move call stacks from NACT to Scenario
2024-12-10 08:35:23 +09:00
kichikuou
e79f24d8b9
Replace NACT::fatal() with global sys_error()
2024-12-10 07:54:56 +09:00
kichikuou
5483d1932f
Introduce Scenario class
2024-12-09 14:44:37 +09:00
kichikuou
8303f7c770
Refactor FILEIO
2024-12-08 15:06:00 +09:00
kichikuou
8eaaec8e16
Add scenario address to cali parse error messages
2024-12-03 11:08:51 +09:00
kichikuou
4174e0c1bb
Refactor DRI
2024-08-17 12:59:36 +09:00
kichikuou
30ca8b714b
Reorganize flags for exit and restart
...
Pure refactoring, no user-visible changes.
2023-09-27 16:41:05 +09:00
kichikuou
c3556c5213
Replace sprintf_s with snprintf
2023-04-15 09:16:14 +09:00
kichikuou
24224e0d2b
Merge some changes from SysEng 0.7 (for Gakuen Senki port)
2023-04-09 15:17:33 +09:00
kichikuou
cc75dd7c94
Convert linebreaks from CRLF to LF
2022-04-03 11:34:48 +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
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
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
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
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
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
d3d820d727
emscripten: Support message skip
...
Also add flags that control message skip behavior.
2020-12-29 12:09:34 +09:00
kichikuou
46827f35ef
Use common menu selection function in all systems
2020-12-24 22:55:33 +09:00
kichikuou
958e922d54
Apply NACT_Sys3 changes to NACT_Sys1, NACT_Sys2
...
Some fixes / improvements were made only in NACT_Sys3 but not in
NACT_Sys1 and NACT_Sys2. This applies the followings to NACT_Sys[12]:
f680fb3e Add savedir option
ba359b4b Performance tweak
bde689ea Text hook
Especially, this fixes a bug where save files were created not in save
directory, but in game directory.
2020-12-24 22:19:37 +09:00
kichikuou
e091bd9c1c
Improve message skip
...
When message skip is enabled while executing cmd_a(), skip starts
immediately.
This also makes messages displayed during skip visible for a moment.
2020-12-24 22:18:52 +09:00
kichikuou
c2ff6de675
Stop message skip on unseen text
...
This makes System3-sdl2 stop message skip when it sees text that has not
been read by the player. Seen / unseen flags are stored in MSGSKIP.DAT
file in the save folder.
2020-12-24 17:12:47 +09:00
kichikuou
067e1e23bd
Refectoring: Add is_[12]byte_message() helper functions
2020-12-20 14:44:08 +09:00
kichikuou
f2139440b6
Defer rendering to idle time
...
SDL_RenderCopy / SDL_RenderPresent was called too often, which sometimes
caused screen update to fail on Mac.
2020-11-29 12:06:08 +09:00
kichikuou
4b4053cf1e
Add -fm command line option
2020-11-21 14:01:38 +09:00
kichikuou
d18f441722
Merge upstream changes: Merge the remaining nact_sys1 changes
...
- cmd_branch: Uses getw when skipping 2-byte objects
- cmd_y: Restructured, but functionally identical
2020-05-23 11:30:03 +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
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
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