Commit Graph
856 Commits
Author SHA1 Message Date
Mikhail Tyukin bb63bb36ed [LIBTIFF] fix x64 regression (#8830)
Fix x64 regression seen at https://reactos.org/testman/compare.php?ids=106703,106708,106714 due to #8808 by reverting some changes

CORE-18674
2026-05-06 11:14:20 -04:00
Hermès Bélusca-Maïto ba7a6fc7d9 [SHELL32][SDK] The SHELL_LINK_HEADER::nIconIndex member is a signed 32-bit integer 2026-05-04 22:02:21 +02:00
Eric Kohl 06138e3c98 [REACTOS] Add NhpAllocateAndGetInterfaceInfoFromStack to a header file 2026-05-03 19:46:04 +02:00
Eric Kohl 241a989fa3 [REACTOS] Add missing type declarations for ITcpipProperties_Unknown1 2026-05-03 13:44:19 +02:00
Katayama Hirofumi MZ 4e01961e20 [SHLWAPI][SHLWAPI_APITEST][SDK] Support CharLowerNoDBCSA/W and CharUpperNoDBCSA/W (#8920)
Implementing missing features...
JIRA issue: CORE-19278
- Implement CharLowerNoDBCSA, CharLowerNoDBCSW,
  CharUpperNoDBCSA, and CharUpperNoDBCSW functions.
- Modify shlwapi.spec.
- Add prototypes into <shlwapi_undoc.h>.
- Add CharUpperNoDBCS testcase.
2026-05-03 10:11:56 +09:00
Katayama Hirofumi MZ 0cd3b555b1 [SHLWAPI][SHLWAPI_APITEST][SDK] Support IStream_ReadPidl and IStream_WritePidl (#8918)
Implementing missing features...
JIRA issue: CORE-19278
- Implement IStream_ReadPidl and IStream_WritePidl
  functions.
- Add prototypes to <shlwapi_undoc.h>.
- Add IStreamPidl testcase.
2026-05-03 10:10:27 +09:00
Katayama Hirofumi MZ 8727bfd634 [SHLWAPI][SDK] Support SHDialogBox (#8917)
Implementing missing features...
JIRA issue: CORE-19278
- Implement SHDialogBox function.
- Modify shlwapi.spec.
- Add prototype to <shlwapi_undoc.h>.
2026-04-30 10:54:19 +09:00
Eric Kohl c04c092a3e [REACTOS][NETCFGX] Add the undocumented ITcpipProperties interface to the tcpip notify object 2026-04-29 21:09:54 +02:00
Eric Kohl 2586be9bc6 [REACTOS][NETCFGX] Implement INetCfgComponentPrivate_fnUnknown1
It is a QueryInterface method for notify objects.
2026-04-29 20:33:06 +02:00
Carl J. Bialorucki 129ef359f0 [SDK] Raise KERNEL_VERSION_PATCH_LEVEL to 17
0.4.17-dev starts now.
2026-04-28 20:35:14 -05:00
Katayama Hirofumi MZ 2cbce1c043 [SHELL32][SDK] Implement SHHandleUpdateImage and SHUpdateImageW (#8884)
Implementing missing features...
JIRA issue: CORE-19278
- Add SHLookupIconIndexA/W
  prototypes into <undocshell.h>.
- Add StrCpyNXA/W prototypes
  into <shlwapi_undoc.h>.
- Define SHCNF_UPDATEIMAGE_DATA_1
  and SHCNF_UPDATEIMAGE_DATA_2
  structures in <undocshell.h>.
- Implement SHHandleUpdateImage
  and SHUpdateImageW functions.
2026-04-26 20:11:24 +09:00
Katayama Hirofumi MZ 497da544ce [SHLWAPI][SDK] Support SHRegSetPathA/W (#8909)
Implementing missing features...
JIRA issue: CORE-19278
Implement SHRegSetPathA and SHRegSetPathW
functions.
2026-04-26 18:37:02 +09:00
Katayama Hirofumi MZ eeaa241b88 [SHLWAPI][SDK] Support IUnknown_QueryServiceForWebBrowserApp (#8908)
Implementing missing features...
JIRA issue: CORE-19278
- Implement IUnknown_QueryServiceForWebBrowserApp
  function.
- Add prototype to <shlwapi_undoc.h>.
2026-04-26 18:17:41 +09:00
Katayama Hirofumi MZ 12191562da [SHLWAPI][SDK] Implement ZoneCheck* functions (#8877)
Implementing missing features...
Utility functions for Internet Zone Manager.
JIRA issue: CORE-19278
- Add zonechk.c and implement ZoneCheckPathA/W,
  ZoneCheckUrlA/W, ZoneCheckUrlExA/W,
  ZoneCheckUrlExCacheA/W, and ZoneCheckHost[Ex]
  functions.
- Modify shlwapi.spec.
- Add prototypes to <shlwapi_undoc.h>.
2026-04-24 09:27:51 +09:00
Katayama Hirofumi MZ 9e5774e75c [SHELL32][SDK] Implement CDefFolderMenu_MergeMenu (#8875)
Implementing missing functions...
JIRA issue: CORE-19278
- Add _SHMergePopupMenus and
  SHLoadPopupMenu helper
  functions.
- Implement
  CDefFolderMenu_MergeMenu
  function in utils.cpp.
- Add function prototype into
  <undocshell.h>.
2026-04-23 22:59:05 +09:00
Katayama Hirofumi MZ d6cc284435 [SHELL32][SDK] Implement LinkWindow_RegisterClass (#8878)
Implementing missing features...
JIRA issue: CORE-19278
- Implement LinkWindow_RegisterClass
  function by using "superclassing".
- Add prototype to <undocshell.h>.
2026-04-23 22:50:03 +09:00
Eric Kohl 8dc9e50c09 [NETCFGX][REACTOS][UUID] Uncover one of many secrets of netcfgx.dll
The second parameter of the first function of the INetCfgComponentPrivate interface seems to be a REFIID.
Netsh calls this function with an undocumented GUID called ITcpipProperties (see https://github.com/nihilus/GUID-Finder/blob/master/GUID-Finder/Interfaces.txt).
2026-04-21 22:23:18 +02:00
Dmitry Borisov e2aa54321a [BOOTVID] Rename some function parameters
Delta       -> Stride
TopDelta -> Height
2026-04-21 15:08:17 -05:00
Dmitry Borisov ac33647888 [ATAPI] Add ATA storage driver
CORE-17256
CORE-17191
CORE-17716
CORE-17977
CORE-13976
CORE-16216
2026-04-21 15:01:22 -05:00
Dmitry Borisov ae2827f481 [PCIIDEX] Add DMA support
CORE-17256
2026-04-21 15:01:22 -05:00
Katayama Hirofumi MZ 40252ff735 [KERNEL32][CONSRV][SDK] Implement ConsoleIMERoutine (#8862)
Preparing for Console IME.
JIRA issue: CORE-18923
- Add IntRegQueryValue,
  IntPathQuoteSpacesW, and
  GetConsoleIMECommandLine helper
  functions.
- Add ConsoleIMERoutine function.
- Modify ConnectInfo.ImeRoutine in
  ConDllInitialize function.
- Modify kernel32.spec to add
  ConsoleIMERoutine.
- Add ConsoleIMERoutine prototype
  to <wincon_undoc.h>.
- Connect ImeRoutine in
  ConSrvConnect function.
Co-authored-by: Hermès BÉLUSCA - MAÏTO <[email protected]>
2026-04-21 17:52:19 +09:00
Eric Kohl cbfc755c2f [DHCPSVC][PSDK][IDL] Add the DhcpAcquireParametersByBroadcast stub and remove the DhcpQueryHWInfo function 2026-04-13 01:06:31 +02:00
Eric Kohl ed5124b7a8 [DHCPCSVC][PSDK][IDL] Implement the enable/disable DHCP part of DhcpNotifyConfigChange/Ex 2026-04-12 18:29:10 +02:00
Katayama Hirofumi MZ 215d409f52 [IMM32][NTUSER][SDK] Implement ImmSendIMEMessageExA/W (#8850)
Supporting Win3.x IMM.
JIRA issue: CORE-19268
- Move <wine/ime.h> to psdk <ime.h>.
- Add some constants to
  <imm32_undoc.h>.
- Implement ImmSendIMEMessageExA
  and ImmSendIMEMessageExW
  functions.
2026-04-11 09:45:38 +09:00
Katayama Hirofumi MZ 61fb4db34c [SDK][IMM32][NTUSER] Delete <jpnvkeys.h> and use <wine/ime.h> instead (#8847)
Follow-up of #8846. Now <jpnvkeys.h>
is useless. Minor refactoring and
standardation.
JIRA issue: CORE-19268
- Replace <jpnvkeys.h> usage with
  <wine/ime.h> and fix
  VK_DBE_ENTERIMECONFIGMODE
  naming.
- Remove duplicated
  WM_IME_REPORT/IR_* and
  UNDETERMINESTRUCT definitions
  now provided by wine/ime.h.
- Introduce win3send.c half-
  implementing
  ImmSendIMEMessageExA/W.
- Add CMake option
  IMM_WIN3_SUPPORT (default: ON).
2026-04-10 08:30:56 +09:00
Katayama Hirofumi MZ ce73ba4426 [IMM32][SDK] ImmGetCompositionString: Support GCS_PRIVATE (#8844)
Prepare for CTF IME support.
JIRA issue: CORE-19268
- Add GCS_PRIVATE (0x8000) constant,
  COMPSTR_PRIVATE structure, and
  CtfImmIsGuidMapEnable prototype
  to <imm32_undoc.h>.
- Implement GCS_PRIVATE index in
  ImmGetCompositionStringA/W.
2026-04-10 07:10:11 +09:00
Eric Kohl 4b9adaa971 [DHCPCSVC] Add the client code and server stub for DhcpFallbackRefreshParams
DhcpFallbackRefreshParams is called by the TCPIP notification object after the alternate configuration has been changed.
2026-04-06 13:42:03 +02:00
Mikhail Tyukin dcd45a59d1 [LIBJPEG][LIBPNG][LIBTIFF] Update (#8808)
* [LIBTIFF] Update to 4.7.1

* [LIBPNG] Update to 1.6.51

* [LIBJPEG] Update to 10
2026-04-01 17:27:34 +02:00
Katayama Hirofumi MZ 863203030f [IMM32][SDK] Rename CLIENTIMC_UNKNOWN2 as CLIENTIMC_LOCKED (#8807)
Improve code readability.
JIRA issue: CORE-19268
- Rename CLIENTIMC_UNKNOWN2
  flag as CLIENTIMC_LOCKED.
- Delete unused
  CLIENTIMC_UNKNOWN4 flag.
- Fix the return value of
  Imm32AssignNewLayout function.
2026-03-30 04:39:26 +09:00
Katayama Hirofumi MZ 75e1d78fe9 [IMM32][SDK] imemenu.c: Rewrite IME Menu feature (#8769)
There were some design difference
comparing to Windows. Improve
IME Menu compatibility.
JIRA issue: CORE-20142
- Re-implement IME Menu.
- Modify
  ImmPutImeMenuItemsIntoMappedFile
  prototype.
2026-03-29 11:33:23 +09:00
Hermès Bélusca-Maïto b1a31610ac [FREELDR][KDCOM][KDGDB] Remove deprecated "IRQ" debugger command-line option
- The "IRQ" debugger option was introduced in commit 5a6adb4f13 (r2546).
  It was used by the in-kernel GDB stub, to manually wire an interrupt
  handler `GspBreakIn()` to allow the debugger to break into the system
  when a command is received on the GDB serial port.

  Side-remark:
  The hooking was done via `HalGetInterruptVector()` + `IoConnectInterrupt()`,
  but only at phase 1 initialization when the memory manager was up, which
  can be "late" enough during system boot initialization.
  Instead of using `IoConnectInterrupt()`, one could have used explicit
  `KeInitializeInterrupt()` + `KeConnectInterrupt()` calls that would
  have worked much earlier in the boot stage.

- This functionality was soon after disabled in commit c804ca06be (r2946)
  in the GDB stub (see `ntoskrnl/kd/gdbstub.c!KdGdbStubInit()`), never
  to be re-enabled again.
  It was removed completely in commit e160c0fb26 (r14799).

- Since ReactOS was (until recently) always debugged locally using the
  in-kernel KDBG debugger, break-in was done with TAB-K keypress,
  intercepted by the keyboard driver that triggered a `DbgBreakPoint()`,
  thus no break-in via serial port interrupt was necessary.

- Remote debugger break-in detection, which is the standard method that
  is used when remote-debugging using KD transport DLLs and WinDbg, was
  introduced in commit 12e7593f24 (r25984). As with the rest of debugger
  communication and as done on Windows, detection is done by polling the
  serial port at certain times, namely in the `KeUpdateSystemTime()`
  kernel procedure periodically invoked by the timer interrupt.
  This break-in detection was then erroneously removed in commit bf8b9467dc
  (r45140), and reinstated in commit 014b23b9a (r56194).

- Parsing of this "IRQ" option was copy-pasted in other modules (FreeLoader,
  KDCOM, and KDGDB), even though it was never used. The parsing was then
  removed in KDBG itself in commit 95faf65ebf, but left in the other
  modules... until now!
2026-03-19 21:52:14 +01:00
Hermès Bélusca-Maïto 3012af5e30 [CPORTLIB][FREELDR][KD][NTOS] Move duplicated UART settings into a common header 2026-03-16 16:18:43 +01:00
Dmitry BorisovandHermès Bélusca-Maïto aabd163d73 [CPORTLIB:PC98] Refactor serial support code (#8558)
CORE-17977

- Fix a bug when subsequent port detection attempts fail because of
  broken FIFO management. If FIFO logic is enabled the hardware will
  not decode the legacy 0x30 and 0x32 I/O ports.
  Therefore care should be taken when accessing these ports.

- Fix hang on boot when a serial device was not connected to the COM1 port.
  Unlike 16550, a call to `CpDoesPortExist()` for the 8251 will succeed
  even when if the user has not plug the serial port into PC-98 machine.
  (I do not know how to put the 8251 into loopback mode.)
  Fix this by checking for CTS prior to the LSR loop.

- Fix hang on boot when the chosen baud rate becomes too large due to
  `DEFAULT_DEBUG_BAUD_RATE` being set to 115200.

- Some NP21/W workarounds were being incorrectly applied,
  fix them and consolidate them into one check.

- Reuse exsisting code from the NS16550 driver to avoid code duplication.

- Rename HW definitions for better naming.

Co-authored-by: Hermès Bélusca-Maïto <[email protected]>
2026-03-15 22:56:14 +01:00
Hermès Bélusca-Maïto dabc74d468 [CPORTLIB] Split cport.c into the NS16550-specific routines and the rest
Preparing the way for a future library refactoring, along the way of the
one in Windows, which has been updated in Windows 10 and is now documented:
https://learn.microsoft.com/en-us/windows-hardware/drivers/ddi/uart/
2026-03-15 22:48:25 +01:00
Stanislav Motylkov e2cf0bf53a [SDK] Fix build. Addendum to 391f7cae5b (#8565)
../src/sdk/include/reactos/x86x64/Intel/Cpuid.h:1585:15: error: duplicate member 'Reserved'
2026-03-03 00:04:27 +03:00
Peter Eik 391f7cae5b [SDK] Add some more AVX-512 definitions (#8565)
Add some more Intel AVX-512 extension definitions to the SDK,
as I saw several newer ones were missing. No functionality or purpose yet.

Should be useful for implementing full support in the future.

Reference: Intel Instruction Extensions Set Programming guide,
starting from page 24: https://cdrdv2.intel.com/v1/dl/getContent/671368
2026-03-02 23:52:32 +03:00
Sylas Hollander 1d3f99a87a [FREELDR:UEFI] Add support for Apple Graphics Info Protocol (#8706)
Intel Macs released before late 2008/early 2009 are missing the UEFI GOP,
resulting in a frozen/white screen when booting FreeLoader.

These Macs only have the UGA protocol, which does not support direct
framebuffer access, and Apple's proprietary Graphics Info Protocol
(sometimes also called Screen Info Protocol) which can be used
to get all the graphics information we need.

CORE-11954
2026-03-02 23:22:37 +03:00
Katayama Hirofumi MZ 80bd460836 [SDK][KBSWITCH][CONIME][IMM32][NTUSER][MSCTFIME][MSUTB] Define LANGID_... (#8691)
Follow-up of #8678. Commonize the definition of
LANGID_... values.
JIRA issue: CORE-20243
- Define LANGID_... values for CJK in <cjkcode.h> and
  use it.
2026-02-27 10:02:23 +09:00
Katayama Hirofumi MZ 423d7031fe [CONIME][BOOTDATA][GITHUB][SDK] Add conime.exe (#8678)
Prepare for Console IME Input for East Asian.
JIRA issue: CORE-20243
- Modify .github/labeler.yml.
- Add base/system/conime/ .
- Modify boot/bootdata/hivesft.inf for Console
  settings.
- Add imm32!ImmCallImeConsoleIME prototype
  into <imm32_undoc.h>.
- Add IMS_CONSOLEIME_1A and IMS_CONSOLEIME_1B
  values into <imm32_undoc.h>, for WM_IME_SYSTEM
  message.
2026-02-26 09:28:22 +09:00
Mark Jansen 23c4ed174f [ACGENRAL] Add shim for msys2 hacks
See CORE-20159 for details
2026-02-15 20:12:39 +01:00
Justin Miller 5213cf717c [BOOT][ENVIRON] Remove Environ (#8667)
* [SDK][BOOT] Reimport the EDK2 headers

* [ENVIRON] Remove Environ
2026-02-11 14:01:16 -08:00
Mikhail Tyukin c5c0e5987d [MSAFD][AFD] Implement WSPConnectEx and SO_UPDATE_CONNECT_CONTEXT (#8636)
- Update AFD to use the shared structure
- Fix AFD get context to match windows behavior
- implement SO_UPDATE_CONNECT_CONTEXT

CORE-17174
CORE-16335
2026-02-04 00:14:55 -06:00
Hermès Bélusca-Maïto 0dc78396f5 [SDK/INCLUDE] Introduce boot display discovery helper functions (#6661)
Their purpose is to simplify the way a compatible boot video driver
and a generic framebuffer miniport driver can retrieve this information.

In this iteration, the data is retrieved only from the kernel loader-block
ARC tree, via the `KeFind(Next)ConfigurationEntry()` routines.
As such it can be used only by the boot video driver (loaded early in the
boot process).
Other methods, suitable for retrieving this information later in the
boot process, will be added in the future.
2026-01-30 20:53:23 +01:00
Hermès Bélusca-Maïto f21d692342 [SDK/INCLUDE] Define a structure describing boot-time framebuffer information (#6658)
This information is set up by the bootloader hardware detector and stored
into the system configuration tree for consumption by the NT OS loader and
other OS subsystems. This method doesn't require modifying the NT kernel
loader parameter block or extension(s), thus also allowing for a backward-
compatible usage when loading Windows OSes like 2000, XP/2003, or Vista/7.

The framebuffer information can then be retrieved by a supported bootvid
and a generic framebuffer win32k video driver.
2026-01-30 13:50:01 +01:00
Katayama Hirofumi MZ 3342fc6633 [SYSSETUP][SDK] Set arrow to current task (#8598)
Follow-up of #8596.
JIRA issue: N/A
- Add IDI_ARROWICON (arrow-16x16.ico)
  icon and IDI_CROSSICON
  (cross-16x16.ico).
- Retrieve normal font from control.
- Set arrow icon to the current task.
- Set bold font to the current task.
- Set normal font to done tasks.
2026-01-22 08:24:21 +09:00
Hermès Bélusca-Maïto fda2ee2ad8 [BOOTVID] Modularize the different bootvid's build rules (#8548)
The aim is to be able to compile multiple bootvids for a given ReactOS
build without having to duplicate the same commands.
2026-01-18 18:19:01 +01:00
Katayama Hirofumi MZ d3aef68c16 [SYSSETUP][SDK] Add checkmarks to completed tasks (#8596)
First impression is important.
JIRA issue: N/A
- Modify IDD_PROCESSPAGE resource dialogs.
- Add IDI_CHECKICON icon (check-16x16.ico).
- Add HICON hCheckIcon into SETUPDATA structure.
- Draw checkmark to done task.
2026-01-14 21:44:29 +09:00
Timo Kreuzer 8b7ade14ef [LIBXML2] Update to release 2.12.8 (from Wine-10.0) 2026-01-10 19:03:40 +02:00
Timo Kreuzer 79a014446b [LIBXSLT] Update to release 1.1.42 (from Wine-10.0) 2026-01-10 19:03:40 +02:00
Katayama Hirofumi MZ 5c6fcfbf62 [WIN32SS][SDK] ImmGetHotKey's 4th parameter is optional (#8557)
Fix SAL2 annotations of the IME hot-key functions.
JIRA issue: N/A
- Add ImmGetHotKey and ImmSetHotKey prototypes
  into <imm32_undoc.h>.
- Fix CliImmSetHotKey annotation in user32 and
  <undocuser.h>.
- Also fixes ImmSetHotKey, NtUserGetImeHotKey and
  NtUserSetImeHotKey annotations.
2026-01-04 07:57:21 +09:00