Commit Graph
14 Commits
Author SHA1 Message Date
Shiz d3f192976c launcher: print build info at startup 2023-06-25 12:51:33 +02:00
icex2 031836ef0e chore: Apply code formatting on entire codebase for consistent style 2023-04-06 15:39:53 +02:00
QCDLZCLW3K f8a09580ea Support pop'n music 15-18
* popnhook1 for pop'n 15 - 18 has been added
* popnio has been added
* inject.exe has new syntax for loading hook DLLs, `real.dll=hook.dll`. This will trigger an early IAT hook where it will load the EXE suspended without resolving imports, replace the reference to real.dll in the import table with hook.dll, and then resolve everything before launching. This allows for ezusb.dll to be hooked properly.
* launcher.exe also has a new early IAT hook feature now. Use `-I real.dll=hook.dll`. The idea is the same as described above for inject.exe.
* Updated ezusb constant namings based on what is visible in ezusb.dll's debug statements.

The launcher.exe implementation of early IAT hooking means that someone can implement popnhook2.dll for 19 and above. I have tried pop'n music Sunny Park using a modified version of popnhook1 and it seems to work to some degree: the I/O check and security check returns OK which means the ezusb hooking used in popnhook1 is also working for the later games using `launcher.exe -I ezusb.dll=ezusb2-popn-shim.dll ...`. The process is rather invasive (manually resolving all imports means more chances to fail) so it has been implemented in such a way that the launcher will work the same as it has before as long as `-I` isn't specified.

One questionable thing I am not confident about is the `texture_usage_fix` hack flag I added in the conf. As the comment says, pop'n music 16 will work in Windows XP without the flag being set, but the game will immediately crash on later OSes without the flag being set in my experience. No other games had this issue in my experience. Enabling it in other games doesn't seem to have any negative effects.
2022-06-10 22:46:59 +00:00
Will Xyen dd7fd860b5 launcher: add 2.15.9 def
(same as 2.15.8 except with new kbt, and different log ordinals)
2021-02-12 02:11:07 -08:00
Will Xyen 7d129a3e63 launcher: Actually init the default service override options and make override_urlslash_value more clear 2020-12-21 10:03:48 -08:00
Will Xyen 29db89cebe launcher: allow overriding service url and url slash from the command line 2020-12-21 09:59:06 -08:00
icex2 65a45740d2 launcher: Log OS version on startup 2020-09-02 22:04:55 +02:00
Will Xyen 8e9abf9906 launcher: Set soft_id_code before calling init as some games use it then 2020-07-24 08:47:25 -07:00
Will Xyen 4816fb809d launcher: Use more descriptive error message for ERROR_MOD_NOT_FOUND 2020-07-06 18:03:25 +00:00
Will Xyen 0d3fa54316 launcher: Add before-hook support
Required to hook certain things that happen on module load / avs boot:
 - network adapter hooking for avs
 - envvar setting

Note: the logging facilities are NOT setup yet at this point
so these hooks cannot use avs for logging
2020-04-05 01:42:08 -07:00
Will Xyen 66d1131664 clang-format pass 2020-01-10 17:24:47 -05:00
Will Xyen 3b8f6ac1d9 launcher: make app_config.xml optional 2019-12-23 20:40:51 -05:00
icex2 c3bc8782f4 Apply clang-format code style to all source files 2019-10-20 00:50:40 +02:00
icex2 cbd7720349 Bemanitools v5.26 release 2019-09-27 22:36:50 +02:00