kichikuou
f9a3ef8606
Debugger: Add "list" command
2021-10-03 16:01:06 +09:00
kichikuou
841deb6f81
Debugger: Add "help" command
2021-10-03 16:01:06 +09:00
kichikuou
d713e1470e
Make SACT work with emscripten
...
- Add some functions to ASYNCIFY_ADD
A function that calls an asynchronous function via a function pointer
must be added to ASYNCIFY_ADD, even if it had a direct call to
another asynchronous function, so that the indirect call itself is
instrumented.
- Add dummy emscripten_sleep() call to send_agsevent
Because adding a function to ASYNCIFY_ADD does not make its callers
instrumented transitively.
2021-09-25 22:54:57 +09:00
kichikuou
6268cb6a9b
Add musbgm implementation for emscripten
2021-09-25 22:54:57 +09:00
kichikuou
a5aa8d0672
Android: Update SDL2 to 2.0.16
2021-09-19 15:59:33 +09:00
kichikuou
f8b7adf3d0
Debugger: Fix crash by breakpoint on message literal
2021-08-15 18:19:37 +09:00
kichikuou
3e46c54ce6
VSP: allocate extraction buffer on heap
...
This fixes stack overflow in MacOS release build.
2021-08-15 18:19:16 +09:00
kichikuou
0925ee86e0
Move xsys35rc.sample to repository root directory
...
And describe the PortMidi option.
2021-08-14 17:19:06 +09:00
kichikuou
7a77470a19
Split debugger into two parts
...
The core (debugger.c) and CUI part (debugger_cui.c).
2021-08-01 22:16:21 +09:00
kichikuou
068a2910b5
Fix texthook in Unicode mode
2021-08-01 13:52:14 +09:00
kichikuou
6ef699e87d
Clean up scenario.h dependencies
...
- nact.h and xsystem35.h no longer include scenario.h
- Removed `sys_*` aliases in nact.h
- sys_getString() and sys_getConstString() are moved to
scenario.c as sl_getString() and sl_getConstString()
- DEBUG_COMMAND macros are now defined in scenario.h
2021-07-31 15:18:02 +09:00
kichikuou
d6dd7d34b7
Refactor scenario.{h,c}
2021-07-31 13:56:47 +09:00
kichikuou
a4f0e18d70
Windows: Allocate a console for debugger
...
Since xsystem35 is built as a GUI executable, we have to create a
console explicitly.
2021-07-31 09:56:43 +09:00
kichikuou
80bd68214b
Debugger: Allow interrupts inside sleep functions
...
This makes it possible to enter a REPL in the middle of command
execution (for example, while waiting for input in the A command).
2021-07-25 21:26:05 +09:00
kichikuou
4143cfc83b
Debugger: Add string command
...
It prints contents of string variables.
2021-07-24 17:52:40 +09:00
kichikuou
541cd22e56
Debugger: Support more ways to specify breakpoint locations
...
- `break function` sets a breakpoint to the entry of `function`, which
is either a global function or a local function in current page.
- `break number` sets a breakpoint to the specified line in current
file.
2021-07-24 17:47:26 +09:00
kichikuou
d82175c9f5
Debugger: Add quit command
2021-07-24 17:27:13 +09:00
kichikuou
21e43b5cc7
Debugger: Support FUNC debug information
...
It is used to print function names in backtrace.
2021-07-24 17:27:10 +09:00
BEN ENGLISCH
5283a0aa5d
Left/right select first/last menu items
2021-07-21 08:32:03 +09:00
BEN ENGLISCH
91d30c9b13
Fix mouse warping by translating coords
2021-07-21 08:32:03 +09:00
BEN ENGLISCH
f66ebff002
Add integerscale option
2021-07-21 08:32:03 +09:00
BEN ENGLISCH
98e1355461
Fix midi_pause()
2021-07-21 08:32:03 +09:00
kichikuou
35b1b12ab6
Linux CI: Build with PortMidi
2021-07-19 18:59:49 +09:00
BEN ENGLISCH
1e2ea9821c
Add PortMidi MIDI implementation
2021-07-19 09:09:23 +09:00
kichikuou
e5fab0f198
Add source-level debugger
...
If -debug option is specified, xsystem35 enables built-in debugger. It
optionally loads debug information from *SA.ALD.symbols file (generated
by xsys35c), and drops into a debugger REPL.
Currently the debugger supports:
- Simple breakpoints
- Backtrace
- Single-step execution (step into / step over)
- Printing variables
Also, when the debugger is enabled SIGINT breaks execution and enters a
REPL.
2021-07-18 22:55:22 +09:00
kichikuou
2e2fbbaa1b
Refactor main loop
2021-07-17 22:12:16 +09:00
kichikuou
fb44e5b1e3
Add a hack to improve Rance4 map navigation
...
Fixes #23 .
This is quite hacky but I couldn't find any cleaner solutions.
2021-07-16 14:35:00 +09:00
kichikuou
6690687d0f
emscripten CI: Use standard setup-emsdk way to cache
2021-07-14 18:01:23 +09:00
kichikuou
26c9f663ca
Update emscripten to 2.0.25
2021-07-14 17:46:29 +09:00
kichikuou
d5a7040b54
Fix SU command
...
This fixes a bug in various games where waiting for sound effects to
finish was not working.
`SU var1, var2:` should set var1 to 1 if sound is playing. Before this
fix, it was set to the return value of mus_pcm_get_playposition(), which
is usually 0 (OK).
2021-07-13 21:29:58 +09:00
kichikuou
3280d6073b
Android: migrate from jcenter to mavenCentral
2021-06-25 21:14:40 +09:00
kichikuou
ca09dc7413
Treat font load failure as a fatal error
2021-06-19 16:29:47 +09:00
kichikuou
cc60fdfb7d
Android: Allow specifying custom fonts in .xsys35rc
...
Now custom font files specified in .xsys35rc (as relative paths from the
ZIP root) can be loaded correctly.
This fixes #20 for Android.
2021-06-03 18:58:29 +09:00
kichikuou
ac703b3448
Android CI: downgrade CMake to 3.19
...
To workaround build error with NullPointerException
(https://github.com/actions/virtual-environments/issues/3078 ).
2021-05-09 22:16:17 +09:00
kichikuou
2c6a66af8f
Android: Update build instructions to use CommandLine Tools 4.0
2021-05-09 22:05:54 +09:00
kichikuou
fdcc3de352
Add a hack to trick LHG command error check in Diabolique
...
This fixes the issue where "HDD is full or CD is not inserted" error
message is displayed in Diabolique.
2021-05-09 15:00:16 +09:00
kichikuou
dda7d7f077
Update emscripten to 2.0.15
2021-03-18 15:50:05 +09:00
kichikuou
a159e7cb24
Show error instead of SEGV when System39.ini is missing
...
See #18 .
2021-03-08 09:38:46 +09:00
kichikuou
785f46be2a
Android Build: Update SDL2_ttf and SDL2_mixer
2021-02-22 08:45:46 +09:00
kichikuou
7ca3f2527e
GTK: Stop loading custom resource file
2021-01-31 13:03:33 +09:00
kichikuou
f6221a04ba
GTK: Migrate off of deprecated functions
2021-01-31 13:02:14 +09:00
kichikuou
7069343e57
GTK: Crash fix
...
It seems SDL2 must be initialized before initializing GTK.
2021-01-31 13:00:48 +09:00
kichikuou
9be7b0ab68
Migrate from GTK 2 to GTK 3
2021-01-31 12:59:05 +09:00
kichikuou
8779763615
GTK: Do not use deprecated symbols
2021-01-31 12:58:21 +09:00
kichikuou
869e2e34dd
emscripten: Enable DLL modules
...
And remove the ENABLE_MODULES build option.
2021-01-24 14:50:06 +09:00
kichikuou
c0daba25a5
Implement ShPort.OutputMessageBox
2021-01-24 11:59:40 +09:00
kichikuou
9775c4569d
Implement ShPort.InputListNum
...
This function is used only in hidden contents (map editor of Alice in
Kaeru nyo Land and unit editor of Daiakuji).
This implementation just calls menu_inputnumber(), while the original
ShPort.DLL shows a listbox.
2021-01-24 11:59:39 +09:00
kichikuou
21444ac1c0
NIGHTDLL: Fix a function signature mismatch
2021-01-24 11:59:34 +09:00
kichikuou
d61ce9a18e
SACT/NIGHTDLL: Check nact->is_quit flag in wait loops
2021-01-24 11:43:23 +09:00
kichikuou
04c3e22339
Remove setRect() and setOffset() macros
2021-01-23 23:07:12 +09:00