Commit Graph

44 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
bd1e893b7a platform/amvideo.c: remove left-over brace from debug messages 2020-05-21 00:58:24 +00:00
8108ec2130 platform/vfs.c: allow nthome and option path hooks without ending back-slash
- This actually fixed option loading.

- Ongeki uses forward-slashes for Y:/SDDT/log
2020-05-20 18:09:23 +00:00
888be1df7c6f962725a28a172a5394eec3e228e7
b8c960b526 platform/vfs.c: allow relative paths in configuration 2019-12-22 22:41:08 +01:00
888be1df7c6f962725a28a172a5394eec3e228e7
e97f6b5d8d platform/vfs.c: add option path redirection
Optional for now, since not all games or configurations may need it.
It may be better eventually to refactor hooklib/path.c to allow for
static path remapping, to minimize boilerplate code around the functions.
2019-12-22 18:27:19 +01:00
888be1df7c6f962725a28a172a5394eec3e228e7
54cd2f6e9a hooklib/path.c: add slash-insensitive path comparison API 2019-12-19 08:31:44 +01:00
Will Toohey
4bc7eee909 Allow dns hook to fail a resolve and add domains
This lets people with crap ISPs that resolve domains
that they shouldn't to use the game without
changing their DNS server
2019-11-17 15:08:25 +10:00
Will Toohey
9f933bb371 Fix compile due to undefined CERT_NAME_BLOB
mingw-w64 bug 523 means that compile fails with missing type CERT_NAME_BLOB
Pulling in wincrypt.h solves this
2019-11-17 14:31:23 +10:00
Tau
0317a48280 platform/netenv.c: Fix GetIfTable() for idz 2019-11-07 18:11:26 -05:00
Tau
7f05295b2e platform/config.c: Fix sscanf() format string 2019-11-06 20:18:56 -05:00
Tau
48721f5418 platform/vfs.c: Abort if VFS is misconfigured 2019-11-05 20:44:00 -05:00
Tau
8b8656c9d2 platform: Shift config structs around 2019-11-05 19:31:11 -05:00
Tau
dcdc19086d platform/config.c: Set sensible default keychip subnet 2019-11-04 21:47:41 -05:00
Tau
f76ddf2103 platform/amvideo.c: Trim debug log
We don't really need to dump all those hex memory addresses.
2019-11-03 19:54:41 -05:00
Tau
c7255e3ebb platform/pcbid.c: Return HRESULT for consistency 2019-11-03 19:54:31 -05:00
Tau
879dc0bfb4 Use new iohook_open_nul_fd() API
Makes error handling more consistent
2019-11-03 11:02:54 -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
06df306c52 Fix some dprintf() message prefixes 2019-11-03 09:44:40 -05:00
Tau
46e5c6127d Fix function pointer calling convention syntax
Fixes MSVC build
2019-11-03 08:36:37 -05:00
Tau
de134877a6 platform/netenv.c: Virualize LAN configuration 2019-11-02 23:10:27 -04:00
Tau
e918795445 Make clock hook configurable 2019-10-14 23:18:18 -04:00
Tau
0242c5efc8 platform/dns.c: Intercept router host names 2019-09-07 13:49:04 -04:00
Tau
29d9561a28 platform/vfs.c: Redirect AppUser home dir
One less thing to require admin privileges.
2019-09-04 15:38:50 -04:00
Tau
a77e9efbed platform/platform.c: Integrate platform DNS hook 2019-09-04 13:47:31 -04:00
Tau
1affb5c169 platform/dns.c: Add platform DNS hook 2019-09-04 13:47:31 -04:00
Tau
05e4dda8e6 Add missing <assert.h> includes
Fixes non-PCH build.
2019-09-01 11:48:14 -04:00
Tau
13c59b13b8 platform: Add ALLS platform 2019-08-30 18:46:57 -04:00
Tau
86bd7443cc platform/amvideo.c: Stub monitor_setting_X reg val 2019-08-30 18:46:19 -04:00
Tau
886b7c5990 platform/pcbid.c: Fixups 2019-08-30 18:45:24 -04:00
Tau
65ccaf55f3 platform/pcbid.c: Use pcbid_config 2019-08-20 18:44:57 -04:00
Tau
8774b83f9c platform/config.c: Add struct pcbid_config 2019-08-20 18:44:47 -04:00
Tau
47238b210b platform/reg.c: Blackhole SystemError reg val 2019-06-09 15:38:27 -04:00
Tau
55062bf56b platform/misc.c: Add miscellaneous registry hooks 2019-05-18 00:00:57 -04:00
Tau
a74a5de128 platform/vfs.c: Add filesystem path redirectors 2019-05-18 00:00:57 -04:00
Tau
5722061cbf platform: Wire up configuration 2019-05-18 00:00:57 -04:00
Tau
e935c22206 platform/amvideo.c: Add registry hooks 2019-05-18 00:00:57 -04:00
Tau
ace7e726bd platform/config.c: Add initial config system 2019-05-18 00:00:57 -04:00
Tau
3e91ac2393 platform/amvideo.c: Add virtual amvideo.dll hook 2019-05-14 18:03:25 -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
07237730cd Use string equality wrappers 2019-05-14 17:13:08 -04:00
Tau
025102fc58 Remove PCH source files
Deprecated in newer versions of Meson.
2019-05-01 21:17:30 -04:00
Tau
2b50369ad2 platform/hwmon.c: Suppress logging
We don't really care exactly when the CPU temp gets checked.
2019-03-27 18:46:22 -04:00
Tau
657367c040 platform/pcbid.c: Add ALLS hostname hook 2019-03-16 12:17:41 -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