Commit Graph
24 Commits
Author SHA1 Message Date
icex2 8b6cd4a58e refact(iidxhook9): Use sdk-hook and support new config api
Summary:

Test Plan:
2024-08-17 12:50:14 +02:00
icex2 57e68f928a feat: bemanitools 6 initial refactoring drop, alpha 1
**THIS IS A HIGHLY WORK/DEVELOPMENT IN PROGRESS VERSION**

**THINGS ARE BROKEN AND EVERYTHING IS SUBJECT TO CHANGE**

First cut after massive refactoring with most critical and fundamental changes implemented.
We need to start somewhere, and this might be as good as anything else, so we can get started
with testing, bug fixing and iterating for the next releases.

The following list is non-exhaustive, does not guarantee anything does work, yet, and is supposed
to give a high level idea of what all of this is about. Updated documentation will reflect all of
this at some later point in time in more detail.

* A common "core" now abstracts logging, thread, property and configuration infrastructure and
  provides a common interface. This is used by bemanitools internally as well as all tools, hooks
  and APIs provided and don't depend on the game, version of the game or AVS version available
  anymore
* New bemanitools (public) API
  * Versioned API allowing for handling incremental API changes as well as breaking changes by
    providing a new/different version when necessary
  * Unified interfaces for bemanitools core API, i.e. logging, threads, configuration
  * SDK with examples (TBD)
  * Dogfooding approach: Bemanitools uses its own (public) API to implement and provide fundamental
    features like configurable keyboard implementations for IO or hooks for different games and
    versions
* All bemanitools hooks and IO libraries have been or are about to be re-worked to use the new APIs
* New hook API allows for more fine grained runtime control when stages of the hook are to be
  executed, i.e. pre AVS, before main game, iat hooking instead of relying purely on DllMain
  (which is still a compatible option though)
* launcher as a replacement for bootstrap: Bring it significantly closer to the original bootstrap
  by supporting completely vanilla data and bootstrap.xml configurations to run the games. Note
  that bemanitools does not include any code or means to run DRM'd data, only decrypted
* inject is also being reworked to use as much of the same "infrastructure" as launcher to provide
  a more seamless bootstrapping process for games that keeps pre-eapki data as vanilla as possible
Summary:

Test Plan:
Summary:

Test Plan:
Summary:

Test Plan:
Summary:

Test Plan:
2024-08-15 11:34:31 +02:00
icex2 93e0a090bc refactor: Entire code base, thread and log usage
Boils down to:
- Include headers
- Reduce boiler plate with helpers
- Swap out explicit usages with core API layer
  and ensure the right API is configured beforehand
2024-08-14 17:53:51 +02:00
icex2 031836ef0e chore: Apply code formatting on entire codebase for consistent style 2023-04-06 15:39:53 +02:00
Will Xyen 3cf3d44945 sdvxhook2: add nvapi and power hooks 2022-03-15 00:38:46 -07:00
Will Xyen 18842a1dd3 d3d9ex: override adapter mode information when all the info is pre-provided by the user
This speeds up IIDX load times, as well as allows you to use "unsupported" resolutions/refresh rates on weird monitors
2021-02-06 16:25:33 -08:00
Will Xyen 18f6d9ef70 d3d9ex: add windowed position setting 2021-02-04 23:38:54 -08:00
Will Xyen 592967e191 d3d9ex: revert previous window size fix, and fix it properly 2021-02-04 23:04:56 -08:00
Will Xyen 6614cc801e d3d9ex: fix framed and window sizes for IIDX 2021-02-04 22:57:29 -08:00
icex2 ea8842b58a d3d9ex: Add force screen resolution feature
For details, see the commit adding doc to the iidxhook9 readme
2020-12-19 23:18:34 +01:00
icex2 e89889806b d3d9ex: Add new config parameters for forcing screen resolution 2020-12-19 16:57:11 +01:00
icex2 b3b2f8f433 d3d9ex: Log parameters of CreateDeviceEx for debugging and tracing 2020-12-19 16:37:02 +01:00
icex2 f9c0733af3 Adapt everything in BT5 to new capnhook API
This includes:
- Renaming of functions (iohook_invoke_next)
- Slight interface changes (com_proxy_wrap, iohook_push_handler)
- De-duplicate stuff from utils (iobuf, hr)
2020-09-02 19:35:15 +00:00
Will Xyen 10bddd4905 d3d9ex: add cursor confining (ported from sdvxhook1) 2020-04-27 12:52:07 -07:00
Will Xyen 5969573dc9 d3d9exhook: actually rotate the right monitor 2020-01-29 00:29:46 -05:00
Will Xyen 5da6997805 address MR comments. 2020-01-29 00:09:26 -05:00
Will Xyen dc98103419 formatting update 2020-01-28 04:25:25 -05:00
Will Xyen 2d07bd6f5a d3d9exhook/sdvxhook2: add option to force monitor orientation
also adds adapter hook into sdvxhook2
2020-01-28 04:23:19 -05:00
Will Xyen 214a31b24d iidxhook/d3d9exhook: Use -1 to specify default adapter instead of 0 because the indexing starts at 0
Originally thought the default monitor showed up again later, it does not
2020-01-10 17:36:34 -05:00
Will Xyen 66d1131664 clang-format pass 2020-01-10 17:24:47 -05:00
Will Xyen 3450686cf5 iidxhook: allow forcing adapter and refresh rate in d3d9 based IIDX games 2020-01-10 10:44:21 -05:00
Will Xyen 8ae06f6f4b d3d9exhook: Add option to specify the display adapter to open 2019-12-23 20:14:26 -05:00
Will Xyen 0ca353b250 sdvxhook2: add some minor documentation to config-gfx.h 2019-11-30 21:46:25 -05:00
Will Xyen ddd7853810 d3d9exhook: refactor d3d9ex hook from sdvxhook2 to shared library 2019-11-30 10:05:14 -05:00