kichikuou
4e28d92a2d
Windows: Load %USERPROFILE%/.xys35rc if %HOME% is not set
2024-01-20 12:42:17 +09:00
kichikuou
22192c245f
Windows: Remove game selection dialog
2024-01-20 11:55:29 +09:00
kichikuou
18cfbc90f2
Windows: Do not read profile from registry
...
This was only used for the default font path, so it should be safe to
remove it.
2024-01-20 09:38:44 +09:00
kichikuou
cd51dc7f02
Windows: Embed fonts as PE resources
2024-01-20 09:30:10 +09:00
kichikuou
e2638ed840
Refactor CMakeLists.txt using alias targets
2024-01-19 14:56:50 +09:00
kichikuou
6607815df3
MSYS build: Use static linking
2024-01-19 14:55:53 +09:00
kichikuou
77ed85aff7
Display error when debugger is requested but not available
2024-01-18 10:49:31 +09:00
kichikuou
1b3c2190b8
profile: get_profile() returns const char*
2024-01-18 10:16:54 +09:00
kichikuou
52e2d6095a
profile: Allow various boolean expressions
...
In .xsys35rc, now "yes", "true", "on", "1" (case insensitive) mean true
and "no", "false", "off", "0" mean false.
2024-01-18 10:16:48 +09:00
kichikuou
47e2fcaec0
Add enable_zb option for enabling ZB command
...
By default it is disabled and normal weight is always used.
Issue: https://github.com/kichikuou/xsystem35-sdl2/issues/44
2024-01-18 08:27:46 +09:00
kichikuou
183ceb614a
Implement ZB command
...
Although undocumented, it also affects the font weight of selection
window.
Issue: https://github.com/kichikuou/xsystem35-sdl2/issues/44
2024-01-17 14:32:32 +09:00
kichikuou
185e62010b
Fix argument range check in commands2F60()
2024-01-14 11:35:35 +09:00
kichikuou
a9c79b2e31
sysGetOSName: Use SDL_GetPlatform()
2024-01-11 14:08:31 +09:00
kichikuou
85d40701c4
Palette 246-249 should be preserved when loading PMS8
2024-01-01 12:46:13 +09:00
kichikuou
7b535b371a
Fix initial palette values
...
These match the System3.9 default colors that came from the default
system colors in Windows 256-color mode [1].
[1] https://en.wikipedia.org/wiki/List_of_software_palettes#Microsoft_Windows_default_20-color_palette
2024-01-01 12:25:43 +09:00
kichikuou
c0dbae8202
Refactor palette data structure
2024-01-01 11:47:11 +09:00
kichikuou
ca03450b87
Windows: Add menu command for integer scaling
2023-12-15 10:46:06 +09:00
kichikuou
3314f00bf8
Fix cdGetMaxTrack for download edition of Daiakuji
...
It should return the maximum index of the BGM archive.
Fixes #43 .
2023-12-09 14:57:01 +09:00
kichikuou
f6583330de
debugger_dap: Fix a bug that seq of outgoing messages was not increasing
2023-12-08 08:57:56 +09:00
kichikuou
4b15f45897
debugger: Add custom DAP messages for communicating palette changes
...
This implements "xsystem35.palette" custom request and
"xsystem35.paletteChanged" custom event.
The "xsystem35.palette" request retrieves the color values of the AGS
palette.
interface PaletteRequest extends Request {
command: 'xsystem35.palette';
}
interface PaletteResponse extends Response {
body: {
/**
* A number that increases each time the palette changes.
*/
version: number;
/**
* 256 element array containing color values in 0xRRGGBB format.
*/
palette: number[];
};
}
The "xsystem35.paletteChanged" event indicates that the AGS palette has
changed.
interface PaletteChangedEvent extends Event {
event: 'xsystem35.paletteChanged';
body: {
/**
* A number that increases each time the palette changes.
*/
version: number;
};
}
DAP clients can know if the received value is up to date by comparing
the `version` values of paletteChanged and PaletteResponse.
2023-12-08 08:35:45 +09:00
kichikuou
a4c1dd1acf
Remove unused MOUSE_WARP_DIRECT mode
2023-09-04 17:14:17 +09:00
kichikuou
09086ccc85
IZ command: add delay even if mouse movement is disabled
...
Without it, it's hard to exit camp mode in TT2.
2023-09-04 17:03:06 +09:00
kichikuou
53e39b7c11
emscripten: Call xsystem35.shell.showMouseMoveEffect()
...
See kichikuou/web@07a6118 for details.
2023-09-04 13:32:04 +09:00
kichikuou
f0ccfee40f
Update internal mouse coordinates even if cursor movement is disabled
...
In TT2, keyboard/gamepad navigation is implemented by moving the mouse
cursor using IZ command. It did not work in browsers where mouse cursor
could not be moved or when mouse movement was disabled from the menu.
Now IZ command updates the internal mouse coordinates even when the
cursor cannot be moved.
2023-09-04 13:32:00 +09:00
kichikuou
10cdec98e6
emscripten: Improve gamepads support
...
In the W3C gamepad API, many gamepads are mapped to the "standard
layout", where D-pad keys are mapped to buttons 12-15.
2023-09-03 22:41:12 +09:00
kichikuou
3c81c8fec2
Improve error messages for when MIDI cannot be played
...
* Show warnings on failure of Mix_LoadMUS / Mix_PlayMusic
* Display "Cannot open playlist" warning only when the game does not
have MIDI
2023-07-29 07:50:55 +09:00
kichikuou
30467371f4
debugger_dap: Handle SDL messages while paused in the debugger
...
So that you can move around the window while the game is paused.
Now DAP messages read from stdin are once posted to the SDL message
queue, and then inserted into the debugger command queue in the main
thread.
2023-06-20 11:07:28 +09:00
kichikuou
e9a30f7493
Debugger: Fix crash when breakpoint condition was not met
2023-06-19 21:33:51 +09:00
kichikuou
d9e42dd4bb
Add a hack to fix Daiakuji's magenta battle background issue
2023-06-19 17:23:03 +09:00
kichikuou
0e06cc1e22
Simplify sdl_copyAreaSP16_shadow
2023-06-19 17:18:31 +09:00
kichikuou
c694d2282c
Fix CX (sprite copy) in 24-bit color games with 16-bit CGs
...
System3.x uses the following bit expansion when converting RGB565 to
RGB888:
RRRRR GGGGGG BBBBB => RRRRRRRR GGGGGGGG BBBBBBBB
12345 123456 12345 12345123 12345612 12345123
However, SDL's blit functions use a slightly different mapping, so
sometimes expanded color did not match the color key specified in the CX
command.
To avoid this, convert to RGB888 by ourselves when drawing 16-bit CGs.
2023-06-19 17:18:17 +09:00
kichikuou
39e94afc44
Specify pixel format explicitly when creating SDL surfaces
2023-06-18 14:47:50 +09:00
kichikuou
e37a491908
Refactor keycode definitions
2023-05-21 10:46:22 +09:00
kichikuou
e6b3d6094d
Use System3.9 compatible save format by default, except emscripten
2023-05-04 13:40:35 +09:00
kichikuou
61ad4282e6
Refactor agsevent_t struct
2023-05-04 11:51:21 +09:00
kichikuou
e4628d8bbb
emscripten: Add simulate_right_button()
2023-05-04 11:27:45 +09:00
kichikuou
21bd4279a1
Send AGS mouse events on touch events
...
This fixes a bug where SACT games were not responding to touch.
2023-05-04 09:01:16 +09:00
kichikuou
b6c33fd761
Update emscripten to 3.1.34
2023-05-03 17:43:35 +09:00
kichikuou
894cd51e01
Improve ZZ0,1 behavior
...
- Check nact->is_quit
- Avoid busy loop in emscripten
2023-03-28 22:03:12 +09:00
kichikuou
880244020e
Android: Use SDL_mixer for CD audio
2023-03-18 11:21:06 +09:00
kichikuou
9c2f423399
Fix use-of-uninitialized-value in save_savePartial
2023-03-18 10:41:12 +09:00
kichikuou
654a489f49
Fix memory leaks in debugger_dap.c
2023-03-18 10:32:49 +09:00
kichikuou
912af592ae
Clean up savedata.c
2023-03-18 09:51:57 +09:00
kichikuou
6d70439dff
Change how save file names are determined when no .gr file is specified
...
If `?sleep.asd` already exist, use them. Otherwise use `*s?.asd` as in
System3x.exe.
2023-03-18 09:51:51 +09:00
kichikuou
aec06f775a
Support the save format of original System3.x (except System3.5 v1)
...
Now xsystem35 can load ASD files created by System3.5 (v2+) - System3.9.
The format for saving can be configured with the -saveformat option.
2023-02-23 19:03:23 +09:00
kichikuou
446ffe9466
UG command: Fix order of popping variables
2023-02-22 17:35:45 +09:00
kichikuou
02cad74568
Allow resizing system page by DC command
2023-02-20 17:39:21 +09:00
kichikuou
33e1ff3b4a
Increase system variable page size to 65537
...
To match System3.x.
2023-02-20 17:05:54 +09:00
kichikuou
11f8f00072
Match default message/selection window locations to System3.x
2023-02-20 16:32:32 +09:00
kichikuou
b59d683fef
Change the stack layout
...
Now we use the same stack structure as System3.9. In order to maintain
the compatibility of save files, it is converted to/from the old layout
when saving/loading.
2023-02-20 14:24:37 +09:00