9dd65bc70a
More msvcrt (WIP quality) and various fixes
2025-09-29 20:07:19 -06:00
d69fc8a422
Implement kernel32 Heap* funcs using mimalloc
2025-09-29 14:54:38 -06:00
c17953b318
Refactor main module resolution & HMODULE handle behavior
2025-09-29 13:50:27 -06:00
4a2ba45620
Resolve own absolute path for subprocess spawn
2025-09-29 09:25:57 -06:00
195f6c1408
Un-stub FileTime functions; impl TerminateProcess, HeapDestroy
2025-09-29 09:25:19 -06:00
f941a1e642
Initial threading support & more impls for compilers
2025-09-28 22:44:35 -06:00
8cac50e50e
Rewrite BCryptGenRandom and add tests
2025-09-28 17:20:43 -06:00
b53ae15c82
Force builtin lmgr stub and stub missing imports
2025-09-26 19:59:58 -06:00
f23224bbcc
cl.exe works! but I didn't review most of this code
2025-09-26 17:38:24 -06:00
042a43ced1
DLL fixes; impl GetSystemInfo, __dllonexit, and more
2025-09-26 13:30:39 -06:00
a17a3c5413
Invoke dllMain with proper TIB selector
2025-09-26 13:09:27 -06:00
f83d228cc1
strutil cleanup & fixes
2025-09-26 12:01:15 -06:00
01ddf95d36
Add proper resource implementation
2025-09-26 01:51:25 -06:00
720e6639a9
Return ERROR_RESOURCE_DATA_NOT_FOUND if open_resource_stream fails
2025-09-26 01:16:52 -06:00
836f485d66
Initial external DLL support
2025-09-26 00:55:35 -06:00
Dávid Balatoni
8bd112f0e4
Add GetTempFileNameA ( #84 )
2025-06-18 00:12:39 +02:00
c9d634876d
Handle special handle value from FindFirstFileA in FindNextFileA ( #52 )
2023-10-08 13:08:53 -04:00
c4de05946d
Fix TlsGetValue
& more ( #48 )
...
`TlsGetValue` disambiguates 0 and an error by relying on `GetLastError`. Depending on the program state, `GetLastError` could be non-0, even though `TlsGetValue` succeeded. Resolve this by always setting `wibo::lastError`. This matches the behavior described by the documentation.
Additionally, when reading resources, later versions of mwcc and mwld call `GetModuleHandleA` with the program path, and then call `LoadStringA` on that handle. Support this behavior by _actually_ loading the PE at the path passed in to `GetModuleHandleA`, instead of assuming it's the current program.
(This is especially useful because sjiswrap relies on overriding `GetModuleFileNameA`, so the wrapped program reads its own resources, rather than sjiswrap's.)
Other small changes:
- Add ms-win-crt `exit` & run atexit funcs
- Implements vcruntime `memmove`
- Implements kernel32 `GetModuleFileNameA`
2023-10-01 23:56:35 -04:00
Ethan Roseman
8a6aacb82d
GetLocaleInfoW ( #47 )
...
* GetLocaleInfoW for ee-as.exe 991111b
* Try to do it the right way
* 3rd time's the charm?
* round 4
* it doesn't matter now what happens i will never give up the fight
* comments
* fin
2023-09-22 09:13:56 +09:00
ConorB
218b4d7d76
Implement enough process handling logic to make psyq4.0 happy ( #46 )
...
* Implement enough process handling logic to make psyq4.0 happy
* revert gitignore
* data type update
* PR review
* DEBUG_LOG mistake
---------
Co-authored-by: ConorBobbleHat <c.github@firstpartners.net>
2023-09-18 15:05:47 +09:00
94b44fd697
Everything needed to run simple Rust programs ( #40 )
...
* Everything needed to run simple Rust programs
* Add IsDBCSLeadByte implementation
* Address PR comments
2023-09-10 12:07:23 +09:00
7d08a2bdca
Various fixes for mwcc/mwld ( #32 )
...
* Override GetFileAttributesA for MWCC license.dat
* Add WIN_FUNC to FileTimeToLocalFileTime
* Use callee_pop_aggregate_return(0)
* Lexically normalize paths
2023-01-23 21:22:50 +01:00
6b6a462ea1
Use __attribute__((force_align_arg_pointer)) ( #30 )
2023-01-23 16:36:14 +01:00
Simon Lindholm
42f2e6935e
MessageBoxA
2022-07-27 21:27:27 +01:00
Simon Lindholm
ced712df09
Clean up function resolution a little
2022-07-18 23:02:55 +02:00
camthesaxman
97c946fd86
implement SetEndOfFile, CreateDirectoryA, RemoveDirectoryA, SetFileAttributesA ( #6 )
...
* implement SetEndOfFile, CreateDirectoryA, RemoveDirectoryA, SetFileAttributesA
* call fflush before ftruncate
2022-07-06 11:26:24 +09:00
Simon Lindholm
f11759cc71
mwcc 4.*
2022-06-29 17:34:38 +02:00
Simon Lindholm
916c10543d
ole32
2022-06-29 17:26:24 +02:00
Simon Lindholm
81e85504de
Improve logging
2022-06-29 16:56:36 +02:00
Simon Lindholm
1a9d5d5a86
resources
2022-06-29 13:19:45 +02:00
Simon Lindholm
e6dc3b4ffd
Command line parsing
2022-06-29 01:29:26 +02:00
Simon Lindholm
3fd1f6a30c
wip
2022-06-28 23:08:23 +02:00
Ash Wolf
d1a4fd35a7
first commit
2022-06-13 02:20:18 +02:00