Commit Graph
22 Commits
Author SHA1 Message Date
mirkobrombin 0df657bec7 feat: add registry, locale and event APIs 2026-10-31 19:43:27 +00:00
mirkobrombin d582652232 fix: fill the host gaps the guest components hit
Assisted-by: Claude Code:claude-opus-5-5
AI-Scope: Added missing window, GDI, memory, text and multibyte behavior in the host that the own guest components need.
2026-10-31 06:18:52 +00:00
mirkobrombin b916a5ce02 fix: read manifests and tables of images with large resources
Assisted-by: Claude Code:claude-opus-5-5
AI-Scope: Bounded the resource directory by the image size instead of 16 MiB, so an installer carrying a large payload keeps its declared Windows version.
2026-10-30 10:34:51 +00:00
mirkobrombin ccf48873dd chore: merge pull request #79 from rayzorben/fix/lcmap-string-lengths 2026-10-30 06:33:00 +00:00
mirkobrombin b2414c6ee1 feat: name every locale of the language ID tables 2026-10-29 20:41:08 +00:00
Raymond Bennett 1912439b89 fix: write no terminator after a counted LCMapString source
LCMapStringW and LCMapStringEx wrote a zero after the mapped text even when
the source was given with its length, one character past a buffer sized
exactly from the first call. CPython's ntpath.normcase sizes its buffer that
way, so the heap after it was overwritten; for some path lengths the next
allocation crashed (CPython started through uv's version links stopped at
its first import). A NUL-terminated source (length -1) now counts and writes
its zero, and a buffer without room for it fails with
ERROR_INSUFFICIENT_BUFFER instead of being written past; LCMapStringA
counts and writes the zero of a terminated source as well, and the three
share the case mapping. uv init, uv venv and uv pip work.

Assisted-by: Claude Code:claude-opus-5-5
AI-Scope: the LCMapString length handling
(cherry picked from commit 358853d4b9a8c500a6724542cbab3ccd9895b7a5)
2026-10-29 02:14:37 -07:00
mirkobrombin 124a14bd06 feat: add the OEM code pages 437 and 850 2026-10-28 16:56:01 +00:00
Raymond Bennett 6e917ded1b feat: give console programs the terminal as their console
A standard handle that is a terminal, and CONIN$, CONOUT$ and CON, now act as a console: modes map to terminal settings,
reads and writes convert between UTF-16 and the terminal's UTF-8, terminal input becomes key events, and Ctrl+C runs the
control handlers. Files and pipes still fail the console functions, as on Windows.

Assisted-by: Claude Code:claude-opus-5-5
AI-Scope: Wrote the console functions over the terminal, their pty test and the guest test program from the public console API documentation.
2026-10-27 23:19:30 -04:00
mirkobrombin d709d8dc74 feat: add Punycode domain names and the locale name table 2026-10-27 08:01:30 +00:00
mirkobrombin 1f311d577c feat: convert text in the Windows code pages 1250 to 1258 2026-10-27 02:29:59 +00:00
mirkobrombin 44a593867c feat: run an SSH client's terminal and file transfer windows 2026-10-26 23:13:38 +00:00
mirkobrombin 3bfea32812 feat: fold strings and describe the volume of an open file 2026-10-26 14:17:44 +00:00
mirkobrombin 0a0fe4be89 feat: add shared Windows process state and parallel guest execution 2026-10-24 16:24:23 +00:00
mirkobrombin f9f3a67f1c fix: serve the Windows calls that Inno Setup, 7-Zip and VLC make 2026-10-23 21:27:15 +00:00
Mirko Brombin 98503c2c88 feat: serve what framework setups run: unquoted program paths, read-only folders, service settings, counter names and bounded formatting 2026-10-03 10:22:11 +00:00
Mirko Brombin f4509d0c1f feat: implement the Windows APIs that .NET programs and their installers call 2026-09-23 00:12:56 +00:00
Mirko Brombin c7aa6818fa feat: add format messages from module message tables with va_list inserts and compare strings ordinally 2026-09-21 09:15:03 +00:00
Mirko Brombin 0f5b23bb1b feat: answer locale information in the guest from a table the runtime publishes, and take a wide number in two characters 2026-09-20 21:25:26 +02:00
Mirko Brombin 26fbeabc78 feat: run Steam's web UI with cross-process handles, per-thread message queues, socket events and process identity 2026-09-03 16:48:12 +02:00
Mirko Brombin a7256dafac feat: run the Steam installer to Finish with child processes, shell links and sockets 2026-09-03 01:15:07 +02:00
Mirko Brombin cd91b52e20 feat: add menu, window manager, registry, shell, version and platform APIs for Notepad++ bring-up 2026-07-31 22:56:57 +02:00
Mirko Brombin efc6104b5b feat: add kernel32 services, guest threads and structured exceptions for PE64 processes 2026-07-31 21:45:18 +02:00