Tau
92b73df3e7
Load and bind aimeio at runtime
2021-06-13 11:27:01 -04:00
Tau
edd26aafe7
Export aimeio symbols from hook DLLs
2021-06-13 11:27:00 -04:00
Tau
90d908fe07
Statically link current aimeio implementation
2021-06-13 11:27:00 -04:00
Tau
e57aeb03c3
Simplify DLL hook mechanism
...
This change deletes the GetProcAddress hook and exports symbols
corresponding to the hooked functions from each hook DLL instead;
we stop at redirecting LoadLibrary/GetModuleHandle calls to the
hook DLL. This simplified approach has less hidden magic going on
behind the scenes and is more readily composable (i.e. a hook DLL
can export redirect symbols for more than one dynamically-loaded
DLL).
2021-06-13 11:27:00 -04:00
Tau
c71ff1bcb5
Add module DEF file for chunihook
2021-06-13 11:27:00 -04:00
Tau
49595d2c37
Fix hook startup failure path
...
Returning from the EXE PE entry point merely terminates the main
thread and leaves the process hanging. We need to explicitly exit
from the process since the NTDLL RTL Start code won't do it for us.
2021-06-13 11:27:00 -04:00
Felix
d2996c5271
chunihook: Explicitly load dbghelp.dll so path hooks apply to it
...
- This allows AMLib (in Chunithm and other games) to successfully
initialize without requiring the game to be run as Administrator on
first boot to create `C:\Users\AppUser\temp`.
2021-02-13 15:53:40 -05:00
dogtopus
356e8ae20c
Unify LED command name for Diva/Chunithm slider
2019-12-29 22:48:35 -04:00
Tau
a94772b0c4
Shift hook DLL config structs around
2019-11-05 20:11:25 -05:00
Tau
a87b8f72fa
Abort hook DLLs on startup error
2019-11-05 18:03:24 -05:00
Tau
dfc1e13397
cardhook: Fold back into chunihook
...
And so the cycle goes on.
2019-11-03 15:38:15 -05:00
Tau
0e1cfb66db
Improve JVS bus life cycle handling
2019-11-03 13:01:38 -05:00
Tau
3d6669dff1
platform: Re-fuse Nu and ALLS platforms
...
There's basically no difference at the platform level except for
the addition of the ALLS PCBID hook, which is harmless on Nu.
2019-11-03 09:52:33 -05:00
Tau
d31d13e0da
chunihook/slider.c: Add config
2019-10-19 20:37:43 -04:00
Tau
7c721aa1f8
hooklib/gfx.c: Wire up gfx config
2019-10-19 17:05:02 -04:00
Tau
dfcf3d8bd1
hooklib/spike.c: Add a measure of configurability
2019-10-19 16:15:14 -04:00
Tau
e918795445
Make clock hook configurable
2019-10-14 23:18:18 -04:00
Tau
94005de9e9
hooklib/clock.c: Split clock read and write hooks
2019-08-21 12:54:10 -04:00
Tau
d19b44e3a7
Revert "chunihook: Subsume cardhook"
...
This reverts commit c69a09ead4323e33e4b6a867bba6c0fe58b77af0.
2019-08-20 13:13:20 -04:00
Tau
9ea6e09fdc
Tweak JVS coin count APIs
...
This makes things more consistent with the button/analog APIs.
2019-08-03 17:41:39 -04:00
Tau
b44b62fc72
chunihook: Subsume cardhook
...
One less DLL floating around.
2019-06-09 15:42:20 -04:00
Tau
6d06429217
chunihook/jvs.c: Fix active-low beam trigger
2019-06-09 15:40:16 -04:00
Tau
dff71b530a
chunihook/config.c: Consolidate config
2019-05-18 00:00:57 -04:00
Tau
5722061cbf
platform: Wire up configuration
2019-05-18 00:00:57 -04:00
Tau
6d933eb8f4
amex/config.c: Rename from cfg.c
...
Easier to type and more consistent with its identifiers.
2019-05-17 23:07:20 -04:00
Tau
1b93551a41
hooklib: Split out of util
...
This is distinct from capnhook's hooklib, although the intent is
the same. Hopefully these two libraries sharing a name won't get
too confusing...
2019-05-14 17:13:08 -04:00
Tau
c19d140589
Wire up libamex config
2019-05-04 14:50:33 -04:00
Tau
364267ba66
Use amex_hook_init()
2019-05-04 12:04:53 -04:00
Tau
5e823a9e22
Rename slider-hook files to slider
2019-05-03 15:59:51 -04:00
Tau
46ab6c3d96
chuniio: Break out Chunithm IO DLL
2019-05-03 14:46:58 -04:00
Tau
0271abb21e
board/io3.c: Fix JVS coin counter emulation
2019-05-02 19:38:39 -04:00
Tau
025102fc58
Remove PCH source files
...
Deprecated in newer versions of Meson.
2019-05-01 21:17:30 -04:00
Tau
bc297b2480
Split libnu into libplatform, libamex
...
Going to add some ALLS stuff to libplatform and the ALLS hardware
does not contain an AMEX board.
2019-03-04 17:22:38 -05:00
Tau
bbe085b73d
board/slider-cmd.h: Add separate Diva LED cmd
...
The Chunithm slider has sixteen cells and fifteen (I think?)
vertical lines splitting the cells. Diva does not have these lines,
so presumably the LED data format is different. Need to analyze
this further.
2019-02-26 13:49:29 -05:00
Tau
8036ff71ec
board: Factor out Chunithm slider
2019-01-26 12:05:37 -05:00
Tau
51e4eca7dd
Add MSVC PCH support
2018-11-23 18:25:22 -05:00
Tau
9ec0fbf957
Suppress hook DLL exports
2018-11-23 18:12:36 -05:00
Tau
0cbd950289
Fix non-PCH build
2018-11-23 14:37:42 -05:00
Tau
51994d59ff
Combine both clock hooks
...
Turns out the clock skew doesn't really work unless RTC and TZ
changes are blocked as well.
2018-11-23 14:23:16 -05:00
Tau
9f43f9f397
Hoist slider from board into chunihook
...
Diva slider uses the quasi-JVS framing used by all other SEGA
boards, the Chunithm slider is a special case.
2018-11-20 20:33:17 -05:00
Tau
9c83a38208
util/clock.c: Apply clock skew
...
SEGA games are unplayable between 03:00 and 07:00 local time due
to a network maintenance period that is hard-coded into the games
themselves (no, guest play is not available).
Deal with this by slowing down time to avoid 02:00 (the time when
a warning appears and new credits eventually start being rejected),
then jump forward to sync up with real time when 07:00 hits.
2018-11-20 20:33:17 -05:00
Tau
9614185511
util/spike.c: Use different filenames for each DLL
...
Might want to hook Chunithm and the card reader satellite process
side by side for instance.
2018-11-20 20:33:17 -05:00
Tau
c1dee321f3
chunihook/dllmain.c: Wire up Chunithm hook DLL
2018-11-20 20:33:17 -05:00
Tau
4564699a42
chunihook/slider.c: Add Chunithm slider emulation
2018-11-20 20:33:17 -05:00
Tau
75e227cc91
chunihook/jvs.c: Add Chunithm cabinet JVS callbacks
2018-11-20 20:33:17 -05:00
Tau
66132effd7
chunihook: Add empty DLL
2018-11-20 20:33:17 -05:00