kichikuou
5bae0c16c5
Simplify gr_ functions using SDL surface operations
2025-02-16 21:03:59 +09:00
kichikuou
d551cdbb70
Refactor text rendering functions in modules/
2025-02-16 13:13:16 +09:00
kichikuou
e711d5786e
Make agsurface_t backed by SDL_Surface
...
This adds `sdl_surface` field to agsurface_t. `agsurface->pixel` is now
set to `agsurfae->sdl_surface->pixels`.
Note that the `sdl_surface` field does not have alpha; transparent
surfaces have a separate alpha plane in `agsurface->alpha`.
2025-02-16 13:13:13 +09:00
kichikuou
64abb3c582
screenshot: Save only view area, not entire sdl_dib
2025-02-11 13:46:20 +09:00
kichikuou
bf26f1b0c0
Refactor clipping functions
2025-02-11 12:36:21 +09:00
kichikuou
f4f1a99372
Fix mathClip command
2025-02-11 12:36:18 +09:00
kichikuou
53f0a5ce2a
sdl_effect: Fix palette issue when texture is created from sdl_dib
2025-02-11 10:30:25 +09:00
kichikuou
c621a5dddb
Remove intermediate screen buffer
...
Pixels are now copied directly from sdl_dib to sdl_texture.
2025-02-11 08:37:47 +09:00
kichikuou
42faf38a47
emscripten: Replace sdl_getDisplaySurface with save_screenshot function
2025-02-10 07:47:48 +09:00
kichikuou
fb77b229ea
Apply text decoration to selection menus too
2025-02-07 10:52:58 +09:00
kichikuou
886d55057a
ZZ13 command should also affect menu font
...
This fixes the problem of menus always being displayed in Gothic font.
The font type at the time the `]` command is executed should be used.
2025-02-07 09:29:30 +09:00
kichikuou
7f645d6bd1
Refactor function return types in modules/
2025-02-03 09:24:45 +09:00
kichikuou
f8d59e5fc0
Refactor savedata, s39ain, s39ini interfaces
2025-02-02 22:33:56 +09:00
kichikuou
78ebbf40f4
Refactor mus_* interfaces
2025-02-02 22:19:43 +09:00
kichikuou
dccd75113b
emscripten: Make load_mincho_font() return bool
2025-02-02 14:25:36 +09:00
kichikuou
d063655b25
Refactor muspcm_* interface
2025-02-02 13:52:54 +09:00
kichikuou
5e0844e9ea
Refactor musbgm_* interface
2025-02-02 13:08:04 +09:00
kichikuou
386c3c0fcd
Refactor cdromdevice_t interface
2025-02-02 12:50:15 +09:00
kichikuou
2857c13e15
Refactor mididevice_t interface
2025-02-02 12:49:39 +09:00
kichikuou
d14b42c146
Replace boolean/TRUE/FALSE with bool/true/false
2025-02-02 10:02:08 +09:00
kichikuou
29988d0d6c
Simplify boolean expressions
2025-02-02 09:36:20 +09:00
kichikuou
bc5d72b6fe
Refactor cali.c
2025-02-02 09:00:24 +09:00
kichikuou
03f9b36ff0
Fix palette issue in DALK intro
...
The intro screen of DALK works as follows:
1. load CG 304 to (0,0)-(639, 399) using palette 16-31
2. load CG 305 to (0,400)-(639,799) using palette 16-31
3. CE (copy with effect) from (0,400)-(639,799) to (0,0)-(639, 399)
Step 2 destroys the palette range of CG 304, so before the copy the
pixels in (0,0)-(639,399) have incorrect colors when displayed with the
latest palette.
To avoid this problem, we need create the "old texture" of sdl_effect
from sdl_display instead of sdl_dib.
2025-01-23 14:35:00 +09:00
kichikuou
afb9f96a1a
Improve midi.portmidi.c
...
One MIDI thread now handles multiple playbacks.
2025-01-15 11:10:09 +09:00
kichikuou
abbe8b9be1
Add warning for missing .ALD files
...
This warns when the link table has an entry but the contents cannot be
read.
For example, Atlach-Nacha installs only GA.ALD on the hard drive and
read GB.ALD directly from the CD-ROM. This warning message prompts the
user to copy GB.ALD to the game directory.
2025-01-09 09:24:50 +09:00
kichikuou
10735b8be6
Windows: Add application manifest to set ActiveCodePage to UTF-8
...
This will set the process code page to UTF-8 on Windows 10 version 1903
or above, allowing Japanese file names to be handled correctly even if
the system locale is not Japanese.
2025-01-09 08:58:14 +09:00
kichikuou
e9d8a9d1a6
Refactor: Remove sdl_videodev and its accessor macros
2025-01-09 08:26:53 +09:00
kichikuou
780d30c01f
Fix lnkIsLink
...
If the link table indicates the existence of an entry, but the volume
containing that entry is missing, this command returns 1.
2025-01-08 16:15:37 +09:00
kichikuou
d6adb3241c
Add sdl_showMessageBox and replace menu_msgbox_open
2025-01-08 11:24:49 +09:00
kichikuou
3594fc19dc
Fix slot game speed in Persiom
2025-01-08 10:54:56 +09:00
kichikuou
7da9e64ab6
Fix speed of slot game in Ore no Shita de Agake
2025-01-07 16:16:01 +09:00
kichikuou
bba602ab04
Scheduler: Yield based on scenario address
...
Now it yields execution when the device state is checked multiple times
from the same scenario address.
2025-01-07 16:15:59 +09:00
kichikuou
78dc226d13
Add scheduler.c
...
It consolidates VM throttling logic that was scattered in various
places.
2025-01-07 15:52:48 +09:00
kichikuou
a2792d502e
Implement mathSetClipWindow and mathClip
...
Used in Ore no Shita de Agake.
2025-01-07 15:52:47 +09:00
kichikuou
dde697d3b4
Implement S3xMusic HLL
...
Used in Ore no Shita de Agake.
Since the musbgm_* interface does not allow multiple channels, this
implementation uses musbgm_* for channel 0 and muspcm_* for channel 1.
2025-01-07 15:41:43 +09:00
kichikuou
c4d4f85ae4
Use consistent message format in sys_message()
2025-01-06 14:26:47 +09:00
kichikuou
84e3666a66
Rename DEBUG_COMMAND{,_YET} to TRACE{,_UNIMPLEMENTED}
...
And now TRACE_UNIMPLEMENTED is not ignored in release build.
2025-01-06 14:14:10 +09:00
kichikuou
85d69aa5f0
Output debug messages by ZD command at log level 2
2025-01-05 12:46:37 +09:00
kichikuou
7beb558140
Fix compiler warnings about unused results
2024-12-30 15:47:31 +09:00
kichikuou
49126c506d
debug_symbol: Fix warning message format
2024-12-26 08:37:14 +09:00
kichikuou
99ad91306b
Emscripten: Use texthook suppression list
2024-12-06 13:11:09 +09:00
kichikuou
ed96f26cea
Add texthook_suppress option
...
For suppressing text hook on specified scenario pages.
2024-12-06 09:24:08 +09:00
kichikuou
e6f71190ed
Add texthook option
...
`-texthook print` prints text to console, and `-texthook copy`
automatically copies text to clipboard (for use with text hooker tools).
On Windows, copy mode can be toggled from the menu bar.
2024-12-04 16:34:12 +09:00
kichikuou
8219feee6d
Windows: Redirect stderr to console
...
So that WARNING messages are printed on the console.
2024-12-04 11:43:59 +09:00
kichikuou
471c65973b
emscripten: Do not use mmap for ALDs
...
To save memory, as ALD files are now stored as regular files in memfs.
2024-11-28 10:23:21 +09:00
kichikuou
5ff7149dc1
Fix a compiler warning
2024-11-28 10:21:18 +09:00
kichikuou
80988e52cf
emscripten: Restore a hack to asyncify send_agsevent() callers
...
It was inadvertently removed in commit 61ad428 .
2024-11-27 09:12:39 +09:00
kichikuou
36e1dc152b
Fix crash when canceling menu with two-finger touch
...
Fixes #58 .
It was a regression by commit eeeab6e .
2024-11-12 08:55:36 +09:00
kichikuou
c515b21afb
Refactor ags_eSpriteCopyArea()
2024-09-01 21:44:11 +09:00
kichikuou
d3db3fa83e
sdl_effect: Implement EFFECT_PAN_IN_* and EFFECT_SKIP_LINE_*
...
This also fixes incorrect behavior of `CD 1` and `CD 2`.
2024-09-01 14:57:59 +09:00