Commit Graph

30 Commits

Author SHA1 Message Date
Tau
45e2416702 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
fab50e5e34 Fix Diva slider startup 2021-06-13 11:27:00 -04:00
Tau
972b3a5de8 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
5d3b9130281102eb36519ddd0a2c6868ff061a3b
901cedce89 Unify LED command name for Diva/Chunithm slider 2019-12-29 22:48:35 -04:00
5d3b9130281102eb36519ddd0a2c6868ff061a3b
16094c0720 Style fixes 2019-12-29 22:20:54 -04:00
5d3b9130281102eb36519ddd0a2c6868ff061a3b
180dc3378a Diva: Fix slider detection & sensor order 2019-12-29 21:13:40 -04:00
5d3b9130281102eb36519ddd0a2c6868ff061a3b
d32f6ab18b divahook: Add an option to disable slider emulation 2019-12-29 13:28:32 -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
bf90450539 divahook/slider.c: Propagate HRESULT 2019-11-05 18:03:16 -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
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
05e4dda8e6 Add missing <assert.h> includes
Fixes non-PCH build.
2019-09-01 11:48:14 -04:00
Tau
94005de9e9 hooklib/clock.c: Split clock read and write hooks 2019-08-21 12:54:10 -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
e06be9fc7b board/sg-reader.c: Configurate sg_reader 2019-06-03 22:28:44 -04:00
Tau
7b665b1288 Cosmetic fix 2019-05-28 17:20:13 -04:00
Tau
d44740647c divahook/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
b172c22322 board/sg-reader.c: Streamline further
Remove remaining pointless boilerplate, turn it into a free-
standing hook, since its aimeio.dll dependency forces it to be a
singleton anyway.
2019-05-03 21:23:21 -04:00
Tau
5e823a9e22 Rename slider-hook files to slider 2019-05-03 15:59:51 -04:00
Tau
2405526f35 divaio: Break out Project Diva IO DLL 2019-05-03 15:50:37 -04:00
Tau
0271abb21e board/io3.c: Fix JVS coin counter emulation 2019-05-02 19:38:39 -04:00
Tau
24b82b64e6 divahook: Add initial Project Diva hook 2019-03-16 12:17:41 -04:00