Jump to content

Andalu

Members
  • Posts

    29
  • Joined

  • Last visited

Reputation Activity

  1. Thanks
    Andalu reacted to George King in XP/W2k3 x86 on Modern Hardware   
    Compiling ACPI v2.0 driver for Windows XP SP3 and Windows 2003 SP2 (x32/x64)
     Here are compiled ACPI2.0 v4 from latest sources   1) x86 Windows XP x86 SP3 (5.1.2600.7777.4) + Windows Server 2003 SP2 (5.2.3790.7777.4) debug and free   2) x64 Windows Server 2003 / XP SP2 (5.2.3790.7777.4) debug and free   https://www.mediafire.com/file/wsqgptapdrxhidf/ACPI2.0_v4_x86+x64_5.1+5.2.7z/file
     
    Extras included:
    a) _OSI extra OS list to unlock hidden devices
    b) modded acpiosnt.rc to overwrite PruductVersion attribute in file info, replaced "," with "." so it's now in same logic as other standard files, added .4 to easily detect which patch was used as build base
  2. Thanks
    Andalu reacted to pappyN4 in XP/W2k3 x86 on Modern Hardware   
    https://itm4n.github.io/windows-dll-hijacking-clarified/
    This explains better but Dependency Walker only checks if DLL is the import table.  At runime a program can use LoadLibrary() to call other dlls.  I looked through all the DLL from DepWalker that Crystal uses, but didnt see one that was "wbem" or "wmi" sounding...
    I tried replacing the 4 WMI related DLLs that Crystal needs into the windows sys folder.  Dependency wise there was no issues, but Crystal still crashed.
    In IDA, there is a "Suspended on Library load/unload".  Running it, it looks like ntdll.dll is where wbmprox first loads, but a bunch of other DLLs load in that same spot is how it looked to me in IDA.  No idea how to look up where it was in ntdll.dll itself...
    Sumbled upon a "debug" setting that can be turned on in Crystal's ini. In there, the last entry before failure was "CMD_TYPE_NVME_INTEL".  Opening up DiskInfo.exe, subroutine was findable with that name.  A lot of IdentifyDevice, AddDevice calls, most ending up at a block with many inputs (all the Info/Add Devices Intel/Samsung/etc...) just before sub exits.  Adding a breakpoint, it looks like Crystal gets through the NVME_INTEL block, and errors out at the MultiBlock..  Jumped out @4cf96 74 -> EB to skip "AddDiskNVMe - CMD_TYPE_NVME_INTEL".  CDI starts at least, but nvme does not show up.  Then tried skiping "DoIdentifyDeviceNVMeIntel" which calls ""AddDiskNVMe - CMD_TYPE_NVME_INTEL" @4ced8    74 77 -> 90 90    @4cf4b    0F 85 0A 01 00 00 -> E9 0B 01 00 00 90.  Same things starts, but no nvme.
    00001110 DoIdentifyDeviceNVMeStorageQuery 00001110 DoIdentifyDeviceNVMeIntelRst 00001110 DoIdentifyDeviceNVMeSamsung 00001110 DoIdentifyDeviceNVMeIntel 00001110 AddDiskNVMe - CMD_TYPE_NVME_INTEL  
    Looked further up the logfile.  Compared one with wbemprox removed to a normal one.
    no wbem / works
    00000000 dlg.DoModal() 00000015 InitAta 00000015 CAtaSmart::Init WMI on - Start 00000015 CoInitializeSecurity() 00000031 CoCreateInstance() 00000031 NG:WMI Init 1 wbem / fails
    00000016 dlg.DoModal() 00000032 InitAta 00000032 CAtaSmart::Init WMI on - Start 00000032 CoInitializeSecurity() 00000032 CoCreateInstance() 00000032 ConnectServer() 00000032 CoSetProxyBlanket() 00000047 OK:WMI Init 00000782 OK:Win32_IDEController 00000813 OK:Win32_SCSIController Searched around on on those keywords.  ConnectServer() to a wmi server maybe?  Ended up in two subroutines that sounded interesting.  Saw "\\.\root\cimv2" which was familiar... 
    Borrowed a quick vbscript to try wmi.  Breaking the path stops it from working.
    strComputer = "." Set objWMIService = GetObject("winmgmts:\\.\root\CIMV2") Set colItems = objWMIService.ExecQuery("SELECT * FROM Win32_Process" & _ " WHERE Name = 'cscript.exe'" & " OR Name = 'wscript.exe'",,48) For Each objItem in colItems Wscript.Echo "-------------------------------------------" Wscript.Echo "CommandLine: " & objItem.CommandLine Wscript.Echo "Name: " & objItem.Name Next

    So in DiskInfo32 or DiskInfo64, find where "\ \ . \ r o o t \ c i m v 2" is with hex editor and change it to something like "\ \ . \ r o o t \ n o w m i".  630069006D00760032 -> 6E006F0077006D0069
    Then let DiskInfo handle the error of a missing wmi the same way as if wbemprox file was missing.
     
  3. Thanks
    Andalu reacted to pappyN4 in XP/W2k3 x86 on Modern Hardware   
    @Andalu
    Crystal Disk Info modded to stop WMI from loading.
    https://ufile.io/16asy5na
    I tried both 32 and 64bit version on my XP64.  Both worked with my samsung nvme (didnt load NVMe size like for SSD/HDD but that info should be in the model names anyway).
    Now for the real question.  Has anyone tried to use the samsung NVMe driver with a not samsung nvme?  I only have the one so I cant test but I would be interested to see if the driver would work and pass through SMART for other manufactures.
    I tested the generic driver inf for samsung originally posted by Fernando and it worked for my samsung.  Here's the same one for x86. (I leave it to you guys to mod the secnvme for x86).


  4. Like
    Andalu reacted to Dietmar in XP/W2k3 x86 on Modern Hardware   
    I just build an XP SP3 with the Sata driver from Kai and the storport.sys with SMART support, with all updates for XP and my last acpi.sys from last August.
    For USB I use the from Win8.1 ported driver.
    It boots XP SP3 on all(!) my Intel boards from x58 to z690, always all USB works,
    niccccee😍
    Dietmar
  5. Thanks
    Andalu reacted to iyut in XP/W2k3 x86 on Modern Hardware   
    Hello colleagues,
    here is an archive of forum's topic "Windows XP, 2003 x32 on modern hardware" (2018-2021) from win-raid.com, for the benefit of WinXP' admirers.
    https://www.upload.ee/files/13683020/WinXP_2003_x32_on_modern_hardware.rar.html
    EDIT:  above is a new link, with small corrections, and divided into 5 parts.  If one-page, consumes 190 mb of RAM in Firefox.
    View in Firefox, because Chrome doesn't support spoilers.
    (If you have downloaded the previous file, please delete, this one is better).
×
×
  • Create New...