Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

core/sys/windows part 2 #3362

Open
wants to merge 3 commits into
base: master
Choose a base branch
from
Open

Conversation

Hyrtwol
Copy link
Contributor

@Hyrtwol Hyrtwol commented Apr 2, 2024

Part 2 of sys/windows procs. Some highlights:

  • procs for getting various "system" info e.g. codapage
  • gdi procs for bitblit with alpha blend
  • palette types and procs
  • redefines some of the "macro" procs to act exactly like their c counter part (main issue was missing masking of the input args)

This turned into a lot of changes so ended up adding some very basic tests.
see /tests/core/sys/windows/test_windows_generated.odin

The test will just verify type sizes and cont values. It was very tedious work so made a generator in c++, the code is a bit odd as it's "mis" using the c++ macros, so not sure if it could be part of the commit so let me know if i should trim it out?

Also I didn't find a good way to generate tests for enums but should be doable. See /tests/core/sys/windows/win32gen

(must say it is convenient to be able to look up win32 types that way, I did use these macroes for other lib projects aswell just to make sure i got the struct sizes right ;))

@Hyrtwol Hyrtwol requested a review from gingerBill April 5, 2024 23:09
@Hyrtwol
Copy link
Contributor Author

Hyrtwol commented Apr 28, 2024

Merged in some old branches to avoid rewriting similar procs and types

@Hyrtwol
Copy link
Contributor Author

Hyrtwol commented Apr 28, 2024

Any chance to get this reviewed? This PR is getting old and big

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.

None yet

2 participants