Skip to content

Less invasive Any CPU implementation inspired by @Chicken-Bones#738

Open
Akarinnnnn wants to merge 122 commits intorlabrecque:masterfrom
Akarinnnnn:anycpu-2
Open

Less invasive Any CPU implementation inspired by @Chicken-Bones#738
Akarinnnnn wants to merge 122 commits intorlabrecque:masterfrom
Akarinnnnn:anycpu-2

Conversation

@Akarinnnnn
Copy link
Contributor

@Akarinnnnn Akarinnnnn commented Aug 18, 2025

Originally posted in #699. Achieved by register a dll resolve hook to default Assembly Load Context Steamworks.NET assembly.

Dependencies to static class NativeLibrary makes this change is not meaningful to any runtimes other than .NET(Core). So these changes are separated into a different folder to keep old version unchanged like .NET Framework 4.0 does.

You will see horrible long commit history because the management of SteamworksParser is switched to git subtree. Which means I imported SteamworksParser files and history into this repository. Since SteamworksParser is always bundled with source code generator, in my practice, I finally decided manage them in monorepo way.

And sorted Skippedlines
ryan-linehan and others added 30 commits November 4, 2025 21:13
But pack aware struct nested in common struct are not in consideration. Write it down here for one day we met some bug related.
A workaround of incorrect codegen of `SteamNetConnectionInfo_t` .
Puropse is to exclude fake top level structs like CGameID::GameID_t. Maybe just add a table is enough?
Simplify marshal fix #1 's review page, hide these `git subtree`
imported commits from by merge them into base branch `anycpu-2`.
Update pre-baked generator resource.

Make `SteamMarshallerTable` public.

Added `.editorconfig` to enforce style.
Move Any CPU native resolve logic to another file.

Minor changes to .editorconfig
Our goal is to fix most callback system related marshal issues.

Added a conditional marshalling table to decide which alignment to use
at runtime, this should fix most callback-retrieve related issues..

Parameter marshal is done, through it looks ugly. It will be
fixed in next upcoming PR.

We have a mechanism to find out packsize aware structs now.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants