Commit Graph
493 Commits
Author SHA1 Message Date
kichikuou 206ba0c961 Version 1.5.0 v1.5.0 2025-01-20 11:03:38 +09:00
kichikuou 839984653c Update README.md 2025-01-20 10:56:35 +09:00
kichikuou 065b34dd08 CI: Package MSYS2 build 2025-01-20 10:10:48 +09:00
kichikuou 9189bff16d Windows: Change app icon
To make it easier to distinguish from System3 for Win32.
2025-01-20 10:09:28 +09:00
kichikuou 7cb5bc7426 MSYS2 build: Use static linking 2025-01-20 08:18:38 +09:00
kichikuou aae15c34e1 AGS: Update draw_push() to use draw_gaiji() 2025-01-19 11:09:00 +09:00
kichikuou 43d1af3a44 AGS: Refactor text layout logic 2025-01-19 10:41:14 +09:00
kichikuou ff00165f47 AGS: Refactor Box struct 2025-01-18 15:37:15 +09:00
kichikuou fad34f7bb9 Refactor text / menu window code 2025-01-18 15:37:13 +09:00
kichikuou 32a510d543 Add AGS::load() and AGS::save() 2025-01-18 14:41:14 +09:00
kichikuou 11a366005f AGS: Refactor VRAM accessors 2025-01-17 15:13:32 +09:00
kichikuou 1673a5eb3c AGS: Refactor palette management to use SDL_Palette 2025-01-17 13:47:10 +09:00
kichikuou 12e7804d9f AGS: Use SDL drawing functions 2025-01-17 10:58:50 +09:00
kichikuou ca2ca7276f AGS: Use SDL_Surface to save / restore screen 2025-01-17 10:58:50 +09:00
kichikuou 33418f8cb5 AGS: Make VRAM 8 bits per pixel
Before this, the virtual VRAM was 32 bits per pixel, with each pixel
holding an 8-bit index color or 0x80RRGGBB. The latter was for Ayumi-
chan Monogatari Jisshaban, which has been unsupported since system3-sdl2
was forked from System3 for Win32.

This change removes the 0x80RRGGBB format and makes the virtual VRAM 8
bits per pixel.
2025-01-17 10:58:46 +09:00
kichikuou 7f0bae6f74 Remove unnecessary SDL_{Lock,Unlock}Surface calls 2025-01-16 15:26:19 +09:00
kichikuou d12c1575e0 emscripten: Notify shell of game ID 2025-01-16 10:38:09 +09:00
kichikuou 9afb81ed7e README.md: Sort the game id list (roughly) alphabetically 2025-01-11 13:30:49 +09:00
kichikuou fad7a843f0 Add NACT_Rance4 and NACT_Toushin2
These games are still unsupported, but at least they should not crash
due to command parsing errors.
2025-01-11 13:27:18 +09:00
kichikuou 4f4077a9c8 Add game IDs for unsupported titles 2025-01-11 11:47:19 +09:00
kichikuou d676a68b95 Add TRACE_UNIMPLEMENTED macro 2025-01-11 10:59:23 +09:00
kichikuou d8c20c94be NACT: Handle unused commands in base class 2025-01-11 10:37:19 +09:00
kichikuou cb937e97ca NACT_Sys[12]: Refactor wait macros 2025-01-11 10:25:06 +09:00
kichikuou 5d1b8f82cf Refactor NACT_Sys1 introducing inheritance-based structure
System1 commands have very different meanings from game to game
(especially the Y and Z commands), so this moves game-specific logic to
separate derived classes (e.g., NACT_LittleVampire, NACT_GakuenSenki)
for better modularization.
2025-01-11 10:25:03 +09:00
kichikuou d98b2884ed Refactoring: Move declaration of NACT_Sys* classes to cpp files 2025-01-05 08:14:02 +09:00
kichikuou ccd06e4b84 Version 1.4.0 v1.4.0 2025-01-04 16:26:50 +09:00
kichikuou 0e2025a347 Merge pull request #33 from kichikuou/rance2
Add support for Rance 2 Hint Disk
2025-01-04 16:20:37 +09:00
kichikuou 721679e387 README: Add rance2 and rance2_hint to the game ID table 2025-01-04 09:36:20 +09:00
kichikuou 37273534cc Set text/menu box locations for Rance 2
Contributed by @RottenBlock.
2025-01-04 08:34:28 +09:00
kichikuou ceadba8f4d Load GDISK.DAT and GG00.DAT if game_id is rance2_hint
AG00.DAT on the hint disk must be renamed to GG00.DAT to avoid conflicts
with AG00.DAT of the main game. This is the setup used in the Ryu1's
porting kit (http://www.ryu1.jp/alice/r2port.html).
2025-01-03 13:17:22 +09:00
kichikuou 67b6d71232 Clean up 2025-01-03 13:17:18 +09:00
kichikuou 15c9d0e820 RottenBlock's changes for Rance 2 Hint Disk 2025-01-03 13:17:12 +09:00
kichikuou ffe11c695e Reorganize initialization error reporting
- Invalid game id -> sys_error() in GameId::GameId()
- Unknown crc32 -> SDL_ShowSimpleMessageBox() in GameId::GameId()
- Cannot open ADISK.DAT -> sys_error() in NACT::NACT()
2025-01-03 12:36:27 +09:00
kichikuou a7dbdd0510 windows: Set up console if CLI debugger is enabled 2025-01-03 09:21:09 +09:00
kichikuou a274aaee57 GameId: Remove '_ENG' variants from Game enum
Use GameId::language field if necessary.
2025-01-03 08:52:30 +09:00
kichikuou 7f7ff91439 GameId: Replace CRC32 with enum
This makes it possible to define games that do not have a CRC32.
2025-01-03 08:52:27 +09:00
kichikuou d771352346 Fix typo 2025-01-02 21:32:19 +09:00
kichikuou edb48f2513 Send warnings to DAP client 2025-01-02 16:53:27 +09:00
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 ea77d594bf Make Encoding::fromUtf8() and Encoding::toUtf8() return std::string 2025-01-02 11:57:56 +09:00
kichikuou 6800258113 NACT: Add warnings for unimplemented Y commands 2025-01-02 10:54:21 +09:00
kichikuou 0309388097 Make ERROR() an alias of sys_error()
Now it shows a message box and exits.
2025-01-02 10:28:16 +09:00
kichikuou ddc790b268 Add error message when game files not found 2024-12-31 22:05:04 +09:00
kichikuou 320f790fb3 Version 1.3.0 v1.3.0 2024-12-28 16:27:21 +09:00
kichikuou ff530981ff Update README 2024-12-28 14:32:47 +09:00
kichikuou 0841f36dfc Fix debugger on Windows 2024-12-28 14:09:57 +09:00
kichikuou 2b61798f99 CMake: FetchContent() nlohmann-json in MSVC build 2024-12-28 14:09:57 +09:00
kichikuou 1fd72a28eb ci: install nlohmann-json 2024-12-28 14:09:57 +09:00
kichikuou 64b3e2a284 dabugger: Add support for custom DAP messages for palette changes
This implements "xsystem35.palette" custom request and
"xsystem35.paletteChanged" custom event, introduced in
kichikuou/xsystem35-sdl2@4b15f45.
2024-12-28 14:09:57 +09:00
kichikuou 909140f3bc Add support for Debug Adapter Protocol 2024-12-28 14:09:56 +09:00