Windows XP, 2003 x32 on modern hardware

(2018-2021)


Thanks to the brilliant specialists in this forum:

⇗diderius6, ⇗Mov AX, 0xDEAD, ⇗Fernando, ⇗daniel_k.

⇗gordo999, ⇗ruthan, ⇗infuscomus, ⇗Gelip, ⇗XPLives, ⇗George King, ⇗skullteria, and few others.


 

 

 

Page 1

     
#1 deSSy2724 EDIT by Fernando: The most important information about this topic have been assorted ¶ >here< by Mov AX, 0xDEAD!

Can someone answer me some questions because I cant find clear answers to some of my questions (different statements from the same or different sources/sites/forums) and for some others things/questions, im not 100% sure:

  1. Is it posssible to install Windows XP SP3 32bit and WIndows 10 64bit on the same SSD with separate partitions or do I need two separate SSDs?
  2. Does XP 32bit support only MBR..... would it work if one partition of the same drive is partitioned as MBR (for XP) and the second partition of the same drive partitioned as GPT (for Win 10)? And is there any issues with SSD and MBR?
  3. Can we install Windows XP SP3 32bit from USB flash drive from modern motherboards and/or from Bluray drive/readers (I mean CD/DVD -/+ R burned discs on Bluray drives)?
  4. If 2.2 TB HDD is the limit for the 32 bit OS, can we split a 4/6/8 TB HDD/SDD to multiple 2TB partitions or is that still not possible/usable with 32bit OS-es?
  5. Is it right that Intel Ivy Bridge CPUs and AMD Vishera aka AMD FX Series CPUs (CPU, Chipsets, Motherboard etc.) are the latest hardware which officially support Windows XP 32bit? If true... then whats the latest unofficial supported hardware (CPU series) for Windows XP SP3 32bit and are there any disadvantages compared to "official supported" CPUs/Chipsets?
  6. Now, regarding SATA drivers and "slipstreaming" it to WIndows XP SP3 32bit installation disc:
    Do I need to look ONLY for specific chipset (independently of a specific motherboard manufacturer or motherboard model etc.) or in another words, do all the motherboards which share the same chipset actually support the same SATA drives or not and can we add/slipstream multiple SATA drivers on the same Windows XP 32bit installation disc?

Here is the thing and why so many questions..... I want to build a SINGLE gaming PC for all my older and newer games with both Win XP 32bit and Win 10 64bit (dual boot) but the problem is, if I build a PC out of parts from 2011/12 (Sandy Bridge, Ivy Bridge...) or so it would be harder (maybe even more expensive) to find parts and maybe the CPU from 2011 would not be that good for games from 2017-19 which means, I should buy parts which would be as newest and strongest/advanced as possible for new/upcomming games but at the same time to keep the legacy support for my older games (games designed for 98/2000/XP) and we all know that Win 7/8/10 and even 64bit OSes in general have some or in some cases many compatibility issues/obstacles with older games. I mean, there are many osbstacles with AHCI/IDE and SATA drivers, 32bit/64bit, MBR/GPT.... so, im not quite sure what to do.

It would be the best to build a PC based on the Skylake, Kaby Lake, Coffe Lake etc. but is it actually possible to make it happen without any issues on Windows XP SP3 32bit?

Would scenario 1 be possible?

EDIT1 by Fernando: Reformatted to save space
EDIT2 by Fernando: Thread title customized
#2 Lost_N_BIOS ⇗ @Fernando would be best to answer many of these, I'm sure you'll see him pop in when he has a chance

I can tell you #2 - MBR and SSD is fine, I use this all the time for many years.
#3 - XP from USB, I am not sure about, probably not easily unless you can find ready image/ISO, but yes it can be installed from CD/DVD burned discs, if blueray burn same way as DVD drive them I'm sure your good to go with that.
#4 - Yes, you can create multiple 2.2TB or less Primary partitions with MBR, SP2 may need to be installed before they are all visible, I am not sure on that one.  Third party partition tools may be required to setup the additional partitions, also am not certain on that either (guess I should quit partially answering )

Here's some info that may help answer some of that for you too
⇗ http://www.questions4steveb.co.uk/html/S...with-Windows-XP

I think your scenario two would be easier to use and setup, but you'd have to figure out how to edit the boot menu of Win10 to allow multi-disk boot choice at startup, or use some other third party bootloader.
#3 Fernando ⇗ @deSSy2724:
Welcome to the Win-RAID Forum!

Zitat von ⇗ deSSy2724 im Beitrag ¶ #1
1. Is it posssible to install Windows XP SP3 32bit and WIndows 10 64bit on the same SSD with separate partitions or do I need two separate SSDs?
You can install Windows XP and Windows 10 onto the same HDD/SSD, if you install them both in LEGACY mode by using the MBR partition scheme.
Zitat von ⇗ deSSy2724 im Beitrag ¶ #1
2. Does XP 32bit support only MBR?
Yes!
Zitat von ⇗ deSSy2724 im Beitrag ¶ #1
3. Can we install Windows XP SP3 32bit from USB flash drive from modern motherboards and/or from Bluray drive/readers (I mean CD/DVD -/+ R burned discs on Bluray drives)?
Due to the missing/not compatible USB drivers it is not a good idea to install Windows XP onto a modern PC by booting off an USB Flash Drive. Booting off an Optical Drive is the much better option.

Your question #4 has already been answered by Lost_N_BIOS, an answer to your question #5 requires XP installation experiences with all available chipset/CPU generations, which I don't have.
Zitat von ⇗ deSSy2724 im Beitrag ¶ #1
6. Now, regarding SATA drivers and "slipstreaming" it to WIndows XP SP3 32bit installation disc:
Do I need to look ONLY for specific chipset (independently of a specific motherboard manufacturer or motherboard model etc.) or in another words, do all the motherboards which share the same chipset actually support the same SATA drives or not and can we add/slipstream multiple SATA drivers on the same Windows XP 32bit installation disc?
Not the chipset, but just the HardwareIDs of the on-board SATA AHCI or RAID Controller is important. When you want to slipstream a specific AHCI/RAID driver into a Windows XP Image (don't integrate more than 1 textmode driver!), you should choose an XP compatible textmode driver, which definitively supports your specific on-board SATA AHCI/RAID Controller. If the related AHCI/RAID driver supports several different SATA Controllers, you should make sure, that just the matching SATA AHCI/RAID Controller has been highlighted during the textmode driver integration procedure.
Zitat von ⇗ deSSy2724 im Beitrag ¶ #1
It would be the best to build a PC based on the Skylake, Kaby Lake, Coffe Lake etc. but is it actually possible to make it happen without any issues on Windows XP SP3 32bit?
Regarding the XP installation onto a modern Intel chipset PC running in AHCI or RAID mode I recommend to read the start post of ⇗ >this< thread.

Regards
Dieter (alias Fernando)
#4 Mov AX, 0xDEAD

Windows XP/2003 32-Bit on Modern Intel Hardware


Windows XP/2003 support only ACPI 1.0b syntax, last generation bioses uses ACPI 2.0+
To support ACPI 2.0 syntax need replace acpi.sys and apply additional patches to avoid known BSODs :

- 0xA5 (0x03, ..., C0140001, ...) missing ACPI 2.0 syntax, 99% solved, two solutions:
  1) acpi.sys (v.5048, sha1:a09c0d9f6b5cb63192e2cebada56db38d3870b29) from Vista Beta/Longhorn v.5048
     Pro:
- Has most of ACPI 2.0 syntax opcodes
- All integers are 64-bit regarding ACPI 2.0 specification
     Cons:
- beta, compiled for next generation of windows
       - failed implementation of some internal data types, _ValidateArgTypes generate BSOD 0xA5(0x03, xxx, C0140008, yyy)

     Patches:
       - Add pointer to _atDataObj struct for QWord Opcode
         (_OpcodeTable start at .data:00039848, _atDataObj struct at .data:000397A8,
          missing pointer at .data:00039880, dont forget add additional relocs)

  2) acpi.sys from Windows XP SP3 (v.5512->v.6666) with integrated acpi 2.0 syntax support
     Pro:
- based on original v.5512, match binary/offsets
     Cons:
- All integers are still 32-bit, any operations on 64-bit fields/variables will drop high part of QuadWord

- 0xA5 (0x11, 0x08, ..., ...) unknow error in _AMLILoadDDB, probably fail after parsing DSDT/SSDT table, solved

   Patch (by diderius6):
- Ignore status of _AMLILoadDDB in _ACPIInitializeDDB
(v5512 jl short .text:00036214 => nop, nop)

- 0xA5(0x03, ..., C0140008, ...) DSDT code have operation with unexpected type of arguments, partially solved
   This BSOD probably means some argument has datatype, allowed only in ACPI 2.0
   v5512 & v5048 support only argument datatypes allowed in ACPI 1.0b specification

   Patch:
       - _ValidateArgTypes must always return "OK", even on realy wrong types
         (mov edi, 0xC0140008=>mov edi, 0x00000000 at head of _ValidateArgTypes)

- 0xA5 (0x10006, ..., ..., ...), missing _DIS method for "PNP0C0F"s (PCI Interrupt Link Devices) in DSDT/SSDT table

   Patch (by daniel_k):
       - Skip looking for PNP0C0F in _DisableLinkNodesAsyncWorker,
         (v5512 call strstr, ..., jz .text:0001BBBD => jmp .text:0001BBBD )




- 0xA5 (0x02, ..., ..., ...) error in ACPIRangeValidatePciResources, ACPI vs E820 conflict, solved
    BSOD is generated by this DSDT code:
     
     DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, NonCacheable, ReadWrite,
0x00000000, // Granularity
0x00000000, // Range Minimum
0xDFFFFFFF, // Range Maximum
0x00000000, // Translation Offset
0xE0000000, // Length
,, _Y0E, AddressRangeMemory, TypeStatic)
...

CreateDWordField (BUF0, \_SB.PCI0._Y0E._MIN, M1MN) // _MIN: Minimum Base Address
CreateDWordField (BUF0, \_SB.PCI0._Y0E._MAX, M1MX) // _MAX: Maximum Base Address
CreateDWordField (BUF0, \_SB.PCI0._Y0E._LEN, M1LN) // _LEN: Length
M1LN = M32L /* External reference */
M1MN = M32B /* External reference */
M1MX = ((M1MN + M1LN) - One)


    Sometimes M1LN, M1MN, M1MX cannot be calculated properly and this code claim most of memory
   (E0000000 = 3.7Gb) as motherboard resource, this brings to conflict with E820 memory ranges list

   Patch:
- memory check in ACPIRangeValidatePciResources must always return "OK"
(v5512 jz short .text:0001E0BB => jmp short .text:0001E0BB)



Device IOTR(PNP0C02) claim 255 I/O adresses in range 0xFF00-0xFFFE, for unknow reason this range
conflict with Video Card I/O range. This problem is generated by Kabylake+ bioses in DSDT code, solved, two solutions:

1) Manual patching DSDT table, remove this lines inside method _CRS of IOTR device,
  so _crs will return empty Local0:
 
          If ((ITS0 == One))
{
ConcatenateResTemplate (Local0, BUF0, Local1)
Local0 = Local1
}

If ((ITS1 == One))
{
ConcatenateResTemplate (Local0, BUF1, Local1)
Local0 = Local1
}

If ((ITS2 == One))
{
ConcatenateResTemplate (Local0, BUF2, Local1)
Local0 = Local1
}

If ((ITS3 == One))
{
ConcatenateResTemplate (Local0, BUF3, Local1)
Local0 = Local1
}



2) Patch acpi.sys with injecting special code to override IOTR template buffer:
   In _Buffer opcode handler replace:

 
      mov     eax, [ebx+14h]
mov ecx, [ebp+arg_0]


   to

 
      call    Check_IOTR_Buffer
...
Check_IOTR_Buffer:
cmp eax, 0Ah ; eax - size of buffer
jnz short Skip
mov eax, [ebx+30h]
mov eax, [eax+10h] ; eax - buffer
cmp dword ptr [eax], 00000147h ; need matching all 10 bytes
jnz short Skip
cmp dword ptr [eax+4], 0FF010000h
jnz short Skip
cmp word ptr [eax+8], 0079h
jnz short Skip
mov byte ptr [eax+7], 0 ; MAIN ACTION, set i/o range to 0 instead 255

Skip:
mov eax, [ebx+14h]
mov ecx, [ebp+arg_0]
ret

   
IOTR template defined as:

 
         Name (BUF0, ResourceTemplate ()
{
IO (Decode16,
0x0000, // Range Minimum
0x0000, // Range Maximum
0x01, // Alignment
0xFF, // Length
_Y21)
})


in bytecode: 11 0D 0A 47 01 00 00 00 00 01 FF 79 00      



   Some part of acpi hardware is disabled, so CPU should not use nonexistent ACPI C2/C3 power savings, solved, two solutions (intelppm.sys):
   1) C2/C3 States => C1 State :
       - in _InitializeAcpi2IoSpaceCstates replace offsets AcpiC2Idle and AcpiC3ArbdisIdle to offset AcpiC1Idle

   2) C2/C3 States => C7+ States :
       
push    ebx
mov ebx, ecx
push esi
push 0
call _KeQueryPerformanceCounter
mov [ebx], eax
mov [ebx+4], edx

mov eax, offset DummyMon
xor ecx, ecx
xor edx, edx
monitor
mov ecx, 1
mov eax, 60h
mwait

push 0
call _KeQueryPerformanceCounter
mov [ebx+8], eax
mov [ebx+0Ch], edx
xor eax, eax
pop esi
pop ebx
retn


DummyMon - any unused 4 byes in .data segment
       


       
push    ecx
push 0
call _KeQueryPerformanceCounter
mov ecx, [esp+4+var_4]
mov [ecx], eax
mov [ecx+4], edx

mov eax, offset DummyMon
xor ecx, ecx
xor edx, edx
monitor
mov ecx, 1
mov eax, 33h
mwait

push 0
call _KeQueryPerformanceCounter
pop ecx
mov [ecx+8], eax
mov [ecx+0Ch], edx
xor eax, eax
retn



Windows XP SP2+ uses disabled acpi timer, solved

Skylake+ bioses by default disable ACPI hardware timer (register "ACPI Timer Control (ACPI_TMR_CTL)"
in southbridge, see PDF), but WinXP SP2+ still uses disabled acpi timer for getting incremental
time counter (acpi spec declare this counter as part of specification). WinXP detect existing this timer
by checking special bit USE_PLATFORM_CLOCK in FACP ACPI table, modern bioses still set USE_PLATFORM_CLOCK=1
in acpi (mistake by programmers ? or maybe inform Win7+ about existing HPET timer (not acpi timer!)

Patch (by diderius6) "HAL_acpitimer_fix" to use CPU TSC counter as performance timer/counter:
  - in HaliAcpiTimerInit force to ignore USE_PLATFORM_CLOCK and receive it always =0
    (v.5512 jns short PAGE:8002934B => jmp short PAGE:8002934B)

Compatibility fix ("HAL TSC frequency divider")
  Some programms do wrong calculation with high values of PerformanceCounter/PerformanceFrequency
  (HAL_acpitimer_fix set values to cpu freq), to avoid this problem values need to divide to much
  lesser value, Windows 7 just divide it to 1024, so timer frequency on 3600Mhz cpu is only 3.51Mhz
  
Patch:
  - divide to 1024 values of PerformanceCounter/PerformanceFrequency, replace _HalpAcpiTimerQueryPerfCount to:
 
 mov     ecx, [esp+4]
or ecx, ecx
jz short Skip_Frequency_Mode
mov eax, fs:0A4h ; FrequencyLo
mov edx, fs:0A8h ; FrequencyHi
shrd eax, edx, 0Ah
shr edx, 0Ah
mov [ecx], eax
mov [ecx+4], edx
Skip_Frequency_Mode:
rdtsc
add eax, fs:0ACh ; CalibrationLo
adc edx, fs:0B0h ; CalibrationHi
shrd eax, edx, 0Ah
shr edx, 0Ah
retn 4




Windows XP/2003 support SATA controllers only in Legacy IDE mode, modern Intel chipsets has only AHCI mode, solved, many solutions:
1) Intel RST  AHCI/RAID 11.2.0.1006 (iaStor.sys)
2) Intel RSTe AHCI/RAID  4.7.0.1098 backport by daniel_k (iaStorA.sys+iaStorF.sys)
3) StorAHCI by skulltera/OneCore (storahci.sys), compiled from Microsoft Windows 8.x DDK Samples, (require storport.sys from Windows 2003)
4) UniATA (opensource)
5) Intel RSTe AHCI/RAID  4.0.2.1019, for Windows 2003 only, enterprise controllers only(??) (iaStorA.sys+iaStorF.sys))
6) StorAHCI from Windows 8 (require backported storport.sys from Windows 8)
7) StorAhci for Windows 2003, based on Microsoft Windows 8.x DDK Samples source code, ⇗ https://sourceforge.net/projects/storahci-for-windows-2003/

Add PCI\VEN_8086&CC_0106 to *.inf as universal DEV_ID for any Intel AHCI Sata Controller
 



- 0xA5 (0x0000000D, ..., ..., ...), duplicated _HID method

   Patch:
       - Skip DetectDuplicateHID processing
(v5512 .text:00013F6C => jmp .text:00013F6C)

- 0x7E (..., ..., C0000005, ...) unknow error in AcpiArbCrackPRT

   Patch:
(v5512 jnz short .text:0001BD6D => jmp short .text:0001BD6D)




Intel released USB3.x drivers only for Windows 7/8/10, so there were many attempts to use drivers of
other usb chip manufacturers. Most of them do not work at Intel hardware, some works, but have problems with PAE or USB3 ports.

Following drivers confirmed to work in normal and PAE environment, solved, three solutions:
  1) Microsoft Generic v6.2.9200.16384/v6.2.9200.22453 from Windows 8.0
  2) AMD v1.1.0.0145 (need amdxhci_adresscalc_fix)
  3) Fresco Logic v3.6.9.0 (extended to 32 ports)

AMD and Fresco drivers have some issues with recognizing devices after plug<->unplug, sometimes ports go to power saving modes and can't back

UAS (Attached SCSI Mass Storage) drivers also available, partial solved, three solutions:
  1) UAS Driver from Windows 8 + storport.sys from Windows 2003, alpha
  2) UAS Driver from Windows 8 + storport.sys from Windows 7, alpha
  3) UAS Driver from Windows 8 + storport.sys from Windows 8, alpha
  4) VIA UAS Driver
  5) Etron UAS Driver

VIA and Etron UAS Drivers doesn't support Safe Remove, require fixes, solved (via_uas_fix, etron_uas_fix)
By default  VIA and Etron UAS works only with genuine vendor USB3.0 Driver, but they are generic(?) and can work with any USB3 driver
vusbstor.inf:  change USB_VIA\Class_08&SubClass_06&Prot_62 to USB\Class_08&SubClass_06&Prot_62
EtronXHCI.inf:  change ENUSB\Class_08&SubClass_06&Prot_62 to USB\Class_08&SubClass_06&Prot_62

 
1) Windows 8 USB3 driver always report USB2 speed on inserted USB3 devices, MS call it "compatibility", but vendors driver report proper USB3 speed and dont have compatibility issues(?)

Fix to report proper USB3 speed, usbhub3.sys (v6.2.9200.21180):
.text:19C58: jnz 00019C63 => jmp  00019C63 (75 09 => EB 09)
 

 
  This driver is known to have issues with PAE environment, need fix:
   - replace in amdxhc.sys:
 
    mov     ecx, [esi+458h] ; esi+458h = store of 64bit adress
mov eax, [esi+28h]
mov [eax], ecx ; low part
mov [eax+4], ebx ; dropped high part, ebx=zeroes.....


   to

 
    mov     ecx, [esi+458h]
mov eax, [esi+28h]
mov [eax], ecx
mov ecx, [esi+45Ch] ; HIGH part of 64bit
mov [eax+4], ecx ; no more zeroes


 


 
Patch for VIA USB Mass Storage Device (UAS/UASP) to restore "Safe Remove":
- replace in vusbstor.sys (v6.1.7600.4002):
page:000209B4: mov     [ebp+SurpriseRemovalOK], ebx -> NOPs
(89 9D 70 FF FF FF 89 9D 68 FF FF FF => 90 90 90 90 90 90 89 9D 68 FF FF FF)

 
 
Patch for Etron  USB Mass Storage Device (UAS/UASP) to restore "Safe Remove":
- replace in EtronSTOR.SYS (any version):
OR dword ptr [eax+4], 0300h -> OR  dword ptr [eax+4], 0000h

 


- Windows 2003 support more than 4Gb RAM without additional actions, limited to some value depending "Edition"

- Windows XP ServicePack1 support more than 4Gb RAM without additional actions, limited to some value (16Gb ?)

- Windows XP ServicePack2/3 don't support RAM above 4Gb, need patching, solved, many solutions:
     1) PatchPae(v2) by wj32, remove limits only in kernel, need additional HAL patching  
     2) fix128/PatchPae(v3) by evgen_b, contains unfinished HAL_DMA patch, kernel patch is OK
     3) WinXPPAE(v2) by daniel_k, contains proper HAL_DMA patch, kernel patch is OK



- Bootmgr from some Vista Betas/Longhorns allow boot Windows XP x64 from UEFI x64, alpha,
  there is issues with Video card,  ⇗ https://www.betaarchive.com/forum/viewtopic.php?f=61&t=20327

- Boot Windows x32 on UEFI 32
 UEFI32 on real hardware is rare, confirmed only on emulated environment, alpha, ¶  howto by Gelip

- Quibble bootloader (experimental, opensource), alpha, no NTFS support,
  booting possible only if Windows installed on FAT partition, project page - ⇗ https://github.com/maharmstone/quibble



Solved, many solutions:
 - Modified OFA 1.3/1.5 driver + storport.sys from Windows 2003
 - MS Windows 7 NVMe Driver by daniel_k + backported storport.sys from Windows 7
 - MS Windows 7 NVMe Driver + storport.sys from Windows 7 + Emu_Extender
 - Samsung NVMe driver + storport.sys


Windows 2003 already support GPT Partitions for non-booting disks, no need additional software

Windows XP doesn't support GPT Partitions, solved for non-booting disks, one solutions:
  -  Paragon GPT Loader enable access to 3TB+ Disks/GPT partitions (commercial product, not available for sale)

Booting from GPT disk partially solved, need convert pure GPT to HybridMBR, ¶ guide by Levvon



To enable saving crash dumps with storport-based disk drivers on Windows XP need patch kernel (scsi support will be disabled)
Disk Controller drivers written for Windows 8 mostly will not save crash dumps on disk, they use new API to get information from kernel about dump context

List of patches:
1) IopGetDumpStack:
Replace unicode string "scsiport.sys" to "storport.sys"
This string is 3rd argument of "call _IopLoadDumpDriver@12"

2) IopGetDumpStack:
Original XP kernel will disable loading storport emulator(diskdump.sys) if storport/miniport return "Device Object"
This is not problem for Windows 2003/7/.., newer OS still load diskdump.sys even if storport/miniport return anything

Replace "mov [ebp+ScsiDump], 0" with NOPs
Example for ntkrpamp.exe v5512:
PAGE:004A0E0F mov byte ptr [ebp-29h],0 -> NOP, NOP, NOP, NOP

3) IopGetDumpStack:
Storport doesnt use SCSI ports names and dont need to search name of driver, need to skip this block

Example for ntkrpamp.exe v5512:
in range PAGE:004A0F49-004A1018 replace first opcode with "jmp 4A1019"

4) Use diskdump.sys from Windows 2003 or Wondows 7 (Windows 8 version not tested)

5) IoInitializeCrashDump:
XP kernel allocate for diskdump.sys buffer of 32Kb (same size in Windows 2000), diskdump.sys from Windows 2003+
expect buffer of 64Kb. To be compatible with new diskdump.sys need to increase buffer

Replace "push 8000h" with "push 10000h" as 3rd arg of ExAllocatePoolWithTag call


Currently Proof-Of-Concept, only one kernel version supported ¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (480)



- Remote kernel debug over LAN or USB3 cable, ⇗ https://github.com/MovAX0xDEAD/KDNET
- ACPI DSDT/SSDT Patcher at boot time for any windows, ⇗ https://github.com/MovAX0xDEAD/ACPI-Patcher
- WinXP/W2003 ntoskrnl.exe Emu_Extender, ⇗ https://github.com/MovAX0xDEAD/NTOSKRNL_Emu, ¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (328)






Unresolved Problems/Requested Features:
- ACPI.SYS v.6666 lack 64-bit integers
- ACPI.SYS v.6666 limits possible datatypes in arguments only to ACPI 1.0b Specification
- Boot Windows XP/2003 x32 from UEFI x64
- Generating TRIM command for SSD in filesystem (NTFS/???)
- Internal GPT support for x32 Windows XP by replacing disk.sys/partmgr.sys/??? from Windows 2003
- Boot Windows x32 XP/2003 from pure GPT
- Restore full Windows XP SP1 implementation of PAE/DMA for Windows XP SP3
- Generic/Universal HDA Audio driver
- CSM Emulator for UEFI x64
- DirectX 10/11 kernel support
- NDIS 6.x for Windows XP/2003
#5 deSSy2724 1. So, basically...... XP 32bit can only be installed to the MBR partition and nothing can change that BUT with help of 3rd party tools like this one (link below), XP can read/access other GPT partitions and I should be able to install programs/games normally to that GPT partitions, right?
⇗ https://www.paragon-software.com/de/tech...nts/gpt-loader/

2. For slipstreaming, just adding correct hardware IDs for the SATA AHCI controller of my mainboard is enough to install XP 32bit? Wat if my MBO has multiple AHCI controllers from different manufacturers, should I avoid Intels AHCI controller and use the others instead?

3. What is actually the disadvantage if I disable ACPI (desktop PC)? Would my CPU work always with full speed and never downclock when idle (Intels Turbo Clock technology) or what?. Is ACPI disabled system-wide (BIOS) or can it be only disabled for specific OS-es?

4. ⇗ @Mov AX, 0xDEAD
Are you trying to say that this user from this thread has ACPI disabled or what? How did he managed to install XP 32 bit with Coffe Lake MBO/CPU?
⇗ Windows XP 32bit SP3 now working with Z370 motherboard and Coffe Lake CPU
#6 Fernando
Zitat von ⇗ deSSy2724 im Beitrag ¶ #5
2. For slipstreaming, just adding correct hardware IDs for the SATA AHCI controller of my mainboard is enough to install XP 32bit? Wat if my MBO has multiple AHCI controllers from different manufacturers, should I avoid Intels AHCI controller and use the others instead?
To avoid a 7b BSOD while starting the XP installation, you should just load/integrate the textmode driver, which matches the AHCI/RAID Controller of the target HDD/SSD (where you want to install the OS).
All other storage drivers can be installed later on (once XP is up and running fine).
#7 Mov AX, 0xDEAD
Zitat von ⇗ deSSy2724 im Beitrag ¶ #5
1. So, basically...... XP 32bit can only be installed to the MBR partition and nothing can change that BUT with help of 3rd party tools like this one (link below), XP can read/access other GPT partitions and I should be able to install programs/games normally to that GPT partitions, right?
maybe gpt-loader will not works on same drive where xp installed, try replace 2 or 3 sys files from windows 2003 server
Zitat von ⇗ deSSy2724 im Beitrag ¶ #5
2. For slipstreaming, just adding correct hardware IDs for the SATA AHCI controller of my mainboard is enough to install XP 32bit? Wat if my MBO has multiple AHCI controllers from different manufacturers, should I avoid Intels AHCI controller and use the others instead?
if you are sure that win xp already has drivers for you hardware , you can add new ids to TXTSETUP.SIF
if not, you need integrade AHCI driver (textmode) to install media (nlite/massdrivers/etc)
last driver for intel AHCI is 11.2.0.1006 for 32b and 64b winxp,  need add new ids in INF, it works on 100 series(skylake) MB without problem
Zitat von ⇗ deSSy2724 im Beitrag ¶ #5
3. What is actually the disadvantage if I disable ACPI (desktop PC)? Would my CPU work always with full speed and never downclock when idle (Intels Turbo Clock technology) or what?. Is ACPI disabled system-wide (BIOS) or can it be only disabled for specific OS-es?
i have no experience with non acpi kernel, acpi is not disabled, it just not used by OS's kernel

EDIT by Fernando: Reformatted to save space
#8 YuriyCN
Zitat von ⇗ deSSy2724 im Beitrag ¶ #1
My previous platform was skylake cpu with H110 chpset and initial bios, winxp 64/win7 64 installed (winxp 32 can run too, but RAM limited to 2.3Gb)
Use fix128 for support >4GB RAM on 32-bits OS.
⇗ https://rutracker.org/forum/viewtopic.php?t=4694409
#9 Mov AX, 0xDEAD I have finished little experimenting with acpi for running windows xp on 100-series sky/coffe-lake platform.
It is possible run acpi kernel but need patch DSDT table. In my case need to block acpi 2.0 syntax from acpi.sys driver.
I just put these instruction in a condition "IF OS >= WINDOWS VISTA THEN ...."

                ToBuffer (Arg0, Local3)
Local0 = Zero
Local1 = Zero
While ((Local1 < Arg2))
{
Local2 = DerefOf (Local3 [(Arg1 + Local1)])
Local0 += (Local2 << (0x08 * Local1))
Local1++
}

Return (Local0)

           If ((OSYS >= 0x07D6))
{
ToBuffer (Arg0, Local3)
Local0 = Zero
Local1 = Zero
While ((Local1 < Arg2))
{
Local2 = DerefOf (Local3 [(Arg1 + Local1)])
Local0 += (Local2 << (0x08 * Local1))
Local1++
}

Return (Local0)
}
Else
{
Return (Zero)
}

ToBuffer - unsupported instruction from acpi 2.0
0x07D6 - hardcoded id of Vista

This is simple example of replacement, total is 12 new instructions:
Zitat
QwordConst
ConcatenateResTemplate
Mod
CreateQWordField
ToBuffer
ToDecimalString
ToHexString
ToInteger
ToString
CopyObject
Mid
Continue



EDIT by Fernando: I have put the code into "spoilers" (to save space)

#10 deSSy2724 Isnt Coffe 300 series?  Would it work with my Fatal1ty Z370 Professional Gaming i7? Im just wondering if ACPI could work on XP and maybe on Win 98SE.

BTW anyway..... when it comes to SATA AHCI, this MBO has actually dual SATA controllers (6x from Intel and 2x from ASMedia), so, that should not make additional obstacles.
#11 zir_blazer Have you considered virtualization? You can use it as a compatibility layer between new Hardware and old OSes, and unless you are doing something very specific that requires bare metal access, VGA Passthrough is usually enough to get a fully functional Windows VM that feels like bare metal (Could be problematic in WXP, but you can source an old, supported Video Card). Been using Windows that way since December 2013 with a Linux host and QEMU-KVM-VFIO, and used as main VM Windows XP SP3, Windows XP x64 SP2, and now Windows 10.
#12 deSSy2724 I need XP 32 bit for legacy/old games and application, thats why I need proper drivers. And for old win 95-98-ms dos games there are PCI express to PCI adapters.... not sure if that could work and there are tools to downclock/limit/slower CPUs in win 95/98 for beter compatibility.

BUT dual booting XP 32 bit and win 10 64 bit is my main goal with proper drivers, acpi if possible for xp. And dual graphics cards.... gtx 1080/rtx2080/vega/navi GPU (not sure which one exactly would I get) for new advanced software/games and I have a spare radeon rx 260x for XP 32 bit (it has official drivers). Win 98SE and ms dos would be just an additional bonus if possible.
#13 zir_blazer
Zitat von ⇗ deSSy2724 im Beitrag ¶ #12
I need XP 32 bit for legacy/old games and application, thats why I need proper drivers. And for old win 95-98-ms dos games there are PCI express to PCI adapters.... not sure if that could work and there are tools to downclock/limit/slower CPUs in win 95/98 for beter compatibility.

Seriously, you're better off with virtualization simply because as the emulated platform stuff is old enough (Chipset, IDE Controller, etc), you will always have "proper Drivers" of the harder to support components. The only missing thing is the GPU, which VGA Passthrough already covers well enough.
There are also some Motherboards with PCI slots like ⇗ this one. Recall at least seeing a guy with an old PCI Voodoo ⇗ passthroughing it to a VM and playing DOS or W9x games with Glide. Your other option is PCem, or a computer old enough to get things working mostly out of the box.
#14 infuscomus ⇗ @Mov AX, 0xDEAD:

Would patching like ¶ >this< help to fix an A5 BSOD?
If so, can i get some help to patch ACPI?

EDIT by Fernando: Fully quoted post replaced by directly addressing (to save space)
#15 Mov AX, 0xDEAD
Zitat von ⇗ infuscomus im Beitrag ¶ #14
Would patching like this help to fix an A5 BSOD?
If so, can i get some help to patch ACPI?
Yes, this patching fix A5 bsod
You need ask for someone to fix your acpi table or learn how to DIY, see attachemnt "before and after"
patching is not easy, if you forget return something from method you will get another BSOD, so be accurate

Mov AX, 0xDEAD has attached files to this post

 

Page 2

#16 infuscomus
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #15
Zitat von ⇗ infuscomus im Beitrag ¶ #14
Would patching like this help to fix an A5 BSOD?
If so, can i get some help to patch ACPI?
Yes, this patching fix A5 bsod
You need ask for someone to fix your acpi table or learn how to DIY, see attachemnt "before and after"
patching is not easy, if you forget return something from method you will get another BSOD, so be accurate



could you patch my ACPI Table for me please? you seem to know what you're doing and I don't want to break things, so I'd appreciate it.

is the ACPI Table stored in UEFI?
my motherboard is an ASRock AB350 Fatal1ty Gaming K4 - did you need UEFI file?
#17 Mov AX, 0xDEAD
Zitat von ⇗ infuscomus im Beitrag ¶ #16

could you patch my ACPI Table for me please? you seem to know what you're doing and I don't want to break things, so I'd appreciate it.


sorry, i don't do that.
Zitat von ⇗ infuscomus im Beitrag ¶ #16

is the ACPI Table stored in UEFI?


yes, dsdt binary table stored in uefi, short "how-to find,extract and decompile acpi tables" is ⇗ here
#18 deSSy2724 So, we need to patch all the mentioned instructions or some of them (depending on the configuration), is that right? Can we do it both after and before win XP installation and could this solutuin or similar work with win 98SE?
#19 diderius6 ⇗ @Mov AX, 0xDEAD
Do you think it is possible, just do make a small hack to acpi.sys in XP SP3, so that it does not worry about "wrong" acpi 2.0 syntax from Bios?
have a nice day
Dietmar

PS: Windows XP implements ACPI 1.0b and section 8.3 of Acpi 2.0 specification
     ⇗ https://www.uefi.org/sites/default/files...rces/ACPI_2.pdf
     
     Hyperthreading works with ACPI 1.0b version
     Hyperthreading starts with XP SP1.
#20 Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #19
@Mov AX, 0xDEAD
Do you think it is possible, just do make a small hack to acpi.sys in XP SP3, so that it does not worry about "wrong" acpi 2.0 syntax from Bios?


probably yes, but this will be not simple hack
1) code example from my gigabyte bios:
 
Method (ARPC, 4, Serialized)
{
ADBG (Concatenate ("NRPN: ", ToHexString (Arg0)))
Switch (ToInteger (Arg0))
{
Case (0x04)
{
....


This method ARPC called from other method _INI, so WinXP will parse this part
ToHexString & ToInteger are new syntax, we need to skip it some way.
ToHexString(ARG0) mean ARG0(maybe integer/string) => convert to String=>Concatenate ("NRPN: "+"0xYYYYZZZZ")
ToInteger(ARG0) mean ARG0(maybe integer/string/buffer/etc) "0x000XXYY"=> convert to Integer=>Case(integer expected)
we cannot just skip these command because they are parts of expressions and do some things with converting data/change types
acpi.sys need new logic to skip these command and do equalent actions

2) deny winxp parsing any _INI methods, winxp will skip parsing most of code, but winxp run not only _INI method, theres is other methods and i do not know how, when and what is runned (_sta,_sun,_crs,_srs and many other), and if vendor added debug lines with new syntax (like gigabyte did) to some of these method we get 0xa5 error again.
EDIT: gigabyte used in _crs new syntax too (

 
Device (EPC)
{
Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
{
[b]CreateQWordField[/b] (RBUF, \_SB.EPC._Y3B._MIN, EMIN) // _MIN: Minimum Base Address


Also skipping _INI may have some effects with devices.
This method may work for some motherboards without patching acpi tables if vendor not much modified acpi code

#21 diderius6 Hi all,
now I understand, how to fix Acpi DSDT table for to overcome 0xA BSOD in XP.
Extract body of Raw section under GUID: C118F50D-391D-45F4-B3D3-11BC931AA56D  in Bios,
recompile with iasl -d (newest version), mod, compile and flash back to the same raw body.
A lot of work as I see now, changes need to be done in about 600 places as to me Beyond Compare shows.

And also to fix the not working USB from Intel from chipset z170 up to z390 via Bios mod.

This means: In my next holidays in about a month I will give it a try,
how to make this for other Bios also,

have a nice day
Dietmar
#22 Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #21
Hi all,
A lot of work as I see now, changes need to be done in about 600 places as to me Beyond Compare shows.


1)my example is not best method, change only parts with reserved method/keywords "_ini", "_crs", "_sta", "_srs", "_hid", "_cid", "_adr", "_uid", "_reg", "_psw", "_ejd", "_prw", "_pr0", "_pr1", "_pr2", "_psc", "_ps0", "_ps1", "_ps2", "_ps3", "_off", "_on_", "_tmp", "_ej0", "_ej1", "_ej2", "_ej3", "_ej4", "_dis", "_wak", "_lck", "_pts", "_si_", "_sst", "_ddn", "_prt", "_bbn", "_s0_", "_s1_", "_s2_", "_s3_", "_rmv", "_irc", "_rmv", "_sun", "_al0-_al9", "_psl", "_rmv",
2) ignore _DSM, windows xp doesnt use it
#23 Pill Monster ⇗ @deSSy2724:

Hi, just to clear up a couple of things....

Zitat von ⇗ deSSy2724 im Beitrag ¶ #1
1. Is it posssible to install Windows XP SP3 32bit and WIndows 10 64bit on the same SSD with separate partitions or do I need two separate SSDs?
Both partitions can reside on same drive as long as it is MBR & motherboard supports legacy boot mode.
Zitat von ⇗ deSSy2724 im Beitrag ¶ #1
2. Does XP 32bit support only MBR..... would it work if one partition of the same drive is partitioned as MBR (for XP) and the second partition of the same drive partitioned as GPT (for Win 10)? And is there any issues with SSD and MBR?
XP supports GPT also but for data only. Meaning your XP boot drive has to be MBR but you could have a couple of GPT drives as well for games, movies, porn...:P etc if you wanted.
No issues with SSD & MBR.
Zitat von ⇗ deSSy2724 im Beitrag ¶ #1
3. Can we install Windows XP SP3 32bit from USB flash drive from modern motherboards and/or from Bluray drive/readers (I mean CD/DVD -/+ R burned discs on Bluray drives)?
Absolutely. I have installed XP many times on various machines from USB flash drives, even back in early 2000's. WinFlash was used to make the USB install image. (I prefer Rufus these days).
The caveat here is the flash drive usually must be plugged into a native AMD/Intel USB 2.0 port (meaning no 3rd party controllers such as ASmedia/JMicron etc unless you want to slipstream).
Early editions of XP discs didn't contain USB drivers for some vendors which contributed to the "XP doesn't support USB boot" stories...   
Zitat von ⇗ deSSy2724 im Beitrag ¶ #1
4. If 2.2 TB HDD is the limit for the 32 bit OS, can we split a 4/6/8 TB HDD/SDD to multiple 2TB partitions or is that still not possible/usable with 32bit OS-es?
2.2TB is more a limit of 512b sectors combined with 32bit hardware.  However, plug in an 4K Advanced Format drive that 32bit 2.2TB limitation will turn into a 32bit 16TB limitation. Check your I/O controller specs if in doubt.
Zitat von ⇗ deSSy2724 im Beitrag ¶ #1
5. Is it right that Intel Ivy Bridge CPUs and AMD Vishera aka AMD FX Series CPUs (CPU, Chipsets, Motherboard etc.) are the latest hardware which officially support Windows XP 32bit? If true... then whats the latest unofficial supported hardware (CPU series) for Windows XP SP3 32bit and are there any disadvantages compared to "official supported" CPUs/Chipsets?
Source material which contains the words "officially" or "by default" can usually be ignored. That includes Wikipedia and fair bit of Microsoft's own doco.....
Case in point, below:

⇗ https://docs.microsoft.com/en-us/windows...ows-and-gpt-faq
^I had to chuckle....because not 3 hours ago I did exactly this for a client. I cloned an offline HP GPT drive containing bad sectors onto a new hard drive, then booted off the cloned drive. :D
Zitat von ⇗ deSSy2724 im Beitrag ¶ #1
5. Is it right that Intel Ivy Bridge CPUs and AMD Vishera aka AMD FX Series CPUs (CPU, Chipsets, Motherboard etc.) are the latest hardware which officially support Windows XP 32bit? If true... then whats the latest unofficial supported hardware (CPU series) for Windows XP SP3 32bit and are there any disadvantages compared to "official supported" CPUs/Chipsets?
Whatever the chipset maker supports, aka Intel, AMD, ASUS, Gigabyte, Asmedia, Renasonce, Realtek, and the like.   As mentioned earlier "officially" can usually be ignored..
Companies such as HP, Dell, Lenovo, Fujitsu etc are all OEM's which means they can provide drivers for the originally installed OS only. Going to HP for drivers is akin to obtaining drivers from Windows Update - the last place end users should be looking for drivers. :)
Zitat von ⇗ deSSy2724 im Beitrag ¶ #1
6. Now, regarding SATA drivers and "slipstreaming" it to WIndows XP SP3 32bit installation disc:
Do I need to look ONLY for specific chipset (independently of a specific motherboard manufacturer or motherboard model etc.) or in another words, do all the motherboards which share the same chipset actually support the same SATA drives or not and can we add/slipstream multiple SATA drivers on the same Windows XP 32bit installation disc?
The Northbridge devices are the same across all AMD boards, or all Intel boartds with same chipset, however the Southbridge can have different hardware which is vendoe specific, by vendor I mean ASUS/MSI/GA....
Eg, Gigabyte MB with 666 Special Quad SLI (made up platform) may have a Jmicron SATA controller while Asus version has Asmedia. Best to check specs..

Edit by Fernando: Fully quoted post replaced by directly addressing to the thread opener (to save space)
#24 zir_blazer
Zitat von ⇗ diderius6 im Beitrag ¶ #19
PS: Windows XP implements ACPI 1.0b
     Hyperthreading works with ACPI 1.0b version
     Hyperthreading starts with XP SP1.
If I recall correctly, Windows XP supports a hybrid halfway between ACPI 1.0b and 2.0 (Or was 1.0b with some 2.0 features?). Recall seeing some old PowerPoint presentation about ACPI covering that.


Zitat von ⇗ Pill Monster im Beitrag ¶ #23
XP supports GPT also but for data only. Meaning your XP boot drive has to be MBR but you could have a couple of GPT drives as well for games, movies, porn...:P etc if you wanted.
No issues with SSD & MBR.
Only Windows XP x64 supports GPT, for data only as you said. However, standard WXP 32 Bits is MBR only.
#25 diderius6 Hi all,
does anybody have a motherboard from Asrock with z170 (or z270, z370) chipset, where XP SP3 can be installed with ACPI support at once?
In this case, hyperthreading should work also.
And it would be a nice base for a step by step test, which device on Asrock motherboard is not compatible with the acpi.sys driver from XP
Dietmar

PS:⇗ @Mov AX, 0xDEAD You had the idea, to test a very early Bios on those Z170 boards.
Do you found one, where ACPI is possible for XP without any modd?

I just find, that with the checked version of acpi.sys from XP you can start a windbg session.
Hard job, but via this way you can repair step by step the Bios DSDT table.

After long search I found the whole Checked Version of XP SP3, containing also the wished acpi.sys checked version.
Now fun can start..
⇗ https://archive.org/download/somewinxpdownloads

The full symbols for windbg are also there.
#26 Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #25
Hi all,
I just find, that with the checked version of acpi.sys from XP you can start a windbg session.
Hard job, but via this way you can repair step by step the Bios DSDT table.
After long search I found the whole Checked Version of XP SP3, containing also the wished acpi.sys checked version.
Now fun can start..


checked version helps for reversing, it still usual version and no support acpi2.0+ syntax
#27 diderius6 ⇗ @Mov AX, 0xDEAD

This is clear for me. I only want to have a tool, with which I can see, what is going on via ACPI in XP.
And this is, what I have been looking for. With Windbg you can now debug direct ACPI:
⇗ https://docs.microsoft.com/en-us/windows...ging-extensions

And, have you ever had an XP SP3 on a z170 board, where ACPI works without any mod?
This would be very helpfull to understand, which component of the board with BSOD 0xA is faulty in DSDT table,
Dietmar
#28 Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #27

And, have you ever had an XP SP3 on a z170 board, where ACPI works without any mod?
This would be very helpfull to understand, which component of the board with BSOD 0xA is faulty in DSDT table,
Dietmar


I have gigabyte h110m hd2 board, first version bios (F1) doesnt use acpi2.0 commands in critical for winxp parts of dsdt table. next versions (f20 for kabylake support) start using new syntax, i never had about special winxp compatible bioses.
I see that moving blocks to expression "if os >=vista do {....}" solve problem 0xa5 with any bios
#29 Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #27

This is clear for me. I only want to have a tool, with which I can see, what is going on via ACPI in XP.


there no magic, acpi.sys doesnt know nothing about new acpi commands and when it found it at time of parsing, it generate 0x000000A5 error with 4 subcodes (errcode, adress, global code error from ntstatus.h, method where parser found problem)
in my case was (0x03,adr,0xC0140001 ,_INI)
#30 XPLives
Zitat von ⇗ diderius6 im Beitrag ¶ #21
Hi all,
now I understand, how to fix Acpi DSDT table for to overcome 0xA BSOD in XP.
Extract body of Raw section under GUID: C118F50D-391D-45F4-B3D3-11BC931AA56D  in Bios,
recompile with iasl -d (newest version), mod, compile and flash back to the same raw body.
A lot of work as I see now, changes need to be done in about 600 places as to me Beyond Compare shows.



How about a simpler quicker fix for acpi.sys.  Can you modify the 2K, XP, and 2K3 acpi.sys files to just do a proper shutdown only?  Currently NO ACPI install method does not do an automatic shutdown.  It must be a manual power down to turn the system off.

The ACPI BIOS fix may take you some extra time as you said to analyze a working tutorial.  But a shutdown acpi.sys fix for NT5.X OS would be handy to have.   Restarting the computer is not an issue.  Standby should not work or be present.  I haven't tested hibernate but I assume this might not require ACPI since it seems to save an image to the hard disk of equal size to the visible memory installed and then you can power the system off and when the system is rebooted it will reload the entire image back so I think hibernate is not affected.  I am unsure about the Intel Speed Step as I lock down my CPU Core Ratio in the BIOS so I am unaware if NO ACPI affects this feature.

Zitat von ⇗ diderius6 im Beitrag ¶ #21

And also to fix the not working USB from Intel from chipset z170 up to z390 via Bios mod.

This means: In my next holidays in about a month I will give it a try, how to make this for other Bios also,


Can you explain the Intel USB fix?  Are you saying you can make the Intel USB 3.0 xHCI XP driver from scratch?

If so then take a longer holiday break to complete it.

 

Page 3

#31 XPLives >>Hi all,
does anybody have a motherboard from Asrock with z170 (or z270, z370) chipset, where XP SP3 can be installed with ACPI support at once?
I am not aware of any.<<

Maybe going back to Z87/Z97 Asrock motherboard you can compare with Z170 what changed in the BIOS that broke XP ACPI compatibility?
There also exists DDR3 Z170 Motherboards which SkyLake supports DD3L and PCI slots before full DDR4 support required for Kaby Lake, Coffee Lake, -> Cannon Lake+

Compare the Z87/Z97 Fatal1ty Professional with the Z170 Fatal1ty Gaming i7 (Fernando and I have this same MB).  This is the first motherboard which I did all original XP testing for SkyLake and was successful but using the no ACPI method.  This is also where the USB 2.0 eHCI was officially removed and causing the start of the USB 2.0 compatibility issues so I had to come up with workarounds which I later put into the guide.
⇗ [Guide] How to install Windows XP OS on Modern Hardware - Z170 Z270 SkyLake Kaby Lake

I will be testing my older Z87 MB that I bought used to do some testing with XP and USB 2.0 eHCI ports.  I am repairing / troubleshooting a Z68 MB at the moment.
#32 diderius6 Hi ⇗ @Mov AX, 0xDEAD
"I have gigabyte h110m hd2 board, first version bios (F1) doesnt use acpi2.0 commands in critical for winxp parts of dsdt table."
This I understand and also your nice idea to keep acpi2.0 commands away from acpi.sys of XP and give full Acpi support to higher OS.

But I do not know, how to do the same for an other Bios, for example to my Asrock fatal1ty z370 gaming k6 Bios.
How do you know, where and how to make this about 600 changes in DSDT table?
Did you copy the DSDT table from Bios F1 to Bios F20? This would be interesting, if BSOD for Acpi is gone then.

So I come to another idea. The Bios gigabyte h110m hd2 board, first version bios (F1) gives no BSOD 0xA5.
May be, there are only one or two devices on this motherboard, which gives this BSOD with next Bios f20.
And this can be tested, just to switch them off in Bios, if possible.
And the reason for this BSOD can be found via windbg and checked version of acpi.sys.

Your BSOD happens because of method _INI.
Have you tested, if this is the only method, which causes Acpi BSOD?
I know from acpi "compatible" Bios for XP, that in log file of acpi there have been other errors reported too,
but they do nothing bad to XP,
Dietmar
#33 Fernando
Zitat von ⇗ diderius6 im Beitrag ¶ #25
does anybody have a motherboard from Asrock with z170 (or z270, z370) chipset, where XP SP3 can be installed with ACPI support at once?
As you can see in my signature, my main PC has an ASRock Z170 chipset mainboard. Several months ago I tried to get Windows XP installed onto it by booting off the XP SP3 CD and finally succeeded without having customized the XP image regarding ACPI. All I did was hitting F5 and/or F7 during the textmode part of the XP installation and altering the ACPI settings there.
Due to the fact, that I could not use my USB connected input devices, I stopped my tests.
#34 Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #32
Hi @Mov AX, 0xDEAD
May be, there are only one or two devices on this motherboard, which gives this BSOD with next Bios f20.
And this can be tested, just to switch them off in Bios, if possible.
...
Your BSOD happens because of method _INI.
Have you tested, if this is the only method, which causes Acpi BSOD?


- acpi code in dsdt table is independ of enabled/disabled device, it is static and maded at time of creation bios
- i have no tested other methods because i isolate ALL new code (exception _dsm), my "own" overkill way and i do not recommend it
#35 diderius6 Hi all,
I just find this:
⇗ https://docs.microsoft.com/en-us/windows...cpi/winacpi-osi
This is really nice: Acpi can decide for itself, which version of Acpi it want to use in
building DSDT table in Bios, just chose XP ("Windows 2001"). This is the way, Bios manufacturer use it.
Waaoh, this looks like a Bios hack and may be a fake copy can be handed over direct to
HKLM\HARDWARE\ACPI\DSDT\842A1\842A1P07\00000004\00000000
hex copy in registry from Bios in XP, without any Bios mod
Dietmar
#36 diderius6 Here comes the complete list of opcodes, used bei ACPI 2.0 in DSDT table:
ACPI Type 2 Opcodes

ASL Statement Description
Acquire Acquire a mutex
Add Add two values
And Bitwise And
Buff Convert data type to buffer
Concatenate Concatenate two strings, integers or buffers
ConcatenateResTemplate Concatenate two resource templates
CondRefOf Conditional reference to an object
Decrement Decrement a value
DecStr Convert data type to decimal string
DerefOf Dereference an object reference
Divide Divide
FindSetLeftBit Index of first least significant bit set
FindSetRightBit Index of first mo st significant bit set
FromBCD Convert from BCD to numeric
HexStr Convert data type to hexadecimal string
Increment Increment a value
Index Reference the nth element/byte/character of a package, buffer or string
Int Convert data type to integer
LAnd Logical And
LEqual Logical Equal
LGreater Logical Greater
LGreaterEqual Logical Not less
LLess Logical Less
LLessEqual Logical Not greater
LNot Logical Not
LNotEqual Logical Not equal
LoadTable Load Table from RSDT/XSDT
LOr Logical Or
Match Search for match in package array
Mid Returns a portion of buffer or string
Mod Modulo
Multiply Multiply
NAnd Bitwise Nand
NOr Bitwise Nor
Not Bitwise Not
ObjectType Type of object
Or Bitwise Or
RefOf Reference to an object
ShiftLeft Shift value left
ShiftRight Shift value right
SizeOf Get the size of a buffer, string, or package
Store Store value
String Copy ASCII string from buffer
Subtract Subtract values
ToBCD Convert numeric to BCD
Wait Wait
Xor Bitwise Xor

Some of them are not in ACPI 1, for example ConcatenateResTemplate, but seems to work also with XP.
You can overcome  in BIOS with the nice idea from ⇗ @Mov AX, 0xDEAD

Dietmar

EDIT by Fernando: The list has been put into a "spoiler" (to save space)
#37 diderius6 Here the same for ACPI 1 (all known by XP in BIOS DSDT table):
ASL Statement 	Description
Acquire Acquire a synchronization object
Add Add two values
ASL Statement Description
And Bitwise And
Concatenate Concatenate two strings
CondRefOf Conditional reference to an object
Decrement Decrement a value.
Divide Divide
FindSetLeftBit Index of first set Lsb
FindSetRightBit Index of first set Msb
FromBCD Convert from BCD to numeric
Increment Increment a value
Index Reference the nth element of a package
LAnd Logical And
LEqual Logical Equal
LGreater Logical Greater
LGreaterEqual Logical Not less
LLess Logical Less
LLessEqual Logical Not greater
LNot Logical Not
LNotEqual Logical Not equal
Load Load differentiating definition block
LOr Logical Or
Match Search for match in package array
Multiply Multiply
NAnd Bitwise Nand
NOr Bitwise Nor
Not Bitwise Not
ObjectType Type of object
Or Bitwise Or
RefOf Reference to an object
SizeOf Get the size of a buffer, string, or package
ShiftLeft Shift value left
ShiftRight Shift value right
Store Store value
Subtract Subtract values
ToBCD Convert numeric to BCD
Wait Wait
XOr Bitwise Xor

EDIT by Fernando: The list has been put into a "spoiler" (to save space)
#38 diderius6 And some opcodes are renamed from

ACPI "old 2"  > ACPI 2
 

Buff > ToBuffer
DecStr > ToDecimalString
HexStr > ToHexString
Int > ToInteger
String > ToString


The right side above opcodes  (from Acpi 2) are all known by XP in DSDT table,
so no need to fix them in DSDT table

Dietmar

Copy > CopyObject (may be not known by XP)

#39 Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #38
Buff > ToBuffer
DecStr > ToDecimalString
HexStr > ToHexString
Int > ToInteger
String > ToString

Copy > CopyObject (may be not known by XP)



there no renames, ToBuffer and other are new acpi 2.0 opcodes, check ⇗ amlcode.h, winxp accept only 1.0b opcodes
#40 diderius6 Hi,
yes, this are new and first arrive in ACPI 2.
BUT in the Bios F1 of your motherboard from Gigabyte they are all present (for example HexString)
and give no BSOD x0A5 there as you told us,
Dietmar
#41 diderius6 The only opcode,
which has to be disabled in Bios DSDT table for XP seems to be

CopyObject

Dietmar
#42 diderius6 Hi,
in DSDT table from Bios 410 for Asus z170-k I found

If (_OSI ("Windows 2001 SP2"))
{
Store (0x07D2, OSYS)
}


I think, this Bios looks, if XP SP2 is to be installed and loads then only ACPI code,
compatible for XP SP2 (XP SP3 also I think),
have a nice evening
Dietmar

EDIT: By passing the string "Windows 2001" into the _OSI method, the BIOS indicates to the operating system that the BIOS is aware of and compatible with the ACPI implementation and feature set of Windows XP. Windows XP will then reject all I/O reads or writes from BIOS ASL code to addresses on the blocked ports list and generate an error in the system event log.

Ok, this makes sense for the methode from @Mov AX, 0xDEAD.
When XP cant stop I/O reads or writes from crazy BIOS even it told to XP Store (0x07D2, OSYS),
then you have to block all this AHCI 2.0 question from Bios in Bios itself.

The underlying reason may be, that newer Bios can not identify, that the OS is XP.
#43 Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #40
Hi,
yes, this are new and first arrive in ACPI 2.
BUT in the Bios F1 of your motherboard from Gigabyte they are all present (for example HexString)
and give no BSOD x0A5 there as you told us,


because these commands belong to some custom methods/submethods (winxp do not call their)
after version F1 these method started using in _INI too as subcall (see _INI of devices NVM1,NVM2,NVM3, at end they call subproc ARPC(), arpc() use new ToHexString and ToInteger)
ACPI virtual machine in windows is interpretator, it not check all code, only needed parts, we can hide nuclear bomb inside acpi code and windows will never find it ))
#44 diderius6 Hi all,
today I get the mainbord gigabyte GA-H110M-S2H
very similar to                gigabyte GA-H110M-HD2

My mainboard has no PCI slot, no intern parallel port header
and 2 USB 2.0 internal more.
All other is the same.
I fetch the whole content from the 25B64CSIG Bios chip on this board with
EEprom flasher CH341A.
The Bios chip is soldered and it takes 3 tries to connect it direct ON the board.
In CH341A - USB Programmer 1.30 the Bios chip gets name GD25Q64.
The yellow LED on CH341A  blinks only, when you read from the chip, NOT when it is only connected.
I read it 3 times and verify, all ok.
Now I make a try to flash the Bios back to version F1, which is only possible through hardware flash.
I hope, that the UEFI tool is right, that all Bios information starts from 200000h
because I do not want to lose my MAC adress etc.
No I am looking about the ME region
⇗ Intel Management Engine: Drivers, Firmware & System Tools
Dietmar

Edit: The Bios on this board is latest version F25.
       When I try to reflash to F1, compi told: "Bios is outdatet, update to newest version" so the Website from Gigabyte tells truth, brrr.
       Flash back to Vers. F1 only possible with CH341A.
#45 diderius6 ⇗ @Mov AX, 0xDEAD

Hi, the Bios from the Gigabyte board seems to be encoded.
How is it possible, to write the DSDT table back to such a Bios?
Have a nice evening
Dietmar

PS: The Uefitool can extract and decode the DSDT table, but nothing insert or delete there.
     Only UEFITool_0.25.1_win32 can write DSDT Table back in raw mode.
     Now I have Bios original from my mainboard ver. F25 with the DSDT table from Biosversion F1 inserted.
     Now cross finger, if Compi will boot again. In other case I have to flash the whole original Bios back.

 

Page 4

#46 diderius6 Hm,
I succeed to flash the Bios Chip F25 with DSDT table from F1 Version Bios.
Compi starts, but shows BSOD 0xA5 like before with F25 Bios?!
So, this is strange for me
Dietmar

EDIT: I reread again with the EEprom writer the Bios chip.
Uefitool shows, that indeed now DSDT table from Bios ver. F1 was build in.
Then I flashed the Biosship with whole F1 Bios from Gigabyte webside.
Now motherboard does start, but no post, nothing on screen.

Ok, I am going to flash original Bios file back and tomorrow I
try the DSDT2 file from @Mov AX, 0xDEAD.
#47 Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #45
@Mov AX, 0xDEAD
Now I have Bios original from my mainboard ver. F25 with the DSDT table from Biosversion F1 inserted.
Zitat von ⇗ diderius6 im Beitrag ¶ #45
I am going to flash original Bios file back and tomorrow I try the DSDT2 file
Hi,
Do not do that, acpi tables hardcoded to RAM/IO/DEVICE ranges depend on bios revision
F1 is old release for skylake
F25 is latest release wiith new GUI and suport for kabylake

you need decompile/change/compile/flash f25 version of tables
main problem is decompiling with external links with various number of arguments, i made custom file for my f24 bios:
External (AL6F, MethodObj, 0) 
External (HLVT, MethodObj, 0)
External (P0L6, MethodObj, 0)
External (P1L6, MethodObj, 0)
External (P2L6, MethodObj, 0)
External (PS0X, MethodObj, 0)
External (PS2X, MethodObj, 0)
External (PS3X, MethodObj, 0)
External (_SB_.PCI0.GFX0.GSCI, MethodObj, 0)
External (_SB_.PCI0.GFX0.IUEH, MethodObj, 1)
External (_SB_.PCI0.PAUD.PUAM, MethodObj, 0)
External (_SB_.PCI0.PEG0.HPME, MethodObj, 0)
External (_SB_.PCI0.PEG1.HPME, MethodObj, 0)
External (_SB_.PCI0.PEG2.HPME, MethodObj, 0)
External (_SB_.PCI0.XHC_.DUAM, MethodObj, 0)
External (_SB_.PCI0.XHC_.RHUB.INIR, MethodObj, 0)


why 1 on IUEH ? because i've checked all methods from all acpi files to find count of arguments of external things (iasl will report as "Warning: Unknown method, guessing 0 arguments" ) and found  Method (IUEH, 1, Serialized) in SDDT-SaSsdt table

EDIT by Fernando: The code has been put into a "spoiler" (to save space)

#48 diderius6 ⇗ @Mov AX, 0xDEAD,
thank you very much for help.
Yes, I see this warning message from compiler iasl after compiling DSDL table from my F25 Bios.
I just flash my original F25 back to the board and is awake to life again:).
Interesting thing: When I compare whole Bios content before flashing and after compi started, I noticed, that the compi changes data in Bios chip, about 133000 Byte. This I never noticed before.
So this just means, the Bios is open field for compi, brrr..
Dietmar
#49 diderius6 First I do binary compare of my DSDT.raw table
with the DSDT.raw table from F25 from Gigabyte website.
They are 100% identic.
Now fun starts,
I mod my DSDT.dsl table with copy and past left to right side via Beyond compare
and DSDT2.dsl from ⇗ @Mov AX, 0xDEAD
Dietmar
#50 diderius6 9 compiler errors.. will be a hard search^^

Now I get error message 6088  "Object is not accessible from this scope ^  (WANX)"
#51 Mov AX, 0xDEAD Hi all,

Found interesting bug in one device in dsdti table for kabylake+ gigabyte's bioses (in skylake bioses this device not presented), device is IOTR (I/O Trap), it report to windows about claimed I/O adresses, method _CRS() load settings from special memory and report 0xFE adresses (254) starting from 0xFF00.
WinXP x32 show claimed region correctly belong to "mothebvoard resource", but show conflict with pci host bridge (and VGA card too)
Win7 also show claimed region but no conflicts.

I've patched this device to return empty list of resources Local0 = ResourceTemplate ()  { } return(Local0) and problem is gone
#52 diderius6 Yessa,
after 14 hours work I succeed to compile back my DSDT table with about 600 new entries.
What a crazy work,
Dietmar
#53 diderius6 Even I do to 100% 1 by 1 the steps from DSDT2, after flashing the new Bios I get still 0xA5 BSOD.
Nice idea, but does not work for me until now
Dietmar
#54 diderius6 Waaoh new day nice day,
in next try I succeed to install XP SP3 with full ACPI support on my gigabyte ga-h110m-s2h Bios vers. F25 !!!
I forget, that with else you have always to return the value ZERO,
when the condition  If ((OSYS >= 0x07D6))
is not met, when a value is overgiven,
thanks a lot ⇗ @Mov AX, 0xDEAD
Dietmar

PS: This was the first time, that I saw the entry ACPI Multiprocessor PC
in device manager with new processor skylake, kabylake, coffee lake.
Shut down works also because of Acpi.
#55 diderius6 Hi all,
now I try the same for the latest Bios Z37GK63.20 for asrock fatal1ty z370 gaming k6 mainboard.
May be, some steps can be automated in correcting DSDT  *.dsl file, until now I do all by hand
Dietmar

Look for the key-words in *.dsl file from DSDT table and put then always the question before each
If ((OSYS >= 0x07D6))  
{

}

and if a value is asked also always answer with

Else
{
Return (Zero)
}

On the Gigabyte DSDT table you have to do this 66 times.

Key words are:

  • ConcatenateResTemplate
  • CreateQWordField
  • ToBuffer
  • ToDecimalString
  • ToHexString
  • ToInteger (no need to be modded in XP in Method (_DSM  )
  • ToString
  • CopyObject

and dont forget for example to copy all from DSDT2
External (P0L6, MethodObj)    // 0 Arguments    // From external reference file

EDIT by Fernando: Text slighly re-formatted (to save space and for better readability)
#56 Mov AX, 0xDEAD ⇗ @diderius6:

i think this is not correct if method must return Buffer, Zero is 0 (Integer)
correct is:
Return (Buffer (One)
{
0x00
})

or maybe

Return (ResourceTemplate ()
{
} )


p.s  maybe acpi.sys tract zero as null buffer, who knows...
#57 diderius6 Hi ⇗ @Mov AX, 0xDEAD,
do you noticed any strange behavior of XP, when you overcome a lot of instructions from DSDT with If ((OSYS >= 0x07D6))?
And have you tested your nice method on another compi with XP?
For me it is also interesting to know, if one can switch between acpi pc and standard pc, for to compare benchmarks without new installing whole xp.
I think, when you have an Acpi pc, switching is always possible when you change hal.dll and ntoskrnl.exe (is this enough?)
Dietmar
#58 deSSy2724 Congratulation Dietmar...... can you confirm if Hyper Threading is working and does the OS and other programs like CPU-Z detect the correct number of threads for your i5 8700K( 6 cores /12 threads) and does Intel Speedstep work (auto clock/downclock).

I think, both of those feautures should be tied to ACPI.....
#59 diderius6 Hi,
for the 1151 platform I have only a Celeron 3900,
this has no Hyperthreading. But I think it works.

This Bios mod makes a problem I think with the timer.
Via changing computer Acpimultiprocessor->Standard PC this is gone, so it really belongs to the modded DSDT table.
In the original source code from DSDT table stands at a lot of places
Local0 = Buffer (0x02)
{
0x79, 0x00
}

⇗ @Mov AX, 0xDEAD changed this always against
Local0 = ResourceTemplate ()
{
}

Because I do not understand the ASL Syntax I have no idea, what this is doing.


And he deleted at a lot of places        ADBG (Concatenate...  
lines
for example

                   ADBG (Concatenate ("CNRSs ", ToDecimalString (Timer)))

May be this is the reason for the Timer problem,

Dietmar
#60 Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #59

This Bios mod makes a problem I think with the timer.
Via changing computer Acpimultiprocessor->Standard PC this is gone, so it really belongs to the modded DSDT table.

And he deleted at a lot of places ADBG (Concatenate... lines
for example
                   ADBG (Concatenate ("CNRSs ", ToDecimalString (Timer)))


- what is problem with timer ?
- adbg is text debug message to COM port/RAM/etc and nothing more

we cannot keep this line as is, because ToDecimalString is new command

 

Page 5

#61 Mov AX, 0xDEAD
Zitat von ⇗ deSSy2724 im Beitrag ¶ #58
Congratulation Dietmar...... can you confirm if Hyper Threading is working and does the OS and other programs like CPU-Z detect the correct number of threads for your i5 8700K( 6 cores /12 threads) and does Intel Speedstep work (auto clock/downclock).
I think, both of those feautures should be tied to ACPI.....

- intel speedstep work, official method to enable - power saving mode must be ON
- i dont have HT cpu so cannot report

I found some of power management problem, in ThrotleStop i see cpu is 50-60% of time in C0 power state, task manager cpu utilization is 0%. ThrotleStop also report about 0% time in any power saving states C1,C2,.. state.
In win7 power states are normal, 2-6% in C0 and 95% in C7
#62 diderius6 Hi ⇗ @Mov AX, 0xDEAD,

I deleted in DSDT2 from you the device LPTE, because my mainboard does not have.
After this crazy 14 hour fight with the compiler I can check, that all other is to 100% identic with your DSDT2 file.

When I open the game "Moorhuhn", the wings of the Mill rotate more than 10 times faster than before
and no "Moorhuhn" can be seen.

The browser firefox vers. 52 is much slower than before.
Version 13.0 of firefox works normal.

I am happy for help,
because I want to mod Bios for other compis too,

Dietmar

PS: Sound, network, everything works with this ACPI DSDT table.
#63 diderius6 Hi all,
I found out, that with the modded DSDT table in Bios (Acpi) all programs work normal for about 1 second, but then changes behavior.
I disabled energy management in HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\intelppm setting start to 4 (disabled), but this does not change anything,
Dietmar

PS: I think, during the mod of the DSDT table we disable something, that is necessary for ACPI to work.
#64 Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #63
I found out, that with the modded DSDT table in Bios (Acpi) all programs work normal for about 1 second, but then changes behavior

confirm same problem, windows return wrong timer to applications

i think this can be fixed, just need find proper way
#65 diderius6 The use of
/usepmtimer
in boot.ini
does not help
Dietmar

PS: Also not helps
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\HAL]
"14140000FFFFFFFF"=dword:00000010


EDIT2: I delete in DSDT table from Bios the whole device HPET and flash Bios new.
          But the time is as wrong as before (negativ values, brr..), nothing changed. XP SP2 does not make use of HPET in Acpi,
          but XP SP3 does.
#66 Mov AX, 0xDEAD perftimer reset about every 3.5s, i have сhecked FACP table, resolution of pm timer (TMR_VAL_EXT) is 24 bit, i think:
- winxp use PM Timer (because this utility show 3.5Mhz)
- overflow 24bit is 4 secs, overflow 32bits is 20 mins
- winxp read it as 32 bit and doesnt care about high 8 bit (they are zero, this leads to negative result of operation currentime()-previoustime())

in FACP exist interesting bit USE_PLATFORM_CLOCK=1 (OSPM use HPET (if exist) or ACPI PM Timer)
#67 diderius6
4.7.3.3 Power Management Timer (PM_TMR)
Register Location:<PM_TMR_BLK> System I/O Space
Default Value: 00h
Attribute: Read-Only
Size: 32-bits
This read-only register returns the current value of the power management timer (PM timer).
The FACP table has a flag called TMR_VAL_EXT that an OEM sets to indicate a 32-bit PM
timer or reset to indicate a 24-bit PM timer. When the last bit of the timer toggles the
TMR_STS bit is set. This register is accessed as 32-bits.
This register contains optional features enabled or disabled within the FACP table. If the
FACP table indicates that the feature is not supported as a fixed feature, then software treats
these bits as ignored.

TMR_VAL_EXT

A zero indicates TMR_VAL is implemented as a 24-bit
value. A one indicates TMR_VAL is implemented as a 32-
bit value. The TMR_STS bit is set when the most
significant bit of the TMR_VAL toggles.
#68 diderius6 Indeed is this flag TMR_VAL_EXT in Bios from my Gigabyte H110m board set to 0 and interpreted as 32 bit gives crazy results for the clock.

Signature "FACP"
Length 0x00000114 (276)
Revision 0x06 (6)
Checksum 0xA4 (164)
OEM ID "ALASKA"
OEM Table ID "A M I"
OEM Revision 0x01072009 (17244169)
Creator ID "AMI "
Creator Revision 0x00010013 (65555)
Firmware Control 0xBA7A5C40 - FACS
DSDT Address 0xBA3FA1E8 - DSDT
Interrupt Mode 0x01 (1) - Multiple APIC
PM Profile 0x01 (1)
SCI Interrupt 0x0009 (9)
SMI Port 0x000000B2 (178)
ACPI Enable 0xA0 (160)
ACPI Disable 0xA1 (161)
S4 Request 0x00 (0) - Not supported
PSTATE_CNT 0x00 (0)
PM1a_EVT_BLK 0x00001800 (6144)
PM1b_EVT_BLK 0x00000000 (0) - Not supported
PM1a_CNT_BLK 0x00001804 (6148)
PM1b_CNT_BLK 0x00000000 (0) - Not supported
PM2_CNT_BLK 0x00001850 (6224)
PM_TMR_BLK 0x00001808 (6152)
GPE0_BLK 0x00001880 (6272)
GPE1_BLK 0x00000000 (0) - Not supported
PM1_EVT_LEN 0x04 (4)
PM1_CNT_LEN 0x02 (2)
PM2_CNT_LEN 0x01 (1)
PM_TMR_LEN 0x04 (4)
GPE0_BLK_LEN 0x20 (32)
GPE1_BLK_LEN 0x00 (0)
GPE1_BASE 0x10 (16)
CST_CNT 0x00 (0)
P_LVL2_LAT 0x0065 (101) - C2 state not supported
P_LVL3_LAT 0x0039 (57)
FLUSH_SIZE 0x0400 (1024)
FLUSH_STRIDE 0x0010 (16)
DUTY_OFFSET 0x00 (0)
DUTY_WIDTH 0x00 (0) - Duty cycle not supported
DAY_ALRM 0x0D (13)
MON_ALRM 0x00 (0) - Month alarm not supported
CENTURY 0x32 (50)
IAPC_Boot_Arch 0x12 0x00
Reserved 0x00 (0)
Flags 0x0003C4A5
WBINVD 1 - WBINVD instruction fully supported
WBINVD_Flush 0 - WBINVD instruction not for sleep states (Don't care if WBINVD=1)
PROC_C1 1 - C1 power state: all processors
P_LVL2_UP 0 - C2 power state: UP system only
PWR_BUTTON 0 - Power button supported as fixed feature
SLP_BUTTON 1 - Sleep button not support or handled by ASL code
FIX_RTC 0 - Fixed register support RTC wake
RTC_S4 1 - RTC wakeup support: S1, S2, S3, S4
TMR_VAL_EXT 0 - 24bit PM Timer
DCK_CAP 0 - Docking not supported
RESET_REG_SUP 1 - Reset Register supported
SEALED_CASE 0 - System is not sealed
HEADLESS 0 - Not headless mode
CPU_SW_SLP 0 - Normal method to write SLP_TYPx
PCI_EXP_WAK 1 - PM1 block support PCIE wakeup status/enable bits
USE_PLATFORM_CLOCK 1 - OSPM use HPET (if exist) or ACPI PM Timer
S4_RTC_STS_VALID 1 - RTC_STS flag is valid when resume from S4
REMOTE_POWER_ON_CAPABLE 1 - System compatible with remote power on
FORCE_APIC_CLUSTER_MODEL 0 - Cluster destination model not required
FORCE_APIC_PHYSICAL_DESTINATION_MODE 0 - Physical destination mode not required
RESET_REG IO: 0xCF9, BitWidth: 0x8 (8), BitOffset: 0x00 (0), AccessSize: Undefined
RESET_VALUE 0x06 (6)
Reserved 0x00 0x00 0x01
X_FIRMWARE_CTRL 0x0000000000000000
X_DSDT 0x00000000BA3FA1E8
X_PM1a_EVT_BLK IO: 0x1800, BitWidth: 0x20 (32), BitOffset: 0x00 (0), AccessSize: Word
X_PM1b_EVT_BLK IO: 0x0, BitWidth: 0x0 (0), BitOffset: 0x00 (0), AccessSize: Word
X_PM1a_CNT_BLK IO: 0x1804, BitWidth: 0x10 (16), BitOffset: 0x00 (0), AccessSize: Word
X_PM1b_CNT_BLK IO: 0x0, BitWidth: 0x0 (0), BitOffset: 0x00 (0), AccessSize: Word
X_PM2_CNT_BLK IO: 0x1850, BitWidth: 0x8 (8), BitOffset: 0x00 (0), AccessSize: Byte
X_PM_TMR_BLK IO: 0x1808, BitWidth: 0x20 (32), BitOffset: 0x00 (0), AccessSize: Dword
X_GPE0_BLK IO: 0x1880, BitWidth: 0x80 (128), BitOffset: 0x00 (0), AccessSize: Byte
X_GPE1_BLK IO: 0x0, BitWidth: 0x0 (0), BitOffset: 0x00 (0), AccessSize: Byte
SLEEP_CONTROL Memory: 0x0, BitWidth: 0x0 (0), BitOffset: 0x0 (0), AccessSize: Undefined
SLEEP_STATUS Memory: 0x0, BitWidth: 0x0 (0), BitOffset: 0x0 (0), AccessSize: Undefined
#69 Mov AX, 0xDEAD forced do not use pm_timer, now moorhuhn works ):

WinXP SP(?) auto uses pm_timer instead RDTSC if found FACP table version 2 or higher (skylake has 6 version) USE_PLATFORM_CLOCK=1 in FACP Flags, switch /usepmtimer need to force using acpi timer if USE_PLATFORM_CLOCK=0
#70 diderius6 @ Mov AX, 0xDEAD,
oh, this is really nice.

How do you reach this?

Have a nice day
Dietmar
#71 Mov AX, 0xDEAD ...24bit timer is OK on previous chipsets, windows xp has logic to handle it, something wrong on new platform, maybe windows no receive event about handle carry...
#72 diderius6 Hi,
may be something is blocked now in DSDT table,
what ACPI from XP needs for the timer.
Some instructions from Acpi 2.0  XPSP3 understands also,
Dietmar
#73 diderius6 Hi,
the problem may be in
USE_PLATFORM_CLOCK 1 - OSPM use HPET (if exist) or ACPI PM Timer
This bit is set to 1 on the gigabyte board Bios.
In this case, XP is asked for the time of the HPET timer.
But no version of XP has a working HPET timer, crazy XP shows HPET in device manager, but does not have,
only Vista and higher, even the board has a HPET timer.
So, may be to set this value back to 0 can solve the problem.
I do not know, where the flags from FACP are stored in Bios,
but give it a try to change this single bit from 1 to 0,
Dietmar

USE_PLATFORM_CLOCK 0 - OSPM may use HPET, ACPI PM Timer or internal Timer

USE_PLATFORM_CLOCK 1 - OSPM use HPET or ACPI PM Timer
#74 diderius6 Yessaa, I got it!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

after crazy search in Bios from Giga board I succeed to change ONE bit
in FACP from

USE_PLATFORM_CLOCK 1 - OSPM use HPET or ACPI PM Timer
to
USE_PLATFORM_CLOCK 0 - OSPM may use HPET, ACPI PM Timer or internal Timer
as you can see with rw-everything.

Now ALL works in ACPI, fun can start for other Bios too

Dietmar



diderius6 has attached images to this post  ⇗ yessaaaa.jpg
#75 diderius6 How I make this:
With Uefi tool search in Bios file GUID
16D0A23E-C09C-407D-A14A-AD058FDD0CA1
PE32 image section

extract body

search for the flags from rw-everything Acpi FACP in reverse order
Flags 0x0003C4A5
->search A5C40300 with Hexeditor

change
A5C40300 against
A5440300 with hexeditor
save and rebuild

PE32 image section with Uefitool replace body

and flash Bios.

I found this Byte change, during disassemble FACP.aml

change 1 to 0 in FACP.dsl via

  Use Platform Timer (V4) : 1
->Use Platform Timer (V4) : 0

compile with Iasl to FACPmod.aml
and compare with     FACP.aml

Only look with Hexeditor Winhex, what happens to A5C40300, it changes to A5440300.

 

Page 6

#76 Mov AX, 0xDEAD i was right, HAL doesnt receive call from acpi.sys about carry handle
acpi.sys register ISR/DPC handler for hardware interrupt, check that interrupt was caused carry situation and call hal.dll to increase high 8 bit counter every 4 sec. this works well on virtual winxp (under qemu), but not on real hardware.
i want to dig deeper and currently build uart<->rs232 converter to normal kernel windbg debugging instead slow and ugly "intel system debugger"
#77 diderius6 ⇗ @Mov AX, 0xDEAD
do you think, that in the DSDT table the question
If ((OSYS >= 0x07D6))
blocks any important information for XP?
I understand, that for example XP does not understand for example CreateQWordField, but in ACPI 1.b this can be simulated with CreateDWordField.
And in machine language it becomes equal
Dietmar
#78 Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #77
@Mov AX, 0xDEAD
do you think, that in the DSDT table the question
If ((OSYS >= 0x07D6))
blocks any important information for XP?


I can run winxp with original DSDT table, it still has bug with timer and Plug-n-Play/Resourse Management subsystem works different.
WinXP for main acpi device *PNP0C08* assign only one irq #15
Win7 assign large list #81-#190 (110 irqs !) to same device
#79 diderius6 In the Bios mod for the Asus z370 Apex X for XP
I found FACP with hex values for flags
A5 02 03 00. Also A5 02 03 00 for all other Bios vers. for this board.
This means, there the platformtimer is always reset zu 0
Dietmar

EDIT: On the Bios F1 for the giga m110 board where XP works as you told me,
the platformtimer is 1,
as you can see via
A5 86 03 00. The same in Bios ver. F25.
When the second, here 86 is >= 80,
the platformtimer is set to 1
and if <80 platformtimer is set to 0.

When I flash the Bios F1 to my giga board, compi does not boot at all,
may be because of newer rev number of the board.

EDIT: In all Bios version for Asus H110M Plus the same flags from FACP are used as for the giga board:
A5 86 03 00, means platformtimer is set to 1 there too.

EDIT2: In all Bios version for Asus Z170-K the same flags from FACP are used as for the giga board:
A5 86 03 00, means platformtimer is set to 1 there also.

EDIT3: In Bios ver. 1.0 from asrock fatal1ty z370 gaming k6
FACP flags are A5 C4 03 00, means platformtimer is set to 1.
In newest Bios vers. 3.2 for this board
FACP flags are A5 40 03 00, means platformtimer is reset to 0.

EDIT4: Interesting, if there is a working XP SP3 with Acpi in whole world:)),
          where the PM_timer works, where in FACP the flag platformtimer is set to 1.
#80 diderius6 Hi,
does anybody here know,
where the DSDT table in Bios for
Asus Z97-K stays?
I cant found,
it seems not to be a *.raw file
Dietmar

EDIT: I found myself:
Go to AmiBoardInfo in Bios file with Uefitool, then Compressed section, then PE32 image section,
extract body.
Then with Winhex editor look for DSDT (ALASKA) entry.
This is beginning of Hexblock.
The end of Hexblock is at FFFF (end after PINI).
This block you copy to DSDT.dat and disassamble it with
iasl -d DSDT.dat to DSDT.dsl .
#81 diderius6 From the critical Acpi2.0 test words I found in DSDT for Asus Z97-K

ConcatenateResTemplate (NOT in z97)
CreateQWordField (NOT in z97 for 32 bit XP)
ToBuffer (NOT in z97)
ToDecimalString (NOT in z97)
ToHexString (in Method (_WAK) 2 times there in ADBG)
ToInteger (only in Method(_DSM), Method(_SDD), Method(STRT) (Timer TPMR??), Method(CRYF) )
ToString (NOT in z97)
CopyObject (NOT in z97)
#82 diderius6 On the giga board I enabled
ToInteger in Method(STRT) for XP, because this works also on the Asus z97-k board.
Interesting, no BSOD 0xA5 happens!
And I set in FACP again the platformtimer to 1.
But the PM_timer does not work at all,
Dietmar

PS: May be, XP does not give BSOD 0xA5 with the critical word from ACPI2.0 ToInteger.
#83 Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #82
On the giga board I enabled
ToInteger in Method(STRT) for XP, because this works also on the Asus z97-k board.
Interesting, no BSOD 0xA5 happens!


because winxp doesnt parse this method (this method not used in _ini, _crs and other parsed methods)
#84 diderius6 ⇗ @Mov AX, 0xDEAD,
can you please write a list, which method winxp parse?

I search a lot, but I can not find any information about that,
Dietmar
#85 Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #84
@Mov AX, 0xDEAD,
can you please write a list,which method winxp parse?
i know only about keywords, some are methods, other are names of devices/reserved names/etc
¶ Windows XP SP3 32bit and modern PC parts (2)
#86 diderius6 Ok, when I delete in DSDT from the giga board

Method (RDCA, 5, Serialized)
If ((OSYS >= 0x07D6)) before
Switch (ToInteger (Arg4))

XP starts normal.

But when I delete all
If ((OSYS >= 0x07D6)) before
any ToInteger
( in Method (_CRS, 0, Serialized)  
            If ((OSYS >= 0x07D6))  stays before
             Switch (ToInteger (SDS7))

I got BSOD.

This I do not understand, because nothing from all on the list
for keywords

Dietmar
#87 diderius6 The BSOD came from
Method (ARPC, 4, Serialized)

ARPC is not listed in the keywords,
Dietmar
#88 diderius6 On the giga board from Acpi 2.0 can be ignored for XP SP3
      
      Method (STRD, 3, Serialized)
      Method (THDH, 1, Serialized)
      Method (THDD, 1, Serialized)
      Method (ADDB, 3, Serialized)
      Method (TP7D, 6, Serialized)
      Method (_DDN, 0, NotSerialized)  (???)
      Method (RDCA, 5, Serialized)
      Method (VMMH, 2, Serialized)
      Method (TBTD, 1, Serialized)
      Method (TBTF, 1, Serialized)
      Method (GUAM, 1, Serialized)
      Method (NTFY, 1, Serialized)
      Method (WIST, 0, Serialized)
      Method (WGST, 0, Serialized)
      Method (IICB, 2, Serialized)
      Method (STRT, 3, Serialized)
      Method (GRID, 1, Serialized)
      Method (CDEP, 1, Serialized)
      Method (CDEG, 1, Serialized)
      Method (CRYF, 3, Serialized)
      Method (TPTS, 1, Serialized)

These are all methods, where no need for
     
 If ((OSYS >= 0x07D6))


Dietmar

EDIT: Only 23 times

        If ((OSYS >= 0x07D6))
        
        has to be extra inserted in DSDT table for the giga board for to start XP SP3.

           

EDIT2: Strange is for me, that _CRS and _DDN can also be ignored sometimes.
           May be it is, because a condition before ACPI 2.0 reserved word is not fullfilled.

           Or the device int3472 does not exist on this motherboard.
#89 diderius6 Gives BSOD
on the giga board Acpi 2.0 for ToInteger for XP SP3

Method (HCID, 1, Serialized)
#90 Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #87
The BSOD came from
Method (ARPC, 4, Serialized)
ARPC is not listed in the keywords,


you need check where this method called, and this will be _INI
Zitat von ⇗ diderius6 im Beitrag ¶ #89
Gives BSOD
on the giga board Acpi 2.0 for ToInteger for XP SP3
Method (HCID, 1, Serialized)


called from _CID & _HID

 

Page 7

#91 diderius6 Hi,
interesting question, if it is possible to translate
for example ToInteger (in one block) into
language from Acpi 1.b, using only its vocabulary
Dietmar
#92 diderius6 Ok,
lets start fun for Bios modding to have XP Acpi support for the
Asrock fatal1ty z370 gaming k6 board.
I am not good in Bios modding,
but much better than a week ago:))!
#93 diderius6 First I make a list of all the methods,
where the reserved word from ACPI 2.0
ToInteger
stays in DSDT table of Asrock fatal1ty z370 gaming k6 board
Bios vers. Z37GK63.20 (newest, with support for 9900k).
The 9900k runs under XP SP3 on this board, I have tested.

This list is very similar to the giga board:

   Method (RDCA, 5, Serialized)
Method (ARPC, 4, Serialized)  patch need
   Method (VMMH, 2, Serialized)
Method (_CRS, 0, Serialized)   patch need
   Method (TBTD, 1, Serialized)
   Method (TBTF, 1, Serialized)
   Method (GUAM, 1, Serialized)
   Method (NTFY, 1, Serialized)
   Method (TBON, 0, Serialized)  is new
   Method (WIST, 0, Serialized)
   Method (WGST, 0, Serialized)
   Method (IICB, 2, Serialized)
   Method (GRID, 1, Serialized)
 Method (HCID, 1, Serialized) patch need
   Method (CDEP, 1, Serialized)
   Method (CDEG, 1, Serialized)
   Method (HIDW, 4, Serialized) is new
   Method (ECRD, 1, Serialized) is new
   Method (ECWT, 2, Serialized) is new
   Method (STRT, 3, Serialized)
   Method (CRYF, 3, Serialized)
   Method (TPTS, 1, Serialized)

I think, patch can be done
Dietmar
#94 diderius6 Methods for the other 7 reserved words from Acpi 2.0 are

Method (STRD, 3, Serialized)
Method (THDH, 1, Serialized)
Method (THDD, 1, Serialized)
Method (_INI, 0, NotSerialized)  patch need
Method (VMMH, 2, Serialized)
Method (ADDB, 3, Serialized)
Method (TP7D, 6, Serialized)
Method (_DDN, 0, NotSerialized) patch need (?)

I double checked both lists,
thats all:))!
#95 diderius6 Bios to have full XP Acpi support for the
Asrock fatal1ty z370 gaming k6 board
is ready.
But now I am too tired for to test,
wait for tomorrow
Dietmar
#96 infuscomus can this ACPI mod work for AMD boards too?
#97 Mov AX, 0xDEAD
Zitat von ⇗ infuscomus im Beitrag ¶ #96
can this ACPI mod work for AMD boards too?

sure
#98 diderius6 Hi all,
I can not update my Bios on
asrock fatal1ty z370 gaming k6.
When I try to flash Bios direct on
Bios ship with CH341A,
program told me: OTG secured..brrr
When I try to flash it via Instant Flash
I was told:
"You select a ROM image with the same version of current BIOS.
Please select a newer version of ROM image to flash BIOS."
Grrr^^, I think I am the master of compi and not vice versa
Dietmar

PS: Any idea?

The Bios Chip on the Asrock board is MX25L12873F. I have some empty chips of this type here.

EDIT: I flash the compi back to Bios vers. 3.1.
Then again I try with my modded vers. Bios 3.2.
Hm, now compi tells, secure check of Bios fails..
#99 Lost_N_BIOS ⇗ @diderius6  - Use CH341A.  You mentioned CH341A programmer, do you not have one now?  If you have, put BIOS rom in CH341A, erase, then blank check, then write/verify

If you do not have CH341A, you can use this method - ⇗ [GUIDE] Grub Fix Intel FPT Error 368 - BIOS Lock Asus/Other Mod BIOS Flash
#100 diderius6 I have CH341A. It shows OTG secured.
I even can not READ the Bios and this is my biggest problem, becaus if something went wrong I do not have a valid copy of Bios.
When I use FPTw.exe I get
Error 367: [FPTw.exe] cannot be run on the current platform.
Please contact your vendor.

I have XP SP3 32 bit,
Dietmar
#101 Lost_N_BIOS Ohh, this BIOS is soldered on and not removable like old Asrock, sorry I missed that until now!  Do you have SOIC8 test clip cable?  If yes, use that instead of SPI Cables

For FPT you need to use a specific version for V11 ME FW, here is that package - ⇗ https://mega.nz/#!GRFHjQyY!OyVZDCdMQmWku...aSvA2vsQd51wxDI
Use FPT from inside Flash Programming Tool/Win32 folder, put your modbios into that folder and then from that WIN32 folder run your command prompt (Select that folder, hold shift and press right click, then select run command prompt here)

And to flash, following my guide, you will need these variables to unlock in GRUB >> (Never mind, checked and BIOS Lock is disabled by default, SMI Lock not present)  
Flash away, but make backup first as mentioned in the guide!  Use these commands to make there backups (one contains LAN MAC ID, other system details, then ME)
FPTw.exe -gbe -d gbe.bin
FPTw.exe -bios -d biosreg.bin
FPTw.exe -me -d me.bin

Then you can flash, using this command
FPTw.exe -bios -f modbiosfilenamehere.bin
#102 diderius6 ⇗ @Lost_N_BIOS

I did all, that you tell.
Still
Error 367: [FPTw.exe] cannot be run on the current platform.
Please contact your vendor.

Can this version of FPTw.exe work on XP SP3?
Dietmar
#103 diderius6 I have Hexeditor WinHex and I can work with it.
In one of the tutorials is written,
that the Byte for the security check is at the very beginning.
This are my first 1024 (dec) bytes of my modded Bios file
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5AA5F00F030004000802105A30033100FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5009C24
214260ADB7B9C4C7FFFFFFFF000000000002FF0F0300FF0101000200FF7F0000FF7F0000FF7F0000FF7F0000FF7F0000FF7F0000
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000FA000000D400000098000000000000001011000000000FFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00009000
00010000000000000000000000000000000001000001000000000000000000000000000000000300000100000000000000000000
00000000000001000001000000000000000000000000000000000100000100000000000000000000000000000000010000010000
0000000000000000000000000000010002000000700000010302000064000000000000002A3F0000030000000C00000030000000
0000000000000000440000000F5F000000005400000000000E00000000000000441F0000C117540000000000000000000F5F0000
91F00AFFF7FCFCFC0000000000000000000000000008000000000000001800000000000000000000000000000018000000000000
4700000080030000000000003B0090008000000012000010000064020000000000F4610919000000795555551F0100000307010A
0002000009000F020000FF000F0000C86586000000000000040F000000004000F43294000018000000000000FFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00100000128011A095020000
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
#104 Lost_N_BIOS Try the DOS version in that package instead of the win32 file, that will eliminate any possible XP issue (it may not be compatible with XP, I am not sure, so DOS version will fix that/
Here is DOS bootable guide I wrote for someone else for another issue, copy into USB again all files from "USB Boot" folder after you run the HP tool - ⇗ <Request> Flagship X470 Gaming 7 Wifi Motherboard BIOS Fix
Put DOS FPT and BIOS on root of USB too, then boot to dos and run those same commands except using FPT.exe instead of FPTw.exe

The guides do not apply to your BIOS, Asrock changed their protections, here is discussion about that and test fix on post #22
But you have to use FPT, so that needs to be solved first, which I think you are right XP maybe the issue there.  For now, lets stick to what I mentioned, and try to get this done in DOS w/ FPT, or setup a quick Win7-Win10 system disk and install Intel ME drivers, then you can use Win32 FPT
⇗ [PROBLEM]  Flashing a modded ASRock Z370 MB BIOS (2)
#105 diderius6 ⇗ @Lost_N_BIOS
Just now I am setting up a win7 32bit OS
on the asrock fatal1ty z370 gaming k6 board.
First of all I want to make a full, valid copy of its now original Bios 3.1 version
Dietmar

 

Page 8

#106 Lost_N_BIOS That will work, if you can't get DOS going.  I gave two command to make backup for you in first FPT commands given, this backs up BIOS region and GBE, so you will have copies of LAN MAC ID and rest of system details usually in padding region within the BIOS region.  
Rest you cannot backup easily, and do not need to (FD and ME), well maybe you can also backup ME if settings allow >> FPTw.exe -me -d me.bin
I will edit that into previous post too, so all three backup commands are there in one place for you.
#107 diderius6 ⇗ @Lost_N_BIOS

Waaoh, all your steps in

"For FPT you need to use a specific version for V11 ME FW, here is that package - ⇗ https://mega.nz/#!GRFHjQyY!OyVZDCdMQmWku...aSvA2vsQd51wxDI
Use FPT from inside Flash Programming Tool/Win32 folder, put your modbios into that folder and then from that WIN32 folder run your command prompt (Select that folder, hold shift and press right click, then select run command prompt here)

And to flash, following my guide, you will need these variables to unlock in GRUB >> (Never mind, checked and BIOS Lock is disabled by default, SMI Lock not present)
Flash away, but make backup first as mentioned in the guide! Use these commands to make there backups (one contains LAN MAC ID, other system details, then ME)
FPTw.exe -gbe -d gbe.bin
FPTw.exe -bios -d biosreg.bin
FPTw.exe -me -d me.bin

Then you can flash, using this command
FPTw.exe -bios -f modbiosfilenamehere.bin  "

work at once:))!

Bios is now flashed on asrock fatal1ty z370 gaming k6 to my modded XP acpi friendly version!

With win7 I can test this, using RW-everything,
that indeed I have now vers. 3.2 and my modded DSDT table.
Win7 starts with the modded Bios,
but install of XP gives BSOD 0xA5 because of missing
Acpi compatibilty.
Some more handwork for this Bios mod is needed,
but this is normal^^,
Dietmar
#108 diderius6 Still get BSOD 0xA5 not Acpi compatibel during install of XP.
XP without ACPI starts with this modded Bios.
I load the DSDT table here up,
one before mod           DSDT
and one after mod       DSDT2
I did all as for the giga board,
so at the moment I am out of ideas.
May be, that one of the methods here call also _ini
for example, different to the giga board
Dietmar
#109 Lost_N_BIOS

Great you got it flashed finally!  Sorry I can't help with rest of the issues you guys are way above my skill-set with this XP work you're doing!  
Keep those (BIOSreg and GbE) backups safe, in case you find later you need to correct/put back in your UUID, serial, or LAN MAC ID
#110 diderius6 Exact BSOD is
0x000000A5 (0x00000011, 0x00000008, 0xF6D23200, 0x20181031)
Dietmar
#111 diderius6 Hi,
does somebody know,
how many cpu s are supported from XP SP3 professional?
8 cores for sure, but 16 cores too?
Dietmar
#112 Lost_N_BIOS Luckily this is the correct thread to fix that A5 error
#113 XPLives ⇗ @diderius6

I am pretty certain it can support as many cores as possible as long as it resides in 1 CPU chip.

So if in the future Intel releases a 128 Core / 256 Thread CPU called the i128-128000K CPU socket LGA 2048 it will work with XP.

Only limit for XP Pro is Dual CPUs.  But I haven't seen any consumer Dual socket CPU motherboards sold that could take advantage of it except workstation.

16 Cores would work for sure if it existed in Cannon Lake.  Even some older X79 MB had CPUs with more cores running XP.
I think the only issue if ACPI is related to the HyperThreading you are experiencing and as a result you won't have the fake Logical Cores show only the Real Physical ones on the i9-9900K.

If a 16 Core / 32 Thread CPU was released today for Coffee Lake you will see the 16 Cores for sure in XP.  The only problem would be no applications for XP are written specifically for using that many cores but the OS can still shift some of the processes to each core manually with Affinity so maybe a special program to shift processes to each individual core starting from last core sequence.  I've seen the 6 Cores working but the first 2 cores usually has more CPU Usage then the rest.  Only way to force all cores to 100% is to use Prime95.  So if the Threads are not showing then it is probably an ACPI related issue.  Maybe ask the motherboard manufacturer instead to do ACPI v1.0 selectable option in BIOS would be easier.
#114 diderius6 ⇗ @XPLives
Thank you very much for answer.
My problem with the Asrock board is now,
that I can not flash one Bios version after the other without any risk,
as on the nice gigabyte board,
because when at one time the board from Asrock says nothing,
because of bricked Bios,
I have a big problem,
because I cant flash the Bios chip direct back via
CH341A, even the flasher supports the Bios chip MX25L12873F from the Asrock board,
Dietmar
#115 Lost_N_BIOS ⇗ @diderius6 - Chip can be flashed with CH341A, you only need SOIC8 test clip cable Or to flash in a modified BIOS that does not have the lock you mentioned.  
Please explain that message in exact detail, and I will find in BIOS and see if I can disable that for you or give you command to use in grub to unlock it without a BIOS mod.  
If I can, you'll only need to be sure to make same edit each time on your future BIOS flashes, so it remains unlocked or change after each future BIOS update via grub if that way works.  
I'm betting we can fix this, so you don't need to purchase SOIC8 test clip cable, but I'd order one now anyway so you have for future use with your CH341A
#116 diderius6 The message stand on top of the side from flasher:

Secured OTP[img][/img]

And even the yellow LED is blinking you even can not read from the chip
Dietmar

⇗ http://www.macronix.com/Lists/Applicatio...ntroduction.pdf
#117 Lost_N_BIOS ⇗ @diderius6 - Do you have SPI/I2C/TTL mode jumper placed on your programmer, instead of direct programmer (Default position)  Secured OTP area can only be written to once, you do not need to read or write to that area anyway.  Select the other tab (Main memory) and dump or program BIOS.
If it fails to let you that way, then edit options to show only main memory only >> Operate >> Operate Option >> 25\26 Chips >> Programming Range (select Main Memory Only)
#118 diderius6 ⇗ @Lost_N_BIOS
Thank you, I try.

I have another good news:
I noticed, that on the Asrock board
the DSDT table from Bios vers. 3.1
and DSDT table from Bios vers 3.2 are 100% identic.
So I can make all valuable tests with vers. 3.1 and in case of
emergeny flash back the original Bios vers. 3.2 as long as I can
start compi
Dietmar
#119 Lost_N_BIOS I'm sure it will work for you now, the programmer I mean.   As for your BIOS table info, that is good find for you too, makes things easier
#120 diderius6 Hi,
for to make things easier for full Acpi support under XP,
I patch the calling function and
not the called function.

Example from the giga board Bios:
calling function  _INI
called function ARPC:

Method (_INI, 0, NotSerialized) // _INI: Initialize
{
...
ARPC (NRPN, RefOf (PWRG), RefOf (RSTG), RefOf (SCLK))
...
}


to
           
               Method (_INI, 0, NotSerialized)  // _INI: Initialize
{
...

If ((OSYS >= 0x07D6))
{
ARPC (NRPN, RefOf (PWRG), RefOf (RSTG), RefOf (SCLK))
}
...
}


Dietmar

 

Page 9

#121 diderius6 I still get BSOD 0xA5, no compatible ACPI, on my asrock fatal1ty z370 gaming k6 board.
May be, there are also other reasons, why this BSOD can happen,
even when no reserved word from Acpi 2.0 is offered to XP SP3.

I load here the original DSDT file and the modified DSDT2 file up,
may be, someone has a look on it
Dietmar
#122 XPLives ⇗ @diderius6
Are you doing a fresh XP OS install each time you test or using the old previous install?
If not then try a clean install.  The ACPI seems finicky about tampering with any settings or using an old install after modding the BIOS.

What stage of install does the A5 error occur?
During DOS stage, GUI stage, or 1st Windows Desktop OOBE stage?
#123 diderius6 ⇗ @XPLives,
yes, I always make a brandnew install of XP SP3.
And the BSOD 0xA5 appears always at the same place,
always the same message.
This "always the same message" makes me think,
that is something different than the reserved Acpi orders from Acpi 2.0.

Today I try to patch also the device IOTR, it is in the DSDT list
because ⇗ @Mov AX, 0xDEAD told about bug for XP in this device.

But I do not understand how to patch this, with

"I've patched this device to return empty list of resources Local0 = ResourceTemplate () { } return(Local0) and problem is gone"

Dietmar
#124 diderius6 ⇗ @XPLives

Interesting idea to see, what other versions of windows,
Vista and win7 say to this Bios, before and after mod.
win7 has no problem, but tells in device manager,
that the ME cant be installed (teedriver.sys driver).
I think in win7 is also a list, where you can see, what happens during boot.
Via this way I think came Mov AX, 0xDEAD to the idea,
that something is wrong with device IOTR, not only in XP.

Vista I have not tested.
I try to disable device IOTR.
Something like this will give happyness:)),
meaning full Acpi support for XP on any mainboard
Dietmar

PS: The BSOD 0xA5 not compatible Bios happens always on first text mode install,
after the driver for ntfs is loaded.

EDIT: The problem with IOTR (PNP0C02) can also make the problem with the clock on XP!
#125 XPLives ⇗ @diderius6

Okay you are confirming Text Stage 1 or 2?  It sounds like Text Stage 1 after Reboot?


Text Stage 1: Okay so A5 happens after it copies a few files quickly, Reboots, A5 Error?

Or

Text Stage 2:Copies a few files, Reboots,
Copies hundreds of files could take minutes, Reboots
then A5 Error?


Okay that is helpful.  Then if it cannot be done in BIOS maybe make ACPI driver modified files to ignore it?

Did F7 method install successfully for XP?

Testing Z87 this weekend to see if ACPI is XP compatible.
#126 diderius6 The BSOD happens before first reboot.
I can install everything from XP, using USB stick or CD  without Acpi, hit F5 and chose MPS multiprocessor
Dietmar
#127 diderius6 Next try,
but still
BSOD x0A5 on XP SP3 on Asrock fatal1ty z370 gaming k6 with 9900k cpu
Dietmar
#128 diderius6 I change the 9900k cpu on the asrock fatal1ty z370 gaming k6 against
Celeron G4900 with only 2 cores.
Same BSOD 0xA5
Dietmar
#129 diderius6 ⇗ @XPLives

"CPU Core Ratio from Auto to Manual setting of 8 for 800 MHz
Then Change CPU Cores from Auto to 1 for Single Core"
I did, but still BSOD 0xA5,
brrr..
Dietmar

PS: Tomorrow I set up a Windbg connection for Acpi debug with the debug checked build files for XP.
     I never did this before, but because I think I do everything correct, exakt like on the giga board,
     something other is disturbing XP doing full Acpi.
#130 diderius6 I just make a checke, if for example has influence on the build raw file from DSDT.
External (_SB_.PCI0.GFX0.IUEH, MethodObj)    // 1 Arguments    // From external reference file
As long as there is no warning from the compiler, all External are automatically linked.
I tested the builded binaries, one time with // From external reference file
and one time without.
They are to 100% identic.

So, no room is left for having done a mistake on the asrock board during patch of Acpi 2.0 reserved words,
something other is going on,
Dietmar
#131 diderius6 From Microsoft about BSOD 0xA5 (0x00000011,..)
(0x000000011, Parameter2, Parameter3, Parameter4):

The system cannot enter ACPI mode. There are many reasons for this, including:

The system cannot initialize the AML interpreter.
The system cannot find the Root System Description table.
The system cannot allocate a critical driver.
The system cannot load the Root System Description table.
The system cannot load device descriptor blocks.
The system cannot connect an interrupt vector.
The SCI_EN (system control interrupt enable request) cannot be set (see 0x00000001).
The ACPI Table checksum is incorrect.

ACPI is a hierarchical arrangement of tables, each one building upon the next to define the complete capabilities of the system and of every device in the system. ACPI starts by looking for the Root System Description table, which points to the next table, which points to the next table, and so on. Usually, the 0x000000011 error occurs because these tables are damaged or missing.
#132 diderius6 Hi,
I can not install the checked version of acpi.sys for XP SP3 on the giga board,
it crashes.
This is really funny, the cat bites in its tail:)),
how can then Acpi debug for XP SP3 been made possible?
Dietmar
#133 diderius6 With the original free acpi.sys in Windbg with
0: kd> !amli lc
*Ctxt=ffffffff89c28000, ThID=ffffffff89c42a98, Flgs=A--C-----, pbOp=ffffffff89b91088, Obj=\_SB.PCI0._INI
AMLI_DBGERR: SIG_CTXT does not match (89c28008)

Any idea, how and what can be seen this way?

Dietmar
#134 XPLives ⇗ @diderius6

Full extraction of binaries for ACPI from Z77 XP SP3 Compatible

Maybe some changes can be applied to Z370?
OSI` ._OSI.
Windows 2001.p.Ñ.OSYS ._OSI.
Windows 2001 SP1.p.Ñ.OSYS ._OSI.
Windows 2001 SP2.p.Ò.OSYS ._OSI.
Windows 2001.1.p.Ó.OSYS ._OSI.
ACPI 2.0 supported - April 13, 2001

Windows 2006.p.Ö.OSYS ._OSI.
ACPI 3.0 supported - Revision 3.0b, October 10, 2006

Windows 2009
ACPI 4.0 supported - June 16, 2009

Maybe this indicates ACPI v4.0 supported so no problems dealing with XP SP3.

Download Z77 XP Compatible ACPI Binaries to examine:
⇗ [GUIDE] Windows XP ACPI BSOD A5 Error (2)

Later ACPI v5.0+ started ACPI compatibility issues.
Revision 5.0,  December 6, 2011
Revision 5.0a,  November 13, 2013
#135 diderius6 Yes, this is what ⇗ @Mov AX, 0xDEAD told. The reserved Acpi2.0 word "ToInteger" appears
only in the _DSM method.
So this is necessary for Acpi support for XP SP3,
but may be not enough
Dietmar

Edit: In most cases the reserved word "ToInteger"
can be deleted, because the variable is of type integer.

Example from Bios of Asus z170-k
                Switch (SDS7)
Case (One)

Same line Bios from gigabyte
                   
Switch (ToInteger (SDS7))
Case (One)

 

Page 10

#136 diderius6 I make a new check for reserved words from Acpi >1.b
these are about (>) 20 reserved words which make BSOD for XP,
when they are in a parsed method or its connected parts. Until now I found in Bios only first 9 ones:
TOINTEGER
ConcatenateResTemplate
CREATEQWORDFIELD
TOBUFFER
TOHEXSTRING
TOSTRING
TODECIMALSTRING
COPYOBJECT
QWORD



CONCATENATETEMPLATE
VARIABLEPACKAGE
EXTERNAL
MID
MOD
CONTINUE
LOADTABLE
TIMER
DATAREGION
FIELDCONNECTION
FIELDEXTACCESS

Method (_DSM ) can be always ignored for XP. Also those Method(), which are never called.
#137 diderius6 Hi,
on the Gigabyte board this nice hack in DSDT works:

Replace all

Switch (ToInteger (..))

with

Switch (..)

This means: On the giga board the
ONLY commands from Acpi2.0
have to be patched are:

CreateQWordField
ConcatenateResTemplate


PS: The iasl compiler cries, that he does not know, if this is an Integer, but continues setting it to Integer,
     without any error!
#138 diderius6 Here comes working DSDT table for XP SP3 32 bit, board gigabyte ga-h110m-s2h
with very small patches in DSDT2,
DSDT is original DSDT from F25 Bios.



diderius6 has attached files to this post
#139 diderius6 For the first time I get an other BSOD^^ 0xA5 on Biosmod for the Asrock fatal1ty z370 gaming k6 board.
I think, I am only one step away for to have full Acpi support for XP SP3 on this board
Dietmar
0x000000A5 (0x00000002, Parameter2, Parameter3, Parameter4):
This error is defined as ACPI root PCI resource failure. To discover what current resources are being used by PCI devices, ACPI must be able to query the CRS descriptor in the ACPI namespace. This error occurs if the BIOS lacks a pointer to the list, or if the list is empty, or if the list contains errors or conflicts.

SOLVED with new acpi.sys. Use the DSDt2 table from connected file for to have full Acpi XP SP3 on Asrock fatal1ty z370 gaming k6 board.



diderius6 has attached files to this post
#140 diderius6 ACPI_BIOS_ERROR                 (0xA5)

The ACPI Bios in the system is not fully compliant with the ACPI specification.
The first value indicates where the incompatibility lies:

PARAMETERS

   1 -
   VALUES:

     1 : ACPI_ROOT_RESOURCES_FAILURE.
         ACPI cannot find the SCI Interrupt vector in the resources handed
         to it when ACPI is started.

        2 - ACPI's deviceExtension
        3 - ACPI's ResourceList
        4 -
        VALUES:
            0 : No resource list found
            1 : No IRQ resource found in list
        END_VALUES

     2 : ACPI_ROOT_PCI_RESOURCE_FAILURE
         ACPI could not process the resource list for the PCI root buses

        2 - The ACPI Extension for the PCI bus.
        3 -
        VALUES:
           0 : ACPI cannot convert the BIOS' resource list into the proper
               format. This probably represents a flaw in the BIOS' list
               encoding procedure.
             4 - Pointer to the QUERY_RESOURCES irp
           1 : ACPI cannot convert the BIOS' resource list into the proper
               format. This probably represents a flaw in the BIOS' list
               encoding procedure.
             4 - Pointer to the QUERY_RESOURCE_REQUIREMENTS irp
           2 : ACPI found an empty resource list.
             4 - 0
           3 : ACPI could not find the current bus number in the CRS.
             4 - Pointer to the PNP CRS descriptor
           Other : Any other value is a pointer to the Resource List for PCI.
                   This indicates that there is an overlap between the list of
                   resources that PCI claims to decode and the list of memory
                   regions reported by the E820 BIOS interface.


             4 - Pointer to the E820 Memory Table
        
END_VALUES

      3 : ACPI_FAILED_MUST_SUCCEED_METHOD
          ACPI tried to run a control method while creating device extensions
          to represent the ACPI namespace, but this control method failed.

        2 - The ACPI Object that was being run
        3 - return value from the interpreter
        4 - Name of the control method (in ULONG format)

      4 : ACPI_PRW_PACKAGE_EXPECTED_INTEGER
          ACPI evaluated a _PRW and expected to find an integer as a
          package element.

        2 - The ACPI Extension for which the _PRW belongs to
        3 - Pointer to the method
        4 - The DataType returned (see amli.h)

      5 : ACPI_PRW_PACKAGE_TOO_SMALL
          ACPI evaluated a _PRW and the package that came back failed to
          contain at least 2 elements. The ACPI specification requires that
          two elements to always be present in a _PRW.

        2 - The ACPI Extension for which the _PRW belongs to
        3 - Pointer to the _PRW
        4 - Number of elements in the _PRW

      6 : ACPI_PRx_CANNOT_FIND_OBJECT
          ACPI tried to find a named object named, but could not find it.

        2 - The ACPI Extension for which the _PRx belongs to
        3 - Pointer to the _PRx
        4 - Pointer to the name of the object to look for

      7 : ACPI_EXPECTED_BUFFER
          ACPI evaluated a method and expected to receive a Buffer in return.
          However, the method returned some other data type

        2 - The ACPI Extension for which the method belongs to
        3 - Pointer to the method
        4 - The DataType returned (see amli.h)

      8 : ACPI_EXPECTED_INTEGER
          ACPI evaluated a method and expected to receive an Integer in return.
          However, the method returned some other data type

        2 - The ACPI Extension for which the method belongs to
        3 - Pointer to the method
        4 - The DataType returned (see amli.h)

      9 : ACPI_EXPECTED_PACKAGE
          ACPI evaluated a method and expected to receive a Package in return.
          However, the method returned some other data type

        2 - The ACPI Extension for which the method belongs to
        3 - Pointer to the method
        4 - The DataType returned (see amli.h)

      0xA : ACPI_EXPECTED_STRING
          ACPI evaluated a method and expected to receive a String in return.
          However, the method returned some other data type

        2 - The ACPI Extension for which the method belongs to
        3 - Pointer to the method
        4 - The DataType returned (see amli.h)

      0xB : ACPI_EJD_CANNOT_FIND_OBJECT
          ACPI cannot find the object referenced to by an _EJD string

        2 - The ACPI Extension for which which the _EJD belongs to
        3 - The status returned by the interpreter
        4 - Name of the object ACPI is trying to find

      0xC : ACPI_CLAIMS_BOGUS_DOCK_SUPPORT
          ACPI provides faulty/insufficient information for dock support

        2 - The ACPI Extension for which ACPI found a dock device
        3 - Pointer to the _EJD method
        4 -
        VALUES:
           0: Bios does not claim system is dockage
           1: Duplicate device extensions for dock device
        END_VALUES

      0xD : ACPI_REQUIRED_METHOD_NOT_PRESENT
          ACPI could not find a required method/object in the namespace
          This is the bugcheck that is used if a vendor does not have an
          _HID or _ADR present

        2 - The ACPI Extension that ACPI needs the object for
        3 - The (ULONG) name of the method ACPI looked for
        4 -
        VALUES:
           0: Base Case
           1: Conflict
        END_VALUES

      0xE : ACPI_POWER_NODE_REQUIRED_METHOD_NOT_PRESENT
          ACPI could not find a requird method/object in the namespace for
          a power resource (or entity other than a "device"). This is the
          bugcheck used if a vendor does not have an _ON, _OFF, or _STA present
          for a power resource

        2 - The NS PowerResource that ACPI needs the object for
        3 - The (ULONG) name of the method ACPI looked for
        4 -
        VALUES:
           0: Base Case
        END_VALUES

      0xF : ACPI_PNP_RESOURCE_LIST_BUFFER_TOO_SMALL
          ACPI could not parse the resource descriptor
        2 - The current buffer that ACPI was parsing
        3 - The buffer's tag
        4 - The specified length of the buffer

      0x10 : ACPI_CANNOT_MAP_SYSTEM_TO_DEVICE_STATES
           ACPI could not map determine the system to device state mapping
           correctly.
        2 - The ACPI Extension for which ACPI is trying to do the mapping
        3 -
        VALUES:
           0 : The _PRx mapped back to a non-supported S-state
             4 - The DEVICE_POWER_STATE (ie: x+1)
           1 : ACPI cannot find a D-state to associate with the S-state
             4 - The SYSTEM_POWER_STATE that is causing the problem
           2 : The device claims to be able to wake the system when the
               system is in this S-state, but the system doesn't actually
               support this S-state.
             4 - The SYSTEM_POWER_STATE that is causing the problem
        END_VALUES

      0x11 : ACPI_SYSTEM_CANNOT_START_ACPI
           The system could not enter ACPI mode

        2 -
        VALUES:
           0 : System could not initialize AML interpreter
           1 : System could not find RSDT
           2 : System could not allocate critical driver structures
           3 : System could not load RSDT
           4 : System could not load DDBs
           5 : System cannot connect Interrupt vector
           6 : SCI_EN never becomes set in PM1 Control Register
           7 : Table checksum is incorrect
             3 - Pointer to the table that had a bad checksum
             4 - Creator Revision
           8 : Failed to load DDB
             3 - Pointer to the table that ACPI failed to load
             4 - Creator Revision
           9 : Unsupported Firmware Version
             3 - FADT Version
           0xA : System could not find MADT
           0xB : System could not find any valid Local SAPIC structures in
                 the MADT
           0xC: The OS is not capable of supporting active docking on this platform
           0xD: Some of the specified system sleep states are not supported on this platform
        END_VALUES

      0x14 : ACPI_PNP_RESOURCE_LIST_LENGTH_TOO_LARGE
           ACPI could not parse the resource descriptor, the length exceeds
           MAXULONG.
        2 - The current buffer that ACPI was parsing
        3 - The buffer's tag
        4 - Pointer to a variable containing ULONGLONG length of the buffer

      0x15 : ACPI_TABLE_LOADTABLE
           ACPI had a fatal error when processing a LoadTable instruction
        2 - AML Context (!amli r Context)
        3 -
        VALUES:
           1 : Failed to load the table
           2 : Parameter Path String Object was not found
           3 : Failed to insert ParameterData into ParameterPathString
           4 : Out of System Memory
        END_VALUES
        4 - NT status code

      0x16 : ACPI_ILLEGAL_PARENT
           ACPI had a fatal error when processing an xSDT. An object was
           declared as a child of a parent that cannot have children.
        2 - Pointer to the parent NSOBJ
        3 - Pointer to the illegal child NSOBJ

      0x17 : ACPI_INVALID_GPE_INDEX
           ACPI had a fatal error when processing a GPE index. An invalid
           index was specified.
        2 - GPE Bit Index.

      0x1000 : ACPI_BIOS_USING_OS_MEMORY
           ACPI had a fatal error when processing a memory operation region.
           The memory operation region tried to map memory that has been
           allocated for OS usage.
        2 - The high portion of the physical address of the memory region.
        3 - The low portion of the physical address of the memory region.
        4 - The length of memory being mapped.

     0x2001 : ACPI_FAILED_PIC_METHOD
            ACPI tried to evaluate the PIC control method but failed

        2 - InterruptModel (Integer)
        3 - return value from interpreter
        4 - Pointer to the PIC control method

     0x10001 : ACPI_CANNOT_ROUTE_INTERRUPTS
             ACPI tried to do interrupt routing, but failed

        2 - Pointer to the device object
        3 - Pointer to the parent of the device object
        4 - Pointer to the PRT

     0x10002 : ACPI_PRT_CANNOT_FIND_LINK_NODE
             ACPI could not find the link node referenced in a _PRT
             (This code exists in Windows 2000, but is obsolete in XP)

        2 - Pointer to the device object
        3 - Pointer to the string name ACPI is looking for, but could not find.
        4 - Pointer to the PRT. Dump this with !acpikd.nsobj

     0x10003 : ACPI_PRT_CANNOT_FIND_DEVICE_ENTRY
             ACPI could not find a mapping in the _PRT package for a device
             (This code exists in Windows 2000, but is obsolete in XP)

        2 - Pointer to the device object
        3 - The Device ID / Function Number. This DWORD is encoded
            as follows: Bits 5:0 are the PCI Device Number, Bits 8:6 are
            the PCI function number.
        4 - Pointer to the PRT. Dump this with !acpikd.nsobj

     0x10005 : ACPI_PRT_HAS_INVALID_FUNCTION_NUMBERS
             ACPI found an entry in the _PRT for which the function ID isn't
             all F's.  The generic format for a _PRT entry is that the device
             number is specified, but the function number isn't.  If it isn't
             done this way, then the machine vendor can introduce dangerous
             ambiguities.
             (This code exists in Windows 2000, but is obsolete in XP)

        2 - Pointer to the PRT object. Dump this with !acpikd.nsobj
        3 - Pointer to the current PRT Element. This is an index into the PRT.
        4 - The DeviceID/FunctionID of the element. This DWORD is
            encoded. Bits 15:0 are the PCI Function Number.
            Bits 31:16 are the PCI Device Number.

     0x10006 : ACPI_LINK_NODE_CANNOT_BE_DISABLED
             ACPI found a link node, but cannot disable it. Link nodes must
             be disable to allow for reprogramming

        2 - Pointer to the link node. This device is missing the _DIS method.


     0x10007 :
             The _PRT contained a reference to a vector not described in the
             I/O APIC entries MAPIC table.
        2 - The vector that couldn't be found

     0x10008 :
             The ACPI SCI interrupt level is invalid.

     0x10009 :
             The FADT could not be located.

     0x1000a :
             The RSDT\XSDT could not be located.

     0x1000b :
             The ACPI table length was out of sync with the table revision
        2 - The ACPI table signature
        3 - pointer to the ACPI table

     0x1000c :
             _DSM method for interrupts returned malformed data.
        2 - Revision ID
        3 - Function Index

     0x1000d :
             A device used both GPE and GPIO interrupts, which is not supported.
        2 - The ACPI Extension for the device
        3 -
        VALUES:
           0 : _PRW specified with no wake-capable interrupts and at least one
               GPIO interrupt
           1 : Since there are wake-capable interrupts, _PRW should specify a
               GpeInfo value of 0xffffffff

     0x20000 :
             The PM_TMR_BLK entry in the Fixed ACPI Description Table doesn't
             point to a working ACPI timer block.
        2 - The I/O port in the Fixed Table

     END_VALUES

DESCRIPTION
This bug check covers a great variety of ACPI problems.  If a kernel debugger
is attached, use "!analyze -v".  This command will analyze the precise problem,
and display whatever information is most useful for debugging the specific
error.


If Parameter 1 equals 0x02, the ACPI BIOS could not process the resource list for the PCI root buses. In this case, Parameter 3 specifies the exact problem, and the remaining parameters have the following definitions.

Parameter 2                                           Parameter 3                                          Parameter 4                                      
 

The ACPI extension for the PCI bus                A pointer to the resource list for PCI            A pointer to the E820 memory table


Cause

The list of resources that PCI claims to decode overlaps with the list of memory regions that the E820 BIOS interface reports.
This kind of conflict is never permitted.
#141 YuriyCN Motheboard Gigabyte H110M-DS2 (socket 1151, DDR4)
BIOS
v1, v2, v3 - i installed WinXP SP3. There were no problems.
It was only necessary to install AHCI driver for SATA hard disc drive.

v20,v21...v25 - WinXP is not installed. Errors in ACPI.
#142 diderius6 ⇗ @YuriyCN
Just look at my DSDT2 table in gigaXP.rar .
I think, you can integrate it direct in your Bios v>=20
and BSOD for Acpi for XP SP3 is gone
Dietmar
#143 diderius6
Microsoft (R) Windows Debugger Version 6.12.0002.633 X86
Copyright (c) Microsoft Corporation. All rights reserved.

Opened \\.\com1
Waiting to reconnect...
Connected to Windows XP 2600 x86 compatible target at (Sun Dec 9 23:58:56.687 2018 (UTC + 1:00)), ptr64 FALSE
Kernel Debugger connection established.
WARNING: Inaccessible path: 'C:\WinDDK\7600.16385.1\src\openfabricsall\nvme13\nvme\objchk_wnet_x86\i386'
Symbol search path is: C:\WinDDK\7600.16385.1\src\openfabricsall\nvme13\nvme\objchk_wnet_x86\i386;SRV*c:\symbols
*⇗ http://msdl.microsoft.com/download/symbols
Executable search path is: C:\localsymbols
Windows XP Kernel Version 2600 MP (1 procs) Free x86 compatible
Built by: 2600.xpsp.080413-2111
Machine Name:
Kernel base = 0x804d7000 PsLoadedModuleList = 0x8055d720
System Uptime: not available
WARNING: Inaccessible path: 'C:\WinDDK\7600.16385.1\src\openfabricsall\nvme13\nvme\objchk_wnet_x86\i386'
Sun Dec 9 23:59:03.781 2018 (UTC + 1:00):
*** Fatal System Error: 0x000000a5
(0x00000002,0x89A839D0,0xE134F008,0x898ADCA8)

Sun Dec 9 23:59:03.796 2018 (UTC + 1:00): Break instruction exception - code 80000003 (first chance)

A fatal system error has occurred.
Debugger entered on first try; Bugcheck callbacks have not been invoked.

A fatal system error has occurred.

Connected to Windows XP 2600 x86 compatible target at (Sun Dec 9 23:59:03.984 2018 (UTC + 1:00)), ptr64 FALSE
Loading Kernel Symbols
.......................
Loading User Symbols

*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

Use !analyze -v to get detailed debugging information.

BugCheck A5, {2, 89a839d0, e134f008, 898adca8}

*** No owner thread found for resource 8055b4e0
*** No owner thread found for resource 8055b4e0
*** No owner thread found for resource 8055b4e0
*** No owner thread found for resource 8055b4e0
*** No owner thread found for resource 8055b4e0
Probably caused by : ACPI.sys ( ACPI!ACPIRangeValidatePciResources+129 )

Followup: MachineOwner
---------

nt!RtlpBreakWithStatusInstruction:
8052b5dc cc int 3
kd> !analyze -v
*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

ACPI_BIOS_ERROR (a5)
The ACPI Bios in the system is not fully compliant with the ACPI specification.
The first value indicates where the incompatibility lies:
This bug check covers a great variety of ACPI problems. If a kernel debugger
is attached, use "!analyze -v". This command will analyze the precise problem,
and display whatever information is most useful for debugging the specific
error.
Arguments:
Arg1: 00000002, ACPI_ROOT_PCI_RESOURCE_FAILURE
ACPI could not process the resource list for the PCI root buses
Arg2: 89a839d0, The ACPI Extension for the PCI bus.
Arg3: e134f008,
Arg4: 898adca8

Debugging Details:
------------------

*** No owner thread found for resource 8055b4e0
*** No owner thread found for resource 8055b4e0
*** No owner thread found for resource 8055b4e0
*** No owner thread found for resource 8055b4e0
*** No owner thread found for resource 8055b4e0

ACPI_EXTENSION: 89a839d0 -- (!acpikd.acpiext 89a839d0)

ACPI_RESCONFLICT: e134f008 -- (!acpiresconflict e134f008 898adca8)
Number of arguments found = 1. 2 arguments expected
Usage: acpiresconflict [DeviceExtension] [IoResList] [e820Info]


DEFAULT_BUCKET_ID: DRIVER_FAULT

BUGCHECK_STR: 0xA5

PROCESS_NAME: System

LOCK_ADDRESS: 8055b560 -- (!locks 8055b560)
The state of the ACPI locks is:
- Build Queue Lock is not owned
- Button Lock is not owned
- Device Tree Lock is not owned
- Fatal Lock is not owned
- Power Lock is not owned
- Get Lock is not owned
- Power Queue Lock is not owned
- Thermal Lock is not owned
- Update Flags Lock is not owned
- Worker Lock is not owned

PNP_TRIAGE:
Lock address : 0x8055b560
Thread Count : 1
Thread address: 0x89a677b0
Thread wait : 0x56

LAST_CONTROL_TRANSFER: from 804f8df9 to 8052b5dc

STACK_TEXT:
bacc2cf8 804f8df9 00000003 bacc3054 00000000 nt!RtlpBreakWithStatusInstruction
bacc2d44 804f99e4 00000003 e134f1d0 00000000 nt!KiBugCheckDebugBreak+0x19
bacc3124 804f9f33 000000a5 00000002 89a839d0 nt!KeBugCheck2+0x574
bacc3144 ba7870bb 000000a5 00000002 89a839d0 nt!KeBugCheckEx+0x1b
bacc3184 ba7985a8 89a839d0 e134f008 89a52e38 ACPI!ACPIRangeValidatePciResources+0x129
bacc31b8 ba77fe12 00000000 89a52e38 89a52ecc ACPI!ACPIBusIrpQueryResourceRequirements+0x110
bacc31e8 804ef18f 899a91f8 ba79500c bacc3264 ACPI!ACPIDispatchIrp+0x15a
bacc31f8 80592b63 bacc3264 bacc3294 00002000 nt!IopfCallDriver+0x31
bacc3224 805933cc 899a91f8 bacc3240 bacc3294 nt!IopSynchronousCall+0xb7
bacc3268 8058f1fc 899a91f8 bacc3294 8996c1d0 nt!PpIrpQueryResourceRequirements+0x38
bacc328c 80591ce2 00000000 800001e4 00000000 nt!PiQueryResourceRequirements+0x1c
bacc337c 8059222b 8996c1d0 00000000 00000000 nt!PipProcessNewDeviceNode+0x84a
bacc35d0 804f68d3 89a52008 00000000 00000000 nt!PipProcessDevNodeTree+0x16b
bacc3614 804f6b78 00000000 00000000 8008fca0 nt!PipDeviceActionWorker+0xad
bacc362c 8069d0ee 00000000 00000006 00000000 nt!PipRequestDeviceAction+0x118
bacc3690 80699f70 80084000 bacc36ac 00034000 nt!IopInitializeBootDrivers+0x376
bacc3838 806983d3 80084000 00000000 89a677b0 nt!IoInitSystem+0x712
bacc3dac 805cff64 80084000 00000000 00000000 nt!Phase1Initialization+0xac7
bacc3ddc 805460de 8069790c 80084000 00000000 nt!PspSystemThreadStartup+0x34
00000000 00000000 00000000 00000000 00000000 nt!KiThreadStartup+0x16


STACK_COMMAND: kb

FOLLOWUP_IP:
ACPI!ACPIRangeValidatePciResources+129
ba7870bb 56 push esi

SYMBOL_STACK_INDEX: 4

SYMBOL_NAME: ACPI!ACPIRangeValidatePciResources+129

FOLLOWUP_NAME: MachineOwner

MODULE_NAME: ACPI

IMAGE_NAME: ACPI.sys

DEBUG_FLR_IMAGE_TIMESTAMP: 480252b1

FAILURE_BUCKET_ID: 0xA5_ACPI!ACPIRangeValidatePciResources+129

BUCKET_ID: 0xA5_ACPI!ACPIRangeValidatePciResources+129

Followup: MachineOwner
---------

kd> !analyze -v
*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

ACPI_BIOS_ERROR (a5)
The ACPI Bios in the system is not fully compliant with the ACPI specification.
The first value indicates where the incompatibility lies:
This bug check covers a great variety of ACPI problems. If a kernel debugger
is attached, use "!analyze -v". This command will analyze the precise problem,
and display whatever information is most useful for debugging the specific
error.
Arguments:
Arg1: 00000002, ACPI_ROOT_PCI_RESOURCE_FAILURE
ACPI could not process the resource list for the PCI root buses
Arg2: 89a839d0, The ACPI Extension for the PCI bus.
Arg3: e134f008,
Arg4: 898adca8

Debugging Details:
------------------

*** No owner thread found for resource 8055b4e0
*** No owner thread found for resource 8055b4e0
*** No owner thread found for resource 8055b4e0
*** No owner thread found for resource 8055b4e0
*** No owner thread found for resource 8055b4e0

ACPI_EXTENSION: 89a839d0 -- (!acpikd.acpiext 89a839d0)

ACPI_RESCONFLICT: e134f008 -- (!acpiresconflict e134f008 898adca8)
Number of arguments found = 1. 2 arguments expected
Usage: acpiresconflict [DeviceExtension] [IoResList] [e820Info]


DEFAULT_BUCKET_ID: DRIVER_FAULT

BUGCHECK_STR: 0xA5

PROCESS_NAME: System

LOCK_ADDRESS: 8055b560 -- (!locks 8055b560)
The state of the ACPI locks is:
- Build Queue Lock is not owned
- Button Lock is not owned
- Device Tree Lock is not owned
- Fatal Lock is not owned
- Power Lock is not owned
- Get Lock is not owned
- Power Queue Lock is not owned
- Thermal Lock is not owned
- Update Flags Lock is not owned
- Worker Lock is not owned

PNP_TRIAGE:
Lock address : 0x8055b560
Thread Count : 1
Thread address: 0x89a677b0
Thread wait : 0x56

LAST_CONTROL_TRANSFER: from 804f8df9 to 8052b5dc

STACK_TEXT:
bacc2cf8 804f8df9 00000003 bacc3054 00000000 nt!RtlpBreakWithStatusInstruction
bacc2d44 804f99e4 00000003 e134f1d0 00000000 nt!KiBugCheckDebugBreak+0x19
bacc3124 804f9f33 000000a5 00000002 89a839d0 nt!KeBugCheck2+0x574
bacc3144 ba7870bb 000000a5 00000002 89a839d0 nt!KeBugCheckEx+0x1b
bacc3184 ba7985a8 89a839d0 e134f008 89a52e38 ACPI!ACPIRangeValidatePciResources+0x129
bacc31b8 ba77fe12 00000000 89a52e38 89a52ecc ACPI!ACPIBusIrpQueryResourceRequirements+0x110
bacc31e8 804ef18f 899a91f8 ba79500c bacc3264 ACPI!ACPIDispatchIrp+0x15a
bacc31f8 80592b63 bacc3264 bacc3294 00002000 nt!IopfCallDriver+0x31
bacc3224 805933cc 899a91f8 bacc3240 bacc3294 nt!IopSynchronousCall+0xb7
bacc3268 8058f1fc 899a91f8 bacc3294 8996c1d0 nt!PpIrpQueryResourceRequirements+0x38
bacc328c 80591ce2 00000000 800001e4 00000000 nt!PiQueryResourceRequirements+0x1c
bacc337c 8059222b 8996c1d0 00000000 00000000 nt!PipProcessNewDeviceNode+0x84a
bacc35d0 804f68d3 89a52008 00000000 00000000 nt!PipProcessDevNodeTree+0x16b
bacc3614 804f6b78 00000000 00000000 8008fca0 nt!PipDeviceActionWorker+0xad
bacc362c 8069d0ee 00000000 00000006 00000000 nt!PipRequestDeviceAction+0x118
bacc3690 80699f70 80084000 bacc36ac 00034000 nt!IopInitializeBootDrivers+0x376
bacc3838 806983d3 80084000 00000000 89a677b0 nt!IoInitSystem+0x712
bacc3dac 805cff64 80084000 00000000 00000000 nt!Phase1Initialization+0xac7
bacc3ddc 805460de 8069790c 80084000 00000000 nt!PspSystemThreadStartup+0x34
00000000 00000000 00000000 00000000 00000000 nt!KiThreadStartup+0x16


STACK_COMMAND: kb

FOLLOWUP_IP:
ACPI!ACPIRangeValidatePciResources+129
ba7870bb 56 push esi

SYMBOL_STACK_INDEX: 4

SYMBOL_NAME: ACPI!ACPIRangeValidatePciResources+129

FOLLOWUP_NAME: MachineOwner

MODULE_NAME: ACPI

IMAGE_NAME: ACPI.sys

DEBUG_FLR_IMAGE_TIMESTAMP: 480252b1

FAILURE_BUCKET_ID: 0xA5_ACPI!ACPIRangeValidatePciResources+129

BUCKET_ID: 0xA5_ACPI!ACPIRangeValidatePciResources+129

Followup: MachineOwner
---------

kd> !lm
No export lm found
kd> lm
start end module name
804d7000 806e4000 nt (pdb symbols) c:\symbols\ntkrpamp.pdb\7D6290E03E32455BB0E035E38816124F1\ntkrpamp.pdb
806e4000 80704d00 hal (deferred)
ba3ba000 ba3d3b80 Mup (deferred)
ba3d4000 ba400980 NDIS (deferred)
ba401000 ba417880 KSecDD (deferred)
ba418000 ba43b180 Fastfat (deferred)
ba43c000 ba44df00 sr (deferred)
ba44e000 ba46db00 fltMgr (deferred)
ba46e000 ba723000 iaStor (deferred)
ba723000 ba748700 dmio (deferred)
ba749000 ba767880 ftdisk (deferred)
ba768000 ba778a80 pci (deferred)
ba779000 ba7a6d80 ACPI (pdb symbols) c:\symbols\acpi.pdb\3E23085EEF9C4EB5AC40C386278F6D7E1\acpi.pdb
ba8a8000 ba8b1180 isapnp (deferred)
ba8b8000 ba8c2580 MountMgr (deferred)
ba8c8000 ba8d4c80 VolSnap (deferred)
ba8d8000 ba8e0e00 disk (deferred)
ba8e8000 ba8f4180 CLASSPNP (deferred)
bab28000 bab2e800 firadisk (deferred)
bab30000 bab34d00 PartMgr (deferred)
bacb8000 bacbb000 BOOTVID (deferred)
bada8000 bada9b80 kdcom (deferred)
badaa000 badab100 WMILIB (deferred)
badac000 badad700 dmload (deferred)
kd> !devnode
Dumping IopRootDeviceNode (= 0x89a52008)
DevNode 0x89a52008 for PDO 0x89a8a2c0
Parent 0000000000 Sibling 0000000000 Child 0x89a52ba8
InstancePath is "HTREE\ROOT\0"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
StateHistory[04] = DeviceNodeEnumerateCompletion (0x30d)
StateHistory[03] = DeviceNodeStarted (0x308)
StateHistory[02] = DeviceNodeEnumerateCompletion (0x30d)
StateHistory[01] = DeviceNodeStarted (0x308)
StateHistory[00] = DeviceNodeUninitialized (0x301)
StateHistory[19] = Unknown State (0x0)
StateHistory[18] = Unknown State (0x0)
StateHistory[17] = Unknown State (0x0)
StateHistory[16] = Unknown State (0x0)
StateHistory[15] = Unknown State (0x0)
StateHistory[14] = Unknown State (0x0)
StateHistory[13] = Unknown State (0x0)
StateHistory[12] = Unknown State (0x0)
StateHistory[11] = Unknown State (0x0)
StateHistory[10] = Unknown State (0x0)
StateHistory[09] = Unknown State (0x0)
StateHistory[08] = Unknown State (0x0)
StateHistory[07] = Unknown State (0x0)
StateHistory[06] = Unknown State (0x0)
StateHistory[05] = Unknown State (0x0)
Flags (0x00000131) DNF_MADEUP, DNF_ENUMERATED,
DNF_IDS_QUERIED, DNF_NO_RESOURCE_REQUIRED

#144 diderius6 The BSOD on the asrock board with

ACPI_RESCONFLICT: e134f008 -- (!acpiresconflict e134f008 898adca8)
Number of arguments found = 1. 2 arguments expected
Usage: acpiresconflict [DeviceExtension] [IoResList] [e820Info]

remembers me at

"There is a critical error in the BIOS, in the ACPI setup under SSDT7.

I have taken the liberty to fix it on my machine, but I don't know where to report the bug, so here goes.

There are 3 big screwups on methods that require two arguments, being passed as a method with one argument and then a "hanging" argument. I am not sure how this was implemented, but it's total garbage.

For example \_SB.SGOV requires two arguments, but in positions where it SHOULD be invoked, \_SB.GGOV is invoked instead, and only takes ONE argument. So, instead of passing two arguments, one argument is given, and one argument is just hanging in the middle of nowhere, causing compilation errors in BIOS.

There are many instances of this behavior for example:

\_SB.GGOV (0x02010014)
OLDV

must be changed to:

\_SB.SGOV (0x02010014, OLDV)  


⇗ https://rog.asus.com/forum/showthread.ph...at-I-have-fixed

Dietmar
#145 diderius6 Hi,
I installed the Acpi Bios 1704 for Asus Apex X motherboard,
modded by Elmor for XP

⇗ https://community.hwbot.org/topic/174849...#comment-516868

Then I installed there the full XP SP3 debug version. I can see on this z370 chipset now
all Acpi devices and HT with all cores from 8700k.
Elmor used another method for modding the Bios.
And I think, he also changed the about 7 SSDT tables,
which makes BSOD until now on my asrock fatal1ty z370 gaming k6 board
Dietmar

EDIT: The same problem with the timer appears on this Bios mod from Elmor.
This is interesting, seems my hack for the timer has not reached hwbot.
FACP Flags is A5 86 03 00 so, clock is set to 1, needs to be 0.
This can be done by changing this Hexvalues to A5 06 03 00

EDIT2: I can not find the FACP table in Bios on the Asus Apex X board. Any help is welcome.
#146 diderius6
Windbg messages for Asrock 370 board. It seems, it is not a real Acpi problem.
It seems, that there happens overlapping in memory. Any idea?

kd> ACPI: E820 Entry 0 (type 1) (0-9c400) overlaps

0: kd> !acpiresconflict e100da30 8a0cdb50
acpiresconflict: Failed to initialize type acpi!_ACPI_BIOS_MULTI_NODE 1
acpiresconflict: Failed to initialize type acpi!_ACPI_BIOS_MULTI_NODE 1
acpiresconflict: Failed to initialize type acpi!_ACPI_BIOS_MULTI_NODE 1
acpiresconflict: Failed to initialize type acpi!_ACPI_BIOS_MULTI_NODE 1
acpiresconflict:
acpiresconflict: No PCI _CRS problems / conflicts were found

typedef struct _ACPI_BIOS_MULTI_NODE {
PHYSICAL_ADDRESS RsdtAddress; // 64-bit physical address of RSDT
ULONGLONG Count;
ACPI_E820_ENTRY E820Entry[1];
} ACPI_BIOS_MULTI_NODE, *PACPI_BIOS_MULTI_NODE;


0: kd> !RSDT
RSDT - HEADER - ffffffffbbea5028
Signature: RSDT
Length: 0x00000078
Revision: 0x01
Checksum: 0xd2
OEMID: ALASKA
OEMTableID: A M I
OEMRevision: 0x01072009
CreatorID: MSFT
CreatorRev: 0x00010013
RSDT - BODY - ffffffffbbea504c
@(000000007dfb3180) Rev: 000 Len: 00000000 TableID:
@(000000007dfdc0b0) Rev: 000 Len: 00000000 TableID:
@(000000007dfdc118) Rev: 000 Len: 00000000 TableID:
@(000000007dfdc160) Rev: 000 Len: 00000000 TableID:
@(000000007dfdc200) Rev: 000 Len: 00000000 TableID:
@(000000007dfdc240) Rev: 000 Len: 00000000 TableID:
@(000000007dfdc5e8) Rev: 000 Len: 00000000 TableID:
@(000000007dfdf750) Rev: 000 Len: 00000000 TableID:
@(000000007dfdf788) Rev: 000 Len: 00000000 TableID:
@(000000007dfe0440) Rev: 000 Len: 00000000 TableID:
@(000000007dfe0488) Rev: 000 Len: 00000000 TableID:
@(000000007dfe1c38) Rev: 000 Len: 00000000 TableID:
@(000000007dfe1f18) Rev: 000 Len: 00000000 TableID:
@(000000007dfe1fb0) Rev: 000 Len: 00000000 TableID:
@(000000007dfe20f8) Rev: 000 Len: 00000000 TableID:
@(000000007dfe2610) Rev: 000 Len: 00000000 TableID:
@(000000007dfe2900) Rev: 000 Len: 00000000 TableID:
@(000000007dfe2938) Rev: 000 Len: 00000000 TableID:
@(000000007dfe2990) Rev: 000 Len: 00000000 TableID:
@(000000007dfe2a38) Rev: 000 Len: 00000000 TableID:
@(000000007dfe2a70) Rev: 000 Len: 00000000 TableID:

#147 Mov AX, 0xDEAD Hi,

Some info about bug with Acpi Timer on Skylake+ platforms:
- XP preSP2 uses TSC, not affected
- XP SP2,SP3 uses acpi timer, affected
- Vista search for HPET Timer and uses it, frequency is 14.31818 MHz (4 x freq of Acpi timer), not affected
- Vista uses acpi timer if didn't find HPET, affected
- Win7+ check quality of processor counter (TSC), skylake+ cpus have constant rate counter, so these OSes use TSC and not affected. Unlike XP, processor raw frequency divided to 1024, for example 3600Mhz/1024=3.579545Mhz (avoid arithmetic 32bit overflow in old-gen apps ?)
- If Win7+ forced to not use TSC (bcdedit.exe /set useplatformclock true), it search for HPET and uses it, not affected
- If Win7+ forced to not use TSC and didn't find HPET, it uses acpi timer, affected

Regarding acpi specs and intel specs on pch chipset, acpi timer generates hardware SCI interrupt (IRQ #9) if TMR_EN bit is SET. This bit is SETted on live system, but windows doesnt receive any interrupts. Near to TMR_EN exist PWRBTN_EN bit (generates SCI at power button press), and if we press button, windows receive interrupt (surprise!)

I came to the conclusion that this is a bug at the platform level. Maybe bios doesnt set some hardware regs or intel forget to say something about additional requirements, who knows....
EDIT: this is not platform bug, acpi timer just disabled in chipset by BIOS
#148 diderius6 ⇗ @Mov AX, 0xDEAD
hi,
on hwbot.org they told,
that the z270 Asus Apex IX has from
beginning full XP Acpi support and also a board
from Gigabyte Z370X SOC Force LN2. The Asus z270 Apex IX board I will test in next days.
The board from gigabyte is not sold on the normal market, just for overclockers.
I wonder, if another table for example SSDT in Bios
has to do with the pm_timer.

And maximal unclear is for me, why I have no success with ACPI on my Asrock z370 board.
The bios DSDT table is nearly one by one like the Bios DSDT table from gigabyte H110M-S2H.
May be, another device is called, where until now I do not prevent it from reserved words from Acpi 2.0,
have a nice evening
Dietmar
#149 Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #148
@Mov AX, 0xDEAD
I wonder, if another table for example SSDT in Bios
has to do with the pm_timer.


acpi specs dont say anything about controling timer in acpi tables, timer is hardware level
OS can only:
1) route interrupt to itself(SCI mode) or to bios (SMI)
2) disable or enable interrupts

p.s. because win7+ use TSC and we all have "right" cpus, no need anymore to fix this buggy timer, just patch os/bios to avoid using it
#150 Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #148

And maximal unclear is for me, why I have no success with ACPI on my Asrock z370 board.
The bios DSDT table is nearly one by one like the Bios DSDT table from gigabyte H110M-S2H.
May be, another device is called, where until now I do not prevent it from reserved words from Acpi 2.0,


New syntax will generate A5(03,xxxx,С014001,yyyy) error, if you have other errcodes this not directed linked to new syntax
I dont know much more about res conflicts at acpi level, but acpi 2 has important difference comparing to 1.1b - Integer implemenation. All integers in acpi 2.0 are 64 bit, so we can define QWORD fields and read/write to it from integer variables. In WinXP integers are 32 bit and it support only one "64 bit" QWordMemory instruction and i dont understand how this OS set/read 64 bits fields inside this structure.

 

Page 11

#151 diderius6 Windbg on the Asrock z370 tells always the same:
0: kd> !pcitree
PciFdoExtensionListHead forward pointer is NULL, list is empty
0: kd> !pci
PCI Segment 0 Bus 0
00:0 8086:3e0f.08 Cmd[0006:.mb...] Sts[2090:c....] Intel Host Bridge SubID:1849:3e0f
02:0 8086:3e93.00 Cmd[0007:imb...] Sts[0010:c....] Intel VGA Compatible Controller SubID:1849:3e93
14:0 8086:a2af.00 Cmd[0006:.mb...] Sts[0290:c....] Intel Class:c:3:30 SubID:1849:a2af
14:2 8086:a2b1.00 Cmd[0006:.mb...] Sts[0010:c....] Intel Other Signal Processing Controller SubID:1849:a2b1
16:0 8086:a2ba.00 Cmd[0004:..b...] Sts[0010:c....] Intel Other Communications Controller SubID:1849:a2ba
17:0 8086:a282.00 Cmd[0007:imb...] Sts[02b0:c6...] Intel Class:1:6:1 SubID:1849:a282
1b:0 8086:a2e7.f0 Cmd[0007:imb...] Sts[0010:c....] Intel PCI-PCI Bridge 0->0x1-0x1
1c:0 8086:a290.f0 Cmd[0007:imb...] Sts[0010:c....] Intel PCI-PCI Bridge 0->0x2-0x2
1c:1 8086:a291.f0 Cmd[0007:imb...] Sts[0010:c....] Intel PCI-PCI Bridge 0->0x3-0x3
1c:2 8086:a292.f0 Cmd[0007:imb...] Sts[0010:c....] Intel PCI-PCI Bridge 0->0x4-0x4
1c:4 8086:a294.f0 Cmd[0007:imb...] Sts[0010:c....] Intel PCI-PCI Bridge 0->0x5-0x5
1d:0 8086:a298.f0 Cmd[0007:imb...] Sts[0010:c....] Intel PCI-PCI Bridge 0->0x6-0x6
1f:0 8086:a2c9.00 Cmd[0007:imb...] Sts[0200:.....] Intel ISA Bridge SubID:1849:a2c9
1f:2 8086:a2a1.00 Cmd[0006:.mb...] Sts[0000:.....] Intel Other Memory Controller SubID:1849:a2a1
1f:3 8086:a2f0.00 Cmd[0006:.mb...] Sts[0010:c....] Intel Class:4:3:0 SubID:1849:1221
1f:4 8086:a2a3.00 Cmd[0003:im....] Sts[0280:.....] Intel SMBus Controller SubID:1849:a2a3
1f:6 8086:15b8.00 Cmd[0006:.mb...] Sts[0010:c....] Intel Ethernet Controller SubID:1849:15b8

I think, the total absent of the pci list depends on
Sat Dec 15 21:01:10.421 2018 (UTC + 1:00): ACPI: E820 Entry 0 (type 1) (0-9c400) overlaps
ACPI: PCI Entry 9 Min:10000 Max:1ffff Length:10000 Align:1
#152 diderius6 I just noticed,
that in the Bios mod 1704 for Asus Apex X from Elmor
you cant switch off the pm_timer.
Even in Bios it is set to A5 02 03 00,
the compi always use A5 82 03 00,
so at the moment no clock and no correct working
of Acpi in XP SP3 on Asus Apex X because of crazy not
working pm_timer.
In this case, only the HAL.dll hack for to use always the system clock works,
because in registry the value in FACP A5 02 03 00is always overwritten by Bios with A5 82 03 00,
even you set it to unwritable(!)
Dietmar

PS: I set the pm_timer to 32 bit in Bios. Also not helps. Any flag I can set in Bios from FACP,
only the pm_timer is unstoppable.
#153 Pill Monster
Zitat von ⇗ diderius6 im Beitrag ¶ #152
I just noticed,
that in the Bios mod 1704 for Asus Apex X from Elmor
you cant switch off the pm_timer.
Even in Bios it is set to A5 02 03 00,
the compi always use A5 82 03 00,
so at the moment no clock and no correct working
of Acpi in XP SP3 on Asus Apex X because of crazy not
working pm_timer.
In this case, only the HAL.dll hack for to use always the system clock works,
because in registry the value in FACP A5 02 03 00is always overwritten by Bios with A5 82 03 00,
even you set it to unwritable(!)
Dietmar

PS: I set the pm_timer to 32 bit in Bios. Also not helps. Any flag I can set in Bios from FACP,
only the pm_timer is unstoppable.


Enabling HPET just allows it to be used by OS, it doesn't force the OS to use it.  Use of HPET depends on OS version and boot loader options.

bcdedit /set  useplatformclock yes   Forces the use of the platform clock as the system's performance counter.
 

bcdedit /set disabledynamictick yes Forces the OS to use Dynamic TSC. (Windows 8 and above)...
#154 diderius6 [img][/img]Hi,
I just installed XP SP1 :))
on the Asus Apex X motherboard.
Oh, the timer works there normal!
So, it depends on something in XP SP3
Dietmar
#155 @rne Nice to see progress. That would also be very helpful for all overclockers focusing on budget mainboards without any extra XP compatible bios from vendor
#156 Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #154

I just installed XP SP1 :))
So, it depends on something in XP SP3


because sp1 can use TSC or old i8059 i8253 timer only
#157 diderius6 From Wikipedia:
If the ACPI is not set up correctly the OS cannot list the HPET. And the BIOS and OS developers don't see the need to get Real Time support. So the HPET is only there to satisfy the system's high speed needs. If the HPET is set up correctly in the ACPI from BIOS then the ACPI MMIO page of the first HPET chip should be at 0xFED00000 and the second HPET at page 0xFED80000 (see the discussion for further information).

In terms of physical embodiment in Windows XP SP3, the IRQ0 and IRQ8 are typically mapped to a "High Precision Event Timer" when using the ACPI HAL (version 5.1.2600.5512), albeit that the QueryPerformanceFrequency API call returns a value related to the rated processor clock speed (for example, 2.6 GHz) or PMTIMER (3.579545 MHz) rather than the Intel HPET spec'd value of 15 MHz that you would get using Windows Vista.

The ACPI timer is an additional system timer that is required as part of the ACPI specification. This timer is also
known as the power management (PM) timer or the chipset timer. It has a 24-bit counter that increments at
3.579545MHz (three times the PIT frequency).
The timer can be programmed to generate an interrupt when its high-order bit changes value.
There is no counter input register; the counter always rolls over.
That is, when the counter reaches the maximum, 24-bit binary value, it goes back to zero and continues counting from there.

I think, take a look at!

HPET in XP does not exist. In version XP SP >=2 it is the pm_timer,
as you can see in the MHZ values in the Win-timer
Dietmar
#158 diderius6 I found an interesting bit in
the 22 flags in FACP (beginning with rev. 5 of FACP):

HW_REDUCED_ACPI  A one indicates that the ACPI Hardware Interface (chapter 4)
is not implemented. Software-only alternatives are used for
supported fixed-features defined in chapter 4.

5.1.1.1 Runtime Reduced Hardware Support
This feature automatically supports reduced hardware platforms without any code changes. The reduced hardware support is dynamically enabled via the HW_REDUCED_ACPI flag in the revision 5 FADT. If this flag is set, ACPICA will not attempt to initialize or use any of the usual ACPI hardware. Note, when this flag is set, all of the following ACPI hardware is assumed to be not present and is not initialized or accessed:
General Purpose Events (GPEs)
Fixed Events (PM1a/PM1b and PM Control)
Power Management Timer and Console Buttons (power/sleep)
Real-time Clock Alarm
Global Lock
System Control Interrupt (SCI)
The FACS is assumed to be non-existent

So, just a try on the Asrock z370 board, setting this flag to 1
Dietmar
#159 diderius6 Here comes the FACP table from asus Apex X with modded Bios from Elmor ,
extracted direct with iasl.exe.
rw-everything does not show these interesting bits in FLAGS. And write you can nearly nothing.
/*
* Intel ACPI Component Architecture
* AML/ASL+ Disassembler version 20181031 (32-bit version)
* Copyright (c) 2000 - 2018 Intel Corporation
*
* Disassembly of FACP.dat, Tue Dec 18 16:03:00 2018
*
* ACPI Data Table [FACP]
*
* Format: [HexOffset DecimalOffset ByteLength] FieldName : FieldValue
*/

[000h 0000 4] Signature : "FACP" [Fixed ACPI Description Table (FADT)]
[004h 0004 4] Table Length : 00000084
[008h 0008 1] Revision : 02
[009h 0009 1] Checksum : EE
[00Ah 0010 6] Oem ID : "ALASKA"
[010h 0016 8] Oem Table ID : "A M I "
[018h 0024 4] Oem Revision : 01072009
[01Ch 0028 4] Asl Compiler ID : "AMI "
[020h 0032 4] Asl Compiler Revision : 00010013

[024h 0036 4] FACS Address : 8EB97EC0
[028h 0040 4] DSDT Address : 8E7701E8
[02Ch 0044 1] Model : 00
[02Dh 0045 1] PM Profile : 01 [Desktop]
[02Eh 0046 2] SCI Interrupt : 0009
[030h 0048 4] SMI Command Port : 000000B2
[034h 0052 1] ACPI Enable Value : A0
[035h 0053 1] ACPI Disable Value : A1
[036h 0054 1] S4BIOS Command : 00
[037h 0055 1] P-State Control : 00
[038h 0056 4] PM1A Event Block Address : 00001800
[03Ch 0060 4] PM1B Event Block Address : 00000000
[040h 0064 4] PM1A Control Block Address : 00001804
[044h 0068 4] PM1B Control Block Address : 00000000
[048h 0072 4] PM2 Control Block Address : 00001850
[04Ch 0076 4] PM Timer Block Address : 00001808
[050h 0080 4] GPE0 Block Address : 00001880
[054h 0084 4] GPE1 Block Address : 00000000
[058h 0088 1] PM1 Event Block Length : 04
[059h 0089 1] PM1 Control Block Length : 02
[05Ah 0090 1] PM2 Control Block Length : 01
[05Bh 0091 1] PM Timer Block Length : 04
[05Ch 0092 1] GPE0 Block Length : 20
[05Dh 0093 1] GPE1 Block Length : 00
[05Eh 0094 1] GPE1 Base Offset : 10
[05Fh 0095 1] _CST Support : 00
[060h 0096 2] C2 Latency : 0065
[062h 0098 2] C3 Latency : 0039
[064h 0100 2] CPU Cache Size : 0400
[066h 0102 2] Cache Flush Stride : 0010
[068h 0104 1] Duty Cycle Offset : 00
[069h 0105 1] Duty Cycle Width : 00
[06Ah 0106 1] RTC Day Alarm Index : 0D
[06Bh 0107 1] RTC Month Alarm Index : 00
[06Ch 0108 1] RTC Century Index : 32
[06Dh 0109 2] Boot Flags (decoded below) : 0012
Legacy Devices Supported (V2) : 0
8042 Present on ports 60/64 (V2) : 1
VGA Not Present (V4) : 0
MSI Not Supported (V4) : 0
PCIe ASPM Not Supported (V4) : 1
CMOS RTC Not Present (V5) : 0
[06Fh 0111 1] Reserved : 00
[070h 0112 4] Flags (decoded below) : 000394A5
WBINVD instruction is operational (V1) : 1
WBINVD flushes all caches (V1) : 0
All CPUs support C1 (V1) : 1
C2 works on MP system (V1) : 0
Control Method Power Button (V1) : 0
Control Method Sleep Button (V1) : 1
RTC wake not in fixed reg space (V1) : 0
RTC can wake system from S4 (V1) : 1
32-bit PM Timer (V1) : 0
Docking Supported (V1) : 0
Reset Register Supported (V2) : 1
Sealed Case (V3) : 0
Headless - No Video (V3) : 1
Use native instr after SLP_TYPx (V3) : 0
PCIEXP_WAK Bits Supported (V4) : 0
Use Platform Timer (V4) : 1
RTC_STS valid on S4 wake (V4) : 1
Remote Power-on capable (V4) : 1
Use APIC Cluster Model (V4) : 0
Use APIC Physical Destination Mode (V4) : 0
Hardware Reduced (V5) : 0
Low Power S0 Idle (V5) : 0

[074h 0116 12] Reset Register : [Generic Address Structure]
[074h 0116 1] Space ID : 01 [SystemIO]
[075h 0117 1] Bit Width : 08
[076h 0118 1] Bit Offset : 00
[077h 0119 1] Encoded Access Width : 00 [Undefined/Legacy]
[078h 0120 8] Address : 0000000000000CF9

[080h 0128 1] Value to cause reset : 06
[081h 0129 2] Reserved : 0000
[083h 0131 1] Reserved : 00

Raw Table Data: Length 132 (0x84)

0000: 46 41 43 50 84 00 00 00 02 EE 41 4C 41 53 4B 41 // FACP......ALASKA
0010: 41 20 4D 20 49 20 00 00 09 20 07 01 41 4D 49 20 // A M I ... ..AMI
0020: 13 00 01 00 C0 7E B9 8E E8 01 77 8E 00 01 09 00 // .....~....w.....
0030: B2 00 00 00 A0 A1 00 00 00 18 00 00 00 00 00 00 // ................
0040: 04 18 00 00 00 00 00 00 50 18 00 00 08 18 00 00 // ........P.......
0050: 80 18 00 00 00 00 00 00 04 02 01 04 20 00 10 00 // ............ ...
0060: 65 00 39 00 00 04 10 00 00 00 0D 00 32 12 00 00 // e.9.........2...
0070: A5 94 03 00 01 08 00 00 F9 0C 00 00 00 00 00 00 // ................
0080: 06 00 00 00 // ....
#160 diderius6 I succeed to set this bit,
but the timer still does not work
Dietmar

/*
* Intel ACPI Component Architecture
* AML/ASL+ Disassembler version 20181031 (32-bit version)
* Copyright (c) 2000 - 2018 Intel Corporation
*
* Disassembly of FACP.dat, Tue Dec 18 17:06:14 2018
*
* ACPI Data Table [FACP]
*
* Format: [HexOffset DecimalOffset ByteLength] FieldName : FieldValue
*/

[000h 0000 4] Signature : "FACP" [Fixed ACPI Description Table (FADT)]
[004h 0004 4] Table Length : 00000084
[008h 0008 1] Revision : 02
[009h 0009 1] Checksum : 8C
[00Ah 0010 6] Oem ID : "ALASKA"
[010h 0016 8] Oem Table ID : "A M I "
[018h 0024 4] Oem Revision : 01072009
[01Ch 0028 4] Asl Compiler ID : "AMI "
[020h 0032 4] Asl Compiler Revision : 00010013

[024h 0036 4] FACS Address : 8EB9AEC0
[028h 0040 4] DSDT Address : 8E7731E8
[02Ch 0044 1] Model : 00
[02Dh 0045 1] PM Profile : 01 [Desktop]
[02Eh 0046 2] SCI Interrupt : 0009
[030h 0048 4] SMI Command Port : 000000B2
[034h 0052 1] ACPI Enable Value : A0
[035h 0053 1] ACPI Disable Value : A1
[036h 0054 1] S4BIOS Command : 00
[037h 0055 1] P-State Control : 00
[038h 0056 4] PM1A Event Block Address : 00001800
[03Ch 0060 4] PM1B Event Block Address : 00000000
[040h 0064 4] PM1A Control Block Address : 00001804
[044h 0068 4] PM1B Control Block Address : 00000000
[048h 0072 4] PM2 Control Block Address : 00001850
[04Ch 0076 4] PM Timer Block Address : 00001808
[050h 0080 4] GPE0 Block Address : 00001880
[054h 0084 4] GPE1 Block Address : 00000000
[058h 0088 1] PM1 Event Block Length : 04
[059h 0089 1] PM1 Control Block Length : 02
[05Ah 0090 1] PM2 Control Block Length : 01
[05Bh 0091 1] PM Timer Block Length : 04
[05Ch 0092 1] GPE0 Block Length : 20
[05Dh 0093 1] GPE1 Block Length : 00
[05Eh 0094 1] GPE1 Base Offset : 10
[05Fh 0095 1] _CST Support : 00
[060h 0096 2] C2 Latency : 0065
[062h 0098 2] C3 Latency : 0039
[064h 0100 2] CPU Cache Size : 0400
[066h 0102 2] Cache Flush Stride : 0010
[068h 0104 1] Duty Cycle Offset : 00
[069h 0105 1] Duty Cycle Width : 00
[06Ah 0106 1] RTC Day Alarm Index : 0D
[06Bh 0107 1] RTC Month Alarm Index : 00
[06Ch 0108 1] RTC Century Index : 32
[06Dh 0109 2] Boot Flags (decoded below) : 0012
Legacy Devices Supported (V2) : 0
8042 Present on ports 60/64 (V2) : 1
VGA Not Present (V4) : 0
MSI Not Supported (V4) : 0
PCIe ASPM Not Supported (V4) : 1
CMOS RTC Not Present (V5) : 0
[06Fh 0111 1] Reserved : 00
[070h 0112 4] Flags (decoded below) : 001386A5
WBINVD instruction is operational (V1) : 1
WBINVD flushes all caches (V1) : 0
All CPUs support C1 (V1) : 1
C2 works on MP system (V1) : 0
Control Method Power Button (V1) : 0
Control Method Sleep Button (V1) : 1
RTC wake not in fixed reg space (V1) : 0
RTC can wake system from S4 (V1) : 1
32-bit PM Timer (V1) : 0
Docking Supported (V1) : 1
Reset Register Supported (V2) : 1
Sealed Case (V3) : 0
Headless - No Video (V3) : 0
Use native instr after SLP_TYPx (V3) : 0
PCIEXP_WAK Bits Supported (V4) : 0
Use Platform Timer (V4) : 1
RTC_STS valid on S4 wake (V4) : 1
Remote Power-on capable (V4) : 1
Use APIC Cluster Model (V4) : 0
Use APIC Physical Destination Mode (V4) : 0
Hardware Reduced (V5) : 1
Low Power S0 Idle (V5) : 0

[074h 0116 12] Reset Register : [Generic Address Structure]
[074h 0116 1] Space ID : 01 [SystemIO]
[075h 0117 1] Bit Width : 08
[076h 0118 1] Bit Offset : 00
[077h 0119 1] Encoded Access Width : 00 [Undefined/Legacy]
[078h 0120 8] Address : 0000000000000CF9

[080h 0128 1] Value to cause reset : 06
[081h 0129 2] Reserved : 0000
[083h 0131 1] Reserved : 00

Raw Table Data: Length 132 (0x84)

0000: 46 41 43 50 84 00 00 00 02 8C 41 4C 41 53 4B 41 // FACP......ALASKA
0010: 41 20 4D 20 49 20 00 00 09 20 07 01 41 4D 49 20 // A M I ... ..AMI
0020: 13 00 01 00 C0 AE B9 8E E8 31 77 8E 00 01 09 00 // .........1w.....
0030: B2 00 00 00 A0 A1 00 00 00 18 00 00 00 00 00 00 // ................
0040: 04 18 00 00 00 00 00 00 50 18 00 00 08 18 00 00 // ........P.......
0050: 80 18 00 00 00 00 00 00 04 02 01 04 20 00 10 00 // ............ ...
0060: 65 00 39 00 00 04 10 00 00 00 0D 00 32 12 00 00 // e.9.........2...
0070: A5 86 13 00 01 08 00 00 F9 0C 00 00 00 00 00 00 // ................
0080: 06 00 00 00 // ....
#161 diderius6 Yessa, I succeed to hack hal.dll to use the RTC clock
on XP SP3, now I have full ACPI support on the Asus Apex X board
Dietmar



diderius6 has attached images to this post  ⇗ sp3cool.jpg
#162 infuscomus
Zitat von ⇗ diderius6 im Beitrag ¶ #161
Yessa, I succeed to hack hal.dll to use the RTC clock
on XP SP3, now I have full ACPI support on the Asus Apex X board
Dietmar


can you upload your hal.dll mod for others to try?
#163 diderius6 Hi, I make a try.
I do not know, what Fernando tells about this.
But when my file will be deletet, I can write a short tutorial
how to reach this,
Dietmar



diderius6 has attached files to this post
#164 diderius6 Yessa,
9900k works also
with full Acpi support in XP SP3,
showing and working 16 Threads on
Asus Apex X
Dietmar



diderius6 has attached images to this post  ⇗ 9900kAcpiXPSP3.jpg
#165 XPLives That is good news.  I was going to suggest octacore test since hexacore no problem.

Asus Apex X is a Z370 board?  Can this be back ported to Z170?

Did you force ACPI to use software mode as default?

 

Page 12

#166 diderius6 Hi, I look,
how to enable RTC clock in hal.dll.
The idea for this hack came from Mov AX, 0xDEAD
but there are a lot of different hal.dll on the market.
This one works for the german Version XP SP3 32 bit professional,
yes, the Apex board is z370,
Dietmar

PS: Not easy to port a working Acpi DSDT to another platform.
I have no success with my Asrock k6 board, even I try a lot.
Until now, it works only, when there is a previous version of a board,
which works with Acpi on XP. May be other places have to be changed also, not only DSDT, may be even not in the pure Bios region.
#167 XPLives I successfully tested Haswell Z87 / Broadwell Z97 branch.  No ACPI issues.  Windows 2000, XP, and 2003 have no problems.  This is the final generation before SkyLake started the ACPI issue in XP.  Maybe the key is in Z97 and Z170 differences to fix ACPI for XP.


[16 Month time gap]
Z  97 - May 12, 2014 (XP ACPI compatible)
X  99 -  August 2014 (Should be XP compatible with ACPI) <--- Future test maybe hidden ACPI secret only 1 year+ difference.
Z170 - September 1, 2015 (XP ACPI issues begin)
#168 diderius6 The most common problems for Acpi
are just the use of reserved words from Acpi 2.0.
At github they told, that Bios manufactures start with using
Acpi 2.0 reserved vocabularies from January 2006.
But I also think, that most mainboard (Bios?) manufactures
do not have a look for XP compability now.
So it is a very hard job,
to make anything work for XP
Dietmar

PS: When I look at all the different Bios z97 - z370 from different manufacturers,
I come to the idea, that they use an automated program
for building Bios, because they are all nearly identic.
#169 XPLives I discovered in Z87 and Z97 SATA IDE Compatibility Mode exists in BIOS but I will need to find a method to port this MOD to Z170, Z270, Z370, and Z390 chipsets.  This will make XP SATA installation without the need of AHCI slipstream first method.  Laptops could use this to install XP lacking an optical disc drive requirement.  This will solve the headaches many are experiencing since USB installation on SkyLake+ can be problematic and fail.  Do you have any expertise?
#170 diderius6 I make an XP.iso using nlite,
with ALL the ahci drivers from fernando.
So, this problem is gone for me.
On some boards there is an Asmedia driver for AHCI.
With this driver, IDE is possible.
But before you have to integrate this driver from Asmedia
Dietmar
#171 Mov AX, 0xDEAD
Zitat von ⇗ XPLives im Beitrag ¶ #169
This will make XP SATA installation without the need of AHCI slipstream first method.  Laptops could use this to install XP lacking an optical disc drive requirement.  This will solve the headaches many are experiencing since USB installation on SkyLake+ can be problematic and fail

maybe is it time to forget ancient methods and requirements ?
today no need prepare media for installing windows in "MS Way", we have modern&fast equalents to install xp (easy2boot, firadisk, winntsetup, yumi, ...). installing from usb3 disk, installing on ahci controller - no problem
#172 Mov AX, 0xDEAD Moved to ¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware #4

There many unresolved problems running Windows XP x32 on sky/kaby/coffee lake hardware
my own list:
- ACPI BSOD:
.......... 0xA5 (0x03, X, 0xС0140001, Z) ACPI 2.0 syntax, 99% solved (custom acpi.sys), 1% - "QWordAcc" still 32bit only
.......... 0xA5 (0x02, X ,Y ,Z) error in ACPIRangeValidatePciResources, PCI vs E820 list conflict, solved (custom acpi.sys)
.......... 0xA5 (0x11, 0x08 ,Y ,Z) error in ACPIInitializeDDB, solved (custom acpi.sys)
.......... other possible BSODs, unresolved
- all integers in original ACPI 1.0 XP are 32 bits, ACPI 2.0 requires all ints to be 64 bits, unresolved. Acpi.sys from Longhorn v.5048 has 64 bit integers and compatible win Winxp
- Broken acpi pm_timer, solved (custom hal.dll, forced to use TSC counter) or enable hidden bios option "TCO Timer"
- Acpi tables patcher at boot time like Chameleon/Clover, solved,( ⇗ http://reboot.pro/topic/22051-acpi-patcher-at-boot-time)
- CPU in C0 power state 50-60% of time even without cpu load, solved (custom intelppm.sys, 1) only C1 c-state or 2) C1/С7s/C10 c-states)
- USB 3.x drivers for integrated intel chipsets, solved (patched AMD USB3 driver)
- Resource manager show conflict VGA card with ACPI IOTR/IOTraps device, solved 1) manual patching dsdt or 2) custom acpi.sys
- UEFI x64 Boot, partial solved for WinXP x64 only (bootmgr from vista beta+vesa vga driver)
- NVMExpress drivers, partial solved (modified OFA 1.3/1.5 driver+storport.sys from windows 2003)
- Access to additional 3TB+ Disks/GPT partitions, solved (Paragon GPT Loader)
- Boot from GPT partitions, unresolved (require uefi boot support first)
- TRIM support in NTFS/Storport/??? driver unresolved
- Kernel debug with WinDBG/KD over LAN/USB3.0 connection solved, (⇗ https://github.com/MovAX0xDEAD/KDNET)
#173 diderius6 "ACPI BSODs not related with acpi.2.0 syntax solved, using custom acpi.sys"
hihi;)..

may be because of some strange reasons XP thinks,
the Bios is from earlier than 1999,
Dietmar
#174 XPLives Yes for desktop there is Asmedia but laptops typically have only one Intel SATA controller now so this will allow more users to install XP with only the Intel SATA port.  Also because the Intel SATA in IDE Compatibility allows swapping of the drive from one machine to another.  You cannot do this with different SATA AHCI setups.  So once you've installed XP in IDE mode or SATA IDE mode you can move the installed XP OS to another machine which can be Z170, Z270, Z370, or Z390 and it will boot.  No need to reinstall from scratch.

In addition Windows 2000 works and install this way much easier.

This is why it is needed for both laptops and desktops.

The code is in the BIOS but I need someone to help copy this from Z97 to Z170 BIOS for testing.
#175 XPLives ⇗ @Mov AX, 0xDEAD

Sometimes the ancient method works the best.

Intel xHCI USB 3.0 does not support XP.  Many laptops do not have an optical disc drive or only a single SATA port and some only have 1 USB port such as tablets or maybe no USB ports or defective/bad USB ports.

Adding the SATA IDE Compatibility mode to the BIOS would allow them to install directly off their own internal storage drive and not need to use a USB port.

Any older OS that predates SATA might also install successfully using this method.

Windows 2000 can be easily installed aside from XP and 2003 in this manner.  No more iaStor.sys is corrupted.

These USB methods have issues on some desktops/laptops and is not 100% guaranteed either which causes the chicken or the egg issue if they cannot install XP whereas SATA IDE Compatibility mode allows them to install 2K, XP, or 2003 in DOS before updating to the SATA AHCI driver post install via Device Manager / registry update.  No optical or USB storage device will be necessary.  Avoids the Intel USB 3.0 xHCI compatibility issue with certain XP boot devices failing to install to completion.  Also unnecessary to waste a USB stick solely for installing the OS when it can be installed in DOS on the same storage drive if prepartitioned properly.

Installing from internal SATA SSD in DOS is many times faster than from any USB flash drive which can fail or have multiple steps which may cause user confusion/errors during the install process.  No need to use nLite or slipstream the correct Hardware ID before hand.  The USB install might also occupy the C: or Partition 1 during destination selection.

Guarantees the ability to move an existing Windows 2000, XP, and 2003 install from one machine to another without reinstalling from scratch in SATA AHCI Mode to use.  I can swap an XP install from Pentium 1 to Z97 and works.

⇗ https://www.winhistory.de/more/386/xpmini.htm.en

No more BSOD 7B installation headaches since the BIOS will support both methods of booting XP.  One could then use only 1 installed copy of XP to move among Z68-Z390 machines at will not restricted.  This means installing 2000, XP, and 2003 onto one drive and storing all the OS files on the same drive and not ever needing 3 USB sticks or 3 separate CDs to deal with.

Using an XP NO ACPI install would method would then work on all systems regardless of ACPI issues.

Current XP ACPI fixes in Z170+ BIOSes still requires more technical experience to solve than a typical user will want to deal with.

End goal is more XP installs as a result of the simplification of the install process means more users interested in 2000, XP, and 2003 and older pre-SATA OS means more users visiting this site and further progression or interest in help tackling the ACPI issue.  One day Intel USB 4.0 will arrive and the same USB installers will fail or the authors of these USB installers no longer care about XP.  Most of these USB installer tools don't even work inside XP anymore and require Windows 7+ to create the USB install image.  This BIOS Mod will work as a future safeguard/buffer while it is still possible and much more easily accomplished.
#176 diderius6 I also think,
that XP install direct via CD is best
Dietmar
#177 diderius6 I just noticed,
that the english version (for multiprocessor acpi)
of hal.dll and the german hal.dll in XP SP3 32 bit
are identic. Because of this,
my hack hal.dll works on any XP SP3,
just install XP, after this rename hal.dll in WINDOWS\System32 to halori.dll
and copy my hal.dll there,
now timer works correct,
Dietmar
#178 XPLives Yes Dietmar only because it's more reliable and not dependent on the USB and cannot die unless SATA dies first.  USB can change to 4.0, 5.0, and break compatibility again which will happen in the future.

I am working on a pure DOS install method for XP to avoid USB devices entirely and no optical disc drive needed just 98SE DOS and XP folder copied to the drive.  But I am trying to find a way to create a native AHCI SATA detection similar to IDE mode but many attempts failed.  But if I succeed then no more need to slipstream SATA as XP will autodetect SATA controller.

I think I need some program to read the SATA Controller Hardware ID and pass this and rewrite the hive so that when XP OS on SSD/HDD moved into a new system it will scan and alter the "registry" to change only the Hardware ID bits then it will load the OS with no problem.  I don't have any registry hacking experience to do this but I have compared the Registry before Floppy installed slipstreamed SATA AHCI driver and after during the setup phase so I can do comparison of what bytes need to be changed.  If you know of a program that can read the SATA Hardware ID each time and change these bits in the Registry it might be possible to make XP work on all SATA systems even during the install.
#179 diderius6 Hi,
much more easy is to build an XP.iso
using nlite 1.4.9.3 and add ALL ahci drivers
from Fernando.
I load it up here,
just integrate those drivers with nlite and build iso with nlite,
thats all
Dietmar



diderius6 has attached files to this post
#180 XPLives That will only work for "known" SATA controllers but we need one that can work with even future unknown without modifying.  Vista uses one that detects for all AHCI even unknown ones so can be moved to a different system.  IDE does the same with the newer SATA controllers using IDE compatibility mode past 2001.  I just need a tool to read this in DOS and inside preload of XP once installed to overwrite registry bits of the SATA Hardware ID location.  It will do it at each boot up so it will always check and use the current one connected so as long as SATA is supported into the future this should work even when both of us are long gone.  But your idea I have tested with a few chipsets inserted before but only can work for the XP installing phase but not after post SATA AHCI install you cannot move the XP install after installation to another chipset with SATA AHCI and boot.  7B will result each time.

 

Page 13

#181 diderius6 May be,
all AHCI drivers are the same.
In this case, make try with generic number for AHCI in TXTSETUP.OEM
[HardwareIds.SCSI.iaAHCI] 
id = "PCI\CC_010601","iaStor"

Dietmar
TXTSETUP.OEM 

[Disks]
disk0 = "AHCI Installation Disk", \iaAHCI.inf, \

[Defaults]
SCSI = iaStor

[SCSI]
iaStor = "AHCI Installation Disk", iaStor

[Files.SCSI.iaAHCI]
inf = disk0, iaAHCI.inf
driver = disk0, iaStor.sys, iaStor


[HardwareIds.SCSI.iaAHCI]
id = "PCI\CC_010601","iaStor"


[Config.iaStor]
value = "", tag, REG_DWORD, 1b
value = "", ErrorControl, REG_DWORD, 1
value = "", Group, REG_SZ, "SCSI Miniport"
value = "", Start, REG_DWORD, 0
value = "", Type, REG_DWORD, 1

and add PCI\CC_010601 to iaAHCI.inf,
test, if you can delete all the other entries for example PCI\VEN_8086&DEV_A282&CC_0106

I am not sure about all syntax in TXTSETUP.OEM and *.inf
because of this some handwork is needed.
#182 Mov AX, 0xDEAD
Zitat von ⇗ XPLives im Beitrag ¶ #175
One day Intel USB 4.0 will arrive and the same USB installers will fail or the authors of these USB installers no longer care about XP.Most of these USB installer tools don't even work inside XP anymore and require Windows 7+ to create the USB install image

maybe is it time to check how work these installers ? they will still work with usb 4 and usb 5 too and still installing xp.

Zitat von ⇗ XPLives im Beitrag ¶ #175
https://www.win-raid.com/t4092f45-Guide-How-to-install-Windows-XP-OS-on-Modern-Hardware.html

#1 -- Internal SATA optical disc drive - CD, DVD, or Blu-ray
#2 -- CD-RW disc for nLite slipstreaming of the SATA AHCI driver into your XP burned install disc
#4 -- Desktop motherboard with a rear PS/2 physical port
#5 -- PS/2 keyboard

you are crazy, for installing window xp need nothing of these, why people buy that ?

p.s. want ide compatibilty bios mod on ahci-only hardware (skylake+)? good luck )
#183 Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #181
May be,
all AHCI drivers are the same.
In this case, make try with generic number for AHCI in TXTSETUP.OEM

[HardwareIds.SCSI.iaAHCI]
id = "PCI\CC_010601","iaStor"


pci\cc_010601(or pci\cc_0106) should work as uni solution, but probably only for intel chipsets because iastor.sys
#184 XPLives ⇗ @Mov AX, 0xDEAD

These optical drives have more uses than you can imagine.  They buy it so they can play and rip their Blu-ray movies in XP.  Not just for installing the OS.

Can be used to install any older OS the proper way not just XP, Vista, Windows 7, Windows 10 on pre USB systems with SATA only or IDE interface.

PS/2 keyboard - because it works on all Operating Systems and that is all you need to install every OS.  You can even use a PS/2 to USB Keyboard adapter which works the same.

In my case I use a 5 Pin DIN to PS/2 to PS/2 port adapter with an old IBM AT keyboard.  It doesn't matter if it is 5 PIN DIN or USB as long as it is connected to the PS/2 port.

No need to deal with USB ports not working with the USB mouse properly.  This is especially true with using Windows 98 when the cursor cannot be controlled.

These tools should be needed for any user who is new to XP to complete it.   It's more straightforward and if you can't afford these tools then maybe you should create your own thread page to help assist for a pure USB XP install method that you believe in so much.  Write up the best installer program and version#, download link to that program that works inside Windows 98SE or 2000 and can create a USB XP installer from scratch to any USB device.

From what I have seen and tested most only work in Windows 7 or Windows 10 to use this program.  The older XP versions might corrupt the USB flash drive in my own tests as I lost a 4GB flash drive that cannot be restored or worse accidentally corrupt another USB external drive that is still connected in my case a 2TB external USB drive.  So if you can guarantee a fool proof USB XP Installer program that can work inside Windows 2000, XP, and 2003 and not need Vista, Windows 7, or 8.X, or 10 to generate the full USB XP OS installer I want you to write it up in a new thread with all the details so you can take credit for it.  That way if any problems you can answer how to fix it since you have more experience dealing with USB installers than most of us.  I found many problems which I listed above so this will be helpful if your statement is that strong on this you should create it.


Other USB problems:
How would you install XP onto a laptop missing USB ports or all defective?

How would you install XP on a SkyLake, Kaby Lake, or Coffee Lake Laptop or tablet with just 1 USB port that does NOT have USB 2.0 ports but only Intel USB 3.0 ports?



SATA IDE Compatibility mode:
Z87 and Z97 support this SATA IDE Compatibility mode.  This is not the IDE 40 Pin controller on the motherboard.  You are using SATA only ports and SATA storage devices.
I hope you understand this and if you do if you are saying it is not possible to transfer and copy the BIOS storage module from one generation over to Z170 BIOS to do a test then explain why it would not work or why not even try to see what happens?  I can do the testing since I have two BIOS sockets to attempt any BIOS testing or if you can show how to transfer the Storage Module from one chipset to another I will attempt the testing.

Is it more than just the code that has been removed in SkyLake+?

Why does this still work on Z87 and Z97 and not in Z170 if you understand it well enough to explain in more detail than good luck response which isn't helpful?
#185 XPLives Dietmar,
I have tried that method (cc_010601) in an earlier test a few weeks ago it does not work before I stopped because it is a "Compatible IDs".

Mov AX, 0xDEAD
( pci\cc_0106) should work as uni solution, but probably only for intel chipsets because iastor.sys

This method ( pci\cc_0106) I also tried this a few weeks ago before stopping the tests to emulate how Vista method works but also failed.
The reason is CC_0106 is not visible to XP because it is a "Compatible IDs" and the driver only sees "Hardware IDs" in XP during boot.
Since Hardware IDs are not common among all the Intel SATA Controllers you cannot do a global detection.
That is why Vista can do it natively since CC_106 exists on all Intel SATA controllers and Vista+ is programmed to accept "Compatible IDs" not just "Hardware IDs".  If there is a way to brute force XP code to accept "Compatible IDs" for Boot storage device than this will work for all Intel SATA and can be made for all AMD SATA as well.
#186 Mov AX, 0xDEAD
Zitat von ⇗ XPLives im Beitrag ¶ #184
@Mov AX, 0xDEAD
Is it more than just the code that has been removed in SkyLake+?

Why does this still work on Z87 and Z97 and not in Z170 if you understand it well enough to explain in more detail than good luck response which isn't helpful?


Intel's PCH specification on 100+ series chipsets:
The PCH SATA controller support two modes of operation, AHCI mode using memory
space and RAID mode. The PCH SATA controller no longer supports IDE legacy mode
using I/O space. Therefore, AHCI software is required.



IviBridge/SandyBridge/etc:
Standard ATA Emulation
The PCH contains a set of registers that shadow the contents of the legacy IDE
registers. The behavior of the Command and Control Block registers, PIO, and DMA
data transfers, resets, and interrupts are all emulated.
#187 Mov AX, 0xDEAD
Zitat von ⇗ XPLives im Beitrag ¶ #185

This method ( pci\cc_0106) I also tried this a few weeks ago before stopping the tests to emulate how Vista method works but also failed.
The reason is CC_0106 is not visible to XP because it is a "Compatible IDs" and the driver only sees "Hardware IDs" in XP during boot.
Since Hardware IDs are not common among all the Intel SATA Controllers you cannot do a global detection.
That is why Vista can do it natively since CC_106 exists on all Intel SATA controllers and Vista+ is programmed to accept "Compatible IDs" not just "Hardware IDs".  If there is a way to brute force XP code to accept "Compatible IDs" for Boot storage device than this will work for all Intel SATA and can be made for all AMD SATA as well.

one of compatible id for intel works in xp without any hacks, my setup in TXTSETUP.SIF (windows xp sp1 32 bit):
[HardwareIdsDatabase]
PCI\VEN_8086&CC_0104 = "IaStor"
PCI\VEN_8086&CC_0106 = "IaStor"
tested on ivybridge and skylake, all works well, setup phase see all disks
#188 diderius6 I noticed,
when you set in Bios, Acpi FACP table flag
HARDWARE_REDUCED_ACPI to 1 (enable)

Win 10 64 bit cries on next start: Problems with Acpi..

So this simple means, Win 10 is more prickly
with Acpi than XP, brrr..
Dietmar

Edit: When I set back this flag to 0,
all is ok and Win 10 starts normal with the modded Bios
from Elmor. So I have XP 32 bit with full Acpi (16 threads), sound, USB 3.1 via Asmedia, booting from Samsung 970 pro nvme.
And Win 10 64 bit on the same compi with 9900k cpu.
3d mark 2001 is more than 25 % faster on XP than on win10^^.
Prime95 shows on XP with 16 threads after 20 min 54 degrees max Temperature
and on Win10  55 degrees. Hm, for what I need win10?!
#189 XPLives ⇗ @Mov AX, 0xDEAD
Where are you placing your TXTSETUP.SIF?  Are you using this only for new XP setup?

I have a similar one for installing Z68, Z170, Z370.  This only could be used for installing XP onto one machine but not migrate.

After XP is installed in SATA AHCI on SkyLake you then move the hard drive / SSD to the Ivy Bridge computer and try booting in SATA AHCI mode it should do BSOD 7B or a Reboot Loop.

Try testing that and you will find it does not do universal SATA AHCI detection moving the drive with XP already installed one one system with a different chipset.

That is why IDE or SATA IDE Mode will work between multiple chipsets without a problem.
#190 XPLives Dietmar, Hmmm... I wonder if Windows 10's newer updates causing it?  Try installing the first Windows 10 release?
Anniversary and later versions known to break compatibility with older programs.  Spectre and Meltdown patch also.
My SkyLake worked with Windows 10 Anniversary Edition with ACPI, with XP - NO ACPI, Vista, and Windows 7 with ACPI.
#191 Mov AX, 0xDEAD
Zitat von ⇗ XPLives im Beitrag ¶ #189
This only could be used for installing XP onto one machine but not migrate.
After XP is installed in SATA AHCI on SkyLake you then move the hard drive / SSD to the Ivy Bridge computer and try booting in SATA AHCI mode it should do BSOD 7B or a Reboot Loop.


why you need install first on skylake and then copy on ivy ? why not install on ivy natively ?
there are too many diff chipsets (non-intel including), where os will get bsod
#192 Mov AX, 0xDEAD
Zitat von ⇗ XPLives im Beitrag ¶ #189
@Mov AX, 0xDEAD
Where are you placing your TXTSETUP.SIF?  Are you using this only for new XP setup?


for texmode setup phase
for gui phase need usual *.inf
#193 Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #188

3d mark 2001 is more than 25 % faster on XP than on win10^^.


try post 2001 games, more fps in vista+, starcraft 2, dishonored...
#194 diderius6 ⇗ @Mov AX, 0xDEAD

"boot acpi table patcher like chameleon&clover"

I heard some times ago about a tool for XP,
for to test Acpi compability for new Bios.
This would be really nice, to have a test tool for Acpi compability XP,
like Qemu,
Dietmar

PS: Interesting would be, if DSDT alone makes or destroys Acpi compability in XP.
I come to the idea, because I found in DSDT for the Apex IX board an extra entry,
when I compare it with the nearly identic DSDT table for the Asrock k6 board.


Apex IX

            Method (_CRS, 0, Serialized)  // _CRS: Current Resource Settings
{
Local0 = GPCL ()
If ((OSYS >= 0x07D9))
{
CreateWordField (BUF0, \_SB.PCI0._Y00._MAX, PBMX) // _MAX: Maximum Base Address
PBMX = ((Local0 >> 0x14) - 0x02)
CreateWordField (BUF0, \_SB.PCI0._Y00._LEN, PBLN) // _LEN: Length
PBLN = ((Local0 >> 0x14) - One)
}
Else
{
CreateWordField (XBUF, \_SB.PCI0._Y01._MAX, PBM2) // _MAX: Maximum Base Address
PBM2 = ((Local0 >> 0x14) - 0x02)
CreateWordField (XBUF, \_SB.PCI0._Y01._LEN, PBL2) // _LEN: Length
PBL2 = ((Local0 >> 0x14) - One)
}


Asrock k6
            Method (_CRS, 0, Serialized)  // _CRS: Current Resource Settings
{
Local0 = GPCL ()
CreateWordField (BUF0, \_SB.PCI0._Y00._MAX, PBMX) // _MAX: Maximum Base Address
PBMX = ((Local0 >> 0x14) - 0x02)
CreateWordField (BUF0, \_SB.PCI0._Y00._LEN, PBLN) // _LEN: Length
PBLN = ((Local0 >> 0x14) - One)
#195 diderius6 I tried to generate an XP friendly DSDT table,
with the disassembler command from a version of iasl from 2012.

iasl -2 -d 320.raw

But then I get a strange message

"Could not parse ACPI tables, AE_ALREADY_EXISTS"

This looks, if there is the belonging *.dsl file,
but it isnt
Dietmar

 

Page 14

#196 diderius6 Boottime is 5 sec
for XP SP3 on Asus Apex X
have a nice day
Dietmar

PS: I install XP direct from CD to the nvme disk:))!



diderius6 has attached images to this post  ⇗ XPSP3Acpiboot970pro.jpg
#197 Mov AX, 0xDEAD
Zitat
CPU in C0 power state 50-60% of time even without cpu load, unresolved


I think because cpu0cst acpi table declare only MWAIT way to halt processor, old HLT doesnt work
If i disable mwait cpu's support in bios, even win7 cannot enter c1+ states

#198 diderius6 Interesting would be also,
if it is possible to build an generic DSDT table for XP SP3,
with minimal entries,
Dietmar
#199 Mov AX, 0xDEAD i've played with win8 and power states:
cpu C1 - works
acpi C2 - broken
acpi C3 - broken
cpu MWAIT - works (enter only C7s and C10)

seems _CST/_OSC/xxx tables contain only mwait correct states, remains are broken.

p.s. very simple implementation of mwait in Haiku OS:

 
int dummy;
monitor(&dummy, 0, 0);
mwait(sCStates[state].fCode | subState, MWAIT_INTERRUPTS_BREAK);


where "state" is selected from C1 to C10

#200 Mov AX, 0xDEAD
Zitat
CPU in C0 power state 50-60% of time even without cpu load, unresolved


Resolved, now C0 is about zero
Solution: forced to use C1 idle state only, need custom intelppm.sys

#201 diderius6 ⇗ @Mov AX, 0xDEAD

I read from Acpi specification,
that only C0 and C1 have to be implemented.
Have you tried to change energy-options in XP and look what happens?
Some time ago I hear, that when you chose there "laptop",
that XP installed less devices via Acpi.

Still I am looking for a minimal DSDT for XP.
Is it enough, to change all Acpi tables from one XP-Acpi friendly bios Bios to another Acpi unfriendly Bios?
The most important question for the beginning is, where stays all the information about numerating
and setting the PCI devices, that are called via acpi. And what is the minimal list for those Acpi-pci devices.
Will this work? May be yes, because without any Acpi this tables are ignored.

Dietmar

PS: Here are the installations files for nvme.
Integrate them in XP installations CD via nlite.
After txt setup you have to copy storport.sys to windows\system32\drivers,
because you will see BSOD 0x7B, because XP does not copy this file for strange reasons during
install.
Until now, I do not see anyone, who succeed with this in XP SP3 32 bit, only me.
But it works!
You also can install them via *.inf on running XP, dont forget to copy storport.sys to windows\system32\drivers
and at once you will see your nvme disk, no matter what brand.



diderius6 has attached files to this post
#202 diderius6 Hi,
I just noticed, that acpi.sys in XP posready 2009
is 5.2.3790.1830, which means win2003 version.
There are big differences between XP and win2003 in Acpi,
for example win2003 does not look at the registry for the Acpi tables
but XP does
Dietmar

EDIT: Install of XP posready 2009 on the Asrock k6 board gives
the same BSOD 0xA5 on the modded Bios, like real XP SP3.
So, something is not ok with the Acpi tables in settings PCI resources
in my modded DSDT table.
#203 Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #201
@Mov AX, 0xDEAD
I read from Acpi specification,
that only C0 and C1 have to be implemented.
Have you tried to change energy-options in XP and look what happens?
Some time ago I hear, that when you chose there "laptop", that XP installed less devices via Acpi.


C2&C3 also implemented
c1 is two cpu instructions "sti then halt", с2, с3 is external acpi controlled logic.
energy options affect speedshift/c1e, so cpu will down clock or not, i dont see any other changes

p.s. again, we have broken acpi hardware/bios support in skylake+
#204 Mov AX, 0xDEAD i've played with 2nd variant, cpu and package enter more deeper states then c1:
C1->C1
broken acpi C2->mwait C7s
broken acpi C3->mwait C10

Now power states transitions look like win7+ )
#205 Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #202
Hi,
I just noticed, that acpi.sys in XP posready 2009
is 5.2.3790.1830, which means win2003 version.
There are big differences between XP and win2003 in Acpi,
for example win2003 does not look at the registry for the Acpi tables
but XP does


it is still acpi 1.1b implemenation and 32 bit integers, no big diff for me
#206 diderius6 I just noticed,
that the driver on the posready 2009 CD acpi.sys is 5.2.3790.1830 which is really different
but after install it shows, that it is changed to 100% to the acpi.sys driver from XP SP3 5.1.2600.5512
Dietmar
#207 diderius6 Hi,
I extracted all 23 (!) Acpi tables via rw-everything from the XP-friendly Bios
from Elmor from the Asus Apex X motherboard.
The same I will do for the Acpi tables from the asrock fatal1ty z370 gaming k6 board.
First then I make a short compare with each other.
After this I replace one by one of the tables from the Apex board to the Bios of the Asrock
via Uefi tool.
Dont know, if this has a chance to work for XP Acpi on the Asrock board,
Dietmar
#208 Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #207
Hi,
I extracted all 23 (!) Acpi tables via rw-everything from the XP-friendly Bios
from Elmor from the Asus Apex X motherboard.

I saw this bios, it is unusual, for diff OSes it create diff resource templates (XBUF vs BUF0) and rename fields, for winxp it select template without QWORDmemory region
#209 Mov AX, 0xDEAD Dietmar, can you check c-states statistics on your cpu/mb combination ?

p.s. i only know "throttlestop utility" to display such info
#210 diderius6 I think, the change of all the Acpi tables on the Asrock board
is not a good idea. 23 tables for Asus Apex and 26 tables for Asrock.
Because there is no flash back, you can desolder the chip,
when something goes wrong.
Desoldering would be not a problem,
I have this Bios chip here in fresh.
But I do not succeed to make an backup from all content of this Bios chip from Asrock
Dietmar

PS: I try "throttlestop utility" on the Apex X xp-friendly board.

 

Page 15

#211 diderius6 I do not find a working version of throttlestop for 9900k under XP.
The last version 8.4.8.0, which works for XP, shows: cpu not supported
Dietmar

EDIT: I found vers. 8.505.
The exe file I copied to folder of version 8.7
and voila, works:)).



diderius6 has attached images to this post  ⇗ throttle1.jpg  ⇗ throttle2.jpg
#212 diderius6 I try a new way:)).
The error message from Windbg told,
that there is a ressource conflict between
PCI list via Acpi (somewhere in CRS_) and the list in Bios (without any acpi?) E820.
Small hack in acpi.sys using Ida pro looking for the string "ACPIRangeValidatePciResources"
and when it is not a real conflict, then this is all
Dietmar
#213 diderius6 E820 from Apex board
Range       Address             Length          Type
0 0000000000000000 000000000009C400 1:Available
1 000000000009C400 0000000000003C00 2:Reserved
2 00000000000E0000 0000000000020000 2:Reserved
3 0000000000100000 000000008004E000 1:Available
4 000000008014E000 0000000000001000 4:ACPI NVS
5 000000008014F000 0000000000001000 2:Reserved
6 0000000080150000 000000000CCF8000 1:Available
7 000000008CE48000 00000000018EA000 2:Reserved
8 000000008E732000 0000000000043000 3:ACPI Reclaim
9 000000008E775000 00000000003F2000 4:ACPI NVS
10 000000008EB67000 0000000000C3B000 2:Reserved
11 000000008F7A2000 000000000005E000 1:Available
12 0000000100000000 000000076F000000 1:Available
13 000000008F800000 0000000000800000 2:Reserved
14 00000000E0000000 0000000010000000 2:Reserved
15 00000000FE000000 0000000000011000 2:Reserved
16 00000000FEC00000 0000000000001000 2:Reserved
17 00000000FED00000 0000000000001000 2:Reserved
18 00000000FEE00000 0000000000001000 2:Reserved
19 00000000FF000000 0000000001000000 2:Reserved

E820 from the asrock board
 Range       Address             Length          Type
0 0000000000000000 000000000009C400 1:Available
1 000000000009C400 0000000000003C00 2:Reserved
2 00000000000E0000 0000000000020000 2:Reserved
3 0000000000100000 0000000076873000 1:Available
4 0000000076973000 0000000000001000 4:ACPI NVS
5 0000000076974000 0000000000001000 2:Reserved
6 0000000076975000 0000000005AEF000 1:Available
7 000000007C464000 0000000001A1A000 2:Reserved
8 000000007DE7E000 0000000000132000 1:Available
9 000000007DFB0000 00000000003D5000 4:ACPI NVS
10 000000007E385000 0000000000C79000 2:Reserved
11 000000007EFFE000 0000000000001000 1:Available
12 0000000100000000 000000076F000000 1:Available
13 000000007EFFF000 0000000011001000 2:Reserved
14 00000000E0000000 0000000010000000 2:Reserved
15 00000000FE000000 0000000000011000 2:Reserved
16 00000000FEC00000 0000000000001000 2:Reserved
17 00000000FED00000 0000000000001000 2:Reserved
18 00000000FEE00000 0000000000001000 2:Reserved
19 00000000FF000000 0000000001000000 2:Reserved

Error on Asrock board at 89a839d0, The ACPI Extension for the PCI bus, Pointer to E820 list

Fatal System Error: 0x000000a5
(0x00000002,0x89A839D0,0xE134F008,0x898ADCA8)
#214 Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #211
I do not find a working version of throttlestop for 9900k under XP.
and voila, works:)).


"works by default"
very interesting why on gigabyte h110 acpi c2&c3 is broken in any OS
#215 Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #212

Small hack in acpi.sys using Ida pro looking for the string "ACPIRangeValidatePciResources"
and when it is not a real conflict, then this is all

yes , it is possible, but better to step debug all ACPIRangeValidatePciResources, proc in not big
hint: probably cmp al,1 - compare by resource type,  2 - irq 3 - mem 1 - i/o port

E820 is just list of mem regions free/reserved, i dont understand how this list linked to pci mem resources or acpi mem resources
e820 reported by bios int15 to windows loader
acpi mem resources reported by enumeratung all devices in acpi code and call "_crs"  to each
pci mem resources reported by enumerating all devices on pci bus (but only if driver loaded and device enabled i think)
#216 diderius6 I think, if a region in the list of e820 is marked as reserved
and Acpi wants to put a pci device there,
exact this crash 0xA5, 0x02,.. happens,
typedef struct _ACPI_BIOS_MULTI_NODE {
PHYSICAL_ADDRESS RsdtAddress; // 64-bit physical address of RSDT
ULONGLONG Count;
ACPI_E820_ENTRY E820Entry[1];
} ACPI_BIOS_MULTI_NODE, *PACPI_BIOS_MULTI_NODE;

Dietmar

PS: Is it possible to edit the e820 list by hand?

EDIT: It seems, that acpi.sys from XP SP3 only looks for
RSDT, DSDT, FADT, FACS tables.

EDIT2: I found, that the e820 table in win7 is a little bit different from that in XP.
#217 diderius6 The only difference in the allocation of memory via _crs
between the Apex and the Asrock Bios is,
that on the Apex board the declaration for high memory (64 bit) is missed for OSYS <0x07D9
(XP, Vista)
                QWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, NonCacheable, ReadWrite,
0x0000000000000000, // Granularity
0x0000000000010000, // Range Minimum
0x000000000001FFFF, // Range Maximum
0x0000000000000000, // Translation Offset
0x0000000000010000, // Length
#218 diderius6 Hm, may be this is important:
Via this way I think, XP comes in contact with the reserved word CreateQWordField,
because the if else construction is not correct in the Bios from Gigabyte and Asrock,
only on Apex board:
            Method (_CRS, 0, Serialized)  // _CRS: Current Resource Settings
{
Local0 = GPCL ()
CreateWordField (BUF0, \_SB.PCI0._Y00._MAX, PBMX) // _MAX: Maximum Base Address
PBMX = ((Local0 >> 0x14) - 0x02)
CreateWordField (BUF0, \_SB.PCI0._Y00._LEN, PBLN) // _LEN: Length
PBLN = ((Local0 >> 0x14) - One)
If ((OSYS >= 0x07D6))
{
If ((M64L == Zero))
{
CreateQWordField (BUF0, \_SB.PCI0._Y0F._LEN, MSLN) // _LEN: Length
MSLN = Zero
}
Else
{
CreateQWordField (BUF0, \_SB.PCI0._Y0F._LEN, M2LN) // _LEN: Length
CreateQWordField (BUF0, \_SB.PCI0._Y0F._MIN, M2MN) // _MIN: Minimum Base Address
CreateQWordField (BUF0, \_SB.PCI0._Y0F._MAX, M2MX) // _MAX: Maximum Base Address
M2LN = M64L /* External reference */
M2MN = M64B /* External reference */
M2MX = ((M2MN + M2LN) - One)
}
}

Return (BUF0) /* \_SB_.PCI0.BUF0 */
}
#219 Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #216
PS: Is it possible to edit the e820 list by hand?


no, list generated by int15h handler in 16bit asm code
but you can compare parsing result in xp and vista+ acpi.sys (ACPIRangeValidatePciResources)
seems in xp very strict checking
#220 diderius6 May be I found the reason, why they introduce xbuf on the Apex board:
The word QWordMemory is a reserved word.
And it stands in buf0 but not in xbuf
so XP can meet it on 64 bit Bios
Dietmar
#221 Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #218
Hm, may be this is important:
Via this way I think, XP comes in contact with the reserved word CreateQWordField,
because the if else construction is not correct in the Bios from Gigabyte and Asrock,
only on Apex board:
 
                    If ((OSYS >= 0x07D6))
{
If ((M64L == Zero))
{
CreateQWordField (BUF0, \_SB.PCI0._Y0F._LEN, MSLN) // _LEN: Length
MSLN = Zero


maybe this is problem too, on ivy this part is right:
 
 If (((MM64 == Zero) || (OSYS <= 0x07D3)))
{
CreateDWordField (BUF0, \_SB.PCI0._Y0F._LEN, MSLN) // _LEN: Length
MSLN = Zero
}


M64L/MM64 is field meaning 64-bit OS or 64 access
|| - logical OR
so on ivy _Y0F under xp is still qword template, but we create only DWORD field

on skylake+ under xp acpi skip declaring lengh of resource because "If ((OSYS >= 0x07D6))" skipped

#222 Mov AX, 0xDEAD _yof is empty resource, even on win7 64, so lengh is always zero and this is not source of problem:
#223 diderius6 Hi,
I found with Ida pro and the acpi.pdb original file for my acpi.sys
ACPIRangeValidatePciResources(x,x)    .text 0001DF92 0000013A R . . . B T . 


.text:0001DF92 ; ¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦ S U B R O U T I N E ¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦
.text:0001DF92
.text:0001DF92 ; Attributes: bp-based frame
.text:0001DF92
.text:0001DF92 ; int __stdcall ACPIRangeValidatePciResources(int,ULONG_PTR BugCheckParameter2,int)
.text:0001DF92 _ACPIRangeValidatePciResources@8 proc near
.text:0001DF92 ; CODE XREF: ACPIBusIrpQueryResources(x,x)+10D p
.text:0001DF92 ; ACPIBusIrpQueryResourceRequirements(x,x)+10B p ...
.text:0001DF92
.text:0001DF92 var_18 = dword ptr -18h
.text:0001DF92 BugCheckParameter4= dword ptr -14h
.text:0001DF92 var_10 = dword ptr -10h
.text:0001DF92 var_C = dword ptr -0Ch
.text:0001DF92 var_8 = dword ptr -8
.text:0001DF92 var_1 = byte ptr -1
.text:0001DF92 BugCheckParameter2= dword ptr 8
.text:0001DF92 arg_8 = dword ptr 0Ch
.text:0001DF92
.text:0001DF92 mov edi, edi
.text:0001DF94 push ebp
.text:0001DF95 mov ebp, esp
.text:0001DF97 sub esp, 18h
.text:0001DF9A push ebx
.text:0001DF9B mov ebx, [ebp+arg_8]
.text:0001DF9E push esi
.text:0001DF9F xor esi, esi
.text:0001DFA1 cmp ebx, esi
.text:0001DFA3 mov [ebp+var_8], esi
.text:0001DFA6 jnz short loc_1DFB0
.text:0001DFA8 push esi
.text:0001DFA9 push 2
.text:0001DFAB jmp loc_1E0AB
.text:0001DFB0 ; ---------------------------------------------------------------------------
.text:0001DFB0
.text:0001DFB0 loc_1DFB0: ; CODE XREF: ACPIRangeValidatePciResources(x,x)+14 j
.text:0001DFB0 lea eax, [ebp+var_18]
.text:0001DFB3 push eax
.text:0001DFB4 call _OSReadAcpiConfigurationData@4 ; OSReadAcpiConfigurationData(x)
.text:0001DFB9 test eax, eax
.text:0001DFBB jl loc_1E0C6
.text:0001DFC1 mov eax, [ebp+var_18]
.text:0001DFC4 add eax, 28h
.text:0001DFC7 cmp [ebx+1Ch], esi
.text:0001DFCA push edi
.text:0001DFCB mov [ebp+BugCheckParameter4], eax
.text:0001DFCE lea edi, [ebx+20h]
.text:0001DFD1 mov [ebp+var_10], esi
.text:0001DFD4 jbe loc_1E0BB
.text:0001DFDA
.text:0001DFDA loc_1DFDA: ; CODE XREF: ACPIRangeValidatePciResources(x,x)+10A j
.text:0001DFDA cmp [edi+4], esi
.text:0001DFDD mov [ebp+var_C], esi
.text:0001DFE0 jbe loc_1E089
.text:0001DFE6 lea esi, [edi+14h]
.text:0001DFE9
.text:0001DFE9 loc_1DFE9: ; CODE XREF: ACPIRangeValidatePciResources(x,x)+EF j
.text:0001DFE9 mov al, [esi-0Bh]
.text:0001DFEC cmp al, 1
.text:0001DFEE mov [ebp+var_1], al
.text:0001DFF1 jz short loc_1DFF7
.text:0001DFF3 cmp al, 3
.text:0001DFF5 jnz short loc_1E03E
.text:0001DFF7
.text:0001DFF7 loc_1DFF7: ; CODE XREF: ACPIRangeValidatePciResources(x,x)+5F j
.text:0001DFF7 mov eax, [esi+0Ch]
.text:0001DFFA sub eax, [esi+4]
.text:0001DFFD mov ecx, [esi+10h]
.text:0001E000
.text:0001E000 loc_1E000: ; DATA XREF: ACPIBuildThermalZoneExtension(x,x,x)+163↑o
.text:0001E000 ; ACPIDispatchAddDevice(x,x)+16D↑o
.text:0001E000 sbb ecx, [esi+8]
.text:0001E003 mov edx, [esi-4]
.text:0001E006 add eax, 1
.text:0001E009 adc ecx, 0
.text:0001E00C xor ebx, ebx
.text:0001E00E cmp eax, edx
.text:0001E010 jnz short loc_1E016
.text:0001E012 cmp ecx, ebx
.text:0001E014 jz short loc_1E01C
.text:0001E016
.text:0001E016 loc_1E016: ; CODE XREF: ACPIRangeValidatePciResources(x,x)+7E j
.text:0001E016 inc [ebp+var_8]
.text:0001E019 mov [esi-4], eax
.text:0001E01C
.text:0001E01C loc_1E01C: ; CODE XREF: ACPIRangeValidatePciResources(x,x)+82 j
.text:0001E01C cmp dword ptr [esi], 0
.text:0001E01F jnz short loc_1E02A
.text:0001E021 inc [ebp+var_8]
.text:0001E024 mov dword ptr [esi], 1
.text:0001E02A
.text:0001E02A loc_1E02A: ; CODE XREF: ACPIRangeValidatePciResources(x,x)+8D j
.text:0001E02A mov eax, [esi]
.text:0001E02C mov ebx, [ebp+arg_8]
.text:0001E02F dec eax
.text:0001E030 test [esi+4], eax
.text:0001E033 jz short loc_1E03E
.text:0001E035 inc [ebp+var_8]
.text:0001E038 mov dword ptr [esi], 1
.text:0001E03E
.text:0001E03E loc_1E03E: ; CODE XREF: ACPIRangeValidatePciResources(x,x)+63 j
.text:0001E03E ; ACPIRangeValidatePciResources(x,x)+A1 j
.text:0001E03E cmp [ebp+var_1], 6
.text:0001E042 jnz short loc_1E05F
.text:0001E044 mov eax, [esi+4]
.text:0001E047 sub eax, [esi]
.text:0001E049 mov ecx, [esi-4]
.text:0001E04C inc eax
.text:0001E04D xor edx, edx
.text:0001E04F cmp eax, ecx
.text:0001E051 jnz short loc_1E059
.text:0001E053 xor ecx, ecx
.text:0001E055 cmp ecx, edx
.text:0001E057 jz short loc_1E05F
.text:0001E059
.text:0001E059 loc_1E059: ; CODE XREF: ACPIRangeValidatePciResources(x,x)+BF j
.text:0001E059 inc [ebp+var_8]
.text:0001E05C mov [esi-4], eax
.text:0001E05F
.text:0001E05F loc_1E05F: ; CODE XREF: ACPIRangeValidatePciResources(x,x)+B0 j
.text:0001E05F ; ACPIRangeValidatePciResources(x,x)+C5 j
.text:0001E05F cmp [ebp+var_1], 3
.text:0001E063 jnz short loc_1E075
.text:0001E065 lea eax, [ebp+var_8]
.text:0001E068 push eax
.text:0001E069 push [ebp+BugCheckParameter4]
.text:0001E06C push [ebp+var_C]
.text:0001E06F push edi
.text:0001E070 call _ACPIRangeValidatePciMemoryResource@16 ; ACPIRangeValidatePciMemoryResource(x,x,x,x)
.text:0001E075
.text:0001E075 loc_1E075: ; CODE XREF: ACPIRangeValidatePciResources(x,x)+D1 j
.text:0001E075 inc [ebp+var_C]
.text:0001E078 mov eax, [ebp+var_C]
.text:0001E07B add esi, 20h
.text:0001E07E cmp eax, [edi+4]
.text:0001E081 jb loc_1DFE9
.text:0001E087 xor esi, esi
.text:0001E089
.text:0001E089 loc_1E089: ; CODE XREF: ACPIRangeValidatePciResources(x,x)+4E j
.text:0001E089 mov eax, [edi+4]
.text:0001E08C shl eax, 5
.text:0001E08F inc [ebp+var_10]
.text:0001E092 lea edi, [edi+eax+8]
.text:0001E096 mov eax, [ebp+var_10]
.text:0001E099 cmp eax, [ebx+1Ch]
.text:0001E09C jb loc_1DFDA
.text:0001E0A2 cmp [ebp+var_8], esi
.text:0001E0A5 jz short loc_1E0BB
.text:0001E0A7 push [ebp+BugCheckParameter4] ; BugCheckParameter4
.text:0001E0AA push ebx ; BugCheckParameter3
.text:0001E0AB
.text:0001E0AB loc_1E0AB: ; CODE XREF: ACPIRangeValidatePciResources(x,x)+19 j
.text:0001E0AB push [ebp+BugCheckParameter2] ; BugCheckParameter2
.text:0001E0AE push 2 ; BugCheckParameter1
.text:0001E0B0 push 0A5h ; BugCheckCode
.text:0001E0B5 call ds:__imp__KeBugCheckEx@20 ; __declspec(dllimport) KeBugCheckEx(x,x,x,x,x)
.text:0001E0BB
.text:0001E0BB loc_1E0BB: ; CODE XREF: ACPIRangeValidatePciResources(x,x)+42 j
.text:0001E0BB ; ACPIRangeValidatePciResources(x,x)+113 j
.text:0001E0BB push esi
.text:0001E0BC push [ebp+var_18]
.text:0001E0BF call ds:__imp__ExFreePoolWithTag@8 ; __declspec(dllimport) ExFreePoolWithTag(x,x)
.text:0001E0C5 pop edi
.text:0001E0C6
.text:0001E0C6 loc_1E0C6: ; CODE XREF: ACPIRangeValidatePciResources(x,x)+29 j
.text:0001E0C6 pop esi
.text:0001E0C7 pop ebx
.text:0001E0C8 leave
.text:0001E0C9 retn 8
.text:0001E0C9 _ACPIRangeValidatePciResources@8 endp ; sp = 4
.text:0001E0C9
  
#224 Mov AX, 0xDEAD  
cmp [ebp+var_8], esi


this generate resource conflict if mismatch

ps. use Graph view, much better )

#225 diderius6 :-),
how can

cmp [ebp+var_8], esi

be set to be always true

thanks
Dietmar

 

Page 16

#226 diderius6 Just delete this line "cmp [ebp+var_8], esi" and the compi always jump to "loc_1E0BB"?

By the way, interesting, here you can see, how the BSOD 0xA5 is made;)
Dietmar
#227 Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #226
Just delete this line "cmp [ebp+var_8], esi"
and the compi always jump to "loc_1E0BB"?


replace jz(XXh) => jmp (EBh)
#228 diderius6 ⇗ @Mov AX, 0xDEAD
Yesssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssaaaaaaaaaaaaaaaaaaaa::::))))
nice work together;)!
Dietmar



diderius6 has attached images to this post  ⇗ yippppiieee.jpg
#229 diderius6 pm_timer on the Asrock board also does not work,
only with customized hal switching to RTC clock,
Dietmar
#230 diderius6 Hexeditor  75F87414FF75 -> 75F8EB14FF75
#231 diderius6 When you start with the normal, unmodded DSDT table and the new acpi.sys on the Asrock board
you get BSOD

0x000000A5 (0x00000011, 0x00000008, 0xB7B07200, 0x20160422)

Interesting, that the teedriver.sys (yellow questionmark) does not work on the Asrock board under win7.
May be, win7 has also problems with overlapping of Acpi PCI devices and the e820 table.

With XP, no yellow questionmark is now left for all systemdevices, stable, fast, nice:)), lan, sound, nvme, USB3.1, serial com1,
no extra pci-e card
Dietmar

EDIT: I am right: win7 is not able to ACPI Reclaim memory on the Asrock in e820 table, exact as XP. It may be a problem in main Bios.
        The problem are the low numbers in the e820 table in Asrock board       0000000000100000  0000000076873000  1:Available
        but Acpi asks for the same (higher) free memory as on the Apex  board  0000000000100000  000000008004E000  1:Available
#232 diderius6
000000008E732000  0000000000043000  3:ACPI Reclaim  on Apex board in e820

with RSDT start ACPI Table Address 0 : 8E73F160

and for Asrock:
000000007DFB0000  00000000003D5000  4:ACPI NVS on Asrock board in e820
with RSDT start ACPI Table ACPI Table Address 0 : 7DFB0180
which is just mixed NVS <->Reclaim, according to the following:


Type 3 "ACPI reclaimable" memory regions may be used like (and combined with) normal "available RAM" areas as long as you're finished using the ACPI tables that are stored there (i.e. it can be "reclaimed").
Types 2, 4, 5 (reserved, ACPI non-volatile, bad) mark areas that should be avoided when you are allocating physical memory.
#233 diderius6 And another strange thing on the Asrock board:
in RSDT ACPI Table Address   0 :               7DFB0180
in XSDT ACPI Table Address   0 : 000000007DFD9FA8

the other tables in RSDT, XSDT have identic numbers, only number 0 above not.
Nearly the same happens on the Apex board.

EDIT: Correct is always the value in the XSDT table.
#234 diderius6 With the customized acpi.sys I get on the Apex X board with newest Bios 1801

BSOD
0x000000A5 (0x00000011, 0x00000008, 0xB7AB6200, 0x20160422)

nearly the same as on the Asrock board.
This means, Asus gives up XP friendly Bios and now it has to be patched preventing reserved word from Acpi 2.0
exact like the Bios from Gigabyte, Asrock..
Dietmar

PS: I think, that now all DSDT tables can be made XP friendly!

EDIT: When I flash back to the Bios from Elmor for the Apex X board, the compi starts also with the customized acpi.sys, meaning new acpi.sys do nothing bad.
#235 Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #234

BSOD
0x000000A5 (0x00000011, 0x00000008, 0xB7AB6200, 0x20160422)


_ACPIInitializeDDB after calling _AMLILoadDDB
_AMLILoadDDB call "Load" of each table in rsdt list *imho*
#236 diderius6 ⇗ @Mov AX, 0xDEAD
the 3. place in this BSOD is the Pointer to the table that ACPI failed to load.
Is it an generalic message, that any of the table(s) listet in RSDT have an error?
What does "ACPI failed to load" mean: checksum incorrect, table not at this place..
I do not find any related to the adress B7AB6200. In the e820 list this memory space is also not listet.
It is not an overlap in memory,

Dietmar

EDIT: I found with Ida pro, that for example checksum of table from RSDT failed before BSOD A5 (0x11..).
#237 diderius6 waaoh,
full XP Acpi support with newest Bios 1801 on the APEX X board^^.
And this without any modification of Bios,
Dietmar



diderius6 has attached images to this post  ⇗ acpi3.jpg
#238 diderius6 75F87414FF     ->   75F8EB14FF
84C07508FF    ->    84C0EB08FF
59597C21A1   ->    59597C00A1
#239 diderius6 On Compis,
with XP Acpi unfriendly Bios you still have to disable reserved words from Acpi2.0.
I tested this on my Asrock board with the original DSDT table.

Again I get the well known BSOD because of XP unknow words

0x000000A5 (0x00000003, xxxx, 0xС0140001, yyyy)

Dietmar
#240 Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #238

84C07508FF77    ->    84C0EB08FF77
597C21A1FCE6   ->   597C00A1FCE6


you dont know what table generate error and what inside table is problem
skip error handling is not very good solution )

 

Page 17

#241 Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #236
@Mov AX, 0xDEAD
the 3. place in this BSOD is the Pointer to the table that ACPI failed to load.
What does "ACPI failed to load" mean: checksum incorrect, table not at this place..
I do not find any related to the adress B7AB6200. In the e820 list this memory space is also not listet.
EDIT: I found with Ida pro, that for example checksum of table from RSDT failed before BSOD A5 (0x11..).

3rd argument can point to anything in RAM, it just hint to human (or some util) who save full memory dump
checksum error is a5 (0x11, 0x7), you have error with _AMLILoadDDB
maybe it load table, then parse aml codes, then do some else, who knows...
#242 diderius6 ⇗ @Mov AX, 0xDEAD
I think, when you really want to know what is going on,
so to skip the error message is best what you can do,
because now you can use the full set of commands from windbg and amli.

In the real situation.

Before I was not able for example to have a look at the pcitree.
When I see, that on the Asrock board win7 also cant save memory for Acpi,
the situation is there the same as for xp.
What can happen bad? I think, the tables from Acpi have no influence to anything,
can be just deleted if they are loaded once. And the device works or not.
Dietmar

PS: Interesting, if there is a difference in the acpi.sys from xp, vista, win7, win8, win10
or if they are all nearly the same. The Bios is for all of them identic, also for Linux or Macintosh.
Real errors in the Acpi tables will appear everywhere. And xp can live without any Acpi.
All what gives those A5 BSODs here is a conflict between the Acpi in Bios and the "Acpi" from xp.

EDIT: I noticed, that on the Apex X board with the Bios 1801 for Apex X all works better than before with Bios mod from Apex IX.
This belongs to XP and win10, because now nothing is changed in Bios.

EDIT2: Have a look, how stupid acpi.sys looks at this Acpi tables: If the checksum for example is ok..
⇗ https://www.techrepublic.com/article/cor...ws-xp-machines/
#243 diderius6 I noticed a really crazy behavior on the Asrock board (called from rw-everything direct in Bios, because Acpi in XP at this time not works)

Before hack acpi.sys
RSDT:

[000h 0000 4] Signature : "RSDT" [Root System Description Table]
[004h 0004 4] Table Length : 00000078
[008h 0008 1] Revision : 01
[009h 0009 1] Checksum : 46
[00Ah 0010 6] Oem ID : "ALASKA"
[010h 0016 8] Oem Table ID : "A M I "
[018h 0024 4] Oem Revision : 01072009
[01Ch 0028 4] Asl Compiler ID : "MSFT"
[020h 0032 4] Asl Compiler Revision : 00010013

[024h 0036 4] ACPI Table Address 0 : 7DFB0180
[028h 0040 4] ACPI Table Address 1 : 7DFDA0C0
[02Ch 0044 4] ACPI Table Address 2 : 7DFDA128
[030h 0048 4] ACPI Table Address 3 : 7DFDA170
[034h 0052 4] ACPI Table Address 4 : 7DFDA210
[038h 0056 4] ACPI Table Address 5 : 7DFDA250
[03Ch 0060 4] ACPI Table Address 6 : 7DFDA5F8
[040h 0064 4] ACPI Table Address 7 : 7DFDD760
[044h 0068 4] ACPI Table Address 8 : 7DFDD798
[048h 0072 4] ACPI Table Address 9 : 7DFDE450
[04Ch 0076 4] ACPI Table Address 10 : 7DFDE498
[050h 0080 4] ACPI Table Address 11 : 7DFDFC48
[054h 0084 4] ACPI Table Address 12 : 7DFDFF28
[058h 0088 4] ACPI Table Address 13 : 7DFDFFC0
[05Ch 0092 4] ACPI Table Address 14 : 7DFE0108
[060h 0096 4] ACPI Table Address 15 : 7DFE0620
[064h 0100 4] ACPI Table Address 16 : 7DFE0910
[068h 0104 4] ACPI Table Address 17 : 7DFE0948
[06Ch 0108 4] ACPI Table Address 18 : 7DFE09A0
[070h 0112 4] ACPI Table Address 19 : 7DFE0A48
[074h 0116 4] ACPI Table Address 20 : 7DFE0A80

Raw Table Data: Length 120 (0x78)

After hack and XP writes to its registry (means build new (!))
RSDT

Signature "RSDT"
Length 0x00000078 (120)
Revision 0x01 (1)
Checksum 0xF2 (242)
OEM ID "ALASKA"
OEM Table ID "A M I "
OEM Revision 0x01072009 (17244169)
Creator ID "MSFT"
Creator Revision 0x00010013 (65555)
Entry0 0x8E7DC180 (FACP)
Entry1 0x8E8050B0 (APIC)
Entry2 0x8E805118 (FPDT)
Entry3 0x8E805160 (FIDT)
Entry4 0x8E805200 (MCFG)
Entry5 0x8E805240 (SSDT)
Entry6 0x8E8055E8 (SSDT)
Entry7 0x8E808750 (SSDT)
Entry8 0x8E80AD48 (HPET)
Entry9 0x8E80AD80 (SSDT)
Entry10 0x8E80BA38 (UEFI)
Entry11 0x8E80BA80 (SSDT)
Entry12 0x8E80D230 (AAFT)
Entry13 0x8E80D510 (LPIT)
Entry14 0x8E80D5A8 (SSDT)
Entry15 0x8E80D6F0 (SSDT)
Entry16 0x8E80DC08 (SSDT)
Entry17 0x8E80DEF8 (DBGP)
Entry18 0x8E80DF30 (DBG2)
Entry19 0x8E80DF88 (DMAR)
Entry20 0x8E80DFF8 (WSMT)

The checksum changes and all adresses.
This simple means, in the fight of AcpiBios against XPAcpi,
XP ignores Bios and lift all adresses. The relation between tables changes also.

Dietmar

EDIT: This brings me to the idea, how to make any Bios XP Acpi friendly.
         XP tells you, what to do:)!
#244 diderius6 On the Apex Board XP now generates with 3 steps modified acpi.sys also own new RSDT table,
but very similar to RSDT table before, dictated from Bios.
The pm_timer again not works. So this belongs to Bios, how it treats timer,
Dietmar
#245 infuscomus
Zitat von ⇗ diderius6 im Beitrag ¶ #237
waaoh,
full XP Acpi support with newest Bios 1801 on the APEX X board^^.
And this without any modification of Bios,
Dietmar


can this be replicated for other boards?
I'm very interested in this.
#246 diderius6 yes
#247 diderius6 Recept on post 238 works also for
english version of acpi.sys in XP SP3, XP SP2, XP SP1, XP SP0 (gold)
Dietmar
#248 diderius6 8700k needs good cooling,
but in single core speed it is faster
than 9900k
Dietmar



diderius6 has attached images to this post  ⇗ 8700kAcpiAsrockXP.jpg
#249 Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #243

The checksum changes and all adresses.
This simple means, in the fight of AcpiBios against XPAcpi,
XP ignores Bios and lift all adresses. The relation between tables changes also.


I was wrong about _AMLILoadDDB, it load only one table - DSDT !
_AMLILoadDDB-> _LoadDDB->
                                      ->  _ValidateTable
                                      ->  _NewObjOwner
                                      ->  _PushCall
                                      ->  _PushScope
                     -> _SyncLoadDDB
one of subproc probably return nonzero => _AMLILoadDDB generate 0xA5 kernelfault

0x000000A5 (0x00000011, 0x00000008, 0xB7B07200, 0x20160422)
0x20160422 - Compiler Version
0xB7B07200 - pointer to DSDT in memory
#250 infuscomus
Zitat von ⇗ diderius6 im Beitrag ¶ #247
Recept on post 238 works also for
english version of acpi.sys in XP SP3, XP SP2, XP SP1, XP SP0 (gold)
Dietmar


any chance i could get a copy of your acpi.sys mod to try out for myself?
#251 diderius6 Hi, it is german version, so it will not work.
Open with Hexeditor your acpi.sys
and look for Hex values in post 238,
change them
Dietmar

PS: I just succeed to slipstream with nlite boot CD,
     installed XP SP3 direct to nvme disk on Asrock board.
     Nice, full boottime is now 3 sec:)).
#252 infuscomus
Zitat von ⇗ diderius6 im Beitrag ¶ #251
Hi, it is german version, so it will not work.
Open with Hexeditor your acpi.sys
and look for Hex values in post 238,
change them
Dietmar

     


OK, Thanks
#253 diderius6 ⇗ @Mov AX, 0xDEAD

I just see,
that you updated your list for XP.

ACPI BSOD:
.......... 0xA5 (0x03, X, 0xС0140001, Z) ACPI 2.0 syntax, 99% solved (custom acpi.sys)

This acpi.sys I have not seen until now;)

Dietmar
#254 Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #253

This acpi.sys I have not seen until now;)


I dont plan public it yet, sorry
#255 diderius6 I have found already:)
Dietmar

EDIT: With Acpi A5 errors I solved all, only problem is now,
that my bootdevice is gone with BSOD 0x7B, I think most famous BSOD in history:)),
Dietmar

PS: Hm, what can make ACPI with underlying wrong DSDT table (reserved words from Acpi2.0), that the boot device is gone?
The boot device has to be rescued, other is unimportand. One step..
and 0xA5 Acpi error is history.

EDIT2: Oh, it seems to be nice antihack in acpi.sys from Microsoft, against people like me^^.

 

Page 18

#256 diderius6 Hihi, I try other way:))..
#257 diderius6 XP SP3 words acpi
Debug   XOr Wait    ToBCD   Subtract    Store   SizeOf  ShiftRight  ShiftLeft   
RefOf   B   Package OSI Or  ObjectType  Not NOr NAnd    Multiply    
CBCBCC  Match   LOr LNot    LLess   LGreater    LEqual  CC  LAnd    
Index   Increment   FromBCD FindSetRightBit CS  FindSetLeftBit  CCSS    
Divide  DerefOf Decrement   sS  CondRefOf   Concatenate Buffer  And CCS 
Add SW  Acquire While   Unload  Stall   Sleep   Signal  Return  Reset   S
   Release SC  Notify  NoOp    NS  Load    C   If  BDC Fatal   Else    
BreakPoint  Break   NBDB    NBW PowerResource   NBCC    OperationRegion 
Mutex   Method  NNB IndexField  NB  Field   Event   Device  
CreateWordField CCCN    CreateField CreateDWordField    CreateByteField 
CCN CreateBitField  NNCB    BankField   N   Scope   NO  Name    NN  Alias
  

Vista words acpi
Debug   XOr Wait    ToString    ToInteger   ToHexString ToDecimalString ToBuffer
ToBCD   Timer   Subtract    Store   SizeOf  ShiftRight  ShiftLeft   RefOf   
B   Package OSI Or  ObjectType  Not NOr NAnd    Multiply    Mod CCCS    
Mid CBCBCC  Match   LOr CCCCCC  LoadTable
LNot    LLess   LGreater    LEqual  CC  LAnd    Index   Increment   
FromBCD FindSetRightBit FindSetLeftBit  CCSS    Divide  DerefOf 
Decrement   CS  CopyObject  sS  CondRefOf   ConcatenateResTemplate
Concatenate Buffer  And CCS Add SW  Acquire While   Unload  Stall   
Sleep   Signal  Return  Reset   S   Release SC  Notify  NoOp    NS  Load
C   If  BDC Fatal   Else    Continue    BreakPoint  Break   
NBDB    NBW PowerResource   NBCC    OperationRegion Mutex   Method  NNB 
IndexField  NB  Field   Event   Device  CreateWordField CCCN    
CreateField CreateQWordField    CreateDWordField    CreateByteField CCN 
CreateBitField  NNCB    BankField   N   Scope   NO  Name    NN  Alias
  

13 words, which amli interpreter has to learn
Dietmar
#258 Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #257

13 words, which amli interpreter has to learn


14 QwordConst , it's not keyword, but it has own bytecode, some like var = 0x1111222233334444
15 DATA_REGION, 0x5b88 very rare not implemented
#259 diderius6 ⇗ @Mov AX, 0xDEAD
in a first try I set only one reserved word "ToInteger" before word "Debug" in acpi.sys of XP.
Do you think it is possible?

My problem is, that there are 2 offsetvalues:
.rdata:000348A4 aTointeger      db 'ToInteger',0        ; DATA XREF: .data:off_37820
.rdata:000348AE align 10h

.data:00037820 off_37820 dd offset aTointeger ; DATA XREF: .data:00037BC4
.data:00037820 ; "ToInteger"
.data:00037824 db 99h ; Ö
.data:00037825 db 0
.data:00037826 db 0
.data:00037827 db 0

.data:00037BC4 dd offset off_37820

thanks a lot
Dietmar
#260 diderius6 YesssssssssssssssssssssssssaaaaaaahHHHHh:))

I succeed to integrate reserved word "ToInteger" in amli interpreter in acpi.sys
from XP SP3.
This is for me like I reach a new level,
what a crazy work,
Dietmar

PS: I understand, how the amli interpreter works and also, how it is implemented.
The test I did:

On the Asrock board I installed the original Bios. With acpistep3.sys I get there the
the BSOD for "reserved words"
0xA5 (0x03, X, 0xС0140001, Z)

Then I put in my modded DSDT table all the "ToInteger" words back, that I eliminated before.
And it boots:))!
#261 diderius6 CreateQWordField I cant integrate in acpi.sys of XP SP3 until now.
It seems, that the Interpreter amli from XP cant build an 64 Bit field.
Vista can, the version from Vista from May 2005 (Longhorn) also cant.
The error message BSOD has changed.
The remaining reserved words in DSDT, that you have to isolate by hand in DSDT
are now CreateQWordField , QWordMemory, CopyObject. This lasts about 5 min:)).

BSOD
0x000000A5 (0x00000003, X, 0xC0000034, Y)

Dietmar
#262 diderius6 Here are my DSDT tables for the Asrock fatal1ty z370 gaming k6 board.
Dsdt is original and DSDT2 is modded table, which works in XP SP3 with the acpi.sys driver
with only 3 small changes, as I write here before.
Not so much differences are left, when you take a look at.
Now I look at the C0, C1, C2.. states,
because I noticed, that 70 % of time the compi is in C0 state,
gives about 50 Watt without any load, brrr:)),
Dietmar



diderius6 has attached files to this post
#263 diderius6 Here is my try with Ida pro for reserved word CreateQwordField.
I did a nice hack, because its name is so long I
deleted ShiftRight and ShiftLeft in acpi.sys of XP SP3 (because they do not appear in Bios)
and connected them afterwards:)).

The values I take from Vista.
.rdata:0002B7D8 aCreateqwordfie db 'CreateQWordField',0 ; DATA XREF: 
.data:off_2D190 o
.rdata:0002B7E9 db 0 <-- should be align 10h
.rdata:0002B7EA db 0
.rdata:0002B7EB db 0
.rdata:0002B7EC db 0
.rdata:0002B7ED db 0
.rdata:0002B7EE db 0
.rdata:0002B7EF db 0

.data:0002D190 ; "CreateQWordField"
.data:0002D194 db 8Fh ; Å
.data:0002D195 db 0
.data:0002D196 db 0
.data:0002D197 db 0

.data:0002D518 dd offset off_2D190
#264 diderius6 Now I think,
it belongs to the integration of CreateQWordField
in acpi.sys from XP.
May be, I did something wrong (I noticed, that the "align" mark is gone,
and I got instead 7 zeros).
Or maybe, the amli Interpreter can not work at all
with 64 Bit
Dietmar

The driver acpi.sys with the integrated CreateQWordField shows BSOD,
even when no CreateQWordField is in the DSDT table.
This was other with integrated "ToInteger" reserved word in acpi.sys.

PS: It seems, that my Ida pro version can not generate *.sys files for XP. Is there a program, which can do this?
#265 infuscomus
Zitat von ⇗ diderius6 im Beitrag ¶ #264
Now I think,
it belongs to the integration of CreateQWordField
in acpi.sys from XP.
May be, I did something wrong (I noticed, that the "align" mark is gone,
and I got instead 7 zeros).
Or maybe, the amli Interpreter can not work at all
with 64 Bit
Dietmar

The driver acpi.sys with the integrated CreateQWordField shows BSOD,
even when no CreateQWordField is in the DSDT table.
This was other with integrated "ToInteger" reserved word in acpi.sys.

PS: It seems, that my Ida pro version can not generate *.sys files for XP. Is there a program, which can do this?


maybe try relyze to reassemble? - ⇗ https://www.relyze.com/overview.html

also, you might want to try CFF Explorer - ⇗ https://ntcore.com/?page_id=388
to realign the file and recalculate the checksums after you edit the file
#266 Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #262

Now I look at the C0, C1, C2.. states,
because I noticed, that 70 % of time the compi is in C0 state,


welcome to club )
check pm
#267 diderius6 May be this hack will work:

DefCreateDWordField := CreateDWordFieldOp SourceBuff ByteIndex NameString
CreateDWordFieldOp := 0x8A

DefCreateQWordField := CreateQWordFieldOp SourceBuff ByteIndex NameString
CreateQWordFieldOp := 0x8F  --> 0x8A

Dietmar

EDIT: Or even more easy, change in DSDT table

CreateQWordField --> CreateDWordField

This I will test now.

EDIT: Both ideas do not work on Asrock board.
#268 diderius6 ⇗ @Mov AX, 0xDEAD

I do not take notice about the 70% in C0 state,
because I work with a Celeron.
There the powerconsumption is always low.
This changes a lot with 8700k.
It is like a test for good cooler;)
Dietmar
#269 diderius6 ⇗ @Mov AX, 0xDEAD

This powerconsumption I like much more:))!
Very interesting, how you reached this, which programs you use.
I think it would be a whole course in programming
Dietmar

EDIT:  ⇗ @Mov AX, 0xDEAD
Did you use this?
"You're on the right track for Windows XP.  If you read the documentation for the PROCESSOR_POWER_POLICY structure (⇗ http://msdn.microsoft.com/en-us/library/...v=vs.85%29.aspx), you'll notice next to DisableCStates that it says "Reserved; set to zero."  In other words, you can't use that.  Skip down to the section under Policy and read what it has to say.  You have to disable the individual C-states that offend you:"

Policy[0].AllowPromotion = 1
Policy[1].AllowPromotion = 0; // Disable's C2
Policy[2].AllowPromotion = 0; // Disable's C3



diderius6 has attached images to this post  ⇗ lowC0state.jpg
#270 diderius6 To integrate the reserved word "ToInteger" in acpi.sys from XP SP3 works.
It has also the correct code,

DefToInteger := ToIntegerOp Operand Target
ToIntegerOp := 0x99

Dietmar

 

Page 19

#271 Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #269

Did you use this?
Policy[0].AllowPromotion = 1
Policy[1].AllowPromotion = 0; // Disable's C2
Policy[2].AllowPromotion = 0; // Disable's C3

No, i already wrote about power states on my skylake - acpi C2/C3 hardware (or bios or some poor documented bios setting) is broken for any OS, only cpu still can do it (itself, two asm commands, without external dependies). windows think that platform support c2/c3 and use it, but cpu do not enter these modes properly and windows never know what doing a semi-useless job (30-40% cpu in power saving mode, thank for this at least)
#272 diderius6 When I integrate (to 100% correct) the reserved word from Acpi2.0  "CopyObject" with code 9Dh
in acpi.sys from XP SP3 I get the famous BSOD

0x0000007B (0xB84C7524, 0xC0000034, 0x00000000, 0x00000000)

which is is not direct related to Acpi
Dietmar

EDIT: Now I think, via this way you can find all the reserved words, when acpi.sys XP SP3 meet them, crashes.
        The other reserved words, for example ToInteger, are just ignored from amli XP SP3.
#273 diderius6 This is, what amli interpreter Acpi1 understands:
ACPI Machine Language (AML) Specification 16-257
Intel/Microsoft/Toshiba
Table 16-2 AML Byte Stream Byte Values
Byte Value
(in Hex)
Meaning Fixed List Arguments Variable List
Arguments?
0x00 ZeroOp Nothing No
0x01 OneOp Nothing No
0x02 - 0x05 Null -- --
0x06 AliasOp Name Name No
0x07 Null -- --
0x08 NameOp Name Data No
0x09 Null -- --
0x0A ByteOp ByteConst No
0x0B WordOp WordConst No
0x0C DWordOp DWordConst No
0x0D StringOp AsciiChar [AsciiChar ...] NullChar No
0x0E - 0F Null -- --
0x10 ScopeOp Name Yes
0x11 BufferOp ByteConst Yes
0x12 PackageOp ByteConst Yes
0x13 Null -- --
0x14 MethodOp Name Byte Yes
0x15 - 0x2D Null -- --
0x2E (.) DualNamePrefix NameSeg NameSeg --
0x2F (/) MultiNamePrefix Byte NameSeg [NameSeg ...] No
0x30 - 0x5a Null -- --
0x5B ([) ExtendedOperator
Prefix
Byte --
0x5B 0x01 MutexOp Name Byte No
0x5B 0x02 EventOp Name No
0x5B 0x10 ShiftRightBitOp OpCode SuperName No
0x5B 0x11 ShiftLeftBitOp OpCode SuperName No
0x5B 0x12 CondRefOfOp OpCode SuperName No
0x5B 0x13 CreateFieldOp OpCode OpCode OpCode SuperName No
0x5B 0x20 LoadOp Name No
0x5B 0x21 StallOp OpCode No
0x5B 0x22 SleepOp OpCode No
0x5B 0x23 AcquireOp SuperName No
0x5B 0x24 SignalOp SuperName No
0x5B 0x25 WaitOp SuperName WordConst No
0x5B 0x26 ResetOp SuperName No
0x5B 0x27 ReleaseOp SuperName No
0x5B 0x28 FromBCDOp OpCode SuperName No
0x5B 0x29 ToBCD OpCode SuperName No
0x5B 0x2A UnloadOp OpCode No
Advanced Configuration and Power Management Interface Specification 16-258
Intel/Microsoft/Toshiba
Byte Value
(in Hex)
Meaning Fixed List Arguments Variable List
Arguments?
0x5B 0x31 DebugOp Nothing No
0x5B 0x32 FatalOp Nothing No
0x5B 0x80 OpRegionOp Name Byte OpCode OpCode No
0x5B 0x81 FieldOp Name Byte Yes
0x5B 0x82 DeviceOp Name Yes
0x5B 0x83 ProcessorOp Name Byte Dword Byte Yes
0x5B 0x84 PowerResOp Name Name Word Yes
0x5B 0x85 ThermalZoneOp Name Yes
0x5B 0x86 IndexFieldOp Name Name Byte Yes
0x5B 0x87 BankFieldOp Name Name Dword Byte Yes
0x5C (\) RootNamePrefix Name --
0x5D Null -- --
0x5E (^) ParentNamePrefix Name --
0x5F Null -- --
0x60 (`) Local0 Nothing No
0x61 (a) Local1 Nothing No
0x62 (b) Local2 Nothing No
0x63 (c) Local3 Nothing No
0x64 (d) Local4 Nothing No
0x65 (e) Local5 Nothing No
0x66 (f) Local6 Nothing No
0x67 (g) Local7 Nothing No
0x68 (h) Arg0 Nothing No
0x69 (i) Arg1 Nothing No
0x6A (j) Arg2 Nothing No
0x6B (k) Arg3 Nothing No
0x6C (l) Arg4 Nothing No
0x6D (m) Arg5 Nothing No
0x6E (n) Arg6 Nothing No
0x6F Null -- --
0x70 StoreOp OpCode SuperName No
0x71 RefOfOp SuperName No
0x72 AddOp OpCode OpCode SuperName No
0x73 ConcatOp OpCode OpCode SuperName No
0x74 SubtractOp OpCode OpCode SuperName No
0x75 IncrementOp SuperName No
0x76 DecrementOp SuperName No
0x77 MultiplyOp OpCode OpCode SuperName No
0x78 DivideOp OpCode OpCode SuperName SuperName No
0x79 ShiftLeftOp OpCode OpCode SuperName No
0x7A ShiftRightOp OpCode OpCode SuperName No
0x7B AndOp OpCode OpCode SuperName No
ACPI Machine Language (AML) Specification 16-259
Intel/Microsoft/Toshiba
Byte Value
(in Hex)
Meaning Fixed List Arguments Variable List
Arguments?
0x7C NAndOp OpCode OpCode SuperName No
0x7D OrOp OpCode OpCode SuperName No
0x7E NOrOp OpCode OpCode SuperName No
0x7F XOrOp OpCode OpCode SuperName No
0x80 NotOp OpCode SuperName No
0x81 FindSetLeftBitOp OpCode SuperName No
0x82 FindSetRightBitOp OpCode SuperName No
0x83 - 0x85 Null -- --
0x86 NotifyOp SuperName ByteConst No
0x87 SizeOfOp Name No
0x88 IndexOp OpCode OpCode No
0x89 MatchOp OpCode OpCode OpCode OpCode OpCode No
0x8A DWordFieldOp OpCode OpCode SuperName No
0x8B WordFieldOp OpCode OpCode SuperName No
0x8C ByteFieldOp OpCode OpCode SuperName No
0x8D BitFieldOp OpCode OpCode SuperName No
0x8E ObjTypeOp Name No
0x8F Null -- --
0x90 LAndOp OpCode OpCode No
0x91 LOrOp OpCode OpCode No
0x92 LNotOp OpCode No
0x93 LEQOp OpCode OpCode No
0x93 0x92 LNotEQOp OpCode OpCode No
0x94 LGOp OpCode OpCode No
0x94 0x92 LLEQOp OpCode OpCode No
0x95 LLOp OpCode OpCode No
0x95 0x92 LGEQOp OpCode OpCode No
0x96 - 9F Null -- --
0xA0 IfOp OpCode Yes
0xA1 ElseOp Nothing Yes
0xA2 WhileOp OpCode Yes
0xA3 NoOp Nothing No
0xA4 ReturnOp OpCode No
0xA5 BreakOp Nothing No
0xA6 - 0xCB Null -- --
0xCC BreakPointOp Nothing No
0xCD - 0xFE Null -- --
0xFF OnesOp Nothing No
#274 diderius6 And this in Acpi 2:
AML Byte Stream   Byte Values

Value (Hex) Name
0x00 ZeroOp
0x01 OneOp
0x06 AliasOp
0x08 NameOp
0x0A BytePrefix
0x0B WordPrefix
0x0C DWordPrefix
0x0D StringPrefix
0x0E QWordPrefix
0x10 ScopeOp
0x11 BufferOp
0x12 PackageOp
0x13 VarPackageOp
0x14 MethodOp
0x2E (.) DualNamePrefix
0x2F (/) MultiNamePrefix
0x30-0x39 ('0'-'9') DigitChar
0x41-0x5A (A-Z) NameChar
0x5B ([) ExtOpPrefix
0x5B 0x01 MutexOp
0x5B 0x02 EventOp
0x5B 0x12 CondRefOfOp
0x5B 0x13 CreateFieldOp
0x5B 0x1F LoadTableOp
0x5B 0x20 LoadOp
0x5B 0x21 StallOp
0x5B 0x22 SleepOp
0x5B 0x23 AcquireOp
0x5B 0x24 SignalOp
0x5B 0x25 WaitOp
0x5B 0x26 ResetOp
0x5B 0x27 ReleaseOp
0x5B 0x28 FromBCDOp
0x5B 0x29 ToBCD
0x5B 0x2A UnloadOp
0x5B 0x30 RevisionOp
0x5B 0x31 DebugOp
0x5B 0x32 FatalOp
0x5B 0x33 TimerOp
0x5B 0x80 OpRegionOp
0x5B 0x81 FieldOp
0x5B 0x82 DeviceOpList
0x5B 0x83 ProcessorOp
0x5B 0x84 PowerResOp
0x5B 0x85 ThermalZoneOpList
0x5B 0x86 IndexFieldOp
0x5B 0x87 BankFieldOp
0x5B 0x88 DataRegionOp
0x5C (\) RootChar
0x5E (^) ParentPrefixChar
0x5F(_) NameChar
0x60 (`) Local0Op
0x61 (a) Local1Op
0x62 (b) Local2Op
0x63 (c) Local3Op
0x64 (d) Local4Op
0x65 (e) Local5Op
0x66 (f) Local6Op
0x67 (g) Local7Op
0x68 (h) Arg0Op
0x69 (i) Arg1Op
0x6A (j) Arg2Op
0x6B (k) Arg3Op
0x6C (l) Arg4Op
0x6D (m) Arg5Op
0x6E (n) Arg6Op
0x70 StoreOp
0x71 RefOfOp
0x72 AddOp
0x73 ConcatOp
0x74 SubtractOp
0x75 IncrementOp
0x76 DecrementOp
0x77 MultiplyOp
0x78 DivideOp
0x79 ShiftLeftOp
0x7A ShiftRightOp
0x7B AndOp
0x7C NandOp
0x7D OrOp
0x7E NorOp
0x7F XorOp
0x80 NotOp
0x81 FindSetLeftBitOp
0x82 FindSetRightBitOp
0x83 DerefOfOp
0x84 ConcatResOp
0x85 ModOp
0x86 NotifyOp
0x87 SizeOfOp
0x88 IndexOp
0x89 MatchOp
0x8A CreateDWordFieldOp
0x8B CreateWordFieldOp
0x8C CreateByteFieldOp
0x8D CreateBitFieldOp
0x8E TypeOp
0x8F CreateQWordFieldOp
0x90 LandOp
0x91 LorOp
0x92 LnotOp
0x92 0x93 LNotEqualOp
0x92 0x94 LLessEqualOp
0x92 0x95 LGreaterEqualOp
0x93 LEqualOp
0x94 LGreaterOp
0x95 LLessOp
0x96 ToBufferOp
0x97 ToDecimalStringOp
0x98 ToHexStringOp
0x99 ToIntegerOp
0x9C ToStringOp
0x9D CopyObjectOp
0x9E MidOp
0x9F ContinueOp
0xA0 IfOp
0xA1 ElseOp
0xA2 WhileOp
0xA3 NoopOp
0xA4 ReturnOp
0xA5 BreakOp
0xCC BreakPointOp
0xFF OnesOp
#275 diderius6 Hi,
in eventmanager from XP on the Asrockboard I get this message:

AMLI: ACPI-BIOS versucht, einen ungültigen Speicherbereich
"OpRegion" bei Adresse 0x5000 mit einer Länge von 0x1000 zu erstellen.
Dieser Bereich fällt in den vom Betriebssystem geschützten Speicheradressbereich (0x0 - 0x9c400).

This is nice, because now I know the device,
that is doing the problem from the very first beginning with overlapping memory from e820 table and Acpi, it is the serial COM 1 port, ACPI\PNP0501
listet in DSDT for the Asrock Bios with
Device (UAR1)
{
Name (_HID, EisaId ("PNP0501") /* 16550A-compatible COM Serial Port */) // _HID: Hardware ID
Name (_UID, Zero) // _UID: Unique ID
Name (LDN, 0x02)
Method (_STA, 0, Serialized) // _STA: Status
{
If ((IOST & One))
{
Return (0x0F)
}
Else
{
Return (Zero)
}
}

Method (_DIS, 0, NotSerialized) // _DIS: Disable Device
{
^^SIO1.DCNT (Zero, Zero)
}

Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
{
Return (^^SIO1.DCRS (Zero, Zero))
}

Method (_SRS, 1, NotSerialized) // _SRS: Set Resource Settings
{
^^SIO1.DSRS (Arg0, Zero)
}

Name (_PRS, ResourceTemplate () // _PRS: Possible Resource Settings
{
StartDependentFn (0x00, 0x00)
{
IO (Decode16,
0x03F8, // Range Minimum
0x03F8, // Range Maximum
0x01, // Alignment
0x08, // Length
)
IRQNoFlags ()
{4}
DMA (Compatibility, NotBusMaster, Transfer8, )
{}
}
StartDependentFnNoPri ()
{
IO (Decode16,
0x03F8, // Range Minimum
0x03F8, // Range Maximum
0x01, // Alignment
0x08, // Length
)
IRQNoFlags ()
{4}
DMA (Compatibility, NotBusMaster, Transfer8, )
{}
}
StartDependentFnNoPri ()
{
IO (Decode16,
0x02F8, // Range Minimum
0x02F8, // Range Maximum
0x01, // Alignment
0x08, // Length
)
IRQNoFlags ()
{3}
DMA (Compatibility, NotBusMaster, Transfer8, )
{}
}
StartDependentFnNoPri ()
{
IO (Decode16,
0x03E8, // Range Minimum
0x03E8, // Range Maximum
0x01, // Alignment
0x08, // Length
)
IRQNoFlags ()
{4}
DMA (Compatibility, NotBusMaster, Transfer8, )
{}
}
StartDependentFnNoPri ()
{
IO (Decode16,
0x02E8, // Range Minimum
0x02E8, // Range Maximum
0x01, // Alignment
0x08, // Length
)
IRQNoFlags ()
{3}
DMA (Compatibility, NotBusMaster, Transfer8, )
{}
}
EndDependentFn ()
})
Method (_PRW, 0, NotSerialized) // _PRW: Power Resources for Wake
{
Return (GPRW (0x17, 0x04))
}
}


What I dont see in this list is, why ACPI is doing this and from where I can see this before.
I come to the idea with this device, because after this message in eventmanager the COM 1 port was disabled. So it is a real error from Acpi,

Dietmar

#276 diderius6 Hi,
I make a test, if it is possible to give during start XP another list of Acpi tables than those Acpi tables, written in Bios.

Yesssssaaahh, it can be done:))!

I change with Winhex in XP in the registry of the Asrock board in hardware\Acpi\FADT the binary code for the timer

A5C40300 against
A5440300.

Then I shut the compi down.

Normally, at boottime always the Acpi tables are written new via Bios (means 44 --> C4), I tested this.
Winserver 2003 looks at Bios for DSDT, FADT.. but XP looks at registry.

This XP  I copy file by file to a kangaroo USB stick, which can be set write protect.

Then I change with Winhex the first 512 Bit (MBR) of the kangoroo against the first 512 Bit MBR of the harddisk. This is the nice trick from s4e.
Then I set the kangoroo to write protect, choose via F11 the bootmenue of the Asrock board and start from the writeprotected kangoroo.
Because the USB stick has no drivers for USB, after first boot the contact is lost and because the signatur and everything else is exact the same as from harddrive, XP now choses the harddisk and boots to XP.

In registry on harddisk Bios has rewritten like normal 44 --> C4 in FADT.

But the to ram loaded registry from kangoroo has at this place still the 44 code. So, the normall hal.dll thinks via "Bios" make use of the RTC timer and so without customized hal.dll the clock works

Dietmar
#277 diderius6 Hi,
does somebody know, why it is not possible to do USB boot to XP since z170 chipset? usbstor.sys is needed and usbd.sys,
it can be given by hand, I do.
I know, that there are no drivers vor the Intel USB devices.
This is so strange.
But for example on the Asus z87i-pro I can boot XP from the Asmedia chip ASM1042 with 300 Mbyte/s from usb stick.
And the drivers for ASM1142, 2142, 3142 work all with XP
Dietmar
#278 diderius6 I set up a windbg session on the Asrock board with USB 3.1chip ASM3142,
for to see, what is going on.

I boot XP SP3 from an WD harddisk, 2 TB formatted with Fat32,
which boots my Asus z87i-pro board from USB with Asmedia ASM1042 chip .

Before I put there the newest drivers vers. 1.16.54.1 for all asmedia chips on this
usb harddisk. Still it boots the z87i-pro board.
By the way, the brandnew driver 1.16.55.1 from Asmedia gives on XP bluesreen.

Here is the result:

BugCheck 7B, {b9cc7524, c0000034, 0, 0}

Probably caused by : ntkrpamp.exe ( nt!IopMarkBootPartition+f5 )

DevNode 0x89b0eb60 for PDO 0x89b0e030
InstancePath is "PCI\VEN_1B21&DEV_0612&SUBSYS_06121849&REV_02\4&12e73dd2&0&00E1"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED



DevNode 0x89b0fdd0 for PDO 0x89b10670
InstancePath is "PCI\VEN_1B21&DEV_2142&SUBSYS_21421849&REV_00\4&1fc90664&0&00E4"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED



DevNode 0x89c46828 for PDO 0x89c46970
InstancePath is "Root\LEGACY_ASMTHUB3\0000"
ServiceName is "asmthub3"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)


DevNode 0x89c465e8 for PDO 0x89c46730
InstancePath is "Root\LEGACY_ASMTXHCI\0000"
ServiceName is "asmtxhci"
State = DeviceNodeStarted (0x308)


DevNode 0x89c44dc8 for PDO 0x89c44f10
InstancePath is "Root\LEGACY_USBHUB\0000"
ServiceName is "usbhub"
State = DeviceNodeStarted (0x308)


DevNode 0x89c44b88 for PDO 0x89c44cd0
InstancePath is "Root\LEGACY_USBSTOR\0000"
ServiceName is "USBSTOR"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
  
#279 diderius6 I see, that the needed drivers for USB all start very early exact as I want,
setting in registry start = 0 and group System Reserved.

But VEN_1B21&DEV_0612, which is the AHCI controller from Asmedia
does not start (normal, because no driver, but unimportant, because we boot from USB device)

and

VEN_1B21&DEV_2142 which stands for the USB 3.1chip "ASM3142"

also not, which is probably the reason for BSOD 0x7B here,
but I do not understand why this happens,
because all other drivers started as you can see
and when boot from normal harddisk, this Asmedia  ASM3142 works on XP SP3

Dietmar
#280 diderius6
0: kd> !DevNode 0x89b0fdd0
DevNode 0x89b0fdd0 for PDO 0x89b10670
Parent 0x89b0c708 Sibling 0000000000 Child 0000000000
InstancePath is "PCI\VEN_1B21&DEV_2142&SUBSYS_21421849&REV_00\4&1fc90664&0&00E4"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
StateHistory[00] = DeviceNodeUninitialized (0x301)
StateHistory[19] = Unknown State (0x0)
StateHistory[18] = Unknown State (0x0)
StateHistory[17] = Unknown State (0x0)
StateHistory[16] = Unknown State (0x0)
StateHistory[15] = Unknown State (0x0)
StateHistory[14] = Unknown State (0x0)
StateHistory[13] = Unknown State (0x0)
StateHistory[12] = Unknown State (0x0)
StateHistory[11] = Unknown State (0x0)
StateHistory[10] = Unknown State (0x0)
StateHistory[09] = Unknown State (0x0)
StateHistory[08] = Unknown State (0x0)
StateHistory[07] = Unknown State (0x0)
StateHistory[06] = Unknown State (0x0)
StateHistory[05] = Unknown State (0x0)
StateHistory[04] = Unknown State (0x0)
StateHistory[03] = Unknown State (0x0)
StateHistory[02] = Unknown State (0x0)
StateHistory[01] = Unknown State (0x0)
Flags (0x000022f0) DNF_ENUMERATED, DNF_IDS_QUERIED,
DNF_HAS_BOOT_CONFIG, DNF_BOOT_CONFIG_RESERVED,
DNF_RESOURCE_REQUIREMENTS_NEED_FILTERED, DNF_HAS_PROBLEM
CapabilityFlags (0x00002000) WakeFromD3
Problem = CM_PROB_NOT_CONFIGURED
  
#281 diderius6
Problem = CM_PROB_NOT_CONFIGURED

From Microsoft:

CM_PROB_NOT_CONFIGURED

Error Code

This function is reserved for system use.

There is a device on the system for which there is no ConfigFlags registry entry. This means no driver is installed. Typically this means an INF file could not be found.

Aha, this may be the reason, because the ASM3142 is not the ASM1042,
even they use the same drivers. Needs to feed registry from XP with correct values for ASM3142

Dietmar
#282 diderius6 Not works.
I doublechecked all the handmade entries in registry.
The Asus z87i-pro board boots at once to USB3 (300MByte/s) with this entries,
but the Asrock z370 board not.
Something other is preventing USB boot on Asmedia chip ASM3142 on the Asrock board.
Any help is welcome.

Here are the registry entries from usbstor, asmtxhci and asmthub3.
They can be used to make XP USB3 boot work
Dietmar

Schlüsselname: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\USBSTOR
Klassenname: <KEINE KLASSE>
Letzter Schreibzugriff: 05.01.2019 - 02:29
Wert 0
Name: Type
Typ: REG_DWORD
Daten: 0x1

Wert 1
Name: Start
Typ: REG_DWORD
Daten: 0x0

Wert 2
Name: ErrorControl
Typ: REG_DWORD
Daten: 0x1

Wert 3
Name: ImagePath
Typ: REG_EXPAND_SZ
Daten: system32\DRIVERS\USBSTOR.SYS

Wert 4
Name: DisplayName
Typ: REG_SZ
Daten: USB-Massenspeichertreiber

Wert 5
Name: Group
Typ: REG_SZ
Daten: System Reserved

Wert 6
Name: Tag
Typ: REG_DWORD
Daten: 0x1


Schlüsselname: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\USBSTOR\Enum
Klassenname: <KEINE KLASSE>
Letzter Schreibzugriff: 05.01.2019 - 02:55
Wert 0
Name: 0
Typ: REG_SZ
Daten: USB\Vid_0bda&Pid_0152&MI_00\6&2182afbe&0&0000

Wert 1
Name: Count
Typ: REG_DWORD
Daten: 0x3

Wert 2
Name: NextInstance
Typ: REG_DWORD
Daten: 0x3

Wert 3
Name: 1
Typ: REG_SZ
Daten: USB\Vid_1058&Pid_25a2\57584631414237524541354A

Wert 4
Name: 2
Typ: REG_SZ
Daten: Root\LEGACY_USBSTOR\0000


Schlüsselname: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\asmtxhci
Klassenname: <KEINE KLASSE>
Letzter Schreibzugriff: 05.01.2019 - 01:56
Wert 0
Name: Type
Typ: REG_DWORD
Daten: 0x1

Wert 1
Name: Start
Typ: REG_DWORD
Daten: 0x0

Wert 2
Name: ErrorControl
Typ: REG_DWORD
Daten: 0x1

Wert 3
Name: Tag
Typ: REG_DWORD
Daten: 0x12

Wert 4
Name: ImagePath
Typ: REG_EXPAND_SZ
Daten: system32\DRIVERS\asmtxhci.sys

Wert 5
Name: DisplayName
Typ: REG_SZ
Daten: ASMedia XHCI Service

Wert 6
Name: Group
Typ: REG_SZ
Daten: System Reserved

Wert 7
Name: BootFlags
Typ: REG_DWORD
Daten: 0x10


Schlüsselname: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\asmtxhci\Enum
Klassenname: <KEINE KLASSE>
Letzter Schreibzugriff: 05.01.2019 - 02:55
Wert 0
Name: Count
Typ: REG_DWORD
Daten: 0x3

Wert 1
Name: NextInstance
Typ: REG_DWORD
Daten: 0x3

Wert 2
Name: 0
Typ: REG_SZ
Daten: PCI\VEN_1B21&DEV_2142&SUBSYS_21421849&REV_00\4&1fc90664&0&00E4

Wert 3
Name: 1
Typ: REG_SZ
Daten: Root\LEGACY_ASMTXHCI\0000

Wert 4
Name: 2
Typ: REG_SZ
Daten: PCI\VEN_1B21&DEV_1142&SUBSYS_85BF1043&REV_00\4&2816a63a&0&00E4


Schlüsselname: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\asmtxhci\Security
Klassenname: <KEINE KLASSE>
Letzter Schreibzugriff: 03.06.2018 - 18:34
Wert 0
Name: Security
Typ: REG_BINARY
Daten:
00000000 01 00 14 80 90 00 00 00 - 9c 00 00 00 14 00 00 00 ................
00000010 30 00 00 00 02 00 1c 00 - 01 00 00 00 02 80 14 00 0...............
00000020 ff 01 0f 00 01 01 00 00 - 00 00 00 01 00 00 00 00 ÿ...............
00000030 02 00 60 00 04 00 00 00 - 00 00 14 00 fd 01 02 00 ..`.........ý...
00000040 01 01 00 00 00 00 00 05 - 12 00 00 00 00 00 18 00 ................
00000050 ff 01 0f 00 01 02 00 00 - 00 00 00 05 20 00 00 00 ÿ........... ...
00000060 20 02 00 00 00 00 14 00 - 8d 01 02 00 01 01 00 00 ...............
00000070 00 00 00 05 0b 00 00 00 - 00 00 18 00 fd 01 02 00 ............ý...
00000080 01 02 00 00 00 00 00 05 - 20 00 00 00 23 02 00 00 ........ ...#...
00000090 01 01 00 00 00 00 00 05 - 12 00 00 00 01 01 00 00 ................
000000a0 00 00 00 05 12 00 00 00 - ........


Schlüsselname: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\asmthub3
Klassenname: <KEINE KLASSE>
Letzter Schreibzugriff: 05.01.2019 - 01:54
Wert 0
Name: Type
Typ: REG_DWORD
Daten: 0x1

Wert 1
Name: Start
Typ: REG_DWORD
Daten: 0x0

Wert 2
Name: ErrorControl
Typ: REG_DWORD
Daten: 0x1

Wert 3
Name: Tag
Typ: REG_DWORD
Daten: 0x11

Wert 4
Name: ImagePath
Typ: REG_EXPAND_SZ
Daten: system32\DRIVERS\asmthub3.sys

Wert 5
Name: DisplayName
Typ: REG_SZ
Daten: ASMedia USB3.1 Hub Service

Wert 6
Name: Group
Typ: REG_SZ
Daten: System Reserved

Wert 7
Name: BootFlags
Typ: REG_DWORD
Daten: 0x10


Schlüsselname: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\asmthub3\Enum
Klassenname: <KEINE KLASSE>
Letzter Schreibzugriff: 05.01.2019 - 02:55
Wert 0
Name: Count
Typ: REG_DWORD
Daten: 0x3

Wert 1
Name: NextInstance
Typ: REG_DWORD
Daten: 0x3

Wert 2
Name: 0
Typ: REG_SZ
Daten: USB\ASMEDIAROOT_Hub\5&efb7b49&0&0

Wert 3
Name: 1
Typ: REG_SZ
Daten: Root\LEGACY_ASMTHUB3\0000

Wert 4
Name: 2
Typ: REG_SZ
Daten: USB\ASMEDIAROOT_Hub\5&14349c16&0&0


Schlüsselname: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\asmthub3\Security
Klassenname: <KEINE KLASSE>
Letzter Schreibzugriff: 03.06.2018 - 18:37
Wert 0
Name: Security
Typ: REG_BINARY
Daten:
00000000 01 00 14 80 90 00 00 00 - 9c 00 00 00 14 00 00 00 ................
00000010 30 00 00 00 02 00 1c 00 - 01 00 00 00 02 80 14 00 0...............
00000020 ff 01 0f 00 01 01 00 00 - 00 00 00 01 00 00 00 00 ÿ...............
00000030 02 00 60 00 04 00 00 00 - 00 00 14 00 fd 01 02 00 ..`.........ý...
00000040 01 01 00 00 00 00 00 05 - 12 00 00 00 00 00 18 00 ................
00000050 ff 01 0f 00 01 02 00 00 - 00 00 00 05 20 00 00 00 ÿ........... ...
00000060 20 02 00 00 00 00 14 00 - 8d 01 02 00 01 01 00 00 ...............
00000070 00 00 00 05 0b 00 00 00 - 00 00 18 00 fd 01 02 00 ............ý...
00000080 01 02 00 00 00 00 00 05 - 20 00 00 00 23 02 00 00 ........ ...#...
00000090 01 01 00 00 00 00 00 05 - 12 00 00 00 01 01 00 00 ................
000000a0 00 00 00 05 12 00 00 00 - ........
  
#283 diderius6 Small success
DevNode 0x89c03ee8 for PDO 0x89c042e0
InstancePath is "PCI\VEN_1B21&DEV_2142&SUBSYS_21421849&REV_00\3&37f6853e&0&00E4"
ServiceName is "asmtxhci"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)

DevNode 0x87c72e78 for PDO 0x87c75df8
InstancePath is "USB\ASMEDIAROOT_Hub\4&290a3674&0&0"
ServiceName is "asmthub3"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)

Only usbstor is loaded, but does not start
Dietmar
0: kd> !devnode usbstor
DevNode 0xbab28000 for PDO 0x98284657
Parent 0x00000004 Sibling 0x00905a4d Child 0x00000003
InterfaceType 0x98284656 Bus Number 0x9834658d
Duplicate PDO 0x98284656 InstancePath is ""
ServiceName is ""
TargetDeviceNotify List - f 0x68636952 b 0x98284657
State = Unknown State (0x40)
Previous State = Unknown State (0x0)
StateHistory[00] = Unknown State (0x0)
StateHistory[19] = Unknown State (0x20534f44)
StateHistory[18] = Unknown State (0x206e6920)
StateHistory[17] = Unknown State (0x6e757220)
StateHistory[16] = Unknown State (0x65622074)
StateHistory[15] = Unknown State (0x6f6e6e61)
StateHistory[14] = Unknown State (0x63206d61)
StateHistory[13] = Unknown State (0x72676f72)
StateHistory[12] = Unknown State (0x70207369)
StateHistory[11] = Unknown State (0x685421cd)
StateHistory[10] = Unknown State (0x4c01b821)
StateHistory[09] = Unknown State (0xcd09b400)
StateHistory[08] = Unknown State (0xeba1f0e)
StateHistory[07] = Unknown State (0xd8)
StateHistory[06] = Unknown State (0x0)
StateHistory[05] = Unknown State (0x0)
StateHistory[04] = Unknown State (0x0)
StateHistory[03] = Unknown State (0x0)
StateHistory[02] = Unknown State (0x0)
StateHistory[01] = Unknown State (0x0)
Flags (0000000000)
UserFlags (0xcb462713) DNUF_WILL_BE_REMOVED, DNUF_DONT_SHOW_IN_UI,
DNUF_SHUTDOWN_QUERIED
Unknown flags 0xcb462700
CapabilityFlags (0x010e00e0) DockDevice, UniqueID,
SilentInstall, NoDisplayInUI
Unknown flags 0x010c0000
DisableableDepends = 15460 (from children)
#284 diderius6
: kd> lm
start end module name
804d7000 806e5000 nt (pdb symbols) c:\symbols\ntkrpamp.pdb\7D6290E03E32455BB0E035E38816124F1\ntkrpamp.pdb
806e5000 8070a400 hal (deferred)
ba36d000 ba386b80 Mup (deferred)
ba387000 ba3b3980 NDIS (deferred)
ba3b4000 ba3ca880 KSecDD (deferred)
ba3cb000 ba3ee180 Fastfat (deferred)
ba3ef000 ba400f00 sr (deferred)
ba401000 ba420b00 fltMgr (deferred)
ba421000 ba6d6000 iaStor (deferred)
ba6d6000 ba6fba00 dmio (deferred)
ba6fc000 ba71ad80 ftdisk (deferred)
ba71b000 ba72ba80 pci (deferred)
ba72c000 ba74b000 asmthub3 (deferred)
ba74b000 ba7a7000 asmtxhci (deferred)
ba8a8000 ba8b1300 isapnp (deferred)
ba8b8000 ba8c2580 MountMgr (deferred)
ba8c8000 ba8d5200 VolSnap (deferred)
ba8d8000 ba8e0e00 disk (deferred)
ba8e8000 ba8f4180 CLASSPNP (deferred)
bab28000 bab2d500 USBSTOR (deferred)
bab30000 bab34d00 PartMgr (deferred)
bacb8000 bacbb000 BOOTVID (deferred)
bada8000 bada9b80 kdcom (deferred)
badaa000 badab100 WMILIB (deferred)
badac000 badad280 USBD (deferred)
badae000 badaf700 dmload (deferred)
#285 XPLives ⇗ @diderius6
Dietmar,

Z87/Z97 and possibly X99 is the last chipset to work using on XP with USB on Intel USB ports.

SkyLake removed the eHCI which killed off USB 2.0 that XP understands.  This is the reason why only a pure Intel USB 3.0 xHCI driver is necessary to boot XP off SkyLake, Kaby Lake, and Coffee Lake from Intel USB 3.0 xHCI ports.  Even the USB 2.0 fake ports will not function.

I thought you had no issues booting from a USB Flash Drive to XP on Z170, Z270, Z370, Z390 Chipsets using Asmedia USB port?

What is the importance of you booting XP off NVMe?

Can you boot to Windows 2000 or 98SE DOS off this NVMe like SATA can?

Also Server 2003 boots in 3-6 seconds for me off SATA.

Would be faster operation if we image XP to SSD and load XP image from SSD to the Ramdrive to boot.

 

Page 20

#286 diderius6 I can use all the Asmedia chips in XP.
And few days ago I believed, that also boot XP from USB3 was no problem,
because this summer I tested this one time on the nice Asus z87i-pro board
and it works at once.
Now I see, that the problem is, that usbstor.sys does not like to start
on chipsets >=z170 for some strange reasons.
It is not clear for me. The driver has an coinstaller,
but when you once have made the harddisk usb friendly with this coinstaller, where is the problem?
No board from Skylake, Kabylake, Coffee lake works until now for USB boot for XP as I have to see.
Even the Apex X board, which can boot nearly everything, does not start usbstor.sys.
There is a strange connection between usbstor.sys and usbd.sys, one cant live without the other.
Long time ago I make some test with win98SE. I can boot it via USB:)),
but this was 10 years and more ago.
Now the only chance for USB boot is the method from s4e, have a look at reboot.pro
I tested it there for older motherboards with no NVME support at all and it works on nearly all boards,
even 10 years old.
The s4e method works for ANY driver
Dietmar
#287 XPLives ⇗ @diderius6
But you tested NVMe only for XP?

Can you boot to Windows 2000 or 98SE DOS off the NVMe like a SATA SSD can?

I already know USB can boot 98SE that's always worked for me but what about the NVMe?
#288 diderius6 ⇗ @XPLives for this you need a driver nvme.
Very hard job, to make this work in XP. Now we have, thanks a lot to Kai.
And until now I have not seen anybody with
booting XP direct via nvme with this driver, only me.
Kai make this for win2003.
When somebody is good in C programming,
it is possible to write a driver nvme.sys for the scsiport modell.
Then, ntboodd will work also and you have nvme from XP on any compi,
Dietmar
#289 diderius6 With s4e method it works

DevNode 0x89c39bb0 for PDO 0x89c39e50
         InstancePath is "PCI\VEN_1B21&DEV_2142&SUBSYS_21421849&REV_00\3&37f6853e&0&00E4"
         ServiceName is "asmtxhci"
         State = DeviceNodeStarted (0x308)
         Previous State = DeviceNodeStarted (0x308)
         
DevNode 0x87c69338 for PDO 0x87c6c478
           InstancePath is "USB\ASMEDIAROOT_Hub\4&290a3674&0&0"
           ServiceName is "asmthub3"
           State = DeviceNodeStarted (0x308)
           Previous State = DeviceNodeStarted (0x308)
           
DevNode 0x87c598d8 for PDO 0x87c5c7c8
             InstancePath is "USB\VID_1058&PID_25A2\57584631414237524541354A"
             ServiceName is "USBSTOR"
             State = DeviceNodeStarted (0x308)
             Previous State = DeviceNodeEnumerateCompletion (0x30d)
             
DevNode 0x87a7d5d0 for PDO 0x87a8a0d0
               InstancePath is "USBSTOR\Disk&Ven_WD&Prod_Elements_25A2&Rev_1021\57584631414237524541354A&0"
               ServiceName is "disk"
               State = DeviceNodeStarted (0x308)
               Previous State = DeviceNodeEnumerateCompletion (0x30d)
#290 diderius6 Yessssaaaaahhh :))
first direct USB3.1 boot on the Asrock fatal1ty z370 gaming k6 board
Dietmar

EDIT: Just boot from Kanguru USB stick.

EDIT2: USB3.1 boot via SSD and full Acpi support on the Asrock board,
feels very fast.



diderius6 has attached images to this post  ⇗ asrockUSBboot31.jpg  ⇗ kanguruUsb31boot.jpg  ⇗ USB31bootSSD.jpg
#291 diderius6 Hi,
is there a generic Bios patch, that allows to start the ehci (USB 2) driver on XP, Vista?
Dietmar
#292 XPLives ⇗ @diderius6
I noticed a few issues.  I always enjoy seeing your bare bones test bed. But maybe add a cardboard box underneath MB to protect the desk from unnecessary scratching.

On the BIOS go to the iGPU change shared memory from 1.5GB to 32MB.  Some MB only allow 64MB or 128MB minimum.   No need to suck up 1GB+ memory from OS.
Intel HD Graphics 4200+, 530+ don't support XP so it is wasted entirely.

I use 32MB only on the Ivy Bridge with the HD 4000 and it is a beauty. ;)

3.43GB of RAM available on mine.  If someone can make Intel HD Graphics 630 emulate HD 4000 compatibility then we have a gold mine.
1.94GB of RAM available is too much lost!!! (1.49GB?  That means 1.5GB shared memory)  Integrated Graphics Disable Auto Memory and set manual to the lowest possible.


For benchmark install Gavotte Ramdisk and repeat the Crystal DiskMark 3GB Ramdisk test. :)
#293 diderius6 ⇗ @XPLives

I do not use any linux for this USB 3.1 boot.
Only the 2 original drivers ASMedia USB 3.0+3.1 Drivers v1.16.54.1 WHQL for Win7 for the Asmedia chip
and set in each *.inf   
StartType = 0
LoadOrderGroup = System Reserved
Then I put all USB.sys from XP SP3 files into directory Windows\system32\drivers.
Also in all its *.inf I set the same values as above and copy all *.inf to Windows\inf folder.

Two things are important:

1.) After you installed the Asmedia driver, you have to connect your USB device to
the 3.1 USB port. When it is recogniced,
look in registry, if HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\usbstor
ist set to start=0 and Group System Reserved. The entry for Group you need to do by hand.

The same you have to look for the two entries of the asmedia drivers there:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\asmtxhci
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\asmthub3]

Now comes the part, which makes me like crazy:
The usbstor.sys driver only starts, when it sees another drive from the boot device.
It is like the cat bites in its tail, when the boot device is usb.

2.) But small trick helps: Connect any other usb device to the same 3.1 chip, asmedia has 2 ports.
An USB mouse can do this job.
During boot, the usb boot device "sees" its partner and only then starts usbstor.sys.
And then it uses usbstor.sys for itself:))

Dietmar
#294 diderius6 Hi all,
I just ordered EVGA Z390 Dark motherboard via Amazon.
I will install there ACPI XP with really all drivers for XP, given the real power and make a compare with Win10^^

Dietmar

PS: I just hear, that wine 4 works with DirectX 12.
#295 diderius6 Just in this moment my EVGA Z390 Dark motherboard arrives from USA.
Now fun starts with XP on it, have a nice sunny day,
Dietmar
#296 diderius6 Evga presents an XP friendly Bios with full ACPI support for the z390 dark
1E399092.bin
Dietmar
#297 diderius6 After very good results for speed test in any situation,

and long life,

I just ordered an
Intel Optane SSD 905P 960GB, PCIe 3.0 x4 (SSDPED1D960GAX1)

and will install XP SP3 on nvme on it.

In few days I report about,

Dietmar
#298 diderius6 Oha,
I just noticed, that the timer in the original XP Bios from EVGA for the z390 dark motherboard not works.
And also compi stays always in C0 state, brrr.
And the most crazy thing: This happens also in Win10, power consumption on 9900k always about 27 Watt..

Now I chance all against my modified

acpi.sys
hal.dll
intelppm.sys

and all is nice:
Full ACPI support with Hyperthreading, Timer works, powerconsumption on 9900k about 2 Watt:)).

This simple means,
we, Mov AX, 0xDEAD and me Dietmar
are better
Dietmar
#299 infuscomus
Zitat von ⇗ diderius6 im Beitrag ¶ #298


Now I chance all against my modified

acpi.sys
hal.dll
intelppm.sys




any chance i could try out your modified drivers for myself? or PM me the necessary hex edits you did for me to test the edits myself?
#300 RayeR Hi, very interesting thread and congrats to diderius6 for his effort and reporting progress.
Just an idea, instead of patching ACPI tables (which may get harder and harden in the future) would be possible to replace AMLI - acpi.sys by opensource counterpart from ReactOS? It seems they use ACPICA and it should be much more up to date than obsolete WXP original file. But I can imagine that it would be a hard work, probably the kernel intrface of ROS is not exactly same as WXP...
I also read somewhere that years ago some part of MS Windows sources had leaked (not sure if it was W2K/XP or other version) so if we could get acpi.sys sources it would be possibe to upgreade to implement newer 2.0 functions. If not maybe still possible to write some driver/filter that will be called before acpi.sys it will transform necessary things 2.0 to 1.0 and pass it further to original aspi.sys. But just thinking no idea if such hook possible and how hard to code it... I personally still run old good Sandybridge on a compatible MB but good luck to your work.

 

Page 21

#301 Mov AX, 0xDEAD
Zitat von ⇗ RayeR im Beitrag ¶ #300
replace AMLI - acpi.sys by opensource counterpart from ReactOS? It seems they use ACPICA and it should be much more up to date than obsolete WXP original file. But I can imagine that it would be a hard work, probably the kernel intrface of ROS is not exactly same as WXP...

MS uses own implementation of acpi and it very far from acpica, and yes, acpi.sys is not just acpi driver, it also implement some pnp/pci/resource functions and connected with kernel/hal
Zitat von ⇗ RayeR im Beitrag ¶ #300

I also read somewhere that years ago some part of MS Windows sources had leaked (not sure if it was W2K/XP or other version) so if we could get acpi.sys sources it would be possibe to upgreade to implement newer 2.0 functions. If not maybe still possible to write some driver/filter that will be called before acpi.sys it will transform necessary things 2.0 to 1.0 and pass it further to original aspi.sys.

- part of nt4 and win200 sources leaked, mainly user-mode, drivers not leaked
- this is impossible because we cannot emulate new commands by old acpi 1.0 syntax. we cannot skip new commands because logic will destroyed
#302 diderius6 ⇗ @Mov AX, 0xDEAD
May be it is possible,
to modify acpi.sys from XP in this way, that it just ignores the 3 keywords, which gives BSOD.

CopyObject
CreateQWordField
QwordConst

Another, really hard way would be, to teach acpi.sys the 14 words from Acpi 2.0,
have a nice evening,
Dietmar
#303 Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #302
@Mov AX, 0xDEAD
Another, really hard way would be, to teach acpi.sys the 14 words from Acpi 2.0,


hard but possible, it may take some weeks digging in IDA if you know 80386 asm
#304 diderius6 Today I make a new acpi.sys for XP SP3 32 bit.
It works on AMD, Intel motherboards,
for all languages,
Dietmar



diderius6 has attached files to this post
#305 diderius6 ⇗ @Mov AX, 0xDEAD

Oh, I just see, that you updated your acpi.sys for XP SP3 32 bit,
so that the error
0x000000A5 (0x00000003, xxxx, 0xС0140001, yyyy)
is gone.
This patch would be really nice, because this means no modding
of Bios any longer needed because of unknown ACPI 2.0 words
Dietmar

PS: With simple unconditional forced jmp (EB) I overcome
      0x000000A5 (0x00000011, ...
      0x000000A5 (0x00000002, ...
      0x000000A5 (0x00002001, ...
      0x000000A5 (0x00000008, ...

But this does not work for error
0x000000A5 (0x00000003, ...

Until now, I do not noticed any side effects,
but who knows^^..
#306 Mov AX, 0xDEAD Exploring acpi.sys on Windows Longhorn betas:
4008 - integers are 32 bit, support most of acpi 2.0 opcodes (except CopyObject, Timer, QWordConst)
***
4042 - last version with 32 bit integers
4051 - first version with 64 bit integers
***
4074 - support new opcode CopyObject
***
5048 - import table match win xp !!!
***
5342 - support new opcode Timer and QWordConst, PDB published on Microsoft SYMBOL Server
5365 - integers are 32/64 (switched depending revision of DSDT table, V1=32, V2=64), added Dynamic conversion of types, PDB published

Qemu Acpi 1.0 tests:
5048 + WinXP = acpi correct
5048 + Longhorn  = acpi correct

Qemu Acpi 2.0 tests:
5048, 5112, 5219 = bsod  0xA5 (0x14, xxx, 0x8A, yyy)
5259 = random bsods with error code or without
5342 = acpi correct, installer unstable
5365 = acpi correct

Skylake Acpi 2.0 hardware:
4008<->5342= bsod 0xA5 (0x03, xxx, C0140008, yyy)
5365 = acpi correct
#307 diderius6 ⇗ @Mov AX, 0xDEAD

"i'e played little with longhorn betas:"

Yesss, the idea is clear because 100% match of problem.
Only, how to overcome this, is other question
Dietmar
#308 RayeR Hi, thanks for clarification.
Just a question to this statement: " this is impossible because we cannot emulate new commands by old acpi 1.0 syntax"
I don't know how much new and old ACPI differs but I belive it should be possible to emulate new functions by old functions. E.g. if there was added some function to work with 64bit operands it could be broken to 32bit operations in osme auxiliary function. Like in C I could code my own libC functions with bare C code or old libC functions to implement new libC functions. But maybe I'm wrong and new ACPI is too different...

BTW
another idea that could help with managing of your ACPI patches. I found that Apple MAC comunity uses a nice tool called MACiASL. It bundles iALS with some editor, patch engine and GUI. The idea is you can create text file patches for specific BIOS/motherboard to share and contribute by other users. They can then choose and download specific patches and apply them to theirs own DSDT (or could be on BIOS image for this purpose). Some patterns that needs to be replaced are generic in various BIOS ACPI tables so this can save some work and could extend patches for other motherboards...

⇗ http://www.macbreaker.com/2014/03/how-to...th-maciasl.html
#309 Mov AX, 0xDEAD
Zitat von ⇗ RayeR im Beitrag ¶ #308
They can then choose and download specific patches and apply them to theirs own DSDT (or could be on BIOS image for this purpose). Some patterns that needs to be replaced are generic in various BIOS ACPI tables so this can save some work and could extend patches for other motherboards...


this method is low effective, since the skylake+ bioses has a huge number of new acpi 2.0 commands in many places and the generic patterns will have to replace a lot of lines with their acpi 1.0 equivalents, which still need to be written.
#310 diderius6 History of Windows Vista ( aka Longhorn) is really interesting:)).
It started in 1999 (!) on the files from XP.
Later, they make a mix of XP and Winserver 2003, which makes it instabil.
After version 4094 they make a brake and decided to take only Win2003 SP1 as base for Vista.
So, Vista is an ideal candidate for XP SP4^^
Dietmar
#311 diderius6 ⇗ @Mov AX, 0xDEAD
Have you tried Longhorn versions > 5048
for import table match XP?
They are still downloadable
Dietmar

PS: 5384?

EDIT: Nice, 5048 boots XP SP3
#312 Mov AX, 0xDEAD
Zitat
Have you tried Longhorn versions > 5048


not yet, i have links to download only 5112(beta1), 5219(beta2), 5229(beta2)

Zitat von ⇗ diderius6 im Beitrag ¶ #311

PS: 5384?


vista beta2, big mismath import table like usual vista
#313 diderius6 Make try with
⇗ https://winworldpc.com/product/windows-l...-vis/post-reset
Dietmar
#314 diderius6 Latest Windows Longhorn (6.0.5840.16384) (rc2)
does not work, needs other ntoskernel,
Dietmar

Edit: 5536, 5384, 5342 the same, also not work.

PS: 5048 on
     normal Bios vers. 106 on EVGA z390 dark gives the same BSOD as for you
     0xA5 (0x03, xxx, C0140008, yyy)
This sounds like, that least one vocabel from the DSDT table acpi.sys 5048 does not like.
But this is a big step forward.

Ok, small hack, that compi jumps over this deathzone:)) gives now
0x000000A5 (0x00010006, ..., ..., ...)

EDIT2: Next Hack with jump over next deathzone, now compi hangs during boot
          after drvmain.sdb , yes this hangs at acpi.sys
AppPatch/drvmain.sdb
DRIVERS/ACPI.sys
#315 Mov AX, 0xDEAD ¶ Windows XP SP3 32bit and modern PC parts (21)

 

Page 22

#316 diderius6 I can install normal (my own) Vista 32 bit on the EVGA dark z390 motherboard with Bios 106,
without any BSOD (no mouse, brrr:-)).
So they change something in Acpi from version 5048 to last Vista 2006.
This means, there is hope for XP SP4 (Vista^^)
Dietmar

PS: The Bios 106 from the EVGA board contains the ACPI 2.0 words
     QwordMemory (and QwordAcc).
     This may be the reason for BSOD, because this words do not appear in the Assembler Source
     of acpi.sys 5084 (Qword...).
#317 diderius6 Microsoft Windows Vista (''Longhorn'' 6.0.5270.9)
acpi.sys some changes in Hal.dll and ntoskrnl.exe
Dietmar

EDIT: Also some changes needed for acpi.sys in
hal.dll and ntoskrnl.exe for Windows Vista (''Longhorn'' 6.0.5259.0) ,
the same for
Microsoft Windows Vista (''Longhorn'' 6.0.5231.0),
Microsoft Windows Vista (''Longhorn'' 6.0.5219.0)
Microsoft Windows Vista (''Longhorn'' 6.0.5112.0)
Microsoft Windows Vista (''Longhorn'' 6.0.5365.8)
Microsoft Windows Vista (''Longhorn'' 6.0.5472.5)
#318 Mov AX, 0xDEAD .del
#319 diderius6 The ACPI 2.0 word Qword..
I do not find in any acpi.sys.
Only the word CreateQwordField.
So, this are 2 different vocabularies,
Dietmar

PS: An the Asus Apex 10 Bios there was a work around as I remember
for XP and Vista for the Qword..
but not for CreateQwordField.
#320 diderius6 When I try to install Vista (calls itself Longhorn^^) 5048 via DVD
on real Evga dark z390 with Bios 106 motherboard,
I get in the very beginning the same BSOD as under XP:
0xA5 (0x03, xxx, C0140008, yyy)

So, it is related to this acpi.sys from 5048
Dietmar

PS: Now hard works start, to find the first Vista, which installs Vista without this BSOD
on this board.
Then you compare this acpi.sys with this BSOD as above  vs  first  acpi.sys without this BSOD,
all under Vista setup.
#321 diderius6 Yepp ,
Microsoft Windows Vista (''Longhorn'' 6.0.5472.5)
installs Vista 32 Bit without BSOD on real Evga dark z390 with Bios 106
Dietmar
#322 Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #321
Microsoft Windows Vista (''Longhorn'' 6.0.5472.5) installs Vista 32 Bit without BSOD


5342.2 - bsod
5365.8 - ?
5381.1 - ?
5384.4 - acpi corect
#323 Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #319
The ACPI 2.0 word Qword..
I do not find in any acpi.sys.


#define AML_QWORD_OP   0x0e
you will never found it, because it has no text presentation, it is opcode for storing 64 bit integer constants
see amlcode.h, it show all you need
#324 diderius6 5384.4  acpi correct I can just confirm:)),



5365.8   acpi also correct, so this is the very first version without any BSOD

5342.2 - same BSOD as before, I just can confirm. This is last version of Vista with BSOD.


Dietmar
#325 diderius6 A difference, that I can see at once between this 2 acpi.sys is,
that the Acpi.sys which works, has extra connections to ntoskrnl.exe
via

    ETW EventEnabled
    ETW Register
    ETW  Write

Dietmar

PS: But I do not think, that this is the reason why no BSOD.
#326 diderius6 I changed in acpi.sys (5048)
8BFF558BEC8B4D0C85C98B45148B50187D218B550885D289482074058B4210EB0233C0
5051526A0368A5000000FF154C620300C74018020000005283C01050E836FFFFFF5DC3

against (from acpi.sys 5365)
8BFF558BEC8B4D0C85C98B45148B50187D218B550885D289482074058B4210EB0233C0
5051526A0368A5000000FF15AC420300C74018020000005283C01050E850FFFFFF5DC3

But this gives during start of XP SP3 BSOD 0x7B
Dietmar

EDIT: This you can forget: This BSOD routine is absolut identic, only the adresses changed.
#327 diderius6 The 5048 acpi.sys boots the Asus Apex X (Bios 1901) XP SP3 with full Acpi support
without any modification.

So, for some motherboards no hack at all is needed in acpi.sys.

About the Asus board: They isolate Qword.. in Bios for XP and Vista.
So, may be the Amli Interpreter has a problem with this word.
And it has been undiscovered in so many versions of Vista, because 2006
was no Bios with Acpi 2.0 on the market
Dietmar

PS: Idea from this is: What did change in Amli Interpreter from version
     5342.2 to 5365.8 . My favorit is QwordConstant.
If we cant overcome this: The only word in DSDT what has to be isolatet is Qword..
And this would be in the same time the test, if the idea about Qword is right.

EDIT: The problem with timer (needs modified hal.dll) and with Power states (needs modified intelppm.sys)
         is the same as before with 5048 acpi.sys. So, this acpi.sys solves only BSOD A5.
#328 diderius6 New acpi.sys for XP SP3 32 bit,

all languages and compis.

Please tell me results for making things better

Dietmar

EDIT: The problem is more complex:
         
         On my asrock fatal1ty z370 gaming k6
         with acpi.sys 5048 I get again
         BSOD  0xA5 (0x03, xxx, C0140008, yyy).
         And in its Bios I isolated ALL CreateQwordField
         and CopyObject instructions.
        
EDIT2: The problem may be really in QwordConstant:
acpi.sys from XP has no problem with this word.
But acpi.sys 5048 has.
This I know, because in DSDT table from the asrock fatal1ty z370 gaming k6
there appear QwordMemory and QwordAcc. I do not isolate them.
XP boots.

And may be because of QwordMemory and QwordAcc
BSOD 0xA5 (0x03, xxx, C0140008, yyy)
with acpi.sys 5084 on the Asrock board.

So, at the moment, acpi.sys 5084 is worse than my modded acpi.sys before.



diderius6 has attached files to this post
#329 diderius6 acpi.sys from Windows Vista (Longhorn) 3683 also
match all dependencies from ntoskrnl.exe and hal.dll
but it is from 2002 (!) and looks like XP pur,
Dietmar
#330 diderius6 acpi.sys from Microsoft Windows Vista (''Longhorn'' 6.0.4011.0)
gives during Vista install on my Asrock board the known error 0xA5 (0x2..).
This BSOD I know, it is the same as from XP SP3 normal acpi.sys.
So, this Vista acpi.sys is not better than the one for XP
Dietmar

 

Page 23

#331 diderius6 I just isolate the Acpi 2.0 word QwordAcc in Bios 3.20 of the Asrock board.
The QwordMemory word stays in Bios.
This gives the same BSOD 0xA5 (0x03, xxx, C0140008, yyy) as before on ahci.sys 5084
Dietmar
#332 diderius6 Now I isolate Acpi 2.0 word QwordAcc in Bios 3.20 of the Asrock board and
also word QwordMemory at all its places in Bios.
The resultat is a changed BSOD
0x000000A5 (0x00000003, xxx, 0xC0000034, yyy).
One thing you can see from this: QwordMemory and QwordAcc are not the (only) reason
for BSOD 0x000000A5 (0x00000003 on acpi.sys 5048.
Dietmar

EDIT: When I start with this modified Bios and use my own, modified acpi.sys,
which works for this board, I get now BSOD 0x7b,
so this happens because I isolate QwordMemory in Bios.
There is other important information in this large block with QwordMemory,
which I block. So even Win7 does not want to start from this Bios.
I Flash Bios back, now all ok again.
#333 diderius6 May be, nearly all Bios
have real errors.
Very critical acpi.sys gives them all together out as 0x000000A5 (0x00000003, xxx, C0140008, yyy).
And the only thing, why this error goes away is,
that newer acpi.sys from Vista are more error tolerable
Dietmar
#334 diderius6 After a lot of problems,
I succeed to install Windows Vista (''Longhorn'' 6.0.4011.0)
on the EVGA dark z390 motherboard via installed XP SP3 on it and the Asmedia AHCI connectors.
So acpi.sys 4011 shows no errror in correct Bios
Dietmar

EDIT: The acpi.sys 4011 has also a new dependency on ntoskrnl.exe and also one to hal.dll.
         When I try to start XP SP3 with this acpi.sys 4011  I get BSOD 0x7B.

EDIT2: acpi.sys 4008 has no (!) new dependency on ntoskrnl.exe but one to hal.dll,
which gives BSOD 0x7B on try to boot XP SP3.

EDIT3: acpi.sys 3718 has no extra dependencies, but also no ACPI 2.0 in it.
          No BSOD but hangs on boot XP SP3.
#335 infuscomus I tested ACPI beta 5048

7E BSOD specific to acpi.sys
#336 diderius6 ⇗ @infuscomus
The BSOD 7E can happen,
when you have a driver for your harddisk AHCI,
that is similar to the right driver.
For example you use DEV_A353
but the real name is DEV_A352
Dietmar

EDIT: The reason can be in this case something complete different:
When you change acpi.sys, whole structure how windows loads drivers,
changed. So, this alone can make this BSOD.
For to test this, you have to open HIVE "system" in WINDOWS\system32\config
(from your XP with acpi.sys vers 5048)
in another XP and import with regedit from commandline to HKLM (load structure).
When you named the HIVE system for example otto,
you find otto under HKLM of your working XP.
Delete there key MountedDevices (in otto).
After deleting, mark otto blue (with mouseclick on it), go up left corner "Struktur entfernen" (in German).
Then, on your connected XP with acpi.sys 5048 the chances are automaticall stored.

EDIT: BSOD 7E can have a lot of reasons. To me happend the same BSOD with newer versions
of acpi.sys from Win2003.
#337 infuscomus It's the ACPI(beta) driver, not AHCI
#338 diderius6 I noticed a difference between acpi.sys XP SP3 and acpi.sys 5048 on the Asus Apex X board, both work on unmodded Bios, here vers. 1704.
The 5048 acpi.sys tries to install a device via acpiec.sys (from XP) but failed to do this:
Name (_HID, EisaId ("PNP0C09") /* Embedded Controller Device */)  // _HID: Hardware ID
Yellow questionmark in device manager: No error, but device does not start.
I just checked, this device is indeed in the DSDT table from Bios 1701 of the Asus Apex X board.
This device does not appear in XP acpi.sys list.
This again makes me think, that nothing importand changed in those acpi.sys,
only the acpi.sys 5048 works more correct as the one from XP
Dietmar

PS: The work together from acpi.sys with acpiec.sys is unclear for me. How can each driver know,
     which device is for what driver, when they share one DSDT table???
     The driver acpiec.sys is in folder drivers of XP SP3.
#339 diderius6 ⇗ @Mov AX, 0xDEAD

Vista 5365 - integers are 32/64 (selectable depending revision of DSDT table, V1=32, V2=64), added Dynamic conversion of types,
PDB published.
Nice finding, this overcomes any problems with 32 bit <-> 64 bit in acpi.sys.

Which version of  Windbg do you use for this (Server under XP Windbg?) and where to you find the acpi.pdb for the 5365 version?

Did you understand, how the select mechanism for V1, V2 works (can it easy be faked, meaning always V1=32) and the following "Dynamic conversion of types" and can it be implemented (set V1=32) in 5048 acpi.sys version?
Dietmar
#340 diderius6 ⇗ @Mov AX, 0xDEAD

Do you think, that 5365 acpi.sys still works,
when you just cancel extra questions (dependencies) to XP ha.dll and XP ntoskrnl.exe in it
Dietmar
#341 infuscomus You can try using blackwingcat's PEMaker to edit the import table?

⇗ http://blog.livedoor.jp/blackwingcat/archives/1313117.html

although, I don't know if this will work.
#342 diderius6 ⇗ @infuscomus

Waaoh, this is really a nice tool,
thank you very much
Dietmar

PS: At once I come to the idea, to make the INTEL 219 lan driver
     to work with XP via this tool.

EDIT: My problem is now, that I do not understand, HOW I can modify the import table from acpi.sys 5048
with this tool. I cant see any option to modify this importlist, only can see it.
#343 Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #339
@Mov AX, 0xDEAD
Vista 5365 - integers are 32/64 (selectable depending revision of DSDT table, V1=32, V2=64), added Dynamic conversion of types,
PDB published. Nice finding, this overcomes any problems with 32 bit <-> 64 bit in acpi.sys.
Which version of  Windbg do you use for this (Server under XP Windbg?) and where to you find the acpi.pdb for the 5365 version?
Did you understand, how the select mechanism for V1, V2 works (can it easy be faked, meaning always V1=32) and the following "Dynamic conversion of types" and can it be implemented (set V1=32) in 5048 acpi.sys version?
Dietmar

- any windbg has symbol downloader tool, just C:\Program Files (x86)\Windows Kits\8.1\Debuggers\x86\symchk.exe /v acpi.sys, result in c:\windows'symbol\
- if revision=v1, all internal integers operation are 32 width, this is compatibility mode with old bioses (acpi 1.x only ???), we still can use all qword* opcodes, i think if we need access to 64bit things, we access only low 32 dword, high is forced to zero
- if revision=v2, all ints are 64bit, no limitation, full access to any field/mem
- "Dynamic conversion of types" is not integer conv, this is conversion string to buffer or vice versa or some else, i see this conv in handlers of two opcodes: Index(), LogOp(and,or,not)
#344 Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #340

when you just cancel extra questions (dependencies) to XP ha.dll and XP ntoskrnl.exe in it


remove import, remove call in code and place some code (emulate orig logic) instead, you need be asm hacker to do this...
#345 diderius6 ⇗ @Mov AX, 0xDEAD

Yes, but the nice thing in this would be,
that you can use the original, last vista acpi.sys
Dietmar

PS: I take a look at this extra functions in ntoskrnl.exe and hal.dll.
     I do not think, that they are really needed for working acpi.sys.

 

Page 24

#346 diderius6 May be it is not so difficult:
Just take import list from acpi.sys 5048
and replace with it import list from acpi.sys 5365
Dietmar
#347 infuscomus
Zitat von ⇗ diderius6 im Beitrag ¶ #342
@infuscomus

Waaoh, this is really a nice tool,
thank you very much
Dietmar

PS: At once I come to the idea, to make the INTEL 219 lan driver
     to work with XP via this tool.

EDIT: My problem is now, that I do not understand, HOW I can modify the import table from acpi.sys 5048
with this tool. I cant see any option to modify this importlist, only can see it.


I think PEMaker 0.82 is bugged - use PEMaker 0.60

select english
under Import TBL tab - the button ?? next to replace button is delete button - you can delete imports this way

there is another tool - PETool 0.0.5 that can add exports too if you need it
⇗ https://msfn.org/board/topic/146529-pe-t...eating-patches/
#348 diderius6 ⇗ @infuscomus
yessa ,
Version PEMKR031 works,
I can edit the Importtable from acpi.sys 5365,
now really fun starts,
Dietmar
#349 diderius6 Yessa, all missmatched dependencys killed from acpi.sys 5365 to
ntoskrnl.exe from XP SP3.
Dependency Walker shows this,
nice,
wow,
now
hal.dll
Dietmar

Edit: hal.dll is also freed from all evil!
#350 diderius6 Not work, acpi.sys 5365 shows BSOD 0x7b,
sniff
Dietmar



EDIT: The fun is not over,
because I just notice, that acpi.sys 5365 has some more and also some missing components
comparing with acpi.sys from XP SP3.
#351 Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #349
Yessa, all missmatched dependencys killed from acpi.sys 5365 to
Edit: hal.dll is also freed from all evil!

It reminds me of a runner, who gets shot off one foot after the other )
When you kill import, loader will not reference some function to external dll, and when this function called inside acpi.sys, it will call/jmp to zero or something like that.

example:

KeStartDynamicProcessor not exist in winxp kernel, you killed import, you need write own func inside acpi.sys or avoid calling it.
some funcs like EtwRegister is useless trash and we can avoid calling it without any problem
you can't skip important func like IoConnectInterruptEx, it register ISR handler to interrupt processing, as we know acpi has own interrupt/irq line and need this handler
#352 diderius6 Yes, I think this is true.
I changed all 67 dependencies, the file acpi.sys from 5365 looks now identic like this one from XP,
but still gives at boot BSOD 0x7b,
Dietmar
#353 diderius6 No, the Tool is not such stupid.
It also cancel the function call in its routine,
when it is deleted from Importtable.
I make a check:
My last acpi.sys build from 5365 with about 100 changes.
And compare with original acpi.sys 5365.

call    ds:KeStartDynamicProcessor

is gone in the modified one
Dietmar

PS: But I understand now, why I get BSOD 0x7B.
The Tool killes all dependencys to hal.dll, I checked this with IDA, crazy,
even they are still shown. But IDA pro shows at once, no dependencies left for hal.dll, brrr..

EDIT: Even I think, you can really make an working acpi.sys via this tool, in the end all the new progress from Vista is gone,
it is a clone from the XP acpi.sys with some new opcodes for XP routines.

EDIT2: For to understand, what is going on, I added the function KeFlushWriteBuffer,
which is normally not in acpi.sys from XP to acpi.sys from XP, ntoskrnl knows about it.
Again the strange thing happens: I got BSOD 0x7B and the dependency for ALL functions on hal.dll are
gone again, brr.



diderius6 has attached files to this post
#354 infuscomus We could try adding forwarded exports to XP ntoskrnl using PETool 0.0.5 - possibly?
#355 infuscomus I made an attempt at forwarded exports for ACPI 5365 - but I'm not sure how well I did.

I think I messed up XP hal.dll - or not? need to test

⇗ https://ufile.io/mjsgw0r9

fixed pshed dll
⇗ https://ufile.io/toamtpf4
#356 diderius6 ⇗ @infuscomus
I make a try similar to this yesterday also.
I put acpi.sys 5365 together with ntoskrnl from its Vista
and all the dll, that I found via Dependency Walker.
But even in this way it becomes Vista:)),
compi always cries, a dll is missing,
Dietmar

PS: I do not think, that the PE Tool from Blackwingcat is so bad.
I take a look with Beyond Compare 2 to it, what happens.
3 sections are always like cut out, changed, but nothing more.
So, even the tool deleted all dependencies to hal.dll,
that Ida Pro cant find them (they are reall gone, I checked),
there is a chance to give them back after operation.
I will make a test today: I take the working acpi.sys from XP
and delete one of its functions and give it after back with the Tool.
Via this way you can precise see, where the Tool went wrong.
#357 diderius6 ⇗ @infuscomus
With the tool
Dependecy Walker
you can see, what went wrong in your forwarding,
Dietmar
PS: The idea is nice, only I think then you need a lot of other dll from Vista.
#358 diderius6 It seems, that the Pe-Tool only cancels the name of the dependency,
the dependencies itself as .idata are still at there place.
Ida Pro looks only for the names of dependencies (blind),
but Dependency Walker looks at real dependencies (good).
May be, when you add a new function, there is not enough place in "subtable" aka Pe-Tool.
Not easy to delete a function and then add another,
because which function is not needed,
Dietmar

EDIT: In XP SP3, the Pe-Tool does not work correct.
        For to test this, I first delete function KfAcquireSpinLock
        and then add it again. Gives just BSOD 0x7B.
        A check with Beyond Compare 2 shows, that there are only minimal
        differences between the original acpi.sys and this "new" build acpi.sys.

EDIT2: May be, the tool changed the functions against them from Win2000?!
#359 infuscomus can you compare the files i have made to yours? - are we getting the same problem?

⇗ https://ufile.io/l2nq5ng9

p.s - I tried to integrate files into install media, i got ntkrnlmp.exe error code 7 in textmode
#360 diderius6 When you look at acpi.sys with Dependency Walker,
you can see, that some forwarded functions to ntoskrnl.exe are red,
means not correct
Dietmar

 

Page 25

#361 diderius6 Yeaaah, I just get the version 0.82 to work.
And voila, now the dependency to hal.dll is kept,
lets see, if mody mody modified acpi.sys boots XP
Dietmar
#362 infuscomus do you get strange errors like this?

#363 diderius6 ⇗ @infuscomus

No, my problem was, that all was green,
but even then modified acpi.sys does not work
Dietmar

EDIT: Njet, again BSOD 0x7B, brrr..
#364 diderius6 Oh, I think I am only 1 step away from break through:
Now I get BSOD FC (...) hihi, interesting.. in not executable memory..
Dietmar

EDIT: I think this is the fault of the Pe-tool 0.82. It changes adresses and so follows this BSOD in XP.

#365 infuscomus could these files be made to work?

⇗ https://ufile.io/l2nq5ng9

or is this the wrong solution for this problem?
#366 diderius6 Forwarding is not correct done.
I do not know, if with this forwarding tool Pe 005
it is easier than with 0.82 version from Blackwingcat.
I think, the PETool 0.82 does not work correct with XP
Dietmar
#367 infuscomus If forwarding is not the right solution, any other ideas?
#368 infuscomus
Zitat von ⇗ diderius6 im Beitrag ¶ #364
Oh, I think I am only 1 step away from break through:
Now I get BSOD FC (...) hihi, interesting.. in not executable memory..
Dietmar

EDIT: I think this is the fault of the Pe-tool 0.82. It changes adresses and so follows this BSOD in XP.



maybe set execute flag for that section? I'm just guessing
#369 diderius6 This is very difficult,
to write own code for acpi.sys. I tried to integrate word "ToInteger" in normal acpi.sys from XP.
This is really crazy work.
For me, using the 0.82 PE-Tool with edit Import Functions, was "best result"
no BSOD, but you can see the running pixel for ever^^
Dietmar

EDIT: Problem is, that I do not understand why and how the Pe-Tool changes adresses.
For me this makes no sense: When you delete a function and afterward add it again,
why should change anything???
#370 infuscomus
Zitat von ⇗ diderius6 im Beitrag ¶ #369
This is very difficult,
to write own code for acpi.sys. I tried to integrate word "ToInteger" in normal acpi.sys from XP.
This is really crazy work.
For me, using the 0.82 PE-Tool with edit Export Functions, was "best result"
no BSOD, but you can see the running pixel for ever^^
Dietmar

EDIT: Problem is, that I do not understand why and how the Pe-Tool changes adresses.
For me this makes no sense: When you delete a function and afterward add it again,
why should change anything???


I mainly used PEMaker 0.82 to remove imports

Try this tool for adding exports maybe? - you might have better luck with this

⇗ https://msfn.org/board/topic/146529-pe-t...eating-patches/

I used this to add new export functions
#371 diderius6 I find out,
what the 0.82 tool did.
For this I produce a *.lst file via Ida Pro before
and one *.lst file after deleting and adding the same function
in original acpi.sys from XP. This 2 textfiles I compare with Beyond Compare 2.

The tool changes

KfReleaseSpinLock <-> WRITE_PORT_ULONG

If all adresses would be changed correct also,
then this would be not a problem.
But it is.
So, may be the tool can be forced to let the adresses combined with the function names
unchanged,
Dietmar

PS: This finding gives me hope:-)!
#372 infuscomus have you tried PETool 0.0.5? does it produce the same result as PEMaker 0.82?
#373 diderius6 No, at the moment I have not tried.
The problem is with forwarding, that you have to find all
the dlls, that match the "new" kernel.
With the 0.82 tool, you need nothing, even not the files hal.dll and ntoskrnl.exe.
where the acpi.sys depends on.
I begin to understand, how this tool works.
It is like a text based program.
It delets for you functions and put them in,
without any knowing of the functions itself.
It just operates on their names and adresses.
So, in principle this is a nice idea and much less complicate as
I thought in the beginning.
I wonder, why Blackwingcat does not support it any more,
0.82 is from 2012.
And it does not matter if the operating system is NT4, win2000, XP, Vista, Win7..
because their structure is identic
Dietmar
#374 diderius6 Yesssssssssssssssssssssssssaaaaaaaaaaaaaaaaaaaaaaaaa
XP SP3 boots with modified acpi.sys via PE-Tool 0.82.
You only have to force the PE-Tool,
not to change in each function its raw adress
Dietmar
#375 infuscomus
Zitat von ⇗ diderius6 im Beitrag ¶ #374
Yesssssssssssssssssssssssssaaaaaaaaaaaaaaaaaaaaaaaaa
XP SP3 boots with modified acpi.sys via PE-Tool 0.82.
You only have to force the PE-Tool,
not to change in each function its raw adress
Dietmar


well done!
I'm happy to hear you have got it working,
I'd love to try it out myself (I do hope this solves my 7B BSOD)

 

Page 26

#376 diderius6 Now I notice,
that acpi.sys 5365 has much more dependencies than acpi.sys from XP SP3.

NTOSKRNL.EXE
PSHED.DLL
HAL.DLL
BOOTVID.DLL
KDCOM.DLL
CLFS.SYS
CI.DLL
WMILIB.SYS

And the Pe-Tool 0.82 seems not to like to work with Vista,
Dietmar

EDIT: Lucky, that this is only true for 0.82 version. 0.60 version of the Pe-Tool works also for Vista files.
#377 diderius6 Next try with acpi.sys 5365 for XP SP3 boot,
but gives BSOD 0x7B
Dietmar



diderius6 has attached files to this post
#378 infuscomus I tried it out, I got - file acpi.sys is corrupted - in textmode setup

edit: missing - RtlInvertRangeListEx
#379 infuscomus maybe we can use the reactOS ACPI driver?
#380 diderius6 To modify the DSDT table on XP to an XP friendly DSDT version works,
if you succeed to load this table to registry (HIVE system to ram) before boot.
I tested this with the flag for the legacy timer via s4e method, works.
On Win2003 this is other situation,
because DSDT is not stored in registry,
only read direct from Bios
Dietmar
#381 diderius6 ⇗ @Mov AX, 0xDEAD

Do you find out,
why acpi.sys 5048 and all those acpi.sys versions for Vista around crashes on  XP unfriendly Bios
always with the same BSOD

0xA5 (0x03, xxx, C0140008, yyy)


When something went wrong, this BSOD takes you to the adress,
where this BSOD happens.

At which part of the DSDT table happens this, when acpi.sys reads DSDT?


The ACPI 2.0 words, which make problems for acpi.sys from XP

CopyObject
CreateQwordfield
QwordConst

are already integrated in acpi.sys 5048,
so this "always the same BSOD" may have a reason,
which can be easy overcome
Dietmar

EDIT: NTStatus Code
C0140008 STATUS_ACPI_INVALID_ARGTYPE An argument with an incorrect type was specified
It is in ntstatus.h .
May be small hack in ntoskrnl.exe and this is gone?
#382 infuscomus
Zitat von ⇗ diderius6 im Beitrag ¶ #380
To modify the DSDT table on XP to an XP friendly DSDT version works,
if you succeed to load this table to registry (HIVE system to ram) before boot.
I tested this with the flag for the legacy timer via s4e method, works.
On Win2003 this is other situation,
because DSDT is not stored in registry,
only read direct from Bios
Dietmar


Do you mean just edit SETUPREG.HIV or something else?
#383 infuscomus ⇗ @diderius6

my test of ACPI 5048 on AMD



edit: I also tested reactos ACPI driver in virtualbox - 7B BSOD

edit2: reactos ACPI and ATAPI in virtualbox - no 7B in XP textmode - I might try this on real hardware
#384 diderius6 ⇗ @infuscomus

No, it is the part of registry, called "system".

C:\WINDOWS\system32\config system

If you want, you can send to me this file "system" from your AMD 350 motherboard.
I will delete there key MountedDevices and I look for
the asmedia 106x driver, if it is correct integrated there
Dietmar

dietmar.stoelting@t-online.de
#385 infuscomus
Zitat von ⇗ diderius6 im Beitrag ¶ #384
@infuscomus

No, it is the part of registry, called "system".

C:\WINDOWS\system32\config system

If you want, you can send to me this file "system" from your AMD 350 motherboard.
I will delete there key MountedDevices and I look for
the asmedia 106x driver, if it is correct integrated there
Dietmar

dietmar.stoelting@t-online.de


I've never gotten XP to successfully install on this AMD 350 Motherboard, so I don't have a config system file to show you.
#386 Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #381

why acpi.sys 5048 and all those acpi.sys versions for Vista around crashes on  XP unfriendly Bios
always with the same BSOD
0xA5 (0x03, xxx, C0140008, yyy)


search acpi.sys for "C0140008" string, error in _ValidateArgTypes, _CreateField or _ObjTypeSizeOf

ValidateArgTypes is called after every opcode, it check arg type vs some string code "D", "C", "I", "..." (for example argument ToInteger() can has only 3 types: Integer,String,Buffer and coded as "D")
#387 diderius6 I just got the nice information,
that acpi.sys from Winserver 2003 R2 (5.2.3790.16384 )
has all Acpi 2.0 words integrated
Dietmar

PS: This file match the importtable from XP.
#388 infuscomus
Zitat von ⇗ diderius6 im Beitrag ¶ #387
I just got the nice information,
that acpi.sys from Winserver 2003 R2 (5.2.3790.16384 )
has all Acpi 2.0 words integrated
Dietmar

PS: This file match the importtable from XP.


can it work?
#389 diderius6 I just test 2 different versions of acpi.sys Win Server 2003 R2 (2003 R2 5.2.3790.16384  and 2003 R2 5.2.3790.3959 )
They give both BSOD 0x7B on XP SP3.
I think, it is because the load process of DSDT table is different
between XP and Win2003.
Win 2003 takes it from Bios and XP from registry.
At the moment,
they can only boot Win2003
Dietmar

EDIT: Interesting is this for sure:
        I also test acpi.sys from winserver 2003 SP1 5.2.3790.1830,
        this gives old know BSOD A5.
#390 infuscomus I can install and boot XP with 2003 ACPI in a virtualbox VM

 

Page 27

#391 diderius6 I make an USB boot with newest acpi.sys from Winserver 2003, for to overcome BSOD 0x7B.
Does anybody know,
what this message mean?
I have never seen before
Dietmar




EDIT: 0x7E( 0xC0000005: STATUS_ACCESS_VIOLATION indicates a memory access violation occurred.
This may be the old problem of really uncorrect Bios on the Asrock board.
DSDT writes in reserved memory (it is the adress for the COM1 port).

EDIT2: No, it is the fault of acpi.sys from win2003. On the EVGA Dark z390 board with XP friendly Bios
I get BSOD 0xD1 (0x28, 0x02,0x00,0xblabla)
Bug Check 0xD1: DRIVER_IRQL_NOT_LESS_OR_EQUAL

The DRIVER_IRQL_NOT_LESS_OR_EQUAL bug check has a value of 0x000000D1. This indicates that a kernel-mode driver    attempted to access pageable memory while the process IRQL that was too high.

EDIT3: acpi.sys 5.2.3790.3959 boots XP friendly Bios.
But on other Bios gives A5 0x11 BSOD. This is the same BSOD, as acpi.sys from XP SP3 gives.
May be the problem with unknow words from ACPI 2.0 is gone in latest acpi.sys from win2003.
But other problems remain.
acpi.sys 5.2.3790.3959 is more complex than from XP. So, easy hack isnt.
#392 infuscomus
Zitat von ⇗ diderius6 im Beitrag ¶ #391
EDIT: 0x7E( 0xC0000005: STATUS_ACCESS_VIOLATION indicates a memory access violation occurred.
This may be the old problem of really uncorrect Bios on the Asrock board.
DSDT writes in reserved memory (it is the adress for the COM1 port).


I got this exact error using ACPI 5048

⇗ @diderius6 can you test reactOS ACPI driver for results?

infuscomus has attached files to this post
#393 diderius6 ⇗ @infuscomus
I just test the acpi.sys from Reactos on XP SP3.
The importtable match with XP.
But on XP unfriendly and on XP friendly Bios
I always get BSOD 0x7B.
I take a closer look at this acpi.sys from reactos.
It works not via strings like "ToInteger".
But may be this is the future
Dietmar

EDIT: Also BSOD 0x7B for USB boot.
Interesting would be, how this acpi.sys from reactos
will work on a Win2003 installation.
#394 infuscomus
Zitat von ⇗ diderius6 im Beitrag ¶ #393
I just test the acpi.sys from Reactos on XP SP3.
The importtable match with XP.
But on XP unfriendly and on XP friendly Bios
I always get BSOD 0x7B.
I take a closer look at this acpi.sys from reactos.
It works not via strings like "ToInteger".
But may be this is the future
Dietmar


I got the same result with my test - BSOD 7B


⇗ @diderius6  maybe try to compile reactos ACPI driver code with windows DDK?
#395 diderius6 It will not work,
because it is complete different compiler surrounding,
Dietmar
#396 infuscomus GCC compiled reactos ACPI - no 7B BSOD in virtualbox
#397 diderius6 I make some more tests with the newest acpi.sys from WinServer 2003 on XP unfriendly Bios.
With first variant I get BSOD A5 (0x11, 0x08,..)
with second BSOD A5 (0x02,..).
It is exact the same behavior as with acpi.sys from XP SP 3
Dietmar
#398 infuscomus ⇗ @diderius6 this compiled reactos ACPI driver works in virtualbox (compiled with GCC) - can you test for result?
#399 diderius6 ⇗ @infuscomus
Is it another acpi.sys,
than you send to me?
The one you send, gives always
BSOD 0x7B
Dietmar

Edit: Which cpu is on your mainboard asrock fatal1ty ab350 gaming k4?
You can just flash an older BIOS, look for this on website from Asrock
for compability for your cpu.
#400 infuscomus my CPU is a Ryzen 5 2400g - in case running natively cannot work and I have to switch to virtualization with PCI Passthrough
#401 diderius6 ⇗ @infuscomus
After some problems because of 3.3 V against 1.8 V on ch341a programmer and versions problems (for me ONLY vers. 118 (!) and 140 work correct). I read Bios chip 4 times out with this 2 versions and compare with Winhex.
Then I compare those files with original Bios P4.60 from the asrock website with Beyond Compare 2.
Because the blocks are identic, I can see that only the special information for example MAC number for board is different.
Now I am 99% sure, that I get all information from the Bios on my motherboard asrock fatal1ty ab350 gaming k4.
I succeed to read out its Bioschip 25Q128FWSQ with Bios Vers. 4.60 on this asrock fatal1ty ab350 gaming k4 board.
This is the oldest Bios version, that supports Ryzen 5 2400g,
Dietmar

PS: Because processor 1700 arrives only tomorrow, then fun continues for ACPI boot XP SP3 on this board.
     I read on different russian websites, that until now nobody succeeds with this.
#402 infuscomus I wish you good luck.
#403 diderius6 ⇗ @infuscomus

I succeed to install XP SP3,
but only without ACPI.

This was really a hard job. No mouse, no USB,
no AHCI.. No PS\2 y-cable possible, only keyboard. But nvme works.
I noticed, that there are errors in the DSDT table.
A variable in CreateQwordfield is without name.
I do nvme boot on this board, because before I have no AHCI driver.
Later I noticed, that the SATA slots on the board are wrong numerated.
The 2 Asmedia Sata slots are the first 2 in the row with the 4(!)
Acpi boot via nvme gives BSOD 0x7E (C0000005,..).
I am quite sure, that this happens because real errors in the DSDT table.
I tried Bios 4.60, 2.50, 3.40 all the same.
A repair of the DSDT table will make acpi boot,
it is not the fault of modified acpi.sys
Dietmar

#404 infuscomus ⇗ @diderius6

Nice!

you've gone further than I ever did, I seem to always get 7B BSOD even with only ASMedia SATA ports connected.

did you use SATA CD drive? - I will have to go get one - before I only used a USB CD (actually iodd 2531 with XP ISO)

Do Fernando's AMD USB 3.1 drivers work?

for amd SATA try AMD AHCI Driver v1.2.1.321 for W2k3 x86 WHQL with HWID INF edit (add 7901 and 43B7) and win2003 storport.sys file?
#405 diderius6 ⇗ @infuscomus
I use the Asmedia driver which I send to you
and make with them via Nlite a setup CD.
Still there is hope for full XP SP3 on this board :))
Dietmar

 

Page 28

#406 infuscomus ⇗ @diderius6

which version of ASMedia SATA driver should I use? 3.2.0.0? earlier version?
#407 diderius6 For me works
the Asmedia driver,
which I send to you,
Dietmar
#408 diderius6 ⇗ @Mov AX, 0xDEAD

How is progress on your tool,
which changes XP unfriendly DSDT table to XP friendly one?
And how does it work,
XPbadDSDT.dsl -> XPgoodDSDT.dsl
or in *.raw modus?
I am so curious, how you ban the A5 0x11 errors
and A5 0x02.
Do you just encapsule them via

               If ((OSYS >= 0x07D6))
               {
                  ..error in XP..
               }

have a nice day
Dietmar

EDIT: Is there a possibility, to tell the amli assembler, to produce only ACPI 1.b code?
        It should be possible, because as I understand AMLI works as interpreter.
        So, make it to work like in German "Dolmetscher".
#409 diderius6 First results on the Asrock fatal1ty ab350 gaming k4 board with latest Bios 5.40

Works (stable) in XP SP3
harddisk, CD-rom (on asmedia AHCI 106x)
keyboard PS/2
mouse PS/2 (via y-cable only AUTO in Bios)
network
sound
graphiccard
USB 3.1 (40MByte/s)

Not works:
APIC mode (only PIC mode)
USB 3.0
ACPI
nvme (it is because of a conflict between scsiport.sys and storport.sys (message nvme device cannot start).
XP can handle both, but not on all boards at the same time. nvme boot also not works BSOD 0x7B.
Sata AHCI AMD Ven_1022&Dev_43B7. I found a driver, but ntoskrnl.exe has 2 not matching dependencies.

Interesting, the 950 pro (with own legacy nvme Bios)
can stay at boot time together with harddisk.
Nearly all other compis fail (Asus Apex X not fails)
Dietmar

PS: I have not seen any AMD USB 3.0 driver for the AB350 chipset for XP 32 bit, Ven_1022&Dev_145C .

#410 infuscomus ⇗ @diderius6

Can USB/AHCI work with existing Fernando drivers with INF mod? (add hwids to INF)
#411 diderius6 AHCI driver for the asmedia 106x ship
I just send to you.
The USB drivers, that are here in the forum,
work only for Win7.
I have not seen them for XP
Dietmar

PS: Board is nice and stable. Only missing USB in XP. Acpi can be done with some more work.
#412 diderius6 Yessa,
I check with dependency walker
the USB files.
And I found one, compiled for WIN7,
which works for XP:)).
Only a little bit faster than USB 2.0
but now I have USB on this board also!!!
Dietmar

EDIT: The normal installer does not work. Cries, not for this OP..
But doing by hand via *.inf works.
It is driver for Ven_1022&Dev_43BB
cool..



diderius6 has attached files to this post
#413 infuscomus ⇗ @diderius6

Working USB!
Nice!

There are newer drivers on these forums - v1.0.5.3 - you might get better performance with new version?

for AMD AHCI try Universal ATA driver for Windows NT3.51/NT4/2000/XP/2003/Vista/7/ReactOS
With PATA/SATA/AHCI support

⇗ http://alter.org.ua/soft/win/uni_ata/
#414 diderius6 I make a try to edit the DSDT table from this board Asrock fatal1ty ab350 gaming k4:
Because I get BSOD A5 (0x2001), which means "ACPI tried to evaluate the PIC control method but failed."

So I change in DSDT table

   Method (_PIC, 1, NotSerialized)  // _PIC: Interrupt Model
   {
       If (Arg0)
       {
           \_SB.DSPI ()
           \_SB.PCI0.NAPE ()
       }

       PXXX (Arg0)
   }


against

   Method (_PIC, 1, NotSerialized)  // _PIC: Interrupt Model
   {
               If ((OSVR >= 0x0C))
       {

       If (Arg0)
       {
           \_SB.DSPI ()
           \_SB.PCI0.NAPE ()
       }

       PXXX (Arg0)
   }

   }

Now I am just flashing the BIOS via CH341a writer,
because flash on compi told me:
Checksum incorrect
Dietmar

EDIT: Compi survives the crazy flash procedure, but BSOD remains the same.
So, maybe it is not the direct fault of the _PIC: Interrupt Model , but something in its pointers went wrong.

EDIT2: I make a check with the new Bios, if my changes are put in. Yes, they are.
Now I think, the method _pic is never called, because I do not find any "_pic" call in DSDT table else, hmm.
So, the error is in a pointer for the interrups.

EDIT3:
_PIC Method
The
\
_PIC optional method is to report to the BIOS the current interrupt model used by the OS.
This control method returns nothing. The argument passed into the method signifies the interrupt model OSPM
has chosen, PIC mode, APIC mode, or SAPIC mode.
Notice that calling this method is optional for OSPM.
If the method is never called, the BIOS must assume PIC mode.
It is important that the BIOS save the value passed in by OSPM for later use during wake operations.
_PIC(x):_PIC(0)=> PIC Mode
_PIC(1) => APIC Mode
_PIC(2) => SAPIC Mode_PIC(3-n)=> Reserved

This may be indeed the reason for this BSOD A5 0x2001. XP uses high irqs, so it makes use of the APIC method.
A try with PIC methode fails then.

EDIT4: Yesssa, I was right. When I chose "ACPI - PC" during setup hitting F5, XP takes ACPI+PIC mode.
This BSOD is gone:)). What a crazy job, to fix step by step a buggy DSDT table. And this is not the fault of XP but
goes to the manufacturers.
#415 infuscomus
Zitat von ⇗ diderius6 im Beitrag ¶ #414


EDIT4: Yesssa, I was right. When I chose "ACPI - PC" during setup hitting F5, XP takes ACPI+PIC mode.
This BSOD is gone:)). What a crazy job, to fix step by step a buggy DSDT table. And this is not the fault of XP but
goes to the manufacturers.


⇗ @diderius6

Wait, so do I just need to press F5 and force use of ACPI PC in setup? or is a BIOS mod still needed for ACPI?
#416 diderius6 ⇗ @infuscomus
I try to make the DSDT table of the Asrock fatal1ty ab350 gaming k4 board
XP friendly.
Until now, I solved only one BSOD A5 0x2001 during edit DSDT table.
Then appears next BSOD A5 0x02,
so it is a really hard way to happyness:))
Dietmar
#417 infuscomus ⇗ @diderius6

any chance I could test your nvme driver on my PC for XP? same motherboard so it should work, right?
#418 diderius6 Yes, it works, but the problem is,
when it is used together with a scsiport device,
on the fatal1ty ab350 gaming k4 nvme under XP does not work
together with harddisk.
You can integrate the nvme driver in the setup CD from
XP SP3 via nlite. But then you also have to copy storport.sys in the setup CP
by hand, using makecab.exe.
After first TXT install of XP, you have to copy by hand again the driver storport.sys
into windows\system32\drivers because XP didnt do that alone,
Dietmar



diderius6 has attached files to this post
#419 diderius6 Today I make a try to install an own edit, full DSDT table into XP SP3
without using Bios. Because I notice, there is no tool to flash Bios from AMD..

HKEY_LOCAL_MACHINE\HARDWARE\ACPI\DSDT\842A1\842A1P07\00000004

This key is always build new during start of an ACPI XP. In it is the hexcode of the full DSDT table.
When you have a working ACPI XP, you can make a copy file by file of it.
May be windows\system32\config folder with all its content is enough.
The problem is, that there is no file HKEY_LOCAL_MACHINE\HARDWARE
because it is build new on every boot via Bios.
So, you need this copy from config.

And now the crazy part happens: Boot this XP on a compi with a XP friendly Bios
and change after boot to desktop on running machine the whole content with your wished DSDT hex-file in
HKEY_LOCAL_MACHINE\HARDWARE\ACPI\DSDT\842A1\842A1P07\00000004
Then shut compi down.
When you make a copy of XP as described above,
you have this new DSDT file in its registry.
Then you have to boot XP writeprotected (only possible on Fat32, because then Bios has no chance to overwrite your DSDT table)
and you will have your own DSDT table loaded to ram via XP, reading from registry DSDT table.
And you can check, what happens.
The problem on an compi with an ACPI XP unfriendly Bios is,
that you get always BSOD 0xA5.
But now you can work step by step
against those BSODS 0xA5 via windbg
Dietmar

EDIT: On an Intel board, you can make a test with empty DSDT table, just integrate 00000000000..(with the right number of zeroes as the size of your normal DSDT table(!) is) with Uefi-Tool as *.raw body for DSDT table at
C118F50D-391D-45F4-B3D3-11BC931AA56D
and I think, compi will boot XP with DSDT from to ram loaded registry as written above.

I have not tested this because no time just now and there it is some risk, that your Bios is broken!!!
Never I would make that test without a motherboard with working BIOS flash back possibility.

EDIT2: May be it is really a crazy (good?!) idea. I just tried to integrate a *.raw filled with zeroes as "DSDT" table.
You can integrate it into the Biosfile with Uefi-Tool. But I dont know what happens, because the dependencies
to other tables in Bios are gone also. Tomorrow I make a try on the Asus Apex X board, because it has Bios flashback,
which works to 99%. A question, if this works is, at which Time the DSDT table is loaded.
I think the normal way is: Bios writes DSDT to registry and then XP reads and loads DSDT table from registry.
And if Bios cant write registry because write protected, XP reads in any case DSDT table from registry.
#420 infuscomus ⇗ @diderius6

maybe you can change the permissions for the DSDT registry key so it can not be overwritten?

⇗ https://www.askvg.com/windows-tip-take-o...m-command-line/

edit: for XP textmode setup, you can add DSDT registry key into setupreg.hiv in \ControlSet001\Hardware Profiles\0000\SYSTEM\
For GUI phase of setup - add DSDT to hivesys.inf

 

Page 29

#421 diderius6 ⇗ @infuscomus

Thanks for help,
I will test all:))
Dietmar
#422 infuscomus ⇗ @diderius6

This might be an XP friendly DSDT table for AMD AM4 - It does not use CreateQWordField

it's from an ASUS Prime B350 PLUS - BIOS 0805



infuscomus has attached files to this post
#423 diderius6 ⇗ @infuscomus

Yes, this is interesting, because they change CreateQWordField against CreateDWordField.
So may be, the whole DSDT table is XP friendly.
This would be the first time for an B350 chipset.
Needs to be tested
Dietmar

PS: Until now, I do not understand, why there are so many BSOD
on neuer DSDT table in the form A5 0x02.
This means always conclict with pci devices,
Dietmar

PS:  ⇗ @Mov AX, 0xDEAD wrote, that he overcomes this BSOD with his modified acpi.sys.
My modified acpi.sys does not always work correct against this BSOD.
May be, a lot of devices are just ignored from special acpi.sys.

EDIT: Newest Bios 4602 this board has CreateQWordField in DSDT table. So may be, only their old DSDT tables are XP friendly.
        Yes, oldest Bios 406 has also only CreateDWordField in its DSDT table.
#424 infuscomus ⇗ @diderius6

did you manage to load custom DSDT table in registry? or do we have to go with a BIOS mod?
#425 diderius6 Today I have had long school.
Until now, I do not try.
But I am sure, it will work.
I just find out, that also for your motherboard
old BIOS has no CreateQwordfield in it,
so may be it becomes XP unfriendly only in last time.
This would be a big help
Dietmar
#426 infuscomus I tested XP setup in my HTPC which has a Fatal1ty X370 Gaming-ITX/ac motherboard in it with original release BIOS on it.

I got a 7E BSOD in acpi.sys

I checked with clean install media - same error 7E
#427 diderius6 I try to understand, why all this BSODs via acpi.sys happen.
For this, I find the tool OZMTool_v0.3_win
which works not in XP (but in Win7).
With this tool you can also extract DSDT.aml
raw files from older Bios, which are build for Acpi 1.b (XP friendly).

Then I compare the *.dsl from 2 Asrockboards.
XP friendly (AM3+) :   Asrock 970 Pro3 R2.0
XP unfriendly (AM4) : Asrock fatal1ty ab350 gaming k4

Because I noticed, that all Intel DSDT tables are nearly identic but
different to the AMD DSDT tables.

First XP BSOD on Asrock fatal1ty ab350 gaming k4 is A5 0x2001
This goes to a mismach IRQ table (pic: 16 irqs, apic also higher irqs allowed).
When I compare those methods, I see, that those DSDT tables from AMD are also very similar.

XP friendly:
    Method (_PIC, 1, NotSerialized)  // _PIC: Interrupt Model
{
If (Arg0)
{
DBG8 = 0xAA
\_SB.IRQC ()
}
Else
{
DBG8 = 0xAC
}

PICM = Arg0
}

XP unfriendly
    Method (_PIC, 1, NotSerialized)  // _PIC: Interrupt Model
{
If (Arg0)
{
\_SB.DSPI ()
\_SB.PCI0.NAPE ()
DBG8 = 0xAA
}
Else
{
DBG8 = 0xAC
}

PICM = Arg0
}

Method IRQC is renamed to DSPI , but identic.

So, just delete \_SB.PCI0.NAPE ()
hard way, but I do not know other
Dietmar
#428 diderius6 I start XP (on my XP friendly asrock fatal1ty z370 gaming k6).
Then I zero out DSDT in its registry (0000 stays in DSDT binary).
After this I read DSDT out with REWrite everything.
This shows the normal DSDT table.
Then I disconnect power, for to give XP no chance to write anything back from ram
to registry.
From this XP I make a bit to bit copy on an optane USB device, which can be set writeprotect (mechanic).
Then I start XP via this writeprotected device. (By the way, I noticed, that with XP SP3 is also writeprotect boot
possible on NTFS).
But very strange to me, this XP boots normal via s4e method.
This means the following: The DSDT from Bios is written to registry in a later boot phase,
not in first. Because if Bios would write DSDT to registry in early bootphase,
it cant, because there is the writeprotect device, which works alone in this phase.
Then, without any DSDT table in registry XP would crash(?!), who knows..

My previos test with the timer bit in FADT is other. This table speaks with hal.dll
in a very early bootphase. So, this can be faked easy.

Because of this result, it is more difficult to present XP a modified DSDT table during boot.
It happens in second bootstage and because of this, you have to force acpi.sys to make use of this place in
HKEY_LOCAL_MACHINE\HARDWARE\ACPI\DSDT\ and not from Bios! But how?
Dietmar

EDIT: acpi.sys is loaded during first bootphase. And BSOD A5 (not compatible Acpi) happens at the end of this first phase.
Strange, may be acpi.sys from XP SP3 reads now DSDT table like WinServer2003 only direct from Bios?
And at the place HKEY_LOCAL_MACHINE\HARDWARE\ACPI\DSDT\  stays only a not needed copy?

EDIT2: "If the HARDWARE_REDUCED_ACPI flag is set, all fields relating to the ACPI Hardware Specification are ignored by the operating system." And this bit is in FADT. But I have no idea, if acpi.sys from XP take notice from this flag.
May be the acpi.sys from Vista take notice? No, flag works only from Windows 8 up.
#429 infuscomus ⇗ @diderius6

clover boot loader can apparently modify ACPI tables before passing to the OS - This adds a layer of complexity to getting this to work - I've never done this myself so I don't know if this will work.

edit: arch linux can do the same thing? ⇗ https://wiki.archlinux.org/index.php/DSDT

edit2: maybe try acpi.sys from SP1 or SP2 and see if these old versions read DSDT from registry?
#430 infuscomus ⇗ @diderius6

If I have to go with the modded BIOS flash option - what should I use to flash?

this?
CH341A 24 25 Series EEPROM Flash BIOS USB Programmer SOIC8 SOP8 Clip Adapter
⇗ https://www.ebay.com.au/itm/CH341A-24-25...6gAAOSw1Exb6p24
#431 diderius6 Yes, this one. But this programs in 3 Volt.
You need an extra adapter, that fits in first one,
which makes 3->1.8 Volt,
Dietmar

⇗ https://www.ebay.de/i/372582467330?chn=ps

is all what you need:)).

The following contents have been linked to this post:
#432 infuscomus ⇗ @diderius6

OK, Thanks - I will get the one you recommend.

also, do you know if the BIOS chip on the AB350 Gaming K4 is an Aptio V?

If is is, there is a BIOS flash utility on the AMI website that might be worth a look?
#433 diderius6 ⇗ @infuscomus
The Bios chip on my Asrock AB350 Gaming K4 is a Winbond 25Q128FWSQ, 1.8 Volt(!).

In the description (down) is written, how to patch the DSDT table in registry.
It should work in XP, Win7..
This is a little bit strange for me. May be the used program makes a hirachie in to prefer DSDT table from Bios
over the DSDT table from Bios. It works, but until now for me it is unclear how and why.
⇗ http://notebookequus.blogspot.com/2008/0...dsdt-table.html

Dietmar
#434 infuscomus ⇗ @diderius6

maybe it needs to be put in registry like this exactly?

HKEY_LOCAL_MACHINE\HARDWARE\ACPI\DSDT\ALASKA\A_M_I_\01072009

Winbond 25Q128FWSQ is flash ROM and AMI Aptio V is firmware? - I thought AMI flash utility might work without needing to brute force with EPROM programmer?
#435 diderius6 To override/overload DSDT on Windows XP/Vista/7, use asl.exe from microsoft ASL compiler:
             
C:\Programme\Microsoft ASL Compiler v4.0>asl /?
Microsoft ACPI Source Language Assembler Version 4.0.0NT [Aug 28 2009, 18:36:36]

Copyright (c) 1996,2009 Microsoft Corporation
Compliant with the ACPI 4.0 Specification

Usage:
asl /?
asl [/nologo] /d <BinFile>
asl [/nologo] /u [/Fa=<ASMFile>] [/Fl=<LSTFile>] [/Fn=<NSDFile>] <AMLFile>
asl [/nologo] /tab=<TabSig> [/c] [/Fa=<ASMfile>] [/Fl=<LSTFile>] [/Fn=<NSDFile>]

asl [/nologo] [/Fo=<AMLFile>] [/Fa=<ASMFile>] [/Fl=<LSTFile>] [/Fn=<NSDFile>] <A
SLFile>
asl [/nologo] [/loadtable [-v] [-d]] <AMLFile>

? - Print this help message.
nologo - Supress logo banner.
Fo=<AMLFile> - Override the AML file name in the DefinitionBlock.
Fa=<ASMFile> - Generate .ASM file with the name <ASMFile>.
Fl=<LSTFile> - Generate .LST file with the name <LSTFile>.
Fn=<NSDFile> - Generate NameSpace Dump file with the name <NSDFile>.
d - Dump the binary file in text form.
u - Unassemble AML file to an .ASL file (default)
or a .LST file.
tab=<TabSig> - Unassemble ASL table to an .ASL file (default)
or a .LST file.
Dump non ASL table to an .TXT file.
If <TabSig> is '*', all tables are dump to ACPI.TXT.
<TabSig> can also be the physical address of the table.
c - Create binary files from tables.
loadtable [-v] [-d] <AMLFile>
- overload existing table with one in the given AML file.
<-d> - delete overridden tables
<-v> - Verbose

Dietmar

 

Page 30

#436 infuscomus ⇗ @diderius6

where can i download microsoft asl compiler?
#437 Lost_N_BIOS ⇗ @infuscomus - ⇗ http://www.acpi.info/toolkit.htm
⇗ https://acpica.org/downloads/binary-tools
⇗ https://docs.microsoft.com/en-us/previou...n550976(v=vs.85)
#438 infuscomus ⇗ @Lost_N_BIOS

1st link
Thats the Intel version, I'm looking for the Microsoft one.

2nd link
Link is dead - 404

edit: it's in WDK 10 - I'll go grab that
#439 Lost_N_BIOS ⇗ @infuscomus - first link >> Microsoft ASL Assembler/Compiler - link works but doesn't lead to a proper download due to MS is lazy
Second link works fine, and I downloaded the file just fine too, here is the direct link from that page, if you still can't download let me know and I will upload it for you - ⇗ https://acpica.org/sites/acpica/files/iasl-win-20190405.zip
Third link, that's weird, this one is 404 and it was working for me when I gave you the link??!
#440 infuscomus ⇗ https://acpica.org/sites/acpica/files/iasl-win-20190405.zip

this is the Intel assembler, not the Microsoft one.

I managed to get the Microsoft assembler from the windows driver kit.
#441 Lost_N_BIOS Glad you were able to get it finally.  Please upload a copy and post link here for others, thanks.   I'll grab a copy too and keep in case anyone asks me for link later
#442 infuscomus uploaded here so you don't need to download WDK to get it



infuscomus has attached files to this post
#443 diderius6 Here is the whole compiler
Dietmar



diderius6 has attached files to this post
#444 diderius6 I just check via Multimeter,
that this pin order is correct
for the Bios of the Asrock fatal1ty ab350 gaming k4 board
Dietmar

EDIT: The empty pin is also Ground.

#445 diderius6 Here is photo from Bios on Asrock fatal1ty ab350 gaming k4  board and the 9 pin connector
Dietmar

#446 diderius6 The first and biggest problem of the Asrock fatal1ty ab350 gaming k4 board
via XP install is,
that the crazy Bios always tries to install a pic modell for IRQ
and not APIC (higher irqs are allowed).
This you can see, hitting F5.
On modern XP SP3 only Standard PC works (PIC, noAcpi, one processor).
I have a special XP CD, where I can chose also Compac 100% multiprocessor
(PIC, no ACPI, multiprocessor, but compi hangs on reboot).

So, a lot more is bad with its Bios (vers. 5.40, 3.40, 2.50)
Dietmar
#447 infuscomus ⇗ @diderius6

can we load a DSDT table from an AM3 motherboard? or would it break everything?
#448 diderius6 ⇗ @infuscomus

I think, compi will not start.
I have done this before to start compi with DSDT from other compi via ch341a epromer , but this was a nearly identic PC,
same chipset, same processor.
There to change DSDT works.
But here we have other situation, new chipset, processor..
I think, we can only use AM3(+) DSDT table for to compare with new DSDT from AM4 chipset.
By the way, now I understand, why I nowhere have seen a compi with AM4 chipset, which boots real XP SP3.
So I think, I am really first one, but I only succeed with "Standard PC", means no ACPI, only PIC model, only one processor.
Dietmar
#449 diderius6 In boot.ini (with "Standard PC") from Asrock fatal1ty ab350 gaming k4 board I add one extra line

multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional" /KERNEL=ntosacpi.exe /HAL=halacpi.dll /PCILOCK

I put in folder windows\system32\ halacpi.dll  and ntosacpi.exe (renamed from Acpi-Multiprocessor XP SP3).
Result is BSOD 0x7B.
But via this way you can enable via COM1 a windbg session
and work step by step against BSODs (comparing DSDT AM4 with DSDT AM3+)
Dietmar

EDIT: And I copy acpi.sys to folder windows\system32\drivers.
#450 infuscomus ⇗ @diderius6

where do I find the DSDT table in an AM3+ ROM?
the GUID for AM4 shows nothing

 

Page 31

#451 diderius6 DSDT from AM3+ is in AmiBoardInfo.
Crazy to find.
I use the tool OZMTtoolv0.3.
This tool works in Win7 32 bit,
but not in XP
Dietmar



diderius6 has attached files to this post
#452 diderius6 Now I also succeed to extract DSDT raw table direct from AM3+ Bios.
Search for text DSDT (disable "unicode" in search), find AmiBoardInfo, "PE32 image section", extract body,
look in file for DSDT with Winhex, this is the start of the DSDT raw table
and end is PCI0SBRGSIOWh.  (with the point at the end) (this is direct before Hexvalues F7F8F4)
Dietmar

Edit: For me is AmiBoardInfo at guid 9F3A0016-AE55-4288-829D-D22FD344C347
#453 infuscomus Nice work!

I can extract DSDT from AM3+ BIOS now
#454 diderius6 I just compare DSDT from very first BIOS of
ROG-CROSSHAIR-VI-EXTREME-ASUS-0401
X470 Taichi Ultimate(1.10)ROM
and the first Bios 2.50 for the Asrock fatal1ty ab350 gaming k4 board.

They are all VERY similar,
meaning problems with XP SP3
will be everywhere the same for AMD ryzen,
Dietmar

EDIT: But I can install full ACPI Vista 32 bit
on the Asrock fatal1ty ab350 gaming k4 board
so, there is still hope for full XP .

EDIT2: I also compare XP friendly Bios for AM3+. They are nearly identic.
So, lets make a try to use XP friendly DSDT from AM3+ for AM4.

EDIT3: Interesting candidate for DSDT from other compi is the board asus a320m-c.
It has AM4, but first version has no Ryzen support (R2 has). It comes direct before Ryzen.
In its very first Bios A320M-C-SI-0401.CAP (Oct. 2016) DSDT I found, that _pic methode (IRQs) is the same as for XP friendly Bios in their DSDT table.
#455 infuscomus
Zitat von ⇗ diderius6 im Beitrag ¶ #454


EDIT3: Interesting candidate for DSDT from other compi is the board asus a320m-c.
It has AM4, but first version has no Ryzen support (R2 has). It comes direct before Ryzen.
In its very first Bios A320M-C-SI-0401.CAP (Oct. 2016) DSDT I found, that _pic methode (IRQs) is the same as for XP friendly Bios in their DSDT table.



Cool,

can we load this DSDT through registry, or is a BIOS mod the only way that works properly?
#456 diderius6 ⇗ @infuscomus
Today I make a try to load the DSDT table from A320M-C-SI-0401.CAP via the Microsoft tool
to the Asrock fatal1ty ab350 gaming k4 board.
For to reach this, I use a full Acpi Multiprocessor XP installation from an AM3+ board MSI 760GMA-P34 (FX),
which has also the Asmedia Sata AHCI ASM106x.
I add an extra boot.ini entry (for to have the possibility to switch to "Standard PC")
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional" /KERNEL=ntnoacpi.exe /HAL=halnoacp.dll

Dietmar

EDIT: I can not start with the XP from AM3+ chipset.
And this is, even I do not change anything in DSDT.
On the XP from AM3+ chipset I replace ntoskrnl.exe and hal.dll to the versions of "Standard PC".
The Asrock fatal1ty ab350 gaming k4 starts with this XP, but hangs during last stage of boot.
So, other things also do not work for XP on this board, for example safe boot does not work
and I see no entry for bootlog after hitting F8.

EDIT2: The Asrock fatal1ty ab350 gaming k4 has 2 different problems with XP SP3:

1.) The compi starts always in PIC mode (hangs during enable APIC). Hm, which table is it?
2.) ACPI is broken, this belongs to the DSDT table.
#457 infuscomus ⇗ @diderius6

Don't you need to run sysprep on XP before moving it across machines? or am I wrong about that?
#458 diderius6 ⇗ @infuscomus

With long training I succeed to move XP from one machine to the other without any tool.
And this can be also done for Vista and Win7 or Win10. Win8 I never tried.
As long as the Windows version is only at one compi at a time, it does not break Microsoft license.
Today I was hit by a new problem: A Bios, that does not work in APIC mode under XP, only PIC mode.
Little bit like stoneage.. I have not seen this in the last 18 years
Dietmar

PS: Interesting, if it is because Ryzen processor.
There are other AM4 processors on the market for example AMD A8 9600, much cheaper and slower.
I will test in next days this 9600 cpu.
#459 diderius6 I just found Bios version 1.30 for the Asrock fatal1ty ab350 gaming k4.
There, the IRQ table in Bios is other.
This is nearly the only difference to Bios 2.50.
I am just flashing
Dietmar

PS: May be problem to flash back to newer Bios,
     because in Bios 1.30 is no instant-flash program integrated.
#460 infuscomus ⇗ @diderius6

do you have the right CPU for that BIOS?

I only have a ryzen 5 2400G so I doubt it will work for me.
#461 diderius6 Yes, I have Ryzen 1700.
I checked for this before,
that I get CPU for ALL Bioses
Dietmar
#462 infuscomus ⇗ @diderius6
can I have this BIOS? I would like to extract DSDT and try registry method to load DSDT
#463 diderius6 ⇗ @infuscomus,
with this 1.3 Bios is the same as before.
Under XP it will not allow you to work in APIC mode,
only PIC. This is a serious problem, because of it only
one core of the cpu can work in XP SP3.
And I was right, you cant flash back to higher BIOS,
because no flash program in this Bios version,
Dietmar

But anyway, here it is



diderius6 has attached files to this post
#464 infuscomus ⇗ @diderius6

Thanks very much
#465 infuscomus ⇗ @diderius6

in AB350 gaming k4 BIOS 1.30 _PIC is

   Method (_PIC, 1, NotSerialized)  // _PIC: Interrupt Model
   {
       If (Arg0)
       {
           \_SB.DSPI ()
           \_SB.PCI0.NAPE ()
           DBG8 = 0xAA
       }
       Else
       {
           DBG8 = 0xAC
       }

       PICM = Arg0
   }

in XP Friendly 970A-G3.1

   Method (_PIC, 1, NotSerialized)  // _PIC: Interrupt Model
   {
       If (Arg0)
       {
           DBG8 = 0xAA
           \_SB.IRQC ()
       }
       Else
       {
           DBG8 = 0xAC
       }

       PICM = Arg0
   }

have you tried replacing _PIC function?

or if your up for taking a risk, replace entire DSDT with known XP friendly?



infuscomus has attached files to this post

 

Page 32

#466 diderius6 I think,
really XP friendly would be

Method (_PIC, 1, NotSerialized) // _PIC: Interrupt Model
{
If (Arg0)
{
DBG8 = 0xAA

}
Else
{
DBG8 = 0xAC
}

PICM = Arg0
}

But at the moment I try to get out of Bios 1.30:))
Dietmar
#467 infuscomus ⇗ @diderius6

did you manage to update from BIOS 1.30?
#468 diderius6 Until now not,
I wait for my 1.8 Volt Epromer,
have a nice day,
Dietmar
#469 diderius6 My 1.8 Volt Epromer arrives, 3 of them.
But I cannot flash the chip 25q128fwsq with the ch341a and adapter for 1.8 V.
I build my nice, perfect working cablemanagment:)), see photo,
but does not help.
I can read the chip out 2 times,
but even I tested all versions of the ch341a,
no success. I cant even blank the whole chip,
some numbers remain, as I can see with reading.
"Best" results gives vers. 1.29
may be something killed the Bioschip
Dietmar

EDIT: I tested pin 1..8, they work. The connector to motherboard are 2 USB connectors.

#470 infuscomus ⇗ @diderius6

have you bricked your BIOS?
#471 diderius6 I think yes.
I get 2 brandnew Bios chips 25q128fwsq.
Without(!!!) the 1.8V adapter (only ch341a)
and Version 1.40 of the flashtool I can load
my image (5.4 Bios with own settings) back.
Soon I desolder broken chip against this one
Dietmar

EDIT: I just try the same with the second, brandnew 25Q128FWSQ chip.
The adapter 1.8V does not work at all. But without adapter (only ch341a vers 1.4) I succeed to
write my image 5.4 Bios back, crazy.
I disconnect all and connect again and read with version 1.4 the complete
brandnew (both) out. This I store as new image and compare with Winhex,
100% match (on both). Ok, I am going to solder:)).
#472 infuscomus ⇗ @diderius6

maybe try grub2 method to load DSDT? (to avoid bricking BIOS in the future)
⇗ https://www.linuxquestions.org/questions...ion-4175593071/
⇗ https://forums.opensuse.org/showthread.p...use-custom-dsdt

did you want to try the DSDT from that asus 320m-c bios you found?

p.s - I have not had much luck loading DSDT in XP registry
#473 diderius6 This Bioschip is really crazy.
I succeed to solder in a brandnew, with my image 5.4 flashed chip.
All pins work, no short cut.
But compi does not start.
When I read out this chip with epromer,
it gives crazy values, complete different from
before soldering
Dietmar

EDIT: The brandnew, now soldered chip, shows exact the behavior from original Bios chip before.
This simple means, you cant flash this Bios chip with this Epromer, no matter if 1.8V adapter or not.

EDIT: The original, now outsoldered Bioschip can be read and written new.
But only from original Epromer (ver. 1.40) without the Adapter. This means also,
my image ist faulty, which I get from insoldered chip.
So, maybe you can use the Epromer for this chip, when it is not connected to the board.

EDIT2: The original Bios chip can be cleared and rewritten. But it shows after errors. This does not happen to
the brandnew Bios chip (before been soldered). This simply means, this Epromer killed the insoldered, original
Bioschip, brrr... and the 1.8 V adapter does not work for this Bios chip 25Q128FWSQ, no matter if it is in the board or outside and brandnew.
#474 diderius6 Has anybody here in the forum success with the 1.8V adapter for flashing Bios with ch341a epromer?
I do not mean only to copy, but to write full content to any Bioschip
Dietmar
#475 infuscomus ⇗ @diderius6

did your BIOS backup somehow get corrupted?
#476 diderius6 ⇗ @infuscomus

I make 2 copies of Bios 5.4 with different versions (1.8, 1.4) of the ch341a program. Between I shut down all.
Each copy was verifyied during reading and I compare the copies with Winhex after.
All 100% ok. So, may be the ch341a killed not only the insoldered original Bios,
because I also doublecheck the brandnew Bioschip with my copy of 5.4 , before I solder it in.
Compi does not boot, insoldered Bioschip has different content compared
with start values: Large fiels seems to be FF or 00 and only some other crazy bits,
Dietmar

PS: The conclusion is easy: For the Bios chip 25Q128FWSQ you need a professional Epromer (500 Euro)
and I think it works only outside the compi. I tried to awake the Bioschip to new life, running on compi full power on.
I can write, but veryfing with different Eprom program vers. show errors after about 5%. (I run them about 10 times.)
This was the first time since 1982, that I really succeed to kill a compi.

In the afternoon I try another AMD AM4 board ASUS PRIME B350-PLUS for to boot with XP SP3 with the same 1700 cpu.

EDIT: I also try the original 3.4 Bios from Webside with all program versions ch341a.
I can flash it always, but veryfieing shows always errors at about 5%. The 1.8V adapter is complete useless, this one can program 16KB 24 Eproms.
#477 diderius6 I just notice, that the AMD AM4 board ASUS PRIME B350-PLUS
has the same Bios chip 25Q128FWSQ, brrr..
Dietmar

EDIT: This board with the same Ryzen 1700 cpu shows exact the same behavior as the asrock fatal1ty ab350 gaming k4.
Bios can only install XP SP3 in PIC mode (means only 1 cpu core).
And the Acpi errors are also the same A5 (0x2001).
And you have a problem to install XP at all,
because no Asmedia 106x Sata slots on this board.
Until now, I do not have a generic AHCI XP driver for AMD boards, even this would be possible.
I try nvme boot with "Standard PC", but this gives also BSOD 0x7B as on the Asrock board,
even the nvme disk is recogniced correct
Dietmar

PS: In next days I get another AM4 board ASUS A320M-C R2.0.
And also another AM4 cpu AMD A8 9600, which is complete other cpu than Ryzen.
#478 infuscomus
Zitat von ⇗ diderius6 im Beitrag ¶ #477

Until now, I do not have a generic AHCI XP driver for AMD boards, even this would be possible.



can you test with this driver?

Universal ATA driver for Windows NT3.51/NT4/2000/XP/2003/Vista/7/ReactOS
With PATA/SATA/AHCI support
⇗ http://alter.org.ua/soft/win/uni_ata/
#479 diderius6 ⇗ @infuscomus
Yes, I will try. First you have to build a txtsetup.oem for this driver.
Maybe, it can be done easier: Just add the Ven&Dev number for this special AHCI adapter
to the txtsetup.oem and the *.inf file of the intel AHCI driver
Dietmar

EDIT: "Just add the Ven&Dev number for this special AHCI adapter
to the txtsetup.oem and the *.inf file of the intel AHCI driver" does not work for AMD AHCI.
Gives BSOD 0x7B (driver not there).

EDIT2: First try with the uniata.sys gives also BSOD 0x7B.
I do not know, why this happens, because the right ven&dev of the AMD AHCI
are already in the *.inf file for XP.
May be, that you can install this driver from running XP.
But the settings in TXTSETUP.OEM are unclear for me.
The driver uniata.sys is loaded during XP setup, as I can see.
#480 infuscomus ⇗ @diderius6

you can also edit txtsetup.sif manually - i do that sometimes

 

Page 33

#481 diderius6 This is what I try with the uniata driver.
But gives BSOD 0x7B.
Any help is welcome,
if I do something wrong
Dietmar



diderius6 has attached files to this post
#482 infuscomus ⇗ @diderius6

Does uniata work if installed once XP is booted? - boot with NVME driver (no ACPI)

I added some HWIDs and edited registry keys in TXTSETUP.OEM - try it



infuscomus has attached files to this post
#483 diderius6 ⇗ @infuscomus

Also with new txtsetup.oem I get BSOD 0x7B on the Asus AMD board,
means, at the moment I can not install any kind of XP there.
But today I ordered new eprom programer TTL866 II plus (only(!) II plus version supports 1.8 Volt Bios chips)
and with its help I will reanimate my asrock fatal1ty ab350 gaming k4 board.
There I installed XP. And from running XP I can try normal *.inf install
via device manager for the AMD SATA AHCI slots Ven_1022&Dev_43B7
Dietmar
#484 infuscomus ⇗ @diderius6

Does this mean the cheap BIOS flash kit I bought is useless for ab350 gaming k4?
#485 infuscomus ⇗ @diderius6

I asked about the grub2 method over at reboot.pro

⇗ http://reboot.pro/topic/22016-can-grub4d...ble-like-grub2/

I will try this method when I have time to test it
#486 diderius6 Yes, it even can destroy your Bios on the mainboard.
I tried really everything: Put CMOS battery out, in,
Power on (stand by), Power on(full)...brrr.
The 1.8V adapter is useless,
I do not succeed to write 1 bit to the Bios chip with it.
Version 1.29 of the Tool works best.
It recognices the Bios chip correct.
But maybe the writer itself killed the Bios,
because even chip is recogniced it uses to much voltage
Dietmar

PS: Interesting, if the Bios chip can be reanimated with tl866 II Plus programer.
#487 diderius6 Here is a new acpi.sys
which based on Vista 5048.
It works on a lot of new Intelboards for XP SP3 32 bit,
without need to modify anything in Bios. It has all the new words from ACPI 2.0 integratet.
On Ryzen board I get BSOD 0x7E (C0000005,..)
which I think belongs to PIC mode (no APIC in Bios for XP).
But there is still hope, that this kind of acpi.sys
supports in future ALL boards with full ACPI support,
APIC and multiprocessors, because Vista do this
Dietmar



diderius6 has attached files to this post
#488 diderius6 I just test this acpi.sys on ASUS PRIME A320M-C R2 for XP SP3 install
with AMD 9600 cpu.
Here I get other BSOD 0xA5( 0x0000000D,..)
interesting, this I never had before
Dietmar

0xA5 (0x0000000D, Parameter2, Parameter3, Parameter4):

There are many objects that must be defined in the ACPI namespace, and one or more of these was not found. This error generally occurs if either the _HID or _ADR object is missing. An _ADR is used to define the address of a device on its parent bus. The _ADR is a static address that defines slot numbers for devices that reside on any number of bus types, including EISA, floppy, IDE controller, IDE channel, PCI, PCMCIA, and CardBus. The _HID contains objects that supply the operating system with Plug and Play hardware ID for a device. Technically, these objects are optional, but they absolutely must be present to describe any device that is enumerated by an ACPI driver.

EDIT: With my own modified acpi.sys (with changes at 3 places) I get known BSOD 0XA5 (0x2001,..)
which again means: The problem is only PIC mode support from Bios! So, also on this board the same happens
as on all AM4 boards, that I tested. But the acpi.sys 5048 from Vista does not show this BSOD, so I think it is the right way.
#489 infuscomus ⇗ @diderius6

try loading a different DSDT .aml file using grub2 - maybe that a320m-c R1.0 BIOS with the old _PIC function?
#490 diderius6 ⇗ @infuscomus
Yes, something like that may work.
I think, it is not an Acpi related problem.
But this does not make it easier.
We need to find out,
what is different in boot Vista on AMD systems
compared with the XP SP3 with acpi.sys from Vista 5048
Dietmar
#491 infuscomus ⇗ @diderius6

we could patch extra functions into XP ntoskrnl to match vista ACPI dependencies?
#492 diderius6 ⇗ @infuscomus

The problem via this way is, that there are a lot of other functions
and also new dependencies to other files for acpi.sys in Vista,
as I have to see.
Today my programer tl866ii plus arrives
and first of all I try to reanimate my asrock fatal1ty ab350 gaming k4 board.

Interesting, if on a working Vista (with full Acpi support)
the acpi.sys there can be changed against the one from post 487 and works
Dietmar
#493 diderius6 Report about the Epromer tl866ii plus:
First I update internal flash and software.
On USB 3 it crashes often.
On USB2 works, but slow.
I am not able to programm a Bios Chip 25q128fwsq with this Epromer
without errors. I think, the 3 Bios Chips, that I have, are all killed.
Need to buy new
Dietmar

PS: The Bios chip insoldered in Board is not recogniced and cant be programed.
Only when the Bios Chip is direct connected to the Epromer, it is identified correct.
No possibilities to change anything in the Epromer, for example Voltage.

EDIT: After I erased a lot of times the 25q128fwsq Bios chip,
fill it with random numbers, erase again, I was able to program this chip with the epromer tl866ii plus
and veryfy it after direct and again with Winhex without any errors.
This works only, when the Bios chip is direct connected to the epromer via socket,
no cable(!). The tl866ii plus is the only epromer I know, which works for this chip.
#494 infuscomus ⇗ @diderius6

maybe something like this might work?

⇗ https://www.ebay.com/itm/SPI-and-I2C-Fla...M-/290587546215

The following contents have been linked to this post:
#495 Lost_N_BIOS ⇗ @diderius6 - I am not sure about tl866ii programmers, if it works same as $2 CH341A programmers, but you can use other software with the CH341A programmer instead of the standard one, and for the chip you mentioned W25Q128FW you need to use ASProgrammer.
Also, if your programmer does not support voltage changes, then yes you would need 1.8V adapter like this, since that is 1.65-1.95V chip - ⇗ https://www.ebay.com/itm/202046860676

The following contents have been linked to this post:

 

Page 34

#496 diderius6 ⇗ @Lost_N_BIOS

This 1.8V adapter does not work, also not with ASProgrammer on CH341A.
It just shows FF FF everywhere,
Dietmar
#497 diderius6 I think, the problem in the 25Q128FWSQ
are really the 1.8 Volt.
I even cant erase the whole chip.
But when I use the 1.8 version of the TOOL,
I can erase everything.
The 1.8 ver. of the tool does not know anything about 1.8 V,
so I think it uses 3.3 V.
And only this works,
Dietmar
#498 diderius6 Yesssaa,
I erase the 25Q128FWSQ chip
(without any adaptor, only the ch341a programer)
with CH341A Programmer 1.18 and after
check for blank with CH341A Programmer 1.18. All blank.
Again I check for blank with ASProgrammer on pur CH341A for Bios Chip W25Q128FW_1.8V (WINBOND).
All blank.
Then I program via ASProgrammer on pur CH341A for Bios Chip W25Q128FW_1.8V (WINBOND).
After this I read again the Bioschip and compare with my file.
For the very first time, Winhex shows 100% identic
Dietmar
#499 infuscomus ⇗ @diderius6

I am trying the grub2 method for ACPI

What are the tables that ACPI uses? - I have DSDT, what other tables are there?

I used
acpi --load-only /a320cr1.aml

then boot XP setup - no more A5 BSOD, but freeze on "Setup is starting windows"
#500 infuscomus how can I extract RSDT/XSDT from a BIOS/UEFI image?
#501 diderius6 Yes, I have done this, crazy to find in Bios file.
It is easy from a running compi with iasl or RW everything.
At the moment I have a lot of work,
from Wednesday I have more time
Dietmar
#502 infuscomus trying to replace DSDT with grub2 - got this error - ideas?



infuscomus has attached images to this post  ⇗ P_20190519_170143.jpg
#503 infuscomus ⇗ @diderius6

is this the only BIOS modification necessary for programmable interrupt controller to work?
or is more necessary?

Method (_PIC, 1, NotSerialized) // _PIC: Interrupt Model
{
If (Arg0)
{
DBG8 = 0xAA

}
Else
{
DBG8 = 0xAC
}

PICM = Arg0
}
#504 diderius6 ⇗ @infuscomus

I am not sure, if it is only a problem in the DSDT table on Bios from AM4 boards.
May be, the problem comes from another table,
which is loaded during boot also.
I think this, because MPS multiprocessor works
without any ACPI, meaning XP even does not load
the DSDT table
Dietmar
#505 infuscomus ⇗ @diderius6

I'm not so sure, MPS on my ab350 gaming K4 freezes on "Setup is Starting Windows"
#506 diderius6 ⇗ @infuscomus

"I'm not so sure, MPS on my ab350 gaming K4 freezes on "Setup is Starting Windows" "
Yes, for me is exact the same.
The only chance to see why this happens is a windbg session,
from a working XP SP3 with hal and ntoskrnl for MPS multiprocessor,
Dietmar

PS: This can also be done, when you install a XP SP3 "Standard PC" on ab350 gaming K4
and in boot.ini you make a line with hal and ntoskrnl for MPS.
#507 infuscomus ⇗ @diderius6

can the advanced programmable interrupt controller be fixed without fixing ACPI?
#508 diderius6 ⇗ @infuscomus

When we find out, why this happens, yes.
In 3 days I will test this with windbg
Dietmar
#509 infuscomus ⇗ @diderius6

I noticed something in txtsetup.sif

[hal]
486c_up        = hal.dll     ,2,hal.dll
acpipic_up     = halacpi.dll ,2,hal.dll
e_isa_up       = hal.dll     ,2,hal.dll
mps_up         = halapic.dll ,2,hal.dll
mps_mp         = halmps.dll  ,2,hal.dll
syspro_mp      = halsp.dll   ,2,hal.dll
acpiapic_up    = halaacpi.dll,2,hal.dll
acpiapic_mp    = halmacpi.dll,2,hal.dll

[Hal.Load]
486c_up        = hal.dll
acpipic_up     = halacpi.dll
e_isa_up       = hal.dll
mps_up         = halapic.dll
mps_mp         = halapic.dll
syspro_mp      = hal.dll
acpiapic_mp    = halaacpi.dll
acpiapic_up    = halaacpi.dll

maybe MPS freezes because txtsetup.sif in txtmode loads halapic.dll for uniprocessor instead of halmps.dll for multiprocessor?
#510 diderius6 ⇗ @infuscomus
This is really strange.
I noticed, that there is a table in Bios, which configures APIC mode (needed for multiprocessor)
but I do not know their name. Because Vista 32 bit can be installed on the Asrock Ryzen board,
there is a way.
For to test this, install a "Standard PC" XP on the Asrock board.
And make an extra line in boot.ini
for to change hal.dll and ntoskrnl from "Standard PC" to "MPS Muliprocessor".
When it hangs also, with Windbg you can find the reason
Dietmar

 

Page 35

#511 infuscomus ⇗ @diderius6

programmable interrupt controller is connected to PCI standard ISA bridge - is this normal?
#512 diderius6 ⇗ @infuscomus,
yes this is PIC mode (only 16 IRQ).
The same happens during install of XP SP3
on the Asrock Ryzen board.
Something went wrong, so that XP tries to install PIC mode.
I have never seen this before.
It has nothing to do with ACPI,
because this error is gone when you install "Acpi-PC" (is in PIC mode)
Dietmar
#513 infuscomus ⇗ @diderius6

programmable interrupt controller is connected to PCI standard ISA bridge in windows 10 too

maybe XP ISA bridge driver is causing this problem?
#514 diderius6 ⇗ @infuscomus
When ACPI is enabled, XP forget about the MPTABLE.
This may be the reason, why Vista works.
So, if there is an error in this MPTABLE, with using of ACPI it never comes to the light.
⇗ https://community.osr.com/discussion/249...pic-lying-to-me
⇗ https://coreboot.coreboot.narkive.com/XG...brios-mouse-fix
Dietmar
#515 infuscomus ⇗ @diderius6

by MPTABLE do you mean MADT table?
#516 diderius6 ⇗ @infuscomus
I did a search for "apic" in Bios with the UEFI-Tool.
A *.raw entry I do not find via "apic" search.
So, I have no idea, which table sets the correct apic values
for MPS multiprocessor
Dietmar

PS: I am quiet sure, that it is an error in Bios. Bios for Ryzen can not handle MPS multiprocessor.

In Linux we have for kernel configuration

pirq=           [SMP,APIC] Manual mp-table setup
                       See Documentation/x86/i386/IO-APIC.txt.

EDIT: I just find that:

⇗ https://lore.kernel.org/patchwork/patch/742964/

The APIC ids provided by ACPI are not required to be the same as the
>    initial APIC id which can be retrieved by CPUID. The APIC ids provided
>    by ACPI are those which are written by the BIOS into the APIC. The
>    initial id is set by hardware and can not be changed. The hardware
>    provided ids contain the real hardware package information.
>
>    Especially AMD sets the effective APIC id different from the hardware id
>    as they need to reserve space for the IOAPIC ids starting at id 0.
>
>    As a consequence those machines trigger the currently active firmware
>    bug printouts in dmesg, These are obviously wrong.
>
#517 diderius6 Yes, I was right:
With RW everything on working XP SP3 (Standard PC) on the Ryzen Asrock board
I get, when I click MPS (is entry for table there, not in ACPI):

MP Configuration Table not found!

Dietmar

PS: This is the very first Bios for me, without an MPSTABLE.
#518 infuscomus ⇗ @diderius6

Does the XP friendly Z390 motherboard still have an MPSTABLE?
#519 diderius6 ⇗ @infuscomus
I do not know, but I will have a look at. On the Asus X Apex z370 board I can install MPS multiprocessor.

The big problem for XP on Ryzen board is,
that you cant enable APIC mode, only PIC with 16 IRQs.

For to test this, I leave everything as before on XP SP3 on
Asrock Ryzen board. I only change hal.dll against halapic.dll.
This means, no MPS, no ACPI is asked for,
only "Standard PC" with one cpu but APIC ("Standard PC" has PIC mode nativ with hal.dll).
And with APIC (halapic.dll) the PC hangs with blinking cursor, exact as the situation is during install
Dietmar
#520 infuscomus ⇗ @diderius6

if you replace in DSDT Table? no change?

Method (_PIC, 1, NotSerialized) // _PIC: Interrupt Model
{
If (Arg0)
{
DBG8 = 0xAA

}
Else
{
DBG8 = 0xAC
}

PICM = Arg0
}
#521 diderius6 ⇗ @infuscomus
With "Standard PC" the DSDT table is not loaded.
I make a try to install the uniata driver.
It installs, but then tells, not enough resources left (error 12)
even I disable nearly all in device manager.
The reason, why this happens may be also because only 16 IRQs
are free in PIC mode and if the driver used something like for example IRQ 22,
it will not work
Dietmar
#522 diderius6 This is interesting
"The IRQ issue, as it turns out, originates at the chipset, rather than the CPU. While running AMD's chipsets A320 and B350 in PIC mode (versus APIC mode), the interrupt mode could not be set to level, which is needed to share IRQ's among several devices. In addition, while running in the edge mode, we discovered that the signal levels seemed to be inverted. This led to the loss of IRQ's and consequently, the driver was not receiving any reply to its device commands.

Of course we have contacted AMD to inform them of our findings. At this time, we are awaiting their response. We will keep you updated. Stay tuned!"
#523 infuscomus ⇗ @diderius6

I meant - if you replace the _PIC method in DSDT table does it enter Advanced PIC mode?
#524 diderius6 The DSDT table is just not loaded, complete ignored in "Standard PC"
Dietmar
#525 infuscomus ⇗ @diderius6

Have you tried "ACPI multiprocessor" option in XP setup after replacing _PIC in DSDT Table?
If you did, does it fix A5 BSOD?

 

Page 36

#526 diderius6 ⇗ @infuscomus
yes, when you succeed with "ACPI multiprocessor" ,
the problem with APIC may be just overridden.
This is what I think, what Vista 32 bit is doing.
I make a try with the modified acpi.sys from Vista 5048,
which I post here and connect to a Windbg session
from an XP SP3 with full Acpi support from an AM3+ board
Dietmar

EDIT: Now I have a full XP SP3 (from an AM3+ board)
with extra boot.ini entries

multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional" /KERNEL=nt1.exe /HAL=hal1.dll
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional" /KERNEL=ntoskrnl.exe /HAL=hal.dll

First is full Multiprocessor Acpi and second is "Standard PC" PIC modus, one cpu, no Acpi.

Second entry works as "Standard PC".

First gives BSOD 0x7E C0000005 and acpi.sys ist there ,even the modified acpi.sys 5048 from Vista.

0xC0000005: STATUS_ACCESS_VIOLATION indicates a memory access violation
occurred.

yepp, this has to be solved,
Dietmar
#527 infuscomus ⇗ @diderius6

do you get C0000005 error with server 2003 acpi.sys too?
#528 diderius6 Yes. It is the problem with APIC, I am quite sure.

But take a look at this:
XP on Ryzen, with Acpi enabled and without at the same time,
such fun is only possible in XP
Dietmar

#529 infuscomus ⇗ @diderius6

After XP Microsoft unified the HAL, so for Vista and later - ACPI-only - no other option
#530 infuscomus ⇗ @diderius6

there is a new function in windows 7 ntoskrnl - HvlWriteApicCommandRegister
#531 diderius6 I set up a windbg session.
For ACPI multiprocessor I get
EXCEPTION_CODE: (NTSTATUS) 0xc0000005 - The instruction at 0x%08lx referenced memory at 0x%08lx.
Die Daten wurden wegen eines E/A-Fehlers in "0x%081x" nicht in den Arbeitsspeicher  übertragen.

Dietmar
#532 diderius6
Microsoft (R) Windows Debugger Version 6.12.0002.633 X86
Copyright (c) Microsoft Corporation. All rights reserved.

Opened \\.\com1
Waiting to reconnect...
Connected to Windows XP 2600 x86 compatible target at (Sun May 26 20:48:12.281 2019 (UTC + 2:00)), ptr64 FALSE
Kernel Debugger connection established.
WARNING: Inaccessible path: 'C:\WinDDK\7600.16385.1\src\openfabricsall\nvme13\nvme\objchk_wnet_x86\i386'
Symbol search path is: C:\WinDDK\7600.16385.1\src\openfabricsall\nvme13\nvme\objchk_wnet_x86\i386;SRV*c:\symbols
*⇗ http://msdl.microsoft.com/download/symbols;C:\symbols
Executable search path is: C:\localsymbols
Windows XP Kernel Version 2600 MP (1 procs) Free x86 compatible
Built by: 2600.xpsp.080413-2111
Machine Name:
Kernel base = 0x804d7000 PsLoadedModuleList = 0x8055d720
System Uptime: not available
WARNING: Inaccessible path: 'C:\WinDDK\7600.16385.1\src\openfabricsall\nvme13\nvme\objchk_wnet_x86\i386'
Sun May 26 20:48:15.078 2019 (UTC + 2:00): MM: Loader/HAL memory block indicates large pages cannot be used for 810A6000->8290AFFF
Sun May 26 20:48:15.078 2019 (UTC + 2:00):
Sun May 26 20:48:15.093 2019 (UTC + 2:00): MM: Disabling large pages for all ranges due to overlap
Sun May 26 20:48:20.968 2019 (UTC + 2:00):
*** Fatal System Error: 0x0000007e
(0xC0000005,0xB7F75088,0xB84C2E8C,0xB84C2B88)

Sun May 26 20:48:21.015 2019 (UTC + 2:00): Break instruction exception - code 80000003 (first chance)

A fatal system error has occurred.
Debugger entered on first try; Bugcheck callbacks have not been invoked.

A fatal system error has occurred.

Connected to Windows XP 2600 x86 compatible target at (Sun May 26 20:48:21.203 2019 (UTC + 2:00)), ptr64 FALSE
Loading Kernel Symbols
.........................
Loading User Symbols

*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

Use !analyze -v to get detailed debugging information.

BugCheck 7E, {c0000005, b7f75088, b84c2e8c, b84c2b88}

*** ERROR: Module load completed but symbols could not be loaded for ACPI.sys
*** No owner thread found for resource 8055b4e0
*** No owner thread found for resource 8055b4e0
*** No owner thread found for resource 8055b4e0
*** No owner thread found for resource 8055b4e0
*** No owner thread found for resource 8055b4e0
Probably caused by : ACPI.sys ( ACPI+e088 )

Followup: MachineOwner
---------

nt!RtlpBreakWithStatusInstruction:
8052b5dc cc int 3
0: kd> !analyze -v
*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

SYSTEM_THREAD_EXCEPTION_NOT_HANDLED (7e)
This is a very common bugcheck. Usually the exception address pinpoints
the driver/function that caused the problem. Always note this address
as well as the link date of the driver/image that contains this address.
Arguments:
Arg1: c0000005, The exception code that was not handled
Arg2: b7f75088, The address that the exception occurred at
Arg3: b84c2e8c, Exception Record Address
Arg4: b84c2b88, Context Record Address

Debugging Details:
------------------

*** No owner thread found for resource 8055b4e0
*** No owner thread found for resource 8055b4e0
*** No owner thread found for resource 8055b4e0
*** No owner thread found for resource 8055b4e0
*** No owner thread found for resource 8055b4e0

EXCEPTION_CODE: (NTSTATUS) 0xc0000005 - Die Anweisung "0x%08lx" verweist auf Speicher bei "0x%08lx". Die Daten wurden wegen eines E/A-Fehlers in "0x%081x" nicht in den Arbeitsspeicher bertragen.

FAULTING_IP:
ACPI+e088
b7f75088 ff5010 call dword ptr [eax+10h]

EXCEPTION_RECORD: b84c2e8c -- (.exr 0xffffffffb84c2e8c)
ExceptionAddress: b7f75088 (ACPI+0x0000e088)
ExceptionCode: c0000005 (Access violation)
ExceptionFlags: 00000000
NumberParameters: 2
Parameter[0]: 00000000
Parameter[1]: 00000010
Attempt to read from address 00000010

CONTEXT: b84c2b88 -- (.cxr 0xffffffffb84c2b88)
eax=00000000 ebx=b84c30f4 ecx=8a8ccd80 edx=b84c3030 esi=b84c30e4 edi=00000000
eip=b7f75088 esp=b84c2f54 ebp=b84c30bc iopl=0 nv up ei ng nz na pe nc
cs=0008 ss=0010 ds=0023 es=0023 fs=0030 gs=0000 efl=00010286
ACPI+0xe088:
b7f75088 ff5010 call dword ptr [eax+10h] ds:0023:00000010=????????
Resetting default scope

PROCESS_NAME: System

ERROR_CODE: (NTSTATUS) 0xc0000005 - Die Anweisung "0x%08lx" verweist auf Speicher bei "0x%08lx". Die Daten wurden wegen eines E/A-Fehlers in "0x%081x" nicht in den Arbeitsspeicher bertragen.

EXCEPTION_PARAMETER1: 00000000

EXCEPTION_PARAMETER2: 00000010

READ_ADDRESS: 00000010

FOLLOWUP_IP:
ACPI+e088
b7f75088 ff5010 call dword ptr [eax+10h]

BUGCHECK_STR: 0x7E

DEFAULT_BUCKET_ID: NULL_CLASS_PTR_DEREFERENCE

LOCK_ADDRESS: 8055b560 -- (!locks 8055b560)
NTSDEXTS: Unable to resolve ntdll!RtlCriticalSectionList
NTSDEXTS: Please check your symbols

PNP_TRIAGE:
Lock address : 0x8055b560
Thread Count : 1
Thread address: 0x8a8b9788
Thread wait : 0xbf

LAST_CONTROL_TRANSFER: from 804f8df9 to 8052b5dc

STACK_TEXT:
WARNING: Stack unwind information not available. Following frames may be wrong.
b84c30bc b7f9614d 8a8ccd80 b84c30e4 b84c30f4 ACPI+0xe088
b84c30e8 b7f9bddf b7f91940 b84c3104 e101128c ACPI+0x2f14d
b84c316c b7f95d80 e14c852c b84c31bc b7f91940 ACPI+0x34ddf
b84c3180 b7f9be5a b7f91940 b84c31bc e101128c ACPI+0x2ed80
b84c319c 80596117 b7f91940 00000009 b84c31bc ACPI+0x34e5a
b84c31d8 80597cd1 e14c84d8 00000000 8055b060 nt!IopBootAllocation+0x5f
b84c321c 80598602 00000004 e14c84d8 e1436430 nt!IopAllocateBootResourcesInternal+0x65
b84c323c 8069dcbc 00000004 8a8ccd80 e1436430 nt!IopAllocateBootResources+0x34
b84c325c 8058f193 00000004 8a8ccd80 e1436430 nt!IopReportBootResources+0x3c
b84c328c 80591f4d 8a8dbad8 800000a8 00000000 nt!PiQueryAndAllocateBootResources+0xe7
b84c337c 8059222b 8a8dbad8 00000000 00000000 nt!PipProcessNewDeviceNode+0xab5
b84c35d0 804f68d3 8a881dd8 00000000 00000000 nt!PipProcessDevNodeTree+0x16b
b84c3614 804f6b78 00000000 00000000 800916b8 nt!PipDeviceActionWorker+0xad
b84c362c 8069d0ee 00000000 00000006 00000000 nt!PipRequestDeviceAction+0x118
b84c3690 80699f70 80085000 b84c36ac 00034000 nt!IopInitializeBootDrivers+0x376
b84c3838 806983d3 80085000 00000000 8a8b9788 nt!IoInitSystem+0x712
b84c3dac 805cff64 80085000 00000000 00000000 nt!Phase1Initialization+0xac7
b84c3ddc 805460de 8069790c 80085000 00000000 nt!PspSystemThreadStartup+0x34
00000000 00000000 00000000 00000000 00000000 nt!KiThreadStartup+0x16


SYMBOL_STACK_INDEX: 0

SYMBOL_NAME: ACPI+e088

FOLLOWUP_NAME: MachineOwner

MODULE_NAME: ACPI

IMAGE_NAME: ACPI.sys

DEBUG_FLR_IMAGE_TIMESTAMP: 424d8208

STACK_COMMAND: .cxr 0xffffffffb84c2b88 ; kb

FAILURE_BUCKET_ID: 0x7E_ACPI+e088

BUCKET_ID: 0x7E_ACPI+e088

Followup: MachineOwner
---------

0: kd> !analyze -v
*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

SYSTEM_THREAD_EXCEPTION_NOT_HANDLED (7e)
This is a very common bugcheck. Usually the exception address pinpoints
the driver/function that caused the problem. Always note this address
as well as the link date of the driver/image that contains this address.
Arguments:
Arg1: c0000005, The exception code that was not handled
Arg2: b7f75088, The address that the exception occurred at
Arg3: b84c2e8c, Exception Record Address
Arg4: b84c2b88, Context Record Address

Debugging Details:
------------------

*** No owner thread found for resource 8055b4e0
*** No owner thread found for resource 8055b4e0
*** No owner thread found for resource 8055b4e0
*** No owner thread found for resource 8055b4e0
*** No owner thread found for resource 8055b4e0

EXCEPTION_CODE: (NTSTATUS) 0xc0000005 - Die Anweisung "0x%08lx" verweist auf Speicher bei "0x%08lx". Die Daten wurden wegen eines E/A-Fehlers in "0x%081x" nicht in den Arbeitsspeicher bertragen.

FAULTING_IP:
ACPI+e088
b7f75088 ff5010 call dword ptr [eax+10h]

EXCEPTION_RECORD: b84c2e8c -- (.exr 0xffffffffb84c2e8c)
ExceptionAddress: b7f75088 (ACPI+0x0000e088)
ExceptionCode: c0000005 (Access violation)
ExceptionFlags: 00000000
NumberParameters: 2
Parameter[0]: 00000000
Parameter[1]: 00000010
Attempt to read from address 00000010

CONTEXT: b84c2b88 -- (.cxr 0xffffffffb84c2b88)
eax=00000000 ebx=b84c30f4 ecx=8a8ccd80 edx=b84c3030 esi=b84c30e4 edi=00000000
eip=b7f75088 esp=b84c2f54 ebp=b84c30bc iopl=0 nv up ei ng nz na pe nc
cs=0008 ss=0010 ds=0023 es=0023 fs=0030 gs=0000 efl=00010286
ACPI+0xe088:
b7f75088 ff5010 call dword ptr [eax+10h] ds:0023:00000010=????????
Resetting default scope

PROCESS_NAME: System

ERROR_CODE: (NTSTATUS) 0xc0000005 - Die Anweisung "0x%08lx" verweist auf Speicher bei "0x%08lx". Die Daten wurden wegen eines E/A-Fehlers in "0x%081x" nicht in den Arbeitsspeicher bertragen.

EXCEPTION_PARAMETER1: 00000000

EXCEPTION_PARAMETER2: 00000010

READ_ADDRESS: 00000010

FOLLOWUP_IP:
ACPI+e088
b7f75088 ff5010 call dword ptr [eax+10h]

BUGCHECK_STR: 0x7E

DEFAULT_BUCKET_ID: NULL_CLASS_PTR_DEREFERENCE

LOCK_ADDRESS: 8055b560 -- (!locks 8055b560)
NTSDEXTS: Unable to resolve ntdll!RtlCriticalSectionList
NTSDEXTS: Please check your symbols

PNP_TRIAGE:
Lock address : 0x8055b560
Thread Count : 1
Thread address: 0x8a8b9788
Thread wait : 0xbf

LAST_CONTROL_TRANSFER: from 804f8df9 to 8052b5dc

STACK_TEXT:
WARNING: Stack unwind information not available. Following frames may be wrong.
b84c30bc b7f9614d 8a8ccd80 b84c30e4 b84c30f4 ACPI+0xe088
b84c30e8 b7f9bddf b7f91940 b84c3104 e101128c ACPI+0x2f14d
b84c316c b7f95d80 e14c852c b84c31bc b7f91940 ACPI+0x34ddf
b84c3180 b7f9be5a b7f91940 b84c31bc e101128c ACPI+0x2ed80
b84c319c 80596117 b7f91940 00000009 b84c31bc ACPI+0x34e5a
b84c31d8 80597cd1 e14c84d8 00000000 8055b060 nt!IopBootAllocation+0x5f
b84c321c 80598602 00000004 e14c84d8 e1436430 nt!IopAllocateBootResourcesInternal+0x65
b84c323c 8069dcbc 00000004 8a8ccd80 e1436430 nt!IopAllocateBootResources+0x34
b84c325c 8058f193 00000004 8a8ccd80 e1436430 nt!IopReportBootResources+0x3c
b84c328c 80591f4d 8a8dbad8 800000a8 00000000 nt!PiQueryAndAllocateBootResources+0xe7
b84c337c 8059222b 8a8dbad8 00000000 00000000 nt!PipProcessNewDeviceNode+0xab5
b84c35d0 804f68d3 8a881dd8 00000000 00000000 nt!PipProcessDevNodeTree+0x16b
b84c3614 804f6b78 00000000 00000000 800916b8 nt!PipDeviceActionWorker+0xad
b84c362c 8069d0ee 00000000 00000006 00000000 nt!PipRequestDeviceAction+0x118
b84c3690 80699f70 80085000 b84c36ac 00034000 nt!IopInitializeBootDrivers+0x376
b84c3838 806983d3 80085000 00000000 8a8b9788 nt!IoInitSystem+0x712
b84c3dac 805cff64 80085000 00000000 00000000 nt!Phase1Initialization+0xac7
b84c3ddc 805460de 8069790c 80085000 00000000 nt!PspSystemThreadStartup+0x34
00000000 00000000 00000000 00000000 00000000 nt!KiThreadStartup+0x16


SYMBOL_STACK_INDEX: 0

SYMBOL_NAME: ACPI+e088

FOLLOWUP_NAME: MachineOwner

MODULE_NAME: ACPI

IMAGE_NAME: ACPI.sys

DEBUG_FLR_IMAGE_TIMESTAMP: 424d8208

STACK_COMMAND: .cxr 0xffffffffb84c2b88 ; kb

FAILURE_BUCKET_ID: 0x7E_ACPI+e088

BUCKET_ID: 0x7E_ACPI+e088

Followup: MachineOwner
---------

#533 diderius6 Interesting, if this an error in some AM4 chipsets:

"The IRQ issue, as it turns out, originates at the chipset, rather than the CPU. While running AMD's chipsets A320 and B350 in PIC mode (versus APIC mode), the interrupt mode could not be set to level, which is needed to share IRQ's among several devices. In addition, while running in the edge mode, we discovered that the signal levels seemed to be inverted. This led to the loss of IRQ's and consequently, the driver was not receiving any reply to its device commands."

This would mean, that on other AM4 chipsets this APIC error (compi stays in PIC mode) not appears, for example

A/B300
X300
X370
B450
X470

Would be nice, to hear about acpi results for XP SP3 boot on those platforms
Dietmar

PS: With my modified acpi.sys from XP SP3 I get the error: Acpi tries to enable PIC mode, but fails. Because this is a B350 chipset, it may be just true.
#534 infuscomus
Zitat von ⇗ diderius6 im Beitrag ¶ #533
This would mean, that on other AM4 chipsets this APIC error (compi stays in PIC mode) not appears, for example

A/B300
X300
X370
B450
X470


The chipsets are very similar, I would assume same result on the B400 series as with B300 series
#535 diderius6 I just notice,
that no version of Vista can be installed on
Asrock fatal1ty ab350 gaming k4.
It tells: "compi not ACPI conform"

Dietmar

PS: Now I am sure, that it is a bug in the chipset B350 and /or in its Bios.
XP can only be installed there, because it can be done in PIC mode for one cpu (Standard PC).
I try a lot of Vista BETA versions, allways the same. If a beta version starts to install Vista (Longhorn)
few moment later comes BSOD 0x7E c0000005 acpi.sys error.
The problem is just, that Bios offers only PIC mode (16 IRQs) and not APIC mode (24 Irqs).
#536 infuscomus ⇗ @diderius6

any luck installing windows 7?
#537 diderius6 ⇗ @infuscomus

I cant install Win7 32 bit on MBR on Asrock fatal1ty ab350 gaming k4 via original DVD (from 2009, no service pack at all).
Compi shows on reboot error c0000007. I use Ryzen 1700 with 8 cores 16 threads.
But using the files from another compi works with full ACPI and Hyperthreading as you can see on photo.
This is astonishing, how legacy Win7 32 bit (non UEFI) manage the PIC modus from this Bios.
May be, it takes only very basics information from Bios
and builds everything else by itself
Dietmar

#538 infuscomus ⇗ @diderius6

can we copy APIC from AM3 or FM2+ system BIOS and apply to AM4?
#539 diderius6 ⇗ @infuscomus
I read a lot about PIC and APIC mode in Bios.
As far as I see, nobody else succeed to build a XP,
with both "Standard PC" and "Acpi Multiprocessor" at the same time.
I read, that somebody, who builds embedded PC s for XP was looking like crazy for such a solution.
I dont understand, where the switch between PIC and APIC mode is in Bios. May be its just one value of a variable, Arg0 (?)
which can be hacked.
Some BIOS are on a black list and XP always install PIC modus even Bios offers (faulty) APIC mode.
Somebody told, that the MPS multiprocessor table is a good test, if a BIOS works in APIC mode.
I agree, but on this Bios we have no MPS
Dietmar

PS: Interesting if there is a MPS table on any AM4 Bios. Just install RW everything and click on MPS.
On Asrock fatal1ty ab350 gaming k4 there is none. But may be on other chipsets for AM4 there is.
And I also have no idea, where this table is in Bios located.
#540 infuscomus ⇗ @diderius6

in XP unfriendly DSDT on ab350 gaming k4

           Device (SBRG)
           {
               Name (_ADR, 0x00140003)  // _ADR: Address
               Device (PIC)
               {
                   Name (_HID, EisaId ("PNP0000") /* 8259-compatible Programmable Interrupt Controller */)  // _HID: Hardware ID
                   Name (_CRS, ResourceTemplate ()  // _CRS: Current Resource Settings
                   {
                       IO (Decode16,
                           0x0020,             // Range Minimum
                           0x0020,             // Range Maximum
                           0x00,               // Alignment
                           0x02,               // Length
                           )
                       IO (Decode16,
                           0x00A0,             // Range Minimum
                           0x00A0,             // Range Maximum
                           0x00,               // Alignment
                           0x02,               // Length
                           )
                       IRQNoFlags ()
                           {2}
                   })
               }

Device PIC is part of SBRG?

compare XP friendly


               Device (PIC)
               {
                   Name (_HID, EisaId ("PNP0000") /* 8259-compatible Programmable Interrupt Controller */)  // _HID: Hardware ID
                   Name (_CRS, ResourceTemplate ()  // _CRS: Current Resource Settings
                   {
                       IO (Decode16,
                           0x0020,             // Range Minimum
                           0x0020,             // Range Maximum
                           0x00,               // Alignment
                           0x02,               // Length
                           )
                       IO (Decode16,
                           0x00A0,             // Range Minimum
                           0x00A0,             // Range Maximum
                           0x00,               // Alignment
                           0x02,               // Length
                           )
                       IRQNoFlags ()
                           {2}
                   })
               }

close bracket?
possible solution?

           Device (SBRG)
           {
               Name (_ADR, 0x00140003)  // _ADR: Address
           }

               Device (PIC)
               {
                   Name (_HID, EisaId ("PNP0000") /* 8259-compatible Programmable Interrupt Controller */)  // _HID: Hardware ID
                   Name (_CRS, ResourceTemplate ()  // _CRS: Current Resource Settings
                   {
                       IO (Decode16,
                           0x0020,             // Range Minimum
                           0x0020,             // Range Maximum
                           0x00,               // Alignment
                           0x02,               // Length
                           )
                       IO (Decode16,
                           0x00A0,             // Range Minimum
                           0x00A0,             // Range Maximum
                           0x00,               // Alignment
                           0x02,               // Length
                           )
                       IRQNoFlags ()
                           {2}
                   })
               }

maybe?

 

Page 37

#541 diderius6 ⇗ @infuscomus
I found the Hexpattern, where _MP_ is recogniced.
It is 5F4D505F.
Via this way I found the MP table in Bios from Apex X board.
It is located in Bios in  ACPI  Section_PE32_image_ACPI
Dietmar

PS: Via this way, all Bios from other AM4 chipsets can be tested for  _MP_  table.
I just test this. The PRIME-X470-PRO-ASUS-4602 Bios also has no _MP_ table.

EDIT: The 8259-compatible Programmable Interrupt Controller is the part for PIC mode.
But where is the same for APIC?

⇗ https://habr.com/en/post/446312/
⇗ https://wiki.osdev.org/IOAPIC
⇗ https://wiki.osdev.org/MADT
#542 diderius6 Yesssssa, I find the cause of all evel in APIC for XP in Bios FACP table
Signature	"FACP"
Length 0x00000114 (276)
Revision 0x06 (6)
Checksum 0xC1 (193)
OEM ID "ALASKA"
OEM Table ID "A M I "
OEM Revision 0x01072009 (17244169)
Creator ID "AMI "
Creator Revision 0x00010013 (65555)
Firmware Control 0xDC6E0D80 - FACS
DSDT Address 0xDC31A1E8 - DSDT
Interrupt Mode 0x00 (0) - Dual PIC
PM Profile 0x01 (1)
SCI Interrupt 0x0009 (9)
SMI Port 0x000000B2 (178)
ACPI Enable 0xA0 (160)
ACPI Disable 0xA1 (161)
S4 Request 0x00 (0) - Not supported
PSTATE_CNT 0x00 (0)
PM1a_EVT_BLK 0x00000800 (2048)
PM1b_EVT_BLK 0x00000000 (0) - Not supported
PM1a_CNT_BLK 0x00000804 (2052)
PM1b_CNT_BLK 0x00000000 (0) - Not supported
PM2_CNT_BLK 0x00000000 (0) - Not supported
PM_TMR_BLK 0x00000808 (2056)
GPE0_BLK 0x00000820 (2080)
GPE1_BLK 0x00000000 (0) - Not supported
PM1_EVT_LEN 0x04 (4)
PM1_CNT_LEN 0x02 (2)
PM2_CNT_LEN 0x01 (1)
PM_TMR_LEN 0x04 (4)
GPE0_BLK_LEN 0x08 (8)
GPE1_BLK_LEN 0x00 (0)
GPE1_BASE 0x00 (0)
CST_CNT 0x00 (0)
P_LVL2_LAT 0x0065 (101) - C2 state not supported
P_LVL3_LAT 0x03E9 (1001) - C3 state not supported
FLUSH_SIZE 0x0400 (1024)
FLUSH_STRIDE 0x0010 (16)
DUTY_OFFSET 0x01 (1)
DUTY_WIDTH 0x03 (3)
DAY_ALRM 0x0D (13)
MON_ALRM 0x00 (0) - Month alarm not supported
CENTURY 0x32 (50)
IAPC_Boot_Arch 0x03 0x00
Reserved 0x00 (0)
Flags 0x0003C5A5
WBINVD 1 - WBINVD instruction fully supported
WBINVD_Flush 0 - WBINVD instruction not for sleep states (Don't care if WBINVD=1)
PROC_C1 1 - C1 power state: all processors
P_LVL2_UP 0 - C2 power state: UP system only
PWR_BUTTON 0 - Power button supported as fixed feature
SLP_BUTTON 1 - Sleep button not support or handled by ASL code
FIX_RTC 0 - Fixed register support RTC wake
RTC_S4 1 - RTC wakeup support: S1, S2, S3, S4
TMR_VAL_EXT 1 - 32bit PM Timer
DCK_CAP 0 - Docking not supported
RESET_REG_SUP 1 - Reset Register supported
SEALED_CASE 0 - System is not sealed
HEADLESS 0 - Not headless mode
CPU_SW_SLP 0 - Normal method to write SLP_TYPx
PCI_EXP_WAK 1 - PM1 block support PCIE wakeup status/enable bits
USE_PLATFORM_CLOCK 1 - OSPM use HPET (if exist) or ACPI PM Timer
S4_RTC_STS_VALID 1 - RTC_STS flag is valid when resume from S4
REMOTE_POWER_ON_CAPABLE 1 - System compatible with remote power on
FORCE_APIC_CLUSTER_MODEL 0 - Cluster destination model not required
FORCE_APIC_PHYSICAL_DESTINATION_MODE 0 - Physical destination mode not required
RESET_REG IO: 0xB2, BitWidth: 0x8 (8), BitOffset: 0x00 (0), AccessSize: Undefined
RESET_VALUE 0xBE (190)
Reserved 0x00 0x00 0x00
X_FIRMWARE_CTRL 0x0000000000000000
X_DSDT 0x00000000DC31A1E8
X_PM1a_EVT_BLK IO: 0x800, BitWidth: 0x20 (32), BitOffset: 0x00 (0), AccessSize: Word
X_PM1b_EVT_BLK IO: 0x0, BitWidth: 0x0 (0), BitOffset: 0x00 (0), AccessSize: Word
X_PM1a_CNT_BLK IO: 0x804, BitWidth: 0x10 (16), BitOffset: 0x00 (0), AccessSize: Word
X_PM1b_CNT_BLK IO: 0x0, BitWidth: 0x0 (0), BitOffset: 0x00 (0), AccessSize: Word
X_PM2_CNT_BLK IO: 0x0, BitWidth: 0x8 (8), BitOffset: 0x00 (0), AccessSize: Byte
X_PM_TMR_BLK IO: 0x808, BitWidth: 0x20 (32), BitOffset: 0x00 (0), AccessSize: Dword
X_GPE0_BLK IO: 0x820, BitWidth: 0x40 (64), BitOffset: 0x00 (0), AccessSize: Byte
X_GPE1_BLK IO: 0x0, BitWidth: 0x0 (0), BitOffset: 0x00 (0), AccessSize: Byte
SLEEP_CONTROL Memory: 0x0, BitWidth: 0x0 (0), BitOffset: 0x0 (0), AccessSize: Undefined
SLEEP_STATUS Memory: 0x0, BitWidth: 0x0 (0), BitOffset: 0x0 (0), AccessSize: Undefined


Crazy, so the Bios from Asrock fatal1ty ab350 gaming k4 is really a PIC mode Bios, like 30 years ago
Dietmar
#543 diderius6 This can be hacked, like I did with the timer and s4e method:
Before
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\HARDWARE\ACPI\FADT\ALASKA\A_M_I_\01072009]
"00000000"=hex:46,41,43,50,14,01,00,00,06,c1,41,4c,41,53,4b,41,41,20,4d,20,49,\
20,00,00,09,20,07,01,41,4d,49,20,13,00,01,00,80,0d,6e,dc,e8,a1,31,dc,00,01,\
09,00,b2,00,00,00,a0,a1,00,00,00,08,00,00,00,00,00,00,04,08,00,00,00,00,00,\
00,00,00,00,00,08,08,00,00,20,08,00,00,00,00,00,00,04,02,01,04,08,00,00,00,\
65,00,e9,03,00,04,10,00,01,03,0d,00,32,03,00,00,a5,c5,03,00,01,08,00,00,b2,\
00,00,00,00,00,00,00,be,00,00,00,00,00,00,00,00,00,00,00,e8,a1,31,dc,00,00,\
00,00,01,20,00,02,00,08,00,00,00,00,00,00,01,00,00,02,00,00,00,00,00,00,00,\
00,01,10,00,02,04,08,00,00,00,00,00,00,01,00,00,02,00,00,00,00,00,00,00,00,\
01,08,00,01,00,00,00,00,00,00,00,00,01,20,00,03,08,08,00,00,00,00,00,00,01,\
40,00,01,20,08,00,00,00,00,00,00,01,00,00,01,00,00,00,00,00,00,00,00,00,00,\
00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
00,00,00,00,00

after
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\HARDWARE\ACPI\FADT\ALASKA\A_M_I_\01072009]
"00000000"=hex:46,41,43,50,14,01,00,00,06,c1,41,4c,41,53,4b,41,41,20,4d,20,49,\
20,00,00,09,20,07,01,41,4d,49,20,13,00,01,00,80,0d,6e,dc,e8,a1,31,dc,01,01,\
09,00,b2,00,00,00,a0,a1,00,00,00,08,00,00,00,00,00,00,04,08,00,00,00,00,00,\
00,00,00,00,00,08,08,00,00,20,08,00,00,00,00,00,00,04,02,01,04,08,00,00,00,\
65,00,e9,03,00,04,10,00,01,03,0d,00,32,03,00,00,a5,c5,03,00,01,08,00,00,b2,\
00,00,00,00,00,00,00,be,00,00,00,00,00,00,00,00,00,00,00,e8,a1,31,dc,00,00,\
00,00,01,20,00,02,00,08,00,00,00,00,00,00,01,00,00,02,00,00,00,00,00,00,00,\
00,01,10,00,02,04,08,00,00,00,00,00,00,01,00,00,02,00,00,00,00,00,00,00,00,\
01,08,00,01,00,00,00,00,00,00,00,00,01,20,00,03,08,08,00,00,00,00,00,00,01,\
40,00,01,20,08,00,00,00,00,00,00,01,00,00,01,00,00,00,00,00,00,00,00,00,00,\
00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
00,00,00,00,00

Dietmar
#544 infuscomus ⇗ @diderius6

so in FACP table

Interrupt Mode 0x00 (0) - Dual PIC

should be

Interrupt Mode 0x01

is this correct?
#545 diderius6 ⇗ @infuscomus
Yes.

Interrupt Mode 0x00 (0) - Dual PIC  -->  Interrupt Mode 0x01 (1) - Multiple APIC

When you read, how APIC works, you see, that each cpu core builds an own local Apic.
And all together, the chipset with integrated apic controller (!) makes a working (or not working) Apic from it.
So, I am not sure, if this is a symptom in FACP or the cure:)).
Until know, I do not find the location of FACP in Bios.
When you look for string "FACP" with Uefi-Tool you get some adresses.
But how the table facp is build from it, I dont know.
The hack in Bios would be simple
Dietmar
#546 infuscomus ⇗ @diderius6

my guess is FACP is located in Section_PE32_image_ACPI_ACPI_body.efi

I think XSDT is there too

I don't know how to extract the FACP from the EFI module though
#547 diderius6 I succeed to install USB2.0 and full USB 3.1 support on the Asrock fatal1ty ab350 gaming k4
for XP SP3
Dietmar

#548 infuscomus ⇗ @diderius6

which driver version did you use for USB 3.0/3.1?
#549 infuscomus ⇗ @diderius6

i'm not 100% sure, butyou may find this useful?
Windows Vista ACPI information, incl. advice on common problems in ACPI implementations
⇗ http://download.microsoft.com/download/5...CPA002_WH06.ppt

edit: according to this presentation, you need a checked build of acpi.sys to load ACPI tables from registry?
#550 diderius6 ⇗ @infuscomus
There are nice tips for to work with windbg, especially on BSOD 0x7E.

About USB3.1 on the AMD Asrock board:
First I copy all USB XP SP1 files (see attach down here) to folder windows\system32\drivers on AMD XP SP3.
Then from device manager I install USB 3.1 files, first xhci, then, when windows ask for it, the hub driver
Dietmar

EDIT: No need for checked build of acpi.sys (I have for XP, but does not help anything).
XP always reads dsdt, facp tables from registry.
What may be different with checked acpi.sys is,
that this driver ONLY looks at registry, while normal XP acpi.sys reads the
entries in registry, which are always loaded new from Bios on next boot.
So, like with the Microsoft tool, you can make an order list of entries
for dsdt, facp in registry, newest files are loaded then.



diderius6 has attached files to this post
#551 infuscomus ⇗ @diderius6

Thanks for the USB drivers.

I recall you saying that server 2003 acpi.sys had ACPI 2.0 words compared to XP ACPI 1.0 words

so can checked server 2003 acpi.sys with ACPI 2.0 words help diagnose the problem?

p.s I assume acpi.sys 5048 is an unchecked version?
#552 infuscomus ⇗ @diderius6

do you have a copy of debug ntkrnlmp.exe for XP?

I have found server 2003 version but not XP version
#553 diderius6 ⇗ @infuscomus
Here it is,
englisch debug version XP SP3 32 bit ntkrnlmp.exe
Dietmar



diderius6 has attached files to this post
#554 diderius6 Hi,
I am happy, when all AMD Ryzen users can make a quick test via rw-everything,
if there is a MPS table on their board.
For this, just click MPS on top of the RW-everything window
Dietmar
#555 diderius6 May be a Linux installation on the Asrock fatal1ty ab350 gaming k4
can give more information about the not working APIC mode. Any help using diagnostic tools in Linux is welcome.

Yesterday I booted this board write protect with an XP from an AM3+ board.
Again the 0x7E 0xc0000005 error ACPI.sys error (I use the modified 5048 acpi.sys, which works perfect on intel boards.)
This is strange, because the FACP and DSDT table are now read from the
AM3+ board, because of writeprotect. This would mean: The BSOD happens not because of broken Bios.

More and more I come to the conclusion,
that the APIC controller in the B320 and B350 AMD chipsets has an error
Dietmar

EDIT: May be this problem with APIC is related to 32 bit (adress room),
        and because of this, there is no support for legacy Win7 32 bit for Ryzen.
        I saw computers with B320 or B350 chipset with Ryzen cpu, which fails during install Win7 32 bit via Acpi.sys error.
        It depends not on the ryzen cpu, I tested.

 

Page 38

#556 infuscomus ⇗ @diderius6

Thanks for XP checked ntkrnlmp

server 2003 checked acpi.sys calls missing function not in XP - DbgCommandString

damn
#557 diderius6 ⇗ @infuscomus

Here it is, original XP SP3 32 bit english acpi.sys debug version, until now not modified,
because big differences in normal acpi.sys version and debug

Dietmar



diderius6 has attached files to this post
#558 infuscomus ⇗ @diderius6

Thanks

regarding MPS table - can this be added into BIOS for AB350 gaming K4? or would MPS be unnecessary if we can make APIC work?
#559 diderius6 ⇗ @infuscomus
MPS table helps you to see at once,
if the compi can work in APIC mode.
Without MPS, you cant say nothing:)).
No real need for the MPS table,
but via MPS you can decide, wether it is an APIC versus PIC
problem or just something went wrong with ACPI.sys.
On the Asrock B350 board, for sure something went wrong with APIC,
and acpi.sys crashes in follow of only PIC mode (no multiprocessor)
Dietmar
#560 infuscomus ⇗ @diderius6

can you send me a full acpidump (all tables) of your XP friendly AM3+ board?

I don't have an AM3+ board of my own
#561 diderius6 ⇗ @infuscomus

Here it the acpidump, translated to human readable.
This Bios from AM3+  FX-8350 processor on MSI 760gma-p34 (fx) board (first version)
has an MPS table, in FACP you can see, that APIC mode is enabled
and really everything works nice in XP SP3, especially MPS multiprocessor and ACPI multiprocessor
Dietmar



diderius6 has attached files to this post
#562 diderius6 Waaaoh,
my idea about BSOD from acpi (no apic, only pic model) because of 32 bit is right.
Just in this moment I install legacy Vista 64 bit (very first version from 2007) on MBR.
Now it is clear, why there is no legacy Win7 32 bit support for the Asrock fatal1ty ab350 gaming k4 board
Dietmar
#563 infuscomus ⇗ @diderius6

Thanks,

was it just these 4 tables?

can i get the raw acpidump output file so it gives everything?

acpidump -o am3dump
#564 diderius6 ⇗ @infuscomus

acpidump looks only at registry and in registry hardware are only this 4 files.
rw-everything looks in Bios, but it crashes, because it does not like
acpi and nonacpi model at the same time
Dietmar
#565 infuscomus ⇗ @diderius6

OK, Thanks

do you know if the facp table is actually generated at boot or stored in BIOS?
#566 diderius6 ⇗ @infuscomus

The FACP table is build on boottime always new from XP (with an unknown algorithmus), during reading from Bios.
But you can fake the FACP table, because hal.dll of XP looks only in registry.
I have done this for the timer and the fake FACP table works.
Here with the Asrock board we have the problem,
that there is no FACP table build in Bios, because of no Acpi.
With some handwork, it is possible to build such a hardware entry in registry for ACPI for all the 4 tables by hand.
But the result would be the same BSOD 0x7E 0xC0000005
Dietmar

PS: At the moment I download Ubuntu 16.04 (32-bit),
     this is the last version for 32 bit support.
     I hope to get some more information, at which place the APIC mode crashes,
     as it depends on those 32 bit.
#567 infuscomus ⇗ @diderius6

there is also manjaro linux maintaining a 32-bit version if you want something more recent
#568 diderius6 Here ist the registry entry (under hardware) for all ACPI tables Vista 64 bit for the Asrock board.
On XP SP3 32 bit it should be 100% identic
Dietmar



diderius6 has attached files to this post
#569 diderius6 I just make a try with faked FACP chosing APIC model there (instead of PIC). This registry entry ACPI I added to working XP on the Asrock board.
I tested with acpidump, acpixtract, iasl -d there
ok, now APIC model is told there^^.
Shut it down. Then I copy everything to a write protected USB stick,
now really funs starts
Dietmar

EDIT: Still the same BSOD 0x7E 0xC0000005, brrr..
        So, it is a serious problem in 32 bit. Now I install Ubuntu 16, 32 bit on the Asrock board.
        I think, the problem with APIC mode will remain there.

OK, first message during install Ubuntu is: Unknown hardware..
One time starting Firefox, it crashes. Really stable OS, brrr...
Funny, together with crashed Firefox (in black and white, looks interesting^^), now Ubuntu 32 bit is updating:)).
I also downloaded Arch 32 Linux distro from march 2019
and MX Linux 32. We will see. Until now, I think Win95 is the better choice, crazy..
#570 diderius6 Ok, this is advantage in Ubuntu 32 bit after 30 min update on Asrock fatal1ty ab350 gaming k4^^




After total fail of Ubuntu
now next try with MX-Linux 32 bit from Mai 2019
Dietmar

EDIT: MX-Linux 32 bit: No crash of Firefox, no mouse, english keyboard (no german keyboard layout can be chosen) but sound and network, youtube works.
In the beginning there was a possibility to cancel Acpi. But at the moment I think all 8 core with 16 threads work
with Acpi on this Linux 32 bit version. Ok, clock wrong, micro letters on screen, no possibility to change this on screen..
Oho, my own password, which I have put in repeated, is now told to be wrong^^..arghhh
And take a look at the symbols, left down,..ok I try Arch Linux 32..



Arch Linux shows only commandline after boot. And when you look for installed hardware, system told: string empty..

Ok, for today its enough with Linux..
I want win95:))

 

Page 39

#571 infuscomus ⇗ @diderius6

⇗ https://linuxmint.com/download.php
try linux mint 32bit - xfce (easier to run, less resources)
#572 infuscomus ⇗ @diderius6

If Win95 doesn't work I know for sure Win98SE works as I have it installed
#573 diderius6 ⇗ @infuscomus

Thanks for the link for the Linux Mint 32bit xfce, I just downloaded it.

I take a closer look at the XP friendly DSDT from AM3+ compared with the DSDT from the Asrock board AM4.

In AM3+ DSDT we have in header
* Revision  0x01 **** 32-bit table (V1), no 64-bit math support

It is the compi from my daughter. She installed there Win10 64 bit, so this does not mean, that 64 bit OS do not work.
But vice versa is true, with the DSDT table of any(?) AM4 board big problems with 32 bit OS.

There exist also AM3+ boards (SABERTOOTH-990FX-R20-ASUS) with Acpi2.0 and working XP on it.

In header then is written  * Revision    0x02.

So, the problem with XP 32 bit depends not on the Revisions number.

Question is, if it enough to modify DSDT only to XP friendly

Dietmar
#574 infuscomus ⇗ @diderius6

can you change DSDT revision with registry mod and test?

or find the part in acpi.sys that checks DSDT revision?
#575 diderius6 ⇗ @infuscomus
There is no part in acpi.sys that checks DSDT version. This entry in DSDT is only for human.
acpi.sys stupid reads DSDT loaded to ram and crashes or not
Dietmar

PS: Question is, if with any new DSDT table XP 32 bit can work in APIC mode on AM4 chipset or not.
#576 infuscomus ⇗ @diderius6

you can force iasl to produce revision 1 math from original disassembled revision 2 table

iasl -r1 revision2to1.dsl
#577 diderius6 ⇗ @infuscomus
This is a nice tip iasl -r1 revision2to1.dsl,
until now I get an 1 error message
when I try, without writing,#
where this error is
Dietmar
#578 diderius6 ⇗ @infuscomus

Yessa,
I succeed with it.
Now it becomes really interesting
Dietmar



diderius6 has attached files to this post
#579 infuscomus ⇗ @diderius6

is this DSDT from AB350 GamingK4 (BIOS 5.40) - converted to revision 1?
#580 diderius6 ⇗ @infuscomus

yessss:))

And here are the belonging *.aml files.
They are very different from each other, compare with Winhex shows
more than 20000 places different.
So, may be we are on the right way
Dietmar



diderius6 has attached files to this post
#581 infuscomus ⇗ @diderius6

the presence of CreateQWordField wont cause problems?
#582 diderius6 ⇗ @infuscomus

I think not.
But this we will see in next BSOD^^

I am going to flash this DSDT on my new Asrock board,
big risk, but no fun without risk^^

Dietmar
#583 infuscomus ⇗ @diderius6

Good luck,

If this DSDT does not work you can try an earlier version in BIOS 3.30 for AB350 Gaming K4 that does not have CreateQWordField in it
#584 diderius6 Hm, strange things happen.
I first read out the Bios chip on the Asrock board with tl866ii plus,
25u12873f.
mx25u12835f is found via tl866ii plus
with the identic chip ID 0xc22538.
Before the Bios chip was recogniced,
I have to put out cpu, cmos battery and ram.
Then I make 2 copies of the Bios chip and compare them.
They are to 100% identic.
Then I compare them with the read out from the Bios chip made with
Universal BIOS Backup ToolKit 2.0.exe.
They are different, hm..
The tool just ordered some blocks in Bios for boot devices different, as I can see with Beyond Compare2.
Then I change in the Bios (read out made with Universal BIOS Backup ToolKit 2.0.exe)
the DSDT file vers 2->vers 1.
I read those DSDT files out again, all ok.
Then I erase the Bios chip, flash with modded DSDT and verify it after.
All seems ok.
After putting cpu, cmos battery and ram in again,
compi starts.
But now comes the most crazy thing:
With rw-everything looking for DSDT table I was told vers 2
and nothing has changed.
Now I think, there is some kind of write protect for this Bios chip.
But the tl866ii plus told nothing about this, strange
Dietmar
#585 infuscomus ⇗ @diderius6

maybe try AFUDOS tool to flash modded BIOS?

reference guide
⇗ https://puissanceled.com/vrac/Bios_modding/EN.html

 

Page 40

#586 diderius6 Now comes the mostmost crazy:
I read out again whole Bios with the  Universal BIOS Backup ToolKit 2.0.exe.
And from this read out I extract with Uefi tool
the DSDT table.
And the most most crazy is,
the DSDT table has changed to version 1, no doubt.
But what does rw-everything tell then?
From where it gots its infomation???
For sure not from the real BIOS
Dietmar

PS: I add the new read out from Universal BIOS Backup ToolKit 2.0.exe.
This means, the crazy flash procedure has had success.
But may be to do this with the AFUDOS tool is more elegant.
Anyway, the way I did it works.



diderius6 has attached files to this post
#587 diderius6 Waaaoooh, with the new DSDT table I can install Vista 32 bit on the Asrock fatal1ty ab350 gaming k4!!!
What a BIG step forward
Dietmar
#588 infuscomus ⇗ @diderius6

thats good news!

any luck with XP?
#589 diderius6 ⇗ @infuscomus

On Vista 5048 and on XP Acpi Multiprocessor
I still get the BSOD 0x7E 0xc0000005
Dietmar

PS: The MPS Multiprocessor also not works, because still no MPS table there.
But this is not importand for XP.
#590 infuscomus ⇗ @diderius6

do you get 7E BSOD with server 2003 SP2 acpi.sys?
#591 diderius6 ⇗ @infuscomus

I tested Win server 2003 SP2 for itself.
It gives BSOD 0xA5 0x11 0x08 as usual.
For me is at the moment the most important,
if APIC mode works now, this I am just testing with XP and halapic.dll
Dietmar

EDIT: APIC mode still does not work. And because of this no ACPI too.
The problem in this is, that the BSOD because of APIC happens so early, that windbg is not awaken.

Vista 32 bit overcomes this problem in some way, but how?
#592 infuscomus ⇗ @diderius6

there is also still the BIOS 3.30 DSDT to try without CreateQWordField
#593 diderius6 ⇗ @infuscomus

The BSOD because of unknown words from ACPI2.0 is other.
But who knows:))
Dietmar
#594 infuscomus ⇗ @diderius6

try it anyway, see what happens
#595 diderius6 ⇗ @infuscomus

I just tried the afudos methode.
But there comes

46 - Error: Problem getting flash information.

"Error 46: Problem Getting Flash Information, it's because you aren't using afudos."
Yes, the flash program here for Asrock board is another.

Ok,
I make try the hard way as before,
I just have Bios vers. 3.30 mod ready with DSDT table vers1 for 32 bit

Dietmar
#596 infuscomus ⇗ @diderius6

46 - Error: Problem getting flash information.

did you use /gan switches?

afudos modbios.rom /gan
#597 diderius6 ⇗ @infuscomus
Yes, I use this switch but the afudos program does not work at all for the Asrock board.
There has to be another program (may be with the same name "Afudos" but from other manufacturer) for to flash the Asrock board.
Interesting, in Bios 3.30 for the Asrock board there is in FACP APIC mode enabled.
So, there is a big BREAK in Bios before and after 3.30 Bios for this Board.
Vista 32 bit likes this, you can install it at once.
But XP APIC does not work.
Ok, now I am going to flash DSDT table with vers 1 32 Bit
Dietmar
#598 diderius6 ⇗ @infuscomus

From where you know this switch and are there other important switches for iasl?
iasl -r1 revision2to1.dsl

Dietmar
#599 infuscomus ⇗ @diderius6

from iasl -h help

 -r <revision>       Override table header Revision (1-255)
#600 diderius6 ⇗ @infuscomus
Ok, compi survived second crazy flash operation.
Bios is now 3.30 with rev1 DSDT table.
Now rw-everything told also rev 1 in DSDT table
and APIC mode in FACP.
But XP still crashes with the same BSOD 0x7E 0xc0000005
and APIC does not work in XP, only PIC with 16 IRQs
Dietmar

PS: Now this is the 32 bit friendliest Asrock fatal1ty ab350 gaming k4 board ever,
you can install all systems only XP 32 bit not, until now:))!



diderius6 has attached files to this post

 

Page 41

#601 infuscomus ⇗ @diderius6

maybe we need to look at changing the revisions for the other tables?

just a guess, not sure

edit: APIC table maybe?
⇗ https://wiki.osdev.org/MADT
#602 diderius6 ⇗ @infuscomus

Today I think half of the work for full XP is done.
XP SP3 looks now like HYPER Win98SE,
nvme Optane works, just everything and this with one cpu and one thread,
because APIC not works
Dietmar




EDIT: Even boot XP SP3 from the nvme Optane disk as only device connected to the Asrock board works.
I put for this ntoskrnl.exe and hal.dll (PIC mode) in windows\system32 and in boot.ini of the Optane boot device
I rename them to nt1.exe and hal1.dll, waaoh.

#603 diderius6 ⇗ @infuscomus
I make a try to change the rev number of the APIC (same as MADT) table.
But this time it does not work.
Always rev3 is written in header no matter if you change this to rev1 or rev2
and the table stays to 100% identic
Dietmar
#604 infuscomus ⇗ @diderius6

as a last resort you could try replacing entire DSDT with a known XP compatible?

in this case an ASRock 970A-G3 motherboard



infuscomus has attached files to this post
#605 diderius6 ⇗ @infuscomus

Oh, I do not give up so quick:)).
I noticed a strange thing:
When I install Vista 32 bit on the AM3+ board,
the driver for the Asmedia 106x SATA harddisk was found at once on the Vista CD.
But when I install Vista 32 bit to the Asrock board,
Vista aks for this driver for the harddisk even it has the identic Asmedia 106x chip! No USB at all works on the Asrock board during install of Vista, no PS/2 mouse.

This means: No hardware is identified at all on the Asrock board.

The Bios from the Asrock board cant show all its hardware correct to Vista or XP.
This may be the fault of the chipset B350, who knows.

Hm, what can they change on Vista, that this gives NOW (former versions of Vista give) not the BSOD 0x7E 0xc0000005?
Vista learned, to survive with such a crazy situation. (By the way, I think this was the reason for the complete fail of Ubuntu.
In the very first boot stage Ubuntu tells: Unknown hardware (not unknown CPU or something like, whole hardware cant be identified)).

I come to the idea, that they change something in hal.dll.
XP cant help itself very good, so it disables everything and goes to PIC mode (blind for all hardware on the Asrock board).
For Vista was the same, but it survives with this blindness because of more error tolerant hal.dll
Dietmar

PS: I will test this today.
#606 diderius6 Yessa, I am just installing XP SP3 in APIC multiprocessor mode on the Asrock board
Dietmar

EDIT: XP uses multiprocessor ntoskrnl.exe and renamed hal.dll to halsp.dll.
But on next reboot it hangs, even XP is installed nearly complete. But this seems to be
the right way. From Vista, version 5342 does not show the BSOD 0x7E 0xc0000005,
but it hangs during installation.
#607 infuscomus ⇗ @diderius6

why is vista 32-bit not detecting hardware?

should we be using vista beta driver if vista release also has problems?
#608 diderius6 ⇗ @infuscomus

Good question.
On the Vista versions after 5048,
I always get no acpi.sys BSOD but it was told

Blinitializelibrary failed 0xc0000017

I do not know this error,
but for me its sound:
Unknown hardware
Dietmar
#609 infuscomus ⇗ @diderius6

acpi 5342 calls functions from ntoskrnl and hal that are not available in XP

maybe that is the reason for error?
#610 diderius6 ⇗ @infuscomus

No, you missunderstood me.
This where all the original Vista versions >5048,
which tells this error on the Asrock B350 board
Dietmar
#611 infuscomus ⇗ @diderius6

after acpi 5048 I can only get "acpi.sys is corrupted" error when i try to install XP
#612 diderius6 May be, acpi.sys just tries to read in reserved low memory.
FAULTING_IP:
ACPI+e088
b7f75088 ff5010 call dword ptr [eax+10h]

EXCEPTION_RECORD: b84c2e8c -- (.exr 0xffffffffb84c2e8c)
ExceptionAddress: b7f75088 (ACPI+0x0000e088)
ExceptionCode: c0000005 (Access violation)
ExceptionFlags: 00000000
NumberParameters: 2
Parameter[0]: 00000000
Parameter[1]: 00000010
Attempt to read from address 00000010

CONTEXT: b84c2b88 -- (.cxr 0xffffffffb84c2b88)
eax=00000000 ebx=b84c30f4 ecx=8a8ccd80 edx=b84c3030 esi=b84c30e4 edi=00000000
eip=b7f75088 esp=b84c2f54 ebp=b84c30bc iopl=0 nv up ei ng nz na pe nc
cs=0008 ss=0010 ds=0023 es=0023 fs=0030 gs=0000 efl=00010286
ACPI+0xe088:
b7f75088 ff5010 call dword ptr [eax+10h] ds:0023:00000010=????????
Resetting default scope

Because it is always the same error 0x7E 0xc0000005
Later I will set up a checked version of XP SP3
with windbg and amli debugger for to see,
what is going on
Dietmar

PS: I think, with not modified Bios, Win7 32 bit also shows the same error Blinitializelibrary failed 0xc0000017.
Now, with APIC Bios 3.30 on Asrock B350 Win7 32 bit installs without any problem.

PPS: Or BSOD 0x7E 0xc0000005 happens, because we use more than 4 Gbyte ram and Xp does not like this on some motherboards? Needs to be tested.
#613 infuscomus ⇗ @diderius6

do you know where i can get a checked build of XP for myself?

I managed to find a 2003 checked build but not XP
#614 diderius6 ⇗ @infuscomus
I think, I used a normal English XP SP2 version
and succeed to update this to a full checked XP SP3 version only with a XP SP3 checked servicepack
Dietmar
#615 diderius6 When I set up checked XP SP3 on the Asrock B350 board,
I get now during "Multiprocessor Acpi" setup
BSOD 0x7E 0x80000003
Dietmar

EDIT: From Microsoft: If exception code 0x80000003 occurs, a hard-coded breakpoint or assertion was hit, but the system was started with the /NODEBUG switch.

⇗ https://answers.microsoft.com/en-us/wind...bf-13dc940cae63

 

Page 42

#616 diderius6 I set up debug modus via F8 and entry in boot.ini in checked XP SP3 setup during 2. phase of install (after reboot)
because even with  "Standard PC" the compi crashes.
A lot of times I get via debug the message: "Impossible values from Hal",
which means, XP SP3 cant work (good?) with the information of the Bios from Asrock B350
Dietmar

Sun Jun  2 22:11:32.015 2019 (UTC + 2:00): HalpGetValidPCIFixedIrq: BIOS did not assign an interrupt vector for the device
Sun Jun  2 22:11:32.015 2019 (UTC + 2:00):
Sun Jun  2 22:11:32.109 2019 (UTC + 2:00): HAL: returning impossible range
Sun Jun  2 22:11:32.109 2019 (UTC + 2:00):
Sun Jun  2 22:11:32.250 2019 (UTC + 2:00): HalpGetValidPCIFixedIrq: BIOS did not assign an interrupt vector for the device
Sun Jun  2 22:11:32.250 2019 (UTC + 2:00):
Sun Jun  2 22:11:32.343 2019 (UTC + 2:00): HAL: returning impossible range
Sun Jun  2 22:11:32.343 2019 (UTC + 2:00):
Sun Jun  2 22:11:32.468 2019 (UTC + 2:00): HalpGetValidPCIFixedIrq: BIOS did not assign an interrupt vector for the device
Sun Jun  2 22:11:32.468 2019 (UTC + 2:00):
Sun Jun  2 22:11:32.562 2019 (UTC + 2:00): HAL: returning impossible range


EDIT: Without debugger, XP SP3 debug version always crashs. With windbg it comes to desktop but slow. I want to use it for debugging acpi.sys, after I put halmacpi.dll and ntkrpamp.exe
to windows\system32 , a line in boot.ini and acpi.sys there also. But even now is clear: XP does not know, how to set IRQs
because missing information from Bios.



diderius6 has attached files to this post
#617 infuscomus ⇗ @diderius6

can XP handle IRQs like 0xFFFFFFF7 (-9) - IRQ of PCI\VEN_1022&DEV_7901 on windows 10


assuming we get APIC working
#618 diderius6 ⇗ @infuscomus

XP handles normal APIC, means 24 IRQs.
Yesterday it was a crazy work to install XP SP3 debug version "Standard PC" on the Asrock B350 board.
It lasts more than 2 hours.
And without debugger it always crashs because of not enough help, to
assign Irqs to devices, from Bios.

Today I make a full "Acpi Multiprocessor" install of this debug XP on the AM3+ XP friendly board.
Because it is not possible, to switch from a "Standard PC" installation to "Acpi Multiprocessor",
only vice versa
Dietmar
#619 infuscomus ⇗ @diderius6

the acpitbls.rar file you sent earlier - can you send a new copy as binary?

rw-everything -> save all as binary

I'd like to try grub2 method again with these tables and it is easier to work with binary
#620 diderius6 ⇗ @infuscomus
This installation is gone^^. Every day I install something new.
I just install Vista 32 bit on the AM3+ XP friendly board.
After, this will work on the Asrock Am4 board,
and I will send to you the tables
Dietmar

PS: With all the Vista versions, I have the one by one test, what goes wrong with XP.
#621 infuscomus ⇗ @diderius6

I made progress with grub2 method - also switched to AIO multiboot for newer grub2 version

after DSDT replace - different ACPI BSOD using xp sp3 acpi.sys

now

BSOD A5 0x03

previously

BSOD A5 0x11

ACPI 5048 new BSOD

BSOD A5 0x0D

#622 infuscomus ⇗ @diderius6

grub2 method is useful - it can replace DSDT and other ACPI tables without needing to flash BIOS

grab a USB stick and download AIO multiboot

⇗ https://www.aioboot.com/en/download/
#623 diderius6 ⇗ @infuscomus
Have you used the modified Acpi.sys 5048?

I have a really crazy problem:
After I install Vista 32 Bit (from 2007 original version)
on the AM3+ friendly board,
I try to start with this harddisk with fresh Vista 32 bit on it
the AM4 Asrock Ryzen B350 board.
But even the ASM106x driver works under XP SP3 for both boards,
this was not true for the original Vista driver.
I tried to manually install the driver in registry System\services
in CriticalDeviceDatabase and in PCI.
But even I can handle now Vista like XP (really funny, you can change registry between them, Vista is XP SP4(!))
Vista on the AM4 board crashes alswas, tolding me, I have to use chkdsk on the harddisk.
I can check during system start of Vista, that the ASM106x driver asahci32.sys is not loaded.

But while I write this, I come to the idea to install the XP driver ASM106x driver asahci32.sys on the running AM3+ board,
Dietmar

PS:
BSOD 0xA5 0x0000000D
0x0D

The ACPI extension that ACPI needs the object for

The (ULONG) name of the method that ACPI looked for

0: Base case

1: Conflict

ACPI could not find a required method or object in the namespace This bug check code is used if there is no _HID or _ADR present.

from ⇗ https://docs.microsoft.com/en-us/windows...acpi-bios-error
#624 infuscomus ⇗ @diderius6

yes, I tried the modified version first, I have not tried unmodified yet

ULONG name - from BSOD 0x4449555f DIU_ - or _UID - There are several of those in DSDT so i am not sure which one?

edit:
regarding vista 32 bit - have you tried using "load driver" and loading ASMedia 106x driver during install?
#625 diderius6 ⇗ @infuscomus

Yes, but the problem is, that Vista does not recognice any USB on the Asrock board.
Now I have a really funny situation:
On the XP friendly AM3+ is the Asm106x driver loaded under Vista 32 bit
and you can boot from.
But on the Asrock board, this driver is not loaded from the same Vista 32 bit.
This is crazy, there seems no ahci driver to be on the market,
which run under Vista 32 bit on the Asrock B350 board
Dietmar
#626 infuscomus ⇗ @diderius6

I think vista generic msahci.sys driver conforms to AHCI 1.0 specification - the new boards are AHCI 1.3 specification
^ I may be wrong about this

try integrating the ASMedia USB/AHCI drivers into boot.wim and install.wim images

⇗ https://community.spiceworks.com/how_to/...-a-usb-3-0-port
#627 diderius6 ⇗ @infuscomus
I make a try to install Vista 5048
direct from working XP on the Asrock board.
It starts installing, but on reboot it tolds

Blinitializelibrary failed 0xc0000017

This is the same message, that all Vista 32 bit versions tell me now when I direct install via DVD.
And before the same error message was told by Win7 32 bit, now not, I installed Win7 32 bit on the Asrock B350 Ryzen board.
No BSOD because of Acpi with Vista 5048.
I think this message means "unknown hardware"
but I am not sure
Dietmar

PS: All other, later Vista 32 bit told me during install from running XP: Compi not Acpi compliant.
#628 infuscomus ⇗ @diderius6

To make things easier I recommend you setup AIO multiboot on a USB stick so you can start swapping ACPI tables using grub2 - easier than BIOS flash

⇗ https://www.aioboot.com/en/download/
#629 diderius6 ⇗ @infuscomus

I see this and it is nice work!
But before cure you need diagnosis:)).

I read about the  0xc0000017 error,
that Windows wrote: Not enough memory for ramdisk.

So, all those errors seems to happen,
because every version of Windows does not know
how to manage the Bios information from the Asrock B350 board. Yesterday I got via Debugversion of XP
a lot of times the message, that the values, that hal.dll gives to OS, are impossible. XP enables because of this PIC mode.
When I see this, I looks like a miracle, that XP can run on this hardware
anyway
Dietmar

"BlInitializeLibrary failed XXX" error when you install or start an operating system on a 64-bit UEFI-based computer
Applies to: Windows 10, version 1809Windows Server 2019, all versionsWindows Server version 1709 and newer
Symptoms
When you try to install or start an operating system on a 64-bit UEFI-based computer, the system does not start, and you receive the following error message:

BlInitializeLibrary failed XXX

Note The error code could also be "0xc000009a" or "0xc0000001."
Cause

This problem occurs because the boot firmware on the computer generates lots of memory fragmentation.
Note Not all "BlInitializeLibrary failed XXX" errors are caused by this issue.


Workaround

We recommend that you do not let boot firmware create large amounts of fragmentation. Large memory fragmentation degrades the overall startup performance and causes problems.
More information

At the pre-boot stage, Windows Boot Manager sets the maximum number of global memory descriptor for a 64-bit UEFI system at 512. If the boot firmware creates a large amount of memory fragmentation, the memory descriptor count may exceed the set limit. This causes the "BlInitializeLibrary failed XXX" error.
Note This design applies only to the current operating system releases, including Windows 10, Windows Server 2016, and Windows Server 2012 R2. We do not guarantee that this design will apply to future versions.
#630 infuscomus ⇗ @diderius6

what is the equivalent function of BlInitializeLibrary for XP?

Do we need to patch ntldr (osloader.exe) to allow for more global memory descriptors?

to get osloader.exe - open ntldr in hex editor and look for MZ header and delete everything before it

 

Page 43

#631 diderius6 ⇗ @infuscomus

First I saw this BlInitializeLibrary on Win7 32 bit,
when I try to do a new install on the Asrock B350 board.
When I use a ready Win7 32 bit installation from another
compi, this does not happen. So it depends on, how
the Bios speaks to OS during installation. Using installation from other Bios
does not show this problem
Dietmar

PS: After changing the DSDT table to pur 32 bit and go to Bios 3.30 with APIC mode,
Win7 32 bit does not show this error any more during fresh install on the Asrock B350 board.
It has nothing to do with Acpi. Only, how Bios told OS, where which free memory for a device
has to be. XP goes out of this crazy situation using PIC mode with only 16 IRQs, nearly hard wired.
#632 diderius6 The error (not BSOD) Blinitializelibrary failed 0xc0000017
happens very early in bootprocess, about in 1. second when bootlader loads
Dietmar
#633 infuscomus ⇗ @diderius6

Blinitializelibrary failed - for Windows 7 or XP?

edit:
I found source code for win2k osloader -

in it i find

//   
// memory descriptor array size   
//   
#define MAX_DESCRIPTORS                                 60
#634 Mov AX, 0xDEAD
Zitat
Acpi tables "in-ram patcher" at boot time like Chameleon/Clover, solved


litle update to ¶ Windows XP SP3 32bit and modern PC parts (12)

#635 infuscomus ⇗ @Mov AX, 0xDEAD

I have run into a different error after loading an earlier DSDT table for AB350 Gaming K4 using grub2

.......... 0xA5 (0x02, X ,Y ,Z) conflict with E820 Memory list, solved (custom acpi.sys)

Can I please try your custom acpi.sys to see if it works?
#636 Mov AX, 0xDEAD
Zitat von ⇗ infuscomus im Beitrag ¶ #635

.......... 0xA5 (0x02, X ,Y ,Z) conflict with E820 Memory list, solved (custom acpi.sys)
Can I please try your custom acpi.sys to see if it works?

e820 fix: ¶ Windows XP SP3 32bit and modern PC parts (16)
#637 infuscomus whoops! - parameter 3 is 0x1 - so error actually is - ACPI cannot convert the BIOS' resource list into the proper format. This probably represents an error in the BIOS' list encoding procedure.



⇗ https://docs.microsoft.com/en-us/windows...acpi-bios-error
#638 infuscomus OK,

made some changes to DSDT table

now I think I have E820 error



⇗ @Mov AX, 0xDEAD ⇗ @diderius6
I looked for the hex values you referenced earlier to fix E820 but could not find exact hex value in either XP SP3, server 2003 or vista 5048 acpi.sys
#639 diderius6 I make a try with Vista 5048 on the XP friendly Am3+ board.
Again I get there this message Blinitializelibrary failed 0xc0000017.
So, it seems to be a problem for the bootloader
and not only in this Vista Version
Dietmar
#640 Mov AX, 0xDEAD
Zitat von ⇗ infuscomus im Beitrag ¶ #638

I looked for the hex values you referenced earlier to fix E820 but could not find exact hex value in either XP SP3, server 2003 or vista 5048 acpi.sys

check acpi.sys win xp sp3, size=187,776, ver 5.1.2600.5512 (xpsp.080413-2111)
#641 infuscomus ⇗ @Mov AX, 0xDEAD
Thanks,

is this function the same in server 2003 and vista 5048 acpi.sys?
#642 infuscomus ⇗ @diderius6

can you hex edit these XP boot loader files to sets the maximum number of global memory descriptors to 512?



infuscomus has attached files to this post
#643 Mov AX, 0xDEAD
Zitat von ⇗ infuscomus im Beitrag ¶ #642

can you hex edit these XP boot loader files to sets the maximum number of global memory descriptors to 512?

xp doesnt work with uefi(except winxp64+bootmgr), no mem descriptors, only short e820 list of mem regions.
only in case of very large e820 list, xp has problem
#644 infuscomus ⇗ @Mov AX, 0xDEAD

looking at win2k ntldr source code it uses memory descriptors
#645 Mov AX, 0xDEAD
Zitat von ⇗ infuscomus im Beitrag ¶ #644
@Mov AX, 0xDEAD
looking at win2k ntldr source code it uses memory descriptors

yes, uses, but only few, e820 is really short list, no need much descriptors to fit all regions

 

Page 44

#646 infuscomus ⇗ @Mov AX, 0xDEAD ⇗ @diderius6

So I bypassed E820 BSOD error with hex edit to acpi.sys - damn! 7E BSOD
#647 diderius6 ⇗ @infuscomus

Yes, this is the same, that happens to me. This is best until now, what you can reach for Acpi on the Asrock board.
Until now, it is absolut unclear, why this BSOD 7E happens, means Acpi.sys writes or looks in forbidden memory..
I also cant install a full XP SP3 debug version on the XP friendly AM3+ board.
Today I make a new try: I change the ram on the Asrock B350 board against 2*2Gbyte DDR4 ram.
Then I make a brandnew install of normal XP SP3 on the AM3+ board,
no extra drivers, only the Asm106x for harddsik.
This full Acpi XP I copie then to the Asrock board. There I change hal.dll, acpi.sys, ntoskrnl.exe against them from
the XP SP3 debug version and set up a windbg session
Dietmar
#648 diderius6 Diagnostic is on its way:)).. I put on normal XP SP3 change acpi.sys, halmacpi.dll, ntkrnlmp.exe to the XP SP3 DEBUG version and run windbg


Microsoft (R) Windows Debugger Version 6.12.0002.633 X86
Copyright (c) Microsoft Corporation. All rights reserved.

Opened \\.\com1
Waiting to reconnect...
Connected to Windows XP 2600 x86 compatible target at (Thu Jun 6 19:27:18.937 2019 (UTC + 2:00)), ptr64 FALSE
Kernel Debugger connection established.
WARNING: Inaccessible path: 'C:\WinDDK\7600.16385.1\src\openfabricsall\nvme13\nvme\objchk_wnet_x86\i386'
Symbol search path is: C:\WinDDK\7600.16385.1\src\openfabricsall\nvme13\nvme\objchk_wnet_x86\i386;SRV*c:\symbols
*⇗ http://msdl.microsoft.com/download/symbols;C:\symbols
Executable search path is: C:\localsymbols
Windows XP Kernel Version 2600 MP (1 procs) Checked x86 compatible
Built by: 2600.xpsp.080413-2133
Machine Name:
Kernel base = 0x80a02000 PsLoadedModuleList = 0x80af5708
System Uptime: not available
WARNING: Inaccessible path: 'C:\WinDDK\7600.16385.1\src\openfabricsall\nvme13\nvme\objchk_wnet_x86\i386'
Thu Jun 6 19:27:21.718 2019 (UTC + 2:00): MM: Loader/HAL memory block indicates large pages cannot be used for 80A02000->80D8DFFF
Thu Jun 6 19:27:21.718 2019 (UTC + 2:00):
Thu Jun 6 19:27:21.734 2019 (UTC + 2:00): MM: Loader/HAL memory block indicates large pages cannot be used for 80100000->8012777F
Thu Jun 6 19:27:28.640 2019 (UTC + 2:00):
*** Assertion failed: PciInterfacesInstantiated
*** Source File: d:\xpsp\base\busdrv\acpi\driver\nt\irqarb.c, line 3512

Thu Jun 6 19:27:28.640 2019 (UTC + 2:00):
Thu Jun 6 19:27:28.671 2019 (UTC + 2:00): Break repeatedly, break Once, Ignore, terminate Process, or terminate Thread (boipt)? i
i

Thu Jun 6 19:27:28.671 2019 (UTC + 2:00):
Thu Jun 6 19:27:56.671 2019 (UTC + 2:00):
*** Assertion failed: pciInterface
*** Source File: d:\xpsp\base\busdrv\acpi\driver\nt\irqarb.c, line 3518

Thu Jun 6 19:27:56.671 2019 (UTC + 2:00):
Thu Jun 6 19:27:56.703 2019 (UTC + 2:00): Break repeatedly, break Once, Ignore, terminate Process, or terminate Thread (boipt)? i
i

Thu Jun 6 19:27:56.703 2019 (UTC + 2:00):
Thu Jun 6 19:28:08.343 2019 (UTC + 2:00): PS: Unhandled Kernel Mode Exception Pointers = 0xF789D9D4
Thu Jun 6 19:28:08.343 2019 (UTC + 2:00):
Thu Jun 6 19:28:08.359 2019 (UTC + 2:00): Code c0000005 Addr F7578561 Info0 00000000 Info1 00000010 Info2 00000010 Info3 00000000
Thu Jun 6 19:28:08.359 2019 (UTC + 2:00):
Thu Jun 6 19:28:08.390 2019 (UTC + 2:00):
*** Fatal System Error: 0x0000007e
(0xC0000005,0xF7578561,0xF789DE88,0xF789DB84)

Thu Jun 6 19:28:08.421 2019 (UTC + 2:00): Break instruction exception - code 80000003 (first chance)

A fatal system error has occurred.
Debugger entered on first try; Bugcheck callbacks have not been invoked.

A fatal system error has occurred.

Connected to Windows XP 2600 x86 compatible target at (Thu Jun 6 19:28:08.609 2019 (UTC + 2:00)), ptr64 FALSE
Loading Kernel Symbols
............................
Loading User Symbols

*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

Use !analyze -v to get detailed debugging information.

BugCheck 7E, {c0000005, f7578561, f789de88, f789db84}

*** No owner thread found for resource 80af15c0
*** No owner thread found for resource 80af15c0
*** No owner thread found for resource 80af15c0
*** No owner thread found for resource 80af15c0
*** No owner thread found for resource 80af15c0
Probably caused by : ACPI.sys ( ACPI!AcpiArbCrackPRT+113 )

Followup: MachineOwner
---------

nt!RtlpBreakWithStatusInstruction:
80ab9138 cc int 3
0: kd> !analyze -v
*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

SYSTEM_THREAD_EXCEPTION_NOT_HANDLED (7e)
This is a very common bugcheck. Usually the exception address pinpoints
the driver/function that caused the problem. Always note this address
as well as the link date of the driver/image that contains this address.
Arguments:
Arg1: c0000005, The exception code that was not handled
Arg2: f7578561, The address that the exception occurred at
Arg3: f789de88, Exception Record Address
Arg4: f789db84, Context Record Address

Debugging Details:
------------------

*** No owner thread found for resource 80af15c0
*** No owner thread found for resource 80af15c0
*** No owner thread found for resource 80af15c0
*** No owner thread found for resource 80af15c0
*** No owner thread found for resource 80af15c0

EXCEPTION_CODE: (NTSTATUS) 0xc0000005 - Die Anweisung "0x%08lx" verweist auf Speicher bei "0x%08lx". Die Daten wurden wegen eines E/A-Fehlers in "0x%081x" nicht in den Arbeitsspeicher bertragen.

FAULTING_IP:
ACPI!AcpiArbCrackPRT+113
f7578561 ff5710 call dword ptr [edi+10h]

EXCEPTION_RECORD: f789de88 -- (.exr 0xfffffffff789de88)
ExceptionAddress: f7578561 (ACPI!AcpiArbCrackPRT+0x00000113)
ExceptionCode: c0000005 (Access violation)
ExceptionFlags: 00000000
NumberParameters: 2
Parameter[0]: 00000000
Parameter[1]: 00000010
Attempt to read from address 00000010

CONTEXT: f789db84 -- (.cxr 0xfffffffff789db84)
eax=f789e008 ebx=00000000 ecx=0000bb40 edx=00000056 esi=8acca710 edi=00000000
eip=f7578561 esp=f789df50 ebp=f789e0a0 iopl=0 nv up ei ng nz na pe nc
cs=0008 ss=0010 ds=0023 es=0023 fs=0030 gs=0000 efl=00010286
ACPI!AcpiArbCrackPRT+0x113:
f7578561 ff5710 call dword ptr [edi+10h] ds:0023:00000010=????????
Resetting default scope

PROCESS_NAME: System

ERROR_CODE: (NTSTATUS) 0xc0000005 - Die Anweisung "0x%08lx" verweist auf Speicher bei "0x%08lx". Die Daten wurden wegen eines E/A-Fehlers in "0x%081x" nicht in den Arbeitsspeicher bertragen.

EXCEPTION_PARAMETER1: 00000000

EXCEPTION_PARAMETER2: 00000010

READ_ADDRESS: 00000010

FOLLOWUP_IP:
ACPI!AcpiArbCrackPRT+113
f7578561 ff5710 call dword ptr [edi+10h]

BUGCHECK_STR: 0x7E

DEFAULT_BUCKET_ID: NULL_CLASS_PTR_DEREFERENCE

LOCK_ADDRESS: 80af1640 -- (!locks 80af1640)
NTSDEXTS: Unable to resolve ntdll!RtlCriticalSectionList
NTSDEXTS: Please check your symbols

PNP_TRIAGE:
Lock address : 0x80af1640
Thread Count : 1
Thread address: 0x8acc5020
Thread wait : 0xdd

LAST_CONTROL_TRANSFER: from 80a30d41 to 80ab9138

STACK_TEXT:
f789e0a0 f75b865b 8acca710 f789e0cc f789e0e0 ACPI!AcpiArbCrackPRT+0x113
f789e0d4 f75c882d f75ae2a0 f789e0f0 f789e1a8 ACPI!AcpiArbAddAllocation+0x9f
f789e158 f75b7375 f75ae2a0 e100d1e4 f75ae2a0 ACPI!ArbBootAllocation+0x17b
f789e16c f75c8d89 f75ae2a0 e100d1e4 e100d1e4 ACPI!AcpiArbBootAllocation+0x4b
f789e188 80b5d111 f75ae2a0 00000009 f789e1a8 ACPI!ArbArbiterHandler+0x1bd
f789e1c4 80b5e093 f789e1b8 00000000 80af1140 nt!IopBootAllocation+0xbb
f789e208 80b5e80b 00000004 e1552b68 e15261e8 nt!IopAllocateBootResourcesInternal+0xc5
f789e228 80d24c8b 00000004 8acca710 e15261e8 nt!IopAllocateBootResources+0x75
f789e24c 80b4753a 00000004 8acca710 e15261e8 nt!IopReportBootResources+0x65
f789e27c 80b4db93 8ac5fd48 80000248 00000001 nt!PiQueryAndAllocateBootResources+0x150
f789e36c 80b4e26d 8ac5fd48 00000000 00000000 nt!PipProcessNewDeviceNode+0xc9d
f789e5c4 80a2cfb6 8ac8ecc8 00000000 00000000 nt!PipProcessDevNodeTree+0x1bd
f789e608 80a2d2c1 00000000 00000000 8007b060 nt!PipDeviceActionWorker+0xc4
f789e620 80d23f53 00000000 00000006 00000000 nt!PipRequestDeviceAction+0x13b
f789e684 80d201f1 80085000 f789e6a0 00034000 nt!IopInitializeBootDrivers+0x39b
f789e830 80d1d940 80085000 00000000 8acc5020 nt!IoInitSystem+0x82d
f789edac 80bc761c 80085000 00000000 00000000 nt!Phase1Initialization+0xb12
f789eddc 80ad9b52 80d1ce2e 80085000 00000000 nt!PspSystemThreadStartup+0x34
00000000 00000000 00000000 00000000 00000000 nt!KiThreadStartup+0x16


SYMBOL_STACK_INDEX: 0

SYMBOL_NAME: ACPI!AcpiArbCrackPRT+113

FOLLOWUP_NAME: MachineOwner

MODULE_NAME: ACPI

IMAGE_NAME: ACPI.sys

DEBUG_FLR_IMAGE_TIMESTAMP: 4802b4e5

STACK_COMMAND: .cxr 0xfffffffff789db84 ; kb

FAILURE_BUCKET_ID: 0x7E_ACPI!AcpiArbCrackPRT+113

BUCKET_ID: 0x7E_ACPI!AcpiArbCrackPRT+113

Followup: MachineOwner
---------

0: kd> lm
start end module name
80100000 80127780 HAL1 (deferred)
80a02000 80d8e000 nt (pdb symbols) c:\symbols\ntkrnlmp.pdb\23BD599C4BEE49C0B7E2E3FD595D2ACB1\ntkrnlmp.pdb
f740c000 f742bb00 fltMgr (deferred)
f742c000 f7441000 nvme (deferred)
f7441000 f7458880 SCSIPORT (deferred)
f7459000 f7470900 atapi (deferred)
f7471000 f7496a00 dmio (deferred)
f7497000 f74b5d80 ftdisk (deferred)
f7556000 f7566a80 pci (deferred)
f7567000 f75d5480 ACPI (pdb symbols) c:\symbols\acpi.pdb\F3A2E52867724F8EAB957EA99ABA93031\acpi.pdb
f75f7000 f7600300 isapnp (deferred)
f7607000 f7611580 MountMgr (deferred)
f7617000 f7624200 VolSnap (deferred)
f7627000 f7637000 asahci32 (deferred)
f7637000 f763fe00 disk (deferred)
f7647000 f7653180 CLASSPNP (deferred)
f7707000 f770d180 PCIIDEX (deferred)
f770f000 f7713d00 PartMgr (deferred)
f782e000 f7844880 KSecDD (deferred)
f7845000 f7856f00 sr (deferred)
f7857000 f7897000 storport (deferred)
f7897000 f789a000 BOOTVID (deferred)
f795a000 f7986980 NDIS (deferred)
f7987000 f7988b80 kdcom (deferred)
f7989000 f798a100 WMILIB (deferred)
f798b000 f798c700 dmload (deferred)
f7a35000 f7a4eb80 Mup (deferred)
f7a4f000 f7a4fd00 pciide (deferred)
f7b52000 f7bde600 Ntfs (deferred)
0: kd> !devnode 0 1
Dumping IopRootDeviceNode (= 0x8ac8ecc8)
DevNode 0x8ac8ecc8 for PDO 0x8ac8ee10
InstancePath is "HTREE\ROOT\0"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8ac8e8b8 for PDO 0x8ac8ea18
InstancePath is "Root\ACPI_HAL\0000"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8ace2358 for PDO 0x8ace3830
InstancePath is "ACPI_HAL\PNP0C08\0"
ServiceName is "ACPI"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8ac37b08 for PDO 0x8acd2248
InstancePath is "ACPI\PNP0A08\0"
ServiceName is "pci"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8ac37630 for PDO 0x8ace8760
InstancePath is "ACPI\PNP0C0C\aa"
State = DeviceNodeDriversAdded (0x303)
Previous State = DeviceNodeInitialized (0x302)
DevNode 0x8ac37500 for PDO 0x8acc99a8
InstancePath is "ACPI\AuthenticAMD_-_x86_Family_23_Model_1\_0"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0x8accacf8 for PDO 0x8ac364e8
InstancePath is "ACPI\AuthenticAMD_-_x86_Family_23_Model_1\_1"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0x8accabc8 for PDO 0x8acd15c8
InstancePath is "ACPI\AuthenticAMD_-_x86_Family_23_Model_1\_2"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0x8acea310 for PDO 0x8acd0630
InstancePath is "ACPI\AuthenticAMD_-_x86_Family_23_Model_1\_3"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0x8acea1e0 for PDO 0x8acd61b0
InstancePath is "ACPI\AuthenticAMD_-_x86_Family_23_Model_1\_4"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0x8ac88008 for PDO 0x8acd3248
InstancePath is "ACPI\AuthenticAMD_-_x86_Family_23_Model_1\_5"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0x8ac881c8 for PDO 0x8ac36cd0
InstancePath is "ACPI\AuthenticAMD_-_x86_Family_23_Model_1\_6"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0x8accf450 for PDO 0x8acca190
InstancePath is "ACPI\AuthenticAMD_-_x86_Family_23_Model_1\_7"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0x8accf320 for PDO 0x8accf6a0
InstancePath is "ACPI\AuthenticAMD_-_x86_Family_23_Model_1\_8"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0x8accf1f0 for PDO 0x8acd2f18
InstancePath is "ACPI\AuthenticAMD_-_x86_Family_23_Model_1\_9"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0x8accf0c0 for PDO 0x8ac601d8
InstancePath is "ACPI\AuthenticAMD_-_x86_Family_23_Model_1\10"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0x8ac4e430 for PDO 0x8acd1ba8
InstancePath is "ACPI\AuthenticAMD_-_x86_Family_23_Model_1\11"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0x8ac4e300 for PDO 0x8ace11d0
InstancePath is "ACPI\AuthenticAMD_-_x86_Family_23_Model_1\12"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0x8ac4e1d0 for PDO 0x8ace10b0
InstancePath is "ACPI\AuthenticAMD_-_x86_Family_23_Model_1\13"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0x8ac4e0a0 for PDO 0x8ace2200
InstancePath is "ACPI\AuthenticAMD_-_x86_Family_23_Model_1\14"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0x8ac5fe78 for PDO 0x8ace20e0
InstancePath is "ACPI\AuthenticAMD_-_x86_Family_23_Model_1\15"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0x8ac5fd48 for PDO 0x8acca710
InstancePath is "ACPI\AMDI0030\0"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0x8ac5fc18 for PDO 0x8acca5f0
State = DeviceNodeUninitialized (0x301)
Previous State = Unknown State (0x0)
DevNode 0x8ac5fae8 for PDO 0x8acc9460
State = DeviceNodeUninitialized (0x301)
Previous State = Unknown State (0x0)
DevNode 0x8acd0008 for PDO 0x8acc9340
State = DeviceNodeUninitialized (0x301)
Previous State = Unknown State (0x0)
DevNode 0x8acd0468 for PDO 0x8acc9f18
State = DeviceNodeUninitialized (0x301)
Previous State = Unknown State (0x0)
DevNode 0x8acd0338 for PDO 0x8acc9df8
State = DeviceNodeUninitialized (0x301)
Previous State = Unknown State (0x0)
DevNode 0x8acd0208 for PDO 0x8ac37c68
State = DeviceNodeUninitialized (0x301)
Previous State = Unknown State (0x0)
DevNode 0x8ace7db0 for PDO 0x8ace7f10
InstancePath is "Root\dmio\0000"
ServiceName is "dmio"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8ace7b58 for PDO 0x8ace7cb8
InstancePath is "Root\ftdisk\0000"
ServiceName is "ftdisk"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8ace7900 for PDO 0x8ace7a60
InstancePath is "Root\LEGACY_ACPI\0000"
ServiceName is "ACPI"
State = DeviceNodeRemoved (0x312)
Previous State = DeviceNodeStarted (0x308)
Problem = CM_PROB_DEVICE_NOT_THERE
DevNode 0x8ace76a8 for PDO 0x8ace7808
InstancePath is "Root\LEGACY_AFD\0000"
ServiceName is "AFD"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8ace7418 for PDO 0x8ace7578
InstancePath is "Root\LEGACY_AMPA\0000"
ServiceName is "ampa"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8ace71c0 for PDO 0x8ace7320
InstancePath is "Root\LEGACY_ATAPI\0000"
ServiceName is "atapi"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8ac8ded8 for PDO 0x8ac8d038
InstancePath is "Root\LEGACY_BEEP\0000"
ServiceName is "Beep"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8ac8dc38 for PDO 0x8ac8dd98
InstancePath is "Root\LEGACY_DMBOOT\0000"
ServiceName is "dmboot"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8ac8d9e0 for PDO 0x8ac8db40
InstancePath is "Root\LEGACY_DMLOAD\0000"
ServiceName is "dmload"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8ac8d788 for PDO 0x8ac8d8e8
InstancePath is "Root\LEGACY_FIPS\0000"
ServiceName is "Fips"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8ac8d4e0 for PDO 0x8ac8d640
InstancePath is "Root\LEGACY_GPC\0000"
ServiceName is "Gpc"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8ac8d288 for PDO 0x8ac8d3e8
InstancePath is "Root\LEGACY_HTTP\0000"
ServiceName is "HTTP"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8ace6008 for PDO 0x8ac8d190
InstancePath is "Root\LEGACY_IPNAT\0000"
ServiceName is "IpNat"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8ace6db0 for PDO 0x8ace6f10
InstancePath is "Root\LEGACY_IPSEC\0000"
ServiceName is "IPSec"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8ace6b58 for PDO 0x8ace6cb8
InstancePath is "Root\LEGACY_KSECDD\0000"
ServiceName is "ksecdd"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8ace6900 for PDO 0x8ace6a60
InstancePath is "Root\LEGACY_MNMDD\0000"
ServiceName is "mnmdd"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8ace66a8 for PDO 0x8ace6808
InstancePath is "Root\LEGACY_MOUNTMGR\0000"
ServiceName is "mountmgr"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8ace6450 for PDO 0x8ace65b0
InstancePath is "Root\LEGACY_NDIS\0000"
ServiceName is "NDIS"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8ace61f8 for PDO 0x8ace6358
InstancePath is "Root\LEGACY_NDISTAPI\0000"
ServiceName is "NdisTapi"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8ac8ced8 for PDO 0x8ac8c038
InstancePath is "Root\LEGACY_NDISUIO\0000"
ServiceName is "Ndisuio"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8ac8cc80 for PDO 0x8ac8cde0
InstancePath is "Root\LEGACY_NDPROXY\0000"
ServiceName is "NDProxy"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8ac8ca28 for PDO 0x8ac8cb88
InstancePath is "Root\LEGACY_NETBT\0000"
ServiceName is "NetBT"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8ac8c7d0 for PDO 0x8ac8c930
InstancePath is "Root\LEGACY_NULL\0000"
ServiceName is "Null"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8ac8c578 for PDO 0x8ac8c6d8
InstancePath is "Root\LEGACY_NVME\0000"
ServiceName is "nvme"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8ac8c320 for PDO 0x8ac8c480
InstancePath is "Root\LEGACY_PARTMGR\0000"
ServiceName is "PartMgr"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8ace5008 for PDO 0x8ac8c228
InstancePath is "Root\LEGACY_PARVDM\0000"
ServiceName is "ParVdm"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8ace5db0 for PDO 0x8ace5f10
InstancePath is "Root\LEGACY_PCIIDE\0000"
ServiceName is "PCIIde"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8ace5b58 for PDO 0x8ace5cb8
InstancePath is "Root\LEGACY_RASACD\0000"
ServiceName is "RasAcd"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8ace5900 for PDO 0x8ace5a60
InstancePath is "Root\LEGACY_RDPCDD\0000"
ServiceName is "RDPCDD"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8ace56a8 for PDO 0x8ace5808
InstancePath is "Root\LEGACY_TCPIP\0000"
ServiceName is "Tcpip"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8ace5450 for PDO 0x8ace55b0
InstancePath is "Root\LEGACY_VGASAVE\0000"
ServiceName is "VgaSave"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8ace51f8 for PDO 0x8ace5358
InstancePath is "Root\LEGACY_VOLSNAP\0000"
ServiceName is "VolSnap"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8ac8bed8 for PDO 0x8ac8b038
InstancePath is "Root\LEGACY_WANARP\0000"
ServiceName is "Wanarp"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8ac8bc80 for PDO 0x8ac8bde0
InstancePath is "Root\MEDIA\MS_MMACM"
ServiceName is "audstub"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8ac8ba28 for PDO 0x8ac8bb88
InstancePath is "Root\MEDIA\MS_MMDRV"
ServiceName is "audstub"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8ac8b7d0 for PDO 0x8ac8b930
InstancePath is "Root\MEDIA\MS_MMMCI"
ServiceName is "audstub"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8ac8b578 for PDO 0x8ac8b6d8
InstancePath is "Root\MEDIA\MS_MMVCD"
ServiceName is "audstub"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8ac8b320 for PDO 0x8ac8b480
InstancePath is "Root\MEDIA\MS_MMVID"
ServiceName is "audstub"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8ace4008 for PDO 0x8ac8b228
InstancePath is "Root\MS_L2TPMINIPORT\0000"
ServiceName is "Rasl2tp"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8ace4db0 for PDO 0x8ace4f10
InstancePath is "Root\MS_NDISWANIP\0000"
ServiceName is "NdisWan"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8ace4b58 for PDO 0x8ace4cb8
InstancePath is "Root\MS_PPPOEMINIPORT\0000"
ServiceName is "RasPppoe"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8ace4900 for PDO 0x8ace4a60
InstancePath is "Root\MS_PPTPMINIPORT\0000"
ServiceName is "PptpMiniport"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8ace46a8 for PDO 0x8ace4808
InstancePath is "Root\MS_PSCHEDMP\0000"
ServiceName is "PSched"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8ace4450 for PDO 0x8ace45b0
InstancePath is "Root\MS_PSCHEDMP\0001"
ServiceName is "PSched"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8ace41f8 for PDO 0x8ace4358
InstancePath is "Root\MS_PSCHEDMP\0002"
ServiceName is "PSched"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8ac8aed8 for PDO 0x8ac8a038
InstancePath is "Root\MS_PTIMINIPORT\0000"
ServiceName is "Raspti"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8ac8ac80 for PDO 0x8ac8ade0
InstancePath is "Root\PCI_HAL\0000"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8ac8aa28 for PDO 0x8ac8ab88
InstancePath is "Root\RDPDR\0000"
ServiceName is "rdpdr"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8ac8a7d0 for PDO 0x8ac8a930
InstancePath is "Root\RDP_KBD\0000"
ServiceName is "TermDD"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8ac8a578 for PDO 0x8ac8a6d8
InstancePath is "Root\RDP_MOU\0000"
ServiceName is "TermDD"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8ac8a320 for PDO 0x8ac8a480
InstancePath is "Root\SYSTEM\0000"
ServiceName is "swenum"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8ace3008 for PDO 0x8ac8a228
InstancePath is "Root\SYSTEM\0001"
ServiceName is "update"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8ace3db0 for PDO 0x8ace3f10
InstancePath is "Root\SYSTEM\0002"
ServiceName is "mssmbios"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
0: kd> !pcitree
PciFdoExtensionListHead forward pointer is NULL, list is empty
0: kd> pci
^ pass count must be preceeded by whitespace error in 'pci'
0: kd> !pci
PCI Segment 0 Bus 0
00:0 1022:1450.00 Cmd[0000:......] Sts[0000:.....] AMD Host Bridge SubID:1849:1450
00:2 1022:1451.00 Cmd[0004:..b...] Sts[0010:c....] AMD Class:8:6:0 SubID:1022:1451
01:0 1022:1452.00 Cmd[0000:......] Sts[0000:.....] AMD Host Bridge
01:3 1022:1453.00 Cmd[0007:imb...] Sts[0010:c....] AMD PCI-PCI Bridge 0->0x3-0xa
02:0 1022:1452.00 Cmd[0000:......] Sts[0000:.....] AMD Host Bridge
03:0 1022:1452.00 Cmd[0000:......] Sts[0000:.....] AMD Host Bridge
03:1 1022:1453.00 Cmd[0007:imb...] Sts[0010:c....] AMD PCI-PCI Bridge 0->0xb-0xb
04:0 1022:1452.00 Cmd[0000:......] Sts[0000:.....] AMD Host Bridge
07:0 1022:1452.00 Cmd[0000:......] Sts[0000:.....] AMD Host Bridge
07:1 1022:1454.00 Cmd[0007:imb...] Sts[0010:c....] AMD PCI-PCI Bridge 0->0x11-0x11
08:0 1022:1452.00 Cmd[0000:......] Sts[0000:.....] AMD Host Bridge
08:1 1022:1454.00 Cmd[0007:imb...] Sts[0010:c....] AMD PCI-PCI Bridge 0->0x12-0x12
14:0 1022:790b.59 Cmd[0403:im....] Sts[0220:.6...] AMD SMBus Controller SubID:1849:ffff
14:3 1022:790e.51 Cmd[000f:imb...] Sts[0220:.6...] AMD ISA Bridge SubID:1849:ffff
18:0 1022:1460.00 Cmd[0000:......] Sts[0000:.....] AMD Host Bridge
18:1 1022:1461.00 Cmd[0000:......] Sts[0000:.....] AMD Host Bridge
18:2 1022:1462.00 Cmd[0000:......] Sts[0000:.....] AMD Host Bridge
18:3 1022:1463.00 Cmd[0000:......] Sts[0000:.....] AMD Host Bridge
18:4 1022:1464.00 Cmd[0000:......] Sts[0000:.....] AMD Host Bridge
18:5 1022:1465.00 Cmd[0000:......] Sts[0000:.....] AMD Host Bridge
18:6 1022:1466.00 Cmd[0000:......] Sts[0000:.....] AMD Host Bridge
18:7 1022:1467.00 Cmd[0000:......] Sts[0000:.....] AMD Host Bridge
0: kd> acpi
*** ERROR: Module load completed but symbols could not be loaded for nvme.sys
*** ERROR: Module load completed but symbols could not be loaded for ftdisk.sys
*** ERROR: Module load completed but symbols could not be loaded for asahci32.sys
*** ERROR: Symbol file could not be found. Defaulted to export symbols for BOOTVID.dll -
*** ERROR: Symbol file could not be found. Defaulted to export symbols for kdcom.dll -
*** ERROR: Symbol file could not be found. Defaulted to export symbols for WMILIB.SYS -
*** ERROR: Module load completed but symbols could not be loaded for dmload.sys
*** ERROR: Module load completed but symbols could not be loaded for pciide.sys
Couldn't resolve error at 'cpi'
0: kd> !acpi
No export acpi found

#649 diderius6 May be the device HPET has to be deleted in DSDT:

    Device (HPET)
{
Name (_HID, EisaId ("PNP0103") /* HPET System Timer */) // _HID: Hardware ID
Name (CRS, ResourceTemplate ()
{
Memory32Fixed (ReadOnly,
0xFED00000, // Address Base
0x00000400, // Address Length
_Y29)
IRQNoFlags ()
{0}
IRQNoFlags ()
{8}
})
Method (_STA, 0, NotSerialized) // _STA: Status
{
If ((HPEN == One))
{
If ((OSVR >= 0x0C))
{
Return (0x0F)
}

HPEN = Zero
Return (One)
}

Return (One)
}

Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
{
CreateDWordField (CRS, \HPET._Y29._BAS, HPTX) // _BAS: Base Address
CreateDWordField (CRS, \HPET._Y29._LEN, HPTY) // _LEN: Length
HPTX = HPTB /* \HPTB */
HPTY = HPTL /* \HPTL */
Return (CRS) /* \HPET.CRS_ */
}
}


Dietmar
#650 Mov AX, 0xDEAD
Zitat
edi=00000000
call dword ptr [edi+10h]


clasic nullpointer

#651 diderius6 ⇗ @Mov AX, 0xDEAD
Yes, I see this.
Question is, if there is no pointer at all for the IRQ devices build by ACPI on the Asrock B350 board,
or if the edi is just not loaded with it
Dietmar
#652 Mov AX, 0xDEAD edi must point to some struct with list of proc (like methods in c++)
wrong was before this call

*** Assertion failed: PciInterfacesInstantiated
*** Source File: d:\xpsp\base\busdrv\acpi\driver\nt\irqarb.c, line 3512

*** Assertion failed: pciInterface
*** Source File: d:\xpsp\base\busdrv\acpi\driver\nt\irqarb.c, line 3518
#653 diderius6 But what can be done, to solve this?
Dietmar
#654 diderius6 Now, all 16 cores are identified via windbg and the first message is gone

*** Assertion failed: PciInterfacesInstantiated
*** Source File: d:\xpsp\base\busdrv\acpi\driver\nt\irqarb.c, line 3512


Microsoft (R) Windows Debugger Version 6.12.0002.633 X86
Copyright (c) Microsoft Corporation. All rights reserved.

Opened \\.\com1
Waiting to reconnect...
Break repeatedly, break Once, Ignore, terminate Process, or terminate Thread (boipt)? i
i

*** Assertion failed: pciInterface
*** Source File: d:\xpsp\base\busdrv\acpi\driver\nt\irqarb.c, line 3518

Break repeatedly, break Once, Ignore, terminate Process, or terminate Thread (boipt)? i
i
PS: Unhandled Kernel Mode Exception Pointers = 0xF789D9D4
Code c0000005 Addr F7578561 Info0 00000000 Info1 00000010 Info2 00000010 Info3 00000000

*** Fatal System Error: 0x0000007e
(0xC0000005,0xF7578561,0xF789DE88,0xF789DB84)

Connected to Windows XP 2600 x86 compatible target at (Thu Jun 6 21:58:23.375 2019 (UTC + 2:00)), ptr64 FALSE
Kernel Debugger connection established.
WARNING: Inaccessible path: 'C:\WinDDK\7600.16385.1\src\openfabricsall\nvme13\nvme\objchk_wnet_x86\i386'
Symbol search path is: C:\WinDDK\7600.16385.1\src\openfabricsall\nvme13\nvme\objchk_wnet_x86\i386;SRV*c:\symbols
*⇗ http://msdl.microsoft.com/download/symbols;C:\symbols
Executable search path is: C:\localsymbols
Windows XP Kernel Version 2600 (Service Pack 3) MP (16 procs) Checked x86 compatible
Product: WinNt, suite: TerminalServer SingleUserTS
Built by: 2600.xpsp.080413-2133
Machine Name:
Kernel base = 0x80a02000 PsLoadedModuleList = 0x80af5708
Debug session time: Thu Jun 6 21:41:40.937 2019 (UTC + 2:00)
System Uptime: 0 days 0:00:03.562
WARNING: Inaccessible path: 'C:\WinDDK\7600.16385.1\src\openfabricsall\nvme13\nvme\objchk_wnet_x86\i386'
Thu Jun 6 21:58:25.109 2019 (UTC + 2:00): Break instruction exception - code 80000003 (first chance)

A fatal system error has occurred.
Debugger entered on first try; Bugcheck callbacks have not been invoked.

A fatal system error has occurred.

Connected to Windows XP 2600 x86 compatible target at (Thu Jun 6 21:58:25.187 2019 (UTC + 2:00)), ptr64 FALSE
Loading Kernel Symbols
............................
Loading User Symbols

*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

Use !analyze -v to get detailed debugging information.

BugCheck 7E, {c0000005, f7578561, f789de88, f789db84}

*** No owner thread found for resource 80af15c0
*** No owner thread found for resource 80af15c0
*** No owner thread found for resource 80af15c0
*** No owner thread found for resource 80af15c0
*** No owner thread found for resource 80af15c0
Probably caused by : ACPI.sys ( ACPI!AcpiArbCrackPRT+113 )

Followup: MachineOwner
---------

nt!RtlpBreakWithStatusInstruction:
80ab9138 cc int 3
0: kd> !pcitree
PciFdoExtensionListHead forward pointer is NULL, list is empty
0: kd> !analyze -v
*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

SYSTEM_THREAD_EXCEPTION_NOT_HANDLED (7e)
This is a very common bugcheck. Usually the exception address pinpoints
the driver/function that caused the problem. Always note this address
as well as the link date of the driver/image that contains this address.
Arguments:
Arg1: c0000005, The exception code that was not handled
Arg2: f7578561, The address that the exception occurred at
Arg3: f789de88, Exception Record Address
Arg4: f789db84, Context Record Address

Debugging Details:
------------------

*** No owner thread found for resource 80af15c0
*** No owner thread found for resource 80af15c0
*** No owner thread found for resource 80af15c0
*** No owner thread found for resource 80af15c0
*** No owner thread found for resource 80af15c0

EXCEPTION_CODE: (NTSTATUS) 0xc0000005 - Die Anweisung "0x%08lx" verweist auf Speicher bei "0x%08lx". Die Daten wurden wegen eines E/A-Fehlers in "0x%081x" nicht in den Arbeitsspeicher bertragen.

FAULTING_IP:
ACPI!AcpiArbCrackPRT+113
f7578561 ff5710 call dword ptr [edi+10h]

EXCEPTION_RECORD: f789de88 -- (.exr 0xfffffffff789de88)
ExceptionAddress: f7578561 (ACPI!AcpiArbCrackPRT+0x00000113)
ExceptionCode: c0000005 (Access violation)
ExceptionFlags: 00000000
NumberParameters: 2
Parameter[0]: 00000000
Parameter[1]: 00000010
Attempt to read from address 00000010

CONTEXT: f789db84 -- (.cxr 0xfffffffff789db84)
eax=f789e008 ebx=00000000 ecx=0000bb40 edx=00000056 esi=8accab78 edi=00000000
eip=f7578561 esp=f789df50 ebp=f789e0a0 iopl=0 nv up ei ng nz na pe nc
cs=0008 ss=0010 ds=0023 es=0023 fs=0030 gs=0000 efl=00010286
ACPI!AcpiArbCrackPRT+0x113:
f7578561 ff5710 call dword ptr [edi+10h] ds:0023:00000010=????????
Resetting default scope

PROCESS_NAME: System

ERROR_CODE: (NTSTATUS) 0xc0000005 - Die Anweisung "0x%08lx" verweist auf Speicher bei "0x%08lx". Die Daten wurden wegen eines E/A-Fehlers in "0x%081x" nicht in den Arbeitsspeicher bertragen.

EXCEPTION_PARAMETER1: 00000000

EXCEPTION_PARAMETER2: 00000010

READ_ADDRESS: 00000010

FOLLOWUP_IP:
ACPI!AcpiArbCrackPRT+113
f7578561 ff5710 call dword ptr [edi+10h]

BUGCHECK_STR: 0x7E

DEFAULT_BUCKET_ID: NULL_CLASS_PTR_DEREFERENCE

LOCK_ADDRESS: 80af1640 -- (!locks 80af1640)
NTSDEXTS: Unable to resolve ntdll!RtlCriticalSectionList
NTSDEXTS: Please check your symbols

PNP_TRIAGE:
Lock address : 0x80af1640
Thread Count : 1
Thread address: 0x8acc5020
Thread wait : 0xe4

LAST_CONTROL_TRANSFER: from 80a30d41 to 80ab9138

STACK_TEXT:
f789e0a0 f75b865b 8accab78 f789e0cc f789e0e0 ACPI!AcpiArbCrackPRT+0x113
f789e0d4 f75c882d f75ae2a0 f789e0f0 f789e1a8 ACPI!AcpiArbAddAllocation+0x9f
f789e158 f75b7375 f75ae2a0 e15334c4 f75ae2a0 ACPI!ArbBootAllocation+0x17b
f789e16c f75c8d89 f75ae2a0 e15334c4 e15334c4 ACPI!AcpiArbBootAllocation+0x4b
f789e188 80b5d111 f75ae2a0 00000009 f789e1a8 ACPI!ArbArbiterHandler+0x1bd
f789e1c4 80b5e093 f789e1b8 00000000 80af1140 nt!IopBootAllocation+0xbb
f789e208 80b5e80b 00000004 e156b878 e1541578 nt!IopAllocateBootResourcesInternal+0xc5
f789e228 80d24c8b 00000004 8accab78 e1541578 nt!IopAllocateBootResources+0x75
f789e24c 80b4753a 00000004 8accab78 e1541578 nt!IopReportBootResources+0x65
f789e27c 80b4db93 8ac8e6c0 80000234 00000001 nt!PiQueryAndAllocateBootResources+0x150
f789e36c 80b4e26d 8ac8e6c0 00000000 00000000 nt!PipProcessNewDeviceNode+0xc9d
f789e5c4 80a2cfb6 8ac8ecc8 00000000 00000000 nt!PipProcessDevNodeTree+0x1bd
f789e608 80a2d2c1 00000000 00000000 8007b060 nt!PipDeviceActionWorker+0xc4
f789e620 80d23f53 00000000 00000006 00000000 nt!PipRequestDeviceAction+0x13b
f789e684 80d201f1 80085000 f789e6a0 00034000 nt!IopInitializeBootDrivers+0x39b
f789e830 80d1d940 80085000 00000000 8acc5020 nt!IoInitSystem+0x82d
f789edac 80bc761c 80085000 00000000 00000000 nt!Phase1Initialization+0xb12
f789eddc 80ad9b52 80d1ce2e 80085000 00000000 nt!PspSystemThreadStartup+0x34
00000000 00000000 00000000 00000000 00000000 nt!KiThreadStartup+0x16


SYMBOL_STACK_INDEX: 0

SYMBOL_NAME: ACPI!AcpiArbCrackPRT+113

FOLLOWUP_NAME: MachineOwner

MODULE_NAME: ACPI

IMAGE_NAME: ACPI.sys

DEBUG_FLR_IMAGE_TIMESTAMP: 4802b4e5

STACK_COMMAND: .cxr 0xfffffffff789db84 ; kb

FAILURE_BUCKET_ID: 0x7E_ACPI!AcpiArbCrackPRT+113

BUCKET_ID: 0x7E_ACPI!AcpiArbCrackPRT+113

Followup: MachineOwner
---------
  
#655 diderius6 I delete the Hpet device in DSDT,
flash Bios new,
but same BSOD 0x7E 0xc0000005
as before
Dietmar
#656 infuscomus ⇗ @diderius6

testing with grub2, i notice that if i use

acpi --no-ebda

I always get 7E BSOD

from grub2 documentation:
Normally, this command will replace the Root System Description Pointer (RSDP) in the Extended BIOS Data Area to point to the new tables. If the --no-ebda option is used, the new tables will be known only to GRUB, but may be used by GRUBs EFI emulation.

if I use command without --no-ebda

acpi /facp.dat /dsdt.dat

I get A5 BSOD

A5 0x02 or 0x0D

so maybe for 7E BSOD there is an error in Extended BIOS Data Area?
#657 diderius6 ⇗ @infuscomus

I think, it is a problem with all the timers for XP.

I read, that in Qemu they have the same BSOD with the Hpet timer.
⇗ https://patchwork.ozlabs.org/patch/312207/

And even more, in win7 is a conflict between the other both timers, using Irq 0 and Irq 8.

When I look at my XP without Acpi on the Asrock B350 board,
no timer at all(!) can be seen in the device list. The Irq 0 and Irq 8 are not used there.
So, may be the other both timers have to be deleted in DSDT also.
Until now, I have no other idea, why acpi not works
Dietmar
#658 infuscomus ⇗ @diderius6

are you able to get the same BSODs I get using grub2?
#659 diderius6 ⇗ @infuscomus
yes, my modded Bios for the Asrock fatal1ty ab350 gaming k4
is so good now, that I can use the normal acpi.sys from XP SP3.
I am quite sure, that the BSOD 0x7E 0xc0000005 comes from the Hpet clock.
Now I am on the way for next try.
In FACP, the bit for the Hpet timer is enabled.
This I try to set back to zero.
From my experiance from intel boards,
there are Bios with hard wired Hpet clocks.
But even in this case, because XP reads registry and not Bios for Acpi,
it is possible to fake the FACP table there
Dietmar

EDIT: Until now, in FACP there are the Hexvalues A5 85 03 00.
They need to be changed to A5 05 03 00.

EDIT2: I succeed to set the USE_PLATFORM_CLOCK 0 - OSPM may use HPET, ACPI PM Timer or internal Timer
and flash this Bios. This I test with RW-everything. But after this crazy hack still the BSOD 0x7E 0xc0000005.
#660 diderius6 All devices are set to Irq 0,
pcitree is empty. The pointer for Irqs is empty.


Microsoft (R) Windows Debugger Version 6.12.0002.633 X86
Copyright (c) Microsoft Corporation. All rights reserved.

Opened \\.\com1
Waiting to reconnect...
Connected to Windows XP 2600 x86 compatible target at (Fri Jun 7 16:47:38.703 2019 (UTC + 2:00)), ptr64 FALSE
Kernel Debugger connection established.
WARNING: Inaccessible path: 'C:\WinDDK\7600.16385.1\src\openfabricsall\nvme13\nvme\objchk_wnet_x86\i386'
Symbol search path is: C:\WinDDK\7600.16385.1\src\openfabricsall\nvme13\nvme\objchk_wnet_x86\i386;SRV*c:\symbols
*⇗ http://msdl.microsoft.com/download/symbols;C:\symbols
Executable search path is: C:\localsymbols
Windows XP Kernel Version 2600 MP (1 procs) Checked x86 compatible
Built by: 2600.xpsp.080413-2133
Machine Name:
Kernel base = 0x80a02000 PsLoadedModuleList = 0x80af5708
System Uptime: not available
WARNING: Inaccessible path: 'C:\WinDDK\7600.16385.1\src\openfabricsall\nvme13\nvme\objchk_wnet_x86\i386'
Fri Jun 7 16:47:41.437 2019 (UTC + 2:00): MM: Loader/HAL memory block indicates large pages cannot be used for 80A02000->80D8DFFF
Fri Jun 7 16:47:41.437 2019 (UTC + 2:00):
Fri Jun 7 16:47:41.453 2019 (UTC + 2:00): MM: Loader/HAL memory block indicates large pages cannot be used for 80100000->8012777F
Fri Jun 7 16:47:48.312 2019 (UTC + 2:00):
*** Assertion failed: PciInterfacesInstantiated
*** Source File: d:\xpsp\base\busdrv\acpi\driver\nt\irqarb.c, line 3512

Fri Jun 7 16:47:48.312 2019 (UTC + 2:00):
Fri Jun 7 16:47:48.328 2019 (UTC + 2:00): Break repeatedly, break Once, Ignore, terminate Process, or terminate Thread (boipt)? t
t

Fri Jun 7 16:47:48.328 2019 (UTC + 2:00):
Fri Jun 7 16:48:14.250 2019 (UTC + 2:00):
*** Assertion failed: Thread->Tcb.KernelApcDisable == 0
*** Source File: d:\xpsp\base\ntos\ps\psdelete.c, line 1028

Fri Jun 7 16:48:14.250 2019 (UTC + 2:00):
Fri Jun 7 16:48:14.281 2019 (UTC + 2:00): Break repeatedly, break Once, Ignore, terminate Process, or terminate Thread (boipt)? i
i

Fri Jun 7 16:48:14.281 2019 (UTC + 2:00):
Fri Jun 7 16:48:28.921 2019 (UTC + 2:00):
*** Assertion failed: Thread->Tcb.KernelApcDisable == 0
*** Source File: d:\xpsp\base\ntos\ps\psdelete.c, line 1333

Fri Jun 7 16:48:28.921 2019 (UTC + 2:00):
Fri Jun 7 16:48:28.937 2019 (UTC + 2:00): Break repeatedly, break Once, Ignore, terminate Process, or terminate Thread (boipt)? i
i

Fri Jun 7 16:49:25.921 2019 (UTC + 2:00): Break instruction exception - code 80000003 (first chance)
*******************************************************************************
* *
* You are seeing this message because you pressed either *
* CTRL+C (if you run kd.exe) or, *
* CTRL+BREAK (if you run WinDBG), *
* on your debugger machine's keyboard. *
* *
* THIS IS NOT A BUG OR A SYSTEM CRASH *
* *
* If you did not intend to break into the debugger, press the "g" key, then *
* press the "Enter" key now. This message might immediately reappear. If it *
* does, press "g" and "Enter" again. *
* *
*******************************************************************************
nt!RtlpBreakWithStatusInstruction:
80ab9138 cc int 3
0: kd> lm
start end module name
80100000 80127780 HAL1 (deferred)
80a02000 80d8e000 nt (pdb symbols) c:\symbols\ntkrnlmp.pdb\23BD599C4BEE49C0B7E2E3FD595D2ACB1\ntkrnlmp.pdb
f740c000 f742bb00 fltMgr (deferred)
f742c000 f7441000 nvme (deferred)
f7441000 f7458880 SCSIPORT (deferred)
f7459000 f7470900 atapi (deferred)
f7471000 f7496a00 dmio (deferred)
f7497000 f74b5d80 ftdisk (deferred)
f7556000 f7566a80 pci (deferred)
f7567000 f75d5480 ACPI (deferred)
f75f7000 f7600300 isapnp (deferred)
f7607000 f7611580 MountMgr (deferred)
f7617000 f7624200 VolSnap (deferred)
f7627000 f7637000 asahci32 (deferred)
f7637000 f763fe00 disk (deferred)
f7647000 f7653180 CLASSPNP (deferred)
f7707000 f770d180 PCIIDEX (deferred)
f770f000 f7713d00 PartMgr (deferred)
f782e000 f7844880 KSecDD (deferred)
f7845000 f7856f00 sr (deferred)
f7857000 f7897000 storport (deferred)
f7897000 f789a000 BOOTVID (deferred)
f795a000 f7986980 NDIS (deferred)
f7987000 f7988b80 kdcom (deferred)
f7989000 f798a100 WMILIB (deferred)
f798b000 f798c700 dmload (deferred)
f7a35000 f7a4eb80 Mup (deferred)
f7a4f000 f7a4fd00 pciide (deferred)
f7b52000 f7bde600 Ntfs (deferred)
0: kd> !pcitree
PciFdoExtensionListHead forward pointer is NULL, list is empty
0: kd> pci
^ pass count must be preceeded by whitespace error in 'pci'
0: kd> !pci
PCI Segment 0 Bus 0
00:0 1022:1450.00 Cmd[0000:......] Sts[0000:.....] AMD Host Bridge SubID:1849:1450
00:2 1022:1451.00 Cmd[0004:..b...] Sts[0010:c....] AMD Class:8:6:0 SubID:1022:1451
01:0 1022:1452.00 Cmd[0000:......] Sts[0000:.....] AMD Host Bridge
01:3 1022:1453.00 Cmd[0007:imb...] Sts[0010:c....] AMD PCI-PCI Bridge 0->0x3-0xa
02:0 1022:1452.00 Cmd[0000:......] Sts[0000:.....] AMD Host Bridge
03:0 1022:1452.00 Cmd[0000:......] Sts[0000:.....] AMD Host Bridge
03:1 1022:1453.00 Cmd[0007:imb...] Sts[0010:c....] AMD PCI-PCI Bridge 0->0xb-0xb
04:0 1022:1452.00 Cmd[0000:......] Sts[0000:.....] AMD Host Bridge
07:0 1022:1452.00 Cmd[0000:......] Sts[0000:.....] AMD Host Bridge
07:1 1022:1454.00 Cmd[0007:imb...] Sts[0010:c....] AMD PCI-PCI Bridge 0->0x11-0x11
08:0 1022:1452.00 Cmd[0000:......] Sts[0000:.....] AMD Host Bridge
08:1 1022:1454.00 Cmd[0007:imb...] Sts[0010:c....] AMD PCI-PCI Bridge 0->0x12-0x12
14:0 1022:790b.59 Cmd[0403:im....] Sts[0220:.6...] AMD SMBus Controller SubID:1849:ffff
14:3 1022:790e.51 Cmd[000f:imb...] Sts[0220:.6...] AMD ISA Bridge SubID:1849:ffff
18:0 1022:1460.00 Cmd[0000:......] Sts[0000:.....] AMD Host Bridge
18:1 1022:1461.00 Cmd[0000:......] Sts[0000:.....] AMD Host Bridge
18:2 1022:1462.00 Cmd[0000:......] Sts[0000:.....] AMD Host Bridge
18:3 1022:1463.00 Cmd[0000:......] Sts[0000:.....] AMD Host Bridge
18:4 1022:1464.00 Cmd[0000:......] Sts[0000:.....] AMD Host Bridge
18:5 1022:1465.00 Cmd[0000:......] Sts[0000:.....] AMD Host Bridge
18:6 1022:1466.00 Cmd[0000:......] Sts[0000:.....] AMD Host Bridge
18:7 1022:1467.00 Cmd[0000:......] Sts[0000:.....] AMD Host Bridge
0: kd> !devnode 0 1
Dumping IopRootDeviceNode (= 0x8ac8ecc8)
DevNode 0x8ac8ecc8 for PDO 0x8ac8ee10
InstancePath is "HTREE\ROOT\0"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8ac8e898 for PDO 0x8ac8e9f8
InstancePath is "Root\ACPI_HAL\0000"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8ace2358 for PDO 0x8ace3830
InstancePath is "ACPI_HAL\PNP0C08\0"
ServiceName is "ACPI"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8ac881c8 for PDO 0x8acc9b48
InstancePath is "ACPI\PNP0A08\0"
ServiceName is "pci"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8ac60d00 for PDO 0x8ace87b8
InstancePath is "ACPI\PNP0C0C\aa"
State = DeviceNodeDriversAdded (0x303)
Previous State = DeviceNodeInitialized (0x302)
DevNode 0x8ac60bd0 for PDO 0x8accf810
InstancePath is "ACPI\AuthenticAMD_-_x86_Family_23_Model_1\_0"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0x8ac60aa0 for PDO 0x8acd31e8
InstancePath is "ACPI\AuthenticAMD_-_x86_Family_23_Model_1\_1"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0x8ac4ecc0 for PDO 0x8acca190
InstancePath is "ACPI\AuthenticAMD_-_x86_Family_23_Model_1\_2"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0x8ac4eb90 for PDO 0x8ac760f8
InstancePath is "ACPI\AuthenticAMD_-_x86_Family_23_Model_1\_3"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0x8ac4ea60 for PDO 0x8ac89130
InstancePath is "ACPI\AuthenticAMD_-_x86_Family_23_Model_1\_4"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0x8ac4e930 for PDO 0x8accfcc8
InstancePath is "ACPI\AuthenticAMD_-_x86_Family_23_Model_1\_5"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0x8ac5fea8 for PDO 0x8acc9620
InstancePath is "ACPI\AuthenticAMD_-_x86_Family_23_Model_1\_6"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0x8ac5fd78 for PDO 0x8acd1c80
InstancePath is "ACPI\AuthenticAMD_-_x86_Family_23_Model_1\_7"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0x8ac5fc48 for PDO 0x8ac39db0
InstancePath is "ACPI\AuthenticAMD_-_x86_Family_23_Model_1\_8"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0x8ac5fb18 for PDO 0x8ac391d8
InstancePath is "ACPI\AuthenticAMD_-_x86_Family_23_Model_1\_9"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0x8ac4ae48 for PDO 0x8ac397d0
InstancePath is "ACPI\AuthenticAMD_-_x86_Family_23_Model_1\10"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0x8ac4ad18 for PDO 0x8ac396b0
InstancePath is "ACPI\AuthenticAMD_-_x86_Family_23_Model_1\11"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0x8ac4abe8 for PDO 0x8ac5f940
InstancePath is "ACPI\AuthenticAMD_-_x86_Family_23_Model_1\12"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0x8ac4aab8 for PDO 0x8ac5f820
InstancePath is "ACPI\AuthenticAMD_-_x86_Family_23_Model_1\13"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0x8ac4a988 for PDO 0x8acd6038
InstancePath is "ACPI\AuthenticAMD_-_x86_Family_23_Model_1\14"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0x8accf008 for PDO 0x8acd61d0
InstancePath is "ACPI\AuthenticAMD_-_x86_Family_23_Model_1\15"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0x8accf600 for PDO 0x8ace1038
InstancePath is "ACPI\AMDI0030\0"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0x8accf4d0 for PDO 0x8ace11d0
State = DeviceNodeUninitialized (0x301)
Previous State = Unknown State (0x0)
DevNode 0x8accf3a0 for PDO 0x8ace2038
State = DeviceNodeUninitialized (0x301)
Previous State = Unknown State (0x0)
DevNode 0x8accf270 for PDO 0x8ace2200
State = DeviceNodeUninitialized (0x301)
Previous State = Unknown State (0x0)
DevNode 0x8accf140 for PDO 0x8ac88038
State = DeviceNodeUninitialized (0x301)
Previous State = Unknown State (0x0)
DevNode 0x8ace7db0 for PDO 0x8ace7f10
InstancePath is "Root\dmio\0000"
ServiceName is "dmio"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8ace7b58 for PDO 0x8ace7cb8
InstancePath is "Root\ftdisk\0000"
ServiceName is "ftdisk"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8ace7900 for PDO 0x8ace7a60
InstancePath is "Root\LEGACY_ACPI\0000"
ServiceName is "ACPI"
State = DeviceNodeRemoved (0x312)
Previous State = DeviceNodeStarted (0x308)
Problem = CM_PROB_DEVICE_NOT_THERE
DevNode 0x8ace76a8 for PDO 0x8ace7808
InstancePath is "Root\LEGACY_AFD\0000"
ServiceName is "AFD"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8ace7418 for PDO 0x8ace7578
InstancePath is "Root\LEGACY_AMPA\0000"
ServiceName is "ampa"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8ace71c0 for PDO 0x8ace7320
InstancePath is "Root\LEGACY_ATAPI\0000"
ServiceName is "atapi"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8ac8ded8 for PDO 0x8ac8d038
InstancePath is "Root\LEGACY_BEEP\0000"
ServiceName is "Beep"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8ac8dc38 for PDO 0x8ac8dd98
InstancePath is "Root\LEGACY_DMBOOT\0000"
ServiceName is "dmboot"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8ac8d9e0 for PDO 0x8ac8db40
InstancePath is "Root\LEGACY_DMLOAD\0000"
ServiceName is "dmload"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8ac8d788 for PDO 0x8ac8d8e8
InstancePath is "Root\LEGACY_FIPS\0000"
ServiceName is "Fips"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8ac8d4e0 for PDO 0x8ac8d640
InstancePath is "Root\LEGACY_GPC\0000"
ServiceName is "Gpc"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8ac8d288 for PDO 0x8ac8d3e8
InstancePath is "Root\LEGACY_HTTP\0000"
ServiceName is "HTTP"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8ace6008 for PDO 0x8ac8d190
InstancePath is "Root\LEGACY_IPNAT\0000"
ServiceName is "IpNat"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8ace6db0 for PDO 0x8ace6f10
InstancePath is "Root\LEGACY_IPSEC\0000"
ServiceName is "IPSec"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8ace6b58 for PDO 0x8ace6cb8
InstancePath is "Root\LEGACY_KSECDD\0000"
ServiceName is "ksecdd"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8ace6900 for PDO 0x8ace6a60
InstancePath is "Root\LEGACY_MNMDD\0000"
ServiceName is "mnmdd"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8ace66a8 for PDO 0x8ace6808
InstancePath is "Root\LEGACY_MOUNTMGR\0000"
ServiceName is "mountmgr"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8ace6450 for PDO 0x8ace65b0
InstancePath is "Root\LEGACY_NDIS\0000"
ServiceName is "NDIS"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8ace61f8 for PDO 0x8ace6358
InstancePath is "Root\LEGACY_NDISTAPI\0000"
ServiceName is "NdisTapi"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8ac8ced8 for PDO 0x8ac8c038
InstancePath is "Root\LEGACY_NDISUIO\0000"
ServiceName is "Ndisuio"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8ac8cc80 for PDO 0x8ac8cde0
InstancePath is "Root\LEGACY_NDPROXY\0000"
ServiceName is "NDProxy"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8ac8ca28 for PDO 0x8ac8cb88
InstancePath is "Root\LEGACY_NETBT\0000"
ServiceName is "NetBT"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8ac8c7d0 for PDO 0x8ac8c930
InstancePath is "Root\LEGACY_NULL\0000"
ServiceName is "Null"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8ac8c578 for PDO 0x8ac8c6d8
InstancePath is "Root\LEGACY_NVME\0000"
ServiceName is "nvme"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8ac8c320 for PDO 0x8ac8c480
InstancePath is "Root\LEGACY_PARTMGR\0000"
ServiceName is "PartMgr"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8ace5008 for PDO 0x8ac8c228
InstancePath is "Root\LEGACY_PARVDM\0000"
ServiceName is "ParVdm"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8ace5db0 for PDO 0x8ace5f10
InstancePath is "Root\LEGACY_PCIIDE\0000"
ServiceName is "PCIIde"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8ace5b58 for PDO 0x8ace5cb8
InstancePath is "Root\LEGACY_RASACD\0000"
ServiceName is "RasAcd"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8ace5900 for PDO 0x8ace5a60
InstancePath is "Root\LEGACY_RDPCDD\0000"
ServiceName is "RDPCDD"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8ace56a8 for PDO 0x8ace5808
InstancePath is "Root\LEGACY_TCPIP\0000"
ServiceName is "Tcpip"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8ace5450 for PDO 0x8ace55b0
InstancePath is "Root\LEGACY_VGASAVE\0000"
ServiceName is "VgaSave"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8ace51f8 for PDO 0x8ace5358
InstancePath is "Root\LEGACY_VOLSNAP\0000"
ServiceName is "VolSnap"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8ac8bed8 for PDO 0x8ac8b038
InstancePath is "Root\LEGACY_WANARP\0000"
ServiceName is "Wanarp"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8ac8bc80 for PDO 0x8ac8bde0
InstancePath is "Root\MEDIA\MS_MMACM"
ServiceName is "audstub"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8ac8ba28 for PDO 0x8ac8bb88
InstancePath is "Root\MEDIA\MS_MMDRV"
ServiceName is "audstub"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8ac8b7d0 for PDO 0x8ac8b930
InstancePath is "Root\MEDIA\MS_MMMCI"
ServiceName is "audstub"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8ac8b578 for PDO 0x8ac8b6d8
InstancePath is "Root\MEDIA\MS_MMVCD"
ServiceName is "audstub"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8ac8b320 for PDO 0x8ac8b480
InstancePath is "Root\MEDIA\MS_MMVID"
ServiceName is "audstub"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8ace4008 for PDO 0x8ac8b228
InstancePath is "Root\MS_L2TPMINIPORT\0000"
ServiceName is "Rasl2tp"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8ace4db0 for PDO 0x8ace4f10
InstancePath is "Root\MS_NDISWANIP\0000"
ServiceName is "NdisWan"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8ace4b58 for PDO 0x8ace4cb8
InstancePath is "Root\MS_PPPOEMINIPORT\0000"
ServiceName is "RasPppoe"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8ace4900 for PDO 0x8ace4a60
InstancePath is "Root\MS_PPTPMINIPORT\0000"
ServiceName is "PptpMiniport"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8ace46a8 for PDO 0x8ace4808
InstancePath is "Root\MS_PSCHEDMP\0000"
ServiceName is "PSched"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8ace4450 for PDO 0x8ace45b0
InstancePath is "Root\MS_PSCHEDMP\0001"
ServiceName is "PSched"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8ace41f8 for PDO 0x8ace4358
InstancePath is "Root\MS_PSCHEDMP\0002"
ServiceName is "PSched"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8ac8aed8 for PDO 0x8ac8a038
InstancePath is "Root\MS_PTIMINIPORT\0000"
ServiceName is "Raspti"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8ac8ac80 for PDO 0x8ac8ade0
InstancePath is "Root\PCI_HAL\0000"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8ac8aa28 for PDO 0x8ac8ab88
InstancePath is "Root\RDPDR\0000"
ServiceName is "rdpdr"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8ac8a7d0 for PDO 0x8ac8a930
InstancePath is "Root\RDP_KBD\0000"
ServiceName is "TermDD"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8ac8a578 for PDO 0x8ac8a6d8
InstancePath is "Root\RDP_MOU\0000"
ServiceName is "TermDD"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8ac8a320 for PDO 0x8ac8a480
InstancePath is "Root\SYSTEM\0000"
ServiceName is "swenum"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8ace3008 for PDO 0x8ac8a228
InstancePath is "Root\SYSTEM\0001"
ServiceName is "update"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8ace3db0 for PDO 0x8ace3f10
InstancePath is "Root\SYSTEM\0002"
ServiceName is "mssmbios"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
0: kd> !amli ?

Help - ? [<Cmd>]
Clear Breakpoints - bc <bp list> | *
Disable Breakpoints - bd <bp list> | *
Enable Breakpoints - be <bp list> | *
List Breakpoints - bl
Set Breakpoints - bp <MethodName> | <CodeAddr> ...
Clear Event Log - cl
Request entering debugger- debugger
Dump Heap - dh [<Addr>]
Dump Event Log - dl
Dump Name Space Object - dns [[/s] [<NameStr> | <Addr>]]
Dump Data Object - do <Addr>
Dump Stack - ds [/v] [<Addr>]
Find NameSpace Object - find <NameSeg>
List All Contexts - lc
Display Nearest Method - ln [<MethodName> | <CodeAddr>]
Display Context Info. - r <Context>
Set Debugger Options - set [traceon | traceoff] [nesttraceon | nesttraceoff] [spewon | spewoff]
[lbrkon | lbrkoff] [errbrkon | errbrkoff] [verboseon | verboseoff]
[logon | logoff] [logmuton | logmutoff]
Unassemble AML code - u [<MethodName> | <CodeAddr>]

0: kd> !amli dl
0:00:03.437 [8acc5020] AsyncEvalObject IRQL= 0
\_SB.PCI0._UID
QTh=0 QCt=0 QFg=00000000

0:00:03.437 [8acc5020] RestartContext Context=8aaf3000
\_SB.PCI0._UID
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.437 [8acc5020] InsertReadyQueue Context=8aaf3000
\_SB.PCI0._UID
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.437 [8acc5020] EvaluateContext Context=8aaf3000
\_SB.PCI0._UID
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.437 [8acc5020] RunContext Context=8aaf3000
\_SB.PCI0._UID
QTh=8acc5020 QCt=8aaf3000 QFg=00000000

0:00:03.437 [8acc5020] FinishedContext Context=8aaf3000 rc=0
QTh=0 QCt=0 QFg=00000000

0:00:03.437 [8acc5020] SyncEvalObject IRQL= 0
\_SB.PCI0._HID
QTh=0 QCt=0 QFg=00000000

0:00:03.437 [8acc5020] AsyncEvalObject IRQL= 0
\_SB.PCI0._HID
QTh=0 QCt=0 QFg=00000000

0:00:03.437 [8acc5020] RestartContext Context=8aaf3000
\_SB.PCI0._HID
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.437 [8acc5020] InsertReadyQueue Context=8aaf3000
\_SB.PCI0._HID
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.437 [8acc5020] EvaluateContext Context=8aaf3000
\_SB.PCI0._HID
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.437 [8acc5020] RunContext Context=8aaf3000
\_SB.PCI0._HID
QTh=8acc5020 QCt=8aaf3000 QFg=00000000

0:00:03.437 [8acc5020] FinishedContext Context=8aaf3000 rc=0
QTh=0 QCt=0 QFg=00000000

0:00:03.437 [8acc5020] SyncEvalObject IRQL= 0
\_SB.PCI0._CID
QTh=0 QCt=0 QFg=00000000

0:00:03.437 [8acc5020] AsyncEvalObject IRQL= 0
\_SB.PCI0._CID
QTh=0 QCt=0 QFg=00000000

0:00:03.437 [8acc5020] RestartContext Context=8aaf3000
\_SB.PCI0._CID
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.437 [8acc5020] InsertReadyQueue Context=8aaf3000
\_SB.PCI0._CID
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.437 [8acc5020] EvaluateContext Context=8aaf3000
\_SB.PCI0._CID
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.437 [8acc5020] RunContext Context=8aaf3000
\_SB.PCI0._CID
QTh=8acc5020 QCt=8aaf3000 QFg=00000000

0:00:03.437 [8acc5020] FinishedContext Context=8aaf3000 rc=0
QTh=0 QCt=0 QFg=00000000

0:00:03.437 [8acc5020] SyncEvalObject IRQL= 0
\_SB.PCI0._CRS
QTh=0 QCt=0 QFg=00000000

0:00:03.437 [8acc5020] AsyncEvalObject IRQL= 0
\_SB.PCI0._CRS
QTh=0 QCt=0 QFg=00000000

0:00:03.437 [8acc5020] RestartContext Context=8aaf3000
\_SB.PCI0._CRS
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.437 [8acc5020] InsertReadyQueue Context=8aaf3000
\_SB.PCI0._CRS
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.437 [8acc5020] EvaluateContext Context=8aaf3000
\_SB.PCI0._CRS
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.437 [8acc5020] RunContext Context=8aaf3000
\_SB.PCI0._CRS
QTh=8acc5020 QCt=8aaf3000 QFg=00000000

0:00:03.437 [8acc5020] FinishedContext Context=8aaf3000 rc=0
QTh=0 QCt=0 QFg=00000000

0:00:03.453 [8acc5020] SyncEvalObject IRQL= 0
\_SB.PCI0._STA
QTh=0 QCt=0 QFg=00000000

0:00:03.453 [8acc5020] AsyncEvalObject IRQL= 0
\_SB.PCI0._STA
QTh=0 QCt=0 QFg=00000000

0:00:03.453 [8acc5020] RestartContext Context=8aaf3000
\_SB.PCI0._STA
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.453 [8acc5020] InsertReadyQueue Context=8aaf3000
\_SB.PCI0._STA
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.453 [8acc5020] EvaluateContext Context=8aaf3000
\_SB.PCI0._STA
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.453 [8acc5020] RunContext Context=8aaf3000
\_SB.PCI0._STA
QTh=8acc5020 QCt=8aaf3000 QFg=00000000

0:00:03.453 [8acc5020] FinishedContext Context=8aaf3000 rc=0
QTh=0 QCt=0 QFg=00000000

0:00:03.453 [8acc5020] SyncEvalObject IRQL= 0
\_SB.PCI0._CRS
QTh=0 QCt=0 QFg=00000000

0:00:03.453 [8acc5020] AsyncEvalObject IRQL= 0
\_SB.PCI0._CRS
QTh=0 QCt=0 QFg=00000000

0:00:03.453 [8acc5020] RestartContext Context=8aaf3000
\_SB.PCI0._CRS
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.453 [8acc5020] InsertReadyQueue Context=8aaf3000
\_SB.PCI0._CRS
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.453 [8acc5020] EvaluateContext Context=8aaf3000
\_SB.PCI0._CRS
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.453 [8acc5020] RunContext Context=8aaf3000
\_SB.PCI0._CRS
QTh=8acc5020 QCt=8aaf3000 QFg=00000000

0:00:03.453 [8acc5020] FinishedContext Context=8aaf3000 rc=0
QTh=0 QCt=0 QFg=00000000

0:00:03.453 [8acc5020] AsyncEvalObject IRQL= 0
\_SB.PCI0._HID
QTh=0 QCt=0 QFg=00000000

0:00:03.453 [8acc5020] RestartContext Context=8aaf3000
\_SB.PCI0._HID
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.453 [8acc5020] InsertReadyQueue Context=8aaf3000
\_SB.PCI0._HID
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.453 [8acc5020] EvaluateContext Context=8aaf3000
\_SB.PCI0._HID
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.453 [8acc5020] RunContext Context=8aaf3000
\_SB.PCI0._HID
QTh=8acc5020 QCt=8aaf3000 QFg=00000000

0:00:03.453 [8acc5020] FinishedContext Context=8aaf3000 rc=0
QTh=0 QCt=0 QFg=00000000

0:00:03.453 [8acc5020] AsyncEvalObject IRQL= 0
\_SB.PCI0._CID
QTh=0 QCt=0 QFg=00000000

0:00:03.453 [8acc5020] RestartContext Context=8aaf3000
\_SB.PCI0._CID
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.453 [8acc5020] InsertReadyQueue Context=8aaf3000
\_SB.PCI0._CID
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.453 [8acc5020] EvaluateContext Context=8aaf3000
\_SB.PCI0._CID
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.453 [8acc5020] RunContext Context=8aaf3000
\_SB.PCI0._CID
QTh=8acc5020 QCt=8aaf3000 QFg=00000000

0:00:03.453 [8acc5020] FinishedContext Context=8aaf3000 rc=0
QTh=0 QCt=0 QFg=00000000

0:00:03.453 [8acc5020] SyncEvalObject IRQL= 0
\_SB.PCI0._CRS
QTh=0 QCt=0 QFg=00000000

0:00:03.453 [8acc5020] AsyncEvalObject IRQL= 0
\_SB.PCI0._CRS
QTh=0 QCt=0 QFg=00000000

0:00:03.453 [8acc5020] RestartContext Context=8aaf3000
\_SB.PCI0._CRS
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.453 [8acc5020] InsertReadyQueue Context=8aaf3000
\_SB.PCI0._CRS
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.453 [8acc5020] EvaluateContext Context=8aaf3000
\_SB.PCI0._CRS
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.453 [8acc5020] RunContext Context=8aaf3000
\_SB.PCI0._CRS
QTh=8acc5020 QCt=8aaf3000 QFg=00000000

0:00:03.453 [8acc5020] FinishedContext Context=8aaf3000 rc=0
QTh=0 QCt=0 QFg=00000000

0:00:03.453 [8acc5020] AsyncEvalObject IRQL= 0
\_SB.PCI0._HID
QTh=0 QCt=0 QFg=00000000

0:00:03.453 [8acc5020] RestartContext Context=8aaf3000
\_SB.PCI0._HID
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.453 [8acc5020] InsertReadyQueue Context=8aaf3000
\_SB.PCI0._HID
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.453 [8acc5020] EvaluateContext Context=8aaf3000
\_SB.PCI0._HID
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.453 [8acc5020] RunContext Context=8aaf3000
\_SB.PCI0._HID
QTh=8acc5020 QCt=8aaf3000 QFg=00000000

0:00:03.453 [8acc5020] FinishedContext Context=8aaf3000 rc=0
QTh=0 QCt=0 QFg=00000000

0:00:03.453 [8acc5020] AsyncEvalObject IRQL= 0
\_SB.PCI0._CID
QTh=0 QCt=0 QFg=00000000

0:00:03.453 [8acc5020] RestartContext Context=8aaf3000
\_SB.PCI0._CID
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.453 [8acc5020] InsertReadyQueue Context=8aaf3000
\_SB.PCI0._CID
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.453 [8acc5020] EvaluateContext Context=8aaf3000
\_SB.PCI0._CID
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.453 [8acc5020] RunContext Context=8aaf3000
\_SB.PCI0._CID
QTh=8acc5020 QCt=8aaf3000 QFg=00000000

0:00:03.453 [8acc5020] FinishedContext Context=8aaf3000 rc=0
QTh=0 QCt=0 QFg=00000000

0:00:03.453 [8acc5020] SyncEvalObject IRQL= 0
\_SB.PCI0._CRS
QTh=0 QCt=0 QFg=00000000

0:00:03.453 [8acc5020] AsyncEvalObject IRQL= 0
\_SB.PCI0._CRS
QTh=0 QCt=0 QFg=00000000

0:00:03.453 [8acc5020] RestartContext Context=8aaf3000
\_SB.PCI0._CRS
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.453 [8acc5020] InsertReadyQueue Context=8aaf3000
\_SB.PCI0._CRS
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.453 [8acc5020] EvaluateContext Context=8aaf3000
\_SB.PCI0._CRS
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.453 [8acc5020] RunContext Context=8aaf3000
\_SB.PCI0._CRS
QTh=8acc5020 QCt=8aaf3000 QFg=00000000

0:00:03.453 [8acc5020] FinishedContext Context=8aaf3000 rc=0
QTh=0 QCt=0 QFg=00000000

0:00:03.453 [8acc5020] SyncEvalObject IRQL= 0
\_SB.PWRB._HID
QTh=0 QCt=0 QFg=00000000

0:00:03.453 [8acc5020] AsyncEvalObject IRQL= 0
\_SB.PWRB._HID
QTh=0 QCt=0 QFg=00000000

0:00:03.453 [8acc5020] RestartContext Context=8aaf3000
\_SB.PWRB._HID
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.453 [8acc5020] InsertReadyQueue Context=8aaf3000
\_SB.PWRB._HID
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.453 [8acc5020] EvaluateContext Context=8aaf3000
\_SB.PWRB._HID
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.453 [8acc5020] RunContext Context=8aaf3000
\_SB.PWRB._HID
QTh=8acc5020 QCt=8aaf3000 QFg=00000000

0:00:03.453 [8acc5020] FinishedContext Context=8aaf3000 rc=0
QTh=0 QCt=0 QFg=00000000

0:00:03.453 [8acc5020] SyncEvalObject IRQL= 0
\_SB.PWRB._UID
QTh=0 QCt=0 QFg=00000000

0:00:03.453 [8acc5020] AsyncEvalObject IRQL= 0
\_SB.PWRB._UID
QTh=0 QCt=0 QFg=00000000

0:00:03.453 [8acc5020] RestartContext Context=8aaf3000
\_SB.PWRB._UID
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.453 [8acc5020] InsertReadyQueue Context=8aaf3000
\_SB.PWRB._UID
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.453 [8acc5020] EvaluateContext Context=8aaf3000
\_SB.PWRB._UID
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.453 [8acc5020] RunContext Context=8aaf3000
\_SB.PWRB._UID
QTh=8acc5020 QCt=8aaf3000 QFg=00000000

0:00:03.453 [8acc5020] FinishedContext Context=8aaf3000 rc=0
QTh=0 QCt=0 QFg=00000000

0:00:03.453 [8acc5020] SyncEvalObject IRQL= 0
\_SB.PWRB._HID
QTh=0 QCt=0 QFg=00000000

0:00:03.453 [8acc5020] AsyncEvalObject IRQL= 0
\_SB.PWRB._HID
QTh=0 QCt=0 QFg=00000000

0:00:03.453 [8acc5020] RestartContext Context=8aaf3000
\_SB.PWRB._HID
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.453 [8acc5020] InsertReadyQueue Context=8aaf3000
\_SB.PWRB._HID
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.453 [8acc5020] EvaluateContext Context=8aaf3000
\_SB.PWRB._HID
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.453 [8acc5020] RunContext Context=8aaf3000
\_SB.PWRB._HID
QTh=8acc5020 QCt=8aaf3000 QFg=00000000

0:00:03.453 [8acc5020] FinishedContext Context=8aaf3000 rc=0
QTh=0 QCt=0 QFg=00000000

0:00:03.546 [8acc5020] SyncEvalObject IRQL= 0
\_SB.GPIO._HID
QTh=0 QCt=0 QFg=00000000

0:00:03.546 [8acc5020] AsyncEvalObject IRQL= 0
\_SB.GPIO._HID
QTh=0 QCt=0 QFg=00000000

0:00:03.546 [8acc5020] RestartContext Context=8aaf3000
\_SB.GPIO._HID
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.546 [8acc5020] InsertReadyQueue Context=8aaf3000
\_SB.GPIO._HID
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.546 [8acc5020] EvaluateContext Context=8aaf3000
\_SB.GPIO._HID
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.546 [8acc5020] RunContext Context=8aaf3000
\_SB.GPIO._HID
QTh=8acc5020 QCt=8aaf3000 QFg=00000000

0:00:03.546 [8acc5020] FinishedContext Context=8aaf3000 rc=0
QTh=0 QCt=0 QFg=00000000

0:00:03.546 [8acc5020] SyncEvalObject IRQL= 0
\_SB.GPIO._STA
QTh=0 QCt=0 QFg=00000000

0:00:03.546 [8acc5020] AsyncEvalObject IRQL= 0
\_SB.GPIO._STA
QTh=0 QCt=0 QFg=00000000

0:00:03.546 [8acc5020] RestartContext Context=8aaf3000
\_SB.GPIO._STA
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.546 [8acc5020] InsertReadyQueue Context=8aaf3000
\_SB.GPIO._STA
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.546 [8acc5020] EvaluateContext Context=8aaf3000
\_SB.GPIO._STA
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.546 [8acc5020] RunContext Context=8aaf3000
\_SB.GPIO._STA
QTh=8acc5020 QCt=8aaf3000 QFg=00000000

0:00:03.546 [8acc5020] FinishedContext Context=8aaf3000 rc=0
QTh=0 QCt=0 QFg=00000000

0:00:03.546 [8acc5020] SyncEvalObject IRQL= 0
\_SB.GPIO._UID
QTh=0 QCt=0 QFg=00000000

0:00:03.546 [8acc5020] AsyncEvalObject IRQL= 0
\_SB.GPIO._UID
QTh=0 QCt=0 QFg=00000000

0:00:03.546 [8acc5020] RestartContext Context=8aaf3000
\_SB.GPIO._UID
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.546 [8acc5020] InsertReadyQueue Context=8aaf3000
\_SB.GPIO._UID
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.546 [8acc5020] EvaluateContext Context=8aaf3000
\_SB.GPIO._UID
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.546 [8acc5020] RunContext Context=8aaf3000
\_SB.GPIO._UID
QTh=8acc5020 QCt=8aaf3000 QFg=00000000

0:00:03.546 [8acc5020] FinishedContext Context=8aaf3000 rc=0
QTh=0 QCt=0 QFg=00000000

0:00:03.546 [8acc5020] SyncEvalObject IRQL= 0
\_SB.GPIO._HID
QTh=0 QCt=0 QFg=00000000

0:00:03.546 [8acc5020] AsyncEvalObject IRQL= 0
\_SB.GPIO._HID
QTh=0 QCt=0 QFg=00000000

0:00:03.546 [8acc5020] RestartContext Context=8aaf3000
\_SB.GPIO._HID
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.546 [8acc5020] InsertReadyQueue Context=8aaf3000
\_SB.GPIO._HID
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.546 [8acc5020] EvaluateContext Context=8aaf3000
\_SB.GPIO._HID
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.546 [8acc5020] RunContext Context=8aaf3000
\_SB.GPIO._HID
QTh=8acc5020 QCt=8aaf3000 QFg=00000000

0:00:03.546 [8acc5020] FinishedContext Context=8aaf3000 rc=0
QTh=0 QCt=0 QFg=00000000

0:00:03.546 [8acc5020] SyncEvalObject IRQL= 0
\_SB.GPIO._CID
QTh=0 QCt=0 QFg=00000000

0:00:03.546 [8acc5020] AsyncEvalObject IRQL= 0
\_SB.GPIO._CID
QTh=0 QCt=0 QFg=00000000

0:00:03.546 [8acc5020] RestartContext Context=8aaf3000
\_SB.GPIO._CID
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.546 [8acc5020] InsertReadyQueue Context=8aaf3000
\_SB.GPIO._CID
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.546 [8acc5020] EvaluateContext Context=8aaf3000
\_SB.GPIO._CID
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.546 [8acc5020] RunContext Context=8aaf3000
\_SB.GPIO._CID
QTh=8acc5020 QCt=8aaf3000 QFg=00000000

0:00:03.546 [8acc5020] FinishedContext Context=8aaf3000 rc=0
QTh=0 QCt=0 QFg=00000000

0:00:03.546 [8acc5020] SyncEvalObject IRQL= 0
\_SB.GPIO._CRS
QTh=0 QCt=0 QFg=00000000

0:00:03.546 [8acc5020] AsyncEvalObject IRQL= 0
\_SB.GPIO._CRS
QTh=0 QCt=0 QFg=00000000

0:00:03.546 [8acc5020] RestartContext Context=8aaf3000
\_SB.GPIO._CRS
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.546 [8acc5020] InsertReadyQueue Context=8aaf3000
\_SB.GPIO._CRS
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.546 [8acc5020] EvaluateContext Context=8aaf3000
\_SB.GPIO._CRS
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.546 [8acc5020] RunContext Context=8aaf3000
\_SB.GPIO._CRS
QTh=8acc5020 QCt=8aaf3000 QFg=00000000

0:00:03.546 [8acc5020] FinishedContext Context=8aaf3000 rc=0
QTh=0 QCt=0 QFg=00000000

0:00:03.546 [8acc5020] SyncEvalObject IRQL= 0
\_SB.GPIO._STA
QTh=0 QCt=0 QFg=00000000

0:00:03.546 [8acc5020] AsyncEvalObject IRQL= 0
\_SB.GPIO._STA
QTh=0 QCt=0 QFg=00000000

0:00:03.546 [8acc5020] RestartContext Context=8aaf3000
\_SB.GPIO._STA
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.546 [8acc5020] InsertReadyQueue Context=8aaf3000
\_SB.GPIO._STA
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.546 [8acc5020] EvaluateContext Context=8aaf3000
\_SB.GPIO._STA
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.546 [8acc5020] RunContext Context=8aaf3000
\_SB.GPIO._STA
QTh=8acc5020 QCt=8aaf3000 QFg=00000000

0:00:03.546 [8acc5020] FinishedContext Context=8aaf3000 rc=0
QTh=0 QCt=0 QFg=00000000

0:00:03.546 [8acc5020] SyncEvalObject IRQL= 0
\_SB.GPIO._CRS
QTh=0 QCt=0 QFg=00000000

0:00:03.546 [8acc5020] AsyncEvalObject IRQL= 0
\_SB.GPIO._CRS
QTh=0 QCt=0 QFg=00000000

0:00:03.546 [8acc5020] RestartContext Context=8aaf3000
\_SB.GPIO._CRS
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.546 [8acc5020] InsertReadyQueue Context=8aaf3000
\_SB.GPIO._CRS
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.546 [8acc5020] EvaluateContext Context=8aaf3000
\_SB.GPIO._CRS
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.546 [8acc5020] RunContext Context=8aaf3000
\_SB.GPIO._CRS
QTh=8acc5020 QCt=8aaf3000 QFg=00000000

0:00:03.546 [8acc5020] FinishedContext Context=8aaf3000 rc=0
QTh=0 QCt=0 QFg=00000000

0:00:03.546 [8acc5020] AsyncEvalObject IRQL= 0
\_SB.GPIO._HID
QTh=0 QCt=0 QFg=00000000

0:00:03.546 [8acc5020] RestartContext Context=8aaf3000
\_SB.GPIO._HID
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.546 [8acc5020] InsertReadyQueue Context=8aaf3000
\_SB.GPIO._HID
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.546 [8acc5020] EvaluateContext Context=8aaf3000
\_SB.GPIO._HID
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.546 [8acc5020] RunContext Context=8aaf3000
\_SB.GPIO._HID
QTh=8acc5020 QCt=8aaf3000 QFg=00000000

0:00:03.546 [8acc5020] FinishedContext Context=8aaf3000 rc=0
QTh=0 QCt=0 QFg=00000000

0:00:03.546 [8acc5020] AsyncEvalObject IRQL= 0
\_SB.GPIO._CID
QTh=0 QCt=0 QFg=00000000

0:00:03.546 [8acc5020] RestartContext Context=8aaf3000
\_SB.GPIO._CID
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.546 [8acc5020] InsertReadyQueue Context=8aaf3000
\_SB.GPIO._CID
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.546 [8acc5020] EvaluateContext Context=8aaf3000
\_SB.GPIO._CID
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.546 [8acc5020] RunContext Context=8aaf3000
\_SB.GPIO._CID
QTh=8acc5020 QCt=8aaf3000 QFg=00000000

0:00:03.546 [8acc5020] FinishedContext Context=8aaf3000 rc=0
QTh=0 QCt=0 QFg=00000000

0:00:03.546 [8acc5020] AsyncEvalObject IRQL= 0
\_SB.GPIO._HID
QTh=0 QCt=0 QFg=00000000

0:00:03.546 [8acc5020] RestartContext Context=8aaf3000
\_SB.GPIO._HID
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.546 [8acc5020] InsertReadyQueue Context=8aaf3000
\_SB.GPIO._HID
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.546 [8acc5020] EvaluateContext Context=8aaf3000
\_SB.GPIO._HID
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.546 [8acc5020] RunContext Context=8aaf3000
\_SB.GPIO._HID
QTh=8acc5020 QCt=8aaf3000 QFg=00000000

0:00:03.546 [8acc5020] FinishedContext Context=8aaf3000 rc=0
QTh=0 QCt=0 QFg=00000000

0:00:03.546 [8acc5020] AsyncEvalObject IRQL= 0
\_SB.GPIO._CID
QTh=0 QCt=0 QFg=00000000

0:00:03.546 [8acc5020] RestartContext Context=8aaf3000
\_SB.GPIO._CID
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.546 [8acc5020] InsertReadyQueue Context=8aaf3000
\_SB.GPIO._CID
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.546 [8acc5020] EvaluateContext Context=8aaf3000
\_SB.GPIO._CID
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.546 [8acc5020] RunContext Context=8aaf3000
\_SB.GPIO._CID
QTh=8acc5020 QCt=8aaf3000 QFg=00000000

0:00:03.546 [8acc5020] FinishedContext Context=8aaf3000 rc=0
QTh=0 QCt=0 QFg=00000000

0:00:03.546 [8acc5020] AsyncEvalObject IRQL= 0
\_SB.GPIO._HID
QTh=0 QCt=0 QFg=00000000

0:00:03.546 [8acc5020] RestartContext Context=8aaf3000
\_SB.GPIO._HID
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.546 [8acc5020] InsertReadyQueue Context=8aaf3000
\_SB.GPIO._HID
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.546 [8acc5020] EvaluateContext Context=8aaf3000
\_SB.GPIO._HID
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.546 [8acc5020] RunContext Context=8aaf3000
\_SB.GPIO._HID
QTh=8acc5020 QCt=8aaf3000 QFg=00000000

0:00:03.546 [8acc5020] FinishedContext Context=8aaf3000 rc=0
QTh=0 QCt=0 QFg=00000000

0:00:03.546 [8acc5020] AsyncEvalObject IRQL= 0
\_SB.GPIO._CID
QTh=0 QCt=0 QFg=00000000

0:00:03.546 [8acc5020] RestartContext Context=8aaf3000
\_SB.GPIO._CID
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.546 [8acc5020] InsertReadyQueue Context=8aaf3000
\_SB.GPIO._CID
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.546 [8acc5020] EvaluateContext Context=8aaf3000
\_SB.GPIO._CID
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.546 [8acc5020] RunContext Context=8aaf3000
\_SB.GPIO._CID
QTh=8acc5020 QCt=8aaf3000 QFg=00000000

0:00:03.546 [8acc5020] FinishedContext Context=8aaf3000 rc=0
QTh=0 QCt=0 QFg=00000000

0:00:03.546 [8acc5020] AsyncEvalObject IRQL= 0
\_SB.GPIO._HID
QTh=0 QCt=0 QFg=00000000

0:00:03.546 [8acc5020] RestartContext Context=8aaf3000
\_SB.GPIO._HID
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.546 [8acc5020] InsertReadyQueue Context=8aaf3000
\_SB.GPIO._HID
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.546 [8acc5020] EvaluateContext Context=8aaf3000
\_SB.GPIO._HID
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.546 [8acc5020] RunContext Context=8aaf3000
\_SB.GPIO._HID
QTh=8acc5020 QCt=8aaf3000 QFg=00000000

0:00:03.546 [8acc5020] FinishedContext Context=8aaf3000 rc=0
QTh=0 QCt=0 QFg=00000000

0:00:03.546 [8acc5020] AsyncEvalObject IRQL= 0
\_SB.GPIO._CID
QTh=0 QCt=0 QFg=00000000

0:00:03.546 [8acc5020] RestartContext Context=8aaf3000
\_SB.GPIO._CID
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.546 [8acc5020] InsertReadyQueue Context=8aaf3000
\_SB.GPIO._CID
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.546 [8acc5020] EvaluateContext Context=8aaf3000
\_SB.GPIO._CID
QTh=0 QCt=0 QFg=00000000 pbOp=0

0:00:03.546 [8acc5020] RunContext Context=8aaf3000
\_SB.GPIO._CID
QTh=8acc5020 QCt=8aaf3000 QFg=00000000

0:00:03.546 [8acc5020] FinishedContext Context=8aaf3000 rc=0
QTh=0 QCt=0 QFg=00000000
  

 

Page 45

#661 infuscomus ⇗ @diderius6

grub2 method gets rid of 7E BSOD, but there are still A5 0x02 and 0x0D errors to fix
#662 diderius6 I found all this errors via Ida Pro in the Debug version of acpi.sys
*** Assertion failed: PciInterfacesInstantiated
*** Source File: d:\xpsp\base\busdrv\acpi\driver\nt\irqarb.c, line 3512

*** Assertion failed: pciInterface
*** Source File: d:\xpsp\base\busdrv\acpi\driver\nt\irqarb.c, line 3518

They can be easy hacked, but what is the real underlying problem?
Is there a PciInterface in Bios or not?
In the Bios from the Asrock B350 board there is a switch "Hpet table".
It has no effekt for XP, if I enable or disable this.

I read, that the Hpet timer cant be disabled at all on the Ryzen boards
Dietmar
#663 infuscomus ⇗ @diderius6

I'm guessing that part of the problem is the Root System Description Pointer (RSDP) in the Extended BIOS Data Area
since replacing that when using grub2 makes the 7E BSOD go away
#664 diderius6 ⇗ @infuscomus

Here is my registry extract from all the Acpi tables from Win7 32 bit
from my Asrock fatal1ty ab350 gaming k4.
Under Win7 32 bit it works perfect
Dietmar

PS: I make a new try to install Vista 32 bit. Everything looks good, no comment about incompatible Acpi,
but at reboot after first install I get BSOD 0x7B.
It has nothing to do with the boot device. Vista 32 bit also dont like to run on the Asrock board (it has forced Acpi)
but Vista 64 bit works there.



diderius6 has attached files to this post
#665 infuscomus ⇗ @diderius6

So we need to figure out whatever windows 7 acpi.sys driver is doing to make it work?
#666 diderius6 I still find with RW-everything in the Hpet table this entry, even it is disabled in Bios:

Bit[15]=LegacyReplacement IRQ Routing Capable

With cpu-z (tools timers) I can see,
that in XP and Win7 the Hpet timer is empty. There are 3 clocks shown and work: ACPI, QPC, RTC (same in Win7 and XP).
So, may be really Hpet is the one and only reason for BSOD 0x7E 0xc0000005
Dietmar
#667 diderius6 ⇗ @infuscomus ⇗ @Mov AX, 0xDEAD

May be, you or Mov AX, 0xDEAD can load this Acpi tables, which I send to registry of this Asrock board B350
and this is all to make Acpi work in XP
Dietmar

PS: I think, Win7 has learned to survive with Hpet.
#668 infuscomus ⇗ @diderius6

so how do we properly disable HPET?
#669 diderius6 ⇗ @infuscomus

I dont know. The authors from qemu use the switch
-no-hpet

   Disable HPET support.

-acpitable [sig=str][,rev=n][,oem_id=str][,oem_table_id=str][,oem_rev=n] [,asl_compiler_id=str][,asl_compiler_rev=n][,data=file1[:file2]...]

   Add ACPI table with specified header fields and context from specified files. For file=, take whole ACPI table from the specified files, including all ACPI headers (possible overridden by other options). For data=, only data portion of the table is used, all header information is specified in the command line. If a SLIC table is supplied to QEMU, then the SLICs oem_id and oem_table_id fields will override the same in the RSDT and the FADT (a.k.a. FACP), in order to ensure the field matches required by the Microsoft SLIC spec and the ACPI spec.


Dietmar
#670 diderius6 Is it possible to install Qemu on Win7 32 bit
and install in this Qemu an Acpi XP SP3
Dietmar
#671 Mov AX, 0xDEAD
Zitat
Enable TCO Timer
(Enable/Disable TCO timer. When disabled, it disables PCH ACPI timer, and stops TCO timer)


this hidden bios option by default is disabled and break pm_timer, thanks to MB vendors :(

#672 Mov AX, 0xDEAD
Zitat von ⇗ infuscomus im Beitrag ¶ #668
so how do we properly disable HPET?

by default win doesnt use hpet, force disabling:
- remove hpet acpi table
- set status of device in dsdt to Zero, (method _sta)
#673 diderius6 ⇗ @Mov AX, 0xDEAD

How can single Acpi tables like hpet acpi table
been removed?
There is no *.raw entry for them in Bios, even not the table itself is listed there, I think needs an algorithmus to
build the pur table (also for example FACP)
Dietmar
#674 Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #673

How can single Acpi tables like hpet acpi table
been removed?

rename header of table to HPEZ for example
but be ready to hang bios if it check for signature HPET
#675 infuscomus ⇗ @diderius6

I tested your DSDT export from windows 7 in XP - 7E BSOD

⇗ @Mov AX, 0xDEAD
Do you know to write ASL code? to at least make progress on solving A5 02 and 0D BSODs with grub2 method?

 

Page 46

#676 diderius6 ⇗ @infuscomus

I make next try:
With Uefi tool I found 6 places with ASCII HPET.
I will extract each of those 6 bodies, rename one by one there with Winhex HPET ->
HPEU HPEV HPEW HPEX HPEY HPEZ,
change body with Uefi tool
and flash whole Bios
Dietmar

⇗ https://ibb.co/vjmSYsc

EDIT: Funny, HPET table has now name HPEU in rw-everything,
but BSOD is still 0x7E 0xc0000005, grrr^^..
But the Hpet table is really killed. There stands now version 1 for the Hpeu table and
the possibility to change legacy Irqs is gone.
#677 diderius6 But still no timer is shown in device list of XP.
Irq 0 and Irq 8 are free.
And I see an UEFI table entry in rw-everything.
Has this been there before also(?)
Dietmar
#678 infuscomus ⇗ @diderius6

in rw-everything i see HPET table before

I empty HPET table and load empty with grub2 without DSDT - 7E BSOD

Because of results with grub2, I think the cause of 7E BSOD is in RSDP or EBDA area
#679 infuscomus ⇗ @Mov AX, 0xDEAD

are you any good at understanding ACPI code?
#680 diderius6 ⇗ @infuscomus
I also start to think, that the error is not in the DSDT table. But which table acpi.sys also reads???
This line from windbg
FAILURE_BUCKET_ID: 0x7E_ACPI!AcpiArbCrackPRT+113
means, that AcpiArbCrackPRT (I do not find any information about that pointer)
looks just at a wrong adress (10h reserved low memory, because edi is empty)
But at which adress this pointer has to look, the adress can be handcoded (edi+10h, change 10h against correct adress)
Dietmar
#681 infuscomus ⇗ @diderius6

can you find what the correct address is?
the address that windows 7 uses?
#682 diderius6 ⇗ @infuscomus
I just make a reread and I see,
that indeed only DSDT can make exact this crash:

"7. On QEMU, XP does indeed show the HPET alongside the TMR and RTC in
  its device tree, obviously without any IRQ resources under properties,
  since the only way it boots is if HPET._CRS doesn't include IRQNoFlags.

8. Windows 7, while it boots and runs fine when HPET._CRS contains
  IRQNoFlags, will show an unresolved IRQ conflict between the HPET and
  the RTC in the device tree. Commenting out IRQNoFlags from the RTC
  in QEMU does NOT solve that (still shows up as a conflict in the
  device tree).

9. I followed Igor's advice and ran a debug session, but unlike with
  ConcatenateResTemplate, XP didn't choke on AML byte code itself, but
  appears to die of a memory access violation:

    *** Fatal System Error: 0x0000007e (0x...)
    ...
    Probably caused by: ACPI.sys (ACPI!AcpiArbCrackPRT+113)

    80527bdc cc       int 3

  Poking around with various !amli debugger commands does not show
  anything AML-related as abnormal, so I think the problem is that
  either XP specifically expects the HPET._CRS buffer to be of a
  certain hardcoded size (which doesn't include any extra room for
  IRQNoFlags), or attempts to somehow process the values given via
  IRQNoFlags (0 and 8) in ways that cause it to then kill itself.

  Hard to tell without knowing more about XP internals (e.g., without
  XP kernel and/or acpi.sys source code).

At this point, conditionally inserting IRQNoFlags {0,8} only for OS X
sounds less of a hack and more like the right thing to do. I would be
comfortable using ConcatenateResTemplate since XP never gets a chance
to attempt to interpret that bytecode, which gets exercised only by
the _OSI("Darwin") branch. I tested this, and both XP and OSX seem
happy with it."

There is a problem with the timer. But when a single device (via DSDT) can make exact this crash,
may be another device, that XP not likes, can make this crash also.
So, my first idea after this is, to "delete via OSVR" in DSDT all devices with a given IRQNoFlags number
Dietmar
#683 infuscomus
Zitat von ⇗ diderius6 im Beitrag ¶ #682
Hard to tell without knowing more about XP internals (e.g., without
  XP kernel and/or acpi.sys source code).


There is the windows research kernel you can use on github
#684 diderius6 This would be a nice idea,
to set up a Qemu session,
give to Qemu the DSDT table from the Asrock fatal1ty ab350 gaming k4 board,
chose RYZEN processor
and install ACPI XP SP3.
Oh, so much hope, that the same BSOD 0x7E 0xc0000005 happens in Qemu,
than fun can start to find out which device in DSDT makes this BSDOD
Dietmar
#685 infuscomus ⇗ @diderius6

why QEMU over real hardware?
#686 diderius6 ⇗ @infuscomus
Because it is much easier with Qemu to change quick everything:)) and to see, that the error is NOT on your hardware.

Here comes my next try.
Please load the DSDT table for the Asrock B350 board
and see, if the BSOD 0x7E 0xc0000005 still happens.
I deleted everything about timer and Irqnoflags() with given numbers there.
May be, the APIC from the B350 chipset dies, when you give numbers for IRQ
Dietmar



diderius6 has attached files to this post
#687 infuscomus ⇗ @diderius6

I loaded you IRQnoflags DSDT into grub2 - BSOD A5 02



however, I get this same BSOD when loading unmodified smaller DSDT from BIOS 3.30 (in DsdtAsl)

with larger DSDT from BIOS 3.30 (in 7FD41B4B-42AE-47BA-BA77-87D3BD829E86)
I get BSOD A5 0D

#688 diderius6 ⇗ @infuscomus
Before you get with full DSDT and grub2 BSOD 0x7E 0xc0000005?
And now with my IRQnoflags DSDT into grub2 - BSOD A5 02
and you changed nothing other?
This would be a big step forward
Dietmar

EDIT: In this case my modified acpi.sys would solve this problem BSOD A5 02.
#689 infuscomus ⇗ @diderius6

with grub2 loading DSDT from BIOS 5.00 and 5.40 always 7E BSOD

I have not tried DSDT from BIOSs 4.30 to 4.90 or the Bridge BIOS 3.40

BIOS 3.30 is either A5 02 or A5 0D
#690 diderius6 ⇗ @infuscomus
I just flash this Bios with IRQnoflags DSDT to Asrock fatal1ty ab350 gaming k4 board,
same BSOD 0x7E 0xc0000005
as before
Dietmar

 

Page 47

#691 infuscomus ⇗ @diderius6

When you have the time, try AIO multiboot with grub2 method
#692 diderius6 ⇗ @infuscomus
The problem is, that I do not understand, what happens there.
With direct flash Bios to real hardware I understand чуть чуть :)).
Now all clocks and their Irqs are gone in Win7,
but cpu-z shows again all clocks working, only HPET not(!) listened.
Dietmar

EDIT: In XP SP3, also no clocks at all in device list, no IRQ 0 or 8 is used.
But the most crazy for me is, that the 3 timers, shown with cpu-z (tools timers)
shows them as working correct?!

ACPI               QPC               RTC
3.580 MHZ     1.193 MHZ       1.000KHZ

Dietmar

EDIT: This simple means, because DSDT table is not loaded for "Standard PC" that all the clocks
are elsewhere listed too.

EDIT2: XP (first, gold version) and XP SP1 show exact the same error: 0x7E 0xc0000005.
#693 infuscomus ⇗ @diderius6

can I try your modified acpi.sys for acpi A5 02 and 0D errors?
#694 diderius6 ⇗ @infuscomus

Here it is
Dietmar



diderius6 has attached files to this post
#695 infuscomus ⇗ @diderius6

Thanks,

unfortunately, no change - BSOD A5 02


Thanks anyway
#696 infuscomus ⇗ @diderius6 ⇗ @Mov AX, 0xDEAD

how do I interpret parameter2 to locate DSDT error? or am I going about it the wrong way?
#697 diderius6 ⇗ @infuscomus
I still think, the big problem is, that the Asrock B350 board
does not give a full APIC Irq list to XP. This may be an error in this chipset.
May be this is the real problem and not ACPI.

I just look, but a Qemu, special for Ryzen processors, is not out there until now.

With the wrong configured HPET timer (Irq 0 and Irq 8) you can get the same BSOD via windbg "acpi!acpiarbcrackprt+113"
as I have.
This means, that the DSDT table CAN be the reason.

Now I make a new try with deleted device "PIC" in DSDT (it gets Irq 2 there) and flash this Bios.
Not much hope, that this will change anything.
But not much devices are left in DSDT, which makes sense to be killed there.

After this, I do another way: I put the halapic.dll from Debug XP SP3 into XP and also ntkrnlmp.exe.
Then I look, what windbg tells EDIT: windbg tells nothing with halapic.dll, the BSOD happens so early (I think in halapic, just blinking cursor),
so that the debugger does not start
, brrr..
Dietmar
#698 infuscomus ⇗ @diderius6

I'm not sure, but this might help?

⇗ http://2012.zeronights.org/includes/docs/Oleksiuk.pdf

page 26
#699 diderius6 ⇗ @infuscomus
interesting:))

I have news: With deleted PIC device in DSDT,
XP does not want to start any longer in Acpi Multiprocessor mode, no(!) bluescreen, just reboot.
But as "Standard PC", everything works like before.
In my eyes this means: XP uses ALWAYS PIC mode
and this is forbidden for Acpi Multiprocessor
and because of this no valid pointer to PCI-Interface,
it just not exists
Dietmar

PS: That are interesting but bad news. Because it means, as long as XP can only enable PIC mode on the asrock board,
there will be no ACPI Multiprocessor for XP. The same happens to Vista 32 bit. Vista 64 and Win7 32bit generate their own
Irqs (as you can see on negative Irq numbers).

EDIT: This is wrong, what I wrote: I forget, that I have done \pcilock switch in boot.ini.
And only with this switch, compi boots new in Acpi Multiprocessor mode.
Without \pcilock in boot.ini, compi gives for Acpi Multiprocessor the same BSOD 0x7E 0xc0000005 as usual.
#700 infuscomus ⇗ @diderius6

XP apparently supports negative IRQs?

⇗ http://maxedtech.com/show-devices-by-irq-in-windows/

Devices that have positive (PCI) values are working in Line-based interrupts mode. Those that have negative (PCI) values are working in MSI (Message signaled interrupts) mode.
#701 infuscomus
Zitat von ⇗ diderius6 im Beitrag ¶ #699
EDIT: This is wrong, what I wrote: I forget, that I have done pcilock switch in boot.ini.
And only with this switch, compi boots new in Acpi Multiprocessor mode.


⇗ @diderius6

So you have multiprocessor and ACPI working on AB350? but not APIC?
#702 diderius6 ⇗ @infuscomus

I do not think, that something changed.
Still no correct Irqs for the pci devices
Dietmar


Microsoft (R) Windows Debugger Version 6.12.0002.633 X86
Copyright (c) Microsoft Corporation. All rights reserved.

Opened \\.\com1
Waiting to reconnect...
Break repeatedly, break Once, Ignore, terminate Process, or terminate Thread (boipt)? i
i

*** Assertion failed: pciInterface
*** Source File: d:\xpsp\base\busdrv\acpi\driver\nt\irqarb.c, line 3518

Break repeatedly, break Once, Ignore, terminate Process, or terminate Thread (boipt)? t
t

*** Assertion failed: Thread->Tcb.KernelApcDisable == 0
*** Source File: d:\xpsp\base\ntos\ps\psdelete.c, line 1028

Break repeatedly, break Once, Ignore, terminate Process, or terminate Thread (boipt)? t
t

*** Assertion failed: Thread->Tcb.KernelApcDisable == 0
*** Source File: d:\xpsp\base\ntos\ps\psdelete.c, line 1028

Break repeatedly, break Once, Ignore, terminate Process, or terminate Thread (boipt)? t
t

*** Assertion failed: Thread->Tcb.KernelApcDisable == 0
*** Source File: d:\xpsp\base\ntos\ps\psdelete.c, line 1028

Break repeatedly, break Once, Ignore, terminate Process, or terminate Thread (boipt)? t
t

*** Assertion failed: Thread->Tcb.KernelApcDisable == 0
*** Source File: d:\xpsp\base\ntos\ps\psdelete.c, line 1028

Break repeatedly, break Once, Ignore, terminate Process, or terminate Thread (boipt)? t
t

*** Fatal System Error: 0x0000007f
(0x00000008,0x80042000,0x00000000,0x00000000)

Connected to Windows XP 2600 x86 compatible target at (Sun Jun 9 20:36:31.250 2019 (UTC + 2:00)), ptr64 FALSE
Kernel Debugger connection established.
WARNING: Inaccessible path: 'C:\WinDDK\7600.16385.1\src\openfabricsall\nvme13\nvme\objchk_wnet_x86\i386'
Symbol search path is: C:\WinDDK\7600.16385.1\src\openfabricsall\nvme13\nvme\objchk_wnet_x86\i386;SRV*c:\symbols
*⇗ http://msdl.microsoft.com/download/symbols;C:\symbols
Executable search path is: C:\localsymbols
Windows XP Kernel Version 2600 (Service Pack 3) MP (16 procs) Checked x86 compatible
Product: WinNt, suite: TerminalServer SingleUserTS
Built by: 2600.xpsp.080413-2133
Machine Name:
Kernel base = 0x80a02000 PsLoadedModuleList = 0x80af5708
Debug session time: Sat Jun 8 20:36:11.015 2019 (UTC + 2:00)
System Uptime: 0 days 0:00:03.640
WARNING: Inaccessible path: 'C:\WinDDK\7600.16385.1\src\openfabricsall\nvme13\nvme\objchk_wnet_x86\i386'
Sun Jun 9 20:36:32.968 2019 (UTC + 2:00): Break instruction exception - code 80000003 (first chance)

A fatal system error has occurred.
Debugger entered on first try; Bugcheck callbacks have not been invoked.

A fatal system error has occurred.

Connected to Windows XP 2600 x86 compatible target at (Sun Jun 9 20:36:33.046 2019 (UTC + 2:00)), ptr64 FALSE
Loading Kernel Symbols
............................
Loading User Symbols
WARNING: Process directory table base DD5E0000 doesn't match CR3 00039000

*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

Use !analyze -v to get detailed debugging information.

BugCheck 7F, {8, 80042000, 0, 0}

*** No owner thread found for resource 80af15c0
*** No owner thread found for resource 80af15c0
*** No owner thread found for resource 80af15c0
*** No owner thread found for resource 80af15c0
*** No owner thread found for resource 80af15c0
Probably caused by : ntkrnlmp.exe ( nt!PspExitThread+3dc )

Followup: MachineOwner
---------

nt!RtlpBreakWithStatusInstruction:
80ab9138 cc int 3
0: kd> !analyze -v
*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

UNEXPECTED_KERNEL_MODE_TRAP (7f)
This means a trap occurred in kernel mode, and it's a trap of a kind
that the kernel isn't allowed to have/catch (bound trap) or that
is always instant death (double fault). The first number in the
bugcheck params is the number of the trap (8 = double fault, etc)
Consult an Intel x86 family manual to learn more about what these
traps are. Here is a *portion* of those codes:
If kv shows a taskGate
use .tss on the part before the colon, then kv.
Else if kv shows a trapframe
use .trap on that value
Else
.trap on the appropriate frame will show where the trap was taken
(on x86, this will be the ebp that goes with the procedure KiTrap)
Endif
kb will then show the corrected stack.
Arguments:
Arg1: 00000008, EXCEPTION_DOUBLE_FAULT
Arg2: 80042000
Arg3: 00000000
Arg4: 00000000

Debugging Details:
------------------

*** No owner thread found for resource 80af15c0
*** No owner thread found for resource 80af15c0
*** No owner thread found for resource 80af15c0
*** No owner thread found for resource 80af15c0
*** No owner thread found for resource 80af15c0

BUGCHECK_STR: 0x7f_8

TSS: 00000028 -- (.tss 0x28)
eax=00000390 ebx=f789c210 ecx=f789c1fc edx=00000001 esi=f789c32c edi=00000078
eip=80acdf8a esp=f789be40 ebp=f789c1e0 iopl=0 nv up di ng nz na po nc
cs=0008 ss=0010 ds=0023 es=0023 fs=0030 gs=0000 efl=00010082
nt!_SEH_prolog+0x1a:
80acdf8a 53 push ebx
Resetting default scope

DEFAULT_BUCKET_ID: DRIVER_FAULT

PROCESS_NAME: System

LOCK_ADDRESS: 80af1640 -- (!locks 80af1640)
NTSDEXTS: Unable to resolve ntdll!RtlCriticalSectionList
NTSDEXTS: Please check your symbols

PNP_TRIAGE:
Lock address : 0x80af1640
Thread Count : 1
Thread address: 0x8b0c5020
Thread wait : 0xe9

LAST_CONTROL_TRANSFER: from 80a30d41 to 80ab9138

ASSERT_DATA: pciInterface

ASSERT_FILE_LOCATION: d:\xpsp\base\busdrv\acpi\driver\nt\irqarb.c at Line 3518

STACK_TEXT:
80ae33c0 80a30d41 00000003 80ae371c 00000000 nt!RtlpBreakWithStatusInstruction
80ae340c 80a319ac 00000003 00000000 00000000 nt!KiBugCheckDebugBreak+0x19
80ae37ec 80ad6907 0000007f 00000008 80042000 nt!KeBugCheck2+0x574
80ae37ec 80acdf8a 0000007f 00000008 80042000 nt!KiTrap08+0x48
f789c1e0 80ad5349 f789c1fc 00000000 f789c250 nt!_SEH_prolog+0x1a
f789c248 80ad5b11 f789c2d8 80ac10a1 badb0d00 nt!CommonDispatchException+0x4d
f789c248 80ac10a2 f789c2d8 80ac10a1 badb0d00 nt!KiTrap03+0xb9
f789c2d8 80ac10ec 00000001 f789c32c 00000078 nt!DebugService+0x1c
f789c2f4 80ab9243 f789c314 ffffffff 00000000 nt!DebugPrint+0x1c
f789c548 80ab93d8 80ab93b8 ffffffff 00000000 nt!vDbgPrintExWithPrefix+0x101
f789c564 80abad6c 80abac22 80abac1e 80bcb16c nt!DbgPrint+0x1a
f789c874 80abae30 80bcb16c 80bcb14c 00000404 nt!RtlAssert2+0x82
f789c890 80bcb644 80bcb16c 80bcb14c 00000404 nt!RtlAssert+0x18
f789c93c 80bcbd80 c0000001 00000000 8b0c5020 nt!PspExitThread+0x3dc
f789c960 80bcc315 8b0c5020 c0000001 f789c990 nt!PspTerminateThreadByPointer+0x88
f789c980 80ad4718 fffffffe c0000001 00000030 nt!NtTerminateThread+0xc3
f789c980 80a3c7e1 fffffffe c0000001 00000030 nt!KiFastCallEntry+0x158
f789ca0c 80abadc0 fffffffe c0000001 8b0c6468 nt!ZwTerminateThread+0x11
f789cd04 80abae30 80bcb16c 80bcb14c 00000404 nt!RtlAssert2+0xd6
f789cd20 80bcb644 80bcb16c 80bcb14c 00000404 nt!RtlAssert+0x18
f789cdcc 80bcbd80 c0000001 00000000 8b0c5020 nt!PspExitThread+0x3dc
f789cdf0 80bcc315 8b0c5020 c0000001 f789ce20 nt!PspTerminateThreadByPointer+0x88
f789ce10 80ad4718 fffffffe c0000001 00000030 nt!NtTerminateThread+0xc3
f789ce10 80a3c7e1 fffffffe c0000001 00000030 nt!KiFastCallEntry+0x158
f789ce9c 80abadc0 fffffffe c0000001 8b0c6468 nt!ZwTerminateThread+0x11
f789d194 80abae30 80bcb16c 80bcb14c 00000404 nt!RtlAssert2+0xd6
f789d1b0 80bcb644 80bcb16c 80bcb14c 00000404 nt!RtlAssert+0x18
f789d25c 80bcbd80 c0000001 00000000 8b0c5020 nt!PspExitThread+0x3dc
f789d280 80bcc315 8b0c5020 c0000001 f789d2b0 nt!PspTerminateThreadByPointer+0x88
f789d2a0 80ad4718 fffffffe c0000001 00000030 nt!NtTerminateThread+0xc3
f789d2a0 80a3c7e1 fffffffe c0000001 00000030 nt!KiFastCallEntry+0x158
f789d32c 80abadc0 fffffffe c0000001 8b0c6468 nt!ZwTerminateThread+0x11
f789d624 80abae30 80bcb16c 80bcb14c 00000404 nt!RtlAssert2+0xd6
f789d640 80bcb644 80bcb16c 80bcb14c 00000404 nt!RtlAssert+0x18
f789d6ec 80bcbd80 c0000001 00000000 8b0c5020 nt!PspExitThread+0x3dc
f789d710 80bcc315 8b0c5020 c0000001 f789d740 nt!PspTerminateThreadByPointer+0x88
f789d730 80ad4718 fffffffe c0000001 00000030 nt!NtTerminateThread+0xc3
f789d730 80a3c7e1 fffffffe c0000001 00000030 nt!KiFastCallEntry+0x158
f789d7bc 80abadc0 fffffffe c0000001 8b0c6468 nt!ZwTerminateThread+0x11
f789dab4 80abae30 80bcb16c 80bcb14c 00000404 nt!RtlAssert2+0xd6
f789dad0 80bcb644 80bcb16c 80bcb14c 00000404 nt!RtlAssert+0x18
f789db7c 80bcbd80 c0000001 00000000 8b0c5020 nt!PspExitThread+0x3dc
f789dba0 80bcc315 8b0c5020 c0000001 f789dbd0 nt!PspTerminateThreadByPointer+0x88
f789dbc0 80ad4718 fffffffe c0000001 00000030 nt!NtTerminateThread+0xc3
f789dbc0 80a3c7e1 fffffffe c0000001 00000030 nt!KiFastCallEntry+0x158
f789dc4c 80abadc0 fffffffe c0000001 00000000 nt!ZwTerminateThread+0x11
f789df44 80abae30 f75782b2 f7578286 00000dbe nt!RtlAssert2+0xd6
f789df60 f757852e f75782b2 f7578286 00000dbe nt!RtlAssert+0x18
f789e0a0 f75b865b 8b0d2d00 f789e0cc f789e0e0 ACPI!AcpiArbCrackPRT+0xe0
f789e0d4 f75c882d f75ae2a0 f789e0f0 f789e1a8 ACPI!AcpiArbAddAllocation+0x9f
f789e158 f75b7375 f75ae2a0 e19e6184 f75ae2a0 ACPI!ArbBootAllocation+0x17b
f789e16c f75c8d89 f75ae2a0 e19e6184 e19e6184 ACPI!AcpiArbBootAllocation+0x4b
f789e188 80b5d111 f75ae2a0 00000009 f789e1a8 ACPI!ArbArbiterHandler+0x1bd
f789e1c4 80b5e093 f789e1b8 00000000 80af1140 nt!IopBootAllocation+0xbb
f789e208 80b5e80b 00000004 e1a1c548 e1a04238 nt!IopAllocateBootResourcesInternal+0xc5
f789e228 80d24c8b 00000004 8b0d2d00 e1a04238 nt!IopAllocateBootResources+0x75
f789e24c 80b4753a 00000004 8b0d2d00 e1a04238 nt!IopReportBootResources+0x65
f789e27c 80b4db93 8b0881c8 80000240 00000001 nt!PiQueryAndAllocateBootResources+0x150
f789e36c 80b4e26d 8b0881c8 00000000 00000000 nt!PipProcessNewDeviceNode+0xc9d
f789e5c4 80a2cfb6 8b08ecc8 00000000 00000000 nt!PipProcessDevNodeTree+0x1bd
f789e608 80a2d2c1 00000000 00000000 800809e8 nt!PipDeviceActionWorker+0xc4
f789e620 80d23f53 00000000 00000006 00000000 nt!PipRequestDeviceAction+0x13b
f789e684 80d201f1 80085000 f789e6a0 00034000 nt!IopInitializeBootDrivers+0x39b
f789e830 80d1d940 80085000 00000000 8b0c5020 nt!IoInitSystem+0x82d
f789edac 80bc761c 80085000 00000000 00000000 nt!Phase1Initialization+0xb12
f789eddc 80ad9b52 80d1ce2e 80085000 00000000 nt!PspSystemThreadStartup+0x34
00000000 00000000 00000000 00000000 00000000 nt!KiThreadStartup+0x16


STACK_COMMAND: kb

FOLLOWUP_IP:
nt!PspExitThread+3dc
80bcb644 8b9edc010000 mov ebx,dword ptr [esi+1DCh]

SYMBOL_STACK_INDEX: d

SYMBOL_NAME: nt!PspExitThread+3dc

FOLLOWUP_NAME: MachineOwner

MODULE_NAME: nt

IMAGE_NAME: ntkrnlmp.exe

DEBUG_FLR_IMAGE_TIMESTAMP: 4802b3ce

FAILURE_BUCKET_ID: 0x7f_8_nt!PspExitThread+3dc

BUCKET_ID: 0x7f_8_nt!PspExitThread+3dc

Followup: MachineOwner
---------

0: kd> !pcitree
PciFdoExtensionListHead forward pointer is NULL, list is empty
0: kd> !pci
PCI Segment 0 Bus 0
00:0 1022:1450.00 Cmd[0000:......] Sts[0000:.....] AMD Host Bridge SubID:1849:1450
00:2 1022:1451.00 Cmd[0004:..b...] Sts[0010:c....] AMD Class:8:6:0 SubID:1022:1451
01:0 1022:1452.00 Cmd[0000:......] Sts[0000:.....] AMD Host Bridge
01:3 1022:1453.00 Cmd[0007:imb...] Sts[0010:c....] AMD PCI-PCI Bridge 0->0x3-0xa
02:0 1022:1452.00 Cmd[0000:......] Sts[0000:.....] AMD Host Bridge
03:0 1022:1452.00 Cmd[0000:......] Sts[0000:.....] AMD Host Bridge
03:1 1022:1453.00 Cmd[0007:imb...] Sts[0010:c....] AMD PCI-PCI Bridge 0->0xb-0xb
04:0 1022:1452.00 Cmd[0000:......] Sts[0000:.....] AMD Host Bridge
07:0 1022:1452.00 Cmd[0000:......] Sts[0000:.....] AMD Host Bridge
07:1 1022:1454.00 Cmd[0007:imb...] Sts[0010:c....] AMD PCI-PCI Bridge 0->0x11-0x11
08:0 1022:1452.00 Cmd[0000:......] Sts[0000:.....] AMD Host Bridge
08:1 1022:1454.00 Cmd[0007:imb...] Sts[0010:c....] AMD PCI-PCI Bridge 0->0x12-0x12
14:0 1022:790b.59 Cmd[0403:im....] Sts[0220:.6...] AMD SMBus Controller SubID:1849:ffff
14:3 1022:790e.51 Cmd[000f:imb...] Sts[0220:.6...] AMD ISA Bridge SubID:1849:ffff
18:0 1022:1460.00 Cmd[0000:......] Sts[0000:.....] AMD Host Bridge
18:1 1022:1461.00 Cmd[0000:......] Sts[0000:.....] AMD Host Bridge
18:2 1022:1462.00 Cmd[0000:......] Sts[0000:.....] AMD Host Bridge
18:3 1022:1463.00 Cmd[0000:......] Sts[0000:.....] AMD Host Bridge
18:4 1022:1464.00 Cmd[0000:......] Sts[0000:.....] AMD Host Bridge
18:5 1022:1465.00 Cmd[0000:......] Sts[0000:.....] AMD Host Bridge
18:6 1022:1466.00 Cmd[0000:......] Sts[0000:.....] AMD Host Bridge
18:7 1022:1467.00 Cmd[0000:......] Sts[0000:.....] AMD Host Bridge
0: kd> lm
start end module name
80100000 80127780 HAL1 (deferred)
80a02000 80d8e000 nt (pdb symbols) c:\symbols\ntkrnlmp.pdb\23BD599C4BEE49C0B7E2E3FD595D2ACB1\ntkrnlmp.pdb
f740c000 f742bb00 fltMgr (deferred)
f742c000 f7441000 nvme (deferred)
f7441000 f7458880 SCSIPORT (deferred)
f7459000 f7470900 atapi (deferred)
f7471000 f7496a00 dmio (deferred)
f7497000 f74b5d80 ftdisk (deferred)
f7556000 f7566a80 pci (pdb symbols) c:\symbols\pci.pdb\46927BAFB8E740B6B4BAC813675A82871\pci.pdb
f7567000 f75d5480 ACPI (pdb symbols) c:\symbols\acpi.pdb\F3A2E52867724F8EAB957EA99ABA93031\acpi.pdb
f75f7000 f7600300 isapnp (deferred)
f7607000 f7611580 MountMgr (deferred)
f7617000 f7624200 VolSnap (deferred)
f7627000 f7637000 asahci32 (deferred)
f7637000 f763fe00 disk (deferred)
f7647000 f7653180 CLASSPNP (deferred)
f7707000 f770d180 PCIIDEX (deferred)
f770f000 f7713d00 PartMgr (deferred)
f782e000 f7844880 KSecDD (deferred)
f7845000 f7856f00 sr (deferred)
f7857000 f7897000 storport (deferred)
f7897000 f789a000 BOOTVID (deferred)
f795a000 f7986980 NDIS (deferred)
f7987000 f7988b80 kdcom (deferred)
f7989000 f798a100 WMILIB (deferred)
f798b000 f798c700 dmload (deferred)
f7a35000 f7a4eb80 Mup (deferred)
f7a4f000 f7a4fd00 pciide (deferred)
f7b52000 f7bde600 Ntfs (deferred)
0: kd> !devnode 0 1
Dumping IopRootDeviceNode (= 0x8b08ecc8)
DevNode 0x8b08ecc8 for PDO 0x8b08ee10
InstancePath is "HTREE\ROOT\0"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8b08e898 for PDO 0x8b08e9f8
InstancePath is "Root\ACPI_HAL\0000"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8b0e2358 for PDO 0x8b0e3830
InstancePath is "ACPI_HAL\PNP0C08\0"
ServiceName is "ACPI"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8b0600c0 for PDO 0x8b0e86c8
InstancePath is "ACPI\PNP0A08\0"
ServiceName is "pci"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8b0e8420 for PDO 0x8b0d45c8
InstancePath is "ACPI\PNP0C0C\aa"
State = DeviceNodeDriversAdded (0x303)
Previous State = DeviceNodeInitialized (0x302)
DevNode 0x8b0e82f0 for PDO 0x8b04b798
InstancePath is "ACPI\AuthenticAMD_-_x86_Family_23_Model_1\_0"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0x8b0caed8 for PDO 0x8b0c9670
InstancePath is "ACPI\AuthenticAMD_-_x86_Family_23_Model_1\_1"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0x8b0cada8 for PDO 0x8b091038
InstancePath is "ACPI\AuthenticAMD_-_x86_Family_23_Model_1\_2"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0x8b087678 for PDO 0x8b0d2620
InstancePath is "ACPI\AuthenticAMD_-_x86_Family_23_Model_1\_3"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0x8b087548 for PDO 0x8b04e4c0
InstancePath is "ACPI\AuthenticAMD_-_x86_Family_23_Model_1\_4"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0x8b04b008 for PDO 0x8b0478a0
InstancePath is "ACPI\AuthenticAMD_-_x86_Family_23_Model_1\_5"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0x8b04b190 for PDO 0x8b0625c0
InstancePath is "ACPI\AuthenticAMD_-_x86_Family_23_Model_1\_6"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0x8b0ea280 for PDO 0x8b0624a0
InstancePath is "ACPI\AuthenticAMD_-_x86_Family_23_Model_1\_7"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0x8b0ea150 for PDO 0x8b0ca418
InstancePath is "ACPI\AuthenticAMD_-_x86_Family_23_Model_1\_8"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0x8b0d2008 for PDO 0x8b0ca2f8
InstancePath is "ACPI\AuthenticAMD_-_x86_Family_23_Model_1\_9"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0x8b0d2198 for PDO 0x8b0c9c88
InstancePath is "ACPI\AuthenticAMD_-_x86_Family_23_Model_1\10"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0x8b0e2008 for PDO 0x8b0c9b68
InstancePath is "ACPI\AuthenticAMD_-_x86_Family_23_Model_1\11"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0x8b0e21c0 for PDO 0x8b0d55b0
InstancePath is "ACPI\AuthenticAMD_-_x86_Family_23_Model_1\12"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0x8b0e1008 for PDO 0x8b0d5490
InstancePath is "ACPI\AuthenticAMD_-_x86_Family_23_Model_1\13"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0x8b0e11c0 for PDO 0x8b05ff18
InstancePath is "ACPI\AuthenticAMD_-_x86_Family_23_Model_1\14"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0x8b088008 for PDO 0x8b05fdf8
InstancePath is "ACPI\AuthenticAMD_-_x86_Family_23_Model_1\15"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0x8b0881c8 for PDO 0x8b0d2d00
InstancePath is "ACPI\AMDI0030\0"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0x8b05f008 for PDO 0x8b0d2be0
State = DeviceNodeUninitialized (0x301)
Previous State = Unknown State (0x0)
DevNode 0x8b05f278 for PDO 0x8b076218
State = DeviceNodeUninitialized (0x301)
Previous State = Unknown State (0x0)
DevNode 0x8b05f148 for PDO 0x8b0760f8
State = DeviceNodeUninitialized (0x301)
Previous State = Unknown State (0x0)
DevNode 0x8b046c68 for PDO 0x8b060220
State = DeviceNodeUninitialized (0x301)
Previous State = Unknown State (0x0)
DevNode 0x8b0e7db0 for PDO 0x8b0e7f10
InstancePath is "Root\dmio\0000"
ServiceName is "dmio"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8b0e7b58 for PDO 0x8b0e7cb8
InstancePath is "Root\ftdisk\0000"
ServiceName is "ftdisk"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8b0e7900 for PDO 0x8b0e7a60
InstancePath is "Root\LEGACY_ACPI\0000"
ServiceName is "ACPI"
State = DeviceNodeRemoved (0x312)
Previous State = DeviceNodeStarted (0x308)
Problem = CM_PROB_DEVICE_NOT_THERE
DevNode 0x8b0e76a8 for PDO 0x8b0e7808
InstancePath is "Root\LEGACY_AFD\0000"
ServiceName is "AFD"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8b0e7418 for PDO 0x8b0e7578
InstancePath is "Root\LEGACY_AMPA\0000"
ServiceName is "ampa"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8b0e71c0 for PDO 0x8b0e7320
InstancePath is "Root\LEGACY_ATAPI\0000"
ServiceName is "atapi"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8b08ded8 for PDO 0x8b08d038
InstancePath is "Root\LEGACY_BEEP\0000"
ServiceName is "Beep"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8b08dc38 for PDO 0x8b08dd98
InstancePath is "Root\LEGACY_DMBOOT\0000"
ServiceName is "dmboot"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8b08d9e0 for PDO 0x8b08db40
InstancePath is "Root\LEGACY_DMLOAD\0000"
ServiceName is "dmload"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8b08d788 for PDO 0x8b08d8e8
InstancePath is "Root\LEGACY_FIPS\0000"
ServiceName is "Fips"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8b08d4e0 for PDO 0x8b08d640
InstancePath is "Root\LEGACY_GPC\0000"
ServiceName is "Gpc"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8b08d288 for PDO 0x8b08d3e8
InstancePath is "Root\LEGACY_HTTP\0000"
ServiceName is "HTTP"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8b0e6008 for PDO 0x8b08d190
InstancePath is "Root\LEGACY_IPNAT\0000"
ServiceName is "IpNat"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8b0e6db0 for PDO 0x8b0e6f10
InstancePath is "Root\LEGACY_IPSEC\0000"
ServiceName is "IPSec"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8b0e6b58 for PDO 0x8b0e6cb8
InstancePath is "Root\LEGACY_KSECDD\0000"
ServiceName is "ksecdd"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8b0e6900 for PDO 0x8b0e6a60
InstancePath is "Root\LEGACY_MNMDD\0000"
ServiceName is "mnmdd"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8b0e66a8 for PDO 0x8b0e6808
InstancePath is "Root\LEGACY_MOUNTMGR\0000"
ServiceName is "mountmgr"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8b0e6450 for PDO 0x8b0e65b0
InstancePath is "Root\LEGACY_NDIS\0000"
ServiceName is "NDIS"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8b0e61f8 for PDO 0x8b0e6358
InstancePath is "Root\LEGACY_NDISTAPI\0000"
ServiceName is "NdisTapi"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8b08ced8 for PDO 0x8b08c038
InstancePath is "Root\LEGACY_NDISUIO\0000"
ServiceName is "Ndisuio"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8b08cc80 for PDO 0x8b08cde0
InstancePath is "Root\LEGACY_NDPROXY\0000"
ServiceName is "NDProxy"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8b08ca28 for PDO 0x8b08cb88
InstancePath is "Root\LEGACY_NETBT\0000"
ServiceName is "NetBT"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8b08c7d0 for PDO 0x8b08c930
InstancePath is "Root\LEGACY_NULL\0000"
ServiceName is "Null"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8b08c578 for PDO 0x8b08c6d8
InstancePath is "Root\LEGACY_NVME\0000"
ServiceName is "nvme"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8b08c320 for PDO 0x8b08c480
InstancePath is "Root\LEGACY_PARTMGR\0000"
ServiceName is "PartMgr"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8b0e5008 for PDO 0x8b08c228
InstancePath is "Root\LEGACY_PARVDM\0000"
ServiceName is "ParVdm"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8b0e5db0 for PDO 0x8b0e5f10
InstancePath is "Root\LEGACY_PCIIDE\0000"
ServiceName is "PCIIde"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8b0e5b58 for PDO 0x8b0e5cb8
InstancePath is "Root\LEGACY_RASACD\0000"
ServiceName is "RasAcd"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8b0e5900 for PDO 0x8b0e5a60
InstancePath is "Root\LEGACY_RDPCDD\0000"
ServiceName is "RDPCDD"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8b0e56a8 for PDO 0x8b0e5808
InstancePath is "Root\LEGACY_TCPIP\0000"
ServiceName is "Tcpip"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8b0e5450 for PDO 0x8b0e55b0
InstancePath is "Root\LEGACY_VGASAVE\0000"
ServiceName is "VgaSave"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8b0e51f8 for PDO 0x8b0e5358
InstancePath is "Root\LEGACY_VOLSNAP\0000"
ServiceName is "VolSnap"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8b08bed8 for PDO 0x8b08b038
InstancePath is "Root\LEGACY_WANARP\0000"
ServiceName is "Wanarp"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8b08bc80 for PDO 0x8b08bde0
InstancePath is "Root\MEDIA\MS_MMACM"
ServiceName is "audstub"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8b08ba28 for PDO 0x8b08bb88
InstancePath is "Root\MEDIA\MS_MMDRV"
ServiceName is "audstub"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8b08b7d0 for PDO 0x8b08b930
InstancePath is "Root\MEDIA\MS_MMMCI"
ServiceName is "audstub"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8b08b578 for PDO 0x8b08b6d8
InstancePath is "Root\MEDIA\MS_MMVCD"
ServiceName is "audstub"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8b08b320 for PDO 0x8b08b480
InstancePath is "Root\MEDIA\MS_MMVID"
ServiceName is "audstub"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8b0e4008 for PDO 0x8b08b228
InstancePath is "Root\MS_L2TPMINIPORT\0000"
ServiceName is "Rasl2tp"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8b0e4db0 for PDO 0x8b0e4f10
InstancePath is "Root\MS_NDISWANIP\0000"
ServiceName is "NdisWan"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8b0e4b58 for PDO 0x8b0e4cb8
InstancePath is "Root\MS_PPPOEMINIPORT\0000"
ServiceName is "RasPppoe"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8b0e4900 for PDO 0x8b0e4a60
InstancePath is "Root\MS_PPTPMINIPORT\0000"
ServiceName is "PptpMiniport"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8b0e46a8 for PDO 0x8b0e4808
InstancePath is "Root\MS_PSCHEDMP\0000"
ServiceName is "PSched"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8b0e4450 for PDO 0x8b0e45b0
InstancePath is "Root\MS_PSCHEDMP\0001"
ServiceName is "PSched"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8b0e41f8 for PDO 0x8b0e4358
InstancePath is "Root\MS_PSCHEDMP\0002"
ServiceName is "PSched"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8b08aed8 for PDO 0x8b08a038
InstancePath is "Root\MS_PTIMINIPORT\0000"
ServiceName is "Raspti"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8b08ac80 for PDO 0x8b08ade0
InstancePath is "Root\PCI_HAL\0000"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8b08aa28 for PDO 0x8b08ab88
InstancePath is "Root\RDPDR\0000"
ServiceName is "rdpdr"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8b08a7d0 for PDO 0x8b08a930
InstancePath is "Root\RDP_KBD\0000"
ServiceName is "TermDD"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8b08a578 for PDO 0x8b08a6d8
InstancePath is "Root\RDP_MOU\0000"
ServiceName is "TermDD"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8b08a320 for PDO 0x8b08a480
InstancePath is "Root\SYSTEM\0000"
ServiceName is "swenum"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8b0e3008 for PDO 0x8b08a228
InstancePath is "Root\SYSTEM\0001"
ServiceName is "update"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8b0e3db0 for PDO 0x8b0e3f10
InstancePath is "Root\SYSTEM\0002"
ServiceName is "mssmbios"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)


0: kd> !AcpiArbCrackPRT+0xe0
No export AcpiArbCrackPRT+0xe0 found
0: kd> devnode !AcpiArbCrackPRT+0xe0
Couldn't resolve error at 'evnode !AcpiArbCrackPRT+0xe0'
0: kd> !devnode !AcpiArbCrackPRT+0xe0
DevNode 0xf757852e for PDO 0x5a850f02
Parent 0x8dffa44d Sibling 0xff688d83 Child 0x83ffffff
InterfaceType 0xce8bd38a Bus Number 0x15fff88b
Duplicate PDO 0xe8f75ae3 InstancePath is ""
ServiceName is ""
TargetDeviceNotify List - f 0xc0840004 b 0x006a1775
State = Unknown State (0x8d50a945)
Previous State = Unknown State (0x8d50a845)
StateHistory[19] = Unknown State (0xa7505a1)
StateHistory[18] = Unknown State (0x45f62050)
StateHistory[17] = Unknown State (0xff53ffff)
StateHistory[16] = Unknown State (0xff68b5ff)
StateHistory[15] = Unknown State (0xf75ae4b0)
StateHistory[14] = Unknown State (0xa1a475ff)
StateHistory[13] = Unknown State (0x50a1458d)
StateHistory[12] = Unknown State (0x96a016a)
StateHistory[11] = Unknown State (0x2a7501a9)
StateHistory[10] = Unknown State (0x7d803075)
StateHistory[09] = Unknown State (0x1a87d80)
StateHistory[08] = Unknown State (0x5af)
StateHistory[07] = Unknown State (0xe9c00002)
StateHistory[06] = Unknown State (0x25b80a7d)
StateHistory[05] = Unknown State (0xc0851057)
StateHistory[04] = Unknown State (0xff5650ff)
StateHistory[03] = Unknown State (0xffff6885)
StateHistory[02] = Unknown State (0x8d50a445)
StateHistory[01] = Unknown State (0x8d50a345)
StateHistory[00] = Unknown State (0x8d50ab45)
Flags (0x0fc33b8c) DNF_HAL_NODE, DNF_REENUMERATE,
DNF_BOOT_CONFIG_RESERVED, DNF_NO_RESOURCE_REQUIRED,
DNF_RESOURCE_REQUIREMENTS_NEED_FILTERED, DNF_NON_STOPPED_REBALANCE,
DNF_LEGACY_DRIVER, DNF_HAS_PROBLEM,
DNF_DEVICE_GONE, DNF_LEGACY_RESOURCE_DEVICENODE,
DNF_ASYNC_START_NOT_SUPPORTED, DNF_ASYNC_ENUMERATION_NOT_SUPPORTED,
DNF_LOCKED_FOR_REBALANCE, DNF_UNINSTALLED,
DNF_NO_LOWER_DEVICE_FILTERS, DNF_NO_LOWER_CLASS_FILTERS
UserFlags (0x00055c85) DNUF_WILL_BE_REMOVED, DNUF_NEED_RESTART
Unknown flags 0x00055c80
CapabilityFlags (0xfef19be8) EjectSupported, DockDevice,
UniqueID, SilentInstall,
RawDeviceOK, SurpriseRemovalOK,
WakeFromD1, WakeFromD2,
NonDynamic, WarmEjectSupported
Unknown flags 0xfef00000
DisableableDepends = 1300496383 (from children)
Problem = Unknown problem (-1807354368)
  
#703 infuscomus ⇗ @diderius6

maybe try this flag in FACP table -

                     MSI Not Supported (V4) : 0

set it to 1
#704 Mov AX, 0xDEAD
Zitat von ⇗ infuscomus im Beitrag ¶ #700

XP apparently supports negative IRQs?

No, only line based irqs
#705 diderius6 ⇗ @infuscomus

I make a crazy try:
I delete nearly everything in DSDT,
compile and add this mini DSDT to Bios and flash.

Result:
No keyboard (even not in "Standard PC"), I cant go to Bios because no keyboard,
no mouse, no COM1, means no debugging, Standard PC XP SP3 works.

Acpi BSOD for Acpi Multiprocessor changes to
0x7B , which remembers me a lot at the behavior from Vista 32 bit on this Asrock B350 board.

So, the BSOD 0x7E 0xc0000005 seems to depend also(?) on DSDT
Dietmar

EDIT: Vista 32 bit setup shows : No Acpi compatible PC^^.

PS: Here is my mini DSDT:
/*
* Intel ACPI Component Architecture
* AML/ASL+ Disassembler version 20190405 (32-bit version)
* Copyright (c) 2000 - 2019 Intel Corporation
*
* Disassembling to symbolic ASL+ operators
*
* Disassembly of hackDSDT.raw, Fri Jun 07 09:09:50 2019
*
* Original Table Header:
* Signature "DSDT"
* Length 0x00005CA1 (23713)
* Revision 0x01 **** 32-bit table (V1), no 64-bit math support
* Checksum 0x2D
* OEM ID "ALASKA"
* OEM Table ID "A M I "
* OEM Revision 0x01072009 (17244169)
* Compiler ID "INTL"
* Compiler Version 0x20190405 (538510341)
*/
DefinitionBlock ("", "DSDT", 1, "ALASKA", "A M I ", 0x01072009)
{
External (APTS, MethodObj) // 1 Arguments
External (AWAK, MethodObj) // 1 Arguments

Name (ENTK, 0x87)
Name (EXTK, 0xAA)
Name (IO1B, 0x0280)
Name (IO1L, 0x10)
Name (IO2B, 0x0290)
Name (IO2L, 0x10)
Name (IO3B, 0x02A0)
Name (IO3L, 0x10)
Name (IO4B, 0x02B0)
Name (IO4L, 0x10)
Name (SP1O, 0x2E)
Name (IOES, Zero)
Name (PEBL, 0x04000000)
Name (ACPM, One)
Name (NBTS, 0x5000)
Name (CPVD, One)
Name (SMBB, 0x0B20)
Name (SMBL, 0x20)
Name (SMB0, 0x0B00)
Name (SMBM, 0x10)
Name (PMBS, 0x0800)
Name (PMLN, 0xA0)
Name (SMIO, 0xB2)
Name (GPBS, Zero)
Name (GPLN, Zero)
Name (APCB, 0xFEC00000)
Name (APCL, 0x1000)
Name (SPIB, 0xFEC10000)
Name (SPIL, 0x1000)
Name (HPTB, 0xFED00000)
Name (HPTL, 0x0400)
Name (WDTB, Zero)
Name (WDTL, Zero)
Name (GIOB, 0xFED81500)
Name (IOMB, 0xFED80D00)
Name (SSMB, 0xFED80200)
Name (CAFS, 0xBB)
Name (RXST, Zero)
Name (U3ST, Zero)
Name (UTDB, Zero)
Name (ASSB, Zero)
Name (AOTB, Zero)
Name (AAXB, Zero)
Name (PEHP, One)
Name (SHPC, Zero)
Name (PEPM, One)
Name (PEER, One)
Name (PECS, One)
Name (ITKE, Zero)
Name (PEBS, 0xF8000000)
Name (PELN, 0x04000000)
Name (SRSI, 0xB2)
Name (CSMI, 0x61)
Name (DSSP, Zero)
Name (FHPP, One)
Name (SMIA, 0xB2)
Name (SMIB, 0xB3)
Name (OFST, 0x35)
Name (TRST, 0x02)
Name (TCMF, Zero)
Name (TMF1, Zero)
Name (TMF2, Zero)
Name (TMF3, Zero)
Name (TTPF, One)
Name (DTPT, Zero)
Name (TTDP, Zero)
Name (TPMB, Ones)
Name (TPMC, Ones)
Name (TPMM, 0xFED40000)
Name (FTPM, Ones)
Name (PPIM, 0xFFFF0000)
Name (PPIL, 0xF0)
Name (AMDT, Zero)
Name (TPMF, Zero)
Name (PPIV, Zero)
Name (HIDK, "MSFT0001")
Name (HIDM, "MSFT0003")
Name (CIDK, 0x0303D041)
Name (CIDM, 0x030FD041)
Name (ATIS, 0xB0)
Name (MBEC, Zero)
Name (THPN, Zero)
Name (ALST, Zero)
Name (NBTP, 0xFEC30000)
Name (PICM, Zero)
}
  

 

Page 48

#706 infuscomus ⇗ @diderius6

OK,
So we start from scratch - then start adding things back into DSDT table until we run into either A5 or 7E BSOD?
#707 diderius6 ⇗ @infuscomus

Yes, this would be possible, but no mood for this at the moment.
I noticed, that the CPU definition went out from DSDT to SSDT.
But as far as I understand, acpi.sys reads ONLY DSDT
Dietmar
#708 diderius6 I make a new try.
I use the DSDT from the SABERTOOTH-990FX-R20-ASUS-2901.
It is a AM3+ XP friendly board.
In the DSDT the Hpet is handled correct and there are no Externals at all.
This DSDT I flash to Bios from Asrock B350 board.
Some things change, I think to better:
Vista 32 bit setup tells now: BSOD 0xA5 0x1000
which means:
0x1000 : ACPI_BIOS_USING_OS_MEMORY
ACPI had a fatal error when processing a memory operation region.
The memory operation region tried to map memory that has been
allocated for OS usage. The BSOD 0x7E 0xc0000005 happens with normal XP also,
meaning acpi.sys is writing and reading in system memory. Here is XP SP3 debug,

windbg with this DSDT:


Microsoft (R) Windows Debugger Version 6.12.0002.633 X86
Copyright (c) Microsoft Corporation. All rights reserved.

Opened \\.\com1
Waiting to reconnect...
Connected to Windows XP 2600 x86 compatible target at (Mon Jun 10 01:26:40.187 2019 (UTC + 2:00)), ptr64 FALSE
Kernel Debugger connection established.
WARNING: Inaccessible path: 'C:\WinDDK\7600.16385.1\src\openfabricsall\nvme13\nvme\objchk_wnet_x86\i386'
Symbol search path is: C:\WinDDK\7600.16385.1\src\openfabricsall\nvme13\nvme\objchk_wnet_x86\i386;SRV*c:\symbols
*⇗ http://msdl.microsoft.com/download/symbols;C:\symbols
Executable search path is: C:\localsymbols
Windows XP Kernel Version 2600 (Service Pack 3) MP (16 procs) Checked x86 compatible
Product: WinNt, suite: TerminalServer SingleUserTS
Built by: 2600.xpsp.080413-2133
Machine Name:
Kernel base = 0x80a02000 PsLoadedModuleList = 0x80af5708
Debug session time: Mon Jun 10 01:26:50.812 2019 (UTC + 2:00)
System Uptime: 0 days 0:00:03.421
WARNING: Inaccessible path: 'C:\WinDDK\7600.16385.1\src\openfabricsall\nvme13\nvme\objchk_wnet_x86\i386'
Mon Jun 10 01:26:42.015 2019 (UTC + 2:00): Break instruction exception - code 80000003 (first chance)

A fatal system error has occurred.
Debugger entered on first try; Bugcheck callbacks have not been invoked.

A fatal system error has occurred.

Connected to Windows XP 2600 x86 compatible target at (Mon Jun 10 01:26:42.093 2019 (UTC + 2:00)), ptr64 FALSE
Loading Kernel Symbols
............................
Loading User Symbols
WARNING: Process directory table base DD5E0000 doesn't match CR3 00039000

*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

Use !analyze -v to get detailed debugging information.

BugCheck 7F, {8, f7787d70, 0, 0}

*** No owner thread found for resource 80af15c0
*** No owner thread found for resource 80af15c0
*** No owner thread found for resource 80af15c0
*** No owner thread found for resource 80af15c0
Probably caused by : ntkrnlmp.exe ( nt!PspExitThread+3dc )

Followup: MachineOwner
---------

nt!RtlpBreakWithStatusInstruction:
80ab9138 cc int 3
15: kd> !analyze -v
*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

UNEXPECTED_KERNEL_MODE_TRAP (7f)
This means a trap occurred in kernel mode, and it's a trap of a kind
that the kernel isn't allowed to have/catch (bound trap) or that
is always instant death (double fault). The first number in the
bugcheck params is the number of the trap (8 = double fault, etc)
Consult an Intel x86 family manual to learn more about what these
traps are. Here is a *portion* of those codes:
If kv shows a taskGate
use .tss on the part before the colon, then kv.
Else if kv shows a trapframe
use .trap on that value
Else
.trap on the appropriate frame will show where the trap was taken
(on x86, this will be the ebp that goes with the procedure KiTrap)
Endif
kb will then show the corrected stack.
Arguments:
Arg1: 00000008, EXCEPTION_DOUBLE_FAULT
Arg2: f7787d70
Arg3: 00000000
Arg4: 00000000

Debugging Details:
------------------

*** No owner thread found for resource 80af15c0
*** No owner thread found for resource 80af15c0
*** No owner thread found for resource 80af15c0
*** No owner thread found for resource 80af15c0

BUGCHECK_STR: 0x7f_8

TSS: 00000028 -- (.tss 0x28)
eax=00000390 ebx=f789c2cc ecx=f789c2b8 edx=00000001 esi=f789c3e8 edi=00000078
eip=80acdf8a esp=f789befc ebp=f789c29c iopl=0 nv up di ng nz na pe nc
cs=0008 ss=0010 ds=0023 es=0023 fs=0030 gs=0000 efl=00010086
nt!_SEH_prolog+0x1a:
80acdf8a 53 push ebx
Resetting default scope

DEFAULT_BUCKET_ID: DRIVER_FAULT

PROCESS_NAME: System

LOCK_ADDRESS: 80af1640 -- (!locks 80af1640)
NTSDEXTS: Unable to resolve ntdll!RtlCriticalSectionList
NTSDEXTS: Please check your symbols

PNP_TRIAGE:
Lock address : 0x80af1640
Thread Count : 1
Thread address: 0x8b0c5020
Thread wait : 0xd9

ASSERT_FILE_LOCATION: d:\xpsp\base\ntos\mm\iosup.c at Line 6745

LAST_CONTROL_TRANSFER: from 80a30d41 to 80ab9138

ASSERT_DATA: (Pfn1->u3.e2.ReferenceCount != 0) || ((Pfn1->u3.e1.Rom == 1) && (CacheType == MmCached))

STACK_TEXT:
f778ad10 80a30d41 00000003 f778b06c 00000000 nt!RtlpBreakWithStatusInstruction
f778ad5c 80a319ac 00000003 00000000 00000000 nt!KiBugCheckDebugBreak+0x19
f778b13c 80ad6907 0000007f 00000008 f7787d70 nt!KeBugCheck2+0x574
f778b13c 80acdf8a 0000007f 00000008 f7787d70 nt!KiTrap08+0x48
f789c29c 80ad5349 f789c2b8 00000000 f789c30c nt!_SEH_prolog+0x1a
f789c304 80ad5b11 f789c394 80ac10a1 badb0d00 nt!CommonDispatchException+0x4d
f789c304 80ac10a2 f789c394 80ac10a1 badb0d00 nt!KiTrap03+0xb9
f789c394 80ac10ec 00000001 f789c3e8 00000078 nt!DebugService+0x1c
f789c3b0 80ab9243 f789c3d0 ffffffff 00000000 nt!DebugPrint+0x1c
f789c604 80ab93d8 80ab93b8 ffffffff 00000000 nt!vDbgPrintExWithPrefix+0x101
f789c620 80abad6c 80abac22 80abac1e 80bcb16c nt!DbgPrint+0x1a
f789c930 80abae30 80bcb16c 80bcb14c 00000404 nt!RtlAssert2+0x82
f789c94c 80bcb644 80bcb16c 80bcb14c 00000404 nt!RtlAssert+0x18
f789c9f8 80bcbd80 c0000001 00000000 8b0c5020 nt!PspExitThread+0x3dc
f789ca1c 80bcc315 8b0c5020 c0000001 f789ca4c nt!PspTerminateThreadByPointer+0x88
f789ca3c 80ad4718 fffffffe c0000001 00000030 nt!NtTerminateThread+0xc3
f789ca3c 80a3c7e1 fffffffe c0000001 00000030 nt!KiFastCallEntry+0x158
f789cac8 80abadc0 fffffffe c0000001 8b0c6468 nt!ZwTerminateThread+0x11
f789cdc0 80abae30 80bcb16c 80bcb14c 00000404 nt!RtlAssert2+0xd6
f789cddc 80bcb644 80bcb16c 80bcb14c 00000404 nt!RtlAssert+0x18
f789ce88 80bcbd80 c0000001 00000000 8b0c5020 nt!PspExitThread+0x3dc
f789ceac 80bcc315 8b0c5020 c0000001 f789cedc nt!PspTerminateThreadByPointer+0x88
f789cecc 80ad4718 fffffffe c0000001 00000030 nt!NtTerminateThread+0xc3
f789cecc 80a3c7e1 fffffffe c0000001 00000030 nt!KiFastCallEntry+0x158
f789cf58 80abadc0 fffffffe c0000001 8b0c6468 nt!ZwTerminateThread+0x11
f789d250 80abae30 80bcb16c 80bcb14c 00000404 nt!RtlAssert2+0xd6
f789d26c 80bcb644 80bcb16c 80bcb14c 00000404 nt!RtlAssert+0x18
f789d318 80bcbd80 c0000001 00000000 8b0c5020 nt!PspExitThread+0x3dc
f789d33c 80bcc315 8b0c5020 c0000001 f789d36c nt!PspTerminateThreadByPointer+0x88
f789d35c 80ad4718 fffffffe c0000001 00000030 nt!NtTerminateThread+0xc3
f789d35c 80a3c7e1 fffffffe c0000001 00000030 nt!KiFastCallEntry+0x158
f789d3e8 80abadc0 fffffffe c0000001 8b0c6468 nt!ZwTerminateThread+0x11
f789d6e0 80abae30 80bcb16c 80bcb14c 00000404 nt!RtlAssert2+0xd6
f789d6fc 80bcb644 80bcb16c 80bcb14c 00000404 nt!RtlAssert+0x18
f789d7a8 80bcbd80 c0000001 00000000 8b0c5020 nt!PspExitThread+0x3dc
f789d7cc 80bcc315 8b0c5020 c0000001 f789d7fc nt!PspTerminateThreadByPointer+0x88
f789d7ec 80ad4718 fffffffe c0000001 00000030 nt!NtTerminateThread+0xc3
f789d7ec 80a3c7e1 fffffffe c0000001 00000030 nt!KiFastCallEntry+0x158
f789d878 80abadc0 fffffffe c0000001 8b0c6468 nt!ZwTerminateThread+0x11
f789db70 80abae30 80bcb16c 80bcb14c 00000404 nt!RtlAssert2+0xd6
f789db8c 80bcb644 80bcb16c 80bcb14c 00000404 nt!RtlAssert+0x18
f789dc38 80bcbd80 c0000001 00000000 8b0c5020 nt!PspExitThread+0x3dc
f789dc5c 80bcc315 8b0c5020 c0000001 f789dc8c nt!PspTerminateThreadByPointer+0x88
f789dc7c 80ad4718 fffffffe c0000001 00000030 nt!NtTerminateThread+0xc3
f789dc7c 80a3c7e1 fffffffe c0000001 00000030 nt!KiFastCallEntry+0x158
f789dd08 80abadc0 fffffffe c0000001 f798f0a0 nt!ZwTerminateThread+0x11
f789e000 80abae30 80a4a5aa 80a4a58a 00001a59 nt!RtlAssert2+0xd6
f789e01c 80a4a9c0 80a4a5aa 80a4a58a 00001a59 nt!RtlAssert+0x18
f789e088 f758abb3 00e000a0 00000000 00001000 nt!MmMapIoSpace+0x24c
f789e0a8 f758c4be 00e000a0 00001000 8b07b5a0 ACPI!MapPhysMem+0x46
f789e0c8 f75919a5 8b0dc000 00e000a0 00001000 ACPI!MapUnmapPhysMem+0x5b
f789e0f8 f759895b 8b0dc000 8b0dded8 8b0dded8 ACPI!OpRegion+0x131
f789e114 f758d34c 8b0dc000 8b0dded8 00000000 ACPI!ParseTerm+0x1c1
f789e13c f7590551 00000000 4556414c 8b0dc000 ACPI!RunContext+0x124
f789e164 f7590778 8b0dc000 00000000 f75ad4a8 ACPI!InsertReadyQueue+0x15c
f789e184 f758f5aa 8b0dc000 00000000 80000000 ACPI!RestartContext+0xb5
f789e1bc f75831d6 8b0dc000 f77971d8 000000d8 ACPI!SyncLoadDDB+0xb1
f789e1e0 f75c5bf1 f77971d8 f789e1fc 00000012 ACPI!AMLILoadDDB+0x164
f789e200 f75c5f4f 00000012 8b0e41f0 80ad38c0 ACPI!ACPIInitializeDDB+0x75
f789e214 f75c667e 80102a40 f75ae1a0 80102940 ACPI!ACPIInitializeDDBs+0x8f
f789e22c f7576303 8b0877e0 8b087660 00000000 ACPI!ACPIInitialize+0x22e
f789e260 f75c17fc 8b0877e0 00000000 f75c16c6 ACPI!ACPIInitStartACPI+0x71
f789e28c f75718ea 8b0877e0 8b089200 8b0877e0 ACPI!ACPIRootIrpStartDevice+0x136
f789e2c0 80a21c1b 8b0877e0 8b0892f0 8b0877e0 ACPI!ACPIDispatchIrp+0x1a0
f789e2d8 80b4f526 f789e348 8b0e2358 8b0e35d8 nt!IopfCallDriver+0x51
f789e304 80b4f66e 8b0877e0 f789e324 00000000 nt!IopSynchronousCall+0xf0
f789e34c 80a2c0e9 8b0e35d8 00000001 00000000 nt!IopStartDevice+0x82
f789e368 80b4e2e8 8b0e35d8 00000000 00000000 nt!PipProcessStartPhase1+0x9f
f789e5c4 80a2cfb6 8b08ecc8 00000000 00000000 nt!PipProcessDevNodeTree+0x238
f789e608 80a2d2c1 00000000 00000000 800809e8 nt!PipDeviceActionWorker+0xc4
f789e620 80d23f53 00000000 00000006 00000000 nt!PipRequestDeviceAction+0x13b
f789e684 80d201f1 80085000 f789e6a0 00034000 nt!IopInitializeBootDrivers+0x39b
f789e830 80d1d940 80085000 00000000 8b0c5020 nt!IoInitSystem+0x82d
f789edac 80bc761c 80085000 00000000 00000000 nt!Phase1Initialization+0xb12
f789eddc 80ad9b52 80d1ce2e 80085000 00000000 nt!PspSystemThreadStartup+0x34


STACK_COMMAND: kb

FOLLOWUP_IP:
nt!PspExitThread+3dc
80bcb644 8b9edc010000 mov ebx,dword ptr [esi+1DCh]

SYMBOL_STACK_INDEX: d

SYMBOL_NAME: nt!PspExitThread+3dc

FOLLOWUP_NAME: MachineOwner

MODULE_NAME: nt

IMAGE_NAME: ntkrnlmp.exe

DEBUG_FLR_IMAGE_TIMESTAMP: 4802b3ce

FAILURE_BUCKET_ID: 0x7f_8_nt!PspExitThread+3dc

BUCKET_ID: 0x7f_8_nt!PspExitThread+3dc

Followup: MachineOwner
---------

15: kd> !amli
Usage: amli <cmd> [arguments ...]
where <cmd> is one of the following:

Help - ? [<Cmd>]
Clear Breakpoints - bc <bp list> | *
Disable Breakpoints - bd <bp list> | *
Enable Breakpoints - be <bp list> | *
List Breakpoints - bl
Set Breakpoints - bp <MethodName> | <CodeAddr> ...
Clear Event Log - cl
Request entering debugger- debugger
Dump Heap - dh [<Addr>]
Dump Event Log - dl
Dump Name Space Object - dns [[/s] [<NameStr> | <Addr>]]
Dump Data Object - do <Addr>
Dump Stack - ds [/v] [<Addr>]
Find NameSpace Object - find <NameSeg>
List All Contexts - lc
Display Nearest Method - ln [<MethodName> | <CodeAddr>]
Display Context Info. - r <Context>
Set Debugger Options - set [traceon | traceoff] [nesttraceon | nesttraceoff] [spewon | spewoff]
[lbrkon | lbrkoff] [errbrkon | errbrkoff] [verboseon | verboseoff]
[logon | logoff] [logmuton | logmutoff]
Unassemble AML code - u [<MethodName> | <CodeAddr>]

15: kd> !amli lc
*Ctxt=ffffffff8b0dc000, ThID=ffffffff8b0c5020, Flgs=----R----, pbOp=fffffffff7797957, Obj=<null>

15: kd> !amli ln
fffffffff7797957
  
#709 Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #708

I use the DSDT from the SABERTOOTH-990FX-R20-ASUS-2901.
It is a AM3+ XP friendly board.
In the DSDT the Hpet is handled correct and there are no Externals at all.
This DSDT I flash to Bios from Asrock B350 board.


- dsdt is not very portable on modern plarforms because uses hardcoded mem ranges, bios fill memory with values, windows read acpi code and read these memory, this is communication os<->bios. For portability need similar platform/chipset.
- dsdt (body.bin) from bios filesystem is template (on intel platform), final state produced by bios before os loading
example of template in dsdt:
Zitat
Name (PNVB, 0xFFFF0000)
Name (PNVL, 0xAA55)


final state:

Zitat
Name (PNVB, 0xCEF8D018) - dynamic adress filled by bios
Name (PNVL, 0x022E)

#710 diderius6 ⇗ @Mov AX, 0xDEAD

The problem is, to find any DSDT table from a compi with Ryzen platform,
which is XP friendly
Dietmar

PS: Do you think, it is possible to find out the hardcoded mem ranges of the Asrock fatal1ty ab350 gaming k4 board
and put them one by one into this DSDT table?
And I have another question: Do you think, that there exist a DSDT table for this Asrock board,
that starts XP with Acpi Multiprocessor mode? I mean, is it enough to edit DSDT table or is need to change other tables too?
For example I noticed, that the whole cpu definition now went out from DSDT to an SSDT table.
But as far as I know, acpi.sys looks ONLY at DSDT.
#711 diderius6 ⇗ @Mov AX, 0xDEAD

I change in the DSDT table of the Sabertooth board

   Name (PEBS, 0xE0000000)  ->  Name (PEBS, 0xF8000000)

   Name (PEBL, 0x10000000)  ->  Name (PEBL, 0x04000000)

The values on the right site are from Asrock B350 board.
Most of the NAME (..,) are identic.

Are there some other importand values, which need to fit via DSDT Asrock -> DSDT Sabertooth

Dietmar

EDIT: I changed this values in DSDT but exact the same BSOD as before.
#712 diderius6 From the Acpi 1.b (1999) specification:
ACPI is by nature more portable across operating systems and processors. ACPIs
command methods allow very flexible implementations of particular features.

Taking this word by word, it should be even possible to use a DSDT table from an Intel board for any AMD board
Dietmar

PS: What I do not understand is the difference between DSDT and SSDT tables.
acpi.sys reads only DSDT. But from yesterday I know, that not only acpi.sys is reading DSDT, strange enough.
Who reads the other tables?
#713 Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #712

PS: What I do not understand is the difference between DSDT and SSDT tables.
acpi.sys reads only DSDT. But from yesterday I know, that not only acpi.sys is reading DSDT, strange enough.
Who reads the other tables?

mssmbios reads ssdt, facp and other
nvidia driver reads ssdt

acpi.sys do some magic with ssdt too:
Zitat
mov  dword ptr [eax], 54445353h
#714 diderius6 Mov AX, 0xDEAD
"mssmbios reads ssdt"

is interesting, because the last module (lm) what is loaded before crash is always mssmbios
I can see it with windbg
Dietmar

PS: So, the real problem may be outside from DSDT!

acpi.sys do some magic with ssdt too:

   mov dword ptr [eax], 54445353h

From where you know this? And can it help?

EDIT: Aha, I found with Ida Pro in acpi.sys from XP SP3 "mov dword ptr [eax], 54445353h" and in Winhex there is written that it is from SSDT, cool.
And there is another place with SSDT in acpi.sys too.
PAGE:00036973      cmp     ecx, 54445353h

And also FACP, RSDT, XSDT, DSDT, SSDT.. oha, acpi.sys looks everywhere.
#715 diderius6 ⇗ @infuscomus

Can you also load another FACP table with your grub2 method before XP boots
instead of the FACP table from Bios?
May this is importand, because Acpi can also crash because of information
in other tables
Dietmar

PS: A short tutorial how to use this grub2 method would be nice.
#716 infuscomus ⇗ @diderius6

I can load a FACP table before DSDT with grub2
#717 diderius6 Today is a good day,
because I succeed to repair my first Asrock B350 board with hardware killed Bios Chip Winbond 25Q128FWSQ.
I desolder the Bios chip with a hot air desolder gun at 500 degree Celsius. Crazy part, look very good for your fingers!
Then I clean the 8 solder pins on the board (for the new Bios socket) careful off all solder with a Copper desoldering wire.
Clean clean clean again with a STANNOL X32-10I flux and cleaning pen.
As you can see, then I solder a socket for this Bios chip into the board.
Not with the crazy Hot Air gun, just with small normal soldering iron with normal 0.5mm solder wire.
Then I test all 8 pins for contact, put my new and also new flashed Bios Chip from Winbond via Epromer "tl866ii plus" in socket.
When I change the Ryzen 1700 cpu from the other Asrock board to this one, the chip fell down and bent pins, brrr.
Ok, after 20 min repair of bent pins
I start compi new
and here you can see nice result
Dietmar
PS: The socket with the Bios Chip is the white quadrat right down in the corner.

#718 infuscomus nice!
#719 diderius6 ⇗ @infuscomus

I would not recommend this procedure to everyone.
Many electronic devices I soldered years ago.
The white socket here has nearly zero sized legs but I found no better with fit into this board
Dietmar

PS: infuscomus, please write short Tutorial about grub2 and FACP load. Because even I can now easy put in and out the Bios chip,
the FACP table itself I cannot write direct to Bios, because I dont have the algoritmus for to put the changed FACP table back to Bios.
#720 infuscomus ⇗ @diderius6

I followed this guide to get AIO boot to prepare my USB drive

⇗ https://www.aioboot.com/en/how-to-use/

after i confirmed the drive was bootable I opened AIOcreator.exe on the USB drive - selected Integration tab, chose Windows XP, then pointed to my XP ISO

For ACPI

Copy the ACPI AML or DAT files to the root of the AIOboot USB drive

boot AIOboot USB drive

Press C to drop to grub2 command line

type desired commands
e.g.

acpi /facp.dat /dsdt.dat

Press ENTER

Press ESC to return to grub2 menu

Select Windows XP/2003 Setup

Select Windows XP Setup Boot Disk

XP Install as normal

 

Page 49

#721 diderius6 ⇗ @infuscomus

Thanks a lot!
Interesting, how XP decides, whether this is a Acpi friendly Bios or not.
Maybe, XP looks only in FACP for this.
Like on the Intel Asrock board I find out,
that XP writes also on the Asrock B350 ryzen board in the memory, which is reserved for the COM1 port,
even without Acpi
Dietmar
#722 infuscomus ⇗ @diderius6

I found on coreboot wiki



Windows XP or Server 2003 setup might fail with an error message such as:

"An unexpected error (805262864) occurred at line 1768 of d:\xpclient\base\boot\setup\arcdisp.c"

The value 805262864 varies, and is the physical address, in decimal, of one of the ACPI tables.

The error message is displayed when a 1024 dword page table array used by setupldr runs out of space.

This table is used for mapping various physical addresses, such as those of ACPI tables (a separate table identity maps the lower 16MB used by setupldr code and data). Setupldr only looks at ACPI tables (FACP) to determine make and model of the system. The make and model of the system is needed when setupldr scans the good/bad bios lists contained in txtsetup.sif. The good/bad bios lists are used to bypass installation of the ACPI enabled kernel on certain systems known to have ACPI problems. The code loop that scans the lists creates a new mapping each time it reads an ACPI table, and never frees mappings. The code uses FACP OEM ID to determine the system model. The code sequentially reads tables listed in the RSDT array until the FACP is found. Each read consumes one page table entry. If more that 4 tables precede the FACP in the RSDT array, the 1024 entry page table array will run out of space before the good/bad bios list processing completes.

BIOS can work around this Windows XP/Server 2003 limitation by placing the FACP early in the RSDT array.
#723 diderius6 ⇗ @infuscomus

I just found this via windbg on new/old Asrock board:))!

MAPIC - dumpFACS: Invalid Signature 0x00000000 != APIC_SIGNATURE (43495041)

May be this is the only reason, why we have no Acpi on XP on the Asrock B350 ryzen board
Dietmar
#724 diderius6 Be careful!!!

When you flash the Asrock B350 to the newest Bios Version 5.70,
you cant go back with normal Eflash via Bios on the Asrock 350 board:
There is written: Invalid file,
brrr..
Dietmar
#725 infuscomus ⇗ @diderius6

does your epromer still work around this?
#726 diderius6 ⇗ @infuscomus

Yessssaaa, flash back to Bios version 3.30 lasts only 2 min
because now Bios on socket
Dietmar
#727 diderius6 When you use Bios 3.30 on the Asrock B350 board,
XP SP3 boot from nvme device works.
On Bios 5.40 and 5.70 boot from nvme device for XP SP3 gives BSOD
Dietmar
#728 diderius6 This
MAPIC - dumpFACS: Invalid Signature 0x00000000 != APIC_SIGNATURE (43495041)
may be interesting.
"APIC" word in Hex is vice versa written 43 49 50 41.

With Bios 5.40 the !amli .. command shows everywhere Irq 2,
this is the Irq for the PIC model.
But all adresses for every Acpi device where filled with numbers, crash happens because Acpi in PIC mode does not work on a Multiprocessor System (needs Apic model).
So, in the DSDT table is the PIC model chosen on Bios 5.40.
On Bios 3.30 (with Apic model in FACP) nothing(?) is chosen in DSDT,
all ACPI devices are filled with 00000000 and all Irqs are 0
Dietmar
#729 diderius6 Does anybody know,
how to find the MADT table in Bios?
⇗ https://wiki.osdev.org/MADT

BIOS creates tables on boot

Table of contents (RSDT/XSDT), pointed to by RSDP

DSDT: AML bytecode and device tree

MADT: APIC table for SMP and interrupt routing

FADT: fixed features, superceded by DSDT in many cas

Dietmar
#730 diderius6 I am very happy, when somebody can explain this lines to me.
Does it mean, we can chose for ourselfes, if we use PIC or APIC method?
And if yes, how has APIC to be set here in which variable
Dietmar

PCI IRQ Routing (PIC vs. APIC mode)
If the _PIC control method is present, the _PRT method should return interrupt routing information based on the value _PIC was called with

Method(_PIC,1)
{
Store(Arg0, PICS)
}
Method(_PRT)
{
if (PICS)
{

}
else
{

}
}
_PIC(0)  => PIC Mode
_PIC(1)  => APIC Mode
#731 infuscomus ⇗ @diderius6

I'm sorry I'm not knowledgeable enough to be of much help for this


Ask around on hackintosh forums, they do DSDT hacking, maybe they can help?
#732 diderius6 I start to understand.
In the DSDT table are for every device 2 entries.
One for APIC mode and one for PIC mode.

In the DSDT of the Asrock B350 board

   Method (_PIC, 1, NotSerialized)  // _PIC: Interrupt Model
   {
       If (Arg0)
       {
           \_SB.DSPI ()
           \_SB.PCI0.NAPE ()
           DBG8 = 0xAA
       }
       Else
       {
           DBG8 = 0xAC
       }

       PICM = Arg0
   }


When (from an unknown place set) Arg0=1, then APIC mode is enabled in DSDT, all devices use APIC.
Is Arg0=0 then the devices in DSDT table all use PIC mode.
This simple means, even without any ACPI, the DSDT and SSDT tables have to be read for to decide APIC or PIC mode.
This information is in Arg0.

Here if APIC mode, then set DBG8 = 0xAA
and for PIC mode DBG8 = 0xAC.
This variable DBG8 is not used in DSDT table, but seems to be needed at other place.

For APIC and for PIC mode, this information is now given via PICM = Arg0
to PICM, means APIC for PICM=1 , PIC for PICM=0
Dietmar

⇗ https://os.inf.tu-dresden.de/papers_ps/tr-atare-2009.pdf
⇗ https://uefi.org/sites/default/files/res..._2_A_Sept29.pdf
#733 infuscomus ⇗ @diderius6

I found old iasl compiler from 2005
and pdf



infuscomus has attached files to this post
#734 diderius6 Multiple APIC Description Table:
The Multiple APIC Description Table (APIC or MADT) is used on systems supporting the APIC to
describes the APIC implementation. Following the Multiple APIC Description Table is a
list of APIC structures that declare the APIC features of the machine.
This is from ACPI 1.b (XP).
Now it is clear: The Asrock fatal1ty ab350 gaming k4 does not support APIC
and because of this there is no MADT table.

But I think, ACPI for XP there is possible,
but needs a lot of handwork
Dietmar
#735 Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #732

Here if APIC mode, then set DBG8 = 0xAA
and for PIC mode DBG8 = 0xAC.
This variable DBG8 is not used in DSDT table, but seems to be needed at other place.


DBG8 is I/O Port 80 (port for POST codes from ancient times), you can skip any operations with it
Zitat
OperationRegion (DEB0, SystemIO, 0x80, One)
Field (DEB0, ByteAcc, NoLock, Preserve)
{
DBG8, 8
}



Zitat
When (from an unknown place set) Arg0=1, then APIC mode is enabled in DSDT, all devices use APIC.
Is Arg0=0 then the devices in DSDT table all use PIC mode.
This simple means, even without any ACPI, the DSDT and SSDT tables have to be read for to decide APIC or PIC mode.
This information is in Arg0.


see apci spec, method _pic() called by OS to inform bios about needed pic mode.
i think method called by HAL.dll, because we have variation of it (pic, apic, apci+apic, mp+*, ...)
in your case if xp want apic, first call _pic(1), then call DSPI(), NAPE()
dspi does some magic with 0x0c00 port (amd specific port ?)

 

Page 50

#736 Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #723

MAPIC - dumpFACS: Invalid Signature 0x00000000 != APIC_SIGNATURE (43495041)


APIC table presented in xsdt list ? in rsdt list too ? table is really empty ?
#737 diderius6 Bug Description

I'm on a Ryzen 1800X and Biostar B350GT5 on bionic kubuntu.

There are lots of AMD-Vi logged events and I get irq crashes or acpi hangups with a 'normal' boot. I got it to boot by disabling IOMMU in the BIOS and adding "iommu=soft" to the kernel booting options in grub.

linux can then detect everything properly (all cores) and I've had zero crashes. The only issue is that it's using software IOMMU which could have a performance penalty because it has to copy all the data of some PCI devices to sub 4G regions.

Alternatively it boots with the kernel option "acpi=off" but only detects a single core/thread.
#738 diderius6 ⇗ @Mov AX, 0xDEAD

The problem is,
that without acpi amli cant read correct the tables.
With rw-everything, even without ACPI and without APIC,
there is the MADT (APIC) table listened.
And because Win7 32 works with full Multiprocessor ACPI,
there must be an APIC list
but under XP it is impossible until now to read the APIC table.
I heard from GEODE and other embedded board manufactures,
who take a deep look in implementic the chipset local APIC for the B350 and B320,
that there may be errors between calling Level-triggered and Edge-triggered Irqs
Dietmar
#739 diderius6 1036 When IOMMU Interrupt Remapping Is Enabled the
Remapped TM (Trigger Mode) Bit Is Incorrectly Ignored
Description
When IOMMU interrupt remapping is enabled the remapped TM (trigger mode) bit in the IOMMU interrupt
remapping table entry is incorrectly ignored, and as a result all remapped interrupts will have TM=0 indicating
edge-triggered mode.
Potential Effect on System
Remapped interrupts with TM=1 indicating level-triggered mode will result in IO devices not receiving EOI
(end of interrupt).
Suggested Workaround
No workaround. Only use devices with edge-triggered interrupts.
Fix Planned
Yes
#740 diderius6 1043 IOMMU May Fail to Deliver an Interrupt or Incorrectly
Send an Interrupt to the Host OS
Description
IOMMU may fail to deliver an interrupt or incorrectly send an interrupt to the host OS under the following
conditions:
The vAPIC (Virtual Advanced Programmable Interrupt Controller) backing page is programmed in IRTE
(Interrupt Remapping Table Entry), and
GA (Guest Virtual APIC) mode is enabled.
Potential Effect on System
Unpredictable system behavior.
Suggested Workaround
System software may contain the workaround for this erratum.
Fix Planned
No fix planned
#741 diderius6 Bug Description

[Impact]
Gigabyte AM4 boards users cannot boot Ubuntu successfully.
Commit linux-gpio/fixes babdc22b0ccf4ef5a3075ce6e4afc26b7a279faf "pinctrl/amd: Use regular interrupt instead of chained" can fix the issue.

[Test Case]
All Gigabyte AM4 boards can reproduce the issue.
With the patch, the issue is resolved, per comment #170.

[Regression Potential]
Regression Potential is low. It limits to rather new AMD platform which has pinctrl-amd.
As the commit log says, use chained interrupt is not a good idea. Use regular interrupt is the correct way.

I also test the patch on an AMD laptop, where its touchpad depends on pinctrl-amd. No regression found.

Original bug report:
I'm trying to run ubuntu on Ryzen 1700x with Gigabyte GA-AB350-gaming-3 motherboard,
and it has a load of problems, starting with not being able to boot normally.

During normal boot, on 16.10 as well as 17.04 beta:
system doesn't boot normally, hangs with a lot of "unexpected irq trap at vector 07"
messages displayed.

Following advice from various places, I've tried:disable cpu freq governor and cpu handling in acpi settings

1. add "acpi=off" to boot params

That helps, allowing me to boot into recovery mode, though it leaves me with system seeing only one core, is really slow and still only boots in recovery mode.

2. Compile own kernel using 4.11.rc1 and disabling cpu freq governor and cpu handling in acpi settings. Boot with "quiet loglevel=3" option.

That gets me even further - system sees all cores now. Still only recovery mode though,
but its enough to get info for this bug report.

Some observed problems:

1. dmesg reports *a lot* of messages like this all the time:

[ 163.362068] ->handle_irq(): ffffffff87a7e090,
[ 163.362081] bad_chained_irq+0x0/0x40
[ 163.362089] ->handle_irq(): ffffffff87a7e090,
[ 163.362090] amd_gpio_irq_handler+0x0/0x200
[ 163.362090] ->irq_data.chip(): ffffffff88587e20,
[ 163.362090] ioapic_ir_chip+0x0/0x120
[ 163.362090] ->action(): ffffffff884601c0
[ 163.362091] IRQ_NOPROBE set
[ 163.362099] ->handle_irq(): ffffffff87a7e090,
[ 163.362099] amd_gpio_irq_handler+0x0/0x200
[ 163.362100] ->irq_data.chip(): ffffffff88587e20,
[ 163.362100] ioapic_ir_chip+0x0/0x120
[ 163.362101] ->action(): ffffffff884601c0

I've tried to redirect dmesg to a file, stopped after a short while, it generated 400M of those.

2. Systemd cannot start journald. Perhaps because it cannot cope with amount of kernel logs?

3. Looking at pci, I've noticed something called AMDI0040 (/sys/bus/acpi/devices/AMDI0040, path=_SB_.EMMC), among AMDI0010, AMDI0020, AMDI0030. Those however are mentioned in kernel source, kernel and google are completely silent about AMDI0040.

Phoronix tested ryzen using different motherboard, and it worked better (though not well),
so I suspect it is an issue with motherboard.
---
ApportVersion: 2.20.4-0ubuntu2
Architecture: amd64
DistroRelease: Ubuntu 17.04
InstallationDate: Installed on 2015-08-06 (581 days ago)
InstallationMedia: Kubuntu 15.10 "Wily Werewolf" - Alpha amd64 (20150728.1)
Package: linux (not installed)
ProcEnviron:
LANGUAGE=en_US:en
TERM=linux
PATH=(custom, no user)
LANG=en_US.UTF-8
SHELL=/bin/bash
Tags: zesty
Uname: Linux 4.11.0-rc1-custom x86_64
UnreportableReason: The running kernel is not an Ubuntu kernel
UpgradeStatus: Upgraded to zesty on 2017-03-03 (6 days ago)
UserGroups:

_MarkForUpload: True
#742 diderius6 Lukas Kahnert 2018-04-26 15:13:12 UTC

Created attachment 275599 [details]
Disassembled ACPI Table

I tried to get the touchscreen work for HP Envy x360(Ryzen 2500u) on current kernel and found out that the Interrupt for the GPIO driver get wrong detected and configured. Maybe a typical bug in the ACPI table from BIOS.
In ACPI Table the IRQ is defined as
Interrupt (ResourceConsumer, Level, ActiveLow, Shared, ,, )
{
0x00000007,
}

but in dmesg it prints
[    0.098531] ACPI: IRQ 7 override to edge, high

I just made a dirty hack to force "level, low" for this IRQ (and a change related to other bug) and the touchscreen works as expected.
But it needs a true fix in the hardware detection and configuration.
#743 diderius6 The device GPIO is also in the DSDT of the Asrock B350 board.
And there it comes together with AMDs own saying:
Only use devices with edge-triggered interrupts.
        Device (GPIO)
{
Name (_HID, "AMDI0030") // _HID: Hardware ID
Name (_CID, "AMDI0030") // _CID: Compatible ID
Name (_UID, Zero) // _UID: Unique ID
Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
{
Name (RBUF, ResourceTemplate ()
{
Interrupt (ResourceConsumer, Level, ActiveLow, Shared, ,, )
{
0x00000007,
}
Memory32Fixed (ReadWrite,
0xFED81500, // Address Base
0x00000400, // Address Length
)
})
Return (RBUF) /* \_SB_.GPIO._CRS.RBUF */
}

Method (_STA, 0, NotSerialized) // _STA: Status
{
If ((TSOS >= 0x70))
{
Return (0x0F)
}
Else
{
Return (Zero)
}
}
}
#744 diderius6 May be this will work and that's all :))
{
Name (RBUF, ResourceTemplate ()
{
Interrupt (ResourceConsumer, Edge, ActiveHigh, Shared, ,, )
{
0x00000007,
}

Dietmar
#745 diderius6 I replace at 9 places (just all) in DSDT from Asrock B350

Level, ActiveLow,  => Edge, ActiveHigh,

and flash Bios.
But the BSOD is still the same 0x7E 0xc0000005 after
*** Assertion failed: PciInterfacesInstantiated
***   Source File: d:\xpsp\base\busdrv\acpi\driver\nt\irqarb.c, line 3512

But I think, we are on the right way.
I disabled IOMMU in Bios 3.30.
The problems are in Irqs
Dietmar
#746 diderius6 Win7 32 bit starts with the changed Irqs as normal.
I make with rw-everything a read out of all ACPI tables from the Asrock board B350.
And, at the end of the APIC table you can find the entry
Interrupt Source Override Structure
Type 0x02 (2)
Length 0x0A (10)
Bus 0x00 (0) - ISA
Source IRQ9
System Interrupt 0x00000009 (9)
Flags 0x000F
Polarity 0x03 - Active low
Trigger Mode 0x03 - Level triggered

Dietmar

PS: But I do not know, how to change this table in Bios to Edge, ActiveHigh



diderius6 has attached files to this post
#747 diderius6 I succeed to hack the APIC table,
so as wished with only Edge, ActiveHigh entries,
here for Irq 9.
Now, I look for somebody,
who can load this APIC (MADT) table up during boot of XP
Dietmar

EDIT: New file, checksum repaired.



diderius6 has attached files to this post
#748 diderius6 ⇗ @infuscomus

Make a try with this FACP
Dietmar



diderius6 has attached files to this post
#749 diderius6 Can the MADT table be loaded with the Microsoft asl.exe tool (vers. 4 from 2009)?

asl.exe /loadtable apic.aml

Dietmar

PS: You need to set the version of the table higher than before, if you want your new table loaded.
#750 infuscomus ⇗ @diderius6

I tried your APIC and FACP tables with grub2

instant restart, no BSOD

 

Page 51

#751 diderius6 ⇗ @infuscomus
Please try this new DSDT also.
I deleted all timers there and set all Irq to Edge ActiveHigh
Dietmar

PS: And make mix, 1 table, 2 tables, all 3 tables.



diderius6 has attached files to this post
#752 infuscomus ⇗ @diderius6

some tests

APIC only - instant restart
FACP only - 7E BSOD
DSDT only - arcdisp.c error - FACP must come before DSDT
FACP + DSDT - BSOD A5 0x02
APIC + any table - instant restart

edit:

Oh, you have 8 core processor right? I have 4 core - maybe your APIC is enabling processor cores i don't have

edit2:
maybe not
edited my own APIC, same result -instant restart
#753 diderius6 ⇗ @infuscomus
Thanks a lot for testing!
May be, that the APIC table cant be loaded via this way
Dietmar

PS: Yes, the Ryzen 1700, which I have, has 8 cores, 16 threads.
Today I will test the Microsoft way for upload ACPI tables via

asl /loadtable dsdt.aml

For this, I change the versionsnumber of the table +1.

Also I will try 2 other AM4 processors on the Asrock B350 board

AM4 Athlon X4 950 (this one has no integrated graphik)
AM4 A8 A8-9600
#754 infuscomus ⇗ @diderius6

This may eventually work- grub2 is loading APIC table at least

I made this APIC table - It freezes on "Setup is Starting Windows"



infuscomus has attached files to this post
#755 diderius6 ⇗ @infuscomus

I see,
that you use very old compiler.
Who knows..

I changed for you the IRQ mode there.

Compile it with the old compiler and try
Dietmar



diderius6 has attached files to this post
#756 diderius6 I loaded up all 3 new tables with the Microsoft tool asl.exe.
In each of the 3 tables tool asl.exe answeres, that table has correct
been overridden.
For me is the problem, that I cant prove this,
because rw-everything told always the same.
But may be rw-everything just cant read new tables.

Something changed to better:
windbg tells
0: kd> !acpiirqarb 
ACPI IRQ Arbiter: fffffffff75ae2a0 Extension: ffffffff8b04c0f8

Link nodes in use: (list head at 8b04c0f88b04c0f8 )

IRQ Hash Table (at ffffffffe19fe890 ):
0009 Count/temp: 00/01 Flags: (edge high) TempFlags(edge high)

Dietmar
#757 diderius6 Nice news:
BSOD 0x7E 0xc0000005 is complete gone.
I think, the strange device ACPI\PNP0A08-0
now gives the new BSOD 0xA5 0x02

Dietmar

EDIT: May be, ACPI\PNP0A08-0 has something to do with PciExpress.
#758 infuscomus ⇗ @diderius6

I edited APIC a bit more, no more freeze or restart, but I'm back to BSOD A5 02 where I started.



infuscomus has attached files to this post
#759 diderius6 I deleted

Name (_HID, EisaId ("PNP0A08") /* PCI Express Bus */)  // _HID: Hardware ID


in DSDT, set -r4 for the reversnr of this DSDT table and overload DSDT table new with asl.exe.
Even the asl.exe told, that the DSDT table has been succesfull overridden,
no prove for this.

Now the line
*** Assertion failed: PciInterfacesInstantiated
***   Source File: d:\xpsp\base\busdrv\acpi\driver\nt\irqarb.c, line 3512

appears again in windbg
Dietmar
#760 diderius6 ⇗ @infuscomus
Ok, I read whole "with new tables "Bios out.
The DSDT does not change at all,
so question remains, for what the Microsoft asl.exe is good..
Dietmar

EDIT: Oho, I make a mistake. The Bios tables are all as before.
BUT all the new ACPI tables are in some magic way stored in registry(!) of XP.
Until now, I do not find them there, but for sure they are, cool.
#761 diderius6 Here is the prove:
Registry without new tables gives via windbg
ACPI IRQ Arbiter:  fffffffff75ae2a0   Extension: ffffffff8b0d3520
Link nodes in use: (list head at 8b0d35208b0d3520 )
IRQ Hash Table (at ffffffffe19fe890 ):
0009 Count/temp: 00/01 Flags: (level low) TempFlags(level low)

And with new tables loaded via asl.exe in some magic way to registry (NOT(!) Bios)
0: kd> !acpiirqarb
ACPI IRQ Arbiter: fffffffff75ae2a0 Extension: ffffffff8b04c0f8
Link nodes in use: (list head at 8b04c0f88b04c0f8 )
IRQ Hash Table (at ffffffffe19fe890 ):
0009 Count/temp: 00/01 Flags: (edge high) TempFlags(edge high)

Dietmar
#762 infuscomus ⇗ @diderius6

which one gives A5 0x02 BSOD?
#763 diderius6 ⇗ @infuscomus

windbg told A5 0x02 BSOD because of
ACPI\PNP0A08-0

Only ACPI\PNP0A08 is listed in DSDT from the Asrock board,
it is in comment there written as PCIe device.

I take a look in the DSDT from the Am3+ Sabertooth board,
there this line with PNP0A08 does not exist.
And the AM3+ Sabertooth board DSDT is even on AM4 much more XP friendly
than the DSDT from Asrock B350
Dietmar
#764 infuscomus ⇗ @diderius6

XP Friendly

     Device (PCI0)
       {
           Name (_HID, EisaId ("PNP0A03") /* PCI Bus */)  // _HID: Hardware ID
           Name (_ADR, 0x00180000)  // _ADR: Address
           Method (^BN00, 0, NotSerialized)
           {
               Return (Zero)
           }

           Method (_BBN, 0, NotSerialized)  // _BBN: BIOS Bus Number
           {
               Return (BN00 ())
           }
#765 diderius6 ⇗ @infuscomus

I can change with asl.exe from Microsoft ACPI tables
as much as I want.
I changed nearly everything, but always the message

*** Assertion failed: PciInterfacesInstantiated
***   Source File: d:\xpsp\base\busdrv\acpi\driver\nt\irqarb.c, line 3512

appears. The acpi.sys driver is loaded, is started
all seems ok but isnt

Dietmar

PS: I noticed, that the adress for the DSDT table in XP is a little bit different from Win7.
Apic table and FACP are identic in XP and Win7. In Win7 ACPI multiprocessor starts, in XP not.

Now I am sure, that the error is NOT in APIC or in FACP table.

 

Page 52

#766 diderius6 May be the problem is, that there is no XP driver
for the IOMMU device.
Can the option  "iommu=soft" also for XP be given
in grub before boot?
Dietmar
#767 Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #765

*** Assertion failed: PciInterfacesInstantiated
***   Source File: d:\xpsp\base\busdrv\acpi\driver\nt\irqarb.c, line 3512


proper init PciInterfacesInstantiated variable is in AcpiArbInitializePciRouting()
AcpiArbInitializePciRouting() do IRP request to self (i mean acpi.sys)
some handler inside acpi.sys do jobs with this request and return "not zero"
not zero mean variable still be zero and we skip calling magic "call    dword ptr [esi+8]"
#768 diderius6 ⇗ @Mov AX, 0xDEAD

I think I understand idea for hack:
AcpiArbInitializePciRouting() gives a value 0 back, when all is ok.
And after some work in acpi.sys this work gives a value (starting from 0) not 0.
If this work gives 0, we got BSOD.

But I do not find function AcpiArbInitializePciRouting() and its result.
I can only hack the work in acpi.sys, that the message *** Assertion failed: PciInterfacesInstantiated
is killed,
but then I get again BSOD 0x7E 0xc0000005,
because edi is empty. So, the pointer AcpiArbCrackPRT (I also dont find this word in acpi.sys) is still called

FAULTING_IP:
ACPI!AcpiArbCrackPRT+113
f7578561 ff5710          call    dword ptr [edi+10h]

I dont know, how to set the variable given from AcpiArbInitializePciRouting()  always = 0
Dietmar



diderius6 has attached files to this post
#769 infuscomus ⇗ @diderius6

could the problem be in pci.sys? or is pci.sys never called?
#770 diderius6 ⇗ @infuscomus

Where the real problem is lying in, I dont know, may be errors in Irq settings from chipset B350.
But may be, this can be hacked in acpi.sys.
At the moment I think about, how to change in acpi.sys the conditional jump

jnz     loc_21568  =>  jmp     loc_21568

This is not so easy as before, because this change means in HEX

0F 85 83 00 00 00 => ?? ?? ?? ?? ?? ??

Dietmar


PS: May be ?? ?? ?? ?? ?? ?? = EB 84 90 90 90 90
#771 infuscomus ⇗ @diderius6

where is jnz loc_21568?
is it in AcpiArbInitializePciRouting?
#772 diderius6 ⇗ @infuscomus

Look for Hex values in Debug Acpi.sys
02 0B C3 0F 85 83 00 00 00 80 3D

This is the right place I think, which we can hack.
The conditional jump has to become a forced jump
Dietmar
#773 infuscomus ⇗ @diderius6

in here?

#774 diderius6 ⇗ @infuscomus

This looks complete other than with Ida Pro, but it is the place, which I mean
Dietmar
#775 diderius6 ⇗ @infuscomus

I change

02 0B C3 0F 85 83 00 00 00 80 3D  =>
02 0B C3 E9 84 00 00 00 90 80 3D

now I test
Dietmar
#776 diderius6 First BSOD is gone, but now I get 0x7B, brrr

Dietmar


Microsoft (R) Windows Debugger Version 6.12.0002.633 X86
Copyright (c) Microsoft Corporation. All rights reserved.

Opened \\.\com1
Waiting to reconnect...
Connected to Windows XP 2600 x86 compatible target at (Fri Jun 14 15:46:56.906 2019 (UTC + 2:00)), ptr64 FALSE
Kernel Debugger connection established.
WARNING: Inaccessible path: 'C:\WinDDK\7600.16385.1\src\openfabricsall\nvme13\nvme\objchk_wnet_x86\i386'
Symbol search path is: C:\WinDDK\7600.16385.1\src\openfabricsall\nvme13\nvme\objchk_wnet_x86\i386;SRV*c:\symbols
*⇗ http://msdl.microsoft.com/download/symbols;C:\symbols
Executable search path is: C:\localsymbols
Windows XP Kernel Version 2600 MP (1 procs) Checked x86 compatible
Built by: 2600.xpsp.080413-2133
Machine Name:
Kernel base = 0x80a02000 PsLoadedModuleList = 0x80af5708
System Uptime: not available
WARNING: Inaccessible path: 'C:\WinDDK\7600.16385.1\src\openfabricsall\nvme13\nvme\objchk_wnet_x86\i386'
Fri Jun 14 15:46:59.125 2019 (UTC + 2:00): MM: Loader/HAL memory block indicates large pages cannot be used for 80A02000->80D8DFFF
Fri Jun 14 15:46:59.125 2019 (UTC + 2:00):
Fri Jun 14 15:46:59.125 2019 (UTC + 2:00): MM: Loader/HAL memory block indicates large pages cannot be used for 80100000->8012777F
Fri Jun 14 15:47:05.687 2019 (UTC + 2:00):
*** Assertion failed: IopInitHalResources == NULL
*** Source File: d:\xpsp\base\ntos\io\pnpmgr\pnpinit.c, line 1455

Fri Jun 14 15:47:05.687 2019 (UTC + 2:00):
Fri Jun 14 15:47:05.703 2019 (UTC + 2:00): Break repeatedly, break Once, Ignore, terminate Process, or terminate Thread (boipt)? ii
ii

Fri Jun 14 15:47:05.703 2019 (UTC + 2:00):
Fri Jun 14 15:47:40.531 2019 (UTC + 2:00):
*** Assertion failed: IopInitReservedResourceList == NULL
*** Source File: d:\xpsp\base\ntos\io\pnpmgr\pnpinit.c, line 1456

Fri Jun 14 15:47:40.531 2019 (UTC + 2:00):
Fri Jun 14 15:47:40.546 2019 (UTC + 2:00): Break repeatedly, break Once, Ignore, terminate Process, or terminate Thread (boipt)? i
i

Fri Jun 14 15:47:40.546 2019 (UTC + 2:00):
Fri Jun 14 15:47:43.812 2019 (UTC + 2:00):
*** Fatal System Error: 0x0000007b
(0xF789E518,0xC0000034,0x00000000,0x00000000)

Fri Jun 14 15:47:43.843 2019 (UTC + 2:00): Break instruction exception - code 80000003 (first chance)

A fatal system error has occurred.
Debugger entered on first try; Bugcheck callbacks have not been invoked.

A fatal system error has occurred.

Connected to Windows XP 2600 x86 compatible target at (Fri Jun 14 15:47:43.984 2019 (UTC + 2:00)), ptr64 FALSE
Loading Kernel Symbols
...........................
Loading User Symbols

*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

Use !analyze -v to get detailed debugging information.

BugCheck 7B, {f789e518, c0000034, 0, 0}

Probably caused by : ntkrnlmp.exe ( nt!IopMarkBootPartition+f5 )

Followup: MachineOwner
---------

nt!RtlpBreakWithStatusInstruction:
80ab9138 cc int 3
0: kd> !analyze -v
*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

INACCESSIBLE_BOOT_DEVICE (7b)
During the initialization of the I/O system, it is possible that the driver
for the boot device failed to initialize the device that the system is
attempting to boot from, or it is possible for the file system that is
supposed to read that device to either fail its initialization or to simply
not recognize the data on the boot device as a file system structure that
it recognizes. In the former case, the argument (#1) is the address of a
Unicode string data structure that is the ARC name of the device from which
the boot was being attempted. In the latter case, the argument (#1) is the
address of the device object that could not be mounted.
If this is the initial setup of the system, then this error can occur if
the system was installed on an unsupported disk or SCSI controller. Note
that some controllers are supported only by drivers which are in the Windows
Driver Library (WDL) which requires the user to do a custom install. See
the Windows Driver Library for more information.
This error can also be caused by the installation of a new SCSI adapter or
disk controller or repartitioning the disk with the system partition. If
this is the case, on x86 systems the boot.ini file must be edited or on ARC
systems setup must be run. See the "Advanced Server System Administrator's
User Guide" for information on changing boot.ini.
If the argument is a pointer to an ARC name string, then the format of the
first two (and in this case only) longwords will be:
USHORT Length;
USHORT MaximumLength;
PWSTR Buffer;
That is, the first longword will contain something like 00800020 where 20
is the actual length of the Unicode string, and the next longword will
contain the address of buffer. This address will be in system space, so
the high order bit will be set.
If the argument is a pointer to a device object, then the format of the first
word will be:
USHORT Type;
That is, the first word will contain a 0003, where the Type code will ALWAYS
be 0003.
Note that this makes it immediately obvious whether the argument is a pointer
to an ARC name string or a device object, since a Unicode string can never
have an odd number of bytes, and a device object will always have a Type
code of 3.
Arguments:
Arg1: f789e518, Pointer to the device object or Unicode string of ARC name
Arg2: c0000034
Arg3: 00000000
Arg4: 00000000

Debugging Details:
------------------


DEFAULT_BUCKET_ID: DRIVER_FAULT

BUGCHECK_STR: 0x7B

PROCESS_NAME: System

LAST_CONTROL_TRANSFER: from 80a30d41 to 80ab9138

STACK_TEXT:
f789e080 80a30d41 00000003 f789e3dc 00000000 nt!RtlpBreakWithStatusInstruction
f789e0cc 80a319ac 00000003 80085000 e10171f8 nt!KiBugCheckDebugBreak+0x19
f789e4ac 80a31f3d 0000007b f789e518 c0000034 nt!KeBugCheck2+0x574
f789e4cc 80d1e863 0000007b f789e518 c0000034 nt!KeBugCheckEx+0x1b
f789e634 80d240f6 80085000 00000000 80085000 nt!IopMarkBootPartition+0xf5
f789e684 80d201f1 80085000 f789e6a0 00034000 nt!IopInitializeBootDrivers+0x53e
f789e830 80d1d940 80085000 00000000 8b0c5020 nt!IoInitSystem+0x82d
f789edac 80bc761c 80085000 00000000 00000000 nt!Phase1Initialization+0xb12
f789eddc 80ad9b52 80d1ce2e 80085000 00000000 nt!PspSystemThreadStartup+0x34
00000000 00000000 00000000 00000000 00000000 nt!KiThreadStartup+0x16


STACK_COMMAND: kb

FOLLOWUP_IP:
nt!IopMarkBootPartition+f5
80d1e863 8d85e0feffff lea eax,[ebp-120h]

SYMBOL_STACK_INDEX: 4

SYMBOL_NAME: nt!IopMarkBootPartition+f5

FOLLOWUP_NAME: MachineOwner

MODULE_NAME: nt

IMAGE_NAME: ntkrnlmp.exe

DEBUG_FLR_IMAGE_TIMESTAMP: 4802b3ce

FAILURE_BUCKET_ID: 0x7B_nt!IopMarkBootPartition+f5

BUCKET_ID: 0x7B_nt!IopMarkBootPartition+f5

Followup: MachineOwner
---------

0: kd> !acpiinf
Sorry: Unable to get ACPI!AcpiInformation.
dumpAcpiInformation: Could not read ACPI!AcpiInformation
0: kd> !lm
No export lm found
0: kd> lm
start end module name
80100000 80127780 HAL1 (deferred)
80a02000 80d8e000 nt (pdb symbols) c:\symbols\ntkrnlmp.pdb\23BD599C4BEE49C0B7E2E3FD595D2ACB1\ntkrnlmp.pdb
f7412000 f7428880 KSecDD (deferred)
f7429000 f743af00 sr (deferred)
f743b000 f745ab00 fltMgr (deferred)
f745b000 f749b000 storport (deferred)
f749b000 f74b0000 nvme (deferred)
f74b0000 f74c7880 SCSIPORT (deferred)
f74c8000 f74df900 atapi (deferred)
f74e0000 f7505a00 dmio (deferred)
f7506000 f7524d80 ftdisk (deferred)
f75c5000 f75d5a80 pci (deferred)
f75f7000 f7600300 isapnp (deferred)
f7607000 f7611580 MountMgr (deferred)
f7617000 f7624200 VolSnap (deferred)
f7627000 f7637000 asahci32 (deferred)
f7637000 f763fe00 disk (deferred)
f7647000 f7653180 CLASSPNP (deferred)
f7707000 f770d180 PCIIDEX (deferred)
f770f000 f7713d00 PartMgr (deferred)
f7850000 f7869b80 Mup (deferred)
f786a000 f7896980 NDIS (deferred)
f7897000 f789a000 BOOTVID (deferred)
f7987000 f7988b80 kdcom (deferred)
f7989000 f798a100 WMILIB (deferred)
f798b000 f798c700 dmload (deferred)
f7a4f000 f7a4fd00 pciide (deferred)
f7b52000 f7bde600 Ntfs (deferred)
0: kd> !devnode 0 1
Dumping IopRootDeviceNode (= 0x8b08ecc8)
DevNode 0x8b08ecc8 for PDO 0x8b08ee10
InstancePath is "HTREE\ROOT\0"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8b08e8f0 for PDO 0x8b08ea50
InstancePath is "Root\ACPI_HAL\0000"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8b0e2358 for PDO 0x8b0e3830
InstancePath is "ACPI_HAL\PNP0C08\0"
ServiceName is "ACPI"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8b0e7db0 for PDO 0x8b0e7f10
InstancePath is "Root\dmio\0000"
ServiceName is "dmio"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8b0e7b58 for PDO 0x8b0e7cb8
InstancePath is "Root\ftdisk\0000"
ServiceName is "ftdisk"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8b0e7900 for PDO 0x8b0e7a60
InstancePath is "Root\LEGACY_ACPI\0000"
ServiceName is "ACPI"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8b0e76a8 for PDO 0x8b0e7808
InstancePath is "Root\LEGACY_AFD\0000"
ServiceName is "AFD"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8b0e7450 for PDO 0x8b0e75b0
InstancePath is "Root\LEGACY_AMPA\0000"
ServiceName is "ampa"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8b0e71f8 for PDO 0x8b0e7358
InstancePath is "Root\LEGACY_ATAPI\0000"
ServiceName is "atapi"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8b08d008 for PDO 0x8b0e70c0
InstancePath is "Root\LEGACY_BEEP\0000"
ServiceName is "Beep"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8b08dc88 for PDO 0x8b08dde8
InstancePath is "Root\LEGACY_DMBOOT\0000"
ServiceName is "dmboot"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8b08da30 for PDO 0x8b08db90
InstancePath is "Root\LEGACY_DMLOAD\0000"
ServiceName is "dmload"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8b08d7d8 for PDO 0x8b08d938
InstancePath is "Root\LEGACY_FIPS\0000"
ServiceName is "Fips"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8b08d530 for PDO 0x8b08d690
InstancePath is "Root\LEGACY_GPC\0000"
ServiceName is "Gpc"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8b08d2d8 for PDO 0x8b08d438
InstancePath is "Root\LEGACY_HTTP\0000"
ServiceName is "HTTP"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8b0e6008 for PDO 0x8b08d1e0
InstancePath is "Root\LEGACY_IPNAT\0000"
ServiceName is "IpNat"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8b0e6db0 for PDO 0x8b0e6f10
InstancePath is "Root\LEGACY_IPSEC\0000"
ServiceName is "IPSec"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8b0e6b58 for PDO 0x8b0e6cb8
InstancePath is "Root\LEGACY_KSECDD\0000"
ServiceName is "ksecdd"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8b0e6900 for PDO 0x8b0e6a60
InstancePath is "Root\LEGACY_MNMDD\0000"
ServiceName is "mnmdd"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8b0e66a8 for PDO 0x8b0e6808
InstancePath is "Root\LEGACY_MOUNTMGR\0000"
ServiceName is "mountmgr"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8b0e6450 for PDO 0x8b0e65b0
InstancePath is "Root\LEGACY_NDIS\0000"
ServiceName is "NDIS"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8b0e61f8 for PDO 0x8b0e6358
InstancePath is "Root\LEGACY_NDISTAPI\0000"
ServiceName is "NdisTapi"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8b08ced8 for PDO 0x8b08c038
InstancePath is "Root\LEGACY_NDISUIO\0000"
ServiceName is "Ndisuio"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8b08cc80 for PDO 0x8b08cde0
InstancePath is "Root\LEGACY_NDPROXY\0000"
ServiceName is "NDProxy"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8b08ca28 for PDO 0x8b08cb88
InstancePath is "Root\LEGACY_NETBT\0000"
ServiceName is "NetBT"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8b08c7d0 for PDO 0x8b08c930
InstancePath is "Root\LEGACY_NULL\0000"
ServiceName is "Null"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8b08c578 for PDO 0x8b08c6d8
InstancePath is "Root\LEGACY_NVME\0000"
ServiceName is "nvme"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8b08c320 for PDO 0x8b08c480
InstancePath is "Root\LEGACY_PARTMGR\0000"
ServiceName is "PartMgr"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8b0e5008 for PDO 0x8b08c228
InstancePath is "Root\LEGACY_PARVDM\0000"
ServiceName is "ParVdm"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8b0e5db0 for PDO 0x8b0e5f10
InstancePath is "Root\LEGACY_PCIIDE\0000"
ServiceName is "PCIIde"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8b0e5b58 for PDO 0x8b0e5cb8
InstancePath is "Root\LEGACY_RASACD\0000"
ServiceName is "RasAcd"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8b0e5900 for PDO 0x8b0e5a60
InstancePath is "Root\LEGACY_RDPCDD\0000"
ServiceName is "RDPCDD"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8b0e56a8 for PDO 0x8b0e5808
InstancePath is "Root\LEGACY_TCPIP\0000"
ServiceName is "Tcpip"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8b0e5450 for PDO 0x8b0e55b0
InstancePath is "Root\LEGACY_VGASAVE\0000"
ServiceName is "VgaSave"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8b0e51f8 for PDO 0x8b0e5358
InstancePath is "Root\LEGACY_VOLSNAP\0000"
ServiceName is "VolSnap"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8b08bed8 for PDO 0x8b08b038
InstancePath is "Root\LEGACY_WANARP\0000"
ServiceName is "Wanarp"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8b08bc80 for PDO 0x8b08bde0
InstancePath is "Root\MEDIA\MS_MMACM"
ServiceName is "audstub"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8b08ba28 for PDO 0x8b08bb88
InstancePath is "Root\MEDIA\MS_MMDRV"
ServiceName is "audstub"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8b08b7d0 for PDO 0x8b08b930
InstancePath is "Root\MEDIA\MS_MMMCI"
ServiceName is "audstub"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8b08b578 for PDO 0x8b08b6d8
InstancePath is "Root\MEDIA\MS_MMVCD"
ServiceName is "audstub"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8b08b320 for PDO 0x8b08b480
InstancePath is "Root\MEDIA\MS_MMVID"
ServiceName is "audstub"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8b0e4008 for PDO 0x8b08b228
InstancePath is "Root\MS_L2TPMINIPORT\0000"
ServiceName is "Rasl2tp"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8b0e4db0 for PDO 0x8b0e4f10
InstancePath is "Root\MS_NDISWANIP\0000"
ServiceName is "NdisWan"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8b0e4b58 for PDO 0x8b0e4cb8
InstancePath is "Root\MS_PPPOEMINIPORT\0000"
ServiceName is "RasPppoe"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8b0e4900 for PDO 0x8b0e4a60
InstancePath is "Root\MS_PPTPMINIPORT\0000"
ServiceName is "PptpMiniport"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8b0e46a8 for PDO 0x8b0e4808
InstancePath is "Root\MS_PSCHEDMP\0000"
ServiceName is "PSched"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8b0e4450 for PDO 0x8b0e45b0
InstancePath is "Root\MS_PSCHEDMP\0001"
ServiceName is "PSched"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8b0e41f8 for PDO 0x8b0e4358
InstancePath is "Root\MS_PSCHEDMP\0002"
ServiceName is "PSched"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8b08aed8 for PDO 0x8b08a038
InstancePath is "Root\MS_PTIMINIPORT\0000"
ServiceName is "Raspti"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8b08ac80 for PDO 0x8b08ade0
InstancePath is "Root\PCI_HAL\0000"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8b08aa28 for PDO 0x8b08ab88
InstancePath is "Root\RDPDR\0000"
ServiceName is "rdpdr"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8b08a7d0 for PDO 0x8b08a930
InstancePath is "Root\RDP_KBD\0000"
ServiceName is "TermDD"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8b08a578 for PDO 0x8b08a6d8
InstancePath is "Root\RDP_MOU\0000"
ServiceName is "TermDD"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8b08a320 for PDO 0x8b08a480
InstancePath is "Root\SYSTEM\0000"
ServiceName is "swenum"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8b0e3008 for PDO 0x8b08a228
InstancePath is "Root\SYSTEM\0001"
ServiceName is "update"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8b0e3db0 for PDO 0x8b0e3f10
InstancePath is "Root\SYSTEM\0002"
ServiceName is "mssmbios"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8b0e16d0 for PDO 0x8b088390
InstancePath is "Root\*PNP0501\1_0_17_0_0_0"
ServiceName is "Serial"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
  
#777 infuscomus ⇗ @diderius6

does uniata driver or amd sata 1.2.1.321 driver fix 7B BSOD?
#778 diderius6 ⇗ @infuscomus, ⇗ @Mov AX, 0xDEAD

Yesssssssssssssssssssssssssssssssaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa ,

I got it to work full XP SP3 ACPI Multiprocessor with Ryzen 1700 cpu

8 cpu cores, 16 Threads on the Asrock fatal1ty ab350 gaming k4 board

Dietmar

#779 infuscomus Awesome!

can you help me to do the same?
#780 diderius6 ⇗ @infuscomus
Yes, of course.
Few days ago, I take a look at the source code from Debug acpi.sys for XP SP3.
My problem there was, that I found 2 places for the messages, that windbg always
gives with
*** Assertion failed: PciInterfacesInstantiated
*** Source File: d:\xpsp\base\busdrv\acpi\driver\nt\irqarb.c, line 3512

But today in the morning I get message from ⇗ @Mov AX, 0xDEAD,
that the value 0 is stored only in 1 variable.
Rest is easy, tell XP that this is always 0
Dietmar

PS: I do not change anything in Bios. I do not load any extra Acpi table.
I only use my hacked acpi.sys (may be this can be done with the nondebug version of acpi.sys also)
and after your question about BSOD 0x7B I came to the idea to use my nvme device for boot,
thats all.





diderius6 has attached files to this post

 

Page 53

#781 infuscomus ⇗ @diderius6

I receive different 7E BSOD



are you sure you are running unmodified BIOS?
I'm on unmodified 5.40 bios (has CreateQwordField)
#782 diderius6 ⇗ @infuscomus

This message I know.
It depends on Bios settings.
Now I flash Bios 3.30 new,
for to make 100% sure,
that in Bios is nothing changed
Dietmar
#783 diderius6 ⇗ @infuscomus

I flashed Bios 3.30 new
Acpi Multiprocessor works
Dietmar

PS: Now I try 5.40 with bridge Bios 3.40.
5.70 I do not use, because NO way back via Bios updater!!!
#784 diderius6 ⇗ @infuscomus

Bios 3.40 works also.
Now I try 5.40
Dietmar
#785 infuscomus ⇗ @diderius6

5.40 has CreateQwordField, so you might need to make a patch for ACPI 5048
#786 diderius6 ⇗ @infuscomus

The problem is,
that nvme boot not works on Bios 5.40.
I try from normal harddisk
Dietmar

EDIT: From harddisk I get BSOD 0xA5 0x11,
this means Acpi cant be loaded,
so I need to look for to use my other acpi.sys drivers
Dietmar
#787 infuscomus ⇗ @diderius6

Can you patch non-debug XP or 2003 acpi.sys driver or would ACPI 5048 be the best driver?
#788 diderius6 ⇗ @infuscomus

For me,
best work my own modified acpi.sys from XP SP3.
But until now, I do not succeed to find the new hackplace in this file,
because no names as in debugversion and identical Hexvalues are not there
Dietmar
#789 diderius6 ⇗ @infuscomus

I get now Acpi Multiprocessor to work via normal harddisk at asm106x port.
Bios I flash back for this to vers. 3.30
Dietmar

PS: And how nice, irqs run up to 55.
#790 infuscomus
Zitat von ⇗ diderius6 im Beitrag ¶ #788
@infuscomus

For me,
best work my own modified acpi.sys from XP SP3.
But until now, I do not succeed to find the new hackplace in this file,
because no names as in debugversion and identical Hexvalues are not there
Dietmar


⇗ @diderius6
It's in AcpiArbCrackPRT correct?

Try Relyze disassembler, it shows names

⇗ https://www.relyze.com/download.html
#791 infuscomus ⇗ @diderius6

I think in ACPI 5048, using relyze, AcpiArbCrackPRT is func_0xDFEE
#792 diderius6 ⇗ @infuscomus

This version of Relyze does not work under XP
Dietmar
#793 infuscomus ⇗ @diderius6

do you have any PCs with newer windows to install Relyze disassembler onto?
#794 Mov AX, 0xDEAD
Zitat von ⇗ infuscomus im Beitrag ¶ #790

Try Relyze disassembler, it shows names


Names stored in PDB, without .pdb any disasm show only name of entry point
#795 infuscomus ⇗ @Mov AX, 0xDEAD

well, for whatever reason, Relyze always seems to give me function names (except in acpi.sys 5048)

 

Page 54

#796 diderius6 I have all the Symbols for acpi.sys
but Ida pro shows me no text, only for the debug version
Dietmar

EDIT: I put the acpi.pdb and the acpi.sys file in one folder
and force Ida Pro to use it, now I have text, as much as never before:))!

EDIT2: On the normal acpi.sys this hack seems not to work.

Dietmar
#797 infuscomus ⇗ @diderius6

There are lots of instances of _PciInterfacesInstantiated - do we need to jmp them all?
#798 diderius6 ⇗ @infuscomus

Good question.
Very evil structurated is normal acpi.sys.
The debug version of acpi.sys is clear.
And also funny: Because I have had very small text, not the variable
has been written in code from Ida Pro but only naked Hex with some comments for Debug version.
Because I was used to read this, it was much easier for me than now with
the soso much text via acpi.pdb for the normal acpi.sys
Dietmar



diderius6 has attached files to this post
#799 infuscomus ⇗ @diderius6

I think in non-debug XP acpi.sys

0000BD20  C2 75 4A 8D 55 8B 52 8D 55 8C 52

C2 75 4A 8D 55 8B 52 8D 55 8C 52 =>
C2 EB 4A 8D 55 8B 52 8D 55 8C 52

or in 5048

0000D440  D2 0B C2 75 4A 8D 55 8B 52 8D  

D2 0B C2 75 4A 8D 55 8B 52 8D  =>
D2 0B C2 EB 4A 8D 55 8B 52 8D  

what do you think?
#800 diderius6 ⇗ @infuscomus

I am not sure about. I make 2 different tries, both fail.
Last try was with change on the normal (german) acpi.sys

02 00 75 06 53 E8  => 02 00 75 00 53 E8  and at the same time also
0B C1 74 1D 38 0D => 0B C1 74 00 38 0D

Until the structure of this acpi.sys is not clear, a lot of try and error
we will have
Dietmar
#801 infuscomus ⇗ @diderius6

can you upload AML of your working XP DSDT too for me to try?
#802 infuscomus ⇗ @diderius6

So I just got a 7B BSOD with this acpi.sys 5048 on BIOS 5.40 - without DSDT patch

can you confirm the same result on your AB350 gaming K4 on 5.40?



infuscomus has attached files to this post
#803 diderius6 ⇗ @infuscomus
Here they are the Acpi tables, just fresh from running XP via acpidump, acpixtract
Dietmar



diderius6 has attached files to this post
#804 diderius6 ⇗ @infuscomus

Waaaooohh,
on Bios 3.30 it boots from asm106x harddisk,
Dietmar
PS: Now I try Bios 5.40.



Bios 3.40 works.
#805 infuscomus ⇗ @diderius6

BIOS 3.40 or 5.40?

any luck getting AMD SATA ports to work?
#806 diderius6 ⇗ @infuscomus





Nice, look at the Bios Version.

So, this is until now the best acpi.sys for XP SP3

Dietmar
#807 infuscomus ⇗ @diderius6

excellent!

for sata ASMedia asm106x - which driver version is best?

p.s now we should also fix amd sata too
#808 diderius6 Very easy, the one I send to you!



diderius6 has attached files to this post
#809 infuscomus ⇗ @diderius6

upload driver here please

edit: Thanks very much
#810 diderius6 ⇗ @infuscomus

In Bios 5.40 the network card works without problems.
But no nvme boot possible, no nvme as codevice. Uni-Ata not works. Dont install this, always installs itself wrong new on reboot, brrr..
I tested all drivers from Uni-Ata. So we have to wait for next version.

In Bios 3.30 problem with network card, can be fixed in DSDT,
just look, what they changed for the network card in 5.40 Bios. Uni-Ata not tested.

In Bios 5.40 is a conflict between Hpet and the other clocks, can be solved, just look at the DSDT from the Sabertooth board.

In Bios 3.30 this conflict with Hpet cant be seen, but I think it is there also.

When Standard PC changes to ACPI Multiprocessor, all
devices have to be recogniced new, because we change from PIC to APIC model.
When problems appear, just go via safe mode F8
or use windbg for to see, what is going on

Dietmar

 

Page 55

#811 infuscomus ⇗ @diderius6

can you run a debug session with uniata debug version to try and find the problem?

⇗ http://alter.org.ua/soft/win/uni_ata/BusMaster_v47a_Dbg.rar
#812 diderius6 ⇗ @infuscomus

On Bios 5.40 this uniata version was a fail.
But now I try on Bios 3.30
Dietmar
#813 diderius6 ⇗ @infuscomus

First I get now message

*** Assertion failed: KeGetCurrentIrql() == PASSIVE_LEVEL
***   Source File: d:\xpsp\base\ntos\mm\sysload.c, line 7480

This I have never seen before. It does not crash the compi.
I think it has to with the Irqs, how we call them
Dietmar
#814 infuscomus ⇗ @diderius6

so the uniata driver can not allocate an IRQ?

p.s I test with last official amd_sata 1.2.1.321 for XP/2k3 - 7B BSOD
#815 diderius6 ⇗ @infuscomus

I tested everything,
in Bios 5.40 the Uni-Ata driver
does not work
Dietmar



diderius6 has attached files to this post
#816 infuscomus ⇗ @diderius6

can you try force enabling registry hack?

⇗ http://alter.org.ua/soft/win/uni_ata/registry.php
#817 diderius6 ⇗ @infuscomus
As you can see,
the driver uniata is loaded but does not start
Dietmar

PS: This is Bios 3.30



diderius6 has attached files to this post
#818 infuscomus ⇗ @diderius6

I think force GeomType = 0x00000002 in registry
in debug log GeomType = 0xffffffff is hidden
#819 diderius6 ⇗ @infuscomus
Uni-ata driver crashes whole XP installation, brrr..
ok, I am going to install XP with acpi.sys 5048 new
Dietmar
#820 diderius6 I install XP fresh on the Asrock B350 board.
All is ok, survives reboot.
Only when loaded hacked acpi.sys XP cries,
file wrong..
hit "esc" and continue
Dietmar

#821 infuscomus ⇗ @diderius6

I ran into the same error of XP saying acpi.sys is wrong in a VM

I fixed checksum, OK now

remember to replace acpi.sys in driver.cab file as well



infuscomus has attached files to this post
#822 diderius6 ⇗ @infuscomus
Yes, this I just notice:
Crazy XP changed acpi.sys back to original version on last boot,
I hope that this is last time that I see BSOD 0x7E 0xc0000005 ^^
Dietmar

EDIT: Voila, there is XP SP3 with "ACPI Multiprocessor" fresh after direct installation on the Asrock B350 board.

#823 diderius6 Problem with network card and HPET timer is still there.
Now I make a try to upload the DSDT from 5.40 Bios
with asl.exe direct to registry and we will see
Dietmar
#824 infuscomus ⇗ @diderius6

you got the 7E BSOD because there is a backup copy of acpi.sys stored in driver.cab that setup ended up copying over
#825 diderius6 ⇗ @infuscomus

Yes.

The DSDT (now vers. 3 from Bios 5.40) table upload with asl.exe works:
On next boot I got BSOD 0xA5 0x11,
even I use acpi.sys 5048 modmod version
Dietmar

PS: So, I installed also again "Standard PC",
noticed, that network card there works fantastic, looks in dsdt table from 5.40 Bios.
Then I delete the DSDT table via boot to "Standard PC"

asl /loadtable -d dsdt.aml

and on next boot all is as before,
meaning no BSOD and problem with network card^^.

 

Page 56

#826 infuscomus ⇗ @diderius6

what error code does network card show?
#827 diderius6 ⇗ @infuscomus
No error code at all.
In device manager all is ok, but on task bar yellow exclamationmark.
I got very slow internetconnection, but get.
When I change this card against T-Link Pcie card,
this one works.
So, it depends on DSDT of the Asrockboard or maybe Bios settings.
Until now, I do not find the device name of the Realtek RTL8111GR
in the Asrock B350 board
any one an idea, how this device can be named in DSDT?
I compare DSDT from Bios 3.30 with DSDT from Bios 5.40 but the device for lan I do not find.
I look for nic, lan, eth,..
nothing
Dietmar

EDIT: In Bios I found one place with name Broadcom in it. I extract both from Bios 5.40 and from Bios 3.30. A compare with Winhex shows 100% identic.
Other users with the Asrock B350 board write about the same problem. With Bios 5.40 this is gone, I think via DSDT.

EDIT2: I found the reason for slow Internet: The networkcard has the same Irq 32 as the USB 3.1 hostcontroller
in Bios 3.30.

EDIT3: The TP-Link network card also shares Irq 32 and works good.
So, Irq sharing is not the reason for not work correkt of the RT card.
#828 infuscomus ⇗ @diderius6

now that we have working acpi.sys for XP on AMD Ryzen, is there a possibility of also achieving a working storahci.sys?
#829 diderius6 ⇗ @infuscomus
There exists an AMD driver for the AMD ahci drive.
This needs to be hacked for to work under XP also
Dietmar
#830 infuscomus ⇗ @diderius6

which driver are you referring to?
#831 diderius6 ⇗ @infuscomus
On the Fernando site,
as far as I remember, there was only one unsolved dependency to XP
Dietmar
#832 infuscomus ⇗ @diderius6

there are several versions of AMD driver, which version?
#833 infuscomus ⇗ @diderius6

storahci.sys has no missing dependencies, but it gives a different BSOD
#834 diderius6 I think, it is not for harddisk
Dietmar
#835 infuscomus ⇗ @diderius6

I attach debug versions of storahci and storport - can you load driver and debug?



infuscomus has attached files to this post
#836 diderius6 ⇗ @infuscomus

Both files have unsolved dependencies to ntoskrnl.exe
Dietmar
#837 infuscomus ⇗ @diderius6

only 1 missing

storahci.sys - depends on storport.sys only

storport.sys - missing KeTestSpinLock found in Server 2003 checked ntoskrnl.exe
#838 infuscomus ⇗ @diderius6

normal non-debug storahci.sys gives 7E BSOD
#839 infuscomus ⇗ @diderius6

are you able to debug why nvme driver fails on BIOS 5.40?
maybe it's related to why ahci fails?
#840 diderius6 ⇗ @infuscomus

I read, that edge Interrups are better than level Interrupts. AMD wrote the same about Ryzen.

But then I found this:
"

Consider the scenario where an interrupt IS shared by two devices with the following scenario:

   Device 1 requests service.
   The processor starts serving device 1.
           Device 2 requests service.
   Device 1 no longer requests service.
   The processor finishes serving device 1.
           The processor starts serving device 2.

Here device 1 will assert an interrupt request in step 1. It de-asserts that request in step 5, but the request remains asserted due to step 3.

Now in step 6, if level triggered requests are used, the processor will service the other device since the request level is still asserted. With edge triggered requests, nothing will happen because there will be no new "edge" to be detected. The request remained asserted throughout the scenario. This is a failure of the interrupt system.

This is why only level triggered interrupts, in general. may be shared.
"

Dietmar

 

Page 57

#841 infuscomus ⇗ @diderius6

how do we fix this?
#842 diderius6 ⇗ @infuscomus
The handle of Irqs is a problem of the B350 chipset. I think other AM4 boards too, because no normal XP there.
Only because of that we needed the new hack in acpi.sys.
Now I make a check by check, at which places windbg tells, that there is a problem with Irq.
Hm, how to make windbg search especially for this kind of errors, dont know,
I try.
At the moment we have no DEBUG acpi.sys,
which overcomes the BSODs 0xA5 together with 0x11, 0x02..
like acpi.sys 5048 modmod, last from you
Dietmar
#843 diderius6 ⇗ @infuscomus

First message from windbg about Irqs

*** Assertion failed: KeGetCurrentIrql() == PASSIVE_LEVEL
***   Source File: d:\xpsp\base\ntos\mm\sysload.c, line 7480

Dietmar

EDIT: "The documentation clearly says: This routine can only be called at IRQL
= PASSIVE_LEVEL.

Interrupts are disabled. This is the *equivalent* of running at IRQL
HIGH_LEVEL, without that nasty TPR programming."

sysload.c is in halmacpi.dll but the message may be in ntkrnlmp.exe or in acpi.sys (all debug versions) also.
⇗ https://sysinternals.d4rk4.ru/Informatio...SourceTree.html

'KeGetCurrentIrql() == PASSIVE_LEVEL',0  is in acpi.sys (debug version)

But I think, this message comes not from acpi.sys because in acpi.sys is written
loc_34D12: ; CODE XREF: .text:00034CF7 j
.text:00034D12 inc dword_56D34
.text:00034D18 call ds:KeGetCurrentIrql
.text:00034D1E test al, al
.text:00034D20 jz short loc_34D39
.text:00034D22 push 0
.text:00034D24 push 419h
.text:00034D29 push offset asc_4B070 ; "d:\\xpsp\\base\\busdrv\\acpi\\driver\\amlinew"...
.text:00034D2E push offset aKegetcurren_19 ; "KeGetCurrentIrql() == PASSIVE_LEVEL"
.text:00034D33 call ds:__imp_RtlAssert


EDIT2: This message comes from ntkrnlmp.exe, found it with Ida Pro
PAGE:005884F8 ; ¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦ S U B R O U T I N E ¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦
PAGE:005884F8
PAGE:005884F8 ; Attributes: bp-based frame
PAGE:005884F8
PAGE:005884F8 ; PVOID __stdcall MmGetSystemRoutineAddress@4(PUNICODE_STRING SystemRoutineName)
PAGE:005884F8 public _MmGetSystemRoutineAddress@4
PAGE:005884F8 _MmGetSystemRoutineAddress@4 proc near
PAGE:005884F8
PAGE:005884F8 var_20 = dword ptr -20h
PAGE:005884F8 var_18 = dword ptr -18h
PAGE:005884F8 var_10 = dword ptr -10h
PAGE:005884F8 var_8 = dword ptr -8
PAGE:005884F8 var_4 = dword ptr -4
PAGE:005884F8 SystemRoutineName= dword ptr 4
PAGE:005884F8 arg_4 = dword ptr 8
PAGE:005884F8
PAGE:005884F8 mov edi, edi
PAGE:005884FA push ebp
PAGE:005884FB mov ebp, esp
PAGE:005884FD sub esp, 20h
PAGE:00588500 push ebx
PAGE:00588501 push esi
PAGE:00588502 push edi
PAGE:00588503 call ds:__imp__KeGetCurrentIrql@0 ; __declspec(dllimport) KeGetCurrentIrql()
PAGE:00588509 xor esi, esi
PAGE:0058850B test al, al
PAGE:0058850D jz short loc_588524
PAGE:0058850F push esi
PAGE:00588510 push 1D38h
PAGE:00588515 push offset asc_5883F4 ; "d:\\xpsp\\base\\ntos\\mm\\sysload.c"
PAGE:0058851A push offset aKegetcurren_50 ; "KeGetCurrentIrql() == PASSIVE_LEVEL"
PAGE:0058851F call _RtlAssert@16 ; RtlAssert(x,x,x,x)
PAGE:00588524
PAGE:00588524 loc_588524: ; CODE XREF: MmGetSystemRoutineAddress(x)+15 j
PAGE:00588524 push offset off_588438
PAGE:00588529 lea eax, [ebp+var_18]
PAGE:0058852C push eax
PAGE:0058852D mov [ebp+var_4], esi
PAGE:00588530 mov [ebp+var_8], esi
PAGE:00588533 call _RtlInitUnicodeString@8 ; RtlInitUnicodeString(x,x)
PAGE:00588538 push offset off_588454
PAGE:0058853D lea eax, [ebp+var_20]
PAGE:00588540 push eax
PAGE:00588541 call _RtlInitUnicodeString@8 ; RtlInitUnicodeString(x,x)
PAGE:00588546 jmp short loc_588554
PAGE:00588548 ; ---------------------------------------------------------------------------
PAGE:00588548
PAGE:00588548 loc_588548: ; CODE XREF: MmGetSystemRoutineAddress(x)+6C j
PAGE:00588548 push offset _MmShortTime
PAGE:0058854D push esi
PAGE:0058854E push esi
PAGE:0058854F call _KeDelayExecutionThread@12 ; KeDelayExecutionThread(x,x,x)
PAGE:00588554
PAGE:00588554 loc_588554: ; CODE XREF: MmGetSystemRoutineAddress(x)+4E j
PAGE:00588554 push 1
PAGE:00588556 push [ebp+arg_4]
PAGE:00588559 lea eax, [ebp+var_10]
PAGE:0058855C push eax
PAGE:0058855D call _RtlUnicodeStringToAnsiString@12 ; RtlUnicodeStringToAnsiString(x,x,x)
PAGE:00588562 test eax, eax
PAGE:00588564 jl short loc_588548
PAGE:00588566 mov eax, large fs:124h
PAGE:0058856C mov edi, eax
PAGE:0058856E mov eax, large fs:124h
PAGE:00588574 cmp edi, eax
PAGE:00588576 jz short loc_58858D
PAGE:00588578 push esi
PAGE:00588579 push 1D52h
PAGE:0058857E push offset asc_588464 ; "d:\\xpsp\\base\\ntos\\mm\\sysload.c"
PAGE:00588583 push offset aCurrentthrea_4 ; "CurrentThread == KeGetCurrentThread ()"
PAGE:00588588 call _RtlAssert@16 ; RtlAssert(x,x,x,x)
PAGE:0058858D
PAGE:0058858D loc_58858D: ; CODE XREF: MmGetSystemRoutineAddress(x)+7E j
PAGE:0058858D dec dword ptr [edi+0D4h]
PAGE:00588593 push 1
PAGE:00588595 mov ebx, offset _PsLoadedModuleResource
PAGE:0058859A push ebx
PAGE:0058859B call _ExAcquireResourceSharedLite@8 ; ExAcquireResourceSharedLite(x,x)
PAGE:005885A0 mov esi, _PsLoadedModuleList
PAGE:005885A6 jmp short loc_5885EC
PAGE:005885A8 ; ---------------------------------------------------------------------------
PAGE:005885A8
PAGE:005885A8 loc_5885A8: ; CODE XREF: MmGetSystemRoutineAddress(x)+FA j
PAGE:005885A8 push 1
PAGE:005885AA lea eax, [esi+2Ch]
PAGE:005885AD push eax
PAGE:005885AE lea eax, [ebp+var_18]
PAGE:005885B1 push eax
PAGE:005885B2 call _RtlEqualUnicodeString@12 ; RtlEqualUnicodeString(x,x,x)
PAGE:005885B7 test al, al
PAGE:005885B9 jnz short loc_5885CE
PAGE:005885BB push 1
PAGE:005885BD lea eax, [esi+2Ch]
PAGE:005885C0 push eax
PAGE:005885C1 lea eax, [ebp+var_20]
PAGE:005885C4 push eax
PAGE:005885C5 call _RtlEqualUnicodeString@12 ; RtlEqualUnicodeString(x,x,x)
PAGE:005885CA test al, al
PAGE:005885CC jz short loc_5885EA
PAGE:005885CE
PAGE:005885CE loc_5885CE: ; CODE XREF: MmGetSystemRoutineAddress(x)+C1 j
PAGE:005885CE inc [ebp+var_4]
PAGE:005885D1 lea eax, [ebp+var_10]
PAGE:005885D4 push eax
PAGE:005885D5 push dword ptr [esi+18h]
PAGE:005885D8 call _MiFindExportedRoutineByName@8 ; MiFindExportedRoutineByName(x,x)
PAGE:005885DD test eax, eax
PAGE:005885DF mov [ebp+var_8], eax
PAGE:005885E2 jnz short loc_5885F4
PAGE:005885E4 cmp [ebp+var_4], 2
PAGE:005885E8 jz short loc_5885F4
PAGE:005885EA
PAGE:005885EA loc_5885EA: ; CODE XREF: MmGetSystemRoutineAddress(x)+D4 j
PAGE:005885EA mov esi, [esi]
PAGE:005885EC
PAGE:005885EC loc_5885EC: ; CODE XREF: MmGetSystemRoutineAddress(x)+AE j
PAGE:005885EC cmp esi, offset _PsLoadedModuleList
PAGE:005885F2 jnz short loc_5885A8
PAGE:005885F4
PAGE:005885F4 loc_5885F4: ; CODE XREF: MmGetSystemRoutineAddress(x)+EA j
PAGE:005885F4 ; MmGetSystemRoutineAddress(x)+F0 j
PAGE:005885F4 mov ecx, ebx
PAGE:005885F6 call @ExReleaseResourceLite@4 ; ExReleaseResourceLite(x)
PAGE:005885FB mov eax, large fs:124h
PAGE:00588601 cmp edi, eax
PAGE:00588603 jz short loc_58861B
PAGE:00588605 push 0
PAGE:00588607 push 1D84h
PAGE:0058860C push offset asc_5884AC ; "d:\\xpsp\\base\\ntos\\mm\\sysload.c"
PAGE:00588611 push offset aCurrentthrea_5 ; "CurrentThread == KeGetCurrentThread ()"
PAGE:00588616 call _RtlAssert@16 ; RtlAssert(x,x,x,x)
PAGE:0058861B
PAGE:0058861B loc_58861B: ; CODE XREF: MmGetSystemRoutineAddress(x)+10B j
PAGE:0058861B inc dword ptr [edi+0D4h]
PAGE:00588621 jnz short loc_588636
PAGE:00588623 lea eax, [edi+34h]
PAGE:00588626 cmp [eax], eax
PAGE:00588628 jz short loc_588636
PAGE:0058862A mov cl, 1
PAGE:0058862C mov byte ptr [edi+49h], 1
PAGE:00588630 call ds:__imp_@HalRequestSoftwareInterrupt@4 ; __declspec(dllimport) HalRequestSoftwareInterrupt(x)
PAGE:00588636
PAGE:00588636 loc_588636: ; CODE XREF: MmGetSystemRoutineAddress(x)+129 j
PAGE:00588636 ; MmGetSystemRoutineAddress(x)+130 j
PAGE:00588636 lea eax, [ebp+var_10]
PAGE:00588639 push eax
PAGE:0058863A call _RtlFreeAnsiString@4 ; RtlFreeAnsiString(x)
PAGE:0058863F mov eax, [ebp+var_8]
PAGE:00588642 pop edi
PAGE:00588643 pop esi
PAGE:00588644 pop ebx
PAGE:00588645 leave
PAGE:00588646 retn 4
PAGE:00588646 _MmGetSystemRoutineAddress@4 endp ; sp = 4
PAGE:00588646
PAGE:00588646 ; ---------------------------------------------------------------------------
PAGE:00588649 db 0CCh ; ¦
PAGE:0058864A asc_58864A db 'EX: Pageable code called at IRQL %d',0Ah,0
PAGE:0058864A ; DATA XREF: MmLoadSystemImage(x,x,x,x,x,x)+21 o
PAGE:0058866F db 0
PAGE:00588670 db 0
PAGE:00588671 db 0
PAGE:00588672 asc_588672 db 'd:\xpsp\base\ntos\mm\sysload.c',0
PAGE:00588672 ; DATA XREF: MmLoadSystemImage(x,x,x,x,x,x)+35 o
PAGE:00588691 db 0
PAGE:00588692 asc_588692 db 'FALSE',0 ; DATA XREF: MmLoadSystemImage(x,x,x,x,x,x)+3A o
PAGE:00588698 db 0
PAGE:00588699 db 0
PAGE:0058869A asc_58869A db 'd:\xpsp\base\ntos\mm\sysload.c',0
PAGE:0058869A ; DATA XREF: MmLoadSystemImage(x,x,x,x,x,x)+B0 o
PAGE:005886B9 db 0
PAGE:005886BA aNameprefixNull db 'NamePrefix == NULL',0
PAGE:005886BA ; DATA XREF: MmLoadSystemImage(x,x,x,x,x,x)+B5 o
PAGE:005886CD db 0
PAGE:005886CE asc_5886CE db 'd:\xpsp\base\ntos\mm\sysload.c',0
PAGE:005886CE ; DATA XREF: MmLoadSystemImage(x,x,x,x,x,x)+CA o
PAGE:005886ED db 0
PAGE:005886EE aLoadedbasename db 'LoadedBaseName == NULL',0
PAGE:005886EE ; DATA XREF: MmLoadSystemImage(x,x,x,x,x,x)+CF o
PAGE:00588705 db 0
PAGE:00588706 asc_588706 db 'd:\xpsp\base\ntos\mm\sysload.c',0
PAGE:00588706 ; DATA XREF: MmLoadSystemImage(x,x,x,x,x,x)+10A o
PAGE:00588725 db 0
PAGE:00588726 aMmisaddressv_5 db 'MmIsAddressValid (MmSessionSpace) == TRUE',0
PAGE:00588726 ; DATA XREF: MmLoadSystemImage(x,x,x,x,x,x)+10F o
PAGE:00588750 db 0
PAGE:00588751 db 0
PAGE:00588752 aInSessionSpace db 'in session space',0 ; DATA XREF: MmLoadSystemImage(x,x,x,x,x,x)+22B o
PAGE:00588763 db 0
PAGE:00588764 db 0
PAGE:00588765 db 0
PAGE:00588766 asc_588766: ; DATA XREF: MmLoadSystemImage(x,x,x,x,x,x)+232 o
PAGE:00588766 unicode 0, < >,0
PAGE:0058876A aMmSysldrLoadin db 'MM:SYSLDR Loading %wZ (%wZ) %s',0Ah,0
PAGE:0058876A ; DATA XREF: MmLoadSystemImage(x,x,x,x,x,x)+240 o
PAGE:0058878A asc_58878A db 'd:\xpsp\base\ntos\mm\sysload.c',0
PAGE:0058878A ; DATA XREF: MmLoadSystemImage(x,x,x,x,x,x)+270 o
PAGE:005887A9 db 0
PAGE:005887AA asc_5887AA db 'CurrentThread == KeGetCurrentThread ()',0
PAGE:005887AA ; DATA XREF: MmLoadSystemImage(x,x,x,x,x,x)+275 o
PAGE:005887D1 db 0
PAGE:005887D2 asc_5887D2 db 'd:\xpsp\base\ntos\mm\sysload.c',0
PAGE:005887D2 ; DATA XREF: MmLoadSystemImage(x,x,x,x,x,x)+2DC o
PAGE:005887F1 db 0
PAGE:005887F2 aAlreadyopenTru db 'AlreadyOpen == TRUE || NextEntry == &PsLoadedModuleList',0
PAGE:005887F2 ; DATA XREF: MmLoadSystemImage(x,x,x,x,x,x)+2E1 o
PAGE:0058882A aMmloadsystemim db 'MmLoadSystemImage: Pulled %wZ from kd',0Ah,0
PAGE:0058882A ; DATA XREF: MmLoadSystemImage(x,x,x,x,x,x)+31E o
PAGE:00588851 db 0
PAGE:00588852 aMiloadimagesec db 'MiLoadImageSection: cannot open %wZ',0Ah,0
PAGE:00588852 ; DATA XREF: MmLoadSystemImage(x,x,x,x,x,x)+380 o
PAGE:00588877 db 0
PAGE:00588878 db 0
PAGE:00588879 db 0
PAGE:0058887A asc_58887A db 'd:\xpsp\base\ntos\mm\sysload.c',0
PAGE:0058887A ; DATA XREF: MmLoadSystemImage(x,x,x,x,x,x)+3B0 o
PAGE:00588899 db 0
PAGE:0058889A asc_58889A db 'CurrentThread == KeGetCurrentThread ()',0
PAGE:0058889A ; DATA XREF: MmLoadSystemImage(x,x,x,x,x,x)+3B5 o
PAGE:005888C1 db 0
PAGE:005888C2 asc_5888C2 db 'd:\xpsp\base\ntos\mm\sysload.c',0
PAGE:005888C2 ; DATA XREF: MmLoadSystemImage(x,x,x,x,x,x)+641 o
PAGE:005888E1 db 0
PAGE:005888E2 aAlreadyopenT_0 db 'AlreadyOpen == TRUE',0
PAGE:005888E2 ; DATA XREF: MmLoadSystemImage(x,x,x,x,x,x)+646 o
PAGE:005888F6 asc_5888F6 db 'd:\xpsp\base\ntos\mm\sysload.c',0
PAGE:005888F6 ; DATA XREF: MmLoadSystemImage(x,x,x,x,x,x)+65B o
PAGE:00588915 db 0
PAGE:00588916 aLoadflagsMm_lo db 'LoadFlags & MM_LOAD_IMAGE_IN_SESSION',0
PAGE:00588916 ; DATA XREF: MmLoadSystemImage(x,x,x,x,x,x)+660 o
PAGE:0058893B db 0
PAGE:0058893C db 0
PAGE:0058893D db 0
PAGE:0058893E asc_58893E db 'd:\xpsp\base\ntos\mm\sysload.c',0
PAGE:0058893E ; DATA XREF: MmLoadSystemImage(x,x,x,x,x,x)+674 o
PAGE:0058895D db 0
PAGE:0058895E aDatatableentry db 'DataTableEntry != NULL',0
PAGE:0058895E ; DATA XREF: MmLoadSystemImage(x,x,x,x,x,x)+679 o
PAGE:00588975 db 0
PAGE:00588976 asc_588976 db 'd:\xpsp\base\ntos\mm\sysload.c',0
PAGE:00588976 ; DATA XREF: MmLoadSystemImage(x,x,x,x,x,x)+690 o
PAGE:00588995 db 0
PAGE:00588996 aDatatableent_0 db 'DataTableEntry->LoadCount > 1',0
PAGE:00588996 ; DATA XREF: MmLoadSystemImage(x,x,x,x,x,x)+695 o
PAGE:005889B4 db 0
PAGE:005889B5 db 0
PAGE:005889B6 aPppagepathassi db 'PpPagePathAssign FAILED for win32k.sys: %x',0Ah,0
PAGE:005889B6 ; DATA XREF: MmLoadSystemImage(x,x,x,x,x,x)+6DA o
PAGE:005889E2 asc_5889E2 db 'd:\xpsp\base\ntos\mm\sysload.c',0
PAGE:005889E2 ; DATA XREF: MmLoadSystemImage(x,x,x,x,x,x)+717 o
PAGE:00588A01 db 0
PAGE:00588A02 aDatatableent_1 db 'DataTableEntry != NULL',0
PAGE:00588A02 ; DATA XREF: MmLoadSystemImage(x,x,x,x,x,x)+71C o
PAGE:00588A19 db 0
PAGE:00588A1A aMmSessionDImag db 'MM: Session %d image %wZ is linked at a nonsharable address '
PAGE:00588A1A ; DATA XREF: MmLoadSystemImage(x,x,x,x,x,x)+76D o
PAGE:00588A1A db '(%p)',0Ah,0
PAGE:00588A5C db 0
PAGE:00588A5D db 0
PAGE:00588A5E db 0
PAGE:00588A5F db 0
PAGE:00588A60 db 0
PAGE:00588A61 db 0
PAGE:00588A62 aMmImageWzHasBe db 'MM: Image %wZ has been moved to address (%p) by the system s'
PAGE:00588A62 ; DATA XREF: MmLoadSystemImage(x,x,x,x,x,x)+77C o
PAGE:00588A62 db 'o it can run,',0Ah,0
PAGE:00588AAD db 0
PAGE:00588AAE db 0
PAGE:00588AAF db 0
PAGE:00588AB0 db 0
PAGE:00588AB1 db 0
PAGE:00588AB2 aButThisNeedsTo db ' but this needs to be fixed in the image for sharing to occu'
PAGE:00588AB2 ; DATA XREF: MmLoadSystemImage(x,x,x,x,x,x)+786 o
PAGE:00588AB2 db 'r.',0Ah,0
PAGE:00588AF2 aSysldr db 'SYSLDR',0 ; DATA XREF: MmLoadSystemImage(x,x,x,x,x,x)+7A1 o
PAGE:00588AF9 db 0
PAGE:00588AFA db 4Dh ; M
PAGE:00588AFB db 4Dh ; M
PAGE:00588AFC db 3Ah ; :
PAGE:00588AFD db 73h ; s
PAGE:00588AFE db 79h ; y
PAGE:00588AFF db 73h ; s
PAGE:00588B00 db 6Ch ; l
PAGE:00588B01 db 6Fh ; o
PAGE:00588B02 db 61h ; a
PAGE:00588B03 db 64h ; d
PAGE:00588B04 db 20h
PAGE:00588B05 db 2Dh ; -
PAGE:00588B06 db 20h
PAGE:00588B07 db 4Ch ; L
PAGE:00588B08 db 64h ; d
PAGE:00588B09 db 72h ; r
PAGE:00588B0A db 52h ; R
PAGE:00588B0B db 65h ; e
PAGE:00588B0C db 6Ch ; l
PAGE:00588B0D db 6Fh ; o
PAGE:00588B0E db 63h ; c
PAGE:00588B0F db 61h ; a
PAGE:00588B10 db 74h ; t
PAGE:00588B11 db 65h ; e
PAGE:00588B12 db 49h ; I
PAGE:00588B13 db 6Dh ; m
PAGE:00588B14 db 61h ; a
PAGE:00588B15 db 67h ; g
PAGE:00588B16 db 65h ; e
PAGE:00588B17 db 20h
PAGE:00588B18 db 66h ; f
PAGE:00588B19 db 61h ; a
PAGE:00588B1A db 69h ; i
PAGE:00588B1B db 6Ch ; l
PAGE:00588B1C db 65h ; e
PAGE:00588B1D db 64h ; d
PAGE:00588B1E db 20h
PAGE:00588B1F db 73h ; s
PAGE:00588B20 db 74h ; t
PAGE:00588B21 db 61h ; a
PAGE:00588B22 db 74h ; t
PAGE:00588B23 db 75h ; u
PAGE:00588B24 db 73h ; s
PAGE:00588B25 db 20h
PAGE:00588B26 db 25h ; %
PAGE:00588B27 db 6Ch ; l
PAGE:00588B28 db 78h ; x
PAGE:00588B29 db 0Ah
PAGE:00588B2A db 0
PAGE:00588B2B db 0
PAGE:00588B2C db 0
PAGE:00588B2D db 0
PAGE:00588B2E db 4Dh ; M
PAGE:00588B2F db 4Dh ; M
PAGE:00588B30 db 3Ah ; :
PAGE:00588B31 db 73h ; s
PAGE:00588B32 db 79h ; y
PAGE:00588B33 db 73h ; s
PAGE:00588B34 db 6Ch ; l
PAGE:00588B35 db 6Fh ; o
PAGE:00588B36 db 61h ; a
PAGE:00588B37 db 64h ; d
PAGE:00588B38 db 20h
PAGE:00588B39 db 2Dh ; -
PAGE:00588B3A db 20h
PAGE:00588B3B db 52h ; R
PAGE:00588B3C db 65h ; e
PAGE:00588B3D db 73h ; s
PAGE:00588B3E db 6Fh ; o
PAGE:00588B3F db 6Ch ; l
PAGE:00588B40 db 76h ; v
PAGE:00588B41 db 65h ; e
PAGE:00588B42 db 49h ; I
PAGE:00588B43 db 6Dh ; m
PAGE:00588B44 db 61h ; a
PAGE:00588B45 db 67h ; g
PAGE:00588B46 db 65h ; e
PAGE:00588B47 db 52h ; R
PAGE:00588B48 db 65h ; e
PAGE:00588B49 db 66h ; f
PAGE:00588B4A db 65h ; e
PAGE:00588B4B db 72h ; r
PAGE:00588B4C db 65h ; e
PAGE:00588B4D db 6Eh ; n
PAGE:00588B4E db 63h ; c
PAGE:00588B4F db 65h ; e
PAGE:00588B50 db 73h ; s
PAGE:00588B51 db 20h
PAGE:00588B52 db 66h ; f
PAGE:00588B53 db 61h ; a
PAGE:00588B54 db 69h ; i
PAGE:00588B55 db 6Ch ; l
PAGE:00588B56 db 65h ; e
PAGE:00588B57 db 64h ; d
PAGE:00588B58 db 20h
PAGE:00588B59 db 73h ; s
PAGE:00588B5A db 74h ; t
PAGE:00588B5B db 61h ; a
PAGE:00588B5C db 74h ; t
PAGE:00588B5D db 75h ; u
PAGE:00588B5E db 73h ; s
PAGE:00588B5F db 20h
PAGE:00588B60 db 25h ; %
PAGE:00588B61 db 78h ; x
PAGE:00588B62 db 0Ah
PAGE:00588B63 db 0
PAGE:00588B64 db 0
PAGE:00588B65 db 0
PAGE:00588B66 asc_588B66 db 'd:\xpsp\base\ntos\mm\sysload.c',0
PAGE:00588B66 ; DATA XREF: MmLoadSystemImage(x,x,x,x,x,x)+BBE o
PAGE:00588B85 db 0
PAGE:00588B86 aMissingprocedu db 'MissingProcedureName == NULL',0
PAGE:00588B86 ; DATA XREF: MmLoadSystemImage(x,x,x,x,x,x)+BC3 o
PAGE:00588BA3 db 0
PAGE:00588BA4 db 0
PAGE:00588BA5 db 0
PAGE:00588BA6 aMissingproce_0 db 'MissingProcedureName %s',0Ah,0
PAGE:00588BA6 ; DATA XREF: MmLoadSystemImage(x,x,x,x,x,x)+BEF o
PAGE:00588BBF db 0
PAGE:00588BC0 db 0
PAGE:00588BC1 db 0
PAGE:00588BC2 aMissingproce_1 db 'MissingProcedureName 0x%p',0Ah,0
PAGE:00588BC2 ; DATA XREF: MmLoadSystemImage(x,x,x,x,x,x):loc_5898D4 o
PAGE:00588BDD db 0
PAGE:00588BDE aMissingdrivern db 'MissingDriverName %ws',0Ah,0
PAGE:00588BDE ; DATA XREF: MmLoadSystemImage(x,x,x,x,x,x)+C0D o
PAGE:00588BF5 db 0
PAGE:00588BF6 off_588BF6 dd offset loc_53005B+1 ; DATA XREF: MmLoadSystemImage(x,x,x,x,x,x)+CCB o
PAGE:00588BFA db 79h ; y
PAGE:00588BFB db 0
PAGE:00588BFC db 73h ; s
PAGE:00588BFD db 0
PAGE:00588BFE db 74h ; t
PAGE:00588BFF db 0
PAGE:00588C00 db 65h ; e
PAGE:00588C01 db 0
PAGE:00588C02 db 6Dh ; m
PAGE:00588C03 db 0
PAGE:00588C04 db 52h ; R
PAGE:00588C05 db 0
PAGE:00588C06 db 6Fh ; o
PAGE:00588C07 db 0
PAGE:00588C08 db 6Fh ; o
PAGE:00588C09 db 0
PAGE:00588C0A db 74h ; t
PAGE:00588C0B db 0
PAGE:00588C0C db 0
PAGE:00588C0D db 0
PAGE:00588C0E unk_588C0E db 25h ; % ; DATA XREF: MmLoadSystemImage(x,x,x,x,x,x)+D09 o
PAGE:00588C0F db 77h ; w
PAGE:00588C10 db 73h ; s
PAGE:00588C11 db 25h ; %
PAGE:00588C12 db 77h ; w
PAGE:00588C13 db 5Ah ; Z
PAGE:00588C14 db 0
PAGE:00588C15 db 0
PAGE:00588C16 off_588C16 dd offset aHandleinfoSing+25h
PAGE:00588C16 ; DATA XREF: MmLoadSystemImage(x,x,x,x,x,x)+D1F o
PAGE:00588C1A asc_588C1A db 'd:\xpsp\base\ntos\mm\sysload.c',0
PAGE:00588C1A ; DATA XREF: MmLoadSystemImage(x,x,x,x,x,x)+DF3 o
PAGE:00588C39 db 0
PAGE:00588C3A aDatatableent_2 db 'DataTableEntry->LoadCount > 1',0
PAGE:00588C3A ; DATA XREF: MmLoadSystemImage(x,x,x,x,x,x)+DF8 o
PAGE:00588C58 db 0
PAGE:00588C59 db 0
PAGE:00588C5A asc_588C5A db 'd:\xpsp\base\ntos\mm\sysload.c',0
PAGE:00588C5A ; DATA XREF: MmLoadSystemImage(x,x,x,x,x,x)+E42 o
PAGE:00588C79 db 0
PAGE:00588C7A asc_588C7A db 'CurrentThread == KeGetCurrentThread ()',0
PAGE:00588C7A ; DATA XREF: MmLoadSystemImage(x,x,x,x,x,x)+E47 o
PAGE:00588CA1 db 0
PAGE:00588CA2 off_588CA2 dd offset loc_610060+3 ; DATA XREF: MmLoadSystemImage(x,x,x,x,x,x):loc_589BAE o
PAGE:00588CA6 db 6Eh ; n
PAGE:00588CA7 db 0
PAGE:00588CA8 db 6Eh ; n
PAGE:00588CA9 db 0
PAGE:00588CAA db 6Fh ; o
PAGE:00588CAB db 0
PAGE:00588CAC db 74h ; t
PAGE:00588CAD db 0
PAGE:00588CAE db 20h
PAGE:00588CAF db 0
PAGE:00588CB0 db 66h ; f
PAGE:00588CB1 db 0
PAGE:00588CB2 db 69h ; i
PAGE:00588CB3 db 0
PAGE:00588CB4 db 6Eh ; n
PAGE:00588CB5 db 0
PAGE:00588CB6 db 64h ; d
PAGE:00588CB7 db 0
PAGE:00588CB8 db 0
PAGE:00588CB9 db 0
PAGE:00588CBA off_588CBA dd offset loc_610066 ; DATA XREF: MmLoadSystemImage(x,x,x,x,x,x)+F8E o
PAGE:00588CBE db 69h ; i
PAGE:00588CBF db 0
PAGE:00588CC0 db 6Ch ; l
PAGE:00588CC1 db 0
PAGE:00588CC2 db 65h ; e
PAGE:00588CC3 db 0
PAGE:00588CC4 db 64h ; d
PAGE:00588CC5 db 0
PAGE:00588CC6 db 20h
PAGE:00588CC7 db 0
PAGE:00588CC8 db 74h ; t
PAGE:00588CC9 db 0
PAGE:00588CCA db 6Fh ; o
PAGE:00588CCB db 0
PAGE:00588CCC db 20h
PAGE:00588CCD db 0
PAGE:00588CCE db 6Ch ; l
PAGE:00588CCF db 0
PAGE:00588CD0 db 6Fh ; o
PAGE:00588CD1 db 0
PAGE:00588CD2 db 61h ; a
PAGE:00588CD3 db 0
PAGE:00588CD4 db 64h ; d
PAGE:00588CD5 db 0
PAGE:00588CD6 db 0
PAGE:00588CD7 db 0
PAGE:00588CD8 db 0CCh ; ¦
PAGE:00588CD9 db 0CCh ; ¦
PAGE:00588CDA db 0CCh ; ¦
PAGE:00588CDB db 0CCh ; ¦
PAGE:00588CDC db 0CCh ; ¦
PAGE:00588CDD db 0CCh ; ¦
PAGE:00588CDE
  
#844 infuscomus ⇗ @diderius6

for debugging
we could hack debug acpi.sys from server 2003 with the same hacks we used for 5048, but it will only work for server 2003
#845 diderius6 ⇗ @infuscomus
I think, Longhorn-Vista 5048 is server 2003.
May be, the acpi.sys 5048 modmod is enough for debugging
Dietmar
#846 diderius6 This are next error messages from windbg

*** Assertion failed: ((Timer)->Header.Type == TimerNotificationObject) || ((Timer)->Header.Type == TimerSynchronizationObject)
***   Source File: d:\xpsp\base\ntos\ke\timerobj.c, line 195

*** Assertion failed: (MemoryDescriptorList->MdlFlags & ( MDL_MAPPED_TO_SYSTEM_VA | MDL_SOURCE_IS_NONPAGED_POOL | MDL_PARTIAL_HAS_BEEN_MAPPED)) == 0
***   Source File: d:\xpsp\base\ntos\mm\iosup.c, line 3542

*** Assertion failed: (MemoryDescriptorList->MdlFlags & ( MDL_PAGES_LOCKED | MDL_PARTIAL)) != 0
***   Source File: d:\xpsp\base\ntos\mm\iosup.c, line 3546
#847 infuscomus ⇗ @diderius6

so there is a problem in ntoskrnl?
#848 diderius6 ⇗ @infuscomus

I do not know. For sure there is a problem with setting Irqs on AM4 boards.
The most crazy is, that with !MAPIC windbg told you, that it is empty,
even now with running XP Acpi Multiprocessor
Dietmar

PS: I found out, that Irq with "edge" setting has always exclusive Irq (means each device has its own Irq).
Irq with "level" setting can have share or exclusive Irq.
The most crazy things happen, when 2 devices share one Irq
and one of them is "edge" and the other "level", because this one with "edge"
thinks, there cant be another device with same Irq.
And I do not understand the message from ntkrnlmp.exe very early in boot process,
that

*** Assertion failed: KeGetCurrentIrql() == PASSIVE_LEVEL
*** Source File: d:\xpsp\base\ntos\mm\sysload.c, line 7480

This looks like, if the whole system after this runs without any Irqs.

EDIT: I know that certain operations can only be performed at IRQL PASSIVE_LEVEL.
Microsoft has this sample code of how to write to a file from a kernel driver:

if (KeGetCurrentIrql() != PASSIVE_LEVEL)
   return STATUS_INVALID_DEVICE_STATE;
#849 infuscomus ⇗ @diderius6

can we somehow force hardware to use "edge" IRQs?
#850 diderius6 ⇗ @infuscomus

In the DSDT table should (?) the hardwired devices from the board are listened.
For the hardwired networkcard RTL8111GR from the Asrock B350 board I do not find an device entry there!
And when you use another networkcard like the TP-Link, the Irq setting is described in their software I think.
So, I do not know, if this setting for Irq (level, edge) can be changed without problems for any hardware
Dietmar
#851 infuscomus ⇗ @diderius6

maybe BIOS 5.40 is using a newer network OpROM?
#852 infuscomus ⇗ @diderius6

also,
any luck with patching AMD AHCI driver 1.2.1.402?
we need to patch
PoUnregisterPowerSettingCallback
PoRegisterPowerSettingCallback
#853 diderius6 ⇗ @infuscomus
The broadcom is only at 1 place in Bios.
They are identic for 3.30 and 5.40 Bios.
Dietmar

PS: Now I have to work. Yes, to try patch for the AMD AHCI driver 1.2.1.402
would be possible way, but I dont know how hard it is.
May be it is enough just to delete this functions.
#854 infuscomus ⇗ @diderius6

I'm not sure how to properly delete a function

p.s I thought the network chip was a realtek?
#855 infuscomus ⇗ @diderius6

I made attempt to load AMD AHCI driver

first I attempted to load
amd_sata - from 1.2.1.402 with
amd_xata - from 1.2.1.321 - this resulted in 7F BSOD - Kernel Trap

next I try to patch out PoRegisterPowerSettingCallback PoUnregisterPowerSettingCallback from amd_xata.sys

uploaded if you want to test for yourself



infuscomus has attached files to this post

 

Page 58

#856 diderius6 ⇗ @infuscomus
It can be done with blackwingcat's PEMaker,
if those 2 functions do nothing importand else
Dietmar
#857 infuscomus ⇗ @diderius6

I attempted to load my modded 1.2.1.402 driver

7B BSOD

:(
#858 diderius6 ⇗ @infuscomus
Have you just deleted the 2 functions with blackwingcat's PEMaker
Dietmar
#859 infuscomus ⇗ @diderius6

I changed the dword ptr that calls the function and I redirect the imports PoRegisterPowerSettingCallback PoUnregisterPowerSettingCallback to DbgPrint
#860 infuscomus ⇗ @diderius6

I recall you mentioning mixing scsiport and storport on the same system is bad?
#861 diderius6 ⇗ @infuscomus
Have you done a dependency check with Dependency Walker?
No red is allowed there.
Yes, but now I know about scsiport and storport, that they can work at the same time
Dietmar
#862 infuscomus ⇗ @diderius6

yes, I checked with dependency walker - all green

check my attachment earlier for yourself if you do not believe me
#863 infuscomus ⇗ @diderius6

known working driver storahci - gives 7F BSOD - Kernel Trap - in XP

can this be debugged?
#864 diderius6 ⇗ @infuscomus
This storport 5.2.3790.3959  driver will not work together with nvme, because therefor you need storport vers. 5.2.3790.4173.
But maybe storport vers. 5.2.3790.4173 works with the storahci.sys driver.
In any case you need an storahci.inf for this.
Both need KeTestSpinLock function from ntoskrnl.exe, it is in WinServer2003
but not in XP kernel.
So, you have to cancel this KeTestSpinLock function or maximum it will work with WinServer2003
Dietmar
#865 infuscomus ⇗ @diderius6

If you have a WinServer2003 debug setup available, can you debug storahci?
#866 diderius6 ⇗ @infuscomus
Today and tomorrow I have a lot of work for school because of examen.
Make a try, install windbg and test via WinServer debug storahci.
But for this you need registry entries or a working *.inf file
Dietmar
#867 infuscomus ⇗ @diderius6

good luck with your exams!

I think maybe this is the right .inf file? it contains reference to storahci (i could not find a storahci.inf)



infuscomus has attached files to this post
#868 diderius6 ⇗ @infuscomus

I think yes, but you have to add your Ven_&Dev_  id for your ahci controller to this *.inf file
Dietmar
#869 diderius6 ⇗ @infuscomus
In very short time we will have Storahci x86 and x64 for all AHCI controllers under XP
Dietmar
#870 Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #869

In very short time we will have Storahci x86 and x64 for all AHCI controllers under XP


is this storahci from which os ?

 

Page 59

#871 diderius6 Win8
#872 infuscomus ⇗ @diderius6

I tried to patch pciidex.sys of windows 7 to work with XP, so that I would be able to use msahci.sys of windows 7 with XP (msahci of win7 detects all drives properly)

attempted patch of pciidex.sys result is BSOD 7F - 0D
0x0000000D -- An exception not covered by some other exception; a protection fault that pertains to access violations for applications

same BSOD as storahci.sys

maybe there is something in driver that prevents modification that we need to find?
#873 diderius6 ⇗ @infuscomus,  ⇗ @Mov AX, 0xDEAD

Here is storahci driver 32 and 64 bit.
Please test on your compi under XP / win2003

Dietmar

PS: I tested it on the Asrock Ryzen B350 board
    with ahci device VEN_1022 DEV_43B7, works, just nice!
Before installing the storahci driver, you need to copy by hand this storport.sys from nvme device to
folder windows\system32\drivers



diderius6 has attached files to this post
#874 infuscomus ⇗ @diderius6

I have a slightly newer version of 2003 storport 5.2.3790.4485

can I use this version? or I must use 5.2.3790.4173?



infuscomus has attached files to this post
#875 infuscomus ⇗ @diderius6

I've got only a SATA WD Green 120gb m.2 drive in m.2 slot and a separate JMicron card with non-ahci IDE BIOS for installation media connected to the motherboard and nothing else
(except some cables going to empty hot swap bays - should i remove these?)

I integrated storport.sys and storahci.sys and relevant HWIDs manually into txtsetup.sif and added storahci.reg entries into setupreg.hiv

boot into XP setup - 7B BSOD!! argh!!!

edit:
if i send you a copy of my installation media ISO can you check if i have integrated correctly?
#876 diderius6 ⇗ @infuscomus

About storport:
Kai Schtrom makes a check with Ida Pro,
which functions are needed. This was new to me,
because I always think, that Dependency Walker is enough.
But now I understand: Dependency Walker with only "green" is necessary
but not sufficient. The only version of storport that I know with all needed functions
is the storport.sys 5.2.3790.4173 which I sent here.
You can compare it with storport from Vista (has some more functions but also not all) and from Win7 (has all).
Have you tested the storahci, which I sent on your board
Dietmar

PS: The empty slots do nothing. May be, the signal is worse a little bit, but unimportand.
You can use my generic *.inf from Reactos with

[STORAHCI.NTx86]
%SATA_AHCI.DeviceDesc%=storahci_Inst, PCI\CC_010601; Standard SATA AHCI Controller

Next ist USB.

Why you try to make in first step installations media?
I think, if you do so, via txtsetup.oem or nlite it is easier.
Much more easy is to test new version of driver on working XP.
I always go this way, because so you have all possibilities to see,
what works and what not. Install windbg for this.
#877 diderius6 ⇗ @infuscomus

How do you correct checksum in acpi.sys 5048
for to make it XP installations friendly
Dietmar

PS: Can you install with this checksum correct checksum acpi.sys now normal via CD or *.iso file
XP on Ryzen without crying from XP, that acpi.sys is wrong?
#878 infuscomus ⇗ @diderius6

I use CFF explorer to fix the checksum

⇗ https://ntcore.com/?page_id=388

It fixes acpi.sys is wrong error (at least in a VM)
remember to replace acpi.sys in driver.cab too

I have not yet managed to do a successful install of XP on Ryzen - either A5 BSOD (solved) or 7B BSOD (not solved)
#879 diderius6 ⇗ @infuscomus

1.) Extract full content of XP CD to a folder.

2.) Change there in folder i386 acpi.sy_ against modded acpi.sy_ (compressed files with makecab.exe).

3.) Integrate with nlite the driver for asm106x, which I send.

If you have an XP SP3 installation. If other versions of XP, also integrate update pack to XP SP3.

Make winlite.iso.

Burn winlite.iso to CD and install on Ryzen board with a connected harddisk at asmedia 106x slot (first black in row of 4)
Dietmar
#880 infuscomus ⇗ @diderius6

OK,

Do you mind if I send you my modified installation ISO for you to check?

p.s if possible, I would like to install xp onto the m.2 sata drive
#881 diderius6 ⇗ @infuscomus
Test install on m.2 sata drive, I just make new txtsetup.oem for this
Dietmar

PS: You have to copy this version of storport.sys first into i386 installations folder also,
and again after first reboot, because crazy installation deleted it,
because XP does not have an own storport.sys.



diderius6 has attached files to this post
#882 infuscomus ⇗ @diderius6

Thanks,

I will test
#883 diderius6 ⇗ @infuscomus
I just test install XP SP3 with new txtsetup.oem on normal AMD sata slot (not asm106x),
works nice
Dietmar

PS: But I still get message, that acpi.sys is wrong.
It is not a big problem because of hit "Esc" on keyboard,
but how to make this acpi.sys that XP likes:)) it?

After 1. reboot I get message 0x7B, it is normal, because XP deleted storport.sys
in windows\system32\drivers
so you have to copy storport.sys there by hand again.
#884 infuscomus ⇗ @diderius6

I sent you an email with my XP installation media.

can you test it? see if it works for you?
let me know of any problems you find
#885 diderius6 ⇗ @infuscomus

I am just downloading,
slow, needs 30 min:)).
Then I compare it with Beyond Compare 2
and try to install.
I am 100% sure,
that we will have an XP SP3 installation,
which works on any compi and can be installed everywhere there,
I think even via COM1 port^^
Dietmar

 

Page 60

#886 diderius6 About the rtl8111gr network chip on the Asrock B350 motherboard.
I just see, that the chip on the TP-Link adapter is identic
to this one on the Asrock board.
Now I am sure, that it is a design error on the Asrock board.
With the same driver, the rtl8111gr works without problem
on another PCIe slot with the same IRQ 32
But it does not work as inbuild chip on Bios 3.30
Dietmar
#887 diderius6 ⇗ @infuscomus
Soso much drivers on this XP.iso.
I found the error:
You make a mistake in .SIF file for STORAHCI.
Why just dont use Nlite with txtsetup.oem which I sent?
Dietmar

PS: If I where you: Flash back to Bios 3.30.
Use a fresh XP install CD without this big amount of drivers.
Integrate acpi.sys and storport.sys by hand into setupfolder i386.
Dont change any entry in *.sif.
Use nlite for to integrate storahci, which I send here with txtsetup.oem.

EDIT: I think, you forget in TXTSETUP.SIF
 
[SCSI]
STORAHCI = "STORAHCI Installation Disk"
#888 infuscomus ⇗ @diderius6

Can you test your storahci driver with BIOS 5.40?

BIOS 3.30 does not support my CPU

[SCSI]
STORAHCI = "STORAHCI Installation Disk"

I thought this part was just for human readability - [SCSI.Load] is where it is loaded

I will start over with untouched source and load storahci with your txtsetup.oem using nlite
#889 diderius6 I just edit your TXTSETUP.SIF
adding only in

[SCSI]
STORAHCI = "STORAHCI Installation Disk"

and voila,
I can install XP

Dietmar
#890 diderius6 ⇗ @infuscomus

But on reboot,
I got BSOD 0x7B.
It depends not on storport,
storport is there.
So, another mistake happens in TXTSETUP.SIF.

Better use Nlite

Dietmar
#891 diderius6 ⇗ @infuscomus

Good news:))!!!

I just flash Bios 5.40 on the Asrock B350 board.
And installation works.
No BSOD 0x7B after reboot.

On nvme device this was other,
no nvme device at all under Bios 5.40 in XP

Dietmar

EDIT: I am just installing on the normal sata AMD port (not asm106x).
EDIT2: Storahci works only with alignment of 2048 at installationsmedia.

EDIT3: Bad news: On last reboot compi crashs, exact as with nvme device.
Now I try with Bios 4.60. Compi crashs also.

EDIT4: I set up a windbg session and I see, it is an ACPI related error

                     0x000000a5 (0x00000011,0x00000008,0xF778F1E8,0x20120913).

EDIT5: GOOD NEWS(!!!): This crazy XP changed a second time the acpi.sys back to its original version.
Just in this moment I start XP SP3 with Bios 5.40 on normal sata AMD (not asm106.x).

#892 infuscomus ⇗ @diderius6

how do i make sure that storahci is aligned to 2048 of installation media?
#893 diderius6 ⇗ @infuscomus
You can look with Winhex or with AOMEI.
On normal harddisk 63 sectors before 1. partition and on aligned 2048,
mostly from beginning on SSD
Dietmar
#894 infuscomus ⇗ @diderius6

is this for install ISO or harddisk? or both?
#895 diderius6 ⇗ @infuscomus
It is for your sata ssd,
how it is formatted. Aligned to 2048 is normal for ssd, from beginning. But not for harddisks,
Dietmar
#896 infuscomus ⇗ @diderius6

I think I can use windows 10 to properly format SSD?

also, do i need to do anything to the ISO? or does nlite align correctly?
#897 diderius6 ⇗ @infuscomus
"I think I can use windows 10 to properly format SSD?"
Yes.
I noticed, that when I install on medium (harddisk with 63 sectors before first partition)
on next reboot compi hangs.
I come to the idea, that this may be because of not using 2048 alignment.
I reformat hd with 2048 and all went ok
Dietmar

PS: Has nothing to do with *.iso
#898 infuscomus ⇗ @diderius6

can you send me your known working XP install media with integrated storahci?

That way, if I get a 7B BSOD I will know that there is something with my hardware causing the problem and not the install media
#899 diderius6 I am very interested to know,
if somebody other get XP SP3
to work on Ryzen board
Dietmar
#900 infuscomus ⇗ @diderius6

upload it here

⇗ https://uploadfiles.io/

then send me the link

 

Page 61

#901 infuscomus ⇗ @diderius6

does the 2nd (lower) m.2 slot (the SATA one) on the AB350 gaming K4 work for you in XP?
#902 diderius6 ⇗ @infuscomus
I have no real ssd SATA M.2. Only nvme devices with different connections and harddrives and a SATA ssd with a sata connector
exact like for harddisk.
XP on harddisk works in the sata slot, which is dedicated also to the M.2 sata ssd
Dietmar

PS: What is the name of your sata ssd with M.2 layout?
How is this device recogniced in Bios and later at boottime from XP via storahci?
I dont know, if the Asrock fatal1ty ab350 gaming k4 is compatible with sata M.2 devices.

EDIT: I just make a quick test: XP boots, works correct at each of the 6 Sata slots on the board.
This XP SP3 is build only direct via this installationsmedium.

EDIT2 : I just found this: Slot 1 is for a PCI-E M.2....SLot 2 is for SATA
#903 infuscomus ⇗ @diderius6

It's an WDS120G1G0B WD Green 120gb M.2 SATA SSD - It is in Slot 2 and is recognized by BIOS, linux and freedos can boot from it

I'm not sure if storahci recognizes it

can you post a screenshot of the harddisk selection screen you get to in XP textmode on AB350 K4?

p.s can you send me your known working install media?
#904 diderius6 ⇗ @infuscomus
I will test it with sata M.2 ssd in slot 2
Dietmar

EDIT: SATA port 3 is disabled if an M.2 SATA SSD is used in the secondary slot.

EDIT2:  SATA cable connector SATA3_3 blocks the use of the M2_2 slot!
#905 infuscomus ⇗ @diderius6

I have made sure not to use SATA3_3 on my board
#906 infuscomus ⇗ @diderius6

Does M.2 SATA work for you?
#907 diderius6 ⇗ @infuscomus

I have no M.2 SATA here.
I ordered the same WD green 120 GB M.2 SATA as you have
and it will arrive in next days.

For USB mod until now no success
Dietmar
#908 infuscomus ⇗ @diderius6

can you upload a copy of your known working for ryzen XP install media?
#909 diderius6 ⇗ @infuscomus
The installationsmedia works on any Sata slot
on the Asrock B350 board
Dietmar
#910 infuscomus ⇗ @diderius6

thanks
#911 diderius6 I would be happy to know,
if somebody else also succeed
to install XP SP3 on Ryzen board
Dietmar
#912 diderius6 I found out that the WdfCoInstaller01011.dll and WUDFUpdate_01011.dll used in the Microchip winUsb inf file are not compatible to Windows XP at all. So I downloaded the Windows Driver Kit WDK 8.1 (it's about 400MB but we just need ~4Mb as always wink ) which contains the WdfCoInstaller01009.dll and WUDFUpdate_01009.dll.
Changing the Microchip Inf file to the Version 1.9 let it work in Windows XP, so this is what I changed:
[CoInstallers_AddReg]
HKR,,CoInstallers32,0x00010000,"WdfCoInstaller01009.dll,WdfCoInstaller",
"WinUSBCoInstaller2.dll","WUDFUpdate_01009.dll"
[CoInstallers_CopyFiles]
WinUSBCoInstaller2.dll
WdfCoInstaller01009.dll
WUDFUpdate_01009.dll

[DestinationDirs]
CoInstallers_CopyFiles=11

[USB_Install.Wdf]
KmdfService=WINUSB, WinUsb_Install
UmdfServiceOrder=WINUSB

[WinUSB_Install]
KmdfLibraryVersion=1.9
#913 infuscomus ⇗ @diderius6

I tried your XP install media in my system - 7B BSOD, so it's my hardware

on your install media. before the BSOD, the screen goes black to a blinking cursor - weird

my guess is XP does not like my iodd 2531 - I'll have to go and get the real optical drive and media to test
#914 infuscomus ⇗ @diderius6

I was beginning to think I would never see this screen



yay!

now that I've made it this far, when do i use storahci.reg?
#915 diderius6 ⇗ @infuscomus

No need for storahci.reg,
it is only, when you want to install storahci.sys on running XP,
I am happy, that it worked for you
Dietmar

 

Page 62

#916 infuscomus something strange I noticed with the AB350 Gaming K4

In my topmost pcie 1x slot I have a pcie USB2.0 card

⇗ https://www.aliexpress.com/i/32819465989.html

I have noticed that this USB2.0 card will not function (usb devices plugged in wont do anything) unless I install the drivers for the graphics card that is below it.

once i install the graphics card driver, the USB2.0 works fine

very strange

edit:
I think it is the power state - D3
#917 kukonosau To take me about installing acpi.sys please. I don't understand you. How to integrate or install new driver acpi.sys without acpi.inf? Can you show this process installation driver acpi.sys on new motherboard with B350 chipset?
#918 diderius6 ⇗ @kukonosau

By hand you have to put modded acpi.sys into folder i386 on installationsmedium.
For this, put XP SP3 CD in and extract all content of the CD to a folder XPSP3.
In this folder via  commandline type
makecab acpi.sys
this gives you acpi.sy_ which you have to copy into folder i386 in folder XPSP3.
With nlite make a bootable xp.iso from folder XPSP3
and burn it to CD
Dietmar
#919 infuscomus ⇗ @diderius6

got this error with XP today



any ideas for what causes it?
#920 infuscomus ⇗ @diderius6

have you seen this c021a error before?
#921 diderius6 ⇗ @infuscomus
Yes, I have seen this error c021a before.
As far as i remember it happens, when an arcpath was not found.
You can go to registry with regedit
and delete whole key "Mounted Devices".
Now XP has no information about the arcpath at boottime and takes first partition on first harddisk
as drive c:\
Dietmar

EDIT: May be you can start compi in Safe Mode, using F8 at boottime.
Then delete key "Mounted  Devices" in registry.
#922 infuscomus ⇗ @diderius6

is there a way to access the registry of the XP installation from within windows 10?
#923 diderius6 ⇗ @infuscomus
Yes, you can import HIVE "system" (in windows\system32\config) from connected XP drive,
name it "otto"
via registry of Win10. Do all wished changes in "otto"
and then unload it. It is automatically stored back into Hive SYSTEM
for XP
Dietmar

PS: The bootloader seems to chose USB1.0 during XP setup and this makes it slow.
#924 infuscomus
Zitat von ⇗ diderius6 im Beitrag ¶ #923

PS: The bootloader seems to chose USB1.0 during XP setup and this makes it slow.


That would explain why it took 20 hours
#925 kukonosau I already did  BSOD, but not ACPI compliant. I forgot errors. Sorry, I speak in English very bad. I speak in Russian. Do you speak in Russian? Can you tell me about errors ACPI in Russian? Answer me, please. I have not English practics. I sometimes used google- or yandex-translater.
#926 kukonosau Sorry, I must be use disks only or flash also? Because I often used flash device, but sometimes used DVD disks. I recorded Windows XP in flash with program YUMI. USB-ports detected in our time installation, but not ready operating system. Fortunatelly, I have keyboard and mouse PS/2 that support in almost everywhere. If use USB mouse she is uncorrectly work and after stopped worked 2 mouses before restarting system!!!
#927 cedar ⇗ @diderius6

Great works. I am happy to see XP works on your Ryzen board. I burned 2 discs, integrated with Nlite. Installing to hard

drive. first disc failed with bsod 7E. 2nd disc failed with 7b, both failed during installation before first boot. My

motherboard is Asus prime b350 plus with 2 PCI slots, and Ryzen 2600. Probably didn't integrate it right.  

I RWEverything Asus prime b350 plus, it has no MPS. Does your acpi work on your Asus b350?



Only 1 hdd connected. I used acpi.sys ver 5512.
1st disc, I integrated all: storahci,nvme,asm106x, got bsod 7E
2nd disc, integrated only storahci, got bsod 7b.

q1. Is sfc disabled a "must" during Nlite for Ryzen? I probably forgot did it here.

q2. Do I need to add my hardware id to your storahci.inf?
Under win8. I saw 2 entries, one is VEN_1022 DEV_43B7. the other has 7901, Should both ID needed to put into storahci.inf?

q3. I just noticed 5048 posted a day later. I think v5512 is the right one, right?

q4.  I also have a Kingston A400 120GB SSD. Can I combine STORAHCI.sys's TXTSETUP.OEM and nvme.sys's TXTSETUP.OEM into 1
file like below so that I can choose(connect only) either HDisk or SSD before installation with the same iso disc.

Will 2 disk0 and 2 [Defaults] entries interfere?
[Disks] 
disk0 = "STORAHCI Installation Disk", \storahci.inf, \
disk0 = "nvme Installation Disk", \nvme.inf, \

;;; change disk0 of nvme to disk1?

[Defaults]
SCSI = STORAHCI
SCSI = nvme

;;; two Defaults entries! likely will not work?

[SCSI]
STORAHCI = "STORAHCI Installation Disk", STORAHCI
nvme = "nvme Installation Disk", nvme

[Files.SCSI.STORAHCI]
inf = disk0, STORAHCI.inf
driver = disk0, STORAHCI.sys, STORAHCI

[Files.SCSI.nvme]
inf = disk0, nvme.inf
driver = disk0, nvme.sys, nvme


[HardwareIds.SCSI.STORAHCI]
id = "PCI\CC_010601","STORAHCI"
id = "PCI\CC_010802","nvme"


[Config.STORAHCI]
value = "", Tag, REG_DWORD, 1

[Config.nvme]
value = "", Tag, REG_DWORD, 1
#928 diderius6 ⇗ @cedar

It is possibel to integrate many drivers in one txtsetup.oem.
But in the beginning, one step after the other is better I think.
You can test your STORAHCI integration via Nlite,
when you hit F5 during installation and chose "Standard PC" there.
When you can install XP, then do next step
Dietmar

PS: Here is example for 2 different drivers in one txtsetup.oem

; Copyright (c) 2010 Asmedia Technology
;#############################################################################
;#
;#    Filename:  TXTSETUP.OEM
;#
;#############################################################################
[Disks]
disk1 = "Asmedia 106x SATA Controller", \ASM106x, \i386
disk2 = "Asmedia 106x SATA Controller", \ASM106x, \amd64

[Defaults]
scsi = asAHCI_32bit

;#############################################################################
[scsi]
; asahci32.inf
asAHCI_32bit        = "Asmedia 106x SATA Controller 32bit"

; asahci64.inf
asAHCI_64bit        = "Asmedia 106x SATA Controller 64bit"

;#############################################################################

; asahci32.inf

[Files.scsi.asAHCI_32bit]
driver = disk1, asahci32.sys, asahci32
inf = disk1, asahci32.inf
dll = disk1, ahcipp32.dll
catalog = disk1, asahci32.cat


;------------asahxp64.inf---------------------------
; asahci64.inf
[Files.scsi.asAHCI_64bit]
driver = disk2, asahci64.sys, asahci64
inf = disk2, asahci64.inf
dll = disk2, ahcipp64.dll
catalog = disk2, asahci64.cat

;#############################################################################
[Config.asahci32]
value = parameters\PnpInterface,5,REG_DWORD,1
value = "", ErrorControl, REG_DWORD, 1
value = "", Group, REG_SZ, "SCSI Miniport"
value = "", Start, REG_DWORD, 0
value = "", Type, REG_DWORD, 1


[Config.asahci64]
value = parameters\PnpInterface,5,REG_DWORD,1
value = "", ErrorControl, REG_DWORD, 1
value = "", Group, REG_SZ, "SCSI Miniport"
value = "", Start, REG_DWORD, 0
value = "", Type, REG_DWORD, 1
;#############################################################################

; asahci32.inf
[HardwareIds.scsi.asAHCI_32bit]
id = "PCI\VEN_1B21&DEV_0601","asahci32"
id = "PCI\VEN_1B21&DEV_0602","asahci32"
id = "PCI\VEN_1B21&DEV_0611","asahci32"
id = "PCI\VEN_1B21&DEV_0612","asahci32"


; asahci64.inf
[HardwareIds.scsi.asAHCI_64bit]
id = "PCI\VEN_1B21&DEV_0601","asahci64"
id = "PCI\VEN_1B21&DEV_0602","asahci64"
id = "PCI\VEN_1B21&DEV_0611","asahci64"
id = "PCI\VEN_1B21&DEV_0612","asahci64"
#929 diderius6 ⇗ @kukonosau

Use last 5048 modmod acpi.sys from ⇗ @infuscomus,
see here in download below.
For normal XP installation it is best until now
Dietmar

PS: Use real CD an PS/2. XP install via flash drive and USB, strange things happen to me.



diderius6 has attached files to this post
#930 cedar @infuscomus.

Glad to know XP also work on your Ryzen board. I BSOD on two iso discs and also Winntsetup and get stuck on install loop. I can't boot back to win8x64 easily and need to repair boot manager to get back bootmenu.

I have no experience on VM. what (stable)version do you use to test xp installations.

Is there a preferred platform for your Asrock board? win7 or win8, 32 or 64bit?

Under VM, is winntsetup the best way to go?

 

Page 63

#931 kukonosau Where is file ACPI from infuscomus? How to install Windows XP SP2 x64 on motherboard ASUS AM4 B350 PRIME B350M-K?
#932 cedar ⇗ @kukonosau

I think at post #821
#933 kukonosau How to add acpi.sys in driver.cab?!
#934 diderius6 I think, because
storahci needs storport.sys
only XP SP3 can work with it
Dietmar
#935 cedar ⇗ @kukonosau

extract driver.cab to a folder using  winrar or 7z
put acpi.sys into folder.
cabarc -r -m LZX:21 n driver.cab c:\folder\*.*
#936 kukonosau cabarc -r -m LZX:21 n driver.cab c:\folder\*.* is error in cmd: "cabarc" не является внутренней или внешней командой, пакетом или исполняемым файлом. Sorry, I can't translate in English. May be need this command in flash with MS-DOS? I don't understand.
#937 infuscomus ⇗ @kukonosau

i think you need to download cabarc

⇗ https://stackoverflow.com/questions/3361...-cabarc-utility
#938 kukonosau Thanks. I used utility iexpress, create DRIVER.CAB, but BSOD after 2nd restart from install Windows XP when end registry components.
#939 kukonosau Congratulations!!! I can install XP with ACPI!!! I specially install and need BSOD. Before continue in Windows 10 and change old ACPI in folder C:\Windows\system32\drivers modify ACPI. Also before install I change file ACPI.SY_. DRIVER.CAB don't help me((( But where find files ACPI for Windows XP x64? ACPI from x32 doesn't work!
#940 infuscomus ⇗ @kukonosau

i don't have a patched acpi for XP x64

does it have to be XP x64? programs for XP were usually x32

edit:
try here
⇗ http://shorthornproject.com/allcategorie...em=item-drivers
#941 kukonosau How to correct acpi.sys for Windows XP x64? How you can correct acpi.sys for Windows XP x32?
#942 infuscomus ⇗ @diderius6

can you patch acpi 5048 64bit for ⇗ @kukonosau ?

p.s I got my pcie usb2.0 card to function properly for xp testmode setup - i plugged a device into every port.

now i can use my iodd 2531 for xp install
#943 kukonosau But how to patch acpi.sys? Do you can teach me?
#944 infuscomus ⇗ @kukonosau

do you have a disassembler? such as ida pro?
#945 kukonosau No. I wont know, how disassemble file with expansion .sys

 

Page 64

#946 kukonosau But I have Hxd.
#947 diderius6 ⇗ @infuscomus

I get with XP 64 bit the same error on the Ryzen board
0x7E 0xc0000005 (now in 64 bit much loonger)
as with XP 32 bit.
I change storport.sys against the new version and acpi.sys against original 5048 (64 bit) version.
Then I make new txtsetup.oem and new *.inf for the storahci driver, integrate storahci with nlite, works as you can see during setup. But on XP 64 bit, there is no "Standard PC", only uniprocessor and multiprocessor, all with Acpi.
But because I do not see any symbols with Ida Pro,
I cannot hack the acpi.sys vers Longhorn 5048 64 bit.
I think, it is also exact in the same place as in the 32 bit version, one byte change,
means conditional jmp => forced jmp
but I cant see where to do this
Dietmar



diderius6 has attached files to this post
#948 cedar ⇗ @diderius6

Thanks for the suggestions. I have tried many variations last few days, even the 486 Standard PC option.

Installing ACPI Multiprocessor or Standard PC mode end up BSOD at the exact moment "Windows setup is starting" message appeared for my Asus Prime B350-Plus board.

So I used a working XP sp3 running storport.sys from a Gigabyte P75 D3 board, then added newest 5048 acpi.sys and swapped the hard disk to the Asus board.

Now, I can boot Standard PC only in "safe mode" with no usb mouse. It is stable inside this mode. It will BSOD on normal boot before entering Windows , however.

Could it be this Asus board has 2 PCI slots, causing acpi.sys some incompatibility issues.
Only an PCIE Geforce 8400 card was installed, nothing else, to isolate potential issues.
#949 diderius6 ⇗ @cedar

What kind of BSOD you see,
Dietmar
#950 diderius6 ⇗ @cedar
I make a test with the asus prime b350 plus board.
Oha, I got BSOD like you.
NVME boot works, but only for "Standard PC".
Booting with mod mod 5048 acpi.sys
which works until now on any compi gives via windbg:


Microsoft (R) Windows Debugger Version 6.12.0002.633 X86
Copyright (c) Microsoft Corporation. All rights reserved.

Opened \\.\com1
Waiting to reconnect...
Connected to Windows XP 2600 x86 compatible target at (Sat Jun 29 21:17:16.812 2019 (UTC + 2:00)), ptr64 FALSE
Kernel Debugger connection established.
WARNING: Inaccessible path: 'C:\WinDDK\7600.16385.1\src\openfabricsall\nvme13\nvme\objchk_wnet_x86\i386'
Symbol search path is: C:\WinDDK\7600.16385.1\src\openfabricsall\nvme13\nvme\objchk_wnet_x86\i386;SRV*c:\symbols
*⇗ http://msdl.microsoft.com/download/symbols;C:\symbols
Executable search path is: C:\localsymbols
Windows XP Kernel Version 2600 MP (1 procs) Free x86 compatible
Built by: 2600.xpsp.080413-2111
Machine Name:
Kernel base = 0x804d7000 PsLoadedModuleList = 0x8055d720
System Uptime: not available
WARNING: Inaccessible path: 'C:\WinDDK\7600.16385.1\src\openfabricsall\nvme13\nvme\objchk_wnet_x86\i386'
Sat Jun 29 21:17:23.625 2019 (UTC + 2:00):
*** Fatal System Error: 0x000000a5
(0x0000000D,0x8B6333C0,0x4449555F,0x00000000)

Sat Jun 29 21:17:23.656 2019 (UTC + 2:00): Break instruction exception - code 80000003 (first chance)

A fatal system error has occurred.
Debugger entered on first try; Bugcheck callbacks have not been invoked.

A fatal system error has occurred.

Connected to Windows XP 2600 x86 compatible target at (Sat Jun 29 21:17:23.843 2019 (UTC + 2:00)), ptr64 FALSE
Loading Kernel Symbols
...........................
Loading User Symbols

*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

Use !analyze -v to get detailed debugging information.

BugCheck A5, {d, 8b6333c0, 4449555f, 0}

*** ERROR: Module load completed but symbols could not be loaded for ACPI.sys
Probably caused by : ACPI.sys ( ACPI+527b )

Followup: MachineOwner
---------

nt!RtlpBreakWithStatusInstruction:
8052b5dc cc int 3
2: kd> !analyze -v
*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

ACPI_BIOS_ERROR (a5)
The ACPI Bios in the system is not fully compliant with the ACPI specification.
The first value indicates where the incompatibility lies:
This bug check covers a great variety of ACPI problems. If a kernel debugger
is attached, use "!analyze -v". This command will analyze the precise problem,
and display whatever information is most useful for debugging the specific
error.
Arguments:
Arg1: 0000000d, ACPI_REQUIRED_METHOD_NOT_PRESENT
ACPI could not find a required method/object in the namespace
This is the bugcheck that is used if a vendor does not have an
_HID or _ADR present
Arg2: 8b6333c0, The ACPI Extension that ACPI needs the object for
Arg3: 4449555f, The (ULONG) name of the method ACPI looked for
Arg4: 00000000, Base Case

Debugging Details:
------------------


ACPI_EXTENSION: 8b6333c0 -- (!acpikd.acpiext 8b6333c0)

DEFAULT_BUCKET_ID: DRIVER_FAULT

BUGCHECK_STR: 0xA5

PROCESS_NAME: System

LAST_CONTROL_TRANSFER: from 804f8df9 to 8052b5dc

STACK_TEXT:
b84dfaf4 804f8df9 00000003 b84dfe50 00000000 nt!RtlpBreakWithStatusInstruction
b84dfb40 804f99e4 00000003 8b6333c0 8b61d950 nt!KiBugCheckDebugBreak+0x19
b84dff20 804f9f33 000000a5 0000000d 8b6333c0 nt!KeBugCheck2+0x574
b84dff40 b7f1027b 000000a5 0000000d 8b6333c0 nt!KeBugCheckEx+0x1b
WARNING: Stack unwind information not available. Following frames may be wrong.
b84dff80 b7f0d168 8b6333c0 8b633368 b84dffb4 ACPI+0x527b
b84dff90 b7f0d2f4 8b633368 806e791a 80540980 ACPI+0x2168
b84dffb4 b7f0ddc0 b7f35ac8 b7f33010 806e791a ACPI+0x22f4
b84dffcc 80545e6f b7f35a80 00000000 00000000 ACPI+0x2dc0
b84dfff4 805459db b853fc4c 00000000 00000000 nt!KiRetireDpcList+0x61
b84dfff8 b853fc4c 00000000 00000000 00000000 nt!KiDispatchInterrupt+0x2b
805459db 00000000 00000009 0081850f bb830000 0xb853fc4c


STACK_COMMAND: kb

FOLLOWUP_IP:
ACPI+527b
b7f1027b cc int 3

SYMBOL_STACK_INDEX: 4

SYMBOL_NAME: ACPI+527b

FOLLOWUP_NAME: MachineOwner

MODULE_NAME: ACPI

IMAGE_NAME: ACPI.sys

DEBUG_FLR_IMAGE_TIMESTAMP: 424d8208

FAILURE_BUCKET_ID: 0xA5_ACPI+527b

BUCKET_ID: 0xA5_ACPI+527b

Followup: MachineOwner
---------


Dietmar
#951 diderius6 It is the same error as in post 488, the board Asus with B320 chipset there has also an PCI connector.

0xA5 (0x0000000D, Parameter2, Parameter3, Parameter4):

There are many objects that must be defined in the ACPI namespace, and one or more of these was not found. This error generally occurs if either the _HID or _ADR object is missing. An _ADR is used to define the address of a device on its parent bus. The _ADR is a static address that defines slot numbers for devices that reside on any number of bus types, including EISA, floppy, IDE controller, IDE channel, PCI, PCMCIA, and CardBus. The _HID contains objects that supply the operating system with Plug and Play hardware ID for a device. Technically, these objects are optional, but they absolutely must be present to describe any device that is enumerated by an ACPI driver.

So, some device is not recogniced via ACPI, may be pci slots
Dietmar

EDIT: I just boot "Standard PC" from harddisk. This means, the STORAHCI driver works like a charm.
Only acpi.sys needs some more handwork for this board.
#952 cedar ⇗ @diderius6

The old 5048 and 5512 acpi.sys BSOD 7B. With the two older acpi.sys. I can't even get to safe mode on Standard PC.

The newest (mod mod) 5048 have 7B or 7E. I Think mostly 7B. But the newest 5048 is good enough to be stable inside safe mode of Standard PC.

To test PCI compatibility, I add a ATI HDTV Wonder PCI card into a PCI slot. Also no crash inside Standard PC in safe mode. So PCI seems to be stable here. I am getting some Youtube windows debugger tutorials...
#953 diderius6 ⇗ @cedar

Good news:))!
Small hack in mod mod acpi.sys 5048 from Infuscomus
and voila,
full XP SP3 "Multiprocessor ACPI" on the Asus Prime B350 Plus (with 2 PCI slots).
All works, sound, network, grafik, USB 3.1, nvme boot, all SATA ports.
The PS/2 port can only be used for one device, keyboard.
Later it is no problem, because you have a lot of working USB 2.0 slots too.

Dietmar



diderius6 has attached files to this post
#954 infuscomus ⇗ @diderius6

I dug up PEMaker 0.82 again and noticed your newly modded ACPI 5048 has a checksum error



PEMaker 0.82 is able to fix it



infuscomus has attached files to this post
#955 diderius6 ⇗ @infuscomus

Thanks, I just build an XP.iso for the Asus Prime B350 Plus board,
works, I am just installing
Dietmar

EDIT: Install of XP SP3 is ready, nice, absolut stable.
#956 cedar ⇗ @diderius6, @infuscomus.

Thanks so much. I will test them very soon.
#957 cedar ⇗ @diderius6

New improvement at my end, replacing to the newest acpi on the swapped Hard Disk, I can boot APCI Multiprocessor in safe mode now. But still BSOD at normal boot and the blue screen extremely quickly flash may 1/10 of a second so, I can't even see what the message. Normally, the BSOD stay, and also no mouse.

Tried with or without your 6 USBXPSP1 files overwriting the existing USB files in the \systems32\drivers
folder, I still have no working USB!. So I used keyboard to install USB drivers, but only able to partially
install the USB devices in Safe Mode, one root  hub is ok, another root hub with exclamation mark.

3.1 extensible host controller got installed, but 3.1 hub refused installed!. May be things in safe mode behave
a bit erratically, or the downloaded drivers did not match my USB hardware ID somehow.


⇗ @diderius6 , ⇗ @infuscomus
Can you upload a workable USB 2.0/3.0 or 3.1 inf?  Will make another installation disc, may be this time it will
behave much better than the swapped hard disk method.

Thanks.

PS. the STORAHCI driver does works great even at my Gigabyte P75 (Z77) like board.
#958 diderius6 ⇗ @cedar
Make a new installations disk for XP SP3 with nlite.
Copy storport.sys and acpi.sys there by hand to folder i386 using makecab.exe for them before.
The STORAHCI driver integrate via its txtsetup.oem in nlite.
Burn this XP.iso to CD.
On first reboot you have to copy storport again and later also acpi.sys.
Only connect the keyboard to the PS/2 port. You will have no mouse all the time, until the USB driver
works.
After install is ready, copy the 7 USB files from XP SP1 to windows\system32\drivers.
Then go to device manager, rightclick on USB device with DEV_43BB.
Select for this "new driver" and go to the USB3.1 installationsfolder "Controller Drivers".
After install of amdxhc31.sys a new window will open.
This time go to the USB3.1 installationsfolder "Hub Drivers".
Install amdhub31.sys.
After all is ok, connect your mouse to the USB 2.0 slot under the PS/2 slot.
Mouse will work and USB3.1 with full speed on green slots also. I tested yesterday this whole procedure
Dietmar



diderius6 has attached files to this post
#959 kukonosau Thank you!!! I connected USB-devices!!! Microphone Samson C01UPRO is working!!! You are better!!! :)))
#960 diderius6 Here is the AMD IOV device (AMD IOMMU DEVICE),
works now under XP
Dietmar

PS: Look for DEV_1577 in device manager and use only AmdIOV.inf.



diderius6 has attached files to this post

 

Page 65

#961 cedar @diderius6.

Thanks, I did used the AMD USB 3.1 drivers v1.0.5.3 WHQL on swapped hard disk earlier. The controller did installed ,
the Hub could not installed. Thus, no mouse. All of it was done in safe mode  using only keyboard, slow and
unsuccessful. Hopefully , nlite will fix it this time.
#962 diderius6 ⇗ @cedar
I just make a new USB30 driver,
which works on the Asus Prime B350-PLUS board under XP SP3.
This is the very first time, that I see such an driver working^^
Dietmar

EDIT: Funny, USB30 is on the same USB stick faster than USB31.



diderius6 has attached files to this post
#963 cedar @Dietmar

Still BSOD 7b after several burn discs either ACPI Multiprocessor, Standard PC, or Uni ACPI.
All end up same message as below:

7B (0xF78D2524,0xc0000034, 0x00000000,0x00000000).  Don't know if it is useful.

Also having some Nlite problems, all files in root directoy not copied into final ISO, may be because
Dotnet 2.0 SP1 was installed with a new copy nlite 1.4.9.3 download a day or 2 ago. Roots files and additional folders did copied into iso a week ago!.

I did try your new AMD USB3.0 driver on the swapped drive method ( it boots ACPI Multiprocessor in safe mode only, my only bootable XP condition for Asus B350 Prime Plus).

Have not succeed yet, as navigate with no mouse is a very slow process and prone to installing the driver into the wrong controllers and hubs as I can't see ID of controllers. So it is a hit and miss trials. Will try more later, since it works for you.

I want to get any mouse working, on usb2.0 or 3.0 ports so I can navigate Windows to investigate what devices are having problems such that it BSOD in normal boot. I have 1 mouse at usb 2.0 port, another mouse at usb 3.0 port just in case if either could work.

Still at partial installed of USB device controller and root hub. To see a bootable XP in my case. I need
PS2 keyboard to press F8 into safe mode. I read it is somewhat unsafe to hot swap PS2 devices.

It seem I can try hot swap PS2 keyboard with a PS2 mouse after "safe boot" into XP. But I am
worrying about repeat hot swaps the PS2 mouse or PS2 keyboard after every boot.

Is it hard to write a generic usb.reg script to install a USB 2.0 or 3.0 device?. I will google this.

Cedar

P.S. I will try this to see if it applies to XP.
⇗ https://windowsreport.com/usb-not-working-windows-10/
#964 infuscomus ⇗ @cedar

are you using an external USB CD/DVD drive for XP install? or an internal SATA CD/DVD drive?
#965 cedar ⇗ @infuscomus

Before yesterday, I used an external USB CD/DVD drive for XP install.
Yesterday, I used an internal SATA CD/DVD drive as well.

I repeat older fails installs also on SATA just to make sure it is not USB problems.
The BSOD happen on both external USB and SATA dvd drive.

Setup is starting windows, BSOD always happened after this message.
#966 infuscomus ⇗ @cedar

use the internal SATA CD/DVD drive for XP installs

make sure to use nlite to integrate storahci driver for txtmode - ¶ Windows XP SP3 32bit and modern PC parts (59)
#967 diderius6 ⇗ @cedar
Delete in boot.ini

[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional" /noexecute=optin /fastdetect

Dietmar
#968 cedar @Dietmar

Sort of good news. Most recent burnt disc fail both external USB DVD drive and internal SATA DVD drive.

I just tried an old burn disc from 1 week earlier, with acpi ver 5512 on the internal SATA DVD driver,
it failed APCI install. But at "Standard mode", for the first time, it let me choose which partition to install, proceed install and successfully installed and add it to the boot.ini menu. Even though it still BSOD 7B on reboot, but at least it installed.

So the internal SATA DVD drive behaves much better than the USB external drive. Now I can swap this HDisk to another computer, and replace the older acpi ver. 5512 with the latest from June 29. and see what happen.

So now, I would "avoid" the external USB drive to install. The old disc has all the files structure burnt
correctly. Newer discs from last 2 days had Nlite problems, root files in ISO needed to be added back manually.

Ok. I will remove "/noexecute=optin /fastdetect" from boot.ini

Cedar
#969 diderius6 ⇗ @cedar
I changed the cpu X4 950 against Ryzen 1700 on the Asus Prime B350-PLUS board.
Funny, the USB30 changed with the processor now to DEV_145C
where until now no 32 bit version is on the market. But USB31 is still there.
The installations CD for XP SP3 works with new acpi.sys as good as before
Dietmar
#970 cedar @Dietmar

Good news! and good work on your X4 950. I recently learned that hardware ID got changed between IDE and AHCI mode. There was times I search for my hardware IDs and could not find a match on
the net. It was confusing and unproductive.

First time success installing XP in Standard Mode on normal boot, mouse works on USB2.0 port. USB3.1 extensive controller and hub were also installed. The other mouse on the USB3.0 port not
work yet, as there is still 1 USB controller with yellow question mark. The Hardware ID is DEV_145F

Tried your AMD3.0 driver on this USB controller. but did not work yet. may be in other PC mode, it will.

The remaining yellow mark Devices are as follow:

SM Bus controller with hardware ID DEV_790B
PCI Encryption  with ID  DEV_1456
PCI Device with ID   DEV_145A
PCI Device with ID   DEV_1455
PCI Device with ID   DEV_1451

I suspect them to be south bridge controller, PCI Standard Host PCI bridge, Stander PCI to PCI bridge.
Do they needed to be installed? They don't seem to interfere much at the moment.

I will switch to ACPI Multiprocessor soon. Right now I navigate around to see if it is stable first.
Then back it up to another partition before more testing.

Edited: south bridge controller, PCI Standard Host PCI bridge, Stander PCI to PCI bridge all installed
except PSP 3.0.

Cedar
#971 cedar ⇗ @infuscomus
Luckily, I still kept a few earlier fail installed discs. I was surprise it actually let me install sucessfuly from internal SATA drive.
#972 cedar @Dietmar

I followed  the procedures to switch-windows-xp-hal-from-standard-pc-to-acpi-without-reinstall

⇗ https://zedt.eu/tech/windows/switch-wind...hout-reinstall/

Instructions there is like below. It let me choose ACPI hal at the end of instruction without problem,
and no hanging. I can still navigate around Windows.  But upon reboot, can't get in this XP Windows anymore. But I can boot another backup Standard PC mode XP at a different partition.

After normal booting ACPI Multiprocessor PC fail. I try to boot into Safe mode. It failed as well.
This is strange ,because I could boot ACPI Multiprocessor PC in safe mode from swapped hard
disk method mentioned earlier.


Their Instructions:
---------------------------------------------------------------------------------------------------------------------------------------------
So youve installed Windows Xp on a (probably very) old computer and forgot to check the BIOS to make sure APCI is enabled

Now to switch Windows Xp from the Standard PC Hardware Abstraction Layer to the A(dvanced) C(onfiguration and) P(ower) I(nterface) one  so that things like standby/hibernation and auto-power off work  youve got two choices:

   Performs a repair install
   Follow the steps below:

Open Registry Editor and browse to

HKLM\System\CurrentControlSet\Enum\Root\PCI_HAL000

Right click the 0000 key and choose Permissions. Check the Full Control checkbox for Everyone. This will give you control to edit this registry key.

Open the HardwareID value and change it from e_isa_up to acpipic_up (followed by one line break, the cursor should be on the line directly under acpipic_up).

Open Device Manager, open the Computer key, right-click Standard PC, and select Update Driver. Youll pick from a list, dont search, answer accordingly. Select the ACPI entry, which will now be shown in the Compatible Hardware list (joy!), thanks to the previous registry tweak.

If you actually CONTINUE with this and your system is NOT actually an ACPI system, it will become unbootable.

Select Next and let the new HAL install.

Reboot, and youre done!

Since hal.inf locks you into only compatible HALs, you can now update again and select Multi-Processor PC if your system supports it, then youll have multi-cores.

---------------------------------------------------------------------------------------------------------------------------

I was hoping their instructions work in my case. If works, it saves ton of time. I think there might be other
method by add hal option into boot.ini. but not sure if it works.

Edit: They use acpipic_up, may be the right one is "acpiapic_mp". for ACPI Multiprocessor PC.

Edit2:  Just tried "acpiapic_mp". It shows 4 entries of CPU types allow to be changed.
So I chose ACPI Multiprocessor PC. All seem well. No hanging. Can operate Windows as usual.

Next reboot, BSOD 7B. So something deeper is happening here.
On normal boot This 7B is a bit different

7B ( 0xBACC3524, 0xC000 0034, 0x0000 0000, 0x0000 0000)

Edit3:
Try safe boot, got this
0x0000007B (0xF789E524, 0xC0000034, 0x0000000,0x0000000)
#973 diderius6 ⇗ @cedar

All this you dont need, if you make a good installationsdisk via
nlite for XP SP3,
it works
Dietmar
#974 diderius6 I overclock the Ryzen 1700 to 3650 MHZ. Stable, tested with Prime95, Cinebench 11.529 on XP SP3 and youtube video at the same time on the Asus Prime B350 Plus board. Max temperature is 70 degree celsius.
Now it is exact as fast as the Intel Core i7-8700K,
impressive
Dietmar

EDIT: Ram is Corsair Vengeance LPX schwarz DIMM Kit 32GB, DDR4-3200, CL16-18-18-36 (CMK32GX4M2B3200C16).
#975 cedar @Dietmar

That is a nice system you have there :-).

 I am getting closer. I could proceed to complete install XP in graphic mode. change region
setting, minor things etc. XP has no complains and stated setup is completed,and ask for
reboot.

Upon reboot, I get BSOD 7B. It could be a bios version problem. My Asus prime plus B350
bios is 4023. What version is your motherboard BIOS?

Reboot in safe mode also BSOD 7B. I am pretty sure it installed(auto) at ACPI multiproc PC.

 I reinstalled at another partition sometime later. XP also said installation is completed, no errors.
So it is not files or disk errors. But restart XP also 7B and safe mode too.

 I swapped the Hard disk to my Gigabyte P75-D3. Replaced jun 29 acpi.sys back with XP SP3 2008
ver. This XP from Ryzen installation work fine on P75-D3 (i3470 cpu). I verified it is indeed in
ACPI multiproc PC mode. No error, mouse worked too in P75-D3.

 I think it is either my Nlite or BIOS version may be the problem.

Cedar

 

Page 66

#976 infuscomus ⇗ @cedar

on your XP drive go to c:\windows\system32\drivers folder

check that you have these files

acpi.sys - our patched version - should be about 234kb in size
storahci.sys
storport.sys

if you don't have these 3 files you will get A5 or 7B BSOD
#977 cedar @infuscomus.

They are all there. I put extra copies in driver cache , i386 folder too, just in case.
Windows may or may not look there. I also have a Sp3.cab and a Sp2.cab. I replaced
the acpi.sys in those two cab as well just case.

 If I swap the XP installed on Ryzen hard disk to my other Ivy 3470 CPU system. Replace the
newest (Ryzen) acpi.sys , your checksumed version with the one original from XP SP3.

I can run this "new" installed XP (from Ryzen) on the older Gigabyte P75 Ivy system.
So, the newly installed XP seem fully functional on Ivy but BSOD on Ryzen.

On my Ivy system the same storport.sys also run the ahci mode.

I can run XP on Ryzen in standard PC with the same storport.sys and Storachi, but not
APCI Uni or Multi mode.

Cedar
#978 diderius6 ⇗ @cedar

I test with Bios version 3806  and 5007 on the Asus PRIME B350-PLUS board,
both work
Dietmar
#979 infuscomus ⇗ @cedar

do you get the same BSODs in XP textmode setup?
#980 cedar @Dietmar

Good to know that, mine is 4023 is somewhere in between, it should work then.

⇗ @infuscomus

I got  BSODs in XP textmode. and then swap the hard disk to the ivy system. Manually add
acpi.sys, storport, and USBXPSp1. Storachi is already there.

Swap back the HD drive to the Ryzen system. To install Std. mode or lately ACPI multi proc
mode. Ryzen system then let me complete install graphic mode asking bunch of usual
questions.

Name, region time zone etc. till the end. Then XP said install complete,  Click finish.  quite
smooth, no hiccup. On the Std PC mode. I can reboot back to XP.

On ACPI mode, next reboot is BSOD 7B, so I try reboot again, this time in Safe Mode.
Same thing, also 7B. reboot third time, 7B.

The thing is, it let me completely installed. a bit unusual here .

Cedar
#981 diderius6 ⇗ @cedar

storport.sys is gone on reboot
Dietmar
#982 cedar @Dietmar
storport of course is always gone, after txtmode BSOD. After manually added after txtmode BSOD,

it stays there.  Is it not?  Do you mean every reboot?
#983 infuscomus ⇗ @cedar

during xp textmode setup do you ever see something like this?



as in, does storahci ever load?
#984 cedar ⇗ @infuscomus

I did see a textmode screen. and can choose which partition to install to.  Whether the
word " Storahci"  appeared at  the end of the sentence.  I am not sure.  I will install again
to see if it is there.

I installed 3 times successfully at graphic mode.  After textmode complete installed,
BSOD is expected. I knew that.  If I don't use the checksum version, it will complain.
otherwise it proceed to complete textmode install.  Windows folder size is about
550 MB in size after this

After textmode installed. I add Storport and USBXPSp1. Next reboot, Windows let
me install graphically with mouse working till the end.  XP will say setup completed.
Ask to click "Finish" button.

On next (final) reboot, BSOD 7B. This I don't expect is normal!.
BSOD 7B with this message

(0xF78A2524, 0xC000 0034, 0x00000000, 0x00000000)

Try a 4th boot in safe mode,  message "slightly changed"  to

(0xF789E524, 0xC000 0034, 0x00000000, 0x00000000).

Windows folder size now is about 800 to 900MB. and Storport is here in system32\drivers
folder after "Graphic Mode" completed. I swap HD verified that Storport, acpi, Storahci
are all in system32\drivers folder.

This Ryzen XP installation will boot ACPI in my older P75 (z77 clone), with  1 file acpi.sys
replaced. So I am sure the XP is fully functional.

I will install a 4th time, may be in MPS or other mode and see what happen.

Cedar
#985 diderius6 ⇗ @cedar

I think, the acpi.sys is restored to the original one.
You only have to change this original acpi.sys (5512) against the modded acpi.sys (5048) one time more,
Dietmar
#986 cedar ⇗ @diderius6

It is not ver. 5512. This version got me to Std. mode only.

I used the newest jun 29 version on the burnt disc for the 3rd successful installation.

Another older disc with jun 26 version from a week ago, I got the first 2 successful installed
at textmode. and then I replaced the older jun 26 version,  in \system32\drivers
with the newest "jun 29". This let me boot again to install graphic mode successfully.

I did it twice to 2 different partitions. Both  success completely installed. But both XPs
BSOD on next reboot. Safe mode BSOD too.

On 3rd installed, I burn a new disc last night contain latest jun 29 version. Textmode and Graphic
mode installed fine. Hoping it differs this time.

But still BSOD after successful XP installion. Safe mode too. I am a bit confused now.

Cedar
#987 cedar ⇗ @diderius6

Does it work in MPS mode? Or it is not meant to work in MPS mode.

Cedar
#988 cedar @Dietmar

I checked every time after installation. I have no version 5512 in any folders. All acpi
are jun 29 lastest version.

Cedar
#989 infuscomus ⇗ @cedar

MPS has never worked for me

have you got a storahci.inf in c:\windows\inf ?
#990 cedar ⇗ @infuscomus

Hmm... there is no storahci.inf in my inf folder!

Cedar

 

Page 67

#991 cedar ⇗ @infuscomus and @ Dietmar

I wonder if storport needed a .inf too?.
#992 infuscomus ⇗ @cedar

storport didn't for me (although i needed to manually copy storport.sys over)

storahci might need inf though
#993 cedar ⇗ @infuscomus

I will put it in the inf folder.

Edit: It did not work in this case, just tested.
#994 diderius6 ⇗ @cedar

No *.inf is needed,
when you can install Graphik Mode until its end.
Make try to eliminate the extra entries in boot.ini.
In other case, I am quite sure, that one of the
files, I think acpi.sys (5048), is missed in
windows\system32\drivers
Dietmar
#995 cedar @Dietmar

/noexecute=optin /fastdetect was deleted since 2 days ago on boot.ini  for Ryzen.

Did you hard code "Windows\system32\drivers" in Storahci or acpi?
My Windows folder is renamed XP-ryz or something. This is the only thing I can think
of which is different.
#996 diderius6 ⇗ @cedar

Only
C:\WINDOWS\system32\drivers
is allowed
Dietmar
#997 infuscomus ⇗ @cedar

try reformatting your XP drive using default settings in windows 10 or linux - XP default settings does not align properly for SSDs

then install XP onto it - in XP setup when asked to format select no changes
#998 cedar ⇗ @infuscomus

Any good utility to check alignment, are they accurate if the HD has 5 partitions?.

How do you manage trim in XP?. I read that without trim. SSD life span is several
times shorter without proper trimming.

@Dietmar

Does it mean  D:\WINDOWS\system32\drivers or E:\WINDOWS\system32\drivers
will not boot XP because of acpi.sys ?!!
#999 infuscomus ⇗ @cedar

I dont think XP likes more than 5 partitions on a drive - max 4

SSD alignment see here
⇗ https://www.disk-partition.com/windows-1...ws-10-3889.html

corsair SSD toolbox can TRIM in XP
⇗ https://www.corsair.com/ww/zh/blog/the-corsair-ssd-toolbox

whichever windows is booted is always C:
#1000 cedar ⇗ @infuscomus

My C partitions are usually 2GB, sometime with w2k in it. Winntsetup can setup any drive
letter you want to the OS. It worked for me a few times. But properly not easy in this case,
within Win81.

I ended up repairing the bootmanager a few times on this XP,Ryzen setup.

My other XPs on P75-S3 boot to D: or E: etc.
#1001 infuscomus ⇗ @cedar

you should also check that your XP drive is MBR partitioned and not GPT partitioned
#1002 diderius6 ⇗ @cedar

Best tool for correct formatting any device for XP is
RMPrepUSB 2.1.739.
I use for this an ICY BOX IB-112StU3-B,
which makes life easy.
If you use something other than
C:\WINDOWS\system32\drivers
it can happen, that the arcpath is not found, gives BSOD 0x7B.
To change this, only chance is to boot without any
boot.ini (delete complete boot.ini)
and delete via regedit the whole key
HKEY_LOCAL_MACHINE\SYSTEM\MountedDevices
Dietmar

PS: When you set up or try something new: Make it clear and easy as much as possible,
means in this case: Use a normal harddisk formatted as above with no other partition on it and MBR, partition aligned to 2048 sectors.
#1003 cedar ⇗ @infuscomus

My drives are 2 TB. No GPT partitioned needed at the moment.

@Dietmar

My drives are 70% full. Yup, if I have a relatively empty HD, I can backup to
another drive and reformat it. The fastest route now is burn another disc
without  renaming Windows default folder in NLite,  and make sure
all partitions are aligned.

Nlite, on the same source files 2 weeks ago, Nlite work. About a week later,  
iso created by Nlite has issue. else I would have burnt a new disc already.
It is getting pretty close to work now.

Thanks
#1004 cedar ⇗ @infuscomus

At textmode installation today, I did see StorAHCI on the right corner like your picture.

@Dietmar

Today I burn 2 discs. After edit the default Windows folder to "Window" instead of
XP-Ryz. made the ISO, checked ISO txtsetup.sif file. It is Windows as default folder.

Next add the AMDUSB30 and  several more drivers. Made another ISO. burn the disc.
NLite  somehow reverted it back to Xp-Ryz. Should have check the final ISO again before burn!

So changed the txtsetup.sif again. This time  ISO changed "Xp-Ryz" to " Windows". I burn 2nd
disc. and installed XP to the "true" C:\Windows partition hoping it will work.

This is the 4th successful XP graohically installed. Reboot next, same "exact" BSOD 7b message,
safe mode as well compare to 3rd successful installation. When I have an empty HD, wiill reformat
as your suggested. May be alignment cause it.

I will try my Kingston SSD after backup its Win81 content first.

Cedar
#1005 infuscomus ⇗ @diderius6

i found a work around for storport not copying

in txtsetup.sif

[files.acpi]
acpi.sys,4
acpiec.sys,4
oprghdlr.sys,4
storport.sys,4

now it copies across

 

Page 68

#1006 diderius6 ⇗ @infuscomus
Nice finding, I will integrate in CD.
In few days I test new Ryzen >=3000 for XP:))
Dietmar
#1007 diderius6 The generic modded STORAHCI driver for XP SP3 for all AMD boards works also generic on
Intel AHCI
Dietmar
#1008 diderius6 I just ordered an Asus Prime x570 Pro board,
which has an COM1 port, important for windbg.
After I saw first benchmarks I also ordered a cpu
Ryzen 3700x
and then I test test test under XP SP3
Dietmar
#1009 XPLives ⇗ @diderius6
Good CPU choice.  I also think it's the best one from the 7nm launch.

But why a new x570 MB?  X370 BIOS update supports 3700X.  X570 only good for Ryzen 9 16 Core / 32 Threads in September.
⇗ https://www.amd.com/en/products/cpu/amd-ryzen-9-3950x

Better to use the money on that CPU instead of the 3700X if pairing with x570MB.

3700X no point on it since you also own the i9-9900K with same 8 Cores / 16 Threads.
#1010 infuscomus ⇗ @XPLives

He is testing if the newer X570 chipset and 3700X CPU is compatible with XP

B350 is already confirmed to work

the 300 series motherboards might have power delivery issues for the newer 3000 series CPUs - AMD left it up to the motherboard vendors to support it
#1011 XPLives ⇗ @infuscomus
If the point is testing X570 compatibility then just get the X570 MB and test an older gen CPU on it like a Ryzen 7 1700 which is 8 cores also.   If it works then buy the Ryzen 9 3950x for 16 Cores.
If you want to test 7nm compatibility then just buy a low end 7nm like a cheap quad core when it comes out.

I just examined the AsRock X370 board and found it supports these latest Ryzen 3000 CPUS:
AM4 Ryzen 7 3800X(100-000000025) 105W Matisse 3.9GHz 4MB B0 P5.80
AM4 Ryzen 9 3900X(100-000000023) 105W Matisse 3.8GHz 6MB B0 P5.80

Note the 3900X is Ryzen 9 3900X
US $499 12 Cores (24) Threads

So it looks like it can handle 12 Cores without needing X570.  It's possible 16 Cores might work on a X370 MB when it releases in September with a BIOS update.

Also note some of the newer > X370 MBs may no longer have legacy PCI slots on them making it harder to run 98SE retro cards so going to the newest generation will make it much harder if an older gen chipset already has the PCI slots you want and can support the 7nm CPU you want to use.  It was already tough to find any X370 with them and I'm sure X470 and X570 will be even rarer.

The only slight benefit for X570 is PCIe v4.0 which most graphics cards from XP era were probably PCIe 3.0 for the extreme models so it won't have any benefit for XP at all.

If you want a chipset worth upgrading to it's 8 Dimm slots and 16GB or 32GB DDR4 or 64GB/128GB DDR5 memory sticks to reach the 256GB-1TB max.  Most motherboards are capped at 64GB with 4 memory slots so 8 Cores feels too constrictive already and I would rather have 256TB memory with 8 Cores than 64TB memory with 16 Cores.
#1012 infuscomus ⇗ @XPLives

PCI slots are still a possibility with enclosures

⇗ http://eshop.sintech.cn/pcie-express-x1-...le-w-p-933.html
#1013 diderius6 It is just a lie,
that Ryzen 1700 does not work on x570 motherboards.
Just in this moment I am installing XP SP3 on
Asus Prime x570 Pro
Dietmar

EDIT: It hangs with blinking cursor,
I cant see the harddisk. It seems to be a problem
of the STORAHCI driver.
It is not acpi related.
NVME boot also not works.

EDIT2: I connect the CD drive and the harddisk to different SATA slots,
first and last.
Now I can install XP !!!

EDIT3: Acpi multiprocessor works, network works, sound works, graphik works, but USB is a problem,
also no y-cable possible, only PS/2 mouse or keyboard.

EDIT4: Nice, on this board, the Ryzen 1700 (!) at 3741 MHZ with 71 degree Celsius max, is faster than the i7 8700k.

EDIT5: I just ordered USB card Silverstone SST-ECU05 and
I-TEC PCI-E Karte 4x USB 3.0 PCI-Express 2x external 2x internal ueber 1x 20 Pin Adapter internal USB 3.0 port Windows 7 Vista XP (PCE22U3)



#1014 XPLives
Zitat von ⇗ infuscomus im Beitrag ¶ #1012
@XPLives

PCI slots are still a possibility with enclosures

⇗ http://eshop.sintech.cn/pcie-express-x1-...le-w-p-933.html



I recommended that enclosure method on another site about 2 years ago when SkyLake already begun phasing out PCI slots on the AsRock Fatal1ty.  Fortunately other brands like Gigabyte made a SkyLake MB with 2 PCI slots.

But when building a compact fanless all in one retro machine you want as little external adapters as possible.  I think there was one that you could mount internally into a 5 1/4" front slot but you'd have to do internal wiring to a rear bracket for sound output.

Finding 2 PCI slots on a X570 or Z470 / Z570 Ice Lake / Tiger Lake will probably be slim to none would be my guess.  Maybe one or two models may exist as a B570 in limited quantities.

I also have a PCIe to Dual PCI Slot adapter card (no enclosure) basically the same thing without paying a fortune for the external enclosure.  I haven't had time to test that either to see if all PCI cards work properly in it via the PCIe slot but this is the cheapest solution.
#1015 XPLives
Zitat von ⇗ diderius6 im Beitrag ¶ #1013
It is just a lie,
that Ryzen 1700 does not work on x570 motherboards.
Just in this moment I am installing XP SP3 on
Asus Prime x570 Pro
Dietmar

EDIT: It hangs with blinking cursor,
I cant see the harddisk. It seems to be a problem
of the STORAHCI driver.
It is not acpi related.
NVME boot also not works.

EDIT2: I connect the CD drive and the harddisk to different SATA slots,
first and last.
Now I can install XP !!!

EDIT3: Acpi multiprocessor works, network works, sound works, graphik works, but USB is a problem,
also no y-cable possible, only PS/2 mouse or keyboard.

EDIT4: Nice, on this board, the Ryzen 1700 (!) at 3741 MHZ with 71 degree Celsius max, is faster than the i7 8700k.




Yeah I would find it strange if R7 1700 would not work.  A newer one should maintain compatibility, but I hear the BIOS may run out of room soon for all the CPUs supported and I wonder if squeezing all future Ryzen 4000 CPU series will work on the X370.

Do you have any X570 MB with Asmedia 106X SATA controller to test?

Your method seems to only work with the nVME slot or is this on any AMD SATA controller too?

Which universal SATA driver are you using with the X570 and where is the link?  I will try this on the regular AMD SATA controller for compatibility.

Also which ACPI.sys file are you using and I will see if X370 is compatible? The one modified by infuscomus for checksum for VM testing did not work on my X370 MB.


Try installing XP using F7 NO ACPI method on X570 and see if it boots to desktop or can only run in Safe Mode.  I'm curious if it also hangs on your motherboard during first boot to desktop.
#1016 cedar ⇗ @diderius6

Good works on your Asus board.
I am having trouble to get the Lan network work.
I tried a couple of Realtek drivers by adding my hardware ID to it.

VEN_10EC&DEV_8168&SUBSYS_86771043&REV_15

It installed but with yellow exclamation mark. So it did not work.
Can I try your Asus Realtek Lan driver?.

Versions tried:
0001-Install_Win8_8.1_Win7_Vista_6112_03122014
0001-PCI_Install_XP_2K_5719_04062012
Gigabyte P75-D3 ,date 2011
Asus Prime-Plus B350 disc Lan driver.

Cedar
#1017 cedar ⇗ @infuscomus

I am having trouble with XP Realtek Lan driver.
Can I try your Asrock Realtek Lan driver too? May be
it will work on my board too.

As suggested earlier.
[files.acpi]
acpi.sys,4
acpiec.sys,4
oprghdlr.sys,4
storport.sys,4

I added storport.sys,4. But I got message "Storport has value 0 in
[SourceDisksFiles]..." Can not install. Press F3 to exit.

Cedar
#1018 XPLives Did you install and get that Realtek LAN working in Windows 7 or 10?

If so what is the name of the device listed in Device Manager?

Sometimes it will tell you Realtek 8168A,B,C,... the last letter at the end is important.  If not shown there, you have to examine your motherboard with your eyeballs and see if you can find the Realtek Chip ID name which should show the letter after 8168.
#1019 cedar @ XPLives. The Realtek Lan works in win81. I believe I saw 8168H
with H from  Doubledriver.

Edit: It is in section H. Not necessary 8168H. My mistake.

From Doubledriver 's Restore.inf of Win7 a while back.

DriverDesc=Realtek PCIe GBE Family Controller
DriverVersion=7.109.526.2017
DriverDate=5-26-2017
DriverProvider=Realtek
DriverClass=Net
DriverInfPath=oem5.inf
DriverInfSection=RTL8168H.ndi.NT
DriverHardwareID=pci\ven_10ec&dev_8168&subsys_86771043&rev_15

-------------------------------------------------------------------

From Doubledriver 's Restore.inf of "Win81", It has 2 IDs?!

[RestoreInformation]
DriverDesc=Realtek PCIe GBE Family Controller
DriverVersion=8.1.510.2013
DriverDate=5-10-2013
DriverProvider=Microsoft
DriverClass=Net
DriverInfPath=netrt630x64.inf
DriverInfSection=RTL8168E.ndi.NT
DriverHardwareID=pci\ven_10ec&dev_8168&rev_06
[RestoreInformation1]
DriverDesc=Realtek PCIe GBE Family Controller
DriverVersion=8.1.510.2013
DriverDate=5-10-2013
DriverProvider=Microsoft
DriverClass=Net
DriverInfPath=netrt630x64.inf
DriverInfSection=RTL8168.ndi.NT
DriverHardwareID=pci\ven_10ec&dev_8168&rev_15

Strange! 2 Hardware ID's.

Cedar
#1020 diderius6 ⇗ @cedar ⇗ @infuscomus ⇗ @XPLives
I use this lan-driver for Realtek.
acpi.sys is my latest version and STORAHCI (big thank to Samuel Marins Oliveira) also with new storport.sys and txtsetup.oem
Dietmar

PS: I do not edit txtsetup.sif by hand, only use nlite and copy by hand acpi.sy_ and storport.sy_ via makecab.exe to the installationsfolder i386 for CD.



diderius6 has attached files to this post

 

Page 69

#1021 cedar ⇗ @diderius6

Thanks. I will try them soon.

Cedar
#1022 XPLives Yeah you will have to do the eyeball to motherboard check.

Look for where the Ethernet connector comes in from the rear side of the motherboard.  Then follow that into the motherboard and look for any Realtek 8168 chip.  You can find which model it is that way.
Probably starts with RTL.

I have a few PCIe NIC from Realtek and you can read it off the chip if you look closely.

I can confirm the one in Ivy Bridge I had is 8168E that works in XP.

Okay the one I recommended to buy off eBay the chip will say on it:
RTL8111E.

Cost about $5 on average shipped to the US total cost.

This one works great if not depending on the motherboard to hook it up which sometimes you have to be picky about which motherboard to get if you don't want to use any internal slots up.
#1023 diderius6 I just flashed the new Bios PRIME-X570-PRO-ASUS-7010
with result, that the board with Ryzen 1700 does not promt any longer, brrr.
But before I make a complete extract of the Bios with Universal BIOS Backup ToolKit 2.0.exe.
Now I am going to flash the Bios back, because ASUS CrashFree BIOS 3 does not work at all!
The Bios chip is Winbond 25Q256JWEQ, which is package size WSON 8x6-mm (8 pins)

25Q256JW
1.8V 256M-BIT
SERIAL FLASH MEMORY WITH
DUAL/QUAD SPI

I use for this Epromer tl866ii plus which supports this Bios chip as W25Q256JW(1.8V) @SOIC8
Dietmar

EDIT: I cant flash this Bios chip until now, because the package size 8x6-mm is too big for my test clip.
Because my original 407 Bios version is not listed at Asus site, I think, they just deleted the CPU id for Ryzen 1700,
for to make true, that this first generation of Ryzen chips can not work on this board..
#1024 diderius6 I just see, that the Universal BIOS Backup ToolKit 2.0.exe reads out only 16Mbyte (I compared 2 times)
but the Bioschip 25Q256JWEQ is 32Mbyte!!! So, on 256 Megabit Bios chip forget about this tool!
(EDIT: May be, that the Bios was before 16 Mbyte. And this information is written in header and the rest may be only FFFFFFFF..
In this case, I have a working Bios file.EDIT2: No, the Bios is always 32 Mbyte. The Tool Universal BIOS Backup ToolKit 2.0 does not work for this BIOS. )
I make a try with Epromer tl866ii plus to read the chip out, but fail.
I solder 8 cables, check check check each one for good contact, ok, works.
But even without cpu, ram, cmos battery,
the Epromer told "unknown chip" (but Pin check is ok) and reads out only FFFFFFFFFFFFFFFFF...also as serial number FFFFFFFF.
This behavior I know from results with other Bios chips, it just means, that not enough power is left for the insoldered chip.
To solder this Bios chip out will be a hard job, because other solder points are very near.

So I make NO try to write anything to this Bios chip, I also have no valid copy(?see above) from original Bios before.
Now, I desolder all cables, connect cpu, batterie, ram but behavior is the same as before:
The yellow LED is on all the time (ram). I changed to other DDR4 ram, test every slot,
no success, always yellow LED on.
So I wait for my 3700x cpu and then we will see.
No error message has been there when updating the Bios with Asus EZflash tool from version 407 to 7010.
Dietmar

#1025 cedar ⇗ @XPLives

Wow, it is small like a pea on the motherboard.
I need a flash light. It shows 8111H on the chip.
Good info to know, thanks.

After adding my HW ID to Dietmar's driver. Networking is ok now.
The remaining 2 devices still have yellow exclamation mark are
the AMD GPIO device and USB 3.0 driver. If I try to install
USB 3.0 driver on the Standard Enhanced USB controller(installable),
but with no function USB HUB driver.

I got BSOD with USBport.sys error. So mouse on USB 3.0 port not
working, but mouse on 3.1 port works, as USB 3.1 driver works.

Cedar
#1026 diderius6 I changed the cpu Ryzen 1700 against Ryzen X4 950 on the Asus Prime x570-Pro.
This time nothing at all happens, when I try to start the board.
So I hope for the best, that the Ryzen 3700x (comes tomorrow)
will boot this board. Interesting, if it is possible to flash back to the first, original 407 Bios
Dietmar
#1027 diderius6 The yellow LED (ram) stays enlighted, even with new processor Ryzen 3700x on the Asus Prime x570-Pro.
So, Asus has done a very bad job on their new Bios 7010 for this board. No flashback Bios no crashfree Bios, all lie
Dietmar

PS: Hope, that desoldering the Bios chips and flash new (with old Bios 407) will help.
Or I put this board away and just stay with Intel.

It is not me, to give up so quick. I just ordered the Epromer REVELPROG IS
who supports the 25Q256JW Bios chip. I hope, that with this Epromer I can flash
the still insoldered Bios chip. Until now, I do not find this Bios chip for to buy.

EDIT: I found this Bios chip at mouser.com and ordered it:
Mouser-Nr.:
454-W25Q256JWEIQ
Herst.- Nr.:W25Q256JWEIQ
Beschr.: NOR-Flash spiFlash, 1.8V, 256M-bit, 4Kb Uniform Sector

EDIT2: After long search I found also a socket for this Bios Chip
Description
The socket is designed for chips with WSON8 6*8 mm package. The socket can be soldered directly on the WSON8 6*8 mm PCB foot print. Will be not easy to solder.


#1028 diderius6 I succeed to flash the original Bios 407 back to the Asus Prime x570-Pro board.
The serial number of the Bios chip 25Q256JWEQ is EF6019.
Uefi tool shows this as a valid Bios, 16 Mbyte.
I test this 2 times. All seems ok. I also read out before the "new" Bios 7010, Uefi tool show this as valid Bios, 32 Mbyte.
I reset Cmos, put the Ryzen 1700 in, which works there before.
But the yellow LED (ram) continues to shine. I test different DDR4 rams, in different slots. Always the same,

Dietmar

EDIT: I just order a new board Asus Prime x570-Pro.
#1029 diderius6 This message I send to Asus:

"Dear Sirs and Madames,
5 days ago I bought an Asus Prime x570-Pro.
The CPU is Ryzen 1700. Everything worked with it.
A bios version 407 was indicated to me.
I have made a backup of this bios,
however, it does not work, possibly because of the wrong size 16 Mbytes, since the new updates all have a size of 32 Mbytes. The biochip is Winbond 25Q256JWEQ (Wson 8 * 6, 8 pins).
With this Ryzen 1700 CPU I have updated to the Bios 7010. The update via USB stick was normal, means works full until the end, without any error message.
After that I could not start the board anymore, the yellow LED (RAM) lights up constantly. Other DDR4 Ramsticks in different slots do not change that.
I have also tested the Ryzen processor 3700x, the yellow LED is constantly on.
I would be very happy if you could send me an original Bios 407 with the number for the network card, etc.
I have experience in biosupdate and can flash a bios by eprommer.
Please send me such a bios without the CAP backup,
many greetings
Dietmar
"
#1030 diderius6 Now I will test the Ryzen 3700x for XP on the
Asrock Fatal1ty AB350 Gaming k4 board,
there I can change the Bios chip
Dietmar
#1031 diderius6 Yessssssa, nice board Asrock Fatal1ty AB350 Gaming k4 !!!
I think, this is very first time, XP SP3 on Ryzen 3700x.
I update Bios from 5.40 to 5.80.
Size of Bios is always 16 Mbyte.
Even USB 3.1 works, ACPI, lan, sound, STORAHCI, mouse, y-cable on PS/2 and everything else.
The Ryzen 3700x is in Cinebench without any overclock
exact as fast as the 9900k
Dietmar

EDIT: Chipset is not running hot, and also the Mosfets not. Temperature is about 50 degree Celsius
with Prime95, 3DMark2001, Cinebench, Youtube video running all at the same time.
The CPU Ryzen 3700x reaches 78 degree Celsius during this torture , which is about the same as with Ryzen 1700.
Both use 65 Watt.

EDIT2: I just get 143 brandnew updates for XP SP3 from Posready2009:)).

EDIT3: Any overclocking makes the cpu a little bit slower!

EDIT4: Nvme boot of XP does not work. Last time was with Bios 3.30.

EDIT5: With nearly zero load, cpu core is 1.50 Volt (standard settings all). This is not good for cpu long life.

#1032 XPLives ⇗ @diderius6

Try installing XP with F7 NO ACPI method on the same motherboard.

Will it install XP all the way to first desktop boot or freeze?

Freezes on my Asrock X370.  Safe Mode works but very sluggish as if something stalling it and mouse is laggy sometimes.

Any Windows 2000 OS install on Ryzen success?


Maybe try to add 3700X CPU MicroCode to BIOS 3.30 so it works and can use nVME XP boot?

My hope is Intel Ice Lake / Tiger Lake continues same backward compatibility as Z370 so XP will continue to work using 10nm including Windows 2000.

Seems too many compatibility issues with AMD AM4 so far.  Intel's backward compatibility is superior.

Intel Sapphire Rapids for 7nm and DDR5 / PCIe 5.0 256GB-512GB RAM support with 8 memory modules I will upgrade then and use XP.

Tired of limited 64GB memory max with 4 slots instead of 64GB DDR5 memory sticks and 8 slots to match the 16 Cores / 32 Threads.
#1033 diderius6 ⇗ @XPLives
I have not tried to install "Standard PC" on Ryzen 3700x,
because then you dont get Acpi after.
Only vice versa this works.
The installation works without any crash or freeze.
I noticed another thing: On Ryzen 1700 the STORAHCI driver was faster than the ASM106x.
But on Ryzen 3700x, the ASM106x is faster
Dietmar

PS: Asrock changed whole Bios from version 3.30 to version 3.40.
With 3.40 the problem with lancard is gone, but also nvme boot is gone.
So, in the end I stay with Intel, because those kind of problems I have never seen there.
It is a problem of how the board is constructed. Crazy, how Asrock can to give lancard the same lines as for USB3.1.
On all my newer Intel boards I can do nvme boot of XP SP3 and those crazy problems with Bios updates I match the first time with AMD, brrr.., but ok, now I am again better in soldering..and do crazy things to flash an Bios chip:)).
#1034 infuscomus ⇗ @XPLives

Can you take a screenshot of the A5 BSOD you are getting on X370 in XP?
#1035 diderius6 ⇗ @Lost_N_BIOS

Can you please help me to save my Mac adress etc.
from the broken Bios of AMD board asus prime x570-pro?

I make a backup with working Bios 407 with Universal BIOS Backup ToolKit 2.0.exe, which may have wrong file 16Mbyte size which I call 407.
The other is with Epromer full read out after the update, not working Bios 7010 32MByte,
I call 7010.

Dietmar

PS: Both Bioses should have Mac adress etc. from my board and they should be identic.

⇗ https://ufile.io/0nlebva8

⇗ https://ufile.io/pttbiy9k

 

Page 70

#1036 diderius6 Ok, what I found with Winhex for the Asus Prime x570-Pro board in its readout of Bios 407 (and also 7010) is

SN      190551498900517  (Dezimal) at 2 places
MAC    04D9F51E29E0       (Hex) at 2 places
UUID   D008090B92A5E8F9C07D04D9F51E29E0 (Hex) at 2 places


From Asus Website I download oldest Bios, what I can get
0602 version.
This Bios I open with UEFI-Tool and for to delete cap I store only UEFI image (under AMI Aptio capsule).

I use FD44Editor.exe to copy this values direct into the downloaded Bios (free from cap) from Asus website (to change the 2 times 50 (FF..) against the above values at its 2 places )
and flash via Epromer direct to Bios chip,
Dietmar
#1037 diderius6 I flashed this bios 602 with Mac, UUID, SN back to Asus Prime x570-Pro board.
I doublecheck, that the written Bios is exact the same as the Bios file.
But still the yellow LED is on,
so something really bad is going on
Dietmar
#1038 infuscomus ⇗ @diderius6

faulty RAM maybe?
#1039 diderius6 ⇗ @infuscomus

No, I tested different Ram sticks, different brands. All they work on other boards.
Double, single mode, each slot.
It is Bios related, because the same ram works before also on this board,
see photos in post 1013 here. And it is not only one Bios
for this motherboard, that fails. The 602 version fails also,
next to 7010.
The only Bios, that worked, was version 407 for Ryzen 1700.
Tomorrow I will test this Bios 407 and also Bios 804 on second new board Asus Prime x570-Pro with Ryzen 3700x.
Dietmar

PS: Asus sent me mail, that they accepted my case
but nothing more.
#1040 XPLives ⇗ @diderius6

Zitat von ⇗ diderius6 im Beitrag ¶ #1033
@XPLives
I have not tried to install "Standard PC" on Ryzen 3700x,
because then you dont get Acpi after.




Yes that is the point of the test to see if it installs fully and boots to the desktop in F7 NO ACPI method.  If it works then you can still use XP minus hyperthreading and shutdown/standby on AMD AM4.

This determines compatibility.  In all the tests I've seen with Coffee Lake and SkyLake both have no issues installing XP to completion using this method.

I want to see what happens on your X370 and your X570 MBs using "F7 NO ACPI method" if XP can install successfully and boots to desktop in normal mode.

If not I want to know where it freezes and if Safe Mode works to get to the desktop during this failure.
#1041 XPLives ⇗ @infuscomus

Zitat von ⇗ infuscomus im Beitrag ¶ #1034
@XPLives

Can you take a screenshot of the A5 BSOD you are getting on X370 in XP?


It's your typical BSOD A5 screen message.

Here are the Error Codes using your image:
⇗ How to install Windows XP OS on AMD (AM3+ 990FX and AM4 X370 Ryzen 7)
#1042 diderius6 I just ordered the cheapest RAM stick (20 Euro),
which is in the compatiblity list from Asus for memory for the Asus Prime x570-Pro board.

G.Skill NT Series DIMM 4GB, DDR4-2133, CL15-15-15-35 (F4-2133C15S-4GNT)

Dietmar

PS: If this one also will fail, it is to 100% the fault of Bios from Asus.
#1043 diderius6 ⇗ @XPLives
At the moment I have no working x570 board.
But I think, without ACPI install of XP SP3 will be no problem
Dietmar

PS: When you install XP SP3 via CD, the screen with special BSOD is important for diagnosis.
#1044 XPLives ⇗ @diderius6

Zitat von ⇗ diderius6 im Beitrag ¶ #1043
@XPLives
At the moment I have no working x570 board.
But I think, without ACPI install of XP SP3 will be no problem
Dietmar

PS: When you install XP SP3 via CD, the screen with special BSOD is important for diagnosis.

Test on your X370 MB with F7 NO ACPI method install.  Let me know the results for your Ryzen 7 3700X and Ryzen 7 1700 CPUs if both install XP successfully with NO ACPI.

BSOD A5 ACPI Error Code Results are here:
⇗ How to install Windows XP OS on AMD (AM3+ 990FX and AM4 X370 Ryzen 7)

Unfortunately your ACPI.SYS did not work.  It's possible your ACPI.SYS is only compatible with your MotherBoard or just Ryzen CPUs but not earliest AM4 Bristol Ridge and Raven Ridge CPUs.

At the moment I cannot say the ACPI.SYS is universal since it has failed on my X370 which should have worked.

I have yet to test it on the SkyLake and Coffee Lake MB to see if that fixes the ACPI issue.

I'm now testing F7 NO ACPI method using the same image.  Should see the new results within the hour.
#1045 diderius6 ⇗ @XPLives
Read post 891 here
Dietmar

PS: I test Athlon X4 950, A8-9600, Ryzen 1700, Ryzen 3700x, 8700k, 9900k for XP SP3.
All work with this acpi.sys. And Infuscomus test also 2400G with success.
Also I test some Celerons, Pentium for Skylake, Coffeelake, work with full ACPI.
#1046 XPLives ⇗ @diderius6

Zitat von ⇗ diderius6 im Beitrag ¶ #1045
@XPLives
Read post 891 here
Dietmar

PS: I test Athlon X4 950, A8-9600, Ryzen 1700, Ryzen 3700x, 8700k, 9900k for XP SP3.
All work with this acpi.sys. And Infuscomus test also 2400G with success.


If your X370 works with Bristol Ridge then maybe motherboard differences exist between B350 and X370 chipsets.

Test F7 NO ACPI on your B350 XP install on your Bristol Ridge see if it can install XP completely to first desktop.

Still installing XP (driver.cab) 7% stuck for a long time almost half an hour.  Might reboot the computer and hook optical drive to a different SATA port than AMD if this takes too long with no progress.
#1047 diderius6 ⇗ @XPLives
Until now I do not have a x370 board for testing.
From AMD I tested B320, B350, x570 which all works with full acpi and XP SP3
Dietmar

PS: I installed XP SP3 on 2 different Bristol Ridge CPUs without and also with acpi,
see above.
#1048 XPLives ⇗ @diderius6

Zitat von ⇗ diderius6 im Beitrag ¶ #1047
@XPLives
Until now I do not have a x370 board for testing.
From AMD I tested B320, B350, x570 which all works with full acpi and XP SP3
Dietmar

PS: I installed XP SP3 on 2 different Bristol Ridge CPUs without and also with acpi,
see above.


Ahh... I had to reset then moved both optical drive and SATA SSD to Asmedia 106X ports.

I think AMD SATA ports dislike XP installation for some reason.  Even SSD on AMD and optical drive on Asmedia had issues.

Seems to copy now faster on both Asmedia but hanged on different parts after files copied.

Now I reset the BIOS and do a clean test again now to be certain no conflict.

Were your ACPI and NO ACPI tests all done on SATA SSD on Asmedia SATA ports?
#1049 diderius6 ⇗ @XPLives
Most I use normal harddisk (I use about 20 harddrives each 2 Terabyte black WD, very fast>200 Mbyte/sec)
because I can easy format, align and copy file by file from and to them via USB adapter
Dietmar

PS: Before we have STORAHCI driver, which works for any AMD and any Intel SATA, I always use asm106x. Only for Intel board,
there has been a generic SATA driver for years now on the market.
The CD drive only hangs, when the CD disk is not absolut clean.
#1050 infuscomus ⇗ @XPLives

So my install media that I used for my AB350 GamingK4 board froze for you on X370?

What motherboard do you have?
Which BIOS version?


BSOD A5 ACPI Errors:
0x00000011
0x00000008
0xF79A1478
0x20120913


I think this means ACPI failed to load DDB.
⇗ https://docs.microsoft.com/en-us/windows...acpi-bios-error

I would get this error when I tried to patch the DSDT table, never worked and ended up using the patched driver that supports more arguments (CreateQWordField for example)

 

Page 71

#1051 diderius6 ⇗ @Lost_N_BIOS

Do you know a tool,
that can read out the full 32 Mbyte of Bios chip on AMD AM4 board Asus Prime x570-Pro?
Universal BIOS Backup ToolKit reads only 16 Mbyte out,
but Winbond chip 25Q256JWEQ is 32 Mbyte,
Dietmar

PS: Ok, this means soldering.
#1052 diderius6 With original readout of the 407 Bios (nightmare, is really 32 Mbyte and not all FF after first 16 MB, so the tool
Universal BIOS Backup ToolKit 2.0 cant be used for this Bios chip with 32 Mbyte!)
I succeed to start with Ryzen 1700 and with Ryzen 3700x
on the AMD AM4 board Asus Prime x570-Pro XP SP3 full Acpi, all works, USB only via Pcie card.
The website from Asus tells only nonsense about Bios versions, compatible Ram and compatible processors for this board Asus Prime x570-Pro. And the most evil is, that the Bios version 407 cant be found there.
Ryzen 1700 works at once with all different ram sticks,
but for the Ryzen 3700x I had to change ram as much as possible,
before one time I see the yellow LED blinking.
After next 4 tries with changing ram, slots..
the board starts with Ryzen 3700x. Any other Bios version than 407 does not work on this board until now.

NEVER update your BIOS on this board or you will be lost!!!

EDIT: After 30 min prime95 with Ryzen 3700x it crashes. The Asrock Fatal1ty AB350 Gaming k4 runs stable for about 2 hours with the Ryzen 3700x and the torture includes prime95, Cinebench, 3Dmark2001 and Video from Youtube all the time.
So, this 80 Euro board is better than this new one for 280 Euro, brrr..

EDIT2: With Ryzen 1700 @3641 MHZ and the same torture test, the Asus Prime x570-Pro (Bios 407) crashes after 53min.
Tmax is 74 degree Celsius. Repeating the same for Ryzen 1700 no overclock at all, now it crashes after 35 min.
Asus Prime x570-Pro is build quick and dirty.

Dietmar

#1053 diderius6 I run a new stresstest on the Asrock Fatal1ty AB350 Gaming k4
with the Ryzen 3700x cpu.
prime95, Cinebench, 3dmark2001, video from Youtube all the time.
It is stable, nice board.
Even the temperature managment is better on the Asrock board than on the asus prime x570-pro:
78 degree Tmax Asrock against 81 degree Celsius Tmax Asus in long run
Dietmar

PS: Asus send me a mail, that I can rma the board.
And that they dont have the Bios 407 (from their own board(!)) .
Oh, a lie in combination with worst service ever.

EDIT: Correction, Asrock Fatal1ty AB350 Gaming k4 board crashes on this torture also after about 1 hour.
First network connection is gone (this is reproducible in about 1 hour torture) (Youtube) and then BSOD, brrr..
EDIT2: Now 90 min torture on the Asrock board without any crash.
#1054 diderius6 I succeed to flash the Bios back on the Asus Prime x570-Pro board,
something, from what the man from Asus told "it is impossible".
The Bios chip is now "hardwired",
I use the SPI-TPM link for this:
Adapter with 2 rows a 7 pin, 2 mm distance
SQT-107-01-L-D
via mouser.com
Dietmar

PS: By the way I notice, that all about Mac, UUID, serial etc. is also nonsense.
I have now 2 compis which where to 100% identic.
Take a look at the Bios version:))!!!

EDIT: On Cinebench, the Ryzen 3700x is 23% faster as the Ryzen 1700. Hm, for what is the Hype?





#1055 diderius6 The REVELPROG IS is by far the best Epromer, that I know.
It is manufactured in Poland and quite expensive (150 Euro).
Very good quality and good Software support.
And it is fast. It runs on XP SP3, Vista, Win7, Win8, Win8.1, Win10 (all 32 or 64 bit).

Now I can read and flash any Bios chip,
without any soldering or to put the Bios chip out of the mainboard.
No clip is needed. I just use the SPI TPM connector with this nice Epromer, professional as in factory,
Dietmar

PS: It includes a Hexeditor, so you can manipulate single Bits in Bios file and flash this new Bios.
Also it has a checksum tool.
And a DiffChecker tool, that allows you to compare 2 bin or hex files at one screen (waoh).

EDIT: SPI TPM (female) Adapter is 2 rows 7 pin, 2 mm distance
SQT-107-01-L-D
via mouser.com
#1056 nofearek9 hello,whats the solution for winxp to see hard drivers bigger than 2TB ?

Asus Rampage IV Black Edition,Intel Xeon e5-1680v2@4,7ghz,Corsair XMS3 64GB DDR3(8x8),Samsung 950 PRO 256GB,EVGA GeForce RTX 2070 XC GAMING 8GB,Lian Li PC-60FNWB ,Corsair Gold AX750PSU,Noctua NH-D15 .
Asus Rampage III Gene,Intel Xeon X5660@ 4,5ghz,Corsair XMS3 48GB DDR3(6x8),Samsung 950 PRO 256GB.
#1057 diderius6 ⇗ @nofearek9
You can buy the driver Paragon GPT Loader for XP, I have,
with which you can read GPT drives under XP as large as you want
Dietmar

EDIT: And even with MBR XP can work via USB with really big drives, just formatted
with NTFS and 4k sectors.
⇗ https://www.seagate.com/de/de/internal-h...s/hdd/ironwolf/
16TB 5 years garantie, 250 MByte/s, sectors 512e , means Emulation via 4k should be recogniced from XP from start.

By the way, I prefer WD, no error on HD in 10 years.

Align to 4096 sectors and all HD with 512e > 2TB can be used in XP 32 bit also as boot device with MBR,
very fast, no difference to <= 2TB.
⇗ https://geizhals.de/western-digital-wd-b...=de&hloc=de&v=k
250Mbyte/s read, write in XP, nice.
#1058 nofearek9 i dont want to format the drives cause they already have data on them,its about 3TB usb drives,paragon dont offer anymore the driver is discontinued.

Asus Rampage IV Black Edition,Intel Xeon e5-1680v2@4,7ghz,Corsair XMS3 64GB DDR3(8x8),Samsung 950 PRO 256GB,EVGA GeForce RTX 2070 XC GAMING 8GB,Lian Li PC-60FNWB ,Corsair Gold AX750PSU,Noctua NH-D15 .
Asus Rampage III Gene,Intel Xeon X5660@ 4,5ghz,Corsair XMS3 48GB DDR3(6x8),Samsung 950 PRO 256GB.
#1059 infuscomus ⇗ @nofearek9

I have GPT loader if you want it
#1060 nofearek9 yes please ,if you can upload it will be nice,thanks.

Asus Rampage IV Black Edition,Intel Xeon e5-1680v2@4,7ghz,Corsair XMS3 64GB DDR3(8x8),Samsung 950 PRO 256GB,EVGA GeForce RTX 2070 XC GAMING 8GB,Lian Li PC-60FNWB ,Corsair Gold AX750PSU,Noctua NH-D15 .
Asus Rampage III Gene,Intel Xeon X5660@ 4,5ghz,Corsair XMS3 48GB DDR3(6x8),Samsung 950 PRO 256GB.
#1061 infuscomus ⇗ @nofearek9

I sent you a PM
#1062 XPLives ⇗ @nofearek9, ⇗ @diderius6, ⇗ @infuscomus

Zitat von ⇗ nofearek9 im Beitrag ¶ #1056
hello,whats the solution for winxp to see hard drivers bigger than 2TB ?


Since this discussion relates more to my other thread I felt it better to respond there in its entirety where it makes more sense.

⇗ The XP Yeager Project: 16TB -- Breaking the 2.2TB Capacity Barrier
#1063 canonkong I had made some generic USB drives for XP 32/64bit, and it test on my B360, X370 and R7-3700X has a usb controller named 149C, the same with X570. They are all working!
#1064 infuscomus ⇗ @canonkong

Nice!
I have a B350, 2700X, 2 extra AMD USB 3 controllers 15E0 and 15E1 that currently are not working on XP
#1065 nofearek9 thank you all for your replys.

Asus Rampage IV Black Edition,Intel Xeon e5-1680v2@4,7ghz,Corsair XMS3 64GB DDR3(8x8),Samsung 950 PRO 256GB,EVGA GeForce RTX 2070 XC GAMING 8GB,Lian Li PC-60FNWB ,Corsair Gold AX750PSU,Noctua NH-D15 .
Asus Rampage III Gene,Intel Xeon X5660@ 4,5ghz,Corsair XMS3 48GB DDR3(6x8),Samsung 950 PRO 256GB.

 

Page 72

#1066 diderius6 ⇗ @canonkong
I am very interested,
how you reach this
Dietmar

PS: Do you have an idea, how to make USB ports on newer Intel boards to work under XP?
This would be a big step forward.
#1067 canonkong ⇗ @diderius6
Modify like win7 usb drivers for new platforms. You need to find some USB driver support XP and use XHCI 1.0 and modify them inf/sys files. Then sign the driver.
#1068 XPLives !canonkong

Zitat von ⇗ canonkong im Beitrag ¶ #1067
@diderius6
Modify like win7 usb drivers for new platforms. You need to find some USB driver support XP and use XHCI 1.0 and modify them inf/sys files. Then sign the driver.


What is your interest in XP and Windows 7?

Can you make Intel USB 3.0 driver for Vista work?

I'm not sure what your process is.

You took Intel Windows 7 USB 3.0 driver and did what to it to make it work in XP?

How do you sign the driver for XP?

Can you modify Intel XP Graphics Driver for Intel HD Graphics 4000 to work on newer SkyLake HD Graphics 530 and Coffee Lake 630?

Would be nice to use newer Intel HD Graphics 4000 driver even if not using the full power of the iGPU while under XP instead of generic Windows driver.

Also any way to modify the graphics driver to use shared memory above 4GB memory region instead of taking away from XP OS region and increase shared memory usage range higher like 2GB to 4GB RAM?
#1069 canonkong ⇗ @XPLives
I am still using  win7 for my B360 Z390 X370 and prepared to buy X570 and 3950X, they all will install win7 because I dont like Bug10.
I modified few usb drivers for B360/H370/Q370/Z390 and X570, they both can work on win7/win8/8.1,but I dont have try vista. Maybe it also can work.
I aslo modified UHD630 drivers  for win7/win8/8.1, but I dont think it can support Xp.
For sign, I have signtool to do that.
XP 32bit can also support above 4G RAM like server 2003.
#1070 diderius6 ⇗ @canonkong

I have a lot of USB 3.0 and USB 3.1 drivers,
which work under XP.
To modify *.inf is clear for me,
but all fail for newer Intel chipset USB ports (bluescreen or drivers does not start).
How to modify *.sys files as you told?
Is there the _DEV number something like hard-coded in the *.sys files for XP
Dietmar
#1071 XPLives ⇗ @diderius6

Zitat von ⇗ diderius6 im Beitrag ¶ #1054
I succeed to flash the Bios back on the Asus Prime x570-Pro board,
something, from what the man from Asus told "it is impossible".
The Bios chip is now "hardwired",
I use the SPI-TPM link for this:
Adapter with 2 rows a 7 pin, 2 mm distance
SQT-107-01-L-D
via mouser.com
Dietmar

PS: By the way I notice, that all about Mac, UUID, serial etc. is also nonsense.
I have now 2 compis which where to 100% identic.
Take a look at the Bios version:))!!!

EDIT: On Cinebench, the Ryzen 3700x is 23% faster as the Ryzen 1700. Hm, for what is the Hype?


   



Only 23% faster is not bad for one generation for AMD.  But I think the real hype is the lower wattage consumption going to 7nm.

I still think Intel has better BIOS options than AMD on the same MB manufacturer.  I don't know why that is.
Can you lower CPU Ratio to below 8 on your X570 MB?
Can you decrease CPU speed below 800 MHz?
How low can the CPU Core Voltage be set?
#1072 canonkong ⇗ @diderius6
Use IDA7.0, it can show the sys files running. Find out the DEV_ID confirm parts, replace ID or use jmp and nop to block them.
You can download this modified driver, it not only can support Intel USB devices, you can modify the ID like CC_0C30 or CC_0C330, that it can work almost all usb controllers devices.


⇗ [Solution] Win7 drivers for USB 3.0/3.1 Controllers of new Intel chipset systems
#1073 XPLives ⇗ @canonkong

Zitat von ⇗ canonkong im Beitrag ¶ #1069
@XPLives
I am still using  win7 for my B360 Z390 X370 and prepared to buy X570 and 3950X, they all will install win7 because I dont like Bug10.
I modified few usb drivers for B360/H370/Q370/Z390 and X570, they both can work on win7/win8/8.1,but I dont have try vista. Maybe it also can work.
I aslo modified UHD630 drivers  for win7/win8/8.1, but I dont think it can support Xp.
For sign, I have signtool to do that.
XP 32bit can also support above 4G RAM like server 2003.


Yes that is why I wonder if you can use the Intel HD Graphics 4000 driver for XP to work on HD 530 and 630 Intel Graphics with some modding?

Not the other way modding Windows 7 driver to work in XP.

Vista if you can make work for Intel USB 3.0 will work for Windows 7 and maybe 8 automatically.  Forward compatible so no worries.

Which signtool for XP do you use?

XP 32-Bit can use over 4GB but mainly for a large Ramdisk but 2003 does it better directly.

"Use IDA7.0, it can show the sys files running. Find out the DEV_ID confirm parts, replace ID or use jmp and nop to block them."

Which USB 3.0 driver are you modifying to work in XP?

Can you use a hex editor to modify the parts also?

Are you getting full USB 3.0 speeds in XP or USB 2.0 speeds?

Did you test with all USB devices working? - USB Keyboard, USB Mouse, USB Audio, USB hard drive, USB webcam?
#1074 canonkong ⇗ @XPLives
Signtool can use Asia Trust signtool.
You need find a driver can support XP original then when you modified the sys file,it will success more easily. Almost all usb drivers can modify support other devices if the driver use XHCI1.0 original.
Use IDA will better than HxD.
The speed base one the controller, if it can support usb3.0, it will run 3.0 mode.
Almost all usb devices can work, but USB to nvme disk maybe can not work if you dont link a usb hub.
#1075 diderius6 ⇗ @canonkong
How can I find "DEV_ID confirm parts" with IDA pro
in *.sys file? Have I to mod both, xhci and hub driver? Do I need the *.pdb for this?
Is there a difference between AMD and Intel USB drivers?
Is there a difference between USB3.0 and USB 3.1?
Which XP 32 bit USB 3.0, USB 3.1 drivers you woul recommend for hack?
Have you done this for XP with success?
Is PCI\CC_0C03 best as generic _DEV
Dietmar

PS: Sorry for this a lot of questions. But I want to make USB work on newer Intel, AMD chipsets for XP.
#1076 XPLives ⇗ @canonkong

Zitat von ⇗ canonkong im Beitrag ¶ #1074
@XPLives
Signtool can use Asia Trust signtool.
You need find a driver can support XP original then when you modified the sys file,it will success more easily. Almost all usb drivers can modify support other devices if the driver use XHCI1.0 original.
Use IDA will better than HxD.
The speed base one the controller, if it can support usb3.0, it will run 3.0 mode.
Almost all usb devices can work, but USB to nvme disk maybe can not work if you dont link a usb hub.



The link you had earlier was for the Windows 7 USB 3.0 driver?  Or does that one also work on XP?

If not where is the one for XP you modified?

Which XP USB driver company did you base the mod test on before you modified it?  It was not Intel since they didn't have any XP or Vista one released even today.

How do you know which USB drivers support XHCI1.0 original?  Are you referring to USB 3.0 drivers for XP and not USB 3.1?
#1077 canonkong ⇗ @diderius6
Just modify xhci.sys and *.inf is enough. *pdb is not need.
I didnt found any difference between 3.0 and 3.1.They both can work.
NEC VIA intel amd both are ok.
I will share an USB driver tonight when I after work, you can test it and report it.
#1078 diderius6 ⇗ @canonkong

The VIA USB 3.0 driver is very stable and fast in XP. So this would be a good choice.

I just take a look at the Asmedia ASMUSBHost_v1.16.55.1 driver for USB 3.1 for XP,
which works. You are right, for example in xhci.sys with  unicode 0, <PCI\VEN_1B21&DEV_2142&*>,0
is hardcoded there, so it can work
Dietmar

EDIT: I just make a test, changing in Asmedia ASMUSBHost_v1.16.55.1 driver for USB 3.1 for XP
asmtxhci.sys

PCI\VEN_1B21&DEV_2142&* => PCI\CC_0C03


5000430049005C00560045004E005F00310042003200310026004400450056005F00320031003400320026002A000000

=>

5000430049005C00430043005F0030004300300033000000909090909090909090909090909090909090909090909090
#1079 diderius6 At once I come to the idea,
to test this nice method from ⇗ @canonkong also
for other devices,
namly Intel(R) Ethernet Connection I219
Dietmar
#1080 infuscomus ⇗ @diderius6

I wonder if HWIDs are hardcoded into nvidia drivers?

It would be awesome to have RTX 2080Ti working on XP
sure ray tracing won't work but still having a faster GPU would be nice

 

Page 73

#1081 diderius6 ⇗ @infuscomus
I think, it has only a chance to work,
when there is a generic driver, as for USB
PCI\CC_0C03
Then you can change the special VEN_&DEV_ against the generic one
Dietmar

PS: And you need a driver, that works for XP before.
Sometimes you have luck with driver for Vista or Win2003 or Win7.
This you can check with Dependency Walker. If there is one red mark, no chance without
heavy mod.
#1082 canonkong ⇗ @diderius6
Try it, maybe can both support AMD and Intel usb device. Tell me it wokes or not.
#1083 diderius6 ⇗ @canonkong
On Intel board this nice driver works as generic USB 3.1 for XP SP3 32 bit.
On Intel board for USB 3.0 this driver does not work.
Waaoh, great work
Dietmar

EDIT: Correction: The driver (xhci and hub) installs, but the device (USB stick or mouse) is not recogniced.
#1084 canonkong ⇗ @diderius6
What about AMD 300/400series and x570?
#1085 canonkong ⇗ @diderius6
"The driver (xhci and hub) installs, but the device (USB stick or mouse) is not recogniced."
intel usb3.1 or 3.0, and both can not work?
There few ways to modify it. Maybe need to change somewhere.
#1086 diderius6 ⇗ @canonkong
USB 3.0 does not work.
For USB 3.1 xhci and hub driver installs correct,
but the mouse and Usbstick is shown as unknown device
with each Vid_0000&Pid_0000
meaning, those numbers are not recogniced gives "unknown device"
in device manager. This happens for mouse and for Usb stick
Dietmar

EDIT: This empty Vid&Pid means, that Usbstor.sys is not loaded.
#1087 canonkong diderius6
What about AMD 300/400series and x570?
Because this driver once is prepare for X570, just add an ID for intel, not fully suport , maybe intel platform need to fix somewhere.
#1088 diderius6 ⇗ @canonkong

On the Asus Prime x570-Pro
all USB3.0 slots work (mouse, usb stick) under XP SP3 with your driver.

All drivers for USB3.1 and USB3.2 are installed,
but usbstor does not start for them, which gives unknow device (for mouse, usb stick) as for the Intel board
Dietmar
#1089 canonkong ⇗ @diderius6
"X570 is working well? All USB3.0 slots work (mouse, usb stick) under XP SP3."  Right?
"All drivers for USB3.1 and USB3.2 are installed,but usbstor does not start for them, which gives unknow device" meant x570 for mouse, usb stick can not work?
#1090 infuscomus ⇗ @canonkong

is amdstor.sys necessary? can you just use usbstor.sys?
#1091 canonkong @ infuscomus
Maybe we can try it.
#1092 diderius6 ⇗ @canonkong
I tried the Asmedia Usb files.
They are installed,
ask for reboot,
but then not start.
The Asmedia USB has the advantage, that there are real USB3.1 and USB3.2 drivers for AMD and Intel.
When you can describe a little bit more, how and what you change in the xhci.sys file
may be I can help you
Dietmar

PS: My own created Asmedia driver is also installed correct, but does not work.

EDIT: No other files are needed. It is just a small missing thing in modding xhci.sys.
#1093 diderius6 I just see, that in the *.inf file
the file amdstor.sys is mentioned.
So, now I think, it takes the role from usbstor.sys
Dietmar

PS: So you need to copy the file amdstor.sys
into folder windows\system32\drivers.
I make a try with renaming amdstor.sys to usbstor.sys.
#1094 canonkong The driver work well on win7, maybe Xp need to change more. Because I dont have any experience about programing, so I just try it again and again. Few days ago a hacker told me that we can modify the win10 usb driver. Is it possible to modify a win10 usb driver work on win7? And I thought maybe some hackers can do that, but they dont have this ability, it to hard.
#1095 diderius6 Yessssssssssssssssssssssssssssssaaaaaaaaaaaaaaaaaa, I got all USB 3.0 3.1 3.2 drivers to work under XP SP3 !!!!!
I just rename in *.inf all

amdstor => usbstor

Thats all
Dietmar

PS: So much thanks to ⇗ @canonkong!





diderius6 has attached files to this post

 

Page 74

#1096 cedar ⇗ @diderius6

Good works!. The USB3.0 posted earlier did not work in my Asus Prime 350 board.
Can you post the new mod 3.0 driver? may be it will work for me too.

Any progress on XP64 ACPI?.  Backup from X265 is about 35% faster on
X64 platform than 32  bit OS. The newest ffmpeg64 for XP64 tested is at
about Nov 2017. Don't know if anyone have a newer version?

Cedar
#1097 diderius6 ⇗ @cedar
Make try with the USB file
that I post here (with nice help from ⇗ @canonkong). It is really generic
Dietmar
#1098 cedar ⇗ @infuscomus

Not much luck with the burned iso. It did installed without swapped hard
till the end with no error(grahicic mode). But it also flash BSOD next run
like my own earlier installs. No minidump. Standard mode is ok.

Tried 2003 ent. trial version. Std mode also ran. Can see Standard mode
and multi PC ACPI under CPU entry at the same time. BSOD when changed
to ACPI and see next message as IRQL NOT LESS OR EQUAL.

bluescreenview pointed to Ntoskrnl error.

XP2003 was tried from installed on ivy system than swap to Ryzen. Will
try burn ISO sometime later.

Cedar
#1099 diderius6 Also all USB 2.0 USB 3.0 USB 3.1 USB 3.2 slots work now on the nice board
asrock fatal1ty ab350 gaming k4 under XP SP3,
just together with Ryzen 3700x
Dietmar
#1100 diderius6 ⇗ @canonkong
Can you please upload the whole package,
with the unmodded driver for AMD USB?
I notice, that for the Asmedia USB there are
2 different xhci.sys files for Intel and AMD.
On Intel boards we have to mod the other one
Dietmar
#1101 IntiMD
Zitat von ⇗ diderius6 im Beitrag ¶ #1100

I notice, that for the Asmedia USB there are
2 different xhci.sys files for Intel and AMD.
On Intel boards we have to mod the other one
Dietmar


Not him, but if you are talking about the AMD64 and the IA64 folders, they're just different instruction sets - x64 (otherwise known as AMD64, x86-64) and the Intel Itanium architecture (otherwise known as IA-64, isn't in mainstream anymore and retired in 2021) respectively.
#1102 diderius6 ⇗ @IntiMD

I mean the AMD driver (AMD64 64 bit, just name for AMD) for XP
and the i386 name for Intel for XP 32 bit.
Until now I do not have the this whole package of unmodded drivers.
With the Asmedia driver I have some success today,
but I think this are the most difficult drivers of all USB,
so may be AMD or VIA is much easier to mod and to take the oldest version of them which works for XP 32 bit
Dietmar
#1103 IntiMD
Zitat von ⇗ diderius6 im Beitrag ¶ #1102
@IntiMD

I mean the AMD driver (AMD64 32 bit, just name for AMD) for XP
and the i386 name for Intel for XP 32 bit.



Like i said before, AMD64 is one of the names for the x86-64 (64-bit) arch, while i386 is one of the names of the x86 (32-bit) arch. The folders are depending on the OS bitness. The ASMedia drivers include both 32 and 64-bit builds of the drivers and since the usb 3.0 drivers should be targetted for XP 32-bit, the driverfiles in the i386 folder need to be modified.
#1104 diderius6 ⇗ @IntiMD

Of course you are right,
it was my mistake.
There is no difference between AMD 32 bit and Intel 32 bit,
driver is always in i386 folder
Dietmar

PS: The generic AMD driver here works also for the Asmedia 3.1 USB under XP 32 bit.
But it does not work for Intel chipset USB 3.0 which looks strange to me, I dont understand why not.
I make new test with the VIA 3.0 driver for Mod.
#1105 canonkong ⇗ @diderius6
Very good! Use the same name to replace the system itself usb driver, maybe we can make a generic usb driver replace the system inside usb driver.
#1106 infuscomus ⇗ @cedar

was IRQL NOT LESS OR EQUAL. BSOD with my ISO, or server 2003 ISO?
#1107 canonkong ⇗ @diderius6
Try this new, not have stor.sys.
KEY: xiaofengmod
⇗ https://yadi.sk/d/8MtPIJxFYoBAbQ
#1108 diderius6 ⇗ @canonkong
I test the new driver on Intel evga z390 dark board,
for the USB 3.0 from Intel chipset.
The same happens as before, during install of this driver the compi gets frozen
Dietmar

PS: May be, in this case a modded VIA USB 3.0 driver would be the better choice.

EDIT: Your new AMD driver for XP has also the problem, that usbstor.sys again does not start (gives unknow device).
So, until now we have only the generic USB driver for XP, where I changed amdstor.sys against usbstor.sys.
This one works everywhere, only for INTEL chipset USB and XP not, this is so strange.

EDIT2: So strange things happen with usb3 driver for Intel chipset:
The xhci.sys file is NOT copied correct to windows\system32\drivers (something like a sceleton of this xhci.sys appears there) and
even when you put the whole file xhci.sys there into by hand,
on next boot it is gone there!!! I never saw anything like this before in XP.
I set start=0 and Group=System Reserved for all USB files which starts them very early, no chance of version missmatch
or something like, because at this very early bootstage all will be loaded.
Crazy, I can see, that the driver xhci.sys is loaded very early together with usbstor.sys, but then again xhci.sys is deleted(!).
May be because of this soso strange thing, the hub3.sys driver can not install(!) and start
Dietmar
#1109 canonkong ⇗ @diderius6
Maybe we can use intel itself USB driver for xp to modify.
#1110 diderius6 ⇗ @canonkong
The problem in to use Intel driver for USB is, that there are none for XP with USB 3.0.
For Win7 32 bit they exist, but there are dependencies in drivers to ntoskrnl,
that XP does not fullfill.
The only chance in this is, that somebody has the source code for this drivers
and compiles it for win server 2003 32 bit
Dietmar

 

Page 75

#1111 canonkong ⇗ @diderius6
I think NEC will best than other.
⇗ https://downloadcenter.intel.com/zh-cn/d...ctronics-USB3-0-
#1112 diderius6 ⇗ @canonkong

I just see, that the VIA xhci driver can be replaced by the driver from Asmedia.
But the Intel chipset for USB 3.0 does not work with modded Asmedia or Via driver
Dietmar

PS: So, NEC (now Renesas) may be the better choice for generic USB 3.0 for XP for Intel chipset.
#1113 canonkong ⇗ @diderius6
If you use IDA to open the xhci.sys ,you will find almost all usb drivers will have a ven ID 1033, VEN_1033 meant NEC's ID.
#1114 infuscomus ⇗ @canonkong

this doesn't work in virtualbox

⇗ https://www.zone62.com/media/jcm/og/8fc8461f672fdba2.png
#1115 canonkong ⇗ @infuscomus
Some intel devices can not work well some parts using this driver. I think we need to find a better one to modify to support XP.
#1116 diderius6 ⇗ @canonkong

For Intel with x390 chipset with modded *.inf for xhci.sys comes message code 10,
driver (xhci from Nec) does not start
Dietmar
#1117 diderius6 ⇗ @canonkong
I just found with IDA pro, that there is a hardcoded ID 1033 check and 194x in the NEC driver xhci.sys
and so, suddently BIG chances for success with Intel
Dietmar
#1118 canonkong diderius6
Some drivers just modify the ID identify area is not enough. Like intel usb3.1 driver, I modified few parts to make it work. If you know DebugView ,Debuggers , OllyDbg . You can use them to find out where is the block.
#1119 diderius6 PAGE:0003420B                 mov     eax, 1033h
PAGE:00034210                 cmp     [ebp-11Ch], ax
PAGE:00034217                 jnz     short loc_34239
PAGE:00034219                 mov     eax, 194h
PAGE:0003421E                 cmp     [ebp-11Ah], ax
PAGE:00034225                 jnz     short loc_34239
PAGE:00034227                 cmp     byte ptr [ebp-114h], 4
PAGE:0003422E                 jnz     short loc_34239
PAGE:00034230                 mov     byte ptr [ebx+192h], 1
PAGE:00034237                 jmp     short loc_34240
#1120 diderius6 Hack to

PAGE:0003420B                 mov     eax, 1033h
PAGE:00034210                 cmp     [ebp-11Ch], ax
PAGE:00034217                 jnz     short $+2
PAGE:00034219                 mov     eax, 194h
PAGE:0003421E                 cmp     [ebp-11Ah], ax
PAGE:00034225                 jnz     short $+2
PAGE:00034227                 cmp     byte ptr [ebp-114h], 4
PAGE:0003422E                 jnz     short $+2
PAGE:00034230                 mov     byte ptr [ebx+192h], 1
PAGE:00034237                 jmp     short loc_34240

Now I get code 39
Dietmar
#1121 canonkong ⇗ @diderius6
Not right, you can compare my modified intel USB driver and the original driver, you will find what I had did.
jnz=>jmp
⇗ [Solution] Win7 drivers for USB 3.0/3.1 Controllers of new Intel chipset systems
#1122 cedar ⇗ @infuscomus


"IRQL NOT LESS OR EQUAL" was from 2003.
From bluescreenview, it pointed to Ntoskrnl error.

I also tried ACPI 64 bit on XP64. the screen instantly BSOD
and reboot immediately on normal or safe mode, so I couldn't see
what message was.

Cedar
#1123 diderius6 ⇗ @canonkong
I tried this also,
does not work for Nec USB 3.0 driver on Intel USB 3.0 on chipset from z390
Dietmar
#1124 infuscomus ⇗ @cedar

ACPI for XP64 will need a patched ACPI driver and XP64 is not well supported, best to use Win7 64

any luck installing with my ISO?
#1125 cedar ⇗ @infuscomus

The acpi64bit was from diderius6 posted earlier. As it was
an early version, so I can't expect too much.
Your iso can installed from burnt disc, Like my other burnt discs,
It will BSOD in multi acpi both std or safe mode too when reboot.

But If installed on my Ivy system. and then swap HD to Ryzen board.
I think it can boot in safe mode, like my other trials.

PS. I think diderius6 's new usb3.2 driver can work on your iso, but not
on my own XP installation after many BSODs on usbport.sys trials.

Cedar

 

Page 76

#1126 infuscomus ⇗ @cedar

did you manage to get multiprocessor ACPI PC working? or did you get a BSOD?
#1127 diderius6 ⇗ @cedar
Until now we dont have a good acpi.sys for XP 64 bit,
which works on a lot of newer mainboards,
Dietmar
#1128 cedar ⇗ @infuscomus

In safe mode, multiprocessor ACPI PC seems fine. I can install other
drivers. After exiting safe mode. I may or may not be able to
get back to safe mode if XP installed through optical Sata drive.

I remember probably 2 weeks or more ago, I can repeatly go back to
safe mode with multiprocessor ACPI PC.  Out side safe mode, BSOD.

I just upated 2003 from SP0 to Sp1, and SP2. Will try if they work later?

Cedar
#1129 cedar ⇗ @diderius6

Any chance to work on XP 64 ACPI?. I realize too XP64 has no
Standard mode!.

Cedar
#1130 cedar ⇗ @infuscomus

Wow. SP2 for 2003 instead of SP0 works. I am in
Multi PC ACPI mode now.

Edit:  And it is from swap drive method.
Edit2:  Now I can use similar way on XP. Different SPs may make
or break things.
Edit3: Even SP1 works.

Cedar
#1131 diderius6 I found NEC USB3.0 driver from 10 January 2010 vers. 1.0.19.0.
This driver is really very simple structurated.
With this I make new try using Windbg for XP SP3
Intel chipset 3.0 driver
Dietmar

EDIT: I have now NEC driver USB 3.0 from June 2009 for XP, Vista (means before Win7), vers 1.0.1.0.
#1132 canonkong ⇗ @diderius6
If you use IDA7.0 to open the *.sys, than press F5, it will converting to C language, maybe some one can use it to recompile.

⇗ https://github.com/microsoft/Windows-driver-samples
#1133 diderius6 ⇗ @canonkong
This is really a nice feature,
but my Ida Pro is from 2004 :))
Dietmar

PS: Starting from autumn 2009, NEC makes USB 3.0 drivers also for Win2000 and NT4 .
#1134 infuscomus ⇗ @diderius6

can you upload to station-drivers for driver archiving?

If we are lucky, it might even work for windows 98

assuming all function requirements are met by ntkern.vxd
#1135 diderius6 ⇗ @infuscomus
Here it is.
The xhci.sys driver is loaded in XP as I can see
but the hub.sys not.
So, the problem with DEV_&VEN_ is gone,
but something is wrong with the hub
Dietmar



diderius6 has attached files to this post
#1136 canonkong ⇗ @diderius6
If the xhci.sys is loaded but the hub.sys not. It meant that the XHCI.sys need to fix somewhere. HUB is follow to XHCI.
#1137 infuscomus ⇗ @diderius6 ⇗ @canonkong

I noticed with the earlier modified AMD USB 3.0 drivers there was a FileSize error in the sys files



maybe this was causing problems? i fixed them

or maybe its nothing, i dont know



infuscomus has attached files to this post
#1138 canonkong ⇗ @infuscomus
I signed the driver use driving signature tool, it can automatic checksum, so I don't have noticed FileSize error.
#1139 diderius6 Now I get

usbstor.sys
usbd.sys
xhci.sys
hub3.sys

loaded very early (start 0, Group System Reserved)
but still yellow questionmark for USB 3.0 xhci and no hub3
in device manager
Dietmar

PS: I corrected yesterday the above size error. It does not change anything.
#1140 diderius6 There is only one small step, to make the very first NEC driver from June 2009 make to work for Intel chipset USB3
It looks like the "IRP_MN_START_DEVICE" failed and this can be the fault of hub3.sys because Child 0000000000.
Dietmar

0: kd> !DevNode 0x8a47f250
DevNode 0x8a47f250 for PDO 0x8a4c1818
Parent 0x8a4bb6e0 Sibling 0x8a47bbb0 Child 0000000000
InstancePath is "PCI\VEN_8086&DEV_A2AF&SUBSYS_A2AF1849&REV_00\2&ebb567f&0&A0"
ServiceName is "nusb3xhc"
State = DeviceNodeRemoved (0x312)
Previous State = DeviceNodeStartCompletion (0x306)
StateHistory[06] = DeviceNodeStartCompletion (0x306)
StateHistory[05] = DeviceNodeAwaitingQueuedRemoval (0x30f)
StateHistory[04] = DeviceNodeStartCompletion (0x306)
StateHistory[03] = DeviceNodeResourcesAssigned (0x304)
StateHistory[02] = DeviceNodeDriversAdded (0x303)
StateHistory[01] = DeviceNodeInitialized (0x302)
StateHistory[00] = DeviceNodeUninitialized (0x301)
StateHistory[19] = Unknown State (0x0)
StateHistory[18] = Unknown State (0x0)
StateHistory[17] = Unknown State (0x0)
StateHistory[16] = Unknown State (0x0)
StateHistory[15] = Unknown State (0x0)
StateHistory[14] = Unknown State (0x0)
StateHistory[13] = Unknown State (0x0)
StateHistory[12] = Unknown State (0x0)
StateHistory[11] = Unknown State (0x0)
StateHistory[10] = Unknown State (0x0)
StateHistory[09] = Unknown State (0x0)
StateHistory[08] = Unknown State (0x0)
StateHistory[07] = Unknown State (0x0)
Flags (0x00002030) DNF_ENUMERATED, DNF_IDS_QUERIED,
DNF_HAS_PROBLEM
CapabilityFlags (0x00002000) WakeFromD3
Problem = CM_PROB_FAILED_START
Failure Status 0000000000



CM_PROB_FAILED_START


This function is reserved for system use.

The device failed to start.
Error Code 10
Display Message

If the device's hardware key contains a "FailReasonString" value, the value string is displayed as the error message. (A driver or enumerator supplies this registry string value.) If the hardware key does not contain a "FailReasonString" value, the following generic error message is displayed:

"This device cannot start. (Code 10)"

"Try upgrading the device drivers for this device."
Recommended Resolution

Select Update Driver, which starts the Hardware Update wizard.

This error code is set when one of the drivers in the device's driver stack fails IRP_MN_START_DEVICE.
If there are many drivers in the stack, it can be difficult to determine the one that failed.

 

Page 77

#1141 canonkong ⇗ @diderius6
Use IDA to fix hub.sys, maybe will work.
#1142 infuscomus If we can figure out how to backport KMDF 1.13 to XP then we could use the generic Microsoft driver

seems like a bit of a challenge though
#1143 diderius6 This is really strange: The very first NEC USB 3.0 driver is started in legacy mode, but fails for the Intel chipset USB 3.0.
This makes me sure, that the problem is in xhci.sys (here name nusb3xhc, together with Intel) and not in hub3.sys
Dietmar

0: kd> !devnode 0 1 nusb3xhc
Dumping IopRootDeviceNode (= 0x8a4c7810)
DevNode 0x8a4c55e8 for PDO 0x8a4c5730
InstancePath is "Root\LEGACY_NUSB3XHC\0000"
ServiceName is "nusb3xhc"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8a4c7128 for PDO 0x8a4c1a08
InstancePath is "PCI\VEN_8086&DEV_A2AF&SUBSYS_A2AF1849&REV_00\2&ebb567f&0&A0"
ServiceName is "nusb3xhc"
State = DeviceNodeRemoved (0x312)
Previous State = DeviceNodeStartCompletion (0x306)
Problem = CM_PROB_FAILED_START
Failure Status 0000000000
#1144 diderius6 @ infuscomus
There is KMDF for Vista, I think also with an example driver for USB
Dietmar

docs.microsoft.com/en-us/windows-hardware/drivers/usbcon/tutorial--write-your-first-usb-client-driver--kmdf-
#1145 diderius6 May be we need WDFLDR.SYS (from Vista-Longhorn5048, Vista, Win7) all 32 bit
for XP for Intel USB
Dietmar

PS:Intel USB 3 drivers need WDFLDR.SYS (Kernel Mode Driver Framework LOADER) which doesn't exist on XP.
XP drivers require coinstaller WdfCoInstaller01009.dll (included with driver, it installs wdfldr.sys and wdf01000.sys) and separate usbd.sys.
I install the Microsoft Kernel Mode Driver Framework runtime 'Microsoft Kernel-Mode Driver Framework Install-v1.9-Win2k-WinXP-Win2k3.exe' extracted from WdfCoinstaller01009.dll which is the co-installer for KMDF 1.9.
This drivers here have all only dependecies for XP!

EDIT: This brings me to the idea, to install the very first USB driver from NEC on Longhorn 5048 for Intel chipset USB3.0.



diderius6 has attached files to this post
#1146 infuscomus Someone tried to make an xhci driver for ReactOS

⇗ https://reactos.org/blogs/gsoc-xhci-final-submission

⇗ https://github.com/reactos/reactos/tree/...ers/usb/usbxhci
#1147 diderius6 ⇗ @infuscomus

This person from reactos has the problem with xhci.sys for USB 3.0, that USBSTOR.sys is not loaded but he does not understand this.
Because of this comes "unknown device".
Even I do not know, if this will work for Intel USB chipset, because Intel makes now use of KMDF driver model for all their USB.
We have KMDF 1.9 (from Win7) for XP , the Microsoft Kernel-Mode Driver Framework Install-v1.9-Win2k-WinXP-Win2k3.exe above installs with all registry entries WDFLDR.SYS and wdf01000.sys in XP SP3 32 bit, I have tested.
Now we can use the *.inf from Win7 for USB from ⇗ @canonkong with xhci.sys and usbhub3.sys with dependencies only for XP
and voila, there is USB on XP for all Intel chipsets. A first try can be done with Vista and the modded USB drivers for Win7 from ⇗ @canonkong, if Vista fullfill all the dependencies
Dietmar

PS: Here is the installer for KMDF 1.9 for Vista 32 bit.



diderius6 has attached files to this post
#1148 canonkong ⇗ @diderius6
Is it possible to Import table dynamic patch and point the Win10-specific import API to wrapper. Like NDIS-Wrapper.
Some hackers told me that we can port win10's USB driver to win7, but I think even the world's top hackers don't have this ability.
#1149 diderius6 ⇗ @canonkong
I think, for to make to work Intel chipset USB under XP,
it is now just enough, to cancel the not from XP fullfilled dependencies
from your USB drivers for Win7
Dietmar
#1150 diderius6 This VIA USB3 is for XP, Vista and Win7.
It has the installer for KMDF 1.9 for each of them integrated and fullfills all dependencies for XP.
Any generic USB 3.0 driver for XP SP3 32bit Intel chipset should look very similar to this one
Dietmar

PS: I installed all versions for XP, Vista, Win7,
     but no one works for XP for Intel chipset USB, strange..

EDIT: The VEN_1106&DEV_3432 seems to be hardwired in xhcdrv.sys.
⇗ @canonkong can you please make a try to mod this one for generic?


EDIT2: CM_PROB_FAILED_ADD
CM_PROB_FAILED_ADD

A driver's attempt to add a device failed.
Error Code

31
Display Message (Windows 2000 and later versions of Windows)

"This device is not working properly because Windows cannot load the drivers required for this device. (Code 31)"
Recommended Resolution (Windows 2000 and later versions of Windows)

Update the device driver.

Starting with Windows XP,
this problem can only occur if the driver's AddDevice routine fails.

May be this is because of hardwired VEN_&DEV_.



diderius6 has attached files to this post
#1151 infuscomus ⇗ @diderius6 ⇗ @canonkong

Fresco logic driver also uses KMDF 1.9 - so it might be an option



infuscomus has attached files to this post
#1152 diderius6 ⇗ @infuscomus

The file fresco-usb3-v3.6.9.0.7z.zip
cant be downloaded correct, has error
Dietmar

EDIT: Correction, newest winrar works for to unpack this file.
#1153 diderius6 Fresco driver is loaded in XP for Intel chipset USB30, but does not start.
The reason, why it does not start can also be the fault of the hub3.sys there
Dietmar
0: kd> !DevNode 0x8a475a58
DevNode 0x8a475a58 for PDO 0x8a476a90
Parent 0x8a4c26e0 Sibling 0x8a475938 Child 0000000000
InstancePath is "PCI\VEN_8086&DEV_A2AF&SUBSYS_A2AF1849&REV_00\2&ebb567f&0&A0"
ServiceName is "FLxHCIc"
State = DeviceNodeRemoved (0x312)
Previous State = DeviceNodeStartCompletion (0x306)
StateHistory[06] = DeviceNodeStartCompletion (0x306)
StateHistory[05] = DeviceNodeAwaitingQueuedRemoval (0x30f)
StateHistory[04] = DeviceNodeStartCompletion (0x306)
StateHistory[03] = DeviceNodeResourcesAssigned (0x304)
StateHistory[02] = DeviceNodeDriversAdded (0x303)
StateHistory[01] = DeviceNodeInitialized (0x302)
StateHistory[00] = DeviceNodeUninitialized (0x301)
StateHistory[19] = Unknown State (0x0)
StateHistory[18] = Unknown State (0x0)
StateHistory[17] = Unknown State (0x0)
StateHistory[16] = Unknown State (0x0)
StateHistory[15] = Unknown State (0x0)
StateHistory[14] = Unknown State (0x0)
StateHistory[13] = Unknown State (0x0)
StateHistory[12] = Unknown State (0x0)
StateHistory[11] = Unknown State (0x0)
StateHistory[10] = Unknown State (0x0)
StateHistory[09] = Unknown State (0x0)
StateHistory[08] = Unknown State (0x0)
StateHistory[07] = Unknown State (0x0)
Flags (0x00002030) DNF_ENUMERATED, DNF_IDS_QUERIED,
DNF_HAS_PROBLEM
CapabilityFlags (0x00002000) WakeFromD3
Problem = CM_PROB_FAILED_START
Failure Status 0000000000
#1154 infuscomus ⇗ @diderius6

can you manually install the hub?
#1155 diderius6 ⇗ @infuscomus
This is not possible.
First has always the main driver xhci.sys to be loaded
and only if this is ok, hub3.sys asks for driver.
Even if from a working USB3 installation you delete the registry entries for xhci.sys,
the before working hub3.sys is also not loaded any longer
Dietmar

PS: One can make a try vice versa, if a working USB3 driver for Intel chipset also works on normal USB3,
because until now the difference between them is unclear.

 

Page 78

#1156 infuscomus ⇗ @diderius6

can you go back to our earlier generic amd usb 3.0 driver and try to debug what causes it to fail when in virtualbox?
#1157 diderius6 ⇗ @infuscomus

I make a check, which driver starts and which not:
It is possible to start xhci.sys without hub3.sys
but not hub3.sys without xhci.sys.
So, in the case with virtualbox, something went wrong with
hub3.sys.

And this also means, all our tries with xhci.sys for USB3 for Intel chipsets fail because of xhci.sys.

Take a look in device manager, what kind the error message is there.
XP tells you, if something is wrong with entries in registry for hub3.sys
or with the driver itself
Dietmar
#1158 diderius6 ⇗ @infuscomus

"can you go back to our earlier generic amd usb 3.0 driver and try to debug what causes it to fail when in virtualbox?"

On which compi runs virtualbox, AMD or with Intel chipset
Dietmar
#1159 diderius6 ⇗ @canonkong

Can you please convert Assembler file to C with Ida Pro 7
from xhci for Win7 from post 1150
and also xhci from original driver for Intel chipset Win7
and look, if there is a major difference
Dietmar
#1160 infuscomus ⇗ @diderius6 ⇗ @canonkong

I think I know what the problem is -

the hub3.sys file has not been linked to the usb 3.0 hub as it's driver


we will need to either fix amdxhci.inf to install the hub driver properly or find/write a proper amdhub3.inf

⇗ @canonkong

do you have the original unmodified amd usb 3 driver you used?
#1161 canonkong ⇗ @diderius6
In fact, it's very difficult for me because I don't know any assembly language or programming language. What I can do is just use IDA to modify some drivers and signature. If we can find out the breakpoints, maybe we can use IDA to Skip it.
#1162 canonkong ⇗ @infuscomus
The original driver 2.0.0.48 only can work for 64bit system.
#1163 diderius6 ⇗ @canonkong

Can you use Ida Pro for to translate those 2 Win7 32 bit xhci.sys drivers to C language?
If yes, you can send them to me
dietmar.stoelting@t-online.de
and I compare them
Dietmar
#1164 canonkong ⇗ @diderius6
Which two xhci.sys files? I will send it to you later.
#1165 infuscomus ⇗ @diderius6 ⇗ @canonkong

a manual install of the usb 3.0 hub worked in virtualbox


so, I think all we need to do is fix a problem in amdxhci.inf
#1166 diderius6 ⇗ @infuscomus
Is it USB 3 on Intel chipset?
Or is it an AMD board
Dietmar
#1167 canonkong ⇗ @infuscomus
This driver can work with virtual box, but cant work on real machine.
#1168 infuscomus whoops! I spoke too soon

#1169 diderius6 ⇗ @canonkong
Here are the 2 Win7 32 bit xhci files for USB3,
one from VIA and the one from you
Dietmar



diderius6 has attached files to this post
#1170 canonkong ⇗ @diderius6
Too many entries need to be converted! I think download IDA PRO 7.2 will more faster and easily.

 

Page 79

#1171 diderius6 I renamed the last xhci for XP from ⇗ @canonkong (post 1107) as asmxhci.sys
and integrate the values to registry by hand (no hub3.sys at all).
Now, for the first time no crash and the driver "asmxhci.sys" is loaded and deleted after
but message via windbg
Code 28 (CM_PROB_FAILED_INSTALL)

Indicates that the installation failed and there is no driver selected for this device, although the kernel did not report a problem (and there is no DNF_XXX match for this the problem). This problem can be the result of an on-board system device (ISA timer, ISA RTC, RAM Memory, and so forth) that does not yet have an INF file.

This looks like, if something with my handmade registry entries is wrong
or the driver "asmxhci.sys" looks for something like codriver

Dietmar
#1172 infuscomus
Zitat von ⇗ canonkong im Beitrag ¶ #1162
@infuscomus
The original driver 2.0.0.48 only can work for 64bit system.


⇗ @canonkong
how did you manage to make it work for 32bit system?
#1173 diderius6 ⇗ @infuscomus
I noticed that few days ago. So I think, canonkong is not so blind (as we..)
Dietmar
#1174 diderius6 ⇗ @infuscomus
I make a try with the last driver xhci for XP (post 1107) from ⇗ @canonkong in KMDF 1.9 clothes,
but then the compi does not start, hangs running blue mark in the beginning of boot stopped
and Windbg tells nothing, "break" command does not work and no BSOD
Dietmar
#1175 diderius6 With little help from Ida Pro,
I just noticed, that the last AMD file for XP 32 bit from canonkong vers. 2.0.0.68
is from ETRON.
Hihi, may be, now all other is easy.
This Etron driver has VEN_8086&DEV_7023.
This I will change against my USB3 with
VEN_8086&DEV_A2AF
and then we will see
Dietmar

EDIT: The Etron USB3.0 driver from 2009 works for nearly all USB
but not for Intel USB chipset.
#1176 infuscomus ⇗ @diderius6

I can only suggest going through all the other USB 3 drivers from other manufacturers and see if one of them works for intel

⇗ USB 3.0/3.1 Drivers (original and modded)
#1177 canonkong ⇗ @diderius6 ⇗ @infuscomus
I had tested all usb drivers yesterday. only AMD usb driver 2.0.0.48 and intel usb drivers can work for all usb devices. but they cant work perfect on X570 mainboards(install/uninstall the USB driver if without AMD chips drivers will BSOD) ASMedia VIA NEC Erron and most of USB drivers can only work for few devices, and some of them only can work for xhci but hub can not work.
#1178 diderius6 The Fresco fresco-usb3-v3.6.9.0 (it is for Win7 with KMDF 1.9) driver is "best" until now for Intel USB3 chipset for XP SP3, but
failed to start with code 10, even I changed in driver VEN_&DEV_
to my individual values.
By the way I noticed, that I get code 39, when checksum etc.
of the driver was not correct. With PEmaker 0.82 from Blackwingcat I corrected this
Dietmar

0: kd> !DevNode 0x8a475a58
DevNode 0x8a475a58 for PDO 0x8a476a90
Parent 0x8a4c26e0 Sibling 0x8a475938 Child 0000000000
InstancePath is "PCI\VEN_8086&DEV_A2AF&SUBSYS_A2AF1849&REV_00\2&ebb567f&0&A0"
ServiceName is "FLxHCIc"
State = DeviceNodeRemoved (0x312)
Previous State = DeviceNodeStartCompletion (0x306)
StateHistory[06] = DeviceNodeStartCompletion (0x306)
StateHistory[05] = DeviceNodeAwaitingQueuedRemoval (0x30f)
StateHistory[04] = DeviceNodeStartCompletion (0x306)
StateHistory[03] = DeviceNodeResourcesAssigned (0x304)
StateHistory[02] = DeviceNodeDriversAdded (0x303)
StateHistory[01] = DeviceNodeInitialized (0x302)
StateHistory[00] = DeviceNodeUninitialized (0x301)
StateHistory[19] = Unknown State (0x0)
StateHistory[18] = Unknown State (0x0)
StateHistory[17] = Unknown State (0x0)
StateHistory[16] = Unknown State (0x0)
StateHistory[15] = Unknown State (0x0)
StateHistory[14] = Unknown State (0x0)
StateHistory[13] = Unknown State (0x0)
StateHistory[12] = Unknown State (0x0)
StateHistory[11] = Unknown State (0x0)
StateHistory[10] = Unknown State (0x0)
StateHistory[09] = Unknown State (0x0)
StateHistory[08] = Unknown State (0x0)
StateHistory[07] = Unknown State (0x0)
Flags (0x00002030) DNF_ENUMERATED, DNF_IDS_QUERIED,
DNF_HAS_PROBLEM
CapabilityFlags (0x00002000) WakeFromD3
Problem = CM_PROB_FAILED_START
Failure Status 0000000000
#1179 infuscomus ⇗ @canonkong

wasn't your modified generic USB 3 driver from earlier an Etron driver?
#1180 canonkong ⇗ @infuscomus
Etron can not work for intel devices on real machine, but can work on VM...
#1181 canonkong ⇗ @diderius6 ⇗ @infuscomus
Test it.
⇗ https://yadi.sk/d/JsPRQ94R0TE3XQ
#1182 infuscomus ⇗ @canonkong

This driver calls functions from ntoskrnl that are not available in XP
#1183 canonkong ⇗ @infuscomus
I uploaded it incorrectly, I will upload a new one soon.
#1184 canonkong ⇗ @diderius6
I tested the Fresco USB drivers, xhci had installed and work, but the hub failed.
#1185 diderius6 ⇗ @canonkong
Can you please upload your version of the Fresco USB driver?
Any help is welcome
Dietmar

PS: You can just use hub from other USB driver.

 

Page 80

#1186 canonkong ⇗ @diderius6
No problem, I will send you when I after work. You can use IDA to open it, you will find i it has other devices ID from intel,NEC,Etron,ASMedia,ect
#1187 diderius6 I just noticed,
that the Fresco USB3 driver has extra entries in registry.
None of them is set for my Intel USB 3.0 with VEN_8086&DEV_A2AF.
How to come to this values? May be, a Win7 install will help via original Intel USB3.0 drivers
and copy this values one by one to the registry of XP
Dietmar

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\FLxHCIc]
"Type"=dword:00000001
"Start"=dword:00000003
"ErrorControl"=dword:00000001
"Tag"=dword:00000034
"ImagePath"=hex(2):73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,44,00,\
52,00,49,00,56,00,45,00,52,00,53,00,5c,00,46,00,4c,00,78,00,48,00,43,00,49,\
00,63,00,2e,00,73,00,79,00,73,00,00,00
"DisplayName"="Fresco Logic xHCI (USB3) Device Driver"
"Group"="Base"

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\FLxHCIc\Parameters]
"SGRD_15D9_0A4C"=dword:00000000
"STIC_07CA"=dword:00000000
"STIC_15A4_1003"=dword:00000000
"STIC_1B80_E39B"=dword:00000000
"STIC_2040_7200"=dword:00000000
"STIC_185B_2850"=dword:00000000
"NIOC_185B_2850"=dword:00000000
"SNIC_07CA_2830"=dword:00000000
"DDOS_045E_063E"=dword:00000000
"DDOS_12D1_1001"=dword:00000000
"DDOS_12D1_1003"=dword:00000000
"DDOS_0408_EA03"=dword:00000000
"DDOS_17E9_028F"=dword:00000000
"DDOS_0A5C_2046"=dword:00000000
"DDOS_19D2_0031"=dword:00000000
"DDOS_1A8D"=dword:00000000
"DDOS_0915_2000"=dword:00000000
"DDOS_07B8_4002"=dword:00000000
"DDOS_17E9_01D4"=dword:00000000
"ABIG_03F0_5817"=dword:00000000
"CCSD_13FE_1E00"=dword:00000000
"DDIP_13FE_1E00"=dword:00000000
"PBIN_12D1_1035"=dword:00000000
"U1U2_1CA1"=dword:00000000
"U1U2_152D_0539"=dword:00000000
"U1U2_152D_2509"=dword:00000000
"U1U2_1058_0740"=dword:00000000
"U1U2_1058_1123"=dword:00000000
"U1U2_1058_1140"=dword:00000000
"U1U2_1D5C_8347"=dword:00000000
"U1U2_04C5_201D"=dword:00000000
"U1U2_067B_2771"=dword:00000000
"U1U2_1759_9000"=dword:00000000
"U1U2_1759_5002"=dword:00000000
"U1U2_1759_5000"=dword:00000000
"U1U2_0411_0180"=dword:00000000
"U1U2_21E6_0001"=dword:00000000
"U1U2_1EDB_BD3B"=dword:00000000
"U1U2_0A6B_0101"=dword:00000000
"U1U2_04E8_60C6"=dword:00000000
"U1U2_1058_1042"=dword:00000000
"FAHS_0951_1652"=dword:00000000
"FAHS_05E3_0731"=dword:00000000
"ECSD_199E_8207"=dword:00000000
"NSEL_152D_0539"=dword:00000000
"NSEL_1F75_0902"=dword:00000000
"NSEL_1005_B128"=dword:00000000
"NHLP_2297_0321"=dword:00000000
"NOSD_1F75_0902"=dword:00000000
"NOSD_125F_312A"=dword:00000000
"NOSD_3538_0901"=dword:00000000
"NMEL_1EDB_BD3B"=dword:00000000
"NSSR_0951_1652"=dword:00000000
"NSSR_1759_5000"=dword:00000000
"NSSR_1759_5002"=dword:00000000
"NSSR_152D_0539"=dword:00000000
"NSSR_152D_2509"=dword:00000000
"NSSR_152D_0551"=dword:00000000
"NSSR_0BC2_2300"=dword:00000000
"NSSR_0BC2_3300"=dword:00000000
"NSSR_059F_1016"=dword:00000000
"NSSR_1058_0740"=dword:00000000
"NSSR_059F_100C"=dword:00000000
"NSSR_0411_01D8"=dword:00000000
"DPDE_0951_1652"=dword:00000000
"DPDE_1759_5000"=dword:00000000
"DPDE_1759_5002"=dword:00000000
"DPDE_152D_0539"=dword:00000000
"DPDE_152D_2509"=dword:00000000
"DPDE_152D_0551"=dword:00000000
"DPDE_0411_01D8"=dword:00000000
"WRDP_152D_0539"=dword:00000000
"WRDP_152D_2509"=dword:00000000
"ROSR_045E_063E"=dword:00000000
"ROSR_045E_0710"=dword:00000000
"ROSR_058F_9520"=dword:00000000
"ROSR_05AC_1294"=dword:00000000
"ROSR_05AC_129A"=dword:00000000
"ROSR_05AC_129F"=dword:00000000
"ROSR_0BC2_2300"=dword:00000000
"ROSR_0BC2_3300"=dword:00000000
"ROSR_059F_1016"=dword:00000000
"ROSR_1058_0740"=dword:00000000
"ROSR_059F_100C"=dword:00000000
"SMSZ_0DD8_1D04"=dword:00000000
"SMSZ_04B8_083F"=dword:00000000
"SMSZ_1759_5000"=dword:00000000
"SMSZ_1759_5002"=dword:00000000
"SMSZ_1058_1042"=dword:00000000
"GSOR_1390_0001"=dword:00000000
"OEHD_045E_001C"=dword:00000000
"OEHD_045E_002F"=dword:00000000
"OEHD_8086_9303"=dword:00000000
"OEHD_042B_9316"=dword:00000000
"OEHD_050F_0001"=dword:00000000
"OEHD_046A_0003"=dword:00000000
"OEHD_04E1_0201"=dword:00000000
"OEHD_0419_8001"=dword:00000000
"OEHD_055D_8001"=dword:00000000
"OEHD_0968_9999"=dword:00000000
"OEHD_04CA_9304"=dword:00000000
"OEHD_0416_0101"=dword:00000000
"OEHD_04A8_0101"=dword:00000000
"OEHD_0405_0000"=dword:00000000
"OEHD_0451_1446"=dword:00000000
"OEHD_0423_1237"=dword:00000000
"OEHD_0430_36BA"=dword:00000000
"OEHD_0471_0201"=dword:00000000
"OEHD_0471_0700"=dword:00000000
"OEHD_0409_55AA"=dword:00000000
"OEHD_0409_8010"=dword:00000000
"OEHD_0409_8011"=dword:00000000
"OEHD_0400_1237"=dword:00000000
"OEHD_054C_0001"=dword:00000000
"OEHD_054C_0002"=dword:00000000
"OEHD_056D_0000"=dword:00000000
"OEHD_04A6_0180"=dword:00000000
"OEHD_0654_0006"=dword:00000000
"OEHD_0654_0016"=dword:00000000
"STRZ_1759_5000"=dword:00000000
"NGU3_2109_3431"=dword:00000000
"NP2P_052E_1028"=dword:00000000
"NSND_174C_5106"=dword:00000000
"ABCP_05AC"=dword:00000000
"NFRW_0B95_772B"=dword:00000000
"NFRW_0424_EC00"=dword:00000000
"FSCD_04C5_132B"=dword:00000000
"ZDSI_0B6A_5347"=dword:00000000
"ZDSI_070A_000D"=dword:00000000
"DERE_0525_A4A2"=dword:00000000
"1656103C"=dword:00000000
"3388103C"=dword:00000000
"1657103C"=dword:00000000
"1658103C"=dword:00000000
"3581103C"=dword:00000000
"3582103C"=dword:00000000
"3583103C"=dword:00000000
"1659103C"=dword:00000000
"165A103C"=dword:00000000
"3389103C"=dword:00000000
"165B103C"=dword:00000000
"17F8103C"=dword:00000000
"1899103C"=dword:00000000
"06451025"=dword:00000000
"06471025"=dword:00000000
"06491025"=dword:00000000
"064B1025"=dword:00000000
"064D1025"=dword:00000000
"064F1025"=dword:00000000
"06511025"=dword:00000000
"06531025"=dword:00000000
"05041025"=dword:00000000
"05111025"=dword:00000000
"050E1025"=dword:00000000
"05131025"=dword:00000000
"FC401179"=dword:00000000
"KSSD_04C5_2029_0001"=dword:00000000
"KSSD_1058_1123_0003"=dword:00000000
"KSSD_152D_0539"=dword:00000000
"KSSD_13FE_5000_0110"=dword:00000000
"KSSD_04C5_202B_0001"=dword:00000000
"KSSD_2109_0701_0006"=dword:00000000
"KSSD_1759_5002_2270"=dword:00000000
"ABCP_05AC_129A"=dword:00000000
"ABCP_05AC_1294"=dword:00000000
"ABCP_05AC_1297"=dword:00000000
"ABCP_05AC_12A0"=dword:00000000
"ABCP_05AC_129F"=dword:00000000
"ABCP_05AC_12A4"=dword:00000000

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\FLxHCIc\Parameters\Wdf]
"KmdfLibraryVersion"="1.9"

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\FLxHCIc\Security]
"Security"=hex:01,00,14,80,90,00,00,00,9c,00,00,00,14,00,00,00,30,00,00,00,02,\
00,1c,00,01,00,00,00,02,80,14,00,ff,01,0f,00,01,01,00,00,00,00,00,01,00,00,\
00,00,02,00,60,00,04,00,00,00,00,00,14,00,fd,01,02,00,01,01,00,00,00,00,00,\
05,12,00,00,00,00,00,18,00,ff,01,0f,00,01,02,00,00,00,00,00,05,20,00,00,00,\
20,02,00,00,00,00,14,00,8d,01,02,00,01,01,00,00,00,00,00,05,0b,00,00,00,00,\
00,18,00,fd,01,02,00,01,02,00,00,00,00,00,05,20,00,00,00,23,02,00,00,01,01,\
00,00,00,00,00,05,12,00,00,00,01,01,00,00,00,00,00,05,12,00,00,00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\FLxHCIc\Enum]
"Count"=dword:00000001
"NextInstance"=dword:00000001
"0"="PCI\\VEN_8086&DEV_A2AF&SUBSYS_A2AF1849&REV_00\\2&ebb567f&0&A0"
#1188 diderius6 Win7 tells also code 10 for Fresco driver.
I am sure, that this can be hacked in xhci.sys driver.

Here is registry entry from Win7, not all are zero(!).
Dietmar

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\FLxHCIc]
"Type"=dword:00000001
"Start"=dword:00000003
"ErrorControl"=dword:00000001
"Tag"=dword:0000001a
"ImagePath"=hex(2):73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,44,00,\
52,00,49,00,56,00,45,00,52,00,53,00,5c,00,46,00,4c,00,78,00,48,00,43,00,49,\
00,63,00,2e,00,73,00,79,00,73,00,00,00
"DisplayName"="Fresco Logic xHCI (USB3) Device Driver"
"Group"="Base"

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\FLxHCIc\Parameters]
"SGRD_15D9_0A4C"=dword:00000000
"STIC_07CA"=dword:00000000
"STIC_15A4_1003"=dword:00000000
"STIC_1B80_E39B"=dword:00000000
"STIC_2040_7200"=dword:00000000
"STIC_185B_2850"=dword:00000000
"NIOC_185B_2850"=dword:00000000
"SNIC_07CA_2830"=dword:00000000
"DDOS_045E_063E"=dword:00000000
"DDOS_12D1_1001"=dword:00000000
"DDOS_12D1_1003"=dword:00000000
"DDOS_0408_EA03"=dword:00000000
"DDOS_17E9_028F"=dword:00000000
"DDOS_0A5C_2046"=dword:00000000
"DDOS_19D2_0031"=dword:00000000
"DDOS_1A8D"=dword:00000000
"DDOS_0915_2000"=dword:00000000
"DDOS_07B8_4002"=dword:00000000
"DDOS_17E9_01D4"=dword:00000000
"ABIG_03F0_5817"=dword:00000000
"CCSD_13FE_1E00"=dword:00000000
"DDIP_13FE_1E00"=dword:00000000
"PBIN_12D1_1035"=dword:00000000
"U1U2_1CA1"=dword:00000000
"U1U2_152D_0539"=dword:00000000
"U1U2_152D_2509"=dword:00000000
"U1U2_1058_0740"=dword:00000000
"U1U2_1058_1123"=dword:00000000
"U1U2_1058_1140"=dword:00000000
"U1U2_1D5C_8347"=dword:00000000
"U1U2_04C5_201D"=dword:00000000
"U1U2_067B_2771"=dword:00000000
"U1U2_1759_9000"=dword:00000000
"U1U2_1759_5002"=dword:00000000
"U1U2_1759_5000"=dword:00000000
"U1U2_0411_0180"=dword:00000000
"U1U2_21E6_0001"=dword:00000000
"U1U2_1EDB_BD3B"=dword:00000000
"U1U2_0A6B_0101"=dword:00000000
"U1U2_04E8_60C6"=dword:00000000
"U1U2_1058_1042"=dword:00000000
"FAHS_0951_1652"=dword:00000000
"FAHS_05E3_0731"=dword:00000000
"ECSD_199E_8207"=dword:00000000
"NSEL_152D_0539"=dword:00000000
"NSEL_1F75_0902"=dword:00000000
"NSEL_1005_B128"=dword:00000000
"NHLP_2297_0321"=dword:00000000
"NOSD_1F75_0902"=dword:00000000
"NOSD_125F_312A"=dword:00000000
"NOSD_3538_0901"=dword:00000000
"NMEL_1EDB_BD3B"=dword:00000000
"NSSR_0951_1652"=dword:00000000
"NSSR_1759_5000"=dword:00000000
"NSSR_1759_5002"=dword:00000000
"NSSR_152D_0539"=dword:00000000
"NSSR_152D_2509"=dword:00000000
"NSSR_152D_0551"=dword:00000000
"NSSR_0BC2_2300"=dword:00000000
"NSSR_0BC2_3300"=dword:00000000
"NSSR_059F_1016"=dword:00000000
"NSSR_1058_0740"=dword:00000000
"NSSR_059F_100C"=dword:00000000
"NSSR_0411_01D8"=dword:00000000
"DPDE_0951_1652"=dword:00000000
"DPDE_1759_5000"=dword:00000000
"DPDE_1759_5002"=dword:00000000
"DPDE_152D_0539"=dword:00000000
"DPDE_152D_2509"=dword:00000000
"DPDE_152D_0551"=dword:00000000
"DPDE_0411_01D8"=dword:00000000
"WRDP_152D_0539"=dword:00000000
"WRDP_152D_2509"=dword:00000000
"ROSR_045E_063E"=dword:00000000
"ROSR_045E_0710"=dword:00000000
"ROSR_058F_9520"=dword:00000000
"ROSR_05AC_1294"=dword:00000000
"ROSR_05AC_129A"=dword:00000000
"ROSR_05AC_129F"=dword:00000000
"ROSR_0BC2_2300"=dword:00000000
"ROSR_0BC2_3300"=dword:00000000
"ROSR_059F_1016"=dword:00000000
"ROSR_1058_0740"=dword:00000000
"ROSR_059F_100C"=dword:00000000
"SMSZ_0DD8_1D04"=dword:00000000
"SMSZ_04B8_083F"=dword:00000000
"SMSZ_1759_5000"=dword:00000000
"SMSZ_1759_5002"=dword:00000000
"SMSZ_1058_1042"=dword:00000000
"GSOR_1390_0001"=dword:00000000
"OEHD_045E_001C"=dword:00000000
"OEHD_045E_002F"=dword:00000000
"OEHD_8086_9303"=dword:00000000
"OEHD_042B_9316"=dword:00000000
"OEHD_050F_0001"=dword:00000000
"OEHD_046A_0003"=dword:00000000
"OEHD_04E1_0201"=dword:00000000
"OEHD_0419_8001"=dword:00000000
"OEHD_055D_8001"=dword:00000000
"OEHD_0968_9999"=dword:00000000
"OEHD_04CA_9304"=dword:00000000
"OEHD_0416_0101"=dword:00000000
"OEHD_04A8_0101"=dword:00000000
"OEHD_0405_0000"=dword:00000000
"OEHD_0451_1446"=dword:00000000
"OEHD_0423_1237"=dword:00000000
"OEHD_0430_36BA"=dword:00000000
"OEHD_0471_0201"=dword:00000000
"OEHD_0471_0700"=dword:00000000
"OEHD_0409_55AA"=dword:00000000
"OEHD_0409_8010"=dword:00000000
"OEHD_0409_8011"=dword:00000000
"OEHD_0400_1237"=dword:00000000
"OEHD_054C_0001"=dword:00000000
"OEHD_054C_0002"=dword:00000000
"OEHD_056D_0000"=dword:00000000
"OEHD_04A6_0180"=dword:00000000
"OEHD_0654_0006"=dword:00000000
"OEHD_0654_0016"=dword:00000000
"STRZ_1759_5000"=dword:00000000
"NGU3_2109_3431"=dword:00000000
"NP2P_052E_1028"=dword:00000000
"NSND_174C_5106"=dword:00000000
"ABCP_05AC"=dword:00000000
"NFRW_0B95_772B"=dword:00000000
"NFRW_0424_EC00"=dword:00000000
"FSCD_04C5_132B"=dword:00000000
"ZDSI_0B6A_5347"=dword:00000000
"ZDSI_070A_000D"=dword:00000000
"DERE_0525_A4A2"=dword:00000000
"DERE_043E_9A46"=dword:00000000
"DERE_043E_9A02"=dword:00000000
"RSBI_0403_FF0B"=dword:00000100
"RSBO_0403_FF0B"=dword:00000100
"RSBI_164C_5533"=dword:00000200
"RSBI_1E10_3300"=dword:00000200
"1656103C"=dword:00000000
"3388103C"=dword:00000000
"1657103C"=dword:00000000
"1658103C"=dword:00000000
"3581103C"=dword:00000000
"3582103C"=dword:00000000
"3583103C"=dword:00000000
"1659103C"=dword:00000000
"165A103C"=dword:00000000
"3389103C"=dword:00000000
"165B103C"=dword:00000000
"17F8103C"=dword:00000000
"1899103C"=dword:00000000
"06451025"=dword:00000000
"06471025"=dword:00000000
"06491025"=dword:00000000
"064B1025"=dword:00000000
"064D1025"=dword:00000000
"064F1025"=dword:00000000
"06511025"=dword:00000000
"06531025"=dword:00000000
"05041025"=dword:00000000
"05111025"=dword:00000000
"050E1025"=dword:00000000
"05131025"=dword:00000000
"FC401179"=dword:00000000
"SPPROC"=dword:00000000

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\FLxHCIc\Parameters\Wdf]
"KmdfLibraryVersion"="1.9"

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\FLxHCIc\Enum]
"Count"=dword:00000001
"NextInstance"=dword:00000001
"INITSTARTFAILED"=dword:00000001
"0"="PCI\\VEN_8086&DEV_A2AF&SUBSYS_A2AF1849&REV_00\\3&11583659&0&A0"
#1189 diderius6 And here come the registry entries for the Intel xhci
and hub3 entry (they all work).
May be the 3 entries are just, what ⇗ @canonkong missed for his hub via Fresco
Dietmar

xhci:
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\iusb3xhc]
"Type"=dword:00000001
"Start"=dword:00000003
"ErrorControl"=dword:00000001
"Tag"=dword:00000014
"ImagePath"=hex(2):73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,44,00,\
52,00,49,00,56,00,45,00,52,00,53,00,5c,00,69,00,75,00,73,00,62,00,33,00,78,\
00,68,00,63,00,2e,00,73,00,79,00,73,00,00,00
"DisplayName"="Intel(R) USB 3.0 eXtensible-Hostcontrollertreiber"
"Group"="Base"

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\iusb3xhc\Parameters]

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\iusb3xhc\Enum]
"0"="PCI\\VEN_8086&DEV_A2AF&SUBSYS_A2AF1849&REV_00\\3&11583659&0&A0"
"Count"=dword:00000001
"NextInstance"=dword:00000001

hub3:
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\iusb3hub]
"Type"=dword:00000001
"Start"=dword:00000003
"ErrorControl"=dword:00000001
"Tag"=dword:00000015
"ImagePath"=hex(2):73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,44,00,\
52,00,49,00,56,00,45,00,52,00,53,00,5c,00,69,00,75,00,73,00,62,00,33,00,68,\
00,75,00,62,00,2e,00,73,00,79,00,73,00,00,00
"DisplayName"="Intel(R) USB 3.0-Hubtreiber"
"Group"="Base"

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\iusb3hub\Parameters]

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\iusb3hub\Enum]
"0"="IUSB3\\ROOT_HUB30\\4&556f44c&0"
"Count"=dword:00000003
"NextInstance"=dword:00000003
"1"="USB\\VID_174C&PID_2074\\5&14a73d14&0&3"
"2"="USB\\VID_174C&PID_3074\\5&14a73d14&0&23"
#1190 diderius6 Found this on the way, from Fresco for XP USB3
Dietmar



diderius6 has attached files to this post
#1191 canonkong ⇗ @diderius6
All usb drivers origenal package.
⇗ https://yadi.sk/d/5jkmVZBjNgNZMw
#1192 diderius6 ⇗ @canonkong

Thank you.
What do you think, which driver has best chances for to work
for XP USB3 for Intel chipset USB
Dietmar
#1193 infuscomus ⇗ @diderius6

I think either the texas instruments driver or the amd 3.1 driver

I'm basing my guess on the size in kb of the controller driver compared to intels driver
#1194 diderius6 ⇗ @infuscomus

I wonder, how ⇗ @canonkong makes a 32 bit version of the USB3 xhci and hub driver vers. 2.0.0.0068 from AMD.
Because there is only a 64 bit version of this driver from AMD on the market,
he needs the sourcecode for this driver for to compile it for 32 bit.
If I am right, we have this driver, but something went wrong during compiling,
Dietmar

PS: Until now, we do not know, which makes the difference between Intel USB3 and all USB3 from other manufactures.
I think, may be it is the KMDF driver concept but VIA and Fresco have KMDF also. Texas instruments I dont know.
docs.microsoft.com/en-us/windows-hardware/drivers/usbcon/tutorial--write-your-first-usb-client-driver--kmdf-
#1195 canonkong ⇗ @diderius6 ⇗ @infuscomus
For win7 64bit, AMD Zeppelin USB driver is the best one, it can support all usb devices just add the device ID into the *.inf and don't need to modify the *sys.
Intel 1.0.10.255/ 5.0.4.43/ 15.2.30.13/ 17.2.70.3 are also can support all usb devices just add the device ID into the *.inf but need to modify the *sys. And it can support 32/64bit.
Fresco VIA NEC can only work for the XHCI, but the hub can not work.
As my platform can not support XP, so I can only test on VM, the amd USB driver can support nearly all usb devices but Intel can not work on real machines.
#1196 diderius6 I modified the xhci.sys and *.inf for Intel chipset USB3.0 under XP as good as I can for the Texas Instrument USB 3.0 driver for Win 7 DriverVer=04/14/2016, 1.16.6.0. I use PEmaker 0.82 for to correct the size and the checksum.
Compi tries 4 times to install it, as you can see with Windbg.
The message is about a filtered list,

DNF_RESOURCE_REQUIREMENTS_NEED_FILTERED (0x00000200)
The device's resource requirements list is a filtered list.


so may be only in the extra settings in this special xhci.sys driver is wrong for XP
Dietmar

PS: KMDF driver has started correct in XP.

EDIT: On WIN7 the Texas driver for Intel chipset USB 3.0 is also not loaded, showes the same code 31 as for XP.

0: kd> !DevNode 0x8a475a58
DevNode 0x8a475a58 for PDO 0x8a476a90
Parent 0x8a4c2500 Sibling 0x8a475938 Child 0000000000
InstancePath is "PCI\VEN_8086&DEV_A2AF&SUBSYS_A2AF1849&REV_00\2&ebb567f&0&A0"
ServiceName is "tixhci"
State = DeviceNodeRemoved (0x312)
Previous State = DeviceNodeInitialized (0x302)
StateHistory[18] = DeviceNodeInitialized (0x302)
StateHistory[17] = DeviceNodeAwaitingQueuedRemoval (0x30f)
StateHistory[16] = DeviceNodeInitialized (0x302)
StateHistory[15] = DeviceNodeUninitialized (0x301)
StateHistory[14] = DeviceNodeRemoved (0x312)
StateHistory[13] = DeviceNodeInitialized (0x302)
StateHistory[12] = DeviceNodeAwaitingQueuedRemoval (0x30f)
StateHistory[11] = DeviceNodeInitialized (0x302)
StateHistory[10] = DeviceNodeUninitialized (0x301)
StateHistory[09] = DeviceNodeRemoved (0x312)
StateHistory[08] = DeviceNodeInitialized (0x302)
StateHistory[07] = DeviceNodeAwaitingQueuedRemoval (0x30f)
StateHistory[06] = DeviceNodeInitialized (0x302)
StateHistory[05] = DeviceNodeUninitialized (0x301)
StateHistory[04] = DeviceNodeRemoved (0x312)
StateHistory[03] = DeviceNodeInitialized (0x302)
StateHistory[02] = DeviceNodeAwaitingQueuedRemoval (0x30f)
StateHistory[01] = DeviceNodeInitialized (0x302)
StateHistory[00] = DeviceNodeUninitialized (0x301)
StateHistory[19] = Unknown State (0x0)
Flags (0x00002230) DNF_ENUMERATED, DNF_IDS_QUERIED,
DNF_RESOURCE_REQUIREMENTS_NEED_FILTERED, DNF_HAS_PROBLEM
CapabilityFlags (0x00002000) WakeFromD3
Problem = CM_PROB_FAILED_ADD


diderius6 has attached files to this post
#1197 diderius6 So, only hope at the moment for USB 3.0 under XP  for Intel chipset is,
that somebody has the sourcecode for the generic Microsoft USB 3.0 drivers from Win8 and just compiles it
for Win2003 32 bit
Dietmar
#1198 infuscomus ⇗ @diderius6

do you know how to change the value of a string when using a disassembler?
#1199 diderius6 ⇗ @infuscomus
All string values are coded as Hexnumbers (unicode), each separated with  "." => 00
"1" => 31
"2"=> 32
...

"A" => 41
"B" => 42
...

Dietmar

⇗ https://unicode-table.com/de/
#1200 infuscomus ⇗ @diderius6

So I made an attempt to modify AMD driver 1.0.5.3 for intel - can you please test for yourself?

please add your HWID to the INF yourself since i was not sure which HWID you have

hub driver might need an INF mod too, I'm not sure

edit:
alt version in case first one crashes



infuscomus has attached files to this post

 

Page 81

#1201 diderius6 ⇗ @infuscomus

Waaaaooooohhhhhhhh , for the very first time the xhci.sys controller starts for Intel chipset USB 3.0
What a great work!

Hub does not start until now but this can be, because in xhciMod.sys you changed the name for the Hub
and so XP looks in hub.inf for a name, which now not exist.
I test this.

But this is really a BIG day for Windows XP!!!

Open Diff file with Browser.

0: kd> !DevNode 0x8a475a58
DevNode 0x8a475a58 for PDO 0x8a476a90
Parent 0x8a4c2500 Sibling 0x8a475938 Child 0x88480a70
InstancePath is "PCI\VEN_8086&DEV_A2AF&SUBSYS_A2AF1849&REV_00\2&ebb567f&0&A0"
ServiceName is "amdxhc31"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
StateHistory[09] = DeviceNodeEnumerateCompletion (0x30d)
StateHistory[08] = DeviceNodeStarted (0x308)
StateHistory[07] = DeviceNodeEnumerateCompletion (0x30d)
StateHistory[06] = DeviceNodeStarted (0x308)
StateHistory[05] = DeviceNodeStartPostWork (0x307)
StateHistory[04] = DeviceNodeStartCompletion (0x306)
StateHistory[03] = DeviceNodeResourcesAssigned (0x304)
StateHistory[02] = DeviceNodeDriversAdded (0x303)
StateHistory[01] = DeviceNodeInitialized (0x302)
StateHistory[00] = DeviceNodeUninitialized (0x301)
StateHistory[19] = Unknown State (0x0)
StateHistory[18] = Unknown State (0x0)
StateHistory[17] = Unknown State (0x0)
StateHistory[16] = Unknown State (0x0)
StateHistory[15] = Unknown State (0x0)
StateHistory[14] = Unknown State (0x0)
StateHistory[13] = Unknown State (0x0)
StateHistory[12] = Unknown State (0x0)
StateHistory[11] = Unknown State (0x0)
StateHistory[10] = Unknown State (0x0)
Flags (0x000000f0) DNF_ENUMERATED, DNF_IDS_QUERIED,
DNF_HAS_BOOT_CONFIG, DNF_BOOT_CONFIG_RESERVED
CapabilityFlags (0x00002000) WakeFromD3



diderius6 has attached files to this post
#1202 diderius6 I edit amdhub31.inf,
but now amdhub31.sys shows in Device Manager code 29

Code 29 - This Device Is Disabled Because the Firmware of the Device Did Not Give It the Required Resources 

Dietmar

;*****************************************************************************
;
; Name: amdhub31.inf
;
; Function:
; Install AMD USB3.1 Hub Driver
;
; Copyright (c) 2014-2018 AMD, ASMedia, MCCI.
;
; MCCI(R) is a registered trademark of MCCI Corporation.
;
;*****************************************************************************

[Version]
Signature="$WINDOWS NT$"
Class=USB
ClassGuid={36fc9e60-c465-11cf-8056-444553540000}
Provider=%Provider%
DriverVer=01/22/2018, 1.0.5.3

[SourceDisksNames.x86]
1=%DiskKey%,"amdhub31.sys",,\x86


[SourceDisksFiles.x86]
amdhub31.sys=1


[DestinationDirs]
DefaultDestDir = 12


[Manufacturer]
%RootHub.MFG%=RootHub, ntx86
%Hub.MFG%=Hub, ntx86


[Hub.ntx86]
%Hub_Product_1%=Hub_Product2_Install,USB\USB_HUB30


[RootHub.ntx86]
%RootHub_Product_1%=RootHub_Product1_Install,USB\USBROOT_HUB31



[RootHub_Product1_Install.ntx86]
FeatureScore=80
CopyFiles=amdhub31.CopyFiles.x86
DriverVer=01/22/2018, 1.0.5.3
AddReg=RootHub_Product1_Install.AddReg
AddReg=amdhub31.DeviceInterfaceGuids
AddReg=amdhub31.ProductDeviceInterfaceGuids

[RootHub_Product1_Install.ntx86.services]
AddService=amdhub31,0x00000002,amdhub31_service


[amdhub31.CopyFiles.x86]
amdhub31.sys

[amdhub31.DeviceInterfaceGuids]
HKR,DeviceInterfaces,GUID_DEVINTERFACE_USB_HUB3,, "{314B0371-157A-434A-8459-685D389ED910}"

[amdhub31.ProductDeviceInterfaceGuids]
HKR,DeviceInterfaces,GUID_DEVINTERFACE_USB_USB3_DRIVERS,, "{C6164C12-A1E1-4B7E-B49C-F942E3A8C050}"

[amdhub31_service]
DisplayName=%amdhub31_ServiceDescription%
ServiceType=1
StartType=3
ErrorControl=1
ServiceBinary=%12%\amdhub31.sys
LoadOrderGroup=Base
AddReg=WinToGo_amdhub31.AddReg

[Strings]
DiskKey = "AMD USB 3.1 Install Disk"
Hub.MFG = "(Generic USB Hub)"
Hub_Product_1 = "Generic USB Hub"
Provider = "Advanced Micro Devices, Inc."
RootHub.MFG = "(Standard USB Host Controller)"
RootHub_Product_1 = "AMD USB3.1 Root Hub"
amdhub31_ServiceDescription = "AMD USB3.1 Hub Service"

;**** end of file ****
#1203 diderius6 ⇗ @infuscomus

This is, what Windbg tells about amdhub31.sys
Such a code 29 I have never seen before
Dietmar

0: kd> !DevNode 0x884ae530
DevNode 0x884ae530 for PDO 0x884b1be0
Parent 0x8a471180 Sibling 0000000000 Child 0000000000
InstancePath is "USB\USBROOT_HUB31\3&216d82cf&2&0"
ServiceName is "amdhub31"
State = DeviceNodeRemoved (0x312)
Previous State = DeviceNodeStartPostWork (0x307)
StateHistory[07] = DeviceNodeStartPostWork (0x307)
StateHistory[06] = DeviceNodeAwaitingQueuedRemoval (0x30f)
StateHistory[05] = DeviceNodeStartPostWork (0x307)
StateHistory[04] = DeviceNodeStartCompletion (0x306)
StateHistory[03] = DeviceNodeResourcesAssigned (0x304)
StateHistory[02] = DeviceNodeDriversAdded (0x303)
StateHistory[01] = DeviceNodeInitialized (0x302)
StateHistory[00] = DeviceNodeUninitialized (0x301)
StateHistory[19] = Unknown State (0x0)
StateHistory[18] = Unknown State (0x0)
StateHistory[17] = Unknown State (0x0)
StateHistory[16] = Unknown State (0x0)
StateHistory[15] = Unknown State (0x0)
StateHistory[14] = Unknown State (0x0)
StateHistory[13] = Unknown State (0x0)
StateHistory[12] = Unknown State (0x0)
StateHistory[11] = Unknown State (0x0)
StateHistory[10] = Unknown State (0x0)
StateHistory[09] = Unknown State (0x0)
StateHistory[08] = Unknown State (0x0)
Flags (0x00002130) DNF_ENUMERATED, DNF_IDS_QUERIED,
DNF_NO_RESOURCE_REQUIRED, DNF_HAS_PROBLEM
CapabilityFlags (0x00002200) SurpriseRemovalOK, WakeFromD3
Problem = CM_PROB_HARDWARE_DISABLED
#1204 diderius6 ⇗ @infuscomus

I noticed with Ida Pro,
that in the amdhub31.sys is still reference to

AMDHUB31
AmdUsb3_1Root

which you renamed in amdxhc31.sys.
Why did you rename them?

And I noticed, that
     .rdata:000628A8	                unicode	0, <AMDROOT_HUB31&VID040E&PID0100&VER00010000000>

=>

.rdata:000628A8 unicode 0, <USBROOT_HUB31&VID040E&PID0100&VER00010000000>
which may be too special to give explicit VID_&PID_ here for the Hub from MCCI.
Mine is for example VID8086&PIDA2AF

Dietmar
#1205 diderius6 ⇗ @infuscomus

I take a look at your xhci driver and mod it new with minimal changes for my USB device VEN_8086&DEV_A2AF.
My modded xhci.driver works also.
I dont change anything in the names of AMD or USB there.
So, I can use the unmodded *.inf file for the also unmodded Hub.sys
But again the message code 29 appears,
seems to be a serious problem,
last bastion^^ from Intel against USB3 hack for XP
Dietmar

PS: May be it is just, that we need an USB 3.0 hub. This one with code 29 is USB 3.1, but the hardware from Intel chipset is in real only USB 3.0.



diderius6 has attached files to this post
#1206 canonkong ⇗ @diderius6
You can use the hub driver from AMD zeppelin USB driver 2.0.0.48/2.0.0.68.
#1207 diderius6 ⇗ @canonkong
Nice idea, I just tested,
but gives the same code 29.
Hm, all the different Hub drivers give this code 29,
so something went wrong
Dietmar
#1208 canonkong ⇗ @diderius6
I use 2.0.0.48 hub, but code 10.

EDIT:
And I found that your mod xhci not fully change, you need to replace all 22 10 00 00 to 86 80 00 00, and 39 4B 00 00 to your dev ID.
#1209 infuscomus ⇗ @diderius6 ⇗ @canonkong

I'm just guessing, but maybe we need that intel switch driver for the hub to work?

edit:
usb power settings? maybe hub is asleep?
#1210 diderius6 ⇗ @infuscomus ⇗ @canonkong

I also think, that may be intel switch has a meaning. Does somebody know, how and for what this is good?
We can integrate this driver by hand with its registry entries.

What I will try today:

1.) Look about all new registry entries from Win7 32 bit for exact this driver from AMD 1.0.5.3.
   For this I will set up a new Win7 with minimal environment, copy registry and
   check after install of this driver with "Beyond Compare 2" those 2 registries for all differences.

2.) I make by hand entries in registry in "CriticalDeviceDatabase" in XP for this USB device. This will be a hard job,

Dietmar

PS: Any idea is welcome. What really does code 29 mean for a driver?
#1211 canonkong @ diderius6
You can try this one.
8086_A2AF_USB_XP_32BIT_TEST
⇗ https://yadi.sk/d/DVZl98FGYDFgSw


EDIT:
I test it for my 3700x on win7, it is working, but intel A2AF need test.
⇗ http://uploadoss.smxdiy.com/forum/201908...8a1rr14vze5.jpg
#1212 diderius6 ⇗ @canonkong
Nice driver also, asmxhci.sys starts correct my A2AF USB 3.0 controller,
but Hub gives again code 29.
Interesting, that there are more than 1 usb driver,
which works for Intel chipsets
Dietmar
#1213 infuscomus ⇗ @diderius6

Error Code

29
Display Message

"This device is disabled because the firmware of the device did not give it the required resources. (Code 29)"
Recommended Resolution

Enable the device in the BIOS.

⇗ https://docs.microsoft.com/en-us/windows...rdware-disabled
#1214 diderius6 ⇗ @infuscomus

All what can be enabled in Bios is enabled.
And under Win7 this USB 3.0 device with A2AF works
Dietmar

PS: I think, CriticalDeviceDatabase can make this symptoms (code 29) also,
I know from USB2.0 and from ahci.sys, the Intel driver for harddisks has entries there also.
#1215 diderius6 Ha, I understand, what is going on.
Look at the picture, no energy management can be seen (on top from devicemanager).
For to safe energy, the crazy XP shuts this USB device off,
and now no switch there to start it again
Dietmar

 

Page 82

#1216 infuscomus ⇗ @diderius6

try disabling USB power savings in control panel, see if it turns on
#1217 diderius6 ⇗ @infuscomus

In XP, there is no such switch. Only for each hub itself.
All hubs, that I tested show code 29.
I am quite sure, that XP switched this hub off.
And nothing I know, how to switch it on again.

I succeed to install the Intel switch. It installs without problems (via hardware manager) and gives a pci device in device manager. But even if this could enable power on for Intel hubs, it does not work in XP
Dietmar
#1218 infuscomus ⇗ @diderius6

i meant something like this - ⇗ http://tools.thermofisher.com/content/sf...onnectivity.pdf
#1219 diderius6 ⇗ @infuscomus

I found this

HKR,,WdkSelectiveSuspendEnable, 0x10001, 0

Dietmar

EDIT: Again code 29. So may be, something other stopps HUB in last moment from start.

For this Hub is valid:

PDCAP_D0_SUPPORTED
PDCAP_D3_SUPPORTED
PDCAP_WAKE_FROM_D3_SUPPORTED

Energy state now = D3 (off)
#1220 infuscomus ⇗ @diderius6

try plugging in a powered USB hub -

⇗ https://www.ebay.de/itm/USB-7-Port-HUB-P...lC_klgSxX3qtOfg

I had this problem earlier with my USB 2.0 card and the powered hub fixed it

The following contents have been linked to this post:
#1221 diderius6 ⇗ @infuscomus

Nice idea, I have powered USB hub and I will test.
First I thought, that may be this USB hub does not have the possibility
to save power (D3 <=> D0) like the VIA hub3.0.
But then I noticed, that I can also install the normal Asmedia USB 3.1 USB hub with this new driver
and there this one shows powermanagment.
So, indeed this USB Hub3.0 for Intel chipset is not awaken frome sleep D0 => D3.
Only question is,
why not
Dietmar

Dietmar
#1222 daniel_k ⇗ @diderius6

As I was suspecting, the issue lies in the ACPI's DSDT table.

The DSDT table from Z390 chipsets do not have many custom methods and memory operations for integrated devices.

But for the Z370, there are many operations for the same integrated devices.

Just search for Device (XHC) and see the differences.

Remove all instructions from the Z370' DSDT and leave it as close as possible as the Z390's.

After doing this, many host drivers are now loaded successfully.
#1223 infuscomus ⇗ @diderius6

Looking at ASMedia 1.16.56.1 and AMD 1.0.5.3 USB 3.1 drivers it looks to me like the code for both these drivers is identical and they just swapped the HWIDs
#1224 diderius6 ⇗ @infuscomus

I connected a powered USB 3.0 hub,
but no reaction, USB 3.0 from Intel chipset still sleeps with code 29, grrr..

I make a test, if this can be indeed the fault of the DSDT table as recommend from ⇗ @daniel_k .

For this, I make a new setup, compi first in "ACPI Multiprocessor" and then also at the same time as "Standard PC" for XP.
Hm, on Acpi multiprocessor I get now also for the working xhci driver code 10,
device cannot start. But when I switch to the "Standard PC", suddently
I can install the same USB xhci driver for the Intel chipset without any error.
But then the Intel chipset USB hub shows also code 29, D3 powerstate =off, not awake.
I know, that for "ACPI Multiprocessor" and for "Standard PC" are two, absolut independend sets of installation routines
in every DSDT. This you can see, because all drivers are loaded new, when you switch from ACPI Multiprocessor to
Standard PC. This works only in XP and only, it you first install the "ACPI Multiprocessor" and after "Standard PC"
and not vice versa

Dietmar

PS: For me is now the question, how Win7 32 bit can survive with such a faulty DSDT table.
#1225 diderius6 After I read about xhc device in DSDT and problems with Acpi (crazy, so big problems with Apple compis with USB and ACPI)
I am sure, that we need a mod in DSDT for USB3 an XP. It is not the fault of the drivers for USB3 for XP.
Idea from ⇗ @daniel_k looks not bad on a second view.

I know now, that he is right.

So lets have a look at the DSDT from z390 for xhc and differences to z370.
There is even a whole Bios for pur XP for the EVGA dark z390 board
Dietmar

PS: We have the asl.exe tool. With this, it is easy to mod DSDT without any risk for Bios, revertible whenever and as long as you want , no need to load again on every boot because it stays in registry, I tested. Nice tool. So, its much easier than for Hackintosh to modmodmod DSDT for XP. And I make a new try with the Fresco USB driver.
#1226 daniel_k
Zitat von ⇗ infuscomus im Beitrag ¶ #1223
@diderius6

Looking at ASMedia 1.16.56.1 and AMD 1.0.5.3 USB 3.1 drivers it looks to me like the code for both these drivers is identical and they just swapped the HWIDs

That's because AMD uses ASMedia core logic.
#1227 daniel_k
Zitat von ⇗ diderius6 im Beitrag ¶ #1225
...
So lets have a look at the DSDT from z390 for xhc and differences to z370.
There is even a whole Bios for pur XP for the EVGA dark z390 board
Dietmar

PS: We have the asl.exe tool. With this, it is easy to mod DSDT without any risk for Bios, revertible whenever and as long as you want , no need to load again on every boot because it stays in registry, I tested. Nice tool. So, its much easier than for Hackintosh to modmodmod DSDT for XP. And I make a new try with the Fresco USB driver.



Unfortunately, still it is not that easy.

For now, the "best" driver I've tried and easier to mod was the Renesas 3.0.23.0: both the Host controller and the Hub driver are properly loaded.

However, it doesn't always work. I need to enable/disable the Host controller several times for it to work. When it does, works perfectly.

I've attached the driver here. It is completely generic, removed all device checks. Did not try it on anything but the A2AF controller. Original driver is included for you to see what I did.
#1228 daniel_k ⇗ @diderius6
What is your board with Intel USB 3.0 (A2AF)?

I can mod the DSDT my way for you to see what I did here.
#1229 diderius6 ⇗ @daniel_k

Asrock Fatal1ty z370 Gaming k6
with yes VEN_8086&DEV_A2AF USB3.0.

With the asl.exe tool, you can load and unload the DSDT at any time to registry in XP SP3,
Dietmar
#1230 diderius6 ⇗ @daniel_k

On "Standard PC" the xhci installs and the hub starts:)) !!!
Usbstor.sys does not start, this is exact the situation as on the AMD boards before
Dietmar

PS: Nice work!

 

Page 83

#1231 daniel_k ⇗ @diderius6 , hopefully we're almost there!

I've attached the DSDT tables of your board (and a reference Z390 from ASRock) for you to see what I did.

Please note that I've also removed the following entry:

 
Scope (_GPE)
{
Method (_L6D, 0, Serialized) // _Lxx: Level-Triggered GPE
{
\_SB.PCI0.XHC.GPEH () -> REMOVED THIS
\_SB.PCI0.HDAS.GPEH ()
\_SB.PCI0.GLAN.GPEH ()
\_SB.PCI0.XDCI.GPEH ()
}
}


daniel_k has attached files to this post
#1232 diderius6 Waaaaoooohhhhh, for the very first time XP and USB3 on Intel chipset !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
For this I set in Registry for

usbstor Group System Reserved
           start 0

xhci     Group System Reserved
          start 0

hub      Group System Reserved
          start 0


Dietmar


#1233 daniel_k ⇗ @diderius6, after doing these changes, does it work every time?

Please try to restart Windows and check if it Always work.

Here in ACPI mode without registry changes, only works after 7 ~ 10 enable / disable retries.
#1234 diderius6 ⇗ @daniel_k

The registry changes are necessary
Dietmar

PS: I test test test now:))!!!

EDIT: There is still a lot to do:)). With ACPI Multiprocessor xhci gives always code 10.
With Standard PC not always usbstor.sys is loaded.
#1235 canonkong ⇗ @daniel_k
For AMD new cpu and X570, they have the USB controller  ven1022_dev_149C. Do you know which is the best driver for them? Because they running on PCI-E 4.0, I tested some driver for them, AMD zeppelin usb driver 2.0.0.48 and Intel USB drivers can work for them, but will BSOD sometimes. ASMedia and AMD USB3.1 driver can work but the USB disks cant work.
#1236 diderius6 ⇗ @daniel_k

I just upload the new compiled, modded DSDT table for the board Asrock Fatal1ty z370 Gaming k6 via

asl /loadtable dsdt.aml

on working ACPI Multiprocessor XP for to look for behavior on Intel chipset USB3.


Change of DSDT table has been done and works, because on next reboot I got

BSOD 0x000000A5 (0x00000003, xxx, C0140004, yyy).
with newest modded acpi.sys ver. 5048

Now I look with Windbg,
at which place this BSOD in acpi.sys happens
Dietmar

BSOD 0xA5 (0x00000003, Parameter2, Parameter3, Parameter4):

This error is defined as "ACPI failed must succeed method." This error occurs if ACPI cannot build a control method to reference the ACPI namespace. Other arguments for this error reference the ACPI object that was being run and the name of the control method. One greatly simplified explanation (which might not be completely accurate) is that the system cannot find a way to get to the ACPI tables that define the Plug and Play and Power Management capabilities of the system.
#1237 infuscomus ⇗ @diderius6

Intel ASL compiler also has it's own acpiexec command line tool which can also load DSDT from registry

maybe try that?
edit: or maybe i'm wrong about iasl being able to load a different DSDT
#1238 diderius6 ⇗ @infuscomus

The asl.exe Tool works perfect.
I change the acpi5048.sys against my first modded original acpi.sys from XP SP3
(gives BSOD 0x000000A5 (0x00000003, xxx, C0140001, yyy)
because now I get Symbols in Ida Pro and windbg shows me exact the line,
where it crashes.
May be, it is just an simple error in DSDT.
The fantastic thing in the asl.exe tool is,
that now I can start the same XP (with uploaded DSDT) as "Standard PC" and write simple command

asl /loadtable -d dsdt.aml

and the uploaded DSDT table is deleted in registry and XP now uses the unmodified DSDT table from Bios,
meaning all is exact like before
Dietmar


EDIT: The changes in DSDT are a little bit to heavy^^. Now the COM1 port does not work any longer, meaning no windbg.
But for me it is a good test, if really I can delete this DSDT (stays only in registry) with asl.exe and if all is good as before.
In "Standard PC" the changes in DSDT do not help for better USB3. May be other tables need to be fixed too.

EDIT2: I change by hand the adress of the COM port, now it works again with windbg.
Still I use the modded DSDT for to see, what is going on:
STACK_COMMAND:  kb

FOLLOWUP_IP:
ACPI!ACPIBuildCompleteMustSucceed+33
b7f3967f c7401802000000 mov dword ptr [eax+18h],2

SYMBOL_STACK_INDEX: 4

SYMBOL_NAME: ACPI!ACPIBuildCompleteMustSucceed+33

FOLLOWUP_NAME: MachineOwner

MODULE_NAME: ACPI

IMAGE_NAME: ACPI.sys

DEBUG_FLR_IMAGE_TIMESTAMP: 480252b1

FAILURE_BUCKET_ID: 0xA5_ACPI!ACPIBuildCompleteMustSucceed+33

BUCKET_ID: 0xA5_ACPI!ACPIBuildCompleteMustSucceed+33

Followup: MachineOwner


EDIT3: Hack in acpi.sys succeeds, but now I get BSOD 0xA5 (0x00000002,xxx,0x00000001,yyy)
0xA5(0x00000002, Parameter2, Parameter3, Parameter4):

This error is defined as ACPI root PCI resource failure. To discover what current resources are being used by PCI devices, ACPI must be able to query the CRS descriptor in the ACPI namespace. This error occurs if the BIOS lacks a pointer to the list, or if the list is empty, or if the list contains errors or conflicts.

The "1" in this BSOD means: 1 : ACPI cannot convert the BIOS' resource list into the proper
format. This probably represents a flaw in the BIOS' list
encoding procedure.

Ok, next hack^^ in acpi.sys.

Works also, but gives now exotic BSOD
0xA5 (0x00010007,0x000000FF,0x0000000,0x0000000)
0x10007 :
The _PRT contained a reference to a vector not described in the
I/O APIC entries MAPIC table.
2 - The vector that couldn't be found

STACK_COMMAND: kb

FOLLOWUP_IP:
ACPI!MakeTempVectorCountsPermanent+59
b7f5a087 8a4607 mov al,byte ptr [esi+7]

SYMBOL_STACK_INDEX: 5

SYMBOL_NAME: ACPI!MakeTempVectorCountsPermanent+59

FOLLOWUP_NAME: MachineOwner

MODULE_NAME: ACPI

IMAGE_NAME: ACPI.sys

DEBUG_FLR_IMAGE_TIMESTAMP: 480252b1

FAILURE_BUCKET_ID: 0xA5_ACPI!MakeTempVectorCountsPermanent+59

BUCKET_ID: 0xA5_ACPI!MakeTempVectorCountsPermanent+59

Followup: MachineOwner

EDIT4: I cant correct this error on acpi.sys, because 0xA5 (0x00010007,0x000000FF,0x0000000,0x0000000)
is produced from hal.dll.
Here I give up.

Now I just delete with the nice asl.exe Tool the DSDT in registry via boot to "Standard PC" in commandline
asl /loadtable -d dsdt.aml
A message pops up, "registry data deleted"
and on next boot I have the original DSDT table from Bios back. I think, this works only in XP, because Win Server 2003 looks
only in Bios for DSDT table.
Interesting, this boot for "ACPI Multiprocessor" I tested with my again 2 times modded acpi.sys
and it starts. So, there are really errors in DSDT table (I think before mod also),
Dietmar
#1239 canonkong ⇗ @diderius6 ⇗ @infuscomus ⇗ @daniel_k
I modifie some usb drivers for ryzen 3000 series and x570, but it just work for the mouse keyboard soundcard, but USB DISK do not work well, U disk has been identified and driven successfully, but there will be no U disk character or it will said prompt formatting on computer pages.
Can you help me find what I need to midify with them.
Here is the test driver: ⇗ https://yadi.sk/d/C6kvjsrdwE4MOw

Error like this: ⇗ http://uploadoss.smxdiy.com/forum/201908...8jp8okzmxth.png
#1240 diderius6 ⇗ @canonkong

With 64 bit I have no good intrumentarium here for to analyze.

I would make a try in the registry entries as I write above for all

start=0

Group System Reserved

But editing registry can produce strange results
Dietmar
#1241 daniel_k
Zitat von ⇗ diderius6 im Beitrag ¶ #1238
EDIT: The changes in DSDT are a little bit to heavy^^. Now the COM1 port does not work any longer, meaning no windbg.
But for me it is a good test, if really I can delete this DSDT (stays only in registry) with asl.exe and if all is good as before.
In "Standard PC" the changes in DSDT do not help for better USB3. May be other tables need to be fixed too.



Dietmar, on my Gigabyte Z370 Gaming 3 there are no side effects.

Anyway, start the original table and delete small parts of the code, specially the OperationRegion blocks.
#1242 daniel_k ⇗ @canonkong, there are some additional checks, try the one I've attached.

 

daniel_k has attached files to this post
#1243 canonkong ⇗ @daniel_k
It said Code 31, TI and other MICC driver has ID cheksum, we need change it. So we need use HxD find 50 00 43 00 49


EDIT:
Finish ID cheksum, XHCI and HUB driver can work. But all usb mouse key board U disk are spotting "Generic USB Hub" and can not work.
#1244 daniel_k
Zitat von ⇗ canonkong im Beitrag ¶ #1243
@daniel_k
It said Code 31, TI and other MICC driver has ID cheksum, we need change it. So we need use HxD find 50 00 43 00 49


EDIT:
Finish ID cheksum, XHCI and HUB driver can work. But all usb mouse key board U disk are spotting "Generic USB Hub" and can not work.


Sorry, no more ideas, for now.
#1245 daniel_k ⇗ @canonkong, one last try. The string check I missed actually accepts wildcard, see what I did.



⇗ @diderius6, please try this TI driver in Standard PC mode, check if it works better than the Renesas.

There are more issues with the ACPI tables, more specifically in many SSDT tables.

For Z370, GUID 6B5C8FE5-70DD-4E17-BFF4-D21C26586EB3, you'll find:

 
    Scope (\_SB.PCI0.XHC.RHUB)
{
Method (PS0X, 0, Serialized)
{
Store (Zero, \_SB.PCI0.XHC.USPP)
}

Method (PS2X, 0, Serialized)
{
OperationRegion (XHCM, SystemMemory, And (MEMB, 0xFFFFFFFFFFFF0000), 0x0600)
Field (XHCM, DWordAcc, NoLock, Preserve)
{
Offset (0x02),
XHCV, 16,
Offset (0x480),
HP01, 1,
Offset (0x490),
HP02, 1,
Offset (0x530),
SP00, 1,
Offset (0x540),
SP01, 1
}

If (LEqual (XHCV, 0xFFFF))
{
Return (Zero)
}

If (LAnd (LEqual (HP01, Zero), LEqual (SP00, Zero)))
{
Or (\_SB.PCI0.XHC.USPP, 0x02, \_SB.PCI0.XHC.USPP)
}

If (LAnd (LEqual (HP02, Zero), LEqual (SP01, Zero)))
{
Or (\_SB.PCI0.XHC.USPP, 0x04, \_SB.PCI0.XHC.USPP)
}
}

Method (PS3X, 0, Serialized)
{
}
}



For Z390, GUID 7E374E25-8E01-4FEE-87F2-390C23C606CD, you'll find:

 
    Scope (\_SB.PCI0.XHC.RHUB)
{
Method (PS0X, 0, Serialized)
{
}

Method (PS2X, 0, Serialized)
{
}

Method (PS3X, 0, Serialized)
{
}
}
daniel_k has attached files to this post

 

Page 84

#1246 canonkong ⇗ @daniel_k
It doesn't matter. I've found another better driver. VIA work very well on it.
#1247 canonkong ⇗ @daniel_k
I test it again.
It also works for the mouse keyboard soundcard, but USB DISK do not work well, U disk has been identified and driven successfully, but there will be no U disk character or it will said prompt formatting on computer pages.
#1248 diderius6 ⇗ @daniel_k

Thank you for the driver,
I test in 5 min from now:)), before очень вкусный coffee. My tip for a good driver would be Fresco vers. 3.6.9.0
But with my Ida Pro from 2004 it is a very hard job to do any modding, so any help is welcome.

Do you know, why the Asmedia and the AMD hub stays in sleeping mode D3?
Can this hub been awaken with entries in xhci.inf?
I do not find any documentation about it
Dietmar
#1249 diderius6 ⇗ @daniel_k

In "Standard PC" the Texas xhci.sys starts.
The hub.sys stays in sleeping mode code 29. I see, that in its xhci.inf there is the possibility put to registry,
that hub is allowed to sleep. May be it is enough to cancel this there.

On "ACPI Multiprocessor" the Texas xhci.sys starts not, shows code 10

Dietmar

PS: I am very interested, which tool you use after modding, to let the Build date, version etc. exact as that from original file.
#1250 diderius6 Oh, so much fun with XP !
Now I have

"ACPI Multiprocessor"
"MPS"
"Standard PC"

on one XP SP3 32 bit installation and I can chose between them just on each boot.

I see, that the NEC USB3 works also in MPS mode.
This means, that USB3 does not work until now for "ACPI Multiprocessor"
is only because of the faulty ACPI implementation in DSDT.

One thing more I noticed:
Only, when all 3 HUBs are started from NEC (for one xhci controller),

USB 2.0 Hub
USB 3.0 Hub
USB 3.0 Root Hub

usbstor.sys starts and "unknown device" is gone

Dietmar

PS: I make just small speed test with Sandisk Ultra USB stick: 314.1 Mbyte/s.

EDIT: I solved the problem with "unknown device". For this I boot "MPS" in safe mode and there I can disable for the HUBs
the possibility to save energy. Now they start always and we have stable USB 3.0 support for XP.

EDIT2: Also my Samsung phone is recogniced correct at once. On other compis with USB there was so much trouble with it.
All 8 ports work, can be mice, phone, usbstick 2.0, 3.0, 3.1, 3.2, camera, USB hub all work at once and no power fall back.

#1251 daniel_k
Zitat von ⇗ diderius6 im Beitrag ¶ #1250
EDIT: I solved the problem with "unknown device". For this I boot "MPS" in safe mode and there I can disable for the HUBs
the possibility to save energy.


Can you please check the registry value name so we can add it to the INF file?

Should be easy to spot that under the following registry tree:
 
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{36FC9E60-C465-11CF-8056-444553540000}\????



where ???? can be any device instance number, search for Renesas.

Disable and check which value is changed.

#1252 diderius6 ⇗ @daniel_k

I think you mean this, it is just copied from working Registry, not any longer sleeping Hubs.
Dietmar
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{36FC9E60-C465-11CF-8056-444553540000}\0004]
"InfPath"="oem10.inf"
"InfSection"="RUSB3XHC"
"InfSectionExt"=".NT"
"ProviderName"="Renesas Electronics"
"DriverDateData"=hex:00,40,3b,e8,2f,7f,cd,01
"DriverDate"="8-21-2012"
"DriverVersion"="3.0.23.0"
"MatchingDeviceId"="pci\\cc_0c0330"
"DriverDesc"="Renesas Electronics USB 3.0 Host Controller"
"DataPumpDebugFlags"=dword:0000a003
"DataPumpHubAutoSuspendEnable"=dword:00000000
"DataPumpMinU1TimeoutEncodeValue"=dword:00000000
"DataPumpMinU2TimeoutEncodeValue"=dword:00000000
"DataPumpPowerOffWhenSleep"=dword:00000000
"DataPumpU1Enable"=dword:00000000
"DataPumpU2Enable"=dword:00000000
"DataPumpWakeOnConnectionEnable"=dword:00000001
"DataPumpWakeOnDisconnectionEnable"=dword:00000001
"DataPumpWakeOnOvercurrentEnable"=dword:00000001
"DataPumpXhcdEventRingSegmentSize"=dword:00000400
"DataPumpXhcdMaxEventRingSize"=dword:00000400
"DataPumpXhcdNumOfBufferSegment"=dword:00000008
"DataPumpXhcdPollPortStatusTime"=dword:000007d0
"DataPumpXhcdRxThreshold"=dword:28400000
"DataPumpXhcdSystemResumeRecoveryTime"=dword:000007d0
"DataPumpXhcdTxThreshold"=dword:22040000
"DataPumpXhcdWiringValue"=dword:0006360a
"Disable64BitDma"=dword:00000000
"EnableClockPower"=dword:00000001
"EnableDynamicD3"=dword:00000002
"EnablePciBridge"=dword:00000001
"EnableXiWake"=dword:00000002
"WdkSelectiveSuspendEnable"=dword:00000001
"WmiOverCurrentMessageDisable"=dword:00000000
"Controller"=hex:01
"CoInstallers32"=hex(7):72,00,75,00,73,00,62,00,33,00,63,00,6f,00,32,00,2e,00,\
64,00,6c,00,6c,00,2c,00,4e,00,75,00,73,00,62,00,33,00,43,00,6f,00,49,00,6e,\
00,73,00,74,00,61,00,6c,00,6c,00,65,00,72,00,00,00,00,00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{36FC9E60-C465-11CF-8056-444553540000}\0004\DeviceInterfaces]
"GUID_DEVINTERFACE_TI_XHCI_8241_02"="{8e5f3630-a165-11df-867e-005056a72cb6}"
"GUID_DEVINTERFACE_TI_XHCI"="{106c44a2-8ac7-11df-867e-005056a72cb62}"
"GUID_DEVINTERFACE_TI_USB3_DRIVERS"="{0e16b110-8ac7-11df-867e-005056a72cb6}"
#1253 diderius6 ⇗ @daniel_k

I tried to set the Hubs back to sleep, set mark in each.
But I do not succeed, they are still awake
and with Beyond Compare2 I check both registry entries,
they are 100% identic,
which means, we dont know how to set Hubs to sleep and how to awake until now
Dietmar

EDIT: This values are all from the Texas xhci.inf but Nec takes them one by one.
#1254 daniel_k
Zitat von ⇗ diderius6 im Beitrag ¶ #1253
@daniel_k

I tried to set the Hubs back to sleep, set mark in each.
But I do not succeed, they are still awake
and with Beyond Compare2 I check both registry entries,
they are 100% identic,
which means, we dont know how to set Hubs to sleep and how to awake until now
Dietmar


I'm sure this occurs because ACPI is not enabled. Some device drivers are not written taking Standard PC mode in consideration. It expects ACPI to send power management status messages to the driver.

Once we fix the ACPI tables this should not be needed anymore.

Search for EnableSelectiveSuspend in the Registry.

By the way, I sent you a Private Message regarding the tools I use.
#1255 diderius6 ⇗ @daniel_k

I found with value "1"

WdkSelectiveSuspendEnable

For the asmedia I found "40h"

Dietmar

PS: Of course I want to share:))!
#1256 daniel_k ⇗ @diderius6, for the USB 3.0 controller to start, you only need to make the following change.

Search for Device (XHC) and scroll down until you find Method (_PS0, 0, Serialized).

Then replace this:

 
            Method (_PS0, 0, Serialized)  // _PS0: Power State 0
{
If (DVID == 0xFFFF)
{
Return (Zero)
}

Local2 = MEMB /* \_SB_.PCI0.XHC_.MEMB */
Local1 = PDBM /* \_SB_.PCI0.XHC_.PDBM */
PDBM &= 0xFFFFFFFFFFFFFFF9
D3HE = Zero
STGE = Zero
D0D3 = Zero
MEMB = XWMB /* \XWMB */
PDBM = (Local1 | 0x02)
OperationRegion (MC11, SystemMemory, XWMB, 0x9000)
Field (MC11, DWordAcc, Lock, Preserve)
{
Offset (0x81C4),
, 2,
UPSW, 2
}

UPSW = Zero
PDBM &= 0xFFFFFFFFFFFFFFFD
MEMB = Local2
PDBM = Local1
If (CondRefOf (\_SB.PCI0.XHC.PS0X))
{
PS0X ()
}

If (UWAB && ((D0D3 == Zero) || (^^XDCI.D0I3 == Zero)))
{
MPMC = One
While (PMFS)
{
Sleep (0x0A)
}
}
}



With this:

 
            Method (_PS0, 0, Serialized)  // _PS0: Power State 0
{
If (DVID == 0xFFFF)
{
Return (Zero)
}

If (CondRefOf (\_SB.PCI0.XHC.PS0X))
{
PS0X ()
}
}



_PS0 is Device ON State.

#1257 canonkong ⇗ @diderius6 ⇗ @infuscomus ⇗ @daniel_k
I have completed the USB driver test of the existing manufacturer. For AMD new platform, there are only two drivers that do not appear BSOD and unidentified U disk. One is Etron, another is VIA, and VIA is better than Etron.
Modified AMD 2.0.0.48 and Intel USB drivers can work, but will bsod sometimes.
Modified AMD 1.0.5.3, ASMedia and TI can work, but will unidentified U disk.
Fresco only work for the XHCI, and the hub driver will bsod when I try to install it.
NEC will BSOD when I try to install it. Maybe I've modified it incorrectly.
#1258 diderius6 ⇗ @canonkong

"Fresco only work for the XHCI, and the hub driver will bsod when I try to install it."

Make a try to install in safe mod (F8) hub3.sys driver from Fresco new, onto another Hub from other vendor installed.
And even it crashes, look what happens after reboot
Dietmar
#1259 diderius6 ⇗ @daniel_k

Thank you a lot, I just found in DSDT of my board.
Does it mean, that all D3 states for all hubs are gone?
Dietmar

PS: I try tomorrow, now I am too tired. All the other drivers should work then also (because no D3 sleep) and
maybe there is one, which says "hello world" even under ACPI.
#1260 daniel_k
Zitat von ⇗ diderius6 im Beitrag ¶ #1259
@daniel_k

Thank you a lot, I just found in DSDT of my board.
Does it mean, that all D3 states for all hubs are gone?
Dietmar


Method _PS0 is processed during device initialization. This is what matters to us.

No changes for all other power states.

This just means you won't be getting error 10 anymore.

But for the hub driver, I still haven't figured it out. Please try to debug this with both the Renesas and the TI driver.

 

Page 85

#1261 canonkong ⇗ @diderius6
Can you help me test it?
USB driver 32bit for 149C&A36D&A2AF
⇗ https://yadi.sk/d/zof4ujwHu8Lk6Q
#1262 diderius6 ⇗ @canonkong

I test under XP "MPS" on my Asrock z370 K6 board (Intel).
xhci and hub3 installs without problems.

But a deeper look at them with windbg tells other:

xhci starts but hub3 not.
In the device manager from XP is written,
that there are no resources needed for this hub3 device.
I look at the xhci.inf. There is also the possibility, that this device sleeps.

0: kd> !DevNode 0x87f8f938
DevNode 0x87f8f938 for PDO 0x87faa1a0
Parent 0x8a846970 Sibling 0000000000 Child 0000000000
InstancePath is "USB\VIA_ROOT_HUB\3&216d82cf&5"
ServiceName is "VUSB3HUB"
State = DeviceNodeResourcesAssigned (0x304)
Previous State = DeviceNodeDriversAdded (0x303)
StateHistory[02] = DeviceNodeDriversAdded (0x303)
StateHistory[01] = DeviceNodeInitialized (0x302)
StateHistory[00] = DeviceNodeUninitialized (0x301)
StateHistory[19] = Unknown State (0x0)
StateHistory[18] = Unknown State (0x0)
StateHistory[17] = Unknown State (0x0)
StateHistory[16] = Unknown State (0x0)
StateHistory[15] = Unknown State (0x0)
StateHistory[14] = Unknown State (0x0)
StateHistory[13] = Unknown State (0x0)
StateHistory[12] = Unknown State (0x0)
StateHistory[11] = Unknown State (0x0)
StateHistory[10] = Unknown State (0x0)
StateHistory[09] = Unknown State (0x0)
StateHistory[08] = Unknown State (0x0)
StateHistory[07] = Unknown State (0x0)
StateHistory[06] = Unknown State (0x0)
StateHistory[05] = Unknown State (0x0)
StateHistory[04] = Unknown State (0x0)
StateHistory[03] = Unknown State (0x0)
Flags (0x00000130) DNF_ENUMERATED, DNF_IDS_QUERIED,
DNF_NO_RESOURCE_REQUIRED
CapabilityFlags (0x00000002) DeviceD2


DNF_NO_RESOURCE_REQUIRED (0x00000100)
The device does not require resources.


This tells XP, that this device hub3 does not want any driver, even they are installed!

This is of course an error
Dietmar

PS: Yepp, I just found, that this device sleeps energy level=D3 (off).
#1263 canonkong ⇗ @diderius6
Hub driver need manual install again on Xp, it work well on win7, maybe 149C can work on Xp, but intel can not.
#1264 diderius6 ⇗ @daniel_k

I found the differences in registry for energy settings for Hubs.

Open it with browser

Dietmar

PS: Left side: energie safe enabled (Hubs sleep allowed)             right side energie safe disabled (Hubs always awake)

First extract file and then rename it to rpt64952.htm



diderius6 has attached files to this post
#1265 canonkong ⇗ @diderius6
Make a try to install in safe mod (F8) hub3.sys driver from Fresco new, onto another Hub from other vendor installed.
I tried it, BSOD again.
#1266 canonkong ⇗ @daniel_k
Can you help me modifiy VIA USB 64bit driver as a generic usb driver? I found that your method is unique.
I don't know any assembly language, so I usually use ID replace and jmp/nop to modify it.
#1267 diderius6 When I change my DSDT on the Asrock z370 K6 board with the post 1256 from ⇗ @daniel_k
I got famous BSOD 0x000000A5 (0x00000003, xxx, C0140001, yyy).
Hm, this looks strange to me, because before I thought, this BSOD happens
only in the case of unknow words from Acpi 2.0.
But with this hack in DSDT I only want to set xhc driver always awake
Dietmar

PS: May be ⇗ @Mov AX, 0xDEAD can help with this.
On page 12, post 172 he wrote, that he overcomes to 99% this BSOD with custom acpi.sys.
And it can be, that his acpi.sys is better than our one.

EDIT: It can be, that the Device (XHC) becomes faulty,
if I destroy in
Method (_PS0, 0, Serialized)  // _PS0: Power State 0
the settings and construction for this device xhc in this method. And so, no acpi.sys at all can help.
May be it is enough, just to cancel this part about sleeping in the end from this method
If (UWAB && ((D0D3 == Zero) || (^^XDCI.D0I3 == Zero)))
{
MPMC = One
While (PMFS)
{
Sleep (0x0A)
}
}
EDIT: Strange, I got the same famous BSOD 0x000000A5 (0x00000003, xxx, C0140001, yyy) again,
even the only thing I changed in DSDT is to delete the above 8 lines.
#1268 infuscomus ⇗ @diderius6

does it work even if you make no changes but load the table into registry anyway?

I mean, dump the table from BIOS and then load it into registry using microsoft ASL?
#1269 diderius6 ⇗ @infuscomus

Exact the same idea I have had 5 min ago:)).

So, I delete with the asl Tool the modded dsdt.raw,
ok, XP starts after deleting with full ACPI Multiprocessor.
Then I upload with the asl Tool the exact original working dsdt.raw which I extracted before from its real own working Bios.
Now comes the good and bad news at the same time:

The asl Tool fails with BSOD 0x000000A5 (0x00000003, xxx, C0140001, yyy) after uploading a working DSDT table for Acpi, brrr..

So, now again on Intel boards I have to use flashtools but for AMD boards this means
flash always whole Bios

Dietmar
#1270 infuscomus ⇗ @diderius6

one more idea to try

perhaps microsoft ASL uses a different syntax to Intel ASL?

take original unmodded dsdt.raw then disassemble with Microsoft ASL, change nothing, then reassemble with Microsoft ASL and upload to registry?
#1271 diderius6 ⇗ @infuscomus

I tried this. 4 Bytes are changed as I can see with Winhex,
but BSOD is the same
Dietmar
#1272 diderius6 Again I noticed, that the Tool

Universal BIOS Backup ToolKit 2.0.exe


reads also the Bios from Asrock k6 board

faulty out.

So be just careful, take an intensive look with UEFItool at your Bios before you flash it

Dietmar

PS: FPTW.exe from Intel seems to work ok.
#1273 diderius6 The mod of XHC gives BSOD 0x000000A5 (0x00000003, xxx, C0140001, yyy)
also with real new modded DSDT in Bios and in "MPS" the network card i211 is listened but red cross in Task list as if no cable is connected
Dietmar

EDIT: hihi, what crazy things Bios Mod do:
Before in win7 32 bit, always the networkcard does not work.
But after this mod (kill sleep of xhc) networkcard works in Win7 for the very first time.
So, the set to sleep affects also Win7, logo, because they use one and the same Bios!

EDIT2: The Bios Mod with only deleting the last 8 lines in DSDT (for sleep XHC device, see above) gives also
BSOD 0x000000A5 (0x00000003, xxx, C0140001, yyy) in ACPI XP.
But now, in XP "MPS" networkcard works again.
#1274 diderius6 The FPTW.exe from Intel produce also faulty Bios.
I upload DSDT.aml (which works for Acpi) in Bios with Uefi Tool.
This Bios I compare with winhex with the original complete outread via FPTW.exe -D
Winhex tells: 100% identic.
But when I upload this Bios again,
I got BSOD 0x000000A5 (0x00000003, xxx, C0140001, yyy).
This simply means: The outread from FPTW.exe is different from original Bios.
Now I trust only Epromer
Dietmar

EDIT: Waaoh, a compare with Beyond Compare 2 with the original 3.20 Bios from Download site of Asrock tells 127 sections are different.
This is a lot, I know from experiments with Bios before.

EDIT2: Hard job, to give Asrock fatal1ty z370 gaming k6 full XP SP3 ACPI back, but now I have. Crazy Bios..
#1275 daniel_k
Zitat von ⇗ canonkong im Beitrag ¶ #1266
@daniel_k
Can you help me modifiy VIA USB 64bit driver as a generic usb driver? I found that your method is unique.
I don't know any assembly language, so I usually use ID replace and jmp/nop to modify it.

⇗ @canonkong

Sure.

 

Page 86

#1276 daniel_k
Zitat von ⇗ diderius6 im Beitrag ¶ #1274
The FPTW.exe from Intel produce also faulty Bios.
I upload DSDT.aml (which works for Acpi) in Bios with Uefi Tool.
This Bios I compare with winhex with the original complete outread via FPTW.exe -D
Winhex tells: 100% identic.
But when I upload this Bios again,
I got BSOD 0x000000A5 (0x00000003, xxx, C0140001, yyy).
This simply means: The outread from FPTW.exe is different from original Bios.
Now I trust only Epromer
Dietmar

EDIT: Waaoh, a compare with Beyond Compare 2 with the original 3.20 Bios from Download site of Asrock tells 127 sections are different.
This is a lot, I know from experiments with Bios before.

That is why I bought Gigabyte boards, completely unlocked descriptors, I can flash and mod without any worries using their own utility.

Good luck, hope you can get it working soon to help me with the Hub driver issue.
#1277 AddFun My Ryzen 1600x X370 machine is still getting 000000x7B issue. Tried half a dozen combinations of using the modified ACPI.sys, nLite'ing proper files, and similar, no difference. Tried F7 no ACPI, uni, multi, etc, etc, what have you. Just burned my 6th nlite'd CD. Nope. In fact no difference, never get past the reboot stage of WinXP setup where it goes straight into the 0x7b BSOD. Like it did with stock WinXP SP3 install.

What are you guys EXACTLY doing? What is your success rate with the modified files? (100%, 50%, random%?) Is there a XP ISO out there that has the files needed for the Ryzen platform that has repeatable success rate? It feels like this is not 100% repetable and there is a certain element of "luck" + random piece of hardware + random BIOS rev + random combo of ACPI/modded files = maybe it install XP is what the algorithm of WinXP on Ryzen platform seems to be.
#1278 infuscomus ⇗ @AddFun

have you integrated the storahci driver we used?

are you using a SATA or USB optical drive?
#1279 AddFun single SATA DVD drive with a single 120GB SATA disk and only PS/2 keyboard plugged in. Nothing else plugged to keep from any issues cropping up. Motherboard is Gigabyte AX370 Gaming 5. I've even tried 4-5 different BIOS revisions over the last week or so before coming to this board/thread. No difference, always dead ends at the usual x7b BSOD after the first reboot.
#1280 diderius6 ⇗ @AddFun

Before, XP with ACPI was impossible on Ryzen.
Now, the situation is complete other.
Use of the latest modded acpi.sys , the storahci driver together with my storport.sys (post 706)
and result via nlite is for me at once 100% succeed install on 3 different AMD boards 350, 350, 570
Dietmar
#1281 infuscomus ⇗ @AddFun

after first reboot?
So I'm assuming XP textmode setup completes without a BSOD?

that might be the storport.sys not copying itself across for 1st reboot issue we had earlier

to fix - in txtsetup.sif look for [files.acpi]

make it look like this

[files.acpi]
acpi.sys,4
acpiec.sys,4
oprghdlr.sys,4
storport.sys,4

then the storahci driver should work

edit:
If you have not yet grabbed the storahci driver it is here
¶ Windows XP SP3 32bit and modern PC parts (64)
#1282 AddFun Textmode always finishes, I had no problems with that even with my stock XP-SP3 disc when I tried XP on x370 first time two years ago. Let me check the txtsetup.sif as per your instructions.
#1283 AddFun Yeah, its in there. Everyone is using regular XP SP3 correct?
#1284 diderius6 ⇗ @daniel_k

I flash my new DSDT without the 8 lines for sleep of xhc to my new Bios (asl.exe for DSDT does again not work, BSOD)
Now no BSOD but still on ACPI XP your Renesas/nec driver for xhci does not start, code 10
Dietmar

EDIT: I did the whole mod of my DSDT for XHC but this gives BSOD 0x7B (only for ACPI, "MPS" starts).
Even Win7 32 bit does not start, tells BSOD 0xA5(0x00000011,..) so its acpi related.
To edit the DSDT for USB3 on Intel chipset with full ACPI on XP is really hard bread.
#1285 infuscomus ⇗ @AddFun

Yep, using XP SP3

Do you know what the HWIDs of your storage controllers are?


Do you mind uploading your txtsetup.sif so I can check it?
#1286 diderius6 ⇗ @AddFun

"always dead ends at the usual x7b BSOD after the first reboot"

I think acpi.sys and/or storport.sys have changed back to their original version, which gives BSOD 0x7B on first reboot

Dietmar
#1287 AddFun I meant after textmode reboot, after it copies the files and attempts to continue the install. Not sysos reboot.
#1288 diderius6 ⇗ @AddFun
Use nlite and life becomes easy
Dietmar

PS: Make sure, that your harddisk is aligned to 2048. This means, any use of the XP for formatting is forbidden.
#1289 AddFun PCI\VEN_1022&DEV_7901&SUBSYS_B0021458&REV_51
PCI\VEN_1022&DEV_43B5&SUBSYS_10621B21&REV_02
PCI\VEN_11AB&DEV_5040&SUBSYS_152592D4&REV_01

PCI\VEN_126F&DEV_2262&REV_03
USB\VID_0BC2&PID_331A&REV_0911

Nothing exotic
#1290 AddFun Burning 7th nlite'd disc, diderius6. I don't think that's it.

 

Page 87

#1291 infuscomus ⇗ @AddFun

also, check driver.cab and replace the acpi.sys, storahci.sys and storport.sys in there

use 7zip to extract driver.cab and cabpack 1.4 to recompress - ⇗ https://www.techspot.com/downloads/7104-cabpack.html
#1292 infuscomus
Zitat von ⇗ AddFun im Beitrag ¶ #1289
PCI\VEN_1022&DEV_7901&SUBSYS_B0021458&REV_51
PCI\VEN_1022&DEV_43B5&SUBSYS_10621B21&REV_02
PCI\VEN_11AB&DEV_5040&SUBSYS_152592D4&REV_01

PCI\VEN_126F&DEV_2262&REV_03
USB\VID_0BC2&PID_331A&REV_0911

Nothing exotic







PCI\VEN_1022&DEV_7901&SUBSYS_B0021458&REV_51 - amd ahci - will need storahci
PCI\VEN_1022&DEV_43B5&SUBSYS_10621B21&REV_02 - amd ahci  - will need storahci
PCI\VEN_11AB&DEV_5040&SUBSYS_152592D4&REV_01 - Sonnet Tempo SATA Gen 1 PCI-X Adapter (i'm not sure if ahci)

PCI\VEN_126F&DEV_2262&REV_03 - nvme?
USB\VID_0BC2&PID_331A&REV_0911 - usb HDD? disconnect this
#1293 diderius6 Yessssaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

I got it, USB3.2 USB3.1 USB3.0 USB 2.0 USB1.1

on Intel Chipset under XP 32 bit with full "ACPI Multiprocessor"

Dietmar

#1294 AddFun Alright, tried it with some tweaks. I got this error in textmode install (pic #1 below)



but ignoring it the install continued and rebooted without the BSOD, it continued into graphical install where it installed all the drivers and then it rebooted again.... however I got a different BSOD this time (pic #2 below)



this is the farthest Ive gotten to date, any tips?
#1295 diderius6 ⇗ @AddFun
I have seen this picture for myself.
It happens, when the driver (here acpi.sys) is not copied correct to the CD.
Copy acpi.sy_ in the installations folder i386 before you run nlite
Dietmar

PS: I do NOT integrate all the drivers in the *.cab file.
This force me on every reboot to put them on harddisk by hand again, but it works.
#1296 AddFun Was copied, both in the cab that I repackaged and the i386 directory. Hmm.
#1297 diderius6 ⇗ @AddFun

Have you used the last checksum corrected version of acpi.sys from @Infuscomus?
Dietmar
#1298 infuscomus
Zitat von ⇗ AddFun im Beitrag ¶ #1294
Alright, tried it with some tweaks. I got this error in textmode install (pic #1 below)



but ignoring it the install continued and rebooted without the BSOD, it continued into graphical install where it installed all the drivers and then it rebooted again.... however I got a different BSOD this time (pic #2 below)



this is the farthest Ive gotten to date, any tips?




⇗ @AddFun

for the 1st image, I solved this error by replacing the acpi.sys copy in driver.cab

the 2nd error - A5 BSOD probably happens because the old unpatched acpi.sys was copied from driver.cab
#1299 infuscomus ⇗ @AddFun

I just noticed, there is a copy of acpi.sys in SP3.cab, so that will need replacing too
#1300 AddFun Just went into the XP install remotely, and replaced the ACPI.sys with yours, 186kb vs 234kb. Tried booting and got the 7b BSOD, non-specific this time. Any ideas?
#1301 AddFun Technically, the XP system is installed and configured since the graphical install completed on it's end. Browsing the "\WINDOWS\system32\drivers" now and I can see proper storport and storahci in there. Proper ACPI was copied too.

Dunno guys...
#1302 AddFun Browsing from a different OS with the drive in question attached that is...
#1303 diderius6 ⇗ @AddFun
The acpi.sys was replaced again with the old one.
This gives exact this BSOD
Dietmar
#1304 infuscomus ⇗ @AddFun

So storahci.sys and storport.sys are present in C:\WINDOWS\SYSTEM32\DRIVERS but you are still getting 7B BSOD?
#1305 daniel_k
Zitat von ⇗ diderius6 im Beitrag ¶ #1293
Yessssaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

I got it, USB3.2 USB3.1 USB3.0 USB 2.0 USB1.1

on Intel Chipset under XP 32 bit with full "ACPI Multiprocessor"

Dietmar


⇗ @diderius6

What did you do?

Tell me so I can try it!

 

Page 88

#1306 diderius6 ⇗ @daniel_k

I use your brandnew driver:)).

And I delete only everything in the  Method (_PS0 for the device XHC in DSDT.

I look for this at the other installations of

Method (_PS0, 0, Serialized)  // _PS0: Power State 0

how this is handled there.

Even I succeed to disable also any energy savings for the hubs via the device manager of XP,
still not always all USB devices are recogniced at boot. The "unknown device" message is gone,
but happens sometimes just nothing. But when I delete the xhci device one time in devicemanger
always at once all other is recogniced and works.
Now it is not perfect, only about 90% because I also do not find the switch that the hubs are always awaken.
There entries in DSDT marks them always as in D0, awaken
Dietmar

PS: Example for the hub from DSDT

           Device (RHUB)
           {
               Name (_ADR, Zero)  // _ADR: Address
               Method (_PS0, 0, Serialized)  // _PS0: Power State 0
               {
                   If (DVID == 0xFFFF)
                   {
                       Return (Zero)
                   }

                   If (CondRefOf (\_SB.PCI0.XHC.RHUB.PS0X))
                   {
                       PS0X ()
                   }
               }
#1307 infuscomus ⇗ @daniel_k

I tried your Renesas driver in virtualbox and got code 39 after installing
#1308 AddFun ACPI.sys is still the modified one from here @ 234kb, sitting pretty in system32/drivers directory, it hasn't been swapped back. The proper storahci.sys and storport.sys are there too. 7b error just again. Went through my BIOS, not a whole lot there.

ACPI.sys: SHA1 -- 182eb4f6911818923965f938700546d87bb268ce
STORAHCI.sys: SHA1 -- 6daf4bb09af562d978a3503ef17dedaad0e4880a
STORPORT.sys: SHA1 -- 911e15fada65ab813ef4ce4cea82d185e82cb55a

that's whats in there.
#1309 AddFun Updated with proper hashes, copy paste playing with me.
#1310 diderius6 ⇗ @AddFun
May be crazy XP loads acpi.sys from other place.
This BSOD is typical for old acpi.sys
Dietmar
#1311 AddFun windows/system32? minus drivers folder?
#1312 AddFun Wait, heh, I have half a dozen images of WinXP installs from other machines, I can check.
#1313 diderius6 ⇗ @AddFun

I have seen, that XP can load drivers from different other places.
XP looks in all directories, if there is a "better" bootfile for this.
I have seen this for acpi.sys ntoskernl.exe hal.dll ntbootdd.sys
It is like a small part of intelligence from XP, I would say more "intelligent" than any other system on market
Dietmar
#1314 daniel_k ⇗ @diderius6, can you please share your DSDT?

From what I understand, to delete the XHCI controlller has the same effect as Disabling / Enabling the device, like I do.

Did you manage to get it working immediately after a reboot?
#1315 infuscomus ⇗ @AddFun

my acpi.sys is different
acpi.sys - 79a50a477541bea181d8a5009e5ec2e12209ffb4

but storahci.sys and storport.sys match

storahci.sys - 6daf4bb09af562d978a3503ef17dedaad0e4880a
storport.sys - 911e15fada65ab813ef4ce4cea82d185e82cb55a

it is strange that GUI setup manages to complete before reboot to 7B BSOD

are any of your drives not in ahci mode? ide mode?
#1316 AddFun Nope, it's in the right place. I just checked two of my other XP installs, acpi.sys is system32/drivers folder.
#1317 daniel_k
Zitat von ⇗ infuscomus im Beitrag ¶ #1307
@daniel_k

I tried your Renesas driver in virtualbox and got code 39 after installing

Thanks for trying.

Does the original driver work? I think I got it working some time ago.
#1318 AddFun hmm, what is the link for the ACPI.sys, I downloaded the one from few pages ago.
#1319 AddFun SHA1 00e5ccbf42176c5cedf2f076314f30610638b602 for best5048acpi.sys that one?
#1320 infuscomus ⇗ @AddFun

here is that file

but SHA1 00e5ccbf42176c5cedf2f076314f30610638b602 might be the most recent, not sure now, I've confused myself



infuscomus has attached files to this post

 

Page 89

#1321 diderius6 ⇗ @daniel_k

Until now, on reboot the intel 3.1 xhci and the 3.0 renesas hub are there.
But no USB device.
If you deinstall the Intel 3.1 xhci one time
all other is recogniced automatically and also all USB devices
Dietmar

PS: The DSDTUSB3.rar file contains old DSDT file from me before xhc mod
     and DSDT2 contains xhc mod.

My Asrock Fatal1ty z370 gaming k6 has the BIOS 3.20.
This is important, because you can only flash a Bios version with a higher versions number with the ezflash tool from Asrock.
The DSDT tables are in Bios 3.20 and 3.30 identic.



diderius6 has attached files to this post
#1322 infuscomus ⇗ @daniel_k

In virtualbox, I tried installing both, same result
#1323 AddFun Downloaded, just dropped it in. Thanks! Let me give it a whirl. Will report.
#1324 daniel_k ⇗ @canonkong

Here they are, Renesas and VIA final modified drivers.

Please sign both without changing anything and post the signed driver here.

You can make your own changes later for your own release.

For Renesas, only rusb3xhc.inf and rusb3xhc.sys must be signed, used a trick so the hub always has the same device ID.

For VIA, only xhcdrv.inf and xhcdrv.sys must be signed. No device check in the Hub driver.
#1325 AddFun Sigh, 7b BSOD as usual. Going to take a short coffee break and then load up the registry hives from this XP install and see how the HAL is set up, but I KNOW it's ACPI since it wouldn't have gotten this far and I didn't go with the F7 route or no-ACPI option anywhere during the install.
#1326 diderius6 ⇗ @AddFun
This is the last and best acpi.sys for Ryzen boards
Dietmar

PS: I can understand frustration a lot. Since yesterday I work about 20 hours for USB. And going nearly crazy with Bios modding and BSODs with all Tools.
     In bad times, just fetch coffee and have an apple for 5 min relax, this is important.



diderius6 has attached files to this post
#1327 daniel_k ⇗ @canonkong, could you please sign mosflt.inf and mosflt.sys in the Vista 32-bit and Vista 64-bit folder?

Thanks!
#1328 canonkong ⇗ @daniel_k
OK, I will send it soon.
#1329 daniel_k
Zitat von ⇗ diderius6 im Beitrag ¶ #1321
@daniel_k

Until now, on reboot the intel 3.1 xhci and the 3.0 renesas hub are there.
But no USB device.
If you deinstall the Intel 3.1 xhci one time
all other is recogniced automatically and also all USB devices
Dietmar

PS: The DSDTUSB3.rar file contains old DSDT file from me before xhc mod
     and DSDT2 contains xhc mod.

My Asrock Fatal1ty z370 gaming k6 has the BIOS 3.20.
This is important, because you can only flash a Bios version with a higher versions number with the ezflash tool from Asrock.
The DSDT tables are in Bios 3.20 and 3.30 identic.


That's exactly the same behaviour I'm experiencing.

Must be something in the ACPI table that XP doesn't like as the same Renesas driver works perfectly on Windows 7 x64.
#1330 AddFun Yeah, went through the relevant registry hives... it is set up as "acpiapic_mp" aka "ACPI Multiprocessor". ACPI enabled. So far, this seems like work in progress guys and an experiment without completely repeatable results. Hopefully with more time we will get there.
#1331 daniel_k
Zitat von ⇗ canonkong im Beitrag ¶ #1328
@daniel_k
OK, I will send it soon.


⇗ @canonkong

By the way, let me know how the VIA driver works.

Let me clarify something.

I recommend that you don't include a generic XHCI ID like PCI\CC_0C0330 to prevent the driver from being installed on XHCI controllers which have an official driver provided by the manufacurer.

For example, both the Renesas and the VIA drivers will BSOD if you install on ASMedia.
#1332 canonkong ⇗ @daniel_k
I use ID replace, VIA usb driver Include four manufacturers: VIA is 1106, Gigabyte is 1458, MSI is 1462, ZHAOXIN is 1D17, so you can replace them with other VEN ID and DEV ID, like 149C A36D 9DED ect. It can modify to support 4 VEN ID and16 dev ID.
#1333 daniel_k
Zitat von ⇗ canonkong im Beitrag ¶ #1332
@daniel_k
I use ID relace, VIA usb driver Include four manufacturers: VIA is 1106, Gigabyte is 1458, MSI is 1462, ZHAOXIN is 1D17, so you can replace them with other VEN ID and DEV ID, like 149C A36D 9DED ect. It can modify to support 4 VEN ID and16 dev ID.

Yeah, I noticed that.

Did the driver work?

PS: Thanks for the signed files!
#1334 canonkong ⇗ @daniel_k
It is working well on my X370 and B360, and the 149C USB from 3700X on win7.
#1335 daniel_k ⇗ @canonkong

Glad to know it works.

Found a small bug, could you please sign the Renesas driver again?

 

Page 90

#1336 canonkong ⇗ @daniel_k
OK, I will send it soon.
#1337 diderius6 ⇗ @daniel_k  ⇗ @canonkong

On XP, the Via xhci starts but the Via hub shows code 10.
So, may be this is a good test for DSDT to have a look,
why this code 10 happens and maybe then also the Nec/Renesas drivers works
to 100%
Dietmar

EDIT: Also on "MPS" the Via Hub shows code 10. So this is not ACPI related!
#1338 daniel_k
Zitat von ⇗ canonkong im Beitrag ¶ #1336
@daniel_k
OK, I will send it soon.

Thanks, now it is perfect!
#1339 daniel_k ⇗ @diderius6

VIA driver also gives error code 10 on Windows 7 x64, so this is definitively a driver issue.

Renesas works just fine on Windows 7x 64, so we need to find out, what in the ACPI table affects its behavior on XP.
#1340 diderius6 ⇗ @daniel_k

May be, it is a problem of usbstor.sys.
There was a patch from Microsoft for XP, after that no USB devices where recogniced any longer,
because setting wrong rights for usbstor.sys
Dietmar
#1341 daniel_k
Zitat von ⇗ diderius6 im Beitrag ¶ #1340
@daniel_k

May be, it is a problem of usbstor.sys.
There was a patch from Microsoft for XP, after that no USB devices where recogniced any longer,
because setting wrong rights for usbstor.sys
Dietmar

⇗ @diderius6

Unfortunately not, it even fails to detect a simple USB 2.0 hub.
#1342 canonkong ⇗ @diderius6 ⇗ @daniel_k
The VIA usb driver modified by daniel_k work very well for 149C on win7, maybe xp also can work.
But the Renesas usb driver can not work for 149C, it will bsod when it install.
#1343 canonkong ⇗ @daniel_k
Do you think it is possible to transplant the universal USB driver of win8/win8.1/win10 to win7 or Xp? In the absence of USB driver source.
#1344 infuscomus ⇗ @AddFun

I forgot to ask this earlier, have you double checked that you have disabled driver signing?
#1345 infuscomus
Zitat von ⇗ daniel_k im Beitrag ¶ #1327
@canonkong, could you please sign mosflt.inf and mosflt.sys in the Vista 32-bit and Vista 64-bit folder?

Thanks!


⇗ @daniel_k
do you know what this driver is used for?

I have a card with the same chip and i found the stock usbehci.sys driver worked fine
#1346 diderius6 ⇗ @daniel_k

The problem with hub3 under XP may be in CapabilityFlags (0x00001602)  DeviceD2
Do you know, where those flags are set

"DeviceD2
Specifies whether the device hardware supports the D2 power state. Drivers should not change this value."

Dietmar

0: kd> !DevNode 0x8a4dbce8
DevNode 0x8a4dbce8 for PDO 0x8a4dbe30
Parent 0x8a6a3848 Sibling 0000000000 Child 0000000000
InstancePath is "RENESAS_USB3\ROOT_HUB30\4&556f44c&8"
ServiceName is "rusb3hub"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
StateHistory[07] = DeviceNodeEnumerateCompletion (0x30d)
StateHistory[06] = DeviceNodeStarted (0x308)
StateHistory[05] = DeviceNodeStartPostWork (0x307)
StateHistory[04] = DeviceNodeStartCompletion (0x306)
StateHistory[03] = DeviceNodeResourcesAssigned (0x304)
StateHistory[02] = DeviceNodeDriversAdded (0x303)
StateHistory[01] = DeviceNodeInitialized (0x302)
StateHistory[00] = DeviceNodeUninitialized (0x301)
StateHistory[19] = Unknown State (0x0)
StateHistory[18] = Unknown State (0x0)
StateHistory[17] = Unknown State (0x0)
StateHistory[16] = Unknown State (0x0)
StateHistory[15] = Unknown State (0x0)
StateHistory[14] = Unknown State (0x0)
StateHistory[13] = Unknown State (0x0)
StateHistory[12] = Unknown State (0x0)
StateHistory[11] = Unknown State (0x0)
StateHistory[10] = Unknown State (0x0)
StateHistory[09] = Unknown State (0x0)
StateHistory[08] = Unknown State (0x0)
Flags (0x00000130) DNF_ENUMERATED, DNF_IDS_QUERIED,
DNF_NO_RESOURCE_REQUIRED
CapabilityFlags (0x00001602) DeviceD2, SurpriseRemovalOK,
WakeFromD0, WakeFromD2
  
#1347 XPLAKE8175 I want intel hd 5500 drivers for windows xp. I finished modding Windows XP drivers for my 940m PC. Or will it work with Vesa VBE miniport.
#1348 XPLAKE8175 I want windows xp drivers for my Intel HD 5500 drivers for Windows XP to run Nvidia Geforce 940m.
#1349 daniel_k
Zitat von ⇗ canonkong im Beitrag ¶ #1343
@daniel_k
Do you think it is possible to transplant the universal USB driver of win8/win8.1/win10 to win7 or Xp? In the absence of USB driver source.

Unfortunately, it is just impossible.

There are far more changes besides resolving missing function API dependencies, which I've already tried.

Microsoft makes changes "under the hood", the way memory is allocated, ACPI changes also affect the driver behavior.
#1350 daniel_k
Zitat von ⇗ infuscomus im Beitrag ¶ #1345
Zitat von ⇗ daniel_k im Beitrag ¶ #1327
@canonkong, could you please sign mosflt.inf and mosflt.sys in the Vista 32-bit and Vista 64-bit folder?

Thanks!


@daniel_k
do you know what this driver is used for?

I have a card with the same chip and i found the stock usbehci.sys driver worked fine


Hi, that is a filter driver to fix Power Management issues with the MSC9990 chipset.

On my both H270 / Z370 based boards, the system would not shutdown completely, I'll try the driver later to see if this helps.

 

Page 91

#1351 daniel_k
Zitat von ⇗ diderius6 im Beitrag ¶ #1346
@daniel_k

The problem with hub3 under XP may be in CapabilityFlags (0x00001602)  DeviceD2
Do you know, where those flags are set

"DeviceD2
Specifies whether the device hardware supports the D2 power state. Drivers should not change this value."

Dietmar


The issue is not with the Hub itself.

For some reason when the device is detected is remains in Disabled (D3) state.

PS: The driver you've asked me by PM is here:
¶ Windows XP SP3 32bit and modern PC parts (89)

It's just a minor Revision and SubsysID cosmetic issue.
#1352 canonkong ⇗ @daniel_k
I found for AMD 149C usb, VIA usb driver will cause 0x0000001E bsod suddenly sometimes.So we need to find a better driver.
And ASMedia and TI usb driver cant work for the U disk on 149C.
After testing all the usb drivers, there are only three drivers can work as a generic both can support intel/amd/asmedia/nvidia and more.
There are Intel series usb drivers , AMD zeppelin USB driver, Etron USB drivers.
Can you use your method to modify them?
#1353 diderius6 ⇗ @daniel_k

It seems, that from the 3 Hubs only
Renesas Electronics USB 3.0 Root Hub
can find the driver rusb3hub.sys
by itself.
Renesas Electronics USB 2.0 Hub
asks in my very best driver version now always for rusb3hub.sys and shows me the correct path, but asks,
even rusb3hub.sys is found there from first Hub before.
The same is true for
Renesas Electronics USB 3.0 Hub.
I modded the *.inf files, so after install USB starts with this driver,
but I think on reboot the path to rusb3hub.sys is not found from
the other 2 Hubs as mentioned before
Dietmar

PS: This USB driver works for Intel chipset USB3 under XP SP3 for the Asrock Fatal1ty z370 gaming k6 board.

EDIT: I just found, that my idea is true. Now I have to mod the *.inf files again, I split them in hub1.Inf hub2.inf hub3.inf

EDIT2: I can load only one HUB with hub.inf, for example 2.0 Hub but no possibility to load the other 2 hubs with other *.inf.
#1354 skullteria Hello, ⇗ @diderius6, in case, Renesas driver works on XP SP3 with ACPI enabled (HALMACPI) or only MPS/Standard PC?
#1355 canonkong ⇗ @diderius6
Etron USB driver also can also work as a generic USB driver and it also support Xp, we can try it.
#1356 diderius6 ⇗ @skullteria

Take a look at picture in post  1293,
the Renesas driver works also on full "ACPI Multiprocessor"
Dietmar

PS: The only problem with this driver ist, that not all 3 Hubs start always. This may be a problem in xhci.sys, how the Hub is called.
I think it has to do, that for first HUB sleep D3 isnt allowed, but for the other both D3 (sleep) is allowed.
And my idea above ist just, that these 2 Hubs sometimes cant find their driver rusb3hub.sys.
#1357 diderius6 ⇗ @canonkong

Do you have a test driver for Etron? I am very bad in modding, because no good tools for this here,
I do all by hand (and brain sometimes)
Dietmar
#1358 canonkong ⇗ @diderius6
I tested it for amd 149C, it is working very well.
#1359 daniel_k
Zitat von ⇗ canonkong im Beitrag ¶ #1352
@daniel_k
I found for AMD 149C usb, VIA usb driver will cause 0x0000001E bsod suddenly sometimes.So we need to find a better driver.
And ASMedia and TI usb driver cant work for the U disk on 149C.
After testing all the usb drivers, there are only three drivers can work as a generic both can support intel/amd/asmedia/nvidia and more.
There are Intel series usb drivers , AMD zeppelin USB driver, Etron USB drivers.
Can you use your method to modify them?

Sure, will do it later today.
#1360 daniel_k
Zitat von ⇗ diderius6 im Beitrag ¶ #1353
@daniel_k

It seems, that from the 3 Hubs only
Renesas Electronics USB 3.0 Root Hub
can find the driver rusb3hub.sys
by itself.
Renesas Electronics USB 2.0 Hub
asks in my very best driver version now always for rusb3hub.sys and shows me the correct path, but asks,
even rusb3hub.sys is found there from first Hub before.
The same is true for
Renesas Electronics USB 3.0 Hub.
I modded the *.inf files, so after install USB starts with this driver,
but I think on reboot the path to rusb3hub.sys is not found from
the other 2 Hubs as mentioned before
Dietmar

PS: This USB driver works for Intel chipset USB3 under XP SP3 for the Asrock Fatal1ty z370 gaming k6 board.

EDIT: I just found, that my idea is true. Now I have to mod the *.inf files again, I split them in hub1.Inf hub2.inf hub3.inf

EDIT2: I can load only one HUB with hub.inf, for example 2.0 Hub but no possibility to load the other 2 hubs with other *.inf.

Just tested the XP driver on Windows 7, and it works just fine.

Now I'm sure the issue really lies in the ACPI, something that XP doesn't like.
#1361 diderius6 ⇗ @daniel_k
It can be,
that XP dont like different path.
Normaly, all hubs are under Enum\USB
but this Renesas Hub builds an own path with Enum\RENESAS_USB3.
I checked the Via Hub, the Via Hub is also under Enum\USB\VIA_RootHub
and the same for Asmedia_RootHub
Dietmar

PS: I just check this again. From Renesas the Hub2 and Hub3 are also build under Enum\USB
but the RootHub is build under Enum\RENESAS_USB3, means an extra path.
This could be tested, the call from driver xhci.sys just change from

RENESAS_USB3 => USB

Dietmar

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\RENESAS_USB3]

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\RENESAS_USB3\ROOT_HUB30]

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\RENESAS_USB3\ROOT_HUB30\3&216d82cf&1d]
"Capabilities"=dword:00000080
"UINumber"=dword:00000000
"HardwareID"=hex(7):52,00,45,00,4e,00,45,00,53,00,41,00,53,00,5f,00,55,00,53,\
00,42,00,33,00,5c,00,52,00,4f,00,4f,00,54,00,5f,00,48,00,55,00,42,00,33,00,\
30,00,26,00,56,00,49,00,44,00,5f,00,38,00,30,00,38,00,36,00,26,00,50,00,49,\
00,44,00,5f,00,41,00,32,00,41,00,46,00,26,00,52,00,45,00,56,00,5f,00,30,00,\
30,00,30,00,30,00,26,00,53,00,49,00,44,00,5f,00,41,00,32,00,41,00,46,00,31,\
00,38,00,34,00,39,00,00,00,52,00,45,00,4e,00,45,00,53,00,41,00,53,00,5f,00,\
55,00,53,00,42,00,33,00,5c,00,52,00,4f,00,4f,00,54,00,5f,00,48,00,55,00,42,\
00,33,00,30,00,26,00,56,00,49,00,44,00,5f,00,38,00,30,00,38,00,36,00,26,00,\
50,00,49,00,44,00,5f,00,41,00,32,00,41,00,46,00,26,00,52,00,45,00,56,00,5f,\
00,30,00,30,00,30,00,30,00,00,00,52,00,45,00,4e,00,45,00,53,00,41,00,53,00,\
5f,00,55,00,53,00,42,00,33,00,5c,00,52,00,4f,00,4f,00,54,00,5f,00,48,00,55,\
00,42,00,33,00,30,00,26,00,56,00,49,00,44,00,5f,00,38,00,30,00,38,00,36,00,\
26,00,50,00,49,00,44,00,5f,00,41,00,32,00,41,00,46,00,00,00,00,00
"CompatibleIDs"=hex(7):52,00,45,00,4e,00,45,00,53,00,41,00,53,00,5f,00,55,00,\
53,00,42,00,33,00,5c,00,52,00,4f,00,4f,00,54,00,5f,00,48,00,55,00,42,00,33,\
00,30,00,00,00,00,00
"ClassGUID"="{36FC9E60-C465-11CF-8056-444553540000}"
"Class"="USB"
"Driver"="{36FC9E60-C465-11CF-8056-444553540000}\\0115"
"Mfg"="Renesas Electronics"
"Service"="rusb3hub"
"DeviceDesc"="Renesas Electronics USB 3.0 Root Hub"
"ConfigFlags"=dword:00000000
"ParentIdPrefix"="4&3296d942&0"

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\RENESAS_USB3\ROOT_HUB30\3&216d82cf&1d\Device Parameters]
"SymbolicName"="\\??\\RENESAS_USB3#ROOT_HUB30#3&216d82cf&1d#{f18a0e88-c30c-11d0-8815-00a0c906bed8}"
"EnumStatusID3"=dword:00000000
"EnumStatusID6"=dword:00000000
"EnumStatusID7"=dword:00000003
"EnumStatusID8"=dword:00000000
"EnumStatusID12"=dword:00000000
"EnumStatusID14"=dword:00000000
"EnumStatusID17"=dword:00000000

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\RENESAS_USB3\ROOT_HUB30\3&216d82cf&1d\LogConf]

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\RENESAS_USB3\ROOT_HUB30\3&216d82cf&1d\Control]
"ActiveService"="rusb3hub"


And for HUB2
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\USB\Vid_174c&Pid_2074]

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\USB\Vid_174c&Pid_2074\4&3296d942&0&3]
"DeviceDesc"="Renesas Electronics USB 2.0 Hub"
"LocationInformation"="ASM107x"
"Capabilities"=dword:00000084
"UINumber"=dword:00000000
"HardwareID"=hex(7):55,00,53,00,42,00,5c,00,56,00,69,00,64,00,5f,00,31,00,37,\
00,34,00,63,00,26,00,50,00,69,00,64,00,5f,00,32,00,30,00,37,00,34,00,26,00,\
52,00,65,00,76,00,5f,00,30,00,31,00,30,00,30,00,00,00,00,00
"CompatibleIDs"=hex(7):52,00,45,00,4e,00,45,00,53,00,41,00,53,00,5f,00,55,00,\
53,00,42,00,33,00,5c,00,43,00,6c,00,61,00,73,00,73,00,5f,00,30,00,39,00,26,\
00,53,00,75,00,62,00,43,00,6c,00,61,00,73,00,73,00,5f,00,30,00,30,00,26,00,\
50,00,72,00,6f,00,74,00,5f,00,30,00,32,00,00,00,52,00,45,00,4e,00,45,00,53,\
00,41,00,53,00,5f,00,55,00,53,00,42,00,33,00,5c,00,43,00,6c,00,61,00,73,00,\
73,00,5f,00,30,00,39,00,26,00,53,00,75,00,62,00,43,00,6c,00,61,00,73,00,73,\
00,5f,00,30,00,30,00,00,00,52,00,45,00,4e,00,45,00,53,00,41,00,53,00,5f,00,\
55,00,53,00,42,00,33,00,5c,00,43,00,6c,00,61,00,73,00,73,00,5f,00,30,00,39,\
00,00,00,00,00
"ClassGUID"="{36FC9E60-C465-11CF-8056-444553540000}"
"Class"="USB"
"Driver"="{36FC9E60-C465-11CF-8056-444553540000}\\0116"
"Mfg"="Renesas Electronics"
"Service"="rusb3hub"
"ConfigFlags"=dword:00000000

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\USB\Vid_174c&Pid_2074\4&3296d942&0&3\Device Parameters]
"SymbolicName"="\\??\\USB#Vid_174c&Pid_2074#4&3296d942&0&3#{f18a0e88-c30c-11d0-8815-00a0c906bed8}"
"EnableSelectiveSuspend"=dword:00000001

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\USB\Vid_174c&Pid_2074\4&3296d942&0&3\LogConf]

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\USB\Vid_174c&Pid_2074\4&3296d942&0&3\Control]


And for Hub3

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\USB\Vid_174c&Pid_3074]

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\USB\Vid_174c&Pid_3074\4&3296d942&0&23]
"DeviceDesc"="Renesas Electronics USB 3.0 Hub"
"LocationInformation"="ASM107x"
"Capabilities"=dword:00000084
"UINumber"=dword:00000000
"HardwareID"=hex(7):55,00,53,00,42,00,5c,00,56,00,69,00,64,00,5f,00,31,00,37,\
00,34,00,63,00,26,00,50,00,69,00,64,00,5f,00,33,00,30,00,37,00,34,00,26,00,\
52,00,65,00,76,00,5f,00,30,00,31,00,30,00,30,00,00,00,00,00
"CompatibleIDs"=hex(7):52,00,45,00,4e,00,45,00,53,00,41,00,53,00,5f,00,55,00,\
53,00,42,00,33,00,5c,00,43,00,6c,00,61,00,73,00,73,00,5f,00,30,00,39,00,26,\
00,53,00,75,00,62,00,43,00,6c,00,61,00,73,00,73,00,5f,00,30,00,30,00,26,00,\
50,00,72,00,6f,00,74,00,5f,00,30,00,33,00,00,00,52,00,45,00,4e,00,45,00,53,\
00,41,00,53,00,5f,00,55,00,53,00,42,00,33,00,5c,00,43,00,6c,00,61,00,73,00,\
73,00,5f,00,30,00,39,00,26,00,53,00,75,00,62,00,43,00,6c,00,61,00,73,00,73,\
00,5f,00,30,00,30,00,00,00,52,00,45,00,4e,00,45,00,53,00,41,00,53,00,5f,00,\
55,00,53,00,42,00,33,00,5c,00,43,00,6c,00,61,00,73,00,73,00,5f,00,30,00,39,\
00,00,00,00,00
"ClassGUID"="{36FC9E60-C465-11CF-8056-444553540000}"
"Class"="USB"
"Driver"="{36FC9E60-C465-11CF-8056-444553540000}\\0120"
"Mfg"="Renesas Electronics"
"Service"="rusb3hub"
"ConfigFlags"=dword:00000000

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\USB\Vid_174c&Pid_3074\4&3296d942&0&23\Device Parameters]
"SymbolicName"="\\??\\USB#Vid_174c&Pid_3074#4&3296d942&0&23#{f18a0e88-c30c-11d0-8815-00a0c906bed8}"

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\USB\Vid_174c&Pid_3074\4&3296d942&0&23\LogConf]

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\USB\Vid_174c&Pid_3074\4&3296d942&0&23\Control]
#1362 diderius6 ⇗ @canonkong

Please send me your Etron driver
Dietmar
#1363 canonkong ⇗ @diderius6
Test it.
⇗ https://yadi.sk/d/Li6PI1NZG6NFbQ
#1364 diderius6 ⇗ @canonkong
Unfortunately the Etron driver crashes during install on XP,
for "MPS" and for Acpi mode
Dietmar
#1365 canonkong ⇗ @diderius6
AMD platfrom? Maybe I modifed incorrect on 32bit, I wiil upload a new one.

 

Page 92

#1366 diderius6 ⇗ @canonkong

No, for the AMD platform with x570, the AMD driver from post 1095 works for XP 32 bit
Dietmar
#1367 diderius6 I found the problem with the Renesas driver.
Only the Root_HUB30 is in energylevel D0 (full on).
The other 2 Hubs stay until now in D2 and this makes the problem
Dietmar

EDIT: When I disable the switch in device manager "Computer enable power save"
those energylevel D2 => D0 after clicking ok, as I can see via Devicemanager.
But all my other Hubs stay only in D0, even when this switch  "powersave" is enabled.

PS: This Renesas driver with modded *.inf by me is best until now for Intel chipset and XP 32 bit.



diderius6 has attached files to this post
#1368 daniel_k ⇗ @canonkong, here is the Etron driver.

There are 2 variants, as there are some hacks depending on the XHCI controller detected.

Couldn't try them here, as it crashes or hangs Windows immediately.

Try both and pick the best one.

Theoretically, the 7052 driver should be "better" as it has less hacks for the newer models.

What is the version of the AMD Zeppelin driver?
#1369 diderius6 ⇗ @daniel_k
I just tested the 2 Etron drivers.
Both crash for XP 32 bit on Intel chipset from the Asrock k6 board.
They crash in "ACPI Multiprocessor" and in "MPS".
After crash, compi does even not boot in Safe Mode (F8)
Dietmar
#1370 daniel_k
Zitat von ⇗ diderius6 im Beitrag ¶ #1369
@daniel_k
I just tested the 2 Etron drivers.
Both crash for XP 32 bit on Intel chipset from the Asrock k6 board.
They crash in "ACPI Multiprocessor" and in "MPS".
After crash, compi does even not boot in Safe Mode (F8)
Dietmar


Yeah, it is of no use for Intel.

Actually, they are meant for AMD Ryzen.

Can you try it on Ryzen, please? It's based on the same driver canonkong used in post 1095.
#1371 diderius6 ⇗ @daniel_k

On 149C the etronxhci7052.sys works at once.
It is Ryzen 3700x on the nice AMD board asrock fatal1ty ab350 gaming k4
Dietmar

PS: On 43BB it gives unknown device. Also the USB 2.0 port does not work.
For the etronxhci7023.sys is exact the same.


EDIT: With my modded driver in post 1095 it is other. ALL USB on Ryzen 1700x and Ryzen 3700x works on
asus prime x570-pro and asrock fatal1ty ab350 gaming k4 board under XP 32 bit.
#1372 daniel_k ⇗ @diderius6!!!!!

I did it!!!!

Finally a working driver for Intel which fully works and passes basic tests.

All devices are detected after several restarts, doesn't crashes when disabled/enabled!

Performance seems OK, detects USB 2.0 hub and a pendrive connected to it.

Just hold a few minutes.
#1373 diderius6 ⇗ @daniel_k
I wantttttttt !!!!!
#1374 canonkong ⇗ @daniel_k
AMD zeppelin USB driver is 2.0.0.48
⇗ Download
#1375 canonkong ⇗ @daniel_k
Your modified Etron USB driver work very well. Etron seems that has ven_1033, dev_1094 in the xhci.sys.
#1376 daniel_k
Zitat von ⇗ diderius6 im Beitrag ¶ #1373
@daniel_k
I wantttttttt    !!!!!

Here it is, based on the last USB 3.0 driver for XP from AMD.

Please try it on Intel Z370 or Z390 (do you have any?) and also on AMD platform.

Test USB 2.0, 3.1 and 3.2 devices.

USB 3.1 and 3.2 benchmarks would be great as well.

Driver can be found in the following post:
¶ Windows XP SP3 32bit and modern PC parts (128)
#1377 asasin ⇗ @daniel_k
Can this driver work on intel h110?

Edit:Thanks
I will write when I test
#1378 daniel_k
Zitat von ⇗ asasin im Beitrag ¶ #1377
@daniel_k
Can this driver work on intel h110?



Possibly yes.
#1379 daniel_k
Zitat von ⇗ canonkong im Beitrag ¶ #1374
@daniel_k
AMD zeppelin USB driver is 2.0.0.48
⇗ Download


Hmm, this driver is strange.

Either the device codes are encrypted somehow or there is simply no device check.

Try to edit the INF file and install it.
#1380 diderius6 ⇗ @daniel_k

Itworksitworksitworks!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

What a nice day for Windows XP

Dietmar

PS: Thank you a lot Daniel!

 

Page 93

#1381 skullteria In my computer, Motherboard H110 and core i7 6700k, all drivers get code 10 on Windows XP/2003 32 bits. I think maybe is related with ACPI OSI, maybe checking Windows Version provided by ACPI
#1382 diderius6 ⇗ @skullteria

You have to mod the DSDT table in Bios for to overcome code 10
see post 1321

Dietmar

PS: Be very careful with Bios mod. I crashed 2 compis, even I try to work as careful as possible.
     I succeed to reflash the Bios to this compis but it needs months.
#1383 diderius6 Now its time, lets start XP 32 bit on UEFI:))
Dietmar
#1384 diderius6 ⇗ @daniel_k

On the Scandisk Ultra I get more than 300 Mbyte/s read write via the AMD driver on the Intel chipset USB3.0 via XP SP3.
This is exact as fast as the Asmedia 3.1 USB slot with the same USB stick.
I tested a lot of different USB, all work, even the crazy Samsung phone is recogniced at once.
When I change 6 USB devices at the same time, I get "unknown device".
But on next reboot this is gone. Now I try USB boot via your nice AMD driver
Dietmar
#1385 skullteria Well, i think we need find a way to get usb working without modify the bios. I'm trying compile usb 3.0 from win 8/win 10, however, it is not easy.
#1386 diderius6 ⇗ @skullteria
Before I thought, that we need Microsoft Kernel-Mode Driver Framework Install-v1.9-Win2k-WinXP-Win2k3.rar
For example the Renesas driver has in coinstaller something like this and mostly all newer USB drivers.
You can see with Dependency Walker if WDFLDR.sys is needed for this driver.
But the AMD driver from Daniel from just now shows, that it is possible without WDFLDR.sys
Dietmar
#1387 skullteria I understand...However, i mean modify BIOS is dangerus and if we want Windows XP keep used on the world, need a easy way to end users. And maybe run it on reactos, for example.
#1388 infuscomus ⇗ @skullteria ⇗ @diderius6

It may be possible to avoid doing a bios mod to fix the USB code 10 problem

But it would require the installation of grub2 bootloader onto windows for its ability to apply ACPI patches
#1389 canonkong ⇗ @skullteria ⇗ @diderius6 ⇗ @daniel_k
Can we use this USB Driver source code to modified and make a usb general driver?
⇗ https://yadi.sk/d/yQw1Q3mtLsiA_w
#1390 infuscomus ⇗ @canonkong ⇗ @skullteria ⇗ @diderius6 ⇗ @daniel_k

correct me if i'm wrong but it's my understanding that the ReactOS usbxhci driver is unfinished/incomplete
#1391 diderius6 ⇗ @infuscomus  ⇗ @skullteria  ⇗ @daniel_k  ⇗ @canonkong

I also think, that the Reactos xhci driver will not be ready next years and so cant help us.
I noticed, that the AMD driver vers. 1.1.0.0145, which works for XP on Intel chipsets has a problem
with
Class_08&SubClass_06&Prot_50 (USB harddisks)
devices. It is not the fault of the driver direct, because under Win7 my last driver from Renesas and
the nice driver AMD 1.1.0.0145 from Daniel work.
The device is recogniced, it sounds (plop) 3 times in a quick row
and thats all
Dietmar

EDIT: For my last Renesas driver vers. 3.0.23.0 happens exact the same under XP. All USB devices are recogniced.
But Class_08&SubClass_06&Prot_50 (USB harddisks) devices gives always 3 fast plops and thats all.
May be it has to do with the switch in XP, that they are not removable disks.
Yepp, I have a Kingston Workspace USB stick, which is set as nonremovable. There happens exact the same, 3 fast plops.

EDIT2: It has nothing to do with Class_08&SubClass_06&Prot_50
I have an USB stick with exact this class (removable) which is recogniced and works under XP and Intel chipset.

EDIT3: I set up a new XP. Now this problem is gone with the nice driver AMD vers. 1.1.0.0145 from Daniel. I changed soso many settings in USB before, so one makes, that no unremovable sticks or disks are recogniced. Funny, I search all database from Microsoft and via Internet, such a switch is not documented for XP. Only, that all USB devices are forbidden (easy set start=4 for service usbstor in registry).
#1392 daniel_k ⇗ @diderius6, glad you sorted it out.

Never had such issue here.

Does USB work fine during Setup? Did you install XP from USB?
#1393 diderius6 ⇗ @daniel_k

I just boot this XP direct from USB with no other device connected,
this is really the hardest test for this nice driver from you
Dietmar

PS: The speed on USB boot device is during USB3 slot 93.55% from native speed, waaoh !

EDIT: I run Cinebench, prime95, 3Dmark2001 on this XP, bootet with your AMD driver from USB3 port,
        absolut stable:)).

#1394 canonkong ⇗ @daniel_k
AMD vers. 1.1.0.0145 bsod will bsod when it install for 149C.
And now I found that only Etron usb driver can work well. Intel serise and AMD 2.0.0.48 also can work, but it must install it on windows after install the AMD chips driver. If don't install like that. it will BSOD.
#1395 daniel_k
Zitat von ⇗ canonkong im Beitrag ¶ #1394
AMD vers. 1.1.0.0145 bsod will bsod when it install for 149C.
And now I found that only Etron usb driver can work well. Intel serise and AMD 2.0.0.48 also can work, but it must install it on windows after install the AMD chips driver. If don't install like that. it will BSOD.

⇗ @canonkong, so the AMD 2.0.0.48 works without modding amdxhci.sys? Only INF mod needed?

At least one driver, Etron, works fine.

 

Page 94

#1396 canonkong ⇗ @daniel_k
Yes, AMD 2.0.0.48 is only INF mod needed, and it can support almost all usb devices, it can work for intel, amd asmedia, nvidia usb-c and more.
#1397 diderius6 ⇗ @daniel_k

What do you think,
is it possible, to mod one of the following Intel network drivers for XP,
that it supports i219? This package contains them all from i210 to i218 for XP 32 bit.
i219 is the Intel chipset driver for network on a lot of motherboards
Dietmar



diderius6 has attached files to this post
#1398 canonkong ⇗ @diderius6
You can replace the i218-v GBE to the i219 use uefitool with the BIOS.
#1399 diderius6 ⇗ @canonkong

I want vice versa:))
i219 => i218

And this are only the networkfiles in Bios.
For XP, you need to mod for example the e1rxp5132.sys (for i210, i211) for to support i219.
But there are other files coinstaller etc. also
Dietmar

PS: Have you modded networkfiles via this way in Bios?
#1400 canonkong ⇗ @diderius6
Yes, my board have i219-v, and it don't have windows server driver, when you replace the i219-LM GBE, I219-V will become I219-LM, becaus it is not a fully network device, just a phy.
Also i211-AT can replace the rom, and it will becom  to i210 serise.
#1401 diderius6 ⇗ @canonkong
Hm, does this mean, that the newer Intel PCI device IDs for the network only depend
on Bios?
And will it work for

i219 => i211

Dietmar
#1402 canonkong ⇗ @diderius6
Yes, the newer Intel PCI device IDs for the network depend on bios GBE.
But i219 => i211 is not possible, i219 => i218/i217 is OK.
#1403 diderius6 ⇗ @canonkong

Can you please write a short tutorial,
how to change i219 => i218/i217

Dietmar
#1404 XPLives ⇗ @canonkong
I would be interested in seeing a step by step tutorial on how you signed the drivers from scratch.

Is this a free program or where to get it?

This would be helpful in making the driver installation process automated without user interaction.

Since you are using Windows 7, do you know how to disable ACPI in Windows 7 or Vista during setup?
#1405 canonkong ⇗ @diderius6
Use uefitool (UBU) to open a bios which have i218, then extract the gbe, use uefitool to open your needed bios, repalce it and save it, then you can flash it.
#1406 diderius6 ⇗ @XPLives

Vista or Win7 cant be installed without ACPI.
I tried to install Vista 32 on Ryzen PC, impossible. But Vista 32 bit works after the same hack in acpi.sys for Vista as for XP.
Depending on Bios version and motherboard, even Win7 32 bit can fail install on Ryzen, I have had this experience.
And all Linux versions 32 bit, that I testet, fail on Ryzen.

Dietmar
#1407 canonkong ⇗ @XPLives
I signed the drivers use a signtool named Trust Asia, it very easy to sign a driver using this tool.
Disable ACPI in Windows 7 or Vista during setup is very hard, but if you meet A5 bsod, try to delete the acpipmi.sys and its regs before install.
#1408 asasin hello again

Unfortunately, I have a problem with the driver (or something else) from ⇗ @daniel_k .
Installs it through the device manager.
The device returns code 39.
Driver installation returns error "Windows cannot load the device driver for this hardware. The driver may be corrupted or missing. (Code 39)".
any ideas?

Motherboard: ⇗ https://www.asus.com/us/Motherboards/H11...specifications/
usb id PCI\VEN_8086&DEV_A12F&CC_0C0330
#1409 diderius6 ⇗ @asasin
Code 39 means,
that something with the driver is wrong, for example checksum
Dietmar
#1410 asasin So for now I can't do anything about this usb?

 

Page 95

#1411 infuscomus ⇗ @asasin

we are still experimenting
#1412 infuscomus ⇗ @daniel_k

concerning your previously uploaded AMDXHCI driver from post #1376 - there is a hardcoded HWID in there

could that hardcoded HWID cause issues?
#1413 cedar ⇗ @diderius6, ⇗ @infuscomus

Regarding sleep states:

My Asus Prime B350-Plus Ryzen can not sleep like
my Gigabyte Intel GA-P75-D3 Ivy board with i3470 (all Z77 drivers works fine here in Xp).
The Ryzen B350, if sleep in XP, will need a reboot. Not too ideal.

The Ivy board with its cpu fan can go to a complete stop and wake up in
a keystroke.   Is this a D3 sleep mode? How can I enable this?

The Prime B350-Plus Ryzen board with 2600 can not even have it cpu fan
stopped. And it stays locked forever(test for an hour) unless reboot!.

Any helps appreciated.

Cedar
#1414 diderius6 ⇗ @cedar

Please ask a concrete question.
Some steps about sleep states can be done in Bios
settings. But be careful there,
Dietmar
#1415 cedar ⇗ @diderius6

I will double check the bios setting again. maybe I missed something before.
#1416 diderius6 ⇗ @infuscomus ⇗ @daniel_k ⇗ @canonkong

Tomorrow I make a try for USB3 on Intel chipset for the z370 ROG-MAXIMUS-X-APEX board with 9900k cpu.
First challenge is the DSDT mod for its Bios there. At once we will see, if this is a generic mod in DSDT for the xhc device.

Funny, only the Intel chipset is mentioned in Bios with its xhc and not for example Asmedia xhc?

Also I want to try the nice tip from ⇗ @canonkong for the Intel i219 => i217, which this board has but no XP driver for it.
I never used the UBU tool only UEFI-tool, so any help with UBU is welcome.
When I succeed, I write a tutorial about all. May be it is possible, to mod the BIOS in a generic way, that it can be flashed
with its own tools. For this we need to understand, how the flash tool check validity of the Bios.
We can then use the normal Bios from download side in Web, do the generic DSDT mod for xhc on it, check it and flash.
Via this way the risk is minimal (but not zero, as I have seen for the Asus x570 -Pro board)
Dietmar
#1417 diderius6 ⇗ @Lost_N_BIOS

Can there be a problem, when you use for modbiosfilenamehere.bin the original Bios version from download Webside

FPTw.exe -bios -f modbiosfilenamehere.bin

Dietmar

PS: I ask this, because I noticed, that the all in one order for to backup Bios via
     FPTw.exe -d myBios.bin
     gives not the original flashed Bios on chip back.
#1418 XPLives ⇗ @diderius6

I have not tried to full install from scratch for Vista or W7 on AMD AM4.

But here's a trick if  you want to use Vista or Windows 7 on AMD AM4.  This worked with Bristol Ridge CPU.  Install the OS on Ivy Bridge then just move the SATA drive over and connect to the AMD AM4 system and it boots up to the desktop no issue.  It uses the Microsoft AHCI SATA driver so no BSOD 7B.  It might trigger the genuine activation since it detects different hardware however not matching motherboard may deactivate the genuine status.  But you can still bypass and continue to use the OS with an occasional nag screen every now and then.  I used this to copy the Hardware IDs of the SATA controller before installing XP as this was the only way to get it easily.
#1419 diderius6 ⇗ @XPLives
Does it work also for Vista 32 bit
Dietmar
#1420 XPLives ⇗ @canonkong

Zitat von ⇗ canonkong im Beitrag ¶ #1407
@XPLives
I signed the drivers use a signtool named Trust Asia, it very easy to sign a driver using this tool.
Disable ACPI in Windows 7 or Vista during setup is very hard, but if you meet A5 bsod, try to delete the acpipmi.sys and its regs before install.


Is this Trust Asia signtool free?  Can you upload or message me the link to get it?  I need to test if this will work with my customized drivers that I want to later upload for user testing in unattended 2000->W7 installs.

Also can you name the company who signed it or will it say only Trust Asia on the certificate?

How about a customized unattended install file for Vista / W7?  That would be easier to do to disable ACPI internally from the start if it is similar to XP.  Later we can look into disabling the registry references to acpi files and registry entries so it doesn't load them.
#1421 XPLives ⇗ @diderius6

Zitat von ⇗ diderius6 im Beitrag ¶ #1419
@XPLives
Does it work also for Vista 32 bit
Dietmar


Yes it does.  I actually test with Vista 32-Bit because it is smaller in size than the 64-Bit version.  It had to fit on a 16GB SSD so I chose Vista 32-Bit for the portable Vista boot to get Hardware Ids for XP.   Vista 64-Bit needs at least 20GB to even start the installation.  I used Vista 64-Bit on a larger hard drive and boots up also with swapping the drive.  I also have a Windows 7 32-Bit also but it should work the same as Vista.
#1422 XPLives ⇗ @diderius6
Zitat von ⇗ diderius6 im Beitrag ¶ #1416
@infuscomus @daniel_k @canonkong

Tomorrow I make a try for USB3 on Intel chipset for the z370 ROG-MAXIMUS-X-APEX board with 9900k cpu.
First challenge is the DSDT mod for its Bios there. At once we will see, if this is a generic mod in DSDT for the xhc device.

Funny, only the Intel chipset is mentioned in Bios with its xhc and not for example Asmedia xhc?

Also I want to try the nice tip from @canonkong for the Intel i219 => i217, which this board has but no XP driver for it.
I never used the UBU tool only UEFI-tool, so any help with UBU is welcome.
When I succeed, I write a tutorial about all. May be it is possible, to mod the BIOS in a generic way, that it can be flashed
with its own tools. For this we need to understand, how the flash tool check validity of the Bios.
We can then use the normal Bios from download side in Web, do the generic DSDT mod for xhc on it, check it and flash.
Via this way the risk is minimal (but not zero, as I have seen for the Asus x570 -Pro board)
Dietmar


   
You shouldn't need to mod the BIOS for Intel USB 3.0 to work.  That would prevent a lot of laptop users from using them.

Just as ACPI.SYS mod is better than BIOS mod for universal usage.

Also your ACPI.SYS I tested on Z370 Coffee Lake had issues.  Works to install ACPI Multiprocessor.

Problem is Video Card does not show up in Device Manager.  It's missing.  I cannot install the driver for it so XP becomes useless without Titan X as its friend.

Did you figure out how to change device default IRQs assigned?  Can you disable IRQ6 and free it from being used by the FDC so maybe the video card can use it or Intel USB 3.0 will use that IRQ instead?  I think this is the problem the Intel USB 3.0 may not be functioning correctly since it does not get assigned the necessary resources.

Also a way to disable some PCI standard PCI-PCI bridge from using any resources.  Too many of these overwhelm XP and I believe that's why the Video card is not showing up in Device Manager and possibly why Intel USB 3.0 not working.
#1423 diderius6 ⇗ @XPLives
This means,
that Vista 32bit can handle crazy Irq calls from the AM4 processors
better than Linux 32 bit
Dietmar

PS: I have no success to install Vista 32 on Ryzen. I also noticed big problems with all AHCI drives in Vista,
compared with XP.

Intel chipset USB does not work until now in XP, because Intel set its driver to sleep in DSDT, gives code 10.
And only the Intel xhci.sys knows, how to wake up. No other USB driver on the market can do that.
Because of this, there was no USB for XP on the Intel chipset, even the drivers are nearly all the same (generic).
#1424 canonkong ⇗ @XPLives
Trust Asia signtool can down free, but you need CA. I can share this tool and CA, but this tool only has Chinese language, I dont know you can read it or not.
#1425 diderius6 I just notice, that for the xhc device on Asrock k6 and on Asus Apex X

Method (_PS0, 0, Serialized)  // _PS0: Power State 0

in DSDT table is absolut identic. Force to sleep with code 10.
So, from tomorrow also USB 3.0 should run on Intel chipset on the Asus Apex X board

Dietmar

 

Page 96

#1426 XPLives ⇗ @canonkong

Zitat von ⇗ canonkong im Beitrag ¶ #1424
@XPLives
Trust Asia signtool can down free, but you need CA. I can share this tool and CA, but this tool only has Chinese language, I dont know you can read it or not.


Yes can you upload the link here?  I can probably have it translated or figure it out.

Are there any English sign tools you know of free/paid to do this?
#1427 diderius6 ⇗ @XPLives

Just try other grafikcard for XP

Dietmar
#1428 XPLives ⇗ @diderius6

Zitat von ⇗ diderius6 im Beitrag ¶ #1427
@XPLives

Just try other grafikcard for XP

Dietmar


Yes I did that with multiple cards swapping.  All appear Missing in Device Manager.  But you can still boot up on the Video Card and get video output.  Just no way to install a driver for the graphics card so stuck at MS VGA driver on Coffee Lake.

When moving the drive to Ivy Bridge, it sees the Video Card in Device Manager.
#1429 diderius6 ⇗ @XPLives
Something went wrong during install of XP.
I have also strange results for some newer boards during install of XP.
In this case I use an install of XP from another board,
where everything works.
I think it depends on faulty DSDT and other SSDT in Bios
Dietmar
#1430 XPLives ⇗ @diderius6

Zitat von ⇗ diderius6 im Beitrag ¶ #1429
@XPLives
Something went wrong during install of XP.
I have also strange results for some newer boards during install of XP.
In this case I use an install of XP from another board,
where everything works.
I think it depends on faulty DSDT and other SSDT in Bios
Dietmar



So far besides your Z370, Z390, how many other users tested your ACPI to work on Coffee Lake without issues and no Bios Mod done?

Did you try testing your Z370 and Z390 on clean unmodified BIOS and only using your ACPI.sys mod for XP SP3 clean install?

On AMD AM4 Bristol Ridge test, ACPI Multiprocessor shows, VGA card shows, only issues is slower processor performance, and when using a very large Ramdisk it slows the boot up time that does not happen on Intel.
#1431 canonkong ⇗ @XPLives
Signtool always is free and you can use Microsoft signtool, but the CA is not free and very expensive.
#1432 XPLives ⇗ @canonkong

Zitat von ⇗ canonkong im Beitrag ¶ #1431
@XPLives
Signtool always is free and you can use Microsoft signtool, but the CA is not free and very expensive.


Okay message me the link where you download yours from and I will test.  Or you can upload the one you have if it is clean.

As long as it is signed and can install without prompting the user to confirm is all I need for testing.
#1433 XPLives ⇗ @diderius6

Zitat von ⇗ diderius6 im Beitrag ¶ #1423
@XPLives
This means,
that Vista 32bit can handle crazy Irq calls from the AM4 processors
better than Linux 32 bit
Dietmar

PS: I have no success to install Vista 32 on Ryzen. I also noticed big problems with all AHCI drives in Vista,
compared with XP.

Intel chipset USB does not work until now in XP, because Intel set its driver to sleep in DSDT, gives code 10.
And only the Intel xhci.sys knows, how to wake up. No other USB driver on the market can do that.
Because of this, there was no USB for XP on the Intel chipset, even the drivers are nearly all the same (generic).


I have not done extensive testing on Vista on AMD AM4 but I didn't see any problems booting into it and checking Device Manager and seemed stable to me.  I used a USB card to use the USB mouse.

Do you have an Ivy Bridge or earlier Intel chipset MB to install Vista 32-Bit clean onto a Sata drive?

After fully installed you can then move the drive to your AMD AM4 and it should boot to the OS without issue.  I only tested on my Bristol Ridge but I don't see why it would not work on Ryzen CPU.

It's possible you can't install Vista clean on AMD AM4 directly but I never tried.   On SkyLake I can install Vista on it without issue.  I didn't test a clean Vista install using Coffee Lake yet have you tried?
#1434 daniel_k
Zitat von ⇗ diderius6 im Beitrag ¶ #1393
@daniel_k

I just boot this XP direct from USB with no other device connected,
this is really the hardest test for this nice driver from you
Dietmar

PS: The speed on USB boot device is during USB3 slot 93.55% from native speed, waaoh !

EDIT: I run Cinebench, prime95, 3Dmark2001 on this XP, bootet with your AMD driver from USB3 port,
        absolut stable:)).


So glad to know!

After so much work, it was worth the effort!
#1435 canonkong ⇗ @daniel_k
How to solve the problem about the USB driver meet 01E and 02C BSOD sometimes?
For example, 149C use via intel amd 2.0.0.48 driver mod driver. VIA will meet 01E BSOD sometimes. Intel/AMD 2.0.0.48 will meet 02C BSOD when install/uninstall, or meet memory can not read 0x0000002C.
#1436 daniel_k
Zitat von ⇗ infuscomus im Beitrag ¶ #1412
@daniel_k

concerning your previously uploaded AMDXHCI driver from post #1376 - there is a hardcoded HWID in there

could that hardcoded HWID cause issues?

Not at all.

I've just changed the minimum required for the driver to work with any XHCI controller.

Those HWIDs are used just for device specific fixes and ensures the driver will behave the same when used with the devices it was originally designed for.

The less changes the better.
#1437 daniel_k
Zitat von ⇗ canonkong im Beitrag ¶ #1435
@daniel_k
How to solve the problem about the USB driver meet 01E and 02C BSOD sometimes?
For example, 149C use via intel amd 2.0.0.48 driver mod driver. VIA will meet 01E BSOD sometimes. Intel/AMD 2.0.0.48 will meet 02C BSOD when install/uninstall, or meet memory can not read 0x0000002C.

⇗ @canonkong

Unfortunately, that is beyond my knowledge.

While XHCI is a standard, manufacturers include a lot of device specific code to fix design flaws etc.

Most probably the driver expects something the controller doesn't do or the driver does something that it shouldn't if following the standards.

When we remove the device ID checks, we are just hoping for the driver to work properly. It's just a matter of luck.
#1438 daniel_k
Zitat von ⇗ cedar im Beitrag ¶ #1413
@diderius6, @infuscomus

Regarding sleep states:

My Asus Prime B350-Plus Ryzen can not sleep like
my Gigabyte Intel GA-P75-D3 Ivy board with i3470 (all Z77 drivers works fine here in Xp).
The Ryzen B350, if sleep in XP, will need a reboot. Not too ideal.

The Ivy board with its cpu fan can go to a complete stop and wake up in
a keystroke.   Is this a D3 sleep mode? How can I enable this?

The Prime B350-Plus Ryzen board with 2600 can not even have it cpu fan
stopped. And it stays locked forever(test for an hour) unless reboot!.

Any helps appreciated.

Cedar

ACPI 1.0a support is broken in the new systems.

It's though enough to get XP working on new systems, don't expect StandBy or even Hibernation to ever work properly.

I've tried really hard to fix the ACPI table, but just gave up.
#1439 XPLives ⇗ @diderius6

Zitat von ⇗ diderius6 im Beitrag ¶ #1429
@XPLives
Something went wrong during install of XP.
I have also strange results for some newer boards during install of XP.
In this case I use an install of XP from another board,
where everything works.
I think it depends on faulty DSDT and other SSDT in Bios
Dietmar



Yes.  I intend to do another project to shrink down XP setup files to the bare minimum smaller than Tiny XP size.  But will require lots of help to identify all the files we don't need.

After sorting through the 6,000+ files then the fun can begin to trim XP to bare minimum and XP install will be very fast even on an optical drive.  Maybe it's possible to shrink below 100MB and hopefully under 100 files.

Currently, XP SP0 uses the least amount of files and installs to around 600 some MB.  XP SP3 uses more files and bloats it too much.

But XP SP1 first supports large partition so may need to use this as the XP installer source.

I found XP SP0 can get the full 4.0GB memory usage compared to SP2/SP3 drops to 3.15GB->3.5GB max.  So MS stole 0.5->0.85GB of memory from XP users.
#1440 daniel_k
Zitat von ⇗ diderius6 im Beitrag ¶ #1414
@cedar

Please ask a concrete question.
Some steps about sleep states can be done in Bios
settings. But be careful there,
Dietmar

⇗ @diderius6

He wants to get Standby working on Ryzen.

Dietmar, have you ever try to put your system in Standby (Sleep) then Wake it?

Tried to fix myself but gave up, too much work.

 

Page 97

#1441 XPLives ⇗ @daniel_k

Zitat von ⇗ daniel_k im Beitrag ¶ #1438
Zitat von ⇗ cedar im Beitrag ¶ #1413
@diderius6, @infuscomus

Regarding sleep states:

My Asus Prime B350-Plus Ryzen can not sleep like
my Gigabyte Intel GA-P75-D3 Ivy board with i3470 (all Z77 drivers works fine here in Xp).
The Ryzen B350, if sleep in XP, will need a reboot. Not too ideal.

The Ivy board with its cpu fan can go to a complete stop and wake up in
a keystroke.   Is this a D3 sleep mode? How can I enable this?

The Prime B350-Plus Ryzen board with 2600 can not even have it cpu fan
stopped. And it stays locked forever(test for an hour) unless reboot!.

Any helps appreciated.

Cedar

ACPI 1.0a support is broken in the new systems.

It's though enough to get XP working on new systems, don't expect StandBy or even Hibernation to ever work properly.

I've tried really hard to fix the ACPI table, but just gave up.


I never use hibernation since if you install 32GB or more RAM it requires an equal amount of RAM for the hibernat.fil in Vista and maybe even 2003.  But since XP memory will be capped it's probably 3.15->4.00GB in size depending on which SP version used.

Standby was never 100% reliable even on Ivy Bridge.  Sometimes if you sleep too long you can never wake the system up and if you use a large Ramdrive you cannot backup the data first so it is lost.

I prefer to underclock and undervolt the system to your preferred speed and just leave all cores running.  XP hardly crashes in this scenario.

If you used Standby on IB it is better to not let it sleep too long.  A few minutes is safe.  Better to get a UPS instead so you can shut down safely.

On the bright side diderius6 ACPI.sys mod still allows Coffee Lake and Ryzen MB to shut down instead of a manual power off.
#1442 daniel_k
Zitat von ⇗ diderius6 im Beitrag ¶ #1416
@infuscomus @daniel_k @canonkong

Tomorrow I make a try for USB3 on Intel chipset for the z370 ROG-MAXIMUS-X-APEX board with 9900k cpu.
First challenge is the DSDT mod for its Bios there. At once we will see, if this is a generic mod in DSDT for the xhc device.

Funny, only the Intel chipset is mentioned in Bios with its xhc and not for example Asmedia xhc?

⇗ @diderius6

Found the culprit ACPI statement that prevents the driver from loading on XP.

Taken from the ACPI table of your ASRock Z370 board.

Search for Device (XHC) and change this:
 
            Method (_PS0, 0, Serialized)  // _PS0: Power State 0
{
If (DVID == 0xFFFF)
{
Return (Zero)
}

Local2 = MEMB /* \_SB_.PCI0.XHC_.MEMB */
Local1 = PDBM /* \_SB_.PCI0.XHC_.PDBM */
PDBM &= 0xFFFFFFFFFFFFFFF9
D3HE = Zero
STGE = Zero
D0D3 = Zero
MEMB = XWMB /* \XWMB */
PDBM = (Local1 | 0x02)
OperationRegion (MC11, SystemMemory, XWMB, 0x9000)
Field (MC11, DWordAcc, Lock, Preserve)
{
Offset (0x81C4),
, 2,
UPSW, 2
}

UPSW = Zero
PDBM &= 0xFFFFFFFFFFFFFFFD
MEMB = Local2
PDBM = Local1
If (CondRefOf (\_SB.PCI0.XHC.PS0X))
{
PS0X ()
}

If (UWAB && ((D0D3 == Zero) || (^^XDCI.D0I3 == Zero)))
{
MPMC = One
While (PMFS)
{
Sleep (0x0A)
}
}
}



To this:

 
            Method (_PS0, 0, Serialized)  // _PS0: Power State 0
{
If (DVID == 0xFFFF)
{
Return (Zero)
}

Local2 = MEMB /* \_SB_.PCI0.XHC_.MEMB */
Local1 = PDBM /* \_SB_.PCI0.XHC_.PDBM */
If (OSYS >= 0x07D6)
{
PDBM &= 0xFFFFFFFFFFFFFFF9
}
D3HE = Zero
STGE = Zero
D0D3 = Zero
MEMB = XWMB /* \XWMB */
PDBM = (Local1 | 0x02)
OperationRegion (MC11, SystemMemory, XWMB, 0x9000)
Field (MC11, DWordAcc, Lock, Preserve)
{
Offset (0x81C4),
, 2,
UPSW, 2
}

UPSW = Zero
If (OSYS >= 0x07D6)
{
PDBM &= 0xFFFFFFFFFFFFFFFD
}
MEMB = Local2
PDBM = Local1
If (CondRefOf (\_SB.PCI0.XHC.PS0X))
{
PS0X ()
}

If (UWAB && ((D0D3 == Zero) || (^^XDCI.D0I3 == Zero)))
{
MPMC = One
While (PMFS)
{
Sleep (0x0A)
}
}
}



Which means that PDBM &= 0xFFFFFFFFFFFFFFF9 and PDBM &= 0xFFFFFFFFFFFFFFFD must be run only if OS is Vista or later. That's all.

This way we ensure the changes won't affect other OSes.

#1443 diderius6 ⇗ @daniel_k

I have not tried sleeping mode on XP,
because also on chipsets before Skylake it was faulty.
On the evga z390 dark board they make a Bios for real XP.
It is version 0.92 and there you may find some intuition
for to change Acpi tables. It is not on their Website,
so I put it here.
This board I use for generic XP install, really best.
Have you an idea, how to overcome for your new driver
the sleeping code 10 in DSDT table in
Method (_PS0, 0, Serialized)  // _PS0: Power State 0

⇗ @XPLives is right, that Bios mod of DSDT is nothing for "normal" people.
But I think, this mod can make like generic
Dietmar

Edit: Funny, I wrote this few mins ago.
The Bios 0.92 for XP on z390 is too big for to upload here,
so I give you the link, it is on top of this website

⇗ https://forums.evga.com/EVGA-Z390-DARK-O...T-m2930290.aspx
#1444 diderius6 ⇗ @XPLives
I make XP SP1 install at a size of about 3 Mbyte^^
Dietmar

⇗ http://reboot.pro/topic/3717-xpsp1-with-...fs-below-10-mb/

PS: And Windows Server 2003 at a size of about 2 Mbyte, fits on1 diskette.
     This is record until now.
#1445 diderius6 ⇗ @daniel_k
I just give the asl.exe tool a new chance.
I upload your new mod DSDT table via asl.exe.
But then I get again BSOD A5, crazy tool because of ACPI.

But then I remembered, that I still have a "MPS" XP installation.
And voila, there your mod works.
This means, also the asl tool works, only not correct for Acpi mod.

So at once I can give a mini Tutorial for to test if USB3 for intel chipset works on your compi without real Bios modding.

0.) Make a "MPS" XP installation (This is without ACPI. You can also use "Standart PC" hitting F5 during setup of XP.)
1.) Extract with UEFI tool your DSDT table. From this raw file make dsdt.dsl with the tool iasl in commandline C:\ iasl.exe dsdt.raw
2.) Do the mod in DSDT as in post 1442.
3.) Make dsdt.aml from this modded file dsdt.dsl via C:\iasl dsdt.dsl in commandline.
3.) Copy the Tool asl.exe to your C:\    folder
4.) Type via commandline C:\asl /loadtable dsdt.aml
    Reboot your Compi.
5.) Install the USB driver from ⇗ @daniel_k

Voila:))

Thats all. The real Bios is not touched on your COMPI!
Modded DSDT is stored only in registry.
When you want to unload the modded DSDT from your compi
just type in commandline C:\asl /loadtable -d dsdt.aml

I just tested this,
it works
Dietmar
#1446 infuscomus ⇗ @diderius6

i recall from my experimenting earlier that you need to load the FACP table before loading the DSDT table

perhaps that is why you get A5 BSOD when in ACPI mode?

try

asl.exe /loadtable facp.raw
asl.exe /loadtable dsdt.raw
#1447 cedar ⇗ @daniel_k
------------
ACPI 1.0a support is broken in the new systems.

It's though enough to get XP working on new systems, don't expect StandBy or even Hibernation to ever work properly.

I've tried really hard to fix the ACPI table, but just gave up
.
------------

It is good to know that it is not my specific Prime B350 that has this problem.
So it is a general problem.

I tried all the usb 3.0 drivers from yours,diderius6,and canonkong.
So far no success on my Gigabyte B75 Ivy board. Some Host controllers
can be installed, but none of 3.0 hubs drivers can be installed.  


Have you had any successful USB3.0 XP installed on any other Intel board?


As older boards have no ACPI problems. Wouldn't it be more likely to be modded
successfully than present board?

Cedar
#1448 cedar ⇗ @XPLives

Were you able to install XP sp2 and earlier on Ryzen?
#1449 skullteria Hello, i will install Windows Vista on my system, motherboard with chipset H110 and try install usb driver from here. If succeded, maybe problem ACPI driver or power saving on Vista. If get Code 10 too, maybe it is related with Windows version on OSI function. We really need run usb 3.0 on XP without edit Bios
#1450 diderius6 ⇗ @daniel_k
I just tested my own Tutorial for USB mod direct on the Asus Apex X board
with minimod of DSDT via Daniel.
Works !!!

Have a nice day
Dietmar



#1451 cedar ⇗ @diderius6 and ⇗ @XPLives

3 Mb XP is really good and hilariuous.  I am very interested to stall a very small XP64 or
Win7x64 on my ivy MB or Win7x64 on Ryzen, as long as it can run ffmpeg64 for fast
x265 backup.  I prefer ffmpeg over x265.exe as no audio remux (intermediate files
created) is required.

Cedar
#1452 diderius6 ⇗ @daniel_k
At the same time I feel,
that we will not be able to have an USB driver for XP 32 bit
for Intel chipset USB without Bios Mod,
because always XP hangs up itself when it comes in Bios
for the xhc driver to the lines (64 bit) with

PDBM &= 0xFFFFFFFFFFFFFFF9
and
PDBM &= 0xFFFFFFFFFFFFFFFD

Dietmar

PS: So it is not (?!) the fault of Intel but of motherboard manufacturers.
#1453 diderius6 ⇗ @infuscomus

I tried first to load facp and then dsdt

asl.exe /loadtable facp.raw
asl.exe /loadtable dsdt.raw

but again on ACPI XP BSOD 0xA5
this is very strange, because the asl tool works very good in other cases
Dietmar

PS: So, the only hope without real Bios Mod Intel USB is to repair or write new the Tool asl.exe.
#1454 infuscomus ⇗ @diderius6

There is source code for intel ASL on github

⇗ https://github.com/acpica/acpica

I am not sure if it will help
#1455 diderius6 ⇗ @infuscomus

Do you have the binary for Intel ASL
and how is the Syntax for its use?

Another idea would be: The DSDT table can be seen in (ACPI only) XP registry
and also been edited there. But on next boot the Bios loads
its original own DSDT. If we just can stop writing of Bios its own DSDT to the registry again,
it would be done
Dietmar

 

Page 98

#1456 infuscomus ⇗ @diderius6

is this what you are looking for?
⇗ https://acpica.org/downloads/binary-tools

can we set DSDT to read only using permissions in the registry editor?
#1457 diderius6 I just found, how the asl Tool works.
When you read the registry on running XP with ACPI out,
the values of the DSDT are NOT stored.
But when you upload DSDT with asl.exe
suddently is there a BIG set of data, all Hexvalues at the place from DSDT
Dietmar

EDIT: With asl the whole DSDT is blown up to a very big dataset at the same place,
where in working ACPI XP it stays.
It gets an extra start signature,
but then follows the normal "DSDT" signature
and it ends with the normal signature for dsdt.
And then follows in registry the entry for FACP, as normal.
[HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\ACPI\Parameters\DSDT\ALASKA\A_M_I_\01072009]

[HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\ACPI\Parameters\FACP]


=> (asl loads DSDT)


[HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\ACPI\Parameters\DSDT\ALASKA\A_M_I_\01072009]
"00000000"=hex:0d,ae,02,00,00,00,00,00,00,00,00,00,f0,1b,00,00,44,53,44,54,0d,\
ae,02,00,02,6b,41,4c,41,53,4b,41,41,20,4d,20,49,20,00,00,09,20,07,01,49,4e,\
54,4c,05,04,19,20,a0,43,83,00,15,5c,2e,5f,47,50,45,41,4c,36,46,08,00,15,5c,\
2e,5f,47,50,45,48,4c,56,54,08,00,15,5c,2e,5f,47,50,45,50,30,4c,36,08,00,15,\
5c,2e,5f,47,50,45,50,31,4c,36,08,00,15,5c,2e,5f,47,50,45,50,32,4c,36,08,00,\
15,5c,2e,5f,50,52,5f,42,47,49,41,00,00,15,5c,2e,5f,50,52,5f,42,47,4d,41,00,\
00,15,5c,2e,5f,50,52,5f,42,47,4d,53,00,00,15,5c,2e,5f,50,52,5f,43,46,47,44,\

...


35,31,34,39,30,37,31,34,38,35,28,52,29,00,5b,82,4d,05,57,4d,49,31,08,5f,48,\
49,44,0d,50,4e,50,30,43,31,34,00,08,5f,55,49,44,0d,4d,58,4d,32,00,08,5f,57,\
44,47,11,17,0a,14,3c,5c,cb,f6,ae,9c,bd,4e,b5,77,93,1e,a3,2a,2c,c0,4d,58,01,\
02,14,20,57,4d,4d,58,03,8a,6a,00,46,55,4e,43,a0,10,93,46,55,4e,43,0c,53,4c,\
49,41,a4,53,4c,49,43,a4,00
"Action"=dword:00000000

[HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\ACPI\Parameters\FACP]


Because in registry only ControlSet001 is stored, FACP is always stored normally,
but DSDT without asl is always loaded new via Bios.


May be adding the line in DSDT in registry
"Action"=dword:00000000
is enough and copy DSDT into ControlSet001


Dietmar
#1458 diderius6 ⇗ @infuscomus

"can we set DSDT to read only using permissions in the registry editor?"

Good idea, but until now without success for me
Dietmar
#1459 infuscomus
Zitat von ⇗ diderius6 im Beitrag ¶ #1457
Which means, with use of asl the whole FACP entry in registry is gone.


asl.exe /loadtable facp.raw
did not help?
#1460 XPLAKE8175 I'm getting A5 ACPI error on my ASUS k555lb laptop. I don't want to install XP without ACPI. Which is the latest version of XP ACPI compliant for my laptop K555LB?
#1461 diderius6 ⇗ @infuscomus

The asl tool
builds complete DSDT entry new in ControlSet001.

Without asl, the DSDT is not stored at all in ControlSet001,
DSDT is loaded each time on reboot new from Bios

Dietmar
#1462 diderius6 ⇗ @XPLAKE8175

acpi.sys from post 1326 should work,
this is a notebook with Intel chipset
Dietmar
#1463 daniel_k
Zitat von ⇗ diderius6 im Beitrag ¶ #1457
I just found, how the asl Tool works.
When you read the registry on running XP with ACPI out,
the values of the DSDT are NOT stored.
But when you upload DSDT with asl.exe
suddently is there a BIG set of data, all Hexvalues at the place from DSDT
Dietmar

EDIT: With asl the whole DSDT is blown up to a very big dataset at the same place,
where in working ACPI XP it stays.
It gets an extra start signature,
but then follows the normal "DSDT" signature
and it ends with the normal signature for dsdt.
And then follows in registry the entry for FACP, as normal.
...

Because in registry only ControlSet001 is stored, FACP is always stored normally,
but DSDT without asl is always loaded new via Bios.


May be adding the line in DSDT in registry
"Action"=dword:00000000
is enough and copy DSDT into ControlSet001


Dietmar


While I can't help you with this, isn't possible to export the ACPI tables created by the ASL tool then import them into SETUPREG.HIV, which is the default registry for Windows Setup?

This way could be possible to create a custom SETUPREG.HIV for every board.
#1464 daniel_k
Zitat von ⇗ cedar im Beitrag ¶ #1447
I tried all the usb 3.0 drivers from yours,diderius6,and canonkong.
So far no success on my Gigabyte B75 Ivy board. Some Host controllers
can be installed, but none of 3.0 hubs drivers can be installed.  


Have you had any successful USB3.0 XP installed on any other Intel board?


As older boards have no ACPI problems. Wouldn't it be more likely to be modded
successfully than present board?

Cedar


⇗ @cedar

What do you mean by "none of 3.0 hubs drivers can be installed"?

Isn't the root hub detected?

Or it is detected but won't work properly?
#1465 infuscomus ⇗ @daniel_k

if you have the time - can you figure out what causes code 39 error when using amdxhci driver for USB 3.0 in virtualbox?
#1466 cedar ⇗ @daniel_k

I didn't see any usb 3.0 root hub entry available after installing the 3.0 host controller. Only the default generic usb 2.0 hub is available. So I guessed at that point, I am stuck.

I ran the drivers without my hardware ID first. When they failed. I  added my Ivy HW ID as
an alternative test. But without any successes. If you are interested, I can test your drivers
again.

Cedar
#1467 daniel_k
Zitat von ⇗ cedar im Beitrag ¶ #1466
@daniel_k

I didn't see any usb 3.0 root hub entry available after installing the 3.0 host controller. Only the default generic usb 2.0 hub is available. So I guessed at that point, I am stuck.

I ran the drivers without my hardware ID first. When They failed. I  added my Ivy HW ID as
an alternative test. But without any successes. If you are interested, I can test your drivers
again.

Cedar  

The root hub is detected as an unknown device.

If the XHCI host controller is enabled succesfully, it immediately creates a child device.

Try to view the devices by connection and check if the host controller has a child device.
#1468 daniel_k
Zitat von ⇗ infuscomus im Beitrag ¶ #1465
@daniel_k

if you have the time - can you figure out what causes code 39 error when using amdxhci driver for USB 3.0 in virtualbox?

You must use the Renesas driver and am sure I've got it working.

Will try again later.
#1469 XPLAKE8175 #1326
#1470 diderius6 ⇗ @infuscomus
I think, the Renesas driver from post 1367
ist best
Dietmar

 

Page 99

#1471 infuscomus ⇗ @diderius6

I tried renesas driver you mentioned in virtualbox - code 39 again
#1472 cedar ⇗ @daniel_k

I retest AMDXHCI_FINAL_ from #1376 on XP32 on Ivy Mb with
my hardware IDs
%AMDXHC.DeviceDesc%   = AMDXHC,PCI\VEN_8086&DEV_1E26&SUBSYS_50061458&REV_04
%AMDXHC.DeviceDesc% = AMDXHC,PCI\VEN_8086&DEV_1E26&SUBSYS_50061458
%AMDXHC.DeviceDesc% = AMDXHC,PCI\VEN_8086&DEV_1E26&CC_0C0320
%AMDXHC.DeviceDesc% = AMDXHC,PCI\VEN_8086&DEV_1E26&CC_0C03
%AMDXHC.DeviceDesc% = AMDXHC,PCI\VEN_8086&DEV_1E2D&SUBSYS_50061458&REV_04
%AMDXHC.DeviceDesc% = AMDXHC,PCI\VEN_8086&DEV_1E2D&SUBSYS_50061458
%AMDXHC.DeviceDesc% = AMDXHC,PCI\VEN_8086&DEV_1E2D&CC_0C0320
%AMDXHC.DeviceDesc% = AMDXHC,PCI\VEN_8086&DEV_1E2D&CC_0C03 ; my tests

All instant reboots after installing the host controller with or without my HW IDs.
I did remember some host controller drivers can be installed a few days ago.
The TI Host controller can definitely installed.

I will try the XP64 versions soon.

Cedar
#1473 daniel_k
Zitat von ⇗ cedar im Beitrag ¶ #1472
@daniel_k

I retest AMDXHCI_FINAL_ from #1376 on XP32 on Ivy Mb with
my hardware IDs
%AMDXHC.DeviceDesc%   = AMDXHC,PCI\VEN_8086&DEV_1E26&SUBSYS_50061458&REV_04
%AMDXHC.DeviceDesc% = AMDXHC,PCI\VEN_8086&DEV_1E26&SUBSYS_50061458
%AMDXHC.DeviceDesc% = AMDXHC,PCI\VEN_8086&DEV_1E26&CC_0C0320
%AMDXHC.DeviceDesc% = AMDXHC,PCI\VEN_8086&DEV_1E26&CC_0C03
%AMDXHC.DeviceDesc% = AMDXHC,PCI\VEN_8086&DEV_1E2D&SUBSYS_50061458&REV_04
%AMDXHC.DeviceDesc% = AMDXHC,PCI\VEN_8086&DEV_1E2D&SUBSYS_50061458
%AMDXHC.DeviceDesc% = AMDXHC,PCI\VEN_8086&DEV_1E2D&CC_0C0320
%AMDXHC.DeviceDesc% = AMDXHC,PCI\VEN_8086&DEV_1E2D&CC_0C03 ; my tests

All instant reboots after installing the host controller with or without my HW IDs.
I did remember some host controller drivers can be installed a few days ago.
The TI Host controller can definitely installed.

I will try the XP64 versions soon.

Cedar



The BIOS is not properly configured for USB 3.0.

Those device IDs are USB 2.0 controllers (CC_0C0320).

You need to set xHCI Mode to Enabled and HS Port #1 Switchable~HS Port #4 Switchable to Disabled.
#1474 cedar ⇗ @daniel_k

Ok. the test was on AMDXHC,PCI\VEN_8086&DEV_1E26&SUBSYS_50061458&REV_04,
as it was the 1st top entry chosen during installation. I didn't pick
CC_0C03 specificly.  "my tests" was there to remind myself I tested the driver.

I will delete all (CC_0C0320)s entries. I believe my Bios was with xHCI enabled.
But I will recheck to confirm.

Cedar
#1475 daniel_k The device ID of the Intel USB 3.0 controller should be the following:

PCI\VEN_8086&DEV_1E31&SUBSYS_50071458
PCI\VEN_8086&DEV_1E31&CC_0C0330

Unless you are using PS/2 keyboard or mouse, your input device will be unavailable until a proper driver is installed.
#1476 diderius6 I understand a little bit more, how the asl Tool works.
In registry HKLM\services the acpi.sys driver is called. Normally, acpi.sys fetch its data from DSDT from Bios.
May be, this happens just now also and only later it should be overwritten with the DSDT values in "parameters".
Then the call from the DSDT table from Bios gives BSOD A5, before it can be overridden by the "parameters".
The asl.exe Tool writes after loadtable the data of DSDT in its "parameters"
for next boot. There, "new DSDT" stays.
The size of the ACPI "parameters" there is enourmous, but it is just the dsdt.aml with very small changes.
It is splitted in 19 entries whereas its  counterpart in HKLM\hardware\acpi\dsdt is not splitted

Dietmar

PS: Interesting, how "MPS" XP can read the DSDT, because it has no acpi.sys.

EDIT: May be, the asl.exe tool cant work together with  If (OSYS >= 0x07D6)
#1477 XPLAKE8175 you have to download ahci drivers or switch sata mode to ide (if it is available).
#1478 cedar ⇗ @daniel_k

I disable the 4 switchable in bios and delete VEN_8086&DEV_1E26&CC_0C0320.
The XP32 still instantly reboot, without install anything upon
reboot.

But the XP64 version is better. I can install the host controller, and
install the 3.0 hub. This time the unknown hub 3.0 appear and can also
installed but with code 10.


Edit: I will retest 32 bits with
PCI\VEN_8086&DEV_1E31&SUBSYS_50071458
PCI\VEN_8086&DEV_1E31&CC_0C0330

Cedar
#1479 XPLives ⇗ @diderius6

Zitat von ⇗ diderius6 im Beitrag ¶ #1443
@daniel_k

I have not tried sleeping mode on XP,
because also on chipsets before Skylake it was faulty.
On the evga z390 dark board they make a Bios for real XP.
It is version 0.92 and there you may find some intuition
for to change Acpi tables. It is not on their Website,
so I put it here.
This board I use for generic XP install, really best.
Have you an idea, how to overcome for your new driver
the sleeping code 10 in DSDT table in
Method (_PS0, 0, Serialized)  // _PS0: Power State 0

@XPLives is right, that Bios mod of DSDT is nothing for "normal" people.
But I think, this mod can make like generic
Dietmar

Edit: Funny, I wrote this few mins ago.
The Bios 0.92 for XP on z390 is too big for to upload here,
so I give you the link, it is on top of this website

⇗ https://forums.evga.com/EVGA-Z390-DARK-O...T-m2930290.aspx





When XP is installed in MPS, NO ACPI, which file is loaded instead of ACPI.SYS?

Is there a way to take the code for shutdown you fixed in ACPI.SYS and add as a registry fix or patch alternate file XP uses for NO ACPI mode?

This is still useful for F7 test on Intel even without hyperthreading but all cores will show up.  AMD AM4 can only use Standard PC unicore so alas. :(
#1480 XPLives ⇗ @XPLAKE8175

Zitat von ⇗ XPLAKE8175 im Beitrag ¶ #1460
I'm getting A5 ACPI error on my ASUS k555lb laptop. I don't want to install XP without ACPI. Which is the latest version of XP ACPI compliant for my laptop K555LB?


Since you have a Kaby Lake laptop this is interesting to test for compatibility.

Can you still do F7 NO ACPI XP install on it to completion to GUI setup mode or all the way to first desktop screen?

Is CSM mode still intact?
#1481 XPLAKE8175 I have got Broadwell Laptop
#1482 XPLives ⇗ @XPLAKE8175

Zitat von ⇗ XPLAKE8175 im Beitrag ¶ #1481
I have got Broadwell Laptop


Broadwell laptop should install with ACPI normally since Haswell laptop should work.

Are you getting BSOD A5 issue on it?

Try F7 NO ACPI install method and see if it finishes to desktop.  The USB 2.0 ports on it should work for USB mouse/keyboard.

Check the Task Manager and you should see all cores working just no hyperthreading.
#1483 XPLAKE8175 Yes I'm still getting ACPI error on my K555LB. My BIOS version is 605 which is the latest version.
#1484 XPLAKE8175 I don't want to install Windows XP without ACPI because my integrated keyboard does not work, I can't see my battery life and I can't shutdown without holding power button.
#1485 XPLives ⇗ @XPLAKE8175

Zitat von ⇗ XPLAKE8175 im Beitrag ¶ #1483
Yes I'm still getting ACPI error on my K555LB. My BIOS version is 605 which is the latest version.


Then it's possible Haswell laptops will have the same issue since they should be the same.

Haswell/Broadwell desktops are the last fully XP ACPI compliant then it seems for fresh install and Ivy Bridge laptop the last generation.

For now then try the F7 NO ACPI install method and see if it finishes to desktop. The USB 2.0 ports on it should work for USB mouse/keyboard.

Check the Task Manager and you should see all cores working just no hyperthreading.

Which CPU is installed in your laptop?  How many memory slots does it have?

 

Page 100

#1486 XPLAKE8175 My CPU is Intel Core i5 5200u and I have two memory slots and total of 8 gb of ram.
#1487 diderius6 ⇗ @XPLAKE8175

Make a photo or describe all the exact numbers
of your BSOD

Dietmar
#1488 XPLives ⇗ @XPLAKE8175

Zitat von ⇗ XPLAKE8175 im Beitrag ¶ #1484
I don't want to install Windows XP without ACPI because my integrated keyboard does not work, I can't see my battery life and I can't shutdown without holding power button.


If you don't even attempt the F7 NO ACPI install you will never know if the USB 2.0 ports on it will even work so the internal keyboard will not work either even with ACPI since it's hooked into the USB ports and if it's connected to the USB 3.0 ports then it will not work.  But if your laptop has USB 2.0 ports then you have a chance to use external USB mouse/keyboard combo.  Also I use Das Keyboard instead of the laptop keyboard.  Laptop keyboards have a very lousy orientation sometimes hitting the wrong key due to non standard layouts when they swap the keys with others you are not used to compared to standard 101 enhanced.

Aside from that you will still have to deal with the laggy MS VGA standard driver as there are no working Intel HD Graphics XP drivers for laptops past Ivy Bridge.  So no 3D gaming in XP will be possible.  Internet surfing might be possible if you have XP drivers for the WIFI or a removable one to swap.

What are your Wired Ethernet and Wireless WIFI devices called in Device Manager?

Can you copy the Hardware IDs of both including the Compatible IDs, and Matching IDs and paste here?

Also which onboard Audio is it?  Include the Hardware IDs of both including the Compatible IDs, and Matching ID.

It might be possible to get some multimedia usage out of it for internet only if you really want to use XP on a Broadwell laptop.
#1489 XPLAKE8175 I don't want to use my laptop without acpi. I want using with acpi.
#1490 infuscomus ⇗ @XPLAKE8175

you should first install XP without ACPI for testing purposes

once that works you can re-enable ACPI with another XP install later
#1491 XPLAKE8175 I don't want to test
#1492 infuscomus ⇗ @XPLAKE8175

If you are not willing to test then there is no way we can help you
#1493 XPLAKE8175 I don't want to get help from you.
#1494 XPLives ⇗ @XPLAKE8175

Zitat von ⇗ XPLAKE8175 im Beitrag ¶ #1491
I don't want to test


If you don't test you will never find out if it works.  Like I said your first complaint is you want to use the internal keyboard.  But if you don't do the F7 NO ACPI test you will not find out whether or not the internal keyboard is tied to the USB 2.0 or USB 3.0 ports.  If it's tied to the USB 3.0 ports then even with ACPI you are screwed and cannot use the internal keyboard.

I hope you understand this reasoning.   Also applying the diderius6 patch requires using a FAT32 partition because you will have to copy the acpi.sys file a few times after each reboot or it will BSOD A5 and you will think it doesn't work.

Also without knowing whether you have USB 2.0 ports that can work with a USB floppy drive or USB flash drive with MSDOS 7.1 you cannot do the acpi.sys overwrite manually.  If your USB 3.0 ports can do xHCI hand off and operate as USB 2.0 eHCI then you are in luck.

Unfortunately since I do not own any laptop beyond Ivy Bridge I cannot tell you whether yours has real USB 2.0 ports or USB 3.0 ports or if your USB 3.0 ports can act as USB 2.0 ports.

Infuscomus is correct that you need to do the F7 NO ACPI test to see if you can even get a working desktop screen and use the internal keyboard or external USB mouse.  If you can't then it doesn't matter whether it's ACPI or not.  Also if you are worried about laptop battery life there is no guarantee even diderius6 acpi.sys can handle sleep mode or stand by mode on laptops.  I think it doesn't work on desktops at the moment but I have not tested. Shutdown does work on desktops so I assume it will also work on laptops.

One final thing if you ever get this far to do the F7 NO ACPI test.  I can show you how to install 32GB of RAM on the laptop.   It might even be possible to use 28GB-29GB as a large Ramdrive on a Broadwell laptop in XP.
#1495 diderius6 ⇗ @XPLives
"Also applying the diderius6 patch requires using a FAT32 partition because you will have to copy the acpi.sys file a few times after each reboot or it will BSOD A5 and you will think it doesn't work."

When you use RMPrepUSB v2.1.739 version and you format your harddisk in an ICY USB box,
you can format it with NTFS. With this nice tool, you can also change after its formatting files as much as you want in Vista, Win7..
Dietmar
#1496 daniel_k
Zitat von ⇗ infuscomus im Beitrag ¶ #1471
@diderius6

I tried renesas driver you mentioned in virtualbox - code 39 again

#1497 XPLives
Zitat von ⇗ diderius6 im Beitrag ¶ #1495
@XPLives
"Also applying the diderius6 patch requires using a FAT32 partition because you will have to copy the acpi.sys file a few times after each reboot or it will BSOD A5 and you will think it doesn't work."

When you use RMPrepUSB v2.1.739 version and you format your harddisk in an ICY USB box,
you can format it with NTFS. With this nice tool, you can also change after its formatting files as much as you want in Vista, Win7..
Dietmar




I like XP on FAT32. :) Easier to do hack tests or use with 98SE to exchange files.  I used the built in 98SE DOS to go to prompt so no need for USB floppy.  Then modify XP files as needed.
NTFS I only use for large video files.  But NTFS only required for Vista+ which is a shame.  Would be nice to install Vista or W7 clean onto FAT32 partition.
#1498 daniel_k ⇗ @diderius6

Forgot to tell you,

I've managed to patch the DSDT of my Z370 to be fully compatible with XP. No patched ACPI.SYS here.

Do you have any interest?

I can patch the DSDT table of your board if you want, there are several changes to explain here, nothing to do with the eVGA's Z390 XP BIOS.
#1499 diderius6 ⇗ @daniel_k

Of course I want to know.
I also think, that it is very interesting here for a lot of people.

I hope, that you have time and mood to write a Tutorial,

Dietmar

PS: I succeed to mod the Bios of my Asus Apex X board. Now I have really full USB support!
#1500 diderius6 ⇗ @XPLives

Long time ago I wrote Tutorial how to install Vista
on Fat32 partition

Dietmar

⇗ https://msfn.org/board/topic/102556-how-...at32-partition/

 

Page 101

#1501 diderius6 The flash of the modded Bios for the Asus Apex X was not easy.
I downloaded from webside the Bios version 1704,
which works also for the 9900k, despite Asus tells there.
I delete with UEFI-Tool the Cap of this Bios.
Then with Uefi-tool I changed dsdt against my modded one.
But when I try to flash this Bios with Intel flash tool

FPTw.exe -bios -f modbiosfilenamehere.bin

it tells me, that it is not allowed^^ to flash this Bios.

Ok, I try direct Bios flashback on this nice board,
renaming my Bios file to the wished M10A.CAP name.
Does not work.
Then I use the original Bios 1704 from Asus website and change there with Uefi-tool
the DSDT to my modded one.
This time, I do not touch the CAP header of this crazy Bios.
Then I make a new try for to flash via Bios flashback, compi
is not on, only power is connected.
This time it works
Dietmar

PS: As you can see, now ALL USB ports work on this board.
And pur USB boot from XP SP3 works on the Asus Apex X now for the very first time!

#1502 cedar ⇗ @daniel_k

I absolutely thrilled if you can patch my Asus Prime B350 Plus
of its the DSDT to be fully compatible with XP. Or my
Gigabyte Ivy D3-P75 to use usb 3.0. I have lot of problems install
XP on my Asus Prime B350. Although win2003 works.

That would be great news for many users.

If patched, since it does not need acpi.sys. Can XP64 be installed
as well?.

Cedar
#1503 XPLives ⇗ @diderius6

Zitat von ⇗ diderius6 im Beitrag ¶ #1500
@XPLives

Long time ago I wrote Tutorial how to install Vista
on Fat32 partition

Dietmar

⇗ https://msfn.org/board/topic/102556-how-...at32-partition/


Ah... I was hoping you found a new way to install from scratch directly to FAT32 from optical disc install.

Your method involves copying files after installation from NTFS partition.

If you can use a NTFS to FAT32 partition conversion program that would probably do the same?

But still nice that Vista can work on FAT32 after all that work as it should and Windows 7 should as well.

Now how to force NTFS check to be disabled for Vista / Windows 7 fresh optical disc installation from the beginning?

Even XP POS 2009 forces NTFS installation partition and no longer supports installation to FAT32 and forces to partition 1 so you can't install multiple times to different partitions like XP.
#1504 XPLives ⇗ @diderius6

Zitat von ⇗ diderius6 im Beitrag ¶ #1499
@daniel_k

Of course I want to know.
I also think, that it is very interesting here for a lot of people.

I hope, that you have time and mood to write a Tutorial,

Dietmar

PS: I succeed to mod the Bios of my Asus Apex X board. Now I have really full USB support!


Using your modified BIOS for USB 3.0 can you test if you install XP in MPS Mode or Standard PC (NO ACPI) without using your acpi.sys does the USB 3.0 still function correctly?
#1505 daniel_k ⇗ @diderius6

Take a look at the tables.

Included is the table of BIOS 4.00, I've already modded it before I realized you were on BIOS 3.20.



daniel_k has attached files to this post
#1506 diderius6 ⇗ @XPLives

"Using your modified BIOS for USB 3.0 can you test if you install XP in MPS Mode or Standard PC (NO ACPI) without using your acpi.sys does the USB 3.0 still function correctly?"

Yes, I just test this. It works in "MPS" and in "ACPI Multiprocessor" mode of XP SP3 also on the Apex X board.

Dietmar
#1507 cedar ⇗ @diderius6

Could you please test Xp64 as well?
Edit: Nevermind. I was having too much hopes.

Cedar
#1508 daniel_k ⇗ @diderius6

Here is the DSDT table of your ROG MAXIMUS X APEX 1704.

Interesting, the ASUS BIOS is almost 100% XP compatible. Check it out.



daniel_k has attached files to this post
#1509 daniel_k
Zitat von ⇗ cedar im Beitrag ¶ #1502
@daniel_k

I absolutely thrilled if you can patch my Asus Prime B350 Plus
of its the DSDT to be fully compatible with XP. Or my
Gigabyte Ivy D3-P75 to use usb 3.0. I have lot of problems install
XP on my Asus Prime B350. Although win2003 works.

That would be great news for many users.

If patched, since it does not need acpi.sys. Can XP64 be installed
as well?.

Cedar


Ryzen has other issues, don't think we can simply patch the ACPI table.
#1510 diderius6 ⇗ @daniel_k

"Here is the DSDT table of your ROG MAXIMUS X APEX 1704.

Interesting, the ASUS BIOS is almost 100% XP compatible. Check it out."

Yes, I know this. The board Apex IX before was full XP compatibel from beginning.
And the acpi.sys from Vista-Longhorn 5048 works on  ROG MAXIMUS X APEX 1704 without any mod.
But on direct install with normal Acpi.sys from XP I get BSOD A5 (0x11,..)
so I have until now to use my modded acpi.sys from december 2018
Dietmar

PS: So, for me it is very strange, why the asl Tool shows BSOD A5 on this board.
#1511 asasin hello again
Would you advise something on the main board asus h110m-a / m.2?
I still have the same problem with usb.
#1512 cedar ⇗ @daniel_k

So even the bios modded could not save XP64!. What is the difference between
⇗ @diderius6 's Acpi.sys modded and the Bios modded?

Cedar
#1513 diderius6 ⇗ @daniel_k

How can you fix so quick a DSDT table?
I need for this whole day..

By the way: For you, to make your life easier,
update the iasl tool.

*     Compiler Version 0x20160422 (538313762)

The messages about unknown dependencies are complete gone
with newer version
Dietmar

PS: And thank you a lot!

EDIT: I just notice, that XP support for this iasl.exe is gone.
So I add the last version from iasl.exe, which supports XP.



diderius6 has attached files to this post
#1514 daniel_k
Zitat von ⇗ diderius6 im Beitrag ¶ #1513
@daniel_k
By the way: For you, to make your life easier,
update the iasl tool.

*     Compiler Version 0x20160422 (538313762)

The messages about unknown dependencies are complete gone
with newer version


Thanks.

I know that IASL is updated frequently.

For compatibility reasons, I usually like to compile the table with the same version used to build the original, as you should know, the BIOS updates certain variables in the ACPI tables.
#1515 XPLives ⇗ @diderius6

Zitat von ⇗ diderius6 im Beitrag ¶ #1510
@daniel_k

"Here is the DSDT table of your ROG MAXIMUS X APEX 1704.

Interesting, the ASUS BIOS is almost 100% XP compatible. Check it out."

Yes, I know this. The board Apex IX before was full XP compatibel from beginning.
And the acpi.sys from Vista-Longhorn 5048 works on  ROG MAXIMUS X APEX 1704 without any mod.
But on direct install with normal Acpi.sys from XP I get BSOD A5 (0x11,..)
so I have until now to use my modded acpi.sys from december 2018
Dietmar

PS: So, for me it is very strange, why the asl Tool shows BSOD A5 on this board.


How do you create your modded acpi.sys?

Are you using XP's acpi.sys original file and hex mod?

Can you use Windows 2000's acpi.sys file instead for full forward compatibility will all NT5.X versions?

If not I will help to remake from scratch if I know how you did the XP version.

Also need to disable or reassign default IRQs for devices detected.  Any ideas to free IRQ6 from FDC?

 

Page 102

#1516 XPLAKE8175 But Vista does not get this A5 error message.
#1517 XPLAKE8175 My laptop is ASUS too and why I'm getting A5 error on Windows XP but not Vista.
#1518 XPLAKE8175 How did you get ACPI on the Latest Gen i9?
#1519 infuscomus ⇗ @diderius6

that HWID PCI\VEN_1912&DEV_0014 doesn't match the HWID I get in virtualbox - I get PCI\VEN_8086&DEV_1E31
#1520 infuscomus
Zitat von ⇗ XPLives im Beitrag ¶ #1515
Are you using XP's acpi.sys original file and hex mod?

Can you use Windows 2000's acpi.sys file instead for full forward compatibility will all NT5.X versions?


⇗ @XPLives

We used acpi.sys of Vista beta 5048 because it includes new acpi words like CreateQWordField that are not present in 2000/XP acpi.sys
#1521 XPLAKE8175 OK, I will try adding the new acpi words to XP x86 and x64 acpi from Vista x86 and Vista x64. Vista ACPI works on my broadwell laptop.
#1522 XPLAKE8175 It finishes to desktop without errors with MPS multiprocessor.
#1523 XPLAKE8175 I can disable XHCI preboot mode from bios without bricking BIOS and I can enable Launch CSM setting from BIOS.
#1524 XPLAKE8175 How can I patch my DSDT table on my ASUS k555lb laptop without bricking my bios?
#1525 diderius6 ⇗ @XPLAKE8175

There is still a risk, even when you have flashed 100 Bios.
When you have no experience with Bios mod
it is a big risk and I would do NOT!

Dietmar
#1526 diderius6 ⇗ @daniel_k

I just install your nice USB driver without any Bios mod
on the EVGA z390 dark board.
This is only possible, because its Bios does
not contain the Device (xhc).

Oho, there is a motherboard manufactor with Intel chipset,
who is not slave of Intel

Dietmar

PS: And for the very first time I can boot XP direct from USB on this nice EVGA z390 dark board !



diderius6 has attached files to this post
#1527 XPLAKE8175 OK, I will install with your acpi.sys
#1528 diderius6 ⇗ @infuscomus

"that HWID PCI\VEN_1912&DEV_0014 doesn't match the HWID I get in virtualbox - I get PCI\VEN_8086&DEV_1E31"


There are some synonyme in VEN_&DEV_ for an absolut identic device
Dietmar
#1529 diderius6 Crazy, even the EVGA z390 dark board crashes with BSOD A5
when I upload via asl.exe its own DSDT.
So, this tool has a major problem with ACPI on newer boards

Dietmar
#1530 infuscomus ⇗ @diderius6

even if the device is a synonym - I still get code 39





 

Page 103

#1531 XPLAKE8175 ⇗ @diderius6
Can I test your modded acpi.sys on my asus k555lb i5 5200u laptop? If it works, may your acpi.sys brick my bios? If I still get ACPI A5 error, I'll send you an error message with error image and error description. I know laptop bios is more vulnerable to brick than desktop bios.
#1532 diderius6 ⇗ @infuscomus

This is not the Renesas driver from my post 1367

Dietmar

PS: You can try a change by hand in xhci.inf
to
%PCI\VEN_1912&DEV_0014&REV_01.DeviceDesc% = RUSB3XHC, PCI\CC_0C03
#1533 diderius6 ⇗ @XPLAKE8175

No, the modded acpi.sys does nothing with Bios.
This was the reason, why we make it
Dietmar

PS: When you get BSOD A5
you can try this acpi.sys. This was my first from December 2018.



diderius6 has attached files to this post
#1534 XPLAKE8175 OK, I will try.
#1535 infuscomus ⇗ @diderius6

yes, i have tried the renesas driver, as well as VIA, Etron, TI, and AMD

I have also tried that INF mod

all give code 39 in virtualbox 5.2 (last 32bit version)

I will boot into 64bit windows to install 6.0 64bit and see if that works
#1536 daniel_k
Zitat von ⇗ diderius6 im Beitrag ¶ #1526
@daniel_k

I just install your nice USB driver without any Bios mod
on the EVGA z390 dark board.
This is only possible, because its Bios does
not contain the Device (xhc).

Oho, there is a motherboard manufactor with Intel chipset,
who is not slave of Intel

Dietmar

PS: And for the very first time I can boot XP direct from USB on this nice EVGA z390 dark board !


Can you try 2 things for me please?

- Renesas driver, if it has the same device detection issue or works fine with the proper eVGA XP BIOS.

- Standby/sleep works maybe or even hibernation, I'm really curious about them.
#1537 daniel_k
Zitat von ⇗ infuscomus im Beitrag ¶ #1535
@diderius6

yes, i have tried the renesas driver, as well as VIA, Etron, TI, and AMD

I have also tried that INF mod

all give code 39 in virtualbox 5.2 (last 32bit version)

I will boot into 64bit windows to install 6.0 64bit and see if that works

Here I'm running VirtualBox 6.0.10, maybe this is the reason it works fine?
#1538 canonkong ⇗ @daniel_k
Most modify usb driver can use on VM, but real machine can not.
#1539 infuscomus ⇗ @daniel_k ⇗ @diderius6

So I upgraded virtualbox to 6.0

I still get code 39

maybe it's because my host machine is AMD ryzen?
#1540 diderius6 ⇗ @daniel_k

I succeed to start the Renesas USB3 driver on the EVGA board, but behavior is exact like before.
You have to deinstall the xhci.sys driver and in about each 3. attempt you succeed that all the other Hubs are loaded
and the USB devices can be used. If the other Hubs are not loaded, the message "unknown device" appears for each USB device. The same is true for reboot, no USB device starts.
On the Asrock k6 board I succeeded with the Renesas driver in full ACPI, that after reboot the USB devices are correct recogniced
but this was unstable.

Sleeping or Hibernation does not work. XP starts with this, the monitor and harddisk went off.
But then a message appears, that the driver for Acpi sleeping does not work correct and XP starts at once to active mode again

Dietmar

PS: In Hibernation, the compi went down (shuts not complete off), but does not awake again .
#1541 diderius6 ⇗ @infuscomus
What happens,
when you use the driver from post 1095
Dietmar
#1542 daniel_k
Zitat von ⇗ infuscomus im Beitrag ¶ #1539
@daniel_k @diderius6

So I upgraded virtualbox to 6.0

I still get code 39

maybe it's because my host machine is AMD ryzen?

Possibly yes.

Don't you have an Intel based system to try it?
#1543 infuscomus ⇗ @diderius6

using driver from post 1095, the controller start
but hub fails with code 39
#1544 daniel_k
Zitat von ⇗ diderius6 im Beitrag ¶ #1540
@daniel_k

I succeed to start the Renesas USB3 driver on the EVGA board, but behavior is exact like before.
You have to deinstall the xhci.sys driver and in about each 3. attempt you succeed that all the other Hubs are loaded
and the USB devices can be used. If the other Hubs are not loaded, the message "unknown device" appears for each USB device. The same is true for reboot, no USB device starts.
On the Asrock k6 board I succeeded with the Renesas driver in full ACPI, that after reboot the USB devices are correct recogniced
but this was unstable.

Sleeping or Hibernation does not work. XP starts with this, the monitor and harddisk went off.
But then a message appears, that the driver for Acpi sleeping does not work correct and XP starts at once to active mode again

Dietmar

PS: In Hibernation, the compi went down (shuts not complete off), but does not awake again .

Thanks for trying.

That's a pity it doesn't work.

At least I'm not missing anything.
#1545 infuscomus
Zitat von ⇗ daniel_k im Beitrag ¶ #1542
Possibly yes.

Don't you have an Intel based system to try it?


⇗ @daniel_k

I have an older Z97 system i'm not using at the moment, i'll have to setup XP on it

which driver should I test on it first?

 

Page 104

#1546 daniel_k
Zitat von ⇗ infuscomus im Beitrag ¶ #1545
Zitat von ⇗ daniel_k im Beitrag ¶ #1542
Possibly yes.

Don't you have an Intel based system to try it?


@daniel_k

I have an older Z97 system i'm not using at the moment, i'll have to setup XP on it

which driver should I test on it first?

If there is an OS installed and running fine, try VirtualBox with the oficial Renesas driver.

Otherwise, install XP as usual before messing with USB 3.0 drivers.
#1547 cedar ⇗ @infuscomus

As I tried daniel_k AMD-final driver again today on 64 bit XP.
I did get code 39.  It was tried on my Ivy board.  I also got
code 10 on usb3 root hub and code 28 on controller upon reboots at different time.

It was all tested on real XP64. The 32bit ver. did not installed
at all. We still have a long way to go.

Cedar
#1548 asasin How does the "xhci hand-off" option work in bios?
I made a flash bios to an earlier version and this option appeared to me.
My tests have shown that changing this option does nothing.
Any ideas?
#1549 infuscomus ⇗ @diderius6 ⇗ @daniel_k

I tried virtualbox 6.0 on my intel system, same result as before - code 39 (either on the controller, or the hub, depending on the driver)

I'll install XP natively andd see what result I get
#1550 daniel_k
Zitat von ⇗ infuscomus im Beitrag ¶ #1549
@diderius6 @daniel_k

I tried virtualbox 6.0 on my intel system, same result as before - code 39 (either on the controller, or the hub, depending on the driver)

I'll install XP natively andd see what result I get

Did you follow the instructions outlined in the VB's forum?
⇗ https://forums.virtualbox.org/viewtopic.php?f=28&t=74575
#1551 infuscomus
Zitat von ⇗ daniel_k im Beitrag ¶ #1550
Did you follow the instructions outlined in the VB's forum?⇗ https://forums.virtualbox.org/viewtopic.php?f=28&t=74575


⇗ @daniel_k

Thanks, I actually didn't know about this - I thought the emulated intel USB 3.0 was the only option.

So this changes the emulated USB 3.0 controller from an intel to a Renesas?
#1552 diderius6 I changed GbE region in Bios in the Asus Apex X board with Lan i219-V
against the GbE region in Bios from Asus Z87I-PRO with Lan i217-V with the Uefi-tool.
But nothing changed. The Lan is still shown as VEN_8086&DEV_15B8
which is i219-V as before
Dietmar

PS: May be, here is a fundamental missunderstanding.
When I change in the *.inf file against the one for i217-V
I get code 10, exact as before.
And Win7 32 bit starts happy again with its i219-V driver for VEN_8086&DEV_15B8.
#1553 daniel_k ⇗ @infuscomus, yes it changes the chipset emulated to a Renesas one.

After trying this, if possible, would be great if you could test any of the USB3 drivers and see if it Works with your Z97 board.
#1554 daniel_k
Zitat von ⇗ diderius6 im Beitrag ¶ #1552
I changed GbE region in Bios in the Asus Apex X board with Lan i219-V
against the GbE region in Bios from Asus Z87I-PRO with Lan i217-V with the Uefi-tool.
But nothing changed. The Lan is still shown as VEN_8086&DEV_15B8
which is i219-V as before
Dietmar

PS: May be, here is a fundamental missunderstanding.
When I change in the *.inf file against the one for i217-V
I get code 10, exact as before.
And Win7 32 bit starts happy again with its i219-V driver for VEN_8086&DEV_15B8.

Try this.
#1555 diderius6 ⇗ @daniel_k

Gives also code 10. What did you change and
do you think, there is any chance to mod this?
Do you know something about GbE region?
I tried also the UBU tool UBU_v1_74_0_3
but no information which can help there
Dietmar

PS: The output from the UBU tool before mod and after
is to 100% identic.

Comparing the both Bios (Original 1704 and after Mod 1704) shows with Beyondcompare 2 (minimal) differences,
very first in the beginning. The rest of the Bios are complete identic.

This code 10 remembers me a lot at code 10 for USB3 before^^.
May be, Intel set this device also to sleep in Bios via 64 bit entries for variables.
Do you know the name of the lan Device () in DSDT?
#1556 diderius6 ⇗ @daniel_k

For to test my idea,
I just boot Apex X in "MPS" mode.
Oha, suddently the network i219-v is recogniced as i217-v version 2, installs correct,
but on reboot again code 10.
So, the Bios mod changed something into the right direction, question is about this version 2
Dietmar

Edit: I just see with Ida Pro, that beside *.inf mod you also changed the ID number in e1d5132.sys.
But in the original file, the ID 1559h appears at 3 places,
and you changed only one place.

EDIT2: I change ID     

1559h => 15B8h

with Winhex at all its three places in e1d5132.sys.
But this does not help, still code 10.

When I delete this lan driver in device manager,
now always comes the message, that a new device is found
i217-V, its crazy.



diderius6 has attached files to this post
#1557 canonkong ⇗ @diderius6
Replace GBE, you need to flash the bios with flashback or flash burner. Another is you can compare 219-V GBE and 217-V GBE, find the difference and modify the 219-V GBE.
#1558 diderius6 ⇗ @canonkong

"Replace GBE, you need to flash the bios with flashback"

I used the Bios flashback on the Asus Apex X board. Do you mean a special program
and why you need this. And how can I compare this 2 files? I put them here,
Dietmar

EDIT: Is it because normally only the Bios-region is flashed?
But the downloaded Bios file from Website contain its own correct GbE?

EDIT2: Now I think, my GbE files are just nearly empty, right?
I have to use the whole Bios content from both compi, extract its GbE and then
change? This would mean, I need another real Compi or full Bios with i217-V in its Bios.



diderius6 has attached files to this post
#1559 canonkong ⇗ @diderius6
219-v: F4 18 00 0A 43 08 13 01 B7 15 AD BA B7 15 B8 15 is dev id 15B7
217-v: F4 18 00 0A 43 08 13 01 3B 15 AD BA 3B 15 3B 15 is dev id 153B
What happen you replace the 217 GBE?
POST your need bios and a bios has a 217-V/LM from the same brand. I help you to modify it.
#1560 diderius6 ⇗ @canonkong

Thanks a lot:))!

When I change this 2 Hexvalues in my own 219-v GbE
and load it up again to my own Bios with Uefi-Tool,
than it is flashed to compi with normal Bios Flashback?

Interesting, what happend, because I changed whole GbE with i219 against Gbe with i217 on my Asus Apex X Bios
Dietmar

PS: I still do not understand this procedure: I just see, that those ID appear more than one time in this Hexvalues.
Which of them is the correct one? Have I to change them all?

Or is it only one time direct after the Hexvalues 13 01?

 

Page 105

#1561 canonkong ⇗ @diderius6
Flash it.
⇗ https://yadi.sk/d/KFetwSwt-_mSGw
#1562 diderius6 ⇗ @canonkong

Thank you. But it looks not as easy.
45 regions are different in this 2 Bios files.
Because I have 1704 Bios version, which is even modded with DSDT table for Intel USB,
I need to understand, how this works
Dietmar
#1563 canonkong @ diderius6
217/218/129 series of network cards are incomplete, just a PHY, you can regard GBE as the firmware of this PHY, replacing GBE is like replacing the firmware of network cards.
Device ID and MAC address are determined by GBE.
#1564 diderius6 ⇗ @canonkong

This is a very good explanation from you!

I just extracted the GBE from those 2 Bios files, that you send to me.
They are 100% identic to my 2 GBE files.
So, why does it not work for me?
When I flash this Bios, is the GBE also flashed or only the Bios region
Dietmar

PS: When the GBE region would be also flashed, my Mac etc. would be gone.
#1565 canonkong @ diderius6
GBE is similar to ME and has high permissions. Generally, a burner is needed to burn BIOS.
#1566 diderius6 ⇗ @canonkong

Ok, this I understand. I have good Eprom flasher.
So, when I want to keep all my informations as Mac etc.
is there a way just to change the needed values for to go from i219 => i217 ?

Or is the rest really like firmware, so I have to burn the whole package at once?
And then later put my Mac etc. back into Bios by hand?

Dietmar

PS: By the way, now I understand what happens during my Bios flash.
The whole GBE region is complete ignored from compis Biosflashback, it copied only the Bios-region,
so I just changed to an 100% identic Bios.
#1567 canonkong ⇗ @diderius6
Yse, use HxD open GBE, the first line 88 88 88..., use MAC replace it and save.
#1568 diderius6 ⇗ @canonkong

Thanks a lot, I understand everything.

I do not know anybody, who succeeds to change his 219-V => 217-V.

But always somebody will do it first,

why not me

Dietmar

PS: The funny thing in this is, I have the mainboard ASUS Z87I-Pro with whole Bios with i217-V.
So a make a try, to understand which parts are really needed to be copied, away from Uefi-tool.
#1569 daniel_k ⇗ @diderius6

In DSDT, the LAN is Device (GLAN).

About the driver, many Intel devices are identical, just different IDs.

For each "group" of devices, there are 2 sets of "presets".

Open e1d6232_Win7.sys and search for B8 15 (15B8), you'll find:

 
00430451: 3DB8150000      cmp   eax,0000015B8
00430456: 7F6D jg 0004304C5 -> JUMP IF GREATER THAN 15B8
00430456: 3DB7150000 cmp eax,0000015B7
00430456: 7D3A jge 000430499 -> JUMP IF GREATER OR EQUAL (15B7/15B8)
...
00430499: C7819C0000000C000000 mov d,[ecx][00000009C],00000000C -> PRESET ID
004304A3: E91CFEFFFF jmp 0004302C4



 
0043DD98: 3DB8150000     cmp   eax,0000015B8
0043DD9D: 7F23 jg 00043DDC2
0043DD9F: 3DB7150000 cmp eax,0000015B7
0043DDA4: 7D2C jge 00043DDD2
...
0043DDD2: 898E406D0000 mov [esi][000006D40],ecx
0043DDD8: C7864808000002000000 mov d,[esi][000000848],2 -> PRESET ID



The XP driver doesn't have the device IDs 15B7 and 15B8, but the presets are there, so I've added a compare against these IDs and, if there is a match, it jumps right to the corresponding ID.

The order of the checks is reversed in the XP driver. First preset is set to 2 and the second is C.

At offset 38F00 there are more checks, against the mask and later against the ID.

Got it?

#1570 daniel_k Here is another try.
#1571 diderius6 ⇗ @daniel_k

Yes, I understand everything. If there are no other differences between those i219 and i217 it will work.
Oh, nice so much help, also to ⇗ @canonkong!
I will test both methods,
but now I am sure
we get it to work.
And I know, there are a lot of other users,
who go away from XP because no USB and no Internet any longer
Dietmar
#1572 diderius6 ⇗ @daniel_k

On "MPS" and on ACPI Multiprocessor again code 10.
Question is, if the drivers for i217 and i219 even for Win7
are a little bit different. I think yes.
And so, the way via firmware change in Bios may be the easier way.
Question in this is only, if those 2 physical devices (called i217 and i219) are identic
Dietmar

PS: And still remains (because of code 10) the possibility, that Device GLAN is killed somewhere
in DSDT for newer Bios via Intel for XP.

Now I am tired and 4 hours after midnight here in germany:))!
But tomorrow..
#1573 diderius6 ⇗ @daniel_k

A test for to check the driver compatibility is,
if a real i219 device can run under Win7 with a modded (for i219) i217 driver from Win7
Dietmar

EDIT: For Win7, the i217 and i219 appear for the very first time together in the Intel driver package

Intel® Netzwerk Adapter-Treiber für Windows 7 *
Version: 21.0 (Zuvor veröffentlicht) Datum: 23.05.2016

And in the other package is the very first driver for Intel i217-V for Win7 32 bit.
If THIS driver can be modded for to support i219 on Win7, than XP i219 should be possible.
This driver is from Intel 18.4.



diderius6 has attached files to this post
#1574 diderius6 ⇗ @canonkong

I make a check between the GBE for Bios 1704 from Asus Apex X website
and my GBE direct from Compi.

Ok, in the very first Bytes I see the MAC and I also noted,
that the Hex values for i219
F4 18 00 0A 43 08 13 01 B7 15 AD BA B7 15 B8 15
appear a second time only in GBE from compi. Not so many differences,
so it can be done by hand with Winhex
Dietmar

PS: Now it is the turn, to find all this differences direct in the HEX file of outread Bios from my Apex X with Epromer
and change to the wished owns. The same I do for the Asus Bios of my real board Bios ASUS Z87I-Pro.



diderius6 has attached files to this post
#1575 diderius6 ⇗ @canonkong ⇗ @daniel_k

I flashed the whole GBE region from Bios of real Compi Asus z87i-Pro
to the Bios 1704 GBE region of the Apex X board.

Now appears at start the message

PXE-E04: Error reading PCI configuration space.

The network card is now indeed shown as i217-V
and with VEN_8086&DEV_153B
but with yellow exclamation mark and code 10.

Dietmar

PS: Everything other on Apex X board seems to work normal.

 

Page 106

#1576 daniel_k
Zitat von ⇗ diderius6 im Beitrag ¶ #1575
@canonkong @daniel_k

I flashed the whole GBE region from Bios of real Compi Asus z87i-Pro
to the Bios 1704 GBE region of the Apex X board.

Now appears at start the message

PXE-E04: Error reading PCI configuration space.

The network card is now indeed shown as i217-V
and with VEN_8086&DEV_153B
but with yellow exclamation mark and code 10.

Dietmar

PS: Everything other on Apex X board seems to work normal.

Perhaps you've changed too much?

Attach the old and the new GBE region here.

Can the device ID be found in the GBE region?
#1577 canonkong ⇗ @diderius6
PXE need to replace the lom, use uefitool.
#1578 diderius6 ⇗ @daniel_k
I make a new try, where I only change at its 4 places in my original Apex X GBE
B815 => 3B15 (like ID hack in drivers).

But exact the message at boot appears
PXE-E04: Error reading PCI configuration space.
The lan device is again shown as i217-V code 10 under Win7 and the same in XP.

⇗ @canonkong
"PXE need to replace the lom, use uefitool."

This message ist to short for me, I dont understand.
#1579 canonkong ⇗ @diderius6
Use uefitool serch B8 15, find out this block, and path it out. Use UBU SetDevID to change lom dev_ID, than use this modify lom to replace it back.
#1580 kukonosau Do you have ACPI for Windows XP x64 for Ryzen? Windows XP is no laggind in game with Ryzen and graphics card, for example 980 Ti?
#1581 diderius6 ⇗ @kukonosau

Until now is no good acpi.sys for XP 64 on the market.
For me, everything works ok with Ryzen and gtx 980 under XP 32 bit
Dietmar
#1582 kukonosau Games is no lagging? How to working Windows XP in Ryzen 3 2200G with graphics card 9th series? My motherboard is ASUS AM4 B350 PRIME B350M-K. If buy fraphics card 9th series can I play computer games in Windows XP?  I have 1050 Ti, but I haven't drivers for 10th series.
#1583 diderius6 ⇗ @canonkong

The problem is, that the Hexvalues B8 15
appear at a lot of places, when I search with Uefi tool.
And which Bios file should I search?
The modded one or the original one with DEV_15B8 ?

Is it in GBE region

Dietmar

Can the words PXE, LOM help me for search?


PXE-E04: Error reading PCI configuration space.

This message is displayed if any of the PCI BIOS calls made to read the PCI configuration space return an error code.

I flashed my own original GBE region from Apex board back.
Now this errormessage is gone but again the networkdevice i219-V is shown (works only under Win7).
#1584 skullteria My version of acpi.sys from 5048 is not a good option? On my system (skylake, core i7 6700k and motherboard ) work fine!
#1585 skullteria
Zitat von ⇗ diderius6 im Beitrag ¶ #1581
@kukonosau

Until now is no good acpi.sys for XP 64 on the market.
For me, everything works ok with Ryzen and gtx 980 under XP 32 bit
Dietmar



My version of acpi.sys from 5048 is not a good option? On my system (skylake, core i7 6700k and motherboard ) work fine!
#1586 diderius6 ⇗ @skullteria

We have only the 32 bit version from this acpi.sys 5048

Dietmar

PS: And for Ryzen, the hack from infuscomus has also to be done on the acpi.sys 5048 64 bit.
#1587 diderius6 The question is, if the message

PXE-E04: Error reading PCI configuration space.

stops the lan from working or not. It is shown in device manager as i217-V with correct changed ID.
May be it is just a message,
this would mean,
that i217 and i219 are different in hardware
and the driver for pur i217 cant run on i219,
because also Win7 showes code 10
on i219 => i217
modded device
Dietmar
#1588 daniel_k
Zitat von ⇗ diderius6 im Beitrag ¶ #1587
The question is, if the message

PXE-E04: Error reading PCI configuration space.

stops the lan from working or not. It is shown in device manager as i217-V with correct changed ID.
May be it is just a message,
this would mean,
that i217 and i219 are different in hardware
and the driver for pur i217 cant run on i219,
because also Win7 showes code 10
on i219 => i217
modded device
Dietmar


PXE is actuallly an option ROM, read this:
⇗ https://en.wikipedia.org/wiki/Preboot_Execution_Environment

Usually used on diskless systems, boots an OS by loading its files remotely from a connected network.

I think those models are just too diferent for it to work.
#1589 daniel_k Try this modded driver, recommened with a BIOS with original GBE region.

If this doesn't work, it is very unlikely it ever will.
#1590 diderius6 ⇗ @daniel_k

I found the lan chip on the nice Asus z87i-Pro board. From this board I know, that i217 works for XP and Win7.

Intel® Ethernet Controller I217V
Consumer LAN product with support for Energy Efficient Ethernet (802.3AZ)1, Intel® Standard Manageablity, ACBS and standard Gigabit networking features Intended for mobile, desktop, and embedded design
WGI217V

Dietmar

EDIT: The i219-V is integrated in the Intel® Z370 Chipset. So, the hardware is different.

EDIT2: BUT
Key Details
Design is Highly Compatible with the
Intel® 82579 GbE Controller

The Intel® Ethernet Controller I217 is
highly compatible with the Intel® 82579
GbE Controller, making new designs easy
to generate while gaining the improvements
of features now available on the
Intel® Ethernet Controller I217.

 

Page 107

#1591 skullteria
Zitat von ⇗ diderius6 im Beitrag ¶ #1586
@skullteria

We have only the 32 bit version from this acpi.sys 5048

Dietmar

PS: And for Ryzen, the hack from infuscomus has also to be done on the acpi.sys 5048 64 bit.


Here version x64

skullteria has attached files to this post
#1592 diderius6 ⇗ @canonkong

After loong search I think I found the wished part via Uefi tool looking in whole Bios.
I look for a header with Hex 55 AA 87 E8.
It is only in
GUID:              A0327FE0-1FDA-4E5B-905D-B510C45A61D0
and there only in
Subtype GUID: 50339D20-C90A-4BB2-9AFF-D8A11B23BC15

I extracted the body of this subguide with Uefi Tool and name it otto.bin.
There I found words Intel R) Boot Agent ..

Then I type in commandline (path to UBU)

C:\SetDevID 153B otto.bin ottoModID.bin

and a message tells,
that this ID was set.
With Winhex I take a look what changed. I see, that the DEV_15B8 => DEV_153B as wished.
Now I flash this back to Bios and we will see

Dietmar

#1593 canonkong ⇗ @diderius6
Good, you found the right way. if i217 can not work try i218 or other phy GBE.
#1594 diderius6 ⇗ @daniel_k

I tested your new driver with original Bios 1704 From Apex X board under Win7.
Yes, nice idea to test, if this driver pur i217-V, can be modded to support also i219-V.
It is necessary, because if this does not work,
something other is in the way and I would also say incompatible hardware.
During install after about 1 min the compi gets frozen,
so it is not so easy to say what is going on
Dietmar
#1595 XPLives ⇗ @diderius6

Zitat von ⇗ diderius6 im Beitrag ¶ #1594
@daniel_k

I tested your new driver with original Bios 1704 From Apex X board under Win7.
Yes, nice idea to test, if this driver pur i217-V, can be modded to support also i219-V.
It is necessary, because if this does not work,
something other is in the way and I would also say incompatible hardware.
During install after about 1 min the compi gets frozen,
so it is not so easy to say what is going on
Dietmar



I don't think this method is worth the effort.  It's possible the chipset is different that even tricking the hardware to appear as i217-V when it is really i219-V if the chips are different then the driver itself still can't function with it.  Only Intel has knowledge of their own chips or the company who made the chips could make a new XP driver for i219-V.

This is probably the same reason why Intel HD Graphics 4200 cannot use Intel HD Graphics 4000 XP driver.  Possibly the chips are different enough that the code is specific.  But probably easiest is the Hardware ID substitution test without going into the BIOS.

It is much easier to just spend $5 to get Realtek 8111E PCIe network card and just use PCIe x1 tiny slot.  Or get USB 3.0 card and use USB ethernet or USB wifi adapter if sacrificing just one internal PCIe x1 slot in order to use XP.  Then add USB Audio and you got sound.   Graphics card still requires another PCIe slot that can't be helped.  At most two PCIe slots will be needed for full XP functionality.

In the future Ice Lake and Tiger Lake those onBoard network will be i220-V+ and more foreign.  USB 3.X may change to USB 4.0 but hopefully not or only if backward compatible to USB 3.0 then driver can still work.  USB 3.0 cards will be the only path forward for easy USB network, USB audio, USB keyboard, and USB mouse if no more PS/2 ports.
#1596 infuscomus ⇗ @XPLives

PCI-E usb 2.0 cards are still a possibility for XP if you need guaranteed USB for XP
⇗ https://www.ebay.com/itm/USB-2-0-to-PCI-...lEAAOSwaBZZmNXa

The following contents have been linked to this post:
#1597 diderius6 ⇗ @canonkong ⇗ @daniel_k
I flashed the whole Bios to the Asus Apex X board after integrating all changes from @canonkong.
But the message about PXE stays the same and also the now as i217-V shown lan device has yellow
exclamationmark in XP and in Win7 and does not work (each code 10).
I tried a lot before I succeed to flash this Bios chip in a whole.
From all the Epromers I have, only Revelprog IS works via the TPI socket
with my own build adapter (see photo).
The Epromer can only work, after I connect the normal power supply to the board (board not startet).
The CPU, RAM and Bios battery stay all in the board.

So, there seems to be hardware differences between the i217 and i219
Dietmar




#1598 diderius6 I just noticed,
that the Hex values B8 15 for the old Lan i219-V
still remains in

Guid
4953F720-006D-41F5-990D-0AC7742ABB60

and there only in PE32 section of its Subguide
EE4E5898-3914-4259-9D6E-DC7BD79403CF

And the message abbout PXE has not only to do with PXE:

PXE-E04: Error reading PCI configuration space. The Boot Agent cannot continue. PCI configuration space could not be read. Machine is probably not PCI compliant. The Boot Agent was unable to read one or more of the adapter's PCI configuration registers. The adapter may be mis-configured, or the wrong Boot Agent image may be installed on the adapter. The Boot Agent will return control to the BIOS and not attempt to remote boot. Try to update the flash image. If this does not solve the problem, contact your system administrator or Customer Support.

This means: When the lan adapter is misconfigurated, this message appears also

Dietmar

EDIT: Problem in this is only, that B8 15 appears at 5 places. And the UBU tool does not work for this.
#1599 infuscomus The latest Intel networking driver I can find for XP is 12.7.28

The first version that supports 217 is 12.8.33 - according to daniel_k

they are only a few months apart

I don't know if this can be hacked to work



infuscomus has attached files to this post
#1600 cedar ⇗ @skullteria

I tried your acpi 64. Unfortunately, it bsod 7E on Ryzen.
#1601 cedar With further tests, my Mboard seems to work with usb3.0. Thanks to
daniel_k ,canonkong ,diderius6's great efforts. Seem stable at the moment,
if not, I can always go back to the Mediasonic PCIe usb3.0 card.


⇗ https://www.amazon.ca/Mediasonic-HP1-SU3-USB-Express-Card/dp/B003X26VVO
#1602 diderius6 ⇗ @cedar
On which board USB3 works for you now
Dietmar
#1603 cedar ⇗ @diderius6
Ivy Gigabyte D3-P75.
#1604 diderius6 ⇗ @skullteria

"I tried your acpi 64. Unfortunately, it bsod 7E on Ryzen."

The last hack (only this makes Ryzen work with Acpi) from ⇗ @infuscomus and me is not integrated in this 64 bit version I think
Dietmar
#1605 cedar @ diderius6
I tried your and  infuscomus 64 bit version too. Don't remember if
it was B7 or A5.

 

Page 108

#1606 infuscomus ⇗ @diderius6

when you have time to test, can you test the driver I posted?

- post #1599 (it needs an INF mod)
#1607 diderius6 ⇗ @infuscomus

Soon I will test your driver, after I did Bios Mod.

Because now I have full, easy to handle Eprom possibility for the Asus Apex X board,
I use it ..

So, I just did the following:
With UEFI tool I copied the whole Intel Gigabyte Lan file *.ffs
from GUIDE 4953F720-006D-41F5-990D-0AC7742ABB60 of the Asus z87i-Pro board Bios
and replace with it the same one in the Apex X Bios. So the problem is gone, how I can change there the DEV_ numbers for lan.
But maybe the DEV_ number for lan is still stored in the Bios at other places.
But it is a try and I think, compi will start
Dietmar
#1608 infuscomus ⇗ @diderius6

actually this driver i think might be better choice

found here -
⇗ https://msfn.org/board/topic/176687-seac...comment=1162644

e1d5132 - XP driver for 218-V



infuscomus has attached files to this post
#1609 diderius6 "With UEFI tool I copied the whole Intel Gigabyte Lan file *.ffs
from GUIDE 4953F720-006D-41F5-990D-0AC7742ABB60 of the Asus z87i-Pro board Bios
and replace with it the same one in the Apex X Bios."

Ok, this does not change anything. PXE-04 message again
and again yellow questionmark for the now "i217-V" in the device manager under XP and Win7, all driver tested,
Dietmar

EDIT: I flashed all back to my original, own Bios with DSDT mod for USB3.
Now the lan device is shown again as i219-V,
works under Win7 and XP shows yellow exclamationmark.
#1610 diderius6 ⇗ @infuscomus

Easy *.inf mod does not help in XP for lan i219-V with driver bearwindows 808615A1_x86.7z.zip.
It installs and shows then code 10
Dietmar

PS: I modded this driver from Bearwind in exact the same way as he did,
6 places different, just edit *.inf file and A115 (i218-V2) => B815 (i219-V2) and checksum.
In XP and in Win7 this driver is loaded, but then again in both code 10.

This means: The hardware for i217, i218 is compatible but not with i219.
#1611 diderius6 In 2016, they also cant start the i219 driver in Linux.

"The e1000e driver is the one that can run the I2xx intel Ethernet Controllers. And the latest e1000e driver (as of this writing) is capable of running the I219 chip.

The The NVM Checksum Is Not Valid message during boot is what was preventing the older drivers from being loaded. On other OSes (notably MS windows) that error is ignored. But Linux appears to be stricter.

NVM is a ROM (read only memory) in the chip, which undergoes a checksum, and the older version of the e1000 driver was not aware of the NVM contents of the newer chips. Since the card works on other OSes that ignore the error another possibility could have been to force the driver to ignore the error."

Dietmar
#1612 diderius6 ⇗ @AddFun

do you get my message

Dietmar
#1613 AddFun Thanks!
#1614 canonkong ⇗ @diderius6
Did you try i218 GBE? Or used ID replace to test it?
#1615 XPLAKE8175 ⇗ @diderius6
Your ACPI.sys gives the 0x00000D1 BSOD after txt mode. ACPI and ACPI Multiprocessor gives the same error.
#1616 XPLAKE8175 Advanced error information is:
ACPI.sys - Address F7359AB6 base at F7346000, Datestamp 424d8208
#1617 XPLAKE8175 Now I'm installing XP in a fat formatted drive on same laptop
#1618 diderius6 ⇗ @XPLAKE8175

The BSOD 0x000000D1 acpi.sys happens, because a PCI device is not handled correct from acpi.sys.

"The Advanced Configuration and Power Interface (ACPI) BIOS on this computer contains a namespace object that is not a PCI device. However, Windows assumes that the device is a PCI device incorrectly. Therefore, if Windows tries to access the PCI configuration space for the device, you receive a "STOP 0x000000D1" error message.
This issue occurs because of an error in the Acpi.sys system driver. The Acpi.sys system driver returns an incorrect flag that causes the device to be regarded as a PCI device instead of a child of the PCI bus. Therefore, the device may not function correctly when the operating system tries to access it by using a special function."

Disable all devices in Bios, that you dont need for install
Dietmar

PS: When this BSOD appears after XP install, it can help when you boot the compi in Safe Mode (F8)
because then only important drivers are loaded.
#1619 diderius6 ⇗ @canonkong
i218 I do not test until now.
When I change only the DEV_15B8 => DEV_153B in GBE ( means i219-V => i217-V)
at once after reboot appears the message about PXE 4 error,
which means, that the original ID is safed at other place(s?)
in Bios too
Dietmar
#1620 infuscomus ⇗ @XPLAKE8175

Do you get D1 BSOD during textmode setup? or after reboot?

 

Page 109

#1621 diderius6 From Intel itself:

"Design is Highly Compatible with the
Intel® I218 Ethernet Connection: The
Intel® Ethernet Connection I219 is highly
compatible with the Intel® Ethernet
Connection I218, making new designs
easy to generate while gaining the improvements
of features now available
on the Intel® Ethernet Controller I219."

Hm, so next try with i219 => i218

Dietmar

EDIT: In porting the i219 to Mac OS, all the devices i217, i218, i219 look very similar.

⇗ https://github.com/al3xtjames/IntelMausi...0(original).cpp
#1622 diderius6 I have the board Asus Z97-DELUXE/USB 3.1
which has the i218-V chip,
so next test extracting whole real GBE from Z97 board and flash to the Apex X board i219-V => i218-V can start
Dietmar

PS: By the way I noticed, that Intel sells the chip WGI219V also as extra device in the same package size.

#1623 diderius6 Ok, exact the same happens as before.
After changing the whole GBE region
first appears the PXE-4 error,
than under Win7 and XP yellow exclamationmark with code 10,
now for lan device i218-V (DEV_15A1) which is exact the device
for what the bearwind driver XP was modded for
Dietmar

PS: The only(?) problem seems to be this errormessage PXE-4.
#1624 diderius6 I just notice,
that with RW-Everything you can EDIT the
pci configuration space of the i219-v
tomorrow I try
Dietmar

#1625 canonkong ⇗ @diderius6
Use UEFITOOL open your needed bios, search 42 6F 6F 74 20 41 67 65 6E 74, find it out and right click mouse than Extract Body, use SetDevID to midify the ID, than replace it back the same place. Save the bios. When you finish this, use UBU to checksum the bios first than you can flash it.
I think you meet PXE erro, maybe you have not checksum the bios.
My board with i219-v repalce i219-LM, work very well.
⇗ http://uploadoss.smxdiy.com/forum/201802/08/135216l6gt77a2fx71f967.png
⇗ http://uploadoss.smxdiy.com/forum/201802/08/143055ilplgvwbdp6lbn15.png
#1626 diderius6 ⇗ @canonkong

I just extract with Uefitool this file you told me to look for.
When I compare it with Winhex I found,
that it is exact the file, that I extracted 2 days before and where
I use SetDevID from UBU on it.
And this I flashed back,
Dietmar

PS: Yes, I have not tested checksum. But I think, that in the PCI space the nic still tells,
that it has the device ID from before.
#1627 XPLAKE8175 ⇗ @infuscomus
after reboot. I get this error by installing XP on NTFS
#1628 infuscomus ⇗ @XPLAKE8175

There is a backup copy of acpi.sys located in SP3.CAB and/or DRIVER.CAB - check both

extract the CAB file with 7zip into a separate folder

replace original acpi.sys with patched version

download cabpack 1.4 - ⇗ https://www.techspot.com/downloads/7104-cabpack.html
re-compress CAB file and replace the old one

rebuild XP ISO with nlite
#1629 XPLAKE8175 I installed XP without external devices except usb and it reached to the GUI mode
#1630 XPLAKE8175 PC copied the modded acpi.
#1631 XPLAKE8175 Now I got to the GUI mode. After GUI mode it gives the pre-text mode A5 error.
#1632 infuscomus ⇗ @XPLAKE8175

BSOD A5 D1 same as before?

can you post a checksum of your acpi.sys in XP /windows/system32/drivers
#1633 XPLAKE8175 I installed XP successfully. Now I'm installing Windows 10 alongside windows XP. ACPI detects my battery life successfully. There is one problem that I can't hibernate Windows XP
#1634 diderius6 ⇗ @canonkong

Even I try everything, to mod correct the device i219-V => i218-V
this does not work.
I get the same error message at boottime after flashing whole Bios with nice
Epromer Revelprog IS

PXE-E04: Error reading PCI configuration space.

I updated via UBU tool everything for lan, UBU tool tells always success.
The checksums are all ok.
This seems to be a hardware problem, but I think it is only one thing,
which device "i218-V" is asked for, but correct answer can give only i219-V.
Here I notice (see below) that there are a lot of 0x00000000
which are filled with other numbers at the other nic on this board 5 Gigabit LAN AQUANTIA AQC108.

I also noticed with RW-everything (PCI), that the DEV_ ID has changed to the wished
value VEN_8086&DEV_15A1 (i218-V (vers2)).
So, on PCI space now this DEV ID is used, but does not help.

Here is the text from RW everything about this "i218-V" nic now
;Bus 00, Device 1F, Function 06 - Intel Corporation Ethernet Controller
;Device/Vendor ID 0x15A18086
;Revision ID 0x00
;Class Code 0x020000
;Cacheline Size 0x00
;Latency Timer 0x00
;Interrupt Pin INTA
;Interrupt Line IRQ16
;BAR1 0xDFA00000
;BAR2 0x00000000
;BAR3 0x00000000
;BAR4 0x00000000
;BAR5 0x00000000
;BAR6 0x00000000
;Expansion ROM 0x00000000
;Subsystem ID 0x85C41043

Dietmar
#1635 infuscomus ⇗ @diderius6

just curious, does the most recent version XP driver in post #1599 work? or code 10?

 

Page 110

#1636 diderius6 ⇗ @canonkong
I did the following:
In this modded Bios I only change GBE
against my original GBE (i219-v) and reboot.
No message about PXE 4 error now and internet works in Win7 (shows i219 device).
This simply means, it is enough to mod the *.gbe region.
Ok, next test, I change in my original *.gbe region
only at 4 places ID B815 => A115
Again message PXE 4 error, device "i218" is shown, not works.
Hm, this time I think, the checksum of *.gbe is not correct.
But I have no idea, how to fix its checksum.
I would be happy, if somebody here can fix the checksum for this *.gbe file for me
Dietmar

EDIT: Seems, that i219 has other hardware than i218, despite what Intel says.
i218-V and i219-V are not compatible.

EDIT2: I test the same on the Asrock k6 board. It has i211 and i219-V nics. After changing its GBE against the one from the z97 board (i218-V) no error message appears, but I also cant install the driver. XP tells code 10 and win7 tells code 31.



diderius6 has attached files to this post
#1637 diderius6 ⇗ @infuscomus

"just curious, does the most recent version XP driver in post #1599 work? or code 10?"

Code 10 ^^

Dietmar
#1638 Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #1455

Another idea would be: The DSDT table can be seen in (ACPI only) XP registry
and also been edited there. But on next boot the Bios loads
its original own DSDT. If we just can stop writing of Bios its own DSDT to the registry again,
it would be done


I feel that it is time to remind about my util called "acpi patcher" )
it is dsdt/ssdt table manipulation tool before OS loading, even for winxp textmode setup
#1639 diderius6 ⇗ @Mov AX, 0xDEAD
Yes, this is a nice tool. Please write a Tutorial,
which can be used on other compis also. May be your modded DSDT can stay in registry of XP?
For me it is now no problem just to edit DSDT and to flash it to Bios.
But I also learned, that manipulating Bios is always a risk
Dietmar

PS: Have you updated your to do list for XP from page 12 here? USB on Intel chipsets is done .
#1640 daniel_k ⇗ @diderius6

Unfortunately I'm not familiar with those modules, you need to ask someone who is used to UEFI.

In the mean time, I'm sharing my modded version of RSTe, which works just fine with consumer chipsets in AHCI and RAID modes.

Being much newer than 11.2 (2012), this one is much more compatible with new chipsets.

It's version 4.6.0.1085, which originally doesn't work because of missing imports. Seems fairly stable so far and nice performer.

Supports SSD's immediate standby for proper shutdown operation, not supported by versions older than 3.5.1 (RSTe storport) and 11.2.

The only issue it that HDDs spin down during Windows restart.

Could you please also test it? It's 32-bit only, for now, and automatically installs storport.sys.
#1641 infuscomus ⇗ @daniel_k

is this generic? or just newer chipsets?

Zitat von ⇗ daniel_k im Beitrag ¶ #1640
which originally doesn't work because of missing imports.


concerning missing imports, would it be possible to fix imports for newer intel lan driver for 219-V for windows 7 to make it compatible with XP?
#1642 daniel_k
Zitat von ⇗ infuscomus im Beitrag ¶ #1641
@daniel_k

is this generic? or just newer chipsets?

Generic.

Zitat
concerning missing imports, would it be possible to fix imports for newer intel lan driver for 219-V for windows 7 to make it compatible with XP?


Unfortunately, no.

Only certain driver classes might be compatible across diferent Windows versions, being storage one of them, as long as there are no missing imports.

NDIS, WLAN, Graphics, HID, HDAudio drivers are just impossible.

Even USB XHCI drivers can be incompatible even if there are no missing imports: AMD host drivers newer than the one I've modded will install and aparently work just fine, but will crash when shutting down Windows because it doesn't properly support XP power management.

#1643 diderius6 ⇗ @daniel_k

I test your driver RSTe_4.6.0.1085_MOD.rar on the asrock fatal1ty z370 gaming k6 board.
It works:))! I noticed no strange behavior about harddisk spindown.

I test harddisk WD 2TB
ssd disk Samsung 860
nvme boot XP via disk Intel Optane.

I noticed, that also the filter driver iastorF.sys is installed for all the devices above and starts.
It is the Intel version of TRIM.
With cristaldiskinfo I can see, that TRIM is supported but I do not know, how to test under XP,
if TRIM works.
I also noticed, that nvme boot of XP is still possible with the latest storport.sys driver version 5.2.3790.4485.

Nice driver , generic for all Intel ahci
Dietmar

PS: On harddisk, the speed is about the same as with the old ahci 1006 driver from Intel.
On SSD your driver is about 4% faster than the old one.
#1644 canonkong ⇗ @daniel_k
For AMD USB XHCI, I tested all usb drivers, only Etron usb driver can work very well. Maybe other driver need to find out the breakpoint and use nop to stop it.
Like this: ⇗ https://forum.videohelp.com/threads/390651-Way-to-make-Intel-UHD-620-graphics-driver-to-works-in-windows-7-(no-crash)
#1645 infuscomus ⇗ @diderius6

have you made any progress on getting XP UEFI to work?
#1646 diderius6 ⇗ @infuscomus

I read only a little about XP UEFI,
but have not tried.
First I have to do some ground base work,
what is known and what not.
An interesting message was, that
the XP SP2 32 bit Media version from 2005
can be booted with the bootloader from Vista
Dietmar
#1647 infuscomus ⇗ @diderius6 ⇗ @skullteria ⇗ @kukonosau

I attempted to patch acpi.sys 5048 64 bit

Since I did not have symbols, I made guesses based on similarity comparisons in the assembly.

I don't know how well I did.

Let me know if it works.



infuscomus has attached files to this post
#1648 Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #1643

With cristaldiskinfo I can see, that TRIM is supported but I do not know, how to test under XP,
if TRIM works.


same as for win7 - trimcheck
to force generate trim command to drive i used in past TxBENCH (manual with GUI) and O&O Defrag in CLI mode (scheduled at booting time of winxp)
#1649 kukonosau Thanks. But "acpi.sys is corrupted" or BSOD. I don't compression archive SP2.CAB, I put file acpi.sy_ in folder AMD64.
#1650 infuscomus ⇗ @kukonosau

I did not get "acpi.sys is corrupted" error

make sure to replace acpi.sy_ in amd64 with new version

grab a clean x64 iso here
⇗ https://the-eye.eu/public/MSDN/Windows%20XP/

 

Page 111

#1651 XPLAKE8175 Diderius6's ACPI patch only works on fat32 formatted hdd and no plugged usb devices except format usb (textmode setup recognizes as CD) during textmode setup.
#1652 XPLAKE8175 XP mce and 64 bit iso exceeds CD size.
#1653 infuscomus
Zitat von ⇗ XPLAKE8175 im Beitrag ¶ #1651
Diderius6's ACPI patch only works on fat32 formatted hdd


not true, it works on NTFS just fine

Zitat von ⇗ XPLAKE8175 im Beitrag ¶ #1652
XP mce and 64 bit iso exceeds CD size.


there is a 64bit version of media centre edition? I was not aware of this

just use the normal non-mce 64bit iso.
#1654 kukonosau I downloaded original ISO. Also errors. I renamed file acpix64-patched.sys into acpi.sys. Next I write in command line "makecab acpi.sys" and get file acpi.sy_. Put file acpi.sy_ in folder AMD64. I check put acpi.sys in DRIVER.CAB... As a result, the same error "the file acpi.sys is corrupted" or BSOD if put other acpi files.
#1655 infuscomus ⇗ @kukonosau

try either the checksum-acpix64-patched.sys or the acpi.sy_ I included

I tested with en_win_xp_pro_x64_with_sp2_vl_x13-41611.iso
#1656 kukonosau I tested all 3 files acpi and different iso image Windows XP, but get errors "the file acpi.sys is corrupted" or BSOD IR_NOT_LESS_OR_EQUAL. May be, BSOD 0x0000000a.
#1657 XPLAKE8175 XP MCE 2005 English and XP Professional SP3 Turkish worked very well on NTFS formatted partition with diderius6's acpi.
#1658 infuscomus
Zitat von ⇗ kukonosau im Beitrag ¶ #1656
but get errors "the file acpi.sys is corrupted"


I can not reproduce this message on my end

Zitat von ⇗ kukonosau im Beitrag ¶ #1656
IR_NOT_LESS_OR_EQUAL. May be, BSOD 0x0000000a.


Thats a driver failure - did it show you the sys file that failed?
#1659 XPLAKE8175 ⇗ @kukonosau
Maybe you can plug the installation media to usb 2.0 if the PC has USB 2.0 ports. Please don't plug USB devices onto usb 3.0 ports.
#1660 kukonosau Sorry, acpi is worked!!! But only with fat32 disks(((
#1661 kukonosau No, this is problem ntfs disks!!! ACPI x64 worked only with fat32 disks.
#1662 infuscomus ⇗ @kukonosau

Glad to hear it worked for you!

only working for fat32 is strange - though I have my doubts that it is an ACPI related problem, it's probably a USB or SATA disk problem.
#1663 kukonosau Errors 7E, 7B, A5 and so on... FAT32 also doesn't working normally. Install cancel after copy files(
#1664 infuscomus ⇗ @kukonosau

BSOD after reboot?

replace acpi.sys in SP2.CAB or DRIVER.CAB
#1665 kukonosau BSOD about viruses hardware, but I integrated drivers Asmedia 106x SATA Controller!!!

 

Page 112

#1666 kukonosau XP 32-bit working normally with diderius acpi!!!
#1667 canonkong ⇗ @daniel_k ⇗ @diderius6
For AMD X570/3000series USB host 149C, I tested all usb drivers, only Etron usb driver can work very well. Other driver will meet 019 02C 01E BSOD or usb disk cannot work.
And maybe intel usb also can fix if we find the problem out.
Maybe other driver need to find out the breakpoint and use nop to stop it.
Modify like this: https://forum.videohelp.com/threads/390651-Way-to-make-Intel-UHD- 620-graphics-driver-to-works-in-windows-7-(no-crash)
#1668 daniel_k ⇗ @canonkong

If Etron works, that's OK, it is really hard to fix those errors, specially if one has no hardware to test (I don't have any AMD Ryzen system).

Sorry.
#1669 daniel_k ⇗ @diderius6

Did you try any of those drivers?

One is SCSIPORT, modded and the other one is STORPORT, no mod needed.

Unfortunately neither of them works with "real" Intel systems, but works on Virtual Box and supports up to 8 ports.

PS: Storport build 402 (included) works, with the older .337 filter driver, please try it as well.
#1670 diderius6 ⇗ @daniel_k

The ahcix86.sys does not work on AMD board asrock fatal1ty ab350 gaming k4 (DEV_43B7  and  DEV_7901)
gives code 10

Dietmar
#1671 diderius6 ⇗ @daniel_k

But, waaaaaooohh ,
the amd_sata.sys together with newest storport.sys and amd_xata.sys
works generic on AMD board asrock fatal1ty ab350 gaming k4 (DEV_43B7 and DEV_7901)
with Ryzen 3700x cpu.
And the amd_xata.sys gives AmdXataTrimSupport on AMD boards, so TRIM driver is loaded and started!
But still I do not know, how I can test, if TRIM works in XP

Dietmar
#1672 diderius6 ⇗ @Mov AX, 0xDEAD

With TxBENCH I can now use the Trim command in XP here for Samsung 860 EVO SSD on the AMD board.
The operation is called "optimation on unused area of the SSD".
It works on ntfs file system.
My question is, how I can test, that TRIM has worked with success on this SSD
Dietmar

EDIT: Using Samsung Magician from win7 for to check TRIM on the Samsung 860 EVO SSD
kills the XP installation there.
#1673 canonkong ⇗ @diderius6
Use ADATA SSD ToolBox, it can support other ssd trim on xp.
#1674 diderius6 ⇗ @infuscomus

"I tested with en_win_xp_pro_x64_with_sp2_vl_x13-41611.iso"

I want to check your modded acpi.sys on this XP 64 bit.
Do you have a key for it

Dietmar
#1675 infuscomus ⇗ @diderius6

i PMed you a key
#1676 diderius6 ⇗ @infuscomus

First I try to install XP 64 with modded acpi.sys on the AMD board asrock fatal1ty ab350 gaming k4 with 3700x cpu.
Then comes BSOD 0xA IRQL_NOT_LESS_OR_EQUAL. This means, that there is a not working kernel mode driver.
After this I disable really everything in Bios.
On next try I get BSOD 0x7E (xxx, 0xC0000005,yyy) which may be acpi related.

After this, I connect the CD rom drive to the nice EVGA z390 dark board (intel).
There I am just now installing this XP 64 bit and I hope, that I can put this installation after
to the AMD board asrock fatal1ty

Dietmar
#1677 daniel_k
Zitat von ⇗ diderius6 im Beitrag ¶ #1671
@daniel_k

But, waaaaaooohh ,
the amd_sata.sys together with newest storport.sys and amd_xata.sys
works generic on AMD board asrock fatal1ty ab350 gaming k4 (DEV_43B7 and DEV_7901)
with Ryzen 3700x cpu.
And the amd_xata.sys gives AmdXataTrimSupport on AMD boards, so TRIM driver is loaded and started!
But still I do not know, how I can test, if TRIM works in XP

Dietmar

Glad to know it works.

Version 1.2.1.337 is official for Server 2003.

Did you try both amd_sata.sys and amd_xata.sys from the same version?

Then running amd_sata.sys from 1.2.1.402 with amd_xata.sys from 1.2.1.337?

It's important to make sure the older amd_xata.sys didn't kill your XP install.
#1678 diderius6 ⇗ @daniel_k
Until now I tested only both from the same version 1.2.1.337.
I will also test with newer version amd_sata.sys 1.2.1.402
mixed with amd_xata.sys 1.2.1.337
Dietmar
#1679 daniel_k ⇗ @diderius6

Ok, please tell me what is the USB3 driver for XP which works properly with your Ryzen board?
I'd like to take a look at it.
#1680 diderius6 ⇗ @daniel_k

For me works only for all USB on AMD boards with Ryzen
the USB driver from post 1095, where I changed all the names to usbstor

Dietmar

 

Page 113

#1681 canonkong ⇗ @diderius6 ⇗ @daniel_k
But the driver will bsod when you uninstall it. And now I don think we find any prefect driver for AMD boards and Ryzen with 149C. VIA will meet 01E BSOD sometimes. Intel/AMD 2.0.0.48 will meet 02C BSOD when install/uninstall sometimes, ASMeidia,TI can not work for U disk.
So I think use windbg to find out the breakpoint and use nop to stop it.
Modify like this: https://forum.videohelp.com/threads/390651-Way-to-make-Intel-UHD-620-graphics-driver-to-works-in-windows-7-(no-crash)
#1682 daniel_k ⇗ @canonkong

We are talking about Windows XP only.
#1683 canonkong ⇗ @daniel_k
Xp also have this bsod.
#1684 daniel_k ⇗ @diderius6

Let's clarify some things.

Zitat
On 149C the etronxhci7052.sys works at once.
It is Ryzen 3700x on the nice AMD board asrock fatal1ty ab350 gaming k4


In this case, you mean etronstor.sys works, correct?
No need to rename etronstor.sys to usbstor.sys?

Zitat
EDIT: With my modded driver in post 1095 it is other. ALL USB on Ryzen 1700x and Ryzen 3700x works on
asus prime x570-pro and asrock fatal1ty ab350 gaming k4 board under XP 32 bit.


Is it really stable?

Did you do the same tests you did with my modded Intel USB driver?
Boot from USB, run benchmarks and so on?

I'm asking this because canonkong says it is not stable?

#1685 canonkong ⇗ @daniel_k ⇗ @diderius6
These modified drivers have a certain probability of BSOD during instal or uninstal, but once installed success, they will not encounter any problems. Except that the VIA driver appears 01E BSOD in use sometimes.
#1686 XPLAKE8175 I installed VESA vbe miniport from ⇗ https://bearwindows.zcm.com.au/vbemp.htm for my laptop. And I tested some 2d tests and half life 1 test. It works pretty well. For Broadwell+ laptops, I recommend this driver.
#1687 daniel_k Does anyone have Fresco Logic driver 2.14.0.76?

Interesting it included a generic XHCI class code device ID.

Unfortunately I can't find it, was made available for Asrock 890GM Pro3 at the time ASRock ran an FTP server.

Station-drivers had it as well, but now only 3.x versions are available.
#1688 diderius6 I succeed to install XP 64 on the EVGA z390 dark board with the modded acpi.sys from infuscomus,
with working USB.
Then I set in registry intelppm start=4 and connect
the harddisk to the AMD fatalty board with Ryzen 3700x.

But I get BSOD 0xA even again I enabled / disabled everything in Bios

Dietmar

#1689 infuscomus ⇗ @diderius6

do you think i jumped the wrong function?
#1690 diderius6 ⇗ @infuscomus
Your acpi.sys works on the EVGA z390 board.
The acpi.sys from ⇗ @skullteria gives there BSOD 0x7B. They are both from the same nature Longhorn 5048.
I also tried the unmodded 5048 acpi.sys, gives the same BSOD 0xA.
I also make a try, just combinating this both acpi.sys yours and from skullteria,
but results also in BSOD 0x7B.
I integrated with nlite the asm106 driver, which works to 100% (see the EVGA dark board).
I think, it is a problem with some hardware on the AMD board.

Have you installed this XP 64 successfull with ACPI on your compi

Dietmar
#1691 diderius6 ⇗ @daniel_k

To be honest, the Intel USB driver I test much more intensive.

But on 2 boards from AMD all was ok with the etronstor.sys driver,
no need to rename. But all USB devices at once where on those 2 AMD boards
only recogniced with the driver from my post 1095
Dietmar

PS: I did not recognice a single BSOD from USB on AMD board. I do not get any "unknown device".
#1692 diderius6 ⇗ @daniel_k

Here is the USB driver 2.14.0.76 from Fresco 32 bit

Dietmar



diderius6 has attached files to this post
#1693 infuscomus ⇗ @diderius6

I also get same BSOD 0xA

I thought perhaps I jump the wrong function for ACPI - but it is not A5 BSOD, so just IRQ problem?
#1694 daniel_k ⇗ @diderius6

Thanks, do you have the whole package with the x64 driver?

Did you ever try it with an AMD system? Or Intel?

Will do it later if you don't do it first.

Firstly, will fix the Etron driver so it will work on both 149C and 43BB devices.
#1695 diderius6 ⇗ @daniel_k

No, I never tried. I have also an *.msi installer for 64 bit,
but during unpack I notice, that it is still 32 bit, 100% identic to the 32 bit version,
so I think, there has never been an XP64 version of it

Dietmar

 

Page 114

#1696 Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #1692

USB driver 2.14.0.76 from Fresco 32 bit


Zitat
[FRESCO.NTx86]
%FLxHCIc.DRVDESC%=      FLxHCIc,        PCI\CC_0C0330



fresco is WDF based, this maybe means very slow init of usb devices (like VIA) , but  this .inf is funny :)

#1697 diderius6 ⇗ @Mov AX, 0xDEAD

Yes, very funny.
On my Intel PC this crazy Fresco driver думает , что он IEEE 1394 Bus-Hostcontroller

Dietmar

PS: On the AMD fatalty board, the Fresco driver froze the compi, so no good choice.
#1698 daniel_k
Zitat von ⇗ diderius6 im Beitrag ¶ #1697
PS: On the AMD fatalty board, the Fresco driver froze the compi, so no good choice.

That's a lost cause.
#1699 daniel_k ⇗ @diderius6

Please try this, specially on the X570 board.

I've seen how the drivers behaves in your modded driver.

The more important change, is that etronstor.sys must work.
#1700 daniel_k ⇗ @Mov AX, 0xDEAD

Are you good at assembly?

If so, can you help me, please?

I'm trying to patch RSTe 4.7, managed to change about 100 instances of an import into another, but I'm puzzled with one instance.
#1701 diderius6 ⇗ @daniel_k

For the new Etron driver is the same true as before:
DEV_149C works, but DEV_43BB (with USB2.0 port also) not,
even it is installed

Dietmar
#1702 daniel_k
Zitat von ⇗ diderius6 im Beitrag ¶ #1701
@daniel_k

For the new Etron driver is the same true as before:
DEV_149C works, but DEV_43BB (with USB2.0 port also) not,
even it is installed

Dietmar

Thanks.

A new round of test 2, 3 and 4, please try.

One of them should hopefully work.
#1703 daniel_k The following is easy, almost 99.9% of them:

 
.text:00011888                 push    4
.text:0001188A lea eax, [edi+11h]
.text:0001188D mov byte ptr [edi+15h], 0
.text:00011891 push eax
.text:00011892 movzx eax, byte ptr [edi+10h]
.text:00011896 push 4 -> easily kill by nops
.text:00011898 lea eax, [ebx+eax*4]
.text:0001189B push eax
.text:0001189C call ds:memcpy_s -> memcpy



However, this one, I don't know how to patch:

 
.text:00067712                 push    eax
.text:00067713 mov eax, [esi]
.text:00067715 push [ebp+arg_0]
.text:00067718 call dword ptr [eax+0Ch]
.text:0006771B movzx eax, ax
.text:0006771E mov ecx, esi
.text:00067720 push eax
.text:00067721 mov eax, [esi]
.text:00067723 call dword ptr [eax+8]
.text:00067726 push eax
.text:00067727 call ds:memcpy_s -> memcpy



There are only 2 push'es and memcpy_s requires 4 parameters, what should I kill?
Can a call return value be considered a push <parameter>?

From Microsoft's reference:

 
errno_t memcpy_s(
void *dest,
size_t destSize, -> this parameter should be killed
const void *src,
size_t count
);



 
void *memcpy(
void *dest,
const void *src,
size_t count
);



Please note that in assembly, the parameter order is reversed:

push size_t count
push const void *src,
push size_t destSize, -> this parameter should be killed
push void *dest,
call memcpy_s
#1704 diderius6 ⇗ @infuscomus
I test your acpi.sys for XP64 also
on the x570 board with Ryzen 1700.
Nearly exact the same BSOD 0xA happens there
Dietmar
#1705 diderius6 ⇗ @daniel_k
The amd_sata.sys 1.2.1.337 driver does not work, version 1.2.1.402 also not
on x570 board
Dietmar

EDIT: This is a mistake. The driver works also on x570 board.
#1706 diderius6 ⇗ @daniel_k

Test 2, 3, 4 do all the same:
The Etron Usb driver recognices DEV_149C
but does not work for DEV_43BB . It installes, but no USB device is then recogniced,
Dietmar

PS: For DEV_149C device is Etron driver good and for DEV_43BB is AMD driver good,
see attached.



diderius6 has attached files to this post
#1707 canonkong ⇗ @diderius6
Did you have test uninstal Etron usb driver?
#1708 daniel_k
Zitat von ⇗ diderius6 im Beitrag ¶ #1705
@daniel_k
The amd_sata.sys 1.2.1.337 driver does not work, version 1.2.1.402 also not
on x570 board
Dietmar

I believe this one should work.

Unfortunately it is old and surely don't properly support SSD features.

There are SCSIPORT and STORPORT versions, please try both.
#1709 daniel_k
Zitat von ⇗ diderius6 im Beitrag ¶ #1706
PS: For DEV_149C device is Etron driver good and for DEV_43BB is AMD driver good,
see attached.

Hmm, so for X570 AMD's driver works just fine?

So, I'm done with that.

No problems at all? Restarting Windows, shutting down or enabling/disabling the Host controller in Device Manager.
#1710 diderius6 ⇗ @canonkong ⇗ @daniel_k
I install, deinstall every USB driver more than 10 times.
Nothing bad happens.
In XP, you have to try this always few times,
but in the end all USB deinstalls if you want
without crash
Dietmar

 

Page 115

#1711 canonkong ⇗ @diderius6
What about VIA modified driver? On Xp system, I think it is better than Etron.
#1712 diderius6 ⇗ @daniel_k
I make a mistake.
I forgot, that I disable everything in Bios
for boot of XP64, and also SATA ports.
Now, when I enable them again, I see,
that the amd_sata.sys 1.2.1.337 driver works and version 1.2.1.402 also
on x570 board

Dietmar
#1713 daniel_k ⇗ @diderius6

Glad to know it also works on X570.

This just means we're done with drivers.

We have drivers for everything, right?
#1714 diderius6 ⇗ @daniel_k
I start to understand ⇗ @canonkong .
The USB DEV_149C is on the x570 board
much more unstable than on the AMD fatalty B350 board.
On the x570 board now I see for the first time "unknown device".
The same happens, when I install for DEV_149C the USB driver
from post 1095,
even I think it is on the x570 board the better choice for DEV_149C than the Etron driver
Dietmar
#1715 Mov AX, 0xDEAD winapi mostly is stdcall(cdecl), so stack not touched by subcalls:

Zitat von ⇗ daniel_k im Beitrag ¶ #1703
.text:00011888                 push    4                  ; 1
.text:0001188A lea eax, [edi+11h]
.text:0001188D mov byte ptr [edi+15h], 0
.text:00011891 push eax ; 2
.text:00011892 movzx eax, byte ptr [edi+10h]
.text:00011896 push 4 -> easily kill by nops ; 3
.text:00011898 lea eax, [ebx+eax*4]
.text:0001189B push eax ; 4
.text:0001189C call ds:memcpy_s -> memcpy[/code]

.text:00067712 push eax ; 1
.text:00067713 mov eax, [esi]
.text:00067715 push [ebp+arg_0] ; 2
.text:00067718 call dword ptr [eax+0Ch] ; subcall return result in eax
.text:0006771B movzx eax, ax ; zeroing high bits of eax
.text:0006771E mov ecx, esi
.text:00067720 push eax ; 3
.text:00067721 mov eax, [esi] ; reload eax, so we can do anything with eax before this command
.text:00067723 call dword ptr [eax+8]
.text:00067726 push eax ; 4
.text:00067727 call ds:memcpy_s -> memcpy


push xx -> nops
#1716 canonkong ⇗ @diderius6
So I think VIA will better than Etron on X570 for Xp, even though it will 0x00000019E bsod on win7 sometimes in use.
#1717 canonkong ⇗ @Mov AX, 0xDEAD
Do you think it's possible to use windbg to find out the breakpoint and use nop to stop it. I think it can solve some usb drivers 02C, 01E bsod, but I don't known how to modify on HxD.
Modify like this: ⇗ https://forum.videohelp.com/threads/390651-Way-to-make-Intel-UHD-620-graphics-driver-to-works-in-windows-7-(no-crash)
#1718 diderius6 ⇗ @infuscomus
I found,
that the BSOD in XP64 is acpi.sys related.
This error looks very similar to the acpi
BSOD, we have seen on XP 32 bit
Dietmar

PS: First picture is XP64 with unmodded 5048 acpi.sys. Second picture is with acpi.sys 5048 modded by @infuscomus.




#1719 daniel_k ⇗ @Mov AX, 0xDEAD

Thank you very much!

I know is stack related, changed this way by looking at other drivers calling memcpy and learned that it should be 0C, is it correct?

 
1189C                 call    ds:memcpy_s
118A2 add esp, 10h


to

 
1189C                 call    ds:memcpy
118A2 add esp, 0Ch



Sorry for being a noob.

For X64, there is no push, but several mov, sometimes add as well.
How do I know which one is correct for me to NOP?

These are from IDA, do you think the parameters are correct?

 
72987                 mov     eax, [rdi+4]
7298A cmp eax, 40h
7298D jnb short loc_729AC
7298F mov [rcx+rsi+8], eax
72993 mov r9d, [rdi+4] ; size_t
72997 add rcx, 0Ch
7299B add rcx, rsi ; void *
7299E mov r8, r15 ; void *
729A1 mov edx, 40h ; size_t
729A6 call cs:memcpy_s



 
72D50                 xor     r12d, r12d
72D53 mov r8, rdx ; void *
72D56 mov edi, r9d
72D59 mov edx, 100h ; size_t
72D5E test r9d, r9d
72D61 jnz short loc_72D84
72D63 mov rcx, [rsp+48h+arg_38]
72D6B lea r9d, [rdi+40h] ; size_t
72D6F mov dword ptr [rcx], 41696541h
72D75 add rcx, 4 ; void *
72D79 call cs:memcpy_s



This one is missing 2 parameters?!

 
72D84                 mov     rbx, [rsp+48h+arg_38]
72D8C mov eax, [rsp+48h+arg_40]
72D93 mov [rbx+108h], r9d
72D9A lea rcx, [rbx+4] ; void *
72D9E mov r9d, 40h ; size_t
72DA4 mov dword ptr [rbx], 46696541h
72DAA mov [rbx+104h], eax
72DB0 call cs:memcpy_s



 
72E04                 mov     r8, [r14+rcx*8] ; void *
72E08 movzx eax, dx
72E0B lea rcx, [rbx+4] ; void *
72E0F test r8, r8
72E12 jz short loc_72E22
72E14 mov r9d, eax ; size_t
72E17 movzx edx, dx ; size_t
72E1A call cs:memcpy_s



 
72F25                 movzx   edx, word ptr [rdi+0Eh] ; size_t
72F29 lea r8, [rdi+10h] ; void *
72F2D mov rcx, rax ; void *
72F30 mov r9d, edx ; size_t
72F33 call cs:memcpy_s



 
7354C                 lea     rcx, [rbp+37h+var_80] ; void *
73550 mov edx, 40h ; size_t
73555 mov r9d, [rax+r12+8] ; size_t
7355A lea r8, [rax+0Ch]
7355E add r8, r12 ; void *
73561 call cs:memcpy_s



 
77F9C                 lea     eax, [rbp+3]
77F9F add r8, rcx ; void *
77FA2 mov [rsp+0D8h+var_88], ax
77FA7 lea rax, [rsp+0D8h+var_80]
77FAC lea rcx, [rsp+0D8h+var_68] ; void *
77FB1 mov r9d, edx ; size_t
77FB4 mov [rsp+0D8h+var_78], rax
77FB9 call cs:memcpy_s
#1720 daniel_k ⇗ @diderius6

Yeah!

Thanks to Mov AX, 0xDEAD, I've successfully patched RSTe 4.7.0.1098, the last version compatible with Server 2003 (XP with storport.sys).

Please test it, Dietmar.
#1721 XPLAKE8175 When I install intel hd the screen flashes once or twice but when I install windows vista the screen doesn't flash and when I restart in vista it restarts at 800x600 instead of 1366x768. I modded intel hd driver on broadwell cpu. Maybe the reg values of XP drivers are wrong.
#1722 XPLAKE8175 I'm testing Intel HD graphics on my broadwell laptop. When I successfully installed it, I will mod for Skylake, Kaby Lake and Coffee lake.
#1723 Mov AX, 0xDEAD
Zitat von ⇗ daniel_k im Beitrag ¶ #1719

to
 
1189C                 call    ds:memcpy
118A2 add esp, 0Ch




correct

Zitat von ⇗ daniel_k im Beitrag ¶ #1719

This one is missing 2 parameters?!


windows x64 calling convention for memcpy_s is:
1 RCX (*dest)
2 RDX (destSize)
3 R8 (*src)
4 R9 (count)

for memcpy:
1 RCX (*dest)
2 RDX (*src)
3 R8 (count)
4 -
#1724 XPLAKE8175 Can someone modify this haswell compatible igxp32 for my intel hd 5500 broadwell laptop? My screen flashes when I install but the driver does not install.



XPLAKE8175 has attached files to this post
#1725 XPLAKE8175 I don't want the frustrating Anapa Corp. text before startup.

 

Page 116

#1726 XPLAKE8175 ACPI: Solved
Graphics: BSOD after Install/Remove Software for discrete GPU.
Sound: Solved.
Ports: Solved.
Network: Solved.
Thermal Driver: FAIL.,
I modded chipset drivers on Vista and all of them are working properly. Just don't download the installer only package.
NOTE: The only failed drivers are manufactured by Intel. USING BROADWELL LAPTOP.
REQUEST: The most important driver is Intel HD Graphics at #1724
#1727 diderius6 I tested Intel RSTe from 2017 on the EVGA z390 dark board.
Yesssssaaaa, nice driver !!! Nice work together ⇗ @daniel_k ⇗ @Mov AX, 0xDEAD !!!

Dietmar

#1728 diderius6 iaStorA.sys and iaStorF.sys (TRIM) and newest storport.sys are loaded.
I make a test on the AMD board x570 also. There it gives code 10.
When you replace the asm106 driver with it, it gives BSOD 0xA.

For any Intel chipsets in future, XP will be on board

Dietmar
#1729 XPLAKE8175 Please someone answer me?
#1730 canonkong ⇗ @diderius6
Can you share the software: PEmaker. I try to find it on the internet, but not found.
#1731 infuscomus ⇗ @canonkong

pemaker here
⇗ http://blog.livedoor.jp/blackwingcat/archives/1313117.html
#1732 canonkong @ infuscomus
Thanks, I am trying a new driver sign method, *.sys file not need sign anymore.
#1733 XPLAKE8175 ⇗ @diderius6 ⇗ @infuscomus
How can I install Intel HD Graphics for Haswell CPUs on Broadwell (i5 5200u) (Intel HD Graphics 5500). Here is the original igxp32.inf:



XPLAKE8175 has attached files to this post
#1734 infuscomus ⇗ @diderius6

I looked at server 2003 x64 checked acpi.sys - I am now 90% certain I jumped the wrong function

If I recall correctly, the forced jump should be just after PciInterfacesInstantiated?
#1735 diderius6 ⇗ @infuscomus

Yes, look in this thread here, you posted a nice picture I remember.
By the way, the acpi.sys for XP64 from ⇗ @skullteria contains another important part.
This can be put easy together, if you jump the right function
Dietmar
#1736 diderius6 ⇗ @XPLAKE8175
You can take a look, what DEV_  ID your device has on Broadwell (i5 5200u) cpu
and add this to the *.inf in this section

[IntelGfx.NTx86.5.1]

When this not works, I think it is nearly impossible
to mod the driver for an integrated graphikcard device but you can use external Grafikcard with support for XP

Dietmar
#1737 XPLAKE8175 ⇗ @diderius6
My DEV_ID: PCI\VEN_8086&DEV_1616
I added it to strings and got error 10.
#1738 diderius6 ⇗ @XPLAKE8175
Here it is, now the card will be recogniced
but if it works is another question
Dietmar

PS: Yes, with code 10 the driver does not start, I think no chance.



diderius6 has attached files to this post
#1739 AddFun What's the AGESA version on your Ryzen platforms guys?

I'm still stuck with 7b BSODs (Gigabyte AX370 Gaming 5) post GUI install. Can't get to desktop proper though. Tried all the different versions of modded .sys files posted here and same result.
#1740 diderius6 I succeed to get the XP64 i210 lan controller to work on the EVGA z390 board.
I remember, that the i210, i211 is very similar (Intel) to the 82579V
and this time it was true
Dietmar



diderius6 has attached files to this post

 

Page 117

#1741 infuscomus ⇗ @AddFun

I am on AMD AGESA to 1.0.0.6. - AB350 Gaming K4 BIOS 5.40
#1742 infuscomus ⇗ @diderius6

I made a 2nd attempt to patch ACPI x64 5048 for ryzen - based off of ⇗ @skullteria earlier version

I'm off to bed, I will test properly tomorrow



infuscomus has attached files to this post
#1743 diderius6 When we want UEFI boot for XP
what do you think is best
choice?

XP SP3 32 bit
XP 64 bit SP2
Winserver 2003 32 bit R2
Winserver 2003 64 bit R2

Dietmar
#1744 diderius6 ⇗ @Mov AX, 0xDEAD

On XP 64 bit SP2, the crazy clock shows also negativ values on z390 chipset.
Because I have no working tools for 64 bit,
can you please mod my english hal.dll (64 bit) here to use always the old clock
Dietmar



diderius6 has attached files to this post
#1745 daniel_k ⇗ @diderius6

Why don't patch the BIOS?
Are you running the latest version?

I can send the modified module for you to see.
#1746 diderius6 ⇗ @daniel_k

I also think first of Bios mod. I have version 0.92 (for XP)
from
⇗ https://forums.evga.com/EVGA-Z390-DARK-O...T-m2930290.aspx

on top of this site there.

I read here, that you can enable the TCO timer in Bios.
But I do not find this timer in any table
Dietmar
#1747 Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #1744
@Mov AX, 0xDEAD
can you please mod my english hal.dll (64 bit) here to use always the old clock


 
8B 0D 56 ED FD FF 8B C2  C1 E8 08 24 01 0F BA E2 0F 73 0C E8 98 03 FC FF  C6 05 91 EC FD FF 01 0F
0F EB 0C


 
8B 05 76 68 FD FF 8B C8  C1 E9 08 41 22 CC 0F BA E0 0F 73 0E 44 88 25 71  09 FD FF 44 88 25 8A 67
0F EB 0E



this mod for latest version 5.2.3790.4355, but in your old version bytes are same

#1748 kukonosau Unfortunately, BSOD(((
#1749 daniel_k In UEFITool, search for module 16D0A23E-C09C-407D-A14A-AD058FDD0CA1.

Extract body from PE32 image section..

FACP table is built at runtime, with hardcoded flags.

Dark BIOS doesn't have a setting to enable/disable HPET, right?

Change this

 
474B: C74070A5C60300         mov          d,[rax][070],00003C6A5



with this

 
474B: C74070A5C60300         mov          d,[rax][070],0000346A5
#1750 diderius6 ⇗ @Mov AX, 0xDEAD

Thank you, I found this jump and change it to EB,
but on restart XP 64 tells hal.dll is corrupt,
may be of wrong checksum.
I cant correct this checksum or maybe something is wrong with my halmod.dll
Dietmar

EDIT: I change at two places to EB, but still the message appears, that hal.dll is corrupt,
I think because of incorrect checksum. I have no tool for 64 bit, that corrects checksum.

EDIT2: With the tool setcsum.exe I succeed to correct the checksum and now
with correct running clock XP64 looks much more nice than before!

This file is the time correct working acpi hal.dll for XP64
version 5.2.3790.3959 (srv03_sp2_rtm.070216-1710),

Thanks a lot to ⇗ @Mov AX, 0xDEAD and ⇗ @daniel_k



diderius6 has attached files to this post
#1751 kukonosau How to install XP x64? ACPI is doesn't working on B350 chipset and AMD Ryzen 3 2200G!
#1752 daniel_k ⇗ @Mov AX, 0xDEAD

Thank you very much, managed to patch the x64 version.

However, I can't find any x64 DLL, SYS or EXE with sample code of wcslen and wcsncpy.

 
size_t wcsnlen(
const wchar_t *str, (RCX)
size_t numberOfElements (RDX)
);

size_t wcslen(
const wchar_t *str (RCX)
);



 
errno_t wcsncpy_s(
wchar_t *strDest, (RCX)
size_t numberOfElements, (R9) ???
const wchar_t *strSource, (R8)
size_t count (RDX) ???
);

wchar_t *wcsncpy(
wchar_t *strDest, (RCX)
const wchar_t *strSource, (RDX)
size_t count (R8) ???
);



Can you check if my assumptions are correct, please?

#1753 diderius6 ⇗ @daniel_k

A5C60300 => A5460300

interesting, there stays the flags of FACP in Bios, here for to disable HPET,

Guid: 16D0A23E-C09C-407D-A14A-AD058FDD0CA1
PE32
before I found this flags from FACP only in real Bios Hex but now I know the place via UEfi tool also

Dietmar
#1754 daniel_k ⇗ @diderius6

Did you ever try Vista on your systems?

There is a well known issue on Haswell and later systems. Services are not initialized properly. It seems sometimes the OS works fine, it's random.

Would it be timer related?

Ivy Bridge is the last architecture known to work properly with Vista.

Would be nice if we could fix it as well.
#1755 diderius6 ⇗ @daniel_k

I succeed to install Vista 32 bit and 64 bit on all Intel boards.
But on Ryzen only Vista 64 bit, because of not correct working acpi.sys

Dietmar

PS: The uncorrect timer affects even Win7. Some month ago I took a closer look to this.
For to test, if everything is ok, you can use the timer tool.
Not only the timer does not work correct. intelppm.sys has been fixed by ⇗ @Mov AX, 0xDEAD
which means, that the powermanagment is corrupt on all Intel boards from Skylake above.



diderius6 has attached files to this post

 

Page 118

#1756 Mov AX, 0xDEAD
Zitat von ⇗ daniel_k im Beitrag ¶ #1752

 
errno_t wcsncpy_s(
wchar_t *strDest, (RCX)
size_t numberOfElements, (R9) ???
const wchar_t *strSource, (R8)
size_t count (RDX) ???
);

Can you check if my assumptions are correct, please?



this one is not correct, order of arguments is always fixed if you call "offiicial" MS API, so right is RCX RDX R8 R9, 5th+ args on stack
⇗ https://en.wikipedia.org/wiki/X86_calling_conventions
#1757 Mov AX, 0xDEAD
Zitat von ⇗ daniel_k im Beitrag ¶ #1752

However, I can't find any x64 DLL, SYS or EXE with sample code of wcslen and wcsncpy.


wcslen - hdaudbus.sys (win7 x64)
wcsncpy - nvlddmkm.sys (nvidia vga driver)
wcsncpy_s - appwiz.cpl (win7 x64)
#1758 Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #1755
the powermanagment is corrupt on all Intel boards from Skylake above.

Now i think some acpi hardware functionality is disabled by bios vendors for some reason (recomendation from intel ?)
This functionality is not used anymore in WIN 7+, so nobody cares
#1759 diderius6 Even I get everything to work in XP 64bit SP2 5.2.3790.3959 on EVGA z390 dark board, 32 Gbyte memory,
Acpi, USB on each port, lan, graphik, sound, ahci, correct clock,
browser basilisk (nice), Moorhuhn, I got the feeling,
that XP SP3 is much more stable
Dietmar

EDIT: For me, I want to try UEFI boot for XP SP3.
#1760 PePilon Hi, everyone

In other thread ([Guide] How to install Windows XP OS on Modern Hardware), ⇗ @daniel_k just suggested to try:

"USB driver, you must use the one attached to the following post:

Windows XP SP3 32bit and modern PC parts (92) (originally this is an hyperlink, don't know how to paste here)

However, it's unlikely it will work for you because a patched DSDT table (part of ACPI table in BIOS) is needed."

Daniel kindly have personalized a bios for me to test in the motherboard GA-Z170-HD3 (Gigabyte)

After flashing, the driver installs, but it is still not operating. The error code 39 is displayed for VEN_8086&DEV_A12F&SUBSYS_50071458&REV_31 (Intel(R) USB 3.0 eXtensible Host Controller Windows)

Is there still any hope to have USB working on Windows XP?

Thanks in advance.

Paulo

PS: just read this, but will use dual boot: Windows XP and Windows 10. When using Windows 10, I need USB 3.0 working, of course...
⇗ https://www.intel.com/content/www/us/en/...t-software.html
#1761 daniel_k ⇗ @PePilon

Make sure you have USBD.SYS in the \Windows\System32\Drivers folder.

If you don't extract it from the XP install disc or \WINDOWS\Driver Cache\i386\Driver.cab.
#1762 daniel_k
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #1757
Zitat von ⇗ daniel_k im Beitrag ¶ #1752

However, I can't find any x64 DLL, SYS or EXE with sample code of wcslen and wcsncpy.


wcslen - hdaudbus.sys (win7 x64)
wcsncpy - nvlddmkm.sys (nvidia vga driver)
wcsncpy_s - appwiz.cpl (win7 x64)



I was searching in the XP x64 system folders.

Thanks, much appreciated.
#1763 daniel_k
Zitat von ⇗ diderius6 im Beitrag ¶ #1755
I succeed to install Vista 32 bit and 64 bit on all Intel boards.
But on Ryzen only Vista 64 bit, because of not correct working acpi.sys

Dietmar

PS: The uncorrect timer affects even Win7. Some month ago I took a closer look to this.
For to test, if everything is ok, you can use the timer tool.
Not only the timer does not work correct. intelppm.sys has been fixed by @Mov AX, 0xDEAD
which means, that the powermanagment is corrupt on all Intel boards from Skylake above.

I can install Vista after several tries.

About the intelppm.sys, doesn't it have the same effect as setting the XP's power scheme to Portable/Laptop?

I've been doing this for years, that's the only way to make C1E to work on a desktop.
#1764 PePilon The file was missing. Then I reinstalled... bingo!!! It worked.
But then show up another device in list... and I installed the same drive and... worked!!!

See the final results in picture attached. I really owe you one ⇗ @daniel_k !!!



PePilon has attached images to this post  ⇗ USB.PNG
#1765 diderius6 ⇗ @daniel_k

Have you been able to install Vista 32 bit on Ryzen board?
Did you change something in acpi.sys for to reach this,
Dietmar
#1766 daniel_k ⇗ @PePilon

Glad to know it works.

I've got an idea about the missing file.

PS: Yes, I'm brazilian and live in Sao Paulo.
#1767 daniel_k
Zitat von ⇗ diderius6 im Beitrag ¶ #1765
@daniel_k

Have you been able to install Vista 32 bit on Ryzen board?
Did you change something in acpi.sys for to reach this,
Dietmar

I don't have any AMD board here.

My last AMD system was an Athlon 64 3200+ / nForce 4 SLI.
Moved to Intel because of some strange BSODs while playing games.
Probably a bug in the CPU, chipset or both.

With the Intel system (E6400 + 965P), absolutely no BSODs.
#1768 daniel_k ⇗ @diderius6

Here is the RSTe 4.6.0.1085 x64. UPDATED, found 2 instructions incorrecly patched.

Please test it when possible.

Thanks to Mov AX, 0xDEAD, I've learned how to properly fix the function's arguments.

4.7.0.1098 will take a while, more than 120 changes. [oh2]

PS: Interesting that the RSTe 4.6 and 4.7 driver and the AMD AHCI 1.2.1.402 driver work on VirtualBox supporting 8 ports.
#1769 infuscomus ⇗ @diderius6

my 2nd attempt at ACPI x64 patch gives 7E BSOD

maybe my 1st attempt is correct and it is something else that is wrong?
#1770 canonkong ⇗ @diderius6 ⇗ @infuscomus
VIA USB MOD Driver For AMD 149C, you can test it , I test it for two days, not 01E BSOD untill now.
Link: ⇗ https://yadi.sk/d/vH7IVuyYPGbCPw

I used PEMAKER082 to checksum, but not sucessed. But it can work well. Use new driver Digital Signature.

 

Page 119

#1771 diderius6 ⇗ @daniel_k

I just test your new driver
RSTe_4.6.0.1085_x64_MOD.rar
on the EVGA z390 dark board with XP 64 bit.
It works:))!!
Have a nice day
Dietmar
#1772 infuscomus ⇗ @canonkong

MSISupported should be disabled for XP - XP does not support message signaled interrupts.
#1773 XPLAKE8175 If diderius6's igxp32 works I will request skylake drivers from diderius6.
#1774 Mov AX, 0xDEAD
Zitat von ⇗ daniel_k im Beitrag ¶ #1763

About the intelppm.sys, doesn't it have the same effect as setting the XP's power scheme to Portable/Laptop?
I've been doing this for years, that's the only way to make C1E to work on a desktop.

¶ Windows XP SP3 32bit and modern PC parts (14)
¶ Windows XP SP3 32bit and modern PC parts (19)
#1775 kukonosau Can you send me your Intel ACPI x64, please? May be, correctly work in Ryzen?! Modify Hal.dll doesn't help me.
#1776 diderius6 Here is the storahci driver,
which works really everywhere. I just give in the folder AMD64 its *.inf for 64 bit support.
AMD, Intel, 32 bit, 64 bit doesnt matter. Until now I do not find a board, where it does not work,
really generic.
Copy the newest version of storport.sys
to windows\system32\drivers and install. You can also make a txtsetup.oem
and integrate it to your XP installations CD. Dont forget storport.sys!
I tested it for XP 32 bit and XP 64 bit
Dietmar

EDIT: So much thank to ⇗ @skullteria !



diderius6 has attached files to this post
#1777 diderius6 ⇗ @infuscomus ⇗ @skullteria

I tested all acpi.sys 64 bit for XP I can found in the forum and also my own new one.
No one of them works on Ryzen board until now

Dietmar
#1778 infuscomus ⇗ @diderius6

maybe ACPI x64 has a different problem from ACPI x86?


my 2nd ACPI x64 patch attempt from post #1742 - did you get 7E BSOD?
#1779 diderius6 ⇗ @infuscomus

Yes, when all other is ok, it gives
BSOD 0x7E (0xC0000005, xxx, yyy).
My newest acpi.sys for 64 bit gives exact the same BSOD.

Dietmar

PS: My problem is, that I have no good tools for 64 bit. Even the 32 bit acpi.sys for Ryzen was as hard as possible,
for me I have no idea for acpi.sys Ryzen for 64 bit. Editing DSDT does not help for Ryzen until now.
After my experiance with XP 64 bit (sound in Moorhuhn is stottering, lan connection disables itself because it wants to save energy, brrr..)
I am not so very sad about it. I take a look at UEFI boot for XP SP3. I heard, that somebody succeed with Server 2003 RS2 32 bit(!) for UEFI boot,
but real XP SP3 is different.
#1780 infuscomus ⇗ @diderius6

here is that helpful thread i found for UEFI boot for XP, in case you forgot

⇗ https://www.betaarchive.com/forum/viewto...=20327&start=29

good luck.
#1781 diderius6 ⇗ @canonkong

I just test your modded USB driver from Via for XP SP3.
On the AMD board asrock fatal1ty ab350 gaming k4
with Ryzen 3700x it works absolut stable for DEV_149C.
For DEV_43BB the hub does not work (code 10).

On the asus prime x570-pro AMD board with Ryzen 1700
your driver runs stable for DEV_145C.

For DEV_149C with subsys 148C1022 it is also absolut stable.
For DEV_149C with subsys 87471043 the hub switches on and off

Dietmar
#1782 canonkong ⇗ @diderius6
DEV_43BB is belong to ASMedia. AMD 300/400 board chip bought from ASMedia, so they can use AMD 1.0.5.3 USB driver and ASMedia USB driver will better than others.
#1783 daniel_k
Zitat von ⇗ diderius6 im Beitrag ¶ #1771
@daniel_k

I just test your new driver
RSTe_4.6.0.1085_x64_MOD.rar
on the EVGA z390 dark board with XP 64 bit.
It works:))!!
Have a nice day
Dietmar

Thanks for the feedback!
#1784 daniel_k ⇗ @Mov AX, 0xDEAD

Thanks for clarifying.

There is really no way to patch the ACPI table so it would work as it should without patching the driver?


Can you please help me with this one?
PE64 also has relocation like PE32, right?

I understand PE32 relocation and know how to patch it without rebuild it all, but I have no idea about PE64.

Opened the .sys file in LordPE, but it gave no clues.

I'm afraid I have no room to properly patch some arguments, like this below.

I guess sometimes arguments can be provided before a call, right?

 
75B3B: 4C8D442430                     lea          r8,[rsp][030] -> const void *src
75B40: 498D8A98020000 lea rcx,[r10][000000298]
75B47: 41B901000000 mov r9d,1
75B4D: E82E360000 call 79180



 
79180: 48895C2410                     mov          [rsp][010],rbx
79185: 48896C2418 mov [rsp][018],rbp
7918A: 56 push rsi
7918B: 57 push rdi
7918C: 4154 push r12
7918E: 4156 push r14
79190: 4157 push r15
79192: 4883EC20 sub rsp,020 ;' '
79196: 4C8BA1E8980100 mov r12,[rcx][0000198E8]
7919D: 4C8BB1F8980100 mov r14,[rcx][0000198F8]
791A4: 488B9918990100 mov rbx,[rcx][000019918]
791AB: 4C8BF9 mov r15,rcx
791AE: 33C0 xor eax,eax
791B0: 418BE9 mov ebp,r9d
791B3: 8D4820 lea ecx,[rax][020]
791B6: 8D5014 lea edx,[rax][014] -> size_t destSize
791B9: 498BFC mov rdi,r12
791BC: F3AA rep stosb
791BE: 498BFE mov rdi,r14
791C1: B900090000 mov ecx,000000900
791C6: F3AA rep stosb
791C8: 498BBFE0980100 mov rdi,[r15][0000198E0]
791CF: B900020000 mov ecx,000000200
791D4: F3AA rep stosb
791D6: 498BCE mov rcx,r14 -> void *dest
791D9: 448BCA mov r9d,edx -> size_t count
791DC: 498BF0 mov rsi,r8
791DF: 48895C2450 mov [rsp][050],rbx
791E4: FF15761F0100 call memcpy_s



My solution would be:

 
75B3B: 4C8D442430                     lea          rdx,[rsp][030] -> const void *src
75B40: 498D8A98020000 lea rcx,[r10][000000298]
75B47: 41B901000000 mov r8d,1
75B4D: E82E360000 call 79180



 
79180: 48895C2410                     mov          [rsp][010],rbx
79185: 48896C2418 mov [rsp][018],rbp
7918A: 56 push rsi
7918B: 57 push rdi
7918C: 4154 push r12
7918E: 4156 push r14
79190: 4157 push r15
79192: 4883EC20 sub rsp,020 ;' '
79196: 4C8BA1E8980100 mov r12,[rcx][0000198E8]
7919D: 4C8BB1F8980100 mov r14,[rcx][0000198F8]
791A4: 488B9918990100 mov rbx,[rcx][000019918]
791AB: 4C8BF9 mov r15,rcx
791AE: 33C0 xor eax,eax
791B0: 418BE9 mov ebp,r9d
791B3: 8D4820 lea ecx,[rax][020]
791B6: 448D4014 lea r8d,[rax][014] -> size_t count
791BA: 498BFC mov rdi,r12
791BD: F3AA rep stosb
791BF: 498BFE mov rdi,r14
791C2: B900090000 mov ecx,000000900
791C7: F3AA rep stosb
791C9: 498BBFE0980100 mov rdi,[r15][0000198E0]
791D0: B900020000 mov ecx,000000200
791D5: F3AA rep stosb
791D7: 498BCE mov rcx,r14 -> void *dest
791DA: 498BF0 mov rsi,r8
791DD: 9090 nop
791DF: 48895C2450 mov [rsp][050],rbx
791E4: FF15761F0100 call memcpy



Can't patch this without moving down some instructions like mov          rdi,[r15][0000198E0] which obviously has relocation.

#1785 daniel_k ⇗ @diderius6

About the ReactOS' storahci, it's a shame it isn't feature complete.

 

Page 120

#1786 daniel_k ⇗ @diderius6

Updated RSTe_4.6.0.1085_x64_MOD, made some mistakes. Now is 100% correct.
¶ Windows XP SP3 32bit and modern PC parts (118)

Tested on VirtualBox.

Please try it again if possible.

By the way, how much RAM available does XP x64 shows in System Properties?

For some reason, here it shows only 15.9GB instead of the full 16.0 GB RAM.
#1787 skullteria
Zitat von ⇗ daniel_k im Beitrag ¶ #1785
@diderius6

About the ReactOS' storahci, it's a shame it isn't feature complete.



Reactos's storahci is incomplete. I adapted Storahci from Win 8 WDK and it work fine. I attached storahci x86 and amd64, and source code is avaliable on One-Core-API repository on github. Yes, i'm the creator of Shorthorn project (⇗ www.shorthornproject.com), One-Core-API and will create a reactos based system.

skullteria has attached files to this post
#1788 skullteria
Zitat von ⇗ daniel_k im Beitrag ¶ #1786
@diderius6

Updated RSTe_4.6.0.1085_x64_MOD, made some mistakes. Now is 100% correct.
¶ Windows XP SP3 32bit and modern PC parts (118)

Tested on VirtualBox.

Please try it again if possible.

By the way, how much RAM available does XP x64 shows in System Properties?

For some reason, here it shows only 15.9GB instead of the full 16.0 GB RAM.



It probably is system reserved, completly normal.
#1789 canonkong ⇗ @skullteria
What about USB XHCI Controller?
USB XHCI Driver Based on ReactOS Compiler: ⇗ https://yadi.sk/d/Bo_nQun4ryJXyQ
But not work on win7.
#1790 XPLAKE8175 How can I use iasl tool? I got an error while creating aml file.
#1791 XPLAKE8175 I'm using portable XP with AHCI drivers and I really want dsdt patch.
#1792 diderius6 ⇗ @XPLAKE8175

Take the iasl.exe from Mai 2019.

The error can happen, when you forget to set in DSDT.dsl for example "}"
always correct.
It can also happen, when a function is called with no argument.
In some DSDT this is used (bad program code).
You can use the force switch in iasl.exe, to make an *.aml file.
But for to look, if everything is ok,
redisassemble it one more time and compare this produced *.dsl with your original one.
If there is no real error, the code is identic
Dietmar
#1793 diderius6 ⇗ @canonkong

The usbxhci.sys has an unmatched import function to ntoskernl in XP SP3

MmAllocatePagesForMdlEx

May be ⇗ @daniel_k  ⇗ @Mov AX, 0xDEAD
can fix this.
It is very interesting, if this usbxhci from Reactos
works in XP

Dietmar
#1794 XPLAKE8175 I'm creating dsdt and ssdt aml files and got 0 kb file.
#1795 XPLAKE8175 ⇗ @diderius6
Method (_PS0, 0, Serialized)  // _PS0: Power State 0
{
If ((DVID == 0xFFFF))
{
Return (Zero)
}

Local2 = MEMB /* \_SB_.PCI0.XHC_.MEMB */
Local1 = PDBM /* \_SB_.PCI0.XHC_.PDBM */
If (OSYS >= 0x07D6)
{
PDBM &= 0xFFFFFFFFFFFFFFF9
}
Local3 = D0D3 /* \_SB_.PCI0.XHC_.D0D3 */
D0D3 = Zero
MEMB = XWMB /* \XWMB */
PDBM = (Local1 | 0x02)
OperationRegion (MCA1, SystemMemory, XWMB, 0x9000)
Field (MCA1, DWordAcc, Lock, Preserve)
{
Offset (0x80E0),
, 15,
AX15, 1,
Offset (0x8154),
, 31,
CLK2, 1,
Offset (0x816C),
, 2,
CLK0, 1,
, 11,
CLK1, 1
}

If ((PCHV () == LPTL))
{
MB13 = Zero
MB14 = Zero
CLK0 = Zero
CLK1 = Zero
}

If ((PCHG == One))
{
CLK2 = One
}

If (((PCHS == 0x02) && (PCHG == One)))
{
Local3 = XWMB /* \XWMB */
Local3 += 0x0510
OperationRegion (PSCA, SystemMemory, Local3, 0x40)
Field (PSCA, DWordAcc, Lock, Preserve)
{
PSC1, 32,
Offset (0x10),
PSC2, 32,
Offset (0x20),
PSC3, 32,
Offset (0x30),
PSC4, 32
}

While (((((PSC1 & 0x03F8) == 0x02E0) || ((PSC2 &
0x03F8) == 0x02E0)) || (((PSC3 & 0x03F8) == 0x02E0) || ((PSC4 &
0x03F8) == 0x02E0))))
{
Stall (0x0A)
}

Local4 = Zero
Local0 = (PSC1 & 0xFFFFFFFFFFFFFFFD)
If (((Local0 & 0x000203F9) == 0x02A0))
{
PSC1 = (Local0 | 0x80000000)
Local4 |= One
}

Local0 = (PSC2 & 0xFFFFFFFFFFFFFFFD)
If (((Local0 & 0x000203F9) == 0x02A0))
{
PSC2 = (Local0 | 0x80000000)
Local4 |= 0x02
}

Local0 = (PSC3 & 0xFFFFFFFFFFFFFFFD)
If (((Local0 & 0x000203F9) == 0x02A0))
{
PSC3 = (Local0 | 0x80000000)
Local4 |= 0x04
}

Local0 = (PSC4 & 0xFFFFFFFFFFFFFFFD)
If (((Local0 & 0x000203F9) == 0x02A0))
{
PSC4 = (Local0 | 0x80000000)
Local4 |= 0x08
}

If (Local4)
{
Sleep (0x65)
If ((Local4 & One))
{
Local0 = (PSC1 & 0xFFFFFFFFFFFFFFFD)
PSC1 = (Local0 | 0x00FE0000)
}

If ((Local4 & 0x02))
{
Local0 = (PSC2 & 0xFFFFFFFFFFFFFFFD)
PSC2 = (Local0 | 0x00FE0000)
}

If ((Local4 & 0x04))
{
Local0 = (PSC3 & 0xFFFFFFFFFFFFFFFD)
PSC3 = (Local0 | 0x00FE0000)
}

If ((Local4 & 0x08))
{
Local0 = (PSC4 & 0xFFFFFFFFFFFFFFFD)
PSC4 = (Local0 | 0x00FE0000)
}
}

AX15 = One
}

If (((PCHG == One) || ((PCHV () == WPTL) && (PCHP == 0x41))))
{
SWAI = Zero
SAIP = Zero
}

If (CondRefOf (\_SB.PCI0.XHC.PS0X))
{
PS0X ()
}

If (OSYS >= 0x07D6)
{
PDBM &= 0xFFFFFFFFFFFFFFFD
}
MEMB = Local2
PDBM = Local1
}

Is it work on my asus k555lb laptop?
#1796 diderius6 ⇗ @XPLAKE8175

Please tell me the Bios version of your asus k555lb laptop

Dietmar
#1797 XPLAKE8175 ⇗ @diderius6
Version 605
#1798 XPLAKE8175 ⇗ @diderius6
Did you find my DSDT patch for Asus k555lb (x555lb) version 605?
#1799 diderius6 ⇗ @daniel_k ⇗ @infuscomus

Daniel, your new driver works.
Todd, your acpi.sys 64 bit works on the asrock fatal1ty z370 gaming k6 board
as you can see.
By the way, XP64 is on this asrock board absolut stable. All works,
Dietmar


#1800 XPLAKE8175 ⇗ @diderius6
Please answer me did you find my XP compilant DSDT?

 

Page 121

#1801 infuscomus ⇗ @diderius6

so my ACPI x64 works for intel z370, thanks for letting me know.

I will try again to patch for AMD Ryzen.
#1802 XPLAKE8175 Now I need asl.exe
#1803 infuscomus ⇗ @XPLAKE8175

post #442 or #443 of this thread
#1804 Mov AX, 0xDEAD
Zitat von ⇗ daniel_k im Beitrag ¶ #1784

 
791D6: 498BCE                         mov          rcx,r14 -> void *dest
791D9: 448BCA mov r9d,edx -> size_t count
791DC: 498BF0 mov rsi,r8
791DF: 48895C2450 mov [rsp][050],rbx
791E4: FF15761F0100 call memcpy_s


Can't patch this without moving down some instructions like mov          rdi,[r15][0000198E0] which obviously has relocation.



You shift code, this is not i like, in this case i prefer more generic way (but more complex and need some knowledge of mapping segment)
1) extend code segment to max available (max is begin of next segment - 1 byte) in PE header
2) look in reloc table about possible reloc in calling memcpy_s (ff 15 76 1f 01 00   is  call   qword  PTR [rip+0x11f76] , so it is IP relative call and no need reloc)
3a) if no reloc replace CALL memcpy_s to CALL newcode to new code placed at end of segment
or
3b) replace CALL memcpy_s to JMP newcode to new code placed at end of segment
4) add new commands with any lengh (but dont use absolute adressing, otherwise you need patch reloc table)

 
newcode:
XX XX XX mov rdx, r8 (new *src <- old *src, 64b)
XX XX XX mov r8d,r9d (new count <- old count, 32b)
FF 15 XX XX XX XX call memcpy (your assembler must calculate offset between current ip and memcpy)
3a:
XX XX XX ret
3b:
XX XX XX jmp 791EA


Zitat

memcpy_s
2 RDX (destSize)
3 R8 (*src)
4 R9 (count)

memcpy:
2 RDX (*src)
3 R8 (count)
#1805 Andalu Hi all,
thanks a lot for your great job guys!

I know i'm a bit OT here but i need your help :)
i successfully installed Usb3.0 driver from daniel_k  on motherboard Gateway DX4870 (from acer aspire M3985, chipset B75) logically with XPSP3 :) both 'amd usb 3.0 root hub' and 'intel extensible host controller' are visible, but the usb3 ports work like usb2, the benchmark tests speed are too low for a really usb3.

My external disk too uses a blue led only when inserted on the Renesas usb3.0 pci card and always a white led when inserted in any usb2 and usb3 motherboard rear ports.
What's doesn't work correctly?


P.S.: my english is bad..sorry
#1806 diderius6 ⇗ @XPLAKE8175

I cant produce a working *.aml from this DSDT from Bios 605,
even I tried the old iasl version from September 2012
and also Bios vers 603

Dietmar

PS: There are other 64 bit constants in this method also,
so I think the DSDT should look like this one for XP.



diderius6 has attached files to this post
#1807 skullteria
Zitat von ⇗ canonkong im Beitrag ¶ #1789
@skullteria
What about USB XHCI Controller?
USB XHCI Driver Based on ReactOS Compiler: ⇗ https://yadi.sk/d/Bo_nQun4ryJXyQ
But not work on win7.


unfortunately, the source code from Win 10 has some missing functions, is not really easy to compile it...I need more time.

And, reactos xhci is broken, incomplete, can't be used.
#1808 XPLAKE8175 ⇗ @diderius6
Another issue your igxp32 driver still gets error code 10
#1809 Mov AX, 0xDEAD
Zitat von ⇗ daniel_k im Beitrag ¶ #1786

By the way, how much RAM available does XP x64 shows in System Properties?
For some reason, here it shows only 15.9GB instead of the full 16.0 GB RAM.

check with any e820 tool ram ranges, if is it 15.9 - bios claimed some ram
#1810 Mov AX, 0xDEAD Does anyone have a Longhorn x64 windows version <= 4042 ?
if yes, please share acpi.sy_
#1811 XPLAKE8175 How can I get september 2012 bios for my asus k555lb (x555lb)?
#1812 diderius6 ⇗ @XPLAKE8175

I think, it is because of the unknown imports.
Take a look with C:\iasl
how the other ssdt tables have to be connected to DSDT via the -e switch
Dietmar
#1813 infuscomus
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #1810
Does anyone have a Longhorn x64 windows version <= 4042 ?
if yes, please share acpi.sy_



⇗ @Mov AX, 0xDEAD

try here
⇗ https://winworldpc.com/product/windows-l...n-vis/pre-reset
#1814 XPLAKE8175 I downgraded my bios to version 603 and which dsdt table is true for my 603 version ami?
#1815 diderius6 ⇗ @XPLAKE8175

Place all SSDT/DSDT in a single directory (rename them to *.aml as you move them) and use a recent build of iasl to disassemble:

cd "to directory where you placed all SSDT/DSDT"
iasl -da -dl *.aml

Then work with the resulting *.dsl. You'll find you have less errors to deal with

Dietmar

PS: iasl -da -dl -fe refs.txt DSDT.aml SSDT*.aml

 

Page 122

#1816 XPLAKE8175 Getting syntax error.
#1817 XPLAKE8175 My dsdt decreases to 0kb.
#1818 daniel_k ⇗ @skullteria, nice job with the driver!

About the available system RAM, I know the system may reserve some amount.

However, concerning Windows XP x64 and Server 2003 32-bit with PAE enabled, it didn't happen with my H270 board.
It's the first time I've seen such behaviour.


⇗ @diderius6, ⇗ @Mov AX, 0xDEAD

Something has changed between 200 and 300 series chipsets.

Will see if something has changed in the ACPI tables.
#1819 daniel_k
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #1804

You shift code, this is not i like, in this case i prefer more generic way (but more complex and need some knowledge of mapping segment)
1) extend code segment to max available (max is begin of next segment - 1 byte) in PE header
2) look in reloc table about possible reloc in calling memcpy_s (ff 15 76 1f 01 00   is  call   qword  PTR [rip+0x11f76] , so it is IP relative call and no need reloc)
3a) if no reloc replace CALL memcpy_s to CALL newcode to new code placed at end of segment
or
3b) replace CALL memcpy_s to JMP newcode to new code placed at end of segment
4) add new commands with any lengh (but dont use absolute adressing, otherwise you need patch reloc table)


Thanks, I think I understand all your points.

Let me see what I can do.
#1820 daniel_k
Zitat von ⇗ Andalu im Beitrag ¶ #1805
Hi all,
thanks a lot for your great job guys!

I know i'm a bit OT here but i need your help :)
i successfully installed Usb3.0 driver from daniel_k  on motherboard Gateway DX4870 (from acer aspire M3985, chipset B75) logically with XPSP3 :) both 'amd usb 3.0 root hub' and 'intel extensible host controller' are visible, but the usb3 ports work like usb2, the benchmark tests speed are too low for a really usb3.

My external disk too uses a blue led only when inserted on the Renesas usb3.0 pci card and always a white led when inserted in any usb2 and usb3 motherboard rear ports.
What's doesn't work correctly?


P.S.: my english is bad..sorry

Make sure that the USB3 (XHCI) BIOS settings are properly configured.

Try the driver in this post:
¶ Windows XP SP3 32bit and modern PC parts (89)
#1821 XPLAKE8175 ⇗ @diderius6
iasl.exe shows me a syntax error at line 9134, 25964 and 29338.
#1822 diderius6 ⇗ @XPLAKE8175

Yes, for me was the same.
Make a try with post 1815
Dietmar
#1823 XPLAKE8175 ⇗ @diderius6
I got a different error named "compiler aborting due to syntax error(s).
#1824 Mov AX, 0xDEAD
Zitat von ⇗ daniel_k im Beitrag ¶ #1819

Thanks, I think I understand all your points.


more details:
1) hdaudbus.sys win7 x64
2) original pe header

.text - main code segment/section
.rdata - next segment
3) in memory .rdata will be mapped starting from 13000, .text starting from 1000
  max available size of .text is (13000-1000)=12000 in memory
4) size of filled .text in header is 110A4, we get unused mapped gap 0xF5C bytes (12000-110A4)
5) check limitation of our gap inside file:
  .text offset 400+ size 11200=11600 is offset of last byte of .text
  .rdata offset = 11600, so we have 0 additional free bytes
6) raw size .text is 11200 (size in file), this is max possible size for us
7) change virtual size 110A4=>11200 in pe header, we get unused GAP 0x15C bytes (11200-110A4) in file
8) remember about 110A4 adress, it is last byte of original payload, all after this byte and before start of .rdata is garbage and we will use it !!!
9) place new code starting from 110A4+1 virtual adress (110A4+1  -1000 +400 is offset in file)

unfortunately it may happen that the size of the payload (.text) will be almost equal to the size of raw size, in this case we have only few free bytes and we need find other way to allocate enough amount of bytes
#1825 Andalu
Zitat von ⇗ daniel_k im Beitrag ¶ #1820
Make sure that the USB3 (XHCI) BIOS settings are properly configured.

Try the driver in this post:
¶ Windows XP SP3 32bit and modern PC parts (89)

Thank you for reply ;)
there is not XHCI option in bios, the mobo comes from an acer pre-assembled pc and the bios has few options only.
I installed too the "Renesas_FINAL_NEW" and the rear ports are still seen as usb2 but now:
- Intel USB3.1 eXtensible Host Controller and Renesas Electronics Usb 3.0 Host Controller have a new advanced tab where i disabled USB 3.0 power saving features;
- i got the message "this storage device can work faster if connected to a usb 3.0 port" for every device connected to the rear usb3 ports.

Can i try something else?
#1826 skullteria Well, i made some tests of USBXHCI from Win8, add functions needed to the kernel. However, this driver has a call to security_cookie_check, only avaiable on Win8 or above (win 8 kernel init security cookie). So, i need from somebody make a fix of this function, removing security_cookie_check call. I will attatch driver on some hours.
#1827 diderius6 ⇗ @infuscomus

I make a new try with XP64 on Ryzen.
Always the same BSOD
0x0000007E (0xFFFFFFFFC0000005, xxx, yyy)

acpi.sys - Address xxx


Dietmar

PS: 0xC0000005: STATUS_ACCESS_VIOLATION indicates a memory access violation occurred, here by acpi.sys.

EDIT: May be, a reduce the memory to 2 Gbyte during setup will help. But I do not have a 2 GB ram stick.
May be, during setup the allowed memory for XP64 can be reduced to 2 Gbyte.
#1828 Mov AX, 0xDEAD
Zitat von ⇗ skullteria im Beitrag ¶ #1826
So, i need from somebody make a fix of this function, removing security_cookie_check call. I will attatch driver on some hours.

 
void security_check_cookie(DWORD PTR) {
return;
}
#1829 skullteria
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #1828
Zitat von ⇗ skullteria im Beitrag ¶ #1826
So, i need from somebody make a fix of this function, removing security_cookie_check call. I will attatch driver on some hours.

 
void security_check_cookie(DWORD PTR) {
return;
}





How add it to driver?
#1830 Mov AX, 0xDEAD
Zitat von ⇗ skullteria im Beitrag ¶ #1829
How add it to driver?

binary or source ?
if binary:
1) in import table remove check_cookie_xxx record from list
2) now original record will be not filled by loader, insert in these 4 bytes offset to any ret command
3) add 1 new reloc info with address of record

original call sec_xxx will load adr of subcall from patched record, call to it, return

 

Page 123

#1831 daniel_k ⇗ @Mov AX, 0xDEAD

Unfortunately there are just 5 free bytes, useless.

But I've got an idea: in the end of the .text section, there are dozens of strings separated by several CCh.

I'll move a couple together, update the address at the referenced code and use the "created" space.
#1832 daniel_k
Zitat von ⇗ Andalu im Beitrag ¶ #1825
there is not XHCI option in bios, the mobo comes from an acer pre-assembled pc and the bios has few options only.
I installed too the "Renesas_FINAL_NEW" and the rear ports are still seen as usb2 but now:
- Intel USB3.1 eXtensible Host Controller and Renesas Electronics Usb 3.0 Host Controller have a new advanced tab where i disabled USB 3.0 power saving features;
- i got the message "this storage device can work faster if connected to a usb 3.0 port" for every device connected to the rear usb3 ports.

Can i try something else?

What is the exact model of your system?
And country of purchase? Some models can only be found in the specific country support site.
#1833 infuscomus ⇗ @daniel_k

PETool 0.0.5 can insert extra space in-between sections, maybe it can help?

originally found here
⇗ https://msfn.org/board/topic/146529-pe-t...eating-patches/



infuscomus has attached files to this post
#1834 XPLAKE8175 I'm now using the rw utility for the XP compilant acpi and I found some strings named OSXP and OSYS. The OSXP string equals 0x10.
#1835 XPLAKE8175 ⇗ @diderius6
Getting same errors with SSDTs
#1836 diderius6 ⇗ @XPLAKE8175

Can you send me the new builded DSDT.dsl
from all the *.aml together
Dietmar
#1837 XPLAKE8175 ⇗ @diderius6
Here is my zip file with  my new DSDT.dsl and all aml files inside:



XPLAKE8175 has attached files to this post
#1838 Andalu
Zitat von ⇗ daniel_k im Beitrag ¶ #1832
What is the exact model of your system?
And country of purchase? Some models can only be found in the specific country support site.

My system was an Acer Aspire M3985 and i have kept only the motherboard from it, a IPIMB-AR Rev.1.02A with chipset B75. The country of purchase is Italy.

I also tried to install the driver "AMDXHCI_FINAL" on a Msi CSM-Q87M-E43 mobo but i got always error code 10 even if in bios the XHCI and EHCI options are both or alternatively enabled or disabled. Same results with the driver "Renesas_FINAL_NEW".

So strange, on the older mobo with no XHCI option in bios the drivers are loaded even if the usb3.0 ports work as usb2, on a newer mobo with XHCI/EHCI options in bios, the driver doesn't work.


Edit: the motherboard lga1155 B75 is "IPIMB-AR Rev:1.02A"
#1839 XPLAKE8175 ⇗ @diderius6
I sent you an ssdt.zip file please extract it.
#1840 Mov AX, 0xDEAD
Zitat von ⇗ daniel_k im Beitrag ¶ #1831
@Mov AX, 0xDEAD
Unfortunately there are just 5 free bytes, useless.


1) in drivers exist section INIT, this is also code section, but after driver initialised this memory is cleaned
to avoid this rename section to .text and make it in header nopageable and nondiscardable
or
2) create new code section, virtual adress must not overlap with existing sectons
#1841 infuscomus ⇗ @diderius6

i found debug builds of windows vista

⇗ https://www.getmyos.com/windows-vista-ho...arter-32-64-bit

hopefully you can use them to fix the ACPI bug for vista
#1842 diderius6 ⇗ @XPLAKE8175

I see, that 19 dependencies are solved
but still 10 are unsolved.
Make a new try with building a refs.txt
as in
⇗ https://hackintoshpro.com/patch-dsdt-hackintosh/

Dietmar
#1843 diderius6 ⇗ @infuscomus

This is a nice finding :))

Dietmar
#1844 XPLAKE8175 ⇗ @diderius6
SSDT files do not create a .dsl file. I think the 10 unsolved dependecies relates to the missing ssdt*.dsl. I created .aml of dsdt and ssdt* by RWeverything.
#1845 XPLAKE8175 I tried the more dangerous way: RWEverything.

 

Page 124

#1846 Mov AX, 0xDEAD
Zitat von ⇗ XPLAKE8175 im Beitrag ¶ #1845
I tried the more dangerous way: RWEverything.

dsdt in bios and on live system is not same !
RWEverything helps to show/extract which ssdts are used
#1847 XPLAKE8175 ⇗ @diderius6 ⇗ @Mov AX, 0xDEAD
I Extracted All DSDT/SSDTs in AIDA64 Engineer got 8 unresolved dependencies.
#1848 XPLAKE8175 ⇗ @diderius6 ⇗ @Mov AX, 0xDEAD

All DSDT/SSDTs were Extracted by AIDA64 (Recommended by patchers), got the text in dsdt.dsl,
iASL Warning: There were 41 external control methods found during disassembly, but only  33 were resolved (8 unresolved).
#1849 XPLAKE8175 ⇗ @diderius6 ⇗ @Mov AX, 0xDEAD
How can I find DSDT/SSDTs in my bios with a program? If there is a program available how can I extract all my DSDT/SSDTs?
#1850 diderius6 XPLAKE8175
I have had no Bios before,
where I need other SSDT tables.
Have you build a refs.txt file?
With its help, all unsolved dependencies are gone at once.
Problem in this is only to find the correct numbers.
When you use the iasl.exe from Sept 2012,
a lot of numbers are shown correct.
If I where at your place, i would read about refs.txt
on the hackintosh sites. They have the same problem and solved it for
a lot of Bios
Dietmar
#1851 Mov AX, 0xDEAD
Zitat von ⇗ XPLAKE8175 im Beitrag ¶ #1848
@diderius6 @Mov AX, 0xDEAD
iASL Warning: There were 41 external control methods found during disassembly, but only  33 were resolved (8 unresolved).

iasl -fe external.txt -e ssdt1 ssdt2 ... ssdtx -d dsdt.bin

external.txt (example for h110):
Zitat
External (AL6F, MethodObj, 0)
External (HLVT, MethodObj, 0)
External (P0L6, MethodObj, 0)
External (P1L6, MethodObj, 0)
External (P2L6, MethodObj, 0)
External (PS0X, MethodObj, 0)
External (PS2X, MethodObj, 0)
External (PS3X, MethodObj, 0)
External (_SB_.PCI0.PAUD.PUAM, MethodObj, 0)
External (_SB_.PCI0.XHC_.DUAM, MethodObj, 0)
External (_SB_.PCI0.XHC_.RHUB.INIR, MethodObj, 0)
External (_SB_.PCI0.SAT0.SDSM, MethodObj, 4)
External (MDBG, MethodObj, 1)
External (_SB_.TPM_.PTS_, MethodObj, 1)



if iasl found dependies in ssdt - ignore it, only dsdt is matter

#1852 Mov AX, 0xDEAD
Zitat von ⇗ XPLAKE8175 im Beitrag ¶ #1849
@diderius6 @Mov AX, 0xDEAD
How can I find DSDT/SSDTs in my bios with a program? If there is a program available how can I extract all my DSDT/SSDTs?

UEFIExtract
DSDT file has signature "DSDT" at begin
#1853 XPLAKE8175 ⇗ @Mov AX, 0xDEAD
How Can I add IT?
#1854 diderius6 ⇗ @XPLAKE8175

I found 54 SSDT tables in your Bios 605.

Just use UEFI tool and search with SSDT.

Only from the *.raw files you always extract body and rename them
ssd1.aml until ssd54.aml  .
Put them all together in one folder with DSDT.aml
and use the command line directed to that folder from
⇗ @Mov AX, 0xDEAD
Dietmar
#1855 XPLAKE8175 How can I find it? And I downgraded my bios to version 603
#1856 diderius6 ⇗ @XPLAKE8175

Download the same Bios as yours from website.
Download latest version of Uefi Tool from here.
Put them both in one folder.
Open this downloaded Bios with this Uefi Tool.
Type in header of Uefi Tool search SSDT. Disable mark unicode there.
At the bottom are all the places are shown with found word SSDT.
Click each of them (only those called "raw") and click "extract body", store them one by one in one folder with name ssdt1.aml until ssdt54.aml.
The same for DSDT,

Dietmar
#1857 XPLAKE8175 I got non-ascii characters error.
#1858 diderius6 ⇗ @XPLAKE8175

Some "raw" files may do not contain a valid SSDT table.
So, first add one, if no message about "non-ascii characters error"
appears the next and so on.
If for one table this message appears, just delete it.
Are you sure, that you chose "extract body" for each "raw" file
Dietmar
#1859 XPLAKE8175 I extracted files now I get AE_ALREADY_EXISTS Error.
#1860 diderius6 ⇗ @XPLAKE8175

⇗ https://www.tonymacx86.com/threads/solve...s-error.195653/

Dietmar

 

Page 125

#1861 XPLAKE8175 I'm Getting same error.
#1862 diderius6 ⇗ @XPLAKE8175

You can also use acpidump on this notebook
for to get the loaded tables direct from memory.
This makes sure, that no table is loaded double.

In the comment of this error you find an explanation,
which device is also the same in another SSDT table.
From this comes the error, only 1 SSDT table is allowed for each device,

Dietmar

PS: Make sure, that for each disassemble try you use a new folder with all
the unchanged SSDT.aml and DSDT.aml in it.
#1863 XPLAKE8175 ⇗ @diderius6
Is there any duplicate ssdt files in the zip and missing ssdts?



XPLAKE8175 has attached files to this post
#1864 XPLAKE8175 ⇗ @diderius6
Did you extract my attached ssdt/dsdt files? Did you find my duplicate SSDTs or missing ssdts?
#1865 diderius6 ⇗ @XPLAKE8175

Yes, I got it.

1,4,5,6,d,e,f,g,q,r,t,w are double ( I just delete them).

0,2,3,7,8,9,a,b,c,h,i,j,k,l,m,n,o,p,s,u,v,x,y,z are needed.

Dietmar

PS: Disassemble with  c:\iasl -e ssdt*.aml -d dsdt.aml

Then you mod dsdt.dsl as I told
and recompile it with c:\iasl dsdt.dsl   (your modded dsdt.dsl)



diderius6 has attached files to this post
#1866 XPLAKE8175 ⇗ @diderius6
I'm getting the same error but different error named failure creating object LONT. Here is the fully extracted SSDTs:



XPLAKE8175 has attached files to this post
#1867 XPLAKE8175 ⇗ @diderius6
Please send me the working dsdt.dsl.
#1868 XPLAKE8175 ⇗ @diderius6
Have you finished your work for my dsdt.dsl?
#1869 infuscomus ⇗ @XPLAKE8175

well I managed to get it to compile with iasl 20190703

I am inexperienced though, so I'm not sure if I broke anything

edit: also, i have not patched anything, just compiled.



infuscomus has attached files to this post
#1870 XPLAKE8175 How can I get stock bios on my asus x555lb version 2012.
#1871 diderius6 ⇗ @XPLAKE8175

Here is your modded DSDT.dsl and compiled dsdt.aml

for to awake from USB sleep

Dietmar



diderius6 has attached files to this post
#1872 XPLAKE8175 ⇗ @diderius6
Getting a5 error 0x00000001 and 0x00000002 again and again. The both acpi errors related with root resources.
#1873 diderius6 ⇗ @XPLAKE8175

With asl.exe it does not work (gives A5 BSOD on newer compis for unknown reason).
You have to integrate my modded DSDT to your original Bios with full Acpi support.
Or you use "MPS" for XP hitting F5 during setup, in this case asl.exe works, because no ACPI.
When it is only acpi related,
try my very first acpi.sys from December 2018

Dietmar



diderius6 has attached files to this post
#1874 diderius6 Today I start with XP SP3 UEFI boot.

I chose for this the board
GA-H110M-S2H
because I can flash Bios there easy, it has a COM port
and a XP friendly Bios, just a board where you can
install everything from XP to Win10.

My first test is, if I can install there any version of UEFI Vista 32 bit.

The first version of Vista, which has efi files is
'Longhorn' 6.0.5112.0) (beta1)
It has NTDETECT.COM, ntldr, bootmgr,
winldfw.efi, winnvram.efi.

The first Vista 32 bit,
which has full UEFI support is
''Longhorn'' 6.0.5219.0) (beta2)
It has bootmgr,
hibrsm32.efi, winldfw.efi, winnvram.efi,
bootmgfw.efi, bootmgr.efi.

The last version of Vista 32,
which has efi files is
''Longhorn'' 6.0.5472.5) (beta2)
It has bootmgr,
winload.efi, bootmgfw.efi, bootmgr.efi

Dietmar

PS: Also I will test, if it is possible,
to use the Win7(grub, bootia32.efi?), win8 32 bit efi files for UEFI boot of Vista, XP SP3.
#1875 Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #1874

GA-H110M-S2H
...
My first test is, if I can install there any version of UEFI Vista 32 bit.


most modern MB is uefi x64, so impossible run anything 32 bit

there is hard way to do this - write uefi translator, in case winxp it will emulate real-mode bios functions, translate to uefi x64 calls, switch cpu from 16-bit real-mode to x64 protected-mode and vice versa. Some like CSM module, but as custom uefi loader on disk

 

Page 126

#1876 diderius6 ⇗ @Mov AX, 0xDEAD

I see on a chinese Website, that they succeed with bootia32.efi

Dietmar

⇗ https://translate.google.com/translate?d...700262,15700265
#1877 infuscomus ⇗ @Mov AX, 0xDEAD

can we maybe work around this by using a linux bootloader like grub2 to start and then load the .efi files?
#1878 Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #1876

I see on a chinese Website, that they succeed with bootia32.efi


fake, uefi x64 can only load \EFI\BOOT\BOOTX64.EFI (maybe linux loaders too with special names like "grubx64.efi")
#1879 diderius6 Mov AX, 0xDEAD

"Some like CSM module, but as custom uefi loader on disk"

Have you ever seen something like a generic CSM module

Dietmar
#1880 infuscomus ⇗ @Mov AX, 0xDEAD

If you boot into grub2 64-bit in EFI mode with grubx64.efi, can you start 32-bit .efi executables from there?

like

chainloader (hd0,4)/efi/Boot/bootmgfw.efi

if bootmgfw.efi is 32-bit?
#1881 diderius6 May be, there is a way:
Is it possible, to flash into every 64 bit UEFI Bios
just the file BootIA32.efi
and start any 32 bit or 64 bit system now via this integrated
BootIA32.efi

Dietmar
#1882 Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #1879
Mov AX, 0xDEAD
"Some like CSM module, but as custom uefi loader on disk"
Have you ever seen something like a generic CSM module


i never heard about CSM projects, but anyone can see how it is implemented in real bioses (leaked 2013 sources from ami)
i know only about DUET, but this is emulation "uefi x64 over legacy bios"
#1883 Mov AX, 0xDEAD
Zitat von ⇗ infuscomus im Beitrag ¶ #1880

If you boot into grub2 64-bit in EFI mode with grubx64.efi, can you start 32-bit .efi executables from there?
like
chainloader (hd0,4)/efi/Boot/bootmgfw.efi
if bootmgfw.efi is 32-bit?

this is interesting, because centos/fedora x64 ISOs have separate loaders for uefi_x64 and uefi_ia32:
Zitat
BOOTIA32.EFI->grubia32.efi->grub.cfg
BOOTX64.EFI->grubx64.efi->grub.cfg



grub.cfg is same for both loaders and has command to load kernel:

Zitat
linuxefi /images/pxeboot/vmlinuz


vmlinuz is x64 kernel

seems exist way to run linux kernel with any uefi, but i dont understand how it works )

#1884 infuscomus ⇗ @Mov AX, 0xDEAD

XP x64 works in 64-bit UEFI at least - ⇗ https://www.betaarchive.com/forum/viewto...=20327&start=82
#1885 Mov AX, 0xDEAD
Zitat von ⇗ infuscomus im Beitrag ¶ #1884
@Mov AX, 0xDEAD
XP x64 works in 64-bit UEFI at least - ⇗ https://www.betaarchive.com/forum/viewto...=20327&start=82

yes, uefi x64 <-> os x64 and uefi x32 <-> os x32 works
diderius6 want to mix...
#1886 diderius6 ⇗ @Mov AX, 0xDEAD

⇗ https://wiki.ubuntuusers.de/Howto/Instal...auf_EFI-System/

Dietmar

PS: 64 bit Uefi Bios => runs 32 Bit OS
#1887 Mov AX, 0xDEAD chinese guy maked custom loader/grub2x64.efi(??) to run DOS, XP, GRUB4DOS, WIN32, WIN64
⇗ http://bbs.wuyou.net/forum.php?mod=viewthread&tid=373513
english comments with grub2x64.efi download link to ⇗ https://github.com/a1ive/grub/issues/2

maybe this is what we need or i wrong
#1888 skullteria Well, winload.exe on from longhorn 5048 until Vista 5307 won't work on real computer. When try load system, i get BILoadLibry 0x0000017. When i try some version up 5307, get A5 error. Somebody can try solve it , both BI error and A5? It is important use new loader on Xp/2003
#1889 infuscomus
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #1887
chinese guy maked custom loader/grub2x64.efi(??) to run DOS, XP, GRUB4DOS, WIN32, WIN64
⇗ http://bbs.wuyou.net/forum.php?mod=viewthread&tid=373513
english comments with grub2x64.efi download link to ⇗ https://github.com/a1ive/grub/issues/2

maybe this is what we need or i wrong



⇗ @Mov AX, 0xDEAD

nice find! Thanks!
I was looking for something that could boot FreeDOS in UEFI mode.
#1890 Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #1886
@Mov AX, 0xDEAD
⇗ https://wiki.ubuntuusers.de/Howto/Instal...auf_EFI-System/
PS: 64 bit Uefi Bios => runs 32 Bit OS

i've searched a little and found how it works - it is KERNEL magic )
if kernel compiled with special setting "CONFIG_EFI_MIXED", it can be runed in uefi_x32/uefi_x64 with special loader
⇗ https://cateee.net/lkddb/web-lkddb/EFI_MIXED.html
loader must have "EFI handover protocol" and grub2 probably implemented it as special command linuxelf in conf

linux-src-4.9\arch\x86\platform\efi\efi_thunk_64.S:
Zitat
/
* Support for invoking 32-bit EFI runtime services from a 64-bit
* kernel.
/



so linux kernel has own emulation layer x32<->x64

 

 

 

Page 127

#1891 diderius6 ⇗ @Mov AX, 0xDEAD ⇗ @infuscomus
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #1887
chinese guy maked custom loader/grub2x64.efi(??) to run DOS, XP, GRUB4DOS, WIN32, WIN64
⇗ http://bbs.wuyou.net/forum.php?mod=viewthread&tid=373513
english comments with grub2x64.efi download link to ⇗ https://github.com/a1ive/grub/issues/2

maybe this is what we need or i wrong

When I understand the discussion forum for this general grub2x64.efi correct,
XP SP3 can be just loaded via ntldr on a pur 64bit UEFI without any CSM support?

Only menu.lst with content
  
   root (hd0,0)
   chainloader /ntldr
   boot

Thats all?

Dietmar

PS: I am not good with syntax for grub. Where has

"If you boot into grub2 64-bit in EFI mode with grubx64.efi, can you start 32-bit .efi executables from there?

like

chainloader (hd0,4)/efi/Boot/bootmgfw.efi

if bootmgfw.efi is 32-bit?"

to stay this special grub2x64.efi ?

 

 

 

 

#1892 infuscomus ⇗ @diderius6

if this grub2x64.efi is able to boot XP ntldr directly then we wont need to use bootmgfw.efi or any other vista beta files.
#1893 Mov AX, 0xDEAD Presentation from Intel how linux kernel boot in mixed uefi mode



Mov AX, 0xDEAD has attached files to this post
#1894 diderius6 From the Betaarchive

Some Vista builds around Beta 2 actually have experimental UEFI support, and the winload.efi from 5219 x86 can actually boot XP.

So here is how to make it work.
Create two partition on the HDD, a C partition which is FAT for boot files, and a D partition which is NTFS for XP, make both partition as primary partition.
Install XP to D: in BIOS as normal.

Get these files from 5219 x86 ISO:
install.wim\Windows\System32\winload.efi
install.wim\Boot\EFI\Microsoft\BootMgr\bootmgfw.efi

Copy bootmgfw.efi to C:\EFI\Boot\bootia32.efi
and copy winload.efi to D:\Windows\System32

Then edit C:\boot.ini like this, change the path accordingly.
Yes, 5219 is one of the early builds that uses boot.ini in bootmgr instead of BCD.
Code:
[boot loader]
timeout=30
NOBCD
default=multi(0)disk(0)rdisk(0)partition(2)\WINDOWS
[operating systems]
multi(0)disk(0)rdisk(0)partition(2)\WINDOWS="Microsoft Windows XP Professional" /NOEXECUTE=OPTIN /FASTDETECT /USENEWLOADER

Then you should boot XP in EFI mode.
EDIT: On the Gigabyte h110m-s2h this Tutorial from betaarchive does not work.


Ok, when now you have a grub2, which can boot from any uefi 32 or Uefi 64bit Bios it should be done
Dietmar
#1895 Mov AX, 0xDEAD Another option is patching source code of boot- and os-loader (leaked Windows Shared Source).
For loading win_x32 on uefi_x64 we still need translation layer, but much easy to integrate it to existing sources.
#1896 Mov AX, 0xDEAD Video CSM Project ⇗ https://github.com/davidcie/VgaShim
#1897 diderius6 ⇗ @Mov AX, 0xDEAD

Can you compile the source code for win_x32 on uefi
for Win server 2003 and XP SP3? This would be a big step forward,

Dietmar

PS: Have you tried to boot XP from Vista Uefi files?
#1898 Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #1897
@Mov AX, 0xDEAD
Can you compile the source code for win_x32 on uefi
for Win server 2003 and XP SP3? This would be a big step forward,


these sources incomplete, need first reverse missing files (many .h and libs)
#1899 diderius6 ⇗ @Mov AX, 0xDEAD

With Win8 32bit, may be other can help you

Dietmar
#1900 Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #1899
@Mov AX, 0xDEAD
With Win8 32bit, may be other can help you


Sorry, i don't have motivation to do something with "pure" uefi booting since most desktop MBs still have CSM, that's enough for winxp.
only booting from single 3TB+ GPT disk is still an interesting problem
#1901 diderius6 ⇗ @daniel_k

I just do the USB mod in DSDT in Bios for full Intel chipset USB3 support on the

gigabyte h110m-s2h

board, works nice :))

Dietmar

#1902 diderius6 Seems, that there is an UEFI 32 bit Windows just now, which can start on Uefi 64 bit Bios

Dietmar

"WIMBoot is available for client editions of Windows 8.1 with Windows 8.1 Update only (not server versions). All architectures are supported, including amd64, x86, and ARM. Some enterprise deployment tools do not support WIMBoot.

WIMBoot is available only for UEFI-based PCs running in UEFI mode (legacy BIOS-compatibility mode isn't supported)."

"You can install and boot Windows 8 32bit UEFI, but it's not that simple. It involves using command prompt and a Windows PE 32 bit UEFI boot disk (if available) along with a 32 bit Windows WIM file.

The most easy way is to remove the hard disk (or ssd) and get a USB adapter for it and use another workstation to deploy the image. If this option is not available you will need to boot from the Windows PE disk 32 bit UEFI and have the wim image in that disk.

I'll try to keep the instructions as simple as possible. If you don't understand a term, you can google that. There's plenty of information available. If you don't have a wim file available google instructions on how to capture an OS image properly. The beauty of this is that it doesn't have to be UEFI, it can be BIOS, but it has to be 32 bit. I installed mine to a Virtual Machine then captured the wim file.

On CMD type diskpart
Type "list disk" so you know what disk you are going to format, then follow the next commands:

Select disk #
Clean

Convert GPT
Create partition MSR size=128
Create Partition EFI size=100
Format fs=fat32 quick Label="System"
Assign letter=S
Create Partition Primary
Format fs=ntfs quick label="Windows"
Assign letter=W
exit

Now it's time to apply the image using DISM

Dism /apply-image /imagefilae:(directory and filename of your wim file) index:#(the number of the image. If you used a captured image of your own, type 1, otherwise you'll need to know which one is it) /applydir:w:\

example:
dism /apply-image /imnagefile:x:\win832uefi.wim /index:1 /applydir:w:\

Wait until it finished. USB 2.0 can be quite slow.

Finally, this is the crucial part, adding the boot manager with UEFI support

w:\windows\system32\bcdboot w:\windows /f ALL /s S:

Voila! Install the HDD to your device or reboot and remove Windows PE media. You should be able to boot uefi 32 bit now.

Hope this helped. "

"After a bit of tampering with additional ISOs, I've realized that you can just replace the \sources\install.wim file on a Win 8/8.1/10 bootdisk with the one from Win7 to make it work.

   Just get a Win8/8.1/10 ISO
   Open it using an ISO-explorer (like UltraISO)
   Replace \sources\install.wim with that from the Win7 ISO/DVD
   Save as a new ISO, and/or burn it into the installation DVD or on a USB/external HDD active Fat32 partition.

The installation UI will be of the bootdisk's Win version, but it will certainly install Windows7."
#1903 daniel_k
Zitat von ⇗ infuscomus im Beitrag ¶ #1833
@daniel_k

PETool 0.0.5 can insert extra space in-between sections, maybe it can help?

originally found here
⇗ https://msfn.org/board/topic/146529-pe-t...eating-patches/

Thanks!
#1904 daniel_k ⇗ @Andalu

Did you the black USB 2.0 and blue USB 3.0 ports?

All ports work?

Just saw the service manual, there isn't much to be done if there are no settings available in BIOS Setup.
#1905 daniel_k
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #1840
Zitat von ⇗ daniel_k im Beitrag ¶ #1831
⇗ @Mov AX, 0xDEAD
Unfortunately there are just 5 free bytes, useless.


1) in drivers exist section INIT, this is also code section, but after driver initialised this memory is cleaned
to avoid this rename section to .text and make it in header nopageable and nondiscardable
or
2) create new code section, virtual adress must not overlap with existing sectons



Thanks for your suggestions, ⇗ @Mov AX, 0xDEAD!

Will try later, way too much work to patch 120+ calls.

 

Page 128

#1906 daniel_k ⇗ @diderius6, sent you a PM with something interesting for you to try.

PS: Nice job with your H110 board! Good luck with your UEFI x86 project!
#1907 diderius6 ⇗ @daniel_k

Yesssaa, nice:))
Do you have a link for this, is it your project

Dietmar
#1908 Andalu
Zitat von ⇗ daniel_k im Beitrag ¶ #1904
@Andalu

Did you the black USB 2.0 and blue USB 3.0 ports?

All ports work?

Just saw the service manual, there isn't much to be done if there are no settings available in BIOS Setup.

All ports of my two motherboards, including usb3, work correctly as usb2.

For the Msi CSM-Q87M-E43, although the two options XHCI hand-off and EHCI hand-off are available in the bios the driver don't install anyway and i got errore code 10 for the "Intel USB3.1 extensible host controller"; instead for the older mobo (IPIMB-AR Rev.1.02A from acer aspire M3985) with no XHCI and EHCI options available, the driver loaded correctly but usb3 ports act still as usb2.
The device ID are PCI\VEN_8086&DEV_8C31&CC_0C0330 for Msi CSM-Q87M-E43 and PCI\VEN_8086&DEV_1E31&CC_0C0330 for IPIMB-AR.

Thanks for your attention ;)
#1909 Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #1901

I just do the USB mod in DSDT in Bios for full Intel chipset USB3 support on the


what mod ? 64bit constants ->32 ?
#1910 diderius6 ⇗ @Mov AX, 0xDEAD

Yes, some 64bit constants cant live together with XP 32 bit until now in DSDT.
This is minimod for to awake USB on Intel chipset here for the gigabyte h110m-s2h board

Dietmar



diderius6 has attached files to this post
#1911 daniel_k ⇗ @diderius6, yeah, it's my project.

Shh, it's private, for now.

Sent you the link. Please give me your feedback by PM.
#1912 daniel_k ⇗ @Andalu, unfortunately, for now, I don't have any other suggestions.

What I can say is that at least it works in USB 2.0 mode in the Acer board. Better than nothing.

About the MSI board, will take a look at its ACPI table to see if there is something suspecting.

Mod the Acer BIOS may be too risky, I wouldn't do that, it's an old board, you may end up spending more money in case something goes wrong.
#1913 diderius6 ⇗ @daniel_k

For UEFI boot and I think all other steps of future XP this is a good base.
Very soon XP will be more modern than Win7.

Have you read in post above, that it is possible to
use all the *.efi from win8, 8.1, 10 for Win7 (also efi 32 bit on 64 bit Uefi Bios).
Just change on the installations medium the original install.wim
against your wished one.
I just try to use the x86 *.efi files from Win8 for a direct efi boot of Vista 32 bit
Dietmar
#1914 Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #1910
@Mov AX, 0xDEAD
Yes, some 64bit constants cant live together with XP 32 bit until now in DSDT.


ok i dont need this because i have this )
#1915 diderius6 ⇗ @Mov AX, 0xDEAD

Is this QWordConst_check code in your acpi.sys for XP SP3?
Have you tested, if this code overcomes the BSOD A5
during use of asl.exe with full acpi support uploading a modded DSDT
Dietmar
#1916 diderius6 ⇗ @daniel_k

I just have integrated the STORAHCI.sys driver from ⇗ @skullteria
from post 1020
and install it on the gigabyte h110m-s2h board

Dietmar
#1917 Andalu ⇗ @daniel_k

Thanks for your time ;)
#1918 Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #1915

Have you tested, if this code overcomes the BSOD A5
during use of asl.exe with full acpi support uploading a modded DSDT


this patch to _ParteIntObj allow use 0x0E opcode(QWORD_OP) in dsdt code, no more A5-C0140001 error for x64 constants.
for full functionality need set "0x0E record" in _OpcodeTable to _atDataObj (_atDataObj is record for integers types).
#1919 daniel_k ⇗ @diderius6 and all

Please use the driver in the archive AMDXHCI_XP_FINAL.rar.

It works just fine on Intel USB 3.x controllers on real machines and on VirtualBox with USB controller in 3.0 (XHCI) mode.

I've used a trick, so USBD.SYS is automatically installed if missing.


Updated with V2 (Dec 19, 2019):
- revised device check patch
- applied small bug fix to 32-bit (x86), as seen on newer 153 and later releases. 64-bit is not affected.
#1920 daniel_k ⇗ @diderius6

If I understand correctly and if Mov AX, 0xDEAD gave us all the required steps to add support for qwords, try the acpi.sys (checked/debug version included) or apply the changes to yours

 

Page 129

#1921 daniel_k
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #1809
Zitat von ⇗ daniel_k im Beitrag ¶ #1786

By the way, how much RAM available does XP x64 shows in System Properties?
For some reason, here it shows only 15.9GB instead of the full 16.0 GB RAM.

check with any e820 tool ram ranges, if is it 15.9 - bios claimed some ram


Which tool would you recommend?
Curious to see. Is it possible to tell the device the RAM is reserved to?
#1922 diderius6 ⇗ @daniel_k

I just test your mod  for qwords on acpi.sys on the Gigabyte board h110m-s2h.
There it gives BSOD 0x7B.
This BSOD belongs to the mod in the acpi.sys,
because with original acpi.sys it starts normal
and also with modded acpi.sys in "MPS" mode, means
without any acpi
Dietmar
#1923 diderius6 ⇗ @daniel_k ⇗ @Mov AX, 0xDEAD

During tests with the Gigabyte h110m-s2h board
I start to understand, how the asl.exe tool works.

asl.exe does nothing more, than to copy the wished DSDT.aml file
to HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ACPI\parameters.

In december last year I did heavy mod the DSDT table in Bios of h110, so that no need for mod
in acpi.sys was needed.
With this heavy modded Bios I noticed an interesting thing: asl.exe copies as usual the modded dsdt table to
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ACPI\parameters.
But now, on next reboot XP uses the original Bios DSDT, means not interested in the modded DSDT at
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ACPI\parameters.

Now it is clear: The mod in Bios with OSYS meets (blocks) a function, that XP needs for to use the DSDT in
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ACPI\parameters.
But because this function is blocked via OSYS for XP in Bios, the table cant be loaded
and so the original DSDT from Bios is used.

Conclusion: In this via Osys blocked function happens later the BSOD A5 of (asl.exe used before),
when XP can use it because of no block via OSYS

Dietmar
#1924 Mov AX, 0xDEAD
Zitat von ⇗ daniel_k im Beitrag ¶ #1921

Which tool would you recommend?
Curious to see. Is it possible to tell the device the RAM is reserved to?

best is use livecd with DOS + e820.exe/EXTINFO.EXE
worst is rweverything, it show e820 map other way

Mov AX, 0xDEAD has attached files to this post
#1925 Mov AX, 0xDEAD
Zitat von ⇗ daniel_k im Beitrag ¶ #1920
@diderius6
If I understand correctly and if Mov AX, 0xDEAD gave us all the required steps to add support for qwords, try the acpi.sys (checked/debug version included) or apply the changes to yours

1 hook _parseintobj in place like "dec   esi" (esi - opcode), comparing esi vs 0xe8 (given that the compiler has optimized the CASE statement in C Language and the esi is constantly decreasing), then restore original instruction and jmp back. I chose hook in instruction "sub esi, 0F3h" and replaced it to "jmp _QWordConst_check"
2 allocate free bytes in code section, add processing 0xe8 opcode (result.integer is just "+8")
3 add reloc to 0x2D368(0x1D368 RVA)
#1926 daniel_k ⇗ @Mov AX, 0xDEAD, thanks for the E820 tool.
#1927 Mov AX, 0xDEAD
Zitat von ⇗ daniel_k im Beitrag ¶ #1926

@diderius6, try both these, not sure if I following the logic correctly, so please try both.
At least it didn't crash here!

still no reloc, after acpi.sys mapped to some adress in high memory,  0x0E record in opcodetable still be "90 D2 02 00", so pointed to 0x0002d290
=> access violation err (
#1928 daniel_k ⇗ @Mov AX, 0xDEAD, oops, I was sleepy. so missed that!

⇗ @diderius6, try both these, not sure if I followed the logic correctly, so please try both.

At least it didn't crash here!
#1929 daniel_k ⇗ @diderius6, does my XP 2003 properly shows all RAM installed in System Properties?

If so, please run the utilities shared by Mov AX, 0xDEAD, in pure DOS:
¶ Windows XP SP3 32bit and modern PC parts (129)

To save the output, run
E820 > e820.txt
EXTINFO > extinfo.txt

Although I'm sure you know that. :D

I'd like to compare it with the output of my system, as follows:

 
E820 Dump Tool - Version 0.1.0 - Copyright(C) Mike Hou 2011
----------------------------------------------------------------
Base Address Length Type
-----------------------+------------------------------+---------
0: 0x00000000-00000000 (0x00000000-0009C400 ~ 625 KB) 1 (Memory)
1: 0x00000000-0009C400 (0x00000000-00003C00 ~ 15 KB) 2 (Reserved)
2: 0x00000000-000E0000 (0x00000000-00020000 ~ 128 KB) 2 (Reserved)
3: 0x00000000-00100000 (0x00000000-3FF00000 ~ 1023 MB) 1 (Memory)
4: 0x00000000-40000000 (0x00000000-00400000 ~ 4 MB) 2 (Reserved)
5: 0x00000000-40400000 (0x00000000-74F90000 ~ 1 GB) 1 (Memory)
6: 0x00000000-B5390000 (0x00000000-00001000 ~ 4 KB) 4 (NVS)
7: 0x00000000-B5391000 (0x00000000-00001000 ~ 4 KB) 2 (Reserved)
8: 0x00000000-B5392000 (0x00000000-080CC000 ~ 128 MB) 1 (Memory)
9: 0x00000000-BD45E000 (0x00000000-004FB000 ~ 4 MB) 2 (Reserved)
10: 0x00000000-BD959000 (0x00000000-000B3000 ~ 716 KB) 1 (Memory)
11: 0x00000000-BDA0C000 (0x00000000-003C3000 ~ 3 MB) 4 (NVS)
12: 0x00000000-BDDCF000 (0x00000000-01230000 ~ 18 MB) 2 (Reserved)
13: 0x00000000-BEFFF000 (0x00000000-00001000 ~ 4 KB) 1 (Memory)
14: 0x00000001-00000000 (0x00000003-3F000000 ~ 12 GB) 1 (Memory)
15: 0x00000000-BF000000 (0x00000000-01000000 ~ 16 MB) 2 (Reserved)
16: 0x00000000-F0000000 (0x00000000-08000000 ~ 128 MB) 2 (Reserved)
17: 0x00000000-FE000000 (0x00000000-00011000 ~ 68 KB) 2 (Reserved)
18: 0x00000000-FEC00000 (0x00000000-00001000 ~ 4 KB) 2 (Reserved)
19: 0x00000000-FED00000 (0x00000000-00001000 ~ 4 KB) 2 (Reserved)
20: 0x00000000-FEE00000 (0x00000000-00001000 ~ 4 KB) 2 (Reserved)
21: 0x00000000-FF000000 (0x00000000-01000000 ~ 16 MB) 2 (Reserved)
----------------------------------------------------------------



 
Extended Memory:
INT $15, AH=$88
Memory above 1M: 0 Kb
INT $15, AX=$E801
Free memory between 1M and 16M, in K: 0 Kb
Free memory above 16M, in 64K blocks: 0 = 0 Kb
Configured memory between 1M and 16M, in K: 0 Kb
Configured memory above 16M, in 64K blocks: 0 = 0 Kb
INT $15, EAX=$0000E820
0000000000000000 : 000000000009C400 1 (Available)
000000000009C400 : 0000000000003C00 2 (Reserved)
00000000000E0000 : 0000000000020000 2 (Reserved)
0000000000100000 : 000000003FF00000 1 (Available)
0000000040000000 : 0000000000400000 2 (Reserved)
0000000040400000 : 0000000074F90000 1 (Available)
00000000B5390000 : 0000000000001000 4 (ACPI NVS)
00000000B5391000 : 0000000000001000 2 (Reserved)
00000000B5392000 : 00000000080CC000 1 (Available)
00000000BD45E000 : 00000000004FB000 2 (Reserved)
00000000BD959000 : 00000000000B3000 1 (Available)
00000000BDA0C000 : 00000000003C3000 4 (ACPI NVS)
00000000BDDCF000 : 0000000001230000 2 (Reserved)
00000000BEFFF000 : 0000000000001000 1 (Available)
0000000100000000 : 000000033F000000 1 (Available)
00000000BF000000 : 0000000001000000 2 (Reserved)
00000000F0000000 : 0000000008000000 2 (Reserved)
00000000FE000000 : 0000000000011000 2 (Reserved)
00000000FEC00000 : 0000000000001000 2 (Reserved)
00000000FED00000 : 0000000000001000 2 (Reserved)
00000000FEE00000 : 0000000000001000 2 (Reserved)
00000000FF000000 : 0000000001000000 2 (Reserved)



Can't speak of the Z390, but the Z370 (where I ran the tools) is virtually the same as other 200 series chipsets.

#1930 diderius6 ⇗ @daniel_k

About the last acpi-test1.sys, acpi-test2.sys
they both show BSOD A5 (0x11,..) without any asl.exe
on asrock fatalty k6 board
and on the EVGA z390 board,
which Bios is XP friendly
Dietmar

PS: Correcting this BSOD A5 (0x11,..) together with mod from other, working acpi.sys,
changes the situation to BSOD A5 (0x7B,..)
#1931 daniel_k ⇗ @diderius6, remember that Mov AX, 0xDEAD's patch is for qwords only.

It only affects the USB DSDT fix.

ToInteger and other opcodes may still crash Windows.

Please run E820 and EXTINFO on your H110 board, when possible.
#1932 Mov AX, 0xDEAD
Zitat von ⇗ daniel_k im Beitrag ¶ #1929

3: 0x00000000-00100000 (0x00000000-3FF00000 ~ 1023 MB) 1 (Memory)
5: 0x00000000-40400000 (0x00000000-74F90000 ~   1 GB) 1 (Memory)
8: 0x00000000-B5392000 (0x00000000-080CC000 ~ 128 MB) 1 (Memory)
14: 0x00000001-00000000 (0x00000003-3F000000 ~  12 GB) 1 (Memory)

Can't speak of the Z390, but the Z370 (where I ran the tools) is virtually the same as other 200 series chipsets.

total is 14.1, waste is about 2 gb ?
this bios is not good, it doesnt advertise memory in region 0x8000 0000-0xFFFF FFFF (2G) and no extend this claimed region in high pae ranges (limited to 0x3 3F00 0000)
#1933 daniel_k Mov AX, 0xDEAD

Does it has something to do with my GTX 980 4GB?

Maybe my ACPI table patch is not correct?!

Or if there is something wrong in DOS, the same can be seen on Windows?
#1934 diderius6 ⇗ @daniel_k ⇗ @Mov AX, 0xDEAD

This is via Freedos 1.1 life CD on the gigabyte h110m-s2h board with 32 GByte ram
Dietmar





#1935 daniel_k ⇗ @diderius6, thanks!

In the second picture, #3, there are 3GB (Memory), while on my Z370 there is only 1GB.

Can you do the same on the Z370 and Z390, when you have time.

Any system with 2x 8GB sticks?

 

Page 130

#1936 diderius6 ⇗ @daniel_k

I have only 1,2*4GB
or 1,2,3,4 *16GB

Dietmar
#1937 diderius6 ⇗ @daniel_k

This is from asrock fatal1ty z370 gaming k6 board, also 32 Gb ram

Dietmar



#1938 diderius6 ⇗ @daniel_k

And this is from EVGA Z390 DARK, also 32 Gb ram

Dietmar



#1939 diderius6 ⇗ @daniel_k

On all 3 compis device manager shows 31.9 Gbyte free
on your nice XP/ 2003 32 bit project.

When I use 4 Gb ram, they all show there 3.9 Gbyte free

Dietmar
#1940 Mov AX, 0xDEAD
Zitat von ⇗ daniel_k im Beitrag ¶ #1933
@Mov AX, 0xDEAD
Does it has something to do with my GTX 980 4GB?

i dont think so, seems bug in bios or maybe hardware limitation (?)

my h110 4G system:
Zitat
3	0000000000100000  00000000B3D44000  1:Available
6 00000000B3E46000 0000000007DF5000 1:Available
12 0000000100000000 000000003F400000 1:Available


in low memory available 2877+125 =3002Mb, in high pae 1012Mb, total 4014Mb ~ 4096Mb
in my case bios set some hardware mapping(?) to translate cpu "physical adresses" above first 4G range to "low" ramchip physical lines, because ram is 4G and has relative 0x0-0xFFFF FFFF adressing only

#1941 daniel_k
Zitat von ⇗ diderius6 im Beitrag ¶ #1939
@daniel_k

On all 3 compis device manager shows 31.9 Gbyte free
on your nice XP/ 2003 32 bit project.

When I use 4 Gb ram, they all show there 3.9 Gbyte free

Dietmar


Thank you very much for your tests.

Do any of your graphics cards have 4GB of memory?
#1942 diderius6 ⇗ @daniel_k

"Do any of your graphics cards have 4GB of memory?"

No

Dietmar
#1943 daniel_k ⇗ @Mov AX, 0xDEAD, thank you very much for helping us and sharing your knowledge.

Now I understand how ACPI.SYS processes the opcodes and calls a specific function for every opcode.

I was wondering, as I still don't have the knowledge to do it myself, wouldn't it be possible to add support for CreateQWordFieldOp by using the same function that processes CreateDWordFieldOp?

I mean, by adding code to handle the 64-bit address or to "extract" only the lower 32-bit portion of it and later use it as usual. Would it work somehow?
#1944 daniel_k ⇗ @diderius6, as my GTX 980 has 4GB of memory, surely it is the culprit.
#1945 Mov AX, 0xDEAD
Zitat von ⇗ daniel_k im Beitrag ¶ #1943

I was wondering, as I still don't have the knowledge to do it myself, wouldn't it be possible to add support for CreateQWordFieldOp by using the same function that processes CreateDWordFieldOp?


CreateQWordFieldOp is just creating field and no more, yes it is possible add new opcode, but it useless
fields actual used in other procs like _ReadField/_ReadFieldObj/... and need heavy patch it to support 64b fields

after i discovered "vista beta acpi.sys" anyone can add new opcode handlers to classic winxp acpi.sys, but only 32 bit integers betas is compatible with winxp. 1) copy bytes from existing acpi.sys 2) add relocs 3) create missing structs 4) add missing import or replace with internal impelemtation

that's how I made my acpi.sys but took the code from win7 x32 (converted back 64-int logic to 32-int)
#1946 daniel_k ⇗ @Mov AX, 0xDEAD, what I was trying to say is:

The following ACPI "lines" crashes XP:

 
If (LEqual (M64L, Zero))
{
CreateQWordField (BUF0, \_SB.PCI0._Y0F._LEN, MSLN) // _LEN: Length
Store (Zero, MSLN) /* \_SB_.PCI0._CRS.MSLN */
}
Else
{
CreateQWordField (BUF0, \_SB.PCI0._Y0F._LEN, M2LN) // _LEN: Length
CreateQWordField (BUF0, \_SB.PCI0._Y0F._MIN, M2MN) // _MIN: Minimum Base Address
CreateQWordField (BUF0, \_SB.PCI0._Y0F._MAX, M2MX) // _MAX: Maximum Base Address
Store (M64L, M2LN) /* \_SB_.PCI0._CRS.M2LN */
Store (M64B, M2MN) /* \_SB_.PCI0._CRS.M2MN */
Subtract (Add (M2MN, M2LN), One, M2MX) /* \_SB_.PCI0._CRS.M2MX */
}



- add CreateQWordField, which actually calls CreateDWordField.

- Patch Store so it will ignore higher order address and just copy the lower 32-bit part.

- XP is tricked into thinking we are working with 32-bit addresses.

#1947 Mov AX, 0xDEAD
Zitat von ⇗ daniel_k im Beitrag ¶ #1946

- add CreateQWordField, which actually calls CreateDWordField.
- Patch Store so it will ignore higher order address and just copy the lower 32-bit part.
- XP is tricked into thinking we are working with 32-bit addresses.


This trick will work.
no need touch "store" because in winxp all ints are 32, so M64L/M64B/Zero is 32 too
#1948 daniel_k
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #1947
Zitat von ⇗ daniel_k im Beitrag ¶ #1946

- add CreateQWordField, which actually calls CreateDWordField.
- Patch Store so it will ignore higher order address and just copy the lower 32-bit part.
- XP is tricked into thinking we are working with 32-bit addresses.


This trick will work.
no need touch "store" because in winxp all ints are 32, so M64L/M64B/Zero is 32 too





From what I understand, that was the reply I expecting.

6F680200-40BA0200-8A
1- Function address
2- Opcode "CreateDwordField" String
3- Opcode

Can I put my new opcode anywhere between two already existing opcodes?
#1949 daniel_k ⇗ @diderius6, are you following the posts?

I've had an idea about a trick and Mov AX, 0xDEAD said it will work.

Wanna give it a try?

It converts CreateQwordField into CreateDwordField.

Basically I've added CreateQwordField opcode pointing to CreateDwordField function.

Maybe this helps with X570?

Do you have a board with stock BIOS?
#1950 diderius6 ⇗ @daniel_k

Half year ago, I have had the same idea to change CreateQwordField into CreateDwordField.
But just renaming was not enough and because I am no programmer I do not have the possibility
to make it work.
So I am just happy, when it can be done.
What do you mean with "stock Bios"
Dietmar

PS: Of course I will test. We only make big advantages, when we work together!

 

Page 131

#1951 daniel_k ⇗ @diderius6

Whoa, I was not the first then?

I'm asking you to test because currently only have this PC built and with modded BIOS, so I can't keep flashing back and forth because I have some work to do.
Just clarifying I'm not lazy or something.

By stock BIOS I mean unpatched DSDT.

So it would be to test your H110, 'cause the Z370 has the ToInteger opcode, which crashes XP. Remember that patched DSDT I've sent to you?
#1952 diderius6 ⇗ @daniel_k

The opcode

                       Switch (ToInteger (Arg2))

can be changed to

                       Switch (Arg2)

The compiler then cries, but set it to integer without using the ACPI 2.0 word ToInteger.

So, please tell me, what board should I use for test with which Bios

Dietmar

PS: Yes, I can flash now any Bios on any board forward and back, as much as I like.
#1953 daniel_k ⇗ @diderius6, please try on the H110 with the unmodded (original) BIOS.

So I'll add ToInteger to ACPI.SYS, which will call Switch.

If this works, no more DSDT hacking needed!

EDIT: Switch does not exist in ACPI.SYS. Does XP ignores this? Will check ACPI specs.
#1954 diderius6 ⇗ @daniel_k

Last acpi-test1.sys  gives on original Bios F25
on the gigabyte h110m-s2h board

BSOD 0x000000A5 (0x00000011, 0x00000008, xxx, yyy)

Dietmar

PS: The same BSOD for last acpi-test2.sys.

0x11 : ACPI_SYSTEM_CANNOT_START_ACPI The system could not enter ACPI mode
    8 : Failed to load DDB


EDIT: It is the same BSOD, problem, as around the post 217 here. I solved it there with unconditional jmp EB in acpi.sys.
#1955 daniel_k ⇗ @diderius6

Need to work some more. Thanks for testing it.

I've got an idea about ToInteger, replace with Return.

EDIT: Nevermind, I've got an idea, so I can try without messing with BIOS.

I'm leaving for now, have a good night, Dietmar!
#1956 diderius6 ⇗ @daniel_k

"Does DSDT can be modded in VirtualBox? Did you ever try?"

I think yes, but the results on real compi may be different
Dietmar
#1957 Mov AX, 0xDEAD
Zitat von ⇗ daniel_k im Beitrag ¶ #1948

6F680200-40BA0200-8A
1- Function address
2- Opcode "CreateDwordField" String
3- Opcode


Not exactly, record begin with "40BA0200" - offset to string representation
8a - opcode
64BA0200 - offset to "CCN", encoded types of arguments (char,char, int ?)
02 - i dont know
.....
FF680200 - offset to handler, _CreateDWordField

if no need create new implementation, for CreateQWordField enough set 0x8F record same as 0x8A =>"10 CA 02 00"
then opcode 0x8f is equivalent of 0x8a
#1958 Mov AX, 0xDEAD
Zitat von ⇗ daniel_k im Beitrag ¶ #1953

Switch does not exist in ACPI.SYS. Does XP ignores this? Will check ACPI specs.


switch()+case() is no real commands
switch (Arg0) -> case (0x04) {...} is set of low level command like _T_1 = Arg0, if If (_T_1 == 0x04) then {...}
_T_1 - temp variable
#1959 diderius6 BSOD 0x000000A5 (0x00000011, 0x00000008, xxx, yyy)

has nothing to do with

CreateQWordField.

When you dont patch your DSDT against reserved word from Acpi 2.0
CreateQWordField

you get classical BSOD
A5 (0x3,c0140001,xxx,yyy)

Dietmar
#1960 Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #1956
@daniel_k
"Does DSDT can be modded in VirtualBox? Did you ever try?"
I think yes, but the results on real compi may be different


dsdt is hardcoded in Vbox (VBoxDD.dll)
old qemu 1.6 load dsdt from file acpi-dsdt.aml if runed with "-M pc" (but qemu is slow and no gui)
#1961 Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #1959
BSOD 0x000000A5 (0x00000011, 0x00000008, xxx, yyy)
has nothing to do with
CreateQWordField.


apply your previous patches, this acpi.sys is classic v5512 from xp sp3
#1962 daniel_k ⇗ @Mov AX, 0xDEAD, thanks!

⇗ @diderius6, the "other" qword patch is causing the crashes.

This one boots here. Try it on your H110.
#1963 daniel_k ⇗ @Mov AX, 0xDEAD

Can you please confirm this code flow is correct, please?

 
2B1D0: 83FE02                         cmp          esi,2
2B1D3: 740B jz .2B1E0 -> THIS IS CORRECT?
2B1D5: 81EEF3000000 sub esi,0000000F3
2B1DB: E976D9FFFF jmp .28B56
2B1E0: 8B31 mov esi,[ecx]
2B1E2: 8B36 mov esi,[esi]
2B1E4: 897208 mov [edx][8],esi
2B1E7: 830108 add d,[ecx],8
2B1EA: E9ADD9FFFF jmp .28B9C
#1964 diderius6 ⇗ @daniel_k

This acpi.sys gives on the Gigabyte board H110 with original Bios F25

A5 (0x3, xxx, c0140001, yyy)

which is the BSOD for unknow words from ACPI 2.0 for XP

Dietmar
#1965 daniel_k ⇗ @diderius6

I'll take a look at the DSDT.


⇗ @Mov AX, 0xDEAD

Did you try this method? What was the outcome?

 

Page 132

#1966 daniel_k ⇗ @diderius6, it crashes because of this:

 
            Device (NVM1)
{
Name (_ADR, 0x00C1FFFF) // _ADR: Address
Method (_INI, 0, NotSerialized) // _INI: Initialize
{
NITV = NIT1 /* \NIT1 */
NPMV = NPM1 /* \NPM1 */
NPCV = NPC1 /* \NPC1 */
NL1V = NL11 /* \NL11 */
ND2V = ND21 /* \ND21 */
ND1V = ND11 /* \ND11 */
NLRV = NLR1 /* \NLR1 */
NLDV = NLD1 /* \NLD1 */
NEAV = NEA1 /* \NEA1 */
NEBV = NEB1 /* \NEB1 */
NECV = NEC1 /* \NEC1 */
NRAV = NRA1 /* \NRA1 */
NMBV = NMB1 /* \NMB1 */
NMVV = NMV1 /* \NMV1 */
NPBV = NPB1 /* \NPB1 */
NPVV = NPV1 /* \NPV1 */
NRPN = NRP1 /* \NRP1 */
NCRN = Zero
ARPC (NRPN, RefOf (PWRG), RefOf (RSTG), RefOf (SCLK)) ---> CULPRIT
}
...



Method ARPC has an ToInteger opcode.

There are 3 instances of that command line (NVM1, NVM2 and NVM3)

#1967 Mov AX, 0xDEAD
Zitat von ⇗ daniel_k im Beitrag ¶ #1963
@Mov AX, 0xDEAD
Can you please confirm this code flow is correct, please?
 
2B1D0: 83FE02                         cmp          esi,2
2B1D3: 740B jz .2B1E0 -> THIS IS CORRECT?

2B1E0: 8B31 mov esi,[ecx]


correct, jz if esi == 2 (esi was decreases to -0x0c before)
#1968 diderius6 ⇗ @Mov AX, 0xDEAD  ⇗ @daniel_k

I tried integrate my own mod for acpi.sys.

acpi-test1.sys gives with my mod then again the BSOD A5 (0x3, xxx, c0140001, yyy) for unknown words from Acpi 2.0
acpi-test2.sys gives then BSOD 0x7B

Dietmar
#1969 daniel_k ⇗ @Mov AX, 0xDEAD, thanks!

⇗ @diderius6, try this one, added ToInteger as Return.

It is not correct, but the "best" one I could find.

With the original BIOS from Gigabyte, did it worked before just with your patches?

Please download the file again.
#1970 diderius6 ⇗ @daniel_k

I have to disable via OSYS also
                  
ConcatenateResTemplate

Dietmar

PS: ToInteger is just ignored from original acpi.sys from XP Sp3.
#1971 diderius6 ⇗ @daniel_k

ConcatenateResTemplate

seems to be the reason,
your last acpi.sys gives also
BSOD A5 (0x3, xxx, c0140001, yyy) for unknown words from Acpi 2.0

Dietmar
#1972 daniel_k ⇗ @diderius6, no, ConcatenateResTemplate is not required.

Just disable via OSYS the following:

ARPC (NRPN, RefOf (PWRG), RefOf (RSTG), RefOf (SCLK))

You can see this in BIOS from many manufacturers.

Hmm, ToInteger does crashes Server 2003. Are you sure?

This one also cause crashes:

 
        Method (HCID, 1, Serialized)
{
Name (_T_1, Zero) // _T_x: Emitted by ASL Compiler
Name (_T_0, Zero) // _T_x: Emitted by ASL Compiler
If (OSYS >= 0x07D6)
{
While (One)
{
_T_0 = ToInteger (Arg0)
If (_T_0 == Zero)
{
Local0 = L0SM /* \L0SM */
}
ElseIf (_T_0 == One)
{
Local0 = L1SM /* \L1SM */
}
ElseIf (_T_0 == 0x02)
{
Local0 = L2SM /* \L2SM */
}
Else
{
Local0 = L3SM /* \L3SM */
}

Break
}

While (One)
{
_T_1 = ToInteger (Local0)
If (_T_1 == Zero)
{
Return ("INT3471")
}
ElseIf (_T_1 == One)
{
Return ("INT33BE")
}
ElseIf (_T_1 == 0x02)
{
Return ("INT3476")
}
ElseIf (_T_1 == 0x03)
{
Return ("INT3477")
}
ElseIf (_T_1 == 0x04)
{
Return ("INT3474")
}
ElseIf (_T_1 == 0x05)
{
Return ("INT3473")
}
ElseIf (_T_1 == 0x06)
{
Return ("INT3475")
}
ElseIf (_T_1 == 0x07)
{
Return ("INT3478")
}
ElseIf (_T_1 == 0x08)
{
Return ("INT3479")
}
ElseIf (_T_1 == 0x09)
{
Return ("INT347A")
}
ElseIf (_T_1 == 0x0A)
{
Return ("INT347B")
}
ElseIf (_T_1 == 0x0B)
{
Return ("OVTI2742")
}
ElseIf (_T_1 == 0x0C)
{
Return ("OVTI9234")
}
ElseIf (_T_1 == 0x0D)
{
Return ("OVTI8856")
}
ElseIf (_T_1 == 0x0E)
{
Return ("OVTIF860")
}
Else
{
Return (GRID (Arg0))
}

Break
}
}
Else
{
Return ("INT3471")
}
}
#1973 daniel_k ⇗ @diderius6, it isn't that easy, unfortunately.

That's enough for today.
Good night.
#1974 diderius6 ⇗ @daniel_k

I just take a look at my last mod for the Gigabyte board.
In the DSDT table,

I only isolate via OSYS

CreateQWordField
ConcatenateResTemplate (may be no need for isolate)


The same was true for all the other boards for XP SP3,
where I modded DSDT table,
CopyObject (may be no need for to isolate) has to be isolated too, when it appears


Dietmar

PS: This was mod for unknown words from Acpi2.0.
But other errors in DSDT I hacked with my acpi.sys from december 2018.
This one works everywhere, only not for Ryzen boards. This was a really hard job.

EDIT: I forget to tell, that at critical places in DSDT I replace
               Switch (ToInteger (Arg0))  =>  Switch (Arg0)

After this mod of the DSDT table on the Giga board H110, I can use the normal acpi.sys from XP SP3 (without any mod).


See post 138, 139.
#1975 daniel_k ⇗ @diderius6, please try this ACPI.SYS LH Beta 5048.

It was crashing with error 0x3, c0140008.

It boots here just fine (XP and Server 2003), however there is a conflict in PCI bridge, which causes my GPU not being detected, also Intel XHCI also doesn't work, code 10.

Don't know if it is because of my modded DSDT.

Please try it on your H110 with original DSDT.
#1976 infuscomus ⇗ @diderius6 ⇗ @daniel_k ⇗ @Mov AX, 0xDEAD

what are we doing with acpi.sys? don't we already have a patched acpi.sys from longhorn 5048 that works?
#1977 Mov AX, 0xDEAD
Zitat von ⇗ infuscomus im Beitrag ¶ #1976
@diderius6 @daniel_k @Mov AX, 0xDEAD
what are we doing with acpi.sys? don't we already have a patched acpi.sys from longhorn 5048 that works?

I told how to add ACPI 2.0 opcodes to classic winxp's acpi.sys.
5048 still doesnt support QWordConst opcode, see ¶ Windows XP SP3 32bit and modern PC parts (21) , this opcode used in _ps0 of XHCI
#1978 diderius6 ⇗ @daniel_k

I test your acpi.sys 5048 mod.
The gigabyte h110m-s2h board with original BIOS F25 starts with ACPI support.
But there is no graphikcard and on one PCI-to-PCI bridge (yellow exclamation mark) told,
not enough resources. When you look at the IRQ,
they go only up to 19.
The Intel USB does not work (code 10).
And the tool asl.exe copies DSDT to HKLM\CurrentControlSet\services\acpi\parameters
but does not work any longer with this acpi.sys (also no BSOD)

Dietmar
#1979 diderius6 daniel_k

Against BSOD A5(0x03, xxx, C0140008, yyy) in acpi.sys 32 bit 5048 from Longhorn
is easiest hack
BF080014C0B8  =>  BF00000000B8
Dietmar

PS: But this does not help on the Giga board H110.
DEV_1901 is the PCIe controller (standard PCI-to-PCI bridge with yellow mark)
and because of this no Graphikcard.
#1980 kukonosau Do you check acpi for Windows XP x86 or x64 Edition?

 

Page 133

#1981 kukonosau Thanks for acpi for x86! But what is motherboard resources in device manager? This is normally?
#1982 diderius6 ⇗ @kukonosau

I have no good tools for 64 bit.
So, idea is the same,
but just try and error :))

Dietmar
#1983 kukonosau But not BSOD A5. Device error. I forgot. Long text in screen. acpi.sys is corrupted.
#1984 diderius6 ⇗ @daniel_k
May be, the not working PCIe driver
is, because pci.sys from 5048 has an unfullfilled dependency
to ntoskrnl.exe (it is compatible to winserver 2003 but not XP SP3)
KeIpiGenericCall

Dietmar

EDIT: Exact the same error is with modded acpi.sys 5048 for
XP 64 bit. The device DEV_1901 (PCIe) cant start, because of not enough resources.
So, with unmodded DSDT and modded acpi.sys from 5048, also no graphik card in XP 64bit
on the Gigabyte h110m-s2h board.

⇗ https://docs.microsoft.com/en-us/windows...eipigenericcall

EDIT: The not working device DEV_1901 (PCIe) belongs to acpi.sys 5048,
because in "MPS" mode without any acpi, this device and the graphicard work.
#1985 infuscomus ⇗ @diderius6

I recall ⇗ @XPLives saying he encountered this problem aswell during his testing.

any possibility for a fix?
#1986 Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #1978

The gigabyte h110m-s2h board with original BIOS F25 starts with ACPI support.
But there is no graphikcard and on one PCI-to-PCI bridge (yellow exclamation mark) told,
not enough resources. When you look at the IRQ, they go only up to 19.


check hidden virtual devices "Motherboard resource" in Device Manager
one of these may conflict with pci-vga, in my case it was ACPI\PNP0C02\IOTRAPS and conflict with IO Ports 0xFF00-0xFFFF
so i set resources to zero in dsdt for this acpi device
#1987 daniel_k ⇗ @Mov AX, 0xDEAD, interesting that, with XP's ACPI.SYS there is no conflict.

⇗ @diderius6, managed to add QWordConst opcode. It's attached, if you wanna try it.

Now USB3 works, unfortunately there still conflict in PCI bridge.

What a shame, with this patch 5048 supports ALL opcodes used on my Z370's DSDT.
#1988 daniel_k ⇗ @diderius6, can you try the modded ACPI.SYS above on your Ryzen?
#1989 diderius6 ⇗ @daniel_k

Yesssaaa, nice job,
on the Giga H110 board now all USB works with unmodded DSDT:))!
Only PCIe DEV_1901 still not works
Dietmar

PS: Now I test your acpi.sys 5048 on Ryzen.
#1990 diderius6 For the not working PCIe (graphikcard)

E/A-Bereich FF00 - FFFE wird verwendet von:
 \Driver\VgaSave
 PCI Standard-PCI-zu-PCI-Brücke

ACPI\PNP0C02\IOTRAPS

Dietmar
#1991 Mov AX, 0xDEAD
Zitat von ⇗ daniel_k im Beitrag ¶ #1987

managed to add QWordConst opcode. It's attached, if you wanna try it.


MS did _parseintobj right, but forget add 0x0e to opcodetable, very strange
#1992 Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #1990

For the not working PCIe (graphikcard)
E/A-Bereich FF00 - FFFE wird verwendet von:
 \Driver\VgaSave
 PCI Standard-PCI-zu-PCI-Brücke
ACPI\PNP0C02\IOTRAPS


Welcome to Club )
⇗ https://github.com/MovAX0xDEAD/ACPI-Patc...AT/iotr_fix.dif
#1993 Mov AX, 0xDEAD
Zitat von ⇗ daniel_k im Beitrag ¶ #1987
@Mov AX, 0xDEAD, interesting that, with XP's ACPI.SYS there is no conflict

i dont know how you run original acpi.sys with original _crs of IOTR Device (on intel mb this acpi virtual device generate conflict)
original _crs has ConcatenateResTemplate opcode, so it was commented/patched some way
#1994 diderius6 ⇗ @Mov AX, 0xDEAD

I tried to disable ACPI\PNP0C02\IOTRAPS
in registry of XP
and also in devicemanager (motherboard resources)
but without success.
May be, that can be done without modding DSDT
Dietmar
#1995 daniel_k ⇗ @Mov AX, 0xDEAD, that's what I don't get.

 
        Device (IOTR)
{
Name (_HID, EisaId ("PNP0C02") /* PNP Motherboard Resources */) // _HID: Hardware ID
Name (_UID, "IoTraps") // _UID: Unique ID
Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
{
Local0 = ResourceTemplate ()
{
}
Name (BUF0, ResourceTemplate ()
{
IO (Decode16,
0x0000, // Range Minimum
0x0000, // Range Maximum
0x01, // Alignment
0xFF, // Length
_Y21)
})
Name (BUF1, ResourceTemplate ()
{
IO (Decode16,
0x0000, // Range Minimum
0x0000, // Range Maximum
0x01, // Alignment
0xFF, // Length
_Y22)
})
Name (BUF2, ResourceTemplate ()
{
IO (Decode16,
0x0000, // Range Minimum
0x0000, // Range Maximum
0x01, // Alignment
0xFF, // Length
_Y23)
})
Name (BUF3, ResourceTemplate ()
{
IO (Decode16,
0x0000, // Range Minimum
0x0000, // Range Maximum
0x01, // Alignment
0xFF, // Length
_Y24)
})
CreateWordField (BUF0, \_SB.PCI0.IOTR._CRS._Y21._MIN, AMI0) // _MIN: Minimum Base Address
CreateWordField (BUF0, \_SB.PCI0.IOTR._CRS._Y21._MAX, AMA0) // _MAX: Maximum Base Address
CreateWordField (BUF1, \_SB.PCI0.IOTR._CRS._Y22._MIN, AMI1) // _MIN: Minimum Base Address
CreateWordField (BUF1, \_SB.PCI0.IOTR._CRS._Y22._MAX, AMA1) // _MAX: Maximum Base Address
CreateWordField (BUF2, \_SB.PCI0.IOTR._CRS._Y23._MIN, AMI2) // _MIN: Minimum Base Address
CreateWordField (BUF2, \_SB.PCI0.IOTR._CRS._Y23._MAX, AMA2) // _MAX: Maximum Base Address
CreateWordField (BUF3, \_SB.PCI0.IOTR._CRS._Y24._MIN, AMI3) // _MIN: Minimum Base Address
CreateWordField (BUF3, \_SB.PCI0.IOTR._CRS._Y24._MAX, AMA3) // _MAX: Maximum Base Address
AMI0 = ITA0 /* \ITA0 */
AMA0 = ITA0 /* \ITA0 */
AMI1 = ITA1 /* \ITA1 */
AMA1 = ITA1 /* \ITA1 */
AMI2 = ITA2 /* \ITA2 */
AMA2 = ITA2 /* \ITA2 */
AMI3 = ITA3 /* \ITA3 */
AMA3 = ITA3 /* \ITA3 */
If (ITS0 == One)
{
ConcatenateResTemplate (Local0, BUF0, Local1)
Local0 = Local1
}

If (ITS1 == One)
{
ConcatenateResTemplate (Local0, BUF1, Local1)
Local0 = Local1
}

If (ITS2 == One)
{
ConcatenateResTemplate (Local0, BUF2, Local1)
Local0 = Local1
}

If (ITS3 == One)
{
ConcatenateResTemplate (Local0, BUF3, Local1)
Local0 = Local1
}

Return (Local0)
}
}

 

Page 134

#1996 daniel_k ⇗ @Mov AX, 0xDEAD, please take a look at my patched DSDT.

Search for 07D6 for my patches.



daniel_k has attached files to this post
#1997 daniel_k ⇗ @Mov AX, 0xDEAD, is there anything special to be done when replacing an API Function call with a Local Function call?

I'm trying to patch Vista beta 4008, which has one missing import, whose code is really simple.

Original:

 
3A122: 894610                         mov          [esi][010],eax
3A125: 0FB6C0 movzx eax,al
3A128: 50 push eax
3A129: E8920FFFFF call HalConvertIdtToIrql
3A12E: 83661C00 and d,[esi][01C],0
3A132: 884614 mov [esi][014],al



My patch:

 
3A122: 894610                         mov          [esi][010],eax
3A125: 0FB6C0 movzx eax,al
3A128: 50 push eax
3A129: E8E2610000 call 40310
3A12E: 83661C00 and d,[esi][01C],0
3A132: 884614 mov [esi][014],al


40310: 8B442404 mov eax,[esp][4]
40314: C1E804 shr eax,4
40317: 83C004 add eax,4
4031A: C20400 retn 4
#1998 Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #1994

I tried to disable ACPI\PNP0C02\IOTRAPS
in registry of XP
and also in devicemanager (motherboard resources)
but without success.
May be, that can be done without modding DSDT


before patching dsdt i too tried to disable in devmanager with no sucess
seems no way to disable acpi device, windows think that these devices are not PnP, if this device have _DIS method it maybe possible (imho)
#1999 Mov AX, 0xDEAD
Zitat von ⇗ daniel_k im Beitrag ¶ #1995
@Mov AX, 0xDEAD, that's what I don't get.
       Device (IOTR)
Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
If (ITS0 == One)
{
ConcatenateResTemplate (Local0, BUF0, Local1)
Local0 = Local1
}


how you runed this with original acpi.sys ?
#2000 daniel_k ⇗ @Mov AX, 0xDEAD, yes, works just fine here with XP SP3 and Server 2003 SP2.
#2001 Mov AX, 0xDEAD dancing with IOTRAPS:
win7 x64, IO range = Only One adress 0xFF00


winxp 32 orig acpi.sys+acpi2.0 opcodes,  IO range = Only One adress 0xFF00:


in both OS device manager show different range 0-254:
#2002 diderius6 ⇗ @daniel_k

Your new acpi.sys 5048 mod does not work with Ryzen
BSOD 7E (0xC0000005,..)

Dietmar

PS: Now I try to implement jmp EB from Infuscomus there also.
#2003 daniel_k ⇗ @Mov AX, 0xDEAD, that's with and Z370.

Even with my older H270, there was no problem at all.

Just remembered something.

I've got this issue when I've modded the Z370 BIOS (ME firmware) and run the board with an i7-7700. Did this while waiting for an i7-8770K.

When the 8770K arrived, flashed original BIOS with usual mods, which you can see in the table above and resource conflict was gone.
#2004 daniel_k ⇗ @Mov AX, 0xDEAD, what does this mean (on XP)?


On Win7 is exactly the same as yours above.
#2005 Mov AX, 0xDEAD
Zitat von ⇗ daniel_k im Beitrag ¶ #2004
@Mov AX, 0xDEAD, what does this mean (on XP)?

this mean device has no resources (_crs failed), but no way to know how it was failed
as you can see in aml code, _crs return ResourceTemplate filled by "start" and "end" ranges
#2006 daniel_k ⇗ @Mov AX, 0xDEAD

Somehow I was Lucky with that one. Maybe it's the Gigabyte implementation?

Can you shine some light here, please?
¶ Windows XP SP3 32bit and modern PC parts (134)
#2007 diderius6 Here comes the nice acpi.sys from ⇗ @daniel_k
which now also works on Ryzen thanks to ⇗ @infuscomus
just tested:)) on 3700x
Dietmar

File acpi.sys for Ryzen see post 2012, works also, I tested.

#2008 Mov AX, 0xDEAD
Zitat von ⇗ daniel_k im Beitrag ¶ #1997

I'm trying to patch Vista beta 4008, which has one missing import, whose code is really simple.
Original:
 
3A129: E8920FFFFF                     call         HalConvertIdtToIrql



My patch:

 
3A129: E8E2610000                     call        40310

40310: 8B442404 mov eax,[esp][4]
40314: C1E804 shr eax,4
40317: 83C004 add eax,4
4031A: C20400 retn 4


1) "e8 xx" is relative adressing, its OK. At adress  HalConvertIdtToIrql is some like "jmp dword [_imp_HalConvertIdtToIrql]" ?
2) retn 4 - depends on original HalConvertIdtToIrql, if it pop stack back, then this OK
#2009 Mov AX, 0xDEAD trying to decode what _crs return:
47 - Small resource item , 4=io port type, 7 - lengh
01 - 16-bit adressing
00 FF - Min posible adress
00 FF - Max posible adress
01 - Aligment is 1 byte
FF - Numbers of adresses
79 - End Tag
41 - Checksum

Aida browser was wrong, device claimed 255 adresses
#2010 daniel_k ⇗ @Mov AX, 0xDEAD

1) Yes

2) Sorry, don't understand. You mean pop stack back in the original function itself or in the code after the call?

 

Page 135

#2011 Mov AX, 0xDEAD
Zitat von ⇗ daniel_k im Beitrag ¶ #2010
@Mov AX, 0xDEAD
2) Sorry, don't understand. You mean pop stack back in the original function itself or in the code after the call?

in original HalConvertIdtToIrql, if it return with "ret 4" it's ms cdecl convection
if "pop/add esp" somewhere after 3A129 it's stdcall
#2012 daniel_k ⇗ @diderius6

That's great!

Are there any functional changes between this and XP 5512? IRQ ranges?

Please delete your above and use the file I've attached.

There were some unnecessary changes I made.

I've already applied ⇗ @infuscomus fix.
#2013 diderius6 ⇗ @daniel_k

"Are there any functional changes between this and XP 5512? IRQ ranges"

Yes, here Irqs went up to 55 (acpi.sys XP 5512 only up to 19)

Dietmar
#2014 daniel_k ⇗ @Mov AX, 0xDEAD, thanks, unfortunately it didn't work.
I've tried another approach, 4008 seems just incompatible with XP.
#2015 daniel_k ⇗ @Andalu

Here is the fix for USB3 on the Q87.

Rename \WINDOWS\Driver Cache\i386\sp3.cab to something else.

Delete \WINDOWS\system32\DllCache\acpi.sys

Copy and overwrite ACPI.SYS in \WINDOWS\system32\Drivers

Restart and install the USB driver, if not already installed.
#2016 AddFun Tried the new ACPI from post #2012 on my WinXP SP3 partition (that I got to the post GUI install stage but never to desktop) but all I got was the usual 7B BSOD

0x0000007B (0xBACC3524, 0x0000034, 0x00000000, 0x00000000)

Ryzen 1600X on a Gigabyte AX370 Gaming 5
#2017 AddFun Alright, nlited a NEW disk with same post #2012 ACPI along with proper AHCI drivers. Got through the entire install only to get dropped onto a blank blue wallpaper screen (Not BSOD). Greeted with this ACPI 7E BSOD upon reboot (safe mode or not, same BSOD). Technically, the WinXP install is complete.

#2018 Andalu ⇗ @daniel_k

After renaming sp3.cab, overwriting acpi.sys and restarting, the microsoft management console process doesn't find any driver for the yellows  USB2.0 Hub (Vid_05e3&Pid_0610) and USB3.1 Hub (Vid_05e3&Pid_0612); it continues infinitely to search with no success (no difference on automated, manual and forced driver installation); if i click on 'cancel' or 'back' the process hangs and it needs to be killed manually.
Thanks again for your patience.
#2019 daniel_k ⇗ @Andalu, forgot that you need to rename back SP2.CAB.

Do those hubs were detected upon reboot after replacing ACPI.SYS?

If so, the driver for them is part of the AMDXHCI package.
#2020 daniel_k ⇗ @Mov AX, 0xDEAD, wouldn't it be possible to add a string check to Store function in ACPI.SYS so that during processing it would ignore ITA0 and don't do anything?

This would solve the PCI bridge conflict.
#2021 skullteria
Zitat von ⇗ daniel_k im Beitrag ¶ #2012
@diderius6

That's great!

Are there any functional changes between this and XP 5512? IRQ ranges?

Please delete your above and use the file I've attached.

There were some unnecessary changes I made.

I've already applied @infuscomus fix.


Hey ⇗ @daniel_k, it is based on my modded driver? Can you made it to x64?
#2022 Mov AX, 0xDEAD
Zitat von ⇗ daniel_k im Beitrag ¶ #2020
@Mov AX, 0xDEAD, wouldn't it be possible to add a string check to Store function in ACPI.SYS so that during processing it would ignore ITA0 and don't do anything?
This would solve the PCI bridge conflict.

if someone want to patch acpi.sys to zero resources of iotr welcome )
i prefer to investigate pci.sys or some else to find source of conflict
#2023 daniel_k ⇗ @skullteria, I did it on my own. Yes, currently porting the changes to x64.

⇗ @Mov AX, 0xDEAD, seeing what most XP compatibility patches are hacks (even official ones), don't see anything wrong with that.

Are there any utilities to edit x64 relocation table or we need to change it manually? Something like Relocation Section Editor which I use for 32-bit?
#2024 Mov AX, 0xDEAD .del
#2025 skullteria
Zitat von ⇗ daniel_k im Beitrag ¶ #2023
@skullteria, I did it on my own. Yes, currently porting the changes to x64.

@Mov AX, 0xDEAD, seeing what most XP compatibility patches are hacks (even official ones), don't see anything wrong with that.

Are there any utilities to edit x64 relocation table or we need to change it manually? Something like Relocation Section Editor which I use for 32-bit?


Great! My changes on acpi 5048 are to solve C1400008 BSOD. I feel happy because you solved problem with USB 3.0 too. Windows XP is almost usable on modern computers

 

Page 136

#2026 daniel_k ⇗ @diderius6, please try this x64 version of ACPI.SYS 5048.

Figured out the relocation table, luckily there was  an empty slot I could use.

Implemented Skylake+ patch, QwordConst and applied Ryzen patch.

By the way, does the previous 32-bit ACPI.SYS 5048 works on your B350?

Maybe it behaves the same as ⇗ @AddFun report?
#2027 diderius6 ⇗ @daniel_k

The 32 bit acpi.sys works also on B350 boards, on x370 boards (AMD) and on x570 boards.
At ⇗ https://hwbot.org they tested it also, just works everywhere.
The different BSODs during install of XP 32 bit happens because of DSDT tables,
which are not correct. In this case it only helps, to install on another compi,
and after installation of XP connect to first one.
The other possibilty in BSODs is, that the acpi.sys driver is changed back to
the original acpi.sys after first reboot. In this case, just copy new acpi.sys back to folder
windows\system32\drivers helps.
And I saw a lot of BSODs, because of not correct integrated AHCI drivers.
The STORAHCI from ⇗ @skullteria works on every board, AMD, Intel, old new,
until now I do not have a board, where it does not work. But even there you have to copy
storport.sys by hand and may be after reboot again into windows\system32\drivers
Dietmar

PS: Now I test your new acpi.sys 64 bit.
#2028 daniel_k ⇗ @diderius6, reading throughly AddFun now I see the crash occurs after install, so ACPI.SYS is, for sure, restored to original, non-modded version.

⇗ @AddFun, you need to repack SP3.CAB.

Unpack SP3.CAB, replace ACPI.SYS and repack it.
#2029 Andalu ⇗ @daniel_k
yes, the two hubs were created after replacing ACPI.SYS and restart but i can't use the AMDXHCI package because the mmc process hangs again like before, also by renaming back the .cab file into sp2 or sp3
#2030 Mov AX, 0xDEAD
Zitat von ⇗ daniel_k im Beitrag ¶ #2023

Are there any utilities to edit x64 relocation table or we need to change it manually? Something like Relocation Section Editor which I use for 32-bit?

is it ⇗ https://github.com/mohic/Relocation-Section-Editor ? do you have download link to release ?
#2031 daniel_k ⇗ @Andalu, what a shame.

Can you access the XP's drivers folder from another OS?

If so, delete amdxhc.sys and boot XP, device won't start because of missing driver and you may be able to test the Renesas driver, which is my suggestion.

Maybe the AMD driver doesn't work properly. Unfortunately I don't have any pre-Skylake board to test it.
#2032 daniel_k ⇗ @Mov AX, 0xDEAD

Can't remember where I got it from, just says its author is gta126 in About box.

It's coded in some version of .NET Framework.

Works just fine.
#2033 daniel_k ⇗ @Mov AX, 0xDEAD

Interesting that the ACPI.SYS 5048 does an additional check in CreateByteField which leads to a BSOD.

Can you do some analysis, please?

VISTA 5048

 
15ED4: BF080014C0                     mov          edi,0C0140008
15ED9: B8090014C0 mov eax,0C0140009
15EDE: 3B55F8 cmp edx,[ebp][-8]
15EE1: 0F8DE3000000 jge 000015FCA
15EE7: 8B5D0C mov ebx,[ebp][00C]
15EEA: 0FBE141A movsx edx,b,[edx][ebx]
15EEE: 83FA49 cmp edx,049 ;'I'
15EF1: 7F64 jg 000015F57
15EF3: 745C jz 000015F51
15EF5: 83EA41 sub edx,041 ;'A'
15EF8: 7450 jz 000015F4A
15EFA: 4A dec edx
15EFB: 7447 jz 000015F44
15EFD: 4A dec edx
15EFE: 7435 jz 000015F35
15F00: 4A dec edx
15F01: 741F jz 000015F22
15F03: 4A dec edx
15F04: 4A dec edx
15F05: 7415 jz 000015F1C
15F07: 4A dec edx
15F08: 4A dec edx
15F09: 7567 jnz 000015F72
15F0B: 6683390F cmp w,[ecx],00F --> CHECK CAUSES BSOD
15F0F: 0F84A3000000 jz 000015FB8
15F15: 89FF mov esi,edi
15F17: E99C000000 jmp 000015FB8
15F1C: 66833905 cmp w,[ecx],5
15F20: EBED jmps 000015F0F



XP 5512:

 
13D1F: BF080014C0                     mov          edi,0C0140008 ;'
13D24: B8090014C0 mov eax,0C0140009 ;'
13D29: 3B5DFC cmp ebx,[ebp][-4]
13D2C: 0F8DB6000000 jge 000013DE8
13D32: 8B550C mov edx,[ebp][00C]
13D35: 0FBE1413 movsx edx,b,[ebx][edx]
13D39: 83FA49 cmp edx,049 ;
13D3C: 7F51 jg 000013D8F
13D3E: 7449 jz 000013D89
13D40: 83EA41 sub edx,041 ;
13D43: 743D jz 000013D82
13D45: 4A dec edx
13D46: 7434 jz 000013D7C
13D48: 4A dec edx
13D49: 7422 jz 000013D6D
13D4B: 4A dec edx
13D4C: 740A jz 000013D58
13D4E: 4A dec edx
13D4F: 4A dec edx
13D50: 7553 jnz 000013DA5
13D52: 66833905 cmp w,[ecx],5
13D56: EB6F jmps 000013DC7
#2034 diderius6 ⇗ @daniel_k

The new acpi.sys 5048 for 64 bit gives on a working XP 64 installation on the Giga H110 board
with original DSDT and Bios F25
BSOD A5 (0x03, xxx, 0xC0140008, yyy)
Dietmar

PS: The same BSOD happens on asrock fatal1ty z370 gaming k6.
#2035 AddFun I already repacked my DRIVER.CAB with that last nlite build. Also, dropped in your file as ACPI.SY_ in the I386 folder. That resulted in what I posted above. There is nothing hooked up to the PC other than RAM/CPU/120GB-SATA drive internally and a PS/2 keyboard externally.

I'm looking at the file structure on the WinXP drive from another PC right now. Looks like XP was installed fully. I tried flashing the AX370 mobo to several different BIOSes (much newer F40, F41, etc) same issue.

Although, the BSOD I'm getting with your ACPI actually lists ACPI.sys, while prior BSODs with other ACPI/AHCI files were puking up totally different 7E, 7B BSODs and not actually referencing ACPI.sys.

Here is one major thing I noticed when using your ACPI.sys from post #2012 ⇗ @daniel_k, there is NO usual error while copying ACPI.sys in "TXT" mode part of the installation, something even latest versions diderius6 provided would cause, even using his custom ISO (thx bud) I would get that error (and couldn't get into GUI part of the install with the latest version on that ISO).
#2036 daniel_k ⇗ @diderius6

Please rename and try these files.

Pay attention to the number which works, hopefully one should work.
#2037 daniel_k ⇗ @AddFun, what I mean is:

Did you replace ACPI.SYS inside SP3.CAB?

This is a must, otherwise SFC (system file checker) will replace this file with the original, untouched version during last phase of Setup.
#2038 diderius6 ⇗ @AddFun

Install XP on another compi,
can be very old one,
integrate extra AHCI driver for your new compi before
and then connect to your new compi.
I am sure, this time it will work,
BSOD is because of faulty DSDT table on new compi
Dietmar
#2039 diderius6 ⇗ @daniel_k

acpi_test1.sys acpi_test2.sys acpi_test3.sys fail on
asrock fatal1ty z370 gaming k6 with the same BSOD as before A5 (0x03, xxx, 0xC0140008, yyy).

But acpi_test4.sys works on
asrock fatal1ty z370 gaming k6 :))!
But the error in PCIe device because of IOTR remains.

Now I am testing on the Giga H110 board,
nice work,
Dietmar
#2040 daniel_k ⇗ @diderius6, please try all files on H110 too.

 

Page 137

#2041 skullteria
Zitat von ⇗ diderius6 im Beitrag ¶ #2034
@daniel_k

The new acpi.sys 5048 for 64 bit gives on a working XP 64 installation on the Giga H110 board
with original DSDT and Bios F25
BSOD A5 (0x03, xxx, 0xC0140008, yyy)
Dietmar

PS: The same BSOD happens on asrock fatal1ty z370 gaming k6.



0xC0140008 occours on CreateField function. I already fixed on my ACPI version, later i patch daniel_k version tobe compatible too
#2042 diderius6 ⇗ @daniel_k

acpi_test2.sys acpi_test3.sys fail on the Giga H110 board
with the same BSOD as before A5 (0x03, xxx, 0xC0140008, yyy).
acpi_test1.sys fails on the Giga H110 board with BSOD 0x7B.

Again acpi_test4.sys works on Giga H110 board.
But the error in PCIe device because of IOTR remains.

Dietmar
#2043 daniel_k ⇗ @diderius6, please try it on the Ryzen board.

By the way, for now, the IOTR issue can only be solved with DSDT patch.

⇗ @skullteria, thanks, but we already have a working version.
#2044 Andalu ⇗ @daniel_k
i have dual xp boot so no problem to access to another partition.
Unfortunately amdxhc.sys and the Renesas package are missing because the driver installation has never worked (error code 10)
#2045 diderius6 ⇗ @daniel_k

The modded acpi.sys 64 bit from ⇗ @skullteria
does not show IOTR error on the Asrock fatal1ty z370 gaming k6 board

Dietmar

PS: The very last acpi.sys 64 bit from ⇗ @skullteria I do not have.
#2046 kukonosau Acpi_test4.sys is doesn't work on motherboard from Ryzen. My motherboard is ASUS AM4 B350 PRIME B350M-K.
#2047 skullteria
Zitat von ⇗ diderius6 im Beitrag ¶ #2045
@daniel_k

The modded acpi.sys 64 bit from @skullteria
does not show IOTR error on the Asrock fatal1ty z370 gaming k6 board

Dietmar

PS: The very last acpi.sys 64 bit from @skullteria I do not have.


Well, my plan is integrate my changes to solve c14000008 BSOD on daniel_k version.
#2048 Mov AX, 0xDEAD
Zitat von ⇗ daniel_k im Beitrag ¶ #2033
@Mov AX, 0xDEAD
Interesting that the ACPI.SYS 5048 does an additional check in CreateByteField which leads to a BSOD.
VISTA 5048
 
15ED4: BF080014C0                     mov          edi,0C0140008
15ED9: B8090014C0 mov eax,0C0140009




This is _ValidateArgTypes, not CreateByteField. I dont see this bytes at 15ED4 in 5048

 
15F07: 4A                             dec          edx
15F08: 4A dec edx
15F09: 7567 jnz 000015F72
15F0B: 6683390F cmp w,[ecx],00F


at ip=15F0B  EDX was decremented to 41+1+1+1+2+2=48h="H"
so _ValidateArgTypes was called with 2nd arg = pointer to string with "H" char inside

at winxp_5512 exist  C, I, O, A, B, D, .. but not "H"
at vosta_5048 i see two calls with H  "LoadTable" & "Unload" opcode, but we dont see this in dsdt, do double check about place of BSOD

#2049 Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #2045

does not show IOTR error on the Asrock fatal1ty z370 gaming k6 board


))
IOTR virtual device exist only on Intel (99% of dsdt created by platform maker)
#2050 diderius6 ⇗ @Mov AX, 0xDEAD

Asrock fatal1ty z370 gaming k6 board

is Intel

Dietmar
#2051 diderius6 ⇗ @daniel_k

On AMD asrock fatal1ty ab350 gaming k4 with Ryzen 3700x cpu

we get a new BSOD with 64 bit acpi_test4.sys, which is not direct correlated to acpi.sys.

The driver is not listened here, where the BSOD happens
Dietmar

PS: Now I test on other Ryzen board x570.

#2052 kukonosau I have also error!!!
#2053 Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #2050
@Mov AX, 0xDEAD
Asrock fatal1ty z370 gaming k6 board


Oh, sorry
1) can you check IO resource usage in devmanager ?
2) do call _SB_.PCI0.IOTR._CRS in aida acpi browser ?
#2054 diderius6 ⇗ @daniel_k
On the asus prime x570-pro with 64 bit XP and Ryzen 1700
it hangs in an endless loop during start, also in save mode (F8).

This time I think, it is not related to acpi_test4.sys
but to another device on the board.
I have only this XP 64 bit install from the EVGA z390 dark board.
I make a new slip stream CD via nlite for this board
and then I report
Dietmar
#2055 diderius6 ⇗ @daniel_k

I cant install XP 64 bit on Ryzen board with acpi_test4.sys
see BSOD on Photo
Dietmar

PS: BSOD happens early on txt setup, I cant get the window with F8.

 

Page 138

#2056 daniel_k ⇗ @diderius6, please try these 2 test files.

Where is the modded x64 ACPI.SYS from ⇗ @skullteria which fixes IOTR? Was it 5048 or 5512?

So, we've got it all after all.

We just need to find which patch is resposible for the IOTR fix and apply it on the 32-bit version.
#2057 diderius6 ⇗ @daniel_k

⇗ @skullteria makes 5048 acpi.sys 64 Bit.
It works on Intel boards with full Acpi support
but not on Ryzen

Dietmar
#2058 daniel_k ⇗ @diderius6, please upload the one you've tested and fixes IOTR.
#2059 daniel_k ⇗ @Mov AX, 0xDEAD

This is the original untouched ACPI.SYS 5048.
#2060 diderius6 ⇗ @daniel_k

On Ryzen new acpi_test1.sys
gives same BSOD 0x7E C0000005
and acpi_test2.sys endless running but
not starting XP 64 bit,
I think it is the same BSOD

Dietmar
#2061 daniel_k ⇗ @diderius6, one last try.

x64 behaves differently than x86.

The patch location is certainly correct the same, but I'm not sure if it can be done.

5 more test files for you.

PS: Still waiting for the patched ACPI.SYS which fixes IOTR.
#2062 skullteria
Zitat von ⇗ daniel_k im Beitrag ¶ #2056
@diderius6, please try these 2 test files.

Where is the modded x64 ACPI.SYS from @skullteria which fixes IOTR? Was it 5048 or 5512?

So, we've got it all after all.

We just need to find which patch is resposible for the IOTR fix and apply it on the 32-bit version.


My version only fix C1400008 BSOD, later i upload
#2063 diderius6 ⇗ @daniel_k

This is the acpi.sys 5048 from ⇗ @skullteria for 64 bit from May 2019
which works on all Intel boards,
with graphikcard also

Dietmar



diderius6 has attached files to this post
#2064 Mov AX, 0xDEAD
Zitat von ⇗ daniel_k im Beitrag ¶ #2059
@Mov AX, 0xDEAD
This is the original untouched ACPI.SYS 5048.

I've checked adresses, you using "strange" disasm, it ignores Origin adress and virtual adresses of sections (wtf ?)
Now I realized that first column is not adress, it is offset in file
#2065 diderius6 ⇗ @daniel_k

All 5 acpi.sys test files 64 bit
show the same BSOD 0x7E as before
on the Ryzen x570 board. This board shows very good real BSODs
Dietmar
#2066 diderius6 ⇗ @Mov AX, 0xDEAD

I make a mistake:
Only on the EVGA z390 dark board with XP friendly Bios from beginning
the PCIe works and so the graphikcard in XP 64 bit.

I make a check at the Intel asrock fatal1ty z370 gaming k6 board:
PCIe error, no graphikcard in XP 64 bit as you also can see here on post 948.

But with my modded acpi.sys from December 2018
I have without Bios mod for IOTR full graphik
on Intel asrock fatal1ty z370 gaming k6 board
and on Intel Asus Apex X board for XP SP3 32 bit

Dietmar

PS: My mod in acpi.sys was in XP SP3 5112 version.
#2067 daniel_k ⇗ @Mov AX, 0xDEAD

Sorry, was running 2 instances of Hiew in Edit mode when copied the disassembly. Really sorry!


⇗ @diderius6

It's interesting to see how x64 and x86 behaves differently! Same code position, different results.

That's what I've been thinking. Test4 was a quick hack. Just compared with skullteria's and it's exactly the same, no way it would make any difference.

By the way, can you attach your ACPI 5512 mod that fixes IOTR?
#2068 diderius6 ⇗ @daniel_k

Here it is,

Dietmar

PS: Now very late here, I go to bed.



diderius6 has attached files to this post
#2069 daniel_k ⇗ @diderius6

Applied your patches to my 5048, but it probably won't work for you as it didn't here.
#2070 AddFun ⇗ @diderius6 Installed the nlited disk on a AM3 based AMD PC with a Athlon II 640, closest I can get to a Ryzen-yet-not-Ryzen. WinXP installed fine and is desktop bootable. Moved the drive to the Ryzen PC and got this BSOD

Zitat von ⇗ daniel_k im Beitrag ¶ #2069
⇗ @diderius6

 

Page 139

#2071 AddFun Never mind. Got it to boot!
#2072 diderius6 ⇗ @skullteria

This USB files from ⇗ @daniel_k work on all newer boards with Intel chipset and XP SP3 32 bit.
With the acpi.sys 32 bit from post 2069 it installs there without any need
of modding the DSDT table in Bios,

Dietmar

PS: First install xhc.inf and later hub30.inf when asked for new driver.
Dont forget to copy usbd.sys in windows\system32\drivers.



diderius6 has attached files to this post
#2073 diderius6 ⇗ @daniel_k

Your last acpi.sys (post 2069) for XP SP3 32 bit
works on all boards (AMD, Intel, old, new) that I tested.
No need to mod anything in Bios. All USB devices work.

On some Intel boards, the IOTR device claims memory
for the graphikcard (for unknown reason), so this is the last bastion for DSDT mod.

This IOTR problem (only on Intel boards) happens not with my acpi.sys from post 2068,
but for this acpi.sys you have to mod DSDT for XP unfriendly words from acpi 2.0
by hand,

Dietmar
#2074 infuscomus ⇗ @diderius6

can you download XP 64bit checked build and see where the problem is? so we can properly fix 64bit acpi.sys 5048 for ryzen?
#2075 daniel_k ⇗ @diderius6, fixed the IOTR issue with x86!

Will also patch the x64 version and upload both.

Then I'll explain what was the issue.
#2076 daniel_k ⇗ @diderius6, here is the x86, I consider this version the final for all Intel chipsets and Ryzen.

What was the issue?

Contrary to what you think, ConcatenateResTemplate is not supported and is ignored by XP 5512.

That's why your modded ACPI 5512 works and doesn't have the IOTR conflict issue, because it is not processed!

So what I did?

Killed the ConcatenateResTemplate from 5048, as it is supported and works, leading to the resource conflict.

Please test on your H110 and Z370 with original DSDT BIOS.

Z390 is XP friendly so test not required.

Ryzen test is also not required because the DSDT doesn't have the ConcatenateResTemplate opcode.
#2077 daniel_k ⇗ @diderius6, here is the x64 version, test version.

I've uploaded it as 6 test files, because I'd like to know where it crashes.

Please test all of them and pay attention to the number.

For sure, one of them will work.

Ryzen testing is not needed as I did nothing related to it.
#2078 diderius6 ⇗ @daniel_k

Yessssssaaaaaaa, full ACPI support    in XP SP3 on any compi without any DSDT mod!!!

Your nice acpi.sys from post 2076 works now with the IOTR device.
And to chose the Gigaboard H110 as test board was the right choice

Dietmar

#2079 Mov AX, 0xDEAD I played little with length IO range of IOTR at H110 MB (starting adress is always 0xFF00):
0 - OK, device disapear in DevManager
1<->0xA0 - OK
0xA0-0xE0 - Not tested
0xE0-0xFF - Conflict

so hooking of BufferOp is possible, after movsd & movsb we have at EDI struct of bytes:
11 0D 0A 0A 47 01 00 00 00 00 01 FF 79 00

 
pseudo-code:
sub edi, 0xe ; back edi to start of buffer
cmpl [edi], 0x11 0D 0A 0A
jnz nopatch
cmpl [edi+4], 0x47 01 00 00
jnz nopatch
cmpl [edi+8], 0x00 00 01 FF
jnz nopatch
cmpw [edi+c], 0x79 00
jnz nopatch
patch:
moveb [edi+b], 0x00 ; edi+b=length
nopatch: jmp _back


im not sure about full bufer, maybe in edi will be only 0A 0A 47 01 00 00 00 00 01 FF 79 00

#2080 dencorso Greetz! You all do rock! Awesome collaborative work! Thanks so much. Long live XP!
#2081 daniel_k ⇗ @diderius6, finally!

⇗ @Mov AX, 0xDEAD, how do I find the code for a certain opcode? I'm think about replacing a non used opcode.
The IOTR stuff is just for you, I'm decades behind your knowledge.

⇗ @dencorso, good to see you here!
#2082 Andalu
Zitat von ⇗ diderius6 im Beitrag ¶ #2073
@daniel_k

Your last acpi.sys (post 2069) for XP SP3 32 bit
works on all boards (AMD, Intel, old, new) that I tested.
No need to mod anything in Bios. All USB devices work.

Old how long? In both my Haswell and Ivy boards the USB3 driver doesn't install or work.
Strangely, the usb3 driver installs properly on older Ivy board (even the usb3 ports act as usb2, so no difference) while on the newer haswell board the usb driver doesn't install anyway even the acpi.sys (acpi5048_dietmar md5: 9D1015F5DD2B9EED6CA40579E8574541) is correctly in the windows\system32\drivers after reeboting.
Someone can confirm that? I really hope not, so I can still have a dream :)

In any case, my congratulations to you all for the wonderful work.


Edit: also tried the acpi.sys from daniel_k at #2076 with same results.
#2083 diderius6 ⇗ @daniel_k

Until now I tested acpi_test1.sys and acpi_test2.sys (from your 6 acpis (vers. 5048) 64 bit XP )
for Ryzen boot of XP 64 bit.

This is a really hard job, because I need to make sure,
that it is ONLY the fault of acpi.sys, when it crashes. I will continue test for the other acpis.

acpi_test1.sys gives BSOD 0x7E (0xC0000005,..)
acpi_test2.sys hangs during setup (I think, the same BSOD as acpi_test1.sys)
acpi_test3.sys gives BSOD 0x7E (0xC0000005,..)
acpi_test4.sys hangs during setup (I think, the same BSOD as acpi_test1.sys)
acpi_test5.sys hangs during setup (I think, the same BSOD as acpi_test1.sys)
acpi_test6.sys hangs during setup (I think, the same BSOD as acpi_test1.sys)

So, on a longer sight, the idea from ⇗ @infuscomus
to set up a windbg session with checked XP 64 may be the better choice.

⇗ @infuscomus :
I cant download the checked XP 64 from
⇗ https://the-eye.eu/public/MSDN/Windows%20XP/
May be you can try also and send to me this XP checked 64 bit

Dietmar
#2084 Mov AX, 0xDEAD
Zitat von ⇗ daniel_k im Beitrag ¶ #2081

@Mov AX, 0xDEAD, how do I find the code for a certain opcode? I'm think about replacing a non used opcode.


FYI:
BufferOpcode start  at 0x27407 (winxp_5512) and pointed from _atBuffer structure at 0x2CE10 _atBuffer
 
.text:00027407                 mov     edi, edi
.text:00027409 push ebp



in this block we copy bytes from dsdt to memory:

 
.text:000274B5                 mov     eax, [ebp+arg_0]
.text:000274B8 mov ecx, esi
.text:000274BA mov esi, [eax+3Ch]
.text:000274BD mov eax, [ebx+30h]
.text:000274C0 mov edi, [eax+10h]
.text:000274C3 mov eax, ecx
.text:000274C5 shr ecx, 2
.text:000274C8 rep movsd
.text:000274CA mov ecx, eax
.text:000274CC and ecx, 3
.text:000274CF rep movsb
.text:000274D1 mov eax, [ebx+14h] <- copying is done at this IP and we can patch
.text:000274D4 mov ecx, [ebp+arg_0]
.text:000274D7 mov [ecx+3Ch], eax
.text:000274DA pop edi


also possible patching source buffer (where dsdt is loaded) before copying to final destination

#2085 dencorso ⇗ @Andalu: what are the VID & PID of the Haswell board's  "Intel Chipset Family USB eXtended Host Controller"? Is it present in the .inf? The VID should be 8086 (aka Intel) but the PID can be any value.

 

Page 140

#2086 Andalu ⇗ @dencorso
Thank you for reply ;)

The device ID for the "Intel 8 series_C220 series B xHCI HC - 8C31" (with message: "no driver installed for this device") of my CSM-Q87M-E43 board is PCI\VEN_8086&DEV_8C31&CC_0C0330 that is present in the amdxhc.inf of the AMDXHCI package.
When i try to install the driver, i got always error code 10
#2087 diderius6 I found
WindowsServer2003.WindowsXP-KB914961-SP2-x64-DEBUG-ENU.exe
Hope, that I can update XP 64 to SP2 debug version
Dietmar
#2088 skullteria
Zitat von ⇗ diderius6 im Beitrag ¶ #2087
I found
WindowsServer2003.WindowsXP-KB914961-SP2-x64-DEBUG-ENU.exe
Hope, that I can update XP 64 to SP2 debug version
Dietmar


Only Windows checked can be update to service pack checked (debug)
#2089 dencorso ⇗ @Andalu: just to keep in the same page: are you using precisely the drivers attached below? Those are the latest iteration.



dencorso has attached files to this post
#2090 Andalu ⇗ @dencorso
Yes, it's the same package i have used. I just verified that each file of both packages has the same MD5.
#2091 diderius6 ⇗ @skullteria

With little help from nlite 1.4.9.3 64 bit,
I succeed to integrate
WindowsServer2003.WindowsXP-KB914961-SP2-x64-DEBUG-ENU.exe
into my normal XP 64 bit
Dietmar

PS: I also integrated your nice STORAHCI driver there. Now again fun can start:))!

⇗ https://www.askvg.com/windows-xp-sp3-set...service-pack-3/
#2092 daniel_k ⇗ @diderius6, those 6 test files, it was supposed to be tested on your Intel boards, not Ryzen.

⇗ @Mov AX, 0xDEAD, thanks!

⇗ @Andalu, if the MMC process hangs, I don't know what to suggest to you. Any chance of doing a clean install on a spare disk then apply the ACPI.SYS and install the driver?
#2093 diderius6 ⇗ @daniel_k

On Intel boards it is easy for me to test
Dietmar
#2094 daniel_k ⇗ @diderius6, please do it when you can.
#2095 diderius6 ⇗ @daniel_k

Small problem is just now,
that my XP 64 installation does not survive the direct upgrade
to the debug version.
So I have to install it new.
I will make 2 installs,
one with debug XP 64
and another one with normal XP 64.
The versions are identic
Dietmar

PS: That is the debug acpi.sys from XP 64 SP2.



diderius6 has attached files to this post
#2096 diderius6 ⇗ @daniel_k

After I installed XP 64 new,
I port it from XP friendly z390 to XP unfriendly (Intel) Asrock fatal1ty z370 gaming k6.

Waaooh, your acpi_test1.sys (out of 6 acpis)
shows for the very first time the graphikcard,
no error about IOTR can be seen
and the USB is recogniced at once, just nice:))
Dietmar

PS: Now I am too tired, go to bed.
#2097 daniel_k ⇗ @diderius6, that's great!

Please try all files tomorrow.
#2098 diderius6 ⇗ @daniel_k

Yepp!

Dietmar
#2099 diderius6 ⇗ @daniel_k

I make 6 identic installations CDs for XP 64 SP2 (nondebug).

On 1. is acpi_test1.sys
On 2. is acpi_test2.sys
On 3. is acpi_test3.sys
On 4. is acpi_test4.sys
On 5. is acpi_test5.sys
On 6. is acpi_test6.sys

With this I try to install XP64 bit direct on XP unfriendly (Intel) Asrock fatal1ty z370 gaming k6 board and on the Giga H110 with original unmodded Bios F25.
Only with CD1 and CD6 this is possible:))!

CD2, CD3, CD4, CD5 show all the same BSOD A5 (0x03,..).

Between them I try again CD1 three times, because sometimes strange things can happen.

Ok, CD1 works always for XP 64 bit install on XP unfriendly compi.
The behavior of the Asrock z370 and the Giga H110 board ist to 100% identic,

Dietmar
#2100 infuscomus ⇗ @diderius6

I found XP 64 Debug/Checked ISO here

⇗ https://www.getmyos.com/windows-xp-professional-x64

 

Page 141

#2101 skullteria Well, i installed Windows Vista in my system and USB 3.0 with amd driver modded working fine! However, need be signed to run on x64.



And in WIndows XP SP3, working fine too! However, after install a hotfix what change kernel, i get code 10, even using acpi modded.



Now, i need test on Server 2003 and in x64

Well, on Server 2003 installed on Virtual Box, i get Code 10. Later i test on real computer
#2102 dencorso
Zitat von ⇗ skullteria im Beitrag ¶ #2101
However, after install a hotfix what change kernel, i get code 10, even using acpi modded.

You've just hit jackpot! That issue was baffling me and ⇗ @Andalu till now! What version were your kernel files before and after the issue showed itself? Just for the record, the latest kernel files are 5.1.2600.7649 (for ntkrnlmp, from KB4486463 of Feb 2019) and 5.1.2600.7811 for the others (including ntkrpamp, from KB4463103 of Oct 2018). Any effective USB 3.x solution must work with those, of course. You just found where does the last bug lurk!!! Congrats! :-)
#2103 skullteria
Zitat von ⇗ dencorso im Beitrag ¶ #2102
Zitat von ⇗ skullteria im Beitrag ¶ #2101
However, after install a hotfix what change kernel, i get code 10, even using acpi modded.

You've just hit jackpot! That issue was baffling me and @Andalu till now! What version were your kernel files before and after the issue showed itself? Just for the record, the latest kernel files are 5.1.2600.7649 (for ntkrnlmp, from KB4486463 of Feb 2019) and 5.1.2600.7811 for the others (including ntkrpamp, from KB4463103 of Oct 2018). Any effective USB 3.x solution must work with those, of course. You just found where does the last bug lurk!!! Congrats! :-)



well, i not used vanilla files in true. I used my kernel files from One-Core-API kernel update (i'm the creator of Shorthorn and one-core-api project: shorthornproject.com). I think something change on DSDT on registry after switch hal. And, i am warried with Server 2003. I need test acpi and usb on real machine. Maybe we have problem if Windows was installed and after packaged on WIM format. Maybe it not change DSDT property.

For kernel test (both Windows XP and Server 2003):
⇗ https://github.com/Skulltrail192/One-Cor...er%20Standalone
#2104 dencorso Sure! But ist's a pointer, nonetheless, I guess.
Just for the record (and without any intention of preaching at the choir), two references someone may find useful:
⇗ http://www.geoffchappell.com/studies/win...story/index.htm
(about kernel versions) and (about E320 from NT6.*)
⇗ https://www.geoffchappell.com/studies/wi...os/fwmemmap.htm
#2105 Andalu ⇗ @daniel_k  ⇗ @dencorso
Some good news from here. I restored on the second partition an XP image saved at first reboot after installation on my haswell board (thanks to daniel_k for the suggestion at #2092), acpi.sys overwritten with the new version form "acpi5048_intel_amd_final" package from my first partition (so the operating system doesn't change it on the restart) and the drivers from "USB3bestforIntel" package are correctly installed now.

But the good news ends here, because the USB 3.0 devices (hard disks and flash drives) are not working at USB 3.0 speed, the performances tested by Crystal Disk Mark are really low and also changing AHCI/EHCI options in bios doesn't help. Someone can confirm that USB3.0 performances of the boards tested are really as USB3?
#2106 diderius6 I tested for some hours the XP 64 SP2 (nondebug) on the Giga H110 board. It is original, unmodded Bios F25.
It is amazing stable. Not a single device is unknown in devicemanager, nothing yellow:)).
I also succeed to find drivers for the SM controller, memory controller, Intel Mei for Skylake cpu, just everything.
And it is real USB 3 as you can see on photo. The USB is recogniced at once, thanks to ⇗ @daniel_k .

For the direct install (nlite) via CD to the Giga H110 board I chose acpi_test6.sys (post 2077), because it contains also the mod from @skullteria.
Also I integrate in CD the STORAHCI driver from ⇗ @skullteria with newest storport.sys (version 64 bit 5.2.3790.4173)
And I use the hal.dll for the crazy timer from ⇗ @Mov AX, 0xDEAD .

Dietmar

PS: Thanks to ⇗ @infuscomus , who makes this XP 64 possible. Now I have also XP 64 SP2 debug version and fun can start via windbg:)).

#2107 skullteria
Zitat von ⇗ diderius6 im Beitrag ¶ #2106
I tested for some hours the XP 64 SP2 (nondebug) on the Giga H110 board. It is original, unmodded Bios F25.
It is amazing stable. Not a single device is unknown in devicemanager, nothing yellow:)).
I also succeed to find drivers for the SM controller, memory controller, Intel Mei for Skylake cpu, just everything.
And it is real USB 3 as you can see on photo. The USB is recogniced at once, thanks to @daniel_k .

For the direct install (nlite) via CD to the Giga H110 board I chose acpi_test6.sys (post 2077), because it contains also the mod from @skullteria.
Also I integrate in CD the STORAHCI driver from @skullteria with newest storport.sys (version 64 bit 5.2.3790.4173)
And I use the hal.dll for the crazy timer from @Mov AX, 0xDEAD .

Dietmar

PS: Thanks to @infuscomus , who makes this XP 64 possible. Now I have also XP 64 SP2 debug version and fun can start via windbg:)).






Hey, please test with Server 2003 x86. And, switch kernel too. You don't need really lastest version of storport.sys. I tested Windows XP with Server 2003 SP2 vanilla (5.2.3790.3959)
#2108 Andalu ⇗ @diderius6
Thanks for your proof.
So it's an issue for me only. Too strange, same problem for two different systems (Haswell and Ivy): drivers correctly installed and devices usb3 recognized but performances too poor.
#2109 diderius6 ⇗ @Andalu

May be it is a problem from DSDT in Bios: The USB3 is marked as USB2 there.
Have you tested on Win7? The driver works there also,
Dietmar
#2110 skullteria Well, i have a challenge. When i try use winload from Windows Vista on XP/2003 on real machine, i get A5 0x0000002 BSOD. Somebody can help to try fix it? Fixing it, we can use lastest Windows Setup engine based in WIM format ( for now, i only can use 5231 version) and can do a multiversion install for XP/2003/Reactos.
#2111 infuscomus ⇗ @skullteria

winload from vista beta or RTM?
#2112 XPLAKE8175 ⇗ @diderius6
Hello, I still get error 10 on Intel hd 5500.
#2113 skullteria
Zitat von ⇗ infuscomus im Beitrag ¶ #2111
@skullteria

winload from vista beta or RTM?


Both beta and RTM, up build 5307 +, mainly RTM.
#2114 XPLAKE8175 ⇗ @diderius6
I will tell you possible issues:
- Registry issue
- Lack of the .dll and .sys.
#2115 diderius6 ⇗ @XPLAKE8175

The Intel hd 5500 is just too new.
I have not seen any driver for XP for it.
⇗ @daniel_k  told,
that there is no possibility to mod this driver
from Win7 for XP.
When it is not possible to use the HD 4000 driver
from XP for it,
it will not work
Dietmar

EDIT:
Make a try with
⇗ http://drivers.drp.su/Video_Intel-XP/Int...10.5445-drp.exe

 

Page 142

#2116 IntiMD
Zitat von ⇗ diderius6 im Beitrag ¶ #2115
@XPLAKE8175
EDIT:
Make a try with
⇗ http://drivers.drp.su/Video_Intel-XP/Int...10.5445-drp.exe


The redirect seems to not work, here's the actual zipfile for that haswell version: ⇗ http://drivers.drp.su/Video_Intel-XP/Int...10.5445-drp.zip

EDIT: fixed the link, incorrectly pasted the x64 version
#2117 Andalu ⇗ @diderius6

Zitat von ⇗ diderius6 im Beitrag ¶ #2109
May be it is a problem from DSDT in Bios: The USB3 is marked as USB2 there.
Have you tested on Win7? The driver works there also

I never tried the modded driver on another system that is not XP, i need to use XP only on those systems :) and i'm hoping to have a fully functionally USB3 too.

Zitat von ⇗ diderius6 im Beitrag ¶ #2106
I also succeed to find drivers for the SM controller, memory controller, Intel Mei for Skylake cpu, just everything.

Could you give me please the links where downloading these drivers? In the next days i will have an Asrock B250M Pro4 and probably a kaby lake cpu, and, availability of time permitting, i'll also try to install XP on that board.
Thanks in advance ;)
#2118 diderius6 ⇗ @Andalu

I did an intensive search with the DEV_ numbers of each device and the name "Skylake" on Internet.
I found them at different places, tried a lot
Dietmar
#2119 IntiMD
Zitat von ⇗ Andalu im Beitrag ¶ #2117

Could you give me please the links where downloading these drivers? In the next days i will have an Asrock B250M Pro4 and probably a kaby lake cpu, and, availability of time permitting, i'll also try to install XP on that board.
Thanks in advance ;)

Not him but for those devices you can use Fernando's AIO pure Intel Chipset Device inf files ⇗ here (Point II). I recommend doing it only for those intel chipset devices in the other drivers section of device manager.
#2120 Andalu ⇗ @diderius6 ⇗ @IntiMD
thanks for the info, i'll give a try
#2121 Illen XP x64 works well on ASRock Z170 Pro4S with both acpi_test1 and acpi_test6
I also tried UEFI booting it, but unfortunately it doesn't want to work with BootMGR/Winload from Vista Beta 2 and RC, and the Server 2008 Beta 3 or Vista Beta SP1 ones are pretty much unobtainable.

#2122 infuscomus ⇗ @daniel_k ⇗ @diderius6

just thought I'd try your ACPI driver from post 2076 in virtualbox to see if the virtualized intel USB 3.0 works properly

using driver from post 2072 - all working now.

nice!
#2123 skullteria
Zitat von ⇗ Illen im Beitrag ¶ #2121
XP x64 works well on ASRock Z170 Pro4S with both acpi_test1 and acpi_test6
I also tried UEFI booting it, but unfortunately it doesn't want to work with BootMGR/Winload from Vista Beta 2 and RC, and the Server 2008 Beta 3 or Vista Beta SP1 ones are pretty much unobtainable.






Some question: Geforce 1060 6GB is installed on XP x64?
#2124 diderius6 ⇗ @Illen

Nice work:))!
I am also very interested in UEFI boot.
Did you take a look at
⇗ https://www.betaarchive.com/forum/viewto...2dd71d&start=25

and test with Longhorn 5112 or 5231 AMD64 each

⇗ https://winworldpc.com/product/windows-l...-vis/post-reset

Dietmar
#2125 skullteria
Zitat von ⇗ diderius6 im Beitrag ¶ #2124
@Illen

Nice work:))!
I am also very interested in UEFI boot.
Did you take a look at
⇗ https://www.betaarchive.com/forum/viewto...2dd71d&start=25

and test with Longhorn 5112 or 5231 AMD64 each

⇗ https://winworldpc.com/product/windows-l...-vis/post-reset

Dietmar


⇗ @diderius6, be careful, need test on real machine...All winload/bootmgr from Vista 5048 - 5310 tested by me not work on Core based systems. All i get BILibray black screen. And up these builds get A5 BSOD. Virtual Machin not reflect the reality.
#2126 diderius6 On a special wish
I installed XP SP1 32 bit on the Giga H110 board.
The last acpi.sys works there and also all USB, network,
just everything.
1 year ago I noticed, that XP SP1 does not like to work with storport.sys.
Because of this I use the normal AHCI Intel driver from Fernando via nlite
Dietmar
#2127 Illen
Zitat von ⇗ skullteria im Beitrag ¶ #2123

Some question: Geforce 1060 6GB is installed on XP x64?


It's a 368.81 driver for XP x64, only 2D acceleration works (GDI, ddraw, etc.). No OpenGL or Direct3D.
Zitat von ⇗ diderius6 im Beitrag ¶ #2124

Nice work:))!
I am also very interested in UEFI boot.
Did you take a look at
⇗ https://www.betaarchive.com/forum/viewto...2dd71d&start=25

and test with Longhorn 5112 or 5231 AMD64 each

⇗ https://winworldpc.com/product/windows-l...-vis/post-reset

Dietmar

Yep, these early beta builds are known to have 32 bit EFI bootloader, or not have EFI bootloader at all. The later ones (6.0.5384.4 or newer) do have an 64 bit EFI bootloader, although these are still quite buggy and don't work with my Z170. There's one build (Longhorn Server Beta 3 6001.16497) which is known to have a 64 bit UEFI bootloader that works on newer hardware and still can boot NT 5.2 (see: ⇗ https://www.betaarchive.com/forum/viewto...=434233#p434233), but I couldn't find this build (nor any others that are close) anywhere.
#2128 diderius6 ⇗ @Illen

betaarchive has this OS on its ftp server

(''Longhorn Server'' 6.0.6001.16497) (x64 Server beta3).rar

but I dont know, how to download it from there
Dietmar
#2129 infuscomus ⇗ @diderius6

you need to be granted permission to download off the betaarchive FTP server.
#2130 Andalu Finally! An old Ivy board (Asrock B75 Pro3-M) with USB3 ports fully functional.
Thanks again to all you guys ;)



But about my haswell board I don't give up :) no other suggestion?

 

Page 143

#2131 AddFun So, what is driver pack I should use to get USB support on a X370/Ryzen platform? I have a PS/2 keyboard so far, but that's about it. Also, what are you guys doing for various PCI devices? My device manager is just yellow question marks galore.

Also, I tried the latest "final" ACPI.sys by Daniel, works perfect as the older one, only difference with the new one the boot time seems to be doubled, but it does get to desktop just fine.
#2132 IntiMD
Zitat von ⇗ AddFun im Beitrag ¶ #2131
So, what is driver pack I should use to get USB support on a X370/Ryzen platform? I have a PS/2 keyboard so far, but that's about it. Also, what are you guys doing for various PCI devices? My device manager is just yellow question marks galore.

Also, I tried the latest "final" ACPI.sys by Daniel, works perfect as the older one, only difference with the new one the boot time seems to be doubled, but it does get to desktop just fine.


The one from post #2089, which is same usb3.0 pack published by daniel_k in post #1919 (AMDXHCI_XP_FINAL.rar). This worked for my friend Illen (although he used the x64 version and x64 acpi mod which acpi_test1.sys and acpi_test6.sys each worked for him)

>Also, what are you guys doing for various PCI devices? My device manager is just yellow question marks galore.

Depends but if they are Intel ones, i'm pretty sure those are chipset devices, so you can use Fernando's AIO pure Intel Chipset Device inf files here (Point II). I recommend doing it only for those intel chipset devices with yellow bang (in other drivers section) of device manager.
#2133 XPLAKE8175 Chipset INF files are such a bloatware. If you install them, the performance doesn't increase. The most important missing driver is Intel HD Graphics 5500.
#2134 XPLAKE8175 I downloaded it from drpsu and it has two igxp32.inf variants. First is igxp32.inf and second is igxp32_tweak.inf. The Broadwell CPU is Improved version of haswell version.
#2135 IntiMD
Zitat von ⇗ XPLAKE8175 im Beitrag ¶ #2133
Chipset INF files are such a bloatware. If you install them, the performance doesn't increase. The most important missing driver is Intel HD Graphics 5500.


They aren't bloatware, maybe if you force the software set to install even though it isn't needed might bloat up the registry and windows/inf, but if you install the pure Intel Chipset Device *.inf files in point II of Fernando's thread regarding Intel Chipset Device "Drivers" only for the intel devices with yellow bang (in "Other devices" section),  they won't do any harm
#2136 XPLAKE8175 Diderius6's acpi.sys for Ryzen boards works pretty well with ASUS k555lb. Qualcomm AR956x has Windows XP drivers.
#2137 infuscomus ⇗ @diderius6

any news on XP x64 debug for ryzen?
#2138 XPLAKE8175 ⇗ @diderius6
An unknown person at msfn.org said that drpsu intel hd gpu will work on skylake. The embedded intel hd gpu gets error on haswell U series processors too. I have got broadwell U series Intel HD Gpu. I want to get HDMI audio and internal gpu works on Windows XP. The discrete gpu drivers (Nvidia) doesn't show yellow exclamation mark.
#2139 dencorso Super-sized French fries on the side, maybe?
#2140 diderius6 ⇗ @infuscomus

I will set up a 64 Bit debug XP on the Giga 110 board,
which I port to the Ryzen board Asrock Fatal1ty AB350 gaming k4.
The next 2 days I have time for this and I hope,
that windbg will show the needed information about BSOD
which helps to overcome it
Dietmar
#2141 diderius6 ⇗ @Illen

I got the needed *.efi files for Vista (Longhorn) Server Beta 3 6.0.6001.16497.
Now fun can start for Uefi boot of XP
Dietmar



diderius6 has attached files to this post
#2142 daniel_k ⇗ @Mov AX, 0xDEAD

 
If (LGreaterEqual (OSYS, 0x07D6))
{
And (PDBM, 0xFFFFFFFFFFFFFFF9, PDBM) /* \_SB_.PCI0.XHC_.PDBM */
}



Instead of skipping the code, what do you think of changing the 64-bit value to a 32-bit one as the higher order part is ignored anyway in this operation?

 
And (PDBM, 0xFFFFFFF9, PDBM)



I did not try it yet, just want to confirm this is technically correct.

Is there a way to find out the actual address of the PDBM variable to check if the resulting value stays the same when using both 32-bit and 64-bit values, on Windows 7?

EDIT: With AIDA64 Enginner I can query the variable PDBM:

 
_SB_.PCI0.XHC_.PDBM: Success
---------------------------
*** Argument #0: Type = 0, DataLength = 4 ***
Int. Data = 1024 (0x00000400)
---------------------------



That's with the device disabled. If I enable the XHCI controller, data is 0x00000406.

Don't know how to use the arguments.

To make sure the data is the same, aren't we supposed to see the whole 8 bytes data (64-bit) or those 4 bytes are enough?

Sadly the ACPI Browser doesn't work on XP (tree is not populated).

#2143 daniel_k ⇗ @IntiMD, thanks for the report.

I believe we should only patch where required, so acpi_test1.sys is the final release for Intel only systems.

We need to wait for Dietmar to fix Ryzen support so we can have a single file supporting both Intel and AMD systems.

I must stress: this does NOT work on Ryzen systems.
#2144 XPLAKE8175 ⇗ @diderius6
Which Section of my dsdt table must be solved to not get ACPI 0x000000A5 error. Detailed error codes and informations are:
0x00000001:
This argument is defined as an ACPI root resources failure. More specifically, ACPI could not find the system control interrupt (SCI) vector in any of the resources that ACPI received at startup. SCI is a special interrupt type that provides a more efficient way to deal with problems that are normally handled by system management interrupts (SMI). If SCIs cannot be initialized, ACPI cannot function. This can occur if no entry for this IRQ is found in the list or if no IRQ resource list was found at all.
0x00000002:
This error is defined as ACPI root PCI resource failure. To discover what current resources are being used by PCI devices, ACPI must be able to query the CRS descriptor in the ACPI namespace. This error occurs if the BIOS lacks a pointer to the list, or if the list is empty, or if the list contains errors or conflicts.
Here is your dsdt table for my Asus k555lb laptop:



XPLAKE8175 has attached files to this post
#2145 diderius6 ⇗ @XPLAKE8175

Have you made a try with the acpi.sys from post 2076 for XP SP3?
No mod in DSDT is needed, it works on all AMD, Intel boards that I tested,
also for USB
Dietmar

 

Page 144

#2146 XPLAKE8175 ⇗ @diderius6
How can I integrate it? Windows 10 or XP mps mode? I tried asl /loadtable dsdt.aml.
#2147 skullteria
Zitat von ⇗ XPLAKE8175 im Beitrag ¶ #2144
@diderius6
Which Section of my dsdt table must be solved to not get ACPI 0x000000A5 error. Detailed error codes and informations are:
0x00000001:
This argument is defined as an ACPI root resources failure. More specifically, ACPI could not find the system control interrupt (SCI) vector in any of the resources that ACPI received at startup. SCI is a special interrupt type that provides a more efficient way to deal with problems that are normally handled by system management interrupts (SMI). If SCIs cannot be initialized, ACPI cannot function. This can occur if no entry for this IRQ is found in the list or if no IRQ resource list was found at all.
0x00000002:
This error is defined as ACPI root PCI resource failure. To discover what current resources are being used by PCI devices, ACPI must be able to query the CRS descriptor in the ACPI namespace. This error occurs if the BIOS lacks a pointer to the list, or if the list is empty, or if the list contains errors or conflicts.
Here is your dsdt table for my Asus k555lb laptop:




"This can occur if no entry for this IRQ is found in the list or if no IRQ resource list was found at all.
0x00000002:"
This is the error when try load Window Xp with winload from Vista
#2148 XPLAKE8175 This error related with IRQs.
#2149 diderius6 ⇗ @XPLAKE8175
Copy this acpi.sy_ into your folder i386 on the installations CD of XP 32 bit.
Then use nlite 1.4.9.3 to make bootable CD *.iso
Dietmar



diderius6 has attached files to this post
#2150 daniel_k ⇗ @Mov AX, 0xDEAD

I've tried really hard to patch existing functions related to opcodes but failed.

Apart from QwordConst which you guided me to add, there are only 2 that need to be added to original XP's ACPI.SYS 5512: CreateQwordField and ToInteger.

I was working on 5512 because don't like the idea of mixing files from a beta OS.

Tried to hook it to a similar function such as Decrement/Increment and added a check for opcode 99 for skipping any operation (+ or -, as expected), right before the 0x75 opcode compare.

XP works just fine, but as soon as I change the DSDT to enable processing of ToInteger, it crashes.
#2151 XPLAKE8175 ⇗ @diderius6
I did the method and it succeeded but restarts every time if a new hardware plugged in. How can I load your DSDT.aml?
#2152 Mov AX, 0xDEAD
Zitat von ⇗ daniel_k im Beitrag ¶ #2142
@Mov AX, 0xDEAD
 
If (LGreaterEqual (OSYS, 0x07D6))
{
And (PDBM, 0xFFFFFFFFFFFFFFF9, PDBM) /* \_SB_.PCI0.XHC_.PDBM */
}


Instead of skipping the code, what do you think of changing the 64-bit value to a 32-bit one as the higher order part is ignored anyway in this operation?

 
And (PDBM, 0xFFFFFFF9, PDBM)




yes, it is right for acpi.sys with 32 integers

p.s my patch of classic 5512 do exactly what you said ¶ Windows XP SP3 32bit and modern PC parts (128) without any changes in dsdt
it load only low 4 bytes (res.int<-esi) then increment ip to next opcode (+8)
5048 dont need this because it already has 64 integers support ¶ Windows XP SP3 32bit and modern PC parts (21)
#2153 daniel_k ⇗ @Mov AX, 0xDEAD, what I want to know is if it won't affect functionality newer OSes with support for 64-bit integers.

Don't want to screw anything.

Will it behave the same as with original code?
#2154 Mov AX, 0xDEAD
Zitat von ⇗ daniel_k im Beitrag ¶ #2150
@Mov AX, 0xDEAD
Apart from QwordConst which you guided me to add, there are only 2 that need to be added to original XP's ACPI.SYS 5512: CreateQwordField and ToInteger.


copy pointer CreateDwordField to CreateQwordField  struct. Creating real 64 bit adressing will be more harder.

Zitat
XP works just fine, but as soon as I change the DSDT to enable processing of ToInteger, it crashes.


Zitat
after i discovered "vista beta acpi.sys" anyone can add new opcode handlers to classic winxp acpi.sys, but only 32 bit integers betas is compatible with winxp. 1) copy bytes from existing acpi.sys 2) add relocs 3) create missing structs 4) add missing import or replace with internal impelemtation

that's how I made my acpi.sys but took the code from win7 x32 (converted back 64-int logic to 32-int)
#2155 Illen ⇗ @diderius6

Got XP x64 to boot from UEFI on my Z170, using the NVidia 8400GS GPU (instead of GTX 1060) with the Anapa VBE driver installed. This is not pure UEFI yet though (legacy video support is required), because the 8400GS doesn't support UEFI and the NVidia XP native drivers (340.52 for 8400GS and 368.81 for GTX 1060) didn't like UEFI boot. I couldn't get VBE driver to work on GTX 1060 or HD 530 iGPU either.
#2156 diderius6 ⇗ @Illen

But this is so nice anyway:))!

Can you please write a short tutorial step by step,
how you reached this,
have a nice evening

Dietmar

PS: Soon I get a lenovo flex 10.
There you have 32 bit UEFI Bios. And the most interesting thing is:
You can update this Bios to 64 bit UEFI. So, you can switch between them
as much as you like .
#2157 diderius6 Until now I do not succeed to install XP64 SP2 debug version on any compi.

I get always the message (using windbg)

An Access Violation occurred in C:\WINDOWS\system32\csrss.exe

Dietmar

Microsoft (R) Windows Debugger Version 6.12.0002.633 X86
Copyright (c) Microsoft Corporation. All rights reserved.

Opened \\.\com1
Waiting to reconnect...
Connected to Windows Server 2003 3790 x64 target at (Sat Aug 31 00:07:51.421 2019 (UTC + 2:00)), ptr64 TRUE
Kernel Debugger connection established.
WARNING: Inaccessible path: 'C:\WinDDK\7600.16385.1\src\openfabricsall\nvme13\nvme\objchk_wnet_x86\i386'
Symbol search path is: C:\WinDDK\7600.16385.1\src\openfabricsall\nvme13\nvme\objchk_wnet_x86\i386;SRV*c:\symbols
*⇗ http://msdl.microsoft.com/download/symbols;C:\symbols
Executable search path is: C:\localsymbols
Windows Server 2003 Kernel Version 3790 MP (1 procs) Checked x64
Built by: 3790.srv03_sp2_rtm.070216-1710
Machine Name:
Kernel base = 0xfffff800`01000000 PsLoadedModuleList = 0xfffff800`013d1fd0
System Uptime: not available
AhciHwFindAdapter finishing
==>netdmaInitialize
<==__FUNCTION__ Status 0
WDF: [DriverEntry] HDAudio Bus Driver - Driver Framework Edition.
WDF: [DriverEntry] Built May 26 2005 08:46:10
KDTARGET: Refreshing KD connection
FromRegistry: Option1 = 0
22:08:14.734+9cf0dc20:0000+RDPDYN_Dispatch +0680+Unhandled PnP IRP with minor 00000018
VideoPort: This is an ACPI Machine !
HDAudBus: [AzStartDevice] Starting hdaudio bus driver device 0x00000520646AD027
HDAudBus: [ReadPciDeviceId] Vendor ID: 10DE, Device ID: E0F, Revision ID: A1
HDAudBus: [AzEnumerateBus] Scanning codec on SDI0
HDAudBus: [AzEnumerateBus] Scanning function group at node 1
HDAudBus: [AzEnumerateBus] SSID 0, trying new control verb.
HDAudBus: [AzEnumerateBus] New SSID: 19DA730B.
HDAudBus: [AzStartDevice] Starting hdaudio bus driver device 0x0000052064C1A8D7
HDAudBus: [ReadPciDeviceId] Vendor ID: 8086, Device ID: A170, Revision ID: 31
HDAudBus: [AzEnumerateBus] Scanning codec on SDI0
HDAudBus: [AzEnumerateBus] Scanning function group at node 1
HDAudBus: [AzEnumerateBus] SSID 0, trying new control verb.
HDAudBus: [AzEnumerateBus] New SSID: 1458A182.

*** Assertion failed: ((Timer)->Header.Type == TimerNotificationObject) || ((Timer)->Header.Type == TimerSynchronizationObject)
*** Source File: d:\nt\base\ntos\ke\timerobj.c, line 190

Break repeatedly, break Once, Ignore, terminate Process, or terminate Thread (boipt)? i
i
==>NetDmaRegisterClient: ClientContext 0000000000000000
<==NetDmaRegisterClient: ClientContext 0000000000000000, ClientHandle FFFFFADF9A966A50, Status 0
==>NetDmaAllocateChannel: ClientHandle FFFFFADF9A966A50
<==NetDmaAllocateChannel: ClientHandle FFFFFADF9A966A50, Status c000009a
==>NetDmaAllocateChannel: ClientHandle FFFFFADF9A966A50
<==NetDmaAllocateChannel: ClientHandle FFFFFADF9A966A50, Status c000009a
==>NetDmaAllocateChannel: ClientHandle FFFFFADF9A966A50
<==NetDmaAllocateChannel: ClientHandle FFFFFADF9A966A50, Status c000009a
==>NetDmaAllocateChannel: ClientHandle FFFFFADF9A966A50
<==NetDmaAllocateChannel: ClientHandle FFFFFADF9A966A50, Status c000009a
Checking file system on C:
The volume is clean.
Windows has finished checking the disk.
GDI: VerifierInitialization: failed to get info from ntoskrnl

(s: 0 0x180.184 smss.exe) USRK-[Wrn] *** win32k: DBCS:[0] IME:[0] MiddleEast:[0] CTFIME:[0]
Installed
Installed
R2BuildNumber


*** An Access Violation occurred in C:\WINDOWS\system32\csrss.exe ObjectDirectory=\Windows SharedSection=1024,20480,768 Windows=On SubSystemType=Windows ServerDll=basesrv,1 ServerDll=winsrv:UserServerDllInitialization,3 ServerDll=winsrv:ConServerDllInitialization,2 ProfileControl=Off MaxRequestThreads=16:

The instruction at 0000000077F1E1D1 tried to read from an invalid address, 0000000000000018

*** enter .exr 000000000015F370 for the exception record
*** enter .cxr 000000000015EEA0 for the context
*** then kb to get the faulting stack

Break instruction exception - code 80000003 (first chance)
ntdll!DbgBreakPoint:
0033:00000000`77f86240 cc int 3
0: kd> !analyze -v
Connected to Windows Server 2003 3790 x64 target at (Sat Aug 31 00:10:03.312 2019 (UTC + 2:00)), ptr64 TRUE
Loading Kernel Symbols
...............................................................
...................
Loading User Symbols
....
Loading unloaded module list
.......
*******************************************************************************
* *
* Exception Analysis *
* *
*******************************************************************************

*** ERROR: Symbol file could not be found. Defaulted to export symbols for CSRSRV.dll -
*** ERROR: Module load completed but symbols could not be loaded for csrss.exe

FAULTING_IP:
ntdll!RtlAllocateHeap+51
0033:00000000`77f1e1d1 440b6718 or r12d,dword ptr [rdi+18h]

EXCEPTION_RECORD: 000000000015f370 -- (.exr 0x15f370)
ExceptionAddress: 0000000077f1e1d1 (ntdll!RtlAllocateHeap+0x0000000000000051)
ExceptionCode: c0000005 (Access violation)
ExceptionFlags: 00000000
NumberParameters: 2
Parameter[0]: 0000000000000000
Parameter[1]: 0000000000000018
Attempt to read from address 0000000000000018

ERROR_CODE: (NTSTATUS) 0x80000003 - {AUSNAHME} Haltepunkt Im Quellprogramm wurde ein Haltepunkt erreicht.

EXCEPTION_CODE: (HRESULT) 0x80000003 (2147483651) - Mindestens ein Argument ist ung ltig.

EXCEPTION_PARAMETER1: 0000000000000000

MOD_LIST: <ANALYSIS/>

NTGLOBALFLAG: 440000

APPLICATION_VERIFIER_FLAGS: 0

CONTEXT: 000000000015eea0 -- (.cxr 0x15eea0)
rax=0000000000000000 rbx=0000000000000000 rcx=0000000000000000
rdx=0000000020040000 rsi=0000000000164bb0 rdi=0000000000000000
rip=0000000077f1e1d1 rsp=000000000015f440 rbp=000000000016481f
r8=0000000000001ac8 r9=0000000000000000 r10=0065007400730079
r11=000000000015f618 r12=0000000020040000 r13=0000000000000000
r14=0000000000000080 r15=000007ff7c5b1918
iopl=0 nv up ei pl zr na po nc
cs=0033 ss=002b ds=002b es=002b fs=0053 gs=002b efl=00010246
ntdll!RtlAllocateHeap+0x51:
0033:00000000`77f1e1d1 440b6718 or r12d,dword ptr [rdi+18h] ds:002b:00000000`00000018=????????
Resetting default scope

READ_ADDRESS: 0000000000000018

FOLLOWUP_IP:
basesrv!ServerDllInitialization+0
0033:000007ff`7c1e5810 48894c2408 mov qword ptr [rsp+8],rcx

LAST_CONTROL_TRANSFER: from 000007ff7c1e5b60 to 0000000077f1e1d1

FAULTING_THREAD: ffffffffffffffff

ADDITIONAL_DEBUG_TEXT: Followup set based on attribute [Is_ChosenCrashFollowupThread] from Frame:[0] on thread:[PSEUDO_THREAD] ; Enable Pageheap/AutoVerifer

DEFAULT_BUCKET_ID: HEAP_CORRUPTION

PRIMARY_PROBLEM_CLASS: HEAP_CORRUPTION

BUGCHECK_STR: APPLICATION_FAULT_HEAP_CORRUPTION_STATUS_BREAKPOINT

STACK_TEXT:
00000000`0015f440 00000000`77f1e1d1 ntdll!RtlAllocateHeap+0x51
00000000`0015f620 000007ff`7c1e5b60 basesrv!ServerDllInitialization+0x350
00000000`0015fc50 000007ff`7c5b3eb8 csrsrv!CsrUnhandledExceptionFilter+0x368
00000000`0015fd10 000007ff`7c5b38c0 csrsrv!CsrPopulateDosDevices+0x760
00000000`0015fee0 000007ff`7c5b3a10 csrsrv!CsrServerInitialization+0xa0
00000000`0015ff10 00000000`4a681121 csrss+0x1121
00000000`0015ff18 ffffffff`ffffffff unknown!fillpattern+0x0
00000000`0015ff20 00000000`00000005 unknown!unknown+0x0
00000000`0015ff28 00000000`00164560 unknown!unknown+0x0
00000000`0015ff30 00000000`0000000a unknown!unknown+0x0
00000000`0015ff38 00000000`0000000d unknown!unknown+0x0
00000000`0015ff40 000007ff`00000000 unknown!unknown+0x0
00000000`0015ff48 00000000`00164680 unknown!unknown+0x0
00000000`0015ff50 00000000`00164630 unknown!unknown+0x0
00000000`0015ff58 00000000`0016478d unknown!unknown+0x0
00000000`0015ff60 00000000`4a6815bb csrss+0x15bb
00000000`0015ff68 00000000`0015ffa0 unknown!unknown+0x0


SYMBOL_NAME: basesrv!ServerDllInitialization+0

FOLLOWUP_NAME: MachineOwner

MODULE_NAME: basesrv

IMAGE_NAME: basesrv.dll

DEBUG_FLR_IMAGE_TIMESTAMP: 45d73cba

STACK_COMMAND: .cxr 00164CB0 ; kb ; dds 15f440 ; kb

FAILURE_BUCKET_ID: HEAP_CORRUPTION_80000003_basesrv.dll!ServerDllInitialization

BUCKET_ID: X64_APPLICATION_FAULT_HEAP_CORRUPTION_STATUS_BREAKPOINT_basesrv!ServerDllInitialization+0

Followup: MachineOwner
---------
  
#2158 diderius6 Now I make a try with only the acpi.sys from XP64 SP2 debug
Dietmar
#2159 daniel_k ⇗ @Mov AX, 0xDEAD, thanks.

⇗ @Illen, if the GPU accelerated driver doesn't work, IMHO, it doesn't make sense to use XP in UEFI mode. Thanks for sharing the video, interesting anyway.
Where the Anapa driver can be found?

⇗ @diderius6, good luck!
#2160 skullteria Hello, please test winload and bootmgr to boot Windows XP. It is normal version, not UEFI.



skullteria has attached files to this post

 

Page 145

#2161 diderius6 ⇗ @daniel_k

First we need to solve via forced jmp (EB) in debug acpi.sys XP64 SP2 all the errors,
which appears on Intel boards also. For me it is not easy, because I have no good tools for XP64. When we have eleminated all
the "normal" acpi errors, windbg will hopefully show us the reason of ACPI BSOD, which happens only on Ryzen boards.
For Ida pro we need the symbols for exact this acpi.sys. I add this debug acpi.sys here.

This is from asus prime x570-pro Ryzen board with Bios version 407
and original DSDT in Bios. This is the very first time, that I get an output which belongs pur to acpi.sys.

Microsoft (R) Windows Debugger Version 6.12.0002.633 X86
Copyright (c) Microsoft Corporation. All rights reserved.

Opened \\.\com1
Waiting to reconnect...
Connected to Windows Server 2003 3790 x64 target at (Sat Aug 31 01:43:18.109 2019 (UTC + 2:00)), ptr64 TRUE
Kernel Debugger connection established.
WARNING: Inaccessible path: 'C:\WinDDK\7600.16385.1\src\openfabricsall\nvme13\nvme\objchk_wnet_x86\i386'
Symbol search path is: C:\WinDDK\7600.16385.1\src\openfabricsall\nvme13\nvme\objchk_wnet_x86\i386;SRV*c:\symbols
*⇗ http://msdl.microsoft.com/download/symbols;C:\symbols
Executable search path is: C:\localsymbols
Windows Server 2003 Kernel Version 3790 MP (1 procs) Free x64
Built by: 3790.srv03_sp2_rtm.070216-1710
Machine Name:
Kernel base = 0xfffff800`01000000 PsLoadedModuleList = 0xfffff800`011d5100
System Uptime: not available
ACPIInitializeDDB: AMLILoadDDB failed 0xc0140001

*** Assertion failed: ACPIInitializeDDB: AMLILoadDDB failed to load DDB
0
*** Source File: d:\nt\base\busdrv\acpi\driver\shared\acpiinit.c, line 515

Break repeatedly, break Once, Ignore, terminate Process, or terminate Thread (boipt)? i
i

*** Fatal System Error: 0x000000a5 <--- Hack, which blocks all bugcheck A5 11h in acpi.sys
(0x0000000000000011,0x0000000000000008,0xFFFFFADF9339B1F8,0x0000000020120913)

Break instruction exception - code 80000003 (first chance)

A fatal system error has occurred.
Debugger entered on first try; Bugcheck callbacks have not been invoked.

A fatal system error has occurred.

Connected to Windows Server 2003 3790 x64 target at (Sat Aug 31 01:43:56.437 2019 (UTC + 2:00)), ptr64 TRUE
Loading Kernel Symbols
........................
Loading User Symbols

*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

Use !analyze -v to get detailed debugging information.

BugCheck A5, {11, 8, fffffadf9339b1f8, 20120913}

*** No owner thread found for resource fffff800011dda40
*** No owner thread found for resource fffff800011dda40
*** No owner thread found for resource fffff800011dda40
Probably caused by : ACPI.sys ( ACPI!ACPIInitializeDDB+127 )

Followup: MachineOwner
---------

nt!DbgBreakPointWithStatus:
fffff800`01026db0 cc int 3
0: kd> !analyze -v
*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

ACPI_BIOS_ERROR (a5)
The ACPI Bios in the system is not fully compliant with the ACPI specification.
The first value indicates where the incompatibility lies:
This bug check covers a great variety of ACPI problems. If a kernel debugger
is attached, use "!analyze -v". This command will analyze the precise problem,
and display whatever information is most useful for debugging the specific
error.
Arguments:
Arg1: 0000000000000011, ACPI_SYSTEM_CANNOT_START_ACPI
The system could not enter ACPI mode
Arg2: 0000000000000008, Failed to load DDB
Arg3: fffffadf9339b1f8, Pointer to the table that ACPI failed to load
Arg4: 0000000020120913, Creator Revision

Debugging Details:
------------------

*** No owner thread found for resource fffff800011dda40
*** No owner thread found for resource fffff800011dda40
*** No owner thread found for resource fffff800011dda40

DEFAULT_BUCKET_ID: DRIVER_FAULT

BUGCHECK_STR: 0xA5

PROCESS_NAME: System

CURRENT_IRQL: 2

LOCK_ADDRESS: fffff800011ddb40 -- (!locks fffff800011ddb40)

Resource @ nt!IopDeviceTreeLock (0xfffff800011ddb40) Shared 1 owning threads
Threads: fffffadf9ee91bf0-01<*>
1 total locks, 1 locks currently held

PNP_TRIAGE:
Lock address : 0xfffff800011ddb40
Thread Count : 1
Thread address: 0xfffffadf9ee91bf0
Thread wait : 0xa1

LAST_CONTROL_TRANSFER: from fffff800010d673e to fffff80001026db0

STACK_TEXT:
fffffadf`936076d8 fffff800`010d673e : 00000000`00000000 00000000`00000000 00000000`00000011 fffff800`0105669e : nt!DbgBreakPointWithStatus
fffffadf`936076e0 fffff800`010d7d0e : fffff800`00000003 00000000`000000a5 00000000`00000011 00000000`00000008 : nt!KiBugCheckDebugBreak+0x1e
fffffadf`93607740 fffff800`0102ea54 : fffffa80`00000000 fffffadf`92d66250 fffffadf`9eac0000 fffffadf`9ead05c8 : nt!KeBugCheck2+0x640
fffffadf`93607d80 fffffadf`92de0a87 : 00000000`000000a5 00000000`00000011 00000000`00000008 fffffadf`9339b1f8 : nt!KeBugCheckEx+0x104
fffffadf`93607dc0 fffffadf`92de0b3a : fffffa80`00000014 00000000`00000000 00000000`00000001 fffffadf`93a9c028 : ACPI!ACPIInitializeDDB+0x127
fffffadf`93607e20 fffffadf`92de0f1f : fffffadf`00000001 fffffadf`92dea901 fffffadf`00000003 00000000`00000000 : ACPI!ACPIInitializeDDBs+0xaa
fffffadf`93607e60 fffffadf`92d72a4a : fffffadf`9ebd0820 fffffadf`92d680b0 fffffadf`93607ee0 fffffadf`92dc3cb0 : ACPI!ACPIInitialize+0x2ff
fffffadf`93607eb0 fffffadf`92ddd3ba : fffffadf`9ebd0820 fffffa80`0045ac80 fffffadf`52706341 fffffadf`9ebd0590 : ACPI!ACPIInitStartACPI+0x8a
fffffadf`93607f20 fffffadf`92d6c804 : fffffadf`9ebd0820 fffffadf`9ebd1260 fffffadf`93607fd8 00000000`00000001 : ACPI!ACPIRootIrpStartDevice+0x1ca
fffffadf`93607fa0 fffff800`0133ed04 : fffffadf`9ebd0820 fffffadf`9ebd1260 fffffadf`9ebd0820 00000000`00000000 : ACPI!ACPIDispatchIrp+0x164
fffffadf`93608030 fffff800`013364e3 : fffffadf`9eeac870 00000000`00000000 fffffadf`9eeac480 fffffadf`9eeac870 : nt!IopSynchronousCall+0x144
fffffadf`936080a0 fffff800`013359a2 : 00000000`00020019 fffffadf`9eeb6000 fffffadf`9eeac870 00000000`00000000 : nt!PipProcessStartPhase1+0x1c7
fffffadf`93608140 fffff800`010cc809 : fffffadf`9ebda3f0 fffff800`00092470 fffffadf`9eeb3910 fffffadf`9ebda3f0 : nt!PipProcessDevNodeTree+0x2aa
fffffadf`936084d0 fffff800`014329f7 : ffffffff`00000000 fffffadf`9ebda3f0 fffff800`00092470 fffffadf`9eeb3940 : nt!PipDeviceActionWorker+0x199
fffffadf`93608560 fffff800`0142a14d : 00000000`00000000 00000000`0000fffc 00000000`00000000 00000000`0000fffc : nt!IopInitializeBootDrivers+0xc57
fffffadf`936088c0 fffff800`01428144 : fffff800`00091598 fffff800`00091598 00000000`00000003 fffffadf`9ee90010 : nt!IoInitSystem+0xf4f
fffffadf`93608a50 fffff800`0130dc29 : 12d93b24`1e99bf20 fffffadf`9ee91bf0 00000000`00000080 fffffadf`9ee91bf0 : nt!Phase1InitializationDiscard+0x111d
fffffadf`93608d40 fffff800`0124b972 : b6e6174a`baa6174e 8dd685ea`819685ee 307b39e5`3c3b39e1 0b4bab45`070baf41 : nt!Phase1Initialization+0x9
fffffadf`93608d70 fffff800`010202d6 : fffff800`011b1180 fffffadf`9ee91bf0 fffff800`011b5500 00000000`da83b888 : nt!PspSystemThreadStartup+0x3e
fffffadf`93608dd0 00000000`00000000 : 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000000 : nt!KxStartSystemThread+0x16


STACK_COMMAND: kb

FOLLOWUP_IP:
ACPI!ACPIInitializeDDB+127
fffffadf`92de0a87 cc int 3

SYMBOL_STACK_INDEX: 4

SYMBOL_NAME: ACPI!ACPIInitializeDDB+127 <--- First hack needed in this acpi.sys

FOLLOWUP_NAME: MachineOwner

MODULE_NAME: ACPI

IMAGE_NAME: ACPI.sys

DEBUG_FLR_IMAGE_TIMESTAMP: 45d70c6e

FAILURE_BUCKET_ID: X64_0xA5_ACPI!ACPIInitializeDDB+127

BUCKET_ID: X64_0xA5_ACPI!ACPIInitializeDDB+127

Followup: MachineOwner
---------


diderius6 has attached files to this post
#2162 daniel_k ⇗ @diderius6

I've attached 2 files based on the debug x64 ACPI.SYS.

acpi_qword.sys: Added QwordConst and CreateQwordField opcodes.

acpi_qword_stop_a5_11.sys: Same as above plus disabled Stop error A5, 11h

Sent you a PM with something to help you with x64.
#2163 IntiMD
Zitat von ⇗ daniel_k im Beitrag ¶ #2159
if the GPU accelerated driver doesn't work, IMHO, it doesn't make sense to use XP in UEFI mode. Thanks for sharing the video, interesting anyway.
Where the Anapa driver can be found?


Not him but it can be found here: ⇗ https://www.bearwindows.zcm.com.au/vbemp.htm (for the x64 driver, requires a small fix in this ⇗ link)
#2164 diderius6 ⇗ @daniel_k

Now the behavior is exact like the 32 bit acpi.sys on Ryzen boards before. I chose your second acpi.sys against BSOD A5 0x011 also.
Now it shows A5 (0x2001,..) error, fail to enable PIC mode (for ACPI).

This means, that your hack works and now we come to the core of the problem on Ryzen XP 64 bit,

Dietmar

Microsoft (R) Windows Debugger Version 6.12.0002.633 X86
Copyright (c) Microsoft Corporation. All rights reserved.

Opened \\.\com1
Waiting to reconnect...
Connected to Windows Server 2003 3790 x64 target at (Sat Aug 31 11:32:57.859 2019 (UTC + 2:00)), ptr64 TRUE
Kernel Debugger connection established.
WARNING: Inaccessible path: 'C:\WinDDK\7600.16385.1\src\openfabricsall\nvme13\nvme\objchk_wnet_x86\i386'
Symbol search path is: C:\WinDDK\7600.16385.1\src\openfabricsall\nvme13\nvme\objchk_wnet_x86\i386;SRV*c:\symbols
*⇗ http://msdl.microsoft.com/download/symbols;C:\symbols
Executable search path is: C:\localsymbols
Windows Server 2003 Kernel Version 3790 MP (1 procs) Free x64
Built by: 3790.srv03_sp2_rtm.070216-1710
Machine Name:
Kernel base = 0xfffff800`01000000 PsLoadedModuleList = 0xfffff800`011d5100
System Uptime: not available

*** Fatal System Error: 0x000000a5
(0x0000000000002001,0x0000000000000001,0xFFFFFFFFC0000034,0xFFFFFADF9EAD3238)

Break instruction exception - code 80000003 (first chance)

A fatal system error has occurred.
Debugger entered on first try; Bugcheck callbacks have not been invoked.

A fatal system error has occurred.

Connected to Windows Server 2003 3790 x64 target at (Sat Aug 31 11:33:11.187 2019 (UTC + 2:00)), ptr64 TRUE
Loading Kernel Symbols
........................
Loading User Symbols

*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

Use !analyze -v to get detailed debugging information.

BugCheck A5, {2001, 1, ffffffffc0000034, fffffadf9ead3238}

*** No owner thread found for resource fffff800011dda40
*** No owner thread found for resource fffff800011dda40
*** No owner thread found for resource fffff800011dda40
Probably caused by : ACPI.sys ( ACPI!NotifyHalWithMachineStates+582 )

Followup: MachineOwner
---------

nt!DbgBreakPointWithStatus:
fffff800`01026db0 cc int 3
15: kd> !analyze -v
*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

ACPI_BIOS_ERROR (a5)
The ACPI Bios in the system is not fully compliant with the ACPI specification.
The first value indicates where the incompatibility lies:
This bug check covers a great variety of ACPI problems. If a kernel debugger
is attached, use "!analyze -v". This command will analyze the precise problem,
and display whatever information is most useful for debugging the specific
error.
Arguments:
Arg1: 0000000000002001, ACPI_FAILED_PIC_METHOD
ACPI tried to evaluate the PIC control method but failed
Arg2: 0000000000000001, InterruptModel (Integer)
Arg3: ffffffffc0000034, return value from interpreter
Arg4: fffffadf9ead3238, Pointer to the PIC control method

Debugging Details:
------------------

*** No owner thread found for resource fffff800011dda40
*** No owner thread found for resource fffff800011dda40
*** No owner thread found for resource fffff800011dda40

DEFAULT_BUCKET_ID: DRIVER_FAULT

BUGCHECK_STR: 0xA5

PROCESS_NAME: System

CURRENT_IRQL: 2

LOCK_ADDRESS: fffff800011ddb40 -- (!locks fffff800011ddb40)

Resource @ nt!IopDeviceTreeLock (0xfffff800011ddb40) Shared 1 owning threads
Threads: fffffadf9ee91bf0-01<*>
1 total locks, 1 locks currently held

PNP_TRIAGE:
Lock address : 0xfffff800011ddb40
Thread Count : 1
Thread address: 0xfffffadf9ee91bf0
Thread wait : 0x9f

LAST_CONTROL_TRANSFER: from fffff800010d673e to fffff80001026db0

STACK_TEXT:
fffffadf`93607698 fffff800`010d673e : 00000000`0000000f 00000000`00000000 00000000`00002001 fffff800`0105669e : nt!DbgBreakPointWithStatus
fffffadf`936076a0 fffff800`010d7d0e : fffff800`00000003 00000000`000000a5 00000000`00002001 00000000`00000001 : nt!KiBugCheckDebugBreak+0x1e
fffffadf`93607700 fffff800`0102ea54 : 00000000`00000000 00000000`00000000 ffffffff`fffdf3f0 fffffa80`004685e0 : nt!KeBugCheck2+0x640
fffffadf`93607d40 fffffadf`92dcb6f2 : 00000000`000000a5 00000000`00002001 00000000`00000001 ffffffff`c0000034 : nt!KeBugCheckEx+0x104
fffffadf`93607d80 fffffadf`92d72a8b : 00000000`00000000 fffffadf`00000000 fffffadf`93607e00 fffffadf`92dc3c00 : ACPI!NotifyHalWithMachineStates+0x582
fffffadf`93607eb0 fffffadf`92ddd3ba : fffffadf`9ebd0820 fffffa80`0045ac20 fffffadf`52706341 fffffadf`9ebd0590 : ACPI!ACPIInitStartACPI+0xcb
fffffadf`93607f20 fffffadf`92d6c804 : fffffadf`9ebd0820 fffffadf`9ebd1260 fffffadf`93607fd8 00000000`00000001 : ACPI!ACPIRootIrpStartDevice+0x1ca
fffffadf`93607fa0 fffff800`0133ed04 : fffffadf`9ebd0820 fffffadf`9ebd1260 fffffadf`9ebd0820 00000000`00000000 : ACPI!ACPIDispatchIrp+0x164
fffffadf`93608030 fffff800`013364e3 : fffffadf`9eeac870 00000000`00000000 fffffadf`9eeac480 fffffadf`9eeac870 : nt!IopSynchronousCall+0x144
fffffadf`936080a0 fffff800`013359a2 : 00000000`00020019 fffffadf`9eeb6000 fffffadf`9eeac870 00000000`00000000 : nt!PipProcessStartPhase1+0x1c7
fffffadf`93608140 fffff800`010cc809 : fffffadf`9eeb3870 fffff800`00092528 fffffadf`9eeb38c0 fffffadf`9eeb3870 : nt!PipProcessDevNodeTree+0x2aa
fffffadf`936084d0 fffff800`014329f7 : ffffffff`00000000 fffffadf`9eeb3870 fffff800`00092528 fffffadf`9eeb38f0 : nt!PipDeviceActionWorker+0x199
fffffadf`93608560 fffff800`0142a14d : 00000000`00000000 00000000`0000fffc 00000000`00000000 00000000`0000fffc : nt!IopInitializeBootDrivers+0xc57
fffffadf`936088c0 fffff800`01428144 : fffff800`00091650 fffff800`00091650 00000000`00000003 fffffadf`9ee90010 : nt!IoInitSystem+0xf4f
fffffadf`93608a50 fffff800`0130dc29 : 12d93b24`1e99bf20 fffffadf`9ee91bf0 00000000`00000080 fffffadf`9ee91bf0 : nt!Phase1InitializationDiscard+0x111d
fffffadf`93608d40 fffff800`0124b972 : b6e6174a`baa6174e 8dd685ea`819685ee 307b39e5`3c3b19e1 0b4bab45`070baf41 : nt!Phase1Initialization+0x9
fffffadf`93608d70 fffff800`010202d6 : fffff800`011b1180 fffffadf`9ee91bf0 fffff800`011b5500 00000000`da83b678 : nt!PspSystemThreadStartup+0x3e
fffffadf`93608dd0 00000000`00000000 : 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000000 : nt!KxStartSystemThread+0x16


STACK_COMMAND: kb

FOLLOWUP_IP:
ACPI!NotifyHalWithMachineStates+582
fffffadf`92dcb6f2 cc int 3

SYMBOL_STACK_INDEX: 4

SYMBOL_NAME: ACPI!NotifyHalWithMachineStates+582

FOLLOWUP_NAME: MachineOwner

MODULE_NAME: ACPI

IMAGE_NAME: ACPI.sys

DEBUG_FLR_IMAGE_TIMESTAMP: 45d70c6e

FAILURE_BUCKET_ID: X64_0xA5_ACPI!NotifyHalWithMachineStates+582

BUCKET_ID: X64_0xA5_ACPI!NotifyHalWithMachineStates+582

Followup: MachineOwner
---------
  
#2165 diderius6 Hi,
does anybody know,
where I can get SYMBOLS for
the XP64 DEBUG SP2 version
Dietmar

PS: In this case, acpi.pdb for the debug XP 64 SP2 would be enough.
5.2.3790.3959 (srv03_sp2_rtm.070216-1710)

EDIT:

It is in file

WindowsServer2003-KB933548-v1-x64-symbols-NRL-ENU-DEBUG.exe
#2166 Illen
Zitat von ⇗ diderius6 im Beitrag ¶ #2156


But this is so nice anyway:))!

Can you please write a short tutorial step by step,
how you reached this,
have a nice evening

Dietmar


First, you need to install the latest (2015) VBE driver (and also correct the .inf as mentioned in post ¶ #2163). If you install it and it works, copy the contents of "server_BCD" folder (from the ⇗ xp_efi package) over your Windows XP x64 installation.  Your drive with XP x64 install should now appear as UEFI bootable device in the boot device selector of your UEFI. Boot from it and choose the "Disable Driver Signature Enforcement" option, now the XP x64 install should boot from UEFI.

Note: You don't need to convert the the drive to GPT, you can keep the MBR partition table (along the NTLDR bootsector).
Zitat von ⇗ diderius6 im Beitrag ¶ #2156

PS: Soon I get a lenovo flex 10.
There you have 32 bit UEFI Bios. And the most interesting thing is:
You can update this Bios to 64 bit UEFI. So, you can switch between them
as much as you like .


Nice one, by the way, I do actually have an 32 bit UEFI Class 3 device (an Atom based tablet), on which I would like to experiment with Windows 2003.
Zitat von ⇗ daniel_k im Beitrag ¶ #2159

if the GPU accelerated driver doesn't work, IMHO, it doesn't make sense to use XP in UEFI mode. Thanks for sharing the video, interesting anyway.
Where the Anapa driver can be found?


Indeed, although this might be the only way to boot XP x64 in future, when CSM is entirely depracated.
#2167 infuscomus ⇗ @diderius6

i have them for server 2003 debug x64



infuscomus has attached files to this post
#2168 kukonosau ACPI Server 2003 x64 for Ryzen?
#2169 infuscomus
Zitat von ⇗ kukonosau im Beitrag ¶ #2168
ACPI Server 2003 x64 for Ryzen?


⇗ @kukonosau

not yet, just symbols for debugging
#2170 kukonosau Thanks. But ACPI Server 2003 x64 equal ACPI Windows XP x64?
#2171 diderius6 ⇗ @daniel_k

I think, the error is in the InterruptModel.

Take a look at (here original) acpi.sys (Debug XP64 SP2)
83 3D 18 6C FF FF 00 0F 86 95 00 00 00 =>

83 3D 18 6C FF FF 00 (force jmp loc_7D6F3)
Dietmar

EDIT:

Arguments:
Arg1: 0000000000002001, ACPI_FAILED_PIC_METHOD
ACPI tried to evaluate the PIC control method but failed
Arg2: 0000000000000001, InterruptModel (Integer) <= failed 0000000000000001 is APIC  (0000000000000000 is PIC)
Arg3: ffffffffc0000034, return value from interpreter
Arg4: fffffadf9ead3238, Pointer to the PIC control method

EDIT2: I remember, that the BSOD A5 0x2001 happens, when in FACP was writen InterruptModel 00 (Pic).
This BSOD was gone with modded FACP to InterruptModel 01 (Apic).
#2172 daniel_k ⇗ @diderius6, I've applied infuscomus's patch for x86.

See if it changes something.
#2173 daniel_k ⇗ @diderius6, try these as well.
I've forced the checks as if InterruptModel was 1 (APIC, are sure about this?).
#2174 diderius6 ⇗ @daniel_k

This was not the right place which was modded
against BSOD A5 (0x2001,..)
because all the acpi.sys show exact the same BSOD as before.
Have you looked at my post, at which place you have to JMP,
for to overcome BSOD A5 (0x2001,..)?
I am quite sure, that this is the right place
Dietmar
#2175 daniel_k ⇗ @diderius6, if you fully understand the code, you'll see it will jump if InterruptModel is 0 (zero).

 
7D651                 cmp     cs:InterruptModel, 0
7D658 jbe loc_7D6F3 -> Jump if below or equal 0



I've patched the jump right below to skip the BSOD.

Please try again, the 4 files.

 

Page 146

#2176 diderius6 ⇗ @daniel_k

I understand the missunderstanding:
The irqs are the problem of Ryzen.
And even it is Interrupt 1,
it fails

Dietmar

PS: Yes to jump always over the BSOD call A5 0x2001 is the right idea.
#2177 diderius6 I just test acpi-test1.sys. The BSOD A5 2001 is gone.
The behavior is exact like from acpi.sys for 32 bit.
Now comes there next also the BSOD A5 0x02
Dietmar

Microsoft (R) Windows Debugger Version 6.12.0002.633 X86
Copyright (c) Microsoft Corporation. All rights reserved.

Opened \\.\com1
Waiting to reconnect...
Connected to Windows Server 2003 3790 x64 target at (Sat Aug 31 18:17:50.656 2019 (UTC + 2:00)), ptr64 TRUE
Kernel Debugger connection established.
WARNING: Inaccessible path: 'C:\WinDDK\7600.16385.1\src\openfabricsall\nvme13\nvme\objchk_wnet_x86\i386'
Symbol search path is: C:\WinDDK\7600.16385.1\src\openfabricsall\nvme13\nvme\objchk_wnet_x86\i386;SRV*c:\symbols
*⇗ http://msdl.microsoft.com/download/symbols;C:\symbols
Executable search path is: C:\localsymbols
Windows Server 2003 Kernel Version 3790 MP (1 procs) Free x64
Built by: 3790.srv03_sp2_rtm.070216-1710
Machine Name:
Kernel base = 0xfffff800`01000000 PsLoadedModuleList = 0xfffff800`011d5100
System Uptime: not available

*** Assertion failed: NT_SUCCESS(status)
*** Source File: d:\nt\base\busdrv\acpi\driver\nt\bus.c, line 2682

Break repeatedly, break Once, Ignore, terminate Process, or terminate Thread (boipt)? i
i
FFFFFADF9EE95010 ACPI\PNP0A08-0 (0x9ebd94f0): IRP_MN_QUERY_RESOURCE_REQUIREMENTS = 0xc00000bb

*** Fatal System Error: 0x000000a5
(0x0000000000000002,0xFFFFFADF9EE95010,0x0000000000000001,0xFFFFFADF9EBD94F0)

Break instruction exception - code 80000003 (first chance)

A fatal system error has occurred.
Debugger entered on first try; Bugcheck callbacks have not been invoked.

A fatal system error has occurred.

Connected to Windows Server 2003 3790 x64 target at (Sat Aug 31 18:18:19.546 2019 (UTC + 2:00)), ptr64 TRUE
Loading Kernel Symbols
........................
Loading User Symbols

*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

Use !analyze -v to get detailed debugging information.

BugCheck A5, {2, fffffadf9ee95010, 1, fffffadf9ebd94f0}

*** No owner thread found for resource fffff800011dda40
*** No owner thread found for resource fffff800011dda40
*** No owner thread found for resource fffff800011dda40
*** No owner thread found for resource fffff800011dda40
Probably caused by : ACPI.sys ( ACPI!ACPIBusIrpQueryResourceRequirements+446 )

Followup: MachineOwner
---------

nt!DbgBreakPointWithStatus:
fffff800`01026db0 cc int 3
15: kd> !analyze -v
*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

ACPI_BIOS_ERROR (a5)
The ACPI Bios in the system is not fully compliant with the ACPI specification.
The first value indicates where the incompatibility lies:
This bug check covers a great variety of ACPI problems. If a kernel debugger
is attached, use "!analyze -v". This command will analyze the precise problem,
and display whatever information is most useful for debugging the specific
error.
Arguments:
Arg1: 0000000000000002, ACPI_ROOT_PCI_RESOURCE_FAILURE
ACPI could not process the resource list for the PCI root buses
Arg2: fffffadf9ee95010, The ACPI Extension for the PCI bus.
Arg3: 0000000000000001, ACPI cannot convert the BIOS' resource list into the proper
format. This probably represents a flaw in the BIOS' list
encoding procedure.
Arg4: fffffadf9ebd94f0, Pointer to the QUERY_RESOURCE_REQUIREMENTS irp

Debugging Details:
------------------

*** No owner thread found for resource fffff800011dda40
*** No owner thread found for resource fffff800011dda40
*** No owner thread found for resource fffff800011dda40
*** No owner thread found for resource fffff800011dda40

ACPI_EXTENSION: fffffadf9ee95010 -- (!acpikd.acpiext fffffadf9ee95010)

ACPI_RESCONFLICT: 0000000000000001 -- (!acpiresconflict 0000000000000001 fffffadf9ebd94f0)
Number of arguments found = 1. 2 arguments expected
Usage: acpiresconflict [DeviceExtension] [IoResList] [e820Info]


DEFAULT_BUCKET_ID: DRIVER_FAULT

BUGCHECK_STR: 0xA5

PROCESS_NAME: System

CURRENT_IRQL: 2

LOCK_ADDRESS: fffff800011ddb40 -- (!locks fffff800011ddb40)

Resource @ nt!IopDeviceTreeLock (0xfffff800011ddb40) Shared 1 owning threads
Threads: fffffadf9ee91bf0-01<*>
1 total locks, 1 locks currently held

PNP_TRIAGE:
Lock address : 0xfffff800011ddb40
Thread Count : 1
Thread address: 0xfffffadf9ee91bf0
Thread wait : 0xa9

LAST_CONTROL_TRANSFER: from fffff800010d673e to fffff80001026db0

STACK_TEXT:
fffffadf`93607448 fffff800`010d673e : 00000000`0000000f 00000000`00000000 00000000`00000002 fffff800`0105669e : nt!DbgBreakPointWithStatus
fffffadf`93607450 fffff800`010d7d0e : fffff800`00000003 00000000`000000a5 00000000`00000002 fffffadf`9ee95010 : nt!KiBugCheckDebugBreak+0x1e
fffffadf`936074b0 fffff800`0102ea54 : fffffadf`92da1040 fffffadf`9ee95010 fffffadf`9eeaa210 fffffadf`9eeb1220 : nt!KeBugCheck2+0x640
fffffadf`93607af0 fffffadf`92dceef6 : 00000000`000000a5 00000000`00000002 fffffadf`9ee95010 00000000`00000001 : nt!KeBugCheckEx+0x104
fffffadf`93607b30 fffffadf`92d6c804 : fffffadf`9ea9d980 fffffadf`9ebd94f0 fffffadf`93607c18 fffffadf`92dce2a8 : ACPI!ACPIBusIrpQueryResourceRequirements+0x446
fffffadf`93607be0 fffff800`0133ed04 : fffffadf`9ea9d980 fffffadf`9ebd94f0 fffffadf`9ea9d980 fffffadf`93607d10 : ACPI!ACPIDispatchIrp+0x164
fffffadf`93607c70 fffff800`01331abb : fffffadf`9eace270 00000000`00000000 ffffffff`800001e8 00000000`00000000 : nt!IopSynchronousCall+0x144
fffffadf`93607ce0 fffff800`01333093 : fffffadf`93607e20 00000000`00000002 fffffadf`9eace270 fffffa80`004644f0 : nt!PiQueryResourceRequirements+0x7b
fffffadf`93607da0 fffff800`0133591b : fffffadf`9eace440 fffffadf`9eace270 00000000`00000000 fffffadf`9eace270 : nt!PiProcessNewDeviceNode+0x145e
fffffadf`93608140 fffff800`010cc809 : fffffadf`9eeb4390 fffff800`00092470 fffffadf`9eeb5350 fffffadf`9eeb4390 : nt!PipProcessDevNodeTree+0x223
fffffadf`936084d0 fffff800`014329f7 : ffffffff`00000000 fffffadf`9eeb4390 fffff800`00092470 fffffadf`9eeb5380 : nt!PipDeviceActionWorker+0x199
fffffadf`93608560 fffff800`0142a14d : 00000000`00000000 00000000`0000fffc 00000000`00000000 00000000`0000fffc : nt!IopInitializeBootDrivers+0xc57
fffffadf`936088c0 fffff800`01428144 : fffff800`00091598 fffff800`00091598 00000000`00000003 fffffadf`9ee90010 : nt!IoInitSystem+0xf4f
fffffadf`93608a50 fffff800`0130dc29 : 12d93b24`1e99bf20 fffffadf`9ee91bf0 00000000`00000080 fffffadf`9ee91bf0 : nt!Phase1InitializationDiscard+0x111d
fffffadf`93608d40 fffff800`0124b972 : b6e6174a`baa6174e 8dd685ea`819685ee 307b39e5`3cbb19e1 0b4bab45`070baf41 : nt!Phase1Initialization+0x9
fffffadf`93608d70 fffff800`010202d6 : fffff800`011b1180 fffffadf`9ee91bf0 fffff800`011b5500 00000000`da83b888 : nt!PspSystemThreadStartup+0x3e
fffffadf`93608dd0 00000000`00000000 : 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000000 : nt!KxStartSystemThread+0x16


STACK_COMMAND: kb

FOLLOWUP_IP:
ACPI!ACPIBusIrpQueryResourceRequirements+446
fffffadf`92dceef6 cc int 3

SYMBOL_STACK_INDEX: 4

SYMBOL_NAME: ACPI!ACPIBusIrpQueryResourceRequirements+446

FOLLOWUP_NAME: MachineOwner

MODULE_NAME: ACPI

IMAGE_NAME: ACPI.sys

DEBUG_FLR_IMAGE_TIMESTAMP: 45d70c6e

FAILURE_BUCKET_ID: X64_0xA5_ACPI!ACPIBusIrpQueryResourceRequirements+446

BUCKET_ID: X64_0xA5_ACPI!ACPIBusIrpQueryResourceRequirements+446

Followup: MachineOwner
---------
  
#2178 daniel_k ⇗ @diderius6, please try this, based on 5048 and tell me what happens.

I think this is our best bet.
#2179 diderius6 ⇗ @daniel_k
I just test the 4 acpi.sys from before.
They show all the identic BSOD A5 (0x02)
Dietmar

PS: For acpi.sys for XP SP3 on Ryzen, I just go this hard way, solved one BSOD after the other until to the light:))!
#2180 diderius6 ⇗ @daniel_k

With the 5048 acpi.sys on Ryzen board Windbg shows no BSOD,
but the compi hangs in an infinity loop during start,
also in Safe Mode (F8)
Dietmar

Microsoft (R) Windows Debugger Version 6.12.0002.633 X86
Copyright (c) Microsoft Corporation. All rights reserved.

Opened \\.\com1
Waiting to reconnect...
Connected to Windows Server 2003 3790 x64 target at (Sat Aug 31 18:39:15.984 2019 (UTC + 2:00)), ptr64 TRUE
Kernel Debugger connection established.
WARNING: Inaccessible path: 'C:\WinDDK\7600.16385.1\src\openfabricsall\nvme13\nvme\objchk_wnet_x86\i386'
Symbol search path is: C:\WinDDK\7600.16385.1\src\openfabricsall\nvme13\nvme\objchk_wnet_x86\i386;SRV*c:\symbols
*⇗ http://msdl.microsoft.com/download/symbols;C:\symbols
Executable search path is: C:\localsymbols
Windows Server 2003 Kernel Version 3790 MP (1 procs) Free x64
Built by: 3790.srv03_sp2_rtm.070216-1710
Machine Name:
Kernel base = 0xfffff800`01000000 PsLoadedModuleList = 0xfffff800`011d5100
System Uptime: not available
AhciHwFindAdapter finishing
Break instruction exception - code 80000003 (first chance)
*******************************************************************************
* *
* You are seeing this message because you pressed either *
* CTRL+C (if you run kd.exe) or, *
* CTRL+BREAK (if you run WinDBG), *
* on your debugger machine's keyboard. *
* *
* THIS IS NOT A BUG OR A SYSTEM CRASH *
* *
* If you did not intend to break into the debugger, press the "g" key, then *
* press the "Enter" key now. This message might immediately reappear. If it *
* does, press "g" and "Enter" again. *
* *
*******************************************************************************
nt!DbgBreakPointWithStatus:
fffff800`01026db0 cc int 3
0: kd> !analyze -v
Connected to Windows Server 2003 3790 x64 target at (Sat Aug 31 18:42:09.015 2019 (UTC + 2:00)), ptr64 TRUE
Loading Kernel Symbols
........................
Loading User Symbols

*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

Unknown bugcheck code (0)
Unknown bugcheck description
Arguments:
Arg1: 0000000000000000
Arg2: 0000000000000000
Arg3: 0000000000000000
Arg4: 0000000000000000

Debugging Details:
------------------


PROCESS_NAME: Idle

FAULTING_IP:
nt!DbgBreakPointWithStatus+0
fffff800`01026db0 cc int 3

EXCEPTION_RECORD: ffffffffffffffff -- (.exr 0xffffffffffffffff)
ExceptionAddress: fffff80001026db0 (nt!DbgBreakPointWithStatus)
ExceptionCode: 80000003 (Break instruction exception)
ExceptionFlags: 00000000
NumberParameters: 1
Parameter[0]: 0000000000000000

ERROR_CODE: (NTSTATUS) 0x80000003 - {AUSNAHME} Haltepunkt Im Quellprogramm wurde ein Haltepunkt erreicht.

EXCEPTION_CODE: (HRESULT) 0x80000003 (2147483651) - Mindestens ein Argument ist ung ltig.

EXCEPTION_PARAMETER1: 0000000000000000

DEFAULT_BUCKET_ID: DRIVER_FAULT

BUGCHECK_STR: 0x0

CURRENT_IRQL: d

STACK_TEXT:
fffff800`00069b58 fffff800`010791ff : 00000000`00000062 fffff800`010273ae 00000000`00000000 00000000`00000000 : nt!DbgBreakPointWithStatus
fffff800`00069b60 fffff800`010299fb : 00000000`000001d6 00000000`0005ffd4 fffff800`011b1180 fffff800`0083f480 : nt!KdCheckForDebugBreak+0xb5
fffff800`00069ba0 fffff800`010296a0 : 00000000`00004000 00000000`00000000 00000000`0002625a fffff800`0083f480 : nt!KeUpdateRunTime+0x19e
fffff800`00069bd0 fffff800`00814241 : fffff800`011b1180 fffff800`00069cb0 fffff800`0083f480 fffff800`0083f480 : nt!KeUpdateSystemTime+0xf0
fffff800`00069c00 fffff800`0102ff59 : fffff800`011b5dc0 fffff800`0102ff59 fffff800`011b1180 fffffadf`9ee91460 : hal!HalpClockInterrupt+0xb1
fffff800`00069c30 fffff800`0081dbe2 : fffff800`01067cde fffff800`011b1180 fffff800`011b1180 fffff800`011b5500 : nt!KiInterruptDispatchNoLock+0x119
fffff800`00069dc8 fffff800`01067cde : fffff800`011b1180 fffff800`011b1180 fffff800`011b5500 fffffadf`9ee91460 : hal!HalProcessorIdle+0x2
fffff800`00069dd0 fffff800`014151d1 : 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000000 : nt!KiIdleLoop+0x1e
fffff800`00069e00 00000000`fffff800 : 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000000 : nt!KiSystemStartup+0x1bf
fffff800`000630b0 00000000`00000000 : 00000000`00000000 00000000`00000000 00000000`00000000 00680000`00000000 : 0xfffff800


STACK_COMMAND: kb

FOLLOWUP_IP:
nt!DbgBreakPointWithStatus+0
fffff800`01026db0 cc int 3

SYMBOL_STACK_INDEX: 0

SYMBOL_NAME: nt!DbgBreakPointWithStatus+0

FOLLOWUP_NAME: MachineOwner

MODULE_NAME: nt

IMAGE_NAME: ntkrnlmp.exe

DEBUG_FLR_IMAGE_TIMESTAMP: 45d69ab4

BUCKET_ID: MANUAL_BREAKIN

Followup: MachineOwner
---------

0: kd> lm
start end module name
fffff800`00800000 fffff800`0085e000 hal (pdb symbols) c:\symbols\hal.pdb\786A0CD8B0CB4761BA7DC79BD10C215C1\hal.pdb
fffff800`01000000 fffff800`01490000 nt (pdb symbols) c:\symbols\ntkrnlmp.pdb\03185083233249D9BB747EA777B80C982\ntkrnlmp.pdb
fffffadf`929b2000 fffffadf`929e6000 Mup (deferred)
fffffadf`929e6000 fffffadf`92a4c000 NDIS (deferred)
fffffadf`92a4c000 fffffadf`92b51000 Ntfs (deferred)
fffffadf`92b51000 fffffadf`92b85000 KSecDD (deferred)
fffffadf`92b85000 fffffadf`92ba8000 sr (deferred)
fffffadf`92ba8000 fffffadf`92be6000 fltMgr (deferred)
fffffadf`92be6000 fffffadf`92c03000 CLASSPNP (deferred)
fffffadf`92c03000 fffffadf`92c18000 disk (deferred)
fffffadf`92c18000 fffffadf`92c7b000 storport (deferred)
fffffadf`92c7b000 fffffadf`92cc6000 volsnap (deferred)
fffffadf`92cc6000 fffffadf`92d0d000 dmio (deferred)
fffffadf`92d0d000 fffffadf`92d4d000 ftdisk (deferred)
fffffadf`92d4d000 fffffadf`92d63000 MountMgr (deferred)
fffffadf`92d63000 fffffadf`92d84000 pci (deferred)
fffffadf`92d84000 fffffadf`92df2000 ACPI (deferred)
fffffadf`931fb000 fffffadf`93205000 kdcom (deferred)
fffffadf`9320b000 fffffadf`93214000 BOOTVID (deferred)
fffffadf`9321b000 fffffadf`93224000 WMILIB (deferred)
fffffadf`9322b000 fffffadf`93234000 isapnp (deferred)
fffffadf`9323b000 fffffadf`9324b000 PartMgr (deferred)
fffffadf`9324b000 fffffadf`93259000 storahci (deferred)
fffffadf`9325b000 fffffadf`93266000 crcdisk (deferred)
fffffadf`935fb000 fffffadf`93602000 dmload (deferred)
0: kd> !Devnode 0 1
Dumping IopRootDeviceNode (= 0xfffffadf9ebd9620)
DevNode 0xfffffadf9ebd9620 for PDO 0xfffffadf9eeb4490
InstancePath is "HTREE\ROOT\0"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9eeb3720 for PDO 0xfffffadf9eeb3940
InstancePath is "Root\ACPI_HAL\0000"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9ebd2490 for PDO 0xfffffadf9eeac060
InstancePath is "ACPI_HAL\PNP0C08\0"
ServiceName is "ACPI"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9eab6dd0 for PDO 0xfffffadf9eaca1b0
InstancePath is "ACPI\PNP0C14\AWW"
ServiceName is "WmiAcpi"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9e5150a0 for PDO 0xfffffadf9eabc1b0
InstancePath is "ACPI\PNP0A08\0"
ServiceName is "pci"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9eea9840 for PDO 0xfffffadf9dfccd40
InstancePath is "PCI\VEN_1022&DEV_1450&SUBSYS_00000000&REV_00\3&11583659&0&00"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9eea9670 for PDO 0xfffffadf9dfcca20
InstancePath is "PCI\VEN_1022&DEV_1451&SUBSYS_87471043&REV_00\3&11583659&0&02"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0xfffffadf9eea94a0 for PDO 0xfffffadf9dfcc700
InstancePath is "PCI\VEN_1022&DEV_1452&SUBSYS_00000000&REV_00\3&11583659&0&08"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9eea92d0 for PDO 0xfffffadf9dfcc3e0
InstancePath is "PCI\VEN_1022&DEV_1453&SUBSYS_00000000&REV_00\3&11583659&0&0A"
ServiceName is "pci"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e3d2530 for PDO 0xfffffadf9eab4720
InstancePath is "PCI\VEN_1022&DEV_57AD&SUBSYS_00000000&REV_00\4&d487977&0&000A"
ServiceName is "pci"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e0cae40 for PDO 0xfffffadf9e0ca860
InstancePath is "PCI\VEN_1022&DEV_57A3&SUBSYS_00000000&REV_00\5&1f331b67&0&28000A"
ServiceName is "pci"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9dfcbaa0 for PDO 0xfffffadf9e2c2a30
InstancePath is "PCI\VEN_8086&DEV_1539&SUBSYS_85F01043&REV_03\6&12f3bd8&0&0028000A"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0xfffffadf9dfcb010 for PDO 0xfffffadf9e0ca540
InstancePath is "PCI\VEN_1022&DEV_57A4&SUBSYS_00000000&REV_00\5&1f331b67&0&40000A"
ServiceName is "pci"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9eab5e40 for PDO 0xfffffadf9e1bdd40
InstancePath is "PCI\VEN_1022&DEV_1485&SUBSYS_87471043&REV_00\6&28ecf81d&0&0040000A"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0xfffffadf9eab5c70 for PDO 0xfffffadf9e1bd820
InstancePath is "PCI\VEN_1022&DEV_149C&SUBSYS_87471043&REV_00\6&28ecf81d&0&0140000A"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0xfffffadf9eab5aa0 for PDO 0xfffffadf9df2b700
InstancePath is "PCI\VEN_1022&DEV_149C&SUBSYS_148C1022&REV_00\6&28ecf81d&0&0340000A"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0xfffffadf9dfcbe40 for PDO 0xfffffadf9df2b060
InstancePath is "PCI\VEN_1022&DEV_57A4&SUBSYS_00000000&REV_00\5&1f331b67&0&48000A"
ServiceName is "pci"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9df2c9a0 for PDO 0xfffffadf9df2cd40
InstancePath is "PCI\VEN_1022&DEV_7901&SUBSYS_79011022&REV_51\6&39625884&0&0048000A"
ServiceName is "storahci"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeStartPostWork (0x307)
DevNode 0xfffffadf9dfcbc70 for PDO 0xfffffadf9df2bd40
InstancePath is "PCI\VEN_1022&DEV_57A4&SUBSYS_00000000&REV_00\5&1f331b67&0&50000A"
ServiceName is "pci"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9df2c330 for PDO 0xfffffadf9df2c6d0
InstancePath is "PCI\VEN_1022&DEV_7901&SUBSYS_79011022&REV_51\6&15d2f925&0&0050000A"
ServiceName is "storahci"
State = DeviceNodeDriversAdded (0x303)
Previous State = DeviceNodeInitialized (0x302)
DevNode 0xfffffadf9efea010 for PDO 0xfffffadf9e2c3060
InstancePath is "PCI\VEN_1022&DEV_1452&SUBSYS_00000000&REV_00\3&11583659&0&10"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9efeae40 for PDO 0xfffffadf9e2c3d40
InstancePath is "PCI\VEN_1022&DEV_1452&SUBSYS_00000000&REV_00\3&11583659&0&18"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9efeac70 for PDO 0xfffffadf9e2c3a20
InstancePath is "PCI\VEN_1022&DEV_1453&SUBSYS_00000000&REV_00\3&11583659&0&19"
ServiceName is "pci"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e513620 for PDO 0xfffffadf9e513060
InstancePath is "PCI\VEN_10DE&DEV_1287&SUBSYS_730B19DA&REV_A1\4&2c517c28&0&0019"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0xfffffadf9e513450 for PDO 0xfffffadf9e513bc0
InstancePath is "PCI\VEN_10DE&DEV_0E0F&SUBSYS_730B19DA&REV_A1\4&2c517c28&0&0119"
ServiceName is "HDAudBus"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9efeaaa0 for PDO 0xfffffadf9e2c3700
InstancePath is "PCI\VEN_1022&DEV_1452&SUBSYS_00000000&REV_00\3&11583659&0&20"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9efea8d0 for PDO 0xfffffadf9e2c33e0
InstancePath is "PCI\VEN_1022&DEV_1452&SUBSYS_00000000&REV_00\3&11583659&0&38"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9efea700 for PDO 0xfffffadf9e514060
InstancePath is "PCI\VEN_1022&DEV_1454&SUBSYS_00000000&REV_00\3&11583659&0&39"
ServiceName is "pci"
State = DeviceNodeDriversAdded (0x303)
Previous State = DeviceNodeInitialized (0x302)
Problem = CM_PROB_NORMAL_CONFLICT
DevNode 0xfffffadf9efea530 for PDO 0xfffffadf9e514d40
InstancePath is "PCI\VEN_1022&DEV_1452&SUBSYS_00000000&REV_00\3&11583659&0&40"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9efea360 for PDO 0xfffffadf9e514a20
InstancePath is "PCI\VEN_1022&DEV_1454&SUBSYS_00000000&REV_00\3&11583659&0&41"
ServiceName is "pci"
State = DeviceNodeDriversAdded (0x303)
Previous State = DeviceNodeInitialized (0x302)
Problem = CM_PROB_NORMAL_CONFLICT
DevNode 0xfffffadf9efd7010 for PDO 0xfffffadf9e514700
InstancePath is "PCI\VEN_1022&DEV_790B&SUBSYS_87471043&REV_59\3&11583659&0&A0"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0xfffffadf9efd7e40 for PDO 0xfffffadf9e5143e0
InstancePath is "PCI\VEN_1022&DEV_790E&SUBSYS_00000000&REV_51\3&11583659&0&A3"
ServiceName is "isapnp"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e291c40 for PDO 0xfffffadf9e12be60
InstancePath is "ACPI\PNP0000\4&28d859f2&0"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0xfffffadf9e291a70 for PDO 0xfffffadf9e12bc60
InstancePath is "ACPI\PNP0200\4&28d859f2&0"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0xfffffadf9e2918a0 for PDO 0xfffffadf9e12ba60
InstancePath is "ACPI\PNP0100\4&28d859f2&0"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0xfffffadf9e2916d0 for PDO 0xfffffadf9e12b860
InstancePath is "ACPI\PNP0B00\4&28d859f2&0"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e291500 for PDO 0xfffffadf9e12b660
InstancePath is "ACPI\PNP0800\4&28d859f2&0"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0xfffffadf9e291330 for PDO 0xfffffadf9e12b460
InstancePath is "ACPI\PNP0C02\0"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9e1bc010 for PDO 0xfffffadf9e291060
InstancePath is "ACPI\PNP0303\0"
ServiceName is "i8042prt"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9e1bce40 for PDO 0xfffffadf9e291e60
InstancePath is "ACPI\PNP0C09\4&28d859f2&0"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9efd7c70 for PDO 0xfffffadf9e12c060
InstancePath is "PCI\VEN_1022&DEV_1460&SUBSYS_00000000&REV_00\3&11583659&0&C0"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9efd7aa0 for PDO 0xfffffadf9e12cd40
InstancePath is "PCI\VEN_1022&DEV_1461&SUBSYS_00000000&REV_00\3&11583659&0&C1"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9efd78d0 for PDO 0xfffffadf9e12ca20
InstancePath is "PCI\VEN_1022&DEV_1462&SUBSYS_00000000&REV_00\3&11583659&0&C2"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9efd7700 for PDO 0xfffffadf9e12c700
InstancePath is "PCI\VEN_1022&DEV_1463&SUBSYS_00000000&REV_00\3&11583659&0&C3"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9efd7530 for PDO 0xfffffadf9e12c3e0
InstancePath is "PCI\VEN_1022&DEV_1464&SUBSYS_00000000&REV_00\3&11583659&0&C4"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9efd7360 for PDO 0xfffffadf9e292060
InstancePath is "PCI\VEN_1022&DEV_1465&SUBSYS_00000000&REV_00\3&11583659&0&C5"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e3d2010 for PDO 0xfffffadf9e292d40
InstancePath is "PCI\VEN_1022&DEV_1466&SUBSYS_00000000&REV_00\3&11583659&0&C6"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e3d2e40 for PDO 0xfffffadf9e292a20
InstancePath is "PCI\VEN_1022&DEV_1467&SUBSYS_00000000&REV_00\3&11583659&0&C7"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e3d2c70 for PDO 0xfffffadf9e292820
InstancePath is "ACPI\PNP0C01\c8"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0xfffffadf9e3d2aa0 for PDO 0xfffffadf9e292620
InstancePath is "ACPI\PNP0C02\15"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0xfffffadf9e3d28d0 for PDO 0xfffffadf9e292420
InstancePath is "ACPI\PNP0C02\700"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0xfffffadf9e3d2700 for PDO 0xfffffadf9e1bd060
InstancePath is "ACPI\PNP0C14\MXM2"
ServiceName is "WmiAcpi"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9eeb3e40 for PDO 0xfffffadf9ee991b0
InstancePath is "ACPI\PNP0C0C\aa"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9eac0190 for PDO 0xfffffadf9e2a3620
InstancePath is "ACPI\PNP0103\2&daba3ff&0"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0xfffffadf9eac5190 for PDO 0xfffffadf9ebd1460
InstancePath is "ACPI\AMDI0030\0"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0xfffffadf9e12d750 for PDO 0xfffffadf9ebd99f0
InstancePath is "ACPI\PNP0C14\ASUSWMI"
ServiceName is "WmiAcpi"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9eaba340 for PDO 0xfffffadf9eeab560
InstancePath is "ACPI\FixedButton\2&daba3ff&0"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e1be700 for PDO 0xfffffadf9e515e60
InstancePath is "ACPI\AuthenticAMD_-_AMD64_Family_23_Model_1\_0"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0xfffffadf9ebd1680 for PDO 0xfffffadf9e1bf620
InstancePath is "ACPI\AuthenticAMD_-_AMD64_Family_23_Model_1\_1"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0xfffffadf9e1be0e0 for PDO 0xfffffadf9e1bf420
InstancePath is "ACPI\AuthenticAMD_-_AMD64_Family_23_Model_1\_2"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0xfffffadf9efd9e40 for PDO 0xfffffadf9e12d450
InstancePath is "ACPI\AuthenticAMD_-_AMD64_Family_23_Model_1\_3"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0xfffffadf9efd9c70 for PDO 0xfffffadf9e12d250
InstancePath is "ACPI\AuthenticAMD_-_AMD64_Family_23_Model_1\_4"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0xfffffadf9efd9aa0 for PDO 0xfffffadf9ebd1e60
InstancePath is "ACPI\AuthenticAMD_-_AMD64_Family_23_Model_1\_5"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0xfffffadf9efd98d0 for PDO 0xfffffadf9ebd1c60
InstancePath is "ACPI\AuthenticAMD_-_AMD64_Family_23_Model_1\_6"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0xfffffadf9efd9700 for PDO 0xfffffadf9ebd1a60
InstancePath is "ACPI\AuthenticAMD_-_AMD64_Family_23_Model_1\_7"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0xfffffadf9efd9530 for PDO 0xfffffadf9eab7620
InstancePath is "ACPI\AuthenticAMD_-_AMD64_Family_23_Model_1\_8"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0xfffffadf9efd9360 for PDO 0xfffffadf9eab7420
InstancePath is "ACPI\AuthenticAMD_-_AMD64_Family_23_Model_1\_9"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0xfffffadf9efda010 for PDO 0xfffffadf9eab7220
InstancePath is "ACPI\AuthenticAMD_-_AMD64_Family_23_Model_1\10"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0xfffffadf9efdae40 for PDO 0xfffffadf9e3d4e60
InstancePath is "ACPI\AuthenticAMD_-_AMD64_Family_23_Model_1\11"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0xfffffadf9efdac70 for PDO 0xfffffadf9e3d4c60
InstancePath is "ACPI\AuthenticAMD_-_AMD64_Family_23_Model_1\12"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0xfffffadf9efdaaa0 for PDO 0xfffffadf9e3d4a60
InstancePath is "ACPI\AuthenticAMD_-_AMD64_Family_23_Model_1\13"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0xfffffadf9efda8d0 for PDO 0xfffffadf9e3d4860
InstancePath is "ACPI\AuthenticAMD_-_AMD64_Family_23_Model_1\14"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0xfffffadf9efda700 for PDO 0xfffffadf9e3d4660
InstancePath is "ACPI\AuthenticAMD_-_AMD64_Family_23_Model_1\15"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0xfffffadf9efda530 for PDO 0xfffffadf9e3d4460
InstancePath is "ACPI\PNP0C02\90"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0xfffffadf9efda360 for PDO 0xfffffadf9e3d4260
InstancePath is "ACPI\PNP0C02\91"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0xfffffadf9efd8010 for PDO 0xfffffadf9efd9060
InstancePath is "ACPI\PNP0C14\AOD"
ServiceName is "WmiAcpi"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9ebd8e40 for PDO 0xfffffadf9ebd8060
InstancePath is "Root\dmio\0000"
ServiceName is "dmio"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9ebd8a60 for PDO 0xfffffadf9ebd8c80
InstancePath is "Root\ftdisk\0000"
ServiceName is "ftdisk"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9ebd8680 for PDO 0xfffffadf9ebd88a0
InstancePath is "Root\LEGACY_AFD\0000"
ServiceName is "AFD"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9ebd82a0 for PDO 0xfffffadf9ebd84c0
InstancePath is "Root\LEGACY_AMPA\0000"
ServiceName is "ampa"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9eeb2e40 for PDO 0xfffffadf9eeb2060
InstancePath is "Root\LEGACY_BEEP\0000"
ServiceName is "Beep"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9eeb2a60 for PDO 0xfffffadf9eeb2c80
InstancePath is "Root\LEGACY_CDAC15BA\0000"
ServiceName is "CdaC15BA"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9eeb2680 for PDO 0xfffffadf9eeb28a0
InstancePath is "Root\LEGACY_CDAD10BA\0000"
ServiceName is "CdaD10BA"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9eeb22a0 for PDO 0xfffffadf9eeb24c0
InstancePath is "Root\LEGACY_CRCDISK\0000"
ServiceName is "crcdisk"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9ebd7e40 for PDO 0xfffffadf9ebd7060
InstancePath is "Root\LEGACY_DMBOOT\0000"
ServiceName is "dmboot"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9ebd7a60 for PDO 0xfffffadf9ebd7c80
InstancePath is "Root\LEGACY_DMLOAD\0000"
ServiceName is "dmload"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9ebd7680 for PDO 0xfffffadf9ebd78a0
InstancePath is "Root\LEGACY_FIPS\0000"
ServiceName is "Fips"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9ebd72a0 for PDO 0xfffffadf9ebd74c0
InstancePath is "Root\LEGACY_GPC\0000"
ServiceName is "Gpc"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9eeb1e40 for PDO 0xfffffadf9eeb1060
InstancePath is "Root\LEGACY_HTTP\0000"
ServiceName is "HTTP"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9eeb1a60 for PDO 0xfffffadf9eeb1c80
InstancePath is "Root\LEGACY_IPNAT\0000"
ServiceName is "IpNat"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9eeb1680 for PDO 0xfffffadf9eeb18a0
InstancePath is "Root\LEGACY_IPSEC\0000"
ServiceName is "IPSec"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9eeb12a0 for PDO 0xfffffadf9eeb14c0
InstancePath is "Root\LEGACY_KSECDD\0000"
ServiceName is "ksecdd"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9ebd6e40 for PDO 0xfffffadf9ebd6060
InstancePath is "Root\LEGACY_MNMDD\0000"
ServiceName is "mnmdd"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9ebd6a60 for PDO 0xfffffadf9ebd6c80
InstancePath is "Root\LEGACY_MOUNTMGR\0000"
ServiceName is "mountmgr"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9ebd6680 for PDO 0xfffffadf9ebd68a0
InstancePath is "Root\LEGACY_NDIS\0000"
ServiceName is "NDIS"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9ebd62a0 for PDO 0xfffffadf9ebd64c0
InstancePath is "Root\LEGACY_NDISTAPI\0000"
ServiceName is "NdisTapi"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9eeb0e40 for PDO 0xfffffadf9eeb0060
InstancePath is "Root\LEGACY_NDISUIO\0000"
ServiceName is "Ndisuio"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9eeb0a60 for PDO 0xfffffadf9eeb0c80
InstancePath is "Root\LEGACY_NDPROXY\0000"
ServiceName is "NDProxy"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9eeb0680 for PDO 0xfffffadf9eeb08a0
InstancePath is "Root\LEGACY_NETBT\0000"
ServiceName is "NetBT"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9eeb02a0 for PDO 0xfffffadf9eeb04c0
InstancePath is "Root\LEGACY_NULL\0000"
ServiceName is "Null"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9ebd5e40 for PDO 0xfffffadf9ebd5060
InstancePath is "Root\LEGACY_PARTMGR\0000"
ServiceName is "PartMgr"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9ebd5a60 for PDO 0xfffffadf9ebd5c80
InstancePath is "Root\LEGACY_RASACD\0000"
ServiceName is "RasAcd"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9ebd5680 for PDO 0xfffffadf9ebd58a0
InstancePath is "Root\LEGACY_RDPCDD\0000"
ServiceName is "RDPCDD"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9ebd52a0 for PDO 0xfffffadf9ebd54c0
InstancePath is "Root\LEGACY_SECDRV\0000"
ServiceName is "Secdrv"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9eeafe40 for PDO 0xfffffadf9eeaf060
InstancePath is "Root\LEGACY_TCPIP\0000"
ServiceName is "Tcpip"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9eeafa60 for PDO 0xfffffadf9eeafc80
InstancePath is "Root\LEGACY_VGASAVE\0000"
ServiceName is "VgaSave"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9eeaf680 for PDO 0xfffffadf9eeaf8a0
InstancePath is "Root\LEGACY_VOLSNAP\0000"
ServiceName is "VolSnap"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9eeaf2a0 for PDO 0xfffffadf9eeaf4c0
InstancePath is "Root\LEGACY_WANARP\0000"
ServiceName is "Wanarp"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9ebd4e40 for PDO 0xfffffadf9ebd4060
InstancePath is "Root\MEDIA\MS_MMACM"
ServiceName is "audstub"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9ebd4a60 for PDO 0xfffffadf9ebd4c80
InstancePath is "Root\MEDIA\MS_MMDRV"
ServiceName is "audstub"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9ebd4680 for PDO 0xfffffadf9ebd48a0
InstancePath is "Root\MEDIA\MS_MMMCI"
ServiceName is "audstub"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9ebd42a0 for PDO 0xfffffadf9ebd44c0
InstancePath is "Root\MEDIA\MS_MMVCD"
ServiceName is "audstub"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9eeaee40 for PDO 0xfffffadf9eeae060
InstancePath is "Root\MEDIA\MS_MMVID"
ServiceName is "audstub"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9eeaea60 for PDO 0xfffffadf9eeaec80
InstancePath is "Root\MS_L2TPMINIPORT\0000"
ServiceName is "Rasl2tp"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9eeae680 for PDO 0xfffffadf9eeae8a0
InstancePath is "Root\MS_NDISWANIP\0000"
ServiceName is "NdisWan"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9eeae2a0 for PDO 0xfffffadf9eeae4c0
InstancePath is "Root\MS_PPPOEMINIPORT\0000"
ServiceName is "RasPppoe"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9ebd3e40 for PDO 0xfffffadf9ebd3060
InstancePath is "Root\MS_PPTPMINIPORT\0000"
ServiceName is "PptpMiniport"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9ebd3a60 for PDO 0xfffffadf9ebd3c80
InstancePath is "Root\MS_PSCHEDMP\0000"
ServiceName is "PSched"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9ebd3680 for PDO 0xfffffadf9ebd38a0
InstancePath is "Root\MS_PSCHEDMP\0001"
ServiceName is "PSched"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9ebd32a0 for PDO 0xfffffadf9ebd34c0
InstancePath is "Root\MS_PTIMINIPORT\0000"
ServiceName is "Raspti"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9eeade40 for PDO 0xfffffadf9eead060
InstancePath is "Root\RDPDR\0000"
ServiceName is "rdpdr"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9eeada60 for PDO 0xfffffadf9eeadc80
InstancePath is "Root\RDP_KBD\0000"
ServiceName is "TermDD"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9eead680 for PDO 0xfffffadf9eead8a0
InstancePath is "Root\RDP_MOU\0000"
ServiceName is "TermDD"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9eead2a0 for PDO 0xfffffadf9eead4c0
InstancePath is "Root\SYSTEM\0000"
ServiceName is "swenum"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9ebd2e40 for PDO 0xfffffadf9ebd2060
InstancePath is "Root\SYSTEM\0001"
ServiceName is "update"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9ebd2a60 for PDO 0xfffffadf9ebd2c80
InstancePath is "Root\SYSTEM\0002"
ServiceName is "mssmbios"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
  
#2181 daniel_k ⇗ @diderius6, from the debugger output, we're almost there!

Try these 3 test files.
#2182 diderius6 daniel_k

acpi_test1.sys
The pointer which points to low memory is very similar to the behavior of acpi.sys from XP SP3

Dietmar

Microsoft (R) Windows Debugger Version 6.12.0002.633 X86
Copyright (c) Microsoft Corporation. All rights reserved.

Opened \\.\com1
Waiting to reconnect...
Connected to Windows Server 2003 3790 x64 target at (Sat Aug 31 20:47:12.921 2019 (UTC + 2:00)), ptr64 TRUE
Kernel Debugger connection established.
WARNING: Inaccessible path: 'C:\WinDDK\7600.16385.1\src\openfabricsall\nvme13\nvme\objchk_wnet_x86\i386'
Symbol search path is: C:\WinDDK\7600.16385.1\src\openfabricsall\nvme13\nvme\objchk_wnet_x86\i386;SRV*c:\symbols
*⇗ http://msdl.microsoft.com/download/symbols;C:\symbols
Executable search path is: C:\localsymbols
Windows Server 2003 Kernel Version 3790 MP (1 procs) Free x64
Built by: 3790.srv03_sp2_rtm.070216-1710
Machine Name:
Kernel base = 0xfffff800`01000000 PsLoadedModuleList = 0xfffff800`011d5100
System Uptime: not available

*** Fatal System Error: 0x0000007e
(0xFFFFFFFFC0000005,0xFFFFFADF92D9D923,0xFFFFFADF93607540,0xFFFFFADF93606F50)

Break instruction exception - code 80000003 (first chance)

A fatal system error has occurred.
Debugger entered on first try; Bugcheck callbacks have not been invoked.

A fatal system error has occurred.

Connected to Windows Server 2003 3790 x64 target at (Sat Aug 31 20:47:25.703 2019 (UTC + 2:00)), ptr64 TRUE
Loading Kernel Symbols
........................
Loading User Symbols

*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

Use !analyze -v to get detailed debugging information.

BugCheck 7E, {ffffffffc0000005, fffffadf92d9d923, fffffadf93607540, fffffadf93606f50}

*** ERROR: Module load completed but symbols could not be loaded for ACPI.sys
*** No owner thread found for resource fffff800011dda40
*** No owner thread found for resource fffff800011dda40
*** No owner thread found for resource fffff800011dda40
*** No owner thread found for resource fffff800011dda40
Probably caused by : ACPI.sys ( ACPI+19923 )

Followup: MachineOwner
---------

nt!DbgBreakPointWithStatus:
fffff800`01026db0 cc int 3
15: kd> !analyze -v
*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

SYSTEM_THREAD_EXCEPTION_NOT_HANDLED (7e)
This is a very common bugcheck. Usually the exception address pinpoints
the driver/function that caused the problem. Always note this address
as well as the link date of the driver/image that contains this address.
Arguments:
Arg1: ffffffffc0000005, The exception code that was not handled
Arg2: fffffadf92d9d923, The address that the exception occurred at
Arg3: fffffadf93607540, Exception Record Address
Arg4: fffffadf93606f50, Context Record Address

Debugging Details:
------------------

*** No owner thread found for resource fffff800011dda40
*** No owner thread found for resource fffff800011dda40
*** No owner thread found for resource fffff800011dda40
*** No owner thread found for resource fffff800011dda40

EXCEPTION_CODE: (NTSTATUS) 0xc0000005 - Die Anweisung "0x%08lx" verweist auf Speicher bei "0x%08lx". Die Daten wurden wegen eines E/A-Fehlers in "0x%081x" nicht in den Arbeitsspeicher bertragen.

FAULTING_IP:
ACPI+19923
fffffadf`92d9d923 41ff5620 call qword ptr [r14+20h]

EXCEPTION_RECORD: fffffadf93607540 -- (.exr 0xfffffadf93607540)
ExceptionAddress: fffffadf92d9d923 (ACPI+0x0000000000019923)
ExceptionCode: c0000005 (Access violation)
ExceptionFlags: 00000000
NumberParameters: 2
Parameter[0]: 0000000000000000
Parameter[1]: 0000000000000020
Attempt to read from address 0000000000000020

CONTEXT: fffffadf93606f50 -- (.cxr 0xfffffadf93606f50)
rax=fffffadf936077b0 rbx=fffffadf92dd3b40 rcx=fffffadf9eabd1b0
rdx=fffffadf936077d0 rsi=0000000000000000 rdi=0000000000000000
rip=fffffadf92d9d923 rsp=fffffadf93607760 rbp=fffffadf9eabd1b0
r8=fffffadf936077b4 r9=fffffadf936077b3 r10=0000000000000001
r11=fffffadf936079a8 r12=fffffadf936079f0 r13=fffffadf92dd3b00
r14=0000000000000000 r15=fffffadf936079f8
iopl=0 nv up ei pl zr na po nc
cs=0010 ss=0018 ds=002b es=002b fs=0053 gs=002b efl=00010246
ACPI+0x19923:
fffffadf`92d9d923 41ff5620 call qword ptr [r14+20h] ds:002b:00000000`00000020=????????????????
Resetting default scope

PROCESS_NAME: System

CURRENT_IRQL: 2

ERROR_CODE: (NTSTATUS) 0xc0000005 - Die Anweisung "0x%08lx" verweist auf Speicher bei "0x%08lx". Die Daten wurden wegen eines E/A-Fehlers in "0x%081x" nicht in den Arbeitsspeicher bertragen.

EXCEPTION_PARAMETER1: 0000000000000000

EXCEPTION_PARAMETER2: 0000000000000020

READ_ADDRESS: 0000000000000020

FOLLOWUP_IP:
ACPI+19923
fffffadf`92d9d923 41ff5620 call qword ptr [r14+20h]

BUGCHECK_STR: 0x7E

DEFAULT_BUCKET_ID: NULL_CLASS_PTR_DEREFERENCE

LOCK_ADDRESS: fffff800011ddb40 -- (!locks fffff800011ddb40)

Resource @ nt!IopDeviceTreeLock (0xfffff800011ddb40) Shared 1 owning threads
Threads: fffffadf9ee91bf0-01<*>
1 total locks, 1 locks currently held

PNP_TRIAGE:
Lock address : 0xfffff800011ddb40
Thread Count : 1
Thread address: 0xfffffadf9ee91bf0
Thread wait : 0xab

LAST_CONTROL_TRANSFER: from fffff800010d673e to fffff80001026db0

STACK_TEXT:
fffffadf`93607760 fffffadf`92ddec12 : 00000000`00000001 fffff800`0137de62 fffffadf`00000101 fffff800`0137eb82 : ACPI+0x19923
fffffadf`936079b0 fffffadf`92de8136 : fffffadf`92dd3b40 fffffadf`93607bb0 fffffa80`00421708 fffffadf`93607bb0 : ACPI+0x5ac12
fffffadf`93607a30 fffffadf`92ddf2b2 : fffffadf`92dd3b40 fffffa80`00478370 00000000`00000009 fffffadf`93607bb0 : ACPI+0x64136
fffffadf`93607b10 fffffadf`92de826f : 00000000`00000000 fffffa80`00478370 00000000`00000009 00000000`00000000 : ACPI+0x5b2b2
fffffadf`93607b40 fffff800`01330d16 : fffffa80`004216e0 fffffa80`00473378 fffffa80`00473350 fffffadf`93607ba0 : ACPI+0x6426f
fffffadf`93607b80 fffff800`01330b03 : 00000000`00000000 fffffa80`00478370 fffffa80`00421680 fffffadf`9e1be130 : nt!IopBootAllocation+0x14b
fffffadf`93607be0 fffff800`01330a07 : fffffa80`004701e0 fffffadf`9eabd1b0 00000000`00000004 fffffadf`9eabd1b0 : nt!IopAllocateBootResourcesInternal+0x93
fffffadf`93607c70 fffff800`014303ab : 00000000`00000010 fffffadf`9e1be130 fffffa80`004701e0 00000000`00000004 : nt!IopAllocateBootResources+0x57
fffffadf`93607cb0 fffff800`013319e6 : 00000000`00000000 ffffffff`800001d8 fffffadf`9e1be130 fffffa80`004701e0 : nt!IopReportBootResources+0xc1
fffffadf`93607ce0 fffff800`01333334 : ffffffff`800001e4 fffffadf`9e1be1f0 fffffadf`9e1be130 ffffffff`800001e4 : nt!PiQueryAndAllocateBootResources+0x276
fffffadf`93607da0 fffff800`0133591b : fffffadf`9eacb190 fffffadf`9e1be130 00000000`00000000 fffffadf`9e1be130 : nt!PiProcessNewDeviceNode+0x16ff
fffffadf`93608140 fffff800`010cc809 : fffffadf`9eeb4370 fffff800`00092528 fffffadf`9eeb4460 fffffadf`9eeb4370 : nt!PipProcessDevNodeTree+0x223
fffffadf`936084d0 fffff800`014329f7 : ffffffff`00000000 fffffadf`9eeb4370 fffff800`00092528 fffffadf`9eeb4490 : nt!PipDeviceActionWorker+0x199
fffffadf`93608560 fffff800`0142a14d : 00000000`00000000 00000000`0000fffc 00000000`00000000 00000000`0000fffc : nt!IopInitializeBootDrivers+0xc57
fffffadf`936088c0 fffff800`01428144 : fffff800`00091650 fffff800`00091650 00000000`00000003 fffffadf`9ee90010 : nt!IoInitSystem+0xf4f
fffffadf`93608a50 fffff800`0130dc29 : 12f93b24`1e99bf20 fffffadf`9ee91bf0 00000000`00000080 fffffadf`9ee91bf0 : nt!Phase1InitializationDiscard+0x111d
fffffadf`93608d40 fffff800`0124b972 : b6e6174a`baa6174e 8dd685ea`819685ee 307b39e5`3cbb19e1 0b4bab45`070baf41 : nt!Phase1Initialization+0x9
fffffadf`93608d70 fffff800`010202d6 : fffff800`011b1180 fffffadf`9ee91bf0 fffff800`011b5500 00000000`da83b678 : nt!PspSystemThreadStartup+0x3e
fffffadf`93608dd0 00000000`00000000 : 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000000 : nt!KxStartSystemThread+0x16


SYMBOL_STACK_INDEX: 0

SYMBOL_NAME: ACPI+19923

FOLLOWUP_NAME: MachineOwner

MODULE_NAME: ACPI

IMAGE_NAME: ACPI.sys

DEBUG_FLR_IMAGE_TIMESTAMP: 424d79aa

STACK_COMMAND: .cxr 0xfffffadf93606f50 ; kb

FAILURE_BUCKET_ID: X64_0x7E_ACPI+19923

BUCKET_ID: X64_0x7E_ACPI+19923

Followup: MachineOwner
---------

15: kd> !devnode 0 1
Dumping IopRootDeviceNode (= 0xfffffadf9ebd9620)
DevNode 0xfffffadf9ebd9620 for PDO 0xfffffadf9eeb4490
InstancePath is "HTREE\ROOT\0"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9eeb3720 for PDO 0xfffffadf9eeb3940
InstancePath is "Root\ACPI_HAL\0000"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9ebd2490 for PDO 0xfffffadf9eeac060
InstancePath is "ACPI_HAL\PNP0C08\0"
ServiceName is "ACPI"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9eac5190 for PDO 0xfffffadf9e525120
InstancePath is "ACPI\PNP0C14\AWW"
ServiceName is "WmiAcpi"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9ebd19c0 for PDO 0xfffffadf9eac01b0
InstancePath is "ACPI\PNP0A08\0"
ServiceName is "pci"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9eacb190 for PDO 0xfffffadf9eaca1b0
InstancePath is "ACPI\PNP0C0C\aa"
State = DeviceNodeDriversAdded (0x303)
Previous State = DeviceNodeInitialized (0x302)
DevNode 0xfffffadf9e1be130 for PDO 0xfffffadf9eabd1b0
InstancePath is "ACPI\PNP0103\2&daba3ff&0"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0xfffffadf9e1c0340 for PDO 0xfffffadf9e2a3620
State = DeviceNodeUninitialized (0x301)
Previous State = Unknown State (0x0)
DevNode 0xfffffadf9e323840 for PDO 0xfffffadf9ebd99a0
State = DeviceNodeUninitialized (0x301)
Previous State = Unknown State (0x0)
DevNode 0xfffffadf9e323670 for PDO 0xfffffadf9e1bf480
State = DeviceNodeUninitialized (0x301)
Previous State = Unknown State (0x0)
DevNode 0xfffffadf9e3234a0 for PDO 0xfffffadf9e1bf280
State = DeviceNodeUninitialized (0x301)
Previous State = Unknown State (0x0)
DevNode 0xfffffadf9e3232d0 for PDO 0xfffffadf9eab7590
State = DeviceNodeUninitialized (0x301)
Previous State = Unknown State (0x0)
DevNode 0xfffffadf9e323100 for PDO 0xfffffadf9eab7390
State = DeviceNodeUninitialized (0x301)
Previous State = Unknown State (0x0)
DevNode 0xfffffadf9e3e4e40 for PDO 0xfffffadf9ebd17b0
State = DeviceNodeUninitialized (0x301)
Previous State = Unknown State (0x0)
DevNode 0xfffffadf9e3e4c70 for PDO 0xfffffadf9ebd15b0
State = DeviceNodeUninitialized (0x301)
Previous State = Unknown State (0x0)
DevNode 0xfffffadf9e3e4aa0 for PDO 0xfffffadf9e12d060
State = DeviceNodeUninitialized (0x301)
Previous State = Unknown State (0x0)
DevNode 0xfffffadf9e3e48d0 for PDO 0xfffffadf9e12d8e0
State = DeviceNodeUninitialized (0x301)
Previous State = Unknown State (0x0)
DevNode 0xfffffadf9e3e4700 for PDO 0xfffffadf9e12d6e0
State = DeviceNodeUninitialized (0x301)
Previous State = Unknown State (0x0)
DevNode 0xfffffadf9e3e4530 for PDO 0xfffffadf9e12d4e0
State = DeviceNodeUninitialized (0x301)
Previous State = Unknown State (0x0)
DevNode 0xfffffadf9e3e4360 for PDO 0xfffffadf9e12d2e0
State = DeviceNodeUninitialized (0x301)
Previous State = Unknown State (0x0)
DevNode 0xfffffadf9e3e4190 for PDO 0xfffffadf9eeabe60
State = DeviceNodeUninitialized (0x301)
Previous State = Unknown State (0x0)
DevNode 0xfffffadf9efea010 for PDO 0xfffffadf9eeabc60
State = DeviceNodeUninitialized (0x301)
Previous State = Unknown State (0x0)
DevNode 0xfffffadf9efeae40 for PDO 0xfffffadf9eeaba60
State = DeviceNodeUninitialized (0x301)
Previous State = Unknown State (0x0)
DevNode 0xfffffadf9efeac70 for PDO 0xfffffadf9eeab860
State = DeviceNodeUninitialized (0x301)
Previous State = Unknown State (0x0)
DevNode 0xfffffadf9efeaaa0 for PDO 0xfffffadf9eeab660
State = DeviceNodeUninitialized (0x301)
Previous State = Unknown State (0x0)
DevNode 0xfffffadf9efea8d0 for PDO 0xfffffadf9eeab460
State = DeviceNodeUninitialized (0x301)
Previous State = Unknown State (0x0)
DevNode 0xfffffadf9efea700 for PDO 0xfffffadf9e323e60
State = DeviceNodeUninitialized (0x301)
Previous State = Unknown State (0x0)
DevNode 0xfffffadf9efea530 for PDO 0xfffffadf9e323c60
State = DeviceNodeUninitialized (0x301)
Previous State = Unknown State (0x0)
DevNode 0xfffffadf9efea360 for PDO 0xfffffadf9e323a60
State = DeviceNodeUninitialized (0x301)
Previous State = Unknown State (0x0)
DevNode 0xfffffadf9ebd8e40 for PDO 0xfffffadf9ebd8060
InstancePath is "Root\dmio\0000"
ServiceName is "dmio"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9ebd8a60 for PDO 0xfffffadf9ebd8c80
InstancePath is "Root\ftdisk\0000"
ServiceName is "ftdisk"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9ebd8680 for PDO 0xfffffadf9ebd88a0
InstancePath is "Root\LEGACY_AFD\0000"
ServiceName is "AFD"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9ebd82a0 for PDO 0xfffffadf9ebd84c0
InstancePath is "Root\LEGACY_AMPA\0000"
ServiceName is "ampa"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9eeb2e40 for PDO 0xfffffadf9eeb2060
InstancePath is "Root\LEGACY_BEEP\0000"
ServiceName is "Beep"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9eeb2a60 for PDO 0xfffffadf9eeb2c80
InstancePath is "Root\LEGACY_CDAC15BA\0000"
ServiceName is "CdaC15BA"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9eeb2680 for PDO 0xfffffadf9eeb28a0
InstancePath is "Root\LEGACY_CDAD10BA\0000"
ServiceName is "CdaD10BA"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9eeb22a0 for PDO 0xfffffadf9eeb24c0
InstancePath is "Root\LEGACY_CRCDISK\0000"
ServiceName is "crcdisk"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9ebd7e40 for PDO 0xfffffadf9ebd7060
InstancePath is "Root\LEGACY_DMBOOT\0000"
ServiceName is "dmboot"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9ebd7a60 for PDO 0xfffffadf9ebd7c80
InstancePath is "Root\LEGACY_DMLOAD\0000"
ServiceName is "dmload"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9ebd7680 for PDO 0xfffffadf9ebd78a0
InstancePath is "Root\LEGACY_FIPS\0000"
ServiceName is "Fips"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9ebd72a0 for PDO 0xfffffadf9ebd74c0
InstancePath is "Root\LEGACY_GPC\0000"
ServiceName is "Gpc"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9eeb1e40 for PDO 0xfffffadf9eeb1060
InstancePath is "Root\LEGACY_HTTP\0000"
ServiceName is "HTTP"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9eeb1a60 for PDO 0xfffffadf9eeb1c80
InstancePath is "Root\LEGACY_IPNAT\0000"
ServiceName is "IpNat"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9eeb1680 for PDO 0xfffffadf9eeb18a0
InstancePath is "Root\LEGACY_IPSEC\0000"
ServiceName is "IPSec"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9eeb12a0 for PDO 0xfffffadf9eeb14c0
InstancePath is "Root\LEGACY_KSECDD\0000"
ServiceName is "ksecdd"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9ebd6e40 for PDO 0xfffffadf9ebd6060
InstancePath is "Root\LEGACY_MNMDD\0000"
ServiceName is "mnmdd"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9ebd6a60 for PDO 0xfffffadf9ebd6c80
InstancePath is "Root\LEGACY_MOUNTMGR\0000"
ServiceName is "mountmgr"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9ebd6680 for PDO 0xfffffadf9ebd68a0
InstancePath is "Root\LEGACY_NDIS\0000"
ServiceName is "NDIS"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9ebd62a0 for PDO 0xfffffadf9ebd64c0
InstancePath is "Root\LEGACY_NDISTAPI\0000"
ServiceName is "NdisTapi"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9eeb0e40 for PDO 0xfffffadf9eeb0060
InstancePath is "Root\LEGACY_NDISUIO\0000"
ServiceName is "Ndisuio"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9eeb0a60 for PDO 0xfffffadf9eeb0c80
InstancePath is "Root\LEGACY_NDPROXY\0000"
ServiceName is "NDProxy"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9eeb0680 for PDO 0xfffffadf9eeb08a0
InstancePath is "Root\LEGACY_NETBT\0000"
ServiceName is "NetBT"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9eeb02a0 for PDO 0xfffffadf9eeb04c0
InstancePath is "Root\LEGACY_NULL\0000"
ServiceName is "Null"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9ebd5e40 for PDO 0xfffffadf9ebd5060
InstancePath is "Root\LEGACY_PARTMGR\0000"
ServiceName is "PartMgr"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9ebd5a60 for PDO 0xfffffadf9ebd5c80
InstancePath is "Root\LEGACY_RASACD\0000"
ServiceName is "RasAcd"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9ebd5680 for PDO 0xfffffadf9ebd58a0
InstancePath is "Root\LEGACY_RDPCDD\0000"
ServiceName is "RDPCDD"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9ebd52a0 for PDO 0xfffffadf9ebd54c0
InstancePath is "Root\LEGACY_SECDRV\0000"
ServiceName is "Secdrv"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9eeafe40 for PDO 0xfffffadf9eeaf060
InstancePath is "Root\LEGACY_TCPIP\0000"
ServiceName is "Tcpip"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9eeafa60 for PDO 0xfffffadf9eeafc80
InstancePath is "Root\LEGACY_VGASAVE\0000"
ServiceName is "VgaSave"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9eeaf680 for PDO 0xfffffadf9eeaf8a0
InstancePath is "Root\LEGACY_VOLSNAP\0000"
ServiceName is "VolSnap"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9eeaf2a0 for PDO 0xfffffadf9eeaf4c0
InstancePath is "Root\LEGACY_WANARP\0000"
ServiceName is "Wanarp"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9ebd4e40 for PDO 0xfffffadf9ebd4060
InstancePath is "Root\MEDIA\MS_MMACM"
ServiceName is "audstub"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9ebd4a60 for PDO 0xfffffadf9ebd4c80
InstancePath is "Root\MEDIA\MS_MMDRV"
ServiceName is "audstub"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9ebd4680 for PDO 0xfffffadf9ebd48a0
InstancePath is "Root\MEDIA\MS_MMMCI"
ServiceName is "audstub"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9ebd42a0 for PDO 0xfffffadf9ebd44c0
InstancePath is "Root\MEDIA\MS_MMVCD"
ServiceName is "audstub"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9eeaee40 for PDO 0xfffffadf9eeae060
InstancePath is "Root\MEDIA\MS_MMVID"
ServiceName is "audstub"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9eeaea60 for PDO 0xfffffadf9eeaec80
InstancePath is "Root\MS_L2TPMINIPORT\0000"
ServiceName is "Rasl2tp"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9eeae680 for PDO 0xfffffadf9eeae8a0
InstancePath is "Root\MS_NDISWANIP\0000"
ServiceName is "NdisWan"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9eeae2a0 for PDO 0xfffffadf9eeae4c0
InstancePath is "Root\MS_PPPOEMINIPORT\0000"
ServiceName is "RasPppoe"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9ebd3e40 for PDO 0xfffffadf9ebd3060
InstancePath is "Root\MS_PPTPMINIPORT\0000"
ServiceName is "PptpMiniport"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9ebd3a60 for PDO 0xfffffadf9ebd3c80
InstancePath is "Root\MS_PSCHEDMP\0000"
ServiceName is "PSched"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9ebd3680 for PDO 0xfffffadf9ebd38a0
InstancePath is "Root\MS_PSCHEDMP\0001"
ServiceName is "PSched"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9ebd32a0 for PDO 0xfffffadf9ebd34c0
InstancePath is "Root\MS_PTIMINIPORT\0000"
ServiceName is "Raspti"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9eeade40 for PDO 0xfffffadf9eead060
InstancePath is "Root\RDPDR\0000"
ServiceName is "rdpdr"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9eeada60 for PDO 0xfffffadf9eeadc80
InstancePath is "Root\RDP_KBD\0000"
ServiceName is "TermDD"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9eead680 for PDO 0xfffffadf9eead8a0
InstancePath is "Root\RDP_MOU\0000"
ServiceName is "TermDD"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9eead2a0 for PDO 0xfffffadf9eead4c0
InstancePath is "Root\SYSTEM\0000"
ServiceName is "swenum"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9ebd2e40 for PDO 0xfffffadf9ebd2060
InstancePath is "Root\SYSTEM\0001"
ServiceName is "update"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9ebd2a60 for PDO 0xfffffadf9ebd2c80
InstancePath is "Root\SYSTEM\0002"
ServiceName is "mssmbios"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
  
#2183 daniel_k ⇗ @diderius6, did you already try test2?

Analysing the code, test2 should work, otherwise there is something else with x64.
#2184 diderius6 ⇗ @daniel_k
acpi_test2.sys gives endless loop, no BSOD.
But the windebug crashes during start,
no output later on
Dietmar
#2185 daniel_k Unfortunately I'm out of ideas for now.
#2186 diderius6 ⇗ @daniel_k
acpi_test3.sys gives also endless loop, no BSOD.
And the windbg crashes also during start,
so no output later on

Dietmar

PS: The 5512 XP debug XP 64 has the advantage, that it shows a lot of information.
So, just kill the BSOD A5 0x02 for it and we will be at the core of the problem.

From the results of last 5048 acpi.sys, I would try to implement the hack from infuscomus
to this pointer in last acpi_test1.sys, which shows exact as the classical Nullpointer for the XP SP3 to low memory.
You can find this way here in the forum,

read from post 757 ff.
#2187 daniel_k ⇗ @diderius6, applied the hacks from post 757.

Please try it.
#2188 diderius6 ⇗ @daniel_k

Yes,
but you forget to jmp always over BSOD
BugCheck A5, {2001, 1, ffffffffc0000034, fffffadf9df52238}.
I also copied ntoskrnl.exe and hal.dll from the XP 64 SP2 DEBUG
version.
I noticed, that the output from windbg is better with them
and it crashes less

Dietmar

PS: Until now, the behavior of XP 64 on Ryzen is absolut identic with XP SP3 32 bit.
#2189 daniel_k Ops, I've applied only the hacks from post 757.

Here it is.
#2190 diderius6 ⇗ @daniel_k

Now is the same BSOD A5 (0x02,..) as before. May be, it is only one step away from working!
But I think, it is the right way, because this way works before also.
Tomorrow I flash the DSDT in Bios new,
killing the device ACPI\PNP0A08-0,
because in Debug XP 64 acpi.sys I do not find the bugcheck place,
where BSOD A5 (0x02,..) happens

Dietmar



Microsoft (R) Windows Debugger Version 6.12.0002.633 X86
Copyright (c) Microsoft Corporation. All rights reserved.

Opened \\.\com1
Waiting to reconnect...
Connected to Windows Server 2003 3790 x64 target at (Sun Sep 1 01:40:00.281 2019 (UTC + 2:00)), ptr64 TRUE
Kernel Debugger connection established.
WARNING: Inaccessible path: 'C:\WinDDK\7600.16385.1\src\openfabricsall\nvme13\nvme\objchk_wnet_x86\i386'
Symbol search path is: C:\WinDDK\7600.16385.1\src\openfabricsall\nvme13\nvme\objchk_wnet_x86\i386;SRV*c:\symbols
*⇗ http://msdl.microsoft.com/download/symbols;C:\symbols
Executable search path is: C:\localsymbols
Windows Server 2003 Kernel Version 3790 MP (1 procs) Checked x64
Built by: 3790.srv03_sp2_rtm.070216-1710
Machine Name:
Kernel base = 0xfffff800`01000000 PsLoadedModuleList = 0xfffff800`013d1fd0
System Uptime: not available

*** Assertion failed: NT_SUCCESS(status)
*** Source File: d:\nt\base\busdrv\acpi\driver\nt\bus.c, line 2682

Break repeatedly, break Once, Ignore, terminate Process, or terminate Thread (boipt)? i
i
FFFFFADF9E325430 ACPI\PNP0A08-0 (0x9e333710): IRP_MN_QUERY_RESOURCE_REQUIREMENTS = 0xc00000bb

*** Fatal System Error: 0x000000a5
(0x0000000000000002,0xFFFFFADF9E325430,0x0000000000000001,0xFFFFFADF9E333710)

Break instruction exception - code 80000003 (first chance)

A fatal system error has occurred.
Debugger entered on first try; Bugcheck callbacks have not been invoked.

A fatal system error has occurred.

Connected to Windows Server 2003 3790 x64 target at (Sun Sep 1 01:40:34.031 2019 (UTC + 2:00)), ptr64 TRUE
Loading Kernel Symbols
........................
Loading User Symbols

*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

Use !analyze -v to get detailed debugging information.

BugCheck A5, {2, fffffadf9e325430, 1, fffffadf9e333710}

*** No owner thread found for resource fffff800013eab00
*** No owner thread found for resource fffff800013eab00
*** No owner thread found for resource fffff800013eab00
*** No owner thread found for resource fffff800013eab00
Probably caused by : ACPI.sys ( ACPI!ACPIBusIrpQueryResourceRequirements+446 )

Followup: MachineOwner
---------

nt!RtlpBreakWithStatusInstruction:
fffff800`011a02e0 cc int 3
15: kd> !analyze -v
*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

ACPI_BIOS_ERROR (a5)
The ACPI Bios in the system is not fully compliant with the ACPI specification.
The first value indicates where the incompatibility lies:
This bug check covers a great variety of ACPI problems. If a kernel debugger
is attached, use "!analyze -v". This command will analyze the precise problem,
and display whatever information is most useful for debugging the specific
error.
Arguments:
Arg1: 0000000000000002, ACPI_ROOT_PCI_RESOURCE_FAILURE
ACPI could not process the resource list for the PCI root buses
Arg2: fffffadf9e325430, The ACPI Extension for the PCI bus.
Arg3: 0000000000000001, ACPI cannot convert the BIOS' resource list into the proper
format. This probably represents a flaw in the BIOS' list
encoding procedure.
Arg4: fffffadf9e333710, Pointer to the QUERY_RESOURCE_REQUIREMENTS irp

Debugging Details:
------------------

*** No owner thread found for resource fffff800013eab00
*** No owner thread found for resource fffff800013eab00
*** No owner thread found for resource fffff800013eab00
*** No owner thread found for resource fffff800013eab00

ACPI_EXTENSION: fffffadf9e325430 -- (!acpikd.acpiext fffffadf9e325430)

ACPI_RESCONFLICT: 0000000000000001 -- (!acpiresconflict 0000000000000001 fffffadf9e333710)
Number of arguments found = 1. 2 arguments expected
Usage: acpiresconflict [DeviceExtension] [IoResList] [e820Info]


DEFAULT_BUCKET_ID: DRIVER_FAULT

BUGCHECK_STR: 0xA5

PROCESS_NAME: System

CURRENT_IRQL: 2

LOCK_ADDRESS: fffff800013eac00 -- (!locks fffff800013eac00)
The state of the ACPI locks is:
- Build Queue Lock is not owned
- Button Lock is not owned
- Device Tree Lock is not owned
- Fatal Lock is not owned
- Power Lock is not owned
- Get Lock is not owned
- Power Queue Lock is not owned
- Thermal Lock is not owned
- Update Flags Lock is not owned
- Worker Lock is not owned

PNP_TRIAGE:
Lock address : 0xfffff800013eac00
Thread Count : 1
Thread address: 0xfffffadf9e3117d0
Thread wait : 0x105eca8c

LAST_CONTROL_TRANSFER: from fffff8000105d707 to fffff800011a02e0

STACK_TEXT:
fffffadf`93a06968 fffff800`0105d707 : 00000000`000000a5 00000000`000000a5 00000000`0000000f 00000000`00000000 : nt!RtlpBreakWithStatusInstruction
fffffadf`93a06970 fffff800`0105e9a0 : fffff800`00000003 00000000`000000a5 00000000`00000002 fffffadf`9e325430 : nt!KiBugCheckDebugBreak+0x17
fffffadf`93a069e0 fffff800`01197144 : fffffadf`000000a5 00000000`00000002 fffffadf`9e325430 00000000`00000001 : nt!KeBugCheck2+0x630
fffffadf`93a07020 fffffadf`931ceef6 : 00000000`000000a5 00000000`00000002 fffffadf`9e325430 00000000`00000001 : nt!KeBugCheckEx+0x104
fffffadf`93a07060 fffffadf`9316c804 : fffffadf`9df3de60 fffffadf`9e333710 fffffadf`93a07148 fffffadf`9e333710 : ACPI!ACPIBusIrpQueryResourceRequirements+0x446
fffffadf`93a07110 fffff800`014ec01c : fffffadf`9df3de60 fffffadf`9e333710 00000000`00000000 00000000`00000000 : ACPI!ACPIDispatchIrp+0x164
fffffadf`93a071a0 fffff800`014dac61 : fffffadf`9df3de60 fffffadf`93a07288 fffffadf`93a07270 00000000`00000000 : nt!IopSynchronousCall+0x29c
fffffadf`93a07240 fffff800`014dc966 : fffffadf`9dde8a40 ffffffff`8000012c fffffadf`93a073a8 fffffa80`000f003f : nt!PiQueryResourceRequirements+0x111
fffffadf`93a07310 fffff800`014dff21 : fffffadf`9dde8a40 fffffadf`9e32ca00 fffffadf`93a079b4 fffffadf`9e32cf70 : nt!PiProcessNewDeviceNode+0x1ab6
fffffadf`93a07660 fffff800`0104e1b6 : fffffadf`9e333920 fffffadf`00000000 00000000`00000000 00000000`00000000 : nt!PipProcessDevNodeTree+0x281
fffffadf`93a07970 fffff800`016e2bf7 : 00000000`00000000 00000000`00000038 fffffadf`6e657050 fffff800`00091701 : nt!PipDeviceActionWorker+0x2f6
fffffadf`93a07a10 fffff800`016d8839 : fffff800`00091448 fffffadf`93a08160 fffffadf`9e30e1a0 fffff800`00000000 : nt!IopInitializeBootDrivers+0xb47
fffffadf`93a080e0 fffff800`016d6483 : fffff800`00091448 fffff800`01724340 fffffadf`93a08b68 00000000`00000000 : nt!IoInitSystem+0x1119
fffffadf`93a08a40 fffff800`0149d643 : fffff800`00091448 29e9a186`25a9bd80 2a610eb2`22a11ea3 10d18c06`1d918c22 : nt!Phase1InitializationDiscard+0x11b3
fffffadf`93a08d40 fffff800`015762de : fffff800`00091448 8dd685ea`819685ee 307b39e5`3cbb19e1 0b4bab45`070baf41 : nt!Phase1Initialization+0x13
fffffadf`93a08d70 fffff800`0119fe96 : fffff800`0149d630 fffff800`00091448 fffff800`015762a0 8f4ca6e9`830ea2ed : nt!PspSystemThreadStartup+0x3e
fffffadf`93a08dd0 00000000`00000000 : 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000000 : nt!KxStartSystemThread+0x16


STACK_COMMAND: kb

FOLLOWUP_IP:
ACPI!ACPIBusIrpQueryResourceRequirements+446
fffffadf`931ceef6 cc int 3

SYMBOL_STACK_INDEX: 4

SYMBOL_NAME: ACPI!ACPIBusIrpQueryResourceRequirements+446

FOLLOWUP_NAME: MachineOwner

MODULE_NAME: ACPI

IMAGE_NAME: ACPI.sys

DEBUG_FLR_IMAGE_TIMESTAMP: 45d70c6e

FAILURE_BUCKET_ID: X64_0xA5_ACPI!ACPIBusIrpQueryResourceRequirements+446

BUCKET_ID: X64_0xA5_ACPI!ACPIBusIrpQueryResourceRequirements+446

Followup: MachineOwner
---------
  

 

Page 147

#2191 daniel_k ⇗ @diderius6, found where to patch it.
#2192 diderius6 ⇗ @daniel_k

Still the same BSOD of the same Device
FFFFFADF9E325430 ACPI\PNP0A08-0 (0x9e333710): IRP_MN_QUERY_RESOURCE_REQUIREMENTS = 0xc00000bb

*** Fatal System Error: 0x000000a5
(0x0000000000000002,0xFFFFFADF9E325430,0x0000000000000001,0xFFFFFADF9E333710)
On XP SP3 acpi.sys I found 8 different pathes, which leads to Bsod A5 (0x02).
So I think, the same is true here
Dietmar

PS: Now I go to bed. When you find the other possibilities which lead to this BSOD,
you can hack them. If not, tomorrow I build new DSDT without this crazy device,
it is exact the same as for XP SP3, has something to do with the PCIe bus.
#2193 daniel_k ⇗ @diderius6, patched all BSOD A5 (0x02) I could find.

Give it a try.
#2194 Mov AX, 0xDEAD diderius6, please hide WinDBG reports to "spoiler" tag for much better reading this topic )
#2195 diderius6 ⇗ @daniel_k

Hi,
This is BSOD A5 (0x02, ..)
of another device from the PCI list.
But Windbg this time does not show, which one.
So, the only possibility now is to look again in acpi.sys
for another path, which is not blocked until now
to A5 (0x02,..)
Dietmar

PS: ⇗ @Mov AX, 0xDEAD
Do you have an idea, how to overcome BSOD A5 (0x02,..) on the acpi.sys from XP 64 SP2?

Microsoft (R) Windows Debugger Version 6.12.0002.633 X86
Copyright (c) Microsoft Corporation. All rights reserved.

Opened \\.\com1
Waiting to reconnect...
Connected to Windows Server 2003 3790 x64 target at (Sun Sep 1 10:48:18.890 2019 (UTC + 2:00)), ptr64 TRUE
Kernel Debugger connection established.
WARNING: Inaccessible path: 'C:\WinDDK\7600.16385.1\src\openfabricsall\nvme13\nvme\objchk_wnet_x86\i386'
Symbol search path is: C:\WinDDK\7600.16385.1\src\openfabricsall\nvme13\nvme\objchk_wnet_x86\i386;SRV*c:\symbols
*⇗ http://msdl.microsoft.com/download/symbols;C:\symbols
Executable search path is: C:\localsymbols
Windows Server 2003 Kernel Version 3790 MP (1 procs) Checked x64
Built by: 3790.srv03_sp2_rtm.070216-1710
Machine Name:
Kernel base = 0xfffff800`01000000 PsLoadedModuleList = 0xfffff800`013d1fd0
System Uptime: not available

*** Fatal System Error: 0x000000a5
(0x0000000000000002,0xFFFFFADF9E325430,0x0000000000000000,0xFFFFFADF9E333710)

Break instruction exception - code 80000003 (first chance)

A fatal system error has occurred.
Debugger entered on first try; Bugcheck callbacks have not been invoked.

A fatal system error has occurred.

Connected to Windows Server 2003 3790 x64 target at (Sun Sep 1 10:48:32.687 2019 (UTC + 2:00)), ptr64 TRUE
Loading Kernel Symbols
........................
Loading User Symbols

*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

Use !analyze -v to get detailed debugging information.

BugCheck A5, {2, fffffadf9e325430, 0, fffffadf9e333710}

*** No owner thread found for resource fffff800013eab00
*** No owner thread found for resource fffff800013eab00
*** No owner thread found for resource fffff800013eab00
*** No owner thread found for resource fffff800013eab00
Probably caused by : ACPI.sys ( ACPI!ACPIBusIrpQueryResources+2b8 )

Followup: MachineOwner
---------

nt!RtlpBreakWithStatusInstruction:
fffff800`011a02e0 cc int 3
15: kd> !analyze -v
*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

ACPI_BIOS_ERROR (a5)
The ACPI Bios in the system is not fully compliant with the ACPI specification.
The first value indicates where the incompatibility lies:
This bug check covers a great variety of ACPI problems. If a kernel debugger
is attached, use "!analyze -v". This command will analyze the precise problem,
and display whatever information is most useful for debugging the specific
error.
Arguments:
Arg1: 0000000000000002, ACPI_ROOT_PCI_RESOURCE_FAILURE
ACPI could not process the resource list for the PCI root buses
Arg2: fffffadf9e325430, The ACPI Extension for the PCI bus.
Arg3: 0000000000000000, ACPI cannot convert the BIOS' resource list into the proper
format. This probably represents a flaw in the BIOS' list
encoding procedure.
Arg4: fffffadf9e333710, Pointer to the QUERY_RESOURCES irp

Debugging Details:
------------------

*** No owner thread found for resource fffff800013eab00
*** No owner thread found for resource fffff800013eab00
*** No owner thread found for resource fffff800013eab00
*** No owner thread found for resource fffff800013eab00

ACPI_EXTENSION: fffffadf9e325430 -- (!acpikd.acpiext fffffadf9e325430)

ACPI_RESCONFLICT: 0000000000000000 -- (!acpiresconflict 0000000000000000 fffffadf9e333710)
Number of arguments found = 1. 2 arguments expected
Usage: acpiresconflict [DeviceExtension] [IoResList] [e820Info]


DEFAULT_BUCKET_ID: DRIVER_FAULT

BUGCHECK_STR: 0xA5

PROCESS_NAME: System

CURRENT_IRQL: 2

LOCK_ADDRESS: fffff800013eac00 -- (!locks fffff800013eac00)
The state of the ACPI locks is:
- Build Queue Lock is not owned
- Button Lock is not owned
- Device Tree Lock is not owned
- Fatal Lock is not owned
- Power Lock is not owned
- Get Lock is not owned
- Power Queue Lock is not owned
- Thermal Lock is not owned
- Update Flags Lock is not owned
- Worker Lock is not owned

PNP_TRIAGE:
Lock address : 0xfffff800013eac00
Thread Count : 1
Thread address: 0xfffffadf9e3117d0
Thread wait : 0x105eca8c

LAST_CONTROL_TRANSFER: from fffff8000105d707 to fffff800011a02e0

STACK_TEXT:
fffffadf`93a06968 fffff800`0105d707 : 00000000`000000a5 00000000`000000a5 00000000`0000000f 00000000`00000000 : nt!RtlpBreakWithStatusInstruction
fffffadf`93a06970 fffff800`0105e9a0 : fffff800`00000003 00000000`000000a5 00000000`00000002 fffffadf`9e325430 : nt!KiBugCheckDebugBreak+0x17
fffffadf`93a069e0 fffff800`01197144 : 00000000`000000a5 00000000`00000002 fffffadf`9e325430 00000000`00000000 : nt!KeBugCheck2+0x630
fffffadf`93a07020 fffffadf`931cea38 : 00000000`000000a5 00000000`00000002 fffffadf`9e325430 00000000`00000000 : nt!KeBugCheckEx+0x104
fffffadf`93a07060 fffffadf`9316c804 : fffffadf`9df3c7d0 fffffadf`9e333710 fffffadf`93a07138 00000000`00000050 : ACPI!ACPIBusIrpQueryResources+0x2b8
fffffadf`93a07100 fffff800`014ec01c : fffffadf`9df3c7d0 fffffadf`9e333710 00000000`00000000 fffffadf`9de87b00 : ACPI!ACPIDispatchIrp+0x164
fffffadf`93a07190 fffff800`014da8bb : fffffadf`9df3c7d0 fffffadf`93a07280 fffffadf`93a07268 fffff800`014e73dc : nt!IopSynchronousCall+0x29c
fffffadf`93a07230 fffff800`014dcd69 : fffffadf`9de87a40 ffffffff`8000012c 00000000`00000001 00000000`00000007 : nt!PiQueryAndAllocateBootResources+0x19b
fffffadf`93a07310 fffff800`014dff21 : fffffadf`9de87a40 fffffadf`9e32ca00 fffffadf`93a079b4 fffffadf`9e32cf70 : nt!PiProcessNewDeviceNode+0x1eb9
fffffadf`93a07660 fffff800`0104e1b6 : fffffadf`9e333920 fffffadf`00000000 00000000`00000000 00000000`00000000 : nt!PipProcessDevNodeTree+0x281
fffffadf`93a07970 fffff800`016e2bf7 : 00000000`00000000 00000000`00000038 fffffadf`6e657050 fffff800`00091701 : nt!PipDeviceActionWorker+0x2f6
fffffadf`93a07a10 fffff800`016d8839 : fffff800`00091448 fffffadf`93a08160 fffffadf`9e30e1a0 fffff800`00000000 : nt!IopInitializeBootDrivers+0xb47
fffffadf`93a080e0 fffff800`016d6483 : fffff800`00091448 fffff800`01724340 fffffadf`93a08b68 00000000`00000000 : nt!IoInitSystem+0x1119
fffffadf`93a08a40 fffff800`0149d643 : fffff800`00091448 29e9a984`25a9a980 2ae11ea6`26a11ea2 10d18c06`1d918c02 : nt!Phase1InitializationDiscard+0x11b3
fffffadf`93a08d40 fffff800`015762de : fffff800`00091448 8dd685ea`819685ee 307b39e5`3c3b39e1 0b4bab45`070bab41 : nt!Phase1Initialization+0x13
fffffadf`93a08d70 fffff800`0119fe96 : fffff800`0149d630 fffff800`00091448 fffff800`015762a0 8f4ca2e9`830ca2ed : nt!PspSystemThreadStartup+0x3e
fffffadf`93a08dd0 00000000`00000000 : 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000000 : nt!KxStartSystemThread+0x16


STACK_COMMAND: kb

FOLLOWUP_IP:
ACPI!ACPIBusIrpQueryResources+2b8
fffffadf`931cea38 cc int 3

SYMBOL_STACK_INDEX: 4

SYMBOL_NAME: ACPI!ACPIBusIrpQueryResources+2b8

FOLLOWUP_NAME: MachineOwner

MODULE_NAME: ACPI

IMAGE_NAME: ACPI.sys

DEBUG_FLR_IMAGE_TIMESTAMP: 45d70c6e

FAILURE_BUCKET_ID: X64_0xA5_ACPI!ACPIBusIrpQueryResources+2b8

BUCKET_ID: X64_0xA5_ACPI!ACPIBusIrpQueryResources+2b8

Followup: MachineOwner
---------

15: kd> !devnode 0 1
Dumping IopRootDeviceNode (= 0xfffffadf9e333920)
DevNode 0xfffffadf9e333920 for PDO 0xfffffadf9e336040
InstancePath is "HTREE\ROOT\0"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e333530 for PDO 0xfffffadf9e058070
InstancePath is "Root\ACPI_HAL\0000"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e32ce30 for PDO 0xfffffadf9e32ca40
InstancePath is "ACPI_HAL\PNP0C08\0"
ServiceName is "ACPI"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9de87c20 for PDO 0xfffffadf9df3c110
InstancePath is "ACPI\PNP0C14\AWW"
ServiceName is "WmiAcpi"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9de87a40 for PDO 0xfffffadf9df3c7d0
InstancePath is "ACPI\PNP0A08\0"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9de87860 for PDO 0xfffffadf9df3d210
State = DeviceNodeUninitialized (0x301)
Previous State = Unknown State (0x0)
DevNode 0xfffffadf9de87680 for PDO 0xfffffadf9df3db90
State = DeviceNodeUninitialized (0x301)
Previous State = Unknown State (0x0)
DevNode 0xfffffadf9de874a0 for PDO 0xfffffadf9de88710
State = DeviceNodeUninitialized (0x301)
Previous State = Unknown State (0x0)
DevNode 0xfffffadf9de872c0 for PDO 0xfffffadf9de88500
State = DeviceNodeUninitialized (0x301)
Previous State = Unknown State (0x0)
DevNode 0xfffffadf9df1e010 for PDO 0xfffffadf9ddf8070
State = DeviceNodeUninitialized (0x301)
Previous State = Unknown State (0x0)
DevNode 0xfffffadf9df1ee30 for PDO 0xfffffadf9ddf8e60
State = DeviceNodeUninitialized (0x301)
Previous State = Unknown State (0x0)
DevNode 0xfffffadf9df1ec50 for PDO 0xfffffadf9ddf8c50
State = DeviceNodeUninitialized (0x301)
Previous State = Unknown State (0x0)
DevNode 0xfffffadf9df1ea70 for PDO 0xfffffadf9ddf8a40
State = DeviceNodeUninitialized (0x301)
Previous State = Unknown State (0x0)
DevNode 0xfffffadf9df1e890 for PDO 0xfffffadf9ddf8830
State = DeviceNodeUninitialized (0x301)
Previous State = Unknown State (0x0)
DevNode 0xfffffadf9df1e6b0 for PDO 0xfffffadf9ddf8620
State = DeviceNodeUninitialized (0x301)
Previous State = Unknown State (0x0)
DevNode 0xfffffadf9df1e4d0 for PDO 0xfffffadf9ddf8410
State = DeviceNodeUninitialized (0x301)
Previous State = Unknown State (0x0)
DevNode 0xfffffadf9df1e2f0 for PDO 0xfffffadf9df3b070
State = DeviceNodeUninitialized (0x301)
Previous State = Unknown State (0x0)
DevNode 0xfffffadf9df4e010 for PDO 0xfffffadf9df3be60
State = DeviceNodeUninitialized (0x301)
Previous State = Unknown State (0x0)
DevNode 0xfffffadf9df4ee30 for PDO 0xfffffadf9df3bc50
State = DeviceNodeUninitialized (0x301)
Previous State = Unknown State (0x0)
DevNode 0xfffffadf9df4ec50 for PDO 0xfffffadf9df3ba40
State = DeviceNodeUninitialized (0x301)
Previous State = Unknown State (0x0)
DevNode 0xfffffadf9df4ea70 for PDO 0xfffffadf9df3b830
State = DeviceNodeUninitialized (0x301)
Previous State = Unknown State (0x0)
DevNode 0xfffffadf9df4e890 for PDO 0xfffffadf9df3b620
State = DeviceNodeUninitialized (0x301)
Previous State = Unknown State (0x0)
DevNode 0xfffffadf9df4e6b0 for PDO 0xfffffadf9df3b410
State = DeviceNodeUninitialized (0x301)
Previous State = Unknown State (0x0)
DevNode 0xfffffadf9df4e4d0 for PDO 0xfffffadf9de87070
State = DeviceNodeUninitialized (0x301)
Previous State = Unknown State (0x0)
DevNode 0xfffffadf9df4e2f0 for PDO 0xfffffadf9de87e60
State = DeviceNodeUninitialized (0x301)
Previous State = Unknown State (0x0)
DevNode 0xfffffadf9e058a50 for PDO 0xfffffadf9e058c90
InstancePath is "Root\dmio\0000"
ServiceName is "dmio"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9e058650 for PDO 0xfffffadf9e058890
InstancePath is "Root\ftdisk\0000"
ServiceName is "ftdisk"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9e332010 for PDO 0xfffffadf9e058450
InstancePath is "Root\LEGACY_AFD\0000"
ServiceName is "AFD"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e332c10 for PDO 0xfffffadf9e332e50
InstancePath is "Root\LEGACY_AMPA\0000"
ServiceName is "ampa"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e332810 for PDO 0xfffffadf9e332a50
InstancePath is "Root\LEGACY_BEEP\0000"
ServiceName is "Beep"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e332410 for PDO 0xfffffadf9e332650
InstancePath is "Root\LEGACY_CDAC15BA\0000"
ServiceName is "CdaC15BA"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e057010 for PDO 0xfffffadf9e332250
InstancePath is "Root\LEGACY_CDAD10BA\0000"
ServiceName is "CdaD10BA"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e057c10 for PDO 0xfffffadf9e057e50
InstancePath is "Root\LEGACY_CRCDISK\0000"
ServiceName is "crcdisk"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e057810 for PDO 0xfffffadf9e057a50
InstancePath is "Root\LEGACY_DMBOOT\0000"
ServiceName is "dmboot"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e057410 for PDO 0xfffffadf9e057650
InstancePath is "Root\LEGACY_DMLOAD\0000"
ServiceName is "dmload"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e331010 for PDO 0xfffffadf9e057250
InstancePath is "Root\LEGACY_FIPS\0000"
ServiceName is "Fips"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e331c10 for PDO 0xfffffadf9e331e50
InstancePath is "Root\LEGACY_GPC\0000"
ServiceName is "Gpc"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e331810 for PDO 0xfffffadf9e331a50
InstancePath is "Root\LEGACY_HTTP\0000"
ServiceName is "HTTP"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e331410 for PDO 0xfffffadf9e331650
InstancePath is "Root\LEGACY_IPNAT\0000"
ServiceName is "IpNat"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e056010 for PDO 0xfffffadf9e331250
InstancePath is "Root\LEGACY_IPSEC\0000"
ServiceName is "IPSec"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e056c10 for PDO 0xfffffadf9e056e50
InstancePath is "Root\LEGACY_KSECDD\0000"
ServiceName is "ksecdd"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e056810 for PDO 0xfffffadf9e056a50
InstancePath is "Root\LEGACY_MNMDD\0000"
ServiceName is "mnmdd"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e056410 for PDO 0xfffffadf9e056650
InstancePath is "Root\LEGACY_MOUNTMGR\0000"
ServiceName is "mountmgr"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e330010 for PDO 0xfffffadf9e056250
InstancePath is "Root\LEGACY_NDIS\0000"
ServiceName is "NDIS"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e330c10 for PDO 0xfffffadf9e330e50
InstancePath is "Root\LEGACY_NDISTAPI\0000"
ServiceName is "NdisTapi"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e330810 for PDO 0xfffffadf9e330a50
InstancePath is "Root\LEGACY_NDISUIO\0000"
ServiceName is "Ndisuio"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e330410 for PDO 0xfffffadf9e330650
InstancePath is "Root\LEGACY_NDPROXY\0000"
ServiceName is "NDProxy"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e055010 for PDO 0xfffffadf9e330250
InstancePath is "Root\LEGACY_NETBT\0000"
ServiceName is "NetBT"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e055c10 for PDO 0xfffffadf9e055e50
InstancePath is "Root\LEGACY_NULL\0000"
ServiceName is "Null"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e055810 for PDO 0xfffffadf9e055a50
InstancePath is "Root\LEGACY_PARTMGR\0000"
ServiceName is "PartMgr"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e055410 for PDO 0xfffffadf9e055650
InstancePath is "Root\LEGACY_RASACD\0000"
ServiceName is "RasAcd"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e32f010 for PDO 0xfffffadf9e055250
InstancePath is "Root\LEGACY_RDPCDD\0000"
ServiceName is "RDPCDD"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e32fc10 for PDO 0xfffffadf9e32fe50
InstancePath is "Root\LEGACY_SECDRV\0000"
ServiceName is "Secdrv"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e32f810 for PDO 0xfffffadf9e32fa50
InstancePath is "Root\LEGACY_TCPIP\0000"
ServiceName is "Tcpip"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e32f410 for PDO 0xfffffadf9e32f650
InstancePath is "Root\LEGACY_VGASAVE\0000"
ServiceName is "VgaSave"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e054010 for PDO 0xfffffadf9e32f250
InstancePath is "Root\LEGACY_VOLSNAP\0000"
ServiceName is "VolSnap"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e054c10 for PDO 0xfffffadf9e054e50
InstancePath is "Root\LEGACY_WANARP\0000"
ServiceName is "Wanarp"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e054810 for PDO 0xfffffadf9e054a50
InstancePath is "Root\MEDIA\MS_MMACM"
ServiceName is "audstub"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9e054410 for PDO 0xfffffadf9e054650
InstancePath is "Root\MEDIA\MS_MMDRV"
ServiceName is "audstub"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9e32e010 for PDO 0xfffffadf9e054250
InstancePath is "Root\MEDIA\MS_MMMCI"
ServiceName is "audstub"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9e32ec10 for PDO 0xfffffadf9e32ee50
InstancePath is "Root\MEDIA\MS_MMVCD"
ServiceName is "audstub"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9e32e810 for PDO 0xfffffadf9e32ea50
InstancePath is "Root\MEDIA\MS_MMVID"
ServiceName is "audstub"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9e32e410 for PDO 0xfffffadf9e32e650
InstancePath is "Root\MS_L2TPMINIPORT\0000"
ServiceName is "Rasl2tp"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9e053010 for PDO 0xfffffadf9e32e250
InstancePath is "Root\MS_NDISWANIP\0000"
ServiceName is "NdisWan"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9e053c10 for PDO 0xfffffadf9e053e50
InstancePath is "Root\MS_PPPOEMINIPORT\0000"
ServiceName is "RasPppoe"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9e053810 for PDO 0xfffffadf9e053a50
InstancePath is "Root\MS_PPTPMINIPORT\0000"
ServiceName is "PptpMiniport"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9e053410 for PDO 0xfffffadf9e053650
InstancePath is "Root\MS_PSCHEDMP\0000"
ServiceName is "PSched"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9e32d010 for PDO 0xfffffadf9e053250
InstancePath is "Root\MS_PSCHEDMP\0001"
ServiceName is "PSched"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9e32dc10 for PDO 0xfffffadf9e32de50
InstancePath is "Root\MS_PTIMINIPORT\0000"
ServiceName is "Raspti"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9e32d810 for PDO 0xfffffadf9e32da50
InstancePath is "Root\RDPDR\0000"
ServiceName is "rdpdr"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9e32d410 for PDO 0xfffffadf9e32d650
InstancePath is "Root\RDP_KBD\0000"
ServiceName is "TermDD"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9e052010 for PDO 0xfffffadf9e32d250
InstancePath is "Root\RDP_MOU\0000"
ServiceName is "TermDD"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9e052c10 for PDO 0xfffffadf9e052e50
InstancePath is "Root\SYSTEM\0000"
ServiceName is "swenum"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9e052810 for PDO 0xfffffadf9e052a50
InstancePath is "Root\SYSTEM\0001"
ServiceName is "update"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9e052410 for PDO 0xfffffadf9e052650
InstancePath is "Root\SYSTEM\0002"
ServiceName is "mssmbios"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)

#2196 Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #2195

PS: @Mov AX, 0xDEAD
Do you have an idea, how to overcome BSOD A5 (0x02,..) on the acpi.sys from XP 64 SP2?


no, i dont know why winxp cannot accept some device resources
maybe this is same problem with IRQ on amd
#2197 diderius6 ⇗ @daniel_k

I succeed to read out the BSODs via Windbg with 5048 acpi.sys from yesterday
which give infinity loop.
There I noticed something interesting:
With the DEBUG version of ntoskrnl.exe and hal.dll
the BSOD was the same as now with the 5512 acpi.sys
A5 (0x02,..).
But with the nondebug version of ntoskrnl.exe and hal.dll
the BSOD looks other, now it is going to pci.sys
But I think, the DEBUG versions of ntoskrnl.exe and hal.dll are better, show the problem more precise,
Dietmar

PS: The second spoiler is from todays acpi.sys of 5512 base. This time also with nondebug Ntoskrnl.exe and hal.dll

Microsoft (R) Windows Debugger Version 6.12.0002.633 X86
Copyright (c) Microsoft Corporation. All rights reserved.

Opened \\.\com1
Waiting to reconnect...
Connected to Windows Server 2003 3790 x64 target at (Sun Sep 1 13:17:48.125 2019 (UTC + 2:00)), ptr64 TRUE
Kernel Debugger connection established.
WARNING: Inaccessible path: 'C:\WinDDK\7600.16385.1\src\openfabricsall\nvme13\nvme\objchk_wnet_x86\i386'
Symbol search path is: C:\WinDDK\7600.16385.1\src\openfabricsall\nvme13\nvme\objchk_wnet_x86\i386;SRV*c:\symbols
*⇗ http://msdl.microsoft.com/download/symbols;C:\symbols
Executable search path is: C:\localsymbols
Windows Server 2003 Kernel Version 3790 MP (1 procs) Free x64
Built by: 3790.srv03_sp2_rtm.070216-1710
Machine Name:
Kernel base = 0xfffff800`01000000 PsLoadedModuleList = 0xfffff800`011d5100
System Uptime: not available

*** Fatal System Error: 0x0000000a
(0x0000000000000080,0x000000000000000C,0x0000000000000001,0xFFFFF80001079600)

Break instruction exception - code 80000003 (first chance)

A fatal system error has occurred.
Debugger entered on first try; Bugcheck callbacks have not been invoked.

A fatal system error has occurred.

Connected to Windows Server 2003 3790 x64 target at (Sun Sep 1 13:18:01.359 2019 (UTC + 2:00)), ptr64 TRUE
Loading Kernel Symbols
........................
Loading User Symbols

*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

Use !analyze -v to get detailed debugging information.

BugCheck A, {80, c, 1, fffff80001079600}

*** ERROR: Module load completed but symbols could not be loaded for ACPI.sys
*** No owner thread found for resource fffff800011dda40
*** No owner thread found for resource fffff800011dda40
Probably caused by : pci.sys ( pci!PciDispatchIrp+1a0 )

Followup: MachineOwner
---------

nt!DbgBreakPointWithStatus:
fffff800`01026db0 cc int 3
15: kd> !analyze -v
*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

IRQL_NOT_LESS_OR_EQUAL (a)
An attempt was made to access a pageable (or completely invalid) address at an
interrupt request level (IRQL) that is too high. This is usually
caused by drivers using improper addresses.
If a kernel debugger is available get the stack backtrace.
Arguments:
Arg1: 0000000000000080, memory referenced
Arg2: 000000000000000c, IRQL
Arg3: 0000000000000001, bitfield :
bit 0 : value 0 = read operation, 1 = write operation
bit 3 : value 0 = not an execute operation, 1 = execute operation (only on chips which support this level of status)
Arg4: fffff80001079600, address which referenced memory

Debugging Details:
------------------

*** No owner thread found for resource fffff800011dda40
*** No owner thread found for resource fffff800011dda40

WRITE_ADDRESS: 0000000000000080

CURRENT_IRQL: c

FAULTING_IP:
nt!IopCompleteRequest+68f
fffff800`01079600 4981888000000000010000 or qword ptr [r8+80h],100h

DEFAULT_BUCKET_ID: DRIVER_FAULT

BUGCHECK_STR: 0xA

PROCESS_NAME: System

IRP_ADDRESS: ffffffffffffff88

TRAP_FRAME: fffffadf936076b0 -- (.trap 0xfffffadf936076b0)
NOTE: The trap frame does not contain all registers.
Some register values may be zeroed or incorrect.
rax=fffffadf9ebda350 rbx=0000000000000000 rcx=fffffadf9334b7f0
rdx=0000000000000000 rsi=0000000000000000 rdi=0000000000000000
rip=fffff80001079600 rsp=fffffadf93607840 rbp=fffffadf93607980
r8=0000000000000000 r9=fffffadf93607918 r10=fffffadf9ebd0288
r11=fffff80001032de0 r12=0000000000000000 r13=0000000000000000
r14=0000000000000000 r15=0000000000000000
iopl=0 nv up ei ng nz na pe nc
nt!IopCompleteRequest+0x68f:
fffff800`01079600 4981888000000000010000 or qword ptr [r8+80h],100h ds:00000000`00000080=????????????????
Resetting default scope

LOCK_ADDRESS: fffff800011ddb40 -- (!locks fffff800011ddb40)
The state of the ACPI locks is:
ACPI: Could not read acpi!AcpiBuildQueueLock
ACPI: Could not read acpi!AcpiButtonLock
ACPI: Could not read acpi!AcpiDeviceTreeLock
ACPI: Could not read acpi!AcpiFatalLock
ACPI: Could not read acpi!AcpiPowerLock
ACPI: Could not read acpi!AcpiGetLock
ACPI: Could not read acpi!AcpiPowerQueueLock
ACPI: Could not read acpi!AcpiThermalLock
ACPI: Could not read acpi!AcpiUpdateFlagsLock
ACPI: Could not read acpi!AcpiWorkerSpinLock

PNP_TRIAGE:
Lock address : 0xfffff800011ddb40
Thread Count : 1
Thread address: 0xfffffadf9ee91bf0
Thread wait : 0xad

LAST_CONTROL_TRANSFER: from fffff800010d673e to fffff80001026db0

STACK_TEXT:
fffffadf`93606e48 fffff800`010d673e : 00000000`0000000f 00000000`00000000 00000000`00000080 fffff800`0105669e : nt!DbgBreakPointWithStatus
fffffadf`93606e50 fffff800`010d7d0e : fffff800`00000003 00000000`0000000a 00000000`00000080 00000000`0000000c : nt!KiBugCheckDebugBreak+0x1e
fffffadf`93606eb0 fffff800`0102ea54 : 00000000`00000001 fffffadf`92dc3290 00000000`00000000 0000fadf`92dcf100 : nt!KeBugCheck2+0x640
fffffadf`936074f0 fffff800`0102e674 : 00000000`0000000a 00000000`00000080 00000000`0000000c 00000000`00000001 : nt!KeBugCheckEx+0x104
fffffadf`93607530 fffff800`0102d607 : 00000000`00000000 00000000`5244415f 00000000`00000000 fffffadf`92dadeb2 : nt!KiBugCheckDispatch+0x74
fffffadf`936076b0 fffff800`01079600 : fffffadf`93607c80 00000000`00000009 00000000`00000000 00000000`00000000 : nt!KiPageFault+0x207
fffffadf`93607840 fffff800`01027f81 : 00000000`00000000 00000000`00000000 00000000`00000000 fffffadf`9ebd0210 : nt!IopCompleteRequest+0x68f
fffffadf`936078e0 fffff800`01027b8d : 00000000`00000008 00000000`00000000 00000000`00000000 fffffadf`9334b180 : nt!KiDeliverApc+0x215
fffffadf`93607980 fffff800`0102737b : fffffadf`93607ba0 fffff800`01030d7d 00000000`00000010 00000000`00000246 : nt!KiApcInterrupt+0xdd
fffffadf`93607b10 fffff800`01030e05 : 00000000`00000000 00000000`00000000 00000001`00000000 fffffadf`9ebda350 : nt!KiExitDispatcher+0x1d3
fffffadf`93607b40 fffff800`010252f9 : 00000000`00000000 00000000`00000000 00000000`a0000003 fffffadf`9ebda350 : nt!KeInsertQueueApc+0xd4
fffffadf`93607b90 fffffadf`92d65a00 : 00000000`00000000 fffffadf`92d76f00 00000000`00000000 fffffadf`93607d20 : nt!IopfCompleteRequest+0xa26
fffffadf`93607c00 fffffadf`92dddbf8 : fffffadf`9e0dca30 fffffadf`93607d20 fffffadf`9e0dca30 fffffadf`93607cd0 : pci!PciDispatchIrp+0x1a0
fffffadf`93607c30 fffffadf`92de02ea : fffffadf`9e0dca30 fffffadf`9eeb3d58 00000000`00010005 fffffadf`93607de0 : ACPI+0x59bf8
fffffadf`93607cb0 fffffadf`92ddc218 : fffffadf`00000200 fffffadf`00000004 fffffadf`00000000 fffffadf`9eea7010 : ACPI+0x5c2ea
fffffadf`93607d90 fffffadf`92d8eb9e : 00000000`00000000 fffffadf`9eea87d0 fffffadf`00000000 00000000`00000000 : ACPI+0x58218
fffffadf`93607ec0 fffffadf`92ddad76 : 00000000`00000000 fffffadf`9eabb1b0 fffffadf`9eeb3d20 fffffadf`9ebd1260 : ACPI+0xab9e
fffffadf`93607f70 fffffadf`92d941ae : fffffadf`92ddac40 fffffadf`9ebd1378 fffffadf`9eea8010 fffffadf`9ebd1260 : ACPI+0x56d76
fffffadf`93607fb0 fffffadf`92d659e0 : 00000000`00000000 fffffadf`936080d0 fffffadf`9e0dce80 fffffadf`9ebd1260 : ACPI+0x101ae
fffffadf`93608010 fffff800`0133ed04 : fffffadf`9ebd1260 fffffadf`936080d0 fffffadf`9e0dcd30 fffffadf`9eea12d0 : pci!PciDispatchIrp+0x180
fffffadf`93608040 fffff800`010d0891 : 00000000`00000000 00000000`00000000 00000000`00000000 fffffadf`9eea1190 : nt!IopSynchronousCall+0x144
fffffadf`936080b0 fffff800`01335a3a : fffffadf`9eea9240 fffffadf`9eea1190 fffffadf`9eea1190 00000000`00000000 : nt!IopQueryDeviceRelations+0x71
fffffadf`93608140 fffff800`010cc809 : fffffadf`9eab6660 fffff800`000924d0 fffffadf`9eeb38c0 fffffadf`9eab6660 : nt!PipProcessDevNodeTree+0x342
fffffadf`936084d0 fffff800`014329f7 : ffffffff`00000000 fffffadf`9eab6660 fffff800`000924d0 fffffadf`9eeb38f0 : nt!PipDeviceActionWorker+0x199
fffffadf`93608560 fffff800`0142a14d : 00000000`00000000 00000000`0000fffc 00000000`00000000 00000000`0000fffc : nt!IopInitializeBootDrivers+0xc57
fffffadf`936088c0 fffff800`01428144 : fffff800`00091598 fffff800`00091598 00000000`00000003 fffffadf`9ee90010 : nt!IoInitSystem+0xf4f
fffffadf`93608a50 fffff800`0130dc29 : 12d93b24`1e99bf20 fffffadf`9ee91bf0 00000000`00000080 fffffadf`9ee91bf0 : nt!Phase1InitializationDiscard+0x111d
fffffadf`93608d40 fffff800`0124b972 : b6e6174a`baa6174e 8dd685ea`819685ee 307b39e5`3c3b19e1 0b4bab45`070baf41 : nt!Phase1Initialization+0x9
fffffadf`93608d70 fffff800`010202d6 : fffff800`011b1180 fffffadf`9ee91bf0 fffff800`011b5500 00000000`da83b888 : nt!PspSystemThreadStartup+0x3e
fffffadf`93608dd0 00000000`00000000 : 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000000 : nt!KxStartSystemThread+0x16


STACK_COMMAND: kb

FOLLOWUP_IP:
pci!PciDispatchIrp+1a0
fffffadf`92d65a00 8bc3 mov eax,ebx

SYMBOL_STACK_INDEX: c

SYMBOL_NAME: pci!PciDispatchIrp+1a0

FOLLOWUP_NAME: MachineOwner

MODULE_NAME: pci

IMAGE_NAME: pci.sys

DEBUG_FLR_IMAGE_TIMESTAMP: 45d694c3

FAILURE_BUCKET_ID: X64_0xA_pci!PciDispatchIrp+1a0

BUCKET_ID: X64_0xA_pci!PciDispatchIrp+1a0

Followup: MachineOwner
---------

15: kd> !devnode 0 1
Dumping IopRootDeviceNode (= 0xfffffadf9eeb47c0)
DevNode 0xfffffadf9eeb47c0 for PDO 0xfffffadf9eeb38f0
InstancePath is "HTREE\ROOT\0"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9ebd9c30 for PDO 0xfffffadf9ebd9e50
InstancePath is "Root\ACPI_HAL\0000"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9eeac870 for PDO 0xfffffadf9eeac480
InstancePath is "ACPI_HAL\PNP0C08\0"
ServiceName is "ACPI"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9eea9240 for PDO 0xfffffadf9eab4320
InstancePath is "ACPI\PNP0C14\AWW"
ServiceName is "WmiAcpi"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9eea1190 for PDO 0xfffffadf9eabb1b0
InstancePath is "ACPI\PNP0A08\0"
ServiceName is "pci"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeStartPostWork (0x307)
DevNode 0xfffffadf9eeb3220 for PDO 0xfffffadf9e0dd410
InstancePath is "ACPI\PNP0C0C\aa"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9eab1330 for PDO 0xfffffadf9ee96e60
InstancePath is "ACPI\PNP0103\2&daba3ff&0"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0xfffffadf9e1be900 for PDO 0xfffffadf9eeb3e60
InstancePath is "ACPI\AMDI0030\0"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0xfffffadf9e1be730 for PDO 0xfffffadf9e1bf390
InstancePath is "ACPI\PNP0C14\ASUSWMI"
ServiceName is "WmiAcpi"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9e1be560 for PDO 0xfffffadf9e1bf190
InstancePath is "ACPI\FixedButton\2&daba3ff&0"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e1be390 for PDO 0xfffffadf9e1bee20
InstancePath is "ACPI\AuthenticAMD_-_AMD64_Family_23_Model_1\_0"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0xfffffadf9ee97ad0 for PDO 0xfffffadf9e1bec20
InstancePath is "ACPI\AuthenticAMD_-_AMD64_Family_23_Model_1\_1"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0xfffffadf9ee97900 for PDO 0xfffffadf9ee965c0
InstancePath is "ACPI\AuthenticAMD_-_AMD64_Family_23_Model_1\_2"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0xfffffadf9ee97730 for PDO 0xfffffadf9ee963c0
InstancePath is "ACPI\AuthenticAMD_-_AMD64_Family_23_Model_1\_3"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0xfffffadf9ee97560 for PDO 0xfffffadf9ebd9060
InstancePath is "ACPI\AuthenticAMD_-_AMD64_Family_23_Model_1\_4"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0xfffffadf9ee97390 for PDO 0xfffffadf9ebd9370
InstancePath is "ACPI\AuthenticAMD_-_AMD64_Family_23_Model_1\_5"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0xfffffadf9ee971c0 for PDO 0xfffffadf9e1bfba0
InstancePath is "ACPI\AuthenticAMD_-_AMD64_Family_23_Model_1\_6"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0xfffffadf9efda010 for PDO 0xfffffadf9e1bf9a0
InstancePath is "ACPI\AuthenticAMD_-_AMD64_Family_23_Model_1\_7"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0xfffffadf9efdae40 for PDO 0xfffffadf9ee95e60
InstancePath is "ACPI\AuthenticAMD_-_AMD64_Family_23_Model_1\_8"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0xfffffadf9efdac70 for PDO 0xfffffadf9ee95c60
InstancePath is "ACPI\AuthenticAMD_-_AMD64_Family_23_Model_1\_9"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0xfffffadf9efdaaa0 for PDO 0xfffffadf9eeb3060
InstancePath is "ACPI\AuthenticAMD_-_AMD64_Family_23_Model_1\10"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0xfffffadf9efda8d0 for PDO 0xfffffadf9eeb3440
InstancePath is "ACPI\AuthenticAMD_-_AMD64_Family_23_Model_1\11"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0xfffffadf9efda700 for PDO 0xfffffadf9e1c0740
InstancePath is "ACPI\AuthenticAMD_-_AMD64_Family_23_Model_1\12"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0xfffffadf9efda530 for PDO 0xfffffadf9e1c0540
InstancePath is "ACPI\AuthenticAMD_-_AMD64_Family_23_Model_1\13"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0xfffffadf9efda360 for PDO 0xfffffadf9e1c0340
InstancePath is "ACPI\AuthenticAMD_-_AMD64_Family_23_Model_1\14"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0xfffffadf9dffc010 for PDO 0xfffffadf9ebd2a60
InstancePath is "ACPI\AuthenticAMD_-_AMD64_Family_23_Model_1\15"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0xfffffadf9dffce40 for PDO 0xfffffadf9ebd2860
InstancePath is "ACPI\PNP0C02\90"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0xfffffadf9dffcc70 for PDO 0xfffffadf9ebd2660
InstancePath is "ACPI\PNP0C02\91"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0xfffffadf9dffcaa0 for PDO 0xfffffadf9ebd2460
InstancePath is "ACPI\PNP0C14\AOD"
ServiceName is "WmiAcpi"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9ebd9720 for PDO 0xfffffadf9ebd9940
InstancePath is "Root\dmio\0000"
ServiceName is "dmio"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9ebd9550 for PDO 0xfffffadf9eeb2060
InstancePath is "Root\ftdisk\0000"
ServiceName is "ftdisk"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9eeb2be0 for PDO 0xfffffadf9eeb2e00
InstancePath is "Root\LEGACY_AFD\0000"
ServiceName is "AFD"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9eeb2800 for PDO 0xfffffadf9eeb2a20
InstancePath is "Root\LEGACY_AMPA\0000"
ServiceName is "ampa"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9eeb2420 for PDO 0xfffffadf9eeb2640
InstancePath is "Root\LEGACY_BEEP\0000"
ServiceName is "Beep"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9eeb2250 for PDO 0xfffffadf9ebd8060
InstancePath is "Root\LEGACY_CDAC15BA\0000"
ServiceName is "CdaC15BA"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9ebd8c30 for PDO 0xfffffadf9ebd8e50
InstancePath is "Root\LEGACY_CDAD10BA\0000"
ServiceName is "CdaD10BA"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9ebd8750 for PDO 0xfffffadf9ebd8970
InstancePath is "Root\LEGACY_CRCDISK\0000"
ServiceName is "crcdisk"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9ebd8370 for PDO 0xfffffadf9ebd8590
InstancePath is "Root\LEGACY_DMBOOT\0000"
ServiceName is "dmboot"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9eeb1e40 for PDO 0xfffffadf9eeb1060
InstancePath is "Root\LEGACY_DMLOAD\0000"
ServiceName is "dmload"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9eeb1a60 for PDO 0xfffffadf9eeb1c80
InstancePath is "Root\LEGACY_FIPS\0000"
ServiceName is "Fips"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9eeb1680 for PDO 0xfffffadf9eeb18a0
InstancePath is "Root\LEGACY_GPC\0000"
ServiceName is "Gpc"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9eeb12a0 for PDO 0xfffffadf9eeb14c0
InstancePath is "Root\LEGACY_HTTP\0000"
ServiceName is "HTTP"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9ebd7e40 for PDO 0xfffffadf9ebd7060
InstancePath is "Root\LEGACY_IPNAT\0000"
ServiceName is "IpNat"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9ebd7a60 for PDO 0xfffffadf9ebd7c80
InstancePath is "Root\LEGACY_IPSEC\0000"
ServiceName is "IPSec"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9ebd7680 for PDO 0xfffffadf9ebd78a0
InstancePath is "Root\LEGACY_KSECDD\0000"
ServiceName is "ksecdd"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9ebd72a0 for PDO 0xfffffadf9ebd74c0
InstancePath is "Root\LEGACY_MNMDD\0000"
ServiceName is "mnmdd"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9eeb0e40 for PDO 0xfffffadf9eeb0060
InstancePath is "Root\LEGACY_MOUNTMGR\0000"
ServiceName is "mountmgr"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9eeb0a60 for PDO 0xfffffadf9eeb0c80
InstancePath is "Root\LEGACY_NDIS\0000"
ServiceName is "NDIS"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9eeb0680 for PDO 0xfffffadf9eeb08a0
InstancePath is "Root\LEGACY_NDISTAPI\0000"
ServiceName is "NdisTapi"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9eeb02a0 for PDO 0xfffffadf9eeb04c0
InstancePath is "Root\LEGACY_NDISUIO\0000"
ServiceName is "Ndisuio"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9ebd6e40 for PDO 0xfffffadf9ebd6060
InstancePath is "Root\LEGACY_NDPROXY\0000"
ServiceName is "NDProxy"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9ebd6a60 for PDO 0xfffffadf9ebd6c80
InstancePath is "Root\LEGACY_NETBT\0000"
ServiceName is "NetBT"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9ebd6680 for PDO 0xfffffadf9ebd68a0
InstancePath is "Root\LEGACY_NULL\0000"
ServiceName is "Null"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9ebd62a0 for PDO 0xfffffadf9ebd64c0
InstancePath is "Root\LEGACY_PARTMGR\0000"
ServiceName is "PartMgr"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9eeafe40 for PDO 0xfffffadf9eeaf060
InstancePath is "Root\LEGACY_RASACD\0000"
ServiceName is "RasAcd"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9eeafa60 for PDO 0xfffffadf9eeafc80
InstancePath is "Root\LEGACY_RDPCDD\0000"
ServiceName is "RDPCDD"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9eeaf680 for PDO 0xfffffadf9eeaf8a0
InstancePath is "Root\LEGACY_SECDRV\0000"
ServiceName is "Secdrv"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9eeaf2a0 for PDO 0xfffffadf9eeaf4c0
InstancePath is "Root\LEGACY_TCPIP\0000"
ServiceName is "Tcpip"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9ebd5e40 for PDO 0xfffffadf9ebd5060
InstancePath is "Root\LEGACY_VGASAVE\0000"
ServiceName is "VgaSave"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9ebd5a60 for PDO 0xfffffadf9ebd5c80
InstancePath is "Root\LEGACY_VOLSNAP\0000"
ServiceName is "VolSnap"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9ebd5680 for PDO 0xfffffadf9ebd58a0
InstancePath is "Root\LEGACY_WANARP\0000"
ServiceName is "Wanarp"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9ebd52a0 for PDO 0xfffffadf9ebd54c0
InstancePath is "Root\MEDIA\MS_MMACM"
ServiceName is "audstub"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9eeaee40 for PDO 0xfffffadf9eeae060
InstancePath is "Root\MEDIA\MS_MMDRV"
ServiceName is "audstub"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9eeaea60 for PDO 0xfffffadf9eeaec80
InstancePath is "Root\MEDIA\MS_MMMCI"
ServiceName is "audstub"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9eeae680 for PDO 0xfffffadf9eeae8a0
InstancePath is "Root\MEDIA\MS_MMVCD"
ServiceName is "audstub"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9eeae2a0 for PDO 0xfffffadf9eeae4c0
InstancePath is "Root\MEDIA\MS_MMVID"
ServiceName is "audstub"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9ebd4e40 for PDO 0xfffffadf9ebd4060
InstancePath is "Root\MS_L2TPMINIPORT\0000"
ServiceName is "Rasl2tp"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9ebd4a60 for PDO 0xfffffadf9ebd4c80
InstancePath is "Root\MS_NDISWANIP\0000"
ServiceName is "NdisWan"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9ebd4680 for PDO 0xfffffadf9ebd48a0
InstancePath is "Root\MS_PPPOEMINIPORT\0000"
ServiceName is "RasPppoe"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9ebd42a0 for PDO 0xfffffadf9ebd44c0
InstancePath is "Root\MS_PPTPMINIPORT\0000"
ServiceName is "PptpMiniport"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9eeade40 for PDO 0xfffffadf9eead060
InstancePath is "Root\MS_PSCHEDMP\0000"
ServiceName is "PSched"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9eeada60 for PDO 0xfffffadf9eeadc80
InstancePath is "Root\MS_PSCHEDMP\0001"
ServiceName is "PSched"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9eead680 for PDO 0xfffffadf9eead8a0
InstancePath is "Root\MS_PTIMINIPORT\0000"
ServiceName is "Raspti"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9eead2a0 for PDO 0xfffffadf9eead4c0
InstancePath is "Root\RDPDR\0000"
ServiceName is "rdpdr"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9ebd3e40 for PDO 0xfffffadf9ebd3060
InstancePath is "Root\RDP_KBD\0000"
ServiceName is "TermDD"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9ebd3a60 for PDO 0xfffffadf9ebd3c80
InstancePath is "Root\RDP_MOU\0000"
ServiceName is "TermDD"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9ebd3680 for PDO 0xfffffadf9ebd38a0
InstancePath is "Root\SYSTEM\0000"
ServiceName is "swenum"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9ebd32a0 for PDO 0xfffffadf9ebd34c0
InstancePath is "Root\SYSTEM\0001"
ServiceName is "update"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9eeace40 for PDO 0xfffffadf9eeac060
InstancePath is "Root\SYSTEM\0002"
ServiceName is "mssmbios"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
15: kd> !PCItree
Bus 0x0 (FDO Ext fffffadf9e0dce80)
0600 14501022 (d=0, f=0) devext fffffadf9efd91b0 Bridge/HOST to PCI
0806 14511022 (d=0, f=2) devext fffffadf9efd9570 Base System Device/Unknown Sub Class
0600 14521022 (d=1, f=0) devext fffffadf9dffbe90 Bridge/HOST to PCI
0604 14531022 (d=1, f=2) devext fffffadf9dffbb70 Bridge/PCI to PCI
*************************************************************************
*** ***
*** ***
*** Your debugger is not using the correct symbols ***
*** ***
*** In order for this command to work properly, your symbol path ***
*** must point to .pdb files that have full type information. ***
*** ***
*** Certain .pdb files (such as the public OS symbols) do not ***
*** contain the required information. Contact the group that ***
*** provided you with these symbols if you need this command to ***
*** work. ***
*** ***
*** Type referenced: pci!PCI_FDO_EXTENSION ***
*** ***

*************************************************************************
Bus 0x0 (FDO Ext 00000000)
No devices have been enumerated on this bus.
0600 14521022 (d=2, f=0) devext fffffadf9dffb850 Bridge/HOST to PCI
0600 14521022 (d=3, f=0) devext fffffadf9e0dc1b0 Bridge/HOST to PCI
0604 14531022 (d=3, f=1) devext fffffadf9e0dcb80 Bridge/PCI to PCI
*************************************************************************

***************
Bus 0x0 (FDO Ext 00000000)
No devices have been enumerated on this bus.
0600 14521022 (d=4, f=0) devext fffffadf9e0dc860 Bridge/HOST to PCI
0600 14521022 (d=7, f=0) devext fffffadf9e0dc540 Bridge/HOST to PCI
0604 14541022 (d=7, f=1) devext fffffadf9e8a01b0 Bridge/PCI to PCI
*************************************************************************

*** ***
*** ***
*** Your debugger is not using the correct symbols ***
*** ***
*** In order for this command to work properly, your symbol path ***
*** must point to .pdb files that have full type information. ***
*** ***
*** Certain .pdb files (such as the public OS symbols) do not ***
*** contain the required information. Contact the group that ***
*** provided you with these symbols if you need this command to ***
*** work. ***
*** ***
*** Type referenced: pci!FDO_EXTENSION ***
*** ***
*************************************************************************

*************************************************************************
Bus 0x0 (FDO Ext 00000000)
No devices have been enumerated on this bus.
0600 14521022 (d=8, f=0) devext fffffadf9e8a0e90 Bridge/HOST to PCI
0604 14541022 (d=8, f=1) devext fffffadf9e8a0b70 Bridge/PCI to PCI
*************************************************************************

*** ***
*** Your debugger is not using the correct symbols ***
*** ***
*** In order for this command to work properly, your symbol path ***
*** must point to .pdb files that have full type information. ***
*** ***
*** Certain .pdb files (such as the public OS symbols) do not ***
*** contain the required information. Contact the group that ***
*** provided you with these symbols if you need this command to ***
*** work. ***
*** ***
*** Type referenced: pci!FDO_EXTENSION ***
*** ***
*************************************************************************

Bus 0x0 (FDO Ext 00000000)
No devices have been enumerated on this bus.
0c05 790b1022 (d=14, f=0) devext fffffadf9e8a0850 Serial Bus Controller/Unknown Sub Class
0601 790e1022 (d=14, f=3) devext fffffadf9e8a0530 Bridge/PCI to ISA
0600 14601022 (d=18, f=0) devext fffffadf9eacf1b0 Bridge/HOST to PCI
0600 14611022 (d=18, f=1) devext fffffadf9eacfe90 Bridge/HOST to PCI
0600 14621022 (d=18, f=2) devext fffffadf9eacfb70 Bridge/HOST to PCI
0600 14631022 (d=18, f=3) devext fffffadf9eacf850 Bridge/HOST to PCI
0600 14641022 (d=18, f=4) devext fffffadf9eacf530 Bridge/HOST to PCI
0600 14651022 (d=18, f=5) devext fffffadf9efd81b0 Bridge/HOST to PCI
0600 14661022 (d=18, f=6) devext fffffadf9efd8e90 Bridge/HOST to PCI
0600 14671022 (d=18, f=7) devext fffffadf9efd8b70 Bridge/HOST to PCI
Total PCI Root busses processed = 1
15: kd> !PCI
PCI Segment 0 Bus 0
00:0 1022:1450.00 Cmd[0000:......] Sts[0000:.....] AMD Host Bridge SubID:1043:8747
00:2 1022:1451.00 Cmd[0004:..b...] Sts[0010:c....] AMD Class:8:6:0 SubID:1043:8747
01:0 1022:1452.00 Cmd[0000:......] Sts[0000:.....] AMD Host Bridge
01:2 1022:1453.00 Cmd[0007:imb...] Sts[0010:c....] AMD PCI-PCI Bridge 0->0x1-0x6
02:0 1022:1452.00 Cmd[0000:......] Sts[0000:.....] AMD Host Bridge
03:0 1022:1452.00 Cmd[0000:......] Sts[0000:.....] AMD Host Bridge
03:1 1022:1453.00 Cmd[0007:imb...] Sts[0010:c....] AMD PCI-PCI Bridge 0->0x7-0x7
04:0 1022:1452.00 Cmd[0000:......] Sts[0000:.....] AMD Host Bridge
07:0 1022:1452.00 Cmd[0000:......] Sts[0000:.....] AMD Host Bridge
07:1 1022:1454.00 Cmd[0007:imb...] Sts[0010:c....] AMD PCI-PCI Bridge 0->0x8-0x8
08:0 1022:1452.00 Cmd[0000:......] Sts[0000:.....] AMD Host Bridge
08:1 1022:1454.00 Cmd[0007:imb...] Sts[0010:c....] AMD PCI-PCI Bridge 0->0x9-0x9
14:0 1022:790b.59 Cmd[0403:im....] Sts[0220:.6...] AMD SMBus Controller SubID:1043:8747
14:3 1022:790e.51 Cmd[000f:imb...] Sts[0220:.6...] AMD ISA Bridge SubID:1043:8747
18:0 1022:1460.00 Cmd[0000:......] Sts[0000:.....] AMD Host Bridge
18:1 1022:1461.00 Cmd[0000:......] Sts[0000:.....] AMD Host Bridge
18:2 1022:1462.00 Cmd[0000:......] Sts[0000:.....] AMD Host Bridge
18:3 1022:1463.00 Cmd[0000:......] Sts[0000:.....] AMD Host Bridge
18:4 1022:1464.00 Cmd[0000:......] Sts[0000:.....] AMD Host Bridge
18:5 1022:1465.00 Cmd[0000:......] Sts[0000:.....] AMD Host Bridge
18:6 1022:1466.00 Cmd[0000:......] Sts[0000:.....] AMD Host Bridge
18:7 1022:1467.00 Cmd[0000:......] Sts[0000:.....] AMD Host Bridge
1f


Microsoft (R) Windows Debugger Version 6.12.0002.633 X86
Copyright (c) Microsoft Corporation. All rights reserved.

Opened \\.\com1
Waiting to reconnect...
Connected to Windows Server 2003 3790 x64 target at (Sun Sep 1 13:39:29.250 2019 (UTC + 2:00)), ptr64 TRUE
Kernel Debugger connection established.
WARNING: Inaccessible path: 'C:\WinDDK\7600.16385.1\src\openfabricsall\nvme13\nvme\objchk_wnet_x86\i386'
Symbol search path is: C:\WinDDK\7600.16385.1\src\openfabricsall\nvme13\nvme\objchk_wnet_x86\i386;SRV*c:\symbols
*⇗ http://msdl.microsoft.com/download/symbols;C:\symbols
Executable search path is: C:\localsymbols
Windows Server 2003 Kernel Version 3790 MP (1 procs) Free x64
Built by: 3790.srv03_sp2_rtm.070216-1710
Machine Name:
Kernel base = 0xfffff800`01000000 PsLoadedModuleList = 0xfffff800`011d5100
System Uptime: not available

*** Fatal System Error: 0x0000000a
(0x0000000000000010,0x000000000000000C,0x0000000000000000,0xFFFFF8000107984D)

Break instruction exception - code 80000003 (first chance)

A fatal system error has occurred.
Debugger entered on first try; Bugcheck callbacks have not been invoked.

A fatal system error has occurred.

Connected to Windows Server 2003 3790 x64 target at (Sun Sep 1 13:39:41.703 2019 (UTC + 2:00)), ptr64 TRUE
Loading Kernel Symbols
........................
Loading User Symbols

*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

Use !analyze -v to get detailed debugging information.

BugCheck A, {10, c, 0, fffff8000107984d}

*** No owner thread found for resource fffff800011dda40
*** No owner thread found for resource fffff800011dda40
*** No owner thread found for resource fffff800011dda40
*** No owner thread found for resource fffff800011dda40
*** No owner thread found for resource fffff800011dda40
*** No owner thread found for resource fffff800011dda40
Probably caused by : ntkrnlmp.exe ( nt!KiPageFault+207 )

Followup: MachineOwner
---------

nt!DbgBreakPointWithStatus:
fffff800`01026db0 cc int 3
15: kd> !analyze -v
*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

IRQL_NOT_LESS_OR_EQUAL (a)
An attempt was made to access a pageable (or completely invalid) address at an
interrupt request level (IRQL) that is too high. This is usually
caused by drivers using improper addresses.
If a kernel debugger is available get the stack backtrace.
Arguments:
Arg1: 0000000000000010, memory referenced
Arg2: 000000000000000c, IRQL
Arg3: 0000000000000000, bitfield :
bit 0 : value 0 = read operation, 1 = write operation
bit 3 : value 0 = not an execute operation, 1 = execute operation (only on chips which support this level of status)
Arg4: fffff8000107984d, address which referenced memory

Debugging Details:
------------------

*** No owner thread found for resource fffff800011dda40
*** No owner thread found for resource fffff800011dda40
*** No owner thread found for resource fffff800011dda40
*** No owner thread found for resource fffff800011dda40
*** No owner thread found for resource fffff800011dda40
*** No owner thread found for resource fffff800011dda40

READ_ADDRESS: 0000000000000010

CURRENT_IRQL: c

FAULTING_IP:
nt!IopCompleteRequest+8e0
fffff800`0107984d 4c8b4810 mov r9,qword ptr [rax+10h]

DEFAULT_BUCKET_ID: DRIVER_FAULT

BUGCHECK_STR: 0xA

PROCESS_NAME: System

IRP_ADDRESS: ffffffffffffff88

TRAP_FRAME: fffffadf93607310 -- (.trap 0xfffffadf93607310)
NOTE: The trap frame does not contain all registers.
Some register values may be zeroed or incorrect.
rax=0000000000000000 rbx=0000000000000000 rcx=fffffadf9334b7f0
rdx=0000000000000000 rsi=0000000000000000 rdi=0000000000000000
rip=fffff8000107984d rsp=fffffadf936074a0 rbp=fffffadf936075e0
r8=0000000000000000 r9=fffffadf93607578 r10=fffff800011dcd28
r11=fffff80001032de0 r12=0000000000000000 r13=0000000000000000
r14=0000000000000000 r15=0000000000000000
iopl=0 nv up ei pl nz na pe nc
nt!IopCompleteRequest+0x8e0:
fffff800`0107984d 4c8b4810 mov r9,qword ptr [rax+10h] ds:6080:0010=????????????????
Resetting default scope

LOCK_ADDRESS: fffff800011ddb40 -- (!locks fffff800011ddb40)
The state of the ACPI locks is:
- Build Queue Lock is not owned
- Button Lock is not owned
- Device Tree Lock is not owned
- Fatal Lock is not owned
- Power Lock is not owned
- Get Lock is not owned
- Power Queue Lock is not owned
- Thermal Lock is not owned
- Update Flags Lock is not owned
- Worker Lock is not owned

PNP_TRIAGE:
Lock address : 0xfffff800011ddb40
Thread Count : 1
Thread address: 0xfffffadf9ee91bf0
Thread wait : 0x9d

LAST_CONTROL_TRANSFER: from fffff800010d673e to fffff80001026db0

STACK_TEXT:
fffffadf`93606aa8 fffff800`010d673e : 00000000`0000000f 00000000`00000000 00000000`00000010 fffff800`0105669e : nt!DbgBreakPointWithStatus
fffffadf`93606ab0 fffff800`010d7d0e : fffff800`00000003 00000000`0000000a 00000000`00000010 00000000`0000000c : nt!KiBugCheckDebugBreak+0x1e
fffffadf`93606b10 fffff800`0102ea54 : fffffadf`93607180 00000000`00000180 00000006`00000000 fffffa80`0045c4b0 : nt!KeBugCheck2+0x640
fffffadf`93607150 fffff800`0102e674 : 00000000`0000000a 00000000`00000010 00000000`0000000c 00000000`00000000 : nt!KeBugCheckEx+0x104
fffffadf`93607190 fffff800`0102d607 : 00000000`00000000 fffffadf`93607420 fffffadf`93607300 fffffadf`00000240 : nt!KiBugCheckDispatch+0x74
fffffadf`93607310 fffff800`0107984d : 00000000`00000000 fffffadf`9ee91bf0 fffffadf`93607728 fffffa80`0045e150 : nt!KiPageFault+0x207
fffffadf`936074a0 fffff800`01027f81 : 00000000`00000000 fffff800`012966ee 00020019`0047e401 fffffadf`9ebd9b00 : nt!IopCompleteRequest+0x8e0
fffffadf`93607540 fffff800`01027b8d : 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000000 : nt!KiDeliverApc+0x215
fffffadf`936075e0 fffff800`012857c3 : 00000000`00020019 fffffadf`9eeb6080 fffffa80`0045e150 00000000`00000000 : nt!KiApcInterrupt+0xdd
fffffadf`93607770 fffff800`0129b22b : fffffadf`0008e888 fffffadf`93607d30 fffffadf`93607988 fffff800`011aa8fd : nt!ObOpenObjectByName+0xac
fffffadf`93607960 fffff800`0102e3fd : fffffadf`93607c40 fffff800`00020019 fffffadf`93607c58 fffffadf`9ee91bf0 : nt!NtOpenKey+0x277
fffffadf`93607a60 fffff800`0102e8c0 : fffff800`0133dbe6 fffffadf`93607c58 ffffffff`80000194 00000000`00000014 : nt!KiSystemServiceCopyEnd+0x3
fffffadf`93607bf8 fffff800`0133dbe6 : fffffadf`93607c58 ffffffff`80000194 00000000`00000014 ffffffff`80000194 : nt!KiServiceLinkage
fffffadf`93607c00 fffff800`0133db61 : fffffadf`9eeaea60 fffffadf`93608068 fffffadf`93608048 fffffadf`9eeaea60 : nt!PpSaveDeviceCapabilities+0x66
fffffadf`93607ca0 fffff800`0134cd61 : 00000000`00000000 fffffadf`93608068 fffffadf`93608048 fffffadf`9eeaea60 : nt!IopQueryAndSaveDeviceNodeCapabilities+0xc0
fffffadf`93607d60 fffff800`01339aae : ffffffff`80000194 fffffadf`9ebda420 00000000`00000000 00000000`00000000 : nt!IopInitializeDeviceInstanceKey+0x62f
fffffadf`93607e20 fffff800`0134c6fd : 00000000`00000000 00000000`00000020 00000000`00000010 00000000`00000086 : nt!PipApplyFunctionToSubKeys+0x151
fffffadf`93607ef0 fffff800`01339aae : 00000000`00000000 00000000`0000006a 00000000`00000001 fffffa80`00484360 : nt!IopInitializeDeviceKey+0x9d
fffffadf`93607f30 fffff800`0134c50a : 00000000`00000000 00000000`0000001a fffffadf`9eeb38f0 00000000`00000000 : nt!PipApplyFunctionToSubKeys+0x151
fffffadf`93608000 fffff800`0134bbf8 : fffffadf`9ebda350 00000000`00000000 fffffadf`9eeb38f0 00000000`00000000 : nt!IopGetRootDevices+0x18a
fffffadf`936080d0 fffff800`0133ed04 : fffffadf`9ebda350 fffffadf`936081d0 fffffadf`9eeb38f0 fffffadf`9eeb4900 : nt!IopPnPDispatch+0xc8
fffffadf`93608140 fffff800`010d0891 : 00000000`00000000 00000000`00000002 00000000`00000000 fffffadf`9eeb47c0 : nt!IopSynchronousCall+0x144
fffffadf`936081b0 fffff800`01335a3a : fffffa80`0046d170 fffffa80`000a7500 fffffadf`93608290 00000000`00000000 : nt!IopQueryDeviceRelations+0x71
fffffadf`93608240 fffff800`013376e5 : 00000000`00000000 fffffadf`9eeb4880 00000000`00000002 fffffadf`9eeb3ab0 : nt!PipProcessDevNodeTree+0x342
fffffadf`936085d0 fffff800`010cc9d8 : fffffadf`00000003 00000000`00000000 fffffadf`9eeb38f0 00000000`00000000 : nt!PiProcessReenumeration+0x85
fffffadf`93608620 fffff800`010cc63b : 00000000`00000000 fffffadf`9eeb3ab0 fffff800`0134a4f0 fffffadf`9eeb38f0 : nt!PipDeviceActionWorker+0x368
fffffadf`936086b0 fffff800`01431545 : fffffadf`00000001 00000000`00000000 00000000`00000000 fffffadf`9eeb38f0 : nt!PipRequestDeviceAction+0x1ab
fffffadf`93608710 fffff800`0142a040 : 00000000`00000000 00000000`0000fffc fffff800`00091448 fffff800`0146a68e : nt!IopInitializePlugPlayServices+0xd80
fffffadf`936088c0 fffff800`01428144 : fffff800`00091598 fffff800`00091598 00000000`00000003 fffffadf`9ee90010 : nt!IoInitSystem+0xe41
fffffadf`93608a50 fffff800`0130dc29 : 12d93b24`1e99bf20 fffffadf`9ee91bf0 00000000`00000080 fffffadf`9ee91bf0 : nt!Phase1InitializationDiscard+0x111d
fffffadf`93608d40 fffff800`0124b972 : b6e6174a`baa6174e 8dd685ea`819685ee 307b39e5`3cbb19e1 0b4bab45`070baf41 : nt!Phase1Initialization+0x9
fffffadf`93608d70 fffff800`010202d6 : fffff800`011b1180 fffffadf`9ee91bf0 fffff800`011b5500 00000000`da83b888 : nt!PspSystemThreadStartup+0x3e
fffffadf`93608dd0 00000000`00000000 : 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000000 : nt!KxStartSystemThread+0x16


STACK_COMMAND: kb

FOLLOWUP_IP:
nt!KiPageFault+207
fffff800`0102d607 488d0572300000 lea rax,[nt!ExpInterlockedPopEntrySList (fffff800`01030680)]

SYMBOL_STACK_INDEX: 5

SYMBOL_NAME: nt!KiPageFault+207

FOLLOWUP_NAME: MachineOwner

MODULE_NAME: nt

IMAGE_NAME: ntkrnlmp.exe

DEBUG_FLR_IMAGE_TIMESTAMP: 45d69ab4

FAILURE_BUCKET_ID: X64_0xA_nt!KiPageFault+207

BUCKET_ID: X64_0xA_nt!KiPageFault+207

Followup: MachineOwner
---------


#2198 infuscomus ⇗ @diderius6

does windows XP x64 install properly with Standard PC or MPS?
#2199 diderius6 ⇗ @infuscomus
There is nothing like this in XP 64
and so it is more difficult
Dietmar
#2200 diderius6 ⇗ @daniel_k
Here is the Windbg output from
5048 acpi_test1.sys from yesterday (first from 3)
with nondebug Ntoskrnl.exe and Hal.dll
Dietmar

Microsoft (R) Windows Debugger Version 6.12.0002.633 X86
Copyright (c) Microsoft Corporation. All rights reserved.

Opened \\.\com1
Waiting to reconnect...
Connected to Windows Server 2003 3790 x64 target at (Sun Sep 1 14:02:36.906 2019 (UTC + 2:00)), ptr64 TRUE
Kernel Debugger connection established.
WARNING: Inaccessible path: 'C:\WinDDK\7600.16385.1\src\openfabricsall\nvme13\nvme\objchk_wnet_x86\i386'
Symbol search path is: C:\WinDDK\7600.16385.1\src\openfabricsall\nvme13\nvme\objchk_wnet_x86\i386;SRV*c:\symbols
*⇗ http://msdl.microsoft.com/download/symbols;C:\symbols
Executable search path is: C:\localsymbols
Windows Server 2003 Kernel Version 3790 MP (1 procs) Free x64
Built by: 3790.srv03_sp2_rtm.070216-1710
Machine Name:
Kernel base = 0xfffff800`01000000 PsLoadedModuleList = 0xfffff800`011d5100
System Uptime: not available

*** Fatal System Error: 0x0000007e
(0xFFFFFFFFC0000005,0xFFFFFADF92D9D923,0xFFFFFADF93607540,0xFFFFFADF93606F50)

Break instruction exception - code 80000003 (first chance)

A fatal system error has occurred.
Debugger entered on first try; Bugcheck callbacks have not been invoked.

A fatal system error has occurred.

Connected to Windows Server 2003 3790 x64 target at (Sun Sep 1 14:02:49.671 2019 (UTC + 2:00)), ptr64 TRUE
Loading Kernel Symbols
........................
Loading User Symbols

*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

Use !analyze -v to get detailed debugging information.

BugCheck 7E, {ffffffffc0000005, fffffadf92d9d923, fffffadf93607540, fffffadf93606f50}

*** ERROR: Module load completed but symbols could not be loaded for ACPI.sys
*** No owner thread found for resource fffff800011dda40
*** No owner thread found for resource fffff800011dda40
*** No owner thread found for resource fffff800011dda40
*** No owner thread found for resource fffff800011dda40
Probably caused by : ACPI.sys ( ACPI+19923 )

Followup: MachineOwner
---------

nt!DbgBreakPointWithStatus:
fffff800`01026db0 cc int 3
15: kd> !analyze -v
*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

SYSTEM_THREAD_EXCEPTION_NOT_HANDLED (7e)
This is a very common bugcheck. Usually the exception address pinpoints
the driver/function that caused the problem. Always note this address
as well as the link date of the driver/image that contains this address.
Arguments:
Arg1: ffffffffc0000005, The exception code that was not handled
Arg2: fffffadf92d9d923, The address that the exception occurred at
Arg3: fffffadf93607540, Exception Record Address
Arg4: fffffadf93606f50, Context Record Address

Debugging Details:
------------------

*** No owner thread found for resource fffff800011dda40
*** No owner thread found for resource fffff800011dda40
*** No owner thread found for resource fffff800011dda40
*** No owner thread found for resource fffff800011dda40

EXCEPTION_CODE: (NTSTATUS) 0xc0000005 - Die Anweisung "0x%08lx" verweist auf Speicher bei "0x%08lx". Die Daten wurden wegen eines E/A-Fehlers in "0x%081x" nicht in den Arbeitsspeicher bertragen.

FAULTING_IP:
ACPI+19923
fffffadf`92d9d923 41ff5620 call qword ptr [r14+20h]

EXCEPTION_RECORD: fffffadf93607540 -- (.exr 0xfffffadf93607540)
ExceptionAddress: fffffadf92d9d923 (ACPI+0x0000000000019923)
ExceptionCode: c0000005 (Access violation)
ExceptionFlags: 00000000
NumberParameters: 2
Parameter[0]: 0000000000000000
Parameter[1]: 0000000000000020
Attempt to read from address 0000000000000020

CONTEXT: fffffadf93606f50 -- (.cxr 0xfffffadf93606f50)
rax=fffffadf936077b0 rbx=fffffadf92dd3b40 rcx=fffffadf9ee97290
rdx=fffffadf936077d0 rsi=0000000000000000 rdi=0000000000000000
rip=fffffadf92d9d923 rsp=fffffadf93607760 rbp=fffffadf9ee97290
r8=fffffadf936077b4 r9=fffffadf936077b3 r10=0000000000000001
r11=fffffadf936079a8 r12=fffffadf936079f0 r13=fffffadf92dd3b00
r14=0000000000000000 r15=fffffadf936079f8
iopl=0 nv up ei pl zr na po nc
cs=0010 ss=0018 ds=002b es=002b fs=0053 gs=002b efl=00010246
ACPI+0x19923:
fffffadf`92d9d923 41ff5620 call qword ptr [r14+20h] ds:002b:00000000`00000020=????????????????
Resetting default scope

PROCESS_NAME: System

CURRENT_IRQL: 2

ERROR_CODE: (NTSTATUS) 0xc0000005 - Die Anweisung "0x%08lx" verweist auf Speicher bei "0x%08lx". Die Daten wurden wegen eines E/A-Fehlers in "0x%081x" nicht in den Arbeitsspeicher bertragen.

EXCEPTION_PARAMETER1: 0000000000000000

EXCEPTION_PARAMETER2: 0000000000000020

READ_ADDRESS: 0000000000000020

FOLLOWUP_IP:
ACPI+19923
fffffadf`92d9d923 41ff5620 call qword ptr [r14+20h]

BUGCHECK_STR: 0x7E

DEFAULT_BUCKET_ID: NULL_CLASS_PTR_DEREFERENCE

LOCK_ADDRESS: fffff800011ddb40 -- (!locks fffff800011ddb40)
The state of the ACPI locks is:
ACPI: Could not read acpi!AcpiBuildQueueLock
ACPI: Could not read acpi!AcpiButtonLock
ACPI: Could not read acpi!AcpiDeviceTreeLock
ACPI: Could not read acpi!AcpiFatalLock
ACPI: Could not read acpi!AcpiPowerLock
ACPI: Could not read acpi!AcpiGetLock
ACPI: Could not read acpi!AcpiPowerQueueLock
ACPI: Could not read acpi!AcpiThermalLock
ACPI: Could not read acpi!AcpiUpdateFlagsLock
ACPI: Could not read acpi!AcpiWorkerSpinLock

PNP_TRIAGE:
Lock address : 0xfffff800011ddb40
Thread Count : 1
Thread address: 0xfffffadf9ee91bf0
Thread wait : 0xab

LAST_CONTROL_TRANSFER: from fffff800010d673e to fffff80001026db0

STACK_TEXT:
fffffadf`93607760 fffffadf`92ddec12 : 00000000`00000001 fffff800`0137de62 fffffadf`00000101 fffff800`0137eb82 : ACPI+0x19923
fffffadf`936079b0 fffffadf`92de8136 : fffffadf`92dd3b40 fffffadf`93607bb0 fffffa80`0044a4e8 fffffadf`93607bb0 : ACPI+0x5ac12
fffffadf`93607a30 fffffadf`92ddf2b2 : fffffadf`92dd3b40 fffffa80`00459f30 00000000`00000009 fffffadf`93607bb0 : ACPI+0x64136
fffffadf`93607b10 fffffadf`92de826f : 00000000`00000000 fffffa80`00459f30 00000000`00000009 00000000`00000000 : ACPI+0x5b2b2
fffffadf`93607b40 fffff800`01330d16 : fffffa80`0044a4c0 fffffa80`0045abe8 fffffa80`0045abc0 fffffadf`93607ba0 : ACPI+0x6426f
fffffadf`93607b80 fffff800`01330b03 : 00000000`00000000 fffffa80`00459f30 fffffa80`0044a460 fffffadf`9e1c0360 : nt!IopBootAllocation+0x14b
fffffadf`93607be0 fffff800`01330a07 : fffffa80`004695d0 fffffadf`9ee97290 00000000`00000004 fffffadf`9ee97290 : nt!IopAllocateBootResourcesInternal+0x93
fffffadf`93607c70 fffff800`014303ab : 00000000`00000010 fffffadf`9e1c0360 fffffa80`004695d0 00000000`00000004 : nt!IopAllocateBootResources+0x57
fffffadf`93607cb0 fffff800`013319e6 : 00000000`00000000 ffffffff`800001d8 fffffadf`9e1c0360 fffffa80`004695d0 : nt!IopReportBootResources+0xc1
fffffadf`93607ce0 fffff800`01333334 : ffffffff`800001e4 fffffadf`9e1c0420 fffffadf`9e1c0360 ffffffff`800001e4 : nt!PiQueryAndAllocateBootResources+0x276
fffffadf`93607da0 fffff800`0133591b : fffffadf`9eab9190 fffffadf`9e1c0360 00000000`00000000 fffffadf`9e1c0360 : nt!PiProcessNewDeviceNode+0x16ff
fffffadf`93608140 fffff800`010cc809 : fffffadf`9eeb3870 fffff800`00092470 fffffadf`9eeb38c0 fffffadf`9eeb3870 : nt!PipProcessDevNodeTree+0x223
fffffadf`936084d0 fffff800`014329f7 : ffffffff`00000000 fffffadf`9eeb3870 fffff800`00092470 fffffadf`9eeb38f0 : nt!PipDeviceActionWorker+0x199
fffffadf`93608560 fffff800`0142a14d : 00000000`00000000 00000000`0000fffc 00000000`00000000 00000000`0000fffc : nt!IopInitializeBootDrivers+0xc57
fffffadf`936088c0 fffff800`01428144 : fffff800`00091598 fffff800`00091598 00000000`00000003 fffffadf`9ee90010 : nt!IoInitSystem+0xf4f
fffffadf`93608a50 fffff800`0130dc29 : 12d93b24`1e99bf20 fffffadf`9ee91bf0 00000000`00000080 fffffadf`9ee91bf0 : nt!Phase1InitializationDiscard+0x111d
fffffadf`93608d40 fffff800`0124b972 : b6e6174a`baa6174e 8dd685ea`819685ee 307b39e5`3cbb19e1 0b4bab45`070baf41 : nt!Phase1Initialization+0x9
fffffadf`93608d70 fffff800`010202d6 : fffff800`011b1180 fffffadf`9ee91bf0 fffff800`011b5500 00000000`da83b888 : nt!PspSystemThreadStartup+0x3e
fffffadf`93608dd0 00000000`00000000 : 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000000 : nt!KxStartSystemThread+0x16


SYMBOL_STACK_INDEX: 0

SYMBOL_NAME: ACPI+19923

FOLLOWUP_NAME: MachineOwner

MODULE_NAME: ACPI

IMAGE_NAME: ACPI.sys

DEBUG_FLR_IMAGE_TIMESTAMP: 424d79aa

STACK_COMMAND: .cxr 0xfffffadf93606f50 ; kb

FAILURE_BUCKET_ID: X64_0x7E_ACPI+19923

BUCKET_ID: X64_0x7E_ACPI+19923

Followup: MachineOwner
---------

15: kd> !devnode 0 1
Dumping IopRootDeviceNode (= 0xfffffadf9eeb47c0)
DevNode 0xfffffadf9eeb47c0 for PDO 0xfffffadf9eeb38f0
InstancePath is "HTREE\ROOT\0"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9ebd9c30 for PDO 0xfffffadf9ebd9e50
InstancePath is "Root\ACPI_HAL\0000"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9eeac870 for PDO 0xfffffadf9eeac480
InstancePath is "ACPI_HAL\PNP0C08\0"
ServiceName is "ACPI"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9ee96e40 for PDO 0xfffffadf9eabe1b0
InstancePath is "ACPI\PNP0C14\AWW"
ServiceName is "WmiAcpi"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9eea4190 for PDO 0xfffffadf9eeb3600
InstancePath is "ACPI\PNP0A08\0"
ServiceName is "pci"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9eab9190 for PDO 0xfffffadf9eeb3e20
InstancePath is "ACPI\PNP0C0C\aa"
State = DeviceNodeDriversAdded (0x303)
Previous State = DeviceNodeInitialized (0x302)
DevNode 0xfffffadf9e1c0360 for PDO 0xfffffadf9ee97290
InstancePath is "ACPI\PNP0103\2&daba3ff&0"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0xfffffadf9eeb3100 for PDO 0xfffffadf9ebd2a60
State = DeviceNodeUninitialized (0x301)
Previous State = Unknown State (0x0)
DevNode 0xfffffadf9ee95a40 for PDO 0xfffffadf9e1beab0
State = DeviceNodeUninitialized (0x301)
Previous State = Unknown State (0x0)
DevNode 0xfffffadf9e1bfb10 for PDO 0xfffffadf9eeb3320
State = DeviceNodeUninitialized (0x301)
Previous State = Unknown State (0x0)
DevNode 0xfffffadf9e1bf940 for PDO 0xfffffadf9ebd26e0
State = DeviceNodeUninitialized (0x301)
Previous State = Unknown State (0x0)
DevNode 0xfffffadf9e1bf770 for PDO 0xfffffadf9ebd24e0
State = DeviceNodeUninitialized (0x301)
Previous State = Unknown State (0x0)
DevNode 0xfffffadf9e1bf5a0 for PDO 0xfffffadf9e0cd060
State = DeviceNodeUninitialized (0x301)
Previous State = Unknown State (0x0)
DevNode 0xfffffadf9e1bf3d0 for PDO 0xfffffadf9e0cd410
State = DeviceNodeUninitialized (0x301)
Previous State = Unknown State (0x0)
DevNode 0xfffffadf9e1bf200 for PDO 0xfffffadf9e1c0780
State = DeviceNodeUninitialized (0x301)
Previous State = Unknown State (0x0)
DevNode 0xfffffadf9e8d0010 for PDO 0xfffffadf9e1c0580
State = DeviceNodeUninitialized (0x301)
Previous State = Unknown State (0x0)
DevNode 0xfffffadf9e8d0c90 for PDO 0xfffffadf9ee95e60
State = DeviceNodeUninitialized (0x301)
Previous State = Unknown State (0x0)
DevNode 0xfffffadf9e8d0ac0 for PDO 0xfffffadf9ee95c60
State = DeviceNodeUninitialized (0x301)
Previous State = Unknown State (0x0)
DevNode 0xfffffadf9e8d08f0 for PDO 0xfffffadf9e1be720
State = DeviceNodeUninitialized (0x301)
Previous State = Unknown State (0x0)
DevNode 0xfffffadf9e8d0720 for PDO 0xfffffadf9e1be520
State = DeviceNodeUninitialized (0x301)
Previous State = Unknown State (0x0)
DevNode 0xfffffadf9e8d0550 for PDO 0xfffffadf9e1be320
State = DeviceNodeUninitialized (0x301)
Previous State = Unknown State (0x0)
DevNode 0xfffffadf9e8d0380 for PDO 0xfffffadf9ee96600
State = DeviceNodeUninitialized (0x301)
Previous State = Unknown State (0x0)
DevNode 0xfffffadf9e1bd010 for PDO 0xfffffadf9ee96400
State = DeviceNodeUninitialized (0x301)
Previous State = Unknown State (0x0)
DevNode 0xfffffadf9e1bde40 for PDO 0xfffffadf9ee96200
State = DeviceNodeUninitialized (0x301)
Previous State = Unknown State (0x0)
DevNode 0xfffffadf9e1bdc70 for PDO 0xfffffadf9ee97dc0
State = DeviceNodeUninitialized (0x301)
Previous State = Unknown State (0x0)
DevNode 0xfffffadf9e1bdaa0 for PDO 0xfffffadf9ee97bc0
State = DeviceNodeUninitialized (0x301)
Previous State = Unknown State (0x0)
DevNode 0xfffffadf9e1bd8d0 for PDO 0xfffffadf9ee979c0
State = DeviceNodeUninitialized (0x301)
Previous State = Unknown State (0x0)
DevNode 0xfffffadf9e1bd700 for PDO 0xfffffadf9ee977c0
State = DeviceNodeUninitialized (0x301)
Previous State = Unknown State (0x0)
DevNode 0xfffffadf9e1bd530 for PDO 0xfffffadf9ee975c0
State = DeviceNodeUninitialized (0x301)
Previous State = Unknown State (0x0)
DevNode 0xfffffadf9ebd9720 for PDO 0xfffffadf9ebd9940
InstancePath is "Root\dmio\0000"
ServiceName is "dmio"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9ebd9550 for PDO 0xfffffadf9eeb2060
InstancePath is "Root\ftdisk\0000"
ServiceName is "ftdisk"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9eeb2be0 for PDO 0xfffffadf9eeb2e00
InstancePath is "Root\LEGACY_AFD\0000"
ServiceName is "AFD"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9eeb2800 for PDO 0xfffffadf9eeb2a20
InstancePath is "Root\LEGACY_AMPA\0000"
ServiceName is "ampa"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9eeb2420 for PDO 0xfffffadf9eeb2640
InstancePath is "Root\LEGACY_BEEP\0000"
ServiceName is "Beep"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9eeb2250 for PDO 0xfffffadf9ebd8060
InstancePath is "Root\LEGACY_CDAC15BA\0000"
ServiceName is "CdaC15BA"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9ebd8c30 for PDO 0xfffffadf9ebd8e50
InstancePath is "Root\LEGACY_CDAD10BA\0000"
ServiceName is "CdaD10BA"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9ebd8750 for PDO 0xfffffadf9ebd8970
InstancePath is "Root\LEGACY_CRCDISK\0000"
ServiceName is "crcdisk"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9ebd8370 for PDO 0xfffffadf9ebd8590
InstancePath is "Root\LEGACY_DMBOOT\0000"
ServiceName is "dmboot"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9eeb1e40 for PDO 0xfffffadf9eeb1060
InstancePath is "Root\LEGACY_DMLOAD\0000"
ServiceName is "dmload"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9eeb1a60 for PDO 0xfffffadf9eeb1c80
InstancePath is "Root\LEGACY_FIPS\0000"
ServiceName is "Fips"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9eeb1680 for PDO 0xfffffadf9eeb18a0
InstancePath is "Root\LEGACY_GPC\0000"
ServiceName is "Gpc"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9eeb12a0 for PDO 0xfffffadf9eeb14c0
InstancePath is "Root\LEGACY_HTTP\0000"
ServiceName is "HTTP"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9ebd7e40 for PDO 0xfffffadf9ebd7060
InstancePath is "Root\LEGACY_IPNAT\0000"
ServiceName is "IpNat"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9ebd7a60 for PDO 0xfffffadf9ebd7c80
InstancePath is "Root\LEGACY_IPSEC\0000"
ServiceName is "IPSec"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9ebd7680 for PDO 0xfffffadf9ebd78a0
InstancePath is "Root\LEGACY_KSECDD\0000"
ServiceName is "ksecdd"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9ebd72a0 for PDO 0xfffffadf9ebd74c0
InstancePath is "Root\LEGACY_MNMDD\0000"
ServiceName is "mnmdd"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9eeb0e40 for PDO 0xfffffadf9eeb0060
InstancePath is "Root\LEGACY_MOUNTMGR\0000"
ServiceName is "mountmgr"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9eeb0a60 for PDO 0xfffffadf9eeb0c80
InstancePath is "Root\LEGACY_NDIS\0000"
ServiceName is "NDIS"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9eeb0680 for PDO 0xfffffadf9eeb08a0
InstancePath is "Root\LEGACY_NDISTAPI\0000"
ServiceName is "NdisTapi"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9eeb02a0 for PDO 0xfffffadf9eeb04c0
InstancePath is "Root\LEGACY_NDISUIO\0000"
ServiceName is "Ndisuio"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9ebd6e40 for PDO 0xfffffadf9ebd6060
InstancePath is "Root\LEGACY_NDPROXY\0000"
ServiceName is "NDProxy"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9ebd6a60 for PDO 0xfffffadf9ebd6c80
InstancePath is "Root\LEGACY_NETBT\0000"
ServiceName is "NetBT"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9ebd6680 for PDO 0xfffffadf9ebd68a0
InstancePath is "Root\LEGACY_NULL\0000"
ServiceName is "Null"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9ebd62a0 for PDO 0xfffffadf9ebd64c0
InstancePath is "Root\LEGACY_PARTMGR\0000"
ServiceName is "PartMgr"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9eeafe40 for PDO 0xfffffadf9eeaf060
InstancePath is "Root\LEGACY_RASACD\0000"
ServiceName is "RasAcd"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9eeafa60 for PDO 0xfffffadf9eeafc80
InstancePath is "Root\LEGACY_RDPCDD\0000"
ServiceName is "RDPCDD"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9eeaf680 for PDO 0xfffffadf9eeaf8a0
InstancePath is "Root\LEGACY_SECDRV\0000"
ServiceName is "Secdrv"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9eeaf2a0 for PDO 0xfffffadf9eeaf4c0
InstancePath is "Root\LEGACY_TCPIP\0000"
ServiceName is "Tcpip"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9ebd5e40 for PDO 0xfffffadf9ebd5060
InstancePath is "Root\LEGACY_VGASAVE\0000"
ServiceName is "VgaSave"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9ebd5a60 for PDO 0xfffffadf9ebd5c80
InstancePath is "Root\LEGACY_VOLSNAP\0000"
ServiceName is "VolSnap"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9ebd5680 for PDO 0xfffffadf9ebd58a0
InstancePath is "Root\LEGACY_WANARP\0000"
ServiceName is "Wanarp"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9ebd52a0 for PDO 0xfffffadf9ebd54c0
InstancePath is "Root\MEDIA\MS_MMACM"
ServiceName is "audstub"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9eeaee40 for PDO 0xfffffadf9eeae060
InstancePath is "Root\MEDIA\MS_MMDRV"
ServiceName is "audstub"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9eeaea60 for PDO 0xfffffadf9eeaec80
InstancePath is "Root\MEDIA\MS_MMMCI"
ServiceName is "audstub"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9eeae680 for PDO 0xfffffadf9eeae8a0
InstancePath is "Root\MEDIA\MS_MMVCD"
ServiceName is "audstub"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9eeae2a0 for PDO 0xfffffadf9eeae4c0
InstancePath is "Root\MEDIA\MS_MMVID"
ServiceName is "audstub"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9ebd4e40 for PDO 0xfffffadf9ebd4060
InstancePath is "Root\MS_L2TPMINIPORT\0000"
ServiceName is "Rasl2tp"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9ebd4a60 for PDO 0xfffffadf9ebd4c80
InstancePath is "Root\MS_NDISWANIP\0000"
ServiceName is "NdisWan"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9ebd4680 for PDO 0xfffffadf9ebd48a0
InstancePath is "Root\MS_PPPOEMINIPORT\0000"
ServiceName is "RasPppoe"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9ebd42a0 for PDO 0xfffffadf9ebd44c0
InstancePath is "Root\MS_PPTPMINIPORT\0000"
ServiceName is "PptpMiniport"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9eeade40 for PDO 0xfffffadf9eead060
InstancePath is "Root\MS_PSCHEDMP\0000"
ServiceName is "PSched"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9eeada60 for PDO 0xfffffadf9eeadc80
InstancePath is "Root\MS_PSCHEDMP\0001"
ServiceName is "PSched"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9eead680 for PDO 0xfffffadf9eead8a0
InstancePath is "Root\MS_PTIMINIPORT\0000"
ServiceName is "Raspti"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9eead2a0 for PDO 0xfffffadf9eead4c0
InstancePath is "Root\RDPDR\0000"
ServiceName is "rdpdr"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9ebd3e40 for PDO 0xfffffadf9ebd3060
InstancePath is "Root\RDP_KBD\0000"
ServiceName is "TermDD"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9ebd3a60 for PDO 0xfffffadf9ebd3c80
InstancePath is "Root\RDP_MOU\0000"
ServiceName is "TermDD"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9ebd3680 for PDO 0xfffffadf9ebd38a0
InstancePath is "Root\SYSTEM\0000"
ServiceName is "swenum"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9ebd32a0 for PDO 0xfffffadf9ebd34c0
InstancePath is "Root\SYSTEM\0001"
ServiceName is "update"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9eeace40 for PDO 0xfffffadf9eeac060
InstancePath is "Root\SYSTEM\0002"
ServiceName is "mssmbios"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)

#2201 diderius6 ⇗ @daniel_k

and here with DEBUG Ntoskrnl.exe and Hal.dll
5048 acpi_test1.sys from yesterday (first from 3).

It is identic to post before
Dietmar
#2202 diderius6 ⇗ @daniel_k
Yessssssssssssssssssssaaaaaaaaaaaaaaaaaaaaa we got it!!!!!!!!!!!!!!!!!!!!!!!!

Dietmar



diderius6 has attached files to this post
#2203 kukonosau
Zitat von ⇗ diderius6 im Beitrag ¶ #2202
@daniel_k
Yessssssssssssssssssssaaaaaaaaaaaaaaaaaaaaaaaa we got it!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

Dietmar

T tell me about ACPI and hal.dll, please. How to start Windows XP x64 with modify ACPI and hal.dll? Where is two files modify?
#2204 kukonosau
Zitat von ⇗ diderius6 im Beitrag ¶ #2202
@daniel_k
Yessssssssssssssssssssaaaaaaaaaaaaaaaaaaaaa we got it!!!!!!!!!!!!!!!!!!!!!!!!

Dietmar

Jh, sorry, I am not to see file! I refreshed pages! I will check this file now.
#2205 infuscomus ⇗ @diderius6

I am curious to know -

what was the problem?
where was the fix needed?

 

Page 148

#2206 kukonosau BSOD 0A(((
#2207 diderius6 ⇗ @infuscomus

The problem was, that only one of the 3 STORAHCI devices on the asrock fatal1ty ab350 gaming k4 board was recogniced.
I noticed this strange behavior because of different BSODs with HD in different SATA slots yesterday.
After this I installed STORAHCI from ⇗ @skullteria via hand in registry of XP 64 again before each new try.
The endless loop is gone.
Here is the output from Windbg with DEBUG ntoskrnl.exe and Hal.dll

Dietmar

PS: The only difference between first acpi.sys 5048 from yesterday and from working is

18C97: 00  => 17

Microsoft (R) Windows Debugger Version 6.12.0002.633 X86
Copyright (c) Microsoft Corporation. All rights reserved.

Opened \\.\com1
Waiting to reconnect...
Connected to Windows Server 2003 3790 x64 target at (Sun Sep 1 14:42:44.468 2019 (UTC + 2:00)), ptr64 TRUE
Kernel Debugger connection established.
WARNING: Inaccessible path: 'C:\WinDDK\7600.16385.1\src\openfabricsall\nvme13\nvme\objchk_wnet_x86\i386'
Symbol search path is: C:\WinDDK\7600.16385.1\src\openfabricsall\nvme13\nvme\objchk_wnet_x86\i386;SRV*c:\symbols
*⇗ http://msdl.microsoft.com/download/symbols;C:\symbols
Executable search path is: C:\localsymbols
Windows Server 2003 Kernel Version 3790 MP (1 procs) Checked x64
Built by: 3790.srv03_sp2_rtm.070216-1710
Machine Name:
Kernel base = 0xfffff800`01000000 PsLoadedModuleList = 0xfffff800`013d1fd0
System Uptime: not available
AhciHwFindAdapter finishing
AhciHwFindAdapter finishing
AhciHwFindAdapter finishing
KDTARGET: Refreshing KD connection
HAL: RTC interrupt flag is not cleared by first read.
RTC Status Register C = 0xc0
HAL: RTC interrupt flag is not cleared by first read.
RTC Status Register C = 0xc0

HAL: RTC interrupt flag is not cleared by first read.
RTC Status Register C = 0xd0
Port lock was not acquired!
AFD: AfdPprThreshold value queried from transport: 2960
ERROR: DavReadRegistryValues/RegQueryValueExW(6). WStatus = 1309
HAL: RTC interrupt flag is not cleared by first read.
RTC Status Register C = 0xc0
PipCallDriverAddDevice: Unable to reference driver \Driver\amdxhc (c000026c)
PipCallDriverAddDevice: Unable to reference driver \Driver\amdxhc (c000026c)
PipCallDriverAddDevice: Unable to reference driver \Driver\amdxhc (c000026c)
PipCallDriverAddDevice: Unable to reference driver \Driver\amdxhc (c000026c)
PipCallDriverAddDevice: Unable to reference driver \Driver\amdxhc (c000026c)
PipCallDriverAddDevice: Unable to reference driver \Driver\amdxhc (c000026c)
AhciHwFindAdapter finishing
AhciHwFindAdapter finishing
LPC[ 380.8a4 ]: Refusing connection from 380.3cc
Port lock was not acquired!
LPC[ 934.944 ]: Refusing connection from 934.938
Break instruction exception - code 80000003 (first chance)
*******************************************************************************
* *
* You are seeing this message because you pressed either *
* CTRL+C (if you run kd.exe) or, *
* CTRL+BREAK (if you run WinDBG), *
* on your debugger machine's keyboard. *
* *
* THIS IS NOT A BUG OR A SYSTEM CRASH *
* *
* If you did not intend to break into the debugger, press the "g" key, then *
* press the "Enter" key now. This message might immediately reappear. If it *
* does, press "g" and "Enter" again. *
* *
*******************************************************************************
nt!RtlpBreakWithStatusInstruction:
fffff800`011a02e0 cc int 3

4: kd> !devnode 0 1
Dumping IopRootDeviceNode (= 0xfffffadf9e3338e0)
DevNode 0xfffffadf9e3338e0 for PDO 0xfffffadf9e336d30
InstancePath is "HTREE\ROOT\0"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e058c10 for PDO 0xfffffadf9e058e50
InstancePath is "Root\ACPI_HAL\0000"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e32cc10 for PDO 0xfffffadf9e32c820
InstancePath is "ACPI_HAL\PNP0C08\0"
ServiceName is "ACPI"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e31ce30 for PDO 0xfffffadf9e050620
InstancePath is "ACPI\PNP0C14\AWW"
ServiceName is "WmiAcpi"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9f1e5180 for PDO 0xfffffadf9f1e08e0
InstancePath is "ACPI\PNP0A08\0"
ServiceName is "pci"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9dd11a10 for PDO 0xfffffadf9df03950
InstancePath is "PCI\VEN_1022&DEV_1450&SUBSYS_00000000&REV_00\3&11583659&0&00"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9dd11830 for PDO 0xfffffadf9df03620
InstancePath is "PCI\VEN_1022&DEV_1451&SUBSYS_87471043&REV_00\3&11583659&0&02"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_FAILED_INSTALL
DevNode 0xfffffadf9dd11650 for PDO 0xfffffadf9df1d070
InstancePath is "PCI\VEN_1022&DEV_1452&SUBSYS_00000000&REV_00\3&11583659&0&08"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9dd11470 for PDO 0xfffffadf9df1dd40
InstancePath is "PCI\VEN_1022&DEV_1453&SUBSYS_00000000&REV_00\3&11583659&0&0A"
ServiceName is "pci"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9df01010 for PDO 0xfffffadf9f1d9720
InstancePath is "PCI\VEN_1022&DEV_57AD&SUBSYS_00000000&REV_00\4&d487977&0&000A"
ServiceName is "pci"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9df1be30 for PDO 0xfffffadf9df01a30
InstancePath is "PCI\VEN_1022&DEV_57A3&SUBSYS_00000000&REV_00\5&1f331b67&0&28000A"
ServiceName is "pci"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e317e30 for PDO 0xfffffadf9dc51720
InstancePath is "PCI\VEN_8086&DEV_1539&SUBSYS_85F01043&REV_03\6&12f3bd8&0&0028000A"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_FAILED_INSTALL
DevNode 0xfffffadf9df1bc50 for PDO 0xfffffadf9df01580
InstancePath is "PCI\VEN_1022&DEV_57A4&SUBSYS_00000000&REV_00\5&1f331b67&0&40000A"
ServiceName is "pci"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9dc542e0 for PDO 0xfffffadf9f1db420
InstancePath is "PCI\VEN_1022&DEV_1485&SUBSYS_87471043&REV_00\6&28ecf81d&0&0040000A"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0xfffffadf9e317930 for PDO 0xfffffadf9df03d40
InstancePath is "PCI\VEN_1022&DEV_149C&SUBSYS_87471043&REV_00\6&28ecf81d&0&0140000A"
ServiceName is "amdxhc"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_DRIVER_FAILED_LOAD
DevNode 0xfffffadf9e317750 for PDO 0xfffffadf9df1b070
InstancePath is "PCI\VEN_1022&DEV_149C&SUBSYS_148C1022&REV_00\6&28ecf81d&0&0340000A"
ServiceName is "amdxhc"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_DRIVER_FAILED_LOAD
DevNode 0xfffffadf9df1ba70 for PDO 0xfffffadf9dd10070
InstancePath is "PCI\VEN_1022&DEV_57A4&SUBSYS_00000000&REV_00\5&1f331b67&0&48000A"
ServiceName is "pci"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e317250 for PDO 0xfffffadf9f1d8d40
InstancePath is "PCI\VEN_1022&DEV_7901&SUBSYS_79011022&REV_51\6&39625884&0&0048000A"
ServiceName is "storahci"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9df1b890 for PDO 0xfffffadf9dd10d40
InstancePath is "PCI\VEN_1022&DEV_57A4&SUBSYS_00000000&REV_00\5&1f331b67&0&50000A"
ServiceName is "pci"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9f1d8650 for PDO 0xfffffadf9f1d8a10
InstancePath is "PCI\VEN_1022&DEV_7901&SUBSYS_79011022&REV_51\6&15d2f925&0&0050000A"
ServiceName is "storahci"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9deffe30 for PDO 0xfffffadf9daa3070
InstancePath is "SCSI\Disk&Ven_WDC&Prod_WD2003FZEX-00SRL&Rev_01.0\7&85444d0&0&000000"
ServiceName is "disk"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9dd11290 for PDO 0xfffffadf9df1da10
InstancePath is "PCI\VEN_1022&DEV_1452&SUBSYS_00000000&REV_00\3&11583659&0&10"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9df1c010 for PDO 0xfffffadf9df1d6e0
InstancePath is "PCI\VEN_1022&DEV_1452&SUBSYS_00000000&REV_00\3&11583659&0&18"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9df1ce30 for PDO 0xfffffadf9df1d3b0
InstancePath is "PCI\VEN_1022&DEV_1453&SUBSYS_00000000&REV_00\3&11583659&0&19"
ServiceName is "pci"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9df008f0 for PDO 0xfffffadf9df00070
InstancePath is "PCI\VEN_10DE&DEV_1287&SUBSYS_730B19DA&REV_A1\4&2c517c28&0&0019"
ServiceName is "vga"
State = DeviceNodeRemoved (0x312)
Previous State = DeviceNodeStartCompletion (0x306)
Problem = CM_PROB_FAILED_START
Failure Status 0000000000


DevNode 0xfffffadf9df00710 for PDO 0xfffffadf9df00d40
InstancePath is "PCI\VEN_10DE&DEV_0E0F&SUBSYS_730B19DA&REV_A1\4&2c517c28&0&0119"
ServiceName is "HDAudBus"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9d76be30 for PDO 0xfffffadf9cdd7850
InstancePath is "HDAUDIO\FUNC_01&VEN_10DE&DEV_0051&SUBSYS_19DA730B&REV_1001\5&2e590a66&0&0001"
ServiceName is "NVHDA"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9df1cc50 for PDO 0xfffffadf9dc53070
InstancePath is "PCI\VEN_1022&DEV_1452&SUBSYS_00000000&REV_00\3&11583659&0&20"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9df1ca70 for PDO 0xfffffadf9dc53d40
InstancePath is "PCI\VEN_1022&DEV_1452&SUBSYS_00000000&REV_00\3&11583659&0&38"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9df1c890 for PDO 0xfffffadf9dc53a10
InstancePath is "PCI\VEN_1022&DEV_1454&SUBSYS_00000000&REV_00\3&11583659&0&39"
ServiceName is "pci"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9dd0f230 for PDO 0xfffffadf9df00440
InstancePath is "PCI\VEN_1022&DEV_145A&SUBSYS_87471043&REV_00\4&323ac8bb&0&0039"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_FAILED_INSTALL
DevNode 0xfffffadf9df1a010 for PDO 0xfffffadf9dd0fd40
InstancePath is "PCI\VEN_1022&DEV_1456&SUBSYS_87471043&REV_00\4&323ac8bb&0&0239"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_FAILED_INSTALL
DevNode 0xfffffadf9df1ae30 for PDO 0xfffffadf9dd0fa10
InstancePath is "PCI\VEN_1022&DEV_145C&SUBSYS_87471043&REV_00\4&323ac8bb&0&0339"
ServiceName is "amdxhc"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_DRIVER_FAILED_LOAD
DevNode 0xfffffadf9df1ac50 for PDO 0xfffffadf9dd0f680
InstancePath is "ACPI\PNP0C02\4&323ac8bb&0"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9df1c6b0 for PDO 0xfffffadf9dc536e0
InstancePath is "PCI\VEN_1022&DEV_1452&SUBSYS_00000000&REV_00\3&11583659&0&40"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9df1c4d0 for PDO 0xfffffadf9dc533b0
InstancePath is "PCI\VEN_1022&DEV_1454&SUBSYS_00000000&REV_00\3&11583659&0&41"
ServiceName is "pci"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9dc50a10 for PDO 0xfffffadf9df1a980
InstancePath is "PCI\VEN_1022&DEV_1455&SUBSYS_87471043&REV_00\4&3786a086&0&0041"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_FAILED_INSTALL
DevNode 0xfffffadf9dc50830 for PDO 0xfffffadf9df1a4d0
InstancePath is "PCI\VEN_1022&DEV_7901&SUBSYS_87471043&REV_51\4&3786a086&0&0241"
ServiceName is "storahci"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9dc50650 for PDO 0xfffffadf9dc50070
InstancePath is "PCI\VEN_1022&DEV_1457&SUBSYS_87331043&REV_00\4&3786a086&0&0341"
ServiceName is "HDAudBus"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9d943e30 for PDO 0xfffffadf9d8c3c60
InstancePath is "HDAUDIO\FUNC_01&VEN_10EC&DEV_1168&SUBSYS_10438733&REV_1001\5&1bd841a1&0&0001"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_FAILED_INSTALL
DevNode 0xfffffadf9df1c2f0 for PDO 0xfffffadf9e319070
InstancePath is "PCI\VEN_1022&DEV_790B&SUBSYS_87471043&REV_59\3&11583659&0&A0"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_FAILED_INSTALL
DevNode 0xfffffadf9dc52010 for PDO 0xfffffadf9e319d40
InstancePath is "PCI\VEN_1022&DEV_790E&SUBSYS_00000000&REV_51\3&11583659&0&A3"
ServiceName is "isapnp"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e315c20 for PDO 0xfffffadf9e316e60
InstancePath is "ACPI\PNP0000\4&28d859f2&0"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9e315a40 for PDO 0xfffffadf9e316c50
InstancePath is "ACPI\PNP0200\4&28d859f2&0"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9e315860 for PDO 0xfffffadf9e316a40
InstancePath is "ACPI\PNP0100\4&28d859f2&0"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9e315680 for PDO 0xfffffadf9e316830
InstancePath is "ACPI\PNP0B00\4&28d859f2&0"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e3154a0 for PDO 0xfffffadf9e316620
InstancePath is "ACPI\PNP0800\4&28d859f2&0"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9e3152c0 for PDO 0xfffffadf9e316410
InstancePath is "ACPI\PNP0C02\0"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9e314010 for PDO 0xfffffadf9e315070
InstancePath is "ACPI\PNP0303\0"
ServiceName is "i8042prt"
TargetDeviceNotify List - f 0xfffffa80006b89b0 b 0xfffffa80006b89b0
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e314e30 for PDO 0xfffffadf9e315e60
InstancePath is "ACPI\PNP0C09\4&28d859f2&0"
ServiceName is "ACPIEC"
State = DeviceNodeRemoved (0x312)
Previous State = DeviceNodeStartCompletion (0x306)
Problem = CM_PROB_FAILED_START
Failure Status 0000000000


DevNode 0xfffffadf9dc52e30 for PDO 0xfffffadf9e319a10
InstancePath is "PCI\VEN_1022&DEV_1460&SUBSYS_00000000&REV_00\3&11583659&0&C0"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9dc52c50 for PDO 0xfffffadf9e3196e0
InstancePath is "PCI\VEN_1022&DEV_1461&SUBSYS_00000000&REV_00\3&11583659&0&C1"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9dc52a70 for PDO 0xfffffadf9e3193b0
InstancePath is "PCI\VEN_1022&DEV_1462&SUBSYS_00000000&REV_00\3&11583659&0&C2"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9dc52890 for PDO 0xfffffadf9f1da070
InstancePath is "PCI\VEN_1022&DEV_1463&SUBSYS_00000000&REV_00\3&11583659&0&C3"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9dc526b0 for PDO 0xfffffadf9f1dad40
InstancePath is "PCI\VEN_1022&DEV_1464&SUBSYS_00000000&REV_00\3&11583659&0&C4"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9dc524d0 for PDO 0xfffffadf9f1daa10
InstancePath is "PCI\VEN_1022&DEV_1465&SUBSYS_00000000&REV_00\3&11583659&0&C5"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9dc522f0 for PDO 0xfffffadf9f1da6e0
InstancePath is "PCI\VEN_1022&DEV_1466&SUBSYS_00000000&REV_00\3&11583659&0&C6"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e318010 for PDO 0xfffffadf9f1da3b0
InstancePath is "PCI\VEN_1022&DEV_1467&SUBSYS_00000000&REV_00\3&11583659&0&C7"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e318e30 for PDO 0xfffffadf9f1dbaa0
InstancePath is "ACPI\PNP0C01\c8"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9e318c50 for PDO 0xfffffadf9df03410
InstancePath is "ACPI\PNP0C02\15"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9e318a70 for PDO 0xfffffadf9df02070
InstancePath is "ACPI\PNP0C02\700"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9e318890 for PDO 0xfffffadf9df02e60
InstancePath is "ACPI\PNP0C14\MXM2"
ServiceName is "WmiAcpi"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9df08130 for PDO 0xfffffadf9f1e2360
InstancePath is "ACPI\PNP0C0C\aa"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9df04c20 for PDO 0xfffffadf9f1dd360
InstancePath is "ACPI\PNP0103\2&daba3ff&0"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9df04a40 for PDO 0xfffffadf9e333ba0
InstancePath is "ACPI\AMDI0030\0"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_FAILED_INSTALL
DevNode 0xfffffadf9df04860 for PDO 0xfffffadf9df07420
InstancePath is "ACPI\PNP0C14\ASUSWMI"
ServiceName is "WmiAcpi"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9df04680 for PDO 0xfffffadf9f1dea40
InstancePath is "ACPI\FixedButton\2&daba3ff&0"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9df044a0 for PDO 0xfffffadf9f1de830
InstancePath is "ACPI\AuthenticAMD_-_AMD64_Family_23_Model_1\_0"
ServiceName is "Processor"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9df042c0 for PDO 0xfffffadf9f1de620
InstancePath is "ACPI\AuthenticAMD_-_AMD64_Family_23_Model_1\_1"
ServiceName is "Processor"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9dd14010 for PDO 0xfffffadf9f1de410
InstancePath is "ACPI\AuthenticAMD_-_AMD64_Family_23_Model_1\_2"
ServiceName is "Processor"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9dd14e30 for PDO 0xfffffadf9e31b070
InstancePath is "ACPI\AuthenticAMD_-_AMD64_Family_23_Model_1\_3"
ServiceName is "Processor"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9dd14c50 for PDO 0xfffffadf9e31be60
InstancePath is "ACPI\AuthenticAMD_-_AMD64_Family_23_Model_1\_4"
ServiceName is "Processor"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9dd14a70 for PDO 0xfffffadf9e31bc50
InstancePath is "ACPI\AuthenticAMD_-_AMD64_Family_23_Model_1\_5"
ServiceName is "Processor"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9dd14890 for PDO 0xfffffadf9e31ba40
InstancePath is "ACPI\AuthenticAMD_-_AMD64_Family_23_Model_1\_6"
ServiceName is "Processor"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9dd146b0 for PDO 0xfffffadf9e31b830
InstancePath is "ACPI\AuthenticAMD_-_AMD64_Family_23_Model_1\_7"
ServiceName is "Processor"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9dd144d0 for PDO 0xfffffadf9e31b620
InstancePath is "ACPI\AuthenticAMD_-_AMD64_Family_23_Model_1\_8"
ServiceName is "Processor"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9dd142f0 for PDO 0xfffffadf9e31b410
InstancePath is "ACPI\AuthenticAMD_-_AMD64_Family_23_Model_1\_9"
ServiceName is "Processor"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9df1e010 for PDO 0xfffffadf9f1dc070
InstancePath is "ACPI\AuthenticAMD_-_AMD64_Family_23_Model_1\10"
ServiceName is "Processor"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9df1ee30 for PDO 0xfffffadf9f1dce60
InstancePath is "ACPI\AuthenticAMD_-_AMD64_Family_23_Model_1\11"
ServiceName is "Processor"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9df1ec50 for PDO 0xfffffadf9f1dcc50
InstancePath is "ACPI\AuthenticAMD_-_AMD64_Family_23_Model_1\12"
ServiceName is "Processor"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9df1ea70 for PDO 0xfffffadf9f1dca40
InstancePath is "ACPI\AuthenticAMD_-_AMD64_Family_23_Model_1\13"
ServiceName is "Processor"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9df1e890 for PDO 0xfffffadf9f1dc830
InstancePath is "ACPI\AuthenticAMD_-_AMD64_Family_23_Model_1\14"
ServiceName is "Processor"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9df1e6b0 for PDO 0xfffffadf9f1dc620
InstancePath is "ACPI\AuthenticAMD_-_AMD64_Family_23_Model_1\15"
ServiceName is "Processor"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9df1e4d0 for PDO 0xfffffadf9f1dc410
InstancePath is "ACPI\PNP0C02\90"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9df1e2f0 for PDO 0xfffffadf9df04070
InstancePath is "ACPI\PNP0C02\91"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadf9dc54010 for PDO 0xfffffadf9df04e60
InstancePath is "ACPI\PNP0C14\AOD"
ServiceName is "WmiAcpi"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e0586e0 for PDO 0xfffffadf9e058920
InstancePath is "Root\dmio\0000"
ServiceName is "dmio"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e0582e0 for PDO 0xfffffadf9e058520
InstancePath is "Root\ftdisk\0000"
ServiceName is "ftdisk"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e3142d0 for PDO 0xfffffadf9d2c7860
InstancePath is "STORAGE\Volume\1&30a96598&0&Signature646587B9Offset100000Length1D1C04C7E00"
ServiceName is "volsnap"
TargetDeviceNotify List - f 0xfffffa80004899b0 b 0xfffffa8000af05a0
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e332e30 for PDO 0xfffffadf9e332070
InstancePath is "Root\LEGACY_AFD\0000"
ServiceName is "AFD"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e332a30 for PDO 0xfffffadf9e332c70
InstancePath is "Root\LEGACY_AMPA\0000"
ServiceName is "ampa"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e332630 for PDO 0xfffffadf9e332870
InstancePath is "Root\LEGACY_BEEP\0000"
ServiceName is "Beep"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e332230 for PDO 0xfffffadf9e332470
InstancePath is "Root\LEGACY_CDAC15BA\0000"
ServiceName is "CdaC15BA"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e057e30 for PDO 0xfffffadf9e057070
InstancePath is "Root\LEGACY_CDAD10BA\0000"
ServiceName is "CdaD10BA"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e057a30 for PDO 0xfffffadf9e057c70
InstancePath is "Root\LEGACY_CRCDISK\0000"
ServiceName is "crcdisk"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e057630 for PDO 0xfffffadf9e057870
InstancePath is "Root\LEGACY_DMBOOT\0000"
ServiceName is "dmboot"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e057230 for PDO 0xfffffadf9e057470
InstancePath is "Root\LEGACY_DMLOAD\0000"
ServiceName is "dmload"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e331e30 for PDO 0xfffffadf9e331070
InstancePath is "Root\LEGACY_FIPS\0000"
ServiceName is "Fips"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e331a30 for PDO 0xfffffadf9e331c70
InstancePath is "Root\LEGACY_GPC\0000"
ServiceName is "Gpc"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e331630 for PDO 0xfffffadf9e331870
InstancePath is "Root\LEGACY_HTTP\0000"
ServiceName is "HTTP"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e331230 for PDO 0xfffffadf9e331470
InstancePath is "Root\LEGACY_IPNAT\0000"
ServiceName is "IpNat"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e056e30 for PDO 0xfffffadf9e056070
InstancePath is "Root\LEGACY_IPSEC\0000"
ServiceName is "IPSec"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e056a30 for PDO 0xfffffadf9e056c70
InstancePath is "Root\LEGACY_KSECDD\0000"
ServiceName is "ksecdd"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e056630 for PDO 0xfffffadf9e056870
InstancePath is "Root\LEGACY_MNMDD\0000"
ServiceName is "mnmdd"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e056230 for PDO 0xfffffadf9e056470
InstancePath is "Root\LEGACY_MOUNTMGR\0000"
ServiceName is "mountmgr"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e330e30 for PDO 0xfffffadf9e330070
InstancePath is "Root\LEGACY_NDIS\0000"
ServiceName is "NDIS"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e330a30 for PDO 0xfffffadf9e330c70
InstancePath is "Root\LEGACY_NDISTAPI\0000"
ServiceName is "NdisTapi"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e330630 for PDO 0xfffffadf9e330870
InstancePath is "Root\LEGACY_NDISUIO\0000"
ServiceName is "Ndisuio"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e330230 for PDO 0xfffffadf9e330470
InstancePath is "Root\LEGACY_NDPROXY\0000"
ServiceName is "NDProxy"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e055e30 for PDO 0xfffffadf9e055070
InstancePath is "Root\LEGACY_NETBT\0000"
ServiceName is "NetBT"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e055a30 for PDO 0xfffffadf9e055c70
InstancePath is "Root\LEGACY_NULL\0000"
ServiceName is "Null"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e055630 for PDO 0xfffffadf9e055870
InstancePath is "Root\LEGACY_PARTMGR\0000"
ServiceName is "PartMgr"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e055230 for PDO 0xfffffadf9e055470
InstancePath is "Root\LEGACY_RASACD\0000"
ServiceName is "RasAcd"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e32fe30 for PDO 0xfffffadf9e32f070
InstancePath is "Root\LEGACY_RDPCDD\0000"
ServiceName is "RDPCDD"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e32fa30 for PDO 0xfffffadf9e32fc70
InstancePath is "Root\LEGACY_SECDRV\0000"
ServiceName is "Secdrv"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e32f630 for PDO 0xfffffadf9e32f870
InstancePath is "Root\LEGACY_TCPIP\0000"
ServiceName is "Tcpip"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e32f230 for PDO 0xfffffadf9e32f470
InstancePath is "Root\LEGACY_VGASAVE\0000"
ServiceName is "VgaSave"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e054e30 for PDO 0xfffffadf9e054070
InstancePath is "Root\LEGACY_VOLSNAP\0000"
ServiceName is "VolSnap"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e054a30 for PDO 0xfffffadf9e054c70
InstancePath is "Root\LEGACY_WANARP\0000"
ServiceName is "Wanarp"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e054630 for PDO 0xfffffadf9e054870
InstancePath is "Root\MEDIA\MS_MMACM"
ServiceName is "audstub"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e054230 for PDO 0xfffffadf9e054470
InstancePath is "Root\MEDIA\MS_MMDRV"
ServiceName is "audstub"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e32ee30 for PDO 0xfffffadf9e32e070
InstancePath is "Root\MEDIA\MS_MMMCI"
ServiceName is "audstub"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e32ea30 for PDO 0xfffffadf9e32ec70
InstancePath is "Root\MEDIA\MS_MMVCD"
ServiceName is "audstub"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e32e630 for PDO 0xfffffadf9e32e870
InstancePath is "Root\MEDIA\MS_MMVID"
ServiceName is "audstub"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e32e230 for PDO 0xfffffadf9e32e470
InstancePath is "Root\MS_L2TPMINIPORT\0000"
ServiceName is "Rasl2tp"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e053e30 for PDO 0xfffffadf9e053070
InstancePath is "Root\MS_NDISWANIP\0000"
ServiceName is "NdisWan"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e053a30 for PDO 0xfffffadf9e053c70
InstancePath is "Root\MS_PPPOEMINIPORT\0000"
ServiceName is "RasPppoe"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e053630 for PDO 0xfffffadf9e053870
InstancePath is "Root\MS_PPTPMINIPORT\0000"
ServiceName is "PptpMiniport"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e053230 for PDO 0xfffffadf9e053470
InstancePath is "Root\MS_PSCHEDMP\0000"
ServiceName is "PSched"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e32de30 for PDO 0xfffffadf9e32d070
InstancePath is "Root\MS_PSCHEDMP\0001"
ServiceName is "PSched"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e32da30 for PDO 0xfffffadf9e32dc70
InstancePath is "Root\MS_PTIMINIPORT\0000"
ServiceName is "Raspti"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e32d630 for PDO 0xfffffadf9e32d870
InstancePath is "Root\RDPDR\0000"
ServiceName is "rdpdr"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e32d230 for PDO 0xfffffadf9e32d470
InstancePath is "Root\RDP_KBD\0000"
ServiceName is "TermDD"
TargetDeviceNotify List - f 0xfffffa80006a9730 b 0xfffffa80006a9730
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e052e30 for PDO 0xfffffadf9e052070
InstancePath is "Root\RDP_MOU\0000"
ServiceName is "TermDD"
TargetDeviceNotify List - f 0xfffffa80006d4d50 b 0xfffffa80006d4d50
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e052a30 for PDO 0xfffffadf9e052c70
InstancePath is "Root\SYSTEM\0000"
ServiceName is "swenum"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e052630 for PDO 0xfffffadf9e052870
InstancePath is "Root\SYSTEM\0001"
ServiceName is "update"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadf9e052230 for PDO 0xfffffadf9e052470
InstancePath is "Root\SYSTEM\0002"
ServiceName is "mssmbios"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)



#2208 daniel_k ⇗ @diderius6

The file on post 2202 works or it needs this patch?

 
18C97: 00 => 17



In the end, my assumption was correct and the behavior of x86 and x64 is the same.

Your working ACPI.SYS is the same as the test2 of this post:
¶ Windows XP SP3 32bit and modern PC parts (146)

#2209 diderius6 ⇗ @daniel_k

This is your ) patch 18C97: 00 => 17

I also think, because of the to 100% identic BSODS, that XP SP3 and XP 64 behave like the same.
But what was the important difference to the 5048 XP 64 acpi.sys from ⇗ @infuscomus ?
I know, that you integrate QwordConst and CreateQwordfield,
but this can be reached also via mod of DSDT.

So, something must be other than in mod of 5048 acpi.sys for XP SP3
Dietmar
#2210 sqpp So I have used the linked ⇗ @diderius6 's file acpiXP64Ryzen.rar in my 64 Bit Windows XP. I have used the guide of ⇗ @infuscomus in ⇗ Installing Windows XP on Newer Laptop (Coffee Lake S)

and apparently it still fails for me. Possibly maybe I do something wrong, but I don't think. Everything is done as he wrote to do. The new acpi.sys and acpi.sy_ is in the correct cab/directory.

Now after everything is going, it fails with the same BSOD A5 error like earlier.

Not sure if the patch would work on my i5-8350u processor though, as I said, I might do something incorrect.
#2211 daniel_k Please try test2 from
¶ Windows XP SP3 32bit and modern PC parts (146)

Just to confirm?
#2212 sqpp Will do now, it will take a few. Be right back :)
#2213 diderius6 ⇗ @daniel_k

I retested from this morning all your acpi.sys for XP 64 bit,
this time with checked (debug) version of hal.dll and ntoskrnl.
And I installed for each try the registry entries for the STORAHCI driver by hand new.
Yes, from 1 of three was your acpi_test2.sys 5048 version the one that
works
Dietmar
#2214 sqpp I am also not sure if my Sata drivers working correctly, since upon pressing the F6/F7 key, it mentions that I have no mass storage in the computer. I guess that's not a good sign?
#2215 daniel_k ⇗ @sqpp, sorry I was talking to diderius6

⇗ @diderius6, so we don't need to patch offset 18C97.
The code is exactly the same as @infuscomus.
#2216 infuscomus ⇗ @sqpp

If you have BSOD 7B when you press F7 then you do need to get a storage driver

you can try Fernando modded intel driver or otherwise there is a generic storahci driver to try
#2217 sqpp ⇗ @infuscomus

It asks me to press F6 actually for the Sata drivers. No F7 mentioned, just read that somewhere, but I don't get BSOD in case, just for the ACPI.

I am still not sure if I am using the right drivers.
#2218 infuscomus ⇗ @sqpp

try this driver - use nlite to integrate

¶ Windows XP SP3 32bit and modern PC parts (119)
#2219 daniel_k ⇗ @diderius6

Please try this later.

It's based on original XP SP2 3959 x64 for Ryzen only, supports QwordConst and CreateQwordField.

PS: Please confirm that we don't need to patch offset 18C97 of acpi_test2.sys, so we can declare it as the final version.
#2220 sqpp

This is what happens upon installing.

Then whatever I do. Soon after this, I got the ACPI BSOD

 

Page 149

#2221 infuscomus ⇗ @sqpp

try not pressing F6, but press F7 instead, what BSOD do you get then?
#2222 diderius6 ⇗ @daniel_k

This picture is based on the acpi.sys 5048 for XP 64 SP2 on Ryzen from post 2202

Dietmar

#2223 diderius6 ⇗ @daniel_k

The acpi.sys driver from post 2219 does not work,
it gives BSOD 0x7B,
even I update the registry entries by hand for the STORAHCI driver
2 times.
Until now, only the acpi.sys from post 2202
works for XP 64 SP2 and Ryzen
Dietmar
#2224 kukonosau ⇗ @diderius6
ACPI from post 2202 does not work, it gives different BSOD. Many restarting. Don't copy several files in our installation.
#2225 daniel_k ⇗ @diderius6, ⇗ @kukonosau

Thanks for trying.

So, to make things clear, here are the final versions of ACPI.SYS based on Vista beta 5048.

For Windows XP SP2 x64 and Server 2003 SP2 x64 use acpi5048_x64_intel_amd_final.rar

For Windows XP SP3 x86 and Server 2003 SP2 x86 use acpi5048_x86_intel_amd_final.rar

Supports:

- Intel Skylake, Coffee Lake and later
- AMD Ryzen

No BIOS modding required.

XHCI USB 3.0/3.1 driver for all Intel chipsets use AMDXHCI_XP_FINAL.rar for x86 and x64

PS: Updated with proper support for Z390 chipsets (including H370 and other 300 series).

 

 

daniel_k has attached files to this post
#2226 kukonosau Different BSOD((( I check ACPI with Asmedia 106X Controller and chipset controller.
#2227 sqpp Whats the best SATA driver for Coffee Lake based laptops for XP? Can't get any of them working :(
#2228 sqpp In my case 0x000000A5, 0x00000000000000003 (or something like that), 0xFFFFFADF40B4C9948,...

Not sure if that helps. Using the final version linked above
acpi5048_x64_intel_amd_final.rar
#2229 diderius6 ⇗ @skullteria

After debug of XP SP3 via Vista boot,
I see, that the problem was in the E820 list.

And voila, I am getting better,

here is the acpi.sys of XP SP3
which can  boot XP SP3 via BCD via Vista files with full ACPI support

Dietmar

EDIT: Yessa, I make the nail test, renaming ntldr to ntttldr, XP SP3 boots only using
files of Vista:)) and it is absolut stable with everything works on the nice Giga H110 board.



diderius6 has attached files to this post
#2230 skullteria
Zitat von ⇗ diderius6 im Beitrag ¶ #2229
@skullteria

After debug of XP SP3 via Vista boot,
I see, that the problem was in the E820 list.

And voila, I am getting better,

here is the acpi.sys of XP SP3
which can  boot XP SP3 via BCD via Vista files with full ACPI support

Dietmar

EDIT: Yessa, I make the nail test, renaming ntldr to ntttldr, XP SP3 boots only using
files of Vista:)) and it is absolut stable with everything works on the nice Giga H110 board.


Awasome! THank you so much! One only question: can you do it on acpi 5048 from danie_K and for x64?

EDIT: When i installed Intel HD Graphics, the system restart...No time to BSOD.
#2231 diderius6 ⇗ @skullteria

I will make some more tests.
About programming I have nearly no idea.
So I hope, that I get help for to put the most important parts
of acpi11.sys to the 5048 version.
But now we know, that it can be done,
have a nice day
Dietmar

PS: I am just writing this from this compi H110, XP SP3 booted via Vista files:))!
#2232 infuscomus ⇗ @diderius6

nice!

in CSM mode or UEFI mode?
#2233 infuscomus ⇗ @sqpp

there is a modded intel storage driver you can try and see if it works for you
¶ Windows XP SP3 32bit and modern PC parts (118)
⇗ @daniel_k made it
#2234 Gelip
Zitat von ⇗ diderius6 im Beitrag ¶ #1776
Here is the storahci driver,
which works really everywhere. I just give in the folder AMD64 its *.inf for 64 bit support.
AMD, Intel, 32 bit, 64 bit doesnt matter. Until now I do not find a board, where it does not work,
really generic.
Copy the newest version of storport.sys
to windows\system32\drivers and install. You can also make a txtsetup.oem
and integrate it to your XP installations CD. Dont forget storport.sys!
I tested it for XP 32 bit and XP 64 bit
Dietmar

EDIT: So much thank to @skullteria !

Where to download the storport.sys file because there is no one in the StorahciSkulltrailALL.rar archive?
#2235 sqpp
Zitat von ⇗ infuscomus im Beitrag ¶ #2233
@sqpp

there is a modded intel storage driver you can try and see if it works for you
¶ Windows XP SP3 32bit and modern PC parts (118)
@daniel_k made it


Thanks a ton, still I need to wait for the acpi fix

 

Page 150

#2236 infuscomus ⇗ @sqpp

can you upload your ACPI.SY_ and DRIVER.CAB ?

just want to double check for correct integration
#2237 sqpp ⇗ @infuscomus I would upload it here but .sy_ was not allowed filetype, so just used Mega.

⇗ acpi_sy_, driver.cab
#2238 infuscomus ⇗ @sqpp

looks to me like you integrated properly

what laptop did you have again?

⇗ @diderius6 ⇗ @daniel_k

we might have some additional ACPI BSODs to fix?
sqpp ran into a BSOD - post 2228
#2239 sqpp ⇗ @infuscomus Lenovo Thinkpad T480 (i5-8350u)
#2240 diderius6 ⇗ @sqpp

Please write here the complete BSOD A5 field
with all its other numbers.
We need this for a first check, what went wrong
Dietmar
#2241 sqpp ⇗ @diderius6

I was worried, I might type the numbers incorrectly, so just took a photo instead.

#2242 diderius6 ⇗ @Gelip

Here comes storport for XP SP3 32 and for XP64 bit,
as far as I know the last versions
Dietmar



diderius6 has attached files to this post
#2243 Andalu I'm still looking for a solution to get a full functionality of the USB3.0 ports for my CSM-Q87M-E43 board. Only using the "acpi5048_x86_intel_amd_final" and "AMDXHCI_XP_FINAL" is not enough. As diderius6 suggested, i need probably a DSDT table mod.

Keeping in mind my limited knowledge about bios modding, can someone suggest where to start in order to modify the DSDT table, please?
#2244 diderius6 ⇗ @sqpp

A5 (0x03


The ACPI object that was being run


The return value from the interpreter C0140010 (I have only seen in Vista until now, but I think it can be done a Hack)
STATUS_ACPI_INVALID_REGION. An invalid region for the target was specified.


The name of the control method (in ULONG format)

ACPI tried to run a control method while creating device extensions to represent the ACPI namespace, but this control method failed.

Dietmar
#2245 sqpp ⇗ @diderius6 Thats a bit difficult for me actually. So it some sort of unique problem?
#2246 diderius6 ⇗ @Andalu

It is an Intel USB3 device with the HC switch methode.
So I think, the device is just switched to USB2
but I dont know the place in Bios, where this happens
Dietmar

EDIT: Take a look in your Bios. Maybe there is something like "compatible" enabled for USB3, this means USB2.
⇗ https://superuser.com/questions/719079/u...el-usb-3-0-xhci
#2247 Gelip
Zitat von ⇗ diderius6 im Beitrag ¶ #2242
@Gelip

Here comes storport for XP SP3 32 and for XP64 bit,
as far as I know the last versions
Dietmar

The x64 version you have included is 5.2.3790.4173 but this is not the latest version. I found even newer files on ⇗ http://thehotfixshare.net

Probably this is latest: ⇗ WindowsServer2003.WindowsXP-KB957910-x64-ENU.exe - ver. 5.2.3790.4485 same as 32-bit version.
#2248 daniel_k ⇗ @diderius6

Does the NVIDIA GPU driver works?
#2249 daniel_k ⇗ @sqpp

Dump the DSDT table of your Thinkpad with this:
⇗ http://rweverything.com/

Click on ACPI Tables button, click on DSDT and save it as binary.

Then ZIP or RAR it and attach it for us.
#2250 sqpp ⇗ @daniel_k Here you go :)



sqpp has attached files to this post

 

Page 151

#2251 daniel_k ⇗ @sqpp

It's DSDT.
#2252 sqpp Yes, I have corrected it, uploaded the correct one. Excuse me for the mistake.
#2253 Andalu ⇗ @diderius6
I checked again the entire bios and no options like "usb compatible" or "switching usb" are present, only the classics "XHCI hand-off" and "EHCI hand-off" but enabling or disabling one or both of them has no effects. Maybe the msi bios doesn't work properly?

Really useful link, thanks. About it, my "PCI bus" device (id ACPI\PNP0A08\0) has not "iusb3hcs" value in "device lower filters" and effectively this .sys file is missing on my system. I tried to install the 32bit DPInst Set with Intel USB 3.0+3.1 Drivers v5.0.4.43 mod+signed by Fernando package containing "iusb3hcs.inf" but it clearly doesn't work even if the iusb3hcs.sys is copied to windows\system32\drivers folder.
#2254 diderius6 ⇗ @daniel_k

"Does the NVIDIA GPU driver works?"

Yesssssssssssss, I am just running 3Dmark2001 on it and the boottime is ultrafast,
about 2 sec to full desktop of XP SP3 compared with around
30 sec for booting XP via ntldr

Dietmar
#2255 daniel_k ⇗ @diderius6

What an achievement!

Please give us an step-by-step guide.
#2256 diderius6 ⇗ @daniel_k

The same I ask yesterday ⇗ @skullteria and he helped me a little.
I dont know, how far he is now,

Dietmar

PS: It is not ready. I do some more tests. I would be very happy,
when you can integrate some hacks into the acpi.sys 5048 version for XP SP3.
Which hacks are really needed, I try to find out today.
#2257 daniel_k ⇗ @diderius6, by guide I mean to setup the UEFI boot.

Which file system is needed? Or we just copy the .efi boot files to the NTFS XP boot partition and create an entry in boot loader?


About the hacks, just restore the bytes one by one and test if it still boots.
#2258 diderius6 ⇗ @daniel_k

"⇗ @diderius6, by guide I mean to setup the UEFI boot."

Until now, it is not UEFI boot.
I try UEFI boot, because the steps are nearly identic.

But we have to ask ⇗ @skullteria if he allows, that I
open all his files and his nice Tutorial
Dietmar
#2259 diderius6 From Wikipedia

BIOS
   Im Fall von BIOS liest dieses den MBR der Festplatte oder eines anderen Speichermediums ein und führt ihn aus. Durch den dort befindlichen Code wird dann der Bootsektor der als aktiv markierten Partition geladen und ausgeführt. Der Code aus dem Bootsektor einer Partition, auf der eine entsprechende Windows-Installation installiert wurde, ist nun fähig, die Datei bootmgr im Wurzelverzeichnis eines NTFS-Dateisystems zu finden und auszuführen. Das Programm bootmgr liest die Datei \Boot\BCD ein und zeigt ein Bootmenü zur Auswahl des zu startenden Betriebssystems an. Zudem überprüft der BOOTMGR die Disk-Signatur (Bytes 440443 im MBR) mit seinen gespeicherten Booteinträgen aus der Boot Configuration Data. Wurde die Disk-Signatur verändert, verweigert Windows den Start mit einem winload error.[1]

EFI
   Liegt EFI vor, so sind die ersten beiden Teile aus dem MBR und VBR überflüssig. Der Boot Manager ist in der Datei \efi\BOOT\bootia32.efi bzw. \efi\BOOT\bootx64.efi in der EFI-System-Partition gespeichert und wird von EFI direkt geladen und ausgeführt. Ansonsten ist die Funktionalität identisch zum bootmgr.

Als Nächstes startet BOOTMGR winload.exe, sofern Windows geladen werden soll. Es lädt in der Folge genau wie NTLDR den HAL, den Kernel und seine Bibliotheken und Gerätetreiber. Zudem lädt er die Windows-Registrierungsdatenbank. Danach übergibt winload.exe die Kontrolle dem Kernel, der sich initialisiert und weitere System-Dienste lädt.
Boot-Einstellungen
Alle Einstellungen für den Bootloader sind bei BIOS-Systemen in der Datei \Boot\BCD, bei EFI-Systemen in der Datei \EFI\Microsoft\Boot\BCD in der EFI-Systempartition abgelegt.[2] Die Boot Configuration Data ist in eine Binärdatei abgelegt und vom Aufbau her ein Hive der Windows-Registrierungsdatenbank. Microsoft bietet das Kommandozeilen-Tool bcdedit.exe an, um Bootparameter zu ändern. Es ist auch möglich beim Booten von der Windows-CD über den Punkt Computer reparieren/Systemwiederherstellungsoptionen das Tool bootrec.exe aufzurufen. Alternativ kann das Programm EasyBCD 1.7.2 needs Net Framework 2.0. , um die BOOTMGR-Einstellungen zu ändern.
#2260 daniel_k ⇗ @sqpp

It's a Phoenix BIOS, which is known to have compatibility issues, much like Insyde's.

It seems to me, that the issue lies here (just an example, there are many instances of this XP incompatible coding):

 
Scope (\_SB.PCI0)
{
Device (XHC)
{
Method (_INI, 0, NotSerialized) // _INI: Initialize
{
If (CondRefOf (\_SB.PCI0.XHC.RHUB.INIR))
{
\_SB.PCI0.XHC.RHUB.INIR () ---> WRONG
}
}
}
}



 
Scope (_SB.PCI0)
{
Device (XHC)
{
Method (_INI, 0, NotSerialized) // _INI: Initialize
{
If (CondRefOf (\_SB.PCI0.XHC.RHUB.INIR))
{
^RHUB.INIR () ---> CORRECT
}
}
}
}



However, I don't know if it can be fixed by patching ACPI.SYS.

#2261 sqpp Ah hell no :( I most likely need an another thinkpad then.
#2262 daniel_k
Zitat von ⇗ sqpp im Beitrag ¶ #2261
Ah hell no :( I most likely need an another thinkpad then.


There is this:
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #1638
I feel that it is time to remind about my util called "acpi patcher" )
it is dsdt/ssdt table manipulation tool before OS loading, even for winxp textmode setup



He explains how to use it here:
⇗ http://reboot.pro/topic/22051-acpi-patcher-at-boot-time/

If you learn how to use it, let me know and I can help you to fix the table.
#2263 diderius6 ⇗ @daniel_k

Daniel, please can you add this 3 hacks
to the acpi.sys 5048 for XP SP3?

This is german versions of original acpi.sys 5512,
but this is not important

Dietmar



diderius6 has attached files to this post
#2264 daniel_k ⇗ @diderius6, for x86 it was easy.
#2265 diderius6 ⇗ @daniel_k
Waaaoh, this is in record time ),
I am going to test
Dietmar

 

Page 152

#2266 diderius6 ⇗ @daniel_k

Yesssaaaaa:)))), thanks a lot, works on Shorthorn files to boot XP SP3
this makes also ⇗ @skullteria happy, I know for sure
Dietmar
#2267 Doc.Brown Awesome work you're doing here guys
I'm trying to have a working XP SP3 with Maximus XI Gene and CoffeLake CPU based on a 5512 build XP,tryed many of your ACPI.sys modded file with AHCI drivers from Fernando and the new from Daniel_k.
In the best case install work with F7 to ignore ACPi but it seems that CPU isn't recognize in OS and also TurboV software doesn't work.
Do you think there's a way to have it working well ? I'm sure I did something wrong cause I don't understand anything about coding or hacking file so that's why I prefer asking help for expert.
I want it for overclocking and benchmarking not for H24 use.

Thanks for your help.
#2268 skullteria
Zitat von ⇗ diderius6 im Beitrag ¶ #2266
@daniel_k

Yesssaaaaa:)))), thanks a lot, works on Shorthorn files to boot XP SP3
this makes also @skullteria happy, I know for sure
Dietmar

Please man, test with integrated GPU (intel HD graphics).
I made some patch on winload to disable permanently signature check. On X64 too, however, need add a option on boot entry or patch bootmgr too.
#2269 diderius6 ⇗ @skullteria

I do not have a modern CPU,
which has working Intel HD graphics for XP.
I do not know, if there is any

Dietmar
#2270 diderius6 ⇗ @Doc.Brown

The Maximus XI Gene has an Intel® Z390 Chipset.
I succeed to install XP SP3 on the EVGA z390 dark board,
so it should work there also.
Integrate the last acpi.sys from ⇗ @daniel_k and also the STORAHCI driver via nlite
together with storport.sys from ⇗ @skullteria
Dietmar
#2271 skullteria
Zitat von ⇗ diderius6 im Beitrag ¶ #2269
@skullteria

I do not have a modern CPU,
which has working Intel HD graphics for XP.
I do not know, if there is any .

Dietmar


My system what i tested is 2nd generation...HD 3000. I will try get the error.Well, i'm very thankful and happy. Only x64 needed now. I will test UEFI too.
Zitat von ⇗ daniel_k im Beitrag ¶ #2264
@diderius6, for x86 it was easy.

Please Daniel_k, made it to x64 too
#2272 Doc.Brown
Zitat von ⇗ diderius6 im Beitrag ¶ #2270
@Doc.Brown

The Maximus XI Gene has an Intel® Z390 Chipset.
I succeed to install XP SP3 on the EVGA z390 dark board,
so it should work there also.
Integrate the last acpi.sys from ⇗ @daniel_k and also the STORAHCI driver via nlite
together with storport.sys from @skullteria
Dietmar


⇗ @diderius6

Yes cause the Dark has the full bios compatibility with XP like older Asus Apex IX and X had with specific overclocking bios but the new XI products doesn't have this support.
I "ll test your methodology,by STORAHCI you mean AMDXHCI_XP_FINAL by ⇗ @daniel_k  or another else ? and also I don't know where to put the 2 Storeport.sys files,they aren't in i386 folder it seems ?

Thanks
#2273 diderius6 ⇗ @Doc.Brown

No, it is the STORAHCI driver from ⇗ @skullteria together with storport.sys see all in
post 1020 here

Dietmar

PS: The storport.sys driver needs to be put by hand into i386 installationfolder for CD.
#2274 Doc.Brown
Zitat von ⇗ diderius6 im Beitrag ¶ #2273
@Doc.Brown

No, it is the STORAHCI driver from @skullteria together with storport.sys see all in
post 1020 here

Dietmar

PS: The storport.sys driver needs to be put by hand into i386 installationfolder for CD.


⇗ @diderius6

hum ok,found it but I put the 2 files in original STORAHCI folder before integrate driver with nlite ?
there's no need of AHCI driver at all ?

Thanks for your help :)

Edit: just saw your edit after posting so I put the 2 STORPORTin the original folder racine of STORAHCI and then copy into i386 if I understand well ...sorry i'm french,nobody is perfect xD

Edit 2: I put 2x STOREPORT files into i386 XP folder and integrate STORAHCI with nlite,change the ACPI file also and after create the iso,hope i'm right ^^
#2275 skullteria Well, a interestering thing: until build 5231, winload works on XP x64 without problem, don't need nogui. Starting build 5270, has some issue with BootVid VidResetDisplay. Maybe changing winload we can laod XP x64
#2276 daniel_k If you're going to share info and files, I'll help.

Otherwise, I won't help to fix something that is copyrighted or open source just for private use.
#2277 skullteria I can share the files...For now, i shared only info. Well, can you fix acpi fro x64 to load winload?
#2278 diderius6 _
#2279 Doc.Brown
Zitat von ⇗ Doc.Brown im Beitrag ¶ #2274
Zitat von ⇗ diderius6 im Beitrag ¶ #2273
@Doc.Brown

No, it is the STORAHCI driver from @skullteria together with storport.sys see all in
post 1020 here

Dietmar

PS: The storport.sys driver needs to be put by hand into i386 installationfolder for CD.


⇗ @diderius6

hum ok,found it but I put the 2 files in original STORAHCI folder before integrate driver with nlite ?
there's no need of AHCI driver at all ?

Thanks for your help :)

Edit: just saw your edit after posting so I put the 2 STORPORTin the original folder racine of STORAHCI and then copy into i386 if I understand well ...sorry i'm french,nobody is perfect xD

Edit 2: I put 2x STOREPORT files into i386 XP folder and integrate STORAHCI with nlite,change the ACPI file also and after create the iso,hope i'm right ^^


⇗ @diderius6

Sadly it results on another BSOD :

⇗ https://cdn.discordapp.com/attachments/3...54/IMG_2096.JPG

Disk are well recognized,this BSOD came after when the real XP set up start,installation launched without pressing F7 ...

Thanks :)
#2280 diderius6 ⇗ @Doc.Brown

In this case, the only thing that helps is,
to set XP up on another, more XP friendly compi
and later connect this XP to first one.
It can be done with the STORAHCI driver,
because it is really generic,
Dietmar

 

Page 153

#2281 cedar ⇗ @diderius6, ⇗ @daniel_k
Keep up the good works!

I made a fresh bootable storahci XP64 Window with only default vga driver on my old Ivy system.
Then add the latest acpi64 driver from Daniel_K and swapp the hard disk to the Asus Prime B350 Ryzen board.

Regular boot always get BSOD, I can boot into safe mode,
so I installed AMD chipset and usb 3.1 driver within Safe mode. Usb 3.1 worked. Nvidia GS8400 also installed.

I installed my motherboard's Amdpcidev.sys on both PCI entries PCI\VEN_1022&DEV_1455 and PCI\VEN_1022&DEV_145A both failed with yellow bangs.
I also tried Canonkong's Amdpcidev.sys from x570 board, it didn't work either.

After some drivers installations and reboots to test, sometime I can get back to safe mode using last good configuration
,but could not boot regular mode. I think it might be PCI issue.
Eventually I got.

irql_not_less_or_equal error BSOD as

0X0000000A (0X0000000000000014, 0X000000000000000C,0X0000000000000000,
0XFFFFF80000107984D)

After this I can't get back to XP64 safe mode even using last good configuration.
Could you please look into that?

However, 2003 x64 seems to work, but need further tests on my board to see
how it goes.
#2282 Doc.Brown ⇗ @diderius6

Ok it will be test,thanks for your quick reply ;)
#2283 infuscomus ⇗ @sqpp ⇗ @Doc.Brown

can you test with XP ACPI 32bit instead of 64bit? - you might have better luck getting 32bit to work
#2284 Doc.Brown ⇗ @infuscomus
It is already an 32 bit XP used with latest ACPI from ⇗ @daniel_k
#2285 cedar ⇗ @infuscomus

Good works!. Your 1st attempt ACPI 64 version can boot 2003 too, but not on XP, 2nd attempt version, BSOD.

I need to create 3 or more hard ware profiles after install drivers to test on both Daniel_K latest 64 bit
and your 1st version ,on both XP and 2003.

Some profiles will boot, other profiles will BSOD on 2003.
#2286 Gelip
Zitat von ⇗ diderius6 im Beitrag ¶ #2165
Hi,
does anybody know,
where I can get SYMBOLS for
the XP64 DEBUG SP2 version
Dietmar

PS: In this case, acpi.pdb for the debug XP 64 SP2 would be enough.
5.2.3790.3959 (srv03_sp2_rtm.070216-1710)

EDIT:

It is in file

WindowsServer2003-KB933548-v1-x64-symbols-NRL-ENU-DEBUG.exe


Direct links to symbol files in post number #6 on the ⇗ arabhardware.net forum. You can also enter the site's ⇗ archive and see the full .exe file names :-)
Now in Firefox, press Ctrl + F, paste the searched file name, e.g. WindowsServer2003-KB933548-v1-x64-symbols-NRL-ENU-DEBUG.exe, mark the link on the page and select Save target as... from the context menu:

I attach all links in txt file:

Gelip has attached files to this post
#2287 diderius6 ⇗ @Gelip

I see the download link for the symbols.
But they seem to link to the Microsoft page
and download from there does not work
Dietmar
#2288 skullteria I have symbols packages from XP until Win8, want place here or pm?
#2289 Gelip
Zitat von ⇗ skullteria im Beitrag ¶ #2288
I have symbols packages from XP until Win8, want place here or pm?

Yes, please for WinXP 32 and 64 bit. Thx
#2290 skullteria
Zitat von ⇗ Gelip im Beitrag ¶ #2289
Zitat von ⇗ skullteria im Beitrag ¶ #2288
I have symbols packages from XP until Win8, want place here or pm?

Yes, please for WinXP 32 and 64 bit. Thx


Here:
Windows XP x64:
⇗ https://www.adrive.com/public/Kk44M8/Win...ols-NRL-ENU.exe
Windows XP SP3:
⇗ https://www.adrive.com/public/K8GKd5/Win...-update-ENU.exe
#2291 infuscomus
Zitat von ⇗ skullteria im Beitrag ¶ #2275
Well, a interestering thing: until build 5231, winload works on XP x64 without problem, don't need nogui. Starting build 5270, has some issue with BootVid VidResetDisplay. Maybe changing winload we can laod XP x64


⇗ @skullteria

can we use bootvid from vista beta to solve this?
#2292 skullteria
Zitat von ⇗ infuscomus im Beitrag ¶ #2291
Zitat von ⇗ skullteria im Beitrag ¶ #2275
Well, a interestering thing: until build 5231, winload works on XP x64 without problem, don't need nogui. Starting build 5270, has some issue with BootVid VidResetDisplay. Maybe changing winload we can laod XP x64


@skullteria

can we use bootvid from vista beta to solve this?


Unfortunately, the problem is not in bootvid. I tried Vista RTM bootvid, however, get same error. The real problem is in HalResetDisplay, or HalpResetDisplay. In x64, it is Int10 emulated, and in vista has some change.
#2293 Gelip In VMware Workstation 8.0.2 build-591240 WinXP x86 or x64 works without problems in EFI32 and EFI64 on the graphics driver VMware Tools (VMware SVGA II) with EFI files from beta Longhorn Vista x86 6.0.5219.0 and beta Longhorn Server 6.0.6001.16497 x64, beta Longhorn Vista 6.0.5384.4 x64. The VMware graphics card has no GOP firmware:


On real hardware WinXP x64 work only with VBEMP (AnaPa).
#2294 diderius6 I just try UEFI boot for XP64 on the Giga H110 board. The XP64 sits as C:\ on a MBR with ntfs formatted harddisk
and is amazing stable, nothing yellow in device manager.
Just to copy the 64 bit EFI folder on C:\ and winload.efi into windows\system32 does not work.
The harddisk is still shown as CSM harddisk, no possibility to chose UEFI for the harddisk via F12 (chose Bootdevice).
When I force in Bios disable CSM,
the harddisk entry via F12 is gone,

Dietmar

PS: When I put the EFI folder on an USB stick, formatted with FAT32,
I can chose UEFI boot, even with complete disabled CSM in Bios.
But then comes the message, that winload.efi was not found
in windows\system32, even it is there.
This may be, because via USB stick UEFI does not find the way to the ntfs formatted harddisk
with MBR. So, a lot of more work has to be done.
#2295 infuscomus ⇗ @diderius6

try creating a small 100mb primary active fat32 partition at the start of the drive and put the \BOOT\EFI files in there

I think thats what windows 8 and 10 use

 

Page 154

#2296 diderius6 ⇗ @infuscomus

I just put an extra 7 Gbyte Fat32 partition (primary partition, visable) on the same harddisk.
Now I can chose UEFI boot.
Ok, again I was told, that winload.efi was not there.
I copy an extra folder windows\system32\ there on the Fat32 partition with winload.efi in it.
Now I get message, that windows\system32\config is missed.
Aha, I understand, UEFI looks ONLY on that Fat32 partition.
So, in next step I copy the whole Windows folder on it,
and we will see

Dietmar

PS: May be, that can be controlled via the BCD file on the FAT32 partition.
But I dont know, how I have to change the settings in BCD, so that on next time
it uses the ntfs partition.
But who knows, maybe the whole XP64 can be started from Fat32.

EDIT: May be, the BIOS of the Giga H110 board has no UEFI driver for the ntfs file system.

EDIT2: Now I get screen with "Starting Windows Vista" but hangs there.

EDIT3: I enlarge the Fat32 partition to 28 Gbyte. There I copy the whole XP64 installation from ntfs partition.
Oho, there are a lot of new possibilities. Just copy the UEFI nvme driver to Bios and start from old Compi UEFI via nvme:))!
#2297 infuscomus ⇗ @diderius6

BootICE can edit BCD settings for you
#2298 Gelip
Zitat von ⇗ diderius6 im Beitrag ¶ #2294
I just try UEFI boot for XP64 on the Giga H110 board. The XP64 sits as C:\ on a MBR with ntfs formatted harddisk
and is amazing stable, nothing yellow in device manager.
Just to copy the 64 bit EFI folder on C:\ and winload.efi into windows\system32 does not work.
The harddisk is still shown as CSM harddisk, no possibility to chose UEFI for the harddisk via F12 (chose Bootdevice).
When I force in Bios disable CSM,
the harddisk entry via F12 is gone,

Dietmar

PS: When I put the EFI folder on an USB stick, formatted with FAT32,
I can chose UEFI boot, even with complete disabled CSM in Bios.
But then comes the message, that winload.efi was not found
in windows\system32, even it is there.
This may be, because via USB stick UEFI does not find the way to the ntfs formatted harddisk
with MBR. So, a lot of more work has to be done.


Please read this my topic carefully and the links in the subject: ⇗ https://www.betaarchive.com/forum/viewto...=444391#p444391
#2299 Gelip Read this: ⇗ https://www.betaarchive.com/forum/viewto...=435277#p435277
#2300 Gelip Yes, my file BCD need edit in BOOTICE (Professional mode) - select partition NTFS in ApplicationDevice and OSDevice
#2301 diderius6 ⇗ @Gelip

I try direct UEFI boot from Fat32 partition,
using

xxcopy /k /r /e /i /s /c /h Q:\ R:\

where Q is the working XP64 ntfs partition with all UEFI files on it
and R empty FAT32 partition

Dietmar
#2302 Gelip No, no, no - read PM
#2303 infuscomus ⇗ @daniel_k

do you still have your modified AMD generic AHCI drivers?
#2304 kukonosau ⇗ @cedar
How to start Windows XP x64 on ASUS AM4 B350 PRIME B350M-K? Where is daniel_k acpi.sys and storage drivers skullteria?
#2305 daniel_k ⇗ @infuscomus, can be found in the following posts:
¶ Windows XP SP3 32bit and modern PC parts (112)
¶ Windows XP SP3 32bit and modern PC parts (114)
#2306 cedar ⇗ @kukonosau

XP64 only boot in safe mode by luck. 2003 can boot normally
, but both are not stable either.

I installed them in another computer and moved the hard disk to Ryzen
system. Burning discs boot directly on Ryzen didn't work that well for me.

Make sure to create lot of hardware profiles in XP or 03. By luck, some can boot,
others may not. USB3.0 does not work consistently on my board on XP32,
but 64bit USB3.0 works on mouse and thumb drives.

64 ACPI drivers tested were from post #2202 or infuscomus first attemp.
Even Mplayer classic playing mkv files can instantly reboot Win2003.

So it is not too stable, although .mpg and avi can play in Mplayer.
I still need to test it if it can be fixed.
#2307 infuscomus ⇗ @daniel_k

thanks very much.

⇗ @cedar

what stability issues have you come across?
#2308 Illen
Zitat von ⇗ diderius6 im Beitrag ¶ #2296

EDIT: May be, the BIOS of the Giga H110 board has no UEFI driver for the ntfs file system.


Yep, forgot to mention that some UEFI firmwares might not be able to read from NTFS. In such cases, you either want to create a small FAT32 partition with EFI folder in it, and keep the Windows install with winload.efi on NTFS partition (and modify the BCD as mentioned in ¶ post#2300) , or keep the whole install on FAT32 partition and boot from there.
Zitat von ⇗ diderius6 im Beitrag ¶ #2296

EDIT2: Now I get screen with "Starting Windows Vista" but hangs there.


Did you install the Anapa VBE driver, and are you sure it works?
#2309 cedar ⇗ @infuscomus

0n Win 2003, even if i can boot a certain hardware profile several time
in a row, it can reboot instantly the next time. With 5 or 6 profiles, so
far, I can boot with luck by choosing a different hardware profile.
sometime I have to choose 3 profiles, and 1 will boot. others will
instantly reboot the machine.

Those hardware profiles are created after installing USB, Network, sound
, XP friendly GForce 8400GS and ATI HDTV Wonder.

These hardwares are very stable on XP32.

On 64 bit 2003. USB 2 to 3.1 all work.
Network not work yet.

Beyond TV (may reboot machine) and SichBoPVR not work yet.
it could be DirectX problems. its past all DirectX tests, but on next reboot,
some components of DirectX are not enabled anymore.

Mplayer Classic reboot machine on .mkv and .mp4. maybe LAV splitter
problems.

All programs above work well under XP32 on Ryzen, as well
as under XP64 on Ivy board.

Some of the problems are video related, may be fixable with
different software versions. while others are probably harder
to fix.
#2310 kukonosau ⇗ @diderius6  
Thanks! I started Windows XP X64 with ACPI from post 2202, but with some times. A lot of different BSOD, for example 7E, 0A, 7B, irql not less or equal and so on!!! I install XP in VirtualBox, create reserve copy with Acronis 2014. Send copy from virtual XP in Windows 10. Installed copy in hardware with Acronis Universal Restore. I deleted all drivers and add storport drivers from skullteria. But, unfortunately, after 2nd sucessfully loading I get BSOD again(((

 

Page 155

#2311 Gelip
Zitat von ⇗ kukonosau im Beitrag ¶ #2310
@diderius6  
Thanks! I started Windows XP X64 with ACPI from post 2202, but with some times. A lot of different BSOD, for example 7E, 0A, 7B, irql not less or equal and so on!!! I install XP in VirtualBox, create reserve copy with Acronis 2014. Send copy from virtual XP in Windows 10. Installed copy in hardware with Acronis Universal Restore. I deleted all drivers and add storport drivers from skullteria. But, unfortunately, after 2nd sucessfully loading I get BSOD again(((

Try deploy WinXP x64 in this way ⇗ How to deploy WinXP 64-bit on a UEFI >⇗ read this< and start under UEFI:
Zitat
The VGA controller can be turned off in a running system after make Reseal - just select the Quit option in Sysprep. Now delete display.inf and vga & VgaSave services from registry in CurrentControlSet key.


#2312 infuscomus I think the windows partition should be separate from the UEFI partition.

That way the windows partition can still be formatted as NTFS with EFI as fat32 and just point the UEFI bootloader to the NTFS partition from there.
#2313 Gelip
Zitat von ⇗ infuscomus im Beitrag ¶ #2312
I think the windows partition should be separate from the UEFI partition.

That way the windows partition can still be formatted as NTFS with EFI as fat32 and just point the UEFI bootloader to the NTFS partition from there.

I think, I think
Yes 100MB FAT32 for bootx64.efi and BCD files and NTFS for Windows with winload.efi file. It has been checked a long time ago - please read the links it provides or the whole topic on betaarchive ⇗ https://www.betaarchive.com/forum/viewtopic.php?f=61&t=20327 in which I performed the most tests with start WinXP on UEFI.

P.S. If the BIOS has an NTFS driver then only one NTFS partition can be used.
You can also boot the system from a FAT32 pendrive, but the most convenient is the FAT32 + NTFS partition just like in newer Windows starting from Win7 x64 on UEFI.
#2314 Gelip
Zitat von ⇗ diderius6 im Beitrag ¶ #1145
May be we need WDFLDR.SYS (from Vista-Longhorn5048, Vista, Win7) all 32 bit
for XP for Intel USB
Dietmar

PS:Intel USB 3 drivers need WDFLDR.SYS (Kernel Mode Driver Framework LOADER) which doesn't exist on XP.
XP drivers require coinstaller WdfCoInstaller01009.dll (included with driver, it installs wdfldr.sys and wdf01000.sys) and separate usbd.sys.
I install the Microsoft Kernel Mode Driver Framework runtime 'Microsoft Kernel-Mode Driver Framework Install-v1.9-Win2k-WinXP-Win2k3.exe' extracted from WdfCoinstaller01009.dll which is the co-installer for KMDF 1.9.
This drivers here have all only dependecies for XP!

EDIT: This brings me to the idea, to install the very first USB driver from NEC on Longhorn 5048 for Intel chipset USB3.0.

I need driver 1.9 for WinXP x64 (⇗ https://support.microsoft.com/pl-pl/help...sta-and-for-win)
#2315 diderius6 I have XP64 on Fat32 partition (only first, one partition on HD).
And I installed the ANAPA driver for XP64, set start=4 to vga and vgasave in registry,
but still the compi hangs after Vista bootscreen on the Giga H110 board
Dietmar

PS: No difference between 16497 version and 5384.4.
Now I try to set up a debug session.
With the 5384.4 version this is not possible, even it has boot.ini.
So I hope for BCD, set debug option there via EasyBCD.
No debug at all possible.
#2316 infuscomus ⇗ @diderius6

are you able to remote desktop into it?
#2317 Gelip
Zitat von ⇗ diderius6 im Beitrag ¶ #2315
I have XP64 on Fat32 partition (only first, one partition on HD).
And I installed the ANAPA driver for XP64, set start=4 to vga and vgasave in registry,
but still the compi hangs after Vista bootscreen on the Giga H110 board
Dietmar

PS: No difference between 16497 version and 5384.4.
Now I try to set up a debug session.
With the 5384.4 version this is not possible, even it has boot.ini.
So I hope for BCD, set debug option there via EasyBCD.
No debug at all possible.

What graphics card are you using? If the card has GOP (UEFI) firmware and WinXP x64 drivers then install the driver, disable CSM and try to run WinXP in UEFI - here I wrote what idea I have to implement: ⇗ My new idea to try boot WinXP x64 on UEFI
#2318 Gelip First in legacy bios mode, install all device drivers and AnaPa and check if the system works properly in legacy bios mode !!! Only after you check that the system works OK in legacy bios mode can you try to run under UEFI.
Remote Desktop will of course be useful but only if you have installed the network card drivers.

Maybe you use wrong AnaPa driver? You need use driver exactly from vbempk\VBE30\XPAMD64\PNP with my >⇗ fix<.
#2319 diderius6 ⇗ @Gelip

I tried all this,
XP64 hangs during boot

Dietmar
#2320 Gelip If you use Anapa, you do not need to disable services in the registry.
Try without any graphics driver (install all other drivers including Ethernet), enable Remote Desktop and remove two vga and vgasave services from CurrentControlSet from the registry. Run WinXP in uefi and check from another computer if you have access via a remote desktop.
P.S. If the sound drivers are installed, you should hear the Windows startup sound when Starting Windows Vista is on the screen.
#2321 Gelip If you had the manufacturer's graphics driver installed before, you must uninstall it and remove the oemx.inf file from the WINDOWS/Inf directory (created by the driver installer), otherwise the system will automatically reinstall the graphics card driver after restart.
#2322 Gelip If use AnaPa you need install VBE Miniport (manufacturer) (for GeForce card VBE Miniport (nVidia) ) driver not VBE Miniport - Standard PCI Graphics Adapter (VGA)
#2323 Gelip On the ThinkPad X220 WinXP SP2 x64 it runs 100% OK in UEFI on the AnaPa driver - attached.



Gelip has attached files to this post
#2324 diderius6 ⇗ @Gelip
I use your driver,
install it new,
set Bios to default settings,
does not help.
Only via MBR XP64 starts to desktop,
via UEFI it hangs during boot,
screen shows all the time "Starting Windows Vista"
Dietmar
#2325 Gelip
Zitat von ⇗ diderius6 im Beitrag ¶ #2324
@Gelip
I use your driver,
install it new,
set Bios to default settings,
does not help.
Only via MBR XP64 starts to desktop,
via UEFI it hangs during boot,
screen shows all the time "Starting Windows Vista"
Dietmar

I just tested on ASUS P8H61-M LE R2 with the latest bios 1408 and unfortunately WinXP also does not start with the AnaPa driver or without any graphics driver + removed vga and VgaSave services. It looks like it doesn't work on some motherboards

But it still works for others e.g. ASrock Z170 Pro4S:

 

Page 156

#2326 diderius6 ⇗ @Gelip

I just set up a brand new XP64 on the Asrock fatal1ty z370 gaming k6 board with Fat32.
Then I install there the Anapa driver.
But it boots only via MBR,
hangs during UEFI boot
Dietmar
#2327 diderius6 ⇗ @Gelip

Can you please enable in BCD from folder server_BCD (64 bit Uefi)
the debug option for me
Dietmar
#2328 Gelip
Zitat von ⇗ diderius6 im Beitrag ¶ #2327
@Gelip

Can you please enable in BCD from folder server_BCD (64 bit Uefi)
the debug option for me
Dietmar

The best tool for editing a BCD file and more is BOOTICE v1.3.2 x64 or x86 by Pauly - attached. This tool works on WinXP  To enable debugging on COM1, edit the file like this:


Gelip has attached files to this post
#2329 Gelip I connected WinDbg to ASUS and it turns out that the problem is caused by the VIDEOPRT.SYS file and/or the AHCI driver regardless of whether we use the AnaPa driver or boot the system without any graphics driver (vga and VgaSave services removed):
Microsoft (R) Windows Debugger Version 6.11.0001.404 AMD64
Copyright (c) Microsoft Corporation. All rights reserved.

Opened \\.\com1
Waiting to reconnect...
Connected to Windows Server 2003 3790 x64 target at (Sun Sep 8 09:14:38.008 2019 (GMT+2)), ptr64 TRUE
Kernel Debugger connection established.
Symbol search path is: *** Invalid ***
****************************************************************************
* Symbol loading may be unreliable without a symbol search path. *
* Use .symfix to have the debugger choose a symbol path. *
* After setting your symbol path, use .reload to refresh symbol locations. *
****************************************************************************
Executable search path is:
*********************************************************************
* Symbols can not be loaded because symbol path is not initialized. *
* *
* The Symbol Path can be set by: *
* using the _NT_SYMBOL_PATH environment variable. *
* using the -y <symbol_path> argument when starting the debugger. *
* using .sympath and .sympath+ *
*********************************************************************
*** ERROR: Symbol file could not be found. Defaulted to export symbols for ntkrnlmp.exe -
Windows Server 2003 Kernel Version 3790 MP (1 procs) Free x64
Built by: 3790.srv03_sp2_rtm.070216-1710
Machine Name:
Kernel base = 0xfffff800`01800000 PsLoadedModuleList = 0xfffff800`019d5100
System Uptime: not available


Intel Storage Driver Ver: 11.2.0.1006

KDTARGET: Refreshing KD connection

*** Fatal System Error: 0x00000050
(0xFFFFFADFCB40202A,0x0000000000000000,0xFFFFF800018E2CAE,0x0000000000000000)

Break instruction exception - code 80000003 (first chance)

A fatal system error has occurred.
Debugger entered on first try; Bugcheck callbacks have not been invoked.

A fatal system error has occurred.

*********************************************************************
* Symbols can not be loaded because symbol path is not initialized. *
* *
* The Symbol Path can be set by: *
* using the _NT_SYMBOL_PATH environment variable. *
* using the -y <symbol_path> argument when starting the debugger. *
* using .sympath and .sympath+ *
*********************************************************************
*** ERROR: Symbol file could not be found. Defaulted to export symbols for ntkrnlmp.exe -
*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

Use !analyze -v to get detailed debugging information.

BugCheck 50, {fffffadfcb40202a, 0, fffff800018e2cae, 0}

*** ERROR: Symbol file could not be found. Defaulted to export symbols for ntdll.dll -
***** Kernel symbols are WRONG. Please fix symbols to do analysis.

*** ERROR: Module load completed but symbols could not be loaded for mssmbios.sys
*************************************************************************
*** ***
*** ***
*** Your debugger is not using the correct symbols ***
*** ***
*** In order for this command to work properly, your symbol path ***
*** must point to .pdb files that have full type information. ***
*** ***
*** Certain .pdb files (such as the public OS symbols) do not ***
*** contain the required information. Contact the group that ***
*** provided you with these symbols if you need this command to ***
*** work. ***
*** ***
*** Type referenced: nt!_KPRCB ***
*** ***
*************************************************************************
*** ERROR: Symbol file could not be found. Defaulted to export symbols for VIDEOPRT.SYS -
*** ERROR: Symbol file could not be found. Defaulted to export symbols for win32k.sys -
*************************************************************************
*** ***
*** ***
*** Your debugger is not using the correct symbols ***
*** ***
*** In order for this command to work properly, your symbol path ***
*** must point to .pdb files that have full type information. ***
*** ***
*** Certain .pdb files (such as the public OS symbols) do not ***
*** contain the required information. Contact the group that ***
*** provided you with these symbols if you need this command to ***
*** work. ***
*** ***
*** Type referenced: nt!_KPRCB ***
*** ***
*************************************************************************
*************************************************************************
*** ***
*** ***
*** Your debugger is not using the correct symbols ***
*** ***
*** In order for this command to work properly, your symbol path ***
*** must point to .pdb files that have full type information. ***
*** ***
*** Certain .pdb files (such as the public OS symbols) do not ***
*** contain the required information. Contact the group that ***
*** provided you with these symbols if you need this command to ***
*** work. ***
*** ***
*** Type referenced: nt!_KPRCB ***
*** ***
*************************************************************************
*********************************************************************
* Symbols can not be loaded because symbol path is not initialized. *
* *
* The Symbol Path can be set by: *
* using the _NT_SYMBOL_PATH environment variable. *
* using the -y <symbol_path> argument when starting the debugger. *
* using .sympath and .sympath+ *
*********************************************************************
*********************************************************************
* Symbols can not be loaded because symbol path is not initialized. *
* *
* The Symbol Path can be set by: *
* using the _NT_SYMBOL_PATH environment variable. *
* using the -y <symbol_path> argument when starting the debugger. *
* using .sympath and .sympath+ *
*********************************************************************
Probably caused by : VIDEOPRT.SYS ( VIDEOPRT!VideoPortSetTrappedEmulatorPorts+5e )

Followup: MachineOwner
---------

nt!DbgBreakPointWithStatus:
fffff800`01826db0 cc int 3
#2330GelipYou may need to patch the VIDEOPRT.SYS and/or VGA.SYS file to not traps ports of the graphic board. Such a patch exists but only for WinXP 32-bit:



@diderius
Maybe you can do it?
#2331Mov AX, 0xDEAD
Zitat
Probably caused by : VIDEOPRT.SYS ( VIDEOPRT!VideoPortSetTrappedEmulatorPorts+5e


Zitat von ⇗ Gelip im Beitrag ¶ #2330
You may need to patch the VIDEOPRT.SYS and/or VGA.SYS file to not traps ports of the graphic board

VideoPortSetTrappedEmulatorPorts of  VIDEOPRT.SYS on win2003 x64 FRE is only two asm commands:
 
mov     eax, 57h
retn


probably error in next proc, pVideoPortInitializeInt10
but if you using CHK version of VIDEOPRT.SYS it may be diff proc

#2332diderius6⇗ @Gelip

Thanks a lot for bootice:))!
I noticed on the Asrock k6 the same error using windbg
belonging to videoprt.sys

Dietmar

Microsoft (R) Windows Debugger Version 6.12.0002.633 X86
Copyright (c) Microsoft Corporation. All rights reserved.

Opened \\.\com1
Waiting to reconnect...
Connected to Windows Server 2003 3790 x64 target at (Sun Sep 8 10:34:00.281 2019 (UTC + 2:00)), ptr64 TRUE
Kernel Debugger connection established.
WARNING: Inaccessible path: 'C:\WinDDK\7600.16385.1\src\openfabricsall\nvme13\nvme\objchk_wnet_x86\i386'
Symbol search path is: C:\WinDDK\7600.16385.1\src\openfabricsall\nvme13\nvme\objchk_wnet_x86\i386;SRV*c:\symbols
*⇗ http://msdl.microsoft.com/download/symbols;C:\symbols
Executable search path is: C:\localsymbols
Windows Server 2003 Kernel Version 3790 MP (1 procs) Free x64
Built by: 3790.srv03_sp2_rtm.070216-1710
Machine Name:
Kernel base = 0xfffff800`00c00000 PsLoadedModuleList = 0xfffff800`00dd5100
System Uptime: not available
AhciHwFindAdapter finishing
AhciHwFindAdapter finishing
KDTARGET: Refreshing KD connection

*** Fatal System Error: 0x00000050
(0xFFFFFADCC100202A,0x0000000000000000,0xFFFFF80000CE2CAE,0x0000000000000000)

Break instruction exception - code 80000003 (first chance)

A fatal system error has occurred.
Debugger entered on first try; Bugcheck callbacks have not been invoked.

A fatal system error has occurred.

Connected to Windows Server 2003 3790 x64 target at (Sun Sep 8 10:35:24.250 2019 (UTC + 2:00)), ptr64 TRUE
Loading Kernel Symbols
...............................................................
................
Loading User Symbols
........
Loading unloaded module list
.......
*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

Use !analyze -v to get detailed debugging information.

BugCheck 50, {fffffadcc100202a, 0, fffff80000ce2cae, 0}

*** ERROR: Symbol file could not be found. Defaulted to export symbols for CSRSRV.dll -
Probably caused by : VIDEOPRT.SYS ( VIDEOPRT!pVideoPortInitializeInt10+4e )

Followup: MachineOwner
---------

nt!DbgBreakPointWithStatus:
fffff800`00c26db0 cc int 3
8: kd> !analyze -v
*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

PAGE_FAULT_IN_NONPAGED_AREA (50)
Invalid system memory was referenced. This cannot be protected by try-except,
it must be protected by a Probe. Typically the address is just plain bad or it
is pointing at freed memory.
Arguments:
Arg1: fffffadcc100202a, memory referenced.
Arg2: 0000000000000000, value 0 = read operation, 1 = write operation.
Arg3: fffff80000ce2cae, If non-zero, the instruction address which referenced the bad memory
address.
Arg4: 0000000000000000, (reserved)

Debugging Details:
------------------


READ_ADDRESS: fffffadcc100202a

FAULTING_IP:
nt!MmMapIoSpace+489
fffff800`00ce2cae 668b4e1a mov cx,word ptr [rsi+1Ah]

MM_INTERNAL_CODE: 0

DEFAULT_BUCKET_ID: DRIVER_FAULT

BUGCHECK_STR: 0x50

PROCESS_NAME: csrss.exe

CURRENT_IRQL: 2

TRAP_FRAME: fffffadcc0376900 -- (.trap 0xfffffadcc0376900)
NOTE: The trap frame does not contain all registers.
Some register values may be zeroed or incorrect.
rax=fffff6fd6e5ec0f0 rbx=0000000000000000 rcx=0000000000000000
rdx=fffffadcc070b101 rsi=0000000000000000 rdi=0000000000000000
rip=fffff80000ce2cae rsp=fffffadcc0376a90 rbp=0000000000000000
r8=000000fffffff000 r9=0000000000000002 r10=0000000000000eff
r11=0000000000000000 r12=0000000000000000 r13=0000000000000000
r14=0000000000000000 r15=0000000000000000
iopl=0 nv up ei ng nz na pe nc
nt!MmMapIoSpace+0x489:
fffff800`00ce2cae 668b4e1a mov cx,word ptr [rsi+1Ah] ds:b180:001a=????
Resetting default scope

LAST_CONTROL_TRANSFER: from fffff80000cd673e to fffff80000c26db0

STACK_TEXT:
fffffadc`c0376148 fffff800`00cd673e : 00000000`00000008 fffffadc`c0376900 fffffadc`c100202a fffff800`00c5669e : nt!DbgBreakPointWithStatus
fffffadc`c0376150 fffff800`00cd7d0e : fffff800`00000003 00000000`00000050 fffffadc`c100202a 00000000`00000000 : nt!KiBugCheckDebugBreak+0x1e
fffffadc`c03761b0 fffff800`00c2ea54 : fffffadc`c0376830 fffffadc`00000004 fffffadc`c0376c64 fffffadc`c0376c10 : nt!KeBugCheck2+0x640
fffffadc`c03767f0 fffff800`00ca58f2 : 00000000`00000050 fffffadc`c100202a 00000000`00000000 fffffadc`c0376900 : nt!KeBugCheckEx+0x104
fffffadc`c0376830 fffff800`00c2d519 : 00000000`00000011 fffff800`00e9534b fffffadc`c0376900 fffffadc`c03769d0 : nt!MmAccessFault+0xa1f
fffffadc`c0376900 fffff800`00ce2cae : 00000000`0000087b 00000000`00000000 fffffadc`c1000000 00000000`00000000 : nt!KiPageFault+0x119
fffffadc`c0376a90 fffffadc`be4a813e : fffffadc`00000001 00000000`00100000 fffffadc`00000000 fffffa80`00677000 : nt!MmMapIoSpace+0x489
fffffadc`c0376b60 fffffadc`be4b28b3 : 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000000 : VIDEOPRT!pVideoPortInitializeInt10+0x4e
fffffadc`c0376ba0 fffff800`00e837c9 : fffffadc`e0511070 fffffadc`e03e69d0 fffffadc`e0511070 fffff800`00e83170 : VIDEOPRT!pVideoPortDispatch+0xca3
fffffadc`c0376cc0 fffff800`00e81164 : fffffadc`e0511070 fffffadc`e0511020 fffffadc`c0376ff0 00000000`00000000 : nt!IopParseDevice+0x1088
fffffadc`c0376e70 fffff800`00e85887 : 00000000`00000000 fffffadc`c0376fe0 00000000`00000240 00000000`00000000 : nt!ObpLookupObjectName+0x931
fffffadc`c0376f80 fffff800`00e92e4d : 00000000`00000001 fffffadc`c03774e0 00000000`00000001 fffff800`00c241ce : nt!ObOpenObjectByName+0x180
fffffadc`c0377170 fffff800`00e99ef7 : fffffa80`0066e4d0 fffff800`00c3c37e fffffa80`0066e4a0 00000000`00000500 : nt!IopCreateFile+0x630
fffffadc`c0377300 fffff800`00e958f9 : 00000000`00000000 fffffa80`00001c80 fffffadc`dff1ac20 fffffadc`e0556750 : nt!IoCreateFile+0x12f
fffffadc`c03773e0 fffff800`00c2e3fd : fffffadc`e0556750 fffffadc`c03774e0 00000000`00000000 00000000`00000000 : nt!NtOpenFile+0x49
fffffadc`c0377460 fffff800`00c2e8c0 : fffff800`00e7ec67 00000000`00000000 000007ff`7c5c9620 00000000`00000000 : nt!KiSystemServiceCopyEnd+0x3
fffffadc`c0377668 fffff800`00e7ec67 : 00000000`00000000 000007ff`7c5c9620 00000000`00000000 00000000`00000001 : nt!KiServiceLinkage
fffffadc`c0377670 fffff97f`ff008587 : 00000000`00000000 00000000`00000000 00000000`00000001 00000000`00000000 : nt!IoGetDeviceObjectPointer+0x57
fffffadc`c0377700 fffff97f`ff00334d : 00000000`00000001 00000000`00000000 00000000`00000003 00000000`00000001 : win32k!DrvUpdateGraphicsDeviceList+0x4ba
fffffadc`c0377900 fffff97f`ff008d8c : fffffadc`c0377a38 00000000`00000000 00000000`01bc8000 00000000`00000000 : win32k!DrvInitConsole+0xd5
fffffadc`c0377970 fffff97f`ff00bb28 : 00000000`01bc8000 00000000`00000000 00000000`00000003 00000000`00000000 : win32k!InitVideo+0xb
fffffadc`c03779e0 fffff97f`ff00b646 : 00000000`00000060 fffffadc`c0377cf0 00000000`00000003 00000000`0000005c : win32k!UserInitialize+0x63c
fffffadc`c0377c20 fffff800`00c2e3fd : fffffadc`000001e0 00000000`00000001 fffffadc`e0556750 00000000`00000020 : win32k!NtUserInitialize+0x15f
fffffadc`c0377c70 000007ff`7c7de86a : 000007ff`7c7deaa9 00000000`001657f0 00000000`001657f0 00000000`00000003 : nt!KiSystemServiceCopyEnd+0x3
00000000`0015fbc8 000007ff`7c7deaa9 : 00000000`001657f0 00000000`001657f0 00000000`00000003 00000000`00000000 : winsrv!NtUserInitialize+0xa
00000000`0015fbd0 000007ff`7c5b3eb8 : 00000000`00000000 00000000`00000001 00000000`001657f0 00000000`00000000 : winsrv!UserServerDllInitialization+0x229
00000000`0015fc50 00000000`00000000 : 00000000`00000001 00000000`001657f0 00000000`00000000 00000000`00100000 : CSRSRV!CsrUnhandledExceptionFilter+0x368


STACK_COMMAND: kb

FOLLOWUP_IP:
VIDEOPRT!pVideoPortInitializeInt10+4e
fffffadc`be4a813e 4c8bcb mov r9,rbx

SYMBOL_STACK_INDEX: 7

SYMBOL_NAME: VIDEOPRT!pVideoPortInitializeInt10+4e

FOLLOWUP_NAME: MachineOwner

MODULE_NAME: VIDEOPRT

IMAGE_NAME: VIDEOPRT.SYS

DEBUG_FLR_IMAGE_TIMESTAMP: 45d69799

FAILURE_BUCKET_ID: X64_0x50_VIDEOPRT!pVideoPortInitializeInt10+4e

BUCKET_ID: X64_0x50_VIDEOPRT!pVideoPortInitializeInt10+4e

Followup: MachineOwner
---------

8: kd> !analyze -v
*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

PAGE_FAULT_IN_NONPAGED_AREA (50)
Invalid system memory was referenced. This cannot be protected by try-except,
it must be protected by a Probe. Typically the address is just plain bad or it
is pointing at freed memory.
Arguments:
Arg1: fffffadcc100202a, memory referenced.
Arg2: 0000000000000000, value 0 = read operation, 1 = write operation.
Arg3: fffff80000ce2cae, If non-zero, the instruction address which referenced the bad memory
address.
Arg4: 0000000000000000, (reserved)

Debugging Details:
------------------


READ_ADDRESS: fffffadcc100202a

FAULTING_IP:
nt!MmMapIoSpace+489
fffff800`00ce2cae 668b4e1a mov cx,word ptr [rsi+1Ah]

MM_INTERNAL_CODE: 0

DEFAULT_BUCKET_ID: DRIVER_FAULT

BUGCHECK_STR: 0x50

PROCESS_NAME: csrss.exe

CURRENT_IRQL: 2

TRAP_FRAME: fffffadcc0376900 -- (.trap 0xfffffadcc0376900)
NOTE: The trap frame does not contain all registers.
Some register values may be zeroed or incorrect.
rax=fffff6fd6e5ec0f0 rbx=0000000000000000 rcx=0000000000000000
rdx=fffffadcc070b101 rsi=0000000000000000 rdi=0000000000000000
rip=fffff80000ce2cae rsp=fffffadcc0376a90 rbp=0000000000000000
r8=000000fffffff000 r9=0000000000000002 r10=0000000000000eff
r11=0000000000000000 r12=0000000000000000 r13=0000000000000000
r14=0000000000000000 r15=0000000000000000
iopl=0 nv up ei ng nz na pe nc
nt!MmMapIoSpace+0x489:
fffff800`00ce2cae 668b4e1a mov cx,word ptr [rsi+1Ah] ds:b180:001a=????
Resetting default scope

LAST_CONTROL_TRANSFER: from fffff80000cd673e to fffff80000c26db0

STACK_TEXT:
fffffadc`c0376148 fffff800`00cd673e : 00000000`00000008 fffffadc`c0376900 fffffadc`c100202a fffff800`00c5669e : nt!DbgBreakPointWithStatus
fffffadc`c0376150 fffff800`00cd7d0e : fffff800`00000003 00000000`00000050 fffffadc`c100202a 00000000`00000000 : nt!KiBugCheckDebugBreak+0x1e
fffffadc`c03761b0 fffff800`00c2ea54 : fffffadc`c0376830 fffffadc`00000004 fffffadc`c0376c64 fffffadc`c0376c10 : nt!KeBugCheck2+0x640
fffffadc`c03767f0 fffff800`00ca58f2 : 00000000`00000050 fffffadc`c100202a 00000000`00000000 fffffadc`c0376900 : nt!KeBugCheckEx+0x104
fffffadc`c0376830 fffff800`00c2d519 : 00000000`00000011 fffff800`00e9534b fffffadc`c0376900 fffffadc`c03769d0 : nt!MmAccessFault+0xa1f
fffffadc`c0376900 fffff800`00ce2cae : 00000000`0000087b 00000000`00000000 fffffadc`c1000000 00000000`00000000 : nt!KiPageFault+0x119
fffffadc`c0376a90 fffffadc`be4a813e : fffffadc`00000001 00000000`00100000 fffffadc`00000000 fffffa80`00677000 : nt!MmMapIoSpace+0x489
fffffadc`c0376b60 fffffadc`be4b28b3 : 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000000 : VIDEOPRT!pVideoPortInitializeInt10+0x4e
fffffadc`c0376ba0 fffff800`00e837c9 : fffffadc`e0511070 fffffadc`e03e69d0 fffffadc`e0511070 fffff800`00e83170 : VIDEOPRT!pVideoPortDispatch+0xca3
fffffadc`c0376cc0 fffff800`00e81164 : fffffadc`e0511070 fffffadc`e0511020 fffffadc`c0376ff0 00000000`00000000 : nt!IopParseDevice+0x1088
fffffadc`c0376e70 fffff800`00e85887 : 00000000`00000000 fffffadc`c0376fe0 00000000`00000240 00000000`00000000 : nt!ObpLookupObjectName+0x931
fffffadc`c0376f80 fffff800`00e92e4d : 00000000`00000001 fffffadc`c03774e0 00000000`00000001 fffff800`00c241ce : nt!ObOpenObjectByName+0x180
fffffadc`c0377170 fffff800`00e99ef7 : fffffa80`0066e4d0 fffff800`00c3c37e fffffa80`0066e4a0 00000000`00000500 : nt!IopCreateFile+0x630
fffffadc`c0377300 fffff800`00e958f9 : 00000000`00000000 fffffa80`00001c80 fffffadc`dff1ac20 fffffadc`e0556750 : nt!IoCreateFile+0x12f
fffffadc`c03773e0 fffff800`00c2e3fd : fffffadc`e0556750 fffffadc`c03774e0 00000000`00000000 00000000`00000000 : nt!NtOpenFile+0x49
fffffadc`c0377460 fffff800`00c2e8c0 : fffff800`00e7ec67 00000000`00000000 000007ff`7c5c9620 00000000`00000000 : nt!KiSystemServiceCopyEnd+0x3
fffffadc`c0377668 fffff800`00e7ec67 : 00000000`00000000 000007ff`7c5c9620 00000000`00000000 00000000`00000001 : nt!KiServiceLinkage
fffffadc`c0377670 fffff97f`ff008587 : 00000000`00000000 00000000`00000000 00000000`00000001 00000000`00000000 : nt!IoGetDeviceObjectPointer+0x57
fffffadc`c0377700 fffff97f`ff00334d : 00000000`00000001 00000000`00000000 00000000`00000003 00000000`00000001 : win32k!DrvUpdateGraphicsDeviceList+0x4ba
fffffadc`c0377900 fffff97f`ff008d8c : fffffadc`c0377a38 00000000`00000000 00000000`01bc8000 00000000`00000000 : win32k!DrvInitConsole+0xd5
fffffadc`c0377970 fffff97f`ff00bb28 : 00000000`01bc8000 00000000`00000000 00000000`00000003 00000000`00000000 : win32k!InitVideo+0xb
fffffadc`c03779e0 fffff97f`ff00b646 : 00000000`00000060 fffffadc`c0377cf0 00000000`00000003 00000000`0000005c : win32k!UserInitialize+0x63c
fffffadc`c0377c20 fffff800`00c2e3fd : fffffadc`000001e0 00000000`00000001 fffffadc`e0556750 00000000`00000020 : win32k!NtUserInitialize+0x15f
fffffadc`c0377c70 000007ff`7c7de86a : 000007ff`7c7deaa9 00000000`001657f0 00000000`001657f0 00000000`00000003 : nt!KiSystemServiceCopyEnd+0x3
00000000`0015fbc8 000007ff`7c7deaa9 : 00000000`001657f0 00000000`001657f0 00000000`00000003 00000000`00000000 : winsrv!NtUserInitialize+0xa
00000000`0015fbd0 000007ff`7c5b3eb8 : 00000000`00000000 00000000`00000001 00000000`001657f0 00000000`00000000 : winsrv!UserServerDllInitialization+0x229
00000000`0015fc50 00000000`00000000 : 00000000`00000001 00000000`001657f0 00000000`00000000 00000000`00100000 : CSRSRV!CsrUnhandledExceptionFilter+0x368


STACK_COMMAND: kb

FOLLOWUP_IP:
VIDEOPRT!pVideoPortInitializeInt10+4e
fffffadc`be4a813e 4c8bcb mov r9,rbx

SYMBOL_STACK_INDEX: 7

SYMBOL_NAME: VIDEOPRT!pVideoPortInitializeInt10+4e

FOLLOWUP_NAME: MachineOwner

MODULE_NAME: VIDEOPRT

IMAGE_NAME: VIDEOPRT.SYS

DEBUG_FLR_IMAGE_TIMESTAMP: 45d69799

FAILURE_BUCKET_ID: X64_0x50_VIDEOPRT!pVideoPortInitializeInt10+4e

BUCKET_ID: X64_0x50_VIDEOPRT!pVideoPortInitializeInt10+4e

Followup: MachineOwner
---------

8: kd> !analyze -v
*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

PAGE_FAULT_IN_NONPAGED_AREA (50)
Invalid system memory was referenced. This cannot be protected by try-except,
it must be protected by a Probe. Typically the address is just plain bad or it
is pointing at freed memory.
Arguments:
Arg1: fffffadcc100202a, memory referenced.
Arg2: 0000000000000000, value 0 = read operation, 1 = write operation.
Arg3: fffff80000ce2cae, If non-zero, the instruction address which referenced the bad memory
address.
Arg4: 0000000000000000, (reserved)

Debugging Details:
------------------


READ_ADDRESS: fffffadcc100202a

FAULTING_IP:
nt!MmMapIoSpace+489
fffff800`00ce2cae 668b4e1a mov cx,word ptr [rsi+1Ah]

MM_INTERNAL_CODE: 0

DEFAULT_BUCKET_ID: DRIVER_FAULT

BUGCHECK_STR: 0x50

PROCESS_NAME: csrss.exe

CURRENT_IRQL: 2

TRAP_FRAME: fffffadcc0376900 -- (.trap 0xfffffadcc0376900)
NOTE: The trap frame does not contain all registers.
Some register values may be zeroed or incorrect.
rax=fffff6fd6e5ec0f0 rbx=0000000000000000 rcx=0000000000000000
rdx=fffffadcc070b101 rsi=0000000000000000 rdi=0000000000000000
rip=fffff80000ce2cae rsp=fffffadcc0376a90 rbp=0000000000000000
r8=000000fffffff000 r9=0000000000000002 r10=0000000000000eff
r11=0000000000000000 r12=0000000000000000 r13=0000000000000000
r14=0000000000000000 r15=0000000000000000
iopl=0 nv up ei ng nz na pe nc
nt!MmMapIoSpace+0x489:
fffff800`00ce2cae 668b4e1a mov cx,word ptr [rsi+1Ah] ds:b180:001a=????
Resetting default scope

LAST_CONTROL_TRANSFER: from fffff80000cd673e to fffff80000c26db0

STACK_TEXT:
fffffadc`c0376148 fffff800`00cd673e : 00000000`00000008 fffffadc`c0376900 fffffadc`c100202a fffff800`00c5669e : nt!DbgBreakPointWithStatus
fffffadc`c0376150 fffff800`00cd7d0e : fffff800`00000003 00000000`00000050 fffffadc`c100202a 00000000`00000000 : nt!KiBugCheckDebugBreak+0x1e
fffffadc`c03761b0 fffff800`00c2ea54 : fffffadc`c0376830 fffffadc`00000004 fffffadc`c0376c64 fffffadc`c0376c10 : nt!KeBugCheck2+0x640
fffffadc`c03767f0 fffff800`00ca58f2 : 00000000`00000050 fffffadc`c100202a 00000000`00000000 fffffadc`c0376900 : nt!KeBugCheckEx+0x104
fffffadc`c0376830 fffff800`00c2d519 : 00000000`00000011 fffff800`00e9534b fffffadc`c0376900 fffffadc`c03769d0 : nt!MmAccessFault+0xa1f
fffffadc`c0376900 fffff800`00ce2cae : 00000000`0000087b 00000000`00000000 fffffadc`c1000000 00000000`00000000 : nt!KiPageFault+0x119
fffffadc`c0376a90 fffffadc`be4a813e : fffffadc`00000001 00000000`00100000 fffffadc`00000000 fffffa80`00677000 : nt!MmMapIoSpace+0x489
fffffadc`c0376b60 fffffadc`be4b28b3 : 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000000 : VIDEOPRT!pVideoPortInitializeInt10+0x4e
fffffadc`c0376ba0 fffff800`00e837c9 : fffffadc`e0511070 fffffadc`e03e69d0 fffffadc`e0511070 fffff800`00e83170 : VIDEOPRT!pVideoPortDispatch+0xca3
fffffadc`c0376cc0 fffff800`00e81164 : fffffadc`e0511070 fffffadc`e0511020 fffffadc`c0376ff0 00000000`00000000 : nt!IopParseDevice+0x1088
fffffadc`c0376e70 fffff800`00e85887 : 00000000`00000000 fffffadc`c0376fe0 00000000`00000240 00000000`00000000 : nt!ObpLookupObjectName+0x931
fffffadc`c0376f80 fffff800`00e92e4d : 00000000`00000001 fffffadc`c03774e0 00000000`00000001 fffff800`00c241ce : nt!ObOpenObjectByName+0x180
fffffadc`c0377170 fffff800`00e99ef7 : fffffa80`0066e4d0 fffff800`00c3c37e fffffa80`0066e4a0 00000000`00000500 : nt!IopCreateFile+0x630
fffffadc`c0377300 fffff800`00e958f9 : 00000000`00000000 fffffa80`00001c80 fffffadc`dff1ac20 fffffadc`e0556750 : nt!IoCreateFile+0x12f
fffffadc`c03773e0 fffff800`00c2e3fd : fffffadc`e0556750 fffffadc`c03774e0 00000000`00000000 00000000`00000000 : nt!NtOpenFile+0x49
fffffadc`c0377460 fffff800`00c2e8c0 : fffff800`00e7ec67 00000000`00000000 000007ff`7c5c9620 00000000`00000000 : nt!KiSystemServiceCopyEnd+0x3
fffffadc`c0377668 fffff800`00e7ec67 : 00000000`00000000 000007ff`7c5c9620 00000000`00000000 00000000`00000001 : nt!KiServiceLinkage
fffffadc`c0377670 fffff97f`ff008587 : 00000000`00000000 00000000`00000000 00000000`00000001 00000000`00000000 : nt!IoGetDeviceObjectPointer+0x57
fffffadc`c0377700 fffff97f`ff00334d : 00000000`00000001 00000000`00000000 00000000`00000003 00000000`00000001 : win32k!DrvUpdateGraphicsDeviceList+0x4ba
fffffadc`c0377900 fffff97f`ff008d8c : fffffadc`c0377a38 00000000`00000000 00000000`01bc8000 00000000`00000000 : win32k!DrvInitConsole+0xd5
fffffadc`c0377970 fffff97f`ff00bb28 : 00000000`01bc8000 00000000`00000000 00000000`00000003 00000000`00000000 : win32k!InitVideo+0xb
fffffadc`c03779e0 fffff97f`ff00b646 : 00000000`00000060 fffffadc`c0377cf0 00000000`00000003 00000000`0000005c : win32k!UserInitialize+0x63c
fffffadc`c0377c20 fffff800`00c2e3fd : fffffadc`000001e0 00000000`00000001 fffffadc`e0556750 00000000`00000020 : win32k!NtUserInitialize+0x15f
fffffadc`c0377c70 000007ff`7c7de86a : 000007ff`7c7deaa9 00000000`001657f0 00000000`001657f0 00000000`00000003 : nt!KiSystemServiceCopyEnd+0x3
00000000`0015fbc8 000007ff`7c7deaa9 : 00000000`001657f0 00000000`001657f0 00000000`00000003 00000000`00000000 : winsrv!NtUserInitialize+0xa
00000000`0015fbd0 000007ff`7c5b3eb8 : 00000000`00000000 00000000`00000001 00000000`001657f0 00000000`00000000 : winsrv!UserServerDllInitialization+0x229
00000000`0015fc50 00000000`00000000 : 00000000`00000001 00000000`001657f0 00000000`00000000 00000000`00100000 : CSRSRV!CsrUnhandledExceptionFilter+0x368


STACK_COMMAND: kb

FOLLOWUP_IP:
VIDEOPRT!pVideoPortInitializeInt10+4e
fffffadc`be4a813e 4c8bcb mov r9,rbx

SYMBOL_STACK_INDEX: 7

SYMBOL_NAME: VIDEOPRT!pVideoPortInitializeInt10+4e

FOLLOWUP_NAME: MachineOwner

MODULE_NAME: VIDEOPRT

IMAGE_NAME: VIDEOPRT.SYS

DEBUG_FLR_IMAGE_TIMESTAMP: 45d69799

FAILURE_BUCKET_ID: X64_0x50_VIDEOPRT!pVideoPortInitializeInt10+4e

BUCKET_ID: X64_0x50_VIDEOPRT!pVideoPortInitializeInt10+4e

Followup: MachineOwner
---------

8: kd> !analyze -v
*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

PAGE_FAULT_IN_NONPAGED_AREA (50)
Invalid system memory was referenced. This cannot be protected by try-except,
it must be protected by a Probe. Typically the address is just plain bad or it
is pointing at freed memory.
Arguments:
Arg1: fffffadcc100202a, memory referenced.
Arg2: 0000000000000000, value 0 = read operation, 1 = write operation.
Arg3: fffff80000ce2cae, If non-zero, the instruction address which referenced the bad memory
address.
Arg4: 0000000000000000, (reserved)

Debugging Details:
------------------


READ_ADDRESS: fffffadcc100202a

FAULTING_IP:
nt!MmMapIoSpace+489
fffff800`00ce2cae 668b4e1a mov cx,word ptr [rsi+1Ah]

MM_INTERNAL_CODE: 0

DEFAULT_BUCKET_ID: DRIVER_FAULT

BUGCHECK_STR: 0x50

PROCESS_NAME: csrss.exe

CURRENT_IRQL: 2

TRAP_FRAME: fffffadcc0376900 -- (.trap 0xfffffadcc0376900)
NOTE: The trap frame does not contain all registers.
Some register values may be zeroed or incorrect.
rax=fffff6fd6e5ec0f0 rbx=0000000000000000 rcx=0000000000000000
rdx=fffffadcc070b101 rsi=0000000000000000 rdi=0000000000000000
rip=fffff80000ce2cae rsp=fffffadcc0376a90 rbp=0000000000000000
r8=000000fffffff000 r9=0000000000000002 r10=0000000000000eff
r11=0000000000000000 r12=0000000000000000 r13=0000000000000000
r14=0000000000000000 r15=0000000000000000
iopl=0 nv up ei ng nz na pe nc
nt!MmMapIoSpace+0x489:
fffff800`00ce2cae 668b4e1a mov cx,word ptr [rsi+1Ah] ds:b180:001a=????
Resetting default scope

LAST_CONTROL_TRANSFER: from fffff80000cd673e to fffff80000c26db0

STACK_TEXT:
fffffadc`c0376148 fffff800`00cd673e : 00000000`00000008 fffffadc`c0376900 fffffadc`c100202a fffff800`00c5669e : nt!DbgBreakPointWithStatus
fffffadc`c0376150 fffff800`00cd7d0e : fffff800`00000003 00000000`00000050 fffffadc`c100202a 00000000`00000000 : nt!KiBugCheckDebugBreak+0x1e
fffffadc`c03761b0 fffff800`00c2ea54 : fffffadc`c0376830 fffffadc`00000004 fffffadc`c0376c64 fffffadc`c0376c10 : nt!KeBugCheck2+0x640
fffffadc`c03767f0 fffff800`00ca58f2 : 00000000`00000050 fffffadc`c100202a 00000000`00000000 fffffadc`c0376900 : nt!KeBugCheckEx+0x104
fffffadc`c0376830 fffff800`00c2d519 : 00000000`00000011 fffff800`00e9534b fffffadc`c0376900 fffffadc`c03769d0 : nt!MmAccessFault+0xa1f
fffffadc`c0376900 fffff800`00ce2cae : 00000000`0000087b 00000000`00000000 fffffadc`c1000000 00000000`00000000 : nt!KiPageFault+0x119
fffffadc`c0376a90 fffffadc`be4a813e : fffffadc`00000001 00000000`00100000 fffffadc`00000000 fffffa80`00677000 : nt!MmMapIoSpace+0x489
fffffadc`c0376b60 fffffadc`be4b28b3 : 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000000 : VIDEOPRT!pVideoPortInitializeInt10+0x4e
fffffadc`c0376ba0 fffff800`00e837c9 : fffffadc`e0511070 fffffadc`e03e69d0 fffffadc`e0511070 fffff800`00e83170 : VIDEOPRT!pVideoPortDispatch+0xca3
fffffadc`c0376cc0 fffff800`00e81164 : fffffadc`e0511070 fffffadc`e0511020 fffffadc`c0376ff0 00000000`00000000 : nt!IopParseDevice+0x1088
fffffadc`c0376e70 fffff800`00e85887 : 00000000`00000000 fffffadc`c0376fe0 00000000`00000240 00000000`00000000 : nt!ObpLookupObjectName+0x931
fffffadc`c0376f80 fffff800`00e92e4d : 00000000`00000001 fffffadc`c03774e0 00000000`00000001 fffff800`00c241ce : nt!ObOpenObjectByName+0x180
fffffadc`c0377170 fffff800`00e99ef7 : fffffa80`0066e4d0 fffff800`00c3c37e fffffa80`0066e4a0 00000000`00000500 : nt!IopCreateFile+0x630
fffffadc`c0377300 fffff800`00e958f9 : 00000000`00000000 fffffa80`00001c80 fffffadc`dff1ac20 fffffadc`e0556750 : nt!IoCreateFile+0x12f
fffffadc`c03773e0 fffff800`00c2e3fd : fffffadc`e0556750 fffffadc`c03774e0 00000000`00000000 00000000`00000000 : nt!NtOpenFile+0x49
fffffadc`c0377460 fffff800`00c2e8c0 : fffff800`00e7ec67 00000000`00000000 000007ff`7c5c9620 00000000`00000000 : nt!KiSystemServiceCopyEnd+0x3
fffffadc`c0377668 fffff800`00e7ec67 : 00000000`00000000 000007ff`7c5c9620 00000000`00000000 00000000`00000001 : nt!KiServiceLinkage
fffffadc`c0377670 fffff97f`ff008587 : 00000000`00000000 00000000`00000000 00000000`00000001 00000000`00000000 : nt!IoGetDeviceObjectPointer+0x57
fffffadc`c0377700 fffff97f`ff00334d : 00000000`00000001 00000000`00000000 00000000`00000003 00000000`00000001 : win32k!DrvUpdateGraphicsDeviceList+0x4ba
fffffadc`c0377900 fffff97f`ff008d8c : fffffadc`c0377a38 00000000`00000000 00000000`01bc8000 00000000`00000000 : win32k!DrvInitConsole+0xd5
fffffadc`c0377970 fffff97f`ff00bb28 : 00000000`01bc8000 00000000`00000000 00000000`00000003 00000000`00000000 : win32k!InitVideo+0xb
fffffadc`c03779e0 fffff97f`ff00b646 : 00000000`00000060 fffffadc`c0377cf0 00000000`00000003 00000000`0000005c : win32k!UserInitialize+0x63c
fffffadc`c0377c20 fffff800`00c2e3fd : fffffadc`000001e0 00000000`00000001 fffffadc`e0556750 00000000`00000020 : win32k!NtUserInitialize+0x15f
fffffadc`c0377c70 000007ff`7c7de86a : 000007ff`7c7deaa9 00000000`001657f0 00000000`001657f0 00000000`00000003 : nt!KiSystemServiceCopyEnd+0x3
00000000`0015fbc8 000007ff`7c7deaa9 : 00000000`001657f0 00000000`001657f0 00000000`00000003 00000000`00000000 : winsrv!NtUserInitialize+0xa
00000000`0015fbd0 000007ff`7c5b3eb8 : 00000000`00000000 00000000`00000001 00000000`001657f0 00000000`00000000 : winsrv!UserServerDllInitialization+0x229
00000000`0015fc50 00000000`00000000 : 00000000`00000001 00000000`001657f0 00000000`00000000 00000000`00100000 : CSRSRV!CsrUnhandledExceptionFilter+0x368


STACK_COMMAND: kb

FOLLOWUP_IP:
VIDEOPRT!pVideoPortInitializeInt10+4e
fffffadc`be4a813e 4c8bcb mov r9,rbx

SYMBOL_STACK_INDEX: 7

SYMBOL_NAME: VIDEOPRT!pVideoPortInitializeInt10+4e

FOLLOWUP_NAME: MachineOwner

MODULE_NAME: VIDEOPRT

IMAGE_NAME: VIDEOPRT.SYS

DEBUG_FLR_IMAGE_TIMESTAMP: 45d69799

FAILURE_BUCKET_ID: X64_0x50_VIDEOPRT!pVideoPortInitializeInt10+4e

BUCKET_ID: X64_0x50_VIDEOPRT!pVideoPortInitializeInt10+4e

Followup: MachineOwner
---------

8: kd> lm
start end module name
00000000`4a680000 00000000`4a686000 csrss (deferred)
00000000`77c20000 00000000`77d2c000 USER32 (deferred)
00000000`77d40000 00000000`77eb3000 KERNEL32 (pdb symbols) c:\symbols\kernel32.pdb\8600FA0E2CE1463C8CDD0CBC26A8D84C2\kernel32.pdb
00000000`77ec0000 00000000`77ff9000 ntdll (pdb symbols) c:\symbols\ntdll.pdb\95DDB8CA2A5D4C0EBF9924339F14E4862\ntdll.pdb
000007ff`7c5b0000 000007ff`7c5cd000 CSRSRV (export symbols) CSRSRV.dll
000007ff`7c7b0000 000007ff`7c7c6000 basesrv (deferred)
000007ff`7c7d0000 000007ff`7c851000 winsrv (pdb symbols) c:\symbols\winsrv.pdb\3579A339B79745F482A2CD61E9A594CF2\winsrv.pdb
000007ff`7fc90000 000007ff`7fd2b000 GDI32 (deferred)
fffff800`00c00000 fffff800`01090000 nt (pdb symbols) c:\symbols\ntkrnlmp.pdb\03185083233249D9BB747EA777B80C982\ntkrnlmp.pdb
fffff800`01090000 fffff800`010ee000 hal (deferred)
fffff97f`fd000000 fffff97f`fd028000 dxg (deferred)
fffff97f`ff000000 fffff97f`ff45f000 win32k (pdb symbols) c:\symbols\win32k.pdb\3E94FFC5B7B84E3999B1CB92A9B3B2372\win32k.pdb
fffffadc`bd8b9000 fffffadc`bd986000 mrxsmb (deferred)
fffffadc`bd986000 fffffadc`bd9d7000 rdbss (deferred)
fffffadc`bd9d7000 fffffadc`bda24000 afd (deferred)
fffffadc`bda24000 fffffadc`bda7e000 netbt (deferred)
fffffadc`bda7e000 fffffadc`bdabc000 ipnat (deferred)
fffffadc`bdabc000 fffffadc`bdbb1000 tcpip (deferred)
fffffadc`bdbb1000 fffffadc`bdbdc000 ipsec (deferred)
fffffadc`bdbdc000 fffffadc`bdbf0000 Npfs (deferred)
fffffadc`bdd16000 fffffadc`bdd56000 portcls (deferred)
fffffadc`bdd56000 fffffadc`bdd80000 nvhda64 (deferred)
fffffadc`bddc6000 fffffadc`bddda000 NDProxy (deferred)
fffffadc`be260000 fffffadc`be27b000 update (deferred)
fffffadc`be27b000 fffffadc`be291000 termdd (deferred)
fffffadc`be291000 fffffadc`be2e8000 rdpdr (deferred)
fffffadc`be2e8000 fffffadc`be2fe000 msgpc (deferred)
fffffadc`be2fe000 fffffadc`be31e000 psched (deferred)
fffffadc`be31e000 fffffadc`be341000 raspptp (deferred)
fffffadc`be341000 fffffadc`be355000 raspppoe (deferred)
fffffadc`be355000 fffffadc`be381000 ndiswan (deferred)
fffffadc`be381000 fffffadc`be3a7000 rasl2tp (deferred)
fffffadc`be3a7000 fffffadc`be3f0000 ks (deferred)
fffffadc`be3f0000 fffffadc`be40d000 i8042prt (deferred)
fffffadc`be40d000 fffffadc`be45e000 e1r51x64 (deferred)
fffffadc`be45e000 fffffadc`be49c000 HDAudBus (deferred)
fffffadc`be49c000 fffffadc`be4bf000 VIDEOPRT (pdb symbols) c:\symbols\videoprt.pdb\A735567342A448C683C9DB1C8BEB2BEE1\videoprt.pdb
fffffadc`be4bf000 fffffadc`befd4e00 nv4_mini (deferred)
fffffadc`bf7d5000 fffffadc`bf7e3000 kbdclass (deferred)
fffffadc`bf7e5000 fffffadc`bf7ee000 wmiacpi (deferred)
fffffadc`bf7f5000 fffffadc`bf803000 vga (deferred)
fffffadc`bf805000 fffffadc`bf80f000 RDPCDD (deferred)
fffffadc`bf815000 fffffadc`bf822000 mouclass (deferred)
fffffadc`bf855000 fffffadc`bf863000 dump_STORAHCI (deferred)
fffffadc`bfe76000 fffffadc`bfeaa000 Mup (deferred)
fffffadc`bfeaa000 fffffadc`bff10000 NDIS (deferred)
fffffadc`bff10000 fffffadc`bff44000 KSecDD (deferred)
fffffadc`bff44000 fffffadc`bff85000 Fastfat (deferred)
fffffadc`bff85000 fffffadc`bffa8000 sr (deferred)
fffffadc`bffa8000 fffffadc`bffe6000 fltMgr (deferred)
fffffadc`bffe6000 fffffadc`c0003000 CLASSPNP (deferred)
fffffadc`c0003000 fffffadc`c0018000 disk (deferred)
fffffadc`c0018000 fffffadc`c007b000 storport (deferred)
fffffadc`c007b000 fffffadc`c00c6000 volsnap (deferred)
fffffadc`c00c6000 fffffadc`c010d000 dmio (deferred)
fffffadc`c010d000 fffffadc`c014d000 ftdisk (deferred)
fffffadc`c014d000 fffffadc`c0163000 MountMgr (deferred)
fffffadc`c0163000 fffffadc`c0184000 pci (deferred)
fffffadc`c0184000 fffffadc`c01f2000 ACPI (deferred)
fffffadc`c02f3000 fffffadc`c0305000 intelppm (deferred)
fffffadc`c0306000 fffffadc`c0318000 wanarp (deferred)
fffffadc`c0319000 fffffadc`c032b000 netbios (deferred)
fffffadc`c032c000 fffffadc`c033e000 Fips (deferred)
fffffadc`c05fb000 fffffadc`c0605000 kdcom (deferred)
fffffadc`c060b000 fffffadc`c0614000 BOOTVID (deferred)
fffffadc`c061b000 fffffadc`c0624000 WMILIB (deferred)
fffffadc`c062b000 fffffadc`c0634000 isapnp (deferred)
fffffadc`c063b000 fffffadc`c064b000 PartMgr (deferred)
fffffadc`c064b000 fffffadc`c0659000 storahci (deferred)
fffffadc`c065b000 fffffadc`c0666000 crcdisk (deferred)
fffffadc`c073b000 fffffadc`c0745000 Fs_Rec (deferred)
fffffadc`c074b000 fffffadc`c0758000 Msfs (deferred)
fffffadc`c079b000 fffffadc`c07a5000 rasacd (deferred)
fffffadc`c07ab000 fffffadc`c07b6000 raspti (deferred)
fffffadc`c07bb000 fffffadc`c07c5000 mnmdd (deferred)
fffffadc`c07cb000 fffffadc`c07d7000 dump_diskdump (deferred)
fffffadc`c07eb000 fffffadc`c07f8000 ptilink (deferred)
fffffadc`c07fb000 fffffadc`c080a000 TDI (deferred)
fffffadc`c080b000 fffffadc`c0814000 watchdog (deferred)
fffffadc`c081b000 fffffadc`c0827000 Dxapi (deferred)
fffffadc`c084b000 fffffadc`c0858000 mssmbios (pdb symbols) c:\symbols\mssmbios.pdb\ECAD413A7E6C4AFEB52606D7E237C5411\mssmbios.pdb
fffffadc`c085b000 fffffadc`c0865000 ndistapi (deferred)
fffffadc`c0873000 fffffadc`c087b000 audstub (deferred)
fffffadc`c087b000 fffffadc`c0883000 Null (deferred)
fffffadc`c09fb000 fffffadc`c0a02000 dmload (deferred)
fffffadc`c0b6e000 fffffadc`c0b73e80 ksthunk (deferred)
fffffadc`c0c32000 fffffadc`c0c39000 Beep (deferred)
fffffadc`c0db3000 fffffadc`c0db4400 swenum (deferred)

Unloaded modules:
fffffadc`bd8a2000 fffffadc`bd8b9000 imapi.sys
fffffadc`bd9c1000 fffffadc`bd9d7000 redbook.sys
fffffadc`bd9b4000 fffffadc`bd9d7000 serial.sys
fffffadc`bdc3b000 fffffadc`bdc56000 cdrom.sys
fffffadc`c075b000 fffffadc`c0764000 Sfloppy.SYS
fffffadc`c082b000 fffffadc`c0837000 Flpydisk.SYS
fffffadc`c071b000 fffffadc`c0729000 Fdc.SYS

#2333AndaluThe USB3.0 drivers modded work correctly on asrock B250M Pro4 with i5 6600 skylake and XP32 (including the USB 3.0 type-C port).
But I can obtain only a 'multiprocessor mps' system, so no ACPI and no multi-core. All the alternative options chosen during XP installation (by pressing F5 or F7 keys) are without ACPI mode or give me BSOD A5. In the updated bios, all the related options seem to be properly configured.

Can I try something else?
#2334infuscomus⇗ @Andalu

have you tried the patched ACPI driver?

¶ Windows XP SP3 32bit and modern PC parts (149)
#2335diderius6I just renamed videoport.sys to videoOriport.sys.
But now it seems, that something is missing

Dietmar

Microsoft (R) Windows Debugger Version 6.12.0002.633 X86
Copyright (c) Microsoft Corporation. All rights reserved.

Opened \\.\com1
Waiting to reconnect...
Connected to Windows Server 2003 3790 x64 target at (Sun Sep 8 11:03:40.531 2019 (UTC + 2:00)), ptr64 TRUE
Kernel Debugger connection established.
WARNING: Inaccessible path: 'C:\WinDDK\7600.16385.1\src\openfabricsall\nvme13\nvme\objchk_wnet_x86\i386'
Symbol search path is: C:\WinDDK\7600.16385.1\src\openfabricsall\nvme13\nvme\objchk_wnet_x86\i386;SRV*c:\symbols
*⇗ http://msdl.microsoft.com/download/symbols;C:\symbols
Executable search path is: C:\localsymbols
Windows Server 2003 Kernel Version 3790 MP (1 procs) Free x64
Built by: 3790.srv03_sp2_rtm.070216-1710
Machine Name:
Kernel base = 0xfffff800`00c00000 PsLoadedModuleList = 0xfffff800`00dd5100
System Uptime: not available
AhciHwFindAdapter finishing
AhciHwFindAdapter finishing
KDTARGET: Refreshing KD connection

*** Fatal System Error: 0xc000021a
(0xFFFFFA80008CE2E0,0x00000000C0000034,0x0000000000000000,0x0000000000000000)


STOP: c000021a {Fatal System Error}
The Session Manager Initialization system process terminated unexpectedly with a status of 0xc0000034 (0x00000000 0x00000000).
The system has been shut down.
Break instruction exception - code 80000003 (first chance)

A fatal system error has occurred.
Debugger entered on first try; Bugcheck callbacks have not been invoked.

A fatal system error has occurred.

Connected to Windows Server 2003 3790 x64 target at (Sun Sep 8 11:04:37.093 2019 (UTC + 2:00)), ptr64 TRUE
Loading Kernel Symbols
...............................................................
.....
Loading User Symbols

Loading unloaded module list
.........
*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

Use !analyze -v to get detailed debugging information.

BugCheck C000021A, {fffffa80008ce2e0, c0000034, 0, 0}

unable to get nt!KiCurrentEtwBufferOffset
unable to get nt!KiCurrentEtwBufferBase
Probably caused by : ntkrnlmp.exe ( nt!NtSetSystemPowerState+826 )

Followup: MachineOwner
---------

nt!DbgBreakPointWithStatus:
fffff800`00c26db0 cc int 3
2: kd> !analyze -v
*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

WINLOGON_FATAL_ERROR (c000021a)
The Winlogon process terminated unexpectedly.
Arguments:
Arg1: fffffa80008ce2e0, String that identifies the problem.
Arg2: 00000000c0000034, Error Code.
Arg3: 0000000000000000
Arg4: 0000000000000000

Debugging Details:
------------------

unable to get nt!KiCurrentEtwBufferOffset
unable to get nt!KiCurrentEtwBufferBase

ERROR_CODE: (NTSTATUS) 0xc000021a - {Daten wurden nicht akzeptiert} Der TDI-Client konnte die empfangenen Daten nicht verarbeiten.

EXCEPTION_CODE: (NTSTATUS) 0xc000021a - {Daten wurden nicht akzeptiert} Der TDI-Client konnte die empfangenen Daten nicht verarbeiten.

EXCEPTION_PARAMETER1: fffffa80008ce2e0

EXCEPTION_PARAMETER2: 00000000c0000034

EXCEPTION_PARAMETER3: 0000000000000000

EXCEPTION_PARAMETER4: 0

ADDITIONAL_DEBUG_TEXT: Session Manager Initialization

BUGCHECK_STR: 0xc000021a_smss.exe_c0000034

DEFAULT_BUCKET_ID: DRIVER_FAULT

PROCESS_NAME: System

CURRENT_IRQL: 2

LAST_CONTROL_TRANSFER: from fffff80000cd673e to fffff80000c26db0

STACK_TEXT:
fffffadc`c0ae8148 fffff800`00cd673e : 00000000`00000002 00000000`00000000 00000000`00000001 fffff800`00c5669e : nt!DbgBreakPointWithStatus
fffffadc`c0ae8150 fffff800`00cd7d0e : fffffadc`00000003 00000000`ffff0025 00000000`ffffffff 00000000`00000000 : nt!KiBugCheckDebugBreak+0x1e
fffffadc`c0ae81b0 fffff800`00c2ea54 : fffffadc`e0453408 fffff800`00fcac4a 00000001`00060000 fffffadc`e06c7080 : nt!KeBugCheck2+0x640
fffffadc`c0ae87f0 fffff800`00fd5a8b : 00000000`0000004c 00000000`c000021a fffffadc`c0bf2608 fffffadc`e051f640 : nt!KeBugCheckEx+0x104
fffffadc`c0ae8830 fffff800`00fd96b1 : ffffffff`8000005c ffffffff`8000005c 00000000`00000000 00000000`00000002 : nt!PopGracefulShutdown+0x32b
fffffadc`c0ae88b0 fffff800`00c2e3fd : fffffadc`00000004 fffff800`00000004 fffffadc`e033e700 fffffadc`e20e77a0 : nt!NtSetSystemPowerState+0x826
fffffadc`c0ae8a60 fffff800`00c2e8c0 : fffff800`00f6c105 fffffadc`e20e77a0 00000000`00000004 fffffadc`e20e7701 : nt!KiSystemServiceCopyEnd+0x3
fffffadc`c0ae8bf8 fffff800`00f6c105 : fffffadc`e20e77a0 00000000`00000004 fffffadc`e20e7701 00000000`e0000004 : nt!KiServiceLinkage
fffffadc`c0ae8c00 fffff800`00f6be6e : 00000000`00000004 fffff800`00d19a90 fffffadc`e20e77a0 00000000`00000002 : nt!PopIssueActionRequest+0x85
fffffadc`c0ae8c60 fffff800`00d19b48 : fffffadc`e0632020 fffff800`00fc2d20 ffffffff`ff676980 00000000`00000002 : nt!PopPolicyWorkerAction+0x6e
fffffadc`c0ae8ca0 fffff800`00c3768a : 00000000`00000000 d14de0c1`83d94500 fffff800`00dd2720 fffff800`00dce9d8 : nt!PopPolicyWorkerThread+0xb9
fffffadc`c0ae8d00 fffff800`00e4b972 : fffffadc`e20e77a0 00000000`00000080 fffffadc`e20e77a0 fffffadc`c0683680 : nt!ExpWorkerThread+0x13b
fffffadc`c0ae8d70 fffff800`00c202d6 : fffffadc`c067b180 fffffadc`e20e77a0 fffffadc`c0683680 00000000`00000000 : nt!PspSystemThreadStartup+0x3e
fffffadc`c0ae8dd0 00000000`00000000 : 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000000 : nt!KxStartSystemThread+0x16


STACK_COMMAND: kb

FOLLOWUP_IP:
nt!NtSetSystemPowerState+826
fffff800`00fd96b1 cc int 3

SYMBOL_STACK_INDEX: 5

SYMBOL_NAME: nt!NtSetSystemPowerState+826

FOLLOWUP_NAME: MachineOwner

MODULE_NAME: nt

IMAGE_NAME: ntkrnlmp.exe

DEBUG_FLR_IMAGE_TIMESTAMP: 45d69ab4

FAILURE_BUCKET_ID: X64_0xc000021a_smss.exe_c0000034_nt!NtSetSystemPowerState+826

BUCKET_ID: X64_0xc000021a_smss.exe_c0000034_nt!NtSetSystemPowerState+826

Followup: MachineOwner
---------

2: kd> lm
start end module name
fffff800`00c00000 fffff800`01090000 nt (pdb symbols) c:\symbols\ntkrnlmp.pdb\03185083233249D9BB747EA777B80C982\ntkrnlmp.pdb
fffff800`01090000 fffff800`010ee000 hal (deferred)
fffffadc`b9b44000 fffffadc`b9c11000 mrxsmb (deferred)
fffffadc`b9c11000 fffffadc`b9c62000 rdbss (deferred)
fffffadc`b9c62000 fffffadc`b9caf000 afd (deferred)
fffffadc`b9caf000 fffffadc`b9d09000 netbt (deferred)
fffffadc`b9d09000 fffffadc`b9d47000 ipnat (deferred)
fffffadc`b9d47000 fffffadc`b9e3c000 tcpip (deferred)
fffffadc`b9e3c000 fffffadc`b9e67000 ipsec (deferred)
fffffadc`b9e67000 fffffadc`b9e7b000 Npfs (deferred)
fffffadc`bd6ef000 fffffadc`bd703000 NDProxy (deferred)
fffffadc`bd703000 fffffadc`bd743000 portcls (deferred)
fffffadc`bd743000 fffffadc`bd76d000 nvhda64 (deferred)
fffffadc`be283000 fffffadc`be29e000 update (deferred)
fffffadc`be29e000 fffffadc`be2b4000 termdd (deferred)
fffffadc`be2b4000 fffffadc`be30b000 rdpdr (deferred)
fffffadc`be30b000 fffffadc`be321000 msgpc (deferred)
fffffadc`be321000 fffffadc`be341000 psched (deferred)
fffffadc`be341000 fffffadc`be364000 raspptp (deferred)
fffffadc`be364000 fffffadc`be378000 raspppoe (deferred)
fffffadc`be378000 fffffadc`be3a4000 ndiswan (deferred)
fffffadc`be3a4000 fffffadc`be3ca000 rasl2tp (deferred)
fffffadc`be3ca000 fffffadc`be413000 ks (deferred)
fffffadc`be413000 fffffadc`be430000 i8042prt (deferred)
fffffadc`be430000 fffffadc`be481000 e1r51x64 (deferred)
fffffadc`be481000 fffffadc`be4bf000 HDAudBus (deferred)
fffffadc`bf7d5000 fffffadc`bf7df000 rasacd (deferred)
fffffadc`bf805000 fffffadc`bf812000 mssmbios (pdb symbols) c:\symbols\mssmbios.pdb\ECAD413A7E6C4AFEB52606D7E237C5411\mssmbios.pdb
fffffadc`bf845000 fffffadc`bf84e000 wmiacpi (deferred)
fffffadc`bfe76000 fffffadc`bfeaa000 Mup (deferred)
fffffadc`bfeaa000 fffffadc`bff10000 NDIS (deferred)
fffffadc`bff10000 fffffadc`bff44000 KSecDD (deferred)
fffffadc`bff44000 fffffadc`bff85000 Fastfat (deferred)
fffffadc`bff85000 fffffadc`bffa8000 sr (deferred)
fffffadc`bffa8000 fffffadc`bffe6000 fltMgr (deferred)
fffffadc`bffe6000 fffffadc`c0003000 CLASSPNP (deferred)
fffffadc`c0003000 fffffadc`c0018000 disk (deferred)
fffffadc`c0018000 fffffadc`c007b000 storport (deferred)
fffffadc`c007b000 fffffadc`c00c6000 volsnap (deferred)
fffffadc`c00c6000 fffffadc`c010d000 dmio (deferred)
fffffadc`c010d000 fffffadc`c014d000 ftdisk (deferred)
fffffadc`c014d000 fffffadc`c0163000 MountMgr (deferred)
fffffadc`c0163000 fffffadc`c0184000 pci (deferred)
fffffadc`c0184000 fffffadc`c01f2000 ACPI (deferred)
fffffadc`c02f3000 fffffadc`c0305000 intelppm (deferred)
fffffadc`c0306000 fffffadc`c0318000 wanarp (deferred)
fffffadc`c0319000 fffffadc`c032b000 netbios (deferred)
fffffadc`c032c000 fffffadc`c033e000 Fips (deferred)
fffffadc`c05fb000 fffffadc`c0605000 kdcom (deferred)
fffffadc`c060b000 fffffadc`c0614000 BOOTVID (deferred)
fffffadc`c061b000 fffffadc`c0624000 WMILIB (deferred)
fffffadc`c062b000 fffffadc`c0634000 isapnp (deferred)
fffffadc`c063b000 fffffadc`c064b000 PartMgr (deferred)
fffffadc`c064b000 fffffadc`c0659000 storahci (deferred)
fffffadc`c065b000 fffffadc`c0666000 crcdisk (deferred)
fffffadc`c074b000 fffffadc`c0755000 ndistapi (deferred)
fffffadc`c076b000 fffffadc`c077a000 TDI (deferred)
fffffadc`c078b000 fffffadc`c0799000 kbdclass (deferred)
fffffadc`c07bb000 fffffadc`c07c6000 raspti (deferred)
fffffadc`c07db000 fffffadc`c07e8000 ptilink (deferred)
fffffadc`c082b000 fffffadc`c0838000 Msfs (deferred)
fffffadc`c083b000 fffffadc`c0845000 Fs_Rec (deferred)
fffffadc`c084b000 fffffadc`c0858000 mouclass (deferred)
fffffadc`c087b000 fffffadc`c0883000 audstub (deferred)
fffffadc`c0883000 fffffadc`c088b000 Null (deferred)
fffffadc`c09fb000 fffffadc`c0a02000 dmload (deferred)
fffffadc`c0b6e000 fffffadc`c0b73e80 ksthunk (deferred)
fffffadc`c0bd7000 fffffadc`c0bde000 Beep (deferred)
fffffadc`c0db3000 fffffadc`c0db4400 swenum (deferred)

Unloaded modules:
fffffadc`c073b000 fffffadc`c0747000 dump_storport.sys
fffffadc`bf835000 fffffadc`bf843000 dump_STORAHCI.sys
fffffadc`b9b2d000 fffffadc`b9b44000 imapi.sys
fffffadc`b9c4c000 fffffadc`b9c62000 redbook.sys
fffffadc`b9c3f000 fffffadc`b9c62000 serial.sys
fffffadc`b9f00000 fffffadc`b9f1b000 cdrom.sys
fffffadc`c071b000 fffffadc`c0724000 Sfloppy.SYS
fffffadc`bf855000 fffffadc`bf861000 Flpydisk.SYS
fffffadc`bf7f5000 fffffadc`bf803000 Fdc.SYS

#2336Andalu⇗ @infuscomus
Sure, I attached the HDD on another machine to copy ACPI.sys in the system32\drivers folder.
#2337diderius6Now I changed ntoskrnl.exe, hal.dll, videoport.sys against their DEBUG version.
So, this is the best output, what windbg gives you.
The problem is at the same part in videoport.sys
Dietmar

PS: I have no idea how to hack this. May be it can be done )!


Microsoft (R) Windows Debugger Version 6.12.0002.633 X86
Copyright (c) Microsoft Corporation. All rights reserved.

Opened \\.\com1
Waiting to reconnect...
Connected to Windows Server 2003 3790 x64 target at (Sun Sep 8 11:24:22.968 2019 (UTC + 2:00)), ptr64 TRUE
Kernel Debugger connection established.
WARNING: Inaccessible path: 'C:\WinDDK\7600.16385.1\src\openfabricsall\nvme13\nvme\objchk_wnet_x86\i386'
Symbol search path is: C:\WinDDK\7600.16385.1\src\openfabricsall\nvme13\nvme\objchk_wnet_x86\i386;SRV*c:\symbols
*⇗ http://msdl.microsoft.com/download/symbols;C:\symbols
Executable search path is: C:\localsymbols
Windows Server 2003 Kernel Version 3790 MP (1 procs) Checked x64
Built by: 3790.srv03_sp2_rtm.070216-1710
Machine Name:
Kernel base = 0xfffff800`00c00000 PsLoadedModuleList = 0xfffff800`00fd1fd0
System Uptime: not available
AhciHwFindAdapter finishing
AhciHwFindAdapter finishing
KDTARGET: Refreshing KD connection
VideoPort: This is an ACPI Machine !

*** Assertion failed: (Pfn1->u3.e2.ReferenceCount != 0) || ((Pfn1->u3.e1.Rom == 1) && (CacheType == MmCached))
*** Source File: d:\nt\base\ntos\mm\iosup.c, line 9066

Break repeatedly, break Once, Ignore, terminate Process, or terminate Thread (boipt)? i
i

*** Assertion failed: (Pfn1->u3.e2.ReferenceCount != 0) || ((Pfn1->u3.e1.Rom == 1) && (CacheType == MmCached))
*** Source File: d:\nt\base\ntos\mm\iosup.c, line 9066

Break repeatedly, break Once, Ignore, terminate Process, or terminate Thread (boipt)? i
i

*** Assertion failed: (Pfn1->u3.e2.ReferenceCount != 0) || ((Pfn1->u3.e1.Rom == 1) && (CacheType == MmCached))
*** Source File: d:\nt\base\ntos\mm\iosup.c, line 9066

Break repeatedly, break Once, Ignore, terminate Process, or terminate Thread (boipt)? i
i

*** Assertion failed: (Pfn1->u3.e2.ReferenceCount != 0) || ((Pfn1->u3.e1.Rom == 1) && (CacheType == MmCached))
*** Source File: d:\nt\base\ntos\mm\iosup.c, line 9066

Break repeatedly, break Once, Ignore, terminate Process, or terminate Thread (boipt)? i
i
HAL: RTC interrupt flag is not cleared by first read.

*** Assertion failed: (Pfn1->u3.e2.ReferenceCount != 0) || ((Pfn1->u3.e1.Rom == 1) && (CacheType == MmCached))
*** Source File: d:\nt\base\ntos\mm\iosup.c, line 9066

Break repeatedly, break Once, Ignore, terminate Process, or terminate Thread (boipt)? i
i
RTC Status Register C = 0xc0

*** Assertion failed: (Pfn1->u3.e2.ReferenceCount != 0) || ((Pfn1->u3.e1.Rom == 1) && (CacheType == MmCached))
*** Source File: d:\nt\base\ntos\mm\iosup.c, line 9066

Break repeatedly, break Once, Ignore, terminate Process, or terminate Thread (boipt)? i
i

*** Assertion failed: (Pfn1->u3.e2.ReferenceCount != 0) || ((Pfn1->u3.e1.Rom == 1) && (CacheType == MmCached))
*** Source File: d:\nt\base\ntos\mm\iosup.c, line 9066

Break repeatedly, break Once, Ignore, terminate Process, or terminate Thread (boipt)? i
i

*** Assertion failed: (Pfn1->u3.e2.ReferenceCount != 0) || ((Pfn1->u3.e1.Rom == 1) && (CacheType == MmCached))
*** Source File: d:\nt\base\ntos\mm\iosup.c, line 9066

Break repeatedly, break Once, Ignore, terminate Process, or terminate Thread (boipt)? i
i
HAL: RTC interrupt flag is not cleared by first read.

*** Assertion failed: (Pfn1->u3.e2.ReferenceCount != 0) || ((Pfn1->u3.e1.Rom == 1) && (CacheType == MmCached))
*** Source File: d:\nt\base\ntos\mm\iosup.c, line 9066

Break repeatedly, break Once, Ignore, terminate Process, or terminate Thread (boipt)? i
i
RTC Status Register C = 0xd0

*** Assertion failed: (Pfn1->u3.e2.ReferenceCount != 0) || ((Pfn1->u3.e1.Rom == 1) && (CacheType == MmCached))
*** Source File: d:\nt\base\ntos\mm\iosup.c, line 9066

Break repeatedly, break Once, Ignore, terminate Process, or terminate Thread (boipt)? i
i

*** Assertion failed: (Pfn1->u3.e2.ReferenceCount != 0) || ((Pfn1->u3.e1.Rom == 1) && (CacheType == MmCached))
*** Source File: d:\nt\base\ntos\mm\iosup.c, line 9066

Break repeatedly, break Once, Ignore, terminate Process, or terminate Thread (boipt)? i
i

*** Assertion failed: (Pfn1->u3.e2.ReferenceCount != 0) || ((Pfn1->u3.e1.Rom == 1) && (CacheType == MmCached))
*** Source File: d:\nt\base\ntos\mm\iosup.c, line 9066

Break repeatedly, break Once, Ignore, terminate Process, or terminate Thread (boipt)? i
i
HAL: RTC interrupt flag is not cleared by first read.

*** Assertion failed: (Pfn1->u3.e2.ReferenceCount != 0) || ((Pfn1->u3.e1.Rom == 1) && (CacheType == MmCached))
*** Source File: d:\nt\base\ntos\mm\iosup.c, line 9066

Break repeatedly, break Once, Ignore, terminate Process, or terminate Thread (boipt)? i
i
RTC Status Register C = 0xc0

*** Fatal System Error: 0x00000050
(0xFFFFFADCC1002028,0x0000000000000000,0xFFFFF80000C90624,0x0000000000000000)

Break instruction exception - code 80000003 (first chance)

A fatal system error has occurred.
Debugger entered on first try; Bugcheck callbacks have not been invoked.

A fatal system error has occurred.

Connected to Windows Server 2003 3790 x64 target at (Sun Sep 8 11:26:03.078 2019 (UTC + 2:00)), ptr64 TRUE
Loading Kernel Symbols
...............................................................
................
Loading User Symbols
........
Loading unloaded module list
.......
*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

Use !analyze -v to get detailed debugging information.

BugCheck 50, {fffffadcc1002028, 0, fffff80000c90624, 0}

*** ERROR: Symbol file could not be found. Defaulted to export symbols for CSRSRV.dll -
Probably caused by : VIDEOPRT.SYS ( VIDEOPRT!pVideoPortInitializeInt10+52 )

Followup: MachineOwner
---------

nt!RtlpBreakWithStatusInstruction:
fffff800`00da02e0 cc int 3
8: kd> !analyze -v
*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

PAGE_FAULT_IN_NONPAGED_AREA (50)
Invalid system memory was referenced. This cannot be protected by try-except,
it must be protected by a Probe. Typically the address is just plain bad or it
is pointing at freed memory.
Arguments:
Arg1: fffffadcc1002028, memory referenced.
Arg2: 0000000000000000, value 0 = read operation, 1 = write operation.
Arg3: fffff80000c90624, If non-zero, the instruction address which referenced the bad memory
address.
Arg4: 0000000000000000, (reserved)

Debugging Details:
------------------


READ_ADDRESS: fffffadcc1002028

FAULTING_IP:
nt!MmMapIoSpace+564
fffff800`00c90624 6641837d1800 cmp word ptr [r13+18h],0

MM_INTERNAL_CODE: 0

DEFAULT_BUCKET_ID: DRIVER_FAULT

BUGCHECK_STR: 0x50

PROCESS_NAME: CSRSS.EXE

CURRENT_IRQL: 2

TRAP_FRAME: fffffadcc03768f0 -- (.trap 0xfffffadcc03768f0)
NOTE: The trap frame does not contain all registers.
Some register values may be zeroed or incorrect.
rax=fffffadcc0370007 rbx=0000000000000000 rcx=fffff8000109ec2c
rdx=0000000000000006 rsi=0000000000000000 rdi=0000000000000000
rip=fffff80000c90624 rsp=fffffadcc0376a80 rbp=0000000000000000
r8=0000000000000007 r9=0000000081c031b5 r10=fffff80000f5e948
r11=0000000000000008 r12=0000000000000000 r13=0000000000000000
r14=0000000000000000 r15=0000000000000000
iopl=0 nv up ei ng nz na pe nc
nt!MmMapIoSpace+0x564:
fffff800`00c90624 6641837d1800 cmp word ptr [r13+18h],0 ds:000f:0018=????
Resetting default scope

LAST_CONTROL_TRANSFER: from fffff80000c5d707 to fffff80000da02e0

STACK_TEXT:
fffffadc`c0376108 fffff800`00c5d707 : 00000000`40000082 00000000`00000050 00000000`00000008 fffffadc`c03768f0 : nt!RtlpBreakWithStatusInstruction
fffffadc`c0376110 fffff800`00c5e9a0 : fffff800`00000003 00000000`00000050 fffffadc`c1002028 00000000`00000000 : nt!KiBugCheckDebugBreak+0x17
fffffadc`c0376180 fffff800`00d97144 : 00000000`00000050 fffffadc`c1002028 00000000`00000000 fffffadc`c03768f0 : nt!KeBugCheck2+0x630
fffffadc`c03767c0 fffff800`00d3982d : 00000000`00000050 fffffadc`c1002028 00000000`00000000 fffffadc`c03768f0 : nt!KeBugCheckEx+0x104
fffffadc`c0376800 fffff800`00da5059 : 00000000`00000000 fffffadc`c1002028 00000000`00000100 fffffadc`c03768f0 : nt!MmAccessFault+0x162d
fffffadc`c03768f0 fffff800`00c90624 : fffff800`00000000 fffff800`00000007 fffff800`00f5e948 fffffadc`c0376ae0 : nt!KiPageFault+0x119
fffffadc`c0376a80 fffffadc`be3ad212 : 00000000`00000000 00000000`00100000 fffffadc`00000000 fffffadc`be3a2950 : nt!MmMapIoSpace+0x564
fffffadc`c0376b70 fffffadc`be3bbc42 : fffffadc`def751d0 fffffadc`be3c7460 00000000`00000000 fffff780`00000008 : VIDEOPRT!pVideoPortInitializeInt10+0x52
fffffadc`c0376bc0 fffff800`010bb08a : fffffadc`def75080 fffffadc`dfc72cf0 fffffadc`c0376e00 fffff800`00000000 : VIDEOPRT!pVideoPortDispatch+0xf32
fffffadc`c0376cf0 fffff800`0114d53b : fffffadc`def75080 00000000`00000000 fffffadc`c0377010 fffffa80`009d8f00 : nt!IopParseDevice+0x13ca
fffffadc`c0376e70 fffff800`01153e47 : 00000000`00000000 fffffadc`c0377000 fffffadc`00000200 00000000`00000000 : nt!ObpLookupObjectName+0xacb
fffffadc`c0376f90 fffff800`0109f329 : fffffadc`c03776c0 00000000`00000000 fffff800`010a0400 00000000`00000000 : nt!ObOpenObjectByName+0x257
fffffadc`c0377190 fffff800`0109ec2c : fffffadc`c03776a0 fffffa80`00000000 fffffadc`c03776c0 fffffadc`c03776b0 : nt!IopCreateFile+0x599
fffffadc`c0377300 fffff800`010ab16f : fffffadc`c03776a0 fffff800`00000000 fffffadc`c03776c0 fffffadc`c03776b0 : nt!IoCreateFile+0x1bc
fffffadc`c03773e0 fffff800`00da5f43 : fffffadc`c03776a0 fffff800`00000000 fffffadc`c03776c0 fffffadc`c03776b0 : nt!NtOpenFile+0xaf
fffffadc`c0377460 fffff800`00da63c0 : fffff800`010a0577 fffffadc`c03776a0 00000000`00000000 fffffadc`c03776c0 : nt!KiSystemServiceCopyEnd+0x3
fffffadc`c0377668 fffff800`010a0577 : fffffadc`c03776a0 00000000`00000000 fffffadc`c03776c0 fffffadc`c03776b0 : nt!KiServiceLinkage
fffffadc`c0377670 fffff97f`ff008587 : fffffadc`c0377850 fffffadc`00000000 fffffadc`c0377780 fffffadc`c0377770 : nt!IoGetDeviceObjectPointer+0xa7
fffffadc`c0377700 fffff97f`ff00334d : 00000000`00000001 00000000`00000000 00000000`00000003 00000000`00000001 : win32k!DrvUpdateGraphicsDeviceList+0x4ba
fffffadc`c0377900 fffff97f`ff008d8c : fffffadc`df44b9e0 00000000`00000000 00000000`01bc8000 00000000`00000000 : win32k!DrvInitConsole+0xd5
fffffadc`c0377970 fffff97f`ff00bb28 : fffffa80`008b0e10 fffff97f`fcff0b80 fffffadc`c0377a38 fffffadc`c0377a78 : win32k!InitVideo+0xb
fffffadc`c03779e0 fffff97f`ff00b646 : 00000000`00000154 fffffadc`c0377cf0 00000000`00000003 00000000`00000150 : win32k!UserInitialize+0x63c
fffffadc`c0377c20 fffff800`00da5f43 : 00000000`00000001 00000000`0015fa40 fffffadc`df0e65f0 00000000`00000020 : win32k!NtUserInitialize+0x15f
fffffadc`c0377c70 000007ff`7c7de86a : 000007ff`7c7deaa9 00000000`001657f0 00000000`001657f0 00000000`00000003 : nt!KiSystemServiceCopyEnd+0x3
00000000`0015fbc8 000007ff`7c7deaa9 : 00000000`001657f0 00000000`001657f0 00000000`00000003 00000000`00000000 : winsrv!NtUserInitialize+0xa
00000000`0015fbd0 000007ff`7c5b3eb8 : 00000000`00000000 00000000`00000001 00000000`001657f0 00000000`00000000 : winsrv!UserServerDllInitialization+0x229
00000000`0015fc50 00000000`00000000 : 00000000`00000001 00000000`001657f0 00000000`00000000 00000000`00100000 : CSRSRV!CsrUnhandledExceptionFilter+0x368


STACK_COMMAND: kb

FOLLOWUP_IP:
VIDEOPRT!pVideoPortInitializeInt10+52
fffffadc`be3ad212 4885c0 test rax,rax

SYMBOL_STACK_INDEX: 7

SYMBOL_NAME: VIDEOPRT!pVideoPortInitializeInt10+52

FOLLOWUP_NAME: MachineOwner

MODULE_NAME: VIDEOPRT

IMAGE_NAME: VIDEOPRT.SYS

DEBUG_FLR_IMAGE_TIMESTAMP: 45d70045

FAILURE_BUCKET_ID: X64_0x50_VIDEOPRT!pVideoPortInitializeInt10+52

BUCKET_ID: X64_0x50_VIDEOPRT!pVideoPortInitializeInt10+52

Followup: MachineOwner
---------

8: kd> lm
start end module name
00000000`4a680000 00000000`4a686000 csrss (deferred)
00000000`77c20000 00000000`77d2c000 USER32 (deferred)
00000000`77d40000 00000000`77eb3000 KERNEL32 (pdb symbols) c:\symbols\kernel32.pdb\8600FA0E2CE1463C8CDD0CBC26A8D84C2\kernel32.pdb
00000000`77ec0000 00000000`77ff9000 ntdll (pdb symbols) c:\symbols\ntdll.pdb\95DDB8CA2A5D4C0EBF9924339F14E4862\ntdll.pdb
000007ff`7c5b0000 000007ff`7c5cd000 CSRSRV (export symbols) CSRSRV.dll
000007ff`7c7b0000 000007ff`7c7c6000 basesrv (deferred)
000007ff`7c7d0000 000007ff`7c851000 winsrv (pdb symbols) c:\symbols\winsrv.pdb\3579A339B79745F482A2CD61E9A594CF2\winsrv.pdb
000007ff`7fc90000 000007ff`7fd2b000 GDI32 (deferred)
fffff800`00c00000 fffff800`01354000 nt (pdb symbols) c:\symbols\ntkrnlmp.pdb\61159976B2E549B2B431DC7329C4B4B51\ntkrnlmp.pdb
fffff800`01354000 fffff800`013ba000 hal (deferred)
fffff97f`fd000000 fffff97f`fd028000 dxg (deferred)
fffff97f`ff000000 fffff97f`ff45f000 win32k (pdb symbols) c:\symbols\win32k.pdb\3E94FFC5B7B84E3999B1CB92A9B3B2372\win32k.pdb
fffffadc`bd8a0000 fffffadc`bd96d000 mrxsmb (deferred)
fffffadc`bd96d000 fffffadc`bd9be000 rdbss (deferred)
fffffadc`bd9be000 fffffadc`bda0b000 afd (deferred)
fffffadc`bda0b000 fffffadc`bda65000 netbt (deferred)
fffffadc`bda65000 fffffadc`bdaa3000 ipnat (deferred)
fffffadc`bdaa3000 fffffadc`bdb98000 tcpip (deferred)
fffffadc`bdb98000 fffffadc`bdbc3000 ipsec (deferred)
fffffadc`bdbc3000 fffffadc`bdbd7000 Npfs (deferred)
fffffadc`bdc5d000 fffffadc`bdc9d000 portcls (deferred)
fffffadc`bdc9d000 fffffadc`bdcc7000 nvhda64 (deferred)
fffffadc`bdcc7000 fffffadc`bdcdb000 NDProxy (deferred)
fffffadc`be161000 fffffadc`be17c000 update (deferred)
fffffadc`be17c000 fffffadc`be192000 termdd (deferred)
fffffadc`be192000 fffffadc`be1e9000 rdpdr (deferred)
fffffadc`be1e9000 fffffadc`be1ff000 msgpc (deferred)
fffffadc`be1ff000 fffffadc`be21f000 psched (deferred)
fffffadc`be21f000 fffffadc`be242000 raspptp (deferred)
fffffadc`be242000 fffffadc`be256000 raspppoe (deferred)
fffffadc`be256000 fffffadc`be282000 ndiswan (deferred)
fffffadc`be282000 fffffadc`be2a8000 rasl2tp (deferred)
fffffadc`be2a8000 fffffadc`be2f1000 ks (deferred)
fffffadc`be2f1000 fffffadc`be30e000 i8042prt (deferred)
fffffadc`be30e000 fffffadc`be35f000 e1r51x64 (deferred)
fffffadc`be35f000 fffffadc`be39d000 HDAudBus (deferred)
fffffadc`be39d000 fffffadc`be3cf000 VIDEOPRT (pdb symbols) c:\symbols\videoprt.pdb\49E376C44D0944CF8DA5E04E57F0BE071\videoprt.pdb
fffffadc`be447000 fffffadc`bef5ce00 nv4_mini (deferred)
fffffadc`bef5d000 fffffadc`bef66000 watchdog (deferred)
fffffadc`bef6d000 fffffadc`bef79000 Dxapi (deferred)
fffffadc`bef9d000 fffffadc`befab000 kbdclass (deferred)
fffffadc`befbd000 fffffadc`befc7000 ndistapi (deferred)
fffffadc`befcd000 fffffadc`befd6000 wmiacpi (deferred)
fffffadc`befed000 fffffadc`beffc000 TDI (deferred)
fffffadc`bf76c000 fffffadc`bf77a000 dump_STORAHCI (deferred)
fffffadc`bf783000 fffffadc`bf790000 mssmbios (pdb symbols) c:\symbols\mssmbios.pdb\ECAD413A7E6C4AFEB52606D7E237C5411\mssmbios.pdb
fffffadc`bf7df000 fffffadc`bf7e9000 Fs_Rec (deferred)
fffffadc`bf7ff000 fffffadc`bf80b000 dump_diskdump (deferred)
fffffadc`bfe76000 fffffadc`bfeaa000 Mup (deferred)
fffffadc`bfeaa000 fffffadc`bff10000 NDIS (deferred)
fffffadc`bff10000 fffffadc`bff44000 KSecDD (deferred)
fffffadc`bff44000 fffffadc`bff85000 Fastfat (deferred)
fffffadc`bff85000 fffffadc`bffa8000 sr (deferred)
fffffadc`bffa8000 fffffadc`bffe6000 fltMgr (deferred)
fffffadc`bffe6000 fffffadc`c0003000 CLASSPNP (deferred)
fffffadc`c0003000 fffffadc`c0018000 disk (deferred)
fffffadc`c0018000 fffffadc`c007b000 storport (deferred)
fffffadc`c007b000 fffffadc`c00c6000 volsnap (deferred)
fffffadc`c00c6000 fffffadc`c010d000 dmio (deferred)
fffffadc`c010d000 fffffadc`c014d000 ftdisk (deferred)
fffffadc`c014d000 fffffadc`c0163000 MountMgr (deferred)
fffffadc`c0163000 fffffadc`c0184000 pci (deferred)
fffffadc`c0184000 fffffadc`c01f2000 ACPI (deferred)
fffffadc`c02f3000 fffffadc`c0305000 intelppm (deferred)
fffffadc`c0306000 fffffadc`c0318000 wanarp (deferred)
fffffadc`c0319000 fffffadc`c032b000 netbios (deferred)
fffffadc`c032c000 fffffadc`c033e000 Fips (deferred)
fffffadc`c05fb000 fffffadc`c0605000 kdcom (deferred)
fffffadc`c060b000 fffffadc`c0614000 BOOTVID (deferred)
fffffadc`c061b000 fffffadc`c0624000 WMILIB (deferred)
fffffadc`c062b000 fffffadc`c0634000 isapnp (deferred)
fffffadc`c063b000 fffffadc`c064b000 PartMgr (deferred)
fffffadc`c064b000 fffffadc`c0659000 storahci (deferred)
fffffadc`c065b000 fffffadc`c0666000 crcdisk (deferred)
fffffadc`c071b000 fffffadc`c0725000 mnmdd (deferred)
fffffadc`c078b000 fffffadc`c0798000 mouclass (deferred)
fffffadc`c079b000 fffffadc`c07a9000 vga (deferred)
fffffadc`c07cb000 fffffadc`c07d8000 Msfs (deferred)
fffffadc`c081b000 fffffadc`c0825000 RDPCDD (deferred)
fffffadc`c082b000 fffffadc`c0836000 raspti (deferred)
fffffadc`c084b000 fffffadc`c0855000 rasacd (deferred)
fffffadc`c085b000 fffffadc`c0868000 ptilink (deferred)
fffffadc`c0873000 fffffadc`c087b000 audstub (deferred)
fffffadc`c087b000 fffffadc`c0883000 Null (deferred)
fffffadc`c09fb000 fffffadc`c0a02000 dmload (deferred)
fffffadc`c0bad000 fffffadc`c0bb2e80 ksthunk (deferred)
fffffadc`c0c63000 fffffadc`c0c6a000 Beep (deferred)
fffffadc`c0db5000 fffffadc`c0db6400 swenum (deferred)

Unloaded modules:
fffffadc`bd889000 fffffadc`bd8a0000 imapi.sys
fffffadc`bd9a8000 fffffadc`bd9be000 redbook.sys
fffffadc`bd99b000 fffffadc`bd9be000 serial.sys
fffffadc`bdbdc000 fffffadc`bdbf7000 cdrom.sys
fffffadc`c076b000 fffffadc`c0774000 Sfloppy.SYS
fffffadc`c075b000 fffffadc`c0767000 Flpydisk.SYS
fffffadc`c07eb000 fffffadc`c07f9000 Fdc.SYS

#2338Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #2337

PS: I have no idea how to hack this. May be it can be done )!


 
mov     dword ptr [rsp+38h+PhysicalAddress], 0
....
xor eax, eax
mov dword ptr [rsp+38h+PhysicalAddress+4], eax
mov rcx, qword ptr [rsp+38h+PhysicalAddress] ; PhysicalAddress
mov edx, 100000h ; NumberOfBytes
call cs:__imp_MmMapIoSpace <- ERROR !


it try to map memory at PHYSICAL adress at 0x0000000 with length = 1Megabyte (low DOS memory range) to be accessable to kernel
if csm is ON this error shouldn't be

#2339Gelip
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #2331
probably error in next proc, pVideoPortInitializeInt10

Probably yes because on VMware in 6021 (EFI bios) binres in VGA rom module DC9E5943-0EB5-42C6-8F43-B081A91DF78E there is some INT10 routine that is not in the memory under C000 in WinXP:
#2340GelipI test ASUS. If in bios set VGA priority to PCI (i have not PCI card in slot PCI only iGPU integrated in CPU i3) and disable CSM then no error VIDEOPORT.SYS in WinDbg while boot WinXP x64 but instead, the OS auto restarts and bios display info:
The VGA card is not supported by UEFI driver.

 

Page 157

#2341Gelip@diderius
Are you testing with graphics cards that have GOP firmware?
#2342diderius6⇗ @Gelip

Yes, but yesterday I tested on the Giga H110 board also without the nvidia card GT 730
hangs also
Dietmar
#2343Gelip@diderius
Have you tested running WinXP x64 under UEFI with a GOP card and with the NVIDIA drivers installed for WinXP x64 ???
#2344diderius6⇗ @Gelip

yes )

Dietmar
#2345Gelip@diderius
This means that the GOP card will not help :-(
In that case, I will not buy a card that has GOP firmware.
#2346infuscomus⇗ @diderius6

videoprt.sys from vista beta 5048 x86 and x64 again matches imports from XP - can you test if it works OK with XP?

EDIT:
oops! watchdog.sys has several missing imports

watchdog.sys 5048 missing 1 import - KdRefreshDebuggerNotPresent (can this import be removed without breaking it?)

EDIT2:
I was dumb and was looking at x86 versions, not x64
x64 versions seem to not have any missing imports
#2347diderius6⇗ @infuscomus

I just copy the videoprt.sys from 5048 64 bit to the harddsik Windows\system32\drivers

But now comes the same error as if no videoprt.sys is there and it is also not listed under the loaded modules
Dietmar

Microsoft (R) Windows Debugger Version 6.12.0002.633 X86
Copyright (c) Microsoft Corporation. All rights reserved.

Opened \\.\com1
Waiting to reconnect...
Connected to Windows Server 2003 3790 x64 target at (Sun Sep 8 13:59:20.250 2019 (UTC + 2:00)), ptr64 TRUE
Kernel Debugger connection established.
WARNING: Inaccessible path: 'C:\WinDDK\7600.16385.1\src\openfabricsall\nvme13\nvme\objchk_wnet_x86\i386'
Symbol search path is: C:\WinDDK\7600.16385.1\src\openfabricsall\nvme13\nvme\objchk_wnet_x86\i386;SRV*c:\symbols
*⇗ http://msdl.microsoft.com/download/symbols;C:\symbols
Executable search path is: C:\localsymbols
Windows Server 2003 Kernel Version 3790 MP (1 procs) Checked x64
Built by: 3790.srv03_sp2_rtm.070216-1710
Machine Name:
Kernel base = 0xfffff800`00c00000 PsLoadedModuleList = 0xfffff800`00fd1fd0
System Uptime: not available
AhciHwFindAdapter finishing
AhciHwFindAdapter finishing
PipCallDriverAddDevice: Ignoring driver load failure (status = c000026c) until user-mode PnPMgr comes online
KDTARGET: Refreshing KD connection
PipCallDriverAddDevice: Ignoring driver load failure (status = c000026c) until user-mode PnPMgr comes online
PipCallDriverAddDevice: Ignoring driver load failure (status = c000026c) until user-mode PnPMgr comes online
PipCallDriverAddDevice: Ignoring driver load failure (status = c000026c) until user-mode PnPMgr comes online
PipCallDriverAddDevice: Ignoring driver load failure (status = c000026c) until user-mode PnPMgr comes online
PipCallDriverAddDevice: Ignoring driver load failure (status = c000026c) until user-mode PnPMgr comes online
PipCallDriverAddDevice: Ignoring driver load failure (status = c000026c) until user-mode PnPMgr comes online
PipCallDriverAddDevice: Ignoring driver load failure (status = c000026c) until user-mode PnPMgr comes online
HALACPI: The BIOS wants the OS to preserve 3ae000 bytes

*** Fatal System Error: 0xc000021a
(0xFFFFFA80007096B0,0x00000000C0000263,0x0000000000000000,0x0000000000000000)


STOP: c000021a {Fatal System Error}
The Session Manager Initialization system process terminated unexpectedly with a status of 0xc0000263 (0x00000000 0x00000000).
The system has been shut down.
Break instruction exception - code 80000003 (first chance)

A fatal system error has occurred.
Debugger entered on first try; Bugcheck callbacks have not been invoked.

A fatal system error has occurred.

Connected to Windows Server 2003 3790 x64 target at (Sun Sep 8 14:00:54.906 2019 (UTC + 2:00)), ptr64 TRUE
Loading Kernel Symbols
...............................................................
......
Loading User Symbols

Loading unloaded module list
.........
*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

Use !analyze -v to get detailed debugging information.

BugCheck C000021A, {fffffa80007096b0, c0000263, 0, 0}

unable to get nt!KiCurrentEtwBufferOffset
unable to get nt!KiCurrentEtwBufferBase
Probably caused by : ntkrnlmp.exe ( nt!NtSetSystemPowerState+958 )

Followup: MachineOwner
---------

nt!RtlpBreakWithStatusInstruction:
fffff800`00da02e0 cc int 3
2: kd> !analyze -v
*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

WINLOGON_FATAL_ERROR (c000021a)
The Winlogon process terminated unexpectedly.
Arguments:
Arg1: fffffa80007096b0, String that identifies the problem.
Arg2: 00000000c0000263, Error Code.
Arg3: 0000000000000000
Arg4: 0000000000000000

Debugging Details:
------------------

unable to get nt!KiCurrentEtwBufferOffset
unable to get nt!KiCurrentEtwBufferBase

ERROR_CODE: (NTSTATUS) 0xc000021a - {Daten wurden nicht akzeptiert} Der TDI-Client konnte die empfangenen Daten nicht verarbeiten.

EXCEPTION_CODE: (NTSTATUS) 0xc000021a - {Daten wurden nicht akzeptiert} Der TDI-Client konnte die empfangenen Daten nicht verarbeiten.

EXCEPTION_PARAMETER1: fffffa80007096b0

EXCEPTION_PARAMETER2: 00000000c0000263

EXCEPTION_PARAMETER3: 0000000000000000

EXCEPTION_PARAMETER4: 0

ADDITIONAL_DEBUG_TEXT: Session Manager Initialization

BUGCHECK_STR: 0xc000021a_smss.exe_c0000263

DEFAULT_BUCKET_ID: DRIVER_FAULT

PROCESS_NAME: System

CURRENT_IRQL: 2

LAST_CONTROL_TRANSFER: from fffff80000c5d707 to fffff80000da02e0

STACK_TEXT:
fffffadc`c0ae8108 fffff800`00c5d707 : 00000000`40000082 00000000`0000004c 00000000`00000002 00000000`00000000 : nt!RtlpBreakWithStatusInstruction
fffffadc`c0ae8110 fffff800`00c5e9a0 : fffffadc`00000003 00000000`ffff0025 00000000`ffffffff 00000000`00000000 : nt!KiBugCheckDebugBreak+0x17
fffffadc`c0ae8180 fffff800`00d97144 : 00000000`0000004c 00000000`c000021a fffffadc`c0c1c600 fffffadc`df5293c0 : nt!KeBugCheck2+0x630
fffffadc`c0ae87c0 fffff800`0126883c : 00000000`0000004c 00000000`c000021a fffffadc`c0c1c600 fffffadc`df5293c0 : nt!KeBugCheckEx+0x104
fffffadc`c0ae8800 fffff800`0126c4d8 : 00000000`00000000 fffffadc`00000000 fffff800`00000005 fffffadc`c0ae88a8 : nt!PopGracefulShutdown+0x48c
fffffadc`c0ae8860 fffff800`00da5f43 : 00000000`00000004 fffffadc`00000004 00000000`e0000004 00000000`00000200 : nt!NtSetSystemPowerState+0x958
fffffadc`c0ae8a00 fffff800`00da63c0 : fffff800`0116210b 00000000`00000004 00000000`00000004 00000000`e0000004 : nt!KiSystemServiceCopyEnd+0x3
fffffadc`c0ae8b98 fffff800`0116210b : 00000000`00000004 00000000`00000004 00000000`e0000004 00000000`c0000004 : nt!KiServiceLinkage
fffffadc`c0ae8ba0 fffff800`01161d35 : fffffadc`c067b700 fffffadc`00000004 00000000`00000004 fffff800`c0000004 : nt!PopIssueActionRequest+0x8b
fffffadc`c0ae8c20 fffff800`00d69725 : 00000000`00000000 00000000`00000000 00000000`00000000 fffffadc`df14d2c0 : nt!PopPolicyWorkerAction+0x45
fffffadc`c0ae8c70 fffff800`00d8a634 : 00000000`80000000 0deb47b9`d31cfa01 00000000`00000000 4dfb07a9`930cba46 : nt!PopPolicyWorkerThread+0x185
fffffadc`c0ae8ce0 fffff800`011762de : 00000000`00000001 f2af5786`1df48971 5856ccd3`e5b9b72d 7854ecf1`c5bb972f : nt!ExpWorkerThread+0x194
fffffadc`c0ae8d70 fffff800`00d9fe96 : fffff800`00d8a4a0 00000000`00000001 fffff800`011762a0 8ae10682`5e442fc8 : nt!PspSystemThreadStartup+0x3e
fffffadc`c0ae8dd0 00000000`00000000 : 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000000 : nt!KxStartSystemThread+0x16


STACK_COMMAND: kb

FOLLOWUP_IP:
nt!NtSetSystemPowerState+958
fffff800`0126c4d8 cc int 3

SYMBOL_STACK_INDEX: 5

SYMBOL_NAME: nt!NtSetSystemPowerState+958

FOLLOWUP_NAME: MachineOwner

MODULE_NAME: nt

IMAGE_NAME: ntkrnlmp.exe

DEBUG_FLR_IMAGE_TIMESTAMP: 45d70b7b

FAILURE_BUCKET_ID: X64_0xc000021a_smss.exe_c0000263_nt!NtSetSystemPowerState+958

BUCKET_ID: X64_0xc000021a_smss.exe_c0000263_nt!NtSetSystemPowerState+958

Followup: MachineOwner
---------

2: kd> lm
start end module name
fffff800`00c00000 fffff800`01354000 nt (pdb symbols) c:\symbols\ntkrnlmp.pdb\61159976B2E549B2B431DC7329C4B4B51\ntkrnlmp.pdb
fffff800`01354000 fffff800`013ba000 hal (deferred)
fffffadc`b9946000 fffffadc`b9a13000 mrxsmb (deferred)
fffffadc`b9a13000 fffffadc`b9a64000 rdbss (deferred)
fffffadc`b9a64000 fffffadc`b9ab1000 afd (deferred)
fffffadc`b9ab1000 fffffadc`b9b0b000 netbt (deferred)
fffffadc`b9b0b000 fffffadc`b9b49000 ipnat (deferred)
fffffadc`b9b49000 fffffadc`b9c3e000 tcpip (deferred)
fffffadc`b9c3e000 fffffadc`b9c69000 ipsec (deferred)
fffffadc`b9c69000 fffffadc`b9c7d000 Npfs (deferred)
fffffadc`bd5a9000 fffffadc`bd5bd000 NDProxy (deferred)
fffffadc`bd5bd000 fffffadc`bd5fd000 portcls (deferred)
fffffadc`bd5fd000 fffffadc`bd627000 nvhda64 (deferred)
fffffadc`be168000 fffffadc`be183000 update (deferred)
fffffadc`be183000 fffffadc`be199000 termdd (deferred)
fffffadc`be1df000 fffffadc`be236000 rdpdr (deferred)
fffffadc`be236000 fffffadc`be24c000 msgpc (deferred)
fffffadc`be24c000 fffffadc`be26c000 psched (deferred)
fffffadc`be26c000 fffffadc`be28f000 raspptp (deferred)
fffffadc`be28f000 fffffadc`be2a3000 raspppoe (deferred)
fffffadc`be2a3000 fffffadc`be2cf000 ndiswan (deferred)
fffffadc`be2cf000 fffffadc`be2f5000 rasl2tp (deferred)
fffffadc`be2f5000 fffffadc`be33e000 ks (deferred)
fffffadc`be33e000 fffffadc`be35b000 i8042prt (deferred)
fffffadc`be35b000 fffffadc`be3ac000 e1r51x64 (deferred)
fffffadc`be3ac000 fffffadc`be3ea000 HDAudBus (deferred)
fffffadc`bf79f000 fffffadc`bf7a8000 wmiacpi (deferred)
fffffadc`bf7bf000 fffffadc`bf7c9000 Fs_Rec (deferred)
fffffadc`bf80f000 fffffadc`bf81e000 TDI (deferred)
fffffadc`bfe76000 fffffadc`bfeaa000 Mup (deferred)
fffffadc`bfeaa000 fffffadc`bff10000 NDIS (deferred)
fffffadc`bff10000 fffffadc`bff44000 KSecDD (deferred)
fffffadc`bff44000 fffffadc`bff85000 Fastfat (deferred)
fffffadc`bff85000 fffffadc`bffa8000 sr (deferred)
fffffadc`bffa8000 fffffadc`bffe6000 fltMgr (deferred)
fffffadc`bffe6000 fffffadc`c0003000 CLASSPNP (deferred)
fffffadc`c0003000 fffffadc`c0018000 disk (deferred)
fffffadc`c0018000 fffffadc`c007b000 storport (deferred)
fffffadc`c007b000 fffffadc`c00c6000 volsnap (deferred)
fffffadc`c00c6000 fffffadc`c010d000 dmio (deferred)
fffffadc`c010d000 fffffadc`c014d000 ftdisk (deferred)
fffffadc`c014d000 fffffadc`c0163000 MountMgr (deferred)
fffffadc`c0163000 fffffadc`c0184000 pci (deferred)
fffffadc`c0184000 fffffadc`c01f2000 ACPI (deferred)
fffffadc`c02f3000 fffffadc`c0305000 intelppm (deferred)
fffffadc`c0306000 fffffadc`c0318000 wanarp (deferred)
fffffadc`c0319000 fffffadc`c032b000 netbios (deferred)
fffffadc`c032c000 fffffadc`c033e000 Fips (deferred)
fffffadc`c05fb000 fffffadc`c0605000 kdcom (deferred)
fffffadc`c060b000 fffffadc`c0614000 BOOTVID (deferred)
fffffadc`c061b000 fffffadc`c0624000 WMILIB (deferred)
fffffadc`c062b000 fffffadc`c0634000 isapnp (deferred)
fffffadc`c063b000 fffffadc`c064b000 PartMgr (deferred)
fffffadc`c064b000 fffffadc`c0659000 storahci (deferred)
fffffadc`c065b000 fffffadc`c0666000 crcdisk (deferred)
fffffadc`c073b000 fffffadc`c0748000 mssmbios (pdb symbols) c:\symbols\mssmbios.pdb\ECAD413A7E6C4AFEB52606D7E237C5411\mssmbios.pdb
fffffadc`c076b000 fffffadc`c0774000 watchdog (deferred)
fffffadc`c07ab000 fffffadc`c07b9000 kbdclass (deferred)
fffffadc`c07cb000 fffffadc`c07d5000 ndistapi (deferred)
fffffadc`c07db000 fffffadc`c07e8000 mouclass (deferred)
fffffadc`c080b000 fffffadc`c0818000 ptilink (deferred)
fffffadc`c081b000 fffffadc`c0825000 rasacd (deferred)
fffffadc`c084b000 fffffadc`c0858000 Msfs (deferred)
fffffadc`c085b000 fffffadc`c0866000 raspti (deferred)
fffffadc`c086b000 fffffadc`c0873000 audstub (deferred)
fffffadc`c0873000 fffffadc`c087b000 Null (deferred)
fffffadc`c09fb000 fffffadc`c0a02000 dmload (deferred)
fffffadc`c0b98000 fffffadc`c0b9de80 ksthunk (deferred)
fffffadc`c0bfa000 fffffadc`c0c01000 Beep (deferred)
fffffadc`c0db5000 fffffadc`c0db6400 swenum (deferred)

Unloaded modules:
fffffadc`c075b000 fffffadc`c0767000 dump_storport.sys
fffffadc`c071b000 fffffadc`c0729000 dump_STORAHCI.sys
fffffadc`b992f000 fffffadc`b9946000 imapi.sys
fffffadc`b9a4e000 fffffadc`b9a64000 redbook.sys
fffffadc`b9a41000 fffffadc`b9a64000 serial.sys
fffffadc`b9ce3000 fffffadc`b9cfe000 cdrom.sys
fffffadc`bf7af000 fffffadc`bf7b8000 Sfloppy.SYS
fffffadc`befbd000 fffffadc`befc9000 Flpydisk.SYS
fffffadc`c074b000 fffffadc`c0759000 Fdc.SYS
#2348infuscomus⇗ @diderius6

watchdog.sys 5048 is also needed

My guess is it does not work right now because of missing imports

EDIT:
I was dumb and was looking at x86 versions, not x64
x64 versions seem to not have any missing imports
#2349diderius6⇗ @infuscomus
Here are the 2 files from 5048 64 bit
unmodded
Dietmar



diderius6 has attached files to this post
#2350infuscomus⇗ @diderius6

no missing imports for these - earlier I was looking at x86 versions by mistake which does have missing imports

can you try and boot XP x64 in CSM mode with these drivers?
#2351diderius6⇗ @infuscomus

Later in the evening,
because now I hurry to family meeting
Dietmar
#2352GelipMy ASUS has GOP firmware for iGPU graphics card in motherboard bios but to be available in the system the computer and operating system must be running without CSM. I just installed Win10 without CSM and GPU-Z shows that GOP is present. As confirmation, I checked the bios 1408.bin in UBU (UEFI BIOS Updater):


If CSM is enabled then legacy OROM VBIOS SNB-IVB 2143 is used instead.

P.S. I don't have to buy a PCIe graphics card with GOP for WinXP x64 testing :-)
#2353GelipI installed the IntelHD driver and now WinDbg shows that it is his error and not videoprt.sys:
Microsoft (R) Windows Debugger Version 6.11.0001.404 AMD64
Copyright (c) Microsoft Corporation. All rights reserved.

Opened \\.\com1
Waiting to reconnect...
Connected to Windows Server 2003 3790 x64 target at (Sun Sep 8 13:39:57.774 2019 (GMT+2)), ptr64 TRUE
Kernel Debugger connection established.
Symbol search path is: *** Invalid ***
****************************************************************************
* Symbol loading may be unreliable without a symbol search path. *
* Use .symfix to have the debugger choose a symbol path. *
* After setting your symbol path, use .reload to refresh symbol locations. *
****************************************************************************
Executable search path is:
*********************************************************************
* Symbols can not be loaded because symbol path is not initialized. *
* *
* The Symbol Path can be set by: *
* using the _NT_SYMBOL_PATH environment variable. *
* using the -y <symbol_path> argument when starting the debugger. *
* using .sympath and .sympath+ *
*********************************************************************
*** ERROR: Symbol file could not be found. Defaulted to export symbols for ntkrnlmp.exe -
Windows Server 2003 Kernel Version 3790 MP (1 procs) Free x64
Built by: 3790.srv03_sp2_rtm.070216-1710
Machine Name:
Kernel base = 0xfffff800`01800000 PsLoadedModuleList = 0xfffff800`019d5100
System Uptime: not available


Intel Storage Driver Ver: 11.2.0.1006

KDTARGET: Refreshing KD connection

*** Fatal System Error: 0x00000050
(0xFFFFF80000090000,0x0000000000000000,0xFFFFF80001CA664D,0x0000000000000000)

Break instruction exception - code 80000003 (first chance)

A fatal system error has occurred.
Debugger entered on first try; Bugcheck callbacks have not been invoked.

A fatal system error has occurred.

*********************************************************************
* Symbols can not be loaded because symbol path is not initialized. *
* *
* The Symbol Path can be set by: *
* using the _NT_SYMBOL_PATH environment variable. *
* using the -y <symbol_path> argument when starting the debugger. *
* using .sympath and .sympath+ *
*********************************************************************
*** ERROR: Symbol file could not be found. Defaulted to export symbols for ntkrnlmp.exe -
*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

Use !analyze -v to get detailed debugging information.

BugCheck 50, {fffff80000090000, 0, fffff80001ca664d, 0}

*** ERROR: Symbol file could not be found. Defaulted to export symbols for ntdll.dll -
***** Kernel symbols are WRONG. Please fix symbols to do analysis.

*** ERROR: Module load completed but symbols could not be loaded for mssmbios.sys
*************************************************************************
*** ***
*** ***
*** Your debugger is not using the correct symbols ***
*** ***
*** In order for this command to work properly, your symbol path ***
*** must point to .pdb files that have full type information. ***
*** ***
*** Certain .pdb files (such as the public OS symbols) do not ***
*** contain the required information. Contact the group that ***
*** provided you with these symbols if you need this command to ***
*** work. ***
*** ***
*** Type referenced: nt!_KPRCB ***
*** ***
*************************************************************************
*** ERROR: Symbol file could not be found. Defaulted to export symbols for hal.dll -
*** ERROR: Symbol file could not be found. Defaulted to export symbols for VIDEOPRT.SYS -
*** ERROR: Module load completed but symbols could not be loaded for igxpmp64.sys
*** ERROR: Symbol file could not be found. Defaulted to export symbols for win32k.sys -
*** ERROR: Symbol file could not be found. Defaulted to export symbols for igxpdv64.DLL -
*** ERROR: Symbol file could not be found. Defaulted to export symbols for igxpgd64.dll -
*** ERROR: Module load completed but symbols could not be loaded for igxprd64.dll
*************************************************************************
*** ***
*** ***
*** Your debugger is not using the correct symbols ***
*** ***
*** In order for this command to work properly, your symbol path ***
*** must point to .pdb files that have full type information. ***
*** ***
*** Certain .pdb files (such as the public OS symbols) do not ***
*** contain the required information. Contact the group that ***
*** provided you with these symbols if you need this command to ***
*** work. ***
*** ***
*** Type referenced: nt!_KPRCB ***
*** ***
*************************************************************************
*************************************************************************
*** ***
*** ***
*** Your debugger is not using the correct symbols ***
*** ***
*** In order for this command to work properly, your symbol path ***
*** must point to .pdb files that have full type information. ***
*** ***
*** Certain .pdb files (such as the public OS symbols) do not ***
*** contain the required information. Contact the group that ***
*** provided you with these symbols if you need this command to ***
*** work. ***
*** ***
*** Type referenced: nt!_KPRCB ***
*** ***
*************************************************************************
*********************************************************************
* Symbols can not be loaded because symbol path is not initialized. *
* *
* The Symbol Path can be set by: *
* using the _NT_SYMBOL_PATH environment variable. *
* using the -y <symbol_path> argument when starting the debugger. *
* using .sympath and .sympath+ *
*********************************************************************
*********************************************************************
* Symbols can not be loaded because symbol path is not initialized. *
* *
* The Symbol Path can be set by: *
* using the _NT_SYMBOL_PATH environment variable. *
* using the -y <symbol_path> argument when starting the debugger. *
* using .sympath and .sympath+ *
*********************************************************************
Probably caused by : igxpmp64.sys ( igxpmp64_fffffadfc85a4000+26a3e )

Followup: MachineOwner
---------

nt!DbgBreakPointWithStatus:
fffff800`01826db0 cc int 3
#2354skullteria
Zitat von ⇗ Gelip im Beitrag ¶ #2329
I connected WinDbg to ASUS and it turns out that the problem is caused by the VIDEOPRT.SYS file and/or the AHCI driver regardless of whether we use the AnaPa driver or boot the system without any graphics driver (vga and VgaSave services removed):
Microsoft (R) Windows Debugger Version 6.11.0001.404 AMD64
Copyright (c) Microsoft Corporation. All rights reserved.

Opened \\.\com1
Waiting to reconnect...
Connected to Windows Server 2003 3790 x64 target at (Sun Sep 8 09:14:38.008 2019 (GMT+2)), ptr64 TRUE
Kernel Debugger connection established.
Symbol search path is: *** Invalid ***
****************************************************************************
* Symbol loading may be unreliable without a symbol search path. *
* Use .symfix to have the debugger choose a symbol path. *
* After setting your symbol path, use .reload to refresh symbol locations. *
****************************************************************************
Executable search path is:
*********************************************************************
* Symbols can not be loaded because symbol path is not initialized. *
* *
* The Symbol Path can be set by: *
* using the _NT_SYMBOL_PATH environment variable. *
* using the -y <symbol_path> argument when starting the debugger. *
* using .sympath and .sympath+ *
*********************************************************************
*** ERROR: Symbol file could not be found. Defaulted to export symbols for ntkrnlmp.exe -
Windows Server 2003 Kernel Version 3790 MP (1 procs) Free x64
Built by: 3790.srv03_sp2_rtm.070216-1710
Machine Name:
Kernel base = 0xfffff800`01800000 PsLoadedModuleList = 0xfffff800`019d5100
System Uptime: not available


Intel Storage Driver Ver: 11.2.0.1006

KDTARGET: Refreshing KD connection

*** Fatal System Error: 0x00000050
(0xFFFFFADFCB40202A,0x0000000000000000,0xFFFFF800018E2CAE,0x0000000000000000)

Break instruction exception - code 80000003 (first chance)

A fatal system error has occurred.
Debugger entered on first try; Bugcheck callbacks have not been invoked.

A fatal system error has occurred.

*********************************************************************
* Symbols can not be loaded because symbol path is not initialized. *
* *
* The Symbol Path can be set by: *
* using the _NT_SYMBOL_PATH environment variable. *
* using the -y <symbol_path> argument when starting the debugger. *
* using .sympath and .sympath+ *
*********************************************************************
*** ERROR: Symbol file could not be found. Defaulted to export symbols for ntkrnlmp.exe -
*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

Use !analyze -v to get detailed debugging information.

BugCheck 50, {fffffadfcb40202a, 0, fffff800018e2cae, 0}

*** ERROR: Symbol file could not be found. Defaulted to export symbols for ntdll.dll -
***** Kernel symbols are WRONG. Please fix symbols to do analysis.

*** ERROR: Module load completed but symbols could not be loaded for mssmbios.sys
*************************************************************************
*** ***
*** ***
*** Your debugger is not using the correct symbols ***
*** ***
*** In order for this command to work properly, your symbol path ***
*** must point to .pdb files that have full type information. ***
*** ***
*** Certain .pdb files (such as the public OS symbols) do not ***
*** contain the required information. Contact the group that ***
*** provided you with these symbols if you need this command to ***
*** work. ***
*** ***
*** Type referenced: nt!_KPRCB ***
*** ***
*************************************************************************
*** ERROR: Symbol file could not be found. Defaulted to export symbols for VIDEOPRT.SYS -
*** ERROR: Symbol file could not be found. Defaulted to export symbols for win32k.sys -
*************************************************************************
*** ***
*** ***
*** Your debugger is not using the correct symbols ***
*** ***
*** In order for this command to work properly, your symbol path ***
*** must point to .pdb files that have full type information. ***
*** ***
*** Certain .pdb files (such as the public OS symbols) do not ***
*** contain the required information. Contact the group that ***
*** provided you with these symbols if you need this command to ***
*** work. ***
*** ***
*** Type referenced: nt!_KPRCB ***
*** ***
*************************************************************************
*************************************************************************
*** ***
*** ***
*** Your debugger is not using the correct symbols ***
*** ***
*** In order for this command to work properly, your symbol path ***
*** must point to .pdb files that have full type information. ***
*** ***
*** Certain .pdb files (such as the public OS symbols) do not ***
*** contain the required information. Contact the group that ***
*** provided you with these symbols if you need this command to ***
*** work. ***
*** ***
*** Type referenced: nt!_KPRCB ***
*** ***
*************************************************************************
*********************************************************************
* Symbols can not be loaded because symbol path is not initialized. *
* *
* The Symbol Path can be set by: *
* using the _NT_SYMBOL_PATH environment variable. *
* using the -y <symbol_path> argument when starting the debugger. *
* using .sympath and .sympath+ *
*********************************************************************
*********************************************************************
* Symbols can not be loaded because symbol path is not initialized. *
* *
* The Symbol Path can be set by: *
* using the _NT_SYMBOL_PATH environment variable. *
* using the -y <symbol_path> argument when starting the debugger. *
* using .sympath and .sympath+ *
*********************************************************************
Probably caused by : VIDEOPRT.SYS ( VIDEOPRT!VideoPortSetTrappedEmulatorPorts+5e )

Followup: MachineOwner
---------

nt!DbgBreakPointWithStatus:
fffff800`01826db0 cc int 3

   




VGA and VGASAVE are fallback if no video driver are installed. It these drivers are not present or removed from registry, windows not show interface
#2355Gelip
Zitat von ⇗ skullteria im Beitrag ¶ #2354
VGA and VGASAVE are fallback if no video driver are installed. It these drivers are not present or removed from registry, windows not show interface

Yes I know about it. After removing these services from the registry, you can start WinXP x64 without a graphics driver under UEFI having, for example, access via Remote Desktop.

It looks like not on every UEFI computer - just like with the AnaPa driver.

 

Page 158

#2356GelipI confirm what WinDbg shows when IntelHD drivers are installed:

  • if CSM is enable then videoprt.sys error
  • if CSM is disabled then igxpmp64.sys error
#2357diderius6⇗ @infuscomus
"can you try and boot XP x64 in CSM mode with these drivers?"

I just try and I get the same BSOD as with videoprt.sys 5048 alone

Dietmar
#2358skullteria
Zitat von ⇗ diderius6 im Beitrag ¶ #2357
@infuscomus
"can you try and boot XP x64 in CSM mode with these drivers?"

I just try and I get the same BSOD as with videoprt.sys 5048 alone

Dietmar


Well, i think we will don't have support for any XDDM based driver. Videoprt use int10 instruction. On AMD64, int10 instruction (used to video support, on BIOS) is emulated. However, only dxgkrnl support driver without int10, on WDDM model
#2359GelipMaybe files from some version of ReactOS will help because they are constantly making patches: ⇗ reactos/win32ss/drivers/videoprt
or
files from beta Longhorn Server 2008 or beta Longhorn Vista like efi files?

Why does WinXP x64 boot from UEFI on some computers and not on others e.g working on ThinkPad X220, ASRock Z170 Pro4S ???

Why WinXP boot from UEFI on VMware Workstation even with a graphics driver (VMware Tools) ???

Instead of patching system files, maybe it is better to patch the motherboard or graphics card BIOS?

⇗ @Illen
From >¶ this< post it follows that it depends on the graphics card and therefore its firmware VBIOS ROM.
#2360infuscomus⇗ @Gelip ⇗ @diderius6

Does Vista RTM boot properly in UEFI mode on boards that have trouble booting XP x64?
#2361diderius6⇗ @infuscomus

I have not tried yet.
Just now I make another try:
May be it can be done with winload.efi
from win8
have a nice day
Dietmar

EDIT: bootx64.efi from win8 works as good as the one from Longhorn.
#2362skullteriaWell, winload can't load Windows XP/2003 since Windows. Always Computer restart...I think winload from win8 works is almost impossible
#2363diderius6⇗ @skullteria

Yes, winload.efi from win8 64 bit first asks for apisetschema.dll.
I give it, but then always restart, debug not possible.
What is your latest version from Vista, Win7, that can start XP via its winload
Dietmar
#2364skullteria
Zitat von ⇗ diderius6 im Beitrag ¶ #2363
@skullteria

Yes, winload.efi from win8 64 bit first asks for apisetschema.dll.
I give it, but then always restart, debug not possible.
What is your latest version from Vista, Win7, that can start XP via its winload
Dietmar



Vista, lastest version. Windows 7 any version doesn't works. Please, confirm to me, winload.exe can start Windows XP x64 (not UEFI)?
#2365Andalu
Zitat von ⇗ Andalu im Beitrag ¶ #2333
The USB3.0 drivers modded work correctly on asrock B250M Pro4 with i5 6600 skylake and XP32 (including the USB 3.0 type-C port).
But I can obtain only a 'multiprocessor mps' system, so no ACPI and no multi-core. All the alternative options chosen during XP installation (by pressing F5 or F7 keys) are without ACPI mode or give me BSOD A5. In the updated bios, all the related options seem to be properly configured.
Can I try something else?

I found a workaround for the problem I quoted above and so I post it here, maybe it can be useful for other owners of this motherboard. I will try to explain the procedure step by step in the hope that my poor english can be at least clear a bit.

1. I downgraded the bios from the latest version installed to the first released (1.00) - also tried intermediate versions without success - (thanks to member Mov AX, 0xDEAD for ¶ this tip);
2. At next reboot, I loaded default bios settings leaving the 'XHCI hand-off' option on disable;
3. I started the XP installation using the method described ⇗ here by the member Hardwarejiri (thanks to him too);
4. I pressed the usual F5 key and I chosen the 'ACPI Multiprocessor PC' from the list and the installation goes on with no BSOD A5 for the first time in my attempts;
5. The XP installation continues in the normal mode until it blocks on a 'asms' file request;
6. At this point, I turned it off manually, extracted the pendrive and inserted the XP installation disc in the internal optical disc drive and I restarted the machine;
7. At next boot, the installation continues from the disc and it goes on until the classic azure screen appears (no BSOD here :)) but the manual restart is needed again;
8. Now, finally, XP starts as usual. In the device manager the 'ACPI Multiprocessor PC' now appears in addition to cpu's cores previously not visible.

I then successfully installed the USB3.0 drivers modded and, for last, i updated the bios to the latest version (2.50) et voila, no change has occurred, everything seems to work as before even if the 'XHCI hand-off' option is now enabled by default.
During the XP installation the usb mouse did not work even if the ps2 emulation was enabled in the bios.
I have tried again to install XP on the upgraded bios but i still got the BSOD A5.

One last thingh I have not a solution: while the shutdown works correctly, the restart won't, it always hangs.
I will attempt for a solution...... any suggest is appreciated.

#2366diderius6⇗ @skullteria

I am on FAT32 with XP64
and it seems not to be possible via EasyBCD 1.7.2 to install the bootmgr with Vista MBR there
Dietmar
#2367skullteria
Zitat von ⇗ diderius6 im Beitrag ¶ #2366
@skullteria

I am on FAT32 with XP64
and it seems not to be possible via EasyBCD 1.7.2 to install the bootmgr with Vista MBR there
Dietmar


Well, maybe because Windows Vista only support NTFS as system file system.
#2368Gelip
Zitat von ⇗ skullteria im Beitrag ¶ #2364
Zitat von ⇗ diderius6 im Beitrag ¶ #2363
@skullteria

Yes, winload.efi from win8 64 bit first asks for apisetschema.dll.
I give it, but then always restart, debug not possible.
What is your latest version from Vista, Win7, that can start XP via its winload
Dietmar



Vista, lastest version. Windows 7 any version doesn't works. Please, confirm to me, winload.exe can start Windows XP x64 (not UEFI)?

I checked many versions of bootx64.efi (bootmgfw.efi) and winload.efi from several dozen beta versions of Vista Longhorn, Server 2008, regular Vista, 7, 8, 10
The version of efi files older than from Server 2008 16497 cannot run WinXP x64 because there is a black screen with a white bar at the top:

With efi files newer than 16497 WinXP not boot and error 0xc000000f:

Read this my post: ⇗ https://www.betaarchive.com/forum/viewto...=433499#p433499

winload.exe can start WinXP x64 in legacy (not UEFI) but also from beta server 16497:

To make possible boot over winload.exe you need:
  • format partition from later OS than WinXP e.g. Win7 diskpart because he adds an entry in PBR that looks for the bootmgr file:

    You can fix this in WinPE (Win7) using the bootrec /fixboot command
  • folder Boot with BCD file and Fonts folder with wgl4_boot.ttf
  • in BCD ApplicationPath to \WINDOWS\system32\winload.exe


But there is the same startup problem as in UEFI mode with the file winload.efi

winload.exe in Legacy mode and winload.efi in UEFI mode cause the same problem, please read my post: ⇗ https://www.betaarchive.com/forum/viewto...=443358#p443358

I really recommend that you read the entire topic ⇗ Does Windows XP have EFI? carefully from beginning to end because there are many things checked and tested.
#2369Lost_N_BIOSYou guys post a lot in here, every day this thread is blowing up!  Maybe the most active thread here  
#2370Gelip
Zitat von ⇗ Lost_N_BIOS im Beitrag ¶ #2369
You guys post a lot in here, every day this thread is blowing up!  Maybe the most active thread here  

Yeah, please look also at betaarchive how many times the thread ⇗ Does Windows XP have EFI? was viewed

 

Page 159

#2371GelipWinXP x64 (ia64) for Itanium CPU have EFI loader ia64ldr.efi. If you could get the source code and compile for the amd64 architecture this would probably solve the problems
⇗ https://www.betaarchive.com/forum/viewto...=432953#p432953

⇗ IA64ldr.efi

Microsoft --> ⇗ Overview of Boot Options in EFI
#2372GelipI found an interesting thing: ⇗ In Windows Server 2003, you may not be able to start a computer from a GPT disk when the computer has an Itanium processor
It follows that the EFI loader IA64ldr.efi from Itanium Win2003 is not compatible with the Itanium Win2003 SP1 version and vice versa.
#2373diderius6⇗ @Gelip

"winload.exe in Legacy mode and winload.efi in UEFI mode cause the same problem"

This is a very important discovery.
It means, that BSOD is NOT the fault because of UEFI

Dietmar

EDIT: Now I think, winload (not important if *.efi or normal) is the reason for BSOD.
videoprt.sys tries to write in low memory and this may be forbidden via winload from Vista.
The situation for XP SP3 and *.efi boot may be other.
#2374infuscomus⇗ @diderius6

does Vista give same BSOD?
#2375diderius6⇗ @infuscomus

Full Vista64 I have not tried until now.
But I see, that the BSOD in videoprt.sys is always exact the same in UEFI boot for XP64 SP2,
error in memory,
not depending if you are enable\disable CSM in Bios
Dietmar
#2376diderius6May be this can help

⇗ https://www.geoffchappell.com/studies/wi...6bios/index.htm

Dietmar
#2377infuscomus⇗ @diderius6

can you try replacing the bootloader with grub2?
from grub2 load winload.efi
maybe that might fix the video problem?
#2378Mov AX, 0xDEADAgain i've played with IOTR resource conflict, i think source of problem is how vga i/o ports is decoding. Windows get two i/o ranges (3b0-3bb and 3c0-3df) with 10-bit decoding from vga/pci device. These decoding means device may claim not only 3b0-3bb range but all other possible ranges with any high 6 bits in i/o adress e.g.  3b0, 7b0, bb0,..., fbb0, ffb0. IOTR claims ff00-fffe, so ffb0-ffbb & ffc0-ffdf conflicting with vga.
How Windows7+ resolve this problem is still big QUESTION :)

Simple implementation of blocking this device in winxp's v5512 acpi.sys without touching DSDT & ConcatenateResTemplate:
- need patch this code:

Zitat
        Name (BUF0, ResourceTemplate ()
{
IO (Decode16,
0x0000, // Range Minimum ; Begin I/O range, filled with 0xFF00
0x0000, // Range Maximum ; End I/O range, filled with 0xFF00
0x01, // Alignment
0xFF, // Length ; We will set length to Zero or lower 0xB0
_Y21)
})


same in aml hex code:
47 01 00 00 00 00 01 FF 79 00

- patching "_Buffer" proc:

 
.text:000274CC                 and     ecx, 3
.text:000274CF rep movsb

.text:000274D1 jmp loc_3BA98 ; replace two "mov xx,yy"
.text:000274D6 loc_274D6: ; with jmp/nop , position depend offset !
.text:000274D6 nop ; dummy for aligning

.text:000274D7 mov [ecx+3Ch], eax
.text:000274DA pop edi



- allocating some bytes in .TEXT section, for example in enlarged .INIT section at 0x0003BA98:

 
.text:0003BA98 loc_3BA98:
.text:0003BA98 cmp eax, 0Ah ; check for length==10 bytes
.text:0003BA9D jnz short loc_3BAC2 ; Skip patching if not
.text:0003BA9F mov eax, [ebx+30h]
.text:0003BAA2 mov eax, [eax+10h] ; Ptr where buffer was copied
.text:0003BAA5 cmp dword ptr [eax], 00000147h ; "47 01 00 00"
.text:0003BAAB jnz short loc_3BAC2
.text:0003BAAD cmp dword ptr [eax+4], FF010000h ; "00 00 01 FF"
.text:0003BAB4 jnz short loc_3BAC2
.text:0003BAB6 cmp word ptr [eax+8], 0079h ; "79 00"
.text:0003BABC jnz short loc_3BAC2

.text:0003BABE mov byte ptr [eax+7], 00 ; Length FF -> 00 or any lower 0xB0

.text:0003BAC2 loc_3BAC2:
.text:0003BAC2 mov eax, [ebx+14h] ; original 1st mox xx,yy
.text:0003BAC5 mov ecx, [ebp+arg_0] ; original 2nd mox xx,yy
.text:0003BAC8 jmp loc_274D6 ; jmp back, position depend offset !


0x0003BA98 in hex:

 3D 0A 00 00 00 75 23 8B  43 30 8B 40 10 81 38 47
01 00 00 75 15 81 78 04 00 00 01 FF 75 0C 66 81
78 08 79 00 75 04 C6 40 07 00 8B 43 14 8B 4D 08
E9 09 ba fe ff
If length = 0    IOTR device report zero i/o range and windows hide/remove it
If length < 0xB0 IOTR device still present but without conflict with vga i/o ports
#2379diderius6⇗ @infuscomus

The problem is not direct related to UEFI.
It is how to manage INT10 call.
Some UEFI Bios have an extra INT10 UEFI "driver",
which allows to boot XP there normal, it is called UEFI 2. May be this "driver" just frees or relocates memory <=1 MB.
UEFI 3 has nothing like this. So in Vista I think,
they solved the problem, putting this INT10 code in hal.dll and ntoskrnl.exe.
And now a strange situation happens: The Vista hal.dll and ntoskrnl.exe
with this INT10 simulator crashes together with XP files (in 64 bit. May be not in 32 bit.)
And the XP with INT10 call crashes, when there is no INT10 "driver" in Bios.

⇗ @Mov AX, 0xDEAD wrote, that videoprt.sys has exact this problem
with mapping memory. And you can see exact the place where this happens via Ida Pro.
I think, this INT10 "driver" can be done by hand
Dietmar
#2380lsmlcxDoes anyone have a hotfix for scsiport.sys?
New version for scsiport.sys
#2381infuscomus⇗ @lsmlcx

the most recent version of scsiport.sys I have is 5.1.2600.6073
I am not sure if it is the newest version
#2382lsmlcxwhat is the hotfix number?
#2383infuscomus⇗ @lsmlcx

i think it is KB2498072
⇗ https://support.microsoft.com/en-au/help...iv2-0-for-windo
#2384diderius6Even Win7 has this problem with INT10 (Irq from Bios for the grafikcard)
and to boot from typ 3 UEFI Bios:

"Windows 7 Setup hangs at "Starting Windows" on Surface Pro
Applies to: Windows 7 EnterpriseWindows 7 Home PremiumWindows 7 Professional More
Symptoms
If you attempt to install 64-bit version of Windows 7 on a Surface Pro or other UEFI-based computer, the Setup may hang at "Starting Windows" screen and the Setup process may not complete.
Cause
The computer does not support legacy BIOS interrupt 10 (INT 10H).
Resolution
Check the BIOS settings to verify if the computer allows you to enable Compatibility Support Module (CSM) or legacy BIOS Interrupt 10 (INT 10H).
Contact the Original Equipment Manufacture (OEM) or hardware manufacture for additional information.

Note: If your computer does not support above mentioned options then you cannot run Windows 7 on the computer.
More Information
The Surface Pro is a Class 3 UEFI device that does not support legacy BIOS Interrupt 10 (INT 10H) video transitioning and it requires Windows 8 or later operating systems to run.
"
Dietmar

EDIT: Windows 8 works, because it uses GOP for video instead of INT10.
Any idea, how to overcome videoprt.sys and to make at once use of the Nvidia gop driver in XP?
#2385Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #2379

The problem is not direct related to UEFI.
It is how to manage INT10 call.
Some UEFI Bios have an extra INT10 UEFI "driver",
which allows to boot XP there normal, it is called UEFI 2. May be this "driver" just frees or relocates memory <=1 MB.
....
@Mov AX, 0xDEAD wrote, that videoprt.sys has exact this problem
with mapping memory. And you can see exact the place where this happens via Ida Pro.
I think, this INT10 "driver" can be done by hand


Mapping memory is not related to int10 real mode handler.
First 1M RAM is mess of 1) Pure ram 00000-9ffff 2) Video ram a0000-bffff 3) Vga rom c0000-cfffff 4) acpi ram e0000-????? 5) shadow ram (chipset depends) 6) Bios rom f0000-fffff(???) . Videoport_x64 want to map all 1M to kernel space, technicaly this is not problem for CPU, MmMapIoSpace in theory create new GDT/LDT record to translate logical adresses->physical adresses and work is done. Problem starting when someone try to access this translated memory, BSOD inside MmMapIoSpace tell about some check/access to this memory before return to caller,   this is strange why memory is accessed immediately after mapping.

 

Page 160

#2386diderius6⇗ @Mov AX, 0xDEAD
"MmMapIoSpace tell about some check/access to this memory before return to caller"

Is it possible to force (the user of this memory) to wait, until return is done

Dietmar
#2387skullteriaWell, i read litle about GOP and Windows 7 seem support it.

⇗ https://www.youtube.com/watch?v=1Yyr1zuFiYk

I think it is supported by dxgkrnl, Video Port for WDDM drivers. VideoPrt only support INT10, like bootvid. Because it on Video the boot animation is not displayed.
#2388skullteriaWell, we need run.

⇗ https://hothardware.com/news/intel-sunse...or-uefi-class-3

CSM support will end.
#2389diderius6⇗ @skullteria

May be it is possible, to integrate something like generic CSM in
grub2
Dietmar
#2390skullteriaWell, i'm working to port WDDM drivers for XP/2003...And, to solve HalResetDisplay, for x64
#2391XPLivesGood luck.
#2392XPLivesUEFI
#2393skullteriaWell, what the isos of i have of Windows Vista, until build 5472, exist EFI files on x86
#2394Gelip@diderius

Zitat von ⇗ diderius6 im Beitrag ¶ #2379

The problem is not direct related to UEFI.
It is how to manage INT10 call.
Some UEFI Bios have an extra INT10 UEFI "driver"

Is this the INT10 driver in VMware? --> ¶ Windows XP SP3 32bit and modern PC parts (156)

Zitat von ⇗ diderius6 im Beitrag ¶ #2387
Even Win7 has this problem with INT10 (Irq from Bios for the grafikcard)
and to boot from typ 3 UEFI Bios:


Yes, read this: ⇗ Install Windows 7 at UEFI Graphics Output Protocol (GOP) hardware

⇗ @infuscomus
Zitat von ⇗ infuscomus im Beitrag ¶ #2374
does Vista give same BSOD?

On ThinkPad X220 beta Longhorn Server 2008 6.0.6001.16497 (6.0.6001.16497.longhorn_beta3.070330-1720_amd64fre_server-serverstandard-serverenterprise-serverdatacenter_retail_en-us-KB3SxFRE_EN_DVD.iso) cannot be installed in legacy or UEFI because it is BSOD 7E. On VMware, however, it installs without a problem.
#2395infuscomus⇗ @Gelip

do you know where I can download a copy of 6.0.6001.16497.longhorn_beta3.070330-1720_amd64fre_server-serverstandard-serverenterprise-serverdatacenter_retail_en-us-KB3SxFRE_EN_DVD.iso?
#2396infuscomusjust something i found interesting
⇗ https://askubuntu.com/questions/851892/a...to-an-uefi-grub

apparently rEFInd boot manager can also boot a non-UEFI OS from UEFI mode
#2397Gelip⇗ @infuscomus
On FTP betaarchive but you must be of the right rank to have access to FTP.
#2398infuscomus⇗ @Gelip

Thanks,

unfortunately, I don't have permission to access betaarchive FTP
#2399diderius6Does anybody have the version of
videoprt.sys from XP64 without SP2 (meaning I want to test each version of videoprt.sys 64 bit, old new just all)).
I read an interesting articel about stability of XP 64 SP2.
And one of the new files which gives BSODs
is the new videoprt.sys XP64 SP2

Dietmar
#2400infuscomus⇗ @diderius6

I might be wrong, but I believe that XP 64-bit only came into existence around the time SP2 came out and was forked from the server 2003 kernel

I think there is a server 2003 SP0 64-bit though.

EDIT:

5.2.3790.1830 - earliest 64bit videoprt.sys I can find.



infuscomus has attached files to this post

 

Page 161

#2401infuscomusi found useful polish ISO site
⇗ https://winiso.pl/windows-desktop/windows-xp
I also found 5.2.3790.0 videoprt.sys but is IA64 architecture so not useful
#2402diderius6Hi,
I am looking for the videoprt.sys from 64 bit beta of XP vers 1069

Dietmar
#2403diderius6⇗ @skullteria
Take a look at
⇗ http://x86asm.net/articles/calling-bios-...windows-xp-x64/
⇗ http://www.alex-ionescu.com/publications/Recon/recon2012.pdf

Dietmar
#2404infuscomus
Zitat von ⇗ diderius6 im Beitrag ¶ #2403
@skullteria
Take a look at
⇗ http://x86asm.net/articles/calling-bios-...windows-xp-x64/
this mentions VDM (i assume meaning NTVDM)
regarding this, someone made a 64-bit NTVDM on github
⇗ https://github.com/leecher1337/ntvdmx64
#2405diderius6⇗ @infuscomus
Do you know, how to install this in XP64
Dietmar
#2406infuscomus⇗ @diderius6
⇗ https://github.com/leecher1337/ntvdmx64/...ster/readme.txt
seems like it takes a few steps to compile

OpenNT here
⇗ https://github.com/Paolo-Maffei/OpenNT
#2407diderius6Because I noticed, that some problems first time appear with videoprt.sys
from XP64 SP2, I am just making a new FAT32 install with XP64 SP1 5.2.3790.1830.
By the way I noticed, that in this XP version you have to update storport.sys (storport.sys 5.2.3790.4173 works)
or you will get message, that generic STORAHCI from ⇗ @skullteria fails
Dietmar
#2408diderius6I change vga.sys, videoprt.sys, ntoskrnl.exe, hal.dll
against XP 64 SP1 DEBUG version.
Now, the BSOD goes to vga.sys
Dietmar
MODULE_NAME: vga

FAULTING_MODULE: fffff80000c00000 nt

DEBUG_FLR_IMAGE_TIMESTAMP: 42435c56

READ_ADDRESS: unable to get nt!MmSpecialPoolStart
unable to get nt!MmSpecialPoolEnd
unable to get nt!MmPoolCodeStart
unable to get nt!MmPoolCodeEnd
fffff800000c1743

FAULTING_IP:
hal!x86BiosExecuteInterrupt+95d
fffff800`0136063d 0fb608 movzx ecx,byte ptr [rax]

MM_INTERNAL_CODE: 0

DEFAULT_BUCKET_ID: DRIVER_FAULT

BUGCHECK_STR: 0x50

CURRENT_IRQL: 0

LAST_CONTROL_TRANSFER: from fffff80000c5c0c7 to fffff80000d9c2c0

STACK_TEXT:
fffffadc`c0376318 fffff800`00c5c0c7 : 00000000`00000050 fffffadc`df66fbd0 fffff800`000c1743 00000000`00000001 : nt!DbgBreakPointWithStatus
fffffadc`c0376320 fffff800`00c5d3d0 : fffff800`00000003 00000000`00000050 fffff800`000c1743 00000000`00000000 : nt!KeWaitForSingleObject+0xf77
fffffadc`c0376390 fffff800`00d93144 : 00000002`00000050 fffff800`000c1743 00000000`00000000 fffffadc`c0376b00 : nt!KeWaitForSingleObject+0x2280
fffffadc`c03769d0 fffff800`00d35fb1 : 00000000`00000050 fffff800`000c1743 00000000`00000000 fffffadc`c0376b00 : nt!KeBugCheckEx+0x104
fffffadc`c0376a10 fffff800`00da1059 : 00000000`00000000 fffff800`000c1743 fffffadc`df896700 fffffadc`c0376b00 : nt!NtFreeVirtualMemory+0x32ba1
fffffadc`c0376b00 fffff800`0136063d : fffffadc`bef4c000 fffffadc`df661743 0000b86d`de7deaa1 00000000`00000000 : nt!longjmp+0x31f9
fffffadc`c0376c90 fffff800`01356b43 : fffff800`01374cd0 fffff800`00d6c000 00000000`00001743 fffffadc`c0376d00 : hal!x86BiosExecuteInterrupt+0x95d
fffffadc`c0376ce0 fffffadc`bef46120 : fffffadc`00000010 fffffadc`c0376e30 fffffadc`c0376e34 fffffadc`c0376e38 : hal!HalCallBios+0x133
fffffadc`c0376d60 fffffadc`bedb6798 : fffffadc`df5da620 fffffadc`c0376e30 00000000`00000280 00000000`000001e0 : VIDEOPRT!VideoPortInt10+0x110
fffffadc`c0376e00 fffffadc`bedb8f38 : fffffadc`df5da620 fffffadc`dfb7acb0 00000000`00000004 fffffadc`c0376ec4 : vga+0x5798
fffffadc`c0376e90 fffffadc`bef542dc : fffffadc`df5da620 fffffadc`c0376fc0 00000000`00000000 00000000`00000000 : vga+0x7f38
fffffadc`c0376f10 fffff97f`ff086dee : fffffadc`df5da090 fffffadc`df896700 fffffa80`0065f928 fffff97f`00000004 : VIDEOPRT!VideoPortCreateEvent+0xfec
fffffadc`c0377040 fffff97f`ff086cf1 : 00000000`0000019c 00000000`00000000 00000000`00000000 00000000`00000001 : win32k!EngDeviceIoControl+0x12e
fffffadc`c0377100 fffff97f`ff485609 : 00000000`00000000 00000000`00000000 00000000`0000009c fffff97f`ff0c76a9 : win32k!EngDeviceIoControl+0x31
fffffadc`c0377150 fffff97f`ff485304 : 00000000`00000010 00000000`00000000 00000000`01050033 fffffa80`0065f8e0 : vga_fffff97fff483000+0x2609
fffffadc`c0377220 fffff97f`ff006579 : 000001e0`00000280 fffffa80`0067ec50 00000000`00000000 fffffa80`0065f8e0 : vga_fffff97fff483000+0x2304
fffffadc`c0377260 fffff97f`ff0ad017 : fffffadc`c03772b0 fffffa80`006919e0 fffffa80`0067f000 fffffa80`0067f000 : win32k!EngFreeModule+0x1a09
fffffadc`c03772a0 fffff97f`ff0086d1 : fffffa80`0067f000 00000000`000008b8 fffffa80`002fb830 fffffa80`006919e0 : win32k!EngCreateDeviceSurface+0x57
fffffadc`c03772f0 fffff97f`ff0082f0 : fffffa80`0054e3e0 fffffa80`0067b890 fffffa80`002fb830 00000000`00000001 : win32k!EngFreeModule+0x3b61
fffffadc`c03773e0 fffff97f`ff00b1bc : fffffadc`00000002 fffff97f`ff323fc0 fffffadc`00000000 00000000`00000000 : win32k!EngFreeModule+0x3780
fffffadc`c0377740 fffff97f`ff00a01d : fffffadc`ffffffff ffffffff`80000054 00000000`01bc8000 00000000`00000000 : win32k!EngFindImageProcAddress+0x19fc
fffffadc`c0377970 fffff97f`ff00ba85 : fffffa80`0059b460 00000000`00000000 fffffadc`c0377a38 fffffadc`c0377a78 : win32k!EngFindImageProcAddress+0x85d
fffffadc`c03779e0 fffff97f`ff00b5d6 : 00000000`00000148 fffffadc`c0377cf0 00000000`00000003 00000000`00000144 : win32k!EngFindImageProcAddress+0x22c5
fffffadc`c0377c20 fffff800`00da1f33 : 00000000`00000001 00000000`0015fa40 fffffadc`df66fbd0 00000000`00000010 : win32k!EngFindImageProcAddress+0x1e16
fffffadc`c0377c70 000007ff`7c5fe85a : 000007ff`7c5fea99 00000000`001657f0 00000000`001657f0 00000000`00000003 : nt!longjmp+0x40d3
00000000`0015fbc8 000007ff`7c5fea99 : 00000000`001657f0 00000000`001657f0 00000000`00000003 00000000`00000000 : winsrv+0xe85a
00000000`0015fbd0 00000000`001657f0 : 00000000`001657f0 00000000`00000003 00000000`00000000 00000000`00000000 : winsrv!UserServerDllInitialization+0x229
00000000`0015fbd8 00000000`001657f0 : 00000000`00000003 00000000`00000000 00000000`00000000 00000000`00000003 : 0x1657f0
00000000`0015fbe0 00000000`00000003 : 00000000`00000000 00000000`00000000 00000000`00000003 00000000`001657f0 : 0x1657f0
00000000`0015fbe8 00000000`00000000 : 00000000`00000000 00000000`00000003 00000000`001657f0 00000000`78efa9be : 0x3


STACK_COMMAND: kb

FOLLOWUP_IP:
vga+5798
fffffadc`bedb6798 85c0 test eax,eax

SYMBOL_STACK_INDEX: 9

SYMBOL_NAME: vga+5798

FOLLOWUP_NAME: MachineOwner

IMAGE_NAME: vga.sys

BUCKET_ID: WRONG_SYMBOLS

Followup: MachineOwner
#2409diderius6Next try, this time BSOD goes to bootvid.dll
Dietmar
MODULE_NAME: BOOTVID

FAULTING_MODULE: fffff80000c00000 nt

DEBUG_FLR_IMAGE_TIMESTAMP: 42438552

READ_ADDRESS: unable to get nt!MmSpecialPoolStart
unable to get nt!MmSpecialPoolEnd
unable to get nt!MmPoolCodeStart
unable to get nt!MmPoolCodeEnd
fffff800000c1743

FAULTING_IP:
hal!x86BiosExecuteInterrupt+95d
fffff800`0136063d 0fb608 movzx ecx,byte ptr [rax]

MM_INTERNAL_CODE: 0

DEFAULT_BUCKET_ID: DRIVER_FAULT

BUGCHECK_STR: 0x50

CURRENT_IRQL: 0

LAST_CONTROL_TRANSFER: from fffff80000c5c0c7 to fffff80000d9c2c0

STACK_TEXT:
fffffadc`c0a07f68 fffff800`00c5c0c7 : 00000000`00000050 fffffadc`e136c7b0 fffff800`000c1743 00000000`00000001 : nt!DbgBreakPointWithStatus
fffffadc`c0a07f70 fffff800`00c5d3d0 : fffff800`00000003 00000000`00000050 fffff800`000c1743 00000000`00000000 : nt!KeWaitForSingleObject+0xf77
fffffadc`c0a07fe0 fffff800`00d93144 : 00000000`00000050 fffff800`000c1743 00000000`00000000 fffffadc`c0a08750 : nt!KeWaitForSingleObject+0x2280
fffffadc`c0a08620 fffff800`00d35fb1 : 00000000`00000050 fffff800`000c1743 00000000`00000000 fffffadc`c0a08750 : nt!KeBugCheckEx+0x104
fffffadc`c0a08660 fffff800`00da1059 : 00000000`00000000 fffff800`000c1743 00000000`00000800 fffffadc`c0a08750 : nt!NtFreeVirtualMemory+0x32ba1
fffffadc`c0a08750 fffff800`0136063d : 00000000`0000c000 00000000`00001743 fffffadc`c5b4ff29 fffff800`0139cfe7 : nt!longjmp+0x31f9
fffffadc`c0a088e0 fffff800`013569e7 : fffff800`01374cd0 fffff800`014cc000 00000000`00001743 fffffadc`c0a08950 : hal!x86BiosExecuteInterrupt+0x95d
fffffadc`c0a08930 fffffadc`c060c5ff : 00000000`000a0000 00000000`00020000 fffffadc`00000000 fffffadc`c0a089c0 : hal!HalReadDmaCounter+0xb27
fffffadc`c0a08980 fffff800`012cf251 : fffff800`00437e01 fffff800`013177a0 00000000`00000000 00002b99`2ddfa232 : BOOTVID!VidInitialize+0x18f
fffffadc`c0a089f0 fffff800`012d0756 : fffff800`004184f8 fffff800`00000012 7ca976fb`74696e49 7ce936ab`a21f8b54 : nt!NlsMbOemCodePageTag+0x19181
fffffadc`c0a08a40 fffff800`01097b93 : fffff800`004184f8 f14d9291`54009847 f1399211`d400d863 f16d9271`5440d823 : nt!NlsMbOemCodePageTag+0x1a686
fffffadc`c0a08d40 fffff800`0117059e : fffff800`004184f8 f93d8a25`5594d067 c6292156`f7a54a4a 00000000`00000080 : nt!IoVerifyPartitionTable+0x33b3
fffffadc`c0a08d70 fffff800`00d9be76 : fffff800`01097b80 fffff800`004184f8 fffff800`01170560 1f197401`ba303053 : nt!PsRemoveCreateThreadNotifyRoutine+0x7ae
fffffadc`c0a08dd0 00000000`00000000 : 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000000 : nt!ZwUnloadKey+0x2ac6


STACK_COMMAND: kb

FOLLOWUP_IP:
BOOTVID!VidInitialize+18f
fffffadc`c060c5ff 84c0 test al,al

SYMBOL_STACK_INDEX: 8

SYMBOL_NAME: BOOTVID!VidInitialize+18f

FOLLOWUP_NAME: MachineOwner

IMAGE_NAME: BOOTVID.dll

BUCKET_ID: WRONG_SYMBOLS

Followup: MachineOwner

---------
   I succeed to overcome all BSODS, but now I have no screen^^.
This is on pur UEFI, CSM disabled, ultrafast start
Microsoft (R) Windows Debugger Version 6.12.0002.633 X86
Copyright (c) Microsoft Corporation. All rights reserved.

Opened \\.\com1
Waiting to reconnect...
Connected to Windows Server 2003 3790 x64 target at (Fri Sep 13 00:31:57.718 2019 (UTC + 2:00)), ptr64 TRUE
Kernel Debugger connection established.
WARNING: Inaccessible path: 'C:\WinDDK\7600.16385.1\src\openfabricsall\nvme13\nvme\objchk_wnet_x86\i386'
Symbol search path is: C:\WinDDK\7600.16385.1\src\openfabricsall\nvme13\nvme\objchk_wnet_x86\i386;SRV*c:\symbols
*⇗ http://msdl.microsoft.com/download/symbols;C:\symbols
Executable search path is: C:\localsymbols
*** ERROR: Symbol file could not be found. Defaulted to export symbols for ntkrnlmp.exe -
Windows Server 2003 Kernel Version 3790 MP (1 procs) Free x64
Built by: 3790.srv03_sp1_rtm.050324-1447
Machine Name:
Kernel base = 0xfffff800`00c00000 PsLoadedModuleList = 0xfffff800`00dad0c0
System Uptime: not available
AhciHwFindAdapter finishing
AhciHwFindAdapter finishing
HAL: Interrupt emulation failed, status c
HAL: Interrupt emulation failed, status c
HAL: Interrupt emulation failed, status c
HAL: Interrupt emulation failed, status c
HAL: Interrupt emulation failed, status c
HAL: Interrupt emulation failed, status c
HAL: Interrupt emulation failed, status c
HAL: Interrupt emulation failed, status c
HAL: Interrupt emulation failed, status c
HAL: Interrupt emulation failed, status c
HAL: Interrupt emulation failed, status c
HAL: Interrupt emulation failed, status c
HAL: Interrupt emulation failed, status c
HAL: Interrupt emulation failed, status c
HAL: Interrupt emulation failed, status c
HAL: Interrupt emulation failed, status c
HAL: Interrupt emulation failed, status c
HAL: Interrupt emulation failed, status c
HAL: Interrupt emulation failed, status c
HAL: Interrupt emulation failed, status c
HAL: Interrupt emulation failed, status c
HAL: Interrupt emulation failed, status c
HAL: Interrupt emulation failed, status c
HAL: Interrupt emulation failed, status c
HAL: Interrupt emulation failed, status c
HAL: Interrupt emulation failed, status c
HAL: Interrupt emulation failed, status c
HAL: Interrupt emulation failed, status c
HAL: Interrupt emulation failed, status c
HAL: Interrupt emulation failed, status c
HAL: Interrupt emulation failed, status e
HAL: Interrupt emulation failed, status e
HAL: Interrupt emulation failed, status e
HAL: Interrupt emulation failed, status e
HAL: Interrupt emulation failed, status e
HAL: Interrupt emulation failed, status e
ERROR: DavReadRegistryValues/RegQueryValueExW(6). WStatus = 1309
Break instruction exception - code 80000003 (first chance)
*******************************************************************************
* *
* You are seeing this message because you pressed either *
* CTRL+C (if you run kd.exe) or, *
* CTRL+BREAK (if you run WinDBG), *
* on your debugger machine's keyboard. *
* *
* THIS IS NOT A BUG OR A SYSTEM CRASH *
* *
* If you did not intend to break into the debugger, press the "g" key, then *
* press the "Enter" key now. This message might immediately reappear. If it *
* does, press "g" and "Enter" again. *
* *
*******************************************************************************
*** ERROR: Symbol file could not be found. Defaulted to export symbols for ntkrnlmp.exe -
nt!DbgBreakPointWithStatus:
fffff800`00c4b350 cc int 3
*** WARNING: Unable to verify timestamp for ntdll.dll
*** ERROR: Module load completed but symbols could not be loaded for ntdll.dll
9: kd> lm
start end module name
00000000`78ec0000 00000000`78ff9000 ntdll T (no symbols)
fffff800`00c00000 fffff800`0106e000 nt (export symbols) ntkrnlmp.exe
fffff800`0106e000 fffff800`010cc000 hal (deferred)
fffff97f`ff000000 fffff97f`ff45c000 win32k (deferred)
fffff97f`ff45c000 fffff97f`ff483000 dxg (deferred)
fffff97f`ff483000 fffff97f`ff48c000 TSDDD (deferred)
fffffadc`bdeb0000 fffffadc`bdf7a000 srv (deferred)
fffffadc`be092000 fffffadc`be122000 HTTP (deferred)
fffffadc`be2b2000 fffffadc`be2fb000 mrxdav (deferred)
fffffadc`be7ed000 fffffadc`be8b9000 mrxsmb (deferred)
fffffadc`be8b9000 fffffadc`be90a000 rdbss (deferred)
fffffadc`be90a000 fffffadc`be958000 afd (deferred)
fffffadc`be958000 fffffadc`be9bb000 netbt (deferred)
fffffadc`be9bb000 fffffadc`be9f3000 ipnat (deferred)
fffffadc`be9f3000 fffffadc`beab4000 tcpip (deferred)
fffffadc`beab4000 fffffadc`beadf000 ipsec (deferred)
fffffadc`beadf000 fffffadc`beaf3000 Npfs (deferred)
fffffadc`beb59000 fffffadc`beb6d000 NDProxy (deferred)
fffffadc`bec0d000 fffffadc`bec23000 termdd (deferred)
fffffadc`bec23000 fffffadc`bec79000 rdpdr (deferred)
fffffadc`bec79000 fffffadc`bec8f000 msgpc (deferred)
fffffadc`bec8f000 fffffadc`becaf000 psched (deferred)
fffffadc`becaf000 fffffadc`becd2000 raspptp (deferred)
fffffadc`becd2000 fffffadc`bece6000 raspppoe (deferred)
fffffadc`bece6000 fffffadc`bed12000 ndiswan (deferred)
fffffadc`bed12000 fffffadc`bed38000 rasl2tp (deferred)
fffffadc`bed38000 fffffadc`bed81000 ks (deferred)
fffffadc`bed81000 fffffadc`bed9e000 i8042prt (deferred)
fffffadc`bede4000 fffffadc`bee07000 VIDEOPRT (deferred)
fffffadc`bf5df000 fffffadc`bf5ec000 mssmbios (deferred)
fffffadc`bf5ef000 fffffadc`bf5fc000 mouclass (deferred)
fffffadc`bf5ff000 fffffadc`bf609000 ndistapi (deferred)
fffffadc`bf60f000 fffffadc`bf618000 watchdog (deferred)
fffffadc`bf61f000 fffffadc`bf629000 rasacd (deferred)
fffffadc`bf62f000 fffffadc`bf63f000 update (deferred)
fffffadc`bf63f000 fffffadc`bf64d000 kbdclass (deferred)
fffffadc`bf64f000 fffffadc`bf65c000 Msfs (deferred)
fffffadc`bf65f000 fffffadc`bf668000 wmiacpi (deferred)
fffffadc`bfc80000 fffffadc`bfcb6000 Mup (deferred)
fffffadc`bfcb6000 fffffadc`bfd11000 NDIS (deferred)
fffffadc`bfd11000 fffffadc`bfd44000 KSecDD (deferred)
fffffadc`bfd44000 fffffadc`bfd85000 Fastfat (deferred)
fffffadc`bfd85000 fffffadc`bfda8000 sr (deferred)
fffffadc`bfda8000 fffffadc`bfde5000 fltMgr (deferred)
fffffadc`bfde5000 fffffadc`bfe04000 CLASSPNP (deferred)
fffffadc`bfe04000 fffffadc`bfe19000 disk (deferred)
fffffadc`bfe19000 fffffadc`bfe7c000 storport (deferred)
fffffadc`bfe7c000 fffffadc`bfec7000 volsnap (deferred)
fffffadc`bfec7000 fffffadc`bff0d000 dmio (deferred)
fffffadc`bff0d000 fffffadc`bff4d000 ftdisk (deferred)
fffffadc`bff4d000 fffffadc`bff63000 MountMgr (deferred)
fffffadc`bff63000 fffffadc`bff84000 pci (deferred)
fffffadc`bff84000 fffffadc`bfff2000 ACPI (deferred)
fffffadc`c00f3000 fffffadc`c0105000 intelppm (deferred)
fffffadc`c0106000 fffffadc`c0118000 wanarp (deferred)
fffffadc`c0119000 fffffadc`c012b000 netbios (deferred)
fffffadc`c012c000 fffffadc`c013e000 Fips (deferred)
fffffadc`c03fb000 fffffadc`c0405000 kdcom (deferred)
fffffadc`c040b000 fffffadc`c0414000 BOOTVID (deferred)
fffffadc`c041b000 fffffadc`c0424000 WMILIB (deferred)
fffffadc`c042b000 fffffadc`c0434000 isapnp (deferred)
fffffadc`c043b000 fffffadc`c044b000 PartMgr (deferred)
fffffadc`c044b000 fffffadc`c0459000 storahci (deferred)
fffffadc`c045b000 fffffadc`c0466000 crcdisk (deferred)
fffffadc`c055b000 fffffadc`c0569000 vga (deferred)
fffffadc`c057b000 fffffadc`c058a000 TDI (deferred)
fffffadc`c059b000 fffffadc`c05a5000 mnmdd (deferred)
fffffadc`c05ab000 fffffadc`c05b7000 Dxapi (deferred)
fffffadc`c05db000 fffffadc`c05e6000 raspti (deferred)
fffffadc`c05eb000 fffffadc`c05f8000 ptilink (deferred)
fffffadc`c05fb000 fffffadc`c0605000 RDPCDD (deferred)
fffffadc`c064b000 fffffadc`c0655000 Fs_Rec (deferred)
fffffadc`c065b000 fffffadc`c0666000 ndisuio (deferred)
fffffadc`c066b000 fffffadc`c0673000 audstub (deferred)
fffffadc`c0673000 fffffadc`c067b000 Null (deferred)
fffffadc`c067b000 fffffadc`c0683000 CdaC15BA (deferred)
fffffadc`c0683000 fffffadc`c068b000 CdaD10BA (deferred)
fffffadc`c068b000 fffffadc`c0693000 secdrv (deferred)
fffffadc`c07fb000 fffffadc`c0802000 dmload (deferred)
fffffadc`c096e000 fffffadc`c0973e80 ksthunk (deferred)
fffffadc`c09ad000 fffffadc`c09b4000 Beep (deferred)
fffffadc`c0bb1000 fffffadc`c0bb2400 swenum (deferred)

Unloaded modules:
fffffadc`be4a7000 fffffadc`be4e5000 HDAudBus.sys
fffffadc`be4a7000 fffffadc`be4e5000 HDAudBus.sys
fffffadc`c05bb000 fffffadc`c05c7000 dump_storport.sys
fffffadc`be7af000 fffffadc`be7ed000 HDAudBus.sys
fffffadc`be7af000 fffffadc`be7ed000 HDAudBus.sys
fffffadc`be7d6000 fffffadc`be7ed000 imapi.sys
fffffadc`be8f4000 fffffadc`be90a000 redbook.sys
fffffadc`be8e7000 fffffadc`be90a000 serial.sys
fffffadc`beaf8000 fffffadc`beb13000 cdrom.sys
fffffadc`c054b000 fffffadc`c0554000 Sfloppy.SYS
fffffadc`c060b000 fffffadc`c0617000 Flpydisk.SYS
fffffadc`c063b000 fffffadc`c0649000 Fdc.SYS
fffffadc`bead5000 fffffadc`beb13000 HDAudBus.sys
fffffadc`bead5000 fffffadc`beb13000 HDAudBus.sys
fffffadc`bead5000 fffffadc`beb13000 HDAudBus.sys
fffffadc`bead5000 fffffadc`beb13000 HDAudBus.sys
fffffadc`beb2f000 fffffadc`beb6d000 HDAudBus.sys
fffffadc`beb2f000 fffffadc`beb6d000 HDAudBus.sys
fffffadc`c056b000 fffffadc`c0576000 Vbemp.sys
fffffadc`bed43000 fffffadc`bed81000 HDAudBus.sys
fffffadc`bed60000 fffffadc`bed9e000 HDAudBus.sys
9: kd> !devnode 0 1
Error retrieving address of IopRootDeviceNode
9: kd> g

#2410Gelip⇗ @diderius6

Zitat von ⇗ diderius6 im Beitrag ¶ #2399
Does anybody have the version of videoprt.sys from XP64 without SP2
⇗ >link<
#2411infuscomus
Zitat von ⇗ diderius6 im Beitrag ¶ #2409
Next try, this time BSOD goes to bootvid.dll
I succeed to overcome all BSODS, but now I have no screen^^.
This is on pur UEFI, CSM disabled, ultrafast start
are you able to remote desktop into it? or has it frozen?
#2412skullteria
Zitat von ⇗ diderius6 im Beitrag ¶ #2403
Take a look at
⇗ http://x86asm.net/articles/calling-bios-...windows-xp-x64/
⇗ http://www.alex-ionescu.com/publications/Recon/recon2012.pdf
Thank you man. Well, i use/made a patch on winload based on PatchPae. Its disable digital signature verification. I think was made to x64 too, however, need make sure. It is importante for EFI too, we need search about it. And, i succeced install and boot Windows XP with Windows 7 setup engine. It need some patch on Windows partition, and patch winsetup.dll from dvd and boot.wim. I will attach here

EDIT by Fernando: Double post deleted and blank lines removed (to save space)
#2413skullteriaWell, i was thinking...The problem is of display is not really in UEFI. When you try load Windows XP x64 with Windows Vista winload, you will get a BSOD or computer restart. I think winload don't initialize or reset the display and ntldr made it. So, maybe we need focus on winload or try modifie WRK x64 (Windows Research Kernel) to reset display.
#2414diderius6⇗ @infuscomus
I can start XP64 SP1 with full UEFI 64 bit on asrock fatal1ty z370 gaming k6 board.
CSM is disabled, settings to ultrafast boot in Bios.
I hear the startsound from this XP.
But no screen, because hal.dll emulation of INT10 fails
Dietmar

PS: The Anapa driver makes the system hang. So I deleted it.
This boot of XP64 with sound and no screen is without the Anapa driver.

Microsoft (R) Windows Debugger Version 6.12.0002.633 X86
Copyright (c) Microsoft Corporation. All rights reserved.

Opened \\.\com1
Waiting to reconnect...
Connected to Windows Server 2003 3790 x64 target at (Fri Sep 13 19:11:51.828 2019 (UTC + 2:00)), ptr64 TRUE
Kernel Debugger connection established.
WARNING: Inaccessible path: 'C:\WinDDK\7600.16385.1\src\openfabricsall\nvme13\nvme\objchk_wnet_x86\i386'
Symbol search path is: C:\WinDDK\7600.16385.1\src\openfabricsall\nvme13\nvme\objchk_wnet_x86\i386;SRV*c:\symbols
*⇗ http://msdl.microsoft.com/download/symbols;C:\symbols
Executable search path is: C:\localsymbols
*** ERROR: Symbol file could not be found. Defaulted to export symbols for ntkrnlmp.exe -
Windows Server 2003 Kernel Version 3790 MP (1 procs) Free x64
Built by: 3790.srv03_sp1_rtm.050324-1447
Machine Name:
Kernel base = 0xfffff800`00c00000 PsLoadedModuleList = 0xfffff800`00dad0c0
System Uptime: not available
AhciHwFindAdapter finishing
AhciHwFindAdapter finishing
KDTARGET: Refreshing KD connection
HAL: Interrupt emulation failed, status c
HAL: Interrupt emulation failed, status c
HAL: Interrupt emulation failed, status c
HAL: Interrupt emulation failed, status c
HAL: Interrupt emulation failed, status c
HAL: Interrupt emulation failed, status c
HAL: Interrupt emulation failed, status c
HAL: Interrupt emulation failed, status c
HAL: Interrupt emulation failed, status c
HAL: Interrupt emulation failed, status c
HAL: Interrupt emulation failed, status c
HAL: Interrupt emulation failed, status c
HAL: Interrupt emulation failed, status c
HAL: Interrupt emulation failed, status c
HAL: Interrupt emulation failed, status c
HAL: Interrupt emulation failed, status c
HAL: Interrupt emulation failed, status c
HAL: Interrupt emulation failed, status c
HAL: Interrupt emulation failed, status c
HAL: Interrupt emulation failed, status c
HAL: Interrupt emulation failed, status c
HAL: Interrupt emulation failed, status c
HAL: Interrupt emulation failed, status c
HAL: Interrupt emulation failed, status c
HAL: Interrupt emulation failed, status c
HAL: Interrupt emulation failed, status c
HAL: Interrupt emulation failed, status c
HAL: Interrupt emulation failed, status c
HAL: Interrupt emulation failed, status c
HAL: Interrupt emulation failed, status c
HAL: Interrupt emulation failed, status e
HAL: Interrupt emulation failed, status e
HAL: Interrupt emulation failed, status e
HAL: Interrupt emulation failed, status e
HAL: Interrupt emulation failed, status e
HAL: Interrupt emulation failed, status e
ERROR: DavReadRegistryValues/RegQueryValueExW(6). WStatus = 1309
[alcwzrd]CheckRegKey = FALSE
Break instruction exception - code 80000003 (first chance)
*******************************************************************************
* *
* You are seeing this message because you pressed either *
* CTRL+C (if you run kd.exe) or, *
* CTRL+BREAK (if you run WinDBG), *
* on your debugger machine's keyboard. *
* *
* THIS IS NOT A BUG OR A SYSTEM CRASH *
* *
* If you did not intend to break into the debugger, press the "g" key, then *
* press the "Enter" key now. This message might immediately reappear. If it *
* does, press "g" and "Enter" again. *
* *
*******************************************************************************
*** ERROR: Symbol file could not be found. Defaulted to export symbols for ntkrnlmp.exe -
nt!DbgBreakPointWithStatus:
fffff800`00c4b350 cc int 3
*** WARNING: Unable to verify timestamp for ntdll.dll
*** ERROR: Module load completed but symbols could not be loaded for ntdll.dll
5: kd> lm
start end module name
00000000`78ec0000 00000000`78ff9000 ntdll T (no symbols)
fffff800`00c00000 fffff800`0106e000 nt (export symbols) ntkrnlmp.exe
fffff800`0106e000 fffff800`010cc000 hal (deferred)
fffff97f`ff000000 fffff97f`ff45c000 win32k (deferred)
fffff97f`ff45c000 fffff97f`ff483000 dxg (deferred)
fffff97f`ff483000 fffff97f`ff48c000 TSDDD (deferred)
fffffadc`bcb8f000 fffffadc`bcbc7000 kmixer (deferred)
fffffadc`bcc16000 fffffadc`bcc41000 sysaudio (deferred)
fffffadc`bcc41000 fffffadc`bcc75000 wdmaud (deferred)
fffffadc`bcf09000 fffffadc`bcfd3000 srv (deferred)
fffffadc`bd27b000 fffffadc`bd30b000 HTTP (deferred)
fffffadc`bd397000 fffffadc`bd3e0000 mrxdav (deferred)
fffffadc`bd9c2000 fffffadc`bda8e000 mrxsmb (deferred)
fffffadc`bda8e000 fffffadc`bdadf000 rdbss (deferred)
fffffadc`bdadf000 fffffadc`bdb2d000 afd (deferred)
fffffadc`bdb2d000 fffffadc`bdb90000 netbt (deferred)
fffffadc`bdb90000 fffffadc`bdbc8000 ipnat (deferred)
fffffadc`bdbc8000 fffffadc`bdc89000 tcpip (deferred)
fffffadc`bdc89000 fffffadc`bdcb4000 ipsec (deferred)
fffffadc`bdcb4000 fffffadc`bdcc8000 Npfs (deferred)
fffffadc`bdce8000 fffffadc`bdd0b000 VIDEOPRT (deferred)
fffffadc`be3df000 fffffadc`be41f000 portcls (deferred)
fffffadc`be41f000 fffffadc`bebac000 RTKHDA64 (deferred)
fffffadc`bebf2000 fffffadc`bec06000 NDProxy (deferred)
fffffadc`bec06000 fffffadc`bec1c000 termdd (deferred)
fffffadc`bec1c000 fffffadc`bec72000 rdpdr (deferred)
fffffadc`bec72000 fffffadc`bec88000 msgpc (deferred)
fffffadc`bec88000 fffffadc`beca8000 psched (deferred)
fffffadc`beca8000 fffffadc`beccb000 raspptp (deferred)
fffffadc`beccb000 fffffadc`becdf000 raspppoe (deferred)
fffffadc`becdf000 fffffadc`bed0b000 ndiswan (deferred)
fffffadc`bed0b000 fffffadc`bed31000 rasl2tp (deferred)
fffffadc`bed31000 fffffadc`bed7a000 ks (deferred)
fffffadc`bedac000 fffffadc`bedc9000 i8042prt (deferred)
fffffadc`bedc9000 fffffadc`bee07000 HDAudBus (deferred)
fffffadc`bf5df000 fffffadc`bf5ec000 Msfs (deferred)
fffffadc`bf5ff000 fffffadc`bf60a000 ndisuio (deferred)
fffffadc`bf60f000 fffffadc`bf61b000 Dxapi (deferred)
fffffadc`bf62f000 fffffadc`bf63c000 mouclass (deferred)
fffffadc`bf65f000 fffffadc`bf669000 Fs_Rec (deferred)
fffffadc`bfc80000 fffffadc`bfcb6000 Mup (deferred)
fffffadc`bfcb6000 fffffadc`bfd11000 NDIS (deferred)
fffffadc`bfd11000 fffffadc`bfd44000 KSecDD (deferred)
fffffadc`bfd44000 fffffadc`bfd85000 Fastfat (deferred)
fffffadc`bfd85000 fffffadc`bfda8000 sr (deferred)
fffffadc`bfda8000 fffffadc`bfde5000 fltMgr (deferred)
fffffadc`bfde5000 fffffadc`bfe04000 CLASSPNP (deferred)
fffffadc`bfe04000 fffffadc`bfe19000 disk (deferred)
fffffadc`bfe19000 fffffadc`bfe7c000 storport (deferred)
fffffadc`bfe7c000 fffffadc`bfec7000 volsnap (deferred)
fffffadc`bfec7000 fffffadc`bff0d000 dmio (deferred)
fffffadc`bff0d000 fffffadc`bff4d000 ftdisk (deferred)
fffffadc`bff4d000 fffffadc`bff63000 MountMgr (deferred)
fffffadc`bff63000 fffffadc`bff84000 pci (deferred)
fffffadc`bff84000 fffffadc`bfff2000 ACPI (deferred)
fffffadc`c00f3000 fffffadc`c0105000 intelppm (deferred)
fffffadc`c0106000 fffffadc`c0118000 wanarp (deferred)
fffffadc`c0119000 fffffadc`c012b000 netbios (deferred)
fffffadc`c012c000 fffffadc`c013e000 Fips (deferred)
fffffadc`c03fb000 fffffadc`c0405000 kdcom (deferred)
fffffadc`c040b000 fffffadc`c0414000 BOOTVID (deferred)
fffffadc`c041b000 fffffadc`c0424000 WMILIB (deferred)
fffffadc`c042b000 fffffadc`c0434000 isapnp (deferred)
fffffadc`c043b000 fffffadc`c044b000 PartMgr (deferred)
fffffadc`c044b000 fffffadc`c0459000 storahci (deferred)
fffffadc`c045b000 fffffadc`c0466000 crcdisk (deferred)
fffffadc`c051b000 fffffadc`c0528000 ptilink (deferred)
fffffadc`c055b000 fffffadc`c0565000 rasacd (deferred)
fffffadc`c057b000 fffffadc`c0585000 mnmdd (deferred)
fffffadc`c059b000 fffffadc`c05a5000 RDPCDD (deferred)
fffffadc`c05ab000 fffffadc`c05ba000 TDI (deferred)
fffffadc`c05bb000 fffffadc`c05c9000 kbdclass (deferred)
fffffadc`c05cb000 fffffadc`c05d8000 mssmbios (deferred)
fffffadc`c05db000 fffffadc`c05e6000 raspti (deferred)
fffffadc`c060b000 fffffadc`c0615000 ndistapi (deferred)
fffffadc`c061b000 fffffadc`c0624000 watchdog (deferred)
fffffadc`c062b000 fffffadc`c0634000 wmiacpi (deferred)
fffffadc`c063b000 fffffadc`c064b000 update (deferred)
fffffadc`c065b000 fffffadc`c0669000 vga (deferred)
fffffadc`c066b000 fffffadc`c0673000 audstub (deferred)
fffffadc`c0673000 fffffadc`c067b000 Null (deferred)
fffffadc`c067b000 fffffadc`c0683000 CdaC15BA (deferred)
fffffadc`c0683000 fffffadc`c068b000 CdaD10BA (deferred)
fffffadc`c068b000 fffffadc`c0693000 secdrv (deferred)
fffffadc`c07fb000 fffffadc`c0802000 dmload (deferred)
fffffadc`c096e000 fffffadc`c0973e80 ksthunk (deferred)
fffffadc`c09ec000 fffffadc`c09f3000 Beep (deferred)
fffffadc`c0b37000 fffffadc`c0b39800 splitter (deferred)
fffffadc`c0bb1000 fffffadc`c0bb2400 swenum (deferred)

Unloaded modules:
fffffadc`bcbc7000 fffffadc`bcbe1000 swmidi.sys
fffffadc`bcbe1000 fffffadc`bcc16000 aec.sys
fffffadc`c0bd7000 fffffadc`c0bd9000 MSPCLOCK.sys
fffffadc`c0acf000 fffffadc`c0ad2000 MSKSSRV.sys
fffffadc`c0bdf000 fffffadc`c0be1000 MSPQM.sys
fffffadc`c054b000 fffffadc`c0557000 dump_storport.sys
fffffadc`bd9ab000 fffffadc`bd9c2000 imapi.sys
fffffadc`bdac9000 fffffadc`bdadf000 redbook.sys
fffffadc`bdabc000 fffffadc`bdadf000 serial.sys
fffffadc`bdd36000 fffffadc`bdd51000 cdrom.sys
fffffadc`c058b000 fffffadc`c0594000 Sfloppy.SYS
fffffadc`bf64f000 fffffadc`bf65b000 Flpydisk.SYS
fffffadc`bf61f000 fffffadc`bf62d000 Fdc.SYS

#2415infuscomus⇗ @diderius6

using a second computer are you able to remote desktop on to it? to bypass the failed display driver.

 

Page 162

#2416diderius6⇗ @infuscomus

I did it on the compi itself,
until now I do not test remote boot
Dietmar
#2417infuscomus⇗ @diderius6

it would seem like it is only the display is not working but the rest of the system is fine, that's why I suggested using remote desktop to confirm this is the case.
#2418infuscomus⇗ @diderius6

if you don't mind, could you make a backup HDD image of your UEFI bootable XP64? I would like to test it for myself.

I will PM you my Backup/Recovery media ISO I use.
#2419diderius6⇗ @infuscomus
I can also make a pur copy for you
from the harddisk, first partition with MBR.
This you can copy with Hexeditor bit by bit
to an harddisk and it will work
Dietmar
#2420infuscomus⇗ @diderius6

entire harddisk preferably, so I don't need to reinstall the OS everytime, just restore the image
#2421diderius6⇗ @infuscomus

Nice Tool and very fast. But size even with *.rar it is still 2 Gbyte,
I am uploading
Dietmar

PS: It is only one partition FAT32 (for UEFI) with MBR
and with crazy timer hacked hal.dll and sound and Moorhuhn), thanks to ⇗ @Mov AX, 0xDEAD
You can boot this XP64 normal and via UEFI, select via Bootmenu. And for UEFI
you always have to disable driver integry check in boot menu.
I use STORAHCI and last acpi.sys so it should work on any compi.
#2422skullteriaHey diderius6, you could make a test load Windows XP x64 with winload.exe instead winload.efi and see results
#2423diderius6⇗ @skullteria

From this version 6.0.6001.16497 I do not have winload.exe.
And I do not know, how I should edit BCD,
that it now uses winload.exe.
I am on a Fat32 partition with MBR
Dietmar

PS: May be, that the problems with INT10 come from winload.exe.
We should test also winload.exe from Win8.
#2424Gelip⇗ @diderius6

Zitat von ⇗ diderius6 im Beitrag ¶ #2423

And I do not know, how I should edit BCD,
that it now uses winload.exe

You edit BCD in BOOTICE in Professional mode - change path winload.efi to winload.exe:
#2425skullteriaHey, to disable Signature check, need patch ImgpValidateImageHash function inside winload.exe. For me, work these lines:

Original: 8B C8 85 C9 89 4D 08 7D
Replace:  C7 45 08 00 00 00 00 EB

x64(maybe)
Original: 45 33 db 41 3b c3 8b d8
Replace:  C7 45 08 00 00 00 00 EB

Tested on Vista SP2 winload
#2426Gelip
Zitat von ⇗ skullteria im Beitrag ¶ #2425
Hey, to disable Signature check, need patch ImgpValidateImageHash function inside winload.exe. For me, work these lines:

Original: 8B C8 85 C9 89 4D 08 7D
Replace:  C7 45 08 00 00 00 00 EB

x64(maybe)
Original: 45 33 db 41 3b c3 8b d8
Replace:  C7 45 08 00 00 00 00 EB

Tested on Vista SP2 winload

I checked it in 64-bit winload.efi from beta server 16497. Such a HEX string exists but after changing the value I have a checksum error at system startup:
#2427Gelip⇗ @skullteria
Maybe it will help:⇗ completely disable all checksum verifications during bootup
#2428skullteria
Zitat von ⇗ Gelip im Beitrag ¶ #2426
Zitat von ⇗ skullteria im Beitrag ¶ #2425
Hey, to disable Signature check, need patch ImgpValidateImageHash function inside winload.exe. For me, work these lines:

Original: 8B C8 85 C9 89 4D 08 7D
Replace:  C7 45 08 00 00 00 00 EB

x64(maybe)
Original: 45 33 db 41 3b c3 8b d8
Replace:  C7 45 08 00 00 00 00 EB

Tested on Vista SP2 winload

I checked it in 64-bit winload.efi from beta server 16497. Such a HEX string exists but after changing the value I have a checksum error at system startup:


You need update checksum with pe.exe, with command: pe -c winload.exe

Well, my patch for x64 is not working. This corrupt winload.exe

EDIT: i think i found a way: I read forum about how change Windows 7 boot screen, and in this page: ⇗ https://www.sevenforums.com/customizatio...ows-7-a-12.html
on post number 118, the user thaimin talk about certificates what are verified on boot. So, i copied windows-legacy-whql.cat to WINDOWS\system32\CatRoot\{F750E6C3-38EE-11D1-85E5-00C04FC295EE} and
CodeIntegrity to Windows\System32 and voila: not error with Winload from Vista until Build 6000. I get error with build 6002. Works both x86 and x64. Winload from Vista SP2 (6002) not work on x64 (vmware)
Only thing: kernel component must be signed. Windows are signature on all binaries, even Windows XP;
#2429Gelip
Zitat von ⇗ skullteria im Beitrag ¶ #2428
So, i copied windows-legacy-whql.cat to WINDOWS\system32\CatRoot\{F750E6C3-38EE-11D1-85E5-00C04FC295EE} and
CodeIntegrity to Windows\System32 and voila: not error with Winload from Vista until Build 6000. I get error with build 6002. Works both x86 and x64. Winload from Vista SP2 (6002) not work on x64 (vmware)

Yeah, I know about it: ⇗ Beta 2 Longhorn Vista 6.0.5384.4 (last Vista Beta2 which support Boot.ini)
In beta Longhorn Server 2008 16497 this not work - ⇗ So I started to test EFI files from versions Windows Server 2008 Longhorn on WinXP x64 on X220 and:

   6001.16406 - last version which causes white bar
   6001.16497 - first version which causes ntoskrnl.exe 0xc0000428 Windows cannot verify the digital signature for this file
#2430GelipI have idea!

The ThinkPad X220 laptop has VBIOS 2089 SandyBridge-Mobile and on it WinXP x64 boots with the AnaPa driver under UEFI.
ASUS P8H61 M LE R2 (bios 1408) has VBIOS 2143 SandyBridge/IvyBridge-Desktop and on it WinXP x64 does not start from AnaPa.
I came up with the idea to downgrade ASUS VBIOS to 2089 version.
Maybe this will solve the problem with running WinXP x64 under UEFI ???

or

In Intel BMP you can change various VBIOS settings - maybe you need to change something for WinXP x64 to start under UEFI?

 

Page 163

#2431diderius6With the german version of real Windows 2003 R2 server64 bit 5.2.3790.3959 (srv03_sp2_rtm.070216-1710)
now I come exact to the same place as with XP 64 SP1 5.2.3790.1830 (srv03_sp1_rtm.050324-1447) for UEFI boot on
the asrock fatal1ty z370 gaming k6 board.
I can boot full UEFI with CSM disabled.
But because the ANAPA driver hangs (code 10), no screen.
I can hear the sound of this Win Server 2003 R2 after UEFI boot.
Crazy job to find the right time to hit strg alt del and then hit enter with no screen^^.
No BSOD before about videoprt.sys.
I compare videoprt.sys from XP 64 SP2 with this version.
They are different
Dietmar

Microsoft (R) Windows Debugger Version 6.12.0002.633 X86
Copyright (c) Microsoft Corporation. All rights reserved.

Opened \\.\com1
Waiting to reconnect...
Connected to Windows Server 2003 3790 x64 target at (Sat Sep 14 20:42:32.671 2019 (UTC + 2:00)), ptr64 TRUE
Kernel Debugger connection established.
WARNING: Inaccessible path: 'C:\WinDDK\7600.16385.1\src\openfabricsall\nvme13\nvme\objchk_wnet_x86\i386'
Symbol search path is: C:\WinDDK\7600.16385.1\src\openfabricsall\nvme13\nvme\objchk_wnet_x86\i386;SRV*c:\symbols
*⇗ http://msdl.microsoft.com/download/symbols;C:\symbols
Executable search path is: C:\localsymbols
Windows Server 2003 Kernel Version 3790 MP (1 procs) Free x64
Built by: 3790.srv03_sp2_rtm.070216-1710
Machine Name:
Kernel base = 0xfffff800`00c00000 PsLoadedModuleList = 0xfffff800`00dd5100
System Uptime: not available
HAL: Interrupt emulation failed, status c
AhciHwFindAdapter finishing
AhciHwFindAdapter finishing
KDTARGET: Refreshing KD connection
HAL: Interrupt emulation failed, status c
HAL: Interrupt emulation failed, status c
HAL: Interrupt emulation failed, status c
HAL: Interrupt emulation failed, status c
HAL: Interrupt emulation failed, status c
HAL: Interrupt emulation failed, status c
HAL: Interrupt emulation failed, status c
HAL: Interrupt emulation failed, status c
HAL: Interrupt emulation failed, status c
HAL: Interrupt emulation failed, status c
HAL: Interrupt emulation failed, status c
HAL: Interrupt emulation failed, status c
HAL: Interrupt emulation failed, status c
AFD: AfdPprThreshold value queried from transport: 2960
Break instruction exception - code 80000003 (first chance)
*******************************************************************************
* *
* You are seeing this message because you pressed either *
* CTRL+C (if you run kd.exe) or, *
* CTRL+BREAK (if you run WinDBG), *
* on your debugger machine's keyboard. *
* *
* THIS IS NOT A BUG OR A SYSTEM CRASH *
* *
* If you did not intend to break into the debugger, press the "g" key, then *
* press the "Enter" key now. This message might immediately reappear. If it *
* does, press "g" and "Enter" again. *
* *
*******************************************************************************
nt!DbgBreakPointWithStatus:
fffff800`00c26db0 cc int 3
11: kd> lm
start end module name
00000000`78eb0000 00000000`78fef000 ntdll (pdb symbols) c:\symbols\ntdll.pdb\B2BE918952834AB8BAA710708C00CC7C2\ntdll.pdb
fffff800`00c00000 fffff800`01091000 nt (pdb symbols) c:\symbols\ntkrnlmp.pdb\3B7C35F2F8624C78898D609597BB1C772\ntkrnlmp.pdb
fffff800`01091000 fffff800`010ef000 hal (deferred)
fffff97f`ff000000 fffff97f`ff45f000 win32k (deferred)
fffff97f`ff45f000 fffff97f`ff487000 dxg (deferred)
fffff97f`ff487000 fffff97f`ff490000 TSDDD (deferred)
fffffadc`bc3be000 fffffadc`bc482000 srv (deferred)
fffffadc`bcba4000 fffffadc`bcc71000 mrxsmb (deferred)
fffffadc`bcc71000 fffffadc`bccc2000 rdbss (deferred)
fffffadc`bccc2000 fffffadc`bcd0f000 afd (deferred)
fffffadc`bcd0f000 fffffadc`bcd69000 netbt (deferred)
fffffadc`bcd69000 fffffadc`bcda7000 ipnat (deferred)
fffffadc`bcda7000 fffffadc`bce9c000 tcpip (deferred)
fffffadc`bce9c000 fffffadc`bceb2000 msgpc (deferred)
fffffadc`bceb2000 fffffadc`bcedd000 ipsec (deferred)
fffffadc`bcedd000 fffffadc`bcef1000 Npfs (deferred)
fffffadc`bd58b000 fffffadc`bd5cb000 portcls (deferred)
fffffadc`bd5cb000 fffffadc`bdd58000 RTKHDA64 (deferred)
fffffadc`bdd58000 fffffadc`bdd6c000 NDProxy (deferred)
fffffadc`bdd6c000 fffffadc`bdd87000 update (deferred)
fffffadc`bdd87000 fffffadc`bdd9d000 termdd (deferred)
fffffadc`bdde3000 fffffadc`bde3a000 rdpdr (deferred)
fffffadc`bde3a000 fffffadc`bde5d000 raspptp (deferred)
fffffadc`bde5d000 fffffadc`bde71000 raspppoe (deferred)
fffffadc`bde71000 fffffadc`bde9d000 ndiswan (deferred)
fffffadc`bde9d000 fffffadc`bdec3000 rasl2tp (deferred)
fffffadc`bdec3000 fffffadc`bdf0c000 ks (deferred)
fffffadc`bdf34000 fffffadc`bdf51000 i8042prt (deferred)
fffffadc`bdf51000 fffffadc`bdf8f000 HDAudBus (deferred)
fffffadc`be6c5000 fffffadc`be6cf000 mnmdd (deferred)
fffffadc`be6e5000 fffffadc`be6f2000 mouclass (deferred)
fffffadc`be7f7000 fffffadc`be800000 wmiacpi (deferred)
fffffadc`be837000 fffffadc`be844000 ptilink (deferred)
fffffadc`be857000 fffffadc`be862000 raspti (deferred)
fffffadc`be887000 fffffadc`be893000 Dxapi (deferred)
fffffadc`beea8000 fffffadc`beedc000 Mup (deferred)
fffffadc`beedc000 fffffadc`bef42000 NDIS (deferred)
fffffadc`bef42000 fffffadc`bef65000 VIDEOPRT (deferred)
fffffadc`bef65000 fffffadc`bef99000 KSecDD (deferred)
fffffadc`bef99000 fffffadc`befda000 Fastfat (deferred)
fffffadc`befda000 fffffadc`bf018000 fltMgr (deferred)
fffffadc`bf018000 fffffadc`bf035000 CLASSPNP (deferred)
fffffadc`bf035000 fffffadc`bf04a000 disk (deferred)
fffffadc`bf04a000 fffffadc`bf07a000 storport (deferred)
fffffadc`bf07a000 fffffadc`bf0c6000 volsnap (deferred)
fffffadc`bf0c6000 fffffadc`bf10d000 dmio (deferred)
fffffadc`bf10d000 fffffadc`bf14d000 ftdisk (deferred)
fffffadc`bf14d000 fffffadc`bf163000 MountMgr (deferred)
fffffadc`bf163000 fffffadc`bf184000 pci (deferred)
fffffadc`bf184000 fffffadc`bf1f2000 ACPI (deferred)
fffffadc`bf2f3000 fffffadc`bf304000 Dfs (deferred)
fffffadc`bf306000 fffffadc`bf319000 intelppm (deferred)
fffffadc`bf319000 fffffadc`bf32b000 wanarp (deferred)
fffffadc`bf32c000 fffffadc`bf33e000 netbios (deferred)
fffffadc`bf33f000 fffffadc`bf351000 Fips (deferred)
fffffadc`bf5fb000 fffffadc`bf605000 kdcom (deferred)
fffffadc`bf60b000 fffffadc`bf614000 BOOTVID (deferred)
fffffadc`bf61b000 fffffadc`bf624000 WMILIB (deferred)
fffffadc`bf62b000 fffffadc`bf634000 isapnp (deferred)
fffffadc`bf63b000 fffffadc`bf64b000 PartMgr (deferred)
fffffadc`bf64b000 fffffadc`bf659000 storahci (deferred)
fffffadc`bf65b000 fffffadc`bf666000 Vbemp (deferred)
fffffadc`bf66b000 fffffadc`bf674000 watchdog (deferred)
fffffadc`bf67b000 fffffadc`bf686000 crcdisk (deferred)
fffffadc`bf73b000 fffffadc`bf74a000 TDI (deferred)
fffffadc`bf75b000 fffffadc`bf769000 vga (deferred)
fffffadc`bf77b000 fffffadc`bf785000 rasacd (deferred)
fffffadc`bf79b000 fffffadc`bf7a8000 mssmbios (deferred)
fffffadc`bf7bb000 fffffadc`bf7c5000 RDPCDD (deferred)
fffffadc`bf7db000 fffffadc`bf7e7000 ndisuio (deferred)
fffffadc`bf7eb000 fffffadc`bf7f5000 Fs_Rec (deferred)
fffffadc`bf80b000 fffffadc`bf815000 ndistapi (deferred)
fffffadc`bf81b000 fffffadc`bf828000 Msfs (deferred)
fffffadc`bf83b000 fffffadc`bf849000 kbdclass (deferred)
fffffadc`bf86b000 fffffadc`bf873000 audstub (deferred)
fffffadc`bf873000 fffffadc`bf87b000 Null (deferred)
fffffadc`bf87b000 fffffadc`bf883000 CdaC15BA (deferred)
fffffadc`bf883000 fffffadc`bf88b000 CdaD10BA (deferred)
fffffadc`bf88b000 fffffadc`bf893000 secdrv (deferred)
fffffadc`bf9fb000 fffffadc`bfa02000 dmload (deferred)
fffffadc`bfb98000 fffffadc`bfb9de80 ksthunk (deferred)
fffffadc`bfc32000 fffffadc`bfc39000 Beep (deferred)
fffffadc`bfdb5000 fffffadc`bfdb6400 swenum (deferred)

Unloaded modules:
fffffadc`be695000 fffffadc`be6a1000 dump_storport.sys
fffffadc`bcb8d000 fffffadc`bcba4000 imapi.sys
fffffadc`bccac000 fffffadc`bccc2000 redbook.sys
fffffadc`bcc9f000 fffffadc`bccc2000 serial.sys
fffffadc`bcf3c000 fffffadc`bcf57000 cdrom.sys
fffffadc`be6a5000 fffffadc`be6ae000 Sfloppy.SYS
fffffadc`bf84b000 fffffadc`bf857000 Flpydisk.SYS
fffffadc`be867000 fffffadc`be875000 Fdc.SYS
fffffadc`bf65b000 fffffadc`bf666000 Vbemp.sys

   

11: kd> !devnode 0 1
Dumping IopRootDeviceNode (= 0xfffffadce0a9d7c0)
DevNode 0xfffffadce0a9d7c0 for PDO 0xfffffadce1f047d0
InstancePath is "HTREE\ROOT\0"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadce0a9cc30 for PDO 0xfffffadce0a9ce50
InstancePath is "Root\ACPI_HAL\0000"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadce0a96490 for PDO 0xfffffadce1efc060
InstancePath is "ACPI_HAL\PNP0C08\0"
ServiceName is "ACPI"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadce084e010 for PDO 0xfffffadce0966060
InstancePath is "ACPI\PNP0A08\0"
ServiceName is "pci"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadce23da440 for PDO 0xfffffadcdfa48d40
InstancePath is "PCI\VEN_8086&DEV_3EC2&SUBSYS_00000000&REV_07\3&11583659&0&00"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadce23da270 for PDO 0xfffffadcdfa48560
InstancePath is "PCI\VEN_8086&DEV_1901&SUBSYS_00000000&REV_07\3&11583659&0&08"
ServiceName is "pci"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadce07ca800 for PDO 0xfffffadce07ca060
InstancePath is "PCI\VEN_10DE&DEV_13C0&SUBSYS_13C010DE&REV_A1\4&17bc2637&0&0008"
ServiceName is "Vbemp"
State = DeviceNodeRemoved (0x312)
Previous State = DeviceNodeStartCompletion (0x306)
Problem = CM_PROB_FAILED_START
Failure Status 0000000000


DevNode 0xfffffadce07ca630 for PDO 0xfffffadce07cad40
InstancePath is "PCI\VEN_10DE&DEV_0FBB&SUBSYS_13C010DE&REV_A1\4&17bc2637&0&0108"
ServiceName is "HDAudBus"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadce0688c50 for PDO 0xfffffadcdf954d20
InstancePath is "HDAUDIO\FUNC_01&VEN_10DE&DEV_0071&SUBSYS_10DE13C0&REV_1001\5&2222d42c&0&0001"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_DISABLED
DevNode 0xfffffadce0962010 for PDO 0xfffffadce0629ad0
InstancePath is "PCI\VEN_8086&DEV_A2AF&SUBSYS_A2AF1849&REV_00\3&11583659&0&A0"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_DISABLED
DevNode 0xfffffadce0962e40 for PDO 0xfffffadce0615650
InstancePath is "PCI\VEN_8086&DEV_A2B1&SUBSYS_A2B11849&REV_00\3&11583659&0&A2"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_DISABLED
DevNode 0xfffffadce0962c70 for PDO 0xfffffadce0966a80
InstancePath is "PCI\VEN_8086&DEV_A2BA&SUBSYS_A2BA1849&REV_00\3&11583659&0&B0"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_DISABLED
DevNode 0xfffffadce0962aa0 for PDO 0xfffffadce0966760
InstancePath is "PCI\VEN_8086&DEV_A282&SUBSYS_A2821849&REV_00\3&11583659&0&B8"
ServiceName is "storahci"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadce0991360 for PDO 0xfffffadcdfa68a20
InstancePath is "SCSI\Disk&Ven_WDC&Prod_WD2003FZEX-00SRL&Rev_01.0\4&3543605e&0&010000"
ServiceName is "disk"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadce09628d0 for PDO 0xfffffadce0966440
InstancePath is "PCI\VEN_8086&DEV_A2E7&SUBSYS_00000000&REV_F0\3&11583659&0&D8"
ServiceName is "pci"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadce0962700 for PDO 0xfffffadce095f060
InstancePath is "PCI\VEN_8086&DEV_A290&SUBSYS_00000000&REV_F0\3&11583659&0&E0"
ServiceName is "pci"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadce0962530 for PDO 0xfffffadce095fb70
InstancePath is "PCI\VEN_8086&DEV_A291&SUBSYS_00000000&REV_F0\3&11583659&0&E1"
ServiceName is "pci"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadce05f8010 for PDO 0xfffffadcdfa37970
InstancePath is "PCI\VEN_1B21&DEV_0612&SUBSYS_06121849&REV_02\4&12e73dd2&0&00E1"
ServiceName is "storahci"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadce0962360 for PDO 0xfffffadce095f850
InstancePath is "PCI\VEN_8086&DEV_A292&SUBSYS_00000000&REV_F0\3&11583659&0&E2"
ServiceName is "pci"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadcdfa37c40 for PDO 0xfffffadce0709450
InstancePath is "PCI\VEN_8086&DEV_1539&SUBSYS_15391849&REV_03\4&2880aa1&0&00E2"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_DISABLED
DevNode 0xfffffadce0963010 for PDO 0xfffffadce095f530
InstancePath is "PCI\VEN_8086&DEV_A294&SUBSYS_00000000&REV_F0\3&11583659&0&E4"
ServiceName is "pci"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadce0709720 for PDO 0xfffffadce0709060
InstancePath is "PCI\VEN_1B21&DEV_2142&SUBSYS_21421849&REV_00\4&1fc90664&0&00E4"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_DISABLED
DevNode 0xfffffadce0963e40 for PDO 0xfffffadce0964d40
InstancePath is "PCI\VEN_8086&DEV_A298&SUBSYS_00000000&REV_F0\3&11583659&0&E8"
ServiceName is "pci"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadce0963c70 for PDO 0xfffffadce0964a20
InstancePath is "PCI\VEN_8086&DEV_A2C9&SUBSYS_00000000&REV_00\3&11583659&0&F8"
ServiceName is "isapnp"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadce05f8200 for PDO 0xfffffadce05f8a20
InstancePath is "ACPI\PNP0C02\0"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadce084b010 for PDO 0xfffffadce05f8820
InstancePath is "ACPI\PNP0303\0"
ServiceName is "i8042prt"
TargetDeviceNotify List - f 0xfffffa8000633370 b 0xfffffa8000633370
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadce084be40 for PDO 0xfffffadce05f8620
InstancePath is "ACPI\PNP0F03\0"
ServiceName is "i8042prt"
TargetDeviceNotify List - f 0xfffffa80007ceaf0 b 0xfffffa80007ceaf0
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadce084bc70 for PDO 0xfffffadce05f8420
InstancePath is "ACPI\INT0800\4&e69c0be&0"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadce084baa0 for PDO 0xfffffadcdfb88060
InstancePath is "ACPI\PNP0103\0"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadce084b8d0 for PDO 0xfffffadcdfb88e60
InstancePath is "ACPI\PNP0000\4&e69c0be&0"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadce084b700 for PDO 0xfffffadcdfb88c60
InstancePath is "ACPI\PNP0C04\4&e69c0be&0"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadce084b530 for PDO 0xfffffadcdfb88a60
InstancePath is "ACPI\PNP0C02\2"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadce084b360 for PDO 0xfffffadcdfb88860
InstancePath is "ACPI\PNP0C02\LPC_DEV"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadce0976010 for PDO 0xfffffadcdfb88660
InstancePath is "ACPI\PNP0B00\4&e69c0be&0"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadce0976e40 for PDO 0xfffffadcdfb88460
InstancePath is "ACPI\PNP0100\4&e69c0be&0"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadce0976c70 for PDO 0xfffffadcdfb88260
InstancePath is "ACPI\INT3F0D\4&e69c0be&0"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadce0963aa0 for PDO 0xfffffadce0964700
InstancePath is "PCI\VEN_8086&DEV_A2A1&SUBSYS_A2A11849&REV_00\3&11583659&0&FA"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_DISABLED
DevNode 0xfffffadce09638d0 for PDO 0xfffffadce09643e0
InstancePath is "PCI\VEN_8086&DEV_A2F0&SUBSYS_12211849&REV_00\3&11583659&0&FB"
ServiceName is "HDAudBus"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadcdf911010 for PDO 0xfffffadcdfac9560
InstancePath is "HDAUDIO\FUNC_01&VEN_10EC&DEV_1220&SUBSYS_18491221&REV_1000\4&cc7b6aa&0&0001"
ServiceName is "IntcAzAudAddService"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadce0963700 for PDO 0xfffffadce0614060
InstancePath is "PCI\VEN_8086&DEV_A2A3&SUBSYS_A2A31849&REV_00\3&11583659&0&FC"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_DISABLED
DevNode 0xfffffadce0963530 for PDO 0xfffffadce0614d40
InstancePath is "PCI\VEN_8086&DEV_15B8&SUBSYS_15B81849&REV_00\3&11583659&0&FE"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_DISABLED
DevNode 0xfffffadce0963360 for PDO 0xfffffadce09610c0
InstancePath is "ACPI\PNP0C02\1"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadce095d010 for PDO 0xfffffadce09641e0
InstancePath is "ACPI\PNP0C02\PCHRESV"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadce095de40 for PDO 0xfffffadce070a8e0
InstancePath is "ACPI\PNP0C02\IoTraps"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadce095dc70 for PDO 0xfffffadce0614b40
InstancePath is "ACPI\PNP0C02\5"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0xfffffadce095daa0 for PDO 0xfffffadce0614940
InstancePath is "ACPI\PNP0C14\MXM2"
ServiceName is "WmiAcpi"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadce06152e0 for PDO 0xfffffadce0616060
InstancePath is "ACPI\GenuineIntel_-_EM64T_Family_6_Model_158\_0"
ServiceName is "intelppm"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadce097f190 for PDO 0xfffffadce0965060
InstancePath is "ACPI\GenuineIntel_-_EM64T_Family_6_Model_158\_1"
ServiceName is "intelppm"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadce0629e40 for PDO 0xfffffadce084c4e0
InstancePath is "ACPI\GenuineIntel_-_EM64T_Family_6_Model_158\_2"
ServiceName is "intelppm"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadce1eecb80 for PDO 0xfffffadce084e8e0
InstancePath is "ACPI\GenuineIntel_-_EM64T_Family_6_Model_158\_3"
ServiceName is "intelppm"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadce0956340 for PDO 0xfffffadce1ef71b0
InstancePath is "ACPI\GenuineIntel_-_EM64T_Family_6_Model_158\_4"
ServiceName is "intelppm"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadce0609670 for PDO 0xfffffadce1ee81b0
InstancePath is "ACPI\GenuineIntel_-_EM64T_Family_6_Model_158\_5"
ServiceName is "intelppm"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadce07cb0e0 for PDO 0xfffffadce0617e60
InstancePath is "ACPI\GenuineIntel_-_EM64T_Family_6_Model_158\_6"
ServiceName is "intelppm"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadce0617b70 for PDO 0xfffffadce1ef21b0
InstancePath is "ACPI\GenuineIntel_-_EM64T_Family_6_Model_158\_7"
ServiceName is "intelppm"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadce0978190 for PDO 0xfffffadce1f033c0
InstancePath is "ACPI\GenuineIntel_-_EM64T_Family_6_Model_158\_8"
ServiceName is "intelppm"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadce095fe40 for PDO 0xfffffadce1eed360
InstancePath is "ACPI\GenuineIntel_-_EM64T_Family_6_Model_158\_9"
ServiceName is "intelppm"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadce0617480 for PDO 0xfffffadce1ee41b0
InstancePath is "ACPI\GenuineIntel_-_EM64T_Family_6_Model_158\10"
ServiceName is "intelppm"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadce06172b0 for PDO 0xfffffadce0609350
InstancePath is "ACPI\GenuineIntel_-_EM64T_Family_6_Model_158\11"
ServiceName is "intelppm"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadce06170e0 for PDO 0xfffffadce07cbde0
InstancePath is "ACPI\PNP0C0E\2&daba3ff&0"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadce0960b80 for PDO 0xfffffadce1eeb590
InstancePath is "ACPI\PNP0C14\TBFP"
ServiceName is "WmiAcpi"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadce09609b0 for PDO 0xfffffadce0950440
InstancePath is "ACPI\PNP0C0C\2&daba3ff&0"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadce09607e0 for PDO 0xfffffadce0609060
InstancePath is "ACPI\FixedButton\2&daba3ff&0"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadce1f02e40 for PDO 0xfffffadce0a9c9e0
InstancePath is "Root\dmio\0000"
ServiceName is "dmio"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadce1f02a60 for PDO 0xfffffadce1f02c80
InstancePath is "Root\ftdisk\0000"
ServiceName is "ftdisk"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadce0628010 for PDO 0xfffffadce0974060
InstancePath is "STORAGE\Volume\1&30a96598&0&Signature661910A0Offset100000Length1D1C05C0000"
ServiceName is "volsnap"
TargetDeviceNotify List - f 0xfffffa80003a8290 b 0xfffffa80008061c0
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadce1f03c30 for PDO 0xfffffadce1f03e50
InstancePath is "Root\LEGACY_AFD\0000"
ServiceName is "AFD"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadce1f03850 for PDO 0xfffffadce1f03a70
InstancePath is "Root\LEGACY_BEEP\0000"
ServiceName is "Beep"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadce0a9be40 for PDO 0xfffffadce0a9b060
InstancePath is "Root\LEGACY_CDAC15BA\0000"
ServiceName is "CdaC15BA"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadce0a9ba60 for PDO 0xfffffadce0a9bc80
InstancePath is "Root\LEGACY_CDAD10BA\0000"
ServiceName is "CdaD10BA"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadce0a9b680 for PDO 0xfffffadce0a9b8a0
InstancePath is "Root\LEGACY_CRCDISK\0000"
ServiceName is "crcdisk"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadce0a9b2a0 for PDO 0xfffffadce0a9b4c0
InstancePath is "Root\LEGACY_DMBOOT\0000"
ServiceName is "dmboot"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadce1f01e40 for PDO 0xfffffadce1f01060
InstancePath is "Root\LEGACY_DMLOAD\0000"
ServiceName is "dmload"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadce1f01a60 for PDO 0xfffffadce1f01c80
InstancePath is "Root\LEGACY_FIPS\0000"
ServiceName is "Fips"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadce1f01680 for PDO 0xfffffadce1f018a0
InstancePath is "Root\LEGACY_GPC\0000"
ServiceName is "Gpc"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadce1f012a0 for PDO 0xfffffadce1f014c0
InstancePath is "Root\LEGACY_IPNAT\0000"
ServiceName is "IpNat"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadce0a9ae40 for PDO 0xfffffadce0a9a060
InstancePath is "Root\LEGACY_IPSEC\0000"
ServiceName is "IPSec"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadce0a9aa60 for PDO 0xfffffadce0a9ac80
InstancePath is "Root\LEGACY_KSECDD\0000"
ServiceName is "ksecdd"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadce0a9a680 for PDO 0xfffffadce0a9a8a0
InstancePath is "Root\LEGACY_MNMDD\0000"
ServiceName is "mnmdd"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadce0a9a2a0 for PDO 0xfffffadce0a9a4c0
InstancePath is "Root\LEGACY_MOUNTMGR\0000"
ServiceName is "mountmgr"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadce1f00e40 for PDO 0xfffffadce1f00060
InstancePath is "Root\LEGACY_NDIS\0000"
ServiceName is "NDIS"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadce1f00a60 for PDO 0xfffffadce1f00c80
InstancePath is "Root\LEGACY_NDISTAPI\0000"
ServiceName is "NdisTapi"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadce1f00680 for PDO 0xfffffadce1f008a0
InstancePath is "Root\LEGACY_NDISUIO\0000"
ServiceName is "Ndisuio"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadce1f002a0 for PDO 0xfffffadce1f004c0
InstancePath is "Root\LEGACY_NDPROXY\0000"
ServiceName is "NDProxy"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadce0a99e40 for PDO 0xfffffadce0a99060
InstancePath is "Root\LEGACY_NETBT\0000"
ServiceName is "NetBT"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadce0a99a60 for PDO 0xfffffadce0a99c80
InstancePath is "Root\LEGACY_NULL\0000"
ServiceName is "Null"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadce0a99680 for PDO 0xfffffadce0a998a0
InstancePath is "Root\LEGACY_PARTMGR\0000"
ServiceName is "PartMgr"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadce0a992a0 for PDO 0xfffffadce0a994c0
InstancePath is "Root\LEGACY_RASACD\0000"
ServiceName is "RasAcd"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadce1effe40 for PDO 0xfffffadce1eff060
InstancePath is "Root\LEGACY_RDPCDD\0000"
ServiceName is "RDPCDD"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadce1effa60 for PDO 0xfffffadce1effc80
InstancePath is "Root\LEGACY_SECDRV\0000"
ServiceName is "Secdrv"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadce1eff680 for PDO 0xfffffadce1eff8a0
InstancePath is "Root\LEGACY_TCPIP\0000"
ServiceName is "Tcpip"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadce1eff2a0 for PDO 0xfffffadce1eff4c0
InstancePath is "Root\LEGACY_VGASAVE\0000"
ServiceName is "VgaSave"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadce0a98e40 for PDO 0xfffffadce0a98060
InstancePath is "Root\LEGACY_VOLSNAP\0000"
ServiceName is "VolSnap"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadce0a98a60 for PDO 0xfffffadce0a98c80
InstancePath is "Root\LEGACY_WANARP\0000"
ServiceName is "Wanarp"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadce0a98680 for PDO 0xfffffadce0a988a0
InstancePath is "Root\MEDIA\MS_MMACM"
ServiceName is "audstub"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadce0a982a0 for PDO 0xfffffadce0a984c0
InstancePath is "Root\MEDIA\MS_MMDRV"
ServiceName is "audstub"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadce1efee40 for PDO 0xfffffadce1efe060
InstancePath is "Root\MEDIA\MS_MMMCI"
ServiceName is "audstub"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadce1efea60 for PDO 0xfffffadce1efec80
InstancePath is "Root\MEDIA\MS_MMVCD"
ServiceName is "audstub"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadce1efe680 for PDO 0xfffffadce1efe8a0
InstancePath is "Root\MEDIA\MS_MMVID"
ServiceName is "audstub"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadce1efe2a0 for PDO 0xfffffadce1efe4c0
InstancePath is "Root\MS_L2TPMINIPORT\0000"
ServiceName is "Rasl2tp"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadce0a97e40 for PDO 0xfffffadce0a97060
InstancePath is "Root\MS_NDISWANIP\0000"
ServiceName is "NdisWan"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadce0a97a60 for PDO 0xfffffadce0a97c80
InstancePath is "Root\MS_PPPOEMINIPORT\0000"
ServiceName is "RasPppoe"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadce0a97680 for PDO 0xfffffadce0a978a0
InstancePath is "Root\MS_PPTPMINIPORT\0000"
ServiceName is "PptpMiniport"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadce0a972a0 for PDO 0xfffffadce0a974c0
InstancePath is "Root\MS_PTIMINIPORT\0000"
ServiceName is "Raspti"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadce1efde40 for PDO 0xfffffadce1efd060
InstancePath is "Root\RDPDR\0000"
ServiceName is "rdpdr"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadce1efda60 for PDO 0xfffffadce1efdc80
InstancePath is "Root\RDP_KBD\0000"
ServiceName is "TermDD"
TargetDeviceNotify List - f 0xfffffa8000979fa0 b 0xfffffa8000979fa0
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadce1efd680 for PDO 0xfffffadce1efd8a0
InstancePath is "Root\RDP_MOU\0000"
ServiceName is "TermDD"
TargetDeviceNotify List - f 0xfffffa8000794960 b 0xfffffa8000794960
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadce1efd2a0 for PDO 0xfffffadce1efd4c0
InstancePath is "Root\SYSTEM\0000"
ServiceName is "swenum"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadce0a96e40 for PDO 0xfffffadce0a96060
InstancePath is "Root\SYSTEM\0001"
ServiceName is "update"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xfffffadce0a96a60 for PDO 0xfffffadce0a96c80
InstancePath is "Root\SYSTEM\0002"
ServiceName is "mssmbios"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
11: kd> g
[alcwzrd]Driver Version >=5100

   

Just to change videoprt.sys from WinServer2003 R2 64 bit  to  XP64 SP2 is not enough.
It still gives BSOD VIDEOPRT.SYS ( VIDEOPRT!pVideoPortInitializeInt10+4e )
on XP64 SP2, this BSOD  XP64 SP1 and WinServer2003 R2 64 bit never show.
#2432Gelip⇗ @diderius6

Zitat von ⇗ diderius6 im Beitrag ¶ #2431
Just to change videoprt.sys from WinServer2003 R2 64 bit  to  XP64 SP2 is not enough.
It still gives BSOD VIDEOPRT.SYS ( VIDEOPRT!pVideoPortInitializeInt10+4e )
on XP64 SP2, this BSOD  XP64 SP1 and WinServer2003 R2 64 bit never show.


There is only one conclusion. Since on some computers WinXP x64 SP2 starts with AnaPa without any problems (X220) and on others it does not have to depend on the motherboard bios.

From this post it follows that booting also depends on the graphics card or its VBIOS:
¶ ASRock Z170 Pro4S + NVidia 8400GS GPU with the Anapa driver
#2433diderius6⇗ @Gelip

I just notice, that the grafikcards, which work with the Anapa driver have NO GOP (so no pur UEFI),
means they need always INT10.
Can you confirm this with your grafikcards which work/not work with the Anapa driver on XP64 SP2 for UEFI
Dietmar
#2434diderius6⇗ @Mov AX, 0xDEAD  ⇗ @daniel_k

Do you have an idea, how to disable the signature check
in winload.efi?
There is a switch in the BCD menu
"Disable Driver Signature Enforcement"
but this switch cannot be set via BootIce for to be permanent.

I noticed, that all the problems, that winload.efi makes via INT10 for grafik
are the same as in winload.exe, so it isnt a problem of UEFI.

Here is the winload.efi 6.0.6001.16497
which may be the only working UEFI OS loader for XP64.
As bootloader you can use also the one from Win8
Dietmar



diderius6 has attached files to this post
#2435Gelip⇗ @diderius6

Zitat von ⇗ diderius6 im Beitrag ¶ #2433
I just notice, that the grafikcards, which work with the Anapa driver have NO GOP (so no pur UEFI),
means they need always INT10.
Can you confirm this with your grafikcards which work/not work with the Anapa driver on XP64 SP2 for UEFI
Dietmar

It also depends on the motherboard bios version. X220 with latest bios have no GOP for iGPU and AnaPa working with efi loader from beta server.

ASUS bios 0402 (initial release) and 0405 have no GOP for iGPU but efi loader from server beta crash with error: An unexpected error 0xc0000017 and efi loader from vista beta crash with error: BlInitializeLibrary failed 0xc0000023 The same happens with a PCIe graphics card that does not have a GOP, e.g. GeForce 6200

Only bios version 0610 and newer have GOP for iGPU SNB/IVB and CSM Enable/Disable switch.

Yeeeaahh!

WinXP x64 SP2 boot OK on ASUS P8H61-M-LE-R2 with bios 0610 with PCIe GeForce 6200 LE 64MB VGA (D-sub) with AnaPa (nVidia):


It is possible because I installed WinXP again:
  • one active partition FAT32 5120MB (5GB)
  • efi loader from beta server
  • no any drivers installed except AnaPa (nVidia) and Gigabit Ethernet
  • debugging is set in BCD file and WinDbg work on another PC over serial cable (without symbol path)
  • HDD work in IDE Compatible mode (not SATA, AHCI)
  • option Fast Boot enabled in bios
  • Launch CSM - Auto
  • Security Boot - Other legacy & UEFI



Bios 610 not detect HDD as UEFI: but to start WinXP you need use EFI Shell loaded from FAT32 pendrive:
 
fs1:\efi\boot\bootx64.efi


or add entry to NVRAM with bcfg command:

 
bcfg boot dump


check last value e.g i have 00 - PXE Realtek, 01 - HDD, 02 - UEFI: Kingston then next empty value is 03 so:

 
bcfg boot add 3 fs1:\efi\boot\bootx64.efi "WinXP x64 SP2 from UEFI"




My Geforce 6200 LE no have GOP firmware.

#2436infuscomus⇗ @diderius6

I tested you XP64 Image in VMWare Workstation 15.1

in BIOS mode it booted normally, worked fine

in UEFI mode I received this error



this matches your testing?

edit:
disabling driver signature enforcement appears to make VM freeze (HDD/CD/Network icons in bottom right corner blink constantly and goes nowhere)
#2437diderius6⇗ @infuscomus
On real hardware I have no problem with disabling driver signature enforcement
via BCD. But it can there not be set to permanently
Dietmar
#2438infuscomus⇗ @Lost_N_BIOS

do you know anything about UEFI programming?

⇗ https://github.com/tianocore/edk2/tree/master/OvmfPkg/Csm

⇗ https://github.com/tianocore/edk2/search...unscoped_q=BIOS

It would be nice to have an EFI executable that could be run from EFI console to create a CSM from scratch to support legacy OS for UEFI class 3 systems in the future that wont have one.

assuming that this is possible
#2439lsmlcxI test final ACPI.sys and xhci for Intel z170.
they work well in XP x86,
but in 2003 the Intel xhci device cann't start with error 39
#2440cringysamiis there any way to make Windows XP run on an ASRock B450M Pro4 motherboard? that's the motherboard that i have and i can't find any sata drivers for xp to work, so i keep getting bluescreens on the xp setup.
#2441IntiMD⇗ @cringysami ¶ Windows XP SP3 32bit and modern PC parts (119)

Here's the link to the generic AHCI driver(storahci) by skullteria. If you can provide, what's the hardware identificator of the mobo's SATA controller?
#2442cringysamiHow do I provide the hardware identifactor of the SATA controller?
#2443infuscomus⇗ @cringysami

Show what is in Hardware IDs

e.g.
in Windows 10 -> Control Panel -> Device Manager -> IDE/ATAPI Controllers -> Standard SATA AHCI Controller -> Details -> Hardware IDs -> PCI\VEN_1022&DEV_7901&CC_0106
#2444IntiMD⇗ @cringysami

Aight, the first device according to pci.ids (DEV_7901) is "AMD FCH SATA Controller [AHCI mode]", the second one (DEV_43C8) is "AMD 400 Series Chipset SATA Controller" which is actually a virtualised AHCI controller for StoreMI. You shouldn't care about that virtualised device(second one), but the first device instead.

You now have 2 choices: One is to use the generic backported StorAHCI driver (which relies on Storport, which XP doesn't have <only Windows Server 2003>), the second choice is to use the inf-modded AMD AHCI driver by Fernando, which can be found here ⇗ [Guide] Integration of AMD's AHCI/RAID drivers into a WinXP/W2k3 CD

Get >Universal 32bit AMD AHCI driver v6.1.3.35 mod+signed by Fernando<, since the v1.21.321 driver depends on Storport, which XP doesn't have.
#2445infuscomus⇗ @cringysami

there is also a modded driver by daniel_k you can try

¶ Windows XP SP3 32bit and modern PC parts (112)

 

Page 164

#2446infuscomusHas anyone compiled 64bit reactos? would like to try their 64bit videoprt.sys

edit:

most recent pre-built x64
⇗ https://iso.reactos.org/bootcd/latest-x64-msvc-win-dbg



infuscomus has attached files to this post
#2447diderius6⇗ @infuscomus

I tried the videoprt.sys from Reactos for to boot XP64 SP2.
I have no success, not for legacy not for UEFI boot, with
or without the ANAPA driver.
But the BSODS are other than for videoprt.sys from XP64 SP2.
So, may be the Reactos drivers are future for UEFI boot of XP
Dietmar
#2448infuscomus⇗ @diderius6

I get BSOD 0A with reactos videoprt.sys
#2449cringysami⇗ @IntiMD

I tried using the storAHCI driver but I got the same 0x7B bluescreen.   When I messaged didierious6 about it, he told me if I put the storport.sy_ correctly, but on the folder he linked, there was storport.sys and acpi.sys. Was I supposed to rename .sys to  .sy_ for the bluescreen to go away. I'll also try the other driver you linked. Thank you for trying to help me solve this problem, I really appreciate it.
#2450infuscomus⇗ @cringysami

you use nlite to integrate the drivers into your XP installation ISO.
#2451cringysami⇗ @infuscomus

I did use nlite to integrate the drivers. It still gave me the same bluescreen. I don't know what I am doing wrong. I tried the universal driver too and it still gave me the bluescreen.
#2452infuscomus⇗ @cringysami

one thing I found through testing - USB CD/DVD drives do not work properly on USB 3.0 for installing XP.

you can solve this by using:
1. a SATA CD/DVD or
2. getting a PCI-E USB 2.0 card (uncommon, but they exist) - with USB 2.0 you can use USB CD/DVD drives for installing XP.
#2453cringysami⇗ @infuscomus

Yes, I was using a USB 3.0 to install XP. My computer does not have a CD Drive and all the USB ports on the motherboard are USB 3.0. I guess my only option is to buy a SATA CD/DVD drive. Thank you so much for trying to help me. You, diderious6, and IntiDM have been really helpful and I appreciate it. I was hoping that the installation would work, but it seems that it only would work with a CD drive so I might get one.
#2454infuscomus⇗ @cringysami

you're welcome!

P.S
alternatively - pcie USB 2.0 card

⇗ https://www.ebay.com/itm/USB-2-0-to-PCI-...lEAAOSwaBZZmNXa

The following contents have been linked to this post:
#2455skullteria
Zitat von ⇗ infuscomus im Beitrag ¶ #2448
@diderius6

I get BSOD 0A with reactos videoprt.sys


VideoPrt from reactos is incomplete and instable. Need some adaptation to run on XP. Even x86 version not work, on "normal" Bios
#2456dencorso
Zitat von ⇗ skullteria im Beitrag ¶ #2455
VideoPrt from reactos is incomplete and instable. Need some adaptation to run on XP. Even x86 version not work, on "normal" Bios


Ain't it amazing how no interesting module from ReactOS is ever complete or working OK whenever it's needed?
#2457diderius6⇗ @dencorso

I make a try to set up the Reactos 64 bit *.iso on a FAT32 partition
from ⇗ @infuscomus post #2446 on the Asrock fatal1ty z370 gaming k6.
But even it looks, as Reactos has all the needed drivers for this board,
it crashes during install with black screen and no comment at all
Dietmar

EDIT: There is also a life CD for Reactos 64 bit
⇗ https://drive.google.com/uc?export=downl...mZwY4l-ndmLzXEb

This one fails with BSOD for bootvid.dll.
May be, that the switch /SOS can help.

EDIT2: Using the /SOS switch and setting up windbg it shows,
that it has a problem with the AHCI driver. So, it may work in IDE compatible mode.

Microsoft (R) Windows Debugger Version 6.12.0002.633 X86
Copyright (c) Microsoft Corporation. All rights reserved.

Opened \\.\com1
Waiting to reconnect...
(ntoskrnl\kd64\kdinit.c:74) -----------------------------------------------------
(ntoskrnl\kd64\kdinit.c:75) ReactOS 0.4.13-amd64-dev (Build 20190530-0.4.13-dev-439-g582cbbd) (Commit 582cbbd9e082397bc3c7ba62183ab0e19d5adc29)
(ntoskrnl\kd64\kdinit.c:76) 1 System Processor [1024 MB Memory]
(ntoskrnl\kd64\kdinit.c:80) Command Line: DEBUG DEBUGPORT=COM1 BAUDRATE=115200 SOS MININT
(ntoskrnl\kd64\kdinit.c:81) ARC Paths: multi(0)disk(0)cdrom(111) \ multi(0)disk(0)cdrom(111) \reactos\
Connected to Windows Server 2003 3790 x64 target at (Mon Sep 16 23:15:49.500 2019 (UTC + 2:00)), ptr64 TRUE
Kernel Debugger connection established.
WARNING: Inaccessible path: 'C:\WinDDK\7600.16385.1\src\openfabricsall\nvme13\nvme\objchk_wnet_x86\i386'
Symbol search path is: C:\WinDDK\7600.16385.1\src\openfabricsall\nvme13\nvme\objchk_wnet_x86\i386;SRV*c:\symbols
*⇗ http://msdl.microsoft.com/download/symbols;C:\symbols
Executable search path is: C:\localsymbols
*** ERROR: Symbol file could not be found. Defaulted to export symbols for ntoskrnl.exe -
Windows Server 2003 Kernel Version 3790 UP Checked x64
Built by: 20190530-0.4.13-dev-439-g582cbbd.MSVC_19.21.27702.2
Machine Name:
Kernel base = 0xfffff800`00400000 PsLoadedModuleList = 0xfffff800`0062b830
System Uptime: not available
(ntoskrnl\ke\amd64\kiinit.c:445) Pcr = FFFFF80000608180, Gdt = FFFFF800003FC000, Idt = FFFFF80000627A00, Tss = FFFFF8000009B000
(hal\halx86\acpi\halacpi.c:782) ACPI Timer at: 1808h (EXT: 0)
(hal\halx86\acpi\halacpi.c:891) ACPI 2.0 Detected. Tables: [RSDT] [FACP] [DBGP]
(hal\halx86\apic\rtctimer.c:102) Clock initialized
(ntoskrnl\mm\ARM3\mminit.c:1452) HAL I/O Mapping at FFFFFFFFFFFE0000 is unsafe
(ntoskrnl\mm\ARM3\mminit.c:1452) HAL I/O Mapping at FFFFFFFFFFFE1000 is unsafe
(ntoskrnl\mm\ARM3\largepag.c:37) MiInitializeLargePageSupport: PAE/x64 Not Implemented
(hal\halx86\amd64\x86bios.c:106) memory: F000EEF3F000EEF3, F000EEF3F000E2C3
ExceptionFilter 1
ExceptionFilter 2
Finally
Target1
(ntoskrnl\mm\mminit.c:136) 0xFFFFF80000000000 - 0xFFFFF80003000000 Boot Loaded Image
(ntoskrnl\mm\mminit.c:140) 0xFFFFFA8000000000 - 0xFFFFFA8000E01000 PFN Database
(ntoskrnl\mm\mminit.c:144) 0xFFFFFA8031038000 - 0xFFFFFA8033050000 ARM3 Non Paged Pool
(ntoskrnl\mm\mminit.c:148) 0xFFFFF97FED000000 - 0xFFFFF97FF3800000 System View Space
(ntoskrnl\mm\mminit.c:152) 0xFFFFF97FF3800000 - 0xFFFFF98000000000 Session Space
(ntoskrnl\mm\mminit.c:155) 0xFFFFF68000000000 - 0xFFFFF6FFFFFFFFFF Page Tables
(ntoskrnl\mm\mminit.c:158) 0xFFFFF6FB40000000 - 0xFFFFF6FB7FFFFFFF Page Directories
(ntoskrnl\mm\mminit.c:161) 0xFFFFF70000000000 - 0xFFFFF77FFFFFFFFF Hyperspace
(ntoskrnl\mm\mminit.c:164) 0xFFFFF98000000000 - 0xFFFFF980FFFFEFFF System Cache
(ntoskrnl\mm\mminit.c:168) 0xFFFFF8A000000000 - 0xFFFFF8A002000000 ARM3 Paged Pool
(ntoskrnl\mm\mminit.c:171) 0xFFFFF88000000000 - 0xFFFFFA8033050000 System PTE Space
(ntoskrnl\mm\mminit.c:174) 0xFFFFFA8033050000 - 0xFFFFFA8049F44000 Non Paged Pool Expansion PTE Space
(ntoskrnl\config\cmcheck.c:25) CmCheckRegistry(0xFFFFFA8032FD8000, 2) is UNIMPLEMENTED!
ACPI Compatible Eisa/Isa HAL Detected
(ntoskrnl\io\pnpmgr\pnpmgr.c:1466) ### Irp=FFFFFA8032FD2CB0, Irp->UserEvent=FFFFF880053DC220, IrpStack=FFFFFA8032FD2DC8
(ntoskrnl\io\pnpmgr\pnpmgr.c:1466) ### Irp=FFFFFA8032FD2CB0, Irp->UserEvent=FFFFF880053DC150, IrpStack=FFFFFA8032FD2DC8
(ntoskrnl\io\pnpmgr\pnpmgr.c:1466) ### Irp=FFFFFA8032FD2CB0, Irp->UserEvent=FFFFF880053DC220, IrpStack=FFFFFA8032FD2DC8
(ntoskrnl\io\pnpmgr\pnpmgr.c:1466) ### Irp=FFFFFA8032FD2CB0, Irp->UserEvent=FFFFF880053DC2A0, IrpStack=FFFFFA8032FD2DC8
(ntoskrnl\io\pnpmgr\pnpmgr.c:1466) ### Irp=FFFFFA8032FD2CB0, Irp->UserEvent=FFFFF880053DC2A0, IrpStack=FFFFFA8032FD2DC8
(ntoskrnl\io\pnpmgr\pnpmgr.c:1466) ### Irp=FFFFFA8032FD2CB0, Irp->UserEvent=FFFFF880053DC380, IrpStack=FFFFFA8032FD2DC8
(ntoskrnl\io\pnpmgr\pnpmgr.c:1466) ### Irp=FFFFFA8032FD2CB0, Irp->UserEvent=FFFFF880053DC380, IrpStack=FFFFFA8032FD2DC8
(ntoskrnl\io\pnpmgr\pnpmgr.c:1466) ### Irp=FFFFFA8032FD2CB0, Irp->UserEvent=FFFFF880053DC380, IrpStack=FFFFFA8032FD2DC8
(ntoskrnl\io\pnpmgr\pnpmgr.c:1466) ### Irp=FFFFFA8032FD2CB0, Irp->UserEvent=FFFFF880053DC380, IrpStack=FFFFFA8032FD2DC8
(ntoskrnl\io\pnpmgr\pnpmgr.c:1466) ### Irp=FFFFFA8032FD2CB0, Irp->UserEvent=FFFFF880053DC380, IrpStack=FFFFFA8032FD2DC8
(ntoskrnl\io\pnpmgr\pnpmgr.c:1466) ### Irp=FFFFFA8032FD2CB0, Irp->UserEvent=FFFFF880053DC420, IrpStack=FFFFFA8032FD2DC8
(ntoskrnl\ex\work.c:755) Requesting a new thread. CurrentCount: 0. MaxCount: 1
(sdk\lib\rtl\image.c:172) Invalid base address: 0000000000000000
(ntoskrnl\io\pnpmgr\pnpmgr.c:1466) ### Irp=FFFFFA8032FD2270, Irp->UserEvent=FFFFF880053DC790, IrpStack=FFFFFA8032FD2340
(ntoskrnl\io\iomgr\driver.c:1637) '\Driver\SACDRV' initialization failed, status (0xc0000037)
(ntoskrnl\io\iomgr\driver.c:64) Deleting driver object '\Driver\SACDRV'
(ntoskrnl\io\pnpmgr\pnpmgr.c:1466) ### Irp=FFFFFA8032FD2270, Irp->UserEvent=FFFFF880053DC6D0, IrpStack=FFFFFA8032FD2340
(ntoskrnl\io\pnpmgr\pnpmgr.c:1466) ### Irp=FFFFFA8032FD2270, Irp->UserEvent=FFFFF880053DC6D0, IrpStack=FFFFFA8032FD2340
(ntoskrnl\io\pnpmgr\pnpmgr.c:1466) ### Irp=FFFFFA8032FD2270, Irp->UserEvent=FFFFF880053DC6D0, IrpStack=FFFFFA8032FD2340
(drivers\storage\scsiport\scsiport.c:5859) ZwOpenKey() failed with Status=0xC0000034
(hal\halx86\legacy\bus\pcibus.c:727) WARNING: PCI Slot Resource Assignment is FOOBAR
(ntoskrnl\ke\amd64\interrupt.c:94) FIXME: KeConnectInterrupt() with invalid vector 0x0!
(ntoskrnl\ke\amd64\interrupt.c:136) FIXME: KeConnectInterrupt() with used vector 0x0!
(hal\halx86\legacy\bus\pcibus.c:727) WARNING: PCI Slot Resource Assignment is FOOBAR
(ntoskrnl\ke\amd64\interrupt.c:94) FIXME: KeConnectInterrupt() with invalid vector 0x10!
(ntoskrnl\ke\amd64\interrupt.c:136) FIXME: KeConnectInterrupt() with used vector 0x10!
(ntoskrnl\io\iomgr\driver.c:1637) '\Driver\UNIATA' initialization failed, status (0xc00000c0)
(ntoskrnl\io\iomgr\driver.c:64) Deleting driver object '\Driver\UNIATA'
(ntoskrnl\io\iomgr\driver.c:1637) '\Driver\BUSLOGIC' initialization failed, status (0xc00000c0)
(ntoskrnl\io\iomgr\driver.c:64) Deleting driver object '\Driver\BUSLOGIC'
(ntoskrnl\io\pnpmgr\pnpmgr.c:1466) ### Irp=FFFFFA8032FD2270, Irp->UserEvent=FFFFF880053DC6D0, IrpStack=FFFFFA8032FD2340
(ntoskrnl\io\pnpmgr\pnpmgr.c:1466) ### Irp=FFFFFA8032FD2270, Irp->UserEvent=FFFFF880053DC6D0, IrpStack=FFFFFA8032FD2340
(ntoskrnl\io\pnpmgr\pnpmgr.c:1466) ### Irp=FFFFFA8032FD2270, Irp->UserEvent=FFFFF880053DC6D0, IrpStack=FFFFFA8032FD2340
(ntoskrnl\io\pnpmgr\pnpmgr.c:1466) ### Irp=FFFFFA8032FD2270, Irp->UserEvent=FFFFF880053DC6D0, IrpStack=FFFFFA8032FD2340
(ntoskrnl\io\pnpmgr\pnpmgr.c:1466) ### Irp=FFFFFA8032FD2270, Irp->UserEvent=FFFFF880053DC6D0, IrpStack=FFFFFA8032FD2340
(ntoskrnl\io\pnpmgr\pnpmgr.c:1466) ### Irp=FFFFFA8032FD2270, Irp->UserEvent=FFFFF880053DC6D0, IrpStack=FFFFFA8032FD2340
(ntoskrnl\io\pnpmgr\pnpmgr.c:1466) ### Irp=FFFFFA8032FD2270, Irp->UserEvent=FFFFF880053DC6D0, IrpStack=FFFFFA8032FD2340
(ntoskrnl\io\pnpmgr\pnpmgr.c:1466) ### Irp=FFFFFA8032FD2270, Irp->UserEvent=FFFFF880053DC6D0, IrpStack=FFFFFA8032FD2340
(drivers\ksfilter\swenum\swenum.c:428) SWENUM loaded
(ntoskrnl\io\pnpmgr\pnpmgr.c:1466) ### Irp=FFFFFA8032FD2270, Irp->UserEvent=FFFFF880053DC6D0, IrpStack=FFFFFA8032FD2340
(ntoskrnl\io\pnpmgr\pnpmgr.c:1466) ### Irp=FFFFFA8032FD2CB0, Irp->UserEvent=FFFFF880053DC8B0, IrpStack=FFFFFA8032FD2DC8
(ntoskrnl\io\pnpmgr\pnpmgr.c:1466) ### Irp=FFFFFA8032FD2270, Irp->UserEvent=FFFFF880053DC4C0, IrpStack=FFFFFA8032FD2340
(ntoskrnl\io\pnpmgr\pnpmgr.c:1466) ### Irp=FFFFFA8032FD2270, Irp->UserEvent=FFFFF880053DC3F0, IrpStack=FFFFFA8032FD2340
(ntoskrnl\io\pnpmgr\pnpmgr.c:1466) ### Irp=FFFFFA8032FD2270, Irp->UserEvent=FFFFF880053DC4C0, IrpStack=FFFFFA8032FD2340
(ntoskrnl\io\pnpmgr\pnpmgr.c:1466) ### Irp=FFFFFA8032FD2270, Irp->UserEvent=FFFFF880053DC540, IrpStack=FFFFFA8032FD2340
(ntoskrnl\io\pnpmgr\pnpmgr.c:1466) ### Irp=FFFFFA8032FD2270, Irp->UserEvent=FFFFF880053DC540, IrpStack=FFFFFA8032FD2340
(ntoskrnl\io\pnpmgr\pnpmgr.c:1466) ### Irp=FFFFFA8032FD2270, Irp->UserEvent=FFFFF880053DC620, IrpStack=FFFFFA8032FD2340
(ntoskrnl\io\pnpmgr\pnpmgr.c:1466) ### Irp=FFFFFA8032FD2270, Irp->UserEvent=FFFFF880053DC620, IrpStack=FFFFFA8032FD2340
(ntoskrnl\io\pnpmgr\pnpmgr.c:1466) ### Irp=FFFFFA8032FD2270, Irp->UserEvent=FFFFF880053DC620, IrpStack=FFFFFA8032FD2340
(ntoskrnl\io\pnpmgr\pnpmgr.c:1466) ### Irp=FFFFFA8032FD2270, Irp->UserEvent=FFFFF880053DC620, IrpStack=FFFFFA8032FD2340
(ntoskrnl\io\pnpmgr\pnpmgr.c:1466) ### Irp=FFFFFA8032FD2270, Irp->UserEvent=FFFFF880053DC620, IrpStack=FFFFFA8032FD2340
(ntoskrnl\io\pnpmgr\pnpmgr.c:1466) ### Irp=FFFFFA8032FD2CB0, Irp->UserEvent=FFFFF880053DC3D0, IrpStack=FFFFFA8032FD2DC8
(ntoskrnl\io\pnpmgr\pnpmgr.c:1466) ### Irp=FFFFFA8032FD2CB0, Irp->UserEvent=FFFFF880053DC410, IrpStack=FFFFFA8032FD2DC8
(ntoskrnl\ke\amd64\interrupt.c:94) FIXME: KeConnectInterrupt() with invalid vector 0x20!
(ntoskrnl\io\pnpmgr\pnpmgr.c:1466) ### Irp=FFFFFA8032FD2CB0, Irp->UserEvent=FFFFF880053DC2C0, IrpStack=FFFFFA8032FD2DC8
(ntoskrnl\io\pnpmgr\pnpmgr.c:1466) ### Irp=FFFFFA8032FD2CB0, Irp->UserEvent=FFFFF880053DC340, IrpStack=FFFFFA8032FD2DC8
(ntoskrnl\io\pnpmgr\pnpmgr.c:1466) ### Irp=FFFFFA8032FD2CB0, Irp->UserEvent=FFFFF880053DC350, IrpStack=FFFFFA8032FD2DC8
(ntoskrnl\io\pnpmgr\pnpmgr.c:1466) ### Irp=FFFFFA8032FD2270, Irp->UserEvent=FFFFF880053DBF60, IrpStack=FFFFFA8032FD2340
(ntoskrnl\io\pnpmgr\pnpmgr.c:1466) ### Irp=FFFFFA8032FD2270, Irp->UserEvent=FFFFF880053DBE90, IrpStack=FFFFFA8032FD2340
(ntoskrnl\io\pnpmgr\pnpmgr.c:1466) ### Irp=FFFFFA8032FD2270, Irp->UserEvent=FFFFF880053DBF60, IrpStack=FFFFFA8032FD2340
(ntoskrnl\io\pnpmgr\pnpmgr.c:1466) ### Irp=FFFFFA8032FD2270, Irp->UserEvent=FFFFF880053DBFE0, IrpStack=FFFFFA8032FD2340
(ntoskrnl\io\pnpmgr\pnpmgr.c:1466) ### Irp=FFFFFA8032FD2270, Irp->UserEvent=FFFFF880053DBFE0, IrpStack=FFFFFA8032FD2340
(ntoskrnl\io\pnpmgr\pnpmgr.c:1466) ### Irp=FFFFFA8032FD2270, Irp->UserEvent=FFFFF880053DC0C0, IrpStack=FFFFFA8032FD2340
(ntoskrnl\io\pnpmgr\pnpmgr.c:1466) ### Irp=FFFFFA8032FD2270, Irp->UserEvent=FFFFF880053DC0C0, IrpStack=FFFFFA8032FD2340
(ntoskrnl\io\pnpmgr\pnpmgr.c:1466) ### Irp=FFFFFA8032FD2270, Irp->UserEvent=FFFFF880053DC0C0, IrpStack=FFFFFA8032FD2340
(ntoskrnl\io\pnpmgr\pnpmgr.c:1466) ### Irp=FFFFFA8032FD2270, Irp->UserEvent=FFFFF880053DC0C0, IrpStack=FFFFFA8032FD2340
(ntoskrnl\io\pnpmgr\pnpmgr.c:1466) ### Irp=FFFFFA8032FD2270, Irp->UserEvent=FFFFF880053DC0C0, IrpStack=FFFFFA8032FD2340
(ntoskrnl\io\pnpmgr\pnpmgr.c:1466) ### Irp=FFFFFA8032FD2270, Irp->UserEvent=FFFFF880053DC020, IrpStack=FFFFFA8032FD2340
(ntoskrnl\io\pnpmgr\pnpmgr.c:1466) ### Irp=FFFFFA8032FD2270, Irp->UserEvent=FFFFF880053DBF70, IrpStack=FFFFFA8032FD2340
(ntoskrnl\io\pnpmgr\pnpmgr.c:1466) ### Irp=FFFFFA8032FD2270, Irp->UserEvent=FFFFF880053DBFB0, IrpStack=FFFFFA8032FD2340
(ntoskrnl\io\pnpmgr\pnpmgr.c:1466) ### Irp=FFFFFA8032FD2270, Irp->UserEvent=FFFFF880053DBE60, IrpStack=FFFFFA8032FD2340
(ntoskrnl\io\pnpmgr\pnpmgr.c:1466) ### Irp=FFFFFA8032FD2270, Irp->UserEvent=FFFFF880053DBEE0, IrpStack=FFFFFA8032FD2340
(ntoskrnl\io\pnpmgr\pnpmgr.c:670) No service!
(ntoskrnl\io\pnpmgr\pnpmgr.c:1466) ### Irp=FFFFFA8032FD2270, Irp->UserEvent=FFFFF880053DBEF0, IrpStack=FFFFFA8032FD2340

*** Fatal System Error: 0x0000007b
(0xFFFFF880053DCA18,0xFFFFFFFFC0000034,0x0000000000000000,0x0000000000000000)

Break instruction exception - code 80000003 (first chance)

A fatal system error has occurred.
Debugger entered on first try; Bugcheck callbacks have not been invoked.

A fatal system error has occurred.

Connected to Windows Server 2003 3790 x64 target at (Mon Sep 16 23:16:02.062 2019 (UTC + 2:00)), ptr64 TRUE
*** ERROR: Symbol file could not be found. Defaulted to export symbols for ntoskrnl.exe -
Loading Kernel Symbols
.....................
Loading User Symbols

*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

Use !analyze -v to get detailed debugging information.

BugCheck 7B, {fffff880053dca18, ffffffffc0000034, 0, 0}

***** Kernel symbols are WRONG. Please fix symbols to do analysis.

*************************************************************************
*** ***
*** ***
*** Your debugger is not using the correct symbols ***
*** ***
*** In order for this command to work properly, your symbol path ***
*** must point to .pdb files that have full type information. ***
*** ***
*** Certain .pdb files (such as the public OS symbols) do not ***
*** contain the required information. Contact the group that ***
*** provided you with these symbols if you need this command to ***
*** work. ***
*** ***
*** Type referenced: nt!_KPRCB ***
*** ***
*************************************************************************
*************************************************************************
*** ***
*** ***
*** Your debugger is not using the correct symbols ***
*** ***
*** In order for this command to work properly, your symbol path ***
*** must point to .pdb files that have full type information. ***
*** ***
*** Certain .pdb files (such as the public OS symbols) do not ***
*** contain the required information. Contact the group that ***
*** provided you with these symbols if you need this command to ***
*** work. ***
*** ***
*** Type referenced: nt!_KPRCB ***
*** ***
*************************************************************************
*************************************************************************
*** ***
*** ***
*** Your debugger is not using the correct symbols ***
*** ***
*** In order for this command to work properly, your symbol path ***
*** must point to .pdb files that have full type information. ***
*** ***
*** Certain .pdb files (such as the public OS symbols) do not ***
*** contain the required information. Contact the group that ***
*** provided you with these symbols if you need this command to ***
*** work. ***
*** ***
*** Type referenced: nt!_KPRCB ***
*** ***
*************************************************************************
Probably caused by : ntoskrnl.exe ( nt!KeRegisterNmiCallback+592 )

Followup: MachineOwner
---------

nt!DbgBreakPointWithStatus+0x2:
fffff800`0057f876 cc int 3
kd> !analyze -v
*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

INACCESSIBLE_BOOT_DEVICE (7b)
During the initialization of the I/O system, it is possible that the driver
for the boot device failed to initialize the device that the system is
attempting to boot from, or it is possible for the file system that is
supposed to read that device to either fail its initialization or to simply
not recognize the data on the boot device as a file system structure that
it recognizes. In the former case, the argument (#1) is the address of a
Unicode string data structure that is the ARC name of the device from which
the boot was being attempted. In the latter case, the argument (#1) is the
address of the device object that could not be mounted.
If this is the initial setup of the system, then this error can occur if
the system was installed on an unsupported disk or SCSI controller. Note
that some controllers are supported only by drivers which are in the Windows
Driver Library (WDL) which requires the user to do a custom install. See
the Windows Driver Library for more information.
This error can also be caused by the installation of a new SCSI adapter or
disk controller or repartitioning the disk with the system partition. If
this is the case, on x86 systems the boot.ini file must be edited or on ARC
systems setup must be run. See the "Advanced Server System Administrator's
User Guide" for information on changing boot.ini.
If the argument is a pointer to an ARC name string, then the format of the
first two (and in this case only) longwords will be:
USHORT Length;
USHORT MaximumLength;
PWSTR Buffer;
That is, the first longword will contain something like 00800020 where 20
is the actual length of the Unicode string, and the next longword will
contain the address of buffer. This address will be in system space, so
the high order bit will be set.
If the argument is a pointer to a device object, then the format of the first
word will be:
USHORT Type;
That is, the first word will contain a 0003, where the Type code will ALWAYS
be 0003.
Note that this makes it immediately obvious whether the argument is a pointer
to an ARC name string or a device object, since a Unicode string can never
have an odd number of bytes, and a device object will always have a Type
code of 3.
Arguments:
Arg1: fffff880053dca18, Pointer to the device object or Unicode string of ARC name
Arg2: ffffffffc0000034
Arg3: 0000000000000000
Arg4: 0000000000000000

Debugging Details:
------------------

***** Kernel symbols are WRONG. Please fix symbols to do analysis.

*************************************************************************
*** ***
*** ***
*** Your debugger is not using the correct symbols ***
*** ***
*** In order for this command to work properly, your symbol path ***
*** must point to .pdb files that have full type information. ***
*** ***
*** Certain .pdb files (such as the public OS symbols) do not ***
*** contain the required information. Contact the group that ***
*** provided you with these symbols if you need this command to ***
*** work. ***
*** ***
*** Type referenced: nt!_KPRCB ***
*** ***
*************************************************************************
*************************************************************************
*** ***
*** ***
*** Your debugger is not using the correct symbols ***
*** ***
*** In order for this command to work properly, your symbol path ***
*** must point to .pdb files that have full type information. ***
*** ***
*** Certain .pdb files (such as the public OS symbols) do not ***
*** contain the required information. Contact the group that ***
*** provided you with these symbols if you need this command to ***
*** work. ***
*** ***
*** Type referenced: nt!_KPRCB ***
*** ***
*************************************************************************
*************************************************************************
*** ***
*** ***
*** Your debugger is not using the correct symbols ***
*** ***
*** In order for this command to work properly, your symbol path ***
*** must point to .pdb files that have full type information. ***
*** ***
*** Certain .pdb files (such as the public OS symbols) do not ***
*** contain the required information. Contact the group that ***
*** provided you with these symbols if you need this command to ***
*** work. ***
*** ***
*** Type referenced: nt!_KPRCB ***
*** ***
*************************************************************************

ADDITIONAL_DEBUG_TEXT:
Use '!findthebuild' command to search for the target build information.
If the build information is available, run '!findthebuild -s ; .reload' to set symbol path and load symbols.

MODULE_NAME: nt

FAULTING_MODULE: fffff80000400000 nt

DEBUG_FLR_IMAGE_TIMESTAMP: 5cf01f6c

DEFAULT_BUCKET_ID: DRIVER_FAULT

BUGCHECK_STR: 0x7B

CURRENT_IRQL: 0

LAST_CONTROL_TRANSFER: from fffff800004ab0d2 to fffff8000057f876

STACK_TEXT:
fffff880`053dc348 fffff800`004ab0d2 : fffff880`053dc388 fffff880`053dc401 00000000`00000000 00000000`00000000 : nt!DbgBreakPointWithStatus+0x2
fffff880`053dc350 fffff800`004aa282 : fffff800`00000003 00000000`0000007b fffff880`053dca18 ffffffff`c0000034 : nt!KeRegisterNmiCallback+0x592
fffff880`053dc380 fffff800`004a99f2 : fffff880`0000007b fffff880`053dca18 ffffffff`c0000034 00000000`00000000 : nt!KeBugCheckEx+0x8d2
fffff880`053dc990 fffff800`005b887a : fffff880`0000007b fffff880`053dca18 ffffffff`c0000034 00000000`00000000 : nt!KeBugCheckEx+0x42
fffff880`053dc9d0 fffff800`005b7818 : fffff800`00074000 fffff800`005d29f8 00000000`0000000a fffff800`006320e0 : nt!InbvEnableBootDriver+0x3a2a
fffff880`053dcb90 fffff800`005b2b53 : fffff800`00074000 fffff800`0000004b fffff800`00646700 00000000`00000000 : nt!InbvEnableBootDriver+0x29c8
fffff880`053dcd80 fffff800`00438fe3 : fffff800`00074000 fffffa80`32feebf0 fffff800`00631800 0053002b`002b0010 : nt!wcsspn+0xd063
fffff880`053dcf60 fffff800`0053d17e : fffff800`00074000 fffff800`0053d130 00000000`00000010 00000000`00000246 : nt!HeadlessDispatch+0x223
fffff880`053dcf90 fffff800`0040266b : fffff800`00438fd0 fffff800`00074000 00000000`00000000 fffff800`0053d130 : nt!PsWrapApcWow64Thread+0xdee
fffff880`053dcfd0 00000000`00000000 : 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000000 : nt!ZwYieldExecution+0xfb


STACK_COMMAND: kb

FOLLOWUP_IP:
nt!KeRegisterNmiCallback+592
fffff800`004ab0d2 eb07 jmp nt!KeRegisterNmiCallback+0x59b (fffff800`004ab0db)

SYMBOL_STACK_INDEX: 1

SYMBOL_NAME: nt!KeRegisterNmiCallback+592

FOLLOWUP_NAME: MachineOwner

IMAGE_NAME: ntoskrnl.exe

BUCKET_ID: WRONG_SYMBOLS

Followup: MachineOwner
---------

kd> lm
start end module name
fffff800`0022e000 fffff800`00284000 hal (deferred)
fffff800`00284000 fffff800`0028b000 kdcom (deferred)
fffff800`0028b000 fffff800`00293000 bootvid (deferred)
fffff800`00400000 fffff800`00659000 nt (export symbols) ntoskrnl.exe
fffff880`053dd000 fffff880`0540a000 ks (deferred)
fffff880`0540a000 fffff880`05411000 swenum (deferred)
fffff880`05411000 fffff880`05435000 ndis (deferred)
fffff880`05435000 fffff880`05440000 mup (deferred)
fffff880`05440000 fffff880`05448000 nmidebug (deferred)
fffff880`05448000 fffff880`05466000 ksecdd (deferred)
fffff880`05466000 fffff880`05471000 ramdisk (deferred)
fffff880`05471000 fffff880`0547f000 disk (deferred)
fffff880`0547f000 fffff880`0548e000 class2 (deferred)
fffff880`0548e000 fffff880`054a0000 cdrom (deferred)
fffff880`054a0000 fffff880`054ab000 buslogic (deferred)
fffff880`054ab000 fffff880`054c0000 scsiport (deferred)
fffff880`054c0000 fffff880`054ff000 uniata (deferred)
fffff880`054ff000 fffff880`05518000 mountmgr (deferred)
fffff880`05518000 fffff880`05525000 pci (deferred)
fffff880`05525000 fffff880`05587000 acpi (deferred)
fffff880`05587000 fffff880`055a2000 sacdrv (deferred)
fffff880`055a2000 fffff880`055cf000 cdfs (deferred)
kd> !devnode 0 1
Error retrieving address of IopRootDeviceNode

#2458IntiMDIIRC the AMD64 arch version of ReactOS isn't that ready yet (even compared to the project's 32-bit builds), so don't be surprised that it won't work.
#2459GelipI noticed strange thing. I tested different VGA PCIe and PCI cards and now with GeForce 6200 LE WinXP x64 not boot and error:

Probably caused by : VIDEOPRT.SYS ( VIDEOPRT!pVideoPortInitializeInt10+4e )

I programmed again 610 bios with CH341A but it did not help. I think that I have to install the fresh WinXP bacause the registry has a lot of entries from the previous tested VGA PCIe and PCI cards e.g. in:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E968-E325-11CE-BFC1-08002BE10318}

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Video

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management\PrefetchParameters -> VideoInitTime ???

Maybe it changed load order of the drivers in WinXP and is therefore problem videoprt.sys ???

It may have changed device resources such as IRQ, memory adresses and I/O ports ? For now I have like this:

 
System Information report written at: 09/16/19 07:23:00
System Name: EFIFAT
[Display]

Item Value
Name VBE Miniport (nVidia)
PNP Device ID PCI\VEN_10DE&DEV_0163&SUBSYS_CA33107D&REV_A1\4&8F789FD&0&0008
Adapter Type VESA/SVGA, AnaPa Corp compatible
Adapter Description VBE Miniport (nVidia)
Adapter RAM 64,00 MB (67 108 864 bytes)
Installed Drivers framebuf.dll,modex.dll
Driver Version 15.01.0001
INF File oem0.inf (Vbemp section)
Color Planes 1
Color Table Entries 4294967296
Resolution 800 x 600 x 56 hertz
Bits/Pixel 32
Memory Address 0xF6000000-0xF6FFFFFF
Memory Address 0xE0000000-0xEFFFFFFF
Memory Address 0xF5000000-0xF70FFFFF
I/O Port 0x000003B0-0x000003BB
I/O Port 0x000003C0-0x000003DF
Memory Address 0xA0000-0xBFFFF
Driver c:\windows\system32\drivers\vbemp.sys (15.01.0001 built by: WinDDK, 23,00 KB (23 552 bytes), 2019-09-15 19:38)



This is very strange. I need install fresh copy WinXP for tests.

#2460infuscomus⇗ @Gelip

have you tried the official nvidia driver for Geforce 6000 series? - Surprisingly, Geforce 6000 is supported up to Windows 8 64bit.

XP 64bit
⇗ https://www.geforce.com/drivers/results/57494

Win8 64bit
⇗ https://www.geforce.com/drivers/results/82758

 

Page 165

#2461AndaluA strange thingh: usb3 no longer works on my asrock B75 Pro3-M as in ¶ #2130. I had put the board aside after checking the correct operation of the mod drivers but today when I picked it up to try a clean XP install on a new hard disk I was no longer able to get the correctly working USB3. And worse, also connecting my previous disk (used with USB3 ports fully functional), the same ports don't work as some days ago.
The modded AHCI.sys is still in C:\WINDOWS\system32\drivers. Tried to reinstall the drivers with no success. The bios options seem be to set as when usb3 worked correctly. In some reboots, I received this message: 'Press <CTRL   P> to Enter MEBX Setup Menu - CMOS Date/Time Not Set - Press F2 or Del to Run Setup -  Press F1 to Continue'. By pressing F1 key the boot continued normally but windows date and time was incorrect. I already cleared the cmos and changed the battery and that message seems gone but the usb3 ports act as usb2 also with a new clean XP install. What happened and how can i resolve?
#2462PPeti66xHi! Your problem is probably that Intel Inf package installs a null-driver for Gen-3 and older motherboards. You need to kill this driver prior installing a modded one:
1.) You must search in all *.inf in Windows\Inf directory for string "PantUSB3.inf" or "Null driver for Intel(R) USB 3.0", then rename the file extension of both inf and pnf file (the file should be have name "oem*.inf", then rename to "oem*.in_").
2.) Then You must uninstall the "Intel(R) 7 Series/C216 Chipset Family Universal Serial Bus (USB) Controller - 1E31" driver.
3.) Now you can install the modded driver.
#2463Andalu⇗ @PPeti66x
It works!!!

Thanks sooo much
#2464lamaHi,..

Can anyone suggest me best new PC and components that is XP and Hackintosh compatible? Thanks in advance
#2465Gelip
Zitat von ⇗ lama im Beitrag ¶ #2464
Hi,..

Can anyone suggest me best new PC and components that is XP and Hackintosh compatible? Thanks in advance

Not new, but best is ThinkPad X220. It has drivers for WinXP/Vista/7/8/10. Mac OS also sholud work.

or search motherboard from 2010-2014 which has drivers for WinXP.
#2466infuscomus⇗ @diderius6 ⇗ @daniel_k ⇗ @skullteria ⇗ @Gelip

So this was something I was attempting to do a couple of years ago using an old version of KernelEx by Xeno86 that used to patch code into PE files - thanks to Dibya over at MSFN forum for finding it.

It was an attempt at patching extra functions into ntoskrnl for XP to support more hardware.
You can see there is extra code at the end of the file after relocations section (this may or may not be a bad idea? not sure)

anyone interested in going further with this? or a waste of time?



infuscomus has attached files to this post
#2467diderius6⇗ @infuscomus
This ntkrnlmp.exe has an unfullfilled dependency for Hal.dll HalGetVectorInput
Dietmar
#2468infuscomus⇗ @diderius6

here is the hal.dll with HalGetVectorInput patched in



infuscomus has attached files to this post
#2469ArchimedesHello Everyone,

first let me thank you for your hard work, you are doing a great job!

I have the same issues that already cedar mentioned with your ACPI 5048 for XP x64 SP2 from Dietmars post #2202. I'm getting random BSODs with IRQ not less or equal 0x0000000A. I uninstalled nearly every Driver but i seems that the patched ACPI must be responsible. The BSODs are more likely to appear when e.g. playing a video file with mediaplayer classic or doing heavy downloads from the intel nic.

I tested with a x370 Crosshair VI Extreme, BIOS 7403 and a Ryzen 3800X.

I also get a yellow exclamation mark at the ACPI Embedded Conroller, which I didnt see in Diderus6 own Screenshots with the patched ACPI. And now comes something more pitty: On a intel x79 with full xp support i also tested for fun the patched ACPI and i am getting the same issues - also the exclamation mark at the ACPI embedded controller. So it can not be an issue with the ACPI tables in the BIOS, it must be a problem with the patched ACPI.

Any Ideas? Im willing to help and test! :) Thank you!

#2470Archimedes
Zitat von ⇗ diderius6 im Beitrag ¶ #2222
@daniel_k

This picture is based on the acpi.sys 5048 for XP 64 SP2 on Ryzen from post 2202

Dietmar







Here in this post Dietmar dont have the exclamation mark at the ACPI embedded controller. Could it be because of the old Ryzen 1700? I used the new 3800x.
#2471diderius6⇗ @Archimedes

The embedded Acpi controller is not needed at all.
I make the experience, that XP 64 SP2 is much more instable than XP SP3, 32 bit.
On every compi, where I install XP SP3 it is stable (about 100 different motherboards I tested).
But only on one(!) motherboard, XP64 SP2 was stable, it is the Giga H110 board
Dietmar
#2472Archimedes
Zitat von ⇗ diderius6 im Beitrag ¶ #2471
@Archimedes

The embedded Acpi controller is not needed at all.
I make the experience, that XP 64 SP2 is much more instable than XP SP3, 32 bit.
On every compi, where I install XP SP3 it is stable (about 100 different motherboards I tested).
But only on one(!) motherboard, XP64 SP2 was stable, it is the Giga H110 board
Dietmar



Did you/some of you try XP x64 with a modded DSDT instead of a patched ACPI? Was the result more stable?
#2473diderius6⇗ @Archimedes

I have not tried. Where is sense to spend a lot of time when results are bad from the beginning?
When you read about your special BSODs from XP64 SP2,
they can be found everywhere from 2007 until now, for lan connections, for sound and so on.
This never happens for any version of XP 32 bit.
It has nothing to do with ACPI.
XP64 SP1 from 2005 was more stable
Dietmar
#2474skullteria
Zitat von ⇗ diderius6 im Beitrag ¶ #2473
@Archimedes

I have not tried. Where is sense to spend a lot of time when results are bad from the beginning?
When you read about your special BSODs from XP64 SP2,
they can be found everywhere from 2007 until now, for lan connections, for sound and so on.
This never happens for any version of XP 32 bit.
It has nothing to do with ACPI.
XP64 SP1 from 2005 was more stable
Dietmar


However, x64 is the presente and the future, several programs not be more compiled in x86, only x64. Windows XP X64 is the minimum to NT 5.X keep living
#2475Archimedes
Zitat von ⇗ diderius6 im Beitrag ¶ #2473
@Archimedes

I have not tried. Where is sense to spend a lot of time when results are bad from the beginning?
When you read about your special BSODs from XP64 SP2,
they can be found everywhere from 2007 until now, for lan connections, for sound and so on.
This never happens for any version of XP 32 bit.
It has nothing to do with ACPI.
XP64 SP1 from 2005 was more stable
Dietmar


Dont get me wrong, but I would not agree with that. I am using XP x64 SP2 since 2010 on AMD AM3 and Intel X79 and it is running rock stable - including a 980 TI.

Since the patched ACPI.sys runs flawless without BSODs (excl. the embedded controller) on my x79 build with XP x64, I think there must be still something missing for the ACPI 2.0 compatibility.

 

Page 166

#2476Mov AX, 0xDEADSome progress on windbg over NET for Windows XP
- port of kdnet.dll from windows 8.1 x32, support many qualcomm/intel/realtek/broadcom/emulex pci-e chips
- testing on VMware (thanks to embedded GDB server)
- guest OS = WindowsXP x32 PAE SP3 1CPU
- host OS  = Windows7  x64
- test card = virtual Intel 8254x(e1000e) Gigabit network card
- currently need little ntoskrnl.exe patch for disabling ram-moving of kdnet.dll+kdstub.dll
- unresolved bug with losting connection windbg<->guestos

windbg log:
Microsoft (R) Windows Debugger Version 6.3.9600.17200 X86
Copyright (c) Microsoft Corporation. All rights reserved.

Using NET for debugging
Opened WinSock 2.0
Waiting to reconnect...
Connected to target 192.168.4.3 on port 50000 on local IP 192.168.4.1.
Connected to Windows XP 2600 x86 compatible target at (Sat Sep 21 02:49:35.219 2019 (UTC + 5:00)), ptr64 FALSE
Kernel Debugger connection established.

************* Symbol Path validation summary **************
Response Time (ms) Location
OK C:\Windows\Symbols
Symbol search path is: C:\Windows\Symbols
Executable search path is:
Windows XP Kernel Version 2600 MP (1 procs) Free x86 compatible
Built by: 2600.xpsp.080413-2111
Machine Name:
Kernel base = 0x804d7000 PsLoadedModuleList = 0x8055d720
System Uptime: not available
Break instruction exception - code 80000003 (first chance)
*** ERROR: Symbol file could not be found. Defaulted to export symbols for halmacpi.dll -
nt!DbgBreakPoint:
8052b5d0 cc int 3
kd> bu nt!MiReloadBootLoadedDrivers
kd> g
Breakpoint 0 hit
nt!MiReloadBootLoadedDrivers:
806a6e90 8bff mov edi,edi
kd> p
nt!MiReloadBootLoadedDrivers+0x2:
806a6e92 55 push ebp

#2477diderius6⇗ @Mov AX, 0xDEAD

This is a nice result (хорошая работа), because a lot of new compis
can only be debugged for XP via this way.
When you have kdnet.dll for XP,
I want to test
Dietmar

PS: Have you tested, at which point in bootprocess of XP SP3 windbg starts to work?
#2478infuscomusanyone interested in the patcher program to add functions? i have source code if anyone would like to see it.
#2479diderius6⇗ @infuscomus

I am interested.
Do you have a driver, which works now on this new XP 32,
using integrated functions
Dietmar
#2480Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #2477

When you have kdnet.dll for XP,
I want to test


OK, but i dont know when kdnet will be done, on real hardware (realtek and atheros lan chips) it not work yet.

p.s it's realy hard to debug "debug transport" on hardware, maybe i will have mix classic UART/COM transport with lan, so kernel will double output to both transports and will be possible to see on COM what's going with other transport

Zitat von ⇗ diderius6 im Beitrag ¶ #2477

PS: Have you tested, at which point in bootprocess of XP SP3 windbg starts to work?

- ntldr load NTOSKRNL(or variation like PAE/MP), then HAL, then bootvid.dll, then KD Transport (default KDCOM ), start NTOSKRNL
- NTOSKRNL load many bootdrivers but not start it
- NTOSKRNL at some init stage (phase0 in sources) start KD transport, init connection to windbg and break instantly if /BREAK option presented in boot.ini
#2481Gelip Yes, I confirm - for WinXP x64 SP2 to run under UEFI with the AnaPa driver you need:

  • you must install >> !!! fresh !!! << WinXP in legacy mode using a card that will work later when booting in UEFI mode
  • after first boot need install AnaPa driver
  • copy my EFI files from beta longhorn server

It doesn't matter if you install the system on one FAT32 partition or on 100MB FAT32 + NTFS 5G (my way)

Tested hardware: GeForce 6200 LE PCI EXPRESS LEADTEK LR2A13 PCB REV:C on ASUS P8H61-M LE R2 with bios 0610. SATA disk mode set to IDE in bios:


P.S. I need make this test one more time but now with nVidia driver
#2482GelipJust one change of the graphics driver and the system does not boot in UEFI - only fresh WinXP x64 SP2 installation solve the problem.
#2483diderius6⇗ @Gelip

This brings me to the idea,
that it is important, which driver starts after which one.
But bootvid.dll and videoprt.sys have no entry in registry.
So I have no idea, how to change the loadorder of them
Dietmar

PS: May be, they have a hidden entry in hive "system".
Can you sent me a whole copy of your working hive "system"
and that one, which fails for UEFI boot and I compare them
via Beyond Compare 2.
#2484diderius6Just now I try to set up XP SP3 32 bit for UEFI boot on the Lenovo flex 10 notebook.
Nothing easy in this, because I noticed, that the installed Bios is 64 bit.
There is a 32 bit UEFI Bios for this notebook, but how to flash 64 bit Bios back to 32 bit Bios is another question.
In this moment I make a backup from the installed Win10 on NTFS GPT partition.
Thanks to ⇗ @infuscomus this is easy for me).
Oh my, my i920 compi with XP SP3 for daily use is about 10 times faster^^
Dietmar
#2485Gelip⇗ @diderius6

Zitat von ⇗ diderius6 im Beitrag ¶ #2483
So I have no idea, how to change the loadorder of them

PS: May be, they have a hidden entry in hive "system".
Can you sent me a whole copy of your working hive "system"
and that one, which fails for UEFI boot and I compare them
via Beyond Compare 2.

I attach the system registry files for comparison. Maybe there is something to the Video option in GroupOrderList ???

Zitat von ⇗ diderius6 im Beitrag ¶ #2484
Just now I try to set up XP SP3 32 bit for UEFI boot on the Lenovo flex 10 notebook.
Nothing easy in this, because I noticed, that the installed Bios is 64 bit.
There is a 32 bit UEFI Bios for this notebook, but how to flash 64 bit Bios back to 32 bit Bios is another question.

You can probably program the old bios with the external programmer and I wrote you what and how on betaarchive: ⇗ https://www.betaarchive.com/forum/viewto...=444342#p444342


Gelip has attached files to this post
#2486diderius6⇗ @Gelip

Until now, I do not succeed to flash back the Lenovo flex 10 notebook from 64 bit to 32 bit Bios.
To extract only the Bios region and use insyde to flash this via win10 64 bit does not work.
The Intel CSME also not works, gives unknown error.
Universal BIOS Backup ToolKit 2.0.exe gives message "Bios cant be identified".
FD44Editor.exe also not works, brrr..
In win10 compi writes that Bios is flashed,
but on reboot appears message Error in flash process.
I can use the external Epromer, but then all information about compi
Uiid and Mac number is gone. With UEFI tool, only the Bios region can be seen,
no ME region etc.
With the external Epromer I can extract the whole 64 bit Bios.
But how to flash it back with Bios 32 bit,
so that Mac etc. is not gone, I dont know
Dietmar
#2487dencorso
Zitat
anyone interested in the patcher program to add functions? i have source code if anyone would like to see it.


⇗ @infuscomus:
Yes, I do. If you can provide both the executable and the source code, even better. Thanks in advance.

Changing subjects: give ⇗ this a look. There you'll find injective code that might be useful for what, IMO, ought to be a properly done kernelex. I think the cleanest way to do that is to inject code at the run time images of kernel32.dll advapi.dll and some other processes, and use that code to redirect requests for missing functions to modules providing them. If that can be done at Ring 0 level, by means of a pseudo-driver, even better, because then hal.dll and krnl*.exe could also be modified without any direct patching of any M$ files. Just my 2¢, of course...  
Keep on the great work!

#2488diderius6I succeed to read out the whole 64 bit Bios from Lenovo flex 10 notebook with its own
Insyde.exe tool.
For this I set in platform.ini

[BackupROM]
Flag=1
FilePath=
FileName=

This writes the full (?) original Bios to the place, from where it is called.
Can somebody take a look at this file, if UUID, Mac and serial number are correct in this file?
And my question is: When I flash the Bios 32 bit from website
and add there the Me and Gbe region from this 64 bit Bios via UEFI tool before flashing with Epromer,
will this 32 Bit Bios work
Dietmar



diderius6 has attached files to this post
#2489diderius6⇗ @Gelip

I compare both System files.
In System, where it boots,
the monitor is not specified.
And the compi seems to use the original vga.sys instead of the anapa driver
Dietmar

PS: The differences in Registry could be tested one by one, which would be a really hard work.



diderius6 has attached files to this post
#2490PPeti66xHi!
ACPI Embedded controller exclamation can be solved by installing a null-driver (as in original case in Longhorn/Vista)
Here are the modified inf files. Copy the correct inf to the Windows\Inf folder (backup the original file first), then uninstall the Embedded controller, then reinstall it.



PPeti66x has attached files to this post

 

Page 167

#2491infuscomus⇗ @diderius6 ⇗ @dencorso

I PMed you the kernel patcher program with source code.
#2492XPLives⇗ @skullteria

Zitat von ⇗ skullteria im Beitrag ¶ #2474
Zitat von ⇗ diderius6 im Beitrag ¶ #2473
@Archimedes

I have not tried. Where is sense to spend a lot of time when results are bad from the beginning?
When you read about your special BSODs from XP64 SP2,
they can be found everywhere from 2007 until now, for lan connections, for sound and so on.
This never happens for any version of XP 32 bit.
It has nothing to do with ACPI.
XP64 SP1 from 2005 was more stable
Dietmar


However, x64 is the presente and the future, several programs not be more compiled in x86, only x64. Windows XP X64 is the minimum to NT 5.X keep living


Actually I have to disagree.  There is no need to force XP Pro 64-Bit.

Server 2003 Data Center Edition 32-Bit would be the best NT 5.X version for the future if you want XP 32-Bit compatibility with enhanced memory and GPT support.  2003 Server R2 64-Bit might be the best version if you must push to 64-Bit with the smallest OS foot print as far as total installed size and maximum memory support.

For true 64-Bit I'd use Vista Ultimate only because of Quick Launch and Classic Themes or Windows 7 Enterprise 64-Bit or Server 2012 R2 due to gaming compatibility that XP 64-Bit or 2003 64-Bit just can't play anything DX11+ and restricted to DX9.  Why go through all that trouble?  Is there some specific XP Pro 64-Bit software that doesn't work in Vista/Windows 7 64-Bit?

2003 Server 32-Bit / 2012 Server R2 64-Bit (These two OS are really all you'll need to run almost 95%) software.
#2493XPLives@gelip

Zitat von ⇗ Gelip im Beitrag ¶ #2481
Yes, I confirm - for WinXP x64 SP2 to run under UEFI with the AnaPa driver you need:
  • you must install >> !!! fresh !!! << WinXP in legacy mode using a card that will work later when booting in UEFI mode
  • after first boot need install AnaPa driver
  • copy my EFI files from beta longhorn server

It doesn't matter if you install the system on one FAT32 partition or on 100MB FAT32 + NTFS 5G (my way)

Tested hardware: GeForce 6200 LE PCI EXPRESS LEADTEK LR2A13 PCB REV:C on ASUS P8H61-M LE R2 with bios 0610. SATA disk mode set to IDE in bios:


P.S. I need make this test one more time but now with nVidia driver



Gelip since you have access to the beta files archive there can you tell me if you know if it exists?

Is there any beta of Server 2003 64-Bit or XP Pro 64-Bit that had the WINNT.EXE for DOS based installation setup file?

Or even a beta of Vista 32-Bit/64-Bit WINNT.EXE DOS based installation setup file?

Another idea was there any XP x64 Itanium Edition that had a DOS WINNT.EXE installer?
#2494infuscomus⇗ @XPLives

there is an XP x64 Itanium Edition available here

⇗ https://winiso.pl/windows-desktop/windows-xp

it is dated 3/27/2003
#2495diderius6I make some more tests with the Lenovo Flex 10 notebook.
It is impossible to flash via FPTw, always message error 63, hardware platform not supported.
And Me tool shows Me version 1.0.2.1060 (I think from 2013).
So, only Epromer will do this job.
On the grafik card gpu-z shows empty box for UEFI rom on grafikcard,
so best chances to get XP SP3 to boot via UEFI there.
This Bios has an integrated INT10, which works for the grafikcard also in win10(!)
even when you disable all CSM, "pur" Uefi
Dietmar

PS: 3Dmark2001 gives for Win10 64 bit 5387 points on this notebook.
I think, under XP 32 bit it will be faster, lets test^^.
#2496XPLives⇗ @infuscomus c

Zitat von ⇗ infuscomus im Beitrag ¶ #2494
@XPLives

there is an XP x64 Itanium Edition available here

⇗ https://winiso.pl/windows-desktop/windows-xp

it is dated 3/27/2003


I believe that's XP Pro 64 Bit.

Can you confirm that's the IA64 version?

Itanium Edition is dated 2001 around the same time as XP Gold.

I found a info link about it.

⇗ https://msdn.su/downloads/operating-syst.../itanium/ja/iso

Since it was dated 2001 I have a feeling it might have included a 64-Bit DOS installer.
#2497Gelip⇗ @diderius6

Zitat von ⇗ diderius6 im Beitrag ¶ #2495
On the grafik card gpu-z shows empty box for UEFI rom on grafikcard,
so best chances to get XP SP3 to boot via UEFI there.

What version of bios do you have now in Flex10?
#2498infuscomus
Zitat von ⇗ XPLives im Beitrag ¶ #2496
Can you confirm that's the IA64 version?


Yep, downloaded and it's definitely an IA64 version - the rest of them are AMD64 versions
#2499Mov AX, 0xDEAD
Zitat von ⇗ Gelip im Beitrag ¶ #2485
@diderius6
Zitat von ⇗ diderius6 im Beitrag ¶ #2483

that it is important, which driver starts after which one.
But bootvid.dll and videoprt.sys have no entry in registry.
So I have no idea, how to change the loadorder of them

I attach the system registry files for comparison. Maybe there is something to the Video option in GroupOrderList ???


bootvid & videoprt is not boot drivers, they are kernel mode dll and auto-loaded if some other linked to them
ntoskrnl has dependies to bootvid
vga/nt4_mini/rdpcdd/dxapi have dependies to videoprt
#2500diderius6⇗ @Gelip
Until now it is its original 93CN52WW(V9.2).64bit
Soon I change Bios to 32bit 93cn19ww(v5.2&v3.7)
Dietmar
#2501Gelip⇗ @diderius6

Zitat von ⇗ diderius6 im Beitrag ¶ #2495
On the grafik card gpu-z shows empty box for UEFI rom on grafikcard

GPU-Z shows an empty box in Windows which is launched in Legacy bios mode and uses VBIOS.
A ticked box means that Windows is in UEFI mode with CSM turned off and Secure Boot turned on.
64-bit bios 93CN52WW have VBIOS and GOP firmware but 32-bit bios 93cn19ww have only GOP firmware:
#2502GelipProbably this 32-bit bios have no legacy (CSM) support only pure UEFI ??
#2503diderius6⇗ @Gelip
Hm, this gives me to think, if it would not be better to make some tests before with XP on the 64 bit Bios.
Do you know any Bios flash tool, with which you dont have to use Epromer on such a notebook
Dietmar
#2504Gelip⇗ @diderius6

Zitat von ⇗ diderius6 im Beitrag ¶ #2503
Do you know any Bios flash tool, with which you dont have to use Epromer on such a notebook

I have never programmed a chip in a system PCB without desoldering. Apparently on some devices you can use the test clip SOIC8 e.g. on ThinkPad X220:
⇗ Coreboot on the ThinkPad X220 with a Raspberry Pi
It's possible that you can do it on Flex10. Instead of raspberry you can use e.g. USB CH341A and flashrom for Linux
#2505Gelip

 

Page 168

#2506XPLives
Zitat von ⇗ Gelip im Beitrag ¶ #2502
Probably this 32-bit bios have no legacy (CSM) support only pure UEFI ??


What laptops and desktops have only pure 32-Bit UEFI only mode and no CSM?

Are there any desktop UEFI 64-Bit MBs that can be converted to run in pure UEFI 32-Bit for testing?

It will be easier to test using the 32-Bit DOS installer unless WINNT.EXE can be modified to bypass file checking then I might be able to test the 64-Bit version using the same method.
#2507diderius6⇗ @Gelip
You are right: No INT10 at all in the 32 bit UEFI Bios for the Flex 10 Lenovo notebook.
But in the 64 bit UEFI Bios there is full CSM support and INT10 can be found in Bios for the graphik *.dxe driver
Dietmar

EDIT: Instead to force all to UEFI, it would be a better idea, to implement something like a generic CSM driver in UEFI Bios.
Now I dont know, how to make this, but when CSM documentation is open source, it could be possibel.
#2508AndaluOnce again I have read the entire thread from the first page looking for a solution to make USB3 working in all of my motherboards.
Until now, the usb3 works on two boards by installing the modded driver only while on the other it doesn't work. For them, with all probability, I need to modify the DSDT table. I saw the posts ¶ #1445, ¶ #1854, ¶ #1856, ¶ #1858, and ¶ #1865 where ⇗ @diderius6 explain the procedure but I have some difficult to understand some points like: "Extract with UEFI tool your DSDT table. From this raw file make dsdt.dsl with the tool iasl in commandline C:\ iasl dsdt.raw"" and "Do the mod in DSDT as in post 1442".
For example, how to extract the DSDT table with UEFI tool? I tried to extract it from a .rom file but I can't get a .raw file. And how to make the mod in DSDT as in post ¶ #1442 for other boards unlike ASRock Z370?

So, here my request (I think it can be useful for other users too):
is there someone that can explain the method, step by step and in the simplest way, to extract, decompile, modify and recompile the DSDT table, please?
Thanks in advance.
#2509dencorso
Zitat von ⇗ Andalu im Beitrag ¶ #2508
Until now, the usb3 works on two boards by installing the modded driver only while on the other it doesn't work.

Could you please tell which boards/processors the modded driver alone worked for and which it didn't? Moreover, did you try including also the modded acpi.sys for the board/processor the modded usb3 drivers alone were insufficient to make USB3 working? Thanks in advance!
#2510lsmlcx
Zitat von ⇗ dencorso im Beitrag ¶ #2509
Zitat von ⇗ Andalu im Beitrag ¶ #2508
Until now, the usb3 works on two boards by installing the modded driver only while on the other it doesn't work.

Could you please tell which boards/processors the modded driver alone worked for and which it didn't? Moreover, did you try including also the modded acpi.sys for the board/processor the modded usb3 drivers alone were insufficient to make USB3 working? Thanks in advance!



ASUS z170-k worked with xp sp3 x86 on intel usb3, not 2003 sp2 x86.
ASUS z170-a cann't worked on intel usb3.
The xhci device cann't be started under error code 39 with model acpi.sys and usb3.
#2511Andalu⇗ @dencorso
Thanks for your reply. I installed the USB3 modded driver and the acpi system file (5048) for all my boards.

The USB3 works on:
- Asrock B250M Pro4 and i5-6600 Skylake;
- Asrock B75 Pro3-M and i5-3470 Ivy Bridge.

It doesn't work on:
- Msi CSM-Q87M-E43 and i7-4770K Haswell;
- Acer IPIMB-AR Rev 1.02A and i7-3770K Ivy Bridge;
- Asrock B75M-GL R2.0 (so similar to B75 Pro3-M) and i7-3770 Ivy Bridge.

For each board where USB3 fails, I have tried an XPSP3 32bit fresh installation with acpi.sys (5048) packed into i386 folder, driver.cab and SP3.cab. I have also tried an XP installation with Universal 32bit Intel RST AHCI+RAID driver v11.2.0.1006 mod+signed by Fernando only and after I have installed the driver modded and copied acpi.sys in the system32\driver folder from another pc. In both cases the driver has properly installed with no errors but the usb3.0 ports act as USB2.0. In the bios, the options seem to be set correctly. So, I think that the only solution is a modded DSDT table.
#2512infuscomusI recall edit: dencorso mentioned earlier -> here ¶ Windows XP SP3 32bit and modern PC parts (141)
in this thread that at some point one of the ntoskrnl updates for XP breaks Intel USB 3.0 and stops it from working.

I don't know when exactly it broke, but from my testing I know that up to version 5.1.2600.6748 USB 3.0 still works.
#2513AndaluIn my tests i used the same version of ntoskrnl.exe (5.1.2600.5512) for all boards.
#2514infuscomus⇗ @Andalu

which of the USB 3.0 drivers have you tested? there are several versions in this thread
#2515Andalu⇗ @infuscomus

Here I found two version of the modded driver, one is ¶ AMDXHCI_XP_FINAL and another is ¶ USB3bestforIntel. Both with no differences on my boards where USB3 doesn't work. Is there another version?
#2516infuscomus⇗ @Andalu

here are a few USB 3.0 drivers to try

amdxhci <- works for me with patched acpi.sys and ntoskrnl 6748
renesas
¶ Windows XP SP3 32bit and modern PC parts (128)

VIA usb 3.0 driver

¶ Windows XP SP3 32bit and modern PC parts (89)

I think there is an Etron driver too somewhere in this thread but I can't remember what page it was on.
#2517lsmlcx⇗ @infuscomus
where is the ntoskrnl 6748?
#2518infuscomus⇗ @lsmlcx

here is the multiprocessor version - if you need uniprocessor just ask

you may need to rename them

ntkrnlmp -> ntoskrnl
ntkrpamp -> ntkrnlpa



infuscomus has attached files to this post
#2519Doc.Brown
Zitat von ⇗ infuscomus im Beitrag ¶ #2518
@lsmlcx

here is the multiprocessor version - if you need uniprocessor just ask

you may need to rename them

ntkrnlmp -> ntoskrnl
ntkrpamp -> ntkrnlpa





Do you think thoose files could help with XP SP3 x86 compatibility for my Maximus XI Gene ? I tried lot of things(acpi504,different AHCI drivers) but I'm already stuck with BSOD A5(0x00010006,0x8a275098,0x00000000,0x00000000) or the only solution is to mod the bios to add XP compatibility(impossible for me cause I haven't necessary knowledge) ?

I'm only able to finish OS installation by pressing F5 or F7 for now,USB work well in XP and have 1 core or 6 core if I choose Standard PC or Multiprocessor MPS in F5 option,the big problem is with Asus TurboV  that don't install properly(DLL problem).For (extreme) overclocking this software is very usefull unfortunately :/

I also tried to make a ghost after install on X299 Rampage VI Apex but result on this BSOD on Gene too.

Thanks.
#2520diderius6⇗ @Doc.Brown
BSOD A5 with
0x10006 : ACPI_LINK_NODE_CANNOT_BE_DISABLED
ACPI found a link node, but cannot disable it. Link nodes must
be disable to allow for reprogramming

2 - Pointer to the link node. This device is missing the _DIS method.

I think, it can be hacked in any acpi.sys
Dietmar

 

Page 169

#2521infuscomus⇗ @Doc.Brown

I doubt it will help, but you might as well try anyway.

concerning BSOD A5(0x00010006,0x8a275098,0x00000000,0x00000000)
⇗ @diderius6 ⇗ @daniel_k
any ideas?
#2522Andalu⇗ @infuscomus

Thanks for your help ;) I tried all the driver suggested and also the ¶ Etron but even if correctly installed the USB3 doesn't work as really USB3. Also using the updated version for ntoskrnl and ntkrnlpa doesn't help.
I think that the only way is to modify the DSDT table. I'm still hoping for someone that can explain "how to do".
#2523diderius6⇗ @Doc.Brown

Make a try with this acpi.sys,
it is for XP 32 bit,
just small hack
Dietmar



diderius6 has attached files to this post
#2524Doc.Brown⇗ @diderius6 My poor knowledge doesn't allow me to understand what it is related to but I guess if it could be hacked it will be wonderful !
I'll test your ACPI file so much thanks ;)

⇗ @infuscomus  as USB works for me I think I will not test for now so,thanks for your reply
#2525PPeti66xFor those, who want make experiments with USB3 kernel compatibility, I collected all kernel updates beginning with 5.1.2600.6748:
⇗ https://drive.google.com/file/d/1Wm7Wvbd...yl6CK_sp1w/view

I can not test it, because both of my computers works correctly with the latest kernel known to be incompatible with some systems.

My USB3 experiences on Windows XP 32-bit:

Computer-1: ASRock Fatal1ty Z77 Professional, I7 3770 (non-k) CPU (Ivy bridge), BIOS v1.70-beta (in v1.90-beta one of my HDDs is not recognized)
USB3 (modded AMD driver) can be installed without changing the ACPI.SYS - but the null-driver must be uninstalled first. But also works with the ACPI 5048 from Longhorn. Everything seems to working OK, USB3 speeds really achieved (120 MiB/s reading, which is the limit of my pendrive).
This mainboard have Etron USB3 - this works on XP with official drivers, but these are unstable - causes BSOD cca. on every 2 weeks when I returning from standby mode, and sometimes in other cases.

Computer-2: Dell Precision M4800, chipset QM87, CPU 4810MQ (Haswell), BIOS A25 (30 okt 2018)
USB3 (modded AMD driver) can be installed only after updating ACPI.SYS to the ACPI 5048 from Longhorn (works with original and patched too). But this notebook have some switching mechanism: if compatible OS detected, ports are switched to USB3 controller, else to USB2 controller. Switching from USB3 to USB 2 requires restarting 2 times, but from USB2 to USB3 is switched instantly. So if I switching from Windows 7 to Windows XP 1st time, the ports will work in USB3 mode (USB3 speeds really achieved - 120MiB/s read speed, limited by pendrive), but if i start XP 2nd time, I will have only USB2.
There are also minor problems with ACPI.SYS 5048:
1. I can not use Fn-keys to set display brightness
2. Switching between internal and external display by Fn key does not work
3. Because of 2 graphics cards (in-CPU and nVidia Quadro), if display is turned off, it can not be turned on by normal way (XP probably switches to in-CPU graphics, which is non-working, because only 1 driver can be loaded at once). The only program which can reenable the display is the MultiMonitorTool by NirSoft with the switch command. But when I returning from standby, the login password must be entered without display (not always, but mostly).
Problems Solved by ACPI.SYS 5048:
1. Possible to install USB3 driver - but switching mechanism is still not resolved
2. Sleep mode works (with the original version it always failed)
#2526diderius6⇗ @Doc.Brown
A more elegant way is to put the missing

Method (_DIS, 0, NotSerialized)  // _DIS: Disable Device
            {
            }

in DSDT of Bios from Gene board at the end of the crashing device

Dietmar
#2527infuscomus⇗ @PPeti66x

thanks very much for these!

KB3033395(5.1.2600.6748-OK)
KB3134146(5.1.2600.7005-OK) - tested - OK
KB3140410(5.1.2600.7017-?)
KB3153171(5.1.2600.7053-?)
KB3175024(5.1.2600.7121-?)
KB3191256(5.1.2600.7146-?)
KB4011981(5.1.2600.7197-?)
KB4018490(5.1.2600.7259-OK) - tested - OK
KB4056615(5.1.2600.7392-?)
KB4101864(5.1.2600.7459-OK) - tested - OK
KB4230467(5.1.2600.7494-X) - tested - Code 39
KB4463103(5.1.2600.7581-X)
KB4486463(ntkrnlmp.exe only)(5.1.2600.7649-X)
#2528Doc.Brown
Zitat von ⇗ diderius6 im Beitrag ¶ #2526
@Doc.Brown
A more elegant way is to put the missing
 Method (_DIS, 0, NotSerialized)  // _DIS: Disable Device
{
}
in DSDT of Bios from Gene board at the end of the crashing device

Dietmar



I don't know what is DSDT,I'm totaly noob with that sadly :( I'm open for learn how to do it if you wan't to learn it to me but it will be very long I think cause I start from 0 :/
Just tested the hacked ACPI file and BSOD has changed now as you can see on the pic below :

   

And,not sure if it's linked or could help,the Asus TurboV error message after press F5 and choose "MPS multiprocessor" to be able to have complete installation :

   

I'm using 0057 bios below : ⇗ M11G-0057
but new 0022 is also good : ⇗ M11G-0022

Thanks.
#2529diderius6⇗ @Doc.Brown
Try this acpi.sys.
When it not works,
I am out of ideas just now
Dietmar



diderius6 has attached files to this post
#2530XPLives⇗ @PPeti66x

Zitat von ⇗ PPeti66x im Beitrag ¶ #2525
For those, who want make experiments with USB3 kernel compatibility, I collected all kernel updates beginning with 5.1.2600.6748:
⇗ https://drive.google.com/file/d/1Wm7Wvbd...yl6CK_sp1w/view

I can not test it, because both of my computers works correctly with the latest kernel known to be incompatible with some systems.

My USB3 experiences on Windows XP 32-bit:

Computer-1: ASRock Fatal1ty Z77 Professional, I7 3770 (non-k) CPU (Ivy bridge), BIOS v1.70-beta (in v1.90-beta one of my HDDs is not recognized)
USB3 (modded AMD driver) can be installed without changing the ACPI.SYS - but the null-driver must be uninstalled first. But also works with the ACPI 5048 from Longhorn. Everything seems to working OK, USB3 speeds really achieved (120 MiB/s reading, which is the limit of my pendrive).
This mainboard have Etron USB3 - this works on XP with official drivers, but these are unstable - causes BSOD cca. on every 2 weeks when I returning from standby mode, and sometimes in other cases.

Computer-2: Dell Precision M4800, chipset QM87, CPU 4810MQ (Haswell), BIOS A25 (30 okt 2018)
USB3 (modded AMD driver) can be installed only after updating ACPI.SYS to the ACPI 5048 from Longhorn (works with original and patched too). But this notebook have some switching mechanism: if compatible OS detected, ports are switched to USB3 controller, else to USB2 controller. Switching from USB3 to USB 2 requires restarting 2 times, but from USB2 to USB3 is switched instantly. So if I switching from Windows 7 to Windows XP 1st time, the ports will work in USB3 mode (USB3 speeds really achieved - 120MiB/s read speed, limited by pendrive), but if i start XP 2nd time, I will have only USB2.
There are also minor problems with ACPI.SYS 5048:
1. I can not use Fn-keys to set display brightness
2. Switching between internal and external display by Fn key does not work
3. Because of 2 graphics cards (in-CPU and nVidia Quadro), if display is turned off, it can not be turned on by normal way (XP probably switches to in-CPU graphics, which is non-working, because only 1 driver can be loaded at once). The only program which can reenable the display is the MultiMonitorTool by NirSoft with the switch command. But when I returning from standby, the login password must be entered without display (not always, but mostly).
Problems Solved by ACPI.SYS 5048:
1. Possible to install USB3 driver - but switching mechanism is still not resolved
2. Sleep mode works (with the original version it always failed)


Interesting list of kernel updates.  Maybe you can add the date of each kernel update next to it so it will be more helpful.

Although I think most people will use mainly the original SP0, SP1, SP2, SP3 versions.  Any post SP3 kernel I doubt many will be using but would be interesting to see if all post SP3 updates work at all with the USB modded drivers.

Which specific USB 3.0 modded driver do you test the 120MiB/s read speed on?  Can you link the file and I will retest.

This was on your Intel USB 3.0 ports on your Z77?

Try doing a sustained transfer rate reading a Blu-ray movie .m2ts video stream playback and see if it hiccups during the movie playback at any point.

Next try transferring a 100GB file from one USB hard drive to another USB hard drive using both Intel USB 3.0 ports and time the duration.

For your Z77 you should use BIOS v1.00, don't use the BETA.  Or use the latest version and repeat the test.



This is a common problem with notebooks using nVidia shared with Intel iGPU.  You will not see the discrete graphics card in a notebook and only the Intel iGPU in Windows XP.  This is why only Ivy Bridge and earlier chipsets should be used for notebooks and XP if you wish to use it for 3D gaming.  Most nVidia with Haswell and later are post XP driver support.

"1. I can not use Fn-keys to set display brightness
2. Switching between internal and external display by Fn key does not work"



These are related to the software that was preinstalled for that notebook to use those Function keys to perform a function.  If you installed a clean XP those normally will not function at all without adding the software.  Usually this software comes preinstalled with the OS together when you first bought it and sometimes there is no stand alone installer provided by the manufacturer website to do it with a clean XP install.   It might be possible to extract the registry entries and the driver files and copy them over to a clean XP installation and make it work but not an easy task.

Also I don't think there should be any need to install the modded ACPI for Haswell or Broadwell.  Both should install XP clean without BSOD A5 issues.

"USB3 (modded AMD driver) can be installed only after updating ACPI.SYS to the ACPI 5048 from Longhorn (works with original and patched too)."

What happens do you get an Error Code when installing AMD USB 3.0 modded driver on regular XP ACPI.SYS?
#2531kukonosauWhere is chipset drivers for Windows XP x86 and x64 and Windows 7 x86 and x64 for Ryzen? I have sometimes lagging several games in all systems besides Windows 10. This problem with processors or motherboard? Or absents chipset drivers?
#2532Doc.Brown
Zitat von ⇗ diderius6 im Beitrag ¶ #2529
@Doc.Brown
Try this acpi.sys.
When it not works,
I am out of ideas just now
Dietmar



⇗ @diderius6

Thanks again I will test it as soon as possible(this weekend I think cause I have to buy another pack of CD-R :D )
#2533infuscomusSo based on my testing hotfix KB4230467 for ntoskrnl introduces a bug that breaks the generic USB 3.0 driver for XP.
#2534PPeti66x⇗ @XPLives
About speed test:
A 3.27 GiB MKV file was copied from Pretec REX 150 64-GB pendrive to HDD, so it was only a fast testing. The copied file was not cached in memory before (it was copied to pendrive weeks earlier).
In both cases test was made on Intel USB3 with AMD modded driver (AMDXHCI_XP_FINAL.rar: ¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (128)).
The Etron controller can not achieve even 60 MiB/s with the official drivers. I am not tested AMD driver on the Etron controller.
On both cases on Windows XP was applied all non-SSE2 updates up to May 2019

"Next try transferring a 100GB file from one USB hard drive to another USB hard drive using both Intel USB 3.0 ports and time the duration."
To prove that ports working in USB3 mode, that test was enough. Both the WD VelociRaptor (cca. 140 MiB/s sequential write speed on the selected defragmented partition) and Samsung SSD HDDs had higher speed. Maybe I will do some other tests to check for the data integrity (the transferred MKV file had correct MD5 checksum).

About BIOS version:
In case of the Z77 motherboard, I am using this version many years. Because this motherboard have official Windows XP support, I think, BIOS version not affects the USB3 (by changelog, only DRAM compatibility was improved). The beta BIOS was released in November 2013 (the regular 1.70 in June 2013). I never see the BIOS v1.00, it was 1.3 and some alphabetical subversion.

"These are related to the software that was preinstalled for that notebook to use those Function keys to perform a function."
The mentioned 2 function is provided by the XP ACPI.SYS file (correctly works on SP3, and on x64 SP2). But it was not implemented in longhorn 5048 version, or some dependencies missing from the XP system.

On M4800 was possible to install near everything by extrancting the diver files from the installers. Some of the drivers was hard to find on the manufacrurer site, because packages provided by Dell sometimes lacked the XP driver version. Functioning of the Free Fall Sensor is questionable (Win7 driver was installed), but by the Device Manager it works correctly. Also the Intel management engine is older, than required. The device manager not shows any unknown or non-working hardware.

"What happens do you get an Error Code when installing AMD USB 3.0 modded driver on regular XP ACPI.SYS?"
The device is simply not found by Windows XP (not listed in Device Manager). After replacing the ACPI.SYS with the Longhorn version, a new unknown hardware is found, and is possible to install the device driver. After installing the modded driver and reverting the ACPI.SYS, the device driver not shows, and USB3 is disfunctional (no errors displayed). Longhorn 5048 ACPI.SYS is required only for Gen-4 (Haswell) and later mainboards. Patched version is required by a newer (Gen-6 or Gen-7 and later) mainboards.

Windows XP (32-bit) Kernel update dates (compile date time stamp in ntoskrnl.exe, Y.M.D H:M:S):
KB3033395, 5.1.2600.6748, 2015.02.06 07:14:27
KB3134146, 5.1.2600.7005, 2016.01.21 02:43:40
KB3140410, 5.1.2600.7017, 2016.02.05 16:36:08
KB3153171, 5.1.2600.7053, 2016.03.31 15:35:58
KB3175024, 5.1.2600.7121, 2016.08.16 00:08:27
KB3191256, 5.1.2600.7146, 2016.10.04 07:43:28
KB4011981, 5.1.2600.7197, 2017.02.10 06:39:21
KB4018490, 5.1.2600.7259, 2017.04.28 05:33:39
KB4056615, 5.1.2600.7392, 2017.12.05 19:47:10
KB4101864, 5.1.2600.7459, 2018.04.12 23:32:37
KB4230467, 5.1.2600.7494, 2018.05.20 17:10:49
KB4463103, 5.1.2600.7581, 2018.09.12 17:02:19
KB4486463, 5.1.2600.7649, 2019.01.08 17:48:43 (ntkrnlmp.exe)


⇗ @infuscomus
"So based on my testing hotfix KB4230467 for ntoskrnl introduces a bug that breaks the generic USB 3.0 driver for XP."
This was a great find!
#2535diderius6⇗ @Doc.Brown
Make a try with this Bios for the Gene XI board.
It is original Bios from Asus for the Gene XI board, but now not avaible on their website.
In its DSDT table, the _DIS is treated in another way
Dietmar

⇗ https://www.dropbox.com/s/py7qjgousqov3a...S-0057.rar?dl=0

 

Page 170

#2536XPLives⇗ @PPeti66x

Zitat von ⇗ PPeti66x im Beitrag ¶ #2534
@XPLives
About speed test:
A 3.27 GiB MKV file was copied from Pretec REX 150 64-GB pendrive to HDD, so it was only a fast testing. The copied file was not cached in memory before (it was copied to pendrive weeks earlier).
In both cases test was made on Intel USB3 with AMD modded driver (AMDXHCI_XP_FINAL.rar: ¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (128)).
The Etron controller can not achieve even 60 MiB/s with the official drivers. I am not tested AMD driver on the Etron controller.
On both cases on Windows XP was applied all non-SSE2 updates up to May 2019

"Next try transferring a 100GB file from one USB hard drive to another USB hard drive using both Intel USB 3.0 ports and time the duration."
To prove that ports working in USB3 mode, that test was enough. Both the WD VelociRaptor (cca. 140 MiB/s sequential write speed on the selected defragmented partition) and Samsung SSD HDDs had higher speed. Maybe I will do some other tests to check for the data integrity (the transferred MKV file had correct MD5 checksum).

About BIOS version:
In case of the Z77 motherboard, I am using this version many years. Because this motherboard have official Windows XP support, I think, BIOS version not affects the USB3 (by changelog, only DRAM compatibility was improved). The beta BIOS was released in November 2013 (the regular 1.70 in June 2013). I never see the BIOS v1.00, it was 1.3 and some alphabetical subversion.

"These are related to the software that was preinstalled for that notebook to use those Function keys to perform a function."
The mentioned 2 function is provided by the XP ACPI.SYS file (correctly works on SP3, and on x64 SP2). But it was not implemented in longhorn 5048 version, or some dependencies missing from the XP system.

On M4800 was possible to install near everything by extrancting the diver files from the installers. Some of the drivers was hard to find on the manufacrurer site, because packages provided by Dell sometimes lacked the XP driver version. Functioning of the Free Fall Sensor is questionable (Win7 driver was installed), but by the Device Manager it works correctly. Also the Intel management engine is older, than required. The device manager not shows any unknown or non-working hardware.

"What happens do you get an Error Code when installing AMD USB 3.0 modded driver on regular XP ACPI.SYS?"
The device is simply not found by Windows XP (not listed in Device Manager). After replacing the ACPI.SYS with the Longhorn version, a new unknown hardware is found, and is possible to install the device driver. After installing the modded driver and reverting the ACPI.SYS, the device driver not shows, and USB3 is disfunctional (no errors displayed). Longhorn 5048 ACPI.SYS is required only for Gen-4 (Haswell) and later mainboards. Patched version is required by a newer (Gen-6 or Gen-7 and later) mainboards.

Windows XP (32-bit) Kernel update dates (compile date time stamp in ntoskrnl.exe, Y.M.D H:M:S):
KB3033395, 5.1.2600.6748, 2015.02.06 07:14:27
KB3134146, 5.1.2600.7005, 2016.01.21 02:43:40
KB3140410, 5.1.2600.7017, 2016.02.05 16:36:08
KB3153171, 5.1.2600.7053, 2016.03.31 15:35:58
KB3175024, 5.1.2600.7121, 2016.08.16 00:08:27
KB3191256, 5.1.2600.7146, 2016.10.04 07:43:28
KB4011981, 5.1.2600.7197, 2017.02.10 06:39:21
KB4018490, 5.1.2600.7259, 2017.04.28 05:33:39
KB4056615, 5.1.2600.7392, 2017.12.05 19:47:10
KB4101864, 5.1.2600.7459, 2018.04.12 23:32:37
KB4230467, 5.1.2600.7494, 2018.05.20 17:10:49
KB4463103, 5.1.2600.7581, 2018.09.12 17:02:19
KB4486463, 5.1.2600.7649, 2019.01.08 17:48:43 (ntkrnlmp.exe)


@infuscomus
"So based on my testing hotfix KB4230467 for ntoskrnl introduces a bug that breaks the generic USB 3.0 driver for XP."
This was a great find!


Thanks for including the time stamps!  Are the version numbers extracted from the ntoskrnl.exe file except the last one?

Now we need to add the version and time stamps for XP SP0, SP1, and SP2 along side these for reference.  Other kernels are Server 2003 32-Bit, XP POS 2009 32-Bit for comparison and possible testing.  There was also XP Media Center Edition.


This is very fascinating you got 140MB/s speeds on Intel USB 3.0 -> Intel USB 3.0 ports and compared to the Etron much faster?

For your single file 100GB test on Intel USB 3.0 port to Intel USB 3.0 port can you give me the time duration  Minutes, Seconds.XX that elapsed?

I haven't tested mine but let's see if we match BIOS versions if this affects.

I will upload my rare v1.00 BIOS to share with you.

You run the program within XP and it will flash it back to genuine v1.00 and once rebooted you will have BIOS v1.00 :)

This was the first BIOS version released for the Fatal1ty splash logo.  It's a bit strange seeing it for the time if you've been used to v1.70 Beta all this time.

If you can repeat your tests on BIOS V1.00 to see if any changes are noticed.

One final test is to reinstall XP using F7 or F5 NO ACPI mode which should force it to MPS mode and try all the USB 3.0 modded drivers again with the different kernel versions to see if that affected anything.

If we can isolate which modded drivers work in both modded ACPI and NO ACPI modes this is the best driver choice.  Keep note of which kernel version had success.

The reason I mentioned the Function Key issue was software related is even when I install XP clean onto VAIO laptop all Function Keys on top do nothing unless you install the correct software and registry patches.  And I think on the VAIO they did not have a stand alone installer for this.  It was integrated into the XP install with all the other bloated software when the laptop is brand new or using the recovery disc images.

XPLives has attached files to this post ⇗ u10321_XPLives.html
#2537Doc.Brown
Zitat von ⇗ diderius6 im Beitrag ¶ #2535
@Doc.Brown
Make a try with this Bios for the Gene XI board.
It is original Bios from Asus for the Gene XI board, but now not avaible on their website.
In its DSDT table, the _DIS is treated in another way
Dietmar

⇗ https://www.dropbox.com/s/py7qjgousqov3a...S-0057.rar?dl=0


wow awesome ! I'll test it tonight and your last ACPI file too,thank you ^^
#2538kukonosau⇗ @diderius6
Where is chipset drivers for Windows XP x86 and x64 and Windows 7 x86 and x64 for Ryzen? I have sometimes lagging several games in all systems besides Windows 10. This problem with processors or motherboard? Or absents chipset drivers?
#2539diderius6⇗ @kukonosau
No chipset driver for AMD Ryzen and XP.
But a lot of drivers for XP can be found via VEN_&DEV_ number
Dietmar
#2540IntiMD⇗ @kukonosau

For Windows 7: ⇗ https://www.amd.com/en/support/chipsets/amd-socket-am4/b350 --> Windows 7 - 64-Bit Edition

For Windows XP there's different situation, although I can try helping you when it comes to missing drivers. Get Snappy Driver Installer Origin (only drivertool that has integrity - no bundled shit, open-source) from ⇗ here. Get "Application Only", unpack the archive and load the program. Choose "Download indexes only". After it downloads and shows list of drivers, quit the program and copy latest .snp log file from "logs". Upload it to say zippyshare or anonfile, or you can make a forum attachment if it fits the size. I'll take a look and tell you which drivers you should install.

(Sidenote of SDIO, even though it's most genuine, i recommend not letting the app installing the drivers itself, rather mouse over the device to check driver info such as localisation of driver in the driverpack, which version is it, all that. Download the driverpack and navigate to the folder, if it has an installer AND is not bloated, use the installer. if it doesn't have an installer or it's bloated, install it manually through devmgmt.msc.)

But like I said, get the latest .SNP log and upload it.
#2541Doc.Brown⇗ @diderius6
Same BSOD A5 with the other 0057 bios
I try with last ACPI file after making a fresh ISO ;)
#2542kukonosau⇗ @diderius6
This is opportunity without SDI (Snappy Driver Installer)? I have lagging in all system in several games besides Windows 10!!! Unfortunately, Windows 7 has lagging also!!! May be, this from processor Ryzen 3 2200G with integrated graphics card? May be, for example, Ryzen 5 2600 is stability work in Windows 7 or Windows XP? Or I must find chipset drivers?
#2543PPeti66x⇗ @XPLives

"Are the version numbers extracted from the ntoskrnl.exe file except the last one?"
Yes, but should be same for all files in the package.

"This is very fascinating you got 140MB/s speeds on Intel USB 3.0"
140 MiB/s was not achieved via USB, it was reading from SATA HDD to memory - I needed to know, which device is slower. I have not fast enough device to test the maximal speed of the USB3.

XP kernel versions:
Date time stamps are extracted from ntoskrnl.exe file.
XP SP SP3 32-bit english (untouched CD image)
XP POSReady 2009 (untouched CD image)
(SP3 and POSReady 2009 file CRC32 is same.)
SP3.CAB\ ntkrnlmp.exe, ntkrnlpa.exe, ntkrpamp.exe, ntoskrnl.exe: 5.1.2600.5512 2008.04.13 19:27:39
SP3.CAB\ acpi.sys: 5.1.2600.5512 2008.04.13 18:36:33

XP SP2 32-bit + Media Center 2005 (unofficial CD image, but seems to be correct, not updated)
SP3.CAB\ ntkrnlmp.exe, ntkrnlpa.exe, ntkrpamp.exe, ntoskrnl.exe: 5.1.2600.2180 2004.08.04 06:19:48
SP3.CAB\ acpi.sys: 5.1.2600.2180 2004.08.04 06:07:35

XP SP1a 32-bit (untouched CD image)
SP3.CAB\ ntkrnlmp.exe, ntkrnlpa.exe, ntkrpamp.exe, ntoskrnl.exe: 5.1.2600.1106 2002.08.29 09:03:24
SP3.CAB\ acpi.sys: 5.1.2600.1106 2002.08.29 08:09:03

XP SP2 x64 (untouched CD image)
SP2.CAB\ ntkrnlmp.exe: 5.2.3790.3959 2007.02.17 07:03:32
SP2.CAB\ ntoskrnl.exe: 5.2.3790.3959 2007.02.17 07:01:10
SP2.CAB\ acpi.sys: 5.2.3790.3959 2007.02.17 06:37:56

I have no XP SP0 version and Server versions.

"The reason I mentioned the Function Key issue..."
Windows XP SP3 ACPI.SYS incorporates some Fn functions. I had no Dell software installed for this, because these was only for Windows 7, and disfunctional on XP. Only Device Drivers was installed, but I not found any specific device for this.

New speed test:
Source HDD: ADATA HV620S
Target HDD: Seagate Barracuda 7200.12 via StarTech USB to IDE/SATA adapter
Mainboard: ASRock Fatal1ty Z77 Professional
BIOS: 1.00, 1.70b (1.90b not tested, is incompatible with one of my HDDs)
XP kernel: ntoskrnl.exe 5.1.2600.7649, ntkrnlpa.exe 5.1.2600.7581
Controller: Intel C216 (PCI\VEN_8086&DEV_1E31)
Controller: Etron EJ188H

Video file: single AVI file, 161384651246 bytes, 153.908 GiB
(Speed was practically limited by the HDDs - I do not have faster high capacity media.
Speed constantly slowed from cca. 122000 kbytes/s to cca. 70000 kbytes/s)

Intel controller with BIOS v1.70b, microcode 306A9/15
27min 53sec = 1673 sec, 91.995 MiB/s

Etron Controller with BIOS v1.70b, microcode 306A9/15 (device driver v0.0.0.119)
27min 55sec = 1675 sec, 91.886 MiB/s

Intel controller with BIOS v1.00, microcode 306A9/C
27min 43sec = 1663 sec, 92.549 MiB/s

Etron controller with BIOS v1.00, microcode 306A9/C (device driver v0.0.0.119)
28min 14sec = 1694 sec, 90.855 MiB/s

On Windows 7 the speed is similiar.
It was amazing to see the old Fatal1ty logo in the 1.00 BIOS. In the original 1.3? BIOS was same or similiar. But the reaction on the F2/Del key was strange.

IMPORTANT NOTE: By backdating the BIOS the microcode updates was not backdated! The microcode update 306A9 comes from BIOS 1.90beta, which was not used, because of incompatibility with my 2TB WD Green HDD (not listed in BIOS, not seen by Windows).

When I was unable to achieve 60 MiB/s on Etron controller (around Q4/2014) the driver version was older (probably 0.0.0.118, or may be 0.0.0.115beta), and BIOS was 1.60 or 1.70 (non-beta). The speed was similiar on Win7 x64 and on WinXP 32-bit. And both operating systems was actualized from this time. What caused this big difference is unknown.
#2544lsmlcxI had test my z170 like this.
I found something interesting.
used ACPI.sys
then I used AMD xHCI,the error code is 39.
then I used NEC  xhci,the device starts OK,and I don't install hub driver,
then I reinstall AMD xhci,and AMD xhci drive can works well.
#2545skullteriaError Code 39 is related with missing functions on dependencies files or missing dependencies files. It probably occours because AMD XHCI don't copy USBD.sys and NEC XHCI, copy. On Windows 7, what AMD XHCI is designed, USBD.sys is placed on Drivers folder by default, on XP, with XHCI system, no.

The relevant problem is the error is code 10, because it is related with start device and not really driver.
#2546dencorsoXP SP0: ntkrnlmp.exe, ntkrnlpa.exe, ntkrpamp.exe, ntoskrnl.exe: 5.1.2600.0 - Aug 18, 2001
#2547DibyaDoes this xhci driver works without bios mod?
#2548infuscomus⇗ @Dibya

based on my testing, yes it does

hotfix KB4230467 KB4463103 KB4486463 break the driver
¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (169)
#2549GelipI am trying to understand why WinXP x64 starts in VMware with full graphics support. Maybe because VMware has the UGA protocol?

I found interesting tools for UEFI shell:
⇗ ScanGOP_LocateProtocol & ScanUGA_LocateProtocol
⇗ screenmodes.efi (⇗ source code)

Zitat
The original EFI (Extensible Firmware Interface) specification and EDK (EFI Development Kit) supported a text output protocol and UGA (Universal Graphic Adapter), a device-independent VGA-derived graphics protocol. In 2005, Intel handed EFI standardization over to an industry consortium, UEFI, and that consortium decided to replace UGA with GOP (Graphics Output Protocol) to remove the remaining VGA hardware dependencies.



VMware has UEFI 2.30 but still has UGA and my ASUS has UEFI 2.31 and only has GOP protocol:

VMware 8 screenmodes.efi:

No ConsoleControl handle found via HandleProtocol
Found ConsoleControl handle via LocateProtocol
Found 1 ConsoleControl handles via LocateHandleBuffer

No UGA handle found via HandleProtocol
Found UGA handle via LocateProtocol
Found 2 UGA handles via LocateHandleBuffer

No GOP handle found via HandleProtocol
Found GOP handle via LocateProtocol
Found 2 GOP handles via LocateHandleBuffer


ASUS screenmodes.efi:
No ConsoleControl handle found via HandleProtocol
Found ConsoleControl handle via LocateProtocol
Found 1 ConsoleControl handles via LocateHandleBuffer

No UGA handle found via HandleProtocol
No UGA handle found via LocateProtocol
No UGA handles found via LocateHandleBuffer

No GOP handle found via HandleProtocol
Found GOP handle via LocateProtocol
Found 1 GOP handles via LocateHandleBuffer
#2550lsmlcx
Zitat von ⇗ skullteria im Beitrag ¶ #2545
Error Code 39 is related with missing functions on dependencies files or missing dependencies files. It probably occours because AMD XHCI don't copy USBD.sys and NEC XHCI, copy. On Windows 7, what AMD XHCI is designed, USBD.sys is placed on Drivers folder by default, on XP, with XHCI system, no.

The relevant problem is the error is code 10, because it is related with start device and not really driver.


⇗ @skullteria
thank you very much.
It works.

 

Page 171

#2551diderius6On the Lenovo Flex 10 notebook with Bay Trail N2806 cpu and 64 bit legacy Bios
I get acpi.sys BSOD A5 (0x11, 0x08,..)
on XP SP3 and also on Win7 32 bit.
This remembers me a lot about the reversions number r2
in the DSDT table. Soon I change DSDT via iasl into version r1 (for 32 bit)
and flash with Epromer Revelprog IS
Dietmar
#2552dencorso
Zitat von ⇗ infuscomus im Beitrag ¶ #2548
hotfix KB4230467 KB4463103 KB4486463 break the driver
¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (169)


⇗ @daniel_k: would you kindly take a look at the newer kernel versions and see whether it's possible to fix the modded AMD drivers so that they can be used with the latest kernel version? Sorry to bother and thanks in advance!
#2553lsmlcx
Zitat von ⇗ skullteria im Beitrag ¶ #2545
Error Code 39 is related with missing functions on dependencies files or missing dependencies files. It probably occours because AMD XHCI don't copy USBD.sys and NEC XHCI, copy. On Windows 7, what AMD XHCI is designed, USBD.sys is placed on Drivers folder by default, on XP, with XHCI system, no.

The relevant problem is the error is code 10, because it is related with start device and not really driver.


⇗ @skullteria
I got a new problem.
When I put usbd.sys on Driver folder (\Windows\system32\drivers\), And install the modded AMD XHCI drivers.
It works well.
But when I restart the PC, After the scrollbar the PC got Black screen, I cann't see the desktop, But it doesn't Crash.
I donn't know why, It seems like the problem still happend with the modded AMD XHCI drivers.

I have tested it many times, every time.
#2554infuscomus⇗ @lsmlcx

strange, I did not run into this problem

is usbd.sys located in system32/drivers on a fresh install of XP? does it need to be copied?

does the driver work if you dont copy usbd.sys?
#2555lsmlcx⇗ @infuscomus
without copying usbd.sys, the error code is 39.
when i copyed usbd.sys, then install driver, OK.
but after reboot, I sad that.
#2556lsmlcx[[File:amd_new.zip]]
here is the new amd xhci version, DriverVer=12/04/2018, 1.1.0.0276
the xhci seems support xp, but the hub seems not.
maybe you can use old hub driver.

who can try to Crack



lsmlcx has attached files to this post
#2557infuscomus⇗ @diderius6

I think I may have gotten Intel USB 3.0 ports working in XP textmode setup

in txtsetup.sif edit

[SourceDisksFiles]

amdxhc.sys = 100,,,,,,,4,0,0
amdhub30.sys = 100,,,,,,,4,0,0

[HardwareIdsDatabase]

PCI\VEN_8086&CC_0C0330 = "amdxhc"
AMDUSB30\ROOT_HUB30 = "amdhub30"
AMDUSB30\CLASS_09&SUBCLASS_00 = "amdhub30"
AMDUSB30\CLASS_09&SUBCLASS_01 = "amdhub30"

[InputDevicesSupport.Load]
usbehci = usbehci.sys
usbohci = usbohci.sys
usbuhci = usbuhci.sys
usbhub = usbhub.sys
usbccgp = usbccgp.sys
amdxhc = amdxhc.sys
amdhub30 = amdhub30.sys
hidusb = hidusb.sys
serial = serial.sys
serenum = serenum.sys
usbstor = usbstor.sys

[files.amdxhc]
hid.dll,2
hccoin.dll,2
hidclass.sys,4
hidparse.sys,4
usbd.sys,4
usbport.sys,4
amdxhc.sys,4

[files.amdhub30]
amdhub30.sys,4

[InputDevicesSupport]
usbehci = "Enhanced Host Controller",files.usbehci,usbehci
usbohci = "Open Host Controller",files.usbohci,usbohci
usbuhci = "Universal Host Controller",files.usbuhci,usbuhci
usbhub = "Generic USB Hub Driver",files.usbhub,usbhub
hidusb = "Human Interface Parser",files.hidusb,hidusb
serial = "Serial Port Driver",files.none,serial
serenum = "Serial Port Enumerator",files.none,serenum
usbstor = "USB Storage Class Driver",files.usbstor,usbstor
usbccgp = "USB Generic Parent Driver",files.usbccgp,usbccgp
amdxhc = "USB xHCI Compliant Host Controller",files.amdxhc,amdxhc
amdhub30 = "Generic USB 3.0 Hub Driver",files.amdhub30,amdhub30



can you test this on your end?
#2558diderius6⇗ @infuscomus

I just edit my txtsetup.sif with your extra values for AMD xhci and make a check, that nothing is missed.
Then I add to installations folder i386 amdxhc.sy_ and amdhub30.sy_ final version for x86 from ⇗ @daniel_k .
All seems ok, but I do not know the behavior of usbd.sys.
Some years ago I make the same for USB ehci boot, but I use F6 method and Nlite for to integrate everything.
In this moment I am installing on the Asrock fatal1ty z370 gaming k6 board
Dietmar

EDIT: On first reboot I got BSOD 0x7B, because I use STORAHCI driver from ⇗ @skullteria and storport.sys is gone.
Now XP continues installing after I add storport.sys again to windows\system32\drivers.
USB mouse does not work during install.
usbd.sys amdxhc.sys amdhub30.sys are in windows\system32\drivers  but usbstor.sys is missed there. I add usbstor.sys by hand.
Ok, I get A5 (0x11,..) because crazy XP changed acpi.sys back to original version, I copy modded acpi.sys by hand and continue install.

EDIT2: Install is finished. I see, that for amdxhc.sys and also for amdhub30.sys there is no ImagePath and no Group entry in registry and no entry in registry for usbstor.sys. I think, to integrate the drivers via F6 is more easy.

EDIT3: When I install the final AMD USB driver via hand, the missing entries are put into registry.
No usbstor entry in registry until you connect an USB stick. Then, all USB driver works on the Asrock board.
#2559infuscomus⇗ @diderius6

Thanks,

did USB mouse and keyboard work for you during textmode phase?

I was hoping it would work with just a txtsetup.sif mod without any registry hacks, unfortunately nlite wont do the registry hacks automatically to setupreg.hiv and hivesys.inf needed for Intel USB 3.0 to work during XP setup and these will always have to be done manually.
#2560diderius6⇗ @infuscomus
When you make a txtsetup.oem with all the files from USB,
it will work using Nlite
Dietmar
#2561infuscomus⇗ @diderius6

is it possible to specify multiple driver files in a txtsetup.oem?

also did USB mouse and keyboard work for you during textmode phase on intel usb 3.0 ports?
#2562diderius6⇗ @infuscomus
No USB during setup of XP.
Yes, I put 7 USB drivers in txtsetup.oem,
and named all their *.inf files there
Dietmar
#2563infuscomus⇗ @diderius6

OK,

damn, I thought I had managed to get Intel USB 3.0 working in XP textmode setup, but since it does not work for you it means something else must be happening.
#2564Mov AX, 0xDEADAnother update ¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (12):

Zitat
- WinDBG via USB or LAN connection unresolved


to

Zitat
WinDBG via LAN connection solved (custom kdnet.dll)



I've fixed all critical bugs in KDNET transport on real hardware and confirm "WinDBG works with NET for Windows XP x32"
Tested on realtek and qualcomm atheros pci-e chips. Now step-debug speed is amazing !


p.s. it need modding hal.dll & ntoskrrnl.exe, i plan to find workaround to not touching these files and release guide on this week...
p.s.s. Diderius6, you will get test files soon...

#2565diderius6⇗ @Mov AX, 0xDEAD
Niccceee, I want:)))), test on all compis
Dietmar

 

Page 172

#2566diderius6⇗ @Mov AX, 0xDEAD
Interesting, which driver is used for Windbg to connect to other compi via lan.
Is it the Bios lan driver?
If yes, this debug method will even work,
if there is no driver for this lan device under XP
Dietmar

PS:"Tested on realtek and qualcomm atheros pci-e chips. "
This is an interesting detail.
Until now, you cant add an pci-e COM1 card, for to get Windbg working,
because no driver for the pci-e bus is ready before Windbg needs it.
But now, as long as you can add a pci-e lan card, Windbg will work.

Via this way I come to the idea,
that it is even not needed to implement a whole lan driver into windbg,
it would be enough to make use of the the pci-e bus for Windbg and than take a normal COM1 seriell pci-e card.
#2567Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #2566
@Mov AX, 0xDEAD
Interesting, which driver is used for Windbg to connect to other compi via lan.
Is it the Bios lan driver?

that it is even not needed to implement a whole lan driver into windbg
it would be enough to make use of the the pci-e bus for Windbg and than take a normal COM1 seriell pci-e card.

These drivers was writed by ms/vendors exclusively for kernel debugging, MS published examples for intel&realtek (see last windbg x64, folder DDK). Also drivers do not use full features of netcard, only minimal for receive&send UDP packets, kdnet.dll include minimal implementation of IP stack (arp/dhcp client/etc)
#2568diderius6⇗ @Mov AX, 0xDEAD

Will lan debug work under XP SP3
using there Windbg 6.12.0002.633 ?
This version runs under XP SP3 and can debug Win2000, XP, Server2003, Vista, Win7
each 32 bit and 64 bit architektures

Dietmar
#2569Doc.BrownHi guys :)

After some more testing with bios and ACPI.sys provided by ⇗ @diderius6 unfortunately I'm always stuck with A5 BSOD on the Asus Gene 11 and 8700K,with the last modded ACPI.sys there's more bugged info with the BSOD as you can see on the screen below:



Started by integrate AHCI driver for A352 device by Fernando,after that tested by adding AMDXHCI and STOREAHCI but nothing help,also tried all ACPI5048 and also the one for 5512 XP build but fail,fail,fail
If you see more things to test I'm open ^^

Thanks for your help
#2570diderius6⇗ @Doc.Brown

Until now the problem is, that the Gene XI board has no serial COM1 port for debug.
But very soon, thanks to ⇗ @Mov AX, 0xDEAD this problem is gone and I can help you
Dietmar
#2571Doc.Brown⇗ @diderius6

That's a good news I'm hurry to see some update so :)
#2572infuscomus⇗ @diderius6

just asking, there are pci-e serial port cards you can get, does debugging work when using those?
#2573diderius6⇗ @infuscomus
When I understand ⇗ @Mov AX, 0xDEAD correct,
Microsoft offers drivers for network cards special for Kernel debug,
even when they are connected via pci-e(!). This would mean, that for example you can debug a compi with Intel i219-v
lan, even there is no XP driver until now for this device. Or you can put your own lan card into pci-e slot and start debugging.
This never works before.

What is not clear until now for me is, if everything can be done (Host and Target compi)
under XP SP3, when you have windbg, which works under XP SP3 and can debug compi with Win7
Dietmar
#2574diderius6⇗ @Mov AX, 0xDEAD
Yesssssssssssssssssssssssssssaaaaaaaaaa it works:))))))))))))))!!!!!!!!!!!!!!!!!

Microsoft (R) Windows Debugger Version 6.12.0002.633 X86
Copyright (c) Microsoft Corporation. All rights reserved.

Using NET for debugging
Opened WinSock 2.0
Waiting to reconnect...
Connected to target 192.168.2.108 on port 50000.


Dietmar

PS: Everything under XP SP3(!).
#2575diderius6⇗ @Mov AX, 0xDEAD

How can I sent "break" command from host to debugged target compi?
At the window called Port Number from windbg for lan debug is the input

50000 this.is.secret.key

correct
Dietmar

PS: "Network debugging uses a 256-bit key that is specified as four 64-bit values, in base 36, separated by periods. Each 64-bit value is specified by using up to 13 characters. Valid characters are the letters a through z and the digits 0 through 9. "


EDIT: Now I think, my connection via XP SP3 as host machine is not complete:
Microsoft (R) Windows Debugger Version 6.3.9600.17200 X86 is from win 8.1
Microsoft (R) Windows Debugger Version 6.12.0002.633 X86 is my version on XP SP3
#2576diderius6Crazy, I cant install the win 8.1 sdk on real Win8.1
The blue map appears for a second and then disappears
Dietmar

EDIT: What a crap is win 8.1..

So, at the moment I dont have windbg Microsoft (R) Windows Debugger Version 6.3.9600.17200 X86  from win 8.1
and I dont know, how to get it even I have original Win 8.1 32 bit installed.
#2577nektandraGentlemen, it is what are you doing tremendous and I understand that I tear off you from a solution of really difficult tasks, but you could render me the small help? I try to install Windows XP х86 on the motherboard with a chipset of B350 and the Ryzen processor. Thanks to the detailed instruction of kindly provided ⇗ @infuscomus I replaced in a distribution kit all copies of the acpi.sys file with the file from acpi5048_x86_intel_amd_final.rar. After that I promoted from the blue screen with error A5 to error 7B. It is obvious that at this stage I should integrate drivers of the SATA controller correctly. Using nlite I tried Universal 32bit AMD AHCI driver v1.2.1.321 mod by Fernando and Universal 32bit AMD AHCI driver v6.1.3.35 mod by Fernando. Also I without results tried to use Scsiport and Storport of the driver the laid-out ⇗ @daniel_k before reached me that for them there are no files of txtsetup.oem. Tell me please,

1 What drivers of the SATA controller of a chipset of AMD 350 are suitable for Windows XP x86 better?

2 If Scsiport or Storport of the driver from ⇗ @daniel_k are the best version of the driver whether then it is necessary to generate manually for them txtsetup.oem?

3 At last if my assumptions are quite misleading, then how it is correct to integrate driver Storport from ⇗ @daniel_k into the Windows XP distribution kit?
#2578diderius6⇗ @nektandra
Only the STORAHCI driver from ⇗ @skullteria works on AMD Ryzen boards,
see this driver in my post #881
Dietmar
#2579Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #2574
@Mov AX, 0xDEAD
Using NET for debugging
Opened WinSock 2.0
Waiting to reconnect...
Connected to target 192.168.2.108 on port 50000.
....
PS: Everything under XP SP3(!).

Old windbg for winxp will not work with transport from win8.1 (it doesnt have field for entering password), you wont see anything after "Connected to target 192.168.2.108 on port 50000". If you can find version of windbg for winxp with password support - it probably will work.
#2580diderius6⇗ @Mov AX, 0xDEAD

Do you have an idea,
where I can get a newer windbg version which works for lan debug of XP
Dietmar

PS: I cant install SDK 8.1 for unknown reason in Win 8.1 32 bit. This Win 8.1 tells: Incompatible program..
Dietmar

 

Page 173

#2581Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #2576

So, at the moment I dont have windbg Microsoft (R) Windows Debugger Version 6.3.9600.17200 X86  from win 8.1
and I dont know, how to get it even I have original Win 8.1 32 bit installed.

- start "X86 Debuggers And Tools-x86_en-us.msi" manualy, it will not add menus in Programs, create link to "c:\Program Files (x86)\Windows Kits\8.1\Debuggers\x86\windbg.exe"
or
- extract "X86 Debuggers And Tools-x86_en-us.msi" to any folder, create link
#2582diderius6⇗ @Mov AX, 0xDEAD
I just found
⇗ https://github.com/kbandla/installers/bl...s-x86_en-us.msi
Dietmar
#2583Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #2573
@infuscomus
When I understand @Mov AX, 0xDEAD correct,
Microsoft offers drivers for network cards special for Kernel debug,
even when they are connected via pci-e(!). This would mean, that for example you can debug a compi with Intel i219-v
lan, even there is no XP driver until now for this device. Or you can put your own lan card into pci-e slot and start debugging.


- host PC can have any card if owner has driver for windows
- target pc must have card only supported KD NET, ⇗ http://go.microsoft.com/fwlink/p/?linkid=230754
- when boomgr load winload/ntosk/hal it also load kdnet.dll + check for available pci netcard
- if netcard is supported it load proper .dll like kd_02_8086.dll (intel), this dll is special driver for kernel debugging

p.s. windows 8.x also has new BOOT DEBUGGER, all drivers implemented in winload and no need extern dll
#2584nektandra
Zitat von diderius6

Only the STORAHCI driver from @skullteria works on AMD Ryzen boards,
see this driver in my post #881
Dietmar



Excellently! Many thanks! I have to apologize for not reading the whole branch of the forum in a row.

After installing with ahci the driver from message 881, I updated the sata driver using the amd_ahci_x86 from message 1669.

Whether correctly I understand that AMDXHCI_XP_FINAL.rar from the message 2225 contains the working driver of the USB controller for AMD B350?

#2585diderius6⇗ @Mov AX, 0xDEAD
I get this windbg version to work under win 8.1.
But XP hangs during boot.
May be because of hanging, the "break" or "g" command not works.
Tomorrow I set up new Win7 32 bit.
The connection seems now to be ok
Dietmar

Microsoft (R) Windows Debugger Version 6.3.9600.17200 X86
Copyright (c) Microsoft Corporation. All rights reserved.

Using NET for debugging
Opened WinSock 2.0
Waiting to reconnect...
Connected to target 192.168.2.108 on port 50000 on local IP 192.168.2.101.
Connected to Windows XP 2600 x86 compatible target at (Tue Oct 1 01:47:23.109 2019 (UTC + 2:00)), ptr64 FALSE
Kernel Debugger connection established.
Symbol search path is: *** Invalid ***
****************************************************************************
* Symbol loading may be unreliable without a symbol search path. *
* Use .symfix to have the debugger choose a symbol path. *
* After setting your symbol path, use .reload to refresh symbol locations. *
****************************************************************************
Executable search path is:
*********************************************************************
* Symbols can not be loaded because symbol path is not initialized. *
* *
* The Symbol Path can be set by: *
* using the _NT_SYMBOL_PATH environment variable. *
* using the -y <symbol_path> argument when starting the debugger. *
* using .sympath and .sympath+ *
*********************************************************************
*** ERROR: Symbol file could not be found. Defaulted to export symbols for ntkrnlmp.exe -
Windows XP Kernel Version 2600 MP (1 procs) Free x86 compatible
Built by: 2600.xpsp_sp3_qfe.190108-0655
Machine Name:
Kernel base = 0x804d7000 PsLoadedModuleList = 0x805634c0
System Uptime: not available


Intel Storage Driver Ver: 11.2.0.1006

AhciHwFindAdapter finishing
#2586diderius6Yesssaaaaaaaa, in "Safe Mode" (F8) it works!!!

Dietmar

Microsoft (R) Windows Debugger Version 6.3.9600.17200 X86
Copyright (c) Microsoft Corporation. All rights reserved.

Using NET for debugging
Opened WinSock 2.0
Waiting to reconnect...
Connected to target 192.168.2.108 on port 50000 on local IP 192.168.2.101.
Connected to Windows XP 2600 x86 compatible target at (Tue Oct 1 02:10:13.745 2019 (UTC + 2:00)), ptr64 FALSE
Kernel Debugger connection established.
Symbol search path is: *** Invalid ***
****************************************************************************
* Symbol loading may be unreliable without a symbol search path. *
* Use .symfix to have the debugger choose a symbol path. *
* After setting your symbol path, use .reload to refresh symbol locations. *
****************************************************************************
Executable search path is:
*********************************************************************
* Symbols can not be loaded because symbol path is not initialized. *
* *
* The Symbol Path can be set by: *
* using the _NT_SYMBOL_PATH environment variable. *
* using the -y <symbol_path> argument when starting the debugger. *
* using .sympath and .sympath+ *
*********************************************************************
*** ERROR: Symbol file could not be found. Defaulted to export symbols for ntkrnlmp.exe -
Windows XP Kernel Version 2600 MP (1 procs) Free x86 compatible
Built by: 2600.xpsp_sp3_qfe.190108-0655
Machine Name:
Kernel base = 0x804d7000 PsLoadedModuleList = 0x805634c0
System Uptime: not available


Intel Storage Driver Ver: 11.2.0.1006

AhciHwFindAdapter finishing
SAFEBOOT: skipping device = mnmdd.SYS(Video Save)
SAFEBOOT: skipping device = RDPCDD.SYS(Video Save)
SAFEBOOT: skipping device = RasAcd.SYS(Streams Drivers)
SAFEBOOT: skipping device = IPSec.SYS(PNP_TDI)
SAFEBOOT: skipping device = Tcpip.SYS(PNP_TDI)
SAFEBOOT: skipping device = NetBT.SYS(PNP_TDI)
SAFEBOOT: skipping device = AFD.SYS(TDI)
SAFEBOOT: skipping device = NetBIOS.SYS(NetBIOSGroup)
SAFEBOOT: skipping device = Serial.SYS(Extended base)
SAFEBOOT: skipping device = intelppm.SYS(Extended Base)
SAFEBOOT: skipping device = WS2IFSL.SYS(Group)
SAFEBOOT: skipping device = Rdbss.SYS(Network)
SAFEBOOT: skipping device = MRxSmb.SYS(Network)
SAFEBOOT: skipping device = Fips.SYS(Group)
SAFEBOOT: skipping device = ElbyCDIO.SYS(Group)
Break instruction exception - code 80000003 (first chance)
*******************************************************************************
* *
* You are seeing this message because you pressed either *
* CTRL+C (if you run console kernel debugger) or, *
* CTRL+BREAK (if you run GUI kernel debugger), *
* on your debugger machine's keyboard. *
* *
* THIS IS NOT A BUG OR A SYSTEM CRASH *
* *
* If you did not intend to break into the debugger, press the "g" key, then *
* press the "Enter" key now. This message might immediately reappear. If it *
* does, press "g" and "Enter" again. *
* *
*******************************************************************************
*** WARNING: Unable to verify timestamp for ntdll.dll
*** ERROR: Module load completed but symbols could not be loaded for ntdll.dll
*** ERROR: Symbol file could not be found. Defaulted to export symbols for ntkrnlmp.exe -
nt!DbgBreakPointWithStatus+0x4:
804e29c2 cc int 3
0: kd> lm
start end module name
7f520000 7f5da000 ntdll T (no symbols)
80010000 80013000 BOOTVID (deferred)
80100000 80140000 KDSTUB (deferred)
804d7000 80700000 nt (export symbols) ntkrnlmp.exe
80700000 80720d00 hal (deferred)
80721000 80757000 kdcom (deferred)
b8019000 b8059000 dump_storport (deferred)
b80c9000 b80dcf00 VIDEOPRT (deferred)
b80f7000 b80f9900 Dxapi (deferred)
b8137000 b8194f00 update (deferred)
b8195000 b81b7700 ks (deferred)
b81c8000 b81cb000 mouhid (deferred)
b81dc000 b81de880 hidusb (deferred)
b81e0000 b820fe80 rdpdr (deferred)
b8210000 b8227000 amdhub30 (deferred)
b8227000 b824f000 HDAudBus (deferred)
b8393000 b8396c80 mssmbios (deferred)
b83c3000 b83dce80 Mup (deferred)
b83dd000 b8409980 NDIS (deferred)
b840a000 b8496d00 Ntfs (deferred)
b8497000 b84a9f00 WudfPf (deferred)
b84aa000 b84c0b80 KSecDD (deferred)
b84c1000 b84d2f00 sr (deferred)
b84d3000 b84f2b00 fltMgr (deferred)
b84f3000 b8533000 storport (deferred)
b8533000 b854a880 SCSIPORT (deferred)
b854b000 b8800000 iaStor (deferred)
bd000000 bd011600 dxg (deferred)
bf800000 bf9d3780 win32k (deferred)
bff70000 bff72480 framebuf (deferred)
f7472000 f7497a00 dmio (deferred)
f7498000 f74b6d80 ftdisk (deferred)
f7517000 f7524000 dump_storahci (deferred)
f7527000 f7536900 Cdfs (deferred)
f7557000 f7567a80 pci (deferred)
f7568000 f75a8000 ACPI (deferred)
f75a8000 f75d6000 amdxhc (deferred)
f75f7000 f7600300 isapnp (deferred)
f7607000 f7611580 MountMgr (deferred)
f7617000 f7624200 VolSnap (deferred)
f7627000 f7637000 asahci32 (deferred)
f7637000 f7644000 storahci (deferred)
f7647000 f764fe00 disk (deferred)
f7657000 f7663180 CLASSPNP (deferred)
f76a7000 f76b3f00 i8042prt (deferred)
f76b7000 f76c0f00 termdd (deferred)
f76c7000 f76d3000 VClone (deferred)
f76d7000 f76e6600 cdrom (deferred)
f76e7000 f76f5180 redbook (deferred)
f76f7000 f7700000 HIDCLASS (deferred)
f7707000 f770d780 USBSTOR (deferred)
f770f000 f7713d00 PartMgr (deferred)
f7747000 f774d280 kbdclass (deferred)
f774f000 f7754c00 mouclass (deferred)
f7787000 f778d380 HIDPARSE (deferred)
f779f000 f77a4200 vga (deferred)
f77af000 f77b3b00 Msfs (deferred)
f77bf000 f77c6980 Npfs (deferred)
f77e7000 f77eb500 watchdog (deferred)
f7943000 f7945280 wmiacpi (deferred)
f7987000 f7988500 USBD (deferred)
f7989000 f798a100 WMILIB (deferred)
f798b000 f798c700 dmload (deferred)
f7995000 f7996100 swenum (deferred)
f799d000 f799ef00 Fs_Rec (deferred)
f79a1000 f79a2080 Beep (deferred)
f7aa7000 f7aa7d00 dxgthk (deferred)
f7ab0000 f7ab0b80 Null (deferred)

#2587AndaluContinuing in my tests about USB3 functionality, something strange happened for my asrock ivy boards.
On the B75 Pro3-M the USB3 works fine after a clean XP install (with inside modded amd drivers and acpi.sys 5048). On each restart, the USB3 continues to work correctly. But if I shutdown the computer and then turn off the power supply unit, on the next boot the USB3 doesn't work anymore until a new XP install or by restoring an XP image with acronis true image boot disk. But even in the last case, at the end of the recover operation:

1) if I choose to restart the computer, on the next boot the USB3 will work fine;
2) if I choose to shutdown, the USB3 will not work anymore.

For the B75M-GL R2.0 almost the same behaviour. The difference is that the USB3 doesn't work on a clean XP install also. The only way to get the USB3 functionality for this board is to restore the image saved from the B75 Pro3-M but never shutdown the computer, only restarts. So, to keep the usb3 functionality, these boards need to be always on. Any ideas?
#2588Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #2585
@Mov AX, 0xDEAD
I get this windbg version to work under win 8.1.
But XP hangs during boot.
May be because of hanging, the "break" or "g" command not works.
Tomorrow I set up new Win7 32 bit.
The connection seems now to be ok


yes, connection now is OK, you dont need win7
maybe XP hangs because you are activated network device in XP ? it must be disabled in DevManager because conflict with debugger driver, also try with /BREAK, it must stop loading windows and you can check G command
#2589infuscomus⇗ @Andalu

for the USB 3.0 controllers listed in device manager, do you see a power management tab?
#2590Mov AX, 0xDEAD
Zitat von ⇗ Andalu im Beitrag ¶ #2587
So, to keep the usb3 functionality, these boards need to be always on. Any ideas?

amd/nec/via/intel usb3 driver save some settings in registry, may this is problem. we dont know what these setting mean but driver can load it after ever reset and override hardware/mode of usb3 controller
example for via:
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\xhcdrv\Parameters]
"IMODI"=dword:00000001
"MsDelayAfterAddressBsr0"=dword:00000014
"RootPortStatusFormat"=dword:00000001
"HwTriggerMask"=dword:ffffffff
"MaxRootHubReEnumCount"=dword:00000003
"UsDelayBetweenSeparateTd"=dword:000003e8
"UsMinLfsBulkUrbCompletionTime"=dword:000000a0
"UsMinSsBulkUrbCompletionTime"=dword:00000118
"UsMinCtrlUrbCompletionTime"=dword:00000000
"MsDelayAfterModifyIntegratedHubPp"=dword:00000488
"FrameWindow"=dword:000007ff
"DmaEnablerAlignmentRequirement"=dword:00000003
"DisableUpdateFirstTrbCycleBitLast"=dword:00000000
"DisableSecondaryInterrupters"=dword:00000000
"DisableSelectiveSuspend"=dword:00000001
"DisableSimplifiedBulkHandlingOnBOT"=dword:00000000
"DisableRemoteWakeup"=dword:00000000
"DisableDynamicRootHubEnum"=dword:00000000


On Notebooks usb3 modes probably controlled by EmbeddedController with help of DSDT (acpi)
#2591Andalu⇗ @infuscomus
here the device manager for the B75Pro3-M board (the same for the B75M-GL R2.0). I always unticked the power saving for all my boards.
#2592Andalu⇗ @Mov AX, 0xDEAD
You are right, it is something related to the registry that changes during XP booting. The strange is: why this change happens for the shutdown only and never for the restart? And regarding the B75 Pro3-M board, why only when the psu is turned off?

I have also tried to load (with asl.exe /loadtable command) a modified DSDT table for the B75M-GL R2.0 board following ⇗ this guide (it is for hackintosh so I have changed the values for OSYS too) but i had no success (I had to use the -f option to force iasl.exe to compile the *.aml file although it had highlighted 3 errors).

So for now, i have only one motherboard out of six where the USB3 is fully functional but I don't know what will happen when I turn on that board :)
#2593diderius6⇗ @Mov AX, 0xDEAD
you are right.
I just disable in Device Manager the Realtek network controller on the
nice Giga H110 board and now XP starts normal.
On this compi lan Debug works now like the Debug over COM1,
what a great success
Dietmar

Microsoft (R) Windows Debugger Version 6.3.9600.17200 X86
Copyright (c) Microsoft Corporation. All rights reserved.

Using NET for debugging
Opened WinSock 2.0
Waiting to reconnect...
Connected to target 192.168.2.108 on port 50000 on local IP 192.168.2.101.
Connected to Windows XP 2600 x86 compatible target at (Tue Oct 1 17:35:20.084 2019 (UTC + 2:00)), ptr64 FALSE
Kernel Debugger connection established.
Symbol search path is: *** Invalid ***
****************************************************************************
* Symbol loading may be unreliable without a symbol search path. *
* Use .symfix to have the debugger choose a symbol path. *
* After setting your symbol path, use .reload to refresh symbol locations. *
****************************************************************************
Executable search path is:
*********************************************************************
* Symbols can not be loaded because symbol path is not initialized. *
* *
* The Symbol Path can be set by: *
* using the _NT_SYMBOL_PATH environment variable. *
* using the -y <symbol_path> argument when starting the debugger. *
* using .sympath and .sympath+ *
*********************************************************************
*** ERROR: Symbol file could not be found. Defaulted to export symbols for ntkrnlmp.exe -
Windows XP Kernel Version 2600 MP (1 procs) Free x86 compatible
Built by: 2600.xpsp_sp3_qfe.190108-0655
Machine Name:
Kernel base = 0x804d7000 PsLoadedModuleList = 0x805634c0
System Uptime: not available


Intel Storage Driver Ver: 11.2.0.1006

AhciHwFindAdapter finishing
AFD: Read FastSendDatagramThreshold from the registry, value: 0x5dc (default: 0x400))
AFD: Read DefaultReceiveWindow from the registry, value: 0x40290 (default: 0x2000))
AFD: Read DefaultSendWindow from the registry, value: 0x1f5e0 (default: 0x2000))
44: ERROR: UMRxReadDWORDFromTheRegistry/ZwQueryValueKey: NtStatus = c0000034
ERROR: DavReadRegistryValues/RegQueryValueExW(4). WStatus = 127
ERROR: DavReadRegistryValues/RegQueryValueExW(5). WStatus = 127
ERROR: DavReadRegistryValues/RegQueryValueExW(6). WStatus = 127
Break instruction exception - code 80000003 (first chance)
*******************************************************************************
* *
* You are seeing this message because you pressed either *
* CTRL+C (if you run console kernel debugger) or, *
* CTRL+BREAK (if you run GUI kernel debugger), *
* on your debugger machine's keyboard. *
* *
* THIS IS NOT A BUG OR A SYSTEM CRASH *
* *
* If you did not intend to break into the debugger, press the "g" key, then *
* press the "Enter" key now. This message might immediately reappear. If it *
* does, press "g" and "Enter" again. *
* *
*******************************************************************************
*** WARNING: Unable to verify timestamp for ntdll.dll
*** ERROR: Module load completed but symbols could not be loaded for ntdll.dll
*** ERROR: Symbol file could not be found. Defaulted to export symbols for ntkrnlmp.exe -
nt!DbgBreakPointWithStatus+0x4:
804e29c2 cc int 3
0: kd> lm
start end module name
7f520000 7f5da000 ntdll T (no symbols)
80010000 80013000 BOOTVID (deferred)
80100000 80140000 KDSTUB (deferred)
804d7000 80700000 nt (export symbols) ntkrnlmp.exe
80700000 80720d00 hal (deferred)
80721000 80757000 kdcom (deferred)
b2ab7000 b2af7e00 HTTP (deferred)
b304a000 b30a1c80 srv (deferred)
b31e0000 b31f4480 wdmaud (deferred)
b321d000 b3248f80 mrxdav (deferred)
b3359000 b3367d80 sysaudio (deferred)
b34b5000 b34b8900 ndisuio (deferred)
b419c000 b41dc000 dump_storport (deferred)
b42a4000 b4313a80 mrxsmb (deferred)
b4314000 b433ee80 rdbss (deferred)
b433f000 b4360d00 afd (deferred)
b4361000 b4386500 ipnat (deferred)
b4387000 b43aed80 netbt (deferred)
b43d7000 b442f480 tcpip (deferred)
b4430000 b4442600 ipsec (deferred)
b447f000 b4481900 Dxapi (deferred)
b44b3000 b4a7b000 RtkHDAud (deferred)
b4aa3000 b4aa6000 mouhid (deferred)
b4aab000 b4aad280 rasacd (deferred)
b4ab7000 b4ab9880 hidusb (deferred)
b4acb000 b4aeea80 portcls (deferred)
b4aef000 b4b0c580 nvhda32 (deferred)
b6d95000 b6df2f00 update (deferred)
b6df3000 b6e15700 ks (deferred)
b6e16000 b6e45e80 rdpdr (deferred)
b6e46000 b6e56e00 psched (deferred)
b6e57000 b6e6d680 ndiswan (deferred)
b6e89000 b6e89d00 dxgthk (deferred)
b6e8c000 b6ea3000 amdhub30 (deferred)
b6ea3000 b6ecb000 HDAudBus (deferred)
b6ecb000 b6edef00 VIDEOPRT (deferred)
b6edf000 b7b40bc0 nv4_mini (deferred)
b826f000 b8272c80 mssmbios (deferred)
b828b000 b8293780 netbios (deferred)
b829b000 b82a3700 wanarp (deferred)
b82ab000 b82b4000 HIDCLASS (deferred)
b82bb000 b82c9180 redbook (deferred)
b82cb000 b82da600 cdrom (deferred)
b82db000 b82e9b00 drmk (deferred)
b82eb000 b82f5000 NDProxy (deferred)
b82fb000 b8307000 VClone (deferred)
b830b000 b8314f00 termdd (deferred)
b831b000 b8323900 msgpc (deferred)
b8367000 b8369900 ndistapi (deferred)
b836b000 b836d280 wmiacpi (deferred)
b836f000 b8372d80 serenum (deferred)
b83c3000 b83dce80 Mup (deferred)
b83dd000 b8409980 NDIS (deferred)
b840a000 b8496d00 Ntfs (deferred)
b8497000 b84a9f00 WudfPf (deferred)
b84aa000 b84c0b80 KSecDD (deferred)
b84c1000 b84d2f00 sr (deferred)
b84d3000 b84f2b00 fltMgr (deferred)
b84f3000 b8533000 storport (deferred)
b8533000 b854a880 SCSIPORT (deferred)
b854b000 b8800000 iaStor (deferred)
bd000000 bd011600 dxg (deferred)
bd012000 bd3ca380 nv4_disp (deferred)
bf800000 bf9d3780 win32k (deferred)
f7472000 f7497a00 dmio (deferred)
f7498000 f74b6d80 ftdisk (deferred)
f74b7000 f74c2d00 raspptp (deferred)
f74c7000 f74d1200 raspppoe (deferred)
f74d7000 f74e3880 rasl2tp (deferred)
f74e7000 f74f0e00 intelppm (deferred)
f74f7000 f7507000 serial (deferred)
f7507000 f7513f00 i8042prt (deferred)
f7557000 f7567a80 pci (deferred)
f7568000 f75a8000 ACPI (deferred)
f75a8000 f75d6000 amdxhc (deferred)
f75f7000 f7600300 isapnp (deferred)
f7607000 f7611580 MountMgr (deferred)
f7617000 f7624200 VolSnap (deferred)
f7627000 f7637000 asahci32 (deferred)
f7637000 f7644000 storahci (deferred)
f7647000 f764fe00 disk (deferred)
f7657000 f7663180 CLASSPNP (deferred)
f7687000 f7691e80 Fips (deferred)
f76a7000 f76b1000 ElbyCDIO (deferred)
f76c7000 f76d6900 Cdfs (deferred)
f76d7000 f76e4000 dump_storahci (deferred)
f7707000 f770d780 USBSTOR (deferred)
f770f000 f7713d00 PartMgr (deferred)
f7767000 f776d280 kbdclass (deferred)
f776f000 f7774c00 mouclass (deferred)
f7777000 f777ba80 TDI (deferred)
f777f000 f7783580 ptilink (deferred)
f7787000 f778b080 raspti (deferred)
f779f000 f77a5380 HIDPARSE (deferred)
f77af000 f77b4200 vga (deferred)
f77b7000 f77bbb00 Msfs (deferred)
f77bf000 f77c6980 Npfs (deferred)
f77c7000 f77cb500 watchdog (deferred)
f7987000 f7988500 USBD (deferred)
f7989000 f798a100 WMILIB (deferred)
f798b000 f798c700 dmload (deferred)
f79ab000 f79ac100 swenum (deferred)
f79b3000 f79b4f00 Fs_Rec (deferred)
f79b5000 f79b6080 Beep (deferred)
f79b7000 f79b8080 mnmdd (deferred)
f79bb000 f79bc080 RDPCDD (deferred)
f7a7b000 f7a7bc00 audstub (deferred)
f7aab000 f7aabb80 Null (deferred)

Unloaded modules:
b30f2000 b311d000 kmixer.sys
b7d04000 b7d05000 drmkaud.sys
b3531000 b353e000 DMusic.sys
b3339000 b3347000 swmidi.sys
b311d000 b3140000 aec.sys
f79e3000 f79e5000 splitter.sys
b31e1000 b31f5000 Parport.SYS
f7677000 f7682000 imapi.sys
f77a7000 f77ac000 Cdaudio.SYS
b4ab3000 b4ab6000 Sfloppy.SYS
f7797000 f779c000 Flpydisk.SYS
f7627000 f7637000 asahci32.sys
b854b000 b8800000 iaStor.sys

#2594diderius6⇗ @Mov AX, 0xDEAD

I make a new test with a Realtek Slot Pci-e card on the nice Giga H110 board.
In Device Manager I look for its PCI-Bus 4, Gerät 0, Funktion 0 and
make an entry with this numbers in boot.ini with /busparams=4.0.0
so that the debugger knows, which NIC is used.
And voila, it works ). This is the very first time,
that I succeed to connect windbg to an pci-e slot card
and make it work.
This means: Now, as long as the compi has a COM1 port or a supported network card or just 1 free Pci-e slot,
it can be fully debugged under XP SP3
Dietmar
#2595diderius6⇗ @Mov AX, 0xDEAD

I test the Microsoft (R) Windows Debugger Version 6.3.9600.17200 X86
under Vista 32 bit (Vista as host, the compi where windbg runs).
It also works from there for debugging XP SP3 over lan. So, there is a chance to make this new debugger version run under XP SP3.
I test Debug over lan on Intel i211 nic on the Asrock fatal1ty z370 gaming k6 board with XP SP3 as target (compi which is debugged).
Works ).
On the NIC i219-v it does not work. The reason is just, i219-v DEV ID 15BX is not supported in Lan Debug of win8.1
Dietmar


System Requirements

Kernel debugging through Ethernet NICs requires certain low-level platform support. Windows requires that these NICs be attached via PCI/PCIe for this debugging solution. In most cases, simply plugging in one of these supported NICs will allow a robust kernel debugging experience. However, there may be cases where BIOS configuration details hinder the Windows debug path. The following platform requirement should be considered:

System firmware should discover and configure the NIC device such that its resources do not conflict with any other devices that have been BIOS-configured.

Finding the vendor ID and device ID

First find the vendor ID and device ID of the network adapter on your target computer.

On the target computer, open Device Manager (enter devmgmt in a Command Prompt window).
In Device Manager, locate the network adapter that you want to use for debugging.
Right click the network adapter node, and choose Properties.
In the Details tab, under Property, select Hardware Ids.

The vendor and device IDs are shown as VEN_VendorID and DEV_DeviceID. For example, if you see PCI\VEN_8086&DEV_104B, the vendor ID is 8086, and the device ID is 104B.
Vendor ID 8086, Intel Corporation

For vendor ID 8086, these device IDs are supported:

0438 043A 043C 0440 1000 1001 1004 1008 1009 100C 100D 100E 100F 1010 1011 1012 1013 1014 1015 1016 1017 1018 1019 101A 101D 101E 1026 1027 1028 1049 104A 104B 104C 104D 105E 105F 1060 1075 1076 1077 1078 1079 107A 107B 107C 107D 107E 107F 108A 108B 108C 1096 1098 1099 109A 10A4 10A5 10A7 10A9 10B5 10B9 10BA 10BB 10BC 10BD 10BF 10C0 10C2 10C3 10C4 10C5 10C6 10C7 10C8 10C9 10CB 10CC 10CD 10CE 10D3 10D5 10D6 10D9 10DA 10DB 10DD 10DE 10DF 10E1 10E5 10E6 10E7 10E8 10EA 10EB 10EC 10EF 10F0 10F1 10F4 10F5 10F6 10F7 10F8 10F9 10FA 10FB 10FC 1501 1502 1503 1507 150A 150B 150C 150D 150E 150F 1510 1511 1514 1516 1517 1518 151C 1521 1522 1523 1524 1525 1526 1527 1528 1529 152A 1533 1534 1535 1536 1537 1538 1539 153A 153B 1546 154A 154D 1557 1558 1559 155A 1560 157B 157C 1F40 1F41 1F45 294C
Vendor ID 10EC, Realtek Semiconductor Corp.

For vendor ID 10EC, these device IDs are supported:

8136 8137 8167 8168 8169
Vendor ID 14E4, Broadcom

For vendor ID 14E4, these device IDs are supported:

1600 1601 1639 163A 163B 163C 1644 1645 1646 1647 1648 164A 164C 164D 1653 1654 1655 1656 1657 1658 1659 165A 165B 165C 165D 165E 165F 1668 1669 166A 166B 166D 166E 1672 1673 1674 1676 1677 1678 1679 167A 167B 167C 167D 167F 1680 1681 1684 1688 1690 1691 1692 1693 1694 1696 1698 1699 169A 169B 169D 16A0 16A6 16A7 16A8 16AA 16AC 16B0 16B1 16B2 16B4 16B5 16B6 16C6 16C7 16DD 16F7 16FD 16FE 16FF 170D 170E 170F
Vendor ID 1969, Atheros Communications

For vendor ID 1969, these device IDs are supported:

1062 1063 1073 1083 1090 1091 10A0 10A1 10B0 10B1 10C0 10C1 10D0 10D1 10E0 10E1 10F0 10F1 2060 2062 E091 E0A1 E0B1 E0C1 E0D1 E0E1 E0F1
Vendor ID 19A2, ServerEngines (Emulex)

For vendor ID 19A2, these device IDs are supported:

0211 0215 0221 0700 0710
Vendor ID 10DF, Emulex Corporation

For vendor ID 10DF, these device IDs are supported:

0720 E220
Vendor ID 15B3, Mellanox Technology

For vendor ID 15B3, these device IDs are supported:

1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 100A 100B 100C 100D 100E 100F 1010 6340 6341 634A 634B 6354 6368 6369 6372 6732 6733 673C 673D 6746 6750 6751 675A 6764 6765 676E 6778

 

Page 174

#2596Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #2595

On the NIC i219-v it does not work. The reason is just, i219-v DEV ID 15BX is not supported in Lan Debug of win8.1


In theory, if i219-v compatible with some previous model, patched kd_02_8086.dll (ID_XXX=>ID_YYY) solve problem.
Dietmar, learn asm, you can do any things yourself )
#2597diderius6⇗ @Mov AX, 0xDEAD
I found with Ida Pro in kd_02_8086.dll the place,
where the check for 8086 (Intel nic) happens.
Also I see the place there
.text:800119F1                 mov     dword ptr [eax], offset aThisNicIsNotSu

but I dont know, how to add extra Device ID for the i219-v
and a lot of other devices for Atheros (in its kd_02_1969.dll)
even I think the Vendor key is other VEN_168C&DEV_0036&SUBSYS_061211AD  Qualcomm Atheros AR956x Wireless Network Adapter for the Lenovo Flex 10 netbook

Dietmar
#2598Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #2597

and a lot of other devices for Atheros (in its kd_02_1969.dll)
even I think the Vendor key is other
VEN_168C&DEV_0036&SUBSYS_061211AD  Qualcomm Atheros AR956x Wireless Network Adapter for the Lenovo Flex 10 netbook


Vendors can register multiple PCI ID: 1969 for LAN , 168C - wireless, 666- dEvil's electronic toys )
#2599Mov AX, 0xDEAD⇗ @diderius6,
Newer Windbg (Win8/Win10) versions has incompatibility bug - Register Window is empty if target is WinXP or Win2003, bug still in place even with original COM debugging. I think MS changed protocol and windbg cannot show required registers.
I use IDA+windbg plugin instead "pure" windbg, this bug is not presented in IDA

p.s. win2003 x32 now supported too
Microsoft (R) Windows Debugger Version 6.3.9600.17200 X86
Copyright (c) Microsoft Corporation. All rights reserved.

Using NET for debugging
Opened WinSock 2.0
Waiting to reconnect...
Connected to target 192.168.4.3 on port 50000 on local IP 192.168.4.1.
Connected to Windows Server 2003 3790 x86 compatible target at (Wed Oct 2 23:39:00.684 2019 (UTC + 5:00)), ptr64 FALSE
Kernel Debugger connection established.

************* Symbol Path validation summary **************
Response Time (ms) Location
Deferred SRV*C:\Windows\SYMBOLS*⇗ http://msdl.microsoft.com/download/symbols
Symbol search path is: SRV*C:\Windows\SYMBOLS*⇗ http://msdl.microsoft.com/download/symbols
Executable search path is:
*** ERROR: Symbol file could not be found. Defaulted to export symbols for ntkrnlpa.exe -
Windows Server 2003 Kernel Version 3790 UP Free x86 compatible
Built by: 3790.srv03_sp2_rtm.070216-1710
Machine Name:
Kernel base = 0x80800000 PsLoadedModuleList = 0x8089ffa8
System Uptime: not available
Break instruction exception - code 80000003 (first chance)
*******************************************************************************
#2600diderius6⇗ @Mov AX, 0xDEAD
"Register Window is empty if target is WinXP or Win2003"
what does this mean for debugging XP via Lan for example with host Win8.1?
Can the Acpi Bsod A5 been fully debugged on XP SP3 via lan
on the Newer Windbg (Win8/Win10)
Dietmar

PS: When this bug cannot be overcome.
How can I integrate the Newer Windbg (Win8/Win10)
into Ida as plugin? I have version 6.1.11.315 (from 2011)
with the possibility to attach windbg.
#2601diderius6⇗ @Mov AX, 0xDEAD
I take a look at windbg Microsoft (R) Windows Debugger Version 6.3.9600.17200 X86
why this windbg does not like to run on XP SP3.
Dependency Walker shows as only file with unmatched import functions
msvcrt.dll

__CxxFrameHandler3
_except_handler4_common
wcscpy_s

May be, they can be customized for to work with XP SP3
Dietmar

EDIT: msvcrt.dll from Vista or Longhorn 5048 crashes XP SP3.
#2602diderius6⇗ @Mov AX, 0xDEAD
The only strange behavior of using Microsoft (R) Windows Debugger Version 6.3.9600.17200 X86
for lan debugging of XP SP3 on Win8.1 is, that I cant store the Symbol path,
so on each new use of this windbg I have to put the Symbol path there by hand.
All other works for me
Dietmar
#2603infuscomus⇗ @diderius6

can you not use the older XP debugger over a network?
#2604diderius6⇗ @infuscomus
I tried this and I can connect this debugger over lan.
But, because the files from Win8.1 for debug over lan want a password (what a crazy idea^^)
you cant do anything more until now after connecting with the old windbg.

An elegant way would be, to cancel the password question in the files from win8.1.

But until now I am not good enough in assembler to do that.
⇗ @Mov AX, 0xDEAD to me "Dietmar, learn assembler and you can do all this by yourself."
It is just true, this is what I tell pupils every day
Dietmar
#2605diderius6I just set up full Acpi XP SP3 on the Lenovo Flex 10 notebook.
All I do is via USB3:)), until now no need to open nice netbook
Dietmar

PS: If I do not succeed to integrate the Ven_&Dev ID from its wireless lan controller,
I try to enable debug via USB3.

#2606Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #2600
@Mov AX, 0xDEAD
"Register Window is empty if target is WinXP or Win2003"
what does this mean for debugging XP via Lan for example with host Win8.1?


you dont see any registers, only manual "r" works

Zitat
How can I integrate the Newer Windbg (Win8/Win10)  into Ida as plugin?


1) run windbg, break target PC, close windbg
2) run IDA->attach debugger->windbg debugger
 -debug options->set specific-> kernel mode debugging
 -connect string: net:port=50000,key=this.is.secret.key
3) select slot (0), wait for connection

In output window you can enter windbg commands, like "lm", "analyze", but often ida hangs, this is ida's bugs (
If module list is empty, try ".reload", sometimes it solve problem

Zitat von ⇗ diderius6 im Beitrag ¶ #2602

I cant store the Symbol path


set env variable
_NT_SYMBOL_PATH=SRV*%SYSTEMROOT%\SYMBOLS*⇗ http://msdl.microsoft.com/download/symbols
#2607Mov AX, 0xDEADStatus of KDNET for Windows XP x32:
Intel 10G big alloc buffer     - ?
No patches to other files - Done
Any HAL                        - Done
Auto-disable device in pnp manager - Done
Win2003 version             - Done
Auto calculate cpufreq option - ?
Windbg 6.3.9600.x under Windows XP - Done
Fixed Register Window - Done

Project - ⇗ https://github.com/MovAX0xDEAD/KDNET
#2608Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #2601

Dependency Walker shows as only file with unmatched import functions
msvcrt.dll
__CxxFrameHandler3
_except_handler4_common
wcscpy_s


easy-peasy-japanesey:
00000140:       06 05
00000142: 00 01
00000150: B9 4D
00000151: 35 D3
00000152: 07 06
0002E3E9: 68 90
0002E3EA: 00 90
0002E3EB: 04 90
0002E3EC: 00 90
0002E3ED: 00 90
0002E400: 0C 08
00033296: 57 90
000332A0: 0C 08
000488B4: 5F 00
000488B5: 73 00
000489F9: 34 33
000489FA: 5F 00
00048D33: 33 00

also need patch winxp/kdexts.dll, but much best:
1) use compatible msvcrt from newer OS, rename to msvcr1.dll, patch exe/dll to use msvcr1 instead msvcrt
2) compile msvcrt.dll from VS2008 sources, rename to msvcr1.dll, patch exe/dll to use msvcr1 instead msvcrt

000ECEA2:       0B 00


seems works normal, we don't need anymore win7+ for host pc :)
#2609diderius6⇗ @Mov AX, 0xDEAD
Waaaoh:)) ,
I just cant believe,
what a nice work
Dietmar

PS: "If there is a Windbg for XP with password field, it may work."
     There is no, so we make, I just test under XP SP3, works:))!!
#2610dencorsoIn case you find it useful, a long time ago BlackWingCat created a version of the vista msvcrt.dll which does not cause _except_handler4_common not found error. It's still obtainable from his Japanese language site, in an international version:
⇗ https://translate.google.com.br/translat...%2F1706829.html

 

Page 175

#2611diderius6⇗ @dencorso

⇗ http://blog.livedoor.jp/blackwingcat/archives/1706829.html

this is the original link to msvcrt.dll from Blackwingcat
thanks:))
Dietmar



diderius6 has attached files to this post
#2612Mov AX, 0xDEADWinDBG's Register Window fixed, ¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (174)
#2613diderius6⇗ @Mov AX, 0xDEAD

Thanks a lot, I corrected dbgeng.dll and make checksum new. In the morning I tested the new Windbg under XP SP3 over lan a lot.
ACPI, Pcitree, lm, !analyze-v !devnode 0 1 and so on.
For me I need also the msvcrt.dll from Vista from Blackwingcat. In other case, in !devnode 0 1 Windbg tells, that a *.dll was not found. Windbg over lan is now fast as never before.

Do you have an idea, how to make the grafik on the Bay Trail cpu N2806 work under XP? I tested about 20 drivers, they give all code 10.
I think, Intel put (like into the USB driver) something like a VEN_8086 and DEV check,
so that NO compi from the Baytrail series (2013-2014) can work with XP.
But I only find the 8086 check in igxpmp32.sys driver. May be there is a cpu ID check?
This driver works for HD grafik in XP, but not for the device VEN_8086&DEV_0F31 (Netbook Lenovo Flex 10).
What do you think: Is there a chance to make this work? There are Win7 32 bit, Win8 32 bit drivers for this device but with a lot of unfullfilled dependencies under XP SP3
Dietmar

EDIT: Because all HD3000, HD4000, HD4400, HD5000, ... are treated identic in XP SP3 (see igxp32.inf),
I start to think, that there is no DEV ID check in XP igxpmp32.sys at all. DEV ID check appears in Win7 32 bit for DEV_0F31.
But this would simple mean, that all possible HDXXXX work with this driver in XP. And when it shows code 10,
this driver does just not work for this HD device DEV_0F31 in XP SP3. When I add to igxp32.inf DEV_0F31,
I can use the normal setup program from Intel. But without success after reboot.

And this "why HD not works in XP" depends also on chipset: The same cpu with the same integrated HD works on one chipset and on the other not, brrr...

EDIT2: I just noticed, that on Win7 32 bit, there are extra, other entries to registry for this device 0F31 with name Valleyview,
as for other HDxxxx, here it is named %iVLVGMT0%      = iVLV2M_w7, PCI\VEN_8086&DEV_0F31



diderius6 has attached files to this post
#2614Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #2613
@Mov AX, 0xDEAD
But I only find the 8086 check in igxpmp32.sys driver. May be there is a cpu ID check?
This driver works for HD grafik in XP, but not for the device VEN_8086&DEV_0F31 (Netbook Lenovo Flex 10).


look for dev_id checks around "8086 check", it may be complex like add XX /sub XX, then comparing.
in last drivers intel do check for dev_id, then set config  like
 
dev_id1:
mov dword ptr [edi+298h], 0Bh
mov dword ptr [edi+294h], 5
mov dword ptr [edi+28Ch], 11h

dev_id2:
mov dword ptr [edi+298h], 3
mov dword ptr [edi+294h], 3
mov dword ptr [edi+28Ch], 6



so dev_id=>magic numbers

#2615diderius6⇗ @Mov AX, 0xDEAD
Thanks a lot,
I just find for example this, direct before Haswell GPU is mentioned
text:10021BDE
.text:10021BDE loc_10021BDE: ; CODE XREF: sub_10020DB0+1C0 j
.text:10021BDE ; sub_10020DB0+203 j ...
.text:10021BDE mov edx, [ebp+arg_0]
.text:10021BE1 mov dword ptr [edx+208h], 9
.text:10021BEB mov eax, [ebp+arg_0]
.text:10021BEE mov dword ptr [eax+204h], 9
.text:10021BF8 mov ecx, [ebp+arg_0]
.text:10021BFB mov dword ptr [ecx+1FCh], 0Ch
.text:10021C05 mov edx, [ebp+arg_0]
.text:10021C08 mov eax, [edx+0DCh]
.text:10021C0E or eax, 80000000h
.text:10021C13 mov ecx, [ebp+arg_0]
.text:10021C16 mov [ecx+0DCh], eax
.text:10021C1C push offset aIntelRHdGrap_3 ; "Intel(R) HD Graphics Family"
.text:10021C21 lea edx, [ebp+var_208]
.text:10021C27 push edx
.text:10021C28 mov eax, [ebp+arg_0]
.text:10021C2B push eax
.text:10021C2C call sub_1002F2D0
.text:10021C31 mov [ebp+var_478], 38h
.text:10021C3B mov [ebp+var_469], 0
.text:10021C42 jmp loc_10021D24
.text:10021C47 ; -----
Now question is, how to change values, so that this becomes:)) DEV_0F31
Dietmar

PS: The check for this DEV ID I also found.
It is, where above is jumped from
A9 loc_10020FA9: ; CODE XREF: sub_10020DB0+1B4 j
.text:10020FA9 cmp [ebp+var_5C4], 166h <----- This is VEN_8086&DEV_0166
.text:10020FB3 jz loc_10021BDE
.text:10020FB9 cmp [ebp+var_5C4], 16Ah
.text:10020FC3 jz loc_10021BDE
.text:10020FC9 cmp [ebp+var_5C4], 402h
.text:10020FD3 jz loc_10021C47
.text:10020FD9 jmp loc_10021D15

Do you know anybody, who succeeds with this hack

166h => F31h

EDIT: This IDA extract is from very last XP Embedded for Intel GPU from February 2014.



diderius6 has attached files to this post
#2616diderius6⇗ @Mov AX, 0xDEAD
I just check this magic numbers in Win7 32 bit.
They are identic to XP Embedded.
DEV_0166 => (9  9  0Ch)

So I think, looking at Win7
DEV_0F31 => (9  5  0Fh)

But I have no idea,
what this numbers mean
Dietmar

EDIT: The last magic number seems to be a numerating of the devices:
DEV_0166 => (9  9  0Ch)
DEV_016A => (9  9  0Dh)
#2617diderius6⇗ @Mov AX, 0xDEAD
First hack does not work.
May be, that DEV_0F31 has other dependencies also,
for example entries in registry.

I change
DEV_0166 => DEV_0F31 (in igxp32.inf and in igxpmp32.sys)
and also its magic number in igxpmp32.sys from
(9 9 0Ch) => (9 5 0Fh)
as you can see with Ida Pro,
set correct Checksum but I still get code 10
Dietmar

PS: Here I send igxpmp32.sys from Windows Embedded before hack and after.
It is from Intel
⇗ https://downloadcenter.intel.com/de/down...s-Xp32-Embedded

and this one is the same DEV_0F31 Grafik driver for win7, win8, win10
⇗ https://downloadcenter.intel.com/de/down...dows-15-33-?v=t

EDIT: I just notice, that in Win7 32 bit the 0F31h appears also at 3 other places. Oha, this looks like hard work.
But also is interesting, that in this driver nothing changed from win7 to win10.



diderius6 has attached files to this post
#2618XPWELL64⇗ @diderius6  
I benchmarked HL1 with anapa driver on my asus x555lb in windows xp and results are more terrible than windows 95 preinstalled pc.
I will mod this igxpmp32.sys with ida pro can you tell me how to do it? My DEVID is: DEV_1616
#2619Mov AX, 0xDEAD
Zitat von ⇗ XPWELL64 im Beitrag ¶ #2618
@diderius6  
I benchmarked HL1 with anapa driver on my asus x555lb in windows xp and results are more terrible than windows 95 preinstalled pc.

Anapa is VBE translator, no any acceleration, only frame buffer, so speed must be relative slow
#2620Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #2617
@Mov AX, 0xDEAD
First hack does not work.
May be, that DEV_0F31 has other dependencies also,
for example entries in registry.


I cant help with this, sorry, but as i know some guys from this forum overwrite dev_id in skylake+ drivers to work with new HD6xxx for Windows 7
They patched sys + dll
#2621diderius6⇗ @Mov AX, 0xDEAD
I make a test with Ida Pro on files from post and arround them.

⇗ Win 7 x64 Coffee Like UHD 630 Video driver (2)

In its *.inf the new Dev Ids are added and also some changes in registry.

I find differences compared via *.lst and Beyond Compare with original igdkmd64.sys and mod.

Original
.text:0000000140047AE1		       mov     eax, 8086h
.text:0000000140047AE6 cmp [rdx], ax
.text:0000000140047AE9 jz short loc_140047AF8
Mod
.text:0000000140047AE1                   mov     ax, 5912h
.text:0000000140047AE5 mov [rdx+2], ax
.text:0000000140047AE9 mov eax, 8086h
.text:0000000140047AEE jmp short loc_140047AF8

DEV_5912 is a new device id. But other device ids are not added, hm, does it mean only one ID to mod is enough?
May be, that for other Dev Ids  *.inf modding is enough.
No *.dll is modded

Dietmar

PS: ⇗ @canonkong please, can you tell me, how do you come to the idea to change this and do you know, how the other DEV_ ids are in igdkmd64.sys?

EDIT: I find my mistake in renaming  DEV_0166 => DEV_0F31
Via this way through the logic of the XP Embedded driver it jmp to "Unknown Intel decive". Now fun goes on^^..
Hm, the XP Embedded driver looks also for the chipset..

EDIT2: The famous code 10 is gone. This seems to me, that the driver is started but crashes with
BSOD 0x7E (0xC0000005, 0x00000000,xxx,yyy)
For sure I hacked correct the DEV ID.
Now, Debug on the Lenovo Flex 10 would be nice. May be via USB3.
Now, with my last best^^ version of igxpmp32.sys it installs normal but hangs without visible BSOD at the end of the boot process. I want debugger:))!!



diderius6 has attached files to this post
#2622Gelip⇗ @diderius6
I found how to disable signature checking in winload.efi 6.0.6001.16497 for boot WinXP x64 - read this: ⇗ winload.efi_patch
This works ! You do not need the Advanced Menu and the Disable driver signature enforcement option anymore
#2623diderius6⇗ @Gelip

This are really nice news:))!! So testing for UEFI boot of XP can go on.
I know for sure, that also ⇗ @skullteria is most happy now.

Today I work all the day on the crazy igxpmp32.sys from XP Embedded
for to make it work with DEV_0F31.
I have the win7 32 bit driver with this DEV, but it is very different from the XP driver.
acpi.sys and usb is easy compared with the graphikdriver, its size is more than 2 Mbyte, brrr
Dietmar
#2624GelipProbably this patch will also work with winload.exe and winload.efi from any 64-bit version of Vista Beta, Server 2008 beta, Vista RTM
#2625diderius6⇗ @Gelip

Can the idea for this patch also be put on the 32 bit version of winload.efi (winload.exe)
Dietmar

 

Page 176

#2626Gelip
Zitat von ⇗ diderius6 im Beitrag ¶ #2625
@Gelip

Can the idea for this patch also be put on the 32 bit version of winload.efi (winload.exe)
Dietmar

On 32-bit Windows, there is no signature checking, so you don't have to patch the loader.
#2627diderius6Waaaoooh,
this compi is 1.576.800.000 times faster than
the best supercompi today
Dietmar

⇗ https://drive.google.com/file/d/19lv8p1f...p082Lc-kdD/view
#2628infuscomus⇗ @diderius6

winload 32bit from longhorn server beta 16497



infuscomus has attached files to this post
#2629Mov AX, 0xDEADProject "Kernel Debugging over LAN cable for WinXP/2003 x32 "  published ⇗ https://github.com/MovAX0xDEAD/KDNET
comments & bugreports welcome :)
#2630diderius6⇗ @Mov AX, 0xDEAD
This is great work:))!!
Today I test. I have a question: Is debugging with USB3 crossed debug cable also possible
with the same files,
have a nice day
Dietmar
#2631diderius6⇗ @infuscomus
From winload 32bit from longhorn server beta 16497,
do you also have the winload.efi 32 bit version
Dietmar
#2632infuscomus⇗ @diderius6

i have the 32bit 16497 ISO and unfortunately it seems that there is no winload.efi for the 32bit version.
#2633diderius6⇗ @Mov AX, 0xDEAD

Please add something like this text to your description of your nice project about windbg via lan on XP:

"When you have more than 1 lancard on your motherboard,
look in Device Manager and search there for your used lan card, here for example PCI-Bus 4, Device 0, Function 0 and
make an entry with this numbers in boot.ini with /busparams=4.0.0
so that the debugger knows, which NIC is used."

Dietmar



diderius6 has attached files to this post
#2634jonnyhi, guys i need help installing windows xp pro x64 on my machine, im tryng to install it in 2 pc, the first is my laptop, is an ASUS X553MA, if i insert the windows xp 64 bit dvd it give me a BSOD and the error is the classic 0x07B, in the bios i set the hdd to ide mode and the BSOD goes away, but another BSOD appear this time is 0x07E, so i dont know how to fix it im trying   all method, i also found a hacked ACPI.SYS in this forum, but when i insert in the win xp cd the setup give me a error, it say ERROR 14, NTKRNLMP.EXE COULD NOT BE LOADED, SETUP CANNOT CONTINUE. PRESS ANY KEY TO EXIT. i was using acpi 5048 from windows longhorn by the way, pls help me guys, thank you.


sorry for my very bad english, im italian.
#2635diderius6⇗ @Mov AX, 0xDEAD

Until now I can not debug the BSOD 0x50 made by the modded graphikcard driver igxpmp32.sys on the Lenovo Flex 10.
Is it a lot of work, to enable also USB3 debug for XP? I know, that lan debugging is much more stable.
I found in Win8.1 32 bit the driver kdusb.dll.
The Wlan works under XP SP3 on this Netbook, but the driver from Atheros is not
in the support list from Microsoft,
Dietmar
#2636diderius6⇗ @jonny
Make first a try with XP SP3 32 bit.
This is much more easy to install and you can test, if you do everything right with integrating acpi.sy_ (via makecab acpi.sys)
into the installationsfolder. The error "ERROR 14, NTKRNLMP.EXE COULD NOT BE LOADED, SETUP CANNOT CONTINUE. PRESS ANY KEY TO EXIT." can also happen, when a driver has not the correct checksum or the CD is not clean or contains an error
during its burning
Dietmar
#2637AndaluOn my asrock B250M-Pro4 the amd USB3 modded drivers seem to be incompatible with the 'chinese patch (XP64G2.1)' applied to support more than 4GB memory: the usb ports 2.0 are with no power and the usb ports 3.0, although powered, don't recognize the devices, mouse included. The shutdown also stops working with. I'm using the patch with no problem on my MSI-Q87 where the usb3 modded drivers unfortunately don't work. Someone is using with success the amd modded drivers and that patch or another method to remove the 4GB RAM limit?
#2638infuscomus⇗ @Andalu

I PMed you an XP ISO to try, please try it.
#2639diderius6⇗ @infuscomus

Some new results about integrating USB3 drivers into XP SP3 CD?

Dietmar
#2640Andalu⇗ @infuscomus
Thank you ;)

 

Page 177

#2641infuscomus⇗ @diderius6

I haven't been able to reproduce the problem you got, I would like to see if ⇗ @Andalu gets the same

diderius6 can you test the ISO I PMed you both in VMWare/Virtualbox and real hardware?
the Installing drivers part (and the rest of the install) should continue without user input if it is working properly.
#2642diderius6⇗ @infuscomus

I tried this Iso also on another compi.
There it hangs suddently in the middle of txtsetup
Dietmar
#2643MikedebianHello!

I have a Ryzen 1800X on a Biostar X470GTA motherboard, and I've had a bunch of issues. It's a bit tiresome replacing extracting and repacking cab files for a new fix (going through posts), so is there any ISO I can test out ⇗ @infuscomus ?

Please?
#2644infuscomus⇗ @diderius6

does the ISO work correctly in VMWare/Virtualbox?
#2645diderius6⇗ @infuscomus
I have not tested. Where is sense, it needs to run on real hardware.
I use Qemu, but only when nothing other helps.
This I do not understand: You have soso many good ideas, why dont make a good XP SP3 installations CD by yourself? You can..
Tomorrow I try to hack kdstub.dll (qualcom atheros) for lan debug,
because I noticed, that there I can change VEN_&DEV_  number
for my Lenovo Flex 10 notebook
Dietmar

PS: I am getting better in x86 assembler, what a crazy hard lesson in last 3 days.
#2646infuscomus⇗ @diderius6

just wanted to confirm if it worked correctly for you in VMWare/Virtualbox
#2647MikedebianTest ISO:

Setup is starting windows...

IRQ_NOT_LESS_OR_EQUAL

0x0000000A (0X0...0 0x0...2 0x0...1 0x8080F5C0)
#2648diderius6⇗ @Mikedebian
Switch everything in Bios off (any device, that you dont need for install)
Dietmar
#2649Mikedebian⇗ @diderius6 Sorry, last thing to switch off was XHCI, which in turn disables my sata and usb ports and makes it unable to boot..
#2650infuscomus⇗ @Mikedebian

just to test, if you press F7 to disable ACPI do you still get 0A BSOD?
#2651diderius6⇗ @infuscomus ⇗ @Mov AX, 0xDEAD

My hack in kdstub.dll (qualcom atheros) for lan debug of Lenovo Flex 10 netbook is ready.
Tomorrow I test, if it is possible to do Windbg over Wifi:))
Dietmar

PS: ⇗ @infuscomus I just burn CD, now I test it.
#2652MikedebianI attached picture

Edit:

Would like to attest that my RAM is fine. No errors since beginning, not OC and have been using it to install Windows 7,10, Vista, Linux, etc.



Mikedebian has attached images to this post  ⇗ IMG_20191008_010818.jpg
#2653Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #2633
The Wlan works under XP SP3 on this Netbook, but the driver from Atheros is not
in the support list from Microsoft

MS wrote drivers only for cable chips, no any wlan

Zitat von ⇗ diderius6 im Beitrag ¶ #2633
@Mov AX, 0xDEAD
Please add something like this text to your description of your nice project about windbg via lan on XP:


Thanks for feedback, fixed

About USB3:
Yes, it possible to enable usb3 in KDNET, but on my hardware it is not works. Maybe cable is very bad or controllers want special pre-initialization, i dont know yet.
You can try, usb3 has special requirement - usb3.0 port on target must support "USB Debugging", can be checked with USBVIEW.exe from windbg install folder. Insert in port any device, check about "Debugging: YES", if NO - check other available ports. You need win8.1+ on HOST )
patch to kdnet.dll (then correct checksum):
C7 05 AE 11 02 80 02 20 C6 05 B0 11 02 80 FF 66
C7 05 AE 11 02 80 0C 03 C6 05 B0 11 02 80 30 66
#2654infuscomus⇗ @Mikedebian

in the txtsetup.sif file - you can try removing all "usbxhc" and "usbhub30" entries, this will remove the USB 3.0 for textmode, but might fix the BSOD
#2655daniel_k
Zitat von ⇗ dencorso im Beitrag ¶ #2552
@daniel_k: would you kindly take a look at the newer kernel versions and see whether it's possible to fix the modded AMD drivers so that they can be used with the latest kernel version? Sorry to bother and thanks in advance!


Hi, ⇗ @dencorso!

I've been finishing updating all my ISOs.

Now I can give a definitive feedback for every testing environment.

OS is always installed from Intel USB 3 ports using my modded driver, additionally I install from ASMedia, just to confirm the same behavior.

 

Page 178

#2656Mikedebian⇗ @infuscomus Now there is no BSOD, but freezes at Setup is starting windows... Just stays there.
#2657diderius6⇗ @infuscomus

Compi hangs at exact the same place as before,
after Eula and installing devices,
no reaction, if I hit "next"
compi gets frozen with message "Not Responding".
At your place I would make brandnew CD, where is problem
Dietmar
#2658daniel_kBOOTING AND INSTALLING WINDOWS XP SP3 FROM AN USB FLASH DRIVE

System Setup:

- i7-8700K (stock speeds)
- Gigabyte Z370 AORUS Gaming 3
- 16GB RAM (2x8GB) Kingston HyperX FURY 2400MHz
- SSD 240GB KINGSTON V300 (used specifically for testing purposes)
- 16GB USB2.0 Sandidsk Flash Drive (used specifically for testing purposes)
- DVD-RW ASUS DRW-24D3ST

I have many more drives, but I disable all other AHCI ports except one connected to the SSD listed above and the other one connected to the DVD-RW also listed above.

1) Windows XP SP3 with all oficial updates, including POSReady ones, original ACPI.SYS (patched DSDT):

- Only my modded RSTe 4.7.0.1098 driver works. Skullteria's STORAHCI and last official Intel's IASTOR 11.2 cause Setup to suddenly restart during GUI mode before Installing devices.

- AMD USB3 driver works properly through the whole installation, just like ASMedia's. Disabling AMD's driver doesn't help with the above issue.


2) Windows XP SP3 original ISO, no updates, original ACPI.SYS (patched DSDT):

- Same behavior as case above.

3) Windows XP SP3 with all oficial updates, including POSReady ones, patched Vista beta 5048 ACPI.SYS:

- Same behavior as case above.

4) Windows XP SP3 original ISO, no updates, patched Vista beta 5048 ACPI.SYS:

- Same behavior as case above.


CONCLUSION:

As it turned out, this issue lies in the USB install itself.

For some reason only my modded RSTe 4.7.0.1098 driver works and it has nothing to do with the latest kernel update as the original SP3 kernel is also affected by the issue.

Thought it could be a device enumeration issue, but it doesn't make sense at all.

Maybe the issue is specific to 8th generation boards?
#2659MikedebianIt loaded it loaded!!!
#2660daniel_k⇗ @Mov AX, 0xDEAD, nice job with KDNET and thanks for sharing it publicly!

Any plans to work on an x64 version?
#2661infuscomus⇗ @diderius6

was this in VMWare or Virtualbox or both?

Strange, I do not get this behavior even in VMs - also, I do not click next, just wait it continues on its own - maybe clicking next is causing the crash?
#2662MikedebianPicture



Mikedebian has attached images to this post  ⇗ IMG_20191008_020437.jpg
#2663infuscomus⇗ @Mikedebian

nice!
#2664MikedebianNot too supported!

Installing the usb driver in XP blue screens the system!



Mikedebian has attached images to this post  ⇗ 1570494199413573948718909
#2665infuscomus⇗ @Mikedebian

can you get the HWIDs for all the hardware missing drivers?
and the USB that BSOD too
#2666diderius6⇗ @daniel_k

Why did you change back to original acpi.sys?
Do you think it is possible, to make a generic DSDT for all compis?
May be like translator which translates Acpi 2.0 text to Acpi 1b in DSDT.
I think, the Ryzen hack has to stay in acpi.sys for Ryzen boards
Dietmar
#2667diderius6⇗ @infuscomus
On the Lenovo Flex 10 netbook
I can install your XP SP3 via USB CD rom,
no need to tip on "next",
nice:))
Dietmar

PS: I will try direct USB boot install on the other compi too.
#2668MikedebianIs there a program for windows xp that generates a text file with all the hw ids?

Can I use Linux for this? Would the output of lspci -vv be helpful?

I am typing this from within windows xp!
#2669infuscomus⇗ @Mikedebian

There are programs that will do this, but we only need the HWIDs missing drivers

e.g.
Device Manager -> Other Devices -> PCI (USB) controller -> Properties -> Details -> drop down menu - Hardware IDs
-> PCI\VEN_1022&DEV_43B9&CC_0C03
#2670MikedebianHere is for USB



Mikedebian has attached images to this post  ⇗ 1570495472538213885878745

 

Page 179

#2671infuscomus⇗ @diderius6

Awesome!

So it is working for some Intel systems at least, just not all
#2672MikedebianSecond



Mikedebian has attached images to this post  ⇗ 1570495640417855598997735
#2673infuscomus⇗ @Mikedebian

Try Fernandos driver - ⇗ https://www.win-unattended.de/Benutzer/F....5.3%20WHQL.rar
#2674MikedebianHey, now it works!

My VEGA 56 is probably never going to be compatible with anything below Windows 7 (never say never!), and I have to download the driver for my sound card, but there are still the sm bus controller, PCI Encryption / Decryption controller, and 4 pci devices marked yellow!
#2675infuscomus⇗ @Mikedebian

grab the HWIDs for the yellow marked devices and we will see if we can get drivers for them.
#2676Mikedebian⇗ @infuscomus

Here is a picture

#2677daniel_kBOOTING AND INSTALLING WINDOWS XP SP3 FROM A DVD DISC

System Setup:

- i7-8700K (stock speeds)
- Gigabyte Z370 AORUS Gaming 3
- 16GB RAM (2x8GB) Kingston HyperX FURY 2400MHz
- SSD 240GB KINGSTON V300 (used specifically for testing purposes)
- DVD-RW ASUS DRW-24D3ST

I have many more drives, but I disable all other AHCI ports except one connected to the SSD listed above and the other one connected to the DVD-RW also listed above.

1) Windows XP SP3 with all oficial updates, including POSReady ones, original ACPI.SYS (patched DSDT):

- All AHCI drivers work (my modded RSTe 4.7.0.1098, Skullteria's STORAHCI and last official Intel's IASTOR 11.2).

- AMD USB3 driver works properly through the whole installation, just like ASMedia's.


2) Windows XP SP3 original ISO, no updates, original ACPI.SYS (patched DSDT):

- Same behavior as case above.


3) Windows XP SP3 with all oficial updates, including POSReady ones, patched Vista beta 5048 ACPI.SYS:

- Same behavior as case above.


4) Windows XP SP3 original ISO, no updates, patched Vista beta 5048 ACPI.SYS:

- Same behavior as case above.


CONCLUSION:

Booting from a DVD disc and installing Windows XP is the easiest way to get the job done.
#2678daniel_kDoes hibernation work?

Using the patched Vista beta 5048 ACPI.SYS, hibernation does work, as long as you are NOT using Intel USB3 ports.

When system returns from hibernation (after a power on), Intel USB3 controller won't work properly until the system is restarted.

On the other hand, if you use any other USB3 controllers with original drivers (ASMedia and VIA, I tested myself), everything works as it should.

But frankly, with cheap SSD nowadays, I wouldn't use this feature as it takes too much time until Windows is ready for use.
#2679daniel_k
Zitat von ⇗ diderius6 im Beitrag ¶ #2666
@daniel_k

Why did you change back to original acpi.sys?
Do you think it is possible, to make a generic DSDT for all compis?
May be like translator which translates Acpi 2.0 text to Acpi 1b in DSDT.
I think, the Ryzen hack has to stay in acpi.sys for Ryzen boards
Dietmar



Just did a final test with original and modded acpi.sys when installing XP from USB or DVD as you can see from my reports.

Personally, I've patched my DSDT table and just use original files.

For current Intel boards, it's easy to patch.

For Ryzen, I don't think we well ever have a DSDT patch as the issue is more complicated.
#2680infuscomus
Zitat von ⇗ daniel_k im Beitrag ¶ #2679
For Ryzen, I don't think we well ever have a DSDT patch as the issue is more complicated.


What is the issue? do we know exactly?
#2681infuscomus⇗ @Mikedebian

PCI\VEN_1022&DEV_1451 - AMD IOMMU Device
PCI\VEN_1022&DEV_1455 - AMD PCI
PCI\VEN_1022&DEV_1456 - AMD Family 17h (Models 00h-0fh) Platform Security Processor
PCI\VEN_1022&DEV_145C - AMD USB3 Host Controller drivers / Micro-Star MS-7A34
PCI\VEN_1022&DEV_145A - AMD PCI
PCI\VEN_1022&DEV_790B = AMD SMBus

I think driverpacks solution can cover these - ⇗ https://drp.su/en

PCI\VEN_1987&DEV_5007 - AMD NVME - ⇗ @diderius6 posted a driver for this somewhere in this thread.
#2682MikedebianIt wants to install the USB device as AMD usb 3 controller and I point it to the driver pack that you told me about earlier. It finds it and it's all good, but then it wants usbxhc.sys to complete the install, and if I do select usbxhc.sys from the installation medium of windows xp, I get instant blue screen.

Another device that fails is the AMD PSP 3 driver.

Edit:

Also, is there a link to the NVME driver?
#2683infuscomus⇗ @Mikedebian

what BSOD error code did you get?

it might be best to leave the USB 3 uninstalled for the moment
#2684MikedebianPicture



Mikedebian has attached images to this post  ⇗ 1570525529787575353015910  ⇗ IMG_20191008_110357.jpg
#2685infuscomus⇗ @Mikedebian

what was the HWID of the problem USB device?
was it PCI\VEN_1022&DEV_145C ?

 

Page 180

#2686Mikedebian⇗ @infuscomus

Yes, that is correct!
#2687Andalu⇗ @infuscomus
Installation with pendrive completed. Two manual restarts are needed during the setup.

With the F5 key I can choose only Standard PC with C-Step i486, other options are not present; I pressed the F7 key and I got 'Multiprocessor MPS' so no cpu cores in the device manager (even if 4 cores are visualized in the task manager); acpi.sys is not present so shutdown and restart don't work. USB3 works fine.

An error occurs during the driverpacks installation on searching the "WinXPPx86IE - setup.cmd": file not found.

Applying the 'chinese patch' I got bsod 7B on next boot.
#2688infuscomus⇗ @Mikedebian

some alternate USB drivers to try

¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (128)

¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (89)
#2689infuscomus⇗ @Andalu

you should be able to see "ACPI multiprocessor PC" if you press the up arrow a few times.

does it work without pressing F5/F7 key?

does it work unmodified?
#2690Mikedebian
Zitat von ⇗ infuscomus im Beitrag ¶ #2688
@Mikedebian

some alternate USB drivers to try

¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (128)

¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (89)


The second link worked with great success! Now it is only PSP driver lacking.
#2691Mikedebian⇗ @infuscomus Is it normal that windows xp only sees one core?

Process lasso only sees one core too.

Edit: It's listed as "Standard PC" in device manager
#2692infuscomus⇗ @Mikedebian

in device manager, under computer do you see "ACPI multiprocessor PC" or something else?
#2693MikedebianOnly "Standard PC" and I can not update the driver to anything else.
#2694infuscomus⇗ @Mikedebian

"Standard PC" is only one core, I think you can update driver to "ACPI multiprocessor PC" manually without reinstalling, but I have not tried this myself.
#2695Mikedebian⇗ @infuscomus I've seen that ⇗ @diderius6 has that. How did he do it? How would I theoratically update?
#2696infuscomus⇗ @Mikedebian

When updating driver try Install from specific location -> don't search, I will chose which driver to install.
#2697MikedebianYes, that is what I have done and it only gives me one option even if I disable the checkbox "Only show compatible hardware"
#2698diderius6⇗ @Mikedebian
Update to "ACPI multiprocessor PC" from "StandardPC" does not work.
I make a trick: I installed full "ACPI multiprocessor PC" on another compi.
Then, on this other compi I add hal.dll and ntoskrnl.exe from "StandardPC"
and add an entry for them in boot.ini.
This XP then I copy to first PC,
so I have both
Dietmar
#2699infuscomus⇗ @Mikedebian

when updating try Have Disk.. -> C:\WINDOWS\INF\HAL.INF select "ACPI Multiprocessor PC"

diderius6 boot.ini method is probably safer.
#2700MikedebianOh so I did it wrong in the beginning? I can't remember an option to select multicpu in install

 

Page 181

#2701MikedebianOh so I did it wrong in the beginning? I can't remember an option to select multicpu in install
#2702infuscomus⇗ @Mikedebian

setup is supposed to detect multiprocessor for you, unless you pressed F5 or F7 and selected "Standard PC"

you can force setup to use multiprocessor by pressing F5 then pressing the up arrow until you get to "ACPI muliprocessor PC" and selecting it.

⇗ @diderius6

do you remember how to modify boot.ini to add an option for ACPI multiprocessor?
#2703infuscomus⇗ @Mikedebian

I found an example entry you might be able use in boot.ini

make a 2nd entry e.g.

multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional" /fastdetect /NoExecute=OptIn

multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP MultiCore" /fastdetect /NoExecute=OptIn /kernel=ntkrnlmp.exe /hal=halmacpi.dll

attached a halmacpi.dll and ntkrnlmp.exe for you - place in C:\WINDOWS\SYSTEM32 of XP



infuscomus has attached files to this post
#2704diderius6⇗ @infuscomus
I tried this, does not work.
Only vice versa from "ACPI Multiprocessor PC" to "Standard PC"
is possible
Dietmar
#2705MikedebianI only get options F6 or F2 when booting install
#2706infuscomus⇗ @Mikedebian

the F5 and F7 options exist, setup just doesn't tell you about them.

I think at this point it is best to reinstall XP, press F5 during setup (during F6 prompt) and manually force "ACPI Multiprocessor PC"
#2707Andalu
Zitat von ⇗ infuscomus im Beitrag ¶ #2689

you should be able to see "ACPI multiprocessor PC" if you press the up arrow a few times.

You are right, my mistake.  I tried just now for multiprocessor acpi but the installation hangs on "setup is detecting and installing devices on your computer"; only the ps/2 keyboard and the pendrive is attached to computer, no usb or ps/2 mouse. The same happens without pressing the F5 or F7 keys. I'll try again.
#2708MikedebianOnly option I get is standard pc with c-step i486

Edit

Herp derp lol
#2709infuscomusdiderius6 also reported it hangs on "setup is detecting and installing devices on your computer" so your not the only one - try NOT clicking next and just try waiting a bit see if it responds?

I have not encountered this issue for myself on my hardware, works fine on ryzen and Z97.
#2710MikedebianCan I safely install the unofficial XP sp4  June 2019 on this?
#2711infuscomus⇗ @Mikedebian

I'm not sure, I think it should be OK.

install it in a VM to test first, just to be safe.
#2712Andalu⇗ @infuscomus
tried again, I waited 10 minutes with no clicking, same behavior.
#2713infuscomus⇗ @Andalu

OK, thanks for the testing.

I'll try to make a new xp usb3 iso image with unmodified source.
#2714MikedebianWaiting works for me. Never tried to click next. Wait about 7 seconds
#2715Andalu⇗ @infuscomus
I tried your iso on my crazy asrock B75 Pro3-M Ivy board: installation completed without errors (except for WinXPPx86IE) but the USB3 doesn't work.

 

Page 182

#2716infuscomus⇗ @Andalu

post #2688 i left links to posts containing alternate USB 3 drivers to try.
#2717Mikedebian

AMD GPIO Controller
ACPI\AMDI0030
*AMDI0030

Also, which page is the NVME driver on???
#2718diderius6⇗ @Mov AX, 0xDEAD
My Hack in kdstub.dll from Atheros does not work
on the Lenovo Flex 10 card.
The debugger just do not connect. Is there a principial difference between lan NIC and Wifi Nic?
This means, other networkcards do (may?) not work, when they are added to the original Microsoft 8.1 kdstub.dll files
Dietmar

PS: I tested both versions from lan debug: Alpha and the new one.
On cable lan NIC with from Microsoft supported networkcard it works nice and fast.



diderius6 has attached files to this post
#2719Andalu⇗ @infuscomus
I have already tried all the alternative drivers on my crazy B75 Pro3-M with no success. The only one that seems to work (??) is the amd modded driver but I still have the problem reported in ¶ #2587: this board needs to be always on...it's impossible, so it's correct to say: the usb3 doesn't work on this mysterious board... at least for now :)
#2720infuscomus⇗ @daniel_k

do you have any other USB 3 drivers for ⇗ @Andalu to try?
#2721schreibersteinHello!
It is so amazing that you folks over here at win-raid.com were able to get Windows XP / 2003 working on such modern hardware. Unlike other forums where people say "nah, this cannot be done. Just go with the time", you put in the effort to to patch, hack and experiment. I usually expect this kind of stuff from msfn.org, so it is great to see a German forum take the lead in this, (being Germany myself) hehe. Thank you so much to everyone involved in this.

My system:
--------------
Gigabyte Z390 Designare (Cannon Lake PCH)
Intel Core i9 9900K, 32GB RAM
AMD Radeon RX 580 8GB (I am aware this is not XP compatible)
Onboard Network cards: 8086:1539 (I211), 8086:15BC (I219-V)
Onboard AHCI controller: 8086:A352
--> PCI cards work using DELOCK 41341 Riser Card PCI-Express to PCI (tested on Windows 10 with Creative Audigy 2 ZS)


This system is my daily driver on Apple Mac OS X ("Hackintosh"), but I tried to get Windows XP x86 running two or three months ago.
I used good old Winfuture xp-Iso-Builder to integrate Fernando's driver, booted from CD and was able to install XP SP3 (US English) with ACPI disabled, otherwise the installation would crash.
USB keyboard and mouse worked using the integrated legacy support (I have no idea how they implemented that. Magic.), but it is also possible to use a real PS/2 keyboard and mouse using a StarTech KYC1MF PS/2 Y-Adapter.
As far as I remember, all cores were detected properly, but a lesser amount of RAM than the expected 3.25GB were detected. Boot took unusually long. It seems like it was stuck somewhere before the kernel got executed.

I would be happy to volunteer to serve as a guinea pig of some sort, given I have one of the newest systems available.
For now, I would like to refrain from BIOS patching for altering the ACPI table. I am not sure my Mac OS X bootloader could cope with changes in the ACPI table - and I also do not want to brick my board.
(I do not think I can actually choose which BIOS chip to load from. Gigabyte's "DUAL BIOS" will choose it automatically based on failed previous boot attempts, I suppose. If it actually is possible, I might be up for some experiments sometime.)
My questions:
- Is it possible to achieve a mostly working system without modifying the ACPI table on the chip?
- Is there any hope to get any of the integrated Intel ethernet controllers working?

My ideas (as gathered from this long post):
- Create Windows XP SP3 EN_US ISO
- Integrate AHCI driver TXTSETUP
- "Integrate" patched ACPI.SYS using makecab procedure (Which one would be the best version?)
- Install Windows XP with ACPI enabled
- Install modded Intel USB3 driver
- Play 3D Space Cadet Pinball
- Profit

Am I missing any recent findings of you guys, or does this sound like a doable way to get XP running with ACPI and multicore support on this machine?


Just for fun: I also had trouble getting anything DOS or Windows 98/ME related running (EMM386 not installed - incorrect machine type.), even when applying the patches from RLOEW for AHCI and memory. It seems that there is something about this architecture that the MS-DOS memory manager EMM386 just cannot handle. If I inserted a Geforce 7000-series card into one slot, it could theoretically be semi-usable.

Thank you.

Cheers,
Alexander (schreiberstein)
#2722XPLives⇗ @schreiberstein

Guten Tag Schreiberstein,

I didn't know the board was in German originally as Fernando did a very good job making it all English.  Only the hints are in the editor when you see German words.

From one of my favorite earliest games famous quote, "Halt Stop, Mein Name Ist".  Somehow I believe banned in Germany.

Hard to know why the install froze.  I would try using CD disc burned method to install from scratch.  Use a 128GB drive FAT32 partition and can be split into 32GB each.


What kind of Hackintosh Mac OS do you have setup on your Z370?

What is the oldest MAC OS X version that will work on it?  I want to try Tiger 10.4 if that's even possible for legacy support?  Would be funny to run Mac OS Tiger on Tiger Lake Intel CPU Chipset in the future.

Can you write a make a new thread and write a guide and steps on how you got your Hackintosh working on your Z370 i9-9900K system.  I would be interesting to make an XP/Hackintosh setup.  I also use a SB Audigy ZS 2 for my systems though I had to use another model now since the original one fried in an experiment.  Which Windows 10 drivers are you using for the sound card?  I think the official ones go up to Windows 7.

There might be some tools getting a Hackintosh to work that might benefit XP and UEFI.

What kind of functionality is your Hackintosh?

Does video card and sound card work?  What drivers are you using for it?

Does Intel USB 3.0 ports work?

What about network LAN? Do both Intel LAN models ethernet ports work?

To me it sounds like it would be more difficult to get Hackintosh working than XP?

How long did it take you to get the Hackintosh working?

Was this your first Hackintosh build?


The DOS memory issues existed since Sky Lake 100 Series from my own experience.  Something to do with how conventional ram is separated is different and might be connected to the iGPU shared memory.  Also most PCI sound cards don't work in DOS so only Windows 98SE might be the oldest to work with drivers.  Someone with Assembly and BIOS experience might be able to fix the EMM386 issues.  AMD doesn't seem to have this issue so maybe comparing the BIOS to see why this occurs.

Do you have any of the DOS/Windows Non XMS Ramdrive software that RLoew created for testing?
#2723MikedebianWhat is the latest modified storport driver?

"Community NVME 1.3 Storport Miniport by Schtrom"

This device cannot start, code 10

Yellow checkmark.

Also, AMD GPIO driver is checkmarked yellow. I did the snappy driver installer in expert mode and downloaded the pack. Only found windows 7 gpio driver? Anybody else can confirm? ⇗ @diderius6
do you have gpio working?

Those are my last two devices and then my X470GTA is fully supported.
690LC is basically my water cooler to control rgb, not needed.
Video gpu is vega 56, not supported.
#2724daniel_k
Zitat von ⇗ infuscomus im Beitrag ¶ #2680
Zitat von ⇗ daniel_k im Beitrag ¶ #2679
For Ryzen, I don't think we well ever have a DSDT patch as the issue is more complicated.


What is the issue? do we know exactly?

As the DSDT table is mostly the same as previous AMD platforms and the ACPI.SYS from Vista 5048 beta doesn't work without changes, certainly AMD changed the PIC in a way it isn't compatible with XP.
#2725daniel_k⇗ @schreiberstein, sent you a ready to use pack you can use to build your own compatible XP SP3 installation disc.

Make sure you read the instructions in the ReadMe.txt file.

Additionally, you can create a bootable USB flash drive with WinSetupFromUSB. Personally, I've tried with v1.8.

In this case, you don't need to run BUILDCD.BAT, just run WinSetupFromUSB and choose C:\GRTMPFPP_EN\CD as the source folder.
#2726schreiberstein⇗ @XPLives

Hello XPLives,

Thank you!
Everything that could be said about my Hackintosh setup can be found in an extraordinary, detailed guide made by an extremely helpful individual over at TonyMacx86:
⇗ https://www.tonymacx86.com/threads/succe...-rx-580.267551/

It is a Z390 system from late 2018 by the way. The parts have been selected to work with macOS Mojave.

I have quite a lot of hackintosh experience (intermediate level, I'd say), but proceeded to use real Macs for years since there were always some quirks involved. And simply because my iMac did all I needed, until it didn't.
This is very different from hackintoshing in the early 2010s. A lot more sophisticated. It is an insane amount of work what people put into patching and modding.
This build works 100%. Never crashed once. No kernel panics. 100% stability. 100% sleep capabilities. 100% wifi, bluetooth, usb3, onboard audio, ThunderBolt 3, iMessage, FileVault boot volume encryption (YES!) etc.
I was initially hesitant to shill out this amount of money on a new system and said to myself "send it back within 14 days if you cannot get it working perfectly"...
What can I say... I built it one Friday night in January, installed Windows and completed my entire macOS installation with everything working by Sunday evening. It pretty much works like a real Mac.
However, there were some things I needed to fix manually to get FileVault encryption working. But the guide is pretty complete. I am uttermost satisfied with this build.
It is insane how well it works.

⇗ https://www.tonymacx86.com/threads/assor...ckintosh.11234/
I built several Hackintoshes over the years (some homeservers, some virtual machines (Linux KVM with PCI-e passthrough and custom patchy kernels back in 2013, very tricky, lovely memories)). My first hackintosh build was in January 2011 (I was 15 at that time) - a Gigabyte GA-H55M-UD2H. It was a huge and cheap upgrade to my MacMini of that time, but the board was very unstable. Even on Windows. Sudden reboots, regardless of RAM or PSU. I then used an iMac 2011 from 2013 onwards. I then switched to a MacBook Pro 2013 in 2018 but really disliked the experience.
I now run this Hackintosh machine with two Apple Cinema HD 30" 16:10 displays connected and a "retro" Apple Extended Keyboard II from the early 1990s. It feels better than any Mac I have ever used in my life. The i9 really is a beast.
My intention was to build a system I would use for the next 5 years that would be Mojave (32 Bit + iTunes intact) compatible and that was somewhat overpowered, yet quiet.


I doubt Tiger would work. It already crashed in a virtual machine on everything higher or equal to Haswell. Something about the CPU. Maybe Snow Leopard. I have way to many "vintage" Macs to justify attempting such a project, lol.
The audio drivers for Windows 10 were : ⇗ http://danielkawakami.blogspot.com/2015/...rt-pack-61.html
There are also drivers for OS X, but mine did not survive sleep and wake. The audio stopped working afterwards. Sleep (ACPI S3, not my body lol) is very important for me. I barely ever turn off my computer.
But there are folks working on that over at the insanelymac forum, if I remember correctly. The kX Audio Driver is open source, after all.
A regular Audigy 2 ZS costs ~20 on German eBay these days. I originally bought it for my Windows 98 Athlon 64 rig, but its FireWire port steals the desired IRQ5 that I can assign in the BIOS. The Live! is better in that regard.
I recently purchased a used EVGA nVidia Geforce GTX 780 (non TI for compatiblity) which should work in both Windows XP and Mac OS X (it is the last supported nVidia GPU generation that is natively supported without "webdrivers" for OS X, which currently are not available for Mojave, as discussed on MacRumors) - However, the Radeon RX 580 feels much smoother on Mac OS X.
The 780 GTX still supports analog VGA out via DVI (for my Sony Trinitron CRT), which the Radeon does not support.
But since this is an ATX board, I could drive both cards. Incompatible GPUs can be made invisible via DSDT patches (also mentioned in the TonyMac guide), as they otherwise mess with sleep. The Geforce 780 wouldn't cause any issues though.

Getting the Hackintosh working will be much easier than XP, given that nearly all of the hardware is incompatible.
I suppose all will be fine if I get ACPI and thus IRQ management working on XP. If you don't mind dozens of add-in cards, I guess you can get nearly any system working.
I do not know why, but I really have an obsession with getting old stuff working on new systems.

--> My installation froze because of "not fully ACPI compliant" - 0x000000A5 . The typical issue discussed on here. Without ACPI, everything went smoothly and the system was stable, but nearly unusable due to severe IRQ conflicts.
Drivers for my Renesas USB3 PCI-E card would not work either. Probably due to the lack of "resources".


It would be really NICE to just get Windows 98 or ME to boot. ME actually went further in the installation. I was able to install it, but it then crashed during the first restart, even after I patched the memory and all that jazz.
No, I do not have any other software from RLOEW. But I purchased both AHCI and Memory patch. Partly because I wanted to support and compliment him for his work. I did not really expect it to work on Z390.
If you have any idea how to work around this issue, I would be very happy to hear about it. I doubt anyone would be able to get universal USB drivers working though. Well... I guess people need some challenges for the 2020s, haha!

If you have any questions regarding your Hackintosh project or about this build, feel free to send me a private message.

Cheers,
schreiberstein
#2727schreiberstein⇗ @daniel_k Thanks a lot! That was quick!
I will give that a try! Super helpful.
I won't bother with that USB stuff.
One burned CD-R a day keeps the Greta away.
#TuesdaysForLasers #SaveThePitsAndLands

Cheers,
schreiberstein
#2728daniel_k⇗ @schreiberstein, you're welcome!

Just give me your feedback.
#2729XPWELL64In MattKC's video,Windows 98 detects internal laptop keyboard and touchpad on Lenovo Thinkpad T480. This is a problem related with vendors that disable XP compilant acpi in dsdt section. This is vendor related thing. Another confusing thing is that Broadwell+ Muxless laptops cannot install GPU drivers. You can't use HDMI you can't use bluetooth you can't play games and you cannot use internal things in Windows XP.
#2730daniel_k
Zitat von ⇗ infuscomus im Beitrag ¶ #2720
@daniel_k

do you have any other USB 3 drivers for @Andalu to try?


No, all available modded drivers can be found in this topic.


Zitat von ⇗ Andalu im Beitrag ¶ #2719
@infuscomus
I have already tried all the alternative drivers on my crazy B75 Pro3-M with no success. The only one that seems to work (??) is the amd modded driver but I still have the problem reported in ¶ #2587: this board needs to be always on...it's impossible, so it's correct to say: the usb3 doesn't work on this mysterious board... at least for now :)





The USB controller doesn't work at all or it works but is limited to USB2 speeds?

 

Page 183

#2731POE_UKThe problem is simple, there are very few 32bit drivers for any modern system.
#2732diderius6⇗ @Mov AX, 0xDEAD
I make a test to install USB DEBUG 3.0 on the Lenovo Flex 10 under XP SP3.
I get an USB 3.0 Super-Speed A/A Debugging Cable 10ft
⇗ https://www.datapro.net/products/usb-3-0...ging-cable.html
Hm, usbview.exe tells me, that USB debug is not supported on the Lenovo Flex 10 xhci port.
I also take a look at USB2.0 debug, which should work from Vista and above.
The content of my boot.ini for this is (looks very simple, hope not too simple:)) )

[boot loader]
timeout=30
default=C:\WINDOWS

[operating systems]
C:\WINDOWS="Windows XP" /noexecute=optin /fastdetect
C:\WINDOWS="Windows XP QEMU DEBUG" /noexecute=optin /fastdetect /DEBUG /DEBUGPORT=USB /BUSPARAMS=0.14.0 /targetname=otto

When I start XP SP3 with this USB debug settings, it starts at once again with to chose an entry from boot.ini.

Here I mention, that on Vista (for USB2.0 boot) the BUSPARAMS=0.14.0 is a HEX value (from Win7 and above it is only decimal value)
means in Device Manager is shown BUSPARAMS=0.20.0 in decimal for the xhci port.

I do not know, if I should make a test for USB debug with Win8.1, even I have original Win8.1 on the Lenovo Flex 10
Dietmar

PS: Here are my modded files for XP SP3 USB3 debug. I mod only kdnet.dll (the new for lan modded version kdnet.dll with some extra HEX values. There I noticed an write error in the post it has to be
¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (177)

C7 05 AE 11 02 80 02 00 C6 05 B0 11 02 80 FF 66 =>
C7 05 AE 11 02 80 0C 03 C6 05 B0 11 02 80 30 66



diderius6 has attached files to this post
#2733Andalu
Zitat von ⇗ daniel_k im Beitrag ¶ #2730
The USB controller doesn't work at all or it works but is limited to USB2 speeds?

Please see my post at ¶ #2587
#2734diderius6But it is not me to give up.
I want to make the grafik driver work under XP on the Lenovo Flex 10.
The BSOD 0x50 which is shown I have seen in such situations,
when nearly(!) all was ready. May be, it is a problem of the IRQ configuration,
because under XP SP3 the lan network, sound and the graphikdriver all want IRQ7.
I ordered the very last compi
⇗ https://de.aliexpress.com/item/328158978....1fa24c4d2dAgxo
because it has one of the very rare boards with an N2806 Bay Trail cpu
Dietmar
#2735tarsonisHi there,

hope for getting a direction. I was using XP 32bit dual boot on my Ivy Bridge the last ten years and was stumbled to find out that its a pure hassle to get it running on AM4 unfortunately. Now with my Asus CH6 wifi (latest bios) with 1800x I try to get it running. After I found a user who got it running on this board with links to the files offered in this thread I was happy that there seems to be a chance. I used the latest files from this thread, created a XP cd with nlite but not able to install at all. I tried USB stick method month ago but gave up as I did not succeed at all. Since it works on this board I'm desperate to find out how since month... So any help is much appreciated.


I used the files from this thread:
acpi5048_x86_intel_amd_final.rar = compressed acpi.sys with Cabpack 1.4 and replaced it with the one nLite created in the final iso
AHCI32bit package which should have all drivers posted by diderius6 (inf selection in nlite - textmode - I selected all available in the list)
AMDXHCI_XP_FINAL package posted by diderius6 (inf selection in nlite - textmode)

When I select the processor (F7) I get always 7B error after setup is finished loading files with:
ACPI Multiprocessor
MPS Multiprocessor
Standard PC


If I don't select any Processor at all I get error 5 saying just random advice to check for virus and such. Since there are two important things to get it running (ahci and acpi) I can't figure out which produces the error. Or they maybe both produce the BSOD.


Did I made something wrong with nlite and the files I took from here or I'm just without luck? This board is a nightmare since the day one...
Or do I have to set anything in the bios first (the board is missing a IDE compatible mode obviously)?

Another possibility what I though is. I got my old working XP on hdd which worked on my IVY Bridge. Is it possible, without serious coding skillz, to reconfigure the OS files to be able to boot into it?
#2736diderius6⇗ @tarsonis
For me, ONLY the STORAHCI driver from ⇗ @skullteria works on AM4 Ryzen board
Dietmar

PS: ¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (59)
Integrate via nlite storahci.sys.

Make storport.sy_
from it via
makecab storport.sys
and put it into installationsfolder i386 from Installations CD.
#2737diderius6⇗ @Mov AX, 0xDEAD
On the Asrock fatal1ty z370 gaming k6,
with the same files for USB debug,
compi also reboots at once, so something with the USB debug files or with my boot.ini settings
on the target is not ok for XP SP3
Dietmar

EDIT: No clear statement about USB debug is possible until now for me, because usbview.exe also
on the Asrock fatal1ty z370 gaming k6 board tells: No debug port.
This is for the Intel USB and also for the Asmedia USB there true.
#2738daniel_k
Zitat von ⇗ Andalu im Beitrag ¶ #2733
Zitat von ⇗ daniel_k im Beitrag ¶ #2730
The USB controller doesn't work at all or it works but is limited to USB2 speeds?

Please see my post at ¶ #2587




Missed that.

What is the error code the XHCI controller reports?

Can you export the following registry tree:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet

Of a working and a not working instance?

Curiously, the AMD driver doesn't create any specific registry entries. Really odd.
#2739daniel_k⇗ @diderius6, any of your boards have the ASM2142 controller?

Can you please test the new driver v1.16.59.1 that Fernando just posted?

⇗ USB 3.0/3.1 Drivers (original and modded)

For me it isn't working, doesn't detect any devices.

vmanuelgm says it's working on his system, which has an ASM3142 controller.
#2740schreiberstein⇗ @daniel_k

I created a boot media according to your instructions (VL ISO, the second one from the list, I think).
Unfortunately, the installer crashes after loading the Windows NT Kernel. I could clearly see how it loaded all different sorts of USB drivers and also the Intel Storage stuff.
It then crashed with the same bluescreen about The BIOS in this system is not fully ACPI compliant.
0x0000000A5

I will try to start the installer without ACPI support so I have a semi working system to experiment in, if the AHCI driver is correct.

Do you have an idea what might be the issue? I could see that the modified date of the changed files was correct. I dont think I messed it up.

Cheers,
schreiberstein

EDIT:

Booting off the SATA CD drive also does not work after forcing ACPI off using F7. It gives me another bluescreen: the 0x0000007E - it cant find the boot device, I suppose. I guess the pack did not include the correct AHCI driver for my chipset. An ISO I made myself with a certain driver from Fernando worked without issues previously, albeit without ACPI and USB.
I will list what driver I used in a bit.
#2741diderius6⇗ @daniel_k

I just install this new Asmedia driver (see pic) on the Asrock board. It has ASM2142 controller.
ASM3142 does not exist really, it is identic to ASM2142.
For me, Asmedia device with this new driver v1.16.59.1 works normal (I installed xhci and HUB driver).
But I remember some versions ago from this driver, that I have the same problems as you now.
Always crash, device not recogniced and so on.

But now not
Dietmar

#2742daniel_k⇗ @schreiberstein, strange.

I was sure it would work.
#2743daniel_k[quote=diderius6|p2741]
ASM3142 does not exist really, it is identic to ASM2142.[/quote]
That's what I always thought, but why is there a device ID PCI\VEN_1B21&DEV_3142 in the INF?

Is there anything pluged in the ASMedia ports? Can't see from your screenshot.

If not, please connect something.
#2744schreiberstein⇗ @daniel_k

I have just checked my previous download folder.
The AHCI driver that should work for my Z390 coffee lake system was "Universal Intel RST Drivers+Software Set v11.2.0.1006 mod+signed by Fernando.rar".
#2745diderius6⇗ @daniel_k
Look on right side E:\SanDisk (is ultrafast USB stick, about 400 MByte/s)
and also in Device Manager, last entry "USB-Massenspeichergerät"
Dietmar

 

Page 184

#2746daniel_k⇗ @diderius6, thanks! Just wonder why it doesn't work here? O.o
#2747daniel_k⇗ @schreiberstein, I've attached the drivers from Fernando.

Just unpack in the \GRTMPFPP_EN\CD\I386, overwriting existing files.

You may delete the following files in the same folder: iaStorA.inf, iaStorA.sys and iaStorF.sys.

Rebuild the ISO.
#2748schreiberstein⇗ @daniel_k

Alright! Thank you. I will try that out in a moment.
Unfortunately, this probably means that the Longhorn ACPI hack won't work for me, if it already crashes with a BSOD during setup, right?
That means there won't be a resolution for IRQ resource conflicts.
So, I will install using F7 and see if anything changes.

Cheers,
schreiberstein
#2749daniel_k⇗ @schreiberstein, by the way, it would be nice if you could post the complete ACPI error message, maybe it gives us some clues about where is the problem.

⇗ @diderius6, you've got an eVGA Z390? If so, it works just fine with the modded ACPI 5048, right?
#2750schreiberstein
Zitat von ⇗ daniel_k im Beitrag ¶ #2749
@schreiberstein, by the way, it would be nice if you could post the complete ACPI error message, maybe it gives us some clues about where is the problem.

@diderius6, you've got an eVGA Z390? If so, it works just fine with the modded ACPI 5048, right?


I attached a photo of the bluescreen.

Cheers,
schreiberstein

schreiberstein has attached images to this post  ⇗ IMG_0688.jpeg
#2751daniel_k⇗ @schreiberstein, that's a tough one.

Parameter 1 is kind of incompatibility.

Parameter 2 is the pointer to the link node. (This device is missing the _DIS method.)

⇗ https://docs.microsoft.com/en-us/windows...acpi-bios-error
Parameter 1 is 0x10006, which means that ACPI found a link node, but it cannot disable the node. (Link nodes must be disabled to allow for reprogramming.)


⇗ @diderius6, do you have any experience with this?
#2752schreiberstein
Zitat von ⇗ daniel_k im Beitrag ¶ #2751
@schreiberstein, that's a tough one.



⇗ @daniel_k

Oh, jackpot, I guess... :D
Thanks for your initial assessment of the situation.
Burning the CD-RW of the updated ISO right now...
By the way, can I assist by posting any output from a working Windows/Linux system or DSDT dumps?

I think fixing the problem I encounter should allow users of all other Gigabyte AORUS Z390 boards to run XP, since these boards are very similar, as far as I know.
And these boards are quite popular due to their good VRM design.

Cheers,
schreiberstein
#2753Andalu
Zitat von ⇗ daniel_k im Beitrag ¶ #2738

Missed that.
What is the error code the XHCI controller reports?
Can you export the following registry tree:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet
Of a working and a not working instance?
Curiously, the AMD driver doesn't create any specific registry entries. Really odd.

No yellow exclamation mark for the XHCI controller when the USB3 function fails, simply the usb3 ports act as usb2 after a shutdown.

Sorry, but I'm really noob on this: how can I attached the reg files at my post?
#2754daniel_k⇗ @schreiberstein, actually I can extract the DSDT table from the BIOS on Gigabyte site.

At first sight, it seems to be simple: just missing some _DIS methods.
#2755daniel_k
Zitat von ⇗ Andalu im Beitrag ¶ #2753
No yellow exclamation mark for the XHCI controller when the USB3 function fails, simply the usb3 ports act as usb2 after a shutdown.

Sorry, but I'm really noob on this: how can I attached the reg files at my post?



When replying, below the "text" box, click on Attach file.

A new box will open, then you can browse your computer for the file, then click on Upload. That's all.

It's a good idea to pack both .reg files together instead of sending them one by one uncompressed.
#2756schreiberstein⇗ @daniel_k

That's cool! I am using Firmware F6 by the way, but F7 did not change anything except for the microcode, so...
Btw. The new ISO also fails with a 7E error. Sounds like the AHCI driver does not work. I will try with the ISO I previously created using Winfuture xp-Iso-Builder.
Strange. I removed the files you asked me to remove. and pasted in the content of the archive. It mentioned an Intel Driver being loaded.
Maybe I can get USB to work regardless on a finished system for troubleshooting. Could you point me to the latest "installable" package for the appropriate USB drivers? Installable in the sense of manually assigning the inf files in device manager?

Thank you and cheers,
schreiberstein
#2757Mikedebian⇗ @infuscomus

Is there a reason that ocmsn.dll is not present on the CD / System after install?

It is required for things like adding and removing windows components. I got it from an external source, but when trying to add things (like Windows Search 4.0) it complained that other files were missing too (a bmp file for example. It was not present anywhere. Can't remember the name of it.)
#2758daniel_k⇗ @schreiberstein

¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (128)
AMDXHCI_XP_FINAL.rar
#2759Andalu⇗ @daniel_k
I have already doing so but on preview the file attached seems to be an image file and not a zip file
#2760daniel_k
Zitat von ⇗ Andalu im Beitrag ¶ #2759
@daniel_k
I have already doing so but on preview the file attached seems to be an image file and not a zip file

Huh?

Just upload it using ⇗ https://www.mediafire.com/

 

Page 185

#2761Andalu⇗ @daniel_k
Here the registry trees requested.



Andalu has attached files to this post
#2762infuscomus⇗ @Mikedebian

the XP source I used already has it removed

I'll PM you my XP source
#2763diderius6⇗ @daniel_k

"At first sight, it seems to be simple: just missing some _DIS methods."

Exact the same BSOD happens on the z390 Maximus XI Gene  board.
But without having possibility to debug this board,
it is a hard job.
I noticed, that compared with the Asus Apex X board,
they changed _Dis method on a lot of devices.
Patch of DSDT table is possible,
but how
Dietmar

PS: Bsod 0xA5 (0x10006) is not solved until now via acpi 5048 on XP SP3.
It happens on nearly all Z390 boards.

EDIT: May be at the end of every device we can put

Method (_DIS, 0, NotSerialized) // _DIS: Disable Device
{
}

in DSDT.
#2764daniel_k⇗ @Andalu, there is only one relevant change in the following tree:
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\USB\Vid_0480&Pid_a007\20130504008236F\Device Parameters]

"ExtPropDescSemaphore"=dword:00000001
Which is only present in 2.HKLM post-shutdown (USB2).reg

Try to delete this entry and restart.

If this doesn't help, probably something related to device programming registers, which is something I can't help you with.
#2765tarsonis
Zitat von ⇗ diderius6 im Beitrag ¶ #2736
@tarsonis
For me, ONLY the STORAHCI driver from ⇗ @skullteria works on AM4 Ryzen board
Dietmar

PS: ¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (59)
Integrate via nlite storahci.sys.

Make storport.sy_
from it via
makecab storport.sys
and put it into installationsfolder i386 from Installations CD.



Great I will try this one. So just the ⇗ @skullteria driver from your link needed and no iaStor.sys, acpi.sys integration in the iso? Thanks for the link!
#2766infuscomus⇗ @tarsonis

acpi.sys is still needed

iastor.sys can be removed
#2767diderius6⇗ @tarsonis
Modded acpi.sy_ has to be put in i386 folder as before.
No iaStor.sys is needed.
But you have to integrate the STORAHCI driver as txtmode driver via nlite or F6 method
and add by hand storport.sy_ also in i386 folder
Dietmar
#2768schreiberstein⇗ @diderius6

Would it be possible to patch the DSDT without modifying the BIOS, as described in this patcher application ?:
⇗ https://msfn.org/board/topic/179059-acpi...r-at-boot-time/

I have no knowledge about ACPI, but if there is something I can test for you on my Z390 machine, I would love to help - as long as I don't have to attach a JTAG device to my bios chip.

It really is a bummer that these bios programmers removed the support for older ACPI versions. It does not really make sense to me.

Cheers,
schreiberstein
#2769Andalu
Zitat von ⇗ daniel_k im Beitrag ¶ #2764
@Andalu, there is only one relevant change in the following tree:
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\USB\Vid_0480&Pid_a007\20130504008236F\Device Parameters]
"ExtPropDescSemaphore"=dword:00000001
Which is only present in 2.HKLM post-shutdown (USB2).reg
Try to delete this entry and restart.
If this doesn't help, probably something related to device programming registers, which is something I can't help you with.

That entry is re-created after each restart. I'll try tomorrow a way to block it.

Thanks for your time ;)
#2770daniel_k
Zitat von ⇗ Andalu im Beitrag ¶ #2769
That entry is re-created after each restart. I'll try tomorrow a way to block it.

Thanks for your time ;)

You're welcome.

Question is: Does it make a difference?
#2771daniel_k⇗ @schreiberstein, please try this.

Found the _DIS check which causes the BSOD.

Now we need to know what happens later.

Just unpack in the \GRTMPFPP_EN\CD\I386, overwriting existing file.
#2772diderius6⇗ @daniel_k

Do you jmp over 0x10006 Bsod?
I tried this also, but does not help
Dietmar
#2773daniel_k
Zitat von ⇗ diderius6 im Beitrag ¶ #2763
Bsod 0xA5 (0x10006) is not solved until now via acpi 5048 on XP SP3.
It happens on nearly all Z390 boards.

EDIT: May be at the end of every device we can put
Method (_DIS, 0, NotSerialized) // _DIS: Disable Device
{
}
in DSDT.

Actually, we just need to add that Method to Device (LNKA) to Device (LNKH), which are all have hardware ID PNP0C0F.

Just saw that ACPI.SYS specifically checks all devices with PNP0C0F for a _DIS method.

EDIT: Nevermind them.
#2774daniel_k
Zitat von ⇗ diderius6 im Beitrag ¶ #2772
@daniel_k

Do you jmp over 0x10006 Bsod?
I tried this also, but does not help
Dietmar

What happens then?

⇗ @schreiberstein, please try it anyway, maybe the behavior is different.
#2775schreiberstein⇗ @daniel_k

Should I do a quick attempt of what you suggested to see if the 0xA5 BSOD changes to a 0x7E due to the missing AHCI driver? (Thus indicating ACPI works, just no boot media can be found - which I can fix sometime later tomorrow.)
Or should I go to bed and try it tomorrow? :D

Cheers,
schreiberstein

 

Page 186

#2776daniel_k⇗ @schreiberstein, make a quick try.
#2777diderius6⇗ @daniel_k

Then happens famous BSOD 0x7E (0xC0000005,..)
¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (169)
and from this place I think we need Windbg.
Now all the z390 boards can be debugged via lancard (I use Realtek in Pcie slot) because of nice work for lan debug from ⇗ @Mov AX, 0xDEAD
Dietmar
#2778schreiberstein⇗ @daniel_k
Burning the disc right now... will keep you posted.
It's strange that the txtsetup takes soooo long to load on these modern boards with all their bells and whistles. My Athlon 64 939 rushes through it like a starving rat.

Cheers,
schreiberstein
#2779daniel_k⇗ @diderius6, can't you try to patch the DSDT?
That'd be easier, provided that you can easily flash the BIOS with your tools.

Under certain cases I don't think we can simply hack away ACPI.SYS.
#2780diderius6⇗ @daniel_k
Of course I can try to patch DSDT. I think with good chances. With lan Windbg you can found the exact place of BSOD.
But I do not have this board. And for other people it is a big risk to flash a faulty DSDT,
even the Gene XI has a Biosflashback port
Dietmar
#2781daniel_k⇗ @diderius6

I thought you had one Z390 board.

Ever thought of getting one?
#2782diderius6⇗ @daniel_k

I have the EVGA z390 Dark board. EVGA speaks with people from Asus and they make just as a hobby a Bios,
that works to full with normal XP SP3 and XP 64bit, even with USB3 from scratch.
I compare those 2 Bios for normal and for XP. At once I see, that the _DIS method is treated complete other
and this is also true for Asus Apex X (I patch DSDT, works) and Asus Apex XI, until now no XP Bios
and overclocker worry at hardwarebot a lot about it
Dietmar
#2783schreibersteinGosh. The disc failed on me. Trying a new one.
This was a brand new Verbatim CD-RW.



schreiberstein has attached images to this post  ⇗ Screen Shot 2019-10-09 at
#2784daniel_k⇗ @diderius6, forgot about it.

EVGA z390 Dark, that's the one that have XP friendly BIOS.
#2785daniel_k⇗ @schreiberstein, you're in Germany, right?

Do it tomorrow, man! It's too late.
#2786diderius6⇗ @daniel_k

Nono, this EVGA Bios for XP is the key for to understand, what went wrong with _DIS in its normal Bios
Dietmar
#2787daniel_k⇗ @diderius6, just saw what they did.

Basically, the code of all Device (LNK?) is exactly the same as from Z370 boards.

And they readded this:

 
    Scope (_SB)
{
OperationRegion (ITSS, SystemMemory, 0xFDC43100, 0x0208)
Field (ITSS, ByteAcc, NoLock, Preserve)
{
PARC, 8,
PBRC, 8,
PCRC, 8,
PDRC, 8,
PERC, 8,
PFRC, 8,
PGRC, 8,
PHRC, 8,
Offset (0x200),
, 1,
, 1,
SCGE, 1
}
}



Piece of cake!

#2788daniel_k⇗ @schreiberstein, try to learn how to use Mov AX, 0xDEAD's ACPI Patcher, which you've linked previously:
⇗ https://msfn.org/board/topic/179059-acpi...r-at-boot-time/

This way we can help you to test a patched DSDT table.
#2789schreiberstein⇗ @daniel_k

Just like Dietmar predicted.
0x7E acpi.sys

I can get familiar with the patcher soon.

Good night,
schreiberstein



schreiberstein has attached images to this post  ⇗ 0796B5B1-C15B-4459-8BCB-0
#2790daniel_k⇗ @schreiberstein

Good night!

I'm sure we will fix it easily.

 

Page 187

#2791diderius6⇗ @daniel_k
I think,
the most important part is this in XP DSDT, which is missed 8 times at nonXP DSDT
for  Device (LNKA) Device (LNKB) Device (LNKC) Device (LNKD) Device (LNKE) Device (LNKF) Device (LNKG) Device (LNKH)
here as example for Device (LNKA)


           Method (_DIS, 0, Serialized)  // _DIS: Disable Device
           {
               PARC |= 0x80
           }

           Method (_PRS, 0, Serialized)  // _PRS: Possible Resource Settings
           {
               Return (PRSA) /* \_SB_.PRSA */
           }

Dietmar

PS: This is from XP friendly Bios 92 of the EVGA DARK z390 board. It is missed in XP unfriendly Bios.
#2792diderius6⇗ @daniel_k ⇗ @schreiberstein

I make a new DSDT and flash this into Bios Z390DESI.F7
from original Biosversion F7 from Gigabyte Website
⇗ https://www.gigabyte.com/de/Motherboard/...support-dl-bios

I think, it will not destroy anything to 99% and works for XP. But 1% risk is left.

Dietmar

Download
⇗ https://ufile.io/iwoysdfd

EDIT: If this still gives BSOD A5 (0x10006), we have the possibility to copy in DSDT the whole device
      
       Device (LNKA)     
       Device (LNKB)
       Device (LNKC)
       Device (LNKD)        
       Device (LNKE)
       Device (LNKF)
       Device (LNKG)
       Device (LNKH)

from a Gigabyte z370 gaming 3 DSDT to the gigabyte z390 designare DSDT.



diderius6 has attached files to this post
#2793schreiberstein⇗ @diderius6

Moin Dietmar,

I will look into the Mov AX, 0xDEAD's ACPI Patcher method first before flashing the BIOS, so thanks a lot for providing the DSDT file as a standalone version. That's really cool.
Right now, I am not familiar with how reliably Gigabyte's dual bios technology works and how easy a recovery would be. I also do not possess a JTAG device or whatever is needed to unflash a bricked BIOS.
I first need to look into how I would in case something goes wrong, before I actually attempt it.
Please understand. :-)

Have a nice day,
schreiberstein
#2794diderius6⇗ @schreiberstein

Of course I understand you.
I broke 2 boards with modded Bios, takes me months to make them alive again.

"how reliably Gigabyte's dual bios technology works"
I think, only when the possibility is given, to copy Bios back, this will work.
I "succeed" on Asus Apex board to brake Biosflashback(!)
Dietmar
#2795diderius6⇗ @Doc.Brown

To flash Bios is always a risk!

I make also a Bios based on Version 57 for the ROG MAXIMUS XI GENE board.
Flash it via Biosflashback on the gene XI board.
The risk of broken Bios in compi is because of Biosflashback <1%.
The chance, that it works for XP is about 70%, because this solved only BSOD A5 (0x10006)
Dietmar

⇗ https://ufile.io/75zrsuuo



diderius6 has attached files to this post
#2796jonny⇗ @diderius6
thanks for your help, pls can you tell me a way to integrate acpi.sy_ correctly into windows xp cd? because i saw that acpi.sys from windows longhorn build 5048 have dependencies with the file that gave me ERROR 14, so if you can help me how to integrate the acpi.sys in a better way pls let me know, (i used CABPACK 1.4 to integrate acpi.sys, then i named the file acpi.sy_) and i installed xp into usb not cd, sorry i typed wrong, have a good day
#2797diderius6⇗ @jonny

At commandline type for the modded acpi.sys (path to its folder)

(path to its folder) makecab acpi.sys

This gives you acpi.sy_

This acpi.sy_ you copy to your installationsfolder i386 and burn CD
To change *.cab can be done after installing XP or even never^^^.
Dietmar

PS: Be sure, to have the needed AHCI driver integrated via txtmode driver in nlite.
#2798XPWELL64⇗ @diderius6
I bricked my mobo because I integrated your DSDT wrongly.
#2799diderius6⇗ @XPWELL64
I cant remember, that I make a Bios for you
Dietmar
#2800XPWELL64⇗ @diderius6
1- Download my 603 Version of Asus X555LB bios.
2- After extracting things of my bios, please integrate your dsdt.aml into my bios.
3- I will check my bios and injected dsdt.aml by Uefitool.
#2801diderius6XPWELL64
I remember Asus X555LB notebook.
There I solved all 24 unfullfilled dependencies in DSDT
Dietmar

PS: I still do not know, what you want to change in that Bios.
#2802XPWELL64⇗ @diderius6
I want to inject dsdt.aml into bios.
#2803diderius6⇗ @XPWELL64
This I understand. But what should be changed in that DSDT
Dietmar

PS: I have already done with post
¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (125)
#2804XPWELL64⇗ @diderius6
Nothing.
#2805diderius6⇗ @XPWELL64
The problem with long integers 64bit as for example PDBM=0xFFFFFFFFFFFFFFF9
is gone with the last acpi.sys 5048 mod
Dietmar

 

Page 188

#2806XPWELL64Problem solved, I will buy sandy bridge desktop.
#2807diderius6⇗ @XPWELL64
Witch problem?
Dietmar

PS: Laptop Asus x555lb seems to stay alive
¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (175)
#2808XPLives⇗ @schreiberstein

Zitat von ⇗ schreiberstein im Beitrag ¶ #2726
@XPLives

Hello XPLives,

Thank you!
Everything that could be said about my Hackintosh setup can be found in an extraordinary, detailed guide made by an extremely helpful individual over at TonyMacx86:
⇗ https://www.tonymacx86.com/threads/succe...-rx-580.267551/

It is a Z390 system from late 2018 by the way. The parts have been selected to work with macOS Mojave.

I have quite a lot of hackintosh experience (intermediate level, I'd say), but proceeded to use real Macs for years since there were always some quirks involved. And simply because my iMac did all I needed, until it didn't.
This is very different from hackintoshing in the early 2010s. A lot more sophisticated. It is an insane amount of work what people put into patching and modding.
This build works 100%. Never crashed once. No kernel panics. 100% stability. 100% sleep capabilities. 100% wifi, bluetooth, usb3, onboard audio, ThunderBolt 3, iMessage, FileVault boot volume encryption (YES!) etc.
I was initially hesitant to shill out this amount of money on a new system and said to myself "send it back within 14 days if you cannot get it working perfectly"...
What can I say... I built it one Friday night in January, installed Windows and completed my entire macOS installation with everything working by Sunday evening. It pretty much works like a real Mac.
However, there were some things I needed to fix manually to get FileVault encryption working. But the guide is pretty complete. I am uttermost satisfied with this build.
It is insane how well it works.

⇗ https://www.tonymacx86.com/threads/assor...ckintosh.11234/
I built several Hackintoshes over the years (some homeservers, some virtual machines (Linux KVM with PCI-e passthrough and custom patchy kernels back in 2013, very tricky, lovely memories)). My first hackintosh build was in January 2011 (I was 15 at that time) - a Gigabyte GA-H55M-UD2H. It was a huge and cheap upgrade to my MacMini of that time, but the board was very unstable. Even on Windows. Sudden reboots, regardless of RAM or PSU. I then used an iMac 2011 from 2013 onwards. I then switched to a MacBook Pro 2013 in 2018 but really disliked the experience.
I now run this Hackintosh machine with two Apple Cinema HD 30" 16:10 displays connected and a "retro" Apple Extended Keyboard II from the early 1990s. It feels better than any Mac I have ever used in my life. The i9 really is a beast.
My intention was to build a system I would use for the next 5 years that would be Mojave (32 Bit + iTunes intact) compatible and that was somewhat overpowered, yet quiet.


I doubt Tiger would work. It already crashed in a virtual machine on everything higher or equal to Haswell. Something about the CPU. Maybe Snow Leopard. I have way to many "vintage" Macs to justify attempting such a project, lol.
The audio drivers for Windows 10 were : ⇗ http://danielkawakami.blogspot.com/2015/...rt-pack-61.html
There are also drivers for OS X, but mine did not survive sleep and wake. The audio stopped working afterwards. Sleep (ACPI S3, not my body lol) is very important for me. I barely ever turn off my computer.
But there are folks working on that over at the insanelymac forum, if I remember correctly. The kX Audio Driver is open source, after all.
A regular Audigy 2 ZS costs ~20 on German eBay these days. I originally bought it for my Windows 98 Athlon 64 rig, but its FireWire port steals the desired IRQ5 that I can assign in the BIOS. The Live! is better in that regard.
I recently purchased a used EVGA nVidia Geforce GTX 780 (non TI for compatiblity) which should work in both Windows XP and Mac OS X (it is the last supported nVidia GPU generation that is natively supported without "webdrivers" for OS X, which currently are not available for Mojave, as discussed on MacRumors) - However, the Radeon RX 580 feels much smoother on Mac OS X.
The 780 GTX still supports analog VGA out via DVI (for my Sony Trinitron CRT), which the Radeon does not support.
But since this is an ATX board, I could drive both cards. Incompatible GPUs can be made invisible via DSDT patches (also mentioned in the TonyMac guide), as they otherwise mess with sleep. The Geforce 780 wouldn't cause any issues though.

Getting the Hackintosh working will be much easier than XP, given that nearly all of the hardware is incompatible.
I suppose all will be fine if I get ACPI and thus IRQ management working on XP. If you don't mind dozens of add-in cards, I guess you can get nearly any system working.
I do not know why, but I really have an obsession with getting old stuff working on new systems.

--> My installation froze because of "not fully ACPI compliant" - 0x000000A5 . The typical issue discussed on here. Without ACPI, everything went smoothly and the system was stable, but nearly unusable due to severe IRQ conflicts.
Drivers for my Renesas USB3 PCI-E card would not work either. Probably due to the lack of "resources".


It would be really NICE to just get Windows 98 or ME to boot. ME actually went further in the installation. I was able to install it, but it then crashed during the first restart, even after I patched the memory and all that jazz.
No, I do not have any other software from RLOEW. But I purchased both AHCI and Memory patch. Partly because I wanted to support and compliment him for his work. I did not really expect it to work on Z390.
If you have any idea how to work around this issue, I would be very happy to hear about it. I doubt anyone would be able to get universal USB drivers working though. Well... I guess people need some challenges for the 2020s, haha!

If you have any questions regarding your Hackintosh project or about this build, feel free to send me a private message.

Cheers,
schreiberstein


   
Schreiberstein,

Does your username mean something in German?

For the moment I probably have the most advanced setup at least for XP and Server 2003.  I own the i9-9900K and preordered mine and probably the only one to have attempted installing over 64GB memory in XP and Server 2003 for both 32-Bit and 64-Bit testing.  I'm using a Z370 that is fully compatible with the i9 Coffee Lake octacore so it is possible whatever I can do can be done the same on the Z390 since the chipsets are nearly identical similar to how the Z68 and Z77 were.  The only major changes  I believe is just the CPU microcode support for 9th Gen out of the box as the socket remained the same.  The Z390 was just a rush job as they were supposed to release a Z470 chipset that supported the 10nm Cannon Lake which now has been delayed or altered so Ice Lake is now the next desktop replacement.   This is disappointing as I've read Ice Lake will use a different CPU socket so a new motherboard will have to be purchased.  So that is the reason why I am waiting for final news on which Intel Chipset will finally have true DDR5 and PCIe 5.0 support before upgrading again.  Worst case is Z470 is still 14nm and 10 core max or capped to 128GB max memory with DDR4 and PCIe 4.0.  Best case is Z470 uses the same socket as Z370/Z390 and we get a Z470/Z570 CPU backward compatibility extension with just a BIOS microcode update with the possibility of 10nm CPUs that run cooler so it will work on Z370 since it's doubtful Intel can hit 16 Core / 32 Thread CPUs until 7nm Sapphire Rapids.

Now I typically switch to my cheaper hexacore for most of my experimental OS testing in case I fry it I'm not out a lot of $$$ money.  But any testing that works on it should apply to the i9-9900K.

The XP ACPI issues have existed starting with SkyLake 100 Series so without BIOS modding or using a modded ACPI.SYS it is unlikely you can use the system with full ACPI functionality which is why you are getting the infamous BSOD A5 Error.

So without BIOS modding which I also don't want to do either the best method would be either a modded ACPI.sys replacement or choosing to install XP without ACPI.  So far in my Z370 any modded ACPI.sys testing the graphics card is missing including the integrated Intel GPU in the Device Manager so if you depend on graphics you may have to be the guinea pig and test out other people's modded ACPI.SYS and hope you hit a winner like the lotto.  So unless this is resolved only the NO ACPI install method with MPS Mode on Intel CPUs are the only easy way to get XP working without ACPI or BIOS modding.

The good thing is XP will still work but you are correct since there are less IRQs available you may run into resource issues.  I think there is another way to get around this and avoid using all ACPI features by modifying the ACPI.sys to act closer to MPS mode.  Without knowing what exactly is being modified in the ACPI.SYS I can't really assist other people and fix it and release my own modded ACPI.SYS for testing.  Since no one has taken the time and written any kind of ACPI.SYS modding guide yet on exactly what they are modifying or altering when they release a modded ACPI.SYS for people to guinea pig test it's anyones guess if there can be a universal ACPI.SYS fix for all systems.

But I think the key is partially in converting the ACPI.SYS to be less ACPI friendly and function more in MPS mode so you still get the extra IRQs but no Standy By Mode.  You can simulate power efficiency by changing your BIOS CPU Core Ratio down to a fixed number like 8.  800 MHz is the lowest you can go today.  I actually hate how the CPU MHz gets throttled as the CPU Voltage isn't constant.  By setting a fixed CPU Core Ratio and CPU Core Voltage you can get better efficiency and lower temps.  If someone can push it down to 400 MHz -> 66 MHz that would be amazing to see how much lower the CPU Core Voltage can reach.  As long as you can Shutdown and Restart the computer I think that would be fine for most people.  If the system is running 24/7 this is the perfect universal modded ACPI.SYS.  As for Hyperthreading that is something I don't know if it's possible to still function with ACPI disabled because in MPS Mode there is no hyperthreading.  If a modified ACPI.SYS can have hyperthreading, all IRQs available, but just no Standy By or Power Saving Modes then this will be the best modded universal ACPI.sys to create combined with my BIOS settings.

The only other way is BIOS modding and simulating only Ivy Bridge ACPI functions and removing all newer ones.  If this were possible then maybe you could make a Coffee Lake BIOS operate the same as Ivy Bridge except add newer CPU microcode support.  Most of newer lower power features are probably what is causing the ACPI errors.  I don't know enough if it's possible to use an Ivy Bridge BIOS template and port it to Coffee Lake BIOS.  Only thing is you would have to remove the entire Intel GPU sections as XP drivers won't work on the newer iGPU and I think the iGPU memory sharing is partly responsible for the DOS incompatibility with Himem.sys.  Personally I'd just clean out all the iGPU code entirely so it isn't detected or see if the Ivy Bridge iGPU code could work on the Intel Coffee Lake iGPU.  I'd be curious if that's all that is preventing the XP drivers from working on newer iGPUs.

I usually don't do too many help responses due to my own limited time but I think yours is the first XP Hackintosh request so I think it may end up being useful for many people.  I've been to TonyMacx86 long ago.  But at that time it was more of a curiousity and I didn't really need to use a MAC.  Every time I used a real one it felt like it wasn't working the way it should.  Even internet browsing on one was a bit awkward.  But I do have a friend who only uses Macs and another who uses one for Video Editing.  So the fact that Intel based Macs are still in production gives Intel another reason to choose them over AMD if you wanted to build a Hackintosh.

I'm not aware of any other members here who are Mac users or they would have chimed in by now.  But I think for the moment I might the only one closest to devote my time to try and see if it could happen.  So as long as we can help each other out it might be possible.

As for your Hackintosh portion I think if you can create a thread titled "Schreiberstein XP Hackintosh Project" in the Windows XP/2000/Server 2003 Subforum to post your responses regarding it there.

It would be easier to find your messages.  As for the ACPI assistance you can keep posting in this thread you are using now and keep guinea pig test till you hit the jackpot.

At one point I was going to build a Hackintosh based on Sandy Bridge and the HD Graphics 3000 back in 2011.  Never got around to do it.  Maybe half a year ago I almost bought a used Mac Mini for a possible Macintosh XP testing which I assumed would be much easier to do.  I have quite a few Macs mainly OS 8-9 era.  I think one of the newer ones is a G3 or G4 hand me down that I think has 10.1 or something on it.  Never tried it.  I'm not sure if it could run Snow Leopard.

Your experience with Hackintosh will be useful to determine if XP can coexist with Mac OS X on the Coffee Lake system.   Some questions that need answering that may help determine this.

If you placed that Mojave OS Coffee Lake setup drive you have working now into your older Hackintosh H55 Gigabyte Motherboard and moved the GTX 780 Graphics card over to it does it work without any issues?

Does Mac OS Mojave allow installing onto a FAT32 partition?  If not what's the last MAC OS X version to allow installation to a FAT32 partition?

Which earliest MAC OS version started supporting full read/write on NTFS partitions?

Is it possible to boot to different MAC OS X versions each on their own partition?

Does Apple include such a Multi OS bootloader when upgrading to a newer version so you can run your older version in case the new installation fails?

For example Windows allows Windows 2000, XP, and 2003 to coexist in the bootloader and can be chosen instead of stuck on the newest OS.

Does any MAC OS X version you know of allow installing from scratch with ACPI support completely disabled regardless if the BIOS is ACPI compliant?

As for the oldest MAC OS X version that can be installed on your Z390 i9-9900K system can you take some time to test verify if you can get Snow Leopard 10.6 installed on your i9-9900K setup using your current configuration? I have a genuine copy here in case it works you might be able to guide me enough to get it working.   Then I might be able to do some sort of hybrid XP / Snow Leopard setup testing that could be a framework used for newer MAC OS testing for Mojave.  I have quite a few network cards and USB cards that say they will work with 10.6 so they hopefully are forward compatible with Mojave.  I also prefer the older MAC OS versions because they are usually smaller and more compact like XP.

I've collected a lot of hardware, sound cards, video cards, USB cards and I might be able to test both XP and MAC OS X to find the hardware that works natively works in both operating systems to simplify future Hackintosh XP hybrid projects.

Am I correct you are trying to create an XP / Mac OS X setup and not just a stand alone XP system?

What are you planning to use XP for?

Since you confirmed the GTX 780 seems to work natively in Mojave do you have a GT 710 or GTX 750 graphics card to test if these are also compatible?   The GT 710 has VGA, DVI, and HDMI full size connectors so is very handy for multi monitor testing without video adapters.  I use the VGA port for video output.  You can use USB for Audio since it may have native drivers for MAC OS making it much easier to install.

Also what is the last 32-Bit MAC OS X version that can be made to work on a Hackintosh?

The best USB 3.0 PCIe card is still up for debate.  I found there is a bug on NEC cards which after the driver is installed  it will function but once rebooted it will not and only a driver reinstallation with fix it. So this seems to be the only issue with NEC cards on newer chipsets.   VIA seems to work better in all my testing and is cheaper to purchase thanks to eBay.

I got Windows 98SE to work on my Z370 but I used a previous install from a P4 and just moved the SSD over and it was much easier to get working.  I haven't tried a direct installation on the Z370 from scratch which may fail because too many changes that not even RLoew patches can solve.  My guess is the patches might work only post install.

Universal USB 4.0 drivers could be a possibility in the future.  It's unclear if there is sufficient interest and financial backing that I could reach out to a company to help develop them.  But a better future solution is using USB 4.0 PCIe cards with proper financial backing to get the OS drivers done that way you could insert them into any motherboard to be used instantly.  Even 98SE could get some love if driver support is included since USB 3.0 legacy driver support was entirely skipped all the way to XP.  Without any kind of interest and financial backing most likely the USB 4.0 cards are going to only support Windows 7 as the oldest or just Windows 8.X/10 only.   You have to remember Windows 7 support pretty much is ending in 2020 for most people.  So the likelihood of USB 4.0 Windows 7 drivers for Intel or AMD ports is pretty low.  Intel USB 3.0 was already out in 2012 well within XP's extended support time frame before 2014.  Windows 7 is nearing its end of it so Intel will not bother that I'm 100% certain.
#2809XPLives⇗ @XPWELL64

Zitat von ⇗ XPWELL64 im Beitrag ¶ #2798
@diderius6
I bricked my mobo because I integrated your DSDT wrongly.

Oh you were XPLAKE8175?  Did you delete the account because the notebook got bricked after flashing?

Is there some way to flash the notebook BIOS back to life using manufacturer BIOS?

Maybe someone here knows how to do this resurrection.  I hate soldered BIOS chips so I don't mess with laptop flashing unless official release and required for some new feature or CPU support.

As for Desktop, you can choose Ivy Bridge for final XP version.  Some Sandy Bridge have Asmedia USB 3.0 ports so could be better choice.  If for XP only and not Vista OS, then you can try Haswell/Broadwell works even better.  Maybe even X99 is the best chipset without modding anything in BIOS.

SkyLake+ prepare for headaches.

But for notebooks the best is Ivy Bridge and nothing newer or no XP Intel graphics driver for iGPU.
#2810Doc.Brown
Zitat von ⇗ diderius6 im Beitrag ¶ #2795
@Doc.Brown

To flash Bios is always a risk!

I make also a Bios based on Version 57 for the ROG MAXIMUS XI GENE board.
Flash it via Biosflashback on the gene XI board.
The risk of broken Bios in compi is because of Biosflashback <1%.
The chance, that it works for XP is about 70%, because this solved only BSOD A5 (0x10006)
Dietmar

⇗ https://ufile.io/75zrsuuo


Thank you ⇗ @diderius6 :)

I'll try this friday and also another Xp iso build because by reading last messages here I think I make big error with ACPI and Storport integration,I simply renamed them with .SY_ not used makecab :( Is it a big mistake ?
Also I don't know what to do / how to use the DSDT that you share with M11g modded bios ...
#2811MikedebianThis happens in Vbox, even fully emulated without extensions

#2812diderius6⇗ @Doc.Brown

Just put this Bios on Fat32 formatted USB stick,
connect this stick to Biosflashbackport
and flash Bios.
Nothing bad will happen,
Dietmar
#2813Doc.Brown⇗ @diderius6

Don't worry I will,I do extreme things with hardware for overclocking with LN2,dead hardware doesn't fear me since a long time now :D

Just tell me if it's necessary to use makecab cmd with files before integrate them in XP or rename them by changing extension work well to please ?

Thanks.
#2814diderius6⇗ @Doc.Brown
Better think before than after^^.
About files: I think, you can even put them into i386 with full name,
but I never tested this,
Dietmar
#2815Doc.BrownSo true xD

Anyway I will try to use this makecab function to be sure to do it right and hope it will work now :finger crossed:

Thanks for your help :)
#2816Mikedebian⇗ @infuscomus I am sorry for to have bothered you. I needed to completely remove VBOX and all leftover files before reinstalling it, and now no blue screen.
#2817Andalu⇗ @daniel_k
the registry key you have identified (ExtPropDescSemaphore) maybe can be the cause for the USB3 function not working on my asrock B75 Pro3-M. The same key related to the same external hard disk appears also in my other system where the USB3 does not work while it is not present where the usb3 works fine (asrock B250M Pro4). I don't think it can be just a coincidence but how to verify it? It's very difficult to prevent this registry key from being created every time the external hard drive is connected to computer.
#2818tarsonis
Zitat von ⇗ diderius6 im Beitrag ¶ #2767
@tarsonis
Modded acpi.sy_ has to be put in i386 folder as before.
No iaStor.sys is needed.
But you have to integrate the STORAHCI driver as txtmode driver via nlite or F6 method
and add by hand storport.sy_ also in i386 folder
Dietmar


Puh, I seem to make something wrong creating the nLite iso because I still get the 7B error. With and without selecting the ACPI Multiprocessor typ while setup is loading. Seems to not make a difference here.

Maybe there is mistake. Here are the steps I made.

nlite folder for XP files (untouched XP 32bit SP3)
options -> select driver and bootable iso
select single driver -> storahci.inf
select single driver -> amdhub30.inf
let nlite finalize the setup files
copy(overwrite) ACPI.SY_ I made with cabpck14 into i386 of the nlite working folder
copy(overwrite) storport.sy_ I made with cabpck14 into i386 of the nlite working folder
burn the CD in default settings

I took the storport.sys from the link package, compressed it with cabpack.exe default settings and renamed it afterwards. Is it correct or do the cabpack settings need to be changed?

tarsonis has attached images to this post  ⇗ cabpack.JPG
#2819schreiberstein⇗ @Mov AX, 0xDEAD

My situation :
I do not have a working XP system to use your ACPI patcher ntldr replacement with.
I have a working DOS system that I would like to use to execute the patch program manually (a.exe),
then attempt to start the installation from the same drive by having the Windows XP i386 folder stored there and then executing the installer via winnt32.exe. I just want to see if the ACPI-related bluescreen goes away, not necessarily install from there.
However, after inspecting your sourcecode, I was unable tell for sure where to place the DSDT related files.
Where does a.exe look for them?
Or is there some other magic involved that stores this information in the RAM temporarily and a.exe reads them from there?
It would be convenient if I could just put them into the same directory as a.exe and execute it.

I am using TerraByte Unlimited's BootIt Bare Metal bootloader to switch between multiple primary partitions.
I could conveniently make it execute the a.exe DOS program and then proceed to load my real Windows OS, without having to change its boot environment.
By the way, it's a pretty terrific idea that you've come up with and how you bootstrap your application using ramdisks, 7zip, etc.
Very impressive.

Would be thankful for an advice.

Cheers,
schreiberstein

EDIT: I had another look at that massive C file. (Wow, where did you learn that?!) It seems that what I would like to achieve should already be possible, as long as the "acpi_pat.cfg" file is in the same directory as the executable file. I will try to compile an adapted version of this binary where the GRUB stuff is commented out and it exits back to the DOS prompt, without having to press shift.
#2820diderius6⇗ @tarsonis
Most easy is to use from commandline

makecab acpi.sys

this gives you acpi.sy_
This you put to i386 folder for nlite to make CD XP SP3.

The same for storport.sys.
Then you integrate Txtmode via nlite driver STORAHCI from ⇗ @skullteria .

No need to integrate USB files if you have a PS/2 connector
Dietmar

 

Page 189

#2821Mikedebian⇗ @diderius6 ⇗ @infuscomus

Is it important that the AMD GPIO driver works in device manager and is not yellow checkmarked?
#2822infuscomus
Zitat von ⇗ Mikedebian im Beitrag ¶ #2816
@infuscomus I am sorry for to have bothered you. I needed to completely remove VBOX and all leftover files before reinstalling it, and now no blue screen.


no worries, glad to hear you got rid of the blue screen.

edit: I'm not sure what the GPIO is used for, so I can't say for sure.
#2823MikedebianAnyway I just want to thank you guys for making this possible! It really is unreal! I can only hope that one day win9x will be possible too!
#2824infuscomus⇗ @Mikedebian

It is already possible to get win9x working on newer systems - i have confirmed it works for AMD Ryzen.

RAM issues can be limited to 1GB or patched to 4GB.

AHCI can be disabled (if supported by BIOS), patched, or ignored (if you are willing to put up with slower MS-DOS compatibility mode)

USB 2.0 drivers for win9x exist.

ACPI is not as important for win9x as it does not support more than 1 CPU anyway.
#2825MikedebianYes I've had it running as well, although no support for my PCI devices even if supported under win98. It is like the device manager is unable to locate, see and use any hardware. That's the issue I have with win98, it is with chipset.
#2826infuscomus⇗ @Mikedebian

I had this issue, I had to disable ACPI during windows 98 setup to get hardware detecting properly.

setup /p i disables ACPI if i recall correctly

I think i used
setup /im /is /p i
#2827MikedebianWill this carry on over on install? Because It was same issue after install
#2828infuscomus⇗ @Mikedebian

yeah it should carry over, it did for me.
#2829MikedebianCool. I shall have to try. I wish the windows XP Vesa driver was carried over too. On windows XP I get 1440p with Vesa driver , but windows 9x with vbe9x doesn't work for me on my Vega 56.
#2830daniel_k
Zitat von ⇗ diderius6 im Beitrag ¶ #2745
@daniel_k
Look on right side E:\SanDisk (is ultrafast USB stick, about 400 MByte/s)
and also in Device Manager, last entry "USB-Massenspeichergerät"
Dietmar

Hi Dietmar,

the issue doesn't affect USB 3.0 devices.

My USB 3.0 portable hard disk works just fine, but keyboard/mouse and USB 2.0 stick don't.

When you have some time, please try one of those devices with the ASMedia ports.
#2831diderius6⇗ @daniel_k

Yeppp, you are right. All USB3 devices work, all USB2 devices work not. Mouse works not, brrr..
What a debakel again with drivers from Asmedia!
The 59 version xhci driver does not work for XP.
The 59 Hub driver, mixed with 55 vers xhci works
Dietmar
#2832IntiMD⇗ @diderius6
Just wondering about the storport.sys, wouldn't the problem with XP setup not copying it disappear had we added relevant lines in TXTSETUP.SIF and LAYOUT.INF? (not sure if it's obvious for you or if you had done that already)? For example we can do a quick edit and copypaste from the scsiport.sys line (example taken from homebrew XP Integral Edition ISO) :
(TXTSETUP.SIF)

 
scsiport.sys = 100,,,,,,4_,4,0,0,,1,4


(LAYOUT.INF)

 
scsiport.sys = 100,,96384,,,,4_,4,0,0,,1,4



and when we make a quick addition based on those lines above for x86 storport.sys from KB943545 hotfix (5.2.3790.4173)
(TXTSETUP.SIF)

 
storport.sys = 100,,,,,,4_,4,0,0,,1,4


(LAYOUT.INF)

 
storport.sys = 100,,108032,,,,4_,4,0,0,,1,4



Of course if this won't work you can tinker with the number codes according to the reference here: ⇗ https://msfn.org/board/topic/127677-txts...&comment=820892

#2833XPWELL64⇗ @diderius6
I integrated your dsdt into my bios by UEFItool and now it cannot receive aml information. It BSODs. (Windows 10 BSoDs too)
#2834diderius6⇗ @IntiMD
See post
¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (190)
Dietmar
#2835diderius6⇗ @XPWELL64

I do not understand your answer.
From post from 6 October 2019
"⇗ @diderius6
I benchmarked HL1 with anapa driver on my asus x555lb in windows xp and results are more terrible than windows 95 preinstalled pc.
I will mod this igxpmp32.sys with ida pro can you tell me how to do it? My DEVID is: DEV_1616"

your Asus notebook seems to work.

And if only some strange thing happen,
flash new with website Bios
Dietmar

 

Page 190

#2836daniel_k⇗ @IntiMD

Just add this to TXTSETUP.SIF, under storprop.dll

 
storport.sys = 1,,,,,,3_,4,0,0,,1,4



This must also be present in DOSNET.INF, in section [FloppyFiles.x] (where x can be 1, 2 or 3) and in section [Files].

 
d1,storport.sys



No more files need to be edited.

Got this from Server 2003 and it definitively works.

#2837Mov AX, 0xDEADAnother Update:
- Kernel debug with WinDBG/KD over LAN/USB3.0 connection solved, (⇗ https://github.com/MovAX0xDEAD/KDNET)
¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (12)

Intel onboard usb3.0 H110 - OK
VIA External pci-e usb3.0 card - No
#2838Mov AX, 0xDEAD⇗ @schreiberstein

Zitat

Where does a.exe look for them?
Or is there some other magic involved that stores this information in the RAM temporarily and a.exe reads them from there?
It would be convenient if I could just put them into the same directory as a.exe and execute it.
EDIT: I had another look at that massive C file. (Wow, where did you learn that?!) It seems that what I would like to achieve should already be possible, as long as the "acpi_pat.cfg" file is in the same directory as the executable file.


Hi schreiberstein,
- a.exe reads all files from directory where a.exe started, you can place it in any place at directory tree
- a.exe uses preallocated "virtual floppy" from grub4dos to claim memory for storing acpi tables, to avoid grub4dos tricks need write own int15 e820 handler to exclude some ram from OS

#2839diderius6⇗ @Mov AX, 0xDEAD

This are nice news:))!!
I just desoldered my Bios chip from the Lenovo Flex 10 notebook,
flash it with new DSDT via Revelprog IS,
and solder it in again.
Flex 10 survives this operation^^.
What I changed in DSDT is via Iasl -r1 ,
now no 64 bit math is supported. Before I went like crazy with unfullfilled
dependencies (externals) in Iasl and its build *.dsl =>*.aml. Only when I use the original iasl.exe (iasl-win-20130117)
from which this DSDT was originally build, I succeed.
Now I test there debug over USB3
thanks a lot
Dietmar
#2840schreiberstein⇗ @Mov AX, 0xDEAD

Hello Mov AX, OxDEAD.
I have tried to adapt your application to my use case today. (I am not a system engineer or embedded developer though)
The grub menu creation as well as attempting to read root.txt part have been removed by me from the main.c, as well as the part that would try to execute GRUB again or waits for SHIFT-KEY.
I compiled the C file using the latest DJGPP environment on DOSBOX. (Was unable to run a 4.x version of GCC for some reason)
The patched DSDT.aml file, as provided by Dietmar, has been compiled manually by me using the respective isl compiler version. I named it "reload.bin".
The MAIN_LOG.txt says "table DSDT replaced, new size= 264991", but then the program complains about the missing GRUB4DOS int13 handler.

Can I load GRUB's interrupt handler, and then continue in a DOS prompt?
It might be a stupid question, but could you briefly explain what it is needed for?

I attached my directory that included my adapted C file, config, LOG and DSDT, in case you are interested.
Thank you.

Cheers,
schreiberstein



schreiberstein has attached files to this post
#2841Mov AX, 0xDEAD⇗ @diderius6

Zitat von ⇗ diderius6 im Beitrag ¶ #2737
@Mov AX, 0xDEAD
On the Asrock fatal1ty z370 gaming k6,
with the same files for USB debug,
compi also reboots at once

forget about usb3 inside kdnet, this was my mistake )
check kdusb.dll from github, i hope you will find needed original kdusb.dll
#2842schreiberstein⇗ @Mov AX, 0xDEAD
Oops, your reply was faster than my new post. Sorry.
So, if I understand correctly, this construction exists for a very specific reason.
The operation system needs to be specifically told that it must use 2 MB of memory less, right?
And that means that there is nothing that can be modified in RAM that would allow another bootloader, oblivious of what has happened, to detect that change, correct?

If that is not possible, then I will think of something else or install XP using a different system, install your patcher and hook it up to my main Z390 system.

Cheers,
schreiberstein


EDIT: My main concern was about booting the installation media on my system to make sure device detection and configuration works out-of-the-box.
#2843Doc.Brown⇗ @diderius6

Some update after the test with 0057 modded bios,flash the board and she's still alive :D
Your bios is better than original one cause now there's no BSOD before HDD scan so no need to press F5 or F7 to go forward ! It allow to create partition (one little in FAT and the other in NTFS for XP ), file copy is ok and first reboot also.
After that problem comes in the middle of peripherals installation as you can see on this capture:



Result on this BSOD 0A :



After a reset to restart the board a new BSOD A5 comes :



Another ACPI lock at next level in bios ?

I tested with few XP iso,load fail safe default for IRQL not less or equal BSOD but it's always same errors

Thanks :)
#2844diderius6⇗ @Doc.Brown
Waaoh, that means I found exact the place for BSOD 0x10006 in DSDT and repair it there.
So much good news today!!! Now XP will run on ALL x390 boards, Apex XI and so on with this mod.
Last days I compare soso many DSDTs. And they are all the same. Manufacturers deleted important information in DSDT
and because of that XP crashes. XP works very strict in translating DSDT.
The problem with second acpi Bsod is,
that crazy XP just reinstalls its own original acpi.sys in windows\system32^^.
Just copy modded acpi.sys there again.
The other Bsod happens,
because XP does not like a device on the gene XI board.
Sometimes you can overcome this hitting F8 (Safe Mode).
Try to disable as much devices as you can in Bios. Later you can activate them again.
If this does not help,
use an XP install from another compi,
Dietmar

PS: With lan Debug from ⇗ @Mov AX, 0xDEAD we now can find the device, which crashes.
#2845Mov AX, 0xDEAD
Zitat von ⇗ schreiberstein im Beitrag ¶ #2840
@Mov AX, 0xDEAD
The MAIN_LOG.txt says "table DSDT replaced, new size= 264991", but then the program complains about the missing GRUB4DOS int13 handler.
Can I load GRUB's interrupt handler, and then continue in a DOS prompt?
It might be a stupid question, but could you briefly explain what it is needed for?


int13 is place where patcher can find virtual floppy, it searched by magic pattern $INT13SFGRUB4DOS (just like firadisk did)
grub4dos before runing any os:
- allocate memory for empty floppy
- set own int13 handler
- set own int15 e820 handler
- unload self from memory, but floppys and handlers stayed resident

patcher:
- look for  $INT13SFGRUB4DOS near to int13
- find where floppy allocated and uses this memory as new store for acpi tables (original store was prepared by bios)

after patcher done own work, int13 no need anymore, grub4dos's int15 still need to exclude memory from OS.
i dont know much about grub4dos.exe, maybe it has some like CLI mode to process menu.cfg & return to dos
#2846Mov AX, 0xDEAD
Zitat von ⇗ schreiberstein im Beitrag ¶ #2842
@Mov AX, 0xDEAD
If that is not possible, then I will think of something else or install XP using a different system, install your patcher and hook it up to my main Z390 system.

EDIT: My main concern was about booting the installation media on my system to make sure device detection and configuration works out-of-the-box.


Also possible integrate patcher to boot media (i've not tested), ntldr_patcher rename to SETUPLDR.BIN, original SETUPLDR.BIN to XPLDR
so chain will be almost same, grub4dos is loaded first, then dos, then 2nd grub4dos.exe to run original SETUPLDR.BIN as binary
#2847Doc.Brown
Zitat von ⇗ diderius6 im Beitrag ¶ #2844
@Doc.Brown
Waaoh, that means I found exact the place for BSOD 0x10006 in DSDT and repair it there.
So much good news today!!! Now XP will run on ALL x390 boards, Apex XI and so on with this mod.
Last days I compare soso many DSDTs. And they are all the same. Manufacturers deleted important information in DSDT
and because of that XP crashes. XP works very strict in translating DSDT.
The problem with second acpi Bsod is,
that crazy XP just reinstalls its own original acpi.sys in windows\system32^^.
Just copy modded acpi.sys there again.
The other Bsod happens,
because XP does not like a device on the gene XI board.
Sometimes you can overcome this hitting F8 (Safe Mode).
Try to disable as much devices as you can in Bios. Later you can activate them again.
If this does not help,
use an XP install from another compi,
Dietmar

PS: With lan Debug from @Mov AX, 0xDEAD we now can find the device, which crashes.


Yep it's a really good news being able to go forward in the installation process,you make it happen :)
I already tried F8 for Safe Mode and it also result in BSOD unfortunately

I try to copy ACPI.sys and a fresh install on X299 Rampage Apex(I already have a ghost of previous test) tomorrow ;)
#2848diderius6⇗ @Mov AX, 0xDEAD
I find small error in description:

"On Target (must be Host) PC need Windows 8/10 to be installed with Microsoft drivers for USB3.0 controllers (Vendor's usb3.0 drivers not supported by WinDBG/KD)"

Have a nice day
Dietmar
#2849daniel_k⇗ @schreiberstein, this is my patched DSDT for your board.

This version should work with original XP files, not a single patch needed.

The following files are included:

Z390DESI_F7_original.raw -> original from BIOS
Z390DESI_F7_original.aml -> original compiled
Z390DESI_F7_original.dsl -> original decompiled

Z390DESI_F7_mod.aml -> modded compiled
Z390DESI_F7_mod.dsl -> modded decompiled

Just compare the originals, 99.99% the same as Gigabyte's.

RAW = Gigabyte
AML = Compiled

Just learned that there are code changes when using latest iasl.exe, so use it just to decompile the binary DSDT (aml) file.

Also, we must use -dl parameter when decompiling (emit legacy ASL code), otherwise final code won't match original's.

To compilte the code, use the same version used in the original BIOS (20160527), check the ReadMe.txt included for command line.



daniel_k has attached files to this post
#2850daniel_k⇗ @schreiberstein, don't worry about ACPI patches.

I've managed to patch ACPI.SYS for Z390!!!

It worked right away on the first try!

Just give me some minutes and I'll upload an updated package for you to try.

 

Page 191

#2851diderius6⇗ @daniel_k ⇗ @schreiberstein
With this nice mod in DSDT from Daniel I think you even dont need modded acpi.
So ⇗ @schreiberstein use DSDT from Daniel.
But we need to be careful with mod:
On newer Gene XI Bios, they treated the _dis method in DSDT other,
so it will come in conflict with our so we have to delete all old use of _dis there and rebuild with our
Dietmar
#2852diderius6⇗ @daniel_k
"I've managed to patch ACPI.SYS for Z390!!!"
I am so curious, how you did this
Dietmar
#2853daniel_k⇗ @diderius6, let me try it properly first.

Just tried the patched ACPI.SYS with an already installed XP.

Will install from scratch before sharing it.
#2854schreiberstein⇗ @daniel_k

Ready to create a new iso.
Wouldn't bother to test it.
Sounds promising. :-)
#2855daniel_k⇗ @schreiberstein, ⇗ @diderius6

Installation completed successfully!

No errors at all, no ACPI errors in Event Viewer, IRQs assigned properly (*)

(*) Error is related to missing _DIS method in PNP0C0F (PCI Interrupt Link Device. A device that allocates an interrupt connected to a PCI interrupt pin.)

Sending you a PM with package link.
#2856schreiberstein⇗ @daniel_k

Thank you!

I am assembling an ISO file in a few minutes. Will get back to you soon.
Thank you for your effort.

schreiberstein
#2857daniel_k⇗ @diderius6

Firsly, I simulate the issue of Z390 boards by renaming the _DIS in ACPI.SYS to _DES, which doesn't exist in the DSDT table of my BIOS.

Jumped the KeBugCheckEx 0x10006 and got the same error as schreiberstein. Same behavior, test is valid!

Analyzing the code, I've realized that all it does is an additional check if device is PNP0C0F, otherwise, it ignores and proceed.

Just patched it so it treats PNP0C0F as an ordinary device and worked.
#2858daniel_kPatched ACPI.SYS files now supporting Z390 boards.
#2859Andalu
Zitat von ⇗ Andalu im Beitrag ¶ #2817
@daniel_k
the registry key you have identified (ExtPropDescSemaphore) maybe can be the cause for the USB3 function not working on my asrock B75 Pro3-M. The same key related to the same external hard disk appears also in my other system where the USB3 does not work while it is not present where the usb3 works fine (asrock B250M Pro4). I don't think it can be just a coincidence but how to verify it? It's very difficult to prevent this registry key from being created every time the external hard drive is connected to computer.


Bad news from here. Even blocking the creation of the regitry key "ExtPropDescSemaphore=dword:00000001" the usb3 fails anyway. The enigma continues....

I renew my request already made at ¶ #2637 about a way to get XP32 supports more than 4GB memory with amd modded drivers. I'll use the ram over 4GB for ramdisk purpose. I already tried the 'chinese patch' and other methods found on the net with no success.
Is there a way to solve?
#2860diderius6⇗ @daniel_k

Waaoh, what great success:))!!

Wish you nice day and good mood
Dietmar
#2861schreiberstein⇗ @daniel_k

You bloody madman! You did it!
I created my own ISO from Xp Iso Builder, only enabled the A352 AHCI from Fernando and replaced the acpi.sys file.
The installer boots up. USB isnt working because I did not integrate it. Will boot again with PS2 attached and try to install. But I could hear the CD drive seeking after it said Starting Windows, so everything is fine and it found the AHCI stuff.
Wooooooowwww wooohoooo!

Will keep you posted. So amazing.
Thank you so much!

Cheers,
schreiberstein



schreiberstein has attached images to this post  ⇗ F9327103-F8F0-47F8-AE97-B
#2862daniel_k⇗ @Andalu, sorry but I'm out of ideas.

Maybe someone else can help you with those issues.
#2863schreiberstein⇗ @daniel_k

It is now in the second stage of the installation process.
PS/2 works.

And the boot process was super fast compared to non-acpi mode. Just as expected from a Core i9... just a few short seconds. :D

schreiberstein



schreiberstein has attached images to this post  ⇗ AB348FF1-D962-49B9-9195-0
#2864daniel_k⇗ @schreiberstein, glad to know it worked!

Sure you can do whatever you want, but I've sent you a PM with a ready to use pack including USB drivers.

Would be nice if you could test it, as I'm working on a all-in-one ISO which I'll upload somewhere when finished, so everyone can enjoy a compatible and fully updated install of XP SP3.
#2865schreiberstein⇗ @daniel_k

I know.
I will try that as well. But your ISOs do not seem to work with the A352 AHCI controller for some reason. At least the first two attempts I tried. And I did not want to mix the two just now.
Maybe some drivers conflict with eachother?
I can choose the A352 in XP Iso Builder and did not have an issue.


I sure can test more ISOs, when it helps! :-)

Cheers,
schreiberstein

 

Page 192

#2866daniel_k⇗ @schreiberstein, you must use my package as it is, with a clean ISO source.

Otherwise you'll surely have issues.
#2867schreiberstein⇗ @daniel_k

Oh, I am getting a bluescreen after the first start now. A5

Was it not enough to put the acpi.sy_ into the i386 folder?
I suppose the original one got swapped in again.

Right?

Cheers,
schreiberstein



schreiberstein has attached images to this post  ⇗ C4829A5B-322E-4565-ACA0-5
#2868daniel_k⇗ @diderius6, I've updated the files in the following post:
¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (149)
#2869daniel_k⇗ @schreiberstein, that's why I've sent you the package.

ACPI.SYS must be replaced in SP3.CAB, otherwise Setup will restore the original version during last installation phase.
#2870schreiberstein⇗ @daniel_k
Oh, I am sorry.
I will create a new ISO from your package.
How can I be sure that the 8086:A352 will be loaded properly?

By the way, I suspect reboot might not work properly. During the installation when it attempted to restart, it would just hang the entire machine. Not even the reset button would work. Very strange.
Maybe this is just a side effect.
I will create a new ISO shortly.

Cheers,
schreiberstein
#2871Andalu⇗ @daniel_k
no problem, I just have to say thank you ;)
then there will be someone who will use the ram over 4GB for a ramdisk.
#2872daniel_k
Zitat von ⇗ schreiberstein im Beitrag ¶ #2870
How can I be sure that the 8086:A352 will be loaded properly?

By the way, I suspect reboot might not work properly. During the installation when it attempted to restart, it would just hang the entire machine. Not even the reset button would work. Very strange.
Maybe this is just a side effect

You'll see your HDD or SSD available as an installation drive.

Yes, it hangs sometimes, I believe that it is related to VGA driver, but only happens during Setup.

Just wait a few seconds and press the reset button, don't need to wait that long.

Here, with the driver for my GTX 980 installed, it has never happened.
#2873schreiberstein⇗ @daniel_k

Alright!
I had a look into the iaAHCI.inf file of your package and noticed that this is a different driver.
It does not have the list of device IDs (such as A352) in there and is newer (2017 vs 2012).
Maybe the new iaAHCI driver works if the ID is added somewhere.
Since this driver previously hasnt worked, I replaced it with the 2012 version.
I hope I have done it correctly. Simply overwritten the files.
I am burning the new ISO now from your package.
The AHCI driver I am using is Universal Intel RST Drivers+Software Set v11.2.0.1006mod+signed by Fernando .
It explicitly has the A352 as added by Fernando in the inf file.

Hope this will work.

Cheers and thank you,
schreiberstein
#2874daniel_k⇗ @schreiberstein, it doesn't have IDs, because it uses a PCI class code:

CC_0106 = AHCI
CC_0104 = RAID

Which means all AHCI or RAID controllers from Intel (VEN_8086).

Maybe my driver didn't work before because you were trying to install it in non-ACPI mode or legacy mode.
#2875schreiberstein⇗ @daniel_k
Okay. I understand. :-)
My attempt ended in a blank screen after it loaded the kernel.
I am now burning an ISO that was created exclusively from your package.

schreiberstein
#2876schreiberstein⇗ @daniel_k

Same result with the configuration from your package.
The screen goes black. The CDROM makes another noise.
NUM-led cannot be toggled.
No bluescreen, nothing.

Do you have any idea why this is happening?

Just out of curiosity, if I copied your SP3.CAB file into my Winfuture Iso Builder i386 folder, would the acpi.sys get replaced properly?
Or if I simply extracted the CAB, added the file and compressed it again?
I just want to see how much of the system will be usable and if all cores are detected, etc.
Maybe some other driver causes this during the installation.
I am happy to assist for troubleshooting and for improving your installation package. Don't worry. ;-)

Cheers,
schreiberstein :-)
#2877daniel_k⇗ @schreiberstein, strange, I have no idea. Maybe the USB drivers are causing issues?

Anyway, yes, just copy my SP3.CAB and the install will surely proceed as that is where Setup gets the original file from.
#2878diderius6⇗ @schreiberstein

Try with a complete XP SP3 install from another compi
Dietmar

PS: For sure it is a device on your motherboard,
that does not like to work with XP. Disable everything in Bios, all what you dont need for install.
It is like training for XP^^.

EDIT: I noticed, that some devices arent any more in DSDT from XP friendly Bios of the nice EVGA dark z390 board.
In XP unfriendly Bios they stay in DSDT.
#2879schreiberstein⇗ @daniel_k

I managed to boot into my completed Windows XP installation after replacing the acpi.sys under system32/drivers manually using some psexec.exe magic on Windows 10.
Still black screen -> then I decided to boot with Enable VGA Mode and voila...
All 16 threads detected, only 904MB RAM, USB does not seem to work. No Standard VGA graphics card detected, etc.

Maybe the integrated headless Intel HD graphics confuses it. But I need it enabled for Mac OS X. It is used for rendering JPEGs and acceleration.

But I am so glad this acpi.sys patch did make such a dramatic difference.

Cheers,
schreiberstein

EDIT:
I was able to get the Intel I211 ethernet NIC (8086:1539) running with a driver I found here somewhere.
Connection established, ping works. Amazing. A bit of relief.



schreiberstein has attached images to this post  ⇗ 3A830214-F4E5-4E18-A8E0-1  ⇗ 4AB76E2B-887C-460C-BEF7-D
#2880diderius6⇗ @Mov AX, 0xDEAD

I just installed Win8.1 32 bit on the Lenovo Flex 10 notebook. My modded Bios there likes now 32 bit a lot.
What crazy long time its need. I make a full XP SP3 install with all updates
and a lot of programs in 1/3 of this time^^.
On the Asrock fatal1ty z370 gaming k6 under Win10 64 bit I make a quick check for USB debug possibility.
There, nearly all ports can do debug via USB3.
On the Lenovo Flex 10 , at this short moment under win8.1, is one(!) port, that supports USB3 debug as viewusb from windbg 8.1 tells there.
But until now I do not succeed with windbg under XP SP3 on the Flex 10 as target, where the modified kdusb.dll stays in windows\system32.
Has the System on the Host (where the programm Windbg starts) also to be under win8.1 32 bit
Dietmar

EDIT: In next try, I look, if the Flex 10 can do USB3 debug at all. For this I try to enable normal USB3 debug with Win8.1 32 bit
on the Flex 10 as target.

EDIT2: In combination Win 8.0 32 bit (Target, compi Flex 10 that should be debugged) via
   bcdedit /debug on
   bcdedit /dbgsettings usb targetname:otto

and Host Win 10 64 bit (Compi, where Windbg runs) I get using usbview.exe the message "error: Enumeration failed" on both compis.
So I think, even usbview shows that USB Debug is possible on the Flex 10, it is just not true.
Now I update win8 -> win8.1 each 32 bit on the target Flex 10
and I put original English win8.1 32 bit on Host compi.

EDIT3: On the Flex 10 Notebook I have now Win8.1 32 bit german version (as target)
and on Asrock Win8.1 32 bit English original version (from which the new debug files are).
But Debug via USB3 seems not to work for the Flex 10 as target.
Here are the two files from usbview from Flex 10
and from usbview from Asrock board.

EDIT4: When I change Host <-> Target, USB debug works, see spoiler 3 here.

[Port7] Enumerating


Is Port User Connectable: yes
Is Port Debug Capable: yes
Companion Port Number: 1
Companion Hub Symbolic Link Name: USB#ROOT_HUB30#4&1cecc9c3&0&0#{f18a0e88-c30c-11d0-8815-00a0c906bed8}
Protocols Supported:
USB 1.1: no
USB 2.0: no
USB 3.0: yes

---===>Device Information<===---

ConnectionStatus: Enumerating
Current Config Value: 0x00 -> Device Bus Speed: Low
Device Address: 0x00
Open Pipes: 0
*!*ERROR: No open pipes!

===>Device Descriptor<===
*!*ERROR: bLength of 0 incorrect, should be 18
bLength: 0x00
bDescriptorType: 0x00
bcdUSB: 0x0000
bDeviceClass: 0x00 -> This is an Interface Class Defined Device
bDeviceSubClass: 0x00
bDeviceProtocol: 0x00
bMaxPacketSize0: 0x00 = (0) Bytes
*!*ERROR: Low Speed Devices require bMaxPacketSize0 = 8
idVendor: 0x0000idProduct: 0x0000
bcdDevice: 0x0000
iManufacturer: 0x00
iProduct: 0x00
iSerialNumber: 0x00
bNumConfigurations: 0x00
*!*CAUTION: Most host controllers will only work with one configuration per speed


[Port19] Enumerating


Is Port User Connectable: yes
Is Port Debug Capable: yes
Companion Port Number: 8
Companion Hub Symbolic Link Name: USB#ROOT_HUB30#4&556f44c&0&0#{f18a0e88-c30c-11d0-8815-00a0c906bed8}
Protocols Supported:
USB 1.1: no
USB 2.0: no
USB 3.0: yes

---===>Device Information<===---

ConnectionStatus: Enumerating
Current Config Value: 0x00 -> Device Bus Speed: Low
Device Address: 0x00
Open Pipes: 0
*!*ERROR: No open pipes!

===>Device Descriptor<===
*!*ERROR: bLength of 0 incorrect, should be 18
bLength: 0x00
bDescriptorType: 0x00
bcdUSB: 0x0000
bDeviceClass: 0x00 -> This is an Interface Class Defined Device
bDeviceSubClass: 0x00
bDeviceProtocol: 0x00
bMaxPacketSize0: 0x00 = (0) Bytes
*!*ERROR: Low Speed Devices require bMaxPacketSize0 = 8
idVendor: 0x0000idProduct: 0x0000
bcdDevice: 0x0000
iManufacturer: 0x00
iProduct: 0x00
iSerialNumber: 0x00
bNumConfigurations: 0x00
*!*CAUTION: Most host controllers will only work with one configuration per speed


Microsoft (R) Windows Debugger Version 6.3.9600.17200 X86
Copyright (c) Microsoft Corporation. All rights reserved.

Using USB for debugging
Waiting to reconnect...
USB: Write opened
Connected to Windows 8 9600 x86 compatible target at (Fri Oct 11 18:31:49.092 2019 (UTC + 2:00)), ptr64 FALSE
Kernel Debugger connection established.
Symbol search path is: *** Invalid ***
****************************************************************************
* Symbol loading may be unreliable without a symbol search path. *
* Use .symfix to have the debugger choose a symbol path. *
* After setting your symbol path, use .reload to refresh symbol locations. *
****************************************************************************
Executable search path is:
*********************************************************************
* Symbols can not be loaded because symbol path is not initialized. *
* *
* The Symbol Path can be set by: *
* using the _NT_SYMBOL_PATH environment variable. *
* using the -y <symbol_path> argument when starting the debugger. *
* using .sympath and .sympath+ *
*********************************************************************
*** ERROR: Symbol file could not be found. Defaulted to export symbols for ntkrpamp.exe -
Windows 8 Kernel Version 9600 MP (1 procs) Free x86 compatible
Built by: 9600.17415.x86fre.winblue_r4.141028-1500
Machine Name:
Kernel base = 0x80e76000 PsLoadedModuleList = 0x81075418
System Uptime: 0 days 0:00:00.804
KDTARGET: Refreshing KD connection
nvLDDMkm: Driver Registry Path = '\REGISTRY\MACHINE\SYSTEM\ControlSet001\Services\nvlddmkm'
nvAdapter: Device Registry Path = '\REGISTRY\MACHINE\SYSTEM\ControlSet001\Control\Class\{4d36e968-e325-11ce-bfc1-08002be10318}\0000'
nvAdapter:
nvAdapter: ***** CNvLAdapter* 8cfe9000 -> DriverModel is 0x1300 ******
nvAdapter:
Break instruction exception - code 80000003 (first chance)
*******************************************************************************
* *
* You are seeing this message because you pressed either *
* CTRL+C (if you run console kernel debugger) or, *
* CTRL+BREAK (if you run GUI kernel debugger), *
* on your debugger machine's keyboard. *
* *
* THIS IS NOT A BUG OR A SYSTEM CRASH *
* *
* If you did not intend to break into the debugger, press the "g" key, then *
* press the "Enter" key now. This message might immediately reappear. If it *
* does, press "g" and "Enter" again. *
* *
*******************************************************************************
*** ERROR: Module load completed but symbols could not be loaded for ntdll.dll
*** ERROR: Symbol file could not be found. Defaulted to export symbols for ntkrpamp.exe -
nt!DbgBreakPointWithStatus+0x4:
80f73014 cc int 3
8: kd> lm
start end module name
77450000 775b9000 ntdll (no symbols)
803a4000 803b4000 kdcom (deferred)
80e1d000 80e76000 hal (deferred)
80e76000 8142a000 nt (export symbols) ntkrpamp.exe
81800000 8180a000 Fs_Rec (deferred)
81830000 819d5000 Ntfs (deferred)
819d5000 819eb000 ksecdd (deferred)
819eb000 819f9000 pcw (deferred)
81c23000 81df3000 tcpip (deferred)
81e38000 81e80000 fwpkclnt (deferred)
81e80000 81e93000 wfplwfs (deferred)
81e93000 81f10000 fvevol (deferred)
81f10000 81f52000 volsnap (deferred)
81f52000 81f87000 rdyboost (deferred)
81f87000 81f98000 mup (deferred)
81f98000 81fa4000 intelpep (deferred)
81faf000 81fc6000 disk (deferred)
81fc6000 81ffd000 portcls (deferred)
82000000 8204a000 CLASSPNP (deferred)
8204a000 8205b000 crashdmp (deferred)
82092000 820b5000 cdrom (deferred)
820b5000 820bd000 Null (deferred)
820bd000 820c4000 Beep (deferred)
820c4000 820d0000 BasicRender (deferred)
820d0000 8210a000 netbt (deferred)
8210a000 82182000 afd (deferred)
82182000 821a5000 pacer (deferred)
821a5000 821b3000 netbios (deferred)
821b3000 821ed000 ks (deferred)
85229000 85290000 mcupdate_GenuineIntel (deferred)
85290000 8529c000 werkernel (deferred)
8529c000 852e6000 CLFS (deferred)
852e6000 85301000 tm (deferred)
85301000 85314000 PSHED (deferred)
85314000 8531d000 BOOTVID (deferred)
8531d000 85397000 CI (deferred)
85397000 853c8000 msrpc (deferred)
853c8000 853ff000 pci (deferred)
85425000 85481000 spaceport (deferred)
85481000 85492000 volmgr (deferred)
85492000 854df000 volmgrx (deferred)
854df000 854f5000 mountmgr (deferred)
854f5000 8550e000 storahci (deferred)
8550e000 8555d000 storport (deferred)
8555d000 85573000 EhStorClass (deferred)
85573000 855b9000 fltmgr (deferred)
855b9000 855cb000 fileinfo (deferred)
855cb000 855f0000 Wof (deferred)
85600000 85617000 pdc (deferred)
85623000 856b9000 Wdf01000 (deferred)
856b9000 856c7000 WDFLDR (deferred)
856c7000 856d8000 acpiex (deferred)
856d8000 856e2000 WppRecorder (deferred)
856e2000 8574f000 ACPI (deferred)
8574f000 85758000 WMILIB (deferred)
85758000 857cf000 cng (deferred)
857d9000 857e1000 msisadrv (deferred)
857e1000 857ec000 vdrvroot (deferred)
857ec000 85800000 partmgr (deferred)
85831000 8586b000 WdFilter (deferred)
8586b000 85945000 ndis (deferred)
85945000 8599a000 NETIO (deferred)
8599a000 859c1000 ksecpkg (deferred)
8d600000 8d61a000 tdx (deferred)
8d61e000 8d768000 dxgkrnl (deferred)
8d768000 8d777000 watchdog (deferred)
8d777000 8d7c9000 dxgmms1 (deferred)
8d7c9000 8d7d9000 BasicDisplay (deferred)
8d7d9000 8d7e9000 Npfs (deferred)
8d7e9000 8d7f4000 Msfs (deferred)
8d7f4000 8d800000 TDI (deferred)
8d800000 8d82c000 nvhda32v (deferred)
8d835000 8d88a000 rdbss (deferred)
8d88a000 8d8f9000 csc (deferred)
8d8f9000 8d905000 nsiproxy (deferred)
8d905000 8d910000 npsvctrig (deferred)
8d910000 8d91b000 mssmbios (deferred)
8d91b000 8d939000 dfsc (deferred)
8d948000 8d95c000 ahcache (deferred)
8d95c000 8d969000 CompositeBus (deferred)
8d969000 8d973000 kdnic (deferred)
8d973000 8d982000 umbus (deferred)
8d982000 8d9ef000 e1d6232 (deferred)
8f800000 8f808000 NdisVirtualBus (deferred)
8f808000 8f809480 swenum (deferred)
8f80a000 8f814000 rdpbus (deferred)
8f814000 8f829000 drmk (deferred)
8f82b000 90671000 nvlddmkm (deferred)
90671000 90686000 HDAudBus (deferred)
90686000 906c9000 USBXHCI (deferred)
906c9000 906f4000 ucx01000 (deferred)
906f4000 9071f000 TeeDriverW8 (deferred)
9071f000 9077f000 e1i6332 (deferred)
9077f000 90798000 i8042prt (deferred)
90798000 907a6000 kbdclass (deferred)
907a6000 907b2000 mouclass (deferred)
907b2000 907ca000 serial (deferred)
907ca000 907d4000 serenum (deferred)
907d4000 907dd000 wmiacpi (deferred)
907dd000 907f6000 intelppm (deferred)
907f6000 907fe000 acpipagr (deferred)
90a1a000 90a7b000 UsbHub3 (deferred)
90a7b000 90a85000 USBD (deferred)
90a85000 90ad5000 HdAudio (deferred)
90ad5000 90adb980 HIDPARSE (deferred)
90adc000 90b20000 udfs (deferred)
90b20000 90b2b000 dump_diskdump (deferred)
90b2b000 90b44000 dump_storahci (deferred)
90b44000 90b57000 dump_dumpfve (deferred)
90b57000 90b62000 nvvadarm (deferred)
90b62000 90b6d000 monitor (deferred)
90b6d000 90b8a000 luafv (deferred)
90b8a000 90b9a000 lltdio (deferred)
90b9a000 90bae000 rspndr (deferred)
91e00000 9217b000 win32k (deferred)
921a5000 921ad000 TSDDD (deferred)
98e81000 98eb0000 cdd (deferred)
9de00000 9de19000 Ndu (deferred)
9de19000 9de2b000 mslldp (deferred)
9de34000 9deed000 HTTP (deferred)
9deed000 9df07000 bowser (deferred)
9df07000 9df18000 mpsdrv (deferred)
9df18000 9df6f000 mrxsmb (deferred)
9df6f000 9df9a000 mrxsmb20 (deferred)
9dfb2000 9dfee000 mrxsmb10 (deferred)
9f205000 9f2a6000 peauth (deferred)
9f2a6000 9f2b0000 secdrv (deferred)
9f2b0000 9f2e3000 srvnet (deferred)
9f2e3000 9f2f1000 tcpipreg (deferred)
9f2f1000 9f380000 srv2 (deferred)
9f380000 9f3d6000 srv (deferred)
9f3d6000 9f3fb000 tunnel (deferred)

Unloaded modules:
9df9a000 9dfb2000 WdNisDrv.sys
9df9a000 9dfb2000 parport.sys
8205b000 82066000 dump_storport.sys
82066000 8207f000 dump_storahci.sys
8207f000 82092000 dump_dumpfve.sys
8d939000 8d948000 dam.sys
857cf000 857d9000 WdBoot.sys
81fa4000 81faf000 hwpolicy.sys

 

Page 193

#2881daniel_k⇗ @schreiberstein, I see too many devices.

Maybe more than XP can handle.

Try to disable some (2 network controllers?!), for testing purposes.

That's enough for today.

Good night to everyone!
#2882diderius6⇗ @schreiberstein

I noticed in your Device Manager,
that a lot of entries are just double.
Disable the fake ones and most is done
Dietmar
#2883schreiberstein⇗ @diderius6

Which devices do you mean?
I disabled all Other Devices I do not need (NVMe drives, wifi, bluetooth, etc)
Sometimes, USB works. I even got USB sound.
But after a reboot, USB is yellow again...
Is there something I can disable under System devices to free up ressources?
It is strange.



schreiberstein has attached images to this post  ⇗ 181752D1-0E28-4F18-B413-7
#2884diderius6⇗ @schreiberstein
Some devices are double.
Take a look at its Irqs in Device Manager (Ansicht->Resourcen nach Typ->Interruptanforderung)
Dietmar
#2885schreiberstein⇗ @diderius6

Hmm...
It seems like all these devices are unique.
The bridges each have a different location
Number 10 cannot find enough free resources.
I think I have seen something similar in this thread.

Schreiberstein



schreiberstein has attached images to this post  ⇗ 6CEDFA41-E15F-4AF5-AFB3-E
#2886Gelip⇗ @diderius6

Zitat von ⇗ diderius6 im Beitrag ¶ #2880
My modded Bios there likes now 32 bit a lot.

Is this bios 32-bit UEFI? If so, I am very curious if WinXP 32-bit starts under UEFI with vista beta 6.0.5219.0 32-bit files.
#2887infuscomus⇗ @Andalu

concerning more than 4GB RAM and XP, you can try this

Get upto 128GB with PAE in Windows XP 32bit
⇗ https://www.betaarchive.com/forum/viewtopic.php?f=61&t=36597
#2888Andalu⇗ @infuscomus
Many thanks for your help ;)
I already knew that patch. I tried it one more time but I got blank screen as always on my B250M Pro4 board.

It will seem incredible but on the crazy B75Pro3M board the 'chinese patch' works fine with the amd modded driver (at least until the pc is not shutdowned and at the same time the power is not turned off for over one minute).

Instead, on my B250M Pro4 board the 'chinese patch' doesn't work when the amd modded drivers are installed. With the acpy.sys 5048 only and no amd modded drivers, the system correctly recognize more than 4GB and I have not the issues reported at ¶ #2637.

I have six motherboards but in no one I can get the USB3 fully functional with the possibility to use more than 4GB of ram without problems.
I'm still looking for the right combination before I go crazy.... :D
#2889Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #2848
@Mov AX, 0xDEAD
I find small error in description:


Fixed, thanks!
#2890infuscomus⇗ @Andalu

just a suggestion, try doing a fresh install with the RAM patch?
I have had better luck getting the RAM patch to work by nlite-ing it into an ISO and doing a fresh install than trying to patch an existing install.
#2891schreibersteinBy the way, how does the limit of ~900MB come about? What is reserving so much memory?
I am considering creating a Server 2003 ISO to check if the behavior is similar to XP. Maybe 2003 works better. I always had a high opinion of it.

Is there any chance the acpi.sys is compatible with Windows 2000 SP4 (NT 5.0)?

Cheers,
schreiberstein
#2892infuscomus⇗ @schreiberstein

I may be wrong about this, but I believe Microsoft introduced an artificial limit to RAM in SP1 or SP2 because badly programmed device drivers did not handle 4GB of RAM properly.
I think XP SP0 has access to all 4GB of RAM.

Check the hal.dll and ntoskrnl.exe of Windows 2000 SP4 with dependency walker and see if patched acpi 5048 has any missing imported functions, if it's all green and no red then it should work.

edit:

ntoskrnl 2000 missing

InterlockedPopEntrySList
InterlockedPushEntrySList
HeadlessDispatch
ExfInterlockedCompareExchange64

so I doubt it's ever going to work
#2893tarsonis
Zitat von ⇗ diderius6 im Beitrag ¶ #2820
@tarsonis
Most easy is to use from commandline

makecab acpi.sys

this gives you acpi.sy_
This you put to i386 folder for nlite to make CD XP SP3.

The same for storport.sys.
Then you integrate Txtmode via nlite driver STORAHCI from ⇗ @skullteria .

No need to integrate USB files if you have a PS/2 connector
Dietmar





So I did it wrong putting the *.sy_ after nlite finalize the setup files? The *.sy_ files need to be put in the XP folder before one selects it as source for nlite?
The storport.sys file that is included in the STORAHCI driver from ⇗ @skullteria is the correct one?
Do I need to select a processor type (F7) for the setup and is "ACPI Multiprocessor" correct for the Ryzen 1800x?

I have no PS/2 connector on the CH6 x370.
#2894XPLives
Zitat von ⇗ daniel_k im Beitrag ¶ #2858
Patched ACPI.SYS files now supporting Z390 boards.

Daniel_K

I've been testing your Z390 ACPI mod for close to half a day.

You've finally fixed the biggest issue that you already fixed in your previous XP / 2003 64-Bit ACPI mod that I mentioned.

The Device Manager now shows the Video Card!  Congrats!!!  No BIOS Modding required.

First time ever in 32-Bit XP and 2003 it now shows the Video Card with ACPI on Coffee Lake.

Video drivers now install without any issues now that the video card is present.  Huge success otherwise XP is handicapped.

From what I can tell your 64-Bit earlier ACPI.sys mod now matches in functionality on the new 32-Bit Z390 Mod.

I will add your MOD to the ACPI Drivers Depot so it is easier to locate for people from almost 3000 messages in this bloated thread.

⇗ Modded ACPI Drivers Depot 2000 XP 2003 2009


[Possible Last ACPI related issues left to fix]
But there still exists problems which only happen under both of your 32-Bit and 64-Bit mods which I cannot explain why.

I think so far ACPI functionality is about 80% fully working and almost 100% soon without any BIOS modding.

I do not know if you are a gamer or not but if you use MAME you can test to verify if it happens on your system.

Test any arcade game in MAME to see if it freezes once any audio begins to play.

So far this is the most consistent problem that hasn't been resolved.

Other problems found in other XP Games too.  Crysis 1 Game Demo will freeze with audio stuttering loop so you must end the task in Task Manager.

I tried both PCI and USB Audio devices and this made no difference so it is not a USB related issue.

I also tested HDMI Audio out and the problem still exists in MAME.

Once this is done I think XP is 100% Alive in ACPI.  You should be proud of what you accomplished with this recent Z390 Mod.


Maybe this BSOD Error on my Z370 may help solve other ACPI issues.

0x000000A5 (0X00000011,0X00000008,0XF6F84218,0X20160422)

Thank you!
#2895daniel_k
Zitat von ⇗ schreiberstein im Beitrag ¶ #2891
By the way, how does the limit of ~900MB come about? What is reserving so much memory?
I am considering creating a Server 2003 ISO to check if the behavior is similar to XP. Maybe 2003 works better. I always had a high opinion of it.

Is there any chance the acpi.sys is compatible with Windows 2000 SP4 (NT 5.0)?

Cheers,
schreiberstein

Being a premium motherboard, it has too many onboard devices, that explains the "no enough free resources" and just 900MB of available RAM on XP.

Remember that those modern systems are optimized for new OSes, which handle resources differently.

Try Server 2003 Enterprise or Datacenter, as the Standard doesn't support PAE without hacking it, may help with the RAM, but I highly doubt about it helping with the lack of resources.

 

Page 194

#2896diderius6⇗ @XPLives

The BSOD A5 (0x11,..) can have a lot of different reasons.

This new acpi.sys (see post) solves 50% of them. This is the best acpi.sys for now, that we have for XP SP3 (any compi).

If you get after this acpi.sys  BSOD A5 (0x2001,..) it is another serious problem, because then there is a major other reason, why this compi cant enable Acpi mode (and even not MPS Multiprocessor mode without any Acpi)
Dietmar



diderius6 has attached files to this post
#2897XPLives⇗ @infuscomus,⇗ @schreiberstein

Zitat von ⇗ infuscomus im Beitrag ¶ #2892


I may be wrong about this, but I believe Microsoft introduced an artificial limit to RAM in SP1 or SP2 because badly programmed device drivers did not handle 4GB of RAM properly.
I think XP SP0 has access to all 4GB of RAM.

so I doubt it's ever going to work



4.00GB of RAM for XP SP0/SP1
compared to
3.15GB of RAM on SP2/SP3.

Zitat von ⇗ infuscomus im Beitrag ¶ #2892

Check the hal.dll and ntoskrnl.exe of Windows 2000 SP4 with dependency walker and see if patched acpi 5048 has any missing imported functions, if it's all green and no red then it should work.

edit:

ntoskrnl 2000 missing

InterlockedPopEntrySList
InterlockedPushEntrySList
HeadlessDispatch
ExfInterlockedCompareExchange64



Maybe you can find a dependency substitution/workaround?

BlackWingCat team up?


Zitat von ⇗ schreiberstein im Beitrag ¶ #2891
By the way, how does the limit of ~900MB come about? What is reserving so much memory?
I am considering creating a Server 2003 ISO to check if the behavior is similar to XP. Maybe 2003 works better. I always had a high opinion of it.

Is there any chance the acpi.sys is compatible with Windows 2000 SP4 (NT 5.0)?

Cheers,
schreiberstein


900MB free OS Base Memory?  Most likely due to integrated Intel HD Graphics Shared Memory Setting hogging it.  If it is set to Auto it will use up to 2.5GB in some cases.

Go to your BIOS and look for the option to adjust the Shared Video Memory to the lowest possible.  On Ivy Bridge you can go down to 32MB.  On Coffee Lake I think they increased it to like 128MB minimum so it hogs more but at least better than 1.5GB->2.5GB default.  If I knew how to BIOS Mod and change the Shared Memory setting I would change it to 32MB minimum since there is no XP driver support so any more memory is stolen from XP is completely wasted.  You cannot increase the OS base memory > 4.00GB.  Only Server 2003 can allow better OS memory utilization.   This is why I do not trust those XP memory hacks for 128GB.  I do not know what side effects can happen or how they modified and if it is safe.  One time I heard someone's USB hard drive got corrupted.

But since you plan on using GTX 780 for GPU for Hackintosh/XP then you should change the Shared Memory setting down to the lowest possible in BIOS to prevent XP from getting robbed of OS Base Memory to use.

Best memory I recorded was XP SP0/SP1 with PAE 4.00GB claimed.
I think even with Intel HD Graphics Shared Memory usage it doesn't affect it because XP can utilize up to 4.00GB so as long as it stays within that range it is not robbed.  XP SP2/SP3 stopped that and made it worse.  Otherwise even XP probably could use up to 2.0GB -> 4.0GB? max shared memory on Intel HD Graphics 4000 and have 4.00GB free on SP0/SP1 as long as you had 8GB installed then you'd have 4.00GB for OS base memory and 4.00GB for Intel HD Graphics 4000 Shared Memory.  Would be the best integrated graphics usage for XP if BIOS Modded option to add up to 4.00GB Shared Memory.

That was one reason I was testing XP SP0 Slim for smaller footprint install size and most OS memory available.  This can be as low as 21.25% extra memory which is about 1/5 bonus. (4.00GB vs 3.15GB->3.21GB) typically in SP0/1 vs SP2/SP3.

Only issue is less compatibility with some programs that want SP2/SP3.   Otherwise the best option is to jump to Server 2003 instead and utilize all memory up to 64.0GB for 32-Bit. or > 64GB for 64-Bit.

It is unlikely Windows Vista Beta ACPI will work on Windows 2000.  I tested before Windows XP SP0 ACPI on Windows 2000 SP4 and it BSOD.  So missing dependencies for backward compatibility.  Somehow Vista Beta ACPI is probably XP compatible and not changed enough to cause a problem.   ACPI.sys is only forward compatible.  XP ACPI.sys works on 2003.  2000 ACPI.sys also worked on both XP and 2003.  That is why before I asked if anyone knew how to modify Windows 2000 ACPI then it will work for all three Operating systems with full ACPI due to forward compatibility.
#2898XPLives⇗ @diderius6

Zitat von ⇗ diderius6 im Beitrag ¶ #2896
@XPLives

The BSOD A5 (0x11,..) can have a lot of different reasons.

This new acpi.sys (see post) solves 50% of them. This is the best acpi.sys for now, that we have for XP SP3 (any compi).

If you get after this acpi.sys  BSOD A5 (0x2001,..) it is another serious problem, because then there is a major other reason, why this compi cant enable Acpi mode (and even not MPS Multiprocessor mode without any Acpi)
Dietmar


That BSOD A5 was using default 32-Bit 2003 ACPI.SYS UnModded on Z370 UnModded BIOS.  I thought maybe useful to know if this was different BSOD A5 error than other Z370 or Z390 people tested to compare.

No BSOD so far with recent Daniel_K Z390 ACPI.SYS mod.  Seems very stable.

So far Shutdown works normal.  Restart always works in ACPI/NO ACPI.

I just now test Stand By Mode for 1 minute and try to wake.

Update:
Ooops... Okay I found out Stand By mode cannot wake up properly.

PS/2 Keyboard - No Effect.
USB Mouse - No Effect.

Power On Button - Turns on but Black Screen and no return to XP Desktop.  So I guess this is a FAIL for ACPI feature.  But I am glad Shutdown does work however.


Only main issues with Audio playing in MAME games and possibly some DirectX9 titles like Crysis 1 and others like it could happen.

That same issue existed on the earlier Daniel_K Z390 64-Bit (XP/2003) ACPI.SYS mod.

Now DK's recent 32-Bit version matches the 64-Bit version and now I can finally see the Video Card in Device Manager which could not before with earlier ACPI.SYS mods I tested from here.

So it is a huge breakthrough for XP/2003 32-Bit ACPI on 10-10-19.

I think it is very close to getting to 100% without BIOS mod.  I say 80% but maybe I am too optimistic.

So far if the Audio problems can be fixed then I can test further any other strange anomalies/bugs to be found.

You should try the Daniel_K Z390 ACPI.SYS MOD with Standard Flashed UnModded Factory BIOS to see if this happens on your Z390 EVGA Dark?

Does EVGA Dark Z390 work fine without any BIOS MOD or ACPI.SYS Mod already from default?

Is your ACPI.SYS attachment different than Daniel_K version?  Maybe you can merge both together if yours fixes Stand By and Audio problem?
#2899skullteria
Zitat von ⇗ daniel_k im Beitrag ¶ #2858
Patched ACPI.SYS files now supporting Z390 boards.


Hey my friend, this version of ACPI already is patched to fix winload.exe load Windows XP? Can you test with x64 too?
#2900XPLives⇗ @schreiberstein

Zitat von ⇗ schreiberstein im Beitrag ¶ #2883
@diderius6

Which devices do you mean?
I disabled all Other Devices I do not need (NVMe drives, wifi, bluetooth, etc)
Sometimes, USB works. I even got USB sound.
But after a reboot, USB is yellow again...
Is there something I can disable under System devices to free up ressources?
It is strange.

Wow you should go into F8 Safe Mode and see if those are still present.   Delete the duplicates and reboot back to normal desktop to see if they went away.  That should clear them and you will have new pop ups asking for install the driver.  You can hold down the ESC key to bypass all the windows and check the Device Manager again any change.  Should remove any duplicates.


Hey anyone else see this device in their Device Manager on Z370 or Z390?

"PCI Data Acquisition and Signal Processing Controller"?

Schreiberstein can you go into Details and Get a Text Copy of all the Hardware IDs for each category of that device?

Device Instance ID:

Hardware IDs:

Compatible IDs:

Matching Device ID:


I am curious what this device is as it has never shown before on any Intel system I have.
#2901tarsonisAny advice on this?

Zitat von ⇗ tarsonis im Beitrag ¶ #2893
Zitat von ⇗ diderius6 im Beitrag ¶ #2820
@tarsonis
Most easy is to use from commandline

makecab acpi.sys

this gives you acpi.sy_
This you put to i386 folder for nlite to make CD XP SP3.

The same for storport.sys.
Then you integrate Txtmode via nlite driver STORAHCI from @skullteria .

No need to integrate USB files if you have a PS/2 connector
Dietmar





So I did it wrong putting the *.sy_ after nlite finalize the setup files? The *.sy_ files need to be put in the XP folder before one selects it as source for nlite?
The storport.sys file that is included in the STORAHCI driver from @skullteria is the correct one?
Do I need to select a processor type (F7) for the setup and is "ACPI Multiprocessor" correct for the Ryzen 1800x?


I have no PS/2 connector on the CH6 x370.
#2902XPLives⇗ @schreiberstein

Zitat von ⇗ schreiberstein im Beitrag ¶ #2879

EDIT:
I was able to get the Intel I211 ethernet NIC (8086:1539) running with a driver I found here somewhere.
Connection established, ping works. Amazing. A bit of relief.


Can you upload this Intel I211 ethernet NIC XP driver?  I want to test it if you can ping that's amazing and sounds like it is working.
#2903diderius6⇗ @skullteria

I just make this in acpi.sys from post

¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (194)

Dietmar
#2904schreiberstein⇗ @XPLives

I can sure do that. I am sure I got them from somewhere around here.
I will look for them later today.

Very interesting results regarding missing dependencies for 2000 SP4. Maybe this will be possible someday. I have no experience with Windows Kernel hacking.

Right now, I am creating a Server 2003 i386 Enterprise ISO file for my system, but I am at a loss how to create the SP2.cab file using makecab.exe . :-(
I cannot find an example anywhere on the internet, even though I suppose tools like nLite use them internally.
From what I read, there are certain headers in these files and perhaps the XP setup expects something specific.
It could be possible that 2003 works much better than XP on my system.
Once I am home, I will also install the GeForce 780 in there.

I will keep you all posted.

Cheers,
schreiberstein

EDIT: The driver I used (found somewhere in this thread):
f45t4093p64633n2_tjinwYpq.rar
---> Original link: ⇗ https://files.homepagemodules.de/b602300...n2_tjinwYpq.rar
Contains "i211lan"
The driver works 100%. Gigabit full-duplex negotiated, Internet Explorer 6 worked, ...
#2905Doc.Brown
Zitat von ⇗ Doc.Brown im Beitrag ¶ #2847
Zitat von ⇗ diderius6 im Beitrag ¶ #2844
@Doc.Brown
Waaoh, that means I found exact the place for BSOD 0x10006 in DSDT and repair it there.
So much good news today!!! Now XP will run on ALL x390 boards, Apex XI and so on with this mod.
Last days I compare soso many DSDTs. And they are all the same. Manufacturers deleted important information in DSDT
and because of that XP crashes. XP works very strict in translating DSDT.
The problem with second acpi Bsod is,
that crazy XP just reinstalls its own original acpi.sys in windows\system32^^.
Just copy modded acpi.sys there again.
The other Bsod happens,
because XP does not like a device on the gene XI board.
Sometimes you can overcome this hitting F8 (Safe Mode).
Try to disable as much devices as you can in Bios. Later you can activate them again.
If this does not help,
use an XP install from another compi,
Dietmar

PS: With lan Debug from @Mov AX, 0xDEAD we now can find the device, which crashes.


Yep it's a really good news being able to go forward in the installation process,you make it happen :)
I already tried F8 for Safe Mode and it also result in BSOD unfortunately

I try to copy ACPI.sys and a fresh install on X299 Rampage Apex(I already have a ghost of previous test) tomorrow ;)



⇗ @diderius6

New update from my investigation today:
I copy last Z390 ACPI.sys in System32/drivers after installation error from yesterday but installation restart always at this point(device installation) so bug comes again and again
After that I used a ghost made before on X299 with older acpi5048,changed for last Z390 ACPI.sys in windows directory and was able to boot (only) in Safe Mode,under XP some drivers like USB and AHCI A352 by Fernando pop-up for instal,in the end only one driver doesn't instal properly and it linked with ACPI as you can see on those capture:





Don't know if it could help
After that I tried a fresh instal on X299 with last Z390 acpi.sys but when I switch on Gene I've got 7B BSOD this time



Tried also lot of combination for build the iso but instal process always stop same as yesterday,I think there's something deeper again with this board cause I disabled all useless device in bios(audio,lan ...).

Thanks for your help :)
#2906diderius6⇗ @Doc.Brown
This can be solved, I have done.
But you need other compi and from there integrate the *.reg files
for the STORAHCI.sys driver into the registry of your new XP made X299.
Take also a look, if storport.sys is still in windows\system32\drivers
Dietmar

PS: You also can integrate the STORAHCI driver direct on X299 registry.
Copy STORAHCI.sys into windows\system32\drivers on running x299 compi,
storport.sys in windows\system32\drivers
and click just on the storahci.reg file from this post
¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (59)
#2907daniel_k⇗ @schreiberstein, to build SP2.cab

Unpack original to C:\SP2 and replace desired files.

Extract attached file to the same folder.

Open a command prompt, switch to C:\SP2 and type:

 
makecab /f sp2.ddf



Cabinet will be created as C:\SP2\CAB\SP2.CAB

Makecab is available from Vista and later.

#2908Doc.Brown
Zitat von ⇗ diderius6 im Beitrag ¶ #2906
@Doc.Brown
This can be solved, I have done.
But you need other compi and from there integrate the *.reg files
for the STORAHCI.sys driver into the registry of your new XP made X299.
Take also a look, if storport.sys is still in windows\system32
Dietmar

PS: You also can integrate the STORAHCI driver direct on X299 registry.
Copy STORAHCI.sys into windows\system32\drivers on running x299 compi,
storport.sys in windows\system32
and click just on the storahci.reg file from this post
¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (59)



I already integrate these via Nlite during iso build process but ok I try it from my previous x299 ghost ;)

Thanks
#2909diderius6⇗ @Doc.Brown
Then I think, storport.sys isnt any more in
windows\system32\drivers
Dietmar
#2910MikedebianI have a question about GPU. Now that I have XP running I also gave some legacy dos apps that require full screen and cannot be run in a window. If window, it renders fine. If full screen the screen is black. I suspect this might have to do with my GPU in XP having no driver installed (it just works TM). I heard that the latest that was fully supported in XP is the 980Ti. This would solve my desktop being accelerated, but would it also sole full screen legacy apps not working? I tried to replace the videoer.sys, but that just resulted in a blue screen one XP started up and tried to render the login window.

Thank you... I would very very much like help with this.

 

Page 195

#2911XPWELL64I'll hack Windows XP and Windows Vista drivers.
#2912XPWELL64Other people are hacking Win7 drivers. We will hack Windows Vista Drivers.
#2913schreibersteinI wish there were a way to get the Radeon RX 580 working on Windows XP.
But I doubt that the Radeon HD 7xxx drivers can be patched to make it working.
Else, these Linux kernel folks wouldnt have had such a hard time implementing all the changes with every new GPU generation, especially concerning powersaving, firmware blobs, etc.
Maybe I will try a PCI ID transplant sometime.
#2914XPWELL64I will patch ivy bridge drivers to work Intel HD 5500 on Windows Vista. I will patch igdkmd64.sys to do this.
#2915XPWELL64I will learn how to use ida pro and I will patch drivers.
#2916tarsonisOK, I made a new XP setup iso and tested it again. This time I've overwritten the acpi.sy_ and storport.sy_ before I started the nlite processing..

selecting "Standard PC":
1.Try = "the file STORAHCI.sys" is corrupted."
2.Try= 7B error

selecting "MPS Multiprocessor"
1.Try = Freeze on setup is loading dialog

selecting "AHCI Multiprocessor"
1.Try= 7B error


I have found that one needs to replace those files also in the SP3.cab too is it right? I have no SP3.cab in the setup files. But a driver.cab. Should I replace the acpi.sys and storport.sys in the driver.cab too?
#2917skullteria
Zitat von ⇗ tarsonis im Beitrag ¶ #2916
OK, I made a new XP setup iso and tested it again. This time I've overwritten the acpi.sy_ and storport.sy_ before I started the nlite processing..

selecting "Standard PC":
1.Try = "the file STORAHCI.sys" is corrupted."
2.Try= 7B error

selecting "MPS Multiprocessor"
1.Try = Freeze on setup is loading dialog

selecting "AHCI Multiprocessor"
1.Try= 7B error


I have found that one needs to replace those files also in the SP3.cab too is it right? I have no SP3.cab in the setup files. But a driver.cab. Should I replace the acpi.sys and storport.sys in the driver.cab too?


Its seem or really storachi is corrupted or storport is missing.
#2918Doc.Brown⇗ @diderius6

So I tried what you told me under the x299 for Storahci,storport and the reg file,first boot after switching under the Z390 I had to replace the acpi.sys cause I had BSOD for non ACPI compliant bios and after replaced it by the last acpi5048 I had like yesterday :



This is for normal boot,Safe Boot is OK but always the same Microsoft ACPI Compliant Controller wich Install Manager ask to install,perhaps it's because of the replacement of acpi.sys after installation process don't you think ? If I install XP under X299 with a patched SP3.cab with the good acpi.sys into perhaps I will not have to replace it after switching on Z390 ?

I tried many things again like mode diag,maxmem or pci lock for nothing but this time I saw desktop for 10 secondes before BSOD many times.
Another thing that seems strange is that after switching on z390 and boot in Safe Mode the device manager always have the Intel 7740X listed and not the 8700K ...
#2919diderius6⇗ @Doc.Brown
Disable in Bios nearly everything.
Disable via F8 Safe Mode in Device Manager nearly everything.
Then boot with F8 and chose there VGA
Dietmar
#2920dencorso⇗ @schreiberstein: Since you're using a 16-thread processor, you should be running hal.dll v. 5.1.2600.5687... In case you're not, do install 1st ⇗ https://web.archive.org/web/201612291648...en-us/kb/951126 and then ⇗ https://web.archive.org/web/201004240853...t.com/kb/958244 or just the latter. I do have the ENU hotfixes but not the DEU ones, but I'm confident you can find them easily. If not, let me know, and I'll help you locate  them.
#2921Andalu
Zitat von ⇗ infuscomus im Beitrag ¶ #2890
@Andalu

just a suggestion, try doing a fresh install with the RAM patch?
I have had better luck getting the RAM patch to work by nlite-ing it into an ISO and doing a fresh install than trying to patch an existing install.

So did you apply the patch successfully? Which one did you use?
I didn't have the same luck even with a fresh XP install and the Dibya's patch slipstreamed with nLite. This time the XP boot is completed but as soon as the amd usb3 drivers are installed the mouse attached to usb2 port hangs and the usb3 ports don't recognize the devices. Even the shutdown no longer works.
I don't know what else to try...
#2922daniel_k⇗ @Doc.Brown, desktop boards usually have very similar DSDT tables.

Are you still running diderius6's modded BIOS? I think you should try to flash a stock, original BIOS from ASUS.

Sometimes diderius6's changes may conflict with my patched ACPI.SYS.
#2923infuscomus⇗ @Andalu

there are USB drivers included in dibya's archive, try replacing them in c:\windows\system32\drivers with dibya's versions
#2924infuscomus⇗ @dencorso

can i get a copy of that hotfix for hal.dll?
#2925Andalu
Zitat von ⇗ infuscomus im Beitrag ¶ #2923
@Andalu
there are USB drivers included in dibya's archive, try replacing them in c:\windows\system32\drivers with dibya's versions

I had already replaced those files, no results

 

Page 196

#2926IntiMD
Zitat von ⇗ infuscomus im Beitrag ¶ #2924

can i get a copy of that hotfix for hal.dll?


⇗ KB951126
⇗ KB958244
#2927lsmlcxI make a new amd modded driver for intel xhci for xp.
It looks like it works better.

 



lsmlcx has attached files to this post
#2928infuscomus⇗ @lsmlcx

what changes did you make to it?
#2929lsmlcx⇗ @infuscomus

I saw the previous driver, you changed to Jump 7812, 7814, 7914 on the AMD's 1022 ID, and then no judgment.
Total three places. I now jump directly to the 7812, 7814, 7914 where the 1022 detection is detected.
#2930infuscomus⇗ @Andalu

try this,

copy ntkr128g.exe and hal128g.dll to c:\windows\system32

make a backup of original boot.ini

replace boot.ini contents with paeboot.ini contents

hopefully this works



infuscomus has attached files to this post
#2931Doc.Brown
Zitat von ⇗ diderius6 im Beitrag ¶ #2919
@Doc.Brown
Disable in Bios nearly everything.
Disable via F8 Safe Mode in Device Manager nearly everything.
Then boot with F8 and chose there VGA
Dietmar


Ok ⇗ @diderius6 I will try this,thanks for the tips ;)


Zitat von ⇗ daniel_k im Beitrag ¶ #2922
@Doc.Brown, desktop boards usually have very similar DSDT tables.

Are you still running diderius6's modded BIOS? I think you should try to flash a stock, original BIOS from ASUS.

Sometimes diderius6's changes may conflict with my patched ACPI.SYS.


⇗ @daniel_k yep I'm still using modded bios cause for now it's better than stock with your previous acpi5048(remove BSOD before disk scan for install) BUT I didn't try with your last ACPI patched for Z390,I have to test that also ^^

For now I'm trying to adapt your sp2.ddf file to change acpi.sys in my SP3.cab and make the cab,so I compare file names,remove those aren't in SP3.cab and add missing ones.
#2932diderius6⇗ @Doc.Brown
I succeed to simulate your BSOD.
About 10 seconds is XP there and then the BSOD with your number.
This I never had before.
It seems to happen, when the Fernando iastor.sys and the Skullteria STORAHCI.sys comes in conflict.
One starts the harddisk and then the other gets loaded also, which gives BSOD
Dietmar

#2933XPWELL64Today, I'm modding Intel HD Graphics for Windows XP. I found important string in igxpmp32.sys. I found some infos about Intel HD Graphics for Haswell .sys in IDA Pro.
#2934XPWELL64There is a "Haswell Mobile Graphics Controller" function in .sys
#2935schreibersteinI was busy tinkering with the system yesterday - here are my findings so far:
(I inserted a GeForce GTX 780 to act as a second GPU, selected it to be primary in BIOS. It works properly. The XP nVidia driver picks it up)

--> I created my own installation media for Windows Server 2003 R2 x86 Enterprise
-> Integrated acpi.sys into SP2.cab
-> Integrated AHCI, LAN, USB and USB HUB driver (split the package into two directories so Winfuture Iso Builder would not complain about the directory being 'included twice')
-> Installation went flawlessly
-> Server 2003 has PAE enabled and allows me to use ~31.1 GB (some odd number) of RAM
-> USB never worked once. Not even when I manually installed the INFs from the original package again. It only detects two Intel XHCI 3.1 controllers, not the long list of controllers.
-> Was unable to install nVidia Drivers due to .NetFramework bloat not being able to downloaded automatically by its stupid installer
-> Was able to extract it and installed the nv4_display.inf instead
-> Direct3D did not work, probably something Server 2003 related
-> NTVDM (16 Bit applications such as edit.com) works, also with nVidia drivers enabled
-> Reboot and shutdown always worked

I installed the unoffical SP4 for Windows XP as well to make sure some of this machine's issues is not caused by the lack of Windows updates

However, there are some pretty serious flaws right now:
-> The system just not feels right. Some things hang for a second.
-> NTVDM does not work for some reason - trying to execute edit.com does nothing - just if I had pressed ENTER in the prompt. The 1990s game installers I tried were unable to run because of that - Event viewer showed this:The application, C:\WINDOWS\system32\ntvdm.exe, generated an application error The error occurred on 10/11/2019 @ 17:20:09.312 The exception generated was c0000094 at address 0F01759D (ntvdm!RegisterWOWIdle)
- USB works on every third boot attempt on Windows XP
- No modern web browser works: Chromium 54, Firefox ESR, Palemoon open, I can type something and then the changes to the text will not be visible after a few keystrokes. Sometimes I can see a page, but the UI is broked. The application never crashes or shows an error. I can quit the application any time pressing X. No unresponsiveness. Chromium wrote nothing suspicious into its debug log (started it with special parameters). It seems like the window simply stops redrawing itself. Nothing suspicious in event viewer either.
- "Modern" XP DirectX 9 XP games seem to work, however it feels like the system has some minor micro stuttering, but this might be due to the game, I don't know.
- In case USB was not detected properly, shutdown and reboot will not work. The system simply HALTS there.
- My Athlon 64 939 system from 2005 feels more responsive and "BOOM" for some reason, despite having a quadruple times less "BOOM" when it comes to clock and bus speeds.
- Deactivating devices in Device Manager does not seem to make a difference - I suspect this one, exclamation-marked yellow PCI bridge with "Not enough resources" is to blame.
- Executing AIDA32 system profiler hangs the entire system when it says "Reading MSR" or something like that.
---> I am looking for a tool like HWINFO that allows me to export all the device information so I can share them here


Btw. It seems like only Windows 10 works flawlessly on this machine. (yet)
I installed the modified Intel Z390 USB drivers on my Windows 7 x64 test system and they worked.
The graphics "hang" with the ATI card when it is a bit busy. Like stuttering, Aero effects hanging. And then the mouse (PS/2 and USB) will not be very responsive, like on a system in VESA mode when too many interrupts are fired.
Source: ⇗ [Solution] Win7 drivers for USB 3.0/3.1 Controllers of new Intel chipset systems
At least USB worked on every boot in Windows 7.
Overall, I am very disappointed at Intel/the industry for not caring about backwards compatibility. Not even for Windows 7.
It is bizzare that Apple Mac OS X works better and faster on this system than any version of Microsoft Windows.

Cheers,
schreiberstein
#2936diderius6⇗ @Doc.Brown
May be, it is the fault of the iastor.sys driver version 11.2.0.1006
for Intel. Ask ⇗ @daniel_k which driver is best for Intel AHCI now
Dietmar
#2937IntiMD⇗ @Doc.Brown

FYI here are the Intel RSTe driver backports for XP by daniel_k

¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (110) - RSTe 4.6.0.1085 x86
¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (118) - RSTe 4.6.0.1085 x64
¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (115) - RSTe 4.7.0.1098 x86

For x86 NT5.2 systems, you might want to comment out the following entries just like this:

 
[SourceDisksFiles.x86]
iaStorA.sys = 1,,,
iaStorF.sys = 1,,,
; storport.sys = 1,,,
;


and

 
[iaStorA_inst.ntx86]
CopyFiles=@iaStorA.sys
CopyFiles=@iaStorF.sys
; CopyFiles=@storport.sys
;



PS. forgot to mention, they don't contain the TXTSETUP.OEM file, so you can't slipstream it in first stage text setup.

#2938diderius6⇗ @Doc.Brown

I set up a Windbg session for this BSOD.
The BSOD goes to acpi.sys.

A device, which is loaded late in bootprocess is not ACPI compatible.

And because of this, during first install, you get the 10 sec with full ACPI XP,
because this device is not yet installed from XP SP3 from other compi.
When it goes installed, you get this BSOD.
And this device does not start in Safe Mode (F8),
and because of this you do not get BSOD there
Dietmar

PS: It is not iastor.sys, it is not STORAHCI,
just another device, which I do not found until now,
even I disabled in Bios and via Device Manager really ALL.

Here is the debug printout, with its help we will find the reason:))

nt!IoInvalidateDeviceRelations+9
80a2b5e1 8b86b0000000 mov eax,dword ptr [esi+0B0h]


Microsoft (R) Windows Debugger Version 6.12.0002.633 X86
Copyright (c) Microsoft Corporation. All rights reserved.

Opened \\.\com1
Waiting to reconnect...
Connected to Windows XP 2600 x86 compatible target at (Sat Oct 12 17:10:30.031 2019 (UTC + 2:00)), ptr64 FALSE
Kernel Debugger connection established.
WARNING: Inaccessible path: 'C:\WinDDK\7600.16385.1\src\openfabricsall\nvme13\nvme\objchk_wnet_x86\i386'
Symbol search path is: C:\WinDDK\7600.16385.1\src\openfabricsall\nvme13\nvme\objchk_wnet_x86\i386;SRV*c:\symbols
*⇗ http://msdl.microsoft.com/download/symbols;C:\symbols
Executable search path is: C:\localsymbols
Windows XP Kernel Version 2600 MP (1 procs) Checked x86 compatible
Built by: 2600.xpsp.080413-2133
Machine Name:
Kernel base = 0x80a02000 PsLoadedModuleList = 0x80af5708
System Uptime: not available
WARNING: Inaccessible path: 'C:\WinDDK\7600.16385.1\src\openfabricsall\nvme13\nvme\objchk_wnet_x86\i386'
Sat Oct 12 17:10:32.296 2019 (UTC + 2:00): MM: Loader/HAL memory block indicates large pages cannot be used for 80A02000->80D8DFFF
Sat Oct 12 17:10:32.296 2019 (UTC + 2:00):
Sat Oct 12 17:10:32.312 2019 (UTC + 2:00): MM: Loader/HAL memory block indicates large pages cannot be used for 80100000->8012777F
Sat Oct 12 17:10:32.312 2019 (UTC + 2:00):
Sat Oct 12 17:10:32.328 2019 (UTC + 2:00): MM: Loader/HAL memory block indicates large pages cannot be used for 81D43000->82A93FFF
Sat Oct 12 17:10:32.328 2019 (UTC + 2:00):
Sat Oct 12 17:10:32.343 2019 (UTC + 2:00): MM: Disabling large pages for all ranges due to overlap
Sat Oct 12 17:10:37.656 2019 (UTC + 2:00):

Intel Storage Driver Ver: 11.2.0.1006

Sat Oct 12 17:10:48.078 2019 (UTC + 2:00): MM:***PAGE FAULT AT IRQL > 1 Va 000000B0, IRQL 2
Sat Oct 12 17:10:48.078 2019 (UTC + 2:00):
Sat Oct 12 17:10:48.109 2019 (UTC + 2:00): MM:***EIP 80A2B5E1, EFL 00010246
Sat Oct 12 17:10:48.109 2019 (UTC + 2:00):
Sat Oct 12 17:10:48.125 2019 (UTC + 2:00): MM:***EAX 2000010A, ECX 00806400 EDX 00806400
Sat Oct 12 17:10:48.125 2019 (UTC + 2:00):
Sat Oct 12 17:10:48.140 2019 (UTC + 2:00): MM:***EBX F7592840, ESI 00000000 EDI 00000400
Sat Oct 12 17:10:48.140 2019 (UTC + 2:00):
Sat Oct 12 17:10:48.171 2019 (UTC + 2:00):
*** Fatal System Error: 0x0000000a
(0x000000B0,0x00000002,0x00000000,0x80A2B5E1)

Sat Oct 12 17:10:48.203 2019 (UTC + 2:00): Break instruction exception - code 80000003 (first chance)

A fatal system error has occurred.
Debugger entered on first try; Bugcheck callbacks have not been invoked.

A fatal system error has occurred.

Connected to Windows XP 2600 x86 compatible target at (Sat Oct 12 17:10:48.328 2019 (UTC + 2:00)), ptr64 FALSE
Loading Kernel Symbols
.........................................
Loading User Symbols

Loading unloaded module list
..
*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

Use !analyze -v to get detailed debugging information.

BugCheck A, {b0, 2, 0, 80a2b5e1}

*** ERROR: Module load completed but symbols could not be loaded for ACPI.sys
Probably caused by : ACPI.sys ( ACPI+1142e )

Followup: MachineOwner
---------

nt!RtlpBreakWithStatusInstruction:
80ab9138 cc int 3
2: kd> lm
start end module name
80100000 80127780 hal (deferred)
80a02000 80d8e000 nt (pdb symbols) c:\symbols\ntkrnlmp.pdb\23BD599C4BEE49C0B7E2E3FD595D2ACB1\ntkrnlmp.pdb
b57d9000 b5836f00 update (deferred)
b6922000 b6944700 ks (deferred)
b6c89000 b6cb8e80 rdpdr (deferred)
b6cb9000 b6ce1000 HDAudBus (deferred)
b6ce1000 b6cf4f00 VIDEOPRT (deferred)
b6cf5000 b7956bc0 nv4_mini (deferred)
b7bff000 b7c02c80 mssmbios (pdb symbols) c:\symbols\mssmbios.pdb\9940673F3B9A4BD682DF9D96A12A355C1\mssmbios.pdb
b83c3000 b83dce80 Mup (deferred)
b83dd000 b8409980 NDIS (deferred)
b840a000 b8496d00 Ntfs (deferred)
b8497000 b84a9f00 WudfPf (deferred)
b84aa000 b84c0b80 KSecDD (deferred)
b84c1000 b84d2f00 sr (deferred)
b84d3000 b84f2b00 fltMgr (deferred)
b84f3000 b8533000 storport (deferred)
b8533000 b854a880 SCSIPORT (deferred)
b854b000 b8800000 iaStor (deferred)
f7472000 f7497a00 dmio (deferred)
f7498000 f74b6d80 ftdisk (deferred)
f74f7000 f7500f00 termdd (deferred)
f7507000 f7510e00 intelppm (deferred)
f7517000 f7523f00 i8042prt (deferred)
f7557000 f7567a80 pci (deferred)
f7568000 f75a8000 ACPI (no symbols)
f75a8000 f75d6000 amdxhc (deferred)
f75f7000 f7600300 isapnp (deferred)
f7607000 f7611580 MountMgr (deferred)
f7617000 f7624200 VolSnap (deferred)
f7647000 f764fe00 disk (deferred)
f7657000 f7663180 CLASSPNP (deferred)
f7707000 f770d780 USBSTOR (deferred)
f770f000 f7713d00 PartMgr (deferred)
f77af000 f77b5280 kbdclass (deferred)
f77b7000 f77bcc00 mouclass (deferred)
f7897000 f789a000 BOOTVID (deferred)
f7987000 f7988b80 kdcom (deferred)
f7989000 f798a500 USBD (deferred)
f798b000 f798c100 WMILIB (deferred)
f798d000 f798e700 dmload (deferred)
f79bd000 f79be100 swenum (deferred)

Unloaded modules:
f7637000 f7644000 storahci.sys
f7627000 f7637000 asahci32.sys
2: kd> !analyze -v
*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

IRQL_NOT_LESS_OR_EQUAL (a)
An attempt was made to access a pageable (or completely invalid) address at an
interrupt request level (IRQL) that is too high. This is usually
caused by drivers using improper addresses.
If a kernel debugger is available get the stack backtrace.
Arguments:
Arg1: 000000b0, memory referenced
Arg2: 00000002, IRQL
Arg3: 00000000, bitfield :
bit 0 : value 0 = read operation, 1 = write operation
bit 3 : value 0 = not an execute operation, 1 = execute operation (only on chips which support this level of status)
Arg4: 80a2b5e1, address which referenced memory

Debugging Details:
------------------


READ_ADDRESS: 000000b0

CURRENT_IRQL: 2

FAULTING_IP:
nt!IoInvalidateDeviceRelations+9
80a2b5e1 8b86b0000000 mov eax,dword ptr [esi+0B0h]

DEFAULT_BUCKET_ID: DRIVER_FAULT

BUGCHECK_STR: 0xA

PROCESS_NAME: System

TRAP_FRAME: f78baeb8 -- (.trap 0xfffffffff78baeb8)
ErrCode = 00000000
eax=2000010a ebx=f7592840 ecx=00806400 edx=00806400 esi=00000000 edi=00000400
eip=80a2b5e1 esp=f78baf2c ebp=f78baf30 iopl=0 nv up ei pl zr na pe nc
cs=0008 ss=0010 ds=0023 es=0023 fs=0030 gs=0000 efl=00010246
nt!IoInvalidateDeviceRelations+0x9:
80a2b5e1 8b86b0000000 mov eax,dword ptr [esi+0B0h] ds:0023:000000b0=????????
Resetting default scope

LAST_CONTROL_TRANSFER: from 80a30d41 to 80ab9138

STACK_TEXT:
f78baa6c 80a30d41 00000003 f78badc8 00000000 nt!RtlpBreakWithStatusInstruction
f78baab8 80a319ac 00000003 000000b0 80a2b5e1 nt!KiBugCheckDebugBreak+0x19
f78bae98 80ad7b50 0000000a 000000b0 00000002 nt!KeBugCheck2+0x574
f78bae98 80a2b5e1 0000000a 000000b0 00000002 nt!KiTrap0E+0x244
f78baf30 f757942e 00000000 00000000 00000400 nt!IoInvalidateDeviceRelations+0x9
WARNING: Stack unwind information not available. Following frames may be wrong.
f78baf60 f7579541 8aa52d68 8a9fd268 f771f000 ACPI+0x1142e
f78baf7c f756ed55 8aa52d68 8a994000 00000000 ACPI+0x11541
f78baf9c f756f134 8a9fd268 f7592800 f78bafe0 ACPI+0x6d55
f78bafb0 f756f4c2 f78bafc0 f771f9c0 8a9fd268 ACPI+0x7134
f78bafc8 80ad9899 f75927a0 00000000 00000000 ACPI+0x74c2
f78baff4 80ad937b f791ac54 00000000 00000000 nt!KiRetireDpcList+0x7e
f78baff8 f791ac54 00000000 00000000 00000000 nt!KiDispatchInterrupt+0x2b
80ad937b 00000000 00000009 0081850f bb830000 0xf791ac54


STACK_COMMAND: kb

FOLLOWUP_IP:
ACPI+1142e
f757942e eb06 jmp ACPI+0x11436 (f7579436)

SYMBOL_STACK_INDEX: 5

SYMBOL_NAME: ACPI+1142e

FOLLOWUP_NAME: MachineOwner

MODULE_NAME: ACPI

IMAGE_NAME: ACPI.sys

DEBUG_FLR_IMAGE_TIMESTAMP: 424d8208

FAILURE_BUCKET_ID: 0xA_ACPI+1142e

BUCKET_ID: 0xA_ACPI+1142e

Followup: MachineOwner
---------


#2939daniel_k
Zitat von ⇗ schreiberstein im Beitrag ¶ #2935
-> USB never worked once. Not even when I manually installed the INFs from the original package again. It only detects two Intel XHCI 3.1 controllers, not the long list of controllers.

What are the device IDs?

Zitat
-> Was unable to install nVidia Drivers due to .NetFramework bloat not being able to downloaded automatically by its stupid installer


But you can do a custom install, without GeForce Experience, skipping .NET install.

Zitat
-> Direct3D did not work, probably something Server 2003 related


For stability purposes, D3D and Dsound acceleration are disabled by default in all Server editions.
Just run Dxdiag and enable these features.


Zitat von ⇗ schreiberstein im Beitrag ¶ #2935
I installed the unoffical SP4 for Windows XP as well to make sure some of this machine's issues is not caused by the lack of Windows updates

However, there are some pretty serious flaws right now:
-> The system just not feels right. Some things hang for a second.


You seem to be suffering from the ACPI timer issue.

⇗ @diderius6, please help him.
#2940daniel_k⇗ @lsmlcx, there is nothing wrong with the driver.

And the most important patch has nothing to do with device IDs checks.

 

Page 197

#2941daniel_k⇗ @diderius6, AHCI drivers are only an issue if installing from USB:
¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (178)

From CD/DVD, no issues with any driver:
¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (179)
#2942diderius6⇗ @daniel_k ⇗ @schreiberstein

The question is, what Schreiberstein (Alex?)
really wants. To get a working XP or Server 2003 or ..
Only step by step this can be done
Dietmar

PS: Here are the hacked hal.dll and intelppm.sys for XP SP3, which solve the timer problem.



diderius6 has attached files to this post
#2943diderius6⇗ @daniel_k

Yes, I see this.
This is a brandnew, acpi.sys related error for a special, until now unknown device,

BSOD 0x0000000a (0x000000B0,0x00000002,0x00000000, xxx)

Dietmar
#2944diderius6Because in Safe Mode (F8) this BSOD does not happen,
it must be one of the excluded, following devices, because this are the ones, not loaded in Safe Mode.
Sat Oct 12 17:35:41.812 2019 (UTC + 2:00): SAFEBOOT: skipping device = Cdrom.SYS(SCSI CDROM Class)
Sat Oct 12 17:35:43.187 2019 (UTC + 2:00): SAFEBOOT: skipping device = mnmdd.SYS(Video Save)
Sat Oct 12 17:35:43.187 2019 (UTC + 2:00):
Sat Oct 12 17:35:43.203 2019 (UTC + 2:00): SAFEBOOT: skipping device = RDPCDD.SYS(Video Save)
Sat Oct 12 17:35:43.578 2019 (UTC + 2:00): SAFEBOOT: skipping device = RasAcd.SYS(Streams Drivers)
Sat Oct 12 17:35:43.578 2019 (UTC + 2:00):
Sat Oct 12 17:35:43.609 2019 (UTC + 2:00): SAFEBOOT: skipping device = IPSec.SYS(PNP_TDI)
Sat Oct 12 17:35:43.609 2019 (UTC + 2:00):
Sat Oct 12 17:35:43.625 2019 (UTC + 2:00): SAFEBOOT: skipping device = Tcpip.SYS(PNP_TDI)
Sat Oct 12 17:35:43.625 2019 (UTC + 2:00):
Sat Oct 12 17:35:43.640 2019 (UTC + 2:00): SAFEBOOT: skipping device = NetBT.SYS(PNP_TDI)
Sat Oct 12 17:35:43.640 2019 (UTC + 2:00):
Sat Oct 12 17:35:43.656 2019 (UTC + 2:00): SAFEBOOT: skipping device = AFD.SYS(TDI)
Sat Oct 12 17:35:43.656 2019 (UTC + 2:00):
Sat Oct 12 17:35:43.687 2019 (UTC + 2:00): SAFEBOOT: skipping device = NetBIOS.SYS(NetBIOSGroup)
Sat Oct 12 17:35:43.687 2019 (UTC + 2:00):
Sat Oct 12 17:35:43.703 2019 (UTC + 2:00): SAFEBOOT: skipping device = Serial.SYS(Extended base)
Sat Oct 12 17:35:43.703 2019 (UTC + 2:00):
Sat Oct 12 17:35:43.718 2019 (UTC + 2:00): SAFEBOOT: skipping device = intelppm.SYS(Extended Base)
Sat Oct 12 17:35:43.718 2019 (UTC + 2:00):
Sat Oct 12 17:35:43.750 2019 (UTC + 2:00): SAFEBOOT: skipping device = WmiAcpi.SYS(Extended Base)
Sat Oct 12 17:35:43.750 2019 (UTC + 2:00):
Sat Oct 12 17:35:43.796 2019 (UTC + 2:00): SAFEBOOT: skipping device = WS2IFSL.SYS(Group)
Sat Oct 12 17:35:44.296 2019 (UTC + 2:00): SAFEBOOT: skipping device = Rdbss.SYS(Network)
Sat Oct 12 17:35:44.296 2019 (UTC + 2:00):
Sat Oct 12 17:35:44.312 2019 (UTC + 2:00): SAFEBOOT: skipping device = MRxSmb.SYS(Network)
Sat Oct 12 17:35:44.812 2019 (UTC + 2:00): SAFEBOOT: skipping device = Fips.SYS(Group)
Sat Oct 12 17:35:44.812 2019 (UTC + 2:00):
Sat Oct 12 17:35:44.828 2019 (UTC + 2:00): SAFEBOOT: skipping device = ElbyCDIO.SYS(Group)
Sat Oct 12 17:35:50.046 2019 (UTC + 2:00): MiSessionWideReserveImageAddress: NO Code Sharing
on \SystemRoot\System32\drivers\dxg.sys, Address 0xbd000000

Dietmar
#2945schreiberstein⇗ @daniel_k
⇗ @diderius6

I primarily wanted to try out Windows Server 2003 to check if it works better than Windows XP on this system, and what to expect from PAE mode.

I was able to get USB3 working using the modified AMD drivers.
The problem was... the INF files has NTx86.5.1.1 written all over them... I searched-and-replaced it to NTx86.5 (as Server 2003 is 5.2) and then it picked up all USB controllers properly. USB works more stable than on Windows XP. My mouse and keyboard always worked throughout several reboots, but my USB Audio DAC seems to have issues. Detecting, installing, deactivating, reinstalling itself, etc.
Also, it seems that the USB driver is responsible for killing NTVDM (16 Bit) support. After I installed the driver, edit.com stopped working.

My goal would be to have a working Windows XP system with more than ~900 MB RAM, stable USB and stable applications.
I do not need 2003.

I will try the modded HAL on my XP system shortly.
Direct3D works just fine on Windows Server 2003. I just had to enable it, I found out... and then somebody mentioned it here shortly before I composed this answer.

Thank you all.

Cheers,
Alexander (schreiberstein)
#2946schreiberstein⇗ @diderius6

Thank you so much!
I have just installed this patched HAL.dll and intelppm on my XP system and voila...
Guess which system I am using Google Chrome v54 on to post this...
This magically fixed all web browsers and some obscure game demos from 2005 that I attempted to run.
I am using the Geforce GTX 780 to drive my two 2560x1600 displays and it looks gorgeous - extended XP bliss desktop.
Now the main remaining issues for XP are USB, NTVDM crashing and the lack of RAM.
Could I use the aforementioned 128GB RAM patch, or will this cause issues with the (potentially) newer HAL.DLL ?
I will create a new XP installation media and do another clean install soon.

Cheers,
schreiberstein
#2947Doc.Brown
Zitat von ⇗ diderius6 im Beitrag ¶ #2932
@Doc.Brown
I succeed to simulate your BSOD.
About 10 seconds is XP there and then the BSOD with your number.
This I never had before.
It seems to happen, when the Fernando iastor.sys and the Skullteria STORAHCI.sys comes in conflict.
One starts the harddisk and then the other gets loaded also, which gives BSOD
Dietmar





This one(10 second desktop) comes only with XP previously installed with the X299 R6A and I build the iso with Fernando's latest drivers,the Storahci,AMDXHCI and Nvme one but the BSOD also come during device installation process in XP installation from the Z390 Gene.

Zitat von ⇗ diderius6 im Beitrag ¶ #2936
@Doc.Brown
May be, it is the fault of the iastor.sys driver version 11.2.0.1006
for Intel. Ask @daniel_k which driver is best for Intel AHCI now
Dietmar


I already tried to build the iso wth only one driver by one and if I remembering well the "worse" case is with only the STORAHCItxtsetup,with it BSOD A5 is coming back

Zitat von ⇗ diderius6 im Beitrag ¶ #2938
@Doc.Brown

I set up a Windbg session for this BSOD.
The BSOD goes to acpi.sys.

A device, which is loaded late in bootprocess is not ACPI compatible.

And because of this, during first install, you get the 10 sec with full ACPI XP,
because this device is not yet installed from XP SP3 from other compi.
When it goes installed, you get this BSOD.
And this device does not start in Safe Mode (F8),
and because of this you do not get BSOD there
Dietmar

PS: It is not iastor.sys, it is not STORAHCI,
just another device, which I do not found until now,
even I disabled in Bios and via Device Manager really ALL.

Here is the debug printout, with its help we will find the reason:))

nt!IoInvalidateDeviceRelations+9
80a2b5e1 8b86b0000000 mov eax,dword ptr [esi+0B0h]


Microsoft (R) Windows Debugger Version 6.12.0002.633 X86
Copyright (c) Microsoft Corporation. All rights reserved.

Opened \\.\com1
Waiting to reconnect...
Connected to Windows XP 2600 x86 compatible target at (Sat Oct 12 17:10:30.031 2019 (UTC + 2:00)), ptr64 FALSE
Kernel Debugger connection established.
WARNING: Inaccessible path: 'C:\WinDDK\7600.16385.1\src\openfabricsall\nvme13\nvme\objchk_wnet_x86\i386'
Symbol search path is: C:\WinDDK\7600.16385.1\src\openfabricsall\nvme13\nvme\objchk_wnet_x86\i386;SRV*c:\symbols
*⇗ http://msdl.microsoft.com/download/symbols;C:\symbols
Executable search path is: C:\localsymbols
Windows XP Kernel Version 2600 MP (1 procs) Checked x86 compatible
Built by: 2600.xpsp.080413-2133
Machine Name:
Kernel base = 0x80a02000 PsLoadedModuleList = 0x80af5708
System Uptime: not available
WARNING: Inaccessible path: 'C:\WinDDK\7600.16385.1\src\openfabricsall\nvme13\nvme\objchk_wnet_x86\i386'
Sat Oct 12 17:10:32.296 2019 (UTC + 2:00): MM: Loader/HAL memory block indicates large pages cannot be used for 80A02000->80D8DFFF
Sat Oct 12 17:10:32.296 2019 (UTC + 2:00):
Sat Oct 12 17:10:32.312 2019 (UTC + 2:00): MM: Loader/HAL memory block indicates large pages cannot be used for 80100000->8012777F
Sat Oct 12 17:10:32.312 2019 (UTC + 2:00):
Sat Oct 12 17:10:32.328 2019 (UTC + 2:00): MM: Loader/HAL memory block indicates large pages cannot be used for 81D43000->82A93FFF
Sat Oct 12 17:10:32.328 2019 (UTC + 2:00):
Sat Oct 12 17:10:32.343 2019 (UTC + 2:00): MM: Disabling large pages for all ranges due to overlap
Sat Oct 12 17:10:37.656 2019 (UTC + 2:00):

Intel Storage Driver Ver: 11.2.0.1006

Sat Oct 12 17:10:48.078 2019 (UTC + 2:00): MM:***PAGE FAULT AT IRQL > 1 Va 000000B0, IRQL 2
Sat Oct 12 17:10:48.078 2019 (UTC + 2:00):
Sat Oct 12 17:10:48.109 2019 (UTC + 2:00): MM:***EIP 80A2B5E1, EFL 00010246
Sat Oct 12 17:10:48.109 2019 (UTC + 2:00):
Sat Oct 12 17:10:48.125 2019 (UTC + 2:00): MM:***EAX 2000010A, ECX 00806400 EDX 00806400
Sat Oct 12 17:10:48.125 2019 (UTC + 2:00):
Sat Oct 12 17:10:48.140 2019 (UTC + 2:00): MM:***EBX F7592840, ESI 00000000 EDI 00000400
Sat Oct 12 17:10:48.140 2019 (UTC + 2:00):
Sat Oct 12 17:10:48.171 2019 (UTC + 2:00):
*** Fatal System Error: 0x0000000a
(0x000000B0,0x00000002,0x00000000,0x80A2B5E1)

Sat Oct 12 17:10:48.203 2019 (UTC + 2:00): Break instruction exception - code 80000003 (first chance)

A fatal system error has occurred.
Debugger entered on first try; Bugcheck callbacks have not been invoked.

A fatal system error has occurred.

Connected to Windows XP 2600 x86 compatible target at (Sat Oct 12 17:10:48.328 2019 (UTC + 2:00)), ptr64 FALSE
Loading Kernel Symbols
.........................................
Loading User Symbols

Loading unloaded module list
..
*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

Use !analyze -v to get detailed debugging information.

BugCheck A, {b0, 2, 0, 80a2b5e1}

*** ERROR: Module load completed but symbols could not be loaded for ACPI.sys
Probably caused by : ACPI.sys ( ACPI+1142e )

Followup: MachineOwner
---------

nt!RtlpBreakWithStatusInstruction:
80ab9138 cc int 3
2: kd> lm
start end module name
80100000 80127780 hal (deferred)
80a02000 80d8e000 nt (pdb symbols) c:\symbols\ntkrnlmp.pdb\23BD599C4BEE49C0B7E2E3FD595D2ACB1\ntkrnlmp.pdb
b57d9000 b5836f00 update (deferred)
b6922000 b6944700 ks (deferred)
b6c89000 b6cb8e80 rdpdr (deferred)
b6cb9000 b6ce1000 HDAudBus (deferred)
b6ce1000 b6cf4f00 VIDEOPRT (deferred)
b6cf5000 b7956bc0 nv4_mini (deferred)
b7bff000 b7c02c80 mssmbios (pdb symbols) c:\symbols\mssmbios.pdb\9940673F3B9A4BD682DF9D96A12A355C1\mssmbios.pdb
b83c3000 b83dce80 Mup (deferred)
b83dd000 b8409980 NDIS (deferred)
b840a000 b8496d00 Ntfs (deferred)
b8497000 b84a9f00 WudfPf (deferred)
b84aa000 b84c0b80 KSecDD (deferred)
b84c1000 b84d2f00 sr (deferred)
b84d3000 b84f2b00 fltMgr (deferred)
b84f3000 b8533000 storport (deferred)
b8533000 b854a880 SCSIPORT (deferred)
b854b000 b8800000 iaStor (deferred)
f7472000 f7497a00 dmio (deferred)
f7498000 f74b6d80 ftdisk (deferred)
f74f7000 f7500f00 termdd (deferred)
f7507000 f7510e00 intelppm (deferred)
f7517000 f7523f00 i8042prt (deferred)
f7557000 f7567a80 pci (deferred)
f7568000 f75a8000 ACPI (no symbols)
f75a8000 f75d6000 amdxhc (deferred)
f75f7000 f7600300 isapnp (deferred)
f7607000 f7611580 MountMgr (deferred)
f7617000 f7624200 VolSnap (deferred)
f7647000 f764fe00 disk (deferred)
f7657000 f7663180 CLASSPNP (deferred)
f7707000 f770d780 USBSTOR (deferred)
f770f000 f7713d00 PartMgr (deferred)
f77af000 f77b5280 kbdclass (deferred)
f77b7000 f77bcc00 mouclass (deferred)
f7897000 f789a000 BOOTVID (deferred)
f7987000 f7988b80 kdcom (deferred)
f7989000 f798a500 USBD (deferred)
f798b000 f798c100 WMILIB (deferred)
f798d000 f798e700 dmload (deferred)
f79bd000 f79be100 swenum (deferred)

Unloaded modules:
f7637000 f7644000 storahci.sys
f7627000 f7637000 asahci32.sys
2: kd> !analyze -v
*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

IRQL_NOT_LESS_OR_EQUAL (a)
An attempt was made to access a pageable (or completely invalid) address at an
interrupt request level (IRQL) that is too high. This is usually
caused by drivers using improper addresses.
If a kernel debugger is available get the stack backtrace.
Arguments:
Arg1: 000000b0, memory referenced
Arg2: 00000002, IRQL
Arg3: 00000000, bitfield :
bit 0 : value 0 = read operation, 1 = write operation
bit 3 : value 0 = not an execute operation, 1 = execute operation (only on chips which support this level of status)
Arg4: 80a2b5e1, address which referenced memory

Debugging Details:
------------------


READ_ADDRESS: 000000b0

CURRENT_IRQL: 2

FAULTING_IP:
nt!IoInvalidateDeviceRelations+9
80a2b5e1 8b86b0000000 mov eax,dword ptr [esi+0B0h]

DEFAULT_BUCKET_ID: DRIVER_FAULT

BUGCHECK_STR: 0xA

PROCESS_NAME: System

TRAP_FRAME: f78baeb8 -- (.trap 0xfffffffff78baeb8)
ErrCode = 00000000
eax=2000010a ebx=f7592840 ecx=00806400 edx=00806400 esi=00000000 edi=00000400
eip=80a2b5e1 esp=f78baf2c ebp=f78baf30 iopl=0 nv up ei pl zr na pe nc
cs=0008 ss=0010 ds=0023 es=0023 fs=0030 gs=0000 efl=00010246
nt!IoInvalidateDeviceRelations+0x9:
80a2b5e1 8b86b0000000 mov eax,dword ptr [esi+0B0h] ds:0023:000000b0=????????
Resetting default scope

LAST_CONTROL_TRANSFER: from 80a30d41 to 80ab9138

STACK_TEXT:
f78baa6c 80a30d41 00000003 f78badc8 00000000 nt!RtlpBreakWithStatusInstruction
f78baab8 80a319ac 00000003 000000b0 80a2b5e1 nt!KiBugCheckDebugBreak+0x19
f78bae98 80ad7b50 0000000a 000000b0 00000002 nt!KeBugCheck2+0x574
f78bae98 80a2b5e1 0000000a 000000b0 00000002 nt!KiTrap0E+0x244
f78baf30 f757942e 00000000 00000000 00000400 nt!IoInvalidateDeviceRelations+0x9
WARNING: Stack unwind information not available. Following frames may be wrong.
f78baf60 f7579541 8aa52d68 8a9fd268 f771f000 ACPI+0x1142e
f78baf7c f756ed55 8aa52d68 8a994000 00000000 ACPI+0x11541
f78baf9c f756f134 8a9fd268 f7592800 f78bafe0 ACPI+0x6d55
f78bafb0 f756f4c2 f78bafc0 f771f9c0 8a9fd268 ACPI+0x7134
f78bafc8 80ad9899 f75927a0 00000000 00000000 ACPI+0x74c2
f78baff4 80ad937b f791ac54 00000000 00000000 nt!KiRetireDpcList+0x7e
f78baff8 f791ac54 00000000 00000000 00000000 nt!KiDispatchInterrupt+0x2b
80ad937b 00000000 00000009 0081850f bb830000 0xf791ac54


STACK_COMMAND: kb

FOLLOWUP_IP:
ACPI+1142e
f757942e eb06 jmp ACPI+0x11436 (f7579436)

SYMBOL_STACK_INDEX: 5

SYMBOL_NAME: ACPI+1142e

FOLLOWUP_NAME: MachineOwner

MODULE_NAME: ACPI

IMAGE_NAME: ACPI.sys

DEBUG_FLR_IMAGE_TIMESTAMP: 424d8208

FAILURE_BUCKET_ID: 0xA_ACPI+1142e

BUCKET_ID: 0xA_ACPI+1142e

Followup: MachineOwner
---------







I don't understand all this debug with my limited knowledge but what I can tell is that in Safe Mode the only device who ask to be installed again and again that I never saw before on any compi(I tested a lot since I started overclocking in 2008) it's this "Microsoft ACPI Compliant Embedded Controller",in the other hand device manager also doesn't update the CPU wich is installed cause even under Z390 it keep 7740X instead of 8700K and CPUZ show the good CPU(8700k) ...
#2948Doc.Brown
Zitat von ⇗ IntiMD im Beitrag ¶ #2937
@Doc.Brown

FYI here are the Intel RSTe driver backports for XP by daniel_k

¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (110) - RSTe 4.6.0.1085 x86
¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (118) - RSTe 4.6.0.1085 x64
¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (115) - RSTe 4.7.0.1098 x86

For x86 NT5.2 systems, you might want to comment out the following entries just like this:

 
[SourceDisksFiles.x86]
iaStorA.sys = 1,,,
iaStorF.sys = 1,,,
; storport.sys = 1,,,
;


and

 
[iaStorA_inst.ntx86]
CopyFiles=@iaStorA.sys
CopyFiles=@iaStorF.sys
; CopyFiles=@storport.sys
;



PS. forgot to mention, they don't contain the TXTSETUP.OEM file, so you can't slipstream it in first stage text setup.




Do you mean that I could use this RSTe instead of Fernando's drivers ? by nlite integration ?
Sorry but my knowledge in coding is very bad and I don't understand how to/where to use those code lines,could you explain more please ?

Thank you :)
#2949diderius6⇗ @Doc.Brown

With the Fernando iaStore.sys driver 1006 and renaming
dxg.sys ->dxOrig.sys, boot and then back dxOrig.sys  ->dxg.sys I succeed to boot normal to full Acpi XP SP3
on the simulating testboard. I use for this the debug version of hal.dll,
debug ntkrnlmp.exe and debug acpi.sys (hacked for Ryzen support).
But I still do not know, which driver causes this BSOD. I think, it has to do with the grafik driver (integrated GPU?)
and with memory above 4 Gbyte. So put in only 4 Gbyte ram, disable the CPU internal GPU and install graphikcard,
I use gtx 980
Dietmar
#2950Mikedebian⇗ @diderius6 Are you able to have legacy dos graphical applications open in fullscreen? Say, a game that is easy to get, commander keen 4 (shareware) or does it go to black screen? I am asking since you have a Gtx 980.
#2951IntiMD
Zitat von ⇗ Doc.Brown im Beitrag ¶ #2948
Zitat von ⇗ IntiMD im Beitrag ¶ #2937
@Doc.Brown

FYI here are the Intel RSTe driver backports for XP by daniel_k

¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (110) - RSTe 4.6.0.1085 x86
¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (118) - RSTe 4.6.0.1085 x64
¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (115) - RSTe 4.7.0.1098 x86

For x86 NT5.2 systems, you might want to comment out the following entries just like this:

 
[SourceDisksFiles.x86]
iaStorA.sys = 1,,,
iaStorF.sys = 1,,,
; storport.sys = 1,,,
;


and

 
[iaStorA_inst.ntx86]
CopyFiles=@iaStorA.sys
CopyFiles=@iaStorF.sys
; CopyFiles=@storport.sys
;



PS. forgot to mention, they don't contain the TXTSETUP.OEM file, so you can't slipstream it in first stage text setup.




Do you mean that I could use this RSTe instead of Fernando's drivers ? by nlite integration ?
Sorry but my knowledge in coding is very bad and I don't understand how to/where to use those code lines,could you explain more please ?

Thank you :)


Like I said, slipstreaming it in first stage setup is impossible due to lack of TXTSETUP.OEM file, Unless somebody creates an appropriate one for the drivers.

You do not need knowledge in coding, since there isn't anything related to coding at all, just a quick INF mod. :D
#2952IntiMD
Zitat von ⇗ Doc.Brown im Beitrag ¶ #2947

I don't understand all this debug with my limited knowledge but what I can tell is that in Safe Mode the only device who ask to be installed again and again that I never saw before on any compi(I tested a lot since I started overclocking in 2008) it's this "Microsoft ACPI Compliant Embedded Controller",in the other hand device manager also doesn't update the CPU wich is installed cause even under Z390 it keep 7740X instead of 8700K and CPUZ show the good CPU(8700k) ...


Maybe this modified LH5048 ACPI INF file courtesy of ⇗ @PPeti66x will handle this problem with that embedded controller? ¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (166)
#2953diderius6⇗ @Doc.Brown
I noticed a resource conflict.
On Acpi XP SP3 I have no onboard sound (code 10).
On MPS XP SP3 I have sound.
So, it is a design error on the board,
another device shares IRQ and line with the Realtek soundchip
Dietmar

PS: Only this acpi.sys works for me (see post).
It is the DEBUG version of acpi 5512, original for XP SP3 but modded by me for Ryzen support.
On the acpi.sys 5048 (no matter which version), I got BSOD 0x7B, very strange, the new acpi.sys does not
like to work with iastor.sys 1006 on this board.



diderius6 has attached files to this post
#2954Gelip⇗ @diderius6

Zitat von ⇗ diderius6 im Beitrag ¶ #2953

I noticed a resource conflict.
On Acpi XP SP3 I have no onboard sound (code 10).
On MPS XP SP3 I have sound.
So, it is a design error on the board,
another device shares IRQ and line with the Realtek soundchip

What does the problem say on the Resources tab? Place the screenshot. Does it look exactly like this?
#2955Doc.Brown⇗ @diderius6

iGPU is always disabled,like lan and sound controlers cause it's useless for overclocking perhaps I need to enable sound if ressource is shared with another device as you say.I have a GT 730 and tried with a GTX770 also.I didn't try with less ram just tried to boot with a /maxmem in boot.ini yesterday,we have to limit Bdie RAM capacity on other OS cause 16gb is to much(even with x64 OS) and result on BSOD with tight timings like C12-11 for 4000+ mhz,I have old Edie 4gb stick so I'll test it too ^^
My XP build is a 5512 perhaps this ACPI will be more compatible
I've finished the file to re-build the SP3.cab and it works so I'll try all of this tomorrow I think

Thanks for your great help ;)

⇗ @IntiMD

I already tried this acpi.inf yesterday but doesn't change anything unfortunately
Ok now I understand for RST drivers :)

 

Page 198

#2956diderius6⇗ @Gelip

No, it just tells unknow device

ROOT\UNKNOWN\0000

Dietmar
#2957diderius6⇗ @Doc.Brown

Because I have had the nearly 100% identic BSOD as you,
now I think about device conflict:

1.) acpi.sys problem (only the for Ryzen Debug modded acpi.sys works for me)
2.) Iastor 1006 problem (with acpi.sys 5048 newest BSOD 0x7B, strange))
3.) Realtek sound (unknown, design error on board, low Irq, same PCI line, brrr).

1.) 2.) I solved, 3.) not

Dietmar
#2958diderius6Now I have the nearly perfect clone of my netbook Lenovo Flex 10.
It is the motherboard version Q1900m from Asrock.
Same CPU, same GPU, same chipset, same problems^^ under XP and Win 7 32 bit(!).
But on this board I can do Debug under XP via COM1, Lan, USB, I tested.
By the way, I found out, why USB debug on the Lenovo Flex 10 not works:
Crazy manufacturer cut simple some cables to the USB port. I found this in a report to Microsoft yesterday
for the Celeron series (me is N2806). Other notebook manufacturers do the same.
"This issue occurs because Intel® Atom Processor Z373x and CHT-CR platforms do not provide xHCI debugging support because of pin reduction."
And I found, what I do not want to hear: On those Bay Trail cpus happens a degrade at the USB ports:
Means, after about 20 months you get errors and errors and errors on the USB port, because the Silizium therefore is gone,..
Dietmar

⇗ https://forums.servethehome.com/index.ph...ign-flaw.19402/

EDIT: The DSDT for the Q1900m board does not change from version 1.30, 1.40,...1.90.
So, the problem with sound under Acpi XP SP3 stays forever^^.
#2959diderius6⇗ @daniel_k

Do you have an idea, where the Realtek soundcard can be found in this DSDT
from the Q1900m Asrock board? May be an easy hack can bring her back to life:))
Dietmar



diderius6 has attached files to this post
#2960Andalu
Zitat von ⇗ infuscomus im Beitrag ¶ #2930
@Andalu

try this,

copy ntkr128g.exe and hal128g.dll to c:\windows\system32

make a backup of original boot.ini

replace boot.ini contents with paeboot.ini contents

hopefully this works

Thank you for your time and for your help. Unfortunately I could not solve. After applying the patch (I copied all the files into the related directories and I modified the boot.ini file too) and restarting the computer, I can finally get all the amount of the ram correctly recognized and the USB3 that works properly, but only until the computer is turned off. After restarting, the issue reappears: the usb2 ports are not powered (the usb mouse is off) and the devices attached to usb3 ports are not recognized. The same behavior also when I applied the 'chinese patch'.
The USB3 and the patches seem unable to coexist, or it works one or the other but not simultaneously.

Since this board also seems to be crazy as the other two, I start thinking that it may depend on the fact that they are all from Asrock....
#2961daniel_k⇗ @Mikedebian, with a GTX 980, I'm able to run EDIT.COM in full screen mode.
#2962daniel_k⇗ @diderius6, I believe it is HDEF.

On Haswell and later, it is HDAS.
#2963MikedebianHello ⇗ @daniel_k

The issue I am having is not with text mode legacy applications, but those that require graphics like EGA, VGA, etc.
#2964daniel_k⇗ @Mikedebian, give me an example of what to run.
#2965Mikedebian⇗ @daniel_k
Any shareware game would work.

Commander Keen 4, Doom, Wolfenstein 3D, etc.
#2966daniel_k⇗ @schreiberstein, with a Server 2003 converted to XP, managed to get everything running.

- Intel USB3
- ASMedia USB3
- VIA USB3
- PAE with 15.9GB
- DOS apps working



daniel_k has attached images to this post  ⇗ XP2003PAE.JPG
#2967Andalu
Zitat von ⇗ daniel_k im Beitrag ¶ #2966
@schreiberstein, with a Server 2003 converted to XP, managed to get everything running.

- Intel USB3
- ASMedia USB3
- VIA USB3
- PAE with 15.9GB
- DOS apps working


how can i have it too?
#2968schreiberstein⇗ @daniel_k
Oh, very nice!
Congratulations.

Converted in what sense? I see it says Windows XP.
I usually use this thing: ⇗ http://www.kood.org/win-2003-optimize-tool/

I think I will continue to use Windows XP because of this super cool HAL.dll.

I will see if I can debug ntvdm.exe with some tools and see why it crashes.
It crashes regardless of GPU drivers, I think. It has to do with USB.

Cheers,
schreiberstein
#2969daniel_k⇗ @Mikedebian, tried Wolf3D shareware.

Opens automatically in full screen and hangs Windows.
#2970daniel_k
Zitat von ⇗ Andalu im Beitrag ¶ #2967
how can i have it too?

This one is a private project, unfinished yet.

Try to install Server 2003 Enterprise and Datacenter, which have PAE.

If it works, you can get XP to work with the PAE hack.

I'm just showing a proof that the drivers do support PAE.

 

Page 199

#2971daniel_k⇗ @schreiberstein, from Setup to working Desktop.

Installs like XP x64 with no OOBE (asking for user names, activation and so on), default user is Administrator.

Only hack is to enable PAE, which is only supported in Server 2003 Enterprise and Datacenter.
#2972diderius6ACPI XP SP3 install on Baytrail CPU

I just make a brandnew XP SP3 installations CD for the Asrock Q1900M board (BayTrail).
There I integrate the acpi.sys Debug version 5.1.2600.5512 original from XP SP3 with Hack for Ryzen support.
And I use the STORAHCI driver from ⇗ @skullteria together with new storport.sys,
because I noticed, that all the Iastor driver make problems on Baytrail chipset.
Ok, I just burned CD and now it installs on the Q1900m Asrock miniboard
with Bay Trail chipset and Valley View GPU.
Strange, that for a motherboard from 2014 you need a hacked acpi,
Dietmar

EDIT1: After txtsetup I got BSOD 0x7B.
Ok, storport.sys was gone as usual. But after that I get again BSOD 0x7B.
The registry entries for the STORAHCI I have to do by hand, I have never seen before.
Now install goes on. This is really funny: The model is good: At once I understand, why I never could
install direct to the netbook Lenovo Flex 10 XP SP3 with setup CD.
With this experience I see, that it will be very very difficult to build a generic Install CD for XP SP3,
that workes on all compis.
On next reboot I got again BSOD 0x7B and I have again to put the entries for STORAHCI by hand into registry.
Now I get the same BSOD as ⇗ @Doc.Brown . But not, when I chose save boot.
Crazy, I think nobody succeeds to install full Acpi XP SP3 until now on Baytrail chipset.
Yesssa, with disabling everything in Device Manager I come to the normal desktop with full Acpi XP SP3 on Baytrail chipset.
I think, it is really the very first time that this has been done. For example see this blog
⇗ https://ryanvm.net/forum/viewtopic.php?t=10596

#2973schreibersteinI added the Creative Audigy 2 ZS to my system via a PCI-E to PCI adapter and it works flawlessly.
I removed the AMD/ATI card from the system. Only the GeForce GTX 780 is now in there (aside from the Intel IGPU)
The HAL patch made my system a lot more responsive. Very happy about it.
USB works quite reliably as well. Mouse and Keyboard seem to work after every reboot.
I added "/PAE" to boot.ini, but I don't get more than 904MB RAM (64MB MIN ; 256MB MAX shared RAM for Intel IGPU in BIOS)

⇗ @diderius6
I wonder if there is a way to get more than 4GB (like on Server 2003) with your "halplusintelppmXPSP3.rar" hack bundle?
Like the file "Windows_XP_128GB_double_pae_addon_final_byDibya.7z.zip" from ⇗ @infuscomus suggests - but it has its own patched HAL.
Seems like this is the only way I could access more than 904MB RAM.
I could live with 4GB, but 904MB is quite small. I can feel it swapping when using 4 chrome tabs.


⇗ @XPLives
PCI Data Acquisition and Signal Processing Controller <-- I have only ONE of these devices

PCI bus 0, device 18, function 0
The drivers for this device are not installed. (Code 28)

Device Instance ID: PCI\VEN_8086&DEV_A379&SUBSYS_88881458&REV_10\3&11583659&0&90

Hardware IDs:
PCI\VEN_8086&DEV_A379&SUBSYS_88881458&REV_10
PCI\VEN_8086&DEV_A379&SUBSYS_88881458
PCI\VEN_8086&DEV_A379&CC_118000
PCI\VEN_8086&DEV_A379&CC_1180


Compatible IDs:
PCI\VEN_8086&DEV_A379&REV_10
PCI\VEN_8086&DEV_A379
PCI\VEN_8086&CC_118000
PCI\VEN_8086&CC_1180
PCI\VEN_8086
PCI\CC_118000
PCI\CC_1180


Matching Device ID:
[EMPTY]

I have also started to look into the NTVDM.EXE problem - attached is my output from WinDbg.
It seems that there is something wrong internally that is causing that.

For now, I am surprised at how stable Windows XP is. I once counted more than 5 hours of uptime, benchmarking with several 3DMark versions, playing music on XMPlay
Using the driver from daniel_k.
All important hardware works on Apple Mac OS X 10.14 Mojave, Windows 10, 7, XP and 2003.
The Creative Audigy even works after sleep/standby on Mac OS X using a patched kx Project audio driver kext.
My goal is it to NEVER have to do any preparations before dual booting another OS.
I don't want to plug my devices into different ports, change BIOS settings, etc.
As of now, this has been accomplished. I only have to press F12 at my bootscreen to bring up the boot menu and I am all set.

Now I only need to find a way to place the PCI card in the hard drive bay (right) of my case. All these riser card cables (including the bizarre USB3 type one) are so stiff.
I could put another PCI card into the riser card. It has two slots. #SoManyPossibilities

Cheers,
schreiberstein



schreiberstein has attached files to this post

schreiberstein has attached images to this post  ⇗ FD2C10DB-E523-4DE5-9446-E
#2974daniel_k⇗ @diderius6, what was the ACPI error on the Asrock Q1900M?

I'm curious.

A quick look at it and the only strange thing I've found was there are some Methods inside a Method.

Never seen this before.
#2975diderius6⇗ @daniel_k

This is a really crazy Bios. It is Intel Insyde, brrr.. No tool works extracting Bios or parts of it etc.
The Bsod was before A5 (0x11,..) with original XP acpi.sys.
Later I went through a cascade of BSODs.
I get the same BSOD as ⇗ @Doc.Brown,
get BSOD 0x7E(c0000005,..)
Bsod 0x7B often (unclear reason with last acpi.sys 5048) but the most evel was BSOD A5 (0x2001,..).
This means, that the compi cannot enable Acpi mode for 1 cpu.
This remembers me a lot at the crazy way to the acpi.sys for Ryzen.
And because of this I come to the idea to use that Debug acpi.sys, hacked for Ryzen
and this works
Dietmar

PS: Do edit this DSDT will be hard work, but also fun:))!

EDIT: The work with the debug acpi.sys has one big disadvantage: Always, when it reaches a Breakpoint,
it gives BSOD 0x7E (0x80000003,..) which tells, please connect windbg and hit "i".
But on the Lenovo Flex 10 is no debug possible, so I have to change this acpi.sys back to the last one based on 5048.
#2976daniel_k⇗ @schreiberstein, please try this.

Replace both files at the same time, otherwise corruption may occur.

This Hal.dll includes ACPI timer patch from ⇗ @diderius6, plus PAE patch.

Source of original files:
⇗ http://vm1.duckdns.org/Public/Windows_XP...e_PAE_Limit.htm

Didn't try it yet, don't know if you need to set the /PAE command in Boot.ini
#2977daniel_k⇗ @diderius6, if you had the complete A5 error parameters, that would give us some clue about where it happens, you know, for example, _INI in hex ...

But, like I've said before, really strange to have a Method inside another Method.
#2978schreiberstein⇗ @daniel_k

Thank you. I will test that in a minute.
By the way, the provided ntoskrnl.exe version is significantly older than the one I use right now:
5.1.2600.6748 vs. 5.1.2600.5512
// This matches the hal.dll version though.
#2979daniel_k⇗ @schreiberstein, the patched the original SP3, release.

If you compare with the original, maybe is easy to patch the new one.

Can you do it yourself? If so, remember to fix the PE checksum.
#2980schreiberstein⇗ @daniel_k
I replaced both files using another system (the existing one kept reverting the file after each replacement).
However, with or without /PAE there was no change of available memory whatsoever.
And I checked that the correct version was stored in system32.
I am now experimenting with the 128g patch. Just want to see if any of that stuff works for my system.

Cheers
schreiberstein
#2981schreibersteinUpdate:

I used "Windows_XP_128GB_double_pae_addon_final_byDibya.7z.zip" from ⇗ @infuscomus

Put ntkr128g.exe (version 5.1.2600.7146) and hal128g.dll (5.1.2600.5687) into system32,
and added a custom entry to boot.ini.

Now I have 31.8 GB of RAM with PAE enabled.
However, there are obvious problems due to the missing ACPI timer patch.
The patched USB files from the same package do not seem to be needed here. USB works as usual.

schreiberstein
#2982daniel_kHere is the patched version.

About the USB drivers, they are NOT needed as you don't have USB2.0 controllers, which are the one affected.
#2983schreiberstein⇗ @daniel_k

Yup! This worked! That was quick. Thank you!
31.8 GB - and Chrome works!

USB did not work on the first boot. NTVDM works right now. I can execute edit.com (I suppose that is always the case when USB does not work)
I was also able to finally launch the RAGE Expendable / Millennium Soldier installer (1999 video game)

I will replace the USB related DLLs in system32 with the ones from the 128gb patch shortly.
Cheers,
schreiberstein
#2984daniel_kAbout the USB drivers, they are NOT needed as you don't have USB2.0 controllers, which are the one affected.
#2985schreiberstein⇗ @daniel_k Understood! Thank you!

 

Page 200

#2986schreiberstein⇗ @daniel_k

This PAE 128gb constellation is causing a lot of issues.
USB never works (USB controller devices are not identified) and applications behave strangely.
It seems to mess with file IO. Some games crashed complaining they cannot check if the CD is present or fail to read a certain file. Chrome crashes quite regularly (pages die).
Explorer behaves slowly. There is a noticeable delay when navigating through folders.

So, I guess I will have to stay with Server 2003 if I want to use more than 904MB stably.

Could you try to apply the hal.dll patch to Server 2003 SP2 RTM hal.dll ? Then I could test the system further on 2003.
I really do not know how I could do that myself.
Is it a simple patch via hex editor and I could check via binary diff?

Cheers,
schreiberstein



schreiberstein has attached files to this post
#2987Gelip⇗ @diderius6

Zitat von ⇗ diderius6 im Beitrag ¶ #2953
@Doc.Brown
I noticed a resource conflict.
On Acpi XP SP3 I have no onboard sound (code 10).
On MPS XP SP3 I have sound.
So, it is a design error on the board,
another device shares IRQ and line with the Realtek soundchip

What exactly computer type did you choose during installation - MPS Multiprocessor PC or MPS Uniprocessor PC ???
#2988daniel_k⇗ @schreiberstein

Here it is, should be correct.
#2989diderius6⇗ @Gelip

I choose "MPS Multiprocessor PC".
"MPS Uniprocessor PC"  is without sense,
in this case it would be better to choose "Standard PC"
Dietmar
#2990diderius6⇗ @daniel_k

Hi,
do you have an idea about this DSDT?
It is from the Insyde Bios of the Lenovo Flex 10 notebook (Baytrail). No chance to make windbg work on it. This DSDT stays at other place in Bios, different from all other modern UEFI BIOS.
For any acpi.sys version until now, it gives first BSOD A5 (0x11,..). I think, this is the major problem to solve:
Acpi mode cant be enabled.
When you jump this, at once you come to BSOD A5 (0x2001,..) exact as this has been for the Ryzen cpu.
When you jump this 2001 BSOD, you get famous 0x7E (0xc0000005,..).

The problem in this is, that this netbook Flex 10 cant be debugged
Dietmar

PS: Win 7 32 bit also shows BSOD A5 (0x11,..) on this netbook, crazy.



diderius6 has attached files to this post
#2991Doc.BrownHello all :)

I'm triyng another things like debug ACPI for ryzen (bsod 7e),changing RAM quantity,ahci injection one after other and test,for now I just put RSTe and storahci but nothing works again,i'll will test with USBXhci and Fernando's after
It's seems with New Z390 acpi5048 i don't need modded bios anymore
I'm looking all .log in Windows directory now,do you me to keep some of them for debug like "setupapi" or other else ?
#2992IntiMD
Zitat von ⇗ schreiberstein im Beitrag ¶ #2973
@XPLives
PCI Data Acquisition and Signal Processing Controller <-- I have only ONE of these devices

PCI bus 0, device 18, function 0
The drivers for this device are not installed. (Code 28)

Device Instance ID: PCI\VEN_8086&DEV_A379&SUBSYS_88881458&REV_10\3&11583659&0&90

Hardware IDs:
PCI\VEN_8086&DEV_A379&SUBSYS_88881458&REV_10
PCI\VEN_8086&DEV_A379&SUBSYS_88881458
PCI\VEN_8086&DEV_A379&CC_118000
PCI\VEN_8086&DEV_A379&CC_1180


Compatible IDs:
PCI\VEN_8086&DEV_A379&REV_10
PCI\VEN_8086&DEV_A379
PCI\VEN_8086&CC_118000
PCI\VEN_8086&CC_1180
PCI\VEN_8086
PCI\CC_118000
PCI\CC_1180


Matching Device ID:
[EMPTY]

   



According to pci.ids, the device is called: "Intel Cannon Lake PCH Thermal Controller". You can use Fernando's Intel chipset devices INF AiO package ⇗ {II. Latest "pure" Intel Chipset Device *.INF files for all Intel systems from 6-Series up (for manual installation):}. When updating the device, make sure the path that you direct is "UNPACKED_PACKAGE_ROOT\CannonLake-H\CannonLake-HSystemThermal.inf"
#2993GelipI follow this thread from the very beginning. I see there are problems with ACPI, AHCI and USB because on the motherboards you are testing there is no official support for WinXP. For WinXP, computers from 2010-2013 with UEFI bios are modern hardware. These devices have official WinXP support, i.e. drivers for all devices even for USB 3.0 (e.g. ASmedia). There are no any problems with ACPI or AHCI.

⇗ Windows XP: new Z68/Z77 rig in 2017
⇗ ASRock Z68 Extreme3 Gen3

I have such hardware on which WinXP 32-bit or 64-bit works very stable and fast - ThinkPad X220 laptop. I tested on it all Windows systems such as WinXP, Vista, 7, 8, 8.1, 10 and what is important - there are drivers for each system for all devices !!!

Linux and even Mac OS also work - ⇗ ThinkPad X220 macOS High Sierra 10.13 Installation Guide

Well, good luck in running WinXP on new hardware

P.S. I also have several computers from 1998-2003 and work very well to this day.

I do not understand why buy modern hardware as we want to use WinXP ???
#2994diderius6⇗ @Gelip
For fun^^ and XP SP3 is stable, very easy to handle and fast. It runs on 486 processor (i386 I have not tested) and via Qemu on Arm.
Take a look at the "search" function at any othe OS.
At once you would choose XP
Dietmar
#2995diderius6⇗ @daniel_k
About the DSDT in Bios (Insyde) from Lenovo Flex 10 netbook.
Can it be, that the manufacturer extra put the DSDT away from its normal place in UEFI Bios GUID
C118F50D-391D-45F4-B3D3-11BC931AA56D
so that XP and Win7 cant find it?
They want to promote Win8.
I always think, that DSDT is an interpreted table, just as a stripe of paper, where acpi.sys runs over.
That OS XP, Vista, Win7 all show the same BSOD A5 (0x11,..)
makes me think, that I might be right.
But if it is so, can its own original DSDT just been copied in Bios itself to place in GUID C118F50D-391D-45F4-B3D3-11BC931AA56D
Dietmar

PS: The GUID C118F50D-391D-45F4-B3D3-11BC931AA56D
     is not in this Bios from Insyde.

EDIT: I just upload via asl.exe its own DSDT to the registry of the Lenovo Flex 10 notebook.
So, the DSDT is there for sure. But the BSOD A5 (0x2001,..) stays as before.
So, it is really the fault in its DSDT. Strange, why also Win7 gives BSOD A5 (0x2001,..).

EDIT2: Now comes the most strange thing ever: With the original DSDT from the Lenovo Flex 10 netbook I can start to full Acpi mode on the Asrock Q1900m board. So, the real problem is not in this DSDT but somewhere in the Bios of the Flex 10.
#2996XPWELL64⇗ @diderius6
I want to hibernate my PC, with acpi.sys it cannot hibernate. Can you make a DSDT table for me and integrate to my bios? Here is my bios link:
⇗ https://dlcdnets.asus.com/pub/ASUS/nb/X555LB/X555LBAS603.zip
#2997diderius6⇗ @XPWELL64

Until now I am not good enough for to enable hibernate in DSDT.
But just now I give the asl.exe tool a new chance for to overwrite DSDT
Dietmar
#2998XPLives
Zitat von ⇗ diderius6 im Beitrag ¶ #2972
ACPI XP SP3 install on Baytrail CPU

I just make a brandnew XP SP3 installations CD for the Asrock Q1900M board (BayTrail).
There I integrate the acpi.sys Debug version 5.1.2600.5512 original from XP SP3 with Hack for Ryzen support.
And I use the STORAHCI driver from @skullteria together with new storport.sys,
because I noticed, that all the Iastor driver make problems on Baytrail chipset.
Ok, I just burned CD and now it installs on the Q1900m Asrock miniboard
with Bay Trail chipset and Valley View GPU.
Strange, that for a motherboard from 2014 you need a hacked acpi,
Dietmar

EDIT1: After txtsetup I got BSOD 0x7B.
Ok, storport.sys was gone as usual. But after that I get again BSOD 0x7B.
The registry entries for the STORAHCI I have to do by hand, I have never seen before.
Now install goes on. This is really funny: The model is good: At once I understand, why I never could
install direct to the netbook Lenovo Flex 10 XP SP3 with setup CD.
With this experience I see, that it will be very very difficult to build a generic Install CD for XP SP3,
that workes on all compis.
On next reboot I got again BSOD 0x7B and I have again to put the entries for STORAHCI by hand into registry.
Now I get the same BSOD as @Doc.Brown . But not, when I chose save boot.
Crazy, I think nobody succeeds to install full Acpi XP SP3 until now on Baytrail chipset.
Yesssa, with disabling everything in Device Manager I come to the normal desktop with full Acpi XP SP3 on Baytrail chipset.
I think, it is really the very first time that this has been done. For example see this blog
⇗ https://ryanvm.net/forum/viewtopic.php?t=10596




   

⇗ @diderius6


Try my Intel Universal SATA driver on XP Pro 64 and test on that Baytrail desktop motherboard Asrock Q1900m.

XP Pro 64-Bit and Server 2003 64-Bit - Universal Intel SATA Controller Driver - XPLIVES64.ZIP

⇗ Windows XP Pro 64-Bit and Server 2003 64-Bit on Modern Hardware

Use a clean XP Pro 64-Bit and do not integrate any other drivers or STORAHCI.  Do not even add any USB 3.0 modded drivers.  Just keep it clean as possible.

The USB 2.0 ports should work on Baytrail with XP.

Only use my storage driver and DK's acpi.sys for first test and let us know the result.

Just integrate my 64-Bit SATA driver only.  And add for acpi.sys use Daniel's recent Z390 acpi.  Don't add anything else.

If DK's acpi does not work try yours after.


Also if can you test to see if any Ivy Bridge or Haswell XP Intel iGPU drivers works on that?  Try standard one and the embedded one.


XPLives
#2999diderius6⇗ @Doc.Brown
I just proved, that the reason in your BSOD  0x0000000a (0x000000B0,0x00000002,0x00000000, xxx)
is only the Iastor driver version 1006
Dietmar

PS: So you have to work with the STORAHCI driver and storport.sys from @skullteria.
This is a hard job.
#3000Doc.BrownI also tried it without Fernando's driver this morning but BSOD first because of the lack of storport and after copy it in system32/drivers the same "IRQL not less or equal" come again ⇗ @diderius6
I try other RSTe linked before,chipset drivers and also nv drivers by nlite but always the same

 

Page 201

#3001diderius6⇗ @Doc.Brown

Nono, you give up too quickly. Build an XP SP3 on another, XP friendly compi ONLY with the STORAHCI driver and storport.sys from ⇗ @skullteria .
This XP will start on Gene XI
Dietmar
#3002Gelip⇗ @Mov AX, 0xDEAD

Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #2378
Again i've played with IOTR resource conflict, i think source of problem is how vga i/o ports is decoding.

Can you patch acpi.sys 5.2.3790.3959 from WinXP x64 please ?

Gelip has attached files to this post
#3003Doc.Brown
Zitat von ⇗ diderius6 im Beitrag ¶ #3001
@Doc.Brown

Nono, you give up too quickly. Build an XP SP3 on another, XP friendly compi ONLY with the STORAHCI driver and storport.sys from @skullteria .
This XP will start on Gene XI
Dietmar


I don't give up my friend,I'm already at it :p
#3004infuscomus⇗ @Doc.Brown

I have a modified XP ISO with all the patches integrated if you want to try it
#3005Doc.Brown
Zitat von ⇗ infuscomus im Beitrag ¶ #3004
@Doc.Brown

I have a modified XP ISO with all the patches integrated if you want to try it


Yes I could make a try,thanks ;)

Edit : always the same BSOD at the same moment with only storahci on z390
#3006infuscomus⇗ @Doc.Brown

I sent you a PM
#3007Doc.BrownThank you :)
#3008XPWELL64⇗ @diderius6
I want you to mod my bios. I integrated dsdt.aml with UEFItool but after flashing mod bios,  Windows 7 gave a BSoD too. The detailed error codes are: 0xA5 0x11 0x08 (in Windows XP).
#3009diderius6⇗ @XPWELL64

This is the "normal" acpi.sys BSOD.
Try the last acpi.sys version from ⇗ @daniel_k

Dietmar

PS: Notebooks are different from normal compis, I just learned:)).
So try different acpi.sys.
#3010Doc.Brown⇗ @infuscomus

Exactly the same BSOD with your XP during devices installation,the truth is deeper with this motherboard it seems
#3011XPWELL64I found some infos about Intel HD 5500 and UHD 620 graphics on Windows 10 igdkmd64.sys but functions are totally different. (I used IDA Pro.)
#3012diderius6⇗ @Doc.Brown

It is one device: Iastor.sys vers 1006
Dietmar
#3013Doc.Brown
Zitat von ⇗ diderius6 im Beitrag ¶ #3012
@Doc.Brown

It is one device: Iastor.sys vers 1006
Dietmar


Is there something to do against that ⇗ @diderius6 ?
Thanks

Edit: i've got an old adaptec SATA2 pcie card,i try
#3014diderius6⇗ @Doc.Brown

Start working XP SP3 on the Gene XI board in Safe Mode (F8).
Copy from the link here storport.sys into windows\system32\drivers.
Copy the extracted folder to your XP c:\.
Via Device Manager go to IDE ATA/ATAPI-Controller
and search for new driver. Direct to the i386 folder of the STORAHCI package
from ⇗ @skullteria and install the driver.
When you restart it will work at once or you have to test different acpi.sys
Dietmar

¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (59)
#3015Mov AX, 0xDEAD
Zitat von ⇗ daniel_k im Beitrag ¶ #2660
@Mov AX, 0xDEAD, nice job with KDNET and thanks for sharing it publicly!
Any plans to work on an x64 version?

Zitat von ⇗ Gelip im Beitrag ¶ #3002
@Mov AX, 0xDEAD
Can you patch acpi.sys 5.2.3790.3959 from WinXP x64 please ?

Sorry, guys, WinXP/2003 x64 is out of my hobbies

 

Page 202

#3016daniel_k
Zitat von ⇗ diderius6 im Beitrag ¶ #2995
@daniel_k
About the DSDT in Bios (Insyde) from Lenovo Flex 10 netbook.
Can it be, that the manufacturer extra put the DSDT away from its normal place in UEFI Bios GUID
C118F50D-391D-45F4-B3D3-11BC931AA56D

The GUID probably has nothing to do with it, seems that it isn't a standard GUID after all, as I couldn't find any reference to it in any UEFI docs.

Zitat
EDIT2: Now comes the most strange thing ever: With the original DSDT from the Lenovo Flex 10 netbook I can start to full Acpi mode on the Asrock Q1900m board. So, the real problem is not in this DSDT but somewhere in the Bios of the Flex 10.


Yeah, that one is really strange.

 
Scope (\_SB)
Device (LPCB)
{
Name (_ADR, 0x001F0000) // _ADR: Address
Scope (\_SB) -> This seems to be wrong, inside a Device and inside it's own scope?!
{
OperationRegion (ILBR, SystemMemory, IBAS, 0x8C)
Field (ILBR, AnyAcc, NoLock, Preserve)
{
Offset (0x08),
PARC, 8,
PBRC, 8,
PCRC, 8,
PDRC, 8,
PERC, 8,
PFRC, 8,
PGRC, 8,
PHRC, 8,
Offset (0x88),
, 3,
UI3E, 1,
UI4E, 1
}

Device (LNKA) -> LNKx are critical devices, if the above is wrong, this should be as well
{
Name (_HID, EisaId ("PNP0C0F")) // _HID: Hardware ID
Name (_UID, One) // _UID: Unique ID
Method (_DIS, 0, Serialized) // _DIS: Disable Device
{
Or (PARC, 0x80, PARC)
}

Method (_PRS, 0, Serialized) // _PRS: Possible Resource Settings
{
Return (PRSA)
}
...



No wonder Insyde BIOS is the worst!

The way the DSDT is written is terrible to read!

I'm sure even the person who wrote can't read it easily.

#3017diderius6Hi,
here is a new acpi.sys just from outer space )!
It is based on the original acpi.sys from XP SP3. The advantage against the 5048 version is,
that you get Symbols from the Microsoft Server for debug for it.
By the way I noticed, that even between the original english acpi.sys versions 5512,
there are differences. So we need to give the SHA-1 number each time,
when we speak about a special version
Dietmar
PS: This acpi.sys has SHA-1 number 4115882444A63465079E5D1C27987CD500E8FB9A



diderius6 has attached files to this post
#3018daniel_kDid some load and restart stability tests with XP SP3 x86 fully patched, clean install. All drivers were installed.

1) Disabled automatic restart on system error

2) Created a shortcut in Startup folder of Start Menu, so system restarts continuosly, with the following command line:

 
shutdown.exe -t 0 -r



3) Ran the shortcut.


Results:

- Original ACPI.SYS (with patched DSDT):

No issues for 1 hour. Really rare, but I've seen the system hang during shutdown or restart when it was about to power off or reset the display. I don't consider this to be critical.


- Modded ACPI.SYS:

Crashes when loading XP after a dozen restart loops, with a stop error A3 - ACPI_DRIVER_INTERNAL. This is a critical error.


- Original or Modded ACPI.SYS with PAE hack:

Crashes ramdonly during XP loading, with a stop error 0A - IRQL_NOT_LESS_OR_EQUAL.

WDF drivers like VIA USB3 don't work, the XHCI controller shows a yellow bang in Device Manager with error code 10. Seriously, this hack sucks, badly written, one can see that there are many differences between XP's hal and 2003's.

Disabling WDF drivers (including framework), decrease the amount of crashes, but don't stop them.

#3019XPWELL64⇗ @diderius6
I believe I can hack Intel HD for Windows XP driver. I found some IDA function strings about Windows 10 UHD Graphics. If I find corresponding function, I can mod it.
#3020daniel_k⇗ @diderius6, I'd recommend that you do the XP loading/restarting test as I did above.
#3021XPWELL64Just graph view the string that you addressed me and at the bottom of the graph I saw a haswell included function.
#3022Doc.BrownBsod A5 with your last acpi.sys even in safe mode ⇗ @diderius6 ;)

Nothing works for me,i've tested all the acpi,only boot in safe mode but now with my last ISO the Microsoft ACPI Compliant embedded controler is well installed
#3023diderius6⇗ @daniel_k

I want to test, but with which XP version?
The compis themselves are different.
On my compi for daily use with Intel X58 from 2009(!) with i920 cpu
I do not have a single BSOD under XP SP3 in 2 years
Dietmar
#3024XPWELL64⇗ @diderius6
Can I use dsdt from Haswell Laptop? Daniel_k used DSDT from Insyde and used in AMI. Which laptop's (or AiO's) dsdt is best for Asus X555LB?
#3025diderius6⇗ @Doc.Brown
Please, can you write the exact BSOD number A5 for test with acpi.sys from outer space?
Dietmar
#3026diderius6⇗ @XPWELL64

This was for me the only second time, that a DSDT from another compi works.
In this crazy case also vice versa change DSDT is possible, with better Acpi compatibility than before(!)
Dietmar

PS: The compis, between you can share DSDT needs to be nearly identic.
But an exact criterium, what makes it possible to share successfull DSDT between them, I dont have.
This brings me back to my old idea, to make a very short, generic DSDT for all compis,
which use XP SP3.
#3027Doc.Brown⇗ @diderius6 of course it's A5 (0x00000003,0x8AA6A6E0,0xC0140008,0x494E495F)

;)
#3028XPWELL64⇗ @diderius6
I integrated N56VJ dsdt into x555lb bios.
#3029Gelip⇗ @skullteria

Zitat von ⇗ skullteria im Beitrag ¶ #2425
Hey, to disable Signature check, need patch ImgpValidateImageHash function inside winload.exe. For me, work these lines:

Original: 8B C8 85 C9 89 4D 08 7D
Replace:  C7 45 08 00 00 00 00 EB

x64(maybe)
Original: 45 33 db 41 3b c3 8b d8
Replace:  C7 45 08 00 00 00 00 EB

Tested on Vista SP2 winload

I try disable sig check in winload.exe from 64-bit Vista beta 5384.4. HEX 45 33 db 41 3b c3 8b d8 is in the file but after change and rebuild PE checksum loader not work even after added DisableIntegrityChecks in BCD

Fortunately, I was able to turn off signature checking in 64-bit files winload.efi and winload.exe from beta longhorn server 16497  - ⇗ How to switch XP over to winload bootloader?

I need help to disable sig check in 64-bit files winload.efi and winload.exe from Vista beta 5384.4

Gelip has attached files to this post
#3030schreiberstein⇗ @daniel_k

Thank you for your HAL.DLL patch for Server 2003 x86.
I can report that it is working fine.

The only downside to running Server 2003 seems to be the version incompatibility with user applications which deny you the installation progress based on some version string.
I would like to fake the version string to Windows XP SP3 but I am not quite sure how to do that.
I attempted to change some strings in HKLM\Software\Microsoft\Windows NT\Current Version
ProductName to Windows XP
CSD Version to Service Pack 3.

But nothing changed in the "System Properties" screen, neither were I able to install the nVidia drivers for Windows XP.
Even XP compatibility mode failed.
It either says "GeForce experience requires Windows XP SP3" or (with compatibility mode) complains that nView, GeForce Experience and the driver could not be installed. And I need the whole driver package so mutli-monitor mode can be properly configured.
I am not sure if it is even possible to completely fake "XPness" to user applications.

Both XP and 2003 USB fails every few reboots. Some devices (One AMD USB 2.0 Hub and AMD USB 3.0) have an error code 10.

Cheers,
schreiberstein

 

Page 203

#3031XPLives
Zitat von ⇗ Gelip im Beitrag ¶ #2993
I follow this thread from the very beginning.
I do not understand why buy modern hardware as we want to use WinXP ???



Because it works.  Use the K.I.S.S. method.
#3032Mov AX, 0xDEAD
Zitat von ⇗ schreiberstein im Beitrag ¶ #3030

I would like to fake the version string to Windows XP SP3 but I am not quite sure how to do that.
I attempted to change some strings in HKLM\Software\Microsoft\Windows NT\Current Version
ProductName to Windows XP
CSD Version to Service Pack 3.

But nothing changed in the "System Properties" screen, neither were I able to install the nVidia drivers for Windows XP.
Even XP compatibility mode failed.
It either says "GeForce experience requires Windows XP SP3" or (with compatibility mode) complains that nView, GeForce Experience and the driver could not be installed.


you need fake kernel32.dll/GetVersionEx too, it return current OS like numbers, 5.1 / 5.2 / xx
#3033dencorso⇗ @daniel_k: Does the hal5687_timer_patch.rar you posted some posts agop just have the timer patch, or does it include the > 4 GiB patch, too?
 

Zitat von ⇗ schreiberstein im Beitrag ¶ #3030
The only downside to running Server 2003 seems to be the version incompatibility with user applications which deny you the installation progress based on some version string.
I would like to fake the version string to Windows XP SP3 but I am not quite sure how to do that.


Try using fcwin2k.exe for it. I think you can learn how to use it by trial and error, but if you want to read more about it, try this thread at msfn:
⇗ https://msfn.org/board/topic/120936-kdw-fcwin2k/

dencorso has attached files to this post
#3034XPLives
Zitat von ⇗ diderius6 im Beitrag ¶ #2972
ACPI XP SP3 install on Baytrail CPU

I just make a brandnew XP SP3 installations CD for the Asrock Q1900M board (BayTrail).
There I integrate the acpi.sys Debug version 5.1.2600.5512 original from XP SP3 with Hack for Ryzen support.
And I use the STORAHCI driver from @skullteria together with new storport.sys,
because I noticed, that all the Iastor driver make problems on Baytrail chipset.
Ok, I just burned CD and now it installs on the Q1900m Asrock miniboard
with Bay Trail chipset and Valley View GPU.
Strange, that for a motherboard from 2014 you need a hacked acpi,
Dietmar

EDIT1: After txtsetup I got BSOD 0x7B.
Ok, storport.sys was gone as usual. But after that I get again BSOD 0x7B.
The registry entries for the STORAHCI I have to do by hand, I have never seen before.
Now install goes on. This is really funny: The model is good: At once I understand, why I never could
install direct to the netbook Lenovo Flex 10 XP SP3 with setup CD.
With this experience I see, that it will be very very difficult to build a generic Install CD for XP SP3,
that workes on all compis.
On next reboot I got again BSOD 0x7B and I have again to put the entries for STORAHCI by hand into registry.
Now I get the same BSOD as @Doc.Brown . But not, when I chose save boot.
Crazy, I think nobody succeeds to install full Acpi XP SP3 until now on Baytrail chipset.
Yesssa, with disabling everything in Device Manager I come to the normal desktop with full Acpi XP SP3 on Baytrail chipset.
I think, it is really the very first time that this has been done. For example see this blog
⇗ https://ryanvm.net/forum/viewtopic.php?t=10596



Zitat von ⇗ diderius6 im Beitrag ¶ #2972
ACPI XP SP3 install on Baytrail CPU

I just make a brandnew XP SP3 installations CD for the Asrock Q1900M board (BayTrail).

Yesssa, with disabling everything in Device Manager I come to the normal desktop with full Acpi XP SP3 on Baytrail chipset.
I think, it is really the very first time that this has been done.



I didn't have enough time to add earlier.  I remember this motherboard from a few years ago. I think I was using a Z68 but fan cooled at the time.

I saw this BayTrail one and was interested because it was fanless and a very low wattage model.

But one thing bugged me was no XP drivers from the website stated.  That and only 1 Dimm slot maxed at 8GB.

So every now and then this motherboard comes up in discussion on forums.   So I may have to buy one to test out.  It seems to be closest to Sandy Bridge era so curiously I always wondered maybe it was XP compatible but at the time I didn't want to waste a lot of money on it.

You see I found out it uses a special CPU soldered to the motherboard.  Then I said #$*!.  I wanted to swap the CPU out and test in my socket 1155.  So not compatible and you can't swap the CPU for another.  Later Haswell Xeon is your best friend and even more lower wattage.

One day... I will test...the Asrock Q1900M for fun.

I found a Baytrail laptop that is fanless from searching a week ago.  It is peaking my interest as I think I can get XP working on it for a real cheap security web cam that won't die from fan death from 24/7 operation.   And if Intel integrated graphics driver can work than the best XP fanless laptop.
#3035dencorso⇗ @schreiberstein: I guess you may find this guide useful, too! ⇗ https://web.archive.org/web/200702120345...in2k3.ziras.de/
#3036XPLives
Zitat von ⇗ schreiberstein im Beitrag ¶ #2973
I added the Creative Audigy 2 ZS to my system via a PCI-E to PCI adapter and it works flawlessly.
I removed the AMD/ATI card from the system. Only the GeForce GTX 780 is now in there (aside from the Intel IGPU)
The HAL patch made my system a lot more responsive. Very happy about it.
USB works quite reliably as well. Mouse and Keyboard seem to work after every reboot.
I added "/PAE" to boot.ini, but I don't get more than 904MB RAM (64MB MIN ; 256MB MAX shared RAM for Intel IGPU in BIOS)

@diderius6
I wonder if there is a way to get more than 4GB (like on Server 2003) with your "halplusintelppmXPSP3.rar" hack bundle?
Like the file "Windows_XP_128GB_double_pae_addon_final_byDibya.7z.zip" from @infuscomus suggests - but it has its own patched HAL.
Seems like this is the only way I could access more than 904MB RAM.
I could live with 4GB, but 904MB is quite small. I can feel it swapping when using 4 chrome tabs.


@XPLives
PCI Data Acquisition and Signal Processing Controller <-- I have only ONE of these devices

PCI bus 0, device 18, function 0
The drivers for this device are not installed. (Code 28)

Device Instance ID: PCI\VEN_8086&DEV_A379&SUBSYS_88881458&REV_10\3&11583659&0&90

Hardware IDs:
PCI\VEN_8086&DEV_A379&SUBSYS_88881458&REV_10
PCI\VEN_8086&DEV_A379&SUBSYS_88881458
PCI\VEN_8086&DEV_A379&CC_118000
PCI\VEN_8086&DEV_A379&CC_1180


Compatible IDs:
PCI\VEN_8086&DEV_A379&REV_10
PCI\VEN_8086&DEV_A379
PCI\VEN_8086&CC_118000
PCI\VEN_8086&CC_1180
PCI\VEN_8086
PCI\CC_118000
PCI\CC_1180


Matching Device ID:
[EMPTY]

I have also started to look into the NTVDM.EXE problem - attached is my output from WinDbg.
It seems that there is something wrong internally that is causing that.

For now, I am surprised at how stable Windows XP is. I once counted more than 5 hours of uptime, benchmarking with several 3DMark versions, playing music on XMPlay
Using the driver from daniel_k.
All important hardware works on Apple Mac OS X 10.14 Mojave, Windows 10, 7, XP and 2003.
The Creative Audigy even works after sleep/standby on Mac OS X using a patched kx Project audio driver kext.
My goal is it to NEVER have to do any preparations before dual booting another OS.
I don't want to plug my devices into different ports, change BIOS settings, etc.
As of now, this has been accomplished. I only have to press F12 at my bootscreen to bring up the boot menu and I am all set.

Now I only need to find a way to place the PCI card in the hard drive bay (right) of my case. All these riser card cables (including the bizarre USB3 type one) are so stiff.
I could put another PCI card into the riser card. It has two slots. #SoManyPossibilities

Cheers,
schreiberstein



   
⇗ @schreiberstein


Zitat von ⇗ schreiberstein im Beitrag ¶ #2973

I added "/PAE" to boot.ini, but I don't get more than 904MB RAM (64MB MIN ; 256MB MAX shared RAM for Intel IGPU in BIOS)

PCI Data Acquisition and Signal Processing Controller


What are the Min and Max settings for the Intel Shared Ram.  It can't be 64MB MIN and 256MB MAX.

Make sure you are dynamically sharing the video memory.  You should be able to set it to a fixed value.
Usually Minimum I've seen should be 128MB and Max either 1.5GB to 2.5GB range.

Also I would try to disable the iGPU but for testing purposes here's what I recommend you do.

Remove the graphics card and make sure the BIOS default video output for iGPU.

Then test minimum shared video memory and boot into XP and see what the value is for Total Memory.

Then reboot go to BIOS and set to MAX value 1.5GB+ and boot into XP again and see what the value is for Total Memory.

If it changes or not let me know.  If not most likely you there is some other option not set correctly.

Also are you planning to completely disable the iGPU when using MAC OS and XP?  I would recommend you disable it and force PCIe as primary video card and disable any shared MultiDisplay output options you see.
#3037schreiberstein⇗ @dencorso
Oh my goodness!
I have not seen this guide in 10 years!  Thank you! So much nostalgia.
Back in 2006, I used this guide to convert my Server 2003 system into a desktop. So much nostalgia.
The "Win2003v146.exe" Win2003 Optimize Tool from kood.org and Winfuture XP Iso Builder get the job done more efficiently, from my experience.

I know the fcwin2k.exe tool from blackwingcat, but thought that it would only work for Win2000 systems.
(I spent a good amount of time in ~2015-2016 with this Windows 2000 modding stuff, hehe)
Thanks for the hint! I will definitely check it out again!

Cheers,
schreiberstein
#3038schreiberstein⇗ @XPLives

Thank you.
I will experiment with Intel HD settings as well.
It actually is 64MB MIN and 256MB MAX

I have nearly the exact same BIOS settings as found in this thread:
⇗ https://www.tonymacx86.com/threads/succe...-rx-580.267551/

> Internal Graphics → Enabled
> DVMT Pre-Alloc → 64M (May not be present in BIOS F6 and later.)
> DVMT Total Gfx Mem → 256M (May not be present in BIOS F6 and later.)

--> Except that I have CSM mode activated for obvious reasons.
The Intel iGPU has very significant benefits on Mac OS X. It will be used as rendering accelerator and is required for compatibility on certain emulated machine types (otherwise JPEGs won't be rendered at all)

I have read somewhere that this has to do with some kind of memory hole for "reserved devices".

Given that I can access the entire amount of RAM just fine on Windows Server 2003, there should probably be a way to achieve that on XP as well. Or maybe simply get 2003 to pretend it is XP, hehe.

Cheers,
schreiberstein
#3039diderius6Does this Windbg print means, that my for XP SP3 hacked driver igxpmp32.sys is loaded and started?
Dietmar

Dumping IopRootDeviceNode (= 0x8a1b3ee8)
DevNode 0x8a1b3ee8 for PDO 0x8a1b3020
Parent 0000000000 Sibling 0000000000 Child 0x8a1b3a88
InstancePath is "HTREE\ROOT\0"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
StateHistory[04] = DeviceNodeEnumerateCompletion (0x30d)
StateHistory[03] = DeviceNodeStarted (0x308)
StateHistory[02] = DeviceNodeEnumerateCompletion (0x30d)
StateHistory[01] = DeviceNodeStarted (0x308)
StateHistory[00] = DeviceNodeUninitialized (0x301)
StateHistory[19] = Unknown State (0x0)
StateHistory[18] = Unknown State (0x0)
StateHistory[17] = Unknown State (0x0)
StateHistory[16] = Unknown State (0x0)
StateHistory[15] = Unknown State (0x0)
StateHistory[14] = Unknown State (0x0)
StateHistory[13] = Unknown State (0x0)
StateHistory[12] = Unknown State (0x0)
StateHistory[11] = Unknown State (0x0)
StateHistory[10] = Unknown State (0x0)
StateHistory[09] = Unknown State (0x0)
StateHistory[08] = Unknown State (0x0)
StateHistory[07] = Unknown State (0x0)
StateHistory[06] = Unknown State (0x0)
StateHistory[05] = Unknown State (0x0)
Flags (0x00000131) DNF_MADEUP, DNF_ENUMERATED,
DNF_IDS_QUERIED, DNF_NO_RESOURCE_REQUIRED
DisableableDepends = 3 (from children)
1: kd> !lmi igxpmp32
Loaded Module Info: [igxpmp32]
Module: igxpmp32
Base Address: b92c5000
Image Name: igxpmp32.sys
Machine Type: 332 (I386)
Time Stamp: 52eae6bc Fri Jan 31 00:56:44 2014
Size: 277c00
CheckSum: 27acd4
Characteristics: 210e
Debug Data Dirs: Type Size VA Pointer
CODEVIEW 84, 20be60, 20be60 RSDS - GUID: {F23FF9B8-E2C4-44E8-8D55-1CBFFD969526}
Age: 1, Pdb: d:\ccViews\autobuild1_BR-1401-003D_14.56_Snapshot\gfx_Development\dump32\igfx\xp\gtune\AIM3Lib\igxpmp32.pdb
Image Type: MEMORY - Image read successfully from loaded memory.
Symbol Type: NONE - PDB not found from symbol server.
Load Report: no symbols loaded
1: kd> .reload igxpmp32.sys
1: kd> !devnode 0 1 igxpmp32
Dumping IopRootDeviceNode (= 0x8a1b3ee8)

Dumping IopRootDeviceNode (= 0x8a1b3ee8)
DevNode 0x8a1b3ee8 for PDO 0x8a1b3020
InstancePath is "HTREE\ROOT\0"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)

#3040XPLives
Zitat von ⇗ schreiberstein im Beitrag ¶ #3038
@XPLives

Thank you.
I will experiment with Intel HD settings as well.
It actually is 64MB MIN and 256MB MAX

I have nearly the exact same BIOS settings as found in this thread:
⇗ https://www.tonymacx86.com/threads/succe...-rx-580.267551/

> Internal Graphics → Enabled
> DVMT Pre-Alloc → 64M (May not be present in BIOS F6 and later.)
> DVMT Total Gfx Mem → 256M (May not be present in BIOS F6 and later.)

--> Except that I have CSM mode activated for obvious reasons.
The Intel iGPU has very significant benefits on Mac OS X. It will be used as rendering accelerator and is required for compatibility on certain emulated machine types (otherwise JPEGs won't be rendered at all)

I have read somewhere that this has to do with some kind of memory hole for "reserved devices".

Given that I can access the entire amount of RAM just fine on Windows Server 2003, there should probably be a way to achieve that on XP as well. Or maybe simply get 2003 to pretend it is XP, hehe.

Cheers,
schreiberstein

   
⇗ @schreiberstein

Okay I had my integrated Intel HD Graphics disabled in the BIOS.
Now that I re-enabled them.

Under [Chipset]
Internal Graphics → Enabled

DVMT Pre-Alloc
64MB Default, (Range 32MB-1024MB)

DVMT Total Gfx Mem
256MB Default, (Range 128MB, 256MB, MAX)

The MAX may be some unknown value definitely greater than 256MB.  Since my BIOS does not show what the MAX is it must be based on how much installed memory detected and the BIOS probably has a set value I'm guessing.  In SkyLake I think it was was 1.5GB.  So it's possible the MAX on Coffee Lake increased higher than 1.5GB and possibly 2.0GB to 2.5GB.  Since most people will not be installing this on XP they figured most people will be have installed 32GB or 64GB of RAM for most users so I would guess the MAX could be 2.5GB or 3.0GB?  Maybe someone here like Lost_N_BIOS could figure out what this value for MAX is for your motherboard?

That is why we are running these tests.

I understand you need the iGPU for MAC.  But doesn't the GTX 780 already do a better job of that?  Or am I missing something why would an underpowered integrated IGPU be more powerful than your GTX 780?  Why wouldn't the GTX 780 be taking over these tasks?

What exactly are you referring to by "emulated machine types"?

Also in another post you said "constellation" what did you mean by this?

You might want to hit ENTER on the DVMT Pre-Alloc and a new Menu list should appear with more values to choose from.

You can probably choose 32MB here which is the lowest on mine.

DVMT Total Mem could be set to 128MB which is the lowest on mine.

You can ask others here who have 300 Series MotherBoard what their settings/ranges are to compare.


[Test #1]
So basically try
32MB - Pre
128MB - Total


Boot into XP check System Properties, General -- Do A Snapshot
Check Task Manager, Performance -- Do A Snapshot

Then Reboot Enter BIOS

[Test #2]
Try again
1024MB - Pre
MAX - Total -- I'm guessing this should use 1024MB or whatever the limit could be given the installed RAM.

Boot into XP check System Properties, General -- Do A Snapshot
Check Task Manager, Performance -- Do A Snapshot


Hopefully these two tests alter the Total Memory shown/reported.

Let's see what happens and of course final comparison test.

[Test #3]
Disable Internal Graphics in BIOS, Power Off

Install GTX 980, Power On

Boot into XP check System Properties, General -- Do A Snapshot
Check Task Manager, Performance -- Do A Snapshot

If you can upload all Snapshots and label each.

Test 1A
Test 1B

Test 2A
Test 2B

Test 3A
Test 3B

You could Test #4 and Enable the Integrated Graphics using Test #2 Settings and with GTX 980 installed.
Test 4A
Test 4B


BTW, I got a MiniMAC coming so maybe this XP Hackintosh Project of yours could be simplified.

Hopefully you got some time to answer some of those previous MAC related questions I sent you prior.  The ones you don't know or can't test yet let me know.
#3041schreiberstein⇗ @XPLives

I have just attempted booting with the iGPU completely disabled...
Now I had 984MB vs 904MB of RAM.
So no, the iGPU does not take away THAT much RAM.

nVidia cards are not optimized for Apple Mac OS X. That is why Apple uses ATI/AMD exclusively these days.

"emulated machine types" - on a hackintosh, you can choose a Mac hardware model. (such as iMac, MacMini, etc. and you specify their model identifier)
Mac OS X behaves differently on different platform definitions (concerning power management, utilization of dedicated GPUs, even down to the number of available USB ports)
Certain models expect the iGPU to be present as they offload certain tasks onto the iGPU. The iGPU is actually very efficient for something like JPEG rendering and other kinds of acceleration, as far as I have read.
You may find more information on that in the aforementioned tonymacx86 thread concerning the Gigabyte Z390 Designare motherboard.
Especially professional applications like FinalCut Pro X rely on the iGPU.
It would be a waste not to utilize it. Do I need it? I actually tried to disable it and then my system was unable to display JPEGs and to perform other kinds of OS X specific magic like "quick look" previews of movies and images.

And since the problem seems to lie somewhere else, I am not going to hate on the Intel HD graphics component of my system.
It certainly is not using 3GB of RAM, otherwise I would notice that on Server 2003 as well. But there I had 31+GB available.
It seems like Windows XP is unable to cope with something else, some small reserved portion of RAM. And instead of addressing the remaining RAM, it just quits at 904MB and calls it a day. But I have no clue how Windows XP memory mangement and detection works.

With "constellation" I was referring to the 128GB ntoskrnl.exe and hal.dll hack: It had very obvious side effects on the system. Issues with I/O, stuttering, noticeable lag when navigating through explorer.exe, etc. All things that were not present on XP on 904MB and Server 2003 with 32GB PAE.

Once I got either XP or Server 2003 running a bit more reliably, I will write a guide for my motherboard - since it bridges so many gaps. Windows XP support, 7 support, 10 support, Mac OS X support, ...
It is also the last architecture that will be able to run Mac OS X 10.14 Mojave without incompatibilities - hence the last version that runs 32-Bit Mac apps from the mid 2000s natively.

I hope this answers your questions, gentleman. :-)

Cheers,
schreiberstein


EDIT: I will do the testing procedures that you specified. Perhaps the amount of available RAM might still change. Will keep you posted.
#3042diderius6I do not find the exact place in igxpmp32.sys (see attached file) where this BSOD happens
Dietmar

Microsoft (R) Windows Debugger Version 6.12.0002.633 X86
Copyright (c) Microsoft Corporation. All rights reserved.

Opened \\.\com1
Waiting to reconnect...
Connected to Windows XP 2600 x86 compatible target at (Mon Oct 14 00:57:16.890 2019 (UTC + 2:00)), ptr64 FALSE
Kernel Debugger connection established.
WARNING: Inaccessible path: 'C:\WinDDK\7600.16385.1\src\openfabricsall\nvme13\nvme\objchk_wnet_x86\i386'
Symbol search path is: C:\WinDDK\7600.16385.1\src\openfabricsall\nvme13\nvme\objchk_wnet_x86\i386;SRV*c:\symbols
*⇗ http://msdl.microsoft.com/download/symbols;C:\symbols
Executable search path is: C:\localsymbols
Windows XP Kernel Version 2600 MP (1 procs) Free x86 compatible
Built by: 2600.xpsp.080413-2111
Machine Name:
Kernel base = 0x804d7000 PsLoadedModuleList = 0x8055d720
System Uptime: not available
WARNING: Inaccessible path: 'C:\WinDDK\7600.16385.1\src\openfabricsall\nvme13\nvme\objchk_wnet_x86\i386'
Mon Oct 14 00:57:19.218 2019 (UTC + 2:00): MM: Loader/HAL memory block indicates large pages cannot be used for 80D86000->821DEFFF
Mon Oct 14 00:57:19.218 2019 (UTC + 2:00):
Mon Oct 14 00:57:19.218 2019 (UTC + 2:00): MM: Disabling large pages for all ranges due to overlap
Mon Oct 14 00:57:22.906 2019 (UTC + 2:00): AhciHwFindAdapter finishing
Mon Oct 14 00:57:33.765 2019 (UTC + 2:00):
*** Fatal System Error: 0x00000050
(0xB92602C0,0x00000000,0xB92F6548,0x00000000)

Mon Oct 14 00:57:33.796 2019 (UTC + 2:00): Break instruction exception - code 80000003 (first chance)

A fatal system error has occurred.
Debugger entered on first try; Bugcheck callbacks have not been invoked.

A fatal system error has occurred.

Connected to Windows XP 2600 x86 compatible target at (Mon Oct 14 00:57:34.031 2019 (UTC + 2:00)), ptr64 FALSE
Loading Kernel Symbols
...................................
Loading User Symbols

*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

Use !analyze -v to get detailed debugging information.

BugCheck 50, {b92602c0, 0, b92f6548, 0}

*** ERROR: Module load completed but symbols could not be loaded for igxpmp32.sys
*** No owner thread found for resource 8055b4e0
*** No owner thread found for resource 8055b4e0
*** No owner thread found for resource 8055b4e0
*** No owner thread found for resource 8055b4e0
Probably caused by : igxpmp32.sys ( igxpmp32+31548 )

Followup: MachineOwner
---------

nt!RtlpBreakWithStatusInstruction:
8052b5dc cc int 3
1: kd> !analyze -v
*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

PAGE_FAULT_IN_NONPAGED_AREA (50)
Invalid system memory was referenced. This cannot be protected by try-except,
it must be protected by a Probe. Typically the address is just plain bad or it
is pointing at freed memory.
Arguments:
Arg1: b92602c0, memory referenced.
Arg2: 00000000, value 0 = read operation, 1 = write operation.
Arg3: b92f6548, If non-zero, the instruction address which referenced the bad memory
address.
Arg4: 00000000, (reserved)

Debugging Details:
------------------

*** No owner thread found for resource 8055b4e0
*** No owner thread found for resource 8055b4e0
*** No owner thread found for resource 8055b4e0
*** No owner thread found for resource 8055b4e0

READ_ADDRESS: b92602c0

FAULTING_IP:
igxpmp32+31548
b92f6548 8b88c0821000 mov ecx,dword ptr [eax+1082C0h]

MM_INTERNAL_CODE: 0

DEFAULT_BUCKET_ID: DRIVER_FAULT

BUGCHECK_STR: 0x50

PROCESS_NAME: System

TRAP_FRAME: b9d13428 -- (.trap 0xffffffffb9d13428)
ErrCode = 00000000
eax=b9158000 ebx=e1394b70 ecx=00000001 edx=bb000000 esi=89ce30f0 edi=b9d1367c
eip=b92f6548 esp=b9d1349c ebp=b9d13530 iopl=0 nv up ei ng nz na pe nc
cs=0008 ss=0010 ds=0023 es=0023 fs=0030 gs=0000 efl=00010286
igxpmp32+0x31548:
b92f6548 8b88c0821000 mov ecx,dword ptr [eax+1082C0h] ds:0023:b92602c0=????????
Resetting default scope

LOCK_ADDRESS: 8055b560 -- (!locks 8055b560)
NTSDEXTS: Unable to resolve ntdll!RtlCriticalSectionList
NTSDEXTS: Please check your symbols

PNP_TRIAGE:
Lock address : 0x8055b560
Thread Count : 1
Thread address: 0x8a18f3c8
Thread wait : 0x26b

LAST_CONTROL_TRANSFER: from 804f8df9 to 8052b5dc

STACK_TEXT:
b9d12f5c 804f8df9 00000003 b92602c0 00000000 nt!RtlpBreakWithStatusInstruction
b9d12fa8 804f99e4 00000003 00000000 c05c9300 nt!KiBugCheckDebugBreak+0x19
b9d13388 804f9f33 00000050 b92602c0 00000000 nt!KeBugCheck2+0x574
b9d133a8 8052036a 00000050 b92602c0 00000000 nt!KeBugCheckEx+0x1b
b9d13410 80544578 00000000 b92602c0 00000000 nt!MmAccessFault+0x9a8
b9d13410 b92f6548 00000000 b92602c0 00000000 nt!KiTrap0E+0xd0
WARNING: Stack unwind information not available. Following frames may be wrong.
b9d13530 b92f2c6e 89ce3350 e14783b8 290a8000 igxpmp32+0x31548
b9d13548 b952ce39 89ce3350 8a06dde0 000000dc igxpmp32+0x2dc6e
b9d1367c b92c89cd 89ce3350 00000000 00000000 igxpmp32+0x267e39
b9d1369c b92c0318 89ce3350 00000000 00000000 igxpmp32+0x39cd
b9d138a0 b92c0c9a 89e82a20 89f2bc00 89f2bc08 VIDEOPRT!VideoPortFindAdapter2+0x3ec
b9d138cc b92bac41 89e82a20 89f2bc00 89f2bc08 VIDEOPRT!VideoPortFindAdapter+0x7c
b9d13a38 804ef18f 89ce3038 8a0559f0 b9d13ab4 VIDEOPRT!pVideoPortPnpDispatch+0x6ad
b9d13a48 80592b63 b9d13ab4 8a16f3d8 00000000 nt!IopfCallDriver+0x31
b9d13a74 80592be1 89ce3038 b9d13a90 00000000 nt!IopSynchronousCall+0xb7
b9d13ab8 804f61ea 8a16f3d8 89f54960 00000001 nt!IopStartDevice+0x4d
b9d13ad4 8059229b 8a16f3d8 89f54901 00000000 nt!PipProcessStartPhase1+0x4e
b9d13d2c 8059276e 8a1b3ee8 00000001 00000000 nt!PipProcessDevNodeTree+0x1db
b9d13d54 804f6996 00000003 8055b5c0 8056485c nt!PiProcessStartSystemDevices+0x3a
b9d13d7c 8053876d 00000000 00000000 8a18f3c8 nt!PipDeviceActionWorker+0x170
b9d13dac 805cff64 00000000 00000000 00000000 nt!ExpWorkerThread+0xef
b9d13ddc 805460de 8053867e 00000001 00000000 nt!PspSystemThreadStartup+0x34
00000000 00000000 00000000 00000000 00000000 nt!KiThreadStartup+0x16


STACK_COMMAND: kb

FOLLOWUP_IP:
igxpmp32+31548
b92f6548 8b88c0821000 mov ecx,dword ptr [eax+1082C0h]

SYMBOL_STACK_INDEX: 6

SYMBOL_NAME: igxpmp32+31548

FOLLOWUP_NAME: MachineOwner

MODULE_NAME: igxpmp32

IMAGE_NAME: igxpmp32.sys

DEBUG_FLR_IMAGE_TIMESTAMP: 52eae6bc

FAILURE_BUCKET_ID: 0x50_igxpmp32+31548

BUCKET_ID: 0x50_igxpmp32+31548

Followup: MachineOwner
---------

1: kd> lm
start end module name
804d7000 806e5000 nt (pdb symbols) c:\symbols\ntkrpamp.pdb\7D6290E03E32455BB0E035E38816124F1\ntkrpamp.pdb
806e5000 80705d00 hal (deferred)
b91d8000 b9235f00 update (deferred)
b9236000 b9258700 ks (deferred)
b9281000 b92b0e80 rdpdr (deferred)
b92b1000 b92c4f00 VIDEOPRT (pdb symbols) c:\symbols\videoprt.pdb\66CB8EA979A742EABCB14A11545D6EBE1\videoprt.pdb
b92c5000 b953cc00 igxpmp32 (no symbols)
b9585000 b959eb80 Mup (deferred)
b959f000 b95cb980 NDIS (deferred)
b95cc000 b9658600 Ntfs (deferred)
b9659000 b966f880 KSecDD (deferred)
b9670000 b9681f00 sr (deferred)
b9682000 b96a1b00 fltMgr (deferred)
b96a2000 b96e2000 storport (deferred)
b96e2000 b9707a00 dmio (deferred)
b9708000 b9726d80 ftdisk (deferred)
b9727000 b9737a80 pci (deferred)
b9738000 b97a6480 ACPI (deferred)
b98a8000 b98b1300 isapnp (deferred)
b98b8000 b98c2580 MountMgr (deferred)
b98c8000 b98d5200 VolSnap (deferred)
b98d8000 b98e5000 storahci (deferred)
b98e8000 b98f0e00 disk (deferred)
b98f8000 b9904180 CLASSPNP (deferred)
b9948000 b9954f00 i8042prt (deferred)
b9958000 b9961e00 intelppm (deferred)
b9968000 b9971f00 termdd (deferred)
b9b28000 b9b2cd00 PartMgr (deferred)
b9b58000 b9b5e280 kbdclass (deferred)
b9b60000 b9b65c00 mouclass (deferred)
b9cb8000 b9cbb000 BOOTVID (deferred)
b9d60000 b9d63c80 mssmbios (pdb symbols) c:\symbols\mssmbios.pdb\9940673F3B9A4BD682DF9D96A12A355C1\mssmbios.pdb
b9da8000 b9da9b80 kdcom (deferred)
b9daa000 b9dab100 WMILIB (deferred)
b9dac000 b9dad700 dmload (deferred)
b9db4000 b9db5100 swenum (deferred)

diderius6 has attached files to this post
#3043XPLives
Zitat von ⇗ schreiberstein im Beitrag ¶ #3041
@XPLives

I have just attempted booting with the iGPU completely disabled...
Now I had 984MB vs 904MB of RAM.
So no, the iGPU does not take away THAT much RAM.

nVidia cards are not optimized for Apple Mac OS X. That is why Apple uses ATI/AMD exclusively these days.

"emulated machine types" - on a hackintosh, you can choose a Mac hardware model. (such as iMac, MacMini, etc. and you specify their model identifier)
Mac OS X behaves differently on different platform definitions (concerning power management, utilization of dedicated GPUs, even down to the number of available USB ports)
Certain models expect the iGPU to be present as they offload certain tasks onto the iGPU. The iGPU is actually very efficient for something like JPEG rendering and other kinds of acceleration, as far as I have read.
You may find more information on that in the aforementioned tonymacx86 thread concerning the Gigabyte Z390 Designare motherboard.
Especially professional applications like FinalCut Pro X rely on the iGPU.
It would be a waste not to utilize it. Do I need it? I actually tried to disable it and then my system was unable to display JPEGs and to perform other kinds of OS X specific magic like "quick look" previews of movies and images.

And since the problem seems to lie somewhere else, I am not going to hate on the Intel HD graphics component of my system.
It certainly is not using 3GB of RAM, otherwise I would notice that on Server 2003 as well. But there I had 31+GB available.
It seems like Windows XP is unable to cope with something else, some small reserved portion of RAM. And instead of addressing the remaining RAM, it just quits at 904MB and calls it a day. But I have no clue how Windows XP memory mangement and detection works.

With "constellation" I was referring to the 128GB ntoskrnl.exe and hal.dll hack: It had very obvious side effects on the system. Issues with I/O, stuttering, noticeable lag when navigating through explorer.exe, etc. All things that were not present on XP on 904MB and Server 2003 with 32GB PAE.

Once I got either XP or Server 2003 running a bit more reliably, I will write a guide for my motherboard - since it bridges so many gaps. Windows XP support, 7 support, 10 support, Mac OS X support, ...
It is also the last architecture that will be able to run Mac OS X 10.14 Mojave without incompatibilities - hence the last version that runs 32-Bit Mac apps from the mid 2000s natively.

I hope this answers your questions, gentleman. :-)

Cheers,
schreiberstein


EDIT: I will do the testing procedures that you specified. Perhaps the amount of available RAM might still change. Will keep you posted.


   
⇗ @schreiberstein

I hope you can try those BIOS settings not just DISABLED only.

You should check if your BIOS shows the Shared Video Memory Size RANGE as mine does.  Did you try hitting ENTER on that option to see if it provides a window of memory sizes?

I did more testing and I found some interesting results which I had hoped you had done by now.

The most memory I could get using Server 2003 /NOPAE which simulates disabling PAE also reflects a similar enough memory cut off that XP SP2/SP3 does.

Using both my 1GB and 2GB PCIe video cards results in the same maximum OS memory free
3.21GB - I see this on my Ivy Bridge as well so this is consistent.  Although my current Ivy Bridge is showing 3.44GB max memory in XP because it is using only 32MB.


[3.16GB] - Intel HD Graphics only - no PCIe card
DVMT Pre
32MB
DVMT Total
128MB


[2.91GB] - Intel HD Graphics only with PCIE card
DVMT Pre
32MB
DVMT Total
128MB

The PCIe card when installed uses up 0.25GB of memory.

[1.94GB] - Intel HD Graphics with PCIE card
DVMT Pre
1024MB
DVMT Total
MAX MB

As you can see 0.97 GB of memory was used setting it to 1024MB on mine.

1.94GB vs your 0.9GB? looks very similar about 1GB difference showing signals to me they might have increased your MAX VIDEO RAM setting to 2048MB which is why you are getting 904MB which looks exactly close to 1.0GB added.

Hopefully you can provide all 8 snapshots for me to compare.  You shouldn't give up and skip to the end after disabling the Integrated Graphics.  Even on Ivy Bridge the Intel HD Graphics does not disable with just one option I found.  Some other options keep it enabled.  And in certain causes if you want to use just the video card installed and no iGPU, you have to set the Memory Shared to AUTO and force PCIe slot as Primary video output.

Although I have a theory is either your BIOS is buggy or there is another setting you forgot to disable.  Some BIOS have a MultiDisplay setting and without being in front of your computer to examine all the BIOS options it's hard for me to locate this.  Also disabling the Intel iGPU you still have to set Primary Video output to a PCIe card remove any MultiDisplay sharing sometimes uses a different name on other motherboards.

Now I know this isn't going be favorable to you to even disable it but since you do require it for the MAC OS graphics emulation.  But you never confirmed if it popped up further Memory Size range settings for your integrated graphics like it does on mine.  If your BIOS doesn't show you a range from 32MB to 1024MB or 2048MB possibly in your BIOS (my guess).  Then you have no other option and should choose to use Server 2003 modded to appear as XP, stick with XP but using a large Ramdrive with your pagefile stored on it, go back to XP SP0/SP1 if your programs work fine on the older versions, trying to flash back to the earliest BIOS version for your motherboard (maybe it uses less max memory or has more options that got removed), contacting your MB manufacturer and filing a bug/complaint case so it can be fixed.  Since your is a Z390 it's still the latest and more likely to get support from them to fix it now properly.  Or you can try a Z370 motherboard to see if the same thing occurs if you want to stay on the octacore which I assume you paid a lot like me and unlikely to return or sell used for a loss.  Maybe the Z390 MB lineup is buggy?  I know Intel rushed it to get the i9-9900K out so only you can report the problem to get it fixed by Gigabyte before they close their support window.  This memory issue will not be fixed by ACPI modding as it is not related.

Worst but most compatible solution is go back to Sandy Bridge / Ivy Bridge if you want the easiest Hackintosh XP setup.   At least everything works for XP and Hackintosh pretty much out of the box it seems.  Even Gelip claims he used a laptop with Intel HD Graphics 3000 - Sandy Bridge era and the integrated graphics shared memory can be set to 32MB which is the best I've seen on a desktop.  I'm not sure if the Laptop BIOS has this kind of refinement or dynamically allocated shared video memory.  I do have a Sandy Bridge laptop somewhere here I might check.  But most laptops I've seen have less options than desktops and are usually a fixed setting or dynamically allocated making it harder to gain more OS memory in XP when using integrated graphics.  One possible fix I had thought about was modding the BIOS so the memory it used was above the 4.00GB region so XP gets the max memory possible which probably is 3.47->3.50GB on SP2/SP3.

Broadwell Z97 might also be another option but I'm uncertain if the iGPU compatibility for Hackintosh is fully supported.   This you probably know or read about and can comment.

The next step up I'd probably suggest for still maintaining ACPI XP Compatibility is the X99 but since you made the comment that your iGPU is required for rendering despite using an internal graphics card and X99 I've just checked and all CPUs do not have any iGPU which in my opinion is a benefit since I usually will go with an internal PCIe card if I can since anything past Ivy Bridge the XP driver support stopped.  So this leaves you skipping to SkyLake/Coffee Lake as a possible solution if your Z390 BIOS cannot be patched by Gigabyte or by someone here if you wanted to use the Intel HD 530 Graphics for your Hackintosh which I believe on my SkyLake the Max Video could be set to 1.5GB shared video memory and isn't buggy.

I fell asleep yesterday as I was testing my own Z370 the OS memory reported for my settings and had time to read you gave up your testing after disabling the integrated graphics so I could not compare the actual testing to mine as I wanted to see which would confirm if your BIOS is defective.  If you can finish those tests it would be helpful.

Also is there another graphics card from nVidia or AMD that is the most compatible with Mojave or any earlier MAC OS X?  I seem to recall some earlier Macs used GeForce 9 series graphics cards wouldn't those work better than the Intel IGPU for rendering?

Don't Give Up.

Chuse.
#3044Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #3042
I do not find the exact place in igxpmp32.sys (see attached file) where this BSOD happens
Probably caused by : igxpmp32.sys ( igxpmp32+31548 )
...
FAULTING_IP:
igxpmp32+31548
b92f6548 8b88c0821000    mov     ecx,dword ptr [eax+1082C0h]
....
b92c5000 b953cc00   igxpmp32   (no symbols)           


igxpmp32 PE image maped to b92c5000, fault opcode at b92f6548 => offset 31548
in Disassembler add this offset to image base (take from header) and you get fault adress
#3045Mov AX, 0xDEAD
1) If ((M64L == Zero)) / If (LEqual (M64L, Zero)) in _CRS of PCI0
M64L is declared as external and stored in one of SSDTs as 64-bit field:

Field (SANV, AnyAcc, Lock, Preserve)
{
...
M64L, 64,
...
}


v5048 set first argument M64L as Buffer(wtf?) and this is wrong, it has ACPI 1.0 LEqual implementation and can compare only "Integer vs Integer"

2) NMAS = (NHLA + (NHLL - One)) / Add (NHLA, Subtract (NHLL, One), NMAS) in _INI of HDA Audio
Tricky expression, in one operation SUB + ADD on tree args, NHLL = 32b field, NHLA = 64b field, One - 64bit internal Integer
again, v5048 set first arg NHLA as Buffer and then try to sub/add integers, very dumb :)

In both cases we have 64bit field-as-argument and probably acpi.sys has bug with understand this thing

 

Page 204

#3046diderius6⇗ @Mov AX, 0xDEAD
I found this place via Ida Pro at
.text:10031548                 mov     ecx, [eax+1082C0h]
But what happens there, is not clear for me.
Windbg tells, that at this adress is
mov ecx,dword ptr [eax+1082C0h]
this is not the same???
Dietmar

EDIT: May be, that Ida "dword ptr" just cancels. But even then I do not understand, wherin the error is.
What should be moved here to ecx ?
The adress, which is build is eax+1082C0h = b92602c0.
This is below the adress, from where the the driver starts. Is this the reason?
#3047kukonosau⇗ @diderius6
How to install XPx64 with modify acpi.sys? BSOD. XP started with any moments.
#3048diderius6⇗ @kukonosau

On Ryzen to install XP 64 is hard work and XP 64 is unstable on Ryzen platform
Dietmar
#3049kukonosau⇗ @diderius6
Yes, it is unstable!!! BSOD everywhere: in our starting or in our working! But what is motherboard resources in Windows XP on Ryzen? Hal.dll and so on needed change in modify files?
#3050diderius6⇗ @kukonosau

Which XP you mean: XP SP3 32bit, or XP 64?

Dietmar

PS: On Ryzen board, no need to change hal.dll,
the timer error happens only on newer Intel boards.
#3051kukonosau⇗ @diderius6
Motherboard resources in all system Windows XP. BSOD in Windows XP SP2 x64. It is unstable working.
#3052Andalu
Zitat von ⇗ daniel_k im Beitrag ¶ #2970
Zitat von ⇗ Andalu im Beitrag ¶ #2967
how can i have it too?

This one is a private project, unfinished yet.

Try to install Server 2003 Enterprise and Datacenter, which have PAE.

If it works, you can get XP to work with the PAE hack.

I'm just showing a proof that the drivers do support PAE.

Amount of ram correctly recognized in win2003. What is the next step?

Edit: I was wrong, damned hurry. As soon as the amd modded drivers are installed the mouse hangs immediately, the usb2 ports are power off and the usb3 ports don't recognize the devices. Same behavior as in XP.
#3053daniel_k
Zitat von ⇗ dencorso im Beitrag ¶ #3033
@daniel_k: Does the hal5687_timer_patch.rar you posted some posts agop just have the timer patch, or does it include the > 4 GiB patch, too?

Yes, it includes the PAE patch, based on the one from Dibya.

PAE has serious compatibility issues, specially with modern platforms.

To make things worse, that patch is badly coded, there is a missing check, although it doesn't seem to help with anything.
#3054daniel_kDid some tests today, with Server 2003 and found something interesting, which I'll call it Fake PAE

The most interesting thing is that is can be applied to XP with the same results!

Did some preliminar tests and it seems to work just fine.

You can't have more than 4Gb of RAM, but the available RAM is increased dramatically.

Now I have 3.7Gb available, before there was only 2.97 Gb.

The best part of it: no compatibility issues!



daniel_k has attached images to this post  ⇗ RAM.JPG
#3055infuscomus⇗ @daniel_k

can dibyas RAM patch be fixed?
#3056XPWELL64I'm busy but on friday I'll mod igpu drivers.
#3057XPWELL64XP64: I turned on my asus k555lb with XP64. This PC booted into windows at 11th startup.
#3058Mov AX, 0xDEAD⇗ @diderius6

Zitat von ⇗ diderius6 im Beitrag ¶ #3046

The adress, which is build is eax+1082C0h = b92602c0.
This is below the adress, from where the the driver starts. Is this the reason?

Zitat

PAGE_FAULT_IN_NONPAGED_AREA (50)
Invalid system memory was referenced.


addresses may be in any place in memory because drivers allocate many-many dynamic random memory chunks
in you case problem with eax, i think eax must be pointed to begin of some big buffer (more than 1082C0h bytes) but pointed to wrong memory

#3059Mov AX, 0xDEAD
Zitat von ⇗ daniel_k im Beitrag ¶ #3054

You can't have more than 4Gb of RAM


limitation of badly HalInitSystem or MmInitSystem ?
#3060dencorso⇗ @Mov AX, 0xDEAD: I think you'll enjoy reading the pages below:
⇗ http://www.geoffchappell.com/notes/windo...ense/memory.htm
⇗ https://www.remkoweijnen.nl/blog/2009/06...y/#comment-1688
⇗ https://www.remkoweijnen.nl/blog/2008/11...rnals/#more-140
⇗ https://web.archive.org/web/201310041608...al-perspective/

 

Page 205

#3061diderius6Hi,
has anyone tested the asl.exe Version 5 tool,
if it works under XP?
And if not, can this be changed?
This would be nice for to load DSDT tables to registry.
By the way I noticed, that for to upload a DSDT with asl.exe,
you have to change the revisionsnumber of the DSDT to a higher value, than DSDT in your Bios has.
This can be done with a simple hack in the dsdt.aml it is one Byte at place 08 , there 02 -> 03 (version 2 to version 3 of the DSDT table).
And you have to update your checksum of this dsdt.aml (-1).
This asl.exe version 5 does not crash with newer ACPI
Dietmar

PS: I cant install the WDK 8.1. Can somebody sent me the asl.exe Vers. 5 from there?
It should be in path of the WDK Tools\x86\ACPIVerify
also in WDK 10.

EDIT: Jessa, I got it:))!

I integrate its own DSDT (with versionsnumber of DSDT 2->3) with asl.exe Version 5 on the Q1900m board.
Works.

C:\>asl /loadtable dsdt.aml
Microsoft ACPI Source Language Assembler Version 4.0.0NT [Aug 1 2014, 18:35:18]

Copyright (c) 1996,2009 Microsoft Corporation
Compliant with the ACPI 5.0 Specification


Table overloading succeeded. This will only be active when testsigning is enable
d.


C:\>

I there any testsigning on XP? Or does it work in any case?

EDIT2: The asl.exe version 5 works on XP SP3 for to upload DSDT table.



diderius6 has attached files to this post
#3062Mov AX, 0xDEADdel

 

 

Found today bug in PatchPAE3, when it patch hal.dll, it allocate dma-buffers with limit of memory = MAX
in worst case it got memory above 4GB and then try to use it to dma transfers with 32b-only devices.
WinXP's HAL with last SPx doesnt support dma-64, so patch to hal.dll is unnecessary and may crash windows

patch to ntoskrml.exe seem OK, just remove two limitations of phys memory

#3063AndaluI tried again to install Windows 2003 Server R2 SP2 Enterprise and finally I see for the first time in my B250M-Pro4 board both the total amount of ram correctly recognized and the USB3 working fine even after a shutdown. I would like to get the same on XP using the ram that exceeds 4GB as a ramdrive but before buying the memory I need, what can I try?
#3064dencorso⇗ @Andalu: the Gavotte Ramdisk is the way to go. the correct version to use (the latest) is attached to my post at reboot.pro which link is below.
⇗ http://reboot.pro/topic/4064-gavottes-rramdisk/?p=52696
⇗ https://msfn.org/board/topic/176356-simp...comment=1147522
However for maximum stability, you should also set HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management\DisablePagingExecutive = 1, see:
⇗ https://msfn.org/board/topic/177110-wind...comment=1145279
#3065Andalu⇗ @dencorso
Thanks for the links ;) I used Gavotte until two years ago. I need to use more ramdisks than one only. Currently, on my haswell system with 32GB of ram, I'm using 4 or more ramdisks of which three load at boot. My intention is to use 64GB on XP. Moreover, the software license is for two systems, at the moment I'm using only half of it :)

P.S.: the value in the registry is already set to 1 ;)
#3066daniel_k
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #3062
Found today bug in PatchPAE3, when it patch hal.dll, it allocate dma-buffers with limit of memory = MAX
in worst case it got memory above 4GB and then try to use it to dma transfers with 32b-only devices.
WinXP's HAL with last SPx doesnt support dma-64, so patch to hal.dll is unnecessary and may crash windows

patch to ntoskrml.exe seem OK, just remove two limitations of phys memory

Yeah, I noticed that.

Patching hal.dll does result in random crashes.
#3067schreiberstein⇗ @daniel_k Any chance youre gonna share some of your FakePAE magic for others to test, or is it too experimental for now? It would be interesting to see if it could make a difference my system, at least in my opinion, haha.

Cheers
schreiberstein :)
#3068daniel_kLet me explain what I've found.

Windows 2003 has many licensing presets (which affects PAE and limits RAM available).

One of them does something interesting: enables PAE, but limits RAM to 4Gb.

The result? RAM is mapped in a more effective way so that more RAM is available.

At the same time, as it is limited to 4Gb, there are absolutely no issues with drivers or specific hardware, which is great for most of us.

I've wrote a small utility to patch all kernel files, should support all languages and all kernel versions 5512 (SP3) and later:

ntkrnlmp.exe - Multiprocessor Kernel
ntoskrnl.exe - Uniprocessor Kernel
ntkrpamp.exe - Multiprocessor PAE Kernel
ntkrnlpa.exe - Uniprocessor PAE Kernel

To use it, copy all kernel files (found in SP3.CAB) and this utility to the same folder.

Usage: winxppae [/4GB | /ALL]

/4GB         Enables PAE limiting RAM to 4Gb to avoid stability issues.
/ALL         Enables PAE with unlimited RAM, may have stability issues.

You may test the files on a running system by replacing the files from another OS (otherwise File Protection will restore the files).
In this case, pay attention to the filenames, on multiprocessor systems, rename ntkrnlmp.exe to ntoskrnl.exe and ntkrpamp.exe to ntkrnlpa.exe.

Or integrate them on the CD (rebuilding SP3.CAB and repacking ntkrnlmp.ex_ and ntoskrnl.ex_).

No need to include a /PAE switch in boot.ini, as this works just like on Server 2003.

As I've patched the files properly, ntoskrnl.exe automatically chainloads the PAE kernel, ntkrnlpa.exe.

PS: Only supports Windows XP SP3. Another version supporting Server 2003 will be released later.
PS: Updated 1.1 version /4GB and /ALL logic was reversed. Fixed.

 



daniel_k has attached files to this post
#3069infuscomus⇗ @daniel_k

thanks!

do we load winxppae in autoexec.bat? or how do we use it?

edit: nevermind, figured it out

edit2: testing in VMWare VM with 8GB RAM assigned to it - applying the /4GB option changes available RAM from 3GB to 8GB - is this expected behavior?

can you add in an option to remove the patch?
#3070infuscomus⇗ @Andalu

are you still having USB trouble with XP?
#3071Mov AX, 0xDEAD
Zitat von ⇗ daniel_k im Beitrag ¶ #3066

Yeah, I noticed that.
Patching hal.dll does result in random crashes.

I was wrong about bug/dma64 in hal.dll patch, allocating still in <4Gb range, so this place is OK

Another place inside HAL is not match win2003:
winxp sp2+ logic:
 
 if ScatterGather=1 {
no_need()
}


win2003 sp2 logic:

 
 if ScatterGather=1 {
if (PhysicalMemoryMayAppearAbove4GB=1 & Dma64BitAddresses=0)
we_need_mapregisters()
else
no_need()
}


winxp sp2 + "patch" logic:

 
 we_need_mapregisters() in any case


as I understand forcing mapregisters means dma double-buffering.
MS told this is not problem, just slowdown because additional memory tranfers.

#3072daniel_k
Zitat von ⇗ infuscomus im Beitrag ¶ #3069
edit2: testing in VMWare VM with 8GB RAM assigned to it - applying the /4GB option changes available RAM from 3GB to 8GB - is this expected behavior?

can you add in an option to remove the patch?

Oops, sorry.

Settings /4GB and ALL were reversed. Fixed.

Please try it again.

Maybe I can add that option, but backing up the files is easier and faster.
#3073infuscomus⇗ @daniel_k

awesome! works correctly now

I think it would be a good idea to have the program automatically make backups of the files it modifies, you can't always assume the user has made a backup.
#3074daniel_kDidn't try it before on VirtualBox.

Glad it works!

From 3.32Gb to 3.83Gb!

Let's hope it helps ⇗ @schreiberstein too!



daniel_k has attached images to this post  ⇗ NOPAE.JPG  ⇗ 4GBPAE.JPG
#3075Mov AX, 0xDEAD⇗ @daniel_k

Zitat von ⇗ daniel_k im Beitrag ¶ #3054

Now I have 3.7Gb available, before there was only 2.97 Gb.
The best part of it: no compatibility issues!

I think you still have usual "PAE+PhysMem_above_4Gb", check e820 table, recovered 1Gb accessable only at HIGH phys adresses (>4Gb), so if some badly driver alloc this memory and uses for communicating with hardware you'l get same compatibility issues

 

Page 206

#3076diderius6⇗ @daniel_k

Just put only 4 Gbyte ram in,
and show again about free ram
Dietmar
#3077diderius6On the Q1900m board, the Celeron CPU J1900 (soldered on socket all in one chip SoC),
I can install MPS Multiprocessor which shows also (as on acpi) 4 cpu cores, because this chip has 4 cores
and no Hyperthreading. On this Bios is an extra MPS table, on the Lenovo Flex 10 is no MPS table as RW-everything tells.
In MPS the sound works. Interesting, from where the devices get their information on MPS,
because no acpi.sys there, which looks at DSDT table. But the DSDT table is still needed,
compi does not start, when you delete DSDT or give fake empty DSDT.
I will make a speed comparisation ACPI against MPS (all Multiprocessor).
With full ACPI, strange things happen on this board:
Windbg via COM1 runs only correct in Safe Mode (F8) and no sound.
A yellow questionmark is at partmgr in Device Manager. This I do not understand at all,
because without loaded partmgr.sys the compi does not start but it starts
Dietmar

PS: In MPS there are 2 yellow marks at pci-to-Pci bridge, reclaiming not enough free resources
even the IRQs from MPS go up to 128 and noone is double.
This may be a hint, what is really going on in the SoC, may be something is shared there.
All boards with such a SoC cpu have absolut identic devices, because they are all integrated in this SoC chip.
This is very nice, when you compare compis with the same SoC cpu.
I do not like, that I can not change the cpu. But I think, that there is no cheaper and better board today on the market.
It is to 100% silent, passiv cooling and SSD, power consumption around 10 Watt.
Now I just get 155 updates from Posready^^.

EDIT: Now I have also sound on full ACPI Multiprocessor XP SP3 on the Q1900m board. For this I have to disable "Microsoft UAA-Bustreiber für High Definition Audio"
in Device Manager and after this to enable "Microsoft UAA-Bustreiber für High Definition Audio" again, crazy. It has to do with not enough resources. USB2, 3, Lan, sound works now there. The only device is the integrated GPU, which does not work
under XP SP3 even I make hack. Windbg works now also normal, after I deactivated the 2 pci-to-Pci bridges, reclaiming not enough free resources. Now I benchmark full ACPI Multiprocessor against MPS Multiprocessor.
I use for this Nvidia GT 730. The bottleneck is here the CPU J1900.

3DMark2001 Acpi: 17347     Cinebench 11.529: 1.37
3DMark2001 MPS: 15739     Cinebench 11.529: 1.33

So, Acpi is faster than MPS, even I do not know why. 1440 HD Video runs normal.
Commander Keen 4 runs in full screen modus^^. Prime95 and other Benchmarks all together show: XP SP3 runs absolut stable on the Q1900m board in full ACPI Multiprocessor mode.

Hihi:
"Intel ® Bay Trail platform does not support:

Win XP Pro 32bit

Windows Embedded Standard 2009 (XPe SP3) 32bit "

And just for fun: I do pur USB boot on the Q1900m board via USB3 port and the nice driver from ⇗ @daniel_k , so
no more problems with iastor or storahci^^

#3078Mov AX, 0xDEAD
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #3071

winxp sp2 + "patch" logic:
 
 we_need_mapregisters() in any case


as I understand forcing mapregisters means dma double-buffering.
MS told this is not problem, just slowdown because additional memory tranfers.



Edit: VIA USB3 drivers/WDF can't live with forced mapregisters, so WinXP's HAL need exact w2003 logic
#3079Andalu
Zitat von ⇗ infuscomus im Beitrag ¶ #3070
@Andalu

are you still having USB trouble with XP?

No good news, everything as before. The USB3 function works fine exclusively on my Skylake board but only with no PAE patch installed. Applying any of the them, all the usb ports do not work (both 2.0 and 3.0). Only on win2003 the total amount of ram and the USB3 'coexist peacefully'.
#3080Mov AX, 0xDEADFixed PAE patch to windows xp halmacpi.dll sp3 (v 5.1.2600.5512 eng)

 
Optional:
1DD03: 6a 10 68 00 00 00 01 53 c7 05 c4 32 02 80 40 00 00 00 be 00 00 01 00 =>
6a 30 68 FF FF FF FF 53 c7 05 c4 32 02 80 00 40 00 00 be 00 00 03 00

Optional if you use ISA Devices like onboard Floppy controller :):
1DD03: 6a 10 68 00 00 00 01 53 c7 05 c4 32 02 80 40 00 00 00 be 00 00 01 00 =>
6a 30 68 00 00 00 01 53 c7 05 c4 32 02 80 00 40 00 00 be 00 00 03 00

Critical:
17815: 80 3D B8 32 02 80 00 75 0A =>
38 4F 0B 75 12 90 90 90 90

205B4: 17 38 => 00 00

+ checksum fix
#3081Andalu⇗ @daniel_k
I tried your patch on my B250M-Pro4. I did it in the following way:

I extracted the files from SP3.cab (ver. 5.1.2600.5512) of the XP SP3 32bit installation CD, italian version:
ntkrnlmp.exe (SHA1:9A7CD76FAEE28CE009DBE7A367A1CCA6C1532B2E)
ntkrnlpa.exe (SHA1:D35591D175190FDAC795BC0ADDBF3A0D0EB6EDBE)
ntkrpamp.exe (SHA1:437844ED5993F411C32A207781BE463D83122ADE)
ntoskrnl.exe (SHA1:6580C7DDDF31E5E12FBD7EFE87C5FCA36EE68736)

I copied them in the "test" folder with the 'WinXPPAE' exe file ver. 1.1

Then I renamed the files:

from ntkrnlmp.exe to ntoskrnl.exe
from ntkrpamp.exe to ntkrnlpa.exe

But, in my case, that was not necessary because the same versions (with identical SHA1) of the renamed files are already present in the system32 folder:

ntkrnlpa.exe (SHA1:437844ED5993F411C32A207781BE463D83122ADE)
ntoskrnl.exe (SHA1:9A7CD76FAEE28CE009DBE7A367A1CCA6C1532B2E)

The "WinXPPAE.exe /4GB" command launched in a dos window:



nothing changed on reboot, only 2.44GB recognized as before:



Even with a fresh XP installation with the renamed and repacked files into sp3.cab, driver.cab and i386 folder the patch doesn't work.

Where did I go wrong?
#3082infuscomus⇗ @Andalu

there is a driver package made by ⇗ @lsmlcx -
⇗ [TOOL] Sysceo MassStorage and USB Drivers Installer (with universally usable XP/2003 drivers)
in it there is an intel USB 3.0 driver for XP
in
CeoMSX_20190910\USB\WinXPx86\Intel\SysCeoUsb3.x

try it out, hopefully it works for you
#3083daniel_k
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #3075
@daniel_k
I think you still have usual "PAE+PhysMem_above_4Gb", check e820 table, recovered 1Gb accessable only at HIGH phys adresses (>4Gb), so if some badly driver alloc this memory and uses for communicating with hardware you'l get same compatibility issues


Huh, I see.

For now it works just fine.

Will see how far it goes like that.


There was a "conflict" between VGA.SYS and AMDXHC.SYS (Intel modded driver) in PAE mode.

If AMDXHC was loaded, the VGA driver wouldn't work, there was no display in the GUI Setup phase.

If I remove AMDXHC during Setup, installation completes succesfully. Then I install GeForce driver, all OK.

As soon as I install the AMDXHC driver, legacy DOS apps still work, but can't switch to full screen mode, as it gives me an error in NTVDM. Because of the driver "conflict", Windows cannot switch to VGA mode.
#3084daniel_k⇗ @Mov AX, 0xDEAD, thanks for sharing the patch with us. Will test later.

Can this be used in a generic ISO?

Does this patch may cause issues on a system which does not need PAE (4Gb or less)?
#3085daniel_k
Zitat von ⇗ infuscomus im Beitrag ¶ #3082
@Andalu

there is a driver package made by @lsmlcx -
⇗ [TOOL] Sysceo MassStorage and USB Drivers Installer (with universally usable XP/2003 drivers)
in it there is an intel USB 3.0 driver for XP
in
CeoMSX_20190910\USB\WinXPx86\Intel\SysCeoUsb3.x

try it out, hopefully it works for you

Won't help because that is the same driver modded by me.

The guy just changed the resource files, changed the hub device IDs to look like Intel's and signed the files.

Just love those kind of people.
#3086infuscomus⇗ @daniel_k

woah! seriously?!
I wasn't aware of this, good to know.
#3087infuscomus⇗ @Andalu

did you put the patched ntoskrnl/ntkrnlpa.exe files into c:\windows\system32 ?
#3088daniel_k⇗ @Andalu, just downloaded the Italian XP SP3 ISO, extracted the files and patched them. Absolutely no issues.

ORIGINAL

 
ntkrnlmp.exe = 9a7cd76faee28ce009dbe7a367a1cca6c1532b2e
ntkrnlpa.exe = d35591d175190fdac795bc0addbf3a0d0eb6edbe
ntkrpamp.exe = 437844ed5993f411c32a207781be463d83122ade
ntoskrnl.exe = 6580c7dddf31e5e12fbd7efe87c5fca36ee68736



PATCHED

 
ntkrnlmp.exe = 742fcf126111532187d4a2861c8b45f882757850
ntkrnlpa.exe = 7f1865311cb5fac8ee37973d13a0a562d5902164
ntkrpamp.exe = 39ca749c1988e469ea2b6c46eafd6537734fdcce
ntoskrnl.exe = 08b39d98400282412979840f0f91eb813ea95ddf



- Create two folders: ORIGINAL and PATCHED
- Extract all kernel files from SP3.CAB to both folders.
- Copy WinXPPAE.exe to the PATCHED folder and run WinXPPAE /4GB
- Compare files from both folders or calculate their hashes.


On a live system, in order to replace protected system files, you need to:
- rename \WINDOWS\Driver Cache\i386\sp3.cab
- delete kernel files from \WINDOWS\system32\DllCache (see list above)
- backup original files \WINDOWS\system32\ntoskrnl.exe and \WINDOWS\system32\ntkrnlpa.exe
- copy patched files, overwriting the originals.
- Windows File Protection will ask you for the XP Disc to restore the files. If you don't receive this message, you did something wrong.

If you don't follow these steps, File Protection will restore the files silently. An event can be found in Event Viewer, though,


You can also replace the files if you have a dual boot setup. For instance, boot Windows 7 and copy the files to the Windows\System32 folder.

#3089lsmlcx⇗ @daniel_k
I got the same problem.
But not in PAE mode.
#3090gordo999
Zitat von ⇗ daniel_k im Beitrag ¶ #3085
Won't help because that is the same driver modded by me.


Are you the same daniel_k from Creative driver mod fame? If so, good to see you here and thanks for all your good work in that arena.

Trying to get Win XP going on an 8th generation Asus B360M so I'll be reading through this thread for hints then posting some questions.

 

Page 207

#3091gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #3046
.text:10031548                 mov     ecx, [eax+1082C0h]
But what happens there, is not clear for me.
Windbg tells, that at this adress is
mov ecx,dword ptr [eax+1082C0h]
this is not the same???

@diderius6....I am a bit rusty but as I recall, the [...] brackets represent a pointer. It tells you to load the value at address [eax+1082COh] to ecx. The windbg version is redundant but wdbg has strange ways of representing pointers because it uses the MASM as well as the C++ addressing modes. Gives me a headache.

Zitat von ⇗ diderius6 im Beitrag ¶ #3046
What should be moved here to ecx ? The adress, which is build is eax+1082C0h = b92602c0.
This is below the adress, from where the the driver starts. Is this the reason?

I think the value B92602C0 should be moved to ecx. If that is an address it's a system address and is likely the address of a system module or an address within a system module.

ps. if it's an address, you can tell by following the code a bit to see if a call is made to that address.
#3092petter1392I'm also getting ⇗ Err_Cache_Miss  error after the windows update.
#3093Pill MonsterPAE is always enabled, however  it has no effect by itself after SP2 because MS included a boot time certificate check which disables PAE on "Client Edition".     
Unless you pay them lots of money, you don 't see heaven's gate.

M$ & Intel didn't like it when A64 was released and suddenly hello AMD owners could install 8GB of RAM on their NForce3 939 boards with XP installed and use it all.   





P.S. ⇗ @daniel_k
Thanks for all the work, I'm still rocking an X-Fi Fatal1ty with your last driver package. :)
#3094Andalu
Zitat von ⇗ infuscomus im Beitrag ¶ #3087
@Andalu
did you put the patched ntoskrnl/ntkrnlpa.exe files into c:\windows\system32 ?

Your guess is right. I still can't realize how I didn't understand that it was necessary to copy the two kernel files after applying the patch.
Evidently my age is going too fast....

The USB3 AMDXHCI_FINAL by daniel_k drivers work fine even if only on my skylake board. Installing the AMD_XHCI_For_Intel_XP_x86_x64_20191012 by lsmlcx nothing changed but the shutdown stops working, so no good for me.
Now the problem is about the 'coexistence' of usb3 and the recognition of the entire ram. I do not lose hope, probably ⇗ @daniel_k does a magic and pulls a rabbit out of the hat. I believe it ;)
#3095Andalu⇗ @daniel_k
Sorry for my oversight. Once again I have to thank you for your kindness and for the time you have dedicated to my problem. As I reported in my previous post, it was my mistake, your patch installs without problems. Thanks again for your great work ;)
#3096diderius6⇗ @Doc.Brown

Before you transfer XP SP3 from another working compi to the Gene XI board,
disable all USB there
Dietmar
#3097Mov AX, 0xDEAD
Zitat von ⇗ daniel_k im Beitrag ¶ #3084
@Mov AX, 0xDEAD, thanks for sharing the patch with us. Will test later.
Can this be used in a generic ISO?
Does this patch may cause issues on a system which does not need PAE (4Gb or less)?


this patch need only for systems were 4GB or more RAM + ntoskrnl's pae_licensing_patch was activated. If there is less memory or pae_licensing is original, patch still works, but not optimal, it always think that PC has more 4GB phys adresses and make special actions for dma32-only devices.

for generic iso patch need additional check to match w2003 logic, but there is no space, so need more complex inject like JMP FAR PATCH/..Patch logic../ JMP FAR BACK
#3098Mov AX, 0xDEADI've played with HAL logging of DMA Request on Skylake H110 and IvyBridge notebook (both has 4GB RAM, pae_license_patch activated):

Skylake:
Intel iastor.sys 11.2.0.1006                           -  only 32bit DMA allowed
VIA USB3.0 xhcdrv.sys 6.1.7600.4402            -  64bit DMA, many requests
AMD USB3.0 hacked amdxhc.sys 1.1.0.145     -  64bit DMA

IvyBridge:
Intel iastor.sys 11.2.0.1006                  -  only 32bit DMA allowed
MS USB2.0 usbport.sys 5.1.2600.6437  -  only 32bit DMA allowed

after installing hal_pae_patch on IvyBridge, it fix "USB 2 Root Hub has no enough power bla-bla" problem
#3099daniel_k
Zitat von ⇗ gordo999 im Beitrag ¶ #3090
Zitat von ⇗ daniel_k im Beitrag ¶ #3085
Won't help because that is the same driver modded by me.


Are you the same daniel_k from Creative driver mod fame? If so, good to see you here and thanks for all your good work in that arena.

Trying to get Win XP going on an 8th generation Asus B360M so I'll be reading through this thread for hints then posting some questions.


Yep, that's me!  Glad to help!

At this point, we've solved most issues.

Should be easy to get it working, many people contributing here!
#3100daniel_k⇗ @Pill Monster

Your nick seems familiar. Which forum are you more active in?

You seem to be everywhere.

Glad to know my packs are still helping you!

Back to the subject, from the compatibility issues we've seen, Microsoft was right to some degree.
Some drivers are poorly written, which may lead to data corruption, something I consider unacceptable.
#3101daniel_k⇗ @Andalu, don't worry, it happens.

But did help you somehow? How many RAM was available before and after the patch?
#3102skullteriaWell, my edited kernel of Windows XP has support until 128 GB. Please test in virtual Machine before:

⇗ https://github.com/Skulltrail192/One-Cor...er%20Standalone
#3103daniel_k⇗ @Mov AX, 0xDEAD

I see that you've changed this:

 
.80027815: 803DB832028000                 cmp          b,[0800232B8],0
.8002781C: 750A jnz .080027828



into this:

 
.80027815: 384F0B                         cmp          [edi][00B],cl
.80027818: 7512 jnz .08002782C



Would it be a generic patch (for system with less/more than 4GB and PAE enabled in kernel) if I manage to include both original and your checks together?

Something like:

 
cmp          b,[0800232B8],0
jnz .080027828
cmp [edi][00B],cl
jnz .08002782C



What are you thoughts on this? Would this order of checks be correct or the other way around?

#3104daniel_k
Zitat von ⇗ daniel_k im Beitrag ¶ #3083
There was a "conflict" between VGA.SYS and AMDXHC.SYS (Intel modded driver) in PAE mode.

If AMDXHC was loaded, the VGA driver wouldn't work, there was no display in the GUI Setup phase.

If I remove AMDXHC during Setup, installation completes succesfully. Then I install GeForce driver, all OK.

As soon as I install the AMDXHC driver, legacy DOS apps still work, but can't switch to full screen mode, as it gives me an error in NTVDM. Because of the driver "conflict", Windows cannot switch to VGA mode.

What are you thoughts on this?

As the VGA driver works when the AMDXHC is not installed, would you say the issue is with the later?

If so, any possibilities of fixing the driver?

What did you use to do the HAL logging of DMA Requests? Debugger?
#3105daniel_k⇗ @Mov AX, 0xDEAD

The actual code that limits RAM is in the kernel.

 
.005D1840: 6A07                push         7
.005D1842: 8BF0 mov esi,eax
.005D1844: 895DFC mov [ebp][-4],ebx
.005D1847: 897DF8 mov [ebp][-8],edi
.005D184A: E833FEE8FF call ExVerifySuite
.005D184F: 3C01 cmp al,1
.005D1851: 7500 jnz .0005D1853
.005D1853: 397E64 cmp [esi][064],edi
.005D1856: 7509 jnz .0005D1861
.005D1858: C745FC00000001 mov d,[ebp][-4],001000000 -> Number of 4kb pages
.005D185F: EB44 jmps .0005D18A5


0x1000000 x 4 = 0x4000000 = 64Gb

By fine tuning it, managed to get 4.78Gb of RAM with everything working.

Anything above this, DOS apps can't enter full screen (VGA.SYS).

At 5Gb, AMDXHC driver stops working (actually USB devices are recognized as Unknown Devices with zeroed device ids).

Above 5.5Gb, AMDXHC driver works again, but DOS apps can't enter full screen (VGA.SYS) remain, up to 15.9Gb.

Thoughts?

PS: Sorry for so many questions, but you're the only one more technically skilled here.



daniel_k has attached images to this post  ⇗ 478GB.JPG

 

Page 208

#3106daniel_k⇗ @schreiberstein

Did you manage to try my 4Gb patch? Any improvement?
#3107schreiberstein⇗ @daniel_k

Not yet, unfortunately.
I hope I will have some time tonight.
I will let you know the results.

By the way, I think the AMD XHCI driver causes issues on my system as well.
On both XP and 2003. It randomly stops working after reboots.
And then the IDs are also zeroed, as mentioned before.

Is there a way to use a different patched driver for the Z390 platform (like VIA), or is AMD the only option? Whenever the drivers are loaded correctly, the NTVDM does not work at all. No 16 Bit. Not even windowed. No Win16 applications.

I will also conduct the Intel GPU memory adjustment tests to see if it changes my available amount of RAM from 904 to something higher.

Cheers,
schreiberstein
#3108daniel_k⇗ @schreiberstein

Unfortunately, AMD is really the only option.

XP with no PAE also has issues?
If so, things are more complicated for you.
#3109Andalu
Zitat von ⇗ daniel_k im Beitrag ¶ #3101
@Andalu, don't worry, it happens.
But did help you somehow? How many RAM was available before and after the patch?

Your /4GB patch works fine. The system recognizes correctly 4GB of ram, before it was 2.2GB.

Applying the /ALL option, the total amount of ram is correctly recognized but I got the identical issues happened with the chinese and the Dibya's patches: on reboot the usb2 and usb3 ports don't recognize anything. Also the usb mouse becomes an unknow device. In details, the usb2 ports don't seem to be powered anymore while the usb3 ports seem to have an altered power as the external hard disk's led is always on. Also the shutdown no longer works.
#3110Mov AX, 0xDEAD
Zitat von ⇗ daniel_k im Beitrag ¶ #3105
@Mov AX, 0xDEAD
The actual code that limits RAM is in the kernel.


Yes, this is PAE_Licensing check, it trim physical memory adresses to some value, so adresses above limit will be erased even on 4GB RAM, because bios remap ram to two parts - one to 0<->~2.5-3.5Gb and second to 4.0<->4.x, so second part is lost
       //
// If properly licensed for PAE (ie: DataCenter) and booted without the
// 3gb switch, then use all available physical memory.
//

if (ExVerifySuite(DataCenter) == TRUE) {

//
// Note MmVirtualBias has not yet been initialized at the time of the
// first call to this routine, so use the LoaderBlock directly.
//

if (LoaderBlock->u.I386.VirtualBias == 0) { // /3GB stuff

//
// Limit the maximum physical memory to the amount we have
// actually physically seen in a machine inhouse.
//

           MaxPage = 8 * 1024 * 1024;  //  in 2000's max 32GB :)


Zitat von ⇗ daniel_k im Beitrag ¶ #3105

Anything above this, DOS apps can't enter full screen (VGA.SYS).
At 5Gb, AMDXHC driver stops working (actually USB devices are recognized as Unknown Devices with zeroed device ids).
Above 5.5Gb, AMDXHC driver works again, but DOS apps can't enter full screen (VGA.SYS) remain, up to 15.9Gb.


if you have time, try to force usb3.0 device to be only 32-bit dma in amdxhc.sys, maybe this helps:
 
000323E7:
push ebx ; int
and dl, 1
movzx eax, dl
push eax ; Dma64, SET IT TO ZERO
push esi ; int
push dword ptr [esi+20h] ; PhysicalDeviceObject
call sub_3299C
mov [ebp+var_1C], eax
test eax, eax
jge short loc_3240E
#3111Mov AX, 0xDEAD
Zitat von ⇗ daniel_k im Beitrag ¶ #3103
@Mov AX, 0xDEAD
Would it be a generic patch (for system with less/more than 4GB and PAE enabled in kernel) if I manage to include both original and your checks together?
Something like:
 
cmp          b,[0800232B8],0
jnz .080027828
cmp [edi][00B],cl
jnz .08002782C


What are you thoughts on this? Would this order of checks be correct or the other way around?



generic patch like w2003 logic:

 
// cmp          b,[0800232B8],0  ; original opcodes

if _HalpPhysicalMemoryMayAppearAbove4GB==0 go original // if <4gb , skip new checks ; need reloc or PIC tricks
if [edi+0B]==0 go loc_8002782C // if DeviceDescription.Dma64BitAddresses=0 go to calculating mapbuffers

original:
cmp b,[0800232B8],0 // obsolete, check low-end system with 16Mb memory only
check for BUSTYPE=2 or 5
// now all is OK, we dont need mapbuffers, so set ebx=0 & go next

loc_8002782C: // calculating mapbuffers
..
next:
...
#3112Mov AX, 0xDEAD⇗ @daniel_k

Zitat von ⇗ daniel_k im Beitrag ¶ #3104

As the VGA driver works when the AMDXHC is not installed, would you say the issue is with the later?
If so, any possibilities of fixing the driver?

What did you use to do the HAL logging of DMA Requests? Debugger?


I dont know why usb3 conflict with vga, they dont use same resources (like IOTR bug), but problem with amd because vga driver is simple & well tested. i use amdxhci without any problem with geforce, if i delete nvidia driver, standart video works well, full-screen too, but i have only 4GB ram.
I use remote debugging with windbg, breakpoints to hal is enough for me, with simple lan cables debugging is funny as never before )
#3113daniel_k⇗ @Andalu

To obtain the real amount of RAM available, you need to check Task Manager.

Like this:
¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (205)

Please take a screenshot and attach it here, so we can see the numbers.
#3114daniel_k
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #3110
if you have time, try to force usb3.0 device to be only 32-bit dma in amdxhc.sys, maybe this helps:
...

That did it!

Thank you very much!

I had no idea one could force a driver to use 32-bit DMA! Learning new things everyday!

Does this have any side effects? If not, I'll release it as a "new" final version.

⇗ @schreiberstein, ⇗ @Mov AX, 0xDEAD fixed the issue with AMDXHC!
#3115Andalu⇗ @daniel_k
here the screenshots (onboard vga):



1.No PAE
2.PAE /4GB
3.PAE /ALL
#3116daniel_k⇗ @Andalu

Nice improvement!

Can you try Mov AX, 0xDEAD's fix for AMDXHC.SYS?

Patch kernel files with /ALL command line.

Make sure you replace all files at the same time.

ntkrpamp.exe renamed to ntkrnlpa.exe in \Windows\system32
hal.dll in \Windows\system32 (see attachment)
amdxhc.sys in \Windows\system32\drivers (see attachment)
#3117Pill Monster
Zitat von ⇗ daniel_k im Beitrag ¶ #3100
@Pill Monster

Your nick seems familiar. Which forum are you more active in?

You seem to be everywhere.  

Haha - once upon a time maybe. :D These days I keep a lower profile - just Win-Raid & another forum you never heard of called GeekZone (mostly NZ IT industry workers).

You would know me from Guru3D, I was active there for ~8yrs.

Zitat von ⇗ daniel_k im Beitrag ¶ #3100


Glad to know my packs are still helping you!  


I'm sure they're helping many others too.

Zitat von ⇗ daniel_k im Beitrag ¶ #3100


Back to the subject, from the compatibility issues we've seen, Microsoft was right to some degree.
Some drivers are poorly written, which may lead to data corruption, something I consider unacceptable.  

I recall a few problems with Nvidia cards running at 8x AGP on nForce2.   I can't even remember if that was driver related or not, but selecting 4x AGP n BIOS seem to fix it.


I've not read through this thread so admittedly I don't know the details of any problems users may be having.   However I'm going to be honest & say I don't believe Russonivich's claims regarding driver incompatibility.   

If there was any incompatibility at I suspect it arose from adding /PAE switch on machines with IA-32/IA-32e CPU's.  PAE in the OS context is an acronym for Page Address Extension, not Physical Address Extension.

Physical Address Extension is Intels nomenclature referring to any CPU with more than 32 external bits.  IA-32 being 32/32 (registers) doesn't support paging, IA-32e (36/32) does support paging but not remapping.

One can see how that might become a problem when drivers want high addresses.

To the best of my knowledge AMD64 users never had issues - I didn't.    The boards supported remapping & address translation I think would be transparent to most drivers,  not that it should matter anyway.

⇗ @daniel_k:

When I find the link I'll point you to an article written by developer Geoff Chappell a few years ago on XP/Vista memory limitations & his views of Microsoft.
f
#3118Andalu
Zitat von ⇗ daniel_k im Beitrag ¶ #3116
@Andalu

Nice improvement!

Can you try Mov AX, 0xDEAD's fix for AMDXHC.SYS?

Patch kernel files with /ALL command line.

Make sure you replace all files at the same time.

ntkrpamp.exe renamed to ntkrnlpa.exe in \Windows\system32
hal.dll in \Windows\system32 (see attachment)
amdxhc.sys in \Windows\system32\drivers (see attachment)


It woooorkssss!! Great!! No issues related to USB ports. The shutdown works as usual.
Also the ramdisk software see the entire ram installed and I can use the memory over 4GB. I already tried to load a ramdrive on boot and it works.

Thanks so much ⇗ @daniel_k and ⇗ @Mov AX, 0xDEAD

#3119daniel_k⇗ @Pill Monster

Yeah, remember you from Guru3D, for sure!

There are some specific drivers that defitively don't support 64-bit addressing.

Some hardware, such as soundcards (Live!, Audigy) also have issues, which were popular by 2008, when XP SP3 was released.

Geoff's article I've already read, thanks.
#3120daniel_k⇗ @Andalu

Glad to know it works!

Things just keep getting better!

 

Page 209

#3121Mov AX, 0xDEAD
Zitat von ⇗ daniel_k im Beitrag ¶ #3114
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #3110
if you have time, try to force usb3.0 device to be only 32-bit dma in amdxhc.sys, maybe this helps:
...

That did it!


1) single amdxhc.sys patch or combination with hal.dll patch ?
2) on w2003 did you have problem with amdxhc.sys ?

i think it just beta patch because we dont know where problem, in hal or 3rd driver....
#3122Andalu⇗ @daniel_k
You are right ;) and never to lose the hope. Until two month ago I never imagined being able to install XP on a skylake board and to have the usb3 fully functional.
Many thanks to this great forum and its skilled members.
#3123schreiberstein⇗ @daniel_k

Hey! I am currently applying your fixed to my system.
Could you adapt the hal_pae_fix.rar to include the ACPI timer fix? Chrome crashes again.
Will let you know my results soon.
Just applied the kernel patch. Rebooting.

Really cool stuff!

Cheers,
schreiberstein
#3124Ep.CygniHello all and thanks for your effort on enhancing Windows XP.

⇗ @daniel_k
Attached are my results of testing the PAE patch from ¶ post #3068 on a live system. I followed the instructions in ¶ post #3088 but renamed patched kernel files before replacing (as mentioned in #3068 but omitted in #3088).

The PC has a Creative Audigy card installed, and I did a simple driver compatibility check: tried playing midi files on the card's hardware synth.
With /4GB option, some notes were missing and others ended abruptly. However, this issue could be fixed by reloading the soundfont a few times (alternating with other soundfonts seemed to work best).
With /ALL option, the same issues happened but I could not find a way to return the synth to normal operation.

I made several reboots with both patch versions to make sure these results are repeatable.

Also, the Audigy Sw Synth went completely silent with patched kernels and worked again only with the original one.

Thus, it looks like the "fake PAE" approach cannot prevent all possible compatibility issues. It is still more stable than some other PAE-enabling patches I tried before - for example, with "fix128v48" the system would freeze and/or reboot when attempting to play a midi file.

Hope this info will be helpful to people reading the thread.



Ep.Cygni has attached images to this post  ⇗ 0 - unpatched.png  ⇗ 1 - patched with 4GB opti  ⇗ 2 - patched with ALL opti
#3125daniel_k⇗ @Mov AX, 0xDEAD

Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #3121

1) single amdxhc.sys patch or combination with hal.dll patch ?
2) on w2003 did you have problem with amdxhc.sys ?

i think it just beta patch because we dont know where problem, in hal or 3rd driver....



1) Combination of both. As you can see some posts above, ⇗ @Andalu reported success as well.
2) Yes.
#3126schreiberstein⇗ @daniel_k

I patched "ntkrnlpa.exe" with /4GB and it worked. (See screenshot, running prime95 in the background)
I booted with /pae .
USB did work. I also replaced the "amdxhc.sys" file and hal.dll.
As of now, I cannot judge application stability since the hal.dll causes Chrome and other things to misbehave, due to the lacking ACPI timing patch.

Cheers,
schreiberstein



schreiberstein has attached images to this post  ⇗ post_patch.PNG
#3127daniel_k⇗ @schreiberstein

Please use /ALL command line.

Here is the patched hal.dll with timer fix.

Don't know which one you have, so packed both 5512 and 5687.
#3128daniel_k⇗ @Ep.Cygni

Unfortunately, for XP 32-bit with PAE and XP x64 (which is PAE by design), Audigy cards are a lost cause.

Creative didn't bother to fix the driver.

Only X-Fi cards (may) work with PAE.

PS: Thanks for your reports!
#3129schreiberstein⇗ @daniel_k

On /4GB I noticed that it takes longer for explorer.exe to navigate through folders. A noticeable delay.

Same instabilities as with that 128gb patch set occur with /ALL :
RAM gets detected properly, but Chrome pages crash.
Also, boot took much longer than usual.

I have installed the 5687 version of hal.dll .

Cheers,
schreiberstein



schreiberstein has attached images to this post  ⇗ patch_all.png
#3130daniel_k⇗ @schreiberstein

Does DOS apps work at all?

If so, is possible to change them to full screen? (ALT+Enter)

With the modified AMDXHI, just tried Server 2003 and it works just fine.

Might worth a try when you have time.
#3131schreiberstein⇗ @daniel_k

No. Not at all. Instant crash, as if nothing had been executed.
I will try on 2003 tomorrow.

Thank you for all your work.

Cheers,
schreiberstein
#3132infuscomus⇗ @daniel_k ⇗ @diderius6

I was experimenting to see if I could install XP onto a KVM VM and I encountered a different A5 BSOD when in KVM.



bsod A5 14 - I haven't seen this one before. this is with patched ACPI 5048

not urgent to have this fixed, just something of note.
#3133Doc.Brown
Zitat von ⇗ diderius6 im Beitrag ¶ #3096
@Doc.Brown

Before you transfer XP SP3 from another working compi to the Gene XI board,
disable all USB there
Dietmar


⇗ @diderius6 ok I'll try it this afternoon
Do you think USB is in fault for my BSOD problem ?
#3134roytam1
Zitat von ⇗ Ep.Cygni im Beitrag ¶ #3124

The PC has a Creative Audigy card installed, and I did a simple driver compatibility check: tried playing midi files on the card's hardware synth.
With /4GB option, some notes were missing and others ended abruptly. However, this issue could be fixed by reloading the soundfont a few times (alternating with other soundfonts seemed to work best).
With /ALL option, the same issues happened but I could not find a way to return the synth to normal operation.


I wonder if kX driver helps? as Creative creates badly written drivers, 3rd party driver seems to be better.
#3135roytam1
Zitat von ⇗ daniel_k im Beitrag ¶ #3068
Let me explain what I've found.

Windows 2003 has many licensing presets (which affects PAE and limits RAM available).

One of them does something interesting: enables PAE, but limits RAM to 4Gb.

The result? RAM is mapped in a more effective way so that more RAM is available.

At the same time, as it is limited to 4Gb, there are absolutely no issues with drivers or specific hardware, which is great for most of us.

I've wrote a small utility to patch all kernel files, should support all languages and all kernel versions 5512 (SP3) and later:

ntkrnlmp.exe - Multiprocessor Kernel
ntoskrnl.exe - Uniprocessor Kernel
ntkrpamp.exe - Multiprocessor PAE Kernel
ntkrnlpa.exe - Uniprocessor PAE Kernel

To use it, copy all kernel files (found in SP3.CAB) and this utility to the same folder.

Usage: winxppae [/4GB | /ALL]

/4GB        Enables PAE limiting RAM to 4Gb to avoid stability issues.
/ALL        Enables PAE with unlimited RAM, may have stability issues.

You may test the files on a running system by replacing the files from another OS (otherwise File Protection will restore the files).
In this case, pay attention to the filenames, on multiprocessor systems, rename ntkrnlmp.exe to ntoskrnl.exe and ntkrpamp.exe to ntkrnlpa.exe.

Or integrate them on the CD (rebuilding SP3.CAB and repacking ntkrnlmp.ex_ and ntoskrnl.ex_).

No need to include a /PAE switch in boot.ini, as this works just like on Server 2003.

As I've patched the files properly, ntoskrnl.exe automatically chainloads the PAE kernel, ntkrnlpa.exe.

PS: Only supports Windows XP SP3. Another version supporting Server 2003 will be released later.
PS: Updated 1.1 version /4GB and /ALL logic was reversed. Fixed.

I wonder if patch can work with latest(last) ntkrnlmp.exe (5.1.2600.7649 from KB4486463) / ntkrnlpa.exe,ntkrpamp.exe,ntoskrnl.exe (5.1.2600.7581 from KB4463103)?

 

Page 210

#3136Ep.Cygni
Zitat von ⇗ roytam1 im Beitrag ¶ #3134
I wonder if kX driver helps? as Creative creates badly written drivers, 3rd party driver seems to be better.


Yes, the kX driver is fully compatible with PAE (no issues with any patch).

Also, Creative drivers for early PCI cards based on Ensoniq chip (ES137x) are compatible too; one can install such card to get back the software synth with .ecw sound banks (identical to Live!/Audigy Sw Synth which stops working if PAE is enabled).
#3137Doc.Brown
Zitat von ⇗ Doc.Brown im Beitrag ¶ #3133
Zitat von ⇗ diderius6 im Beitrag ¶ #3096
@Doc.Brown

Before you transfer XP SP3 from another working compi to the Gene XI board,
disable all USB there
Dietmar


@diderius6 ok I'll try it this afternoon
Do you think USB is in fault for my BSOD problem ?


Doesn't change anything,I think something is already wrong with acpi.sys
#3138Mov AX, 0xDEADI've maked two experimental hal.dll to test bugs with dma64/dma32 drivers
1) hal_force_high_addr
if driver declare support dma64 and request memory for dma (AllocateCommonBuffer), hal forced to allocate memory only from HIGH adressses. This mean hardware will survive only with adresses >4Gb

Tested:
VIA USB3.0 driver - requests dma64, works fine
AMD USB3.0 hacked driver - requests dma64, not works, dev_0000 if inserted something or nothing happens
Realtek LAN  - requests dma32, works fine
NVidia 660GTX - don't use hal, has own dma implementation(?), works fine
Intel integrated VGA on IvyBridge 6.14.10.5437, don't use hal, works fine
Creative X-fi 2.30.0011- requests dma32, not works, hangs or loop somewhere in ring0 space
Creative X-fi 2.30.0011- forced dma64 (hidden option in *.inf), instant reboot


2) hal_force_dma32
any dma64 request forced to dma32, same behavior as patchpae3, but patchpae3 miss limiting allocation <4Gb

VIA USB3.0 driver - driver can't start, Error 10
AMD USB3.0 hacked driver - works fine
Creative X-fi 2.30.0011- not works
#3139Mov AX, 0xDEAD
Zitat von ⇗ infuscomus im Beitrag ¶ #3132

bsod A5 14 - I haven't seen this one before. this is with patched ACPI 5048
not urgent to have this fixed, just something of note.

¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (21)
BSOD A5(14,...) was discovered in Qemu q35-pcmodel before
#3140diderius6⇗ @Doc.Brown
This is acpi.sys from outer space ),
with try to hack against BSOD A5 (0x00000003,xxx,0xC0140008,yyy)
Dietmar



diderius6 has attached files to this post
#3141daniel_k⇗ @infuscomus, thanks for reporting the issue.

For now, I'm done with ACPI hacking, but saved the info in my notes.
#3142daniel_k⇗ @roytam1

Yes, personally tested with original SP3 and latest version.
#3143daniel_k⇗ @Mov AX, 0xDEAD

Unfortunately forcing 32-bit DMA has issues, at least on my system.

At first, everything works just fine.

But after copying files and specially running disk benchmark on AIDA64, the driver "hangs" the USB drive, even restarting doesn't fix it, need to remove it and plug it again for the drive to be recognized.

As soon as this happens, the issue with NTVDM appears, trying to switch to full screen gives me an error.


When only the XHCI controller is enabled, no problem.

When AMD Hub is enabled, the issue occurs.

Is there anything that can help with this? Memory dumps of before/after issue?
#3144daniel_k
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #3138
Today i've maked experimental hal.dll to test bugs with dma-64 drivers, if driver declare support dma64, and request memory for dma (AllocateCommonBuffer), hal forced to allocate memory only from HIGH adressses. This mean hardware will survive only with adresses >4Gb.

What about drivers that support only 32-bit DMA?

How does HAL allocate memory?

Can we hack HAL to change its behavior?
#3145gordo999
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #17
yes, dsdt binary table stored in uefi...


@Mov AX, 0xDEAD....or anyone interested...

hi...just getting up to speed on this thread reading each post from the beginning. I am curious about what you are saying about ACPI. Here's my problem....

This may be premature, I still have a lot of reading to do in this thread. Right now I am addressing an 0x000000A5 error but I am also mentioning an 0x000000F7 error. Maybe that has been answered later.

I have XP SP3 mounted on a SATA drive. It was working on SATA on an Intel DQ35JOE mobo so I presumed it had at least primitive SATA drivers.

When I plug it into the SATA 4 port on the mobo and try to boot, I get an immediate boot-ini error, claiming it is trying to boot from C:\Windows. I have no such directory, but I am using a small C: partition that held W98 at one time. The boot.ini and XP loaders are on C: but XP is on partition 2. That is indicated in the boot.ini file.

It is shown in a partition manager running in W7 as disk 3. I will address that problem in a later post and focus on the ACPI issue for now.

If I insert the XP install disk, slipstreamed with SP3, I eventually reach a BSOD screen with an 0x000000A5 error...the APCI in BIOS is claimed to be not fully compliant. Is this what you are talking about and does the BIOS have to be modded to get around that?

I got past the BSOD by hitting F7 as directed on the BSOD screen. However, their explanation does not work for me, I must hit F7 immediately when the F6 message appears, to hit F6 if I need to load storage drivers. Then the install disk will proceed to the end. However, when it reached the stage where it is starting Windows, I get an 0x000000F7 error, which is related to the boot.ini error. F7 means it cannot find a bootable OS.

Recently, I read about the unofficial SP4 update for XP. So, I went through the laborious process of slipstreaming the SP4 onto my XP SP3 disk. Lo and behold, with that SP4 disk, the install found my XP OS install and let me select it from a list of partitions.

It appears to me there may be other BIOS issues if the SP4 install can find my XP install but the stock XP SP3 disk can't.
#3146infuscomus⇗ @gordo999

I have a modified XP ISO that might potentially solves your BSODs, would you like to try it out?

Bug Check 0xF7: DRIVER_OVERRAN_STACK_BUFFER

are you sure that is the BSOD you get?

Bug Check 0x7B: INACCESSIBLE_BOOT_DEVICE

would seem more likely


can you send screenshots all of the BSODs you get? including the A5 BSOD, F7 BSOD etc... a screenshot of the errors would give more information about them.
#3147gordo999
Zitat von ⇗ infuscomus im Beitrag ¶ #3146
I have a modified XP ISO that might potentially solves your BSODs, would you like to try it out?

....Bug Check 0x7B: INACCESSIBLE_BOOT_DEVICE would seem more likely

can you send screenshots all of the BSODs you get? including the A5 BSOD, F7 BSOD etc... a screenshot of the errors would give more information about them.

@infuscomus...yeah, thanks, the ISO might be helpful to get me going.

I'll follow this reply with an exact description of my problem.

You are right it is error 0x7B.  I am getting a bit foggy-minded with all the reading and research I've been doing.

I would be happy to send a screenshot if I could take one. They occur during the boot stage and I have no idea how to take a screenshot then. I could write it out from the screen.
#3148infuscomus⇗ @gordo999

I PMed you the modded ISO, let me know if it works.
#3149gordo999@infuscomus...here's more detail on my problem.

I have XP SP3 installed on it own SATA hard drive. It was working fine on an older Intel DQ35JOE mobo, so I am plugging it into a SATA #4 port on the 8th gen Asus B360M mobo. I think in the past I may have changed the active partition and the primary partition flags so the system would not accidentally boot XP. I have since restored the flags making partition 1 both primary and active and partition 2, with XP, just primary.

BTW...I used the F6 floppy method to install SATA drivers from win-raid. The install went fine. I also have a set of win-raid SATA drivers on the unofficial SP4 update disk. Both recognize the A352 hardware SATA ID on my ASUS mobo.

Partition 1 = (C:) used to be Win98 but I have removed the OS and use the small partition for storage. It was too much of a hassle to convert the partition back to make the XP partition as the boot partition.

Please note that the directory on C: still exists for win98 but it is named WIN98 and not Windows. When I try to boot normally from the drive, I get an error message claiming boot.ini is corrupt and that the system is trying to boot from C:\Windows. No such directory on C: and there are no other drives plugged in while I am booting this drive.

Here is my boot.ini file and please note that it was modified by an attempted repair install with the XP installation disk. I am currently in the middle of that install but when the install tries to reboot, I get stopped by the corrupt boot.ini and another error claiming ''load needed DLLs for kernel". It won't go past that point so I cannot complete the repair install.

[boot loader]
timeout=1  //note...don't know why it's set so low.
default=multi(0)disk(0)rdisk(0)partition(2)/WINXP.2
[operating system]
multi(0)disk(0)rdisk(0)partition(2)/WINXP.2="Microsoft Windows XP Home Edition" /noexecute=optin /fastdetect /noexecute=optout
multi(0)disk(0)rdisk(0)partition(2)/WINXP.2="Microsoft Windows XP Home Edition" /noexecute=optin /fastdetect /noexecute=optout

Please note the following:

-the install program changed the default OS from /WINXP to /WINXP.2. In the XP directory on partition 2, it has also added two new directory, WINXP.0 and WINXP.1, on beside the original WINXP directory.

-you can see they have added another [OS] entry on top of the original, with the /WINXP.2.

-also, they have added a /noexecute=optout to counteract the earlier /noexecute=optin.

Even though the XP is clearly referred to as being in rdisk(0)partition(2) it is looking for the OS in C:\windows. I am wondering if that is somehow wired into the BIOS.

When I look at the setup from a partition manager in W7, the XP drive is referred to as disk 3. Win10 is on disk 1 and W7 is on disk 2. I thought maybe the rdisk value should be changed to reflect that but changing the rdisk value does nothing. I have changed it to 2 but not to 1.

Here's the kicker. I have upgraded my XP SP3 install disk to the unofficial SP4 update. Using that install disk, the install suddenly sees all the partitions on the disk and I am able to select the XP install on partition 2. That means the SP4 install bypasses the 0x7b bsod.
#3150gordo999@infuscomus....just downloading it now...thank you kindly.

 

Page 211

#3151gordo999@infuscomus....good news, no 0xA5 or 0X7B BSODS..

Now for the bad news. :-)

When I run an install using the disk, I get no USB at the point where windows is starting. With the unofficial SP4 updated install disk, I do get the USB keyboard. Fortunately I have an OS/2 keyboard plugged in.

I wanted to get to the repair prompt, which I did. I tried diskpart but it must be the XP version and I find it to be useless. I tried bootcfg /scan from inside the WINXP director on partition 2 and it found no operating systems!!!!

Diskpart lists partition 1 as drive C: but it lists partition 2 as drive H???? Go figure.

I would be interested in the mods you used if they are easy to describe for you and not a lot of trouble.
#3152infuscomus⇗ @gordo999

The mods are

patched ACPI driver (thanks to daniel_k, diderius6)

generic AHCI driver (thanks to skullteria)

generic USB 3.0 driver (thanks to daniel_k)

I was hoping to have USB 3.0 working for XP setup - shame it did not work, at least you had a PS/2 keyboard.

are you prepared to wipe your hard drive and start from scratch?
#3153Doc.Brown
Zitat von ⇗ diderius6 im Beitrag ¶ #3140
@Doc.Brown
This is acpi.sys from outer space ),
with try to hack against BSOD A5 (0x00000003,xxx,0xC0140008,yyy)
Dietmar


Thanks I don't have this A5 BSOD anymore but I'll try this one today to see if it's resolve mine ;)

I'm always stuck with this one during devices installation in XP set-up or at boot when I instal on another motherboard and put it on the Z390 Gene after :

#3154gordo999
Zitat von ⇗ infuscomus im Beitrag ¶ #3152
Are you prepared to wipe your hard drive and start from scratch?

@infuscomus...thanks for info re patching OS.

I may have to do a clean install eventually but I don't want to lose the apps I have on the XP partition. I still have some options, like a backup image of both partition 1 and 2. Part of my problem may be that I have more partitions on the disk besides the XP partition and the drive C:\ partition. They are secondary partitions and can be moved elsewhere, so I could load the saved C: and D: partitions on a separate disk to see how that affects the loading.

I booted the W10 repair disk and it can see the XP partition. It just won't repair anything on it. I might try the W7 repair disk.
#3155gordo999Can anyone confirm the flag settings on a system with nothing on drive C: (partition 1) and XP on drive D: (partition). I have them both set as primary and only partition 1 set as active.

Drive C: used to be W98 but the OS is no longer working. I had the boot.ini file on C: along with the bootloader for XP. It worked for many years just fine.

I'm sure this has something to do with the newer 8th gen mobo because I had no issues with it on the DQ35JOE mobo which is ICH9 or newer.
#3156infuscomus⇗ @gordo999

edit: can you set partition 2 as active? that might work

my guess is the old system used IDE mode which windows98 supports and the new system uses AHCI mode.
windows98 does not support AHCI by default and cannot boot from it without a driver (a driver exists, but it's not free)
so if the windows98 partition is first up to boot, but is in AHCI mode, so it fails.

I think it would be best to backup the drive and start over.

in my setup I have a drive for each OS - I even got windows98 working on AMD Ryzen (with the paid for driver)
#3157XPWELL64Ahci isn't good for HDD but very good for SSD. FEWER OS SUPPORT and same performance.
#3158XPWELL64I saw that every site serves the drivers as free.
#3159diderius6Hi,
this morning I make the ultimative ACPI test for the EVGA dark z390 board.
First, I make with REVELPROG IS Epromer an update of its whole Bios chip 25Q127CSIG.
3 times I read XP friendly Bios vers. 092 out and compare. Ok, all copies are identic.
Then I flash the brandnew BIOS 107 (September 2019), which is not XP friendly to this z390 board.
Ok, first XP SP3 install gives A5 error and in a strange way also 7B.
After testing and testing I succeed to install full ACPI XP on this board. I do not mod anything in Bios 107.
Everything works: Lan, graphik, all USB.. under XP.
The DSDT table of this Bios 107 is similar to the Bios of the Gene XI board
or the Apex XI board or the z390 boards from Gigabyte.
I have to add the registry entries for the STORAHCI driver by hand (see *.reg here in folder)
Dietmar

EDIT: USB boot of XP SP3 works on all(!) USB ports, nice:)).
EDIT2: I put this XP SP3 on nvme boot device. This is now most fast OS ever seen.



diderius6 has attached files to this post
#3160infuscomus⇗ @XPWELL64

AHCI has some improvements for HDDs, NCQ extends the life of a HDD

the paid for driver
⇗ http://www.geocities.ws/rloew/catalog2.htm
#3161gordo999
Zitat von ⇗ infuscomus im Beitrag ¶ #3156

so if the windows98 partition is first up to boot, but is in AHCI mode, so it fails

@infuscomus....good point....worth checking out.

I might be able to backup the XP partition, or use my image backup, and install it back to partition 1. I would have to remove both partitions and make one partition.

Would have to figure out a way to make it bootable. Actually, C: currently has the MBR and is bootable. Maybe I could remove partition, expand C:, and recover the XP image to C:.

Too tired to think right now but thanks for ideas. Appreciate it.

BTW...I was using attrib in the cmd window of W7 to look at the C: partition on my XP disk. It still has hidden files going back to the DOS days like drvspace.bin, command.com, and all that good stuff. Better to clean it all out and start with fresh partition.

ps.will set partition 2 active but I think I may have already tried that. No harm in trying.
#3162IntiMD
Zitat von ⇗ infuscomus im Beitrag ¶ #3156
windows98 does not support AHCI by default and cannot boot from it without a driver (a driver exists, but it's not free)



Well, the driver has been released for free due to the author's demise and his son allowing people to freely redistribute it for purposes of continuing his legacy.

For those who don't know what am I talking about, it's about one of Rudolph "rloew" Loew's patches (the AHCI one). ⇗ His driver collection which is user-contributed can be found in the Internet Archive.
#3163diderius6⇗ @Doc.Brown
This BSOD comes from the Iastor.sys driver. I have had the same problem.
When you use the STORAHCI driver from my last post,
this BSOD is gone. You have to notice: Everytime when XP wants
to install the Iastor 1006 driver from Fernando, you need to stop this
and set in this place the Standard SATA AHCI Controller (see photo) from ⇗ @skullteria
Dietmar
#3164infuscomus⇗ @IntiMD

Oh dear! I didn't know he had died.

Rest in Peace, Rloew.
#3165Mov AX, 0xDEAD
Zitat von ⇗ daniel_k im Beitrag ¶ #3144
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #3138
Today i've maked experimental hal.dll to test bugs with dma-64 drivers, if driver declare support dma64, and request memory for dma (AllocateCommonBuffer), hal forced to allocate memory only from HIGH adressses. This mean hardware will survive only with adresses >4Gb.

What about drivers that support only 32-bit DMA?
How does HAL allocate memory?
Can we hack HAL to change its behavior?

If driver declare only dma32, hal work as w2003 - 1) always allocate mapregisters if we have >4Gb phys adressing) limit allocating buffer memory <4GB.

Hal allocate shared cpu<->dma<->pci memory in HalAllocateCommonBuffer, but not all layers in windows uses hal directly, LAN drivers uses NDIS.sys, Sound drivers use portcls.sys, Video may use videoprt.sys

You can patch to force dma32 for all drivers:
- mov byte ptr [edi+0b], 0 in HalGetAdapter ; Dma64Adressing=0
- HalpGetAdapterMaximumPhysicalAddress return max allowed adress for device in EDX:EAX, for dma32 device is 0:FFFFFFFF, for dma64 device is FFFFFFFF:FFFFFFFF, need to force 0:xxxxx

p.s. i updated post to include new info ¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (210)

 

Page 212

#3166daniel_k⇗ @Mov AX, 0xDEAD

Thanks for the detailed info on how HAL works and several driver testing reports.

Interesting that as I have 16Gb, the hacked AMDXHC driver works just fine, pity it breaks NTVDM.

When forcing DMA32 in AMDXHC, no issues with NTVDM/VGA, but it hangs the flash drive as I've said before.

In your opinion there isn't anything else that can be done with this driver?


I'm trying to hack another driver, but is proving to be difficult.

If a error code 10 is shown, it's reported by the driver, right? Is there a reference list with "error codes" that a driver must report to Windows?

I thought it would be something like 0xC000000A (A would be 10), but can't find those in the driver.
#3167daniel_k⇗ @Mov AX, 0xDEAD

Did you evert try Vista 32-bit by any chance?

Going to try it later today, seems to have issues with timer on Haswell and later, user mode services usually fail to load after hanging for a long time.

Even with SP2, it happens.
#3168Doc.Brown
Zitat von ⇗ diderius6 im Beitrag ¶ #3159
Hi,
this morning I make the ultimative ACPI test for the EVGA dark z390 board.
First, I make with REVELPROG IS Epromer an update of its whole Bios chip 25Q127CSIG.
3 times I read XP friendly Bios vers. 092 out and compare. Ok, all copies are identic.
Then I flash the brandnew BIOS 107 (September 2019), which is not XP friendly to this z390 board.
Ok, first XP SP3 install gives A5 error and in a strange way also 7B.
After testing and testing I succeed to install full ACPI XP on this board. I do not mod anything in Bios 107.
Everything works: Lan, graphik, all USB.. under XP.
The DSDT table of this Bios 107 is similar to the Bios of the Gene XI board
or the Apex XI board or the z390 boards from Gigabyte.
I have to add the registry entries for the STORAHCI driver by hand (see *.reg here in folder)
Dietmar

EDIT: USB boot of XP SP3 works on all(!) USB ports, nice:)).






⇗ @diderius6

Do you replace original files in STORAHCItxtSetup by yours in this attached file or use them standalone with Nlite integration please ?

Thanks
#3169diderius6⇗ @Doc.Brown

I use nlite for STORAHCI driver via txtsetup.oem.
I use only files from this folder package from attached file in
¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (211)
I copy by hand storport.sy_ and this acpi.sy_
in i386 folder.
When you do all correct,
on next reboot you get BSOD 7B.
This happens, because some values are missed in registry for the STORAHCI driver.
This you have to do by hand with the *.reg file
Dietmar
#3170Doc.Brown
Zitat von ⇗ diderius6 im Beitrag ¶ #3169
@Doc.Brown

I use nlite for STORAHCI driver via txtsetup.oem.
I use only files from this folder package from attached file in
¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (211)
I copy by hand storport.sy_ and this acpi.sy_
in i386 folder.
When you do all correct,
on next reboot you get BSOD 7B.
This happens, because some values are missed in registry for the STORAHCI driver.
This you have to do by hand with the *.reg file
Dietmar


Ok thanks,but I don't understand how you could do this step if you can't boot with BSOD 7B ? Could you tell me more please
#3171diderius6⇗ @Doc.Brown

Yes, this procedure is unknown for most. It even works for Win2000, Win2003, Vista, Win7, win8, win10, (win12^^, all 32 and 64 bit) via XP(!) SP3. There is a tool from Microsoft, that overcomes any restriction for registry in any OS via XP. (There is a reason, why the US army uses only XP SP3 everywhere and also the german Bundestag.) Here we dont need this.
I make a try to describe:
Take the harddisk with BSOD 7B XP (PC1) out of the compi.
Put it in an USB case, connected to a XP compi (PC2).
On PC2 you type regedit in commandline.
Then you go on HKLM in this machine.
Left above on top click on "Load structure".
Then you look in windows\system32\config\ for the hive system (on the USB drive with XP from PC1)
Click open.
A window opens, for a name of the structure. Name it
otto
Click ok.
In PC2 registry you see under HKLM a new structure with name otto.
This is the open registry from PC1.
I prepare for you a storahciotto.reg just now.
On this storahciotto.reg you double click.
Then a message comes, if you want to add this to registry, click yes and then ok. Then the information is put to registry (of PC1).
Click on structure otto
so that it is just blue.
Then go above left "delete structure". (Dont click import or export!!!).
With otto marked blue click on it and then yes.
The new registry has been written to PC1 harddisk,
close registry on PC2, thats all. It works for any win version.
Dietmar

EDIT: Note that newer versions of Windows don't allow users to delete these registry keys. It may be necessary to run redgedit.exe from another software tool that grants elevated access to the registry. For example, users can run the following command from the command line to run regedit using the System account:
psexec -i -d -s c:\windows\regedit.exe

PsExec is a part of PSTools available from Microsoft at:
⇗ http://technet.microsoft.com/en-us/sysin...s/bb897553.aspx



diderius6 has attached files to this post
#3172Doc.Brown⇗ @diderius6

Wow impressive !
Fresh iso is ready with only acpi and storahci(will add USB later if it works),I try to do this ^^

Thank you :)

Edit: that's right I wasn't able do delete it(and to execute the file too,I had to add Total Control by clicking on Permissions) so I just unloaded the hyve but at next boot(XP) I had an error message that tell me system file in system32 is missing or damaged,I try with Psexec
#3173diderius6⇗ @Doc.Brown

Can you install XP in txtmode on the Gene XI board with 57 Bios?

Dietmar
#3174Doc.Brown⇗ @diderius6

Don't know what is txtmode install

It won't work even with Psexec under Win8.1,I can't erase otto, -s argument in commandline for Psexec return an error and without I'm not able to delete otto ...
#3175diderius6⇗ @Doc.Brown

Life is much easier when you use XP on PC2

Dietmar

PS: Txtmode in XP setup is the first phase of XP install, that you can chose harddisk and drivers gets installed before reboot.
The tool works also under win 8.1, I tested.

For to delete otto:
Just close regedit one time on PC2 and open it again.
Then you can delete otto there.
#3176Doc.Brown⇗ @diderius6

Yep I will set-up an old school motherboard to put easy XP ghost on it but on my 8.1(surely too much modded for benchmarking) that doesn't work unfortunately

I guess Txtmode should work cause I can press F2/F6/F7 or F5 in the beginning of install
#3177diderius6⇗ @Doc.Brown

When you build correct XP SP3 setup CD,
no need to press F5 during setup
Dietmar
#3178Mov AX, 0xDEAD
Zitat von ⇗ daniel_k im Beitrag ¶ #3166
@Mov AX, 0xDEAD
In your opinion there isn't anything else that can be done with this driver?

If a error code 10 is shown, it's reported by the driver, right? Is there a reference list with "error codes" that a driver must report to Windows?
I thought it would be something like 0xC000000A (A would be 10), but can't find those in the driver.

- i dont know what is wrong with driver, no ideas

- no, error 10 is "human" error of device manager, driver return another error like Cxxxxxx when windows call one of it functions (usualy IRP request). in case of VIA we have wdf and error can be inside of it
#3179Mov AX, 0xDEAD
Zitat von ⇗ daniel_k im Beitrag ¶ #3167
@Mov AX, 0xDEAD
Did you evert try Vista 32-bit by any chance?


I plan to install Win7 with unlocked_pae and recheck all what i already found. Win7's hal DMA functions is similar to win2003.
Win8/10 hal is different beast
#3180Doc.Brown
Zitat von ⇗ diderius6 im Beitrag ¶ #3177
@Doc.Brown

When you build correct XP SP3 setup CD,
no need to press F5 during setup
Dietmar


Yup I know,it was just an example to tell you txtmode is doable with my iso ^^
If you want to test it I can upload it  ;)

Edit: also try to add register on my H24 Win10,Psexec works well but unable to delete the entry again,only option is to unload the hyve but some files stays in XP system32\config directory and when I restart the install already says that System is missing or damaged ... don't know what i'm doing wrong but i do xD

 

Page 213

#3181diderius6⇗ @Doc.Brown

And what happens after txtmode?

Dietmar
#3182Doc.Brown
Zitat von ⇗ diderius6 im Beitrag ¶ #3181
@Doc.Brown

And what happens after txtmode?

Dietmar


Nothing wrong just the BSOD after first reboot as you said that's why I'm trying to inject the reg file to pass the bsod ;)
#3183diderius6⇗ @Doc.Brown
You can upload your hive "system" from Bsod 7B XP SP3
and I add the registry entries for you
Dietmar

PS: And dont forget to look, if modded acpi.sys and storport.sys are at their place:)).
#3184Doc.Brown
Zitat von ⇗ diderius6 im Beitrag ¶ #3183
@Doc.Brown
You can upload your hive "system" from Bsod 7B XP SP3
and I add the registry entries for you
Dietmar

PS: And dont forget to look, if modded acpi.sys and storport.sys are at their place:)).



My mistake it was the storport,I'm a noobish xD
But always the same IRQL not less or equal after during devices set-up after first reboot :(
I try to put the reg file,you can find the system hive uploaded here : ⇗ System hive

Thanks
#3185diderius6⇗ @Doc.Brown
And here it is
Dietmar

PS: I noticed, that you also have drive D, E.
I deleted those entries in registry, because via this way XP does not know where to continue.



diderius6 has attached files to this post
#3186daniel_k⇗ @Mov AX, 0xDEAD, I've found a pattern!

Drivers that use Mm64BitPhysicalAddress don't work properly. They seem to be badly coded.

ASMedia, TI and AMDxhc31 all share same code, which don't have any references to Mm64BitPhysicalAddress and always work.

Performing both 32-bit and 64-bit DMA:
⇗ https://community.osr.com/discussion/192085

Problem is, MCCI's drivers are really, really hard to hack, seems like there are sanity checks everywhere, not just some simple Device ID checks.

This code is from amdxhc31.sys v1.0.2.0 disassembled in IDA:

 
		mov	[ebp+DeviceDescription.ScatterGather], dl
mov dl, [eax+2]
mov [ebp+DeviceDescription.Dma32BitAddresses], dl
mov dl, [eax+0Ch]
mov [ebp+DeviceDescription.IgnoreCount], dl
mov dl, [eax+3]
mov [ebp+DeviceDescription.Dma64BitAddresses], dl
mov edx, [eax+8]
mov [ebp+DeviceDescription.InterfaceType], edx
mov edx, [eax+4]
mov [ebp+DeviceDescription.Master], cl
mov [ebp+DeviceDescription.MaximumLength], edx
test cl, cl
jnz short loc_2BE1F
mov cl, [eax+18h]
mov [ebp+DeviceDescription.DemandMode], cl
mov cl, [eax+19h]
mov [ebp+DeviceDescription.AutoInitialize], cl
mov ecx, [eax+14h]
mov [ebp+DeviceDescription.DmaChannel], ecx
mov ecx, [eax+1Ch]
mov eax, [eax+20h]
mov [ebp+DeviceDescription.DmaWidth], ecx
mov [ebp+DeviceDescription.DmaSpeed], eax

loc_2BE1F: ; CODE XREF: sub_2BD82+7D j
mov edi, ds:IoGetDmaAdapter
lea eax, [esi+14h]
push eax ; NumberOfMapRegisters
lea eax, [ebp+DeviceDescription]
push eax ; DeviceDescription
push dword ptr [ebx+10h] ; PhysicalDeviceObject
mov [ebp+DeviceDescription.Version], 2
call edi ; IoGetDmaAdapter
test eax, eax
jnz short loc_2BE57
lea eax, [esi+14h]
push eax ; NumberOfMapRegisters
lea eax, [ebp+DeviceDescription]
push eax ; DeviceDescription
push dword ptr [ebx+10h] ; PhysicalDeviceObject
mov [ebp+DeviceDescription.Version], 1
call edi ; IoGetDmaAdapter
mov byte ptr [esi+20h], 0
jmp short loc_2BE5B
; ---------------------------------------------------------------------------

loc_2BE57: ; CODE XREF: sub_2BD82+B9 j
mov byte ptr [esi+20h], 1

loc_2BE5B: ; CODE XREF: sub_2BD82+D3 j
pop ebx
test eax, eax
jnz short loc_2BE69
mov [ebp+var_4], 0C000009Ah
jmp short loc_2BECE
#3187Doc.Brown
Zitat von ⇗ diderius6 im Beitrag ¶ #3185
@Doc.Brown
And here it is
Dietmar

PS: I noticed, that you also have drive D, E.
I deleted those entries in registry, because via this way XP does not know where to continue.



⇗ @diderius6

Same BSOD at the same time again :(
Perhaps it's my XP I will try another iso less lighter
#3188diderius6⇗ @Doc.Brown

Does this Bsod happen during install of XP
and which exact number has this BSOD
Dietmar
#3189Doc.Brown
Zitat von ⇗ diderius6 im Beitrag ¶ #3188
@Doc.Brown

Does this Bsod happen during install of XP
and which exact number has this BSOD
Dietmar


Yes always the same since the beginning in fact,occuring at the middle of device installation with those code :



I tried everything in bios,modded bios or stock from Asus,Fernando's AHCI or not,USBXHCI or not,each acpi files since weeks,install from X299 ... nothing help
#3190diderius6⇗ @Doc.Brown
Change your acpi.sys on the harddisk, where XP install already starts, against this one
Dietmar

PS: I have had exact the same symptoms. But via my install methode I overcome this. It is one single device,
which makes this happen.



diderius6 has attached files to this post
#3191Doc.Brown
Zitat von ⇗ diderius6 im Beitrag ¶ #3190
@Doc.Brown
Change your acpi.sys on the harddisk, where XP install already starts, against this one
Dietmar

PS: I have had exact the same symptoms. But via my install methode I overcome this. It is one single device,
which makes this happen.



New BSOD 7E with this one :

#3192diderius6⇗ @Doc.Brown
Yes, this is the Bsod, when acpi.sys cries for debugger.
Here is last acpi.sys,
change it again.
After this, I am out of ideas
Dietmar

PS: Can you hit F8 and choose "Safe Mode" at the beginning,
just before Setup restarts?



diderius6 has attached files to this post
#3193diderius6⇗ @Doc.Brown
One idea I have:
Copy just my hive "system" into your folder windows\system32\config
Dietmar



diderius6 has attached files to this post
#3194Doc.Brown⇗ @diderius6

Ok but with wich acpi.sys do you want I test your system hive ?
This XP compatibility is starting to make feel like a fool :D
 
Edit: yes I can choose F8 at set-up start
#3195diderius6⇗ @Doc.Brown
In this row, as you tested acpi.sys just now
Dietmar

PS: IF F8 really works, this means new chance.

 

Page 214

#3196Doc.Brown
Zitat von ⇗ diderius6 im Beitrag ¶ #3195
@Doc.Brown
In this row, as you tested acpi.sys just now
Dietmar

PS: IF F8 really works, this means new chance.


Yes F8 works,I didn't try to boot in safe mode yet but I have the menu
So with your system file and the acpi before the last one you've uploaded 7E BSOD again but the 2 last codes changed :

#3197diderius6⇗ @Doc.Brown
This means nothing, because it is debug acpi.sys,
try other too
Dietmar
#3198Doc.BrownThis one is with your last acpi :



With the stock 0057 bios not the modded one
I try with modded bios and the acpi from your EVGA compatibility STORAHCI rar
#3199diderius6This is interesting,
because I remember this was only one change something like 74 => EB
in acpi.sys
Dietmar

PS: This BSOD is gone with my Bios mod for 57, yes.

No, dont change this acpi.sys. Just flash Bios with 57 mod.
#3200Doc.BrownBSOD 7B 0xB84C3524,0xC0000034 with acpi from z390 Dark

Bios is flashing...
#3201diderius6⇗ @Doc.Brown
This means only, that the registry entries in "system" need to be renewed for STORAHCI driver.
Why this happen, I have no idea. But again put entries by hand into registry helps.
This was the way for me too
Dietmar

EDIT: May be, crazy Setup from XP tries to integrate "better" driver than the STORAHCI to registry "system".
In this case, at once would be clear, what happens.
But this can be tricked out: Just copy  ntoskrnl.exe and hal.dll for "Standard PC" into
windows\system32. After setup, just change them back.
#3202Doc.BrownBiggest improvement ever,set-up finished !!!
With your last acpi.sys,modded bios and the system file patched ... but BSOD 0A IRQL not less or equal again after last reboot this time :/
I boot in safe mod and this time i've got the Standard driver for AHCI/SATA instead of Intel and the Microsoft ACPI exclamation mark so i will add the acpi.inf file to see if it will be gone,hope BSOD will be gone too but I doubt
#3203diderius6⇗ @Doc.Brown
Cool, this is exact what I thought, that the XP Setup tries to change the STORAHCI entry in "system".
This is exact, what happens to me. And Now I remember that I do after this the same steps.
Only install Standard driver for AHCI/SATA (is STORAHCI) via Safe Boot f8 and thats all
Dietmar

EDIT: acpi.sys needs no *.inf at all!
#3204gordo999
Zitat von ⇗ IntiMD im Beitrag ¶ #3162
For those who don't know what am I talking about, it's about one of Rudolph "rloew" Loew's patches (the AHCI one)


@IntiMDI.... remember the guy. Just looking through the URL you supplied, he seemed to be well in advance of his time.

There were two versions of Win98....Win98 and Win98SE. I started with 98 on my C: drive and later added XP as a dual boot. Win98SE ran on FAT32 and my C: drive is still FAT32. That may be contributing to my problem.

Furthermore, back in those days it was not advisable to use an entire drive as an OS. So, I partitioned much smaller drives than we have today into 40 Gb partitions. An 80 Gb drive was the standard back then so I partioned my drives with 4Gb for W98 on C:, and 40 Gb for XP on D:. I added a third 40Gb logical partition for data.

Later, when 250 Gb and 500 Gb drives became available, if I transferred my C: and D: drives to the larger drive I still had the mentality of using smaller partitions. So, I'm stuck for the time being with many confusing drive letters due to numerous smaller partitions.

The idea was to use extended partitions for data only but 40Gb became too small for XP and I began installing apps on the extended partitions.  I need to step back and do some housecleaning, moving apps and files to increase partition sizes and cut back on drive letters.

Remember Partition Magic? It had a need utility for allowing the user to move an app and have PM take care of all the new partition references in the registry. Wonder if it still works?
#3205gordo999@Fernando...don't know how the previous post re Win98 got into this thread. I replied to IntiMD using quotes on another thread and it showed up here.

Update...sorry, I figured it out, it's the same thread. The post to which I replied is several pages back but I was lead to it from a PM so it appeared to be at the end of the thread.
#3206diderius6⇗ @gordo999

AOMEI is from the same people which makes Partition Magic.
Even the background and the name is the same
Dietmar
#3207Doc.Brown⇗ @diderius6

That's ok now it seems,I installed STORAHCI and the reg in safe mode but windows replace ACPI(I will change it in SP3.cab for next iso) so I also put the system file mod and set-up restart another time :D but it seems ok in normal boot now and I understand what I have to do to(I hope)

Do you know if the system file is in the SP3.cab also or somewhere else to integrate it direct in the iso build ?
Is there a way to have a silent install for STORAHCI and his .reg file during set-up ?

Anyway you're the man my friend,you're skills and knowledge are huge,this succeed is yours,so much thanks :)
Now I have to add USB and NVMe support ans see if Asus TurboV works fine
#3208diderius6⇗ @Doc.Brown

I am happy, that in the end it works also for you on the Gene XI board.
When you read the end of my description from
¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (199)
you see, there the same steps work. But today also a new acpi.sys is "born",
the acpi.sys from outer space ) now also with 10006 BSOD mod
Dietmar

EDIT: Dont forget to copy the modded hal.dll and intelppm.sys against the timer error into
windows\system32 and windows\system32\drivers.
#3209gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #3206
AOMEI is from the same people which makes Partition Magic.
Even the background and the name is the same Dietmar

@diderius6...interesting. I know Symantec bought PM out then dumped it. AOMEI must have resurrected it, which is good. PM was a very good partition manager in its day, far better than anything Symantec had to offer. Glad to hear it is still around, albeit in another form.

I have AOMEI on a new Hirens disk (v.1.01), I'll look closer to see if they kept the other files from PM for moving a partition.
#3210Doc.Brown
Zitat von ⇗ diderius6 im Beitrag ¶ #3208
@Doc.Brown

I am happy, that in the end it works also for you on the Gene XI board.
When you read the end of my description from
¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (199)
you see, there the same steps work. But today also a new acpi.sys is "born",
the acpi.sys from outer space ) now also with 10006 BSOD mod
Dietmar

EDIT: Dont forget to copy the modded hal.dll and intelppm.sys against the timer error into
windows\system32 and windows\system32\drivers.


What is this timer error ?
Could you provide me those files please I don't have them,should I put them in my SP3.cab modded ?

Thanks

 

Page 215

#3211diderius6⇗ @Doc.Brown
It is here in the forum, some posts ago ¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (197)
halplusintelppm.rar
Dietmar

PS: You can integrate them. But I was to lazy, put them always later into harddisk:))
#3212diderius6Here is brandnew acpi.sys from outer space )
now also with mod against BSOD 10006 and C0140008
Dietmar

EDIT: I just test this nice acpi.sys from outer space ):
It works on EVGA dark z390 board with stock Bios 107.

Now we have 2 lines of working acpi.sys,
one based on 5512 (XP SP3)
and one based on 5048 (Longhorn).



diderius6 has attached files to this post
#3213Doc.Brown
Zitat von ⇗ diderius6 im Beitrag ¶ #3211
@Doc.Brown
It is here in the forum, some posts ago ¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (197)
halplusintelppm.rar
Dietmar

PS: You can integrate them. But I was to lazy, put them always later into harddisk:))



thank you,i didn't see them cause it's for PAE problems i was only focus on the damn ACPI problem until now :D
#3214infuscomus⇗ @diderius6

does this ACPI 5512 work for AMD Ryzen too?
#3215Doc.Brown
Zitat von ⇗ diderius6 im Beitrag ¶ #3212
Here is brandnew acpi.sys from outer space )
now also with mod against BSOD 10006 and C0140008
Dietmar

EDIT: I just test this nice acpi.sys from outer space ):
It works on EVGA dark z390 board with stock Bios 107.

Now we have 2 lines of working acpi.sys,
one based on 5512 (XP SP3)
and one based on 5048 (Longhorn).


⇗ @diderius6
No need of modded bios with this one instead of the last one before so this one is better ^^

Everything seems fine :



Only little thing to solve is that I have an error Code 39 during USB driver installation :



I used modded amdxhx,hal and intelppm modded for timer and there's no USBD.sys in system32\drivers,copy manually but error is still here
Tried Renesas PCIE card but doesn't work too,I think I don't have the good drivers
#3216infuscomus⇗ @Doc.Brown

try reinstalling the driver now that you have usbd.sys copied across.

⇗ @diderius6

I have made a txtsetup.sif that successfully copies storport.sys and usbd.sys to c:\windows\system32\drivers every time

although i am not sure which modification i made actually does the copying across



infuscomus has attached files to this post
#3217diderius6⇗ @Doc.Brown

There may be a problem with the acpi.sys from outer space ) and USB,
because it can only handle 32 bit integer.
Lenovo solved this problem, just using during compile of their DSDT the -r1
switch in Iasl on all their notebooks.
In few min I send you a new 57 mod Bios for USB
Dietmar
#3218Doc.Brown⇗ @diderius6

USB works now,I used Z390 Dark tips and tools and after put Intel 3.1 USB driver to have it working ^^

Thanks
#3219diderius6⇗ @infuscomus
I just update the acpi.sys from outer space )
for to work also with Ryzen,
I think it is a major step,
please test
Dietmar



diderius6 has attached files to this post
#3220diderius6⇗ @infuscomus
About Txtsetup.sif and storport take a look at
¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (190)
Dietmar
#3221Gelip⇗ @diderius6
I make new tests with WinXP x64 on UEFI. The system can also be booted from a GPT partition in pure UEFI mode with Secure Boot enabled
I have also added more detailed logs from WinDbg:
⇗ Boot WinXP 32-bit/64-bit on UEFI 32-bit/64-bit
#3222infuscomus⇗ @diderius6

your outerspace acpi.sys worked! nice!

question: do you have to change the version numbers after modifying files? i thought that was unnecessary
#3223diderius6⇗ @infuscomus

Dont forget that this acpi.sys is from outer space ).
I am happy, that it works, because this type of hack for Ryzen
makes boot possible on a lot of crazy Intel boards too
Dietmar
#3224diderius6⇗ @Gelip
Please write a new Tutorial,
with all what you reach about UEFI boot for XP.
For example disable signature check, GPT partition boot, which kind of partitions are necessary for UEFI.
Bios with EFI files for ntfs, GPT and Fat32.
May be we find a way, to integrate vga with INT 10 as *.efi file
to Bios. And the question about 32bit XP SP3
Dietmar

PS: In next days I get 3 old notebooks x220 from Lenovo. They are MUCH better than the new Lenovo Flex 10, brrr..

EDIT: There a crazy ideas possible with UEFI boot of XP.
For example, until now it is not possible to boot XP via nvme, when there is no legacy support for.
I tested this a lot, may be chance would also be in an updated nvme.sys which uses scsiport.sys instead of storport.sys.
But via EFI boot of XP, at once you can use ANY uefi driver for nvme boot of XP.

EDIT2: Please add all needed files.
#3225infuscomus⇗ @diderius6

does changing the version number need to be done? or was it just for fun?

 

Page 216

#3226diderius6⇗ @infuscomus
You need to ask outer space )
Dietmar
#3227diderius6The STORAHCI driver from ⇗ @skullteria
works also with ASM106 controller.
This is the only generic AHCI driver for XP
Dietmar
#3228infuscomus⇗ @daniel_k

doing some testing - i tried to load your generic amdxhci usb 3 driver in XP textmode setup and got a D0 BSOD - Bug Check 0xD0: DRIVER_CORRUPTED_MMPOOL on an AMD AB350 motherboard.
#3229daniel_k⇗ @infuscomus, that driver is only for Intel systems.

For Ryzen, ask @diderius6.

My last AMD rig was a socket 939 Athlon 64 3200+.
#3230diderius6I found an interesting Embedded compi,
which supports XP on Bay Trail cpu

EmNANO-i2300
EmQ-i2301
NAO-660E
ARES-5300
LYNC-708-3845G2
ASLAN-W810/812C-2930G2

It has an UEFI Insyde Bios,
with interesting switch in Bios menu

APCI Selection Select boot to Acpi 3.0/Acpi 1.0B
Options are Acpi 1.0B/Acpi 3.0/Acpi 4.0/Acpi 5.0

There you could compare as much as possible,
but I dont know, how to get any of this Bios, no downloads on Website for Bios
Dietmar
#3231daniel_k⇗ @Mov AX, 0xDEAD

Can you help me, please?

In a PE file with .rdata section with strings and reference pointers, how can I find the code which loads those?

IDA just shows strings -> reference pointers, but doesn't tell me where the code actually does something with them.


Is there a way to find out where a function is called from when it isn't called in a conventional way?

The code I'm analyzing is being called from something like this:

 
8B861C010000             mov          eax,[esi][00000011C]
85C0 test eax,eax
741E jz .000011627
8B480C mov ecx,[eax][00C] -> huh?
85C9 test ecx,ecx
7405 jz .000011615
FF7004 push d,[eax][4]
FFD1 call ecx



And this one? There is nothing at that offset, all zeroed? Is it filled at runtime?

 
FF15C4100300                   call         d,[0000310C4]
#3232Doc.BrownDuring comparing and modding my TXTSETUP.SIF I see there's an HIVE.INF file for adding registry key but the format is different than a .reg file.My goal is to add the STORAHCI.reg keys into this HIVE.INF and have the most easy XP installation as it could.
Is someone is able to help me to translate it with the good format please ?

The STORAHCI.reg text :

[HKEY_LOCAL_MACHINE\System\ControlSet001\Services\storahci]
"Type"=dword:00000001
"Start"=dword:00000000
"ErrorControl"=dword:00000003
"ImagePath"=hex(2):53,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,64,00,\
72,00,69,00,76,00,65,00,72,00,73,00,5c,00,73,00,74,00,6f,00,72,00,61,00,68,\
00,63,00,69,00,2e,00,73,00,79,00,73,00,00,00
"Group"="SCSI Miniport"
"DisplayName"="@mshdc.inf,%storahci_ServiceDescription%;Microsoft Standard SATA AHCI Driver"
"DriverName"="mshdc.inf"

[HKEY_LOCAL_MACHINE\System\ControlSet001\Services\storahci\Parameters]
"BusType"=dword:0000000b
"IoTimeoutValue"=dword:0000000a

[HKEY_LOCAL_MACHINE\System\ControlSet001\Services\storahci\Parameters\Device]
"ResetInInit"=hex(7):56,00,45,00,4e,00,5f,00,31,00,31,00,30,00,36,00,26,00,44,\
00,45,00,56,00,5f,00,36,00,32,00,38,00,37,00,26,00,52,00,45,00,56,00,5f,00,\
2a,00,00,00,00,00
"SingleIO"=hex(7):56,00,45,00,4e,00,5f,00,31,00,31,00,30,00,36,00,26,00,44,00,\
45,00,56,00,5f,00,36,00,32,00,38,00,37,00,26,00,52,00,45,00,56,00,5f,00,30,\
00,30,00,00,00,56,00,45,00,4e,00,5f,00,31,00,31,00,30,00,36,00,26,00,44,00,\
45,00,56,00,5f,00,36,00,32,00,38,00,37,00,26,00,52,00,45,00,56,00,5f,00,31,\
00,30,00,00,00,56,00,45,00,4e,00,5f,00,31,00,31,00,30,00,36,00,26,00,44,00,\
45,00,56,00,5f,00,36,00,32,00,38,00,37,00,26,00,52,00,45,00,56,00,5f,00,32,\
00,30,00,00,00,00,00
"IgnoreHotPlug"=hex(7):56,00,45,00,4e,00,5f,00,31,00,30,00,30,00,32,00,26,00,\
44,00,45,00,56,00,5f,00,34,00,33,00,38,00,30,00,26,00,52,00,45,00,56,00,5f,\
00,2a,00,00,00,00,00
"NeverNonQueuedErrorRecovery"=hex(7):56,00,45,00,4e,00,5f,00,31,00,30,00,30,00,\
32,00,26,00,44,00,45,00,56,00,5f,00,34,00,33,00,38,00,30,00,26,00,52,00,45,\
00,56,00,5f,00,2a,00,00,00,00,00
"EnableCLOReset"=hex(7):56,00,45,00,4e,00,5f,00,31,00,30,00,30,00,32,00,26,00,\
44,00,45,00,56,00,5f,00,34,00,33,00,39,00,31,00,26,00,52,00,45,00,56,00,5f,\
00,2a,00,00,00,00,00
"NoFUACommand"=hex(7):48,00,54,00,45,00,2a,00,00,00,48,00,69,00,74,00,61,00,63,\
00,68,00,69,00,2a,00,00,00,48,00,54,00,53,00,2a,00,00,00,48,00,44,00,53,00,\
2a,00,00,00,48,00,44,00,54,00,2a,00,00,00,00,00
"NeedSetTransferModeCommand"=hex(7):4d,00,43,00,42,00,51,00,45,00,36,00,34,00,\
47,00,42,00,4d,00,50,00,50,00,2a,00,00,00,00,00
"NoLPM"=hex(7):57,00,44,00,37,00,34,00,30,00,41,00,44,00,46,00,44,00,3f,00,30,\
00,30,00,4e,00,4c,00,52,00,31,00,2a,00,00,00,57,00,44,00,43,00,20,00,57,00,\
44,00,37,00,34,00,30,00,41,00,44,00,46,00,44,00,3f,00,30,00,30,00,4e,00,4c,\
00,52,00,31,00,2a,00,00,00,4d,00,61,00,78,00,74,00,6f,00,72,00,20,00,36,00,\
56,00,3f,00,3f,00,3f,00,45,00,30,00,2a,00,00,00,4d,00,61,00,78,00,74,00,6f,\
00,72,00,20,00,36,00,56,00,3f,00,3f,00,3f,00,46,00,30,00,2a,00,00,00,4d,00,\
61,00,78,00,74,00,6f,00,72,00,20,00,37,00,56,00,3f,00,3f,00,3f,00,45,00,30,\
00,2a,00,00,00,4d,00,61,00,78,00,74,00,6f,00,72,00,20,00,37,00,56,00,3f,00,\
3f,00,3f,00,46,00,30,00,2a,00,00,00,00,00

[HKEY_LOCAL_MACHINE\System\ControlSet001\Services\storahci\Parameters\PnpInterface]
"5"=dword:00000001


[HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\CriticalDeviceDatabase\PCI#CC_010601]
"ClassGUID"="{4D36E96A-E325-11CE-BFC1-08002BE10318}"
"Service"="storahci"

   

and the HIVE.inf exemple of content :

HKLM,"SYSTEM\CurrentControlSet\Control\FileSystem","NtfsDisable8dot3NameCreation",0x00010003,0
HKLM,"SYSTEM\CurrentControlSet\Control\FileSystem","Win31FileSystem",0x00010001,0
HKLM,"SYSTEM\CurrentControlSet\Control\FileSystem","Win95TruncatedExtensions",0x00010001,1
HKLM,"SYSTEM\CurrentControlSet\Control\GraphicsDrivers",,0x00000012
HKLM,"SYSTEM\CurrentControlSet\Control\GraphicsDrivers\DCI","Timeout",0x00010003,7
HKLM,"SYSTEM\CurrentControlSet\Control\GraphicsDrivers\UseNewKey",,0x00000012
HKLM,"SYSTEM\CurrentControlSet\Control\GroupOrderList","Base",0x00030003,\
0e,00,00,00,0e,00,00,00,01,00,00,00,02,00,00,00,03,00,00,00,04,00,00,00,05,\
00,00,00,06,00,00,00,07,00,00,00,08,00,00,00,09,00,00,00,0a,00,00,00,0b,00,\
00,00,0c,00,00,00,0d,00,00,00
HKLM,"SYSTEM\CurrentControlSet\Control\GroupOrderList","Boot Bus Extender",0x00030001,\
05,00,00,00,\
01,00,00,00,\
02,00,00,00,\
03,00,00,00,\
04,00,00,00,\
05,00,00,00
HKLM,"SYSTEM\CurrentControlSet\Control\GroupOrderList","Extended Base",0x00030001,\
03,00,00,00,01,00,00,00,02,00,00,00,04,00,00,00
HKLM,"SYSTEM\CurrentControlSet\Control\GroupOrderList","Keyboard Class",0x00030003,\
01,00,00,00,01,00,00,00
HKLM,"SYSTEM\CurrentControlSet\Control\GroupOrderList","Keyboard Port",0x00030001,\
03,00,00,00,01,00,00,00,02,00,00,00,03,00,00,00
HKLM,"SYSTEM\CurrentControlSet\Control\GroupOrderList","Ndis",0x00030003,\
09,00,00,00,01,00,00,00,02,00,00,00,03,00,00,00,04,00,00,00,05,00,00,00,06,\
00,00,00,07,00,00,00,08,00,00,00,09,00,00,00
HKLM,"SYSTEM\CurrentControlSet\Control\GroupOrderList","Network",0x00030003,\
03,00,00,00,01,00,00,00,02,00,00,00,03,00,00,00
HKLM,"SYSTEM\CurrentControlSet\Control\GroupOrderList","Parallel arbitrator",0x00030003,\
01,00,00,00,01,00,00,00
HKLM,"SYSTEM\CurrentControlSet\Control\GroupOrderList","PNP_TDI",0x00030003,\
02,00,00,00,01,00,00,00,02,00,00,00
HKLM,"SYSTEM\CurrentControlSet\Control\GroupOrderList","Pointer Class",0x00030003,\
01,00,00,00,01,00,00,00
HKLM,"SYSTEM\CurrentControlSet\Control\GroupOrderList","Pointer Port",0x00030003,\
03,00,00,00,01,00,00,00,02,00,00,00,03,00,00,00
HKLM,"SYSTEM\CurrentControlSet\Control\GroupOrderList","Primary Disk",0x00030001,\
05,00,00,00,01,00,00,00,02,00,00,00,03,00,00,00,04,00,00,00,05,00,00,00
HKLM,"SYSTEM\CurrentControlSet\Control\GroupOrderList","SCSI CDROM Class",0x00030001,\
02,00,00,00,01,00,00,00,02,00,00,00
HKLM,"SYSTEM\CurrentControlSet\Control\GroupOrderList","SCSI Class",0x00030001,\
03,00,00,00,01,00,00,00,02,00,00,00,03,00,00,00
HKLM,"SYSTEM\CurrentControlSet\Control\GroupOrderList","SCSI Miniport",0x00030001,\
3f,00,00,00,\
00,01,00,00,\
01,01,00,00,\
19,00,00,00,\
01,00,00,00,\
02,00,00,00,\
03,00,00,00,\
04,00,00,00,\
05,00,00,00,\
06,00,00,00,\


I don't know how to name DWORD,HEX... keys in this format,I think it's the values like 0x00030001 and  0x00030003 in the lines but don't understand what is really is ...

Thanks
#3233diderius6⇗ @Doc.Brown

For a first try you can use nlite.
Compare txtsetup.sif before integrating STORAHCI
with txtsetup.sif after STORAHCI integrated.

I remember, that it was 1 line (even only a word)
that XP Setup changed in registry,
which gives the BSOD 7B after reboot on XP install,
something like "just another name for STORAHCI"
Dietmar
#3234Mov AX, 0xDEAD
Zitat von ⇗ daniel_k im Beitrag ¶ #3231

In a PE file with .rdata section with strings and reference pointers, how can I find the code which loads those?
IDA just shows strings -> reference pointers, but doesn't tell me where the code actually does something with them.
Is there a way to find out where a function is called from when it isn't called in a conventional way?


there no way to determinate when and where will be used some of target address, you are found a part of some struct or enum.
ida is not perfect, sometime offset to string stored in other structure, so hex-search for offset too. in worst case code uses multi level relative access: mov esi, base; mov edi,  [esi+43h]; mov eax, [edi+86h] - all offsets calculated at runtime

Zitat von ⇗ daniel_k im Beitrag ¶ #3231

And this one? There is nothing at that offset, all zeroed? Is it filled at runtime?
FF15C4100300                   call         d,[0000310C4]

will be filled at runtime by loader (if it is import) or code itself before, [0000310C4] is just pointer to function
#3235daniel_k⇗ @Mov AX, 0xDEAD, thanks!

Without using a debugger this is proving to be impossible.
#3236Mov AX, 0xDEAD
Zitat von ⇗ Doc.Brown im Beitrag ¶ #3232

and the HIVE.inf exemple of content :
HKLM,"SYSTEM\CurrentControlSet\Control\FileSystem","NtfsDisable8dot3NameCreation",0x00010003,0
HKLM,"SYSTEM\CurrentControlSet\Control\FileSystem","Win31FileSystem",0x00010001,0
HKLM,"SYSTEM\CurrentControlSet\Control\FileSystem","Win95TruncatedExtensions",0x00010001,1
HKLM,"SYSTEM\CurrentControlSet\Control\GraphicsDrivers",,0x00000012
HKLM,"SYSTEM\CurrentControlSet\Control\GraphicsDrivers\DCI","Timeout",0x00010003,7
HKLM,"SYSTEM\CurrentControlSet\Control\GraphicsDrivers\UseNewKey",,0x00000012
HKLM,"SYSTEM\CurrentControlSet\Control\GroupOrderList","Base",0x00030003,\
0e,00,00,00,0e,00,00,00,01,00,00,00,02,00,00,00,03,00,00,00,04,00,00,00,05,\
00,00,00,06,00,00,00,07,00,00,00,08,00,00,00,09,00,00,00,0a,00,00,00,0b,00,\
00,00,0c,00,00,00,0d,00,00,00
I don't know how to name DWORD,HEX... keys in this format,I think it's the values like 0x00030001 and  0x00030003 in the lines but don't understand what is really is ...


0x00000000 Default (only for key/leaf)
0x00000002 String
0x00010000 Multi String
0x00010001 Dword
0x00010003 Dword don't overwrite an exsting entry
0x00020002 Expandable String
0x00030003 Binary (sequence of bytes)
0x00000012 new key/leaf
⇗ https://msdn.microsoft.com/en-us/windows/desktop/ff546320
#3237Doc.Brown
Zitat von ⇗ diderius6 im Beitrag ¶ #3233
@Doc.Brown

For a first try you can use nlite.
Compare txtsetup.sif before integrating STORAHCI
with txtsetup.sif after STORAHCI integrated.

I remember, that it was 1 line (even only a word)
that XP Setup changed in registry,
which gives the BSOD 7B after reboot on XP install,
something like "just another name for STORAHCI"
Dietmar


Ok thanks for the tip,I will look for it perhaps it will indicate me how to intregate reg keys in this file ;)

Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #3236

0x00000000 Default (only for key/leaf)
0x00000002 String
0x00010000 Multi String
0x00010001 Dword
0x00010003 Dword don't overwrite an exsting entry
0x00020002 Expandable String
0x00030003 Binary (sequence of bytes)
0x00000012 new key/leaf
⇗ https://msdn.microsoft.com/en-us/windows/desktop/ff546320




Thank you it will help me to understand(or try to) so for an hex value I have to use the Binary value isn't it ? like for this for exemple :

[HKEY_LOCAL_MACHINE\System\ControlSet001\Services\storahci\Parameters\Device]
"ResetInInit"=hex(7):56,00,45,00,4e,00,5f,00,31,00,31,00,30,00,36,00,26,00,44,\
00,45,00,56,00,5f,00,36,00,32,00,38,00,37,00,26,00,52,00,45,00,56,00,5f,00,\
2a,00,00,00,00,00
"SingleIO"=hex(7):56,00,45,00,4e,00,5f,00,31,00,31,00,30,00,36,00,26,00,44,00,\
45,00,56,00,5f,00,36,00,32,00,38,00,37,00,26,00,52,00,45,00,56,00,5f,00,30,\
00,30,00,00,00,56,00,45,00,4e,00,5f,00,31,00,31,00,30,00,36,00,26,00,44,00,\
45,00,56,00,5f,00,36,00,32,00,38,00,37,00,26,00,52,00,45,00,56,00,5f,00,31,\
00,30,00,00,00,56,00,45,00,4e,00,5f,00,31,00,31,00,30,00,36,00,26,00,44,00,\
45,00,56,00,5f,00,36,00,32,00,38,00,37,00,26,00,52,00,45,00,56,00,5f,00,32,\
00,30,00,00,00,00,00
"IgnoreHotPlug"=hex(7):56,00,45,00,4e,00,5f,00,31,00,30,00,30,00,32,00,26,00,\
44,00,45,00,56,00,5f,00,34,00,33,00,38,00,30,00,26,00,52,00,45,00,56,00,5f,\
00,2a,00,00,00,00,00
"NeverNonQueuedErrorRecovery"=hex(7):56,00,45,00,4e,00,5f,00,31,00,30,00,30,00,\
32,00,26,00,44,00,45,00,56,00,5f,00,34,00,33,00,38,00,30,00,26,00,52,00,45,\
00,56,00,5f,00,2a,00,00,00,00,00
"EnableCLOReset"=hex(7):56,00,45,00,4e,00,5f,00,31,00,30,00,30,00,32,00,26,00,\
44,00,45,00,56,00,5f,00,34,00,33,00,39,00,31,00,26,00,52,00,45,00,56,00,5f,\
00,2a,00,00,00,00,00
"NoFUACommand"=hex(7):48,00,54,00,45,00,2a,00,00,00,48,00,69,00,74,00,61,00,63,\
00,68,00,69,00,2a,00,00,00,48,00,54,00,53,00,2a,00,00,00,48,00,44,00,53,00,\
2a,00,00,00,48,00,44,00,54,00,2a,00,00,00,00,00
"NeedSetTransferModeCommand"=hex(7):4d,00,43,00,42,00,51,00,45,00,36,00,34,00,\
47,00,42,00,4d,00,50,00,50,00,2a,00,00,00,00,00
"NoLPM"=hex(7):57,00,44,00,37,00,34,00,30,00,41,00,44,00,46,00,44,00,3f,00,30,\
00,30,00,4e,00,4c,00,52,00,31,00,2a,00,00,00,57,00,44,00,43,00,20,00,57,00,\
44,00,37,00,34,00,30,00,41,00,44,00,46,00,44,00,3f,00,30,00,30,00,4e,00,4c,\
00,52,00,31,00,2a,00,00,00,4d,00,61,00,78,00,74,00,6f,00,72,00,20,00,36,00,\
56,00,3f,00,3f,00,3f,00,45,00,30,00,2a,00,00,00,4d,00,61,00,78,00,74,00,6f,\
00,72,00,20,00,36,00,56,00,3f,00,3f,00,3f,00,46,00,30,00,2a,00,00,00,4d,00,\
61,00,78,00,74,00,6f,00,72,00,20,00,37,00,56,00,3f,00,3f,00,3f,00,45,00,30,\
00,2a,00,00,00,4d,00,61,00,78,00,74,00,6f,00,72,00,20,00,37,00,56,00,3f,00,\
3f,00,3f,00,46,00,30,00,2a,00,00,00,00,00


and String value for entry like this :

Zitat
"Group"="SCSI Miniport"
"DisplayName"="@mshdc.inf,%storahci_ServiceDescription%;Microsoft Standard SATA AHCI Driver"
"DriverName"="mshdc.inf"



Am I right ?

Thanks

#3238diderius6⇗ @Doc.Brown

From my original registry by hand entries I make a new STORAHCI.inf
using the nice tool reg2inf.

Now the way is easy: Integrate with nlite this driver
and BSOD 7B should be gone,
Dietmar

PS: When you want to know what happens for STORAHCI in Txtsetup.sif:
Just compare Txtsetup.sif before and after nlite. Also look at the post from ⇗ @daniel_k for the storport.sys integration.
¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (190)

EDIT: This one automatically integrates also storport.sy_ in i386 folder.
But there are a lot of more changes, not only in txtsetup.sif.



diderius6 has attached files to this post
#3239dencorso⇗ @diderius6: you should give Erwan Labalec's excellent OffLineReg a try! With it one can connect a drive to another machine via USB/SATA converter and then just point to the remote registry and edit it and save (or commit) the edits. It's much easier than the traditional "Otto" method you just reminded me of sof posts ago! Here are the links: ⇗ http://reboot.pro/files/file/313-offlinereg/  (the program - it does have a nice GUI version included)  and ⇗ http://mistyprojects.co.uk/documents/off.../offlinereg.htm  (a manual for the command line version). Enjoy!
#3240Doc.Brown
Zitat von ⇗ diderius6 im Beitrag ¶ #3238
@Doc.Brown

From my original registry by hand entries I make a new STORAHCI.inf
using the nice tool reg2inf.

Now the way is easy: Integrate with nlite this driver
and BSOD 7B should be gone,
Dietmar

PS: When you want to know what happens for STORAHCI in Txtsetup.sif:
Just compare Txtsetup.sif before and after nlite. Also look at the post from @daniel_k for the storport.sys integration.
¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (190)

EDIT: This one automatically integrates also storport.sy_ in i386 folder.
But there are a lot of more changes, not only in txtsetup.sif.



Wow awesome,so much thanks :)

I searched this afternoon for a tool or online converter without any success !
I compared my Txtsetup.sif with the one linked by Infuscomus member few post ago,added his entry for storport,usbd,usbxhc and usbhub30 in mine,not tested yet I'll give a try by the week but with this Storahci I don't need to test it anymore I think or only for usbd perhaps.

 

Page 217

#3241diderius6XP SP3 Setup seems not to like the STORAHCI driver.
I make a direct CD install for the EVGA dark z390 motherboard with XP unfriendly 107 Bios,
with last acpi.sys from outer space )
and with all modifikations as above described.
All went ok.
But on the very last reboot I got again BSOD 7B.
The parameters in service for Storahci suddently are empty
and the most evil is new one, after I compare with working XP I found this key is missed in
[HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Enum\PCI\VEN_8086&DEV_A352
"Service"="storahci"

Dietmar

PS: So, as before I add by hand the registry entries. Again Bsod 7B.
Then I add by hand also the missing "Service"="storahci"
and this time XP starts with full ACPI, strange..
#3242XPLives
Zitat von ⇗ daniel_k im Beitrag ¶ #3099
Zitat von ⇗ gordo999 im Beitrag ¶ #3090
Zitat von ⇗ daniel_k im Beitrag ¶ #3085
Won't help because that is the same driver modded by me.


Are you the same daniel_k from Creative driver mod fame? If so, good to see you here and thanks for all your good work in that arena.

Trying to get Win XP going on an 8th generation Asus B360M so I'll be reading through this thread for hints then posting some questions.


Yep, that's me!  Glad to help!

At this point, we've solved most issues.

Should be easy to get it working, many people contributing here!

⇗ @daniel_k

I had meant to post this on October the 13th.  I wasn't sure at first where I've seen your name before over the years.  But it is strange and out of the blue that you appeared and started modding things on this board.  At first I had thought your name looked familiar but with the _K it could have been anyone that just happened to use the same name and I didn't know you were from Brazil.

Now it finally clicked although I've never used any of your sound drivers yet (but might for Vista/Windows 7 retro gaming sometime in the future) and it now makes sense why you've been doing this modding for USB and other drivers naturally with your Assembly skills.  Now at first it threw me since you are from Brazil and did a little digging and found you are Daniel Kawakami and also Asian.  The curiosity is I am actually located right by the Creative Labs original office which later became your future nemesis in a way.

So I have to wonder what originally drew you to this Win-RAID board?  Or were you already here under another name?

What exactly is your goal here?

Are you a Windows 2000 / XP / 2003 OS fan?

Were you originally looking for some help with something specific?

Can you explain if there was a website link or a post on some other site somewhere that drew you to this board to make an account here?

I haven't written too many topics on Sound Cards here yet but were you a heavy Sound Blaster user from the early ISA days or did your interest begin during the PCI era of sounds cards like Ensoniq, Live, Audigy+ and then you switched to Vista OS which led you to start modding the drivers to get back the XP audio features that were missing?

It's a shame Creative Labs tried to crack down on you for that work as they couldn't see you were helping them and Microsoft Vista.  I'm glad you are still around and have now focused on XP/2003 driver modding.

Thanks for your recent contributions.

You can respond to me privately if you wish if any of these questions are too personal to post answers here but I think many here would be curious.
#3243infuscomus⇗ @daniel_k

oh ok, I thought that because it was originally an AMD driver modded to work for intel I assumed it was generic would still work for AMD Ryzen.

do you still have all your modded usb3 driver attempts? - I'd assume they're still attached in this thread somewhere? it's hard to navigate this enormous thread.

I would like to test them all to see if any of them can be made to work in XP textmode setup.
#3244Mov AX, 0xDEADI repeated previous tests on Windows 7 x32 Pro "N" with pae_license_unlocked:

1) original hal:
VIA USB3.0 driver - requests dma64, works fine
AMD USB3.0 hacked driver - requests dma64, works fine
Creative X-fi 2.30.0011- requests dma32, works fine
MS SATA ataport.sys/pciidex.sys - requests dma64, works fine

2) hal_force_high_addr
if driver declare support dma64 and request memory for dma (AllocateCommonBuffer), hal forced to allocate memory only from HIGH adressses. This mean hardware will survive only with adresses >4Gb

VIA USB3.0 driver - requests dma64, works fine
AMD USB3.0 hacked driver - requests dma64, works fine
Creative X-fi 2.30.0011 - requests dma32, works fine
MS SATA ataports/pciidex - requests dma64, works fine

3) hal_force_dma32
any dma64 request forced to dma32, same behavior as patchpae3, but patchpae3 miss limiting allocation <4Gb

VIA USB3.0 driver - dma64->dma32, not start, Error 10
AMD USB3.0 hacked driver - dma64->dma32, not work with Flash drives
Creative X-fi 2.30.0011 - dma32->dma32, works fine
MS SATA ataports/pciidex - dma64->dma32,  works fine



Difference to WinXP:
- Creative X-fi x32 works on Win7 with any config
- AMD USB3.0 hacked driver works on Win7 with 64dma without problems
- Win7 allocate memory from HIGH range from top to low adresses (1:3E xx xx xx) vs WinXP low to top (1:00 5B xx xx). PC maximal physical address = 1:3F000000
#3245coldwoveTrying to get XP SP3 cooperating with Threadripper and it's not having any of it, keep on bsoding on A5. Any suggestions / advice? Did my best to follow the stuff that's been posted in the past regarding ryzen.
#3246skullteriaWell, i have a idea, however, i'm not good with it. We can find on last Nvidia driver with support for XP if can be hacked to support 3d on Geforce serie 1000 (like Geforce GTX 1060).
#3247diderius6⇗ @coldwove

Oh nice, Threadripper with 32 cores.
First we need to look, where the problem with XP SP3 is in this.
Have you tried an install with hitting F5 during setup?
Via this you can choose "Standard PC" and if this works,
I dont know a reason, why full XP install should not work.
Please write the exact number of your A5 BSOD
Dietmar
#3248daniel_k⇗ @Mov AX, 0xDEAD

Really interesting the differences between XP and Win7 memory allocation.

Can we hack the logic of XP's HAL to work like Win7?

As I've said before, drivers written by MCCI works perfectly. They managed to overcome those XP addressing issues.

Please take a look at these drivers I've attached:

- all standard drivers (no WDF)
- amdxhc, nusb3xhc and rusb3xhc corrupt NTVDM/VGA with PAE enabled.
- asmtxhci.sys and tixhci.sys work in all scenarios (my board has an ASM2142 controller). Attached first public versions of these drivers, and the IoGetDmaAdapter has always been the same in later versions.
- Fortunately, XP x64 has no issues with any of the USB drivers.

I thought about applying the MCCI's method of IoGetDmaAdapter in asmtxhci and tixhci. What do you think?
#3249Doc.Brown
Zitat von ⇗ diderius6 im Beitrag ¶ #3241
XP SP3 Setup seems not to like the STORAHCI driver.
I make a direct CD install for the EVGA dark z390 motherboard with XP unfriendly 107 Bios,
with last acpi.sys from outer space )
and with all modifikations as above described.
All went ok.
But on the very last reboot I got again BSOD 7B.
The parameters in service for Storahci suddently are empty
and the most evil is new one, after I compare with working XP I found this key is missed in
[HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Enum\PCI\VEN_8086&DEV_A352
"Service"="storahci"

Dietmar

PS: So, as before I add by hand the registry entries. Again Bsod 7B.
Then I add by hand also the missing "Service"="storahci"
and this time XP starts with full ACPI, strange..


Thanks for your feed back :)

Do you know what it could be the cause ?
There's a part for Delete keys after install in the HIVESYS perhaps that deserve to take a look if there's nothing for storahci
#3250daniel_k
Zitat von ⇗ XPLives im Beitrag ¶ #3242
So I have to wonder what originally drew you to this Win-RAID board?  Or were you already here under another name?
...
Were you originally looking for some help with something specific?
...
Can you explain if there was a website link or a post on some other site somewhere that drew you to this board to make an account here?

Getting UEFI BIOS modules up to date. Thanks to this forum and its contributors, now I'm very experienced to it and have my own techniques and hacks.
Had a long time experience with AMI and Award BIOS.

Zitat
What exactly is your goal here?


To fix what is broken or intentionally broken.

Zitat
Are you a Windows 2000 / XP / 2003 OS fan?


Kind of. It's fun to get legacy OSes running on modern hardware.
Pre-Vista OSes are non-bloated and have some unique features, such as Hardware Directsound. Compatible games run in all their glory.

Zitat
I haven't written too many topics on Sound Cards here yet but were you a heavy Sound Blaster user from the early ISA days or did your interest begin during the PCI era of sounds cards like Ensoniq, Live, Audigy+ and then you switched to Vista OS which led you to start modding the drivers to get back the XP audio features that were missing?


My first soundcard was an ISA SB32 PnP that came with a Multimedia kit. I've had SB Live! (4.1), SB Live! 5.1, SB Audigy, SB Audigy 2 ZS, SB X-Fi XtremeGamer PCI, SB X-Fi Titanium PCIe and SB Z.
Regarding Vista+, I was really pissed because Creative intentionally disabled some features if OS version is Vista or later.

Let's get back to the topic, please.

#3251diderius6⇗ @Doc.Brown

May be the problem is,
that nlite and XP nothing know about storahci driver.
If this is true, a look in the setupfiles from Win8 ) may help,
where storahci together with storport is at home
Dietmar
#3252Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #3251

If this is true, a look in the setupfiles from Win7 may help,
where storahci together with storport is at home


storahci is win8+ feature, not win7
#3253diderius6⇗ @Mov AX, 0xDEAD

I just look at Vista and there was no STORAHCI at all:))
Dietmar
#3254Mov AX, 0xDEAD
Zitat von ⇗ daniel_k im Beitrag ¶ #3248

Can we hack the logic of XP's HAL to work like Win7?


i'm working on it, don't expect much, just test to see what will happen

Zitat von ⇗ daniel_k im Beitrag ¶ #3248

Please take a look at these drivers I've attached:


sorry, i dont want to dig deeper with usb3 drivers, maybe later when i'l have enough time
#3255XPLives
Zitat von ⇗ daniel_k im Beitrag ¶ #3248
⇗ @Mov AX, 0xDEAD

Really interesting the differences between XP and Win7 memory allocation.

Can we hack the logic of XP's HAL to work like Win7?

As I've said before, drivers written by MCCI works perfectly. They managed to overcome those XP addressing issues.

Please take a look at these drivers I've attached:

- all standard drivers (no WDF)
- amdxhc, nusb3xhc and rusb3xhc corrupt NTVDM/VGA with PAE enabled.
- asmtxhci.sys and tixhci.sys work in all scenarios (my board has an ASM2142 controller). Attached first public versions of these drivers, and the IoGetDmaAdapter has always been the same in later versions.
- Fortunately, XP x64 has no issues with any of the USB drivers.

I thought about applying the MCCI's method of IoGetDmaAdapter in asmtxhci and tixhci. What do you think?

   
⇗ @daniel_k , ⇗ @Mov AX, 0xDEAD

VIA USB3.0 driver - dma64->dma32, not start, Error 10
AMD USB3.0 hacked driver - dma64->dma32, not work with Flash drives

These are disturbing.  So it is possible to convert these drivers to dma32?

These bugs may not limited to just flash drives.  I found USB Webcams may hang or not work properly.  You can try to access the Webcam in My Computer.

Another issue is using USB Audio combined with a USB hard drive and playing a video off the USB hard drive.  Audio or Video may stutter during playback.

I did much testing with the USB 3.0 PCIe cards.  Although the fastest model was the NEC on my benchmarks, I found the TI model had the best seek times.  So if you were to skip to any point on a HD Video it had the lowest latency.

If you want the best driver to modify for universal USB 3.0 modding it's the TI model if all features transfer over.

 

Page 218

#3256Gelip⇗ @diderius6

Zitat von ⇗ diderius6 im Beitrag ¶ #3230
I found an interesting Embedded compi,
which supports XP on Bay Trail cpu

Maybe Pineview Gateway LT23 Netbook - this have only 32-bit drivers (WinXP and Win7) and UEFI bios:


Probably the bios is UEFI 32-bit because if I extract some driver in UEFITool - Extract body... as an .exe file and open it in CFF Explorer, it says that the file type is Portable Executable 32:

⇗ Gateway -> Netbook -> LT Series -> LT23





P.S. Gateway is equivalent Packard Bell e.g. Packard Bell ENME69BMP = Gateway LT41P04u
It's probably similar with other models.
#3257Gelip⇗ @diderius6
Gateway LT23 is same as Packard Bell DOT SPT:

⇗ Packard Bell -> Netbook -> dot -> dot spt

Exactly same bioses:
#3258diderius6⇗ @Gelip
Yes, thanks, I just extract its DSDT.
No ACPI2.0 word "tointeger" can be found there.
It is an Insyde Bios
and it can be used like the Rosetta Stone
for other Insyde Bios
Dietmar



diderius6 has attached files to this post
#3259GelipPE Deconstructor also display architecture 32-bit (i686) of Dxemain.bin file extracted from UEFI Tool:


I think LT23 (DOT SPT) is a good model that can work with WinXP 32-bit in UEFI because have drivers for WinXP.
#3260diderius6⇗ @Doc.Brown

I make a new test with the same CD for XP SP3 using STORAHCI driver.
Again I get BSOD 7B on last reboot.
But now I add ONLY this value to registry and this is enough for full ACPI start

[HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Enum\PCI\VEN_8086&DEV_A352
"Service"="storahci"

Dietmar

PS: This means, there is a conflict with entry in Services for STORAHCI and this ENUM above.
Services for STORAHCI is now empty.
#3261daniel_k⇗ @diderius6

You are having a hard time with driver integration because you are not doing it correctly.

I'm sharing my pre-tested integrated drivers, apply to a CLEAN XP SP3 English (ENU) extracted ISO.

\iaStor = legacy RST 11.2.0.1006
\iaStorA = RSTe 4.7.0.1098 (modded by me)
\storahci = StorAHCI from skullteria

Pick one of them and copy and overwrite the files in the \i386 folder of the extracted ISO.


Included USB drivers:

- Intel USB3 modded (amdxhc)
- ASMedia USB3 1.16.58.1
- VIA USB3 6.1.7600.5601

EDIT: Updated files, including original files from CD. To apply on localized ISOs, just compare modified and original and apply the changes.
#3262daniel_k
Zitat von ⇗ XPLives im Beitrag ¶ #3255
VIA USB3.0 driver - dma64->dma32, not start, Error 10
AMD USB3.0 hacked driver - dma64->dma32, not work with Flash drives

These are disturbing.  So it is possible to convert these drivers to dma32?

These bugs may not limited to just flash drives.  I found USB Webcams may hang or not work properly.  You can try to access the Webcam in My Computer.

Another issue is using USB Audio combined with a USB hard drive and playing a video off the USB hard drive.  Audio or Video may stutter during playback.

I did much testing with the USB 3.0 PCIe cards.  Although the fastest model was the NEC on my benchmarks, I found the TI model had the best seek times.  So if you were to skip to any point on a HD Video it had the lowest latency.

If you want the best driver to modify for universal USB 3.0 modding it's the TI model if all features transfer over.


Those issues are related to PAE, otherwise they work as intended.

Are you trying PAE?

TI and ASMedia drivers are a nightmare to mod, very well "protected" against hacking, not a simple device ID check like the ones from Renesas, VIA and AMD.
#3263XPLives
Zitat von ⇗ daniel_k im Beitrag ¶ #3250
Zitat von ⇗ XPLives im Beitrag ¶ #3242
So I have to wonder what originally drew you to this Win-RAID board?  Or were you already here under another name?
...
Were you originally looking for some help with something specific?
...
Can you explain if there was a website link or a post on some other site somewhere that drew you to this board to make an account here?

Getting UEFI BIOS modules up to date. Thanks to this forum and its contributors, now I'm very experienced to it and have my own techniques and hacks.
Had a long time experience with AMI and Award BIOS.

Zitat
What exactly is your goal here?

To fix what is broken or intentionally broken.

Zitat
Are you a Windows 2000 / XP / 2003 OS fan?


Kind of. It's fun to get legacy OSes running on modern hardware.
Pre-Vista OSes are non-bloated and have some unique features, such as Hardware Directsound. Compatible games run in all their glory.

Zitat
I haven't written too many topics on Sound Cards here yet but were you a heavy Sound Blaster user from the early ISA days or did your interest begin during the PCI era of sounds cards like Ensoniq, Live, Audigy+ and then you switched to Vista OS which led you to start modding the drivers to get back the XP audio features that were missing?


My first soundcard was an ISA SB32 PnP that came with a Multimedia kit. I've had SB Live! (4.1), SB Live! 5.1, SB Audigy, SB Audigy 2 ZS, SB X-Fi XtremeGamer PCI, SB X-Fi Titanium PCIe and SB Z.
Regarding Vista+, I was really pissed because Creative intentionally disabled some features if OS version is Vista or later.

Let's get back to the topic, please.



   
⇗ @daniel_k
Interesting... intentionally broken?  I think the most important "broken" thing now would be the ACPI and really the only final obstacle.  Been that way since SkyLake.  Once this is completely fixed I would say that would bring compatibility back.

Makes sense now... :)  What was your previous motherboard before you got the Coffee Lake?

True Pre-Vista OSes are non-bloated but can also be installed multiple times with their own drive letter on different partitions.  Ever notice in Vista+ when you boot into your system the drive is always assigned C: rather than in 2K/XP/2K3 it actually uses the correct partition drive letter?

I'll leave the other comments to your PM.

#3264diderius6⇗ @daniel_k

Thanks a lot, this is really nice work:))!
How do you know how to treat STORAHCI?
Because USB and Iastor work for me with nlite,
Dietmar
#3265daniel_k⇗ @diderius6

Maybe some typo in INF file, don't know. Maybe nlite doesn't like something.

I don't use 3rd party software, do everything manually.

Got used to do it.

Please try it.
#3266diderius6⇗ @daniel_k

I make a compare between your and my TXTSETUP.SIF, SETUPREG.HIV, HIVESYS.INF, HIVESFT.INF, DOSNET.INF
they are nearly identic, nearly..
Now I test yours
Dietmar

EDIT: I find the important difference: nlite does not copy storahci.inf into folder i386 for me.
I thought, this was not necessary because of Txtsetup.oem. But now I see, what for all the drivers before
works is not ok, *.inf also in i386 is better.

EDIT2: Setup cries about some *.dll are missed. Yes, I found, that you have a Multilanguage Setup CD,
while mine is only german. So, MUILanguages entries are missed in my HIVESYS.INF and no *.dll for this, no problem.
Until now, all is ok, I am still installing:)).. No USB during install.

EDIT3: Happens on last reboot the same BSOD 7B as for me for STORAHCI, so the reason is still unknown.

In Services the storahci entry is also empty. The path to the driver storahci.sys is not there.
And exact as for me this entry is missed too
[HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Enum\PCI\VEN_8086&DEV_A352
"Service"="storahci"


EDIT4: And the cure is also exact as for me: To add "Service"="storahci" there.
#3267coldwove⇗ @diderius6 Thanks for your reply, no 32 core, just a 1950x i'd like to bench. F5 got a bit further but crashed on 7B Here are the full codes for both modes:
7B
F78D2524
C0000034
0
0

A5
2
8A5C5450
1
8A590008

I guess some more system info: X399M Taichi and i'm running off of the chipset sata ports, this board has no extra controller.
#3268diderius6⇗ @coldwove

BSOD A5 (0x02,..) should not happen with acpi.sys from
¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (215)

Dietmar
#3269coldwove⇗ @diderius6

Sadly it seems not, same set of BSOD's. Could you outline what i should be doing with these files just in case i'm doing it wrong? Currently integrating them into DRIVER.CAB.

Thanks.
#3270daniel_k⇗ @diderius6

Sorry, TXTSETUP.SIF in the \storahci folder was an older version.

Tested right now in VirtualBox, USB3 driver is installed just fine. You should see 2 warnings of unsigned drivers: one for STORAHCI and the other one for Intel USB3.

As this is an English language forum, I usually use an English ISO by default when sharing modifications.

I've updated the package and included original files, so just compare them and apply to your German ISO.

 

Page 219

#3271coldwove⇗ @diderius6
Using a fresh iso + acpi.sys i'm getting a different A5 bsod:
A5
11
8
0xF75E7200
0x20120913
#3272diderius6⇗ @daniel_k

USB works now during installation with STORAHCI
but BSOD 7B at last reboot stays the same
Dietmar
#3273infuscomus⇗ @diderius6

in txtsetup.sif try these

storahci.inf = 100,,,,,,,20,0,0
storahci.reg = 1984,,,,,,,1984,0,0
storahci.sys = 100,,,,,,,4,0,0
storport.sys = 100,,,,,,,4,0,0

also in storahci.inf i changed

[SourceDisksFiles]
storahci.sys = 1

to

[SourceDisksFiles]
storahci.sys = 12

because it should already be in c:\windows\system32\drivers if it copied correctly.
#3274infuscomus⇗ @coldwove

did you want to try my modded XP ISO?
#3275coldwove⇗ @infuscomus

Yeah i'd love to, been trying for most of today and only failed so far.
#3276Adi681Hello ! I have a PC from 2017 with G4400 (skylake) and an MSI H110 Gaming Mobo. I would like to install XP on this machine but sadly I don't know wich drivers are required for integration into my original ISO (ripped from original DVD).
#3277infuscomus⇗ @coldwove

i sent you a PM with my modded ISO.
#3278coldwove⇗ @infuscomus

Sadly that didn't work either:

A5
2
0x8D1BF828
1
0x8D1C4778
#3279infuscomus⇗ @coldwove

my modded ISO already has the most recent patched ACPI 5048 driver so this means it's more complicated to fix.

hopefully ⇗ @diderius6 might have some ideas for a fix for this.
#3280daniel_k⇗ @diderius6

Are you trying the ISO with which board?

If it's Intel based, please try my modded iaStorA, this I'm sure it works.

If it installs just fine on VM, then may be a driver related issue.
#3281daniel_k⇗ @Mov AX, 0xDEAD

Managed to add missing imports as ordinary functions (as if it was part of the driver code).

However, when an import is called many times, patching every single call is ugly and boring.

The call type is Near, absolute, indirect (FF).

What would you suggest?
#3282diderius6⇗ @infuscomus ⇗ @daniel_k

I try STORAHCI on the EVGA dark z390 board with XP unfriendly Bios 107.
The reason for this is, because I noticed, that only the STORAHCI driver works
on any board with AHCI. So, for a generic XP SP3 install CD only STORAHCI will work.
For a driver it is enough, when there is an entry for it in Services.
For critical drivers also in criticaldevicedatabase. This is on first view ok
for STORAHCI. So, really mysterium. Next I make try without any Acpi,
Dietmar
#3283daniel_k⇗ @diderius6

Just tried a clean install of XP SP3 using "my" files from storahci and ACPI.SYS 5048 (my BIOS is XP friendly, though).

No issues at all, no BSODs here, must be something on your end.

Definitively my package works, on VirtualBox and on real machine (Z370).

What about you flash the XP friendly BIOS and trying a ISO built with the files of my package?

Maybe something is related to the hacked ACPI.
#3284daniel_k⇗ @Mov AX, 0xDEAD

I'm porting storport.sys from Windows 7 to XP/2003.

Am I seeing something stupid here or am I the one who doesn't understand it properly?

StorPortExtendedFunction 11h

 
.text:0001BF82                 mov     edi, edi
.text:0001BF84 push ebp
.text:0001BF85 mov ebp, esp
.text:0001BF87 cmp [ebp+arg_4], 0
.text:0001BF8B jnz short loc_1BF94
.text:0001BF8D mov eax, 0C1000006h
.text:0001BF92 jmp short loc_1BF9F
.text:0001BF94
.text:0001BF94 loc_1BF94: ; CODE XREF: sub
.text:0001BF94 push [ebp+arg_4]
.text:0001BF97 call ds:KeGetCurrentProcessorNumberEx
.text:0001BF9D xor eax, eax --> What ?!
.text:0001BF9F
.text:0001BF9F loc_1BF9F: ; CODE XREF: sub
.text:0001BF9F pop ebp
.text:0001BFA0 retn 8


Result from KeGetCurrentProcessorNumberEx is forced to zero?! So it is useless as EAX returned is always ZERO?


Now KeGetCurrentProcessorNumberEx from NTOSKRNL

 
.text:0042F383                 mov     edi, edi
.text:0042F385 push ebp
.text:0042F386 mov ebp, esp
.text:0042F388 mov ecx, [ebp+arg_0]
.text:0042F38B mov eax, large fs:20h
.text:0042F391 test ecx, ecx
.text:0042F393 jz short loc_42F3AC
.text:0042F395 mov dx, [eax+3C6h]
.text:0042F39C mov [ecx], dx
.text:0042F39F mov dl, [eax+3C5h]
.text:0042F3A5 mov [ecx+2], dl
.text:0042F3A8 mov byte ptr [ecx+3], 0
.text:0042F3AC
.text:0042F3AC loc_42F3AC: ;
.text:0042F3AC mov eax, [eax+3CCh]
.text:0042F3B2 pop ebp
.text:0042F3B3 retn 4


Is it really that simple?
I find this strange: mov eax, large fs:20h
Does it access a kernel variable location? Does it mean can only be run inside NTOSKRNL?

#3285diderius6⇗ @daniel_k

I just notice, that the same as to STORAHCI happens in registry to amdxhc,
but not to asmtxhci

Dietmar

EDIT: It is not related to acpi.sys. When I hit F5 (Standard PC) I get the same BSOD 7B on last reboot of XP install
and the same as above is true for amdxhc, but not to asmtxhci.
These devices are just not recogniced during XP Setup.


EDIT2: Also on the XP friendly Bios 092 happens exact the same. This means, this strange behavior
goes to STORAHCI in combination with storport. But with nvme boot together with storport this does not
happen, so it goes to STORAHCI.
This means, at the moment we dont have a generic AHCI driver, which works in any situation.
On a XP friendly Bios and on Intel board, all versions of Iastor work for XP Setup.

 

Page 220

#3286infuscomus⇗ @diderius6

did you try my suggestion?
#3287infuscomus⇗ @daniel_k

your modded USB 3.0 drivers from earlier, were any of them generic?
#3288gordo999@ infuscomus...tried your suggestion re changing W98 partition. I removed it completely and moved the XP partition 2 to partition 1. Edited boot.ini, added ntldr and ntdetect and it tried to boot. Got a bsod but it rebooted before I could read the bsod number.

Used my unofficial XP SP4 integrated disk based on my valid original XP install disk which was integrated with SP3. Tried a repair install and this time the installation carried on after the first reboot and got to the product key page.

I entered a valid product key and it claims the key is not valid!!! ARRRRRGGGGGHHH!!!! The key worked fine when I tried a repair install with the integrated XP SP3 disk.

I am encouraged that the USB keyboard is working during the install on an 8th  gen mobo.
#3289infuscomus⇗ @gordo999

i'm guessing you either used a volume license key on a retail ISO or a retail key on a volume license ISO

was your original XP install a retail or volume license?
#3290gordo999
Zitat von ⇗ infuscomus im Beitrag ¶ #3289
was your original XP install a retail or volume license?


@infuscomus...it was actually an upgrade from W98, I presume it is retail since I purchased both. There is no OEM designation but the last three Pids digits in the setupp.ini file are 000 whereas retail is 335 and VL is 270. OEm is just OEM.

The product key did work on a repair install using the same XP disk slipstreamed with SP3.

I have discovered a possible solution, I used ntlite to slipstream the unofficial SP4 with my SP3 slipstreamed disk. Apparently some versions of ntlite can cause that problem if not used on an XP machine. I can always load XP on a VM and do the slipstream there.

I have d/l'd the most recent version of ntlite for XP SP3 and W7. I will try running the slipstream again, paying more attention to the unattend function and perhaps entering my product ID into the slipstream  process.

Anyway, it's encouraging to see the repair install running so well complete with USB keyboard.

Thanks again for tip re W98 partition.
#3291Mov AX, 0xDEAD⇗ @daniel_k,
I finished modding halmacpi.dll v5687 to replace dma related procs from Win7 (xrefs also modded):

 
HalpGrowMapBuffers
HalpAllocateAdapterEx
HalpAllocateAdapterCallback
HalBuildMdlFromScatterGatherList
HalBuildScatterGatherList
HalCalculateScatterGatherListSize
HalPutScatterGatherList
HalGetAdapter



Results: nothing has changed, amdxhci stll not work with HIGH adresses, Creative X-Fi hangs with any dma

#3292Mov AX, 0xDEAD⇗ @daniel_k,

Zitat von ⇗ daniel_k im Beitrag ¶ #3284

Am I seeing something stupid here or am I the one who doesn't understand it properly?
.text:0001BF97                 call    ds:KeGetCurrentProcessorNumberEx
.text:0001BF9D                 xor     eax, eax
--> What ?!
Result from KeGetCurrentProcessorNumberEx is forced to zero?! So it is useless as EAX returned is always ZERO?


this mean this proc has no return value, so it even may no touch eax

Zitat von ⇗ daniel_k im Beitrag ¶ #3284

Now KeGetCurrentProcessorNumberEx from NTOSKRNL
.text:0042F38B                 mov     eax, large fs:20h
I find this strange: mov eax, large fs:20h
Does it access a kernel variable location? Does it mean can only be run inside NTOSKRNL?

⇗ https://en.wikipedia.org/wiki/Win32_Thread_Information_Block
In ring0 i think fs point to other struct, but similar to TIB, data from begin of segment fs is thread stuff and can be used in any sys/dll/exe
#3293gordo999
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #3292
In ring0 i think fs point to other struct, but similar to TIB, data from begin of segment fs is thread stuff and can be used in any sys/dll/exe


@ Mov AX, 0xDEAD

Curious as to how you are reaching ring0 code using windbg. I often traced through ring0 using softice. On one occasion, with a directx app written for full screen I had to trap a mouse message and trace it through ring0 to the DX code. I don't think that's possible with windbg, is it?

You can easily reach the beginning of directx code tracing from the OEP to where DX is initialized. However, the code running what you see on the screen of a DX app cannot be reached so easily from the OEP. That's why I came in the back door via trapped mouse messages.

I am a newbie on windbg and as yet have not seen a way to trace into ring0 code with it. Any time I reach the entry into ring0, windbg seems to do the work secretly and return a value. It does not seem to allow stepping into ring0 code. With softice I could step into it and trace through any ring0 code.

While tracing code into the NTFS mft structure (Microsoft calls everything a file) I did trace into HAL with softice but I cannot imagine how that could be done with windbg.

I have traced through k32, u32, etc., with windbg but that's not ring0.

Also curious about how you can mod hal without modding other kernel dlls and ntoskrnl. Are they not a set? With softice, every time a new kernel was produced, softice was issued a new set of patches with the new ordinals required for each kernel module to talk to each other.

Of course, the ordinals did not all change but if an ordinal changed in say ntoskrnl, certain calls between it and hal would crash the system.
#3294gordo999
Zitat von ⇗ daniel_k im Beitrag ¶ #3284


@daniel_k
.text:0001BF8D                 mov     eax, 0C1000006h
.text:0001BF92 jmp short loc_1BF9F
.text:0001BF94
.text:0001BF94 loc_1BF94: ; CODE XREF: sub
.text:0001BF94 push [ebp+arg_4]
.text:0001BF97 call ds:KeGetCurrentProcessorNumberEx
.text:0001BF9D xor eax, eax --> What ?!
Result from KeGetCurrentProcessorNumberEx is forced to zero?! So it is useless as EAX returned is always ZERO?



I think the xor  eax, eax is just initializing the eax register following the call. It may be done on purpose to negate the function return value, for whatever reason.

In a more sinister view, you might suspect that Microsoft does not want XP running in certain multi-processor environments.

Here's info on call...

⇗ https://docs.microsoft.com/en-us/windows...ocessornumberex

"The KeGetCurrentProcessorNumberEx routine gets the processor number of the logical processor that the caller is running on".

XP might not be expected to run on more than one processor hence they have cancelled any return value with an xor eax,eax.

Question arises as to what would happen if you NOPed that statement? Is there code following that could use the return value?
#3295Mov AX, 0xDEAD⇗ @gordo999
Hi,
- windbg has 2 mode - ring0 and ring3, in ring3 it can debug usual exe apps, ring0 mode is "Kernel Debugger", you can't switch between modes
- in ring3 you can not step to ring0 so you are right, it is impossible
- in ring0 windbg switch target kernel to special debug mode (kernel is "host", windbg is "client")
- ring0 can be used only with remote PC (vs softice), there exist also "local kernel debug", but it is useless
- they aren't set, newer hal.dll still compatible with older kernels. this is MS decision, MS do not change API between Hal and other parts
- for test debugging in ring0 i prefer using VMWare/QEMU because they have integrated GDB server + IDA as gdb client, windbg need for real hardware or when you need symbols on all loaded .SYS
#3296Mov AX, 0xDEAD
Zitat von ⇗ gordo999 im Beitrag ¶ #3294
.text:0001BF97                 call    ds:KeGetCurrentProcessorNumberEx
.text:0001BF9D xor eax, eax --> What ?!
I think the xor  eax, eax is just initializing the eax register following the call. It may be done on purpose to negate the function return value, for whatever reason.

 
int KeGetCurrentProcessorNumberEx(int *Ptr)
{
*Ptr=very_important_value;
return 0;
}


- push [ebp+arg_4] - func fill result  to memory at *[ebp+arg_4]
- call KeGetCurrentProcessorNumberEx
- use eax for other purpose
#3297gordo999
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #3295
- in ring0 windbg switch target kernel to special debug mode (kernel is "host", windbg is "client")
- ring0 can be used only with remote PC (vs softice), there exist also "local kernel debug", but it is useless

⇗ @Mov AX, 0xDEAD

Thanks for information. I have wdbg setup via remote connection using serial ports. I use a laptop running w7 as host and I have used both W7 and W10 as clients on a desktop with an Asus B360M 8th gen mobo.

As I said, I am a newbie with wdbg and I have not yet managed to trace code right into ring0. The closest I came was hitting an Enter command using kernel mode. I mean the Enter command you reach when the system switches from ring3 to ring 0.

I hoped to trace right into the system but when I did a single step it kicked me right past the Enter command to the ret statement at the end of that code section.

I found it interesting in k-mode that I could freeze the desktop right at the beginning of the Windows boot stage and follow the loading process. It's pretty tedious, however, and I have not pursued that aspect of kernel debugging.

Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #3295
- they aren't set, newer hal.dll still compatible with older kernels. this is MS decision, MS do not change API between Hal and other parts

That's good to know.

Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #3295
- for test debugging in ring0 i prefer using VMWare/QEMU because they have integrated GDB server + IDA as gdb client, windbg need for real hardware or when you need symbols on all loaded .SYS



Interesting. So far, I have used only VMWare's free Workstation Player but it will run 32 bit XP and I can play with softice in the VM. Works pretty good for 32 bit apps.

I have tried to run a remote k-mode session using a VM but I prefer the serial connection. It was very hard to setup but I got it going using W10 and once the connection was established, it worked on W7 as well.
#3298daniel_k⇗ @Mov AX, 0xDEAD

It's a shame that patching those memory allocation related functions didn't help. Thanks for trying, though.


Do you have any suggestions for this?

Zitat von ⇗ daniel_k im Beitrag ¶ #3281
Managed to add missing imports as ordinary functions (as if it was part of the driver code).

However, when an import is called many times, patching every single call is ugly and boring.

The call type is Near, absolute, indirect (FF).



Managed to add storport functions 11h to 19h (except 17h), which are used by Openfabrics' NVME driver.
Jump table is correct, functions are called properly, relocations added for jump table and 3 new import calls.

Unfortunately it gives me the following BSOD:
 
DRIVER_IRQL_NOT_LESS_OR_EQUAL

0X000000D1 (0X00000001,0X0000000A,0X00000008,0x00000001)



Don't see anything wrong, can you please take a quick look at it? It's attached.

#3299Mov AX, 0xDEAD⇗ @daniel_k

Zitat von ⇗ daniel_k im Beitrag ¶ #3298
The call type is Near, absolute, indirect (FF).

- import is mess, i dont know how this import may work, in second record of ntoskrnl.exe pointer to INT TABLE is zero (0x00051028), IAT is normal
- offset to MmAllocateContiguousMemorySpecifyCache is not aligned to word (00051077)
- if need avoid "FF 15" create little stub and call it as IP-relative, add nop to fill 6 bytes

 
my_memset:
jmp ds:__imp__memset ; need 1 reloc !
endp
.....
call my_memset ; E8 xx xx xx xx 5 Bytes
nop



- .newit  probably need to be nonpageable, it contain IAT adresses
- this bsod is useless in static analyze, no any adresses

#3300daniel_k
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #3299
- import is mess, i dont know how this import may work, in second record of ntoskrnl.exe pointer to INT TABLE is zero (0x00051028), IAT is normal
- offset to MmAllocateContiguousMemorySpecifyCache is not aligned to word (00051077)
- if need avoid "FF 15" create little stub and call it as IP-relative, add nop to fill 6 bytes
...
- .newit  probably need to be nonpageable, it contain IAT adresses
- this bsod is useless in static analyze, no any adresses


Didn't think about imports. Thanks for checking it out.
Thought CFF Explorer was reliable, was wrong.

Added the imports with LordPE, seems correct now.
Still didn't work, so much work for nothing. Sad.

Zitat
 
my_memset:
jmp ds:__imp__memset ; need 1 reloc !
endp
.....
call my_memset ; E8 xx xx xx xx 5 Bytes
nop


Thanks, this is for iaStorA.sys.


About the AMDXHC USB3 driver, before I waste my time and effort...
I understand that DMA memory allocation is done by IoGetDmaAdapter, right?
Will try to implement the same allocation procedure in ASMedia and TI drivers.

 

Page 221

#3301daniel_k⇗ @Mov AX, 0xDEAD

Had an idea about IoConnectInterruptEx and IoDisconnectInterruptEx.

From Microsoft: Drivers that must also work on Windows 2000, Windows XP, or Windows Server 2003 can instead link to Iointex.lib to use the routine.

These functions are used on most storage drivers.

On Vista, msahci.sys only calls functions inside pciidex.sys, which is only missing IoConnectInterruptEx and IoDisconnectInterruptEx functions.

Porting the code from Vista+ is complicated as it is quite long and use many Vista+ only APIs.

What if we compile a code linking to Iointex.lib (calling IoConnectInterruptEx and IoDisconnectInterruptEx) and "isolate" the code so we can port the functions?

Thoughts?
#3302Tima177hello. can you make me usb 3.0-3.1 for windows xp sp3 pro?
ASMedia® USB 3.1 Gen 2 controller :  PCI\VEN_1B21&DEV_1242&SUBSYS_86751043
#3303diderius6⇗ @Tima177

You can use the driver from Asmedia.
Copy also usbd.sys to windows\system32\drivers
thats all
Dietmar
#3304Tima177The driver is not suitable, the minimum version of windows 7
#3305daniel_k⇗ @Tima177
That's what they say officially, don't worry.

It works with XP.
#3306Tima177⇗ @diderius6 (replying to post #3159):
can you give a driver or an iso image? Also trying to install windows xp but on ryzen

EDIT by Fernando: Fully quoted post replaced by directly addressing (to save space)
#3307Mov AX, 0xDEAD
Zitat von ⇗ daniel_k im Beitrag ¶ #3300
About the AMDXHC USB3 driver, before I waste my time and effort...
I understand that DMA memory allocation is done by IoGetDmaAdapter, right?
Will try to implement the same allocation procedure in ASMedia and TI drivers.

No, IoGetDmaAdapter need to build abstract "adapter" and return struct with many pointers to functions:
typedef struct _DMA_OPERATIONS {
ULONG Size;
PPUT_DMA_ADAPTER PutDmaAdapter;
PALLOCATE_COMMON_BUFFER AllocateCommonBuffer;
PFREE_COMMON_BUFFER FreeCommonBuffer;
PALLOCATE_ADAPTER_CHANNEL AllocateAdapterChannel;
PFLUSH_ADAPTER_BUFFERS FlushAdapterBuffers;
PFREE_ADAPTER_CHANNEL FreeAdapterChannel;
PFREE_MAP_REGISTERS FreeMapRegisters;
PMAP_TRANSFER MapTransfer;
PGET_DMA_ALIGNMENT GetDmaAlignment;
PREAD_DMA_COUNTER ReadDmaCounter;
PGET_SCATTER_GATHER_LIST GetScatterGatherList;
PPUT_SCATTER_GATHER_LIST PutScatterGatherList;

// version 2 operations
PCALCULATE_SCATTER_GATHER_LIST_SIZE CalculateScatterGatherList;
PBUILD_SCATTER_GATHER_LIST BuildScatterGatherList;
PBUILD_MDL_FROM_SCATTER_GATHER_LIST BuildMdlFromScatterGatherList;
} DMA_OPERATIONS, *PDMA_OPERATIONS ;

also IoGetDmaAdapter allocate some amount of MapRegisters in some cases (GatterScatter=1 & dma64=0 is our case)

real allocation is done in AllocateCommonBuffer, driver then get phys adress of this buffer and write to pci device registers
for example in intel usb3 controller one of this adresses stored at offset BAR+0xB0-0xB4 (Device Context Base Address Array Pointer)
Under Win7 x64 this adress is 1:3CA58000

in win32 this high adress will be maped to some LOW ring-0 adress

EDIT by Fernando: Quoting corrected and Code content put into a "spoiler" (to save space)
#3308Tima177I tried loading windows xp through sata ahci asm1061 pcie 1.0, although the drivers for usb through the pcie 1.0 usb controller do not work, it freezes when I boot without usb 3.0 and get the desktop without a single usb driver.
#3309Mov AX, 0xDEAD
Zitat von ⇗ daniel_k im Beitrag ¶ #3301
@Mov AX, 0xDEAD
From Microsoft: Drivers that must also work on Windows 2000, Windows XP, or Windows Server 2003 can instead link to Iointex.lib to use the routine.
What if we compile a code linking to Iointex.lib (calling IoConnectInterruptEx and IoDisconnectInterruptEx) and "isolate" the code so we can port the functions?


Iointex.lib has simple emulation of *Ex over IoConnectInterrupt/IoDisconnectInterrupt, just copy&paste to your existing code and call it without modification of original code. Intel usb3.0 driver for win7 also has simple emulation *Ex over IoConnectInterrupt/IoDisconnectInterrupt, about 80 bytes
#3310daniel_k⇗ @Mov AX, 0xDEAD

Thanks for the thorough explanation!

To be honest, didn't see what's inside Iointex.lib. I did know it was emulating Ex using non-Ex functions, but never thought of using it without compiling some code.

Hopefully this is easier and more prone to success than storport!
#3311Tima177I downloaded one assembly, deployed the acronis trueImage image to hdd, added OSDTOOL from another assembly, integrated the driver for sata ASM1061 and loaded windows xp into amd ryzen x370 in standard PC mode without ACPI via the pci-e sata controller, the keyboard and mouse do not work without USB drivers, if I integrate drivers for via usb pcie controller then it hangs at boot, without driver on usb windows xp controller it starts
can you help with the drivers?
#3312Mov AX, 0xDEAD
Zitat von ⇗ Tima177 im Beitrag ¶ #3311
the keyboard and mouse do not work without USB drivers, if I integrate drivers for via usb pcie controller then it hangs at boot, without driver on usb windows xp controller it starts


Хай, Тима
- via usb3 drivers hard to integrate because they require coinstaller (WDF)
- if it possible enable port 64 emulation in bios, your mouse&keyboard will work as PS/2 Devices and you can install normal usb3 drivers after windows is loaded to desktop, then disable emulation
#3313Tima177No ps/2, can you give adapted amd usb 3.0 drivers for windows xp?
#3314diderius6⇗ @Tima177
It is also possible to do a silent installation of XP.
Then you do not type anything during XP install
Dietmar

PS: Or use a cheap USB card, where are drivers for XP without coinstaller,
for example nec (Renesas).
#3315Tima177With drivers on usb Windows does not start, hangs at the beginning of loading of a strip

 

Page 222

#3316infuscomus⇗ @daniel_k

i have an old program that can write extra functions onto the end of PE files

did you want to try it out? maybe you can achieve something with it?

here is an example of a file the program spits out

¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (165)
#3317diderius6Hi, I just wrote my very first program
for a Quantum Computer and it works :)) !!
The program does the following:
First the start state is fixed, here a 0. (The coin shows head.)
Then the Hadamard operator is applied to it, here called H.
H creates a true overlay of the head (0) and coin of the number(1) (just like Schrödinger's cat).
Then comes the measurement, here the symbol with the arrow.
The Quantum Computer ran my program 1024 times.
And as you can see, almost 50% head and 50% number.
The huge difference to ALL other computer programs is,
here actually the computer throws really "dices" and shows me the result
Dietmar

#3318cedarI always knew Schrödinger's cat can run XP32 and XP64 simultaneously. :-)
#3319gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #3317
H creates a true overlay of the head (0) and coin of the number(1) (just like Schrödinger's cat).


@diderius6...actually, Schrodinger's Cat was about Schrodinger poking fun at the more far out quantum theory claims started by Bohr et al. Schroddy decided to retire rather than get involved with what he saw as stupidity in quantum theory.

When Schroddy claimed the cat could be both dead and alive, he was poking fun at the notion of entanglement theory where a particle like an electron is inferred to be in two places at once.

I agree with Schroddy, it is nonsense.
#3320infuscomus⇗ @diderius6

do you have any solutions for XP ACPI on threadripper?
#3321Tima177Can you give a modified driver AMD USB 3.0-3.1 or for ASMedia® USB 3.1 Gen 2 controller?
My chipset AMD x370
#3322Fernando@recent posters:
Did you all refer to the specific topic "PAE Bugs" or has the thread title been changed?
#3323infuscomus⇗ @Fernando

for some reason replies are titled PAE bugs

I have had to change it manually for this post
#3324infuscomus⇗ @Tima177

for ASMedia USB 3 try looking in the USB driver thread.
#3325Fernando⇗ @infuscomus:
Thanks for your quick reaction.
Each reply gets automaticly the title of the post, where the user had clicked onto the "Reply" button.
To avoid a wrong/not matching title, just click onto the "Reply" button under a post with the correct thread title (e.g. the start post).
#3326Tima177
Zitat von ⇗ infuscomus im Beitrag ¶ #3324
@Tima177

for ASMedia USB 3 try looking in the USB driver thread.

What do you mean by driver stream?
#3327infuscomus⇗ @Tima177

⇗ USB 3.0/3.1 Drivers (original and modded)
#3328daniel_k
Zitat von ⇗ infuscomus im Beitrag ¶ #3287
your modded USB 3.0 drivers from earlier, were any of them generic?

Sorry, I overlooked your message.

Yes, when canonkong was asking me to mod some drivers for AMD controllers.

Don't have any files here, just kept the ones that work on Intel.
#3329infuscomus⇗ @daniel_k  

I was testing your modded amdxhci driver that works for intel, annoyingly it doesn't work for every AMD USB 3.0 controller (the controllers with 43 in the deviceID give a D0 BSOD)
#3330daniel_k
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #3299

 
my_memset:
jmp ds:__imp__memset ; need 1 reloc !
endp
.....
call my_memset ; E8 xx xx xx xx 5 Bytes
nop



Can I use this for indirect calls?

Such as:
 
8B35BC700700                   mov          esi,[0000770BC]
FFD6 call esi



Just by replacing with this?

 
FFE6                           jmp          esi

 

Page 223

#3331daniel_k
Zitat von ⇗ infuscomus im Beitrag ¶ #3330
@daniel_k  

I was testing your modded amdxhci driver that works for intel, annoyingly it doesn't work for every AMD USB 3.0 controller (the controllers with 43 in the deviceID give a D0 BSOD)

This is a known issue.

Try Etron or VIA drivers, if I'm not mistaken.
#3332daniel_k
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #3309
Iointex.lib has simple emulation of *Ex over IoConnectInterrupt/IoDisconnectInterrupt, just copy&paste to your existing code and call it without modification of original code. Intel usb3.0 driver for win7 also has simple emulation *Ex over IoConnectInterrupt/IoDisconnectInterrupt, about 80 bytes

Managed to patch pciidex.sys, but msahci.sys still doesnt work as it needs Vista's ataport.sys and atapi.sys. Too much hassle.

Those in-box drivers are a headache, Microsof does some funky things.



Here is my x64 wrapper for memcpy_s to memcpy:
 
mov          [rsp][020],r9
mov [rsp][018],r8
mov [rsp][010],rdx
mov [rsp][8],rcx
sub rsp,028
mov r8,[rsp][048]
mov rdx,[rsp][040]
mov rcx,[rsp][030]
call memcpy
xor eax,eax
add rsp,028
retn



As I still don't know everything about assembly, managed to compile the code above with the DDK and took the code from the compiled driver.

It works!

Any comments? The only catch is that I had to disable optimizations, otherwise "my function" is compiled inline. Is there a way to force the compile to not do this?

#3333Mov AX, 0xDEAD
Zitat von ⇗ daniel_k im Beitrag ¶ #3331

Can I use this for indirect calls?
Such as:
 
FFD6                           call         esi


Just by replacing with this?

 
FFE6                           jmp          esi


Hi Daniel,
- call -> jmp is not possible, you'l lost return adress
- i dont understand what is point ? avoid relocs?
#3334Mov AX, 0xDEAD
Zitat von ⇗ daniel_k im Beitrag ¶ #3333

Here is my x64 wrapper for memcpy_s to memcpy:
 
mov          [rsp][020],r9
mov [rsp][018],r8
...
sub rsp,028


esp+xx mean "shadow space", be carefull with this code, callee must reserve at least  4*8 (or 5*8 ?) bytes at stack before calling this. Unusual vs x32 calling conventions.

Zitat von ⇗ daniel_k im Beitrag ¶ #3333

The only catch is that I had to disable optimizations, otherwise "my function" is compiled inline. Is there a way to force the compile to not do this?

⇗ https://stackoverflow.com/questions/3366...er-optimization
#3335daniel_k⇗ @Mov AX, 0xDEAD

Thanks for info and link.

I'm patching iaStorA.sys (RSTe).

For x86, there 2 types of CALLs:

 
FF15xxxxxxxx      CALL memcpy_s


This uses your previous suggestion.


 
BE00580600                     mov          esi,000065800
FFD6 call esi


For this one, can I just change the address to point to my new function?

My memcpy_s to memcpy:

 
mov     edi, edi
push ebp
mov ebp, esp
push [ebp+arg_C]
push [ebp+arg_8]
push [ebp+arg_0]
call memcpy
add esp, 0Ch
xor eax, eax
pop ebp
retn 10h



----------------


For x64, now with optimized compiler, forced non-inline:

 
4883EC28                       sub          rsp,028
498BD0 mov rdx,r8
4D89C8 mov r8,r9
E810500000 call memcpy
33C0 xor eax,eax
4883C428 add rsp,028
C3 retn


Now this seems correct, right? RCX is the first argument on both functions, so don't touch it.
Does it matter for the parameters if I change the call type from E8 to FF15?

#3336skullteriaWhat the problema now? I can't understand..well, if problem reside on storahci, i can update fode, because i used a beta versioj, maybe It ia unstable
#3337diderius6⇗ @coldwove

Please try this acpi.sys
Dietmar



diderius6 has attached files to this post
#3338Mov AX, 0xDEAD
Zitat von ⇗ daniel_k im Beitrag ¶ #3336

 
BE00580600                     mov          esi,000065800
FFD6 call esi


For this one, can I just change the address to point to my new function?



yes, you can change to what you prefer, mov esi, offset new_func or relative call (e8 xx xx), but not to "FF 15"

Zitat von ⇗ daniel_k im Beitrag ¶ #3336

Now this seems correct, right? RCX is the first argument on both functions, so don't touch it.
Does it matter for the parameters if I change the call type from E8 to FF15?

- i dont remember what is args of memcpy_s need to drop, 2nd i guess, so seems ok x32 and x64
- no matter what of "call" was used, they do with stack same things
- sub  rsp, 28 - i dont know how compiler choose size of shadow space, so can't confirm
#3339daniel_k
Zitat von ⇗ skullteria im Beitrag ¶ #3337
What the problema now? I can't understand..well, if problem reside on storahci, i can update fode, because i used a beta versioj, maybe It ia unstable

I didn't experience any issues, on VirtualBox and real PC.

⇗ @diderius6, please explain your issue with storahci. BSOD 7B on last stage of Setup?
#3340daniel_k⇗ @Mov AX, 0xDEAD

Thanks, much appreciated!
#3341diderius6⇗ @skullteria

"⇗ @diderius6, please explain your issue with storahci. BSOD 7B on last stage of Setup?"

Yes, not all values from the *.reg file are stored in registry during Setup of XP.
The path to windows\system32\drivers\storahci.sys is gone and the same is true for the modded AMD USB driver for Intel boards.
[HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\storahci]
"Type"=dword:00000001
"Start"=dword:00000000
"Group"="SCSI miniport"
"ErrorControl"=dword:00000001
This is a strange error, because everything in txtsetup.oem or txtsetup.sif for STORAHCI together with storport.sys is correct.
When you add the entries by hand to registry or install STORAHCI on a running XP via storahci.inf
all is ok. The nice thing in STORAHCI for XP SP3 is, that it runs on really every motherboard
Dietmar
#3342coldwove⇗ @diderius6 putting that acpi.sys into driver.cab yielded the same A5 bsod as before sadly.
#3343diderius6⇗ @coldwove

Did you put this acpi.sys also in i386 folder from your Installationsmedium
Dietmar
#3344coldwove⇗ @diderius6 i386 folder only holds an acpi.sy_ file, how would i convert the .sys file to .sy_?
#3345diderius6⇗ @coldwove

You can just delete the file acpi.sy_  there in i386 folder and put new acpi.sys at its place
Dietmar

 

Page 224

#3346coldwove⇗ @diderius6 nope still doing the same thing sadly :c
0x000000A5
0x00000002
0x8D1BF828
0x00000001
0x8D1C4778
#3347infuscomus⇗ @diderius6

have you tried this to fix storahci not working?

¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (219)
#3348dencorso
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #3334
Zitat von ⇗ daniel_k im Beitrag ¶ #3331

Can I use this for indirect calls?
Such as:
 
FFD6                           call         esi


Just by replacing with this?

 
FFE6                           jmp          esi


Hi Daniel,
- call -> jmp is not possible, you'l lost return adress
- i dont understand what is point ? avoid relocs?



⇗ @Mov AX, 0xDEAD:
Then again he could do as in the old times and...
push   eip
jmp    esi
... for the RET to work right, cannot he?
#3349Mov AX, 0xDEAD
Zitat von ⇗ dencorso im Beitrag ¶ #3348

push   eip


this opcode just not exist
#3350infuscomus⇗ @daniel_k

do you think it would be possible to fix or remove missing imports for acpi.sys vista beta 5365 to work for XP?

ntoskrnl

EmClientRuleEvaluate
_strtoui64
PoSetSystemWake
EmProviderRegister
IoSetDevicePropertyData
KeStartDynamicProcessor
RtlIoEncodeMemIoResource
EtwRegister
EtwWrite
EtwEventEnabled
RtlCmDecodeMemIoResource
RtlIoDecodeMemIoResource
EmClientQueryRuleState
RtlInvertRangeListEx
IoConnectInterruptEx

hal

HalGetInterruptTargetInformation
HalConvertDeviceIdtToIrql
HalGetMessageRoutingInfo



infuscomus has attached files to this post
#3351daniel_k
Zitat von ⇗ infuscomus im Beitrag ¶ #3316
@daniel_k

i have an old program that can write extra functions onto the end of PE files

did you want to try it out? maybe you can achieve something with it?

here is an example of a file the program spits out

¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (165)

Thanks, will try later if need it.


Zitat von ⇗ infuscomus im Beitrag ¶ #3350
do you think it would be possible to fix or remove missing imports for acpi.sys vista beta 5365 to work for XP?

Maybe... but there are many missing imports.

Before trying to fix those imports, to know if that build does work on current systems.
#3352daniel_k⇗ @Mov AX, 0xDEAD

Patched and tested x64 iaStorA.sys, work just fine.

Working on x86.

Asked the wrong question, really sorry.

I have 93 calls with relocation like this:
FF15BC700700                   call         memcpy

Is there a way to keep the relocs and avoid to remove all of them?

I know that FF15 = CALL DWORD PTR, so I tried the following:

FF15B9100100                   call         d,[0000110B9]
...
110B9: B0640700 - pointer to actual memcpy_s to memcpy function, with relocation
...
764B0: 8BFF                           mov          edi,edi - memcpy_s to memcpy function
764B2: 55                             push         ebp
764B3: 8BEC                           mov          ebp,esp
764B5: FF7514                         push         d,[ebp][014]
764B8: FF7510                         push         d,[ebp][010]
764BB: FF7508                         push         d,[ebp][8]
764BE: FF15BC700700                   call         memcpy
764C4: 83C40C                         add          esp,00C
764C7: 33C0                           xor          eax,eax
764C9: 5D                             pop          ebp
764CA: C21000                         retn         00010

Didn't work, need to read more about it.

PS: CODE tag is broken?! Will edit later...
#3353daniel_k⇗ @diderius6

Please pack and send me the following files of your ISO with storahci.sys that you've tried and didn't work.

DOSNET.INF, HIVESFT.INF, HIVESYS.INF, SETUPREG.HIV and TXTSETUP.SIF.
#3354Mov AX, 0xDEAD
Zitat von ⇗ daniel_k im Beitrag ¶ #3353

I have 93 calls with relocation like this:
FF15BC700700                   call         memcpy
Is there a way to keep the relocs and avoid to remove all of them?

I know that FF15 = CALL DWORD PTR, so I tried the following:
FF15B9100100                   call         d,[0000110B9]
...
110B9: B0640700 - pointer to actual memcpy_s to memcpy function, with relocation
...
764B0: 8BFF                           mov          edi,edi - memcpy_s to memcpy function


All seems OK, to keep orig relocs need things you are already did
#3355diderius6⇗ @daniel_k

Here are the wished files from my XP SP3 setup CD,
which give BSOD via STORAHCI on last reboot
Dietmar



diderius6 has attached files to this post
#3356daniel_k
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #3355
All seems OK, to keep orig relocs need things you are already did

Thanks.

That'so odd, it crashes.

Will double check, maybe I missed something.
#3357daniel_k⇗ @diderius6

Files are 100% identical.
Did you get the AHCI driver signature warning during Setup?
#3358diderius6⇗ @daniel_k

No error message at all about signature during Setup
Dietmar
#3359infuscomus⇗ @daniel_k ⇗ @diderius6

try my solution in txtsetup.sif

¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (219)

does it work for you?

⇗ @diderius6

you have several [SourceDisksFiles] in your txtsetup.sif - mine does not

maybe yours is malformed? start from scratch?
#3360daniel_k
Zitat von ⇗ diderius6 im Beitrag ¶ #3359
@daniel_k

No error message at all about signature during Setup
Dietmar

Hmm

You must get 2 driver signature warnings during Setup (AHCI and XHCI), otherwise the drivers are NOT installed and you'll get 0x7B when finished.

Did you use an untouched ISO and replaced the files with the ones of my package?

 

Page 225

#3361diderius6⇗ @daniel_k

I integrated Servicepack SP3 into it.
All other is original XP SP1 CD
Dietmar
#3362daniel_k
Zitat von ⇗ infuscomus im Beitrag ¶ #3360
@diderius6

you have several [SourceDisksFiles] in your txtsetup.sif - mine does not

maybe yours is malformed? start from scratch?

The original TXTSETUP.SIF is just like that.

If you use nLite, it consolidates all sections into a single one.
#3363daniel_k
Zitat von ⇗ diderius6 im Beitrag ¶ #3362
@daniel_k

I integrated Servicepack SP3 into it.
All other is original XP SP1 CD
Dietmar

Don't do this.

That is why you are having issues.

Get the original ISOs with SP3 already integrated.

Need help to find ENU or DEU?
#3364diderius6⇗ @infuscomus

I just burn a new CD with all your changes
and in this moment I do Setup of XP SP3 with it,
with the identical installation of the EVGA dark board
Dietmar
#3365infuscomus⇗ @diderius6

i also agree with daniel_k, use an ISO with SP3 already integrated, it would save a lot of hassle like what you have already been experiencing.
#3366diderius6⇗ @infuscomus

After I choose the harddisk for install, XP Setup tells me:
Error 1984 in SIF file, setup has been canceled, hit F3
Dietmar
#3367infuscomus⇗ @diderius6

strange, these entries worked for me.

i suggest starting over with a clean SP3 ISO.
#3368diderius6⇗ @infuscomus ⇗ @daniel_k

I look through my hundreds of XP install CDs.
And I notice, that I have really all
but no CD with original XP SP3 in it.
Always I used XP CD and install Servicepack SP3 with nlite

Dietmar

EDIT: I just found a original XP SP3 Setup CD from HP. But even on this, it is a CD with new integrated SP3 package.
#3369infuscomus⇗ @diderius6

the file you should look for is de_windows_xp_professional_with_service_pack_3_x86_cd_x14-80444.iso

I'll let you know if i find it

edit:
here
⇗ https://keybase.pub/gottz/var/iso/de_win...d_x14-80444.iso
#3370diderius6⇗ @infuscomus

Thanks a lot
Dietmar
#3371daniel_k⇗ @Mov AX, 0xDEAD

Was having issues, but finally succeeded.

 
BE00580600                     mov          esi,000065800
FFD6 call esi


This actually also acts like a call dword ptr.


My memcpy_s to memcpy:

 
...
retn 10h


Should be just retn, as the caller is responsible for stack cleanup.

Interestingly, retn 10h works with call <register>, but doesn't work for call <dword ptr>.

Will post the updated drivers later.

Now will see what can I do with the AMDXHC driver.

#3372diderius6Yesssaa:)) ,
this time I can install XP SP3 on the EVGA dark board at once via STORAHCI driver.
I also see, where the difference between the original XP SP3 CD and the one updated with Servicepack SP3 is:
The CD with servicepack SP3 use as standard settings the "NO" option, when a driver without valid signatur is choosen.
Here now I see for the very first time the question during device install "Do you want xhci.sys" with option settings to "NO"
but I can change this to yes, and few seconds later the same question for STORAHCI.sys , 2 times.
I think, this question never appears on XP SP1 and so crazy SP3 package just ignore this driver via its path in registry.
The same is true for the xhc driver, now it has path in registry also
Dietmar

PS: This means, we have with this STORAHCI a generic driver for XP SP3 for all boards with AHCI.
[HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\storahci]
"Type"=dword:00000001
"Start"=dword:00000000
"Group"="SCSI miniport"
"ErrorControl"=dword:00000003
"DisplayName"="AHCI SATA Driver"
"ImagePath"=hex(2):73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,44,00,\
52,00,49,00,56,00,45,00,52,00,53,00,5c,00,73,00,74,00,6f,00,72,00,61,00,68,\
00,63,00,69,00,2e,00,73,00,79,00,73,00,00,00
"Tag"=dword:00000021

[HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\storahci\Parameters]
"BusType"=dword:0000000b

[HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\storahci\Parameters\PnpInterface]
"5"=dword:00000001
#3373gordo999
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #3350
Zitat von ⇗ dencorso im Beitrag ¶ #3349
push   eip

this opcode just not exist


⇗ @Mov AX, 0xDEAD

Just curious.

When you write push eax, you are pushing the value in eax. There are opcodes for that.

What if you wrote push [eip]? Would the assembler accept that as an immediate push as in push 15000 and push the current address stored at eip?

The push immediate operands are 6A for a single byte, and 68 for a word and double word. Does the push instruction know how to read an immediate value via a pointer?
#3374gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #3373
I also see, where the difference between the original XP SP3 CD and the one updated with Servicepack SP3 is:


@diderius6...good work on your storage driver.

Don't know if you are aware of this or whether it has been covered elsewhere on win-raid.

There are apparently other issues between the original XP SP1 CD, the XP SP2 setup file, and XP SP3 setup file. Apparently Microsoft has admitted their service packs can sometimes produce a conflict with the setupapi file on the service pack installer and that can lead to errors in the slipstreamed version.

For example, when upgrading SP1 to SP2 on an x86 machine, Microsoft suggested decompressing the SP2 file to a directory, renaming the setupapi file on the SP2 service pack installation, then applying the extract command from the SP2 installation:

On the extracted service pack file directory in a cmd window:

cd i386\update
   
ren setupapi.dll setupapi.old
   
update.exe /integrate:c:\bin

Where c:\bin is the directory of the existing OS to be updated.

I don't know if they have fixed this in SP3 but I am having a serious problem in which I am stuck in the middle of a repair install where the installer won't accept a valid product ID from the label on the case of the original XP installer.

Microsoft has admitted in the past that such a problem is related to installing a service pack on a different OS than the target OS. I am referring to slipstreaming a target disk for XP using win 7 or higher.

I did use nlite but even they insist that slipstreams should be done on an OS that is the same as the target OS.
#3375infuscomus
Zitat von ⇗ daniel_k im Beitrag ¶ #3351
aybe... but there are many missing imports.

Before trying to fix those imports, to know if that build does work on current systems.


⇗ @daniel_k

vista beta 5365 works on my AB350 gaming K4 Ryzen motherboard - no A5 BSOD

do you think you can remove those missing imports without breaking it?

 

Page 226

#3376Mov AX, 0xDEAD
Zitat von ⇗ gordo999 im Beitrag ¶ #3373

What if you wrote push [eip]


you'l get compiler error, ip is hidden register on x32 asm language, only x64 allow use it as base offset
#3377icinemagrI give up i try anything and everything i could read in forum.
Can someone tell me if is possible to install XP on the follow Specs.

motherboard
Gigabyte Z270 k3  gaming
Northbridge Intel Kaby Lake rev. 05
Southbridge Intel Z270 rev. 00


memory
Memory Type DDR4
Memory Size 16 GBytes
Channels Single
Memory Frequency 1199.8 MHz (1:18)


Graphics
Name NVIDIA GeForce GTX 1060 6GB
Board Manufacturer ASUSTeK Computer Inc.

hard disk
Name Samsung SSD 960 EVO 500GB

cpu
Intel Core i7 7700k
#3378Fernando⇗ @icinemagr:
Since you need support from an expert about how to get Windows XP installed onto an Intel 200-Series Chipset system, I have moved your request into this already existing 100% matching thread.
Good luck!
#3379diderius6⇗ @icinemagr

All will work under XP SP3.
When you want 3D graphik,
you need to change your videocard against
for examle GTX 980
Dietmar
#3380diderius6Hihi,
I succeed to crash the Quanten Compi:))
Dietmar

#3381gordo999@ diderius6

Dietmar...wondering how I could apply your latest version of acpi.sys for XP.

Up till now, I have been trying to get an existing XP SP3 OS on a drive running so I could apply things you guys are doing in this thread. It's a steep learning curve but I am making headway.

Today, I got a stable version of XP SP4 (yes..SP4...by harkaz) running but without any of my existing apps, which I need running. The SP4 update by harkaz offered an install from the slipstreamed SP3/SP4 disk and I mistook it for a repair install. What it did was install a separate copy of XP along with my current install in parallel directories, one marked winxp and the other winxp.0.

But, hey...what the heck, I have the one in winxp.0 running. If possible I'd now like to get my original install running.

Tried tonight and it got to the XP screen with the running horizontal dots and it crashed with an 0xA5 error...good old ACPI.

Can I install your ACPI driver using the F6 method or via a direct registry edit?

I would work this out for myself but I am a bit eager to get my version running, no matter how badly it might behave. That's part of the challenge, eh?

While getting the working version going I figured out how to get around the invalid product key issue. It involves pidgen.dll, licdll.dll, and a couple of other files version changes.
#3382gordo999@ infuscomus...remember the problem I had with an old w98 on a FAT32 partition 1 and XP on partition 2? I removed the w98 partition (deleted it) and moved the xp partition to the front of the disk. I think it was Easeus partition manager I used.

That took care of my boot.ini problem.

Anyway, I completely forgot that the registry has everything for XP under partition 2, the D:\ drive. So, I had to change them all manually to C:\ drive. Partition Magic used to have a utility that would do that for you.

I got into it by hand and thought it was a bit much. Some companies like Comodo have over 250 entries in one hklm/system sub-hive alone. Why doesn't the registry have a search and replace function? And why do companies dump their garbage in there? Like someone said, the registry is like  garbage truck that never reaches the dump.

Solved it by taking each hive from the windows\sys32\config directory and loading each one in a text editor that had a search/replace utility. I got it to find all references to my win dir, d:\winxp and replace it with c:\winxp.

Learned along the way that it's not necessary to edit each currentcontrol set. There is an entry in the registry that tells which CCS is in use (default) and which one is the last known good one. My hklm\system hive had 4 currentcontrol sets and I only had to edit ccs003. I did ccs004 as well, which saved a lot of work.

There was one other monster sub-hive, shareddlls, in the software hive, but the text editor took care of them all.
#3383infuscomus⇗ @gordo999

you have alot of patience, I would've just done a fresh install of XP.
#3384genieautravail⇗ @daniel_k

The latest build of your modded acpi.sys file ins't compatible with AMD Carrizo APU.

Here the link to the motherboard :

⇗ https://www.biostar.com.tw/app/en/mb/int...on.php?S_ID=935

At boot, I get the famous BSOD (STOP : 0x000000A5)

Can you do something about this ?

Best regards
#3385diderius6⇗ @gordo999

When you have a working XP version with acpi support,
it is enough to copy the modded acpi.sys into folder
windows\system32\drivers
Dietmar

PS: Here is the entry for registry for acpi.sys
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\ACPI]
"ErrorControl"=dword:00000001
"Group"="Boot Bus Extender"
"Start"=dword:00000000
"Tag"=dword:00000001
"Type"=dword:00000001
"DisplayName"="Microsoft ACPI-Treiber"
"ImagePath"=hex(2):73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,44,00,\
52,00,49,00,56,00,45,00,52,00,53,00,5c,00,41,00,43,00,50,00,49,00,2e,00,73,\
00,79,00,73,00,00,00

[HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\ACPI\Enum]
"0"="ACPI_HAL\\PNP0C08\\0"
"Count"=dword:00000001
"NextInstance"=dword:00000001
#3386infuscomus⇗ @genieautravail

more info is needed - can you take a screenshot of the BSOD? it will show more about the exact error
#3387genieautravail
Zitat von ⇗ infuscomus im Beitrag ¶ #3386
@genieautravail

more info is needed - can you take a screenshot of the BSOD? it will show more about the exact error


Here a screenshot.

The text is in french because it's a french edition of Windows XP SP3.

To quickly resume :
The BIOS isn't fully compliant with ACPI specifications and you can silently disable ACPI by pressing F7 key during installation.

#3388diderius6Hi, does anybody know, what this error means:

STOP: c0000139 {Entry Point Not Found}
The procedure entry point GdiGetBitmapBitssize could not be located in the
dynamic link library GDI32.dll.

Dietmar
#3389infuscomus⇗ @diderius6

I'm guessing the function GdiGetBitmapBitssize isn't in GDI32.dll ?

check it with dependency walker.
#3390diderius6⇗ @infuscomus

Yepp, this is just true,
"GdiGetBitmapBitssize isn't in GDI32.dll"
thanks a lot
Dietmar

 

Page 227

#3391IntiMD
Zitat von ⇗ diderius6 im Beitrag ¶ #3388
Hi, does anybody know, what this error means:
STOP: c0000139 {Entry Point Not Found}
The procedure entry point GdiGetBitmapBitssize could not be located in the
dynamic link library GDI32.dll.
It actually should be there, maybe the service pack installation was unfinished or something like that? Here's a blogpost related to the problem and a possible solution: ⇗ https://vit-experts.blogspot.com/2008/06...-not-found.html
#3392diderius6⇗ @genieautravail
Here is fresh modded acpi.sys
against BSOD A5, 0x0000000D
Dietmar



diderius6 has attached files to this post
#3393genieautravail⇗ @diderius6:
Thank you, I will try it in the next days

EDIT by Fernando: Fully quoted post replaced by directly addressing (to save space and for better readability)
#3394gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #3385
When you have a working XP version with acpi support,
it is enough to copy the modded acpi.sys into folder
windows\system32\drivers
Dietmar


@diderius6....Not sure what you mean, Dietmar. By acpi support, do you mean in the BIOS? I have an Asus B360M mobo and it has acpi 6.1 However, when I get the 0xA5 bsod it claims the BIOS is not acpi compliant.

Oddly enough, the same installation of XP SP3 slipstreamed with the unofficial SP4 upgrade does not get the 0xA5 error and it has no acpi.sys in %windir%\system32. Neither does my original XP SP3 install, even though it has an entry in the registry. The only acpi.sys on my original system is in a directory called %windir%\i386. Have no idea where it came from.

Zitat von ⇗ diderius6 im Beitrag ¶ #3385
PS: Here is the entry for registry for acpi.sys

My registry for the XP SP3 install is much simpler. It has everything you list in the first part except the image path is in ASCII, not hex.

There is no ENUM sub-tree. In fact, the registry values you describe are the same as in my Win 7 registry under HKLM\System\ACPI which also has a reference to ACPI_HAL.

Maybe I need to go further back in the thread and read about HAL, etc.
#3395infuscomus⇗ @gordo999

it sounds like you don't have ACPI enabled on your system.
#3396gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #3388
Hi, does anybody know, what this error means:

STOP: c0000139 {Entry Point Not Found}
The procedure entry point GdiGetBitmapBitssize could not be located in the
dynamic link library GDI32.dll.

Dietmar


@diderius6...In my experience it has meant the dll has been updated so that the address is no longer valid. The function is likely still in the dll, it's no longer at the address called. You might need to find the version to which the calling address applies. Or edit the calling file to point it to the new address.

BTW...I inserted your acpi.sys into the %windir%\System32\drivers and amended my registry to reflect your example and I no longer get the 0xA5 bsod. Instead, I get an 0X7B and I think I know the solution.

When I updated my XP SP3 disk to the unofficial XP SP4 upgrade from harkaz, there was a SATA driver in the package signed by Fernando. It works well for XP on a newer mobo. Unfortunately I don't think it has a txtsetup.oem file for an F6 install so I may have to compare registry values for iaStor in the version that works with my version that gets the bsod.

Progress!!! :-)
#3397gordo999
Zitat von ⇗ infuscomus im Beitrag ¶ #3395
it sounds like you don't have ACPI enabled on your system.

@infuscomus....It is enabled. Solved the problem for now using Dietmar's driver and advice.

I am now getting an 0X7B which is likely the driver required by Windows to interface with the SATA drive. The bsod only occurs when Windows is trying to start, either through a normal boot or via an install disk. The install disk routine happily goes along till the point where it says windows is starting.

re patience...with the amount of patience I have, I should have been a doctor.

BTW...I would gladly do a fresh install but I want many of the old apps I have on the current drive. Replacing them would be a real pain.
#3398jinzouningenHello guys! I'm new in this forum and I want to ask you a question. I have a baytrail tablet which comes with windows 8 and now I want to install windows xp on it. Is it possible? Can someone provide me a  x86 windows xp vhd ready to test? Thanks and sorry for my english D:
#3399diderius6⇗ @jinzouningen

I put XP SP3 on a Lenovo Flex 10 (with Bay Trail cpu).
But no Acpi, no 3D graphik,
so it is not a good base for XP
Dietmar
#3400jinzouningenThanks, I will try to do some tests BTW, we can find a way to get the graphic card to work ;D
#3401gordo999In a very recent post I described a problem where I am getting an 0x7B stop bsod just as windows starts, or is starting.

Discovered likely problem, I have no AHCI driver on my XP original install.

Well....duh!!!

I apparently have no means of running the SATA ports in IDE mode either since that option does not seem available in my BIOS. My options are AHCI or Intel's system. With the latter selected it keeps asking me to connect a bootable drive. Under CSM I can select oprom but that doesn't seem to help.

The other version of xp, upgraded with unofficial SP4, does have an AHCI iastor driver from Fernando and it boots all the way. I took the same setup files used in the SP4 slipstream disk that installed that version and put them on a floppy. I started the install disk, pressed F6 and the install stopped a bit later and asked me to select the AHCI driver, which I did. It claims to have installed them but there is nothing in the registry and no iaStor.sys file in the XP\sys32\drivers directory, or anywhere else.

Is the F6 install not supposed to install the drivers permanently, or am I misunderstanding something? I am asking, because as the install proceeded, the installer claimed to be loading an iaStor driver, after the F6 install. I could hear the floppy drive reading as it did. However, I hit an 0x7B soon after when it was indicated that windows was starting.

Looks like I'll have to manually load the drivers via the registry.
#3402diderius6⇗ @gordo999

I make strange experiance with F6 on newer motherboards and XP SP3.
Yes, always after F6 the driver is loaded but this does not mean, that this driver works.
The STORAHCI driver can be integrated to registry very easy, just look in forum here for
¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (211)
Dietmar
#3403GelipTo avoid displaying messages about unsigned drivers during WinXP installation, you need to add the following entry to the winnt.sif file on F6 floppy:

 
[Unattended]
DriverSigningPolicy=Ignore
#3404diderius6⇗ @Gelip

Does this method also works on the installation of XP SP3 via CD
Dietmar
#3405Gelip⇗ @diderius6
It should not matter if the winnt.sif file is on an F6 floppy disk or on a CD in I386 or AMD64

 

Page 228

#3406infuscomus⇗ @diderius6

works for me
#3407genieautravail
Zitat von ⇗ diderius6 im Beitrag ¶ #3392
@genieautravail
Here is fresh modded acpi.sys
against BSOD A5, 0x0000000D
Dietmar


YES, IT WORKS!

Here some screenshots just after the first start of XP (after sysprep of course) :







The missing drivers :

SM bus controller:
PCI\VEN_1022&DEV_790B&SUBSYS_790B1022&REV_4A\3&11583659&0&A0

USB bus controller:
PCI\VEN_1022&DEV_7914&SUBSYS_79141022&REV_20\3&11583659&0&80

PCI coding/decoding controller:
PCI\VEN_1022&DEV_1578&SUBSYS_15781022&REV_00\3&11583659&0&40

Video controller:
PCI\VEN_1002&DEV_9874&SUBSYS_1C401002&REV_C4\3&11583659&0&08

For the USB controller, I have found (but no tried yet) a driver on the driverpacks solutions website :

⇗ https://drp.su/en/hwids/PCI%5CVEN_1022%26DEV_7914

For the PCI coding/decoding controller, I have found (but no tried yet) a forced driver (for Windows 10 ?) on the driverpacks solutions website :

⇗ https://drp.su/en/hwids/PCI%5CVEN_1022%26DEV_1578

For the video controller , I have found (but no tried yet) a forced driver (for Windows 10 ?) on the driverpacks solutions website :

⇗ https://drp.su/en/hwids/PCI%5CVEN_1002%2...61103C%26REV_E6

For the SM bus controller, I have found (but no tried yet) a forced driver (for Windows 10 ?) on the driverpacks solutions website :

⇗ https://drp.su/en/hwids/PCI%5CVEN_1022%26DEV_790B

Others ideas for the drivers ?
#3408infuscomus⇗ @genieautravail

for VGA you could try the R9 270 XP drivers and add the HWID to the inf?

⇗ https://www2.ati.com/drivers/13-12_xp32_dd_ccc.exe
#3409genieautravailThank you for the link!

But your link doesn't works (for the moment ?)...
#3410diderius6⇗ @skullteria



Dietmar

⇗ https://docs.microsoft.com/en-us/windows...rectedfrom=MSDN
#3411IntiMD
Zitat von ⇗ infuscomus im Beitrag ¶ #3408
@genieautravail

for VGA you could try the R9 270 XP drivers and add the HWID to the inf?

⇗ https://www2.ati.com/drivers/13-12_xp32_dd_ccc.exe

Zitat von ⇗ genieautravail im Beitrag ¶ #3409
Thank you for the link!

But your link doesn't works (for the moment ?)...


It should work when downloading the file through wget: 'wget "https://www2.ati.com/drivers/13-12_xp32_dd_ccc.exe" --referer=drivers.amd.com --content-disposition'
#3412infuscomus⇗ @genieautravail

scroll down to XP section
⇗ https://www.amd.com/en/support/previous-...d-radeon-r9-270
#3413daniel_k
Zitat von ⇗ infuscomus im Beitrag ¶ #3375
vista beta 5365 works on my AB350 gaming K4 Ryzen motherboard - no A5 BSOD

do you think you can remove those missing imports without breaking it?

Sorry, too many missing imports with endless calls.

That could take months and may not even work as there are too many code changes, not just ACPI interpreter ones.

I think is easier to implement most used opcodes in original ACPI.SYS than patch beta versions.
#3414daniel_k
Zitat von ⇗ genieautravail im Beitrag ¶ #3407
Zitat von ⇗ diderius6 im Beitrag ¶ #3392
@genieautravail
Here is fresh modded acpi.sys
against BSOD A5, 0x0000000D
Dietmar


YES, IT WORKS!

I'll apply those changes to my last ACPI.SYS x86 and x64.

Great work, guys!
#3415daniel_k⇗ @diderius6, what were you doing when the system BSOD'ed? That's an unusual error.

AMD or Intel system?
#3416genieautravail⇗ @IntiMD

Done (97 MB)!
#3417daniel_k⇗ @genieautravail

AMD USB 3.0 driver 1.1.0.145
⇗ http://ftp.hp.com/pub/softpaq/sp64501-65000/sp64533.exe

That is the last supporting XP.
Link is from HP, but the driver is generic, just unpack and install.
#3418daniel_k⇗ @canonkong, ⇗ @diderius6, ⇗ @infuscomus

Hey guys.

Just learned something interesting about the XHCI drivers.

Some settings may crash the drivers. You may think they are incompatible, but that is now always the case.

For example, the TI driver.

It is a nice driver, supporting PAE properly and is not a WDF crappy driver, which means it can be used to install XP from USB.

Works just fine with VIA VL805/VL806 controllers, as long as the DataPumpXhcdWiringValue registry setting is not present.

This is a really nice find, as cards with those controllers are the cheapest ones and can be found anywhere.

So, please delete all registry settings and try the drivers again, may be this helps with crashing.
#3419genieautravail
Zitat von ⇗ daniel_k im Beitrag ¶ #3417
@genieautravail

AMD USB 3.0 driver 1.1.0.145
⇗ http://ftp.hp.com/pub/softpaq/sp64501-65000/sp64533.exe

That is the last supporting XP.
Link is from HP, but the driver is generic, just unpack and install.


Thank you very much!
#3420daniel_k⇗ @Mov AX, 0xDEAD

Just confirmed that the either:

- AMD drivers are poorly coded
- MCCI's drivers are properly coded and/or include workarounds to support PAE.

Tried AMD drivers on VIA VL805 card, same issues with NTVDM crashing.

Tried TI drivers written by MCCI, absolutely no issues on Server 2003 Enterprise/Datacenter and XP with "ours" patched NTOSKRNL/HAL unlocked PAE.

 

Page 229

#3421infuscomus⇗ @daniel_k

I've already seen some crashes, got a D0 BSOD on AMD Ryzen using AMD USB 3.0 driver 1.1.0.145 - this was from an attempt at loading it in XP setup textmode, no registry keys applied to the driver though.
#3422diderius6⇗ @daniel_k
I will tell you later about new project:)).
Do you have Symbols for XP 64 SP1 (1830)
Dietmar
#3423daniel_k⇗ @diderius6

UEFI, maybe?

No, maybe I have symbols for SP2, not sure.
#3424Mov AX, 0xDEAD
Zitat von ⇗ daniel_k im Beitrag ¶ #3420
@Mov AX, 0xDEAD
- AMD drivers are poorly coded
- MCCI's drivers are properly coded and/or include workarounds to support PAE.


Thank for info

Myself experince:
- Intel usb3 for windows7 has missing imports but can be modded to run on windows xp. Driver itself has problems, it can init hub after installing
- VIA drivers has deferred initialization of devices and have issue with USB BULK mode (ofter drop link to usb devices), only ISO mode works, but this mode is very CPU expensive
#3425IntiMD
Zitat von ⇗ diderius6 im Beitrag ¶ #3422
@daniel_k
I will tell you later about new project:)).
Do you have Symbols for XP 64 SP1 (1830)
Dietmar


A nitpick, but an important one. the RTM build of XP Professional x64 Edition is based on Server 2003 SP1 - ⇗ https://www.thecollectionbook.info/builds/windows/build/225

Something that might be interest, MSDN includes the debug/checked build of XP Pro x64 Edition RTM by the filename "en_windows_xp_professional_x64_chk.iso" and the SHA-1 hash of "45f2a3ec578c4f7095e60439d9af5bcaebe57fd9" of size 628MB. Consult 'the eye' for more info.
#3426Mattiwatti
Zitat von ⇗ IntiMD im Beitrag ¶ #3425
Something that might be interest, MSDN includes the debug/checked build of XP Pro x64 Edition RTM by the filename "en_windows_xp_professional_x64_chk.iso" and the SHA-1 hash of "45f2a3ec578c4f7095e60439d9af5bcaebe57fd9" of size 628MB. Consult 'the eye' for more info.

Beware that this ISO is only bootable without modifications if a kernel debugger is attached from the very first boot (meaning to text mode setup) so that you can catch and ignore debug asserts. The reason for this is acpi.sys triggering several asserts at boot time, on every boot. If you replace acpi.sys there is no issue since the other drivers do not (normally) trigger kernel asserts. It is also possible to integrate the checked build of SP2, the file for this is "WindowsServer2003.WindowsXP-KB914961-SP2-x64-DEBUG-ENU.exe". I can't remember off hand whether this version also has a poorly behaved acpi.sys, but I think so because I eventually just patched out the entire assert in ntkrnlmp.exe that acpi.sys was triggering since it was getting tiresome.
#3427Gelip⇗ @daniel_k

Zitat von ⇗ daniel_k im Beitrag ¶ #3423
UEFI, maybe?

I'm interested in WinXP x64 under UEFI. Do you follow the topic on ⇗ https://www.betaarchive.com/forum/viewto...20327&start=100 ?
I do various tests. WinXP x64 SP2 can be run under UEFI from MBR or GPT partition. There is only a problem with the video driver. All other drivers work - ethernet, wifi, audio, usb, sata
#3428diderius6⇗ @Gelip
Thanks a lot,
installing "Symbols" and at once I found the problem with Windbg

OVERLAPPED_MODULE: Address regions for 'dump_iaStor' and 'imapi.sys' overlap


Dietmar

STACK_COMMAND: kb

FOLLOWUP_IP:
nt!MmLoadSystemImage+10d6
fffff800`01528976 488b4e30 mov rcx,qword ptr [rsi+30h]

SYMBOL_STACK_INDEX: 1

SYMBOL_NAME: nt!MmLoadSystemImage+10d6

FOLLOWUP_NAME: MachineOwner

MODULE_NAME: nt

DEBUG_FLR_IMAGE_TIMESTAMP: 42435bd5

IMAGE_NAME: memory_corruption

FAILURE_BUCKET_ID: X64_0x0_nt!MmLoadSystemImage+10d6

BUCKET_ID: X64_0x0_nt!MmLoadSystemImage+10d6

Followup: MachineOwner
#3429diderius6⇗ @skullteria

⇗ https://j00ru.vexillium.org/2010/06/insi...re-enforcement/

Dietmar

PS: On x64-based versions of the operating system, kernel-mode drivers must be digitally signed.
I think, it can be hacked in ntoskrnl.exe.
#3430Gelip⇗ @diderius6

Zitat von ⇗ diderius6 im Beitrag ¶ #3429
@skullteria

⇗ https://j00ru.vexillium.org/2010/06/insi...re-enforcement/

Dietmar

PS: On x64-based versions of the operating system, kernel-mode drivers must be digitally signed.
I think, it can be hacked in ntoskrnl.exe.

Or if you use modded winload.exe or winload.efi from beta Server Longhorn 16497: ⇗ winload.efi ⇗ winload.exe
#3431canonkong⇗ @daniel_k
I had tested the TI driver for DEV_ID: 149C , but it can not work for the USB DISK on win7.
For AMD X570 and ryzen 3000 CPUs' XHCI, only Etron MOD driver can work well.
VIA also can work well, but it will 0X0000001E BSOD sometime.
ASMedia, AMD 1.0.5.3 and TI drivers can not work for USB DISK.
INTEL 5.0.5.43 and AMD 2.0.0.48 drivers will 0X0000002C BSOD sometime. (This two drivers can work well for most all USB devices but AMD 149C.).
Fresco Logic USB Driver can not install the hub driver.
Renesas USB driver will BSOD when you install xhci driver.

I tried again and again, but can not found a way to solve the BSOD problems or made the USB DISK work.
#3432XPLives⇗ @genieautravail

Zitat von ⇗ genieautravail im Beitrag ¶ #3409
Thank you for the link!

But your link doesn't works (for the moment ?)...


Use this link instead.

⇗ https://www.amd.com/en/support/graphics/...-radeon-hd-6570

Then select "Windows XP - Professional/Home"


Revision Number
14.4

File Size
179 MB

Release Date
4/25/2014


Then click the DOWNLOAD button link which goes to:
⇗ https://www2.ati.com/drivers/14-4-xp32-64-dd-ccc-pack2.exe

For whatever reason you can't hotlink download so you must use the first link to get to the page.


To Whom It May Concern:
Dual Brand Graphics Card Users
I also found a nasty bug.  When using both nVidia and AMD XP drivers it cause the nVidia card to BSOD when accessing 3D graphics.  After going back to a cleaner image before any graphics drivers it was fine.  So if you want to use the AMD graphics driver only and no nVidia.  Both cards work fine on a clean install using just their own driver.  So don't attempt installing both cards.  If you do install both cards' drivers only the AMD will always work properly.

As far as performance nVidia will probably be the strongest in XP.
#3433XPLives⇗ @canonkong
Zitat von ⇗ canonkong im Beitrag ¶ #3431
@daniel_k
I had tested the TI driver for DEV_ID: 149C , but it can not work for the USB DISK on win7.
For AMD X570 and ryzen 3000 CPUs' XHCI, only Etron MOD driver can work well.
VIA also can work well, but it will 0X0000001E BSOD sometime.
ASMedia, AMD 1.0.5.3 and TI drivers can not work for USB DISK.
INTEL 5.0.5.43 and AMD 2.0.0.48 drivers will 0X0000002C BSOD sometime. (This two drivers can work well for most all USB devices but AMD 149C.).
Fresco Logic USB Driver can not install the hub driver.
Renesas USB driver will BSOD when you install xhci driver.

I tried again and again, but can not found a way to solve the BSOD problems or made the USB DISK work.

   

CanonKong, which of these do you think are the top 3 best for Intel USB 3.0 use?   Or can you list the weaknesses/issues of these for Intel USB 3.0 on XP 32-Bit use?

Using real USB 3.0 PCIe cards the TI USB 3.0 xHCI driver is the best performing overall as I mentioned to Daniel_K.  If you need to mod one successfully that is the best choice in performance.  At least on the USB 3.0 PCIe cards comparison random seek times was the lowest latency.  You can compare this to a fast car that also brakes the quickest.  So if you enjoy skipping around large HD videos you find this most pleasurable.  Delays were as low as 0.5 seconds.  Other brands could be as high as 2.0 seconds in delay.

If you're just copying large data only NEC performed the best times but overall all USB 3.0 xHCI cards are very close within a few percentage of each other.

How modding the TI USB 3.0 driver to work on the Intel or AMD USB 3.0 ports will affect the driver performance is unknown compared to the real USB 3.0 PCIe cards.  But if anyone successfully modifies the TI USB 3.0 for XP 32-Bit and can access the USB hard drive, USB webcam, USB audio, USB mouse, USB keyboard, USB floppy, USB printer, and USB optical disc drive successfully without any connection issues is the winner.  Then I can conduct a true USB 3.0 modded Intel, AMD, vs. PCIe card benchmark comparison.
#3434XPLives⇗ @gordo999
Zitat von ⇗ gordo999 im Beitrag ¶ #3401
In a very recent post I described a problem where I am getting an 0x7B stop bsod just as windows starts, or is starting.

Discovered likely problem, I have no AHCI driver on my XP original install.

Well....duh!!!

I apparently have no means of running the SATA ports in IDE mode either since that option does not seem available in my BIOS. My options are AHCI or Intel's system. With the latter selected it keeps asking me to connect a bootable drive. Under CSM I can select oprom but that doesn't seem to help.

The other version of xp, upgraded with unofficial SP4, does have an AHCI iastor driver from Fernando and it boots all the way. I took the same setup files used in the SP4 slipstream disk that installed that version and put them on a floppy. I started the install disk, pressed F6 and the install stopped a bit later and asked me to select the AHCI driver, which I did. It claims to have installed them but there is nothing in the registry and no iaStor.sys file in the XP\sys32\drivers directory, or anywhere else.

Is the F6 install not supposed to install the drivers permanently, or am I misunderstanding something? I am asking, because as the install proceeded, the installer claimed to be loading an iaStor driver, after the F6 install. I could hear the floppy drive reading as it did. However, I hit an 0x7B soon after when it was indicated that windows was starting.

Looks like I'll have to manually load the drivers via the registry.

   

SATA IDE Compatibility Mode has been gone since SkyLake so say good bye to that.  You want that mode you'll need to go back to Z97.

Too many messages to sort through but I believe you are on an Intel Coffee Lake 300 Series motherboard.

The F6 method was meant for real internal floppy disk drives although it is possible to use USB floppy drives on real eHCI USB 2.0 ports which no longer exist on SkyLake 100 Series+.

First you cannot use the floppy drive method which I can only assume you are using a USB floppy drive since no onboard FDD controller anymore since Ivy Bridge.  It might read the driver but because eHCI no longer exists since SkyLake the driver will not successfully load even though it appears to have loaded something on the floppy disk before BSOD 7B later.

The easiest way at least for you would be nlite the SATA AHCI driver from Intel.  Don't mix with the ReactOS STORAHCI driver.  You don't need that driver if you are using Intel motherboards.  That should only be used for AMD if you aren't using Asmedia SATA ports or unless you are using a NVME then you will need STORAHCI.  Personally you should use the K.I.S.S. method and I also suggest you don't need the SP4.  I don't know if you're adding that due to paranoia of getting hacked or what then just don't install the driver to your ethernet or WIFI.  I'd use SP2 or SP3 integrated on a clean ISO such as XPP SP0 with just the Intel SATA driver only integrated with nLite and install XP to a completely new partition unless you wish to override your old one then you should copy the contents and back it up first before formatting that partition before using it.  XP allows you to install it to as many new partitions if you need if you wish to preserve your older XP installation.  You'll have to modify the BOOT.INI to give the description to distinguish between the partitions when choosing which one to boot.

Later after you successfully installed XP you can run the unofficial SP4 update inside Windows XP desktop.  That is the best way.  Don't forget to include the modded ACPI.sys during the setup phase which may need to be copied a couple times if you plan on using ACPI.  It's much easier to install XP to a FAT32 partition and have a bootable DOS floppy to do this or have a bootable 98SE DOS partition on the drive itself - Best Method.  The other way is to disconnect your drive and hook it up to another machine if you're using NTFS.
#3435LoneCrusader⇗ @daniel_k, ⇗ @Mov AX, 0xDEAD
RE: modifying TI USB3 drivers

I assume you guys are already aware of this, but at least one set of .PDB files for the TI drivers were leaked at some point. These were the only .PDB files I've ever been able to turn up for any of the manufacturer's XP USB3 drivers. I don't know how much the code may have changed since the version with .PDB files, but maybe they will be helpful in deciphering some of the code. Here's the link:
⇗ https://www.helpjet.net/Fs-14515117-2670...16-extract.html

 

Page 230

#3436XPLives⇗ @diderius6
Zitat von ⇗ diderius6 im Beitrag ¶ #3077
On the Q1900m board, the Celeron CPU J1900 (soldered on socket all in one chip SoC),
I can install MPS Multiprocessor which shows also (as on acpi) 4 cpu cores, because this chip has 4 cores
and no Hyperthreading. On this Bios is an extra MPS table, on the Lenovo Flex 10 is no MPS table as RW-everything tells.
In MPS the sound works. Interesting, from where the devices get their information on MPS,
because no acpi.sys there, which looks at DSDT table. But the DSDT table is still needed,
compi does not start, when you delete DSDT or give fake empty DSDT.
I will make a speed comparisation ACPI against MPS (all Multiprocessor).
With full ACPI, strange things happen on this board:
Windbg via COM1 runs only correct in Safe Mode (F8) and no sound.
A yellow questionmark is at partmgr in Device Manager. This I do not understand at all,
because without loaded partmgr.sys the compi does not start but it starts
Dietmar

PS: In MPS there are 2 yellow marks at pci-to-Pci bridge, reclaiming not enough free resources
even the IRQs from MPS go up to 128 and noone is double.
This may be a hint, what is really going on in the SoC, may be something is shared there.
All boards with such a SoC cpu have absolut identic devices, because they are all integrated in this SoC chip.
This is very nice, when you compare compis with the same SoC cpu.
I do not like, that I can not change the cpu. But I think, that there is no cheaper and better board today on the market.
It is to 100% silent, passiv cooling and SSD, power consumption around 10 Watt.
Now I just get 155 updates from Posready^^.

EDIT: Now I have also sound on full ACPI Multiprocessor XP SP3 on the Q1900m board. For this I have to disable "Microsoft UAA-Bustreiber für High Definition Audio"
in Device Manager and after this to enable "Microsoft UAA-Bustreiber für High Definition Audio" again, crazy. It has to do with not enough resources. USB2, 3, Lan, sound works now there. The only device is the integrated GPU, which does not work
under XP SP3 even I make hack. Windbg works now also normal, after I deactivated the 2 pci-to-Pci bridges, reclaiming not enough free resources. Now I benchmark full ACPI Multiprocessor against MPS Multiprocessor.
I use for this Nvidia GT 730. The bottleneck is here the CPU J1900.

3DMark2001 Acpi: 17347     Cinebench 11.529: 1.37
3DMark2001 MPS: 15739     Cinebench 11.529: 1.33

So, Acpi is faster than MPS, even I do not know why. 1440 HD Video runs normal.
Commander Keen 4 runs in full screen modus^^. Prime95 and other Benchmarks all together show: XP SP3 runs absolut stable on the Q1900m board in full ACPI Multiprocessor mode.

Hihi:
"Intel ® Bay Trail platform does not support:

Win XP Pro 32bit

Windows Embedded Standard 2009 (XPe SP3) 32bit "

And just for fun: I do pur USB boot on the Q1900m board via USB3 port and the nice driver from @daniel_k , so
no more problems with iastor or storahci^^



   


Zitat von ⇗ diderius6 im Beitrag ¶ #3077
On the Q1900m board, the Celeron CPU J1900 (soldered on socket all in one chip SoC),
I can install MPS Multiprocessor which shows also (as on acpi) 4 cpu cores, because this chip has 4 cores
and no Hyperthreading. On this Bios is an extra MPS table

I will make a speed comparisation ACPI against MPS (all Multiprocessor).

I do not like, that I can not change the cpu. But I think, that there is no cheaper and better board today on the market.
It is to 100% silent, passiv cooling and SSD, power consumption around 10 Watt.

Now I benchmark full ACPI Multiprocessor against MPS Multiprocessor.
I use for this Nvidia GT 730. The bottleneck is here the CPU J1900.

3DMark2001 Acpi: 17347     Cinebench 11.529: 1.37
3DMark2001 MPS: 15739     Cinebench 11.529: 1.33

So, Acpi is faster than MPS, even I do not know why. 1440 HD Video runs normal.



Dietmar provided nice idea to benchmark ACPI vs NO ACPI MPS Multiprocessor.

This I used i5-8400 downclock to 792 MHz.  Reduced CPU cores from 6 to 2.

I used Server 2003 32-Bit OS instead.

Now is it fair? :)  We shall see...

Most of these tests and more were done about 2 weeks ago over a 1 week period.  Then the wild fires and PGE safety black out caused havoc here so I did not post sooner.

To be quick and clear.  The conclusion is incorrect that Dietmar discovered.  I found at first the MPS Multiprocessor results were slightly better.  But after a few tests I find that both MPS Multiprocessor Mode and APCI Modded ACPI.SYS from Daniel_K showed nearly identical results.

Note:  I did not test on Hyperthreaded CPU.  All 2 Cores are 2 Cores / 2 Threads on i5-8400.   Later it would be interesting to see CPU with 2 Cores 4 Threads test vs 2 Cores 2 Threads if any difference in benchmarking if ACPI with hyperthreading has any advantage.

However as a follow up I would be interested if Dietmar has a Kill-A-Watt to measure total wattage of PSU connected to Motherboard how much it draws from outlet minus Monitor.

I think it will be much higher than 10 Watts for combined Motherboard and PSU connected total watts usage.

Okay now down to the actual results.

I used an nVidia GT 710 PCIe 2GB model for the test which is much worse than Dietmar's GT 730 which is better. :(

But still the results I found interesting even with dual cores for both ACPI and MPS Mode.

i5-8400 (Dual Cores) Enabled of 6.
792 MHz

[3DMark03 Score] DK_ACPI / MPS
20306

[CineBench Benchmark v11.529]
OpenGL
19.62 FPS


vs Dietmar Q1900 Benchmark

Quad-Core Processor J1900
⇗ https://ark.intel.com/content/www/us/en/...o-2-42-ghz.html

2000 MHz / 2420 MHz Boost

3DMark2001 ACPI: 17347
3DMark2001 MPS: 15739     

[CineBench Benchmark v11.529]
ACPI: 1.37 FPS
MPS: 1.33 FPS



I just noticed Dietmar used 3dMark2001 which uses DX 8.1.  I used 3DMark03 which uses DX 9.0c.  But I would also think scores should be higher on 3DMark2001 than 3DMark2003?

I have also tested multiple cores from 2-6 on MPS Mode but will need time to do comparison of all results before reporting those benchmarks and power consumption.

So in conclusion my tests on modern hardware Z370 showed even on an inferior GT 710 the Benchmark scores were much higher even on a downclocked 792MHz and 6 Cores reduced to 2 Cores setup and showed that ACPI vs NO ACPI MPS Multiprocessor Mode to be a tie or very close within margin of error.

Maybe Dietmar can redo the same tests on Q1900 and also on modern motherboard and will find similar results using 3DMark01 and 3DMark03.

Although the Q1900 results seems fishy why the results are so different since the CPU has no hyperthreading capability to be a possible reason for the performance difference.

If Dietmar has older GT 710 model to test that would be interesting on Q1900.

Zitat von ⇗ diderius6 im Beitrag ¶ #3077

Hihi:
"Intel ® Bay Trail platform does not support:
Win XP Pro 32bit
Windows Embedded Standard 2009 (XPe SP3) 32bit "


This was before modded ACPI.sys but MPS would have worked and proven XP could work on Baytrail at least on a desktop motherboard model.  MPS Mode should also work on Baytrail laptop model but you state no MPS table?  What happens when you install with F7 method on Baytrail laptop?  Does it go to Standard PC?

But hihi - yes Intel is wrong again.
#3437gordo999
Zitat von ⇗ XPLives im Beitrag ¶ #3434
SATA IDE Compatibility Mode has been gone since SkyLake so say good bye to that.  You want that mode you'll need to go back to Z97.

Too many messages to sort through but I believe you are on an Intel Coffee Lake 300 Series motherboard.

@XPLives...thanks for the valuable info re my problem. I am running an Asus B360M which is Coffee Lake. Don't want the mode, I am on a learning curve and thought XP might need it to boot.

Zitat von ⇗ XPLives im Beitrag ¶ #3434
First you cannot use the floppy drive method ...the driver will not successfully load even though it appears to have loaded something on the floppy disk before BSOD 7B later.

Wondered about that, I have just been exhaustively through the registry and there is no sign of iaStor. The SP4 update did add it and reg entries to a working version of xp and I am cloning everything re registry and drivers from the good copy to my copy with the apps I need.

The reason I tried SP4 had nothing to do with paranoia about being hacked, I thought it might provide drivers for the modern mobo which it does. There is a signed version by Fernando for ahci drivers which I am hoping to transfer.

Zitat von ⇗ XPLives im Beitrag ¶ #3434
Later after you successfully installed XP you can run the unofficial SP4 update inside Windows XP desktop.  That is the best way.  Don't forget to include the modded ACPI.sys during the setup phase ...


I used Dietmar's modded acpi.sys and it seems to have gotten me past the 0xA5 error. I used the Driver Packs site on a version of Win 7 on the same mobo. It supplied a few drivers I needed and made W7 solid on this mobo. Don't know if they have anything for XP.

Just looking in the SP4 working version for an ACPI reference under HKLM\system\ccs\enum but I see no signs of an acpi section. Just looking up Dietmar's post where he included some registry stuff.

I really just want to get it going. I really enjoyed seeing the old Windows XP boot screen but I got the 0x7b error about that point. Then, I'd like to check out some of the mods you guys are doing.
#3438Andalu⇗ @genieautravail
you can also try this:
⇗ https://archive.org/details/icafe-winxp-...-br294594-sep24

It should be the latest ATI display driver for WinXP 32-bit.
#3439gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #3159
this morning I make the ultimative ACPI test for the EVGA dark z390 board.

⇗ @diderius6

Dietmar...your drivers (storahci) got me further along the boot sequence. I have now reached a screen informing me that my hardware has changed and they are nagging me to reactivate within 3 days. However, the system seems unstable at this point. If I hit yes to activate or no to bypass activation, the nag screen disappears for 20 seconds then re-appears, having done nothing.

I was reading an article on how ro reset some of the licensing files, like licdll.dll, but I can't get into safe mode. I reach the safe mode screen with the safe mode boxes in each corner but the screen flashes regularly and does nothing.

I would like to slipstream your drivers into my XP SP3 install disk but I'll need to research that.

BTW...found a neat way to enter a reg file into an offline system. You probably know about it. In the W7 registry, you can highlight the HKLM key then use Load Hive from the File menu to load a hive from windir\sys32\config in the offline OS registry.

I selected the 'system' hive, for example, and a box appeared asking me to name it. I called it winxp sys and it loaded the hive under HKLM with that name. That hive can now be edited freely. Must remember to unload the hive when finished.

With your reg file, I edited it to replace references to 'system' in HKLM\system with 'winxp sys'. Therefore, the reg entry would be HKLM\winxp sys instead of HKLM\system.

Then I changed your control set number to my default ccs which is ccs003. Then I went back to the W7 reg, highlighted the winxp sys hive, and activated Import from the File menu. I pointed it to your edited file and it imported your reg data into my win xp hive.

This was all done in a text editor with a search/replace tool.

Saves a lot of grief.
#3440XPLives⇗ @gordo999
Zitat von ⇗ gordo999 im Beitrag ¶ #3437
Zitat von ⇗ XPLives im Beitrag ¶ #3434
SATA IDE Compatibility Mode has been gone since SkyLake so say good bye to that.  You want that mode you'll need to go back to Z97.

Too many messages to sort through but I believe you are on an Intel Coffee Lake 300 Series motherboard.

@XPLives...thanks for the valuable info re my problem. I am running an Asus B360M which is Coffee Lake. Don't want the mode, I am on a learning curve and thought XP might need it to boot.

Zitat von ⇗ XPLives im Beitrag ¶ #3434
First you cannot use the floppy drive method ...the driver will not successfully load even though it appears to have loaded something on the floppy disk before BSOD 7B later.

Wondered about that, I have just been exhaustively through the registry and there is no sign of iaStor. The SP4 update did add it and reg entries to a working version of xp and I am cloning everything re registry and drivers from the good copy to my copy with the apps I need.

The reason I tried SP4 had nothing to do with paranoia about being hacked, I thought it might provide drivers for the modern mobo which it does. There is a signed version by Fernando for ahci drivers which I am hoping to transfer.

Zitat von ⇗ XPLives im Beitrag ¶ #3434
Later after you successfully installed XP you can run the unofficial SP4 update inside Windows XP desktop.  That is the best way.  Don't forget to include the modded ACPI.sys during the setup phase ...


I used Dietmar's modded acpi.sys and it seems to have gotten me past the 0xA5 error. I used the Driver Packs site on a version of Win 7 on the same mobo. It supplied a few drivers I needed and made W7 solid on this mobo. Don't know if they have anything for XP.

Just looking in the SP4 working version for an ACPI reference under HKLM\system\ccs\enum but I see no signs of an acpi section. Just looking up Dietmar's post where he included some registry stuff.

I really just want to get it going. I really enjoyed seeing the old Windows XP boot screen but I got the 0x7b error about that point. Then, I'd like to check out some of the mods you guys are doing.


   

Zitat von ⇗ gordo999 im Beitrag ¶ #3437
[quote=XPLives|p3434]
SATA IDE Compatibility Mode has been gone since SkyLake so say good bye to that.  You want that mode you'll need to go back to Z97.

@XPLives...thanks for the valuable info re my problem. I am running an Asus B360M which is Coffee Lake. Don't want the mode, I am on a learning curve and thought XP might need it to boot.

[quote=XPLives|p3434]
Wondered about that, I have just been exhaustively through the registry and there is no sign of iaStor. The SP4 update did add it and reg entries to a working version of xp and I am cloning everything re registry and drivers from the good copy to my copy with the apps I need.

The reason I tried SP4 had nothing to do with paranoia about being hacked, I thought it might provide drivers for the modern mobo which it does. There is a signed version by Fernando for ahci drivers which I am hoping to transfer.


Again totally unnecessary to need SP4.  It might only have some additional security updates but nothing that would increase compatibility with games.  It's also possible any new updates are not tested for any possible compatibility conflicts.   There are no new drivers that you can't download yourself off say nVidia or whatever vendor.  Again it's better to NOT integrate a massive driver pack into your install disc.  I know it may seem like a good idea but later you will find it isn't when constructing your first installation disc.

I went ahead and renamed my older XP 32-Bit support thread that already was renamed before but I decided to modify the SATA AHCI package that Fernando had uploaded but I found there's too much going on in there and simplified the nLite package for integration to an optical disc.

Forget the SP4, just use a clean XP SP0, 1, 2, or 3 or get XP SP0 and integrate the SP into it using nLite before integrating the SATA AHCI driver.  If you need to add more drivers later I recommend you just don't install or integrate them but just manually install them "AFTER" XP is fully booted to the desktop and installed.   You are also better off imaging the clean installation before adding any drivers.  The only driver that should be integrated is just the SATA AHCI from Intel and that's it.  Once you add all that other crap into the registry it's a pain to remove it which is why a clean image after you've installed it without the bloat you can restore again later if you corrupt it.

Then you can start adding the graphics drivers, sound, network, et cetera.  Image your OS partition again.

Finally install all your software applications.  Image your OS partition again.

That's the best way in case you want to avoid reinstalling everything from scratch or go to an even cleaner OS before drivers / applications installed.


I put the modified SATA AHCI driver here in my old renamed thread.

⇗ Windows 32-Bit OS iNTEL SATA & Gaming Discussions 2000 XP 2003 2009

Just download the file there called:
XP 32-Bit and Server 2003 32-Bit SATA AHCI Driver - Fernando MOD.ZIP

Make sure you pick the correct Hardware ID to integrated that matches your Intel SATA AHCI Hardware Device ID.

If you don't know it then boot into Windows Vista or later.

Copy and paste all the Hardware ID fields for:

Device Instance ID:

Hardware IDs:

Compatible IDs:

Matching Device ID:

I could then construct one specific to your motherboard.


And make sure you at least got a PS/2 keyboard hooked up to your PS/2 keyboard - NO USB ones.

Later if you require a USB mouse you can try using your PS/2 keyboard and install one of the USB 3.0 modded drivers or get a real USB 3.0 PCIe card and install their XP driver.  If it's too difficult then get a USB 2.0 PCIe card which usually has built in drivers to work with XP.

The speed difference between USB 2.0 and USB 3.0 I found is around 5 times roughly in XP and Server 2003.

If you don't want to deal with the modded ACPI. - Again in my own tests the best one so far is Daniel_K's.  Although Dietmar might have a better one now I just have not had time to test every one of them.

I can tell you the NO ACPI MPS Multiprocessor method works with everything I have tested despite the loss of ACPI related functions.  This method works best on Intel CPUs and NOT AMD which may lack a MPS Table so may install as a Standard PC with just 1 core.
#3441XPLives
Zitat von ⇗ Andalu im Beitrag ¶ #3438
@genieautravail
you can also try this:
⇗ https://archive.org/details/icafe-winxp-...-br294594-sep24

It should be the latest ATI display driver for WinXP 32-bit.



Never tested this but saw this iCafe driver a while back.  It might work better on the newer AMD R9 series than the v14.4.  So far no one willing to test their R9 to see if it works.
#3442Mov AX, 0xDEAD
Zitat von ⇗ LoneCrusader im Beitrag ¶ #3435

I assume you guys are already aware of this, but at least one set of .PDB files for the TI drivers were leaked at some point.

Wow, rare find !

this version 1.16.3 is not last, but PDB make it very valuable
#3443daniel_k⇗ @Mov AX, 0xDEAD

The TI driver gives the following error on Intel controllers:

This device is disabled because the firmware of the device did not give it the required resources. (Code 29)

As this driver works with VIA, which in turn works with the same AMD driver which works with Intel, is most probably compatible.

There should be some "sanity" check somewhere.

If we could patch it, would make it the best driver ever.

Any ideas as to how the driver reports error 29? I believe the issue lies in tixhci.sys, which doesn't provide device resources to tihub3.sys.
#3444daniel_k⇗ @canonkong

Sorry that it didn't help you.

When you say "USB disk not work", what you mean exactly?

The device is detected but doesn't work? Or device IDs are all 0 (zeros)?
#3445daniel_k⇗ @LoneCrusader

Thanks you very much! Nice to see you here!

I've seen a couple of driver with "leaked" PDBs sometimes, but never really pay attention to them.
#3446canonkong⇗ @daniel_k
You can find the letter of the U disk in the computer, but it can't load the capacity and other information, or open the U disk to read the contents.
#3447daniel_k⇗ @canonkong

All other devices, such as input devices (mouse/keyboard) work?
#3448Mov AX, 0xDEAD
Zitat von ⇗ daniel_k im Beitrag ¶ #3443
@Mov AX, 0xDEAD
Any ideas as to how the driver reports error 29? I believe the issue lies in tixhci.sys, which doesn't provide device resources to tihub3.sys.

- error usualy generated by one of IRP request to driver
- i will check soon this driver on intel controller and give you more info

p.s. year ago i played with intel usb3 win7 driver to run it on winxp, this is log of irq request (DispatchPnp is irp handler):

DriverAddDevice
{
->BaseDeviceCreate
->XhcdCreateController
->XhcdInitializeParams
+DeferredRoutine_0
+DeferredRoutine_1
+DeferredRoutine_4
->MakeHostName
}

DispatchPnp (18 notsupport) IRP_MN_QUERY_LEGACY_BUS_INFORMATION

DispatchPnp (0D {off[178]=0 result=0}) IRP_MN_FILTER_RESOURCE_REQUIREMENTS

DispatchPnp (08 notsupport) IRP_MN_QUERY_INTERFACE

DispatchPnp (08 notsupport) IRP_MN_QUERY_INTERFACE

DispatchPnp (00 ->WorkerCreate{} IoCallDriver result=STATUS_PENDING) IRP_MN_START_DEVICE
->WorkerCreate
+WorkerEvtRelease
+IoQueueWorkItem(WorkerRoutine)

WorkerRoutine
->FdoStartDeviceWorker
->FdoStartDevice
->FdoSendIrpSynchronously
->XhcdStartController
{
->ManyCalls0

->XhcdInitResources(03 memory 81 private 02 irq)
->XhcdRegisterInterrupt
->XhcdInitMmIoSpace

->XhcdDmaCreate
->DispatchPnp (08 notsupport)

->XhcdCbmCreate
+XhcdCbmResizeEvtProc
->BaseThreadCreate
->BaseThreadStart
+BaseThreadStartRoutine
->PsCreateSystemThread

->KeSetBasePriorityThread
->BaseThreadStartRoutine
->XhcdCbmResizeEvtProc(suspend->WaitForSingleObject)

->XhcdCbmCreateAny
->XhcdCbmInflate (HalAllocateCommonBuffer align error)
7x { push 7 pop esi mov 0x200, mov 0x1000 }


->XhcWaitHCReady
->XhcCheckExtendCap
->XhcReset
->XhcdCreateComBufManagement
->XhcdCreateDeviceManagement
->XhcdAllocPhyMemorySizeBoundary(HalAllocateCommonBuffer)
->XhcdAllocPhyMemoryPageBoundary(HalAllocateCommonBuffer)
->XhcdCreateTransferManagement
->XhcdCreatePortManagement
->XhcdCreateCmdProcess
->XhcdInitializeTrbRingParam
->XhcdCreateEventProcess
->XhcdCreateXferCapProcess
->XhcdXferCapThreadStart

->XhcdWatchThreadStart
->BaseThreadCreate
->BaseThreadStart
+BaseThreadStartRoutine
->PsCreateSystemThread

->XhcdTransferThreadStart
->BaseThreadCreate
->BaseThreadStart
+BaseThreadStartRoutine
->PsCreateSystemThread

->XhcStart

->XhcdInitializeController
4x {
->BaseThreadStartRoutine
->ISRWorker2
->DeferredRoutine_1
}


} ;XhcdStartController

->FdoReadPciConfig
->CreateRootHubDevice

->HubCreateUsbDevice
->XhcdSubmitUrb

->HubInitializeUsbDevice
->BaseThreadStartRoutine
->BaseThreadStartRoutine
->BaseThreadStartRoutine
->XhcdSubmitUrb
->XhcdSubmitUrb

->GetDeviceCapabilities
->DispatchPnp
->SomeProc3
->pXhcdUpdateCounter
->WatchThreadStart
->BaseDeviceProcessQueuedRequests
->FdoGetTopologyAddress
->DispatchPnp
} ;FdoStartDevice
->WorkerEvtRelease



DispatchPnp (09 res=103)
DispatchPnp (14 res=103)
DispatchPnp (07 res=103)
->FdoQueryDeviceRelations
->FdoPassDownLevels
->PdoPnp (09)
->PdoQueryCapabilities
->GetDeviceCapabilities
->DispatchPnp (09 res=103)
->PdoPnp (08 PdoQueryInterface notsupport)
->PdoPnp (08 PdoQueryInterface support)

#3449canonkong⇗ @daniel_k
Yes, mouse and keyboard both can work.
#3450daniel_k⇗ @Mov AX, 0xDEAD

Thanks for the info.

In the mean time, I've managed to "re-add" XP support for last Intel compatible AMD driver 1.1.0.276 from Dec 2018.

Too bad the fixes are just related to hub or sleep mode issues (expected, as you've proven that the driver has no issues with PAE on Win7).

 

Page 231

#3451daniel_k⇗ @canonkong

Interesting, will do some research later.
#3452daniel_k⇗ @Mov AX, 0xDEAD

By the way, the device check is simple.

Just change (unicode):

 
PCI\VEN_104C&DEV_8241&*REV_02*


to

 
PCI\*
#3453daniel_k⇗ @Andalu

Hi, let's fix the USB3 working as USB2 issue?

Got some nice ideas.

Did you ever try to install the HCSwitch driver by hacking the INF file?

Rename [HCSwitch_PCIF.NTx86.6.1] to [HCSwitch_PCIF.NTx86.5.1] and install the driver.
#3454Andalu⇗ @daniel_k
sorry for the late of my reply.
Do you mean HCSwitch from intel usb3 1.0.6.245 driver? If so, I got the error "the specified location does not contain information about your hardware"
#3455daniel_k⇗ @Andalu

HCSwitch must be installed for the PCI Bus device under System Devices.
#3456Andalu⇗ @daniel_k
I get the same message for PCI bus (hardware ID: *PNP0A08)
#3457daniel_k⇗ @Andalu

Huh, missed the following:

Replace the line
%STDDEV%=HCSwitch_PCIF,NTx86.6.1,NTx86.6.2
with
%STDDEV%=HCSwitch_PCIF,NTx86.5.1
#3458genieautravail⇗ @XPLives ⇗ @Andalu

Thank you to everyone.
I will try to install the drivers this week and I will let you know the results.
#3459Andalu⇗ @daniel_k
the driver update works correctly but on the needed restart I got the bsod 7B (0xBACC3524, 0xC0000034, 0x00000000, 0x00000000)

Edit: I just saw your updated post.. I'll try soon ;)
#3460Andalu⇗ @daniel_k
the driver update works only if also the line

[HCSwitch_PCIF.NTx86.6.1]
%XHCI.DeviceDesc%=HCSwitch, *PNP0A08

is modified to

[HCSwitch_PCIF.NTx86.5.1]
%XHCI.DeviceDesc%=HCSwitch, *PNP0A08

but on the restart I got the bsod 7B as before
#3461daniel_k⇗ @Andalu

Thought it would work right away, sorry.

Can you recover from this?

If not, do the following:

- Boot from another Windows, open Regedit.

-  Select HKEY_LOCAL_MACHINE

- File menu -> Load Hive.

- Browse your XP drive and open \WINDOWS\system32\config\System

- Key name may be whatever, such as XP

- Open HKEY_LOCAL_MACHINE\XP\ControlSet001\Enum tree and search for iusb3hcs

- Delete the LowerFilters

- Select the XP tree, open File menu -> Unload Hive

- Boot XP as usual
#3462daniel_k⇗ @Mov AX, 0xDEAD

Trying really hard to find, on VM where it triggers error code 29.

On VM the driver loads fine, the "best" I could do was to get error 24 on hub.
#3463Andalu⇗ @daniel_k
No problem, I have to thank you for your time ;)
recovering an xp image is faster with a bootable media
#3464gordo999
Zitat von ⇗ XPLives im Beitrag ¶ #3440
Forget the SP4, just use a clean XP SP0, 1, 2, or 3 or get XP SP0 and integrate the SP into it using nLite before integrating the SATA AHCI driver.  If you need to add more drivers later I recommend you just don't install or integrate them but just manually install them "AFTER" XP is fully booted to the desktop and installed.  You are also better off imaging the clean installation before adding any drivers.  The only driver that should be integrated is just the SATA AHCI from Intel and that's it.


@XPLives....thanks again for detailed explanation. I am currently working on my old XP installation without SP4. I have made progress meantime using Dietmar's storahci driver setup. I am now able to boot to the XP boot screen and beyond. However, I am stuck at a nag screen for activation which appears before the logon screen.

If I press 'no' to not activate, the nag disappears for 20 seconds then re-appears. If I hit 'yes' same thing. So it's stuck in a loop of some kind.

If I boot into safe mode, everything is cool till the graphics appear. That is, I get a blank screen with the 'safe mode' boxes in each corner and it is stable but when the graphics appear for the desktop the screen starts blinking and stays that way. That suggests to me a graphics driver problem.

It's the same in the cmd prompt version of safe mode. It tries to load graphics.

With regard to the activation screen I have encountered a similar problem related to the Internet Explorer version. Windows needs IE for the activation process and if the IE version is wrong it stalls. As I recall the solution, you had to update the version from 6 to 8 but now I am reading you have to move it back to 6.

Any ideas on how to replace IE on an offline system?

Zitat von ⇗ XPLives im Beitrag ¶ #3440
 Once you add all that other crap into the registry it's a pain to remove it which is why a clean image after you've installed it without the bloat you can restore again later if you corrupt it.

Then you can start adding the graphics drivers, sound, network, et cetera.

I agree totally. However, my registry is loaded with crap I need to remove. I should likely have done it while XP was running on an older system but now I have changed partitions and removed some with apps that XP needs to remove them.

Not to worry, I like this sort of challenge.

Zitat von ⇗ XPLives im Beitrag ¶ #3440
Finally install all your software applications.  Image your OS partition again.

Well...that's the problem. My layout is so complex that re-installing all the apps would be a major headache. That's why I'm trying to revive the current installation.


Zitat von ⇗ XPLives im Beitrag ¶ #3440
I could then construct one specific to your motherboard.......And make sure you at least got a PS/2 keyboard hooked up to your PS/2 keyboard - NO USB ones.

I'll keep that in mind, thanks, I do have a P/S2 keyboard and mouse hooked up.
#3465XPLives⇗ @gordo999
Zitat von ⇗ gordo999 im Beitrag ¶ #3464
Zitat von ⇗ XPLives im Beitrag ¶ #3440
Forget the SP4, just use a clean XP SP0, 1, 2, or 3 or get XP SP0 and integrate the SP into it using nLite before integrating the SATA AHCI driver.  If you need to add more drivers later I recommend you just don't install or integrate them but just manually install them "AFTER" XP is fully booted to the desktop and installed.  You are also better off imaging the clean installation before adding any drivers.  The only driver that should be integrated is just the SATA AHCI from Intel and that's it.


@XPLives....thanks again for detailed explanation. I am currently working on my old XP installation without SP4. I have made progress meantime using Dietmar's storahci driver setup. I am now able to boot to the XP boot screen and beyond. However, I am stuck at a nag screen for activation which appears before the logon screen.

If I press 'no' to not activate, the nag disappears for 20 seconds then re-appears. If I hit 'yes' same thing. So it's stuck in a loop of some kind.

If I boot into safe mode, everything is cool till the graphics appear. That is, I get a blank screen with the 'safe mode' boxes in each corner and it is stable but when the graphics appear for the desktop the screen starts blinking and stays that way. That suggests to me a graphics driver problem.

It's the same in the cmd prompt version of safe mode. It tries to load graphics.

With regard to the activation screen I have encountered a similar problem related to the Internet Explorer version. Windows needs IE for the activation process and if the IE version is wrong it stalls. As I recall the solution, you had to update the version from 6 to 8 but now I am reading you have to move it back to 6.

Any ideas on how to replace IE on an offline system?

Zitat von ⇗ XPLives im Beitrag ¶ #3440
 Once you add all that other crap into the registry it's a pain to remove it which is why a clean image after you've installed it without the bloat you can restore again later if you corrupt it.

Then you can start adding the graphics drivers, sound, network, et cetera.

I agree totally. However, my registry is loaded with crap I need to remove. I should likely have done it while XP was running on an older system but now I have changed partitions and removed some with apps that XP needs to remove them.

Not to worry, I like this sort of challenge.

Zitat von ⇗ XPLives im Beitrag ¶ #3440
Finally install all your software applications.  Image your OS partition again.

Well...that's the problem. My layout is so complex that re-installing all the apps would be a major headache. That's why I'm trying to revive the current installation.


Zitat von ⇗ XPLives im Beitrag ¶ #3440
I could then construct one specific to your motherboard.......And make sure you at least got a PS/2 keyboard hooked up to your PS/2 keyboard - NO USB ones.

I'll keep that in mind, thanks, I do have a P/S2 keyboard and mouse hooked up.



   

Okay first you got to do some simple things on your Coffee Lake system and get this info for me.

Take another existing Windows Vista, 7, 8.X, or 10 OS install on another drive and hook it to your Coffee Lake system and boot up.  Go to Device Manager.

Find your Intel(R) SATA Controller device.

Copy and paste all the Hardware ID fields for:

Device Instance ID:

Hardware IDs:

Compatible IDs:

Matching Device ID:

Get this info and I'll simplify that installer.


I recommend you drop using that SP4 and STORAHCI method for now and you are trying to mix it with an old installation which is worse.  If you want to just install XP you can later spend the rest of your time experimenting with other methods later and add it to a new partition on your drive.

I don't know what computer system your XP (old) installation was you are migrating came from.  But there are some activation checks that detect any hardware changes and if you are moving from say a Pentium 4 to Coffee Lake it will trigger it and notice your hardware is completely different.  You're going to have to do a fresh installation (no choice).  The other issue is if you are using a genuine copy or not.  If you are and only activated it once you might be able to activate it again after a fresh installation on your Coffee Lake using the telephone number method.  But if you do this you'll probably want to clone the old XP copy first and your old copy you might have to keep offline from then on if XP has some sort of deactivation feature to nullify it when caught online?

There might be a way to transfer the activation over to the new system but I never researched heavy into it and it was easier to use a Windows version that didn't require it.

I don't know the exact details of your current drive size and how you partitioned it.  What's the partition layout on the drive and how much space is the old XP partition using of the space?  You might have to use a second drive and repartition it properly to have multiple XP installations on it and transfer your old partition over to it.

But if your old XP installation is on D:
make a new partition E: - for this clean XP installation method that I'm trying to help you with.

Make another partition F: - when you are ready to mess around with the STORAHCI install method with SP4 once you've completed my version which should work.

Partition Sizes - 32GB would be enough for a few years.  If you don't have that much room 8GB would be enough for the install and get some programs on.

I do recommend a larger partition 64GB or larger NTFS for redirecting your Programs Files location which will be the last partition on the drive.  You don't want to install all your Programs to your OS partition and make it extremely huge and run out of space.

I still use FAT32 for my OS partitions since I can modify it without booting into another Windows.

So if you want to make it harder for yourself you can keep on the path till you tire out.  Also if you want to just test installing XP the easy way then you could still test it out before needing to activate it.  I can't remember how long maybe 3 months before the nag screen pops up on a new installation.  But in the end you'll probably want to get XP installed on your Coffee Lake and play around before messing with other methods which just complicates things.


Internet Explorer 6-8?  I say don't do it for now and not worth your time.  It's vulnerable to being hijacked on the internet very easily as soon as you go to some unknown shady site.  Then you'll have to go back to a clean image again.  Lots of headaches once infected.  You could boot into another Windows and then manually delete the files you isolated as trojans/malware but still a complete headache when you can just restore an earlier image in minutes so no point.  If you're just viewing web pages offline FireFox can be put in offline mode.

Use FireFox v52.X - Best thing to still get on the Internet today and Youtube videos still work from 1080P to 4K.  Though they are removing Flash videos as a priority if you wait long enough and the Video you want to watch is getting lots of views, eventually Youtube converts it to flash so you can watch it.  By default Youtube seems to only release videos in HTML5 now first.  I haven't spent the time to adapt Firefox to view HTML5.  I saw some sites that show you how to do this.  Guess I'm lazy on that until they completely kill of Flash.  Hopefully this won't happen as we all want to watch "Me At The Zoo" every now and then.

⇗ https://www.youtube.com/watch?v=jNQXAC9IVRw

 

Page 232

#3466LoneCrusader
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #3442

Wow, rare find !

this version 1.16.3 is not last, but PDB make it very valuable



Zitat von ⇗ daniel_k im Beitrag ¶ #3445
@LoneCrusader

Thanks you very much! Nice to see you here!

I've seen a couple of driver with "leaked" PDBs sometimes, but never really pay attention to them.


Glad I could be of some help. Hopefully having the PDB files will aid in disassembly...

I went digging for USB3 driver PDB files a year or so ago, rloew and I were attempting to find one that could be loaded under 98SE. He satisfied the missing WDM functions with his WDMEX.VXD driver, but in the end we hit a weird roadblock where the driver appeared to be exiting before crashing. There were a couple of WDM kernel calls that were used in a manner incompatible with 98SE, but he said the driver was exiting before this code was reached (rloew thought he could write a workaround for that, but we never got there, and now that he's gone it's probably lost.) All this is over my head though, lol, I could barely manage to operate the debugger and report what I found to him.

At any rate, I hope to find the time soon to do some experimenting with XP and what you guys are doing. I have an Intel X299 system that I've not even tried to boot the first OS on yet.
#3467gordo999
Zitat von ⇗ XPLives im Beitrag ¶ #3465
Okay first you got to do some simple things on your Coffee Lake system and get this info for me.


@XPLives...thanks again for the reply and the detailed info. I will get the info for you off my SATA controller but there is something I need you to understand.

I am no longer having 0xA5 (related to ACPI) and 0x7b (related to AHCI). I am getting no errors whatsoever, my old XP disk boots to almost the logon screen but it is intercepted by a Windows Activation nag screen.

The title of the nag screen is Windows Product Activation. It read in part "A problem is preventing Windows from accurately checking the license for this computer..."

Everything seems to be working fine with regard to ACPI and the SATA controller, otherwise Windows would not get past the boot screen.

I mentioned Internet Explorer, not because I use it, I don't. I use Firefox. I mentioned it because in the past, when I was trying to load an OS onto a newer mobo, the installation stalled in the same place, at the activation process. It turned out to be Internet Explorer causing the problem.

The existing OS only had IE version 6 and it would not work with the repair install and the new mobo. So, I had to get in there and update it to IE 8. Then the activation part of the install completed and gave me an activation screen.

Right now, the activation screen won't appear because something is stopping the nag screen from completing its routine. It's likely related to Internet Explorer not working for the activation process but it could be any kind of license issue.

I can't get into safe mode. The activation process can cause that. If it has disqualified you Windows won't boot into safe mode.

My license is valid. I own the disk and I bought it years ago.
#3468XPLives
Zitat von ⇗ LoneCrusader im Beitrag ¶ #3466
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #3442

Wow, rare find !

this version 1.16.3 is not last, but PDB make it very valuable



Zitat von ⇗ daniel_k im Beitrag ¶ #3445
@LoneCrusader

Thanks you very much! Nice to see you here!

I've seen a couple of driver with "leaked" PDBs sometimes, but never really pay attention to them.


Glad I could be of some help. Hopefully having the PDB files will aid in disassembly...

I went digging for USB3 driver PDB files a year or so ago, rloew and I were attempting to find one that could be loaded under 98SE. He satisfied the missing WDM functions with his WDMEX.VXD driver, but in the end we hit a weird roadblock where the driver appeared to be exiting before crashing. There were a couple of WDM kernel calls that were used in a manner incompatible with 98SE, but he said the driver was exiting before this code was reached (rloew thought he could write a workaround for that, but we never got there, and now that he's gone it's probably lost.) All this is over my head though, lol, I could barely manage to operate the debugger and report what I found to him.

At any rate, I hope to find the time soon to do some experimenting with XP and what you guys are doing. I have an Intel X299 system that I've not even tried to boot the first OS on yet.

   
Got it.
#3469Andalu
Zitat von ⇗ XPLives im Beitrag ¶ #3441

Never tested this but saw this iCafe driver a while back.  It might work better on the newer AMD R9 series than the v14.4.  So far no one willing to test their R9 to see if it works.


I'm late for the reply to your post but still in time to thank you for your detailed guides about installing XP on modern systems.
I currently do not have the possibility to try the i-cafe drivers on a R9 270 card. I'm using them on the older R7 250 with no issue but I am not a gamer :)
#3470Andalu⇗ @diderius6
I'm sorry to bothering you, but I need your help :) I've read that you're probably the first one who has successfully booted XP from a nvme disk. I would like to do the same on my asrock B250M-Pro4 board which natively supports the NVMe SSD as boot disk. The disk was extracted from a Samsung X5 Portable SSD, PN: MZBLB500HAJQ - controller S4LR020.
I used Windows 10 to initialise the disk using the MBR partition style. Following your advice, I tried to install XP from a boot cd with integrated OFA nvme 1.3 and storport.sys 5.2.3790.4173 via nlite and after txt setup completed without problems, I copied by hand storport.sys to windows\system32\drivers but on restart I got the message: "Windows could not start because of a computer disk hardware configuration problem. Could not read from the selected boot disk".

In the bios the NVMe SSD disk is not listed as boot device, it appears only in the 'storage configuration' section.

Also all the software I tried to cloning from another XP disk or to recovering an XP image don't allow these operations, the NVMe SSD is greyed out or does not listed. Only when booting from another XP disk I can successfully install the nvme drivers and the disk is correctly recognized in device manager and explorer.

Is there any possibility to solve?
#3471XPLives⇗ @gordo999
Zitat von ⇗ gordo999 im Beitrag ¶ #3467
Zitat von ⇗ XPLives im Beitrag ¶ #3465
Okay first you got to do some simple things on your Coffee Lake system and get this info for me.


@XPLives...thanks again for the reply and the detailed info. I will get the info for you off my SATA controller but there is something I need you to understand.

I am no longer having 0xA5 (related to ACPI) and 0x7b (related to AHCI). I am getting no errors whatsoever, my old XP disk boots to almost the logon screen but it is intercepted by a Windows Activation nag screen.

The title of the nag screen is Windows Product Activation. It read in part "A problem is preventing Windows from accurately checking the license for this computer..."

Everything seems to be working fine with regard to ACPI and the SATA controller, otherwise Windows would not get past the boot screen.

I mentioned Internet Explorer, not because I use it, I don't. I use Firefox. I mentioned it because in the past, when I was trying to load an OS onto a newer mobo, the installation stalled in the same place, at the activation process. It turned out to be Internet Explorer causing the problem.

The existing OS only had IE version 6 and it would not work with the repair install and the new mobo. So, I had to get in there and update it to IE 8. Then the activation part of the install completed and gave me an activation screen.

Right now, the activation screen won't appear because something is stopping the nag screen from completing its routine. It's likely related to Internet Explorer not working for the activation process but it could be any kind of license issue.

I can't get into safe mode. The activation process can cause that. If it has disqualified you Windows won't boot into safe mode.

My license is valid. I own the disk and I bought it years ago.

   


I understood your problem and you're still not willing to give up on your old installation hoping to save yourself some time reinstalling everything.  Depending on what your goals are when using XP on the Coffee Lake. If it's meant for gaming then I'd go with a fresh install using my K.I.S.S. method and see if this activation snafu is still happening and if it is then you might want to consider Server 2003 if you're just using it for browsing, word processing, and other non gaming applications.  Games probably will work for the most part with most of the titles I've tested but I haven't gone and tested every single title to claim 100% compatibility.  With Server 2003 you bypass the entire activation BS you're encountering and can use more of the RAM, add GPT support, and eliminate most of your headaches trying to use IE to activate it.  I do remember you could bypass online activation and use a phone number to call method instead as one of the options.  You have to decide how valuable your time is and whether or not you want to continue grunting along weeks from now out of stubbornness.  It's a shame they implanted that activation BS into XP which is why Windows 2000 was such a beauty to install and why many stuck to it until XP got too popular to ignore upgrading due to dependencies.  It's possible Microsoft officially abandoned IE6.0-8.0 support entirely on their site so you probably can't activate it if you could get those browsers online if its dependent on IE.

If you use your old XP copy back on the original system does it no longer have the activation nag or does it still appear?

If you reinstall XP onto the Coffee Lake.  I believe there's a token file that's saved once your copy is activated.  If you copy this file over to the newly installed Coffee Lake system it might appear activated.  I only read about this awhile back somewhere but I have no idea if this actually worked and couldn't explain the actual procedure.  But that's just another possibility I could come up with you "could" try to prolong the suffering some more or it could work?
#3472diderius6⇗ @Andalu
When the nvme disk is recogniced in XP on your motherboard,
you have good chances for nvme boot of XP.
Let your XP recognice the nvme disk.
This XP you copy with AOMEI Partition Assistant Standard Edition 7.0
to your nvme disk.
If you cant copy this XP via AOMEI it means, that your Bios has no legacy nvme support
and until now I do not find a solution for this
Dietmar

EDIT: I just look in Bios B25MP2.50 for your board.
Your Bios has legacy nvme support, so nvme boot of XP should work.
#3473Andalu⇗ @diderius6
You are correct, I forgot to mention that my board boots with another SSD NVME M.2 drive (sandisk SD8SN8U-256G-1012).
I already used Aomei Partition Assistant Pro 8.2 with no success, the samsung NVMe SSD is greyed out. I don't understant why the firts step of XP installation (text mode) ends normally with the classic reboot but the next step with GUI is not allowed.
#3474diderius6⇗ @Andalu

May be, that storport.sys isnt any longer in
windows\system32\drivers
Just copy it there again.

Dietmar

PS: You need to clearify situation: Best is to let recognice XP the nvme disk first, where you want to copy your working XP from harddisk. After Aomei copied this XP from harddisk to your nvme device, disconnect all, only the nvme drive stays connected.
#3475XPLives⇗ @Andalu
Zitat von ⇗ Andalu im Beitrag ¶ #3470
@diderius6
I'm sorry to bothering you, but I need your help :) I've read that you're probably the first one who has successfully booted XP from a nvme disk. I would like to do the same on my asrock B250M-Pro4 board which natively supports the NVMe SSD as boot disk. The disk was extracted from a Samsung X5 Portable SSD, PN: MZBLB500HAJQ - controller S4LR020.
I used Windows 10 to initialise the disk using the MBR partition style. Following your advice, I tried to install XP from a boot cd with integrated OFA nvme 1.3 and storport.sys 5.2.3790.4173 via nlite and after txt setup completed without problems, I copied by hand storport.sys to windows\system32\drivers but on restart I got the message: "Windows could not start because of a computer disk hardware configuration problem. Could not read from the selected boot disk".

In the bios the NVMe SSD disk is not listed as boot device, it appears only in the 'storage configuration' section.

Also all the software I tried to cloning from another XP disk or to recovering an XP image don't allow these operations, the NVMe SSD is greyed out or does not listed. Only when booting from another XP disk I can successfully install the nvme drivers and the disk is correctly recognized in device manager and explorer.

Is there any possibility to solve?

   

There might be an easier way to get this to work.  Maybe I can test this on Coffee Lake which should mean it works on your system.

First which link to driver for OFA nvme 1.3?

And which link to driver storport.sys 5.2.3790.4173?


Aside from trying diderius6 suggestion maybe you can try this also.

Use 98SE DOS boot and FDISK.

Partition C: for FAT16 for 98SE DOS boot
Partition D: for FAT32 for XP

Install XP to D: with Intel SATA AHCI driver only not mixing with STORAHCI or any other drivers to SSD Drive.

Inside XP OS install the NVME driver manually using Device Manager.

Do a clone of your SSD Drive to NVME to get the C: and D: partitions identical.

Remove your original XP SSD and any other USB storage devices connected just so no other Boot Device will be detected accidentally to boot from in BIOS.

In the BIOS select NVME as the Primary Boot Device if not set.

Reboot and it should attempt to boot into XP OS on your NVME.
#3476Andalu⇗ @diderius6
In all attempts I copied by hand storport.sys into c:\windows\system32\drivers folder after the 'txt setup' and before the reboot for the 'gui' step. I always verified that all the OFA files were present, but on the restart I got the usual message: "Windows could not start because of a computer disk hardware configuration problem....   etc").

I followed your advice on Aomei but in all cases (disk copy, partition copy and migrate OS to SSD) I got the message:
"the bytes per sector on the source and the destination disk are not equal, so the program is unable to copy".


⇗ @XPLives
the link is from diderius6:
¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (14)
I also know the links on sourceforge.net and reboot.pro

I'll try your method soon ;)
#3477daniel_k⇗ @Andalu

Make your life easier by properly integrating storport.sys:

Just add this to TXTSETUP.SIF, under storprop.dll

 
storport.sys = 1,,,,,,3_,4,0,0,,1,4



This must also be present in DOSNET.INF, in section [FloppyFiles.x] (where x can be 1, 2 or 3) and in section [Files].

 
d1,storport.sys



No more files need to be edited.

#3478FireKillerGRHello guys,

with all the posts and files flying around I got a bit confused.
Can I make an older XP image I got to be compatible with Z390?
At the moment I get that bios isnt ACPI compliant.

Will this be fixed if I replace the ACPI.sys in the system32/drivers/ folder?

Or do I have to make a clean installation of the OS?
If thats the case what should the procedure be to get it to work?
a) install ahci drivers -> b) install without acpi (mps?) and then replace the acpi.sys to make it work?

Thanks in advance
#3479skullteriaWell, i can edit Hal from Windows XP x64 with my own Reset display, maybe based on Reactos Code. Reactos use a Fast486 lib to emulate BIOS. It can solve the problem with winload.
#3480diderius6⇗ @Andalu

"the bytes per sector on the source and the destination disk are not equal, so the program is unable to copy"

means, that the disk structure on your original XP harddisk and on your nvme disk are different.
This you can solve with Gparted on CD
Dietmar

 

Page 233

#3481diderius6⇗ @FireKillerGR
Yes, this works, if have done hundreds of times.
Most easy is to use STORAHCI and modded acpi.sys
Dietmar
#3482cedar⇗ @skullteria

Big thanks for the Storahci driver which made XP 32 work on my AMD Prime B350.

At the moment,
anything with audio (Winamp, Kmplayer, Potplayer will reboot my XP64 or 2003
64 bit within a minute or two, probably ACPI 64 or HdAudiobus.sys related.

But I can run older ffmpeg64  version 3.1.2 to backup files in x265 formats.
But newer ffmpeg 64 versions need Numanode function to run x265.

I like to test some of the One Core API capabilities.

Can your One Core API files solves this dependency? If so,
Which files are needed to be replaced  in XP64?.
#3483antomeguys I'm trying to install xp32 on asus xi gene z390 and 9900k.  I took the original cd of xp sp3 copied the content on the pc, opened acpi5048_intel_amd_final.rar (acpi.sys) and created with cabmaker 1.4 the acpi.sy_ file and replaced in the 386 folder. Created the iso with nlite integrating the drivers sata of fernando  .  The installation crashes returning an error iostore.sys is corrupt.  Where am I wrong?
#3484diderius6⇗ @antome

Take the STORAHCI driver
Dietmar
#3485daniel_k⇗ @Mov AX, 0xDEAD

Did some tests here, maybe tihub3.sys has some issues when used with Intel XHCI?

Hacked the tixhci.sys driver to use ASMedia-like hub IDs.

Then let Windows install the ASMedia hub driver, it is loaded but crashes...
#3486antome⇗ @diderius6

where do i find it, is a modified version to work with this modified acpi.sys? thanks
#3487diderius6⇗ @antome
¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (211)
Dietmar
#3488gordo999
Zitat von ⇗ XPLives im Beitrag ¶ #3471
I understood your problem and you're still not willing to give up on your old installation hoping to save yourself some time reinstalling everything.  Depending on what your goals are when using XP on the Coffee Lake. If it's meant for gaming

⇗ @XPLives
⇗ @diderius6

....it's far more complicated than that. If it was just gaming, I already have a working copy of XP with the SP4 unofficial update just waiting to be activated. It is a fresh install.

If you know anything about debuggers that will only run on an x86 XP machine you'll understand what I'm dealing with. That, and the associated apps used in x86 debugging. It was a nightmare setting them up in the first place on a running XP system on a mobo that would run XP natively.

I am getting closer all the time. Last night I was able to use the working version of XP to create a Recovery Console choice in my boot menu that actually starts, It stops with an A5 error, however, and I need to somehow include the acpi.sys of Dietmar. The acpi.sys in the c:\cmdcons directory is compressed and I am going to test today to see if I can replace it with Dietmar's ACPI.sys version.

The fact that the unofficial SP4 upgrade can create an XP install disk that will create a working copy of XP on an 8th gen mobo means there is something in the drivers inserted during the slipstream that allow XP to boot to the desktop.

Obviously, the acpi.sys they use does not work in the Repair Console files in C:\comdcons but it allows me to boot without an 0xA5 bsod.

Go figure.
#3489cedar⇗ @diderius6

I tried the outer space acpi.sys yesterday on Ivy system. It worked!
both in Ivy and Ryzen system. By the same logic, 64 bit outer space
acpi version perhaps can solved some stability issues in XP64 too.

I still have to boot on average 3 times to get into XP64 SP2, SP1 or 2003.
If Realtek driver is disabled, Kmplayer can run for hours without crashing.

When enabled, computer will reboot with any applications which use sounds,
sometimes with irq not less than error message.

I can also encode x264 or x265 for hours without problems. But loading
Coretemp while encoding seem to crash XP64 too.
#3490gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #3487
#3159Dietmar


⇗ @diderius6

Dietmar...I wonder if I could apply that fix, or just your straight modded acpi.sys to the C:\cmdcons directory to get a Repair Console selection in the boot menu?

I created a new cmdcons directory using a version of XP SP3 with the unofficial XP upgrade and it booted to the desktop. I inserted the slipstreamed XP SP3/SP4 disk into the CD drive and in a command console in the i386 directory performed the command winnt32.exe /cmdcons. It created a new cmdcons directory in C:\ that actually works. However, I get the old 0xA5 ACPI error as the Windows screen starts.

I am going to replace the existing compressed acpi.sy_ with your version to see if it helps. There is also a small registry hive in cmdcons under an extension .HIV. It can be loaded in a W7 registry using the Load Hive function under another name.

Please note that the c:\cmdcons is a hidden directory unless you have turned off the 'hide system files' feature within XP. All the files are read only but the Attrib -r makes them writable.
#3491gordo999
Zitat von ⇗ daniel_k im Beitrag ¶ #3485
Hacked the tixhci.sys driver to use ASMedia-like hub IDs. the driver is loaded, but crashes...

⇗ @daniel_k

Just curious, are you using windbg or just a straight code read in IDA? I started tracing the full USB system a couple of month ago using windbg remotely in kernel mode but my skills on windbg are seriously noobie. I got dragged off on another project and I'm only getting back to it now.

Part of the reason I want to get my working XP (existing on disk) install going is so I can debug live using a far better (IMHO) debugger than windbg. I am kidding in part because windbg allows me remotely to stop an OS while it's booting and follow the boot process.

I have the far better debugger going in a VM but that does not help when tracing at the hardware level. Too much interference from the VM software. Since my version of XP is 32-bit, I should be able to use my x86 debugger in that XP environment to trace USB driver action.
#3492Andalu⇗ @XPLives
I followed your advice and I tried to clone the NVME disk with Aomei but I got again the message: "the bytes per sector on the source and the destination disk are not equal, so the program is unable to copy". And I don't know how to solve this issue.


⇗ @daniel_k
I changed the two files and this time the storport.sys is correctly copied in the system32\drivers and it is never missed at end of the txt installation setup. But at reboot the message "Windows could not start because of a computer disk hardware configuration problem. Could not read from the selected boot disk" appears again.
Only a bit note: in DOSNET.INF, in the section [FloppyFiles.x] I have the 'x' and no number.


⇗ @diderius6
I don't know how to modify the disk structure with Gparted. I will try to find some guide.
#3493cedar⇗ @gordo999

Can you build a new fresh working XP , then merge "only" the new system hive to
your old working XP?. Afterward,  use the old "Documents and Settings" too.

I cannot guarantee it will work every time. I did that sometime, if XP conditions are very similar,
,and same disk drive,it may work.

Meanwhile use Ycopy to clone the old XP folders just for safe keeping.
#3494gordo999
Zitat von ⇗ Andalu im Beitrag ¶ #3492
... got again the message: "the bytes per sector on the source and the destination disk are not equal

@Andalu....this could provide a headache for you depending on the situation. Does your NVRAM module state the number of bytes per sector or whether it uses a 512 bytes per sector emulation?

The problem is likely that your current system uses a standard 512 bytes/sector and the target drive uses a newer technology wherein the formatting is written in 4096 bytes/sector chunks.

There are two types of formatting: real physical formatting and logical formatting. If a disk is written from the factory with 512 bytes/sector, a file system like NTFS can create a logical format on top of that which resides in the OS and not on the disk. That's why when you convert from a FAT32 system to NTFS it gives you the option to write the logical partition at 512, 4096, etc. bytes per sector.

Easeus claims they have an ability to clone disks between different formatted surfaces but the feature is in their paid version only. Even at that I'd be wary. If a disk is written with the new Advanced format, it seems the sectors are hard-written at 4096 bytes per sector, in which case a disk written at 512 bytes/sector may not be clonable.

Don't quote me on this, it just FYI.
#3495gordo999
Zitat von ⇗ cedar im Beitrag ¶ #3493
Can you build a new fresh working XP , then merge "only" the new system hive to your old working XP?. Afterward,  use the old "Documents and Settings" too.
@cedar...thanks for suggestion. I have already merged pertinent parts of the new system hive related to acpi and sata controllers. I don't know of any utility that will automate the process.

My old system hive is a veritable junk yard of old drivers, etc. I have hardware listed in there, like a Plextor CD/DVD drive that gave up the ghost at least 10 years ago.
So, yes, I will try your suggestion if push comes to shove. Since the working copy was used to make the Recovery Console and it boots cleanly to the desktop, I was hoping it would include an acpi system that worked in the Recovery Console.

We would not expect thing to work out that easily, would we?

 

Page 234

#3496cedar⇗ @gordo999
There are 2 lines of XP acpi.sys now. Also try the one from outer space
version,thanks to diderius6. This one can run on older system too.
It saves time if you need to move the disk between older and newer
computer to trouble shootings.
#3497gordo999
Zitat von ⇗ cedar im Beitrag ¶ #3496
There are 2 lines of XP acpi.sys now. Also try the one from outer space
version,thanks to diderius6.

⇗ @cedar

OK..thanks. The outer space version from Dietmar (diderius6) got me going past the 0xA5 bsod on my older XP OS.

I'll look for the other one as well. I began reading through this thread from the beginning but I have only reached page 10. Still have a lot of stuff to read about.
#3498XPLives⇗ @antome
Zitat von ⇗ antome im Beitrag ¶ #3483
guys I'm trying to install xp32 on asus xi gene z390 and 9900k.  I took the original cd of xp sp3 copied the content on the pc, opened acpi5048_intel_amd_final.rar (acpi.sys) and created with cabmaker 1.4 the acpi.sy_ file and replaced in the 386 folder. Created the iso with nlite integrating the drivers sata of fernando  .  The installation crashes returning an error iostore.sys is corrupt.  Where am I wrong?

   

IaStor.sys is corrupt error is due to incorrect Hardware ID selected for the Intel SATA AHCI device.

Do this for me and I will try to combine this with gordo999's, and lonecrusader's X299, and yours for nlite SATA driver integration.

Take another existing Windows Vista, 7, 8.X, or 10 OS install on another drive and hook it to your X299 system and boot up. Go to Device Manager.

Find your Intel(R) SATA Controller device.

Copy and paste all the Hardware ID fields for:

Device Instance ID:

Hardware IDs:

Compatible IDs:

Matching Device ID:
#3499XPLives⇗ @daniel_k

Zitat von ⇗ daniel_k im Beitrag ¶ #3485
@Mov AX, 0xDEAD

Did some tests here, maybe tihub3.sys has some issues when used with Intel XHCI?

Hacked the tixhci.sys driver to use ASMedia-like hub IDs. the driver is loaded, but crashes...


Don't give up.  Keep plowing that driver till it works.

Both the Asmedia and Intel xHCI probably will have problems due to ACPI even with your modded ACPI.SYS.

Have you tried using NO ACPI MPS Multiprocessor install method on unmodded BIOS?  I believe it will work properly if you try this.
#3500XPLives⇗ @gordo999
Zitat von ⇗ gordo999 im Beitrag ¶ #3488
Zitat von ⇗ XPLives im Beitrag ¶ #3471
I understood your problem and you're still not willing to give up on your old installation hoping to save yourself some time reinstalling everything.  Depending on what your goals are when using XP on the Coffee Lake. If it's meant for gaming

@XPLives
@diderius6

....it's far more complicated than that. If it was just gaming, I already have a working copy of XP with the SP4 unofficial update just waiting to be activated. It is a fresh install.

If you know anything about debuggers that will only run on an x86 XP machine you'll understand what I'm dealing with. That, and the associated apps used in x86 debugging. It was a nightmare setting them up in the first place on a running XP system on a mobo that would run XP natively.

I am getting closer all the time. Last night I was able to use the working version of XP to create a Recovery Console choice in my boot menu that actually starts, It stops with an A5 error, however, and I need to somehow include the acpi.sys of Dietmar. The acpi.sys in the c:\cmdcons directory is compressed and I am going to test today to see if I can replace it with Dietmar's ACPI.sys version.

The fact that the unofficial SP4 upgrade can create an XP install disk that will create a working copy of XP on an 8th gen mobo means there is something in the drivers inserted during the slipstream that allow XP to boot to the desktop.

Obviously, the acpi.sys they use does not work in the Repair Console files in C:\comdcons but it allows me to boot without an 0xA5 bsod.

Go figure.


   

Try the other ACPI mod that I tested working from Daniel_K.

I placed it at the link below so it is easier to find on the first page.

⇗ Modded ACPI Drivers Depot 2000 XP 2003 2009
DK_ACPI XP 2003 32-Bit and 64-Bit Z370 Z390 Coffee Lake MOD 10-10-2019.ZIP

If that still doesn't work... Here's the only method that will probably guarantee success.

Get those Hardware IDs info I asked for so I can create the driver for nlite.

We will use a clean XP SP3 ISO or at least XP SP0 or SP1 if using large capacity drives > 128GB.

You will have to "NOT" use any modded ACPI.sys nor STORAHCI driver for this test.

You will not use any modded USB drivers for this test.

You will have to use the F7 "NO ACPI" MPS Multiprocessor method to install XP OS fresh.

Have a USB 2.0 PCIe card installed.

Final suggestion when even this does not work.
If your programs are having issues and it still doesn't work in this NO ACPI MPS mode then I think you will have to go back to Ivy Bridge Z77 or Broadwell Z97 if you want full compatibility and less headaches.  X99 might also work but haven't had the opportunity yet to test compatibility.
#3501XPLives⇗ @cedar

Zitat von ⇗ cedar im Beitrag ¶ #3489
@diderius6

I tried the outer space acpi.sys yesterday on Ivy system. It worked!
both in Ivy and Ryzen system. By the same logic, 64 bit outer space
acpi version perhaps can solved some stability issues in XP64 too.

I still have to boot on average 3 times to get into XP64 SP2, SP1 or 2003.
If Realtek driver is disabled, Kmplayer can run for hours without crashing.

When enabled, computer will reboot with any applications which use sounds,
sometimes with irq not less than error message.

I can also encode x264 or x265 for hours without problems. But loading
Coretemp while encoding seem to crash XP64 too.


Ivy Bridge system should work without outerspace acpi.sys.  Better to use built in one from Microsoft on Ivy Bridge since BIOS is ACPI compliant.

For Ryzen modded acpi.sys is needed because missing MPS Table will result in single core only installation as NO ACPI Standard PC.

Also funny things can happen on modded ACPI.sys I tested on "innerspace" diderius6 acpi.sys.  System seemed very sluggish even when increasing Clock Speed and Cores made not much difference.  Later I will have to retest as this could have been due to faulty equipment as I believe part of the issue was possibly my SATA data cables were defective after later troubleshooting using the same cables on Intel motherboard I noticed a few weeks ago taken from the AMD AM4 MB test system the same sluggish defective behavior or drive not detected during boot process.   So it's possible the older "innerspace" driver could be good when using "good" SATA cables.

But the graphics card still showed up in Device Manager for AMD AM4 which was good during that old experiment.  But the same Did6 ACPI on Intel systems Z370 the graphics card and onboard graphics was missing in Device Manager until Daniel_K's acpi.sys for 300 series it showed for the first time on ACPI but still issues with games not working properly.

Also what programs are you "requiring" the XP/2003 64-Bit version?  I found that XP and 2003 32-Bit version seems more stable and easier to use even with NO ACPI.
#3502XPLives⇗ @Andalu

Zitat von ⇗ Andalu im Beitrag ¶ #3469
Zitat von ⇗ XPLives im Beitrag ¶ #3441

Never tested this but saw this iCafe driver a while back.  It might work better on the newer AMD R9 series than the v14.4.  So far no one willing to test their R9 to see if it works.


I'm late for the reply to your post but still in time to thank you for your detailed guides about installing XP on modern systems.
I currently do not have the possibility to try the i-cafe drivers on a R9 270 card. I'm using them on the older R7 250 with no issue but I am not a gamer :)


For AMD R5 230 fanless model probably be good enough for your system if not gaming.  Will last forever since no fan to die.  I didn't have the chance to test yet but bought a used one.  It has official XP driver support for non gaming but good for HTPC DVD/Blu-ray playing.  But I find nVidia models GT 710 to be much better although GT 930 would have been the best if released.

Also R9 testing was not directed to you, but anyone who might own it. :)
#3503XPLives⇗ @Andalu

Zitat von ⇗ Andalu im Beitrag ¶ #3492
@XPLives
I followed your advice and I tried to clone the NVME disk with Aomei but I got again the message: "the bytes per sector on the source and the destination disk are not equal, so the program is unable to copy". And I don't know how to solve this issue.


@daniel_k
I changed the two files and this time the storport.sys is correctly copied in the system32\drivers and it is never missed at end of the txt installation setup. But at reboot the message "Windows could not start because of a computer disk hardware configuration problem. Could not read from the selected boot disk" appears again.
Only a bit note: in DOSNET.INF, in the section [FloppyFiles.x] I have the 'x' and no number.


@diderius6
I don't know how to modify the disk structure with Gparted. I will try to find some guide.


Yes you cannot clone the entire drive due to "different" actual total capacity.  Only works with identical drives.

Only way is to image C: and D: partitions to their own files.

Then do the same FDISK to create the same C: and D: partitions on NVME drive in 98SE DOS.

Then restore the C: and D: file images to each respective partition.

Then disconnect all other SATA and USB drives and only NVME drive installed.  Make sure BIOS set for Primary Drive as NVME only.

I found I can make NVME 98SE DOS bootable.  I remember there was some strange issue I can't remember.  Perhaps I couldn't format the C: partition in 98SE DOS so I used my cloned C: image that was 98SE DOS bootable and transferred it to that partition and it was bootable as well on NVME.  First! :)  Funny to see 98SE DOS boot on NVME and 98SE Splash Logo on Coffee Lake.
#3504XPLives⇗ @gordo999

Zitat von ⇗ gordo999 im Beitrag ¶ #3495
Zitat von ⇗ cedar im Beitrag ¶ #3493
Can you build a new fresh working XP , then merge "only" the new system hive to your old working XP?. Afterward,  use the old "Documents and Settings" too.
@cedar...thanks for suggestion. I have already merged pertinent parts of the new system hive related to acpi and sata controllers. I don't know of any utility that will automate the process.
My old system hive is a veritable junk yard of old drivers, etc. I have hardware listed in there, like a Plextor CD/DVD drive that gave up the ghost at least 10 years ago.
So, yes, I will try your suggestion if push comes to shove. Since the working copy was used to make the Recovery Console and it boots cleanly to the desktop, I was hoping it would include an acpi system that worked in the Recovery Console.
We would not expect thing to work out that easily, would we?
One time I had a corrupted XP install that I wanted to keep.  Actually it's this one I am still using.  Similar to you I didn't want to reinstall from scratch but could use an earlier image from before to restore .

However maybe you could transplant your old XP into a fresh Coffee Lake install but it may be tricky and may or may not work.

What was the older system Motherboard Make and Model the XP was installed on?  And were you connected on SATA controller or IDE?

Inside
X:\WINDOWS\system32\config

You can copy the entire contents of the old XP drive from this directory and transplant into the Coffee Lake new install and see what happens.   Make a backup of your X:\WINDOWS\system32\config on your Coffee Lake before doing this so you can restore back and try other tests.

Sometimes this might fail so you might have to only copy specific one branch only and see how it reacts as copying all branches it might crash.

Probably try copying SOFTWARE first to Coffee Lake and boot and see if it looks like your entire Software branch is showing up.

Next you can try copying SYSTEM but no idea if strange behavior can occur or better to not integrate this if Software branch is enough.

If XP reintegrates itself properly then you might have a possible working transfer of the older XP system registries.  Some programs may still need to be "reinstalled" to work properly but some may work just fine.

Again this isn't recommended but if you have time to kill this might be worth investigating.  But regarding your activation issue you probably can't get around this so better to use a new install or Server 2003 so you can transplant your OS in the future to any system without that BS.
#3505daniel_k
Zitat von ⇗ gordo999 im Beitrag ¶ #3491
@daniel_k

Just curious, are you using windbg or just a straight code read in IDA?

For now, straight code read in IDA.

Still need to (learn to) setup kernel debugger.

Last time I used a KD, was SoftICE for Windows 9x.

Usually I use OllyDbg, but that's for user mode.
#3506daniel_k
Zitat von ⇗ Andalu im Beitrag ¶ #3492
@daniel_k
I changed the two files and this time the storport.sys is correctly copied in the system32\drivers and it is never missed at end of the txt installation setup. But at reboot the message "Windows could not start because of a computer disk hardware configuration problem. Could not read from the selected boot disk" appears again.
Only a bit note: in DOSNET.INF, in the section [FloppyFiles.x] I have the 'x' and no number.

Are you using a disc modified with nLite? If so, that's expected as it merges all sections into one.

About the boot error... Are you trying to boot from NVME? If so, Dietmar has experience with this, didn't try it myself yet.
#3507cedar⇗ @XPLives, ⇗ @Daniel_K
It is very likely the SATA cable caused sluggishness. When moving
hard disk between computers, causing the cable not perfectly fit,
I got the same sluggishness when copy files, like 2MB/s.
Once readjusted the cable, may take several tries.
Speed went back to 50+ MB/s.

I use 64 bit ffmpeg.exe, or x265.exe to encode TS files to x265 format.
64 bit is about 35% faster than 32 bit versions. For x264 format,
it is about 10% faster only. So I prefer encoding inside XP64 than XP32.
When done, the batch file notify me with any 1 of the below

start /min mplay32 /play /close %WINDIR%\media\tada.wav
start /min "F:\Program Files\Winamp\winamp.exe" b:\sound\song.mp3
start /min mplay32 /play /close b:\sound\song.mp3

tada.wav is only 1 second long. will less likely to crash XP64, 2003.
But a 2 min long song.mp3 will always reboot XP or 2003 in less than a minute.

Media player classic, Potplayer, Kmplayer, winamp all reboot XP64
or 2003 x64 in less than a minute unless Realtek audio device driver is disabled.
It is strange because sounds or musics played fine, no stuttering before
sudden reboot.  I tried at least 3 versions of Realtek Audio drivers which
can installed and play sounds fine until sudden reboot within minutes
of any applications which play sounds.

Memory spaces are progressively being corrupted once sounds are played!
Daniel_K may have some good insight into this. I suspect irq issues
as sometime it BSOD with irq not less than equal... message
after sounds are played.

I will ask Daniel_K if he can help fixing the Realtek audio issue.
#3508cedar⇗ @daniel_k

Could you please read #3507? Thanks for the great driver.
My IVY system can run USB 3.0 for months with no issue.
#3509antomeI have made some small steps forward, now I get to formatting the disk with acpi active, without having a5 errors, but at the end of copying the files(99%) I get a problem on the row 0 hivesys.inf is damaged
#3510Andalu⇗ @gordo999
thank you for the clarification. Indeed my nvme ssd disk has 4096 bytes per sector instead the disk with XP installed has 512 bytes per sector. So this is a way not achievable... my headache goes on :)


⇗ @XPLives
Windows98SE dos version and so FDisk don't detect my NVME SSD disk. I had to create the two partitions C: (fat16) and D: (fat32) with aomei partition assistant bootable media. But I was unable to perform the copy disk operation.
The nvme disk never appears in the bios as bootable device.


⇗ @daniel_k
I tried both cd and pendrive modified with nLite and thanks to your suggestion there is no longer the need to copy by hand storport.sys to system32\drivers folder all the times.
Dietmar has already suggested me to modify the disk structure with GParted but at moment i have not found the way to do or, more likely, I don't know how to proceed.

 

Page 235

#3511cedar⇗ @antome
Never got any corrupt hivesys.inf problem in my XP
installs. Perhaps hard disk problem or very fragmented hive.
#3512genieautravailFollowing my message on the BIOSTAR A10N-8800E motherboard:
¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (228)

Here some notes about the missing drivers:

SM bus controller:
PCI\VEN_1022&DEV_790B&SUBSYS_790B1022&REV_4A\3&11583659&0&A0

USB bus controller:
PCI\VEN_1022&DEV_7914&SUBSYS_79141022&REV_20\3&11583659&0&80

PCI coding/decoding controller:
PCI\VEN_1022&DEV_1578&SUBSYS_15781022&REV_00\3&11583659&0&40

Video controller:
PCI\VEN_1002&DEV_9874&SUBSYS_1C401002&REV_C4\3&11583659&0&08

About the SM bus controller:

I have two drivers, one come from the driverpacks solutions website and the other one from driverpacks.net was already in my disk image (C:\D\C\A\SMBUSamd.inf)

Only the one from driverpacks.net can be installed.



About the USB bus controller:

Again, I have two drivers, one come from the driverpacks solutions website and the other one from driverpacks.net was already in my disk image (C:\D\M\U3\amdxhc.inf)

The two can be installed.



About the PCI coding/decoding controller:

No driver exist for XP.
The situation will stay like this.

About the video controller:

The most problematic.
I have four packages of drivers and I have tried every Radeon Rx video controller.
XP has accepted to install some of them but none of them can be activated.
The only one solution for the video controller is to mount a graphic card on the PCI-Express 3.0 x16 slot.
I have a lot (eight) of graphic cards Radeon HD 4550, 5450 and 6450 in my stock of hardware.
So, for me it will be easy to resolve the issue but I can't mount the motherboard in a tiny case
What I wanted to do when I have purchased it.
A much larger case is needed.
Fortunately, I have an empty case LC-POWER LC-1400mi available!
#3513infuscomus⇗ @daniel_k ⇗ @diderius6

I've made a patched ntoskrnl.exe and hal.dll (multiprocessor versions) that satisfy dependencies of ACPI 5365 for XP.

if you have the time, can you test it?



infuscomus has attached files to this post
#3514diderius6⇗ @infuscomus
I just test your files.
I get message, that dlls are missed for hal.dll.
This message I have seen before. It appears,
when other dlls from Vista are missed for bootprocess,
there are some of them more than in XP SP3
Dietmar
#3515infuscomus⇗ @diderius6

did it say which dlls were missed for hal.dll?
#3516infuscomus⇗ @diderius6

i just noticed in import table - ntoskrnl.dll - i will fix

fixed



infuscomus has attached files to this post
#3517diderius6⇗ @infuscomus

Same message as before.
Hal needs more dlls in "Vista"
Dietmar

PS: As far as I remember there where about 6 extra dlls in Vista for hal,
compared to XP SP3
#3518infuscomus⇗ @diderius6

I'm hoping this is the problem here -



I'll fix it tomorrow, for now i'm off to bed.
#3519FireKillerGRok so what I did was:
a) get acpi.sys and syssetup.sys to .sy_ (via cmd) and replace the installation files under i386 (Windows XP Sp3)
b) install Fernando ahci drivers via nlite
c) install windows normally
issue is that after the restart I got the known A5 bios isnt acpi compliant error.
Any thoughts? What am I missing?

Edit: woks fine now :)
#3520gordo999@XPLives....got it going. My old system is now right to the desktop awaiting a 30 day activation period. It's amazingly solid. I had to tweak a few addresses that were still pointing to the old D: partition but most of my main apps are running on the new mobo.

My priority now is to get LAN drivers going so I can reach the Net via a network connection through my laptop's wifi. I am currently networked with the laptop via W10 and W7 on an Intel(R) Ethernet Connection (7) 1219-V. It's using an e1d62x64.sys driver. Of course, my XP is x86.

I'd also like to get USB working if possible...for my keyboard and mouse. PS/2 works OK but so far I am stealing the mouse from my laptop. Have to get out an buy another corded mouse.

I'd also like to slipstream ACPI and AHCI drivers into my XP SP3 install disk so I can run a proper repair install.

Here's the data you asked for:

Device Description

Intel(R) C600+/C220+ series chipset SATA AHCI Controller

***
Hardware IDs

PCI\VEN_8086&DEV_A352&SUBSYS_86941043&REV_10
PCI\VEN_8086&DEV_A352&SUBSYS_86941043
PCI\VEN_8086&DEV_A352&CC_010601
PCI\VEN_8086&DEV_A352&CC_0106

****

Compatible IDs

PCI\VEN_8086&DEV_A352&REV_10
PCI\VEN_8086&DEV_A352
PCI\VEN_8086&CC_010601
PCI\VEN_8086&CC_0106
PCI\VEN_8086
PCI\CC_010601
PCI\CC_0106

***

Matching Device ID

pci\ven_8086&dev_a352&cc_0106
#3521gordo999
Zitat von ⇗ FireKillerGR im Beitrag ¶ #3519
issue is that after the restart I got the known A5 bios isnt acpi compliant error.
Any thoughts? What am I missing?
@FireKillerGR...Dietmar's (diderius6) acpi.sys from outer-space solved the 0xA5 issue for me. You can find a link a few pages back. I understand there is another ACPI version from daniel_k, I think, but I have not checked that out.

I used it recently on my XP recovery console. Their acpi.sys was in compressed format as acpi.sy_ but I simply substituted Dietmar's acpi.sys with no compression and the 0xA5 error disappeared.

BTW...how did you compress that file using CMD window? I know of the expand.exe function but I searched recently for a compression function and could not find one.
#3522FireKillerGRif I recall correctly I used the makecab command
#3523gordo999
Zitat von ⇗ XPLives im Beitrag ¶ #3500
Have a USB 2.0 PCIe card installed.

@XPLives...thanks again for all your help. As I told you in another reply my old XP system is now at the desktop and stable.

I have an external USB card which offers both USB 2 and 3 but it's aimed at W7 and above. I'm pretty sure it has no XP drivers, although I will check.

The Device decription is VIA USB eXtensible Host Controller

Main hardware ID is PCI\VEN_1106&DEV_3483&SUBSYS_34831106&REV_01

It also takes a DEV_3483&CC_0C03

I am not asking you to do work on this for me, just letting you know the basics about the card. It obviously has it's own onboard controller.

I would really like to get the USB ports on the mobo going. I recently used canon kong's USB driver to do that with W7. Of course, W10 drives the mobo ports naturally.

Not sure on the story, I think canon kong was working with daniel_k. I know daniel_k has a USB driver out but I have not read far enough through this thread to know what is what.
#3524gordo999
Zitat von ⇗ daniel_k im Beitrag ¶ #3505
Still need to (learn to) setup kernel debugger. Last time I used a KD, was SoftICE for Windows 9x.
⇗ @daniel_k

You have done amazingly well if all you are using is IDA for cold code reading. It's a real art in itself which I have used on many an occasion at a basic level but usually in conjunction with a debugger and a hex editor.

I have even used softice in W98 and to work with DOS mode apps. It wasn't all that stable in those days.

As you know, you can set up  a kernel mode session in windbg using a VM. I have used softice on a VM in XP but I needed to get at real hardware, which is a problem with a VM. For one, much of the hardware the VM uses is built in and virtual. For another, it's code is always interfering during kmode traces.

So, I built myself a serial debugger arrangement using a laptop as host and a desktop as the target. The laptop has no serial port so I bought a USB to serial adapter from StarTech. It plugs into a USB port on the laptop (running W7) and the other end of the module has a serial cable which plugs into a serial port on my desktop (has W7, W10, and now XP). The adapter presents itself to Windows as a serial port, even though it's plugged into a USB port.

It was seriously frustrating to set it up even though I have a strong background with hardware. I got it going eventually by using W10 as the target. The W10 OS seemed to have a better ability to deal with a serial protocol than W7 but once I got a connection, W7 worked just as well.

If you want to get such a system going I'd be happy to offer whatever assistance I can. The advantage over a VM system is significant. When the target is first reached it is during an early stage of the target boot sequence, so you can trace through almost the entire boot sequence with windbg in kmode.

Although I'd still prefer to work in the softice environment, Wdbg in kmode has it's own advantages. You can call up the entire USB driver hierarchy and it will give you data on each driver. For example, it's parent and it's dependants.
#3525cedar⇗ @gordo999
I put modded acpi to "old" folder

CABARC  -m  LZX:21  N  ACPI.SY_  ACPI.SYS
cabarc -r -m LZX:21 n driver.cab b:\old\*.*
cabarc -r -m LZX:21 n sp3.cab b:\old\*.*



cedar has attached files to this post

 

Page 236

#3526gordo999
Zitat von ⇗ Andalu im Beitrag ¶ #3510
@gordo999
thank you for the clarification. Indeed my nvme ssd disk has 4096 bytes per sector instead the disk with XP installed has 512 bytes per sector. So this is a way not achievable... my headache goes on :)

⇗ @Andalu
Never say die. Find out if your nvme drive has a 512 byte compatibility mode. If so, it should be able to run in that mode to communicate with another drive written with 512 bytes/sector.

Or, check out taking an image of one drive rather than a clone then write the image back to a 4k drive. I don't think images care about sectoring. I created an image of my XP system and used it to create the XP OS on a VM.

Alternately, check out the Easeus claim that they have software (paid) to do the conversion. What the drive on the read/write head sees is 4096 bytes/sector. Maybe someone has devised a method to let it write to sectors of that size while actually writing data based on 512 bytes/sector.

Something from Seagate on the 4K issue:

⇗ https://www.seagate.com/ca/en/tech-insights/advanced-format-4k-sector-hard-drives-master-ti/

Something from minitool partition manager on emulation:

⇗ https://www.partitionwizard.com/partitionmagic/what-is-4k-hard-drive.html

a discussion on the subject with a link to Easeus:

⇗ https://forums.tomshardware.com/threads/cloning-windows-10-from-hdd-to-ssd-512-bytes-to-4096-bytes.3425477/
#3527gordo999
Zitat von ⇗ cedar im Beitrag ¶ #3525
I put modded acpi to "old" folder
⇗ @cedar
Thanks...is that for compressing a file? Or is it an alternate acpi.sys?
#3528cedar⇗ @gordo999
The new single acpi.sy_ is for making a new CD via Nlite.
SP3.cab and Driver.cab also has old acpi.sys needed replaced.

I use winrar or 7zip to expand the original cab files to
the "old"  folder. Copy the new modded acpi.sys to it,
even storahci.sys to it as it does no harm.

Then run 1 of the line in the batch file to create a new cab
before running Nlite to make a new ISO.
#3529Mattiwatti
Zitat von ⇗ gordo999 im Beitrag ¶ #3526
⇗ @Andalu
Never say die. Find out if your nvme drive has a 512 byte compatibility mode. If so, it should be able to run in that mode to communicate with another drive written with 512 bytes/sector.
Or, check out taking an image of one drive rather than a clone then write the image back to a 4k drive. I don't think images care about sectoring. I created an image of my XP system and used it to create the XP OS on a VM.
Alternately, check out the Easeus claim that they have software (paid) to do the conversion. What the drive on the read/write head sees is 4096 bytes/sector. Maybe someone has devised a method to let it write to sectors of that size while actually writing data based on 512 bytes/sector.
Something from Seagate on the 4K issue:
⇗ https://www.seagate.com/ca/en/tech-insights/advanced-format-4k-sector-hard-drives-master-ti/
Something from minitool partition manager on emulation:
⇗ https://www.partitionwizard.com/partitionmagic/what-is-4k-hard-drive.html
a discussion on the subject with a link to Easeus:
⇗ https://forums.tomshardware.com/threads/cloning-windows-10-from-hdd-to-ssd-512-bytes-to-4096-bytes.3425477/

To add to this, (since I don't know what NVMe drive ⇗ @Andalu is using, and this may be helpful for others regardless): if you have an enterprise Intel SSD you can use the ⇗ Intel SSD Data Center Tool to change the LBA format on some drives (not all drives support this, even the Data Center ones). I have successfully done this in the past to change a 512 KB sector SSD to a 4KB one and the other way around with an Intel 750 400GB PCIe SSD, and later with an Optane P4800X 750GB.

Example: query the number of supported LBA formats and their features:
> isdct show -intelssd 0 -identify
Output:
- Identify Namespace PHKS746500<rest of my serial here> -

- Byte 0-7 -

Namespace Size : 1465149168

- Byte 8-15 -

Namespace Capacity : 1465149168

- Byte 16-23 -

Namespace Utilization : 1465149168

- Byte 24 -

Namespace Features : 0
Bit 0 - Thin Provisioning Support : 0

- Byte 25 -

Number of LBA Formats : 6

- Byte 26 -

Formatted LBA Size : 0
Bit 7:5 - Reserved : 0
Bit 4 - Metadata transfer bit : 0
Bit 0:3 - LBA Format Support : 0

- Byte 27 -

Metadata Capabilities : 1
Bit 7:2 - Reserved : 0
Bit 1 - Metadata transfered as part of a separate buffer support : 0
Bit 0 - Metadata transfered part of extended data LBA Support : 1

- Byte 28 -

End-to-end Data Protection Capabilities : 11
Bit 7:5 - Reserved : 0
Bit 4 - Protection Info transfered as last 8 bytes of metadata Support : 1
Bit 3 - Protection Info transfered as first 8 bytes of metadata Support : 0
Bit 2 - Protection Type 3 Support : 0
Bit 1 - Protection Type 2 Support : 0
Bit 0 - Protection Type 1 Support : 1

- Byte 29 -

End-to-end Data Protection Type Settings : 0
Bit 7:4 - Reserved : 0
Bit 3 - Protection Information Transfer : 0 (Transferred as the last eight bytes of metadata.)
Bit 2:0 - Protection Type Information : 0 (Protection Information is not enabled)

- Byte 131 -

LBA Format 0 Support : 2090000
Bit 31:26 - Reserved :
Bit 25:24 - Relative Performance : 0x2 (Good performance)
Bit 23:16 - LBA Data Size : 09
Bit 15:0 - Metadata Size : 0000

- Byte 135 -

LBA Format 1 Support : 2090008
Bit 31:26 - Reserved :
Bit 25:24 - Relative Performance : 0x2 (Good performance)
Bit 23:16 - LBA Data Size : 09
Bit 15:0 - Metadata Size : 0008

- Byte 139 -

LBA Format 2 Support : 2090010
Bit 31:26 - Reserved :
Bit 25:24 - Relative Performance : 0x2 (Good performance)
Bit 23:16 - LBA Data Size : 09
Bit 15:0 - Metadata Size : 0010

- Byte 143 -

LBA Format 3 Support : C0000
Bit 31:26 - Reserved :
Bit 25:24 - Relative Performance : 0x0 (Best performance)
Bit 23:16 - LBA Data Size : 0C
Bit 15:0 - Metadata Size : 0000

- Byte 147 -

LBA Format 4 Support : C0008
Bit 31:26 - Reserved :
Bit 25:24 - Relative Performance : 0x0 (Best performance)
Bit 23:16 - LBA Data Size : 0C
Bit 15:0 - Metadata Size : 0008

- Byte 151 -

LBA Format 5 Support : C0040
Bit 31:26 - Reserved :
Bit 25:24 - Relative Performance : 0x0 (Best performance)
Bit 23:16 - LBA Data Size : 0C
Bit 15:0 - Metadata Size : 0040

- Byte 155 -

LBA Format 6 Support : C0080
Bit 31:26 - Reserved :
Bit 25:24 - Relative Performance : 0x0 (Best performance)
Bit 23:16 - LBA Data Size : 0C
Bit 15:0 - Metadata Size : 0080

<...snip...>


Byte 25 tells us the number of supported formats is 6, though this is misleading as the value actually means the number of the highest LBA format supported. Since LBA format indices start at 0, this means 7 supported formats of which LBAFormat=6 is the highest.

Not very helpfully, the rest of the LBA formats then do not give their actual sector size. However 512 bytes and 4KB formats can still be told apart by "relative performance": 512 bytes on my Optane is "good" and 4KB is "best" (which is true - using a sector size of 4KB I saw about a 10% performance improvement across all benchmarks). You can use 'isdct show -intelssd X -all' to show the current metadata size, which will normally be 0 unless you modified this manually. In this case that gives LBA format 0 and LBA format 3 for 512 bytes and 4KB respectively assuming you wish to keep the remainder of the LBA format settings unchanged. So if the index of your target SSD is 0 and you wish to convert its LBA format 0 to change the sector size to 512 bytes, you can issue
> isdct start -intelssd 0 -nvmeformat LBAFormat=0 SecureEraseSetting=0
WHICH WILL WIPE ALL DATA ON THE SSD and convert it to the specified LBA format including the sector size.

I have to strongly recommend against using the EaseUS software. It may have improved since the last time I used it, but when I did attempt to use it to clone my 512 byte sector OS partition to the "4KB" Optane P4800X, it managed to brick the Optane (not a joke!). Of course one can argue that there is an underlying Intel firmware issue here since it should not be so trivial to kill such an expensive SSD using only software (and Intel did indeed replace the drive free of charge), but I would still steer clear of EaseUS. Another reason for simply not bothering in this case is that XP does not support booting off 4KB sector size drives: the official MS policy is that ⇗ this is only supported on Windows 8 and later. While I am normally skeptical of such claims by MS, I have never managed to get my Optane to boot Windows 7 in 4KB sector mode (either through a fresh install or from a cloned disk), so by extension I sincerely doubt that booting XP/2003 would ever work.

EDIT by Fernando: Unneeded parts and blank lines from the fully quoted post removed (to save space)
#3530gordo999
Zitat von ⇗ cedar im Beitrag ¶ #3528
The new single acpi.sy_ is for making a new CD via Nlite.
SP3.cab and Driver.cab also has old acpi.sys needed replaced.
⇗ @cedar
Thanks for clarification and files.
#3531gordo999
Zitat von ⇗ Mattiwatti im Beitrag ¶ #3529
I have to strongly recommend against using the EaseUS software.
⇗ @Mattiwatti
Thanks for info and advice. I don't use Easeus and I was not promoting it. I was referring to their claim that a 512 byte/sector drive could be cloned to a 4k drive. Just the messenger.

I did find it interesting that a disk image at 512 bytes/sector might be transferable to a disk with 4k sectors. I have done it 512 to 512 but I don't see why it would not work since images are not based on the bytes/sector, as far as I know.
#3532infuscomus⇗ @diderius6 ⇗ @daniel_k

OK,
can you test if this versions works? or same error?



infuscomus has attached files to this post
#3533gordo999Getting brain-lock trying to figure out a basic driver for an Intel LAN for XP. The mobo is 8th generation, an Asus B360M.

According to my W7 Device Manager the hardware ID is:

PCI\VEN_8086_DEV_15BC&SUBSYS_86721043_REV_10

Have not been able to track down a suitable Intel XP driver to try it.

I can't believe Asus. They supply a disk for the mobo but they don't list this DEV number. Anyway, they are all 64-bit drivers.
#3534FireKillerGRFinally got XP to work on ASUS Z390! :D
So far had success with fresh installation - now need to get older images/installation (on z270) to work.
#3535cedar⇗ @gordo999

I think daniel_k and diderius6 had  XP patched Lan drivers maybe 2 months ago.
I have not tried them. But they worked for daniel_k and diderius6.
#3536Andalu⇗ @gordo999
Some news from here. Thanks to easeus todo backup home 10.0 I was able to clone the XP disk (512 bytes) to the nvme ssd (4096 bytes) with the 'normal mode' because the 'sector by sector' method was unable to use due to different sector sizes. But the XP boot from this disk doesn't work and the disk does not appear in the boot screen menu of bios. After this, I tried also to install windows 10 (in Legacy mode) on the nvme disk (in MBR style) and again I got an error "Windows cannot be installed to this disk. The computer's hardware may not support booting to this disk. Ensure that the disk's controller is enabled in the computer's BIOS".
I'm still looking for a workaround.


⇗ @Mattiwatti
Thanks for your reply and the useful information. My nvme disk was extracted from a Samsung X5 Portable SSD - PN: MZBLB500HAJQ, so I can't apply the intel method.


Here the aida report about my nvme ssd disk:

  [ Samsung Portable SSD X5 (S420NK0KB00056L) ]

NVMe Device Properties:
Model ID.......................................................... Samsung Portable SSD X5
Serial Number.................................................. S420NK0KB00056L
Revision.......................................................... 1P3QEXE7
Device Type..................................................... NVMe v1.3.0
Unformatted Capacity....................................... 476940 MB
PCI Vendor ID.................................................. 144Dh (Samsung)
PCI Subsystem Vendor ID................................. 144Dh (Samsung)
IEEE OUI Identifier............................................ 38-25-00 (Samsung)
Controller ID.................................................... 4
Version........................................................... 66304
Recommended Arbitration Burst Size................. 2
Max Data Transfer Size.................................... 9
Runtime D3 Resume Latency............................. 200000 us
Runtime D3 Entry Latency................................. 8000000 us
Abort Command Limit...................................... 8
Asynchronous Event Request Limit.................... 4
Firmware Slots............................................... 3
Max Error Log Page Entries.............................. 64
Power States.................................................. 5
Warning Composite Temperature Threshold...... 329
Critical Composite Temperature Threshold........ 330
Total NVM Capacity......................................... 476940 MB
Min / Max Submission Queue Entry Size............ 64 / 64 bytes
Min / Max Completion Queue Entry Size............ 16 / 16 bytes
Namespaces................................................... 1
Atomic Write Unit Normal................................. 128 blocks
Atomic Write Unit Power Fail............................. 1 blocks

NVMe Device Features:
128-bit Host Identifier...................................... Not Supported
Autonomous Power State Transitions................ Supported
Command Effects Log Page.............................. Supported
Compare & Write Fused Operation................... Not Supported
Cryptographic Erase....................................... Supported
Directives...................................................... Not Supported
Firmware Activation Notices............................ Not Supported
Firmware Activation Without Reset.................. Supported
First Firmware Slot Read Only........................ No
Format All Namespaces................................. Supported
Multiple Controllers....................................... No
Multiple PCIe Ports........................................ No
Namespace Attribute Changed Event............... Not Supported
Non-Operational Power State Permissive Mode.. Not Supported
Reservations................................................ Not Supported
Save / Select Fields...................................... Supported
Secure Erase All Namespaces........................ Not Supported
SGLs........................................................... Not Supported
SGL Bit Bucket Descriptor............................... Not Supported
SGL Byte Aligned Contiguous Physical Buffer of Metadata..... Not Supported
SGL Commands Larger Than Data................. Not Supported
SMART Information Per Namespace.............. Supported
SR-IOV Virtual Function................................ No
Volatile Write Cache..................................... Present

NVMe Commands:
Compare......................................... Supported
Dataset Management........................ Supported
Device Self-test................................ Not Supported
Doorbell Buffer Config....................... Not Supported
Format NVM.................................... Supported
Firmware Commit............................ Supported
Firmware Image Download............... Supported
Namespace Attachment.................... Not Supported
Namespace Management.................. Not Supported
NVMe-MI Receive............................. Not Supported
NVMe-MI Send................................. Not Supported
Security Receive.............................. Supported
Security Send.................................. Supported
Virtualization Management............... Not Supported
Write Uncorrectable......................... Supported
Write Zeroes................................... Supported

SSD Physical Info:
Manufacturer................................... Samsung
SSD Family...................................... Portable SSD X5
Form Factor..................................... Proprietary
Controller Type................................ Samsung Phoenix S4LR020
Flash Memory Type.......................... Samsung 64-layer 3D TLC V-NAND
Physical Dimensions......................... 119 x 62 x 19.7 mm
Max. Weight.................................... 150 g
Max. Sequential Read Speed............. 2800 MB/s
Interface......................................... Thunderbolt 3
Interface Data Rate.......................... 5000 MB/s
#3537diderius6⇗ @infuscomus
This time I do not get an error about missed Dlls.
This means, you found all.
But I get BSOD about writing in wrong memory
in normal boot and also in Safe Mode (via F8)
Dietmar

Microsoft (R) Windows Debugger Version 6.12.0002.633 X86
Copyright (c) Microsoft Corporation. All rights reserved.

Opened \\.\com1
Waiting to reconnect...
Connected to Windows XP 2600 x86 compatible target at (Wed Nov 6 21:01:20.178 2019 (UTC + 1:00)), ptr64 FALSE
Kernel Debugger connection established.
WARNING: Inaccessible path: 'C:\WinDDK\7600.16385.1\src\openfabricsall\nvme13\nvme\objchk_wnet_x86\i386'
Symbol search path is: C:\WinDDK\7600.16385.1\src\openfabricsall\nvme13\nvme\objchk_wnet_x86\i386;SRV*c:\symbols
*⇗ http://msdl.microsoft.com/download/symbols;C:\symbols
Executable search path is: C:\localsymbols
*** ERROR: Symbol file could not be found. Defaulted to export symbols for ntoskrnl.exe -
Windows XP Kernel Version 2600 MP (1 procs) Free x86 compatible
Built by: 2600.xpsp_sp3_qfe.170427-1622
Machine Name:
Kernel base = 0x804d7000 PsLoadedModuleList = 0x805634c0
System Uptime: not available
WARNING: Inaccessible path: 'C:\WinDDK\7600.16385.1\src\openfabricsall\nvme13\nvme\objchk_wnet_x86\i386'
Wed Nov 6 21:01:33.006 2019 (UTC + 1:00):
*** Fatal System Error: 0x0000007e
(0xC0000005,0x00000000,0xF789E168,0xF789DE64)

Wed Nov 6 21:01:33.053 2019 (UTC + 1:00): Break instruction exception - code 80000003 (first chance)

A fatal system error has occurred.
Debugger entered on first try; Bugcheck callbacks have not been invoked.

A fatal system error has occurred.

Connected to Windows XP 2600 x86 compatible target at (Wed Nov 6 21:01:33.209 2019 (UTC + 1:00)), ptr64 FALSE
Loading Kernel Symbols
..............................
Loading User Symbols

*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

Use !analyze -v to get detailed debugging information.

BugCheck 7E, {c0000005, 0, f789e168, f789de64}

*** WARNING: nt!MmPoisonedTb is non-zero:
*** The machine has been manipulated using the kernel debugger.
*** MachineOwner should be contacted first


Probably caused by : Unknown_Image ( ANALYSIS_INCONCLUSIVE )

Followup: MachineOwner
---------

nt!PoRegisterSystemState+0xd5:
804e29c2 cc int 3
11: kd> !analyze -v
*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

SYSTEM_THREAD_EXCEPTION_NOT_HANDLED (7e)
This is a very common bugcheck. Usually the exception address pinpoints
the driver/function that caused the problem. Always note this address
as well as the link date of the driver/image that contains this address.
Arguments:
Arg1: c0000005, The exception code that was not handled
Arg2: 00000000, The address that the exception occurred at
Arg3: f789e168, Exception Record Address
Arg4: f789de64, Context Record Address

Debugging Details:
------------------


POISONED_TB: nt!MmPoisonedTb is non-zero:

EXCEPTION_CODE: (NTSTATUS) 0xc0000005 - Die Anweisung "0x%08lx" verweist auf Speicher bei "0x%08lx". Die Daten wurden wegen eines E/A-Fehlers in "0x%081x" nicht in den Arbeitsspeicher bertragen.

FAULTING_IP:
+16a2faf00c0dfc0
00000002 ?? ???

EXCEPTION_RECORD: f789e168 -- (.exr 0xfffffffff789e168)
ExceptionAddress: 00000000
ExceptionCode: c0000005 (Access violation)
ExceptionFlags: 00000000
NumberParameters: 2
Parameter[0]: 00000000
Parameter[1]: 00000000
Attempt to read from address 00000000

CONTEXT: f789de64 -- (.cxr 0xfffffffff789de64)
eax=00000000 ebx=80703900 ecx=54445358 edx=00000001 esi=f758db00 edi=80703830
eip=00000000 esp=f789e230 ebp=f789e250 iopl=0 nv up ei pl zr na pe nc
cs=0008 ss=0010 ds=0023 es=0023 fs=0030 gs=0000 efl=00010246
00000000 ?? ???
Resetting default scope

DEFAULT_BUCKET_ID: DRIVER_FAULT

PROCESS_NAME: P›

ERROR_CODE: (NTSTATUS) 0xc0000005 - Die Anweisung "0x%08lx" verweist auf Speicher bei "0x%08lx". Die Daten wurden wegen eines E/A-Fehlers in "0x%081x" nicht in den Arbeitsspeicher bertragen.

WRITE_ADDRESS: 00000000

FOLLOWUP_IP:
+16a2faf00c0dfc0
00000002 ?? ???

FAILED_INSTRUCTION_ADDRESS:
+16a2faf00c0dfc0
00000002 ?? ???

BUGCHECK_STR: 0x7E

LAST_CONTROL_TRANSFER: from 00000000 to 00000000

STACK_TEXT:
f789e22c 00000000 00000000 00000000 f75924ae 0x0


STACK_COMMAND: kb

SYMBOL_NAME: ANALYSIS_INCONCLUSIVE

FOLLOWUP_NAME: MachineOwner

MODULE_NAME: Unknown_Module

IMAGE_NAME: Unknown_Image

DEBUG_FLR_IMAGE_TIMESTAMP: 0

FAILURE_BUCKET_ID: 0x7E_VFL_BAD_IP_ANALYSIS_INCONCLUSIVE

BUCKET_ID: 0x7E_VFL_BAD_IP_ANALYSIS_INCONCLUSIVE
*** WARNING: nt!MmPoisonedTb is non-zero:
*** The machine has been manipulated using the kernel debugger.
*** MachineOwner should be contacted first



Followup: MachineOwner
---------

11: kd> lm
start end module name
804d7000 80701000 nt M (pdb symbols) c:\localsymbols\exe\ntoskrnl.pdb
80701000 80724600 HAL2 (deferred)
b83c3000 b83dce80 Mup (deferred)
b83dd000 b8409980 NDIS (deferred)
b840a000 b8496d00 Ntfs (deferred)
b8497000 b84a9f00 WudfPf (deferred)
b84aa000 b84c0b80 KSecDD (deferred)
b84c1000 b84d2f00 sr (deferred)
b84d3000 b84f2b00 fltMgr (deferred)
b84f3000 b8533000 storport (deferred)
b8533000 b854a880 SCSIPORT (deferred)
b854b000 b8800000 iaStor (deferred)
f746f000 f7494a00 dmio (deferred)
f7495000 f74b3d80 ftdisk (deferred)
f7554000 f7564a80 pci (deferred)
f7565000 f75a8000 ACPI (deferred)
f75a8000 f75d6000 amdxhc (deferred)
f75f7000 f7600300 isapnp (deferred)
f7607000 f7611580 MountMgr (deferred)
f7617000 f7624200 VolSnap (deferred)
f7627000 f7637000 asahci32 (deferred)
f7637000 f7644000 storahci (deferred)
f7647000 f764fe00 disk (deferred)
f7657000 f7663180 CLASSPNP (deferred)
f7707000 f770d780 USBSTOR (deferred)
f770f000 f7713d00 PartMgr (deferred)
f7897000 f789a000 BOOTVID (deferred)
f7987000 f7988b80 kdcom (deferred)
f7989000 f798a500 USBD (deferred)
f798b000 f798c100 WMILIB (deferred)
f798d000 f798e700 dmload (deferred)
#3538daniel_k
Zitat von ⇗ cedar im Beitrag ¶ #3507
But a 2 min long song.mp3 will always reboot XP or 2003 in less than a minute.

Are you dual booting the system? Windows 7 or later? Any issues?

If there are no issues, probably is something driver related.

Are you using a modified ACPI.SYS?
Which AHCI driver and version is installed?
#3539daniel_k
Zitat von ⇗ gordo999 im Beitrag ¶ #3524
You have done amazingly well if all you are using is IDA for cold code reading. It's a real art in itself which I have used on many an occasion at a basic level but usually in conjunction with a debugger and a hex editor.

Not a big deal. Many times is simply hit or miss.
Seriously, some patches I did some years ago, specially to fix Audigy's Equalizer app, was really tiresome.
Step-by-step execution on OllyDbg on XP, then run on Vista and see where it didn't behave the same. Spent several days.

Zitat
If you want to get such a system going I'd be happy to offer whatever assistance I can. The advantage over a VM system is significant. When the target is first reached it is during an early stage of the target boot sequence, so you can trace through almost the entire boot sequence with windbg in kmode.


Thanks, will surely ask for help if needed.

#3540daniel_k⇗ @infuscomus, unless you actually add the code for an exported function, it won't work at all.

 

Page 237

#3541daniel_k
Zitat von ⇗ gordo999 im Beitrag ¶ #3533
PCI\VEN_8086_DEV_15BC&SUBSYS_86721043_REV_10

Strange, no drivers on WindowsUpdate Catalog.
What is the exact motherboard model?
#3542daniel_k⇗ @Andalu

Had a new idea about your USB3 issue.

Download WPCREDIT:
⇗ http://ftp.vector.co.jp/32/55/2012/wpcre14.exe
Official website: ⇗ http://hp.vector.co.jp/authors/VA002374/

Old, but gold. It's from 2004 and 32-bit only utility.

- Write down the Device ID of your Intel USB3 controller.
- Run, WPCREDIT and select the device with matching IDs.
- To save a register "snapshot": File menu -> Register Save.

I need 2 saves, one save with working USB3, another one with no working USB3.
#3543daniel_k⇗ @Mov AX, 0xDEAD

It seems the driver gets stuck into device initialization, cannot disable controller, need to reboot.
The TI driver works with VirtualBox's XHCI controllers in both Intel and Renesas mode.
#3544gordo999
Zitat von ⇗ Andalu im Beitrag ¶ #3537
... the XP boot from this disk doesn't work and the disk does not appear in the boot screen menu of bios.
That's usually a problem with the MBR (master boot record) not being written properly, the boot.ini file being wrong, or missing files like ntldr or ntdetect. It could also be an issue wherein the disk you cloned had a hidden system partition that got cloned with the XP install. The XP partition should begin at sector 0x63 (decimal 64) on a standard 512 byte/sector format. I have no idea where it should begin on a 4k setup. Get a free disk editor like the Active@ Disk Editor, load your disk and see where the XP partition begins. If it's not at sector 0X63 that's your problem.

Of course, I have no idea what Easeus has done to accomplish the clone. They also offer a free partition manager. Boot it up and see what it has to say about the partitions on your NV disk. If none of this works, try doing a disk image of just your XP installation and try transferring it to a clean NV disk freshly partitioned with the MBR in place. I had to do all sorts of funny things to move my XP partition from 2 to 1 and fix the MBR.
#3545gordo999
Zitat von ⇗ cedar im Beitrag ¶ #3536
I think daniel_k and diderius6 had  XP patched Lan drivers maybe 2 months ago.
@cedar...thanks...will look into that.
#3546daniel_k⇗ @Mov AX, 0xDEAD, had a chance to play with the TI drivers?

Patched about a hundred suspecting conditional jumps, the "best" I've got was to change the Hub device error code from 29 to 10.
All those patches were in MCCIHCD_DriverExtension_PdoClass_Initialize function, which initializes the Hub (child device).
#3547gordo999
Zitat von ⇗ daniel_k im Beitrag ¶ #3542
What is the exact motherboard model?
⇗ @daniel_k ...Asus Prime B360M-C/CSM
#3548gordo999⇗ @Andalu ...that should be the Active@ Disk Editor. Sorry for typo. It's a very good editor, I have used it to trace right into the NTFS MFT table structure.
#3549infuscomus⇗ @daniel_k

I originally thought of adding them in properly, but the code seems like an unending rabbit hole

now I'm thinking it might be easier to patch ntoskrnl 5365 beta to add back in functions that were removed from it since XP.
#3550Andalu⇗ @gordo999
I did the cloning operation from the easeus winpe emergency disk and after cloning the first thingh I verified was the boot.ini, ntldr and ntdetect.com, all were in the root C:. The source and the destination disks had the same size (500GB) and no hidden partition.
The properties of the cloned disk (taken from two different sw) (sorry for bad quality):



About Active@ Disk Editor I'll try it in the afternoon, thanks for the info ;)
#3551Andalu⇗ @daniel_k
Here the snapshots of the usb controller (ID: PCI\VEN_8086&DEV_1E31&SUBSYS_1E311849&REV_04) of my crazy B75 Pro3-M board
;)



Andalu has attached files to this post
#3552Andalu
Zitat von ⇗ gordo999 im Beitrag ¶ #3550
@daniel_k ...Asus Prime B360M-C/CSM

Good news :) I have the previous asus Prime B250M-C/CSM and my next step is to boot XP from it with a m.2 or nvme ssd. Nothing is reported in the user's manual about the boot from those disks. I haven't tried yet. Do you have any news about it?
#3553gordo999
Zitat von ⇗ Andalu im Beitrag ¶ #3553
I did the cloning operation from the easeus winpe emergency disk...
⇗ @Fernando ...is the following suitable?
⇗ @Andalu ...there are several things you can try from the recovery console. The console has the utilities bootcfg, fixboot, and fixmbr. You'll need to research them to get the right order in which to apply them since I forget. bootcfg will build a boot.ini file for you after you delete your present one. I would back it up first. It is hidden in the C:\ directory and you need to use attrib *.* to see all the hidden files then attrib boot.ini -r -h -s to rename it.

However, bootcfg won't do you much good till you can see and access your C:\drive. It will tell you if it can see the C:\ drive, however. If it can't see the drive, you have other problems. fixmbr does what it says, it fixes the mbr. fixboot writes the entire partition boot sector. The mbr takes up the first sector on the disk but the partition boot sector takes up 0x63 sectors. It has code in it to help start the computer and activate the hard drive. Alternately, Active@ Disk Editor will show  you the mbr, partition boot sector, and everything on the disk. You just have to learn to interpret what you see and it's not all that hard since Active@ has tables explaining each colour-coded section.

According to this whitepaper from Western Digital you need to use a special tool to setup a 4k disk if it is a native 4k, meaning it has no emulation. Emulated disks can read 8 x 512 Sectors at a time from a 512 byte/sector drive and load them into one 4096 byte sector. 8 x 512 bytes = 4096 bytes. I don't know if that might be related to your problem although I doubt it.

⇗ http://products.wdc.com/library/whitepapers/eng/2579-771430.pdf
#3554gordo999
Zitat von ⇗ Andalu im Beitrag ¶ #3555
Nothing is reported in the user's manual about the boot from those disks. I haven't tried yet. Do you have any news about it?
⇗ @Andalu ...not sure what you mean about booting from the disks. All I got with mine was a disk with drivers for x64 and I have not read a manual. Did not know they had one. I would like better instructions for the BIOS. I am not impressed with the job Asus has done supporting this board. The only reason I got it is because Intel stopped manufacturing motherboards and this Asus board had an Intel architecture.
ps. you might have more luck with your board since it uses a 200-series Intel chipset. I think Intel was still releasing USB drivers for that series on Windows 7 so maybe it would be easier adapting them to XP.
#3555infuscomus⇗ @Gelip

do you know if there is any kind of signature check in ntoskrnl or hal?
as an experiment I want to swap XP ntoskrnl and hal with server 2003 versions and have it boot, but it doesn't want to work, so I was wondering if there was a signature check in it or something?

 

Page 238

#3556daniel_k⇗ @Andalu

I've read the datasheet and, with your .RG files, confirmed the registers that the Intel switch driver changes to enable USB3 speeds.

With broken USB3, run WPCREDIT, select the XHCI controller and change registers D0 and D8 to 0F.
Benchmark your USB drive.

Now we need to find a definitive solution.
#3557Mattiwatti
Zitat von ⇗ infuscomus im Beitrag ¶ #3559
@Gelip

do you know if there is any kind of signature check in ntoskrnl or hal?
as an experiment I want to swap XP ntoskrnl and hal with server 2003 versions and have it boot, but it doesn't want to work, so I was wondering if there was a signature check in it or something?

No, this is due to inherent kernel (and to a lesser extent, HAL) differences between NT 5.1 and 5.2. For this version specifically I can think of a few things off hand that would cause issues, for example user mode exception dispatching was changed subtly in 5.2. In general though you can assume that replacing one kernel version (of Windows; on Linux the following is not true) will not work simply due to changed syscall numbers alone. Syscall numbers are what ntdll.dll and a select few other DLLs use to request services from the kernel. These are (again, in Microsoft land) arbitrary and change with every release. This means that a program that calls OpenFile() by its syscall number on NT 5.1 may be calling CrashTheSystem() on NT 5.2, even if the program itself was not changed. This also holds true for many service packs and certainly beta releases which is where new syscalls are introduced.
#3558cedar⇗ @daniel_k
Thanks for the helps.
On the current AMD Asus Prime B350-Plus with Ryzen 2600, Windows 8 x64,
XP 32 bit can run for days with no issues. Both Windows use Realtek onboard
chip for sounds work flawlessly. I am planning to get a PCI or
USB sound card to test on XP64. But since Realtek sound on XP64 is
very unstable here, I somewhat doubt sound cards can solve this issue.
But never know until tested.

All chipset drivers, network driver installed. USB 3.0 and 3.1 work.
The current hard disk has XP64 SP2, SP1 and 2003 Std for testings.
All experience this audio reboot XP64 symptoms as well as
hard to boot into XP64 symptom.

The hard to boot into XP64 symptom, may or may not relate to audio
issue is like this:
If booting fail the first or/and 2nd times
,I can see the Windows Logo linger on normally as if it can
almost boot into XP64, then instantly reboot, no BSOD A5 or 7B.
The 3rd or 4th time choosing "Last Good Configuration" will very
likely boot into XP64.At most the 5th or 6th time,I can boot into
XP64 by choosing various hardware profiles.

But the hardware profiles are unreliable. Booting ok this time
does not guarantee booting work next time.

I tried 2003, XP64 SP2 before, now I run
XP64 SP1 with your modded acpi from post #2202 and Storahci.sys.
acpi,sys SHA1- 789E6923019D9BB22333393A9C51241F4554359F

 



cedar has attached files to this post
#3559schreibersteinHey everyone!

I sadly have been inactive for a week or two due to a lack of time (college).
I will test daniel_ks patch on Windows 2003 and see if it makes any difference.
And I will also record the amount of memory with several VRAM settings for the integrated Intel HD.

Yesterday, I abandoned the SoundBlaster Audigy 2 ZS PCI-E to PCI bridge mini-project.
It worked for a couple of days, but then it started to freeze the system (any OS) randomly.
There must be a faulty connection / lack of proper shielding.
I felt like, ... you know what... I am 100% sure there wont be drivers for my onboard Realtek ALC1220-VB, but lets try it anyway...
So, I downloaded the latest Realtek HD Audio driver package (2.74, I think) for Windows XP from May 2014.
To my surprise, the driver installed without any modifications and worked immediately with my onboard audio.
This is amazing. 100% compatibility. Thats all I need.

TL;DR : Onboard Realtek ALC-1220VB soundcard of Gigabyte Z390 Designare works on XP x86 using latest official driver.

Chrome still crashes regularly (out of mem) with the memory patch on XP x86.
I wish there were a way to just swap in the Server 2003 kernel / hal files, as everything works correctly on 2003.
(Running Server 2003 is a pain when every application needs XP for installation or needs to be patched to think it is running on NT 5.1)
I also wish there would be a replacement for that unreliable AMD USB XHCI driver, since it kills NTVDM completely and has issues with USB soundcards / DACs. Maybe this TI based driver can make a difference?

By the way, would it be possible for some ISO patcher on here to share the SP3.cab index file for the makecab utility?
The one that is needed to create a new sp3.cab from a folder? (Win XP x86 EN_US) I would be very thankful.

Its great to see how active this thread is!
Thank you all!

Cheers,
schreiberstein
#3560cedar⇗ @schreiberstein
Please see message #3525. This one can make new SP3.cab.
Also #3528.
#3561Gelip⇗ @infuscomus

Zitat von ⇗ infuscomus im Beitrag ¶ #3559
@Gelip

do you know if there is any kind of signature check in ntoskrnl or hal?
as an experiment I want to swap XP ntoskrnl and hal with server 2003 versions and have it boot, but it doesn't want to work, so I was wondering if there was a signature check in it or something?

There is no signature checking on WinXP x64, and there probably isn't on Win 2003 x64
#3562daniel_k⇗ @Mov AX, 0xDEAD

I think the issue lies in the DataPumpXhcdWiringValue config value.

In the TI driver, even if removed, the driver seems to have some hardcoded value or detect and uses a value incompatible with Intel XHCI controller.

In the ASMedia driver, which I have managed to properly patch the ID check, with DataPumpXhcdWiringValue value in Registry, the Hub reports the same error code 29 as with the TI driver.
As soon as you remove that value, Hub start just fine, devices are properly detected. Responsiveness when a device is plugged in or removed is great.

Unfortunately, there is still an issue with storage devices, which hang immediately if you run AIDA64 Disk Benchmark.
For some reason, it seems DMA is not (properly) initialized, same behavior as AMDXHC with forced 32-bit DMA. Any ideas?
When used with VIA controller, it works just fine.

Can you please track down if there is a hardcoded value for DataPumpXhcdWiringValue or how differently it detects that value against the ASMedia driver?
I've also patched the child Hub ID, so it is a static ASMedia 2142, allowing the WHQL Hub driver to be automatically installed.

 

 

daniel_k has attached files to this post
#3563daniel_k⇗ @cedar

Thought the issue was with your Intel system.
For Ryzen, you'd better ask Dietmar.
#3564Mattiwatti
Zitat von ⇗ schreiberstein im Beitrag ¶ #3563
I wish there were a way to just swap in the Server 2003 kernel / hal files, as everything works correctly on 2003.
(Running Server 2003 is a pain when every application needs XP for installation or needs to be patched to think it is running on NT 5.1)

You are thinking about this the wrong way ;)

Instead of transplanting the kernel and/or HAL of a different OS, which is in general an impossible task as I mentioned in my previous post, I would advise doing a clean installation of Server 2003 SP2 instead. It is far easier to modify the kernel to pretend that the system is NT 5.1 (or whichever version you like) than it is to modify an NT 5.1 system to "work correctly" the way a 5.2 system does (as you put it). For example: which OS is this?

Opinions seem to differ among the judges ;) AIDA64 is the winner for at least detecting that this is a server OS, which can be a problem on its own with some programs because they will smell money and demand that you purchase the Enterprise (TM) version of their product. Of course the "server-ness" of the OS can be changed just as simply as the version.

If applications demanding XP instead of 2003 truly is a problem for you and you don't mind trading in your XP installation for a Server 2003 one, just do the swap (and apply the necessary updates first...), send me your up-to-date ntkrnlpa.exe image, and I'll patch it to a faux NT 5.1 for you.
#3565cedar⇗ @daniel_k
My Ivy is solid in XP32 and 64. Ryzen is solid in XP32 too.
Have not try XP64 debug version. But I doubt the outcome
as other XP64 variants all fail at audio instability.
#3566Andalu⇗ @gordo999
I had already tried the commands you suggested (bootcfg /rebuild and fixboot /mbr) but the boot from the nvme disk had never worked as a boot disk.
I installed Active@ Disk Editor and I'm taking some time to understand if I need to change some settings and how to do.


Zitat von ⇗ gordo999 im Beitrag ¶ #3557
...not sure what you mean about booting from the disks....

I was talking about the boot from nvme/M.2 disks for our asus prime boards. I bought the B250M-C/CSM a week ago and haven't had time to try it yet. I just looked at the user manual but nothing is reported about the boot from those disks, so I don't know if it supported. Asus doesn't seem to give remark to it, at least for those models of motherboards.
#3567Andalu⇗ @daniel_k
I made the changes for the XHCI controller with WPCredit. After reboot I connected to a USB3 port an external toshiba disk that uses the blue led when connected to a USB3 port and the white led when connected to a usb2 port. The disk connected to the USB3 port has correctly used the blue led but the performances don't seem to be like usb3. I got similar results with a Maxtor M3 portable. The USB3 driver installed is the amd 1.1.0.0145.

#3568cedar⇗ @Andalu
Teracopy can show real speed MB/s during copying files.
I use an older version 2.3. Copy files to My Book 3TB is max
at 26ish MB/s using USB2.0 port. 50 to 80 MB/s under USB 3.0
from my Asmedia Hardware USB3.0 PCIe card, or from Daniel_K's
driver.

⇗ https://www.codesector.com/teracopy
#3569daniel_k⇗ @Andalu

Actually, I'd make the changes and benchmark without rebooting as we don't know if the BIOS resets the register changes.
Try again, after rebooting, open WPCREDIT and check if the registers are still set to 0F.

Whatever is the case, I believe USB3 is active. as USB2 can't reach more than 26 ~ 30Mb/s.
Please benchmark with AIDA64.
#3570gordo999
Zitat von ⇗ Andalu im Beitrag ¶ #3569
I was talking about the boot from nvme/M.2 disks for our asus prime boards.
⇗ @Andalu ....don't know anything about that since all of my drives are disk drives. I find the Asus manual to be very poor in an overall sense. The manual indicates there are 2 x M.2 Socket 3 with  key type 2242/2260/2280 storage devices with IRST support (1@SATA* & PCIe mode x 4 optane memory). Whatever that means. It says nothing about booting other than the M.2 sockets on the mobo allows you to install an M.2 (NGFF) SSD module and that SATA mode shares with the SATA6G_2 port.

 

Page 239

#3571gordo999⇗ @daniel_k ...I have been reading through this thread from the beginning and came across one of your posts where you are modifying code related to memcpy. I have not, as yet, figured out what you guys were doing but memcpy is a very simply function and I have traced through it many times. All it does is point to the data to be moved in the esi register and an address where it is to be moved in the edi register, along with a count of the number of bytes to be moved. I noticed a 'push 4' statement and I took that to be the number of bytes to be moved, which is usually in the ecx register within the function code. You can watch ecx being decremented as each chunk of data is moved. Can you briefly tell me what you guys were doing?
#3572gordo999
Zitat von ⇗ Andalu im Beitrag ¶ #3566
... the boot from the nvme disk had never worked as a boot disk.
⇗ @Andalu ...sorry I missed this point. I would hope the Easeus app would take care of that during the clone. I cloned an OS from a laptop hard disk to a newer, larger disk with no issues. I don't recall having to prep the target disk. One problem I can visualize is the partitioning of the native 4k SSD. I have noted that it also has its first partition at the 0x63 sector (decimal 64). That would mean it is located at physical address 4096 bytes/sector x 64 sectors = 262,144 byes from beginning of disk whereas the 512 bytes/sector drive would be at 512 bytes/sector x 64 sectors = 32,768 bytes.

The disk manufacturers claim the move to 4k helps with density issues but it also represents a colossal waste of disk space if a lot of small files are being written. If a file of length 240 bytes is written to a sector of 4096 bytes, it takes up the entire sector. The rest of the sector is wasted. It's obvious that larger sector sizes also helps them sell disks. I would still consider make a disk image of your present C: drive using a free backup program like Macrium Reflect and restoring it directly to the SSD after the SSD has been properly formatted with a primary partition marked active. That's another thing to check, is your partition marked primary and active?
#3573daniel_k⇗ @gordo999, I was patching a driver, converting calls from memcpy_s to memcpy. It's already done.
#3574schreiberstein⇗ @Mattiwatti
Hello!

Yes, I would strongly consider using Server 2003 instead. I really don't mind, except that I cannot even install nVidia drivers since it requires XP SP3.
I would be happy if you could patch my attached kernel files to report Windows XP SP3.

Theoretically, I could just retain the old files and make them an additional boot option in boot.ini, so I could "switch" between versions, right?

Btw. the same Chrome issues occur on Windows 2003, but the system seems to be much more stable / compatible overall.

(I will try to debug Chrome and find the reason why it says it is "out of memory".)

EDIT: It would be very interesting to know which tool I can use to patch such files.  (So I can eventually do it myself)


Thank you for the advice!
Cheers,
schreiberstein



schreiberstein has attached files to this post
#3575Andalu⇗ @daniel_k
I had also done the benchmark just after the changes with WPCredit and before the first restart and the results were the same. However, the modified values are lost after an extended shutdown over a minute :) It will seem strange but it is so, one minute of power off is enough to lost the modified values.

⇗ @daniel_k ⇗ @cedar
I tried the same toshiba external disk connected to a usb3 port on the B250M-Pro4 board and the difference is really too much between the two benchs.

#3576Andalu⇗ @gordo999
I'll give a try to macrium reflect. I also found another link where this software is recommended to solve some problems related to a nvme disk but I have not read it yet. I'll let you know as soon as I have done the test.
The partition of my nvme ssd disk has always set a primary partition and marked as active.
Thanks for your help ;)
#3577XPLives⇗ @Andalu
Zitat von ⇗ Andalu im Beitrag ¶ #3510
@gordo999
thank you for the clarification. Indeed my nvme ssd disk has 4096 bytes per sector instead the disk with XP installed has 512 bytes per sector. So this is a way not achievable... my headache goes on :)


@XPLives
Windows98SE dos version and so FDisk don't detect my NVME SSD disk. I had to create the two partitions C: (fat16) and D: (fat32) with aomei partition assistant bootable media. But I was unable to perform the copy disk operation.
The nvme disk never appears in the bios as bootable device.


@daniel_k
I tried both cd and pendrive modified with nLite and thanks to your suggestion there is no longer the need to copy by hand storport.sys to system32\drivers folder all the times.
Dietmar has already suggested me to modify the disk structure with GParted but at moment i have not found the way to do or, more likely, I don't know how to proceed.

   

How large is the SSD?  If it's 128GB and smaller you should be able to create the partitions.  If FDISK isn't allowing you to enter then maybe using a hex editor and wiping Sector 0 of the NVME to 0s.  Then trying to boot up on USB floppy drive and 98SE DOS and try FDISK again.  If not then you might try to use a FAT32 partitioner to make it visible to 98SE DOS.

Use this link
⇗ Data Backup and Recovery for MBR Drives

Look for the FAT32 formatting program downloaded from here:
And use that link to download that program I used.

If you still can't see the NVME in 98SE DOS you can try

FDISK /MBR and see what happens if this fixes it.

Once you get into FDISK you then will have to set the first partition as Active assuming you could then delete any partitions existing and create a new FAT16 2GB partition.  The if this works reboot and then FDISK again to create the larger extended partition of the remaining space with FAT32. Then you can make the logical drive partitions for D: E:.
#3578XPLives⇗ @cedar
Zitat von ⇗ cedar im Beitrag ¶ #3507
@XPLives, @Daniel_K
It is very likely the SATA cable caused sluggishness. When moving
hard disk between computers, causing the cable not perfectly fit,
I got the same sluggishness when copy files, like 2MB/s.
Once readjusted the cable, may take several tries.
Speed went back to 50+ MB/s.

I use 64 bit ffmpeg.exe, or x265.exe to encode TS files to x265 format.
64 bit is about 35% faster than 32 bit versions. For x264 format,
it is about 10% faster only. So I prefer encoding inside XP64 than XP32.
When done, the batch file notify me with any 1 of the below

start /min mplay32 /play /close %WINDIR%\media\tada.wav
start /min "F:\Program Files\Winamp\winamp.exe" b:\sound\song.mp3
start /min mplay32 /play /close b:\sound\song.mp3

tada.wav is only 1 second long. will less likely to crash XP64, 2003.
But a 2 min long song.mp3 will always reboot XP or 2003 in less than a minute.

Media player classic, Potplayer, Kmplayer, winamp all reboot XP64
or 2003 x64 in less than a minute unless Realtek audio device driver is disabled.
It is strange because sounds or musics played fine, no stuttering before
sudden reboot.  I tried at least 3 versions of Realtek Audio drivers which
can installed and play sounds fine until sudden reboot within minutes
of any applications which play sounds.

Memory spaces are progressively being corrupted once sounds are played!
Daniel_K may have some good insight into this. I suspect irq issues
as sometime it BSOD with irq not less than equal... message
after sounds are played.

I will ask Daniel_K if he can help fixing the Realtek audio issue.



   
There's only one way to know if this is ACPI related.  If you do a separate installation with NO ACPI MPS Multiprocessor Mode or clone your current drive and change the Computer to MPS Multiprocessor Mode and repeat the test and see if the stability is the same.

My current tests probably put this MPS Multiprocessor mode at 95% Compatibility on Intel systems.
#3579Andalu⇗ @XPLives
The nvme disk size is 500GB. I had already tried to boot with an usb floppy drive with 98SE DOS but fdisk still did not see the disk.
Thanks for the link and advice. I will also try osfclone as soon as I have some time.
#3580XPLives⇗ @genieautravail
Zitat von ⇗ genieautravail im Beitrag ¶ #3512
Following my message on the BIOSTAR A10N-8800E motherboard:
¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (228)

Here some notes about the missing drivers:

SM bus controller:
PCI\VEN_1022&DEV_790B&SUBSYS_790B1022&REV_4A\3&11583659&0&A0

USB bus controller:
PCI\VEN_1022&DEV_7914&SUBSYS_79141022&REV_20\3&11583659&0&80

PCI coding/decoding controller:
PCI\VEN_1022&DEV_1578&SUBSYS_15781022&REV_00\3&11583659&0&40

Video controller:
PCI\VEN_1002&DEV_9874&SUBSYS_1C401002&REV_C4\3&11583659&0&08

About the SM bus controller:

I have two drivers, one come from the driverpacks solutions website and the other one from driverpacks.net was already in my disk image (C:\D\C\A\SMBUSamd.inf)

Only the one from driverpacks.net can be installed.



About the USB bus controller:

Again, I have two drivers, one come from the driverpacks solutions website and the other one from driverpacks.net was already in my disk image (C:\D\M\U3\amdxhc.inf)

The two can be installed.



About the PCI coding/decoding controller:

No driver exist for XP.
The situation will stay like this.

About the video controller:

The most problematic.
I have four packages of drivers and I have tried every Radeon Rx video controller.
XP has accepted to install some of them but none of them can be activated.
The only one solution for the video controller is to mount a graphic card on the PCI-Express 3.0 x16 slot.
I have a lot (eight) of graphic cards Radeon HD 4550, 5450 and 6450 in my stock of hardware.
So, for me it will be easy to resolve the issue but I can't mount the motherboard in a tiny case
What I wanted to do when I have purchased it.
A much larger case is needed.
Fortunately, I have an empty case LC-POWER LC-1400mi available!
   
Zitat von ⇗ genieautravail im Beitrag ¶ #3512

About the PCI coding/decoding controller:

No driver exist for XP.

So, for me it will be easy to resolve the issue but I can't mount the motherboard in a tiny case
What I wanted to do when I have purchased it.
A much larger case is needed.
Fortunately, I have an empty case LC-POWER LC-1400mi available!

What is the smallest case you were going to use this in?

The only modern integrated iGPU for XP you could use for graphics card slot free is Ivy Bridge.  For AMD they stopped XP driver support much earlier for APU.  I think around AM2?

PCI coding/decoding controller

This I saw on AMD AM4.  I don't know if this also  existed on earlier AM3, AM2 chipsets or had XP drivers?
#3581XPLives⇗ @Andalu

Zitat von ⇗ Andalu im Beitrag ¶ #3579
@XPLives
The nvme disk size is 500GB. I had already tried to boot with an usb floppy drive with 98SE DOS but fdisk still did not see the disk.
Thanks for the link and advice. I will also try osfclone as soon as I have some time.


Try the FAT32 GUI formatter I mentioned in the link.  I don't know if you are using Windows 7 or 10 but I think this program can work in it.  Is there a NVME to USB adapter you can use?  If NVME to USB adapter exists then maybe you can do it as a USB device.  I usually use SATA to USB adapter.  Also 500GB will be a bit too large for my method.  You probably could still do the FAT16 2GB, but for the Extended Partition Size you will have to self cap it to 9999 MB.  Then you can create a 8GB -> 32GB D: for XP, E: just the rest of it.  Anything above the 102GB you can then use XP Disk Management and create it as NTFS partitions to utilize the 300+GB left over.  Don't use Windows Vista->10 to create or delete any of the partitions as you could corrupt it.  It's okay to install Windows Vista->10 onto the XP created NTFS partitions with no problems.
#3582XPLives⇗ @gordo999
Zitat von ⇗ gordo999 im Beitrag ¶ #3520
@XPLives....got it going. My old system is now right to the desktop awaiting a 30 day activation period. It's amazingly solid. I had to tweak a few addresses that were still pointing to the old D: partition but most of my main apps are running on the new mobo.

My priority now is to get LAN drivers going so I can reach the Net via a network connection through my laptop's wifi. I am currently networked with the laptop via W10 and W7 on an Intel(R) Ethernet Connection (7) 1219-V. It's using an e1d62x64.sys driver. Of course, my XP is x86.

I'd also like to get USB working if possible...for my keyboard and mouse. PS/2 works OK but so far I am stealing the mouse from my laptop. Have to get out an buy another corded mouse.

I'd also like to slipstream ACPI and AHCI drivers into my XP SP3 install disk so I can run a proper repair install.

Here's the data you asked for:

Device Description

Intel(R) C600+/C220+ series chipset SATA AHCI Controller

***
Hardware IDs

PCI\VEN_8086&DEV_A352&SUBSYS_86941043&REV_10
PCI\VEN_8086&DEV_A352&SUBSYS_86941043
PCI\VEN_8086&DEV_A352&CC_010601
PCI\VEN_8086&DEV_A352&CC_0106

****

Compatible IDs

PCI\VEN_8086&DEV_A352&REV_10
PCI\VEN_8086&DEV_A352
PCI\VEN_8086&CC_010601
PCI\VEN_8086&CC_0106
PCI\VEN_8086
PCI\CC_010601
PCI\CC_0106

***

Matching Device ID

pci\ven_8086&dev_a352&cc_0106



   

Looks like you missed the

Device Instance ID:

The Device Name ID isn't necessary.  It can be renamed anything you want. :)

What was the old XP system specs?  Motherboard Make / Model?

Can you get the same Hardware IDs info off that system and paste?

To me you are better off repairing it on your older motherboard first before transplanting.  I am not sure the repair disc will be of any use.  It will most likely end up overwriting your SP4 files or corrupting the OS even further.  Best to install from scratch or transplanted successfully state.  Then go back to that image rather than trying to repair which I'm not sure if repair supports integrated storage drivers when booted off the CD.  Usually the self repair if you swapped the X:\Windows\system32\config files that I had mentioned one at a time and rebooted will self integrate and repair itself.  If this worked for you already let me know as I don't know exactly what you did to fix the problem you were having or if you tried my windows system32 config file swap technique.
#3583XPLives⇗ @schreiberstein
Zitat von ⇗ schreiberstein im Beitrag ¶ #3559
Hey everyone!

I sadly have been inactive for a week or two due to a lack of time (college).
I will test daniel_ks patch on Windows 2003 and see if it makes any difference.
And I will also record the amount of memory with several VRAM settings for the integrated Intel HD.

Yesterday, I abandoned the SoundBlaster Audigy 2 ZS PCI-E to PCI bridge mini-project.
It worked for a couple of days, but then it started to freeze the system (any OS) randomly.
There must be a faulty connection / lack of proper shielding.
I felt like, ... you know what... I am 100% sure there wont be drivers for my onboard Realtek ALC1220-VB, but lets try it anyway...
So, I downloaded the latest Realtek HD Audio driver package (2.74, I think) for Windows XP from May 2014.
To my surprise, the driver installed without any modifications and worked immediately with my onboard audio.
This is amazing. 100% compatibility. Thats all I need.

TL;DR : Onboard Realtek ALC-1220VB soundcard of Gigabyte Z390 Designare works on XP x86 using latest official driver.

Chrome still crashes regularly (out of mem) with the memory patch on XP x86.
I wish there were a way to just swap in the Server 2003 kernel / hal files, as everything works correctly on 2003.
(Running Server 2003 is a pain when every application needs XP for installation or needs to be patched to think it is running on NT 5.1)
I also wish there would be a replacement for that unreliable AMD USB XHCI driver, since it kills NTVDM completely and has issues with USB soundcards / DACs. Maybe this TI based driver can make a difference?

By the way, would it be possible for some ISO patcher on here to share the SP3.cab index file for the makecab utility?
The one that is needed to create a new sp3.cab from a folder? (Win XP x86 EN_US) I would be very thankful.

Its great to see how active this thread is!
Thank you all!

Cheers,
schreiberstein

   

Zitat von ⇗ schreiberstein im Beitrag ¶ #3559
Hey everyone!
And I will also record the amount of memory with several VRAM settings for the integrated Intel HD.


I'm pretty sure it's related to that.

I did some more testing of my Ivy Bridge which supported XP integrated graphics.
It has 32MB to 1024MB MAX.

I tried all the tests using XPP SP0 with PAE.

Without PAE a huge chunk of OS base memory was missing as expected.

With PAE enabled I got the absolute full 4.00 GB of RAM showing.  This to me with a 1GB shared memory setting means it is possible to boost the Shared Video Memory to 4.00 GB possibly with a BIOS MOD.  However sadly I don't know of a way to make the Intel HD Graphics 630+ work with the XP driver.  I can only theorize transplanting the BIOS modules for the IGPU from the Ivy Bridge to Coffee Lake and hope some form of it works even in 2D if 3D fails it's better than nothing.

I also agree you should switch to Server 2003 32-Bit and have it patched to fake ID it's XP Pro so all XP programs will install properly if it doesn't like Server 2003 ID.
#3584Mattiwatti
Zitat von ⇗ schreiberstein im Beitrag ¶ #3574

@Mattiwatti
Hello!

Yes, I would strongly consider using Server 2003 instead. I really don't mind, except that I cannot even install nVidia drivers since it requires XP SP3.
I would be happy if you could patch my attached kernel files to report Windows XP SP3.

Theoretically, I could just retain the old files and make them an additional boot option in boot.ini, so I could "switch" between versions, right?

Btw. the same Chrome issues occur on Windows 2003, but the system seems to be much more stable / compatible overall.

(I will try to debug Chrome and find the reason why it says it is "out of memory".)

EDIT: It would be very interesting to know which tool I can use to patch such files.  (So I can eventually do it myself)


Thank you for the advice!
Cheers,
schreiberstein    


Here you go, see attached ZIP for the patch.

Zitat von ⇗ schreiberstein im Beitrag ¶ #3574
Theoretically, I could just retain the old files and make them an additional boot option in boot.ini, so I could "switch" between versions, right?

Yes, and that is exactly what I would recommend. I would say it is best to stick with the normal "Server 2003 mode" until some program requires you to be running XP, in which case you can reboot and reintroduce the system as NT 5.1. Example basic boot.ini:
[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS
redirect=COM1
redirectbaudrate=115200
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Windows Server 2003" /noexecute=optin /fastdetect
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Windows Faux XP" /noexecute=optin /fastdetect /kernel=ntkrnlpa.xp

   

Your addendum that the nVidia drivers specifically require SP3 to install actually made this a bit more work than I anticipated, because there is of course no SP3 for Server 2003. That's not really a problem in itself, since you can change the service pack version to whatever you want by changing a single value in the registry. But this does present a problem when you reboot into "2003 mode" and the service pack number is now obviously invalid for the OS. This may lead to issues with some programs (unlikely but possible), but a more pressing issue is that it will almost certainly break your Windows installation after a while since Windows will think you are trying to tamper with the serial and/or circumvent licensing restrictions. Thus you should install the patch as follows:
1. Install the .reg file included in the ZIP, which will add a "CXPVersion" value to HKLM\SYSTEM\CurrentControlSet\Control\Windows indicating "Service Pack 3", next to the original "CSDVersion" which you should not touch.
2. Copy ntkrnlpa.xp to system32, and modify boot.ini to suit your preferences and make it possible to choose either kernel.
3. After rebooting, the patched kernel will use the bogus "CXPVersion" to report the service pack, while the 2003 kernel will keep using the old unmodified value which will cause it to report SP2 as before.

Additionally attached is "notserver.sys", which is an extremely simple driver I made some years ago after I got sick of programs (that I paid for!) refusing to work after finding that they were running on a "server" OS. (For some reason, partitioning tools seem to be particularly prone to this obnoxious behaviour.) The driver will change your OS to a "workstation" one while it is running, and revert it back to a "server" when it is stopped. While it is possible and fairly easy to patch a kernel image to make a server a workstation or the other way around, this is very dangerous since it will be immediately detected as an attempt at circumventing client-server SKU licensing restrictions and the associated costs. (even if you are doing this to your own detriment by changing a more expensive server OS to a cheaper workstation). Of course, if you work on any patch long enough you can eventually bypass this sort of thing, at which point you've essentially just made a crack. Notserver.sys on the other hand is an extremely simple and dumb driver that you should only use as long as it is necessary, since Windows does not joke around when it thinks you are messing with SKU restrictions and will simply throw you a bugcheck 0x9A (SYSTEM_LICENSE_VIOLATION) until you reformat. OK, now that the warnings are out of the way...
1. Install by copying notserver.sys to system32\drivers and running 'sc create notserver type= kernel binPath= system32\drivers\notserver.sys' (mind the weird spacing).
2. Start the driver with 'sc start notserver'.
3. After you are done installing or running obnoxious program X, stop the driver with 'sc stop notserver'.

The full source code for the driver is provided below:
#include <ntddk.h>

// Ntoskrnl internal variables
static const ULONG ExpMultiUserTS = 0;
static const ULONG ExpHydraEnabled = 1;

// Default backup values
static NT_PRODUCT_TYPE RealProductType = NtProductServer;
static BOOLEAN RealProductTypeIsValid = TRUE;
static ULONG RealSuiteMask = 0x110;

_Use_decl_annotations_
NTSTATUS
DriverEntry(
_In_ PDRIVER_OBJECT DriverObject,
_In_ PUNICODE_STRING RegistryPath
)
{
PAGED_CODE();

UNREFERENCED_PARAMETER(RegistryPath);

// Backup data
RealProductType = SharedUserData->NtProductType;
RealProductTypeIsValid = SharedUserData->ProductTypeIsValid;
RealSuiteMask = SharedUserData->SuiteMask;

// Do the thing
SharedUserData->NtProductType = NtProductWinNt;
SharedUserData->ProductTypeIsValid = TRUE;
SharedUserData->SuiteMask = (1 << TerminalServer) | (ExpMultiUserTS ? 0 : 0x100) | (ExpHydraEnabled ? 0x10 : 0);

DriverObject->DriverUnload = DriverUnload;

return STATUS_SUCCESS;
}

_Use_decl_annotations_
VOID
DriverUnload(
_In_ PDRIVER_OBJECT DriverObject
)
{
PAGED_CODE();

UNREFERENCED_PARAMETER(DriverObject);

// Restore original values
SharedUserData->NtProductType = RealProductType;
SharedUserData->ProductTypeIsValid = RealProductTypeIsValid;
SharedUserData->SuiteMask = RealSuiteMask;
}

   
Zitat von ⇗ schreiberstein im Beitrag ¶ #3574
EDIT: It would be very interesting to know which tool I can use to patch such files. (So I can eventually do it myself)

For this patch in particular I only used one program (plus ⇗ CFF Explorer afterwards to fix PE checksums), and that is IDA Pro. I would highly recommend not looking up the price of an IDA licence at this point, by the way... just a suggestion. In general I would say you need to have at least a basic grasp of x86 assembly and a good understanding of the PE executable format. Experience with programming in C/C++ is not necessary, but will help a lot. You don't need IDA to learn either programming or assembly: you can get started with Visual Studio Community and x64dbg, which are both free. Furthermore IDA does have a trial version of 7.0 which is free to use but limited to disassembling x86 (32 bit) files only.

Mattiwatti has attached files to this post
#3585daniel_k⇗ @Andalu

Are you dual booting that system? If so, please run the benchmark on an OS with official USB3 driver support (Win7 or later).

 

Page 240

#3586daniel_k⇗ @Mattiwatti, really interesting your approach, thanks for sharing it with us!
#3587daniel_k⇗ @schreiberstein

With Mov AX, 0xDEAD's help, I've managed to patch hal from XP SP3 to behave exactly the same as Server 2003.
Will update my patcher soon.

Unfortunately, issues with AMDXHCI driver remain, so I'm trying to fix a driver developed by MCCI (ASMedia, AMD and TI).
#3588cedar⇗ @XPLives
It is XP64 on 'Ryzen" that has unstable audio issue. 64 bit has no MPS. :-(

XP32 has no ACPI or audio  issue, except 1 XP SP3 installed can't use USB3.0 on Ryzen.
It will always BSOD whether install or uninstall any USB3.0 drivers, but USB3.1 is
rock stable. XP32 on Ryzen works fine in ACPI, MPS or Standard Mode.

It would be very fun if someone can "create" MPS mode for XP64 or
patch Win2000 for Intel or Ryzen on modern hardwares.
#3589cedarThread moved to XP64 forum.
#3590genieautravail⇗ @XPLives

What is the smallest case you were going to use this in?

I wanted to mount the motherboard into this case :

⇗ https://www.lc-power.com/en/product/pc-c...ases/lc-1340mi/

The only modern integrated iGPU for XP you could use for graphics card slot free is Ivy Bridge.  For AMD they stopped XP driver support much earlier for APU.  I think around AM2?

No, the last AMD APU with support for XP is Kabini (release in 2014).

PCI coding/decoding controller

This I saw on AMD AM4.  I don't know if this also  existed on earlier AM3, AM2 chipsets or had XP drivers?

No, no driver for XP exist.
#3591schreiberstein⇗ @Mattiwatti

Thanks a lot!
This sounds very interesting / promising! Have you shared this knowledge before? It's amazing and I am sure it will help a lot (whatever the numbers are in 2019) of folks who want to use "personal" applications on Server 2003.
I will give that a try very soon!

We just started learning ARM Cortex M3 assembly at college and I have looked into several resources of Intel x86 assembly.
It would be very interesting to me to learn more about it, since I could use it for so many different things.
Brilliant idea to write your own driver to override the version strings.
I sure have seen some Russian versions of IDA Pro on the internet, haha.

⇗ @daniel_k

Hey! Interesting news! I think you are onto something great with that new XHCI driver and the HAL patcher.
Things seem to be getting better and better for us folks with newer machines.
I have been using XP with the 4GB patch several times now and it seems to be working fine! (Like Server 2003 with native 32GB PAE)
Perhaps it is just a problem of the Advanced Chrome version I am using. Palemoon seems stable, so is every other application.
It is very satisfying. No audio artifacts with integrated Realtek HD either.

Thanks to everyone involved!

Cheers,
schreiberstein
#3592IntiMD⇗ @genieautravail FYI this device is related to the AMD Platform Security Processor (AMD Secure Technology). To put this simply it's AMD equivalent to Intel's Management Engine

BTW if you feel lucky, you can give Snappy Driver Installer Origin a try, so as to try finding the missing drivers for the devices. Assuming that you have working internet connection in the XP machine, go to ⇗ https://www.snappy-driver-installer.org/download/ and download the "Application only" package. Unpack the zipped archive and open the main exe. Choose to download only indexes. After it finishes downloading the indexes it should show you the list of devices that need a driver or need to be updated (depending on the filters set ofc, assuming the filters are default ones). Don't do anything in it (especially DO NOT install the drivers from the app level, even though SDIO is much legit compared to other driver boosters, you need to be cautious. If you're interested, you can hover over a device for info related to the device and drivers offered by the app, including the location of them in the driverpacks that the app offers to download), just close the app. Find the latest snapshot file ending with the .SNP file extension, and upload it to a hosting of your choice (preferably zippyshare or uploadfiles). I'll then check and research the snapshot, hoping the app will find drivers for those unknown devices.
#3593gordo999
Zitat von ⇗ Andalu im Beitrag ¶ #3579
...fdisk still did not see the disk.
⇗ @Andalu ....I am beginning to suspect a driver problem, or a setup issue for your NV drive. An SSD has to emulate a real hard drive and that requires a driver that can interpret data intended for a real, physical drive to the SST format. When you first attached the SSD was it ever visible in disk manager?
If Easeus was able to clone to the SSD then Active@ Disk Editor should be able to see the partition with XP on it. Bootcfg should at least be able to detect an OS on the disk.

When I had this issue, with XP on partition 2 and an old non-working W98 OS on partition 1, nothing could see the XP install except for an XP SP3 disk slipstreamed with the unofficial SP4 update. My stock XP SP3 disk encountered both 0xA5 and 0x7B bsods and could not reach the repair console. However, the slipstreamed SP4 disk had neither and recognized the existing XP installation. That's why I am thinking there are driver issues, either with your SSD drivers or with the SATA/ACPI drivers. Try running an XP SP3, or earlier, installation disk and see if it can see the XP install on your SSD.

You'll have to let it run from boot as it goes past the F6 install window. If you are getting an 0XA5 bsod, hit F7 immediately when you see the screen for the F6 driver install. That gets you past the 0xA5 ACPI error. Unfortunately, you will likely get an 0xF7 error when Windows starts to boot.
#3594gordo999⇗ @XPLives ...update...I now have the old system running with good stability on the 8th gen mobo. I even have a USB connection for keyboard and mouse through an onboard VIA USB2/3 controller. Found the drivers online. The missing drivers are (yellow question marks):
-the NVidia GT 730 graphics driver
-the Creative Xfi drivers
-Intel SPI (flash) controller - A324
-PCI Simple Communications Controller - PCH HECI Controller - A360
-SM Bus controller - A323
-HDAUDIO - NVidia ven_10de_&dev_0051 - CK804 ISA Bridge
-HDAUDI0 -  realteck related from the old mobo. I have uninstalled them.

I am currently trying to get the LAN going because my Internet connection is via the Network to another computer. I have a lot of experience with such installations but it becomes a bit mind bending trying to keep all the requirements in place. Like an 8th gen mobo and x86 drivers.

Zitat von ⇗ XPLives im Beitrag ¶ #3582
What was the old XP system specs?  Motherboard Make / Model?
Intel DQ35JOE from Intel. It would be a lot of trouble at present to set it up since I am using the case for the new mobo. I have set it up on a table top in the past to run a floppy drive.
I can't swap the registry hives one for one since the originals contain a vast amount of data about apps I had installed. I might try it for a laugh to see what happens but right now I am trying to get online so I can activate. Don't want to go through the tedious process  required by phone.
BTW...the matching ID for my SATA controller is pci\ven_8086&dev_a352&cc_0106.
#3595XPLives⇗ @genieautravail
Zitat von ⇗ genieautravail im Beitrag ¶ #3590
@XPLives

What is the smallest case you were going to use this in?

I wanted to mount the motherboard into this case :

⇗ https://www.lc-power.com/en/product/pc-c...ases/lc-1340mi/

The only modern integrated iGPU for XP you could use for graphics card slot free is Ivy Bridge.  For AMD they stopped XP driver support much earlier for APU.  I think around AM2?

No, the last AMD APU with support for XP is Kabini (release in 2014).

PCI coding/decoding controller

This I saw on AMD AM4.  I don't know if this also existed on earlier AM3, AM2 chipsets or had XP drivers?

No, no driver for XP exist.


   
Zitat von ⇗ genieautravail im Beitrag ¶ #3590
@XPLives
No, the last AMD APU with support for XP is Kabini (release in 2014).


Since you are working on building a desktop in the smallest case then the last claimed supported AMD Desktop APU looks like "Kaveri" (2014) which is socket FM2+ which I should not have called AM2 but because they shifted the name to AM4 it makes it easier to follow.

I also found a strange "Kabini" (2013, SoC) that came right before Kaveri.  So if Kaveri works then this Kabini could also.
This one uses Socket AM1 aka Socket FS1b.
Sempron 2650
Sempron 3850
Sempron 3850
Athlon 5350
Athlon 5370

One user here has posted about their Kaveri  build here:

⇗ How To - Create a Windows XP 32bit Digital Audio Workstation (and installing on AMD Socket FM2+ hardware).

I did some more searching and found other possible AMD Desktop APUs that might also work and placed on this page link below.

⇗ Windows 32-Bit OS AMD Discussions 2000 XP 2003 2009

But in the interest of easiest to install since Sandy Bridge beat AMD to the theirs and Ivy Bridge improved upon it I think the best will be based on the Ivy Bridge iGPU for that small case.  Power consumption and efficiency were very good.  Also I noticed easier to find quad core versions compared to the AMD counterpart.

As for how the AMD Kaveri APU compared to the Intel Ivy Bridge iGPU in XP would be interesting to test.

Since I did not invest in AMD CPUs since the K6 series and only recently the AM3 series which I haven't had time to test but doesn't look like any will work on it and I do not know much about the AMD Desktop APU XP performance.  I only have AMD graphics cards but once nVidia released Maxwell it was game over and I switched for lower wattage and higher performance.  XP driver support also went dead first with AMD on their graphics cards so nVidia had an extra year of support.  Only sad thing is they did not release a beta Pascal 1000 series XP driver.
#3596XPLives⇗ @gordo999
Zitat von ⇗ gordo999 im Beitrag ¶ #3594
@XPLives ...update...I now have the old system running with good stability on the 8th gen mobo. I even have a USB connection for keyboard and mouse through an onboard VIA USB2/3 controller. Found the drivers online. The missing drivers are (yellow question marks):
-the NVidia GT 730 graphics driver
-the Creative Xfi drivers
-Intel SPI (flash) controller - A324
-PCI Simple Communications Controller - PCH HECI Controller - A360
-SM Bus controller - A323
-HDAUDIO - NVidia ven_10de_&dev_0051 - CK804 ISA Bridge
-HDAUDI0 -  realteck related from the old mobo. I have uninstalled them.

I am currently trying to get the LAN going because my Internet connection is via the Network to another computer. I have a lot of experience with such installations but it becomes a bit mind bending trying to keep all the requirements in place. Like an 8th gen mobo and x86 drivers.
Zitat von ⇗ XPLives im Beitrag ¶ #3582
What was the old XP system specs?  Motherboard Make / Model?
Intel DQ35JOE from Intel. It would be a lot of trouble at present to set it up since I am using the case for the new mobo. I have set it up on a table top in the past to run a floppy drive.
I can't swap the registry hives one for one since the originals contain a vast amount of data about apps I had installed. I might try it for a laugh to see what happens but right now I am trying to get online so I can activate. Don't want to go through the tedious process  required by phone.
BTW...the matching ID for my SATA controller is pci\ven_8086&dev_a352&cc_0106.


   
Are you saying all these devices you don't have the driver working?
-the NVidia GT 730 graphics driver
-the Creative Xfi drivers
-Intel SPI (flash) controller - A324
-PCI Simple Communications Controller - PCH HECI Controller - A360
-SM Bus controller - A323
-HDAUDIO - NVidia ven_10de_&dev_0051 - CK804 ISA Bridge
-HDAUDI0 -  realteck related from the old mobo. I have uninstalled them.

The only one that should work that you really need is the GT 730.
Use HDMI Video/Audio output solution and you're done.

All other devices are not required.

The Intel DQ35JOE is ancient.  Was that the last motherboard you've used since going to Coffee Lake?  You really dragged on that thing forever.

No PS/2 ports luckily USB 2.0 working on that.

Easiest to setup again without installing in the new case.  Just unhook the PSU from the case and place motherboard onto a motherboard box top.  Hook up the PSU.  Then add the old memory back if you've removed it.  Then hook up the SATA drive and boot into XP.  Add USB keyboard/mouse to get info.  And hook up old VGA monitor to integrated VGA port.
#3597gordo999
Zitat von ⇗ XPLives im Beitrag ¶ #3596
The only one that should work that you really need is the GT 730.
Use HDMI Video/Audio output solution and you're done.
⇗ @XPLives ...not following you. What is HDMI Video/Audio solution? I got the Creative Xfi sound card going and I have been working on the Nvidia card but an INF file I have lists it and the installer claims the hardware is not right. Go figure.

Spoke too soon. I tried one last time to load Nvidia drivers with a popup Add New Hardware windows and this time it worked. After a reboot, I was in high definition mode as opposed to a super VGA mode.  In Control Panel\Display they list the driver as Nvidia GT 730, but nowhere else. Normally Nvidia has a presence under Start\Programs but there's nary a sign of them. No monitor, no setup facility...nada. There's hardly a mention under Program Files either. Weird.
#3598XPLives@quote=gordo999

Zitat von ⇗ gordo999 im Beitrag ¶ #3597
Zitat von ⇗ XPLives im Beitrag ¶ #3596
The only one that should work that you really need is the GT 730.
Use HDMI Video/Audio output solution and you're done.
@XPLives ...not following you. What is HDMI Video/Audio solution? I got the Creative Xfi sound card going and I have been working on the Nvidia card but an INF file I have lists it and the installer claims the hardware is not right. Go figure.

Spoke too soon. I tried one last time to load Nvidia drivers with a popup Add New Hardware windows and this time it worked. After a reboot, I was in high definition mode as opposed to a super VGA mode.  In Control Panel\Display they list the driver as Nvidia GT 730, but nowhere else. Normally Nvidia has a presence under Start\Programs but there's nary a sign of them. No monitor, no setup facility...nada. There's hardly a mention under Program Files either. Weird.


Use Device Manager and point to the driver INF folder directly.  Don't use the Installer.  If the graphics card doesn't show up as the default selected on the list then pick GT 710.

Just use settings, control panel, display and there will be a tab there.
#3599genieautravail
Zitat von ⇗ IntiMD im Beitrag ¶ #3592
@genieautravail FYI this device is related to the AMD Platform Security Processor (AMD Secure Technology). To put this simply it's AMD equivalent to Intel's Management Engine

BTW if you feel lucky, you can give Snappy Driver Installer Origin a try, so as to try finding the missing drivers for the devices. Assuming that you have working internet connection in the XP machine, go to ⇗ https://www.snappy-driver-installer.org/download/ and download the "Application only" package. Unpack the zipped archive and open the main exe. Choose to download only indexes. After it finishes downloading the indexes it should show you the list of devices that need a driver or need to be updated (depending on the filters set ofc, assuming the filters are default ones). Don't do anything in it (especially DO NOT install the drivers from the app level, even though SDIO is much legit compared to other driver boosters, you need to be cautious. If you're interested, you can hover over a device for info related to the device and drivers offered by the app, including the location of them in the driverpacks that the app offers to download), just close the app. Find the latest snapshot file ending with the .SNP file extension, and upload it to a hosting of your choice (preferably zippyshare or uploadfiles). I'll then check and research the snapshot, hoping the app will find drivers for those unknown devices.



thank you!
I will try Snappy in the next weeks.
Not before, because I have ordered some new DDR4 memory modules for the motherboard and I will do everything in the same time.
#3600genieautravail⇗ @XPLives

Yes,

Socket AM1 is for kabini APU.

I have one Athlon 5350 APU and one Sempron 3850 APU with this motherboard:
⇗ https://www.asrock.com/mb/AMD/AM1H-ITX/

 

Page 241

#3601gordo999
Zitat von ⇗ XPLives im Beitrag ¶ #3598
Use Device Manager and point to the driver INF folder directly.  Don't use the Installer.  If the graphics card doesn't show up as the default selected on the list then pick GT 710. Just use settings, control panel, display and there will be a tab there.
⇗ @XPLives ...maybe you could clarify something. There was no listing for the NVidia card in Device Manager. The Display entry had a generic VGA driver. Are you saying I should have used the generic driver entry to load the NVidia drivers? Furthermore, there is an entry under the USB controller section for the VIA USB drivers for their USB card I have plugged into the PCIe sockets. Is there a way for me to install drivers for the B360M's mobo onboard chipset from DM without disturbing the VIA drivers?
#3602gordo999
Zitat von ⇗ genieautravail im Beitrag ¶ #3590
I wanted to mount the motherboard into this case :
⇗ @genieautravail ...as someone with scads of experience with hardware I suggest with a case that the rule of thumb is "the bigger the better". Those smaller, sleek cases look good, but in the heat of summer you can almost bet your processor temperature will skyrocket. Heat dissipation from the processor is based on conduction of heat to the heat sink (physical contact via thermal paste), convection of heat from the heat sink to the surrounding air, and the further conduction of heat away from the heat sink by external fans.  Since the heat dissipation by conduction is limited by the thermal gradient between the processor and the heat sink, the major dissipation factor is how fast you can get the heat away from the heat sink and how cool you can keep the heat sink. Heat will flow faster when the temperature between source and sink is higher.

I run a much larger case open because I am always in there tinkering. During summer, I noticed the CPU temperature reaching 80C, an alarming observation for anyone associated with hardware. I immediately pointed a fan with a 12" blade at the motherboard and the temperature dropped in a few minutes to a more acceptable 50C range. I got it even lower by positioning the external and larger fan. The smaller fans in those slim-line boxes is not enough to carry off the heat of a multi-core processor under load in higher ambient room temperatures unless you have a water-cooled heat sink on the processor . If you look in the computer room of a major commercial or industrial environment, the rooms are air conditioned to the point it can be uncomfortably cool in there. That's not for the benefit of the employees in the room.
#3603schreibersteinI just attempted to install Visual Studio 6.0 on my XP machine and it failed without any error messages. I assume this is all due to NTVDM, since I did not encounter such issues on my XP VM. Did not find a way to temporarily disable the AMD USB driver, so I guess I will just wait for another driver until I deploy a final system for myself.
(I am using PS/2 keyboard and mouse)
I also attempted disabling NTVDM via group policy, but it did not change anything for the better.

VMware Workstation 10 installed fine on Server 2003, but starting a VM took about two minutes, mouse went unresponsive (like on Windows 98 with interrupt issues) and the Linux kernel (Ubuntu 64) crashed while booting (Kernel Panic - Something about interrupts)
This might be due to an incompatibility with the new CPU and this old version of VMware though. I will look into that.

⇗ @Mattiwatti
Thank you again for your patched kernel. I was able to install the nVidia drivers (it seems, but some sub installers failed, but that might have been due to the previously failed i stallation.) I am now able to use the nVidia control panel to configure my dual monitor setup. Very cool!

Id personally prefer XP for compatibility though if daniel_k and 0x pull off the 4GB+ hal.dll patching. Aside from NTVDM, there is no real showstopper for me on XP, I think.
I am really happy about it. Thanks to all.

Cheers,
schreiberstein
#3604gordo999
Zitat von ⇗ schreiberstein im Beitrag ¶ #3603
I just attempted to install Visual Studio 6.0 on my XP machine and it failed without any error messages.
⇗ @schreiberstein ...there is usually an installation log. There is usually a setupapi.log somewhere and Visual Studio may have their own.
#3605cedar⇗ @gordo999
Once awhile I place foods that need defrosted from the fridge
between the fan and the open case computer.
#3606gordo999
Zitat von ⇗ cedar im Beitrag ¶ #3605
Once awhile I place foods that need defrosted from the fridge
between the fan and the open case computer.
⇗ @cedar ...I know this discussion is getting off topic but I thought it might be valuable information related to the topic since the issue was raised within the thread in relation to the topic.

Never thought of your idea re thawing food but a long time ago when I worked repairing computers I encountered a situation where a power transistor had been mounted on a cabinet cover (back door) as a heat sink. You could not hold your finger on the transistor's metal case because it would burn you severely. The metal around the transistor was so hot, I swear you could have fried an egg on it. That transistor was capable of carrying 8 amps unsinked and that's a lot of current to run through a tiny transistor junction. It also produces a lot of heat.

My processor is an Intel i5-8400 and it is rated at 65 watts. It only uses 70% of rated capacity at full load "at room temperature". That 30% hedge can soon be used up if the heat in the case gets too hot. Even at 50 watts, and a presumed processor voltage of 1.2 volts, that's a current draw of 41 amps, 5 times what my power transistor drew. Mind you, a processor draws the current through 50 million+ transistors. All the same, it amounts to 5 times the heat on my single power transistor and that heat needs to be well dissipated as well as being supplied from an adequate power rated supply. As you claimed, you can use the heat to thaw out frozen food. The processor can draw that much current due to DC-DC buck converters used on modern mobos that step down the 3.3 volt PS line to 1.2 volts while increasing the current, just like a step down transformer.
#3607cedar⇗ @gordo999
Heating problem is very real in the summer.
My old Pentium DualCore used to be overclocked 3+Ghz via Setfsb
utility for several years. Bought an Arctic Freezer Pro which was several mm
oversize and didn't fit the Asrock VSTA board. So it needs open case and
real mid size fan blow to it. Now I  underclock it to run it, due to its
old age. I also underclock the video card using an older version Afterburn.
Otherwise it won't run stable in the hot summer. I was not joking about
the defrosting. The cooling affect is quite small, but it is there and harmless.
#3608gordo999
Zitat von ⇗ daniel_k im Beitrag ¶ #3573
@gordo999, I was patching a driver....
⇗ @daniel_k ...speaking of patching drivers someone mentioned that you had worked on LAN drivers recently. Not asking you to patch anything for me but would you read over this issue and let me know what you think?

I found a possible XP LAN driver for my Asus B360M which uses an Intel I219-V, according to the W7 Network section in Device Manager. The driver is in the package ProWin32Legacy.exe from Intel. My DEV_15BC is listed in the INF file but all the references are to W7, 6.1.1. I changed all the 6.1.1 settings to 5.1.1 and XP happily loaded everything to my registry and the driver e1d6232.sys to %windir%\System32\drivers. However, the driver won't start and in XP Device Manager it is marked as error (Code: 39) meaning the driver MIGHT be corrupted or missing.

I am wondering if in your experience drivers get marked internally as being for one OS only. I can, and will find out for myself, but I thought you might be able to help me not re-invent the wheel, so to speak. BTW...I got the Creative XFi card going with all the bells and whistles  (sounds really good) and the Nvidia graphics card GT 730.
#3609XPLives⇗ @gordo999
Zitat von ⇗ gordo999 im Beitrag ¶ #3601
Zitat von ⇗ XPLives im Beitrag ¶ #3598
Use Device Manager and point to the driver INF folder directly.  Don't use the Installer.  If the graphics card doesn't show up as the default selected on the list then pick GT 710. Just use settings, control panel, display and there will be a tab there.
@XPLives ...maybe you could clarify something. There was no listing for the NVidia card in Device Manager. The Display entry had a generic VGA driver. Are you saying I should have used the generic driver entry to load the NVidia drivers? Furthermore, there is an entry under the USB controller section for the VIA USB drivers for their USB card I have plugged into the PCIe sockets. Is there a way for me to install drivers for the B360M's mobo onboard chipset from DM without disturbing the VIA drivers?


   
On your regular fresh XP installation it will show up as "Video Controller (VGA Compatible)", but on my automated installation that I'm working on using my modified driver it installs directly so I only see the graphics card name.

Once the drivers are installed for a device installing another driver for another device does not affect the devices already installed.  However if the drivers are using the same shared names and your modified driver overwrites the original driver it may cause it to fail.  You will usually get an overwrite prompt popup to confirm.  So in that case of two nVidia graphics cards of different generations it is necessary to modify the driver filenames as well since the drivers are different but use the same filenames.  The other method is using two different graphics card brands AMD and nVidia and not modify the drivers.  But recently I found AMD driver causes the nVidia driver or card to somehow BSOD.  Once the registries are modified you will have to find a way to purge it or go back to an earlier image before any graphics drivers were installed.  So that's why it is better to choose one brand and in my experience nVidia has the best performance for XP.  Once the two drivers are mixed in the same system only the AMD continues to work without BSOD.  The other option is if you are using both AMD for 98SE and nVidia for XP never install the AMD drivers and you'll be fine.

So if you plan on using a VIA USB 3.0 PCIe card and using a modified VIA USB 3.0 driver for your onboard Intel USB 3.0 ports it might work, might not work, or behave erratically.  Also if the drivers are written by the same manufacturer it's also possible they could conflict even though different card brands.  Only way to know for sure is to test it.
#3610XPLives⇗ @genieautravail

Zitat von ⇗ genieautravail im Beitrag ¶ #3600
@XPLives
Yes,

Socket AM1 is for kabini APU.

I have one Athlon 5350 APU and one Sempron 3850 APU with this motherboard:
⇗ https://www.asrock.com/mb/AMD/AM1H-ITX/

Yeah it's strange AMD use FM1 and AM1.  Kaveri is probably the last generation for you.  If you go desktop and discrete GPU then AM3+ is the best XP compatible.

Interesting motherboard AM1H-ITX.  Has an option to use an external power brick.  At first I thought it was missing the ATX connector or why put that on the rear then it states includes both so if you use power brick you could use a smaller case.  I don't think any Intel one has this feature that I've seen but I do not buy Mini ITX size motherboards just ATX.  But you gave me nice idea to hunt for a Sandy/Ivy Bridge Mini ITX for a small case system build maybe one day for experiment.  Have you tried Pico PSU or fanless SFF PSU?

Do you have any Kabini laptop with XP some were < 10W.

If you want to go super small I remember some USB computer sticks from Intel.  I actually wanted to test if they could use XP.
#3611XPLives⇗ @gordo999
Zitat von ⇗ gordo999 im Beitrag ¶ #3606
Zitat von ⇗ cedar im Beitrag ¶ #3605
Once awhile I place foods that need defrosted from the fridge
between the fan and the open case computer.
@cedar ...I know this discussion is getting off topic but I thought it might be valuable information related to the topic since the issue was raised within the thread in relation to the topic.

Never thought of your idea re thawing food but a long time ago when I worked repairing computers I encountered a situation where a power transistor had been mounted on a cabinet cover (back door) as a heat sink. You could not hold your finger on the transistor's metal case because it would burn you severely. The metal around the transistor was so hot, I swear you could have fried an egg on it. That transistor was capable of carrying 8 amps unsinked and that's a lot of current to run through a tiny transistor junction. It also produces a lot of heat.

My processor is an Intel i5-8400 and it is rated at 65 watts. It only uses 70% of rated capacity at full load "at room temperature". That 30% hedge can soon be used up if the heat in the case gets too hot. Even at 50 watts, and a presumed processor voltage of 1.2 volts, that's a current draw of 41 amps, 5 times what my power transistor drew. Mind you, a processor draws the current through 50 million+ transistors. All the same, it amounts to 5 times the heat on my single power transistor and that heat needs to be well dissipated as well as being supplied from an adequate power rated supply. As you claimed, you can use the heat to thaw out frozen food. The processor can draw that much current due to DC-DC buck converters used on modern mobos that step down the 3.3 volt PS line to 1.2 volts while increasing the current, just like a step down transformer.


   
I don't think i5-8400 can get that hot but gets pretty warm if 4.0 GHz.  Check your temps for 800 MHz mine runs at 27.0-29.0C.  Very nice for fanless XP setup.   Closed system no ventilation maybe will increase temps 10.0C?  Once Ice Lake / Tiger Lake 10nm we can see if they will drop to 400 MHz and no heatsink needed.
#3612Mattiwatti
Zitat von ⇗ gordo999 im Beitrag ¶ #3608
Zitat von ⇗ daniel_k im Beitrag ¶ #3573
@gordo999, I was patching a driver....
⇗ @daniel_k ...speaking of patching drivers someone mentioned that you had worked on LAN drivers recently. Not asking you to patch anything for me but would you read over this issue and let me know what you think?

I found a possible XP LAN driver for my Asus B360M which uses an Intel I219-V, according to the W7 Network section in Device Manager. The driver is in the package ProWin32Legacy.exe from Intel. My DEV_15BC is listed in the INF file but all the references are to W7, 6.1.1. I changed all the 6.1.1 settings to 5.1.1 and XP happily loaded everything to my registry and the driver e1d6232.sys to %windir%\System32\drivers. However, the driver won't start and in XP Device Manager it is marked as error (Code: 39) meaning the driver MIGHT be corrupted or missing.

I can't speak for ⇗ @daniel_k, and perhaps he has some driver (modified or not) hidden up his sleeve that will work for the I-219V. But as far as I know this range of onboard ethernet adapters (I-217V, I-218V, I-219V) has never seen XP-compatible drivers released by Intel. I will explain why the driver you took can't work on NT 5.1 or 5.2 regardless of .inf file modification, since it may help in the future (exact results may differ, since I'm probably using a different version of the driver and also on x64):

1. Make a new folder on your desktop named 'drivers' (any name works) and drop the .sys file(s) that the .inf will install for you in there. In this case that would just be e1d6232.sys.
2. Copy any dependencies living in system32\drivers to the same folder. Since we don't yet know which these are, and I don't want to spoil the surprise, simply copy all .sys files from system32\drivers to the folder on your desktop. Why not drop e1d6232.sys into system32\drivers? Because this way you are free to work with a hypothetical modified drivers folder (e.g. using some Vista or Windows 7 drivers) without messing up your real installation.
3. Run ⇗ Dependency Walker, making sure to use the version with the right bitness for your OS (x86 vs x64).
4. Open e1d6232.sys in the 'drivers' folder that lives on your desktop.
5. At this point you will get an error about missing dependencies, which is the guarantee that the .sys driver will not work on an unmodified system.
6. Fortunately Dependency Walker does a lot more than saying something is wrong (like Windows does, and even then you have to be aware which cryptic error codes map to which dependency problem). It also shows which functions are missing and in which files the driver expects these to be. (Note that this works the same way for user mode binaries with .exe/.dll extensions.)
7. Upon closer inspection you will see that the driver is missing several functions in ndis.sys, which is the general purpose network driver almost all network-related drivers will depend on. One hypothetical (and not entirely stupid, given that it works for some other drivers) fix that one could come up with is to simply take ndis.sys from Windows 7. Do so now by replacing ndis.sys (in the folder on your desktop!) with one from Windows 7 of the same bitness. Close the file in Dependency Walker and reopen it.
8. You will once again receive an error, this time related to a missing msrpc.sys. On your system you may also have missing ntoskrnl.exe dependencies (I use a highly modified kernel with about ~400 extra exports so I can't really check this). The 'only msrpc.sys' case is the optimistic one. Let's also assume we don't already know what this driver is and what it depends on... Repeat the procedure from above by naively dropping msrpc.sys from Windows 7 into the drivers folder. Close and reopen the Intel .sys file.
9. This is the part where you will hit a brick wall due to missing dependencies in ntoskrnl.exe. Whether or not such a missing dependency is truly fatal requires some knowledge of NT internals, and even then the definition of 'fatal' can be argued since anything can in principle be done given enough time... but I will call this a fatal scenario. What's the problem? Msrpc.sys requires the ALPC (Advanced or Asynchronous, depending on whom you ask, Local Procedure Call) subsystem to be present. You can tell this is the case from the various ZwAlpcXxx functions the driver requires.

Several (more simple) drivers can be made to work this way by using the above procedure (taking one or two simple export drivers from a newer Windows version if needed), which is why I outlined it in detail even though in this case it still ended up not fixing anything. At the very least you will be able to see why a driver's dependencies cannot be satisifed instead of the useless error codes that Windows returns.

Back to reality... what should you do? Well, first of all, await ⇗ @daniel_k's response in case he's aware of a fix or workaround for this particular adapter. Personally, what I have done is buy a simple ⇗ Intel Gigabit CT Desktop Adapter (from ~2009), which is still a perfectly acceptable 1Gbps card today and fits in a PCIe x1 slot. This name is a bit generic: the precise adapter you are looking for has ID PCI\VEN_8086&DEV_10DE which translates to (in the INF) "Intel(R) 82567LM-3 Gigabit Network Connection" or (PCI ID repository/Linux kernel) "Intel Corporation 82574L Gigabit Network Connection". Beware that Intel has memory holed all XP/2003-compatible drivers 1984 style and you will not find them on intel.com. The latest compatible version of the network drivers I was able to find using Google was v18.3 (for NT 5.2 x64).
#3613Mattiwatti
Zitat von ⇗ schreiberstein im Beitrag ¶ #3591
@Mattiwatti

Thanks a lot!
This sounds very interesting / promising! Have you shared this knowledge before? It's amazing and I am sure it will help a lot (whatever the numbers are in 2019) of folks who want to use "personal" applications on Server 2003.


You can hereby consider it shared ;)

If you feel like the "faux XP" kernel is worthy of its own thread or should be shared somewhere else, feel free to do so. I don't own the copyright to the file, and in so far as I own the copyright to any modifications I release them to the public domain. I just don't want to become the "maintainer" of the patch with all the boring duties that come with such a job. Although if you have any problems with it you can always try to @ping me by name (or PM me) and see if I show up and am able to fix the problem.
#3614genieautravail
Zitat von ⇗ XPLives im Beitrag ¶ #3610
Interesting motherboard AM1H-ITX.  Has an option to use an external power brick.   At first I thought it was missing the ATX connector or why put that on the rear then it states includes both so if you use power brick you could use a smaller case.  I don't think any Intel one has this feature that I've seen but I do not buy Mini ITX size motherboards just ATX.   But you gave me nice idea to hunt for a Sandy/Ivy Bridge Mini ITX for a small case system build maybe one day for experiment.  Have you tried Pico PSU or fanless SFF PSU?


Not for the moment, the motherboard is mounted in the same case that I wanted to use for the BIOSTAR motherboard:

⇗ https://www.lc-power.com/en/product/pc-c...ases/lc-1340mi/

I have 4 of these cases.

Zitat von ⇗ XPLives im Beitrag ¶ #3610
Do you have any Kabini laptop with XP some were < 10W.


Not a laptop, but in one of my LC-POWER cases In have mounted this motherboard:

⇗ https://www.biostar.com.tw/app/en/mb/int...on.php?S_ID=711

The AMD E1-2100 APU has a TDP of 9W. More informations here:

⇗ http://www.cpu-world.com/CPUs/Jaguar/AMD...%20E1-2100.html

Zitat von ⇗ XPLives im Beitrag ¶ #3610
If you want to go super small I remember some USB computer sticks from Intel.  I actually wanted to test if they could use XP.


Not truly an USB computer stick, but I have just installed XP on a mini PC equiped with an AMD A6-1450 APU with a TDP of 8W.
See here:

⇗ XP and mSATA

More informations on the APU:

⇗ http://www.cpu-world.com/CPUs/Jaguar/AMD...%20A6-1450.html
#3615Andalu
Zitat von ⇗ daniel_k im Beitrag ¶ #3585
@Andalu

Are you dual booting that system? If so, please run the benchmark on an OS with official USB3 driver support (Win7 or later).


Your predictions were correct. Even in Windows 7 the performance of the toshiba external disk connected to the USB3 port are not as expected. A tiny better with the samsung M3 portable, but the main problem is that there is no way to make the usb3 function available on my crazy board also after a shutdown.
At this point, I'm thinking it's time to put this board aside, also because I have another board where usb3 doesn't work at all and I still have not found a way to solve.

 

Page 242

#3616Andalu⇗ @gordo999
Zitat von ⇗ gordo999 im Beitrag ¶ #3593
Zitat von ⇗ Andalu im Beitrag ¶ #3579
...fdisk still did not see the disk.
@Andalu ....I am beginning to suspect a driver problem, or a setup issue for your NV drive. An SSD has to emulate a real hard drive and that requires a driver that can interpret data intended for a real, physical drive to the SST format. When you first attached the SSD was it ever visible in disk manager?
If Easeus was able to clone to the SSD then Active@ Disk Editor should be able to see the partition with XP on it. Bootcfg should at least be able to detect an OS on the disk.

When I had this issue, with XP on partition 2 and an old non-working W98 OS on partition 1, nothing could see the XP install except for an XP SP3 disk slipstreamed with the unofficial SP4 update. My stock XP SP3 disk encountered both 0xA5 and 0x7B bsods and could not reach the repair console. However, the slipstreamed SP4 disk had neither and recognized the existing XP installation. That's why I am thinking there are driver issues, either with your SSD drivers or with the SATA/ACPI drivers. Try running an XP SP3, or earlier, installation disk and see if it can see the XP install on your SSD.

You'll have to let it run from boot as it goes past the F6 install window. If you are getting an 0XA5 bsod, hit F7 immediately when you see the screen for the F6 driver install. That gets you past the 0xA5 ACPI error. Unfortunately, you will likely get an 0xF7 error when Windows starts to boot.



   
About the XP installation on the nvme disk please see my post ¶ here
I don't understand why the XP txt installation setup has completed with no problems and the GUI setup does not start anyway.

The nvme disk is immediately seen in the XP mechanical disk as a generic PCI device and after installing the ofa driver 1.3 and storport.sys 5.2.3790.4173 it is correctly recognized as disk drive.

Active@ Disk Editor was able to see the partition with XP on it, but i don't know what to modify.  With Macrium Reflect, when I tried to restore an image created previously from the XP disk (with 512 bytes per sector), I got the error: "the target disk has an incompatible sector size for this operation".
The bootcfg /scan command from the recovery console also does not detect the XP installation on the nvme disk (drive D:).
#3617Andalu⇗ @XPLives
Zitat von ⇗ XPLives im Beitrag ¶ #3577
How large is the SSD?  If it's 128GB and smaller you should be able to create the partitions.  If FDISK isn't allowing you to enter then maybe using a hex editor and wiping Sector 0 of the NVME to 0s.  Then trying to boot up on USB floppy drive and 98SE DOS and try FDISK again.  If not then you might try to use a FAT32 partitioner to make it visible to 98SE DOS.

Use this link
⇗ Data Backup and Recovery for MBR Drives

Look for the FAT32 formatting program downloaded from here:
And use that link to download that program I used.

If you still can't see the NVME in 98SE DOS you can try

FDISK /MBR and see what happens if this fixes it.

Once you get into FDISK you then will have to set the first partition as Active assuming you could then delete any partitions existing and create a new FAT16 2GB partition.  The if this works reboot and then FDISK again to create the larger extended partition of the remaining space with FAT32. Then you can make the logical drive partitions for D: E:.


   
Zitat von ⇗ XPLives im Beitrag ¶ #3581
Try the FAT32 GUI formatter I mentioned in the link.  I don't know if you are using Windows 7 or 10 but I think this program can work in it.  Is there a NVME to USB adapter you can use?  If NVME to USB adapter exists then maybe you can do it as a USB device.  I usually use SATA to USB adapter.  Also 500GB will be a bit too large for my method.  You probably could still do the FAT16 2GB, but for the Extended Partition Size you will have to self cap it to 9999 MB.  Then you can create a 8GB -> 32GB D: for XP, E: just the rest of it.  Anything above the 102GB you can then use XP Disk Management and create it as NTFS partitions to utilize the 300+GB left over.  Don't use Windows Vista->10 to create or delete any of the partitions as you could corrupt it.  It's okay to install Windows Vista->10 onto the XP created NTFS partitions with no problems.
   
At moment I have no NVME to USB adapter and I don't know if my nvme disk can effectively work on it. I tried again with win98SE bootable pendrive but fdisk still does not recognize the nvme disk.
#3618cedar⇗ @Andalu
Have you tried XXclone or Paragon rescue kit 9 free edition?
They make unbootable hard disk partition bootable for cloning W2k, XP.
It worked for my SSD 120GB on Ivy system test some months ago.
Maybe they have newer versions that can work for you.
#3619diderius6⇗ @Andalu

Please tell me the exact name of the nvme disk,
which makes problems to boot XP SP3 from it.
I will buy and check )
Dietmar
#3620cedarPartial install(with errors) of 64bit_Win7_Win8_Win81_R272 Realtek
audio driver overwrite some files on another version of installed Realtek
audio driver stabilize my XP64 SP2 Ryzen. I tested Kmplayer can play
several hours of video with "sounds" without rebooting XP64.

However, test playing 10 epsodes of tv shows overnight still reboot
XP64 at some point last night. Nevertheless, It is a big improvement.
Lot more tests still needed. Like whether it can encode while watching
videos. or using ffmpeg ,Virtualdub64 or 32 bit...

edIt: This won't install(partially) under XP64. unless extract the file
to a folder and add new section AND your hardware ID from:
eg. HDX.inf

[Manufacturer]
%MfgName% = AzaliaManufacturerID, NTamd64.6.0

[AzaliaManufacturerID.NTamd64.6.0]
"Realtek High Definition Audio" = IntcAzAudModel, HDAUDIO\FUNC_01&VEN_10EC
"Realtek High Definition Audio" = IntcAzAudModel, HDAUDIO\FUNC_01&VEN_10EC&DEV_0861
"Realtek High Definition Audio" = IntcAzAudModel, HDAUDIO\FUNC_01&VEN_10EC&DEV_0880

to:

[Manufacturer]
%MfgName% = AzaliaManufacturerID, NTamd64.6.0, NTamd64

[AzaliaManufacturerID.NTamd64]
;Your audio hardware ID here

[AzaliaManufacturerID.NTamd64.6.0]
"Realtek High Definition Audio" = IntcAzAudModel, HDAUDIO\FUNC_01&VEN_10EC
"Realtek High Definition Audio" = IntcAzAudModel, HDAUDIO\FUNC_01&VEN_10EC&DEV_0861
"Realtek High Definition Audio" = IntcAzAudModel, HDAUDIO\FUNC_01&VEN_10EC&DEV_0880
#3621Andalu⇗ @cedar
Thank your for the info. I'll give a try.
#3622Andalu⇗ @diderius6
I am sorry and I thank you very much for your kind availability but I cannot allow it. My board already boots from a M.2 SSD disk, so I am in no hurry to solve. I asked for help in this great forum to have the opportunity to learn something new about my passion (and also to write better in english which is the most difficult thing for me ....it's still so poor). I ask you the courtesy of not making any purchase to solve the problem I have. Thank you again so much ;)


P.S.: I take this opportunity to apologize if I have caused any disturbance for my requests.
#3623diderius6⇗ @Andalu

Is this M.2 SSD disk, from where you can boot XP SP3, a real nvme device
Dietmar


PS: Is there a name on the NVME disk written by Samsung,
that you have extracted from samsung x5 portable ssd?

EDIT: The nvme in the X5 case seems to be very near to this one.
I have done nvme boot of XP SP3 with this device.

Samsung SSD 970 EVO 500GB, M.2 (MZ-V7E500BW)
(351)
Info beim Hersteller
Bauform Solid State Module (SSM)
Formfaktor M.2 2280
Schnittstelle M.2/M-Key (PCIe 3.0 x4)
Lesen 3400MB/s
Schreiben 2300MB/s SLC-Cached (600MB/s TLC)
IOPS 4K lesen/schreiben 370k/450k
Speichermodule 3D-NAND TLC, Samsung, 64 Layer (V-NAND v4)
TBW 300TB
Zuverlässigkeitsprognose 1.5 Mio. Stunden (MTBF)
Controller Samsung Phoenix (S4LR020), 8 Kanäle
Cache 512MB (LPDDR4), SLC-Cache (4-22GB)
Protokoll NVMe 1.3
Datenschutzfunktionen 256bit AES, TCG Opal 2.0
Leistungsaufnahme 10W (maximal), 5.7W (Betrieb), 0.03W (Leerlauf), 0.005W (Schlafmodus)
Abmessungen 80x22x2.38mm
Besonderheiten L1.2 Low-Power-Standby
Herstellergarantie fünf Jahre oder bis Erreichen der TBW
Gelistet seit 24.04.2018, 18:03
#3624Andalu⇗ @diderius6
your Samsung SSD 970 EVO 500GB, M.2 (MZ-V7E500BW) is similar to the model I have. The controller is the same.
How did you boot XP from it?


edit: my board boots correctly from the Sandisk SD8SN8U-256G-1012
#3625diderius6⇗ @Andalu

May be the reason is, that the Samsung 970 EVO has 512-e mode.
This means, internal it uses 4096 Byte/sector but to the environment it acts
like 512 Byte/sector. Only from 512 Byte/sector XP SP3 can boot.
When the internal controller of the Samsung nvme in the X5 case ONLY works
with real 4096 Byte/sector you can use it under XP only as USB device in an USB case
Dietmar
#3626Andalu⇗ @diderius6
Thanks for the explanation. You confirmed what ⇗ @gordo999 reported in a previous post, the trouble is there, XP can't boot from a nvme disk with 4096 byte per sector and no 512 byte emulation mode. But how can I figure if my nvme disk has or not the 512e? I understand, if I had it I wouldn't have found so many difficulties for cloning the disk or restoring an XP image and also the partitioning software would have listed the nvme disk.
#3627diderius6⇗ @Andalu
For nvme disks I also do not know, how to decide between real and only 4096 bytes per sector or 512 emulated.
On the WD harddisks in their description is written, that they have 512e mode
Dietmar
#3628gordo999⇗ @Mattiwatti ....thank you kindly for the detailed and in-depth explanation. I have enough experience with reversing and the NT Kernel to follow you and I would dearly love getting into ntoskrnl to the level you mention. However, the only debugger of which I am aware that will trace through ring 0 code is softice. I have asked experienced people if windbg will trace through it but the answers I receive are vague as to what constitutes ring 0. Anytime I have tried to enter ring 0 with wdbg at a sysenter point, it turfs me out the other end without tracing through the code. Having said that, since I am working in x86 code, I would love to get SI going on this converted XP machine and I know it won't be easy. Tried the other night for a laugh and got a bsod with stop: 0x24, apparently related to ntfs.sys. Does that mean SI only runs on a FAT32 system? Don't think so since I recall using it to trace into the MFT via ntfs.sys. Don't want to get off-topic talking about debuggers but if you have anything to add on that topic perhaps you would be kind enough to PM me.

Your explanation re dependency walker is interesting. It had occurred to me to try it at some point but it had not occurred to me to load the entire drivers directory into the same test folder. Why not the entire sys32 directory as well? Having said that, if we are creating a directory with all those files, should it not work by running DW on a W7 machine?

Zitat von ⇗ Mattiwatti im Beitrag ¶ #3612
...what I have done is buy a simple ...Intel Gigabit CT Desktop Adapter
From what I gather I'd need to find an older version. I looked the adapter up on the Intel site and they claim the 32-bit version won't run on anything below W7. Of course, that's Intel. They have unfortunately abandoned ship. I came across an adapter last night that is a USB - Network adapter....don't know if that would work.

BTW...I managed to get online last night using a Cisco AM10 wifi adapter. It plugs into a USB port and for some reason sets itself up as a drive. Bit of a nuisance. The good news is that I am now activated.
#3629gordo999
Zitat von ⇗ Andalu im Beitrag ¶ #3624
your Samsung SSD 970 EVO 500GB, M.2 (MZ-V7E500BW) is similar to the model I have.
⇗ @Andalu ...check out this troubleshooting FAQ from Samsung. They talk about a Magician utility for checking the drive.
⇗ https://www.samsung.com/semiconductor/minisite/ssd/support/faqs-02/
Also, does the drive show up correctly in BIOS and in Device Manager? Based on the information in the Samsung FAQ, your driver may need a mod to run under XP.
#3630gordo999
Zitat von ⇗ XPLives im Beitrag ¶ #3609
So if you plan on using a VIA USB 3.0 PCIe card and using a modified VIA USB 3.0 driver for your onboard Intel USB 3.0 ports it might work, might not work, or behave erratically.  Also if the drivers are written by the same manufacturer it's also possible they could conflict even though different card brands.  Only way to know for sure is to test it.
⇗ @XPLives ...thanks for the info. Not sure if VIA drivers will work with the B360 USB hardware since VIA uses its own onboard USB controller. I did try the drivers for XP by ⇗ @diderius6 but they crashed. I have not had time to look into this since Dietmer specified the acpi.sys driver by daniel_k and I am using a later acpi version by him. See post #2072 on page 139.

 

Page 243

#3631daniel_kWinXPPAE 2.0, a small utility to patch all kernel and hal files, supporting all languages and versions 5512 (SP3) and later:


What's new:

- thanks to ⇗ @Mov AX, 0xDEAD, now includes HAL patches for ACPI Timer fix and proper memory management from Server 2003.
- creates backups files (.bak) automatically


To use it, copy the following hal and kernel files (found in SP3.CAB) and the utility to the same folder.

ntkrnlmp.exe - Multiprocessor Kernel
ntoskrnl.exe - Uniprocessor Kernel
ntkrpamp.exe - Multiprocessor PAE Kernel
ntkrnlpa.exe - Uniprocessor PAE Kernel

hal.dll - Standard PC HAL
halaacpi.dll - ACPI Uniprocessor HAL
halacpi.dll - ACPI HAL
halapic.dll - MPS Uniprocessor HAL
halmacpi.dll - ACPI Multiprocessor HAL
halmps.dll - MPS Multiprocessor PC HAL

Run WinXPPAE with the appropriate command line.

Usage: winxppae [/4GB | /ALL | /NB or /NOBACKUP]

/4GB   Enables PAE limiting RAM to 4Gb to avoid stability issues.
/ALL   Enables PAE with unlimited RAM, may have stability issues.
/NB   Does not create backup copies of original files.
/NOBACKUP   Same as /NB

You may test the files on a running system by replacing the files from another OS (otherwise File Protection will restore the files).
In this case, pay attention to the filenames, on multiprocessor systems, rename ntkrnlmp.exe to ntoskrnl.exe and ntkrpamp.exe to ntkrnlpa.exe. Hal filename is always hal.dll.

Or integrate them on the CD (rebuilding SP3.CAB and repacking ntkrnlmp.ex_, ntoskrnl.ex_, hal.dl_, halaacpi.dl_, halacpi.dl_, halapic.dl_, halmacpi.dl_ and halmps.dl_).

No need to include a /PAE switch in boot.ini, as this works just like on Server 2003.

As I've patched the files properly, ntoskrnl.exe automatically chainloads the PAE kernel, ntkrnlpa.exe.

PS: Only supports Windows XP SP3. Another version supporting Server 2003 will be released later.
#3632daniel_k⇗ @gordo999 and ⇗ @Mattiwatti

Me and ⇗ @diderius6 have tried to mod the last Intel LAN XP driver to support the Intel I219-V, but gave up.

Try to get a XP compatible PCIe (Intel, Realtek, Atheros) or USB (ASIX, Realtek?!) LAN adapter.
#3633daniel_k
Zitat von ⇗ Andalu im Beitrag ¶ #3615
Your predictions were correct. Even in Windows 7 the performance of the toshiba external disk connected to the USB3 port are not as expected. A tiny better with the samsung M3 portable, but the main problem is that there is no way to make the usb3 function available on my crazy board also after a shutdown.
At this point, I'm thinking it's time to put this board aside, also because I have another board where usb3 doesn't work at all and I still have not found a way to solve.

Try this (not sure if really XP compatible):
⇗ http://ftp.vector.co.jp/10/14/2012/wpcrs120.exe

⇗ http://www.a7vtroubleshooting.com/articles/wpcrset/index.htm

⇗ @Mattiwatti
You seem to have many experience with driver development, can you help us, please?
Have you ever seem a driver sample which we can modify to suit our needs?
Basically we need to set two PCI configuration registers in the Intel XHCI controller in order to properly enable USB3 speeds.
#3634daniel_k
Zitat von ⇗ schreiberstein im Beitrag ¶ #3591
@daniel_k

Hey! Interesting news! I think you are onto something great with that new XHCI driver and the HAL patcher.
Things seem to be getting better and better for us folks with newer machines.
I have been using XP with the 4GB patch several times now and it seems to be working fine! (Like Server 2003 with native 32GB PAE)
Perhaps it is just a problem of the Advanced Chrome version I am using. Palemoon seems stable, so is every other application.
It is very satisfying. No audio artifacts with integrated Realtek HD either.

Just released new WinXPPAE. This one was tough, too many files, several versions... but it's done.

The TI/ASMedia XHCI drivers are promising, but can't do it myself, really need help.
#3635gordo999
Zitat von ⇗ daniel_k im Beitrag ¶ #3632
Me and @diderius6 have tried to mod the last Intel LAN XP driver to support the Intel I219-V, but gave up.
⇗ @daniel_k ...thanks. That's what the memcpy/memcyp_s mod was about. I see memcpy_s, sprintf_s, strcpy_s, etc., are all listed as missing in dependency walker. I am sure those functions are not missing but relocated. Just reading that memcpy_s is a member of the memcpy group. The former copies between buffers whereas memcpy copies between memory addresses. They would not remove those functions from ntoskrnl, I am betting. In fact, there are only 10 functions missing in ntoskrnl and 4 of them are related to copy and string functions.

As Mattiwatti pointed out, the main problem is with ndis.sys. I am going to try what he said and get a copy from an x86 version of W7 to compare them. The function listed as missing in ntoskrnl are: EtwWrite, IoGetAffinityInterrupt, KeGetProcessorIndexFromNumber, KeGetProcessNumberFromIndex, KeQueryHighestNodeNumber, PoRegisterPowerSettingCallback, PoUnregisterPowerSettingCallback, memcpy_s, sprintf_s, strcpy_s, vprintf_s.

ndis.sys is another matter with 29 reported missing functions. Keep in mind that I am a noob with dependency walker and I may be misinterpreting the results. I am going on the functions marked red, although there may be other reasons why they are marked red.
#3636XPLives⇗ @Andalu

Zitat von ⇗ Andalu im Beitrag ¶ #3626
@diderius6
Thanks for the explanation. You confirmed what @gordo999 reported in a previous post, the trouble is there, XP can't boot from a nvme disk with 4096 byte per sector and no 512 byte emulation mode. But how can I figure if my nvme disk has or not the 512e? I understand, if I had it I wouldn't have found so many difficulties for cloning the disk or restoring an XP image and also the partitioning software would have listed the nvme disk.

Offhand I can't remember what brand your NVME is... Looks like you are using a Samsung.  But there were some Intel SSDs that using a utility you could change the sector size by flashing it.  I don't know if Samsung has a similar way to flash it to do the same.  Also maybe one exists for NVME or contact Samsung to see if they have one or will make one.

But the other question is when your NVME is installed into the motherboard, can you boot into both Windows 7 and 10 using a normal SSD or hard drive and then see if your NVME drive shows up in Disk Management at all in either OS?  And if so do you see any partitions shown?
#3637gordo999⇗ @Mattiwatti ...exactly like you called it. Got an ndis.sys and an msrpc.sys from a w7 x86 disk and dropped them in with the other files and it asked for a netio.sys. Ndis is now happy but it's relationship with ntoskrnl has soured. Msrpc and netio.sys are happy but their relationship with ntoskrnl is off. The Zwxxxxx files are mainly related to msrpc.sys and marked in red. Some are as you said, alpc related. Good call. :-)
#3638cedar⇗ @gordo999
Sorry about misinforming you about the LAN driver, the working
version was an earlier one. Flaking memory...
#3639Andalu⇗ @gordo999
I'll try also samsung magician, but the newest version doesn't work in XP and the latest for XP I don't think it can detect the nvme disk. I don't know if I can solve by updating my nvme with the 970 EVO firmware. To recognize the nmve disk from another XP hard disk I installed the ofa 1.3 driver, the only that works in XP. I don't find any samsung driver for XP.
Here the NVMe disk detected in bios (it is never listed in the boot menu section):




EDIT: I tried to update the firmware with the 970 EVO version but the samsung dos utility give me the message: "No supported SSD detected for firmware update!!!"
#3640Andalu⇗ @XPLives
here the shots, the nvme is correctly detected in all SO:

#3641daniel_k⇗ @gordo999

Zitat von ⇗ daniel_k im Beitrag ¶ #3632
Me and @diderius6 have tried to mod the last Intel LAN XP driver to support the Intel I219-V, but gave up.

It's the last XP driver ever released with no missing dependencies
We've tried to patch the device ID with no success.

I217, I218 and I219 are from the same family.

Just attached all drivers I have collected, including the XP one.
Earliest drivers when a new device ID was added.

- I217_I218: XP only
- I219_1_2: Win7 only, variants 1 and 2 (IDs 156F/1570/15B7/15B8)
- I219_3_4_5: Win7 only, variants 3, 4 and 5 (IDs 15B9/15D7/15D8/15E3/15D6)
- I219_6_7: Win7 only, variants 3, 4 and 5 (IDs 15BD/15BE/15BB/15BC)

Official means ID is in INF file.
Unofficial means ID is NOT in INF file, but support is present in driver .SYS file.
#3642Andalu⇗ @daniel_k
Zitat von ⇗ daniel_k im Beitrag ¶ #3631
WinXPPAE 2.0, a small utility to patch all kernel and hal files, supporting all languages and versions 5512 (SP3) and later:


What's new:

- thanks to @Mov AX, 0xDEAD, now includes HAL patches for ACPI Timer fix and proper memory management from Server 2003.
- creates backups files (.bak) automatically


To use it, copy the following hal and kernel files (found in SP3.CAB) and the utility to the same folder.

ntkrnlmp.exe - Multiprocessor Kernel
ntoskrnl.exe - Uniprocessor Kernel
ntkrpamp.exe - Multiprocessor PAE Kernel
ntkrnlpa.exe - Uniprocessor PAE Kernel

hal.dll - Standard PC HAL
halaacpi.dll - ACPI Uniprocessor HAL
halacpi.dll - ACPI HAL
halapic.dll - MPS Uniprocessor HAL
halmacpi.dll - ACPI Multiprocessor HAL
halmps.dll - MPS Multiprocessor PC HAL

Run WinXPPAE with the appropriate command line.

Usage: winxppae [/4GB | /ALL | /NB or /NOBACKUP]

/4GB   Enables PAE limiting RAM to 4Gb to avoid stability issues.
/ALL   Enables PAE with unlimited RAM, may have stability issues.
/NB   Does not create backup copies of original files.
/NOBACKUP   Same as /NB

You may test the files on a running system by replacing the files from another OS (otherwise File Protection will restore the files).
In this case, pay attention to the filenames, on multiprocessor systems, rename ntkrnlmp.exe to ntoskrnl.exe and ntkrpamp.exe to ntkrnlpa.exe. Hal filename is always hal.dll.

Or integrate them on the CD (rebuilding SP3.CAB and repacking ntkrnlmp.ex_, ntoskrnl.ex_, hal.dl_, halaacpi.dl_, halacpi.dl_, halapic.dl_, halmacpi.dl_ and halmps.dl_).

No need to include a /PAE switch in boot.ini, as this works just like on Server 2003.

As I've patched the files properly, ntoskrnl.exe automatically chainloads the PAE kernel, ntkrnlpa.exe.

PS: Only supports Windows XP SP3. Another version supporting Server 2003 will be released later.
   
I tried both /4Gb and /ALL options of the new WinXpPAE patch and I copied by hand from another hard disk all the files in windows\system32 (included the renamed ntoskrnl.exe and ntkrnlpa.exe) but on restart I got a blank screen immediately after the XP logo screen. It starts correctly when I used the hal.dll 5.1.2600.5687 extracted from ¶ 'hal_pae_fix' and also the ram is correctly visualized.
#3643gordo999
Zitat von ⇗ cedar im Beitrag ¶ #3638
Sorry about misinforming you about the LAN driver, the working
version was an earlier one. Flaking memory...
⇗ @cedar ...no apology necessary. These days, I can't go from the kitchen to the bedroom without forgetting why I went there.  It's not till I go back to the kitchen that I remember,
#3644gordo999
Zitat von ⇗ daniel_k im Beitrag ¶ #3641
Just attached all drivers I have collected, including the XP one.
⇗ @daniel_k ....thanks dk, I'll have a look.
#3645gordo999
Zitat von ⇗ Andalu im Beitrag ¶ #3639
I'll try also samsung magician, but the newest version doesn't work in XP
⇗ @Andalu ...do you have a dual boot with W7 or W10? You could run it in W7 to see if it detects the SSD. If not, what error do you get if you try to install/run Magician in XP? XP and W7 are both fairly compatible systems with the exception that XP runs 16-bit apps. I can't see why Magician would not run in XP unless it was written to detect the OS and not install simply because the writer did not want it to run on XP.  I don't know if DOS can detect an ntfs file system but I seem to recall a DOS version that can read ntfs, Maybe I'm wrong.

 

Page 244

#3646Mattiwatti
Zitat von ⇗ gordo999 im Beitrag ¶ #3628
@Mattiwatti ....thank you kindly for the detailed and in-depth explanation. I have enough experience with reversing and the NT Kernel to follow you and I would dearly love getting into ntoskrnl to the level you mention. However, the only debugger of which I am aware that will trace through ring 0 code is softice. I have asked experienced people if windbg will trace through it but the answers I receive are vague as to what constitutes ring 0. Anytime I have tried to enter ring 0 with wdbg at a sysenter point, it turfs me out the other end without tracing through the code. Having said that, since I am working in x86 code, I would love to get SI going on this converted XP machine and I know it won't be easy. Tried the other night for a laugh and got a bsod with stop: 0x24, apparently related to ntfs.sys. Does that mean SI only runs on a FAT32 system? Don't think so since I recall using it to trace into the MFT via ntfs.sys. Don't want to get off-topic talking about debuggers but if you have anything to add on that topic perhaps you would be kind enough to PM me.

I'll reply to the rest of your questions via PM, but I'll answer the question of what constitutes 'ring 0' here. For the longer and more accurate version, read ⇗ Protection ring on Wikipedia, although that article is not specific to x86. In x86 (and x64), as the article also mentions, there is the notion of the CPL (Current Privilege Level), and the generally agreed upon definition is that CPL = 0 constitutes ring 0, aka 'kernel mode'. Neither Windows NT (or 9x for that matter) nor Linux use any CPLs other than 0 and 3, so 'ring 0', 'kernel mode', 'supervisor mode' (NB: not hypervisor!), 'CPL 0' are all interchangeable terms for the same thing and can be contrasted with 'ring 3', 'CPL 3' and 'user mode' which is the normal operating environment for a program you would write to execute some specific task. Very few operating systems use more than 2 privilege levels, even though many processor architectures offer more than this in theory. It is also sometimes useful to define a 'ring -1' when describing a virtualized OS running within a hypervisor using e.g. Intel VT-x or AMD's SVM. Finally there are the notions of 'ring -2' for SMM (System Management Mode) and 'ring -3' (Intel ME; as far as I know the AMD PSP does not run in ring -3 due to being on-CPU, unlike the Intel ME which runs even when the main CPU is off). These are generally only used in security research, where a vulnerability in a 'lower' (more privileged) ring is worse since it is theoretically more powerful and/or harder to detect. Since we are interested in debugging ring 0 code, and the question is whether WinDbg is able to do this, the answer is: yes it can! Not only can WinDbg debug kernel mode code, I'd say it's the only debugger worth considering when the target system is Windows NT. SoftICE is certainly an impressive creation, but I'd sooner call it a curiosity than a real debugger. You should view a debuggee as a sick patient. Correctly diagnosing a patient is only possible when done completely externally, i.e. without making use of one or two of the patient's organs and hoping they continue to work throughout the diagnosis, which is how I see SoftICE. As a simple example: suppose you are developing a filesystem driver, or a disk controller driver such as an NVMe one. Or more likely, suppose you're not doing either of these, but that the system somehow fails to boot with BSOD 0x7B (INACCESSIBLE_BOOT_DEVICE). What's SoftICE going to do? The answer is nothing, since if the boot disk cannot be accessed, SoftICE cannot be loaded. There are other more insidious scenarios where SoftICE will give a wrong or skewed perspective of the system due to the fact that by nature it lives on the 'patient' system, and even affects its state simply by being loaded.

It's true that there are certain instructions WinDbg cannot step through, at least in my experience (mostly with VirtualBox - it's possible that some of these will work correctly when using a serial port since VirtualBox itself uses some creative protection ring magic to do its work). These are all related to ring transitions or instructions closely related to those. I don't generally use 32 bit operating systems, but the sysenter you mentioned would be an example of this. The equivalent x64 instruction is 'syscall': you cannot step into this instruction and expect to land cleanly on the other (kernel mode) side. Another instruction you should avoid stepping into is 'swapgs', which is used on the return from ring 0 to ring 3 on x64 (unsure about x86). Stepping into a swapgs will crash WinDbg and as a result hang the debuggee. Why is this? I don't know, but I generally assume that this is something that is actually impossible (or close to) to fix, since WinDbg supports basically anything else the NT kernel might ever do. It is after all the debugger used by the NT team to develop NT itself. Fortunately the solution to this problem is fairly simple: don't step into these instructions. If that sounds unhelpful, consider the following: what are you trying to achieve when stepping into a 'sysenter'? Generally this is an indicator that you are debugging the wrong piece of code. In the case of sysenter, this is an instruction that is executed in user mode to transition to kernel mode. Instead, set a breakpoint on the syscall you wish to debug (e.g. 'bp nt!NtCreateFile' to set a breakpoint on the NtCreateFile syscall in ntoskrnl.exe in ring 0; 'nt' is short for 'ntoskrnl' in WinDbg). Similarly, stepping through a 'swapgs' means you are debugging the generic code that is executed upon return from every syscall. In general there is little reason to be here since the code is of little interest to anyone except perhaps the NT team. If you wish to continue debugging the user mode program that executed some syscall, my first advice would be: don't. You can use a user mode debugger such as x64dbg or a second instance of WinDbg running on the debuggee instead, which will be much easier and give better results. But if you must do this from WinDbg debugging ring 0 code, find the next instruction that will be executed in the program in user mode and set a breakpoint on that. Here is an example of an x64 program executing 'NtWriteFile':
 
fffffadf`7dec61d0 fffff800`008517ea nt!KiSwapContext+0x7b [C:\<snip>\base\ntos\ke\amd64\ctxswap.asm @ 74] 
fffffadf`7dec6350 fffff800`00849949 nt!KiSwapThread+0x3ea [C:\<snip>\base\ntos\ke\thredsup.c @ 2012]
fffffadf`7dec63c0 fffffadf`8fc51109 nt!KeWaitForSingleObject+0x589 [C:\<snip>\base\ntos\ke\wait.c @ 1242]
fffffadf`7dec6450 fffffadf`8fc50f07 Ntfs!NtfsWaitSync+0x28
fffffadf`7dec6490 fffffadf`8fc51e43 Ntfs!NtfsNonCachedIo+0x3c9
fffffadf`7dec6700 fffffadf`8fc5131a Ntfs!NtfsCommonWrite+0x24da
fffffadf`7dec69e0 fffff800`00999e22 Ntfs!NtfsFsdWrite+0x2e4
(Inline Function) --------`-------- nt!IoCallDriver+0x35 (Inline Function @ fffff800`00999e22) [C:\<snip>\base\ntos\inc\io.h @ 3281]
fffffadf`7dec6ab0 fffff800`00994bab nt!IopSynchronousServiceTail+0x132 [C:\<snip>\base\ntos\io\iomgr\internal.c @ 7510]
fffffadf`7dec6b10 fffff800`008b1b63 nt!NtWriteFile+0x7eb [C:\<snip>\base\ntos\io\iomgr\write.c @ 785]
fffffadf`7dec6c00 00000000`77ef02aa nt!KiSystemServiceCopyEnd+0x3 (TrapFrame @ fffffadf`7dec6c70) [C:\<snip>\base\ntos\ke\amd64\trap.asm @ 1917]
00000000`0012f3d8 00000000`77d7030b ntdll!ZwWriteFile+0xa
00000000`0012f3e0 0000005c`003a0043 0x77d7030b
00000000`0012f3e8 00000000`00000000 0x0000005c`003a0043


Note that I do not have debug symbols loaded for the program, which is why you only see addresses for the user mode part of the stack vs symbol names for the ntdll and kernel mode portions. In this case, you would set the breakpoint upon return from the kernel, i.e. 'bp ntdll!ZwWriteFile+0xa'. Realistically you will probably also want to skip the ntdll frame since it only contains generic syscall wrapper code, so you'd set a breakpoint at 0x77d7030b.

Zitat von ⇗ gordo999 im Beitrag ¶ #3628
Your explanation re dependency walker is interesting. It had occurred to me to try it at some point but it had not occurred to me to load the entire drivers directory into the same test folder. Why not the entire sys32 directory as well? Having said that, if we are creating a directory with all those files, should it not work by running DW on a W7 machine?

There is no need to copy over system32 since it is already part of the search path. An exception would be if you want to test some modified file that normally lives in system32: you can just throw this in with the rest of the files in 'drivers' since the current directory is searched first. To elaborate: let's take our Intel network driver, which depends on both ndis.sys and ntoskrnl.exe, and (pretending for a moment that it actually works) suppose we wish to place it in a hypothetical 'drivers2' directory in system32. There would be a need to copy ndis.sys and all of its transient dependencies to this new 'drivers2' folder', but there would not be a need to copy ntoskrnl.exe, hal.dll or any other file living in system32. Kernel mode drivers follow the same rules as user mode programs when it comes to this. System32 is 'special' and always part of the search path; any other dependencies must be placed in the search path explicitly, usually by placing them in the same folder as the file being loaded.

Regarding your second question: yes, it is in fact perfectly possible to do the entire 'what-if' thing on a different system such as on Windows 7. In this case you do want to copy over system32, mostly for the sake of simply having easy access to all of the files. The easiest way to go about this would be to then copy the few kernel mode pieces living in system32 to system32\drivers. Off the top of my head you want at least ntoskrnl.exe, hal.dll, bootvid.dll, kdcom.dll, (if it exists) ATMFD.dll, and win32k.sys. Check Process Hacker or Process Explorer to see which modules are loaded if unsure.

Zitat von ⇗ gordo999 im Beitrag ¶ #3628

Zitat von ⇗ Mattiwatti im Beitrag ¶ #3612
...what I have done is buy a simple ...Intel Gigabit CT Desktop Adapter
From what I gather I'd need to find an older version. I looked the adapter up on the Intel site and they claim the 32-bit version won't run on anything below W7. Of course, that's Intel. They have unfortunately abandoned ship. I came across an adapter last night that is a USB - Network adapter....don't know if that would work.

BTW...I managed to get online last night using a Cisco AM10 wifi adapter. It plugs into a USB port and for some reason sets itself up as a drive. Bit of a nuisance. The good news is that I am now activated.


Don't believe anything Intel says when it comes to OS compatibility. They have started pretending Windows XP and 2003 never existed (rather than simply pointing to the latest available drivers to support those OSes), and many of their newer drivers already don't support Windows 7 either, although you can at least still find Windows 7 drivers listed for now. The network card I linked works perfectly fine on Server 2003 x64, and I strongly suspect XP x86 as well since they have the same major NDIS version. Of course, if the USB adapter with wifi works, there is no need to get the PCIe card. Personally I prefer wired over wireless, and PCIe over USB. Reason: wifi runs on top of ethernet, and USB runs on top of PCIe... and simpler stuff breaks less often.
#3647Andalu
Zitat von ⇗ daniel_k im Beitrag ¶ #3633

Try this (not sure if really XP compatible):
⇗ http://ftp.vector.co.jp/10/14/2012/wpcrs120.exe
⇗ http://www.a7vtroubleshooting.com/articles/wpcrset/index.htm

It workssss!!

Your are great! Thank you very much again
#3648Andalu
Zitat von ⇗ gordo999 im Beitrag ¶ #3645
@Andalu ...do you have a dual boot with W7 or W10? You could run it in W7 to see if it detects the SSD. If not, what error do you get if you try to install/run Magician in XP? XP and W7 are both fairly compatible systems with the exception that XP runs 16-bit apps. I can't see why Magician would not run in XP unless it was written to detect the OS and not install simply because the writer did not want it to run on XP.  I don't know if DOS can detect an ntfs file system but I seem to recall a DOS version that can read ntfs, Maybe I'm wrong.

Firstly, in windows7, I uninstalled the ofa 1.3 driver and installed the Samsung NVMe Driver 3.2. After this, I installed samsung magician but the program does not seem to do much for my problem. It simply lists some information about the disk and does not allow to do any other operation than the benchmark.
The program you talking about may be ntfs4dos? If so, how could it help me?
#3649gordo999⇗ @Mattiwatti ....I know this is getting off topic but there are posters in this thread who may find it of interest in relation to the content of the thread. Besides, I want to contribute to this thread by tracing into the LAN driver, for example, to see what, if anything, can be done to get it going. As you have claimed, it's likely impossible, if not really hard, due to the number of functions absent in ntoskrnl and ndis.sys. That's what I am trying to find out in this discussion. Is there anything that can be done via modding to make it work?

Zitat von ⇗ Mattiwatti im Beitrag ¶ #3646
...I'll answer the question of what constitutes 'ring 0' here.
I probably failed to present myself clearly. I did not mean to convey that I did not understand ring 0, I meant that people I have spoken to about it re windbg don't seem to be talking about the same code.
Zitat von ⇗ Mattiwatti im Beitrag ¶ #3646
It's true that there are certain instructions WinDbg cannot step through...it's possible that some of these will work correctly when using a serial port
I have not investigated that entirely but with my serial remote debugging sessions the target has to be rebooted for the source to find it. When the target reboots, it is stopped early in the boot process, before the logon screen, and as far as I can see it's possible to trace all the way to the desktop, if desired. In that case, Microsoft may have built in code to prevent wdbg getting past a sysenter or syscall into kernel code.
Zitat von ⇗ Mattiwatti im Beitrag ¶ #3646
...what are you trying to achieve when stepping into a 'sysenter'?
There are times when the system is called from a user mode app and the system calls back into user mode, sometimes multiple times, before returning after the sysenter. If you don't enter system code at sysenter you miss the call back and there could be code in the call back in u-mode you need to see. I have encountered that many times with SI, tracing into system code then suddenly being back in user code in the app I am debugging, yet well before the system code returns you to the original call for the u-mode app at sysenter.

This action would also make it very difficult to follow a cold code read in IDA. In IDA, a function often begins with no reference to where it was called from. It's likely being called from system code via a call to system code elsewhere. You'd need a debugger to confirm that.
Zitat von ⇗ Mattiwatti im Beitrag ¶ #3646
Instead, set a breakpoint on the syscall you wish to debug (e.g. 'bp nt!NtCreateFile'
That's fine if you know the call you want to trap with a bp. It's kind of   shotgun approach at times since you are guessing that the app might call via that function. What if it doesn't, and there is code during a system call that is called by the system before exiting the syscall? I agree that setting a BP is more elegant but sometimes you just have to trace to see where the code goes. I also agree with what you say below, that the system code itself is not of much interest. However, it's what the system code does with the calling parameters that can be of interest. Besides, if you want to learn how the system processes calls from U-mode, or just how a driver works, it's helpful to see the system in action. It's one thing to read about a PDO in theory, or see a it in table form in Windbg, and quite another to see the actually code and data related to a PDO. Some people are happy to set BPs and ignore the intervening code but I find the implementation of assembly language to be fascinating, especially as related to functions in a higher level language like C++.
Zitat von ⇗ gordo999 im Beitrag ¶ #3628
There is no need to copy over system32 since it is already part of the search path.
As I said, if I need to run DW from W7 for a driver in XP, I need the XP sys32 contents. I ensured that the pertinent equivalent files were in the folder you described. For example, if I was testing a driver from XP I made sure ntoskrnl, ndid.sys, hal, etc., from XP,  were in the same folder.
#3650gordo999
Zitat von ⇗ Andalu im Beitrag ¶ #3648
... I installed samsung magician but the program does not seem to do much for my problem. It simply lists some information about the disk......The program you talking about may be ntfs4dos? If so, how could it help me?
⇗ @Andalu ...Yes, but Magician does see the disk. The disk is not being seen from XP. So, if Magician sees the disk in W7 the disk is OK and there is something going on in W7 that is not going on in XP. You have to find out what it is.

Re ntfs4dos: DOS cannot read an NTFS partition so you would not expect to see your SSD if it is formatted in ntfs from DOS. With something like ntfs4dos you should be able to detect the drive if it's there, should you not? If it uses a standard MBR, DOS should see it. Then again, can DOS read a 4kbytes/sector format?

Have you tried transferring the XP OS using an image? Use the free Macrium Reflect, or similar, to create an image of the XP partition running on a good system. You don't need to do the entire XP disk if you have related logical partition, they can be transferred later.You'll need an external disk drive or another drive with enough space to store the image, obviously not on the XP disk. Run your SSD as a logical partition connected to the good drive. Now use Macrium to restore the XP image to the SSD drive. The image does not care about the logical partitioning or formatting of the drive. After restoring the image to your SSD, add a boot.ini file, ntldr, and ntdetect to the root directory (C:\) of the SSD. During boot, ntldr should find the XP OS on the disk since you have pointed to it in boot.ini.
#3651infuscomus⇗ @diderius6 ⇗ @daniel_k

using my patcher program I tried patching ntoskrnl and hal from vista beta 5365 re-adding functions that were taken out from XP.

in hal I re-added

HalDisableSystemInterrupt
HalEnableSystemInterrupt

   

in ntoskrnl i re-added

CcFastReadNotPossible
CcFastReadWait
IoInitializeCrashDump
KeConnectInterrupt
KeDcacheFlushCount
KeDisconnectInterrupt
KeIcacheFlushCount
KiEnableTimerWatchdog
PsCreateSystemProcess
PsDereferenceKernelStack
PsReferenceKernelStack
WmiFlushTrace
WmiQueryTrace
WmiStartTrace
WmiStopTrace
WmiUpdateTrace

   

put ci.dll clfs.sys pshed.dll along with halmacpi.dll and ntoskrnl.exe in system32

can you test to see if this works?



infuscomus has attached files to this post
#3652NaotoI want to buy a laptop which uses intel 10th cpu,Is there a way tolet xp support 10th chips?
#3653Fernando⇗ @Naoto
Welcome to the Win-RAID Forum!
Since I am not an expert regarding your request, I have moved it into this already existing thread, where you can find a lot of information and hopefully get an answer from anyone among our XP Gurus.
Regards
Dieter (alias Fernando)
#3654PPeti66x⇗ @daniel_k
The file halsp.dll really does not need to be patched by WinXPPAE 2.0?
#3655XPLives⇗ @Andalu
Zitat von ⇗ Andalu im Beitrag ¶ #3640
@XPLives
here the shots, the nvme is correctly detected in all SO:



   
Could you identify your picture filenames with the Operating System in the name as well?  From the three photos I am guessing you only tested in Windows 10 judging from the last picture with the icon with 4 blue windows logo or is that Windows 8.X?

I need you to go to "Disk Management" not "My Computer" to look at the drive.

Go to "Administrative Tools", "Computer Management", Under the Storage, there is "Disk Management".
It will show all the drives connected with their Partitions, File Systems, et cetera.

Try "Disk Management", NOT "My Computer" for XP/2003, Windows 7, and Windows 10 again and make sure you label the photos with OS.  I will compare.  Also another shortcut to "Disk Management" you can try RUN and type in "diskmgmt.msc".
#3656XPLives⇗ @gordo999

Zitat von ⇗ daniel_k im Beitrag ¶ #3632
⇗ @gordo999 and @Mattiwatti

Me and @diderius6 have tried to mod the last Intel LAN XP driver to support the Intel I219-V, but gave up.

Try to get a XP compatible PCIe (Intel, Realtek, Atheros) or USB (ASIX, Realtek?!) LAN adapter.


Not to deflate your interest in getting newer Intel I21X on board to work in XP.  It's quite possible if you commit enough time it could be a few months or could be years which could end in success or just reassuring the same failure.  The question is is it worth the time to commit?  The reason I ask is because it's easier to spend $5-$6 on eBay and get a PCIe x1 Realtek 8111E and pop it into your motherboard and get XP going fast.  If that dead Ethernet port on the rear of your motherboard annoys you that's it's not working in XP you could at least use in in Windows Vista/7 perhaps?.  Just hook up a network switch to connect two independent ethernet cables one from the onboard Intel, and the other from the Realtek NIC and depending on which OS is booted the network switch doesn't care and you'll get internet on both.  I usually pick the PCIe x1 slot closest to the CPU which usually gets obstructed by my CPU cooler so it would have been a wasted slot anyhow so I actually gain the use of an empty slot for a purpose.  Also Realtek NIC supports MAC OSX as well in case you wanted to do a Hackintosh experiment on Intel CPU system.

The other easiest option if you don't want to waste a slot.  If you can get a USB PCIe card to fit into the 1st slot then you could have at least 4 USB slots and use one of them for a USB ethernet or USB Wifi adapter.  It's not as pretty but you get to add at least 3 more USB devices while only sacrificing 1 slot.

But again you have to evaluate how much time you are going to put into getting that one rear motherboard ethernet to work.  I'm pretty sure when Ice Lake or newer chipsets are released it is less likely you can get it to work as they may use a completely different chipset.

If there is one thing going forward that is lacking it's a universal modified VGA driver for 2D/3D that works with Intel HD Graphics past 4000, the AMD AM4 APU/GPU, or the nVidia graphics card Pascal+.  Without such a driver a lot of useful programs just won't work.

The other is modifying the HDMI Audio out driver to work even though the nVidia or AMD graphics official drivers is not installed due to no proper driver.  For whatever reason the HDMI Audio out is linked to the graphics driver and only works once the HDMI Video driver is installed.  Perhaps someone can look into bypassing this requirement so the HDMI Audio out driver will work independently.  Would save people from needing a USB or PCIe sound card/device.
#3657XPLives⇗ @Naoto

Zitat von ⇗ Naoto im Beitrag ¶ #3652
I want to buy a laptop which uses intel 10th cpu,Is there a way tolet xp support 10th chips?

Don't know as it would depend on which laptop brand / model, and is it UEFI only?

First why do you want to use XP on it?.  No supported graphics driver for XP would exist except the built in MS one.
#3658Andalu⇗ @gordo999
Zitat von ⇗ gordo999 im Beitrag ¶ #3650
@Andalu ...Yes, but Magician does see the disk. The disk is not being seen from XP. So, if Magician sees the disk in W7 the disk is OK and there is something going on in W7 that is not going on in XP. You have to find out what it is.

Re ntfs4dos: DOS cannot read an NTFS partition so you would not expect to see your SSD if it is formatted in ntfs from DOS. With something like ntfs4dos you should be able to detect the drive if it's there, should you not? If it uses a standard MBR, DOS should see it. Then again, can DOS read a 4kbytes/sector format?

Have you tried transferring the XP OS using an image? Use the free Macrium Reflect, or similar, to create an image of the XP partition running on a good system. You don't need to do the entire XP disk if you have related logical partition, they can be transferred later.You'll need an external disk drive or another drive with enough space to store the image, obviously not on the XP disk. Run your SSD as a logical partition connected to the good drive. Now use Macrium to restore the XP image to the SSD drive. The image does not care about the logical partitioning or formatting of the drive. After restoring the image to your SSD, add a boot.ini file, ntldr, and ntdetect to the root directory (C:\) of the SSD. During boot, ntldr should find the XP OS on the disk since you have pointed to it in boot.ini.

   
When I tried to install magician 5.0 and 6.0 on XP I got the message: "This program requires Windows NT version 6.1.7600 or later". Below the info from magician 4.9.7 (the latest version XP compatible):



I had already tried to restore an image created with macrium (and acronis also) but I had the same message "Incompatible Disk Selected". The macrium knowledgebase about that message:
⇗ https://knowledgebase.macrium.com/displa...e+Disk+Selected

Also the acronis site reports: "you can clone a 512 bytes/sector disk to 512 bytes/sector disk; you can clone a 4096 bytes/sector disk to 4096 bytes/sector disk; but you cannot clone a disk with logical sector size 512 bytes to disk with logical sector size 4096 bytes".

I found out the information which seem to exclude any further possibility:



When the field 'byte/sector' reports 4096 means that the disk has no 512 emulation, so XP will never boots from it. Even as storage device there would be some problems because the trim function for this ssd doesn't seem supported in XP (trimcheck and corsair toolbox report trim 'not supported' or 'not working'. Adata toolbox doesn't detect the ssd).
#3659Andalu⇗ @XPLives
Zitat von ⇗ XPLives im Beitrag ¶ #3655

Could you identify your picture filenames with the Operating System in the name as well?  From the three photos I am guessing you only tested in Windows 10 judging from the last picture with the icon with 4 blue windows logo or is that Windows 8.X?

I need you to go to "Disk Management" not "My Computer" to look at the drive.

Go to "Administrative Tools", "Computer Management", Under the Storage, there is "Disk Management".
It will show all the drives connected with their Partitions, File Systems, et cetera.

Try "Disk Management", NOT "My Computer" for XP/2003, Windows 7, and Windows 10 again and make sure you label the photos with OS.  I will compare.  Also another shortcut to "Disk Management" you can try RUN and type in "diskmgmt.msc".

   
sorry for the misunderstanding, here the screenshots from three different hard disk drives (I reported the OS type in the images because I can't get the picture naming work here in the forum):



Please also see my post above, thanks.
#3660daniel_k
Zitat von ⇗ Andalu im Beitrag ¶ #3642
I tried both /4Gb and /ALL options of the new WinXpPAE patch and I copied by hand from another hard disk all the files in windows\system32 (included the renamed ntoskrnl.exe and ntkrnlpa.exe) but on restart I got a blank screen immediately after the XP logo screen. It starts correctly when I used the hal.dll 5.1.2600.5687 extracted from ¶ 'hal_pae_fix' and also the ram is correctly visualized.

Must be a driver issue, possibly with AMDXHC.SYS.

Double checked all files and everything is fine.

Just did a clean install of XP SP3 fully updated with PAE enabled, but with no AMDXHC, just ASMedia and VIA.

100% stable and fast.

Don't have much time now, if you have PS/2 ports, connect some PS/2 keyboard and/or mouse, disable the USB driver and try again with WinXpPAE patched files to see if the issue is related to the hacked Intel driver.

 

Page 245

#3661daniel_k
Zitat von ⇗ PPeti66x im Beitrag ¶ #3654
@daniel_k
The file halsp.dll really does not need to be patched by WinXPPAE 2.0?

While I could patch it, it isn't worth the effort and is not supported by Server 2003, on which the patch is based.

halsp.dll was designed for Compaq SystemPro Multiprocessor or 100% Compatible, from Nov 1989, see the wiki:
⇗ https://en.wikipedia.org/wiki/Compaq_SystemPro
#3662stfHello,
I have no experience in editing BIOS or parts of SYS-OP,so excuse me for the stupidity of some questions.

My current PC is running XP home 32 bit on Quad core Q6700 with 5GB of RAM
that the system sees thanks to the bios and to a modification that I found on the net.

multi (0) disk (0) rdisk (0) partition (1) WINDOWS = "Microsoft Windows XP Professional" /kernel=ntkl64g.exe /hal=hal64g.dll / fastdetect / PAE / NoExecute = optin

currently the system is slow (latency and disk speed 198 Mb / s), having a 2T HDD disk, but everything I read (security) and see(cortana etc...)
on other PCs in windows 7 8 and 10 convince me to stay on windows XP despite the slowness.

I was thinking to solve the problem by switching to a sata SSD SAMSUNG AHCI to arrive, having sata 2
at 300 MB / s and much lower latencies.

but then I found this forum, I read part of "Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware"
I have difficulty / perplexity in understanding how to proceed.
My question is:

wanting to buy a new PC based on one of the 2 processors below

intel I9 9900k 16 threads PCIe 3.0 SAMSUNG EVO plus o
AMD Ryzen 3900 12 cores 24 threads PCIe 4.0> AORUS SSD

it is possible to clone my current main partition of win 32, by first uninstalling the current drivers, on a temporary HDD,
boot the new PC, install your work, the patches and new drivers and also the NVME M.2 or pcie 3.0 or 4.0 drivers
, to then clone the system obtained , on a NVME ssd (SAMSUNG or aorus SSD NVME) bootable M.2 at 3500 Mb / s or if AMD M.2 5000Mb / s

I mean, with XP 32 bit home operating system, currently, it is possible on Intel 9900k or AMD ryzen 3900 with the most appropriate motherboard,

make work:

4K or 4096x 2160 monitor,
multithreading
NVME on M.2 (or M.2 NVME via PCIe adapter) the OPTANE intel on pcie costs a lot,
64 gb ddr4
sata  3
USB 3.0 / 3.1 functional
LAN working
working audio

or, to understand, which motherboard it would be advisable to use or which platform, at present, should be used
to get the maximum benefit from the current hardware with XP 32 bit home.
Thanks !
#3663Andalu⇗ @daniel_k
tried with a clean XP (5.1.2600) install; only acpi.sys 5048 and AHCI+RAID driver v11.2.0.1006 mod by Fernando slipstreamed by nlite; no amd usb3 modded driver (¶ amdxhci_XP_final); only the ps/2 keyboard connected and no usb mouse, it still hangs at same point with a blank screen, immediately after the XP logo. Same behavior on a different board (haswell Q87).
Below the SHA-1 of the patched files (copied by hand from another system into the windows\system32 folder; only hal.dll, ntoskrnl.exe and ntkrnlpa.exe files need to be replaced there):

 
hal.dll		020f03ed6b133765c879adf248ed3d2d99109bd3
halaacpi.dll c7fbaf343c827e8a2f0bc9e30148f06697a3c86b
halacpi.dll aa6fc0c1ab163bcc55cc3cbad368d3d6d3d9dc51
halapic.dll ba833399b2bbb51163ae702e7ec9d44f07f90589
halmacpi.dll be202c78dbf4d59880aa6a9430be05d4156d6764
halmps.dll 30b791b03fbb67e0ac73e5b741df950aedf5cdf4
ntoskrnl.exe 742fcf126111532187d4a2861c8b45f882757850

ntkrnlpa.exe (/4GB) 39ca749c1988e469ea2b6c46eafd6537734fdcce
ntkrnlpa.exe (/ALL) 2a67c6024530159b1f47565ca8ace3a46e39ad8a
#3664gordo999
Zitat von ⇗ XPLives im Beitrag ¶ #3656
It's quite possible if you commit enough time it could be a few months or could be years which could end in success or just reassuring the same failure.  The question is is it worth the time to commit?
⇗ @XPLives ...I don't plan to make a career of it but this sort of thing interests me. I have had an interest in reversing for many years now but I have steered clear of modding windows components. Since msoft has essentially abandoned XP, and W7, we users are left with little option than to get XP working as best we can. In an overall sense there is not much of a benefit to me to get XP going on this new mobo, it's more for the principle. It's still a good and useful OS and it's a shame to abandon it. Except for a few hiccups XP is running really well on the new mobo. I have to thank the posters in this thread and Fernando for hosting it.
#3665cedar⇗ @gordo999
Agree, going back to the original room does connect
back what was lost in the earlier process.
#3666gordo999
Zitat von ⇗ Andalu im Beitrag ¶ #3658
When the field 'byte/sector' reports 4096 means that the disk has no 512 emulation, so XP will never boots from it. Even as storage device there would be some problems because the trim function for this ssd doesn't seem supported in XP (trimcheck and corsair toolbox report trim 'not supported' or 'not working'. Adata toolbox doesn't detect the ssd).
⇗ @Andalu ...that's not exactly true from what I understand about 512e emulation. If you have 512e emulation, the emulator treats each 4096 byte sector as 8 x 512 bytes/sectors per 4096 byte sector. I would think that means any app looking at the SSD would see 512 bytes/sector if it is in emulation mode.

Have you found out yet if your SSD has 512e emulation? It it doesn't, I can see the point being made above re XP. On a 512 byte/sector medium, the MBR is written right at the front of logical sector 0. Right behind it is some boot code then a logical partition table which ends at sector 0x63. In other words, that section is 64 sectors long.  64 sectors is 64 x 512 bytes/sector = 32,768 bytes. Divide that by 4096 and you get 8 sectors of the 4k sectors.

What would happen if you found a way to write the data covering 64 sectors on a 512 byte/sector format into the first 8 bytes of the 4k format? You claim above, that the disk is rejected when the app sees a 4k format. Is that true with the Windows boot code in BIOS? I hardly think they'd have enough space in BIOS to check that out. Maybe they do, but there is a section on this site dealing with BIOS mods.

When a system boots, and BIOS reads cylinder 0, head 0, sector 0, it should not care how long the sector is. All it reads is the jump statement in the MBR that sends it to an address in BIOS which contains the boot code. If you boot your system from the SSD, what errors do you get, if any? Does it give an error or just a blank screen?
#3667gordo999
Zitat von ⇗ infuscomus im Beitrag ¶ #3651
using my patcher program I tried patching ntoskrnl
⇗ @infuscomus ...is your patcher a private patcher or one available on the Net?
#3668infuscomus⇗ @gordo999

it's a copy of the old kernelex 3.6 that I've been modifying - from what I can see it isn't available on the internet anymore.
#3669gordo999
Zitat von ⇗ stf im Beitrag ¶ #3662
...it is possible to clone my current main partition of win 32, by first uninstalling the current drivers, on a temporary HDD, boot the new PC, install your work, the patches and new drivers and also the NVME M.2 or pcie 3.0 or 4.0 drivers
⇗ @stf ...not quite as simple as that. I just started into this thread recently but I have a lot of experience with these systems. Even at that, I had to spend days trying to get the system going. I am not trying to discourage you, or to be unkind, I had to start somewhere. However, if you are new to this, and  you're looking for a quick fix re getting XP going on a newer motherboard, you have a pretty steep learning curve ahead. No one really has the time to explain it on a step by step basis, although, if you begin reading at the first post in this thread, you can absorb a lot of what it's about. There are recent posts about problems with nvme.

What do you know about XP and why it won't boot on a newer motherboard? Do you understand acpi or ahci, even at a simple level? The first boot errors you will get are likely acpi and ahci related. What do you know about windows boot processes? What do you know about windows drivers? Explain stuff like that and what specific problems you are encountering. Like I said, go to the beginning of the thread and start reading. If something confuses you, research it on google, then ask for help with a specific question. But don't expect at this depth in the thread to ask a very general, vague question and receive a reply. Most of the posters are busy communicating with each other about specific issues and yours is very general, if not somewhat vague.

For example, you ask if it's possible to clone your main partition. That usually means the C: partition...partition 1. But you said a win32 partition. Does that mean XP, Win 7, 8,  or Win 10...they all have 32 bit partitions available. Why would you uninstall the current drivers to an HDD then try to boot? The system won't boot without the drivers and with the original XP drivers it won't boot at all. Your question is extremely vague.
#3670infuscomusthis tool looks interesting

⇗ https://github.com/AxtMueller/Windows-Kernel-Explorer
#3671gordo999
Zitat von ⇗ infuscomus im Beitrag ¶ #3670
this tool looks interesting
⇗ @infuscomus ...thanks...they mentioned PCHunter in the description. I noticed it in my collection but I don't recall using it yet.

⇗ https://www.majorgeeks.com/mg/getmirror/pc_hunter,1.html
#3672daniel_k⇗ @stf
Personally, I'd go for the Intel.
Easier to get it working.

For graphics, you'll need a XP compatible card, such as NVIDIA GTX980Ti.
NVME is not fully stable, specially with Samsung NVME drives.
USB3 is working.
LAN works if Intel i211 or i217, Killer E2500 (depends on revision) or Realtek (depends on model), you might try an USB3 to LAN adapter.
Audio works probably, as 99% of current HDAudio codecs are from Realtek, which has XP drivers.
#3673daniel_k⇗ @Andalu

Don't know what the issue is.
I did many tests here before releasing the patcher.

- VirtualBox 8GB RAM
- Core i3-2310M "Sandy Bridge" Lenovo G470 8GB w/ Insyde BIOS
- i7-8700K / Z370 Gaming 3 / 16GB

Tested all patched HALs, with no issues on any of the systems.
Even tried on an old T6600 eMachines D525 with 4GB just to test patch stability.

Are you really sure you're not missing something?

What about trying storahci.sys or iastora.sys?
¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (218)

iaStor is old and has issues on newer systems, maybe things get worse with PAE enabled.
#3674infuscomus⇗ @daniel_k

do you want to see the source code for my kernel patcher program?
you seem more knowledgeable than me so you might have better luck producing something useful with it

see this post for an example of what it outputs (patched hal ntoskrnl)
¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (244)
#3675gordo999
Zitat von ⇗ stf im Beitrag ¶ #3662
My current PC is running XP home 32 bit on Quad core Q6700 with 5GB of RAM that the system sees thanks to the bios and to a modification that I found on the net.
multi (0) disk (0) rdisk (0) partition (1) WINDOWS = "Microsoft Windows XP Professional" /kernel=ntkl64g.exe /hal=hal64g.dll / fastdetect / PAE / NoExecute = optin
⇗ @stf ...OK...try again. You have a 32-bit XP on an older Q6700 but your boot.ini says XP Professional and the kernel and hal drivers have been modded to give you more RAM. You claim the system sees 5Gb, which is useless because a 32 bit system is limited to 4 Gb...2^32 = 4 Gb. It only has 32 bit address registers and unless you get inside the processor and increase it's register sizes, it cannot possibly address more than 4 Gb of RAM.

You only get a bit over 3 Gb because the system needs RAM to operate. If you start messing with the free space the system requires you stand a good chance of interfering with system processes that may need to expand in memory, ergo, your system may run really slowly. My suggestion is that you forget about squeezing more RAM from a 32-bit system. We used to do that with DOS, with the 640Kb of RAM because we were desperate. We'd squeeze RAM from the 640K - 1 meg RAM area where the display drivers resided and often memory would spill over and crash the system.

Get rid of the modded drivers, get XP running properly on its original drivers. Get your new mobo running with system like W10, or even an easier mod with W7. I was able to plug a disk created on an older system with W7 right into an ASUS B360M, a 300-series chipset with an 8th gen Intel i5-8400, and it ran straight to the logon screen on it's stock drivers. Of course, I had no USB drivers so I could not have a mouse or keyboard but luckily I had PS/2.  I would strongly recommend that you find a mobo that has PS/2 ports, if available, since they will save your butt if USB is not there. You can buy two USB to  PS/2 adapters.

Once the mobo is running with a newer OS, take your disk drive from the old system, with XP, and plug it straight into the new mobo SATA port. I did this will all other drives unplugged and I had my SATA drives set in BIOS to be hot-plugged. The XP disk can interfere with other OS installations and once it is running, if hot-plugged, it will show up in the other OS file manager. Boot it. The first thing you will likely see is an acpi related 0xA5 error. Get one of the modded acpi.sys drivers from this thread, I used the acpi.sys from Diderius6, and replace the acpi.sys in your XP directory. Apparently, daniel_k has one as well. If you have a running W7 system, or even W10, you can see and replace files on the XP drive from Windows Explorer in the other system. You can even mod it's registry from W7 using the Load Hive function in W7 registry.

Boot again. The next error will likely be an 0x7B related to ahci, namely the SATA controller. The disk will likely boot fine up till the boot screen but when Windows tries to start, it will crash with an 0x7B bsod. Fernando has a driver which is used in the SP4 unofficial update that worked on my Asus mobo. I don't recall how I loaded it but there are several ways and you might find one here in this thread. Maybe someone could help me out with a link.

That will get you to the logon screen where hopefully you have a PS/2 keyboard/mouse to get you to the desktop. From there, you can start messing with the other modded drivers from this thread. I would not mess with your SSD till you get XP running  from an HDD. Alternately, you can learn how to add the SATA drivers, etc., by replacing the drivers in the Windows directory/S32/drivers with the required iaStor driver and changing registry entries to suit.

 

Page 246

#3676stfHi, Thanks !
if i remember the patch was files of professional XP patched (must find the linc).
maybe is like you say, first of that patch i used

multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Pro with /3GB" /fastdetect /3GB /Userva=2900

now i have this patch i don't know how work, i don't use virtual memory and the memory of the video board is near zero because disabled
(i use a PCI video card)

The PC is slow for what i use the software , but i have optimized at best(game), and for a XP PC is FAST a lot.
this board support max 8gb (ASUS P5B-VM DO)



stf has attached images to this post  ⇗ XP conf.PNG
#3677gordo999
Zitat von ⇗ gordo999 im Beitrag ¶ #3675
... a 32 bit system is limited to 4 Gb...2^32 = 4 Gb. It only has 32 bit address registers and unless you get inside the processor and increase it's register sizes, it cannot possibly address more than 4 Gb of RAM.
Here I am answering my own posts...pathetic. ..I forgot about pae. Some 32-bit versions of Windows with the right processor will allow 32-bit systems to go beyond 4 Gb. However, it's only the server types. Here's a wiki blurb on PAE. Even Win 7, 8, and 10 are limited to 4 Gb. I stand to be corrected, maybe someone has a hack for extending beyond 4 Gb with these systems.

⇗ https://en.wikipedia.org/wiki/Physical_Address_Extension
#3678XPLives⇗ @Andalu
Zitat von ⇗ Andalu im Beitrag ¶ #3659
@XPLives
Zitat von ⇗ XPLives im Beitrag ¶ #3655

Could you identify your picture filenames with the Operating System in the name as well?  From the three photos I am guessing you only tested in Windows 10 judging from the last picture with the icon with 4 blue windows logo or is that Windows 8.X?

I need you to go to "Disk Management" not "My Computer" to look at the drive.

Go to "Administrative Tools", "Computer Management", Under the Storage, there is "Disk Management".
It will show all the drives connected with their Partitions, File Systems, et cetera.

Try "Disk Management", NOT "My Computer" for XP/2003, Windows 7, and Windows 10 again and make sure you label the photos with OS.  I will compare.  Also another shortcut to "Disk Management" you can try RUN and type in "diskmgmt.msc".

   
sorry for the misunderstanding, here the screenshots from three different hard disk drives (I reported the OS type in the images because I can't get the picture naming work here in the forum):



Please also see my post above, thanks.

   
Okay now we're onto something.  So for both Windows 7 and Windows 10 you did not install any drivers for the NVME?  Is your NVME using the built in built in driver that came with Windows 7 and 10?

Now in "Disk Management"
Go to your "Disco 1" - your NVME drive letter, Use your mouse Right Click and choose "Properties"
There will be 4 tabs to pick from, "General", "Policies", "Volumes", "Drivers".

Click the "Volumes" Tab and make a screenshot.
Then on the same Window it says "Volumes:"
Select the Volume D: and then click the Properties button.

Now take a screenshot of this Window that pops up that should say "Local Disk (D:) Properties" but in your language.

Do this steps for both Windows 7 and Windows 10.  So we should have 4 pictures total (2 for each OS).

Also you can do some information gathering of your NVME.  Go to "Command Prompt", type this:

FSUTIL FSINFO NTFSINFO D:

Right Click on the Command Prompt Window and Choose "Select All", then hit the "ENTER" KEY.  This will copy the data.  Now go to Notepad and Ctrl+V to Paste and then save the file as NVMEW7.TXT

for Windows 10 do the same but change the output filename.

FSUTIL FSINFO NTFSINFO D:

Right Click on the Command Prompt Window and Choose "Select All", then hit the "ENTER" KEY.  This will copy the data.  Now go to Notepad and and Ctrl+V to Paste and then save the file as NVMEW10.TXT

Then locate these two files and upload them.
#3679XPLives⇗ @gordo999

Zitat von ⇗ gordo999 im Beitrag ¶ #3677
Zitat von ⇗ gordo999 im Beitrag ¶ #3675
... a 32 bit system is limited to 4 Gb...2^32 = 4 Gb. It only has 32 bit address registers and unless you get inside the processor and increase it's register sizes, it cannot possibly address more than 4 Gb of RAM.
Here I am answering my own posts...pathetic. ..I forgot about pae. Some 32-bit versions of Windows with the right processor will allow 32-bit systems to go beyond 4 Gb. However, it's only the server types. Here's a wiki blurb on PAE. Even Win 7, 8, and 10 are limited to 4 Gb. I stand to be corrected, maybe someone has a hack for extending beyond 4 Gb with these systems.

⇗ https://en.wikipedia.org/wiki/Physical_Address_Extension


The CPU must be > 32-Bit I think at least 36-Bit since PAE uses 36-Bit. Also the chipset limits it.  I have one laptop that has issues breaking 3GB but one chipset newer it broke it so something else to do with the BIOS possibly since using the same CPU it was able to break it on one generation newer chipset.  Don't know where the cut off is for desktops or the same.  I have not tested Server 2003 on my old P4.  Would be interesting to find which desktop chipset broke it.

For Windows 7 32-Bit -> Windows 10 32-Bit there is a patch made that allowed to see over 4GB limit with PAE.  I assume this is very similar to Server 2003 PAE technique.  But most people would probably use Vista 64-Bit or newer anyhow.

This gives an interesting idea if PAE was 36-Bit how to modify so PAE is closest to 64-Bit memory addressing for NT5.X 32-Bit OS.  The other issue is expanding the amount of memory each process can use beyond 4GB.
#3680Andalu⇗ @XPLives
Zitat von ⇗ XPLives im Beitrag ¶ #3655

Okay now we're onto something. So for both Windows 7 and Windows 10 you did not install any drivers for the NVME? Is your NVME using the built in built in driver that came with Windows 7 and 10?

Now in "Disk Management"
Go to your "Disco 1" - your NVME drive letter, Use your mouse Right Click and choose "Properties"
There will be 4 tabs to pick from, "General", "Policies", "Volumes", "Drivers".

Click the "Volumes" Tab and make a screenshot.
Then on the same Window it says "Volumes:"
Select the Volume D: and then click the Properties button.

Now take a screenshot of this Window that pops up that should say "Local Disk (D:) Properties" but in your language.

Do this steps for both Windows 7 and Windows 10. So we should have 4 pictures total (2 for each OS).

Also you can do some information gathering of your NVME. Go to "Command Prompt", type this:

FSUTIL FSINFO NTFSINFO D:

Right Click on the Command Prompt Window and Choose "Select All", then hit the "ENTER" KEY. This will copy the data. Now go to Notepad and Ctrl+V to Paste and then save the file as NVMEW7.TXT

for Windows 10 do the same but change the output filename.

FSUTIL FSINFO NTFSINFO D:

Right Click on the Command Prompt Window and Choose "Select All", then hit the "ENTER" KEY. This will copy the data. Now go to Notepad and and Ctrl+V to Paste and then save the file as NVMEW10.TXT

Then locate these two files and upload them.
   
The disk is recognized as a nvme in Win10 only. On both XP and Win7 it is seen as a generic 'pci device'. In XP the only driver that works is the ofa driver 1.3.
In Win7 I can install both the ofa driver 1.3 and the Samsung NVM Express Driver 3.2. The built in driver works for Win10 only and also there I can install the Samsung NVM Express Driver 3.2 too.
This time I think there all information you need about my disk, if not ask me again :)

 

Andalu has attached files to this post
#3681Andalu⇗ @gordo999
Thanks for all the info. But the problem remains unsolvable for me. First strange behavior: my asrock B250M-Pro4 board doesn't boot when the nvme is the only disk connected, it enters directly into the bios. It needs cd-rom device or another hard disk (even with no operating system) connected at a sata port and even in this case the boot blocks on the message: "Reboot and select proper boot device or insert boot media in selected boot device and press a key".
#3682antomeboys xp x32 works properly on gene xi z390. Now I'm trying with xp x64 but the structure of the installation disk is completely different. Which is the correct procedure to integrate the files on the xp x64 installation disk? Where to put acpi.sys? Thanks

edit: I tried windows xp x64 running on apex ix z270, I started xp on z270 replaced acpi.sys x64 in the windows / system32 folder, copied the 2 sys files of the ahci driver into the driver folder and executed the reg file to integrate the drivers in the registry,  mounted disk on the z390 crashes due to a sata driver problem
#3683gordo999
Zitat von ⇗ Andalu im Beitrag ¶ #3681
"Reboot and select proper boot device or insert boot media in selected boot device and press a key".
⇗ @Andalu ...I have seen that error before and it happened when the SATA boot was pointing at the Intel RST driver with acceleration in BIOS rather than the AHCI driver. In my B360M  BIOS, under Advanced/PCH Storage Configuration, there is a listing near the top for SATA Mode Selection. If you open it with the 'Enter' key it gives you two choices: AHCI or Intel RST With Intel Optane System Acceleration. When I selected the Intel setting to see what it did, I got the same message about 'reboot and select proper boot device'.

OK, I know you device is an SSD but on my mobo the SSD shares one of the SATA slots. If the SATA slot is set in BIOS on the Intel RST option, maybe it is interfering with your SSD. If you have the same BIOS, check that out and make sure the SATA mode is set to AHCI. Or, find out what the Intel RST setting does. It may be related to your SSD.
#3684XPLives⇗ @Andalu
Zitat von ⇗ Andalu im Beitrag ¶ #3680
@XPLives
Zitat von ⇗ XPLives im Beitrag ¶ #3655

Okay now we're onto something. So for both Windows 7 and Windows 10 you did not install any drivers for the NVME? Is your NVME using the built in built in driver that came with Windows 7 and 10?

Now in "Disk Management"
Go to your "Disco 1" - your NVME drive letter, Use your mouse Right Click and choose "Properties"
There will be 4 tabs to pick from, "General", "Policies", "Volumes", "Drivers".

Click the "Volumes" Tab and make a screenshot.
Then on the same Window it says "Volumes:"
Select the Volume D: and then click the Properties button.

Now take a screenshot of this Window that pops up that should say "Local Disk (D:) Properties" but in your language.

Do this steps for both Windows 7 and Windows 10. So we should have 4 pictures total (2 for each OS).

Also you can do some information gathering of your NVME. Go to "Command Prompt", type this:

FSUTIL FSINFO NTFSINFO D:

Right Click on the Command Prompt Window and Choose "Select All", then hit the "ENTER" KEY. This will copy the data. Now go to Notepad and Ctrl+V to Paste and then save the file as NVMEW7.TXT

for Windows 10 do the same but change the output filename.

FSUTIL FSINFO NTFSINFO D:

Right Click on the Command Prompt Window and Choose "Select All", then hit the "ENTER" KEY. This will copy the data. Now go to Notepad and and Ctrl+V to Paste and then save the file as NVMEW10.TXT

Then locate these two files and upload them.
   
The disk is recognized as a nvme in Win10 only. On both XP and Win7 it is seen as a generic 'pci device'. In XP the only driver that works is the ofa driver 1.3.
In Win7 I can install both the ofa driver 1.3 and the Samsung NVM Express Driver 3.2. The built in driver works for Win10 only and also there I can install the Samsung NVM Express Driver 3.2 too.
This time I think there all information you need about my disk, if not ask me again :)

 

   
Thanks for going deeper.

Andula in the Windows 7 Photo, what happens when you click on the Volume Tab, then select the D: drive in the list before clicking Properties?  I didn't see you highlight the D: before hitting Properties so it didn't focus on that drive.

However both Win7 and Win10 confirms the drive is MBR which at first I thought maybe you were using GPT so that wasn't the case.

I looked at the sectors information and it definitely is recognized as a 4K drive.  This is why Windows 7 won't recognize it.  Only Windows 8.X-> Windows 10 supported 4K native sector drives.

But since only Windows 10 can see the drive.  Go to Disk Management and select that Drive and right Click and Delete that Partition so it should be Unallocated and Blank.

Next select that drive again and right click on the Disco 1 area to the left of the partition chart to see if the options convert to MBR or GPT show up?

If it's saying it's on MBR then convert to GPT and see if it shows GPT, then again convert GPT back to MBR and confirm it's back to MBR.

Now see if they will now allow you to create a FAT32 Partition.  Should be limited to 32GB as that's the forced partition size limit on Windows but we will use FAT32 in this case to test, you can format the 32GB partition with allocation unit size 16,384 Bytes or 16KB.  Do not create any more partitions.

Repeat the same photo and Command Prompt steps again we did for Windows 7 and 10 in the last message instructions.  I want to see if anything changed and if Windows 7 can see that drive and allow you to open the drive letter at all or even in XP.
#3685XPLives⇗ @antome
Zitat von ⇗ antome im Beitrag ¶ #3682
boys xp x32 works properly on gene xi z390. Now I'm trying with xp x64 but the structure of the installation disk is completely different. Which is the correct procedure to integrate the files on the xp x64 installation disk? Where to put acpi.sys? Thanks

edit: I tried windows xp x64 running on apex ix z270, I started xp on z270 replaced acpi.sys x64 in the windows / system32 folder, copied the 2 sys files of the ahci driver into the driver folder and executed the reg file to integrate the drivers in the registry,  mounted disk on the z390 crashes due to a sata driver problem


   
This is expected.  Reattach the SATA drive back to your Z270 system.  Go download my driver here.
⇗ Windows XP Pro 64-Bit and Server 2003 64-Bit on Modern Hardware
XP Pro 64-Bit and Server 2003 64-Bit - Universal Intel SATA Controller Driver - XPLIVES64.ZIP

Then go to Device Manager while in XP on Z270.  Update driver of the Intel SATA controller using mine.

Then in Device Manager take a snapshot and upload it to confirm it installed correctly.

Reboot on Z270 and make sure it works and boot correctly back into XP.

If this works then you can shutdown and reconnect the SATA drive to the Z390 and it should boot up properly without the BSOD 7B error.
#3686Andalu⇗ @XPLives
Zitat von ⇗ XPLives im Beitrag ¶ #3684

Thanks for going deeper.

Andula in the Windows 7 Photo, what happens when you click on the Volume Tab, then select the D: drive in the list before clicking Properties?  I didn't see you highlight the D: before hitting Properties so it didn't focus on that drive.

However both Win7 and Win10 confirms the drive is MBR which at first I thought maybe you were using GPT so that wasn't the case.

I looked at the sectors information and it definitely is recognized as a 4K drive.  This is why Windows 7 won't recognize it.  Only Windows 8.X-> Windows 10 supported 4K native sector drives.

But since only Windows 10 can see the drive.  Go to Disk Management and select that Drive and right Click and Delete that Partition so it should be Unallocated and Blank.

Next select that drive again and right click on the Disco 1 area to the left of the partition chart to see if the options convert to MBR or GPT show up?

If it's saying it's on MBR then convert to GPT and see if it shows GPT, then again convert GPT back to MBR and confirm it's back to MBR.

Now see if they will now allow you to create a FAT32 Partition.  Should be limited to 32GB as that's the forced partition size limit on Windows but we will use FAT32 in this case to test, you can format the 32GB partition with allocation unit size 16,384 Bytes or 16KB.  Do not create any more partitions.

Repeat the same photo and Command Prompt steps again we did for Windows 7 and 10 in the last message instructions.  I want to see if anything changed and if Windows 7 can see that drive and allow you to open the drive letter at all or even in XP.
   
Thank you for the help ;) As you can see below the changeover from MBR to GPT is not allowed, at least in windows:



Zitat von ⇗ XPLives im Beitrag ¶ #3684

Andula in the Windows 7 Photo, what happens when you click on the Volume Tab, then select the D: drive in the list before clicking Properties?  I didn't see you highlight the D: before hitting Properties so it didn't focus on that drive.

The D: drive properties in Win7 are those shown in the image on the right, even if the volume does not seem to be highlighted.
#3687XPLives⇗ @Andalu
Zitat von ⇗ Andalu im Beitrag ¶ #3686
@XPLives
Zitat von ⇗ XPLives im Beitrag ¶ #3684

Thanks for going deeper.

Andula in the Windows 7 Photo, what happens when you click on the Volume Tab, then select the D: drive in the list before clicking Properties?  I didn't see you highlight the D: before hitting Properties so it didn't focus on that drive.

However both Win7 and Win10 confirms the drive is MBR which at first I thought maybe you were using GPT so that wasn't the case.

I looked at the sectors information and it definitely is recognized as a 4K drive.  This is why Windows 7 won't recognize it.  Only Windows 8.X-> Windows 10 supported 4K native sector drives.

But since only Windows 10 can see the drive.  Go to Disk Management and select that Drive and right Click and Delete that Partition so it should be Unallocated and Blank.

Next select that drive again and right click on the Disco 1 area to the left of the partition chart to see if the options convert to MBR or GPT show up?

If it's saying it's on MBR then convert to GPT and see if it shows GPT, then again convert GPT back to MBR and confirm it's back to MBR.

Now see if they will now allow you to create a FAT32 Partition.  Should be limited to 32GB as that's the forced partition size limit on Windows but we will use FAT32 in this case to test, you can format the 32GB partition with allocation unit size 16,384 Bytes or 16KB.  Do not create any more partitions.

Repeat the same photo and Command Prompt steps again we did for Windows 7 and 10 in the last message instructions.  I want to see if anything changed and if Windows 7 can see that drive and allow you to open the drive letter at all or even in XP.
   
Thank you for the help ;) As you can see below the changeover from MBR to GPT is not allowed, at least in windows:



Zitat von ⇗ XPLives im Beitrag ¶ #3684

Andula in the Windows 7 Photo, what happens when you click on the Volume Tab, then select the D: drive in the list before clicking Properties?  I didn't see you highlight the D: before hitting Properties so it didn't focus on that drive.

The D: drive properties in Win7 are those shown in the image on the right, even if the volume does not seem to be highlighted.


   
You didn't delete the partition first.  You must delete the partition before you can change to MBR and GPT.
I had to translate "spazio disponibile" which means space available.   When you delete the partition it should say "Unallocated space".

Or if I translated incorrectly is that a deleted partition?  If so then it is strange you cannot change between MBR and GPT.

Ahh I noticed it is green highlighted.  Usually this means extended partition.  You need to remove all partitions.

If it really has no partitions Primary and Extended are gone then something is strange.

We can try to use Hex Editor and zero out Sectors 0-8.
Here's a free one.
⇗ https://mh-nexus.de/en/hxd/

Make sure you point to the correct disk and not your OS drive.
#3688Andalu⇗ @gordo999
Zitat von ⇗ gordo999 im Beitrag ¶ #3683
@Andalu ...I have seen that error before and it happened when the SATA boot was pointing at the Intel RST driver with acceleration in BIOS rather than the AHCI driver. In my B360M  BIOS, under Advanced/PCH Storage Configuration, there is a listing near the top for SATA Mode Selection. If you open it with the 'Enter' key it gives you two choices: AHCI or Intel RST With Intel Optane System Acceleration. When I selected the Intel setting to see what it did, I got the same message about 'reboot and select proper boot device'.

OK, I know you device is an SSD but on my mobo the SSD shares one of the SATA slots. If the SATA slot is set in BIOS on the Intel RST option, maybe it is interfering with your SSD. If you have the same BIOS, check that out and make sure the SATA mode is set to AHCI. Or, find out what the Intel RST setting does. It may be related to your SSD.

   
In my B250M bios, under Advanced/Storage Configuration, I have no SATA Mode Selection as you can see in the first image of a previous post ¶ here.
Can you upload the yours please?
#3689Andalu⇗ @XPLives
You are right and I'm real groggy
I'm trying now....
#3690XPLives
Zitat von ⇗ Andalu im Beitrag ¶ #3689
@XPLives
You are right and I'm real groggy
I'm trying now....


Ahh... get some sleep no rush to get the data.  I just noticed it was strange the "green border" and compared to mine. :)

Read my post again I updated slightly but since it looks like you didn't delete the partition then maybe not necessary to hexedit.

 

Page 247

#3691Andalu⇗ @XPLives
I did everything in Win10 as you explained ¶ here until the 'fsutil fsinfo ntfsinfo D:' command which give me the message: "the fsutil utility needs a local NTFS volume" (translated by me... so inaccurate :)).
The partition (in MBR mode) has now a size of 31,2GB and has been formatted with the fat32 file system. No other partition created. No hex editing applied.
#3692XPLives⇗ @Andalu

Zitat von ⇗ Andalu im Beitrag ¶ #3691
@XPLives
I did everything in Win10 as you explained ¶ here until the 'fsutil fsinfo ntfsinfo D:' command which give me the message: "the fsutil utility needs a local NTFS volume" (translated by me... so inaccurate :)).
The partition (in MBR mode) has now a size of 31,2GB and has been formatted with the fat32 file system. No other partition created. No hex editing applied.

Yes that's correct because now it is a true FAT32 and not NTFS.  Can you check under Disk Management for XP, W7, and W10 show the drive with snapshots?

Also can you access the NVME drive letter in XP, W7, and W10?  Can you explore D: or copy a folder or file to it?

If you use Hex Editor go to Absolute Sector 0 on NVME drive and snapshot or copy it.  And do the same for Sector 1-8 and upload it.
#3693Andalu⇗ @XPLives
I can access to the nvme partition in all SO and operate with it as a normal disk drive. Here the snaps.



Andalu has attached files to this post
#3694XPLives⇗ @Andalu

Zitat von ⇗ Andalu im Beitrag ¶ #3693
@XPLives
I can access to the nvme partition in all SO and operate with it as a normal disk drive. Here the snaps.

This is good.  You can now see the NVME in XP.

I checked the Sectors.  Now that you can access the partition in XP but you must change it back to XP Partition style not Windows 7 or 10.

In XP Disk Management you must now delete the partition.  So now completely Unallocated Space "Non allocata" again.

Then go to HxD and enable "write" mode for NVME Drive F:.

Go to Sector 0-8, and 63, 64 and zero out the entire sector to 00s.

Then reboot the XP system.

Once in XP again go to Disk Management.

On NVME Drive,
Create the 2GB FAT16 Partition #1 and use allocation unit size 32,768 Bytes or 32KB and format.

Create the 32GB FAT32 Partition #2 and use allocation unit size 16,384 Bytes or 16KB and format.

Go to HxD and select NVME disk and copy absolute Sector 0-8, 63, 64 and upload it.

Next if you have time.  If you got 98SE DOS boot disk using USB floppy you can try and format the first partition of NVME.  Make sure all other drives are disconnected to prevent accidents.  Only NVME attached and USB floppy as primary boot device to boot 98SE DOS.

Then type
Format C:/s

If it sees the drive it should format this partition #1.

Reboot and check the BIOS to see if NVME is set to Primary Boot Drive.  Eject floppy disk so it won't access it.  After it is done you can reboot.

If it works then it should boot to 98SE DOS on NVME and should then be possible to install XP to it on D:.  Also test does FDISK work to see NVME.
#3695Andalu⇗ @XPLives
I deleted the partition in XP disk management to have unallocated space only. But now, about HxD, please keep in mind that I have never used a disk hex editor before :)
I already enabled the 'write mode' for the physical disk 2 (nvme) and to be sure: for '0-8' do you mean by selecting all the sectors from 0 to 8 at one step at time (1,2,3,4 etc. and after the sectors 63 and 64)? And mostly important: how to edit the 'entire sector' to 00s? :)


EDIT: I did it all in HxD, I just hope I didn't make a crap :)
Two partitions created in the nvme disk and formatted in fat16 and fat32.
Below the sectors exported from HxD in .txt format.



Andalu has attached files to this post
#3696antome
Zitat von ⇗ XPLives im Beitrag ¶ #3685
@antome
Zitat von ⇗ antome im Beitrag ¶ #3682
boys xp x32 works properly on gene xi z390. Now I'm trying with xp x64 but the structure of the installation disk is completely different. Which is the correct procedure to integrate the files on the xp x64 installation disk? Where to put acpi.sys? Thanks

edit: I tried windows xp x64 running on apex ix z270, I started xp on z270 replaced acpi.sys x64 in the windows / system32 folder, copied the 2 sys files of the ahci driver into the driver folder and executed the reg file to integrate the drivers in the registry,  mounted disk on the z390 crashes due to a sata driver problem


   
This is expected.  Reattach the SATA drive back to your Z270 system.  Go download my driver here.
⇗ Windows XP Pro 64-Bit and Server 2003 64-Bit on Modern Hardware
XP Pro 64-Bit and Server 2003 64-Bit - Universal Intel SATA Controller Driver - XPLIVES64.ZIP

Then go to Device Manager while in XP on Z270.  Update driver of the Intel SATA controller using mine.

Then in Device Manager take a snapshot and upload it to confirm it installed correctly.

Reboot on Z270 and make sure it works and boot correctly back into XP.

If this works then you can shutdown and reconnect the SATA drive to the Z390 and it should boot up properly without the BSOD 7B error.


Thanks for the driver now something has changed, xp x64 in normal mode I get error 0x000000CA while in safe mode it starts correctly on the z390, how do I solve this problem?  the same disk starts correctly on the z270
#3697XPLives⇗ @antome
Zitat von ⇗ antome im Beitrag ¶ #3696
Zitat von ⇗ XPLives im Beitrag ¶ #3685
⇗ @antome

Zitat von ⇗ antome im Beitrag ¶ #3682
boys xp x32 works properly on gene xi z390. Now I'm trying with xp x64 but the structure of the installation disk is completely different. Which is the correct procedure to integrate the files on the xp x64 installation disk? Where to put acpi.sys? Thanks

edit: I tried windows xp x64 running on apex ix z270, I started xp on z270 replaced acpi.sys x64 in the windows / system32 folder, copied the 2 sys files of the ahci driver into the driver folder and executed the reg file to integrate the drivers in the registry,  mounted disk on the z390 crashes due to a sata driver problem


   
This is expected.  Reattach the SATA drive back to your Z270 system.  Go download my driver here.
⇗ Windows XP Pro 64-Bit and Server 2003 64-Bit on Modern Hardware
XP Pro 64-Bit and Server 2003 64-Bit - Universal Intel SATA Controller Driver - XPLIVES64.ZIP

Then go to Device Manager while in XP on Z270.  Update driver of the Intel SATA controller using mine.

Then in Device Manager take a snapshot and upload it to confirm it installed correctly.

Reboot on Z270 and make sure it works and boot correctly back into XP.

If this works then you can shutdown and reconnect the SATA drive to the Z390 and it should boot up properly without the BSOD 7B error.


Thanks for the driver now something has changed, xp x64 in normal mode I get error 0x000000CA while in safe mode it starts correctly on the z390, how do I solve this problem?  the same disk starts correctly on the z270


   
Your error explained here.
⇗ https://docs.microsoft.com/en-us/windows...code-reference2
⇗ https://docs.microsoft.com/en-us/windows...ted-fatal-error
0x000000CA PNP_DETECTED_FATAL_ERROR

I would try and install Z390 from scratch using my driver instead of moving to this machine from Z270.

But disable onboard ethernet, sound, et cetera in BIOS.

If still getting that error could be the modded ACPI.SYS causing it and needs further patching from creator.
#3698gordo999
Zitat von ⇗ Andalu im Beitrag ¶ #3680
The disk is recognized as a nvme in Win10 only.
⇗ @Andalu ...that's not what I am seeing. In the photos you attached, in disk management, both are showing as NVME (D:) with 465.69 GB NTFS. The Fsutil readouts from W7 and W10 differ in MFT positions. That's strange since the MFT readings should be in the same spot for both. There is a backup MFT in an ntfs system and fsutil is reporting it in different locations for W7 and W10.  

Here are the BIOS photos you requested:









.
#3699Mattiwatti
Zitat von ⇗ daniel_k im Beitrag ¶ #3633
@Mattiwatti
You seem to have many experience with driver development, can you help us, please?
Have you ever seem a driver sample which we can modify to suit our needs?
Basically we need to set two PCI configuration registers in the Intel XHCI controller in order to properly enable USB3 speeds.

Sorry, I missed most of this discussion and it is a bit hard to find all of the details scattered throughout such a big thread...

I'm going to go ahead and say that I probably won't be able to help here, since I'm missing the source code to the drivers (obviously) and USB in general isn't really my area of expertise. It may still be possible to mod an existing driver if the problem is more what you would call a (small, dumb) driver bug than a hardware issue or a major bug in the drivers. Sorry, for the repetition here, but just to clarify...
- The XHCI controller is an onboard one on an Intel PCH? (and if so, which chipset?)
- Which drivers (exact versions) are being used on XP, and which on 7 (presumably these are different ones since Intel has released XHCI drivers for Windows 7, but not XP)?
- Can you give details on which PCI config registers need to be set to which values? (and also, what they are being set to right now?) Are these values being (re)set at every boot (I'm guessing yes, otherwise this would not be such a big problem)? Also not unimportantly, do you have any idea about the meaning of these PCI config registers and their values?

In my experience USB performance problems are almost always purely down to hardware (especially cheap adapters such as USB3 <-> SATA ones for external hard disks) and drivers are only rarely the issue, especially the USB controller drivers themselves. I have never seen actual XHCI controller drivers be the cause of any performance issue (but very occasionally the driver of a device itself, e.g. poorly written USB disk drivers). Though that doesn't mean it is impossible of course, maybe I've just been lucky with the motherboards I've used in the past.
#3700Mattiwatti
Zitat von ⇗ gordo999 im Beitrag ¶ #3649
@Mattiwatti ....I know this is getting off topic but there are posters in this thread who may find it of interest in relation to the content of the thread. Besides, I want to contribute to this thread by tracing into the LAN driver, for example, to see what, if anything, can be done to get it going. As you have claimed, it's likely impossible, if not really hard, due to the number of functions absent in ntoskrnl and ndis.sys. That's what I am trying to find out in this discussion. Is there anything that can be done via modding to make it work?

I'm always hesitant to use words like 'impossible', since this being the internet, saying something is impossible guarantees that some smartarse will spend months of his/her life just to prove you wrong. But... getting an NDIS 6.x driver to work on XP is about as close to impossible as it gets, from what I can see. It's possible that the msrpc.sys dependency can be patched out by NOP-ing all of the function calls going to this driver, which would clear the biggest hurdle that I can see here (namely the absence of ALPC before Vista). The difficulty would then depend on the remaining missing kernel APIs - as you can probably guess, some functions are harder to implement than others. For this driver in particular I'd say you probably have a better chance of success trying to find an older (NDIS 5.x based) driver that works with an ethernet card that is reasonably similar in terms of hardware to the I2XX-V onboard controllers that were introduced later.

Zitat von ⇗ gordo999 im Beitrag ¶ #3649
I have not investigated that entirely but with my serial remote debugging sessions the target has to be rebooted for the source to find it. When the target reboots, it is stopped early in the boot process, before the logon screen, and as far as I can see it's possible to trace all the way to the desktop, if desired.

Correct, the target must be booted in debug mode with the debugger ready to 'receive' the serial connection at boot time. (This is no longer true in newer versions of Windows with ethernet debugging where you can attach a debugger after the target has booted, provided that the target booted into debug mode.) You can toggle the 'initial break' with CTRL+ALT+K if you don't want to break into the target immediately on every boot.

Zitat von ⇗ gordo999 im Beitrag ¶ #3649
In that case, Microsoft may have built in code to prevent wdbg getting past a sysenter or syscall into kernel code.

This is out of the question. Firstly MS would be shooting themselves in the foot by doing this, since the kernel developers are after all the primary consumers of WinDbg themselves (and no, they do not have a secret version of WinDbg with extra superpowers.) A more boring reason is that sysenter/sycall really do not do anything magical or 'hidden' (though it certainly is true that a debugger might have trouble stepping into them):

 
1: kd> rdmsr 0xc0000082 ; 0xc0000082 == MSR_LSTAR, the 64 bit 'syscall' target
msr[c0000082] = fffff800`008b1980
1: kd> u fffff800`008b1980
nt!KiSystemCall64 [C:\<snip>\ntos\ke\amd64\trap.asm @ 1720]:
fffff800`008b1980 0f01f8 swapgs
fffff800`008b1983 6548892425a0010000 mov qword ptr gs:[1A0h],rsp
fffff800`008b198c 65488b2425a8010000 mov rsp,qword ptr gs:[1A8h]
fffff800`008b1995 6a2b push 2Bh
fffff800`008b1997 65ff3425a0010000 push qword ptr gs:[1A0h]
fffff800`008b199f 4153 push r11
fffff800`008b19a1 6a33 push 33h
fffff800`008b19a3 51 push rcx


Thus we can see that on this Server 2003 x64 machine, the destination of a 'syscall' instruction will be KiSystemCall64 in ntoskrnl. Admittedly this is not very interesting because it is true for every syscall instruction, and KiSystemCall64 is only a relatively short preamble to transfer execution to the 'real' syscall that was requested, which is dependent on the syscall number (this is true for both x86 and x64, with some minor differences in how these numbers are handled). The information on how these functions can be found by their syscall number is encoded in nt!KeServiceDescriptorTable (there is also nt!KeServiceDescriptorTableShadow for win32k.sys syscalls, which works similarly but is not relevant here.)

I don't want to make this post too long, but the ⇗ second half of this article gives some good info on how to view the SSDT (System Service Descriptor Table) in WinDbg. Note that syscall targets are encoded differently on x86 and x64 - I couldn't immediately find a good source for x86 but it is very similar, just without the bit shifting. This knowledge is fairly useful if you want to, for example, know which kernel mode function the following bit of user mode code (taken from my Windows 7's ntdll.dll) is going to end up calling:

 
mov r10, rcx
mov eax, 16h ; syscall number
syscall
retn


All 400+ syscalls (a bit less than that in XP) follow this pattern, with only the syscall number varying. Of course, since MS makes debug symbols publicly available which you should be using, I already saw that this is ntdll!NtQueryInformationProcess, which (to no one's surprise) goes to nt!NtQueryInformationProcess. But this can sometimes still be useful to know, e.g. if debug symbols are missing for some file version or if you are dealing with an obfuscated program that performs its own syscalls.

Zitat von ⇗ gordo999 im Beitrag ¶ #3649
Zitat von ⇗ Mattiwatti im Beitrag ¶ #3646
...what are you trying to achieve when stepping into a 'sysenter'?
There are times when the system is called from a user mode app and the system calls back into user mode, sometimes multiple times, before returning after the sysenter. If you don't enter system code at sysenter you miss the call back and there could be code in the call back in u-mode you need to see. I have encountered that many times with SI, tracing into system code then suddenly being back in user code in the app I am debugging, yet well before the system code returns you to the original call for the u-mode app at sysenter.

There are only a handful of user mode functions that are called in this way, most of which are related to exception dispatching and not usually interesting on the user mode side. The one black sheep in the NT family is win32k.sys, which makes extensive use of user mode callbacks. For both cases it is perfectly possible (and easier) to attach a user mode debugger to the target to debug user mode portions of a call stack. In practice it is in my experience seldom useful to step through user mode callbacks however.

Zitat von ⇗ gordo999 im Beitrag ¶ #3649
This action would also make it very difficult to follow a cold code read in IDA. In IDA, a function often begins with no reference to where it was called from. It's likely being called from system code via a call to system code elsewhere. You'd need a debugger to confirm that.

Sure. It's always best to use a combination of static and dynamic analysis and use whichever one best suits the problem.

Zitat von ⇗ gordo999 im Beitrag ¶ #3649
Zitat von ⇗ Mattiwatti im Beitrag ¶ #3646
Instead, set a breakpoint on the syscall you wish to debug (e.g. 'bp nt!NtCreateFile'
That's fine if you know the call you want to trap with a bp. It's kind of   shotgun approach at times since you are guessing that the app might call via that function. What if it doesn't, and there is code during a system call that is called by the system before exiting the syscall? I agree that setting a BP is more elegant but sometimes you just have to trace to see where the code goes. I also agree with what you say below, that the system code itself is not of much interest. However, it's what the system code does with the calling parameters that can be of interest. Besides, if you want to learn how the system processes calls from U-mode, or just how a driver works, it's helpful to see the system in action. It's one thing to read about a PDO in theory, or see a it in table form in Windbg, and quite another to see the actually code and data related to a PDO. Some people are happy to set BPs and ignore the intervening code but I find the implementation of assembly language to be fascinating, especially as related to functions in a higher level language like C++.

See above re: analyzing syscalls. What you will end up doing by 'stepping into a syscall' is stepping through KiSystemCall[32|64]. This is hyper-generic and utterly boring (not really if you are into OS internals - but for most practical purposes) boilerplate code that has barely changed since Windows NT 4, and has no relation to the user mode function you were stepping through a moment before. If you are stepping through a user mode program that is calling NtCreateFile in ntdll, trust me that you really want to step through NtCreateFile in the kernel (if you do want to step through it), not any function(s) leading to it.
#3701Andalu⇗ @gordo999

Zitat von ⇗ gordo999 im Beitrag ¶ #3698
...that's not what I am seeing. In the photos you attached, in disk management, both are showing as NVME (D:) with 465.69 GB NTFS.

I meant that the nvme is recognized immediately as a disk in win10 with the built in driver while in XP and Win7 it is recognized as a "PCI Device" until the drivers (ofa or samsung) are installed.
Thanks for the screenshots ;)
#3702gordo999
Zitat von ⇗ Andalu im Beitrag ¶ #3701
I meant that the nvme is recognized immediately as a disk in win10 with the built in driver while in XP and Win7 it is recognized as a "PCI Device"...
⇗ @Andalu ...I gather from your device being described as a portable SSD that it is a plugin device for the PCIe bus. When a device like your is connected hot, if that is the case, the driver which is first in line interrogates the device and gets pertinent information from the device. If the device is plugged into the PCIe bus it will identify itself as a PCI device.

If a SATA drive, on the other hand, is plugged into a SATA port, it would identify itself as a SATA device. It's all written in the device fixed memory. If an NV device is connected to the motherboard permanently, it would likely describe itself as a an NVMI device. Because NVMI was not introduced to Windows till W8, W7 in a raw state would know nothing about it, nor would XP. Apparently, Microsoft released a driver for W7 in an update. You'd have to track down which update. There's a hotfix from Microsoft about that: KB2990941.
#3703antome
Zitat von ⇗ XPLives im Beitrag ¶ #3697
@antome
Zitat von ⇗ antome im Beitrag ¶ #3696
Zitat von ⇗ XPLives im Beitrag ¶ #3685
@antome

Zitat von ⇗ antome im Beitrag ¶ #3682
boys xp x32 works properly on gene xi z390. Now I'm trying with xp x64 but the structure of the installation disk is completely different. Which is the correct procedure to integrate the files on the xp x64 installation disk? Where to put acpi.sys? Thanks

edit: I tried windows xp x64 running on apex ix z270, I started xp on z270 replaced acpi.sys x64 in the windows / system32 folder, copied the 2 sys files of the ahci driver into the driver folder and executed the reg file to integrate the drivers in the registry,  mounted disk on the z390 crashes due to a sata driver problem


   
This is expected.  Reattach the SATA drive back to your Z270 system.  Go download my driver here.
⇗ Windows XP Pro 64-Bit and Server 2003 64-Bit on Modern Hardware
XP Pro 64-Bit and Server 2003 64-Bit - Universal Intel SATA Controller Driver - XPLIVES64.ZIP

Then go to Device Manager while in XP on Z270.  Update driver of the Intel SATA controller using mine.

Then in Device Manager take a snapshot and upload it to confirm it installed correctly.

Reboot on Z270 and make sure it works and boot correctly back into XP.

If this works then you can shutdown and reconnect the SATA drive to the Z390 and it should boot up properly without the BSOD 7B error.


Thanks for the driver now something has changed, xp x64 in normal mode I get error 0x000000CA while in safe mode it starts correctly on the z390, how do I solve this problem?  the same disk starts correctly on the z270


   
Your error explained here.
⇗ https://docs.microsoft.com/en-us/windows...code-reference2
⇗ https://docs.microsoft.com/en-us/windows...ted-fatal-error
0x000000CA PNP_DETECTED_FATAL_ERROR

I would try and install Z390 from scratch using my driver instead of moving to this machine from Z270.

But disable onboard ethernet, sound, et cetera in BIOS.

If still getting that error could be the modded ACPI.SYS causing it and needs further patching from creator.


Thanks for your patience :), I tried with a DVD installation of xp x64, first of all I replaced acpi.sy_ in the Amd64 folder and recreated the driver.cab file with acpi.sys always modified in the amd64 folder, then I created iso with  nlite with the ahci drivers for the z390 have I done something wrong?  because I get the same error 0x000000CA during the initialization of the hardware.  I disabled everything possible from bios, audio lan, all usb port.

#3704XPLives⇗ @antome
Zitat von ⇗ antome im Beitrag ¶ #3703
Zitat von ⇗ XPLives im Beitrag ¶ #3697
⇗ @antome

Zitat von ⇗ antome im Beitrag ¶ #3696
Zitat von ⇗ XPLives im Beitrag ¶ #3685
⇗ @antome

Zitat von ⇗ antome im Beitrag ¶ #3682
boys xp x32 works properly on gene xi z390. Now I'm trying with xp x64 but the structure of the installation disk is completely different. Which is the correct procedure to integrate the files on the xp x64 installation disk? Where to put acpi.sys? Thanks

edit: I tried windows xp x64 running on apex ix z270, I started xp on z270 replaced acpi.sys x64 in the windows / system32 folder, copied the 2 sys files of the ahci driver into the driver folder and executed the reg file to integrate the drivers in the registry,  mounted disk on the z390 crashes due to a sata driver problem


   
This is expected.  Reattach the SATA drive back to your Z270 system.  Go download my driver here.
⇗ Windows XP Pro 64-Bit and Server 2003 64-Bit on Modern Hardware
XP Pro 64-Bit and Server 2003 64-Bit - Universal Intel SATA Controller Driver - XPLIVES64.ZIP

Then go to Device Manager while in XP on Z270.  Update driver of the Intel SATA controller using mine.

Then in Device Manager take a snapshot and upload it to confirm it installed correctly.

Reboot on Z270 and make sure it works and boot correctly back into XP.

If this works then you can shutdown and reconnect the SATA drive to the Z390 and it should boot up properly without the BSOD 7B error.


Thanks for the driver now something has changed, xp x64 in normal mode I get error 0x000000CA while in safe mode it starts correctly on the z390, how do I solve this problem?  the same disk starts correctly on the z270


   
Your error explained here.
⇗ https://docs.microsoft.com/en-us/windows...code-reference2
⇗ https://docs.microsoft.com/en-us/windows...ted-fatal-error
0x000000CA PNP_DETECTED_FATAL_ERROR

I would try and install Z390 from scratch using my driver instead of moving to this machine from Z270.

But disable onboard ethernet, sound, et cetera in BIOS.

If still getting that error could be the modded ACPI.SYS causing it and needs further patching from creator.


Thanks for your patience :), I tried with a DVD installation of xp x64, first of all I replaced acpi.sy_ in the Amd64 folder and recreated the driver.cab file with acpi.sys always modified in the amd64 folder, then I created iso with  nlite with the ahci drivers for the z390 have I done something wrong?  because I get the same error 0x000000CA during the initialization of the hardware.  I disabled everything possible from bios, audio lan, all usb port.



   
Have you tried XP 32-Bit install with modded ACPI.SYS and Fernando SATA driver?  Does it get the same error on Z390?
Hard to isolate if this is ACPI related since there is no MPS Mode for X64. But PNP is Plug and Play so that is why we need similar test on XP 32-Bit to compare.

Also make sure the XP 32-Bit you do a clean ISO before integrating the Fernando SATA driver.  If you already mixed it with STORAHCI then we cannot use that image.  It's possible what Gordo999 said could be installing two different storage drivers using the same hardware ID as the cause.  I don't know if that is what happened so that's why you will have to use a clean XP 32-Bit for this test and just integrated Fernando SATA driver only.  Copy the modded ACPI.SYS manually when you get BSOD A5 error for testing rather than integrating into driver.cab.
#3705gordo999
Zitat von ⇗ antome im Beitrag ¶ #3703
... I get the same error 0x000000CA during the initialization of the hardware
⇗ @antome ...the 0xCA error seems to be related to duplicate device IDs. In other words, during hardware enumeration, the plug and play manager is seeing the same Device ID used twice. Not sure how to deal with that right now since I am a bit under the weather and not thinking clearly. Maybe ⇗ @XPLives can figure something out.


If your system was booting I'd try to fix it by loading the HKLM\System hive in regedit in another system and checking for identical device IDs in HKLM\Susyem\ControlSetxxx\Enum. It sounds like your system is not booting at all so there is something wrong in your installation disk. In that case, I'd remove recent additions one by one to see which one is causing two drivers to be loaded with the same Device ID. Might be easier to remove all recent additions and add them one by one. If you remove them all, see if you can get back to the 0XA5 (acpi) error or the 0x7B (ahci) error.

 

Page 248

#3706antome
Zitat von ⇗ XPLives im Beitrag ¶ #3704
@antome
Zitat von ⇗ antome im Beitrag ¶ #3703
Zitat von ⇗ XPLives im Beitrag ¶ #3697
@antome

Zitat von ⇗ antome im Beitrag ¶ #3696
Zitat von ⇗ XPLives im Beitrag ¶ #3685
@antome

Zitat von ⇗ antome im Beitrag ¶ #3682
boys xp x32 works properly on gene xi z390. Now I'm trying with xp x64 but the structure of the installation disk is completely different. Which is the correct procedure to integrate the files on the xp x64 installation disk? Where to put acpi.sys? Thanks

edit: I tried windows xp x64 running on apex ix z270, I started xp on z270 replaced acpi.sys x64 in the windows / system32 folder, copied the 2 sys files of the ahci driver into the driver folder and executed the reg file to integrate the drivers in the registry,  mounted disk on the z390 crashes due to a sata driver problem


   
This is expected.  Reattach the SATA drive back to your Z270 system.  Go download my driver here.
⇗ Windows XP Pro 64-Bit and Server 2003 64-Bit on Modern Hardware
XP Pro 64-Bit and Server 2003 64-Bit - Universal Intel SATA Controller Driver - XPLIVES64.ZIP

Then go to Device Manager while in XP on Z270.  Update driver of the Intel SATA controller using mine.

Then in Device Manager take a snapshot and upload it to confirm it installed correctly.

Reboot on Z270 and make sure it works and boot correctly back into XP.

If this works then you can shutdown and reconnect the SATA drive to the Z390 and it should boot up properly without the BSOD 7B error.


Thanks for the driver now something has changed, xp x64 in normal mode I get error 0x000000CA while in safe mode it starts correctly on the z390, how do I solve this problem?  the same disk starts correctly on the z270


   
Your error explained here.
⇗ https://docs.microsoft.com/en-us/windows...code-reference2
⇗ https://docs.microsoft.com/en-us/windows...ted-fatal-error
0x000000CA PNP_DETECTED_FATAL_ERROR

I would try and install Z390 from scratch using my driver instead of moving to this machine from Z270.

But disable onboard ethernet, sound, et cetera in BIOS.

If still getting that error could be the modded ACPI.SYS causing it and needs further patching from creator.


Thanks for your patience :), I tried with a DVD installation of xp x64, first of all I replaced acpi.sy_ in the Amd64 folder and recreated the driver.cab file with acpi.sys always modified in the amd64 folder, then I created iso with  nlite with the ahci drivers for the z390 have I done something wrong?  because I get the same error 0x000000CA during the initialization of the hardware.  I disabled everything possible from bios, audio lan, all usb port.



   
Have you tried XP 32-Bit install with modded ACPI.SYS and Fernando SATA driver?  Does it get the same error on Z390?
Hard to isolate if this is ACPI related since there is no MPS Mode for X64. But PNP is Plug and Play so that is why we need similar test on XP 32-Bit to compare.

Also make sure the XP 32-Bit you do a clean ISO before integrating the Fernando SATA driver.  If you already mixed it with STORAHCI then we cannot use that image.  It's possible what Gordo999 said could be installing two different storage drivers using the same hardware ID as the cause.  I don't know if that is what happened so that's why you will have to use a clean XP 32-Bit for this test and just integrated Fernando SATA driver only.  Copy the modded ACPI.SYS manually when you get BSOD A5 error for testing rather than integrating into driver.cab.





Zitat von ⇗ gordo999 im Beitrag ¶ #3705
Zitat von ⇗ antome im Beitrag ¶ #3703
... I get the same error 0x000000CA during the initialization of the hardware
@antome ...the 0xCA error seems to be related to duplicate device IDs. In other words, during hardware enumeration, the plug and play manager is seeing the same Device ID used twice. Not sure how to deal with that right now since I am a bit under the weather and not thinking clearly. Maybe @XPLives can figure something out.


If your system was booting I'd try to fix it by loading the HKLM\System hive in regedit in another system and checking for identical device IDs in HKLM\Susyem\ControlSetxxx\Enum. It sounds like your system is not booting at all so there is something wrong in your installation disk. In that case, I'd remove recent additions one by one to see which one is causing two drivers to be loaded with the same Device ID. Might be easier to remove all recent additions and add them one by one. If you remove them all, see if you can get back to the 0XA5 (acpi) error or the 0x7B (ahci) error.



I only integrated the ahci a352 by fernando single driver.  I remember that to get the installation to xp x32 as well as replacing acpi.sy_ (acpi.sys) I had also replaced the syssetup.sy_ file in the i386 folder of the installation disk, these 2 files were also necessary to update a working image  on z270 and make it compatible for z390 without any errors.  You probably need a syssetup.dll file x64 modified for the z390.
This was the procedure performed on xp x32

So to get windows to work we care about the following files:
acpi.sys (exists in SP3.CAB and Driver.cab both under I386 folder of installation)
acpi.sy_ (exists under I386 folder of installation) - acpi_sy is the result of makecab.exe command of the acpi.sys
syssetup.sy_ (exists under I386 folder of installation) - again result of the syssetup.sys

ahci drivers which we import by nLite

How I did it is -> get .iso file, decompress -> replace the above files -> nlite to import ahci driver -> make bootable .iso.

Attached you can find all the files that are needed and work with Z390 without modding the bios

antome has attached files to this post
#3707XPLives⇗ @antome
Zitat von ⇗ antome im Beitrag ¶ #3706
Zitat von ⇗ XPLives im Beitrag ¶ #3704
⇗ @antome

Zitat von ⇗ antome im Beitrag ¶ #3703
Zitat von ⇗ XPLives im Beitrag ¶ #3697
⇗ @antome

Zitat von ⇗ antome im Beitrag ¶ #3696
Zitat von ⇗ XPLives im Beitrag ¶ #3685
⇗ @antome

Zitat von ⇗ antome im Beitrag ¶ #3682
boys xp x32 works properly on gene xi z390. Now I'm trying with xp x64 but the structure of the installation disk is completely different. Which is the correct procedure to integrate the files on the xp x64 installation disk? Where to put acpi.sys? Thanks

edit: I tried windows xp x64 running on apex ix z270, I started xp on z270 replaced acpi.sys x64 in the windows / system32 folder, copied the 2 sys files of the ahci driver into the driver folder and executed the reg file to integrate the drivers in the registry,  mounted disk on the z390 crashes due to a sata driver problem


   
This is expected.  Reattach the SATA drive back to your Z270 system.  Go download my driver here.
⇗ Windows XP Pro 64-Bit and Server 2003 64-Bit on Modern Hardware
XP Pro 64-Bit and Server 2003 64-Bit - Universal Intel SATA Controller Driver - XPLIVES64.ZIP

Then go to Device Manager while in XP on Z270.  Update driver of the Intel SATA controller using mine.

Then in Device Manager take a snapshot and upload it to confirm it installed correctly.

Reboot on Z270 and make sure it works and boot correctly back into XP.

If this works then you can shutdown and reconnect the SATA drive to the Z390 and it should boot up properly without the BSOD 7B error.


Thanks for the driver now something has changed, xp x64 in normal mode I get error 0x000000CA while in safe mode it starts correctly on the z390, how do I solve this problem?  the same disk starts correctly on the z270


   
Your error explained here.
⇗ https://docs.microsoft.com/en-us/windows...code-reference2
⇗ https://docs.microsoft.com/en-us/windows...ted-fatal-error
0x000000CA PNP_DETECTED_FATAL_ERROR

I would try and install Z390 from scratch using my driver instead of moving to this machine from Z270.

But disable onboard ethernet, sound, et cetera in BIOS.

If still getting that error could be the modded ACPI.SYS causing it and needs further patching from creator.


Thanks for your patience :), I tried with a DVD installation of xp x64, first of all I replaced acpi.sy_ in the Amd64 folder and recreated the driver.cab file with acpi.sys always modified in the amd64 folder, then I created iso with  nlite with the ahci drivers for the z390 have I done something wrong?  because I get the same error 0x000000CA during the initialization of the hardware.  I disabled everything possible from bios, audio lan, all usb port.



   
Have you tried XP 32-Bit install with modded ACPI.SYS and Fernando SATA driver?  Does it get the same error on Z390?
Hard to isolate if this is ACPI related since there is no MPS Mode for X64. But PNP is Plug and Play so that is why we need similar test on XP 32-Bit to compare.

Also make sure the XP 32-Bit you do a clean ISO before integrating the Fernando SATA driver.  If you already mixed it with STORAHCI then we cannot use that image.  It's possible what Gordo999 said could be installing two different storage drivers using the same hardware ID as the cause.  I don't know if that is what happened so that's why you will have to use a clean XP 32-Bit for this test and just integrated Fernando SATA driver only.  Copy the modded ACPI.SYS manually when you get BSOD A5 error for testing rather than integrating into driver.cab.





Zitat von ⇗ gordo999 im Beitrag ¶ #3705
Zitat von ⇗ antome im Beitrag ¶ #3703
... I get the same error 0x000000CA during the initialization of the hardware
⇗ @antome ...the 0xCA error seems to be related to duplicate device IDs. In other words, during hardware enumeration, the plug and play manager is seeing the same Device ID used twice. Not sure how to deal with that right now since I am a bit under the weather and not thinking clearly. Maybe @XPLives can figure something out.


If your system was booting I'd try to fix it by loading the HKLM\System hive in regedit in another system and checking for identical device IDs in HKLM\Susyem\ControlSetxxx\Enum. It sounds like your system is not booting at all so there is something wrong in your installation disk. In that case, I'd remove recent additions one by one to see which one is causing two drivers to be loaded with the same Device ID. Might be easier to remove all recent additions and add them one by one. If you remove them all, see if you can get back to the 0XA5 (acpi) error or the 0x7B (ahci) error.



I only integrated the ahci a352 by fernando single driver.  I remember that to get the installation to xp x32 as well as replacing acpi.sy_ (acpi.sys) I had also replaced the syssetup.sy_ file in the i386 folder of the installation disk, these 2 files were also necessary to update a working image  on z270 and make it compatible for z390 without any errors.  You probably need a syssetup.dll file x64 modified for the z390.
This was the procedure performed on xp x32

So to get windows to work we care about the following files:
acpi.sys (exists in SP3.CAB and Driver.cab both under I386 folder of installation)
acpi.sy_ (exists under I386 folder of installation) - acpi_sy is the result of makecab.exe command of the acpi.sys
syssetup.sy_ (exists under I386 folder of installation) - again result of the syssetup.sys

ahci drivers which we import by nLite

How I did it is -> get .iso file, decompress -> replace the above files -> nlite to import ahci driver -> make bootable .iso.

Attached you can find all the files that are needed and work with Z390 without modding the bios

⇗ z390 files xp x32

⇗ Ahci update

   
Those attachments will not work due to needing a hwbot account.  You should refer to the actual page it was attached and not the download link.

But first did your clean XP-32 Bit with just Fernando SATA driver and modded ACPI.SYS work on your Z390 clean install without any BSOD issue 0x000000CA?

If no 0x000000CA Error then do a clean install of XP Pro 64-Bit with 64 Bit versions of (Fernando SATA driver and modded ACPI.SYS) on your Z390 again.  Don't add any other drivers or storage drivers.  You don't need the SYSSETUP.
#3708antome
Zitat von ⇗ XPLives im Beitrag ¶ #3707
@antome
Those attachments will not work due to needing a hwbot account.  You should refer to the actual page it was attached and not the download link.

But first did your clean XP-32 Bit with just Fernando SATA driver and modded ACPI.SYS work on your Z390 clean install without any BSOD issue 0x000000CA?

If no 0x000000CA Error then do a clean install of XP Pro 64-Bit with 64 Bit versions of (Fernando SATA driver and modded ACPI.SYS) on your Z390 again.  Don't add any other drivers or storage drivers.  You don't need the SYSSETUP.

⇗ @XPLives I apologize I have corrected the links of the files used for xp x32 on the z390.  Regarding the x64 disk I only integrated the driver sata a352 by Fernando, no other driver
#3709XPLives⇗ @antome
Zitat von ⇗ antome im Beitrag ¶ #3708
Zitat von ⇗ XPLives im Beitrag ¶ #3707
⇗ @antome
Those attachments will not work due to needing a hwbot account.  You should refer to the actual page it was attached and not the download link.

But first did your clean XP-32 Bit with just Fernando SATA driver and modded ACPI.SYS work on your Z390 clean install without any BSOD issue 0x000000CA?

If no 0x000000CA Error then do a clean install of XP Pro 64-Bit with 64 Bit versions of (Fernando SATA driver and modded ACPI.SYS) on your Z390 again.  Don't add any other drivers or storage drivers.  You don't need the SYSSETUP.

@XPLives I apologize I have corrected the links of the files used for xp x32 on the z390.  Regarding the x64 disk I only integrated the driver sata a352 by Fernando, no other driver

   
So clean XP Pro 64-Bit ISO and 64-Bit (Fernando SATA driver and Modded ACPI.sys) resulted in BSOD issue 0x000000CA?

Can you retest Z390 with clean XP Pro 32-Bit ISO and 32-Bit (Fernando SATA driver and Modded ACPI.sys) to see if any BSOD issue and report back?
#3710antome
Zitat von ⇗ XPLives im Beitrag ¶ #3709
@antome
Zitat von ⇗ antome im Beitrag ¶ #3708
Zitat von ⇗ XPLives im Beitrag ¶ #3707
@antome
Those attachments will not work due to needing a hwbot account.  You should refer to the actual page it was attached and not the download link.

But first did your clean XP-32 Bit with just Fernando SATA driver and modded ACPI.SYS work on your Z390 clean install without any BSOD issue 0x000000CA?

If no 0x000000CA Error then do a clean install of XP Pro 64-Bit with 64 Bit versions of (Fernando SATA driver and modded ACPI.SYS) on your Z390 again.  Don't add any other drivers or storage drivers.  You don't need the SYSSETUP.

@XPLives I apologize I have corrected the links of the files used for xp x32 on the z390.  Regarding the x64 disk I only integrated the driver sata a352 by Fernando, no other driver

   
So clean XP Pro 64-Bit ISO and 64-Bit (Fernando SATA driver and Modded ACPI.sys) resulted in BSOD issue 0x000000CA?

Can you retest Z390 with clean XP Pro 32-Bit ISO and 32-Bit (Fernando SATA driver and Modded ACPI.sys) to see if any BSOD issue and report back?


yes, clean xp x64+ acpi.sys x64+ ahci a352 by Fernando= 0x000000CA.

i will try xp x32 installation with only acpi.sys and driver sata to understand returns the same error without using sysetup.dll modified
#3711XPWELL64Windows XP Intel HD Gpu Test drivers coming soon.
#3712XPLives⇗ @antome
Zitat von ⇗ antome im Beitrag ¶ #3710
Zitat von ⇗ XPLives im Beitrag ¶ #3709
⇗ @antome

Zitat von ⇗ antome im Beitrag ¶ #3708
Zitat von ⇗ XPLives im Beitrag ¶ #3707
⇗ @antome
Those attachments will not work due to needing a hwbot account.  You should refer to the actual page it was attached and not the download link.

But first did your clean XP-32 Bit with just Fernando SATA driver and modded ACPI.SYS work on your Z390 clean install without any BSOD issue 0x000000CA?

If no 0x000000CA Error then do a clean install of XP Pro 64-Bit with 64 Bit versions of (Fernando SATA driver and modded ACPI.SYS) on your Z390 again.  Don't add any other drivers or storage drivers.  You don't need the SYSSETUP.

@XPLives I apologize I have corrected the links of the files used for xp x32 on the z390.  Regarding the x64 disk I only integrated the driver sata a352 by Fernando, no other driver

   
So clean XP Pro 64-Bit ISO and 64-Bit (Fernando SATA driver and Modded ACPI.sys) resulted in BSOD issue 0x000000CA?

Can you retest Z390 with clean XP Pro 32-Bit ISO and 32-Bit (Fernando SATA driver and Modded ACPI.sys) to see if any BSOD issue and report back?


yes, clean xp x64+ acpi.sys x64+ ahci a352 by Fernando= 0x000000CA.

i will try xp x32 installation with only acpi.sys and driver sata to understand returns the same error without using sysetup.dll modified

   
I examined the two files you uploaded
For Z390 Files, I would suggest use the newer version 11.2 for classic SATA AHCI driver from Fernando instead of v8.9.8.1005.

Do not use the file AHCI Update_1_.zip.  That contains StorAHCI and if you are combining both possibly causing drivers fighting to install to the same storage device and maybe BSOD CA.
#3713antome
Zitat von ⇗ XPLives im Beitrag ¶ #3712
@antome
Zitat von ⇗ antome im Beitrag ¶ #3710
Zitat von ⇗ XPLives im Beitrag ¶ #3709
@antome

Zitat von ⇗ antome im Beitrag ¶ #3708
Zitat von ⇗ XPLives im Beitrag ¶ #3707
@antome
Those attachments will not work due to needing a hwbot account.  You should refer to the actual page it was attached and not the download link.

But first did your clean XP-32 Bit with just Fernando SATA driver and modded ACPI.SYS work on your Z390 clean install without any BSOD issue 0x000000CA?

If no 0x000000CA Error then do a clean install of XP Pro 64-Bit with 64 Bit versions of (Fernando SATA driver and modded ACPI.SYS) on your Z390 again.  Don't add any other drivers or storage drivers.  You don't need the SYSSETUP.

@XPLives I apologize I have corrected the links of the files used for xp x32 on the z390.  Regarding the x64 disk I only integrated the driver sata a352 by Fernando, no other driver

   
So clean XP Pro 64-Bit ISO and 64-Bit (Fernando SATA driver and Modded ACPI.sys) resulted in BSOD issue 0x000000CA?

Can you retest Z390 with clean XP Pro 32-Bit ISO and 32-Bit (Fernando SATA driver and Modded ACPI.sys) to see if any BSOD issue and report back?


yes, clean xp x64+ acpi.sys x64+ ahci a352 by Fernando= 0x000000CA.

i will try xp x32 installation with only acpi.sys and driver sata to understand returns the same error without using sysetup.dll modified

   
I examined the two files you uploaded
For Z390 Files, I would suggest use the newer version 11.2 for classic SATA AHCI driver from Fernando instead of v8.9.8.1005.

Do not use the file AHCI Update_1_.zip.  That contains StorAHCI and if you are combining both possibly causing drivers fighting to install to the same storage device and maybe BSOD CA.


I did the test with xp x32 and actually to have an xp x32 running on xi gene z390 just replace acpi.sy_ and recreate driver.cab and sp3.cab with acpi.sys modified and insert with nlite driver a352 by Fernando.
Now I try on x64 with the driver you recommended

Edit: unfortunately it continues to give error 0x000000CA always in the same point of the installation, I have used the same bios settings both for xp x32 and x64 one works the other not
#3714gordo999
Zitat von ⇗ antome im Beitrag ¶ #3710
...i will try xp x32 installation with only acpi.sys and driver sata to understand returns the same error without using sysetup.dll modified
@atome ...I am speaking from ignorance, I have never applied drivers to an existing install disk. Don't you have to remove the existing drivers, or reference to them, before adding new drivers? If there's a reference in the installation manifest to both drivers, the installer may try to install both sets, hence an 0xCA error if the drivers have the same Device IDs.

You added an edit claiming the same 0xCA error with 32 bit. The installer is reading INF files to guide it and it seems there is a duplicate entry in an INF file. Either that, or your XP installation already has a reference to the same Device ID the installer is trying to install.
#3715genieautravail⇗ @IntiMD

Zitat von ⇗ IntiMD im Beitrag ¶ #3592
BTW if you feel lucky, you can give Snappy Driver Installer Origin a try, so as to try finding the missing drivers for the devices. Assuming that you have working internet connection in the XP machine, go to ⇗ https://www.snappy-driver-installer.org/download/ and download the "Application only" package. Unpack the zipped archive and open the main exe. Choose to download only indexes. After it finishes downloading the indexes it should show you the list of devices that need a driver or need to be updated (depending on the filters set ofc, assuming the filters are default ones). Don't do anything in it (especially DO NOT install the drivers from the app level, even though SDIO is much legit compared to other driver boosters, you need to be cautious. If you're interested, you can hover over a device for info related to the device and drivers offered by the app, including the location of them in the driverpacks that the app offers to download), just close the app. Find the latest snapshot file ending with the .SNP file extension, and upload it to a hosting of your choice (preferably zippyshare or uploadfiles). I'll then check and research the snapshot, hoping the app will find drivers for those unknown devices.
Hello,
I have just uploaded the file you have asked:
⇗ https://www18.zippyshare.com/v/CYpZxmVj/file.html

For convenience, I have posted the same message on the MSFN forum.

EDIT by Fernando: Unneeded blank lines removed (to save space)
#3716IntiMD⇗ @genieautravail First of all, there was no need to install the 'High Precision Event Timer' and 'AMD Processor' drivers, which are old and not destined for your hardware. It would be much better to revert their states to before installation.

I couldn't find the appropriate XP-compatible drivers for the AMD PSP device. The drivers that SDIO offers is 4.9.0.0 destined for Win10 x86, which is offered only because in the inf file (exactly in the manufacturer models section), they used 'NTx86' instead of, say 'NTx86.10.0', and i strongly doubt the key driver files are compatible with XP. IMO, would be best to leave it be in its state (which is: no drivers installed)

Neither couldn't find the appropriate driver for the AMD GPU.

Anyway, what SDIO offers according to the snapshot is updated drivers for:

* Realtek High Definition Audio (in my opinion no need to update if audio works perfectly fine)
* Logitech Unifying USB receiver (i assume it's something related to the wireless logitech mouses depending on the receiver. I absolutely don't see any reason to install these drivers.)
* Realtek PCIe GBE Family Controller (wouldn't actually hurt to get this updated if you want, since the drivers that SDIO offers are miles newer than the ones you currently uses (5.836.125.2018 2018-01-25 vs. 5.824.107.2014 2014-01-07) if you want then i can share you these drivers to install. best to do is to uninstall the realtek ethernet drivers first through devmgmt (assuming you installed them manually) and updating the device drivers by directing to the folder containing those newer driver files))
#3717genieautravail⇗ @IntiMD

Thank you for your efforts.

I already have the lastest version of the Realtek driver.
I don't need to update this driver because Realtek only added support for new OS like Windows 10.
#3718gordo999Hello....anybody there? Awfully quiet out there. :-)
#3719schreiberstein⇗ @gordo999

Yes, it is sad...
I will continue some of my experiments in a few days. I am preparing an XP x64 install media for my system to check stability there to confirm whether some of side effects I experience are due to XP x86 memory management or the software itself. I think I will also E-Mail Gigabyte about the memory mapping issues on x86 (e.g. low available ram < 4GB), since I think this issue will affect Windows 10 x86 as well (have not confirmed this yet) and I can just pull the "muh mission critical legacy industrial applications" card.
And I really hope we will be blessed with a new USB3 XHCI driver. It would be amazing.

I recently got an "Exsys EX-1010" external PCI-Express to PCI 32 enclosure (~150) (4 slots! - connected via a DVI-cable) which allowed me to permanently integrate the Creative Audigy 2 ZS soundcard into my system, albeit externally. Sound is broken on XP x86 for some reason (sound is nothing but noise), but I can play back via ASIO in XMPlay with no issues for some reason... Works flawlessly in Windows 10 and Mac OS X. I think it is because of the 4GB PAE memory patch - not the latest version from daniel_k though since I accidentally lost my old unmodified files and need to retrieve them from another machine first (no big deal) before I can test his latest patch.
I think it will be somehow necessary to "burn" the first few GBs of RAM since there appears to be something else there. I even have application stability issues on Server 2003, sadly.
But I don't know much of the details of this platform.

Cheers,
schreiberstein
#3720gordo999⇗ @schreiberstein ...I can't talk, I have been forced to check out a registry key that is mainly hidden in case it's a rootkit. Part of the reason it's hidden is that it's full of Chinese characters which regedit cannot read. I got a bit suspicious, however, when gmer, the rootkit finder, crashed while I was trying to export the hidden registry key. It was not hidden to gmer and in fact the key was marked in red, indicating suspicious activity.

Not trying to lay a guilt trip on anyone, the thread went from rather hectic daily activity to nothing. Hope everyone is OK. Getting near Christmas in the western world so I imagine posters are getting into the Christmas spirit and doing other things.

 

Page 249

#3721diderius6Hi,
I rebuild a Lenovo Thinkpad x220 with i7 2640M, 8 GB ram and the good IPS screen from scratch. It has USB3 from Nec.
⇗ @Gelip told, that XP64 runs there in UEFI mode.
It lasts nearly whole day with setup, new thermal paste and crazy screws. Now I use a Samsung 860 EVO 500 GB SSD, which shows 500 MByte/s for read and write under XP. The problem with TRIM under XP I do not solve. May be someone here in the forum succeeds with this. At the moment I use Win10 for this. I do not found an Intel Optane in SSD size. Optane does not need TRIM.
The Bios chip is Winbond 25Q64CVSIG, where I put Bios 1.39 from summer 2013 with Revelprog IS on it. I also think about to put a new Bios chip on socket there.
Nice, benchmark for 3DMark 2001 with integrated grafik HD3000 is 22400 under XP SP3
and 14000 under Win 10
Dietmar

#3722Fernando⇗ @diderius6

Zitat von ⇗ diderius6 im Beitrag ¶ #3721
The problem with TRIM under XP I do not solve. May be someone here in the forum succeeds with this.
Have you already tried the tool named "Anvil's Storage Utilities" (look ⇗ >here<)? It is able to trigger TRIM to all SSDs.
#3723diderius6⇗ @Fernando

Thanks, I just test the tool.
Now I get message,
that all drives do not respond to the "TRIM" command

Dietmar



#3724Fernando⇗ @diderius6:
The error message is misleading, because the SSD supports TRIM and the onboard Intel SATA AHCI Controller lets the TRIM command pass through.
Thanks for the nice picture, but I cannot read the error text.
Please do the following while getting such popup message: Press ALT+PRINT, run Windows Paint, click onto "Insert" + "Crop" and save the image as *.png file.
#3725Gelip
Zitat von ⇗ diderius6 im Beitrag ¶ #3721
@Gelip told, that XP64 runs there in UEFI mode.

I have already written about it but I will sum up again.
Yes, WinXP SP2 x64 boot in UEFI but with CSM with AnaPa VGA driver on X220. There are all WinXP drivers for this laptop. In the bios there is only legacy VGA option ROM, no VGA GOP firmware, no option to disable CSM.

Now I'm testing other hardware with WinXP SP2 x64 and UEFI: ASUS P8H61-M LE R2. This motherboard allows you to boot the OS:
  • pure Legacy (CSM)
  • UEFI with CSM e.g. with legacy VGA ROM
  • pure UEFI with GOP VGA ROM

The latest bios has GOP firmware for iGPU:


The board also has PCIe and even old PCI slot so you can test various graphics cards. WinXP SP2 x64 with AnaPa driver and PCIe GeForce 6200 card also works on this ASUS hardware in UEFI + CSM
There are all WinXP drivers for this mobo. ASUS also has a COM port for debugging with WinDbg.
#3726Gelip⇗ @diderius6
Try other software for SSD - maybe Samsung_Magician_Setup_v497.exe or ADATA_SSDToolBoxSetup.exe
Also try this registry settings for SSD: Windows-XP-SSD.zip

⇗ ADATA_SSDToolBoxSetup.exe

⇗ Samsung_Magician_Setup_v497.zip



Gelip has attached files to this post
#3727diderius6⇗ @Gelip

Can you run 3Dmark2001 on the ASUS P8H61-M LE R2 board
under UEFI

Dietmar
#3728Gelip⇗ @diderius6

Zitat von ⇗ diderius6 im Beitrag ¶ #3727
Can you run 3Dmark2001 on the ASUS P8H61-M LE R2 board under UEFI

I would have to reinstall WinXP with the AnaPa driver because I have something else on the disk right now.
#3729diderius6⇗ @Gelip

Only the ADATA_SSDToolBoxSetup.exe
works for TRIM under XP SP3 for the Samsung 860 EVO 500 Gbyte.
Crazy, the Samsung tool tells, only for Samsung devices^^
Dietmar

PS: The health of my SSD went from 10% to 100% after about 90 seconds of TRIM via ADATA SSD ToolBox,
so thanks a lot! The speed of the SSD raises to 565 MByte/s.
#3730Gelip⇗ @diderius6
3DMark2001 cannot be installed when the system is running on the AnaPa driver because it doesn't support 3D:
#3731Gelip⇗ @diderius6

Zitat von ⇗ diderius6 im Beitrag ¶ #3721
The Bios chip is Winbond 25Q64CVSIG, where I put Bios 1.39 from summer 2013...

The latest bios for the X220 is: ⇗ 1.46 released 27 Jun 2018
#3732diderius6⇗ @Gelip,
yes I know this. But from the Bios 1.39 you can change to any other Bios version.
Also you can take any akkumulator, that you wish.
Those possibilities are gone from Bios >= 1.42 for the Thinkpad x220
Dietmar
#3733Gelip
Zitat von ⇗ diderius6 im Beitrag ¶ #3732

yes I know this. But from the Bios 1.39 you can change to any other Bios version.
Also you can take any akkumulator, that you wish.
Those possibilities are gone from Bios >= 1.40 for the Thinkpad x220
Dietmar

Akkumulator - I don't understand? Do you mean battery?
#3734GelipToday I tested ASUS P8H61-M LE R2 with WinXP SP2 x64  under UEFI + CSM + iGPU SandyBridge + AnaPa and it works.

So, on this motherboard WinXP 64-bit works in UEFI with both iGPU and PCIe graphics card.
#3735Andalu⇗ @daniel_k
Zitat von ⇗ daniel_k im Beitrag ¶ #3673
@Andalu

Don't know what the issue is.
I did many tests here before releasing the patcher.

- VirtualBox 8GB RAM
- Core i3-2310M "Sandy Bridge" Lenovo G470 8GB w/ Insyde BIOS
- i7-8700K / Z370 Gaming 3 / 16GB

Tested all patched HALs, with no issues on any of the systems.
Even tried on an old T6600 eMachines D525 with 4GB just to test patch stability.

Are you really sure you're not missing something?

What about trying storahci.sys or iastora.sys?
¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (218)

iaStor is old and has issues on newer systems, maybe things get worse with PAE enabled.
   

I installed XP v5.1.2600 on my former crazy asrock B75-Pro3M as 'acpi multiprocessor pc' with the only Intel RST AHCI+RAID driver v11.2.0.1006 by Fernando slipstreamed by nLite. No other driver installed, no usb3 driver and no acpi.sys mod. The XP installation ends normally. I launched the WinXpPAE.exe 2.0 with /ALL /NB command line on another computer and from there I copied by hand the patched files in the windows\system32 folder of the destination XP disk, replacing the existing files with the patched versions of hal.dll, ntkrnlpa.exe and ntoskrnl.exe files (the last two renamed for multiprocessor pc).

After connecting the patched disk to the B75-Pro3M board, on restart, I got the blank screen always at same point: the pc hangs as soon as the XP logo and the horizontal scroll bar below appear.
The same on each restart. Same behavior on three other boards (one LGA 1150 and two 1151). XP boots in safe mode only.

By copying all the patched files (included ntkrnlmp.ex_ and ntkrpamp.ex_  not renamed) in the \i386 folder of the XP setup cd, then repacking the SP3 and DRIVER cab files and slipstreaming them together with the sata_ahci driver v11.2.0.1006  and acpi.sys 5048 in the .iso image, the setup ends normally and on restart, XP has finally booted and the total amount of ram has correctly recognized. But in the windows\system32 folder of the WinXPPae patched disk, the hal.dll is different from the one integrated into the iso image (hal.dll was slipstreamed into sp3.cab, driver.cab and copied to the i386 folder as hal.dl_ by makecab) while other libraries (halaacpi.dll, halacpi.dll, halapic.dll, halmacpi.dll, halmps.dll) are not present.

I copied this hal.dll (sha1: BE202C78DBF4D59880AA6A9430BE05D4156D6764) to another disk connected to another board where XP always froze (asus prime B250M) and this time the boot works fine and the total ram is correctly visualized. In this case, for the USB3 function, it is need to replace original amdxhc.sys with the one from 'amdxhc_pae_fix'.

I also tried a clean XP installation on the asus prime B250 with sliptreamed patched files but the results are the same as for the asrock B75 Ivy board.
Already tried with iaStor, iaStorA and storahci from your "XPSP3_CDDRIVERS_ENU" with no success.

For the above, how can I be sure that the patch applied in my system is the WinXpPae 2.0 and not the old 1.1 version?

 

Page 250

#3736dencorsoIn my opinion, sufficient time has elapsed, so I'd like to ask ⇗ @Mov AX, 0xDEAD to kindly update his assessment of the currently still unresolved problems for running Windows XP x32 on sky/kaby/coffee lake hardware, and of the progress done till now.   

Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #172
There many unresolved problems running Windows XP x32 on sky/kaby/coffee lake hardware
my own list:
- ACPI BSOD:
.......... 0xA5 (0x03, X, 0xС0140001, Z) ACPI 2.0 syntax, 99% solved (custom acpi.sys), 1% - "QWordAcc" still 32bit only
.......... 0xA5 (0x02, X ,Y ,Z) error in ACPIRangeValidatePciResources, PCI vs E820 list conflict, solved (custom acpi.sys)
.......... 0xA5 (0x11, 0x08 ,Y ,Z) error in ACPIInitializeDDB, solved (custom acpi.sys)
.......... other possible BSODs, unresolved
- all integers in original ACPI 1.0 XP are 32 bits, ACPI 2.0 requires all ints to be 64 bits, unresolved. Acpi.sys from Longhorn v.5048 has 64 bit integers and compatible win Winxp
- Broken acpi pm_timer, solved (custom hal.dll, forced to use TSC counter) or enable hidden bios option "TCO Timer"
- Acpi tables patcher at boot time like Chameleon/Clover, solved,( ⇗ http://reboot.pro/topic/22051-acpi-patcher-at-boot-time)
- CPU in C0 power state 50-60% of time even without cpu load, solved (custom intelppm.sys, 1) only C1 c-state or 2) C1/С7s/C10 c-states)
- USB 3.x drivers for integrated intel chipsets, solved (patched AMD USB3 driver)
- Resource manager show conflict VGA card with ACPI IOTR/IOTraps device, solved 1) manual patching dsdt or 2) custom acpi.sys
- UEFI x64 Boot, partial solved for WinXP x64 only (bootmgr from vista beta+vesa vga driver)
- NVMExpress drivers, partial solved (modified OFA 1.3/1.5 driver+storport.sys from windows 2003)
- Access to additional 3TB+ Disks/GPT partitions, solved (Paragon GPT Loader)
- Boot from GPT partitions, unresolved (require uefi boot support first)
- TRIM support in NTFS/Storport/??? driver unresolved
- Kernel debug with WinDBG/KD over LAN/USB3.0 connection solved, (⇗ https://github.com/MovAX0xDEAD/KDNET)
- fixing PAE support in HAL (in progress)
#3737genieautravail
Zitat von ⇗ diderius6 im Beitrag ¶ #3729
Only the ADATA_SSDToolBoxSetup.exe works for TRIM under XP SP3 for the Samsung 860 EVO 500 Gbyte.
Crazy, the Samsung tool tells, only for Samsung devices^^.
⇗ @diderius6
Can you try Naraeon SSD Tools and tell us if TRIM is working too ?
⇗ https://sourceforge.net/projects/naraeon-ssd/

EDIT by Fernando: Unneeded parts of the fully quoted post and unneeded blank lines removed (to save space)
#3738diderius6⇗ @genieautravail

Naraeon SSD Tools work for XP SP3 for TRIM of Samsung SSD EVO 860 EVO. Time for manual TRIM is about 2 min.
Thanks a lot, this is a nice tool for SSD, because it also shows, how much Gbyte are written to this SSD at all.

Problem is with downloading NST(5.4.0).exe . I have to chose manual a server from Germany,

Dietmar
#3739XPWELL64Which Motherboard is best for Windows XP? I want a Desktop and it must contain IDE/AHCI/RAID setting to Install retro OS.
#3740Andalu⇗ @genieautravail
thanks for the info ;)
I tried a dozen of ssd utility and this is the only that permits the trim function in XP for my samsung nvme ssd.
Even if Trimcheck 0.7 reports that 'trim appears to be not working' I did the manual trim anyway :)
#3741gordo999
Zitat von ⇗ XPWELL64 im Beitrag ¶ #3739
Which Motherboard is best for Windows XP?
⇗ @XPWELL64 ...can't advise you overall but make sure the mobo has PS/2 ports so you can use a keyboard and mouse while USB is being setup. You'll need two USB to PS/2 adaptors if you use a USB keyboard/mouse. Don't know if a unifying adapter will work via USB to PS/2 adapters if you use cordless keyboard/mouse.

Personally, I favour Intel chipsets and processors. I use an Asus B360M with an Intel chipset/processor and it is a lower end version of the Z370/390 chipsets.

⇗ https://www.pcworld.com/article/3268063/intel-motherboard-z370-vs-h370-vs-b360-vs-h310-8th-gen-cpu.html

Sorry...missed your requirement for IDE/AHCI/RAID compatibility. Did you mean SATA/AHCI/RAID compatibility? Although SATA controller can run in IDE mode I don't think modern motherboards use the old PATA IDE connectors if you intend to connect a hardrive via a parallel cable.
#3742XPWELL64⇗ @diderius6
I want you to mod igxpmp32.sys file to work with DEV_1616
#3743diderius6⇗ @XPWELL64

I tried to mod igxpmp32.sys,
but without success
Dietmar
#3744sqppJust a quick note, is there any 64 bit Windows XP ACPI patch already?

T480 - Coffee Lake owner i5-8350u

⇗ @diderius6 ⇗ @daniel_k

Just an update, so, I was able to bypass the earlier issue, with the A5 BSOD, now I am using 32 bit WinXP and getting 0x0000007B BSOD.
#3745gordo999
Zitat von ⇗ sqpp im Beitrag ¶ #3744
now I am using 32 bit WinXP and getting 0x0000007B BSOD.
⇗ @sqpp ...the 7B bsod is related to SATA drivers. You will likely notice it occurs after it says, "Starting Windows". The Windows OS uses a miniport driver to communicate with the drive even though boot phase drivers have already done so. It's related to the ioStor driver or the lack thereof. There is a set of drivers listed in this thread and a set signed by Fernando that fixed the problem for me on XP 32-bit.
#3746infuscomus⇗ @diderius6 ⇗ @daniel_k

I have made a new patched hal.dll for XP

It contains these new functions from windows 7

HalAllocateHardwareCounters
HalBugCheckSystem
HalConvertDeviceIdtToIrql
HalDisableInterrupt
HalEnableInterrupt
HalEnumerateEnvironmentVariablesEx
HalFreeHardwareCounters
HalGetEnvironmentVariableEx
HalGetInterruptTargetInformation
HalGetMemoryCachingRequirements
HalGetMessageRoutingInfo
HalGetProcessorIdByNtNumber
HalGetVectorInput
HalInitializeBios
HalInitializeOnResume
HalMcUpdateReadPCIConfig
HalQueryEnvironmentVariableInfoEx
HalQueryMaximumProcessorCount
HalRegisterDynamicProcessor
HalRegisterErrataCallbacks
HalRequestClockInterrupt
HalSetEnvironmentVariableEx
HalStartDynamicProcessor
x86BiosAllocateBuffer
x86BiosCall
x86BiosFreeBuffer
x86BiosReadMemory
x86BiosWriteMemory



ntoskrnl is being more difficult to patch - the compiler complains about the heap stack size and I've already given it the maximum

I'm actually an amateur at programming, is anyone here skilled with Visual C++ 6.0?



infuscomus has attached files to this post
#3747sqppYeah, I figured out yesterday, although none of the fernando drivers worked for me, can you guys help me to identify which one should I use?

I5-8350u and 6th generation AHCI I think.
#3748diderius6⇗ @infuscomus

This is nice work, and everything begins with the first step.

Today I succeed to enable USB3 on the Lenovo x230.
I use the nice driver from ⇗ @daniel_k .
And in Bios I force to use USB3 (set to enabled).

From the Lenovo Webpage
"USB 3.0 is not supported on Windows XP - ThinkPad

USB 3.0 port doesn't work on Windows XP for ThinkPad. Affected Systems: Helix (Type 3xxx)L330, L430, L530 T430, T430i, T430s, T430si, T430u, T431sT530, T530i Twist S230uW530 X1 CarbonX230, X230s, X230 Tablet, X230i, X230i Table"

Oh, this is soso much fun:)),
I just also succeed to boot XP SP3 via USB3 on the x230 Thinkpad and this is faaast )
Dietmar

#3749diderius6⇗ @sqpp

Nice STORAHCI.sys driver from ⇗ @skullteria together with storport.sys will work. I just use this method for the Lenovo x230 Thinkpad.
Copy this 2 driver files on a working XP to windows\system32\drivers and add entry to registry

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\System\ControlSet001\Services\storahci]
"Type"=dword:00000001
"Start"=dword:00000000
"ErrorControl"=dword:00000003
"ImagePath"=hex(2):53,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,64,00,\
72,00,69,00,76,00,65,00,72,00,73,00,5c,00,73,00,74,00,6f,00,72,00,61,00,68,\
00,63,00,69,00,2e,00,73,00,79,00,73,00,00,00
"Group"="SCSI Miniport"
"DisplayName"="@mshdc.inf,%storahci_ServiceDescription%;Microsoft Standard SATA AHCI Driver"
"DriverName"="mshdc.inf"

[HKEY_LOCAL_MACHINE\System\ControlSet001\Services\storahci\Parameters]
"BusType"=dword:0000000b
"IoTimeoutValue"=dword:0000000a

[HKEY_LOCAL_MACHINE\System\ControlSet001\Services\storahci\Parameters\Device]
"ResetInInit"=hex(7):56,00,45,00,4e,00,5f,00,31,00,31,00,30,00,36,00,26,00,44,\
00,45,00,56,00,5f,00,36,00,32,00,38,00,37,00,26,00,52,00,45,00,56,00,5f,00,\
2a,00,00,00,00,00
"SingleIO"=hex(7):56,00,45,00,4e,00,5f,00,31,00,31,00,30,00,36,00,26,00,44,00,\
45,00,56,00,5f,00,36,00,32,00,38,00,37,00,26,00,52,00,45,00,56,00,5f,00,30,\
00,30,00,00,00,56,00,45,00,4e,00,5f,00,31,00,31,00,30,00,36,00,26,00,44,00,\
45,00,56,00,5f,00,36,00,32,00,38,00,37,00,26,00,52,00,45,00,56,00,5f,00,31,\
00,30,00,00,00,56,00,45,00,4e,00,5f,00,31,00,31,00,30,00,36,00,26,00,44,00,\
45,00,56,00,5f,00,36,00,32,00,38,00,37,00,26,00,52,00,45,00,56,00,5f,00,32,\
00,30,00,00,00,00,00
"IgnoreHotPlug"=hex(7):56,00,45,00,4e,00,5f,00,31,00,30,00,30,00,32,00,26,00,\
44,00,45,00,56,00,5f,00,34,00,33,00,38,00,30,00,26,00,52,00,45,00,56,00,5f,\
00,2a,00,00,00,00,00
"NeverNonQueuedErrorRecovery"=hex(7):56,00,45,00,4e,00,5f,00,31,00,30,00,30,00,\
32,00,26,00,44,00,45,00,56,00,5f,00,34,00,33,00,38,00,30,00,26,00,52,00,45,\
00,56,00,5f,00,2a,00,00,00,00,00
"EnableCLOReset"=hex(7):56,00,45,00,4e,00,5f,00,31,00,30,00,30,00,32,00,26,00,\
44,00,45,00,56,00,5f,00,34,00,33,00,39,00,31,00,26,00,52,00,45,00,56,00,5f,\
00,2a,00,00,00,00,00
"NoFUACommand"=hex(7):48,00,54,00,45,00,2a,00,00,00,48,00,69,00,74,00,61,00,63,\
00,68,00,69,00,2a,00,00,00,48,00,54,00,53,00,2a,00,00,00,48,00,44,00,53,00,\
2a,00,00,00,48,00,44,00,54,00,2a,00,00,00,00,00
"NeedSetTransferModeCommand"=hex(7):4d,00,43,00,42,00,51,00,45,00,36,00,34,00,\
47,00,42,00,4d,00,50,00,50,00,2a,00,00,00,00,00
"NoLPM"=hex(7):57,00,44,00,37,00,34,00,30,00,41,00,44,00,46,00,44,00,3f,00,30,\
00,30,00,4e,00,4c,00,52,00,31,00,2a,00,00,00,57,00,44,00,43,00,20,00,57,00,\
44,00,37,00,34,00,30,00,41,00,44,00,46,00,44,00,3f,00,30,00,30,00,4e,00,4c,\
00,52,00,31,00,2a,00,00,00,4d,00,61,00,78,00,74,00,6f,00,72,00,20,00,36,00,\
56,00,3f,00,3f,00,3f,00,45,00,30,00,2a,00,00,00,4d,00,61,00,78,00,74,00,6f,\
00,72,00,20,00,36,00,56,00,3f,00,3f,00,3f,00,46,00,30,00,2a,00,00,00,4d,00,\
61,00,78,00,74,00,6f,00,72,00,20,00,37,00,56,00,3f,00,3f,00,3f,00,45,00,30,\
00,2a,00,00,00,4d,00,61,00,78,00,74,00,6f,00,72,00,20,00,37,00,56,00,3f,00,\
3f,00,3f,00,46,00,30,00,2a,00,00,00,00,00

[HKEY_LOCAL_MACHINE\System\ControlSet001\Services\storahci\Parameters\PnpInterface]
"5"=dword:00000001


[HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\CriticalDeviceDatabase\PCI#CC_010601]
"ClassGUID"="{4D36E96A-E325-11CE-BFC1-08002BE10318}"
"Service"="storahci"

   

Dietmar
#3750sqppCould you please link to these specific posts? I can't find it.

Also, you mentioned that copy these 2 driver files on a working XP. But I am getting this on the installation. So how I am supposed to do that? shouldn't I use nLite and include these drivers then build the iso?

 

Page 251

#3751diderius6⇗ @sqpp

¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (59)

you can use this with nlite

Dietmar
#3752sqpp⇗ @diderius6 just a quick last question, do I also need to convert these to .SY_ right?
#3753diderius6⇗ @sqpp

I think, you can let them be, as they are
Dietmar
#3754sqppAfaik, I can't import DLLs into Nlite, just inf files.

So I guess, I must do, because DRIVER.CAB should contain these.
#3755sqpp⇗ @diderius6 same error actually, I might did something wrong?

edit: I have used the i386 folder to import the inf file, so that should be 32 bit, not sure what else to do.
#3756diderius6⇗ @sqpp

Please describe step by step what you have done and results
Dietmar
#3757sqppIn the nLite driver section, I have included the i386 folder's file storahci.inf, then the rest of the files added to the DRIVER.CAB file via CABPCK14.

Nothing else done on my end, this resulted in a B7 BSOD again.
#3758infuscomus⇗ @sqpp

add your AHCI HWIDs to the section in txtsetup.sif

⇗ @diderius6

do you have any experience with Visual C++ 6.0?
#3759diderius6⇗ @sqpp

"In the nLite driver section, I have included the i386 folder's file storahci.inf"

I think, this is not correct.
You only have to go via nlite to folder storahcitxtsetup and from there to i386 folder
and integrate the driver
Dietmar
#3760diderius6⇗ @infuscomus

Years ago I played a little bit with Visual C++
but nothing more
Dietmar
#3761sqppI don't really have other choices other than the .inf

Look at my screenshots.
⇗ https://photos.app.goo.gl/B5EaZRnS5w5Hv5oJ9
#3762diderius6⇗ @sqpp

I think it is the fault of win10.
Make a try with nlite 1.4.9.3 under XP SP3
Dietmar

#3763sqpp⇗ @infuscomus do I have to give the HWID for the controller or for the disk itself? I guess it's a silly question, so the controller?
#3764sqppSame error by the way, I have used the HWID for the SATA controller by checking with HWinfo64 within Win10 and added this ID to the txtsetup.sif file within i386 folder.

 
[HardwareIdsDatabase]
PCI\VEN_8086&DEV_9D03&SUBSYS_225D17AA&REV_21 = "STORAHCI"



Does it look good?

#3765sqppJust attached my sif file, so you might validate, but it should be good, I think



sqpp has attached files to this post

 

Page 252

#3766diderius6⇗ @sqpp

I just edit your TXTSETUP.SIF for storport and storahci

Dietmar



diderius6 has attached files to this post
#3767sqpp⇗ @diderius6 same error actually. should I also replace the HWID in your TXTSETUP?
#3768diderius6⇗ @sqpp

I tested, that my settings work, no modification needed.

Have you copied storport.sys storahci.sys storahci.inf
into installationsfolder i386

Dietmar

PS: Have you edit dosnet.inf as described in

¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (232)

and may be this is also needed

¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (224)
#3769sqppYes, I did.

They are there, the problem might could be that I am using Easy2Boot to make this all happen, as I don't really have DVD reader neither a rewritable CD/DVD
#3770sqppI haven't edited dosnet.inf.

In that post, you mentioned that it gave BSOD.
#3771AndaluIs there someone who applied the WinXPPAE patch v2.0 with no issues?
#3772diderius6⇗ @sqpp
Here is my german dosnet.inf with storport and storahci
Dietmar



diderius6 has attached files to this post
#3773infuscomus
Zitat von ⇗ sqpp im Beitrag ¶ #3769
Yes, I did.

They are there, the problem might could be that I am using Easy2Boot to make this all happen, as I don't really have DVD reader neither a rewritable CD/DVD


If you're using Easy2boot on your motherboards USB 3.0 ports it will always fail with a 7B BSOD

you need native USB 2.0 EHCI ports to use Easy2boot

USB 2.0 PCIE card
⇗ https://www.ebay.com/itm/USB-2-0-to-PCI-...lEAAOSwaBZZmNXa

or otherwise use a SATA DVD drive. The following contents have been linked to this post:
#3774infuscomus⇗ @diderius6

can I send you the source code for my kernel patcher program?

if yes, maybe you can fix the heap size problem with ntoskrnlxp.cpp?
#3775diderius6⇗ @infuscomus

Yes, please send to me.
I take a look at it from 20 December,
because then I have holidays
Dietmar
#3776infuscomus⇗ @diderius6

I sent you a PM with the source code
#3777diderius6⇗ @infuscomus
Thanks for the files )!
"you use genpatch to convert ASM files into cpp files for the patcher program to apply"
Please, describe this a little
Dietmar
#3778infuscomus⇗ @diderius6

you can write a new function that you want to have patched into a program in assembler, then genpatch can convert that ASM into C++ code that the patcher program then uses to know what to write into the file you wish to patch.
#3779sqpp⇗ @infuscomus It's a laptop, so can't use, how about using my dock which has a 2.0 port? Although it uses Thunderbolt 3, but I think it may work in pre-environment (BIOS)
#3780infuscomus⇗ @sqpp

you need a native USB 2.0 controller chip for XP setup to see your easy2boot drive, which your system doesn't have - hence the 7B BSOD because setup cannot see your easy2boot USB drive
so you'll need to use a SATA DVD drive if you want to install XP

 

Page 253

#3781sqpp⇗ @infuscomus, yeah, but it's actually loaded, I mean the files are actually loaded from the PenDrive, because the BSOD 7B only comes, when the drivers are loaded, including ACPI, then when it says windows setup starts or something like that, that's when the error appears. So it's half loaded? Because in this case, the files are actually loaded just fine from the USB, otherwise it would whine about the missing inf files.

Also, neither I can't properly use any SATA DVD drive, as my laptop has only one SATA connectors, which is used by the SATA SSD itself. I do have an USB DVD Reader, but that's not an option, I guess?
#3782infuscomus⇗ @sqpp

I'm just reporting what I found from attempting to install XP on my AMD Ryzen system

I only ever managed to get easy2boot to work without a 7B BSOD on the PCI-E USB 2.0 card - I've never got it working properly on the USB 3.0 ports on the motherboard.

SATA DVD drive worked for me.
#3783infuscomus⇗ @diderius6

I think I found a solution to the compiler heap stack issue - I managed to migrate it to Visual Studio 2005.
#3784sqppHow about using this?

⇗ https://msfn.org/board/topic/149612-winntsetup-v394-40-rc2/
#3785diderius6⇗ @sqpp

I just test this and it installs XP from any USB port because it uses firadisk.

01. Insert blank USB Flash Drive and Start RMPrepUSB.
02. You may use any Volume Label but Select NTFS > make no other changes, do NOT Choose Source, just [lower left] 6 Prepare Drive > OK > OK
03. Wait for it to finish then click on Install grub4dos [center right button]
04. YES > OK > [Enter] > **STOP!!** Press on Cancel [do NOT copy grldr file when asked]
05. Exit [lower right]

06. Extract ASUS Tools and files for W7/XP USB file Install OS from USB.rar
Copy contents of folder Install OS from USB\XP\USB root to USB Flash Drive's root directory.

07. Extract ASUS AHCI driver for XP file iaStor_skl.rar
Copy contents of folder iaStor_skl to USB Flash Drive's root directory.

08. Copy the actual .iso file, Windows XP iso file to USB Flash Drive's root directory and make sure file name is XP.iso and not something else.

09. Disconnect E-V-E-R-Y-T-H-I-N-G from the motherboard so that only one hard drive is connected to it and make sure it is connected to one of the main Intel SATA ports, not additional ones you may have on the side.

10. F8 at startup should let you boot from the newly created USB Flash Drive.

You may see two versions of the USB Flash Drive.
DO NOT SELECT the UEFI version. If the non-UEFI version is not there, you need to go to BIOS and set the non-UEFI as a boot priority device.
BOTH non-UEFI and UEFI must be selected in the BIOS list, but boot from the non-UEFI version.
All non SATA/IDE drives should be disconnected, they should not show up in the boot device list at all, or the Windows XP installation may try to write to them and fail, which will crash the installation process, so only have a single IDE/SATA Windows XP drive connected

You may see the cursor flash in the upper left corner.
*WAIT*WAIT*WAIT*

11. SELECT: Widows XP Setup Step 1 (TXT-mode)

12. Wait for ISO to load and after you see Remember to press F6... message, *GET READY* to press Enter after which you will see a blue screen and at the bottom: Press F6 if you need to install a third party SCSI or RAID driver...

START PRESSING F6 then F7 then F6 then F7 (one after the other)...

13. Blue Windows Setup screen appears > Press S >
Select: FiraDisk Driver (32-Bit) and press Enter
Press S
Select: Intel (R) SKL SATA AHCI Controller (X99+Skylake) and press Enter
Press S
Select: ASMEDIA USB3 Controller Driver and press Enter

14. Press Enter to Continue

15. Setup is Starting Windows > Enter > F8 (to agree) > Select partition where Windows XP should be installed. No partition should ever be formatted under Windows XP, only under Windows Vista/7/8/10 so > Leave the current file system intact (no changes)

PAY ATTENTION TO DRIVE LETTER OF PARTITION YOU ARE INSTALLING TO, that will be the Windows XP system drive letter after installation completes.

16. Wait for the process to finish and ALLOW the timer to run out telling you the computer will be restarted, do not press Enter to Restart immediately. Start pressing F8 to be able to select to boot from the USB Flash Drive again. If the computer freezes, restart it manually and boot from USB Flash Drive again.

17. This time SELECT: Widows XP Setup Step 2 (GUI-mode)

18. Windows XP may hang on first boot, just like in the "good old days".
If (when) that happens, Reboot!

On the  XPinstallfromUSBviaFiradisk.pdf  instruction from hwbot it is on page 19-26
Dietmar

⇗ https://community.hwbot.org/topic/141067...-of-mainboards/

look for file  Install OS from USB.rar  there, it contains also working RMPrepUSB.



diderius6 has attached files to this post
#3786sqppI actually do have Coffee Lake and not Sky Lake it's a 8th generation i5
#3787diderius6⇗ @sqpp

It works on any motherboard for install of XP,
as long as it has an USB connector
Dietmar
#3788sqppI will check it, hopefully the last time!
#3789sqppNVM!
#3790diderius6⇗ @sqpp
You have to set mark at XP/BartPE bootable [NTLDR] in RMPrepUSB install of XP
Dietmar
#3791sqpp⇗ @diderius6 it was actually the grub, I forgot to install that, but now it is okay!
#3792sqppThere is a problem though, I really didn't partitioned the current Windows 10 and couldn't install beside of that, so I think, I will need to Install win10 now and seperate a partition just for XP using NTFS.
#3793diderius6⇗ @sqpp

Can you see your harddisk?

Best is, to use another disk for the XP install.

If you chose the same harddisk as for Win10,
use program AOMEI. But this will only work, if the harddisk has a MSDOS partions table.

If the harddisk is formatted with GPT,
only Gparted can help to change the harddisk to MSDOS partions table
Dietmar

PS: Only the Professional version of AOMEI can change GPT <=> MSDOS partions table on harddisk
without loosing data.
#3794sqppWell, that's what I wanted, although the laptop HDD I have in extra won't fit into my Thinkpad, it's a bit thicker than the SSD which is currently used.
#3795sqppThere is a tool called Partition Tool Mini, I just got it today, as there was a free giveaway, using it long ago, it can covert drives and partitions to MBR

 

Page 254

#3796diderius6⇗ @sqpp

I use a mSata from Samsung EVO 860 500 GB in my Lenovo x230 laptop as second harddisk
Dietmar

#3797sqppThats a good idea, btw, I have found a problem, installing the USB 3.0 driver, it freezes the setup
#3798diderius6⇗ @sqpp

No need to install any USB driver.
Do not press F6, if you make and use a XP.iso with needed drivers for AHCI.
The firadisk driver is already installed,
it is an error in the description
Dietmar

EDIT: For XP SP3 the bootable USB stick only needs to contain

firahelper.ima.gz
grldr
menu.lst
XP.iso (your XP install medium)
#3799sqppI think, my ISO might be a bit messed up because of yesterday, it's whining about some INF files now that are missing.

I have tried to make a new one just with ACPI patch, but then it didn't recognize the disk (even I have selected the SATA drivers with F6)
#3800diderius6⇗ @sqpp

If your XP.iso contains STORAHCI driver and storport,
no need to hit F6
Dietmar
#3801sqppAll right, the problem I actually got is The following value in the .SIF file used by Setup is corrupted or missing:

Value on on the line in section [WinntDirectories]
with key "201."

Setup cannot continue.
#3802sqppI think I found the issue, trying to solve it now. Just a quick question, by any chance I might able to get at least DirectX9 on my WinXP for the MX150 or no chance?
#3803diderius6@ sqpp
Drivers for nVidia GeForce MX150 for Windows XP x86 do not exist.
But because it is from Nvidia, there is a small chance,
that another Nvidia driver for XP can be hacked
Dietmar
#3804sqppOkay, other thing, I was able to install the Windows XP, but when I am about the GUI install and the XP logo about to boots, it's goes BSOD A5 again.

The ACPI should work, already, I do believe, as otherwise it would have failed before.

PS:. I am really sorry for talking this much.
#3805diderius6⇗ @sqpp

I think, the XP Setup has changed the modded acpi.sys against the original one.
If this is true, you only need to copy the modded acpi.sys again into windows\system32\drivers on your harddisk
Dietmar
#3806sqppHow could I do that without booting into the OS? Using Windows 10?
#3807diderius6⇗ @sqpp

I use for this a harddisk to USB dock,
but from other OS it is also possible
Dietmar
#3808sqppJesus Christ, now it's telling me when about to boot that hal.dll is missing or corrupt.
#3809diderius6Mühsam nährt sich das Eichhörnchen:))
Dietmar
#3810gordo999
Zitat von ⇗ infuscomus im Beitrag ¶ #3746
the compiler complains about the heap stack size and I've already given it the maximum
⇗ @infuscomus ....I am no expert with C or C++ but one thing I have noticed about compiler errors is that you cannot take them literally all of the time. A heap error could be generated by an error elsewhere. It could be in the way you have written a C++ statement and how the compiler has interpreted it. It could come down to a simple syntax error where you have omitted a required bracket, like a ) on the end of a statement.

Here's an example of reasons for an out of heap space compiler error: ⇗ https://docs.microsoft.com/en-us/cpp/error-messages/compiler-errors-1/fatal-error-c1060?view=vs-2019

 

Page 255

#3811infuscomus⇗ @gordo999

I managed to migrate the project over to Visual Studio 2005
the 2005 compiler seems to work better, no heap error now.
#3812infuscomus⇗ @sqpp ⇗ @diderius6

just an idea to get around all of these problems installing XP

using paragon rescue kit (diderius6 I sent you a copy of this earlier) we could make an image of a working XP install (with ACPI and AHCI patches - and USB3?)
then send the image and paragon rescue kit media to sqpp
have sqpp use rescue kit to restore the image to a HDD and see if it works?
#3813diderius6⇗ @infuscomus

I use the Paragon rescue kit for a laptop with secured Bios,
put whole XP SP3 like a big file via USB bootable stick and start after from this,
really nice
Dietmar

PS: We can make a generic XP.iso with the STORAHCI driver and stortport and all the new USB drivers,
very similar as ⇗ @daniel_k did.
#3814sqppThat would be really amazing, actually probably in the next year not now, but I am building an XP machine, it's an EVGA 780 SLI board and I still need many hardware, but at least now I will know how to include the SATA drivers, as I have tried to do that already with Easy2Boot, which didn't really work, so I guess, I will need to do something else (most likely the way diderius6 said yesterday, where I was finally able to at least get into the boot logo)
#3815gordo999
Zitat von ⇗ infuscomus im Beitrag ¶ #3811
I managed to migrate the project over to Visual Studio 2005
the 2005 compiler seems to work better, no heap error now.
⇗ @infuscomus ...that another solution I forgot about.
#3816kithylinI hope no one is mad for me asking but I found this thread last night via google searching and I ended up on page 55 of this thread, back when folks were still hacking the acpi.sys for XP for B350 boards. Well I recently just went AMD and bought an X470 motherboard. Specifically the MSI Gaming Plus X470. Is there anyone that could PM me a download link to a working version of XP-32 ISO file that would install and run stable on this motherboard perhaps?

Do we still need to self-modify the files via n-lite? Because I could do that.. if there is a post with instructions and a link to the modified files.
#3817diderius6⇗ @kithylin

Copy a for Ryzen modded acpi.sys into your installationsfolder i386 of XP SP3
and use as AHCI driver for the MSI Gaming Plus X470 board the STORAHCI driver together with storport
and it is done via nlite
Dietmar
#3818kithylinOkay.. where would I get / download these modified files then? Is it buried somewhere back in this thread?
#3819diderius6⇗ @kithylin

For the STORAHCI driver file storahcitxtsetup.rar
¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (64)

For acpi.sys 5048 line for Ryzen
¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (149)

The last best acpi.sys from outer space ) version, works also for Ryzen
¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (215)


And for storport settings
¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (190)

Dietmar
#3820genieautravail
Zitat von ⇗ Andalu im Beitrag ¶ #3771
Is there someone who applied the WinXPPAE patch v2.0 with no issues?

What issues do you have ?
#3821Andalu⇗ @genieautravail
please see my post ¶ here. Does it work for you?
#3822genieautravail
Zitat von ⇗ Andalu im Beitrag ¶ #3821
@genieautravail
please see my post ¶ here. Does it work for you?


I don't slipstream the patch into a CD and I think that isn't a good idea to do like this.

I apply the patch only after install of XP.
I'm testing the patch 2.0 /4GB on a Dell laptop (Latitude E6230) with no issues.
With the patch 1.1, I had lost all the USB ports of the laptop.
Each time I plugged an usb device, XP displayed a message sayng that the USB hub doesn't have enough power for running the device...
No more issues like this with the patch 2.0.
#3823genieautravail⇗ @Andalu

For playing with files protected by the Windows File Protection (WFP), see here:

⇗ Windows File Protection (WFP)
#3824genieautravail⇗ @Andalu
And don't forget to backup the original files before applying the patch...
#3825Andalu⇗ @genieautravail
As already reported, I also tried to replace the files from another hard drive to the destination XP drive bypassing the WFP protection but XP always hangs at same point for every tried board.

In my case, I installed the WinXPPae 1.1 patch with no issues but some programs, like macrium reflect, freeze sometimes and most probably, the WinXPPae 2.0 patch would solve those problems.

 

Page 256

#3826daniel_k⇗ @Mattiwatti, sorry for the late reply.

I was talking about a simple driver, which is loaded as a PCI bus filter driver (*PNP0A08), like the one from Intel (sadly it crashes XP).
It should scan for a device with ID like PCI\VEN_8086&DEV_1E31 and change its configuration registers D0 and D8 to a value of 0F.
Have you ever seem something like that?

Additionally, we have an AMD driver which works just fine with Intel XHCI controllers.
But when PAE is enabled, it breaks NTVDM and by consequence VGA?! or the other way around.

In certain cases, only affects full screen mode of a DOS app (running EDIT.COM and trying to switch to full screen with ALT+Enter) results in the following error:

 
---------------------------
16 bit MS-DOS Subsystem
---------------------------
The NTVDM CPU has encountered an illegal instruction.
CS:0000 IP:9872 OP:ff ff 00 00 00


In other cases, no DOS apps can be run and error message is the same.

Any tips to track down this conflict or memory corruption? Personally, I believe the driver somehow corrupts memory used by NTVDM or VGA.

#3827daniel_k
Zitat von ⇗ Andalu im Beitrag ¶ #3735
@daniel_k
I installed XP v5.1.2600 on my former crazy asrock B75-Pro3M as 'acpi multiprocessor pc' with the only Intel RST AHCI+RAID driver v11.2.0.1006 by Fernando slipstreamed by nLite. No other driver installed, no usb3 driver and no acpi.sys mod. The XP installation ends normally. I launched the WinXpPAE.exe 2.0 with /ALL /NB command line on another computer and from there I copied by hand the patched files in the windows\system32 folder of the destination XP disk, replacing the existing files with the patched versions of hal.dll, ntkrnlpa.exe and ntoskrnl.exe files (the last two renamed for multiprocessor pc).

After connecting the patched disk to the B75-Pro3M board, on restart, I got the blank screen always at same point: the pc hangs as soon as the XP logo and the horizontal scroll bar below appear.
The same on each restart. Same behavior on three other boards (one LGA 1150 and two 1151). XP boots in safe mode only.

Please post complete system specs.
#3828daniel_k
Zitat von ⇗ dencorso im Beitrag ¶ #3736
In my opinion, sufficient time has elapsed, so I'd like to ask @Mov AX, 0xDEAD to kindly update his assessment of the currently still unresolved problems for running Windows XP x32 on sky/kaby/coffee lake hardware, and of the progress done till now.  

Hi Den!

It's a shame that he went into "Ignore" mode.
#3829daniel_k⇗ @genieautravail, when you have some time, please test with /ALL option.
#3830daniel_k
Zitat von ⇗ infuscomus im Beitrag ¶ #3674
@daniel_k

do you want to see the source code for my kernel patcher program?
you seem more knowledgeable than me so you might have better luck producing something useful with it

Thanks, but I'm not into kernel patching and don't have that much time.
#3831daniel_k⇗ @diderius6 and everyone

Please try this new AMDXHC driver, based on latest driver v1.1.0.0276 from Dec 2018.

This was a really tough job, please don't modify and redistribute publicly. Thanks.

Managed to restore XP support, INF files merged into a single one for easier installation.
Sadly, 32-bit PAE is still an issue. Otherwise, this driver is perfect.

The AMDXHC driver is the only driver which works with devices connected to hubs during XP/Server 2003 setup.

Previous version had a bug that could deadlock your system under certain circumstances.

Please use this beta, which fixes the issue (but code still not perfect).

Final version to be released really soon.

PS:  This makes no sense: "Removed USBD.SYS dependency (it's integrated into driver)"
As the file is needed for other purposes, otherwise USB devices won't work.
#3832Andalu⇗ @daniel_k

Systems setup:

- i5-3470 Ivy Bridge (LGA 1155)
- Asrock B75 Pro3-M
- 32GB ram (4x8) Kingston HyperX Fury DDR3 1600MHz
- HD WD5000

- i7-4770k Haswell (LGA 1150)
- Msi CSM-Q87M-E43
- 32GB ram (4x8) GSkill RipjawsX DDR3 2133MHz
- SSD 250GB Samsung 850 evo

- i5-6600 SkyLake (LGA 1151)
- Asrock B250M Pro4
- 64GB ram (4x16) GSkill Aegis DDR4 2400MHz
- HD HGST 7k1000

- Pentium G4440 SkyLake (LGA 1151)
- Asus Prime B250M-C/CSM
- 8GB ram (2x4) Corsair Vengeance 2400Mhz
- HD Seagate ST1000LM035

Common for all systems:
- Windows XP SP3 original ISO v5.1.2600 ITA, no updates
- Intel RST AHCI+RAID driver v11.2.0.1006 by Fernando slipstreamed by nLite
- 16GB USB2.0 Flash Drive with XP ISO installed by yumi

- Acpi.sys 5048 (SHA1: 8EF48518B17DAAC4A90632A811FBFDC8183C325B) from acpi5048_intel_amd_final.rar added for LGA1151 boards only.

No other driver or file slipstreamed.
#3833daniel_k⇗ @Andalu

All systems running with onboard graphics?

It's so strange that the system boots in Safe mode.
#3834infuscomus⇗ @daniel_k

can you show me how you properly remove a dependency from a driver? I'd like to know how you removed USBD.SYS dependency from it
#3835Andalu⇗ @daniel_k
All with onboard graphics except for the msi Q87 equipped with a Radeon R7 250


Your new AMDXHC driver seems to work fine on my asus prime B250.
Not tested yet on other boards.
#3836antomeHi guys I still have problems starting windows xp x64 on Z390 XI Gene.  The same os start regularly on the z270 IX Apex without the need for modified bios.  On the z390 it only starts in safe mode, can you help me?  Has anyone managed to start it correctly on the z390?  To exclude problems with the sata deactivated by bios and I used a pcie / sata jmicron card


in normal mode i get this error
#3837diderius6⇗ @antome

I managed to install a full XP64 on z390 board.
Make use of STORAHCI driver together with Storport
Dietmar
#3838daniel_k
Zitat von ⇗ infuscomus im Beitrag ¶ #3834
@daniel_k

can you show me how you properly remove a dependency from a driver? I'd like to know how you removed USBD.SYS dependency from it

Can't give you a step by step explanation, but I think you can figure it out by yourself with some guidance:

- I've attached the original driver and delcert utility to delete signature (just run delcert driver.sys).
- Get CFF Explorer from ⇗ https://ntcore.com/?page_id=388
- Compare both files (use amdxhc.sys), my patched file is larger. Open both original and patched in CFF Explorer, I've created a new section named .text with same flags as the original where the new code was written.
- Disassembly original and patched. In the disassembly of original, search for every function from USBD.SYS that I've integrated in patched file (USBD_CreateConfigurationRequestEx, USBD_ParseConfigurationDescriptorEx and USBD_GetUSBDIVersion). For every API call found, search for the corresponding offset in the disassembly of the patched file and "follow" the call through the added code. You'll see I've replaced the call import with a call to "local" code (disassembly usbd.sys and see for yourself).
For x86 only, it was needed to delete the corresponding address in the relocation table.
- After all API calls were replaced with local calls with their corresponding code, deleted the whole USBD.SYS imports with CFF Explorer. Optionally, you can "delete" the strings by "zeroing" all function name / usbd.sys texts.

I still didn't take the time to understand how to delete a single import function, but what I do is simply to rename the name to another known existing function. 

daniel_k has attached files to this post

#3839antome
Zitat von ⇗ diderius6 im Beitrag ¶ #3837
@antome

I managed to install a full XP64 on z390 board.
Make use of STORAHCI driver together with Storport
Dietmar


the problem cannot be the a352 driver because I have disabled the integrated ports on the motherboard and I used a pcie sata jmicron card with native driver for xp.
what acpi.sys file did you use?  Have you also re-created sp2.cab with modified acpi.sys?
did you use the z390 dark or something else?  the datk has almost complete acpi support for xp via bios which could fill gaps in the modified acpi.sys file
#3840diderius6⇗ @antome

It is a driver, because XP64 starts in Safe Mode.
Try STORAHCI together with Storport.

I noticed, that XP64 SP2 is unstable on nearly every motherboard.
Sound, Lan, brrr..

So, another driver can make this BSOD also
Dietmar

 

Page 257

#3841gordo999
Zitat von ⇗ daniel_k im Beitrag ¶ #3826
It should scan for a device with ID like PCI\VEN_8086&DEV_1E31 and change its configuration registers D0 and D8 to a value of 0F.
⇗ @daniel_k ....how do you figure out what the configuration registers should be? Are you getting the info from an Intel spec sheet or by trial and error?  Just curious.
#3842daniel_k⇗ @Andalu

It's so odd your issue, makes no sense.
What about disabling any non-essential onboard devices such as LAN, Audio, COM/LPT ports etc?

If it boots in Safe Mode, there is something causing that blank screen issue.

Thanks for trying the new driver, by the way.
#3843daniel_k⇗ @diderius6

Don't have any issues with XP x64 here, maybe using the original ACPI.SYS with a modded DSDT is better.
Remember that ⇗ @Mov AX, 0xDEAD said that the beta 5048 ACPI.SYS has issues with 64-bit variables.
#3844daniel_k
Zitat von ⇗ gordo999 im Beitrag ¶ #3841
@daniel_k ....how do you figure out what the configuration registers should be? Are you getting the info from an Intel spec sheet or by trial and error?  Just curious.


By reading the datasheet:
⇗ https://www.intel.com/content/dam/www/pu...h-datasheet.pdf

Page 698:
D0hD3h - USB 2.0 Port Routing
D8hDBh - USB 3.0 Port SuperSpeed Enable

Page 713 - 17.1.33 XUSB2PR xHC USB 2.0 Port Routing Register (USB xHCID20:F0)
Page 714 - 17.1.35 USB3_PSSENUSB 3.0 Port SuperSpeed Enable Register(USB xHCID20:F0)

Just needed confirmation from ⇗ @Andalu by booting Windows 7 with USB properly operating in XHCI mode.
Intel did some really silly things just to break XHCI in XP, first the 64-bit DSDT thing to prevent any driver from loading, then the need of a PCI bus filter driver to fully enable XHCI mode/speed on "selected" OSes.
The "switch" driver uses KMDF 1.9 (supported by XP), but was written in a way to support only Windows 7, although it does work in Vista, but crashes XP.
#3845gordo999
Zitat von ⇗ daniel_k im Beitrag ¶ #3844
Intel did some really silly things just to break XHCI in XP, first the 64-bit DSDT thing to prevent any driver from loading, then the need of a PCI bus filter driver to fully enable XHCI mode/speed on "selected" OSes.
daniel_k ....once again, congrats for figuring all this out. Intel have indeed abandoned faithful users like myself to side with Micro$oft. Even their setup files for USB drivers have built-in code to prevent the loading of the software for anything beyond Skylake.

There's no good technical reason for this behavior other than to enable Micro$oft in forcing users to use Windows 10, which is no better than W7, and has spyware built in. M$oft abandoned desktop users with W8 by designing the OS for touch screen users until the users revolted and forced them back to a mouse/keyboard option. If Linux designers were not so lame they could have taken over by now. But they insist on keeping that archaic Unix system under the hood, with brilliant features [/sarc off] like no extensions on files and text editors that have not changed since the 1970s.
#3846infuscomus⇗ @daniel_k

Thanks very much
#3847dencorso
Zitat von ⇗ daniel_k im Beitrag ¶ #3828
Zitat von ⇗ dencorso im Beitrag ¶ #3736
In my opinion, sufficient time has elapsed, so I'd like to ask @Mov AX, 0xDEAD to kindly update his assessment of the currently still unresolved problems for running Windows XP x32 on sky/kaby/coffee lake hardware, and of the progress done till now.  

Hi Den!

It's a shame that he went into "Ignore" mode.


So it is! But I'm confident he'll be back sometime soon (one can hope, right?).
BTW, WildBill 's PETool can remove individual relocations and fix the relocation table for you... maybe you'll find it useful:  ⇗ http://www.mediafire.com/file/elfceaj4ny..._0.0.5.zip/file
#3848Andalu⇗ @daniel_k
Thanks so much for your new USB3 modded driver and for sharing it

Win7 32bit boots correctly with it (forced driver installation needed).

XP 32bit with new amd driver also works on:
Asus prime B250
Asrock B250
Asrock B75 Pro3

It fails on Msi Q87 (but here any usb3 driver has never worked).
#3849Andalu
Zitat von ⇗ daniel_k im Beitrag ¶ #3842
@Andalu

It's so odd your issue, makes no sense.
What about disabling any non-essential onboard devices such as LAN, Audio, COM/LPT ports etc?

If it boots in Safe Mode, there is something causing that blank screen issue.

All onboard devices are always set on disable, except for the audio controller. Same issue even disabling it.

I restored an old asus P5QSE lga775 (XP boots on sata mode with 32bit Intel RST AHCI & RAID driver v11.2.0.1006 by Fernando installed) to try the WinXPPae 2.0 patch (files copied by hand from another XP hard drive) and here I got for the first and only time the following bsod:

BAD_POOL_HEADER
0x00000019 (0x00000020, 0xE1563530, 0xE1563820, 0x0C5E0408)

on next reboots/shutdown never seen again the bsod. XP hangs when the logo appears as for the other boards.
The identical bsod occurs only when the WinXPPae patch 2.0 procedure is re-started from stratch.
Here too XP can boot in safe mode only.
#3850daniel_k⇗ @Andalu

Please compress your XP ISO with 7-zip or WinRAR, upload it to MediaFire, Google Drive or Mega and send me a PM with the link.
#3851daniel_k
Zitat von ⇗ Andalu im Beitrag ¶ #3848
@daniel_k
Thanks so much for your new USB3 modded driver and for sharing it

Win7 32bit boots correctly with it (forced driver installation needed).

XP 32bit with new amd driver also works on:
Asus prime B250
Asrock B250
Asrock B75 Pro3

It fails on Msi Q87 (but here any usb3 driver has never worked).

Glad to know it works!

For Win7, you better use Intel official drivers.

What is the error with the MSI Q87?
#3852Andalu
Zitat von ⇗ daniel_k im Beitrag ¶ #3851
What is the error with the MSI Q87?

The new amd xhci driver installs properly on msi Q87 but all usb3 ports act as usb2. In bios the USB options are configured like the other boards where the usb3 feature works fine. I tried all the usb3 drivers found in this forum but each of them gave me error or the usb3 feature doesn't work anyway.


P.S.: you have pm ;)
#3853infuscomusHas anyone here successfully installed XP on Threadripper?
#3854genieautravail
Zitat von ⇗ daniel_k im Beitrag ¶ #3829
@genieautravail, when you have some time, please test with /ALL option.

I have only 4 GB of memory on this computer. The /ALL option has no sense.
#3855daniel_k
Zitat von ⇗ Andalu im Beitrag ¶ #3852
The new amd xhci driver installs properly on msi Q87 but all usb3 ports act as usb2. In bios the USB options are configured like the other boards where the usb3 feature works fine.

You need to change those same registers with WPCRSET.

 

Page 258

#3856Andalu
Zitat von ⇗ daniel_k im Beitrag ¶ #3855
Zitat von ⇗ Andalu im Beitrag ¶ #3852
The new amd xhci driver installs properly on msi Q87 but all usb3 ports act as usb2. In bios the USB options are configured like the other boards where the usb3 feature works fine.

You need to change those same registers with WPCRSET.

It works here too

Thankssssss!!!!
#3857dencorso
Zitat von ⇗ Andalu im Beitrag ¶ #3856
Zitat von ⇗ daniel_k im Beitrag ¶ #3855
Zitat von ⇗ Andalu im Beitrag ¶ #3852
The new amd xhci driver installs properly on msi Q87 but all usb3 ports act as usb2. In bios the USB options are configured like the other boards where the usb3 feature works fine.

You need to change those same registers with WPCRSET.

It works here too

Thankssssss!!!!



OK. Great!
Well, I know how to use WPCRSET... yet, I'm lost somewhat... would you please kindly detail: which registers, from which value to which new value, exactly?
#3858daniel_k
Zitat von ⇗ dencorso im Beitrag ¶ #3857
OK. Great!
Well, I know how to use WPCRSET... yet, I'm lost somewhat... would you please kindly detail: which registers, from which value to which new value, exactly?


It's here:
¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (238)

By the way, I've uploaded a beta version of the latest USB driver (276), please read info at:
¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (256)
#3859XPWELL64⇗ @diderius6
There is no PDBM &= 0xFFFFFFFFFFFFFFF9 PDBM &= 0xFFFFFFFFFFFFFFFD in my HP cs1011nt in my dsdt of my bios but there are lots of ToIntegers. You said that two of the long integers are PDBM &= 0xFFFFFFFFFFFFFFF9 and PDBM &= 0xFFFFFFFFFFFFFFFD. Download the file and look at two dsdt.dsl. 07.dsl is without PDBM &= 0xFFFFFFFFFFFFFFF9 and PDBM &= 0xFFFFFFFFFFFFFFFD (cs1011nt) and 11.dsl is from another hp laptop with PDBM &= 0xFFFFFFFFFFFFFFF9 and PDBM &= 0xFFFFFFFFFFFFFFFD.



XPWELL64 has attached files to this post
#3860XPWELL64I decompiled 4 AMD ASUS MOBO DSDTs and 1 Intel DSDT and all of the AMD MOBOs doesn't have PDBM.
#3861Andalu
Zitat von ⇗ daniel_k im Beitrag ¶ #3858
By the way, I've uploaded a beta version of the latest USB driver (276), please read info at:
¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (256)

It works fine, thanks again
#3862Andalu
Zitat von ⇗ dencorso im Beitrag ¶ #3857
OK. Great!
Well, I know how to use WPCRSET... yet, I'm lost somewhat... would you please kindly detail: which registers, from which value to which new value, exactly?


Zitat von ⇗ daniel_k im Beitrag ¶ #3858
It's here:
¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (238)

I can only add that the same method worked on two different boards (B75 Ivy and Q87 Haswell) with two slightly different usb3 issues.
#3863XPWELL64Please look at the eighth page of the PDF:
⇗ http://download.microsoft.com/download/5...cpa002_wh06.ppt
#3864XPWELL64The X79 has TOINTEGERS too.
#3865XPWELL64⇗ @diderius6
With MMTool I got Invalid FFS file while I was integrating a dsdt table into a bios. How do I integrate your DSDT.AML into BIOS with MMTool 5.02? My laptop's series is ASUS K555LB/X555LB. Is there any IASL step before integrating it?
#3866diderius6⇗ @XPWELL64

DSDT.AML has to be exchanged against old DSDT body, at the same place in Bios as before, via Uefi tool
Dietmar
#3867infuscomus⇗ @XPWELL64

I think ⇗ @Mov AX, 0xDEAD wrote a program so that you can test your DSDT works before you flash it to BIOS
#3868XPWELL64First, I'll test the DSDT.aml with ⇗ @Mov AX, 0xDEAD's DSDT patcher at boot time program. If it works, I'll integrate it into the bios with UEFITool. Next, I'll mod the igxpmp32.sys + all DLL files (if it works with only modded igxpmp32.sys no need for this) with IDA 32 bit and Dependency Walker.
#3869greybeardHi, I'm new here and have been following this thread closely since I plan to finally assemble my new Asus Prime X-370 box over the holidays. I'm not fond of Windows 10, so I'm trying to maintain my current environment which is a mix of Windows 7 and XP64 apps. With your help (Thank you!) I've got Windows 7 installed and working well and am making some progress in getting XP64 installed. It's still crashing during the "loading drivers" phase of the install, but I think I can muscle my way through that.

However, I have a question that may be off-topic. One of my options is to use Windows Server 2008, and I'm wondering if any of your mods will help me get USB support working there. So far, I've been unable to get any mouse support. If not, can you point me to the right forum?

Thanks!
#3870gordo999
Zitat von ⇗ greybeard im Beitrag ¶ #3869
I've been unable to get any mouse support. If not, can you point me to the right forum?Thanks!
⇗ @greybeard ...the x370 has a single PS/2 port which is a combo mouse/keyboard port. You'll need an adapter cable that adapts the mouse and kbd to a single input plus 2 USB to PS/2 connectors. That will get you going with a USB mouse/kbd till you solve the USB problem.

On my Asus B360M, I had to get a USB 3 adapter card to get USB running initially on W7. I plugged a 7 port USB extender into that and ran my wireless mouse off one of those doohickeys that plug into a USB port. That left me with 3 extra USB 3 ports and 6 USB 2 ports. I even got that running on XP using drivers I found on a Czech site.

I have USB running on W7 now through all mobo USB ports using a driver from this site. Still working on getting the mobo USB ports running on XP. I have been kind of distracted but I think daniel_k has a recent offering.

 

Page 259

#3871greybeard⇗ @gordo999 Thanks for the quick reply.

Yeah, I was thinking about getting one of those combo cables. Rummaging through my parts bin, I found one that doesn't have the right connectors. If necessary, I'll buy the right one and see if it will help with my Windows Server 2008 issue.
#3872YuriyCNI need USB3 driver for Windows XP (32-bit).
Chipset = Intel H110M (100-series)
HardwareID= VEN_8086&DEV_A12F
Is there a working driver?
#3873gordo999
Zitat von ⇗ greybeard im Beitrag ¶ #3871
If necessary, I'll buy the right one and see if it will help with my Windows Server 2008 issue.
⇗ @greybeard ...Don't forget the 2 x USB to PS/2 adapters while you're at it...unless you have a PS/2 mouse/kbd. I have never seen a combo port for PS/2 since my board has two PS/2 ports for mouse and kbd.

I wouldn't mess around with cables unless you confirm the pin-out. Asus is pretty good with supplying pin-outs although sometimes you have to decode the supplied datagram (in the manual) to reveal them. That's especially true on the mobo. There are two serial ports on mine and it was lucky that I confirmed the pin layout first, it's not done to any convention I knew off. May not be an issue with low power devices like mouse/kbd but having already blown a mobo through a dumb mistake, like getting a fan connector mixed up with the BIOS battery shorting clip, right beside it, I no longer take chances.
#3874YuriyCNI know about AMDXHC driver, but I did not understand, whether this driver
supports a motherboard ⇗ https://www.gigabyte.com/Motherboard/GA-H110M-DS2-rev-10#ov
with an Intel H110M chipset??
#3875diderius6⇗ @YuriyCN

I tested Intel H110M and all drivers are there for XP SP3
Dietmar
#3876YuriyCN
Zitat
I tested Intel H110M and all drivers are there for XP SP3
Dietmar



Please give a link where to download this driver.

#3877greybeardOk, I'm stuck and need some help. Trying to install Windows XP32 SP3 on an ASUS Prime X-370A and here's what has happened over the last 2 days

The installation begins,
Allows me to select a partition,
Begins copying files
Says it cannot copy storahci.reg,
Reboots to the installation GUI and starts the actual install,
Gets to installing devices,
Crashes with a Stop 0xc5.

I think I'm using the latest drivers, and have made the suggested edits to txtsetup.sif and dosnet.inf, but I'm clearly missing something.

Can anyone help?
#3878infuscomus⇗ @greybeard

put storahci.reg in your i386 folder of your XP install media
#3879greybeard⇗ @infuscomus

Thanx for the quick reply. I had done that earlier and it didn't seem to help. Will verify, try again, and get back to you.
#3880diderius6⇗ @greybeard

BSOD 0xc5 is a driver fault. Disable nearly everything in Bios and try install again.
Another way is to hit F8 for Safe Boot on last step of XP install
Dietmar
#3881greybeard⇗ @diderius6

Not sure what to disable in the BIOS. Am using the most recent BIOS with pretty much default settings. Just making sure I can boot to MBR disks. But if you an give me some suggestions about problematic settings, I can try to disable them.

The one thought I had is a potential problem with my boot disk - Samsung EVO SSD. That shouldn't be a problem, right?

I wish I could get to the last boot
#3882diderius6⇗ @greybeard

The Samsung EVO SSD is no problem, as long as it has 512 Bytes/sector.
Disable everything in Bios: Only SATA driver stay enabled
Dietmar
#3883greybeard⇗ @diderius6

OK, will do, and let you know how it works out. Thx.
#3884greybeard⇗ @infuscomus

Ok, I placed storahci.reg in the installation folder and the installation script still refused to copy it during the "copying files" phase. I pressed the ESC key to continue.

The installation proceeded normally until it crashed during the "installing devices" phase - Stop 0xD1.

Have any ideas what its trying to tell me?
#3885greybeard⇗ @diderius6

I disabled everything in the BIOS except SATA, as you suggested - that's a lot of options.

I booted into XP to continue the installation. It crashed again while "installing devices" with a Stop: 0xc5 (0xB80187, 0x2, 0x1, 0x8087A5A1). Any other ideas?

 

Page 260

#3886infuscomus⇗ @greybeard

try restarting the installation from textmode setup, reformat the drive, something might not have been copied over correctly.
#3887diderius6⇗ @greybeard

Hit F8 and chose "Safe Boot" before the last start from installing XP before BSOD
Dietmar
#3888gordo999
Zitat von ⇗ greybeard im Beitrag ¶ #3885
It crashed again while "installing devices" with a Stop: 0xc5 (0xB80187, 0x2, 0x1, 0x8087A5A1). Any other ideas?
⇗ @greybeard ...an 0xC5 bsod is related to a hard drive error, memory error, or driver error. In this case, it's likely a driver error...a bad driver or one that doesn't work with your system.

Nirsoft has a free blue screen interpreter that will examine the bsod minidump file and advise which driver faulted. I have not used it but you may need to get access to your minidump files from another computer to use it.

⇗ https://www.nirsoft.net/utils/blue_screen_view.html

Loading devices means the installer is loading device drivers. It it's trying to load a driver into a memory space that is already assigned, or isn't available, that could give you the 0xC5 error. You might try a memory test although Windows usually runs one first. Also, do a chkdsk /f from another OS with your disk attached. Do you have a pagefile installed or are you trying to run off straight RAM memory? I am wondering as well whether you are using a modded PAE kernel/HAL. If so, with memory intensive driver loading, maybe more memory is being allocated than what you have. Remember, the mods on this site are experimental in nature. I don't think anyone has claimed each mod will work for every machine.
#3889greybeard⇗ @gordo999

Yep, I understand - nothing's guaranteed. I'm just happy that I found this site. Hell, 20 years ago (hmmm, make that 30) I would have joined it the fun. My mind doesn't work that well anymore.

But no, I'm not using any hacked HAL's or anything like that. Just trying to get std WinXP SP3 installed on this Ryzen box. I"m amazed, actually, that you guys have been able to get me this far.

I will try check out that mini dump viewer and see what it tells me.

Thanx!
#3890YuriyCNPlease, help me.
I need USB 3.0 driver for Intel H110M (100-series) chipset. HardwareID= VEN_8086&DEV_A12F
Please give URL where to download working driver for Windows XP (32-bit)?
#3891diderius6⇗ @YuriyCN

¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (128)

Dietmar
#3892YuriyCN
Zitat von ⇗ diderius6 im Beitrag ¶ #3891
Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (128)


Thanks you!

I did not understand how to install this driver, since I have a other DEV_ID.
Next, should I edit the amdxhc.inf and replace the ID code
%INTELXHC.DeviceDesc% = AMDXHC, PCI\VEN_8086&CC_0C0330
on the ID codes my USB device
%INTELXHC.DeviceDesc% = AMDXHC, PCI\VEN_8086&DEV_A12F

It is right?
#3893dencorsoYes, it is. CC_0C0330 is a class code, meaning any USB 3.0, whatever the DEV code.
#3894gordo999
Zitat von ⇗ greybeard im Beitrag ¶ #3889
Just trying to get std WinXP SP3 installed on this Ryzen box. I"m amazed, actually, that you guys have been able to get me this far
⇗ @greybeard ...I got XP going initially on my Asus B360M 300-series mobo  by using the unofficial SP4 upgrade. Be careful if you use it, however. If you don't have a running copy of XP, it requires you to create an integrated (slipstreamed) install disk using your XP install disk and the SP4 upgrade.

I had a disk with XP SP3 already installed and I tried to do a repair install by running the integrated disk till windows starts and you are presented with the choice to install a clean XP version or do an in-place (repair) install. At that point, with the SP4 upgrade integrated disk, you are presented with only two choices (no option to go to a prompt), one of them a clean install and the other an install leaving the files and system alone. I selected the latter, presuming that was a repair install but it wasn't, it actually installed another edition of XP. I did not think you could do that but with my windows directory called WinXP it created a new windows directory called Winxp.0.

Confused the heck out of me at first but once I clued in I realized I had two working versions of XP on the same partition that could be selected at the boot menu (by manipulating boot.ini) and booted independently. I could have had 3 or 4 if I'd wanted to. They all work perfectly fine, except the SP4 version is barebones and lacks the installed files you have on your main installation. It did not solve problems like the LAN and USB3 functionality and I am currently working on finding a way to get a LAN driver working. I could use a plugin card but, hey, that would be cheating. Already did that with my USB ports. :-)

The only reason I mention this upgrade, unofficial or not, is that it got me going. I was stuck trying to insert drivers like the ACPI and iaStor SATA drivers because I was not up to speed on what the guys were doing here. The slipstreamed SP4 upgrade disk managed to bypass all those errors and get XP running on my 300-series mobo. Since then, I have learned how to add the modded ACPI and iaStor drivers from this forum to my initial XP installation, got it running, and even got it activated.

It was helpful to flip back and forth between my original install and the new SP4 install, especially comparing registry entries. Here's a link to instructions for acquiring and integrating SP4 using ntlite. Be careful, if using ntlite, that it is an XP version and running on an xp compatible OS. You can use XP installed in a VM to do the integration but running ntlite on W7 or 10 won't create a slipstreamed disk that works..

⇗ https://ryanvm.net/forum/viewtopic.php?t=10609⇗ https://ryanvm.net/forum/viewtopic.php?t=10609
#3895YuriyCNI installed the driver AMDXHCI_XP_FINAL.rar.
Unfortunately, I got error code 10 for the "Intel USB3.1 extensible host controller".
My motherboard - Gigabyte GA-H110M-DS2
⇗ https://www.gigabyte.com/Motherboard/GA-H110M-DS2-rev-10#ov

Why did I get an error?
#3896diderius6⇗ @YuriyCN

Have you set in Bios USB3 "enabled"

Dietmar
#3897gordo999
Zitat von ⇗ YuriyCN im Beitrag ¶ #3895
...I got error code 10 for the "Intel USB3.1 extensible host controller"....Why did I get an error?
⇗ @YuriyCN ...Error code 10 is a general and normal error for an XHCI, or any other controller in Device Manager when the driver cannot be loaded. No one can tell you why it happened. The guys in the forum are working hard to find out why but there are not always answers for every motherboard chipsets. You may have an Intel chipset but Gigabyte may have implemented it differently. Read the recent post by daniel_k on modifying PCI settings. Also, look into buying a PCIe USB3 add-on card for Win 7 and try to find XP drivers for it. I did that with a VIA chipset on an add-on card. Now it works on both W7 and XP.
#3898XPWELL64Patching a dsdt.aml is better.
#3899YuriyCNdiderius6

Zitat
Have you set in Bios USB3 "enabled"



When installing Windows 7 with Intel USB 3.0 driver v5.0.4.43 - USB ports work fine!
But, I need to work USB on Windows XP.

Photo BIOS-UEFI.

#3900Andalu⇗ @YuriyCN
try to set "xhci hand-off" on disabled

 

Page 261

#3901Andalu
Zitat von ⇗ XPWELL64 im Beitrag ¶ #3898
Patching a dsdt.aml is better.

It would be even better if you could explain "how to do"
#3902greybeard⇗ @gordo999

Thx for the detailed reply.

I'm actually making some progress. I thought I could do this while working on my "day job" but decided to give this my undivided attention. Started over with a clean SP3 installation disk and carefully walked through the installation of acpi, storport, and storachi drivers until I actually got to the XP desktop! Yay!!!

But I don't have any USB (mouse) support and have a bunch of yellow warnings in Device Manager complaining about uninstalled drivers. So far, very attempt to add USB drivers has crashed the system with various BSOD's, depending upon the specific driver. Since many have already solved this problem, I'm gonna assume it's a hardware problem on my end (BIOS, chipset, etc.)

I'll give this a serious effort this weekend and let you know how it goes. I'll figure it out - it's just a bleeping computer ...
#3903YuriyCN
Zitat von ⇗ Andalu im Beitrag ¶ #3900
try to set "xhci hand-off" on [I]disabled/I]


I set "xhci hand-off" to disabled - no result.
Zitat
Legacy USB Support  --- > Enabled
XHCI Hand-off  --- > Disabled
Port 60/64 Emulation  --- > Enabled
USB Mass Storage Driver Support  --- > Enabled



Next ... I tried to set all the settings to disabled.

Zitat
Legacy USB Support   --- > Disabled
XHCI Hand-off  --- > Disabled
Port 60/64 Emulation   --- > Disabled
USB Mass Storage Driver Support  --- > Disabled



Unfortunately,USB does not work, code 10.
Maybe for this driver needs a special USBD.SYS??

#3904diderius6⇗ @YuriyCN

Set Port 60/64 Emulation --- > Disabled
all other USB to enabled

Dietmar
#3905kukonosau⇗ @diderius6
Do you have ACPI for XP 64-bit in Ryzen 3 2200G? Do you have 1050 Ti drivers or Vega 8 drivers?
#3906diderius6⇗ @kukonosau

Only the acpi.sys here in the forum I have.
Most newer compis are unstable under XP 64 SP2 but absolut stable for XP SP3.
There are no graphics driver for XP for the 1050 and above card
Dietmar
#3907kukonosauOk. But where is last version ACPI for XP 64-bit? Under Vega 8 graphics also absent drivers? This is integrated cards into processors Ryzen 3 2200G.
#3908infuscomus⇗ @YuriyCN

check if USBD.SYS is in your C:\Windows\System32\driver folder

if not copy it across.
#3909infuscomus⇗ @kukonosau

no driver for 2200G Vega 8 graphics for XP

are you able to install another separate graphics card?
#3910kukonosauOnly GT 710((( 1050 Ti and Vega 8 cannot.
#3911YuriyCN
Zitat von ⇗ diderius6 im Beitrag ¶ #3904
@YuriyCN

Set Port 60/64 Emulation --- > Disabled
all other USB to enabled

Dietmar




I tried your variant.

Moreover, I tried all 16 variants "Enabled / Disabled" for 4 settings.
AMDXHCI_XP_FINAL.rar driver does not work.
Anyway, error code 10.
#3912greybeard
Zitat von ⇗ diderius6 im Beitrag ¶ #3906
@kukonosau

Only the acpi.sys here in the forum I have.
Most newer compis are unstable under XP 64 SP2 but absolut stable for XP SP3.
There are no graphics driver for XP for the 1050 and above card
Dietmar




⇗ @diderius6

Whoa! Does that mean that XP64 is unstable for Ryzen2? I'm running a Ryzen 5 2600 on an x370 box and really need XP64 SP2 to work. My plan was to get XP32 to work, just to make sure I understood the process, then switch over to XP64.

Is this a bad plan?
#3913YuriyCN
Zitat von ⇗ infuscomus im Beitrag ¶ #3908
@YuriyCN
check if USBD.SYS is in your C:\Windows\System32\driver folder

if not copy it across.


\driver - no find this folder
\drivers - !!!

After installing the driver, usbd.sys appears in C:\Windows\System32\drivers folder.
See screenshot.
My usbd.sys uploaded here.



YuriyCN has attached files to this post
#3914kukonosauFrom post #958 files USBXPSP1.rar copy into system32, and after AMD USB 3.1 drivers v1.0.5.3 WHQL.rar install drivers with device manager.
#3915infuscomus⇗ @YuriyCN

I noticed that some files like usbport.sys and usbstor.sys are missing from your C:\Windows\System32\Drivers folder

I have attached a zip of them for you - extract into C:\Windows\System32\Drivers



infuscomus has attached files to this post

 

Page 262

#3916infuscomus⇗ @greybeard

XP64 is a real pain in the butt, if you absolutely need to use 64-bit software it's best to use windows 7, much more stable.

XP32 is stable on Ryzen with generic AHCI driver patched ACPI driver - I've gotten it working on my ASRock AB350 Gaming K4 with a Ryzen 2700X.
#3917greybeard⇗ @infuscomus

Ok, thanx for that. I was afraid that was what he meant. Damn! Well, I'm gonna give it my undivided attention this weekend and determine a path forward. Sometimes I just hate computers ...

On another note, do you have any idea how I can get USB drivers to work in Windows Server 2008? I can get that to install cleanly, right out of the box, but without USB (mouse) support.
#3918infuscomus⇗ @greybeard

for AMD Ryzen you can try fernandos driver
32/64bit AMD USB 3.1 Controller and Hub Drivers v1.0.5.3 WHQL

thread:
⇗ USB 3.0/3.1 Drivers (original and modded)

direct link:
⇗ https://www.win-unattended.de/Benutzer/F....5.3%20WHQL.rar
#3919greybeard⇗ @infuscomus

Ok, will do! Thx.
#3920YuriyCN
Zitat von ⇗ infuscomus im Beitrag ¶ #3915
@YuriyCN

I noticed that some files like usbport.sys and usbstor.sys are missing from your C:\Windows\System32\Drivers folder
I have attached a zip of them for you - extract into C:\Windows\System32\Drivers


I unpacked these files into C:\Windows\System32\Drivers folder.
But still, the driver does not work. Error code 10.
What else do I need to do?


kukonosau
Zitat
From post #958 files USBXPSP1.rar copy into system32, and after AMD USB 3.1 drivers v1.0.5.3 WHQL.rar install drivers with device manager.



AMD USB 3.1 drivers v1.0.5.3 - This driver not installed through the device manager.
The driver does not contain my hardware ID. It contains AMD codes only.
Are you sure that AMD driver can work on Intel chipset?

My motherboard - Gigabyte GA-H110M-DS2 with Intel H110M chipset
⇗ https://www.gigabyte.com/Motherboard/GA-H110M-DS2-rev-10#ov
My hardware ID = VEN_8086&DEV_A12F

#3921infuscomus⇗ @YuriyCN

now that you have those files placed in the drivers folder try reinstalling the USB 3.0 driver in device manager
#3922YuriyCN
Zitat von ⇗ infuscomus im Beitrag ¶ #3921
@YuriyCN

now that you have those files placed in the drivers folder try reinstalling the USB 3.0 driver in device manager


I did so. Does not work.

Are you sure that AMD driver can work on Intel chipset?
These are different manufacturers.
#3923infuscomus⇗ @YuriyCN

you should use the modded AMD driver made by daniel_k, this has been confirmed to work for intel USB 3.0

if your using ACPI you should use the modded ACPI driver too.
#3924IntiMD
Zitat von ⇗ greybeard im Beitrag ¶ #3917
On another note, do you have any idea how I can get USB drivers to work in Windows Server 2008? I can get that to install cleanly, right out of the box, but without USB (mouse) support.


Give these a try, also from daniel_k: ⇗ https://msfn.org/board/topic/180769-inte...s-vista-x86x64/
#3925YuriyCN
Zitat von ⇗ infuscomus im Beitrag ¶ #3923
@YuriyCN

you should use the modded AMD driver made by daniel_k, this has been confirmed to work for intel USB 3.0
if your using ACPI you should use the modded ACPI driver too.


For intel USB 3.0 to work, I additionally have to install modded ACPI driver?
Without modification of ACPI the USB 3.0 driver will not work?
Tell me, what else should I do?
#3926gordo999
Zitat von ⇗ greybeard im Beitrag ¶ #3902
But I don't have any USB (mouse) support and have a bunch of yellow warnings in Device Manager
⇗ @greybeard ...that was anticipated, it's why I suggested having a  PS/2 mouse/kbd standing by. If you're desperate for USB functionality, buy a peripheral USB card that has XP drivers available. I bought one with a VIA chipset and found XP drivers on a Czech site. Or try the USB driver from this site. It has not worked on my Asus B360M but I have not tested the most recent version of the driver.

The unofficial SP4 upgrade took care of a lot of the yellow question marks in DM but some of them are not important unless you really need XP running in pristine condition. I only want to use XP for specific applications. I think W7 is the best all-round Windows OS available.

XP is still a good OS but it was a hybrid between 16 bit and 32 bit apps and I found it could freeze or BSOD often with apps not written correctly. It was meant to be backward compatible with W98 and W95. When I first got my 300-series mobo I was told to forget running W7 on it. Much to my surprise, once I got the PS/2 mouse/kbd running, W7 went straight to the desktop on stock drivers on an existing installation on a SATA drive. I was even able to get stable 1920 x 1080 resolution on a super VGA driver from the stock installation. Since then, I have loaded the free W10 OS but I prefer the W7 installation. I had it in mind that XP would be a lot of trouble to get going on the 300-series but it has surprised me how stable it is once the correct drivers are loaded. In that respect, it's a good OS, so why abandon it?

I'll use XP, depending on what I am doing. Some games run only on XP and I have my full Creative XFi card functional on the current install on the 300-series board as well as my NVidia GT 370 video card.
#3927gordo999
Zitat von ⇗ YuriyCN im Beitrag ¶ #3925
For intel USB 3.0 to work, I additionally have to install modded ACPI driver?
Without modification of ACPI the USB 3.0 driver will not work?
⇗ @YuriyCN ...without ACPI you cannot get XP to run never mind the USB drivers. Read through the entire thread from the beginning to see what is involved. You don't have to read every post but pick out the parts you need. In fact, research ACPI to see what it is and why it is required.
#3928YuriyCN
Zitat von ⇗ gordo999 im Beitrag ¶ #3927
without ACPI you cannot get XP to run never mind the USB drivers.


I had BSOD through ACPI, when I had a fall loading Windows XP on the new F20, F21, F22 version UEFI (BIOS). After I downgraded UEFI (BIOS) to version F3, I have no ACPI problems. My Windows XP is loaded without ACPI patches.

Tell me which file you need to modify for ACPI on Windows XP SP3. I do not read English well, I use Google translator.
#3929greybeard⇗ @gordo999

Thanx for the help. But I really want to use XP64 for what I'm trying to do.

So with that in mind, I went back to my Windows Server 2008 alternative. It took me all day, but I finally got all the drivers sorted out, and was able to install my backup application. So with the platform issue resolved, it's just about installing applications, validating stability & performance, and configuring things to my liking. It's gonna be a fun 2 weeks.

You guys have been a tremendous help, and I really appreciate it. Nice to find a board with real talent that's willing to help newbies like me. Kinds reminds me of the good old days (80's and 90's) when the industry was young and we were all trying to figure it out. Since I'm back in "technology mode" through the end of the year, I'm willing to help out if I can. My days as a programmer and bit twiddler are over but I'm more than willing to test things for you. Just let me know.

Again, thanx a bunch.
#3930diderius6⇗ @YuriyCN

May be, that during downgrade Bios something went wrong.
It is not easy to do this, as they told on the side from Gigabyte.
So, flash newest Bios for your board, add modified acpi.sys
and USB3 will work
Dietmar

 

Page 263

#3931YuriyCN
Zitat von ⇗ diderius6 im Beitrag ¶ #3930
@YuriyCN

May be, that during downgrade Bios something went wrong.
It is not easy to do this, as they told on the side from Gigabyte.
So, flash newest Bios for your board, add modified acpi.sys
and USB3 will work
Dietmar


The BIOS (UEFI) version is downgraded via FPT (Flash Programming Tool).
With FPT you can replace any version BIOS with any version BIOS.

Please, give a URL to download modified acpi.sys for Windows XP SP3
and my motherboard Gigabyte GA-H110M-DS2.
#3932diderius6⇗ @YuriyCN

This is best acpi.sys until now for XP SP3 based on 5048 vers.

Dietmar



diderius6 has attached files to this post
#3933XPWELL64I hate acpi.sys. I'll use ⇗ @Mov AX, 0xDEAD's DSDT patcher at boot time.
#3934infuscomus⇗ @XPWELL64

why do you hate acpi.sys?
#3935YuriyCNFor successful installation of AMD USB 3.0 driver on Intel motherboard it is necessary to replace the modified ACPI.SYS. With the original ACPI.SYS you will have an error code 10.

Windows XP SP3 (32-bit)
Motherboard Gigabyte GA-H110M-DS2 (USB 3.0, DDR4, Socket 1151)
Chipset = Intel H110M (100-series)
HardwareID= VEN_8086&DEV_A12F

Mod acpi.rar- ¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (263)
Driver - AMDXHCI_XP_FINAL.rar ¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (128)

The USB 3.0 port is already working!!!
Thank you all!
#3936gordo999
Zitat von ⇗ YuriyCN im Beitrag ¶ #3935
The USB 3.0 port is already working!!!@Thank you all!
YuriyCN ...did you bother to read the title of the thread...'Windows XP32-bit and Server 2003 32-bit on Modern Hardware'? Your chipset came out in early 2017 and it is Skylake compatible. That is NOT what is meant by modern hardware. We know USB works on the Skylake series (200-series...yours is 100-series) in W7 and Intel was likely supplying XP drivers in 2017.

When I first saw your post you were asking us to do everything for you. I was going to ignore you but since Diderius tried to help you I tried to help too. Next time someone shows up asking dumb question, having obviously done no research on their own, I am going to ignore them. In other forums in which I have participated, that has been a requirement, that posters do their own research to show they are trying to learn rather than just leeching the work of others, or asking to have their hand held. It's not my business how things are done at win-raid, so I have nothing to say about it other than I won't be trying to help anyone asking dumb questions, when it's obvious they have taken no time to understand what they are asking.

Besides, I got caught with that one. I should have seen that the chipset was a 100-series and guessed it was at least 3 years old.
#3937bcwinitWow. This gordo999 post is an absolute gem. I felt obligated to register just to comment a bit.

Zitat von ⇗ gordo999 im Beitrag ¶ #3936
YuriyCN ...did you bother to read the title of the thread...'Windows XP32-bit and Server 2003 32-bit on Modern Hardware'? Your chipset came out in early 2017 and it is Skylake compatible. That is NOT what is meant by modern hardware. We know USB works on the Skylake series (200-series...yours is 100-series) in W7 and Intel was likely supplying XP drivers in 2017.

USB 3.0 drivers were NEVER provided by Intel for XP. Intel's Sandy Bridge boards had a NEC/Renesas chip on the board, and that supported XP, but once USB 3.0 support was added to the chipset (starting with Ivy Bridge) there weren't any drivers that could be used for USB 3.0 in XP/2003 for Intel-chipset boards without also using a third-party controller.

Additionally, Intel's driver support in general for XP/2003 ceased after Ivy Bridge. There was an early Haswell graphics driver but that's about it as far as I know. Unofficially the AHCI driver can be used with a modified INF on later hardware. In general though anything after Ivy Bridge is most definitely "modern" (not officially supported) as far as XP and 2003 are concerned.

Zitat von ⇗ gordo999 im Beitrag ¶ #3936
When I first saw your post you were asking us to do everything for you. I was going to ignore you but since Diderius tried to help you I tried to help too. Next time someone shows up asking dumb question, having obviously done no research on their own, I am going to ignore them. In other forums in which I have participated, that has been a requirement, that posters do their own research to show they are trying to learn rather than just leeching the work of others, or asking to have their hand held. It's not my business how things are done at win-raid, so I have nothing to say about it other than I won't be trying to help anyone asking dumb questions, when it's obvious they have taken no time to understand what they are asking.

Despicable, unforgivable behavior. The posts about USB 3.0 support for Intel hardware are scattered throughout this thread. That YuriyCN even found this thread at all shows that some research was done before posting. Some posts in this thread mention the additional need for a modified acpi.sys, but a lot of them don't mention it at all. Assuming that everyone can sift through thousands of posts, especially if their first language isn't English, to maybe piece together some useful info is not reasonable at all.

YuriyCN asked for help, misunderstood the requirements, came to understand the requirements with the help of responses in the thread, and then kindly and politely posted a thank you message with links to what worked for them. You responded to that by insulting YuriyCN for "asking dumb questions" and complaining while spewing completely false info about Intel driver support in XP/2003.

What YuriyCN wanted help with is very important for XP/2003 users with Intel USB 3.0 controllers on ANY generation of hardware. Since that information is buried in this thread it's very, very normal and helpful to have that information resurface closer to the most recent posts. This is especially true since older posts have solutions that may work but aren't the latest/best ones currently available.

Zitat von ⇗ gordo999 im Beitrag ¶ #3936
Besides, I got caught with that one. I should have seen that the chipset was a 100-series and guessed it was at least 3 years old.

Oh, heaven forbid, a chipset from three years ago. Here was me thinking this was a forum friendly to users of both "old" software and "old" hardware and you seem like you'd be happy with a ban on discussions about anything that's what, more than two years old, one year old, three seconds old?

To YuriyCN: Please don't be afraid to ask questions. Please do feel free to try daniel_k's recently released, much newer (but still beta) modified AMD XHCI driver:
¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (256)
#3938YuriyCN
Zitat von ⇗ gordo999 im Beitrag ¶ #3936
Zitat von ⇗ YuriyCN im Beitrag ¶ #3935
The USB 3.0 port is already working!!!@Thank you all!
YuriyCN ...did you bother to read the title of the thread...'Windows XP32-bit and Server 2003 32-bit on Modern Hardware'? Your chipset came out in early 2017 and it is Skylake compatible. That is NOT what is meant by modern hardware. We know USB works on the Skylake series (200-series...yours is 100-series) in W7 and Intel was likely supplying XP drivers in 2017.


You write nonsense. Officially, Intel released drivers for the 75th chipset and older.
For the 80-, 90-, 100-, 200- series, the Intel driver did not exist. I read the forum for a long time.
It was not written that in addition to USB 3.0 you need to install a modified file ACPI.SYS.
#3939hardware-prefetcherFirst: Install the old version of bios mbr win7 BSOD on the lenovo xiaoxin air14 laptop: . Here are the BIOS settings for installing WIN7: .
lenovoxiaoxin air14 laptop hardware:
I download the thread ¶ #3932 acpi attachment and extract it.The thread¶ #3932  acpi.sys overrides the acpi.sys that comes with WIN7,Can WIN7 0x000000A5 BSOD ERRORS be resolved? Notebook is not in my hand now.
Second: If the modified ACPI.sys cannot resolve the WIN7 0x000000A5 error, then what tool do you use to modify ACPI.sys, and where can you modify it to resolve the WIN7 0x000000A5 BSOD? Please give me directions and I will share the results with you if the problem is solved.
WIN7 is still a popular operating system. In the future, you may use WIN7 on hardware around 2019. You will also encounter WIN7 0x000000A5 BSOD. Forum members work together to solve this problem and resist Intel Microsoft. Good luck!
#3940IntiMD⇗ @hardware-prefetcher This ACPI.sys mod is destined only for XP/Server 2003 systems only, not for Windows 7, due to their architectural differences they can't be compatible + it might be a pain in the ass to modify it so as to not trip the driver signature enforcement, especially since it's a system file. I recommend creating a separate thread about your problem in the Windows 7 subsection on this forum for more visibility. I'm sure the experts here will be able to help you with that problem (especially canonkong, due to his hard work with the drivers for new AMD devices).

For that Win7 problem of yours with the Ryzen APUs, you have to keep in mind that not all mobos with the Ryzen APUS will work (hope for your sake that it's not the case, or if it is: it can be circumvented), there may be a BIOS update that might solve the BSOD problem amongst other general issues (doesn't need to be mentioned), though i'm not sure that Lenovo would offer that for your laptop, especially since the only drivers that it offers is for Windows 10. (have checked it in the support page of your laptop in lenovo's chinese website).

If you eventually get this to work, I recommend that you install canonkong's package with the APU video + chipset drivers found ⇗ here (use this link from "Driver package download link that can be integrated into the original WIN7 image")
#3941gordo999
Zitat von ⇗ bcwinit im Beitrag ¶ #3937
Despicable, unforgivable behavior. The posts about USB 3.0 support for Intel hardware are scattered throughout this thread.
⇗ @bcwinit ...you seem rather naive as to how technical blogs operate. You have people on here doing cutting edge work to discover how to run XP on newer 300+ series mobos and other people interacting with them trying to understand what they are doing and how to do it themselves. To a man, or woman, since I joined this forum, people trying to learn are doing their own work and being graciously helped by the experts freely with very helpful information. Then someone shows up, almost demanding that the experts do the work for him.

It doesn't work that way. On many technical sites, you won't even get an answer if you show up asking for drivers and immediate solutions, yet one of the experts, diderius, took the time to try to help this guy. In the end, the person in question seemed to scoff that his system does not need USB drivers hence an acpi driver. That's when I clued in that he was not using a motherboard that had the requirements of this forum. I should have clued in immediately since it was a 100-series mobo but I missed it.   Maybe he did not want to appear demanding but he should have known that one line requests, when translated into another language, can sound that way.

I belonged to a reversing forum where people would enrol simply to ask for cracks and serials, which is illegal. They were politely told to go do research to demonstrate their understanding of the issue. Others had better intentions but they essentially were asking more experienced reversers to do the work for them. Again, they were politely asked to do further research so they could pose a question that demonstrated they were in the process of learning. I answered YuriyCN twice trying to help him understand and I was very polite. However, the questions he was asking were naive and contradictory. He was complaining that the ACPI driver from this forum was crashing his system then complaining that the USB driver was failing with a code 10 error. Again, I tried to explain politely what a code10  error meant.

YuriyCN did not ask for help that would show he is doing his own work. His first post asked for a link to a driver. When I joined this forum, I started at the beginning of the thread to see what problems were involved and I began reading page by page to gain an understanding of the issue. By the time I started to ask questions, I had a good idea of the issues and I was also reading current posts. So, I had a good idea of when the drivers were being posted. It's easy for me here because I speak English but I have done the same on Russian sites where everything was in Russian. I not only had to translate from Russian I had to further translate the unique meanings Russians give to literal translations of English. In that vernacular, a disk drive becomes a 'screw' and a disk platter becomes a 'pancake'.

I know all about communicating on a site where my language is not the primary language and there are techniques you can use via translators like Google to reasonably ensure your interpretation will be received with some clarity. There are guys on this forum whose native language is German and the forum originates in Germany. There is at least one guy whose native language is Italian. They all manage to communicate effectively and not one of them has ever asked, in my experience, for a link to a driver. All of them are doing their own work to an in-depth level. BTW...my native language is Scottish, a language which translators find almost impossible to decipher.  So, lighten up, will you?
Zitat von ⇗ bcwinit im Beitrag ¶ #3937
What YuriyCN wanted help with is very important for XP/2003 users with Intel USB 3.0 controllers on ANY generation of hardware.
Maybe so, but he failed to communicate that. Instead, he started by asking pointed questions as to whether people could help him with specific issues that did not apply to his particular chipset. The owner of the forum, Fernando, has come along several times and redirected posts that were not pertinent to the forum to other forums where there might be answers. Therefore, I presume there is a precedent for such an action.

The issues involved in getting XP working on a 300+ series chipset are much different than getting USB 3 drivers to run on any version of any chipset. I know for a fact that Intel recognized early chipsets such as Skylake because it says so right in their setup.exe file. I traced it and I saw the reference to Skylake. In other words, Intel offered x86 drivers for chipsets that were Skylake and before. I also know from reading their release notes that those drivers would run on XP x86 systems.
Zitat von ⇗ bcwinit im Beitrag ¶ #3937
Oh, heaven forbid, a chipset from three years ago. Here was me thinking this was a forum friendly to users of both "old" software and "old" hardware and you seem like you'd be happy with a ban on discussions about anything that's what, more than two years old, one year old, three seconds old?
The policies on this forum are none of my businiess and it's obvious that Fernando has offered valuable information that applies to old software and hardware. Furthermore, I have no interest in banning anything, nor could I. I have never been able to stand certain individuals who have tried to take over forums, especially in the newgroups.

You have obviously completely misunderstood my post. I got PO'd because I was politely trying to help the guy in question, thinking he had a legitimate problem adapting XP to a 300+ series chipset, when in fact, he was in the wrong forum. Even at that, I would not have gotten upset had he not so frivolously disappeared with the claim that his stock ACPI was working fine as was his USB. What?????  His ACPI and USB suddenly began working on a 300+ series chipset? That's when I looked up his chipset and found it was a 100 series that would operate with drivers up to Skylake.

I wish it was that easy with 300+ series chipsets. I am currently looking at a LAN driver for XP on a 300-series chipset that has 30 exports missing in ndis.sys, the networking interface.
#3942bcwinitAnother gem. Thanks for doubling down on what made your previous post so disappointing. I love reading this forum and your disdain for others is quite a shame. Also thank you for assuming you have any idea who I am or what my background is.

My favorite bit was probably this:

Zitat von ⇗ gordo999 im Beitrag ¶ #3941
I know for a fact that Intel recognized early [USB 3.0] chipsets such as Skylake because it says so right in their setup.exe file. I traced it and I saw the reference to Skylake. In other words, Intel offered x86 drivers for chipsets that were Skylake and before. I also know from reading their release notes that those drivers would run on XP x86 systems

You're still claiming that Intel released USB 3.0 drivers that worked on XP for many chipsets. XP users have been desperate for years for an XHCI driver for Intel chipsets starting with Ivy Bridge and you're acting as if they just weren't bothering to use the ones available. The (brilliantly) modified AMD drivers and ability to use a Vista 5048 ahci.sys are such a big deal because they've made the dream a reality.

I won't waste my life away dissecting your latest post point-by-point just to get yet another junk response, and another, and another. Just be sure to keep posting claims that this is the "wrong forum" for discussion of any issue that isn't your personal 300+ series issue. That will help a lot. Also continue to rudely ignore the first post in this thread in which the OP states acceptable platform options:
Zitat von ⇗ deSSy2724 im Beitrag ¶ #1
It would be the best to build a PC based on the Skylake, Kaby Lake, Coffe Lake etc.
#3943gordo999
Zitat von ⇗ YuriyCN im Beitrag ¶ #3938
@YuriyCN ....You write nonsense. Officially, Intel released drivers for the 75th chipset and older.
For the 80-, 90-, 100-, 200- series, the Intel driver did not exist. I read the forum for a long time.
It was not written that in addition to USB 3.0 you need to install a modified file ACPI.SYS.
This is what I wrote: "We know USB works on the Skylake series (200-series...yours is 100-series) in W7 and Intel was likely supplying XP drivers in 2017".  I said 'likely'. The point I was trying to make is that 200-series chipsets and earlier were supported by Intel on W7 but not the 300+ series chipsets. I have already modded W7 to run in a very stable manner on a 300-series chipset with USB 3 using modded drivers by Canonkong.

Then I turned my attention to XP on the same 300+ series chipset. It was an entirely different situation. W7 on a SATA hard drive ran to the desktop on stock drivers using a PS/2 mouse/keyboard. I had it running in 1920 x 1080 using stock W7 drivers. With XP, the OS would not even start. The integrated XP SP3 installation disk could not see the OS and before it could load its drivers, I encountered an 0XA5 error. I got past it using an F7 at the F6 prompt asking for storage drivers, only to get an 0x7B when windows started. The modded ACPI driver worked fine for me and another one of Fernandos SATA controller drivers got rid of the 0x7B error.

I thought you were having similar problems but the manner in which you posed your questions was very abrupt with no explanation as to the real problem. I have had no problem understanding posts from people who speak German and Italian and I had no problem understanding your most recent post. So, why were you asking so many short questions without offering more information to explain your problem? You asked for a link to a modded ACPI driver then came back and said it did not work. Then you came back later and said your stock ACPI driver was working fine. I know one thing, if you have a stock ACPI driver that works on XP, on a 300+ series chipset, you are way ahead of the rest of us.

Maybe I have presumed too much in thinking that modern hardware means a 300+ series chipset. It does with W7 on a 'modern' chipset. Sometimes it's easy to confuse the requirements of W7 versus XP. There are exports missing in the XP ntoskrnl that won't allow W7 drivers to be substituted without modification but I do know that Intel supported USB 3 in W7 right up till Skylake, which is a 200-series chipset. Based on that information, I still don't understand what question you were asking. Why were you asking for a link to an ACPI driver when your stock ACPI driver was working and how did your USB suddenly start working? You disappeared with no explanation.
#3944gordo999
Zitat von ⇗ bcwinit im Beitrag ¶ #3942
You're still claiming that Intel released USB 3.0 drivers that worked on XP for many chipsets.
⇗ @bcwinit ...and you are still misquoting me. I did not say at any time that Intel released USB 3 drivers for XP, I said they released x86 drivers that would work on XP. You don't seem to understand what XHCI drivers do, or the relationship between ACPI, PCI, XHCI  and the older USB drivers. The XHCI standard is incorporated into some drivers with the older USB 2 driver. If the driver detects a USB 2 device, it uses that chain in the USB stack. If it detects USB 3, it brings in the XHCI driver.

I also admitted in another post that it's easy to confuse the requirements of XP with W7 when working on both systems concurrently. If I thought USB 3 would run on XP I'd have done it long ago and I would not be here wasting my time replying to a lurker who reads the thread and joins to take shots at me. The mistake I made was confusing 'modern chipsets' with only the 300-series mobo and above which is true for W7 but not XP. The W7 OS has USB 3 drivers that will run on certain 200 series chipsets and they were put out by Intel. Furthermore, Asus issues W7 drivers for certain Asus mobos that have chipsets where the manufacturer has its own driver.

I have a USB 3 add-on with a VIA chipset and I am running it in XP using drivers written for XP. So, don't tell me there are no XP drivers for USB 3 devices. There are certainly no USB 3 Windows drivers since Microsoft abandoned USB 3 on XP and W7. There are likely no XP drivers from Intel for modern mobos but that does not mean Intel X86 drivers won't run on certain XP machines. I did not claim those drivers run in USB 3 mode but the XHCI controller was designed to work in conjunction with the USB 2 drivers in the same driver.

As I said, the mistake I made was claiming the 100-series chipset ' using XP' was not part of a modern system. If I had thought there were XP drivers for the 100-series, why was I trying to help the guy with suggestions on ACPI drivers and USB drivers? If I thought there were XP drivers why did I not tell him where to find them? That was not my beef with him, it was simply the way the guy was bugging people to find him a driver then complaining when it did not work, using one liners. At no time did he try to explain his problem or what he was doing to fix it. He simply kept asking people to solve it for him. And please don't bring in language issues. As I said, I have communicated on Russian sites, in Russian, in detail, via Google translator, which is much better today than then. Furthermore, I had to figure out the extensive technical slang Russians use to describe our Western terminology.

Why you are jumping all over the issue is another question. Why have you not joined before and tried to contribute? You have claimed the ACPI driver is the root of the USB problem yet the guy in question now claims to have USB working with his stock ACPI driver. Have you asked him if it is running in USB 3 mode, or have you merely presumed that?
#3945bcwinitYou really are determined to drag this on. This is unfortunate.

Zitat von ⇗ gordo999 im Beitrag ¶ #3944
...and you are still misquoting me. I did not say at any time that Intel released USB 3 drivers for XP, I said they released x86 drivers that would work on XP."


A matter of semantics at best then. You're claiming they released them but didn't say that they released them. The exact quotes just for context:
Zitat von ⇗ gordo999 im Beitrag ¶ #3944
Intel was likely supplying XP drivers in 2017

Zitat von ⇗ gordo999 im Beitrag ¶ #3944
...also know from reading their release notes that those drivers would run on XP x86 systems.


Zitat von ⇗ gordo999 im Beitrag ¶ #3944
You don't seem to understand what XHCI drivers do, or the relationship between ACPI, PCI, XHCI  and the older USB drivers. The XHCI standard is incorporated into some drivers with the older USB 2 driver. If the driver detects a USB 2 device, it uses that chain in the USB stack. If it detects USB 3, it brings in the XHCI driver.

There you go again, assuming what you think I don't know. There's a whole lot in the world that I don't know, including plenty of fine details on this subject, but I'm also not utterly clueless about this subject.

Zitat von ⇗ gordo999 im Beitrag ¶ #3944
I also admitted in another post that it's easy to confuse the requirements of XP with W7 when working on both systems concurrently. If I thought USB 3 would run on XP I'd have done it long ago and I would not be here wasting my time replying to a lurker who reads the thread and joins to take shots at me. The mistake I made was confusing 'modern chipsets' with only the 300-series mobo and above which is true for W7 but not XP. The W7 OS has USB 3 drivers that will run on certain 200 series chipsets and they were put out by Intel. Furthermore, Asus issues W7 drivers for certain Asus mobos that have chipsets where the manufacturer has its own driver.

This is an improvement aside from the use of "lurker" as a derogatory term and the irrelevant info about Asus drivers for non-Intel onboard USB 3.0 controllers on a version of Windows outside the scope of this thread. You acknowledging that you were thinking Windows 7 while talking about XP and that you were at least somewhat detached from the reality of USB 3.0 driver support for XP is very much appreciated.

Zitat von ⇗ gordo999 im Beitrag ¶ #3944
I have a USB 3 add-on with a VIA chipset and I am running it in XP using drivers written for XP. So, don't tell me there are no XP drivers for USB 3 devices.

I explicitly stated that supported third-party controllers aren't a problem:
Zitat von ⇗ bcwinit im Beitrag ¶ #3937
..there weren't any drivers that could be used for USB 3.0 in XP/2003 for Intel-chipset boards without also using a third-party controller


Zitat von ⇗ gordo999 im Beitrag ¶ #3944
As I said, the mistake I made was claiming the 100-series chipset ' using XP' was not part of a modern system. If I had thought there were XP drivers for the 100-series, why was I trying to help the guy with suggestions on ACPI drivers and USB drivers? If I thought there were XP drivers why did I not tell him where to find them? That was not my beef with him, it was simply the way the guy was bugging people to find him a driver then complaining when it did not work, using one liners. At no time did he try to explain his problem or what he was doing to fix it. He simply kept asking people to solve it for him.

YuriyCN was pretty clear to me. The need for a modified acpi.sys was originally not realized. People say the modified AMD driver should work, it didn't, so why didn't it? Because the modified acpi.sys is also needed. Not nearly enough posts mention that both are required. The modified AMD drivers are very frequently mentioned in complete isolation from ACPI. That's fine for anyone who has been following the thread for months. That's far from ideal for others.

Zitat von ⇗ gordo999 im Beitrag ¶ #3944
And please don't bring in language issues. As I said, I have communicated on Russian sites, in Russian, in detail, via Google translator, which is much better today than then. Furthermore, I had to figure out the extensive technical slang Russians use to describe our Western terminology.

Since you brought it up again I'll help with this. You're assuming that your ability to communicate across language barriers via various means must be the same as everyone else. This is unrealistic. Also, as boastful as you are about your abilities in this area, you're still at a loss about some of YuriyCN's messages. Some do require some interpretation to make sense of. For example...

Zitat von ⇗ gordo999 im Beitrag ¶ #3944
You have claimed the ACPI driver is the root of the USB problem yet the guy in question now claims to have USB working with his stock ACPI driver. Have you asked him if it is running in USB 3 mode, or have you merely presumed that?


YuriyCN ("the guy in the question") clearly, after interpretation, stated that the modified acpi.sys had to be used. This is YuriyCN explaining that they weren't having any success before when just using the modified AMD driver:
Zitat von ⇗ YuriyCN im Beitrag ¶ #3935
With the original ACPI.SYS you will have an error code 10


This is where you seem to be getting lost:
Zitat von ⇗ YuriyCN im Beitrag ¶ #3935
For successful installation of AMD USB 3.0 driver on Intel motherboard it is necessary to replace the modified ACPI.SYS

Every bit of context makes it clear that YuriyCN is saying here that it was necessary to replace the original acpi.sys with the modified acpi.sys. Reading the message literally is a dead-end due to a communication mishap. Reading the message in context the meaning is clear. For confirmation, see YuriyCN's next message which includes this:
Zitat von ⇗ YuriyCN im Beitrag ¶ #3938
in addition to USB 3.0 you need to install a modified file ACPI.SYS


Zitat von ⇗ gordo999 im Beitrag ¶ #3944
Why you are jumping all over the issue is another question.

From my perspective it's monumentally good fortune that anyone is dedicating the skill and time necessary to do things like modify drivers for free and for the public. Discouraging the use and appreciation of that work for any reason is not constructive. I felt like this subject was too important to ignore when you insulted YuriyCN after that user succeeded in putting modified drivers to good use.

Zitat von ⇗ gordo999 im Beitrag ¶ #3944
Why have you not joined before and tried to contribute?

A combination of having very little time to spare for more than perusing discussions and abysmally poor health that prevents me from regularly doing my own dev work and supporting users of that work. Engaging in support-related activities that are in any way related to the work of others isn't something I have the luxury of doing aside from exceptional situations like this.

 

Page 264

#3946FernandoIs this a battle or just a discussion?
Please calm down!
#3947daniel_kHave been really busy.

Just a quick update: ¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (128)

Zitat
Updated the so called "FINAL DRIVER" with V2 (Dec 19, 2019):
- revised device check patch
- applied small bug fix to 32-bit (x86), as seen on newer 153 and later releases. 64-bit is not affected.



Regarding the latest version (276), I've finally managed to fix it, was driving me nuts. It's under final testing and should be released before Christmas.

PS: Please don't send me PM's requesting help. If needed, I contact you. Thanks!

#3948infuscomus⇗ @daniel_k

is the latest version (276) when you release it only for use with intel USB 3.0?
#3949kukonosau⇗ @diderius6
Where is USB 3.0 drivers for 15E0, 15E1 for Windows XP x86? I have Ryzen 3 2200G platform. Where is chipset drivers? What is motherboard resources in device manager in system devices? Where is AMD PSP drivers? Also I have unknown device ACPI. How to send screenshots?



kukonosau has attached images to this post  ⇗ Photo.PNG
#3950YuriyCNI have a trouble with an modified driver.
1. I replaced the file c:\WINDOWS\system32\drivers\acpi.sys with the file that was modified by you.
2. Then I installed the modified USB 3.0 driver through the Device Manager.

At first, after the OS is booted up, USB ports work fine.
Read speeds on USB 2.0 ports up to 40 MB/s, on USB 3.0 ports up to 110 MB/s.
Everything works fine and suits me.

But not for long! After a time (from 3 to 15 minutes), the ports stop working. It is very likely that the voltage was decreased on the ports, because when user inserts a USB flash drive, its LED does not light up. If to restart the computer at the moment, then it hangs toughly when shutting down - even the Reset button on the PC case does not work! Only a complete disconnection from the power supply helps.

My system is Windows XP Pro SP3.
Motherboard - Gigabyte GA-H110M-DS2 (Socket 1151, DDR4)
⇗ https://www.gigabyte.com/Motherboard/GA-H110M-DS2-rev-10#ov
Mouse and Keyboard - PS/2

Is it a problem with modified ACPI or modified USB 3.0?
Please help me.
#3951diderius6⇗ @YuriyCN

May be, that your USB3 device needs to much power. In this situation, the motherboard stops this USB device after some time.
This you can test with an USB3 device with ultra low power consumption
Dietmar
#3952YuriyCN
Zitat von ⇗ diderius6 im Beitrag ¶ #3951
@YuriyCN

May be, that your USB3 device needs to much power. In this situation, the motherboard stops this USB device after some time.
This you can test with an USB3 device with ultra low power consumption
Dietmar


Not. This is a simple flash drive.


The voltage is removed from all USB ports at the same time.
After 3-15 minutes, the USB ports stop working, even if nothing was connected to them.

Can you upload for me all versions of your modifications ACPI and USB drivers in one archive?
I want to try working in different combinations.
#3953YuriyCNI have done several experiments and now sending an updated information. A trouble with the stops of USB ports occurs more often if to boot the PC with a USB flash drive already inserted into the port. When one inserts/removes the USB flash drive in an already loaded system - stops happens 10 times less often.

To assurely receive a stops, user must boot a PC with a USB flash drive already inserted into the port. After OS is fully booted up (untill the desktop), you need to remove the USB flash drive and insert it into the neighboring port. In this case, the USB flash drive will be now incorrectly defined in the Device Manager as "Unknown device" with the ID code USB\VID_0000&PID_0000. At the same time, in 100% of cases I get a complete hang of USB interface. Altogether all ports freeze, that is, none of the 6 available USB ports works. When the USB port hangs, the voltage on it does not disappear. But the LED on the flash drive does not light up, since the flash drive is not defined as a device, although the voltage between the "1" and "4" pins of the USB connector - 5 Volt is present (measured with a voltmeter).

Checks were made on two different USB flash drives, connecting them to any of the 6 connectors. The situation is reproducible. My equipment is 100% operational. The problem is either in the USB driver you modified or in the ACPI.SYS file you modified. I ask for help.
#3954diderius6⇗ @YuriyCN

This behavior "Unknown device" happens on Intel motherboards only with the very first tries of making an USB3 driver for XP.
It does not happen with newer USB3 driver for XP SP3
Dietmar
#3955YuriyCN
Zitat
This behavior "Unknown device" happens on Intel motherboards only with the very first tries of making an USB3 driver for XP.
It does not happen with newer USB3 driver for XP SP3



An "Unknown device" is displayed not for the USB port (Controller and Hub), but for a Flash Drive (or other device) connected to the port. A trouble with the freeze of USB ports occurs more often if to boot the PC with a USB flash drive already inserted into the port.

1) Please, look again at my previous message - it describes how to get this trouble.
2) Can you upload for me all versions of your modifications ACPI and USB drivers in one archive? I want to try working in different combinations this drivers.

#3956gordo999
Zitat von ⇗ YuriyCN im Beitrag ¶ #3950
....But not for long! After a time (from 3 to 15 minutes), the ports stop working...
⇗ @YuriyCN ...just a thought. In Device Manager, under the USB section, find the USB 3 hub driver and see if it has a Power Management tab under 'Properties'. If it does, see if it is set to allow the OS to turn off the device for power management. You might also check to see if the individual hub to which the device is connected has a power management feature. You might also look in your BIOS settings to see if the USB ports have power management features that can be turned on or off.

While you are checking the hub driver in Device Manager, under Properties, look under the Details tab. Scroll down to 'Power data' and see what power state is indicated for the device right after you boot then after it loses power. My current power state is set to D0, which means full power. If it is set to any other Dx state, where x = 1,2,3...it means the device has been set to a low power state.
#3957YuriyCN
Zitat von ⇗ gordo999 im Beitrag ¶ #3956
Zitat von ⇗ YuriyCN im Beitrag ¶ #3950
....But not for long! After a time (from 3 to 15 minutes), the ports stop working...
@YuriyCN ...just a thought. In Device Manager, under the USB section, find the USB 3 hub driver and see if it has a Power Management tab under 'Properties'. If it does, see if it is set to allow the OS to turn off the device for power management. You might also check to see if the individual hub to which the device is connected has a power management feature. You might also look in your BIOS settings to see if the USB ports have power management features that can be turned on or off.


Unfortunately this is not possible! In the modified driver, the "Power Management" tab is missing in the properties of "USB 3.0 Hub". I wrote earlier that the voltage in the port is not absent - the voltmeter shows 5 Volts. The LED on the USB flash drive does not light up not because of the absence of 5 Volts, but because of the freezing of the USB port.

diderius6

As a result, the main problem of the modified driver is the freezing of USB ports when Windows XP boots with a device already connected to the USB. Perhaps this is not an issue of the modified USB driver, but a complex problem (for the ACPI + USB bundle). Let me remind you that without installing the upgraded ACPI.SYS, I could not install the USB driver (an error occurred - code 10).

Please send me in one archive all the versions of USB and ACPI drivers that you have available. I want to experiment with installing these drivers in different combinations of versions.
#3958diderius6⇗ @YuriyCN

Look through this forum

Dietmar
#3959daniel_k⇗ @YuriyCN, try to disable XHCI Hand-off in BIOS. It's the only suggestion I can give you.
You are the first person to report this strange behavior.
#3960daniel_k
Zitat von ⇗ infuscomus im Beitrag ¶ #3948
@daniel_k

is the latest version (276) when you release it only for use with intel USB 3.0?

Don't have any modern AMD systems system, so can't test.
Anyway, the drivers are "unlocked", so one can try them with any XHCI controller, by editing the device ID in the INF file.

 

Page 265

#3961daniel_k⇗ @canonkong, can you please sign this simple INF file? Needs a valid certificate for it to be (hopefully) accepted during Windows installation.

All it does is to disable NVME devices by installing a NULL driver. I want this to prevent Windows 8+ from touching my NVME drive and installing its own boot manager etc.

Thanks!
#3962daniel_kAMDXHC 1.1.0.0276 Final Driver, dated Dec 4, 2018

- Fixed XP/Server 2003 compatibility by re-adding PoStartNextPowerIrp calls, luckily the code didn't really change after build 145, could find all proper locations for every call. Interesting info:
⇗ PoStartNextPowerIrp - ⇗ Bug Check 0x9F: DRIVER_POWER_STATE_FAILURE
- Removed IoSetDevicePropertyData dependency, only found in Vista and later, doesn't affect functionality.
- Removed BCrypt functions dependencies (Ksecdd.sys), only found in Vista and later and re-added code from build 145.
- Combined hub and controller INFs into a single amdxhc.inf for easier installation and integration.
#3963canonkong⇗ @daniel_k
Try it.
SHA1 sign need run the reg file first.



canonkong has attached files to this post
#3964bcwinit
Zitat von ⇗ diderius6 im Beitrag ¶ #3958
@YuriyCN

Look through this forum

Dietmar

It's worth mentioning that daniel_k removed the links to the beta/experimental builds of the modified USB 3.0 drivers once the final versions were released. Looking through the forum will not allow anyone to find those alternate versions. I don't know how many there were in total, but there were at least two (AMDXHC_276_NO_USBD.rar and 276BETA.rar) for 1.1.0.0276 which was just updated to final a short while ago as AMDXHCI_XP_276_FINAL.rar.

daniel_k: Please let us know if it's acceptable for others to upload those beta versions as attachments in this thread and if so how you would like them described to prevent confusion with the final builds.
#3965daniel_k⇗ @bcwinit, the beta versions are really buggy so, as you've already said, to prevent confusion, don't upload them, please.
#3966bcwinit
Zitat von ⇗ daniel_k im Beitrag ¶ #3965
the beta versions are really buggy so, as you've already said, to prevent confusion, don't upload them, please.

Understood. Thank you very much for the quick response.
#3967Andalu⇗ @daniel_k  ⇗ @YuriyCN
I can confirm that issue. Booting with an USB3 disk inserted, the USB device is not recognized and displayed as 'unknown' in the device manager. Sometimes XP also hangs during boot; shutdown and restart don't work. I tried both XHCI_XP_FINAL_V2 and AMDXHCI_XP_276_FINAL with same results.

The issue disappears replacing 'amdxhc.sys' with the version included in the "¶ amdxhc_pae_fix.rar".
#3968YuriyCN
Zitat von ⇗ Andalu im Beitrag ¶ #3967
@daniel_k  @YuriyCN
I can confirm that issue. Booting with an USB3 disk inserted, the USB device is not recognized and displayed as 'unknown' in the device manager. Sometimes XP also hangs during boot; shutdown and restart don't work. I tried both XHCI_XP_FINAL_V2 and AMDXHCI_XP_276_FINAL with same results.


I get the same problem. I wrote the same thing.
The new driver (AMDXHC 1.1.0.0276 Final Driver, dated Dec 4, 2018) does not resolve the problem.
#3969daniel_k
Zitat von ⇗ Andalu im Beitrag ¶ #3967
Booting with an USB3 disk inserted, the USB device is not recognized and displayed as 'unknown' in the device manager. Sometimes XP also hangs during boot; shutdown and restart don't work. I tried both XHCI_XP_FINAL_V2 and AMDXHCI_XP_276_FINAL with same results.

Cold boot (power on) or warm boot (restart)?

Don't have the issue here, but PAE is not enabled.

If my system would be affected by that issue, I wouldn't be able to install XP from an USB drive.
#3970daniel_k⇗ @canonkong, thanks!

Didn't see you edited your message. Will try it.

Any chance of signing it with SHA256? Forgot to ask that.

Windows 8 accepts the SHA1 sign, Windows 8.1 and Windows 10 don't accept and just ignores the driver.

Fixed some mistakes in the INF, please sign both files.
#3971YuriyCN
Zitat von ⇗ daniel_k im Beitrag ¶ #3969

If my system would be affected by that issue.


Check several times...
Most often freezes when a USB Wi-Fi adapter is connected, but with a USB flash drive - is not always.
#3972daniel_k⇗ @YuriyCN and ⇗ @Andalu

My BIOS is patched with a XP friendly ACPI table.

With original ACPI.SYS 5512 SP3, no issues.

With beta modified ACPI.SYS 5048, no issues with USB drives, wi-fi dongle, keyboard and mouse. Cold boot (power on) and restart, no disconnections after 15 idle.
However, WiFi doesn't automatically connect with this ACPI.SYS, which is strange.
#3973YuriyCNMy BIOS is not patched (original version F3).
With original ACPI.SYS 5512 SP3 - driver is not installed (error code 10).

With any other (modified ACPI.SYS) - driver is installed, but there are problems with booting Windows with USB3 device inserted and also when rebooting and turning off the PC.

The best, most stable driver with file "amdxhc_pae_fix.rar". There are no problems with this file when booting Windows. There were problems when rebooting or turning off the PC - but this rarely happens, maybe 1 time out of 10.
#3974infuscomus⇗ @YuriyCN

So the pae_fix version solves the issue?

Do you have the PAE patch applied? try removing it if you do.
#3975YuriyCN
Zitat von ⇗ infuscomus im Beitrag ¶ #3974
@YuriyCN

So the pae_fix version solves the issue?


Using file amdxhc_pae_fix.rar partially solves the issue, but not completely. At the moment, this is the best driver option.

I do not understand, why with the original ACPI.SYS I can not install the driver. The driver is normally installed only with the modified ACPI.SYS. Even if, after installing the driver, I return the original ACPI.SYS file back - then after booting Windows again I get a non-working USB.



Replacing the original file with a modified one removes this error. In this forum I found 3 different versions of the modified ACPI.SYS. Which is better to use?

 

Page 266

#3976canonkong⇗ @daniel_k
Try it.
SHA1 also can work on win8.1/10, but you need run the reg file first.



canonkong has attached files to this post
#3977YuriyCNI use PAE patch, because in Windows XP SP3 x86 installed 8GB RAM.
The driver with file amdxhc_pae_fix.rar - is much more stable!!!

But when the USB port freezes, then see the screenshot.
#3978Andalu⇗ @daniel_k

I did some test with different configurations and the behavior can change from one to another.

I installed the same XP iso image from the same pendrive with the following driver/patch/files slipstreamed by nLite:
- Acpi.sys 5048 (SHA-1: 8EF48518B17DAAC4A90632A811FBFDC8183C325B);
- Universal 32bit Intel RST AHCI+RAID driver v11.2.0.1006 mod+signed by Fernando;
- NVME OFA driver 1.3;
- WinXPPae2 patch.

No USB3 driver added. In bios the devices not needed are disabled. Mouse connected to the ps/2 port during the setup. I chose the 'ACPI multiprocessor PC' option. The installation ends without errors for all my configurations.

For all usb3 driver versions, the 'AMD USB 3.0 Root HUB' and the 'Intel Extensible USB3.1 Host Controller' are correctly installed.
All the usb3/usb2 devices connected are recognized before a shutdown/restart. At first warm boot (restart), most of the time, even with the only mouse connected to the USB2 (or usb3 port), my pc hangs with a blank screen when the XP logo appears. Same behavior on a cold boot (power on) and so for the following shutdown/restart.

Other times, at first warm boot (restart) after installing the driver, even with the only mouse connected to the USB2 port, XP hangs as before but on the next cold boot (power on) XP boots normally also with the usb2 mouse connected but it is not recognized and considered as 'unknow device' in the device manager. The same for an external drive connected to the usb3 port.

In one case, I got the strangest behavior:
- on the first warm boot (restart) after installing the driver, XP hangs with the usb2 mouse as above;
- on the next cold boot (shutdown) XP boots correctly but the usb2 mouse doesn't work even it is powered (the led is always on); in the device manager the usb2 mouse is not listed;
- on the next warm boot (restart) XP boots correctly but the usb2 mouse doesn't work. It is listed in the device manager as unknow device but not powered. This time XP hangs on shutdown.

At moment, to have XP with USB3 and PAE features fully functional, I need to use a ps/2 mouse only and remember to disconnect any usb device before restarting or 'shutting down and turning on' the pc. For the boards without a ps/2 port I can use the amdxhci.sys from the amdxhc_pae_fix.rar packet. No issues with it in all my configurations. The restart and shutdown also worked correctly (the restart never worked only for the asrock B250-Pro4 that seems 'insensitive' to each driver tried).
#3979infuscomustry removing the PAE patch? maybe that is causing problems
#3980daniel_k⇗ @canonkong, thank you very much!

Now it worked with Windows 8.1 and Windows 10 1909! When I load this "null" driver, NVME drive disappears!

The issue was the driver date, Windows seems to ignore version number.
#3981daniel_k
Zitat von ⇗ infuscomus im Beitrag ¶ #3979
try removing the PAE patch? maybe that is causing problems

This!

⇗ @YuriyCN and ⇗ @Andalu

If you had followed my discussion with ⇗ @Mov AX, 0xDEAD, you would be aware of all issues the AMDXHC driver causes when PAE is enabled.

The PAE patch works perfectly, but you must have drivers properly written to work with it, which isn't the case of the AMDXHC driver (even with PAE fix, there are many issues).

The AMDXHC driver works fine on 64-bit (x64) and 32-bit (x86) with PAE disabled.

If you really need PAE enabled, get a card with VIA VL805 controller (really cheap) or ASMedia ASM1142, ASM2142 or ASM3142 (more expensive).

Cards with TI and Fresco Logics also should work fine with PAE, but are not that easy to find.
#3982daniel_kDid some tests with the available Intel storage drivers to check which ones properly support Standby Immediate command, to avoid drive wear and data corruption when shutting down the computer. See this datasheet from Intel:
⇗ https://www.intel.com/content/dam/www/pu...ology-brief.pdf

This info is from Samsung:

Zitat
A count of the number of sudden power off cases. If there is a sudden power off, the firmware must recover all of the mapping and user data during the next power on. This is a count of the number of times this has happened.


To check if the unsafe shutdown happens with a particular driver, see if the SMART attribute with of these names increase, based on the controller's manufacturer:
- Samsung: "POR Recovery Count"
- Phison: "Unsafe Shutdown Count"
- Sandforce: "Unexpected Power Loss Count"

Only RSTe drivers 3.8.1.1006 and later, including my modded 4.7.0.1098 support the Standby Immediate command.
Storahci (from Skullteria) and iaStor (last for XP) don't support it.

#3983YuriyCN
Zitat von ⇗ daniel_k im Beitrag ¶ #3981
If you had followed my discussion with @Mov AX, 0xDEAD, you would be aware of all issues the AMDXHC driver causes when PAE is enabled.
The PAE patch works perfectly, but you must have drivers properly written to work with it, which isn't the case of the AMDXHC driver (even with PAE fix, there are many issues).
The AMDXHC driver works fine on 64-bit (x64) and 32-bit (x86) with PAE disabled.



I delete this post.
#3984Andalu
Zitat von ⇗ daniel_k im Beitrag ¶ #3981
The PAE patch works perfectly, but you must have drivers properly written to work with it, which isn't the case of the AMDXHC driver (even with PAE fix, there are many issues).

The AMDXHC driver works fine on 64-bit (x64) and 32-bit (x86) with PAE disabled.

Thanks for the clarification. This information will be also useful for users who want to try to have both USB3 and PAE enabled at the same time.
#3985Andalu
Zitat von ⇗ infuscomus im Beitrag ¶ #3979
try removing the PAE patch? maybe that is causing problems

I already knew it was the patch, but my goal was to have both allowed without issues. Now I know this will not be possible and I will have to accept a compromise.
#3986daniel_kJust released ⇗ Intel RSTe AHCI/RAID driver v4.7.0.1117 for Windows XP/Server 2003
#3987YuriyCN
Zitat von ⇗ daniel_k im Beitrag ¶ #3986
Just released ⇗ Intel RSTe AHCI/RAID driver v4.7.0.1117 for Windows XP/Server 2003

Does this driver support commands for SSD drive on Windows XP, including the TRIM command?
#3988daniel_k
Zitat von ⇗ YuriyCN im Beitrag ¶ #3987
Does this driver support commands for SSD drive on Windows XP, including the TRIM command?

The driver does support TRIM, but getting it to work on XP is another story.
To be honest, as XP doesn't send TRIM commands itself, which would be optimal, I personally wouldn't care about it.
I find that running an utility just to trigger TRIM an annoyance.
#3989YuriyCN
Zitat
The driver does support TRIM, but getting it to work on XP is another story.
To be honest, as XP doesn't send TRIM commands itself, which would be optimal, I personally wouldn't care about it.
I find that running an utility just to trigger TRIM an annoyance.


Without the use of TRIM, the SSD disk will wear out more or performance will only decrease? I did not find on this forum a discussion on the use of SSD disks on Windows XP. I think this is important.

#3990veselcraftWhat about ASRock B450 USB xHCI drivers? I tried to use ⇗ this trick, but it doesn't work, Windows XP Setup from USB shows BSOD with error code 0x0000007B. Hardware ID is 1022-43D5

 

Page 267

#3991YuriyCN
Zitat von ⇗ daniel_k im Beitrag ¶ #3981
The PAE patch works perfectly, but you must have drivers properly written to work with it, which isn't the case of the AMDXHC driver (even with PAE fix, there are many issues).

The AMDXHC driver works fine on 64-bit (x64) and 32-bit (x86) with PAE disabled.


Dear daniel_k, I'm sorry, I misled you with the latest reviews about the USB driver. Over the past 2 days, I reinstalled Windows several times and did a lot of experimentation. It turned out that the driver "amdxhc_pae_fix" stably works only in the "Windows Server 2003" and "Windows XP + PAE patch" systems. But in Windows XP without the PAE patch, this driver causes the PC to freeze at boot. Hangup does not always happen, but about once per 5 times. Moreover, freezing can occur even when nothing is connected to the port.

Conclusion:
Unfortunately, the universal driver failed. In Windows XP with and without the PAE, we need to use 2 different drivers. I ask you to try to combine functionally two drivers into one. If the result wiil be obtained, I am ready to test.
#3992YuriyCNThe main developments of this topic should be placed in the 1st post. Periodically, the 1st post to update. Its hard for users to find information in over than 260 pages.
#3993XPWELL64Toshiba 1135 Amber Lights[/URL]⇗ @diderius6 ⇗ @Lost_N_BIOS ⇗ @infuscomus ⇗ @Mov AX, 0xDEAD ⇗ @IntiMD
Hello Look at my broken Windows XP laptop. How do I fix it?

⇗ Toshiba Satellite 1135 Amber lights
#3994diderius6⇗ @XPWELL64

I think the easiest way is to desolder the Bios chip,
program it new with Epromer with Bios file from other notebook
of the same type
Dietmar

PS: I have done this 3 times and always with success.
#3995gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #3994
I think the easiest way is to desolder the Bios chip
⇗ @diderius6 ...just curious, are you using  a hot air device for unsoldering/resoldering or a normal soldering iron? How many pins on the chip?
#3996diderius6⇗ @gordo999

Until now I soldered only Bios chips with 8 legs. Years ago I soldered other chips with much more pins.
One time I used hot air for desoldering Bios chip, be carefull with your fingers!
It depends, on how the Bios chip can be reached. When there are other components very near,
I use normal soldering iron.
For to put back the chip into the motherboard I always use only normal solder iron
Dietmar

PS: This is not an easy task for everybody. You need a calm hand, good eye and experience in soldering.
I also thought, how I can help ⇗ @XPWELL64 . He could send to me his whole Asus laptop, but I have no business in soldering^^,
so it would be without any garantie.
#3997gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #3996
PS: This is not an easy task for everybody.
⇗ @diderius6 ...I know, I have been doing it for decades but not much experience with high density SMD devices. I have a mobo apart right now trying to replace mosfets but I need a LAN chip I cannot find anywhere. I am suspicious about all the sites in China claiming to have them.

I bought a stereoscope from Amscope so I could see what I am doing. Also, bought a hot air station and a power supply on which I can limit the current. Very important for checking short-circuit conditions. I asked how many pins you have because it's nearly impossible to use a soldering iron when the pin count gets really high, like 16 pins per side.
#3998XPWELL64⇗ @diderius6
The error not comes from bricked bios. Can you find me a solution? Can you look at the photo to find the cable issue? I think it is from cable issue. If there aren't any cable issues, find the missing solder points.
#3999diderius6⇗ @XPWELL64

I do not understand your question.
What happened with those cables?
The only error I have had with notebook was with corrupt ram. May be give this a try.
Do you get a picture at boottime on screen?
Because I do not know this Toshiba 1135
try to get a service manual or picture of cables via Google
Dietmar
#4000diderius6⇗ @XPWELL64

I take a short look via Google for Toshiba 1135.
This LED changed from green => amber?
If yes, this can be a problem with power.
Disconnect the battery and after this connect only AC adapter,
press power on for 30 seconds
Dietmar
#4001XPWELL64⇗ @diderius6
I'll try this method but don't forget to look at my pc. Here are the photos:



XPWELL64 has attached images to this post  ⇗ IMG_0158.JPG  ⇗ IMG_0157.JPG
#4002diderius6⇗ @XPWELL64

I think, those cables are the antenna for the pci-e WIFI chip

Dietmar

⇗ https://www.youtube.com/watch?v=fo5easyIX0Y&t=19s

#4003XPWELL64⇗ @diderius6
1- I have an external broadcom wireless adapter came from HP pavilion.
2- Can you look at the photo again? Is there any missing cable connection?
#4004diderius6⇗ @XPWELL64

I cant see any other disconnected cable.
I am quite sure, that it is a problem with power.

Take the battery out.

After this, press for one minute power on.

Then connect only AC adapter  (battery is still out) and press power on

Dietmar
#4005gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #4002
I think, those cables are the antenna for the pci-e WIFI chip
⇗ @diderius6 ...that makes sense they leads are soldered to terminals in the case, where an antenna should be. I think you're right, it's likely a power supply issue.

⇗ @XPWELL64 ...you need to get a service manual (not a user manual) if possible, as Dietmar suggested. Some can be found on the Net if you look carefully. You'll need a Digital Volt Meter (DVM) to measure voltages, especially the output of the AC adapter 'when it is plugged in'. This is not an easy repair, it's not something you can solve over the Net.

A user manual might tell you what the amber light means. I would suspect a power supply issue, a bad hard drive, etc. Listen to the hard drive for sound when you power on. You should hear it 'seeking'...clicking sounds during boot. Some are noisier than others. If it is clicking, and/or, the hard drive LED is flickering, you should get an indication on the screen that it is trying to boot. You might even get beeps. If so, count them and look it up in a user manual as to what the beeps mean.

 

Page 268

#4006XPWELL64⇗ @gordo999
There isn't any hdd on my laptop.
#4007DibyaAnyone can link me storahci driver of Skulltrail?
#4008Andalu⇗ @Dibya
it's ¶ here

~~~~~~~~~~~~~~~~~~~~~~~~~
Happy New Year to all forum members
#4009DibyaAnyone can link me to timer bug fix patch of hal?
#4010KeesoNHello. I had some problem after installing Windows Xp 32 bit to my computer. After restarting system i couldn't boot system because hal.dll was corrupted. Can somebody send me link with modified/normal hal.dll for Windows XP 32 bit(or better for 64 bit), i wanna install again windows XP and i hope with modified hal.dll system will boot without problems(I speak in English and Russian). Also i wanna know,everyone could install all needed drivers to their machines.
#4011gordo999
Zitat von ⇗ KeesoN im Beitrag ¶ #4010
Also i wanna know,everyone could install all needed drivers to their machines.
⇗ @KeesoN ...I have XP running on an Asus B360M chipset (300-series), with an i5-8400 processor, with all the features I need. I am running USB through an add-on card (Vantec with VIA chipset and XP drivers) but I have not tried daniel_k's latest USB driver. My Nvidia GT-730 video card is running as well as my Creative XFi audio card. Video is stable at 1920 x 1080.
#4012gordo999
Zitat von ⇗ XPWELL64 im Beitrag ¶ #4006
There isn't any hdd on my laptop.
XPWELL64 ...not familiar with SSDs. Does an SSD not have an indicator light? On my mobo, the LED driver light comes from the mobo, not the disk drive. If your light is connected in your laptop, it should indicate with an SSD plugged in.

Did your laptop come with an SSD or did you add it? If so, check the manual for which light represents the HDD and see if it lights with your SSD connected.
#4013KeesoN
Zitat von ⇗ gordo999 im Beitrag ¶ #4011
My Nvidia GT-730 video card is running as well as my Creative XFi audio card. Video is stable at 1920 x 1080.

So,how you play some games or use some modern programs? Because i use some needed program,that isn't starting on VM
#4014diderius6I just test on a Lenovo W530 with K2000m 2GB graphik card 3Dmark2001.

Under Win 10 64 bit: 25001
Under XP SP3 32 bit: 51841

Waaoh, what a difference
Dietmar
#4015IntiMD
Zitat von ⇗ diderius6 im Beitrag ¶ #4014
I just test on a Lenovo W530 with K2000m 2GB graphik card 3Dmark2001.

Under Win 10 64 bit: 25001
Under XP SP3 32 bit: 51841

Waaoh, what a difference
Dietmar

⇗ @diderius6
Doesn't surprise me considering how since Windows 8 the DirectDraw and DirectX pre-9 (iirc; either pre-9 or pre-8) APIs have been deprecated, thus old games depending on those APIS worked sluggish on Win8 and above compared to Win7.

I wonder what results would be in Win10, if you use the dgVoodoo graphic-layer translator:
⇗ http://www.dege.freeweb.hu/ (stable version)
#4016gordo999
Zitat von ⇗ KeesoN im Beitrag ¶ #4013
So,how you play some games or use some modern programs? Because i use some needed program,that isn't starting on VM
⇗ @KeesoN ...don't understand your question. I use XP only for older games that won't run on W7. I don't run modern apps on XP, you'll have to ask someone who does. I have never tried newer games or apps on a VM because I like the video and sound better in real mode. I use a VM only to run another OS within W7.
#4017kukonosauDo you have B350 chipset drivers on Windows XP x86? And what is motherboard resources in system devices in device manager?
#4018kukonosauGeForce Experience is working in Windows XP GTX 960 and so on today? Doesn't work in GT cards, for example GT 710. But in GTX cards working ShadowPlay?
#4019gordo999
Zitat von ⇗ kukonosau im Beitrag ¶ #4017
Do you have B350 chipset drivers on Windows XP x86? And what is motherboard resources in system devices in device manager?
⇗ @kukonosau ....My mobo is an Asus B360M-C\CSM. The motherboard resources are as follows:

ACPI\PNP0C02\0
ACPI\PNP0C02\1
ACPI\PNP0C02\2
ACPI\PNP0C02\5
ACPI\PNP0C02\IOTRAPS
ACPI\PNP0C02\PCHRE3V
ACPI\PNP0C02\SARESV

I have a full set of 6 processor cores indicated in Device Manager for the i5-8400.
#4020YuriyCNDear daniel_k,



OS - Windows XP Pro SP3
MB - Gigabyte GA-H110M-DS2

I use of the modified USB 3.0 driver included in the "amdxhc_pae_fix.rar". I found a nuance in the work of this driver. If the computer is put into "Standby mode", then after exiting "Standby mode" all USB ports stop working, and any device connected to the port is defined as "Unknown device" with USB\VID_0000&PID_0000. Only reboot helps.

 

Page 269

#4021daniel_k⇗ @YuriyCN

You're the first one who was able to wake up a system from standby while running XP.

We don't really support Standby as almost all Haswell+ systems have issues with it.

Please disable PAE and try my new driver and see if it works properly.
#4022YuriyCNPlease specify, I must check the "AMDXHC 1.1.0.0276 Final Driver, dated Dec 4, 2018" from your post - ¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (265)

But specify with what AСPI I should check. I found 3 different versions of the ACPI.SYS. Which one do you recommend to use together with a your USB driver?



I will reinstall Windows XP and check on a clean system.
#4023kukonosau⇗ @gordo999
Can we install motherboard resources? How to fixing? This is normally? System with motherboard resources is stable working? Where is chipset drivers?
#4024YuriyCNOS - Windows XP Pro SP3 VL Professional
MB - Gigabyte GA-H110M-DS2 (Socket 1151, installed 8GB DDR4 RAM)
Keyboard and mouse - PS/2

Test 1: Windows XP SP3 + PAE
USB 3.0 Driver - "AMDXHC 1.1.0.0276 Final Driver, dated Dec 4, 2018" + "amdxhc_pae_fix.rar"
ACPI driver - acpi.sys (239616 bytes)

Result: If the computer is put into "Standby mode", then after exiting "Standby mode" all USB ports stop working, and any device connected to the port is defined as "Unknown device" with USB\VID_0000&PID_0000. In addition to USB, all other devices work flawlessly.

Test 2: Windows XP SP3 (without PAE)
USB 3.0 Driver - "AMDXHC 1.1.0.0276 Final Driver, dated Dec 4, 2018"
ACPI driver - acpi.sys (239616 bytes)

Result: The situation is much worse. After exiting "Standby mode" - nothing works. I get a black screen or BSOD.



Test 3: Windows XP SP3 (without PAE)
USB 3.0 Driver - "AMDXHC 1.1.0.0276 Final Driver, dated Dec 4, 2018" + "amdxhc_pae_fix.rar"
ACPI driver - acpi.sys (239616 bytes)

Result: The situation is like in Test 1. File "amdxhc_pae_fix.rar" does wonders.
#4025ap7cesarHello:
I am new to this forum. How can obtain an iso of windows XP pro 32 bit with usb intel xhci drivers and acpi.sys integrated?
I have a clevo laptop and a skylake CPU.
Thanks.
#4026daniel_k⇗ @YuriyCN, thanks for the reports, but as I've said before, getting XP running properly is already a challenge, fixing Standby is completely out of question.
#4027daniel_k⇗ @schreiberstein

Hi mate, as your are german, please take a look at this forum:
⇗ https://www.waldbauer.com/vb/showthread.php?t=2149

They have some interesting fixes for issues with NTVDM. Really knowledgeable persons there.
Hope that they can give us some clues as to how to fix it.

When you have some time, please share with them our issues with PAE, tell them it also affects Server 2003.

As far as I remember, you can't even run any DOS app, even in a windowed DOS Prompt, right?
In my case, the issue happens when trying to switch a windowed DOS app to full screen.
#4028gordo999
Zitat von ⇗ kukonosau im Beitrag ¶ #4018
GeForce Experience is working in Windows XP GTX 960 and so on today? Doesn't work in GT cards, for example GT 710. But in GTX cards working ShadowPlay?
⇗ @kukonosau ...I have the Nvidia control panel and Experience working with driver package 340.52. I already had newer drivers working but the setup.exe file in 340.52 reloaded everything without complaining. So now my GT-730 is running with following drivers on XP x86:

NvCplSetupEng.exe version 1.0.3
dbInstaller  version 6.14.13,4052
nvdrsdb.bin version 'unknown'
OpenCL.dll version 1.0.0
nv4_mini.sys version 6.14.13.4052
nv4_disp.dll   version 6.14.13.4052
nvapi.dll    "
nvcompiler    "
nvcuda.dll     "
nvcuvid.dll     "
etc.

re your other question...my Device Manager does not show chipset drivers for the B360 chipset. It only shows PCI drivers, all from Cannon Lake series and what I posted last time. Don't look for chipset drivers, just follow instructions in this thread about loading an acpi.sys driver and a storport driver. I had my XP installation already loaded on a disk from an older Intel mobo. If you are doing a fresh install, follow the instructions in this thread about adding the drivers above to your XP installation disk.

BTW...you will need a PS2 port to operate the mouse and keyboard unless you can get the USB drivers working with daniel_k's USB drivers.
#4029gordo999⇗ @daniel_k ...hate to bug you since you are busy. Tried your latest release of the AMD USB drivers on my Asus B360M mobo and it crashed with a BSOD 0x7B. It may be related to the SATA AHCI drivers I am using which came from drivers on the XP SP4 unofficial package. They were issued by Fernando and they work well otherwise. Maybe I need a SATA driver related to your USB issue, since that cured the 0x7B error at boot. I have a Vantec USB add-on card working with a VIA chipset and I can run my mouse and keyboard off that.

The only drivers i have added to get XP going is an acpi.sys version 6.0.5048.0 from this thread and an iaStor.sys version 11.2.0.1006 with a DEV_A352 added to the INF by Fernando. My BIOS has not been modded.You might be happy to hear that my Creative XFi with driver ctaud2k.sys, version 6.0.230.0004-2.3.0000 is working great with all the software  goodies working. Just got my Nvidia GT-730 fully operational as well with driver package 340.52.
#4030YuriyCNDear daniel_k,

I am a fan of the old operating systems and of the classic interface therein. After installing Windows 7, it turned out that Microsoft has committed despicable - in all basic (simplified) themes, including my favorite Classic one, composition (2D video acceleration) is disabled. For this reason, the program interface is drawn with large delays / blinking text / stickings. There are no such shortcomings in aero-themes, but its more convenient for me to work in the usual Classic.

To solve this problem, a specialist "EL_Sanchez" made a patch for the DWM.EXE file. After replacing the original file with a patched one, the work of the classic theme is significantly accelerated. Unfortunately, when using the patched DWM.EXE, the window titles become transparent and user must restart the Explorer for correct displaying ot the Taskbar. Can you make a more correct patch for DWM.EXE, which will not have such shortcomings?

More details and patch DWM here: ⇗ [Solution] Acceleration of GUI interface on the non-Aero themes of Windows 7

DWM is already patched:


But this patch is not enough, here are issues:
1. The patch does not enable compositing, but does not disable compositing when switching from Aero to classic. If one restarts the PC, then on the newly loaded classic theme, acceleration no longer works; in short, the fact of switching the theme (aero -> classic) is important.
2. After switching to the classics, the look of the taskbar deteriorates - it becomes pale and translucent. If to restart the explorer process, then the color will return to normal.

But it is difficult to make a correct patch, so that when loading on a classic theme, the acceleration was initially, without switching themes and without restarting the Explorer.exe.

The technical essence of the needed patch:
so that when switching to the classic theme, leave the value of the field of the CDwmAppHost::s_fCompositionEnabledByPolicy class = 1, regardless of the checks. This value is then used to check whether the composition should be enabled.

Can you help with it (CompositionEnabledByPolicy) ?
#4031daniel_k⇗ @YuriyCN, seeing the details of that BSOD in the amdxhc.sys 276, I've found a bug.
Can you please retest the drivers? I have also included a PAE fix based on 276 (check PAE_fix folder).

By the way, I've updated the amdxhc_pae_fix.rar, it is now based on the V2 release, found here:
¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (208)

Regarding the DWM patch, I'll take a look at it when I have more time.
#4032daniel_k⇗ @gordo999

You mean the BSOD 0x7B as soon as the USB driver was installed on a working XP install?
If so, we haven't ever seen this behavior.

Otherwise, if you were trying to install XP with the USB driver integrated, something wrong happened during driver integration.
#4033YuriyCN
Zitat von ⇗ daniel_k im Beitrag ¶ #4031
Regarding the DWM patch, I'll take a look at it when I have more time.


1. Thanks you. I will now reinstall Windows XP SP3 and check for new drivers (USB3 + PAE) on a clean system.

2. Regarding the DWM.EXE patch, this is generally the most important patch; without it, the Сlassic theme Windows 7 works without 2D graphic acceleration. A complete set of solutions, consisting of a new version of theme "Classic AE mod 2019_8", a patch for the DWM.EXE file, and a set of programs to accelerate the user interface (including the source code) - ⇗ [Solution] Acceleration of GUI interface on the non-Aero themes of Windows 7
#4034gordo999
Zitat von ⇗ daniel_k im Beitrag ¶ #4032
You mean the BSOD 0x7B as soon as the USB driver was installed on a working XP install?
If so, we haven't ever seen this behavior..
⇗ @daniel_k ...thanks for reply. I tried the driver installation on a working installation of XP. I already had a yellow exclamation mark from the failed installation of a USB driver by Dietmar and I looked under properties for that failed install and hit 'Update Drivers'. Maybe I should have uninstalled the old drivers first.

What kind of information would help you? I'll send as much as you need. I should point out that I have a set of VIA USB drivers running successfully for a USB3 add-on card. I have not verified USB3 operation but I have a mouse/keyboard running off a unified USB module and I am able to insert thumb drives and read from them.
#4035gordo999
Zitat von ⇗ YuriyCN im Beitrag ¶ #4030
... including my favorite Classic one, [b]composition (2D video acceleration) is disabled. For this reason, the program interface is drawn with large delays / blinking text / stickings. There are no such shortcomings in aero-themes, but its more convenient for me to work in the usual Classic.
⇗ @YuriyCN ....maybe I am misunderstanding you. Are you referring to 2-D issues in one application, or in Windows 7 in general? I have W7 running in Classic mode, on the same Asus B360M mobo, with no issues like you describe. I even have W10 running in W7 Classic mode with no issues. I also have XP running in Classic mode with no video problems, everything is running very smoothly with the graphics. I don't use Aero mode because I don't like it.

I don't know what you mean by 2-D mode, could you give more detail and I will check on my system? Is 2-D mode not the normal mode for Windows? I thought 3-D mode applied only to graphics cards.

 

Page 270

#4036YuriyCN
Zitat von ⇗ gordo999 im Beitrag ¶ #4035
I am misunderstanding you. Are you referring to 2-D issues in one application, or in Windows 7 in general?


This is a general Win7 problem.

Please be silent, you write nonsense and confuse thoughts. Study the problem first, for example - ⇗ https://www.neowin.net/forum/topic/10363...-win7/#comments

The basic information, with examples, programs and a patch DWM look here - ⇗ [Solution] Acceleration of GUI interface on the non-Aero themes of Windows 7


Dear daniel_k,

I remember, my PC:
OS -  Windows XP SP3 Pro with PAE patch
Chipset - Intel H110M

I tested the proposed 3 variants of drivers. I currently have 4 versions of the amdxhc.sys file.

Driver 0 -  a7623c00e10530ad1479b7b29d845412 *amdxhc_0.sys - my old driver
Driver 1 - 377d326e670d69305d1e0636f58956f3 *amdxhc_1.sys  - driver from amdxhc_test.rar\PAE_fix\amdxhc.sys
Driver 2 - 093b13195b2b9c9c7b871f6a0b8cb09c *amdxhc_2.sys - driver from amdxhc_test.rar\amdxhc.sys
Driver 3 - 70bf62de81351beadb23d2b01a65e18e *amdxhc_3.sys - driver from amdxhc_pae_fix.rar
All files in 1 archive - ⇗ https://www.upload.ee/files/10958105/Int...ersion.zip.html

Driver 0 - My old driver. It works fine on a loaded system, without complaints. But  after exiting the Standby mode into working state - all devices connected to USB ports are defined as PID_0000&VID_0000 (Unknown Device). When user disconnects the device, it disappears from the Device Manager. It turns out that the USB port does not freeze, it senses the fact of connecting to it, but cannot correctly identify the device and defines it as an "Unknown Device". In general, the situation is the same as I described to you earlier.

Your NEW FILES:

Driver 1 - the operation in all cases is completely identical to Driver 0.

Driver 2 - does not work at all on a loaded system, USB devices are not visible. When putting the computer into Standby mode, the PC freezes. Even the Reset button does not work, it is needed to turn off the power.

Driver 3 - the operation in all cases is completely identical to Driver 0.

As a result, none of the proposed drivers works after exiting the Standby mode. We are going the right way. Maybe the problem is not in the USB driver, but in the ACPI.SYS file ??
#4037daniel_k⇗ @gordo999
Before trying to install the driver, search for amdxhc.sys and amdhub30.sys in the \Windows folder (including subfolders) and delete all found.
Now install as usual, if something goes wrong, something else should be causing the issue.
#4038daniel_k⇗ @YuriyCN, one last try.

Please try it if you can. If this doesn't fix it there is nothing else I can do.
#4039gordo999
Zitat von ⇗ YuriyCN im Beitrag ¶ #4036
Please be silent, you write nonsense and confuse thoughts.
⇗ @YuriyCN ...If you would learn to present the problem correctly in the first place there would be no misunderstanding. This is a forum for XP, not W7. If you are going to whine about non-issues then you can expect people to wonder what the heck you are talking about.

You are the one misunderstanding the problem. If you want true hardware video acceleration, buy a good video card with a fast processor and lots of memory. If the main processor has to do the video as well as the rest of its loads, you might get the undesirable effects you describe. Even with my old Intel processor/mobo I did not experience what you are experiencing and I tried to do you a favour by informing you of that. Neither my W7 or XP installations have the problems you describe. You have something else wrong in your system or you are using an application/game that is placing too much of a demand on your processor.

Besides, daniel_k has indicated he is very busy. Why are you being so rude and demanding as to use up his time asking irrelevant questions about  W7? Take your own advice. Go somewhere else and ask questions bout W7.
#4040YuriyCNgordo999

It does not depend on the productivity of the PC, even on a modern computer, with a powerful CPU and GPU, you will get problems with 2D performance in any non-Aero themes. To check, do download a simple program, for example 2ip NetMonitor from the website ⇗ https://2ip.ru/download/NetMonitor.exe and become assured that without the DWM patch on the Classic theme - all lines will flicker. But with the DWM patch, the lags disappear.

Similar problems will occur on other programs that do not use double buffering of video output. Another example is the simplest Neutron 1.07 program, you can download it from ⇗ https://neutron.ru.uptodown.com/windows/download or take it from the "Solutions" archive from ⇗ [Solution] Acceleration of GUI interface on the non-Aero themes of Windows 7 Even in the "Task Manager" (built-in from Win 7), the column "CPU load" flashes. There are a lot of such examples...

All cases are united by a trait - programs that do not use double buffering of video output will work slowly in any non-Aero themes (including built-in Classic). Enabling composition through the DWM.EXE patch forces double buffering, and significantly increases 2D GDI performance - removing blinking text labels and speeding up drawing of a 2D interface up to 10 times.

daniel_k

Zitat von ⇗ daniel_k im Beitrag ¶ #4038
Please try it if you can. If this doesn't fix it there is nothing else I can do.


I tested new version of the USB driver (amdxhc_test2.rar). Unfortunately, the situation is the same. After using the "Standby" mode, all USB ports stop working normally. Any connected device is identified as an "Unknown device".
#4041gordo999
Zitat von ⇗ daniel_k im Beitrag ¶ #4037
Before trying to install the driver, search for amdxhc.sys and amdhub30.sys in the \Windows folder
⇗ @daniel_k ...sent a reply but it seems to have disappeared. That worked, thank you. Don't know why but there was an amdxhc.sys in the sys32\drivers directory, dated 2016. I deleted it and re-installed and now all USB ports are working.

Thanks for your hard work and help.
#4042XPWELL64⇗ @diderius6
Here are two pseudocode examples (From WINDOWS 7 X64 AND WINDOWS XP X86 Intel HD Graphics drivers):



XPWELL64 has attached files to this post
#4043YuriyCN
Zitat von ⇗ XPWELL64 im Beitrag ¶ #4042
@diderius6
Here are two pseudocode examples (From WINDOWS 7 X64 AND WINDOWS XP X86 Intel HD Graphics drivers):



Do you have a driver HD530 graphics (CPU Intel i5-6600) for Windows XP ??
Please share with me.


daniel_k

Dear daniel_k, testing your drivers many times, I found a peculiarity that I had not noticed before. I thought this peculiarity as important, so I decided to write to you. Perhaps the information in "paragraph 2" will help you check the error.

1. If to put the PC into Standby mode with the USB device turned off, then after exiting Standby mode, the USB ports do not work normally. The device connected to the port is defined as an "Unknown Device" and obviously it cannot work normally.

2. But, now attentively!! If the PC is put into Standby mode with a device already connected (for example, a USB flash drive), it turns out that after exiting the Standby mode the flash drive works !!! I tried to open the flash drive - the files are seen, copied, everything works correctly. If to remove it and reinsert it, then it will already be defined as an "Unknown Device" and will stop working. If at the moment when the flash drive is working, connect the second - then the second is already defined as an "Unknown Device" and will not work, but the first will continue normal operation.

Conclusion:
USB can work even after the PC wakes up from standby mode. An important peculiarity is that only a USB device that was already connected to the port at the time of switching to standby mode can continue to work.
#4044XPWELL64⇗ @YuriyCN
I will mod it for you but you have to wait for the weekend. I'm learning how to reverse engineer drivers as pseudocode
#4045YuriyCNXPWELL64

I will be very glad.
I need such a HD530 driver for XP.

daniel_k

I received additional information that you might be interested in. The ability to correctly return from standby mode is very dependent on the BIOS/UEFI version. I updated the BIOS/UEFI to the latest version of F24 - the PC goes into Standby mode, but when wakes up - I get a black screen and halt. If to roll back the BIOS/UEFI version to the older version F3 that I used before, then returning from Standby mode is normal. In general, for the correct operation of Windows XP, it is advisable to use the old BIOS/UEFI versions.
#4046XPWELL64⇗ @YuriyCN
What is your issue about Intel HD 530 Windows XP drivers? Can you find the source of error code with dependency walker? Can you give me the dependency name with issue? I can fix it and I will send you a new igxpmp32.sys + inf.
#4047daniel_k⇗ @gordo999
Glad to know it worked!

⇗ @YuriyCN
Glad to know that my "last" driver, although it gives "Unknown Devices", at least it doesn't crashes or hangs (black screens) your PC. Will update the "final" driver. Thanks for testing it.
Yes, I know that older BIOS have better XP compatibility, but as most of us dual boot or even multi boot our systems, I think we all agree that it's better to have a BIOS optimized for supported OSes and lose XP Standby.
#4048daniel_k⇗ @canonkong

Hi mate!

Can you please sign these INF files?
- Fine tuned NoNVME.inf to support Windows 7 with NVME hotfix in case someone needs it.
- Created a "null" MEI driver, to prevent Windows from installing Intel's crappy driver which is useless for us and prone to security issues.
- Both INFs are future-proof, with a 01/13/2030 date.

Thanks!
#4049YuriyCN
Zitat
What is your issue about Intel HD 530 Windows XP drivers?



Where can I download the HD530 driver for WinXP?
On the official Intel website there is a version for Win7/8/10 only.

#4050canonkong⇗ @daniel_k
Signed, enjoy it.



canonkong has attached files to this post

 

Page 271

#4051XPWELL64⇗ @YuriyCN
Please download Dependency Walker and find the issue.
#4052YuriyCN
Zitat von ⇗ XPWELL64 im Beitrag ¶ #4051
@YuriyCN
Please download Dependency Walker and find the issue.


I need a HD530 video driver to install through the "Device manager".
But I do not have this driver for WinXP. I have nothing to install.
I dont understand how "Dependency Walker" can solve my problem and what exactly should I do?


daniel_k

Today all day I experimented about Windows XP with different versions of BIOS/UEFI. There is a clear dependence: the older the BIOS/UEFI version -- the less problems there are with the installation and operation of Windows XP.

For my motherboard GA-H110M-DS2 there are such BIOS/EFI versions:
F1, F2, F3, F20, F21, F22, F23, F24.

I have 3 CDs with Windows XP installation - a clean installation with integrated SP3 (MSDN image) and 2 disks of different WinXP SP3 builds + upto 2017 updates. On older versions of BIOS/UEFI (F2, F3) - all 3 CD-ROMs are installed and work well. On the latest version F24 - only 1 CD is installed without problems. Unfortunately, the remaining 2 CDs are installed with different issues. For example, on one of the disks, at the first stage of the installation, I had to disable ACPI, otherwise I received a BSOD with error code 0x000000A5.

It would seem that the best option is to leave the old BIOS / UEFI F3 version and not to bother myself. But in the old version there is a big issue - a too large range of addresses (1.8GB) is reserved for devices (reserved memory). As a result, with version F3, in a 32-bit OS, only 2.2GB RAM is seen. I think it is abnormal.

When installing the latest version of F24 - this is not a problem. In 32-bit OC, 3.2GB of RAM is seen (800MB reserved). This is pretty normal, but as I wrote above, WinXP with the new version of BIOS/UEFI works worse. Do you have experience of finding and fixing the size of the Reserved Memory Area for devices in the BIOS/UEFI of the GA-H110M-DS2 motherboard?
#4053IntiMD
Zitat von ⇗ daniel_k im Beitrag ¶ #4048
- Created a "null" MEI driver, to prevent Windows from installing Intel's crappy driver which is useless for us and prone to security issues.

Wouldn't it be reinventing the wheel with that? ;)
If i do recall correctly the intel chipset inf files (at least in fernando's AiO) had already a null MEI/HECI inf to just fix that yellow bang.
#4054daniel_k⇗ @canonkong
Thank you very much!

⇗ @YuriyCN
I'm used to patch the DSDT table of Gigabyte BIOS.
If you are comfortable with flashing a modified BIOS, I can patch the DSDT table of your GA-H110M-DS2 for improved XP compatibility. Just let me know.

Zitat von ⇗ IntiMD im Beitrag ¶ #4053
If i do recall correctly the intel chipset inf files (at least in fernando's AiO) had already a null MEI/HECI inf to just fix that yellow bang.

My INF file has 52 device IDs.
Comparing with Fernando's pack, there are only 11 matches.
Most devices needing an actual MEI driver are not included in the Chipset driver, so no, I'm not reinventing the wheel.
#4055YuriyCN
Zitat von ⇗ daniel_k im Beitrag ¶ #4054

I'm used to patch the DSDT table of Gigabyte BIOS.
If you are comfortable with flashing a modified BIOS, I can patch the DSDT table of your GA-H110M-DS2 for improved XP compatibility. Just let me know.


My MB: Gigabyte GA-H110M-DS2
⇗ https://www.gigabyte.com/Motherboard/GA-H110M-DS2-rev-10#ov

BIOS/UEFI version F3 works best for Windows XP. Please, patch this version.
⇗ https://download.gigabyte.com/FileList/B...110m-ds2_f3.zip
#4056XPWELL64⇗ @YuriyCN
There is red mark on the Dependency with issue.
#4057XPWELL64I''m currently working on Intel HDMI Audio for windows xp.
#4058XPWELL64⇗ @canonkong ⇗ @diderius6 ⇗ @Mov AX, 0xDEAD ⇗ @YuriyCN
I'm learning reverse engineering. After that, I can patch the intel gpu drivers for debug.
⇗ @infuscomus
I found 6.8 version of ida pro w/hex rays decompiler. I got used to IDA so I deleted relyze. There isn't any guide for Relyze. I found an XP compatible IDA Pro (not freeware). Relyze is not popular disassembler. I also prefer ollydbg because It is more basic than IDA.
#4059YuriyCNXPWELL64

IDA Pro with crack:
v6.5 - ⇗ https://rutracker.org/forum/viewtopic.php?t=4802739
v6.8 - ⇗ https://rutracker.org/forum/viewtopic.php?t=5129253
v7.0 - ⇗ https://rutracker.org/forum/viewtopic.php?t=5459068
v7.2 - ⇗ https://rutracker.org/forum/viewtopic.php?t=5748289


Hello daniel_k

I sent you a link to the binary of my BIOS version F3, that WinXP works best with. I ask to patch this file, and to reduce the amount of memory reserved for devices. Or is it a difficult task, and here is a high probability of breaking down the PC due to incorrect BIOS patching?
#4060XPWELL64⇗ @YuriyCN
I will patch vista drivers. Do you want to install vista? It is easier to patch it.
#4061XPWELL64⇗ @diderius6 ⇗ @canonkong
Vista driver comparison between original 1st and 2nd gen and 2nd and 3rd gen cpus:
For 1st and 2nd gen cpus:
loc_180037F83:
mov [rsp+28h+arg_0], rbx
call memset
mov rbx, rdi
mov dword ptr [rdi+350h], 8086h
mov dword ptr [rdi], 16B8h
add rdi, 16B8h
mov [rbx+2C0h], rdi
add rdi, 480h
mov rcx, rbx
mov [rbx+288h], rdi
add rdi, 68h ; 'h'
mov [rbx+2B8h], rdi
add rdi, 370h
mov [rbx+2A8h], rdi
add rdi, 140h
mov [rbx+298h], rdi
add rdi, 5E8h
lea rax, [rdi+2000h]
mov [rbx+16A8h], rdi
mov [rbx+708h], rax
call sub_180037E50
test eax, eax
jz short loc_180038031
For 2nd and 3rd gen cpus:
loc_180048D93:
mov [rsp+28h+arg_0], rbx
call memset
mov rbx, rdi
mov dword ptr [rdi+7C8h], 8086h
mov dword ptr [rdi], 1E50h
add rdi, 1E50h
mov [rbx+740h], rdi
add rdi, 480h
mov rcx, rbx
mov [rbx+708h], rdi
add rdi, 68h ; 'h'
mov byte ptr [rbx+7C0h], 1
mov [rbx+738h], rdi
add rdi, 368h
mov [rbx+728h], rdi
add rdi, 140h
mov [rbx+718h], rdi
add rdi, 628h
lea rax, [rdi+2000h]
mov [rbx+1E40h], rdi
mov [rbx+0BD0h], rax
call sub_180048C60
test eax, eax
jz short loc_180048E48

480h 68h 140h are same. Are they from 2nd gen cpus?
#4062YuriyCNWhy daniel_k stopped visiting this forum.
He has not been online since January 14.
We worry, who has the information?
#4063Duke SoloHi guys!

Is it possible to run up windows xp 32bit on gigabyte B450M motherboard?
I have tried acpi.sys from post 2225, and some other, but unsuccesfull - i've got BSOD A5 (0x3
also i've tried ISO (⇗ https://piratebay.surf/torrent/34952867/...ition_2019.11.1) with same result
BIOS is CSM Enabled, but version is F41, software downgrade seems impossible...
#4064infuscomus⇗ @daniel_k ⇗ @diderius6

BSOD A5 0x3

any ideas?
#4065YuriyCN
Zitat
Is it possible to run up windows xp 32bit on gigabyte B450M motherboard?
I have tried acpi.sys from post 2225, and some other, but unsuccesfull - i've got BSOD A5 (0x3
also i've tried ISO (⇗ https://piratebay.surf/torrent/34952867/...ition_2019.11.1) with same result
BIOS is CSM Enabled, but version is F41, software downgrade seems impossible...



Read carefully what I wrote earlier.
In a standard way, the BIOS downgrade is blocked.
Use Intel Flash Programming Tool (FPT) for downgrade to older versions.

Zitat
Today all day I experimented about Windows XP with different versions of BIOS/UEFI. There is a clear dependence: the older the BIOS/UEFI version -- the less problems there are with the installation and operation of Windows XP.

For my motherboard GA-H110M-DS2 there are such BIOS/EFI versions:
F1, F2, F3, F20, F21, F22, F23, F24.

I have 3 CDs with Windows XP installation - a clean installation with integrated SP3 (MSDN image) and 2 disks of different WinXP SP3 builds + upto 2017 updates. On older versions of BIOS/UEFI (F2, F3) - all 3 CD-ROMs are installed and work well. On the latest version F24 - only 1 CD is installed without problems. Unfortunately, the remaining 2 CDs are installed with different issues. For example, on one of the disks, at the first stage of the installation, I had to disable ACPI, otherwise I received a BSOD with error code 0x000000A5.

 

Page 272

#4066infuscomus⇗ @YuriyCN

Duke Solo has an AMD B450 motherboard, so using Intel Flash Programming Tool (FPT) for downgrade wont work for him.
#4067YuriyCN
Zitat von ⇗ infuscomus im Beitrag ¶ #4066
@YuriyCN

Duke Solo has an AMD B450 motherboard, so using Intel Flash Programming Tool (FPT) for downgrade wont work for him.


Versions from the Intel website for my Intel H110M chipset also did not work.
I used this version - ⇗ http://www.mediafire.com/file/p66jhts7cf...pt_DOS-Z170.zip

Sorry, I didnt pay attention that this is AMD.
#4068diderius6⇗ @infuscomus

We need to know the whole BSOD A5 (0x00000003, xxx,yyy,zzz) for the AMD Gigabyte B450M motherboard.

In the meantime, test acpi.sys from outer space ) in post 3219

Dietmar
#4069XPWELL64⇗ @canonkong
Can you mod the Windows XP 32 bit Intel HD graphics?
#4070gordo999
Zitat von ⇗ Duke Solo im Beitrag ¶ #4063
I have tried acpi.sys from post 2225, and some other, but unsuccesfull - i've got BSOD A5
@DukeSolo ...how did you insert acpi.sys into XP? You can't do it directly otherwise the system file checker will replace it. You need to do it offline, from an external OS, like a system with XP and W7 dual-booted and W7 as the boot drive..

I ran SPF and it removed the modded acpi.sys. I had to find where it got it's files from and insert the modded acpi.sys offline so that when SPF tried to replace  the file it used the modded acpi.sys
#4071XPWELL64⇗ @diderius6
A user named ⇗ @canonkong on this forum doesn't listen us. I told him to mod the XP 32 bit and Vista 64 bit driver but he didn't reply. I think he should stop only working on Win7 and start working on XP and Vista 32 bit graphics drivers.
#4072canonkong@ XPWELL64
I have no experience in modifying XP and Vista systems. One is that they have a long history, and the other is that they  not have any effective drive source. I toke a lot of time to modify the drivers for win7 and win8.1 because they are more people use.
#4073XPWELL64⇗ @canonkong
But Vista drivers looks same as 7 drivers because of 64 bit architecture.
#4074gordo999
Zitat von ⇗ canonkong im Beitrag ¶ #4072
I have no experience in modifying XP and Vista systems.
⇗ @canonkong ...You did a good job with the W7 USB driver for modern chipsets (eg. B360M). It worked on mine and I have all of my USB ports working on W7. Thank you. Thanks to ⇗ @daniel_k, I have all my USB ports working on XP as well on the same chipset.
#4075daniel_k⇗ @YuriyCN
I have been busy.

For safety reasons, I always check the BIOS before and after modification with UEFITool_NE, to see if there are any warnings, as this version does additional verification that the "regular" UEFITool doesn't do.

There are some messages or warnings we need to be careful with, I believe.
See these screens:


⇗ @Lost_N_BIOS, are those messages critical when modifying the BIOS or they can be ignored?
#4076YuriyCN⇗ @daniel_k

Maybe my motherboard GA-H110M-DS2 has a hidden menu in BIOS/UEFI with advanced options?
If this menu is available, please unlock advanced menu for BIOS/UEFI version F3.
#4077infuscomus⇗ @diderius6

can we solve the ACPI BSOD when using XP in a KVM VM? I would like to be able to have the option to use XP inside KVM with hardware passthrough in the future once CSM is fully removed from UEFI in the near future.
#4078diderius6⇗ @infuscomus

What is the exact ACPI BSOD in the KVM VM? And is it always the same BSOD, not depending on which machine this VM is running
Dietmar
#4079infuscomus⇗ @diderius6

the BSOD is A5 0x0000014

It's the same on BSOD on any physical machine running KVM, it does not matter which hardware your physical machine has, so I think the problem must be inside the ACPI code of KVM hypervisor itself
#4080diderius6⇗ @infuscomus

Please write the exact ACPI BSOD, something is missing
Dietmar

 

Page 273

#4081infuscomus⇗ @diderius6

i posted the BSOD earlier in post #3132

¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (209)
#4082diderius60x14 : ACPI_PNP_RESOURCE_LIST_LENGTH_TOO_LARGE


The current buffer that ACPI was parsing

⇗ @infuscomus
This BSOD means:

1.Variable: The buffer's tag


2.Variable A pointer to a variable that contains the ULONGLONG length of the buffer


3.Variable ACPI could not parse the resource descriptor. The length exceeds MAXULONG.

Have you tried also the acpi.sys from outer space?  This seems to be a strange error. When all are 64 bit, how can this happen
Dietmar
#4083Duke SoloGuys, regarding AMD B450 chipset.
I have tried acpi.sys from post 3129 with same result.
SFC is completely disabled (zero file list method).
Exact BSOD is 0xA5 (0x3,0x895741E4,0xC0000034,0x494E495F)
del-1diderius6

Hi,
a little bit off topic,
but has anybody here in the forum has been able to install Win98SE with all drivers on a IBM ThinkPad T43 laptop with discrete graphic card x300?
If yes, I think this would be the only notebook,
where everything works from win98 to Win10^^
Dietmar

#4084infuscomus⇗ @diderius6

outer space same error

If you not afraid of using linux, you can setup KVM yourself to confirm the result.
#4085XPWELL64⇗ @diderius6
       Method (_INI, 0, Serialized)  // _INI: Initialize
       {
           TBPE = One
           OSYS = 0x07D1
           If (CondRefOf (\_OSI, Local0))
           }

What does it mean? I modified OSYS = 0x07D1 from 0x07D9
#4086diderius6⇗ @XPWELL64

This change the versionsnumber back to 8 numbers, I think from Win7 to NT4?
Which OS belongs to which OSYS number is described at the beginning in DSDT.
I think, the number has to be changed at other places also.

But do this only, if you are sure what this changes are doing

Dietmar
#4087XPWELL64⇗ @diderius6
0x07D1 This is XP!!!!!!!!!!!!
#4088XPWELL64⇗ @diderius6
I found that why Vista can run on ACPI on newer PCs Please read this text has taken from Microsoft (maybe it is wrong).The website says Windows operating systems return 0xFFFFFFFF if the argument to the _OSI method specifies an earlier version of Windows. For example, Windows 7 returns 0xFFFFFFFF for both "Windows 2009" (Windows 7) and "Windows 2006" (Windows Vista). Windows 7 equals 0x07D9.
0x00000000 if the operating system does not support the version in the argument.
0xFFFFFFFF if the operating system does support the version in the argument.
#4089AndaluXP seems don't work on asrock H310M-HDV. I tried both a fresh installation and the image restoring from a working XP with no success. I got the A5 BSOD for all the acpi sysfiles found on this forum except for this ¶ acpi.sys for which I got the 7B error.
Any suggestion?
#4090XPWELL64⇗ @Andalu
Did you try DSDT.aml patching? I don't prefer ACPI.sys because of more bugs such as bsod at installation, ACPI specific issues. Use the ⇗ @Mov AX, 0xDEAD's dsdt patcher at boot time. Search this term to google and follow the steps. You have to try at least two times to finish installation with custom acpi.sys.
#4091Andalu⇗ @XPWELL64
It is the first time that I am unable to install XP due to an acpi error. Unfortunately, I have never been able to understand how to use the ⇗ @Mov AX, 0xDEAD's dsdt patcher or another dsdt patching method. In the past all my attempts have been unsuccessful
#4092XPWELL64⇗ @Andalu
⇗ @Mov AX, 0xDEAD tells you all steps here:
⇗ https://msfn.org/board/topic/179059-acpi...r-at-boot-time/
#4093Andalu⇗ @XPWELL64
thank you for the link. I had read this similar thread of ⇗ @Mov AX, 0xDEAD:
⇗ http://reboot.pro/topic/22051-acpi-patcher-at-boot-time/ (at the moment not reachable)

I'm still stuck at step 4)

from the point 5) and following I have many difficulties to understand how to proceed
Please keep in mind that I am still unable to modify a dsdt table. I never found any guide on the net.
#4094diderius6Hi,
I just do USB boot to XP SP3 on a ThinkPad T43 via SSD.
This is much faster than the original IDE harddisk^^.
Now I try to install really every OS (NT4, win95, win98, Linux..) on this nice machine
Dietmar

#4095XPWELL64Where did you find it? I will buy an Intel g31 because there is a new motherboard. I don't like second hand unless I get it from the most trusted store.

 

Page 274

#4096gordo999Just wondering which version of HAL I should be using on XP? I have an Asus B360M, with an Intel 300-series chipset. Just noticed that my HAL version in system32 is hal.dll ver. 5.1.2600.5687. I am using a modded acpi.sys from this blog and it works fine but should I be using a different HAL?

Everything is working much better than expected except I still have no LAN drivers. Have full USB, no BSODS. I am running an AM10  USB Cisco wireless adapter and I can get on the Net, but all of my browsers run very slow and are not usable. Internet Explorer ver 8 runs good enough to do some basic downloads but Firefox and Opera 36 wont run at all. Had older versions of Firefox and Opera before but same problem.

My NVidia GT - 730 works fine for games but the other day while using windbg the NVidia driver nv4_disp.dll crashed part way through a debug session. Error 0x50 which is related to a memory problem. My memory is good. There are so many NVidia driver packages I don't know which one to use. My current is 340.52. Read about a modded nv4_disp that is available, does anyone know anything about this?
del-2diderius6

Hi,
hard job to install Win98SE with all needed drivers on the ThinkPad T43.
But now I have them all: Lan, sound, USB2, grafikdriver which works only after an *.inf modifikation for the Radeon mobility x300
Dietmar

PS: I miss only a good browser^^..

del-3dencorso
Zitat von ⇗ diderius6 im Beitrag ¶ #del-2
PS: I miss only a good browser^^..

Not anymore. Get Retozilla: ⇗ https://msfn.org/board/topic/174987-retr...comment=1175917
del-4IntiMD
Zitat von ⇗ dencorso im Beitrag ¶ #del-3
Zitat von ⇗ diderius6 im Beitrag ¶ #del-2
PS: I miss only a good browser^^..

Not anymore. Get Retozilla: ⇗ https://msfn.org/board/topic/174987-retr...comment=1175917


Either that or Opera 10.70 build 3488 for vanilla 98 (w/o KernelEx)
⇗ https://retrosystemsrevival.blogspot.com...windows-95.html
here's a nice compendium of browser and the old OS compatibility:
⇗ https://www.vogons.org/viewtopic.php?f=24&t=12102
del-5gordo999
Zitat von ⇗ IntiMD im Beitrag ¶ #del-4
Either that or Opera 10.70 build 3488
⇗ @IntiMD ...I am running Opera 9 for certain functions on W7 but it does not work well on many sites. For some reason, none of my browsers will run well on XP with the 300-series chipset. Sadly, Internet Explorer 8 is the only one that function half decently. I'm wondering if it has something to do with the lack of a network driver. There is also the possibility that I messed something up in the registry. I had to convert all references to the D:\ drive, where I had XP installed, to C:\. I don't want to do a fresh install because I have so many old apps loaded on XP and reloading them would be a nightmare. Looking at a repair install but that leads to other issues, like getting all the updates re-loaded.
del-6gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #del-2
hard job to install Win98SE with all needed drivers
@diderius6... Dietmar...are you aware of the work done by the late R. Loew with win98? Google 'r.loew windows 98' and see what comes up. If you can't find anything I can get a Wayback Machine link for you.

Just found it:

⇗ https://archive.org/search.php?query=creator%3A%22Rudolph+R.+Loew%22
#4097juk777I welcome you, dear! Prompt, please, the worker acpi.sys for Windows XP x64 on Ryzen...
Thanks...
#4098MVoloshinHello, could you give me the links to most stable modded acpi.sys and storahci.sys versions, please?
del-7diderius6 ⇗ @dencorso

I tried a lot of browsers for Win98 SE.
The best one is the one you told about, Retozilla.
It is fast and shows every website.
But on youtube it cant show videos, I think because of HTML5.
But for daily use just just looking news,
Retozilla can be used in 2020:))
Dietmar
#4099diderius6⇗ @MVoloshin
Take a look at post
¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (255)
Dietmar
#4100gordo999
Zitat von ⇗ genieautravail im Beitrag ¶ #3822
XP displayed a message sayng that the USB hub doesn't have enough power for running the device...
⇗ @genieautravail  you could try an external USB hub that supplies its own power. The output current is independent of the input current from the USB port.
#4101ruthanHello,
thanks all for this work, especially Diderius6+Daniel+ MovAX0xDEAD , i started with XP on Z370 (GB Aorus ultra gaming) (Z170 was easy) almost 2 years ago, later i tested Daniels moded bioses. I remember when i after zillion tried made Xp install on with with automated install because even PS/2 port where not working.. and later managed to integrate network drivers and connected through vnc or remote desktop and slowly made thinks working to make possible actually used machine..
 Well as maybe some know my goal, is multiboot gaming machines, i made some fastest and as possible DOS with PCI Sound to Windows 7 x64 machine(max is X58/ X79), i have on every machine Linux (or more of them) too and on main ones have Mac OS too.
Gaming is important because otherwise you can just use virtualization(real one - Vmware Workstation/Fusion), which is working quite good for non gaming stuff. I spend also some time with Unraid, where you can passthrough videocard to guest. Its working, but has lots of disadvantages.. and only main advantage - you can run on one machine multiple - machines in parallel without rebooting. I dont follow last 2 years progress but there wasnt possible to simply switch USB devices, so i needed lots of cables and KVM switches.
 Main difference which is generation my goal, is that you need much more PCI-E slots to have some special devices for target os. So you need multiple videocards (XP support ends with Geforce 9xx), sounds card, disk controllers and every saved slot big victory (good placement you components because videocards are often is 2 slots.. is quite puzzle game). So for example make integrated lan in XP matters.
From gaming perspective is XP 64 dead end, so im not interested.

  I read whole thread, here are my notes, sorry for lenght, but it was lenghty reading too, so im giving you your own medicine:)


1) This thread is behemoth, can some make some Wiki or at least some Google shared docs with some main info and keep there links to all important and proven working patches? Its disable by Forum rules, we can make at least some mega summary post amd the start of some thread.
 Maybe we can add some collection of lastest XP drivers or something like that.

2) What you thing about X299 platform, there is lots of Z370 / Z390 users, but there are even more power CPUs (yeah nosier too, you need water cooler) and much more PCI-E lines 16 vs 28/44 - what is great epecially for multiboot machine, when you need 2/3 parallel GPUs and M.2 disk are PCI-E eaters too.

3) Why PAE matters? If you have really adjusted system with lots of apps, from my experience PAE mode (old Dibya patch) with more than 3.X GB of RAM is much
smoother and there is less micro freezes, when is working.
 And believe me that i have 2 quite loade and fully configured system images ~15 years old (Z97,X99,X58,it ran on AM3,FM2,Z170,X99 too), second 12 years old (Coffelaked now) XP installs, which survived lots of CPU and MB changes (P2P and P2V tools are you friend, low level guys will tell that its just sysprep for dummies, but i dont need to do everything on lowlevel.). Because i really hate that you must reinstall it because of problem.. bla, bla.. and proven that there is other way, when there is will.
 If you think that for DOS PCI audio, you just need PCI slot (there are still Z370 MBS with PCI slot), you are wrong, there are details:
⇗ https://www.vogons.org/viewtopic.php?f=62&t=24769
⇗ https://www.vogons.org/viewtopic.php?f=46&t=63773

4) If im not wrong, there are still not intel 218,219?  It means that - 217 is ok? On MSFN, BearnWindows tried simply mod *.inf - no luck too. Some MB have Killer 2500 lan adapters (i read that depends on revision, which ones are ok?), can at least their drivers could be fixed for WinXP?

5) Other thing which make XP line mode problematic, manage someone get 3 monitors working (Nvidia 9xx cards supports i thing up 4 monitors)? I can manage do get working only 2 in XP, regardless of card, i thing that is Nvidia driver limitation.

6) There is lot of USB talk, but anything about USB firmware (and we are on win-raid:), at least for addon USB3 cards there are newer firmware, maybe this sometime could make a difference? BTW i dont see here much talk about NEC and Reneses USB3 cards they are working too in WinXP.

7) Is in some Device manager screenshots are both ACPI multi procand MPS multi proc.. Its it ok?

8) There was some Win98 talk, there main problem are really videocards drivers,because only very old cards are supported - you need some PCI-E gen1 - Geforce 6xxx (Geforce 7 even with Rloew patch is lost cause for gaming,Geforce 5 PCI-E / PCI are rare) or Radeon X300-X850 and even them are too modern for some games. Other problem is that at least some newer MBs (Z370) simply throw away PCI-E gen1 cards support and cant boot with them, simply behave as these cards are not pluged in.
If someone can fix it, or find some new MB, which is still suporting them, it would be nice.
If dont want mess with forcing OS to disable some gpu make other primary, what is half working (infamous dual dual stunt). You need Gigabyte or HP O.E.M MBs which are only ones which has in bios primary GPU slot selection - so you can make bios profiles per OS and with multiple display cables and monitor inputs or hdmi switches you can make it working fine.
 Only other solution and probably only possible future.. unless some direct GPU Passthroug of whole GPU to virtual machine is drive new open source GPU drivers from the scratch.
 New video cards have enough horsepower that you can waste u dunno 95% of its performance and even that performance would be greater that Win98 fastest videocards. Im a bit dissapointed that there are lots open source Linux graphics drivers, graphical API translators etc..but nothing for Win98.. ve have only generic 2D drivers, without any Direct3D/OpenGL support, i thing that is possible to write them.
   Otherwise there is lots of urban legends about that Win98 are not supporting PCI-E, its just lie - if you have drivers, its working at least - videocards, storage controllers and Nics can work.. Chipset drivers - for modern MBs, are not exists, but you dont need them, if want just have right names for devices are some null drivers (Lone Crusader made some package).
 You really need only storage drivers - unless you get generic 2MB/s transfers.. btw lost of disk benchmarks for Win98 just reporting non senses, just copy files.
 Rloews Sata and AHCI drivers (i tested them at least with Z170) are working fine, dont forget that in Win98 you have to enable DMA for every disk usually manually otherwise again - 2MB/s "fun".

9) Managed someone to boot modern Mac OS through Grub2, or only way is still Clover and other Mac specific bootloaders? rEFIfind alone is hell from my point of view.

10) There some MBs without PS/2 and its USB issue, there some some cheap PCI/ PCI-E cards, would be possible make them working with XP installer?

11) Regarding of 900 MB RAM in XP instead of 3 GB, i had this problem with some MSI X99 board (no moding or special ACPI needed).. Its just bad Bios design, there is some like memory map or areas and they are just made for much modern OS.. and make these problem with XP.
  Details are here:
  ⇗ https://msfn.org/board/topic/176845-xp-p...-available-why/
  In some supermicro manuals you can even find details, who these areas are designed on some MB, so it could be adjusted if you can mess with EFI code, unless is connected with bad HW design too.
  There is lots of claims that is GPU related, but i thing that is miskate, i did lot of testing that and usable memory was always the same regardless of used videocard.

12) DOS full screen hang its on Nvidia present even in Win98 - its never fixed old bug, i thing that you can simulate it even with classic vanilla XP install on old supported HW.

13) If someone care about last just supported without moding XP MB its B75, where PCI DOS sound is still working and it already has EFI (XP im booting in legacy mode) and primary videocard slot selection in case of Gigabyte. For installation you just need switch in bios storage controller to IDE.

14) Dos with Win98 even with 3dfx can be now covered quite good with PCem emulator,
and there is even progress on Vmare Dos SB16 emulation:
⇗ https://www.vogons.org/viewtopic.php?f=62&t=69314
 And you never know what QEMU will bring to table.. its probably most ambitious SW project with all its supported architectures.. but it strungle with missing Windows GUI and other things for years.

15) If searching some ultimate multiboot NIC, its Broadcom 5721 gigabit NIC, which is running from Win98-Win10, Linux too, unfortunately no MacOS afaik (i thing that it could be added to universal driver, but i wasnt able to reach author -
⇗ https://www.tonymacx86.com/threads/fakep...17#post-1887882 ), there are Mac OS Broadcom suppoted NIC, but this one is not added. On some MBs, is working even in pure Dos with native packet drivers (MS dos networking stack is crapp).

16) BTW Has someone working 10Gbit NIC with WinXP?

17) If want make install more smooth there nice cheap (<10$) ASM PCI-E 106x storage controllers, which IDE bios too, so you can bypass AHCI stuff install XP and care about storage controllers(Fernando drivers) later and have fallback possiblity.

18) I have bad memory, but for those who are still using CDs, im sure XP install worked fine with Rufus, Yumi or Sardu. ISO was loaded into ramdisk before installation. Im using same way for Win98 installs too.

19) Other not discussed problem here is non System GPT disk access from XP, its handy for share data. Im using paid Paragon GPT loader for it for years, its working fine, with most of disk controllers.
#4102genieautravail⇗ @genieautravail  you could try an external USB hub that supplies its own power. The output current is independent of the input current from the USB port.

No more issue with the latest release of WinXPPAE !
#4103YuriyCNWindows XP SP3 +  Intel RSTe AHCI/RAID driver v4.7.0.111 ⇗ Intel RSTe AHCI/RAID driver v4.7.0.1117 for Windows XP/Server 2003

1TB HDD drive (SATA 2):
Read speed = 100-110 MB/s; Write Speed = 80-100 MB/s

250GB SSD drive (SATA 3):
Read Speed = 180-200 MB/s; Write Speed = 85-90 MB/s

Windows 7 SP1

1TB HDD drive (SATA 2):
Read speed = 110-120 MB/s; Write Speed = 90-100 MB/s

250GB SSD drive (SATA 3):
Read Speed = 490-500 MB/s; Write Speed = 420-430 MB/s

Why does the SSD drive slow down on Windows XP?
Is it possible to increase disk performance?
#4104diderius6Hi,
I just succeed to install Win7 with all drivers, USB, sound, lan, wlan, grafik
on the nice notebook IBM T43 thinkpad.
Now I am going to Win 8.1 where I notice a problem with drivers for the IDE harddisk,
until now no solution
Dietmar

PS: On the Pentium M 770 you can enable the NX memory protect bit, which I think is necessary from >=win8.
#4105AbdullahTreesHello Guys!

I've installed Windows XP SP3 on a 2012 Laptop (HP Envy m6-1105dx) as I'm using it as a semi-portable retro-arcade machine. By using driverpacks and Easy2Boot, I've managed to make my system 90% usable. Everything works; from Graphics to Sound to Networking, and the speed is quite good too. There's just one problem: The laptop has 4 USB ports, 3 USB 3.0 ports and 1 USB 2.0 port. Only the USB 2.0 port works, and I'm trying very hard to install USB 3.0 drivers so I can at least use the USB ports like a USB 2.0 port for things like a keyboard and mouse, but to no avail.

According to Device Manager: Other Devices > USB Controller(Yellow Question Mark)
Hardware ID: PCI\VEN_1022&DEV_7812&SUBSYS_18A6103C&REV_03\3&2411E6FE&0&81
Hardware ID: PCI\VEN_1022&DEV_7812&SUBSYS_18A6103C&REV_03\3&2411E6FE&0&80


I've found drivers for my system from ⇗ here (USB 3.0/3.1 Drivers (original and modded)), pointed out to me by Fernando and IntiMD, but after following the instructions on the page (who knows, maybe I messed up somewhere?), I successfully installed the drivers for the Controllers, but I find no devices which accept the drivers in the folder 'for Hub'. The end result is that I have two unknown devices...

Other devices > [Yellow Question Mark] Unknown Device > Device Instance ID: AMDUSB30\ROOT_HUB30\4&8A736FC&0
Other devices > [Yellow Question Mark] Unknown Device > Device Instance ID: AMDUSB30\ROOT_HUB30\4&A1279A9&0

But I can't find drivers for these two. I tried searching DriverPacks with the Devices Instance ID, but it gives an error saying that the installation failed ⇗ cause the .inf file was made for Windows 95 or later (which doesn't make sense cause Windows XP IS after Windows 95). I'd appreciate any and all help on this issue: It's so frustrating to have a perfect Windows XP Setup with just one major flaw, unusable USB ports... Thanks in Advance :D
#4106diderius6Yesssa,
now I succeed to install win98SE, XP SP3, Win7, Win8, Win8.1, win10 32 bit from November 2019 on
the Thinkpad T43.
The problem was, that only Win7 likes to stay on the IDE harddisk together with XP.
When XP with ntldr is gone, you can install win10 on the IDE harddisk
Dietmar

EDIT: Seems, like I was happy to early: At the end of the Win10 installation the compi crashes with
Irql not less or equal, hm..
#4107ZixIs there anywhere all latest required files in one bundle? Id like to try on Ryzen, thank you all
#4108IntiMD⇗ @AbdullahTrees
⇗ https://www3.zippyshare.com/v/Njphl3Sp/file.html
Replace the original inf file from the 'for Hub' folder with the one in the link. The reason why this strange error happens is that there were no entries for NT 5.1 in original inf.
Let me know if this works, and if it was enough to make it work and behaves stable, then it would be nice to let Fernando know so as to update the pack (or alternatively add a modified package alongside it)

Zitat von ⇗ diderius6 im Beitrag ¶ #4106
Yesssa,
now I succeed to install win98SE, XP SP3, Win7, Win8, Win8.1, win10 32 bit from November 2019 on
the Thinkpad T43.
The problem was, that only Win7 likes to stay on the IDE harddisk together with XP.
When XP with ntldr is gone, you can install win10 on the IDE harddisk
Dietmar

EDIT: Seems, like I was happy to early: At the end of the Win10 installation the compi crashes with
Irql not less or equal, hm..


⇗ @diderius6 What exact Pentium M Dothan CPU model does this laptop have? In thinkwiki it is to be said that bunch of CPU models doesn't report the PAE and NX flags support, even though the core is said to support said flags.

Zitat
Physical Address Extension (PAE)
Most modern Linux distributions use PAE kernels which will fail to boot if this feature is not present in the CPU. The Dothan core is said to support PAE even though it doesn't report the feature to the operating system. As a workaround, kernel parameter forcepae can be used to successfully use PAE-kernels on any Dothan core.

All second generation Dothan models with a 533 MHz FSB and some newer model first generation Dothan cores with a 400 MHz FSB do report PAE and NX in their CPU flags. All others must use the workaround.

Note: As a direct result, when the CPU flag PAE and NX (No eXecute, the XD-Bit) is not reported, 32-Bit-Windows starting with Windows 8 will also not run (Windows doesn't have a forcepae option), leaving 32-Bit Windows 7 the last supported Windows operating system on Pentium M CPUs before the second generation Dothan core.

source:⇗ https://www.thinkwiki.org/wiki/Intel_Pentium_M_(Dothan)



You might also want to fool around with the other supported Windows 10 builds (especially the LTSC or LTSB ones: 2019 (1809), 2016 (1607) and 2015 (1507); Check these links for comparision of each editions: ⇗ https://old.reddit.com/r/Windows10LTSC/wiki/comparison + ⇗ https://forums.mydigitallife.net/threads...019-ltsc.79358/; Worth lurking the entire LTSC wiki on reddit. nice unofficial knowledge base)

#4109gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #4106
The problem was, that only Win7 likes to stay on the IDE harddisk together with XP.
When XP with ntldr is gone, you can install win10 on the IDE harddisk

⇗ @diderius6  ....Dietmar, the problem seems to be with the EFI BIOS used by W10. It will allow W7 to be dual booted but not XP. My W10 installation initially used a BCD boot system but somehow, while playing with it, I converted it to an EFI bios. Now I am looking for a way to convert back to a BCD boot system. IF W10 is BCD-based it should allow a dual or triple boot with XP, would it not?

I use separate drives for each OS. I have not yet tried to triple boot them from the same boot menu and I don't care if I do. I am currently dual booting W7 and W10, and when I need XP, I unplug W7 and W10 while running XP by itself.

Here's an article that talks about this situation.

⇗ https://neosmart.net/wiki/easybcd/dual-boot/windows-xp/installing-second/
#4110diderius6⇗ @IntiMD ⇗ @gordo999
I have the Pentium M 770, 2.13 GHz with FSB533 (TDP: 27 W), with XD-Bit.
I put all UEFI away during install.
Now I think, the BSOD very late during install of Win10 vers. 1909
belongs to this special Win 10 32 bit version.
Win 8 pro 32 bit I can install without problems on the T43, see photo

Dietmar

 

Page 275

#4111gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #4110
Now I think, the BSOD very late during install of Win10 vers. 1909
belongs to this special Win 10 32 bit version.
⇗ @diderius6 ...I am trying to install ver 1909 right now as an update on an old laptop. Don't have BSOD but it complains about my system being on a USB device. Research tells me it's likely related to old updates being incomplete and one solution is to run the W10 troubleshooter for Windows Update. It did find issues.
#4112XPLives⇗ @Fernando, ⇗ @Lost_N_BIOS
--- Win-Raid moderator attention needed ---
This XP / 2003 32-Bit thread is already bloated enough to not include 98SE posting.

Off topic thread/posts must be moved to where it will be much easier to find and flourish.

Move the following posts to the proper designated thread:
OS related Topics » DOS/Windows 3.X/9X/ME - Retro Gaming

⇗ DOS/Windows 3.X/9X/ME - Retro Gaming

New thread title of start post #4084 to be #1:

Post #1 (original #4084)
Installing 98SE to Windows 10 - ThinkPad T43

Creator:
Diderius6

All Posts below to be relocated:

Post #1
#4084 | RE: Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware

#4095 | RE: Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware

#4098 | RE: Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware

#4099 | RE: Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware


Post #5
#4100 | RE: Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware

#4101 | RE: Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware

#4102 | RE: Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware

#4105 | RE: Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware


Post# 9
#4108 | RE: Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware


My Dencorso 2 cents $0.02.


XPLives

EDIT by Fernando: I have partly done what you requested. The previous posts #4084, 4095, 4098-4102 and 4105 have been moved into a separate thread named "[How to] Install Win98 onto a ThinkPad T43" within the Sub-Forum "DOS/Windows 3.X/9X/ME - Retro Gaming". Regarding the other posts you have listed I am unsure, because they are about other Windows Operating Systems as well.
#4113ruthanWell i personally liked it more before only with space moderation.. sometimes wild is better. I though about why such thread is no elsewhere in positive way.. for example on MSFN.. and it was because of lack of moderation.
 I dont mind few post about quantum computers here etc. I dont modere anything, unless some vulgar posts. That attitude to judge someones posts and telling him that some post is not good enough, it dont feel right to me.
 Try to clean 4000 post thread, good luck.
#4114Fernando
Zitat von ⇗ ruthan im Beitrag ¶ #4113
I dont modere anything, unless some vulgar posts. That attitude to judge someones posts and telling him that some post is not good enough, it dont feel right to me.
Nobody told anybody, that his/her post(s) are not good enough, but each Forum member should pay attention, that his/her contribution matches the title of the thread and the title of the related Sub-Forum.
A Forum visitor, who wants to know how to get Win98 installed onto a modern PC/notebook, will probably not search within this thread.
#4115XPLives⇗ @ruthan

Zitat von ⇗ ruthan im Beitrag ¶ #4113
Well i personally liked it more before only with space moderation.. sometimes wild is better. I though about why such thread is no elsewhere in positive way.. for example on MSFN.. and it was because of lack of moderation.
 I dont mind few post about quantum computers here etc. I dont modere anything, unless some vulgar posts. That attitude to judge someones posts and telling him that some post is not good enough, it dont feel right to me.
 Try to clean 4000 post thread, good luck.


In your original post, "1) This thread is behemoth, can some make some Wiki or at least some Google shared docs with some main info and keep there links to all important and proven working patches? Its disable by Forum rules, we can make at least some mega summary post amd the start of some thread.
Maybe we can add some collection of lastest XP drivers or something like that."

You were complaining about the thread being a behemoth which I do not disagree.  The XP thread which was previously not titled "Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware" but later I suggested it to be renamed to the current thread title.  But In addition, the thread posts was around 2500 then and I wanted to help separate the thread into searchable sub-topics at the time which it could be broken into such as ACPI, USB 3.0, and a few others I forget at the moment.   However since the moving of such messages required moderator access it would not be possible as well as voiced opposition from Dencorso and Diderius6 said it would kill the thread so I was unable to do what you had hoped and why the thread is the way it is currently.  So unfortunately this burden you are expressing cannot be resolved.  I no longer have the time to carefully dissect it properly and it has since then bloated to 4000 messages.  So if you had wanted the proper separation of the thread into a more readable and manageable form for users that time seems to have passed when you were away. :(

Had more users spoken up in support of me fixing the thread properly what you asked for would have happened.  Sorry is all I can say.

The moving of those 98SE OS type messages is good as even other OS threads could use activity.  It is already tough enough for a newcomer to read through 4000 messages to get the necessary information they wanted.  As for the off topic post about quantum computers if it is a single post I'm sure it will slip by and probably not a huge issue.  But since the series of 98SE related posts and followups began in rapid succession it was better to suggest moving it into the appropriate OS sub topic that was already created and available over a year ago to be used should more follow up posts related to the same 98SE topic be added to that topic would be surely welcomed there.  There was a danger that more follow up 98SE type posts would continue to be added into the XP / 2003 thread.   Why make it harder for newcomers to now have to sift through both 98SE and XP messages?  Now it is properly relocated by Fernando people can find and post more on the same topic as much as they want.  So only small preventative measures can be done if caught early than waiting weeks/months when hundreds of posts have happened.  This time it was caught early enough.

Also your post should have been moved too but there was XP related comments so I assume Fernando decided it was in the middle and left it there.  Since I had intended to respond to your post regarding the 98SE subject to prevent adding more bloated messages to the XP thread now I cannot.  I might try and quote those parts of the message and post in the 98SE subtopic for you.

I do disagree that MSFN does not moderate their own threads.  I've seen plenty of messages posted there in the wrong topic moved or deleted.  In fact I think they are more stringent on this.  It's also possible they have become more relaxed on this because most of the moderators are funding the donations to keep that site alive.  But I've seen them ban people who don't follow the rules so I disagree again they don't pay attention.

2) X299 should work with XP 32-Bit.  The XP Pro 64-Bit would require a modded ACPI.sys or BIOS MOD.  Again this is speculation based on how Z370 works which is newer than X299.

3) PAE.  Just use the standard XP 32-Bit and Ramdrive software or use Server 2003 32-Bit with proper PAE memory access.  Don't mess with the hacks unless you don't intend it to be used on a stable 24/7 system or just used for non serious nature.

4) i-218 I believe driver exists.  i-219 No luck.

5) Try using nVidia and AMD (1 card each).  Should avoid driver conflict. Although I noticed last AMD driver causes problem with nVidia cards BSOD.

6) Just use USB 3.0 PCIe card if you can afford.  You can try modded USB 3.0 driver from DK but ymmv on stability/functionality.

7) Not sure why both.  Usually either MPS or ACPI is shown.

8) Will address in a 98SE post for you later.

9) Can't answer no hackintosh experience yet.

10) Not sure what you are asking here can you rephrase?  All I can say is PS/2 Keyboard Port on Rear Motherboard you should be fine.

11) This is caused by the integrated Intel HD Graphics Shared Memory setting.

12) Will address in a 98SE post for you later.

13) B75 should be Ivy Bridge so Z77 should be similar - Which cards did you test?  -- This may need to be expanded further and address in a 98SE post for you later.

14) Working on making V5 work on Coffee Lake not emulated.

15) Realtek NIC has MAC OS driver too.

16) No haven't looked.  Try looking for earliest PCIe 10Gb NIC released.

17) Could not get it to recognize internal PCIe SATA card.  You had success?

18) Just stick to SATA optical disc drive.  USB will create possible issues and USB 4.0 will most likely.

19) Paragon no longer sells this product.  Also if I remember correctly you cannot boot off the drive over 2TB in size correct?
#4116diderius6Hi,
I just install Win10 32 bit version 1507,
which is the very first one from summer 2015. It installs without any problem on the Thinkpad 43.
When you take a look at the differences in those Win10 versions,
oha, they changed a lot, see

⇗ https://en.wikipedia.org/wiki/Windows_10

Even needed ram size has changed from 1 GB => 2 GB
and free space on harddrive from 16 GB => to 32 GB
and support for older CPUs is gone
Dietmar

PS: 3Dmark2001 shows always maximal values only under XP SP3, no matter what other OS tell..



This 1507 version of win10 32 bit is not slow on this compi from feeling!

EDIT: On a T42 with Pentium M 735 processor 1.7 GHZ (Dothan) it is not possible to install any Win10 32 bit.
Very first in the setup process via DVD it claims, that you have to use a processor with RAM > 4GB PAE enabled.
#4117ruthan
Zitat von ⇗ Fernando im Beitrag ¶ #4114
Zitat von ⇗ ruthan im Beitrag ¶ #4113
I dont modere anything, unless some vulgar posts. That attitude to judge someones posts and telling him that some post is not good enough, it dont feel right to me.
Nobody told anybody, that his/her post(s) are not good enough, but each Forum member should pay attention, that his/her contribution matches the title of the thread and the title of the related Sub-Forum.
A Forum visitor, who wants to know how to get Win98 installed onto a modern PC/notebook, will probably not search within this thread.


 Well, you are the boss, i undestand what are of saying.. but it has theory and praxis problems.. or at least clash of few good ideas and intentions.. Some small adjustment you my original sentence would be not good enough for this thread :) That is how i actually meant it.

 For example there were some Diderius post about notebook bios downgrading.. and you can say that its not WinXP related, but in wider context i was important to know, its progress because it blocked some XP fixing progress.
 Or now, i would like to post some lines about MacOS and Win98, because its part of my multiboot projects which are related to XP too, because all OSes has to work on machine and it has some consequences and synergii.. Boot how to multiboot problem divide to OS related threads? I never would be only about 1 OS, you can say that you can make whole other thread.. but most of the info this would be related to some OS, in this case to XP.

 I simply trying to say pleas dont try to overmoderate it.. it was nice. I can speak for other, but there people as me which are quite sensitive to it and love much openness, freedom as is possible.
  
 End of philosophy intermission.
#4118ruthan⇗ @XPLives

1) I wasn't complaining.. i thing that i described reality, that is why there are lots of new people, which are repeatly asking the same, because they dont want to spend at least day to read all messages.
 I thing that some summary document with link to this discussion will not kill this thread i think it could help, i personally have problem to keep track all files and and i had to same them to my system with number of post, where it they were posted.. There were also some replacements to not use old files, which is not bad idea, but it made tracking even worse.

 I thing that bigger question is who will create such document, its few hours of work for first version and some additional work later.. I was probing if there is not big opposition to it at first.

MSFN - i would say that is more professional.. with good and bad thing that comes with that.. i like it less professional, less strict at least in my inner feeling.. i often a bit under pressure even with its file uploads limit (i dunno if this the same), but i was 5/10 MB per user and all posts.. and there was some problem to include Dropbox pictures to post to bypass it.

2) That my idea too, but i would love to hear some success story, before i would again first lemming to try it, it could be quite expensive.

3) PAE as wrote old Dibya PAE patch, hack.. how you name it, made system smoother (maybe less swapping, maybe memory resource management worked differently - i dunno design details).. and less stable too, yeah im greedy so i would like to have bough, or lets say both alternatives to choose from Boot.ini. Ramdisks are nice, but for me smooth system is much better.

4) Some link would be nice (ideal material for that wiki:), otherwise its shame that manufacturers in specs are wring just Intel Gigabit, usually no details..

5) Ok thanks for info, i dont have enough slots and i bit afraid how games will reacts.. because there is probably nothing like OS level utility to make some videocard primary for games.. it has also some noise and power negatives.. if there is no way to make it running on 1 card or 2 nvidias, i will pass. I know some bios have some multi monitoring through iGPU, but it also seems as lots of hassle.. like optimus on Notebooks. I dunno if it ever worked in XP. If im not wrong Intel bough for it Lucid Virtu or something like that and it wasnt success story.

6)  Too much shortcuts - what is "DK but ymmv on stability/functionality".. one card, integrated Intel would be nice, because almost anybody have it like Realtek HD and NIC. Otherwise i like ASM cards, they where working on XP with even MB, even before modding, but i found only hard with 2 USB ports (i dunno how much hassle is use USB3 hub?) Opposite are Nec/Renesas cards.. i saw one with 4 USB ports, 1 internal and even with USB3 header for frontpanel.. I never saw ASMedia card with lots of ports.

10) Newer MBs without any PS/2 ports.. its new trend. But there are some PCI-E PS/2 cards.. but i dunno if they are working within some happy scenarior or just some chinese ebay not working stuff, it they are legit.. it would nice to make them working with WinXP installation and OS.

11) I would like to see some proof.. for example i had it X99.. if my memory is working there is not even integrated iGPU within 5960X which i had. I tried lots of external videocards, even some few MBs PCI-E and i still had 900 MB and some Supermicro manual.. for which i dont have now link, really the end explained why, there are some memory areas / spaces.. and they are in 4GB zones, because nobody counted with 32 bit OS usage, i thing that this problem was present even with 32 bit Linux.

13) I already linked Vogons thread about it.. there is my compatibility sheet in addition and Kamerat chipset vs videocards matrix (quite few test results are from me) - there are in these threads. For such only need MB boards, are only 2 working lines of cards.. Yamaha 7x4 and Aureal Vortex 1/2 nothing else.
 ⇗ https://docs.google.com/spreadsheets/d/1...c2xhYKK4l0/edit  
⇗ https://docs.zoho.com/sheet/published.do...04bf92a9209e034 // Multiple tabs - as in Excel.
⇗ https://www.vogons.org/viewtopic.php?f=61&t=61044  // My ultimate thread about that, lots of bla, bla..:)

14) V5 - do you need Vooodoo 5 - in some PCI variant?

15) Intel too, even USB- Realtek lans.. but i never tough that its good idea had two 2 nics in machine with connected cables.. which are not in some team etc.. because was afraid what they would be stealing of connection and switching.. but yeah its true, that you can disable them in Windows, in Linux you can blacklist one too.. Im not only sure about router mac address to force static ip address.. if you can 2 Mac address to 1 static ip - i thing that minimally some routers not allow it.

16) There are some old Intels 10Gbit for servers, but they are i a bit expensive on ebay 50-100$ to just try, but once there would be cheaper 10Gbit router, it would make sense.. were stuck with 1Gbit for how much 15 years or so?

17) I never had problem there, its like SCSI, just connected only disc on it and it booted like from on board IDE port.. At least some Z97 MBs, had some controller even integrated on board.. these were fancy times - where on MBs were multiple USB3 controllers from different vendors and 2 storage controllers. I still have Z97 Asrock Extreme 4 MB machine with such combo and Marwell controller.. which is even booting from M.2 in PCI-E slots and its able to make 2500 MB/s, on board M.2 slot is limited to 1GB/s. its storage controller lovers paradise.

18) I did lots of reinstall so multi booting USBs (Sardu was first i thing which massively did it) are great with CDs i always a bit afraid that problems is connected with some reading errors.

19)  AFAIK i read somewhere that Paragon guys are some ex Russian military guys which back in time made some Russian Dos or something like that.. Try to mail them, they will probably bundle it to some other product. XP cant boot from GPT, it needs MBR. I had this issue always connected with EFI, because it came with same time, i thing that EFI is needed to boot form GPT, there are if im not wrong some work around.. same as for M.2 boot for MBs which are not working it. agent_x007 on Vogons.. i thing had something like boot clover from some flash to boot M.2.. I saw him in this thread too.
  Im just using GPT loader for data disk and here 4 TB disc is working fine.
#4119ruthan⇗ @diderius6
Nice, if remember correctly somewhere around 16xx version, MS just ditched silently AGP support and maybe other stuff..
#4120diderius6⇗ @ruthan

The whole chipline Pentium M was canceled on newer win10 versions,
see
⇗ https://msfn.org/board/topic/177957-unsu...comment-1156627

Dietmar
#4121gordo999
Zitat von ⇗ ruthan im Beitrag ¶ #4117
I never would be only about 1 OS, you can say that you can make whole other thread.. but most of the info this would be related to some OS, in this case to XP.
⇗ @ruthan ...since I joined this thread, not very long ago, the focus has been on getting XP working on 'modern systems'. From my understanding it's not just about XP itself. I got into a disagreement with one poster over what 'modern' meant and I realized afterward that my focus had been too narrow. So, I understand your point.

On the other hand, ⇗ @diderius6 has spent 99.99% of his time focused on modding files for XP on modern systems, as have the other regulars in this thread, and he has done great work. He has also tried to make the modded files work on different XP systems then he branched out slightly to try it on W7 and W98 systems. In my opinion, he has earned the right to introduce off-topic discussion if he feels like it, and when he has done so, it has a been brief. In general, no one has gone off-topic most of the time.

I can understanding ⇗ @Fernando narrowing the focus. I mean, look at the length of the thread just focusing on the topic. It could get totally out of control if the focus was lost. I was attracted to the group because I understood the difficulty of getting XP to run on a modern system like my Intel B360 chipset. I had been told it could not be done and I am amazed how easily it could be done with a modded ACPI and Storport driver. The process of development of the modded drivers has come from certain guys focusing for lengthy periods at a time on the problems. Had this group been open to a general discussion on XP on any system, I don't think that would have happened nearly as quickly.
#4122gordo999
Zitat von ⇗ ruthan im Beitrag ¶ #4118
I wasn't complaining.. i thing that i described reality, that is why there are lots of new people, which are repeatly asking the same, because they dont want to spend at least day to read all messages.
⇗ @ruthan ...that's pretty well what I did and I did it because I have belonged to a reversing group for 15 years who won't even talk to you unless you demonstrate that you have educated yourself on the subject.

I am not speaking through my hat. I am currently involved in trying to mod files from a reversing POV and it can get frustrating real fast. There is a steep learning curve and even though I have experience with import tables it's like learning a new language when you start dealing with export tables and two different OSs. I am spending hours and hours just researching and to hear you complain about having to read through this entire thread a bit amazing. Not knocking you, just wondering how you can learn anything about this topic without doing that. I can't count the number of times I have been forced back to the bottom of the hill to start climbing a steep learning curve. That's why I have little patience for those who show up asking for links without showing any other rinterest or ability in the field.

Over the years, I have noticed new people showing up at our reversing site asking for cracks, which we don't do. We do reversing for the joy of it but we are willing to help newbies who want to learn. The next step up from those asking for cracks is people who want a quick fix for a crack. They are willing to do a minimal amount of work but they want everything right now. We won't help them till they show they have done the work and are stuck on a certain point.

It bugs me personally when people suddenly show up asking for links. It's not like you need to read the entire thread, most of the links required are in the last third of the thread. You could skim through those pages and find not only the links, but why they work and what to watch for. I mean, why should the experts in here, and I am not one of them, feel obliged to stop what they are doing to produce links for those to lazy too dig for themselves. It amazes me that the experts do take the time to supply the links, showing they are dedicated people. I also find it rude to make such requests without otherwise participating in the group.

I learned by doing. The first time I fired XP up on my 300-series chipset, I got nothing. It's what I expected.Then I graduated to an 0XA5 error which I learned was related to an ACPI problem. One of the modded ACPI files from this group fixed that. Then I graduated to an 0x7C error which turned out to be a SATA driver issue. Another modded driver from here fixed that. Typically, what you get from people demanding links to modded files is them coming back complaining about other errors and how to fix them. In other words, they have no idea what they are doing and need someone to hold their hands and lead them through it.

I don't even mind doing that much of the time provided that person is capable of helping themselves. Many are not and it gets tedious going over and over the same subject when you know that person has little interest in learning, or helping themselves. In other words, you need to distinguish the leechers from those willing to learn by doing their own work. I would suggest that reading through this thread to get a grasp of what is going on is a good start. You can skim through it, no need to read each and every post.
#4123IllenRegarding the whole UEFI booting topic, this looks like a very interesting project: ⇗ https://github.com/maharmstone/quibble

A custom Windows UEFI bootloader (made by the developer of WinBtrfs project), it is compatibe with each Windows version from XP to latest 10 (both x86 and x64). The list of planned features looks interesting as well. It is in early state at this point, and might not work in some cases, but still I think it is definitely worth a mention.
#4124XPLives⇗ @gordo999

Zitat von ⇗ gordo999 im Beitrag ¶ #4121
Zitat von ⇗ ruthan im Beitrag ¶ #4117
I never would be only about 1 OS, you can say that you can make whole other thread.. but most of the info this would be related to some OS, in this case to XP.
@ruthan ...since I joined this thread, not very long ago, the focus has been on getting XP working on 'modern systems'. From my understanding it's not just about XP itself.


Gordo999, yes you are a newcomer in a sense so you "missed" a lot of history of how these XP threads began.  I'll try to summarize it as best as I can.

Originally I was the only one who created the early XP threads relating to installing XP on SkyLake Z170 and later Modern Hardware on Win-RAID.   This was way back in 2017.  Other than the larger XP thread
"[Guide] Integration of Intels AHCI/RAID drivers into a Windows XP/W2k3/W2k CD"
by Fernando on how to install the SATA modified drivers there was no presence.  In fact there was no specific OS Sub-Group then.  I asked Fernando to create them and I gave him the names to use and he obliged:

This is how the "OS related Topics" Sub-forum was born.  Part of the reasoning was MSFN did not have a DOS dedicated category and most topics there were not actually geared towards gaming.  I focused more on the technical part of getting XP installed on Modern Hardware here and simplifying it.  There was no real gaming discussion.  Only recently I renamed my older topics because the large XP thread kind of took place of that and I've started to refocus back to gaming because all this technical stuff can get boring after 3 years.


[OS related Topics]
Windows 8-10/Server 2012-2019

Windows 7/Vista/Server 2008

Windows XP/2000/Server 2003

DOS/Windows 3.X/9X/ME - Retro Gaming


The thread you now know as "Windows XP/2000/Server 2003" was meant to be the new name of the thread I was going to reorganize properly that would have addressed an outline on the first post and links to specific important posts.  The original name of the thread was actually a post created by: deSSy2724 called "Windows XP SP3 32bit and modern PC parts".  It was a random user who came and posted for help.

What happened later was diderius6 and Mov AX, 0xDEAD began switching it into an ACPI discussion.  Later diderius6 used it as a dumping ground on his ACPI research.  I think around 1500 Messages time it shifted to USB 3.0.

This is the point where I had asked Fernando to separate the thread but it was not done so it continued and bloated to around 2500.  At this point I asked again and unfortunately due to Dencorso's opposition and Diderius6 saying it will kill the thread it was not done.

So while a post or two off topic may be okay it would make better sense to post it into a whole new thread on the material that way it's not making the congestion worse for new users to read through assuming it began taking a life of its own into hundreds of posts on 98SE in a week within the XP thread.

There was a lot of Windows 98 discussion in a series of post and there is already a dedicated Sub-Forum for it called "DOS/Windows 3.X/9X/ME - Retro Gaming" which would a better fit for them and "NONE" of the original posts were deleted but moved.

So stop harshing "Fernando" about his decision.  And please remember Fernando is retired.  Had I waited for it to bloat to 100 message or more it would be too much work for him.  If I was the moderator I would have done it transparently.  I asked him or LNB to move it because the last two times I asked Fernando when they were not done early enough and allowed to continue to explode and often times we now find comments on "where is this driver" kind of post quite often.  Had I had user support on fixing it this new Main thread would probably be around 1600 messages instead of 4000+ and the others topics USB 3.0 and others would have their own thread and the 1st post of the intended renamed "Windows XP/2000/Server 2003" thread would have had a 1st post that addressed all these issues you Gordo999 and Ruthan wanted oi find files easier.   So quit complaining about a few posts being moved regarding 98SE.  This is a preventative measure and they weren't deleted and no one is stopping you or anyone from posting more content relating to 98SE there.  It's also much easier to follow and Diderius6 can post more updates as he is the "creator" of that moved thread so he could change the 1st post into a guide for the Thinkpad T42 if he chose to later.

The biggest problem with the current thread "Windows XP/2000/Server 2003" was I was not able to split it into different threads and use the 1st post to create an outline.  I wanted both Diderius6 and Mov AX, 0xDEAD to write a guide on the modding BIOS process to fix the ACPI issues that other users could follow.  And later Daniel_K could have created his own thread for modding USB 3.0 drivers and how to do it.

I know for some it's more interesting to just accept a modified driver and test it but to me this isn't good enough.  But I'm more interested in how to do it myself and maybe improve upon it should one day these people are no longer here due to death or just not visiting any longer others can continue modifying it or this technique will be lost.

Zitat von ⇗ gordo999 im Beitrag ¶ #4121

On the other hand, @diderius6 has spent 99.99% of his time focused on modding files for XP on modern systems, as have the other regulars in this thread, and he has done great work. He has also tried to make the modded files work on different XP systems then he branched out slightly to try it on W7 and W98 systems. In my opinion, he has earned the right to introduce off-topic discussion if he feels like it, and when he has done so, it has a been brief. In general, no one has gone off-topic most of the time.

I can understanding @Fernando narrowing the focus. I mean, look at the length of the thread just focusing on the topic. It could get totally out of control if the focus was lost. I was attracted to the group because I understood the difficulty of getting XP to run on a modern system like my Intel B360 chipset. I had been told it could not be done and I am amazed how easily it could be done with a modded ACPI and Storport driver. The process of development of the modded drivers has come from certain guys focusing for lengthy periods at a time on the problems. Had this group been open to a general discussion on XP on any system, I don't think that would have happened nearly as quickly.



So while Diderius6 and many others have earned to right to post off topic stuff you also have to know when it should be moved so it doesn't get into a situation where it is harder to separate the posts without disturbing other posts.  For example a lot of the issues when people attach file to posts or links to other post numbers could be affected if these groups of 98SE related posts were moved much much later.

If this thread was only 30-50 messages in size maybe nothing would have been done.  You have to recognize it is now over 4000 posts in size and how long it will take for a new user to sift through that and if they don't understand English as their first language how much longer it will take.

Zitat von ⇗ gordo999 im Beitrag ¶ #4121

I got into a disagreement with one poster over what 'modern' meant and I realized afterward that my focus had been too narrow. So, I understand your point.


You're probably referring to YuriyCN.  He's a very stubborn and persistent user and was here in the beginning when my XP threads were born.  He wanted the USB 3.0 ports working but even at the time the best recommendation was to use a USB 3.0 PCIe card to solve his problems.  And I wondered why hasn't he simply bought one during the 2 years since then till now.  Hopefully the DK driver he's using is working well for him but I really don't know how reliable it is for him.

The term "Modern" meant Z170+.  That was the intent back then when I wrote "Modern" in the XP thread titles. So he is correct in posting to still finding help with his Z170.  It doesn't mean it has to be a Z370/Z390.  In fact I suppose if you really wanted to know what I considered modern it would be SkyLake, Kaby Lake, and Coffee Lake and whatever next gen Intel puts out in 2020.  But today the meaning is anything that XP can't be installed to and work properly with ACPI.  I originally had XP threads targeted for SkyLake, Kaby Lake, and then Coffee Lake.

So the thread you know as "Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware" is incomplete in the way I had intended.  The new name was left on it instead of reverting it back to the original deSSy2724 thread called "Windows XP SP3 32bit and modern PC parts".

Now you have your answer as to what "Modern" meant and to stop blaming Fernando as if he did not listen to me in the beginning there would be NO XP THREADS to complain about!  In the beginning I also did a lot of redirecting to this site to drive traffic as best as I could.  It seems to have paid off and eventually diderius6 began posting frequently here and also advertising the threads.  But it was a real slow start for a long time.


XPLives
#4125ruthan
Zitat von ⇗ Illen im Beitrag ¶ #4123
Regarding the whole UEFI booting topic, this looks like a very interesting project: ⇗ https://github.com/maharmstone/quibble

A custom Windows UEFI bootloader (made by the developer of WinBtrfs project), it is compatibe with each Windows version from XP to latest 10 (both x86 and x64). The list of planned features looks interesting as well.

 State - proof of concept, no real list of features, but big todo list and donate link.. - Im skeptic.

 

Page 276

#4126XPLives@Ruthan
Zitat von ⇗ ruthan im Beitrag ¶ #4118
@XPLives

1) I wasn't complaining.. i thing that i described reality, that is why there are lots of new people, which are repeatly asking the same, because they dont want to spend at least day to read all messages.
 I thing that some summary document with link to this discussion will not kill this thread i think it could help, i personally have problem to keep track all files and and i had to same them to my system with number of post, where it they were posted.. There were also some replacements to not use old files, which is not bad idea, but it made tracking even worse.

 I thing that bigger question is who will create such document, its few hours of work for first version and some additional work later.. I was probing if there is not big opposition to it at first.

MSFN - i would say that is more professional.. with good and bad thing that comes with that.. i like it less professional, less strict at least in my inner feeling.. i often a bit under pressure even with its file uploads limit (i dunno if this the same), but i was 5/10 MB per user and all posts.. and there was some problem to include Dropbox pictures to post to bypass it.

2) That my idea too, but i would love to hear some success story, before i would again first lemming to try it, it could be quite expensive.

3) PAE as wrote old Dibya PAE patch, hack.. how you name it, made system smoother (maybe less swapping, maybe memory resource management worked differently - i dunno design details).. and less stable too, yeah im greedy so i would like to have bough, or lets say both alternatives to choose from Boot.ini. Ramdisks are nice, but for me smooth system is much better.

4) Some link would be nice (ideal material for that wiki:), otherwise its shame that manufacturers in specs are wring just Intel Gigabit, usually no details..

5) Ok thanks for info, i dont have enough slots and i bit afraid how games will reacts.. because there is probably nothing like OS level utility to make some videocard primary for games.. it has also some noise and power negatives.. if there is no way to make it running on 1 card or 2 nvidias, i will pass. I know some bios have some multi monitoring through iGPU, but it also seems as lots of hassle.. like optimus on Notebooks. I dunno if it ever worked in XP. If im not wrong Intel bough for it Lucid Virtu or something like that and it wasnt success story.

6)  Too much shortcuts - what is "DK but ymmv on stability/functionality".. one card, integrated Intel would be nice, because almost anybody have it like Realtek HD and NIC. Otherwise i like ASM cards, they where working on XP with even MB, even before modding, but i found only hard with 2 USB ports (i dunno how much hassle is use USB3 hub?) Opposite are Nec/Renesas cards.. i saw one with 4 USB ports, 1 internal and even with USB3 header for frontpanel.. I never saw ASMedia card with lots of ports.

10) Newer MBs without any PS/2 ports.. its new trend. But there are some PCI-E PS/2 cards.. but i dunno if they are working within some happy scenarior or just some chinese ebay not working stuff, it they are legit.. it would nice to make them working with WinXP installation and OS.

11) I would like to see some proof.. for example i had it X99.. if my memory is working there is not even integrated iGPU within 5960X which i had. I tried lots of external videocards, even some few MBs PCI-E and i still had 900 MB and some Supermicro manual.. for which i dont have now link, really the end explained why, there are some memory areas / spaces.. and they are in 4GB zones, because nobody counted with 32 bit OS usage, i thing that this problem was present even with 32 bit Linux.

13) I already linked Vogons thread about it.. there is my compatibility sheet in addition and Kamerat chipset vs videocards matrix (quite few test results are from me) - there are in these threads. For such only need MB boards, are only 2 working lines of cards.. Yamaha 7x4 and Aureal Vortex 1/2 nothing else.
 ⇗ https://docs.google.com/spreadsheets/d/1...c2xhYKK4l0/edit  
⇗ https://docs.zoho.com/sheet/published.do...04bf92a9209e034 // Multiple tabs - as in Excel.
⇗ https://www.vogons.org/viewtopic.php?f=61&t=61044  // My ultimate thread about that, lots of bla, bla..:)

14) V5 - do you need Vooodoo 5 - in some PCI variant?

15) Intel too, even USB- Realtek lans.. but i never tough that its good idea had two 2 nics in machine with connected cables.. which are not in some team etc.. because was afraid what they would be stealing of connection and switching.. but yeah its true, that you can disable them in Windows, in Linux you can blacklist one too.. Im not only sure about router mac address to force static ip address.. if you can 2 Mac address to 1 static ip - i thing that minimally some routers not allow it.

16) There are some old Intels 10Gbit for servers, but they are i a bit expensive on ebay 50-100$ to just try, but once there would be cheaper 10Gbit router, it would make sense.. were stuck with 1Gbit for how much 15 years or so?

17) I never had problem there, its like SCSI, just connected only disc on it and it booted like from on board IDE port.. At least some Z97 MBs, had some controller even integrated on board.. these were fancy times - where on MBs were multiple USB3 controllers from different vendors and 2 storage controllers. I still have Z97 Asrock Extreme 4 MB machine with such combo and Marwell controller.. which is even booting from M.2 in PCI-E slots and its able to make 2500 MB/s, on board M.2 slot is limited to 1GB/s. its storage controller lovers paradise.

18) I did lots of reinstall so multi booting USBs (Sardu was first i thing which massively did it) are great with CDs i always a bit afraid that problems is connected with some reading errors.

19)  AFAIK i read somewhere that Paragon guys are some ex Russian military guys which back in time made some Russian Dos or something like that.. Try to mail them, they will probably bundle it to some other product. XP cant boot from GPT, it needs MBR. I had this issue always connected with EFI, because it came with same time, i thing that EFI is needed to boot form GPT, there are if im not wrong some work around.. same as for M.2 boot for MBs which are not working it. agent_x007 on Vogons.. i thing had something like boot clover from some flash to boot M.2.. I saw him in this thread too.
  Im just using GPT loader for data disk and here 4 TB disc is working fine.


   

1) First I didn't say it would kill the thread.  But at the time Diderius6 said it would kill the thread but no further explanation of what he meant.
Also the messages are now 4000+ and all these things would be easier if the thread could be separated properly once then a proper 1st page could have been done for each thread.  For example ACPI, USB 3.0, et cetera could be moved out and let the main body remain for more general XP troubleshooting help.  And trust me had I been able to fix the thread at 1500 messages total I think it would have been much easier.  There are too many ongoing life issues right now to devote to it any further.  The best I could do was create specific threads of files that I tested that works to make it easier to find.  For example DK's ACPI.  The person that normally would have handled it has retired. (Fernando).  And LNB is already I assume pretty busy with everything else that happens on Win-Raid.  The only suggestion I had at the time was to get temporary moderator rights to fix it as fast as I could.  So at the moment no matter how much we want something then it's dragged on too long/late to fix it now.

MSFN interface I don't like as much to use compared to here.

2) Well don't do it.  X299 runs too hot for fanless.  X99 is a better project.

3) Server 2003 is very stable.  I think XP is stable too just depends if you need more memory for programs where it suffers.  I haven't yet gone the Dibya patch yet.

4) I know some prefer to use onboard rather than internal NIC.  If slot real estate is an issue then get USB ethernet instead.

5) Better to get an older graphics card that works in DOS->98SE>XP and use one card only if possible.  Less headaches.  Set up a separate newer machine for XP->W10 for higher performance.

6) Asmedia lacks 4 port cards which is kind of limiting.
DK = Daniel_K
ymmv = another way of saying test it out and see what happens.

10) PCI-E PS/2 cards are a waste.  You have to install the driver to use them.  Buy one and see if it is true.  I think they will NOT work without the driver installed first.

>>>11) I would like to see some proof.. for example i had it X99.. if my memory is working there is not even integrated iGPU within 5960X which i had. I tried lots of external videocards, even some few MBs PCI-E and i still had 900 MB and some Supermicro manual.. for which i dont have now link, really the end explained why, there are some memory areas / spaces.. and they are in 4GB zones, because nobody counted with 32 bit OS usage, i thing that this problem was present even with 32 bit Linux.<<<
I tried Haswell Xeon CPU in XP (no iGPU).  I seem to recall having lots of memory same as Ivy Bridge or more since no iGPU.  I will have to double check again sometime.  X99 I have not tested maybe list the Make Model you bought tested this?  This is a future project of mine.

13)Yamaha 7x4 and Aureal Vortex 1/2
Yes but can either of these cards boot up and play Sound Blaster digitized voice in native DOS not inside 9X Command Prompt window.
And what is the newest Intel / AMD chipset tested to work?

14) Only PCI versions are worth trying but I noticed a lot of PCI cards do not work properly in new motherboards (sound cards) are an example.   There is an AGP to PCIe mod / adapter I heard for V5 6000.

15) Realtek ones seems to have better OS support and cost less.  There is a dual ethernet port version I saw on eBay if you need team.

>>>16) There are some old Intels 10Gbit for servers, but they are i a bit expensive on ebay 50-100$ to just try, but once there would be cheaper 10Gbit router, it would make sense.. were stuck with 1Gbit for how much 15 years or so?<<<
Which is the Intel Model for it?  I'll see if I can find it cheaper.

>>>17) I never had problem there, its like SCSI, just connected only disc on it and it booted like from on board IDE port.. At least some Z97 MBs, had some controller even integrated on board.. these were fancy times - where on MBs were multiple USB3 controllers from different vendors and 2 storage controllers. I still have Z97 Asrock Extreme 4 MB machine with such combo and Marwell controller.. which is even booting from M.2 in PCI-E slots and its able to make 2500 MB/s, on board M.2 slot is limited to 1GB/s. its storage controller lovers paradise.<<<
Link to Make Model you bought that works.  You just plug the card in and no need to change BIOS settings and boots up on card?

18) Yeah I gave up on USB method for SkyLake+.  Corrupted a 2TB external USB hard drive that I left connected somehow when it wasn't the target. Nightmare data recovery.  Optical disc is the safest for newbies.

19) Sticking to MBR still.  Best compatibility for legacy OS installations.  Maybe one day Windows 11 GPT only installation I will dedicate to GPT.
#4127Illen
Zitat von ⇗ ruthan im Beitrag ¶ #4125
State - proof of concept, no real list of features, but big todo list and donate link.. - Im skeptic.
I assume you can offer a better solution then.
#4128schreibersteinFolks, have you heard about this?
A brand new open source bootloader for Windows from XP to 10:

⇗ https://github.com/maharmstone/quibble

Cheers,
schreiberstein
#4129ruthan
Zitat von ⇗ Illen im Beitrag ¶ #4127
Zitat von ⇗ ruthan im Beitrag ¶ #4125
State - proof of concept, no real list of features, but big todo list and donate link.. - Im skeptic.
I assume you can offer a better solution then.

This is not good argument.. i dont have to build own car to say that some future promise of some new shinny car are not too much believable..  I have even some training it in fortune telling, i backed some failed Kickstarter projects :)

Do you remember guy which were promising modern Intel HD drivers for XP almost in whole this thread..i can you promise lots of things, if you will send me some donates:)
#4130Illen
Zitat von ⇗ ruthan im Beitrag ¶ #4125
This is not good argument.. i dont have to build own car to say that some future promise of some new shinny car are not too much believable.. I have even some training it in fortune telling, i backed some failed Kickstarter projects :)

I'm not arguing, I'm just waiting for your ideas. Since it seems like you've straight rejected it without even trying, I assumed you've a much better solution. Not sure what is going on here, but last time I was here, this thread was about experimenting, testing, and simply trying to get things working, not criticizing open source projects from a cover...

Zitat von ⇗ schreiberstein im Beitrag ¶ #4128
Folks, have you heard about this?
A brand new open source bootloader for Windows from XP to 10:

⇗ https://github.com/maharmstone/quibble

Cheers,
schreiberstein

It was mentioned few messages ago, thanks anyway.
#4131Illen
Zitat von ⇗ ruthan im Beitrag ¶ #4125
Do you remember guy which were promising modern Intel HD drivers for XP almost in whole this thread..i can you promise lots of things, if you will send me some donates:)
This is not how things work, you first make and share it, so the interested users can look at the sources or try it and if they like/appreciate it, they might consider a donation. There are freely available bootloader binaries for anyone to try, you are not forced to donate him anything. Mark Harmstone is known from making a Btrfs driver for Windows, and i can assure you, making IFS drivers isn't an easy task at all.
#4132XPLives
Zitat von ⇗ schreiberstein im Beitrag ¶ #4128
Folks, have you heard about this?
A brand new open source bootloader for Windows from XP to 10:

⇗ https://github.com/maharmstone/quibble

Cheers,
schreiberstein


For the moment you can still install DOS all the way up to Windows 10.  So you would be losing DOS, Windows 3.1, 9X, 2000 if you go this route.  If this is targeting UEFI only systems when the BIOS no longer available then maybe this will be interesting down the road to test out.
#4133ruthan
Zitat von ⇗ Illen im Beitrag ¶ #4130

I'm not arguing, I'm just waiting for your ideas. Since it seems like you've straight rejected it without even trying, I assumed you've a much better solution. Not sure what is going on here, but last time I was here, this thread was about experimenting, testing, and simply trying to get things working, not criticizing open source projects from a cover...


  I have not idea here, im waiting if someone else would be guinea pig:) I already doing too much stuff too deeply, i just like to game on everything so i have pretty big scope - today i can mess with XP, tomorrow can mess with old Amiga or Power Mac, next day with some old console modding.

  There are people which really into XP architecture and  boot loading. I just expressed my feeling based on project description, i could be wrong, of course. If description would be better, i would consider to try it myself, even when im not expert.
  BTW i saw article about this project later on Phoronix, which has track record to inform about lots of fancy stuff, but are in reality lets say at least problematic, because of Linux enthusiasm. Other web sites are informing that is something working / done, Phoronix has articles that 2 more instruction and card would be OpenGL X.Y version capable for these 2 instruction you can wait and wait.. or informing over something which Michael never personally tested and info is just some authors PR reprint.. So im skeptic.
#4134ruthanTo some more practical stuff? I have one annoying EFI feature for my multi booting, that is that boot order in Gigabyte bios is not part of bios profiles.. When i do specific boot order for profile and just ignored.

 So when want to boot some OS just by changing bios profile, i have also change boot device order.. otherwise it will boot with wrong settings for wrong OS.. i would have to handle it through bootloader like Grub2 - which can its limits too - there is time count down to make a choice.. or machine will not booting into OS- when is started by Wake on Lan magic packet, without input.. i cant boot Mac OS through it (DOS, Win3-Win 10 and all Linux, BSD and Androidx86 are bootable from Grub2).

 I wonder boot order is part of bios profiles for other manufactors?

There is also report that for someone else are PCI-E gen1 cards working with Z370 (Geforce 6600) + Ryzen - good news, is it could be also Gigabyte problem, or particular MB problems.. or depend on exact card. I tested Geforce 7600, 8400 and Radeon X800. When i place working card into 2nd, 3rd slot.. and select primary videocard slot to option to its slot (Gigabyte feature), im still getting picture on primary videocard, when i boot with it.. And check Win 10/7 device manager, there is not any new device, it act like there is just empty slot, PCI-E gen 1 cards are completely ignored. When i contacted Gigabyte i got classic - dont try to ask for support of 10+ years old videocard response, that is untested and unsupported.. but Gigabite 1st line of support in almost impregnable.

 Good news is that Geforce 750TI (fanless) in 3rd long PCI-E slot is working with present modded files along site with Geforce 1070 (Win7+, MacOS and Linux), as XP GPU, i cant say that is was not working with unmounted files, but i had at the time Geforce 970, so no XP special GPU was needed.
#4135ruthan⇗ @XPLives

2) Fanless computers are my big hobby too, i hate to sit beside noise computer or console.. it mess with my concentration to work, game, watch movies etc. But im realistic in this.
   But fanless X99 would be touch, unless you will cripple CPU power - X99 was nice for 8 cores CPU - which had 140 TDP, too much any stock Fan cooler, they can make 95W at best.
   Here is X99 cpu list with TDPs:
  ⇗ https://www.msi.com/Motherboard/support/...G-7#support-cpu
  You can get 2.0-2.5 GHz slimmer with 6/8 cores, or can get 3.GHz but only 4 cores - ie Haswell-EP E5-2623 v3 (105W) TDP.

X299 is quite similar - 140-160W. I had this problem even with Z370 - with 8700K (95W) it was possible to keep it no reasonable noise with some Noctua <800 PRM fans, but when i upgraded to 9990K - (in specs 95W, but in reality it has up to 165W TDP limit, Intel needed to win, there are lots articles about that:
      ⇗ https://www.anandtech.com/show/13544/why...ected-tdp-turbo
      I had to move to water cooling and because Z370 was not realy designed for that i had to cap some PLx limits to lesser TDP, because otherwise VRM reported up to 120C+ even with fan near of them, i havent nerve to push it further. I know that Gigabyte MBs arent too much good at electric HW level, but when i bough my HW, it was highest possible MB. This was fixed with Z390.
 So in reality X299 wouldnt be big difference for me from cooling perspective.

3) Server 2003 - ok its stable, but what about games compatibility, even when you have that - im reporting itself like XP hack? I want to use XP mainly because of problematic XP era games + programs and this could kill whole idea.

4) USB NIC - For WinXP, MacOS and Linux they are fine. Unfortunately these (most of them has Realtek chip) are still not in Linux kernel, was they are not working without heavy modding with Android x86. I spend lots of time with Win 98 USB Lan adapters, i even i thing got right one with is compatible with Win 98 (AX88772_772A), but i never got them working with newer MBs.. but rLoew had some working with other MBs. I think that could be problem with my ultimate Win98 install i has some networking issues even with PCI-E networking.. i had for example Broadcom 5721 working fine there, but after i mess with USB adapters, i wanst able to make them work any more.. I tried adapter to pass through Win98 virtual machine, no luck too. But made Win98 USB sound cards working - but also what some issues, when i was able to reach state of system when they worker for sounds, but not for music and i wasnt able to go back, even with lots of debugging and help of MSFN people.

5) On X58/X79 can run really everything from Dos to Win10.. with multiple videocards per OS.. only number of slots is limit and there are also some PCI-E extender and PCI adapters. Anything newer means no native DOS with sound, no DOS games under Windows 98 (PCI sound cards are still fine in native Win9x games).. unless have still LTP port and LPT2/3OPL  for music.. but it still means no games sound, unless have has adlib mode..
  More details i already posted to Win98 thread.
 I tested it only on Z170, but i thing that on Z370 (if im not wrong even some reported success here) - you can get working sound, network and .. 3D graphics at least with PCI card and if for someone is Geforce 6, with with PCI-E cards.
 Of course some PCI videocars are better for dos too.. Otherwise Dos results of new cards and platforms are mixed bug, i have thread and sheet about it:
⇗ https://www.vogons.org/viewtopic.php?f=63&t=62586
⇗ https://docs.zoho.com/sheet/published.do...49606de568c62b9

10) PS/2 addon on cards.. make them working in TextMode install would be real deal, later can still help some people with Intel only USB3 ports, which are not able to make new patches working. I order some USB2 PCI-E controller, which was recommended here, but i never tested one, so far was using Asmedia / Nec (aslo know as Renesas) / Etron USB3 cards for XP.  
 There are also some LPT cards, maybe they can work with LPT2/3OPL for Dos, it would be probably the same, if with driver and newer OS..

13) Yamaha 7x4 and Aureal Vortex 1/2
  FX and FM is fully working as wrote up to X58/X79, about AMD you can find it in Kamerats matrix - VIA chipsets are newest, intel is much more compatible.

16) 10 Gbit - based on some inf files..  Intel X540-T1, Intel X540-T2 should be winners.. now probably eBay prices will go higher:)

17)  ASM106x in IDE mode XP install. My bad memory.. Im not really sure, it worked with vanilla SP3, it i had to integrate ASM 106x driver through nLite - which could be done quickly. If you were look for unofficial XP iso with already bundled newer drivers or just pack for integration to your vanilla CD.. it almost always had Asmedia and Marwell drivers included.
 Important thing is flash from DOS old IDE boot to controller.. because it comes with AHCI bios in 99% cases.. and its not some inteligent controller, where you can switch between IDE and AHCI mode just in some utility at boot time.

19) If we would be able to boot XP from NVME and GPT, i can get rid of MBR finally. and only use it for Win98 dedicated small drive. 3 primary partitions + extended partion is nighmare -  i have quite few of Linux distros on exntended partitions and .. quite a lot Partitions and Imaging softwares - still has bugged extented partition support.

  My OS drivers on my machines looks like this - lots of partitions, but less disk as possible, lots of people like os per disk, or use multiple partitions for 1 linux distro i dont. I remember that, my SteamOS - one partition mod was quite successful, becuase default install was 5 or 6 partition madness :)
#4136schreibersteinHaha, I did not see that post. Sorry.

⇗ @XPLives
Well, you can just use two disks, one with MBR and one with GPT and UEFI and then select which one to use at boot.
We still have the choice - and aside from recent Apple computers, I have not heard of mainboard manufacturers getting rid of CSM / BIOS, but I did not check.
I think the future will be a bare metal hypervisor solution, or even just a Linux KVM with GPU and PCI-E passthrough. The performance will probably be even better since the Linux kernel can utilize modern architectures much better in the background and the emulated I/O will also be a speed increase. GPU passthrough effectively means : NO UI LAG.

Cheers,
schreiberstein
#4137gordo999
Zitat von ⇗ XPLives im Beitrag ¶ #4124
So stop harshing "Fernando" about his decision.  And please remember Fernando is retired.
⇗ @XPLives ...thanks for the history but I think you have misunderstood me. I support Fernando's decision and I know he is retired and does not need headaches. I admire Fernando, I am not taking shots at him.

Zitat von ⇗ XPLives im Beitrag ¶ #4124
Now you have your answer as to what "Modern" meant and to stop blaming Fernando as if he did not listen to me in the beginning there would be NO XP THREADS to complain about!
Once again, I am not blaming Fernando for anything, I'm on his side. I appreciate your history tour and you're right, I am a newcomer and likely speaking out of turn. If so, I apologize. However, I'm glad this thread has an XP focus.

Furthermore, I am used to the politics than goes on in some forums. I don't want to stick my nose in where it does not belong and I don't want to get into political discussions. You are right, it was YuriCN with whom I had the disagreement but I dropped it abruptly rather than turn it into a flame war.

Thanks again, for your explanation.
#4138AbdullahTrees
Zitat von ⇗ IntiMD im Beitrag ¶ #4108
@AbdullahTrees
⇗ https://www3.zippyshare.com/v/Njphl3Sp/file.html
Replace the original inf file from the 'for Hub' folder with the one in the link. The reason why this strange error happens is that there were no entries for NT 5.1 in original inf.
Let me know if this works, and if it was enough to make it work and behaves stable, then it would be nice to let Fernando know so as to update the pack (or alternatively add a modified package alongside it)



Thanks, now my Unknown Device has an appropriate name, but the installation failed...



I replaced the .inf with the .inf that was inside the WHQL 'for Hub' folders...

And as far as stable goes, I wasn't really mentioning it as I just wanted to get the USB ports working, but I'm now having abnormal shutdowns ever since I installed the drivers in the 'For Controller' folder, the system sometimes gives a BSOD (DRIVER_POWER_STATE_FAILURE) and at other times it yields a screen like this



Not exactly what I'd call stable... I think this is due to having a controller driver but not having Hub drivers, and I hope the situation will sort itself out when I find the right hub drivers....
Thanks in Advance, looking forward to any more advice/files you can send me...
#4139ruthanI found my old XP install log - so im now that for USB installation - i was using YUMI - ⇗ https://www.pendrivelinux.com/yumi-multiboot-usb-creator/

Im not sure about other notes - its saming that USB installers are using firadisk image and on it its txtsetup.oem - where is list of drivers which have to load from this image, through F6,F7 - if is in stall image already integrated Firadisk - this will fail - Im not really sure, if i used this or not, which my automatized Nlite installer (but i still have that image, if someone know what to check within).
#4140diderius6Today I make a big step forward,
to install any OS from win98, xp SP3, win10 on one laptop,
the Thinkpad T43.
I get a Kingston mSata 480 GB drive and an IDE to mSata adapter from Delock.
Big problem for me was, that I always could only enable 137 Gbyte on this mSata => IDE harddisk.
Even with neweste Bios no chance, also not with win10. The harddrive was always shown as a 128 Gbyte disk.
But now I flash a new modded Bios T43p-1YET65WW_SLIC2.1_no_1802_no_2010.iso and voila,
there is the full mSata disk with 480 Gbyte.
Write and read speed is at the limit of IDE 100, about 93 MByte/s
compi feels fast for any OS
Dietmar

EDIT: I make a copy of whole Bios before I flash, because there is always a risk!



diderius6 has attached files to this post

 

Page 277

#4141ruthanOther thing which could help. I searched for cheap ebay USB3 to Nvme disk adapter, lots of adapter are only false advertisement M.2 Sata.. which are not working with NVME disk.

This one is working fine..~15 bucks


 Its nice when you want to work with M.2 NVME disc on machine without enough M.2 slots, or when you dont want to place it inside.. or just need clone some other disc to M.2 NVME.

 Something like case would be nicer, but i already tested quite few of them.. and its really hit and mis, if device is really NVME.
#4142AndaluXP installs fine on the asus prime Q370M-C/CSM too. On five cards of the Intel 200/300-series chipsets that I tried the only one where I can't install XP remains the asrock H310M-HDV where I got the acpi A5 BSOD in almost all my attempts ...mystery.
#4143YuriyCNIntel RSTe AHCI/RAID driver v4.7.0.1117 + PAE with FIX128 v0.48 = BSOD crashes with STOP code 0x0000000A sometimes (approximately 1 time out of 5-10) when starting Windows.

Intel RSTe AHCI/RAID driver v4.7.0.1117 + PAE with WinXPPAE 2.0 = Starting Windows OK, but crashed GS CABer.
#4144diderius6After next *.inf mod in the legacy Vista 32 bit graphik driver 10-2-mobile_legacy_vista32-64_dd_ccc_mod.exe
I succeed to install every driver (sound, IDE HD, lan, wlan, grafik with full 3D support) for win98, xp SP3 and win10 32 bit
on the nice Lenovo T43p (T43 also) notebook.
Interesting, if there is any other notebook, where this can be done,
Dietmar

PS: The *.inf mod T43p is adding this line

"ATI MOBILITY FireGL V3200" = ati2mtag_M24, PCI\VEN_1002&DEV_3154

#4145ruthanWow - if 3D is working in Win98 - can you run 3Dmark here? Do you thing that its possible to make other ATI PCI-E cards working? Last officially supported are X300-X850 line - Catalyst 5.8 to 6.2 driver, for 6.2 is driver name (6-2_wme_dd_cp_30314.exe) . I would be really nice to add.. for example X1300-X1950 line support or even later.

 In XP is possible to use (officially) up to Radeon 3850, which even has AGP variant..
#4146IntiMD⇗ @AbdullahTrees Safe for me to say that these drivers contrary to what the requirements said aren't compatible with XP nor XP x64 at all. Fernando needs to fix that in the usb3 megathread.
In the meantime try testing whether the 1.1.0.0145 (2013-02-26) drivers work for XP/Win2K03 (they should, but let's make sure). Uninstall the non-working drivers beforehand.



IntiMD has attached files to this post
#4147diderius6⇗ @ruthan

As wished, here it is. May be, other ATI PCI-e cards can be enabled too with *.inf mod,
but I have none^^,
Dietmar

PS: By the way, on the same compi T43p under XP SP3 3Dmark gives 11720 (!) points.
And win98 gets more points than win10^^.

#4148YuriyCNI found 2 ACPI.SYS files with the same size (239616 bytes) and the same internal version, but the contents of the files are different. The difference is only in a few places, 2-4 bytes were patched. I am sending you these 2 files in the archive -
Link removed by Fernando
Which of these files do you recommend to use?

EDIT by Fernando: Download link removed (publication of modded *.SYS files are not allowed here)
#4149AbdullahTrees
Zitat von ⇗ IntiMD im Beitrag ¶ #4146
@AbdullahTrees Safe for me to say that these drivers contrary to what the requirements said aren't compatible with XP nor XP x64 at all. Fernando needs to fix that in the usb3 megathread.
In the meantime try testing whether the 1.1.0.0145 (2013-02-26) drivers work for XP/Win2K03 (they should, but let's make sure). Uninstall the non-working drivers beforehand.

OHHH MYYY GOD!!!! Thank you so much for these drivers, ⇗ @IntiMD !!! Now I have 4 functional USB ports on my laptop, although I'm not sure whether the speed is USB 3.0 or 2.0 as I don't have a USB 3.0 device, hehe.


*never thought I'd be able to get this far, not a single Unknown Device!*

As for system stability, it has improved the second I uninstalled the non-functional USB 3.0 WHQL drivers, and now my PC can shutdown without BSODs. There's just one teeny-tiny problem though that I figured out: I can't hibernate or even go on standby. When I go to hibernate, 'Preparing to Hibernate...' shows, and the screen even goes dark, but all of a sudden an asterisk error pops up.



And going to standby freezes the computer at 'Preparing to standby...'

Although this is now a minor issue rather than a major one, I'll still actively ask for help and fix it as much as possible, as it is quite important... Makes me wonder what else could there be that is out of order due to these drivers...

Thanks in Advance,
#4150IntiMD
Zitat von ⇗ AbdullahTrees im Beitrag ¶ #4149
Zitat von ⇗ IntiMD im Beitrag ¶ #4146
@AbdullahTrees Safe for me to say that these drivers contrary to what the requirements said aren't compatible with XP nor XP x64 at all. Fernando needs to fix that in the usb3 megathread.
In the meantime try testing whether the 1.1.0.0145 (2013-02-26) drivers work for XP/Win2K03 (they should, but let's make sure). Uninstall the non-working drivers beforehand.

OHHH MYYY GOD!!!! Thank you so much for these drivers, @IntiMD !!! Now I have 4 functional USB ports on my laptop, although I'm not sure whether the speed is USB 3.0 or 2.0 as I don't have a USB 3.0 device, hehe.


*never thought I'd be able to get this far, not a single Unknown Device!*


Good to know that these drivers have worked perfectly fine! It's kind of weird why there was a NT5.1.1 mark at the controller drivers but no mark at the hub drivers, whereas the drivers weren't intended at all for NT 5.1 in the latest "xp-compatible" drivers offered, but nevertheless it works fine now.
As such, it would be nice for ⇗ @Fernando to include these drivers from post no. 4146 (¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (277)) into the USB3 megathread as confirmed working on XP.

As of that hibernation problem, it doesn't have to be the cause but you might want to try the modded acpi.sys drivers ⇗ Modded ACPI Drivers Depot 2000 XP 2003 2009
Make sure that you backup the original acpi.sys just in case.
#4151AbdullahTrees
Zitat von ⇗ IntiMD im Beitrag ¶ #4150


Good to know that these drivers have worked perfectly fine! It's kind of weird why there was a NT5.1.1 mark at the controller drivers but no mark at the hub drivers, whereas the drivers weren't intended at all for NT 5.1 in the latest "xp-compatible" drivers offered, but nevertheless it works fine now.
As such, it would be nice for @Fernando to include these drivers from post no. 4146 (¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (277)) into the USB3 megathread as confirmed working on XP.

As of that hibernation problem, it doesn't have to be the cause but you might want to try the modded acpi.sys drivers ⇗ Modded ACPI Drivers Depot 2000 XP 2003 2009
Make sure that you backup the original acpi.sys just in case.


How exactly does someone backup drivers? I could copy the acpi.sys file, but a surely part of a driver also includes messing with .inf files and changing stuff in the registry... Is copying the acpi.sys file enough?
#4152IntiMD
Zitat von ⇗ AbdullahTrees im Beitrag ¶ #4151
Zitat von ⇗ IntiMD im Beitrag ¶ #4150


Good to know that these drivers have worked perfectly fine! It's kind of weird why there was a NT5.1.1 mark at the controller drivers but no mark at the hub drivers, whereas the drivers weren't intended at all for NT 5.1 in the latest "xp-compatible" drivers offered, but nevertheless it works fine now.
As such, it would be nice for @Fernando to include these drivers from post no. 4146 (¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (277)) into the USB3 megathread as confirmed working on XP.

As of that hibernation problem, it doesn't have to be the cause but you might want to try the modded acpi.sys drivers ⇗ Modded ACPI Drivers Depot 2000 XP 2003 2009
Make sure that you backup the original acpi.sys just in case.


How exactly does someone backup drivers? I could copy the acpi.sys file, but a surely part of a driver also includes messing with .inf files and changing stuff in the registry... Is copying the acpi.sys file enough?



Make a copy of the original. Rename the copy as "acpi.bak". Overwrite the unmodified acpi.sys file with the modified one from DK_ACPI\64 folder in the archive.

It's up to you to find out whether replacing acpi.sys was just enough to fix the problem.
#4153YuriyCNI delete this post.
#4154ruthan⇗ @YuriyCN
 Is there difference between reboot and cold start? Are using Fastboot UEFI settings? From my experience reboot is now pure equivalent of cold start and some registry could be still filled with old bad data, fastboot it complicated even more, because reset even less devices.
#4155YuriyCN
Zitat von ⇗ ruthan im Beitrag ¶ #4154
@YuriyCN
 Is there difference between reboot and cold start? Are using Fastboot UEFI settings? From my experience reboot is now pure equivalent of cold start and some registry could be still filled with old bad data, fastboot it complicated even more, because reset even less devices.


It does not depend on fastboot UEFI settings.
I use fastboot = disabled. But I tried enabled / disabled, no difference.

 

Page 278

#4156AbdullahTrees
Zitat von ⇗ IntiMD im Beitrag ¶ #4152


Make a copy of the original. Rename the copy as "acpi.bak". Overwrite the unmodified acpi.sys file with the modified one from DK_ACPI\64 folder in the archive.

It's up to you to find out whether replacing acpi.sys was just enough to fix the problem.


Thanks for the link, I did what you said, aaaand this is what happened.

⇗ BSOD 0x0000007E

I was surprised you told me to copy the acpi.sys in the 64 folder, seeing as I use Windows XP SP3 32-bit, but then I tried using the acpi.sys from both of the folders, and none of them worked, they give a BSOD after the 'Windows XP splash screen with blue progress bar' ends.

Awaiting your response...
#4157IntiMD⇗ @AbdullahTrees Damn, my bad! For some weird reason thought that you were using the 64-bit edition. My mistake indeed.

So when you copied from the (now right) 32 folder the acpi.sys file and replaced the original one (after previously backing the original file up) with the modded one, it went BSOD? In this case it seems that this acpi.sys mod that you tried seemed to not be compatible with the laptop. What I would do now is to restore the original unmodified acpi.sys.

After restoring it, let's give this other "outer space" acpi.sys a try: ¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (215) (only x86 version, which should now suit you fine)
As always keep the backup of the original unmodified acpi.sys just-in-case and replace the file with this outer-space one.
#4158diderius6Here are the last and best acpi.sys for 32 and 64 Bit,
for Intel and AMD
Dietmar

EDIT by Fernando: Attachments removed (publication of modded *.SYS files are not allowed here)
#4159YuriyCNIntel RSTe AHCI/RAID driver v4.7.0.1117 + PAE patch with FIX128 = BSOD crashes with the code 0x0000000A sometimes (approximately 1 time out of 5-10) when starting Windows.
#4160Andalu⇗ @YuriyCN
I'm using the Intel RSTe AHCI/RAID driver v4.7.0.1117 + WinXPPAE 2.0 + USB3 driver modded. I started XP really many times (I'm doing some test with HD and SSD drives) but I never got any BSOD on my system (Asus Q370 and i5-8400 Coffee Lake).
I can confirm that the boot with the Universal 32bit Intel RST AHCI+RAID driver v11.2.0.1006 modded by Fernando is fastest than the RSTe AHCI/RAID driver v4.7.0.1117 (it takes half the time) and also the performances are better than the v4.7.0.1117 in all cases, even with the write cache enabled.
#4161AbdullahTrees
Zitat von ⇗ IntiMD im Beitrag ¶ #4157
@AbdullahTrees Damn, my bad! For some weird reason thought that you were using the 64-bit edition. My mistake indeed.

So when you copied from the (now right) 32 folder the acpi.sys file and replaced the original one (after previously backing the original file up) with the modded one, it went BSOD? In this case it seems that this acpi.sys mod that you tried seemed to not be compatible with the laptop. What I would do now is to restore the original unmodified acpi.sys.

After restoring it, let's give this other "outer space" acpi.sys a try: ¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (215) (only x86 version, which should now suit you fine)
As always keep the backup of the original unmodified acpi.sys just-in-case and replace the file with this outer-space one.


Okay, Windows didnt crash this time when I switched the acpi.sys, but it gave me a very wierd error at logon that was basically telling me that it couldn't log into my local account cause something was accessing it and thus made a temporary account for me: all changes made to it would be lost on shutdown. No idea why changing acpi.sys would cause something like this to happen, but other than that, no perceivable difference, still couldn't hibernate on the new acpi.sys.

⇗ @diderius6 :O are those for me? But my system doesn't have Ryzen, it is an AMD A10-4600M APU with Radeon(tm) HD Graphics... So which one from the 3 you uploaded should I try (I guess I'll try all 3 later when I have time...)
#4162YuriyCN
Zitat von ⇗ Andalu im Beitrag ¶ #4160
@YuriyCN
I'm using the Intel RSTe AHCI/RAID driver v4.7.0.1117 + WinXPPAE 2.0 + USB3 driver modded. I started XP really many times (I'm doing some test with HD and SSD drives) but I never got any BSOD on my system (Asus Q370 and i5-8400 Coffee Lake).
I can confirm that the boot with Universal 32bit Intel RST AHCI+RAID driver v11.2.0.1006 modded by Fernando is fastest than the RSTe AHCI/RAID driver v4.7.0.1117 (it takes half the time) and also the performances are better then the v4.7.0.1117 in all cases, even with the write cache enabled.


1) With the driver v4.7.0.1117: the initial stage of loading Windows XP takes 3-4 seconds longer than when using the driver "v11.2.0.1006 mod Fernando". At the very beginning of the booting up, when 3 dots run under the logo, with the driver v11.2.0.1006 they run 1 time and Windows continues to boot, and with version v4.7.0.1117 they run 4-5 times and only then the booting up continues.

2) With the driver v11.2.0.1006 mod Fernando: if a DVD drive is connected, the LED HDD flashes periodically (1 time per second), even when the system is idle and there is no access to either the SSD or the DVD. Why is "HDD activity" displayed when the system is idle? But with version v4.7.0.1117 - no problem, LED is not blinking.

3) Please copy the files below (from your installed system) to one archive and send me:
c:\WINDOWS\system32\drivers - full directory, all files
c:\WINDOWS\system32\hal.dll
c:\WINDOWS\system32\ntkrnlpa.exe
c:\WINDOWS\system32\ntoskrnl.exe
#4163Fernando⇗ @IntiMD:

Zitat von ⇗ IntiMD im Beitrag ¶ #4150
As such, it would be nice for @Fernando to include these drivers from post no. 4146 (¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (277)) into the USB3 megathread as confirmed working on XP.
Why should I add these old AMD drivers to the thread about the latest/best USB 3.0/3.1 drivers?
Users, who want to install Windows XP nowadays will/ should look for suitable drivers within this Sub-Forum.
#4164IntiMD
Zitat von ⇗ Fernando im Beitrag ¶ #4163
@IntiMD:
Zitat von ⇗ IntiMD im Beitrag ¶ #4150
As such, it would be nice for @Fernando to include these drivers from post no. 4146 (¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (277)) into the USB3 megathread as confirmed working on XP.
Why should I add these old AMD drivers to the thread about the latest/best USB 3.0/3.1 drivers?
Users, who want to install Windows XP nowadays will/ should look for suitable drivers within this Sub-Forum.

If there's no need to add them in the megathread then at least the "usable with WinXP" part should be removed in the H-Series section, so as to not mislead others.
#4165AbdullahTrees⇗ @IntiMD I'd like to ask where you found the USB 3.0/3.1 drivers that worked for XP, I'm curious. I wouldn't have ever found them by myself, cause the ones I were getting from DriverPack weren't working
#4166IntiMD
Zitat von ⇗ AbdullahTrees im Beitrag ¶ #4165
@IntiMD I'd like to ask where you found the USB 3.0/3.1 drivers that worked for XP, I'm curious. I wouldn't have ever found them by myself, cause the ones I were getting from DriverPack weren't working

Found it in drp.su:
* lurked by the hardware identificators
* downloaded the zip file which actually didn't contain the pure drivers but rather the self-extractable exes from samlab
* extracted the 2 nt5 exes by 7-zip; uniextract2 would work fine too.
* while the inf files were identical in both of those nt5 (XP) exes, the 64-bit one contained the 64-bit drivers in both 64 and 32 bit folder and the 32-bit one contained the 32-bit drivers in both 64 and 32 bit folder.
* in order to fuse it into one, just like it was in pure drivers from the usb3 megathread, i just replaced the 64-bit folder with the 64-bit drivers and the 32-bit folder with the 32-bit drivers. The root files (inf, msi, cat) were intact.
* assembled into a zip file, then i attached that driver for you.
#4167Andalu⇗ @YuriyCN

1) here the same (total boot time on mechanical hard drive: 42 seconds with driver v4.7.0.1117 and 21 seconds with the driver v11.2.0.1006)
2) not so frequently, one time on 4/5 seconds
3) pm
#4168YuriyCN
Zitat von ⇗ daniel_k im Beitrag ¶ #3631
WinXPPAE 2.0, a small utility to patch all kernel and hal files, supporting all languages and versions 5512 (SP3) and later:


What's new:

- thanks to @Mov AX, 0xDEAD, now includes HAL patches for ACPI Timer fix and proper memory management from Server 2003.
- creates backups files (.bak) automatically
..............................................
..............................................



When using WinXPPAE 2.0, there are several problems that without this patch do not exist.

For example:

1) GS CAB'er with a patch does not start. Without a patch WinXPPAE this application works fine. Surprisingly, when using FIX128 v0.48, I got memory >4GB and normal work of GS CAB'er. The investigation revealed, that the problem is the hal.dll file (internal name halmacpi.dll) patched using WinXPPAE 2.0. When HAL.DLL patching with FIX128, the GS CAB'er works fine.

WinXPPAE 2.0 - ¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (243)
gs_caber v1.1.5.7 - ⇗ https://www44.zippyshare.com/v/gjEdpzi4/file.html
FIX128 v0.48 - ⇗ https://www58.zippyshare.com/v/w4gsnb89/file.html

2) CHKDSK of the Flash drive connected via USB port stops working. CHKDSK is launched from the standard Explorer menu (see screenshot). At the very beginning, the scan freezes and the Explorer.exe process crashes. Without WinXPPAE 2.0, the CHKDSK works fine.

USB 3.0 driver (for Intel H110M) - ⇗ https://www104.zippyshare.com/v/NFOp8yLv/file.html

#4169genieautravail
Zitat von ⇗ YuriyCN im Beitrag ¶ #4168
When using WinXPPAE 2.0, there are several problems that without this patch do not exist. For example:1) GS CAB'er with a patch does not start. Without a patch WinXPPAE this application works fine. Surprisingly, when using FIX128 v0.48, I got memory >4GB and normal work of GS CAB'er. The investigation revealed, that the problem is the hal.dll file (internal name halmacpi.dll) patched using WinXPPAE 2.0. When HAL.DLL patching with FIX128, the GS CAB'er works fine.WinXPPAE 2.0 - Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (243)gs_caber v1.1.5.7 - ⇗ https://www44.zippyshare.com/v/gjEdpzi4/file.htmlFIX128 v0.48 - ⇗ https://www58.zippyshare.com/v/w4gsnb89/file.html2) CHKDSK of the Flash drive connected via USB port stops working. CHKDSK is launched from the standard Explorer menu (see screenshot). At the very beginning, the scan freezes and the Explorer.exe process crashes. Without WinXPPAE 2.0, the CHKDSK works fine. USB 3.0 driver (for Intel H110M) - ⇗ https://www104.zippyshare.com/v/NFOp8yLv/file.html


About CHKDSK, I have the same problem with an USB 3.0 external hard drive but with FIX128 not WINXPPAE...
#4170YuriyCN
Zitat von ⇗ genieautravail im Beitrag ¶ #4169

About CHKDSK, I have the same problem with an USB 3.0 external hard drive but with FIX128 not WINXPPAE...


CHKDSK does not work that with WinXPPAE 2.0, that with FIX128.
GS CAB'er does not work with WinXPPAE 2.0, but with FIX128 it works fine.

 

Page 279

#4171Andalu⇗ @YuriyCN
chkdsk works correctly here with WinXPPaePatch 2.0 while GS CAB'er doesn't start giving a memory error.
I haven't tried the fix128 0.48 patch yet.
#4172YuriyCN
Zitat von ⇗ Andalu im Beitrag ¶ #4171
@YuriyCN
chkdsk works correctly here with WinXPPaePatch 2.0 while GS CAB'er doesn't start giving a memory error.
I haven't tried the fix128 0.48 patch yet.


CHKDSK
Maybe this is not WinXPPaePatch 2.0 problem, but USB driver bug in PAE mode... Please, check CHKDSK works when using my USB driver - ⇗ https://www104.zippyshare.com/v/NFOp8yLv/file.html

GS CAB'er
This is a 100% HAL.DLL problem patched with WinXPPaePatch 2.0.
I replaced HAL.DLL with a non-patched file (or patched with FIX128) and the GS CAB'er - worked.
#4173Andalu⇗ @YuriyCN
Sorry, I can't download from zippyshare, I got the 403 forbidden error message. Probably my ISP has blocked the access to this site and I don't want use a VPN to bypass the block. I downloaded previously the GS CAB`er via google search. What USB3 driver you are using? Is not an AMD USB3 driver attached on this thread?
About the WinXPPaePatch 2.0, daniel_k had said some time ago that it will never be a perfect patch and the issues are always possible. I think that a compromise can be accepted. In another system I'm using the chinese PAE patch that works fine (but, for example, the format command hangs always) but i must use a PCI card to have the usb3 function. And I will probably be forced to use the same PCI card on my new Coffee Lake system.
#4174IntiMD⇗ @Andalu
not him but here's the driver zip file in particular. Check attachments.

EDIT by Fernando: Attachments removed (publication of modded *.SYS files are not allowed here)
#4175YuriyCN
Zitat von ⇗ Andalu im Beitrag ¶ #4173
@YuriyCN
Sorry, I can't download from zippyshare, I got the 403 forbidden error message. Probably my ISP has blocked the access to this site and I don't want use a VPN to bypass the block. I downloaded previously the GS CAB`er via google search.


Please, check CHKDSK works when using my USB driver.
All files in one archive (fix128v48.zip + gs_caber_1.1.5.7.zip + USB3_WinXP_x86_PAEfix.zip)

EDIT by Fernando: Attachments removed (publication of modded *.SYS files are not allowed here)
#4176Andalu⇗ @IntiMD
thanks ;)

⇗ @YuriyCN
I confirm that chkdsk also works correctly with the amdhub30.sys (SHA-1: 60CD2A15EC1DA4E30E806AB69D24B5865260C17E) and amdxhc.sys (SHA-1: 1AE2108E29A528EFDA7F7497952298A406991E21) included in the "USB3_WinXP_x86_PAEfix.zip" packet.



gs_caber_1.1.5.7 doesn't work anyway. I tried fix128v48 on the fly :) and I got the "Fix Hal: crap" message. I'll try again in the next days.
#4177daniel_k⇗ @YuriyCN

There is nothing wrong with my WinXPPAE 2.0.

GS CAB'er crashes here with a fully updated ISO including all updates and hotfixes and NO PAE patch.

Doesn't matter if I unpack the .exe with upx -d, still crashes. UPX itself is packed and works just fine.

But you can fix it by setting Compatibility to Windows 98 / Windows ME, then GS CAB'er runs just fine.

Regarding Scandisk, as I've said before, the modded Intel drivers (based on amdxhc) has issues with PAE, even with "PAE fix" the USB controller hangs if there is intense disk activity.

Anything that touches devices plugged in any of the Intel USB ports are prone to issues if PAE is enabled. For use with PAE, you need an external USB3 card, this is mandatory.
#4178YuriyCN
Zitat von ⇗ Andalu im Beitrag ¶ #4176
@YuriyCN
I confirm that chkdsk also works correctly with the amdhub30.sys (SHA-1: 60CD2A15EC1DA4E30E806AB69D24B5865260C17E) and amdxhc.sys (SHA-1: 1AE2108E29A528EFDA7F7497952298A406991E21) included in the "USB3_WinXP_x86_PAEfix.zip" packet.

gs_caber_1.1.5.7 doesn't work anyway. I tried fix128v48 on the fly :) and I got the "Fix Hal: crap" message. I'll try again in the next days.


1) Your FLASH drive (disk D:) connected via USB port? Judging by the screenshot, you are checking the system drive (SATA).

2) FIX128 must be installed on the original (non-patched system). Installing FIX128 after WinPAE is not possible.
#4179YuriyCN
Zitat von ⇗ daniel_k im Beitrag ¶ #4177
@YuriyCN

GS CAB'er crashes here with a fully updated ISO including all updates and hotfixes and NO PAE patch


GS CAB'er is really an application with strange problems. For example, for me, GS CAB'er also crashes on Windows XP SP3 Eng installed with clean MSDN image, but works fine on the pirated WinXP RUS build.

After patch hal.dll (with WinXPPAE 2.0) GS CAB'er application stops working, but after patch with FIX128 it works fine. I replaced only the hal.dll file separately and determined the dependency of GS CAB'er from the hal.dll.
#4180ruthanI wonder is trim partition related, or whole disc related? Because in Adata SSD toolbox i see only whole driver, no specific partition..
#4181YuriyCN
Zitat von ⇗ daniel_k im Beitrag ¶ #4177
@YuriyCN
Regarding Scandisk, as I've said before, the modded Intel drivers (based on amdxhc) has issues with PAE, even with "PAE fix" the USB controller hangs if there is intense disk activity.
Anything that touches devices plugged in any of the Intel USB ports are prone to issues if PAE is enabled. For use with PAE, you need an external USB3 card, this is mandatory.
I did some experiments and realized what was happening. First you must install the driver from the archive USB3_driver_Intel_100-series\ USB3_WinXP_x86_PAEfix then replace amdxhc.sys only. This file located in patch - c:\WINDOWS\system32\drivers
All necessary files in the attached archive.

My experiment results:
1. With file USB3_driver_Intel_100-series\1\amdxhc.sys - working Standby mode, but not working CHKDSK
2. With file USB3_driver_Intel_100-series\2\amdxhc.sys - CHKDSK works fine!!! But in 50% of cases Windows freezes at boot !! And when you exit the Standby mode, I get a black screen or BSOD:



EDIT by Fernando: Attachments removed (publication of modded *.SYS files are not allowed here)
#4182Andalu
Zitat von ⇗ YuriyCN im Beitrag ¶ #4178
1) Your FLASH drive (disk D:) connected via USB port? Judging by the screenshot, you are checking the system drive (SATA).

2) FIX128 must be installed on the original (non-patched system). Installing FIX128 after WinPAE is not possible.

You are right, my mistake (grrr... damn hurry). I tried againg using the two file systems included in the "USB3_WinXP_x86_PAEfix.zip" and effectively 'chkdsk' doesn't work for the USB drives with the WinXPPAE 2.0 patch. I also installed the FIX128 0.48 patch and 'chkdsk' works normally.

But, at the same time, I can confirm that with amdxhc.sys (SHA-1: 6717C1872E9A53A1B8D2822E968A8228E3A67182) and amdhub30.sys (SHA-1: 653B25F98F70BA6CBFAADB0F5D61E9D69F507D4F) 'chdsk' also works correctly with the WinXPPAE 2.0 patch installed:

#4183ruthan
Zitat von ⇗ daniel_k im Beitrag ¶ #4177
@YuriyCN

Regarding Scandisk, as I've said before, the modded Intel drivers (based on amdxhc) has issues with PAE, even with "PAE fix" the USB controller hangs if there is intense disk activity.

Anything that touches devices plugged in any of the Intel USB ports are prone to issues if PAE is enabled. For use with PAE, you need an external USB3 card, this is mandatory.

 
 Do you thing that this problem could be solved in future, its new discovery, or known thing? Its someone looking into or its just dead end. Would it be more safe disable whole on board Intel USB3 at all?

 For external USB3 controllers do you recommend old vendor drivers, or new ones modded from this thread? I have Asmedia a NEC ones.
#4184daniel_k
Zitat von ⇗ ruthan im Beitrag ¶ #4183
Do you thing that this problem could be solved in future, its new discovery, or known thing? Its someone looking into or its just dead end. Would it be more safe disable whole on board Intel USB3 at all?

Can be solved if one manages to successfully patch some of the PAE friendly drivers listed below. I've tried, but gave up.

Zitat
For external USB3 controllers do you recommend old vendor drivers, or new ones modded from this thread? I have Asmedia a NEC ones.


ASMedia and TI work because their drivers were written by MCCI, properly supporting PAE.

VIA and Fresco Logic work because their drivers were written using WDF. The KMDF runtime takes care of PAE.

Etron driver PAE compatibility is unknown.

Renesas (NEC) has the same PAE issues. Up to socket FM2, AMD licensed Renesas IP, so basically all USB3 controller used were basically from Renesas.

#4185ruthanThanks for info.
  One more question i already installed you Intel USB3 drivers, how complety get rid of them, it thing that uninstall device in Device manager is not good enough?

 

Page 280

#4186daniel_k⇗ @ruthan

Uninstall from Device Manager, then delete the following files:
\Windows\System32\Drivers\amdhub30.sys
\Windows\System32\Drivers\amdxhc.sys
#4187YuriyCN
Zitat von ⇗ daniel_k im Beitrag ¶ #4184

Can be solved if one manages to successfully patch some of the PAE friendly drivers listed below. I've tried, but gave up.



I think this problem can be solved, because there are 2 drivers each of which works partially correctly.

Intel USB 3.0 driver operation with the WinXPPAE 2.0:

#4188bcwinit
Zitat von ⇗ daniel_k im Beitrag ¶ #4177
Anything that touches devices plugged in any of the Intel USB ports are prone to issues if PAE is enabled. For use with PAE, you need an external USB3 card, this is mandatory.

Zitat von ⇗ daniel_k im Beitrag ¶ #4184
Renesas (NEC) has the same PAE issues. Up to socket FM2, AMD licensed Renesas IP, so basically all USB3 controller used were basically from Renesas.

Just for reference, it doesn't seem to be enabling PAE itself that's the problem but rather the use of more RAM than the typical ~3.2GB limit (which ensures all addresses for drivers stay in a 32-bit range). This applies to 32-bit editions of Server 2003 that support 4GB or more of RAM and of course to patched XP 32-bit installations.

I've been using the Renesas/NEC controllers for over six years without any issues with PAE enabled and 6GB, then 8GB, then 16GB of RAM. Windows was not patched to allow more RAM to be used. Instead, a RAM drive that supports unmanaged memory (which requires that PAE be enabled) as well as page files at boot is used to make more then ~3.2GB available to Windows. This makes the entire "virtual memory" space consist of physical memory, although Windows is oblivious so it always reports ~3.2GB in the system info. It may not be the most elegant solution, and the performance isn't quite as good as it would be without the need for RAM-to-RAM paging to make use of all of the RAM, but it's perfectly stable and far better than having less RAM and any amount of page file capacity on an HDD/SSD.
#4189YuriyCNbcwinit

You can write this information on the forums for lamers. Here are specialists of a higher level, they all know this very well. It solves complex problems by patching the OS or drivers.

daniel_k

I went over several variants of the patched amdxhc.sys file and I didnt get normal operation with any of the files. In some cases Windows hangs when booted in PAE mode, in others the transition to standby mode does not occur, in others CHKDSK does not start on a flash drive, in others the device does not appear (defined as "unknown device") if Windows boots with a device already connected into the USB port.

In general, each file has its own issues during work, but there is not a single option for everything to work simultaneously. If possible, I ask you to modify amdxhc.sys so that the driver works stably in the system when using the PAE mode (either through WinXPPAE 2.0 or FIX128).
#4190bcwinit
Zitat von ⇗ YuriyCN im Beitrag ¶ #4189
bcwinit
You can write this information on the forums for lamers. Here are specialists of a higher level, they all know this very well. It solves complex problems by patching the OS or drivers.

For clarity, my post wasn't targeted at daniel_k as if he didn't know what I was saying already. It was a general response with supplementary info since his posts made it sound like an absolute that PAE mode itself is a problem for the modified AMD xHCI driver and the NEC/Renesas xHCI driver.

I'm happy to write information on the forum for anyone, "lamer" in your opinion or not, who may be interested in testing or normally using daniel_k's modified AMD xHCI driver with little or no risk of the stability problems that you've been reporting.

There will always be more people reading than posting in a technical thread like this, and if some of them just want to use a driver they found here and get on with life that shouldn't be a problem.
#4191ppm007were can I get WINXPPAe 2.0
#4192YuriyCN
Zitat von ⇗ ppm007 im Beitrag ¶ #4191
were can I get WINXPPAe 2.0



Here - ¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (243)
#4193IntiMD⇗ @YuriyCN You have to realise though that daniel_k has taken down the attachments containing the PAE patch for reasons that might be solely known to him (due to stability reasons or more further work on it?). A friend of mine still has it in his storage so if he finds it, I'll reupload it.
CC:⇗ @ppm007
#4194daniel_kI was asked to delete all of my modified 3rd party drivers to avoid copyright issues here. I've been told that in the near future, all modified files that are copyrighted will be deleted.
Additionally, as WinXPPAE was completely written by me, I've decided not to make it available here anymore. I hope you respect my decision and do not upload it here anymore.

In the next days, all of my modded drivers and WinXPPAE will be available at MDL Forums' Windows XP / Older OS section (forums.mydigitallife.net). The Admin gave me his OK.
#4195daniel_k⇗ @bcwinit

I knew about the RAM disk option, but what we are discussing here is the PAE as it is, as supported by Server 2003 Enterprise/Datacenter.
#4196IntiMD
Zitat von ⇗ daniel_k im Beitrag ¶ #4194
I was asked to delete all of my modified 3rd party drivers to avoid copyright issues here. I've been told that in the near future, all modified files that are copyrighted will be deleted.
Additionally, as WinXPPAE was completely written by me, I've decided not to make it available here anymore. I hope you respect my decision and do not upload it here anymore.

In the next days, all of my modded drivers and WinXPPAE will be available at MDL Forums' Windows XP / Older OS section (forums.mydigitallife.net). The Admin gave me his OK.


Alright, those are your modifications and it's your choice on how they're being distributed after all. At least something good came out of that situation - MDL has a larger userbase so you and your projects would be noticed more. Wish you luck on it.
#4197YuriyCN
Zitat von ⇗ daniel_k im Beitrag ¶ #4194
I was asked to delete all of my modified 3rd party drivers to avoid copyright issues here. I've been told that in the near future, all modified files that are copyrighted will be deleted.
Additionally, as WinXPPAE was completely written by me, I've decided not to make it available here anymore. I hope you respect my decision and do not upload it here anymore.

In the next days, all of my modded drivers and WinXPPAE will be available at MDL Forums' Windows XP / Older OS section (forums.mydigitallife.net). The Admin gave me his OK.


This forum is dedicated to updating drivers, but you cannot post modified files on it. That's bullshit?

Please, then upload the files to free file hosting services with a long shelf life, but leave only the URL here. I really want to see a modified AMDXHC.SYS (for Intel Motherboard) in which there is a working CHKDSK with PAE mode.
#4198Andalu
Zitat von ⇗ YuriyCN im Beitrag ¶ #4197
......I really want to see a modified AMDXHC.SYS (for Intel Motherboard) in which there is a working CHKDSK with PAE mode.

wasn't this image enough?

#4199YuriyCN
Zitat von ⇗ Andalu im Beitrag ¶ #4198





I do not have files with such MD5 hash.
Please, send me your amdhub30.sys and amdxhc.sys.
#4200infuscomus⇗ @YuriyCN

I have these, should I PM you?

 

Page 281

#4201Andalu
Zitat von ⇗ infuscomus im Beitrag ¶ #4200
@YuriyCN

I have these, should I PM you?

He has already got them ;)
#4202Fernando
Zitat von ⇗ daniel_k im Beitrag ¶ #4194
I was asked to delete all of my modified 3rd party drivers to avoid copyright issues here. I've been told that in the near future, all modified files that are copyrighted will be deleted.
Just for clarification:
Only attached or linked drivers, whose *.SYS file code has been altered, will be deleted by the Win-RAID Forum team (to avoid any problems with the manufacturer of the original driver).
#4203daniel_kMy last post here. Please read this:

INTEL END USER SOFTWARE LICENSE AGREEMENT

IMPORTANT - READ BEFORE COPYING, INSTALLING OR USING.

THE FOLLOWING NOTICE, OR TERMS AND CONDITIONS SUBSTANTIALLY IDENTICAL IN NATURE AND EFFECT, MUST APPEAR IN THE DOCUMENTATION ASSOCIATED WITH THE INTEL-BASED PRODUCT INTO WHICH THE SOFTWARE IS INSTALLED. MINIMALLY, SUCH NOTICE MUST APPEAR IN THE USER GUIDE FOR THE PRODUCT. THE TERM "LICENSEE" IN THIS TEXT REFERS TO THE END USER OF THE PRODUCT.

LICENSE. Licensee has a license under Intel's copyrights to reproduce Intel's Software only in its unmodified and binary form, (with the accompanying documentation, the "Software") for Licensee's personal use only, and not commercial use, in connection with Intel-based products for which the Software has been provided, subject to the following conditions:
(a) Licensee may not disclose, distribute or transfer any part of the Software, and You agree to prevent unauthorized copying of the Software.
(b) Licensee may not reverse engineer, decompile, or disassemble the Software.
(c) Licensee may not sublicense the Software.
(d) The Software may contain the software and other intellectual property of third party suppliers, some of which may be identified in, and licensed in accordance with, an enclosed license.txt file or other text or file.

As you can see, 99.99% of all software available here is theoretically being distributed/modified against Intel's EULA.
Even the Coffee Lake mod is a clear case, as they weren't originally intended for use with non-certified boards.
#4204Fernando⇗ @daniel_k:
Here is my statement:

  1. Simple text files with the extension *.INF or *.OEM are documents, but no software.
  2. All drivers, whose *.INF or *.OEM files have been customized by me, are offered with the suffix "mod+signed by Fernando" to make it absolutely clear, who is responsable for the customization.
  3. Intel knows about my "mod+signed" drivers. Intel employees themselves have recommended to use them, if the original driver doesn't support the specific Intel device.
#4205ruthanI returned to my Gigabyte Z370 XP project with new discoveries, previously i machine installed only in MPS mode.. and i had problem with some not working MB devices,
because of not enough resources.
  Daniel long time ago, fixed my F13 bios.

I changed MPS in device manager to ACPI just through load other driver - it survived reboot, all exclamation marks on system devices are no gone, what is good.. Second Geforce 750 Ti is working with original Nvidia install what is also good.
 I used new acpi file and timer fixed, btw what timer tester should report,
its running by im not sure about result.

 Before Intel USB3 fixes, i had Asmedia USB 3 working at least in MPS mode, with vanilla Asmedia drives. I have 2 Asmedia USB 3 controllers - on board and external.
 
 Now i have strange problems, that Asmedia USB3 is not more working i tried new and old drivers.. Controller driver is fine, hub driver is also fine, but there is some composite USB device, which reports the error.
  No USB3 device detected, same NEC USB3 external (72001, i updated firmware to last). I tried to force driver for it, but always getting that driver package is now include any driver for my devices.
In more modern OSes all its working.
  
 This would be still quite ok, because my MB is supporting Y P/S2 cable (i tested thing also without it), but problem is that PS/2 keyboard is not working too, its working in bios, in grub and in WinXP boot menu, but not start OS booted.
  I can see Standard PS/2 and mouse and keyabord device in Device manager, but bough has exclamation marks.
  But OS seems to running fine, i can connect through remote desktop and do stuff.

 I tried new modded Intel USB3 driver, also no luck, so i uninstalled it and deteleted files.. I through that i would able to completly disable Intel USB3 controller, i disable all 4 its BIOS settings, but its still detected. Maybe its disabling only onboard Asmedia controller.
 
 I also have M.2 NVME which is not visible in Windows XP, its working fine in Windows 10. When i install in the same slot M.2 Sata its working fine.

 Im not using any PAE patch. I have 2.5 GB of 32 GB available, what is still usuable..

Other strange thing that there is not Fernando Controller device which at at least in past was present, but just some PCI Device..
 
  Here is list of unknow devices, i wonder about intel one? Its some managed controller? I tried to force NVME driver from Diderius on it.. but again, inf not include drivers for this device.. So its not probably NVME device.
  When i translate with name is some something like simple communication for PCI bus.
 Sitovy adapter - its Intel 219 Lan.
 Radic videa - its second GPU - 1070 for Win7+.
 Radic USB - means USB controller.
 
 Sound is working fine, no bluescreens in 2D, Opera working fine for internet.

  Any idea? Sorry for missing error codes (next time after weekend), im no by that machine now.. Maybe we can write some batch files to report filesizes, dates or versions of all installed important files, is someone now how to do it.. to post logs here, to make things cleaner.. Because without it as debugging very wild guessing.




#4206YuriyCN
Zitat von ⇗ Fernando im Beitrag ¶ #4204
@daniel_k:
Here is my statement:
  1. Simple text files with the extension *.INF or *.OEM are documents, but no software.
  2. All drivers, whose *.INF or *.OEM files have been customized by me, are offered with the suffix "mod+signed by Fernando" to make it absolutely clear, who is responsable for the customization.
  3. Intel knows about my "mod+signed" drivers. Intel employees themselves have recommended to use them, if the original driver doesn't support the specific Intel device.

Dear developers, send these companies in the ass. Please collect all your modifications in one archive so that we can download and use. It is very important that nothing is lost. You make modifications due to the fact that companies did not write drivers for old operating systems. This is a global conspiracy, everyone is forcibly transferred to Windows 10, but many like the old OS (Windows XP, Windows 7).

EDIT by Fernando: Unacceptable message has been striked through by me.
#4207Fernando
Zitat von ⇗ YuriyCN im Beitrag ¶ #4206
Please collect all your modifications in one archive so that we can download and use.
The Win-RAID Forum team will not allow anybody to attach or link such archive within this Forum.
We do not want to risk, that this web site has to be closed due to an intervention of any chipset manufacturer.
#4208YuriyCN
Zitat von ⇗ Andalu im Beitrag ¶ #4198
Zitat von ⇗ YuriyCN im Beitrag ¶ #4197
......I really want to see a modified AMDXHC.SYS (for Intel Motherboard) in which there is a working CHKDSK with PAE mode.

wasn't this image enough?





I tested this driver. I confirm, no problems! It really works with CHKDSK.
But this driver is very unstable in PAE mode:
1. A device connected to a USB port is not detected in 50% ("Unknown Device" in Device Manager)
2. Windows often freezes when starting or shutting down
#4209Andalu
Zitat von ⇗ YuriyCN im Beitrag ¶ #4208
I tested this driver. I confirm, no problems! It really works with CHKDSK.
But this driver is very unstable in PAE mode:
1. A device connected to a USB port is not detected in 50% ("Unknown Device" in Device Manager)
2. Windows often freezes when starting or shutting down

No issue here with that driver for both points you mentioned. I tried many times with 6 usb devices (4 external USB3 2.5" hard drive and 2 pendrive) connected at same time with no problems as well as the restart and the shutdown have always worked correctly.
Different behavior when XP boots with an usb device already inserted in any usb2/usb3 port, but you are already aware of that.

I don't know if a workaround can be found to bypass this problem, maybe to delay the USB3 driver loading during the XP boot could be a way?
For the moment, my Renesas/Nec pci-ex to USB3 card solved this issue.
#4210Andalu
Zitat von ⇗ daniel_k im Beitrag ¶ #4203
My last post here.....

I'm sad to read this. It's a big loss for the forum.
Thanks so much for your great work
#4211YuriyCN

I solved the previously described problem.
USB 3.0 driver forIntel 100-series - ⇗ https://www33.zippyshare.com/v/EmUcBIrn/file.html
Windows XP SP3 RUS LWOS v2 build 20.02 - ⇗ https://yadi.sk/d/u4G9oQajqTSeGQ this build with updates to February 2020.
Integrate USB 3.0 driver with nLite - ⇗ https://www.nliteos.com/download.html

As it turned out, you need to use this USB 3.0 driver with WinXP updated to 2020. On a clean MSDN image of WinXP SP3 - CHKDSK did not work with this driver. But on the WinXP LWOS (LWGAME, nCore project) with updates 02.2020 - CHKDSK works fine, including PAE mode!
#4212Andalu⇗ @YuriyCN
I tried the ISO updated at february 2020 but the problems seem to be unresolved, al least here.
I only added the acpi.sys (sha-1: 8EF48518B17DAAC4A90632A811FBFDC8183C325B) and the Universal 32bit Intel RST AHCI+RAID driver v11.2.0.1006 modded by Fernando to the ISO image with nLite. The XP installation ends normally.
I applied the WinXPPae 2.0 patch and installed the amdxhc.sys driver (sha-1: 61711270A0BF0AFC3AFC71047FE8F32643D6FD54). On restart, with no USB device connected to the board, XP boots normally and the whole ram has been correctly recognized. But the system hangs always on shutdown. Furthermore, with an USB device already connected to the USB3 port, XP boots correctly but the same usb device is not recognized as has always happened. I also tried with the amdxhc.sys (sha-1: 1AE2108E29A528EFDA7F7497952298A406991E21) with the same results.
The chkdsk utility has always worked, at least it.
#4213YuriyCNWe need to find a normal, most updated distributive of Win XP, integrate all the drivers and put it in public.
Most people do not understand how to install the system on modern PCs.
It's time to create ready solutions.

For Russian-speaking people, I recommend using the "Windows XP SP3 RUS LWOS v2 build 20.02" - ⇗ https://vk.com/topic-28391636_35530104
#4214ruthanSomeone here mentioned that intel-218 drivers is working in XP, can someone pleas working driver?
#4215infuscomus⇗ @Andalu ⇗ @YuriyCN

I made a windowsXP Ryzen edition - it's on pirate bay if you want to try it

 

Page 282

#4216YuriyCN
Zitat von ⇗ infuscomus im Beitrag ¶ #4215
@Andalu @YuriyCN
I made a windowsXP Ryzen edition - it's on pirate bay if you want to try it
Unfortunately, the "Windows XP Ryzen edition" did not install on my Intel motherboard with the H110M chipset.
Please clarify how it is done "ACPI timer fix (thanks to daniel_k)"?? Where can I read about this information? What is the essence of the changes?
#4217Andalu⇗ @infuscomus
I have not a Ryzen system. Thanks anyway ;)
#4218infuscomus⇗ @YuriyCN

how far into XP setup did you get? did you get past textmode setup?

any BSODs?

I'm not entirely sure how the hal timer fix works, ask ⇗ @diderius6 or ⇗ @daniel_k if you want to know how it works

I dug through the thread and found this one -
¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (197)
I'm sure there is a newer version somewhere in the thread though

⇗ @Andalu

I tried to include fixes for intel Z100/200/300 systems in this too, I don't have an Intel system myself so I'm not sure if they work.
#4219gordo999
Zitat von ⇗ daniel_k im Beitrag ¶ #4194
In the next days, all of my modded drivers and WinXPPAE will be available at MDL Forums' Windows XP / Older OS section (forums.mydigitallife.net). The Admin gave me his OK.
⇗ @daniel_k ...Thanks for all your good work. Will keep an eye open at mdl.
#4220YuriyCN
Zitat von ⇗ infuscomus im Beitrag ¶ #4218
@YuriyCN

how far into XP setup did you get? did you get past textmode setup?

any BSODs?

I'm not entirely sure how the hal timer fix works, ask @diderius6 or @daniel_k if you want to know how it works

I dug through the thread and found this one -
¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (197)
I'm sure there is a newer version somewhere in the thread though


Text mode settings were successful. Next, the files are copied and the first reboot. Everything is fine. Further installation in graphical mode and again everything is ok. Then the second reboot and already at the 3rd stage of the installation I get BSOD. That is, the installation reaches almost completion.

The BSOD code was 7B as with unsuitable AHCI SATA drivers, but there are drivers, because the 1st and 2nd stages went fine. I tried to additionally enable the obviously working AHCI SATA Fernando mod driver - but this did not help. Therefore, I refused your assembly and took another from the LWGAME | NCORE project and integrated all the drivers into it. As a result, everything was normal.
#4221infuscomus⇗ @YuriyCN

Do you know which driver setup used initially? was it the intel driver or storahci?
#4222YuriyCN
Zitat von ⇗ infuscomus im Beitrag ¶ #4221
@YuriyCN
Do you know which driver setup used initially? was it the intel driver or storahci?
I do not know. But some driver was definitely used. If there is no AHCI SATA driver, then we get a 7B BSOD at the 1st stage of installation. But I got a BSOD in stage 3. You need to figure out what happens in the final stage of installation.
#4223ruthanI wrote about this long time ago, but i wanst able to find the link:
X58-DOS (with real sound card sound)/Win98SE/WinXP/Win7/Win10 X58 machine, its not "real" multiboot because of you need some card exchanges for oses, i trying to make it working without it
⇗ https://www.vogons.org/viewtopic.php?f=25&t=56460
  You can find here something about how to make NVME disk working without bios support through Clover

Update:
 Funny is games speed comparision with 8700K, if you which that this X58 machine is slow.. you will suprised:
⇗ https://www.youtube.com/watch?v=skV9exEDM3w
#4224gordo999Something odd in my XP setup. I used the modded acpi.sys from this site to get XP going. It always failed with an 0XA5, indicating an acpi issue and the mod got it going. Recently, I did a repair install and the installer put the original acpi.sys back in the drivers folder. The system still boots with the original acpi.sys.  Go figure!!!
#4225Andalu
Zitat von ⇗ infuscomus im Beitrag ¶ #4218
I tried to include fixes for intel Z100/200/300 systems in this too, I don't have an Intel system myself so I'm not sure if they work.
I tried the ISO on my Q370 system:
- textmode setup ok;
- 1st reboot: first step of the GUI setup ok;
- 2nd reboot: XP hangs on a blank screen with only the mouse cursor visible but locked.
No changes on the next restart/shutdown.
#4226infuscomus⇗ @Andalu
can you move the cursor? or is it completely frozen?
I might look at removing the USB 3.0 files during setup, if that turns out to be the issue.
#4227Andalu⇗ @infuscomus
the cursor is completely frozen even if the ps/2 mouse is powered.
I only used the usb stick with the iso image, no other usb device connected to the board.
#4228ruthanI have exactly same problem not not working input.
#4229gordo999
Zitat von ⇗ daniel_k im Beitrag ¶ #2751
https://docs.microsoft.com/en-us/windows-hardware/drivers/debugger/bug-check-0xa5--acpi-bios-error ...
⇗ @daniel_k  ...if you're still around. Had not noticed this post before but it is of interest to me. I fixed my 0xA5 errors using the acpi.sys file but I have noticed other BIOS-related errors, like when I tried to use a Cannon Lake INF package in an attempt to update my B360 chipset driver base. The INF contains all the correct hardware IDs for my chipset.

I put the error down to an older XP system not being aware of the newer BIOS on my B360-based motherboard. It does not make sense that my current BIOS is incomplete because it runs W10 and W7 without complaint. Therefore the problem seems to be in the ACPI components enumerating the BIOS.

Can you offer some advice on that? What XP components enumerate the BIOS? In my XP registry, there is a registry hive in HKLM\System\CurrentControlSet\Hardware that is only loaded when the system is live. It contains information about the BIOS. The data must be valid since it is loaded live from BIOS therefore the ACPI enumerating software must be incapable of reading it correctly.

ps. just occurred to me that the older enumerating software is looking in the wrong place for information in the newer BIOS.  It would seem I need to use newer enumerating software.
#4230infuscomus⇗ @Andalu

can i send you a copy of paragon rescue kit and a working XP install image?
restore the image and see if it's working?

 

Page 283

#4231Andalu⇗ @infuscomus
no problem ;)
#4232Andalu⇗ @ruthan
my mouse issue occured only during the XP installation with that specific ISO image. Never happened before with a ps/2 mouse for other ISO images.
About your problem, have you already checked the bios settings? Is there the ps/2 emulation for keyboard and mouse?
#4233ruthanIts gigabyte bios there some legacy usb and port 60 something, should they be enabled or disabled?
#4234Andalu
Zitat von ⇗ ruthan im Beitrag ¶ #4233
Its gigabyte bios there some legacy usb and port 60 something, should they be enabled or disabled?

Your mouse/keyboard issue seems to be a bios related but I don't have your same board so I can't give you an exact suggestion. You have to go by attempts. The usb legacy should be always enabled. Have you also tried to set the "emulation of I/O ports 64h and 60h" on enabled and the 'fast boot' entry on disabled?
#4235ruthanYeah fast boot is disabled.. there is no any PS/2 specific settings.
#4236YuriyCN
#4237infuscomus⇗ @Andalu
Hi,
I PMed you paragon rescue kit and an XP image.
#4238Andalu⇗ @infuscomus
I tried the ISO on my asus Q370:
at first attempt, I got the 0xA 'IRQL not less or equal' BSOD.
Replacing the acpi.sys with another mod version, XP boots normally but keyboard and mouse, both connected in two different ps/2 ports, don't work anyway (also in safe mode), even if their leds are on. There are no entries in the asus bios that can be related to the ps/2 emulation or similar.

Same behavior on the asrock B250, also with ps/2 emulation enabled in the bios.
Some drivers seem to be missing.
#4239infuscomus⇗ @Andalu
any luck with USB ports? or not working?
also, which acpi.sys did you use? - there are so many it's hard to keep track.
#4240Andalu⇗ @infuscomus
I have tried six other different versions of acpi.sys (5048 and 6666), same behavior.
No luck also using the usb mouse. Most probably the usb will work but my system needs to search and install the related drivers and with no input device I can't do anything. I'm always stuck at this point:

#4241ruthan⇗ @Andalu i was here, there is solution.. yoy need to make automated instalation, or integrated network drivers and enable remote desktop connection in nlite.. after that you can work with machine.. Or maybe you can just enable Remote desktop through some registry value..
#4242infuscomus⇗ @Andalu

It's asking to install the PCI bus driver? you hardly ever see that!

as ruthan said, If you have network access to it you can access it remotely and do the driver installation there.

or otherwise, you can get a PCIE USB 2.0 card, connect everything to that and restart XP setup over again from scratch.
#4243gordo999
Zitat von ⇗ Andalu im Beitrag ¶ #4238
...both connected in two different ps/2 ports, don't work anyway (also in safe mode), even if their leds are on. There are no entries in the asus bios that can be related to the ps/2 emulation or similar.
⇗ @Andalu ....Do you have PS/2 emulation? If so, you need emulation turned off when you have physical ports? Also, is your BIOS set for ACPI or legacy? Is CSM turned on?

I have never had a problem with PS/2 on my B360 chipset. I have two physical ports and both the mouse and keyboard always work.
#4244Andalu⇗ @infuscomus ⇗ @ruthan
thanks for your suggestions but I don't have both the network access to my system and a PCIE USB 2.0 card. I don't need to go deeper. Besides, it was just a test and it is not sure that XP can work 'perfectly' with that iso as expected, even with the drivers installation. At moment, I can be satisfied how pae and usb3 work simultaneously on my system. Of course, I needed to use a PCIE USB3 card to avoid PAE issues.

⇗ @gordo999
in the bios (asus makes no effort to improve it) there is not ps/2 emulation; both csm and legacy are enabled.
I never had those problems before, mouse and keyboard don't work only with that ISO.
#4245ruthanFor these who dont follow our Win98 on modern system.. i only want to report that LInux - KVM - PCI-e / PCIe video cards passthrough + PCI sound cards is proven as working (you can use virtualized sound card too, but it has its flaws, or maybe USB one too - untested with Qemu, but tested with real Win98). Vitual Realtek 8139 is working too.
  So all is ready to for using Windows 98 on any HW with device pass through virtualization support (for Intel:vt-d, for AMD: AMD-V ) on any desktop MB (i will not test it with laptors, but there are some external PCI / PCI-e boxss which you work too - ), where you have some free slots, if are willing to install Linux (other OSes dont support card passthrough) to some partition (30GB) to make it working, except initial setup, you could after ignore Linux part of its, its could be used just as "fancy bootloader" for you Win98 machine.. you course can pass through cards for WInXP, WIn7 and Wi10 too, its much let hassle.

Proof:
 ⇗ Windows 98SE on Modern Hardware (6)

Guide:
 ⇗ Windows 98SE on Modern Hardware (6)

 

Page 284

#4246gordo999⇗ @Andalu ...your no mouse/keyboard problem is a tough one but you may find the answer in the ISO i386 directory in the txtsetup.sif file. It's a text file that can be loaded in a text editor. On one of my disks it lists [Mouse] as follows:

[Mouse]
msps2 = "Microsoft Mouse Port Mouse (includes BallPoint)",files.i8042,i8042prt
lgps2 = "Logitech Mouse Port Mouse",files.i8042,i8042prt
msinp = "Microsoft InPort Bus Mouse",files.inport,inport
msbpser = "Microsoft BallPoint Serial Mouse",files.sermouse,sermouse
lgser = "Logitech Serial Mouse",files.sermouse,sermouse
none = "No Mouse or Other Pointing Device",files.none,""
mouhid = "USB Mouse",files.mouhid,mouhid
msser = "Microsoft Serial Mouse",files.sermouse,sermouse
ps2 = "Mouse Port Mouse",files.i8042,i8042prt
sermouse = "Serial Mouse",files.sermouse,sermouse
USB = "USB Mouse",files.mouhid,mouhid

Also,

[Keyboard]
STANDARD = "XT, AT, or Enhanced Keyboard (83-104 keys)",files.i8042,i8042prt
kbdhid   = "USB Keyboard",files.kbdhid,kbdhid
USB      = "USB Keyboard",files.kbdhid,kbdhid

Make sure yours has not become corrupted somehow. It's unlikely that corruption would affect only the USB and PS/2 mouse and keyboard, however, but there may be something like the error I found after using nlite. Under the section [SetupData] it had listed my defaultdrive as being on the D:\ drive instead of C:\. It's actually supposed to be listed as DefaultPath=\WINDOWS, with no drive letter because earlier in the section SetupSourcePath = "\" is declared. That presuming your windows directory is called windows.

Also, you might check the setupapi.log on your installation. You can view it offline from another OS or use a boot disk like the modern Hiren's boot disk. The older ones won't boot into on a modern chipset since they are based on Win XP. Just thought that I may be able to mod one of their old disk with the newer acpi and sata drivers. :-)

It should tell you what problems it encountered during setup. Mine is located in the windows directory. Do a search for mouse and keyboard and check each reference. It claims to have found "PNP0F03" in c:\windir\inf\msmouse.inf. Make sure your line corresponds to your actual windir and that msmouse.inf is in the INF directory. It also lists PNP0F13 for compatible mouse drivers.

Same with keyboard.
#4247Opanje123Hello!
I need to install Windows XP32 on motherboard N3160N-D3V.
BIOS recognizes hard drives, but gives an error "Reboot and Select proper Boot device or Insert Boot Media in selected Boot device and press a key". I tried to integrate the drivers AHCI in WinXP, but did not help :(
#4248ruthanThis means that your computer is not starting from boot cd / usb there you have win xp install.. So you have wrong boot order, or bad media etc..
#4249Andalu⇗ @gordo999
thanks for info and help but I can't access to the i386 folder because I don't have the ISO image. I have restored an XP image saved from another system, so I can't verify the txtsetup.sif file.

In the setupapi.log everything about the driver installation and the paths of the keyboard and mouse seems to be correct. But it does not matter ;)
#4250gordo999
Zitat von ⇗ Andalu im Beitrag ¶ #4249
In the setupapi.log everything about the driver installation and the paths of the keyboard and mouse seems to be correct. But it does not matter ;)
⇗ @Andalu ...the only other thing coming to mind is an IRQ conflict. Two devices are trying to use the same IRQ, or possibly trying to access the same memory. Modern chipsets with an apic should not have that problem but sometimes there are several devices sharing the same IRQ.

The only practical way to check that with an offline machine is to move cards around in your PCI slots, or remove all cards except those you need, like the video driver. Here's a brief article outlining the idea using the registry.

⇗ https://helpdeskgeek.com/how-to/manage-irq-settings-windows/

You can access the registry in the offline machine from the registry of an online machine. Highlight Hkey_Local_Machine then look under the File menu at top of screen. Press Load Hive and direct it to %windir%\system32\config on offline machine. For the case in the article above, you would select the system hive in that directory then name it something unique like offline_system. It will show up under the HKLM key as offline-system. Then you can edit it as required. Remember to Unload it before shutting down regedit.
#4251Andalu⇗ @gordo999
Thank you again for your post, I will keep your valuable advice for a future need. I preferred to let that ISO go because, as already reported, while solving the mouse and keyboard problem, I'm not sure to avoid other issues related to the same ISO.
#4252MarwanHello ... I own a Lenovo g50_30 laptop. Can I install Windows XP on it?  Are there drivers for it?
#4253Fernando⇗ @Marwan:
Welcome to the Win-RAID Forum!
I have moved your request into this already existing thread, where you can find a lot of information.
My answer to your question: Yes, it is possible to install Windows XP onto your laptop.
Good luck!
Dieter (alias Fernando)
#4254gordo999
Zitat von ⇗ Fernando im Beitrag ¶ #4253
Yes, it is possible to install Windows XP onto your laptop.
Good luck!Dieter (alias Fernando)
⇗ @Fernando ....it not only works, it works very well, thanks to you and the guys in the thread. I was told initially that it was impossible.

BTW...are you aware of 'right to repair' legislation in Europe. I have been advised that certain countries have enacted legislation giving consumers the right to have old equipment repaired. That's all I know. If it's correct, I am wondering how that might be extended to the right to have an OS like XP maintained by Microsoft.
#4255YuriyCNNVIDIA GeForce iCafe Graphics Driver 368.91 for XP 32bit
Supported cards:


Driver - ⇗ http://cn.download.nvidia.com/Windows/iC...ternational.exe

GeForce 1000 series:
GTX 1080, GTX 1070, GTX 1060

GeForce 900 series:
GTX TITAN X, GTX 980 Ti, GTX 980, GTX 970, GTX 960, GTX 950

GeForce 700 series:
GTX TITAN Z, GTX TITAN Black, GTX TITAN, GTX 780 Ti, GTX 780, GTX 770, GTX 760 Ti,
GTX 760, GTX 750 Ti, GTX 750, GTX 745, GT 740, GT 730, GT 720

GeForce 600 series:
GTX 690, GTX 680, GTX 670, GTX 660 Ti, GTX 660, GTX 650 Ti BOOST, GTX 650 Ti, GTX 650,
GTX 645, GT 645, GT 640, GT 630, GT 620, GT 610, 605

GeForce 500 series:
GTX 590, GTX 580, GTX 570, GTX 560 Ti, GTX 560 SE, GTX 560, GTX 555, GTX 550 Ti, GT 545, GT 530, GT 520, 510

GeForce 400 series:
GTX 480, GTX 470, GTX 465, GTX 460 v2, GTX 460 SE v2, GTX 460 SE, GTX 460, GTS 450, GT 440, GT 430, GT 420, GT 415
#4256ruthan⇗ @YuriyCN: Is somewhere real confirmation that its really working with Geforce 10xx?
#4257YuriyCNFor NVIDIA (Windows XP):

nVidia Geforce iCafe Expresso 368.91 WHQL Desktop driver

Notes: ⇗ https://drivers.softpedia.com/get/GRAPHI...91-for-XP.shtml

Driver: ⇗ http://cn.download.nvidia.com/Windows/iC...ternational.exe

For AMD RADEON (Windows XP):

2015.09.30 version 300.100 - icafe-winxp-9.00.300.3010-beta1-br294594-sep24.exe
AMD Radeon HD 5000 Series

HD5450 / HD5550 / HD5570 / HD5750 / HD5770 / HD5830 / HD5850 / HD5870
AMD Radeon HD 6000 Series
HD6450 / HD6570 / HD6670 / HD6750 / HD6770 / HD6850 / HD6870 / HD6950 / HD6970

AMD Radeon HD 7000 Series
HD7750 / HD7770 / HD7850 / HD7870 / HD7950 / HD7970 / HD7990

AMD Radeon R9/R7 200 Series
R5 230 / R7 240 / R7 250 / R7 250X / R7 260X / R9 270 / R9 270 1024 SP / R9 270X / R9 280 / R9 280X

AMD Radeon R9/R7 300 Series
R7 360 / R9 370 1024 SP / R9 370X

All AMD Radeon APU Series
HD7480D / HD7540D / HD7560D / HD7660D / HD8370D / HD8470D / HD8570D / HD8670D / R7 series

Notes: ⇗ https://web.archive.org/web/201808170741...fe-unified.aspx

Driver: ⇗ http://radeon.ru/drivers/amd/xp/icafe-wi...94594-sep24.exe
#4258AndaluIt's a shame there is nothing to do for a RX550 to work in XP
#4259gordo999
Zitat von ⇗ ruthan im Beitrag ¶ #4256
@YuriyCN: Is somewhere real confirmation that its really working with Geforce 10xx?
⇗ @ruthan ....if you mean is XP working with GeForce 10xx, I can only confirm that XP works fine with the driver 368.91. I had no trouble loading my GT-730 drivers and all the extras even though I did not remove the earlier GeForce driver set. The installation asks you if you want to do a fresh install.

What you have to watch is that the entire 368.91 package downloads, otherwise the installation will stop and claim there are files missing. I don't know how that is possible since the package comes zipped with an exe extension. However, my first d/l of the package had several files and folders missing. I suggest you download whatever package you need from Nvidia's site.
#4260ruthanIf you mean that this driver is working with Geforce 730 is nothing.. important is 10xx, i thing that if it would work we would know, it would be big thing.. This looks just like bugged release notes, probably through some copy/paste.. I checked some Guru3D thread about this release, there wasnt any positive info..

 

Page 285

#4261IntiMD⇗ @ruthan IIRC the xp package doesn't even have the relevant HWIDs for 10xx gen in the .infs, and even if you add them and try to force the install on them, best case scenario would be 2d acceleration available but lack of 3d acceleration. worst case scenario it would fail to install the driver at all.
#4262gordo999
Zitat von ⇗ ruthan im Beitrag ¶ #4260
If you mean that this driver is working with Geforce 730 is nothing.. important is 10xx
⇗ @ruthan ....from the 368.91 release notes....

"Supported cards :
GeForce 1000 series:
GTX 1080, GTX 1070, GTX 1060..."

If the 368.91 drivers support the GT-730 on XP they should support the 10xx series. Why would they not? What errors do you get when you try to load the 368.91 package? Does it install but the 10xx series card does not work? If so, I'd say your XP installation is not working correctly. You may have  wrong or missing chipset drivers.

There was issue with the acpi driver before daniel_k fixed it. I don't recall the details but apparently it did not show the display driver. You might want to research that.

It took me several attempts to get 'different' driver packages loaded. The installer complained of missing files. When I finally got the proper package from Nvidia, with a good download, the good file had many more folders and files than the bad one. The good one loaded immediately with no errors and the GT-730 is working very well.

Sorry...I did not check to see which motherboard/chipset you have. Mine is an Intel B360 300-series chipset. I have presumed, apparently incorrectly, that the reference to 'modern' chipsets in the title of this thread means really new chipsets like the 300-series. XPLIVES had to straighten me out on that so maybe I spoke too soon.
#4263gordo999
Zitat von ⇗ gordo999 im Beitrag ¶ #4262
You may have  wrong or missing chipset drivers.
⇗ @ruthan ...here's an example of what I mean. Recently, I did a repair install on my XP installation using an XP install disk slipstreamed with SP3. My Nvidia card and my Creating Xfi card were working before the repair install but after the driver packages for both could not find the Nvidia or Xfi cards. That was because the XP SP3 drivers lacked the proper chipset drivers for my 300-series B360 chipset. The PCIe ports were not being enumerated correctly.

I got them back again by slipstreaming the unofficial XP SP4 update with the XP SP3 disk. Somewhere in the SP4 update they have chipset drivers for my B360 chipset. I don't think they are drivers for the hardware ID but for the compatible hardware ID. With those chipset drivers installed the Nvidia and Creative boards started working again.

BTW...the SP4 unofficial update has SATA drivers signed by Fernando, so Harkaz, who created the SP4 updater, knows about these things. I did have to reinsert the ACPI mod by daniel_k  to get around the 0XA5 ACPI error during installation. I also had to fix the unattend in nlite to allow the installation to stop at the point where a repair install is available. If it's marked as a full unattend it will not allow a repair install but will allow a parallel XP installation, which doesn't help a lot unless you want a clean install.

Another point to note. Anyone trying a repair install of XP should be sure to remove Internet Explorer first. It can be done in Add/Remove Hardware under add/remove Windows components. Otherwise the installtion will go into a loop in the final stage. You can also reboot into safe mode at that point and remove IE then.
#4264ruthanChipset doesnt matter.. Geforce 730 using same chip logic as Geforce 9xx card, 10xx is new architecture.. to make it working you need at least some new code.. Because Nvidia want to save some time and money they didnt wrote that code.. and unless someone hack their drivers it will never work. If it would work, we would have lots of success stories and videos around.. but we have only some release notes mistake.
#4265XPLives⇗ @Fernando

Zitat von ⇗ Fernando im Beitrag ¶ #4202
Zitat von ⇗ daniel_k im Beitrag ¶ #4194
I was asked to delete all of my modified 3rd party drivers to avoid copyright issues here. I've been told that in the near future, all modified files that are copyrighted will be deleted.
Just for clarification:
Only attached or linked drivers, whose *.SYS file code has been altered, will be deleted by the Win-RAID Forum team (to avoid any problems with the manufacturer of the original driver).
Fernando, what caused this change of thinking?  I seemed to recall many drivers were modified and uploaded here as far back or earlier than 8-1-2019.  I assumed that somehow your site had some German immunity since your Intel SATA drivers seemed to be allowed although no sys modification and when diderius6 and daniel_k uploaded their modified files I assumed you were okay with it then or it was allowed due to some oversight being a German site.

What happened since then that caused this sudden enforcement?
Were you alerted by any of the driver companies directly to take them down?  And if so which ones?

Most of the XP drivers that are modified seem to be defunct and no longer updated or old enough that no one really cares about anymore or as you put it once a 20 year old OS that no one has time for anymore so at best there is no profit involved for those companies as most have shifted towards Windows 10 drivers only.

Anyhow I'm just wondering what transpired as it seems starting February 29th, 2020 a lot of these files have been taken down.  I think a lot of the continued popularity of this thread could be attributed to diderius' and daniel_k's contributions to this massive thread involving their files for newer systems.
#4266XPLives⇗ @daniel_k
Zitat von ⇗ daniel_k im Beitrag ¶ #4203
My last post here. Please read this:

INTEL END USER SOFTWARE LICENSE AGREEMENT

IMPORTANT - READ BEFORE COPYING, INSTALLING OR USING.

THE FOLLOWING NOTICE, OR TERMS AND CONDITIONS SUBSTANTIALLY IDENTICAL IN NATURE AND EFFECT, MUST APPEAR IN THE DOCUMENTATION ASSOCIATED WITH THE INTEL-BASED PRODUCT INTO WHICH THE SOFTWARE IS INSTALLED. MINIMALLY, SUCH NOTICE MUST APPEAR IN THE USER GUIDE FOR THE PRODUCT. THE TERM "LICENSEE" IN THIS TEXT REFERS TO THE END USER OF THE PRODUCT.

LICENSE. Licensee has a license under Intel's copyrights to reproduce Intel's Software only in its unmodified and binary form, (with the accompanying documentation, the "Software") for Licensee's personal use only, and not commercial use, in connection with Intel-based products for which the Software has been provided, subject to the following conditions:
(a) Licensee may not disclose, distribute or transfer any part of the Software, and You agree to prevent unauthorized copying of the Software.
(b) Licensee may not reverse engineer, decompile, or disassemble the Software.
(c) Licensee may not sublicense the Software.
(d) The Software may contain the software and other intellectual property of third party suppliers, some of which may be identified in, and licensed in accordance with, an enclosed license.txt file or other text or file.

As you can see, 99.99% of all software available here is theoretically being distributed/modified against Intel's EULA.
Even the Coffee Lake mod is a clear case, as they weren't originally intended for use with non-certified boards.

   
It's not entirely clear but were you notified to not upload your modified drivers from one of the driver companies or was it Fernando only?

I naturally and incorrectly assumed that the site being in Germany had some sort of immunity than if it were based in the United States which is why when diderius6 or yourself uploaded modified files I thought it was allowed.

This may not matter now being your last post here.   But at the time I was considering to split this main thread into ACPI, USB 3.0, and XP Pro 64-Bit threads when it was around 2500 messages aside from the diderius6 and dencorso objections one major factor that played into me not splitting the thread had to do with you.  When I realized the connection of where I had seen your name before involving your work on the Creative Labs drivers it gave me further pause and ultimately decided even though it would have been a lot of work and doable maybe with Lost_N_Bios' help it may have in some way jeopardized your own work or momentum on the drivers.

I had not yet had time to create my own XP dedicated forum site (maybe one day) but as long as you can continue your work and archive it on your own site or elsewhere I'm sure it will be continually appreciated.  If you are able to write a guide on how to learn and perform these ACPI and USB 3.0 modifications it would probably help further the progress of it.  I know trying to do this as a solo mission probably is a huge undertaking but perhaps others could then take up the slack and expand the efforts you've contributed thus far.  As a fellow Asian as well as long you are able to persist you can accomplish your goal.
#4267Fernando⇗ @XPLives:
Here is my statement:

  1. As Admin of this Forum I am responsable for everything, what is published here. It is my duty to take care about the adherence of the Copyright rules. Otherwise I risk, that the Forum will be closed by the related authority.
  2. Nothing would have happened from my side, if the driver modder had given just the information within the Forum, that interested users may send him/her a PM.
  3. The Copyright rules are world wide valid. So there is no "German immunity" regarding its adherence.
  4. It makes a big difference, whether a Copyright violation is "allowed" or just "tolerated" by a certain chipset manufacturer.
  5. Zitat von ⇗ XPLives im Beitrag ¶ #4265
    What happened since then that caused this sudden enforcement?
    It took some time until I had recognized, that some users had linked or attached modded drivers, whose hex code and digital signature had been manipulated. As soon as I had realized that, I did what my duty as Forum Admin is.
    Additional problem: The users of the related drivers got not even the information,
    a) that the driver itself (= *SYS file) has been modified and
    b) who had done the modifications.
  6. Zitat von ⇗ XPLives im Beitrag ¶ #4265
    Were you alerted by any of the driver companies directly to take them down?
    Yes, but I will not publish the name of the Company.
#4268YuriyCNAccording to Newtons Law 3, the force of action is equal to the strength of the reaction. They will receive a similar blow from consumers in response. Soon the time will come when users will stop buying Windows 10, remaining on the old OS, which is much simpler, more convenient and do not have unsolicited functionality.
#4269OutbreakerIf Linux gets more and more gaming support it will be soon by by for Windows. POP_OS! is a good example off improving the gaming experience on Linux. I would even pay 10% more for a Game that has a good native Linux support.
#4270schreibersteinHey there!
After my GTX 780 died, I refrained from experimenting with bare-metal Windows XP on my Gigabyte Z390 Designare.
It wasn't a good experience overall anyway. My focus shifted to PCI-passthrough via KVM virtualization on Linux - But I was unable to pass through graphics cards to non-UEFI Windows guests (e.g. Windows XP i386).
I purchased a NEC based PCI USB 2.0 which worked in the native UEFI environment (during boot) and I was able to pass that to a Windows 10 guest.
However, there were so many IRQ/IOMMU group conflicts that I decided not to pursue this any longer.
(A KVM virtualized Windows XP guest starts in a split second though. Really really impressive, especially when compared to bare metal performance and boot time)


I would now be interested in building an AMD Ryzen X570 based system, paired with an AMD Radeon 7970 or 7950 (supports both Windows XP and latest MacOS, as well as Windows 10 compatible Adrenaline drivers).
Loosely following this thread, I have noticed that some folks on here are already on this platform. Is there any brand I should avoid or favor?
I'd like to ask about your experience with it, especially in comparison with other Intel systems.
Is compatibility better? At least the Windows 7 compatibility seems outright better. My Z390 board has this weird stutter-effects on Windows 7, regardless of what GPU I use.
Since I have an external box for traditional PCI cards, I would primarily use the NEC based USB2 chip for USB keyboard and mouse.
I would be thankful for any suggestions.

Cheers,
schreiberstein
#4271gordo999
Zitat von ⇗ schreiberstein im Beitrag ¶ #2946
⇗ @diderius6 ...I have just installed this *** HAL.dll and intelppm on my XP system and voila...This magically fixed all web browsers and some obscure game demos from 2005 that I attempted to run.
⇗ @diderius6 ... ⇗ @schreiberstein ...Just want to confirm that I had the same success using hal and intelppm. I had not paid much attention to those files and was having issues running Firefox on XP and with direct3D issues on games. The games would play sound fine but the video would stall so much the games became unplayable.

I am happy to report my Firefox browser now works perfectly and my games as well. Congratulations to all you guys who worked on this and thank you kindly. I should mention my system uses an Asus B360M with the Intel B360 chipset and an Intel i5-8400 processor. I am using an Nvidia GT-730 video card with a Creative Xfi extreme music sound card.
#4272XPLives⇗ @schreiberstein
Zitat von ⇗ schreiberstein im Beitrag ¶ #4270
Hey there!
After my GTX 780 died, I refrained from experimenting with bare-metal Windows XP on my Gigabyte Z390 Designare.
It wasn't a good experience overall anyway. My focus shifted to PCI-passthrough via KVM virtualization on Linux - But I was unable to pass through graphics cards to non-UEFI Windows guests (e.g. Windows XP i386).
I purchased a NEC based PCI USB 2.0 which worked in the native UEFI environment (during boot) and I was able to pass that to a Windows 10 guest.
However, there were so many IRQ/IOMMU group conflicts that I decided not to pursue this any longer.
(A KVM virtualized Windows XP guest starts in a split second though. Really really impressive, especially when compared to bare metal performance and boot time)


I would now be interested in building an AMD Ryzen X570 based system, paired with an AMD Radeon 7970 or 7950 (supports both Windows XP and latest MacOS, as well as Windows 10 compatible Adrenaline drivers).
Loosely following this thread, I have noticed that some folks on here are already on this platform. Is there any brand I should avoid or favor?
I'd like to ask about your experience with it, especially in comparison with other Intel systems.
Is compatibility better? At least the Windows 7 compatibility seems outright better. My Z390 board has this weird stutter-effects on Windows 7, regardless of what GPU I use.
Since I have an external box for traditional PCI cards, I would primarily use the NEC based USB2 chip for USB keyboard and mouse.
I would be thankful for any suggestions.

Cheers,
schreiberstein


   
AMD has better DOS compatibility.  Intel has better XP compatibility.  Those were the most significant.

As for why your GTX 780 died could be due to old age/overheating from dirty fans.

Radeon 7000 HD series is pretty ancient but if it does XP and Mac OS natively then you should choose that than nVidia 700 or 900 series.

A GT 730 might be a better card for Intel system for fanless solution on the cheap for XP.  Mac OS if can be made to work then this would be a good fanless hackintosh hybrid.

Not sure about Windows 7 stuttering problem.  Most likely ACPI is no longer compatible on Z390 and needs a BIOS Mod.  If it doesn't stutter in Windows 10 then you have your answer.
#4273gordo999
Zitat von ⇗ XPLives im Beitrag ¶ #4272
Not sure about Windows 7 stuttering problem.  Most likely ACPI is no longer compatible on Z390 and needs a BIOS Mod.  If it doesn't stutter in Windows 10 then you have your answer.

⇗ @XPLives ....The Z390 is a more expensive version of my B360. I have no issues with stuttering in W7 and have had no problems with it at all once the chipset drivers were updated and the USB driver from canonkong was installed. My GT-730 has worked on W7 from the start as well as my Creative Xfi extreme music card. I had W7 USB 3 running on an add-on card with a VIA chipset before installing the canonkong drivers.

With XP, I was getting complaints from XP that my i5-8400 processor had issues. Video on games would stutter and stop randomly and hitting the escape key often recovered from the stalls. No browser would run 100%. With Firefox 52, I got it to run by keeping the task manager open. Firefox would not respond to mouse clicks till I had clicked the mouse on task manager...go figure.

All of those problems cleared up when I installed hal and intelppm from this site.
#4274XPLives⇗ @gordo999
Sounds like using those 2 files will have the same effect as the BIOS Mod.
Go ahead and add a link to the proper post you found each driver.  I'll have to check if these files fix any anomalies you had on my own system.
List which games would stutter and stop randomly before applying the two files.
When I have more time I will investigate this.  For the moment I haven't used Firefox yet on the Z370.  Mainly browsing on Ivy Bridge.

EDIT by Fernando: Unneeded fully quoted post and blank lines removed (to save space and for a better readability).
#4275schreiberstein⇗ @XPLives

I bought it used a few months prior to using it as my daily driver.
And then it just died with artifacts. It was clean and I did not game for more than an hour with it in total.
Then it just crashed my Mac system while doing some light text editing work.
Now, I cannot load the drivers or the system will hang. I attempted underclocking the RAM and core by replacing the BIOS, but I think the VRAM is bad.
Even in VESA mode I have artifacts that seem to be caused by bad video RAM.

I have lost my faith in Intel platforms. People advised me that I should go with a Pentium 4 / 775 system with i865 chipset for Windows 98 retro stuff, but I had nothing but problems with this Intel garbage. Same for other Intel based machines. Meanwhile, all my Socket 939 / AM2 machines are rock steady whenever I drag them out my basement. They POST very quickly, detect all attached drives, etc. Given that the AMD Vanilla hackintosh community is doing very good process, I think I will ditch Intel altogether in the foreseeable future.

Cheers,
schreiberstein

 

Page 286

#4276gordo999
Zitat von ⇗ XPLives im Beitrag ¶ #4274
Sounds like using those 2 files will have the same effect as the BIOS Mod.
Go ahead and add a link to the proper post you found each driver.
⇗ @XPLives ...it was post #2942 ..... ¶ #2947
Games were Myst 3 Exile and Myst 5 End of Ages. The first was barely playable but froze all the time requiring a reboot of the game. Myst 5 would not even start since it had no mouse at the page where you select New Game, etc. The video and sound was fine till that point just no mouse. Hal and intelppm fixed both.
#4277OutbreakerCan someone send me the latest USB 3.0 driver files, acpi.sys ffile, Generic SATA/AHCI driver files and the WinXPPAE.EXE file?
#4278XPLives⇗ @gordo999
Zitat von ⇗ gordo999 im Beitrag ¶ #4276
Zitat von ⇗ XPLives im Beitrag ¶ #4274
Sounds like using those 2 files will have the same effect as the BIOS Mod.
Go ahead and add a link to the proper post you found each driver.
@XPLives ...it was post #2942 ..... ¶ #2947
Games were Myst 3 Exile and Myst 5 End of Ages. The first was barely playable but froze all the time requiring a reboot of the game. Myst 5 would not even start since it had no mouse at the page where you select New Game, etc. The video and sound was fine till that point just no mouse. Hal and intelppm fixed both.

   
I had downloaded this before but never used it.  I redownloaded it now to do a later test.  I know one nVidia demo I tested did not work correctly with DK_ACPI.

¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (197)

Don't think I have Myst 3 Exile and Myst 5 at least off hand.  Might be in one of my storage boxes.  Any others games fixed?
#4279YuriyCN
Zitat von ⇗ diderius6 im Beitrag ¶ #2942
PS: Here are the hacked hal.dll and intelppm.sys for XP SP3, which solve the timer problem.
Please specify which timer problems are you talking about?
#4280ruthanLook at these threads, it was before patches:
⇗ https://msfn.org/board/topic/178240-winx...comment-1161108
⇗ https://msfn.org/board/topic/178110-xp-o...comment-1169100
#4281POE_UKYou can use EASY2BOOT to make a bootable usb XP drive, however i strongly advise against doing this, during installation EASY2BOOT installs very dodgy storage drivers that cause nothing but problems, including XP picking up on the fact that the install has been tampered with, a £10 optical drive and a good CDR disc is the way to do it.
#4282YuriyCNWhen using hacked hal.dll and intelppm.sys from the halplusintelppmXPSP3.rar, I get an increase in the performance of my SSD drive from 180-190 MB/s to 250-260 MB/s.

I have not noticed any other changes, so I recommend this patch for use - ¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (197)
#4283YuriyCNAdditional tests in Performance Test 8.0 showed, that using hacked hal.dll and intelppm.sys improves performance:
SATA SSD = + 30%
CPU = +3%
2D = +5%
3D = 0%
Memory = 0%
#4284YuriyCN
Zitat von ⇗ diderius6 im Beitrag ¶ #2942
@daniel_k @schreiberstein
Here are the hacked hal.dll and intelppm.sys for XP SP3, which solve the timer problem.
Hello diderius6!

In your message ¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (197) from Sat Oct 12, 2019 6:26 pm you proposed to use "the hacked hal.dll and intelppm.sys for XP SP3, which solve the timer problem", and you attached the "halplusintelppmXPSP3.rar" archive with these files.

Please answer a few questions:
1) Could you please write in more detail what the essence of this patch is, what problem does it solve?
2) What hardware is it intended for?
3) Is the latest version of the corrected files attached to the message, or do you have a newer one?
#4285Andalu⇗ @YuriyCN
Did you solve the issues encountered some time ago using the USB3 drivers and WinXPPae2 together?
#4286YuriyCNYes!
This problem were resolved when I use WinXP with updates to 2018.
On the clean MSDN image WinXP SP3 - the problems were not solved.
Apparently, the reason was in some kind of sys-file and after the update was decided by itself.
#4287Andalu⇗ @YuriyCN
Good news from you too then

On my system, both USB3 driver and WinXPPae /all work without the issues recognized some time ago for the updated and not updated ISOs.

I solved the issues by replacing the existing hal.dll with the version of the package "halplusintelppmXPSP3.rar" and amdxhci.sys with the version of the package "amdxhc_pae_fix.rar". So far I have not encountered any other problems.

Here the screenshot referred to my updated system started with 6 USB devices already connected to the board and 'chkdsk' and 'format' fully functional (firefox also works with no mouse input stumblings):

#4288YuriyCNHello diderius6!

In your message Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (197) from Sat Oct 12, 2019 6:26 pm you proposed to use "the hacked hal.dll and intelppm.sys for XP SP3, which solve the timer problem", and you attached the "halplusintelppmXPSP3.rar" archive with these files.

Please answer a few questions:
1) Could you please write in more detail what the essence of this patch is, what problem does it solve?
2) What hardware is it intended for?
3) Is the latest version of the corrected files attached to the message, or do you have a newer one?
#4289ITriedOkayHello, is it still possible to request a modded ACPI.SYS for my PC?

Zitat von ⇗ Outbreaker im Beitrag ¶ #4277
Can someone send me the latest USB 3.0 driver files, acpi.sys ffile, Generic SATA/AHCI driver files and the WinXPPAE.EXE file?

Check your PMs.
#4290infuscomus⇗ @ITriedOkay

have you tried the existing modded acpi.sys?

 

Page 287

#4291ITriedOkay⇗ @infuscomus

Yes... I tried ⇗ DK's version and ¶ Dietmar's version. No luck with either.
#4292infuscomus⇗ @ITriedOkay

I'll PM you one last version - ⇗ @diderius6 called it the "outer space" version.

If that doesn't work then we can only hope ⇗ @diderius6 comes back here one day to help you with it.
#4293ITriedOkayThe outer space version didn't work, the PC just goes into a black screen... The default acpi.sys yields this exact stop error:
STOP: 0x000000A5 (0x00000011, 0x00000008, 0xF72D0240, 0x20160527)
#4294infuscomus⇗ @ITriedOkay

curious that you got a black screen, it may yet still work

have you integrated the outer space acpi.sys into your XP install media?
#4295ITriedOkayIt's not an install media actually, it's a VHD that has Windows XP pre-installed, which I boot directly on PCs. ⇗ This page will give you more information on how I'm doing this... I can already replace ACPI.SYS inside it with ease, if this is what you're asking.
#4296infuscomus⇗ @ITriedOkay

Thats an unusual setup, I'd prefer booting off a physical drive myself.

your XP installation might not be setup to use ACPI properly

I'll PM you some XP install media to test
#4297YuriyCN
Zitat von ⇗ ITriedOkay im Beitrag ¶ #4293
The outer space version didn't work, the PC just goes into a black screen... The default acpi.sys yields this exact stop error:
STOP: 0x000000A5 (0x00000011, 0x00000008, 0xF72D0240, 0x20160527)


5 versions of the modified file ACPI.SYS + original version
The BEST version - ACPI+USB(all versions)\ACPI.SYS\acpi_1 (the best).sys

⇗ https://www67.zippyshare.com/v/bsNhCGhi/file.html
#4298infuscomus⇗ @YuriyCN

your upload forgot to include the USB 3.0 Hub driver, and the inf file for installing the driver too.
#4299Pill Monster
Zitat von ⇗ Andalu im Beitrag ¶ #4210
Zitat von ⇗ daniel_k im Beitrag ¶ #4203
My last post here.....
I'm sad to read this. It's a big loss for the forum. Thanks so much for your great work
Just saw this.
I sent DK a pm earlier & wondered why he hadn't responsed. Dunno what happened but it's a shame. Hope he returns
#4300ruthanAll lowlevel guys are gone for long time, because of forum copyright policy..
#4301YuriyCN
Zitat von ⇗ infuscomus im Beitrag ¶ #4298
@YuriyCN
your upload forgot to include the USB 3.0 Hub driver, and the inf file for installing the driver too.
This is the USB3 driver for modern Intel motherboards 100, 200, 300 - series. In theis archive driver for Windows XP and a separate patched file for PAE mode - ⇗ https://www34.zippyshare.com/v/JbI6WPAU/file.html

Zitat von ⇗ ruthan im Beitrag ¶ #4300
All lowlevel guys are gone for long time, because of forum copyright policy..
Please, give me the forum URL where the experts went.
#4302gordo999
Zitat von ⇗ ITriedOkay im Beitrag ¶ #4293
STOP: 0x000000A5
⇗ @ITriedOkay ...0xA5 is an ACPI error. Maybe your system file checker is replacing the one you insert with the original. If so, you have to insert ACPI offline. On my system XP is on its own disk and I can start W7 and hot plug XP. Then I can insert a file like ACPI.sys from W7 without SFC replacing it.

I am presuming your system is running, maybe it's not. You can bypass the acpi error using the installation disk. Run the installation and when you see the prompt to hit F6 to load drivers, hit F7 instead. I hit it several times to be sure. The installation should run cleanly to the point where it asks you to hit R to enter repair mode. Don't go past that point, use F3 or whatever is indicated to get out of there. At least that will tell you if your system is good to that point.

BTW...if you do reach the point where you can hit R to enter repair mode, you will reach a command prompt. You might be able to insert the modded acpi from there. If you change directory to %windir%\system32\drivers, look at the size of acpi and compare it to the size of the modded acpi. They should be the same if you inserted it properly to the right directory.

If you get an 0x7F error before the R prompt, you have a problem with the SATA driver.

BTW...I have not seen a description of your system. Can you supply that?
#4303gordo999
Zitat von ⇗ ruthan im Beitrag ¶ #4300
All lowlevel guys are gone for long time, because of forum copyright policy..
⇗ @ruthan ...it's not the forum copyright policy, it's the threats the low level guys received directly from Intel, I think it was. Daniel_k told us that. Fernando is just trying to follow a policy that will appease Intel.

I don't think anyone knows where the guys have gone.
#4304ruthanWell, i read here other version story - that Fernando was harassed by some unknown company, so he changed / forced policy, what piss off Daniel and other guys, but i can be wrong.

 I wouldnt be surprised if it would be Intel or MS.

 Is loss for everyone except maybe some layers and bullies, its like right to repair things.

If understand it correctly problem is that drivers had to have some security signature to work (Microsoft thing).. and maybe Intel or others vendors were not ok, that some modified drivers were signed as original Intel or whatever ones..
#4305ITriedOkay⇗ @YuriyCN
The acpi_1 file didn't work, the screen still goes black.

⇗ @gordo999
I get the BSOD with XP's default acpi.sys only, as for all the modded acpi.sys files I tried (which I have inserted offline) I just get a black screen.
Perhaps I need to elaborate more on ¶ my previous post... I'm not using XP as my main OS, it's simply a portable pre-installed image that I boot up directly on my PC and others. The steps to create it are briefly explained inside the spoiler:
1. Install XP in a virtual machine, on a fixed ⇗ VHD image. Disable pagefile, hibernation, and system restore.
2. Inside the XP machine, install ⇗ the SVBus driver like you would install a SCSI/RAID driver.
3. Through Device Manager, for all IDE and System devices that use a branded driver (e.g. Intel), update them to use XP's generic drivers. Restart the machine when necessary.
4. Shut down the machine, and copy the VHD to a USB stick with ⇗ GRUB4DOS 0.4.5c installed.
5. Boot from the USB, GRUB4DOS will start, mount the VHD to RAM and boot from there. After mounting is complete the USB can be removed.    
I have booted this image countless times on several PCs, including modern-ish PCs (~2015) with no problem. I only faced the ACPI issue when I tried booting on my new laptop which was manufactured in 2019. FWIW the laptop is a Dell G5 5590.


⇗ @infuscomus
I think XP is setup correctly, see my reply to gordo above. The problem probably lies with my hardware being "non standard"... For example I tried installing Windows 7 at first and it didn't detect any of the internal drives, so I installed Windows 10 and the setup went fine. A similar case is possible with the ACPI and XP.

 

Page 288

#4306infuscomus
Zitat von ⇗ ITriedOkay im Beitrag ¶ #4305
For example I tried installing Windows 7 at first and it didn't detect any of the internal drives

^
this

XP likely has the same issue

we do have a generic AHCI storage driver for XP now - but I've never tried replacing it on an existing install, only new installs, so i'm not 100% sure how to install it on an existing system.

also, since you are getting A5 BSOD, you will still need the patched ACPI driver aswell.
#4307diderius6⇗ @infuscomus

You can change very easy to the generic STORAHCI driver,
when you copy the needed files and run the *.reg patch to the registry via a second compi
Dietmar
#4308YuriyCN
Zitat von ⇗ gordo999 im Beitrag ¶ #4303
it's not the forum copyright policy, it's the threats the low level guys received directly from Intel, I think it was. Daniel_k told us that. Fernando is just trying to follow a policy that will appease Intel.

I don't think anyone knows where the guys have gone.



It is unlikely that these threats came from Intel... Most likely from Microsoft. Intel still sells its hardware, and Microsoft transfers everything to Windows 10. Users who stay on Windows XP and Windows 7 - Microsoft are across the throat.
#4309YuriyCN
Zitat von ⇗ diderius6 im Beitrag ¶ #4307
@infuscomus
You can....
Dietmar
In your message ¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (197) from Sat Oct 12, 2019 6:26 pm you proposed to use "the hacked hal.dll and intelppm.sys for XP SP3, which solve the timer problem", and you attached the "halplusintelppmXPSP3.rar" archive with these files.

Please answer a few questions:
1) Could you please write in more detail what the essence of this patch is, what problem does it solve?
2) What hardware is it intended for?
3) Is the latest version of the corrected files attached to the message, or do you have a newer one?
#4310AddFunI tried moving my successful WinXP 32bit install from a Ryzen/X370 machine (thank you guys!) to a Z390/CoffeeLake machine. Surprisingly, the system/OS booted that XP cloned partition just fine. Problem is USB. I get to desktop and have no control. Supposedly this motherboard has dedicated USB2 ports but they are handled by the same Z390 chipset. This Z390 motherboard has no PS/2 ports. So, now the system boots and sits on the desktop and I cant do much. I have the latest (I think) amdxhc, amdhub30, etc files sitting in their respective directories but still no USB3.0. The New Hardware wizard pops up but I cant interact with it. Shouldn't USB auto config and self install?

Other than complex scripting tools, batch files, etc, how would you guys recommend I proceed? Install seems to be as stable and bootable as the Ryzen clone, just no USB3.0 (no KB/mouse). What am I missing?
#4311ruthan
Zitat von ⇗ AddFun im Beitrag ¶ #4310
Other than complex scripting tools, batch files, etc, how would you guys recommend I proceed? Install seems to be as stable and bootable as the Ryzen clone, just no USB3.0 (no KB/mouse). What am I missing?
Someone wrote that you have to enable in port 60-64 USB feature, you can try it, otherwise solution, would be to buy USB-2 PCI-E addon card.
#4312usa1ec
Zitat von ⇗ AddFun im Beitrag ¶ #4310
I tried moving my successful WinXP 32bit install from a Ryzen/X370 machine (thank you guys!) to a Z390/CoffeeLake machine. Surprisingly, the system/OS booted that XP cloned partition just fine. Problem is USB. I get to desktop and have no control. Supposedly this motherboard has dedicated USB2 ports but they are handled by the same Z390 chipset. This Z390 motherboard has no PS/2 ports. So, now the system boots and sits on the desktop and I cant do much................
Try installing this OS Windows XP SP3 RUS (update 02.2020 for Intel MB) - ⇗ https://yadi.sk/d/NWO5uafRjjsT2Q
Unfortunately, it is the Russian version of Windows XP SP3 with update feb 2020, but it integrates all the drivers necessary for a modern Intel motherboard + ACPI mod driver + SATA AHCI driver + USB 3.0 driver + PAE patch >4GB RAM.

During installation, the "Component Registration" stage will take a long time, during which (silent mode) the following are installed: Microsoft Visual C ++ x86 Redistributable (2005 + 2008 + 2010 and 2019, all editions), MSXML 4.0 Parser, Flash Player v32, DirectX 9 (June 2010), Microsoft .NET Framework (version 2.0 + 3.0 + 3.5 + 4.0). The component registration phase will take 15-20 minutes and this is normal! OS was tested on the Gigabyte GA-Z170-D3H motherboard (Intel Z170 chipset, LGA-1151 socket, i7-6700K processor, 8 cores @ 4GHz, 16GB RAM DDR4).
#4313AddFunTried that option before hand. No go. I have to figure somekind of way to automate driver install and skip the New Hardware wizard. Does WinXp have undocumented features or registry switches to enable unattended driver/device install post OS install?
#4314usa1ecTry to install Windows XP SP3 RUS (update 02.2020 for Intel MB) - ⇗ https://yadi.sk/d/NWO5uafRjjsT2Q from the CD/DVD disc. If everything works, then take the drivers from it and integrate it into any English image with nLite.
#4315ITriedOkay⇗ @infuscomus
I did try the AHCI driver but it's useless to me because my XP image boots entirely in RAM, it does not need any HDD.

⇗ @AddFun
You can disable the "Found New Hardware" wizard using the method outlined ⇗ here (assuming you have SP3 which should have ⇗ this hotfix installed). Note that the driver that you want auto-installed should be somewhere XP can look, for example, the drivers folder in windows... Give it a try?
#4316infuscomus⇗ @ITriedOkay

Try switching to a different RAMDisk driver - I've noticed with RAMDisk drivers that they all will only work on some systems but never on all.
There are 3 RAMDisk drivers I know of - Imdisk, Firadisk, WinVBlk

For ACPI A5 BSOD
switch back to the outerspace ACPI driver since it didn't give you a BSOD
#4317Pill Monster
Zitat von ⇗ ITriedOkay im Beitrag ¶ #4315
@infuscomus
I did try the AHCI driver but it's useless to me because my XP image boots entirely in RAM, it does not need any HDD.


Please disconnect all your HDDs and boot up.  Post results here. ;)
#4318ITriedOkay⇗ @infuscomus
I did use Firadisk and WinVBlock in the past years, until SVBus was released and turned out much better. But I'll try both of them again (with the outerspace acpi) and report back.
ImDisk does not apply in this situation because it's only usable from inside windows.

⇗ @Pill Monster
I'm using a laptop, disconnecting the internal HDDs from it will be extremely difficult if not impossible. FWIW almost every laptop I booted this image on, XP did not detect the internal HDDs but still ran fine... It's fairly safe to say that the HDDs are not the problem.
#4319gordo999
Zitat von ⇗ AddFun im Beitrag ¶ #4310
Problem is USB. I get to desktop and have no control. Supposedly this motherboard has dedicated USB2 ports but they are handled by the same Z390 chipset.
⇗ @AddFun ....I got XP USB going on the B360 (same chipset class as Z390) using daniel_k's AMD USB drivers. Alternately, you can buy an add-on USB card and find XP drivers. For W7, I used Canonkong's USB drivers.

I use an add-on card with a VIA chipset and I found XP drivers on a Czech site. Now I have all my mobo USB ports running on XP as well as the VIA chipset ports. I only have 3 USB3 ports on the card but I use a powered 7 port USB extender run from one of the VIA ports. It's important than an extender have it's own power.
#4320ITriedOkay⇗ @infuscomus
Neither Firadisk nor WinVBlock worked, as I suspected. Same result as SVBus.

 

Page 289

#4321infuscomus⇗ @ITriedOkay

can you try doing a normal XP install from scratch to a HDD/SSD on your system?
#4322ITriedOkay⇗ @infuscomus
Ok, I modified an XP ISO to use the outerspace acpi.sys and got a black screen after "Setup is starting", then the PC rebooted.
In case I made a mistake, that was my process:
1. Using cmd (on Windows XP) I ran the command makecab acpi.sys on the outerspace acpi.sys file, obtained a ACPI.SY_ file.
2. Using PowerISO, I replaced the old ACPI.SY_ in the I386 folder on the XP ISO with the one I just obtained.
3. Booted from the modified ISO.
#4323infuscomus⇗ @ITriedOkay
Oh! I see now!

PowerISO doesn't write the ISO boot record for XP correctly - it can do it but it's a bit of a hassle
instead use a program called nlite
⇗ https://www.nliteos.com/download.html
after downloading nlite
first extract the contents of the XP ISO into a folder

e.g.
C:\XPISO

next replace the existing ACPI.SY_ in C:\XPISO\I386 with the one you already made with makecab earlier

next extract SP3.CAB
C:\XPISO\I386\SP3CAB

replace the acpi.sys in C:\XPISO\I386\SP3CAB with the modded version and then rebuild with makecab

replace SP3.CAB with modded SP3.CAB

next open nlite

point nlite to C:\XPISO as source

click next

click bootable ISO then next

click make ISO

click next

click finish

#4324Pill Monster
Zitat von ⇗ YuriyCN im Beitrag ¶ #4308
Zitat von ⇗ gordo999 im Beitrag ¶ #4303
it's not the forum copyright policy, it's the threats the low level guys received directly from Intel, I think it was. Daniel_k told us that. Fernando is just trying to follow a policy that will appease Intel.
It is unlikely that these threats came from Intel... Most likely from Microsoft. Intel still sells its hardware, and Microsoft transfers everything to Windows 10. Users who stay on Windows XP and Windows 7 - Microsoft are across the throat.
Or Microsoft may be concerned with keeping a lid on the 20yr lie that to make use of over 4GB of memory, VM or physical, , required an upgrade to Server 2003  While at the same time Intel is concerned the public will find out their $2500 36bit Xeon was the only horse in the stable which could use over 4GB until C2D.  

Meanwhile, in AMD64 land.....:P  
Intel & MS still pay Wikipedia editors to misleading the public over that topic. Russonivich's statement blaming driver issues was just a marketing spin.   

FWIW Do you guys know who Geoff Chappell is, or heard of him?


@Itriedok:
I was being a smart ass :P
#4325Pill Monster
Zitat von ⇗ ITriedOkay im Beitrag ¶ #4318
@Pill Monster
I'm using a laptop, disconnecting the internal HDDs from it will be extremely difficult if not impossible. FWIW almost every laptop I booted this image on, XP did not detect the internal HDDs but still ran fine... It's fairly safe to say that the HDDs are not the problem.
I was just being a smartass. :P  
Ramdisks are basically....snake oil
Kinda like PrimoCache does same job as Windows File System cache.
But hey prove me wrong...  :)
#4326Pill Monster
Zitat von ⇗ ruthan im Beitrag ¶ #4300
All lowlevel guys are gone for long time, because of forum copyright policy..

I'm seriously sorry to hear that.  On sites such as this one forum members with real technical knowledge are nothing but an asset, whatever their field.
Without them the community dies..
#4327gordo999
Zitat von ⇗ ITriedOkay im Beitrag ¶ #4322
Ok, I modified an XP ISO to use the outerspace acpi.sys and got a black screen after "Setup is starting", then the PC rebooted.
⇗ @ITriedOkay  ...My experience after 'Setup is starting', when things went wrong, was a BSOD with an 0x7F. That was related to the SATA drivers.

I am presuming you have started the installation disk from boot, watched the drivers loading, then setup has reached the stage where it is ready to install XP. In other words, the modded acpi has gotten you past the original stage where you got the 0XA5 error.
#4328YuriyCNdiderius6

In your message ¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (197) from Sat Oct 12, 2019 6:26 pm you proposed to use "the hacked hal.dll and intelppm.sys for XP SP3, which solve the timer problem", and you attached the "halplusintelppmXPSP3.rar" archive with these files.

Please answer a few questions:
1) Could you please write in more detail what the essence of this patch is, what problem does it solve?
2) What hardware is it intended for?
3) Is the latest version of the corrected files attached to the message, or do you have a newer one?
#4329infuscomus⇗ @YuriyCN

see here

⇗ What exactly is the hal timer problem?
#4330XPLives⇗ @gordo999, ⇗ @ruthan
Zitat von ⇗ gordo999 im Beitrag ¶ #4303
Zitat von ⇗ ruthan im Beitrag ¶ #4300
All lowlevel guys are gone for long time, because of forum copyright policy..
⇗ @ruthan ...it's not the forum copyright policy, it's the threats the low level guys received directly from Intel, I think it was. Daniel_k told us that. Fernando is just trying to follow a policy that will appease Intel.

I don't think anyone knows where the guys have gone.


   
What / Which "Low Level" guys are you referring to that we have/had?

And where are these posts you are referring to that Daniel_K had said this?

The only thing I know is Fernando mentioned some company contacted him but did not mention what company nor mention specifically what driver (assuming it was a driver) or what file was the source of the complaint if it pertained to that.  It would have been helpful if Fernando could notify me privately what company had the dispute originated and in regards to what was the exact issue as maybe some deal could have been worked out to buy/lease the source code or whatever was in dispute rather it just die there not knowing what happened and pissing everyone off.  It's unclear what triggered the problem or if an alternate solution could be reached through negotiations with said company or companies.

And Daniel_K is missing so no idea if he was contacted first or Fernando about this to find helpful answers on what really happened and what was the timeline of events.

As for the assumptions made:

Zitat von ⇗ ruthan im Beitrag ¶ #4304
Well, i read here other version story - that Fernando was harassed by some unknown company, so he changed / forced policy, what piss off Daniel and other guys, but i can be wrong.

 I wouldnt be surprised if it would be Intel or MS.

 Is loss for everyone except maybe some layers and bullies, its like right to repair things.

If understand it correctly problem is that drivers had to have some security signature to work (Microsoft thing).. and maybe Intel or others vendors were not ok, that some modified drivers were signed as original Intel or whatever ones..

   

It's doubtful it came from Intel as he didn't really work on Intel related drivers that were really essential or relevant and if they were concerning any of the Intel SATA drivers you don't even need those newer versions to install XP as the older ones work just fine or using Fernando's version.  I find the simplicity of the older versions much easier to deal with than the newer bloated ones.  And if anything Intel would benefit from his work selling more CPUs from more people willing to buy their CPUs to run older an OS on.  Why stir up trouble and lose more sales over some dead drivers?

It's also doubtful it came from Microsoft as there are plenty of other drivers that fix problems with their OS being outdated and no longer supported that they would care.  Even Fernando's slightly modified AHCI files didn't cause a problem and I'm assuming he's been doing this for over a decade.  And even the "attempted" PAE fix for XP no one really used except maybe 1-5 people if I were to guess and even that patch had flaws and bugs and Server 2003 was already working perfectly so there was no need for it or for Microsoft to even care about XP running in a buggy state.  

To them XP is dead and has been since 2014 or even earlier in 2009.  Or if you go by their last service pack - Service Pack 3 (5.1.2600) / April 21, 2008 would be the last time Microsoft truly cared about XP in regards of support.  Today they are more focused on Windows 10 domination and working to rid all users of Vista / Windows 7 / Windows 8.X off all their machines to even worry about a dead OS like XP.  Even Windows 2000 is basically abandonware at this point.  XP is just a cartoony GUI with more dependencies added with an annoying Windows activation that didn't exist with Windows 2000 and earlier.

I do suspect one company from a monopoly standpoint but why that company would even care baffles me if it were that one as none of their products currently support XP and would only benefit them.  There is another company I also suspect since I know their work and what they are capable of but that's the only company I think that could strike a deal with if it was that exact one that contacted him/Win-Raid.  Without knowing the exact details no one knows what happened as a happy solution could have been negotiated with more information.

Even after all that's said and done why any of those companies even cared about XP today is even more baffling if they are no longer are making updated drivers or products for XP or making any profit from it when they could negotiate a deal instead and generate something from nothing.  And imagine if it was related to a driver they could perfect their own source code and make a better product.
#4331gordo999
Zitat von ⇗ XPLives im Beitrag ¶ #4330
And Daniel_K is missing so no idea if he was contacted first or Fernando about this to find helpful answers on what really happened and what was the timeline of events.
⇗ @XPLives ...see the following page, message 4203. Also 4194, a page or so before. Reading between the lines I'd say someone from Intel is behind this.

Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (281)
#4332Zucker2kI've been reading this thread for the last two days and going in circles trying, unsuccessfully, to install XP on my skylake laptop. So, before I totally give up on this seemingly impossible dream of running a lean OS on my laptop, I want to pitch a question to the knowledgeable folks on here:

1. Is it possible to install Windows XP on an HM170 chipset laptop (Intel Mobile Skylake)?

2. Does everything I need to make a successful install available online, or do I have to mod certain files myself?

All responses appreciated. Thank you.
#4333AddFunI was able to install it on a Ryzen system last year (after about 10-12 tries and various revisions of ACPI/AHCI drivers and what not). Then I moved the install to a Intel system. It's not a perfect science and there isn't a cooked/streamlined ISO provided that will accomplish this for you. (a tip, do NOT download any password protected "driver packages" or OS ISOs, from here or elsewhere, since its a common way to bypass malware scans since about, oh, 1998.)

That said, my Intel clone is still not working fully since my motherboard is USB only (no PS/2 or serial) so "technically" I have a WinXP system working on a modern intel system minus any interactivity. (I boot to desktop just fine)
#4334infuscomus⇗ @Zucker2k

I sent you a PM with some tips
#4335XPLives⇗ @gordo999
Zitat von ⇗ gordo999 im Beitrag ¶ #4331
Zitat von ⇗ XPLives im Beitrag ¶ #4330
And Daniel_K is missing so no idea if he was contacted first or Fernando about this to find helpful answers on what really happened and what was the timeline of events.
@XPLives ...see the following page, message 4203. Also 4194, a page or so before. Reading between the lines I'd say someone from Intel is behind this.

Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (281)



*****
Post #4194
Wed Feb 26, 2020 8:59 pm (Last edited: Wed Feb 26, 2020 9:10 pm)
Zitat von ⇗ daniel_k im Beitrag ¶ #4194
I was asked to delete all of my modified 3rd party drivers to avoid copyright issues here. I've been told that in the near future, all modified files that are copyrighted will be deleted.
Additionally, as WinXPPAE was completely written by me, I've decided not to make it available here anymore. I hope you respect my decision and do not upload it here anymore.

In the next days, all of my modded drivers and WinXPPAE will be available at MDL Forums' Windows XP / Older OS section (forums.mydigitallife.net). The Admin gave me his OK.


*****
Post #4203
datumFri Feb 28, 2020 5:42 pm (Last edited: Fri Feb 28, 2020 5:43 pm)

Zitat von ⇗ daniel_k im Beitrag ¶ #4203
My last post here. Please read this:

INTEL END USER SOFTWARE LICENSE AGREEMENT

IMPORTANT - READ BEFORE COPYING, INSTALLING OR USING.

THE FOLLOWING NOTICE, OR TERMS AND CONDITIONS SUBSTANTIALLY IDENTICAL IN NATURE AND EFFECT, MUST APPEAR IN THE DOCUMENTATION ASSOCIATED WITH THE INTEL-BASED PRODUCT INTO WHICH THE SOFTWARE IS INSTALLED. MINIMALLY, SUCH NOTICE MUST APPEAR IN THE USER GUIDE FOR THE PRODUCT. THE TERM "LICENSEE" IN THIS TEXT REFERS TO THE END USER OF THE PRODUCT.

LICENSE. Licensee has a license under Intel's copyrights to reproduce Intel's Software only in its unmodified and binary form, (with the accompanying documentation, the "Software") for Licensee's personal use only, and not commercial use, in connection with Intel-based products for which the Software has been provided, subject to the following conditions:
(a) Licensee may not disclose, distribute or transfer any part of the Software, and You agree to prevent unauthorized copying of the Software.
(b) Licensee may not reverse engineer, decompile, or disassemble the Software.
(c) Licensee may not sublicense the Software.
(d) The Software may contain the software and other intellectual property of third party suppliers, some of which may be identified in, and licensed in accordance with, an enclosed license.txt file or other text or file.

As you can see, 99.99% of all software available here is theoretically being distributed/modified against Intel's EULA.
Even the Coffee Lake mod is a clear case, as they weren't originally intended for use with non-certified boards.


*****


   
Gordo999,

I read those previous messages before left by Daniel_K and never saw any direct connection.  Although you can make the assumption there is some connection there.  My thoughts are it was not from Intel because Fernando's modified SATA AHCI driver files never got taken down from Intel's demands.  Daniel_K never contributed heavily with Intel modified drivers where they should chase after him directly.  He did however modify the AMD USB 3.0 driver but nothing about that driver relates to Intel in any way and the device ID descriptions still to refer to AMD USB devices not Intel when installed.

The reason why I believe Daniel_K brought up the Intel license agreement was because he was making a point that Fernando's Intel modified drivers were allowed but his own modified drivers for some other company were not.  I don't think he was finger point at Intel as being the complainer nor do I see any reason why Intel would complain since they already abandoned XP in every possible way since Ivy Bridge.  Once they dropped the Intel HD Graphics driver support for XP for Haswell and later it became clear Intel didn't care and as soon as SkyLake was introduced killing off the eHCI ports was another axe to the head of XP making it tougher to use Intel USB ports for installing legacy OS more problematic.

So no I don't agree it came from Intel unless Daniel_K or Fernando verifies this.  Since the Intel Chipsets have a higher % compatibility with XP versus AMD I find it less likely Intel would care about some driver modified for XP and as you know there was never a Intel USB 3.0 driver ever developed by Intel for 2K or XP so there is nothing there for Intel to complain about regarding Daniel_K.  The only other DK modification of interest was a later version of the Intel RST SATA driver that I don't use because it requires two files instead of one.  I find the simplicity of the older driver preferable.  If Intel really cared about Daniel_K modifying this particular driver I wouldn't care as the older drivers work much better in my opinion.  And there has been no possibility of hacking/modifying any later Intel HD graphics driver to work in XP thus far.  I'm sure if it could be done Intel "might" be concerned if they really were against XP being installed on Coffee Lake and later chipsets.  I don't see that happening and it is preferable to use a discrete graphics card instead due to better performance than any integrated Intel HD Graphics.  Intel is in the business of selling CPUs and the compatibility is better than AMD when it comes to XP so I see no reason Intel would be against more users preferring to buy their CPUs to install a legacy OS.  Even if Intel shut down Daniel_K's work it would have no impact.  Fernando's modified SATA AHCI driver still exists so nothing has changed.

 

Page 290

#4336XPLives⇗ @Zucker2k

Zitat von ⇗ Zucker2k im Beitrag ¶ #4332
I've been reading this thread for the last two days and going in circles trying, unsuccessfully, to install XP on my skylake laptop. So, before I totally give up on this seemingly impossible dream of running a lean OS on my laptop, I want to pitch a question to the knowledgeable folks on here:
1. Is it possible to install Windows XP on an HM170 chipset laptop (Intel Mobile Skylake)?
2. Does everything I need to make a successful install available online, or do I have to mod certain files myself?
All responses appreciated. Thank you.
Without knowing what problems you encountered no one can troubleshoot without any visual proof of your problem.

But if I were to guess no laptop from SkyLake onward should work with XP.   This could be due to the Intel USB 3.0 ports issue so you will eventually get stuck somewhere unable to use the mouse, touchpad, or keyboard.  Second it might be using a UEFI BIOS with no CSM support.  If these two obstacles exist then most likely XP cannot be successfully installed.

I would try something simpler to verify if it can even install a legacy OS on SkyLake laptop.  If you can install FreeDOS onto SkyLake that would be a good indicator if your laptop has CSM support or not.  If you can't boot to DOS at all then it's a dead end.

I also do not have anything newer than Ivy Bridge for laptops so I cannot test anything to confirm if SkyLake will work or not.

The other main issue even if you get it to install on your SkyLake laptop is why?  What purpose are you using it for?
If it is meant for gaming then you are simply screwed.  Nothing after Ivy Bridge laptop's have any XP capable driver for their graphics.  It will most likely be 2D and very sluggish with the built in XP standard VGA driver.  If you're not using the SkyLake laptop for any XP 3D graphics gaming then you are better off using Windows 7 or 10 and use some kind of Virtual Machine to run XP inside.

If you attach screen shots of your BSODs or what problems you are facing maybe some users here can walk you through getting it to work.
#4337XPLives⇗ @Pill Monster
2000 Advanced Server already had > 4GB memory support.  And standard XP Pro 32-Bit could utilize above the 4GB range for a Ramdrive so it wasn't completely neutered.
But what is the model number of this supposed $2500 36-Bit Xeon?
#4338XPLives⇗ @schreiberstein
Zitat von ⇗ schreiberstein im Beitrag ¶ #4275
@XPLives

I bought it used a few months prior to using it as my daily driver.
And then it just died with artifacts. It was clean and I did not game for more than an hour with it in total.
Then it just crashed my Mac system while doing some light text editing work.
Now, I cannot load the drivers or the system will hang. I attempted underclocking the RAM and core by replacing the BIOS, but I think the VRAM is bad.
Even in VESA mode I have artifacts that seem to be caused by bad video RAM.

I have lost my faith in Intel platforms. People advised me that I should go with a Pentium 4 / 775 system with i865 chipset for Windows 98 retro stuff, but I had nothing but problems with this Intel garbage. Same for other Intel based machines. Meanwhile, all my Socket 939 / AM2 machines are rock steady whenever I drag them out my basement. They POST very quickly, detect all attached drives, etc. Given that the AMD Vanilla hackintosh community is doing very good process, I think I will ditch Intel altogether in the foreseeable future.

   Yeah that GTX 780 died because it was used and runs hot.  Get a GT 710 or GT 730 if you want a fanless XP set up.  As for your Hackintosh situation I can't help there if only certain graphics card work well for such a setup.  If a GT 710 or GT 730 gets Hackintosh support then you are gold.

As for AMD go with a 990FX if you want the last best compatible for XP.   You don't need a P4 for 98 retro stuff.  I managed to get it working on Ivy Bridge which is way more powerful.  Although Z370 could and does work but not recommended or easily done.
#4339schreiberstein⇗ @XPLives

Hey there!

I pulled the trigger and ordered myself one of these Chinese X99 motherboards (HUANANZHI X99-F8, Intel Xeon E5-2620 v3 (will probably upgrade later, ...) from AliExpress.
The reason why I did this is that all modern AMD ZEN based CPUs (Ryzen, Threadripper, ...) have a faulty implementation of the VME instruction set that make it unusable for NTVDM, Windows 98 DMA I/O among many other legacy things. It does not even work properly in a VM. This is true as of April 2020. Do not believe any false information that it had been "addressed". If you look into the forums, you see that it is still not working correctly. I am NOT getting myself into this mess, just because some RGB-tooting ga*mers drool over more FPS or faster 7zip results. Once these issues have been addressed, it will be worth consideration.

I did some experiments with an Intel Haswell Desktop motherboard I have (Intel DQ87PG, M-ATX, two PCI slots) with an i5.
Windows XP naturally ran without any of these annoying issues I encountered on Intel Z390.
In addition to that, the chipset still supports IDE-mode SATA, which had been completely removed from Skylake-era chipsets.
RLOEW Windows 9x AHCI driver works very well with that. You can leave AHCI enabled, but the driver depends on the IDE functionality being present in the chipset itself.
The "driver" will change some register values and switch back to IDE mode, while allowing to use up to 6 ports and DMA and seems to be more polished than just using IDE legacy mode from BIOS.
The system works quite well, so I figure it should be the same with an X99 based system.
Sadly, X99 seems to be a ticking time-bomb. Most motherboards die after a few years of use, from what I have read. Getting an X99 system is nearly as expensive as buying a new, much faster Ryzen or Intel Desktop system.
These Chinese motherboards seem to work reliable, are available at a low price and do not have any unnecessary gimmicks or marketing BS.
And they are FRESH. No 7 year old solder joints.
Since my desk is littered with KVM switches and cables, I will just use this machine to be my dedicated Windows machine.
I am considering REBELLION against all this modern stuff. I hate this constant change. I hate Mac OS Catalina for removing 32-Bit app support. I hate Windows updates and them breaking stuff.
There is NO REASON your app needs to be 300 MB large and consume 1 GB of memory when an older version just consumes 30 MB.
I hate these new PC cases, Aluminium sh*t, acrylic glass, LIGHTZZZ, PSU at the bottom (like the new gamerz in their bedroom gamez), no drive cages, ...

I also ordered an ATI FireGL V7100 (Basically a PCI-Express dual-DVI ATI Radeon X800 XT 256MB - also Dual-Link DVI support on (at least?) one of the ports) which is compatible with Windows 98 / ME, 2000, XP, ...
I might be getting an AMD Radeon HD 7950 or something similar for more modern systems and switch between the cards in UEFI BIOS, if it is possible.
You are right. The GeForce GTX 780 was not the best candidate for a long lasting desktop system.
Maybe I should have a look at a 730 or something.

I will keep you posted.

Cheers,
schreiberstein
#4340Zucker2kACPI issues. I did manage to install 32bit XP (haven't tried x64, yet). Anything ACPI crashes, so I settled on the i486 and with that option only one core is active in bios.

Edit: With the kind help of @Infuscomus, of course.
#4341Mov AX, 0xDEADHi guys

After long winter/spring hibernation i back to do xp fun, now time for usb3+pae   problem, i did tests with many vendors drivers and found ONE, that work at first sight, after couple of days i will public report
#4342infuscomus⇗ @Mov AX, 0xDEAD

welcome back!
#4343ruthan⇗ @Mov AX, 0xDEAD Great, welcome back! My hardware is ready.. there are lots of enthusiastic testers, but we where short of developers in last months.
#4344Andalu⇗ @Mov AX, 0xDEAD
nice to see you here again
#4345diderius6⇗ @Mov AX, 0xDEAD

Nice to see you again. I think, hibernation is not good for brain;))
Dietmar
#4346diderius6Few days ago I noticed, that Google does not translate a lot of websites now with the Firefox browser under XP SP3.
There is a new browser basilisk for XP,
which is based on last Firefox , can show HTML5 and translates websites correct
Dietmar

⇗ https://o.rths.ml/basilisk/basilisk52-g4...d316c8-xpmod.7z
#4347gordo999
Zitat von ⇗ XPLives im Beitrag ¶ #4337
2000 Advanced Server already had > 4GB memory support.
⇗ @Pill Monster ...it was not true memory support as we would expect on a 64-bit system with 64 Gb RAM. They used the extended memory as a form of virtual memory. Rather than paging out RAM to disk, they were paging it into higher memory regions because the paging works faster in RAM than on disk.

PAE is a processor-based paging system. It does not enable more RAM for normal use, it has extended address features that can address addresses higher than 4 GB but for a pagefile system only. It's not possible to access RAM beyond 4GB using 32-bits. PAE has a very limited ability to store addresses beyond 4GB but it cannot address them directly by normal means.

PAE works with the memory manager to enable memory 'page swapping' to memory beyond 4GB. I don't know enough about this to agree or disagree with your point that the RAM beyond 4GB should have been made available to normal Windows users. I suspect that maybe you're right. I do know that RAM page swapping is required because 4GB is not enough for running an OS like XP with more than a trivial app like Notepad running. So, RAM pages get swapped (paged) to disk. With PAE, they get swapped to RAM beyond 4GB.

The question for me is how do you use PAE when it is enabled? You would need an app written to address it and another system module to run with the memory manager to use it. Server 2003 has that system module but as far as I know it is not available in a normal Windows OS. Maybe you could adapt it to run on a normal system, I don't know.

To be realistic, if you want to address 64 GB of RAM directly you need a 64-bit system. PAE relies on a 36 bit address capability and trickery.

This is similar to the old EMS/EMM memory managers with DOS. They found ways to swap memory out to external memory cards but those cards were never directly under DOS control. DOS could only address 640K RAM and with a bit of trickery, they managed to extend it to 1 MB.
#4348gordo999
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #4341
After long winter/spring hibernation
⇗ @Mov AX, 0xDEAD ...thanks for all your previous work and welcome back.

I saw your article on kernel debugging with XP using Net or USB. I have been trying with a serial connection via a USB to serial adapter (on a target with a B360 chipset with 2 serial ports), with the USB end at the W7 host. I've had it working well with W7 to W7 and W7 to W10 but so far, not with W7 to XP. Of course, it has currently stopped working altogether.

With Hyperterminal, I can send files both ways using the USB to serial adapter with XP as target but I have noticed recently that in windbg k-mode, the data goes to the target fine but gets corrupted from target to host. I am trying to get a good serial analyzer to find out why. The one I have is crippled.

When I first set this up, it did not work at all. Then I found a problem in the dual-booting system with W7 and W10. When I fixed it, k-mode debugging worked fine on both W7 and W10. I did not try it on XP at the time. Since I have upgraded W10 to 1909, it no longer works on W10 nor on W7. I was able to restart either W7 or W10 and have them break shortly after boot, then I could either trace or run the targets to the desktop. At the desktop, I was able to load and debug another app.
#4349gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #4345
Nice to see you again.
⇗ @diderius6 ...nice to see you too, and thanks for your previous work. Good to see ⇗ @infuscomus as well, although he has been around a bit more. Now if ⇗ @daniel_k would change his mind and come back,
#4350Mov AX, 0xDEADHere tests of USB3.0 vendor's drivers in AIDA64 disk benchmark (linear reading test) on integrated USB3.0 Intel controler (H110/SUNRISEPOINT southbridge, DEV_ID=A12F):

4GB RAM Mode:
AMD 1.1.0.0145:                        works well
AMD 1.1.0.0276:                        not tested yet
ASMedia 1.16.58.1 (MCCI Based):        looped LED activity on flashdrive, benchmark show no progress
Etron 0.119:                           hardcoded to max 16 enumerated ports, usb2.0 ports works, driver works well only after install, after reboot windows hangs on loading logo
Fresco Logic 3.6.9 (WDF based):       works well, hardcoded to max 8 enumerated ports (intel controllers have 20+ ports, usb3.0 ports enumerated from 17+)
Intel 5.0.4.43 (Win7 backport):        dont work, root hub is not enumerated
NEC/Renesas 2.1.39:                    dont response to inserted devices in ports
NEC/Renesas 3.0.23:                        not tested yet
Texas Instruments 1.16.3 (MCCI Based): hangs after some flashdrive activity
VIA 4.40 (WDF based):                  VIA HUB driver cannot start properly, hub driver hardcoded to max 16 enumerated ports

PAE/8GB RAM:
AMD 1.1.0.0145 dma64:                        works well (need amdxhci_adresscalc_fix)
AMD 1.1.0.0145 dma32:                         hangs after some flash drive activity + motherboard hangs when windows shutdowning (even hardware reset doesnt work after, motherboard instead do power cycle down-up)
Etron 0.119:                           not works, constant high load on cpu, windows get BSOD at shutdown
Fresco Logic 3.6.9.0 (WDF based):      works well on some Intel controllers, on VIA not works properly

 

Page 291

#4351infuscomus⇗ @Mov AX, 0xDEAD

I've got daniel_k's AMD 1.1.0.276 if you want to test that too
#4352Andalu
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #4350
PAE/8GB RAM:
AMD 1.1.0.0145: hangs after some flash drive activity + motherboard hangs when windows shutdowning (even hardware reset doesnt work after, motherboard instead do power cycle down-up

Did you test with the 'amdxhc.sys' (SHA-1: 1AE2108E29A528EFDA7F7497952298A406991E21) from amdxhc_pae_fix.rar package and
the 'hal.dll' (SHA-1: 98026788984C5BA10644C0E451DD0D69A5F67A90) from the halplusintelppmXPSP3.rar package?
With these two files I no longer had similar issues ...at least for the moment

The Fresco Logic 3.6.9.0 driver does not install on my Q370 'real' system, not even via the 'have disk' option.
Can I try another way to install it?
#4353diderius6⇗ @Andalu

Can you please write a list with the SHA-1 numbers and the name of all files,
that you change from a normal XP SP3 install => XP SP3 with no limit of 4GB ram,
because I want to test real XP SP3 PAE also and I have a lot of motherboards
Dietmar
#4354Andalu⇗ @diderius6

Original files extracted from "en_windows_xp_professional_with_service_pack_3" iso:

 
hal.dll		9146F89ECDC5F219A1F950D111330154FB508724
halaacpi.dll 1F7BD1B7F695B84ABA47085619264CB28A27AE46
halacpi.dll 43789EE6D9012AAF17B66C48D411A7D99778EF3E
halapic.dll FC8D17BE2612F9E0336BEB1B5B7E6BABBA225185
halmacpi.dll 3CF2DD019633D45680B9CC93667143885D186828
halmps.dll 72C7DA8F58886303BE9B17A5F9F472C741A11993
ntkrnlmp.exe 6851C32E87B9992CF39C548554999DFA748B81C2
ntkrnlpa.exe 0DB6A938A0224B5B69CDAF87ADC5AE4584538B13
ntkrpamp.exe 508BAD3E4B6E1F2417D1639B8CDD3DF123FCB67E
ntoskrnl.exe CBB20AD29D7050282FE33A0D695C20C61C4CF533



Patched files with "/all" option (ntkrnlmp.exe and ntkrpamp.exe not yet renamed):

 
hal.dll		020F03ED6B133765C879ADF248ED3D2D99109BD3
halaacpi.dll C7FBAF343C827E8A2F0BC9E30148F06697A3C86B
halacpi.dll AA6FC0C1AB163BCC55CC3CBAD368D3D6D3D9DC51
halapic.dll BA833399B2BBB51163AE702E7EC9D44F07F90589
halmacpi.dll BE202C78DBF4D59880AA6A9430BE05D4156D6764
halmps.dll 30B791B03FBB67E0AC73E5B741DF950AEDF5CDF4
ntkrnlmp.exe 1D17006333B45CF0A6C509977BEE0578DC36D5AB
ntkrnlpa.exe 87ACB046620DDF80520F61B623BE793ED4414903
ntkrpamp.exe EFE2C3194AC3CF267E74B4942C42013C23CED2D6
ntoskrnl.exe D5A5D90ADE1D53150973742544EE39BC09C85BFD



Files renamed:

 
ntoskrnl.exe	1D17006333B45CF0A6C509977BEE0578DC36D5AB
ntkrnlpa.exe EFE2C3194AC3CF267E74B4942C42013C23CED2D6
#4355diderius6⇗ @Andalu

Thanks a lot!

Dietmar

PS: By the way I will make small joke (idea from ⇗ @daniel_k ) to change disk.sys XP SP3 => Server2003
because via this way you can work with GPT disks.
#4356Andalu⇗ @diderius6
You're welcome

I had already read about your intention for a new project, now I am pleased to see that it is starting
#4357YuriyCN
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #4350
Here tests of USB3.0 vendor's drivers in AIDA64 disk benchmark (linear reading test) on integrated USB3.0 Intel controler (H110/SUNRISEPOINT southbridge, DEV_ID=A12F):
PAE/8GB RAM:
AMD 1.1.0.0145:                        hangs after some flash drive activity + motherboard hangs when windows shutdowning (even hardware reset doesnt work after, motherboard instead do power cycle down-up)



Driver "AMD 1.1.0.276" + РАЕfix in amdxhc.sys = all works fine on DEV_ID=A12F
#4358AndaluIn my test on a board with an H110 chipset, in addition to the amdhxc.sys (SHA-1: 1AE2108E29A528EFDA7F7497952298A406991E21), it was also necessary to use the patched hal.dll as already happened for the other motherboards with 200 and 300 series chipsets that I have tried so far. Using the patched amdhxc.sys only, here's what happens if I run the chkdsk command for a removable disk drive:



So, in my case, I need to use both patched files to avoid the USB3 issues.
#4359mullAMD USB 3.0 driver 1.1.0.145 can emulated CD-ROM on a USB flash drive install xp
#4360Mov AX, 0xDEAD
Zitat von ⇗ YuriyCN im Beitrag ¶ #4357
Driver "AMD 1.1.0.276" + РАЕfix in amdxhc.sys = all works fine on DEV_ID=A12F

Zitat von ⇗ Andalu im Beitrag ¶ #4352
Did you test with the 'amdxhc.sys' from amdxhc_pae_fix.rar package?
With these two files I no longer had similar issues ...at least for the moment


amdxhc_pae_fix+hal_pae_fix not solve problem with amd driver, daniel_k many times told about it, controller still hangs. You can get this problem with 99% probablity running aida64 benchmark in special "no low mem" mode of windows. This test mode was made specialy to test software/drivers to work in pure PAE mode with 64 bit bus adressing (this mode require minimal 5Gb of installed RAM), amd failed this test :(

Description from DDK help:
The /nolowmem parameter loads the operating system, device drivers, and all applications into addresses above the 4 GB boundary, and directs Windows to allocate all memory pools at addresses above the 4 GB boundary.

just copy in boot.ini existing line and add at end :
xxxx="WinXP PAE NOLOW" /fastdetect /PAE /NOLOWMEM
#4361Andalu⇗ @Mov AX, 0xDEAD
the USB controller hangs in "no low mem" mode here too. I was hoping to find myself in that 1%
#4362Duke Solo
Zitat von ⇗ gordo999 im Beitrag ¶ #4349
Zitat von ⇗ diderius6 im Beitrag ¶ #4345
Nice to see you again.
@diderius6 ...nice to see you too, and thanks for your previous work. Good to see @infuscomus as well, although he has been around a bit more. Now if @daniel_k would change his mind and come back,


Regarding daniel_k, EULA requirements cannot apply to those who did not accept them. It's simple.

Just imagine, car manufacturers will forbid to disassemble them in your own garage :)
#4363Andalu⇗ @Mov AX, 0xDEAD
It took me a while, but I may have figured out what your intentions might be. If that's the case, it would be a great goal to achieve ;)

So, hoping to have effectively understood the meaning of your posts, below my tests with PAE/64GB RAM on a real Q370 machine in "no low mem" mode:

- AMD 1.1.0.0145: the usb controller hangs after some flash drive activity during and after the aida64 benchmark. XP hangs on shutdown.
- Fresco Logic 3.6.9.0 (FL1100 chipset): doesn't response to inserted devices in ports even if not in low mem mode. Explorer.exe hangs as well as the shutdown. So I didn't need to try the aida64 benchmark.
- Via 6.1.7600.5601 (VL805 chipset) (hardcoded to max 8 enumerated ports): works fine.
- NEC/Renesas 2.1.39 (0720201 chipset) (hardcoded to max 16 enumerated ports): works fine as for via card.

Here the screenshot for the Via card:



Let me know if I need to do any more tests to see if the PAE can work effectively without issues (and especially if I didn't understand anything ).
#4364diderius6I changed disk.sys and partmgr.sys from XP SP3 => Server2003 SP1 32 bit    5.2.3790.1830 (srv03_sp1_rtm.050324-1447)
I can boot normal with those 2 changed files XP SP3 via MBR harddisk.
Always I take a look, that indeed those 2 files are loaded and not the old ones because of recovery of the XP SP3 5512 files.
But when I assign a letter with AOMEI to a 4 TB sata harddisk, formatted with GPT (via gparted 31),
on reboot the compi hangs
Dietmar

EDIT: It is not enough for to get GPT support in XP SP3 to change disk.sys and partmgr.sys.
By the way, partmgr.sys from WinServer2003 works only together with disk.sys from WinServer2003,
but both together can be used for XP SP3, but still no GPT support.
#4365Mov AX, 0xDEADI found source of nonworking AMD usb3 driver in standart dma64 mode (no response to inserted devices in ports). This is fail of programmers, they made classic mistake with dropping HIGH part of 64 bit adresses.
they did this:

 
xor ebx, ebx
.....
mov ecx, [esi+458h] ; esi+458h = store of 64bit adress
mov eax, [esi+28h]
mov [eax], ecx ; low part
mov [eax+4], ebx ; dropped high part, zeroes.....


right code must be:

 
mov     ecx, [esi+458h]
mov eax, [esi+28h]
mov [eax], ecx
mov ecx, [esi+45Ch] ; HIGH part of 64bit
mov [eax+4], ecx ; no more zeroes



After this fix driver(tested on 1.1.0.0145, 276 has same mistake) works in pae mode same like in nonpae mode, also pass "/nolowmem" mode.

Requirement: 1)  hal_pae_fix 2) remove force_dma32 from driver, this "force" no more need. If you want keep dma32, driver still cant work properly in this mode under PAE

p.s. force_dma32 mean "and dl, 1=> and  dl,0"

 

Page 292

#4366diderius6⇗ @Mov AX, 0xDEAD

Waaoh, does this mean, from now I can use XP SP3 with RAM > 4GB without any restrictions?

Can you please write a short list, which files I have to change for ACPI Multiprocessor on XP SP3 and ram>4gb,
have a nice day
Dietmar
#4367Mov AX, 0xDEADAndalu, thanks for report about of your hardware tests, i have only via card, but still cant start via or nec driver on intel hardware
#4368Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #4366
@Mov AX, 0xDEAD
Can you please write a short list, which files I have to change for ACPI Multiprocessor on XP SP3 and ram>4gb
amdxhc.sys, new code will not fit old bytes, so you need find free space (at end on PAGE segment, extend it to 7e00 size)
change original bytes to "call my_patch nop nop....."
my_patch:
 
Patch_DeviceContext proc near
mov eax, [esi+28h]
mov ecx, [esi+458h]
mov [eax], ecx
mov ecx, [esi+45Ch]
mov [eax+4], ecx
retn
Patch_DeviceContext endp
#4369Andalu⇗ @Mov AX, 0xDEAD
what? You've already reached the goal?
That's great!!!!!

How to make this great finding easily accessible even for an ordinary mortal like me?
#4370infuscomus⇗ @Mov AX, 0xDEAD

is CFF Explorer an OK tool to extend the PAGE section? or is there a better solution?

in hexadecimal this patch would be?

look for
8B 8E 58 04 00 00 8B 46 28 89 08

insert this on the end
8B 8E 5C 04 00 00

so it's
8B 8E 58 04 00 00 8B 46 28 89 08 8B 8E 5C 04 00 00



is this correct?
#4371ruthanI wonder, isnt possible just create some *.exe utility which would check or target file crc is right and insert that HEX code inside? If it would be possible we can easily share and such patches and without any copyright violation.
 I know that rLoew patches worked this way.
#4372IntiMDIf you guys are wondering, daniel's finished moving his stuff to MDL (xp subsect)
#4373Pill Monster
Zitat von ⇗ XPLives im Beitrag ¶ #4337
@Pill Monster
2000 Advanced Server already had > 4GB memory support.  And standard XP Pro 32-Bit could utilize above the 4GB range for a Ramdrive so it wasn't completely neutered.
But what is the model number of this supposed $2500 36-Bit Xeon?
Possibly you misunderstood me?

With
Zitat
"XP Pro 32-bit could utilize above the 4GB range"

 - 4GB range of what?  

Licensing caps aside, the maximum amount of RAM supported by XP is exactly equal to the maximum amount of RAM supported by the CPU, less hardware reserved.  
XP Pro x86 officially supports 64GB of RAM.

RAM drives utilizing "hidden memory"  I label snake oil because there are no hidden addresses that can be seen by RAM disk software but not the CPU.  
RAM disks reside in something called a section object, the OS sees part of this section object - the WS partition. The CPU sees all of it and maps data in and out of the process view using pointers.

XP natively supports 36bit addressing using pae (Page Address Extension).   Pae adds 4 bits to an address  - two Page Table Directories and a PTD pointer.
Until SP2 enabled was the default boot mode. Hence why XP Pro x86 is not called XP Pro 32-bit.

PS the pm I sent you a few days ago was meant for another user.

Zitat von ⇗ XPLives im Beitrag ¶ #4337
But what is the model number of this supposed $2500 36-Bit Xeon?
 
I guess you had to be there.

#4374infuscomus
Zitat von ⇗ Pill Monster im Beitrag ¶ #4373
XP Pro x86 officially supports 64GB of RAM.
^
source?

it's a 32-bit OS so it would've only ever officially supported 4GB of RAM
#4375diderius6Here is the link for all what you need for full USB3 on RAM > 4GB,
thanks a lot for help
Dietmar

⇗ https://forums.mydigitallife.net/threads...hardware.81607/

PS: I also think, that GPT on XP will work today just with small modification of my attempt.
#4376Andalu
Zitat von ⇗ diderius6 im Beitrag ¶ #4375
Here is the link for all what you need for full USB3 on RAM > 4GB,
thanks a lot for help
Dietmar
⇗ https://forums.mydigitallife.net/threads...hardware.81607/



Zitat von ⇗ diderius6 im Beitrag ¶ #4375
PS: I also think, that GPT on XP will work today just with small modification of my attempt.

Another great goal achieved in such a short time???
That's great news!!!
#4377Mov AX, 0xDEAD
Zitat von ⇗ infuscomus im Beitrag ¶ #4370
@Mov AX, 0xDEAD
8B 8E 58 04 00 00 8B 46 28 89 08 8B 8E 5C 04 00 00
   
is this correct?

no, new code is bigger than old bytes

 
open amdxhc.sys in any PE Editor
look for PAGE segment
it has virt_size=7DA2 raw_size=7E00, so we have 7E00-7DA2=5E free bytes in file ("in memory" size still 7DA2!)
change virt_size to 7E00, now segment size "in memory" equal to size in file
then look where ending original segment, virtual adress 39DA2
so in virtual range 39DA2-39E00 you can store new proc Patch_DeviceContext
in orginal code change 8B 8E 58 04 to call Patch_DeviceContext
remain original bytes change to nops (90 90 ...)
#4378Mov AX, 0xDEAD
Zitat von ⇗ Andalu im Beitrag ¶ #4369
@Mov AX, 0xDEAD
How to make this great finding easily accessible even for an ordinary mortal like me?


learn ASM+IDA+PE Editors, DIY
#4379Andalu
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #4378
learn ASM+IDA+PE Editors, DIY

there is the real possibility that I can take a lifetime to learn and above all the certainty that I will not live until a hundred years
However, I think I will start shortly
#4380diderius6I just succeed soso, to make a GPT harddisk work in XP SP3.
First, now I use the original very last versions of disk.sys and partmgr.sys from Server2003 (5.2.3790).

I notice, that a harddisk with GPT and 4 TB cant be given a device letter D in XP SP3.

Then I use a brandnew 2TB harddisk and format it with Gparted(vers 31) to GPT.
After struggeling with again crazy XP changes drivers back to original ones,
I rename in
C:\WINDOWS\system32\dllcache  disk.sys => diskORI.sys
                                                partmgr.sys => partmgrORI.sys

But even this is not enough, because the drivers are also in
C:\WINDOWS\Driver Cache
so I also rename whole folder
C:\WINDOWS\Driver Cache => C:\WINDOWS\DriverORI Cache

With AOMEI I can see now the 2 TB GPT disk. Now I can give via AOMEI this harddsik the letter D.
With cristalDiskmark5 I run a benchmark on this D:\ GPT disk, shows 201MB/sec.
And also in "Datenträgerverwaltung" in XP SP3 this GPT harddisk is now shown with letter D.
But the harddisk is still not shown as normal, I can only see C:\ , no D:\ there,
even I just run chkdsk on it, strange..
Dietmar

PS: I just see in registry, that only the name for Dosdevices is given for D:
but no Volume name.

Is here somebody, who knows how to give a Voulume name also for D: ?

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\MountedDevices]
"\\??\\Volume{2ad81ab8-86fd-11ea-b51b-806d6172696f}"=hex:4a,10,32,10,00,00,10,\
 00,00,00,00,00
"\\DosDevices\\C:"=hex:4a,10,32,10,00,00,10,00,00,00,00,00
"\\DosDevices\\D:"=hex:44,4d,49,4f,3a,49,44,3a,80,cd,ad,f7,de,12,27,43,bb,74,\
 90,10,9e,69,07,66


EDIT2: Yes, diskpart shows the same, no Volume for the GPT disk.
I just copy Moorhuhn:)) via comandline to GPT disk D:\ and this works.


EDIT3: With diskpart of win10 I found, that for some strange reasons the Volume on this GPT disk is marked as hidden.
But with diskpart of win10 I cant clear this attribute, diskpart gives message: Object wurde nicht gefunden, brr..
Now I am formatting this HD new with GPT under Geparted (vers 31).






diderius6 has attached files to this post

 

Page 293

#4381VirgusHello everybody
I just found this post by reading Reboot.pro forums and I got really excited to the idea of having finally a "Resurrected XP edition"!

I'm not skilled enough unfortunately to dig into disassembly work but I'd like to contribute somehow.
In these years I collected some tweaks about extending RAM up to 128 Gb. I'm currently using the MOD to use 64Gb and I'm currently using it on my 8GB Laptop. I hope this zip might be useful for the project somehow (the original links might have been expired but I collected everything possible) !

I have a recent HP workstation and also a Dell i7 both with 32Gb and I'd love to be able to do some tests if you could point me to a summary of what's needed to install XP on one or both these machines. I'm not a pro like you, but I'm not a newbie either.

Cheers and thanks for the great news!
V.



Virgus has attached files to this post
#4382diderius6Yessssssaaaa, I got it
GPT support under XP SP3.
Until now only for harddisks <= 2TB, but who knows:))..
Crazy, with win10 it was not possible to get rid of the hidden mark for the Volume.
So I format whole disk new with Gparted (version31),
chose as partitionstable GPT and NTFS as filessystem, nothing more(!).
And voila, now everything is ok
Dietmar

#4383ruthanParagon GPT loader - not free support bigger disk than 2TB, im using 4TB ones, so its breakable.
#4384diderius6⇗ @ruthan
Yes, I know, I have.
But because now, no other files are used, you can do boot from this GPT harddisk without any UEFI.
In next days I try the S4e method, for to have an XP SP3 bootet and running from a GPT disk
Dietmar

PS: May be for S4e it is just enough, to fake the SIGNATURE in the first 512 Byte of the GPT disk, hihi..

EDIT: From Wikipedia
In operating systems that support GPT-based boot through BIOS services rather than EFI, the first sector may also still be used to store the first stage of the bootloader code, but modified to recognize GPT partitions.
#4385gordo999Something I am missing here with the excitement about PAE. From the Intel manual:

"Physical Address Extension. Physical addresses greater than 32 bits are supported: extended page table entry formats, an extra level in the page translation tables is defined, 2-MByte pages are supported instead of 4 Mbyte pages if PAE bit is 1".

I think there is a typo here, I think they mean 4 Kbyte pages, not 4 Mbyte pages. Standard memory pages are 4Kbytes.

Normally the memory manager swaps memory pages of 4K from physical memory to the swap file on disk. With PAE, they have increased that page file size to 2MB. One problem... the memory manager is run by the Windows operating system not the processor, where PAE is enabled or disabled. In other words, it is ntoskrnl in XP that controls the memory manager. If it is written to use 4k pages in memory, how are you going to enable the 2MB pages made available by PAE without having a driver to work in conjunction with the memory manager? And how are you going to tell the XP memory manager to use RAM above 4GB.

User apps don't know anything about this page file swapping and it's not clear to me if the XP ntoskrnl knows anything about swapping pages to the RAM above 4GB in 2MG pages. As I understand it, W2003 32-bit does it using extra drivers supplied by Microsoft that enhance the ability of the memory manager. How is the extra memory going to be used? How is it going to be accessed?

Maybe there's something I am missing.
#4386diderius6I just test the PAE for XP SP3.
Thank you soso much to ⇗ @Mov AX, 0xDEAD and ⇗ @daniel_k :))!!
All works, USB3, USB2, on Asmedia, all Intel, USB mouse, as you can see on photo.

Until now no BSOD, no strange behavior.

I use the patched amdxhci.sys vers. 1.1.0.145.
This is the Intel board Asrock z370 fatality k6 with 32 GB ram, all avaible now in XP SP3.
And still the GPT harddisk is there;).
This XP SP3 boots via nvme from the Intel Optane 905P.
This is unbelievable fast, for example editing photos or Mathematica. Much faster than win10.
The Intel Optane 905P nvme device needs no trim at all. It is just a better device than any other SSD (but expensive).
With the WinXPPAE patch I patch original halmacpi.dll ver. 5512 and the ntkrpamp.exe version 5.1.2600.7581 .
Dietmar

PS: I try a small joke: I have an hacked ntldr with no 512 MB limit for ram boot of XP SP3 via ewf.
I am really courious, if this will run with a lot of RAM :)) now.

#4387Andalu⇗ @diderius6
Have you already tried the aida64 linear benchmarking in /lowmem mode?
#4388diderius6⇗ @Andalu
Until now not.
Is this possible with the free aida64 version,
have a nice day
Dietmar

EDIT: I am just running the test with linear reading from Intel USB3. All seems ok, benchmark is now running 12 min there.
But I noticed the first not good effect: When you plug in any USB device, it is recogniced at once.
But when you plug, unplug, plug, unplug, .. suddently the device on the Intel USB is not recogniced any longer.
This does not happen with the Asmedia driver 1.16.55.1 on the Asmedia USB3 ports
Dietmar

#4389Andalu⇗ @diderius6
I asked you because the same happens here with new amd drivers on plug, unplug, plug etc.

EDIT:
It just happened again, this time already during the first 'plugging' operation, on the sixth removable drive connected.
Both "my computer" and "computer management" hang. The system needs to be manually restarted.
I'm using the hal.dll from the hal_pae_fix package (SHA-1: 8CBEC120FEB93D855AB1ED6FAD9A8D8223CC0E9A)
#4390diderius6I switched off the power save function in the USB hubs.
Now the behavior is a little bit other:
One and the same USB stick now you can put in every USB slot plug, unplug.. as often as you want,
is always recogniced.
But when you use after this another USB stick, it is not recogniced and also then the first stick not.
So, may be it depends on the sleeping functions of XP. Because with time, it last from at once to about 5 sec,
until the stick is recogniced
Dietmar

PS: A BSOD I do not notice. And no crash when shut down. Only in the case of not recogniced USB stick "unknown device" is shown under USB in Device Manager.


EDIT: The same error for the amdxhci 145 driver happens also in non PAE mode (Ram <=4GB), means without the patched ntoskrnl.exe and hal.dll.

EDIT2: The amdxhci 276 vers. shows exact the same behavior as the 145.
#4391Mov AX, 0xDEAD¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Compilation of my previous post/reports/patches in ONE place, also included community patches/solutions (excluding AMD-related)

p.s. forum's html styles are bad, so probably you need override setting with Stylish/Stylus, this is my example, code and spoiler sections no more limited to fixed width:

 
td.sidebar {
width: 160px !important;
}
.hpm_spoiler {
width: auto !important;
}
pre {
width: auto !important;
}
.codelines {
margin: 0px !important;
}
.bbcode_code,
.codeblock {
padding: 0px !important;
}
#4392AndaluI have tried one more time my Via pciex to usb3 card (VL805 chipset - 4 usb3 ports - driver 6.1.7600.5601) in /lowmem mode, PAE /64GB and aida64 linear reading test:
all worked correctly even if I plugged, unplugged, plugged, unplugged etc. up to 6 removable devices for many times during the benchmarking which lasts just over 7 minutes.

Unfortunately, I got the error code 10 - "this device cannot start" when I tried to install the via driver also for the usb hub although the xhci driver installs correctly for the intel usb3 controller (DEV_ID:  A36D)
#4393diderius6The ewf.sys filterdriver does not like PAE mode^^.
When I do USB-boot of full XPSP3 from a write protected USB3 stick (works only for FAT32 :))),
it asks, wether the original files are used and to put in the XP installations CD.
I cancel this question. Ram is shown <4GB even with the PAE files
and ewfmgr C: shows with the hacked ntldr, that in normal mode you can use 683 MB for the RAM-overlay,
and in safe mode 750 MB,
Dietmar
#4394gordo999Interesting article on PAE, DEP. and AWE. When PAE is enabled, DEP is automatically enabled. That COULD be a problem since DEP disables writing to a certain portion of memory. AWE is the feature used in server 2003 to page memory into extended memory beyond 4 GB.

DEP can be disabled using the /EXECUTE switch in boot.ini.

⇗ https://docs.microsoft.com/en-us/windows...dress-extension

Apparently Microsoft allowed access to memory > 4GB in XP SP1 but discontinued it because it messed up certain drivers, like on some games. If it was enabled, then maybe studying the SP1 ntoskrnl might reveal how to enable it again. If the idea is to emulate the server 2003 x86 access to RAM > 4GB, maybe studying the AWE feature might reveal how it's done.

A good article by Mark Russinovich on Windows memory in general, including virtual memory. Please note that the source is wayback machine and as you click on each link you need to wait while wayback transfers to another region. It gives a 302 error but below that error it shows that it is redirecting.

⇗ https://web.archive.org/web/201201010945...21/3092070.aspx
#4395Mov AX, 0xDEADFresco USB3 v3.6.9 driver on VIA Controller don't work properly:
1) programmers made searching xECP structs with bug (patch: 0x22ad2 F4->EC), all usb3 ports was not enumerated
2) even after proper enumeration, driver make constant pauses at transfer, speed down to zero

 

Page 294

#4396diderius6⇗ @Mov AX, 0xDEAD
Today I make a test with the 145 amdxhci USB3 driver.
I will set in Registry and in their *.inf file Loadordergroup=System Reserved and start=0,
also for usbstor.sys and the amd hub.
Another try is, to make use of the original intelppm.sys for to clearify, if the problem is really the sleepingstate of USB for this driver
Dietmar
#4397Andalu⇗ @diderius6
in my tests I have always used the original intelppm.sys
#4398diderius6To set Group=System Reserved and start=0 does not help for the amdxhci USB3 driver.
I noticed, that there is no Energy Save switch for the AMD USB 3.0 Root Hub,
only in all the other Hub
Dietmar

PS: Long time ago I found in the registry of XP SP3 a switch, where you can disable or enable any Energy Save for any device.
But until now I do not find it again.

EDIT: I found the switch and I put here content of the *.reg file for to reach this. But it does also not help.
Microsoft describes exact this problem for USB devices, when they are connected, disconnected and connected again, exact
as this happens with the amdxhci driver.

⇗ https://support.microsoft.com/en-us/help/817900
This problem occurs because of a race condition in the Selective Suspend feature of the USB hub driver. The Selective Suspend feature is designed to suspend the USB hub to efficiently maintain battery power. However, the Selective Suspend feature sometimes may not correctly wake up the USB hub.

EDIT2: "Save remove" of the USB device also not helps. Uninstalling of the USB driver not helps, Hub2 and HUB30 are shown as unknown devices after new install.

EDIT3: With my settings now, I can change about 20 times all different USB devices before "not recognice" starts.
May be, only BIOS mod can help, as we have done before, do get rid off loong Integers for USB3 device for sleepingstates.

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\USB]
"DisableSelectiveSuspend"=dword:00000001
#4399Andalu⇗ @diderius6
even adding that setting, not much has changed here. The issue has already occured on the seventh removable drive connected:



"My computer" and "computer management" are completely blocked. Even the "device manager" does not correctly display the devices which are no longer powered.
#4400diderius6⇗ @Andalu
This problem stays also for me, only crash I dont have.
But the sleeping states of the USB hub are the reason for this behavior.
Next I try the z390 dark board. In its Bios, there is the Intel xhci device not mentioned.
And this will give a hint, if modding Bios can help
Dietmar

EDIT: The behavior on the Z390 EVGA dark board is exact the same. I check, that I have flashed the 0.92 version of the Bios.
Because only in Bios vers 0.92 is the xhci Intel USB device not mentioned in Bios.
So, the not awake of the USB hubs depends not on the xhci entry in BIOS.
On the z390 dark board with my settings I also can change about 20 times any USB device, before recognizing stops.

At once, when recognizing has stopped, the USB mouse does not work any longer and also the USB stick not.
On the z390 Dark board I can deinstall and install the amdxhci driver new on running XP SP3 after norecognice happend and then again all USB works,
is recogniced about 20 times.
#4401YuriyCN
Zitat von ⇗ diderius6 im Beitrag ¶ #4400
@Andalu
On the z390 Dark board I can deinstall and install the amdxhci driver new on running XP SP3 after norecognice happend and then again all USB works,
is recogniced about 20 times.
I am using this USB3 driver. On my H110 motherboard, this driver works without BSOD crashes,
without any problems with PAE mode (16 GB RAM).
⇗ https://www.upload.ee/files/11579304/USB...PAEfix.zip.html
Zitat von ⇗ Andalu im Beitrag ¶ #4397
@diderius6
in my tests I have always used the original intelppm.sys
When using a patched intelppm.sys, I get an increase of CPU performance up to +2..3%;
and +10...15% in increase of "Intel RSTe AHCI/RAID driver v4.7.0.1117".

As well as the use of patched hal.dll gives + 30% increase in "Intel RSTe AHCI/RAID driver v4.7.0.1117" performance,
but does not affect the CPU. More details - ⇗ What exactly is the hal timer problem? (3)
#4402Andalu⇗ @diderius6
here I don't get always the same behavior, I went from one!!  to max 16 times before recognizing stops.
I've seen that my system doesn't like a particular usb3 flash drive: when inserted into a USB2 port it is not recognized and identified as unknow device.
When connected to a usb3 port it is recognized without any problems.
Installing a different amd usb3 driver version on running XP after norecognize happened doesn't help.

Here a screenshot, I never seen that icon for a flash drive :)

#4403diderius6⇗ @Andalu
This may have another reason. This behavior I have seen from an USB device, who needs too much current.
This symbol I have never seen, looks like somebody put something on a screen;))
Dietmar
#4404Andalu
Zitat von ⇗ YuriyCN im Beitrag ¶ #4401
I am using this USB3 driver. On my H110 motherboard, this driver works without BSOD crashes,
without any problems with PAE mode (16 GB RAM)

even for me that driver worked without problems, however, according to Mov AX, 0xDEAD ¶ here, you should check the PAE >4GB in /lowmem mode while performing the linear test with aida64. In my case, I was able to verify that the USB controller stops working so I was not within the 1% chance of the block not happening
#4405Andalu⇗ @diderius6
the problem is that I didn't touch anything, that icon suddenly appeared
I'm using the Q370 board only for tests. Only three programs installed. It doesn't even have an internet connection.

Another similar flash drive that comes from the same packet, doesn't have the same issue
#4406diderius6⇗ @Andalu
Hihi, it is a Windows setup Icon.

   Published on September 13th 2016 by Yakov .P.
   Released under the Release to Public Domain license.
   Icon for Windows XP, Vista and 7.

Dietmar
#4407Andalu⇗ @diderius6
never seen before, my system went crazy after too many usb recognitions
#4408Mov AX, 0xDEADI continue to torment usb3 drivers, now i try backport integrated Windows 8 drivers (after imports fixes), these drivers require
WDF 1.11, this version wasn't released for Windows XP/2003(???), so need imports fix too, last ported version is 1.11.9200

Win8 Beta M1 - works in VMWare, on real hardware need disable check MaxScratchpadBuffers==0 (jz .text:00016C1B => jmp)
              on Intel controller driver&hub start, no recognition to any inserted devices
              on VIA controller driver&hub start, integrated usb2 hub recognized as UNKNOW DEVICE (0000,0000), no recognition to any inserted devices

Win8 Beta M2 - on real hardware driver recognizes inserted devices only on usb2 ports, devices in usb3 ports started with error code 10, in aida benchmark any flash storages hangs

Win8.0                - works on Intel & VIA hardware, PAE also works

Win8.1                - ...
#4409diderius6⇗ @Mov AX, 0xDEAD

Nice idea to try with Win8, Win8 backport works also for the STORAHCI driver. Problem there is WDF.

Another way would be, to find out, why after several connect<>disconnect the amdxhci USB3 driver stops working.
Because this does not happen with the H110 board (Skylake), it seems to depend on the kind of the Intel USB controller in the Coffee Lake chipsets (z370, z390)
Dietmar

Why did Intel release two Windows * 7 USB 3.0 eXtensible Host Controller (xHCI) drivers?
There are two different Intel® chipset platforms available for Windows 7. Each platform has its own USB 3.0 xHCI driver:

   Intel® 7 Series / C216 Chipset Family
   Intel® 8 Series / C220 Chipset Family / 4th Generation Intel Intel® Core  Processor U-Series Platform I / O


EDIT: Maybe, it is possible to backport DriverVer=05/11/2017, 5.0.4.43 from Intel. This is a NEW version (V2) of the 5.0.4.43 Intel USB3 driver for Win7 32 bit.


I just see, that you test it for the H110 (Skylake) board. But maybe it works for coffeelake /kabylake.
"Intel 5.0.4.43 (Win7 backport): dont work, root hub is not enumerated"
#4410AndaluI'm aware that I'm talking about a different kind of power supply connection, but with my VIA PCIEX to USB3 card I didn't have no issue in "no low mem" mode and PAE >4GB while at the same time the aida linear test was in progress. If there was a way to install this driver also for the intel controller :)

 

Page 295

#4411Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #4409

I just see, that you test it for the H110 (Skylake) board. But maybe it works for coffeelake /kabylake.
"Intel 5.0.4.43 (Win7 backport): dont work, root hub is not enumerated"


backported driver works in win8 on h110, also works in vmware winxp, so there is complex incompatibility, same code on real winxp hardware works diferent.
intel driver is BIG driver, 820kB vs etron 75kB, but it is our last hope
#4412Mov AX, 0xDEAD
Zitat von ⇗ Andalu im Beitrag ¶ #4410
VIA PCIEX to USB3 card I didn't have no issue in "no low mem" mode and PAE >4GB while at the same time the aida linear test was in progress. If there was a way to install this driver also for the intel controller :)

VIA driver always works in PAE, even in vmware, but with intel hardware it has some trigger, hub driver get external command to unload. i still do not found who and when set this command

p.s. on my system driver has two problems:
- several seconds after booting no devices recognized, further no problems
- Sagem adsl modem cannot works properly in bulk usb mode
#4413Andalu
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #4412
p.s. on my system driver has two problems:
- several seconds after booting no devices recognized, further no problems
- Sagem adsl modem cannot works properly in bulk usb mode

Just tried, no problems both when the 4 usb removable drives are already plugged during the booting and when connected after XP booting.
What is your adsl modem issue?
#4414Mov AX, 0xDEAD
Zitat von ⇗ Andalu im Beitrag ¶ #4413

What is your adsl modem issue?


USB ADSL Modem has software switch to work in ISO or Bulk mode, in Bulk mode it loss connection after some time, in ISO no loss.
But ISO mode is slow and considerably eats cpu, this mode intended for mouse/keyboards with rare events, for mass tranfers bulk mode is preffered. In same time flash storages always works in bulk mode and haven't problem on VIA hardware/driver.

On intel hardware/driver same modem works in bulk mode prefectly.
#4415Andalu⇗ @Mov AX, 0xDEAD
So, the best way out is to find a driver for the intel controller :)

Can it be a power management issue?

P.S: the usb adsl modem that i could try is an old model, no bulk or ISO mode, only a low quality connection :(
#4416infuscomus⇗ @Mov AX, 0xDEAD

there is a symbols file for the texas instruments USB 3 driver - could that be of use to make a good USB 3 driver?
#4417Mov AX, 0xDEAD
Zitat von ⇗ infuscomus im Beitrag ¶ #4416
there is a symbols file for the texas instruments USB 3 driver - could that be of use to make a good USB 3 driver?

.pdb helps only with reversing
to make good driver someone need write it in C language from scratch or port leaked win8/10 driver (sources are not full)
#4418reactosuser7This could be useful to test as an experiment to ReactOS (if you don't know about it is an Open Source Windows XP/Server 2003, still under development) .
Thanks so much for this post!
#4419gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #4409
Intel® 8 Series / C220 Chipset Family / 4th Generation Intel Intel® Core  Processor U-Series Platform I / O
@diderius ...you have to be careful with the Intel description. For example, they talk about both the 8th generation processor and the 300-series chipset. The 300-series chipset will work with the 8th gen processor but not all 300-series chipsets work with the drivers for the the 300-series.

For example, my B360 chipset is not listed on the 300-series list of compatible chipsets and it does not work natively with the driver. In fact, the installer rejects my chipset. I had to reverse the setup file to get it to load, only to get a code 10 error.

It was daniel_k's AMD driver that finally worked on my B360 chipset. I have all mobo ports working as well as  VIA add-on card using XP drivers for the VIA card I found on the Net.
#4420YuriyCNI noticed that the clock on my computer is not very accurate.
In 1 day, time goes forward by almost 57-58 seconds!!
The computer is turned on for about 12-14 hours a day.
Could this problem be caused by the intelppm.sys (fix timer) or is it
a bad quartz resonator on the motherboard (BIOS)?
#4421Mov AX, 0xDEAD¶ updated info about USB3 Win8 Beta M2 driver
#4422Pill Monster
Zitat von ⇗ gordo999 im Beitrag ¶ #4347
Zitat von ⇗ XPLives im Beitrag ¶ #4337
2000 Advanced Server already had > 4GB memory support.
@Pill Monster ...it was not true memory support as we would expect on a 64-bit system with 64 Gb RAM. They used the extended memory as a form of virtual memory. Rather than paging out RAM to disk, they were paging it into higher memory regions because the paging works faster in RAM than on disk.

PAE is a processor-based paging system. It does not enable more RAM for normal use, it has extended address features that can address addresses higher than 4 GB but for a pagefile system only. It's not possible to access RAM beyond 4GB using 32-bits. PAE has a very limited ability to store addresses beyond 4GB but it cannot address them directly by normal means.

PAE works with the memory manager to enable memory 'page swapping' to memory beyond 4GB. I don't know enough about this to agree or disagree with your point that the RAM beyond 4GB should have been made available to normal Windows users. I suspect that maybe you're right. I do know that RAM page swapping is required because 4GB is not enough for running an OS like XP with more than a trivial app like Notepad running. So, RAM pages get swapped (paged) to disk. With PAE, they get swapped to RAM beyond 4GB.

The question for me is how do you use PAE when it is enabled? You would need an app written to address it and another system module to run with the memory manager to use it. Server 2003 has that system module but as far as I know it is not available in a normal Windows OS. Maybe you could adapt it to run on a normal system, I don't know.

To be realistic, if you want to address 64 GB of RAM directly you need a 64-bit system. PAE relies on a 36 bit address capability and trickery.

This is similar to the old EMS/EMM memory managers with DOS. They found ways to swap memory out to external memory cards but those cards were never directly under DOS control. DOS could only address 640K RAM and with a bit of trickery, they managed to extend it to 1 MB.

Page file  or swapping does not allow access to over 4GB RAM.  I will respond in more detail in some time..

To access 64GB of RAM requires an x64 processor. PAE according to Intel is a CPU with  more than 32bits data bus, (so 36bit in practical terms). Xeon had 36, but Atlon64 had 40 address and 40 data.



⇗ @gordo999 I think you accidentally misquoted me - I did not say Advanced server had >4Gb Memory support that was XP Lives who said that...:)
Anyway >4GB doesn't imply 64bit as you suggest. It could mean 36 bit or 40bit  or 48bit.
#4423gordo999
Zitat von ⇗ Pill Monster im Beitrag ¶ #4422
Page file  or swapping does not allow access to over 4GB RAM.  I will respond in more detail in some time.....
⇗ @Pill Monster ...That's what I am trying to say. Normal page swapping with the XP memory manager is done using 4K pages and it is done to disk. It is a pure 32-bit system. PAE allows the size of the page files to increase in size by increasing the memory addressing space by 4-bits, to 36 bits. However, the normal x86 XP memory manager is not designed to work with PAE to access RAM > 4GB directly.

To use memory beyond 4GB meaningfully, you need extra drivers that work in conjunction with the memory manager, a system called AWE (Advanced Windowing Extensions). Another name often used for PAE (Physical Address Extension) is Page Address Extension. I think that's a better description of what PAE does, it increases the page size available to the memory manager and allows the pages to be stored in the extra RAM beyond 4GB. However, if an app is not written to use such features, I don't see how PAE alone will allow access to extra RAM on a normal 32-bit system.

How the system uses PAE to access RAM > 4GB is not clear to me. It appears you can use PAE to install a RAM disk but, as I understand it, a Ramdisk requires separate software/drivers to run it. Here's a link to people discussing this problem and one mentions what I suggested about the old DOS systems that software is required to 'trick' apps into thinking they had more memory. The EMM memory manager did it using a small area of DOS RAM to map memory to an external memory card.

⇗ https://superuser.com/questions/292207/i...sing-windows-xp

"Exceeding the 4GB cap is harder. It requires playing addressing tricks of the sort that used to be required in the days of 16bit systems. I have heard tales that it's possible to break this barrier in 32bit XP, but it requires much more than a simple registry edit. IIRC, the limit is compiled into the operating system directly. To get around it, you have to find a specific .dll file from a 32bit Server 2003 machine and use it to replace the equivalent file on your Windows XP machine. For this to work, the file has to be modified so that XP won't reject it and you have to use volume shadow copy to get it to replace the existing file. I don't remember and can't find the link now for which file you need or how to modify it. After this is accomplished, you should be able to make the same settings to 32bit XP that you can to Server 2003 to allow the higher memory cap. Of course, such a change is highly unsupported and violates your license agreement".
#4424ruthanWhat about games compatibility, are all XP games running on Windows 2003, some just report that its not XP and refuse to install / start? Also XP still has some XP support, what about Win2003?
#4425GelipI tested WinXP SP2 x86 on a real computer - Thin Client Igel 4210 (VIA C7 CPU, AWARD 6.00PG BIOS) using UEFI32 emulator DUET and it works in UEFI + CSM:


PC is old but bios UEFI32 is modern

 

Page 296

#4426diderius6⇗ @Gelip
Waaooh, this is really cool:))!! Please describe step by step,
which files you used and the preparing of everything.
What about Graphik card and 3D?
Also very interesting, if nvme boot via the UEFI Bios files is now possible,
for a compi, which never heard anything about nvme before in its life;)
Dietmar

PS: Is there a special reason, why you use XP SP2?
Can you disable CSM in Bios for this kind of UEFI boot of XP?
#4427Gelip⇗ @diderius6

Zitat von ⇗ diderius6 im Beitrag ¶ #4426

Waaooh, this is really cool:))!! Please describe step by step,
which files you used and the preparing of everything.

As for the UEFI32 emulator, you have to compile it from sources - I used these: ⇗ vector-edk
How to build and what you need is described inside: ⇗ ReadMe.txt - you need Visual Studio 2005 and WinDDK 3790.1830
You can prepare a DUET pendrive with ⇗ CreateBootDisk.bat or with this installer: ⇗ Tianocore Uefi Duet Installer

When it comes to preparing WinXP x86 you need the files winload.efi and bootmgfw.efi from the test version of Vista Beta Longhorn 6.0.5219.0
To WINDOWS\system32 you copy winload.efi and to FAT32 pendrive file bootmgfw.efi (I changed the name to WinXP.efi  ) and to the root directory of the pendrive the boot.ini file by adding the /usenewloader option.
Now just boot your compi from this pendrive - that's all
Zitat von ⇗ diderius6 im Beitrag ¶ #4426

What about Graphik card and 3D?

Igel has a VIA UniChrome S3 card integrated and after the driver installation 3D works.

I don't have a motherboard with legacy or UEFI 32-bit bios with a PCIe connector so I don't know but with WinXP x64 I tested AMD Radeon HD6450 and HD7450 so it will probably work with WinXP x86 as well.

P.S. I will be testing WinXP x86 with the UEFI32 DUET emulator on ThinkPad X61, IdeaPad S10e and Igel with old PCI S3 Trio, Virge and Matrox cards

Zitat von ⇗ diderius6 im Beitrag ¶ #4426

Also very interesting, if nvme boot via the UEFI Bios files is now possible,
for a compi, which never heard anything about nvme before in its life;)

I think that there should be no problem if there are WinXP drivers. I recently bought a mSATA drive for the ThinkPad X220 and it works without problems in WinXP SP2 x64: ⇗ mSATA test on X220
Zitat von ⇗ diderius6 im Beitrag ¶ #4426

PS: Is there a special reason, why you use XP SP2?

In SP3 I do not like the service of network connections - it works differently than in SP2.
Zitat von ⇗ diderius6 im Beitrag ¶ #4426

Can you disable CSM in Bios for this kind of UEFI boot of XP?

No, UEFI32 or UEFI64 emulator does not work on computers with UEFI bios. Works only on legacy bios computers. In the video there is a test with Igel 4210 which has bios AWARD 6.00PG. The DUET emulator also works in the Qemu virtual machine - on this video tested DUET UEFI64:


In VirtualBox, VMware and MS VPC not work.
#4428Mov AX, 0xDEAD
Zitat von ⇗ gordo999 im Beitrag ¶ #4423
However, the normal x86 XP memory manager is not designed to work with PAE to access RAM > 4GB directly

- winxp has pae kernel, only in this kernel available physical memory above 4gb, pae kernel can map > 4GB directly
- when progs allocating more memory, manager through pae choose it from any physical place (0-36GB), then map this physical piece to prog's local adress space (old dos EMM trick, in emm window size was fixed 64K, in ZX Spectrum 128 window was 16 kb)
- one process can't allocate more 2Gb of ram (3Gb if /3gb switch enabled), kernel limited to 2Gb (1Gb if /3gb switch enabled)
- AWE is software API same as EMM INTxx, applications can have many "windows" at same adress in local adress space and fast switch between
- 3rd RAM Disk software "we can access above 4gb!" is not magic, they also uses windows and switch from one to other when file stored in different window
#4429LevvonMore than 4 years ago I already posted this information on the Ru-Board.com Forum, but it turned out to be unclaimed.

Loading Windows XP from GPT disks and accessing space beyond 2.2 TB are possible.
The only limitation is that the system and boot partitions must be entirely within the first 2.2 TB.


   Method #1 (unreliable due to errors in the Paragon drivers)

It consists in creating HybridMBR using gdisk (GPT fdisk) and using the driver 'gpt_loader.sys' (Paragon GPT Loader).

HybridMBR is created using gdisk (GPT fdisk) in a special way, so that the BIOS or UEFI of the computer interprets hybrid disk partitioning as MBR and the loaded operating system already as GPT, thanks to the gpt_loader.sys driver (Paragon GPT Loader). For 32-bit driver version 8.0.1.0 there are patches [@hardwarefetish.com] that fix BSOD and high RAM consumption but do not fix file system corruption problems. Driver versions newer than 9.0.5.x are not suitable because they report that "This driver version doesn't support hybrid disk partitioning". Drivers can be extracted from the installers of Paragon GPT Disk Manager or Paragon HFS + for Windows.

   Instructions for creating a HybridMBR:

  • of the 3 available partitions (the 4th slot is used for protective partition) in HybridMBR it is enough to specify only the system and boot partitions;
  • it is not necessary to specify the remaining partitions in HybridMBR because Paragon GPT Loader driver will subsequently provide access to them;
  • DO NOT accept the offer of the utility to place a protective partition with the identifier 0xEE in the first slot created by HybridMBR;
  • DO NOT allow the utility to mark the remaining space with another additional protective partition with the identifier 0xEE.

   Method #2 (reliable, meets the UEFI Specification)

It consists in using a special ProtectiveMBR from the SYSLINUX v4.x+ distribution which converts GPT to NormalMBR on-the-fly in the RAM.

Like Method #1 these actions are performed directly on a loaded Windows XP operating system.

  • for Windows XP SP3 (32-bit) disable Windows File Protection and in the 'system32\dllcache' and 'system32\drivers' folders replace the 'disk.sys' and 'partmgr.sys' files with similar files from Windows Server 2003 SP2 (32-bit) with GPT support;
  • create HybridMBR as described in Method #1 but additionally assign the Legacy BIOS Bootable attribute to the system partition GPT which corresponds to the active partition in HybridMBR;
  • on top of the newly created HybridMBR create a NEW HybridMBR with ONLY ONE protective partition with the identifier 0xEE exactly on active bootable partition space (in this case, HybridMBR will be a true ProtectiveMBR);
  • from the distribution of SYSLINUX v4.x and newer execute the command 'syslinux.exe -m -f C: gptmbr.bin', where 'C:' is the letter of any partition on the target disk.


Proof Video:
vimple.co/8614e295604f4cfd9b0045f6422619d9

Reproduction Kit:
upload.ee/files/11625492/WinXP_GPT.zip.html
#4430ruthanThanks, its nice source of info.

But Syslinux is much less used by Linux distros than Grub + change whole disk partition tables, means re-installation of others OSes or some migration etc. It looks problematic, time consuming etc, unless someone will create some conversion tool and even than, it would probably generate problems with standard partitioning tools.

So best scenario is probably keep XP only disk with 1 partition and in that case you still can keep it legacy, until we will get UEFI only bioses, or is there any other advantage to migrate it to EFI bootable HDD?

For me personally XP GPT main advantage would be in possibility add XP parition to GPT disk with lots of others GPT partitions without any special partitioning to get rid of special XP or MBR disks.. and boot every OS from one NVME drive..
#4431Levvon
Zitat von ⇗ ruthan im Beitrag ¶ #4430
But Syslinux is much less used by Linux distros than Grub + change whole disk partition tables, means re-installation of others OSes or some migration etc. It looks problematic, time consuming etc, unless someone will create some conversion tool and even than, it would probably generate problems with standard partitioning tools.


Method #2 is as simple as possible and does not require the installation of third-party bootloaders, including SYSLINUX. The method only uses the ProtectiveMBR from the SYSLINUX distribution. The code of this ProtectiveMBR turns the GPT-table into NormalMBR-table on-the-fly in the RAM and does not affect the real MBR on the disk. You can use any relevant tool for installing ProtectiveMBR, not necessarily 'syslinux.exe'.

Zitat von ⇗ ruthan im Beitrag ¶ #4430
For me personally XP GPT main advantage would be in possibility add XP parition to GPT disk with lots of others GPT partitions without any special partitioning to get rid of special XP or MBR disks.. and boot every OS from one NVME drive..


That is exactly what I am proposing. If Windows XP is cloned/copied to an existing partition of GPT disk then only step 2 (exclusively with respect to setting the attribute Legacy BIOS Bootable to XP partition) and step 4 of Method #2 should be performed.
#4432diderius6⇗ @Levvon
Nice idea:))!!
Can you please write a Tutorial, step by step, what you have to do for to boot XP SP3 from a GPT harddisk.
I tested disk.sys and partmgr.sys (last versions from Winserver 2003 32 bit) and they work with GPT under XP SP3.

Have you tested, if this method can be used for to do UEFI boot of XP SP3 32 bit,
have a nice day
Dietmar
#4433Mov AX, 0xDEAD¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (294)
¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware
updated info about generic Microsoft USB3 driver from Windows 8

We have another working USB3 driver for Windows XP !
#4434diderius6⇗ @Mov AX, 0xDEAD
Waaaoooohhhh:))..
This is a nice big step forward for future XP.
I tested today the modded AMD USB3 driver in MPS Multiprocessor Mode (means without any acpi)
but the same happened, not recognicing any USB device after some plug<>unplug.
So, I am very curious to test your modded Win8 USB3 driver for XP,
have a nice day
Dietmar
#4435YuriyCN
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #4433

updated info about generic Microsoft USB3 driver from Windows 8
We have another working USB3 driver for Windows XP !



I am pleased that a new USB3 driver has appeared.
Where can I download this driver to test it?
#4436Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #4434
but the same happened, not recognicing any USB device after some plug<>unplug

AMD driver probably is not generic as we assumed, there is nothing to say more. I think i can trace this issue if reproduce it sometime
#4437diderius6⇗ @Mov AX, 0xDEAD

I just make a test with the last version from ⇗ @daniel_k AMD USB3 driver on the nice Gigabyte H110M-2SH board.
I notice there also the plug <> unplug problem, even it is z170 (Skylake).
There, the board crashes after no USB device is recogniced any longer via the AMD driver.
I also noticed, that with a connected USB device, you can work as long as you want with the AMD USB3 driver,
I test this with linear read from AIDA64 many times one after the other. But AIDA64 crashes, when you connect, disconnect a lot of times other USB devices while AIDA64 is running
Dietmar

PS: Tomorrow I set up a Windbg session, may be it gives an advice for the USB3 crash.
#4438ruthan⇗ @Levvon
 Thanks i understand it in highlevel, but we need some step by step tutorial how to do that some step are not clear to me.
#4439infuscomus⇗ @Mov AX, 0xDEAD

can you show us how you made your windows 8.0 USB 3.0 driver?
#4440LevvonWindows XP @ GPT

Proof Video:
vimple.co/8614e295604f4cfd9b0045f6422619d9

Reproduction Kit:
upload.ee/files/11625492/WinXP_GPT.zip.html

 

Page 297

#4441Mov AX, 0xDEAD
Zitat von ⇗ infuscomus im Beitrag ¶ #4439
can you show us how you made your windows 8.0 USB 3.0 driver?

same like usual - replacing mismatch imports to equivalents in original ms files
there about 7 files, i also made wdf 1.11 library compatible with Windows XP (convert Io(Dis)ConnectiInterruptEx->Io(Dis)ConnectiInterrupt, take code from DDK's intex.lib)

wdf01000.sys v1.11.9200.20755 (win8_ldr.130621-1504)
EtwRegister
EtwUnregister
EtwWrite
PoGetSystemWake
PoSetSystemWake
IoConnectInterruptEx
IoDisconnectInterruptEx

WdfLdr.sys 1.11.9200.16384 (win8_rtm.120725-1247)
patched to load WDF01_W8.SYS

usbd.sys 6.2.9200.16384 (win8_rtm.120725-1247)
_cookie_constant

WppRecorder.sys 6.2.9200.16384 (win8_rtm.120725-1247)
_cookie_constant

USBXHCI.SYS 6.2.9200.16384 (win8_rtm.120725-1247)
_cookie_constant
EtwActivityIdControl
EtwEventEnabled
EtwRegister
EtwUnregister
EtwWrite
IoGetDevicePropertyData
IoQueueWorkItemEx
IoSetDevicePropertyData
KdRefreshDebuggerNotPresent
KeGetProcessorIndexFromNumber
KeQueryActiveProcessorCountEx
KeQueryDpcWatchdogInformation
wcsncpy_s
ZwAlpcConnectPort
ZwAlpcSendWaitReceivePort


UCX01000.SYS 6.2.9200.16384 (win8_rtm.120725-1247)
cookie_constant
EtwActivityIdControl
EtwRegister
EtwUnregister
EtwWrite
IoQueueWorkItemEx
KdRefreshDebuggerNotPresent
KeGetCurrentProcessorNumberEx
ObfDereferenceObjectWithTag
ObfReferenceObjectWithTag
#4442Mov AX, 0xDEADI've got reports about increasing speed with win8 usb3 driver - i think this is auto enabled UASP mode
Original drivers from manufacturers offer separate utils to enable uasp mode (VIA UAS Client or ASUS USB 3.0 Boost), speed after also increasing
#4443Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #4437

I notice there also the plug <> unplug problem, even it is z170 (Skylake).
There, the board crashes after no USB device is recogniced any longer via the AMD driver.


yesterday i played with "plug <> unplug", after some time no more devices was recognized (last inserted detected as unknow device in d3 state), changing driver on live OS to fresco or win8 doesnt recover controller. Suprise from fresco because i know it do force reset and power cycle on all ports on loading, so seems controller even can't reset properly after touching by amd' hands (
No BSOD, no errors, just ports hangs, very hard to investigate...
#4444unique1188⇗ @deSSy2724 off topic, but, this thread has almost 300 pages and this will be #4444 post. I am curious, is your PC ready and running as you first intended to build?
⇗ @Mov AX, 0xDEAD what part of Uzb do you come from if I may ask?
#4445diderius6This is the original driver for 32 bit from AMD for the Zeppelin Chipset x570.
This driver recognices only on each second boot any USB device
Dietmar

PS: But we have ⇗ @Mov AX, 0xDEAD :))..



diderius6 has attached files to this post
#4446Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #4445
This is the original driver for 32 bit from AMD for the Zeppelin Chipset x570

"Unoriginal" fake signed by "Edgard Roberto Viera/Riolin Limited" )
p.s. It is Etron v0119 usb3 driver with replaced IDs from Etron to Intel

Zitat von ⇗ unique1188 im Beitrag ¶ #4444
@Mov AX, 0xDEAD what part of Uzb do you come from if I may ask?

offtop: Tashkent city
#4447Illen
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #4442
I've got reports about increasing speed with win8 usb3 driver - i think this is auto enabled UASP mode
Original drivers from manufacturers offer separate utils to enable uasp mode (VIA UAS Client or ASUS USB 3.0 Boost), speed after also increasing

Windows 8 xHCI stack supports UASP, but to make any use of it, you also need uaspstor.sys and a storage device that supports it.
#4448Zucker2k
Zitat von ⇗ Levvon im Beitrag ¶ #4440
Windows XP @ GPT

Proof Video:
vimple.co/8614e295604f4cfd9b0045f6422619d9

Reproduction Kit:
upload.ee/files/11625492/WinXP_GPT.zip.html




This deserves its own own thread. Well done!
#4449Mov AX, 0xDEADI've found my little mistake in Win8 USB3.0 driver, please patch USBXHCI.SYS:
1) FF15E4B00300B001897E70=>897E70FF15E4B00300B001
2) 85338C33=>85338F33
3) recalc checksum
4) final sha1=c6d35c456e5b011603fae67472bf1a4aacf61b42

No more patches need, so driver now STABLE, let' name it as BETA1
#4450Pill Monster
Zitat von ⇗ gordo999 im Beitrag ¶ #4423
Zitat von ⇗ Pill Monster im Beitrag ¶ #4422
Page file  or swapping does not allow access to over 4GB RAM.  I will respond in more detail in some time.....
@Pill Monster ...That's what I am trying to say. Normal page swapping with the XP memory manager is done using 4K pages and it is done to disk. It is a pure 32-bit system. PAE allows the size of the page files to increase in size by increasing the memory addressing space by 4-bits, to 36 bits. However, the normal x86 XP memory manager is not designed to work with PAE to access RAM > 4GB directly.

To use memory beyond 4GB meaningfully, you need extra drivers that work in conjunction with the memory manager, a system called AWE (Advanced Windowing Extensions). Another name often used for PAE (Physical Address Extension) is Page Address Extension. I think that's a better description of what PAE does, it increases the page size available to the memory manager and allows the pages to be stored in the extra RAM beyond 4GB. However, if an app is not written to use such features, I don't see how PAE alone will allow access to extra RAM on a normal 32-bit system.

How the system uses PAE to access RAM > 4GB is not clear to me. It appears you can use PAE to install a RAM disk but, as I understand it, a Ramdisk requires separate software/drivers to run it. Here's a link to people discussing this problem and one mentions what I suggested about the old DOS systems that software is required to 'trick' apps into thinking they had more memory. The EMM memory manager did it using a small area of DOS RAM to map memory to an external memory card.

⇗ https://superuser.com/questions/292207/i...sing-windows-xp

"Exceeding the 4GB cap is harder. It requires playing addressing tricks of the sort that used to be required in the days of 16bit systems. I have heard tales that it's possible to break this barrier in 32bit XP, but it requires much more than a simple registry edit. IIRC, the limit is compiled into the operating system directly. To get around it, you have to find a specific .dll file from a 32bit Server 2003 machine and use it to replace the equivalent file on your Windows XP machine. For this to work, the file has to be modified so that XP won't reject it and you have to use volume shadow copy to get it to replace the existing file. I don't remember and can't find the link now for which file you need or how to modify it. After this is accomplished, you should be able to make the same settings to 32bit XP that you can to Server 2003 to allow the higher memory cap. Of course, such a change is highly unsupported and violates your license agreement".




Zitat
@Pill Monster .[quote]..it was not true memory support as we would expect on a 64-bit system with 64 Gb RAM. They used the extended memory as a form of virtual memory. Rather than paging out RAM to disk, they were paging it into higher memory regions because the paging works faster in RAM than on disk.

PAE is a processor-based paging system. It does not enable more RAM for normal use, it has extended address features that can address addresses higher than 4 GB but for a pagefile system only. It's not possible to access RAM beyond 4GB using 32-bits. PAE has a very limited ability to store addresses beyond 4GB but it cannot address them directly by normal means.

OK, I'll respond as best I can without writing a  thesis.... but this is not an easy topic to cover, and I suck at explaining anything technical. I'll post some links though.   :)   

The first thing you should be aware of is that the material published on MSDN (particularly the old site) or any MS or Intel related sites pertaining to memory relate almost exclusively to and is heavily biased toward Intel.
During the time period we are talking about Intel were trying to drive AMD into the ground with Microsoft's full co-operation and they almost succeeded....  but that's another story in itself.       
AMD before K8 & Intel up until C2D (Intel64) used segmented memory (2GB kernel 2GB userspace).  AMD64 (Athlon64 onward) with 40bit capability used a flat memory model. From Athlon64's release until Core Two Duo Intel and AMD CPU's handled memory management differently. Athlon64 supported 128GB RAM (actually more but MS don't officially support more than what they've tested ).   SuperUser isn't a great source either. If anything check Stack Overflow, the info there is more reliable....different category of users.

A process lives in a virtual world inside the OS which lives in a virtual world inside the CPU - like a box within a box.  What's fundamental to this is the CPU handles all address translation. The CPU is only part of the entire system with direct access to RAM,  the CPU alone (with exception of a small part of the kernel) knows how much RAM is installed.  Not the OS or any process.    
Say you have XP installed on Phenom II with 32GB of RAM - def no need for a pagefile.  What happens is when the process requests some data the first time it's mapped into memory and process view by the x64 CPU.
When the process reaches it's 4GB working set limit & requests data the CPU pages in the data and moves some other page from user to kernel (kernel is outside process view). That unmapped page is kept in RAM & the next time the process requests the same data it's already in RAM so the CPU TLB does a page table walk to find where in ram that data is then maps it back into process view.  This is  called page replacement policy....        

Zitat
PAE works with the memory manager to enable memory 'page swapping' to memory beyond 4GB. I don't know enough about this to agree or disagree with your point that the RAM beyond 4GB should have been made available to normal Windows users. I suspect that maybe you're right. I do know that RAM page swapping is required because 4GB is not enough for running an OS like XP with more than a trivial app like Notepad running. So, RAM pages get swapped (paged) to disk. With PAE, they get swapped to RAM beyond 4GB.

I guess the simplest answer is that a 32bit processor has a 4GB limit, but an x64 (40, 48,52bit & so on) doesn't. The 4GB limitation is a hardware limitation of x86 (32bit) hardware.
That's all. It is not by design an Operating System limitation.

Zitat
The question for me is how do you use PAE when it is enabled? You would need an app written to address it and another system module to run with the memory manager to use it. Server 2003 has that system module but as far as I know it is not available in a normal Windows OS. Maybe you could adapt it to run on a normal system, I don't know.

Well as I mentioned applications have no knowledge or are even aware of RAM.   

Zitat

To be realistic, if you want to address 64 GB of RAM directly you need a 64-bit system. PAE relies on a 36 bit address capability and trickery.

This is similar to the old EMS/EMM memory managers with DOS. They found ways to swap memory out to external memory cards but those cards were never directly under DOS control. DOS could only address 640K RAM and with a bit of trickery, they managed to extend it to 1 MB.

This is not the case.  Also 64bit is a misnomer anyway since last I checked the most any CPU can access is 57bit.   The "x86" & "x64" part of Operating System's name is the support for either x86 or x64  CPU architecture. It's not memory support.  



⇗ @gordo999 please check this link, it should be very helpful..

⇗ https://www.geoffchappell.com/notes/wind...ense/memory.htm

#4451Pill Monster
Zitat von ⇗ deSSy2724 im Beitrag ¶ #5
1. So, basically...... XP 32bit can only be installed to the MBR partition and nothing can change that BUT with help of 3rd party tools like this one (link below), XP can read/access other GPT partitions and I should be able to install programs/games normally to that GPT partitions, right?
⇗ https://www.paragon-software.com/de/tech...nts/gpt-loader/

2. For slipstreaming, just adding correct hardware IDs for the SATA AHCI controller of my mainboard is enough to install XP 32bit? Wat if my MBO has multiple AHCI controllers from different manufacturers, should I avoid Intels AHCI controller and use the others instead?

3. What is actually the disadvantage if I disable ACPI (desktop PC)? Would my CPU work always with full speed and never downclock when idle (Intels Turbo Clock technology) or what?. Is ACPI disabled system-wide (BIOS) or can it be only disabled for specific OS-es?

4. @Mov AX, 0xDEAD
Are you trying to say that this user from this thread has ACPI disabled or what? How did he managed to install XP 32 bit with Coffe Lake MBO/CPU?
⇗ Windows XP 32bit SP3 now working with Z370 motherboard and Coffe Lake CPU

3rd party is usually best option when you want to do something that MS don't want you to do. ( Seriously).

for example GPT partitions can easily be cloned despite what MS library says. Just not with MS software.
Same with XP support for GPT,  it's really up to ASmedia or Jmicron not MS

Also - are you guys with issues using the vanilla XP?  Last night  I checked tpb and only SP3 was listed. No SP1
#4452infuscomusI'm trying to get Mov Ax 0xDEAD's USB 3 driver to load during XP texmode setup.

Trying to start by getting KMDF 1.11 to load by adding them to txtsetup.sif,

wdfldr8.sys - loads fine
wdf01_w8.sys - fails to load, says "wdf01_w8.sys is corrupt"
I must've missed something - but the only dependencies I can see for wdf01_w8.sys are hal.dll ntoskrnl.exe and wdfldr8.sys

the driver loads just fine booted into windows
#4453Mov AX, 0xDEADported driver has original win8 bug:
In case of connection "storage->external hub->port on MoBo" when you safe remove storage, it will marked as yellow and wait for ejecting. But driver cannot detect physical ejecting and will show this phantom storage until you do some with this hub, insert or eject something to any ports. Win10 driver doesnt have this bug, Win8.1 not tested

Maybe its bug of firmware/chips in external hub, i dont know...
#4454diderius6⇗ @infuscomus

You can also try to build one txtsetup.oem for all the files and make a try with Nlite
Dietmar

PS: I notived, that USB boot is not possible. All drivers are loaded after first boot stage.
When you force them to boot earlier, USB boot hangs.
I think, this happens because of needed KMDF.
#4455diderius6I am just running a Windbg session on the ASRock Fatal1ty Z370 Gaming K6 board
for the modded AMD USB3 1.1.0.0145 driver.

After plug<>unplug USB hangs,
I got message from windbg

watchdog!WdUpdateRecoveryState: Recovery enabled.

And usbstor.sys is unloaded

Unloaded modules:
b83e0000 b83e7000   USBSTOR.SYS
b83d8000 b83df000   USBSTOR.SYS
b8328000 b832f000   USBSTOR.SYS

During a search with google they wrote:
"you have a
driver that's failing on a power transition to D0."

Dietmar

 

Page 298

#4456diderius6For to set up a really good version of the Windbg session for XP SP3,
first I solved the timer problem for the checked version halmacpi.dll for XP SP3 and the normal checked ntkrpamp.exe.
Nice, works:))!
Now I get such a lot of output
Dietmar



diderius6 has attached files to this post
#4457diderius6Yepp, I can fix exact the timepoint,
when the USB device crashes. And direct before crash, the USB stick goes down D0  => D3 .

Dietmar

Wed
 May  6 17:42:45.981 2020 (UTC + 2:00): Break repeatedly, break Once,
Ignore, terminate Process, or terminate Thread (boipt)? i
i
Wed May 6 17:42:45.981 2020 (UTC + 2:00):
Wed May 6 17:43:00.434 2020 (UTC + 2:00): RTL: Ignoring attempt to delete a pinned atom (c009)

0: kd> !devnode 0 1 usbstor
Dumping IopRootDeviceNode (= 0x8b974dc8)
DevNode 0x8b91ddb0 for PDO 0x8b91df10
InstancePath is "Root\LEGACY_USBSTOR\0000"
ServiceName is "USBSTOR"
State = DeviceNodeRemoved (0x312)
Previous State = DeviceNodeStarted (0x308)
Problem = CM_PROB_DEVICE_NOT_THERE

0: kd> !devnode 0x88d79e30
DevNode 0x88d79e30 for PDO 0x88c989e8
Parent 0x8b7eaed8 Sibling 0000000000 Child 0000000000
InstancePath is "USB\Vid_0000&Pid_0000\5&290e4c81&0&17"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
StateHistory[02] = DeviceNodeUninitialized (0x301)
StateHistory[01] = DeviceNodeInitialized (0x302)
StateHistory[00] = DeviceNodeUninitialized (0x301)
StateHistory[19] = Unknown State (0x0)
StateHistory[18] = Unknown State (0x0)
StateHistory[17] = Unknown State (0x0)
StateHistory[16] = Unknown State (0x0)
StateHistory[15] = Unknown State (0x0)
StateHistory[14] = Unknown State (0x0)
StateHistory[13] = Unknown State (0x0)
StateHistory[12] = Unknown State (0x0)
StateHistory[11] = Unknown State (0x0)
StateHistory[10] = Unknown State (0x0)
StateHistory[09] = Unknown State (0x0)
StateHistory[08] = Unknown State (0x0)
StateHistory[07] = Unknown State (0x0)
StateHistory[06] = Unknown State (0x0)
StateHistory[05] = Unknown State (0x0)
StateHistory[04] = Unknown State (0x0)
StateHistory[03] = Unknown State (0x0)
Flags (0x00000030) DNF_ENUMERATED, DNF_IDS_QUERIED
CapabilityFlags (0x00005402) DeviceD2, WakeFromD0,
WakeFromD2, HardwareDisabled

0: kd> !devnode 0 1 amdxhc
Dumping IopRootDeviceNode (= 0x8b974dc8)
DevNode 0x8b7ee5b8 for PDO 0x8b85be50
InstancePath is "PCI\VEN_8086&DEV_A2AF&SUBSYS_A2AF1849&REV_00\3&11583659&0&A0"
ServiceName is "amdxhc"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8b7eaed8 for PDO 0x8b856918
InstancePath is "AMDUSB30\ROOT_HUB30\4&556f44c&7"
ServiceName is "amdhub30"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8b6942d0 for PDO 0x8b662b20
InstancePath is "USB\Vid_174c&Pid_2074\5&290e4c81&0&3"
ServiceName is "amdhub30"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8b693008 for PDO 0x8b66a890
InstancePath is "USB\Vid_174c&Pid_3074\5&290e4c81&0&23"
ServiceName is "amdhub30"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x88d79e30 for PDO 0x88c989e8
InstancePath is "USB\Vid_0000&Pid_0000\5&290e4c81&0&17"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8b91f578 for PDO 0x8b91f6d8
InstancePath is "Root\LEGACY_AMDXHC\0000"
ServiceName is "amdxhc"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)

0: kd> !devnode 0 1 amdhub30
Dumping IopRootDeviceNode (= 0x8b974dc8)
DevNode 0x8b7eaed8 for PDO 0x8b856918
InstancePath is "AMDUSB30\ROOT_HUB30\4&556f44c&7"
ServiceName is "amdhub30"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8b6942d0 for PDO 0x8b662b20
InstancePath is "USB\Vid_174c&Pid_2074\5&290e4c81&0&3"
ServiceName is "amdhub30"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8b693008 for PDO 0x8b66a890
InstancePath is "USB\Vid_174c&Pid_3074\5&290e4c81&0&23"
ServiceName is "amdhub30"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x88d79e30 for PDO 0x88c989e8
InstancePath is "USB\Vid_0000&Pid_0000\5&290e4c81&0&17"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8b91f7d0 for PDO 0x8b91f930
InstancePath is "Root\LEGACY_AMDHUB30\0000"
ServiceName is "amdhub30"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)

#4458diderius6May be, we can hack ntoskrnl,
for to overcome the problems with the AMD USB3 driver.

The sentence is in ntoskrnl RTL atom.c

Dietmar
NTSTATUS
RtlDeleteAtomFromAtomTable(
IN PVOID AtomTableHandle,
IN RTL_ATOM Atom
)
{
NTSTATUS Status;
PRTL_ATOM_TABLE p = (PRTL_ATOM_TABLE)AtomTableHandle;
PRTL_ATOM_TABLE_ENTRY a, *pa;

RTL_PAGED_CODE();
if (!RtlpLockAtomTable( p )) {
return STATUS_INVALID_PARAMETER;
}
try {
Status = STATUS_INVALID_HANDLE;
if (Atom >= RTL_ATOM_MAXIMUM_INTEGER_ATOM) {
a = RtlpAtomMapAtomToHandleEntry( p,
(ULONG)(Atom & (USHORT)~RTL_ATOM_MAXIMUM_INTEGER_ATOM)
);
if (a != NULL && a->Atom == Atom) {
Status = STATUS_SUCCESS;
if (a->Flags & RTL_ATOM_PINNED) {
KdPrint(( "RTL: Ignoring attempt to delete a pinned atom (%x)\n", Atom ));
Status = STATUS_WAS_LOCKED; // This is a success status code!
}
else
if (--a->ReferenceCount == 0) {
a = RtlpHashStringToAtom( p, a->Name, &pa, NULL );
if (a != NULL) {
if (pa != NULL) {
*pa = a->HashLink;
}
RtlpFreeHandleForAtom( p, a );
RtlpFreeAtom( a );
}
}
}
}
else
if (Atom != RTL_ATOM_INVALID_ATOM) {
Status = STATUS_SUCCESS;
}
}
except (EXCEPTION_EXECUTE_HANDLER) {
Status = GetExceptionCode();
}

RtlpUnlockAtomTable( p );

return Status;
}
#4459YuriyCN
Zitat von ⇗ diderius6 im Beitrag ¶ #4456
For to set up a really good version of the Windbg session for XP SP3,
first I solved the timer problem for the checked version halmacpi.dll for XP SP3 and the normal checked ntkrpamp.exe.
Nice, works:))!
Now I get such a lot of output
Dietmar


How to use the files (hal3.dll, ntos3.exe) you uploaded? They need to be renamed and put to c:\WINDOWS\system32. What problem do these files solve?
#4460diderius6⇗ @YuriyCN

These files ar only needed for debug of XP SP3, when you want to take a closer look, what happens with any driver.
With this files you have the minimal setup for a debug version
of XP SP3
Dietmar

PS: Just copy the files to C:\WINDOWS\system32
and add in boot.ini the line

multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP ProfessionalAcpiDEBUG" /kernel=ntos3.exe /Hal=hal3.dll /debug /debugport=COM1 /baudrate=115200
#4461YuriyCN
Zitat von ⇗ diderius6 im Beitrag ¶ #4460
@YuriyCN

These files ar only needed for debug of XP SP3, when you want to take a closer look, what happens with any driver.
With this files you have the minimal setup for a debug version
of XP SP3
Dietmar

PS: Just copy the files to C:\WINDOWS\system32
and add in boot.ini the line

multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP ProfessionalAcpiDEBUG" /kernel=ntos3.exe /Hal=hal3.dll /debug /debugport=COM1 /baudrate=115200



Thanks, now I understand.

Do you want to solve the problem with the pm_timer fix here?
⇗ What exactly is the hal timer problem? (3)
#4462diderius6I noticed, that the HUB from the AMD driver can send devices to D3 state,
but has no possibilty to awake the USB device from D3.

I compare this with the Asmedia Hub. This can send and awake from D3.
Dietmar

AMD USB 3.0 Root Hub

PDCAP_D0_SUPPORTED
PDCAP_D2_SUPPORTED
PDCAP_D3_SUPPORTED
PDCAP_WAKE_FROM_D0_SUPPORTED
PDCAP_WAKE_FROM_D2_SUPPORTED


Asmedia USB Root Hub

PDCAP_D0_SUPPORTED
PDCAP_D3_SUPPORTED
PDCAP_WAKE_FROM_D3_SUPPORTED
#4463gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #4456
For to set up a really good version of the Windbg session for XP SP3,
first I solved the timer problem for the checked version halmacpi.dll for XP SP3 and the normal checked ntkrpamp.exe.r
diderius6 ...Dietmar, are you talking about remote kernel debugging with windbg or local debugging? I've had no problem running windbg on XP SP3 locally, or doing full debugging sessions using Ollydbg version 1. My problem is getting it to run via a serial connection using a USB - serial adapter.

I already had a k-mode windbg session going between W7 as host and both W7 and W10 as targets using the same adapter. When I checked it recently it won't work at all on any OS. Trying to track down the issue and it seems the host sends data OK to the target but the serial data coming back from the target is distorted. Don't know if that has something to do with the drivers on the B360 chipset and the serial port. I have changed hal and intelppm, which has really improved the performance of XP but it may be causing a problem with the serial ports. Don't know, still working on it.
#4464gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #4462
I noticed, that the HUB from the AMD driver can send devices to D3 state,
but has no possibilty to awake the USB device from D3.
diderius6 ...don't know if this is helpful.

Edit...not thinking clearly today, have a bit of a cold going on. Not covid or anything, just a sore throat and a fuzzy head. The USB device would have it's own Dx sleep state since the device can go into a sleep state while the mobo is fully awake. Since the sleep state is selectable usually, in Device Manager, it would seem the hub driver may have something to do with it. Of course, it could be anywhere from ACPI down.

The USB device has 4 conductors, 2 for power and 2 for serial comm. Obviously, the voltage to the device is fixed by the mobo and there is likely no separate Dx sleep state voltages for each USB device supplied by the mobo. You could verify that by monitoring the voltage to the device to see if it drops during a Dx state. If it stays the same, which is likely, the device is controlling the Dx state internally.

Therefore, the USB device must have an internal means of setting its Dx sleep state voltage. The signal to tell it whether to go into sleep mode or not comes from the Device Manager via ACPI, the XHCI driver and the hub driver. Since the data sent to the device is serial, it could be difficult to decipher it without a serial data/storage analyzer.

I'll leave the rest of the post in case it proves useful somehow, even though it is wrong.

My background is in hardware and I have traced out the circuits, on the mobo, for the sleep states you are talking about. Basically, each sleep state is a voltage level controlled by mosfets driven by a controller chip.

The inputs to these voltage level circuits are controlled by Hal and the drivers talk to the physical circuits/controllers through Hal. The highest level next to the OS executive is ACPI and all the USB drivers are in a tree with ACPI at the highest level, outside the executive. Th next level down from ACPI is the xhci driver, then the hub, then the device. You probably know all that better than I do.

From what I understand, the sleep states are controlled by ACPI. Most of the drivers we are using, like Hal, ACPI, XHCI, etc. have been modded. So, your sleep state problem could be in Hal, ACPI, XHCI, or maybe even intelppm.

I don't regard this as an easy problem to solve. On a mobo, you can check voltages and watch signals on a multiple input digital oscilloscope. However, the mobo is so densely packed, with traces suddenly going through the board to the other side, it's very difficult to work live on a mobo these days. Still, if you find the Dx sleep level input signal, you could bring it out with a conductor and attach it to an LED so you could check its state visually.

Then you could trace the drivers with windbg while toggling jump conditions to see where the Dx state was being blocked. Problem is, can windbg trace through ring 0 code? With softice, I could trace through any ring 0 code but whenever I try to enter ring 0 with windbg, at a sysenter, it kicks me out the other end. I have been told you can set a BP in ring 0 and windbg will stop at the BP. I don't know. I have traced through Hal with softice but I have never seen windbg do that. If it's possible, I'd like to know how.
#4465diderius6⇗ @gordo999

This problem with plug<>unplug and then suddently disconnect belongs to XP SP2 and XP SP3.
Hm, what changed from XP SP1 is the timer. So it may be really only a timer related problem.
Via USB boot also time plays an important role. Some people from reboot.pro introduced there during boot a time loop and can boot via USB a lot more motherboards. Microsoft themselves could not solve this problem. But they think also about a timer problem.
It is not Acpi related, because the problem is the same in MPS mode (without any Acpi)
Dietmar
#4466gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #4465
Some people from reboot.pro introduced there during boot a time loop and can boot via USB a lot more motherboards.
⇗ @diderius6 ....something just occurred to me. In digital electronics, there are conditions called a debouncing, latching, or race condition problem. The concept comes from the mechanical switches. When you press a mechanical switch, the contacts tend to bounce, causing the current to turn on and off rapidly until a positive connection is made. Rapid fluctuations in the voltage can throw the digital electronics out of sync and cause it to freeze.

They use an array of transistors, or a chip, to 'debounce' the switch action. It works by absorbing the first switch impulse, then latching the voltage at 5 volts, or whatever is required, so the +5 volts can't fluctuate. In other words, the switch contacts are connected to the debouncing circuit and the output of the debouncing circuit supplies a constant voltage after being activated by the first voltage spoke caused by the switch.

In a computer program they tend to use timers to do the same thing. So maybe the timer issue you mention has something to do with the USB problem. When you hot plug a device, like inserting or removing a USB device, it acts the same as a switch bouncing. The sudden insertion or removal causes voltages to fluctuate rapidly as spikes, and that can freeze the digital circuitry associated with the USB device.

A keybord is actually an array of mechanical switches. It would not be practical to provide individual solid state debouncers for each key therefore a timer is used in the keyboard driver in conjunction with each key press. When the driver detects a key press, it starts a timer to block out any bouncing in the keyboard key for a certain time period.

I imagine the same is done with USB devices perhaps in the hub driver, or further up the chain/tree, like in Hal. Whenever a USB device is inserted or removed, that action is detected with the first voltage spike and a timer is started to mask out the device digital data till the insertion/removal voltage spikes have settled down.

Here's a good article that explains hardware and software debouncing.

⇗ https://www.allaboutcircuits.com/technic...o-deal-with-it/
#4467diderius6⇗ @gordo999

This is really a nice idea!!!
I tested the AMD driver for USB3 when I boot XP SP3 from it. As long, as you do not disconnect the USB device,
it is rock stable. I do not have a single crash.
So, there may be a chance to prolong the time period for during plug<> unplug,
have a nice day
Dietmar
#4468Mov AX, 0xDEAD
Zitat von ⇗ infuscomus im Beitrag ¶ #4452

Trying to start by getting KMDF 1.11 to load by adding them to txtsetup.sif,
wdfldr8.sys - loads fine
wdf01_w8.sys - fails to load, says "wdf01_w8.sys is corrupt"
I must've missed something - but the only dependencies I can see for wdf01_w8.sys are hal.dll ntoskrnl.exe and wdfldr8.sys


After some tests i can say - current wdfldr8.sys is not ready for setup stage. It is loader for main wdf01_w8.sys, it look at registry \Registry\Machine\System\CurrentControlSet\Services\Wdf01_w8, read key ImagePath, then call ZwLoadDriver. So txtsetup.* must create these keys before loading usbxhci.sys/usbhub3.sys. As i know in txtsetup.oem we can use external *.inf (they probably will create keys), integrating drivers to setup is puzzle, i cant help with it in any way

Another option is link usbxhci.sys/usbhub3.sys/ucx0100.sys to wdf01_w8.sys directly, no more dependies to registry and services, but this job require assembler skills
#4469infuscomus⇗ @Mov AX, 0xDEAD

I was able to get KMDF 1.9 to load the VIA USB 3.0 driver in textmode thanks to help from the driverpacks.net forum team a number of years ago, it's a painful process getting it to work.

I tried the same process that worked for KMDF 1.9 with your modded KMDF 1.11 but unfortunately no such luck this time.

oh well, at least it works normally when booted into windows, so I'm happy with that.
#4470infuscomus⇗ @Mov AX, 0xDEAD

are you going to try backporting the windows 10 USB 3.0 driver?

edit: I got past the "wdf01_w8.sys is corrupt" error in textmode by doing a realignment of the file - hopefully I can load the USB 3.0 driver in textmode now, we'll see.

 

Page 299

#4471Mov AX, 0xDEADdaniel_k found mistakes in PE headers in win8 usb3 driver, it caused loading errors in window installer

usbhub3.sys    0x350: 5442->0044, then recalc checksum
wdf01_w8.sys 0x2F8: F84A->004C, then recalc checksum

340064116b210adf78239f1c171a69a07325c601    *UCX01000.SYS
6b26c1252d7cc00e9b6e4c46ee773db03def4b90 *usbd_w8.sys
7ea99282c304a13889b092eeb9f295ce1b681094 *USBHUB3.SYS
c6d35c456e5b011603fae67472bf1a4aacf61b42 *USBXHCI.SYS
18d4788bbf520e0c2f3ef95cbdd26f03fe519670 *WDF01_W8.SYS
921913d31d9199d574d6fb77d077133002a1aff9 *WdfLdr8.sys
ab0369d23c2a03a7c7d1769713770b3415761637 *WppRecorder.sys
#4472Mov AX, 0xDEAD
Zitat von ⇗ infuscomus im Beitrag ¶ #4470
@Mov AX, 0xDEAD
are you going to try backporting the windows 10 USB 3.0 driver?


No, i do not see reason until someone found serious bug in win 8.0 version, as i know only AMD X570 boards may have troubles, but it need more investigating
#4473diderius6I tried USB boot with the nice driver from ⇗ @Mov AX, 0xDEAD .

With Windbg I can see, that all files are loaded,
only the xhci driver not.

IOINIT: Built-in driver \Driver\USBXHCI failed to initialize - C000003A

Dietmar

IOINIT: Built-in driver xxxxxx failed to initialize − 0xnnnnnnnn
The boot start driver named xxxxxx returned a failure status 0xnnnnnnnn from its DriverEntry entry point.
#4474Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #4473
I tried USB boot
IOINIT: Built-in driver \Driver\USBXHCI failed to initialize - C000003A


How to reproduce this "usb boot" ?
#4475diderius6In registry I set by hand in Services

usbstor     Group   System Reserved
               Start       0

WDF01_W8     Group   System Reserved
                     Start       0


USBHUB3      Group   Boot Bus Extender
                   Start       0

USBXHCI      Group   Boot Bus Extender
                  Start       0

I think, that WDF01_W8 has to be loaded as the very first of all.
With this settings, all files are loaded,
only USBXHCI not

Dietmar

EDIT: Before USB boot, I show the USB device to the harddisk with the registry entries above, then I put this harddisk in this USB device.

EDIT: May be, the IOINIT message can be ignored.
The main reason is BSOD 0x7B for the harddisk in the USB caddy.
#4476diderius6
Microsoft (R) Windows Debugger Version 6.12.0002.633 X86
Copyright (c) Microsoft Corporation. All rights reserved.

Opened \\.\com1
Waiting to reconnect...
Connected to Windows XP 2600 x86 compatible target at (Fri May 8 22:14:46.687 2020 (UTC + 2:00)), ptr64 FALSE
Kernel Debugger connection established.
WARNING: Inaccessible path: 'C:\WinDDK\7600.16385.1\src\openfabricsall\nvme13\nvme\objchk_wnet_x86\i386'
Symbol search path is: C:\WinDDK\7600.16385.1\src\openfabricsall\nvme13\nvme\objchk_wnet_x86\i386;SRV*c:\symbols
*⇗ http://msdl.microsoft.com/download/symbols;C:\symbols
Executable search path is: C:\localsymbols
Windows XP Kernel Version 2600 MP (1 procs) Checked x86 compatible
Built by: 2600.xpsp.080413-2133
Machine Name:
Kernel base = 0x80a02000 PsLoadedModuleList = 0x80b019e8
System Uptime: not available
WARNING: Inaccessible path: 'C:\WinDDK\7600.16385.1\src\openfabricsall\nvme13\nvme\objchk_wnet_x86\i386'
Fri May 8 22:14:48.843 2020 (UTC + 2:00): MM: Loader/HAL memory block indicates large pages cannot be used for 80100000->8012777F
Fri May 8 22:14:54.453 2020 (UTC + 2:00): MTRR feature disabled.
Fri May 8 22:14:54.453 2020 (UTC + 2:00):
Fri May 8 22:14:54.468 2020 (UTC + 2:00): KiInitializeMTRR: OS support for MTRRs disabled
Fri May 8 22:14:54.468 2020 (UTC + 2:00):
Fri May 8 22:14:54.515 2020 (UTC + 2:00): KiInitializeMTRR: OS support for MTRRs disabled
Fri May 8 22:14:54.515 2020 (UTC + 2:00):
Fri May 8 22:14:54.562 2020 (UTC + 2:00): KiInitializeMTRR: OS support for MTRRs disabled
Fri May 8 22:14:54.562 2020 (UTC + 2:00):
Fri May 8 22:14:54.609 2020 (UTC + 2:00): KiInitializeMTRR: OS support for MTRRs disabled
Fri May 8 22:14:54.609 2020 (UTC + 2:00):
Fri May 8 22:14:54.656 2020 (UTC + 2:00): KiInitializeMTRR: OS support for MTRRs disabled
Fri May 8 22:14:54.656 2020 (UTC + 2:00):
Fri May 8 22:14:54.703 2020 (UTC + 2:00): KiInitializeMTRR: OS support for MTRRs disabled
Fri May 8 22:14:54.703 2020 (UTC + 2:00):
Fri May 8 22:14:54.750 2020 (UTC + 2:00): KiInitializeMTRR: OS support for MTRRs disabled
Fri May 8 22:14:54.750 2020 (UTC + 2:00):
Fri May 8 22:14:54.796 2020 (UTC + 2:00): KiInitializeMTRR: OS support for MTRRs disabled
Fri May 8 22:14:54.796 2020 (UTC + 2:00):
Fri May 8 22:14:54.843 2020 (UTC + 2:00): KiInitializeMTRR: OS support for MTRRs disabled
Fri May 8 22:14:54.843 2020 (UTC + 2:00):
Fri May 8 22:14:54.890 2020 (UTC + 2:00): KiInitializeMTRR: OS support for MTRRs disabled
Fri May 8 22:14:54.890 2020 (UTC + 2:00):
Fri May 8 22:14:54.937 2020 (UTC + 2:00): KiInitializeMTRR: OS support for MTRRs disabled
Fri May 8 22:14:54.937 2020 (UTC + 2:00):
Fri May 8 22:14:54.984 2020 (UTC + 2:00): KiInitializeMTRR: OS support for MTRRs disabled
Fri May 8 22:14:54.984 2020 (UTC + 2:00):
Fri May 8 22:14:56.250 2020 (UTC + 2:00): IOINIT: Built-in driver \Driver\USBXHCI failed to initialize - C000003A
Fri May 8 22:14:56.250 2020 (UTC + 2:00):
Fri May 8 22:14:56.359 2020 (UTC + 2:00):

Intel Storage Driver Ver: 11.2.0.1006

Fri May 8 22:14:56.359 2020 (UTC + 2:00):
Fri May 8 22:14:59.437 2020 (UTC + 2:00):
*** Fatal System Error: 0x0000007b
(0xB84C7518,0xC0000034,0x00000000,0x00000000)

Fri May 8 22:14:59.484 2020 (UTC + 2:00): Break instruction exception - code 80000003 (first chance)

A fatal system error has occurred.
Debugger entered on first try; Bugcheck callbacks have not been invoked.

A fatal system error has occurred.

Connected to Windows XP 2600 x86 compatible target at (Fri May 8 22:14:59.625 2020 (UTC + 2:00)), ptr64 FALSE
Loading Kernel Symbols
...................................
Loading User Symbols

Loading unloaded module list
.
*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

Use !analyze -v to get detailed debugging information.

BugCheck 7B, {b84c7518, c0000034, 0, 0}

Probably caused by : ntkrpamp.exe ( nt!IopMarkBootPartition+f5 )

Followup: MachineOwner
---------

nt!RtlpBreakWithStatusInstruction:
80ac37ec cc int 3
0: kd> !analyze -v
*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

INACCESSIBLE_BOOT_DEVICE (7b)
During the initialization of the I/O system, it is possible that the driver
for the boot device failed to initialize the device that the system is
attempting to boot from, or it is possible for the file system that is
supposed to read that device to either fail its initialization or to simply
not recognize the data on the boot device as a file system structure that
it recognizes. In the former case, the argument (#1) is the address of a
Unicode string data structure that is the ARC name of the device from which
the boot was being attempted. In the latter case, the argument (#1) is the
address of the device object that could not be mounted.
If this is the initial setup of the system, then this error can occur if
the system was installed on an unsupported disk or SCSI controller. Note
that some controllers are supported only by drivers which are in the Windows
Driver Library (WDL) which requires the user to do a custom install. See
the Windows Driver Library for more information.
This error can also be caused by the installation of a new SCSI adapter or
disk controller or repartitioning the disk with the system partition. If
this is the case, on x86 systems the boot.ini file must be edited or on ARC
systems setup must be run. See the "Advanced Server System Administrator's
User Guide" for information on changing boot.ini.
If the argument is a pointer to an ARC name string, then the format of the
first two (and in this case only) longwords will be:
USHORT Length;
USHORT MaximumLength;
PWSTR Buffer;
That is, the first longword will contain something like 00800020 where 20
is the actual length of the Unicode string, and the next longword will
contain the address of buffer. This address will be in system space, so
the high order bit will be set.
If the argument is a pointer to a device object, then the format of the first
word will be:
USHORT Type;
That is, the first word will contain a 0003, where the Type code will ALWAYS
be 0003.
Note that this makes it immediately obvious whether the argument is a pointer
to an ARC name string or a device object, since a Unicode string can never
have an odd number of bytes, and a device object will always have a Type
code of 3.
Arguments:
Arg1: b84c7518, Pointer to the device object or Unicode string of ARC name
Arg2: c0000034
Arg3: 00000000
Arg4: 00000000

Debugging Details:
------------------


DEFAULT_BUCKET_ID: DRIVER_FAULT

BUGCHECK_STR: 0x7B

PROCESS_NAME: System

LAST_CONTROL_TRANSFER: from 80a30d7b to 80ac37ec

STACK_TEXT:
b84c7080 80a30d7b 00000003 b84c73dc 00000000 nt!RtlpBreakWithStatusInstruction
b84c70cc 80a319e6 00000003 80085000 e2b94408 nt!KiBugCheckDebugBreak+0x19
b84c74ac 80a31f77 0000007b b84c7518 c0000034 nt!KeBugCheck2+0x574
b84c74cc 80d32863 0000007b b84c7518 c0000034 nt!KeBugCheckEx+0x1b
b84c7634 80d380f6 80085000 00000000 80085000 nt!IopMarkBootPartition+0xf5
b84c7684 80d341f1 80085000 b84c76a0 00034000 nt!IopInitializeBootDrivers+0x53e
b84c7830 80d31940 80085000 00000000 8bcdcda8 nt!IoInitSystem+0x82d
b84c7dac 80bd81ac 80085000 00000000 00000000 nt!Phase1Initialization+0xb12
b84c7ddc 80ae4212 80d30e2e 80085000 00000000 nt!PspSystemThreadStartup+0x34
00000000 00000000 00000000 00000000 00000000 nt!KiThreadStartup+0x16


STACK_COMMAND: kb

FOLLOWUP_IP:
nt!IopMarkBootPartition+f5
80d32863 8d85e0feffff lea eax,[ebp-120h]

SYMBOL_STACK_INDEX: 4

SYMBOL_NAME: nt!IopMarkBootPartition+f5

FOLLOWUP_NAME: MachineOwner

MODULE_NAME: nt

IMAGE_NAME: ntkrpamp.exe

DEBUG_FLR_IMAGE_TIMESTAMP: 4802b3ce

FAILURE_BUCKET_ID: 0x7B_nt!IopMarkBootPartition+f5

BUCKET_ID: 0x7B_nt!IopMarkBootPartition+f5

Followup: MachineOwner
---------

#4477diderius6With this settings in Registry
I get all drivers initialised and started,
but still 0x7B BSOD.

usbstor Group System Reserved
Start 0

WDF01_W8 Group System Reserved
Start 0


USBHUB3 Group System Reserved
Start 1

USBXHCI Group System Reserved
Start 1



Dietmar
#4478diderius6Because txtsetup.oem works ( ⇗ @daniel_k ) for the nice Win8 to XP SP3 USB3 driver,
I try tomorrow an entry
USB\Class_08&SubClass_06&Prot_62
into
CriticalDeviceDatabase of XP SP3

Dietmar
#4479infuscomus
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #4472
only AMD X570 boards may have troubles


what kinds of troubles? nothing too serious I hope?
#4480diderius6⇗ @infuscomus
I test a lot of boards.
On all, the nice new USB3 driver from ⇗ @Mov AX, 0xDEAD ported from Win8 to XP SP3 works.
Only on the x570 board on half of the ports.
There are reports from Win10 on those USB3 slots of problems for the x570 boards.
I take a deeper look what is going on there.
When you install the new USB3 driver there new, all is ok.
But on next reboot it is gone, "unknown device",
brrr..
Dietmar

PS: May be that this can be overcome with an extra entry in CriticalDeviceDataBase. This I try today, first for USB boot.

EDIT: In this night ⇗ @daniel_k succeeds to integrate the KMDF driver in the XP Setup CD.
I want to do USB boot with it, the problem in this is, that nowhere it is described, how to set up a boot device with KMDF.
#4481diderius6First I try now


Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\CriticalDeviceDatabase]

[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\CriticalDeviceDatabase\usb#Class_08&SubClass_06&Prot_50]
"ClassGUID"="{36FC9E60-C465-11CF-8056-444553540000}"
"Service"="USBSTOR"



Dietmar
#4482diderius6Now together with next one

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\CriticalDeviceDatabase]


[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\CriticalDeviceDatabase\pci#cc_0c0330]
"ClassGUID"="{36FC9E60-C465-11CF-8056-444553540000}"
"Service"="usbxhci"

Dietmar
#4483diderius6And together with next one

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\CriticalDeviceDatabase]

[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\CriticalDeviceDatabase\usb#root_hub30]
"ClassGUID"="{36FC9E60-C465-11CF-8056-444553540000}"
"Service"="usbhub3"
#4484diderius6And with this one


Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\CriticalDeviceDatabase]

[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\CriticalDeviceDatabase\usb#vid_174C&pid_1153]
"ClassGUID"="{36FC9E60-C465-11CF-8056-444553540000}"
"Service"="USBSTOR"
#4485diderius6And the last one

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\CriticalDeviceDatabase]


[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\CriticalDeviceDatabase\usbstor#DiskASMT____2115____________0___]
"ClassGUID"="{4D36E967-E325-11CE-BFC1-08002BE10318}"
"Service"="disk"

 

Page 300

#4486diderius6May be, that the KMDF also needs an entry in CriticalDeviceDatabase
but I found nothing about boot device for this.

It should look something like

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\CriticalDeviceDatabase]

[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\CriticalDeviceDatabase\root#LEGACY_WDF01_W8]
"ClassGUID"="{8ECC055D-047F-11D1-A537-0000F8753ED1}"
"Service"="WDF01_W8"

Dietmar
#4487diderius6YESSSSSSSSSSSSSSSSSSSSSSSSSAAAAAAAAAAAAAAAAAAAAA:::))999)))))))))))))))))))))))):)))))

I got it

Boot XP SP3 from USB with the nice USB3 driver from ⇗ @Mov AX, 0xDEAD

Dietmar

#4488diderius6How I reach this?
⇗ @daniel_k gives me the tip, that I just forget UCX01000.SYS.
This is really crazy, because this driver has no dependencies to xhci and usbhub3.
I make an easy test: I renamed UCX01000.SYS to UuuCX01000.SYS
and restart the compi. Oh, no USB device was recogniced any longer.

The rest was easy. Because of years with USB booting for XP, I get a feeling, what may work and what not.

I make a 7. entry in CriticalDeviceDatabase

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\CriticalDeviceDatabase]

[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\CriticalDeviceDatabase\root#LEGACY_UCX01000]
"ClassGUID"="{8ECC055D-047F-11D1-A537-0000F8753ED1}"
"Service"="UCX01000"

and then I set in HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\

WDF01_W8 Group System Reserved    start 0
UCX01000  Group Boot Bus Extender   start 0
USBSTOR   Group Boot Bus Extender   start 0
USBXHCI   Group Boot Bus Extender   start 0
USBHUB3  Group Boot Bus Extender   start 0

It is stable
Dietmar
#4489usa1ec
Zitat
gives me the tip, that I just forget UCX01000.SYS.
This is really crazy, because this driver has no dependencies to xhci and usbhub3.
I make an easy test: I renamed UCX01000.SYS to UuuCX01000.SYS
and restart the compi. Oh, no USB device was recogniced any longer.

The rest was easy. Because of years with USB booting for XP, I get a feeling, what may work and what not.



Where can I download this USB driver.
Please give a URL?

#4490skullteria
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #4472
Zitat von ⇗ infuscomus im Beitrag ¶ #4470
@Mov AX, 0xDEAD
are you going to try backporting the windows 10 USB 3.0 driver?


No, i do not see reason until someone found serious bug in win 8.0 version, as i know only AMD X570 boards may have troubles, but it need more investigating


Hey man, can you made this port for x64?
#4491Mov AX, 0xDEAD
Zitat von ⇗ skullteria im Beitrag ¶ #4490
can you made this port for x64?

No, x64 for me is not funny as x32, i dont plan do anything for these OSes
#4492infuscomus⇗ @diderius6

I've been trying to get the USB 3.0 driver to start for GUI phase of setup (before the EULA) using a VM

I'm not having any luck so far

I added these to hivesys.inf

HKLM,"SYSTEM\CurrentControlSet\Services\wdfldr8","ErrorControl",0x00010003,0
HKLM,"SYSTEM\CurrentControlSet\Services\wdfldr8","Group",0x00000000,"System Reserved"
HKLM,"SYSTEM\CurrentControlSet\Services\wdfldr8","ImagePath",0x00020000,"\SystemRoot\System32\drivers\wdfldr.sys"
HKLM,"SYSTEM\CurrentControlSet\Services\wdfldr8","Start",0x00010001,1
HKLM,"SYSTEM\CurrentControlSet\Services\wdfldr8","Tag",0x00010001,1
HKLM,"SYSTEM\CurrentControlSet\Services\wdfldr8","Type",0x00010001,1
HKLM,"SYSTEM\CurrentControlSet\Services\wdf01_w8","ErrorControl",0x00010003,0
HKLM,"SYSTEM\CurrentControlSet\Services\wdf01_w8","Group",0x00000000,"System Reserved"
HKLM,"SYSTEM\CurrentControlSet\Services\wdf01_w8","ImagePath",0x00020000,"\SystemRoot\System32\drivers\wdf01_w8.sys"
HKLM,"SYSTEM\CurrentControlSet\Services\wdf01_w8","Start",0x00010001,1
HKLM,"SYSTEM\CurrentControlSet\Services\wdf01_w8","Tag",0x00010001,1
HKLM,"SYSTEM\CurrentControlSet\Services\wdf01_w8","Type",0x00010001,1
HKLM,"SYSTEM\CurrentControlSet\Services\ucx01000","ErrorControl",0x00010003,0
HKLM,"SYSTEM\CurrentControlSet\Services\ucx01000","Group",0x00000000,"Boot Bus Extender"
HKLM,"SYSTEM\CurrentControlSet\Services\ucx01000","ImagePath",0x00020000,"\SystemRoot\System32\drivers\ucx01000.sys"
HKLM,"SYSTEM\CurrentControlSet\Services\ucx01000","Start",0x00010001,1
HKLM,"SYSTEM\CurrentControlSet\Services\ucx01000","Tag",0x00010001,1
HKLM,"SYSTEM\CurrentControlSet\Services\ucx01000","Type",0x00010001,1
HKLM,"SYSTEM\CurrentControlSet\Services\usbxhci","ErrorControl",0x00010003,0
HKLM,"SYSTEM\CurrentControlSet\Services\usbxhci","Group",0x00000000,"Boot Bus Extender"
HKLM,"SYSTEM\CurrentControlSet\Services\usbxhci","ImagePath",0x00020000,"\SystemRoot\System32\drivers\usbxhci.sys"
HKLM,"SYSTEM\CurrentControlSet\Services\usbxhci","Start",0x00010001,1
HKLM,"SYSTEM\CurrentControlSet\Services\usbxhci","Tag",0x00010001,1
HKLM,"SYSTEM\CurrentControlSet\Services\usbxhci","Type",0x00010001,1
HKLM,"SYSTEM\CurrentControlSet\Services\usbhub3","ErrorControl",0x00010003,0
HKLM,"SYSTEM\CurrentControlSet\Services\usbhub3","Group",0x00000000,"Boot Bus Extender"
HKLM,"SYSTEM\CurrentControlSet\Services\usbhub3","ImagePath",0x00020000,"\SystemRoot\System32\drivers\usbhub3.sys"
HKLM,"SYSTEM\CurrentControlSet\Services\usbhub3","Start",0x00010001,1
HKLM,"SYSTEM\CurrentControlSet\Services\usbhub3","Tag",0x00010001,1
HKLM,"SYSTEM\CurrentControlSet\Services\usbhub3","Type",0x00010001,1


all the necessary files are in c:\windows\system32\drivers

on restart i check in regedit

in HKLM\SYSTEM\CurrentControlSet\Services\usbxhci under Enum I see INITSTARTFAILED

in HKLM\SYSTEM\CurrentControlSet\Services\ucx01000 has no enumeration

in HKLM\SYSTEM\CurrentControlSet\Services\usbhub3 has no enumeration

in HKLM\SYSTEM\CurrentControlSet\Services\wdfldr8 under Enum I see count 1

in HKLM\SYSTEM\CurrentControlSet\Services\wdf01_w8 under Enum I see count 1


any ideas?
#4493diderius6I just installed via the original english setup CD with mod from ⇗ @daniel_k XP SP3.
The very last version of acpi.sys vers.5048 does NOT work.
Only the very last version from acpi.sys from outer space )
helps.
All USB works from the beginning, meaning you have USB mouse!
Also the Asmedia ports have now the nice USB3 driver from ⇗ @Mov AX, 0xDEAD .
During make of this CD crazy things happen:
First I use Nlite. Even I make a binary check between 2 CDs and they are 100% identic(!!!)
the CD build with Nlite fails with error "UCX01000.SYS cant be found". This means, Nlite makes an error in the structure of the *.iso, brrr.. From this moment I use only the original *.iso file and work on this file direct with Ultra Iso.
And also very important is to use an original CD. When you use a CD with update package,
the warning about not signed drivers is not shown and so it fails. I think, this can be overcome on CD,
with a setup answer file, always to answer the question for to allow unsigned drivers with "YES",
Dietmar

PS: Thank you soso much ⇗ @daniel_k !!!

#4494Mov AX, 0xDEADTo auto-install required usbd.sys(usbstor need it) add little magic to USBXHCI.inf:
[GenericHub.Install.NT]
...
Include=usbport.inf
Needs=ROOTHUB.Dev.NT
#4495skullteria
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #4491
Zitat von ⇗ skullteria im Beitrag ¶ #4490
can you made this port for x64?

No, x64 for me is not funny as x32, i dont plan do anything for these OSes


Well, you can make as favor, because i want integrate on Shorthorn Project Native driver.
#4496Mov AX, 0xDEAD
Zitat von ⇗ skullteria im Beitrag ¶ #4495
Well, you can make as favor, because i want integrate on Shorthorn Project Native driver.

Hi skullteria

x64 is not important for me, so again No

You can backport yourself most drivers from win7/8/10 to xp/2003 if you know 386/x64 asm well, some times this is hard job, but most time it's boring job
You need replace missing import from *.sys files to selfmade equvalents, usualy replacing is easy if function is not important :
 
xor eax, eax
ret 4/8/10/...


Sometimes you will need more smart replace like IoConnectinterruptEx()->IoConnectinterrupt()

Not all drivers will works after, because new kernels contain new logic/frameworks/size of structs/enums/etc

#4497canonkong⇗ @Mov AX, 0xDEAD
What about the USB ,ACPI, VGA drivers from win8.1/10 to WIN7?
#4498diderius6I do more tests with the nice setup CD for XP SP3 from ⇗ @daniel_k with the fantastic USB3 driver from ⇗ @Mov AX, 0xDEAD .
Whole install works for me only with the acpi.sys from outer space ). I use normal CD disk (best) and also USB install via firadisk.
The results where the same.
But now, when all is ready, I can also use the acpi.sys vers. 5048 (very last version).
On this board I build my very first working acpi.sys driver in December 2018.
This acpi.sys driver (only at 3 places changed against original) gives now BSOD 0x7B.
And I cant do USB boot with this installation on the same board. May be this is because of the changed iastor.sys driver
Dietmar

EDIT: I try the Setup CD on the crazy AMD x570 board. But only the USB devices are shown as bootable device.
So for AMD only the STORAHCI driver works.
#4499infuscomus⇗ @diderius6

did you try daniel_k's modded AMD 1.2.1.402 driver?
#4500diderius6⇗ @infuscomus

Is this modded AMD 1.2.1.402 for harddisk or for USB
Dietmar

PS: I do not find this driver.

 

Page 301

#4501infuscomus⇗ @diderius6

it's an AHCI driver - I'll PM you
#4502diderius6With help from ⇗ @daniel_k I build a new generic Setup CD for XP SP3.
I have full USB from the beginning, thanks to nice driver from ⇗ @Mov AX, 0xDEAD .
This time I copy by hand file by file direct to the *.iso via Ultra Iso.
Now it uses the STORAHCI driver from ⇗ @skullteria which is the only harddisk sata driver,
that works on every motherboard, AMD or Intel.
Now I am just installing, until now everything is ok
Dietmar

PS: This is onyl one step away from a brandnew, really generic XP SP3, also with USB3 boot.
From feeling and testing the new installation I would say: This Setup CD is best of all, what we have ever seen for XP SP3.

1. Asrock Fatal1ty Z370 Gaming K6 (Intel)   stable, fast, everything works at once.
2. ASUS Prime X570-PRO (AMD) fails install BSOD 0x00000096, when you use the installation from 1, now all(!) USB ports work.
   This stop error 0x00000096 is caused by incompatibility of any of the hardware devices.
   INVALID_WORK_QUEUE_ITEM

This means for a future generic Setup of XP SP3, that we need to find a mechanism, to do Setup only with the most necessary drivers. An other way would be, to integrate more drivers in the Setup CD. This error 0x96 happens, when a driver was first
recogniced, then deleted and then again deleted, because wrong recogniced.
#4503Outbreaker⇗ @diderius6
What entries did you use for the Generic USB 3.0 driver in the file DOSNET.INF, TXTSETUP.SIF and SETUPREG.HIV?
#4504diderius6⇗ @Outbreaker

I am not good in building setup CDs. Until yesterday I believe in Nlite, now not.
So, you should ask ⇗ @daniel_k via message or ⇗ @infuscomus

Dietmar
#4505Outbreaker⇗ @diderius6
Ahh okay, I thought you figured out how to use this USB 3.0 driver in the Windows XP Blue Text mode setup.
#4506skullteria
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #4496
Zitat von ⇗ skullteria im Beitrag ¶ #4495
Well, you can make as favor, because i want integrate on Shorthorn Project Native driver.

Hi skullteria

x64 is not important for me, so again No

You can backport yourself most drivers from win7/8/10 to xp/2003 if you know 386/x64 asm well, some times this is hard job, but most time it's boring job
You need replace missing import from *.sys files to selfmade equvalents, usualy replacing is easy if function is not important :
 
xor eax, eax
ret 4/8/10/...


Sometimes you will need more smart replace like IoConnectinterruptEx()->IoConnectinterrupt()

Not all drivers will works after, because new kernels contain new logic/frameworks/size of structs/enums/etc




OK! I will get my way, how ever
#4507Outbreaker⇗ @Mov AX, 0xDEAD and Others
How would you do this to get this new USB 3.0 driver to work on the Text mode setup and GUI mode Setup?

 
<- "\i386\DOSNET.INF" File Entries ->

[Directories]
d1212 = "\i386\USB30DRV"

[OptionalSrcDirs]
USB30DRV

[FloppyFiles.2]
d1,usbxhci.sys
d1,ucx01000.sys
d1,usbhub3.sys
d1,WDF01_W8.sys
d1,usbd_w8.sys
d1,WppRecor.sys
d1,WdfLdr8.sy

[Files]
d1212,usbxhci.inf
d1212,usbxhci.sys
d1212,ucx01000.sys
d1212,usbhub3.sys
d1212,WDF01_W8.sys
d1212,usbd_w8.sys
d1212,WppRecor.sys
d1212,WdfLdr8.sys


<- "\i386\TXTSETUP.SIF" File Entries ->

[SourceDisksNames.x86]
"1212 = %%cdname%%,%%cdtagfilei%%,,"\i386\USB30DRV"

[WinntDirectories]
1212 = USB30DRV

[SourceDisksFiles.x86]
usbxhci.sys = 1,,,,,,4_,4,1,,,1,4
ucx01000.sys = 1,,,,,,4_,4,1,,,1,4
usbhub3.sys = 1,,,,,,4_,4,1,,,1,4
WDF01_W8.sys = 1,,,,,,4_,4,1,,,1,4
usbd_w8.sys = 1,,,,,,4_,4,1,,,1,4
WppRecor.sys = 1,,,,,,4_,4,1,,,1,4
WdfLdr8.sys = 1,,,,,,4_,4,1,,,1,4
usbxhci.inf = 1212,,,,,,,1212,0,0
usbxhci.sys = 1212,,,,,,,1212,0,0
ucx01000.sys = 1212,,,,,,,1212,0,0
usbhub3.sys = 1212,,,,,,,1212,0,0
WDF01_W8.sys = 1212,,,,,,,1212,0,0
usbd_w8.sys = 1212,,,,,,,1212,0,0
WppRecor.sys = 1212,,,,,,,1212,0,0
WdfLdr8.sys = 1212,,,,,,,1212,0,0

[HardwareIdsDatabase]
PCI\CC_0C0330 = "usbxhci"
USB\ROOT_HUB30 = "usbhub3"

[SCSI.Load]
usbxhci = usbxhci.sys,4
usbhub3 = usbhub3.sys,4

[BusExtenders.Load]
WDF01_W8 = WDF01_W8.sys
WdfLdr8 = WdfLdr8.sys

[InputDevicesSupport.Load]
usbxhci = usbxhci.sys
ucx01000 = ucx01000.sys
usbhub3 = usbhub3.sys
usbd_w8 = usbd_w8.sys
WppRecor = WppRecor.sys

[files.usbxhci]
hid.dll,2
hidclass.sys,4
hidparse.sys,4
usbd.sys,4
usbport.sys,4
usbxhci.sys,4
ucx01000.sys,4
WDF01_W8.sys,4
usbd_w8.sys,4
WppRecor.sys,4
WdfLdr8.sys,4

[files.ucx01000]
ucx01000.sys,4

[files.usbhub3]
usbhub3.sys,4

[files.WDF01_W8]
WDF01_W8.sys,4

[files.usbd_w8]
usbd_w8.sys,4

[files.WppRecor]
WppRecor.sys,4

[files.WdfLdr8]
WdfLdr8.sys,4

[FileFlags]
usbxhci.sys =16
ucx01000.sys =16
usbhub3.sys =16
WDF01_W8.sys =16
usbd_w8.sys =16
WppRecor.sys =16
WdfLdr8.sys =16

[InputDevicesSupport]
usbxhci = "USB 3.0 Host Controller",files.usbxhci,usbxhci
ucx01000 = "USB Controller Extension",files.ucx01000,ucx01000
usbhub3 = "USB 3.0 Hub Driver",files.usbhub3,usbhub3
usbd_w8 = "Universal Serial Bus Driver",files.usbd_w8,usbd_w8
WppRecor = "WPP Trace Recorder",files.WppRecor,WppRecor

[SCSI]
usbxhci = "USB 3.0 Host Controller"
ucx01000 = "USB Controller Extension"
usbhub3 = "USB 3.0 Host Controller"
usbd_w8 = "Universal Serial Bus Driver"
WppRecor = "WPP Trace Recorder"

[BusExtenders]
WDF01_W8 = "Kernel Mode Driver Framework Runtime",files.WDF01_W8,WDF01_W8
WppRecor = "WPP Trace Recorder",files.WppRecor,WppRecor
WdfLdr8 = "Kernel Mode Driver Framework Loader",files.WdfLdr8,WdfLdr8


<- "\i386\SETUPREG.HIV" File Entries ->

ControlSet001\Services\usbxhci", "group", 0x00000000, "Input Device Support"
ControlSet001\Services\usbxhci", "tag", 0x00010001, "4"
ControlSet001\Services\ucx01000", "group", 0x00000000, "Input Device Support"
ControlSet001\Services\ucx01000", "tag", 0x00010001, "5"
ControlSet001\Services\usbhub3", "group", 0x00000000, "Input Device Support"
ControlSet001\Services\usbhub3", "tag", 0x00010001, "5"
ControlSet001\Services\WDF01_W8", "group", 0x00000000, "WdfLoadGroup"
ControlSet001\Services\WDF01_W8", "tag", 0x00010001, "2"
ControlSet001\Services\WppRecor", "group", 0x00000000, "Input Device Support"
ControlSet001\Services\WppRecor", "tag", 0x00010001, "5"
ControlSet001\Services\WdfLdr8", "group", 0x00000000 "WdfLoadGroup"
ControlSet001\Services\WdfLdr8", "tag", 0x00010001, "1"
#4508Mov AX, 0xDEADHi,

I've got alpha/not_tested version of USB Attached SCSI (UAS) Mass Storage driver as companion to win8 usb 3.0 driver (also storport.sys backported from win8.0):
- speed is increased 170Mb/s -> 250Mb/s on external usb ssd drive
- yet does not work on Windows Setup + storahci.sys
- bsod at shutdown, in progress...
#4509canonkong@Mov AX, 0xDEAD
Its possible to make the ACPI from win8 to Xp or win7? Like some new platforms dont have fully support ACPI and will A5 BSOD, I tried to do that but fail.
#4510Mov AX, 0xDEAD
Zitat von ⇗ canonkong im Beitrag ¶ #4509
@Mov AX, 0xDEAD
Its possible to make the ACPI from win8 to Xp or win7?


i think possible fix missing imports in acpi.sys, but this "Frankenstein" will be work ? - nobody knows.
acpi.sys is not "device" driver, it is companion to kernel/pci/hal/???
#4511diderius6acpi.sys from Win7 will be not enough.
I have a crazy notebook,
where the first OS you can install with full acpi support is win8,
even I tried a lot
Dietmar

PS: Other option is to change there nearly whole Bios to an XP friendly version.

EDIT: I am going to write a Tutorial with the nice USB3 driver from @Mov AX, 0xDEAD for USB boot.
Oha, it is more difficult to make this generic, than I thought. But when you succeed it is stable!
#4512Dibyabest option is to patch existing ACPI driver  of XP to detect ACPI 2.0 .
I found ACPI sys from longhorn / Vista Beta is making certain IRQL function to fail in XP .

⇗ https://msfn.org/board/topic/176480-2-ti...comment-1135845
Actually i found disk.sys is responsible for GPT long back
#4513Outbreaker⇗ @Mov AX, 0xDEAD
I got the USB boot fully working, but the USB 3.0 driver files will no play nicely with the "Joliet" file system format and will lead to a file not found error.
#4514infuscomus⇗ @Outbreaker

you also mentioned there is a conflict with the kmdf files being named wdfldr8.sys and wdf01_w8.sys?

⇗ @Mov AX, 0xDEAD
#4515Outbreaker⇗ @infuscomus
⇗ @Mov AX, 0xDEAD
Yes the question is, if a Windows XP ISO has already the Driver Frameworks 1.9 integrated should we overwrite the exiting "wdf01000.sys" and "wdfldr.sys" file with  the USB 3.0 driver files "wdfldr8.sys" and "wdf01_w8.sys" or integrated them both together.

 

Page 302

#4516Mov AX, 0xDEAD
Zitat von ⇗ Outbreaker im Beitrag ¶ #4513
@Mov AX, 0xDEAD
I got the USB boot fully working, but the USB 3.0 driver files will no play nicely with the "Joliet" file system format and will lead to a file not found error.

you can rename files as you wish, even to pure "DOS 8.3 ALL_IN_CAPS", but remember about cross links, if you change WppRecorder.sys->WPPREC.SYS you need update remain *.sys because name of this file hardcoded inside *.sys (also dont forget about checksum!)
#4517infuscomus⇗ @Mov AX, 0xDEAD

would updating the import table to point to wpprecor.sys be enough? or would more edits be needed?
#4518Mov AX, 0xDEAD
Zitat von ⇗ Outbreaker im Beitrag ¶ #4515

Yes the question is, if a Windows XP ISO has already the Driver Frameworks 1.9 integrated should we overwrite the exiting "wdf01000.sys" and "wdfldr.sys" file with  the USB 3.0 wdfldr8.sys and wdf01_w8.sys file or integrated them both together.

I prefer separate ways, so backported "beta" wdf 1.11 will never interference with "original bugfree" wdf 1.7/1.9
All existing  XP vendor drivers will still use wdf 1.7/1.9, only usb 3.0 driver will use wdf 1.11

I saw another version of driver, in it wdf 1.11 become full replacement of wdf 1.x
#4519Mov AX, 0xDEAD
Zitat von ⇗ infuscomus im Beitrag ¶ #4517
@Mov AX, 0xDEAD
would updating the import table to point to wpprecor.sys be enough? or would more edits be needed?

yes, this is enough, only import name matter
#4520Outbreaker⇗ @Mov AX, 0xDEAD
Can you send me a USB 3.0 driver version with the file name "wdfldr8.sys", "wdf01_w8.sys" and "wpprecor.sys" for integration disc? Then i can test the "Joliet" file system format and also the boot compatibility with the Driver Frameworks 1.9.
#4521Mov AX, 0xDEAD
Zitat von ⇗ Outbreaker im Beitrag ¶ #4520
@Mov AX, 0xDEAD
Can you send me a USB 3.0 driver version with the file name "wdfldr8.sys", "wdf01_w8.sys" and "wpprecor.sys"? Then i can test the "Joliet" file system format and also the boot compatibility with Driver Frameworks 1.9.

I can't, do it yourself, it's not hard, you need any hex editor and any checksum fixer. Or ask someone other
#4522Outbreaker⇗ @Mov AX, 0xDEAD
I can do it myself, but i think it wouldn't be a good idea to have X different versions flying around the internet.  I have even 2 different .inf files and don't even know which one is the original.
#4523diderius6Here are the minimal settings for USB3 boot with the nice driver from  ⇗ @Mov AX, 0xDEAD .
I prepared them from an brandnew XP SP3 install.
My problem in this is, I do not know, why they work and a brandnew installation, without this prepare, alone not
Dietmar

PS: Now I think, there is a hierarchy in XP: ENUM comes before CriticalDeviceDatabase.



diderius6 has attached files to this post
#4524canonkong⇗ @Mov AX, 0xDEAD
I think I had not fully fix the missing imports in acpi.sys, so it can not work. Maybe we can have a try and test.
#4525gordo999
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #4510
acpi.sys is not "device" driver, it is companion to kernel/pci/hal/???

⇗ @Mov AX, 0xDEAD ...you may know this already but from my understanding acpi.sys is the driver above PCI.sys. In the USB chain, PCI.sys is above XHCI.sys, and the hub driver.

ACPI.sys is between the system and the BIOS and it controls power management and Plug&Play device enumeration at boot.

⇗ https://docs.microsoft.com/en-us/windows-hardware/drivers/kernel/acpi-driver

Also, see this page on debugging ACPI:

⇗ https://docs.microsoft.com/en-ca/windows-hardware/drivers/debugger/introduction-to-the-amli-debugger
#4526gordo999
Zitat von ⇗ canonkong im Beitrag ¶ #4524
@Mov AX, 0xDEAD
I think I had not fully fix the missing imports in acpi.sys, so it can not work. Maybe we can have a try and test.
⇗ @canonkong ...I am trying to set up a serial kernel mode debugging session between a W7 host and XP as target on COM2. I'd like to trace the code in acpi.sys, and other drivers, but right now i cannot get a serial port connection from host to target.

I have verified that the serial ports are talking to each other both ways using hyperterminal and a serial communication application. I suspect there could be a problem with kdcom.dll which is loaded early at boot time to enable remote serial communication. It could be that a mod to hal or acpi.sys is blocking the communication between kdcom.dll and the system.

I'm using a mobo with a B360 chipset and an i5-8400 processor.
#4527Mov AX, 0xDEAD
Zitat von ⇗ gordo999 im Beitrag ¶ #4525

ACPI.sys is between the system and the BIOS and it controls power management and Plug&Play device enumeration at boot.


MS did not tell full true )
Even some requests to usb driver go through acpi.sys, is saw this in callstack, so acpi is more than seems at first sight.
In "noacpi" hal.dll exist another way to passing requests, but i never used it
#4528Mov AX, 0xDEAD
Zitat von ⇗ gordo999 im Beitrag ¶ #4526
I am trying to set up a serial kernel mode debugging session between a W7 host and XP as target on COM2. I'd like to trace the code in acpi.sys, and other drivers, but right now i cannot get a serial port connection from host to target.


- W7 & XP is cross compatible for kernel debugging, i think problem with com cables/ports, even if you see repeating chars in hyperterminal, for kernel debugging need 100% quality connection
- Debugging with COM is Pain&Tears because incredible slow speed. COM is still good if you just want get crashdump. Comfortable debuging require much more speed connections
#4529usa1ec
Zitat
Here are the minimal settings for USB3 boot with the nice driver .......



Where can I download the full version of this nice driver?
Please URL.

#4530infuscomus⇗ @Outbreaker ⇗ @diderius6

outbreaker, do you think you could make your integrator script make a live bootable USB install of XP?
by this I mean, install XP to a USB drive and not get a 7B BSOD later

diderius6 did manage to get it working - i think change the load order of usbstor.inf to boot bus extender?

some registry files here -
¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (302)

P.S
I got a wdfldr.sys BSOD trying to make KMDF 1.9 and 1.11 coexist on an XP CD.
I'm not saying it's impossible, just challenging to get working.

 

Page 303

#4531gordo999
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #4527
MS did not tell full true )Even some requests to usb driver go through acpi.sys, is saw this in callstack, so acpi is more than seems at first sight.
⇗ @Mov AX, 0xDEAD  ...I agree. The USB call stack is: ACPI....PCI...XHCI....USBHUB....device.

Look at it from a hardware view. Each sleep state is controlled by a different voltage controller on the motherboard (mosfets). Each voltage control stage needs a signal from the operating system to tell it to turn off or turn on. ACPI sends control signals via Hal to each circuit or device that needs to 'sleep'. So ACPI takes sleep state signals from the operating system and passes them to the circuits and devices. Therefore, the acpi driver has to be located between the operating system and the hardware devices, including the processor, the busses, like PCI, clocks, etc.

ACPI also enumerates each device through the PCI driver during boot. It tells pci.sys to enumerate each tree on the PCI buss. In the ENUM registry key in HKLM\Services there is driver information for each device. If you use windbg and the .load usb3kd.dll extension using .load usb3kd.dll in Win 7, you can follow the USB 3 tree from the hub through to acpi. I have done this with USB 3 but I'm not sure how well it works in XP.

For USB 3:

⇗ https://docs.microsoft.com/en-us/windows-hardware/drivers/debugger/usb-3-extensions

For USB 2:

⇗ https://docs.microsoft.com/en-us/windows-hardware/drivers/debugger/usb-2-0-extensions

I use !devnode 0 1 and !devobj to trace through the tree. By entering the parent object it will take you to the next highest object in the tree and you should get to acpi.sys at the top.

You are from Tashkent. Do you speak Uzbek or Russian? I translated part of this message into Uzbek. Does that make sense?

Siz Toshkent shahridansiz. Siz o'zbek yoki rus tillarida gaplashasizmi? Men ushbu xabarning bir qismini o'zbek tiliga tarjima qildim. Bu mantiqiymi?

Unga apparat ko'rinishidan qarang. Har bir uyqu holati anakartdagi (mosfetlarda) boshqa kuchlanish boshqaruvchisi tomonidan boshqariladi. Kuchlanishni boshqarishning har bir bosqichida operatsion tizimdan uni o'chirish yoki yoqish kerakligi haqida signal kerak. ACPI "uyqu" ga muhtoj bo'lgan har bir kontaktlarga yoki qurilmaga nazorat signallarini Hal orqali yuboradi. Shunday qilib ACPI operatsion tizimdan uyqu holatidagi signallarni oladi va ularni kontaktlarning zanglashiga olib boradigan qurilmalar va qurilmalarga uzatadi. Shuning uchun, Acpi drayveri operatsion tizim va qo'shimcha qurilmalar, shu jumladan PCI, soatlar va hk kabi protsessor, avtobuslar o'rtasida joylashgan bo'lishi kerak.

ACPI shuningdek, yuklash paytida PCI drayveri orqali har bir qurilmani sanab o'tadi. Bu PCI bussidagi har bir daraxtni sanashni pci.sys-ga aytadi. HKLM \ Services-dagi ENUM registri kalitida har bir qurilma uchun drayver haqida ma'lumot mavjud. Agar siz Win 7-da .bb usb3kd.dll-dan foydalanib windbg va .load usb3kd.dll kengaytmasidan foydalansangiz, siz USB 3 daraxtidan uyadan acpi-ga o'tishingiz mumkin. Men buni USB 3 bilan bajardim, lekin XP-da u qanchalik yaxshi ishlashiga amin emasman.
#4532dencorso<off topic begins> ⇗ @gordo999 : I sure don't speak Uzbek, but if you translated English to Uzbek using any of (google, bing!, yandex), then probably the translation is no good, and I don't know of a machine translator able to do it decently. Now, to translate English to Russian or, even better, Russian to English, there's just one and only machine translator: DeepL. It's, hands down, the best one available for free, nowadays. And no, I'm not affiliated with it in any way, I just do hate bad machine translation with a passion! My native language, BTW, is Portuguese, if that info can be relevant in any way. Cheers! <off topic ends>
#4533gordo999
Zitat von ⇗ dencorso im Beitrag ¶ #4532
<off topic begins> @gordo999 : I sure don't speak Uzbek, but if you translated English to Uzbek using any of (google, bing!, yandex), then probably the translation is no good, and I don't know of a machine translator able to do it decently.
⇗ @dencorso ...thanks for tip. The newer Google translation is pretty good for Chinese and some other languages if you translate, then translate back to English to look for errors. I wrote a lengthy email to a Chinese manufacturer and the woman on the other end said the translation was easy to read.

I feel badly for people on this blog who don't speak English as a first language. It's tough to communicate and I thought I'd try translating my English into their language to see how well it works. I don't know if ⇗ @Mov AX, 0xDEAD speaks Russian or Uzbek but I was able to communicate on a Russian board about hard drives using Google. The hard part is trying to learn the slang. For example, some Russians call a hard drive a 'screw' and a disk platter, a 'pancake'. So, I think a trick in translation may be to keep the English really simple with no slang.
#4534infuscomus⇗ @Mov AX, 0xDEAD

do you think it might be possible to backport ntoskrnl/hal of windows 8 or 10 to work for XP?
some functions were removed since XP, would it just be a matter of re-adding them back in?
#4535diderius6After crazy search for 3 days I found the reason for BSOD 0x7B for USB boot of the nice driver form ⇗ @Mov AX, 0xDEAD .

It is the sequence of those drivers, which was loaded first, second, third and so on.
XP SP3 itself sets UCX01000 to a later place, because it knows nothing about those drivers.
The result is BSOD 0x7B.

The working sequence is

1.) WDF01_W8
2.) USBSTOR
3.) UCX01000
4.) USBXHCI
5.) USBHUB3

Dietmar
#4536infuscomus⇗ @diderius6

how do you set the boot order so it works?
#4537diderius6⇗ @infuscomus

There are a lot of possibilities as long as the load order for the drivers above is kept.

I just test with success in its *.inf files for USB boot for XP SP3

1.) WDF01_W8    LoadOrderGroup = System Reserved             StartType     = 0

2.) USBSTOR      LoadOrderGroup = System Reserved              StartType     = 0

3.) UCX01000     LoadOrderGroup = Boot Bus Extender            StartType     = 0

4.) USBXHCI       LoadOrderGroup = Base                               StartType     = 0

5.) USBHUB3      LoadOrderGroup = Base                               StartType     = 0

Dietmar

PS: The StartType has to be always = 0 or you get BSOD 0x7B,
because then the driver for USB boot is not loaded at boottime.
#4538infuscomus⇗ @diderius6

thanks,

I'll let outbreaker know so he can add this to his integrator script.
#4539diderius6I just test XPSP3 USB3 boot with the nice driver from ⇗ @Mov AX, 0xDEAD (with my settings above in each *.inf )
for the AMD board Fatal1ty AB350 Gaming K4 with Ryzen 3700X with 16 cores. Only with this board from AMD I'm happy.
Waaoh, boots at once. It is stable and fast
Dietmar

PS: No extra entries needed. Just use the two *.inf files here for generic USB XPSP3 boot on any mainboard.



diderius6 has attached files to this post
#4540diderius6Waaooh, with this settings in GenericUSBbootXPSP3
even the most crazy board ASUS PRIME X570-PRO can now boot from USB
and all(!) USB ports work there at once. Until now, I never succeed for USB boot on this board.
And before, the USB ports there are unstable as much as possible on any OS. In Win10, this unstability remains..

Dietmar

PS: I hope, that soon ) we all have this nice driver from ⇗ @Mov AX, 0xDEAD .
This will give a boost for XP as much as this is possible.

EDIT: EVGA z390 dark board works also for USB boot of XP SP3 with this generic settings,
also on the Asmedia USB ports.
Asus Apex X works, also on Asmedia USB ports.

And USB boot works on each slot of the nice GA-H110M-S2H board:)).
#4541canonkong⇗ @Mov AX, 0xDEAD ⇗ @diderius6
I tried to make the USB from server2012(6.2.9200) to Xp/vista/win7. And the XHCI/HUB driver work very well on win7 with my Ryzen CPU & APU, X370/B450/X570 also work good.
But the UASP can not work. Even I found out all the KeInitializeSpinLock and fix them, but it is still Code 39 erro. What do I need to fix?
Thanks.
#4542Mov AX, 0xDEAD
Zitat von ⇗ infuscomus im Beitrag ¶ #4534
@Mov AX, 0xDEAD
do you think it might be possible to backport ntoskrnl/hal of windows 8 or 10 to work for XP?
some functions were removed since XP, would it just be a matter of re-adding them back in?

i've experimented with injecting win7 kernel+hal+acpi to winxp, kernel started ok, but there is problems when kernel start requesting external *.sys, for example i got BSODs in pci.sys

offtop: ⇗ @gordo999, i can speak in russian only
#4543Mov AX, 0xDEAD
Zitat von ⇗ canonkong im Beitrag ¶ #4541
@Mov AX, 0xDEAD @diderius6
I tried to make the USB from server2012(6.2.9200) to Xp/vista/win7. And the XHCI/HUB driver work very well on win7 with my Ryzen CPU & APU, X370/B450/X570 also work good. But the UASP can not work


win8's UASP require win8's storport.sys or you need to patch UASP to make it compatible with previous storport.sys
#4544infuscomus⇗ @Mov AX, 0xDEAD

if you still have that kernel, do you mind if I take a look at it?
#4545gordo999
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #4528
- need 100% quality connection - Debugging with COM  require much more speed connections
⇗ @Mov AX, 0xDEAD ...thanks for response. I had kernel debugging running well with COM between a W7 host and both W7 and W10 as targets. It was fast enough for me at 115200 baud. My problem was buggy behavior with windbg. Sometimes the registers would not work correctly and I could not get certain extensions to load.

Right now, using a serial comm app I can clearly see the host sending data. It sends 00 00 00 00 00 69 69 69 69 69 etc, where the 0x69 is the ASCII letter i. It's waiting for a response. I need to find a way to send it a response so I can follow it from the serial comm app to see where it is being blocked.

At the moment, I need to fix a problem in XP debug mode. It can boot to the desktop and the mouse works for a while then the mouse and keyboard freeze. I'm wondering if it might be a problem between USB 3 and debug mode. In safe mode, there is no problem. Could you, or anyone, check to see if debug mode on XP runs to the desktop without freezing?

I have read that an exception can cause debug mode to freeze if the exception occurs before the host can connect.

 

Page 304

#4546gordo999
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #4542
i can speak in russian only
⇗ @Mov AX, 0xDEAD ....I can understand your posts. I thought it might be helpful to you when discussing details if we tried to reply in Russian. If you need to reply in detail you could post details in Russian with a short English reply, as you do now. Maybe that is too complicated.

Я могу понять ваши сообщения. Я подумал, что вам будет полезно обсудить детали, если мы попытаемся ответить на русском языке. Если вам нужно ответить подробно, вы можете опубликовать информацию на русском языке с коротким ответом на английском языке, как вы делаете сейчас. Может быть, это слишком сложно.

BTW...this applies to anyone who speaks a language other than English. I speak Scottish  but I don't mind making an effort to communicate in a different language.
#4547gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #4535
It is the sequence of those drivers
⇗ @diderius6   ....how do you determine the loading sequence? Is it done using the Start parameter as in:

ErrorControl

This is used if the service fails to startup upon boot.

Value Meaning
0x00 If this driver can't be loaded or started ignore the problem and display no error
0x01 If the driver fails produce a warning but let bootup continue
0x02 Panic. If the current config is last known good continue, if not switch to last known good
0x03 Record the current startup as a failure. If this is last known good run
diagnostic, if not switch to last known good and reboot

Start

This defines when in the boot sequence the service should be started. You can also set these by using the Services control panel applet.

Value Start Type Meaning
0x00 Boot The kernel loaded will load this driver first as its needed to use the boot volume device
0x01 System This is loaded by the I/O subsystem
0x02 Autoload The service is always loaded and run
0x03 Manual This service does not start automatically and must be manually started by the user
0x04 Disabled The service is disabled and should not be started

Type

This defines the kind of service or driver. They are loaded in the following order down the list.

Value Meaning
0x01 Kernel-mode device driver
0x02 Kernel-mode device driver that implements the file system
0x04 Information used by the Network Adapter
0x10 A Win32 service that should be run as a stand-alone process
0x20 A Win32 service that can share address space with other services of the same type
#4548diderius6⇗ @gordo999

This list is not complete. The entry TAG is missed there.
The higher the TAG number, the later the driver is loaded.
This is true in the meaning of the words, as I noticed.
I do not have any good information about the LoadOrderGroup.
Any way, System Reserved is loaded first of all and Base as a normal driver
Dietmar

PS: There are much more ways possible in XP: In CriticalDeviceDatabase it is enough to give the GUIDE number
and the name of the service. No special device needs to be declared there.
Other is in ENUM. There you have to give also the exact name of a special device, for which the driver is.
Before I thought that CriticalDeviceDatabase is the very first place, where XP looks for drivers.
But now I think it is Enum. How I find the load order? I have experience with different LoadOrderGroup.
But this time I noticed, that it is not enough. You also have to look at the TAG entry. 3 days work, brr..
#4549infuscomus⇗ @diderius6
sent you a PM
I modded the script, can you see if this fixes the 7B BSOD with USB boot?
#4550canonkong⇗ @Mov AX, 0xDEAD
Both storport.sys and uasport.sys code 39 erro, I thnk only find out KeInitializeSpinLock fix them is not enough.
Can you share your modified storport.sys and uasport.sys for win7 or share some experiences about that?
Thanks
#4551YuriyCN
Zitat von ⇗ gordo999 im Beitrag ¶ #4546

Я могу понять ваши сообщения. Я подумал, что вам будет полезно обсудить детали, если мы попытаемся ответить на русском языке. Если вам нужно ответить подробно, вы можете опубликовать информацию на русском языке с коротким ответом на английском языке, как вы делаете сейчас. Может быть, это слишком сложно.

BTW...this applies to anyone who speaks a language other than English. I speak Scottish  but I don't mind making an effort to communicate in a different language.



Давно пора уже перейти на русский. Здесь половина специалистов общается на русском, но из уважения к остальным, приходится писать на английском. На русском будет проще и информативнее.
#4552diderius6⇗ @YuriyCN
Да, но не все понимают русский язык.
Я могу читать и говорить по-русски :)),
Дитмар
#4553YuriyCN
Zitat von ⇗ diderius6 im Beitrag ¶ #4552
@YuriyCN
Я могу читать и говорить по-русски :)),
Дитмар


Отлично! Вообще никаких проблем! )))
#4554Dibya
Zitat von ⇗ infuscomus im Beitrag ¶ #4534
@Mov AX, 0xDEAD

do you think it might be possible to backport ntoskrnl/hal of windows 8 or 10 to work for XP?
some functions were removed since XP, would it just be a matter of re-adding them back in?

Its impossible , ntoskrnl and hal are linked with ntdll and win32k.sys moreover Windows 8 kernel doesnt have same memory addresses as XP . Moreover Windows 8 kernel will break functioning of OpenGL ICD in XP .
#4555gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #4552
⇗ @YuriyCN
Да, но не все понимают русский язык.
Я могу читать и говорить по-русски :)),
Дитмар
⇗ @diderius6 ⇗ @YuriyCN ...Я могу сидеть Да и Нет на русском и шотландском. :-)
#4556Mov AX, 0xDEAD
Zitat von ⇗ gordo999 im Beitrag ¶ #4545

At the moment, I need to fix a problem in XP debug mode. It can boot to the desktop and the mouse works for a while then the mouse and keyboard freeze. I'm wondering if it might be a problem between USB 3 and debug mode. In safe mode, there is no problem. Could you, or anyone, check to see if debug mode on XP runs to the desktop without freezing?

I saw only mouse lags with COM debugging, but never faced with total freezes with any usb3 driver, so probably you have some unique "freeze" issue
#4557Mov AX, 0xDEAD
Zitat von ⇗ canonkong im Beitrag ¶ #4550
@Mov AX, 0xDEAD
Both storport.sys and uasport.sys code 39 erro, I thnk only find out KeInitializeSpinLock fix them is not enough.
Can you share your modified storport.sys and uasport.sys for win7 or share some experiences about that?


I have notfinished/unstable backport win8's storport.sys & uasport.sys for Windows XP :
- uasport works, but there is issue with reboot&shutdown inside storport, first it was BSOD 9F about missing PoStartNextPowerIrp calls, after fixing i get deadlock with "power irqs"
- original Win8 storahci.sys also works (on VM and real hardware )

EDIT: deadlock fixed, uasport.sys&storport.sys finished
#4558gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #4548
But now I think it is Enum.
⇗ @diderius6 ...thanks for info. I think enum is used during the boot stage when ACPI.sys instructs the Plug'n Play Manager to instruct pci.sys to enumerate devices attached to the PCI buss. Each pci buss has a node to which a device tree is attached, leading to a device or some kind of code object.

There are two main objects in a device stack or tree, the PDO and the FDO. In a USB tree, the pci driver creates a PDO (physical device object) which is nothing more than a code structure that holds information about the next object in the stack.

⇗ https://docs.microsoft.com/en-us/windows-hardware/drivers/gettingstarted/device-nodes-and-device-stacks

"During startup, the PnP manager asks the driver for each bus to enumerate child devices that are connected to the bus. For example, the PnP manager asks the PCI bus driver (Pci.sys) to enumerate the devices that are connected to the PCI bus. In response to this request, Pci.sys creates a device object for each device that is connected to the PCI bus. Each of these device objects is called a physical device object (PDO)".

I mention this because you can trace the PDO (Physical Device Objects) and FDO (Functional Device Objects) 'structures" in windbg and follow the driver stack to the root. Note in one of the drawings in the article that acpi.sys is the root for pci.sys. I have noticed that while tracing through the USB stack that acpi.sys is always the the root driver for everything else.

Here's the key for the ENUM section in the registry:

"The PnP manager associates a device node with each newly created PDO and looks in the registry to determine which drivers need to be part of the device stack for the node".

That means, for each device node (USB, storage, sound cards, etc.), the PCI buss must create a PDO. For the next device object down the chain, the PDO creates and FDO for the object. That object then creates another PDO for the next object, which creates an FDO for the next object. It should be noted that acpi.sys creates a PDO for PCI.SYS.

There is a hyperlink for DEVICE OBJECT at the link above and if you follow that link it will show you the code structure for the device object. Using that, you should be able to trace into the driver code using windbg and get a lot of information that may tell you why a driver is not loading. I have not done that yet but I plant to.

The actual communication between devices is done with an IRP, which is really just another structure that transports data between the PDO and the FDO between device objects. If you watch this happening in windbg or Ollybdg, you can see memory sections being initialized with 00s then entire structures are moved/copied from one memory location to another.

Right now, I am trying to get a kernel debugging session going between a remote host computer and a target XP computer using a serial connection. Once that is established, you can trace through driver code and see what is actually happening. I've managed to trace into the Device Manager code related to 'Add New Hardware' and got into the code where it is reading the INF file. You should be able to catch the PnP manager reading the ENUM part of the registry.
#4559gordo999
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #4556
I saw only mouse lags with COM debugging, but never faced with total freezes with any usb3 driver, so probably you have some unique "freeze" issue
⇗ @Mov AX, 0xDEAD|p111729 ...I agree. It is freezing very late in the boot process at the desktop but not in Safe Mode. I am using the bootlogging in Process Monitor and another boot logger to see if I can identify the app that is causing the freeze.
#4560YuriyCN
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #4557
- original Win8 storahci.sys also works (at least in VM on virtual sata controller, not tested on real hardware)

I don't plan share it because it does not work well



Нужно учитывать криворукость пользователей тестирующих драйвера. Например, для успешной работы USB 3.0 (портированного с Win8) нужно выполнить одновременно 3 условия:
1) Выбрать правильный дистрибутив WinXP. Например я использую сборку с обновлениями по 2020 год - никаких проблем с портированным драйвером нет. Всё отлично работает! Но, если взять оригинал MSDN WinXP SP3 - то проблемы также есть. Видимо причина в каком-то измененном *.sys.
2) Обязательно использовать модифицированный ACPI.SYS (от 01.11.2019)
3) После установки драйвера, проверить чтобы оба компонента (xHCI контролле + Root Hub) были с установленного драйвера. Windows может заменить компонентом от другого драйвера, что вызовет проблемы.

Невыполнение любого условия, приводит к гарантированным глюкам. Выкладывайте ваш портированный SATA драйвер. Если он не убьёт файловую систему на HDD со всеми файлами - то готов его потестировать.

 

Page 305

#4561canonkong⇗ @Mov AX, 0xDEAD
Original Win8 storahci.sys also code 39 erro on real hardware.
Although uasp does not work, but xhci and hub can work well.
They work well on win7 system, which is better than the general USB driver modified by AMD 1.0.0.12.
At least, they will not occasionally fail to recognize USB devices on DEV_15E1 DEV_15E0 like AMD 1.0.0.12.
#4562Mov AX, 0xDEADHi,

I fixed deadlock issue with backported Win8 UAS Mass Storage driver, there is two versions:
- uaspstor.sys for Win8's storport.sys  v6.2.9200.16384, size(HW_INITIALIZATION_DATA) = 80h
- uaspstor.sys for Win2003's updated storport.sys v5.2.3790.4485 size(HW_INITIALIZATION_DATA) = 68h, SP2 version and older will not work

Deadlock fix implemented as "dirty" hack, at reboot & shutdown driver will not wait results from usbhub3 driver
For storahci.sys (and other drivers) deadlock fix not require, so uaspstor.sys linked to renamed storport.sys

PM if this backport is interesting to you

Existing patches:
1) ¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (313)
#4563Mov AX, 0xDEAD
Zitat von ⇗ canonkong im Beitrag ¶ #4561
@Mov AX, 0xDEAD
Original Win8 storahci.sys also code 39 erro on real hardware.


Hi canonkong

Probable problem source:
storahci.sys compiled for win8 ddk storport framework, at time of start it fills HW_INITIALIZATION_DATA structure and transfers it to storport.
Only Win8' storport will return OK to Win8' storahci.sys, any previous version of storport will fail HW_INITIALIZATION_DATA checks and return error to driver => code 31,39 in DM
Skullteria version compiled for win7 ddk => compatible with win2003 storport.sys
#4564ruthanJust small discovery from - I had problem with NEC USB3 addon controller with Win10 and Z97 board - in installed lastest firmware tried zillion things.. but cca every 2nd boot it was not working - because i got message, that device not responded in desired time.. now i upgraded to Z390 same OS isntallation, drivers etc, only MB changed and its working everytime.

 Some USB problems could be more that controller related, but there could be something with MB or chipset, i had on same MB - Asmedia - Internal and External and Intel controllers are never had same issue.
#4565Mov AX, 0xDEAD
Zitat von ⇗ ruthan im Beitrag ¶ #4564
Just small discovery from - I had problem with NEC USB3 addon controller

My experience: usb3 hardware/design is low quality, i have VIA card with 3 damaged usb 3.0 ports + MB Intel with one damaged usb3 port + semi-burned external sata<->usb3 adapted + lenovo notebook with sometimes not being activated ports
#4566ruthanOtherwise i was searching for that "delta" patcher to enable distribute USB / System patches, without sharing whole modified files.

 In theory, its should works same was as code diff. If you we will first check that everyone has right drivers and MS files (SP x and right CRC) to patch, you can compare original and modified files, create delta patch and distribute it freely and users can make patching.

 I found so far 2 ways how to do it:
1) Xdelta-GUi - ⇗ https://github.com/Moodkiller/xdelta3-gui-2.0 its 64bit, but there is source - ⇗ http://xdelta.org/
2) bsdiff command if you like Linux.
#4567diderius6⇗ @infuscomus

I think, this will solve our problem how to install XP to any USB device.
It is from my past, but I cant remember it at all.
Little memory, that I sold an XP CD to a person in England in 2006,
just with this my own method
Dietmar

"The ngine.de tutorial is derived by Tubo from the original Dietmar's guide."

PS: One website for USB boot of XP survived 14 years:))

⇗ https://romardcajote.wordpress.com/windo...usb-stickdrive/



diderius6 has attached files to this post
#4568gordo999
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #4565
... semi-burned external sata
⇗ @Mov AX, 0xDEAD ...did you adjust  it for maximum smoke?
#4569gordo999
Zitat von ⇗ gordo999 im Beitrag ¶ #4568
[quote=Mov AX, 0xDEAD|p4565]
... semi-burned external sata
⇗ @Mov AX, 0xDEAD ...did you adjust  it for maximum smoke?   I blew up a motherboard once by putting a shorting clip on a fan header instead of the BIOS header. Could not see very well since it was dark inside the case but I sure heard it and smelled. Won't do that again.
#4570Outbreaker⇗ @diderius6
Nice one. Only the link in the PDF is dead/kaputt.
And i think we could move the USBBOOT.INF entries into the HIVESYS.INF file or not.
#4571diderius6⇗ @Outbreaker

We can build a new USBBOOT.INF. To separate it, is much more easy.
⇗ @infuscomus sends me the one down here.
The problem, that start 0=>3 changes during install of XP is solved with it.
We need to think about, how to treat USBHUB3 and USBXHCI.
With WDF load they can stay with Group Base, but start=0.
I think, the lifting in the Tutorial should happen for them not at 2 places, I think only at one place.
Needs to be tested, if this one place is [BootBusExtenders] or [BootBusExtenders.Load]
Dietmar

PS: For me it is unclear, at which place you have to use

"Start",0x00010003,"0"
or
"Start",0x00010001,"0"



diderius6 has attached files to this post
#4572infuscomus⇗ @Outbreaker

if you're still having trouble seeing the PDF

DL here
⇗ https://ufile.io/upae1nwm
#4573diderius6This example from Microsoft for USB3 boot is a little bit strange, because with there own description there should be a 0x10 ??? May be this means: 0x4 for usb boot + 0x10 for USB3 = 0x14
Dietmar

Depending on the boot scenario, you can use the BootFlags registry value to control when the operating system should promote a driver's StartType value to 0x0 (SERVICE_BOOT_START). You can specify one or more (ORed) of the following numeric values, expressed as a hexadecimal value:

   0x1 (CM_SERVICE_NETWORK_BOOT_LOAD) indicates the driver should be promoted if booting from the network.

   0x2 (CM_SERVICE_VIRTUAL_DISK_BOOT_LOAD) indicates the driver should be promoted if booting from a VHD.

   0x4 (CM_SERVICE_USB_DISK_BOOT_LOAD) indicates the driver should be promoted to if booting from a USB disk.

   0x8 (CM_SERVICE_SD_DISK_BOOT_LOAD) indicates the driver should be promoted if booting from SD storage.

   0x10 (CM_SERVICE_USB3_DISK_BOOT_LOAD) indicates the driver should be promoted if booting from a disk on a USB 3.0 controller.

   0x20 (CM_SERVICE_MEASURED_BOOT_LOAD) indicates the driver should be promoted if booting while measured boot is enabled.

   0x40 (CM_SERVICE_VERIFIER_BOOT_LOAD) indicates the driver should be promoted if booting with verifier boot enabled.

   0x80 (CM_SERVICE_WINPE_BOOT_LOAD) indicates the driver should be promoted if booting to WinPE.



[service-install-section]
AddReg=add-registry-section
...

[add-registry-section]
HKR,,BootFlags,0x00010003,0x14 ; CM_SERVICE_USB3_DISK_BOOT_LOAD|CM_SERVICE_USB_DISK_BOOT_LOAD
#4574Outbreaker⇗ @diderius6
If it helps 'denial_k' is using "Start",0x00010003,"0" for this USB 3.0 integration.
#4575infuscomus
Zitat von ⇗ diderius6 im Beitrag ¶ #4573


[add-registry-section]
HKR,,BootFlags,0x00010003,0x14 ; CM_SERVICE_USB3_DISK_BOOT_LOAD|CM_SERVICE_USB_DISK_BOOT_LOAD


I am not sure if windows XP would understand this flag.

also, there is the issue of wdf01000 being needed for USB 3.0 to start

 

Page 306

#4576infuscomus⇗ @Outbreaker

I'm tryng to get your script to set and keep a load order necessary for USB booting

it does this initially with hivesys.inf and later with modded usb.inf, usbport.inf and usbstor.inf but after setup things get changed and a 7B BSOD occurs

the problem in particular I think is kmdf - wdf01000

it moves to wdfloadgroup after setup
it should be Boot Bus extender

I'll PM you what I've changed so far.
#4577diderius6After I checked a lot of *.inf
I make just this as NEW usbboot.inf for USB3 boot via KMDF and hope it will work
Dietmar
[usbservices]

HKLM,"SYSTEM\CurrentControlSet\Services\wdf01000","DisplayName",0x00000000,"Kernel-Mode Driver Framework 1.11"
HKLM,"SYSTEM\CurrentControlSet\Services\wdf01000","Type",0x00010001,"1"
HKLM,"SYSTEM\CurrentControlSet\Services\wdf01000","Start",0x00010001,"0"
HKLM,"SYSTEM\CurrentControlSet\Services\wdf01000","ImagePath",0x00020000,"system32\drivers\wdf01000.sys"
HKLM,"SYSTEM\CurrentControlSet\Services\wdf01000","Group",0x00000000,"System Reserved"
HKLM,"SYSTEM\CurrentControlSet\Services\wdf01000","ErrorControl",0x00010001,"1"

HKLM,"SYSTEM\CurrentControlSet\Services\USBSTOR","DisplayName",0x00000000,"USB Storage Class Driver"
HKLM,"SYSTEM\CurrentControlSet\Services\usbstor","Type",0x00010001,"1"
HKLM,"SYSTEM\CurrentControlSet\Services\usbstor","Start",0x00010001,"0"
HKLM,"SYSTEM\CurrentControlSet\Services\usbstor","ImagePath",0x00020000,"system32\drivers\usbstor.sys"
HKLM,"SYSTEM\CurrentControlSet\Services\usbstor","Group",0x00000000,"System Reserved"
HKLM,"SYSTEM\CurrentControlSet\Services\usbstor","ErrorControl",0x00010001,"1"

HKLM,"SYSTEM\CurrentControlSet\Services\usbxhci","DisplayName",0x00000000,"USB xHCI Host Controller"
HKLM,"SYSTEM\CurrentControlSet\Services\usbxhci","Type",0x00010001,"1"
HKLM,"SYSTEM\CurrentControlSet\Services\usbxhci","Start",0x00010001,"0"
HKLM,"SYSTEM\CurrentControlSet\Services\usbxhci","ImagePath",0x00020000,"system32\drivers\usbxhci.sys"
HKLM,"SYSTEM\CurrentControlSet\Services\usbxhci","Group",0x00000002,"Base"
HKLM,"SYSTEM\CurrentControlSet\Services\usbxhci","ErrorControl",0x00010001,"1"

HKLM,"SYSTEM\CurrentControlSet\Services\usbhub3","DisplayName",0x00000000,"SuperSpeed Hub"
HKLM,"SYSTEM\CurrentControlSet\Services\usbhub3","Type",0x00010001,"1"
HKLM,"SYSTEM\CurrentControlSet\Services\usbhub3","Start",0x00010001,"0"
HKLM,"SYSTEM\CurrentControlSet\Services\usbhub3","ImagePath",0x00020000,"system32\drivers\usbhub3.sys"
HKLM,"SYSTEM\CurrentControlSet\Services\usbhub3","Group",0x00000002,"Base"
HKLM,"SYSTEM\CurrentControlSet\Services\usbhub3","ErrorControl",0x00010001,"1"

HKLM,"SYSTEM\CurrentControlSet\Services\ucx01000","DisplayName",0x00000000,"USB Controller Extension"
HKLM,"SYSTEM\CurrentControlSet\Services\Ucx01000","Type",0x00010001,"1"
HKLM,"SYSTEM\CurrentControlSet\Services\Ucx01000","Start",0x00010001,"0"
HKLM,"SYSTEM\CurrentControlSet\Services\Ucx01000","ImagePath",0x00020000,"system32\drivers\ucx01000.sys"
HKLM,"SYSTEM\CurrentControlSet\Services\Ucx01000","Group",0x00000000,"Boot Bus Extender"
HKLM,"SYSTEM\CurrentControlSet\Services\Ucx01000","ErrorControl",0x00010001,"1"
#4578infuscomus⇗ @diderius6

does this prevent wdf01000 from moving from Boot Bus Extender to Wdfloadgroup?
#4579diderius6⇗ @infuscomus
I am just building this CD.
Now without any other files for USB3 setup,
only my own^^
Dietmar

EDIT: What a crazy hard job.
I build really everything new. But after reboot I get still BSOD 0x7B, brr..^^
For all of the 5 entries in Services I get now Group Boot Bus Extender  start=0
No Tag.
This cant work, because no sequence can be seen here.
This is a difference compared to normal USB2/3 boot, via KMDF USB boot you need to keep a sequence for all the drivers.

EDIT2: When I edit those entries by hand in registry, that they all have the correct LoadOrderGroup, install continues.
Now I have an XP SP3 Setup CD to USB3, but only with small correction by hand^^.
#4580Zucker2kI came across this a while back. Hope you find it helpful:
⇗ http://report5.blogspot.com/2010/06/inst...-flashhard.html
#4581diderius6⇗ @Zucker2k

Yes, this works for normal USB install of XP. But not for KMDF drivers
Dietmar
#4582Pill MonsterCan someone post a d/l link to XP without SP2 or SP3.   All the ISO's on torrent sites have SP3 included.  It's to test something..
TIA

Actually I didn't check M$ own server...I'll do that now
#4583ruthan
Zitat von ⇗ Zucker2k im Beitrag ¶ #4580
I came across this a while back. Hope you find it helpful:
⇗ http://report5.blogspot.com/2010/06/inst...-flashhard.html

Its only annoying - lots of manual things , when you have PC, where you dont need to modify files, its best just use Rufus USB / Sardu USB or YUMI USB, they are now good.. and if is something wrong, they are able to fix it.
#4584Pill MonsterIt's pretty easy to install XP from a USB drive just not with early versions. The later ISO releases included USB drivers that SP1 didn't have.

I installed SP3 on nF3/ nF4 boards from a flash drive.


Also I used ⇗ WinToFlash to create an XP bootable USB drive for my Sabertooth last week.


Zitat von ⇗ ruthan im Beitrag ¶ #4583
Zitat von ⇗ Zucker2k im Beitrag ¶ #4580
I came across this a while back. Hope you find it helpful:
⇗ http://report5.blogspot.com/2010/06/inst...-flashhard.html

Its only annoying - lots of manual things , when you have PC, where you dont need to modify files, its best just use Rufus USB / Sardu USB or YUMI USB, they are now good.. and if is something wrong, they are able to fix it.
How did you do it in Rufus? I use Rufus but it didn't seem to work with XP...
#4585diderius6Yessssssssssssssssaaaaaaahhhhhhhhh:)))))))))))))))))!!!!!!!!!
Seems, that I am as good as in 2006.
I just install XPSP3 direct to an USB harddrive from Installations CD.
The nice USB3 driver from ⇗ @Mov AX, 0xDEAD is faster than any other.
Oh, what a fight with the settings of the KMDF driver.
And very nice, I can also use Firadisk USB install,
full installation for XP SP3 is now done in 3 min
Dietmar

PS: What I have done is to build really everything new from original en_windows_xp_professional_with_service_pack_3_x86_cd_x14-80428.iso where I checked SHA1 before.
SHA-1   
1C735B38931BF57FB14EBD9A9BA253CEB443D459

This gives me 5 services with Group Boot Bus Extender start=0,
no sequence. This is very similar to USB2 boot.
Then I add in HIVESYS.INF a new entry for usbstor.
And then, I give each service there a Tag number 1,2,3,4,5.

Tag 1 for wdf01000
Tag 2 for usbstor
Tag 3 for UCX01000
Tag 4 for USBXHCI
Tag 5 for USBHUB3

At the end, I have to delete the crazy usbstor.in_ in the i386 folder of the CD, because I have had put there a new usbstor.inf already and forgot to delete the old one,
Dietmar



diderius6 has attached files to this post
#4586ruthanCongrats.

I would like to see some USB3 + other modern system patches (there were some acpi and timer etc patches).. ultimate package for existing system too. Im usually porting older installs to newer Hardware.
#4587canonkong⇗ @Mov AX, 0xDEAD
UASP seems to be working.

USB TO NVMe device on USB3.0 5Gbps port with UASP.


USB TO NVMe device on USB3.0 5Gbps port none UASP.


USB TO NVMe device on USB3.1 10Gbps port with UASP.


USB TO NVMe device on USB3.1 10Gbps port none UASP.
#4588infuscomus⇗ @diderius6

did wdf01000 switch from boot bus extender to wdfloadgroup again? or did you solve that?
#4589diderius6⇗ @infuscomus

Because I put all this 5 services in Group Boot Bus Extender with start=0,
they are like pinnend in this group.
And this was a problem for me, because before I chose the load order sequence only with the different groups.
But during testing with this crazy BSOD 0x7B i found, that XP SP3 listens in the meaning of the word to the sequence,
which is given by the Tag number. I think, this different in XP (gold), XP SP1, XP SP2.
As far as I remembe, earlier XP versions do not much care about the Tag,
Dietmar

PS: Look at the entries. May be, we dont neet usbboot.inf , because now the values are put 2 times in registry also via HIVESYS.INF .
This I test today in the afternoon because now I hurry to school:))!

EDIT: Yes, we do not need usbboot.inf any longer. I just test.
#4590ruthanSome good news. i have Gigabyte  Z370 MB, where is PS/2 Y combo cable not working for both devices together, but with new Gigabyte 390 its working, so you can use mouse and keyboard during installation and USB3 debugging what is nice.

BTW im install that Z390 new MB and porting old installs, in Windows 7 i had almost everything except Intel USB3 working, there were USB3 drivers forWin7 on Win-Raid but where removed because of Intel, if someone has them, could you send them to me by PM pleas?
Hardware ID:
PCI\VEN_8086&DEV_A36D&SUBSYS_50071458&REV_10

 

Page 307

#4591Dibya⇗ @diderius6

Awesome work . I cant believe we can install XP through USB3 . Thanks alot.

Well a friend of mine told their are source code of ACPI driver of some sort in  XP WDK ⇗ https://winworldpc.com/product/windows-sdk-ddk/xp-nt-51
I didnt see the code though .
anyone can check if classpnp.sys from server 2003 sp2 break 2.2TB LBA limit in XP Disk stack .
#4592diderius6⇗ @Dibya

"anyone can check if classpnp.sys from server 2003 sp2 break 2.2TB LBA limit in XP Disk stack "

Please tell me a little bit more about.
Does this mean, we have a chance to see more than 2.2 TB on XP? Not to use drivers like the one from Paragon has the big advantage, that we can boot from them
Dietmar

PS: The thank goes to ⇗ @Mov AX, 0xDEAD .
#4593Dibya
Zitat von ⇗ diderius6 im Beitrag ¶ #4592
@Dibya

"anyone can check if classpnp.sys from server 2003 sp2 break 2.2TB LBA limit in XP Disk stack "

Please tell me a little bit more about.
Does this mean, we have a chance to see more than 2.2 TB on XP? Not to use drivers like the one from Paragon has the big advantage, that we can boot from them
Dietmar

PS: The thank goes to @Mov AX, 0xDEAD .



i found code in classpnp.sys that seems to allow 2k3 access 2.2tb plus storage upto 16tb in GPT .
Please backup every data before experimenting with XP
Me and rloew did research in it back in day but unfortunately our friend rloew left us
You can read here ⇗ https://msfn.org/board/topic/180215-rloe...as-passed-away/
#4594Mov AX, 0xDEAD
Zitat von ⇗ Dibya im Beitrag ¶ #4593

i found code in classpnp.sys that seems to allow 2k3 access 2.2tb plus storage upto 16tb in GPT .
Please backup every data before experimenting with XP
Me and rloew did research in it back in day but unfortunately our friend rloew left us


No need to backup any data )
Today we have many VM engines, many of their offers dynamic size disk images, so inside VM we can create XXTb disk with real size on host about 100-200 Mbytes
Certainly we cannot fill these disks with data, but to test GPT/partitions i think it is enough. Another option is to use sector editors inside vm to walk on disk surface and simulate read access to any disk location
#4595Mov AX, 0xDEADLittle survey:
I'd like to hear from Forum Users what XP issues are most critical to you today ?
#4596ruthanI thing that is still the same, i lost of them, you cant probably fix:
1) Easily migrate XP to GPT driver with other OS and boot it from Grub2.
2) Read from other GPT drivers
3) No modern browsers support..
4) Only 2 monitors on Nvidia, i need 3.
5) Only 4 GB of RAM and so far problematic PAE for more, im ware limit 2GB per process but still loaded system would be much quicker with more ram and less swapping.
6) No Geforce 1xxx / 2xxx cards support / no modern Intel iGPU drivers
7) No Intel 219 Lan drivers
#4597Outbreaker⇗ @Mov AX, 0xDEAD
When i look around then the most critical issues for now is to also get this WDF USB 3.0 driver to work at Setup boot and on a Live USB with a Windows XP that has Driver Framework 1.9 integrated.
#4598diderius6I just simplified my setup files for USB boot of XP SP3.
Copy the files from the package over to the folder i386 of an original XP SP3 CD (just replace them).
I use for this Ultra Iso. Nlite does not work. Nothing other is needed. Because I mod my Bios, I need no extra acpi.sys.
I tested my package with the original english XP SP3 CD.
en_windows_xp_professional_with_service_pack_3_x86_cd_x14-80428.iso
The name of my package is

XPSetupCDtousb3byDietmar

Dietmar
#4599gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #4589
As far as I remembe, earlier XP versions do not much care about the Tag
⇗ @diderius6 ...Dietmar, where are the tags found in the registry?
#4600diderius6⇗ @gordo999
They are in Services, when they are given.
Numbers start from Tag = 1 (this service is then first of all loaded) and so on
Dietmar
#4601gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #4600
They are in Services, when they are given.
⇗ @diderius6 ...thanks...never noticed that before.
#4602ruthanI migrated from Z97 to Z390. Windows 10 and Windows 7 are now working (i had to use unofficial Roline USB3 intel drivers) and classic Fernando Intel Sata drivers.
Android x86 and Linux are now fine too.  So its  WinXP 32 bit time.. and ok MacOS too - it would be worst.

 Now when im trying to boot im getting classic ACPI crash:

 
I made migration from Z97 to Z370 on other machine, long time ago it was without patches and working PS/2 and it was hard. Now with new discovery it should be easier, in theory.
Now i want to make system booting with PS/2 without USB, i will messing with USB later, after system would be bootable. I dont want to reinstall im using same install till 2004 its highly configured and loaded, i setup all again would take too much time, in the past i always managed to migrate it to new HW.

So what i have to do (discussions)?
1) Replace some system files with APCI, HALTimer etc patches? Can someone PM me lastest and greatest for my system?
2) Its still necessary make special boot.ini entries for patched files, or not?
3) With patches, will it boot from Sata driver, out of box or not? I have installed some older Fernando Sata driver, it worked with Z97.. I can have in machine also Marwell Sata controller with already installed driver within XP so i can use it.. And anything of this will not work in can use Asmedia PCI-E Sata addon card with IDE bios. So i theory i need only fix ACPI thing to boot system and i can later mess with Sata.
#4603Dibya
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #4594
Zitat von ⇗ Dibya im Beitrag ¶ #4593

i found code in classpnp.sys that seems to allow 2k3 access 2.2tb plus storage upto 16tb in GPT .
Please backup every data before experimenting with XP
Me and rloew did research in it back in day but unfortunately our friend rloew left us


No need to backup any data )
Today we have many VM engines, many of their offers dynamic size disk images, so inside VM we can create XXTb disk with real size on host about 100-200 Mbytes
Certainly we cannot fill these disks with data, but to test GPT/partitions i think it is enough. Another option is to use sector editors inside vm to walk on disk surface and simulate read access to any disk location

If you ask me , I will love to have full ACPI support on Ryzen for XPx64.
Newer GPU Driver .

Any one have debug symbol for Vista Sp2 ? I seems Microsoft removed them
#4604Zucker2kx86, x64 ACPI Support For Sunrise Point (Skylake Mobile). ACPI support is the biggest hurdle for most.
#4605genieautravail
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #4595
Little survey:
I'd like to hear from Forum Users what XP issues are most critical to you today ?


Graphic drivers support for Intel and AMD APU !

 

Page 308

#4606diderius6From today evening direct install XP SP3 to any USB medium is perfect:))

⇗ https://www.zone62.com/downloads/softwar...comment_id=2220

Dietmar
#4607Andalu
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #4595
Little survey:
I'd like to hear from Forum Users what XP issues are most critical to you today ?

1. use integrated graphics;
2. have a better performing nvme driver;
3. access partitions larger than 2.2TB for the USB3 external hard disk drives also.
#4608Mov AX, 0xDEAD@Dibya

Zitat von ⇗ Dibya im Beitrag ¶ #4593

i found code in classpnp.sys that seems to allow 2k3 access 2.2tb plus storage upto 16tb in GPT .


sources of disk.sys and classpnp.sys available in DDK, so you easily check possible limits in these drivers
#4609diderius6⇗ @Mov AX, 0xDEAD

I think, to backport videodriver to XP would be nice,
but hard as much as possible. And nice would be a driver for lan i219
and a scsiport based nvme driver, because with this you can do ntbootdd boot of XP via nvme with every older compi.
From those 3 wishes I think the most easy is a new nvme.sys working with scsiport of XP.
For this you can use the code from OFA and change everywhere Storport entries against them for Scsiport.
Some of porting vice versa is written by Microsoft
Dietmar
#4610skullteriaPort directly WDDM driver is impossible without change win32k and get dxgkrnl working full. Can try port older version of nvdia, intel and amd XDDM drivers.
#4611mullIt is better to port WIN8 EMMC driver to XP
#4612Gelip
Zitat von ⇗ Gelip im Beitrag ¶ #4427
No, UEFI32 or UEFI64 emulator does not work on computers with UEFI bios. Works only on legacy bios computers.

DUET32 (IA32) also works on UEFI64 bios - I checked it. This is my version of DUET32 with the IBM logo: ⇗ DUET IA32
#4613diderius6⇗ @Gelip

Hi,
please write a little bit more what you have tested until now and what can be reached with DUET IA32.
Can you boot XP SP3 with it?
Can you use the DUET IA32 file from you as a bootloader for legacy OS, working in pure UEFI 64 Bios surrounding
have a nice day
Dietmar
#4614infuscomus⇗ @diderius6

do you know of any open source CSM? that would be the best solution for legacy OSes like DOS/Windows 9x
#4615Gelip
Zitat von ⇗ diderius6 im Beitrag ¶ #4613
Please write a little bit more what you have tested until now and what can be reached with DUET IA32.
Can you boot XP SP3 with it?

Yes, you can boot WinXP 32-bit. Depending on the hardware, there may be a problem with the graphics card driver.
#4616diderius6⇗ @infuscomus

I do not know, where to find an Open Source CSM.
But  ⇗ @Mov AX, 0xDEAD told, that CSM is open source,
so maybe it exists somewhere
Dietmar
#4617diderius6⇗ @Gelip

Do you have an ready XP  *.iso file for me,
so that I cant test UEFI boot of XP SP3
Dietmar
#4618Gelip
Zitat von ⇗ diderius6 im Beitrag ¶ #4617
Do you have an ready XP  *.iso file for me,
so that I cant test UEFI boot of XP SP3
Dietmar

Oh, why don't you read my posts carefully?
For now, WinXP 32-bit can only boot under UEFI32 (same as WinXP 64-bit on UEFI64) but not install.

WinXP must be installed in legacy mode (CSM) and then you can run it using DUET32 (UEFI32):
¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (296)
Zitat
When it comes to preparing WinXP x86 you need the files winload.efi and bootmgfw.efi from the test version of Vista Beta Longhorn 6.0.5219.0
To WINDOWS\system32 you copy winload.efi and to FAT32 pendrive file bootmgfw.efi (I changed the name to WinXP.efi ) and to the root directory of the pendrive the boot.ini file by adding the /usenewloader option.
Now just boot your compi from this pendrive - that's all
#4619Gelip⇗ @diderius6
--> In UEFI mode you can only boot OS from disk previously installed in legacy mode <--
#4620diderius6⇗ @Gelip

Hihi, I try to order this a little bit in my head:
First you make a normal, generic XP SP3 install with Fat32 on a compi with CSM.
And on this installed XP you use DUET32 (UEFI32) with 2 new bootloader files from Longhorn and new boot.ini entry (newloader).
At first you try this on this compi and its Bios with CSM enabled.
And when it works, it also should work with all CSM disabled in this Bios.
And when this is a generic XP SP3 it may start on another compi with a Bios, that has ONLY UEFI Bios boot option,
am I right now:))
Dietmar

PS: I think, it is possible to make an install *.iso with the correct efi files from this;))..

 

Page 309

#4621Gelip
Zitat von ⇗ diderius6 im Beitrag ¶ #4620
First you make a normal, generic XP SP3 install with Fat32 on a compi with CSM.

The system can be on any NTFS, MBR or GPT partition. The FAT32 partition is only needed to start in UEFI. At the moment, it is most convenient to use a FAT32 flash drive to boot WinXP from an NTFS partition.

Zitat von ⇗ diderius6 im Beitrag ¶ #4620
PS: I think, it is possible to make an install *.iso with the correct efi files from this;))..

I haven't tried it yet but I was thinking about it. The PantherXP or Shorthorn Project can be helpful here.
#4622Gelip⇗ @diderius6
WinXP cannot be installed under UEFI but can be deployed, e.g. using VMware:
⇗ Deploy WinXP
The guide is for the 64-bit version but the same can be done with the 32-bit version.

You install WinXP in VMware (legacy), implement drivers, seal the system, make a disk image to a file, write the image to disk in the target UEFI computer and boot from it.
#4623canonkong⇗ @Mov AX, 0xDEAD
How do I need to do if I need to modify the win8 UASP to win7. I failed again and again, and now only can use VIA UASP on it, it can works well, but the 4K read/wtite are very slow.
#4624Mov AX, 0xDEAD
Zitat von ⇗ canonkong im Beitrag ¶ #4623
@Mov AX, 0xDEAD
How do I need to do if I need to modify the win8 UASP to win7. I failed again and again, and now only can use VIA UASP on it, it can works well, but the 4K read/wtite are very slow.

⇗ @canonkong
did you tested "uaspstor.w8 for storport.w2003" ? it works even on win2003 with original storport.sys, i think it must work on win7 with win7's storport.sys
#4625canonkong⇗ @Mov AX, 0xDEAD
No, I an not have "uaspstor.w8 for storport.w2003" files. Can you share this file for me to have a test? Thanks.

And to midify the win8 uaspstor.sys. In addition to removing all the SpinLock, what else do I need to modify?
#4626diderius6This is with a smoking USB port

left site is USB device with normal USBSTOR.SYS from XP SP3

and on the right site is the same USB device with nicccceee USBSTOR.SYS  from ⇗ @daniel_k .
Waaaooohh;))))

Dietmar


#4627usa1ecHi, people!
Send me this nice USB3 driver in PM.
Pls, URL.
#4628infuscomus⇗ @Mov AX, 0xDEAD

if possible, could you backport windows 8 storahci?

⇗ @Andalu and @intMD reported that the one we have now does not support TRIM
#4629Andalu⇗ @infuscomus
here's what I talked about:

#4630Dibya⇗ @diderius6 ⇗ @Mov AX, 0xDEAD
RTL219 is doable if we can analyze a bit .
Reactos have e1000 driver ⇗ https://github.com/reactos/reactos/tree/...etwork/dd/e1000
We need to port it to e1000e
⇗ https://github.com/torvalds/linux/tree/m...et/intel/e1000e
#4631daniel_k⇗ @Andalu and ⇗ @infuscomus

Did you try my modded RSTe driver?
It certainly supports TRIM on Win7 and later. I believe it's an issue with XP itself or the lack of a lower filter driver.

Can't test it myself right now, what about trying storahci on Win7 to see if the driver really supports TRIM?
Remember to disable Driver Signature Enforcement during boot if on x64.
#4632Mov AX, 0xDEAD
Zitat von ⇗ infuscomus im Beitrag ¶ #4628
@Mov AX, 0xDEAD
if possible, could you backport windows 8 storahci?
@Andalu and @intMD reported that the one we have now does not support TRIM

storahci_w8 already done, check release3.7z (storport_w8 is old version, but still works with storahci_w8)

Why you think storahci from skullteria doesnt support TRIM ? it was compiled from DDK sources and must have trim support
Anyway trim on winxp is tricky, need special software, but even TxBENCH/O&O Defrag not always trim partition properly - trimcheck.exe often show cleaned sectors with "saved" data (at least on my ocz arc100 ssd, barefoot3 controller)
#4633daniel_k
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #4632
Why you think storahci from skullteria doesnt support TRIM ? it was compiled from DDK sources and must have trim support

To be fair, we didn't really see the code it was compiled from.

Are you sure that compiling the DDK source results in the same driver included on Win8?
#4634Andalu⇗ @daniel_k
no problem with your modded driver, the trim works in XP also.


P.S.: what a pleasure to read to you again
#4635daniel_k⇗ @Andalu
Glad to know it works.

⇗ @Mov AX, 0xDEAD
Based on the report from ⇗ @Andalu, XP, Vista and Win7 all require a filter driver to passthrough TRIM maybe?

 

Page 310

#4636Andalu⇗ @Mov AX, 0xDEAD
I recognized the trim issue only with the storhaci driver from skullteria.
No issue with the modded RSTe 4.7.0.1117 driver by daniel_k and the RST AHCI+RAID driver v11.2.0.1006 by Fernando.
#4637infuscomus⇗ @daniel_k

I am running an AMD Ryzen system for my XP install, would that be supported by your RSTe driver? I assumed it wasn't compatible with AMD.

I still have your modded AMD 1.4.1.402 - did that support TRIM?

I'm used to using TRIM manually in windows10
#4638Mov AX, 0xDEAD⇗ @daniel_k

Zitat
Are you sure that compiling the DDK source results in the same driver included on Win8?


no, i'm not sure, but i saw many trim-depend functions in sources, doubtfully they were specially disabled in DDK version
storahci sources was also extended in win8.1 DDK, i dont know what's was improved

#4639Mov AX, 0xDEAD
Zitat von ⇗ daniel_k im Beitrag ¶ #4635
@Mov AX, 0xDEAD
Based on the report from @Andalu, XP, Vista and Win7 all require a filter driver to passthrough TRIM maybe?

No, filter driver is "Intel way" to wrote drivers ) I dont know why they separated driver
win7/8/10 dont have any filter drivers to process trim
#4640Mov AX, 0xDEAD⇗ @Andalu

Zitat von ⇗ Andalu im Beitrag ¶ #4636
I recognized the trim issue only with the storhaci driver from skullteria

what software you use to send trim to drive?
#4641daniel_k
Zitat von ⇗ infuscomus im Beitrag ¶ #4637
I am running an AMD Ryzen system for my XP install, would that be supported by your RSTe driver? I assumed it wasn't compatible with AMD.

Actually I'm talking about storahci. To have a definitive answer as to whether it supports TRIM or now.

Zitat
I still have your modded AMD 1.4.1.402 - did that support TRIM?


Pretty sure it supports TRIM, at least on Win7+.

#4642Andalu⇗ @Mov AX, 0xDEAD
I used always the Adata SSD Toolbox for my crucial and samsung SSD drives, never got issue with the other sata-ahci drivers tried.
I just connected a kingston drive and the 'kingston ssd toolbox 2.0.93' give me the message: "no kingston drives found" with the skullteria driver installed.

Here the Adata report for the trim not working on the crucial ssd drive:

P.S.: I have yet to find out why I always have trouble posting files in this forum... and it only happens here



Andalu has attached files to this post
#4643Fernando
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #4639
No, filter driver is "Intel way" to wrote drivers ) I dont know why they separated driver
1. Not all Intel RST drivers do contain an additional SCSI Filter driver named iaStorF.sys.
2. The SCSI Filter driver is neither required nor usable for "normal" SSDs, but older Windows Operating Systems up to Win7 natively don't let the TRIM command pass through the Intel SATA Controller to an SCSI disk drive. That is why Intel added the SCSI Filter driver.
#4644Mov AX, 0xDEAD
Zitat von ⇗ Fernando im Beitrag ¶ #4643
[quote=Mov AX, 0xDEAD|p4643]
2. The SCSI Filter driver is neither required nor usable for "normal" SSDs, but older Windows Operating Systems up to Win7 natively don't let the TRIM command pass through the Intel SATA Controller to an SCSI disk drive. That is why Intel added the SCSI Filter driver.

Sorry, but i dont understand you, filter driver specialy block trim command before transfer to any disk controller for preWin7 OSes ? or it pass it to companion - main intel ahci/raid driver directly ?
i saw some time ago, this filter read setting from registry and has ability to block trim command if forced by user
#4645Fernando⇗ @Mov AX, 0xDEAD:
The real SCSI SSDs need the UNMAP command for cleaning the SSD cells (= similar to the TRIM command regarding its function), but old Windows Operating Systems don't support the UNMAP command. The addition of the SCSI Filter driver helps to let the TRIM command pass through the Intel SATA Controller into the SCSI drives.
#4646Mov AX, 0xDEAD
Zitat von ⇗ Fernando im Beitrag ¶ #4645
@Mov AX, 0xDEAD:
The real SCSI SSDs need the UNMAP command for cleaning the SSD cells (= similar to the TRIM command regarding its function), but old Windows Operating Systems don't support the UNMAP command.

OK, this now clear, but most new RST (13.x.x. and up, not RSTe) drivers in their INFs support only AHCI/RAID controllers, no SCSI controllers, why still filter installed ?
EDIT: or in raid mode controller become scsi controller ?
#4647Fernando⇗ @Mov AX, 0xDEAD:
All Intel RSTe drivers and the Intel RST ones from the v11.5 series up to the v15.9 series do contain the SCSI Filter driver. This permits the TRIM support for all SSDs (non-SCSI and SCSI). If the user runs a modern Windows from Win8 up, the driver named iaStorF.sys is installed, but will not be used. That is why the INF files contain different driver's course of action for Win7 and Win8-10.
#4648diderius6I compare the
STORAHCI driver from ⇗ @skullteria with the STORAHCI driver from ⇗ @Mov AX, 0xDEAD .
On the left is skullteria and on the right is move.
skullteria wins on harddisk and move on SSD
Dietmar

PS: Trim works only with the patched storport from Win 8.1.

#4649daniel_k⇗ @diderius6
Did you run the bench several times on HDD?

Please do a test for us, with storahci from skullteria, patch and use storport.sys from Mov AX, 0xDEAD, remember to fix PE checksum.

Zitat von Mov AX, 0xDEAD
i found issue in storport_w8: by default it force MSI Interrupts, fix to use standart interrupts:
offset_132b3: C6 83 CC 09 00 00 01 => C6 83 CC 09 00 00 00


Check performance and TRIM.


⇗ @Mov AX, 0xDEAD
Interesting, it's a pattern, didn't really pay attention, but all MS AHCI drivers are "written" as an IDE/ATAPI controller driver, class {4D36E96A-E325-11CE-BFC1-08002BE10318}, don't really need a lower filter.
On the other hand, Win81 NVME driver is a SCSI controller driver.

#4650diderius6The patched storport.sys works now also for the OFA nvme driver (I use the faster and more generic version 1.3).
Here is first test of nvme Optane 905P compare
storport 5.2.3790.4173  against storport 6.2.9200.16384 with patch.
I repeat the compare 3 times, results are always the same.
So, the storport.sys (on left site here) from Server 2003 is always a little bit faster than the one from Win8.1 with patch
Dietmar

 

Page 311

#4651daniel_k⇗ @diderius6

Thanks, so the Win8 storport is optimized for ... Win8 kernel.
Does try TRIM work on NVME?

Also try skullteria's storahci with MOV's storport.
I'd like to know if the non working TRIM is because of the driver itself or storport.
#4652diderius6First I test Trim with Storport 4173 and ⇗ @skullteria STORAHCI.
Does not work.
Then I test patched storport from win8.1 and storahci from Win8.1
Works, I use the Naraeon tool and the Adata tool for this. Both work.
#4653daniel_kWhat about patched storport from win8.1 and skullteria STORAHCI?
#4654diderius6⇗ @daniel_k

With patched storport from win8.1 and skullteria STORAHCI
the Naraeon tool fails (message "no supported device")
but the Adata tool works!!!
Is there an easy way, how I can test, if TRIM really happens
Dietmar

PS: Funny, on harddisk, the ⇗ @skullteria STORAHCI driver is even with patched storport from win8.1
much faster compared with storport from win8.1 together with Storahci driver from Win8.1;)).
On SSD, the combination of storport from win8.1 together with Storahci driver from Win8.1 is faster.
The result for SSD does not change at all with the combination patched storport from win8.1 and skullteria STORAHCI,
compared with storport 4173 from server2003. But suddently TRIM works!
#4655daniel_kDietmar, TRIM depends on storport then, it seems.

Even if stornvme still cannot work, storport from W8 (not W8.1), proved to be useful.
#4656diderius6⇗ @daniel_k

On a Samsung 970 pro 1TB nvme disk, even with the patched storport from win8.1,
only with the Naraeon tool a Trim can be performed.
Now, the Adata tool tells, no compatible sata drive found:))
Dietmar

EDIT: Now I think, no Trim was performed under XP on the Samsung 970 pro 1TB nvme disk,
no matter which version of storport is used. The version 1.3 and 1.5 of the OFA nvme driver can not perfom Trim under XP SP3 until now.
The Adata tool tells just the truth.
#4657infuscomus⇗ @diderius6

does the AHCI driver perform TRIM correctly? or does it have this problem too?
#4658diderius6⇗ @infuscomus

For the STORAHCI driver from Move together with the patched storport from 8.1
Trim works.
And to 99% I am also sure, that it works with the STORAHCI driver from ⇗ @skullteria
but only in combination with the patched storport from 8.1
Dietmar

PS: Until now, no trim is possible for any nvme device under XP SP3. But there is hope;))..
#4659genieautravail
Zitat von ⇗ diderius6 im Beitrag ¶ #4654
Is there an easy way, how I can test, if TRIM really happens

Try trimcheck

⇗ https://github.com/CyberShadow/trimcheck
#4660kukonosau⇗ @diderius6 Do you have acpi.sys for Windows Vista for Ryzen? Vista is unstable working and get BSOD sometimes.
#4661diderius6⇗ @kukonosau

For Vista I have no extra acpi.sys. Some months ago I see, that ⇗ @daniel_k works a little bit with Vista
Dietmar
#4662skullteriaYes, it will not work, because it  is a feature only provided by storport starting Windows 8. So, I had to disable if version was less than 8. However, if i remember, has a check
#4663infuscomus
Zitat von ⇗ diderius6 im Beitrag ¶ #4658


PS: Until now, no trim is possible for any nvme device under XP SP3. But there is hope;))..


our OFA NVMe driver was modified to work for 2003 storport - maybe this broke TRIM support?

does the original OFA NVMe driver work for XP with the modded storport?
#4664kukonosau⇗ @diderius6 Thanks. But where download @danielk acpi.sys for Vista x64 for Ryzen?  Vista BSOD sometimes causes old acpi or no?
#4665diderius6⇗ @infuscomus

This is a nice idea about Trim for the OFA nvme driver. I found this in the description of the OFA nvme driver version 1.3.
So it seems, that Trim can start from Win8
Dietmar

Driver building:
- For Windows 7, Server 2008 R2, Server 2012(TRIM disabled) and Windows 8(TRIM disabled),
 You may build the driver within WDK 7600, Windows 7 64-bit build environment or Visual
 Studio 2012 when configured for Window7 in Project Property.
- For Windows Server 2012(TRIM enabled) and Windows 8(TRIM enabled)
 You should build the driver within Visual Studio 2012 when configured for Windows8
 in Project Property.

PS: I just test: The original, unmodded OFA nvme driver do not work with XP SP3, even not with the very last storport.sys from   win8.1.

 

Page 312

#4666Andalu⇗ @daniel_k
I noticed some strange behaviors when my system boots in /nolowmem mode with WinXPPAE_v2 >4GB when I tried to use the aida64 linear test or to launch the edit command via windows prompt.
The existing hal.dll file has the sha-1 F5C40501F9CE35BF482CB039A90C086627D0BE48

Here's the two screenshots taken in two different booting, in both cases the issue happens on the first usb3 stick plugged.
On the first the edit command doesn't work and aida64 also seems to be "out of mind":



On the second, even if the edit command works, aida64 doesn't detect the usb3 stick connected and the device manager also shows a yellow mark:



In both cases, the 'famous' gs_caber_1.1.5.7 program doesn't work.


With the hal.dll (SHA-1: 8CBEC120FEB93D855AB1ED6FAD9A8D8223CC0E9A) from the hal_pae_fix package, I never had the usb3 devices unrecognized. Sometime the edit command didn't work but, at least, gs_caber_1.1.5.7, has worked always :)
#4667AndaluI also noticed some strange behaviors related to the "uaspstor.w8 for storport.w2003" driver but I need to know if I have the latest driver version.
#4668daniel_k⇗ @Andalu

Thanks for your reports, I'll review them later.
#4669diderius6Hihi, XP SP3 is best
Dietmar

The reviews of Intel 10th gen Core i9-10900K are now officially out and we've seen that Intel manages to hold its forte in gaming and overclocking abilities when compared to the AMD Ryzen 9 3900X and the Ryzen 9 3950X. Apparently, Core i9-10900K has a lot more overclocking potential than the default 5.3 GHz all-core Thermal Velocity Boost, which can be harnessed via LN2 or liquid helium cooling. Asus's in-house overclocker Elmor has managed to achieve just that by being able to hit a whopping 7.7 GHz on all 10 cores while also managing 6.6 GHz DDR4 memory speeds on the Z490 platform.

The initial trial with LN2 resulted in a BSOD so the team opted to use liquid helium (−269 °C). While this did provide enhanced cooling, it also resulted in the failure of one the memory modules. The remainder of the experiment was therefore conducted with 8 GB single-channel memory. Elmor could ultimately push the Core i9-10900K running on the Asus ROG Maximum XII Apex motherboard to 7.7 GHz (7,707.62 MHz to be precise) at a voltage of 1.194 V.

Interestingly, Windows XP was the used as the OS so as to support the Asus Turbo V Core overclocking utility and the input devices were likely using the PS/2 interface. This could be due to the fact that Windows XP lacks drivers for USB 3.0 and many other on-board peripherals, which should minimize interference while pushing the CPU to the hilt.

Apart from the CPU, Elmor could also overclock the G.SKILL F4-4000C18-8GTRG to 3,332.7 MHz or effectively 6,665.4 MHz DDR. Similar such memory OC records have been achieved on the Z490 platform by other overclockers as well.

Of course, these records are only meant to prove a point and mean nothing to most mainstream users. We also do not know how stable the system actually was or what were the results of benchmarks. Elmor does shout "Cinebench" at one point, but no results have been published yet. All said and done, it is good to know that Intel's flagship CPU has excellent overclocking potential, which should lead to some neat results even on air or AiO cooling.

⇗ https://www.youtube.com/watch?v=rDWirGE0u44
#4670daniel_k⇗ @diderius6

Are you going to be the first one here to try XP on Intel 10th gen?

Interesting, Intel planned to remove CSM by 2020, but all Z490 BIOSes still have it.
Good for us!
#4671YuriyCN
Zitat von ⇗ Andalu im Beitrag ¶ #4666
@daniel_k
In both cases, the 'famous' gs_caber_1.1.5.7 program doesn't work.


With the hal.dll (SHA-1: 8CBEC120FEB93D855AB1ED6FAD9A8D8223CC0E9A) from the hal_pae_fix package, I never had the usb3 devices unrecognized. Sometime the edit command didn't work but, at least, gs_caber_1.1.5.7, has worked always :)


In the file "hal.dll" (version 5.1.2600.5687), replacing the byte at offset 07B3C, to put byte 0xC3 instead of byte 0xC7 -- fix PM_Timer. Correction of the timer leads to an increase in the performance of the SATA AHCI driver up to 30%. I measure the speed of the SSD drive by copying a file of few gigabytes in size using Total Commander.

On Windows 7, the speed reaches 450 MB/s, but on Windows XP it is much lower - 180 MB/s. The speed limit is due to the SATA AHCI driver, because the SSD drive itself is much more productive. Replacing hal.dll with the patched one, I got a speed increase up to 260-265 MB/s. The byte at offset 07B3C has an effect. Fixing the remaining bytes does not affect performance, although I have 16 GB of RAM and use the PAE mode, maybe the "DMA32 PAE fix" on my processor and motherboard is not required.

You wrote a lot of technical information, but I'm not a hacker - I dont understand what to do about it. Can you make a ready-made solution - to patch the file ⇗ https://www.upload.ee/files/11521284/hal.zip.html and to fix PM_Timer, taking into account the normal operation of the PAE mode and the GS_Caber program, which stops starting when the patched file "hal.dll" is used. Or indicate which bytes at which offset are needed to fix, so that I can do it myself.
#4672ruthanZ490 is not big deal, still not PCI-E gen 4 and best cpu in all cores load is consuming + 100 W in compassion with 9900K which is already power hungery. I thing that X299 is better choice, CPUs consume  similar power and it has 40 PCI-E gen 3 lines instead of 16/20 of Z370/Z390/Z490.. it has otherwise same features and Quad channel memory doesnt hurt too.
#4673infuscomusI'm thinking of upgrading to AMD Threadripper later this year

I think it would be fun (and very silly!) to run XP on it too, if possible.

has anyone here tried installing XP on Threadripper?
#4674diderius6We have a new alltime record for USB3 in XP SP3
using uaspstor.sys with the last mod from ⇗ @infuscomus .
Problem in this is only,
how to lock down the fire on my USB port ^^
Dietmar

PS: Speed is about 1032 MB/s , still I am cooling..
#4675AndaluI haven't yet benchmarking an UAS device with this modded driver thanks to ⇗ @infuscomus but also for this driver I found a strange behavior on my system: once recognized as uas mass storage, the same device will continue to be recognized only if already connected during the XP booting. When connected post booting, it will no longer recognized. Nothing changes even plugging it to another usb port. When unrecognized, the only way to get another detection is to plug and then unplug any usb2/usb3 stick.
#4676Mov AX, 0xDEADAnother storahci comparison of SATA SSD "OCZ Arc100"

Strange low storahci_skullteria's performance, i didnt use storahci.reg, so probably speed depend on it
#4677diderius6⇗ @Andalu

I think this happens because of the very big current for harddisks in USB clothes.
The limit for USB3 is 800 mA and I think, the USB3 driver from Move just has something like a fuse,
not to let your USB port burn
Dietmar
#4678Andalu⇗ @diderius6
never had similar issue on another system where I used my UAS devices from long time.
#4679AndaluI started benchmarking the modded driver from infoscomus on a fresh XP installation using the nvme to usb3 adapter mounting my 970evo, but I have made a different test:
on the left the test made with the original WinXPPae2 hal.dll (sha-1 F5C40501F9CE35BF482CB039A90C086627D0BE48)
on the right the test with patched hal.dll (SHA-1: 8CBEC120FEB93D855AB1ED6FAD9A8D8223CC0E9A) from the hal_pae_fix package

 

I had similar results with the uasport drivers from Mov AX, 0xDEAD. Unfortunately, with the modded driver from infuscomus, I also got two 0xC2 bsod on five benchmarking attempts (even without the patched hal).
#4680Mov AX, 0xDEAD⇗ @Andalu
right screen is unreal, may be your "hal_pae_fix" package doesnt have hal_timer_fix ?

 

Page 313

#4681daniel_k⇗ @Mov AX, 0xDEAD, ⇗ @diderius6 and all others:

I did it! NVME driver for XP!!
Ported from Win7!!!

With all due credit to ⇗ @Mov AX, 0xDEAD, for helping me!

Quick bench on Samsung 970 EVO:
#4682diderius6⇗ @daniel_k

Waaaaooohhh:))))!!!
I want it soso much
Dietmar


PS: Спасибо большое :))!! ⇗ @Mov AX, 0xDEAD
#4683daniel_k⇗ @diderius6

Did a really quick test, seems stable, but consider it a beta.
AIDA64 cannot read SMART attributes, I believe because XP doesn't officially supports NVME class devices.

I'm so, so tired.

This one was really tough for me, even with ⇗ @Mov AX, 0xDEAD's help.
#4684diderius6⇗ @daniel_k

I just booted:)) the Optane nvme 905P with your new nvme driver.
storport.sys has to be changed against yours.
Here are benchmarks left is Optane, right is 970 pro 1TB
niccccccccccccceeeeeeeeeee:))..
Dietmar

#4685daniel_k⇗ @diderius6

Where are the benchs, man?
Please do a complete comparison between this NVME.W7 and NVME.OFA and also test performance between storport.W8 and storport.W7 for SSDs/HDDs.

Anyway, this driver should solve the issues with Samsung NVMEs, which are not stable with OFA's driver.

Good night and see ya tomorrow.
#4686diderius6⇗ @daniel_k

Here are the first bench,
now I go to bed,
here is 3:00 at night,
and tomorrow I have school:))
Dietmar
#4687OutbreakerDose someone know how to tell a driver .inf file to get the .sys files for the sp3.cab or driver.cab Archive (.\Driver Cache\I386\*)?
It works with some Windows .inf files like the printer drivers or the game controller drivers, but i didn't find anything to replicate this.

EDIT:
Now i remember again how i did it 8 years ago. I have to edit the DRVINDEX.INF and the LAYOUT.INF files too, and also put "LayoutFile=layout.inf" in the "[Version]" section of the driver *.inf file.
#4688Andalu
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #4680
@Andalu
right screen is unreal, may be your "hal_pae_fix" package doesnt have hal_timer_fix ?

I used the hal5687.dll from the hal_pae_timer_fix package and the results are correct now.



But I wonder which is the best hal.dll
It has become difficult to be sure which version of any file is the right one to use.
#4689Mov AX, 0xDEADPatch to fix yellow mark with Code 31 for UAS Driver (Windows 8 backport):

change stor_uas.sys in folder storport_w8 and storport_w2003:
1) 65005C00520061006900640050006F00 => 65005C00550061007300700050006F00
2) recalc cheksum
#4690AndaluAbout the issue I encountered on my system trying the uasport drivers from ⇗ @Mov AX, 0xDEAD, I can be more precise now.

I made some tests on the following devices (UASP protocol supported):
- NVME to USB 3.1 adapter (Micron JMS580 chip)
- USB 3.0 to SATA III adapter (Asmedia ASM1153E chip)
- USB 3.0 External Case for HDD (Micron JMS567 chip)

The behavior is the same for all of them, no difference using an HDD, SSD or NVME disk:
when plugged for the first time, after the driver installation and the requested reboot, the device (stayed connected to the card) is correctly recognized as UAS mass storage and you can plug and unplug it without issues in this XP session.
But for the next reboots or shutdown, the same device will be detected again only if already connected during the XP booting. When connected post booting, it will no longer recognized. Nothing changes even plugging it to another usb port. When unrecognized, the only way to get another detection is to plug and then unplug any usb2/usb3 stick.

UAS device connected after the XP booting is not recognized:



usb2 stick correctly recognized while the UAS device remains unrecognized:



usb2 stick ready to be safely removed:



UAS device recognized again as soon as the usb2 stick is unplugged:



During the benchmarking the UAS device correctly recognized suddendly become an 'unknow device'. In the properties there is the error code 43 (windows has stopped this device because it has reported problems) and in the details I can see the "USB\reset_failure" message. Under the same conditions, with the modded driver from ⇗ @infuscomus, I got the 0xC2 bsod.
#4691Mov AX, 0xDEAD
Zitat von ⇗ Andalu im Beitrag ¶ #4688

But I wonder which is the best hal.dll
It has become difficult to be sure which version of any file is the right one to use.


Intel MoBo need hal.dll + pae_dma_fix + HAL_acpitimer_fix
AMD MoBo need hal.dll + pae_dma_fix

HAL_acpitimer_fix:
usualy one byte patch, like 0x79->0xEB, HaliAcpiTimerInit procedure

pae_dma_fix:
complex patch, HalGetAdapter procedure

halmacpi.dll SP3 version has version 5.1.2600.5512, last known version for Windows XP is 5.1.2600.5687
#4692daniel_k⇗ @diderius6
From what I've seen, performance is lower than OFA's.
Anyway, it's final code from MS, highly compatible.

Please don't forget to test TRIM on SSD/NVME.
#4693canonkongI found several USB expansion cards from different chip manufacturers (ASMedia, VIA, Etron, Renesas, Fresco Logic, Ti).
Tested using USB official own driver and WIN8 transplanted driver.
WIN8 transplanted driver works on each USB expansion card, and the performance is better than the official driver of each USB expansion card.
I will test its performance on the USB3.2 GEN2X2 20Gbps expansion card latter.

Etron USB3.0 expansion card


Renesas USB3.0 GEN2 expansion card


VIA USB3.0  expansion card


ASMedia USB3.1 10Gbps  expansion card


ASMedia Official own drive


ASMedia with MOD driver
#4694diderius6⇗ @daniel_k

The problem in to test Trim under XP SP3 is,
that I do not know a single program for to trim nvme,
that works also under XP.
This is, because no driver for nvme for XP existed before.
May be here in the forum somebody noticed,
that his trim program works also under XP
Dietmar

PS: The Trim for nvme is different from the trim for SSD.
#4695diderius6⇗ @Mov AX, 0xDEAD ⇗ @daniel_k

Nice would be, to have a Tutorial and all the names of the used tools,
for backporting the nvme driver from Win7.1 to XP SP3.
Via this way, everybody can make some experiments for himself and
I can use it at school.
Dont know, how much work this will mean to write such a step by step Tutorial.
I would help you with this as good as I can
Dietmar

 

Page 314

#4696daniel_k⇗ @diderius6

Sorry, but a guide would be too complex, as the backporting process is.

In the mean time, another gift for you, latest Samsung NVME driver.
#4697diderius6⇗ @daniel_k

You never know, what you can reach, how big your power is,
until you try it:))
Dietmar

PS: I have done the experience in Mathematics, that when you try to explain to somebody a very complex Thema,
(I work in my free time on the Riemann Hypothesis, got already an amazing advantage there),
you have to rethink the whole process and at the end you are much better than before.
And the person, who listens carefull to you, at once tells you new ideas, you never had alone.
And even this may be a really hard work, you do not feel this..
#4698diderius6⇗ @daniel_k
First result for the Samsung nvme is, that this driver works with the for nvme patched version of storport from Win8.1.
This is very important, because this storport is generic as much as possible and works with all STORAHCI drivers.
With the storport.sys vers. 4173 from Server 2003, this nvme driver does not work.
With the patched storport from Win7.1 this Samsung nvme does not work, gives Code 10
Dietmar

PS: First I test the Samsung nvme driver on a 970 pro 1 TB from Samsung.
Some time ago, I heard, that from Samsung there was a Trim tool, which works under XP.
But I never got it.
#4699Andalu
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #4689
Patch to fix yellow mark with Code 31 for UAS Driver (Windows 8 backport):

change stor_uas.sys in folder storport_w8 and storport_w2003:
1) 65005C00520061006900640050006F00 => 65005C00550061007300700050006F00
2) recalc cheksum

The UAS mass storage devices are always correctly recognized in all conditions now. Many thanks ;)

Twice I still got the BSOD 0xC2 during the Crystalmark testing. Between yesterday and today already four times ... a little too much.
I'll try to change the benchmarking program's version.

The benchmarking tests for my 970evo mounted on the nvme to usb3 adapter are similar for both driver versions:
on the left the uaspstor.w8 - on the right the uaspstor.w2003

 
#4700daniel_k
Zitat von ⇗ diderius6 im Beitrag ¶ #4698
With the patched storport from Win7.1 this Samsung nvme does not work, gives Code 10

Didn't you make a mistake?

It works with my storport.w7 here.
#4701daniel_k⇗ @Andalu

Just to confirm, with the standard Mass Storage driver (no UAS), there are no issues at all?
#4702Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #4695

Nice would be, to have a Tutorial and all the names of the used tools,
for backporting the nvme driver from Win7.1 to XP SP3.
Via this way, everybody can make some experiments for himself and


I dont think that someone after reading any guide can change logic/loading of the any driver

Нужны знания сразу в нескольких областях чтобы уметь преодолевать постоянно возникающие проблемы, из минимального нужно знать и уметь:
- редактирование PE файлов (секции, где хранятся в файле, как загружаются в память, адресация секций процессором, таблица "релоков")
- как устроены записии в секции import, как они меняются после загрузки драйвера
- базовые инструкции i386
- какие существуют варианты инструкций CALL и JMP и как они "работают"
- варианты передачи аргументов в стек и выравнивание стека
- умение пользоваться документацией DDK Win7/Win8
- знать хотя бы в общих чертах какие новые механизмы появлятся в новых ядрах/драйверах, например что такое MSI или ETW и как без этого можно обойтись в XP
Ну и самое главное - уметь создавать эмуляцию функций, которых нет в ядре XP, иногда это просто копирование существующего asm кода из новых ядер win7/8, а иногда нет такого кода в принципе и его нужно сочинять "с нуля"
#4703diderius6⇗ @daniel_k

I will recheck but I am sure, that everything is, as I wrote.
Here are the benchmarks: On the left is Intel Optane 905P and on the right is Samung 970 pro 1TB.
One thing is the same as 2 years ago, when I make intensive tests with the OFA drivers:
The Optane drive shows always the same values, no matter if you copy hours of large files.
BUT: All other nvme disks show a very bad result. After 10 min of copieing large files, the read and write rate goes down as much as possible and when you do not give them short time for to get fresh air, in the end a normal harddisk is much faster than any of this nvme disks, that I tested! Because of this, I put all nvme disks out of my compis and only the Optane device stays
Dietmar

PS: This test is representativ. This values you get as a middle of 10 times running the diskmark test.

#4704diderius6⇗ @Mov AX, 0xDEAD

Thank you very much for the explanation.
My idea was, to write a step by step tutorial only for the nvme.sys backport.
And when somebody has really interest, at once this Tutorial can be used for to do next steps alone
Dietmar
#4705Andalu
Zitat von ⇗ daniel_k im Beitrag ¶ #4701
@Andalu

Just to confirm, with the standard Mass Storage driver (no UAS), there are no issues at all?

Until now no issue with the 'classic' mass storage devices, tried also with an UAS device connected.
Should I try something specific?
#4706diderius6⇗ @Andalu

Until now, I do not succeed to boot XP with the uaspstor.sys driver.
And no idea, why not^^
Dietmar
#4707daniel_k⇗ @diderius6

Samsung NVME driver works with the Intel Optane?
#4708diderius6⇗ @daniel_k
yeppp, and works there much better than with their own product:)). Optane nvme disks are simple the best,
but expensive.
I just recheck all different versions of storport that I have.
ONLY the storport with nvme patch from 8.1 works for the Samsung nvme driver.
It is stable. And this are very good news, because this storport.sys is already integrated in the
XP Setup CD from ⇗ @Outbreaker
Dietmar
#4709daniel_k⇗ @diderius6

Good to know and insane at the same time!
Samsung provides a generic NVME driver? Who would imagine that?!

So, what's the best driver in your opinion (speed and stability)? OFA, MS or Samsung?
#4710diderius6⇗ @daniel_k

Not so easy to say. I still do not give up hope, to build from the OFA source code an nvme driver,
which supports trim under XP. And to make a scsiport based nvme as ntbootdd.sys from it.
But this may be crazy hard work.
Both your backported nvme drivers are stable. I do not have any crash.
So, from generic aspect I would chose the Samsung nvme driver.
But until now, I have not done enough tests for to make a decision
and in the end all of the nvme drivers for XP are nice
Dietmar

PS: The diskmark values for the speed of an nvme disk say nearly nothing.
They are all very fast. But with heavy load, all nvme disks show speed less than a harddisk.
Only the Optane nvme disks can keep there full power for hours.

 

Page 315

#4711daniel_k⇗ @diderius6

I remember you had a problematic Toshiba NVME.
Do you still have it? If you do, please the MS and Samsung drivers with it.
#4712diderius6Here are the benchmarks for the Toshiba RD400 nvme device, which was one of the very first. All work under XP SP3.
On left is OFA 1.3 middle Microsoft and right is Samsung.
As you can see, the OFA 1.3 driver is the fastest.
All driver work without any problem, just stable on the Toshiba RD400. Problem have been with the OFA 1.5 driver (here not tested).
This may depend on the nvme version of the Toshiba RD400 device. I think it is 1.0e and later nvme devices are 1.2
Dietmar

#4713diderius6I just boot XP SP3 from the Optane 905P with the Samsung nvme driver from ⇗ @daniel_k .
So, via storport.sys from 8.1 with nvme patch,
this is really generic and this storport.sys can be used for all the programs that use the storport.sys 4173 from Server2003
Dietmar
#4714Andalu⇗ @diderius6 ⇗ @daniel_k
I'm sorry for the delay in my reply.
I tried both OFA 1.3 and samsung nvme drivers (the ms driver fails to install on my system).
Here the benchmarking tests for my 970 evo nvme with XP installed and storport.sys from from Windows 8.0 RTM:

 
#4715canonkong⇗ @daniel_k
Both Samsung and Intel nvme drivers can be used as general nvme drivers. For hard disks without official nvme drivers, Samsung or Intel nvme drivers can be used.
#4716canonkongI tested the latest usb3.2 gen2x2 expansion card. The win8 portable driver can drive it perfectly, and it works normally, and the uasp function is no problem. Because there is no 20Gbps USB storage device on the market, I can only test with 10Gbps USB storage device. Even for 10Gbps devices, it is obvious that the test result of usb3.2 gen2x2 20Gbps card is faster than that of usb3.2 Gen2 10Gbps card, especially the continuous write speed.
#4717Mov AX, 0xDEAD⇗ @Andalu, ⇗ @diderius6
don't mess with "storport.sys from 8.1", only storport.sys from Windows 8.0 RTM and Windows 7 exist
#4718Andalu⇗ @Mov AX, 0xDEAD
edited post, sorry for the mistake.
#4719AndaluHere the benchmarks for my nvme disks connected on the slot m.2 with the MS nvme driver thanks to @daniel_k.
XP booted from my crucial SSD.

Samsung 970 evo nvme:


Sabrent rocket nvme:
#4720AndaluHere the benchmark for my crucial BX300 SSD with the Intel RSTe_4.7.0.1117 driver.

#4721daniel_k⇗ @Andalu

Is it caching or something? Crazy results.

Do you have timer patch installed?
#4722Andalu⇗ @daniel_k
do I need to install the timer patch necessarily?
I'm trying with the write cache disabled.
#4723ruthan⇗ @Andalu all are useless, nonsense numbers.. probably because of broken timer..
#4724AndaluWrite caching disabled on the sabrent nvme.
 

⇗ @ruthan
about the timer, can be enough these 2 shots?
I don't think the tests are useless at all since a change in the XP settings can be an useful information for other members reading as well.

edit: I forgot to report that PAE is not enabled and the hal.dll is the unmodified version 5512 as from SHA-1 reported.
#4725daniel_k⇗ @Andalu

If timer is not the issues, something else is wrong.

What are your system specs?

 

Page 316

#4726Andalu⇗ @daniel_k
my system: Asus Prime Q370M-C/CSM - i5 8400 - 64GB of ram - integrated VGA - Crucial BX300 SSD and Samsung 970 evo nvme. Nothing else.

The strange results happen only with the MS nvme driver + Intel RSTe_4.7.0.1117 sata driver (today I also got an iastof.sys BSOD using the ramdisk software).
With the samsung nvme driver the results seem to be normal.
#4727daniel_k⇗ @Andalu

There is something wrong with storport.w7?

But this doesn't happen for ⇗ @diderius6?!  

He'll test the latest patch, lets wait for his reports.
#4728diderius6⇗ @daniel_k
I just make a test with the PAE patch from Daniel, so now the compi has 32 GByte.
This value is only correct shown with the Samsung nvme. I boot XP from OFA 1.3, Microsoft nvme Win7.1, Samsung nvme Win10(?).
The Samsung nvme has a filter driver secnvmeF.sys, which should enable NVME_PASS_THROUGH .
This gives information about the nvme disk, but I dont find anything if this is also good for Trim. Until now no tool under XP for Trim of an nvme device.
I noticed, that Daniel modded his last storport.sys from Win7.1. It makes the nvme driver from Microsoft a little bit faster.
All nvme drivers are stable for me. But only for the Intel Optane, the values that CristalDiskmark shows, are always the same.
On the left is OFA 1.3, always the fastest, in the middle is Microsoft nvme by ⇗ @daniel_k and on the right is the brandnew(?) Samsung nvme driver also with mod from Daniel. All nvme devices are faster with 32 Gbyte ram than with 4GB ram.
The test values are correct, valide for the Intel Optane 905P.

#4729Andalu⇗ @daniel_k
with a ramdisk drive, Crystaldisk went into crisis, it will never have tested anything like it

#4730daniel_k⇗ @diderius6

Samsung NVME driver for Win7.
#4731daniel_k⇗ @diderius6

Did you try my storport.W7 with Samsung or OFA driver?
#4732diderius6⇗ @daniel_k

Waaaooh, your new storport.sys from Win 7.1 works now also with the OFA 1.3 nvme
driver,
in this moment is running benchmark:))
Dietmar

EDIT: For the OFA 1.3 driver, the benchmarks for storport from win7.1 or for storport from win8 are nearly exact the same.
EDIT2: The same is true for the Samsung nvme with its filterdriver. Hi Daniel, seems, that you are getting better every day:))!
I want Tutorial how to mod the nvme.sys!!!
#4733Andalu⇗ @daniel_k
even changing the system, the results are similar:

#4734daniel_k⇗ @diderius6

What about the Samsung driver? Does it work with storport.w7?


⇗ @Andalu

That's odd, it seems to benchmark cached memory area.
Why does it happen to you and not for ⇗ @diderius6?

EDIT: What about SSDs? Are they affected by this behavior?
#4735diderius6⇗ @daniel_k

Your new storport.sys from win7.1 works for all nvme.sys drivers,
that are today on the market for XP.

The generic for nvme modded storport from win8,
still works not on the Microsoft nvme
Dietmar
#4736daniel_k⇗ @diderius6

That's great, however I'm getting crashes here!
PAE is enabled?

Please confirm SHA-1: 3487593D540EC4D4B21EA7FA8B16212C77C9818A
#4737Andalu⇗ @daniel_k
also for my SSD the results are weird:
¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (315)
#4738daniel_k⇗ @Andalu
Are you using the storport.sys with the hash above?
#4739Andalu⇗ @daniel_k
of course!! (I hope to not have to upload another image also for that )

edit: see you later, sorry :(
#4740daniel_k⇗ @Andalu, ⇗ @diderius6 and ⇗ @Mov AX, 0xDEAD

Sorry for the confusion, it was my fault.
There was a corrupted usbxhci.sys which was causing random crashes.

storport.w7 works just fine, thankfully!

So, we've got them all:

- Generic MS Generic XHCI/USB3 driver
- Generic MS Generic/Samsung NVME driver
- Generic/Intel/AMD AHCI driver
- ACPI driver (needs improvements)
- UASP driver (needs more fixes?)

I think we are almost done.

 

Page 317

#4741diderius6⇗ @daniel_k

The SHA-1 match your last modded storport.sys from win7.1.
No crash at all. Yes, I have PAE enabled, 31.9 Gbyte I can see
Dietmar
#4742daniel_kCan someone please explain those crazy bench results ⇗ @Andalu is getting?

If it isn't a timer issue, what could it be?!
#4743diderius6The nvme driver modded by ⇗ @daniel_k  from Microsoft and the one from Samsung can both boot XP SP3
from the old Toshiba RD400 nvme disk.
So, they are more generic than the OFA 1.5 driver modded for XP,
because there XP hangs during boot
Dietmar
#4744diderius6⇗ @Andalu
May be, that the problem goes to a loaded uaspstor.sys instead of usbstor.sys
Dietmar
#4745Andalu⇗ @diderius6
uaspstor.sys is not present in my system now. I'm using the nvme driver from win7 and the Intel RSTe_4.7.0.1117 sata driver.

Could you please explain how you conduct the tests? which version of XP are you using, which acpi.sys, if you have applied the hal timer patch, if you have disabled write caching etc. so I can try a common way in benchmarking.
#4746diderius6I have a generic german XP SP3 with all updates that I found in last years.
This XP SP3 runs on any compi:)). With boot.ini I can chose between MPS, acpi, acpi with PAE, acpi Debug and MPS debug. All with different hal.
I have no good memories at the RSTe_4.7.0.1117 sata driver.
Make a try with the driver from Skullteria or try to install the nice XP SP3 version from

⇗ https://www.zone62.com/downloads/softwar...comment_id=2220

Dietmar

PS: acpi.sys I can boot with original, with acpi.sys from outer space ) and with very last acpi.sys 5048.
The new nvme drivers are always stable. I have this XP on Optane nvme disk, on harddisk, on harddisk in USB encloser, on Samsung 970 pro, on Samsung SSD, on the Toshiba RD400 now,
and on about 20 other harddisks.
#4747daniel_k⇗ @Andalu

A quick and dirty way to test other drivers are simply rename and overwrite the main driver file.

For example, rename storahci.sys to iastora.sys and overwrite the file in the ISO.

The filter driver is harmless.
#4748diderius6⇗ @Andalu

For tests I think is the very best a fresh installed XP. And before first test, make a copy of this XP, that you always have at start the same situation again
Dietmar

PS: Always to have the same fresh XP as before you can also do, when you copy the folder \System32
from an outstanding XP to a safe place. And then, just copy this folder System32 back.
#4749Mov AX, 0xDEAD
Zitat von ⇗ Andalu im Beitrag ¶ #4733
even changing the system, the results are similar

There is only two answers - Caching or Timing
On WinTimerTester screen you use acpi timer (3.15Mhz), which is not disabled (enabled in bios ?)
So probably CrystalDiskMark can't disable caching when access logical disk on NVMe
#4750Andalu⇗ @Mov AX, 0xDEAD
even if on a different XP installation (XP-IE 2020.05.05)
but with the same acpi.sys version, I have no strange results with both OFA 1.3 and samsung nvme drivers:
¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (315)

⇗ @daniel_k ⇗ @diderius6
thanks for the tips
#4751ruthanCrystal Mark is not only benchmark you can try other one, if results are different, or when you just copy the file, speed has to be different too.
#4752Mov AX, 0xDEAD
Zitat von ⇗ Andalu im Beitrag ¶ #4745
@diderius6
uaspstor.sys is not present in my system now. I'm using the nvme driver from win7 and the Intel RSTe_4.7.0.1117 sata driver.


uaspstor.sys uses stor_uas.sys(renamed storport_w8/w2003 with special patch) as storport.sys
nvme_w7 uses storport_w7 as storport.sys
RSTe_4.7.0.1117 uses storport_w7 as storport.sys

You need temporary change RSTe_4.7.0.1117 to other "nonstorport" driver to exclude interference with common storport.sys and repeat performance test
Disk drivers also live at CriticalDeviceDatabase and can be loaded even controller controlled by other driver, so need remove iastorA from this registry too
Dont forget to backup system32/config before changing boot disk driver
#4753Mov AX, 0xDEAD
Zitat von ⇗ daniel_k im Beitrag ¶ #4740
@Mov AX, 0xDEAD
- UASP driver (needs more fixes?)


Only one issue was found in UASP and already fixed, no more know issues
UASP driver can work with storport_w2003 or storport_w8, i dont tested uasp with storport_w7 yet, but will do and will report
#4754Andalu⇗ @Mov AX, 0xDEAD
another good tip, thanks ;)

I re-started with the safe stuff :), firstly I used my old, not updated Italian ISO. Then I did the bench for my Sabrent nvme first with the OFA 1.3 driver (on the left) and then with the nvme driver from Win7 (on the right). Write cache disabled:

 

Not exciting results but, at least, the way seems to be the right one.

Now I have to change the sata drivers, hoping that the system won't give me a blank screen on reboot.
#4755AndaluFinally I got the real results for my Sabrent nvme with both nvme driver from win7 and RSTe 4.7.0.1117 sata driver:

 

the results are better with the OFA 1.3 even in this case.

The next step will be to find a way to make work the storahci.w8 with the MS nvme driver.
I already got the 0x019 BSOD for three times.

 

Page 318

#4756ruthanOk im ready to debug with Z390 and existing installation, i  just replaced and acpi.sys (to fix 005 bluescreen) and have to connect booting disk to Marwell Sata controller (driver was already installed with older MB) to fix 007 boot problem, otherwise i would have to use some Sata controler with IDE non AHCI mode. PS2 mouse and keyboard is working. BTW i dunno why but PS2 and mouse keyboard is working with all OSes except Win10 where only keyboard is working..

  My problem so far, is that i see only 1 GB of 32 GB of mem in WinXP, so far, im no using any fixed hals.

  Now i have to make make working more devices:
1) Intel Sata, i hope that generic drivers as older Fernando will work with Paragon GPT driver - i have main data as games on big GPT disks.
2) Addon Nec USB3
3) Intel USB3
4) Realtek USB Lan..
5) On board NVME if possible, i just would like to have possiblity read some files from other OSes..

 After that "real" fan will start, 2nd WinXP GPU and bios profile.  I tested in on Z370 machine, there is this working, but i have not local input, because of not working PS2 for some reason (maybe something wrong with custom bios from Daniel) and i have to test newer USB3 drivers for it, i also waited few months for PCI-E USB2 controller, but it never arrrived, so i would have to reorder it.
#4757Mov AX, 0xDEADHi,

My tests with storport_w7 by ⇗ @daniel_k:
- Power irp deadlock with uaspstor still occur, still need special version of storport
- uaspstor_w8+storport_w7 doesnt work because uaspstor_w8 uses storportextendedfunctions above 25
- uaspstor_w2003+storport_w7 work, need one-byte patch to avoid deadlock
- Storahci_w8+storport_w7 doesnt work because storahci_w8 uses storportextendedfunctions above 25

To coexist different versions of storport need:
1) rename storport.sys to stor_xxx.sys or xxx_stor.sys
2) in stor_xxx.sys change unicode "\Device\RaidPort%d" to unique string, like "\Device\UaspPort%d" or "\Device\NVMePort%d"
#4758canonkong@Mov AX, 0xDEAD
Maybe we can use VIA its UASP driver, it can support Xp/vista/win7 32/64bit and also can work well.
#4759Mov AX, 0xDEAD⇗ @canonkong

Zitat von ⇗ canonkong im Beitrag ¶ #4758

Maybe we can use VIA its UASP driver, it can support Xp/vista/win7 32/64bit and also can work well.


I wrote about important issue with VIA UASP driver on first page of topic,  no fix at current moment
#4760canonkong@Mov AX, 0xDEAD
I used VIA UAS Driver on win7, it can support Safe Remove and work well. Maybe it needs to fix on Xp.
#4761Mov AX, 0xDEAD
Zitat von ⇗ canonkong im Beitrag ¶ #4760
@Mov AX, 0xDEAD
I used VIA UAS Driver on win7, it can support Safe Remove and work well. Maybe it needs to fix on Xp.

Win7 has other ways to recognize removable disks, WinXP depends only on driver and via driver say "no need safe removal"
Maybe this is OK, but if caching write is On we will get problem
#4762daniel_k⇗ @Mov AX, 0xDEAD

If stornvme.w7 + storport.w7 works on VirtualBox.
Can't you debug stornvme.w7 + storport.w8? Or maybe storport.w8 require an update like w7 had to support NVME?

What about porting storport.w81 as an all-in-one solution? I know you don't even have NVME, just asking.

Or even hacking ASMedia UASP?
#4763daniel_k⇗ @Andalu

When you have some spare time, please test W7 with the NVME hotfix/driver, so we can compare performance against XP.
That would be interesting.
#4764gordo999
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #4761
WinXP depends only on driver and via driver say "no need safe removal"

⇗ @Mov AX, 0xDEAD ...I remove it safely in XP anyway using Administrative Tools\Computer Management\Disk Management. Had a problem once with a sudden removal where the voltage transient caused by sudden removal may have written to the USB thumb drive, making it unreadable. I go into Disk Management, right click the thumb drive or USB external drive, and use Eject or Offline.

You might notice with a USB external drive that the drive light is still on even after safe removal while the drive is still plugged into a USB port. That means when you unplug the drive there is a possible voltage transient. Hopefully the heads are parked after safe removal but if they are not the heads can write to disk as the drive is unplugged from the USB port. That's because after the plug is pulled, with voltages turned on, the digital electronics is no longer synchronized to a clock and the circuits can do strange things. You can get around that by leaving the drive plugged in, if possible, and powering the computer down.

None of this is likely but after years in electronics/computers I have seen everything...almost.
#4765XPLives⇗ @daniel_k

Zitat von ⇗ daniel_k im Beitrag ¶ #4670
@diderius6
Are you going to be the first one here to try XP on Intel 10th gen?



No, that would be me.    But Did6 would get the overpriced XP compatible EVGA Z490 Dark.

Go with the cheapest 10th Gen CPU for testing.  Then upgrade to the flagship 11th Gen CPU to max out the chipset.

Though money should be spent on Sapphire Rapids.

Still waiting for DDR5 and PCIe v5.0 before a full upgrade with 512GB or 1TB RAM.

Just like Ruthan, I'd wait till low wattage 12 or 16 Core 65 Watt Intel CPUs are released.  I hate fans.

Zitat von ⇗ daniel_k im Beitrag ¶ #4670
@diderius6
Interesting, Intel planned to remove CSM by 2020, but all Z490 BIOSes still have it.
Good for us!



As for the talk of the BIOS's early demise, it won't happen just yet.  Too many legacy users like ourselves pushing to keep it alive.  Worst case Asus and AsRock would still carry legacy BIOS motherboards but probably charge more but produce less quantity.

And then you have AMD who may keep the BIOS alive if this is just an Intel push.

Daniel_K, nice to see another Asian back along with MOV AX back after the reported last posting.  Just like the Creative Labs incident don't give up the fight.

XPLives
#4766XPLives⇗ @Mov AX, 0xDEAD

Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #4595
Little survey:
I'd like to hear from Forum Users what XP issues are most critical to you today ?

Off the top of my head the most critical and maybe most useful to add to XP functionality for modern purposes.

Probably ACPI.sys for Windows 2000 SP0 and XP SP0 to work on SkyLake+ generations.

>4GB memory application usage not in 4GB chunks found in Server 2003 Advanced Server 32-Bit with max memory expanded from 64GB to 256GB memory support.

Or a way to use Server 2003 Advanced Server 64-Bit memory support might be better.  The idea is OS base memory not stuck at 3.2->4.0GB limit per process but expanded to 8.0GB/16.0GB/32.0GB which would be plenty or the entire 256GB.

4KB to 512 Byte Sector Translation native to allow Windows 2000 SP0 and XP SP to boot to internal drive up to 16TiB MBR.  No need for GPT.

Windows 2000 SP0 and XP SP0 OS USB Bootable or off storage device so OS loaded entirely into RAM Drive.  No need to wear out any UFD, SSD, or Hard drive.

Intel USB 3.0 stable XP driver can be installed on Windows 2000 SP0 and XP SP0.

NVME driver for Windows 2000 SP0 and XP SP0.
#4767Andalu
Zitat von ⇗ daniel_k im Beitrag ¶ #4763
@Andalu

When you have some spare time, please test W7 with the NVME hotfix/driver, so we can compare performance against XP.
That would be interesting.

Here the results for the 970evo nvme with the samsung driver on Win7 just installed:



I am also posting those related to XP although aware that there is still something strange (I think due to the hal.dll of which I am still looking for the best version for all situations):

#4768daniel_k⇗ @Andalu

Thanks for the benchs, always appreciated!

You're using my patcher, right?
If you do, it does automatically apply the timer fix.

By the way, hal.dll is not protected by WFP (Windows File Protection).
#4769Andalu⇗ @daniel_k
of course, your nice WinXPPae patch2.
WFP is disabled by default.
#4770ruthan⇗ @Andalu
Win 7 write performance should be higher.. Win XP data seems to be more accurate now.

 

Page 319

#4771daniel_k⇗ @Andalu
Run CPU-Z -> About tab -> Timers

Please post a screnshot of the timers.
#4772Andalu⇗ @daniel_k
that's here:
#4773Andalu⇗ @ruthan
I had seen the lower results in W7. No substantial differences on three benchmarking tests.
#4774daniel_k⇗ @Andalu

There is nothing wrong with the timers.

Is it a clean install of Win7 just for testing?

If so, mind to install the NVME hotfix and run a bench, please?

NVME hotfix KB2990941
Then install KB3125574, as it includes updated NVME/Storport as pointed out by ⇗ @Mov AX, 0xDEAD
#4775Andalu⇗ @daniel_k
unfortunately my HDD with W7 is dead some week ago and I never installed it.
I forgot to install the SP2 and the hotfix.

About the timer, in the bios there is no HPET settings, only the "System time and alarm source" now configured on "ACPI time and alarm device" but I have already changed it to "Legacy RTC"
without success.
#4776daniel_k
Zitat von ⇗ Andalu im Beitrag ¶ #4775
@daniel_k
unfortunately my HDD with W7 is dead some week ago and I never installed it.
I forgot to install the 2 hotfixes.

What a shame that it died.

Zitat
About the timer, in the bios there is no HPET settings, only the "System time and alarm source" now configured on "ACPI time and alarm device" but I have already changed it to "Legacy RTC"
but nothing changed.


Did you check the timers in CPU-Z after changing it to Legacy RTC?

#4777Andalu
Zitat von ⇗ daniel_k im Beitrag ¶ #4776
Did you check the timers in CPU-Z after changing it to Legacy RTC?

Yesterday I tried almost everything: 3 different XP images, 3 SDD, 2 HDD, 2 nvme and, at end, also by updating the bios without success .... I was going to go crazy
However, I just re-checked changing the "System time and alarm source" setting in "Legacy RTC" but the timers visualized in CPU-Z are indentical as before.
The last thing to try should be the dsdt table but here I can't do nothing.

Zitat von ⇗ daniel_k im Beitrag ¶ #4776
What a shame that it died.

The worst thing is that I can no longer find the image partiton with W7 installed
#4778daniel_k⇗ @Andalu
No need to mess with those timers if nothing changes, thanks for all the testing.
#4779daniel_k⇗ @Mov AX, 0xDEAD
Interesting, on VirtualBox, MS NVME W7 driver only loads at first VM initialization.
If you restart Windows, NVME won't start with an error code 10.

Samsung NVME starts all the time.
#4780infuscomus⇗ @Andalu

I'm just guessing here, but perhaps the "Legacy RTC" option in your BIOS isn't actually implemented in your BIOS? or implemented incorrectly?

can you try "ACPI Time" or one of the other options listed in your BIOS, along with a patched hal.dll? see if that behaves correctly?
#4781Andalu⇗ @daniel_k
for information only. Even with Windows7 updated the results seem to be similar to the previous ones:



Here with the MS nvme driver:

#4782Andalu
Zitat von ⇗ infuscomus im Beitrag ¶ #4780
@Andalu
I'm just guessing here, but perhaps the "Legacy RTC" option in your BIOS isn't actually implemented in your BIOS? or implemented incorrectly?
can you try "ACPI Time" or one of the other options listed in your BIOS, along with a patched hal.dll? see if that behaves correctly?

I don't know how to see if the enabled "Legacy RTC" option is then actually applied in a correct way. There are no other settings in the bios that can be related to the timer.
Asus bios do not seem to be the best around. The hal.dll is already the patched version by WinXPPae2. No difference if replaced with another patched version.
#4783daniel_kPorted AHCI driver from Windows 7.

Needs some improvements as it conflicts with Standard IDE controller (if there is one installed).
Interesting that this driver supports TRIM, initializes really fast and is not a SCSI driver.

Tried to completely replace XP IDE drivers, but it crashes.
#4784Doc.Brown
Zitat von ⇗ XPLives im Beitrag ¶ #4765
@daniel_k
Zitat von ⇗ daniel_k im Beitrag ¶ #4670
@diderius6
Are you going to be the first one here to try XP on Intel 10th gen?



No, that would be me.    But Did6 would get the overpriced XP compatible EVGA Z490 Dark.

Go with the cheapest 10th Gen CPU for testing.  Then upgrade to the flagship 11th Gen CPU to max out the chipset.

Though money should be spent on Sapphire Rapids.

Still waiting for DDR5 and PCIe v5.0 before a full upgrade with 512GB or 1TB RAM.

Just like Ruthan, I'd wait till low wattage 12 or 16 Core 65 Watt Intel CPUs are released.  I hate fans.




Seems XP works well for this new gen and without big problems if you look at this guide ⇗ https://community.hwbot.org/topic/196740-rog-maximus-xii-apex/

Some great overclockers submit great result with it also :  ⇗ https://hwbot.org/submission/4446037_safedisk_superpi___32m_core_i9_10900k_4min_1sec_766ms
#4785Andalu⇗ @daniel_k
here are the new benchmarks for my 970evo nvme with both samsung and MS driver in windows7, this time with write cache enabled.
For those of yesterday it was disabled as displayed in the screenshots

Samsung driver (better):


MS driver:

 

Page 320

#4786daniel_k⇗ @Andalu

Thanks, much appreciated!
Beware of benchmarking SSDs/NVMEs all the time, as the lifespan decreases with all those writes.

Samsung and OFA drivers are definitively faster, but for general use (at least during install), I'd stick with the MS ones.
Results on XP are always lower than Win7, probably expected as the later's kernel is optimized for newer systems.

Generic drivers are more compatible and reliable: Mov AX, 0xDEAD's XHCI driver proved this.

As I've said before, usually vendor specific drivers have hacks that may break functionality on other vendor's hardware.
#4787daniel_k⇗ @diderius6

Found something interesting.
Wrong device class affects functionality of drivers: with the current INF file, only the first device's SMART data can be read.

After changing the class code to SCSI and RAID Controllers, SMART atributes for all devices are available.

Device class in INF file for storahci is wrong:

 
Class=hdc
ClassGuid={4D36E96A-E325-11CE-BFC1-08002BE10318}



should be:

 
Class=SCSIAdapter
ClassGUID={4D36E97B-E325-11CE-BFC1-08002BE10318}


This is also true for RSTe drivers.

Please confirm this behavior on your systems.

#4788diderius6Hi ⇗ @daniel_k
I take a look at the original definition from Microsoft. They wrote that only this correct

SCSI and RAID Controllers

Class = SCSIAdapter
ClassGuid = {4d36e97b-e325-11ce-bfc1-08002be10318}

This class includes SCSI HBAs (Host Bus Adapters) and disk-array controllers.

Dietmar
#4789canonkongIt is working very well on B460+i5-10400...
#4790Mov AX, 0xDEAD
Zitat von ⇗ daniel_k im Beitrag ¶ #4787

After changing the class code to SCSI and RAID Controllers, SMART atributes for all devices are available.


my storahci_w8 has this fault, I did not think that it matters )
historically ide/sata controlers were in the HDC class  on old OSes
#4791daniel_k
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #4790
my storahci_w8 has this fault, I did not think that it matters )
historically ide/sata controlers were in the HDC class  on old OSes

Yep, that is ridiculous that a class/GUID would change the behavior of a device.

I was about to bother you about an issue with my ported IDE/AHCI, but I fixed it myself after some thinking/reading.
At first, thought I did some mistake, but after porting the x64 version, gave me the same errors.

Will put everything together and send you a PM later, in case you want to take a look at it/try it.

Complete replacement of original XP IDE plus AHCI supporting TRIM/STANDBY IMMEDIATE in IDE and AHCI mode!
#4792ruthanI used it for some retro stuff.. but here is some nice tool to inject drivers to existing installation to make it bootable, its working from Win2000 to Vista for other Windows, computer, where disk is connected.
  It has simple option to force use generic IDE drivers or import other drivers.
⇗ https://msfn.org/board/topic/181561-retr...comment-1182472

I now that before was possible to make same thing with some Regedit hive editing, but this is really simple GUI tool.. Hive is in Windows\System32\config
#4793canonkongAfter testing for days, I am sure it is a very stable USB driver. USB card from ASMedia, VIA, NEC, TI, Etron chips all on the same mainboard together.

#4794Andalu⇗ @canonkong
If I'm not wrong, the only chipset that seems missing is the Fresco Logic, so I'm adding it :)
here working in XP on a haswell board:



It works much better than the FL driver.
#4795canonkong@ Andalu
It can not support Fresco Logic Decive ID like:
ExcludeID=PCI\VEN_1B73&DEV_1000
ExcludeID=PCI\VEN_1B73&DEV_1400
ExcludeID=PCI\VEN_1B73&DEV_1009
But it can work for PCI\VEN_1B73&DEV_1100
#4796daniel_k⇗ @Andalu

I remember you had an issue getting USB2 speeds even with XHCI enabled in BIOS.

Did you try this W8 XHCI driver on that mobo to see if USB3 is properly enabled?
#4797daniel_k⇗ @canonkong

What a massive and crazy testing machine you've got! Impressivel!

This is real proper testing.
#4798Andalu⇗ @daniel_k
the 'crazy' motherboard was a B75 Ivy Bridge. Here are the sceeenshots for Ivy Bridge, Haswell and Coffee Lake boards:
Benchmarking a toshiba USB3 external hard disk drive 2TB

B75 Ivy Bridge


H97 Haswell


Q370 Coffee Lake (even with the write cache enabled the results are similar):
#4799Andalu⇗ @canonkong
that's good to know ;)
I was lucky to choose a card with the FL1100 chipset (but only thanks to the advice from ⇗ @daniel_k )
#4800infuscomus⇗ @canonkong

So many slots!!

where can I find a motherboard like that?

 

Page 321

#4801canonkong⇗ @infuscomus
It is ASRock H110 PRO BTC+ mainboard, it has 13 PCI-E slots, cost $40 USD on taobao.
#4802daniel_k⇗ @Andalu

Thanks for the benchs.

As I was expecting, the W8 XHCI drivers enables true USB3 speeds without any stupid "switch" driver. Just great!
#4803Mov AX, 0xDEAD
Zitat von ⇗ daniel_k im Beitrag ¶ #4802

As I was expecting, the W8 XHCI drivers enables true USB3 speeds without any stupid "switch" driver. Just great!

I dont sure about old PantherPoint intel controllers (devid=1E31), they has ehci and xhci as separate controllers connected to same usb2 pins
BeOS(Haiku) usb3 driver has hack to switch ports

I have this controller on lenovo notebook, but never used it with win8. On WinXP usb3 controller was hidden by ACPI DSDT Code
#4804Andalu⇗ @Mov AX, 0xDEAD
for both my B75 boards (DEV_1E31) it was necessary to apply the WPCRset trick as for the AMD XHCI driver.
#4805ruthanI had time to mess with XP existing installation porting on Z390:

What is good:
- from tree things which are making working system (Accelered graphics, Audio and Network), i have 1 - realtek HD audio is working. BTW are you using USB Lan adapters, or addon PCI-E cards?
- marwell Sata controller is working fine, im using some Asus 2015 driver - real driver is from 2011, i tried drivers from Win-Raid, from 2013, but i got 007B boot error

What is not good so far:
- RAM even when i installed Win-PAE-patch /4G i still have only 1GB of RAM, i dunno why.. im using 8 GB video card for 2D windows WinXP drivers, i need make other things working before i will add second XP videocard and i will mess with input switch and bios profiles. My CPU has not iGPU at all, in bios is reserved just 128 MB for iGPU.
 Im using just patched hal from halplusintelppmXPSP3, not any special boot.ini hal files settings etc.


- NVME, i tried both drivers 1.3 and 1.5, but always getting Code 10, even after reboot. intelppm.sys and storport.sys where copied to system before installation.


- USB, i installed AMDXHCI XP 276-Final v3 driver.. USB3 controller fine, USB3 hub fine.. after that some AMD USB2 hubs starting to be detected - again with code 10 - i dunno if its typical or because i have some USB2 drivers in my monitors and some external USB2 and USB3 hubs.. And some devices as Web Cam where recognized.
 After reboot - and WinXP loading screen, i got just black screen, after that my USB keyboard and mouse led starting lit what means that were somehow initialized, after that minute light is gone, screen is still black. I tried to use: amdxhc.sys and halmacpi.dll from PAE workaround folder - but its the same.
 

 Otherwise i saw in package, SSE2 Updates Rollback folder, what it is for and how to use?
#4806infuscomus⇗ @ruthan

this might be ACPI related - have you tried the modded ACPI driver?
#4807diderius6I just succeed to solve an crazy error about direct nvme boot Setup with BSOD 0x7B on the nice XP SP3 Setup CD at
⇗ https://www.zone62.com/downloads/softwar...comment_id=2220

I change WINNT.SIF in the i386 Setup folder and also in OEM folder the same to WINNT.SIF.backup with following content
Dietmar

; SetupMgrTag

[Data]
MsDosInitiated=0

[Unattended]
NonDriverSigningPolicy="Ignore"
DriverSigningPolicy="Ignore"

;FUI#[Unattended]
;FUI# Repartition=No
;FUI# WaitForReboot=No
;FUI# OemSkipEula=Yes

[GuiUnattended]
AdminPassword="*"
TimeZone=020

[UserData]
ProductKey=PD9WR-BDGBK-RPXKR-W3CK4-QHYF3
ComputerName=*
FullName="Unknown User"
OrgName="Unknown Organization"

[RegionalSettings]
LanguageGroup=1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17
SystemLocale=0409
UserLocale=0409
UserLocale_DefaultUser=0409
InputLocale=0409:00000409,0409:00020409
InputLocale_DefaultUser=0409:00020409

[Identification]
JoinWorkgroup="WORKGROUP"
#4808fruitbat1001I am running a Ryzen 2600x on XP with the Zone 94 Integral Edition. How do I enable multiple cores?
#4809Outbreaker⇗ @fruitbat1001
You can do this with the "Optional Patch Integrator v*.cmd" Script. You can also use any Windows XP ISO you want, you only have to rename the ISO file to "Windows XP Professional SP3 x86 - Integral Edition 2020.X.X (Vanilla).iso".
⇗ https://www.zone94.com/downloads/softwar...comment_id=2418
Also take a look into the "Patches\ACPI drivers" folder for your "Ryzen 2600X" CPU if you run into problems with the default acpi.sys driver file.
#4810diderius6I make some more tests with the uaspstor.sys driver.
It is fast as much as possible on any USB port,
but unstable. May be because of too high current >800mA.  It crashes whole compi or disconnects.
To boot XP SP3, I do not succeed with this driver
Dietmar

#4811ruthan
Zitat von ⇗ infuscomus im Beitrag ¶ #4806

this might be ACPI related - have you tried the modded ACPI driver?

Im using - acpi 6666 - 2019.10.20#2 (Intel&Ryzen) - OuterSpace, without proper ACPI driver, i cant even boot.
#4812daniel_k
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #4803
I have this controller on lenovo notebook, but never used it with win8. On WinXP usb3 controller was hidden by ACPI DSDT Code

If your acpi.sys supports all opcodes in the DSDT, change OSI string in acpi.sys from Windows 2001 SP2 to Windows 2012.
#4813daniel_k
Zitat von ⇗ Andalu im Beitrag ¶ #4804
@Mov AX, 0xDEAD
for both my B75 boards (DEV_1E31) it was necessary to apply the WPCRset trick as for the AMD XHCI driver.

Now that you're using WDF 1.11, what about trying the HCSwitch drive one more time?
Just edit iusb3hcs.inf and change 6.1 to 5.1 and delete the following lines:

 
[DestinationDirs]               
CoInstaller.CopyFiles = 11

[HCSwitch.NT.CoInstallers]
AddReg = CoInstaller.AddReg
CopyFiles = CoInstaller.CopyFiles

[CoInstaller.CopyFiles]
WdfCoInstaller01009.dll

[SourceDisksFiles]
WdfCoInstaller01009.dll=1

[CoInstaller.AddReg]
HKR,,CoInstallers32,0x00010000, "WdfCoInstaller01009.dll,WdfCoInstaller"


Then install the driver (System Devices -> PCI Bus device).

Beware, backup before if needed as it may crash during boot.

#4814Mov AX, 0xDEAD
Zitat von ⇗ daniel_k im Beitrag ¶ #4812
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #4803
I have this controller on lenovo notebook, but never used it with win8. On WinXP usb3 controller was hidden by ACPI DSDT Code

If your acpi.sys supports all opcodes in the DSDT, change OSI string in acpi.sys from Windows 2001 SP2 to Windows 2012.

I already thought about spoofing acpi.sys, but not tested on hardware, lenovo's dsdt is too smart, it hide Bluetooth device too )
#4815diderius6⇗ @ruthan

Take a normal harddisk
and install with Integrator v2.3.3b6
from website

⇗ https://www.zone62.com/downloads/softwar...comment_id=2220

After this, you know more
Dietmar

 

Page 322

#4816Andalu⇗ @daniel_k
when I try to update the XHCI controller (DEV_1E31) by the 'Have disk' option, I got the message: "The specified location does not contain information about your hardware".
#4817Andalu⇗ @diderius6
here too I had sometimes a sudden disconnection with the "Found new hardware" wizard started automatically

#4818diderius6⇗ @Andalu

For me this happens only with the uaspstor.sys driver
in combination with

USB\Class_08&SubClass_06&Prot_62

May be, that this is not the fault of the uaspstor.sys driver,
but just of the USB 3.1 ports, which can not give more than 800 mA current

Dietmar
#4819Andalu⇗ @diderius6
the same here, I talked about the USB UAS mass storage driver.
Never had issues with the USB3 driver backported from Win8 (USB mass storage driver).
#4820daniel_k
Zitat von ⇗ Andalu im Beitrag ¶ #4816
@daniel_k
when I try to update the XHCI controller (DEV_1E31) by the 'Have disk' option, I got the message: "The specified location does not contain information about your hardware".

The HCSwitch driver must be installed on the PCI bus device.
#4821Andalu⇗ @daniel_k
just tried via "add new hardware" wizard but I got immediately the 0x0A1 bsod. On manually restart, I got the 0x07B bsod (even in safe mode).
#4822Andalu⇗ @diderius6
to be more precise, here's what happened two days ago with a nvme disk mounted on an usb3 adapter:
#4823daniel_k
Zitat von ⇗ Andalu im Beitrag ¶ #4821
@daniel_k
just tried via "add new hardware" wizard but I got immediately the 0x0A1 bsod. On manually restart, I got the 0x07B bsod (even in safe mode).

Actually, you was supposed to choose update driver in Device Manager... not sure if this changes anything.
#4824Andalu⇗ @daniel_k
it installed correctly now but I got a 0x07B bsod on restart.

  

Here a part of the modded iusb3hcs.inf:

[Version]
Signature="$WINDOWS NT$"
Class=System
ClassGuid={4d36e97d-e325-11ce-bfc1-08002be10318}
Provider=%INTEL%
DriverVer=05/21/2012,1.0.5.235
CatalogFile=iusb3hcs.cat

[Manufacturer]
%STDDEV%=HCSwitch_PCIF,NTx86.5.1,NTx86.6.2

[HCSwitch_PCIF.NTx86.5.1]
%XHCI.DeviceDesc%=HCSwitch, *PNP0A08

[HCSwitch_PCIF.NTx86.6.2]

[SourceDisksNames]
1 = %DISK_NAME%,,,""

[PackageInfo]
Name=iusb3hcs

[SourceDisksFiles]
iusb3hcs.sys = 1,,

[HCSwitch.DriverFiles]
iusb3hcs.sys

[DestinationDirs]
HCSwitch.DriverFiles = 12

[HCSwitch.NT]
Include = machine.inf
Needs = PCI_DRV
CopyFiles = HCSwitch.DriverFiles

[HCSwitch.NT.HW]
AddReg = HCSwitch.AddReg

[HCSwitch.AddReg]
HKR,,"LowerFilters", 0x00010000, %ServiceName%

[HCSwitch.NT.Services]
Include = machine.inf
Needs = PCI_DRV.Services
AddService = %ServiceName%,,HCSwitch.ServiceInst

[HCSwitch.NT.Wdf]
KmdfService = %ServiceName%, HCSwitch.wdfsect

[HCSwitch.wdfsect]
KmdfLibraryVersion = 1.9

[HCSwitch.ServiceInst]
DisplayName = %XHCI_svcdesc%
ServiceType = %SERVICE_KERNEL_DRIVER%
StartType = %SERVICE_BOOT_START%
ErrorControl = %SERVICE_ERROR_NORMAL%
ServiceBinary = %12%\iusb3hcs.sys
LoadOrderGroup = "Boot Bus Extender"


[Strings]
INTEL = "Intel"
ServiceName = "iusb3hcs"
STDDEV = "(Standard system devices)"
XHCI.DeviceDesc = "PCI bus"
XHCI_svcdesc = "Intel(R) USB 3.0 Host Controller Switch Driver"
DISK_NAME = "Intel(R) USB 3.0 Host Controller Switch Driver Install Disk"
SPSVCINST_ASSOCSERVICE = 0x00000002
SERVICE_KERNEL_DRIVER = 1
SERVICE_BOOT_START = 0
SERVICE_ERROR_NORMAL = 1
#4825daniel_k
Zitat von ⇗ Andalu im Beitrag ¶ #4824
@daniel_k
it installed correctly now but I got a 0x07B bsod on restart.

Thanks, what a dumb driver... will see if I can debug it later.
#4826Andalu
Zitat von ⇗ diderius6 im Beitrag ¶ #4818
May be, that this is not the fault of the uaspstor.sys driver,
but just of the USB 3.1 ports, which can not give more than 800 mA current

Dietmar

I don't know if the issue can depend from the power. I tried booting with two UASP devices and two USB3 sticks already connected during the boot and I had not issues.
I got a blank screen only with five devices connected during the boot (2 UASP + 3 USB). Tried 3 times, no difference (5 devices are a bit too many)
#4827ruthanSome progress.
Its really about "right" driver i dont believe that my machine and porting to existing installation is something special.. but maybe only some additional driver adjustment (my guess are some files dependency.. which are not here, when you just install only clean driver..) are needed in compassion just just integration of drivers to cd.

 I got new shipment :) of drivers:
 Generic SATA+AHCI driver v1.3 - no lock, code 37 on device after installation, but
 storahcisetup skullteria - its working, SSD and CD-ROM are fine, unfortunately its seems to not compatible wiht paragon GPT driver - or not at least without reinstallation (but i doubt that it will help, i will try to move GPT disk to Marwell controller).

 USB - Generic USB 3.0 xHCI driver v1.1 (Windows 8)
 Its much better that anything before, i finally hub installed all USB2 hubs without code 10, devices where find right after hubs installations.. Include mouse and keyboard and they worked right away. Even USB Lan was found and tried to connected to internet, but wasnt able to.. only keep trying.. i did not install driver for it, some Realtek 2016 driver was just found it system. Im not sure, if it was for my USB3 Gigabit lan, or just some for older USB2 100 Mbit lan.
  Even after shutdown and boot to Win10, it seems that USB LAN adapter were stuck badly and not worked.
 
  Unfortunately after reboot, got when Bluescreen when i should get Logon screen with  error:
  0x000000x8E (.. and some others see photo) . I wonder if is possible track, if problem is USB related (i didnt really mess with anything else in that boot session) and if possible to trace it to some device (there are some sub numbers). I had some incomplete USB driver for Web cam (MS HD 3000) before reboot, because driver installed need working internet.

  If is not problem with device driver, it means that driver is much better, what others but still not good enough - still has some bugs.
#4828ruthanWith Marwell Sata controller is data GPT disk working fine, so i can now access to my data.

Now i really need to solve that 1 GB of ram problem.. to make system good enough for usage, other things are "optimal", no show stoppers.

Optimal things:
- working USB - i can bypass it with better PS2 gaming and mice, now i have clumsy ones for install
   -  working USB LAN - again, i can bypass it with addon PCI-E NIC
   - i also reordered new USB2 PCI-E controler with MOSCHIP, but it would take at least month until it will arrive from China
- make NVME drives readable

Otherwise timer - seems to work fine, no negative values.
#4829diderius6Via boot with the uaspstor.sys driver I succeed to go away from BSOD 0x7B. This is a copy from a working XP SP3, put to the uaspstor device. Everything is ok with the registry and the HIVE software and all the other files there. This error can be exact reproduced with another XP SP3 image also.
For service of uaspstor I use Group Boot Bus Extender start=0 and the same for XHCI and USBHUB3. Bye the way I noticed,
that Group System Reserved loads before Boot Bus Extender and this before SCSI miniport.
Now comes a BSOD, that I have never seen before.

SESSION3_INITIALIZATION_FAILED

BSOD 0x0000006F (0xC0000102, 0x00000000, 0x00000000, 0x00000000)

Dietmar

PS: It seems, that this driver has a problem to load correct the Hive software.
May be, that the driver uaspstor.sys has a problem with smss.exe.

EDIT: Before first boot with the driver uaspstor.sys I can load the hive "software" from that USB device on an external XP.
But after first boot, I cant load this hive "software" again by an external XP. This simple means, during boot with the uaspstor.sys driver,
the CRC checksum of the Hive "software" is destroyed.

This I get via F8 (Safe Mode):

#4830KeeganHi Everyone,

I've been attempting to install windows XP on a modern device now for some time without success.  My main issue is the BSOD 0x7B after the windows setup, is anyone able to assist?

I've tried a bunch of drivers for what should be the correct storage controller without success. I run in to the issue with some drivers whereby they are too large to fit on the 1.44mb floppy disk.

My setup:

- HP ProDesk 400 G1 SFF
- Intel Haswell H81 Chipset motherboard (DEV_8C02)
- 250GB SSD formatted
- Genuine XP CD
- USB floppy drive with 1.44MB floppy disks
- BIOS set to AHCI mode

 

Page 323

#4831diderius6⇗ @Keegan

Try

⇗ https://www.zone62.com/downloads/softwar...comment_id=2220

This is a very nice generic XP SP3,
which runs on nearly every compi
Dietmar
#4832Keegan⇗ @diderius6

Thanks for your help, I would really like to avoid installing a cracked XP if possible. If I can't figure anything else out or get further assistance i'll give it a shot.
#4833ruthanI tried NEC \ Renesas USB3 addon card (PCI\VEN_1912&DEV_0014&SUBSYS_00000000&REV_03 - 720x - its combo 4 ports + 1 internal and its even has USB3 front header) with Generic UBS3 driver. Which is tricky one, even with Windows 10.. But i have no alternative, i have only VIA USB3 ones, which would be probably even worse, no Fresco.. ASM 3xxx which need longer than PCI-E 1x slot, which i would sacrifice, because other cards - i plan to use 3 GPUS for (Win98 (i dunno if physicaly but with KVM for sure) / XP and WIn7+) so long slots are full.  So i would have order ASM 1xxx with only shame is that i never saw it with more that 2 port.

  Regardless with NEC is working with XP even after reboot with USB LAN adapter, so im now online. Bluetooth and FLashdisk are working too. So problem is really with Generic USB + Driver and Intel USB3 controller, or Intel USB3 controller and in synergy with some type of device (i have lots of them.. even some TV sticks, Doplhin bar for WIi emulator, some remote etc, so maybe more complex text that someone did before).

 Even if would be NEC more realiable.. it still sucks, because its not working for bios, so it would need still have to mess with 2 keyboards and mice. So, its getting better, with some annoyance i my XP setup could be ready for normal use, if someone will solve that 1GB of RAM problem.. Any ideas, in the history i saw some alternative hals etc, is it now dead thing?
#4834ruthanI have tried magic XP SP3 distro with these options:
- Integrated Sata/AHCI driver
- NVME 1.3
- ACPI patch
- PAE 4GB RAM patch
-Remove drivers packs base

 I did not used USB3 driver to had room to mess with them later, i also disconnected all disc, include NVME to i dunno yet if it will working.. im now making clean disc image to have possibility easily return to point zero..
 When i had NVME connected, install see target Sata disc as letter E and NVME which is GPT as unformated to MBR disc, so i get affair that it will try to install bootloader on it or otherwise mess with data.. I have computer under table and case is full of card, so disconnecting of NVME with special cooler was quite a mess. I still dream about standard bios feature to disable some disc without disconnecting.

  I had some strange behavior when i tried to use target disc connected to Marwell controller, all setup copied all data.. but after that it returned to partition screen (target partition was still shown as unformated), there is small chance that disc sata cable, was wrongly connected, but i doubt it.. so maybe some script problem, when i tried to boot from disc some data where here.. When used Intel Sata on board port, it worked fine.

 So far one big difference discovered, i see full 4.00 GB of ram.. that is difference.
 Question why.. Is Win-PAE-Patch supposed to that? I have idea that my original install is not in english so maybe that is problem and patcher is not patching what supposed to, but im getting patching that patching was ok, except on presented files.

 List of unknown devices seems to be same as with my existing install.. now i will try to mess with NVME a USB3.
#4835gordo999
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #4803
On WinXP usb3 controller was hidden by ACPI DSDT Code

⇗ @Mov AX, 0xDEAD ...I wonder about that. I am using my mainboard (B360M chipset) to run XP, W7 and W10. Can I mod the BIOS for XP only? Also, is there anything in BIOS related to com ports and debugging mode?

I am thinking the BIOS may be coded to exclude XP, I don't want to change BIOS code that will affect W7 and W10. I know the Intel setup files for USB drivers are written to exclude versions of chipsets after Skylake. The code references Skylake.
#4836ruthanOther news..

- NVME driver installed a can see disc in disc management just fine and again question where could be difference?
- GPT loader is not really working with Universal Sata. I can see disc in Device manager or Disk list. I have smaller 256 GB which is at least listed in disc managment (but has not letter and its not possible to assign it because that is it thing GPT loader thing - which should be done automatically). Big data disc - 4TB disc i dont see at all - true is that with old install i have installed some 3TB+ disc unlockers.. which where bundled with MB software or i thing with Acronis etc. Maybe they are needed.
   I guess that with Marwell Sata driver it would be ok, but need to test to be sure, if it is Sata driver thing (probably) or some unlocker is needed.

To magic distro:
- i thing that would make add some realtek HD optimal package to have sound out of box, there is just one old universal driver and virtually everybody have it onboard..
- at least some portable Pspad or Notepad++ would help too, there is option to install much stranger things in install Wizzard.

I discovered what means that SSE2 Updates Rollback package, its for CPU which are not supporting SSE2, that is not our thing.
#4837gordo999
Zitat von ⇗ Keegan im Beitrag ¶ #4832
I would really like to avoid installing a cracked XP if possible.
⇗ @Keegan ...did not catch the beginning of your post...have you tried upgrading an installed XP SP3 to the unofficial XP SP4 upgrade? The SP4 upgrade has drivers that can help get you past the standard boot BSOD errors of 0xA5 and 0x7B. Then you can use daniel_k's AMD USB driver. I have done a repair install using the slipstreamed XP SP3 disk with the SP4 unofficial upgrade. It adds all the latest updates. I have daniel_k's USB driver integrated into the installation.

If you try a repair install you must first change a setting in nlite before merging SP4 with SP3, otherwise the repair option does not appear during repair install. I can look it up if it interests you. To my surprise, without the nlite change, SP4 installed a completely new XP installation in parallel with the existing one. I could boot from either installation.
#4838ruthanOk, its like a though.. with Marwell i can see 4TB disk is Disk management (un only as 2 TB one.. - i have to check on migrated machine if its ok or not.. maybe its just MS stupid forecast.. - if not some unlocker is really needed), but still not letter assigned and same as for smaller 256 GB disk. If my memory serves - integrated GPT loader demo is just 8.x and last version 10.x could be problem.. Or maybe integrated version has some other managment which i dont know.
#4839ruthan⇗ @Keegan - only other way is install it on older machine, virtual machine and migrate installation and use Sata controller with IDE bios and replace acpi.sys .. and after that install all new nice drivers, that is almost as my migration way of use old install..
 But its really more time consuming and new more knowledge.

 Or you can try inject Sata drivers (to bypass need of non AHCI controller for first boot) on your own to iso - where is proven that nlite is botched.. or with driver injector which i posted few days ago - but its unproven.
#4840gordo999
Zitat von ⇗ ruthan im Beitrag ¶ #4839
where is proven that nlite is botched.. or with driver injector which i posted few days ago - but its unproven.
⇗ @ruthan ...I found out the hard way that if you use nlite on XP you have to use the XP version AND you have to run it on an XP installation. Otherwise it fails. I have run it on an XP virtual machine and on my current XP installation with no errors. If you run an XP integration on W7 or higher, it fails and if you use an nlite version higher than XP it fails on an XP integration.

I have used nlite successfully to integrate XP SP3 with SP4 and I have added drivers from this site with no problem. I used the same integrated disk to do a repair install of XP. Having said all that, I'd prefer to do it directly without using nlite so I could learn the proper process.
#4841ruthanOk, with Generic USB driver on Intel USB3 controller - i simulated with clean install exactly same freeze - boot black screen. So its controller itself, or controller with combination with some device.. and its not USB lan and bluetooth because there are working fine with NEC controller. I installed only generic Windows inbuild drivers for my USB devices.. to it they were not recognized at all, or as HID devices.

 I also tested Gigabyte and Asrock 3TB+ unlocker, so luck.. But i found that my GPT loader is really version 10, so it could be just old GPT loader version.. i will test it.
#4842ruthanSo it like, i though with newer Paragon GPT driver, i can read and write from GPT disk fine, when from NVME what is nice.

It has some flaws:
- after installation it assign letter to virtually every partition even to EXT4 and HFS+ ones.. and EXT4 can be remove from disk console, but HFS+ dont, i always removed letter through some partition managers.. but it dont remember detail, it wasnt super easy.
- it love to mark partitions as dirty for scandisk checks.. and its deadly with combo when you have not working keyboard during boot, if im not wrong USB keyboard are usually initialized to at logon screen, so you can get very long checking pause.. or you have reset and connect PS/2 keyboard to skip, or somehow disable scandisk on boot.. or maybe make checking with other OS and do multiple reboots. Its annoying. Its checking every volume.. even if it can understand filesystem (what is quick its just 5-10s to).
- other problem is that all connected disk which are using GPT driver, are in system as portable and removable.. I never was crazy about XP disk hotplugin so i would prefer to disable it.

 To my honor, i reported maybe 5 years ago to Paragon, that GPT loader is not working with some disc controllers, but bug is still open - other priorities, on discontinued product now.. bla, bla.
#4843Outbreaker⇗ @ruthan
Was the Paragon GPTLoader v8 not the last version they put out? A user has even done some fixes for v8 ⇗ http://hardwarefetish.com/777-paragon-gpt-loader-3
#4844infuscomus⇗ @Mov AX, 0xDEAD ⇗ @daniel_k

testing nvme in VMWare and Virtualbox and the only driver that has worked so far is stornvme of windows 10

OFA nvme failed, Samsung nvme failed

even stornvme of windows 8 failed

can stornvme of windows 10 be backported?

edit:

I got stornvme driver of 10 to start by removing the security cookie, no crash this time, but no nvme drive shows up.


so is there something in storport of 10 that helps with nvme for VMs?

edit2:

I'm thinking to try and make a backport of storport 10
I can use some of the code from backported storport 8 that @Mov Ax 0xDEAD wrote but there are other functions in storport 10 that are called

extra functions called by storport 10:

IoGetAdapterCryptoEngineExtension
IoGetAffinityInterrupt
ExReleaseSpinLockSharedFromDpcLevel
PoFxIdleComponent
IoDisconnectInterruptEx
IoGetIoPriorityHint
KeFlushIoBuffers
EtwWriteTransfer
ExAcquireSpinLockSharedAtDpcLevel
ExAcquireSpinLockExclusive
ExAcquireSpinLockExclusiveAtDpcLevel
IoQueueWorkItemEx
ExReleaseSpinLockExclusiveFromDpcLevel
FirstEntrySList
PoUnregisterCoalescingCallback
PoRegisterCoalescingCallback
PoFxRegisterCrashdumpDevice
KeGetCurrentProcessorNumberEx
ExReleaseSpinLockShared
ExAcquireSpinLockShared
MmAllocatePagesForMdlEx
PoFxIssueComponentPerfStateChange
KeGetProcessorIndexFromNumber
KeQueryGroupAffinity
MmMapIoSpaceEx
PoFxSetComponentLatency
IoPropagateIrpExtension
ExReInitializeRundownProtectionCacheAware
ExSetTimer
ExDeleteTimer
ExAllocateTimer
ExCancelTimer
PoFxRegisterComponentPerfStates
PoFxPowerOnCrashdumpDevice
IoReportInterruptActive
IoReportInterruptInactive
PoFxCompleteIdleCondition
ZwQueryLicenseValue
EtwSetInformation
RtlComputeCrc32
EmClientQueryRuleState
KeQueryUnbiasedInterruptTime
PoRegisterPowerSettingCallback
ExReleaseSpinLockExclusive
ExWaitForRundownProtectionReleaseCacheAware
IoGetGenericIrpExtension



but I don't know which of these functions need code and which can be stubbed.
#4845daniel_kCan't see the point of a working NVME driver on a VM?

Problem isn't the driver, it's the emulated NVME controller.

 

Page 324

#4846infuscomus⇗ @daniel_k

can we be certain this behavior wouldn't ever occur on real hardware?

earliest windows 10 1507 storport/stornvme work correctly in a VM

would I be asking too much to ask for a backport of storport/stornvme 1507?
#4847daniel_k
Zitat von ⇗ infuscomus im Beitrag ¶ #4846
@daniel_k
can we be certain this behavior wouldn't ever occur on real hardware?

earliest windows 10 1507 storport/stornvme work correctly in a VM

Please, please, there are no issues with the drivers.

Our goal is to get real hardware working, which has proven to be true.
If you do a web search for virtualbox and nvme, you'll find several problem reports and explanation as to to why it doesn't work on many builds of Win10 etc.

⇗ @diderius6's got NVMEs from Intel, Samsung and Toshiba working, with varying controllers.
⇗ @Andalu and I have Samsung NVMEs, which do work fine.

Do you even have a NVME driver to try? Seriously.

Zitat
would I be asking too much to ask for a backport of storport/stornvme 1507?


For me, way too much and I see no point of doing it. Unless ⇗ @Mov AX, 0xDEAD sees a reason for it and do it.

Newer versions are optimized for today's PCs, NUMA and the like, most missing imports are related to them.

#4848infuscomus⇗ @daniel_k

OK, you've made your point, I'll stop asking.
#4849ruthan
Zitat von ⇗ Outbreaker im Beitrag ¶ #4843
@ruthan
Was the Paragon GPTLoader v8 not the last version they put out? A user has even done some fixes for v8 ⇗ http://hardwarefetish.com/777-paragon-gpt-loader-3

Last version is probably 10.0.16.12944 , i dunno why version 8 is integrated, if these patches are included or not.. i can only say that its not working for me, but newer version is ok.
#4850ruthanOk i made working pae patch with old installation. Problem was logical, i installed patch from executed XP.. and these files are somehow protected, or restored after reboot. It would be nice to add some warning. Other there was only pro some old 486 hal, which im not using of course. Im not 100% sure if im using original file, or some already modified.

PAE will be enabled with RAM limited to 4Gb.

Patching ntkrnlmp.exe (Multiprocessor Kernel)... OK!
Patching ntoskrnl.exe (Uniprocessor Kernel)... OK!
Patching ntkrnlpa.exe (Uniprocessor PAE Kernel)... OK!
Patching ntkrpamp.exe (Multiprocessor PAE Kernel)... OK!
Patching hal.dll (Standard PC/Standard PC w/ C-Step i486 HAL)... Invalid file!
Patching halaacpi.dll (ACPI Uniprocessor PC HAL)... OK!
Patching halacpi.dll (ACPI PC HAL)... OK!
File halapic.dll (MPS Uniprocessor PC HAL) was not found.
Patching halmacpi.dll (ACPI Multiprocessor PC HAL)... OK!
File halmps.dll (MPS Multiprocessor PC HAL) was not found.


 So only difference between my new and old install behavior is old now working NVME driver (code 10). I retested it after i made PAE working is still the same.

 Update: Im using hal.dll from this thread which suppose to fix timers issues its from December 20, 2018, 22:20:18, so that is probably why, it was not patched.
#4851daniel_k⇗ @ruthan

Did you apply this?

Zitat von Mov AX, 0xDEAD
i found issue in storport_w8: by default it force MSI Interrupts, fix to use standart interrupts:
offset_132b3: C6 83 CC 09 00 00 01 => C6 83 CC 09 00 00 00


Remember to fix PE checksum.

#4852ruthan⇗ @daniel_k  Sorry, im a bit confused, this should be related to not working NVME or to something else?

 I got storport.sys - from October 22, 2007, 15:36:20 ⇗ @diderius6 so its not pached by new discoveries. In StorPort v5.2.3790.4173 folder is same file. Also in storahcisetup (skullteria) is the same file so if exists something better / newer i dont have it. Same file i have in my existing installation.
  But you are right magic distro has storport.sys + storahci.sys  and which have date from time of installation or making installation ISO, other files in system32\drivers.. have proper (old) dates.
 
  Should a i just overwrite it? And if yes just only storport.sys or storahci.sys too?

Zitat
Remember to fix PE checksum.


 Its beyond my skills, i would need whole file to use.

#4853ruthanI did binary comparision of storport.sys on both installations and they are the same. So patch is not applied probably anywhere.
#4854daniel_k
Zitat von ⇗ ruthan im Beitrag ¶ #4853
I did binary comparision of storport.sys on both installations and they are the same. So patch is not applied probably anywhere.

That patch I told you about it's not for the Server 2003 version of storport.

It's for the W8 ported Mov AX, 0xDEAD storport.sys.
I'll send you a PM.
#4855gordo999
Zitat von ⇗ Andalu im Beitrag ¶ #4816
when I try to update the XHCI controller (DEV_1E31) by the 'Have disk' option, I got the message: "The specified location does not contain information about your hardware".
⇗ @Andalu ...may be overly simplified reply but that message indicates it did not find an INF file in that location that applied to your hardware. Check the INF file to makes sure it specifies your hardware and that your hardware is not listed as excluded. Could be a syntax error in the INF file.
#4856canonkong⇗ @daniel_k
I tested the new MOD driver without WppRecorder. It is working very well for each USB expansion card from ASMedia, Etron, VIA, Renesas, Texas Instruments, Fresco Logic, also is working well on Intel and AMD USB devices.

#4857ruthan⇗ @canonkong Ok lots of controllers.. but what about devices ? Could you try some devices compatibility - i means mouse, keyboard, web cam, some complex device etc.. anything else that just flashdisk.. ? I have for example with Intel and some devices - blue / black screen after reboot.
#4858canonkong⇗ @ruthan
Mouse, keyboard, U disk, mobile hard disk, USB decoder, USB wireless network card, USB Bluetooth device all working well. I want to test more usb device, but no more other USB devices I have.
#4859ruthan@Canonkong: And you tested all of these on all controllers? I thing that Intel is most important.. because everyone has it on board. I plan do some testing too.
#4860canonkong⇗ @ruthan
Yes, I tested all of these on all controllers, also test them on AMD X370/B450/X570 with APU/Ryzen CPU. For intel, I only have H110/B250 mainboards.

 

Page 325

#4861ruthanSo i have to have something really ugly combination of devices.. to get black / blue screen.. i wanted to avoid it.. but it guess.. that i would have to install controller driver.. reboot.. install hub driver reboot.. and after one device after other try to reboot to find what is wrong. I only hope that just disable device would work, because other there is not way to block usb devices autodetection unless i will all disconnect at the start - what is additional hassle..
#4862Andalu
Zitat von ⇗ gordo999 im Beitrag ¶ #4855
@Andalu ...may be overly simplified reply but that message indicates it did not find an INF file in that location that applied to your hardware. Check the INF file to makes sure it specifies your hardware and that your hardware is not listed as excluded. Could be a syntax error in the INF file.

already solved ¶ here, thank you. The inf was correct, I had to look for the PCI bus instead of the USB controller.
#4863daniel_k⇗ @canonkong

Thanks for the tests, hopefully this driver wll be our final and best version ever!
#4864ExtremeGriefHi, I just saw this thread, but I don't want to read 325 pages. Can I get a guide or something, along with bug list and workarounds?
#4865fruitbat1001Check This Out if you are a beginner. Don't forget to integrate the required drivers: ⇗ https://www.zone62.com/downloads/softwar...ntegral-edition
#4866canonkong⇗ @daniel_k
10Gbps USB to NVMe device working on 20Gbps USB3.2 GEN2X2 expansion card. MS UASP driver is faster tha VIA UASP.
#4867daniel_k⇗ @canonkong
Really nice numbers!

As usual, all credits to ⇗ @Mov AX, 0xDEAD for the original patch. Just ported it to x64 and he helps me even if he doesn't care about x64.

VIA is known to have terrible drivers. Hardware is not that bad, using MS drivers (XHCI) is a completely different experience.

I know you're on Win7, but please really stress that drive. On XP, ⇗ @diderius6 and ⇗ @Andalu had problems:
¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (321)
¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (322)

Does the drive you're benchmarking have hight current requirements?
#4868gordo999
Zitat von ⇗ Andalu im Beitrag ¶ #4862
The inf was correct, I had to look for the PCI bus instead of the USB controller.
⇗ @Andalu ...The 0x7B error can be related to the disk controller. I know you are using NVME but when I get the 0x7B it's related to the Intel SATA AHCI Controller which is DEV_A352 on my B360 chipset. Here's what Microsoft has to say about 0x7B:

⇗ https://support.microsoft.com/en-ca/help...-inaccessible-b

I recall that my pci driver had an issue when the USB switch driver and coinstaller got installed along with it. Right now, all I have for a   PCI driver is pci.sys with hardware ID ACPI\PNP0A08. It has a *PNP0A08 in that section as well. The pci.sys version is 5.1.2600.5512 (xpsp.080413-2111).
#4869canonkong⇗ @daniel_k
I haven't encountered these problems yet. My USB to nvme device adopts jms583 chip scheme, and the bridging nvme device is Samsung's pm981a and sm961. This may have something to do with the system version itself.
#4870canonkongI found an interesting phenomenon. My B250 motherboard can work normally without any xhci driver. However, they will be recognized as PS / 2 devices by the system, even though they are USB devices. Maybe we can do something with the bios.
#4871ruthanThey are  bios related option USB legacy and Port 60-64 at least on Gigabyte board.

I have similar problem PS/2 mouse is working everywhere (Bios, XP, Linuxes, XP, Windows 7) but not in Win10 on Z390.
#4872canonkong⇗ @ruthan
Well,  I see. I found that my Gigabyte x570 motherboard also has this function.
#4873AndaluThe nice XP Integral Edition ISO installs fine also on the Sabrent Rocket m.2 nvme disk. For the first time on my system, the XP installation and the booting from a nvme disk is fastest then a SSD, thanks to the samsung driver from ⇗ @daniel_k and ⇗ @Mov AX, 0xDEAD
Never happened before with the OFA drivers.

Here the screenshots:
on the left, with the original intelppm.sys, the cpu temperatures is high even only with few working processes; on the right, with the modded intelppm.sys from the halplusintelppmXPSP3 package, the cpu temperatures become regular for the benefit of the system (and my ears):

  
#4874ruthanOk, i did other round ot testing with Intel USB3 on Z390 and clean install +  Generic USB 3.0 xHCI driver v1.1

- Install driver for controller itself is ok, but when i installed USB 3 hub and disabled all USB2 hub installs and all USB devices - non had any driver, i simulated boot problem. So unless it depends that is some devices even contronected - regardless that it is disabled and without driver. Problem is hub driver.

My id, wonder is someone has exactly the same controller?
Controller - PCI\VEN_8086&DEV_A36D&SUBSYS_50071458&REV_10
#4875ruthanBTW that WinXP scandisk is really annoying how its slow, how its possible that Win 10 scandisk is at least 10x faster? I dont thing that it is bruteforce, only probably not checking everything.

 

Page 326

#4876Andalu⇗ @gordo999
I made that attempt using a hard disk drive (no nvme). I tried by installing a different sata/ahci driver (Intel RSTe_4.7.0.1117) without success, same bsod on restart even changing storport version (v5.2.3790.4485 and v6.2.9200.16384 both tried). It's not a real issue, it was just an attempt to verify the effectiveness of a new development from @daniel_k. Pci.sys and hardware ID are the same here too for all my intel boards.
#4877Andalu⇗ @ruthan
no issue here with a similar usb controller: PCI\VEN_8086&DEV_A36D&SUBSYS_86941043&REV_10
#4878daniel_k
Zitat von ⇗ Andalu im Beitrag ¶ #4821
@daniel_k
just tried via "add new hardware" wizard but I got immediately the 0x0A1 bsod. On manually restart, I got the 0x07B bsod (even in safe mode).

Hi, found the issue, finally!

iusb3hcs.sys is a WDF driver. KMDF Runtime (Wdf01000.sys) MUST be loaded first, then all drivers depending on it.
The way we've integrated Wdf01000.sys is not 100% correct.

iusb3hcs.sys is installed as a lower filter for the PCI bus device, which is one of the first drivers loaded during boot. As the KMDF Runtime isn't loaded yet, Windows cannot proceed to enumerate devices, hence the 0x7B boot error.

Copy the following text and save it as Wdf01000.reg then apply it.
 
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Wdf01000]
"Group"="System Reserved"


This will make sure the service is loaded first.

Restart and install iusb3hcs.inf.

The driver will load, but is it going to work? Let us know!

#4879daniel_kOn a side note, this may interest you.

By default, XP disables the USB port when the connected device is ejected. So the external disk/pendrive is powered off.
But originally, the ported XHCI driver is a Win8 driver, which behaves differently unless you apply the following registry key:

 
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\usbhub\hubg]
"DisableOnSoftRemove"=dword:00000001
#4880Andalu
Zitat von ⇗ daniel_k im Beitrag ¶ #4878
The driver will load, but is it going to work? Let us know!

Same 7B bsod
#4881ruthan
Zitat von ⇗ Andalu im Beitrag ¶ #4877
@ruthan
no issue here with a similar usb controller: PCI\VEN_8086&DEV_A36D&SUBSYS_86941043&REV_10

Similar is not same. Well, i heard that it just working year back :) I thing that we are slowly getting here..
#4882daniel_k
Zitat von ⇗ Andalu im Beitrag ¶ #4880
Zitat von ⇗ daniel_k im Beitrag ¶ #4878
The driver will load, but is it going to work? Let us know!

Same 7B bsod

It's because of naming scheme of WdfLdr8.sys XHCI driver.
iusb3hcs.sys expects WdfLdr.sys.

Open \Windows\System32\Drivers and copy WdfLdr8.sys to WdfLdr.sys and try again.
#4883Andalu⇗ @daniel_k
it works!!... now ;)
#4884daniel_k⇗ @Andalu

Finally!

Check performance and if it changes those registers.
#4885ruthanI did one more round of WinXP stuff.

1)  I tried SDI tool driver installer for some unknown devices, its always a bit risk and it was able to recognize and install driver to couple of devices.. i dunno it these are just null drivers (right names for device manager) or they are actually doing something:
PCI\VEN_8086&DEV_A323&SUBSYS_50011458&REV_10\3&11583659&0&FC // Intel Z390 Chipset SMBus Controller
PCI\VEN_8086&DEV_A323&SUBSYS_50011458&REV_10   //Intel Z390 Chipset SMBus Controller
PCI\VEN_8086&DEV_A324&SUBSYS_72708086&REV_10 // Intel Z390 Chipset SPI (flash) Controller    
PCI\VEN_8086&DEV_A379&SUBSYS_88881458&REV_10 // Intel Z390 Chipset Thermal Subsystem    

2) I now that is not probably not useffull to lots of people but.. tool for remove drive letters from Mac HFS partitions is Paragon HDD manager 2015.. there some demos and 2014 free version, so you can try them.

3) USB:
- tried to detect more devices with working NEC USB3 controller, so USB keyboard and mouse is working fine and Logitech unified controller problem too.. mouse + logitech these are connected through USB3  hub.. but what is interesting that  for that hub.. i actually got multiple USB3 hub detections same as USB2 hub detection? Its this normal - it look like one hub is for port, or connected device.. I thing that windows 98 worked like that but i dont thing that Windows XP+ are working like that.
 I also have some unknow device.. with has not proper name, just something about descriptor failing.. i will post details later, im now making disk image with a bit improved system.
#4886XPWELL64There are 6 different ACPI Booting Modes in my BIOS. These are Acpi1.0B,Acpi3.0,Acpi4.0,Acpi5.0,Acpi6.0,Acpi6.1. Acpi5.0 is selected as a default setting. Does it brick my BIOS? I'll select 1.0B. It is locked. I'm using InsydeH2O BIOS.
#4887ruthanI continued with testing, but failed device was now gone, tested Webcam, also worked, but USB mouse cursor was dead (it worked only after 1st isntall, after that 2 reboots nothing, but with my NEC controller it could be still Temporary).. and later not long after basilisk start, even PS/2 mouse cursor froze. It could be new devices drivers and my Nec controller is also not stable.. but i because Intel one is not working at all its best what i can now do. I better controllers are on the way.

 Im testing NEC controller with Win10 too, so we will now, here as mouse working fine, only USB LAN never was reliable. I was suprised, but its working in bios, i had with other machine opposite experience.
#4888ruthan@XPWELL i guess that you would have to check manual.. but for Windows XP, now with patches should work same settings as for new Windows or Linux.
#4889Andalu
Zitat von ⇗ ruthan im Beitrag ¶ #4885
I did one more round of WinXP stuff.

1)  I tried SDI tool driver installer for some unknown devices, its always a bit risk and it was able to recognize and install driver to couple of devices.. i dunno it these are just null drivers (right names for device manager) or they are actually doing something:
PCI\VEN_8086&DEV_A323&SUBSYS_50011458&REV_10\3&11583659&0&FC // Intel Z390 Chipset SMBus Controller 
PCI\VEN_8086&DEV_A323&SUBSYS_50011458&REV_10 //Intel Z390 Chipset SMBus Controller
PCI\VEN_8086&DEV_A324&SUBSYS_72708086&REV_10 // Intel Z390 Chipset SPI (flash) Controller
PCI\VEN_8086&DEV_A379&SUBSYS_88881458&REV_10 // Intel Z390 Chipset Thermal Subsystem

2) I now that is not probably not useffull to lots of people but.. tool for remove drive letters from Mac HFS partitions is Paragon HDD manager 2015.. there some demos and 2014 free version, so you can try them.

3) USB:
- tried to detect more devices with working NEC USB3 controller, so USB keyboard and mouse is working fine and Logitech unified controller problem too.. mouse + logitech these are connected through USB3  hub.. but what is interesting that  for that hub.. i actually got multiple USB3 hub detections same as USB2 hub detection? Its this normal - it look like one hub is for port, or connected device.. I thing that windows 98 worked like that but i dont thing that Windows XP+ are working like that.
 I also have some unknow device.. with has not proper name, just something about descriptor failing.. i will post details later, im now making disk image with a bit improved system.
 
   

1) ¶ here are some answers to your questions
2) thanks for the info
3) can this image be useful? These are my three PCIEx to USB3 cards (Via, Nec, Fresco Logic) inserted at the same time on the Q370 board:
   
#4890ruthanDid grand disconnection.. and with Intel USB3 + HUB im now booting so my problem has to be with some device.. and for error is probably enough that is just connected.

 I will have to connect one by one and make rebooting marathon..

 

Page 327

#4891ruthanI found at least one "evil" device with not working with Intel USB3 + Win 8 driver, its USB TV stick.. Pinnacle 73e, even when i disconnect it once is driver installed im getting that black screen freeze, before logon window.
 
  I would be later interesting if there would be same problem with NEC controller..

What is working:
Xbox 360 controller
Monitor USB2 hubs
Microsoft Webcam 3000 HD

 Here is that evil driver maybe it will help with analysis.. It worked with XP fine for years.



ruthan has attached files to this post
#4892ruthanThere has to be other evil device - Logitech unified dongle, or X360 controller without installed driver, it depends simply which ports are used..
#4893Mov AX, 0xDEAD⇗ @ruthan

Zitat von ⇗ ruthan im Beitrag ¶ #4891
I found at least one "evil" device with not working with Intel USB3 + Win 8 driver, its USB TV stick.. Pinnacle 73e, even when i disconnect it once is driver installed im getting that black screen freeze, before logon window.


what happened if tv stick inserted after windows was fully loaded ?  what usbtreeview show on port ?
#4894IntiMD
Zitat von ⇗ ruthan im Beitrag ¶ #4885
1)  I tried SDI tool driver installer for some unknown devices, its always a bit risk and it was able to recognize and install driver to couple of devices.. i dunno it these are just null drivers (right names for device manager) or they are actually doing something:
PCI\VEN_8086&DEV_A323&SUBSYS_50011458&REV_10\3&11583659&0&FC // Intel Z390 Chipset SMBus Controller
PCI\VEN_8086&DEV_A323&SUBSYS_50011458&REV_10 //Intel Z390 Chipset SMBus Controller
PCI\VEN_8086&DEV_A324&SUBSYS_72708086&REV_10 // Intel Z390 Chipset SPI (flash) Controller
PCI\VEN_8086&DEV_A379&SUBSYS_88881458&REV_10 // Intel Z390 Chipset Thermal Subsystem



Pretty sure these are the chipset null drivers. They can also be found in Fernando's Intel Chipset INF AiO pack under the Cannonlake-H folder (CannonLake-HSystem.inf for DEV_A323 and DEV_A324 + CannonLake_HSystemThermal.inf for DEV_A379.)
#4895ruthan
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #4893
@ruthan
what happened if tv stick inserted after windows was fully loaded ?  what usbtreeview show on port ?


  I cant simuate it. Once install driver and reboot even when stick is removed im still getting boot black screen, installation is dead - maybe i will be able to fix it in safe mode, but removing some zombie devices.. maybe not. Maybe is controller stuck in some state and reboot is not enoug, but i thing that in did power down.. or it need unplug eletricity for the moment.
 Im also starting to thing that some installation order could have effect, im on the track to second not working devices.. and some patters, but so far i can say anything for sure. USBtree downloaded.
#4896ruthanOk, i have at least some example that device detection failure:
  =========================== USB Port7 ===========================

Connection Status : 0x02 (Device failed enumeration)
Port Chain : 1-7
PortAttributes : 0x00000000

======================== USB Device ========================

DriverKeyName : ERROR_FILE_NOT_FOUND

+++++++++++++++++ Device Information ++++++++++++++++++
Device Path : \\?\usb#vid_0000&pid_0002#6&1127c026&0&7#{a5dcbf10-6530-11d2-901f-00c04fb951ed}
Device ID : USB\VID_0000&PID_0002\6&1127C026&0&7
Hardware IDs : USB\DEVICE_DESCRIPTOR_FAILURE
Driver KeyName : -
Legacy BusType : PNPBus
Interface GUID : {a5dcbf10-6530-11d2-901f-00c04fb951ed} (GUID_DEVINTERFACE_USB_DEVICE)
Enumerator : USB
Location Info : Port_#0007.Hub_#0001
Manufacturer Info : -
Capabilities : 0x64 (Removable, SilentInstall, RawDeviceOK)
Status : 0x01806400 (DN_HAS_PROBLEM, DN_DISABLEABLE, DN_REMOVABLE, DN_NT_ENUMERATOR, DN_NT_DRIVER)
Problem Code : 43 (CM_PROB_FAILED_POST_START)
HcDisableSelectiveSuspend: 0
EnableSelectiveSuspend : 0
SelectiveSuspendEnabled : 0
EnhancedPowerMgmtEnabled : 0
IdleInWorkingState : 0
WakeFromSleepState : 0
Power State : D3 (supported: D0, D2, D3, wake from D0, wake from D2)

+++++++++++++++++ Registry USB Flags +++++++++++++++++
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\usbflags
GlobalDisableSerNumGen : REG_BINARY 01

---------------- Connection Information ---------------
Connection Index : 0x07 (7)
Connection Status : 0x02 (DeviceFailedEnumeration)
Current Config Value : 0x00
Device Address : 0x00 (0)
Is Hub : 0x00 (no)
Device Bus Speed : 0x02 (High-Speed)
Number Of Open Pipes : 0x00 (0 pipes to data endpoints)
Data (HexDump) : 07 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00 00 00 00 00 00 00 02 00 00 00 00 00 00 00 02 ................
00 00 00 ...

---------------------- Device Descriptor ----------------------
bLength : 0x00 (0 bytes)

-------------------- String Descriptors -------------------
String descriptors are not available (because the device has problem code CM_PROB_FAILED_POST_START


 I dont yet discovered which device is failing..


Im glad that i have not yet added XP videocard to machine, because i would probably now be mad from all that input switching.

Now i have plan to test all devices with Nec controller, after that get rid of it and change it for VIA with only  2 ports (so i will more dependent on external USB hubs).

I observation is that i never successfully booted with working Razer Death Adder mouse which is connected through extenal USB3 hub - on both NEC and Intel controller so suspecting problem here. Or it really needs install drivers, disconnect everything on Intel controller and reboot and after install devices.. or on individual ports on Intel controller..

 Lots of testing, im only sure that USB3 with Intel controller is not working how it should be..
#4897ruthanIts like matrix solving i would have probably setup some online sheet with all results:

I lost my patience with half working NEC controller, so i replaced with VIA one (PCI\VEN_1106&DEV_3483&SUBSYS_34831106&REV_01)

First time i god working Razer mouse throught USB3 hub and other devices are fine too:
- Gigabyte KB
- Genius Remove
- Asus / Broadcom bluetootht
- Logitech Unified sticks for wireless devices
- Xbox 360 fake (its working fine, MS wanter 20 bucks for such adapte, unoriginal was fraction of price) wireless receiver
#4898ruthanI hate USB3, keyboard on VIA controller is now working with XP, but dont with WIn10.. What is better MS or VIA driver?
#4899gordo999
Zitat von ⇗ daniel_k im Beitrag ¶ #4878
iusb3hcs.sys is installed as a lower filter for the PCI bus device
⇗ @daniel_k ...lost tract which driver is which? I am currently running your amdxhc.sys and usbd.sys. They are working fine. Is there an advantage to converting to the 'switch' driver? And is that driver from W8? Thanks.
#4900ruthanI have created online sheet with my USB debugging info - maybe someone will able to find some patern within:
⇗ https://docs.zoho.com/sheet/published.do...22a5b950420cb22
#4901ruthanLots of testing done.. online matrix, when i put it to matrix if see that is actually much worse than i though.

With Intel - virtually only keyboard, usb mass storage are working, but even mouse after reboot. What is good that stucks are temporary if disconnect problematic device and reboot i can now login.. Its really shame because for example im using my front case ports, which are connected to Intel a lot.. and if connect something there - i for example have some game controllers here - you thing that distro is dead.. if you dont have knowledge that this is big no.no.

 VIA is other matter - i never got black screen freeze is something is not working in can log into machine and all is fine.. only not working is Bluetooth dongle.. its not working even with Intel before reboot.. i abit suspect driver.. i have smaller one from net.. because Asus 500 MB driver is really scares me..  but with Nec is seemed as working (no exclamation marks at least and all virtual devices where installed).
  Other not working is my Gigabyte USB keyboard its its picky one.. its working before reboot i a bit suspect, that problem could be USB2 hub in the way - i have to test it..

  Is someone want to send some used drivers to debug, let me know. I found some 7 port powered hub to test - and migrate as much as possible devices to VIA controller.. but i need pause, life under desk phone as flashlight sucks..

  If we want to minimize damage, we have to analyze if my mouse is so special that is not working, or not.. because for some users without PS/2.. no mouse is real problem.. A bit better are USB LAN adapter, no net, no fun, but you can at least bypass it with some additional NIC, if you have enough slots.

 I will retest Pinnacle TV stick, if it is really one device, which cant lock system such way that even reboot not unlock it.. or i simply connected 2 locking devices and disconected only one.. but before i need make new image..
#4902mullUniversal 32bit Intel RST textmode driver v11.2.0.1006 mod+USB xHCI Host Controller (Windows 8.0 driver) Get error code STOP 7b 0x34, USB xHCI Host Controller (Windows 8.0 driver)+Generic SATA+AHCI driver Normal installation startup
#4903diderius6⇗ @mull

I also get sometimes during a new Setup of an original XP SP3 via Universal 32bit Intel RST textmode driver v11.2.0.1006
an unpredictable BSOD 0x7B.
Always it helps to change acpi.sys, but the underlying problem is Universal 32bit Intel RST textmode driver v11.2.0.1006 AHCI driver
Dietmar
#4904ruthan⇗ @mull - if you have PS/2 available i recommend install USB driver later after installation, its better to thing step by step.
#4905ruthanOk, i some good news.. TV stick locks is also soft - so its gone about reboot.

I now with powered 7 Port USB 2 hub managed to get, all devices working.. because on Intel controller is really only keyboard.. i tested also USB flashdisk it working on Intel too, but that is.

I connected case USB3 ports to VIA controller and they are working too. I also fixed USB bluetooth on VIA controller - solution was powered hub. Only not working device with VIA controller is now Gigabyte keyboard - i tried it directly on with powered hub, its input is dead.. only backlight just lit.. its device, is not using any special driver, its just some complex HID device.

 Because i was clever it the past i have new plastic USB covers, so it can lock.. evil Intel USB ports.. to not connect something to them by accident.. and lock WinXP by it.

  But its life.. os its not so nice, how to it could be my cheap 7 port USB hub, when i manipulate with device, when machine is shutdown, actually power up machine.. I had at least one reboot, instead of shutdown.

   BTW are these USB 3 controllers with 4 front ports + USB 3 front header fakes they are legit? I never had too much luck with them. Some manufactors, are only have 2 ports - Asmedia. Or 2 ports + header or 4 ports and no header..

 Otherwise i had some perioding mouse cursor freezes with MS drivers for VIA USB3 in Windows 10, so i had to install VIA driver from WinRaid collection.

 

Page 328

#4906canonkongUSB 3.2 GEN2x2 to NVMe device test. Because the CPU's single core performance is not very good, it does not run at the speed of 20gbps. But on the 3950x CPU, read and write speed ran to 2100MB/s!
#4907Mov AX, 0xDEAD

NTOSKRNL Emu_Extender


Library of missing functions for Windows XP/2003/Vista/7 NTOSKRNL.EXE

Project is intended to help in porting drivers from Windows 7/8/8.1/10 for work with Windows XP/2003/Vista/7

How-To:
1) Compile sources to make ntoskrn8.sys
2) Make corrections to target driver XXX.sys so that it loads ntoskrn8.sys instead of the original ntoskrnl.exe
3) If XXX.sys is driver made for Windows 8, change security_cookie to random value, security_cookie is constant 0x4EE640BB(x32) / 0x32A2DF2D992B(x64) inside file , change only first match !
4) Place ntoskrn8.sys to X:/Windows/sytem32/drivers/ folder

Compiling:
1) Install Windows 7 DDK v7.1.0 (download from Microsoft site)

1a) Original DDK header files has mistake with definintion of MmAllocateContiguousMemorySpecifyCacheNode, apply fix:
\WinDDK\Win7\inc\ddk\ntddk.h:
\WinDDK\Win7\inc\ddk\wdm.h:

  #if (NTDDI_VERSION >= NTDDI_WIN2K)
  typedef ULONG NODE_REQUIREMENT;

to:

  #if (NTDDI_VERSION >= NTDDI_VISTA)
  typedef ULONG NODE_REQUIREMENT;

2) Download project files to any local folder
      git clone ⇗ https://github.com/MovAX0xDEAD/NTOSKRNL_Emu

3) Choose Target OS (XP, 2003, Vista or WIndows 7) for which OS Emu_Extender will be compiled. Keep in mind that depending on the target operating system the way of exporting the functions changes, if a function already exists in the kernel it will be simply redirected without injecting emulation code

4) Run shell: Start Menu\Programs\Windows Driver Kits\Win7 7600.16385.1\Build Environments\Windows XXX\YYY Free Build Environment
(XXX - target OS, YYY - target CPU)

5) In shell change current directory to local project folder

6) In shell type command BLD to compile project

7) Compiled ntoskrn8.sys will be in ntoskrn8/objfre_XXX_x86/YYY folder


STORPORT Windows 7 Emu_Extender


This is Library of missing functions for Windows 7 STORPORT.SYS v6.1.7601.23403 to emulate Windows 8 STORPORT.SYS

How-To:
1) Compile ntoskrnl Emu_Extender
2) Place storpor8.sys to X:/Windows/system32/drivers/ folder
3) Make corrections to target xxx.sys so that it loads storpor8.sys instead of the original storport.sys
4) Place backported storport.sys from Windows 7 to X:/Windows/system32/drivers/ folder


Ported drivers:



Windows 7's WDF 1.11 for Windows XP/2003

Last version for Windows XP/2003 is 1.9, but possible to backport 1.11 version:
1) Get files from Windows 7 Updates (KB3125574):

 
       WDF01000.SYS	v1.11.9200.20755
WdfLdr.sys v1.11.9200.16384


2) In WDF01000.SYS replace string ntoskrnl.exe to ntoskrn8.sys in import section
3) Recalc checksum

If need coexist with original WDF1.9 drivers:

4) Rename WDF01000.SYS->WDF01_W8.SYS, WdfLdr.sys->WdfLdr8.sys
5) In WDF01_W8.SYS replace string WdfLdr.sys to WdfLdr8.sys in import section
6) In WdfLdr8.sys replace unicode string \Registry\Machine\System\CurrentControlSet\Services\Wdf%02d000 to \Registry\Machine\System\CurrentControlSet\Services\Wdf%02d_w8
7) In WdfLdr8.sys replace hex pattern F6 78 1B F6 to F6 EB 1B F6 (x32), to (x64)
8) In target driver xxx.sys replace string WdfLdr.sys to WdfLdr8.sys in import section
9) In .INF of ported driver add creating new service:

 
       AddService=WDF01_W8,,  WDF.AddService
....
[WDF.AddService]
DisplayName = "Windows Driver Framework v1.11 for XP/2003"
ServiceType = 1 ; SERVICE_KERNEL_DRIVER
StartType = 3 ; SERVICE_DEMAND_START
ErrorControl = 1 ; SERVICE_ERROR_NORMAL
ServiceBinary = %12%\WDF01_W8.SYS
LoadOrderGroup = Base


10) Recalc checksum of all edited *.sys


Windows 7's Storport.sys for Windows XP

Storport was released starting from Windows 2003, but possible to backport Windows 7 version:
1) Get files from Windows 7 Updates (KB3125574):

 
       storport.sys	v6.1.7601.23403


2) In storport.sys replace string ntoskrnl.exe to ntoskrn8.sys in import section

3) Storport uses MSI interrupts, need to force use only legacy/non-MSI interrupts
  x32 - replace hex pattern 8B 8E 3C 01 00 00 to B9 00 00 00 00 90 (mov ecx, [esi+13Ch] -> mov ecx, 0)
  x64 - replace hex pattern 8B 83 C0 01 00 00 to B8 00 00 00 00 90 (mov eax, [rbx+1C0h] -> mov eax, 0)


4) Recalc checksum


Windows 7's NVMe driver for Windows XP

1) Get files from Windows 7 Updates (KB3125574):

 
       stornvme.sys	v6.1.7601.23403


2) MS Windows 7 NVMe driver require storport.sys from Windows 7, use backported one


Windows 8's USB3 driver for Windows XP
USB3 driver from Windows 8 require WDF 1.11, use backported one.

1) Get required files from Windows 8 (KB4534283/4556840, KB2984005, RTM ISO):

 
   ucx01000.sys         v6.2.9200.22453
usbhub3.sys v6.2.9200.21180
usbxhci.sys v6.2.9200.22099
wpprecorder.sys v6.2.9200.16384
usbd.sys v6.2.9200.20761


from Vista Beta/Longhorn 5456.5:

 
       ksecdd.sys v6.0.5456.5


2) In files ucx01000.sys, usbhub3.sys, usbxhci.sys, wpprecorder.sys, usbd.sys change security_cookie to random value
3) In files ucx01000.sys, usbhub3.sys, usbxhci.sys, ksecdd.sys replace string name "ntoskrnl.exe" to "ntoskrn8.sys' in import section
4) Rename ksecdd.sys->ksecd8.sys, usbd.sys->usbd_w8.sys
5) In usbhub3.sys replace string name "ksecdd.sys" to "ksecd8.sys' in import section
6) In usbhub3.sys replace string name "usbd.sys" to "usbd_w8.sys' in import section,
7) Recalc checksum


Windows 8's STORAHCI driver for Windows XP

STORAHCI driver requires storport.sys from Windows 8, but possible to use storport.sys from Windows 7

storport.sys from Windows 7 more compatible with Windows Xp/2003 because it still call required PoStartNextPowerIrp
when processing power IRPs. Microsoft removed calls to PoStartNextPowerIrp in Windows 8's storport.sys, without this call
Windows XP/2003 kernel cannot finish current power IRP and start next IRP => it generate BSOD (0x0000009F).
Also storport.sys from Windows 7 has compatibility mode to allow old XP/2003 kernels write crashdumps through storport based disk drivers. In storport.sys from Windows 8 compatibility mode was removed, writing crashdumps possible only with new kernels.


Take attention:
WinWindows 8's STORAHCI + Windows 7's STORPORT may have significal performance drop and high CPU usage, there is no fix yet

1) Get files from Windows 8 (RTM ISO):

 
   storahci.sys v6.2.9200.16384


2) In storahci.sys replace string storport.sys to storport8.sys in import section

3) storahci.sys was compiled with Windows 8 DDK's storport.h and writes to new fields of _PORTCONFIGURATION_INFORMATION, these fields not exist in Windows 7's storport.sys

Need to skip these writes to avoid damaging structures in memory:
  x32 - Replace hex pattern 83 A6 C8 00 00 00 00 to 90 90 90 90 90 90 90 (and dword ptr [esi+0C8h], 0 -> nop)
  x32 - Replace hex pattern 83 8E CC 00 00 00 03 to 90 90 90 90 90 90 90 (or  dword ptr [esi+0CCh], 3 -> nop)

  x64 - Replace hex pattern 44 89 B7 D8 00 00 00 to 90 90 90 90 90 90 90 (mov [rdi+0D8h], r14d        -> nop)
  x64 - Replace hex pattern 83 8F DC 00 00 00 03 to 90 90 90 90 90 90 90 (or  dword ptr [rdi+0DCh], 3 -> nop)



If you compile storahci from sources (from Windows 8 DDK Samples), comment two lines:

 
   ConfigInfo->BusResetHoldTime = 0;
ConfigInfo->FeatureSupport |= STOR_ADAPTER_FEATURE_STOP_UNIT_DURING_POWER_DOWN;


4) In storahci.sys change security_cookie to random value

5) Recalc checksum


Windows 7's MSAHCI driver for Windows XP

1) Get files from Windows 7 Updates (KB3125574):

 
   atapi.sys    v6.1.7601.23403
ataport.sys v6.1.7601.23403
msahci.sys v6.1.7601.23403
pciidex.sys v6.1.7601.23403


2) In ataport.sys, pciidex.sys replace string ntoskrnl.exe to ntoskrn8.sys in import section

3) pciidex.sys uses MS Internal/Undocumented HalDispatchTable way to call functions from Kernel/HAL,

For Windows XP/2003 x32 need to use compatible variant:
x32: replace hex pattern FF 50 3C to FF 50 40, same in asm code:

 
   mov     eax, ds:HalDispatchTable
...
call dword ptr [eax+3Ch] => call dword ptr [eax+40h]


x64: replace hex pattern
        1) FF 50 78 to EB 2A 90
        2) offset +2Ch: CC CC CC CC CC CC CC CC to FF 90 80 00 00 00 EB CF,  same in asm code:

 
       mov     rax, cs:HalDispatchTable
...
call qword ptr [rax+78h] => jmp patch
orig:
mov r10d, eax

patch:
call qword ptr [eax+80h]
jmp orig


4) Recalc checksum

5) MSHDC.INF from Windows 7 may conflict with original mshdc.inf from Windows XP/2003
For example msahci enumerates IDE/SATA channels as InternalIDEChannel and compatible ID as *PNP0600.
Original mshdc.inf for *PNP0600 will install wrong Standard IDE/ESDI Hard Disk Controller driver



Intel RSTe Enterprise AHCI/RAID driver 4.7.0.1098 for Windows XP/2003 +
Intel RST AHCI/RAID driver (v11.x-15.x, last compatible 15.9.8/15.44.0) for Windows XP/2003

These drivers require storport.sys from Windows 7, use backported one.
1) In file iaStorA.sys/iaStorAC.sys/iaStorAVC.sys replace string 'ntoskrnl.exe' to 'ntoskrn8.sys' in import section (do not change second string 'NTOSKRNL.exe')

2) Recalc checksum



Download Sources
⇗ https://github.com/MovAX0xDEAD/NTOSKRNL_Emu


Implemented Func List v10 :

_chkstk
_i64toa_s
_i64tow_s
_itoa_s
_itow_s
_ltoa_s
_ltow_s
_makepath_s
_snprintf_s
_snscanf_s
_snwprintf_s
_snwscanf_s
_splitpath_s
_strnset_s
_strset_s
_strtoui64
_swprintf
_ui64toa_s
_ui64tow_s
_ultoa_s
_ultow_s
_vsnprintf_s
_vsnwprintf_s
_vswprintf
_wcsnset_s
_wcsset_s
_wmakepath_s
_wsplitpath_s
_wtoi
_wtol
DbgkLkmdRegisterCallback
EmClientQueryRuleState
EtwActivityIdControl
EtwEventEnabled
EtwProviderEnabled
EtwRegister
EtwRegisterClassicProvider
EtwUnregister
EtwWrite
EtwWriteString
EtwWriteTransfer
ExAcquireRundownProtectionCacheAware
ExAcquireRundownProtectionCacheAwareEx
ExAllocateCacheAwareRundownProtection
ExDeleteLookasideListEx
ExEnterCriticalRegionAndAcquireFastMutexUnsafe
ExEnterCriticalRegionAndAcquireResourceExclusive
ExEnterCriticalRegionAndAcquireResourceShared
ExEnterPriorityRegionAndAcquireResourceExclusive
ExEnterPriorityRegionAndAcquireResourceShared
ExFreeCacheAwareRundownProtection
ExfReleasePushLockShared
ExfTryToWakePushLock
ExGetFirmwareEnvironmentVariable
ExInitializeLookasideListEx
ExInitializeRundownProtectionCacheAware
ExReInitializeRundownProtectionCacheAware
ExReleaseFastMutexUnsafeAndLeaveCriticalRegion
ExReleaseResourceAndLeaveCriticalRegion
ExReleaseResourceAndLeavePriorityRegion
ExReleaseRundownProtectionCacheAware
ExReleaseRundownProtectionCacheAwareEx
ExRundownCompletedCacheAware
ExSetFirmwareEnvironmentVariable
ExSizeOfRundownProtectionCacheAware
ExWaitForRundownProtectionReleaseCacheAware
IoAllocateSfioStreamIdentifier
IoConnectInterruptEx
IoDisconnectInterruptEx
IoFreeSfioStreamIdentifier
IoGetActivityIdIrp
IoGetAffinityInterrupt
IoGetDevicePropertyData
IoGetIoPriorityHint
IoGetSfioStreamIdentifier
IoInitializeWorkItem
IoQueueWorkItemEx
IoSetActivityIdIrp
IoSetDevicePropertyData
IoSizeofWorkItem
IoUninitializeWorkItem
IoUnregisterPlugPlayNotificationEx
KdRefreshDebuggerNotPresent
KeAcquireGuardedMutex
KeAcquireGuardedMutexUnsafe
KeAlertThread
KeAreAllApcsDisabled
KeEnterGuardedRegion
KeExpandKernelStackAndCallout
KeGetCurrentNodeNumber
KeGetCurrentProcessorNumberEx
KeGetProcessorIndexFromNumber
KeGetProcessorNumberFromIndex
KeInitializeGuardedMutex
KeInvalidateAllCaches
KeInvalidateRangeAllCaches
KeLeaveGuardedRegion
KeQueryActiveGroupCount
KeQueryActiveProcessorCount
KeQueryActiveProcessorCountEx
KeQueryDpcWatchdogInformation
KeQueryGroupAffinity
KeQueryHighestNodeNumber
KeQueryLogicalProcessorRelationship
KeQueryMaximumGroupCount
KeQueryMaximumProcessorCount
KeQueryMaximumProcessorCountEx
KeQueryNodeActiveAffinity
KeReleaseGuardedMutex
KeReleaseGuardedMutexUnsafe
KeRevertToUserAffinityThreadEx
KeRevertToUserGroupAffinityThread
KeSetActualBasePriorityThread
KeSetCoalescableTimer
KeSetSystemAffinityThreadEx
KeSetSystemGroupAffinityThread
KeSetTargetProcessorDpcEx
KeTestAlertThread
KeTryToAcquireGuardedMutex
LdrResFindResource
LdrResFindResourceDirectory
LpcReplyWaitReplyPort
LpcRequestWaitReplyPortEx
LpcSendWaitReceivePort
memcpy_s
memmove_s
MmAllocateContiguousMemorySpecifyCacheNode
MmAllocateContiguousNodeMemory
ObDeleteCapturedInsertInfo
ObfDereferenceObjectWithTag
ObfReferenceObjectWithTag
ObGetObjectType
ObQueryNameInfo
PcwAddInstance
PcwCloseInstance
PcwCreateInstance
PcwRegister
PcwUnregister
PoDisableSleepStates
PoEndDeviceBusy
PoGetSystemWake
PoReenableSleepStates
PoRegisterPowerSettingCallback
PoSetDeviceBusyEx
PoSetSystemWake
PoStartDeviceBusy
PoUnregisterPowerSettingCallback
PoUserShutdownInitiated
PsAcquireProcessExitSynchronization
PsEnterPriorityRegion
PsGetCurrentProcessWin32Process
PsGetCurrentThreadProcess
PsGetCurrentThreadProcessId
PsGetCurrentThreadTeb
PsGetCurrentThreadWin32Thread
PsGetCurrentThreadWin32ThreadAndEnterCriticalRegion
PsGetProcessSessionIdEx
PsIsProtectedProcess
PsIsSystemProcess
PsLeavePriorityRegion
PsReleaseProcessExitSynchronization
PsSetCreateProcessNotifyRoutineEx
RtlCheckPortableOperatingSystem
RtlGetIntegerAtom
RtlGetThreadLangIdByIndex
RtlIsNtDdiVersionAvailable
RtlQueryElevationFlags
RtlQueryRegistryValuesEx
RtlSetPortableOperatingSystem
SeReportSecurityEventWithSubCategory
SeSetAuditParameter
SeSetAuthorizationCallbacks
sprintf_s
sscanf_s
strcat_s
strcpy_s
strncat_s
strncpy_s
strnlen
strtok_s
swprintf_s
swscanf_s
vsprintf_s
vswprintf_s
wcscat_s
wcscpy_s
wcsncat_s
wcsncpy_s
wcsnlen
wcstoul
ZwAllocateLocallyUniqueId
ZwAlpcConnectPort
ZwAlpcSendWaitReceivePort
ZwQueryLicenseValue
ZwQueryVirtualMemory

   

Comparing files ataport.sys and ../ATAPORT.SYS
00000138: 68 69
00000139: 35 1D
0001B093: 6C 38
0001B095: 65 73
0001B096: 78 79
0001B097: 65 73

Comparing files iaStorA.sys and ../IASTORA.SYS
00000159: 15 FD
000687F9: 6C 38
000687FB: 65 73
000687FC: 78 79
000687FD: 65 73

Comparing files ksecd8.sys and ../KSECD8.SYS
00000148: 44 45
00000149: 18 00
0005AEBB: 6C 38
0005AEBD: 65 73
0005AEBE: 78 79
0005AEBF: 65 73

Comparing files storahci.sys and ../STORAHCI.SYS
00000140: 68 5B
00000141: DC CA
00000C2C: 83 90
00000C2D: A6 90
00000C2E: C8 90
00000C2F: 00 90
00000C30: 00 90
00000C31: 00 90
00000C32: 00 90
00000C94: 83 90
00000C95: 8E 90
00000C96: CC 90
00000C97: 00 90
00000C98: 00 90
00000C99: 00 90
00000C9A: 03 90
0000D000: 4E DE
0000D001: E6 AD
0000D002: 40 BE
0000D003: BB EF
0000D491: 74 38

Comparing files storport.sys and ../STORPORT.SYS
00000130: CB CC
00000131: 5C 36
00000132: 02 03
00004E19: 8B B9
00004E1A: 8E 00
00004E1B: 3C 00
00004E1C: 01 00
00004E1E: 00 90
0001D49B: 6C 38
0001D49D: 65 73
0001D49E: 78 79
0001D49F: 65 73

Comparing files uaspstor.sys and ../UASPSTOR.SYS
00000140: 4B A3
00000141: 25 D6
00000142: 02 01
0000E200: 4E DE
0000E201: E6 AD
0000E202: 40 BE
0000E203: BB EF
0000F189: 6C 38
0000F18B: 65 73
0000F18C: 78 79
0000F18D: 65 73
0000F24B: 74 38
0000F27E: 2E 38
0000F27F: 53 2E
0000F280: 59 53
0000F281: 53 59
0000F282: 00 53
0000F2FC: 6F 38
0000F2FD: 72 2E
0000F2FE: 64 73
0000F2FF: 65 79
0000F300: 72 73
0000F301: 2E 00
0000F302: 73 00
0000F303: 79 00
0000F304: 73 00

Comparing files ucx01000.sys and ../UCX01000.SYS
00000140: 0B 83
00000141: 0A 17
00014E00: 4E DE
00014E01: E6 AD
00014E02: 40 BE
00014E03: BB EF
00018D0F: 6C 38
00018D11: 65 73
00018D12: 78 79
00018D13: 65 73
00018DCC: 2E 38
00018DCD: 53 2E
00018DCE: 59 53
00018DCF: 53 59
00018DD0: 00 53
00018E08: 57 77
00018E0B: 52 72
00018E0E: 6F 38
00018E0F: 72 2E
00018E10: 64 73
00018E11: 65 79
00018E12: 72 73
00018E13: 2E 00
00018E14: 73 00
00018E15: 79 00
00018E16: 73 00

Comparing files usbd8.sys and ../USBD8.SYS
00000140: 7D 8B
00000141: 5E 5A
00001600: 4E DE
00001601: E6 AD
00001602: 40 BE
00001603: BB EF

Comparing files usbhub3.sys and ../USBHUB3.SYS
00000140: 62 A6
00000141: 3C DF
00000142: 06 05
00009058: 75 EB
00027C00: 4E DE
00027C01: E6 AD
00027C02: 40 BE
00027C03: BB EF
0004591E: 2E 38
0004591F: 53 2E
00045920: 59 53
00045921: 53 59
00045922: 00 53
00045923: 90 00
00045928: 2E 38
00045929: 53 2E
0004592A: 59 53
0004592B: 53 59
0004592C: 00 53
0004592D: 90 00
00045935: 64 38
0004593C: 57 77
0004593F: 52 72
00045942: 6F 38
00045943: 72 2E
00045944: 64 73
00045945: 65 79
00045946: 72 73
00045947: 2E 00
00045948: 73 00
00045949: 79 00
0004594A: 73 00
0004595B: 6C 38
0004595D: 65 73
0004595E: 78 79
0004595F: 65 73

Comparing files usbxhci.sys and ../USBXHCI.SYS
00000148: 24 9C
00000149: E1 EE
0002A800: 4E DE
0002A801: E6 AD
0002A802: 40 BE
0002A803: BB EF
00034BC3: 6C 38
00034BC5: 65 73
00034BC6: 78 79
00034BC7: 65 73
00034D8E: 57 77
00034D91: 52 72
00034D94: 6F 38
00034D95: 72 2E
00034D96: 64 73
00034D97: 65 79
00034D98: 72 73
00034D99: 2E 00
00034D9A: 73 00
00034D9B: 79 00
00034D9C: 73 00
00034FE8: 2E 38
00034FE9: 53 2E
00034FEA: 59 53
00034FEB: 53 59
00034FEC: 00 53

Comparing files WDF01_W8.SYS and ../WDF01_W8.SYS
00000138: A0 F7
00000139: 5C 95
0007655A: 2E 38
0007655B: 53 2E
0007655C: 59 53
0007655D: 53 59
0007655E: 00 53
0007655F: 90 00
00076567: 6C 38
00076569: 65 73
0007656A: 78 79
0007656B: 65 73

Comparing files WdfLdr8.sys and ../WDFLDR8.SYS (v1.11.9200.16384)
.....

Comparing files WdfLdr8.sys and ../WDFLDR8.SYS (v1.11.9200.16648)
00000150: 32 B0
00000151: F8 6B
00000152: 00 01
000011F2: 30 5F
000011F4: 30 77
000011F6: 30 38
000022C9: 78 EB

Comparing files wpprec8.sys and ../WPPREC8.SYS
00000140: 04 12
00000141: 23 1F
00001E00: 4E DE
00001E01: E6 AD
00001E02: 40 BE
00001E03: BB EF
#4908daniel_k⇗ @Mov AX, 0xDEAD, impressed!

Thought you were on a break, but still working on something!

Thanks for sharing it with us!

Theoretically, functions from WppRecorder.sys can be added to ntoskrn8.sys, right?
#4909daniel_k
Zitat von ⇗ gordo999 im Beitrag ¶ #4899
@daniel_k ...lost tract which driver is which? I am currently running your amdxhc.sys and usbd.sys. They are working fine. Is there an advantage to converting to the 'switch' driver? And is that driver from W8? Thanks.

Even with USB3 enabled in BIOS, 3rd/4th gen chipset require the HCSwitch lower filter driver to program certain device registers, otherwise you're limited to USB2 speeds.

Regarding USB3 driver, we are not using the amdxhc driver anymore, as it has issues after some plugging/unplugging.

⇗ @Mov AX, 0xDEAD ported the Win8 driver, which is a perfect solution, even supporting UASP (USB Attached SCSI Protocol), although is in alpha state yet. If you want it, drop me a PM.
#4910daniel_k⇗ @Mov AX, 0xDEAD
I'm getting this error when building:

 
1>errors in directory c:\release0
1>nmake : error: c:\release0\objfre_wxp_x86\i386\_objects.mac was changed during the build process and the build results may not be valid.
Please re-build this directory.



I can compile OFA NVME driver, so no problem with my DDK install.

EDIT: Fixed by adding TARGETPATH=obj$(BUILD_ALT_DIR) below TARGETTYPE=EXPORT_DRIVER in sources file.

#4911infuscomus⇗ @Mov AX, 0xDEAD

You're releasing this as open source?! Awesome!

Thanks!

edit:
a question concerning cookie_const - what does a windows driver do with this value? why does it BSOD if we don't change it?
#4912diderius6⇗ @Mov AX, 0xDEAD

Is it possible to enable the Lan driver i219 from Intel under XP SP3 with this helper,
have a nice day
Dietmar
#4913Mov AX, 0xDEAD
Zitat von ⇗ daniel_k im Beitrag ¶ #4910

Fixed by adding TARGETPATH=obj$(BUILD_ALT_DIR) below TARGETTYPE=EXPORT_DRIVER in sources file.

thanks for fix !

archive updated
#4914Mov AX, 0xDEAD
Zitat von ⇗ infuscomus im Beitrag ¶ #4911
@Mov AX, 0xDEAD
You're releasing this as open source?! Awesome!


Main benefit is MS "copyright" binary code avoidance as much as possible

Extender is not new idea, Dibya done his extenders before, but he used many stolen code from MS binaries(???)
(i dont know exactly where code taken, sorry Dibya if I'm wrong)
#4915Mov AX, 0xDEAD⇗ @diderius6

Zitat von ⇗ diderius6 im Beitrag ¶ #4912

Is it possible to enable the Lan driver i219 from Intel under XP SP3 with this helper,


I dont know, extender has only few implemented functions and is not full functionaly
If someone has time and C knowledge, he can add more missed imports.
LAN driver may depends on NDIS6 (another driver framework from MS), XP has only NDIS5
#4916Mov AX, 0xDEAD
Zitat von ⇗ daniel_k im Beitrag ¶ #4908
Theoretically, functions from WppRecorder.sys can be added to ntoskrn8.sys, right?

Yes,  ntoskrn8.sys  can be multi router for export<->import from many *.sys/*.dll:
#pragma comment (linker, "/export:xxxxx=hal.xxxxxx")
#pragma comment (linker, "/export:yyyyy=ntoskrnl.yyyyy")

in case WppRecorder.sys all emulated funcs will be internal
#4917diderius6⇗ @daniel_k
I test, why I can boot an uaspstor device via USBSTOR.sys
but not via uaspstor.sys from win8 with storport from win7.1 .

The uaspstor.sys driver is not loaded early enough, even I set Group = System Reserved  start = 0  Tag = 1 (means first of all).
This should move this driver to one of the earliest loaded drivers.

Always this driver uaspstor.sys loads after mup.sys, so this is second boot stage,
means uaspstor.sys not loaded at boot time.
This is the reason for BSOD 0x7B there

Dietmar

PS: With USBSTOR.sys this one is loaded first of all in first boot stage, means no BSOD 0x7B.
#4918daniel_k⇗ @diderius6
Don't know if it makes any difference, but remember that uaspstor.sys is a SCSI driver.

During Setup, usbstor is loaded in [InputDevicesSupport], uaspstor should be in [SCSI], in theory.
#4919daniel_k⇗ @Mov AX, 0xDEAD

Does changing the function name from "decorated" to "undecorated", affects the behavior of the Extender?

For example, _IoGetDevicePropertyData@32 -> IoGetDevicePropertyData

This could help when compiling the Extender to any archtecture, if you know what I mean.

EDIT: Nevermind, I see it doesn't change anything, binary is identical.
#4920infuscomuscan you mix ASM with C code? or is this a bad idea?

 

Page 329

#4921Dibya
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #4914
Zitat von ⇗ infuscomus im Beitrag ¶ #4911
@Mov AX, 0xDEAD
You're releasing this as open source?! Awesome!


Main benefit is MS "copyright" binary code avoidance as much as possible

Extender is not new idea, Dibya done his extenders before, but he used many stolen code from MS binaries(???)
(i dont know exactly where code taken, sorry Dibya if I'm wrong)





I did modify XP files but none of my codes were from Microsoft . Mostly were from wine , some stub and few own implementation like GetTickCount64 , few were taken from OnecoreApi and BlackWingcat .
These do act like MS code but they arenot .  Some are hijack job like sending FlsAlloc to TlsAlloc.
Their were Vista binaries though like MSVCRT.
Initial attempt i tried to copy vista code but they never worked (Those binaries never got out in wild).

By the way thanks for XHCI Driver  It is awesome
If i ever get something like KernelEx for 9x , which will redirect all missing api to my dll from programs inside a specific program folder like FLStudio , I will release all my sources under BSD or Apache license.
#4922Dibya
Zitat von ⇗ infuscomus im Beitrag ¶ #4920
can you mix ASM with C code? or is this a bad idea?

You can use inline assembly but dont try to copy Vista code on XP , it will fail
#4923ruthanMaybe obvious for someone but i finally find how to real life its USB legacy option in the Bios - when is enabled i can quit WinXP boot disk check, because its slow as hell.. Its need for some versions of Grub2 too..
#4924Mov AX, 0xDEAD⇗ @Dibya

Zitat von ⇗ Dibya im Beitrag ¶ #4921

I did modify XP files but none of my codes were from Microsoft . Mostly were from wine , some stub and few own implementation like GetTickCount64 , few were taken from OnecoreApi and BlackWingcat .
These do act like MS code but they arenot .  Some are hijack job like sending FlsAlloc to TlsAlloc.
Their were Vista binaries though like MSVCRT.


Sorry for mess, take my apologies
I just saw ExKernel.asm, it containts many deassembled chunks from some binaries (many from from BlackWingCat's files)
#4925Mov AX, 0xDEAD
Zitat von ⇗ daniel_k im Beitrag ¶ #4919
@Mov AX, 0xDEAD
Does changing the function name from "decorated" to "undecorated", affects the behavior of the Extender?
For example, _IoGetDevicePropertyData@32 -> IoGetDevicePropertyData

First i used __declspec( dllexport ) instead .def to have undecorated names, but it works only if function has __cdecl calling convention, x32 WinAPI is not __cdecl, __declspec( dllexport ) make decorated variant. Finally i decided to use .def as uniform name translator.
_k8 suffix used for functions, already defined in DDK's *.h - i prefer to have C equivalents instead MS compatible binaries (procgrp.lib/intex.lib)
#4926Dibya"Mov AX, 0xDEAD"|p114478]⇗ @Dibya

Zitat von ⇗ Dibya im Beitrag ¶ #4921

I did modify XP files but none of my codes were from Microsoft . Mostly were from wine , some stub and few own implementation like GetTickCount64 , few were taken from OnecoreApi and BlackWingcat .
These do act like MS code but they arenot .  Some are hijack job like sending FlsAlloc to TlsAlloc.
Their were Vista binaries though like MSVCRT.


Well you can't code cave in C language so I used to make dll of my code in visual studio 2010 and then use  IDA and made in MASM compatible to remove extra junk and then I used to compile them in masm and then used hex editor to move my code to xp DLLs .
Then I used either rloew modexp / Blackwingcat pemaker to add a export entry .
Then fixed those broken subroutines and codes with Ida & Address fixer in pemaker .
Boom ! You got a extended kernel now .
#4927OutbreakerHI.
Dose someone know if the "secnvmeF.sys" file should be added to the "[SCSI.Load]" or "[BusExtenders.Load]" or "[BootBusExtenders.Load]" the funny thing is they all work.
#4928asdf23451
Zitat von ⇗ daniel_k im Beitrag ¶ #3962
AMDXHC 1.1.0.0276 Final Driver, dated Dec 4, 2018

- Fixed XP/Server 2003 compatibility by re-adding PoStartNextPowerIrp calls, luckily the code didn't really change after build 145, could find all proper locations for every call. Interesting info:
⇗ PoStartNextPowerIrp - ⇗ Bug Check 0x9F: DRIVER_POWER_STATE_FAILURE
- Removed IoSetDevicePropertyData dependency, only found in Vista and later, doesn't affect functionality.
- Removed BCrypt functions dependencies (Ksecdd.sys), only found in Vista and later and re-added code from build 145.
- Combined hub and controller INFs into a single amdxhc.inf for easier installation and integration.



I'm looking for that driver, but I don't see any download on the post, could I get a link to the driver?
#4929Outbreaker
Zitat von ⇗ asdf23451 im Beitrag ¶ #4928
Zitat von ⇗ daniel_k im Beitrag ¶ #3962
AMDXHC 1.1.0.0276 Final Driver, dated Dec 4, 2018

- Fixed XP/Server 2003 compatibility by re-adding PoStartNextPowerIrp calls, luckily the code didn't really change after build 145, could find all proper locations for every call. Interesting info:
⇗ PoStartNextPowerIrp - ⇗ Bug Check 0x9F: DRIVER_POWER_STATE_FAILURE
- Removed IoSetDevicePropertyData dependency, only found in Vista and later, doesn't affect functionality.
- Removed BCrypt functions dependencies (Ksecdd.sys), only found in Vista and later and re-added code from build 145.
- Combined hub and controller INFs into a single amdxhc.inf for easier installation and integration.



I'm looking for that driver, but I don't see any download on the post, could I get a link to the driver?

⇗ https://forums.mydigitallife.net/threads...hardware.81607/
#4930infuscomus⇗ @Outbreaker

from the original samsung nvme inf file - it is SCSI miniport

[nvme_Service_Inst]
ServiceType = %SERVICE_KERNEL_DRIVER%
StartType = %SERVICE_BOOT_START%
ErrorControl = %SERVICE_ERROR_NORMAL%
ServiceBinary = %12%\secnvme.sys
LoadOrderGroup = SCSI miniport
AddReg = pnpsafe_pci_addreg
#4931Outbreaker⇗ @infuscomus
That's for the secnvme.sys file, but their is no LoadOrderGroup entry for the secnvmeF.sys file in the .inf file.
#4932infuscomus⇗ @Outbreaker

there is no loadordergroup for the filter driver in the original inf either - i'm assuming it's unnecessary.

[nvmeF_Service_Inst]
ServiceType = %SERVICE_KERNEL_DRIVER%
StartType = %SERVICE_BOOT_START%
ErrorControl = %SERVICE_ERROR_NORMAL%
ServiceBinary = %12%\secnvmeF.sys
#4933daniel_k⇗ @Mov AX, 0xDEAD
Are you working on the Extender?

I plan to implement some imports, just want to make sure you already didn't.
#4934daniel_k⇗ @Outbreaker

Filter driver is a kind of a plug-in that changes/improves behavior of a driver.

Just integrate the driver and, during install, INF file will install the filter. Keep it simple!
#4935Mov AX, 0xDEAD⇗ @daniel_k

Zitat von ⇗ daniel_k im Beitrag ¶ #4933

Are you working on the Extender?
I plan to implement some imports, just want to make sure you already didn't.

Yes, i work currently on all available stuff from intex.lib+procgrp.lib, missed win7/win8 functs (required for already ported driver)   delayed for few days

You can download last develop version in Release3_devonly.zip if want to sync with me
important - fixed bug with calling convection of wcsncpy_s and added x64 compatible build setting, so w2003_x64 buld is OK on my machine (not sure about working state :)

 

Page 330

#4936daniel_k
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #4935
You can download last develop version in release2.zip if want to sync with me

Sure, where can I download it? I want to contribute somehow.

Are you planning to create a repository in your GitHub profile?
#4937Mov AX, 0xDEAD⇗ @daniel_k

Zitat
where can I download it?


first post about project on page #328

Zitat von ⇗ daniel_k im Beitrag ¶ #4936
Are you planning to create a repository in your GitHub profile?

I dont know how merge users' requests on github, so mainly i used it as "share" site
but i can create repository if it helps
#4938daniel_k
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #4937
first post about project on page #328

You've just added it, thanks.

Zitat
I dont know how merge users' requests on github, so mainly i used it as "share" site
but i can create repository if it helps


Me neither.

To add imports from other files, better to keep the code in another .c file, right?

#4939daniel_k⇗ @Mov AX, 0xDEAD
Was Reading the MS docs regarding Power IRPs, uaspstor.sys calls IofCallDriver, but on OSes earlier then Vista, it must call PoCallDriver to pass a power IRP.

However, after replacing the function, system won't start: BSOD 0xA: IRQL_NOT_LESS_OR_EQUAL
#4940SircamI have a Lenovo G50-80 laptop.

Im trying to install XP x86 on the hard drive. I have integrated drivers into an ISO on a CD which now allow me to see the Hard drive in the XP setup but I can not get past that point.

The keyboard(internal and spare external) is not recognised. As soon as the setup displays "Setup is starting Windows" lights on the external keyboard turn off

Ive tried WinXP-IE_Optional_Patch_Integrator_v2.3.3b14.zip to integrate USB drivers. Are there any other drivers which someone can suggest to use?
#4941daniel_k⇗ @Mov AX, 0xDEAD

I've added stubs for all WppRecorder.sys, and it works fine.

However, unless I comment one of these lines in ntoskrn8.src:

 
KeQueryGroupAffinity=		_KeQueryGroupAffinity@4
KeQueryGroupAffinity= KeQueryGroupAffinity


I get the following error:

 
ntoskrn8.def : warning LNK4197: export 'KeQueryGroupAffinity' specified multiple times; using first specification
#4942infuscomus⇗ @Sircam

I have an idea for what the problem might be - I'll PM you
#4943gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #4912
Is it possible to enable the Lan driver i219 from Intel under XP SP3 with this helper,
have a nice dayDietmar
⇗ @diderius6 ...ntoskrnl is not the main problem with LAN i219. Ndis.sys in XP has about 30 missing functions that are required by i219. Not all of them may be critical. Also, if you use ndis.sys from w7 there is another file required.

If you look at the W7 INF file for LAN i219, it is much more detailed than the the XP INF file for the older LAN driver. I have wondered about adding some of the W7 INF entries to the XP INF file or just entering them right into the registry. I guess it depends on how well you want XP to work with the features available in W7 i219 LAN hardware.
#4944gordo999
Zitat von ⇗ Sircam im Beitrag ¶ #4940
I have a Lenovo G50-80 laptop....The keyboard(internal and spare external) is not recognised. As soon as the setup displays "Setup is starting Windows" lights on the external keyboard turn off
⇗ @Sircam ...did you integrate the USB drivers? Just noticed that infuscomus may have a solution for you.
#4945ruthanI probably find out why PS/2 is not working with Z370 old install build.. I met same error with Z390, its some Vmware leftover service, when i remove Vmware keyboard driver, all input except remote one from remote desktop apps is just not working.. Work around is not removing it, but i would like to get rid of it. I already tried VMware cleaner, but its not clean this one.

I also fixed not working PS/2 with Win10 and Z390 for some reason PS/2 Scroll mouse driver was installed when i force PS/2 Compatible driver, its no working fine.

Otherwise i had some annoying false detection with some modified drivers and Avira antivirus.. i submited false reports, mouse of them are now fixed.. and now more detected.   Last one which is still detected is wdf01_w8.sys. Workaround is simply turn off antivirus for moment of manipulation with files, because otherswise this drivers are not copied where it should be etc.. you can ignore detection, but Avira design is stupid so its still complied about same file, is other locations.

 BTW are you using some WinXP antivirus, i was using MS Security essesntials, but it can be updated by normal ways, but only with some annoying workarounds afaik, maybe is there something better?
#4946ruthanExist some better than MS 2D driver universal driver for Windows XP? Im still debugging without WinXP GPU and scrolling speed is very slow..

Otherwise is there nice now too much known tool for removing some not more installed device from WinXP:
⇗ https://www.neowin.net/news/ghostbuster-1080/

I dunno if they can make some real problems, but it probably at least slowdown system. Of course be careful do backup, i has some build in create restore point on option but still. This could help with debugging and of course with migration older installs.
#4947Mov AX, 0xDEAD
Zitat von ⇗ ruthan im Beitrag ¶ #4946
Exist some better than MS 2D driver universal driver for Windows XP? Im still debugging without WinXP GPU and scrolling speed is very slow..

⇗ 2D over VESA - Anapa VBEMP
SciTech SNAP Graphics
#4948ruthanThanks, but 1st one if im not wrong is only for Win9x, or not?
#4949canonkongVISTA also work very well,  what needs to fix is the UHD630.

#4950infuscomus⇗ @ruthan

VBEMP NT/XP/2K version here -
⇗ https://bearwindows.zcm.com.au/vbemp.htm

 

Page 331

#4951gordo999
Zitat von ⇗ ruthan im Beitrag ¶ #4945
Workaround is simply turn off antivirus for moment of manipulation with files, because otherswise this drivers are not copied where it should be etc.. you can ignore detection, but Avira design is stupid
⇗ @ruthan  ...I have noticed that some modern antivirus products try to take over the entire system, like Symantec did at one time. I don't have much trouble with the free Comodo a/v although I noticed on XP that it has been interfering with serial communication between computers on the target end.
#4952ruthan
Zitat

2D over VESA - Anapa VBEMP
SciTech SNAP Graphics



Hmm, no luck so far, its VBEMP with Geforce is giving me Code 10 (all VBE2 and VBE3 - standard and nvidia options tested, new and old install), i downloaded only version 2015, because 2019 link giving just donate page.
SciTech SNAP Graphics  i have problem to find some download for WinXP version, i find only DOS and Win9x version. At least last version number for searching would help.

#4953ruthanOk some news.. i had to change Marwel Sata controller for Asmedia.. becasue it plays a bit better with Linux and i can place it too PCI-E 1x slot, what is advantage for my eternal not enough slots problem.

 I discovered, that Asmedia Sata 106x not really works with generic sata driver - infinite boot, but you can boot into safe mode and use Asmedia drivers, they works fine even with paragon GPT loader. Good news that these could be buy for 5-10$ and have possiblity to flash AHCI or IDE bios is nice to have at least one at home.
#4954ruthanI solved not working PS/2 after Vmware half-ass removal:

Procedure:
search for vmkbd.sys in registry and look for items with UpperFilters, you will find them in path like this:
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet002\Control\Class\{4D36E96B-E325-11CE-BFC1-08002BE10318}

Remove vmkbd value from UpperFilters  key, do dont remove whole key, just part of value, there should be left kbclass .. i did before that mistake that i remove whole key.
#4955ruthanSo only big problem which i now really have and could solvable in short term with my old install is not working NVME driver.

 Does someone here understand *.inf files?
 Does someone make it working with non english WinXP install? Because that is only clue which i have.

 Inf file dont looks complex, but there are some localization things. Its possible to simply discover which files are needed for installation? I could try to copy them from install here its working.
;
; Installation inf for the NVME Miniport
;

[Version]
Signature="$Windows NT$"
Provider=%COMM%
ClassGUID={4D36E97B-E325-11CE-BFC1-08002BE10318}
Class=SCSIAdapter
DriverVer=07/19/2018, 1.3.1014.00
CatalogFile.NTAMD64 = nvme64.cat
CatalogFile.NTx86 = nvme86.cat

[PackageInfo]
Name=NVMe

[Manufacturer]
%COMM% = COMM, NTamd64, NTx86

[SourceDisksNames]
1 = %DiskId1%,,,""

[DestinationDirs]
DefaultDestDir = 12

[nvme_Service_Inst]
ServiceType = %SERVICE_KERNEL_DRIVER%
StartType = %SERVICE_BOOT_START%
ErrorControl = %SERVICE_ERROR_NORMAL%
ServiceBinary = %12%\nvme.sys
LoadOrderGroup = SCSI miniport
AddReg = pnpsafe_pci_addreg
AddReg = Parameters

[nvme_EventLog_Inst]
AddReg = nvme_EventLog_AddReg

[nvme_EventLog_AddReg]
HKR,,EventMessageFile,%REG_EXPAND_SZ%,"%%SystemRoot%%\System32\IoLogMsg.dll"
HKR,,TypesSupported,%REG_DWORD%,7

[pnpsafe_pci_addreg]
HKR, "Parameters\PnpInterface", "5", %REG_DWORD%, 0x00000001
HKR, "Parameters", "BusType", %REG_DWORD%, 0x00000001

[msi_addreg]
HKR, Interrupt Management, 0x00000010
HKR, Interrupt Management\MessageSignaledInterruptProperties, 0x00000010
HKR, Interrupt Management\MessageSignaledInterruptProperties, MSISupported, %REG_DWORD%, 1
HKR, Interrupt Management\MessageSignaledInterruptProperties, MessageNumberLimit, %REG_DWORD%, 32
HKR, Interrupt Management\Affinity Policy, 0x00000010
HKR, Interrupt Management\Affinity Policy, DevicePolicy, %REG_DWORD%, 5 ;IrqPolicySpreadMessagesAcrossAllProcessors

[Parameters]
HKR, Parameters\Device, Namespaces, %REG_DWORD%, 0x00000010 ; max number of namespaces supported
HKR, Parameters\Device, MaxTXSize, %REG_DWORD%, 0x00020000 ; max trasnfer size
HKR, Parameters\Device, AdQEntries, %REG_DWORD%, 0x00000080 ; admin queue size (num of entries)
HKR, Parameters\Device, IoQEntries, %REG_DWORD%, 0x00000400 ; IO queue size (num of entries)
HKR, Parameters\Device, IntCoalescingTime, %REG_DWORD%, 0x00000000 ; time threshold for INT coalescing
HKR, Parameters\Device, IntCoalescingEntries, %REG_DWORD%, 0x00000000 ; # of entries threadhold for INT coalescing

;******************************************************************************
;*
;* 32-BIT X86 ARCHITECTURE
;*
;* This section specifies the 32-bit architecture specific INF file entries
;* required to install a driver as a 32-bit compatible driver.
;*
;******************************************************************************
[SourceDisksFiles.x86]
nvme.sys = 1,,,

[COMM.NTx86]
%COMMNvme.DeviceDesc% = nvme_inst, PCI\CC_010802
;%COMMNvmeChat.DeviceDesc% = nvme_inst, PCI\CC_010802

[nvme_inst.ntx86]
CopyFiles=@nvme.sys

[nvme_inst.ntx86.HW]
AddReg = msi_addreg

[nvme_inst.ntx86.Services]
AddService = nvme, 0x00000002 , nvme_Service_Inst, nvme_EventLog_Inst


;******************************************************************************
;*
;* 64-BIT X86 ARCHITECTURE
;*
;* This section specifies the 64-bit architecture specific INF file entries
;* required to install a driver as a 64-bit compatible driver.
;*
;******************************************************************************

[SourceDisksFiles.amd64]
nvme.sys = 1,,,

[COMM.NTamd64]
%COMMNvme.DeviceDesc% = nvme_inst, PCI\CC_010802
;%COMMNvmeChat.DeviceDesc% = nvme_inst, PCI\CC_010802

[nvme_inst.NTamd64]
CopyFiles=@nvme.sys

[nvme_inst.NTamd64.HW]
AddReg = msi_addreg

[nvme_inst.NTamd64.Services]
AddService = nvme, 0x00000002 , nvme_Service_Inst, nvme_EventLog_Inst


[Strings]
;
; Localizable Strings
;
diskId1 = "NVMe Installation Disk"
CommNvme.DeviceDesc = "Community NVMe 1.3 Storport Miniport by Schtrom"
COMM = "Community"

;
; Non-Localizable Strings
;

REG_EXPAND_SZ = 0x00020000
REG_DWORD = 0x00010001
SERVICE_KERNEL_DRIVER = 1
SERVICE_BOOT_START = 0
SERVICE_ERROR_NORMAL = 1


   

 If understand it correctly:
1) it using Nvme86.cat + Nvme.sys which are part of installation package.
2) After that there are add some logging with System32\IoLogMsg.dll - i have this file in my system.
3)  add its creating couple of registry keys.. - there could be problem that key is not existing or with permission.

I guess that there is now any tool which would just print in which step of inf file processing problem happens?
#4956diderius6⇗ @ruthan

Install this nvme driver on another XP installation and connect your wished nvme device.
After this, extract from registry the whole tree nvme and call it nvme.reg  .
On your old XP, where you want to put this driver at once via registry,
set all permissions to "enable" and at the field advantage (or similar) put all marks,
that this permissions also are given to subfolders.

The extracted nvme.reg should look like
this one from my compi

Dietmar
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\nvme]
"Type"=dword:00000001
"Start"=dword:00000000
"ErrorControl"=dword:00000001
"Tag"=dword:00000040
"ImagePath"=hex(2):73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,44,00,\
52,00,49,00,56,00,45,00,52,00,53,00,5c,00,6e,00,76,00,6d,00,65,00,2e,00,73,\
00,79,00,73,00,00,00
"Group"="SCSI miniport"

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\nvme\Parameters]
"BusType"=dword:00000001

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\nvme\Parameters\Debug Print Filter]
"DEFAULT"=dword:0000000f

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\nvme\Parameters\Device]
"Namespaces"=dword:00000010
"MaxTXSize"=dword:00020000
"AdQEntries"=dword:00000080
"IoQEntries"=dword:00000400
"IntCoalescingTime"=dword:00000000
"IntCoalescingEntries"=dword:00000000

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\nvme\Parameters\PnpInterface]
"5"=dword:00000001

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\nvme\Security]
"Security"=hex:01,00,14,80,90,00,00,00,9c,00,00,00,14,00,00,00,30,00,00,00,02,\
00,1c,00,01,00,00,00,02,80,14,00,ff,01,0f,00,01,01,00,00,00,00,00,01,00,00,\
00,00,02,00,60,00,04,00,00,00,00,00,14,00,fd,01,02,00,01,01,00,00,00,00,00,\
05,12,00,00,00,00,00,18,00,ff,01,0f,00,01,02,00,00,00,00,00,05,20,00,00,00,\
20,02,00,00,00,00,14,00,8d,01,02,00,01,01,00,00,00,00,00,05,0b,00,00,00,00,\
00,18,00,fd,01,02,00,01,02,00,00,00,00,00,05,20,00,00,00,23,02,00,00,01,01,\
00,00,00,00,00,05,12,00,00,00,01,01,00,00,00,00,00,05,12,00,00,00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\nvme\Enum]
"0"="Root\\LEGACY_NVME\\0000"
"Count"=dword:00000001
"NextInstance"=dword:00000001
#4957OutbreakerDo we have no fix for this timer problem reported in:
¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (313)
¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (313)
¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (315)
¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (318)
#4958ruthan⇗ @diderius6 Thanks. I dont fully understand this part, what i have to do:

Zitat
set all permissions to "enable" and at the field advantage (or similar) put all marks,
that this permissions also are given to subfolders.



 Here is my exported key, i have 2 NVME if it matters, i imported it by standard way, its same so far:

  Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\nvme]
"Type"=dword:00000001
"Start"=dword:00000000
"ErrorControl"=dword:00000001
"Tag"=dword:00000022
"ImagePath"=hex(2):73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,44,00,\
52,00,49,00,56,00,45,00,52,00,53,00,5c,00,6e,00,76,00,6d,00,65,00,2e,00,73,\
00,79,00,73,00,00,00
"Group"="SCSI miniport"

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\nvme\Parameters]
"BusType"=dword:00000001

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\nvme\Parameters\Device]
"Namespaces"=dword:00000010
"MaxTXSize"=dword:00020000
"AdQEntries"=dword:00000080
"IoQEntries"=dword:00000400
"IntCoalescingTime"=dword:00000000
"IntCoalescingEntries"=dword:00000000

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\nvme\Parameters\PnpInterface]
"5"=dword:00000001

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\nvme\Security]
"Security"=hex:01,00,14,80,90,00,00,00,9c,00,00,00,14,00,00,00,30,00,00,00,02,\
00,1c,00,01,00,00,00,02,80,14,00,ff,01,0f,00,01,01,00,00,00,00,00,01,00,00,\
00,00,02,00,60,00,04,00,00,00,00,00,14,00,fd,01,02,00,01,01,00,00,00,00,00,\
05,12,00,00,00,00,00,18,00,ff,01,0f,00,01,02,00,00,00,00,00,05,20,00,00,00,\
20,02,00,00,00,00,14,00,8d,01,02,00,01,01,00,00,00,00,00,05,0b,00,00,00,00,\
00,18,00,fd,01,02,00,01,02,00,00,00,00,00,05,20,00,00,00,23,02,00,00,01,01,\
00,00,00,00,00,05,12,00,00,00,01,01,00,00,00,00,00,05,12,00,00,00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\nvme\Enum]
"0"="PCI\\VEN_144D&DEV_A802&SUBSYS_A801144D&REV_01\\4&188b60fb&0&00DC"
"Count"=dword:00000002
"NextInstance"=dword:00000002
"1"="PCI\\VEN_1CC1&DEV_8201&SUBSYS_82011CC1&REV_03\\4&45c6671&0&00E8"

   
  
 Problem seems to be that NVME service is there but its not running for some reason, when i try to push it manual its the same.
#4959diderius6⇗ @ruthan

Did you try different storport.sys

Dietmar
#4960infuscomus⇗ @Mov AX, 0xDEAD ⇗ @daniel_k

On one of my machines I have encountered a power dropout issue with the existing backported usbxhci driver
I tried using a powered USB hub but that didn't resolve the issue - not to worry I can get by with a USB 2.0 pcie card


I was just wondering would this ntoskrnl extender project be able to potentially solve this problem?
#4961ruthan⇗ @diderius6
 Im using that with file version 5.2.3790.4173 , i compared file from working install and my old and at least TC compare claims that its the same file, so if it is right, problem has to be elsewhere.
#4962Mov AX, 0xDEAD⇗ @infuscomus

Zitat

I was just wondering would this ntoskrnl extender project be able to potentially solve this problem?


extender only helps to port drivers (just library of missed import), it cant fix any internal incompatibility with old kernel
If you have power dropout issue, you will have it with extender too

#4963infuscomus⇗ @Mov AX, 0xDEAD

are you sure it could not possibly these functions being not yet implemented stub functions?

PoRegisterPowerSettingCallback
PoUnregisterPowerSettingCallback
#4964ruthanBetter 2D driver..
I contacted VBEMP author and he say that VBEMP 2k its not working with newer cards like Geforce 1070, but only which some old ones which are still supporting VESA 3, but i got PRO TIP - when i disable videocard HW acceleration - scrolling is much faster.
#4965infuscomus⇗ @diderius6

do you still have your ASRock AB350 G K4 motherboard?

if yes, can you test the backported usbxhci driver with it?

I would like to know if you get power dropouts on USB 3 with it, or if its just me.

 

Page 332

#4966diderius6⇗ @infuscomus

Hi, yes I have and on Friday afternoon I will test.
I also have disconnects but this has nothing to do with this nice USB3 driver,
it happens because of too much current needed via nvme disks in USB clothes.
This happens with any USB driver, even original Asmedia ones
Dietmar
#4967Andalu⇗ @diderius6
my experience with the NVMe to USB 3.1 adapter (JSM583 chipset): I got sudden disconnections and BSOD on restarting only on the asus Q370 board (with USB 3.1 ports). Same results in Win7, Win8 and Win10.

No problem when I tried the adapter on both Asrock and Asus B250 boards (USB 3.0 ports only), also rebooting with 4 UASP devices (included the JMS583 adapter) + 2 USB sticks already connected to the boards. I have tried over 10 restarts for each board, nothing changed.

In ⇗ this article they talk about the JMS583 chipset and its stability issues.
#4968infuscomus⇗ @Andalu ⇗ @diderius6

I have a logitech G510 and a Razer lancehead mouse on a powered USB hub

and separately an iodd2531 holding my XP install media

As soon as XP textmode setup loads the USB 3.0 driver the USB devices light up but accept no inputs (if the USB 3.0 driver is not loaded the devices do not light up at all)
#4969infuscomus⇗ @diderius6

have you had time to test usbxhci on the AB350 K4?
#4970diderius6⇗ @infuscomus

Yes, I tested about 30 different USB devices on this board. USB 1.1, USB2, USB30, USB3.1, USB3.2 mouse,
usb hubs, usb sticks, usb harddisks, usb cam, handy. Few hundred times plugin <> plugout.
All works to 100% with the nice driver from ⇗ @Mov AX, 0xDEAD . I can do USB boot there.

Only the nvme devices (nvme Optane 28 GB, nvme Samsung 970 PRO 512 GB) in USB clothes fail always.
Both have the chipset JMS583.
This fail (disconnect) happens also on all other USB drivers, mainboards that I tested and also via self powered USB hub.
So now I think, it is an error in the device ICY IB-1817M-C31 itself,
Dietmar
#4971infuscomus⇗ @diderius6

did usbxhci work for XP textmode setup?

i don't know, maybe my iodd2531 confuses the driver?
#4972diderius6⇗ @infuscomus

Yes, I can run full XP Setup via normal CD install to harddisk or direct to any USB device
and I can install XP SP3 direct via Firadisk to any USB device with the nice XP from zone.62
Dietmar
#4973infuscomus⇗ @diderius6

during XP textmode setup did USB mouse and keyboard work if connected directly to USB 3.0?

I'm guessing something on my PC went wrong and it isn't the USB 3.0 driver.
#4974diderius6⇗ @infuscomus

Yes, everything with USB works from the beginning of install.
With any USB device connected, there are strange 40 seconds you have to wait,
until the install medium is recogniced.
Sometimes for unknow reason I got BSOD with Firadisk,
but when I change the USB slot,
all is ok
Dietmar

PS: Make a try with install from real Setup CD, connected to the SATA port.
This works for me always on any compi with the XP from zone.62 .
#4975infuscomus⇗ @diderius6

OK, Thanks for testing

I'll try every USB port on the motherboard and see if I get a different result.
#4976diderius6I just make a direct to USB harddisk install via Setup CD on the Lenovo T43 with the nice XP SP3 from zone62.com .
Works at once
Dietmar

PS: I use for USB2 boot the AMD USB driver.
#4977infuscomus⇗ @diderius6

I got a BSOD C2 BAD_POOL_CALLER

did you ever see this BSOD?
#4978ruthanI see this after reboots from other OS, my guess is that things wasnt really reset by reboot.
#4979diderius6⇗ @infuscomus

Yes, this happens sometimes. But this BSOD goes away,
when I change the USB slot for Firadisk
or when I use Setup CD via SATA
Dietmar
#4980infuscomus⇗ @diderius6

Yes!
I found a USB port combination that works!

Although, I am curious as to why XP setup is so troublesome regarding which USB ports will work properly during the install.

It is a mystery..

 

Page 333

#4981ruthanNo mystery - just bugs and some bug food..
#4982canonkongIt is working well on my GC-Titan Bridge Thunderbolt 3 card.
#4983AndaluAbout the USB3 driver backported from Win8, USB Device Tree Viewer has an yellow mark for the same USB ports (13,14,15,16) in both my B250 Skylake boards:

Asrock B250M:

 


Asus Prime B250M:



I also tried in Win8 and Win10: no changes, same usb ports involved. No yellow marks in Win7.


And no yellow mark in XP with the AMDXHCI driver v145:

#4984Mov AX, 0xDEAD⇗ @Andalu

Zitat von ⇗ Andalu im Beitrag ¶ #4983
About the USB3 driver backported from Win8, USB Device Tree Viewer has an yellow mark for the same USB ports (13,14,15,16) in both my B250 Skylake boards


Hi Andalu

this is bug with Intel controller/bios, on your first picture controller itself reports total 22 Ports:
USB2 only ports 1-12
USB3 only ports 17-22

You may ask what about  13-16 Ports ? What kind of USB Type are they  ?
Controller cant say :), so win8 usb3 driver mark these ports as yellow, it's OK, ports realy doesnt exist on motherboard

AMDXHCI driver is not that smart and probably thinks these ports are like USB2
#4985Andalu⇗ @Mov AX, 0xDEAD
the intel driver also doesn't seem so smart if it recognizes all usb ports in Windows7 for the same controller:

#4986Mov AX, 0xDEAD
Zitat von ⇗ Andalu im Beitrag ¶ #4985
@Mov AX, 0xDEAD
the intel driver also doesn't seem so smart if it recognizes all usb ports in Windows7 for the same controller:


Intel driver share code with NEC driver, some AMD x64 drivers also share same code, so I'm not surprised
#4987Andalu⇗ @Mov AX, 0xDEAD
here the USB3 driver backported from Win8 installed in Win7

#4988AndaluSome benchmarks for UASP devices working in XP with the uaspstor driver backported from win8


Samsung 970evo nvme on USB 3.1 to NVMe adapter (Asmedia ASM2362 chip):



Samsung 850evo SSD on USB 3.1 to SATA adapter (Via VL715 chip):



Here the results for the same Samsung 850evo SSD connected on a SATA3 slot:
#4989daniel_k⇗ @Andalu

Is the Asmedia ASM2362 stable all the time?

850evo is faster on USB bridge than on native SATA3?!

All benchs ran on different conditions? PAE, PAE4G and no PAE?
#4990Andalu⇗ @daniel_k
even without PAE, the results won't change



Until now, no disconnection for the ASM2362 UASP device beyond the heat as for the JMS583 chip.
However, I also got a BSOD 0x0C2 when 4 UASP devices was connected to the board at same time during a restart.
#4991daniel_k
Zitat von ⇗ Andalu im Beitrag ¶ #4990
even without PAE, the results won't change

That's great, but was just an observation.

Zitat
Until now, no disconnection for the ASM2362 UASP device beyond the heat as for the JMS583 chip.
However, I also got a BSOD 0x0C2 when 4 UASP devices was connected to the board at same time during a restart.


According to MS docs, those 0xC2 errors are driver bugs:
⇗ https://docs.microsoft.com/en-us/windows...bad-pool-caller

You mean you got a BSOD 0xC2 when Windows was shutting down or loading after BIOS POST?

What about forcing install of the standard Mass Storage driver on XP for all 4 devices or testing Win8 to see if you get the same behavior?

#4992Andalu
Zitat von ⇗ daniel_k im Beitrag ¶ #4991
According to MS docs, those 0xC2 errors are driver bugs:
⇗ https://docs.microsoft.com/en-us/windows...bad-pool-caller

You mean you got a BSOD 0xC2 when Windows was shutting down or loading after BIOS POST?


I got the BAD_POOL_CALLER bsod after the POST step.

Zitat von ⇗ daniel_k im Beitrag ¶ #4991
What about forcing install of the standard Mass Storage driver on XP for all 4 devices or testing Win8 to see if you get the same behavior?

I'll try firstly in Win8.
#4993daniel_k
Zitat von ⇗ Andalu im Beitrag ¶ #4992
I'll try firstly in Win8.

Ok, if you don't get any BSODs after several restarts, please force install of the standard Mass Storage driver on XP for all 4 devices.

This way we'll know if the problem is in uaspstor.sys or in xhci drivers.
#4994Andalu
Zitat von ⇗ daniel_k im Beitrag ¶ #4993
Zitat von ⇗ Andalu im Beitrag ¶ #4992
I'll try firstly in Win8.

Ok, if you don't get any BSODs after several restarts, please force install of the standard Mass Storage driver on XP for all 4 devices.

This way we'll know if the problem is in uaspstor.sys or in xhci drivers.


I'm on the eleventh restart just now (in Win8), no issue encountered with 4 UASP devices connected to the USB 3.1 Gen2 ports.
#4995daniel_k
Zitat von ⇗ Andalu im Beitrag ¶ #4994
I'm on the eleventh restart just now (in Win8), no issue encountered with 4 UASP devices connected to the USB 3.1 Gen2 ports.

Good.

On XP the BSODs were frequent?

 

Page 334

#4996Andalu⇗ @daniel_k
After ten restarts in XP with the "USB mass storage" devices connected to the USB 3.1 ports, no bsod, no failed recognition, no sudden disconnection.

On the left the UASP devices, on the right the same devices installed as USB mass storage devices:

 

I'm trying now to restart the XP system with the 4 UASP devices to see if another BSOD can occur. Yesterday it occurred on the 3th restarting attempt.
Please consider that some days ago I had used the 'dangerous' JMS583 device with which I could not arrive at the 3th restart without a bsod (not only a bad_pool_caller).
#4997Andalu⇗ @daniel_k
BSOD 0x0C2 just occurred after POST, as yesterday. I swapped the UASP devices and I got the bad_pool_caller error.
Could it be that this error is related to a specific USB port? Until I switched the ports, no BSOD had occurred.

EDIT: on restarting after that BSOD with the same UASP devices connected to the same ports, XP boots without errors and the UASP devices are correctly recognized.
#4998daniel_k⇗ @Andalu

So the problem is related to the XHCI drivers.

Will send you a PM with some test files.
#4999Andalu⇗ @daniel_k
shutdowning the system, I got the same C2 bsod on restart (when the XP logo appears) without swapping the UASP devices.
#5000tumagonxHi, new user here. Thanks for the generic drivers port for XP that you guys made!
I want to ask about gpt_loader.sys from paragon, I seen mentioned version of 8.x which patched for stability and 9.x which said has hybridMBR issue. Just to clarify does version 10.x also exhibit the same issue as 9.x?
#5001tumagonxAbout storport transplant (from NT52). AFAIK NT51 kernel has no knowledge about storport unlike NT52 that understand BOTH scsiport and storport in tandem.
SO when using storport do you have issue with third party drivers which utilise scsiport?

About WinXPPAE patch, anyone rich enough to experiment with 256GB RAM? I think I read somewhere (by Mark Russinovich?) that in Server 2003 x32 (I assume datacenter) the mapping of 128GB need about 960MB PTE within 2GB system space, with 1920MB PTE there still 128MB left (which can be helped with pagefile if more resources needed by system). I think thats a possibility.

One thing that confuse me, often when talking about PAE (e.g. in wikipedia) they usually mention 36-bit (64GB) PAE which can be traced from Pentium Pro 200Mhz that has it. If the patch remove memory licensing then Windows will try whatever the Processor capable right? (as long as its PTE can be fitted in 2GB system space)

Regarding AWE I remember that mysql 5.0.x (but not later version) has support it (up to 63GB), just in case someone want to experiment with real-world application.
#5002tumagonxForgot to ask, I read in nvidia forum someone complaining that driver after 332.21 break PAE support, effectively limit XP PAE to Kepler generation instead of Maxwell, is this confirmed?
#5003infuscomus⇗ @tumagonx

I did not know there was a 10.x version of gpt_loader - so I don't know if it has any bugs

I don't have any hardware that mixes storport and scsiport drivers together but I don't see why they could not coexist

My system only has 32gb of RAM

This is the first I've heard of any nvidia related PAE issue
#5004tumagonx⇗ @infuscomus

my HFS+ for Windows 9.1 (filename: HFS4WIN_ea_xU.msi) has gpt_loader.sys version 10.4.0.388

For example the only freely available virtual DVD writer by TotalMounter install scsiport driver,  so is the open source arsenal image mounter use scsiport. I recalled there are references of storport in the NT52 kernel which absent in XP, didn't check what's kernel "doing" with it.
#5005tumagonx⇗ @infuscomus since you have 32GB have you tried XP SP1? is there any PAE limiter?
#5006ruthanYou dont need any PAE limitter because OS is 32bit, its simply ignore memory above 4GB, unless some hacks.
#5007ruthanIs there any realiable Ramdisk program to use memory above 4GB compatible with present pae /4G mode?
#5008ruthanIf you are in constant not enough PCI-E slots problem as me, this could be handy.

I also made deeper look on frakenstein combo PCI-E addon cards:
- there are SATA+USB3 and USB3+LAN cards - to save the slots..

- USB3+LAN are not so great they just can save some messy cabling, but other they are just internal made as USB-LANs add i saw Assix and Realtek Gigabit ones and almost all of them are using VIA USB3, only exception is Startech(=Expensive) PEXUSB3S3G , which are using NEC USB3 - which are from my experience even worse that VIA. So far i dont see some not branded Startech card for same price, which is quite normal, because Startech often, just selling same HW as other for 2x,3x higher price, but have some unique devices..

- Sata + USB3 - seems as better deals.
There Syba SD-PEX50055 - with Etron USB3 + ASM1061 and i dunno which Sata controller and us usual which good price available only in US, because EU shipping is more expressive than card itself. - This could be good Intel used Etron USB3 as its first USB3 implementations.If you will find some with good EU shipping price let me know.
and probably better Asmedia cards ASM1042 (USB), ASM1061 (SATA), ASM1182 (just some pci-e chipset) - which is available form Asia - Free shipping and cheaper - i ordered one.
- There is also VLI VL805 (VIA) & ASMedia 1061(Sata).

 Does someone real experience with these 2 in 1 cards?


 Because if would make it working, i can use free slots for example for nice PCI-E DVI video grabbing cards or others, or have more USB3 controller.. or more NVME devices, to make all devies really working, so far for me biggest problem is really not working Xbox360 controller in WinXP - because its not working with community Intel USB3 (or at least not if connected after reboot= black login screen dead - it would be really nice bypass this problem by some HW mod, even if devices will not working).. but not even with VIA USB3 - in any OS.. with Intel USB3 and no WinXP its working fine.
#5009Outbreaker⇗ @tumagonx
The last gpt_loader.sys for Windows XP is v8.0.1.0
#5010ruthanThere is some mismatch between Programs versions and /.sys versioning. I have program 10.x.. but sys file is 8.0.1.0.. but magic distro has integrated version 8 - but its not working great, so i guess that is version 8 of program, which some older sys file, or more than just .sys file matters.

 Ot they simply as other programs simply forgot to increase versioning.. My file is from 2011.02.15, signature from 2010.12.03

 

Page 335

#5011Andalu
Zitat von ⇗ ruthan im Beitrag ¶ #5007
Is there any realiable Ramdisk program to use memory above 4GB compatible with present pae /4G mode?

This works for both PAE /4Gb and /ALL options:

 
#5012ruthan⇗ @Andalu thanks, it looks great.
#5013tumagonx⇗ @Outbreaker why you are so sure? which from paragon software your .sys came from? (I already said where mine came from)
FYI 10.4.0.388 have date mod of 14 November, 2014, 19:21:32 subsystem version clearly stated 5.1 compiled with msvc9.0 filesize 44,624

I have tested it before (along with Paragon Extfs for windows) with snow leopard on other partition and redhat Linux too. I just don't have GPT disk, that's why I asked.
#5014Outbreaker⇗ @tumagonx
The "Paragon GPT Loader v10.0.16.12944" will install the gpt_loader.sys driver file version 8.0.1.0 on my Windows XP computer.

EDIT:
I notice now, the "Paragon GPT Loader" has been discontinued and they now have a ton of other tools, which are all no longer supported for Windows XP.
A good question now is which gpt_loader.sys file version is now the last working one for Windows XP.
#5015tumagonx⇗ @Outbreaker ...and what date was that GPT loader 10?

FYI it is normal that Mac format disk as GPT, that why gpt bundled with HFS+ for Windows. It's a wonder why you're comparing the version of two different product though....

I got all my paragon freeware "special edition" when XP discontinued back then:
HFS+ for Windows 9.1
Partition Manager 14
Disk Wiper 12
Drive Copy 14
#5016ruthan
Zitat
A good question now is which gpt_loader.sys file version is now the last working one for Windows XP


 Every versions was working within XP, it was primary OS, where such driver make sense, because Windows 7+ have native gpt support. Maybe Vista, but nobody using it and maybe it support Win2000 (update: yeah its supported) i never checked it.

 If is not working for you its because of Intel controllers, its simply never worked with them.

#5017canonkongHere is a link about some source code from win10, meybe we can port them.
⇗ https://pastebin.com/VGEbWVSM
#5018Mov AX, 0xDEAD
Zitat von ⇗ canonkong im Beitrag ¶ #5017
Here is a link about some source code from win10, meybe we can port them

we know about this leak, but seems no one tried to compile, need rewrite some parts with Timers and create some missing files
#5019ruthanOn installation where is NVME not working (i testing proven - with other install v1.3_20180719 ) i found error in Even log, maybe it helps.
#5020tumagonxAnyone here with geforce hardware could confirm my previous question that driver after 332.21 works with winxppae patch?

some prior reports:
just search for "332.21"

⇗ https://wj32.org/wp/2011/02/23/pae-patch...-windows-7-sp1/
⇗ https://wj32.org/wp/2013/10/25/pae-patch...or-windows-8-1/

⇗ https://www.nvidia.com/en-us/geforce/for...pport-pae-mode/

⇗ http://fireswordblog.blogspot.com/2014/0...msys-after.html

⇗ https://forums.intel.com/s/question/0D50...?language=en_US
#5021ruthanThis old stuff just ignore it, there now newer better PAE patches, with /4GB switch they will work fine for everything. If you need more than 4GB there are quite and bad drivers for other devices and which will have issues.. and nobody can fix all of them.  You can make with Page /4g Ramdisk to use ram above 4GB, if you really need something very quick. There is Win limit for max 2GB per program anyway, very few enterprise SW like big DB engine, is able to get around it and use more processes i thing.

 You can try it and report bug, maybe, maybe someone will fix 1 broken driver for you.
#5022Mov AX, 0xDEAD¶ NTOSKRNL Emu_Extender
Post Updated, project published on github
#5023infuscomus⇗ @Mov AX, 0xDEAD

how far do you think we could go with this project? is there any hardware we could not get working with this?
#5024Mov AX, 0xDEAD⇗ @infuscomus

Zitat von ⇗ infuscomus im Beitrag ¶ #5023
how far do you think we could go with this project?

I made it because existing way of backporting is "dirty hacks", mess of injects/stubs/Jxx->Jyy. I've been wanting to remake all this horror for a long time.
I cant say how this project can helps with new backports, if i will do something new, i will use it
#5025infuscomus⇗ @daniel_k

usbtreeview of older Mov Ax 0xDEAD usbxhci driver



usbtreeview of newer daniel_k driver



text report attached

-----

If I did this incorrectly let me know.



infuscomus has attached files to this post

 

Page 336

#5026infuscomus
Zitat von ⇗ coldwove im Beitrag ¶ #3346
@diderius6 nope still doing the same thing sadly :c
0x000000A5
0x00000002
0x8D1BF828
0x00000001
0x8D1C4778

^
Can anyone confirm whether or not A5 BSODs are fixed for Threadripper Systems?
#5027gordo999⇗ @diderius6 ...I think you were asking ⇗ @Mov AX, 0xDEAD about the i219 missing functions for XP. The following is a list I made of both in depends x32 for the ntoskrnl and ndis51 missing functions for the i219 driver. I got them using depends x86 in a directory full of XP drivers and files by dropping the W7 driver, e1d6232.sys driver, into the directory and running depends for that driver.

My B360 chipset LAN driver hardware ID is Ven_8086&DEV_15BC. The e1d6232.sys is a W7 LAN x32 driver that lists the 15BC. I was planning to add the drivers marked **** below which depends marked as missing from the XP ntoskrnl and ndis.sys (5.1 wrapper). I had planned to add these missing exports but I have been up to my butt in alligators recently re personal matters.

My current W7 i219 driver is e1d62x64 but is has other files listed as follows:

e1d62x64.din
e1dmsg.dll
NicCo4.dll
NicInstD.dll

They may affect the i219 as well under XP even if the missing files are replaced. And please note my W7 installation is x64. I got the drivers from an Intel PRO1000 package for W7. I can get the exact package if you need it.

⇗ @daniel_k ...may have worked on this before but I don't know how far he got.

The only exports reported missing were from from XP ntoskrnl and ndis.sys and I have marked them below with ***.

ntoskrnl exports...

*** marks missing export

***EtwWrite
ExAllocatePoolWithTag
ExFreePoolWithTag
IoAllocateErrorLogEntry
***IoGetAffinityInterrupt
IoGetDeviceProperty
IoWMIRegistrationControl
IoWriteErrorLogEntry
IofCompleteRequest
KeAcquireInStackQueuedSpinLockAtDpcLevel
KeBugCheckEx
***KeGetProcessorIndexFromNumber
***KeGetProcessorNumberFromIndex
KeInitializeMutex
***KeQueryHighestNodeNumber
KeQuerySystemTime
KeReleaseInStackQueuedSpinLockFromDpcLevel
KeReleaseMutex
KeWaitForSingleObject
KefAcquireSpinLockAtDpcLevel
KefReleaseSpinLockFromDpcLevel
MmGetSystemRoutineAddress
MmMapLockedPagesSpecifyCache
***PoRegisterPowerSettingCallback
***PoUnregisterPowerSettingCallback
RtlAppendUnicodeStringToString
RtlCompareMemory
RtlCopyUnicodeString
RtlGetVersion
RtlInitUnicodeString
ZwClose
ZwOpenFile
_alldiv
_allmul
_allshl
_aulldiv
_aullshr
_purecall
_vsnwprintf
memcpy
***memcpy_s
memset
***sprintf_s
***strcpy_s
***vsprintf_s

ndis51 exports...

NdisAcquireReadWriteLock
***NdisAllocateIoWorkItem
***NdisAllocateMdl
NdisAllocateMemoryWithTag
***NdisAllocateMemoryWithTagPriority
***NdisAllocateNetBufferAndNetBufferList
***NdisAllocateNetBufferListPool
NdisCloseConfiguration
***NdisDeregisterDeviceEx
***NdisFreeIoWorkItem
***NdisFreeMdl
NdisFreeMemory
***NdisFreeNetBufferList
***NdisFreeNetBufferListPool
NdisGetRoutineAddress
NdisGetVersion
***NdisGroupActiveProcessorCount
NdisInitializeEvent
NdisInitializeReadWriteLock
NdisInitializeString
***NdisMAllocateNetBufferSGList
NdisMAllocateSharedMemory
NdisMCancelTimer
***NdisMDeregisterInterruptEx
***NdisMDeregisterMiniportDriver
***NdisMDeregisterScatterGatherDma
***NdisMFreeNetBufferSGList
NdisMFreeSharedMemory
***NdisMGetBusData
NdisMGetDeviceProperty
***NdisMIndicateReceiveNetBufferLists
***NdisMIndicateStatusEx
NdisMInitializeTimer
NdisMMapIoSpace
NdisMQueryAdapterInstanceName
***NdisMRegisterInterruptEx
***NdisMRegisterMiniportDriver
***NdisMRegisterScatterGatherDma
NdisMRemoveMiniport
NdisMResetComplete
***NdisMSendNetBufferListsComplete
***NdisMSetBusData
***NdisMSetMiniportAttributes
NdisMSetPeriodicTimer
NdisMSleep
NdisMUnmapIoSpace
***NdisOpenConfigurationEx
***NdisQueueIoWorkItem
NdisReadConfiguration
NdisReadNetworkAddress
***NdisRegisterDeviceEx
NdisReleaseReadWriteLock
NdisResetEvent
NdisSetEvent
***NdisSetOptionalHandlers
NdisSetTimer
NdisWaitEvent



Just noticed...

NicCo4.dll is missing .....WNetRestoreConnectionA in mpr.dll ....same for NicInstD.dll

Oddly, it lists mpr.dll as missing the same export. So, maybe if export is added to mpr.dll that will fix both files above.
#5028infuscomus⇗ @gordo999

the e1d6232 is not missing many exports

e1d6232 missing

IoGetAffinityInterrupt
vsprintf_s
sprintf_s
strcpy_s
PoUnregisterPowerSettingCallback
PoRegisterPowerSettingCallback
memcpy_s
KeQueryHighestNodeNumber
KeGetProcessorIndexFromNumber
KeGetProcessorNumberFromIndex
EtwWrite



ntoskrnl extender has these covered but there is more

ndis 7 missing

KeGetCurrentProcessorNumberEx
KeRevertToUserGroupAffinityThread
MmAllocateContiguousMemorySpecifyCacheNode
KeSetSystemGroupAffinityThread
KeQueryHighestNodeNumber
ExInitializeLookasideListEx
ExDeleteLookasideListEx
EtwWriteTransfer
KeQueryGroupAffinity
KeQueryActiveProcessorCountEx
KeQueryDpcWatchdogInformation
NtTraceControl
KeGetProcessorIndexFromNumber
KeQueryLogicalProcessorRelationship
KeGetProcessorNumberFromIndex
EtwRegister
KeSetTargetProcessorDpcEx
KeRegisterProcessorChangeCallback
PoRegisterPowerSettingCallback
KeQueryMaximumProcessorCountEx
RtlNumberOfSetBitsUlongPtr
KeQueryActiveGroupCount
KeQueryMaximumGroupCount
KeTestSpinLock
KeQueryNodeActiveAffinity
IoGetDeviceNumaNode
NtQuerySystemInformationEx
KeSetCoalescableTimer
IoGetDevicePropertyData
IoDisconnectInterruptEx
IoConnectInterruptEx
EtwWrite
PcwAddInstance
PcwRegister



netio 7 missing

MmAllocatePagesForMdlEx
KeFreeCalloutStack
KeAllocateCalloutStack
KeQueryActiveProcessorCountEx
IoInitializeWorkItem
IoSizeofWorkItem
IoUninitializeWorkItem
IoQueueWorkItemEx
EtwUnregister
EtwWrite
EtwRegister
SeCaptureSubjectContextEx
KeTestSpinLock
SeAccessCheckFromState
RtlCreateHashTable
RtlDeleteHashTable
RtlGetNextEntryHashTable
RtlLookupEntryHashTable
RtlRemoveEntryHashTable
RtlInsertEntryHashTable
RtlEndEnumerationHashTable
RtlEnumerateEntryHashTable
RtlInitEnumerationHashTable
RtlContractHashTable
RtlExpandHashTable
KeSetCoalescableTimer
ExInitializeLookasideListEx
ExDeleteLookasideListEx
KeGetCurrentProcessorNumberEx
KeQueryMaximumProcessorCountEx
#5029gordo999
Zitat von ⇗ infuscomus im Beitrag ¶ #5028
the e1d6232 is not missing many exports
⇗ @infuscomus ....I am wondering what method you used to determine the missing exports? I did it in XP in a directory containing the entire XP System32 and drivers directories. When I loaded e1d6232, in the same directory, into depends x86 it gave me the list I posted. The exports I marked as *** were marked in red in depends. I was using ndis.sys 5.1 version and the XP SP3 ntoskrnl.
#5030ruthanI have other question to magic distro?
Its possible to use Windows updates, activate it with my key?
And its safe with new *.dll use things  like sfc /scan ?
#5031Mov AX, 0xDEAD⇗ @Andalu

Zitat von ⇗ Andalu im Beitrag ¶ #4990

Until now, no disconnection for the ASM2362 UASP device beyond the heat as for the JMS583 chip.
However, I also got a BSOD 0x0C2 when 4 UASP devices was connected to the board at same time during a restart.


Hi Andalu
If it possible, please enable crashdump saving to disk and send me (i think in dump will never saved any your confidental info)
With some BSODs Windows cant save any files to disk and this BSODs very hard to investigate (need second pc with remote debugging)
#5032Andalu⇗ @Mov AX, 0xDEAD
Hi,
I had already enabled the 'Kernel Memory Dump' to get the dump file for that bad_pool_caller bsod without success. I had also modified the registry to find a way to obtain it.
I was able to save the dump only when I applied the trick to simulate a bsod via keyboard keys (holding right ctrl + pressing the scroll lock two times).


edit:

Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #5031
....(need second pc with remote debugging)

I don't think I'm able to do this because I've never debugged.
#5033Andalu⇗ @Mov AX, 0xDEAD
I tried once again to configure the system as below in the hope to save the memory.dump (editing also the boot.ini file with the /maxmem option):

 

but without results because when the bsod occurred again the dump file was not saved anyway.
#5034infuscomus⇗ @Andalu

Earlier ⇗ @daniel_k sent me a driver that solved a C2 BSOD for me, ask him if you can try it out.
#5035daniel_k
Zitat von ⇗ infuscomus im Beitrag ¶ #5034
@Andalu

Earlier @daniel_k sent me a driver that solved a C2 BSOD for me, ask him if you can try it out.

He already has it, sent Beta3 to both of you having the same issues.
#5036daniel_k⇗ @diderius6
When you have some time, please try this new Asmedia:
⇗ USB 3.0/3.1 Drivers (original and modded) (157)

Remember that v1.16.59.1 had issues with USB2/USB1 devices?

This one fixed that, at least for me.
#5037ruthan⇗ @daniel_k
 WHich ones? Regarding of description in 1st post they are Win7+

 I have now Asmedia controller too.
#5038daniel_k
Zitat von ⇗ ruthan im Beitrag ¶ #5037
@daniel_k
 WHich ones? Regarding of description in 1st post they are Win7+

 I have now Asmedia controller too.

Asmedia removed XP/Server 2003 info from Readme, but the drivers have always worked on those OSes.
#5039ruthanGood news for multibooting..

I fixed multiple video cards booting problem with MacOS:
⇗ https://www.tonymacx86.com/threads/2-dif...8/#post-2141678
Just by disabling whole PCI-E slot for non primary MacOS videocard, this tricks disable whole PCI-E controller is also working on Windows, but i never had time to dive deeper to it and find you how to discover which controller is used for which slot / card.. But Agent007 from Poland is using this trick for its multibooting system..


 I have also good news for not Gigabyte boards - no primary PCI-E slot bios settings. Its not needed. When you boot with primary no WinXP videocard without WinXP driver and installl Nvidia drivers for on second card and disable first one. Boot is working this - boot splash, bios etc.. its on first card, but when you reach logon screen, is on now on second card monitor(s).. of course you can use same monitor(s) for both cards and only other monitor inputs. I still dream about some autoswitching with some clever HDMI switch but, i have to test it.. If both cards giving you signal from boot it will not work, if not it will.. Or maybe some monitor have something like inputs priority.. so you can i theory give second card signal higher priority if used, it will auto switch to it.. I dont now too much about this.

WinXP multiple without cards setup:
  I also  setup nice Linux KVM videocard passthrough for XP on Linux, so i have even nice Linux QEMU win XP instance, if want to use it.. and its nice fallback for MBs where is will not XP working in future, until vendors will not completly stop supporting XP capable videocards..  But its Linux so there some additional hassle..
⇗ Windows 98SE on Modern Hardware (15)

  Next setup beside still not working NVME with my old install would be 3rd videocard and will try is Asmedia USB3 is better than VIA for my machine .. Geforce 6 or something like that for Win 98 KVM, in theory, it could work natively too, but it would need some Win98 USB capable USB controller and USB sound card / USB NIC, or PCI-E to PCI adapter for PCI soundcard, NIC or both - big mess within case or outside.. and still not Dos PCI dos audio.. it needs some BIOS / MB support (last ones are with support are X58 / X79).
  but well on Vogons is some guy from Estonia which have some ideas about some HW mods for it ( ⇗ https://www.vogons.org/viewtopic.php?p=830496#p830496 ⇗ https://www.vogons.org/viewtopic.php?p=716248#p716248 , he is already making new ISA soundcards with digital audio out you can support him by buy one.. ⇗ https://www.vogons.org/viewtopic.php?f=62&t=61282 ). Qemu Dos SB evolution is sucks so far.. Virtualbox is even worse, Vmware its getting better but slowly ( ⇗ https://www.vogons.org/viewtopic.php?f=9&t=69314 ) and they is not videocard pass through of course. If there is new board with LPT port there is Adlib emulator for it, its still better than PC speaker and quite few of games was patched for it: ⇗ https://www.serdashop.com/OPL2LPT   ⇗ https://github.com/pdewacht/adlipt/wiki/ADPATCH-Tested-Games
#5040kukonosau⇗ @diderius6
Do you have stable acpi.sys for XPx64 for Ryzen today? Where is last version?

 

Page 337

#5041diderius6⇗ @kukonosau

XP64 is unstable under Ryzen.
Lan, sound.. crash randomally on different compis with different Ryzen cpu
Dietmar
#5042kukonosau⇗ @diderius6
Crash randomally(((
#5043ruthan⇗ @kukonosau Why do you want to use it? Its not good operating system its not compatible with lots of WinXP 32 bit apps and its not compatible with most of x64 apps because they are for Vista and Windows 7. You can try it within virtual machine to discover that.
  If you like WinXP look just get some Windows 7 XP reskin, i would be much better. Its so but system, that MS was sort of giving it free and i thing that they not even implemented some genuine check to it, so was for first  64bit debbuging before proper Vista x86 release.
#5044ruthanOk  USB hell continues, i tested ASM 104x, i did search so far it there is some new firmware.

Detailed results are here:
⇗ https://docs.zoho.com/sheet/published.do...22a5b950420cb22

WinXP its better that VIA, i made working everything, but:
- Xbox 360 fake receiver - code 10, i simulated same within WIndows 10 with last Win-Raid driver.
- external USB3 hub - Icybox, its the same with Windows 10, it not detected, i detected it once by reconnect cables, devices where detected working, but after restart they where gone
- Its not working within bios for mouse..
- Its not working with Linux, its just not here - lsusb not show it..
- Its not working with MacOS
 Its only one which is realible for Realtek USB3 Gigabit one, Pinnacle TV stick and Xbox 360 controller (cable one) with WInXP and Windows 10, those are not working with VIA.

 So for me personally make sense still keep VIA, because no Linux and no MacOS is big nono for me.

I have some suspicion that these additional USB3 cards really dont play good with powered USB hub, because i disconnected power cable from machine and.. MB leds still lit for eternity and even Blue ray drive was from time to time blinking from time to time, i never experience something like that. I dunno if it power with my cheap USB2 ebay USB2 hub, or with ICYBox USB3 too, so its possible that becaus of that is not hub propertly reset during powerdowns or reboots.
 So i will test i once more without power to hubs, if it would be any better and if there is enough power to devices to working, USB 3 specs should give lots of power in theory, but i dunno how it keeps is real implementations.

 Its USB mouse working for you with Intel USB3 controller with WinXP? Because my Razer mouse is maybe some exception, some complex device.. i can live without lots of USB device, when i got bad boot and not working controller, but no mouse is too much.

 I still have Etron on the way and modchip USB2 PCI-E (for second time) USB is enough for me for devices, because Mass storages are already working with Intel USB3. Frescos on ebay are expensive and Texas instruments rare.. but it really seems that fix Intel USB3 would same lots of people lots of hassle..
#5045Dibya
Zitat von ⇗ ruthan im Beitrag ¶ #5043
@kukonosau Why do you want to use it? Its not good operating system its not compatible with lots of WinXP 32 bit apps and its not compatible with most of x64 apps because they are for Vista and Windows 7. You can try it within virtual machine to discover that.
  If you like WinXP look just get some Windows 7 XP reskin, i would be much better. Its so but system, that MS was sort of giving it free and i thing that they not even implemented some genuine check to it, so was for first  64bit debbuging before proper Vista x86 release.

Its a extremely stable and robust platform , believe it or not . My core 2 duo laptop runs it and i have no complain . 99% x64 apps released from 2007 to 2013 are compatible . I have never seen any XP 32bit app not running except one who still have 16bit components . On ryzen its a no go i guess but on intel XPx64 is  a stable mad lad , a did disordered server 2003
#5046ruthan
Zitat von ⇗ Dibya im Beitrag ¶ #5045

Its a extremely stable and robust platform , believe it or not . My core 2 duo laptop runs it and i have no complain . 99% x64 apps released from 2007 to 2013 are compatible . I have never seen any XP 32bit app not running except one who still have 16bit components . On ryzen its a no go i guess but on intel XPx64 is  a stable mad lad , a did disordered server 2003

 Well i already heard lots of big worlds from you in the past, some of them never fulfilled, so im a bit skeptic.

  It could be stable, but if Windows 7 apps not really working, it make no sense 2007 to 2013, could mean anything. Lots of apps are just checking on which OS its running, yeah there is probably hack for it, they would depend on some missing kernel function and libs, i dont believe that such big stacks as Direct X 10/11 are somehow emulated and hacked, for other things like networking stuff, .Net it would be probably similar.
   On Windows 7 is now running almost everything except few Win10 stuff, but dont belive in any strech of imagination that such things would run on Windows 7.. and what about the drivers are Windows 7 drivers running on Win x64, because if not for example video drivers would be big problem. Even within WIn x64 heydays there where lots of problems with drivers.
#5047infuscomus⇗ @Mov AX, 0xDEAD

I'm trying to follow your guide to use ntoskrnl extender

I managed to get the USB 3.0 driver working with it, but I couldn't get KMDF 1.11 working with it - it kept throwing a 7E BSOD.

When I switched to modded KMDF everything worked fine.

any idea why wdf01_w8.sys would throw a 7E BSOD?
#5048dencorso
Zitat von ⇗ Andalu im Beitrag ¶ #5032
@Mov AX, 0xDEAD
Hi,
I had already enabled the 'Kernel Memory Dump' to get the dump file for that bad_pool_caller bsod without success. I had also modified the registry to find a way to obtain it. I was able to save the dump only when I applied the trick to simulate a bsod via keyboard keys (holding right ctrl + pressing the scroll lock two times).


⇗ @Andalu: your system may be needing ⇗ https://web.archive.org/web/201305110015...t.com/kb/916157, my friend. While most files in it are actually superseded, its dumpdrv.exe is the latest one ever released... and despite being old, it's not widely known.
#5049Mov AX, 0xDEAD
Zitat von ⇗ infuscomus im Beitrag ¶ #5047
@Mov AX, 0xDEAD
I managed to get the USB 3.0 driver working with it, but I couldn't get KMDF 1.11 working with it - it kept throwing a 7E BSOD.
any idea why wdf01_w8.sys would throw a 7E BSOD?

Hi infuscomus
Which version of WdfLdr & WDF0100.SYS used to patch ?
#5050daniel_k
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #5049
Hi infuscomus
Which version of WdfLdr & WDF0100.SYS used to patch ?


Nevermind this, he tried to use a version I compiled to specifically to test with ucx01000.sys/usbxhci.sys to fix the workitem issue (0xC2).

By the way, tried to compile your V2 Extender and is giving me the following error:
 
storport.obj : error LNK2019: unresolved external symbol _StorPortExtendedFunction
referenced in function _StorPortExtendedFunction_k8


Will try to find out what is missing.

#5051Andalu
Zitat von ⇗ dencorso im Beitrag ¶ #5048
@Andalu: your system may be needing ⇗ https://web.archive.org/web/201305110015...t.com/kb/916157, my friend. While most files in it are actually superseded, its dumpdrv.exe is the latest one ever released... and despite being old, it's not widely known.

Hi dencorso,
thanks for the info but the link to download the KB update gave me the message: "The requested URL was not found on the server".
It doesn't matter because the "dumpdrv.sys" version I found ⇗ here is more updated than the version mentioned in that article and it is the same version already contained in the nice WinXP-IE from zone62.com I used in all my attempts even if I couldn't get the dump file for the C2 bsod:

#5052Mov AX, 0xDEAD
Zitat von ⇗ daniel_k im Beitrag ¶ #5050

By the way, tried to compile your V2 Extender and is giving me the following error:
 
storport.obj : error LNK2019: unresolved external symbol _StorPortExtendedFunction
referenced in function _StorPortExtendedFunction_k8


Will try to find out what is missing.



⇗ @daniel_k
If target OS is WinXP,  linker use storport.lib from lib\wxp\i386\, this lib dont have proper exports (why ms added storport.lib to xp x32 folder ?)
fix: override storport.lib to w2003 version from \lib\wnet\i386\
also include $(DDK_LIB_PATH)\storport.lib in sources file
#5053sgb0504help
The operating system I use is 32-bit XP
INTEL I5 9400
ASUS ROG STRIX H370-F GAMING
The operating system I use is 32-bit XP

Press F5 to have only Standard PC with C-Step i486
No ACPI Multiprocessor PC to choose
why? ?
Thank you
#5054YuriyCN
Zitat von ⇗ sgb0504 im Beitrag ¶ #5053

Press F5 to have only Standard PC with C-Step i486
No ACPI Multiprocessor PC to choose
why? ?
Thank you


use mod ACPI.SYS
#5055Mov AX, 0xDEADWindows 8 USB3 driver always report USB2 speed on inserted USB3 devices, MS call it "compatibility", but vendors driver report proper USB3 speed and dont have compatibility issues(?)

Little patch to report proper USB3 speed:
usbhub3.sys (any version)
83 7E 54 03 75 09 => 83 7E 54 03 EB 09

same place in leaked sources (HUBFDO_IoctlGetNodeConnectionInfo):
orig:
//
// COMPAT: Return high-speed for superspeed devices, to avoid confusing
// clients that are not USB3 aware.
//
if (deviceContext->UsbDeviceInfo.DeviceSpeed == UsbSuperSpeed) {
nodeConnectionInformationEx->Speed = UsbHighSpeed;
} else {
nodeConnectionInformationEx->Speed = deviceContext->UsbDeviceInfo.DeviceSpeed;
}

patch:
if (deviceContext->UsbDeviceInfo.DeviceSpeed == UsbSuperSpeed) {
nodeConnectionInformationEx->Speed = deviceContext->UsbDeviceInfo.DeviceSpeed;
} else {
nodeConnectionInformationEx->Speed = deviceContext->UsbDeviceInfo.DeviceSpeed;
}

 

Page 338

#5056Mov AX, 0xDEADPatch for VIA USB Mass Storage Device (UAS/UASP) to restore "Safe Remove":

vusbstor.sys x32 v6.1.7600.4002
89 9D 70 FF FF FF 89 9D 68 FF FF FF => 90 90 90 90 90 90 89 9D 68 FF FF FF
#5057canonkongI got a Gigabyte B550I AORUS PRO AX. Its very strange that it can work on win7 with zen/zen+ CPU and APU, but will ACPI not fully support A5 BSOD with zen2 cpu. On Gigabyte X570I AORUS PRO WIFI, they all can work fine.
To solve this BSOD, expect to modify ACPI.sys, maybe can use clover to overlay the ACPI to guide the OS.
#5058infuscomus⇗ @canonkong

did modded acpi.sys not work?
#5059isopc1999a
Zitat von ⇗ canonkong im Beitrag ¶ #5057
I got a Gigabyte B550I AORUS PRO AX. Its very strange that it can work on win7 with zen/zen+ CPU and APU, but will ACPI not fully support A5 BSOD with zen2 cpu. On Gigabyte X570I AORUS PRO AX, they all can work fine.
To solve this BSOD, expect to modify ACPI.sys, maybe can use clover to overlay the ACPI to guide the OS.

That is very strange. What is the firmware version?
Both firmware version of X570 and B550 are AGESA Combo V2 1.0.0.2?
#5060daniel_k
Zitat von ⇗ canonkong im Beitrag ¶ #5057
I got a Gigabyte B550I AORUS PRO AX. Its very strange that it can work on win7 with zen/zen+ CPU and APU, but will ACPI not fully support A5 BSOD with zen2 cpu. On Gigabyte X570I AORUS PRO AX, they all can work fine.
To solve this BSOD, expect to modify ACPI.sys, maybe can use clover to overlay the ACPI to guide the OS.

That X570I model doesn't exist, you mean X570 I AORUS PRO WIFI?

Anyway, did a quick look at their DSDT tables, B550I AORUS PRO AX has 2 DSDTs, first one seems to be for Zen2, second for Zen/Zen+ (this table is nearly identical to the X570 I AORUS PRO WIFI, which has a single table).

If you say that X570 I AORUS PRO WIFI has no issues with Zen2, what about replacing the first DSDT from B550I AORUS PRO AX with the second DSDT table?
#5061ruthanI updated bios on my Z390 Gaming SLI and it changed 1 thing, now when i connect "bad" device on Intel controller with Generic USB driver - before XP boot, im now not getting black screen, but "proper" blue screen -0x00000050, this one:
#5062canonkong⇗ @isopc1999a
If X570 also use AGESA Combo V2 1.0.0.2, It also will A5 bsod, so it may something wrong whit AGESA Combo V2 1.0.0.2 bios.
#5063canonkong⇗ @daniel_k
Yes ,X570 I AORUS PRO WIFI.
If X570 also use AGESA Combo V2 1.0.0.2, It also will A5 bsod, so it may something wrong with AGESA Combo V2 1.0.0.2 bios.
It just can not work with ZEN2 CPU. But it can work well with zen/zen+ CPU/APU and zen2 APU(4700G) also can work well.
#5064canonkong⇗ @infuscomus
Currently there is no mod ACPI.sys for windows 2006 2006SP1 2009.
#5065Andalu
Zitat von ⇗ Andalu im Beitrag ¶ #4089
XP seems don't work on asrock H310M-HDV. I tried both a fresh installation and the image restoring from a working XP with no success. I got the A5 BSOD for all the acpi sysfiles found on this forum except for this ¶ acpi.sys for which I got the 7B error. Any suggestion?

I quote myself :) because XP now also installs on this crazy board, but only downgrading the bios to the first version released, the older v1.20. It's the only one that can allow the XP installation, no other version works.

But thinking about installing and using XP on this board without encountering any problems is quite difficult:

since this board has only one PS/2 port, a PS/2 "Y" splitter cable is the best choice to complete the XP installation without too many headaches. In its lack, a PS/2 keyboard is needed for the 'TXT mode setup' and for the 'GUI mode setup' (having already configured the display settings while preparing the ISO), since the USB mouse won't work in GUI mode in any port, no matter if USB2 or USB3. Here I noticed the first strange behavior: the USB keyboard also works in the GUI mode setup but only if another keyboard is connected at same time into the PS/2 port. However, even if a USB mouse is connected to the same port instead of the USB keyboard, the mouse will still not work
With these precautions, XP installs normally.

Unfortunately, the problems aren't over yet: no one USB2 or USB3 port will work in XP, even though both the mouse and the USB keyboard are powered. Copying the missing usbd.sys in the system32 folder doesn't help to have at least a working USB2. But here another strange behavior: without any USB3 driver installed, with the mouse connected to a PS/2 port and the keyboard connected to any USB port, the PS/2 mouse will only work if no keyboard key is pressed ; as soon as a key is pressed, the mouse cursor locks . In this case, installing the USB3 driver helps, but only to avoid this strange behavior because none of the USB3 drivers installs without giving error code 10 or 39. Tried with all USB3 driver versions (backported from Win8 and AMDXHCI), there is no way:



I'd rather stop here and not keep using XP on this crazy motherboard until I'll find a way to solve the USB issues. Who choose to install XP on this board is warned :)


P.S.: no USB issue in Win7 and Win8.
#5066ruthanMoshpit (Moschip) PCI-E USB2 chip arrived so i tested it..
⇗ https://docs.zoho.com/sheet/published.do...22a5b950420cb22

 Its play very nice with XP, except my most problematic Realtek USB LAN Gigabyte adapter (driver install but not i cant connect so far, it worked only with Asmedia) is playing very nice with XP and Win10, all devices are working.

 Unfortunately it completely freeze MacOS boot, so nothing for me :(
#5067infuscomushas anyone tried to install XP on threadripper?
#5068ruthanI have question about bios mods - iommu groups , mainly for Daniel but he has no PM policy, so im writing it here.. I added third videocard for Win98 KVM to second PCI-E long slot, but it sharing iommu group with first long PCI-E slot, what is no go for Linux video card passthrough (except some out of stream kernel hacks, which are tried but they are on for Ubuntu and not even for other Debian derivates).. so i wonder if he has knowledge to change it?
#5069Mov AX, 0xDEADPatch for Etron USB Mass Storage Device (UAS/UASP) to restore "Safe Remove":

EtronSTOR.SYS (any version):
OR dword ptr [eax+4], 0300h -> OR  dword ptr [eax+4], 0000h
(03 => 00)
#5070daniel_k
Zitat von ⇗ canonkong im Beitrag ¶ #5063
@daniel_k
Yes ,X570 I AORUS PRO WIFI.
If X570 also use AGESA Combo V2 1.0.0.2, It also will A5 bsod, so it may something wrong with AGESA Combo V2 1.0.0.2 bios.
It just can not work with ZEN2 CPU. But it can work well with zen/zen+ CPU/APU and zen2 APU(4700G) also can work well.

Can you post the complete info on the A5 BSOD (all parameters)? Sometimes it gives us some hints.

 

Page 339

#5071daniel_k⇗ @Andalu

Did you try the acpi.sys from outerspace (so diderius6 says) with your Asrock H310M-HDV?
#5072daniel_k
Zitat von ⇗ ruthan im Beitrag ¶ #5068
I have question about bios mods - iommu groups , mainly for Daniel but he has no PM policy, so im writing it here.. I added third videocard for Win98 KVM to second PCI-E long slot, but it sharing iommu group with first long PCI-E slot, what is no go for Linux video card passthrough (except some out of stream kernel hacks, which are tried but they are on for Ubuntu and not even for other Debian derivates).. so i wonder if he has knowledge to change it?
 

Unfortunately I have no experience with this, but for consumer boards, resource sharing is really common.

Maybe HEDT boards are less prone to resource sharing?
#5073ruthan
Zitat von ⇗ daniel_k im Beitrag ¶ #5072
Zitat von ⇗ ruthan im Beitrag ¶ #5068
I have question about bios mods - iommu groups , mainly for Daniel but he has no PM policy, so im writing it here.. I added third videocard for Win98 KVM to second PCI-E long slot, but it sharing iommu group with first long PCI-E slot, what is no go for Linux video card passthrough (except some out of stream kernel hacks, which are tried but they are on for Ubuntu and not even for other Debian derivates).. so i wonder if he has knowledge to change it?
 

Unfortunately I have no experience with this, but for consumer boards, resource sharing is really common.
Maybe HEDT boards are less prone to resource sharing?

 HEDT would be better for sure, but i they are also more expensive.. there was some buzz about it for Ryzen mbs about bad iommu, so it was fixed, but i guess there is small chance for same thing for Intel. I also contacted Gigabyte, but i giving it 5% change to actually fix it.

 Otherwise i found other nasty Xp thing.. if i install Acronis True image.. USB keyboard preebot Scandisk skip no more working, keyboard is death.. so there is something what matters:
1) maybe is just Acronis boot drivers error..
2) maybe depends on order how drivers are loaded and keyboard driver is not loaded fast enough
3) maybe depends on number of drivers, because its not loaded fast enough..
  Its strange, because keyboard is light before it, that is usually sign that its working, my bet is on 1, i can live without Acronis on XP.. but is not right for sure. I dunno if keyboard is working after that, because that Scandisk take hour or so on my 4TB disks and already disconnected PS/2 keyboard to bypass it (it theory it could not work too).
#5074Andalu⇗ @daniel_k
only a few versions of acpi.sys work on this crazy board and one of them is the "OuterSpace" version.
Reported issues occur with all modded acpi sysfiles working.
#5075canonkong⇗ @daniel_k
AGESA ComboAm4 v2 PI 1.0.0.1/1.0.0.2 change lots of things, also bring some bugs.
#5076ruthanSome info about updating, it installed Office 2003 +2007 and all updates all fine, it need phone activation, there is message that its not supported, but its still working.

But i met other problem, i installed AVG anvitirus which is still supported with XP, but got boot Bluescreen from it - 005, so it seems that is doing something with system settings.
#5077Mov AX, 0xDEAD¶ NTOSKRNL Emu_Extender
Updated post, added new:
- Windows 8s STORAHCI driver for Windows XP/2003
- Windows 7s MSAHCI driver for Windows XP/2003
#5078daniel_k
Zitat von ⇗ Andalu im Beitrag ¶ #5074
@daniel_k
only a few versions of acpi.sys work on this crazy board and one of them is the "OuterSpace" version.
Reported issues occur with all modded acpi sysfiles working.

Hopefully we'll have a fully working acpi.sys in the foreseeable future.
#5079daniel_k
Zitat von ⇗ canonkong im Beitrag ¶ #5075
@daniel_k
AGESA ComboAm4 v2 PI 1.0.0.1/1.0.0.2 change lots of things, also bring some bugs.

That error means cannot load DDB (Differentiated Definition Block, which is the whole DSDT table itself).

I've easily spotted the following differences between 12f and 20a BIOS of the X570 I AORUS PRO WIFI board.

Old code, 3 variables values are smaller and Device (RHUB) is properly under the Scope it belongs to:
    Name (PEBL, 0x04000000)
Name (PEBS, 0xF8000000)
Name (PELN, 0x04000000)
...
Scope (_SB.PCI0.GP13.XHC0)
{
Device (RHUB)
{
Name (_ADR, Zero) // _ADR: Address
Device (PRT1)
{
Name (_ADR, One) // _ADR: Address
Name (_UPC, Package (0x04) // _UPC: USB Port Capabilities
{
0xFF,
0x03,
Zero,
Zero
})
Name (_PLD, Package (0x01) // _PLD: Physical Location of Device
{
ToPLD (
PLD_Revision = 0x2,
PLD_IgnoreColor = 0x1,
PLD_Red = 0x0,
PLD_Green = 0x0,
PLD_Blue = 0x0,
PLD_Width = 0x0,
PLD_Height = 0x0,
PLD_UserVisible = 0x1,
PLD_Dock = 0x0,
PLD_Lid = 0x0,
PLD_Panel = "BACK",
PLD_VerticalPosition = "CENTER",
PLD_HorizontalPosition = "LEFT",
PLD_Shape = "VERTICALRECTANGLE",
PLD_GroupOrientation = 0x0,
PLD_GroupToken = 0x0,
PLD_GroupPosition = 0x1,
PLD_Bay = 0x0,
PLD_Ejectable = 0x1,
PLD_EjectRequired = 0x0,
PLD_CabinetNumber = 0x0,
PLD_CardCageNumber = 0x0,
PLD_Reference = 0x0,
PLD_Rotation = 0x0,
PLD_Order = 0x0,
PLD_VerticalOffset = 0xFFFF,
PLD_HorizontalOffset = 0xFFFF)

})
}

Device (PRT2)
{
Name (_ADR, 0x02) // _ADR: Address
Name (_UPC, Package (0x04) // _UPC: USB Port Capabilities
{
0xFF,
0x03,
Zero,
Zero
})
Name (_PLD, Package (0x01) // _PLD: Physical Location of Device
{
ToPLD (
PLD_Revision = 0x2,
PLD_IgnoreColor = 0x1,
PLD_Red = 0x0,
PLD_Green = 0x0,
PLD_Blue = 0x0,
PLD_Width = 0x0,
PLD_Height = 0x0,
PLD_UserVisible = 0x1,
PLD_Dock = 0x0,
PLD_Lid = 0x0,
PLD_Panel = "BACK",
PLD_VerticalPosition = "CENTER",
PLD_HorizontalPosition = "RIGHT",
PLD_Shape = "VERTICALRECTANGLE",
PLD_GroupOrientation = 0x0,
PLD_GroupToken = 0x0,
PLD_GroupPosition = 0x2,
PLD_Bay = 0x0,
PLD_Ejectable = 0x1,
PLD_EjectRequired = 0x0,
PLD_CabinetNumber = 0x0,
PLD_CardCageNumber = 0x0,
PLD_Reference = 0x0,
PLD_Rotation = 0x0,
PLD_Order = 0x0,
PLD_VerticalOffset = 0xFFFF,
PLD_HorizontalOffset = 0xFFFF)

})
}

Device (PRT3)
{
Name (_ADR, 0x03) // _ADR: Address
Name (_UPC, Package (0x04) // _UPC: USB Port Capabilities
{
0xFF,
0x03,
Zero,
Zero
})
Name (_PLD, Package (0x01) // _PLD: Physical Location of Device
{
ToPLD (
PLD_Revision = 0x2,
PLD_IgnoreColor = 0x1,
PLD_Red = 0x0,
PLD_Green = 0x0,
PLD_Blue = 0x0,
PLD_Width = 0x0,
PLD_Height = 0x0,
PLD_UserVisible = 0x1,
PLD_Dock = 0x0,
PLD_Lid = 0x0,
PLD_Panel = "BACK",
PLD_VerticalPosition = "CENTER",
PLD_HorizontalPosition = "LEFT",
PLD_Shape = "VERTICALRECTANGLE",
PLD_GroupOrientation = 0x0,
PLD_GroupToken = 0x0,
PLD_GroupPosition = 0x3,
PLD_Bay = 0x0,
PLD_Ejectable = 0x1,
PLD_EjectRequired = 0x0,
PLD_CabinetNumber = 0x0,
PLD_CardCageNumber = 0x0,
PLD_Reference = 0x0,
PLD_Rotation = 0x0,
PLD_Order = 0x0,
PLD_VerticalOffset = 0xFFFF,
PLD_HorizontalOffset = 0xFFFF)

})
}

Device (PRT4)
{
Name (_ADR, 0x04) // _ADR: Address
Name (_UPC, Package (0x04) // _UPC: USB Port Capabilities
{
0xFF,
0x03,
Zero,
Zero
})
Name (_PLD, Package (0x01) // _PLD: Physical Location of Device
{
ToPLD (
PLD_Revision = 0x2,
PLD_IgnoreColor = 0x1,
PLD_Red = 0x0,
PLD_Green = 0x0,
PLD_Blue = 0x0,
PLD_Width = 0x0,
PLD_Height = 0x0,
PLD_UserVisible = 0x1,
PLD_Dock = 0x0,
PLD_Lid = 0x0,
PLD_Panel = "BACK",
PLD_VerticalPosition = "CENTER",
PLD_HorizontalPosition = "RIGHT",
PLD_Shape = "VERTICALRECTANGLE",
PLD_GroupOrientation = 0x0,
PLD_GroupToken = 0x0,
PLD_GroupPosition = 0x4,
PLD_Bay = 0x0,
PLD_Ejectable = 0x1,
PLD_EjectRequired = 0x0,
PLD_CabinetNumber = 0x0,
PLD_CardCageNumber = 0x0,
PLD_Reference = 0x0,
PLD_Rotation = 0x0,
PLD_Order = 0x0,
PLD_VerticalOffset = 0xFFFF,
PLD_HorizontalOffset = 0xFFFF)

})
}

Device (PRT5)
{
Name (_ADR, 0x05) // _ADR: Address
Name (_UPC, Package (0x04) // _UPC: USB Port Capabilities
{
0xFF,
0x03,
Zero,
Zero
})
Name (_PLD, Package (0x01) // _PLD: Physical Location of Device
{
ToPLD (
PLD_Revision = 0x2,
PLD_IgnoreColor = 0x1,
PLD_Red = 0x0,
PLD_Green = 0x0,
PLD_Blue = 0x0,
PLD_Width = 0x0,
PLD_Height = 0x0,
PLD_UserVisible = 0x1,
PLD_Dock = 0x0,
PLD_Lid = 0x0,
PLD_Panel = "BACK",
PLD_VerticalPosition = "CENTER",
PLD_HorizontalPosition = "LEFT",
PLD_Shape = "VERTICALRECTANGLE",
PLD_GroupOrientation = 0x0,
PLD_GroupToken = 0x0,
PLD_GroupPosition = 0x1,
PLD_Bay = 0x0,
PLD_Ejectable = 0x1,
PLD_EjectRequired = 0x0,
PLD_CabinetNumber = 0x0,
PLD_CardCageNumber = 0x0,
PLD_Reference = 0x0,
PLD_Rotation = 0x0,
PLD_Order = 0x0,
PLD_VerticalOffset = 0xFFFF,
PLD_HorizontalOffset = 0xFFFF)

})
}

Device (PRT6)
{
Name (_ADR, 0x06) // _ADR: Address
Name (_UPC, Package (0x04) // _UPC: USB Port Capabilities
{
0xFF,
0x03,
Zero,
Zero
})
Name (_PLD, Package (0x01) // _PLD: Physical Location of Device
{
ToPLD (
PLD_Revision = 0x2,
PLD_IgnoreColor = 0x1,
PLD_Red = 0x0,
PLD_Green = 0x0,
PLD_Blue = 0x0,
PLD_Width = 0x0,
PLD_Height = 0x0,
PLD_UserVisible = 0x1,
PLD_Dock = 0x0,
PLD_Lid = 0x0,
PLD_Panel = "BACK",
PLD_VerticalPosition = "CENTER",
PLD_HorizontalPosition = "RIGHT",
PLD_Shape = "VERTICALRECTANGLE",
PLD_GroupOrientation = 0x0,
PLD_GroupToken = 0x0,
PLD_GroupPosition = 0x2,
PLD_Bay = 0x0,
PLD_Ejectable = 0x1,
PLD_EjectRequired = 0x0,
PLD_CabinetNumber = 0x0,
PLD_CardCageNumber = 0x0,
PLD_Reference = 0x0,
PLD_Rotation = 0x0,
PLD_Order = 0x0,
PLD_VerticalOffset = 0xFFFF,
PLD_HorizontalOffset = 0xFFFF)

})
}

Device (PRT7)
{
Name (_ADR, 0x07) // _ADR: Address
Name (_UPC, Package (0x04) // _UPC: USB Port Capabilities
{
0xFF,
0x03,
Zero,
Zero
})
Name (_PLD, Package (0x01) // _PLD: Physical Location of Device
{
ToPLD (
PLD_Revision = 0x2,
PLD_IgnoreColor = 0x1,
PLD_Red = 0x0,
PLD_Green = 0x0,
PLD_Blue = 0x0,
PLD_Width = 0x0,
PLD_Height = 0x0,
PLD_UserVisible = 0x1,
PLD_Dock = 0x0,
PLD_Lid = 0x0,
PLD_Panel = "BACK",
PLD_VerticalPosition = "CENTER",
PLD_HorizontalPosition = "LEFT",
PLD_Shape = "VERTICALRECTANGLE",
PLD_GroupOrientation = 0x0,
PLD_GroupToken = 0x0,
PLD_GroupPosition = 0x3,
PLD_Bay = 0x0,
PLD_Ejectable = 0x1,
PLD_EjectRequired = 0x0,
PLD_CabinetNumber = 0x0,
PLD_CardCageNumber = 0x0,
PLD_Reference = 0x0,
PLD_Rotation = 0x0,
PLD_Order = 0x0,
PLD_VerticalOffset = 0xFFFF,
PLD_HorizontalOffset = 0xFFFF)

})
}

Device (PRT8)
{
Name (_ADR, 0x08) // _ADR: Address
Name (_UPC, Package (0x04) // _UPC: USB Port Capabilities
{
0xFF,
0x03,
Zero,
Zero
})
Name (_PLD, Package (0x01) // _PLD: Physical Location of Device
{
ToPLD (
PLD_Revision = 0x2,
PLD_IgnoreColor = 0x1,
PLD_Red = 0x0,
PLD_Green = 0x0,
PLD_Blue = 0x0,
PLD_Width = 0x0,
PLD_Height = 0x0,
PLD_UserVisible = 0x1,
PLD_Dock = 0x0,
PLD_Lid = 0x0,
PLD_Panel = "BACK",
PLD_VerticalPosition = "CENTER",
PLD_HorizontalPosition = "RIGHT",
PLD_Shape = "VERTICALRECTANGLE",
PLD_GroupOrientation = 0x0,
PLD_GroupToken = 0x0,
PLD_GroupPosition = 0x4,
PLD_Bay = 0x0,
PLD_Ejectable = 0x1,
PLD_EjectRequired = 0x0,
PLD_CabinetNumber = 0x0,
PLD_CardCageNumber = 0x0,
PLD_Reference = 0x0,
PLD_Rotation = 0x0,
PLD_Order = 0x0,
PLD_VerticalOffset = 0xFFFF,
PLD_HorizontalOffset = 0xFFFF)

})
}
}
}

   
New code, 3 variables values have increased and Device (RHUB) is not under any Scope, defitively wrong:

    Name (PEBL, 0x08000000)
Name (PEBS, 0xF0000000)
Name (PELN, 0x08000000)
...
Device (RHUB)
{
Name (_ADR, Zero) // _ADR: Address
Device (PRT1)
{
Name (_ADR, One) // _ADR: Address
Name (_UPC, Package (0x04) // _UPC: USB Port Capabilities
{
0xFF,
0x03,
Zero,
Zero
})
Name (_PLD, Package (0x01) // _PLD: Physical Location of Device
{
ToPLD (
PLD_Revision = 0x2,
PLD_IgnoreColor = 0x1,
PLD_Red = 0x0,
PLD_Green = 0x0,
PLD_Blue = 0x0,
PLD_Width = 0x0,
PLD_Height = 0x0,
PLD_UserVisible = 0x1,
PLD_Dock = 0x0,
PLD_Lid = 0x0,
PLD_Panel = "BACK",
PLD_VerticalPosition = "CENTER",
PLD_HorizontalPosition = "LEFT",
PLD_Shape = "VERTICALRECTANGLE",
PLD_GroupOrientation = 0x0,
PLD_GroupToken = 0x0,
PLD_GroupPosition = 0x1,
PLD_Bay = 0x0,
PLD_Ejectable = 0x1,
PLD_EjectRequired = 0x0,
PLD_CabinetNumber = 0x0,
PLD_CardCageNumber = 0x0,
PLD_Reference = 0x0,
PLD_Rotation = 0x0,
PLD_Order = 0x0,
PLD_VerticalOffset = 0xFFFF,
PLD_HorizontalOffset = 0xFFFF)

})
}

Device (PRT2)
{
Name (_ADR, 0x02) // _ADR: Address
Name (_UPC, Package (0x04) // _UPC: USB Port Capabilities
{
0xFF,
0x03,
Zero,
Zero
})
Name (_PLD, Package (0x01) // _PLD: Physical Location of Device
{
ToPLD (
PLD_Revision = 0x2,
PLD_IgnoreColor = 0x1,
PLD_Red = 0x0,
PLD_Green = 0x0,
PLD_Blue = 0x0,
PLD_Width = 0x0,
PLD_Height = 0x0,
PLD_UserVisible = 0x1,
PLD_Dock = 0x0,
PLD_Lid = 0x0,
PLD_Panel = "BACK",
PLD_VerticalPosition = "CENTER",
PLD_HorizontalPosition = "RIGHT",
PLD_Shape = "VERTICALRECTANGLE",
PLD_GroupOrientation = 0x0,
PLD_GroupToken = 0x0,
PLD_GroupPosition = 0x2,
PLD_Bay = 0x0,
PLD_Ejectable = 0x1,
PLD_EjectRequired = 0x0,
PLD_CabinetNumber = 0x0,
PLD_CardCageNumber = 0x0,
PLD_Reference = 0x0,
PLD_Rotation = 0x0,
PLD_Order = 0x0,
PLD_VerticalOffset = 0xFFFF,
PLD_HorizontalOffset = 0xFFFF)

})
}

Device (PRT3)
{
Name (_ADR, 0x03) // _ADR: Address
Name (_UPC, Package (0x04) // _UPC: USB Port Capabilities
{
0xFF,
0x03,
Zero,
Zero
})
Name (_PLD, Package (0x01) // _PLD: Physical Location of Device
{
ToPLD (
PLD_Revision = 0x2,
PLD_IgnoreColor = 0x1,
PLD_Red = 0x0,
PLD_Green = 0x0,
PLD_Blue = 0x0,
PLD_Width = 0x0,
PLD_Height = 0x0,
PLD_UserVisible = 0x1,
PLD_Dock = 0x0,
PLD_Lid = 0x0,
PLD_Panel = "BACK",
PLD_VerticalPosition = "CENTER",
PLD_HorizontalPosition = "LEFT",
PLD_Shape = "VERTICALRECTANGLE",
PLD_GroupOrientation = 0x0,
PLD_GroupToken = 0x0,
PLD_GroupPosition = 0x3,
PLD_Bay = 0x0,
PLD_Ejectable = 0x1,
PLD_EjectRequired = 0x0,
PLD_CabinetNumber = 0x0,
PLD_CardCageNumber = 0x0,
PLD_Reference = 0x0,
PLD_Rotation = 0x0,
PLD_Order = 0x0,
PLD_VerticalOffset = 0xFFFF,
PLD_HorizontalOffset = 0xFFFF)

})
}

Device (PRT4)
{
Name (_ADR, 0x04) // _ADR: Address
Name (_UPC, Package (0x04) // _UPC: USB Port Capabilities
{
0xFF,
0x03,
Zero,
Zero
})
Name (_PLD, Package (0x01) // _PLD: Physical Location of Device
{
ToPLD (
PLD_Revision = 0x2,
PLD_IgnoreColor = 0x1,
PLD_Red = 0x0,
PLD_Green = 0x0,
PLD_Blue = 0x0,
PLD_Width = 0x0,
PLD_Height = 0x0,
PLD_UserVisible = 0x1,
PLD_Dock = 0x0,
PLD_Lid = 0x0,
PLD_Panel = "BACK",
PLD_VerticalPosition = "CENTER",
PLD_HorizontalPosition = "RIGHT",
PLD_Shape = "VERTICALRECTANGLE",
PLD_GroupOrientation = 0x0,
PLD_GroupToken = 0x0,
PLD_GroupPosition = 0x4,
PLD_Bay = 0x0,
PLD_Ejectable = 0x1,
PLD_EjectRequired = 0x0,
PLD_CabinetNumber = 0x0,
PLD_CardCageNumber = 0x0,
PLD_Reference = 0x0,
PLD_Rotation = 0x0,
PLD_Order = 0x0,
PLD_VerticalOffset = 0xFFFF,
PLD_HorizontalOffset = 0xFFFF)

})
}

Device (PRT5)
{
Name (_ADR, 0x05) // _ADR: Address
Name (_UPC, Package (0x04) // _UPC: USB Port Capabilities
{
0xFF,
0x03,
Zero,
Zero
})
Name (_PLD, Package (0x01) // _PLD: Physical Location of Device
{
ToPLD (
PLD_Revision = 0x2,
PLD_IgnoreColor = 0x1,
PLD_Red = 0x0,
PLD_Green = 0x0,
PLD_Blue = 0x0,
PLD_Width = 0x0,
PLD_Height = 0x0,
PLD_UserVisible = 0x1,
PLD_Dock = 0x0,
PLD_Lid = 0x0,
PLD_Panel = "BACK",
PLD_VerticalPosition = "CENTER",
PLD_HorizontalPosition = "LEFT",
PLD_Shape = "VERTICALRECTANGLE",
PLD_GroupOrientation = 0x0,
PLD_GroupToken = 0x0,
PLD_GroupPosition = 0x1,
PLD_Bay = 0x0,
PLD_Ejectable = 0x1,
PLD_EjectRequired = 0x0,
PLD_CabinetNumber = 0x0,
PLD_CardCageNumber = 0x0,
PLD_Reference = 0x0,
PLD_Rotation = 0x0,
PLD_Order = 0x0,
PLD_VerticalOffset = 0xFFFF,
PLD_HorizontalOffset = 0xFFFF)

})
}

Device (PRT6)
{
Name (_ADR, 0x06) // _ADR: Address
Name (_UPC, Package (0x04) // _UPC: USB Port Capabilities
{
0xFF,
0x03,
Zero,
Zero
})
Name (_PLD, Package (0x01) // _PLD: Physical Location of Device
{
ToPLD (
PLD_Revision = 0x2,
PLD_IgnoreColor = 0x1,
PLD_Red = 0x0,
PLD_Green = 0x0,
PLD_Blue = 0x0,
PLD_Width = 0x0,
PLD_Height = 0x0,
PLD_UserVisible = 0x1,
PLD_Dock = 0x0,
PLD_Lid = 0x0,
PLD_Panel = "BACK",
PLD_VerticalPosition = "CENTER",
PLD_HorizontalPosition = "RIGHT",
PLD_Shape = "VERTICALRECTANGLE",
PLD_GroupOrientation = 0x0,
PLD_GroupToken = 0x0,
PLD_GroupPosition = 0x2,
PLD_Bay = 0x0,
PLD_Ejectable = 0x1,
PLD_EjectRequired = 0x0,
PLD_CabinetNumber = 0x0,
PLD_CardCageNumber = 0x0,
PLD_Reference = 0x0,
PLD_Rotation = 0x0,
PLD_Order = 0x0,
PLD_VerticalOffset = 0xFFFF,
PLD_HorizontalOffset = 0xFFFF)

})
}

Device (PRT7)
{
Name (_ADR, 0x07) // _ADR: Address
Name (_UPC, Package (0x04) // _UPC: USB Port Capabilities
{
0xFF,
0x03,
Zero,
Zero
})
Name (_PLD, Package (0x01) // _PLD: Physical Location of Device
{
ToPLD (
PLD_Revision = 0x2,
PLD_IgnoreColor = 0x1,
PLD_Red = 0x0,
PLD_Green = 0x0,
PLD_Blue = 0x0,
PLD_Width = 0x0,
PLD_Height = 0x0,
PLD_UserVisible = 0x1,
PLD_Dock = 0x0,
PLD_Lid = 0x0,
PLD_Panel = "BACK",
PLD_VerticalPosition = "CENTER",
PLD_HorizontalPosition = "LEFT",
PLD_Shape = "VERTICALRECTANGLE",
PLD_GroupOrientation = 0x0,
PLD_GroupToken = 0x0,
PLD_GroupPosition = 0x3,
PLD_Bay = 0x0,
PLD_Ejectable = 0x1,
PLD_EjectRequired = 0x0,
PLD_CabinetNumber = 0x0,
PLD_CardCageNumber = 0x0,
PLD_Reference = 0x0,
PLD_Rotation = 0x0,
PLD_Order = 0x0,
PLD_VerticalOffset = 0xFFFF,
PLD_HorizontalOffset = 0xFFFF)

})
}

Device (PRT8)
{
Name (_ADR, 0x08) // _ADR: Address
Name (_UPC, Package (0x04) // _UPC: USB Port Capabilities
{
0xFF,
0x03,
Zero,
Zero
})
Name (_PLD, Package (0x01) // _PLD: Physical Location of Device
{
ToPLD (
PLD_Revision = 0x2,
PLD_IgnoreColor = 0x1,
PLD_Red = 0x0,
PLD_Green = 0x0,
PLD_Blue = 0x0,
PLD_Width = 0x0,
PLD_Height = 0x0,
PLD_UserVisible = 0x1,
PLD_Dock = 0x0,
PLD_Lid = 0x0,
PLD_Panel = "BACK",
PLD_VerticalPosition = "CENTER",
PLD_HorizontalPosition = "RIGHT",
PLD_Shape = "VERTICALRECTANGLE",
PLD_GroupOrientation = 0x0,
PLD_GroupToken = 0x0,
PLD_GroupPosition = 0x4,
PLD_Bay = 0x0,
PLD_Ejectable = 0x1,
PLD_EjectRequired = 0x0,
PLD_CabinetNumber = 0x0,
PLD_CardCageNumber = 0x0,
PLD_Reference = 0x0,
PLD_Rotation = 0x0,
PLD_Order = 0x0,
PLD_VerticalOffset = 0xFFFF,
PLD_HorizontalOffset = 0xFFFF)

})
}
}

   

However, if Win7 still works with Zen/Zen+ CPU/APU using latest 20a BIOS, this theoretically means that those changes in the DSDT table itself don't really cause the 0xA5 BSOD.
What about extracting the DSDT table while running Win8/8.1/10 with RWEverything to see if there are further changes?

#5080canonkong⇗ @daniel_k
DSDT table while running Win8.1 with RWEverything.
[[File:AcpiTbls.zip]]



canonkong has attached files to this post
#5081daniel_k⇗ @canonkong

Just noticed that the X570 BIOS 20a has 5 DSDT tables, 2 of them follow are (to my knowledge) Win7 compatible, the other 3 are Win8+ only.

To make sure there isn't another check that breaks Win7 on purpose, do the following test.

Edit acpi.sys with Hex editor and edit Windows 2012 and Windows 2013 to Windows 2009.

Save, fix checksum and sign or disable driver signature enforcement on boot.

Tell me if Win8.1 still boots OK.
#5082canonkong⇗ @daniel_k
It will show auto repair and the computer can not boot.
Edit after disable digital signature.
It seems that the system does not recognize the third-party sha256 signature. After the system has disabled the digital signature, it can enter the system.
#5083daniel_k⇗ @canonkong

For core kernel system files, Windows won't accept 3rd party certificates.

Nice results, then I'm about 99% sure the fix is just to add that RHUB device to the proper Scope.

Would you flash a modded BIOS?
#5084canonkong⇗ @daniel_k
Yes, it is easy to flash the mod bios for B550I Aorus pro AX and X570I Aorus pro with its Flashback function.
#5085daniel_k
Zitat von ⇗ canonkong im Beitrag ¶ #5084
@daniel_k
Yes, it is easy to flash the mod bios for B550I Aorus pro AX and X570I Aorus pro with its Flashback function.

Ok, I'll send you a PM when I get it done.

Let's try on the B550I Aorus Pro AX first.

 

Page 340

#5086genieautravail⇗ @daniel_k

On one of my laptop equiped with 4 GB of memory, the amount of available physical memory stay the same (2.92 GB) before and after applying WinXPPAE 2.0 patch with the /4GB switch.

It's the first time I see this (the patch is already applied on several of my computers).

The laptop is a HP Probook 4320s and has a dedicated video card Radeon HD 5470 with 512 MB of memory.
No physical memory is reserved to display.

Do you think that case is possible or there is a bug somewhere ?
#5087Mov AX, 0xDEAD¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware
"Saving crash dumps through storport based disk controller drivers"
Updated Status: SOLVED
#5088daniel_k
Zitat von ⇗ genieautravail im Beitrag ¶ #5086
Do you think that case is possible or there is a bug somewhere ?

Yes, it's possible.

It depends on the reserved memory areas of system devices (of course gpu ram included).

Usually you should use the /all switch, specially now that we have the Win8 XHCI driver which is proven to work with PAE enabled.
#5089YuriyCNUsually, if a PAE with /4GB works, then it works with an /ALL key.
Therefore, the key /4GB has no special meaning. It seems to me.
#5090AndaluI tried both VIA and Etron UAS drivers (thanks to ⇗ @Mov AX, 0xDEAD for patches and fixes) on my USB3.1 to NVMe enclosures (ASM2362 and JMS583 chipset) using the same nvme disk type (samsung 970evo) and the same USB3.1 Gen.2 cable (it seems that also a cable can make differences). Here the results:

VIA driver:
 

Etron driver (tried both 115 and 119 versions) (disk not detected by crystaldisk Info v8.6.2):
 

 
#5091Mov AX, 0xDEAD¶ NTOSKRNL Emu_Extender
Updated post, added new:
- Intel RSTe AHCI/RAID driver 4.7.0.1098  for Windows XP/2003
- Intel RST  AHCI/RAID drivers (any version, last compatible is 15.9.8.1050)  for Windows XP/2003
#5092daniel_k⇗ @Mov AX, 0xDEAD

I'm getting the following errors while trying to compile the new version:

 
1>c:\ntoskrnl_emu-master\common.c : error C1083: Cannot open compiler generated file: 'asm/common.asm':
No such file or directory
2>errors in directory c:\ntoskrnl_emu-master\storpor8
2>c:\ntoskrnl_emu-master\common.c : error C1083: Cannot open compiler generated file: 'asm/common.asm': No such file or directory
1>c:\ntoskrnl_emu-master\ntoskrn8\objfre_wnet_x86\i386\common.obj : error LNK1136: invalid or corrupt file
2>c:\ntoskrnl_emu-master\storpor8\objfre_wnet_x86\i386\common.obj : error LNK1136: invalid or corrupt file


EDIT: The error above is is fixed by creating folders \ntoskrn8\asm and \storpor8\asm.

All good now!

#5093Mov AX, 0xDEAD⇗ @Daniel,

Yes, these empty folders was not synced to github repository
now fixed, empty folders no more empty )
#5094mockingbirdI have an ASRock B250M-Pro4, and this board has been reported here to be working with XP with the mods generously provided in this thread.  So far I've disabled LAN and HPET in the BIOS, disabled fast boot and enabled CSM.  I know I will have to use a discrete GPU for XP as I'm using an i3-8100 and it's GPU has no XP drivers (last Intel XP GPU drivers were certain Haswell models).

So far I know I need to download the last Harkaz SP4 and slipstream it, but can someone help me out with the items liste in the first thread and all subsequent updates or perhaps a repository where I can download them?  Not wanting anything fancy - just NVMe, Intel USB3 support and perhaps >4GB support.

Thanks
#5095gordo999⇗ @mockingbird ..."I'm using an i3-8100 and it's GPU has no XP drivers"

By GPU driver, do you mean for on-board graphics? I am using an Asus B360 chipset with an i5-8400 and I did not require XP drivers for the GPU. However, I am using an Nvidia GT-730 and I approached the problem differently. I already had XP loaded on a disk drive from an older mobo. To get it running, I needed the PS\2 inputs on the B360 until I could load the USB drivers. First, I needed to load the ACPI driver and a SATA driver signed by Fernando.

Since then, the USB driver has been upgraded to a Win8 based driver. I can't help you find the drivers but if you go back about 100 pages and start skimming, you'll find everything you need. Better still, you'll understand why and how the drivers are being applied.
#5096mockingbird
Zitat von ⇗ gordo999 im Beitrag ¶ #5095
@mockingbird ...
Since then, the USB driver has been upgraded to a Win8 based driver. I can't help you find the drivers but if you go back about 100 pages and start skimming, you'll find everything you need. Better still, you'll understand why and how the drivers are being applied.

Yes I read the first page, I guess I was being lazy by posing my question this way hoping that someone would oblige me :-).  But there were some things mentioned in the first page without any reference whatsoever where to find them.

With regard to the internal GPU, I had no intention of using that.  There is no XP driver for it and there never will be.  I also purchased a Maxwell nVidia GPU for this machine.
#5097gordo999
Zitat von ⇗ mockingbird im Beitrag ¶ #5096
Yes I read the first page, I guess I was being lazy by posing my question this way hoping that someone would oblige me :-)
⇗ @mockingbird ...I did not mean to read the first page only, I meant to start there and read through all the messages till the current message. Maybe you'll have to begin before 100 pages back.

It's not that no one wants to help you it's that most people have found the links as we went along. Maybe someone will help you, I can't because I have no idea where each file is located. I have a different POV on this. A few people did a lot of work to make these files available and I don't think it's asking too much for someone requiring the files to do some searching.

There is a search engine on this page, plug in acpi, especially related to 'outer space'. That gets rid of 0xA5 acpi errors. I got the SATA driver from the XP SP4 unofficial update ISO but it is on this site and there is a newer reference to the w8 USB driver a few pages back. Forgot, you are not using a hard drive.

For daniel_k's older USB driver, which I am still using, look up amdhub30 or amdxhc in the search engine.

Use my nym in the search engine. I have offered explanations about my experience with certain drivers that fixed browser and game issues. It's important that you do your own research or you'll be back asking questions that have been answered 100 times.
#5098gordo999⇗ @mockingbird ...did some reading to cut down on your search. Start at P277 and read a few pages. Page 290 begins the new era of drivers. See page 292. Out of time.
#5099mockingbird
Zitat von ⇗ gordo999 im Beitrag ¶ #5098
@mockingbird ...did some reading to cut down on your search. Start at P277 and read a few pages. Page 290 begins the new era of drivers. See page 292. Out of time.

Your help is greatly appreciated.  It does not help that Fernando posts this whenever someone attaches their mod: "EDIT by Fernando: Attachments removed (publication of modded *.SYS files are not allowed here)".

You have several people working on several different mods, with no ability to post the mods, except for perhaps instructions on how to perform the mod yourself.

Not complaining though - it will be worth it in the end.  XP is essential for when you need to get actual work done on a computer.
#5100gordo999
Zitat von ⇗ mockingbird im Beitrag ¶ #5099
You have several people working on several different mods, with no ability to post the mods, except for perhaps instructions on how to perform the mod yourself.
⇗ @mockingbird ....you are not looking hard enough. Fernando was obliged to make that statement for legal reasons but he has done more to enable the XP cause than anyone on the Net. He was hosting the files till he was approached by the authorities and told to cease and desist.

I am not trying to be unkind, I am offering you advice you need to get XP running. You need to dig for information and dig hard. You don't expect Fernando to create a section titled 'Illegal software repository' do you? I pointed you right at a page you have obviously ignored which has a direct link to the files you require.

You are not trying hard enough. Be determined, the files are all out there.

 

Page 341

#5101mockingbirdThere's no need to berate me.  I never complained.  In fact I went out of my way in the last post to state that I would persevere despite the difficulties.
#5102flyodhello. im not sure if this is the right place for this, but as im new it seems like as good a place as any.

i used the updated acpi.sys from ⇗ @daniel_k (not entirely sure it's the latest version, a friend sent it to me idk where they got it) to get windows xp 64-bit installed on my msi z170a motherboard (Intel i5, not entirely sure of the chipset), and everything works perfectly, hardware wise (except usb but thats not a huge concern right now). the only real problem is that any modern web browser (specifically pale moon) will not redraw the window until it is manually resized or you click the menu bar. i've asked about this ⇗ where the people porting these browsers back to windows xp are, and nobody there seems to know the solution. i've tried several different video cards, including the onboard intel graphics, and a fully xp-compatible amd gpu, and always get the same result. im wondering if maybe the updated acpi.sys might have something to do with it, or maybe ive just got weird hardware and this will never work, or maybe something else i've overlooked. im 90% sure it's a hardware problem because i've tried everything i know at the software level.
this is the first time in a decade or so that i've had to ask anyone for help with computer stuff, and its weird and im not sure what to do lol. thanks in advance for any help.
#5103daniel_k⇗ @flyod

Timer issue, maybe? Needs a hal.dll patch to fix it.

On XP x64, run CPU-Z:

Tools -> Timers
Let it run for 1 minute, take a screenshot and attach it here.

Or run WinTimerTester, do the same as above.
#5104daniel_k⇗ @mockingbird

I'm currently updating my thread at MDL forums (Drivers and tools to run Windows XP on newer hardware).

You'll find everything you need to run XP.
#5105daniel_k⇗ @Andalu

How are you?

When you have some time, have a new NVMe driver for you to test.
#5106Andalu⇗ @daniel_k
hi dude, I hope you're as well as I am

A new nvme driver? You can send it whenever you want, thanks
#5107flyod
Zitat von ⇗ daniel_k im Beitrag ¶ #5103
@flyod

Timer issue, maybe? Needs a hal.dll patch to fix it.

On XP x64, run CPU-Z:

Tools -> Timers
Let it run for 1 minute, take a screenshot and attach it here.

Or run WinTimerTester, do the same as above.

here's both of those.

i recently learned there are bios updates for this machine i haven't applied yet. it's still using the stock bios. i've always kinda considered that as a last resort, but if you think that would help i'll go ahead and update it.
#5108daniel_k
Zitat von ⇗ flyod im Beitrag ¶ #5107
i recently learned there are bios updates for this machine i haven't applied yet. it's still using the stock bios. i've always kinda considered that as a last resort, but if you think that would help i'll go ahead and update it.

Unless you have any issues, don't update.
BIOS updates may prevent XP from running, even with the currently patched acpi.sys file.

As I was suspecting, it's a timer issue.

In your WinTimerTester screenshot, QueryPerformanceCounter is negative and so is the Ratio, which is wrong and result in unexpected symptoms.

What is the version of your hal.dll? Need to search here for a patched x64 hal.
#5109flyod
Zitat von ⇗ daniel_k im Beitrag ¶ #5108
Zitat von ⇗ flyod im Beitrag ¶ #5107
i recently learned there are bios updates for this machine i haven't applied yet. it's still using the stock bios. i've always kinda considered that as a last resort, but if you think that would help i'll go ahead and update it.

Unless you have any issues, don't update.
BIOS updates may prevent XP from running, even with the currently patched acpi.sys file.

As I was suspecting, it's a timer issue.

In your WinTimerTester screenshot, QueryPerformanceCounter is negative and so is the Ratio, which is wrong and result in unexpected symptoms.

What is the version of your hal.dll? Need to search here for a patched x64 hal.

i guess it's just the normal version of hal.dll that comes with xp64sp2, unless there's a newer one that may have installed via automatic updates, the whole system is fully up-to date in that regard.
and i figured that would be the case with the bios updates.
also im not entirely sure what version of your acpi.sys im using either, like i said, a friend sent it to me and idk where they found it,  so i'll see if i can find that again on here too, there might be a more recent version. where are the files on here, btw? i've only been able to find the 32-bit versions.
thanks!
#5110gordo999
Zitat von ⇗ daniel_k im Beitrag ¶ #5104
⇗ @mockingbird I'm currently updating my thread at MDL forums (Drivers and tools to run Windows XP on newer hardware). You'll find everything you need to run XP.
⇗ @daniel_k ...Thanks for providing direct link info Daniel. I have already pointed ⇗ @mockingbird to your MDL thread by showing him where to find the link but he claimed I was berating him for claiming he did not look closely enough. I did not want to reference your thread at MDL directly.
#5111flyod⇗ @daniel_k your patched hal.dll worked fine, screenshots of the timer tests are attached. the ratio would jump between 1.0000 and 0.9999. all the web browsers i couldn't get to work before to work fine now, im using one to make this post from windows xp 64-bit.  i hadn't encountered any other software that didn't work so i cant really do any other tests, but if there are others you'd like me to try i will.
thanks so much! i've been trying to figure this out for weeks, now i think i'll try those usb drivers i found on here, to see if i can get the system fully functional, but with a real ps/2 mouse and keyboard port, usb isn't a huge priority for me right now.



flyod has attached images to this post  ⇗ 002.PNG  ⇗ 001.PNG
#5112daniel_k⇗ @flyod

Glad to know it worked!
#5113daniel_k
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #4907
Take attention:
Windows 8's STORAHCI + Windows's STORPORT have significal performance drop and high CPU usage, there is no fix yet

Just tested it and found no issues, performance is exactly the same as skullteria's and CPU usage was 0% (zero).

Found one interesting thing when Server 2003 with PAE enabled, 8GB of RAM running on VirtualBox:

- Windows 8 original storahci + storport.w7 + storpor8.sys: no issues
- skullteria's storahci + storport.w7 or storport.2003: crashes randomly
#5114OutbreakerNice work with this new patches. You saved me a lot of headache.
#5115ruthanI tested Micron Sata PCI-E controller - JMB582.  Its only which i found as PCI-E gen3 and Sata 3, others are only PCI-E gen 2.

Its seems to work better than Asmedia and Marwells with Linux, it also works with MacOS, but unfortunelly its not working with Paragon GPT loader (which works with Asmedia and Marwell and NVME drivers).

I tried Universal Sata driver and Micron one too - its not named as 582, but 585 for Windows 10 is working fine and device manage is fine, only something what is need for Paragon GPT to work is missing.

 

Page 342

#5116Mov AX, 0xDEAD
Zitat von ⇗ daniel_k im Beitrag ¶ #5113
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #4907
Take attention:
Windows 8's STORAHCI + Windows's STORPORT have significal performance drop and high CPU usage, there is no fix yet

Just tested it and found no issues, performance is exactly the same as skullteria's and CPU usage was 0% (zero).


i have other experience  - ¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (312)
performance drop on my pc:
skullteria's storahci +any storport
Windows 8 STORAHCI + Windows 7 STORPORT

Zitat
Found one interesting thing when Server 2003 with PAE enabled, 8GB of RAM running on VirtualBox:
- Windows 8 original storahci + storport.w7 + storpor8.sys: no issues
- skullteria's storahci + storport.w7 or storport.2003: crashes randomly


storahci from OneCore is "cut" version of DDK sources, they changed&limited a lot places to be compatible with storport_w2003/DDK

#5117daniel_k⇗ @Mov AX, 0xDEAD

Forgot to report that unfortunately changing the device/GUID class in INF file from HDC to SCSIAdapter doesn't fix the 1st device only available in AIDA64's Storage -> ATA/SMART.

Do you think it can be fixed? Only 1st device in ATA devices issue also occurs on VM.
#5118Outbreaker⇗ @daniel_k
I noticed that the uaspstor.sys file is missing in the USB3 Zip-Archive.
#5119daniel_k
Zitat von ⇗ Outbreaker im Beitrag ¶ #5118
@daniel_k
I noticed that the uaspstor.sys file is missing in the USB3 Zip-Archive.

I know, that pack had UASP support disabled, so USB storage devices would use XP's usbstor driver.
Did that because I was testing Etron and VIA UASP drivers to decide which one to include.

Found that the best driver is from VIA, uploaded new pack including it.
#5120sergiox6Hello, can someone send me the "amdxhc_pae_fix.rar"? I can not find it. Thank you.
#5121YuriyCN
Zitat von ⇗ sergiox6 im Beitrag ¶ #5120
Hello, can someone send me the "amdxhc_pae_fix.rar"? I can not find it. Thank you.


⇗ https://www.upload.ee/files/11199750/From_winraid.zip.html
#5122Outbreaker
Zitat von ⇗ sergiox6 im Beitrag ¶ #5120
Hello, can someone send me the "amdxhc_pae_fix.rar"? I can not find it. Thank you.

⇗ https://forums.mydigitallife.net/threads...hardware.81607/
#5123PPeti66x⇗ @daniel_k
Hi!
I tried the new (Win8-based) USB XHCI driver on DELL M4800 notebook. It seems, that works correctly (if USB3 mode is enabled by Windows 7 for 1x bootup). But the HCSwitch is still a problem. It seems, that the Win8 driver can not enable the USB3 mode for the physical ports managed by the Intel HCSwitch. Force-installing (by DEVCON.EXE, ACPI\PNP0A08) the intel HCSwither produces BSOD 0x0000007b (by the PE Explorer, there are no missing import functions). Is there a way to force USB3 mode for the physical ports in Windows XP?
The 2nd thing: Non-Plug and Play Drivers\Kernel Mode Driver Framework server produces error code 24 in the device manager - but seems, that works correctly.
#5124Andalu
Zitat von ⇗ PPeti66x im Beitrag ¶ #5123
The 2nd thing: Non-Plug and Play Drivers\Kernel Mode Driver Framework server produces error code 24 in the device manager - but seems, that works correctly.

Same for my haswell system.
#5125daniel_k
Zitat von ⇗ PPeti66x im Beitrag ¶ #5123
I tried the new (Win8-based) USB XHCI driver on DELL M4800 notebook. It seems, that works correctly (if USB3 mode is enabled by Windows 7 for 1x bootup). But the HCSwitch is still a problem. It seems, that the Win8 driver can not enable the USB3 mode for the physical ports managed by the Intel HCSwitch. Force-installing (by DEVCON.EXE, ACPI\PNP0A08) the intel HCSwither produces BSOD 0x0000007b (by the PE Explorer, there are no missing import functions). Is there a way to force USB3 mode for the physical ports in Windows XP?

USB3 mode on pre-Skylake is still an issue.

Technically there are no issues with HCSwitch, but as it is a KMDF driver and it is early loaded as a filter driver for the PCI bus, on XP the KMDF runtime is still not available (not properly set load order).

Before installing the HCSwitch, do the following:

1) Save the following text as WdfLoadGroup.reg and apply it.
 
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\GroupOrderList]
"WdfLoadGroup"=hex:01,00,00,00,01,00,00,00


2) Open the key HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\ServiceGroupOrder and edit the List (REG_MULTI_SZ) value:

Put WdfLoadGroup below System Reserved and above Boot Bus Extender, like this (one value per line):

 
System Reserved
WdfLoadGroup
Boot Bus Extender
...


3) Now install the HCSwitch driver and restart. Please report if it works.


Zitat von ⇗ PPeti66x im Beitrag ¶ #5123
The 2nd thing: Non-Plug and Play Drivers\Kernel Mode Driver Framework server produces error code 24 in the device manager - but seems, that works correctly.
Zitat von ⇗ Andalu im Beitrag ¶ #5124
Same for my haswell system.

If any of you have the time to test it on Win7 x86 to see if it happens, so we know it's an OS specific issue or not.
#5126daniel_kOn WinXP fully updated, including latest root certificates update, it accepts SHA256 WHQL signed drivers, as long as the file hashes themselves are still SHA-1, didn't expect that!
#5127PPeti66x⇗ @daniel_k
Hi!
WdfLoadGroup had already this value, so I edited only the ServiceGroupOrder List. After force-installing the HCSwitch driver, still fails with 0x0000007B.

Obsolete:
Installing the WDF on Win7 x86 1st failed (XP update system was incompatible), so I installed it via a modded INF file. After installation the system is unable to boot even in the safe mode:
STOP: 0x0000007E (0xC0000005, 0x89174211, 0x80D86988, 0x80D86560)
WDFLDR.SYS - Adress 89174211 base at 8916B000, DateStamp 4a5bbf1d
The test was made on my old Athlon XP 1600 computer (the only one on which I have x86 version of Windows 7) - so is possible, that the problem is the missing SSE2.


UPDATE:
Win7 prevented overwriting of the already present WDF 1.09, and probably this caused the error. After manual file replacing, and then reinstalling the system boots up normally, and the new WDF 1.11 causes the same error code 24 as in XP.
#5128daniel_k
Zitat von ⇗ PPeti66x im Beitrag ¶ #5127
After force-installing the HCSwitch driver, still fails with 0x0000007B.

Finally found the issue.

Open HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\Wdf01000

And change Start to 0 (zero).

Make sure you've already changed the ServiceGroupOrder, restart and install the HCSwitch driver.
It won't crash anymore and also fixes the error code 24 in Device Manager, but we need to see if it works.

PS: I've updated the WindowsServer2003.WindowsXP-KB2864202-x86-INTL.exe installer to reflect the change.
#5129PPeti66x⇗ @daniel_k
Changing the Start value solved the Error 24 problem (tested on XP and Win7).
The HCSwitch driver still fails: STOP: 0x0000007B (0xB84CF524, 0xC0000034, 0x00000000, 0x00000000) (no driver filename displayed, only a generic stop error message)
Another interesting thing, that I am unable to install without devcon.exe, because Windows not founds a compatible hardware. But in list made by the devcon the ACPI\PNP0A08 exists. Interesting.
Or something missing or wrong in the INF for XP? (the OS requirement was changed to XP; INF was converted from Unicode to Ansi; iusb3hcs.sys is correctly copied to System32\Drivers at installation)
#5130daniel_k
Zitat von ⇗ PPeti66x im Beitrag ¶ #5129
@daniel_k
Changing the Start value solved the Error 24 problem (tested on XP and Win7).
The HCSwitch driver still fails: STOP: 0x0000007B (0xB84CF524, 0xC0000034, 0x00000000, 0x00000000) (no driver filename displayed, only a generic stop error message)
Another interesting thing, that I am unable to install without devcon.exe, because Windows not founds a compatible hardware. But in list made by the devcon the ACPI\PNP0A08 exists. Interesting.
Or something missing or wrong in the INF for XP? (the OS requirement was changed to XP; INF was converted from Unicode to Ansi; iusb3hcs.sys is correctly copied to System32\Drivers at installation)


I've attached my modified INF file, please try it.
There is nothing else preventing the HCSwitch driver from working.

⇗ @Andalu, please try this if you can.

daniel_k has attached files to this post

 

Page 343

#5131PPeti66x⇗ @daniel_k
The difference: it produces an Unknown device with error code 28. Force-reinstalling it produces 0x000000A1 error at restarting/shutting down, then the same error (0x0000007B) at bootup.
This driver is installed on Win7 as "PCI bus" (used driver files: iusb3hcs.sys, pci.sys, WdfCoInstaller01009.dll) - reinstalling this device on XP with Intel HCSwitch produces the same error - so no more required to do via devcon.exe.
#5132Andalu⇗ @daniel_k,
I installed the KB2864202 (first release) on another partition of the same system (Q87 haswell) where I got error code 24 and here it installs without problems. Same behavior on another haswell system (H97): no problem here too.
I tried once again to install the updated KB2864202 also on the partition where I got error code 24 but the system froze in all attempts. Most likely, some installed security programs (not installed in other partitions/systems) have a driver that conflicts with WDF 1.11. I have to try to install it manually.
#5133daniel_k⇗ @PPeti66x
Did you try to install the driver on XP in the PCI Bus device? It's a must.


⇗ @Andalu

On a test installation, please make sure you follow the instructions in the following posts:
¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (342)
¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (342)

Then try to install the HCSwitch driver using the INF I've posted here:
¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (342)

I'd like to have a definitive answer to this issue.
#5134PPeti66x⇗ @daniel_k
Yes. But when I want to verify it now (booting the system with the last known good configuration), I see, that the "PCI bus" name was changed to a localized (slovak) version, iusb3hcs.sys is present on the driver list, and I am unable to copy files from the pendrive because of a never-seen error. 2 ports works as normally as USB3, 2 is unusable (endless reconnection or no file transfer - one of these is probably physically damaged, because is was always unstable in USB 3 mode, I am not the 1st owner of this machine), 1 works normally as USB2 (as should). Now I will try to make some cleanups and try it again.
#5135Andalu⇗ @daniel_k
USB3 driver installed in Win7 for the Pci Bus via HCSwitch after applying the procedure you indicated, no issue detected, all ports work as expected on a H97 haswell system:



On XP the same procedure give the 7B BSOD. I have to try once again.

EDIT: it works on XP too now:


in XP (unlike win7) the WdfLoadGroup is not present in the list for the key:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\ServiceGroupOrder
(manually added)

and in the key:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\Wdf01000
the 'Start' dword is already set to '0' (as for Win7).
#5136daniel_k⇗ @Andalu, thanks for your report.

Actually on Win7 installation of the HCSwitch driver would be interesting if using the Win8 ported driver.
But does Haswell requires the HCSwitch driver at all? I mean, without it, the ports don't work at USB3 speeds?
#5137daniel_k
Zitat von ⇗ PPeti66x im Beitrag ¶ #5134
@daniel_k
Yes. But when I want to verify it now (booting the system with the last known good configuration), I see, that the "PCI bus" name was changed to a localized (slovak) version, iusb3hcs.sys is present on the driver list, and I am unable to copy files from the pendrive because of a never-seen error. 2 ports works as normally as USB3, 2 is unusable (endless reconnection or no file transfer - one of these is probably physically damaged, because is was always unstable in USB 3 mode, I am not the 1st owner of this machine), 1 works normally as USB2 (as should). Now I will try to make some cleanups and try it again.

About the localized strings, it's normal, when the HCSwitch driver is installed, there are localized strings in the INF. You're running a Slovakian localized XP, right?
Even with some "quirks", it seems that the filter drivers is doing its job, seeing that the ports are working at USB3 speeds.
#5138PPeti66x⇗ @daniel_k
I am running English version, set to Slovak locale - so the interface is in English. But it is ok, many applications sets the Slovak as default by these settings.
So the "final" report:
Intel HCSwitch now installs correctly, without BSODs. USB3 works as intended, with real USB3 speeds. And I have 2 semi-functional ports, which works correctly in USB2 mode, but are unusable in USB3 mode (seems to a hardware failure, but works stable with USB2 devices). It is the same in Windows 7 x64, so the drivers are OK.
The problem was: remained things from older experiments, and the WdfCoInstaller01009 installation parts in the inf

"But does Haswell requires the HCSwitch driver at all?"
Which computer requires HCSwitch depends on how the mainboard was made. Manufacturer can make direct USB ports (mainly used on mainboards with 8 or more USB ports), or can use HCSwitch to save physical ports (e.g. notebooks, barebone PCs). The Gen3 (Ivy bridge) Lenovo ThinkCentre M92 also requires it. Z77 Fatal1ty Professional have direct ports.

Is 64-bit port of the Win8 XHCI driver for XP planned in the near future?
#5139Andalu
Zitat von ⇗ daniel_k im Beitrag ¶ #5136
Actually on Win7 installation of the HCSwitch driver would be interesting if using the Win8 ported driver.
But does Haswell requires the HCSwitch driver at all? I mean, without it, the ports don't work at USB3 speeds?

Installing the Win8 ported driver via HCSwitch I received the message about the incompatible software, so I can't go on.
On my H97 haswell system the USB3 ports work normally at their speed already at the end of the Win7 installation, no need to install the driver via switch.
#5140Outbreaker⇗ @daniel_k
I had to add the file ntoskrn8.sys too avoid the missing file problem that i got with the storahci.sys and stornvme.sys file at the first stage of the Windows XP Setup (F2). But when i do this then i run into a BSOD with the SATA driver on VirtualBox.

#5141Andalu⇗ @daniel_k
the Adata SSD Toolbox doesn't work with the AHCI (generic) driver from Extender while using the RSTe 4.7.0.1117 driver there are no problems as with the 'old' backported driver from win8:

    

This tool is very useful because allows the manual trim in XP and until now it has worked with all my SSD drives. The manual trim works also fine for the NVMe drives but, unfortunately, only in Win7. It's a real shame that we can't have the same feature in XP


P.S.: ¶ here I seen the asmedia driver 1.16.61.1 working in XP, how did you do that?
#5142daniel_k
Zitat von ⇗ Andalu im Beitrag ¶ #5141
AHCI (generic) driver from Extender
'old' backported driver from win8

I'm confused, please pack these two drivers and send me a PM.

Zitat
The manual trim works also fine for the NVMe drives but, unfortunately, only in Win7. It's a real shame that we can't have the same feature in XP


I think the issue lies in the way the utility detects disks.

Zitat
P.S.: ¶ here I seen the asmedia driver 1.16.61.1 working in XP, how did you do that?


The driver works just fine even if XP doesn't recognize the WHQL signature, try it.
I was just impressed that XP accepted a SHA256 signed WHQL certificate.

#5143Mov AX, 0xDEAD
Zitat von ⇗ Andalu im Beitrag ¶ #5141

the Adata SSD Toolbox
....
This tool is very useful because allows the manual trim in XP and until now it has worked with all my SSD drives. The manual trim works also fine for the NVMe drives but, unfortunately, only in Win7. It's a real shame that we can't have the same feature in XP

Adata SSD Toolbox Trim is useless for WinXP, it doesnt access raw filesystm on disk, it just create big temp files and then remove it. This trigger trim on Win7 but not on XP because real trim job will be processed by NTFS driver

Trim on XP possible only with special utils like commercial defrag when it open raw ntfs partitions and trim free blocks
#5144YuriyCN
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #5143

Adata SSD Toolbox Trim is useless for WinXP, it doesnt access raw filesystm on disk, it just create big temp files and then remove it. This trigger trim on Win7 but not on XP because real trim job will be processed by NTFS driver

Trim on XP possible only with special utils like commercial defrag when it open raw ntfs partitions and trim free blocks



Please, advise really working utilities.
Write their names and versions.
#5145genieautravail⇗ @PPeti66x

Can you explain how do you switch from USB 2.0 mode to USB 3.0 mode.

At home, I alway have a Dell E6230 with 2 USB 3.0 ports running at 2.0 speed with XP.
The hardware switch is the same that for your Precision notebook.

 

Page 344

#5146PPeti66x⇗ @genieautravail

IMPORTANT: You should make a backup first (the "Windows\System32\Config" folder), because if something goes wrong, your windows will be unbootable. Mostly the last known good configuration works, but not always!!!
1. Get the new Windows 8 USB 3 driver modded for XP, and install it (you must install the WDF package first and restart, then install the USBXHCI driver, then restart)
1a Verify that the driver is installed and no error in the device manager.
2. Get the Intel USB 3 driver package for the Gen3 (Ivy Bridge) or older chipsets (beginning with Gen4 there is a different driver!).
2a. Extract the Drivers\HCSwitch from the archive
2b. Download iusb3hcs.rar from Daniel_K (last post on previous page), and replace the original inf.
3. In the Device Manager (recommended to switch to displaying by connection) right click on: "ACPI multiprocessor PC"\"Microsoft ACPI-Compliant System"\"PCI bus", select Properties, and in Details tab verify the hardware ID, which must be "ACPI\PNP0A08". If this is OK, then click on Update driver..., Specific location, Don't search. I will choose the driver to install..., then select the modded HCSWitch driver and install it.
NOTE: If you use non-english Windows, the names are mostly localized.
4. If your Windows boots up without problems, verify: for "PCI bus" in Driver Details the "iusb3hcs.sys" must be present. If not, installation failed. If OK, then you should have a real USB3 speeds.
#5147Andalu
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #5143

Adata SSD Toolbox Trim is useless for WinXP, it doesnt access raw filesystm on disk, it just create big temp files and then remove it. This trigger trim on Win7 but not on XP because real trim job will be processed by NTFS driver

Trim on XP possible only with special utils like commercial defrag when it open raw ntfs partitions and trim free blocks


I'll be wrong but I couldn't notice any difference between the trim operations performed by Adata SSD Toolbox in Win7 compared to XP. In both OSes, fsutil.exe seems to create, write and then deletes the same *.tmp files:

 

It is difficult to find a commercial software that can trim in XP, one of the few seems to be iobit smart defrag even if it doesn't recognize the nvme disks while the Adata tool correctly recognizes them also in XP even if only in a certain condition. Anyway, for all my SSDs trimmed in XP via Adata tool, smart defrag reports that they don't need any other trimming operation.
#5148genieautravail⇗ @PPeti66x

Thank you very much for the details.

Will try as soon as possible and report the result here.
#5149genieautravail⇗ @PPeti66x

How do you install the USBXHCI driver ?
On my laptop, XP tell me that the already installed drivers are the best and don't want to upgrade them.
By the devices manager, If I try to force the install (disk provided...) for the USB Root Hub by pointing to the USBXHCI.inf file, XP tell me that the file doesn't contain any information about my hardware.
I can only force the upgrade for the USB controller, but after that, the driver doesn't want to start (code 10).

The already installed drivers are the Microsoft generic USB drivers:







#5150infuscomuslooking at those screenshots you installed the USB 2.0 driver not the USB 3.0 driver

if you are wondering which of your USB controllers are the USB 3.0 controllers look for this hardware ID
PCI\CC_0C0330
#5151PPeti66x⇗ @genieautravail
Infuscomus have right - you tried to update the USB2 driver. You can not do it, USB2 driver is required. You probably have installed a USB3 null-driver. You must found it and replace it. For Gen3 (Ivy bridge) should be named as "Intel(R) 7 Series/C216 Chipset Family Universal Serial Bus (USB) Controller - 1E31", but it may be localized.
If updating is not allowed, you can force-uninstall it:
a) Go to Windows\INF folder.
b) Search for "DEV_1E31" (without quotes) in all INF files. You should find something with name oem*.inf. Open it and verify the file content: in the header you should see these 2 lines:
     FileName: PantUSB3.inf
     Abstract: Null driver for Intel(R) USB 3.0 devices
  Rename the file extension from "inf" to "in_", rename the "pnf" extension with the some filename to "pn_"
c) Open the device manager, and search for "Intel(R) 7 Series/C216 Chipset Family Universal Serial Bus (USB) Controller - 1E31", uninstall it.
#5152Mov AX, 0xDEAD
Zitat von ⇗ YuriyCN im Beitrag ¶ #5144
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #5143

Trim on XP possible only with special utils like commercial defrag when it open raw ntfs partitions and trim free blocks


Please, advise really working utilities.
Write their names and versions.


O&O Defrag
PerfectDisk
TxBENCH (free disk util, simple GUI) - personaly prefer this one
Naraeon (free disk util with srcs, someone recommended it, but i dont used)

I used O&O Defrag with SandForce based SSD in 2014-2015, but remember version, it has console non-gui componentl so possible to shedule it without run main GUI program
#5153Mov AX, 0xDEAD⇗ @Andalu

Zitat von ⇗ Andalu im Beitrag ¶ #5147

I'll be wrong but I couldn't notice any difference between the trim operations performed by Adata SSD Toolbox in Win7 compared to XP. In both OSes, fsutil.exe seems to create, write and then deletes the same *.tmp files:


I dont know why it run fsutil, but i never see real trim on WinXP with Adata SSD Toolbox, trimcheck always show "untrimed" blocks

Zitat von ⇗ Andalu im Beitrag ¶ #5147

It is difficult to find a commercial software that can trim in XP, one of the few seems to be iobit smart defrag even if it doesn't recognize the nvme disks while the Adata tool correctly recognizes them also in XP even if only in a certain condition. Anyway, for all my SSDs trimmed in XP via Adata tool,


Dont have nvme, cant help wth it

Zitat von ⇗ Andalu im Beitrag ¶ #5147

smart defrag reports that they don't need any other trimming operation.


seems Smart Defrag is bad, there is no standarts to report which blocks trmed or not, so any utils cant display "Bro, your sdd is OK, you dont need trim"
On WinXP proper trim tool calculate ALL free ntfs blocks every time and trim it ALL
#5154genieautravail
Zitat von ⇗ infuscomus im Beitrag ¶ #5150
looking at those screenshots you installed the USB 2.0 driver not the USB 3.0 driver

if you are wondering which of your USB controllers are the USB 3.0 controllers look for this hardware ID
PCI\CC_0C0330

Thank you for the tip.
#5155genieautravail
Zitat von ⇗ PPeti66x im Beitrag ¶ #5151
Infuscomus have right - you tried to update the USB2 driver. You can not do it, USB2 driver is required.

Again, thank you.
YES, the USB 2.0 driver is installed by default by XP as the USB ports works in 2.0 mode with XP.
#5156genieautravail⇗ @PPeti66x

THAT WORKS!
Yesterday, I remembered! That was here:
⇗ https://msfn.org/board/topic/177563-newe...comment=1171879

As I have restored a new disk image of XP, I have forgotten to replace the original acpi.sys and acpi.inf files by the moded ones.
It's why in the devices manager, the device Intel(R) 7 Series/C216 Chipset Family Universal Serial Bus (USB) Controller - 1E31 wasn't present.

Now, it's was the case:



For the next steps, I have the same things as you.









One remark,

In your "How to do" you have forgotten to mention the necessity to change a registry key:

Zitat von ⇗ daniel_k im Beitrag ¶ #5125
2) Open the key HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlServiceGroupOrder and edit the List (REG_MULTI_SZ) value:Put WdfLoadGroup below System Reserved and above Boot Bus Extender, like this (one value per line):1234&nbsp;System ReservedWdfLoadGroupBoot Bus Extender...

Without this change, at boot of XP, I get a BSOD 0x0000007B

Have a nice day!
#5157PPeti66x⇗ @genieautravail
Interesting. By my informations/experience the modded ACPI.SYS build 5048 is not required for Gen3 (Ivy bridge) or older motherboards. The USB3 controller was embedded into a CPU beginning with Gen4. So the QM77 chipset theoretically should not require it.
If you replace back the ACPI.SYS, what happens to the USB3 device driver? Disappears or works normally as intended? I think, your notebook will be better with the original ACPI.SYS, if USB3 works on it.
But is good to see, that it works.
Have a nice day!
#5158Ant.Hello.
Does anybody managed to run Intel HD Graphics 4000 on WinXP 32 bit  and PAE kernel? (Ivy Bridge on Z77 mainboard)
I was trying various driver versions. All of them generate BSOD 0x00000050 cused by igxpmp32.sys

Also Creative Live! 24 soundcard works only with 4GB PAE. Any idea how to fix it?
#5159PPeti66x⇗ @Ant.
X86: ⇗ https://downloadcenter.intel.com/downloa...s-XP32-Embedded
X64: ⇗ https://downloadcenter.intel.com/downloa...s-XP64-Embedded
It works on an unmodified PAE kernel (tested on Dell M4800), but it is unknown, how it works on the patched PAE kernel.
#5160Ant.⇗ @PPeti66x
This driver is for 4th Generation Intel® Core processor graphics (Haswell)
But Ivy Bridge is the 3rd generation.
With patched ntkrpamp.exe the same BSOD 0x00000050 occures at igxpmp32+2376F:

 
.text:10023765                 mov     ecx, [ebp+8]
.text:10023768 push ecx
.text:10023769 call ds:VideoPortGetDeviceBase
.text:1002376F mov edx, [ebp+8]
.text:10023772 mov [edx+98h], eax
.text:10023778 mov eax, [ebp+8]
.text:1002377B cmp dword ptr [eax+98h], 0
.text:10023782 jnz short loc_100237EC
.text:10023784 mov ecx, [ebp-4]
.text:10023787 push ecx
.text:10023788 push offset aGfxfindadapt_5 ; "GfxFindAdapter: Map Video Memory using "...
.text:1002378D push 1

 

Page 345

#5161PPeti66x⇗ @Ant.
Sorry, you are true, I did not noticed that is for the Z77 (haswell still uses 4000 series numbering and most of people do not notice the difference).
So the problem, that you want to use with patched PAE kernel (above 4GiB address space). Because Intel never made a driver for that VGA for Windows 2003 Server (or at least I never see that), this incompatibility seems to be intentional. A similar problem was with the XP USB device drivers - these were ported from Windows 2003.
#5162genieautravail
Zitat von ⇗ PPeti66x im Beitrag ¶ #5157
@genieautravail
Interesting. By my informations/experience the modded ACPI.SYS build 5048 is not required for Gen3 (Ivy bridge) or older motherboards. The USB3 controller was embedded into a CPU beginning with Gen4. So the QM77 chipset theoretically should not require it.
If you replace back the ACPI.SYS, what happens to the USB3 device driver? Disappears or works normally as intended? I think, your notebook will be better with the original ACPI.SYS, if USB3 works on it.
But is good to see, that it works.
Have a nice day!

I will test that the next week!
#5163Mov AX, 0xDEAD
Zitat von ⇗ Ant. im Beitrag ¶ #5160
@PPeti66x
This driver is for 4th Generation Intel® Core processor graphics (Haswell)
But Ivy Bridge is the 3rd generation.
With patched ntkrpamp.exe the same BSOD 0x00000050 occures at igxpmp32+2376F:


Don't sure about desktop IVY, on mobile IVY (HM76) i use 6.14.10.5437 driver with pae unlocked kernel without any problem.
Haswell driver 6.14.10.5445 support some IVY DEV_IDs too, but Intel renamed these entries to "Intel HD 3000" )
#5164Ant.Just checked the same 6.14.10.5437 driver on ⇗ Win7 32 with PAE patch: it works.
But could there be a difference between PAE implementations?
May be my WinXP installation is too old and there need to try this driver on a clean installation?
#5165genieautravail⇗ @PPeti66x

With the original acpi.sys file, the USB 3.0 controller disappear from the devices manager and reappear with the modded acpi.sys file.
Replaced and restaured several times.

Have a nice day!
#5166Ant.BSOD 0x00000050 caused by igxpmp32 was eliminated by replacing videoprt.sys taken from SP2
#5167AndaluThe USB3 driver installation via HCSwitch works on my desktop Ivy Bridge using the original acpi.sys or the modded version 5048 while fails with the acpi6666 from outer space.
The only issue I noticed is when XP boots with an USB3 device already connected to an USB3 port, in this case the device is no longer detected until it is unplugged and re-inserted into the USB3 port. No problems using an USB2 device connected to the same USB3 port.

#5168Andalu
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #5153
I dont know why it run fsutil, but i never see real trim on WinXP with Adata SSD Toolbox, trimcheck always show "untrimed" blocks

I used O&O Defrag and TxBENCH to trim an SSD (in PerfectDisk there is a generic "SSD optimize" option and nothing about the trim, so I preferred not to try it) but TrimCheck 0.7 gives always the same verdict: "trim appears to be not working". I think it's TrimCheck that doesn't work properly:

   

However, the only program that seems correctly detect and allow the trim for an NVMe disk is O&O Defrag even though the latest XP compatible version is 17.5 of 2014, but how to be sure that's a real trimming?

#5169infuscomus⇗ @Mov AX, 0xDEAD

any further developments on your ntoskrnl extender?
#5170genieautravailMessage deleted by myself...
#5171Mov AX, 0xDEAD⇗ @infuscomus

Zitat von ⇗ infuscomus im Beitrag ¶ #5169
@Mov AX, 0xDEAD
any further developments on your ntoskrnl extender?

Currently NO, i dont see more drivers to port, i mean drivers not related to kernel (like hal/acpi/dxapi/win32k/ntfs/...)
#5172Mov AX, 0xDEAD
Zitat von ⇗ Andalu im Beitrag ¶ #5168
TrimCheck 0.7 gives always the same verdict: "trim appears to be not working". I think it's TrimCheck that doesn't work properly:


Hi Andalu,

I dont know any other check tool, so only TrimCheck can show data in sector before and after deleting temp file.
If TrimCheck show same DATA this mean this block was not trimed by unknow reason, ignore text verdict, always check difference in HEX DATA (SandForce after trim show FF FF/Indilinx BareFoot(OCZ/Toshibas) show random data/...)
#5173YuriyCN
Zitat von ⇗ Andalu im Beitrag ¶ #5168

I used O&O Defrag



You measured how much the write speed of the SSD disk increases
after executing the command "Optimize SSD with TRIM"?
#5174Ant.
Zitat von ⇗ Andalu im Beitrag ¶ #5167
The USB3 driver installation via HCSwitch works on my desktop Ivy Bridge using the original acpi.sys


Which HCSwitch version you are using? Does it depend from xCHI driver?

I was trying to install HCSwitch from ⇗ Lenovo but got BSOD 0x000000A1 caused by pci.sys
#5175Andalu
Zitat von ⇗ Ant. im Beitrag ¶ #5174
Which HCSwitch version you are using? Does it depend from xCHI driver?
I was trying to install HCSwitch from ⇗ Lenovo but got BSOD 0x000000A1 caused by pci.sys

I used the HCSwitch from the driver v1.0.5.235 but I can install the USB3 driver in the normal way even without the switch method on my desktop Ivy Bridge system.
Which USB3 drivers are you using?
Please start reading from ¶ this post from ⇗ @daniel_k and following, you can find info and the 'iusb3hcs.inf' to use.
⇗ @PPeti66x summarized the procedure ¶ here. Don't forget to apply the modify to the "ServiceGroupOrder" registry key.

The only suggest I can give you is to firstly try the original acpi.sys before the modded ones. It seems to work better even on my crazy system.

 

Page 346

#5176Ant.
Zitat von ⇗ Andalu im Beitrag ¶ #5175
Which USB3 drivers are you using?

I'm using  AMD driver (1.1.0.276 / 1.1.0.0145). It works after reloading from Win7 to WinXP. Win8 ported driver(v.1.2) doesn't work.
#5177Andalu
Zitat von ⇗ Ant. im Beitrag ¶ #5176
I'm using  AMD driver (1.1.0.276 / 1.1.0.0145). It works after reloading from Win7 to WinXP. Win8 ported driver(v.1.2) doesn't work.

The USB3 driver backported from win8 that doesn't work is the same version that you can find ⇗ here?
#5178PPeti66x⇗ @genieautravail
Good to known. Thanks for reporting.
-----------

For everyone, who needs Intel HCSwitch:
Today I have tested the new USB 3 Driver and Intel HCSwitch on the Lenovo ThinkCentre M92 (motherboard: IS7XM, chipset: B75 Express). The results: ACPI.SYS build 5048 is not required for the USB 3 device driver. It can be installed and by device manager works correctly. But the Intel HCSwitch device driver will detect the system as incompatible (no errors reported in device manager, but you can not reach USB 3 speeds, and all USB devices are connected to USB 2.0) and will not switch to the USB 3 mode. After installing the ACPI.SYS build 5048, the Intel HCSwitch device driver works as intended.
This means, that is mandatory to use the Vista-based ACPI.SYS build 5048 on Gen3 (Ivy bridge) and older chipsets even if USB 3 itself does not require it. Problem is, that this will make some features unusable on notebooks: display brightness control and internal/external display switching, which are present in the original ACPI.SYS.
#5179PPeti66x⇗ @Ant.
Because modded drivers can not be posted here, for the modded Intel HCSwitch and detailed instructions go here and see the post no. 74: ⇗ https://forums.mydigitallife.net/threads...re.81607/page-4
(in the link to the driver, replace the h??ps with https)
#5180Ant.⇗ @PPeti66x
Thanks. Got it working with AMD xHCI driver and original acpi.sys(5.1.2600.5512).
My mistake was adding a new device instead of updating current driver for existent PCI bus.
#5181Mov AX, 0xDEADHi All,

Currenly i trying to inject DirectX 11/WDDM kernel stuff from Win7 to WinXP, chance to success is very low, but who knows....
win32k.sys will be replaced to ported win7 version, so probably famous good GDI performance on WinXP  will be significaly degraged
#5182daniel_k⇗ @Mov AX, 0xDEAD, that would be awesome!

If it doesn't work or too complex, what about Vista's WDDM? It's closer to XP.

Did you replace your mobo?
Did you ever try to mod the Haswell display drivers to work with Skylake+? Intel barely did changes in its graphics core.
#5183AndaluI did some tests on my M.2 SATA disk with some sata/ahci drivers. Unfortunately, with some drivers, the SSD disk has not been recognized by the programs:






The best driver seems still to be the storahci backported from win8 and also the modded driver by Fernando is still a good choice.

I'm still looking for a good solution for a working trim in XP for SSD and NVMe drives. Today, for the first time an NVMe disk has been correctly recognized as such in a program (TxBench) even if the trim is not allowed anyway:

#5184diderius6⇗ @infuscomus
I think, also in WinXP-IE Optional Patch Integrator v2.3.4b10
in usbxhci.inf
should be renamed to
WppRecorder.sys => WppRecor.sys

Dietmar
#5185infuscomus⇗ @diderius6

OK! will do that.

also, are you available to help with some debugging?
#5186diderius6⇗ @infuscomus

After crazy weeks in Ukraine now I try to come back
to life

Dietmar
#5187Mov AX, 0xDEAD
Zitat von ⇗ daniel_k im Beitrag ¶ #5182

If it doesn't work or too complex, what about Vista's WDDM? It's closer to XP.
No, no closer (
WDDM was introduced in Vista, GDI is done over DirectX API
in Win7 it was impoved by allowing drivers do hardware accelerated GDI processing
Zitat
Did you replace your mobo?
Did you ever try to mod the Haswell display drivers to work with Skylake+? Intel barely did changes in its graphics core.

- Not yet
- I didnt tried, changing ID in driver is funny, but dont sure about success, linux opensource driver can show what registers and other stuff changed in skylake after haswell

#5188skullteriaWell, the main problem to port WDDM is related with the fact the truely implementation is reside on win32k. So, we would need rebuild win32k
#5189Mov AX, 0xDEAD
Zitat von ⇗ skullteria im Beitrag ¶ #5188
Well, the main problem to port WDDM is related with the fact the truely implementation is reside on win32k. So, we would need rebuild win32k
win7's win32k.sys is hard challenge to port, it heavy uses undocumented kernel things like PEB, TEB, thread/process fields, ....

win7 ddk docs tell what vista support old win200 display driver model too, so vista (in theory) can render gdi over old videoprt.sys video driver framework.
#5190skullteriaYes, XDDM is supported until Windows 7. Adapt Win32k compiled to support WDDM is almost impossible. First, need edit function what load dxgkrnl (and dxg too, is the exact function). After, need add functions to support CDD or build own cdd (cannonical display driver - is a generic display driver, because WDDM run top on old XDDM). After, add D3DKmt functions, what several are wrappers of Miniport driver. And, on the function what load display driver, hack to load cdd as display driver if dxgkrnl is loaded and working. In resume, it is almost impossible

 

Page 347

#5191YuriyCN
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #5187

WDDM was introduced in Vista, GDI is done over DirectX API
in Win7 it was impoved by allowing drivers do hardware accelerated GDI processing


Look details here - ⇗ [Solution] Acceleration of GUI interface on the non-Aero themes of Windows 7
#5192Mov AX, 0xDEAD
Zitat von ⇗ YuriyCN im Beitrag ¶ #5191
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #5187

WDDM was introduced in Vista, GDI is done over DirectX API
in Win7 it was impoved by allowing drivers do hardware accelerated GDI processing

Look details here - ⇗ [Solution] Acceleration of GUI interface on the non-Aero themes of Windows 7

GDI is low level graphics, GUI/themes/composing is high level
for example BitBlt(copy anything on/to screen) can be processed directly by display kernel driver in Win7, but not in Vista. In Vista BitBlt() will be transformed to something other like memory copy command(?)
#5193YuriyCNFeedback on "Microsoft USB 3.0 xHCI driver v2.1" with WinXP-IE Optional Patch Integrator v2.3.4b15.zip

Since v2.3.4.XXX (all versions), USB driver do not work on my motherboard H110M (VEN_8086&DEV_A12F). After installing the driver - error code 37. The latest working version is v2.3.3b21.

#5194Outbreakerv2.3.3.XXX = Generation 1 drivers.
v2.3.4.XXX = Generation 2 drivers.
Try out the AMD/Intel USB 3.0 v3 driver(s).
#5195YuriyCNv2.3.3.XXX = Generation 1 drivers. ---- All versions work fine.
v2.3.4.XXX = Generation 2 drivers. ---- All versions dont work.

Chipset MB ---- Intel H110M

Zitat von ⇗ Outbreaker im Beitrag ¶ #5194

Try out the AMD/Intel USB 3.0 v3 driver(s).


Please, give me URL to this driver.
#5196OutbreakerYou have it already. It's Option 5 in the Script.
#5197YuriyCN
Zitat von ⇗ Outbreaker im Beitrag ¶ #5196
You have it already. It's Option 5 in the Script.


I do not use CMD file.
I ask you to attach a text description who does the driver installation manually.
#5198infuscomus⇗ @YuriyCN

you can find the inf files for the alternate USB 3 driver in   v2.3.4b15\Integrator Files\Patches\AMD&Intel USB 3.0 xHCI drivers
#5199YuriyCN
Zitat von ⇗ infuscomus im Beitrag ¶ #5198
@YuriyCN

you can find the inf files for the alternate USB 3 driver in   v2.3.4b15\Integrator Files\Patches\AMD&Intel USB 3.0 xHCI drivers


I used this driver 3 months ago.
After the appearance a generic driver (ported from Windows 8), I switched to it, since with it:
1) higher performance
2) "Standby mode" works
3) no problems with PAE

Why did the 2nd generation of this driver (v2.3.4.XXX) stop working on my MB?
#5200infuscomus⇗ @YuriyCN

make sure ntoskrn8.sys is in system32\drivers then reinstall the driver

is USB 3.0 working in XP textmode setup for you?
#5201YuriyCN
Zitat von ⇗ infuscomus im Beitrag ¶ #5200
@YuriyCN

make sure ntoskrn8.sys is in system32\drivers then reinstall the driver

is USB 3.0 working in XP textmode setup for you?


That's right, the file ntoskrn8.sys is in system32\drivers.
I installing driver (v2.3.4b15, generation 2), over the already installed driver (v2.3.3b18, generation 1).
The old driver (v2.3.3b18) works fine.

But after installing new driver (v2.3.4b15), I get error code 37.
If I reboot the PC, I get BSOD:

#5202OutbreakerThe file "ntoskrn8.sys" and "storport.sys" need to be in the "C:\WINDOW\system32\drivers" folder if you don't use the Script and only the "*.inf" file.
#5203Andalu⇗ @YuriyCN
before updating the driver, did you install the Kernel Mode Driver Framework v1.11?
#5204YuriyCN
Zitat von ⇗ Andalu im Beitrag ¶ #5203
@YuriyCN
before updating the driver, did you install the Kernel Mode Driver Framework v1.11?


SUPER! Thank! This is the right answer.

The "Microsoft USB 3.0 xHCI driver v2.1" is works, but I didn't notice any performance difference.
How does a Gen 2 driver compare to a Gen 1 driver?
#5205infuscomus
Zitat von ⇗ YuriyCN im Beitrag ¶ #5204

How does a Gen 2 driver compare to a Gen 1 driver?


same performance - the difference with gen2 over gen1 is offloading code extension/modification into the ntoskrnl extender instead of modding the driver directly.

 

Page 348

#5206infuscomus⇗ @Mov AX, 0xDEAD

regarding your ntoskrnl extender - do you have any plans to target windows 2000 in the future? (i also have 2000 DDK if you want a copy)
#5207YuriyCN
Zitat von ⇗ infuscomus im Beitrag ¶ #5205
Zitat von ⇗ YuriyCN im Beitrag ¶ #5204

How does a Gen 2 driver compare to a Gen 1 driver?


same performance - the difference with gen2 over gen1 is offloading code extension/modification into the ntoskrnl extender instead of modding the driver directly.



By the way, the driver Gen1 works better. Returning from standby mode works fine with it.
A driver Gen2, when returning from standby mode, crashes in the BSOD in half the cases.

We need a correct timer patch in the HAL.DLL file - there you can really get
a performance increase in SATA and USB drivers up to 25-30 percent.
The modified HAL.DLL is already there, but some applications do not work with it correctly.
For example, GS-CABer crashes on loading. A more correct patch is needed.
#5208Mov AX, 0xDEAD⇗ @infuscomus,
Hi

Zitat
regarding your ntoskrnl extender - do you have any plans to target windows 2000 in the future? (i also have 2000 DDK if you want a copy)


No any plans, w2000 is too rare&exotic for me (do we have acpi.sys and worked PAE for skylakes+ ?)

#5209Mov AX, 0xDEAD
Zitat von ⇗ YuriyCN im Beitrag ¶ #5207

By the way, the driver Gen1 works better. Returning from standby mode works fine with it.
A driver Gen2, when returning from standby mode, crashes in the BSOD in half the cases.


Привет Юрий(?)
If you learn how to convert bsods to crashdump stacktrace you get more knowledge what "thing" generates bsod
#5210infuscomus⇗ @Mov AX, 0xDEAD

It's possible to get past ACPI A5 BSOD on 2000 for Ryzen with the same fix used to fix XP - but there is no AHCI and no PAE.


I've been experimenting and it seems you can target windows 2000 using Win7DDK by taking the ntoskrnl.lib and hal.lib from the 2000 DDK and using them with TARGETLIB during compilation

Using a VM to test I got ntoskrn8.sys to not throw a "ntoskrn8.sys is corrupted" in 2000 textmode setup using win7DDK by setting TARGETLIB to point to ntoskrnl.lib and hal.lib of 2000 DDK and pointing the sources file to them.
without using the 2000 ntoskrnl.lib and hal.lib you get "ntoskrn8.sys is corrupted" in 2000 textmode setup.

I'm not sure if this is useful though.
#5211YuriyCN
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #5209

If you learn how to convert bsods to crashdump stacktrace you get more knowledge what "thing" generates bsod


Майкрософтовский USB драйвер 1-го поколения работает лучше, чем драйвер 2-го поколения. В двух случаях производительность порта одинаковая, но ПК восстанавливается из ждущего режима со старым драйвером стабильнее. При восстановлении из ждущего режима с новым драйвером чаще бывает BSOD или загрузка зависает на черном экране.

Но для меня проблема номер 1 - это корректный патч HAL.DLL. Дело в том, что модифицированный HAL.DLL дает прирост производительности и SATA и USB драйверов до 30%. Например, скорость чтения USB3 флешки возрастает с 65-70 МБ/с до 95-105 МБ/с, скорость линейного чтения SSD возрастает с 170-190 МБ/с до 230-250 МБ/с, что довольно существенно. Но с новым (патченым) файлом возникают проблемы с запуском GS-CABer и возможно других программ, которые как-то нестандартно работают с таймером. При запуске GS-CABер крашится, хотя с оригинальным файлом запускается без падений. Спасает запуск программы в режиме совместимости с Windows 98|2000, тогда краша нет, но мне не совсем нравится такое решение. Нужно разобраться и сделать корректный патч HAL.DLL.
#5212Mov AX, 0xDEAD
Zitat von ⇗ YuriyCN im Beitrag ¶ #5211
Нужно разобраться и сделать корректный патч HAL.DLL

Hi YuriyCN
topic's first page, "Intel MB issues, Wrong timing, Compatibility fix (HAL TSC frequency divider)"
#5213YuriyCN
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #5212
Zitat von ⇗ YuriyCN im Beitrag ¶ #5211
Нужно разобраться и сделать корректный патч HAL.DLL

Hi YuriyCN
topic's first page, "Intel MB issues, Wrong timing, Compatibility fix (HAL TSC frequency divider)"



Насколько я понял, речь идет именно о строках, изложенных ниже.
Я ранее поднимал эту проблему в отдельном топике - ⇗ What exactly is the hal timer problem? (3)
но решения так и не нашел. Имеющийся в составе "WinXP-IE Optional Patch Integrator v2.3.4b17" файл HAL не закрывает эту проблему. Мне сложно понять как добавить этот ассемблеровский код в HAL.DLL. Подскажите, пожалуйста, где найти готовый пропатченый файл и почему его не включают в состав WinXP-IE Optional Patch Integrator? Ведь на USB и SATA интерфейсах, получаем довольно большую прибавку в скорости, на моей системе до +30%.


Compatibility fix ("HAL TSC frequency divider")
Some programms do wrong calculation with high values of PerformanceCounter/PerformanceFrequency
(HAL_acpitimer_fix set values to cpu freq), to avoid this problem values need to divide to much
lesser value, Windows 7 just divide it to 1024, so timer frequency on 3600Mhz cpu is only 3.51Mhz

Patch:
- divide to 1024 values of PerformanceCounter/PerformanceFrequency, replace _HalpAcpiTimerQueryPerfCount to:
 mov     ecx, [esp+4]
or ecx, ecx
jz short Skip_Frequency_Mode mov eax, fs:0A4h ; FrequencyLo
mov edx, fs:0A8h ; FrequencyHi
shrd eax, edx, 0Ah
shr edx, 0Ah
mov [ecx], eax
mov [ecx+4], edx
Skip_Frequency_Mode:
 rdtsc
add eax, fs:0ACh ; CalibrationLo
adc edx, fs:0B0h ; CalibrationHi
shrd eax, edx, 0Ah
shr edx, 0Ah
retn 4
#5214nijazxpDoes anybody know why can't I bypass 7b bsod? I tried xp sp3 32bit original vl edition and integral edition 2020.5.5. I used winsetupfromusb and easy2boot together with my usb. I tried modified ntdetect, universal ahci drivers by fernando, universal ahci patch from integral edition, dpms, some acpi patches, pressing f5, f6, f7, setting bios to legacy and mbr, using usb 2.0 port instead of usb 3.0... Why I just can't get past 7b bsod? Is there any way? I thought I am expert who bypassed that problem on my old emachines laptop, but on my newer lenovo laptop I just can't bypass it. I checked hardware ids of my ahci controller to match to those in fernandos and other inf files, and they do. I tried using exactly same boot disk on two laptops, on emachines e725 and on lenovo b51-30 80lk, but although almost every combination/configuration works on emachines, none work on lenovo. I used nlite for integration of textmode drivers, and it was always successful on emachines, but never on lenovo. I only did not try ones under 3.) by Fernando, MSM ones. While those first I already installed on my windows 10, x64 of course. Detected properly as

Zitat
Intel(R) SATA AHCI Controller DEV_22A3 added by Fernando

Honestly I did not still try all acpi drivers from integral edition of xp, could that be solution? Has ACPI anything to do with 7b error? I also looked at devices by connection in device manager and sata controller is on same path as in my old laptop, that is in this order:

Zitat
ACPI x64-based PC
Microsoft ACPI-Compliant System
PCI Express Root Complex
Standard SATA AHCI Controller



Here are my lenovo specs:

standard ahci controller in device manager in windows 10 x64:

Zitat
hardware ids:
PCI\VEN_8086&DEV_22A3&SUBSYS_390117AA&REV_21
PCI\VEN_8086&DEV_22A3&SUBSYS_390117AA
PCI\VEN_8086&DEV_22A3&CC_010601
PCI\VEN_8086&DEV_22A3&CC_0106
compatible ids:
PCI\VEN_8086&DEV_22A3&REV_21
PCI\VEN_8086&DEV_22A3
PCI\VEN_8086&CC_010601
PCI\VEN_8086&CC_0106
PCI\VEN_8086
PCI\CC_010601
PCI\CC_0106



Some specs from Speccy:

Zitat
Operating System
Windows 10 Pro 64-bit
CPU
Intel Pentium N3700 @ 1.60GHz 41 °C
Braswell 14nm Technology
RAM
4,00GB DDR3 @ 1599MHz (11-11-11-28)
Motherboard
LENOVO Lenovo B51-30 (CHV)
Graphics
Generic PnP Monitor (1366x768@60Hz)
Intel HD Graphics (Lenovo)
1023MB NVIDIA GeForce 920M (Lenovo) 38 °C
ForceWare version: 425.31
SLI Disabled
Storage
931GB Seagate ST1000LM014-SSHD-8GB (SATA ) 37 °C
14GB SDHC Card (SCSI )
26GB Linux File-CD Gadget USB Device (USB )
Optical Drives
PLDS DVD-RW DA8A6SH
Audio
Realtek High Definition Audio

Motherboard tab:

Motherboard
Manufacturer LENOVO
Model Lenovo B51-30 (CHV)
Version No DPK
Chipset Vendor Intel
Chipset Model Braswell Host Bridge
Chipset Revision 21
Southbridge Vendor Intel
Southbridge Model Braswell LPC Bridge
Southbridge Revision 21
BIOS
Brand LENOVO
Version C5CN35WW(V2.06)
Date 30. 9. 2016.
PCI Data
Slot PCI-E x4
Slot Type PCI-E x4
Slot Usage Available
Data lanes x4
Slot Designation J5C1
Characteristics PME, Hot Plug, SMBus
Slot Number 0
Slot PCI-E x1
Slot Type PCI-E x1
Slot Usage Available
Data lanes x1
Slot Designation J4B3
Characteristics PME, Hot Plug, SMBus
Slot Number 1
Slot PCI-E x1
Slot Type PCI-E x1
Slot Usage Available
Data lanes x1
Slot Designation J6C1
Characteristics PME, Hot Plug, SMBus
Slot Number 2
Slot PCI-E x1
Slot Type PCI-E x1
Slot Usage Available
Data lanes x1
Slot Designation J6D1
Characteristics PME, Hot Plug, SMBus
Slot Number 3

Storage tab:

Hard drives
ST1000LM014-SSHD-8GB
Manufacturer Seagate
Heads 16
Cylinders 121.601
Tracks 31.008.255
Sectors 1.953.520.065
SATA type SATA-III 6.0Gb/s
Device type Fixed
ATA Standard ACS2
Serial Number W772N4JA
Firmware Version Number LVD6
LBA Size 48-bit LBA
Power On Count 3512 times
Power On Time 454,9 days
Speed 5400 RPM
Features S.M.A.R.T., APM, NCQ
Max. Transfer Mode SATA III 6.0Gb/s
Used Transfer Mode SATA III 6.0Gb/s
Interface SATA
Capacity 931 GB
Real size 1.000.204.886.016 bytes
RAID Type None
#5215infuscomus⇗ @nijazxp

since you are installing XP via USB and you get a 7B BSOD it is likely that your USB 2.0 port connects through the USB 3.0 controller so you will need to use the USB 3.0 driver for install to work.
#5216nijazxpYes, that is correct when I see devices by connection in device manager in windows 10. They are like:

Zitat
ACPI x64-based PC => Microsoft ACPI-Compliant System => PCI Express Root Complex => USB xHCI Compliant Host Controller => USB Root Hub (USB 3.0) => USB Mass Storage Device => Disk drive (labeled 'Linux File-CD Gadget USB Device')

which is actually my android phone with mounted image via app DriveDroid.
I contacted author of Easy2Boot, and he just made some fix of not having enough memory to put xp iso into memory, and he gave me fix now, but although now bsod disappeared my laptop turns off on screen where i have choice to install, repair, quit xp setup.
I tried pressing F5 and F7 and still error appears, just does not turn off, but freezes on same screen.
Are those usb 3 drivers that are found in xp integral edition in patch folder?
I think since easy2boot puts image into memory I do not need any usb drivers, because files are in ram, not on usb?

#5217infuscomus⇗ @nijazxp

The screen should not be turning off during install - you might want to go back to the old version where this didn't happen

with ACPI patch pressing F5/F7 is no longer necessary

even though the ISO is loaded into RAM you will still need the USB 3.0 driver to avoid 7B BSOD - I'm not entirely sure why but I have confirmed this is the case through my testing.

Do you have the latest version of the parch integrator? - v2.3.4b17

If not I can PM you a link to it
#5218nijazxp⇗ @infuscomus
No, I have 2.1.3. Send me the link. What is purpose of ACPI patches? To solve 7b bsod or pc turning off at start of setup? Or to solve some other bsod? Do I need ACPI patch?
Do I need some other patches? I am 100% sure my bsod 7b is not caued by lack of drivers. I will maybe try to go back to old easy2boot because the author is still experimenting with new method, so maybe that is why xp is turning off. My laptop is produced around 2015.
First time that I hear that 7b bsod is related to usb drivers!
#5219infuscomus⇗ @nijazxp

OK, I'll PM you the link.

ACPI patch resolves A5 BSOD and enables multicore CPU support

you can disable ACPI and XP will still work, but you will only have 1 CPU core.
#5220nijazxpThanks, will try those patches and tomorrow post results here. Also will try some more combinations. Previously during signing I had always some error telling me could not contact some timestamp server, probably because I am keeping pc offline, at least cmd and other firewalled apps.

Also Fernando ⇗ said:

Zitat
The S-ATA hdd's have to be connected to one of the Intel S-ATA ports of the mainboard.
Note: Many Intel chipset mainboards have additionally to the Intel SATA ports other SATA ports, which are managed by another on-board SATA Controller (from JMicron, ASMedia or Marvell). Before you continue with your preparations, you should check, if the S-ATA cable of the HDD/SSD, where you want to get the OS and the boot sector installed, is really connected to one of the Intel ports. If it should be connected to any of the non-Intel SATA ports, you have to integrate/load the related special JMicron/ASMedia/Marvell textmode driver instead of the Intel one. Otherwise Windows Setup will not detect your S-ATA connected HDD, SSD or RAID array at all.


Does anybody know how to detect that? Do I have to disassemble laptop really? Look where exactly? Can this be seen via software? Maybe that is the culprit.

 

Page 349

#5221infuscomus⇗ @nijazxp

The patch integrator has a generic SATA driver so you wont need to look for an intel SATA driver.
#5222nijazxpI just tried windows xp integral edition with these patches under [YES] enabled:
1. [YES] Integrat Microsoft SATA/AHCI driver (Backported Win8 driver).
2. [NO]  Integrat Microsoft NVMe driver (Backported Win7 driver).
3. [NO]  Integrat Samsung NVMe driver (Backported Win7 driver).
4. [YES] Integrat Microsoft USB 3.0 xHCI driver (Backported Win8 driver).
5. [NO]  Integrat AMD/Intel USB 3.0 xHCI driver (Patched Win7 AMD driver).
6. [YES] Integrat ACPI Patch (For Intel 370/390 Chipsets and AMD Ryzen CPUs).
7. [YES] Integrat PAE 4GB RAM Patch (Use this to avoid stability issues).
8. [NO]  Integrat PAE 128GB RAM Patch (May have stability issues).
9. [NO]  Remove Windows XP SP3 SSE2 Updates (For CPUs without SSE2 support).
D. [YES] Remove DriverPacks BASE with the included Driver Packs.
K. [YES] Integrat Kernel-Mode Driver Framework 1.11 (Backported Win7 driver).
U. [YES] Integrat UAS/UASP driver (Improves USB storage device performance).
F. [YES] Fixes a PM Timer problem with the Intel CPUs beginning with Skylake.
L. [NO]  Add configuration settings for creating a Live USB Setup.

And it does not work in any case. In case of new easy2boot that developer sent me to fix not enough RAM, it powers off pc when xp displays choice to install or repair.
In case of winsetupfromusb same as above.
In case of original easy2boot it freezes before is loads at all, while still in easy2boot phase.
Could this be because of bad ACPI patch or grub bug?
Is there any other option without grub?
I will also try winpe method of easy2boot, but I think it still uses buggy grub...downloading windows 7 now to get winpe as recommended by easy2boot.
Hope authors will quickly fix grub and easy2boot for my laptop today...
#5223infuscomus⇗ @nijazxp

Those options look correct -

the author of integral edition recommends winsetupfromusb for XP installs via USB.

For ACPI Try one of the other ACPI drivers

in Integrator Files\Patches\ACPI drivers

replace acpi.sys with one of the other options available -

e.g
copy acpi.sys in  acpi 5048 - 2019.11.1 - diderius6 into
Integrator Files\Patches\ACPI drivers
when prompted to replace the file click yes

then build a new XP ISO

P.S As a last resort to try you can disable ACPI by pressing F7 but you'll lose multicore support if you choose this
#5224AddFunNow somebody needs to patch in proper support of modern nVidia cards under XP (Pascal+) and we can have some pretty amazing WinXp builds! :D

What is the last nVidia gen to support WinXp, (iCafe WinXP drivers for GTX 960?)


...
..
.
#5225infuscomus⇗ @AddFun

you can go up to highest end maxwell - 980ti/Titan X - with an INF mod
#5226AddFunIs the driver model for 1xxx/2xxx series that radically different?
#5227AddFunAlso, actual on-topic question, I swapped my working Z390 partition to a Z490 machine. Boots perfectly, but once at desktop, about 5 seconds in I get a "IRQL_NOT_LESS_OR_EQUAL (0x000000A)" BSOD.... Anyone any idea. This CPU has HT (10700k) vs CPU on Z390 (9600k), although I don't think that's it.
#5228slavainactionHi,

There is a problem with installing Generic USB 3.0 xHCI driver v1.2 via Device Manager on my PC.
The HW ID of my USB controller: VEN_8086&DEV_A12F.
Before installing driver I've installed Kernel Mode Driver Framework 1.11 (updated) which i've founded on another forum.
I can't check any errors cause my usb mouse and keyboard stop working after installing driver.

Any ideas how to fix it?
#5229infuscomus⇗ @slavainaction

you need to also have the ntoskrnl extender

in integrator Files\Patches\Miscellaneous copy ntoskrn8.sys into system32\drivers
#5230slavainaction
Zitat von ⇗ infuscomus im Beitrag ¶ #5229
@slavainaction

you need to also have the ntoskrnl extender

in integrator Files\Patches\Miscellaneous copy ntoskrn8.sys into system32\drivers


Well, the problem wasn't solved.
I've installed this update WindowsServer2003.WindowsXP-KB2864202-x86-INTL. Then from WinXP-IE_Optional_Patch_Integrator_v2.3.4b17\Integrator Files\Patches\Miscellaneous copied ntoskrn8.sys into system32\drivers. And tried to install Microsoft USB 3.0 xHCI driver v2.1 via Device Manager.
#5231diderius6⇗ @slavainaction

use

WinXP-IE_Optional_Patch_Integrator_v2.3.3b20

Dietmar
#5232slavainaction
Zitat von ⇗ diderius6 im Beitrag ¶ #5231
@slavainaction

use

WinXP-IE_Optional_Patch_Integrator_v2.3.3b20

Dietmar


Still nothing. I've tried to install:
Only driver
Driver + ntoskrn8.sys + Framework 1.11
Driver + Framework 1.11
Driver + ntoskrn8.sys

And it doesn't work.
#5233infuscomus⇗ @slavainaction

you'll need to run the patch integrator on the vanilla ISO to make a patched ISO and then use that to do a fresh install of XP
#5234diderius6⇗ @slavainaction

I installed this USB 3 driver (from WinXP-IE_Optional_Patch_Integrator_v2.3.3b20) after setup from a original german XP CD.
And it works
Dietmar
#5235slavainaction
Zitat von ⇗ infuscomus im Beitrag ¶ #5233
@slavainaction

you'll need to run the patch integrator on the vanilla ISO to make a patched ISO and then use that to do a fresh install of XP


My USB 2.0 ports connect throw the USB 3.0 Controller. I understood this when I've updated device manager and my mouse and keyboard stopped working. Also XP doesn't see my connected USB flashes. I guess that's why i've got BSOD 07b when i've tried to install XP via USB flash. If I find the correct USB 3.0 driver, I will not get the BSOD 07b, will I?(I've already found the correct AHCI driver and integrate it by nLite).

So could you write me small instruction how to use this integrator? I mean, what do I need to do for the integrator to see my clean image?

UPD: I've patched(choosed Integrat Generic USB 3.0 xHCI driver (Backported Windows 8 driver)) my clean ISO and when I try to boot installation from flash, I've got BSOD 0x00000096.
Used patch: WinXP-IE_Optional_Patch_Integrator_v2.3.3b20

UPD2: WinXP-IE_Optional_Patch_Integrator_v2.3.4b17 gives me BSOD 0xDEADBEEF.

UPD3: FIXED my problem with USB by using this driver: AMD&Intel USB 3.0 xHCI drivers from WinXP-IE_Optional_Patch_Integrator_v2.3.4b17.

 

Page 350

#5236AddFunAlright. Got a clean install. Finally got it to boot out of safe mode. Noticed a issue: stuck at 4GHz clock wise no matter what the motherboard settings. Thought this was a safe mode issue. Didnt have this on z390/9600k. Why would it be capping my clock speed st 4ghz? (benchmarks prove i am at 4ghz +/- 5%)
#5237slavainactionDoes someone have a driver for the integrated video card Intel HD Grapics 530 for XP 32bit?
HW ID: ven_8086&dev_1912

Without a driver, my monitor runs at 40Hz. That is very painful for my eyes.
#5238infuscomus⇗ @slavainaction

there is a universal 2D driver that will work, but no 3D driver at this time.
#5239slavainaction
Zitat von ⇗ infuscomus im Beitrag ¶ #5238
@slavainaction

there is a universal 2D driver that will work, but no 3D driver at this time.


Where can I find it? Please give me link in PM.
#5240genieautravail⇗ @daniel_k

About WinXPPAE:

There is a specific to USB issue.
If I try to format an USB device, the process hang and USB ports 2.0 stop to works until reboot.
Thank you to let us know if this is a weakness of the Microsoft USB driver or if it can be fixed.

Somebody on the My Digital Life forum posted about the same issue and on another one.

Have a nice day!
#5241kukonosau⇗ @diderius6
Hello. Where to find LAST VERSIONS drivers acpi, SATA AHCI, USB31, USB30 and so on for Windows XP x86 for Ryzen? Can you send me, please? Maybe, do you have another drivers for another devices?
#5242diderius6⇗ @kukonosau

Most of the new drivers for XP SP3 can be found on the webside

⇗ https://www.zone62.com

for example in

WinXP-IE Optional Patch Integrator v2.3.3b20
and the newest one
WinXP-IE Optional Patch Integrator v2.3.4b17
Look with Google for them.

And also in

⇗ https://forums.mydigitallife.net/threads...hardware.81607/

from ⇗ @daniel_k

At the moment I do not have more drivers for myself.
But in very next future I will work here on it again

Dietmar

PS: I would be interested in lan driver for i219 and also on DirectX 10, 11, 12.
⇗ @Mov AX, 0xDEAD was working on but I do not hear news about for a long time.
#5243gordo999⇗ @diderius6 ..."Look with Google for them".   The fascists at Google are blocking many legitimate sites that Google regards as dangerous sites. I had to use the dogpile search engine to find the integrator. So far I have only found the v2.3.3b14 version on dogpile. Found it on a Russian site and you have to look carefully to find the link.

ps. just found it on dogpile using "WinXP-IE Optional Patch Integrator v2.3.3b17.zip" ...without quotes.

BTW...thanks for your outer space version of ACPI. Still using it on XP.
#5244OutbreakerThe Betas can now be ignored because the final "⇗ Optional Patch Integrator" version is out, bundled with the WinXP-IE but works also on every other WinXP when renaming the ISO file.
#5245Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #5242

PS: I would be interested in lan driver for i219 and also on DirectX 10, 11, 12.
@Mov AX, 0xDEAD was working on but I do not hear news about for a long time.


Hi diderius6,
"Vista driver model" for WinXP is hard puzzle, dont except much in quick time )
#5246kukonosau⇗ @diderius6
Hello. Thanks for yesterday post. But I don't know how to integrate USB 3.0 or USB 3.1 drivers for Windows XP x86. How to install Windows XP x86 on Ryzen without PS/2 mouse and keyboard? Nlite isn't help me. Dosnet.inf and txtsetup.sif isn't help me also. USB drivers wasn't detected in install time. Maybe, use WinXP Patch Integrator? How use him?
#5247diderius6⇗ @kukonosau

Take a look at the last post here from ⇗ @Outbreaker #5244

Dietmar
#5248kukonosau⇗ @diderius6
Thanks. But I don't understand how to use Integrator. Cannot find archive...
#5249diderius6⇗ @kukonosau

Rename your xp.iso to

Windows XP Professional SP3 x86 - Integral Edition 2020.9.9 (Vanilla).iso

Dietmar
#5250kukonosau⇗ @diderius6
Thanks! So, Integrator nothing add except drivers? Unnecessary programs will not? Drivers only?

 

Page 351

#5251kukonosau⇗ @diderius6
So, drivers USB modify Win8 doesn't fit. How to integrate AMD USB 3.1 WHQL? Where are download it? I forgot page.
#5252slavainactionI have a problem with shutdown and reboot, sometimes they work good, sometimes I press shutdown/reboot, then I have a screen "Windows is shutting down" and system freezes.
The problem was after modified system with both integrators WinXP-IE_Optional_Patch_Integrator_v2.3.4b17 and Windows XP Professional SP3 x86 - Integral Edition 2020.9.9
I just choose ACPI patch and AMD/Intel USB 3.0 xHCI driver, nothing else.
#5253gordo999
Zitat von ⇗ kukonosau im Beitrag ¶ #5246
Nlite isn't help me.
⇗ @kukonosau ...nlite must be XP version and must be run on an XP machine. XP on VM will work.
#5254kukonosau⇗ @gordo999
Nlite integrated successfully, but USB 3.1 is not detected in installation time. How to add USB 3.1 to text mode? For example, SATA AHCI added successfully because has file txtsetup.oem. But USB 3.1 doesn't working.
#5255infuscomus⇗ @kukonosau

you should use the integrator to integrate the USB 3 drivers correctly

if the integrator is not outputting a customized ISO then make sure the folder path is short so the .cmd file can do what it needs to do

e.g
C:\XPIE\
#5256kukonosau⇗ @infuscomus
Integration was successfully, but USB drivers doesn't working in installation time. But ACPI and SATA AHCI working correctly!!!
#5257infuscomus⇗ @kukonosau

try the alternative AMD/Intel USB 3.0 xHCI driver
#5258kukonosau⇗ @infuscomus
Thanks. I will checking. But how to integrate any drivers to text mode, not only SATA AHCI? For example, I want detect graphics card in installation time and integrate driver 368.81. This is opportunity? But all drivers working after installation Windows XP only, on desktop. AMD USB 3.1 WHQL working only desktop, after install only, but I want to working in installation time when use partition.
#5259herotossive been trying to install win xp on my 2400g+ab350m ds3h+ati2400pro without any success, first installation works then after the xp logo it shows this bsod, no matter wich acpi i try it show always 0xA5.. ⇗ https://i.imgur.com/Qy5OAww.jpg
tried both integral and original,,

#5260diderius6⇗ @herotoss

I think, the acpi.sys is restored back to its original.
So, you have to copy by hand the acpi.sys from outerspace ) (last version)
into windows\system32\drivers bei hand
Dietmar
#5261herotossive already tried that.. no luck

#5262Mov AX, 0xDEAD
Zitat von ⇗ herotoss im Beitrag ¶ #5259
no matter wich acpi i try it show always 0xA5.. ⇗ https://i.imgur.com/Qy5OAww.jpg

Hi All
error is 0xC0000034, probably it is ArbCrackPRT again...

better to have crashdump, but if bsod occur in SETUP GUI phase, i think it is hard to get dump file
another way is to change every 0xC0000034 to other increment value to investigate which proc was failed
 
0xC0000034 -> 0xC0000134
0xC0000034 -> 0xC0000135
0xC0000034 -> 0xC0000136
...
26 times :)
...
0xC0000034 -> 0xC000014E
#5263diderius6⇗ @Mov AX, 0xDEAD

Can you do it for us on the acpi.sys from outerspace ),
just rename all the places, where exact this BSOD with 0xC0000034
happens?
So, step by step acpi.sys from outerspace ) will be perfect
Dietmar
#5264usa1ecDetailed instructions for installing Windows XP on modern PCs in Russian.

Методика установки Windows XP на современные ПК не помещается в форумный пост, рекомендую скачать TXT файл - в нем всегда актуальная и обновленная информация.

ТХТ инструкция от 12.09.2020 года (58 кБ) - ⇗ https://www.upload.ee/files/12265364/Win...2020_9.txt.html
#5265infuscomus⇗ @Mov AX, 0xDEAD

I made the changes you suggested - only went up to 14D though so I might have missed one.



infuscomus has attached files to this post

 

Page 352

#5266herotoss⇗ @infuscomus
using acpi_test_14d.zip the error changed to 7B,, ⇗ https://i.imgur.com/zBy0jwT.jpg

#5267infuscomus⇗ @herotoss

strange - you should still be getting the A5 BSOD you got before, only the 0xC0000034 part should change to make it easier to pinpoint the ACPI error

7B BSOD is a storage related issue so that error could be AHCI, NVMe or USB 3.0 driver related (although I integrated those drivers in the ISO I sent you so I'm not sure why you are getting that BSOD)
#5268herotoss⇗ @infuscomus
hahahh i know trust me i have tried many many times installing xp with different drivers and none of them worked.. im getting crazy here.

#5269gordo999
Zitat von ⇗ herotoss im Beitrag ¶ #5268
...i have tried many many times installing xp with different drivers and none of them worked.. im getting crazy here.
⇗ @herotoss ...might not be helpful but I approached it initially from a different direction. I had a stock XP already installed on its own disk from an older system with all the required drivers for nvidia, creative, etc. On my newer B360M I also have PS/2 ports for mouse/keyboard.

When I fired the XP disk up on the B360M it immediately failed with an A5 ACPI error. That was before diderius6 issued his ACPI from outer space. I simply dropped the current modded ACPI.sys in the windir\sys32\driver folder and that fixed the A5 error. Then I got a 7B error which was related to the SATA driver. You said you checked the manual acpi.sys installation. My system did not use acpi.sys, maybe yours does. Did you check that the system did not replace it? If it does, first go into the folder from which the system gets its originals and replace the original with the new acpi.sys. Then replace it in windir\sys32\drivers. You may have to do that offline from another system. I have XP, W7 and W10 all running on my system on separate drives.

About that time, I discovered the XP SP4 unofficial update from Harkus and I applied it. He uses one of the SATA drivers from winraid which you can find when you download the package, or on this site. That got me right to the desktop using a PS/2 mouse/keyboard. Things were surprisingly stable at that point although I had to mess with new nvidia drivers and creative drivers. At least I had it running and could fiddle with a working system.

I bought a USB 3 add-on card and found some VIA drivers on a Czech site, That got me going with USB and I could use my mouse/keyboard via USB. Then ⇗ @daniel_k came out with his AMD drivers and I applied those. Suddenly I had all my mobo USB ports plus my VIA ports. Have not tried the next generation based on win8 drivers but as I said, I have a working system to use when I do.

Might add that nlite has to be an XP version and must be run on an XP system. There is a check box on one of the pages that needs to be checked in order to get the repair install feature going. Otherwise, you end up with a parallel installation of XP if you select to carry on while leaving your current system alone. Also, you cannot access the repair prompt from the installation disk unless it is checked.
#5270infuscomus⇗ @herotoss

I tried to load my acpi_test_14d in textmode setup and got "acpi.sys is corrupted"

so it seems I broke it - that explains the 7B BSOD instead of A5 BSOD because the acpi.sys driver never successfully loaded.
#5271Andalu⇗ @herotoss
this is not the only case where the XP installation is more problematic than expected (or where it cannot even be installed at all). ¶ Here I reported a similar experience. Clearly, mine is not an encouragement to downgrade the bios but a failed XP installation can also depend from that because there is not yet a perfect acpi.sys (as well as hal.dll) suitable for every motherboard, system, situation.
Anyway, I hope we can find the right suggestion to solve the issues.
#5272diderius6⇗ @infuscomus

For to change the BSOD numbers,
you need to check careful, only which 0xC0000034 belongs to

0x000000A5 (0x00000003, xxx, 0xC0000034, yyy) (special acpi BSOD).

And you have to rebuild each identic matching number also at the place, to which the special Acpi-BSOD 03 jumps,
so that you can identify the exact place, where this error happens. And some acpi errors are only listed (and happen) in the source code of ntoskrnl.exe,
for example BSOD 0x7B
Dietmar

PS: Here in the forum I listed long time ago all the 0xA5,(0x03,..) Bsods.
#5273herotoss⇗ @Andalu
yea i was thinking the same that could be my mobo or the bios that cause xp to fail becouse i have it updated to the latest version...

#5274kukonosau⇗ @diderius6
Hello. Where is drivers SATA AHCI for XP x64 for Ryzen? I lost Skullteria post.
#5275diderius6⇗ @kukonosau

⇗ https://ufile.io/ohtuy2p1

Dietmar
#5276infuscomus⇗ @diderius6

did you mean don't change every instance of 0xC0000034 in acpi.sys?
#5277diderius6⇗ @infuscomus

Yes:))

Have a nice day
Dietmar
#5278herotoss⇗ @diderius6 ⇗ @infuscomus
ok guys dont waste more time on it it is my hard drive that is broken, i tried installing win10/win8 and it says inaccessible boot device (7B) r.i.p.,,,, im gonna buy a new one.. im very srry

#5279infuscomus⇗ @herotoss

just buy a new drive, the rest of your system should be OK and work just fine.

I'd like to get this ACPI BSOD solved just in case someone else encounters this problem.
#5280Mov AX, 0xDEAD
Zitat von ⇗ infuscomus im Beitrag ¶ #5265
I made the changes you suggested - only went up to 14D though so I might have missed one.

Hi infuscomus
Import table is reconstructed => fully damaged, i mean .rdata section

 

Page 353

#5281Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #5272

For to change the BSOD numbers, you need to check careful, only which 0xC0000034 belongs to
0x000000A5 (0x00000003, xxx, 0xC0000034, yyy) (special acpi BSOD).

And you have to rebuild each identic matching number also at the place, to which the special Acpi-BSOD 03 jumps,
so that you can identify the exact place, where this error happens.

Hi diderius6,
exact place where 0xA5,(0x03,..) generated cannot be determinated because subcode 0x03 generated only in one place - ACPIBuildCompleteMustSucceed
what is ACPIBuildCompleteMustSucceed ? i think this is generic CallBack/Filter/Assert handling function.
One of subcalls generate return value as C0000034 (error value), then after many "RETs" cpu will switch to ACPIBuildCompleteMustSucceed at end
#5282infuscomus⇗ @Mov AX, 0xDEAD ⇗ @diderius6

It would be beneficial if we could get Vista's ACPI driver to work for XP (or at least Vista beta 5365) we could solve these left over compatibility issues.

It would be very difficult to do this however - I tried already to do this and did not succeed - kept getting a 7E BSOD in ntoskrn8.sys
#5283kukonosau⇗ @diderius6
Hello. Thanks for your working, create drivers for XP! This is great work! But I have bad news: NFS Undercover has lagging for me on Windows XP SP3. Other games very well working! My configuration: processor Ryzen 5 2600, graphics card MSI NVIDIA GeForce GTX 960, 16 Gb RAM (without PAE on WinXP SP3 x86), motherboard ASUS AM4 B350 PRIME B350M-K. NFS Undercover has lagging on WinXP SP3 x86, unfortunately, but hasn't lagging on Windows 10. Why? May be, I installed XP incorrectly? Or not enough drivers? I frustrated because XP is better operating system. I must be deleted her and install Windows 10 again. I can't have two operating system together(((
#5284gordo999
Zitat von ⇗ kukonosau im Beitrag ¶ #5283
NFS Undercover has lagging for me on Windows XP SP3.
⇗ @kukonosau ...check the hall.dll and intelppm files. I reported on this problem here but diderius6 had already reported on it.

See post #4271:


After installing the correct hal.dll and intelppm.sys my games worked normally and my Firefox browser started working as well.
#5285kukonosau⇗ @gordo999
Thanks for answers. But where is posts with correct hal.dll? It was many by diderius6. Intelppm.sys is driver for all motherboards? I have motherboard on AMD chipset. I must copy hal.dll into System32 folder? Intelppm.sys into system32/drivers?
#5286gordo999
Zitat von ⇗ kukonosau im Beitrag ¶ #5285
where is posts with correct hal.dll?
⇗ @kukonosau ...sorry I can't remember where the drivers are located. There is a discussion here:

⇗ https://www.win-raid.com/t6268f45-What-exactly-is-the-hal-timer-problem.html

I don't know if you are working with the older drivers or the newer W8-based drivers. I don't know if this applies to them.
#5287XPLives⇗ @Pill Monster
Zitat von ⇗ Pill Monster im Beitrag ¶ #4373
Zitat von ⇗ XPLives im Beitrag ¶ #4337
⇗ @Pill Monster
2000 Advanced Server already had > 4GB memory support.  And standard XP Pro 32-Bit could utilize above the 4GB range for a Ramdrive so it wasn't completely neutered.
Possibly you misunderstood me?
With [quote]"XP Pro 32-bit could utilize above the 4GB range"
 - 4GB range of what?  


   
Obviously it means what it means.  Anything ABOVE the 4GB memory limit.  If you had 32.0GB installed that would mean between 4.0GB -> 32.0GB.

Zitat von ⇗ Pill Monster im Beitrag ¶ #4373

Licensing caps aside, the maximum amount of RAM supported by XP is exactly equal to the maximum amount of RAM supported by the CPU, less hardware reserved.  
XP Pro x86 officially supports 64GB of RAM.


   
I have already tested Server 2003 and it cannot see above 64.0GB.  But it does not mean it would not be possible for someone to find a way to extend beyond this.

Zitat von ⇗ Pill Monster im Beitrag ¶ #4373

RAM drives utilizing "hidden memory"  I label snake oil because there are no hidden addresses that can be seen by RAM disk software but not the CPU.  
RAM disks reside in something called a section object, the OS sees part of this section object - the WS partition. The CPU sees all of it and maps data in and out of the process view using pointers.

XP natively supports 36bit addressing using pae (Page Address Extension). Pae adds 4 bits to an address  - two Page Table Directories and a PTD pointer.
Until SP2 enabled was the default boot mode. Hence why XP Pro x86 is not called XP Pro 32-bit.


   
It's called XP Professional.
⇗ http://web.archive.org/web/2020092506164...z~g/s-l1600.jpg

The 32-Bit was tagged on because it's better for laymans to differentiate between the two.  The x86 is derived from the 8086 processor.  However seeing the x86/x64 next to each other some newbies may think the x86 is superior given the larger number.  I think you've swallowed way too many pills and it's time to cut back.

I disagree with Ramdrives as being snake oil.  They are quite useful in many applications compared to using XP without one.  You may not like how it was employed but without this ability it makes XP on modern hardware under utilized.  You should also blame Microsoft from releasing XP Professional as Server 2003 in full functionality.  That would have made everything better from the start.

Zitat von ⇗ Pill Monster im Beitrag ¶ #4373

Zitat von ⇗ XPLives im Beitrag ¶ #4337
But what is the model number of this supposed $2500 36-Bit Xeon?
 
I guess you had to be there.



   
Not really.  I was there and even there when the 8088 CPUs and the Apple ][s were selling.  You neglected to again mention the "model number" of the Xeon.  You only provided the link to the Pentium III specs with that article.  Often times you will have the exact model number on the CPU itself or in this case the protective plastic outer casing would have it shown.

Even this link beats your by 3 months.
⇗ https://www.cnet.com/news/intel-releases...iii-based-xeon/

The closest link I could find on the possible CPU specs:
⇗ https://ark.intel.com/content/www/us/en/...00-mhz-fsb.html

Shows it was nothing special if this IS the CPU you are referencing.  Single Core, Single Thread.  Most of the time they include the MSRP.  Even if this CPU could tap into the above 4GB memory limit most motherboards at that time probably could not achieve 32.0GB like on Ivy Bridge would be my guess without even looking at all the Xeon P3 server motherboards you could find.

The only interesting tidbit is that it was 36-Bit and nothing more which is why I was asking about the exact model number, not the specs description.

Also you were non specific in the first statement referring to a Xeon processor without specifying what chipset generation.  Had you listed it as the P3 Xeon instead of just $2500 36-Bit Xeon it would have narrowed down to specificity which is why I asked for the "model" number of the CPU.  As for it being expensive this is one reason most people never used this stuff except companies who can afford it.  The best consumer P3 I obtained was the 1 GHz Slot 1 which at the time was the king hitting that first Ghz Barrier.  However, it wasn't until the P4 to break the 3GHZ barrier.   After that most CPUs began to focus more on cores instead of clock speed dominance.  And I think we should all be glad because I was getting sick of the jet turbine engine CPU cooler fan noise of those days.

Also as interesting as P3 Xeons are, they weren't as interesting as ultralite laptops with the Pentium M for the lowest wattage possible.   One reason why the P3s were better than P4s when it came to running them fanless.

The only interesting desktop Xeons to speak of that I've encountered are the Haswell ones that had the 13 Watts.  After that generation nothing since has achieved such low levels and most enthusiast motherboards have excluded Xeons from being installed which is a pity as they are exceptionally efficient CPUs.  Now Xeons are forced with iGPUs which I frown upon.  I'd rather have more cores inside for that space.
#5288XPLives⇗ @canonkong
Zitat von ⇗ canonkong im Beitrag ¶ #4793
After testing for days, I am sure it is a very stable USB driver. USB card from ASMedia, VIA, NEC, TI, Etron chips all on the same mainboard together.



   
Very nice!  Almost like me during SkyLake days.  Bought all the USB cards for XP testing...  Only ones missing are the legacy PCI ones. ;)

P.S. Why are most of yours missing rear metal brackets?
#5289XPLives⇗ @canonkong

Zitat von ⇗ canonkong im Beitrag ¶ #4801
@infuscomus
It is ASRock H110 PRO BTC+ mainboard, it has 13 PCI-E slots, cost $40 USD on taobao.

What!? 13 PCIe slots?
This is not ATX, perhaps EATX?  Monster motherboard.  What computer chassis will you use for it?
#5290diderius6XP SP1 and win2003 nice

nt5src.7z   3.149.677.191 bytes

SHA256
2bb3609fa4c2b2641f43aef751a84db5820b64748b7d2d0891d1cb1e55268ce9
#5291schreiberstein⇗ @diderius6 ... This. Is. So. Beautiful. ... Unbelievable. The crown jewels... after all those years.
#5292diderius6⇗ @schreiberstein

yesss, for example usbstor, usbhub, usbehci, acpi, seems really all
Dietmar

PS: Soon I have holidays and then fun starts..
12 years ago I build XP SP1 below 10 MB.
This I try again but now from scratch.
#5293ruthanCheck this out some XP source leak:
⇗ https://www.tomshardware.com/news/window...posted-to-4chan
#5294diderius6
#5295RayeRAs already posted, WinXP SP1 and Win2003 server sources has leaked. Torrent was still alive today, got the nt5src.7z. The unpacked size is 6.8GB, 277863 files (XP) and 6GB, 248740 files (2k6), so it could be complete. Here I found a screen that somebody seems compiled it (may be fake, who knows): ⇗ http://is2.4chan.org/g/1600905929934.png
So now it should be possible extend functionality of ACPI.SYS much more comfortable, maybe using ACPICA codes. But unfortunatelly the sources are SP1 only and probably most of users prefers at least SP2 (I use SP3) - wouldn't be problem for acpi.sys to load SP1 version by latest post-SP3 kernel? I hope not mcuh. But in case of implementing NT API and kernel extensions it would be worse to step some 10 years back...

 

Page 354

#5296gordo999
Zitat von ⇗ RayeR im Beitrag ¶ #5295
But unfortunatelly the sources are SP1 only and probably most of users prefers at least SP2 (I use SP3) - wouldn't be problem for acpi.sys to load SP1 version by latest post-SP3 kernel?
⇗ @RayeR ...I imagine that you could compile the SP1 version and compare the code to the SP3 binary in IDA to see how the code has changed. Some may have changed a lot while others not much. Also, you could try the SP1 version with SP3 to see what errors you get.
#5297diderius6Hi, most I can build, but for example
winlogon.exe and all the ntoskrnl.exe I cant build
Dietmar
#5298infuscomus⇗ @diderius6

someone managed to build it on 4chan

is2.4chan.org/g/1600905929934.png
#5299diderius6⇗ @infuscomus

razzle offline
build -cZ

gives also all ntoskrnl.exe but still no winlogon.exe and so others, also no pinball.exe and some errors.
You need about 100 Gbyte(!) free space and 6 hours for compile
Dietmar
#5300diderius6Next try with

razzle free offline
build -cZP

Dietmar

PS: May be, that winlogon.exe is a composition of other before builded files. I saw this in Win95.
#5301diderius6Only 9 errors,
but still no winlogon.exe and no pinball.exe :)).

The following is the content of the build error log
Dietmar

2>NMAKE : fatal error U1077: 'cl16' : return code '0x2'
1>NMAKE : fatal error U1077: 'cl16' : return code '0x2'
4>NMAKE : fatal error U1077: 'cl16' : return code '0x2'
2>NMAKE : fatal error U1077: 'cl16' : return code '0x2'
7>NMAKE : fatal error U1077: 'cl16' : return code '0x2'
4>net\tapi\thunk\rc : error RW1024: Couldn't open OBJ\I386\TAPI.RES
4>net\tapi\thunk\rc : error RW1024: Couldn't open OBJ\I386\TAPI.RES
3>net\tapi\thunk\rc : error RW1024: Couldn't open OBJ\I386\TAPI.RES
3>net\tapi\thunk\rc : error RW1024: Couldn't open OBJ\I386\TAPI.RES

PS: Msgina.dll is there.

And from build log:
BUILD: winlogon found in ds\security\gina\dirs., is not a subdirectory of e:\source\xpsp1\nt\ds\security\gina

EDIT: There is no folder winlogon in Source\XPSP1\NT\ds\security\gina
as it should be. This means, no winlogon source code at all, the same for pinball.
You can use sunlogon or minlogon but it has not the same power as winlogon.exe.
#5302usa1ecWhere can I download the source codes of Windows XP?
Please, give me a direct URL.
#5303diderius6From English Wikipedia about winlogon.exe in XP:

"In September 2020 the source code for Windows XP was leaked online by an unknown party without Winlogon's source code, rendering the leaked operating system uncompilable and incomplete."

Dietmar
#5304skullteriaYou need compile "published" folder first. You can find it on NT\base\published

And code of winlogon is missing!
#5305infuscomus⇗ @diderius6

does win2k3 have its winlogon source code?
#5306diderius6⇗ @infuscomus

No, same as for XP SP1, no winlogon source code in leaked win2003
Dietmar
#5307infuscomus⇗ @diderius6

anything in the windows 2000 source or nt4 source code?

edit:

Someone said this on betaarchive

   Do you know how to compile the whole code?

Start Razzle, go to /NT, then run bz. It will compile the whole code which will take a long time.

I'm not sure if this will help though
#5308infuscomus⇗ @daniel_k ⇗ @diderius6 ⇗ @Mov AX, 0xDEAD

I've set up a Threadripper system and attempted to install XP onto it.

Unfortunately it freezes on "Setup is Starting Windows" and never throws a BSOD regardless of which HAL I choose

this behavior happens even on a vanilla en_windows_xp_professional_with_service_pack_3_x86_cd_x14-80428.iso
so it isn't any modded driver causing this.

any suggestions? If not I'll give up for now
#5309diderius6⇗ @infuscomus

About the NT4 and win2000 code I cant say anything, because I dont have.
Interesting is, that the acpi.sys driver from XP SP1 and XP SP3 shows exact the same behavior.
If this is true for other files also, Microsoft will have a really big problem with newer OS.

Have you tried the Threadripper system with a working XP from another compi?
Please tell the exact BSOD in this case so that we can see, what is going wrong
Dietmar

PS: You can make a try with F8 during setup from XP. This is a crazy possiblility and works sometimes.
#5310infuscomus⇗ @diderius6

I have not tried XP from another PC, I'll have to try that.

Unfortunately I haven't got a BSOD, so I'm not sure exactly what the problem is.

F8 or F7? (I'm assuming you mean textmode setup?)

 

Page 355

#5311diderius6⇗ @infuscomus

I mean F8, Safe Mode. The crazy but good XP Setup gives you the chance,
to set up an XP with only the most needed drivers
Dietmar
#5312gordo999
Zitat von ⇗ infuscomus im Beitrag ¶ #5310
Unfortunately I haven't got a BSOD
⇗ @infuscomus  ...there is a way to force a BSOD if Windows freezes. Don't have the info on how to do it right before me but I may be able to find it.
#5313madnikosHi everyone,
I'm having problem to instal win xp to my system.
Firstly with the latest Integral edition and the Patch Integrator with acpi 5048 - 2019.11.1 - diderius6(I've tried others too), Microsoft SATA driver v2.0, Microsoft USB 3.0 xHCI driver v2.1, PAE 4GB RAM Unlock I'm getting BSOD with the 7B code.
So then I dont integrate the microsoft sata driver and I integrate the latest intel ahci(v11.2.0.1006 mod by Fernando) and then I'm getting this BSOD 0x0000000A (0x00000000, 0x00000002, 0x00000000, 0x80841D3F).
My specs are: asus Pro WS C246-ACE, i9 9900KS, nvidia titan x maxwell.
I' ve tried the original iso as well with sp3 and integrate the drivers the Patch Integrator with the same BSOD.
Any ideas?
#5314diderius6⇗ https://github.com/window-chicken/windows.xp.whistler

Dietmar

PS: With pinball and winlogon
#5315skullteria
Zitat von ⇗ diderius6 im Beitrag ¶ #5314

⇗ https://github.com/window-chicken/windows.xp.whistler

Dietmar

PS: With pinball and winlogon


Well, this code is from Windows NT 3.5, the leaked version some weeks ago. The winlogon not work on XP or 2003.
#5316RayeRIt seems that someone on 4chan rebuild Win2k3 sucessfully and boot it in VMware
⇗ https://boards.4channel.org/g/thread/77963845#p77965472
But there's mention about missing winlogon.exe and other files:


So Im missing this files in postbuild
D:\svcpack.x86fre\usa\prerebase\termdd.sys
D:\svcpack.x86fre\usa\prerebase\tdasync.sys
D:\svcpack.x86fre\usa\prerebase\tdipx.sys
D:\svcpack.x86fre\usa\prerebase\tdnetb.sys
D:\svcpack.x86fre\usa\prerebase\tdpipe.sys
D:\svcpack.x86fre\usa\prerebase\tdspx.sys
D:\svcpack.x86fre\usa\prerebase\tdtcp.sys
D:\svcpack.x86fre\usa\prerebase\tsddd.dll
D:\svcpack.x86fre\usa\prerebase\rdpdd.dll
D:\svcpack.x86fre\usa\prerebase\rdpwd.sys
D:\svcpack.x86fre\usa\prerebase\rdpwsx.dll
D:\svcpack.x86fre\usa\prerebase\winlogon.exe
D:\svcpack.x86fre\usa\prerebase\licdll.dll
D:\svcpack.x86fre\usa\prerebase\licwmi.dll
D:\svcpack.x86fre\usa\prerebase\sym\dll\licdll.pdb
D:\svcpack.x86fre\usa\prerebase\sym\dll\licwmi.pdb
D:\svcpack.x86fre\usa\prerebase\sym\exe\winlogon.pdb
Now Im trying to just copy them from my XP instalation, I realised not all are in my system32 but they are all in the ISO. Now the ISO haves the file with a _ at the end like tdasync.sy_. Do you you think renaming and copying would work?


I can imagine that winlogon and RDP could have some higher safety level in MS due a lot of encryption code so the leaker might not have access to them. But those files need not to be modified for new hardware so could be taken from install iso. How about the rebuilt acpi.sys - is it OK?
#5317madnikosDoes anyone know why the Microsoft SATA driver dowsnt work or what the problem and im getting bsod?
#5318genieautravailA tutorial for compiling the leaked source code:

⇗ https://gist.github.com/nk2IsHere/f90285...e772631f64fabb9
#5319gordo999
Zitat von ⇗ madnikos im Beitrag ¶ #5317
Does anyone know why the Microsoft SATA driver dowsnt work or what the problem and im getting bsod?
⇗ @madnikos  ....are you using the SATA driver signed by Fernando or the original SATA driver from Micro$oft? Or is this the newer drivers based on W8? What's the error number on the BSOD? Need more detailed information...which system...mobo, chipset, etc. . BTW..I presume you are trying to get XP to run.
#5320XPLives⇗ @RayeR

Zitat von ⇗ RayeR im Beitrag ¶ #5295
As already posted, WinXP SP1 and Win2003 server sources has leaked. Torrent was still alive today, got the nt5src.7z. The unpacked size is 6.8GB, 277863 files (XP) and 6GB, 248740 files (2k6), so it could be complete. Here I found a screen that somebody seems compiled it (may be fake, who knows): ⇗ http://is2.4chan.org/g/1600905929934.png
So now it should be possible extend functionality of ACPI.SYS much more comfortable, maybe using ACPICA codes. But unfortunatelly the sources are SP1 only and probably most of users prefers at least SP2 (I use SP3) - wouldn't be problem for acpi.sys to load SP1 version by latest post-SP3 kernel? I hope not mcuh. But in case of implementing NT API and kernel extensions it would be worse to step some 10 years back...

Rayer it is good to see you here.

Actually it is unnecessary to worry about this.  As long as use the source code for Windows 2000 Server to create the updated ACPI.sys file it can work with XP SP0-SP3, 2009 POS, and Server 2003.  I tested this before.

As for SP1 source it won't be an issue for SP2 or SP3 to work with it.   What you cannot do is use SP3 source to work with Windows 2000 SP0-SP4, or XP SP0-SP2.

It is imperative to use Windows 2000 source code to create the updated ACPI files so it can be used with all NT5.X versions from Windows 2000->2009 POS.
#5321XPLives⇗ @gordo999
⇗ @infuscomus

Zitat von ⇗ gordo999 im Beitrag ¶ #5312
Zitat von ⇗ infuscomus im Beitrag ¶ #5310
Unfortunately I haven't got a BSOD
⇗ @infuscomus  ...there is a way to force a BSOD if Windows freezes. Don't have the info on how to do it right before me but I may be able to find it.


No, once Windows completely freezes you can't do anything.  If you're lucky Windows can detect the issue and BSOD.  But when Windows freezes before it can BSOD then the keyboard and mouse are unresponsive as well.  Only a reset will get you out of it.

The only way to isolate what is causing the Windows Freeze is troubleshooting.  Figure out what you were doing right before the Windows freezes.  Repeat the same thing multiple times to see if happens again.  Then remove this element and let the computer idle and see if it also freezes up.  If it does it's a hardware issue.  Usually a Windows freezes up when tweaking the system like I have in the past.  Trying to squeeze the least amount of voltage required to run at a particular clock speed.  Other freezes could be driver related or a card that is installed causing it.  So if you have tons of expansion cards you are better off removing all of them.  Use just the iGPU of your CPU to get the video output and see if the system freezes up again.  You might even try a clean reinstallation from scratch as a final test to make sure it's not a driver or registry issue.
#5322infuscomus⇗ @diderius6 ⇗ @XPLives

So I made an image of a known working XP system (with ACPI, AHCI and USB3 patches)
I applied that image to a separate drive in my threadripper system and...

black screen, not even an XP logo, just hangs there

Similar problem in XP textmode setup - hangs at "Setup is Starting Windows"
#5323XPLives⇗ @ruthan

Zitat von ⇗ ruthan im Beitrag ¶ #5293
Check this out some XP source leak:
⇗ https://www.tomshardware.com/news/window...posted-to-4chan

Yes, but we still need Windows 98SE and ME source code leak.

For Windows 2000 it might be possible to add 16.0TB -> 64.0TB MBR drives now instead of 2.0TB.

I need someone with some storage driver programming and ROM ripping experience to help make this happen.

Also add native NTFS into Windows 9X->ME for 64.0TB glorious storage compatibility with NT5.X.

Then multicore and 64.0GB memory support in 9X->ME.  Octa SLI Emulated Voodoo 5 6000 1MB card in virtual memory.
#5324XPLives⇗ @infuscomus

Zitat von ⇗ infuscomus im Beitrag ¶ #5322
@diderius6 @XPLives

So I made an image of a known working XP system (with ACPI, AHCI and USB3 patches)
I applied that image to a separate drive in my threadripper system and...

black screen, not even an XP logo, just hangs there

Similar problem in XP textmode setup - hangs at "Setup is Starting Windows"

Always start from scratch rather than a previously installed XP image.  Even though XP can usually migrate to a new system it's not clean and sometimes it will hang detecting devices or can't pinpoint the correct resources.  Also you want to run in NO ACPI mode for this to work.

Use a clean installation and use F7 NO ACPI method to install from scratch on the Threadripper.  It should install with one core and work properly.  Do not add any modified drivers to the installation.  If necessary just use a USB 2.0 PCIe card just to get the USB mouse support and hook the PS/2 keyboard to the rear for input.  Remove all other expansion cards.  Disable in BIOS any onboard sound, LAN, serial com port, parallel port, and other onboard devices which can use up IRQ resources.  Also disable onboard USB 3.0 if possible.  For SATA Controller if it has two brands try and disable the other SATA controller brand also to save more resources.  In the BIOS one more tip look for CPU Cores setting.  Change it to 1.  Some BIOS may not boot on 1 Core and hang so set to 2 Cores.  This happened on my Z370.

If you get through XP setup on AM4 like I did then this proves Threadripper can also work in NO ACPI mode.  Then a proper BIOS mod might allow ACPI installation and multicore with Threadripper.
#5325infuscomus⇗ @XPLives

Even after pressing F7 it still froze on "Setup is Starting Windows"

I've also tried F5 and tried all the different HAL options - still froze on "Setup is Starting Windows"

 

Page 356

#5326XPLives⇗ @infuscomus

Zitat von ⇗ infuscomus im Beitrag ¶ #5325
@XPLives

Even after pressing F7 it still froze on "Setup is Starting Windows"

I've also tried F5 and tried all the different HAL options - still froze on "Setup is Starting Windows"


Probably need to brute force it and use DOS to install it.  Any chance you can record a video of the display output from installing from a clean XP ISO?  No modified drivers.  The only driver you will need now that I thought about it some more is the AHCI SATA driver for the AMD SATA controller only.  No other drivers should be added to the Clean XP ISO. Also disable all those onboard devices I mentioned and set to 1 Core in the BIOS.

Which ThreadRipper did you get and what motherboard brand and model?

Did you try to locate the oldest BIOS and flash to v1.0?

Make sure no other internal expansion cards.  Remove USB PCIe cards also.  Use just PS/2 keyboard only.

Ahh just remembered some other things.  Downclock the clock speed to 800 MHz and disable Turbo.  Disable all sleep modes.

Use HDMI video output on motherboard if it has built in iGPU.  If no iGPU then use a GT 710 PCIe graphics card.

I'd give it a shot if you shipped it.  But in my opinion only Intel Z370 seems to be the best motherboard that I've tested so far for XP without BIOS modding or ACPI drivers modding to work in multicore.  Z390 should work the same as Z370 as well as I can't see any major chipset differences.  Z470/Z490 would probably be the same with more CPU cores support.  Once they get to 10nm or Sapphire Rapids is where the unknown will be.  DDR5 and PCIe 5.0 will be included and whether the BIOS will still be present or removed is the question.
#5327diderius6⇗ @infuscomus

I have seen this behavior from XP Setup,
when the Bios of the compi has problems with the geometry layout of the harddisk.

I overcome this with using RMPREPUSB vers 2.1.739.

I put the harddisk in an USB box and let the harddisk been formatted with only this tool.
After during XP Setup I choose "Leave HD as it is" and the blackscreen is gone always (!)
Dietmar
#5328infuscomus⇗ @diderius6

I do have a 4TB SATA HDD attached so this could be the problem - I don't want to move it to a USB enclosure at the moment.

If I change the partition table on the 4TB from MBR to GPT and format to ext4 could doing that solve this?
#5329diderius6⇗ @infuscomus

Most SATA controllers can not handle under pur XP a 4 TB harddisk.
For to understand what is going on, disconnect everything and use a max. 2 TB harddisk,
formatted with RMPREPUSB vers 2.1.739
Dietmar
#5330madnikos⇗ @gordo999 if you look my previous post I gave all the information about my system and what drivers I 've tried but now I have a new update, I managed to finish the first step of xp instalation and then after the restart when it is setting up devices I' m getting again BSOD 0x0000000A. I' m using the win 8 port for usb 3 and sata but i' ve tried the intel achi as well with the same resault. I cant get pass the installing devices part of the instalation without bsod
#5331infuscomus⇗ @diderius6

OK, I disconnected all of my SATA drives this time (nothing at all connected) and tried again - still froze at "Setup is Starting Windows"


I am wondering if the problem is ACPI related because my linux install logged these errors (see spoiler) but without a BSOD I can't be sure.


17:26:04 kernel: ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20190816/psobject-220)
17:26:04 kernel: ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20190816/psobject-220)
17:26:04 kernel: ACPI BIOS Error (bug): Failure creating named object [\_SB.I2CD.MT5D], AE_ALREADY_EXISTS (20190816/dswload2-326)
17:26:04 kernel: ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20190816/psobject-220)
17:26:04 kernel: ACPI BIOS Error (bug): Failure creating named object [\_SB.I2CD.MT4D], AE_ALREADY_EXISTS (20190816/dswload2-326)
17:26:04 kernel: ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20190816/psobject-220)
17:26:04 kernel: ACPI BIOS Error (bug): Failure creating named object [\_SB.I2CD.WT4D], AE_ALREADY_EXISTS (20190816/dswload2-326)
17:26:04 kernel: ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20190816/psobject-220)
17:26:04 kernel: ACPI BIOS Error (bug): Failure creating named object [\_SB.I2CD.MT3D], AE_ALREADY_EXISTS (20190816/dswload2-326)
17:26:04 kernel: ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20190816/psobject-220)
17:26:04 kernel: ACPI BIOS Error (bug): Failure creating named object [\_SB.I2CD.WT3D], AE_ALREADY_EXISTS (20190816/dswload2-326)
17:26:04 kernel: ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20190816/psobject-220)
17:26:04 kernel: ACPI BIOS Error (bug): Failure creating named object [\_SB.I2CD.MT2D], AE_ALREADY_EXISTS (20190816/dswload2-326)
17:26:04 kernel: ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20190816/psobject-220)
17:26:04 kernel: ACPI BIOS Error (bug): Failure creating named object [\_SB.I2CD.WT2D], AE_ALREADY_EXISTS (20190816/dswload2-326)
17:26:04 kernel: ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20190816/psobject-220)
17:26:04 kernel: ACPI BIOS Error (bug): Failure creating named object [\_SB.I2CD.MT1D], AE_ALREADY_EXISTS (20190816/dswload2-326)
17:26:04 kernel: ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20190816/psobject-220)
17:26:04 kernel: ACPI BIOS Error (bug): Failure creating named object [\_SB.I2CD.WT1D], AE_ALREADY_EXISTS (20190816/dswload2-326)
17:26:04 kernel: ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20190816/psobject-220)
17:26:04 kernel: ACPI BIOS Error (bug): Failure creating named object [\_SB.I2CC.MT5C], AE_ALREADY_EXISTS (20190816/dswload2-326)
17:26:04 kernel: ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20190816/psobject-220)
17:26:04 kernel: ACPI BIOS Error (bug): Failure creating named object [\_SB.I2CC.MT4C], AE_ALREADY_EXISTS (20190816/dswload2-326)
17:26:04 kernel: ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20190816/psobject-220)
17:26:04 kernel: ACPI BIOS Error (bug): Failure creating named object [\_SB.I2CC.WT4C], AE_ALREADY_EXISTS (20190816/dswload2-326)
17:26:04 kernel: ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20190816/psobject-220)
17:26:04 kernel: ACPI BIOS Error (bug): Failure creating named object [\_SB.I2CC.MT3C], AE_ALREADY_EXISTS (20190816/dswload2-326)
17:26:04 kernel: ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20190816/psobject-220)
17:26:04 kernel: ACPI BIOS Error (bug): Failure creating named object [\_SB.I2CC.WT3C], AE_ALREADY_EXISTS (20190816/dswload2-326)
17:26:04 kernel: ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20190816/psobject-220)
17:26:04 kernel: ACPI BIOS Error (bug): Failure creating named object [\_SB.I2CC.MT2C], AE_ALREADY_EXISTS (20190816/dswload2-326)
17:26:04 kernel: ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20190816/psobject-220)
17:26:04 kernel: ACPI BIOS Error (bug): Failure creating named object [\_SB.I2CC.WT2C], AE_ALREADY_EXISTS (20190816/dswload2-326)
17:26:04 kernel: ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20190816/psobject-220)
17:26:04 kernel: ACPI BIOS Error (bug): Failure creating named object [\_SB.I2CC.MT1C], AE_ALREADY_EXISTS (20190816/dswload2-326)
17:26:04 kernel: ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20190816/psobject-220)
17:26:04 kernel: ACPI BIOS Error (bug): Failure creating named object [\_SB.I2CC.WT1C], AE_ALREADY_EXISTS (20190816/dswload2-326)
17:26:04 kernel: ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20190816/psobject-220)
17:26:04 kernel: ACPI BIOS Error (bug): Failure creating named object [\_SB.I2CB.MT5B], AE_ALREADY_EXISTS (20190816/dswload2-326)
17:26:04 kernel: ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20190816/psobject-220)
17:26:04 kernel: ACPI BIOS Error (bug): Failure creating named object [\_SB.I2CB.MT4B], AE_ALREADY_EXISTS (20190816/dswload2-326)
17:26:04 kernel: ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20190816/psobject-220)
17:26:04 kernel: ACPI BIOS Error (bug): Failure creating named object [\_SB.I2CB.WT4B], AE_ALREADY_EXISTS (20190816/dswload2-326)
17:26:04 kernel: ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20190816/psobject-220)
17:26:04 kernel: ACPI BIOS Error (bug): Failure creating named object [\_SB.I2CB.MT3B], AE_ALREADY_EXISTS (20190816/dswload2-326)
17:26:04 kernel: ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20190816/psobject-220)
17:26:04 kernel: ACPI BIOS Error (bug): Failure creating named object [\_SB.I2CB.WT3B], AE_ALREADY_EXISTS (20190816/dswload2-326)
17:26:04 kernel: ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20190816/psobject-220)
17:26:04 kernel: ACPI BIOS Error (bug): Failure creating named object [\_SB.I2CB.MT2B], AE_ALREADY_EXISTS (20190816/dswload2-326)
17:26:04 kernel: ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20190816/psobject-220)
17:26:04 kernel: ACPI BIOS Error (bug): Failure creating named object [\_SB.I2CB.WT2B], AE_ALREADY_EXISTS (20190816/dswload2-326)
17:26:04 kernel: ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20190816/psobject-220)
17:26:04 kernel: ACPI BIOS Error (bug): Failure creating named object [\_SB.I2CB.MT1B], AE_ALREADY_EXISTS (20190816/dswload2-326)
17:26:04 kernel: ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20190816/psobject-220)
17:26:04 kernel: ACPI BIOS Error (bug): Failure creating named object [\_SB.I2CB.WT1B], AE_ALREADY_EXISTS (20190816/dswload2-326)
17:26:04 kernel: ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20190816/psobject-220)
17:26:04 kernel: ACPI BIOS Error (bug): Failure creating named object [\_SB.I2CA.MT5A], AE_ALREADY_EXISTS (20190816/dswload2-326)
17:26:04 kernel: ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20190816/psobject-220)
17:26:04 kernel: ACPI BIOS Error (bug): Failure creating named object [\_SB.I2CA.MT4A], AE_ALREADY_EXISTS (20190816/dswload2-326)
17:26:04 kernel: ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20190816/psobject-220)
17:26:04 kernel: ACPI BIOS Error (bug): Failure creating named object [\_SB.I2CA.WT4A], AE_ALREADY_EXISTS (20190816/dswload2-326)
17:26:04 kernel: ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20190816/psobject-220)
17:26:04 kernel: ACPI BIOS Error (bug): Failure creating named object [\_SB.I2CA.MT3A], AE_ALREADY_EXISTS (20190816/dswload2-326)
17:26:04 kernel: ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20190816/psobject-220)
17:26:04 kernel: ACPI BIOS Error (bug): Failure creating named object [\_SB.I2CA.WT3A], AE_ALREADY_EXISTS (20190816/dswload2-326)
17:26:04 kernel: ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20190816/psobject-220)
17:26:04 kernel: ACPI BIOS Error (bug): Failure creating named object [\_SB.I2CA.MT2A], AE_ALREADY_EXISTS (20190816/dswload2-326)
17:26:04 kernel: ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20190816/psobject-220)
17:26:04 kernel: ACPI BIOS Error (bug): Failure creating named object [\_SB.I2CA.WT2A], AE_ALREADY_EXISTS (20190816/dswload2-326)
17:26:04 kernel: ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20190816/psobject-220)
17:26:04 kernel: ACPI BIOS Error (bug): Failure creating named object [\_SB.I2CA.MT1A], AE_ALREADY_EXISTS (20190816/dswload2-326)
17:26:04 kernel: ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20190816/psobject-220)
17:26:04 kernel: ACPI BIOS Error (bug): Failure creating named object [\_SB.I2CA.WT1A], AE_ALREADY_EXISTS (20190816/dswload2-326)


#5332diderius6⇗ @infuscomus

Just hit F7 during Setup and choose Standard PC.
If the error is Acpi related,
you can then install XP
Dietmar

PS: Have you formatted your harddisk with RMPREBUSB?
#5333infuscomus⇗ @diderius6

I tried F7 option - still froze at "Setup is Starting Windows" although the keyboard turned off but did not turn back on

pressing F5 for the other HALs and they also froze

I have not formatted the 4TB with RMPREPUSB yet as I have disconnected the drive
#5334diderius6⇗ @infuscomus

Please make a try to format your only harddisk for XP Setup with RMPREPUSB in an USB box.
All your symptoms during Setup I have had on some compis, where
the geometry of the harddisk was not recogniced correct.
Strange enough this happens exact only at the place,
that you describe
Dietmar
#5335infuscomus⇗ @diderius6

I'm skeptical that it is the hard disks causing the problem, it still froze even when no storage was connected at all (except the optical drive for the XP CD)
#5336diderius6⇗ @infuscomus

Another possibility is to make a direct XP Setup to an USB disk.
In this case, the problem with harddisk geometry will not happen,
Dietmar

PS: When you put your XP.iso on an USB stick and start install with firadisk,
any problem with the SATA connector will be gone. I make this on a board with destroyed SATA.

For USB install via Firadisk see
¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (253)
#5337infuscomus⇗ @diderius6

RMPREPUSB did not work unfortunately.

This might be a larger problem - I tested my recovery media built using PE of Windows 10 1607 and it also froze i.e the swirling ring never showed up, just had the windows logo sitting there forever.

I'll need to find out the earliest windows 10 version that boots.
#5338XPLives⇗ @infuscomus

Zitat von ⇗ infuscomus im Beitrag ¶ #5328
@diderius6

I do have a 4TB SATA HDD attached so this could be the problem - I don't want to move it to a USB enclosure at the moment.

If I change the partition table on the 4TB from MBR to GPT and format to ext4 could doing that solve this?


Ahhh!

There's your problem.  It's your SATA hard drive capacity.

Here's what I recommend use a 120GB Primary Hard Drive for storing your Boot Partition C: - 98SE DOS 2GB FAT32, D: for XP 32GB FAT32, E:32GB FAT32, F:Largest remaining capacity chunk FAT32.

2TB Secondardy Hard drive NTFS one entire 2.0TB partition if you wish or can split it into multiple 128GB partition chunks NTFS if you want to have XP SP0 backward compatibility.

Only hook up the 1st hard drive or SSD 120GB.  Install 98SE DOS onto C:, then later install XP to D:

Once the XP installation is successful you can hook up the 2nd 2.0TB SATA hard drive and it will see it fine for additional storage.

I don't recommend you hook up any drive larger than 2.0TB internally as XP cannot see it properly (yet) unless someone helps me modify the storage driver then it would be possible to see 16TB and maybe 64TB drives in XP internally in the future.  For now not yet.
#5339infuscomus⇗ @diderius6 ⇗ @XPLives


I'm leaning towards it being an ACPI related error rather than anything to do with the 4TB drive - I tested Vista betas, Vista RTM, Vista SP1, 7 RTM, 7 SP1, 8.0 and 8.1 (Vista and later should have no issue with 4TB drives correct?) and all of them except for 8.1 gave an A5 0x00000011 BSOD when I attempted to boot from them.
#5340gordo999
Zitat von ⇗ XPLives im Beitrag ¶ #5321
No, once Windows completely freezes you can't do anything.  
⇗ @XPLives ...
In case your keyboard still works, and in many cases it does with a freeze in Windows, here's the method for forcing a BSOD.

⇗ https://www.techrepublic.com/article/cre...-in-windows-xp/

"Here's how to create a BSOD:

   Launch the Registry Editor (Regedit.exe).
   Go to HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\i8042prt\Parameters.
   Go to Edit, select New | DWORD Value and name the new value CrashOnCtrlScroll.
   Double-click the CrashOnCtrlScroll DWORD Value, type 1 in the Value Data textbox, and click OK.
   Close the Registry Editor and restart Windows XP.

When you want to cause a BSOD, press and hold down the [Ctrl] key on the right side of your keyboard, and then tap the [ScrollLock] key twice. Now you should see the BSOD".

I read elsehwere that a different service needs to be used if you have a PS/2 keyboard (rather than the i8042prt driver listed above.

 

Page 357

#5341XPLives⇗ @infuscomus

Zitat von ⇗ infuscomus im Beitrag ¶ #5339
@diderius6 @XPLives


I'm leaning towards it being an ACPI related error rather than anything to do with the 4TB drive - I tested Vista betas, Vista RTM, Vista SP1, 7 RTM, 7 SP1, 8.0 and 8.1 (Vista and later should have no issue with 4TB drives correct?) and all of them except for 8.1 gave an A5 0x00000011 BSOD when I attempted to boot from them.

Vista and Windows 7 will probably encounter an ACPI related issue that you verified and others have as well.

Windows 8.0 and 8.1 to Windows 10 probably will not have the ACPI related issue since they are all based on the same NT branch version with updated ACPI support.

XP does not work with internally connected drives of 2.2TB or higher or 2.0TiB set for MBR.  Vista and higher do not have this issue for MBR or GPT high capacity drives.  Server 2003 supports GPT so it might possibly accept drives of 4TB internally connected but I have NOT tested this so don't assume this works as it might only allow large capacity GPT drives as internal storage but not the OS boot drive.

XP will probably either lock up the system at the point where you stated if using such a high capacity drive since MBR is only supported and the 512 Bytes per Sector maxes out at 2.2TB.  The BIOS may even hang in some cases on much older systems with lower capacity limits.

Try the XP reinstallation using a single 120GB HDD or SSD set for MBR (not GPT) as the Primary internal SATA drive.  If possible use another XP working system to delete all the partitions on that drive and recreate it from scratch.  XP might not like the partitioning style done by Vista or later Windows versions including Linux.  Do not hook up any other drives and repeat the CLEAN ISO not a previous imaged one for the new XP installation test with just only the AMD SATA AHCI driver slipstreamed and no other modified drivers such as the USB 3.0, ACPI, or Daniel_K or Diderius6 enhancements.  Use the F7 NO ACPI to do the new test instead of F5.  Use the internal SATA optical disc drive for the XP installation source files.  Remove all internal PCIe cards and use the CPU iGPU or a GT 710 PCIe card for video output.  Use PS/2 keyboard to rear PS/2 motherboard port.  Set CPU Cores = 1 and downclock MHz to 800 MHz.   Disable Turbo mode and Sleep modes in BIOS if possible.

If you cannot do this exactly you are wasting your time guessing as what's the problem.

Can't really comment on whether that BSOD forced keyboard trick works when adding that registry modification.  When my computer completely freezes you can tell it is frozen because the Num Lock and Caps Lock button that lights up cannot be turned on and off aside from the dead mouse cursor.  I'd be surprised if this works when my machine has completely frozen without BSOD.  I have to reset my system or power it off manually.
#5342diderius6⇗ @infuscomus

I build a new acpi.sys for 5.1.2600.1106 (xpsp1.020828-1920)
english (USA) XP pro SP1 for to solve BSOD A5 0x11 on my Asrock fatal1ty gaming k6 board with this XP SP1 version.
MD5 from this original XP SP1 CD engl (USA) Retail CAE234FB80361EDAACEFE5F48B203B86
SHA-1 02695740D94FFB094FC3E80A7111C9501D534F6D
KEY ..

Also I integrate with nlite the Sata driver ver. 1006 from fernando.
XP setup stops (just hangs) with my new acpi.sys at the very first beginning of setup
"Setup is starting Windows".

This is acpi related, because when I chose via F5 "Standard PC" the installation continues
Dietmar

EDIT: Now comes the most most crazy thing: I can install this XP SP1 with the acpi.sys for XP SP3,
I think because it is from outerspace )..

EDIT2: With original acpi.sys (changed back on this installed XP) from XP SP1 I get ACPI BSOD A5 0x11.
With my new build acpi.sys direct from above I get BSOD 0x7B. This means, that the acpi BSODs can also make this 0x7B BSOD, which is normally given out, when no boot device can be found by XP (no working arcpath).

With the acpi.sys from outerspace ) all is ok and now the real fun with the new compiled XP SP1 starts.
#5343gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #5342
With my new build acpi.sys direct from above I get BSOD 0x7B. This means, that the acpi BSODs can also make this 0x7B BSOD, which is normally given out, when no boot device can be found by XP (no working arcpath).
⇗ @diderius6 ...I have always related the "Setup is starting Windows" error with the 0x7B error and caused by the SATA driver. I say that because Windows loads a SATA driver at that stage whereas acpi.sys seems to be loaded earlier.

Obviously, a SATA driver is loaded to get the disk running but apparently Windows loads it's own SATA system related drivers when Windows starts. I noticed that when installing from the setup disk. The first error I got was the 0xA5 error claiming my acpi.sys had issues. I could bypass that using F7 (I think) but just as Windows started, I'd get the 0x7B error and that was related to the SATA driver.

Wonder if there is a connection between acpi.sys and Fernando's driver? There probably is because acpi.sys seems to run the entire driver loading chain for PCI.
#5344diderius6⇗ @gordo999

What a nice idea!

I do an intensive check for this.
On this Asrock board is also an Asmedia 106 SATA-port.
There happens the same: With my new build acpi.sys (against BSOD A5) (from original english SP1 CD)
also on the Asmedia 106 Sata port I get Bsod 0x7B and works with acpi.sys (XP SP3) from outerspace ).

But then I do USB boot. And voila, my new build acpi.sys (from SP1) works!
So, the normal acpi.sys make fit against BSOD A5, has a problem with SATA drivers.

And now comes the most crazy which gives BIG hope for a really new acpi.sys build from SCRATCH:

My acpi.sys (build from XP SP1) can boot XP SP3

Dietmar

PS: The result from all this testing is:
When the compi gets frozen at the message "Setup is starting Windows"
goes always to the boot device, here Sata, with not shown BSOD 0x7B.
Credit and thank you very much ⇗ @gordo999 .

EDIT: For USB3 boot of XP SP1 I use the nice driver from ⇗ @daniel_k and ⇗ @Mov AX, 0xDEAD
        AMDXHCI_XP_FINAL_V3

#5345infuscomus⇗ @diderius6

do you have any systems with a problematic ACPI table? i.e A5 BSOD in Vista/7/8.0 and only 8.1 and later work correctly?
#5346diderius6⇗ @infuscomus

Yes, I have a crazy notebook,
Lenovo Ideapad flex 10,
where I can install XP only without any acpi.
And no version of Win7 works there, only win8 and win10
Dietmar
#5347gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #5344
When the compi gets frozen at the message "Setup is starting Windows" goes always to the boot device, here Sata, with not shown BSOD 0x7B.
Credit and thank you very much @gordo999 .

⇗ @diderius6 ...just a guess from me. The credit goes to you. You did the work and have the expertise. Congratulations, and thanks.
#5348infuscomus⇗ @diderius6

Normally F7 would also work for me as well to get past an ACPI A5 BSOD - but on my threadripper system it still freezes on "Setup is Starting Windows"

Even with no storage devices connected

I don't think I've mentioned what threadripper hardware I have

Gigabyte TRX40 DESIGNARE
THREADRIPPER 3960X CPU
MSI RTX 2070 VENTUS
G.SKIL 8x8GB 3600mhz RAM
2x KINGSTON 1TB A2000 NVMe SSDs
4x Crucial MX500GB SATA SSDs
1x 4TB WD Blue HDD
#5349diderius6Make a try with the storport driver from Skullteria Dietmar
#5350infuscomus⇗ @diderius6

which storport version was this? link please?
#5351diderius6⇗ @infuscomus

⇗ https://ufile.io/ngkxtrjm

Dietmar
#5352diderius6⇗ @infuscomus

I noticed some more about the behavior from XP belonging to
"Setup is Starting Windows".
Even when you do USB boot (or install), there must be a working driver for the harddisk been loaded,
even when no harddisk is connected at all. Or it hangs.
We wonder all the time, why an BSOD 0x7B can happen, when everything is ok for USB boot.
It is also time dependend, XP needs enough time for to switch from harddisk driver to the USB driver at first place for boot

Dietmar
#5353gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #5352
We wonder all the time, why an BSOD 0x7B can happen, when everything is ok for USB boot. It is also time dependend, XP needs enough time for to switch from harddisk driver to the USB driver at first place for bootDietmar

⇗ @diderius6 ....Sorry for the length of this but I don't think the answer to why the 0x7B BSOD error happens is that easy to understand. You probably know all this already, I am just going over what little I remember about the role acpi.sys plays in the enumeration of devices during the Windows boot process. I have a good explanation from Microsoft which I will post if I find it.

Meantime, I found this article which shows the layout of the device tree with acpi.sys at the root of the tree.

⇗ https://docs.microsoft.com/en-us/windows-hardware/drivers/kernel/device-tree

Also....

⇗ https://docs.microsoft.com/en-us/windows-hardware/drivers/kernel/acpi-driver

I am not sure about this but all devices attached to PCI and PCIe busses must be enumerated. Even if you have no SATA drive connected, the SATA port itself on the motherboard needs to be enumerated. The boot process or Windows needs to know there is some kind of storage port available.

My background is in computer hardware so I tend to think of the chips on the motherboard, like bus controllers, as devices as well. Windows definitely sees them as such although much of that may be hidden from the user. So, Windows will see each SATA port as a device through the SATA controller drivers. I think that's what may cause the 0x7B error, if the IDE ATA/ATAPI controller in device manager does not have the required driver for the motherboard ports. That can definitely be related to acpi.sys.

Obviously, when you boot, before Windows is initialized, the system needs to know about the SATA ports. It doesn't care at this point whether they are serial ports or parallel ports, it just checks for the ATA standard, that an ATA port is available. I think that is done in BIOS or in the boot code on the SATA disk, if it is attached. If you use a USB boot device only, the boot code has to be included on the USB device. When you first boot, the system knows nothing about Windows, the loading is done by what we used to call a bootstrap loader.

⇗ https://www.computerhope.com/jargon/b/bootload.htm

During the bootstrap processes, the operating system is initialized. Actually, Windows is still booted by a DOS-like process. When Window's does start, at the 'Setup is Starting Windows', or 'Windows is Starting', Windows needs to load its own drivers, but first it needs to enumerate the system to see what drivers needs to be loaded. ACPI.sys is involved in that process BEFORE the SATA controllers are loaded. That might explain why the 0xA5 error occurs before the 0X7B error when both acpi.sys and storport.sys are not right for XP.

I have forgotten a lot of this and would have to read the theory again. However, the plug and play system is dependent on acpi.sys. ACPI does the enumeration of the entire plug and play system and that pretty well is the PCI/PCIe bus system. If acpi cannot enumerate an appropriate driver for the motherboard SATA ports, it may give that 0X7B error. That might be a problem between acpi.sys and storport.sys.

Please be aware that my description of this theory is not intended to be completely accurate. I am only offering suggestions for why there may be problems between an acpi.sys and a SATA controller driver like storport.sys.

Storport.sys seems to be related to the Device Manager section IDE ATA/ATAPI Controllers. My understanding is that the controllers control the SATA controllers on the motherboard, since SATA means Serial ATA. During Windows initialization, it will be reading that section to initialize the SATA bus (device stack), whether there is a SATA disk connected or not.

In the same manner, if you try to connect a USB drive to a USB port that has not been properly enumerated and initialized, the USB drive will not work. The fact that your system worked from a USB drive suggests acpi.sys and/or the plug and play manager is working correctly with the USB driver stack. The 0x7B error suggests there is a problem between acpi.sys and possibly storport.sys, but only when Windows is trying to load.

If there is a difference (conflict) between what acpi.sys reports during its enumeration of the plug and play devices and what Windows sees through its storport.sys information, that may be the source of the 0x7B error. Storport.sys is likely responsible for sending back data about the motherboard SATA ports and if it cannot talk to acpi.sys, an error will occur.

I don't know, I am only theorizing. If you boot from a USB device, the boot process will involve the boot code on the USB device. However, Windows still has to enumerate the devices on the busses of the motherboard. The USB device stack will be enumerated separately from the storage device stack.

It's not clear to me how acpi.sys fits into this process during setup or during the pre-Windows boot process. Maybe it's not involved till Windows is involved. So, maybe the boot code and the BIOS code handles the SATA controllers on the motherboard before Windows tries to start.

If you do a setup from the installation disk, something on the disk detects in XP that something is wrong with the acpi.sys driver on the XP disk. It would be interesting to see what the original XP setup code is checking for when it determines the acpi.sys driver is not correct. If you bypass that with F7, or install acpi.sys from outer space, and let setup proceed, it will load all the required drivers for XP, then you will see 'Setup is Starting Windows'. If the SATA controller is not the right one, you will get the 0x7B BSOD.

It seems to me acpi.sys and the SATA controller driver (is it storport.sys???) must be matched, whether you have a SATA device attached or not.
#5354XPLives⇗ @infuscomus
Zitat von ⇗ infuscomus im Beitrag ¶ #5348
@diderius6

Normally F7 would also work for me as well to get past an ACPI A5 BSOD - but on my threadripper system it still freezes on "Setup is Starting Windows"

Even with no storage devices connected

I don't think I've mentioned what threadripper hardware I have

Gigabyte TRX40 DESIGNARE
THREADRIPPER 3960X CPU
MSI RTX 2070 VENTUS
G.SKIL 8x8GB 3600mhz RAM
2x KINGSTON 1TB A2000 NVMe SSDs
4x Crucial MX500GB SATA SSDs
1x 4TB WD Blue HDD


   
Now I know the specs.  I tried looking at all ThreadRippers and the lowest is 180 Watts and most pushing to 250 Watts.  Still too hot for my taste to invest in.  If it can get down to 80 Watts in 5th Generation it might be worth it or when AMD releases a DDR5 and PCIe v5.0 chipset to warrant investing.

However I've seen some 1st Gen TR CPUs drop in price in $200 range so maybe I will look into this in the future and find a good TR4 motherboard.  The other question is have you ever seen any TR4 motherboard with a legacy PCI slot?  So far I've only seen PCIe only.

If you could record a video using a smartphone and upload this to youtube or somewhere to download that shows from before the XP installation begins to the point where it gets to the point where it freezes on "Setup is Starting Windows" I can try and do a comparison to isolate on my own system to do specific tests on Intel and AMD to see what happens if I remove certain drivers at different points to see if still works or freezes up.

I have motherboards that can also disable the Storage Controllers so I could also see what effect this has and I have larger than 2.2TB drives as well.  This might be a good test for USB only.

Another thing is modifying a BIOS which is considered XP compliant ACPI and tweaking it until it causes a BSOD A5 Error and doing testing.

What is minimum amount of BIOS modification code to trigger this error on a good XP ACPI.sys compliant BIOS to do extra testing.  This would be a way to see how this plays with storage drivers.

Since you tested F7 but neglected to mention if you used a 120 GB HDD or SSD connected as the only primary drive in your testing and no other drives, nor if you only used the correct AMD SATA controller driver and no other modified drivers there are too many variables to make a conclusion.

But you mentioned no storage device connected.  Even without any storage devices connected you still have another issue.
HOW are you installing XP?  Are you using a SATA optical disc drive?

If so that means it has to load the correct AMD SATA controller driver at some point when it switches from the DOS to the XP GUI setup stage.

Check if in your BIOS can you full disable all SATA controllers onboard and repeat the test.

The other thing I would try is getting an Asmedia 1061 SATA PCIe controller and use that as the Storage Controller to boot from with all on board SATA controllers disabled in the BIOS.  Also hook up your SATA optical disc drive to this Asmedia controller.  If you cannot disable them in the BIOS you will have to modify it.  That will guarantee no conflict caused by the onboard SATA controllers being detected.

I haven't fully investigated this but does the AMD AM3 SATA storage driver work on an AM4 SATA storage controller?  Or was there a significant change making it incompatible?

The only interesting thing is if you could make Threadripper work would be getting the 64 Cores / 128 Threads CPU model to work with XP.  If that could be done it would be the most powerful system to date.
#5355XPLives⇗ @diderius6

Zitat von ⇗ diderius6 im Beitrag ¶ #5352
@infuscomus

I noticed some more about the behavior from XP belonging to
"Setup is Starting Windows".
Even when you do USB boot (or install), there must be a working driver for the harddisk been loaded,
even when no harddisk is connected at all. Or it hangs.
We wonder all the time, why an BSOD 0x7B can happen, when everything is ok for USB boot.
It is also time dependend, XP needs enough time for to switch from harddisk driver to the USB driver at first place for boot

Dietmar


What is the source location of the XP installation files when installing to USB?  Are you using an optical disc drive to read XP installation files from?

 

Page 358

#5356XPLives⇗ @diderius6

Zitat von ⇗ diderius6 im Beitrag ¶ #5346
@infuscomus

Yes, I have a crazy notebook,
Lenovo Ideapad flex 10,
where I can install XP only without any acpi.
And no version of Win7 works there, only win8 and win10
Dietmar


What is the CPU model installed in this Lenovo Ideapad flex 10?  Too many models to find exact specs.
My guess is this is SkyLake or later CPU.
#5357XPLives⇗ @infuscomus

Zitat von ⇗ infuscomus im Beitrag ¶ #5345
@diderius6

do you have any systems with a problematic ACPI table? i.e A5 BSOD in Vista/7/8.0 and only 8.1 and later work correctly?

Starting with Coffee Lake you will find this behavior from what I've heard of Windows 7 ACPI problem since they are devoted to Windows 8.1 and 10.0 branch.  Although 8.0 should also work.  But I believe I could install Vista and Windows 7 onto Z170 with no issues many years ago.  The problem is random errors booting up probably caused by ACPI since Haswell on Vista.

A lot of laptops that are XP ACPI compliant when installed in NO ACPI mode will not work correctly such as the internal keyboard or touchpad will not function.  Some devices require ACPI to work.
#5358infuscomus⇗ @diderius6 ⇗ @XPLives

regarding XP and larger than 2TB hard drives -

I noticed the import table for disk.sys of vista RTM is a match for XP ntoskrnl hal and classpnp.sys

I'm wondering if it might be possible to swap XP disk.sys with vista RTM disk.sys to get larger disk support?

edit:
and disk.sys of windows 7 SP1 is a match with ntoskrn8 extender.
#5359diderius6⇗ @infuscomus

Just try. I did the same with the files from winserver2003 and works,
but only for GPT disks and <=2 TB
Dietmar
#5360infuscomus⇗ @diderius6

It seems partmgr.sys is also needed for 2TB+ drives to become available - but needed imports are missing.

⇗ @Mov AX, 0xDEAD
if you are able can you add functions to ntoskrn8 extender for partmgr.sys to work?
#5361sashbbbbHelo frierds! Need aspi.sys for install windows xp on lenovo laptop 100-15iby(Intel Celeron N2840 Bay Trail DDR3 2GB ) .
Tried all versions is  tried all versions from WinXP-IE assembly Optional Patch Integrator v2.3.3b20/

error in boot windows BSOD 0x000000B4 (The video driver failed to initialize)
#5362gordo999
Zitat von ⇗ sashbbbb im Beitrag ¶ #5361
Helo frierds! Need aspi.sys ...error in boot windows BSOD 0x000000B4 (The video driver failed to initialize)
⇗ @sashbbbb  ....do you mean acpi.sys or aspi.sys? If you mean aspi.sys, you won't find it here. Try here:

⇗ http://web.ncf.ca/aa571/aspi.htm

If you have reached the stage where you are getting a video driver error, you are past the point where acpi.sys could be a problem. Look for the text, 'Windows is Starting' during boot or setup. If you get past that point, then the error occurs, you need to fix your video driver problem. You might be able to use F8 during boot to reach the selection screen where you can select a VGA driver, so you can boot. Then you will have to fix your video driver error.
#5363YuriyCNNew SATA AHCI Controller driver StorAhci version 1.0 with SOURCE CODE.

StorAhci is based on Microsoft's storahci sample driver for Windows 8 and was changed to support Windows Server 2003 SP1 and SP2 with out of the box storport.sys driver. In addition we added a txtsetup.oem file to load it from a driver floppy disk at the F6 text setup stage. StorAhci is a universal SATA AHCI Controller driver for use with AMD, Intel and any other chipsets.

⇗ https://sourceforge.net/projects/storahci-for-windows-2003/
#5364sashbbbbThis is error in boot windows BSOD 0x000000B4
in safe boot



sashbbbb has attached images to this post  ⇗ lenovo laptop 100-15ibyWi  ⇗ boot last known configura  ⇗ save boot not driver VGA.  ⇗ save boot.jpg  ⇗ boot.jpg
#5365diderius6⇗ @sashbbbb
Make a try with the STORAHCI driver with storport.sys from ⇗ @skullteria .
⇗ https://ufile.io/ngkxtrjm
The storport.sys you have to add by hand into windows\system32\drivers
Dietmar

PS: And use the acpi.sys from outerspace ) .
#5366diderius6For the very first time I succeed to compile XP SP1 from Sources without any error.
There I noticed, that for ntoskrnl.exe not all source files are there, some are precompiled and there only as *.obj.
After instruction for W2003 build, you should remove all "read only" marks.
But when you make a clean build with build -cZP those *.obj are deleted and no ntoskrnl.exe is build.
Now fun starts: I make a mini XP SP1 from them by scratch
Dietmar

EDIT: This XP SP1 has a storport.sys 5.1.2600.1106 .
#5367skullteriaWell, it's occours because source haven't exinit.c and systime.c, only generated obj for x86 and ia64. So, when you run clean, delete these obj too, and build fail to compile kernel
#5368diderius6Oh so much fun

I just build with ntldr, ntdetect.com, hal.dll and ntoskrnl.exe fresh compiled from Source
a working XP SP1 with commandline.
I integrate iastor.sys from Fernando into this minixp
and this runs on 8700k Asrock fatalty board
Dietmar

PS: As winlogon.exe I use renamed minlogon.exe from XP embedded.

#5369RayeR
Zitat von ⇗ XPLives im Beitrag ¶ #5320

Actually it is unnecessary to worry about this.  As long as use the source code for Windows 2000 Server to create the updated ACPI.sys file it can work with XP SP0-SP3, 2009 POS, and Server 2003.  I tested this before.
As for SP1 source it won't be an issue for SP2 or SP3 to work with it.   What you cannot do is use SP3 source to work with Windows 2000 SP0-SP4, or XP SP0-SP2.
It is imperative to use Windows 2000 source code to create the updated ACPI files so it can be used with all NT5.X versions from Windows 2000->2009 POS.



I need to clarify this...
So you mean there was already leaked sources of acpi.sys from W2k that can be rebuild and used for all newer windows up to SP3/Wk3? I read that some subset of W2k sources had leaked before but didn't investigated further.
Are you sure there was not any critical acpi.sys updates in newer OS versions that would require some minimal version for specified OS version? I would guess ahat acpi.sys from XP SP1 would be more advanced than one from W2k.

And how about that acpi.sys patches linked in this thread? I though they are original binaries that was hacked/patched on binary level using disassembler and hexa exitor, not rebuilded from sources. am I right?

diderius6 also mentioned about acpi.sys from XP SP3 from "outer space" that it worked for him, it's meant to be original SP3 version or some hacked one?
He aslo mentioned "I build a new acpi.sys" - is it mean from leaked  src?
Update: oh, I see you just rebuild and run 'miniXP' - congrats :) But a pitty about missing kernel sources :(

BTW from the ⇗ posted description of acpi.sys it seems it's respnsible for enumerating other devices and loading drivers so I can imagine that if something not anumerated properly then disk driver is not loaded getting other error.
BTW2 there's mention about AMLI debugger, did someone able to run it? It should help debugging ACPI issuses.
#5370diderius6I succeed to integrate the original winlogon.exe
into my minixp.
But now comes a screen, that I have never seen before
and which names should be put there

Dietmar

PS: Admin or Administrator works but then hangs for a minute and then asks again;)) for..

 

Page 359

#5371schreiberstein⇗ @diderius6 I suppose it is a language mismatch.
Did you try to place US English binaries instead of German ones?
#5372diderius6⇗ @schreiberstein

I tried both, english and german XP SP1 winlogon.exe.
Also with winlogon from server2003, XP SP0, XP SP3,
only original from XP SP1 works,
but fails via password
Dietmar

I see, that you have to build the user profile by hand.
Oh, this is a hard job. But look at the date of build;))
Dietmar

#5373diderius692.5% of files are build via Sources and work all.
When you add the missing 7.5% files from working XP SP1,
you have a full XP SP1
Dietmar

#5374gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #5370
PS: Admin or Administrator works but then hangs for a minute and then asks again;)) for..
⇗ @diderius6 ...Dietmar...that Window seems to be the registration Window, not the logon window, and I have seen this behavior before. If I remember correctly it is related to the Internet Explorer version.

Ps. (added later)...press the Options button (Optionen) and see if it leads you to options for registering, like by phone.

I don't remember whether you have to change IExplorer from version 8 to version 6 or vice versa. Or, you may not have IExplorer installed. Registration needs it and if it's not there or working the registration window fails.

Not sure if XP1 required you to install IExplorer from the Windows Components menu where the Add/Remove files is located. Microsoft had legal issues with it and had to make IExplorer removable.

Would be nice to get Windbg working remotely so we could debug problems like that. I was working on it but I have been busy with other projects during the summer.
#5375diderius6I make an interesting discovery with my minixp.
You get BSOD 0x7B with an acpi-XP (halmacpi.dll together with ntkrpamp.exe and acpi.sys),
when for any reason the acpi.sys driver is not loaded
Dietmar

As you can see on the pic, the driver iastor.sys for the harddisk is loaded but acpi.sys is missed.
So you need an entry in registry for acpi.sys.

EDIT: Yeppp, this was the very first time, that I succeed to switch direct on 1 XP installation,
via edit only HKLM\SYSTEM\ControlSet001 and
change hal.dll, ntoskrnl.exe => halmapic.dll, ntkrpamp.exe, acpi.sys

with result of a working

"Standard PC" => "Multiprocessor Acpi PC"

EDIT2: For this minixp with unmodified acpi.sys happens no BSOD A5 (acpi related). This is interesting.



#5376diderius6minixp "Standard PC" bootlog

Service Pack 110 14 2020 16:23:21.500
Loaded driver \WINDOWS\system32\ntoskrnl.exe
Loaded driver \WINDOWS\system32\hal.dll
Loaded driver \WINDOWS\system32\KDCOM.DLL
Loaded driver \WINDOWS\system32\BOOTVID.dll
Loaded driver pci.sys
Loaded driver isapnp.sys
Loaded driver MountMgr.sys
Loaded driver ftdisk.sys
Loaded driver \WINDOWS\System32\DRIVERS\WMILIB.SYS
Loaded driver PartMgr.sys
Loaded driver iaStor.sys
Loaded driver disk.sys
Loaded driver \WINDOWS\System32\DRIVERS\CLASSPNP.SYS
Loaded driver KSecDD.sys
Loaded driver Ntfs.sys
Loaded driver \SystemRoot\System32\DRIVERS\swenum.sys
Loaded driver \SystemRoot\System32\DRIVERS\i8042prt.sys
Loaded driver \SystemRoot\System32\DRIVERS\kbdclass.sys
Loaded driver \SystemRoot\System32\Drivers\Fs_Rec.SYS
Loaded driver \SystemRoot\System32\drivers\vga.sys
Loaded driver \SystemRoot\System32\Drivers\Npfs.SYS


minixp "ACPI Multiprocessor" bootlog

Service Pack 110 14 2020 15:30:09.093
Loaded driver \WINDOWS\system32\ntoskrnl.exe
Loaded driver \WINDOWS\system32\hal.dll
Loaded driver \WINDOWS\system32\KDCOM.DLL
Loaded driver \WINDOWS\system32\BOOTVID.dll
Loaded driver ACPI.sys
Loaded driver \WINDOWS\System32\DRIVERS\WMILIB.SYS
Loaded driver pci.sys
Loaded driver isapnp.sys
Loaded driver MountMgr.sys
Loaded driver ftdisk.sys
Loaded driver PartMgr.sys
Loaded driver iaStor.sys
Loaded driver disk.sys
Loaded driver \WINDOWS\System32\DRIVERS\CLASSPNP.SYS
Loaded driver KSecDD.sys
Loaded driver Ntfs.sys
Loaded driver \SystemRoot\System32\DRIVERS\i8042prt.sys
Loaded driver \SystemRoot\System32\DRIVERS\kbdclass.sys
Loaded driver \SystemRoot\System32\DRIVERS\swenum.sys
Loaded driver \SystemRoot\System32\Drivers\Fs_Rec.SYS
Loaded driver \SystemRoot\System32\drivers\vga.sys
Loaded driver \SystemRoot\System32\Drivers\Npfs.SYS
#5377RayeRYes it's logical as ACPI is the root enumerator if you select ACPI compatible PC it then loads other buses drivers.
#5378diderius6⇗ @Gelip ⇗ @skullteria

Do you have real Windows XP Embedded SP1 at Beta archive?
I mean not the normal XP Embedded.
There has been a Windows XP Embedded that works with the real files from XP SP1,
without any fba.exe

Dietmar
#5379ruthanBTW what is target of these source codes experiments?
1) Of course it could help to understand how XP works, to fix some problems and add some functionality, but what else?
2) Its there big difference between SP1 and SP3, do you thing that you can use some enhanced SP1 files and make them run with SP3, without big flaws?
3) Its there any chance just make this SP1 build more advanced and compatible than SP3, its too much work?

 Im asking because lots of apps are simply requiring some SP2 or SP3 installed, im sure that you could somehow to bypass that, but maybe these SPx really adding some important functionality not mostly some security fixes.. but never studied it in deep?
#5380diderius6⇗ @ruthan

The most important is to have an acpi.sys for any compi using XP SP3.
And here we have a good chance, because acpi.sys from XP SP1 can boot XP SP3 and shows very similar behavior.
And the Source Code for acpi.sys is complete.
Dietmar

PS: And yes, very interesting to know, how XP in detail works.
#5381789
Zitat von ⇗ diderius6 im Beitrag ¶ #5380
an acpi.sys for any compi using XP SP3.

Do you mean there might be hope for 2003 beyond Haswell ?
#5382diderius6⇗ @789

Do you mean Win2003?
I remember, that Windows Embedded for XP uses the acpi.sys from Win2003.
So, until now Win2003 should run on nearly any newer compi with modded acpi.sys outerspace ) from XP SP3
Dietmar
#5383diderius6I succeed to build an Multiprocessor ACPI XP SP1 from the Source files and storahci from fernando,
with real winlogon.exe and a size of about 70 MB.
Now comes the most strange thing, which is so interesting to take a deeper look on.
On the first boot with the acpi.sys build from Source I get NO BSOD.
But when I reboot it again, I get Bsod A5 (0x11) acpi related
Dietmar

EDIT: This behavior is reproducible. This happens in registry. When I replace registry (whole folder config) after A5 BSOD with the original registry,
no Bsod A5 happens. It looks, like registry has a memory for Bsods. System.log is nearly empty after 1. start with original acpi.sys and gives Bsod on reboot. And the most crazy thing is: After this Bsod A5 (11) even the acpi.sys from outerspace )
gives the same Bsod. Just like memory for Bsod in registry.

Service Pack 110 15 2020 12:49:57.093
Loaded driver \WINDOWS\system32\ntoskrnl.exe
Loaded driver \WINDOWS\system32\hal.dll
Loaded driver \WINDOWS\system32\KDCOM.DLL
Loaded driver \WINDOWS\system32\BOOTVID.dll
Loaded driver ACPI.sys
Loaded driver \WINDOWS\System32\DRIVERS\WMILIB.SYS
Loaded driver pci.sys
Loaded driver isapnp.sys
Loaded driver MountMgr.sys
Loaded driver ftdisk.sys
Loaded driver PartMgr.sys
Loaded driver iaStor.sys
Loaded driver disk.sys
Loaded driver \WINDOWS\System32\DRIVERS\CLASSPNP.SYS
Loaded driver KSecDD.sys
Loaded driver Ntfs.sys
Loaded driver NDIS.sys
Loaded driver Mup.sys
Loaded driver \SystemRoot\System32\DRIVERS\i8042prt.sys
Loaded driver \SystemRoot\System32\DRIVERS\kbdclass.sys
Loaded driver \SystemRoot\System32\DRIVERS\swenum.sys
Loaded driver \SystemRoot\System32\DRIVERS\update.sys
Loaded driver \SystemRoot\System32\Drivers\Fs_Rec.SYS
Loaded driver \SystemRoot\System32\drivers\vga.sys
Loaded driver \SystemRoot\System32\Drivers\Msfs.SYS
Loaded driver \SystemRoot\System32\Drivers\Npfs.SYS
Loaded driver \SystemRoot\System32\DRIVERS\rdbss.sys
Loaded driver \SystemRoot\System32\DRIVERS\mrxsmb.sys


#5384diderius6I make a test, if one of the new drivers (see bootlog)
can make this Bsod A5 (0x11).
But I come also to dektop via real winlogon without them,
meaning the same driver list as with minixp.
And the strange behavior of 1 time possible boot with normal acpi.sys stays.
So, this Bsod A5 (0x11) is not related to the new *.sys drivers (I check, that none of them is loaded) but
for full winlogon and its dlls.

This Bsod I do not understand at all, because it means, that a Bsod can happen driver independend
Dietmar

PS: When I change back full winlogon against the renamed minlogon from Windows Embedded, this Acpi Bsod A5 0x11 is gone.

But I get Bsod C000021A with the remaining extra dlls needed for full winlogon.

STOP: 0xC000021A

Cause
This error occurs when a user-mode subsystem, such as WinLogon or the Client Server Run-Time Subsystem (CSRSS), has been fatally compromised and security can no longer be guaranteed. In response, the operating system switches to kernel mode. Microsoft Windows cannot run without WinLogon or CSRSS. Therefore, this is one of the few cases where the failure of a user-mode service can shut down the system.
#5385gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #5384
I make a test, if one of the new drivers (see bootlog)
can make this Bsod A5 (0x11).
⇗ @diderius6 ...this may help...or not.

⇗ https://docs.microsoft.com/en-us/windows-hardware/drivers/debugger/bug-check-0xa5--acpi-bios-error

 

Page 360

#5386diderius6Yesssssa,
I just build a fresh acpi.sys from sources
which will NEVER show again Bsod A5 (0x11,0x8,..).
And the very best is:
I have a XP, which shows exact this error before
and with this brandnew acpi.sys this is gone(!), means
boots normal, waaaoh, we see light at the end of the tunnel with Bsod A5
Dietmar

⇗ https://ufile.io/72r8ilvh

and the next (better) acpi.sys
⇗ https://ufile.io/hsjutifo
#5387diderius6In C:\NT\base\busdrv\acpi\driver\shared

acpiinit.c

//
   // Now call the Interpreter to read the Differentiated System
   // Description Block and build the ACPI Name Space.
   //
   status = AMLILoadDDB( table, &diffDataBlock );
   if (NT_SUCCESS(status) ) {

       //
       // Remember that we have loaded this table and that we have a
       // handle to it
       //
       RsdtInformation->Tables[Index].Flags |= RSDTELEMENT_LOADED;
       RsdtInformation->Tables[Index].Handle = diffDataBlock;

   } else {

       ACPIPrint( (
           ACPI_PRINT_CRITICAL,
           "ACPIInitializeDDB: AMLILoadDDB failed 0x%8x\n",
           status
           ) );
       ASSERTMSG(
           "ACPIInitializeDDB: AMLILoadDDB failed to load DDB\n",
           0
           );

       KeBugCheckEx(
           ACPI_BIOS_ERROR,
           ACPI_SYSTEM_CANNOT_START_ACPI,
           8,
           (ULONG_PTR) table,
           table->Header.CreatorRev
           );

   }
   return STATUS_SUCCESS;
}


=>

   //
   // Now call the Interpreter to read the Differentiated System
   // Description Block and build the ACPI Name Space.
   //
   status = AMLILoadDDB( table, &diffDataBlock );
   if (NT_SUCCESS(status) ) {

       //
       // Remember that we have loaded this table and that we have a
       // handle to it
       //
       RsdtInformation->Tables[Index].Flags |= RSDTELEMENT_LOADED;
       RsdtInformation->Tables[Index].Handle = diffDataBlock;

   } else {

      RsdtInformation->Tables[Index].Flags |= RSDTELEMENT_LOADED;
      RsdtInformation->Tables[Index].Handle = diffDataBlock;


   }
   return STATUS_SUCCESS;
}
#5388gordo999⇗ @diderius6 ...a bit of research revealed that the RSDT table has pointers to other tables. One of them is the Debug Port Table 2 (DBG2). If you have the time, could you look to see if there is a pointer to the Debug Port Table?

I have been unable to get a remote debugging connection using the acpi from outer space? I will work on this myself but I have a long learning curve ahead of me.

Thanks for your effort on this.
#5389diderius6⇗ @gordo999
In the Source for acpi is no pointer to the DBG2 table,
so this table seems not direct related to acpi. In the RSDT table itself I dont find a pointer to DBG2.
But a search for the string DBG2 shows its appearance
at a lot of other places, see picture, for example in cdebug.cpp
Dietmar

#5390kukonosau⇗ @diderius6
Hi! Why Windows Vista x64 different BSOD crash randomally? My configuration: CPU AMD Ryzen 5 2600, motherboards ASUS B350M-K, GPU GTX 960, 16 Gb RAM in 2 slots 8 Gb. BIOS Update to actually version doesn't help me. I see often 0x0000000A and 0x0000019 errors. I see often IRL_NOT_LESS_OR_EQUAL or BAD_POOL_CALLER or BAD_POOL_HEADER. Why? ACPI is not compatible? Platform updates Vista doesn't help also. I tried disable LAN Controller and HD Audio Controller in BIOS, but this is not help me also.

And why Windows 7 x64 is lagging? Windows 7 has not BSOD, but games (for example, GTA V) lagging, however FPS is highest than Windows 10 often. Windows Vista has many BSOD, but games very well working, opportunately. I don't sure in 100 per cents. Windows XP x86 thanks to your drivers generally working normally. Why? BIOS ASUS specially limit perfomance old operating systems? If buy analog motherboards from GIGABYTE then system will working normally, probably?

What happen? Where is problem? I must be buy motherboards with socket AM3+ for old operating systems? Can you help me, please? Wait answers...
#5391diderius6⇗ @kukonosau

The US army uses XP SP3. I think that this is the reason why it is much more stable than newer OS.
XP64 is much more unstable.
Because acpi.sys seems to be compatible through all Win OS,
today I make a try with acpi.sys from win8.1 under XP
Dietmar
#5392kukonosau⇗ @diderius6
Problem with acpi? I don't mistake? Win7 acpi don't compatible also? I forget check Win8.1 in all games. But Mafia: Definitive Edition in Win8.1 working properly. Why Win7 working incorrectly in games, but Vista correctly? However, Win7 hasn't BSOD, but Vista has many BSOD. Win10 also check disks after install Win7 or Vista. But if install your modify XP with Patch Integrator then Win10 willn't checking disks.
#5393kukonosau⇗ @diderius6
Why Vista crash randomally in Ryzen? From acpi? Do you have crash Vista or it is working properly?
#5394diderius6⇗ @kukonosau
Vista was for me only like a game. I succeed to boot it from USB and to put it on a Fat32 partition.
That was enough. And about Win7: I compare Skype on XP via Win7 in 2009. Oha, this was the last time that I had an daily installation with win7. A little bit I like win 8.1. And from win10 I like, that I can install it together with XP on my Thinkpad x230 Lenovo notebook. In my eyes there has been no advantage in OS since XP SP1. Take a look at the search function and you will agree with me at once
Dietmar

PS: Vista is something like a bad clone from winserver 2003 with new driver model. For what I need this?
On my compi with x58 chipset I have not seen a single bluescreen for years. So I use this machine with harddisk for compiling.
With SSD I get errors but with harddisk not. SSD are soso much bad for safe data, USB sticks also.
#5395diderius6In acpi.sys from win8.1 32 bit there are

51 missing functions in ntoskrnl in XP SP3
6 missing functions in hal.dll in XP SP3.

I checked this via Dependency Walker for acpi.sys vers. 6.3.9600.18939 (winblue_ltsb.180210-0600)
and acpi.sys version 6.3.9600.17393 (winblue_r4.141006-1627)

Dietmar
#5396RayeRI just try to replace acpi.sys in my WinXP SP3 by one that I compiled from W2k3 sources (without any modification, just recompiled). The system booted normally, no errors in event log but I quickly found that my CPU (i7-2600K) is heating a lot, about 70C like in full load but real CPU load was 0-1%. When I swapped acpi.sys back to my SP3 version and rebooted the temparature dropped back to normal 35C for idle load. So there must be some compatability problem between them...

EDIT I could try your fresh builds...

BTW where are printed debug messages by ACPIPrint() function? Can be seen via serial line WinDbg?
#5397diderius6⇗ @RayeR

This may be a problem because cpu always runs in C0 state.
Change intelppm.sys against modified one
Dietmar
#5398RayeRYes, same behavior with your ACPI.SYS
Where can I find the modified INTELPPM.SYS please?
BTW my SP3 version is 5.1.2600.5512 and same for INTELPPM.SYS
#5399diderius6⇗ https://ufile.io/8zdzlh8v
#5400Andalu
Zitat von ⇗ diderius6 im Beitrag ¶ #5386
Yesssssa,
I just build a fresh acpi.sys from sources
which will NEVER show again Bsod A5 (0x11,0x8,..).
And the very best is:
I have a XP, which shows exact this error before
and with this brandnew acpi.sys this is gone(!), means
boots normal, waaaoh, we see light at the end of the tunnel with Bsod A5
Dietmar

I tried to install the Integral Edition 2020.9.9 ISO with your "acpiDBBhackbetter" on my crazy Asrock H310M-HDV but I still got the A5 BSOD even if with a different code (0x03,0x8,0xC,0x4). Same BSOD with a working XP disk drive from another motherboard (Q370).


P.S.: do you have the possibility to choose a different hosting site, please? Sorry to point this out but Ufile is really a hassle, it requires to solve the reCaptcha even to download a few bytes. Also to log in here another reCaptcha to solve and other waste of time.

 

Page 361

#5401infuscomus⇗ @Andalu

UFile has a reCaptcha? I've never seen it - not sure why you get it.
#5402Andalu
Zitat von ⇗ infuscomus im Beitrag ¶ #5401
@Andalu

UFile has a reCaptcha? I've never seen it - not sure why you get it.

take a look:



Downloading on that site is not possible without allowing these requests:
#5403diderius6⇗ @Andalu
With Firefox Browser and XP SP3 I dont see any Captcha on ufile.io
Dietmar
#5404Andalu
Zitat von ⇗ diderius6 im Beitrag ¶ #5403
@Andalu
With Firefox Browser and XP SP3 I dont see any Captcha on ufile.io
Dietmar

The updated image I posted is from Firefox and XPSP3.

However, beyond the reCaptcha, to download from that site is mandatory allow requests also from google otherwise it is not possible. Anyone can verify it for himself.
I just wanted to report this without any other intention.
#5405RayeR
Zitat von ⇗ diderius6 im Beitrag ¶ #5399
https://ufile.io/8zdzlh8v


Thanks, but when I replaced only ACPI.SYS and INTELPPM.SYS my CPU is still running hot. When I replaced also HAL.DLL from the package I got BSOD
STOP: 0xA, (0, 2, 1, 0x80522848)
#5406diderius6Hi,
after talk with ⇗ @daniel_k I understand,
what I have to do to make acpi.sys from outerspace ) also immun against BSOD
0x000000A5 (0x00002001,1,xx,yy)
Dietmar

PS: It is really crazy: The Source Code from XP SP1 in acpiosnt.c told me, that for XP it is unimportant
if the OS gives a hint, if it is PIC model or APIC model. XP looks ONLY, if the model is there..

Now I do not have a single board or notebook left, where I cant install full acpi XP.
In this moment I am installing XP SP3 on the crazy Lenovo Ideapad Flex 10.
Win7 cant be installed there, BUT XP SP3 ..

⇗ https://ufile.io/nr34td75
#5407gordo999
Zitat von ⇗ kukonosau im Beitrag ¶ #5390
I see often 0x0000000A and 0x0000019 errors. I see often IRL_NOT_LESS_OR_EQUAL or BAD_POOL_CALLER or BAD_POOL_HEADER. Why? ACPI is not compatible?
⇗ @kukonosau ...the error 0x19 is related to the IRL_NOT_LESS_OR_EQUAL or BAD_POOL_CALLER or BAD_POOL_HEADER errors. You may have problems with your RAM memory boards. I think that because your system runs OK with Win x86 but not with Win x64.

Try running the memory board one at a time with each board in the first slot. I presume you have installed the boards correctly as per the B350M manual. An 8 Gb memory card should be enough to run both x86 and x64 well enough so games don't lag. Also, make sure the memory cards are properly inserted. While you have the cards out of the socket, look at the contacts to make sure they are clean and use 99% isopropyl alcohol to clean the contacts. Don't use anything less than 99% since that type has water in it and you don't want water on the contacts.

Have you run a memory diagnostic? Sometimes a faulty memory card won't show up with just a few runs, you need to run the test repeatedly for a long time. Even then, the best way is to use a known good memory card. If you insert them one at a time, it's not likely that both cards are bad. I have found the problem is usually the cards not being inserted properly. Just removing them and re-inserting them often works well.

The 0xA error can be related to a bad memory card or to a card not inserted properly. Or it could be related to a bad driver or hardware device. It could be caused by the wrong ntoskrnl.
#5408gordo999
Zitat von ⇗ Andalu im Beitrag ¶ #5400
P.S.: do you have the possibility to choose a different hosting site, please? Sorry to point this out but Ufile is really a hassle, it requires to solve the reCaptcha even to download a few bytes. Also to log in here another reCaptcha to solve and other waste of time.
⇗ @Andalu ...I get a captcha error message but it claims it cannot contact the captcha site. The file downloads OK however. Are you running an app that could be blocking Captcha?

I am running NoScript and AdBlock on Firefox. Sometimes I have to 'Allow' certain sites on NoScript and turn of AdBlock. I know there have been problems with Captcha due to sites running the wrong version.
#5409infuscomus
Zitat von ⇗ diderius6 im Beitrag ¶ #5406

In this moment I am installing XP SP3 on the crazy Lenovo Ideapad Flex 10.
Win7 cant be installed there, BUT XP SP3 ..

⇗ https://ufile.io/nr34td75


I will try this acpi.sys on my threadripper system.

edit: No good, still stuck at "Setup is Starting Windows"
#5410Andalu
Zitat von ⇗ gordo999 im Beitrag ¶ #5408
@Andalu ...I get a captcha error message but it claims it cannot contact the captcha site. The file downloads OK however. Are you running an app that could be blocking Captcha?

I am running NoScript and AdBlock on Firefox. Sometimes I have to 'Allow' certain sites on NoScript and turn of AdBlock. I know there have been problems with Captcha due to sites running the wrong version.


My problem is that the reCaptcha is required too many times on Ufile.io.
I have already listed the requests necessary to download a file for that site, now I try to explain better:
from the main page of any ufile link, to access the download function, you must first authorize the scripts from 'ufile.io' to 'ajaxgoogleapis.com' and then, to activate the real "download" function for the related button, you must authorize the scripts to the reCaptcha site (google.com and gstatic.com) even if it won't be displayed anymore.

So, even if the reCaptcha is not displayed or requested, it was still necessary to allow the scripts from ufile.io to the reCaptcha site, otherwise the download became impossible to enable. It can be easily verified with NoScript or other similar FF add-ons.
#5411infuscomus⇗ @Andalu

on mine I have

ublock origin 1.30.4
popup blocker ultimate 11.1.0

maybe popup blocker blocks the captchas?
#5412infuscomus⇗ @diderius6

Unrelated to ACPI
it seems that win2k3 supports accessing larger than 2tb disks - and the import tables match XP.



infuscomus has attached files to this post
#5413diderius6⇗ @infuscomus

I use the files in XP SP3,
but my 4 TB harddisk on a Sata port cant work under XP. It is even only recogniced on the Intel Sataport, the asmedia Sata port ignores this 4 TB harddisk complete.
Have you seen a report, that winserver 2003 Bit 32 can work and boot from harddisks >2TB?
Somebody told me, that you can fake an installed winserver 2003 as XP, but I never tested or tried.
I know, that the Kernel is different. But with the leaked sources you can see, that you also can build a XP 3790.
Interesting, if all drivers from XP work there also and if this XP 3790 with disk.sys from win2003 can work with more than
2 TB harddisk
Dietmar
#5414Andalu
Zitat von ⇗ infuscomus im Beitrag ¶ #5411
@Andalu

on mine I have

ublock origin 1.30.4
popup blocker ultimate 11.1.0

maybe popup blocker blocks the captchas?

I don't think it depends on the ad-blocker. Even to log in here you have to solve the reCaptcha so the ad-blocker should block it here too but I believe that hardly happens, or am I wrong?

I just tried two times to download from ufile: the first time the reCaptcha did not appear and the second time it was displayed. It happened within a few seconds from one attempt to the next without changing anything.
This script/XHR (⇗ https://ufile.io/ajax/generate_download/) needed to allow for downloading from ufile.io contains this message:  "Please complete the reCAPTCHA field to proceed"
#5415infuscomus⇗ @Andalu

I see on my system the captcha tries to load in the bottom left of my screen, but something blocks it and then the download starts as normal.

does installing popup blocker make a difference?

 

Page 362

#5416Andalu⇗ @infuscomus
nothing changes even with Popup Blocker Ultimate 8.1 (last version FF 52 compatible).
As said before, it's not a pop-up but a script.
Are you sure that on the bottom left of the screen Popup Blocker Ultimate blocks the reCaptcha and not the little window referring to privacy terms as is displayed in the image I posted above?
#5417infuscomus⇗ @Andalu

I can see the Captcha if I turn off ublock origin.

maybe it's because you're on on old firefox version - try basilisk browser, works with XP.
#5418AndaluI still got the reCaptcha, even if once on three attempts:

#5419infuscomus⇗ @Andalu

which site would you prefer we use to upload files?
#5420Andalu⇗ @infuscomus
I can't recommend any specific file hosting site as I rarely upload. In general, you might prefer some site that does not require mandatory linking to external sites to download (or at least that can be blocked with browser add-ons). I still don't understand why ufile requires to allow a mandatory connection to ajaxgoogleapis.com (maybe for geolocation?).
Much better without the reCaptcha that unfortunately was also introduced in this forum to simply log in. Today I logged in more than 4 times and I had to solve at least 20 reCaptcha
#5421gordo999⇗ @Andalu ....I should have mentioned that I was using Windows 7 when I downloaded from ufile.
#5422YuriyCN
Zitat von ⇗ infuscomus im Beitrag ¶ #5417
@Andalu

I can see the Captcha if I turn off ublock origin.

maybe it's because you're on on old firefox version - try basilisk browser, works with XP.


RUSSIAN. Browsers for Windows XP

Браузеры для Windows XP:

1) Браузер 360ЕЕ (аналог Google Chrome) - собран на 69 и 78 версии Хрома. 360ЕЕ прекрасно работает на ХР, а штатный Хром для ХР закончился на 49 версии. Описание - ⇗ http://forum.ru-board.com/topic.cgi?foru...73&start=1380#7
Скачать - ⇗ https://yadi.sk/d/U-_l7A5LmbARhA



2) Браузер Basilisk v55 ru-xpmod (аналог FireFox) - по количеству настроек превысит 360ЕЕ, имеет большой набор предустанновленных плагинов, в том числе для резки рекламы, встроен TOR анонимайзер.
Скачать - ⇗ https://yadi.sk/d/HtCypk9HO_H1cw



3) Браузер TOR - браузер на основе FireFox, предназначенный для анонимной работы в сети. Новые версии WinXP не поддерживают. Последняя версия с поддержкой WinXP версия 7.5.6.
Скачать - ⇗ https://yadi.sk/d/UGGKCzNJDEFvIg

Модернизированная версия TOR - браузера на основе последней версии (обновлены внутренние компоненты, добавлена поддержка нод 3-й версии).
Скачать - ⇗ https://www.upload.ee/files/12349986/TB756_ru_0445.ZIP.html



4) Opera v12.18_45 - неофициальная портативная сборка последней классической версии браузера Opera, с исправлениями для корректного отображения сайтов.
Скачать - ⇗ https://www.upload.ee/files/12359701/Ope....18_45.zip.html



5) Прочие браузеры.
Форумчанин rodocop напомнил о целом семействе актуальных браузеров для Windows ХР на движке Goanna.
MyPal - ⇗ https://github.com/Feodor2/Mypal
Centaury - ⇗ https://github.com/Feodor2/Centaury/releases от Feodor'a,
и россыпь сборок roytam'a:
NewMoon - ⇗ https://o.rths.ml/palemoon/palemoon-28.1...cac52b-xpmod.7z
Basilisk - ⇗ https://o.rths.ml/basilisk/basilisk52-g4...cac52b-xpmod.7z
IceApe - ⇗ https://o.rths.ml/hbl-uxp/iceape.win32-2...cac52b-xpmod.7z
Borealis - ⇗ https://yadi.sk/d/e9i4Uzz56le-cQ
А также его любимый Vasilisque - ⇗ https://yadi.sk/d/s8w31JCslJ5vbw и еще более любимый (да, на устаревающем движке, но зато самый легкий из всех приведенных) K-Meleon - ⇗ https://yadi.sk/d/IUdnrsBfsMAzrA
3 последних русифицированы комрадом vikmin (с просторов браузерного рунета) при скромном участии rodocop, и, наряду с MyPal, подготовлены для портабельного использования.
Рекомендация от vikmin - Vasilisque+v.0.13.0-ru-RU Portable_x32 (Кастом-сборка на базе Centaury 0.13.0) - ⇗ https://www.upload.ee/files/12402914/Vas...0-ru-RU.7z.html
#5423Andalu
Zitat von ⇗ diderius6 im Beitrag ¶ #5406
Now I do not have a single board or notebook left, where I cant install full acpi XP.

In case you want to find the first board for which, at the moment, it is not possible to install or run XP without any problem, I could suggest you to try with an asrock H310M-HDV
#5424diderius6⇗ @Andalu

Which Bsod do you see on the asrock H310M-HDV,
when you install XP with the acpi.sys from outerspace ) ?
Dietmar
#5425Andalu⇗ @diderius6
here the BSOD with acpi.sys from outerspace:
0x000000A5 (0x0000000D, 0x8A30B818, 0x4449555F, 0X00000000)

here the BSOD with acpiOuterspace2001fit:
0x000000A5 (0x0000000D, 0x8A2A41C8, 0x4449555F, 0X00000000)
#5426diderius6⇗ @Andalu

Oh, I think this Bsod I solved long time ago here in this forum with special acpi.sys for geniautravail (or similar^^)
Dietmar
#5427diderius6Hi,
I noticed, that the search function here in the forum gives only results, which are not older than about a month.
Is there a special setting in search, that it searches everywhere and for all time
Dietmar
#5428Andalu⇗ @diderius6
I think to have already tried all yours acpi.sys versions.
No one of them has worked with my crazy board unless I downgrade the bios to the first released version as reported ¶ here
#5429diderius6⇗ @Andalu

Look for special acpi.sys here in the forum for this BSOD,
I have done this for 0x000000A5 (0x0000000D Bsod
Dietmar

⇗ https://ufile.io/griun32t
#5430Andalu⇗ @diderius6
thanks but its hash value is already listed in my acpi.sys archive
I tried however to copy it on a XP working hard drive but without success: 0x0A bsod

 

Page 363

#5431diderius6⇗ @Andalu

Please tell me, what the exact Bsod with this acpi.sys is
Dietmar
#5432Andalu⇗ @diderius6
just tried with the Integral Edition iso (only with acpi and sata-ahci drivers) and it seemed to work but i got the irq_not_less_or_equal error on the gui setup
text mode correctly completed
error code: 0x0000000A (0x000000B0, 0x00000002, 0x00000000, 0x804F5B33) occurred during the devices installation after the license agreement window.
#5433diderius6⇗ @Andalu

Make a try with an older version, around this (XP from 5 Mai version)

winxp-ie-optional-patch-integrator-v2.3.3b14

and chose the storport driver
Dietmar
#5434Andalu⇗ @diderius6
about storport.sys I assume you're referring to the nvme driver
#5435Andalu⇗ @diderius6
iso from WinXP-IE 2020.5.5 patch integrator v2.3.3b14 (nvme, acpi, sata-ahci and USB3 drivers included):
on usb3 port: system hangs on "setup is starting windows"
on usb2 port: 0xDEADBEEF  bsod

iso from WinXP-IE 2020.5.5 patch integrator v2.3.3b14 (acpi, sata-ahci and USB3 drivers included):
on usb2 port: system hangs on "setup is starting windows"
on usb3 port: text mode completed - same irq_not_less_or_equal error as above on the gui mode
#5436diderius6⇗ @Andalu
No, just change the driver for your harddisk to old STORAHCI with storport from ⇗ @skullteria
Dietmar

PS:And boot from real CD, connected to a SATA port.
#5437Andalu
Zitat von ⇗ diderius6 im Beitrag ¶ #5436
@Andalu
No, just change the driver for your harddisk to old STORAHCI with storport from @skullteria
Dietmar

PS:And boot from real CD, connected to a SATA port.

To prepare an iso with the skullteria driver I must use an older patch integrator version because the v2.3.3b14 contains the storpor8.sys and I also have to find a cd to burn :)
#5438Andalu⇗ @diderius6
I just done an attempt to replace storahci.sys. storahci.inf, storport.sys (besides acpi.sys) with the skullteria version on a working XP disk: identical irql_not_less_or_equal error as before.
#5439diderius6⇗ @Andalu

Hit direct before GUI setup F8 and chose "Safe Mode".
This Bsod 0x0000000A (0x000000B0, 0x00000002, 0x00000000,
is a driver problem, not related to Acpi
Dietmar
#5440Mov AX, 0xDEAD
Zitat von ⇗ Andalu im Beitrag ¶ #5435
@diderius6
iso from WinXP-IE 2020.5.5 patch integrator v2.3.3b14 (nvme, acpi, sata-ahci and USB3 drivers included):
on usb3 port: system hangs on "setup is starting windows"
on usb2 port: 0xDEADBEEF  bsod


Hi Andalu

0xDEADBEEF is error of ntoskrnl_extender, it means it found some error when someone called it (ported usb3 driver), second code can tell more, i numerated it as 0,1,2,3 to define what procedure inside sources generated it
#5441Mov AX, 0xDEADHi,

1) For compiling acpi.sys i use little helper (first run "tools\razzle.cmd offline free" to setup environment variables)

 
set __BUILDMACHINE__=xpsp1
set BUILDDATE=020828-1920

rem set 386_OPTIMIZATION=/Og
rem set LINK_TIME_CODE_GENERATION=1

build /Zegbw



Generated acpi.sys fully match with acpi.sys from downloadable "winxp sp1 eng KBxxxxxx" (except debug/build timestamps). You can uncomment two REMs to enable compiler's global optimization (it works, but i never tested working state of final binary)


2) Comparing acpi.sys from SP1 and SP3 with BINDIFF (plugin for IDA) show me no difference, but only one thing is important - acpi.sys SP1 was compiled with /Oy optmization, SP3 with /Oy-, this mean SP1 dont use EBP register as frame base.
Basicaly on x86 we don't need frame pointer because ESP is enough for this purpose, but M$ in SP3 dont care about compiler flags :)

#5442Andalu
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #5440
Hi Andalu

0xDEADBEEF is error of ntoskrnl_extender, it means it found some error when someone called it (ported usb3 driver), second code can tell more, i numerated it as 0,1,2,3 to define what procedure inside sources generated it


Hi Mov
the error code on the gui mode setup is always the same and I got it always on the same point after the license agreement window during the "Installing Devices" step:
0x0000000A (0x000000B0, 0x00000002, 0x00000000, 0x804F5B33)
#5443Andalu
Zitat von ⇗ diderius6 im Beitrag ¶ #5439
@Andalu

Hit direct before GUI setup F8 and chose "Safe Mode".
This Bsod 0x0000000A (0x000000B0, 0x00000002, 0x00000000,
is a driver problem, not related to Acpi
Dietmar

No way to enter the safe mode, I got the following message:
"Windows XP Setup cannot run under safe mode. Setup will restart now"
#5444diderius6⇗ @Andalu

It is another driver, which makes this problem. This other driver writes in wrong memory.
So with F8, or working XP from other compi or with disabling nearly everything in Bios you can overcome this.
I have had the same message on the Asus A320M board
Dietmar
#5445diderius6⇗ @Andalu
Use an original XP SP3 from CD with wished integrated drivers
Dietmar

 

Page 364

#5446Andalu⇗ @diderius6
I added no other driver than acpi and sata-ahci in the ISO.
Even in bios all other devices are disabled.
#5447diderius6I just make a new acpi.sys on the base of ⇗ @daniel_k very last 5048 version against
BSOD 0x000000A5 (0x00002001,..)
Dietmar

⇗ https://ufile.io/6svkbsz6
#5448diderius6⇗ @Andalu

Make a try with original XP SP3 CD(!), only modded acpi.sys
and the STORAHCI driver with storport.sys from ⇗ @skullteria on it
Dietmar

PS: When you have another Ryzen board with working XP, make a try with this XP and the
SATA ⇗ @skullteria driver.
#5449Andalu⇗ @diderius6
on my crazy board is mounted a 9400F (without graphics) so using a working XP I have to enable safe mode with VGA support and even in this case I get the identical error.

I'll try your advices on the next hours, thanks ;)


Edit: please note that XP correctly installs on this board by downgrading the bios to the first release v1.20 (as reported ¶ here) so I can think that the issue is "bios-dependent".

P.S.: only intel boards here, unfortunately.
#5450diderius6⇗ @Andalu

Make a try with your own "F8".
Delete all drivers, that you dont need,
on the setup CD (dont forget to delete cache also) or on the driver folder after txt Setup on harddisk.
I have never tested this methode for Setup
but on a working XP I succeed with this to overcome crazy BSODs because of an unknown driver.
Even the driver is mentioned in registry,
via bootlog you can see, that nothing bad happens,
only the (unknown)bad driver is not loaded.
It is like to work with Windows Embedded, only vice versa
Dietmar

EDIT:
Edit: "please note that XP correctly installs on this board by downgrading the bios to the first release v1.20 (as reported here) so I can think that the issue is "bios-dependent".
Can you downgrade your Bios again? If yes, set up then there a fresh XP, update your Bios and do F8 boot with this XP from before.
#5451Andalu⇗ @diderius6
I can still make a new downgrade because I had not updated to the final version (4.20) but to the last downgradeable version (3.30).
#5452Andalu⇗ @diderius6
I first tried the way most simple :):
Bios downgraded to the older version (1.20) > XP installed with the ISO from Patch Integrator v2.3.3b14 (only acpi.sys and sata-ahci driver from reactOS) > installation completed without issues > system turned off before the first reboot  > updating bios to the v3.30 > system rebooted but working only in safe mode. In normal mode it restarts automatically just the XP logo appears. I also updated the vga driver but the result doesn't change.

Maybe I have to switch my two coffee lake CPUs, using the one with integrated vga on this board.
#5453diderius6⇗ @Andalu
"system rebooted but working only in safe mode"
Now you can delete/rename/disable any driver, that you dont need for boot.
Via this way you will find the driver, which gives BSOD
Dietmar

PS: In first place I think, it is one of the sata-drivers, which gives this Bsod.
And the real reason is bad new BIOS. You can compare the DSDT tables old Bios /new Bios.
#5454Andalu⇗ @diderius6
doesn't seem to be depending from the sata-ahci driver, I already tried almost of them but XP restarted in all attempts.
A weird thingh is that the USB2.0 Hub shows the exclamation point on each restart even if I correctly updated it before.
The USB3 XHCI works.

I'll make a new attempt on the next hours, now I have to take a time-out :)
thank you very much
#5455diderius6⇗ @Mov AX, 0xDEAD

So this means, we have the Source code for acpi.sys for XP SP3:)).

Very interesting tool BINDIFF. I look for such a tool but do not find.
Do you know how it works? Is it just looking, if for different inputs the output for two binaries
is always identic or is it more intelligent and tried to "understand" the Binaries?

Interesting is to compare hal.dll and ntoskrnl from XP SP1 and SP3.
hal.dll SP1 uses the old hardware clock but hal.dll SP3 not.
And even ntoskrnl from XP SP1 has a storport, this does not work together with storport from win2003
Dietmar
#5456Andalu⇗ @diderius6
I just tried the following operations:
- Bios downgraded once again to the version 1.20
- WinXP-IE 2020.5.5 installed with these options:



- Installation completed without issues but the USB mouse didn't work during GUI setup
- XP starts correctly but USB2 and USB3 don't work anyway (error code 10)
- Bios updated to the v3.30 and system restarted with same hard disk with no changes
- system restarts automatically when the XP logo appears
- XP works in safe mode only, below the Device Manager:



Maybe I have the craziest board around?
#5457diderius6⇗ @Andalu

Make a new try without the UASP driver
Dietmar
#5458Andalu⇗ @diderius6
just tried installing an XP-IE iso with acpi and sata drivers only, nothing changes. Below an image from the bios version 1.20 (older):



At moment, I have to alternatively switch between keyboard and usb mouse (+adapter) on the only PS/2 port existing.

This time upgrading to the bios version 3.3 the system restarts automatically even in safe mode
#5459diderius6⇗ @Andalu

When you succeed to start in Safe Mode, disable everything in Device Manager.
It is an driver which makes Bsod, a driver which is only loaded in normal mode.
Still I think about problems with the Sata driver

Dietmar
#5460Andalu⇗ @diderius6
I disabled almost all (perhaps even the required ) as from the images below:

   


and also the most obvious thing I had forgotten ("automatically restart" on the system failure) so I can report the irq_not_less_or_equal error code:
0x0000000A (0xB0, 0x02, 0x00, 0x804F5B33) that I got in all attempts made, until now, with the following sata-ahci drivers:

   

 

Page 365

#5461Mov AX, 0xDEAD
Zitat von ⇗ Andalu im Beitrag ¶ #5442

Hi Mov
the error code on the gui mode setup is always the same and I got it always on the same point after the license agreement window during the "Installing Devices" step:
0x0000000A (0x000000B0, 0x00000002, 0x00000000, 0x804F5B33)


No, i talk about your second error 0xdeadbeef(x,y,z,a)
0x0000000A generated outside of acpi.sys
#5462Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #5455
@Mov AX, 0xDEAD
So this means, we have the Source code for acpi.sys for XP SP3:)).

Very interesting tool BINDIFF. I look for such a tool but do not find.
Do you know how it works? Is it just looking, if for different inputs the output for two binaries
is always identic or is it more intelligent and tried to "understand" the Binaries?


⇗ @diderius6
Yes, probably sp1 sources is same as sp3, but w2003 acpi sources has little difference and look better(i think bugfixes ), OS list inside acpi.sys
 
WinXP SP1                                                            Windows 2001 SP1
WinXP SP2 Windows 2001 SP2 Windows 2001 SP1
WinXP SP3 Windows 2001 SP2 Windows 2001 SP1
W2003 RTM Windows 2001.1 Windows 2001 SP1
W2003 SP2 Windows 2001.1 SP1 Windows 2001 SP2 Windows 2001.1 Windows 2001 SP1


same in sources:

 
WinXP  SP1                                                            Windows 2001 SP1
W2003 Windows 2001.1 Windows 2001 SP1


this mean M$ not added "Windows 2001.1 (W2003)" to any XP's apci.sys, but added "WinXP SP2" to W2003 SP2 binary

BINDIFF is very smart, it compare "flow" and "blocks", not registers or other primitive  differencies

Zitat

Interesting is to compare hal.dll and ntoskrnl from XP SP1 and SP3.
hal.dll SP1 uses the old hardware clock but hal.dll SP3 not.
And even ntoskrnl from XP SP1 has a storport, this does not work together with storport from win2003


hal maybe different because MS killed DMA above 4G in hal.dll sp2+
ntoskrnl sp3 has more exportable funcs compared to sp0 or sp1

#5463diderius6⇗ @Mov AX, 0xDEAD

Some time ago I noticed,
that Windows Embedded uses the acpi.sys from Win2003.
Question in this is, what changed and where is advantage.
acpi.sys from Win2003 is more similar to acpi.sys from Vista.

When you build an 3790 XP, work all drivers from XP SP3 there
Dietmar


Dietmar
#5464Andalu
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #5461
No, i talk about your second error 0xdeadbeef(x,y,z,a)
0x0000000A generated outside of acpi.sys

Here the complete error code I got when I try to install a Win-XP Integral Edition 2020.5.5 iso via usb stick connected to a usb2 port:
0xDEADBEEF (0x00000002, 0x8A226B18, 0x8A339858, 0x00000000)
#5465diderius6Hi,
somebody here who knows,
what this line means for the Sata device in Bios in DSDT?
Is Osel some kind of Operation System selector?
Dietmar

Device (SATA)
       {
           Name (_ADR, 0x00130000)  // _ADR: Address
           OperationRegion (SATR, PCI_Config, 0x74, 0x04)
           Field (SATR, WordAcc, NoLock, Preserve)
           {
               Offset (0x01),
               PMEE,   1,
                   ,   6,
               PMES,   1
           }

           Method (_STA, 0, NotSerialized)  // _STA: Status
           {
               If ((OSEL == 0x02))
               {
                   Sleep (0xC8)
               }


               Return (0x0F)
           }

           Method (_DSW, 3, NotSerialized)  // _DSW: Device Sleep Wake
           {
           }
}
#5466diderius6⇗ @Andalu

See my post

¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (200)

There it was for sure the Sata driver with exact the same behavior as yours
Dietmar
#5467daniel_k⇗ @diderius6, what is the chipset of your laptop?
Need to check datasheet

OSEL can be found in OperationRegion (GNVS, SystemMemory, 0xFFFF0000, 0xAA55) section, memory mapped registers (?!) where chipset configuration is stored.

Can you find OSEL variable in other tables? May be related to OS version.
Is really suspicious, if OSEL = 0x2, _STA (status) sleeps for 0xC8 (200 ms), way above 1.76 ms timeout value that SATA specs says.

Your DSDT has some stupid multiple OS checks.

OS version is stored in many variables:

1) stored in OSVR var
If (_OSI ("Windows 2001 SP3")) -> does NOT exist in ACPI.SYS, useless!
{
Store (0x04, OSVR)
}
2) Direct check against _OSI method:
If (LOr (_OSI ("Windows 2006"), _OSI ("Windows 2009"))) {}
3) stored in OSYS var
If (_OSI ("Windows 2001 SP2"))
{
Store (0x07D2, OSYS)
}
Search for OSYS, OSVR and (_OSI ("Windows... to find where an OS check is being performed.
#5468daniel_k
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #5462
Yes, probably sp1 sources is same as sp3

MS must have changed something, as my system hangs when using acpi.sys from SP1 (original SP1 or compiled from leaked sources) on an SP3 install disc.
#5469gordo999
Zitat von ⇗ Andalu im Beitrag ¶ #5454
... I already tried almost of them but XP restarted in all attempts.
⇗ @Andalu ...can you turn off automatic reboot at the F8 menu to produce a BSOD screen...to see the error message? There may be another driver involved. Also, do you have another graphics card you can plug in the mobo video slot? That way you can turn off the internal graphics in BIOS.
#5470Mov AX, 0xDEAD
Zitat von ⇗ daniel_k im Beitrag ¶ #5468
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #5462
Yes, probably sp1 sources is same as sp3

MS must have changed something, as my system hangs when using acpi.sys from SP1 (original SP1 or compiled from leaked sources) on an SP3 install disc.

Ok, i was wrong, sp3 sources different, but i dont found yet any critical difference, even extracted kernel structs (bless PDB Ripper) from acpi.pdb dont show byte shifts

After many try&tests i found MS C/C++ compiler and some options who is most similar to produce SP3 acpi.sys  - v13.10.4035 from W2003 SP1 DDK
(need update i386mk.inc + makefile.* also), bindiff show most functions compiled SP1 to be 100% byte match with acpi.sys SP3, difference is about 15 funcs:
Zitat

already done:
0.97  _ParseScope                         
0.99  _OSInterface                        
0.97  _GetPciAddressWorker                
0.82  _While
0.42  _OSNotifyDeviceCheck                
0.98  ACPIWakeEnableDisableAsync(x,x,x,x)

pending:
0.91  _AmliTestDebugPrintFunc  
0.72  _ACPIThermalTempatureRead
0.99  AcpiArbRetestAllocation(x,x)        
0.99  AcpiArbTestAllocation(x,x)          
0.96  AcpiArbRollbackAllocation(x)        
0.95  ACPIInterruptServiceRoutine(x,x)    
0.90  ACPIDevicePowerProcessPhase3()      
0.70  ACPIRootIrpCompleteRoutine(x,x,x)   
0.36  ACPIInternalGetDeviceExtension(x)



"done" mean changes to *.c to produce sp3 exact logic

#5471daniel_k
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #5470
Ok, i was wrong, sp3 sources different, but i dont found yet any critical difference, even extracted kernel structs (bless PDB Ripper) from acpi.pdb dont show byte shifts

After many try&tests i found MS C/C++ compiler and some options who is most similar to produce SP3 acpi.sys  - v13.10.4035 from W2003 SP1 DDK
(need update i386mk.inc + makefile.* also), bindiff show most functions compiled SP1 to be 100% byte match with acpi.sys SP3, difference is about 15 funcs:

Thanks for looking into it!

Interesting that the original or compiled acpi.sys from SP1 works on VirtualBox and an old Sandy Bridge Lenovo laptop, but hangs on my CFL system.
Certainly SP3 code improved compatibility with newer systems.
#5472Andalu
Zitat von ⇗ gordo999 im Beitrag ¶ #5469
@Andalu ...can you turn off automatic reboot at the F8 menu to produce a BSOD screen...to see the error message? There may be another driver involved. Also, do you have another graphics card you can plug in the mobo video slot? That way you can turn off the internal graphics in BIOS.

I had already enabled the way to see the error code on bsod as reported ¶ here and replaced the graphics card without success. In the bios there is no reference to internal graphics because my cpu (i5 9400F) does not have an integrated vga.
#5473Andalu
Zitat von ⇗ diderius6 im Beitrag ¶ #5466
@Andalu

See my post

¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (200)

There it was for sure the Sata driver with exact the same behavior as yours
Dietmar

Nothing changed even using an XP ISO from the "en_windows_xp_professional_with_service_pack_3_x86_cd_vl_x14-73974" CD to which I manually added storport.sys v5.2.3790.4173 and StorAhci driver from skullteria via nLite, besides the working acpi.sys:

- with bios v1.20 it correctly installs but usb is still not working (error code 10):


- with bios v3.30 XP starts only in safe mode:


in normal mode I got the same A5 bsod as always even disabling "all the disableable".
#5474daniel_k⇗ @Andalu

Which patched acpi.sys are you using?
That error 10 seems to be related to the qword dsdt table issue.

What is the device ID of the following devices?
- PCI Data Acquisition and Signal Processing Controller
- Unknown Device
#5475Andalu⇗ @daniel_k
I'm using acpi.sys 5048 with SHA-1: B368439FE2C052A81EF1F388EA7F5DD81FA970F3

here the device IDs:
- PCI Data Acquisition and Signal Processing Controller (VEN_8086&DEV_A379&CC_SUBSYS_A3791849&REV_10)
- for the "unknow device" now I see ACPI\ACPI000E but I have installed a different ISO from the posted images. But if I'm not wrong I seen  a different ID for the ISO of the images.
Give me please some time to downgrade the bios and then reinstall that ISO.


Edit1: I didn't need to reinstall from the beginning, it was enough to downgrade the bios to the v1.20 and then restart from gui mode since the text mode was correctly completed with the bios v3.30 before to get the usual bsod on the "Devices Installation" step.
The unknow device has now the ID ACPI\INT3450


Edit2: the posted images are from the ISO with acpi.sys 6666 of the "acpiOuterspace2001fit" package.

 

Page 366

#5476daniel_k⇗ @Andalu, no need to downgrade the BIOS.
#5477daniel_k
Zitat von ⇗ Andalu im Beitrag ¶ #5475
Edit1: I didn't need to reinstall from the beginning, it was enough to downgrade the bios to the v1.20 and then restart from gui mode since the text mode was correctly completed with the bios v3.30 before to get the usual bsod on the "Devices Installation" step.
The unknow device has now the ID ACPI\INT3450

Hmm

With BIOS 1.20 the unknown device is ACPI\INT3450 ?

With BIOS 3.30 there is no (unknown) device with the same ID?

This ID is from Intel Serial IO host controller, which is usually hidden on purpose by the DSDT table on any Windows version below 8.0.
#5478Andalu
Zitat von ⇗ daniel_k im Beitrag ¶ #5476
@Andalu, no need to downgrade the BIOS.

at moment the XP installation is impossible without downgrading to the older bios version (1.20)

Zitat von ⇗ daniel_k im Beitrag ¶ #5477

Hmm
With BIOS 1.20 the unknown device is ACPI\INT3450 ?
With BIOS 3.30 there is no (unknown) device with the same ID?
This ID is from Intel Serial IO host controller, which is usually hidden on purpose by the DSDT table on any Windows version below 8.0.


I confirm that with bios v3.30 there is not such ACPI\INT3450 but ACPI\ACPI000E.

As a little note about the bios v3.30: with acpi5048 I got the A5 bsod in normal mode but the system enters the safe mode.
With acpi666 I got an acpi bsod with both normal and safe mode.
#5479daniel_k⇗ @Andalu

Do you have a PS/2 keyboard? Try to disable the USB3 controller and see if it boots in Normal mode with BIOS 3.30.

I'm suspicious of the XHCI/RHUB related entries in the DSDT table.
#5480Andalu⇗ @daniel_k
as from the images ¶ here I disabled almost all but nothing changed, same A5 bsod occurred in normal mode
#5481daniel_k
Zitat von ⇗ Andalu im Beitrag ¶ #5480
@daniel_k
as from the images ¶ here I disabled almost all but nothing changed, same A5 bsod occurred in normal mode

Sorry, I missed that.
Did you already post the complete error code with the 4 parameters?
Sometimes we get a hint from those parameters.
#5482Andalu⇗ @daniel_k
no problem to report it once again:
0x0000000A (0x000000B0, 0x00000002, 0x00000000, 0x804F5A97)
#5483daniel_k
Zitat von ⇗ Andalu im Beitrag ¶ #5482
@daniel_k
no problem to report it once again:
0x0000000A (0x000000B0, 0x00000002, 0x00000000, 0x804F5A97)

Huh, thought you were getting the A5 BSOD in your message below:
¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (365)
#5484diderius6⇗ @Andalu ⇗ @daniel_k

The DSDT tables from Bios 1.20 and Bios 3.30 are very different
Dietmar



diderius6 has attached files to this post
#5485Andalu
Zitat von ⇗ daniel_k im Beitrag ¶ #5483
[Huh, thought you were getting the A5 BSOD in your message below:
¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (365)

I have to clarify which are the error codes and the circumstances they occurred.

Bios v3.30
acpi5048 (SHA-1: B368439FE2C052A81EF1F388EA7F5DD81FA970F3):

- normal mode -> BSOD 0x0000000A (0x000000B0, 0x00000002, 0x00000000, 0x804F5A97)
- safe mode -> OK

acpi6666 (SHA-1: 7CA08F984C0D4D91E554E11D643929D4A286CA7C):
- normal and safe mode -> BSOD 0x000000A5  (0x0000000D, 0x898FD4B0, 0x4449555F, 0x00000000)


Bios v1.20
acpi5048 (SHA-1: B368439FE2C052A81EF1F388EA7F5DD81FA970F3): normal mode -> OK
acpi6666 (SHA-1: 7CA08F984C0D4D91E554E11D643929D4A286CA7C): normal mode -> OK


No USB3 driver works with the bios v1.20 (error code 10 - this device cannot start).
#5486diderius6I looked for my own DSDT and I was right

in Bios from 2013 is written in DSDT for the Flex 10 (no OSEL variable at all(!))

           Method (_STA, 0, NotSerialized)  // _STA: Status
           {
               Return (0x0F)
           }

in last Bios from 2015 is written in DSDT

           Method (_STA, 0, NotSerialized)  // _STA: Status
           {
               If (LEqual (OSEL, 0x02))
               {
                   Sleep (0xC8)
               }

               Return (0x0F)
           }
#5487daniel_k⇗ @Andalu

Now it's clear.

When you can, please try this:
⇗ http://www.mediafire.com/file/x2zskq56vbla9pu

It's based on acpi6666, there are 2 variants.
#5488daniel_k⇗ @diderius6
What is the "oldest" Windows you can install?

You can fake the version by patching acpi.sys.

Rename the Windows 2001 SP1 string to:

Windows 2012 - Windows 8
Windows 2013 - Windows 8.1
Windows 2015 - Windows 10

Erase " SP1" with zeros.
#5489Andalu⇗ @diderius6
Thank so much
Unfortunately I don't understand anything about DSDT table (and not only about it )
#5490Andalu⇗ @daniel_k
acpi give me the 0x000000D1 bsod but..........

acpi2 works!!!!   

Thanksssss

 

Page 367

#5491daniel_k⇗ @Andalu

Seriously? I want a screenshot!
#5492diderius6⇗ @daniel_k

This means, that this Bsod 0x000000A5 (0x0000000D,xx,yy)
goes to

ACPIDetectDuplicateHID(x)  (brrr..)

and we have a better acpi.sys from outerspace )
Dietmar
#5493Andalu
Zitat von ⇗ daniel_k im Beitrag ¶ #5491
@Andalu

Seriously? I want a screenshot!

Thank you for the trust



Do you know that the latest bios version for my former crazy board is the 4.20?
#5494daniel_k
Zitat von ⇗ Andalu im Beitrag ¶ #5493
Thank you for the trust

I had to see it to believe it!
Nice!

Zitat
Do you know that the latest bios version for my former crazy board is the 4.20?


Yes, you're going to update it?

#5495Andalu
Zitat von ⇗ daniel_k im Beitrag ¶ #5494
Yes, you're going to update it?

I do not know. After the v3.30 it is no longer possible to downgrade, at least that's what they report.
#5496diderius6⇗ @Andalu

Dont upgrade Bios!!!
Only when you have an EEpromer and a lot of free time;))
Dietmar
#5497Andalu⇗ @diderius6
to avoid problems I have not updated the bios of the asus Q370 anymore
#5498daniel_k
Zitat von ⇗ Andalu im Beitrag ¶ #5495
Zitat von ⇗ daniel_k im Beitrag ¶ #5494
Yes, you're going to update it?

I do not know. After the v3.30 it is no longer possible to downgrade, at least that's what they report.


Was just asking.

If you have no issues, stick with 3.30, of course!
#5499daniel_k⇗ @Andalu and ⇗ @diderius6

Can you please try the latest acpi.sys 6666 from yesterday, now modified to fake Windows Vista, 8, 8.1 and Windows 10?
⇗ http://www.mediafire.com/file/hwio6yp5je1hqkq

I'd like to test the reliability of acpi.sys. On my Gigabyte Z370, in a quick test, it seems to work just fine even with Windows 10 (Windows 2015 string) version.

By doing this. acpi.sys "runs" code from DSDT table that is usually hidden by a version check. Also may expose devices that are also hidden in older versions of Windows.
Please take note of any misbehavior and new device that might be detected.
#5500diderius6Hi Daniel,
on the Asrock Fatalty K6 all 5 acpi.sys work, nice:)).
On the crazy Flex 10 no one.
Interesting, I found another compi, where the same symptoms happen of
disappearing harddisk under XP, Win7.
It is the compi with board ef10mi2.
I compare their Bios DSDT version: The version 1.4 shows this behavior,
but the very first bios version 0.26 not. In Spain this board is
in a lot of school laptops Intel® Classmate PC Marble Point (EF10MI2) and there are videos on Youtube,
how they flash their Bios back to ver. <1.4 and voila, now win7 works and I think XP also.
I compare those Bios: In old version no OSEL at all, no sleep order for Sata.
And some devices are not present. And it seems important,
to disable the USB2.0 ehci.sys driver in the DSDT table.

So, with some work I can edit my DSDT also and boot XP.
But this means, that I have to desolder the Bios chip again
and I am not sure, if this Mini laptop survives it a second time.
Would be nice to have an easy to use DSDT upload program for any Bios (also Insyde, brrr..)
Dietmar

PS: When you think about, what this mean: Intel, Lenovo force the people to install at least Win8.1.
May be the easy trick in DSDT is, just to let the Sata wait and you get Bsod 0x7B.
#5501daniel_k
Zitat von ⇗ diderius6 im Beitrag ¶ #5500
Hi Daniel,
on the Asrock Fatalty K6 all 5 acpi.sys work, nice:)).

Great! It's seems to be a pattern, desktop boards are easier to deal with.

Zitat
On the crazy Flex 10 no one.


The same Stop A5 0x2001 error?

Zitat
PS: When you think about, what this mean: Intel, Lenovo force the people to install at least Win8.1.
May be the easy trick in DSDT is, just to let the driver from the harddisk wait and you get Bsod 0x7B.


On laptops they do whatever is needed to prevent unsupported OSes from being installed.

#5502diderius6⇗ @daniel_k
No, with newer acpi.sys from outerspace )
the A5 2001 Bsod is gone. No message, no Bsod,
only that no harddisk can be found
Dietmar
#5503daniel_k
Zitat von ⇗ diderius6 im Beitrag ¶ #5502
only that no harddisk can be found

I think that our patches make acpi.sys ignore something that Windows 8.1's acpi processes.

Does Linux boots on that Flex 10? If so, can it detect the hard disk?
#5504Andalu⇗ @daniel_k
XP correctly starts on my Asus Q370 with all five acpi.sys. I don't have noticed any issue but the time for testing has been short :)

About the unknow devices, here the new recognition only with the acpi2015 version:



I'll try with asrock H310 soon.
#5505daniel_k⇗ @Andalu, thanks for testing the files.

Great news!

 

Page 368

#5506Andalu⇗ @daniel_k
all acpi versions also work on the asrock H310M-HDV and a new recognition with acpi2015 only. Also the ID for the unknow device is identical (ACPI\INT33A1):



Edit: updated the image
#5507infuscomus⇗ @daniel_k

I tested your acpi2015.sys on TRX40 Threadripper.

No good.
#5508daniel_k⇗ @Andalu

Thanks, so we finally have an acpi.sys that survives Win10 specific codes of DSDT table (at least for Intel systems)!
#5509daniel_k
Zitat von ⇗ infuscomus im Beitrag ¶ #5507
@daniel_k

I tested your acpi2015.sys on TRX40 Threadripper.

No good.

Doesn't surprise me.
AMD screwed up the ACPI tables.

Sadly, Intel is much easier to deal with (regarding desktop boards) than AMD.
#5510infuscomus⇗ @daniel_k

would you be willing to help me in trying to mod the ACPI tables to get this to work?
#5511daniel_k
Zitat von ⇗ infuscomus im Beitrag ¶ #5510
would you be willing to help me in trying to mod the ACPI tables to get this to work?

Sorry, but it's a too time consuming hit and miss task.

I've already take a look at the tables of Ryzen/Threadripper boards. Too much different than Intel's.

What I can suggest you is to search if there is a board that does work with Win7, grab its BIOS and compare the tables with the ones from your board.
#5512infuscomus⇗ @diderius6

I do have an AM4 Ryzen board (ASRock AB350 G K4) that I can confirm does work for both 7 and XP - since I lack experience with ACPI coding the only difference I can see is the AB350 uses iasl compiler 20120913 and the Threadripper uses 20190509.

It's not a huge loss if I don't get XP working on Threadripper, but it's interesting and I think it would still be cool if I can somehow manage to get it to work.
#5513diderius6⇗ @infuscomus

Can you see any harddrive on Threadripper using XP or win7
Dietmar

PS: Have you extracted the DSDT table? Is there a command "OSEL"?
#5514infuscomus⇗ @diderius6

I'm not sure at this time, windows 7 has an A5 BSOD and XP gives a black screen. I'm guessing that the storage devices will work once ACPI works.

I've disassembled my DSDT - it has OSVR for OS detection - "Windows 2001 SP1" is 0x09 so I've use notepad++ to change all the OSVR <= 0x0C parts to 0x09

Windows 7 will load the DSDT now, but it seems to get stuck on the CPUSSDT table (because parameter4 of A5 0x11 0x8 BSOD is 0x03242016)
So I'm assuming there is still something I need to fix in my DSDT.
#5515diderius6⇗ @infuscomus

I take a look at the DSDT table from AB350 and the threadripper. They are very different.
I can see, that in the Threadripper DSDT is made heavy use of OS select.
I think, that also the acpi.sys from win7 can be hacked for this Bsod.
But very strange appears for me, that with hitting F5 and chose "Standard PC" XP does not work.
This means, the problem is not only acpi related
Dietmar
#5516infuscomus⇗ @diderius6

Do you think you could hack acpi.sys of windows 7?
#5517diderius6⇗ @infuscomus
You can send me your acp.sys from win7 with A5 0x11 0x8 BSOD
and I try
Dietmar

PS: I just think, that maybe the black screen under XP on Threadripper can be the videodriver.
So make a try with VGA.
#5518infuscomus⇗ @diderius6

here



infuscomus has attached files to this post
#5519diderius6⇗ @infuscomus
here

⇗ https://ufile.io/b9oz1igy

and next better :))

⇗ https://ufile.io/n2yl4xt1

and the last one with absolute blockade of Bsod A5 (0x11,..)

⇗ https://ufile.io/dxh0is6o

Dietmar

PS: This one is build with very very old Ida. I think, it is the best, because other IDA versions show different machinecode???

⇗ https://ufile.io/yd1oggj9
and the laast one
⇗ https://ufile.io/ybkcc6ih

⇗ https://ufile.io/9otk450d   Now I am out of ideas.

Before it was like slaughter of acpi.sys. Now comes chirurg for Bsod 0x000000A5 (0x00000011,0x00000008,yyy,zzz)
⇗ https://ufile.io/ncpa34rv
#5520789
Zitat von ⇗ diderius6 im Beitrag ¶ #5382

modded acpi.sys outerspace

acpi.sys from service pack 3 for XP which you attribute to aliens ?  What about service pack 2 for windows 2003 ?
And will the modified acpi.sys be available for download as the modified iaStor.sys is available ?

 

Page 369

#5521infuscomus⇗ @diderius6

your acpi88.sys works!!! no DSDT mod required!

No USB 3.0 or NVMe just yet, I still need to integrate those drivers, but the SATA drives showed up just fine (Easy2boot has an additional command prompt portion to windows 7 setup where it lists all the drives detected)

Sorry I don't have pictures yet, phone died, recharging.

Hopefully we can now do the same for XP!



edit: added picture - NVMe driver working, USB 3.0 need to try again -

for USB 3.0 I think I forgot to include KMDF.
#5522diderius6⇗ @infuscomus

What a crazy fight with different Ida versions. Modern versions of Ida show parallel working flow diagrams??
I always think, in acpi.sys is everything done step by step. And I am right.
The last acpi88.sys I make with Ida 4.7.0.830 from 2003(!),
6 years before win7 was on the market, no Vista no XP SP2:))..
I am happy, that it works for you.
Because this crazy fight with Ida, now I understand for the very first time a lot, how acpi.sys works.
So, it gives for me also nice result
Dietmar

PS: And win7 is nothing than a clone from XP SP1.
#5523infuscomus⇗ @diderius6

can you try the same hack that worked on windows 7 acpi.sys with XP acpi.sys?
#5524diderius6⇗ @infuscomus

I thought, that I have done this hack on 28 December 2018 an acpi.sys for XP.
But just now I notice,
that this hack was not complete.
So, I try in the afternoon today, in 6 hours
Dietmar
#5525canonkong⇗ @infuscomus
TRX40 can work on win7 with the mod acpi.sys mow?
⇗ TRX40 win7 64bit driver
#5526infuscomus⇗ @canonkong

32-bit only for now.
#5527diderius6⇗ @infuscomus

This is the last possible hack for acpi.sys in XP SP3 from outerspace ) (also with the very last update from ⇗ @daniel_k ),
for the very first beginning of Acpi ACPIInitializeDDB.

There are a lot of other possibilities, but this hack works against all solved Bsods before and

0x000000A5 (0x00000011,0x00000007,xx,yy)

and

0x000000A5 (0x00000011,0x00000008,uu,zz)

Dietmar

⇗ https://ufile.io/t2ok9fmg
#5528daniel_k⇗ @diderius6

We can "ignore" most errors, but the 0xA5 (0x03) cannot be ignored.

When processing non-critical methods, acpi.sys calls ACPIBuildCompleteGeneric, which does not crashes if fails.
When processing critical methods, acpi.sys calls ACPIBuildCompleteMustSucceed, which crashes if fails.

This usually occurs with opcodes in required methods (_INI and others) that acpi.sys (still) does not understand/support.

ACPIBuildCompleteMustSucceed can be replaced with ACPIBuildCompleteGeneric, but this only works if the DSDT tables have no incompatibilities, otherwise Windows crashes with 0xA (IRQL_NOT_LESS_OR_EQUAL).
#5529infuscomus⇗ @diderius6

I'm sad to say that this did not work unfortunately - same result as before.

So I'm guessing a windbg session is now required - I'm very new to this so I'll need alot of help with it.

edit:

I have an idea -

you were thinking it might be my RTX 2070 preventing boot, so this got me thinking.

Since I know windows 7 can boot in CSM mode with the RTX 2070 I am thinking of using BOOTVID.DLL from windows 7 in XP - Import table is a match.
#5530diderius6⇗ @infuscomus

It can be also the 4TB harddisk or any other device, that is connected.
So, disconnect all, disable in Bios nearly all,
look that in Bios is all set to maximal CSM compatibility
and make new try with this new acpi.sys from outerspace )
Dietmar

PS: Use original CD connected to a Sata port.
#5531infuscomus⇗ @diderius6

will do,

On another subject regarding 4TB drives - I was able to see in a VM that these server 2003 drivers - ¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (361) - allowed me to see larger than 2TB disks in XP.

But this was in a VM, real hardware might be different.
#5532daniel_kA large disk won't prevent XP from booting.

Probably the core count is the issue here, HAL or Kernel go nuts.
#5533infuscomus⇗ @daniel_k

I searched my motherboard manual and found this option -

Downcore Control
Allows you to select the number of CPU cores to enable (the number of CPU cores may vary by CPU).
(Default: Auto)

I'll see if lowering the number of CPU cores makes a difference.
#5534daniel_k⇗ @infuscomus

Didn't know you could limit the number of cores on TR. Fingers crossed!
#5535infuscomus⇗ @daniel_k ⇗ @diderius6 ⇗ @Mov AX, 0xDEAD



Yep!! that was it!! ( options available under it were labeled weirdly in BIOS Though, it was either "Two (1 + 1)" or "Four (2 + 2)" or Auto)

Damn, so the XP kernel panics with too many cores! That's a bummer.

Also, the generic USB 3.0 that Mov AX, 0xDEAD made does not work, but I found the source code for the windows 10 USB 3.0 driver (xhci and hub) in the shared source kit - Mov AX, 0xDEAD did you want to try and port that?

 

Page 370

#5536daniel_k
Zitat von ⇗ infuscomus im Beitrag ¶ #5535
Yep!! that was it!! ( options available under it were labeled weirdly in BIOS Though, it was either "Two (1 + 1)" or "Four (2 + 2)" or Auto)

Damn, so the XP kernel panics with too many cores! That's a bummer.

What is the setting that fixes it? Two or Four? And how many available cores you see in Task Manager?

Zitat
Also, the generic USB 3.0 that Mov AX, 0xDEAD made does not work, but I found the source code for the windows 10 USB 3.0 driver (xhci and hub) in the shared source kit - Mov AX, 0xDEAD did you want to try and port that?


Error 10 in controller or hub in Device Manager?

Mov AX, 0xDEAD already said that the source is incomplete, missing many include files. And, to be honest, it wouldn't help you as probably should a resource allocation issue related to ACPI.

#5537diderius6nice!!!
#5538infuscomus⇗ @daniel_k

Two (1 + 1) was the setting that fixed it.

I only went into XP textmode setup to see if it froze or not, it no longer froze.

So I haven't yet looking in task manager to see the core count (it's late I'll check tomorrow) - and I don't have PS/2 or USB 2.0 in this machine so I don't have a way to interact with XP right now.
#5539Mov AX, 0xDEAD⇗ @infuscomus

Zitat

Also, the generic USB 3.0 that Mov AX, 0xDEAD made does not work, but I found the source code for the windows 10 USB 3.0 driver (xhci and hub) in the shared source kit - Mov AX, 0xDEAD did you want to try and port that?


Hi infuscomus,

- I never tried to compile usb3.0 because part of *.h is missed, maybe they are external (from kernel tree) or maybe absense in leak.
- Sources is not identical with 8.0 binaries because they are rip from "Win 8.1/10 ARM", they want some newer functs from 8.1+ kernels (ExTimer* stuff)
- If someone can recreate missed *.h i think compiling is possible

#5540Mov AX, 0xDEADI have some news:
acpi.sys SP1 sources can be converted to be like SP2/3 version (SP3 is same as SP2, no changes in binary), bindiff now show 100% byte-match codebase, confirmed to work on few pre-skylake bioses with Windows XP SP3
#5541gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #5522
PS: And win7 is nothing than a clone from XP SP1.
⇗ @diderius6 ..seems that way. I think what they have done mainly with W7 is remove the 16 bit functionality and make it more a true 32/64 -bit system. Then again, if you take all the stupid tablet stuff from W8 and W10, and built in spying and other toys, they're not all that different than XP. You guys have proved that by adapting W8 drivers to XP.
#5542gordo999
Zitat von ⇗ infuscomus im Beitrag ¶ #5529
So I'm guessing a windbg session is now required - I'm very new to this so I'll need alot of help with it.
⇗ @infuscomus ...do you actually have a remote connection using windbg to XP? I started on that a while ago but had to put it aside while I did other stuff. I am just getting back to it now.

I had a remote connection from a W7 host to a W7 and W10 target using a USB to serial adapter on the host. I was able to run windbg on the host and trace through the W7/W10 target OS's. At this time I cannot re-establish the connection to either W7, W10, or XP.

There are some tricks to learn when using windbg but it's not all that difficult at a basic level. There is so much depth to windbg as to what it can dump and how to do that. That's the hard part, the language can get pretty heavy in how to address it.
#5543infuscomus⇗ @daniel_k

Two (1 + 1) gives 8 cores and 16 threads.

Can you try to patch the kernel to handle more CPU cores?
#5544infuscomus⇗ @canonkong

Your patched Windows7 x64 ACPI driver worked - however none of the attached storage devices were detected, no SATA or NVMe even though they showed up just fine in Windows7 x86.
#5545infuscomus⇗ @diderius6 ⇗ @daniel_k ⇗ @Mov AX, 0xDEAD

I tested these USB 3.0 drivers

backported win8.0 usbxhci driver
patched amdxhc 1.1.0.0276
patched etronxhci driver

along with daniel_k's acpi2015.sys

None of these USB 3.0 drivers are working on my Threadripper machine. All my motherboard USB 3.0 ports are useless :(
#5546diderius6⇗ @infuscomus

Take a look in Bios, if all those USB ports are enabled
and if there are other settings too.
What shows USB 3 xhci and USBhub in device manager
Dietmar

PS: Does USB mouse, keyboard work there?
#5547infuscomus⇗ @diderius6

No USB Mouse or Keyboard, so I'll need a remote desktop session to check device manager but I don't have network drivers installed in this XP image, so I need to reimage it with the network drivers installed.
#5548canonkong⇗ @infuscomus
Here is two mod win7 64bit acpi.sys for TRX40, you can try it.
#5549infuscomus⇗ @canonkong

the one you posted yesterday already got past the A5 BSOD,
what changed in this acpi.sys?
#5550canonkong⇗ @infuscomus
I used other ideas to modify the file, hope it can work fine.

 

Page 371

#5551daniel_k
Zitat von ⇗ infuscomus im Beitrag ¶ #5543
Can you try to patch the kernel to handle more CPU cores?

I have no idea how and where Windows enumerates and manages cores.

Zitat
No USB Mouse or Keyboard, so I'll need a remote desktop session to check device manager but I don't have network drivers installed in this XP image, so I need to reimage it with the network drivers installed.


I'm afraid that it'll be useless.

Probably issue with ACPI x PIC (interrupt controller).

Try to load XP setup in Standard PC (no ACPI), press F7 when you see the "Press F6 if you need to install a third-party SCSI or RAID driver".

#5552infuscomus⇗ @daniel_k

Standard PC froze on "Setup is Starting Windows" - even with downcore set to Two (1 + 1)

I did a quick test with a server 2003 ISO to see if it also had a kernel panic over CPU cores - it did not and gave an A5 BSOD (same BSOD as windows 7), so there is a way to fix the panic somewhere in 2003 kernel.
#5553daniel_k
Zitat von ⇗ infuscomus im Beitrag ¶ #5552
I did a quick test with a server 2003 ISO to see if it also had a kernel panic over CPU cores - it did not and gave an A5 BSOD (same BSOD as windows 7), so there is a way to fix the panic somewhere in 2003 kernel.

Unfortunately we don't have a modded Server 2003 acpi.sys.
Try to use the one from XP.
#5554diderius6⇗ @infuscomus

If the very laast acpi.sys from outerspace ) not works,
you can send me your win2003 acpi.sys and I try to mod it against
Bsod A5 (0x11,0x08,xx,yy)
Dietmar

PS: May be it is really better, always to use the kernel from win2003.
But I dont know if it can be hacked, so that it appears always like XP SP3 to outer world.
#5555diderius6I make a strange discovery.
After I succeed to change in Bios from Sata => Standard Mode (IDE),
I get message, that the acpi.sys is defect (acpi.sys ist beschädigt).
This message for acpi.sys from outerspace ) I never saw before.
Now I change acpi.sys to the 5048 acpi.sys (very last version from ⇗ @daniel_k )
and modd it against Bsod A5 2001.
And voila, now my harddisk can be seen and for the very first time
I can direkt install XP to the most most crazy notebook Flex 10 Ideapad from Lenovo,
because the trap in Bios about sleeping for Sata is now over;))
Dietmar

PS:This was the hardest job ever to enable full Acpi on this Baytrail notebook. No mouse, brrr..;))
This is with the last x64 Bios for win10^^.

acpi.sys laast 5048 version also against A5 2001 Bsod
⇗ https://ufile.io/k778gsaw

Edit: Without acpi all USB2, USB3, USB mouse work. With acpi even no USB mouse.
In device manager is shown correct xhci Host controller and Usb3 root Hub but the usb devices have vid_&pid_
000000 numbers or are shown as unknown devices. This is for the modded USB3 diver from Win8 and from the AMD USB driver from ⇗ @daniel_k true. I also tried Daniels acpi15.sys, no difference.

#5556diderius6Found in Source in NT\public\sdk\inc\ks386.inc
for XP SP1 but this  00020H means 32 processors maximal is also true for Win2003 from the leaked source.
In the Debug version of ntkrnlmp.exe XP SP3 it is also mentioned MAXIMUM_PROCESSORS
but on other place or file is its value 00020H  declared.
So, first test is, if this win2003 can run on Threadripper. If yes, the problem is at other place.

;
; Miscellaneous Definitions
;

MAXIMUM_PROCESSORS equ 00020H
INITIAL_STALL_COUNT equ 00064H
IRQL_NOT_GREATER_OR_EQUAL equ 00009H
IRQL_NOT_LESS_OR_EQUAL equ 0000AH
MUTEX_ALREADY_OWNED equ 000BFH
THREAD_NOT_MUTEX_OWNER equ 00011H
#5557LabudicoHello! Please help me to choose right acpi for Asrock Z390M Pro4. If i select i486 mode windows XP installed with all drivers for SATA, NVME SSD, PAE 128GB. But in acpi mode i have these BSOD



Labudico has attached images to this post  ⇗ IMG_20201025_005911_187.j
#5558diderius6⇗ @Labudico

Make try with this acpi.sys
Dietmar

⇗ https://ufile.io/3504p4rp
#5559infuscomus⇗ @diderius6

In NT\public/sdk/inc/ntpsapi.h there is also

// begin_nthal

#if defined(_WIN64)

#define MAXIMUM_PROCESSORS 64

#else

#define MAXIMUM_PROCESSORS 32

#endif

// end_nthal

you have the SP1 code right?
can you compile both an original SP1 ntoskrmp\hal and a modded ntoskrmp\hal with the  increased maximum processor changes to ntpsapi.h and ks386.inc ?
This way we can spot the differences to see what we might need to change to increase CPU core count support.
#5560infuscomusUSB 3 works correctly in windows 8.1 but ntoskrnl extender would need extra functions for it to work.

missing functions -
ExCancelTimer
ExDeleteTimer
ExSetTimer
ExAllocateTimer
PoFxCompleteIdleCondition
PoFxCompleteIdleState
PoFxUnregisterDevice
PoFxReportDevicePoweredOn
PoFxIdleComponent
PoFxCompleteDevicePowerNotRequired
PoFxActivateComponent
PoFxStartDevicePowerManagement
PoFxRegisterDevice
PoFxSetDeviceIdleTimeout
ZwUpdateWnfStateData
ZwQueryWnfStateNameInformation



that's alot of work to do.
#5561diderius6⇗ @infuscomus

Have you tried to install the very first win2003 on Threadripper board?
If it works, the number of processors is not the main problem
Dietmar

PS: There may be also other files needed for XP boot, which depends on MAXIMUM_PROCESSORS.
#5562infuscomus⇗ @diderius6

server 2003 RTM? I have not.

The one that worked was server 2003 SP2.
#5563infuscomus⇗ @diderius6

Server 2003 RTM - has the problem.

Server 2003 SP1 - does not have the problem.
#5564diderius6⇗ @infuscomus

MAXIMUM_PROCESSORS appears at >45 places in Source code from XP SP1 for i386.
Now I am looking, in which of this files the number of MAXIMUM_PROCESSORS is set to 32 and I simple change it everywhere to 64 and compile
Dietmar
#5565diderius6MAXIMUM_PROCESSORS is set to 32 in

hal386.inc
Ks386.inc
ndis.h
ndismain.h
ntddk.h
nthal.h
ntifs.h
ntpsapi.h
wdm.h
winnt.h

So, at least MAXIMUM_PROCESSORS appears in halmacpi.dll (not mentioned in Debug halmacpi.dll) and ntkrnlmp.exe (in Debug version mentioned)
Dietmar

PS: Other variables may depend on MAXIMUM_PROCESSORS <= 32, so there is no garantie, that it will work.

Until now I do not find in the Debug Binaries from XP SP3, at which place MAXIMUM_PROCESSORS is set to 32.
This may be, because the place, where it is set to 32, may have another name.

 

Page 372

#5566kukonosau⇗ @diderius6
Hello. WinXP64 is unstable working on Ryzen. But how do you fix errors IRQL_NOT_LESS_OR_EQUAL and SYSTEM_SERVICE_EXCEPTION in post #2202? And how to programmers drivers? Where is literature? I must learning C/C++ or 7IDAFreeware?
#5567infuscomus⇗ @kukonosau

I would suggest using XP-32bit instead.
#5568kukonosau⇗ @infuscomus
Okay, I know. But I am interesting x64 Edition. Is Patch Integrator for XP64 exist? ACPI from #2202 by diderius6 is last acpi for XP64? Where is last acpi for XP64 for Ryzen?
#5569infuscomus⇗ @diderius6 ⇗ @daniel_k ⇗ @Mov AX, 0xDEAD

I setup an XP install in VMWare with acpi,ahci,usb3,pae all integrated - imaged that VM and then restored that VM to my real threadripper hardware.

I've gotten to the XP desktop on threadripper in ACPI mode with downcore option, but I have no USB and no network - however I can see there is an XP driver for my NIC HWID but without input I can not install it.

any way to install the NIC drivers without input?
#5570diderius6⇗ @infuscomus

With Nlite this is possible
Dietmar

PS: I just put all needed XP SP1 files from Source for 32 => 64 processors,
now compiling on very fast compi, cross fingers:))..
Until now no errors..
#5571Labudico⇗ @diderius6
Thank you! This ACPI work!
My PC:
CPU: Intel i3 8350k
MB: AsRock Z390M Pro4
RAM: 32GB (2x16) Samsung ECC Reg
VGA: GTX 1060 6GB
SSD Sata and SSD NVME
I installed system from DVD-rom, Easy2boot and Yummi not working on my motherboard, i don't now why, whith him only in i486 mode.
whith this ACPI all work good, if only one problem - not work restart - system freeze after end all tasks, PC off with only when click Shutdown. It's possible to change ACPI on istalled system?

My Windows image with: SATA driver, NVME driver, ACPI (Dietmar),  PAE 128GB, USB 3.0 driver - see on my screentshot - I upload this image on the mega.nz



Labudico has attached images to this post  ⇗ 2020-10-26_003927.png
#5572diderius6⇗ @Labudico

Niceee:))!

I think, soon we have XP SP3, which can run on 64 cores.
Just compare normal XP SP1 files with them with updated for 64 processors and put this changes to XP SP3 in binaries,
Dietmar
#5573Andalu
Zitat von ⇗ infuscomus im Beitrag ¶ #5412

Unrelated to ACPI
it seems that win2k3 supports accessing larger than 2tb disks - and the import tables match XP.


It doesn't work in XP SP3 on a 4TB disk connected to a sata port:



nothing changes even using the Paragon GPT Loader included in the WinXP-IE 2020.09.09 ISO.
#5574infuscomus⇗ @Andalu

damn, I was hopeful it would work because it worked in a VM, but I guess not.
#5575diderius6Compiling is ready, in 1 hour(!) XP SP1 compiled.
Ntoskrnl, hal.dll are all there with 32 => 64 processors.
But I get 1 error in build log:

12>NMAKE :  U1073: don't know how to make '..\analysis\filtercf\obj\i386\dvranalysisfiltercf.lib'

Now I change files against new compiled and look, if XP SP1 starts with them
Dietmar
#5576lsmlcxWhere can i get the WinXP-IE 2020.09.09 ISO ?
thanks.

--------------------------------------------------
I have got.
⇗ https://www.zone94.com/downloads/softwar...ntegral-edition
#5577LabudicoDriver for Intel(R) Ethernet Connection (7) I219-V where i can donwload for Windows XP?
#5578diderius6⇗ @Labudico

Until now, they do not exist. Until now, very last version for XP is i218 (all versions)
Dietmar
#5579Andalu⇗ @infuscomus
I too had hoped for that. I still don't remember the procedure I applied a few years ago to have a 4TB MBR disk recognized.
#5580Labudico
Zitat von ⇗ lsmlcx im Beitrag ¶ #5576
Where can i get the WinXP-IE 2020.09.09 ISO ?
thanks.


Image based on WinXP-IE 2020.09.09 for AsRock Z390M Pro4
⇗ https://mega.nz/file/UYVEABwb#tkfb1STY4a...rlFD-vDSTIr_x3o

Cleaned WinXP-IE image:
⇗ https://mega.nz/file/sYEngaRL#ceX3Nc8iZc...f8TxyBltcu3VsbU

 

Page 373

#5581diderius6Yeppp,
miniXP with full acpi support starts with brandnew for 64 processors build

ntkrpamp.exe
halmacpi.dll

Now I only need a compi with 64 processors ;))
Dietmar

#5582infuscomus⇗ @diderius6

can you PM me the ISO? I'll test it.
#5583diderius6⇗ @infuscomus

Until now, it is not possible to build an *.iso
from the files of the leaked XP SP1 source.
I can send you my minixp with 64 processors for hal.dll and ntoskrnl.exe,
it has Iastor driver and full acpi support, it should run in any virtual surroundings
Dietmar

Just copy and paste it to your harddisk and after run diskcheck, thats all.
At once we will see: Works or not. May be others files build for 64 processors are also needed.
I have them.
#5584infuscomus⇗ @diderius6

OK, send me your minixp.
#5585schreibersteinOkay... Back to XP...

I have recently upgraded my computer to the Z490 platform.

- Motherboard: Gigabyte Z490 Vision D
- CPU : Intel Core i9 10850K
- RAM: 4 x 16GB DDR4 3200 MHz (64GB)
- GPU - SLOT 1 : Sapphire AMD Radeon RX 5700 XT Pulse
- GPU - SLOT 2 : Sapphire AMD Radeon 7970 Dual-X (3GB VRAM)
- Intel NIC Onboard : i225 2.5G (8086:15F2)
- Intel NIC Onboard : i219-V 1G (8086:0D4D)
- Audio: Realtek ALC 1220 (compatible OOTB with last XP driver)

Attached via Exsys 1010 PCI-Express to PCI box for enhanced XP functionality
- Intel PRO/1000 PCI card
- Creative Audigy 2 ZS

Due to a slight lack of time, I decided to install via the XP Integral Edition 2020.9.9.

I did not look into XP further previously on my Z390 Designare in late 2019 after I encountered several deal breaking issues:
- AMD USB XHCI driver is awful => Breaks 16-Bit applications (NTVDM crashes immediately)
--> Dead NTVDM also resulted in many program installers not working (perhaps due to 16-Bit code paths for compatibility)
--> USB devices often did not work upon reboot
--> Flaky connection
--> Low transfer speeds
- Booting was unreliable (often stuck on black screen)
- Switching graphics drivers would result in annoying black screen (only safe mode workaround)
- Less than 1GB of RAM usable
- Slow boot

When my used Nvidia Geforce 780 GTX just randomly died, I did not continue my experiments.
Now I have a Radeon 7970 and it is excellent.

I was at first scared to purchase a motherboard (Z490 Vision D) without any PS/2 ports. (You may purchase the Vision G variant which has one PS/2 port where both keyboard and mouse can be connected via a Y-cable adapter)
However, the new Windows 8 based XHCI driver works absolutely flawless! So, no regrets in regards to giving up PS/2 for good.
I NEVER had any issues so far. Installation worked fine. Very stable and good speeds!
Excellent, native experience! And best of all, NTVDM works and 16-Bit applications are not a problem anymore.

------

Right now, I am using XP with:
- Backported Microsoft XHCI driver
- Backported Microsoft AHCI driver (should probably switch to Intel RST based driver, but don't know which one as of right now)
- Integral patched ACPI.sys for modern systems
- Integral HAL timer patch

It works much much better than last year! :-)

I also attempted the 4GB and ALL RAM patch for ntoskrnl, but it did not work properly:
The system boots with both configurations and detects 4GB or 63.xGB respectively.
Problems:
- daniel_k Creative Audigy driver audio output is only noise (ASIO and DirectSound can work fine though, but not as Windows Mixer device) - Realtek works just fine
- When NIC and Audigy are used, the system can just hang
- Windows GDI (UI, scrolling, etc.) performance is DRAMATICALLY reduced! Window moving is choppy, scrolling in browser is awfully slow. TOM2D benchmark score decreases from 1400 to 400

Strangely, prime95 and other memory intensive benchmarks did not report any errors, crash the system, or report any corrupted results, even when it used way more RAM than the detected 890 MB.

I patched the files myself via the presumably latest patcher.
I hope memory detection can be improved by extending XP (perhaps with the newly discovered source code) to not use any conflicting memory regions.
At least 4GB would be very sweet. Or at least more than 1. Cannot imagine 1GB used to be considered "WOW! THATS OVERKILL!"

Some 2000 workloads are really fine on this machine. But opening a web browser in 2020 will really cripple this machine.
Old games, old apps, EAX sound work as they should.
It would be nice to get Intel Turbo Boost. It was enabled (?) by default on my Z390 Designare XP setup (4.8 GHz), but on my Z490 setup it is LOCKED at 3.6 GHz, no matter the workload.
(Turbo Boost works on any other operating system)
And yes, hyperthreading is enabled and I see 20 threads.
Boot is also significantly faster. When the boot screen disappears on my 5700 XT, my 7970 gets activated as primary display output. The 5700 XT is only used when a MS-DOS application goes into fullscreen mode.
I have a KVM-Switch and easily can switch inputs for this purpose.

It would also be nice to have some kind of native Intel network driver for any of the onboard NICs.

Overall, I am very very happy to see so much progress over the past year, especially in regards to the USB3 driver.
Terrific work!

Thank you very much to everyone involved!

Cheers,
schreiberstein
#5586diderius6In acpi.sys Debug version of XP SP3 is

MAXIMUM_PROCESSORS

not mentioned

Dietmar
#5587AndaluThanks to the own formatting utility the WD external USB3 4TB disk drive is now correctly recognized in XP:



Now I have to find a solution for the seagate 4TB disk
#5588Andalu⇗ @schreiberstein
thanks for your very complete report which is an excellent reference for those who will choose to use XP on a comet lake system .....I am tempted too :)

I am confident that the PAE issue can also be solved.
#5589infuscomus⇗ @diderius6

So I was not sure how to properly get your minixp onto my XP SSD - So I instead decided to swapout the ntoskrnl and hal on an original XP SP1 ISO with the modded version and rebuild the ISO use nlite.

XP_SP1_MOD.ISO - gets to "Setup is Starting Windows" and then...  reboots immediately! damn!

does SFC check ntoskrnl and hal? if so, how do I overwrite it?

-----

Can you try compiling again just with fewer changes this time?

try changing only these lines of code?

ntpsapi.h - 32 -> 64

nthal.h - 32 -> 64

ks386.inc - 00020h -> 00040h

hal386.inc - 00020h -> 00040h - there are 3 hal386.inc in XP source, did you get them all?
#5590sashbbbbHello friend!
Need new acpi.sys Windows Xp for notebook lenovo laptop 100-15iby (Intel Celeron N2840-Bay Trail-M 2160 МГц, DDR3L 2 ГБ)
All aspi 2019 (WinXP-IE Optional Patch Integrator v2.3.4 Stable) not working!
Replacing files (storport.sys,STORAHCI.inf,storahci.sys,)gave nothing!
Not working Windows PE, Windows XP SP1, Windows XP SP2, Windows XP SP3,Windows 2003.
working only all windowsx86x64 7,8,10, 7PE,8PE,10PE,

MAXIMUM it turned out
windows starts to load blue screen appears and the computer shuts or error 0x000000b4



sashbbbb has attached images to this post  ⇗ led of.jpg  ⇗ b4.jpg
#5591smedos
Zitat von ⇗ schreiberstein im Beitrag ¶ #5585
Okay... Back to XP...

I have recently upgraded my computer to the Z490 platform.

- Motherboard: Gigabyte Z490 Vision D
- CPU : Intel Core i9 10850K
...

- Integral patched ACPI.sys for modern systems



Which version of acpi.sys are you using?

I cannot find the correct acpi.sys for my Gigabyte B460M AORUS PRO (chipset B460 Express) board with Comet Lake CPU.
Windows XP installation stops very early when it detects hardware.

Maybe I need to disable some options in the BIOS?
#5592canonkongI successfully modified the win7 64bit ACPI.sys and no A5 BSOD no A5 BSOD any longer.

#5593infuscomus⇗ @diderius6

also, found a comment in allproc.c

   // Loop asking the HAL for the next processor.   Stop when the
   // HAL says there aren't any more.
#5594diderius6@infuscoumus

I make a new xpmini,
with all the files that are avaible from XP SP1 all modded for 64 processors.
Most easy is, to copy and paste them on a harddisk, run diskcheck and run them.
Other possibility is, to change them all (!) one by one on the setup *.iso CD from XP SP1
(as long as there is a file with this name also on CD)
Dietmar

PS: I think, much more files depends on processors 64. And this is for us until now the only way.
This minixp works on my compi, but I dont have 64 processor cpu ;))..

"there are 3 hal386.inc in XP source, did you get them all?"
Yes, I check before compiling everything twice and so it works.
#5595infuscomus⇗ @canonkong

I didn't know you had a threadripper system -

Can you test to see if XP has the same behavior on your system as it does on mine? (not booting when all cores are enabled)

 

Page 374

#5596diderius6⇗ @sashbbbb

Bsod  0x000000b4 means  VIDEO_DRIVER_INIT_FAILURE,
so you have to enable vga video on boot
Dietmar
#5597canonkong@ infuscoumus
It is my friends PC, he only help to test win7 64bit, because he still need it to work.
#5598infuscomus⇗ @canonkong

Oh OK, no worries then.
#5599infuscomus⇗ @diderius6

Just to be sure, what are the steps needed to setup your minixp? I don't want to mess it up.

can I have the .PDB symbols for your modded ntoskrnl and hal?

also, have you tried integrating your modded ntoskrnl and hal into an original XP SP1 ISO? If not can you try that? I want to know if it also immediately reboots on your machine too.
#5600diderius6⇗ @infuscomus

The story, how I build this minixp is 12 years ago.
Microsoft wrote about XP, that it is not possible to build such an XP,
without any WPA and so on^^.
I took a look at Windows Embedded,
how there XP image is build.
And this procedure I repeat step by step and the result is this minixp.
I think, that you do not need to repack the drivers, just replace them unpacked on CD,
one by one. I have not tested. It can only work on a CD, where you have integrated Iastor.sys via Nlite for example.
Any Storport driver does not work with XP SP1. In a virtual machine it is not needed to integrate the Iastor driver,
because it can use the IDE driver from XP.
The only problem, why it may be not work is, that until now not all Source Code is there,
so some files are from original XP SP1
Dietmar

PS: It works on any compi, where iastor works. When you get Bsod 0x7B you have to change in registry
of the minixp the VEN_&DEV_ number to this from your PC.
When you get "Ntldr not found" you forget to run diskcheck after copy and paste of all the files from minixp.

PDB
⇗ https://ufile.io/spqvw4zu
#5601infuscomus⇗ @diderius6

OK and regarding the installation of minixp

1) format existing XP drive

2) extract minixp.7z to XP drive

3) run diskcheck on new minixp drive

--

anything else needed?
#5602diderius6⇗ @infuscomus

Hi,
yes, may be you have to change the VEN_&DEV_ number for the Sata Iastor in the registry of the minixp
to yours. On a virtual machine you can use the IDE driver. Storport does not work.
Dietmar
#5603infuscomus⇗ @diderius6

diskcheck doesn't work in cmd on windows 10, what have I missed?
#5604diderius6@ infuscomus

You can run diskcheck on any other compi,
where you connect this harddisk with minixp
Dietmar
#5605infuscomus⇗ @diderius6

how do I run diskcheck?

If I skip diskcheck does it work?
#5606diderius6⇗ @infuscomus

I think, you get "ntldr not found".

When you have working XP,
connect your harddisk with minixp and run Extras -> Diskcheck (with correcting errors in filesystem) (in XP at the place above defrag)
Dietmar
#5607diderius6⇗ @infuscomus

I just try your idea to build an *.iso from this minixp.
In a first step I replace all drivers from XP SP1 with 64 cpu, without recompress them.
Cant believe,
works:))

Dietmar

PS: So, I am able to build an XP.iso with all the files from leaked and modded XP SP1.
#5608isopc1999a⇗ @canonkong
How stable is windows7 on TRX40  motherboards?
#5609infuscomus⇗ @diderius6

I may have built my modded XP SP1 ISO incorrectly - can you send me yours?
#5610diderius6⇗ @infuscomus

When I change all files to the modded ones on *.iso
it also reboots for me.
So, until now only minixp
Dietmar

 

Page 375

#5611infuscomus⇗ @diderius6

I'm going to send you the hard disk imaging software I use - can you use it to image your minixp disk so I can easily restore an exact copy to my machine?
#5612diderius6⇗ @infuscomus
I think, this software can make problems, because it is very unnormal XP.
Just copy and paste the files from minixp to your harddisk
Dietmar
#5613diderius6⇗ @infuscomus

I make a try, with only replacing hal.dll and ntoskrnl.exe (all full acpi versions)
with the modded files on the XP installations CD.
Gives also reboot after message "Setup starts Windows".
This means, that there are other dependencies too on the installations CD,
that I dont know, so only minixp
Dietmar
#5614diderius6⇗ @infuscomus
Prepare your harddisk with RMPrepUSB 2.1.739, harddisk in an usb box
Dietmar
#5615LabudicoWindows XP on AsRock Z390M Pro4

#5616infuscomus⇗ @diderius6

I successfully copied your miniXP onto my SSD.
I saw 2 options in your boot menu so I tested both.

Unfortunately, immediate reboot, same as XP SP1 ISO.

So it seems 32->64 MAXIMUM_PROCESSORS is not the solution.
#5617infuscomus⇗ @diderius6

In KeStartAllProcessors of 2k3 SP1 kernel and later there is some extra code not in XP kernel.



I'm not sure if this is what makes it work on threadripper though.
#5618canonkong⇗ @isopc1999a
Work very stable, and I also test the MOD ACPI.sys on an A5 BSOD intel 10th notebook, it also work well, no A5 BSOD.
#5619diderius6⇗ @infuscomus

Now a Windbg session can show you all,
why reboot happens
Dietmar
#5620sashbbbb
Zitat von ⇗ diderius6 im Beitrag ¶ #5596
@sashbbbb

Bsod  0x000000b4 means  VIDEO_DRIVER_INIT_FAILURE,
so you have to enable vga video on boot
Dietmar


When enable vga video on boot, the computer thinks for a long time at boot and then turns off.
Needed aspi.sys on the basis of Windows 8 or Windows 7.
#5621diderius6⇗ @infuscomus

Today in the afternoon (in 7 hours) I try to build a minixp for 64 processors and full acpi with IDE drivers
Dietmar
#5622diderius6⇗ @infuscomus

May be the reason for reboot of minixp is just,
that the driver for the Sata harddisk cant be loaded.
And when it is an AMD board,
iastor will not work there at all
and I think an IDE driver also not
Dietmar

PS: Storport driver does not work under XP SP1.
#5623infuscomus⇗ @diderius6

I recall you said XP source code has a storport, does that work?
#5624isopc1999a⇗ @canonkong
Good news for upcoming platforms users
#5625diderius6⇗ @infuscomus

This storport driver from XP SP1 sources does not work together
with the driver from ⇗ @skullteria,
I tested
Dietmar

 

Page 376

#5626infuscomus⇗ @diderius6

try this storahci maybe?

⇗ https://sourceforge.net/projects/storahc...ows-2003/files/

source code is available too
#5627skullteriaWell, Storport from XP SP1 or Server 2003 RTM has missing functions than 2003 SP1 or SP2 versions
#5628diderius6⇗ @infuscomus ⇗ @skullteria

Yes, I tested a lot of different storport.sys
together with the new storahci.sys driver from Kai.
Does not work on XP SP1
Dietmar
#5629ruthanWith source code, is not possible now add just something like WinXp start step by step, or some more debug messages or info, about method / line when it crashes or something like that? To make crashes more user friendly?
#5630diderius6⇗ @ruthan

Not for all files there is Source Code.
And most what you ask for can be done,
just crazy hard work
Dietmar
#5631infuscomus⇗ @diderius6 ⇗ @daniel_k

How do I tell XP to not prompt with the Add Hardware Wizard?

I want to get the NIC driver installed so I can remote desktop into it to see what device manager says about the USB not working, but the prompt is preventing the NIC from installing.
#5632ruthanI did same thing, sideloaded NIC drivers, but it was just through nlite, NIC was detected during installation.. not through some bat installer etc.
#5633ruthanOther option is use Paragon HDD Suite - highest editions, they have P2P adjust was means that they are able from boot CD / USB add some drivers to existing system.. Other option is just temporarily add some NIC, which have already build in XP drivers.
#5634infuscomus⇗ @ruthan

The backported USB 3.0 drivers not working is making this way more of a hassle than it should be.
#5635ruthanLets start with NIC drivers, its more easier..

 USB is other matter, more complicated - i made some spread sheet about it:
⇗ https://docs.zoho.com/sheet/published.do...22a5b950420cb22  you really need to connect USB devices one by one, to discover and avoid ones which are causing login screen black screen freeze.

  Maybe, maybe if these ebay Chinese PS/2 PCI-E cards are complete fakes, now with source codes some can make them working to avoid these problems.
⇗ https://www.ebay.com/itm/PCI-Express-To-...8oAAOSwtzVfZ5Iw

The following contents have been linked to this post:
#5636infuscomus⇗ @ruthan

The black screen freeze was caused by having too many CPUs - more than 32 and XP dies.

USB 3.0 not working is a separate problem.
#5637diderius6⇗ @infuscomus

Set up a XP SP1 on Threadripper with the acpi.sys from outerspace ) with reduced processor number.
Then change all files against the files from minixp. Winlogon you can change or not, 2 different tries.
config (registry) do not change against the config from minixp.
Then set the processor number to full and see what happens
Dietmar

PS: Next try would be vice versa: Change only config on minixp and add the missing drivers for the harddisk to minixp.
#5638infuscomus⇗ @diderius6

I'm not sure how to setup XP SP1 without storport - I have no AHCI driver without it.
#5639diderius6⇗ @infuscomus

In your special case I think the only possibility is to boot XP SP1 from Ram

Dietmar
#5640infuscomus⇗ @diderius6

regarding the NIC add hardware install wizard prompt do you know of a way to skip it? - remember I don't have any input devices at the moment.

 

Page 377

#5641diderius6⇗ @infuscomus

I do not know a way to do this.
The only way in my eyes is, to integrate the Nic driver in the Setup CD
Dietmar
#5642ruthan
Zitat von ⇗ infuscomus im Beitrag ¶ #5636

The black screen freeze was caused by having too many CPUs - more than 32 and XP dies.


 Are sure, i would expect some bluescreen instead of that.. regardless, i saw zillions of black screen caused just by connected incombatible USB devices to port, even without any drivers.
#5643infuscomus⇗ @ruthan

I'm sure its a more than 32 CPUs problem - I can repeat the freeze by just turning on more CPU cores.
#5644Mov AX, 0xDEADHi ,

Unfortunately HAL XP SP1 sources is not same as SP3 version, probably W2003 sources was used (for example some fields in binary was changed to from "long" to "long long",  same changes applied to W2003 HALs sources )
Also SP2/SP3 HALs was compiled with disabled definition _HALPAE_ (important option for translation physical adresses + dma stuff), so physical adresses are equalent to usual Pointer to memory.
If you try to repeat sp3 build and disable _HALPAE_, you will get compilation error on few functions because MS did some other changes to make it compilable
#5645daniel_k⇗ @Mov AX, 0xDEAD

Even with the patcher you've guide me to create, much more patches are needed?
Do you think it's possible or feasible to completely replicate PAE from W2003?
#5646infuscomus⇗ @Mov AX, 0xDEAD

I'm still not having any luck with USB 3 on threadripper - do you have any new drivers I could try?

also, any news on ntoskrnl extender?
#5647Andalu
Zitat von ⇗ infuscomus im Beitrag ¶ #5412
it seems that win2k3 supports accessing larger than 2tb disks - and the import tables match XP.

The w2k3 drivers worked in XP for my seagate 4TB GPT disk, but only if mounted on a sata to USB3 adapter with the ASM1051 chipset and its older firmware version (101026_00_68_00).
None of the other adapters I have tried work (chipsets JMS577, ASM1153E, VL715) or maybe I need to find the older firmware versions for them too.
With the original XP v5512 drivers the same GPT disk is not detected.

Below the image with the 'bytes per sector' (512) as recognized in Win10 for the drive connected to a sata port and if inserted in the original USB3 enclosure (a seagate expansion with the JMS577 chipset):



The same GPT disk recognized in XP with the ASM1051 sata to USB3 adapter (4096 'bytes per sector'):

#5648diderius6⇗ @infuscomus

On this weekend I make a try for ramboot of my minixp.
This is very interesting for me also,
because this XP will be booted on any compi
without any modification
Dietmar
#5649Mov AX, 0xDEAD
Zitat von ⇗ daniel_k im Beitrag ¶ #5645
@Mov AX, 0xDEAD
Even with the patcher you've guide me to create, much more patches are needed?
Do you think it's possible or feasible to completely replicate PAE from W2003?

We patched only place where hal select creating dma map registers or not, but after looking at sources i see much more places with checks about active PAE or not. Problem is lack of sp3 sources, for controlling PAE MS used newer variables, W2003 SP2 and WinXP SP3 HAL's sources is next generation, but bindiff show many changes between.
Currently i dont see any tips to improve SP3 HAL, it work properly with "proper" vendor's drivers, so maybe HAL itself is good enough.
Also i know a little about DMA, too "dark" place for me
#5650Mov AX, 0xDEAD
Zitat von ⇗ infuscomus im Beitrag ¶ #5646
@Mov AX, 0xDEAD
I'm still not having any luck with USB 3 on threadripper - do you have any new drivers I could try?
also, any news on ntoskrnl extender?

Hi infuscomus,
- I dont have more usb3 drivers, Win8.0 was last, Win8.1 require implementing TimerEx functionality, i just lazy to do this ):
- What news are you talking ? extender has enough exports required by popular drivers, i dont know what more to add, some ask me to add videodriver's funcs, but it is useless because native vista+ video drivers not compatible with XP due significal changes in graphic subsystem
#5651infuscomus⇗ @Mov AX, 0xDEAD

I think it would be good to get the Windows 8.1 USB 3 driver working in XP to have compatibility for the few remaining USB 3 controllers that don't work with the windows 8.0 driver.

How much extra work would be required to get the windows 8.1 USB 3 driver working?
#5652gordo999Question on the use of windbg to trace the code on system modules. My experience with windbg is that it will not allow you to trace through system code (ring 0). At the entry point to system code you will encounter a 'SYSENTER' function which prepares for the transition from user mode to kernel mode.  Windbg seems to jump over that call while completing the system code but it does not allow you to enter system code and see what's going on.

In the old days, I used the softice debugger and it would step into system code and allow you to trace through it.

If anyone knows of a way to do that with windbg, I'd appreciate you sharing that knowledge. With softice, I could trace through Hal or any other system code. Not with windbg so far. I am currently tracing through an app and windbg allows tracing through ntdll.dll but it is a user mode module. At least, it transitions user code to system code. Whenever there is a call into the kernel code, a SYSENTER appears and windbg will not enter system code.

There may be a way to set a BP somewhere in system code and get past SYSENTER, I don't know.
#5653daniel_k
Zitat von ⇗ infuscomus im Beitrag ¶ #5651
I think it would be good to get the Windows 8.1 USB 3 driver working in XP to have compatibility for the few remaining USB 3 controllers that don't work with the windows 8.0 driver.

Your issue is related to the ACPI driver.
It is not properly enumerating/assigning resources to the devices.

⇗ @canonkong has just confirmed that my ported Win8 USB3 driver works on his friend's TRX40 system running Win7.
#5654infuscomus⇗ @daniel_k

OK, so which ACPI driver works for TRX40?
#5655daniel_k
Zitat von ⇗ infuscomus im Beitrag ¶ #5654
OK, so which ACPI driver works for TRX40?

I think there is currently none.

You are the first one to try XP on TRX40 here.
Unless someone steps in and implements ACPI 5.0 using the leaked souce code, I think there isn't much we can do for the existing patched acpi driver.

Did you try MPS Uniprocessor / Multiprocessor PC using fewer cores?

 

Page 378

#5656infuscomus⇗ @daniel_k

MPS does not work on any of my AMD systems - no MPS table in BIOS.
#5657daniel_k⇗ @diderius6
Send me a PM with the drivers you use (storport.sys and xhci driver) as I don't know which version you're using.

I'm patch them for you. Tried them myself here, works just fine.
Did some researching and learned that the missing import, KeFlushQueuedDpcs, does nothing on SP2.  Serioulsly, it's just a RETN 0.
#5658Rockylpx⇗ @Fernando
Take a look at my setup. No BSOD  so far . Front Usb  ports not working. wireless keyboard with mouse works fine. Internet works . I followed almost all the suggested methods. below are the missing drivers .
amd Gpio driver
amd  smbus driver
amd gpio ( for promontory)
Balanced power plan
amd pci device driver
oem applications profiles
Drivers . These only exists in x64 bit. it was on the CD that came along with motherboard . Can you help me

Thank you once again



Rockylpx has attached images to this post  ⇗ Capture-0.jpg
#5659Fernando⇗ @Rockylpx:
Welcome to the Win-RAID Forum!
Since you problems have
a) nothing to do with the topic of ⇗ >this< thread, where you posted them, and
b) you are using the extremely old OS Windows XP,
your post has been moved by me into this already existing thread, which is the home of our XP experts.
I cannot help you myself and hope, that you will get some support here. It may be a good idea to check and post the HardwareIDs of the devices, which are shown within the Device Manager with a yellow question mark.
Good luck!
Dieter (alias Fernando)
#5660Mov AX, 0xDEAD
Zitat von ⇗ infuscomus im Beitrag ¶ #5651

How much extra work would be required to get the windows 8.1 USB 3 driver working?

You already wrote answer - ¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (371)

FX - power framework, not exist on pre-win8 kernels, just return zero/error
Wnf - another crap, return zero/error

need only this:
ExCancelTimer
ExDeleteTimer
ExSetTimer     
ExAllocateTimer
#5661Mov AX, 0xDEADToday played with "KernelEx" by Xeno86, this amazing tool allow add to existing DLL any custom code written in C or ASM !
Main feature is patch engine, it can do many things automaticaly - extend export table, add new imports, create final file. Tools has some little bugs (for example it erroneous process DLL with bound imports, many Windows's dll  have this import type). Support of C language is very limited - only GCC supported with additional limits on code struct.
Still unique tool for adding new export to critical files like ntdll.dll becase if you try use usual redirection tricks on it, you get troubles
#5662schreibersteinI mistakingly assumed that this ~900MB RAM limit would only occur on Windows XP SP3 (without PAE patch).
However, the situation is the same on i686 Linux.

I submitted a ticket to Gigabyte asking if there is some kind of fix for the abysmal amount of available memory in 32-Bit mode.
Well, I doubt much will come from it, but Gigabyte has helped some of us hackintosh folks in the past (supplying a modified BIOS for MSR unlocking, I believe).
Maybe they will have mercy.

schreiberstein

⇗ @Rockylpx
Interesting how you have 3.25GB with 3rd gen Ryzen.
#5663diderius6Waaoh ,
I just get an storport.sys from ⇗ @daniel_k
that works with the Storahci.sys from Kai Schtrom under XP SP1,
nicccee,
now XP SP1 comes very near to XP SP3

Dietmar

PS: I just install my Optane nvme on XP SP1 with this nice storport.sys from ⇗ @daniel_k .

#5664ruthan@ schreiberstein I had some problem, you need WinXPAE fix from this thread to pach dlls,i have one from post 3631, i dunno if there is newer one.
#5665infuscomus⇗ @daniel_k

I just tested your ACPI 2015 version to see if USB 3 enumerated - no such luck.
#5666YuriyCN[ENGLISH]
Updated set of solutions for installing Windows XP on a modern PC from 10/27/2020 (detailed descriptions, mod drivers, programs, ready-builds OS)

[RUSSIAN]
Обновленный комплект решений по установке Windows ХР на современный ПК от 27.10.2020 (подробные описания, модернизированные драйвера, программы, готовые сборки ОС)

TXT (65KB) - ⇗ https://yadi.sk/d/HAR4hfxiAenpbg
#5667infuscomus⇗ @diderius6

I tested your new minixp -

With SMT (Simultaneous Multi Threading) disabled = 24 CPUs

Option 1 - XP Logo - 7B BSOD
Option 2 - XP Logo - 7B BSOD

With SMT (Simultaneous Multi Threading) enabled = 48 CPUs

Option 1 - instant reboot
Option 2 - instant reboot

So it seems setting MAXIMUM_PROCESSORS to 64 was not the correct solution and it must be something else.
#5668diderius6⇗ @infuscomus

Dows minixp boot with 1+1 processor setting?
If not, still the harddrive is not recogniced
Dietmar
#5669infuscomus⇗ @diderius6

On 1 + 1 setting it also 7B BSOD
#5670Rockylpx⇗ @schreiberstein

This OS was installed as it is . Drivers were manually  inserted ( front usb still not working) I didn't meddle with the boot.ini or fix the PAE . It has actually  16 GB DDR4 .  Until I find the last 32 bit drivers I can't go any further

Rockylpx.

 

Page 379

#5671diderius6⇗ @infuscomus

I make a new XP SP1,
which boots from NVME. So,
put this XP SP1 to an nvme disk.
I changed in this XP SP1 only ntoskrnl.exe and hal.dll
(both full acpi support) against the versions build for 64 processors
Dietmar
#5672schreiberstein⇗ @daniel_k Do your Creative drivers for the X-Fi series work more robustly on Windows XP with PAE than the drivers for the Audigy 2 series?

I am mostly concerned about using EAX properly when PAE is enabled.
#5673daniel_k⇗ @schreiberstein

My drivers have no actual driver changes, user mode only.
Last time I've tried these cards on XP with PAE enabled, they didn't work. Will see if there is something we can do about it.

Curiously, C-Media cards do work fine, although they have just audio controllers, no DSP
#5674savagebananaHi everyone,
so i am trying to install windows xp on my asus x542uq laptop.
I have created bootable xp cd and i have used iso from this link
⇗ https://www.zone62.com/downloads/softwar...?page_comment=1

I have integrated optional ahci drivers.
The thing is when the setup starts copying file...it starts giving errors such as "setup cannot copy file...."
I have tried creating 2-3 more bootable cd but getting always same result
#5675infuscomus⇗ @savagebanana

If you're burning a CD, burn it on a slower speed and use verify after burning.
#5676gordo999⇗ @daniel_k ...I am not using PAE and my Xf-i card works fine on XP. I think I'm using your drivers, not sure. I was but I reloaded drivers only from the Creative site. BTW...I had XP running on a hard drive for an earlier Intel mobo and upgraded to the B360 chipset with the i5-8400 series processor. I did not have to remove the sound card driver package but I had to mess with it to get the features working correctly.
#5677gordo999
Zitat von ⇗ savagebanana im Beitrag ¶ #5674
I have integrated optional ahci drivers. The thing is when the setup starts copying file...it starts giving errors such as "setup cannot copy file...."
⇗ @savagebanana ...what infusconous said...I burn at the lowest rate, usually 2 to 4 times speed. I also use Imgburn, which is good at detecting required settings.

With acpi.sys, I did not bother compressing it, I just loaded it in nlite as acpi.sys full size. The windows installer doesn't seem to care.

Another thing...you need to run the XP nlite version and run it on an XP based OS, even in a virtual machine. I tried running it on W7 and the installation failed.
#5678infuscomus⇗ @gordo999

for nlite you need .NET framework 2.0 - windows 10 will prompt for this and install it so it works on 10, not sure about 7 though.
#5679sashbbbb
Zitat von ⇗ diderius6 im Beitrag ¶ #5671
@infuscomus

I make a new XP SP1,
which boots from NVME. So,
put this XP SP1 to an nvme disk.
I changed in this XP SP1 only ntoskrnl.exe and hal.dll
(both full acpi support) against the versions build for 64 processors
Dietmar


this is full log for all windows xp x68 for  notebook lenovo laptop 100-15iby.
need working aspi !!
THE BEST ASPI by Fernando on boot windows , only PC power of /
Need change this aspi for full boot windows Xp

loading in different boot modes and change all aspi.sys gave nothing.
Screen bag--

sashbbbb has attached files to this post

sashbbbb has attached images to this post  ⇗ IMG_20201103_142224.jpg  ⇗ IMG_20201103_145042.jpg  ⇗ IMG_20201103_150658.jpg  ⇗ IMG_20201103_150818.jpg  ⇗ acpi mod Fernando(234kb).
#5680canonkongHere is the early win8 M1 64bit (NT6.1.7850) system drivers, maybe can help us. If you need, I can upload the 32bit too.
⇗ https://yadi.sk/d/ScEmx9Ar9v9nRw
#5681infuscomus⇗ @canonkong

I'm interested in the 32-bit version.
#5682canonkongHere is the early win8 M1 32bit (NT6.1.7850) system drivers, maybe can help us.
⇗ https://yadi.sk/d/g4ww_L4k2Lpk-Q
#5683diderius6⇗ @sashbbbb

I take a look at the DSDT table from the notebook  Lenovo 100-15IBY Laptop (ideapad)  
Bios CCCN21WW(V2.07) from 09 Jan 2017 . This Insyde Bios contains the same strange sleep order for Sata devices as on other Baytrail notebooks from Lenovo. Without modding this DSDT it is nearly impossible to install a full acpi XP SP3 on it,
because no Sata harddisks are found.

For me, the only way for XP without modding Bios is to set in Bios the harddisk to "compatible" mode IDE.
Ram boot of XP could work also. NVME boot of XP does not work, because this board hasnt.

Dietmar
 Device (SATA)
{
Name (_ADR, 0x00130000) // _ADR: Address
OperationRegion (SATR, PCI_Config, 0x74, 0x04)
Field (SATR, WordAcc, NoLock, Preserve)
{
Offset (0x01),
PMEE, 1,
, 6,
PMES, 1
}

Method (_STA, 0, NotSerialized) // _STA: Status
{
If ((OSEL == 0x02))
{
Sleep (0xC8)
}

Return (0x0F)
}

Method (_DSW, 3, NotSerialized) // _DSW: Device Sleep Wake
{
}
}
#5684sashbbbb
Zitat von ⇗ diderius6 im Beitrag ¶ #5683
@sashbbbb

I take a look at the DSDT table from the notebook  Lenovo 100-15IBY Laptop (ideapad)  
Bios CCCN21WW(V2.07) from 09 Jan 2017 . This Insyde Bios contains the same strange sleep order for Sata devices as on other Baytrail notebooks from Lenovo. Without modding this DSDT it is nearly impossible to install a full acpi XP SP3 on it,
because no Sata harddisks are found.

For me, the only way for XP without modding Bios is to set in Bios the harddisk to "compatible" mode IDE.
Ram boot of XP could work also. NVME boot of XP does not work, because this board hasnt.

Dietmar
 Device (SATA)
{
Name (_ADR, 0x00130000) // _ADR: Address
OperationRegion (SATR, PCI_Config, 0x74, 0x04)
Field (SATR, WordAcc, NoLock, Preserve)
{
Offset (0x01),
PMEE, 1,
, 6,
PMES, 1
}

Method (_STA, 0, NotSerialized) // _STA: Status
{
If ((OSEL == 0x02))
{
Sleep (0xC8)
}

Return (0x0F)
}

Method (_DSW, 3, NotSerialized) // _DSW: Device Sleep Wake
{
}
}


is  not booting  in mode  "compatible"

sashbbbb has attached images to this post  ⇗ is not booting in mode co
#5685diderius6⇗ @sashbbbb

Use an original XP SP3 CD.
Change there only acpi.sys against this one
⇗ https://ufile.io/7yoq75ti

Set harddisk mode to "compatible" in Bios.
Enable all for CSM in Bios, no secure boot
Dietmar

 

Page 380

#5686cerulliber1hello everyone,
I've search a lot for a click and "burn" iso for a Ryzen pc
If somebody can pm me a dowload link would be great !
or at least point me which xp version should I try and a small tutorial.
(my specs msi b450 pro m.2 max, ryzen 240ge  gt730, 2x8gb ram 3200, ssd sata 256gb gigabyte ( GP-GSTFS31256GTND )
thanks you so much!
#5687Mov AX, 0xDEADDLL Merger

Command line tool to merge two x32 DLL to one DLL, currently it can merge sections, relocations, imports and exports.
Main purpose is adding external exports from second DLL to first DLL. You can create second
DLL with any language/compiler, but take care about some limitations.
Tool uses open-source "PE Bliss" library for most PE manupulations.

Limitations:
1) Both DLL must have same section aligment
(user-space DLLs usually have 0x1000, drivers have 0x80, to change aligment in MS link.exe, use option "-align")
2) Second DLL can't have bound or delayed imports
3) Resources section from second DLL will added like separate section, no any merging
4) If second DLLs has same exports ordinals with first DLL, they will be replaced to new generated numbers
5) DLLEntryPoint in second DLL is ignored, if you need hook this, manualy change Entry Point in first DLL PE Header
6) Merging TLS/LOAD_CONFIG of second DLL not supported
7) If second DLL import some of exports from first DLL, only internal exports allowed. To import "forwarded" exports from first DLL, recompile second DLL to import directly from "final" DLL

Usage:
dll_merge.exe advapi32.dll new_exports.dll

Take attention on system DLLs like ntdll.dll, they chained each to each regarding
coffbase.txt/baseaddress.x86.fre.* files and normaly you can't increase size of these DLLs without overlapping adress space.
To fix this problem find enough hole in adress space, for example in Windows XP SP3 SXS.DLL probably is last dll in chain,
so range 0x7E7D0000 - 0x7F6F0000 is free.

To change loading adress of DLL , use PE_Rebaser:
pe_rebaser.exe merged_advapi32.dll 7E7D0000

Finaly fix PE checksum with any tool:
checksum.exe rebased_merged_advapi32.dll


Simple example of new_exports.dll(new_exports.c):

 
#pragma comment (linker, "/export:newexport_funct1=_newexport_funct1@0")
#pragma comment (linker, "/export:newexport_funct2=newexport_funct2")
#pragma comment (linker, "/export:_newexport_funct1@0,@7777,NONAME")
#pragma comment (linker, "/export:export_forward=kernel32.xxxx")

#include "windows.h"

static int global = 123;
int global2 = 123;

void __stdcall
newexport_funct1()
{
global = 456 ;
}

void __cdecl
newexport_funct2()
{
global2 = 789 ;
}


void
DummyDLLEntryPoint(void *arg0, void *arg1, void *arg2)
{
}

Mov AX, 0xDEAD has attached files to this post
#5688Mov AX, 0xDEADHi,
I present my "side" open-source mini project, sucessfully tested on ntdll.dll and avapi32.dll !
Sources will be published later.
#5689diderius6Hi,
I have a Flex 10 Lenovo Ideapad.
There I installed full acpi XP SP3. In next holidays I try to enable the video driver under XP SP3 for the n2806 chip also.
I also changed the Wifi pcie mini card against a Lan Ethernet pcie mini card with realtek 8111h chip and RJ45 connector.
But when I reboot this notebook,
I get message
"Unauthorized wireless network card is plugged in. Power off and remove it"
I make a full dump direct of my Bios chip with a very good EEpromer Revelprog IS.
My Bios version is from original 64 bit Win01BTIL99.fd from 2015.

⇗ https://ufile.io/3kkvgocx

Any help is welcome to remove the Whitelist for the Wlan card on the Flex 10 Bios,
thanks a lot
Dietmar

EDIT: With search for text string via UEFI tool for "unauthorized" I found this message in
Section_PE32_image_B6845A50-9BAD-44DC-BE3E-20A8693D46E8_DeviceSupport_body.efi
But I have no idea how to edit it.
Maybe, that Ida Pro can help. But my version does not support *.efi files.

EDIT 2: May be the easiest solution is just to delete whole Guide DeviceSupport.
This crazy word "unauthorized" happens only in Guide in Bios from Lenovo.
#5690ruthanThis Lenovo problem they have some whitelist for used wireless cards.. online are some cracked bioses.. but often outdated.
#5691diderius6Here I think,
the whitelist can be killed. May be just forced jmp EB.
It is from DeviceSupport from Bios of Flex 10
Dietmar

⇗ https://ufile.io/ian7jb6r
#5692LabudicoHello, Who can tell me because appeared this error? Page file is on, free space on the ssd 100GB.
PAE128GB work good, because i can use over 4GB Ram.
#5693gordo999⇗ @Labudico ....Maybe someone has a better explanation, I have not tested this kind of extended memory on XP 32-bit. I don't think Autocad can use that extended memory in XP x86 unless you have drivers like the PAE drivers in Server 2003. Those drivers allow apps to access over 4 Gb RAM in a 32-bit system.

If I'm wrong, someone will reply and correct me. My understanding is that the extra memory available in XP 32-bit is to run a RAM drive. However, apps written to run on XP 32-bit are assigned a 2 Gb virtual memory space for the user. I don't think the app will know about memory beyond 2Gb for user space. There may be a way to fix that, I don't know.

If you look at the address space on a 32 bit system, the user space is from 00000000 - 80000000 and the system uses 80000001 - ffffffff, where 0xffffffff = 4 Gb. If you look at a 64 bit system, there are another 8 spaces to the left of ffffffff as in 00000001 ffffffff. One 64-bit app I'm working on right now has addresses like 000007fe e4f61dfe.

Your PAE extended space will begin at 1'00000000 and if Autocad doesn't have the addresses capable of reaching those extended address, which it won't with normal 32-bit XP, then it cannot see that extended memory. I would think it would need a translator of some kind as found in Server 2003. I think it has a mechanism for temporarily storing 32 bit address pages in extended memory and retrieving them when required.
#5694Labudico⇗ @gordo999 - Thnaks, for repply, you right - Autocad 32bit not capable to use more 2GB, but i find solution - open each files in a separate process (window) and separately each open file in a separate does not reach 2GB and so you can open 100 files and fill at least all 32GB of RAM.
#5695Mov AX, 0xDEAD
Zitat von ⇗ gordo999 im Beitrag ¶ #5693

If you look at the address space on a 32 bit system, the user space is from 00000000 - 80000000 and the system uses 80000001 - ffffffff, where 0xffffffff = 4 Gb.

Hi,
/3GB in boot.ini change memory partitioning to "3Gb User + 1Gb System"
autocad.exe must have bit LARGEADDRESSAWARE in PE Header (can be easy setted with any PE editing tool)

XP even with /3GB has issues with allocation memory above 2G, maybe on W2003 it may be better, i dont know...
#5696gordo999⇗ @Labudico  ....Good. You found a solution. I don't know how XP 32-bit knows about the extra memory but it must have something to do with kernel code related to PAE. Good to know.

Also, read the post from ⇗ @Mov AX, 0xDEAD ...about adjusting the PE header and adding the line /3GB to boot.ini. The following example applies to Win 7 but the same should apply to XP 32-bit if you edit the boot.ini file in the C:\ directory. It is usually hidden so you may have to edit the file attributes using the attrib command in a cmd window.

⇗ https://knowledge.autodesk.com/support/autocad/learn-explore/caas/sfdcarticles/sfdcarticles/How-to-enable-a-3GB-switch-on-Windows-Vista-Windows-7-or-Windows-XP-s.html
#5697gordo999
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #5695
XP even with /3GB has issues with allocation memory above 2G, maybe on W2003 it may be better, i dont know...
⇗ @Mov AX, 0xDEAD ....thanks for advice on PE header and /3GB command for boot.ini.

I may be wrong but I heard that XP SP1 allowed access to >4GB till Microsoft removed that feature. May be similar to W2003.

There is also a file in the SP1 DDK called ntldr_dbg that is a replacement for NTLDR during boot that can be used with a kernel extension .kdfiles so you can get a remote windbg session to stop before the OS loader. Have not tried it yet, just passing on the info in case it interests you. Apparently it requires a serial COM 1 connection between host and target but I have a USB-serial adapter that has worked for me in the past. Such a setup may help you troubleshoot acpi.sys, etc. during the boot stage. My B360M as target has a serial port.

⇗ https://kobyk.wordpress.com/2008/07/04/replacing-boot-load-drivers-with-the-windows-boot-debugger/
#5698Mov AX, 0xDEAD
Zitat von ⇗ gordo999 im Beitrag ¶ #5697

There is also a file in the SP1 DDK called ntldr_dbg that is a replacement for NTLDR during boot that can be used with a kernel extension .kdfiles so you can get a remote windbg session to stop before the OS loader. Have not tried it yet, just passing on the info in case it interests you. Apparently it requires a serial COM 1 connection between host and target but I have a USB-serial adapter that has worked for me in the past. Such a setup may help you troubleshoot acpi.sys, etc. during the boot stage. My B360M as target has a serial port.


Hi gordo,
This feature dont actually needed because usual kernel windbg is enough, you can set breakpoint  after kernel+hal was loaded and before loading any driver
#5699infuscomus⇗ @Mov AX, 0xDEAD ⇗ @diderius6 ⇗ @daniel_k

So I finally got some USB running through an addon card - ASMedia 1242 chip - PCI\VEN_1B21&DEV_1242

The unknown USB devices I think are left over failed enumerations on the AMD USB controllers - they have IDs like

USB\VID_0000&PID_0001\8&308CDB7C&0&4
USB\VID_0000&PID_0001\8&308CDB7C&0&5
USB\VID_0000&PID_0001\8&308CDB7C&0&6
USB\VID_0000&PID_0001\8&14937D77&0&5
USB\VID_0000&PID_0001\8&14937D77&0&6

But the AMD USB 3.0 controllers -PCI\VEN_1022&DEV_148C - PCI\VEN_1022&DEV_149C
and hubs USB\ROOT_HUB30&VID1022&PID148C - USB\ROOT_HUB30&VID1022&PID149C

by themselves seem to be working fine at least according to windows XP. It's just the end devices that failed.

The USB hub on the thunderbolt 3 controller is in a failed state though, but that is expected without a thunderbolt driver.
#5700diderius6⇗ @infuscomus

On the Lenovo Flex 10 happens the same, VID_0000&PID_0000 for all USB devices, even mouse.
There only mod of the DSDT helps. The idea how to mod the DSDT there I get from older Bios from Baytrail boards.
I also see, that addon cards for PS/2 exist
Dietmar

⇗ https://www.amazon.de/MZHOU-PS2-Controll...e/dp/B07RLFPDNZ

The following contents have been linked to this post:

 

Page 381

#5701infuscomus⇗ @diderius6

Fortunately for me, the ASMedia PCI-E USB 3.0 is working correctly so I won't need to get that PS/2 card.

Could you try and do a mod of my DSDT table for me? - uploaded already in this thread - ⇗ resolving an A5 BSOD in windows7 using grub2?
#5702infuscomus⇗ @Mov AX, 0xDEAD

could the USB\VID_0000&PID_0001 problem be caused by a bug in the windows 8.0 USB driver?
#5703diderius6⇗ @infuscomus

It happens also with the AMD USB driver from ⇗ @daniel_k .
In the DSDT the xhci driver is blocked for XP,
but I have no idea how to mod this DSDT,
Dietmar
#5704infuscomus⇗ @diderius6

Now that I have XP in a usable state I would like to try and use windbg to see if I can see where XP dies when there is more than 32 CPUs.

I have no experience with this though, so if you have a step-by-step guide or something like that for beginners I'd appreciate it.
#5705gordo999
Zitat von ⇗ infuscomus im Beitrag ¶ #5704
I have no experience with this though, so if you have a step-by-step guide or something like that for beginners I'd appreciate it.
⇗ @infuscomus ...the Net is full of step-by-step guides. The problem is that the learning curve is steep and requires a constant focus on application of the various commands. It was easier for me since I had years of experience with debuggers. Even at that, I am likely not past the novice stage yet with windbg.

For kernel-mode debugging between two computers there are different rules for different OSs. Whereas you can set up network debugging between a W7 host and a W10 target you can't do that between W7 and XP because net debugging does not exist in such an environment. I had a good setup using a USB-serial port adapter on a W7 host connected to a B360 mobo with serial port as target. I can't get it going anymore for some reason. I suspect its because I am dual booting W7 and W10 on the target machine and I found out by fluke that the W10 boot loader needs to be in place rather than the W7 bootloader.

I also had a net remote debugging session going between W7 and W10. The point is the debugging connection can be really finicky and setting it up could take days if not weeks. Meantime, you lose a few years off your life through exasperation.

Many people use a VM environment but I found that can be finicky as well. You also need a symbol store setup since windbg is reliant on symbols (pdb files). You have to make sure the paths are set correctly so windbg can find its symbols.

I hope you go for it and get it going. Just warning you that it might not be easy. It's definitely worth it because what is going on here with XP revival is often being done in the dark. Better to see the code and how it is behaving. That's not as easy as it sounds either since the bloatware used today is full of code that has no meaning to someone tracing through it.
#5706Mov AX, 0xDEAD
Zitat von ⇗ infuscomus im Beitrag ¶ #5702
@Mov AX, 0xDEAD
could the USB\VID_0000&PID_0001 problem be caused by a bug in the windows 8.0 USB driver?

Hi Infuscomus,
this vid/pid seems similar to previous 0000/0000 with amd driver, this mean one - controller was not configured properly,
it detect some inserted/internal device but can't communicate with it
in case with amd driver this was failed hardware register programming when running on PAE systems.
but MS USB3 driver is very good and widely tested by end-users, there must no problem with it (excluding acpi part), did you tried to run original Windows 8.0 on your fresh MB (for example any LiveCD with Win8.0) ?
#5707infuscomus⇗ @gordo999

Hopefully I can learn how to do it.

⇗ @Mov AX, 0xDEAD

Windows 8.0 gives an ACPI BSOD - It disappears very quickly but I'm reasonable sure it is the same A5 BSOD 0x11 0x8 that windows 7 had (from my testing it was the CPU SSDT giving the BSOD)

So Windows 8.0 acpi.sys will need patching before I can properly test.

⇗ @diderius6

can you patch the windows 8.0 acpi.sys driver so I can test?



infuscomus has attached files to this post
#5708diderius6⇗ @infuscomus

AMLILoadDDB in Win8 is other organized than in Win7 or XP.

So, I can only cross fingers, that one of the 4 acpi.sys works
Dietmar

⇗ https://ufile.io/ff6xhp3y

PS: Today I try to enable a Windbg over Lan connection with the mini Pcie adapter to the Lenovo Flex 10 notebook.
I get there everything to work under XP SP3, only not the graphik driver. This will be a hard job.
But the setting on of this Lan session via Windbg  XP SP3 <=> XP SP3   I will describe here in detail.
#5709infuscomus⇗ @diderius6

Thanks, I will test this when I can.
#5710diderius6After crazy work I succeed to connect the Lenovo Flex 10 notebook
via an pcie mini to a RJ45 connection.
I overcome the Whitelist in Bios of the Flex 10 with just deleting whole entry
"DeviceSupport"  GUID: B6845A50-9BAD-44DC-BE3E-20A8693D46E8 in Bios and flash with Epromer.

The Realtek 8111H pcie minicard to RJ45 does not work on the Flex 10 board.
I tried 2 different cards. The card is correct listed in Device Manager,
the LED shows with yellow and green led connection but always the message appears,
that no Lan cable is connected.

Then I try an Intel Pcie minicard to Rj45 with chip 82574L from 2008(!)  VEN_8086&DEV_10D3 .
This card is supported for debug via Lan on Win8 and Win8.1 and XP SP3 now thanks to ⇗ @Mov AX, 0xDEAD .
And voila, for the very first time I have a chance to debug the Lenovo Flex 10 notebook via Lan with Windbg
Dietmar



#5711infuscomus⇗ @Mov AX, 0xDEAD ⇗ @diderius6

using patched acpi.sys from diderius6 I was able to boot into windows 8.0
Once booted in Windows 8.0 USB devices were enumerated correctly - So does this mean the problem is ACPI? or not ACPI?

Should I try and use the usbccgp.sys driver from windows 8.0? could that resolve this USB\VID_0000&PID_0001 problem?
#5712diderius6⇗ @infuscomus

I think, the problem is only in DSDT.
Without building a whole new acpi.sys for XP (on the base of win8.1(!) ) the only chance is,
to look for a similar Bios, where the motherboard works also under win7
and look, what is changed for xhci in its DSDT
Dietmar

PS: This methode works for the crazy Bios from the Flex 10 board. No win7 or win8 can be installed there.
Only win8.1 and win10. And with modded acpi.sys alone, all USB devices have VID_0000&PID_0000.
With for xhci modded DSDT, all USB devices are recogniced correct.
#5713infuscomus⇗ @diderius6

Do you have original and modded DSDT for your lenovo flex 10?
I'd like to compare them to get some hints for what I need to change.
#5714diderius6⇗ @infuscomus

Here it is
Dietmar

⇗ https://ufile.io/sd54s8b0
#5715infuscomus⇗ @diderius6

Thanks, I'll take a look at them.

 

Page 382

#5716infuscomus⇗ @diderius6

I see the flex 10 original has OS Detection code that was removed in modded DSDT, but my DSDT does not have this code around any USB devices, so it must be something else.

Perhaps Windows 8.0 acpi.sys knows more ACPI words than outerspace XP acpi.sys does and my DSDT is using the new words?
#5717diderius6⇗ @infuscomus

I think, the acpi version, which words are recogniced, is the same for Win7 and win8.
For me it would be the only chance for to mod DSDT is to find a Bios for Threadripper, that works also with win7
Dietmar

PS: Such a Bios you can download from Internet (manufacturer or somebody else) and extract the DSDT table with Uefi tool.
#5718Black Ravenyou didn't do it
you posted a request on the forum bios-mods and received a mod
#5719diderius6⇗ @infuscomus
I read, that win7 has problems with the Pcie3 mode. Make a try to switch it back in Bios to Pcie2.
And for USB it can be, that the devices are all set to sleep mode.
In win7 is a switch for any USB, not to go to sleep mode.
The MSI X399 Gaming Pro Carbon and Asus Prime X399-a can work with win7,
take a look at their DSDT
Dietmar
#5720tumagonx
Zitat von ⇗ tumagonx im Beitrag ¶ #5002
Forgot to ask, I read in nvidia forum someone complaining that driver after 332.21 break PAE support, effectively limit XP PAE to Kepler generation instead of Maxwell, is this confirmed?


just want to make correction about Nvidia driver + >4gb PAE, while driver 321.21 only support kepler, CUDA 6.0.37 SDK (cuda_6.0.37_winxp_general_32.exe) bundling PAE friendly driver (dated Apr 2014) that support maxwell GM107 chip (officially support GTX 745/750/850M/860M) but may support others through devid inject (GTX 950M/960M, Quadro K620/K1200/K2200/M600M/M1000M/M2000M).
#5721infuscomus⇗ @diderius6 ⇗ @Mov AX, 0xDEAD

Windows 7 also has the same USB\VID_0000&PID_0001 problem.

Trying to add extra code to the DSDT keeps giving a 7B BSOD.
#5722infuscomusI tried to signup to the bios-mods forum hoping someone there could help me mod my DSDT table - but I didn't get an activation email, I can't post in the forum, no one is in the live chat, and the contact us link goes to a blank page.

The web admins over there must just not care.
#5723infuscomus⇗ @Mov AX, 0xDEAD

Do you have an improved acpi.sys that might help with failed USB device enumeration?

edit:

ACPI 5048 gives A5 0x02 BSOD
#5724infuscomusI wnt looking through canonkong USB 3.0 Windows 7 Thread and noticed he mentioned you need a specific "AMD PCI" driver from the AMD chipset driver package (If I read that correctly.)

I think the one I need is - PCI\VEN_1022&DEV_1485 - It is on the same PCI bridge as the USB ports.

The chipset drivers installer won't install on XP - ⇗ @canonkong Can you extract the individual drivers from the installer?
#5725canonkong⇗ @infuscomus
Only inf fake drivers.
#5726infuscomusWell, I managed to get it working.

I installed a null driver for the ? "AMD PCI" device.
I reinstalled the USB 3.0 driver.

I think I probably just needed to reinstall the USB 3.0 driver - but at least it works now.
#5727diderius6⇗ @infuscomus

Please tell, what works now on the Threadripper board under XP
Dietmar
#5728infuscomus⇗ @diderius6

Working

USB 3 working (although I'm still not sure if that null driver is needed)

LAN working (Depends on your motherboard, I'm lucky mine has an official XP driver)

GPU working (PCI-E GT 710)

SOUND working (PCI-E Audigy Rx)

possibly working

Titan Ridge Thunderbolt 3 - there is an old Alpine Ridge Windows 7 32-bit driver I found that might work with the ntoskrnl extender, I have not tried it yet.
#5729infuscomus⇗ @diderius6

Regarding maximum processors some anon on 4chan found this
#5730infuscomusThe motherboard USB 3 ports are still non-functional in XP textmode setup.

So, at least for now, to get XP installed on Threadripper -
First - you will need to image an XP installation with pre-patched ACPI, AHCI, USB3, PAE already integrated, and then apply that image to your Threadripper system.
Second since motherboard USB ports will not work right away you will need a PCI-E USB 3 card to be able to use input devices - then you can reinstall the USB 3 driver on the motherboard USB 3 ports.

 

Page 383

#5731infuscomusThe motherboard USB ports have stopped working again!

OK, It seems disabling and re enabling the XHCI controller gets everything working, but do I have to do this on every boot?

and this also leaves me stumped for a solution for textmode setup - how do I disable and re-enable a device in textmode?
#5732infuscomus⇗ @Mov AX, 0xDEAD

Why would disabling and then re-enabling the motherboard XHCI controller suddenly make it work? any ideas?
#5733Mov AX, 0xDEAD
Zitat von ⇗ infuscomus im Beitrag ¶ #5732

Why would disabling and then re-enabling the motherboard XHCI controller suddenly make it work? any ideas?

Hi infuscomus
You question has no answer because too many actions happen between disabling and enabling in DM.
1) win8 usb3 driver is not ideal, it depends on some acpi subsystem, for example mapping ports or other things
2) when windows start usb3 driver, all usb hardware already is fine because initialized/in use by bios, mouse and keyboard controlled by bios "usb driver"
one of first action of win8 usb3 driver is switch controling of hardware from bios to driver, bios receive this command and someway reprogram usb hardware to go "switch off state", after this phase you have problem, i dont know why hardware is not work properly after win8 driver reinited it after bios's usaging
#5734Pill Monster
Zitat von ⇗ XPLives im Beitrag ¶ #5287
@Pill Monster
Zitat von ⇗ Pill Monster im Beitrag ¶ #4373
Zitat von ⇗ XPLives im Beitrag ¶ #4337
@Pill Monster
2000 Advanced Server already had > 4GB memory support.  And standard XP Pro 32-Bit could utilize above the 4GB range for a Ramdrive so it wasn't completely neutered.
Possibly you misunderstood me?
With
Zitat
"XP Pro 32-bit could utilize above the 4GB range"
 - 4GB range of what?  


   
[quote]Obviously it means what it means.  Anything ABOVE the 4GB memory limit.  If you had 32.0GB installed that would mean between 4.0GB -> 32.0GB.

Not obvious at all.    "4GB" is an ambiguous term since it could refer to total address space including space on HDD OR it could refer to RAM only.

To me memory is RAM.

To those schooled at M$ developer school memory is an inexhaustible resource consisting of RAM and when that runs out, as much swap space as an application requires, with little or no impact on performance.  
Zitat von ⇗ Pill Monster im Beitrag ¶ #4373

Licensing caps aside, the maximum amount of RAM supported by XP is exactly equal to the maximum amount of RAM supported by the CPU, less hardware reserved.  
XP Pro x86 officially supports 64GB of RAM.


   
[quote] I have already tested Server 2003 and it cannot see above 64.0GB.  But it does not mean it would not be possible for someone to find a way to extend beyond this.



Zitat
That's due to the OS Page Address Extension directory pointer limitation.  But what hardware did you test on - does it support over 64GB?    Anything over 64GB would probably be used for swap space.

Zitat von ⇗ Pill Monster im Beitrag ¶ #4373

RAM drives utilizing "hidden memory"  I label snake oil because there are no hidden addresses that can be seen by RAM disk software but not the CPU.  
RAM disks reside in something called a section object, the OS sees part of this section object - the WS partition. The CPU sees all of it and maps data in and out of the process view using pointers.

XP natively supports 36bit addressing using pae (Page Address Extension). Pae adds 4 bits to an address  - two Page Table Directories and a PTD pointer.
Until SP2 enabled was the default boot mode. Hence why XP Pro x86 is not called XP Pro 32-bit.


   
[quote] It's called XP Professional.


I know what it's called.   You missed my point; XP Professional x86 - not XP Professional 32-bit.

Zitat
The 32-Bit was tagged on because it's better for laymans to differentiate between the two.  The x86 is derived from the 8086 processor.  However seeing the x86/x64 next to each other some newbies may think the x86 is superior given the larger number.

That is nonsense.  :)

I'm aware x86 is short for 8086 CPU architecture. A CPU of the x(80)86 family which supports 64bit instructions was known as x86-64, later shortened to x64, it's not an indication of CPU memory support.

32bit refers to the number of data bus lines between the CPU memory controller and RAM.  32 bits allows 4GB of storage space in RAM. This is where the hardware specific 4GB memory limit comes from.

"x86" in current times refers to and ONLY refers to 32bit processors with a 4GB RAM limit.  Basically anything prior C2D on Intel's side...

Zitat
I disagree with Ramdrives as being snake oil.  They are quite useful in many applications compared to using XP without one.  You may not like how it was employed but without this ability it makes XP on modern hardware under utilized.  

 Then provide an example along with rereliable source

Zitat
You should also blame Microsoft from releasing XP Professional as Server 2003 in full functionality.  That would have made everything better from the start

.  This comment I actually  agree with.   I blame both MS & Intel both.     MS were able to charge more for a "Server" edition which was essentially the same as Client XP.

Zitat von ⇗ Pill Monster im Beitrag ¶ #4373

Zitat von ⇗ XPLives im Beitrag ¶ #4337
But what is the model number of this supposed $2500 36-Bit Xeon?
 
I guess you had to be there.




Zitat
Not really.  I was there and even there when the 8088 CPUs and the Apple ][s were selling.  You neglected to again mention the "model number" of the Xeon.  You only provided the link to the Pentium III specs with that article.  Often times you will have the exact model number on the CPU itself or in this case the protective plastic outer casing would have it shown.

 The model is clearly shown on the page, along with the price. Try reading it again.  I can always make the screenshot bigger

Zitat
Even this link beats your by 3 months.


⇗ https://www.cnet.com/news/intel-releases...iii-based-xeon/
CNET? Great reliable source.

#5735Pill Monster⇗ @XPLives

Fwiw early Xeon (P3/4/5) could address up 64GB of RAM in total, divided into 4GB blocks.  The MCU had to access one 4GB block at a time using bank switching.  

Windows kernel/user VAS segmented memory protection & PAE  are both based on Intel's physical memory model.


I can post a diagram of the memory bus if you're interested.
#5736HowManyPentiums?Hello all

X58 user looking to go to a new or newish platfrom.

How likely is an Asus X570 board able to boot XP for some light gaming? Intermittent crashes I can deal with.
I did see it briefly mentioned in the thread.

⇗ @Pill Monster
That Xeon 900Mhz Slot 2 CPU, I have it with the retail box if you need any info. Mine is part of the recall batch as well.
#5737Pill Monster
Zitat von ⇗ HowManyPentiums? im Beitrag ¶ #5736
Hello all

X58 user looking to go to a new or newish platfrom.

How likely is an Asus X570 board able to boot XP for some light gaming? Intermittent crashes I can deal with.
I did see it briefly mentioned in the thread.

@Pill Monster
That Xeon 900Mhz Slot 2 CPU, I have it with the retail box if you need any info. Mine is part of the recall batch as well.

No kidding - how did you come to possess it?   Surely it'd be a rather valuable collectors item by now.. :)
#5738infuscomus⇗ @HowManyPentiums?

you can get XP 32-bit working on X570 with patched drivers but not XP 64-bit.
#5739HowManyPentiums?
Zitat von ⇗ Pill Monster im Beitrag ¶ #5737
Zitat von ⇗ HowManyPentiums? im Beitrag ¶ #5736
Hello all

X58 user looking to go to a new or newish platfrom.

How likely is an Asus X570 board able to boot XP for some light gaming? Intermittent crashes I can deal with.
I did see it briefly mentioned in the thread.

@Pill Monster
That Xeon 900Mhz Slot 2 CPU, I have it with the retail box if you need any info. Mine is part of the recall batch as well.

No kidding - how did you come to possess it?   Surely it'd be a rather valuable collectors item by now.. :)


It was by luck I got this boxed one, I wanted a loose one for my Supermicro S2DG2 retro build.
I had an ebay search saved, someone listed it as something like a 900mhz 256kb xeon.
Some photos :)




Zitat von ⇗ infuscomus im Beitrag ¶ #5738
@HowManyPentiums?

you can get XP 32-bit working on X570 with patched drivers but not XP 64-bit.


Great news thanks, that is one less barrier for me to get a Ryzen 5000 system.
#5740diderius6Hi,
I just found this in
⇗ http://www.cs.sjtu.edu.cn/~kzhu/cs490/3/...Structuring.pdf
So, it should be not too difficult to enlarge the maximal numbers of processors in XP.

Current implementation limit is # of bits in a native
word
! 32 processors for 32-bit systems
! 64 processors for 64-bit systems
! Not an architectural limitjust implementation

Dietmar
#5741infuscomus⇗ @diderius6

That document is only referring to maximum licensed processors though not the maximum registered.
#5742tumagonxadditional info about nvidia driver and PAE issue, according to CUDA handbook, runtime version 6.5 add Compute Capability 5.0 for Maxwell which one of new feature is Unified Virtual Adressing as represented by cuMemcpy/cudaMemcpy function (in the cuda dll). I suspect this is the reason for the changes and CUDA toolkit 6.0.37 itself target up to CC 3.5 (kepler). As observed in "true" maxwell nv4_mini.sys IAT there are changes about memory adressing.
#5743infuscomus⇗ @diderius6

So I compiled ntoskrnl and hal from source - first with 32 CPUs for MAXIMUM_PROCESSORS - second with 512 CPUs for MAXIMUM_PROCESSORS

I used relyze disassembler and made ASM files of them to compare in notepad++

In halmacpi the main difference I can see is a significantly larger data size for HalpProcessorPCR
I don't know how to increase data size using disassembler.

Unfortunately the ntkrnlmp ASM files are too large for notepad++ so it crashes.
edit: nevermind it just took a while to load

In ntkrnlmp I see in  KeSetTargetProcessorDpc an instruction is omitted         add al, 0x20
Haven't noticed anything else yet.

KeStartAllProcessors is also different.

I'll upload my files here.



infuscomus has attached files to this post
#5744infuscomusI just built a server 2003 ISO with my 512 CPU kernel.

Same result - freeze at "Setup is Starting Windows"

So the problem is somewhere else - NUMA nodes maybe? I'm just guessing.
#5745skullteriaWell, maybe maximum pocessores are related with this improvement of Windows 7 kernel:

⇗ https://channel9.msdn.com/Shows/Going+De...nside-Windows-7

 

Page 384

#5746infuscomus⇗ @skullteria

We don't need to go as far as Windows 7 - Server 2003 SP1 already has a fix - it does not freeze at "Setup is Starting Windows" when SMT is enabled.

However I don't know exactly what the fix is.

edit:
I'm just guessing, but it might be this - ⇗ https://mskb.pkisolutions.com/kb/821047
#5747skullteriaOn x86 or x64? Because i found what Windows 10 x86 support only 32 cores, so, maybe it is really the limit of x86
#5748infuscomus⇗ @skullteria

XP x86

Although Windows 10 x86 (and all the way back to server 2003 SP1 x86) don't crash if there is more than 32 CPUs though.
#5749infuscomus⇗ @Mov AX, 0xDEAD

referring to this - ⇗ https://mskb.pkisolutions.com/kb/821047

could you change HalpDefaultInterruptAffinity in XP HAL from 0 to 16 to match server 2003 SP2 HAL?



infuscomus has attached files to this post
#5750ruthanIt could be simply problem, that more than 32 cores werent really tested or properly implemented within MS code.. regardless of licence and its enough cores for desktop cap.
#5751diderius6⇗ @infuscomus

Do you have the patch KB821047 for win2003?
If yes, you can compare all files of win2003 before this patch and after
for to look what changes.
And just try, if an original very first win2003 with this patch can run on Threadripper
with more than 32 processors
Dietmar
#5752infuscomus⇗ @diderius6

Unfortunately I don't have it - and Microsoft have taken the hotfixes down, so I'm looking for it.
#5753gordo999⇗ @infuscomus ...when I was trying to trace through an Intel installer, the CPU was checked with a CPUID instruction. It identified the CPU model and the text "GenuineIntel...". I would think the info regarding the number of processors would be related to CPUID.

It's not clear to me whether you are talking about processors (CPUs) or cores. I am sure you mean CPUs since a CPU with 512 cores would not make much sense.

⇗ https://en.wikipedia.org/wiki/CPUID
#5754infuscomusI just tried a modded hal with HalpDefaultInterruptAffinity changed from ULONG to ULONGLONG in source - no change.
#5755infuscomus⇗ @Mov AX, 0xDEAD

Can your backported KDNET driver from windows 8 be used in XP testmode setup? or do I need to use a full XP installation?
#5756diderius6Hi,
I succeed to get any device to work under XP SP3 on the Lenovo Flex 10 notebook,
only not the videodriver.

There are drivers from Win7, win8.1 for it,
device name VEN_8086&DEV_0F31 .

I do not find any videodriver under XP for this in the cpu n2806 integrated Valleyview videocard.
But under XP there are Intel videodrivers with VEN_8086&DEV_0166  "Intel(R) HD Graphics 4000".

So my question is: Is it possible, to change this DEV_ name on the cpu itself?
If yes, I will change it on the n2806 cpu from 0F31 => 0166
and look, if this driver (now all for DEV_0166)  under win7 still works.
And then, try to install under XP
Dietmar

PS: The problem is in this videodriver igdkmd32.sys , that the DEV_ id is hardcoded there and even second step harcoded with Magic Numbers.
#5757Mov AX, 0xDEAD
Zitat von ⇗ infuscomus im Beitrag ¶ #5755
@Mov AX, 0xDEAD
Can your backported KDNET driver from windows 8 be used in XP testmode setup? or do I need to use a full XP installation?

Hi infuscomus,
problem is how to enable any debug in txtsetup, even with COM ports, add boot.ini to CD rootdir ? i dont know......

Zitat
could you change HalpDefaultInterruptAffinity in XP HAL from 0 to 16 to match server 2003 SP2 HAL?


i wrote before - "affinity" on x86 is unsigned long = 32 bits, first find what trick MS done in w2003 sp2
⇗ https://docs.microsoft.com/ru-ru/windows...ty-and-priority
(CPU/NUMA groups was introduced in vista or win7)

#5758infuscomus⇗ @Mov AX, 0xDEAD

XP/2003 ntoskrnl/hal have functions with numa in the name - are they not doing anything?

e.g
ExpQueryNumaAvailableMemory
ExpQueryNumaProcessorMap
#5759gordo999
Zitat von ⇗ infuscomus im Beitrag ¶ #5758
@Mov AX, 0xDEAD XP/2003 ntoskrnl/hal have functions with numa in the name - are they not doing anything?

e.g
ExpQueryNumaAvailableMemory
ExpQueryNumaProcessorMap
@infuscoumus ....looking up those functions out of interest returned this:

What is NUMA ( Non-Uniform Memory Access ). Simply put, in a multi-CPU system, each CPU has its own memory (local memory). Of course, a CPU can also access the memory of other CPUs, but the access speed is faster than Accessing your own memory is much slower.

The opposite of NUMA is UMA ( Uniform Memory Access ). Many current x86 systems (IA) are based on UMA architecture. Multiple CPUs access the main memory through the front side bus (FSB), and each CPU sees the same main memory.

The IA architecture started with the NUMA architecture from the CPU codenamed Nehalem. The product for the desktop market is Core i7, and the product for the server market is Xeon 5500.

In a NUMA architecture system, the CPU accesses the local memory much faster than the memory of other CPUs, so the physical location of the allocated memory is no longer as irrelevant as before. Ideally, each CPU is accessing most of the time Local memory".

****

The function ExpQueryNumaProcessorMap seems to return the number of nodes, or CPUs (not cores). The function ExpQueryNumaAvailableMemory seems to return info about the memory used by each node/processor.

It would seem that if you are not running a NUMA system the functions likely won't be called.
#5760Mov AX, 0xDEAD
Zitat von ⇗ infuscomus im Beitrag ¶ #5758
@Mov AX, 0xDEAD
XP/2003 ntoskrnl/hal have functions with numa in the name - are they not doing anything?
e.g
ExpQueryNumaAvailableMemory
ExpQueryNumaProcessorMap

Hi infuscomus,
these functs are information only, kernel dont use it
but struct for storing NUMA information has 64bit field for affinity :)

 

Page 385

#5761skullteriaWell, returning to a old problem: XDDDM drivers on UEFI on XP/2003. Somebody tested these drivers on Vista/7? Because, starting on Vista, ROM BIOS 16 bits firmware, both x86 and x64 is emulated by emulator on HAL. It is initialized by kernel. I thnk, it is the reason to get BSOD on XP x64 when trying load it winload from Vista without NO_GUI parameter.

I'm adapting win32ss to support WDDM drivers and for get it, maybe we need use videoprt from Vista, because it use watchdog as Display ownership manager, like dxgkrnl does.
#5762infuscomus⇗ @Mov AX, 0xDEAD

any progress on getting SP1 ACPI sourcecode to match acpi.sys of SP3? or outerspace acpi.sys?
#5763diderius6Hi,
does someone have the Bios for the Asrock Q1900M board
version
Q1900M(1.00)ROM.zip or
Q1900M(1.10)ROM.zip or
Q1900M(1.20)ROM.zip

I try to enable the Intel videodriver igxpmp32.sys 6.14.10.5449 (for XP Embedded)  for XP SP3 under Baytrail cpu.
This is crazy hard work.
I noticed, that even in the early Bios version Q1900M(1.30)ROM.zip (which I have),
still the Sata drivers are set to sleep via Osel. May be, that the reason why this VGA driver does not work to full until now,
is located in DSDT (via OSEL or something similar)
Dietmar
#5764infuscomus⇗ @diderius6

I don't have the BIOS version you are looking for - but I'm willing to maybe help you do a DSDT mod for it?

You won't need to flash the BIOS each time - I can confirm with certainty that the grub2 ACPI patching method works (the compiler date on the ACPI table changed and I confirmed it was using the altered table in XP)
#5765diderius6⇗ @infuscomus

Can you please write a Tutorial for this?
When I succeed with the Videodriver for Baytrail on the Q1900M board (Baytrail J1900 cpu with DEV_0F31),
I write a Tutorial about using Windbg for Lan debug on the Lenovo Flex 10 board
Dietmar

PS: The steps what I need to do are clear for me: The Baytrail Videodriver is a GT1 driver,
so its nearest partner is with DEV_0156 (HD2500, not(!) HD4000).
In Win7 (32 Bit) I followed step by step 0156h and compare to 0F31h and its magic numbers, which I have now all.
So I am about 99% sure, that I will have success. Until now, no Baytrail Videodriver for XP on this world;))..
#5766infuscomus⇗ @diderius6

It is best to use the Easy2boot+AgFM combo for this (although if you do not need XP textmode setup you can just use AgFM

1. Have a spare USB stick to be formatted.
2. Download the latest Easy2boot - ⇗ https://www.easy2boot.com/download/
3. Run Easy2boot and tell it which drive to format - in my case I:\
4. Wait for it to finish formating and copying the files it needs.
5. There should be a 1st drive lable E2B created - your ISOs go here if you are doing a new XP install.
5. A 2nd drive should also exist labeled E2B_PTN2 - go to this drive and create an ACPI folder on it and put your DSDT.bin file in there.
6. Boot from your Easy2boot drive and select the AgFM option from the menu.
7. Once booted into AgFM press F6 to reach the grub2 console
8. type this into your grub2 console - your hdX and msdosX number might be different, so use the  ls command to be sure you have the right drive

grub> acpi (hd0,msdos2)/ACPI/DSDT.bin

9. Your ACPI table should now be modded
10. Press F3 to select a drive to boot from - If you have an existing XP already installed select that, if not select your E2B drive and follow the steps to complete XP setup.
#5767infuscomus⇗ @diderius6

can I have your DSDT? I will try to mod it.
#5768diderius6⇗ @infuscomus
Here ist the original DSDT from Bios 1.30 for the Asrock Q1900M board.
The OSEL sleep command has to be canceled for the SATA device and may be
something other also, which is done by INTEL not to let XP to work on this Baytrail board
Dietmar

⇗ https://ufile.io/jv3rluqw
#5769infuscomus⇗ @diderius6

Thanks,
Can I have the original binary .bin file too?
#5770diderius6⇗ @infuscomus
Here is the wished *.raw file from Bios 1.30, from which the DSDT is build.
Interesting, which and how many steps Intel took, for to prevent a working XP, Win7 and Win8 on the Baytrail chipset
Dietmar

⇗ https://ufile.io/7ghhc2lp
#5771infuscomus⇗ @diderius6

Thanks
#5772infuscomus⇗ @diderius6

OK, try booting this - ⇗ https://anonfiles.com/BfFfA8uepd/dsdt13-mod_aml
#5773diderius6⇗ @infuscomus

Thanks a lot, the most critical OSEL is gone:)).
Do you have another master DSDT, from where you take ideas
Dietmar

PS: I also notice, that in the sleeping mode D0, now OSEL is gone.
This may be important for a lot of other devices too.
#5774infuscomus⇗ @diderius6

No Master DSDT table, Every DSDT table is a bit different, they have code in common though so I make educated guesses.

is everything working now? or not yet tested?
#5775diderius6⇗ @infuscomus

Until now I have not tested, because I have to build up everything for the Asrock Q1900M board.
But I compare your steps with my modded DSDT for the Flex 10 board and so I can see,
that for the very first time the sleeping mode D0 itself is modded also. This I forget,
Dietmar

 

Page 386

#5776gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #5770
Interesting, which and how many steps Intel took, for to prevent a working XP, Win7 and Win8 on the Baytrail chipset Dietmar
⇗ @diderius6 ....Dietmar...I was wondering about that. So, if you have 3 operating systems running on a machine, like XP, W7 and W10, each OS has its own section in the BIOS? Or are you saying that Intel has modded parts of the BIOS to prevent XP running with W7 and W8?

I have a newer system, an Asus B360M mobo/chipset and Asus only supplies driver for W7 and newer. XP runs OK, using modded drivers, but I wonder if BIOS data covering XP has been omitted or compromised.

I know there were issues with DSDT earlier in this thread but it was fixed somehow by mods in the drivers. I'll need to go back and read the issues more carefully.

Please don't let the difficulty level discourage you. In reverse engineering I have faced problems that seemed well beyond my capabilities but I also found that when I persevere, my brain seems to compensate for the difficulty and gives insight. In other words, when something seems impossible, or too hard, don't pay any attention to the difficulty level. Take a break, do something else, then return to the problem. Challenging your brain causes brain cells to grow.

When I look back on the things I have worked out in reverse engineering over the past 15+ years, I can only shake my head. Have no idea how I worked such problems out. You guys, yourself, Infuscomus, Mov AX DEAD, Daniel K and others are doing really good work and I want you all to know your efforts are appreciated.

Keep up the good work.
#5777diderius6⇗ @gordo999

Thanks for nice words:))!
For the Lenovo Flex 10 (Baytrail) I have prove, that Intel disabled via DSDT in Bios the install
of XP, Win7, Win8
Dietmar
#5778gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #5777
For the Lenovo Flex 10 (Baytrail) I have prove, that Intel disabled via DSDT in Bios the install of XP, Win7, Win8 Dietmar
⇗ @diderius6 ...that does not surprise me. Intel made good motherboards but they have not produced thier own motherboards since about 2013. Makes me wonder if it is Intel disabling the OSs or the manufacturer like Lenovo. When you buy an Asus mobo, for example, the BIOS comes from Asus, not Intel. Asus buys the chipset rights and designs them around an Asus style.

I do have evidence that Intel is interfering in other ways to prevent the use of XP on newer mobos. The fact that they removed any drivers that could operate on XP is proof of collusion with Microsoft. The management at Intel seems to have taken on an international flavour rather than the US accent it had when it first started. Same at Microsoft. There is a new attitude at Microsoft and Intel with regard to forcing users to upgrade  to newer OSs like W10.
#5779infuscomus⇗ @diderius6

did the modded DSDT work for you?
#5780Mov AX, 0xDEAD⇗ @infuscomus

Zitat von ⇗ infuscomus im Beitrag ¶ #5762

any progress on getting SP1 ACPI sourcecode to match acpi.sys of SP3? or outerspace acpi.sys?

Hi infuscomus,

Patched SP1 acpi srcs was done in october when i posted about it, if you'll compile it with compiler from win2003 ddk, you get SP2/3 binaries (not 100% byte match, but 100% BinDiff match), i didn't shared it because it is just proof-of-concept, sources will not work with ACPI2.0+ dsdt/ssdt.
I never planned to do something more with these sp1 acpi srcs because acpi.sys v.6666(outerspace) already support acpi2.0 syntax (except 64-bit things) and based on original SP3' acpi.sys.
#5781789
Zitat von ⇗ Labudico im Beitrag ¶ #5571
USB 3.0 driver - see on my screentshot



How did you manage the Intel USB3 driver ?  I have a Haswell laptop.  I would love to learn how modify and persuade the Intel driver to install and work.
#5782rm3113Hi all
I have a problem installing XP on x570 with 5600x cpu,
i think this is from agesa 1.1.0.0?
with agesa 1.0.xx it works but not with 1.1xx
thank you for your support

ps:
I can start winxp (with the gosht) but I am missing the usb
#5783diderius6For the very first time I succeed to load and start this XP Embedded Videodriver 6.14.10.5436 igxpmp32.sys modded from me for the Baytrail Lenovo Flex 10 netbook.
It starts, but then crash.
Very soon comes the most crazy lan debug session for this Flex 10
Dietmar

138: B9 E8
  139: 1A E4
  13A: 27 26
20EF5: 0F 90
20EF6: 8F 90
20EF7: E1 90
20EF8: 00 90
20EF9: 00 90
20EFA: 00 90
20F05: 0F E9
20F06: 84 08
20F07: D7 0A
20F08: 0A 00
20F0A: 00 90
21925: 09 05
21932: 0C 0F

#5784infuscomus⇗ @diderius6

I just wanted to confirm with you - did the DSDT mod work?
#5785diderius6⇗ @infuscomus

At the moment I have small time.
In 2 weeks I have holidays and I will test your DSDT. I checked it few times and I am sure, that it works.
Just now I try some hacks on igxpmp32.sys with interesting results as above
Dietmar
#5786XPWELL64Hi, I'm back to Win-Raid forums. I'm asking you to how to inject modded dsdt.aml into my bios without bsod error. I found another step to fix it. Use IASL to mod extractedasis.aml file.
Here is the link:



XPWELL64 has attached files to this post
#5787infuscomus⇗ @XPWELL64

Follow this guide - ¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (385)
#5788XPWELL64⇗ @infuscomus ⇗ @diderius6
I think there is problem with injecting dsdt.aml wrong way. The system can't get dsdt.aml. Do you mod dsdt.aml extracted as-is to inject the dsdt.aml not wrong? Here is the original dsdt.aml extracted as is:



XPWELL64 has attached files to this post
#5789infuscomus⇗ @XPWELL64

are you using the modded acpi.sys?

what BSOD are you getting?
#5790XPWELL64⇗ @infuscomus
I replaced my dsdt.aml body, it gets bsod on every OSes including windows 10. With original dsdt in bios it gets bsod only in XP. Can replacing as is instead of body solve this bsod on XP?

 

Page 387

#5791infuscomus⇗ @XPWELL64

Post a screenshot of the BSOD XP gives you - both with and without the mod.
#5792XPWELL64⇗ @infuscomus ⇗ @diderius6
0x000000a5 0x00000001 0x00000002 with original dsdt


0x000000a5 0x000000011 0x00000008 with modded dsdt replaced body in bios
#5793infuscomus⇗ @XPWELL64

this might take a while to mod

In the mean time try this acpi.sys mod by daniel_k - ¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (367)

take acpi2015.sys and rename it to acpi.sys and put it in your XP install
#5794XPWELL64Thank you for modding my dsdt. I'll use acpi.sys.
#5795blackwingcatHi.

I think Build 6666 luck method 0x1f LoadTable. :3
Is it no problem ?  

 
 L0003B990:
dd 00000001h
dd L0002CB10
dd 00000002h
dd L0002CA90
dd 00000012h
dd L0002CE50
dd 00000013h
dd L0002CA30[rot]
dd 0000001fh
dd offset Call_LoadTable[/rot]



 
And IOCTL_ACPI_METHOD Note 
L0002A720:
mov edi,edi
push ebp
mov ebp,esp
mov ecx,[ebp+0Ch]
cmp byte ptr [ecx+20h],00h
mov edx,[ecx+60h]
jnz L0002A754
mov eax,[edx+0Ch]
sub eax,0032C000h
jz L0002A79B // IOCTL_ACPI_ASYNC_EVAL_METHOD_V1
sub eax,00000004h
jz L0002A78F // IOCTL_ACPI_EVAL_METHOD_V1
sub eax,00000004h
jz L0002A783 //
sub eax,00000004h
jz L0002A777 //
sub eax,00000004h
jz L0002A76B // IOCTL_ACPI_ACQUIRE_GLOBAL_LOCK
sub eax,00000004h
jz L0002A75F // IOCTL_ACPI_RELEASE_GLOBAL_LOCK
sub eax,00000004h
jz L0002A78F //CALL_IOCTL_ACPI_EVAL_METHOD_EX
sub eax,00000004h
jz L0002A79B // CALL_IOCTL_ACPI_ASYNC_EVAL_METHOD_EX
sub eax,00000004h
jz CALL_IOCTL_ACPI_ENUM_CHILDREN [8]
sub eax,00000004h
jz CALL_IOCTL_ACPI_UNKNOWNFUNC9
sub eax,00000004h
jz CALL_IOCTL_CALL_IOCTL_ACPI_GET_DEVICE_INFORMATION [10]
sub eax,00000004h
jz CALL_IOCTL_ACPI_UNKNOWNFUNC11
sub eax,00000004h
jz CALL_IOCTL_ACPI_UNKNOWNFUNC12
sub eax,00000004h
jz CALL_IOCTL_ACPI_UNKNOWNFUNC13
sub eax,00000004h
jz CALL_IOCTL_ACPI_GET_DEVICE_SPECIFIC_DAT [14]
sub eax,00000004h
jz L0002A78F // CALL_IOCTL_ACPI_EVAL_METHOD_V2 [15]
sub eax,00000004h
jz L0002A79B // CALL_IOCTL_ACPI_ASYNC_EVAL_METHOD_V2 [16]
sub eax,00000004h
jz L0002A78F // CALL_IOCTL_ACPI_EVAL_METHOD_V2_EX [17]
sub eax,00000004h
jz L0002A79B // CALL_IOCTL_ACPI_ASYNC_EVAL_METHOD_V2_EX [18]
#5796infuscomus⇗ @blackwingcat

I think ⇗ @Mov AX, 0xDEAD can tell you more, if I'm not mistaken he is the one who made it.
#5797ruthanWow legend is here, Blackwingcat welcome.
#5798XPWELL64⇗ @infuscomus
Does the acpi.sys ¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (367) work for vista? I'm helping a new member installing vista.
#5799infuscomus⇗ @XPWELL64

Unfortunately no, Vista has it's own driver that needs to be modded - I think ⇗ @diderius6 can help you with that.
#5800blackwingcatHi.

I bought ASUS X590 PRO, and try to install Windows 2000 into it.
I can install Windows XP, but acpi problem prevents from my installing Windows 2000 :3
So I'm trying to improve Windows 2000 acpi.sys .
#5801diderius6⇗ @blackwingcat

Hi,
you can send me your acpi.sys from win2000 and the exact BSOD.
Then I try to to make acpi.sys work
Dietmar
#5802Andalu
Zitat von ⇗ infuscomus im Beitrag ¶ #5766
It is best to use the Easy2boot+AgFM combo for this (although if you do not need XP textmode setup you can just use AgFM

1. Have a spare USB stick to be formatted.
2. Download the latest Easy2boot - ⇗ https://www.easy2boot.com/download/
3. Run Easy2boot and tell it which drive to format - in my case I:\
4. Wait for it to finish formating and copying the files it needs.
5. There should be a 1st drive lable E2B created - your ISOs go here if you are doing a new XP install.
5. A 2nd drive should also exist labeled E2B_PTN2 - go to this drive and create an ACPI folder on it and put your DSDT.bin file in there.
6. Boot from your Easy2boot drive and select the AgFM option from the menu.
7. Once booted into AgFM press F6 to reach the grub2 console
8. type this into your grub2 console - your hdX and msdosX number might be different, so use the  ls command to be sure you have the right drive

grub> acpi (hd0,msdos2)/ACPI/DSDT.bin

9. Your ACPI table should now be modded
10. Press F3 to select a drive to boot from - If you have an existing XP already installed select that, if not select your E2B drive and follow the steps to complete XP setup.

Thanks for the guide

I would like to point out that if you want to prepare a USB stick in the easiest way, you have to use Windows10 and it is mandatory to have an internet connection because "Make_E2B.exe" must connect to the easy2boot.com site, presumably (and in my opinion unusually) to check the availability of an updated version otherwise the procedure can't start.
Instead by using XP, Win7 and 8, as indicated on the same site, the second partition "PTN2" will not be created on a USB stick so you have to use a fixed hard disk.

Is there an easier way to get a working USB stick or I have only to try the more complicated alternative procedure reported on that site?


Edit: I'll try to get a working usb stick using the "diskmod" driver in XP/Win7.
#5803infuscomus⇗ @Andalu

I admit I only tested on windows 10 and did not test in earlier versions of windows.

on this site - ⇗ https://www.fosshub.com/Easy2Boot.html
you can try this option
Easy2Boot ZIP E2B v2.06A for Linux, Windows 7 and XP systems (password is e2b)
#5804Andalu
Zitat von ⇗ infuscomus im Beitrag ¶ #5803
@Andalu

I admit I only tested on windows 10 and did not test in earlier versions of windows.

on this site - ⇗ https://www.fosshub.com/Easy2Boot.html
you can try this option
Easy2Boot ZIP E2B v2.06A for Linux, Windows 7 and XP systems (password is e2b)

I had already tried all the listed versions but none of them work on XP for creating and reading the 2nd partition on a USB stick.

A workaround is the use of the diskmon driver thanks to which XP correctly recognizes now the second E2B_PTN2 partition of a USB stick where I manually copied the agFM files. Everything seems to work correctly until the selection of the disk from which to start the XP installation: here, once the boot disk has been selected, I got the main easyboot screen again or the classic horizontal lines that fill the screen as a sign of error.

I am forced to read again the quite confusing instructions on the easy2boot website
I also find it really strange that a program that is used to create a booting disk needs a mandatory internet connection


Edit: I also tried to configure a fixed hard drive with easy2boot but even in this case, despite the instructions say otherwise, the program is unable to create the secondary partition on XP. I have tried every possibility so I can say that easy2boot doesn't work at all on my system.
I'll be happy to be proven wrong
#5805Mov AX, 0xDEAD
Zitat von ⇗ blackwingcat im Beitrag ¶ #5795
Hi.
I think Build 6666 luck method 0x1f LoadTable. :3
Is it no problem ?  


Hi blackwingcat,
yes, v6666 lack of loadtable, is any bios exist with this rare opcode ?

 

Page 388

#5806Andalu⇗ @infuscomus

I tried the other option you mentioned in the procedure at step 10. "Press F3 to select a drive to boot from - If you have an existing XP already installed select that" but after running the command "acpi (hd0,msdos2)/ACPI/DSDT.bin" in the grub console (without getting errors) and then selected the booted disk with XP already installed, I got the A5 BSOD anyway.
I have used the dsdt.bin extracted via aida64 trought the option "acpi dsdt dump" on my Asrock B250M Pro4 where other modded acpi drivers work fine.
Where did I go wrong?

Edit: I realized what I missed: a modded dsdt.bin  so the question remains the same: how to modify a dsdt table?
#5807infuscomus⇗ @Andalu

I'm still learning dsdt modding myself - I use this resource to interpret A5 BSODs ⇗ https://docs.microsoft.com/en-us/windows...acpi-bios-error

what A5 BSOD did you have? did you want me to try and mod yours?
#5808diderius6Driver for Baytrail VGA for Win7 compiled for OS version 5.0 (win2000)

I have a question. This driver from Intel for Win7 32 bit is compiled for Win2000.
There are some missing functions in ntoskrnl.exe

_chkstk
memcpy_s
KeAcquireGuardedMutex
KeInitializeGuardedMutex
KeInvalidateAllCaches
KeReleaseGuardedMutex
MmAllocatePagesForMdlEx
PoRegisterPowerSettingCallback
PoUnregisterPowerSettingCallback

⇗ @Mov AX, 0xDEAD
I remember that with Vista, a new driver model was introduced, also for the videodriver.
But when it is compiled for OS version 5.0 (see picture from Dependency Walker),
is there a chance to make it work with Kernel Extender for XP SP3
Dietmar

PS: Only the marked functions are until now not in the nice Kernel Extender.

Link for this videodriver
⇗ https://ufile.io/7oqczfkh



#5809Andalu⇗ @infuscomus

Thanks for the link ;)
I would like to learn how to modify a DSDT table by myself. Unfortunately all guides I found are not for windows or even for beginners.

Regarding my B250 board, I would like to solve the restart problem that doesn't work in XP, getting stuck on the "windows is shutting down" screen, really annoying.
No such problem in Win10, so I suppose it could just be a DSDT table issue.

The A5 bsod code I got is "0x00000003,0x8A095E44,0xC0000034,0x494E495F" which does not occur with other acpi.sys (outerspace,acpi2015 etc) but the failed restart is always present with them too.
#5810infuscomus⇗ @Andalu

weird that it would get stuck at "Windows is shutting down" I've only ever had that problem if a program gets stuck and won't let itself die.

maybe try msconfig with a selective startup - enable/disable individual programs to see if one of them is causing it?
#5811Andalu⇗ @infuscomus

the issue already occurs during the XP installation at end of the GUI setup, precisely on the last reboot before entering the desktop for the first time.
Even in that case it must always be restarted manually, so for all further times when a reboot is required. Only the shutdown works normally.
#5812infuscomus⇗ @Andalu

very strange, I've never had ACPI not restart before so I'm not entirely sure how to solve this.
#5813infuscomus⇗ @diderius6

for KeInvalidateAllCaches we have the WRK code at least.
#5814pappyN4I have the exact same issue as Andalu with restarts.

My system is Gigabye B450 Aorus M with Ryzen Zen2 (Matisse) stock F41 BIOS (AGESA 1.0.0.3AB), pure XP64 SP2 ISO except for acpi.sys from post 2202 and integrated AHCI drivers.  

In the text mode of the install it gets to Restating Now but I have to manually hit the restart button, same issue with GUI installer.  Once windows is installed, shutdown runs normally.  But the restarting it stops at the Shutting Down part and I have to hit restart button.  

It looks like windows closes everything off properly, no errors when booting up, just does not send that final command to restart.  I tried integrating other SATA drivers while I was trying to solve another problem but never could get restart working properly... Something outside of high level windows functions, low level windows/apci/BIOS is my uneducated guess.

No BSOD, no other drivers yet, all normal in Event Viewer.


-SATA1.2.1.321 from last XP 13.4 chipset drivers, drivers ran ok, restart issue

-SATA1.2.1.402 amd_sata.sys (from Win7pack) paired with amd_xata.sys1.2.1.321 (from XP pack)  (xata has missing dependencies), drivers ran ok (have to recheck, it was a while ago), restart issue

-SATA1.2.1.402 patched with NTOSKRNL_Emu, immediate 7B BSOD when updated, it did not like me doing this at all...  Looks like i patched ok, recalc checksum, added import to redirects.h, all green in DependencyWalker.

-StorAhci_V1.0_20200928 drivers ran ok, no SMART data, restart issue

Shutdown is normal for all
#5815diderius6⇗ @pappyN4

I noticed this behavior with missing restart,
when the videodriver is not correct installed
Dietmar
#5816diderius6⇗ @infuscomus

I flashed with Revelprog IS EEpromer your modded DSDT (for OSEL) for the Asrock Q1900M board
Baytrail J1900 cpu with Valley View VGA.
I doublecheck success of the Bios flash.
Board starts and now with your nice mod of DSDT I can chose for the very first time IDE mode for the harddisk.
The Bios version is P1.30, the very first version, that I can get for this board.
Now the crazy journey for to make a Baytrail videodriver for XP SP3 starts
Dietmar
#5817XPWELL64⇗ @diderius6
Does the driver in post ¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (388) works for windows xp or 2000? I have intel hd graphics 5500
#5818XPWELL64⇗ @infuscomus
Did you complete my dsdt mod?
#5819diderius6⇗ @XPWELL64

Until now, I am even not sure if this driver works for Win7 32 bit, because it is not build for Baytrail Valley View VGA,
but in its binaries via IDA Pro you can see, that DEV_0F31 appears there for Valley View.
A lot of work more is needed, I have 3 weeks
Dietmar
#5820XPWELL64⇗ @infuscomus
Is there any acpi.sys for vista? I'm helping a user to install windows vista.

 

Page 389

#5821XPWELL64⇗ @diderius6
Is there any modded acpi.sys for vista? I'm helping a new user.
#5822Andalu⇗ @diderius6
about the non-working restart, I would like to report that in my case on the asrock B250M Pro4 no video card is installed, the graphics component comes from the intel processor.
#5823diderius6⇗ @XPWELL64
Until now I have not seen a modded acpi.sys for Vista.
You can send me your acpi.sys from Vista with the exact BSOD and I try to mod it
Dietmar
#5824diderius6⇗ @Andalu

"no video card is installed, the graphics component comes from the intel processor."
Yepp, exact in this case this crash on last reboot happens when this graphics from Intel is not recogniced correct
Dietmar
#5825diderius6On install with original XP SP3 CD in IDE mode on the Q1900M board
I get BSOD 0x0000007E (C0000005, xxx, yyy, zzz).
This BSOD seems to be characteristic for Baytrail CPU and XP.
With acpi.sys from outerspace ) this BSOD is gone
Dietmar
#5826Andalu⇗ @diderius6

with a video card installed (HD6450 + iCafe-WinXP v9.000.300.3010 drivers) the restart doesn't work anyway: the system remains always on and only the monitor turns off.
I still have to manually reset the system. Shutdown ok.
#5827diderius6⇗ @Andalu
Can you disable the onboard videocard and also its sound HD, hdmi in Bios
Dietmar
#5828Andalu
Zitat von ⇗ diderius6 im Beitrag ¶ #5827
@Andalu
Can you disable the onboard videocard and also its sound HD, hdmi in Bios
Dietmar

Same as before: system always on / monitor off.
No problem in Win7 with or without video card.
#5829infuscomus
Zitat von ⇗ diderius6 im Beitrag ¶ #5816

I flashed with Revelprog IS EEpromer your modded DSDT (for OSEL) for the Asrock Q1900M board
Baytrail J1900 cpu with Valley View VGA.



I would have preferred you test that it works with the grub2 method first, but oh well.
#5830infuscomus⇗ @XPWELL64

your DSDT has so many OS version entries it's a pain to get through.

did the acpi2015.sys work at least?
#5831infuscomus⇗ @diderius6

do you have any DSDT table with the missing OSYS entries?

e.g - OSYS = 0x07D9 etc...

⇗ @XPWELL64 's DSDT is missing them

        Method (_INI, 0, Serialized)  // _INI: Initialize
{
OSYS = 0x07D9
If (CondRefOf (\_OSI, Local0))
{
If (_OSI ("Windows 2009"))
{
OSYS = 0x07D9
}

If (_OSI ("Windows 2012"))
{
OSYS = 0x07DC
}

If (_OSI ("Windows 2013"))
{
OSYS = 0x07DD
}

If (_OSI ("Windows 2015"))
{
OSYS = 0x07DF
}
}

   

The ones I have different OSYS code so I can't use them - I think I had a DSDT table with OSYS code like this but can't seem to find it.
#5832diderius6⇗ @infuscomus
Here it is
Dietmar

 
        Method (_INI, 0, Serialized)  // _INI: Initialize
{
OSYS = 0x03E8
If (CondRefOf (\_OSI, Local0))
{
If (_OSI ("Windows 2001"))
{
OSYS = 0x07D1
}

If (_OSI ("Windows 2001 SP1"))
{
OSYS = 0x07D1
}

If (_OSI ("Windows 2001 SP2"))
{
OSYS = 0x07D2
}

If (_OSI ("Windows 2001.1"))
{
OSYS = 0x07D3
}

If (_OSI ("Windows 2006"))
{
OSYS = 0x07D6
}

If (_OSI ("Windows 2009"))
{
OSYS = 0x07D9
}

If (_OSI ("Windows 2012"))
{
OSYS = 0x07DC
}

If (_OSI ("Windows 2013"))
{
OSYS = 0x07DD
}

If (_OSI ("Windows 2015"))
{
OSYS = 0x07DF
}
}
}

#5833infuscomus⇗ @diderius6

Thanks
#5834infuscomus⇗ @XPWELL64

Thanks to help from diderius6 I have DSDT mod for you now.



infuscomus has attached files to this post
#5835Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #5808
Driver for Baytrail VGA for Win7 compiled for OS version 5.0 (win2000)

I have a question. This driver from Intel for Win7 32 bit is compiled for Win2000.


Hi diderius6,
Probably it is just linker.exe bug, it set OS ver in *.sys to 5.xx

Search in main *.sys for magic unicode utf-16 string "dxgkrnl", if *.sys contains this string = Vista video model driver
W2000 model video drivers has import from VIDEOPRT.SYS

 

Page 390

#5836diderius6⇗ @Mov AX, 0xDEAD
The device igdkmd32.sys Version 9.17.10.2963 does NOT contain the string "dxgkrnl", I just check with Ida.
So, there is hope for a W2000 model driver. And the crazy Bsod 0x00000050 may come from videoport.sys.
I changed videoport from XP SP3 against videoport from XP SP 2, but same 0x50 BSOD.

And for to make the very last check: I look at a igdkmd32.sys version 10.18.10.4176
compiled for OS version 6.3 subvers 6.1 (Win7) and there the string "dxgkrnl" appears
Dietmar

The Magic Number for Valley View in XP SP3 for DEV_0F31 seems to be 9  5 (7?)  0Eh
The Magic Number for Valley View in    Win7    for DEV_0F31 seems to be 9  5  0Fh
#5837pappyN4⇗ @diderius6
No restart issue happens both with no drivers installed (SATA only) and with most drivers installed (SATA/audio/LAN/GPU/IOMMU/SMBUS/chipset USB.  Remaining missing disabled. Still trying to get CPU USB working so disabled for this test.

Tested nvidia GT710 default XP driver and with latest 368.81 driver.
Tested amd HD5450 with default XP driver and with latest catalyst14.4 driver.

I'll test tomorrow with different SSD drive.  Actually i do not have a spare, so HDD :(

I could also try BIOS update.  Any possible issue with acpi if update from current AGESA 1.0.0.3AB to second newest BIOS 1.0.0.6 or newest that adds Zen3 1.1.0.0 D ?

F60e
2020/12/09
   Update AGESA ComboV2 1.1.0.0 D for AMD Ryzen 5000 series CPU support


F51
2?020/08/03
   Update AMD AGESA ComboV1 1.0.0.6 for 3rd Gen AMD Ryzen XT series processors
   Fix AMD security vulnerabilities for SMM Callout Privilege Escalation

F50
2?019/11/27
   Update AMD AGESA 1.0.0.4 B
   Improve system boot time
   Improve RAID function compatibility
   Improve PCIe device compatibility

Note:
Before updating BIOS to this new version, you MUST follow the steps as detailed under BIOS F40 description.

F42g
2?019/10/18
   Update AGESA 1.0.0.3 ABBA
   Improve Destiny 2 gaming compatibility
   Correction of PCIe Gen4 being disabled when using a 3rd Gen Ryzen (Matisse) CPU due to AGESA change

Note:
Before updating BIOS to this new version, you MUST follow the steps as detailed under BIOS F40 description.

F41
2?019/07/22
   Update AGESA 1.0.0.3 AB
   Improve M.2 SSD compatibility


Forgot to add.  Windows 7x64 has no problem.
#5838genieautravailAbout the shutdown issue. I have a similar issue with the modded Intel USB3 HCSwitch (Gen4_Series8_C220_and_later) provide by PPeti66x on the MDL forum.

Since one month I'm playing with a ZOTAC ZBOX EN760 mini PC (Haswell processor).
Every is fine except this stupid problem when I try to shutdown or reboot the computer.
I must press the power button for that.

If I switch back to the original PCI bus, the issue disappear.
I'am pretty sure that the switcher doesn't stop properly and block the shutdown process.

I have already posted a message on the MDL forum one month ago with some screenshots.
But nobody has answered until now.

A solution will be welcome.
#5839YuriyCN
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #5835

W2000 model video drivers has import from VIDEOPRT.SYS



Кстати, обратите внимание, что VIDEOPRT.SYS взятый с дистрибутива с SP2 имеет до +200% лучшую 2D-производительность на Radeon видеокартах, при работе ОС без режима PAE и до +300% прирост 2D под патченой системой через WINXPPAE v2.0, чем оригинальный VIDEOPRT.SYS последней версии, взятый с SP3. На NVidia видеокартах сей феномен не наблюдается. Толи в драйвере косяк, толи в этом файле косяк, я не разобрался, просто использую файл с WinXP SP2.
#5840Mov AX, 0xDEAD
Zitat von ⇗ YuriyCN im Beitrag ¶ #5839
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #5835

W2000 model video drivers has import from VIDEOPRT.SYS


VIDEOPRT.SYS взятый с дистрибутива с SP2


Привет/Hi,

rus:
Да, я помню про твою находку с SP2 версией VIDEOPRT.SYS, на встройке intel тоже надо попробовать.
Но мне кажется дело в банальном vsync, в sp2 возможно оно игнорируется и от этого такая разница в 2d

eng:
Yes, i remember your finding with SP2 version of VIDEOPRT.SYS, I should try too it on intel embedded.
But I think it's a trivial vsync, in sp2 it may be ignored and that's why there is such a difference in 2d
#5841Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #5836
@Mov AX, 0xDEAD
The device igdkmd32.sys Version 9.17.10.2963 does NOT contain the string "dxgkrnl", I just check with Ida.


Hi diderius6

You did not found string because you've used case-sensive find
try without it and you will get surprise
#5842gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #5836
@Mov AX, 0xDEAD
The device igdkmd32.sys Version 9.17.10.2963 does NOT contain the string "dxgkrnl", I just check with Ida.

@diderius6.... Dietmar, I have found that the search engine in IDA sometimes misses strings. IDA won't identify a string unless the decompiler managed to find it. It's an 'interactive' decompiler because it relies on the user to help it decompile. On many occasions I have had to find decompiled code/data and point it out to IDA.

You probably know this already but if you find a string in IDA and it is in unicode, (if you can find the uncompiled code/data), and you want to decompile it, you can set the string type in the Options menu under General. Look for the Strings tab and then 'Default string literal type'. The default is C-style but you can select different string types in the drop-down menu, including unicode.  If you try to decompile unicode without changing that option it won't compile.

Sometimes the strings in executables and dlls are in unicode and a straight text search in IDA won't find it. You have to search for the unicode bytes. I prefer using a text editor like UltraEdit or HxD to locate strings, or a grep tool. They are better suited to finding strings based on an entered byte sequence. I have found that the IDA search engine doesn't find byte sequences very well   in code/data that is not decompiled. Even with decompiled code I have found it does not always find the strings.

Maybe it's just me. Then again, maybe it's not there.
#5843Mov AX, 0xDEAD
Zitat von ⇗ gordo999 im Beitrag ¶ #5842
IDA won't identify a string unless the decompiler managed to find it. It's an 'interactive' decompiler because it relies on the user to help it decompile. On many occasions I have had to find decompiled code/data and point it out to IDA.


In IDA to search bytes/strings switch to HEX VIEW screen, by default it can search only byte sequences, but it accept strings too
but it still search in logical sections only, this mean if string hidden in resources or between sections, search will fail
#5844diderius6I make some tests with the Intel graphik driver version 5436 for XP.

igxpmp32.sys is loaded, but then crashes and get unloaded on reboot for the Valley View Baytrail VGA with DEV_0F31 .
I found with Ida the exact place, where this crash happens,

.text:10021D87
.text:10021D87 loc_10021D87: ; CODE XREF: sub_10020DD0+F98 j
.text:10021D87 movzx eax, [ebp+var_469]
.text:10021D8E cmp eax, 1
.text:10021D91 jnz short loc_10021DB0
.text:10021D93 mov ecx, [ebp+var_470]
.text:10021D99 push ecx
.text:10021D9A lea edx, [ebp+var_468]
.text:10021DA0 push edx
.text:10021DA1 push offset aHardwareinfo_1 ; "HardwareInformation.AdapterString"
.text:10021DA6 mov eax, [ebp+arg_0]
.text:10021DA9 push eax
.text:10021DAA call ds:VideoPortSetRegistryParameters
.text:10021DB0
.text:10021DB0 loc_10021DB0: ; CODE XREF: sub_10020DD0+FC1 j
.text:10021DB0 push 12h
.text:10021DB2 push offset aInternal ; "Internal"
.text:10021DB7 push offset aHardwareinfo_2 ; "HardwareInformation.DacType"
.text:10021DBC mov ecx, [ebp+arg_0]
.text:10021DBF push ecx
.text:10021DC0 call ds:VideoPortSetRegistryParameters
.text:10021DC6 push 22h
.text:10021DC8 push offset aIntelVideoBios ; "Intel Video BIOS"
.text:10021DCD push offset aHardwareinfo_3 ; "HardwareInformation.BiosString"
.text:10021DD2 mov edx, [ebp+arg_0]
.text:10021DD5 push edx
.text:10021DD6 call ds:VideoPortSetRegistryParameters
.text:10021DDC


*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

Use !analyze -v to get detailed debugging information.

BugCheck 50, {b9d18000, 0, 80c84241, 0}

*** ERROR: Module load completed but symbols could not be loaded for igxpmp32.sys
*** No owner thread found for resource 80afd640
*** No owner thread found for resource 80afd640
*** No owner thread found for resource 80afd640
*** No owner thread found for resource 80afd640
Probably caused by : igxpmp32.sys ( igxpmp32+21db0 )

Followup: MachineOwner
---------

nt!RtlpBreakWithStatusInstruction:
80ac37ec cc int 3

3: kd> !analyze -v
*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

PAGE_FAULT_IN_NONPAGED_AREA (50)
Invalid system memory was referenced. This cannot be protected by try-except,
it must be protected by a Probe. Typically the address is just plain bad or it
is pointing at freed memory.
Arguments:
Arg1: b9d18000, memory referenced.
Arg2: 00000000, value 0 = read operation, 1 = write operation.
Arg3: 80c84241, If non-zero, the instruction address which referenced the bad memory
address.
Arg4: 00000000, (reserved)

Debugging Details:
------------------

*** No owner thread found for resource 80afd640
*** No owner thread found for resource 80afd640
*** No owner thread found for resource 80afd640
*** No owner thread found for resource 80afd640

READ_ADDRESS: b9d18000

FAULTING_IP:
nt!CmpSetValueDataNew+363
80c84241 f3a5 rep movs dword ptr es:[edi],dword ptr [esi]

MM_INTERNAL_CODE: 0

DEFAULT_BUCKET_ID: DRIVER_FAULT

BUGCHECK_STR: 0x50

PROCESS_NAME: System

TRAP_FRAME: b9d16bf0 -- (.trap 0xffffffffb9d16bf0)
ErrCode = 00000000
eax=00003a70 ebx=e11fc024 ecx=00000acb edx=00000000 esi=b9d18000 edi=e11fcf68
eip=80c84241 esp=b9d16c64 ebp=b9d16ca0 iopl=0 nv up ei pl nz na pe nc
cs=0008 ss=0010 ds=0023 es=0023 fs=0030 gs=0000 efl=00010206
nt!CmpSetValueDataNew+0x363:
80c84241 f3a5 rep movs dword ptr es:[edi],dword ptr [esi]
Resetting default scope

LOCK_ADDRESS: 80afd6c0 -- (!locks 80afd6c0)
NTSDEXTS: Unable to resolve ntdll!RtlCriticalSectionList
NTSDEXTS: Please check your symbols

PNP_TRIAGE:
Lock address : 0x80afd6c0
Thread Count : 1
Thread address: 0x89c80b30
Thread wait : 0x1254

LAST_CONTROL_TRANSFER: from 80a30d7b to 80ac37ec

STACK_TEXT:
b9d16724 80a30d7b 00000003 b9d18000 00000000 nt!RtlpBreakWithStatusInstruction
b9d16770 80a319e6 00000003 00000000 c05ce8c0 nt!KiBugCheckDebugBreak+0x19
b9d16b50 80a31f77 00000050 b9d18000 00000000 nt!KeBugCheck2+0x574
b9d16b70 80aa55ac 00000050 b9d18000 00000000 nt!KeBugCheckEx+0x1b
b9d16bd8 80ae20a8 00000000 b9d18000 00000000 nt!MmAccessFault+0x1016
b9d16bd8 80c84241 00000000 b9d18000 00000000 nt!KiTrap0E+0xdc
b9d16ca0 80c8832b e1037008 b9d170bc 00003a70 nt!CmpSetValueDataNew+0x363
b9d16cf0 80c8b208 e1037008 ce350444 b9d16dd0 nt!CmpSetValueKeyNew+0x13d
b9d16d78 80c6bfcc e19a1ab0 b9d16dd0 00000003 nt!CmSetValueKey+0x234
b9d16e14 80adedd8 80000430 b9d16ed4 00000000 nt!NtSetValueKey+0x2dc
b9d16e14 80a3c855 80000430 b9d16ed4 00000000 nt!KiFastCallEntry+0x158
b9d16eb0 80c00ed7 80000430 b9d16ed4 00000000 nt!ZwSetValueKey+0x11
b9d16ee0 b9327fa3 00000000 e1a2c2d0 a7f3a768 nt!RtlWriteRegistryValue+0x75
b9d16f0c b9334ba4 89c0f358 e1a2c2d0 b9d170bc VIDEOPRT!VPSetRegistryParameters+0xc9
b9d16f2c a7d4cdb0 89c0f358 a7f3a768 b9d170bc VIDEOPRT!VideoPortSetRegistryParameters+0x2a
WARNING: Stack unwind information not available. Following frames may be wrong.
b9d17524 a7f84e65 89c0f358 e17c0008 00000000 igxpmp32+0x21db0
b9d17660 a7d2e99d 89c0f358 00000000 00000000 igxpmp32+0x259e65
b9d17680 b9335318 89c0f358 00000000 00000000 igxpmp32+0x399d
b9d17884 b9335c9a 8996bc20 89acb450 89acb458 VIDEOPRT!VideoPortFindAdapter2+0x3ec
b9d178b0 b932fc41 8996bc20 89acb450 89acb458 VIDEOPRT!VideoPortFindAdapter+0x7c
b9d17a1c 80a21c8d 89c0f040 899bd188 89c0f040 VIDEOPRT!pVideoPortPnpDispatch+0x6ad
b9d17a34 80b5e526 b9d17aa4 89c8fb68 89c74700 nt!IopfCallDriver+0x51
b9d17a60 80b5e66e 89c0f040 b9d17a80 00000000 nt!IopSynchronousCall+0xf0
b9d17aa8 80a2c123 89c74700 00000001 00000000 nt!IopStartDevice+0x82
b9d17ac4 80b5d2e8 89c74700 b9d17d01 89bbbfe0 nt!PipProcessStartPhase1+0x9f
b9d17d20 80b5de56 89c8fb68 00000001 00000000 nt!PipProcessDevNodeTree+0x238
b9d17d58 80a2d0ab 89bbbfe0 89c80b30 80b1365c nt!PiRestartDevice+0x116
b9d17d80 80ad51a9 00000000 00000000 89c80b30 nt!PipDeviceActionWorker+0x17f
b9d17dac 80bd81ac 00000000 00000000 00000000 nt!ExpWorkerThread+0x10f
b9d17ddc 80ae4212 80ad509a 00000001 00000000 nt!PspSystemThreadStartup+0x34
00000000 00000000 00000000 00000000 00000000 nt!KiThreadStartup+0x16


STACK_COMMAND: kb

FOLLOWUP_IP:
igxpmp32+21db0
a7d4cdb0 6a12 push 12h

SYMBOL_STACK_INDEX: f

SYMBOL_NAME: igxpmp32+21db0

FOLLOWUP_NAME: MachineOwner

MODULE_NAME: igxpmp32

IMAGE_NAME: igxpmp32.sys

DEBUG_FLR_IMAGE_TIMESTAMP: 50f711fb

FAILURE_BUCKET_ID: 0x50_igxpmp32+21db0

BUCKET_ID: 0x50_igxpmp32+21db0

Followup: MachineOwner
---------

#5845diderius6⇗ @Mov AX, 0xDEAD

Yes, you are right. I find this string at 4 places in igdkmd32.sys version 9.17.10.2963, for example in

mov     [ebp+var_18], offset aSDeviceDxgkrnl ; "S\\Device\\DxgKrnl"

But I searched before also with not case-sensive, so ⇗ @gordo999 is right also,

Dietmar
#5846Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #5844

igxpmp32.sys is loaded, but then crashes and get unloaded on reboot for the Valley View Baytrail VGA with DEV_0F31 .
I found with Ida the exact place, where this crash happens,
.text:10021D93                 mov     ecx, [ebp+var_470]
.text:10021D99 push ecx
.text:10021D9A lea edx, [ebp+var_468]
.text:10021DA0 push edx
.text:10021DA1 push offset aHardwareinfo_1 ; "HardwareInformation.AdapterString"
.text:10021DA6 mov eax, [ebp+arg_0]
.text:10021DA9 push eax
.text:10021DAA call ds:VideoPortSetRegistryParameters


 
VideoPortSetRegistryParameters(
PVOID HwDeviceExtension,
PWSTR ValueName,
PVOID ValueData,
ULONG ValueLength
);


HwDeviceExtension = arg_0 = OK
ValueName= "HardwareInformation.AdapterString" = OK
ValueData = &(ebp+var_468) = local bufer on stack = ???
ValueLength  = *(ebp+var_470) = lengh of this buffer = ???


i assume problem is var_468 , it must be be null-terminated string

#5847diderius6⇗ @Mov AX, 0xDEAD

From the Sourcecode of XP SP1 from videoprt.c there is written

VP_STATUS
VideoPortSetRegistryParameters(
PVOID HwDeviceExtension,
PWSTR ValueName,
PVOID ValueData,
ULONG ValueLength
)

/*++

Routine Description:

VideoPortSetRegistryParameters writes information to the CurrentControlSet
in the registry. The function automatically searches for or creates the
specified parameter name under the parameter key of the current driver.

Arguments:

HwDeviceExtension - Points to the miniport driver's device extension.

ValueName - Points to a Unicode string that contains the name of the
data value being written in the registry.

ValueData - Points to a buffer containing the information to be written
to the registry.

ValueLength - Specifies the size of the data being written to the registry.

Return Value:

This function returns the final status of the operation.

Environment:

This routine cannot be called from a miniport routine synchronized with
VideoPortSynchronizeRoutine or from an ISR.

--*/


Because I am very bad in Assembler,
can you please describe, how the 4 parameters via eax, ecx, edx are given to

VideoPortSetRegistryParameters(
PVOID HwDeviceExtension,
PWSTR ValueName,
PVOID ValueData,
ULONG ValueLength
)


From the output of Windbg, only the value of the register edx is zero, I think this edx=00000000
ValueData = &(ebp+var_468) from .text:10021D9A lea edx, [ebp+var_468]

eax=00003a70 ebx=e11fc024 ecx=00000acb edx=00000000 esi=b9d18000 edi=e11fcf68
eip=80c84241 esp=b9d16c64 ebp=b9d16ca0 iopl=0 nv up ei pl nz na pe nc
cs=0008 ss=0010 ds=0023 es=0023 fs=0030 gs=0000 efl=00010206
nt!CmpSetValueDataNew+0x363:
80c84241 f3a5 rep movs dword ptr es:[edi],dword ptr [esi]


And why can this error happen? What has to be stored in var_468 and can I give a value by hand to var_468?

As far as I understand, the function VideoPortSetRegistryParameters
writes values for the VGA device (here from Baytrail with DEV_0F31) into the registry.
They are a lot.
Question is, which values for DEV_0F31 (Baytrail) have to be different from DEV_0166 (HD4000).
There are differences, because in other case to mod the *.inf would be enough.

I compare those entries in Win7 via its *.inf there, most are the same.
Question is also, where the VALUES (concrete numbers) for this registry entries are stored
Dietmar

FILE COMPARISON
Produced: 18.12.2020 12:41:54

Mode: Just Differences

Left file: C:\Dokumente und Einstellungen\Administrator\Desktop\Neu Textdokument (17).txt
Right file: C:\Dokumente und Einstellungen\Administrator\Desktop\Neu Textdokument (18).txt
L1 [iIVBM_w7]
R1 [iVLV2M_w7]
---------------------------------------------------------
---------------------------------------------------------
L26 DelReg = PwrCons_UserPolicy_DelSwSettings
AddReg = XVYCCFeature_AddSwSettings
DelReg = XVYCCFeature_DelSwSettings
AddReg = DisplayDPP_IVB_AddSwSettings
DelReg = DisplayDPP_IVB_DelSwSettings
AddReg = DualLFPRCR_AddSwSettings
DelReg = DualLFPRCR_DelSwSettings

R26 AddReg = AsyncFlips_VLV2_AddSwSettings
DelReg = AsyncFlips_VLV2_DelSwSettings
AddReg = ScalerToHDMI_VLV2_AddSwSettings
DelReg = ScalerToHDMI_VLV2_DelSwSettings
AddReg = DisplayOptimization_VLV2_AddSwSettings
DelReg = DisplayOptimization_Generic_DelSwSettings
AddReg = AvoidPPSOutsideModeSet_AddSwSettings
DelReg = AvoidPPSOutsideModeSet_DelSwSettings
AddReg = AudioLPE_WA_AddSwSettings
DelReg = AudioLPE_WA_DelSwSettings
---------------------------------------------------------
#5848diderius6These are the exports from videoprt.sys from XP SP3.
The name of the export functions are the same in XP SP2 and XP SP3.

Compared with XP SP1, those functions appear new in XP SP2, SP3

PortNotification
VideoPortDbgReportComplete
VideoPortDbgReportCreate
VideoPortDbgReportSecondaryData
VideoPortNotification


Dietmar

EDIT: igxpmp32.sys from XP SP3 imports 44 functions from videoport.sys.

NAME VIDEOPRT.SYS XP SP3

EXPORTS for XP SP3

VideoPortInterlockedDecrement
VideoPortInterlockedExchange
VideoPortInterlockedIncrement
PortNotification
VideoPortAcquireDeviceLock
VideoPortAcquireSpinLock
VideoPortAcquireSpinLockAtDpcLevel
VideoPortAllocateBuffer
VideoPortAllocateCommonBuffer
VideoPortAllocateContiguousMemory
VideoPortAllocatePool
VideoPortAssociateEventsWithDmaHandle
VideoPortCheckForDeviceExistance
VideoPortCheckForDeviceExistence
VideoPortClearEvent
VideoPortCompareMemory
VideoPortCompleteDma
VideoPortCreateEvent
VideoPortCreateSecondaryDisplay
VideoPortCreateSpinLock
VideoPortDDCMonitorHelper
VideoPortDbgReportComplete
VideoPortDbgReportCreate
VideoPortDbgReportSecondaryData
VideoPortDebugPrint
VideoPortDeleteEvent
VideoPortDeleteSpinLock
VideoPortDisableInterrupt
VideoPortDoDma
VideoPortEnableInterrupt
VideoPortEnumerateChildren
VideoPortFlushRegistry
VideoPortFreeCommonBuffer
VideoPortFreeDeviceBase
VideoPortFreePool
VideoPortGetAccessRanges
VideoPortGetAgpServices
VideoPortGetAssociatedDeviceExtension
VideoPortGetAssociatedDeviceID
VideoPortGetBusData
VideoPortGetBytesUsed
VideoPortGetCommonBuffer
VideoPortGetCurrentIrql
VideoPortGetDeviceBase
VideoPortGetDeviceData
VideoPortGetDmaAdapter
VideoPortGetDmaContext
VideoPortGetMdl
VideoPortGetRegistryParameters
VideoPortGetRomImage
VideoPortGetVersion
VideoPortGetVgaStatus
VideoPortInitialize
VideoPortInt10
VideoPortLockBuffer
VideoPortLockPages
VideoPortLogError
VideoPortMapBankedMemory
VideoPortMapDmaMemory
VideoPortMapMemory
VideoPortMoveMemory
VideoPortNotification
VideoPortPutDmaAdapter
VideoPortQueryPerformanceCounter
VideoPortQueryServices
VideoPortQuerySystemTime
VideoPortQueueDpc
VideoPortReadPortBufferUchar
VideoPortReadPortBufferUlong
VideoPortReadPortBufferUshort
VideoPortReadPortUchar
VideoPortReadPortUlong
VideoPortReadPortUshort
VideoPortReadRegisterBufferUchar
VideoPortReadRegisterBufferUlong
VideoPortReadRegisterBufferUshort
VideoPortReadRegisterUchar
VideoPortReadRegisterUlong
VideoPortReadRegisterUshort
VideoPortReadStateEvent
VideoPortRegisterBugcheckCallback
VideoPortReleaseBuffer
VideoPortReleaseCommonBuffer
VideoPortReleaseDeviceLock
VideoPortReleaseSpinLock
VideoPortReleaseSpinLockFromDpcLevel
VideoPortScanRom
VideoPortSetBusData
VideoPortSetBytesUsed
VideoPortSetDmaContext
VideoPortSetEvent
VideoPortSetRegistryParameters
VideoPortSetTrappedEmulatorPorts
VideoPortSignalDmaComplete
VideoPortStallExecution
VideoPortStartDma
VideoPortStartTimer
VideoPortStopTimer
VideoPortSynchronizeExecution
VideoPortUnlockBuffer
VideoPortUnlockPages
VideoPortUnmapDmaMemory
VideoPortUnmapMemory
VideoPortVerifyAccessRanges
VideoPortWaitForSingleObject
VideoPortWritePortBufferUchar
VideoPortWritePortBufferUlong
VideoPortWritePortBufferUshort
VideoPortWritePortUchar
VideoPortWritePortUlong
VideoPortWritePortUshort
VideoPortWriteRegisterBufferUchar
VideoPortWriteRegisterBufferUlong
VideoPortWriteRegisterBufferUshort
VideoPortWriteRegisterUchar
VideoPortWriteRegisterUlong
VideoPortWriteRegisterUshort
VideoPortZeroDeviceMemory
VideoPortZeroMemory
VpNotifyEaData

#5849Mov AX, 0xDEADAnd why can this error happen? What has to be stored in var_468 and can I give a value by hand to var_468?
Set breakpoint before call VideoPortSetRegistryParameters() and you will see all regs and vars
Because you dont know asm, you won't be able to go deep further
#5850diderius6⇗ @Mov AX, 0xDEAD
Oh, I can learn a lot and I have 3 weeks time
Dietmar

 

Page 391

#5851diderius6May be the most easy way, to get correct values for the Baytrail with DEV_0F31 for the registry of XP SP3
is just to install Win7 on the Baytrail J1900 board
and extract the changes in registry for the ialm device (and etc.), do the same for HD4000 (via force in *.inf) and then put the changes compared to HD4000 into the registry of XP SP3.
So, no need for any *.inf for the igxpmp32.sys and etc. under XP
Dietmar

PS: Under XP, I can see in registry, that the ialm device (2 devices) have an root enum entry and with Windbg that the root device is started, but only not for the DEV_0F31.

So may be, that my mod of the igxpmp32.sys for DEV_0F31 is already working,
but only the correct entries in registry for DEV_0F31 Baytrail Valley View are missed.
#5852gordo999
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #5843
In IDA to search bytes/strings switch to HEX VIEW screen...
⇗ @Mov AX, 0xDEAD ...thanks for tip. There are times when I encounter large amounts of code that has not been decompiled correctly and I work through it a bit at a time using the 'undefine' command. Then I go through that data looking for obvious strings. Sometimes, I also look for common assembly instructions like a jump or return, which helps identify code.

I always load the resources section when loading the executable and go through it as well. My version of IDA is an older version so maybe yours does a better job of disassembly. I do have the free version 7 as well.
#5853gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #5847
Because I am very bad in Assembler,
can you please describe, how the 4 parameters via eax, ecx, edx are given to
VideoPortSetRegistryParameters(
PVOID HwDeviceExtension,
PWSTR ValueName,
PVOID ValueData,
ULONG ValueLength
)


⇗ @diderius6 ...if you look before the CALL VideoPortSetRegistryParameters statement you will see PUSH instructions to PUSH eax PUSH ecx, etc. The PUSH closest to the CALL is usually the first parameter in the statement above. There are different calling conventions but the one I have described is the one I have always encountered in apps running Windows code.

You can't do that using IDA in the straight decompiler mode. I have not used the IDA debugger so I'm not familiar with how it works. You need a debugger like Windbg. You need the ability inherent in a debugger to dump the memory at a specific address so you can see what is there.

Of course, the PUSH statements are pushing those values onto the stack, a temporary memory location. The CALLed function can then retrieve the values from the stack. The return address is PUSHed automatically by the system and that provides a means of tracing back through code when you are nested deep in a CALL structure (A called function calls another function which calls another function....).

You can sometimes confirm you have the right parameter by looking at the address referenced in the PUSH statement. For example, if the statement before the CALL references the second parameter, PWSTR ValueName, it is a pointer to the address of a string. PWSTR means pointer to a wide string where wide means a unicode string. When you see the string in memory it will be the ASCII characters separated by zeros, 0x00.

Of course, the PWSTR is not there in the assembly code unless you also have the source code loaded in the debugger. So, you have to learn to dump the address indicated at PWSTR ValueName and look for the string. If it's not there, and sometimes it isn't for some reason, there may be another address at that location, so you can dump that address to see if the string is there.  It can all seem very complex but once you start tracing through code it becomes second nature.

I learned by keeping a Win32 programming manual beside the computer, an ASCII table, and of course, the Intel assembly instruction manual. You can look up most functions on the Net these days.

You can't do this using IDA. You need a debugger like Windbg. The problem today is that most code is 64 bit and many debuggers were written for 32-bit code. I have used the 64-bit version of Olly and the newer x64dbg debugger. Windbg has a steep learning curve and is not always as easy to use as something like x64dbg. It's a trade-off, depending on what you are trying to do. I have not ncountered problems tracing 64-bit code as opposed to 32-bit. The major difference is the size of the addresses and data. Most of the time, the 8 least significant bytes is all you need. I use the few most significant bytes to orient myself in the code, nothing overly complex.

If you encounter a CALL VideoPortSetRegistryParameters, the first parameter of the function will be PUSHed last, so it will appear right before the CALL. Sometimes, they use MOV instructions, or LEA instructions with the PUSH instructions, so the code before the CALL can be quite spread out and not neat, and compact as indicated in your statement above.
#5854diderius6⇗ @gordo999

Thanks a lot for help!
Today I think, that the problem itself is not in the modded igxpmp32.sys driver.
I notice, that from the versions 5441, 5445, 5449 (last) the Device for Baytrail with DEV_0F31 is mentioned
in the line with
cmp     eax, 0F31h

May be, that the much bigger problem is to set the correct values for the Valley View (Baytrail) to registry.
Some settings are different for HD4000 (DEV_0166), because in other case *.inf mod would work for Valley View (Baytrail) also.
And also in Win7 they are separated, HD4000 with [iIVBM_w7]
and Valley View (Baytrail) with [iVLV2M_w7] in the *.inf file.
Do you know, where the concrete numbers for the entries from the *.inf file are stored?
May be in a *.dll?
And the question is, if such a *.dll needs to be modded for to support DEV_0F31 or is it only needed one time for to set the correct values to registry? With other drivers this problem does not happen, because their entries are very few and only in
HKLM\System\ControlSet001\Services.
May be the Bsod 0x50 happens, because XP does not know, where to find the correct values for the entries for Valleyview (Baytrail) to the registry (because they just do not exist until now under XP)
and so an empty string is the result in ValueData in
VideoPortSetRegistryParameters(
PVOID HwDeviceExtension,
PWSTR ValueName,
PVOID ValueData,
ULONG ValueLength
)

Dietmar

PS: May be, that the correct values for PVOID ValueData can be given by hand.
For that you need to know, WHICH values are needed at this place from VideoPortSetRegistryParameters to registry.
VideoPortSetRegistryParameters is called several times and the first call of it survives without Bsod.
#5855diderius6I take a look at the mod from ⇗ @canonkong
for HD510 => UHD610 under Win7.
He modded only *.inf and *.sys.
And the way how he did this, is clear for me.

The problem with Baytrail Valley View Mod is harder, because in Win7 there is only one packet called

iSKLD_w7

in its *.inf. And all the different DEV_ numbers also in mod belong only to this package.
This is other in Win7 for DEV_166 (HD4000) and DEV_0F31 (Baytrail, Valley View).
There are 2 different packages in its *.inf.
So, this other package has to be put to registry for Baytrail, a little bit different from HD4000
Dietmar
#5856schreibersteinNew report:

After testing out the Sapphire AMD Radeon 7970 graphics card for a while now, I fount its performance to be lackluster on my Z490 platform:

Pro:
- Modern driver support in "modern" operating systems (e.g. Windows 10, Apple macOS, ...)
- Reasonable performance for a card from ~2011
- Vulkan support
- Quiet, high quality card
- Sharp image output
- 4K compatibility with HDMI and DisplayPort

Neg:
- Performance feels dated when playing games at 1440p
- Windows XP 2D performance is very slow (~1900 pts in Tom 2D Benchmark)
---> Regardless of the blazing fast 10 core CPU, the UI feels very sluggish like an old Intel Centrino notebook from 2005.
---> Performance degraded even further when using the PAE memory patch to enable more than ~900 MB of RAM (~1900 pts to ~400 pts on Tom 2D Benchmark) = UNUSABLE PERFORMANCE!
---> Scrolling in web browser felt slow
- Catalyst Control Center buggy on Windows XP


Out of frustration and curiosity, I purchased a MSI NVIDIA GeForce 980 Ti (circa late 2015) and installed it in my Z490 system.
I use a Sapphire Radeon 5700 XT Pulse as my primary graphics card (also during boot), and the 980 Ti in the second slot.
After boot, I use my DVI KVM switch to switch to the 980 Ti's DVI output.
The driver's need to be modded in order for them to work with 900 series cards higher than the GTX 960:
(Source: Polish tutorial ⇗ https://www.youtube.com/watch?v=xwWrxu84hDw)

- Go to NVIDIA Website
- Download driver for GeForce 960 for Windows XP (368.81-desktop-winxp-32bit-international.exe) from 2016
- Execute installer until it crashes (no compatible card found) = Installer files are now extracted!
- Edit "C:\NVIDIA\DisplayDriver\368.81\winxp\International\Display.Driver\nv4_dispi.inf"

- Under "Manufacturer" add:

%NVIDIA_DEV.13C2%           = Section008, PCI\VEN_10DE&DEV_13C2
%NVIDIA_DEV.13C0%           = Section008, PCI\VEN_10DE&DEV_13C0
%NVIDIA_DEV.17C8%           = Section008, PCI\VEN_10DE&DEV_17C8
%NVIDIA_DEV.17C2%           = Section008, PCI\VEN_10DE&DEV_17C2
%NVIDIA_DEV.17F0%           = Section012, PCI\VEN_10DE&DEV_17F0

- Under "Strings" add:

NVIDIA_DEV.13C2 = "NVIDIA GeForce GTX 970"
NVIDIA_DEV.13C0 = "NVIDIA GeForce GTX 980"
NVIDIA_DEV.17C8 = "NVIDIA GeForce GTX 980 Ti"
NVIDIA_DEV.17C2 = "NVIDIA GeForce GTX TITAN X"
NVIDIA_DEV.17F0 = "NVIDIA Quadro M6000"

- Save file
- Execute installer setup.exe "C:\NVIDIA\DisplayDriver\368.81\WinXP\International\setup.exe"
- Install driver normally

The experience is SIGNIFICANTLY better than with the AMD Radeon 7970 card! :
- Tom 2D Benchmark results improved from ~1900 pts to ~6380
- UI feels really responsive, like I would expect from a modern system
- No performance degradation when using PAE patch to fully use my 64GB of RAM (maybe ~300 pts less in Tom 2D? But certainly not noticeable)
- Browsing experience very smooth with MyPal
- Significantly better performance overall, even in modern applications or games

Keep in mind that this card is NOT supported in modern macOS versions and probably never will!

I recommend the NVIDIA GeForce 900 series for modern Windows XP systems.
The system finally works like I always wanted it to work: Snappy, overkill, quiet.
I can finally use more than ~900 MB of RAM without the system becoming an unresponsive, slow mess!

If I could find any way to use Creative EAX sound with PAE enabled (any Creative card or USB card driver for that matter), it would be perfect.
Because all drivers I tested for Creative PCI cards only emitted noise when using any PAE patch (4GB or ALL).

Right now, I am using a USB3 Ethernet adapter with Realtek 8153 chipset until there is some way to enable the onboard NICs.
The modded Microsoft generic XHCI driver works fabulously.
I thank you all.

Best regards,
schreiberstein
#5857onuracengiz⇗ Unofficial Windows XP Service Pack 4
⇗ .Net Framework runtimes
⇗ The latest supported Visual C++ downloads
⇗ Potplayer
⇗ K-Lite Codec Pack Mega 13.8.5 for Xp
⇗ Windows Media Format Runtime for Windows XP/Vista
⇗ 7-zip
⇗ Privazer
⇗ Smart Defrag
⇗ DirectX End-User Runtimes (June 2010)
⇗ DirectX 3.0, 5.2, 6.1, 7.0, 8.0, 8.1, and 8.2
⇗ Microsoft Visual Basic 6.0 Service Pack 6 Security Rollup Update
⇗ Microsoft UAA Bus Driver for High Definition Audio
⇗ OpenAL
⇗ TCP Optimizer
⇗ K-Meleon
⇗ CabMaker 1.2 (sapientcoder's / dated 7 May 2018)
#5858tumagonx
Zitat von ⇗ schreiberstein im Beitrag ¶ #5856
New report:

If I could find any way to use Creative EAX sound with PAE enabled (any Creative card or USB card driver for that matter), it would be perfect.
Because all drivers I tested for Creative PCI cards only emitted noise when using any PAE patch (4GB or ALL).

schreiberstein


Thanks for the report thats really cool hardware!
I didn't know maxwell driver is compatible with the PAE patch. I have read conflicting info about PAE and maxwell:
⇗ https://www.nvidia.com/en-us/geforce/for...pport-pae-mode/
⇗ http://fireswordblog.blogspot.com/2014/0...msys-after.html


Have you try ASUS Xonar with their emulated EAX (C-Media chipset)?

Another thing, can you use your 64GB RAM fully (say run multiple 7zip at max compression)?
according to this paper:
⇗ https://demandtech.com/wp-content/upload...ws-anUpdate.pdf
there is 16GB barrier of "normal" use and the rest will need AWE (like lmdisk). Assuming pagefile is disabled.
#5859tumagonxTo BIOS modder here,
Is there easy way to spot XP ACPI incompatibility before buying new motherboard? let say by downloading BIOS update from vendor and check for particular strings in ROM file?

Could I rely on specs information where vendor claim ACPI 1.x compatibility like: ⇗ https://www.asrockrack.com/general/produ...#Specifications

PS: assuming I use vanilla XP acpi.sys.
#5860onuracengiz
Zitat von ⇗ schreiberstein im Beitrag ¶ #5856

If I could find any way to use Creative EAX sound with PAE enabled (any Creative card or USB card driver for that matter), it would be perfect.



⇗ SB Audigy Series Support Pack 6.1 (maybe?)
#5861diderius6⇗ @tumagonx

Yes, a Bios with Acpi 1.b is full Acpi compatible with XP.
But there may be no drivers at all under XP for this board.

Until now, I do not find a single motherboard,
where mod of Bios DSDT and /or modded acpi.sys does not work for to start XP with Acpi
Dietmar
#5862diderius6I found in the Mod from ⇗ @canonkong,
that the Device with DEV_0D26 HD5200 is very similar with
Baytrail DEV_0F31 but with other magic numbers and some more stuff for Baytrail
Dietmar
#5863schreiberstein⇗ @onuracengiz I was already trying it with the daniel_k driver packs. Both Audigy and X-Fi. Nothing. And the X-FI Driver was actually from 2016 or so. Very recent. It seems that everything that Creative touched is not PAE compatible.
My onboard Realtek ALC 1220 on my Z490 Designare D works without problems with non-PAE and PAE. But sadly it does not have ASIO or particularly good sound.
⇗ @tumagonx I have been thinking about the Asus Xonar cards, even though I have read that their EAX emulation is mostly a joke. And it is questionable how well the XP compatibility works.

For USB Audio devices, I am sure that in order to support EAX they would need some kind of special Creative driver... and this would probably result in the same incompatibility.

(ASIO works under PAE, but normal Windows Sounds is high pitched noise.)
If I find a cheap offer on eBay, I will probably get one of these newer Creative USB cards.

Individual tasks on 32-Bit should be limited to 2GB. I will try some high memory programs and try to get some kind of VM hypervisor working. (Need to track down old VMware versions (10?), hoping they will still work with this new CPU).

Overall, I have never been so satisfied with my Windows XP setup.
It would be quite possible to use it as "daily driver" as well.

And btw. I find it amusing that I purchased a 980 Ti for "Retro Gaming / Retro Computer purposes".
I barely play games at all, but many high end cards have very nice to have features (higher resolutions, more ports, zero / low fan speed, higher quality, ...)

EDIT: Remaining problem I have: The CPU does not boost at all! It is constantly stuck at base clock of 3.6 GHz in case of my 10850K. Is there any tweak / setting I could apply to allow it to boost?
I remember that it worked on my 9900K on my Z390 Designare board.
#5864onuracengizthere is no other special creative drivers around,except ⇗ OpenAL is missing in that package (some apps/games were depending on that back in the day)
have you tried using an audio control app,like fxsound on top of it? (for pinpointing the problem)
#5865infuscomus⇗ @schreiberstein

have you tried an Audigy RX? This works for my threadripper system.

 

Page 392

#5866schreiberstein⇗ @infuscomus Does it work WITH PAE patch enabled?
Which drivers did you use? daniel_k's package?

If it works, I would order myself one of those.

Cheers,
schreiberstein
#5867Mov AX, 0xDEAD
Zitat von ⇗ gordo999 im Beitrag ¶ #5853

You can't do this using IDA. You need a debugger like Windbg.


IDA has internal windbg plugin, i always use IDA for debugging kernel level things
It's little tricky, but works in most cases
#5868schreibersteinI can confirm that VirtualBox 5.2.44 from July 2020 (the now unsupported branch before the 6.0 that happened later in 2020) works just fine on my system.
It is possible to allocate up to 3854 MB to the guest.
64 Bit guests work: I confirmed Ubuntu 20.04 to work with 3854MB.
Due to the 32 Bit limitation, I assume it is impossible to allocate more than 3.8GB to a guest.
Maybe this can be circumvented with VMware, but I think the last working release is very very old which may be even more problematic than using VirtualBox.
It is possible that the CPU is incompatible. I will try to confirm that later.

For now, it is simply amazing to be able to run virtual machines. :-)

Cheers,
schreiberstein

EDIT: VMware Workstation 10.0.0.7 is the last supported version for 32-Bit Windows hosts (including XP).
Booting a modern GNU/Linux system results in a Kernel Panic at a very early stage. I think it is an incompatibility with the modern hardware.
However, I found out that VirtualBox can be patched to ignore the arbitrary 3854MB limit (VBoxSVC.exe needs to be patched).
See: ⇗ https://deadfishsw.wordpress.com/2016/07...e-3584mb-limit/
(If this blog ever goes down, contact me, I have a copy of this.)
After the file has been patched, you can edit the ".vbox" file of your virtual machine and adjust the assigned RAM manually. (Cannot be done via the GUI!)
This is slightly inconvenient, but very doable.
I tested assigning 16GB to a 64 Bit guest and it worked flawlessly.
That is, virtualization should be fine for at least several more years.

EDIT2: I can confirm it is working reliably. Running prime95 memory stress mode and several applications lead the system to consume to consume 92% of 16GB RAM. No crashes, no calculation errors in prime95, ... THIS IS GREAT!
#5869tumagonx
Zitat von ⇗ diderius6 im Beitrag ¶ #5861
@tumagonx

Yes, a Bios with Acpi 1.b is full Acpi compatible with XP.
But there may be no drivers at all under XP for this board.

Until now, I do not find a single motherboard,
where mod of Bios DSDT and /or modded acpi.sys does not work for to start XP with Acpi
Dietmar


Thanks if possible I want to keep all XP files intact except for kernel and hal where they can be loaded as different filename, I kind of baffled by how random ASrock put their ACPI compliance as the one above is xLake generation and their other xLake MB have ACPI 3.0.
Is there any rules why vendor put particular ACPI level?
#5870Mov AX, 0xDEAD
Zitat von ⇗ tumagonx im Beitrag ¶ #5869
Thanks if possible I want to keep all XP files intact except for kernel and hal where they can be loaded as different filename

you still need patched acpi.sys because most modern MBs use acpi 2.0 syntax
if you want to keep original acpi.sys, need heavy patching DSDT/SSDT tables in bios, this is hard work
#5871tumagonx
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #5870
Zitat von ⇗ tumagonx im Beitrag ¶ #5869
Thanks if possible I want to keep all XP files intact except for kernel and hal where they can be loaded as different filename

you still need patched acpi.sys because most modern MBs use acpi 2.0 syntax
if you want to keep original acpi.sys, need heavy patching DSDT/SSDT tables in bios, this is hard work



That's why I'm hunting down ACPI 1.x compatible MBs :) BTW thank for your ntldr ACPI patcher, I'm considering to patch the NTFS boot record (to load different ntldr).

⇗ @schreiberstein
Once you solve EAX issue, you should post your system on youtube, you will pissing off lots of XP hater there! :D
#5872gordo999
Zitat von ⇗ onuracengiz im Beitrag ¶ #5857
.Net Framework runtimes (from 3.5sp1 to 4.8)
⇗ @onuracengiz ...my understanding is that XP won't run on .Net above version 3.5. Can you confirm?

Thanks for links, I have been running the unofficial SP4 for some time.
#5873schreiberstein⇗ @tumagonx I am considering that. Especially now that I have PAE mode working reliably and can run VMs with 16GB of guest memory. Next year is XP anniversary.  With a VM for the "OH NO! I NEED THIS APP BUT IT NEEDS WINDOWS 7 OR LATER!!!!1111" moments, it can be used as a daily driver. I only wish MyPal browser would be a tad more reliable. The Chinese Chromium forks are not much better.

I would also like to move XP to a NVME drive. Then it would be perfect overkill.
#5874gordo999
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #5867
IDA has internal windbg plugin, i always use IDA for debugging kernel level things
⇗ @Mov AX, 0xDEAD ...thanks for information. My IDA versions are so old they were installed on XP (version 5+). I am using the newer free IDA version 7. I'll try to find the windbg plugin but I'm not sure if it will work with older version.

I miss the softice debugger. It did not have the advanced features of windbg but it could trace anywhere in ring 0. At the sysenter command, you could trace into it and into system code. I have not been able to do that with windbg or any other debugger.

Some people claim you don't need to trace system code but I often found it useful. For example, a directx app uses its own mouse cursor so you can't trap a mouse button press. With softice, I was able to trap a LButtondown command using wmcommand and trace through the mouse driver, through ring 0 code, and into the dx app from the backend.
#5875diderius6Hi,
I think, that I am only one step away from to get Baytrail VGA to run on XP.
All wished entries are put to registry.
The 5449 driver starts but then gets unloaded again, for an unknown reason.
⇗ @Mov AX, 0xDEAD
Can you please write a short Tutorial, how to set a breakpoint for the driver igxpmp32.sys vers. 5449?
And how to look with Windbg step by step at which point this driver gets unloaded.
I have no Bsod now. Can this also happen, because I did a small mod for igxpmp32.sys and now setupapi.log cries in Windows about everything is unsigned

Dietmar

PS: I load it up, maybe somebody wants to test. It is the modded driver igxpmp32.sys and modded *.inf all together
with there original ones. I modded the Magic Numbers for XP to 9 5 0Eh .
In the original driver 5449 it was 9 7 0Eh .

⇗ https://ufile.io/s6lgsp56
#5876YuriyCN
Zitat von ⇗ schreiberstein im Beitrag ¶ #5856
New report:

After testing out the Sapphire AMD Radeon 7970 graphics card for a while now, I fount its performance to be lackluster on my Z490 platform:

Neg:
- Performance feels dated when playing games at 1440p
- Windows XP 2D performance is very slow (~1900 pts in Tom 2D Benchmark)
---> Regardless of the blazing fast 10 core CPU, the UI feels very sluggish like an old Intel Centrino notebook from 2005.
---> Performance degraded even further when using the PAE memory patch to enable more than ~900 MB of RAM (~1900 pts to ~400 pts on Tom 2D Benchmark) = UNUSABLE PERFORMANCE!
---> Scrolling in web browser felt slow
- Catalyst Control Center buggy on Windows XP



1. To increase 2D performance on RADEON video cards in 2-3 times, you need to replace the videoprt.sys file with a file with WinXP SP2.
⇗ https://www.upload.ee/files/12489589/videoprt_files.zip.html

2. Good Catalyst Control Center for Windows XP
⇗ https://www.upload.ee/files/12377846/AMD...-Pack3.zip.html

3. Scrolling in web browser felt slow - it is observed with PAE only. Without PAE - scrolling in web browser works fast.
Replace the file c:\WINDOWS\system32\drivers\videoprt.sys - and the scroll will work fine!
#5877schreiberstein⇗ @YuriyCN Thank you very much! If I get around to test the AMD/ATI Radeon card again, I will definitely give this a shot! Wish I had known this a bit earlier... However, the 980 Ti really is a beast. I do not regret upgrading.
#5878tumagonx
Zitat von ⇗ schreiberstein im Beitrag ¶ #5868
I can confirm that VirtualBox 5.2.44 from July 2020 (the now unsupported branch before the 6.0 that happened later in 2020) works just fine on my system.
It is possible to allocate up to 3854 MB to the guest.
64 Bit guests work: I confirmed Ubuntu 20.04 to work with 3854MB.
Due to the 32 Bit limitation, I assume it is impossible to allocate more than 3.8GB to a guest.
Maybe this can be circumvented with VMware, but I think the last working release is very very old which may be even more problematic than using VirtualBox.
It is possible that the CPU is incompatible. I will try to confirm that later.

For now, it is simply amazing to be able to run virtual machines. :-)

Cheers,
schreiberstein

EDIT: VMware Workstation 10.0.0.7 is the last supported version for 32-Bit Windows hosts (including XP).
Booting a modern GNU/Linux system results in a Kernel Panic at a very early stage. I think it is an incompatibility with the modern hardware.
However, I found out that VirtualBox can be patched to ignore the arbitrary 3854MB limit (VBoxSVC.exe needs to be patched).
See: ⇗ https://deadfishsw.wordpress.com/2016/07...e-3584mb-limit/
(If this blog ever goes down, contact me, I have a copy of this.)
After the file has been patched, you can edit the ".vbox" file of your virtual machine and adjust the assigned RAM manually. (Cannot be done via the GUI!)
This is slightly inconvenient, but very doable.
I tested assigning 16GB to a 64 Bit guest and it worked flawlessly.
That is, virtualization should be fine for at least several more years.

EDIT2: I can confirm it is working reliably. Running prime95 memory stress mode and several applications lead the system to consume to consume 92% of 16GB RAM. No crashes, no calculation errors in prime95, ... THIS IS GREAT!



Haha that's XP as light hypervisor OS.
Then my next question is if you use lmdisk to create ~48GB ramdisk using awealloc and then put 12 x 4095MB pagefiles there, will XP total virtual memory become ~<64GB overall? say in addition of running 16GB VM, you still able to allocate memory for multiple 7zip compressing stuff.

EDIT:
regarding TurboBoost, maybe XP don't properly support version 3.0?
⇗ https://ark.intel.com/content/www/us/en/...o-5-00-ghz.html
vs
⇗ https://ark.intel.com/content/www/us/en/...o-5-20-ghz.html
#5879blackwingcatHi.

When fail to load acpi, Windows 2000 does not show BSoD. It only shows blinking cursor after loading all text mode drivers. :3

Now I modded acpi.sys for Win2000 referencing XP acpi.sys build 6666.
But any structure are different from XP one.

for example , I should change the following code for Windows 2000.

 
 L0003B672:
mov eax,[esi+2Ch]
cmp word ptr [eax+02h],0002h ->[eax+08h],0002h
jnz L0003B7F9
xor edi,edi
inc edi
push edi
push 52545348h
push [L00029000] // [L0002DCF0]
call SUB_L0001FD9A // SUB_L000234A3
mov ecx,[esi+30h]
mov [ecx+10h] -> [ecx+14h],eax //[ecx+10h]
mov eax,[esi+30h]
add esp,0000000Ch
cmp [eax+10h] -> [eax+14h],ebx
jnz L0003B6DA
mov eax,C000009Ah


Is there modded source file ? :3

Zitat von ⇗ diderius6 im Beitrag ¶ #5801
@blackwingcat

Hi,
you can send me your acpi.sys from win2000 and the exact BSOD.
Then I try to to make acpi.sys work
Dietmar
#5880infuscomus⇗ @schreiberstein

The Audigy RX works in XP with 4GB PAE at least, I have not tested unlimited PAE.

 

Page 393

#5881schreiberstein⇗ @infuscomus Interesting. Which driver are you using?
#5882infuscomus⇗ @schreiberstein

The official Creative driver.
#5883onuracengiz
Zitat von ⇗ gordo999 im Beitrag ¶ #5872
Zitat von ⇗ onuracengiz im Beitrag ¶ #5857
.Net Framework runtimes (from 3.5sp1 to 4.8)
@onuracengiz ...my understanding is that XP won't run on .Net above version 3.5. Can you confirm?

Thanks for links, I have been running the unofficial SP4 for some time.


.net framework 4 will run,not sure about 5 yet
#5884tumagonx⇗ @infuscomus
⇗ @schreiberstein

There is a forum that say moving around the slot (or was it PCH vs CPU) affect the driver, and for system with >4GB the bigger the RAM the goner the sound.
#5885schreiberstein⇗ @tumagonx That would make sense!
All Creative cards I have been testing were attached to my main machine via an external ExSys 1010 PCI-Express to PCI conversion box. They worked mostly fine on Windows XP (no PAE) and Windows 10 x64. However, I experienced instability on Windows 10 when I added an Intel PCI NIC into the game. The system would just randomly freeze. Maybe getting a real PCI-Express card would improve the situation. I preferred the older Creative cards because they they had more support for my PC sound system from Cambridge Soundworks (Creative subsidiary) and its special multi channel SPDIF. The newer cards do not even have coaxial SPDIF so I am forced to use an external converter. I will try to order a cheap Audigy RX and test it. But I wish there was a USB sound card with good EAX and ASIO compatibility because that would make my life a lot easier. I might try to get one of these external SoundBlaster cards and test them. The older ones even have the special proprietary Digital DIN SPDIF output for my PC sound system.
#5886diderius6⇗ @blackwingcat

Have you tried to use the acpi.sys SP3 from outerspace ) direct on your win2000 installation?
For this, make a test on another motherboard with working acpi win2000, if acpi.sys from outerspace ) works there.
And can you use Windbg? For this, try working win2000 installation
and connect it to your new motherboard using nice Lan Debug from ⇗ @Mov AX, 0xDEAD .
The blinking cursor is a Bsod.
May be the Bsod is BugCheck 0x000000A5, {0x00000011, 0x00000008, xxx, yyy)
AMLILoadDDB failed to load DDB .
This I can hack also for acpi.sys for win2000 as I did for acpi.sys from outerspace ), win7 acpi.sys and win8 acpi.sys.
Make try and send me your win2000 acpi.sys

Dietmar

PS: I see, that you know assembler. I not. Can you tell me, how to set a breakpoint into a drivers code and to look step by step what this driver is doing via Windbg? I look for the reason, why a driver is started (showing 0x306 in windbg) and then gets unloaded.
#5887schreibersteinIs there anyone in here using the Intel Z490 platform on XP/2003 as well?

Is your CPU boosting to more than the base clock? (e.g. 3.6GHz)

Would appreciate to hear from you.
#5888diderius6 How to set a breakpoint for a driver in XP?

First I try, after hitting "break" very early in Windbg
kd> bp igxpmp32!DriverEntry
then I continue for windbg with
kd> g
and soon Windbg stops as wished, showing to me
nt!DebugService2+0x11:
80acb77b 5d pop ebp

This message I do not understand.
And the command
kd> g
no longer works.
kd> lm
shows me
start    end        module name
7c910000 7c9c6000 ntdll (deferred)
80100000 80127780 HAL3 (deferred)
80a02000 80da3000 nt (pdb symbols) c:\symbols\ntkrpamp.pdb\5B9E8A586D3D49D98927B5D5117577231\ntkrpamp.pdb
b9318000 b932b780 VIDEOPRT (deferred)
b932c000 b95a3c00 igxpmp32 (no symbols)
b95ec000 b9605b80 Mup (deferred)
b9606000 b9632980 NDIS (deferred)
b9633000 b96bf600 Ntfs (deferred)
b96c0000 b96d6880 KSecDD (deferred)
b96d7000 b96e8f00 sr (deferred)
b96e9000 b9708b00 fltMgr (deferred)
b9709000 b9720900 atapi (deferred)
b9721000 b9746a00 dmio (deferred)
b9747000 b9765d80 ftdisk (deferred)
b9766000 b9776a80 pci (deferred)
b9777000 b97a6d80 ACPI (deferred)
b98a8000 b98b1300 isapnp (deferred)
b98b8000 b98c2580 MountMgr (deferred)
b98c8000 b98d5200 VolSnap (deferred)
b98d8000 b98e0e00 disk (deferred)
b98e8000 b98f4180 CLASSPNP (deferred)
b9b28000 b9b2e180 PCIIDEX (deferred)
b9b30000 b9b34d00 PartMgr (deferred)
b9cb8000 b9cbb000 BOOTVID (deferred)
b9da8000 b9da9b80 kdcom (deferred)
b9daa000 b9dab100 WMILIB (deferred)
b9dac000 b9dad700 dmload (deferred)
b9e70000 b9e70d00 pciide (deferred)
and
kd> !devnode 0 1

DevNode 0x89b41808 for PDO 0x89abb2d0
InstancePath is "PCI\VEN_8086&DEV_0F31&SUBSYS_0F311849&REV_0E\3&11583659&0&10"
ServiceName is "ialm"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)


that the driver igxpmp32.sys for service "ialm" is loaded

as you can see via
kd> !analyze -v
Last event: Load module igxpmp32.sys at b932c000
debugger time: Sun Dec 20 13:32:25.562 2020 (UTC + 1:00)
but what would be next step
Dietmar
#5889diderius6May be it makes sense, to set a breakpoint in  igxpmp32.sys before one of the 44 import functions from videoport.sys
Dietmar

VideoPortAcquireDeviceLock
VideoPortEnumerateChildren
VideoPortFlushRegistry
VideoPortGetAccessRanges
VideoPortGetBusData
VideoPortGetCurrentIrql
VideoPortGetDeviceBase
VideoPortGetRegistryParameters
VideoPortGetVgaStatus
VideoPortInitialize
VideoPortInt10
VideoPortInterlockedDecrement
VideoPortInterlockedExchange
VideoPortInterlockedIncrement
VideoPortMapMemory
VideoPortMoveMemory
VideoPortQueueDpc
VideoPortReadPortUlong
VideoPortReadPortUshort
VideoPortReadRegisterBufferUchar
VideoPortReadRegisterBufferUlong
VideoPortReadRegisterBufferUshort
VideoPortReadRegisterUchar
VideoPortReadRegisterUlong
VideoPortReadRegisterUshort
VideoPortReleaseDeviceLock
VideoPortSetBusData
VideoPortSetRegistryParameters
VideoPortSetTrappedEmulatorPorts
VideoPortStallExecution
VideoPortStartTimer
VideoPortStopTimer
VideoPortSynchronizeExecution
VideoPortUnmapMemory
VideoPortVerifyAccessRanges
VideoPortWritePortUlong
VideoPortWritePortUshort
VideoPortWriteRegisterBufferUchar
VideoPortWriteRegisterBufferUlong
VideoPortWriteRegisterBufferUshort
VideoPortWriteRegisterUchar
VideoPortWriteRegisterUlong
VideoPortWriteRegisterUshort
VideoPortZeroMemory

#5890diderius6Maybe that to set a breakpoint with Windbg here does not work, because we dont have igxpmp32.pdb .
So the only way is to set a hardcoded breakpoint in igxpmp32.sys itself, but I have no idea how to do this
Dietmar

EDIT:In general, you're going to have to set breakpoints by address, since you
don't have symbols. Oh, this will be a hard job. May be easier, to build whole igxpmp32.sys new adding assembler breakpoints everywhere and heavy use of Pemaker.
#5891Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #5888
kd> bp igxpmp32!DriverEntry
then I continue for windbg with
kd> g
and soon Windbg stops as wished, showing to me
nt!DebugService2+0x11:
80acb77b 5d pop ebp

This message I do not understand.
And the command
kd> g
no longer works.

Hi diderius6,

this is bug of windbg, it sometimes get mad, stops somewhere in kernel and cant continue
1) to kill this nasty bug, i dont use "bp igxpmp32!DriverEntry", instead i change opcodes inside igxpmp32.sys to EB FE (endless jmp to itself = jmp $), find where DriverEntry placed in file and change first two bytes to EB FE
2) when driver starts, windows will hang (but loading  bar still progressing), in windbg pause remote PC and you will get EIP exactly at igxpmp32!DriverEntry
3) change EB FE to original bytes by edit memory under EIP
4) if windows hangs again, this mean driver was reloaded from disk and need patch it in memory again :)

 

#5892diderius6⇗ @Mov AX, 0xDEAD

Driver entry (needs to be separated from where is the driver loaded in memory(!))
for igxpmp32.sys is 10267A20 (together with the offset of 10000000).
push    ebp <======== 10267A20 (address of driver entry in igxpmp32.sys)
mov ebp, esp
sub esp, 60h
mov eax, [ebp+DriverObject]
mov dword_10267864, eax
push offset aDriverentryEnt ; "DriverEntry entered\r\n"
push 80000000h
call sub_10016CB0
Which of them has to be changed to EB FE
thanks a lot
Dietmar

EDIT: Is this correct?
PAGE:10267A20 DriverEntry: ; CODE XREF: PAGE:DriverEntry j
PAGE:10267A20 jmp short DriverEntry
First 2 Bytes from DriverEntry 55 8B => EB FE (changed at address 10267A20)
#5893Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #5875
Hi,
Can you please write a short Tutorial, how to set a breakpoint for the driver igxpmp32.sys vers. 5449?
And how to look with Windbg step by step at which point this driver gets unloaded.

⇗ @diderius6
first is easy, but pointless, let's assume you was stoped CPU at start of driver and what you will do next  ? how you will check problem variables on stack ? Why var is not as should be ? etc....

"unloading driver" is driver depend, DriverEntry of any driver usualy always return OK because this is time critical (?) to OS and no time to check proper PCI/HW Regs/...But when OS ready to full init driver it start bombing driver with various IRP packets. On every packet driver must return error code, if no error, driver return 0/Not supported/Delayed. If driver found real error it report it as answer to packer and OS unload it.
You need track on which packet driver return error and why

Puzzle ? Yes, for example i didnt found how VIA USB3 driver unload itself on non-via hardware because it do this job unknow way
#5894Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #5892
@Mov AX, 0xDEAD
push    ebp <======== 10267A20 (address of driver entry in igxpmp32.sys)
mov ebp, esp
sub esp, 60h


EDIT: Is this correct?

PAGE:10267A20 DriverEntry: ; CODE XREF: PAGE:DriverEntry j
PAGE:10267A20 jmp short DriverEntry
First 2 Bytes from DriverEntry 55 8B => EB FE (changed at address 10267A20)

best is to change mov   ebp, esp =>  EB EF because mov  ebp, esp is 2-bytes opcode
but 55 8B => EB EF is OK, just debuger will mess with decoding of:
mov     ebp, esp
sub     esp, 60h

 

#5895diderius6⇗ @Mov AX, 0xDEAD

Oh, such a lot of fun:)).
There are some possibilities.
In next step I will install naked Win7 32 bit on the J1900 board.
I make an extract of whole registry.
And then I install the Baytrail with DEV_0F31 driver for Win7 there.
Again I make extract of whole registry and compare them one by one with Beyond Compare2.

Then I install win7 with nothing else on the x230 Lenovo thinkpad. It has HD4000 driver.
There I make the same procedure with the same driver and extract of registry before and after and compare.

Via this way I have a chance for to see, if it is a setting in registry, that makes the driver unload
Dietmar

EDIT: I change mov ebp, esp => EB EF

First lesson I learned: I dont want to jmp 17 Bytes back, only 2 Bytes back and so as I did right in first try it has to be
mov ebp, esp => EB FE this was my error.

 

Page 394

#5896gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #5886
Can you tell me, how to set a breakpoint into a drivers code and to look step by step what this driver is doing via Windbg? I look for the reason, why a driver is started (showing 0x306 in windbg) and then gets unloaded.
⇗ @diderius6 ...It's not that easy at the best of times, especially if you are new to assembly language.

I have seen many tutorials written for debugging specific applications but it's a lot easier when you are trying to debug a working app. You are trying to debug a system issue, or maybe a fault. That's a lot tougher. The structure of normal Windows apps is well known but the system code which addresses drivers is usually gained by experience. There's a good chance you won't be able to trace into the system code with windbg in order to see why the driver is being unloaded.

You have to set up windbg to use symbols, which means pointing it toward the Microsoft symbol server. If you don't, windbg will complain and if you set a breakpoint, when you get to the code it will be straight assembly language without the function names to let you know where you are. I have done that where no symbols are available but you need to be conversant with the assembly code and what it is doing. There are good tutorials on the Net for setting up windbg.

Secondly, there is really no tutorial anyone could offer for what what you ask. The breakpoints required are specific to the code within a driver. You could set a BP to break when a driver is encountered, or if you know the driver's memory range, you could set a BP to break in that range. However, you could trace forever till the driver is unloaded. Even then, the reason for it unloading might not be obvious.

I suggest you first use another utility like Procmon (process monitor by sysinternals) and see if it detects your driver. If the driver is being loaded during the boot phase, you can enable boot logging in procmon and see if it detects your driver. There may be similar utilities on the Net that can monitor loading/unloading. The idea is to watch the activity around your driver loading/unloading so you can get an idea of related processes.

It would be to your advantage to learn windbg and/or an alternate 64-bit debugger like x64dbg. I know that assembly language can seem complicated at first, but it is not that complicated to learn for tracing through code. It's intuitive, as opposed to higher level languages. The main problem in tracing code is not the assembly instructions, it's the structures imposed on it by higher level languages. Unless you know the format of higher level languages like Delphi, which is based on forms, you can become lost in the assembly code.

I learned basic assembly decades ago related to hardware applications. Even thought the assembly I learned was rudimentary, it taught me the relationship between assembly code and the processor. That's really what it's all about, understanding the processor registers and the operations required to manipulate them.

Go for it. Get into code and begin tracing. Even though you are completely lost, read on it and ask questions. In a week or too you'll begin to feel more comfortable with it. Again, the problem is not the assembly code, it's the underlying structure of an OS like Windows. There are really good books written on that subject by people like Mark Russinovich of sysinternals. However, it takes a long time to read this stuff and digest it.
#5897diderius6⇗ @gordo999

Thanks a lot!

"In a week or too you'll begin to feel more comfortable with it. Again, the problem is not the assembly code, it's the underlying structure of an OS like Windows. There are really good books written on that subject by people like Mark Russinovich of sysinternals. However, it takes a long time to read this stuff and digest it."

The book I have, but never read:)).
Even this crazy grapic driver is >2MByte I have an intuition, where I have to look.
Maybe it is the name of the hardware string. There is a connection between it and the Magic Numbers.
Via compare of the settings in registry of the ialm entries in Services I see, that the hardware string changes with the use of different Magic Numbers.
In the Mod from ⇗ @canonkong I noticed via whole compare of driver before and after mod (i do this with Ida Pro and building an *.lst file of it and compare with Beyond Compare2 both. Very nice idea of comparing disambled code!)
that the Magic Numbers all stay as before, but the DEV Ids are careful put to an Magic Number from before.
#5898diderius6⇗ @Mov AX, 0xDEAD

After I injected the endless loop in igxpmp32.sys after the place of DriverEntry,
now the bar runs infinitly:)).
Strange, on first try the driver igxpmp32.sys gets corruptet(?) in System32\drivers.
I think, this happens because I change everything putting harddisk in an USB encloser.
And sometimes it happens, that transfer via USB is not complete, means error.

Now fun goes on.

When I hit break in Windbg, now it shows

kd> lm
start end module name
7c910000 7c9c6000 ntdll (pdb symbols) c:\symbols\ntdll.pdb\1751003260CA42598C0FB326585000ED2\ntdll.pdb
80100000 80127780 HAL3 (deferred)
80a02000 80da3000 nt (pdb symbols) c:\symbols\ntkrpamp.pdb\5B9E8A586D3D49D98927B5D5117577231\ntkrpamp.pdb
b9318000 b932b780 VIDEOPRT (deferred)
b932c000 b95a3c00 igxpmp32 (deferred)
b95ec000 b9605b80 Mup (deferred)
b9606000 b9632980 NDIS (deferred)
b9633000 b96bf600 Ntfs (deferred)
b96c0000 b96d6880 KSecDD (deferred)
b96d7000 b96e8f00 sr (deferred)
b96e9000 b9708b00 fltMgr (deferred)
b9709000 b9720900 atapi (deferred)
b9721000 b9746a00 dmio (deferred)
b9747000 b9765d80 ftdisk (deferred)
b9766000 b9776a80 pci (deferred)
b9777000 b97a6d80 ACPI (deferred)
b98a8000 b98b1300 isapnp (deferred)
b98b8000 b98c2580 MountMgr (deferred)
b98c8000 b98d5200 VolSnap (deferred)
b98d8000 b98e0e00 disk (deferred)
b98e8000 b98f4180 CLASSPNP (deferred)
b9b28000 b9b2e180 PCIIDEX (deferred)
b9b30000 b9b34d00 PartMgr (deferred)
b9cb8000 b9cbb000 BOOTVID (deferred)
b9da8000 b9da9b80 kdcom (deferred)
b9daa000 b9dab100 WMILIB (deferred)
b9dac000 b9dad700 dmload (deferred)
b9e70000 b9e70d00 pciide (deferred)

kd> !DevNode 0x89b41808
DevNode 0x89b41808 for PDO 0x89abb2d0
Parent 0x89af85e8 Sibling 0x89b416d8 Child 0000000000
InstancePath is "PCI\VEN_8086&DEV_0F31&SUBSYS_0F311849&REV_0E\3&11583659&0&10"
ServiceName is "ialm"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
StateHistory[00] = DeviceNodeUninitialized (0x301)
StateHistory[19] = Unknown State (0x0)
StateHistory[18] = Unknown State (0x0)
StateHistory[17] = Unknown State (0x0)
StateHistory[16] = Unknown State (0x0)
StateHistory[15] = Unknown State (0x0)
StateHistory[14] = Unknown State (0x0)
StateHistory[13] = Unknown State (0x0)
StateHistory[12] = Unknown State (0x0)
StateHistory[11] = Unknown State (0x0)
StateHistory[10] = Unknown State (0x0)
StateHistory[09] = Unknown State (0x0)
StateHistory[08] = Unknown State (0x0)
StateHistory[07] = Unknown State (0x0)
StateHistory[06] = Unknown State (0x0)
StateHistory[05] = Unknown State (0x0)
StateHistory[04] = Unknown State (0x0)
StateHistory[03] = Unknown State (0x0)
StateHistory[02] = Unknown State (0x0)
StateHistory[01] = Unknown State (0x0)
Flags (0x000002f0) DNF_ENUMERATED, DNF_IDS_QUERIED,
DNF_HAS_BOOT_CONFIG, DNF_BOOT_CONFIG_RESERVED,
DNF_RESOURCE_REQUIREMENTS_NEED_FILTERED


1: kd> !analyze -v
Connected to Windows XP 2600 x86 compatible target at (Mon Dec 21 01:08:44.046 2020 (UTC + 1:00)), ptr64 FALSE
Loading Kernel Symbols
..........................
Loading User Symbols

*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

Unknown bugcheck code (0)
Unknown bugcheck description
Arguments:
Arg1: 00000000
Arg2: 00000000
Arg3: 00000000
Arg4: 00000000

Debugging Details:
------------------


PROCESS_NAME: Idle

FAULTING_IP:
nt!RtlpBreakWithStatusInstruction+0
80ac37ec cc int 3

EXCEPTION_RECORD: ffffffff -- (.exr 0xffffffffffffffff)
ExceptionAddress: 80ac37ec (nt!RtlpBreakWithStatusInstruction)
ExceptionCode: 80000003 (Break instruction exception)
ExceptionFlags: 00000000
NumberParameters: 3
Parameter[0]: 00000000
Parameter[1]: 80af4780
Parameter[2]: 000003f8

ERROR_CODE: (NTSTATUS) 0x80000003 - {AUSNAHME} Haltepunkt Im Quellprogramm wurde ein Haltepunkt erreicht.

EXCEPTION_CODE: (HRESULT) 0x80000003 (2147483651) - Mindestens ein Argument ist ung ltig.

EXCEPTION_PARAMETER1: 00000000

EXCEPTION_PARAMETER2: 80af4780

EXCEPTION_PARAMETER3: 000003f8

DEFAULT_BUCKET_ID: DRIVER_FAULT

BUGCHECK_STR: 0x0

STACK_TEXT:
b9cd3d4c 80ae3e02 00000001 00000000 0000000e nt!RtlpBreakWithStatusInstruction
b9cd3d54 00000000 0000000e 3fab8fe8 2df98998 nt!KiIdleLoop+0x32


STACK_COMMAND: kb

FOLLOWUP_IP:
nt!RtlpBreakWithStatusInstruction+0
80ac37ec cc int 3 <------ content of register EIP

SYMBOL_STACK_INDEX: 0

SYMBOL_NAME: nt!RtlpBreakWithStatusInstruction+0

FOLLOWUP_NAME: MachineOwner

MODULE_NAME: nt

IMAGE_NAME: ntkrpamp.exe

DEBUG_FLR_IMAGE_TIMESTAMP: 4802b3ce

BUCKET_ID: MANUAL_BREAKIN

Followup: MachineOwner
---------


Needs the content  80ac37ec of register EIP to be corrected, because endless loop is one Byte after DriverEntry?
EDIT: I make a test, where the first byte is changed, and EIP shows the same 80ac37ec.
This is a little bit strange for me, because how does Windbg knows, that the endless loop begins at driverentry,
when in real the loop starts one byte later?!
Dietmar
#5899gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #5897
Even this crazy grapic driver is >2MByte I have an intuition, where I have to look. Maybe it is the name of the hardware string. There is a connection between it and the Magic Numbers.

⇗ @diderius6 ...can you find the string reference in IDA? If so, you can probably trace it back to where the call is made to load the string. The magic numbers to which you refer are likely references for identifying the string. Many times, a string is called by different parts of the app or driver. Finding a string can be an art in itself.

Of course, when you find the call that loads the string it will come after the problem that caused the driver to be unloaded. You will probably see a compare statement followed by a conditional jump. If you look before the compare and jump statements you might find another CALL that leads to the cause of the driver being unloaded. However, the code leading up to that may be fairly complex. If you look at the stack in windbg it might give you a clue.

If you find the string referenced in IDA, there is usually a reference to where it is used. If you double-click that reference it will take you to the address in IDA where the string is used. It may be a call to a message box. You could try using the addresses preceding the call to the message box as a BP in windbg. The addresses probably won't be the same but the last 4 hex digits may be the same unless IDA has offset them. You can find the exact offset between IDA and windbg by having both open at the same code reference point.

For example, Mov AX Dead gave you the trick for putting the code into an infinite loop. If you insert that code at the beginning of the driver code, windbg will stop there. Note the address and write down some of the code. Then go to IDA and compare that code to the beginning of the IDA code for the driver.

Or, you might find a function call before the message box call where you can set a BP. Or, if you use the stack, you can find where the current function call will eventually return. Then you can set a BP on one of the functions before your current CALL and restart windbg. It should stop at that BP before the message box call, or the address referenced by the string. Then you can trace to the required code section.

There are tricks for cutting down on the number of traced code steps required. You'll learn those by doing it a lot. I always make detailed notes as a I trace, with addresses. If I trace blindly into a function and realize what it is doing, I mark that CALL with jo, for jump over. Then, if I have to restart I know which CALLs to jump over. In fact, I can set a BP on any of the address I recorded.

In windbg, or any other debugger, you can single-step or jump over a CALL. If you want, you can look ahead in the code and set a BP manually on any address ahead of where you are located in the code. Be careful with that because sometimes the processor does not execute in a linear fashion. Often, if I am caught in a LOOP, I will look for a RET statement after the LOOP and set a BP on it. Then I can bypass the LOOP. Some LOOPS are short but some can take thousands of steps before completing.

Try not to use a common windows function as a BP since that will make windows stop many times before your code. To get around that, learn how to use a conditional BP. That means you set a BP on a function with stated conditions such as EAX = 0x400. The language for that in windbg is unnecessarily complex, IMHO, but there are many examples on the Net. If you learn how to use it, you can use BPs much more effectively.
#5900gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #5898
@Mov AX, 0xDEAD After I injected the endless loop in igxpmp32.sys after the place of DriverEntry, now the bar runs infinitly:)).
⇗ @diderius6 ...you have to write down the code that was there before you replaced it with the infinite loop code. When windbg breaks on it, use windbg to replace the infinite loop code with the real code.

Go to View/Memory and open a Memory dump window. Before you do anything, click on the symbol on the top right corner that seems to be lines on a page. Click on 'Always floating'. That allows you to drag the window to any position. Then click in the window with @$Scope and type in your current address. It should dump the memory at that location. You may be able to just type in EIP, which is the register with the address of the current code location. IP = Instruction Pointer.

If you see the infinite loop code, set the cursor on the first byte, then type in the correct code you replaced earlier. When you hit Enter it should reset the code to the proper code.
#5901diderius6⇗ @gordo999

Yes, I found the string with Ida.
In registry is written
"HardwareInformation.AdapterString"=hex:08,70,03,e1,c4,c4,24,e1,10,a4,27,e1,14,39
for the Magic Number 9 5 0Eh
(this I think is the Magic Number, question if this is the correct string. There a test with Win7 can help).

and

"HardwareInformation.AdapterString"=hex:08,70,03,e1,a4,12,25,e1,cc,85,28,e1,14,39
for the Magic Number 9 7 0Eh

It is the same place, where the BSOD happens,

.text:10021FB8 loc_10021FB8: ; CODE XREF: sub_10020DB0+11E9 j
.text:10021FB8                 movzx   edx, [ebp+var_469]
.text:10021FBF                 cmp     edx, 1
.text:10021FC2                 jnz     short loc_10021FE1
.text:10021FC4                 mov     eax, [ebp+var_470]
.text:10021FCA                 push    eax
.text:10021FCB                 lea     ecx, [ebp+var_468]
.text:10021FD1                 push    ecx
.text:10021FD2                 push    offset aHardwareinfo_1 ; "HardwareInformation.AdapterString"
.text:10021FD7                 mov     edx, [ebp+arg_0]
.text:10021FDA                 push    edx
.text:10021FDB                 call    ds:VideoPortSetRegistryParameters
.text:10021FE1
.text:10021FE1 loc_10021FE1: ; CODE XREF: sub_10020DB0+1212 j
.text:10021FE1                 push    12h
.text:10021FE3                 push    offset aInternal ; "Internal"
.text:10021FE8                 push    offset aHardwareinfo_2 ; "HardwareInformation.DacType"
.text:10021FED                 mov     eax, [ebp+arg_0]
.text:10021FF0                 push    eax
.text:10021FF1                 call    ds:VideoPortSetRegistryParameters
.text:10021FF7                 push    22h
.text:10021FF9                 push    offset aIntelVideoBios ; "Intel Video BIOS"
.text:10021FFE                 push    offset aHardwareinfo_3 ; "HardwareInformation.BiosString"
.text:10022003                 mov     ecx, [ebp+arg_0]
.text:10022006                 push    ecx
.text:10022007                 call    ds:VideoPortSetRegistryParameters
#5902diderius6⇗ @gordo999

Thanks a lot, exact this my next question how to edit the driver in memory back to its original.
And the next next question is, how to come to this place, where the string is loaded.
I think it should be something like bp 0xaddress (for this string load).
For this we need to find this address.
This I do tomorrow,
now I am tired as much as possible
Dietmar

PS: To 99% I am sure, that we will get a working VGA driver for Baytrail under XP.
#5903gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #5902
And the next next question is, how to come to this place, where the string is loaded.
⇗ @diderius6 ...I am tired as well so good idea to leave it for tomorrow. Read through my recent post. I explained how to find the address of the code in IDA, using the string in IDA. The problem might be converting that IDA address to the windbg address.

In the code you included with this post you can see the IDA address at:

.text:10021FDB call ds:VideoPortSetRegistryParameters

Quite often, the 1FDB part of 10021FDB is the same in IDA and in windbg. That can help you narrow down the equivalent address in windbg where you can set a BP.

BTW, the code you included seems to be setting the parameters for HardwareInformation.AdapterString in the registry. I can't see this being a cause of the driver unloading unless for some reason it cannot find the right location in the registry. Maybe during one of the calls it tries to read something in the registry it does not like, then shuts down.

In that case, you'd have to follow the call into where it reads the registry.

Note the following code:

.text:10021FF9 push offset aIntelVideoBios ; "Intel Video BIOS"

It's pushing the address of the string Intel Video BIOS. That is followed by:

.text:10021FFE push offset aHardwareinfo_3 ; "HardwareInformation.BiosString"

If you look at the top of the code you see:

.text:10021FBF cmp edx, 1
.text:10021FC2 jnz short loc_10021FE1


That is the only jump statement in the code so there is not enough information in this code to tell what will ultimately happen. The jnz statement above sends the code execution within this code, not past it.

Without the pdb file for the driver you may not be able to BP on VideoPortSetRegistryParameters. However, if you can convert the address at the beginning of this code in idea @ .text:10021FB8 to the proper address in windbg, you can set a BP on the windbg equivalent address then trace through the code you have posted.

If I recall correctly, there are plugins for creating PDB files from an IDA disassembly.
#5904diderius6⇗ @Mov AX, 0xDEAD, ⇗ @gordo999

I have a question.
When I now know, where the exact entrypoint is for the driver igxpmp32.sys (80ac37ec, found out with EB FE hack)
why I cant change my driver with endless loop back against the original driver and set a breakpoint with
bp 0x80ac37ec just using now the original driver
Dietmar

EDIT: I just test my idea. Now command g or p works again.
When I hit p, Windbg shows me

kd> bp 0x80ac37ec
kd> g
nt!DebugService2+0x10:
80acb77a cc int 3
0: kd> p
nt!DebugService2+0x11:
80acb77b 5d pop ebp
0: kd> p
nt!DebugService2+0x12:
80acb77c c20c00 ret 0Ch
0: kd> p
nt!DbgLoadImageSymbols+0x42:
80ac3a12 c9 leave
0: kd> p
nt!DbgLoadImageSymbols+0x43:
80ac3a13 c20c00 ret 0Ch
0: kd> p
nt!MmLoadSystemImage+0xd4e:
80b9b69c 804b3610 or byte ptr [ebx+36h],10h
0: kd> p
nt!MmLoadSystemImage+0xd52:
80b9b6a0 8b4518 mov eax,dword ptr [ebp+18h]

But this are not the next codes from the loaded igxpmp32.sys driver??
From where are they above and what can I do to run step by step igxpmp32.sys?

I just compare with driverentry in post

¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (393)

They are identic but now with the BIG difference, that p or g command works again.
#5905diderius6Now with hitting p again and again it seems,
that the compi hangs in a loop. I think, this is the bombing with irp, about which
⇗ @Mov AX, 0xDEAD told. This loop was overcome after a lot of tries.
Then comes next loop, much longer. At the end of this loop, the driver igxpmp32.sys was unloaded.

Dietmar

nt!IopLoadDriver+0x4bb:
80b3f3dd 895da4 mov dword ptr [ebp-5Ch],ebx
0: kd>
nt!IopLoadDriver+0x4be:
80b3f3e0 8b45a4 mov eax,dword ptr [ebp-5Ch]
0: kd>
nt!IopLoadDriver+0x4c1:
80b3f3e3 c74486381497a280 mov dword ptr [esi+eax*4+38h],offset nt!IopInvalidDeviceRequest (80a29714)
0: kd>

nt!IopLoadDriver+0x4c9:
80b3f3eb ff45a4 inc dword ptr [ebp-5Ch]
0: kd>
nt!IopLoadDriver+0x4cc:
80b3f3ee 837da41b cmp dword ptr [ebp-5Ch],1Bh
0: kd>
nt!IopLoadDriver+0x4d0:
80b3f3f2 76ec jbe nt!IopLoadDriver+0x4be (80b3f3e0) <----- LOOP
0: kd>
nt!IopLoadDriver+0x4be:
80b3f3e0 8b45a4 mov eax,dword ptr [ebp-5Ch]
0: kd>
nt!IopLoadDriver+0x4c1:
80b3f3e3 c74486381497a280 mov dword ptr [esi+eax*4+38h],offset nt!IopInvalidDeviceRequest (80a29714)
0: kd>

nt!IopLoadDriver+0x4c9:
80b3f3eb ff45a4 inc dword ptr [ebp-5Ch]
#5906diderius6Just via loop and loop and loop I came step by step to the point with Windbg,
where the driver igxmp32.sys was unloaded.
Another question is, why this happened.

But I have full document of Windbg screen with all the steps of loading until unload
Dietmar

⇗ https://ufile.io/s4364p1c
#5907schreibersteinI have ordered the Creative SoundBlaster Live! 24 Bit USB (SB0490) for a few bucks and will report back how well EAX and PAE mode works.
The special Digital DIN output will also support my Cambridge Soundworks (Creative) PC sound system from 1999.
Perhaps after Christmas.
Maybe this is the secret sauce that will perfect this machine.

I have a question regarding NVMe support:
Right now, I already have two Samsung NVMe drives attached to my motherboard.
Since my board has 3 slots in total, I am considering getting one just for XP. Maybe another brand so it is more easy to distinguish them and to disable the other drives in Windows XP.
I had read here a while ago that there were problems with multiple NVMe drives and XP.
Is that still the case? Or should NVMe work just as good (/better) as SATA?

I would appreciate some brief advice on that.

Thank you very much and have a very nice week leading up to Christmas!
Cheers,

schreiberstein
#5908diderius6Compi tries more than 200 times

80b5d43f  0f8533020000    jne     nt!PipProcessDevNodeTree+0x5c8 (80b5d678)

80b5d205 0f856d040000 jne nt!PipProcessDevNodeTree+0x5c8 (80b5d678)

80b5d37c 0f85f6020000 jne nt!PipProcessDevNodeTree+0x5c8 (80b5d678)

80b5d385 0f84ed020000 je nt!PipProcessDevNodeTree+0x5c8 (80b5d678)

80b5d280 0f85f2030000 jne nt!PipProcessDevNodeTree+0x5c8 (80b5d678)

80b5d41b e958020000 jmp nt!PipProcessDevNodeTree+0x5c8 (80b5d678)


80b5d678 8bc7 mov eax,edi


Dietmar
#5909blackwingcatHi.

Sadly, Windows 2000 does not have LAN Debug mode, COM Port only.

And I don't know how to enter to Debug mode when Windows Installation.

Is it correct that ⇗ @Mov AX, 0xDEAD said replace ntldr to ntldr_dbg ?

Here is Win2000 acpi.sys
⇗ v2020
⇗ v2018
⇗ Official version
#5910diderius6⇗ @blackwingcat

I modded all 3 acpi.sys from Win2000 against "ACPI failed to load DDB"
Dietmar

⇗ https://ufile.io/zsylezae

 

Page 395

#5911blackwingcatHi.

Thx. I recognized what was changing.

                mov	ebx,000000A5h
jnz L00031725
push [esi+20h]
push esi
push 00000007h
push 00000011h
push ebx
call jmp_ntoskrnl.exe!KeBugCheckEx
L00031725:
lea eax,[ebp-04h]
push eax
push esi
call SUB_L0001DD62
pop ecx
test eax,eax
pop ecx
jl L00031759 -> nop
mov ecx,[L00029820]
lea eax,[edi+edi*2]
shl eax,02h
or dword ptr [ecx+eax+04h],00000002h
mov edx,[L00029820]
lea ecx,[ecx+eax+04h]
mov ecx,[ebp-04h]
mov [edx+eax+08h],ecx
jmp L00031767
L00031759:
push [esi+20h]
push esi
push 00000008h
push 00000011h
push ebx
call jmp_ntoskrnl.exe!KeBugCheckEx

   

But the changing got no effection.
PC shows only black window and blink cursor :3
#5912infuscomus⇗ @blackwingcat

Try an en_us release of XP, you should be able to see the BSOD instead of a blinking cursor using this version.
#5913infuscomus
Zitat von ⇗ blackwingcat im Beitrag ¶ #5909


And I don't know how to enter to Debug mode when Windows Installation.




I've read online that you can enable debugging in textmode setup by pressing F8 when setup prompts F6 for RAID drivers - try that.
#5914diderius6Under Win7 32 bit I can install the HD driver version 10.18.10.3266 for Baytrail with DEV_0F31 on the J1900 board.
I rescued whole registry folder "config" before I install this HD driver.
Then I rescued whole folder "config" after install of driver for Baytrail and compare.
Only in "System" from registry are differences.
Then I mod the *.inf:
At the place for DEV_156 I place DEV_0F31, original line in *.inf I comment out with ";".
And voila, I can install the driver also.
This means: The 2 packages for DEV_156 and for DEV_0F31 in Win7 are compatible.
The packages for DEV_0D26, DEV_0162, DEV_0152 are also compatible with Baytrail under Win7.

A compare between the registry with HD for DEV_0F31 and DEV_0156 shows, that they are nearly identic.
But I noticed a difference in the hardware string settings between Win7 and XP

XP:
"HardwareInformation.AdapterString"=hex:08,70,03,e1,c4,c4,24,e1,10,a4,27,e1,14,39
which is not NULL-terminated (means 00 at its end)

Win7:
"HardwareInformation.AdapterString"=hex:49,00,6e,00,74,00,65,00,6c,00,28,00,52,\
 00,29,00,20,00,48,00,44,00,20,00,47,00,72,00,61,00,70,00,68,00,69,00,63,00,\
 73,00,00,00

"HardwareInformation.DacType"  and  "HardwareInformation.BiosString"
are identic in XP and Win7

Dietmar

EDIT: I succeed to integrate the "HardwareInformation.AdapterString" from Win7 into XP registry, but does not help.
#5915diderius6Strange, that with Windbg it is not possible to find out,
when and why a driver gets unloaded
Dietmar

PS: Is it possible to hack unload procedure?
Or something like "force" load?
#5916infuscomus⇗ @diderius6

can I have a look at your modded driver?
#5917diderius6Here it is. It has in the driver an entry for F31h,
which is for Baytrail. This is original(!) from Intel.
The driver loads but then gets unload for an unknow reason.
It depends not on entries in the *.inf file, as Win7 showes me
Dietmar

PS: In Win7 the string "HardwareInformation.AdapterString" in registry is always the same.
     In XP it changes with the DEV ID and the Magic Numbers. Something is wrong with "HardwareInformation.AdapterString",
because it is not Null-terminated (00 at its end, here missed).
Maybe, this comes from Hack?!

EDIT: Only this modded driver gives all values for registry, for example video in Services\ialm .

⇗ https://ufile.io/tu1hw2h1
#5918diderius6From Microsoft

Setting Hardware Information in the Registry
 

HwVidFindAdapter can call the VideoPortGetRegistryParameters and VideoPortSetRegistryParameters functions to get and set configuration information in the registry. For example, HwVidFindAdapter might call VideoPortSetRegistryParameters to set up nonvolatile configuration information in the registry for the next boot. It might call VideoPortGetRegistryParameters to get adapter-specific, bus-relative configuration parameters written into the registry by an installation program.

It is recommended that miniport drivers set certain hardware information in the registry to display useful information to the user and for assistance in debugging. A miniport driver can set a chip type, DAC type, memory size (of the adapter), and a string to identify the adapter. This information is shown by the Display program in Control Panel.

The driver sets this information by calling VideoPortSetRegistryParameters. Typically, the driver makes the call in its HwVidFindAdapter routine.

The following table describes the information that the driver can register and provides details for the ValueName and ValueData parameters of VideoPortSetRegistryParameters:

Information for Entry ValueName ValueData

Chip type
HardwareInformation.ChipType
Null terminated string containing the chip name.

DAC type
HardwareInformation.DacType
Null terminated string containing the DAC name or ID.

Memory size
HardwareInformation.MemorySize
ULONG containing, in MB, the amount of video memory on the adapter.

Adapter ID
HardwareInformation.AdapterString
Null-terminated
string containing the name(?!) of the adapter.


BIOS
HardwareInformation.BiosString
Null-terminated string containing information about the BIOS.
#5919infuscomus⇗ @diderius6

I found a 10.18.10.3408 that has only PCI\VEN_8086&DEV_0F31 and nothing else in it for windows 8.1

curious that it's the only HWID supported by this driver (is this graphics chip different from any other intel graphics chip?)
#5920diderius6⇗ @infuscomus

I found a report, that DEV_0F31 is the same device as HD2500 or HD4000,
fully hardware compatible with them, only with a different number of lines.
But Intel did something, that it cant work with XP.
There are a lot of Embedded boards on the market with J1900 cpu Baytrail and DEF_0F31 VGA device.
None of them works under XP.

Intel makes an own(!) webside, to tell that Baytrail does not work together with XP

Dietmar
#5921diderius6What can this mean?

GFX Coinstaller (1.2.30.0) I
 Found disable value in registry; aborting

In Win7 there is a lot of stuff from gfx
Dietmar
#5922infuscomus⇗ @diderius6

maybe it needs some registry entries?

from igxp32.inf

[CoInst.AddReg]

HKR,,CoInstallers32,0x10000,"igfxCoIn_v5449.dll,CoDeviceInstall"

[CoInst.CopyFiles]

igfxCoIn_v5449.dll,igxpco32.dll,,0x00000010
#5923diderius6⇗ @infuscomus
Yes, I found in Win7 an entry in Services for igfx.
But in XP I do not find ANY entry for igfx.
The message above about cancel of coinstaller because of an registry(?) entry is interesting.
Dont know where to look for such an crazy entry for to disable a coinstaller. Intel(?)..
When the mod of the igxpmp32.sys is not done very careful, you do not get all entries in registry, for example no video entry.
And no HardwareInformation.AdapterString . But with my hack I get such a string, but incomplete and not NULL-terminated.
This depends on DEV_ID and the Magic Numbers. I change them from 9 5 E to 9 7 E in the driver for DEV_0F31.
Dietmar
#5924Mov AX, 0xDEAD⇗ @blackwingcat

Zitat von ⇗ blackwingcat im Beitrag ¶ #5909

And I don't know how to enter to Debug mode when Windows Installation.


txtsetup.sif:
OsLoadOptions = "/fastdetect /noguiboot /nodebug" => OsLoadOptions = "/fastdetect /noguiboot /debug /debugport=..."
Zitat von ⇗ blackwingcat im Beitrag ¶ #5909

Is it correct that @Mov AX, 0xDEAD said replace ntldr to ntldr_dbg ?


I never said that
#5925infuscomus⇗ @Mov AX, 0xDEAD

did you make any progress on WDDM? or nothing yet?

 

Page 396

#5926diderius6When you install the driver igxpmp32.sys AFTER complete XP is bootet,
you can easy follow with windbg each step from its driverentry,
because then no other driver is loaded.
With my last tests, igxmp32.sys gets unloaded very late,
may be good sign
Dietmar

As before: VideoPortSetRegistryParameters gets via var_468 a zero value from register edx.
nt!PipProcessStartPhase1

gives Bsod. Does this this belong to a missing at all hardwarestring?
This is the very first time, that I succeed to caught the driver exact at the place, where it fails.
80b5d2e3 e89cedecff      call    nt!PipProcessStartPhase1 (80a2c084)
1: kd>
Tue Dec 22 21:20:54.140 2020 (UTC + 1:00):
*** Fatal System Error: 0x00000050
(0xB9D14000,0x00000000,0x80C84241,0x00000000)

FAULTING_IP:
nt!CmpSetValueDataNew+363
80c84241 f3a5 rep movs dword ptr es:[edi],dword ptr [esi]

eax=00003a70 ebx=e1bfb024 ecx=00000acb edx=00000000 esi=b9d14000 edi=e1bfbf68
eip=80c84241 esp=b9d12c64 ebp=b9d12ca0 iopl=0 nv up ei pl nz na pe nc

LOCK_ADDRESS: 80afd6c0


STACK_TEXT:
b9d12724 80a30d7b 00000003 b9d14000 00000000 nt!RtlpBreakWithStatusInstruction
b9d12770 80a319e6 00000003 00000000 c05ce8a0 nt!KiBugCheckDebugBreak+0x19
b9d12b50 80a31f77 00000050 b9d14000 00000000 nt!KeBugCheck2+0x574
b9d12b70 80aa55ac 00000050 b9d14000 00000000 nt!KeBugCheckEx+0x1b
b9d12bd8 80ae20a8 00000000 b9d14000 00000000 nt!MmAccessFault+0x1016
b9d12bd8 80c84241 00000000 b9d14000 00000000 nt!KiTrap0E+0xdc
b9d12ca0 80c8832b e1037008 b9d130bc 00003a70 nt!CmpSetValueDataNew+0x363
b9d12cf0 80c8b208 e1037008 d6110e7c b9d12dd0 nt!CmpSetValueKeyNew+0x13d
b9d12d78 80c6bfcc e1044420 b9d12dd0 00000003 nt!CmSetValueKey+0x234
b9d12e14 80adedd8 800007f0 b9d12ed4 00000000 nt!NtSetValueKey+0x2dc
b9d12e14 80a3c855 800007f0 b9d12ed4 00000000 nt!KiFastCallEntry+0x158
b9d12eb0 80c00ed7 800007f0 b9d12ed4 00000000 nt!ZwSetValueKey+0x11
b9d12ee0 b9327fa3 00000000 e17bea70 a802a768 nt!RtlWriteRegistryValue+0x75
b9d12f0c b9334ba4 897d5358 e17bea70 b9d130bc VIDEOPRT!VPSetRegistryParameters+0xc9
b9d12f2c a7e3cdb0 897d5358 a802a768 b9d130bc VIDEOPRT!VideoPortSetRegistryParameters+0x2a
WARNING: Stack unwind information not available. Following frames may be wrong.
b9d13524 a8074e65 897d5358 e1969318 00000000 igxpmp32+0x21db0
b9d13660 a7e1e99d 897d5358 00000000 00000000 igxpmp32+0x259e65
b9d13680 b9335318 897d5358 00000000 00000000 igxpmp32+0x399d
b9d13884 b9335c9a 89868270 899f3a60 899f3a68 VIDEOPRT!VideoPortFindAdapter2+0x3ec
b9d138b0 b932fc41 89868270 899f3a60 899f3a68 VIDEOPRT!VideoPortFindAdapter+0x7c
b9d13a1c 80a21c8d 897d5040 899b2300 897d5040 VIDEOPRT!pVideoPortPnpDispatch+0x6ad
b9d13a34 80b5e526 b9d13aa4 89b41808 89abb2d0 nt!IopfCallDriver+0x51
b9d13a60 80b5e66e 897d5040 b9d13a80 00000000 nt!IopSynchronousCall+0xf0
b9d13aa8 80a2c123 89abb2d0 00000001 00000000 nt!IopStartDevice+0x82
b9d13ac4 80b5d2e8 89abb2d0 b9d13d01 899022d0 nt!PipProcessStartPhase1+0x9f
b9d13d20 80b5de56 89b41808 00000001 00000000 nt!PipProcessDevNodeTree+0x238
b9d13d58 80a2d0ab 899022d0 89b32da8 80b1365c nt!PiRestartDevice+0x116
b9d13d80 80ad51a9 00000000 00000000 89b32da8 nt!PipDeviceActionWorker+0x17f
b9d13dac 80bd81ac 00000000 00000000 00000000 nt!ExpWorkerThread+0x10f
b9d13ddc 80ae4212 80ad509a 00000001 00000000 nt!PspSystemThreadStartup+0x34
00000000 00000000 00000000 00000000 00000000 nt!KiThreadStartup+0x16

FOLLOWUP_IP:
igxpmp32+21db0
a7e3cdb0 6a12 push 12h

FAILURE_BUCKET_ID: 0x50_igxpmp32+21db0


And from Ida

.text:10021D87 loc_10021D87: ; CODE XREF: sub_10020DD0+F98 j
.text:10021D87 movzx eax, [ebp+var_469]
.text:10021D8E cmp eax, 1
.text:10021D91 jnz short loc_10021DB0
.text:10021D93 mov ecx, [ebp+var_470]
.text:10021D99 push ecx
.text:10021D9A lea edx, [ebp+var_468]
.text:10021DA0 push edx
.text:10021DA1 push offset aHardwareinfo_1 ; "HardwareInformation.AdapterString"
.text:10021DA6 mov eax, [ebp+arg_0]
.text:10021DA9 push eax
.text:10021DAA call ds:VideoPortSetRegistryParameters
.text:10021DB0
.text:10021DB0 loc_10021DB0: ; CODE XREF: sub_10020DD0+FC1 j
.text:10021DB0 push 12h
.text:10021DB2 push offset aInternal ; "Internal"
.text:10021DB7 push offset aHardwareinfo_2 ; "HardwareInformation.DacType"
.text:10021DBC mov ecx, [ebp+arg_0]
.text:10021DBF push ecx
.text:10021DC0 call ds:VideoPortSetRegistryParameters
.text:10021DC6 push 22h
.text:10021DC8 push offset aIntelVideoBios ; "Intel Video BIOS"
.text:10021DCD push offset aHardwareinfo_3 ; "HardwareInformation.BiosString"
.text:10021DD2 mov edx, [ebp+arg_0]
.text:10021DD5 push edx
.text:10021DD6 call ds:VideoPortSetRegistryParameters
#5927Mov AX, 0xDEAD
Zitat von ⇗ infuscomus im Beitrag ¶ #5925
@Mov AX, 0xDEAD
did you make any progress on WDDM? or nothing yet?

missed import added, but boring to debug it all :) so frozen for best time, too much work, no motivation
#5928YuriyCNWindows XP + modern hardware = RTC bug

I observe the strange work of the system time. The system time constantly goes ahead with PC load up to 3-5 minutes a day. When the PC is idle, there is no acceleration of time. This problem occurs on Windows XP only. On Windows 7 or BIOS, time is always accurate - so there are no problems with hardware.

Enabling / disabling HPET in BIOS/UEFI does not affect the course of time. After several experiments, I found out that the difference in the system time appears due to the load on the PC when switching the system (multimedia) timer 16ms - 1ms - 16ms - 1ms. In this case, the clock begins to rush up to 7-10 seconds ahead of 10 minutes. If the multimedia timer is set to period = 1ms = CONST, then the time is running correctly.

#5929blackwingcatI tried native XP acpi.sys and modified it.

1. Stop A5 11 08 -> Fixed
2. A5 2001 -> Fixed
3. A5 2 xx 1

  		cmp	[ebp-08h],esi
jz -> jmp L0001E0BB
push [ebp-14h]
push ebx

   
no effection

L0002F617:
mov edx,[ebp-08h]
cmp edx,edi
jge L0002F63D
cmp edx,ecx
jz L0002F63D
mov eax,[esi]
and eax,ebx
or eax,edi
jz L0002F63D
push [ebp+0Ch]
push 00000001h
push esi
push 00000002h
push 000000A5h
call [ntoskrnl.exe!KeBugCheckEx] <-BSoD
#5930Marlen MaksumovHello can you upload the files that are needed to boot Windows Vista pure UEFI 32bit?
#5931Marlen MaksumovI have an tablet laptop with 86x UEFI 32bit which searches for ia32bit.efi.
#5932infuscomus⇗ @Marlen Maksumov

There was only ever support for UEFI in 32-bit Vista in the early betas, I'm not sure if it ever worked.

earliest official 32-bit UEFI support is windows 8.0
#5933Marlen MaksumovCan someone give the ready iso file of the Windows Vista? because i tried doing by myself doesnt work at all in pure UEFI.
#5934infuscomus⇗ @Marlen Maksumov

As I said, Windows vista won't work in 32-bit UEFI - you'll need to use Windows 8.0 or newer for 32-bit UEFI
#5935Marlen MaksumovOne chinese guy he got it working
⇗ https://www.betaarchive.com/forum/viewtopic.php?t=42051
#5936infuscomus⇗ @Marlen Maksumov

Your doing a pure UEFI boot though, pure UEFI lacks CSM which windows 7 and Vista need to function, so this isn't going to work (unless someone has found a way to get windows Vista/7 working without CSM)
#5937diderius6⇗ @blackwingcat

Is this on an XP installation or on Win2000
for your new motherboard
Dietmar
#5938Marlen MaksumovOk, thanks for the information.
#5939diderius6I make a small joke,
and translate the Hexcode to Asci II of "HardwareInformation.AdapterString"

This gives for Win7 for the DEV_0F31 Baytrail Valley View VGA

I n t e l ( R )   H D   G r a p h i c s

and for XP

páÄÄ$á¤'á9

which does not make so much sense for me )..

Hm, it looks, as if the driver igxpmp32.sys recogniced everything for DEV_0F31 correct
but then found no information in the driver itself about the special information for Baytrail hardware,
that needs to be put to registry
Dietmar
#5940diderius6⇗ @gordo999

When I trace with "p" all assembler from an entrypoint of a driver with Windbg,
is there a way to trace the driver itself?
When I get a Bsod, via IDA I can found the place where it happens,
but not why.
The loong list of assembler orders that I get starting at the entrypoint of a driver,
what are they?
For example there I see test esi,esi which tests esi if it is Zero.
Put where is this test esi,esi stored? Now it is stored in memory, because it a the place in memory after the entrypoint of the driver, but from where is this test esi,esi ? Because only if you know this,
there is chance to hack
Dietmar

PS: Now it is unclear for me as much as possible, from where XP gets the information about the hardware and which part of this information is written to registry.

What does PVOID ValueData contains in
VideoPortSetRegistryParameters(
PVOID HwDeviceExtension,
PWSTR ValueName,
PVOID ValueData,
ULONG ValueLength
)

 

Page 397

#5941gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #5940
When I trace with "p" all assembler from an entrypoint of a driver with Windbg,
is there a way to trace the driver itself?
When I get a Bsod, via IDA I can found the place where it happens,
but not why.
The loong list of assembler orders that I get starting at the entrypoint of a driver,
what are they?
For example there I see test esi,esi which tests esi if it is Zero.
Put where is this test esi,esi stored?
⇗ @diderius6 ...sorry meant to get back to you but I have been thinking about the problem. I noticed you have been tracing with 'p' and wondered why. For example, when you 'break' the program execution, you begin again with 'p', which is a command to jump over a function. You need to use 'g'. The 'p' command, which means 'Step Over' seems to be working for you but it may cause unforeseen problems in some applications.

However, the whole problem is bothering me. Can you describe in more detail how the problem occurs with the driver unloading? Is it during installation or after installation. Is it installed during boot then unloads? You are using windbg in kernel mode. Are you using it within the same computer or in a target/host using two computers?

I don't know exactly what you are doing. Whenever I use windbg on a single machine in kernel mode, I begin by loading an executable. Windbg loads the executable and stops at a certain entry point which is normally in system code before the entry point of the executable code. Windbg causes a 'break' in the execution of the code so you can decide how you want to proceed. However, it has loaded the executable and is awaiting input from the user. As you step through the code, windbg is actually executing the code and the executable will eventually start running. Not sure how that works with a driver that is already loaded.

When an executable is already running, you can attach to it and perform certain operation. That seems to be what you are doing with the driver since it's already loaded. I noticed complaints in the early stages of memory issues related to large pages for Loader and Hal. Don't know if that is a concern.

When I look at the code you supplied, your driver is already loaded completely. Therefore the driver seems to have been loaded independently of any action you took, unless you were installing it via a setup file. You did set a BP on the driver code and windbg stopped there. When the driver unloaded, something really strange happened.

On page 298 of your rtf file, the processor is processing code at:
80B5D5C2 in nt!PipProcessDevNodeTree
then suddenly it's processing code at:
80ACB77C in nt!DebugService2+0x11
then at:
80B9911D in nt!UnloadSystemImage+0x353
At this time, the driver igxmp32.sys is missing from the module list.

This represents a weakness in windbg. It cannot show code executed in the kernel itself but it should indicate an error or exception. If an exception occurred in the driver but it wasn't bad enough to cause a BSOD, it would transfer code execution to windbg for a solution. If windbg could not find a solution, it might unload the driver. However, it is not giving any indication of the exception or why it occurred.

I don't know enough about exceptions but one thing you could try is this. At the beginning, when you enter the BP <address>, instead of hitting 'G' or F5, open the Debug tab on the menu bar and select Go Unhandled exception (gn) or Go Handled Exception (gh). One may give you a BSOD, don't know. I have used the first to get apps to run that won't run with G by itself.

The point is, these forms of Go may reveal more information as to why the driver was unloaded.

Maybe ⇗ @Mov AX, 0xDEAD knows more about this.

Read these two pages on controlling the target with regard to exceptions.

⇗ https://docs.microsoft.com/en-us/windows...ling-the-target⇗ https://docs.microsoft.com/en-us/windows-hardware/drivers/debugger/controlling-the-target

⇗ https://docs.microsoft.com/en-us/windows-hardware/drivers/debugger/controlling-exceptions-and-events
#5942diderius6⇗ @gordo999

"If an exception occurred in the driver but it wasn't bad enough to cause a BSOD, it would transfer code execution to windbg for a solution. If windbg could not find a solution, it might unload the driver."

I think, this is a first step for to look, what is really going on.
Thanks a lot for reading my loong *.rtf document and help!

Something crazy with this vers. 5449 igxpmp32.sys driver from Intel for XP.
It has the device id for Baytrail F31h in it and decides between different Baytrail VGA, for example from device with F30h.
Why should this own driver from Intel not work? May be, that this driver is incomplete? I miss an hardware entry with text
for Baytrail Valley View as the following
.data:1021FE60 aIntelRHdGra_15:                        ; DATA XREF: sub_100239F0:loc_10023F6A↑o
.data:1021FE60 unicode 0, <Intel(R) HD Graphics 2500>,0


Dietmar
#5943diderius6⇗ @gordo999

I tried "gn" after bp at driverentry for the igxpmp32.sys
and Windbg gives a Bsod with the following content, at a very early stage, driver is not loaded yet


Microsoft (R) Windows Debugger Version 6.12.0002.633 X86
Copyright (c) Microsoft Corporation. All rights reserved.

Opened \\.\com1
Waiting to reconnect...
Connected to Windows XP 2600 x86 compatible target at (Wed Dec 23 23:10:29.218 2020 (UTC + 1:00)), ptr64 FALSE
Kernel Debugger connection established.
WARNING: Inaccessible path: 'C:\WinDDK\7600.16385.1\src\openfabricsall\nvme13\nvme\objchk_wnet_x86\i386'
Symbol search path is: C:\WinDDK\7600.16385.1\src\openfabricsall\nvme13\nvme\objchk_wnet_x86\i386;SRV*c:\symbols
*⇗ http://msdl.microsoft.com/download/symbols;C:\symbols
Executable search path is: C:\localsymbols
Windows XP Kernel Version 2600 MP (1 procs) Checked x86 compatible
Built by: 2600.xpsp.080413-2133
Machine Name:
Kernel base = 0x80a02000 PsLoadedModuleList = 0x80b019e8
System Uptime: not available
WARNING: Inaccessible path: 'C:\WinDDK\7600.16385.1\src\openfabricsall\nvme13\nvme\objchk_wnet_x86\i386'
Wed Dec 23 23:10:31.234 2020 (UTC + 1:00): Break instruction exception - code 80000003 (first chance)
nt!DbgBreakPoint:
80ac37e0 cc int 3
kd> gn
Wed Dec 23 23:10:37.187 2020 (UTC + 1:00): Break instruction exception - code 80000003 (!!! second chance !!!)
nt!DbgBreakPoint:
80ac37e0 cc int 3
kd> gn
Wed Dec 23 23:10:44.796 2020 (UTC + 1:00):
*** Fatal System Error: 0x0000008e
(0x80000003,0x80AC37E0,0x80AF22D0,0x00000000)

Wed Dec 23 23:10:44.812 2020 (UTC + 1:00): Break instruction exception - code 80000003 (first chance)

A fatal system error has occurred.
Debugger entered on first try; Bugcheck callbacks have not been invoked.

A fatal system error has occurred.

Connected to Windows XP 2600 x86 compatible target at (Wed Dec 23 23:10:44.968 2020 (UTC + 1:00)), ptr64 FALSE
Loading Kernel Symbols
........................
Loading User Symbols

*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

Use !analyze -v to get detailed debugging information.

BugCheck 8E, {80000003, 80ac37e0, 80af22d0, 0}

Probably caused by : ntkrpamp.exe ( nt!KiDispatchException+3d9 )

Followup: MachineOwner
---------

nt!RtlpBreakWithStatusInstruction:
80ac37ec cc int 3
kd> !analyze -v
*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

KERNEL_MODE_EXCEPTION_NOT_HANDLED (8e)
This is a very common bugcheck. Usually the exception address pinpoints
the driver/function that caused the problem. Always note this address
as well as the link date of the driver/image that contains this address.
Some common problems are exception code 0x80000003. This means a hard
coded breakpoint or assertion was hit, but this system was booted
/NODEBUG. This is not supposed to happen as developers should never have
hardcoded breakpoints in retail code, but ...
If this happens, make sure a debugger gets connected, and the
system is booted /DEBUG. This will let us see why this breakpoint is
happening.
Arguments:
Arg1: 80000003, The exception code that was not handled
Arg2: 80ac37e0, The address that the exception occurred at
Arg3: 80af22d0, Trap Frame
Arg4: 00000000

Debugging Details:
------------------


EXCEPTION_CODE: (HRESULT) 0x80000003 (2147483651) - Mindestens ein Argument ist ung ltig.

FAULTING_IP:
nt!DbgBreakPoint+0
80ac37e0 cc int 3

TRAP_FRAME: 80af22d0 -- (.trap 0xffffffff80af22d0)
ErrCode = 00000000
eax=80086ef8 ebx=000000ff ecx=80124cdc edx=80af5242 esi=80086eb0 edi=80085000
eip=80ac37e1 esp=80af2344 ebp=80af234c iopl=0 nv up di ng nz na po nc
cs=0008 ss=0010 ds=0023 es=0023 fs=0030 gs=0000 efl=00000082
nt!DbgBreakPoint+0x1:
80ac37e1 c3 ret
Resetting default scope

DEFAULT_BUCKET_ID: DRIVER_FAULT

BUGCHECK_STR: 0x8E

LAST_CONTROL_TRANSFER: from 80a30d7b to 80ac37ec

STACK_TEXT:
80af1a4c 80a30d7b 00000003 80af1da8 00000000 nt!RtlpBreakWithStatusInstruction
80af1a98 80a319e6 00000003 00000000 80af227c nt!KiBugCheckDebugBreak+0x19
80af1e78 80a31f77 0000008e 80000003 80ac37e0 nt!KeBugCheck2+0x574
80af1e98 80a397af 0000008e 80000003 80ac37e0 nt!KeBugCheckEx+0x1b
80af2260 80adfa09 80af227c 00000000 80af22d0 nt!KiDispatchException+0x3d9
80af22c8 80ae01d1 80af234c 80ac37e1 badb0d00 nt!CommonDispatchException+0x4d
80af22c8 80ac37e1 80af234c 80ac37e1 badb0d00 nt!KiTrap03+0xb9
80af2340 80123c39 ffdff120 80af2368 80123dcb nt!DbgBreakPoint+0x1
80af234c 80123dcb 80085000 00000000 80afc980 HAL3!HalpGetParameters+0x91
80af2368 80d2ff9f 00000000 80085000 80afe260 HAL3!HalInitSystem+0x33
80af24f8 80d41cd4 00000000 80085000 8003fc00 nt!ExpInitializeExecutive+0x171
80af254c 80d3f6ec 80afe4c0 80afe260 80af2810 nt!KiInitializeKernel+0x568
00000000 00000000 00000000 00000000 00000000 nt!KiSystemStartup+0x2c4


STACK_COMMAND: kb

FOLLOWUP_IP:
nt!KiDispatchException+3d9
80a397af cc int 3

SYMBOL_STACK_INDEX: 4

SYMBOL_NAME: nt!KiDispatchException+3d9

FOLLOWUP_NAME: MachineOwner

MODULE_NAME: nt

IMAGE_NAME: ntkrpamp.exe

DEBUG_FLR_IMAGE_TIMESTAMP: 4802b3ce

FAILURE_BUCKET_ID: 0x8E_nt!KiDispatchException+3d9

BUCKET_ID: 0x8E_nt!KiDispatchException+3d9

Followup: MachineOwner
---------

kd> lm
start end module name
80001000 80004000 BOOTVID (deferred)
80007000 80008100 WMILIB (deferred)
80009000 80009d00 pciide (deferred)
8000a000 8000b700 dmload (deferred)
80010000 80011b80 kdcom (deferred)
80012000 8001b300 isapnp (deferred)
80062000 80072a80 pci (deferred)
80100000 80127780 HAL3 (pdb symbols) c:\symbols\halmacpi.pdb\E84507EBCC884EC88312CED392E768A61\halmacpi.pdb
8038c000 803bbd80 ACPI (deferred)
803bc000 803c2180 PCIIDEX (deferred)
803c3000 803cd580 MountMgr (deferred)
803ce000 803ecd80 ftdisk (deferred)
803ed000 803f1d00 PartMgr (deferred)
803f2000 803ff200 VolSnap (deferred)
804d7000 804fca00 dmio (deferred)
804fd000 80514900 atapi (deferred)
80515000 8051de00 disk (deferred)
8051e000 8052a180 CLASSPNP (deferred)
8052b000 8054ab00 fltMgr (deferred)
8054b000 8055cf00 sr (deferred)
8055d000 80573880 KSecDD (deferred)
80574000 80600600 Ntfs (deferred)
80601000 8062d980 NDIS (deferred)
8062e000 80647b80 Mup (deferred)
80a02000 80da3000 nt (pdb symbols) c:\symbols\ntkrpamp.pdb\5B9E8A586D3D49D98927B5D5117577231\ntkrpamp.pdb

#5944diderius6The driver igxpmp32.sys gets unloaded at the call of
nt!PpSynchronizeDeviceEventQueue 

Dietmar
#5945blackwingcatI want to install Windows 2000.
So, I'm analyzing and using your XP acpi.sys patch on XP SP3 DVD . :3
Now I can not avoid BSoD STOP A5 0x00000002 XXXXXXXX 0x00000001
Which patch should I apply to ?

Zitat von ⇗ diderius6 im Beitrag ¶ #5937
@blackwingcat

Is this on an XP installation or on Win2000
for your new motherboard
Dietmar

#5946schreiberstein⇗ @blackwingcat Mr. Blackwingcat, perhaps this question is heretical to you, but couldn't you consider making the jump from 1999 to 2001 and join forces with the fine folks in the XP community, extend XPs kernel and improve compatibility with modern hardware and software?

I personally think that XP has many benefits to offer.
There is now an excellent USB3 XHCI driver, NVMe drivers, ACPI patches and many more excellent things.
No more updates that could ruin customized changes.
Hardware compatibility is already great all the way up to the mid-2010s.
Over the years, I tried to use Windows 2000 with several improvement, however, I was never able to get it as "usable" as Windows XP.
Especially without a usable browser like MyPal, or VirtualBox, Office 2010 or modern AMD Catalyst support, I found it hard using it for more "modern" workloads.
(Or cool things like WinBTRFS, VeraCrypt, ...)
I know that many things have been improved, but I always had problems with getting FireFox / modern browsers to work well among other things.
So, I always ended up using XP instead.

I use the "Inexperience Patcher" to make the entire UI look mostly indistinguishable from Windows 2000 (It calls itself Windows 2002) and to my mind, this is the best of both worlds.
Perhaps you have a different use case, preferences or specialized legacy applications and my observation does not apply.
Don''t get me wrong, I will be thrilled to see a screenshot posted here of a Japanese Windows 2000 running on one of the latest systems. I would even like to try it myself. But without the other improvements that make Windows XP so sweet to use (especially the Windows 8 USB XHCI driver), it does not look like a really usable / functional system.

I really respect your work and I have followed your blog for many years now.
Kind regards, Merry Christmas and thank you for your work.

schreiberstein
#5947gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #5943

EXCEPTION_CODE: (HRESULT) 0x80000003 (2147483651) - Mindestens ein Argument ist ung ltig.

FAULTING_IP:
nt!DbgBreakPoint+0
80ac37e0 cc int 3

⇗ @diderius6 ....seems to have faulted on its own breakpoint. When windbg sets a BP it removes the code at that location and inserts an 0xCC = int 3. Out of curiosity, can you try gh to see how it handles the exception? Or, you might remove the BP and let it run with gn to see if it encounters another exception related to the driver.

BTW, I have used that trick on occasion, inserting my own 0xCC at an address. You have to save the original code (some instructions at the beginning of a function are single byte codes, like a PUSH), and replace the 0xCC byte with it when it breaks. If it's not a single byte instruction you can pad it with 0x90 = NOP instructions, if required. NOP means No Operation, nothing is executed. Windbg knows about the int 3 instruction and takes steps to handle the exception. By using gn you told it to ignore its process for recovery, so it caused a BSOD.

The NOP is also used if you have a conditional jump instruction the app takes and you don't want it to take the jump. You replace the jump code with 0x90s. If the app does not take the jump and you want to, you change the conditional jump code to a JMP code, normally 0xEB for a short jump. Little more complex if it's a long jump but the complexity is only in the math calculations and where to begin.

You can set the EIP register to point at the instruction you removed after you replace it, to make sure it executes that instruction. When it breaks on the 0XCC it has already executed the instruction at that address and may point to the next address. Just replace the 0xCC with original code and set the EIP register to point to it, if it's not pointing there already. Just be sure no other instructions have been executed since that can cause instability.
#5948diderius6⇗ @blackwingcat

Bsod 0x000000A5, (0x00000002, xxx, yyy, zzz)

is error in ACPIRangeValidatePciResources

So, patch is

74 14 FF 75 EC 53  => EB 14 FF 75 EC 53   for Acpi XP SP3


74 14 FF 75 FC 53  => EB 14 FF 75 FC 53   for Acpi Win2000

Dietmar
#5949YuriyCN1) I found a fix for intel chipsets, attached file here - ⇗ What exactly is the hal timer problem? (2)
2) halmacpi.dll rename in hal.dll and put into c:\WINDOWS\system32
3) Rebooted the PC and repeated the timer test.

Result.
The frequency of the QPC timer has been changed from 3.580 MHz to 3.192 MHz.
But RTC bug isn't solved. The system time constantly goes ahead.

#5950Mov AX, 0xDEAD
Zitat von ⇗ YuriyCN im Beitrag ¶ #5949

But RTC bug isn't solved. The system time constantly goes ahead

Hi YuriyCN,
1) Problem is QPC calculation, cpu frequency must be 3000/3100/3200 Mhz (100Mhz * bus ratio ), but it show strange 3.192 value (QPC=rdtsc=CPU Freq)
2) ACPI timer by default is disabled on skylake+, so where cpu-z get it ?
3) We dont know how all values was calculated, so it can be cpu-z only issue
del-8YuriyCN
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #5950
Zitat von ⇗ YuriyCN im Beitrag ¶ #5949

But RTC bug isn't solved. The system time constantly goes ahead

Hi YuriyCN,
1) Problem is QPC calculation, cpu frequency must be 3000/3100/3200 Mhz (100Mhz * bus ratio ), but it show strange 3.192 value (QPC=rdtsc=CPU Freq)
2) ACPI timer by default is disabled on skylake+, so where cpu-z get it ?
3) We dont know how all values was calculated, so it can be cpu-z only issue


3.192 это приблизительно 3.200 = 100 МГц * 32
CPU-Z использую просто для демонстрации, мне пофиг что он показывает.
Суть моей проблемы - спешат часы под WinXP.

Процессор - Skylake Intel i5-6500. Материнская плата на H110 чипсете. Под BIOS и под Windows 7 системные часы идут правильно и очень точно. За 1 день уход времени - несколько секунд, что приемлемо.

Но под Windows XP творится какой-то бред. За день работы часы могут уйти до 7 минут вперед! Причем скорость ухода зависит от загруженности ПК. В некоторые моменты время идет правильно, а в некоторые начинает ускоряться. Я начал копать интернет и изучать данную проблему. С железом проблемы 100% нет, проблема чисто софтовая и проявляется только в Windows XP.

Почитав в интернете, я понял, что проблема может быть связана:
1) с HPET таймером
2) с переключением частот процессора на лету
3) с таймерами

Включение/отключение HPET на этот глюк никак не влияет. С переключением частот сложно мониторить, вообще в простое частота может падать до 800 МГц, в номинальном режиме 3200 МГц, в boost режиме 3600 МГц. Далее, я провел эксперименты с мультимедиа таймером. Когда ПК работает - то его период постоянно переключается между 16 мс и 1 мс. Например запуск Хрома приводит к переключению таймера на 1 мс, а запуск Мозиллы не приводит и таймер остается на 16 мс.

Период таймера контроллирую с помощью программы:
Clockres v2.1 - Clock resolution display utility
Copyright (C) 2016 Mark Russinovich
Sysinternals

Maximum timer interval: 15.625 ms
Minimum timer interval: 1.000 ms
Current timer interval: 15.625 ms

Перепробовал варианты патченых hal.dll и intelppm.sys - глюк не убирается. Можно настроить синхронизацию с инетом 2 раза в день - но нафиг такое решение....

Далее я нашел программу, которая жестко устанавливает период таймера в 1мс и на дефолтные для WinXP 16 мс таймер уже не переключается. И произошло чудо - часы стали идти правильно!! На данный момент постоянно держать в памяти эту программу - это единственное приемлемое решение.

Вывод:
1. Почему RTC уходит причину не нашел
2. Запуск фоновой проги жесто устанавливающей период 1 мс решает проблему
3. Уход времени вперёд происходит при переключении периода 1мс <-> 16 мс
4. Если таймер жестко стоит или на 16 мс или на 1 мс то ухода нет
5. Возможно поможет и отключение boost до 3600 МГц, ограничить частоту CPU я ещё не пробовал

Нужен корректный патч системных файлов. Можете чем нибудь помочь?
Готов тестировать.
#5951Mov AX, 0xDEAD
Zitat von ⇗ YuriyCN im Beitrag ¶ #del-8

Но под Windows XP творится какой-то бред. За день работы часы могут уйти до 7 минут вперед! Причем скорость ухода зависит от загруженности ПК


clock is independ hardware, own quartz, own chip, there is no any write control by design
del-9YuriyCN
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #5951
Zitat von ⇗ YuriyCN im Beitrag ¶ #del-8

Но под Windows XP творится какой-то бред. За день работы часы могут уйти до 7 минут вперед! Причем скорость ухода зависит от загруженности ПК


clock is independ hardware, own quartz, own chip, there is no any write control by design




Так и было, но 10 лет назад. А новые (слишком умные) материнские платы с UEFI лезут даже в работу RTC. Возможно мешает IME, возможно ещё что-то. Нужно написать тестовую программу, которая постоянно дергает периодом мультимедиа таймера, переключая его с 16 мс на 1 мс и обратно - таким образом можно активировать глюк и накручивать время.

Я находил в интернете описания с подобным глюком. Но вопрошающего сразу забрасывали простыми рецептами - мол часы штука аппаратная, меняй кварц или батарейку. Но здесь дело хитрее... Я думал патч РАЕ мешает, убрал его, но глюк остался. Модифицированные HAL и INTELPPM также не помогают.

ВинХП при простое (тик таймера 16 мс) - время идет точно.
ВинХП при жестко установленном тике =1 мс - время идет точно.
ВинХП под реальной работой, когда тик таймера меняется - время ускоряется.

Это можно проконтроллировать, сравнивая время с обычными часами, так и по программе CPU-Z, поскольку ACPI и QPC таймера насчитывают = 525 секунд, а RTC таймер = 529 секунд, то есть +4 секунды за 10 минут.
#5952Mov AX, 0xDEAD
Zitat

нет, нужна программа, которая показывает время из аппаратных регистров cmos часов, под linux есть hwclock, под windows гугл ничего полезного не дал, без такой проги непонятно кто врет - железка или винда


Edit: swiss knife named "RWEverything" can do this:
Specific -> IO Index/Data - >CMOS 70/71
first 5 bytes are sec:min:hour, in BCD coding (no need hex converting)

#5953pappyN4Trying to get USB from Zen2 CPU working. DEV149C

AMD 1.0.5.3 (official driver win7x64 for B450 motherboard)
Used this Windows 7 driver to get the B450 chipset USB DEV43D5 working.   Needed to copy usbd.sys, but looks like it works fine.  Did not work for 149C

AMD 1.1.0.276
Did not work for 149C.

AMD 2.0.0.60 (official driver win 7x64 for CPU)
xhci install ok, hub gives error.  Looked at Dependency Walker.  Added ksecd8.sys 6.0.5456.5 and ntoskrn8.sys with hexplorer, PEChecksum corrected.  NTOSKRNL Emu_Extender added missing imports from ntoskrnl.exe
///////amdhub3.sys v2.0.0.60
#pragma comment (linker, "/export:KeReleaseSpinLock=ntoskrnl.KeReleaseSpinLock")
#pragma comment (linker, "/export:ExReleaseFastMutex=ntoskrnl.ExReleaseFastMutex")
#pragma comment (linker, "/export:ExAcquireFastMutex=ntoskrnl.ExAcquireFastMutex")
#pragma comment (linker, "/export:KeAcquireSpinLockRaiseToDpc=ntoskrnl.KeAcquireSpinLockRaiseToDpc")
#pragma comment (linker, "/export:_vsnwprintf=ntoskrnl._vsnwprintf")
#pragma comment (linker, "/export:__C_specific_handler=ntoskrnl.__C_specific_handler")


///////ksecdd 6.0.5456.5 for amdhub3.sys v2.0.0.60
#pragma comment (linker, "/export:_strnicmp=ntoskrnl._strnicmp")
#pragma comment (linker, "/export:_wcsicmp=ntoskrnl._wcsicmp")
#pragma comment (linker, "/export:_wcsnicmp=ntoskrnl._wcsnicmp")
#pragma comment (linker, "/export:ExpInterlockedPushEntrySList=ntoskrnl.ExpInterlockedPushEntrySList")
#pragma comment (linker, "/export:ExpInterlockedPopEntrySList=ntoskrnl.ExpInterlockedPopEntrySList")
#pragma comment (linker, "/export:ExQueryDepthSList=ntoskrnl.ExQueryDepthSList")
#pragma comment (linker, "/export:_local_unwind=ntoskrnl._local_unwind")


Dependency Walker shows all good.  Driver installs and usb mouse/flash drive works.  BUT, when shutting down, always BSOD DRIVER_POWER_STATE_FAILURE 9F (0x500,0x002,,)  Looking over thread, from post 3962, maybe windows expects PoStartNextPowerIrp to be called, but this driver does not.

AMD Radeon USB 1.0.0.13
same works/BSOD as 2.0.0.60

Windows 8 USB3 with Emu_Extender
From Win8x64 ISO, ucx01000.sys, usbhub3.sys, usbxhci.sys, wpprecorder.sys, usbd.sys 6.2.9200.16384.  From win7x64 ISO WdfLdr.sys  1.11.9200.16384.  ksecdd.sys 6.0.5456.5.  Renamed, hexplorer, PEchecksum..  
///////ksecdd,usbd,ucx01000,usbxhci,usbhub for win8 generic usb3 
#pragma comment (linker, "/export:_stricmp=ntoskrnl._stricmp")
#pragma comment (linker, "/export:KeLowerIrql=ntoskrnl.KeLowerIrql")
#pragma comment (linker, "/export:KfRaiseIrql=ntoskrnl.KfRaiseIrql")


Dependency Walker shows one issue, ntoskrn8.sys trying to get KeInitializeSpinLock from ntoskrnl.exe but is not finding it.  Tried with ntoskrnl.exe from SP1 (5.2.3790.1830), SP2 (5.2.3790.3959), and latest (5.2.3790.5583).  


Currently stuck. Any ideas?

AMD 2.0.0.60 works but is not quite compatible (does not call PoStartNextPowerIrp?) BSOD
Win8 USB3 Emu_Extender, KeInitializeSpinLock not found, cant test
#5954infuscomus⇗ @pappyN4

Very strange that it can't find KeInitializeSpinLock - it's definitely there, has been in ntoskrnl since win2000.

try this - ⇗ https://anonfiles.com/N6m68b2cp3/WinXP-I...r_v2.3.4b17_zip

inside these folders -

\Integrator Files\Patches\Microsoft USB 3.0 xHCI driver v2.1 (usb3 driver)

\Integrator Files\Patches\Miscellaneous (ntoskrn8)

are prepatched files, try them out.
#5955Squall Leonhart
Zitat von ⇗ infuscomus im Beitrag ¶ #5954
Very strange that it can't find KeInitializeSpinLock - it's definitely there, has been in ntoskrnl since win2000.


changed between windows 7 and 8

Zitat
This function is inlined for x64 systems from Windows XP till Windows 7. Starting in Windows 8, this function is exported from ntoskrnl.lib. As a result, if you are using the Windows 10 WDK to build a binary that runs on Windows 7 (and therefore you need NX pool usage to pass Windows 10 HLK tests), you must define WIN9X_COMPAT_SPINLOCK. Otherwise, you may see Windows cannot load the device driver for this hardware. The driver may be corrupted or missing. (Code 39).
del-10YuriyCN
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #5952
Zitat

нет, нужна программа, которая показывает время из аппаратных регистров cmos часов, под linux есть hwclock, под windows гугл ничего полезного не дал, без такой проги непонятно кто врет - железка или винда


Edit: swiss knife named "RWEverything" can do this:
Specific -> IO Index/Data - >CMOS 70/71
first 5 bytes are sec:min:hour, in BCD coding (no need hex converting)



Если после накрутки времени в Windows XP, перегрузиться и зайти в BIOS - то время уже идет вперед. Кто из них начинает врать - не понятно, но в BIOS новое время записывается. Сегодня ещё потестирую с блокировкой частот CPU и шины. Может появится дополнительная информация.

Если нужная программа есть под Linux, наверняка к ней идет исходный код, который можно перекомпилировать под Windows?

 

Page 398

#5956diderius6⇗ @Mov AX, 0xDEAD

I just startet XP Lan debug, XP as Host (where windbg runs) and XP Target (the compi, which I want to debug).
First it does not start.
Then I noticed, that I have to set the IP adresses correct for my home network.
So, may be you give a hint for this in your nice Tutorial ⇗ https://github.com/MovAX0xDEAD/KDNET .

I use now for Debug boot.ini on compi with XP, which I want to debug (Target) with debug ntoskrnl and debug timer hacked hal
[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional" /noexecute=optin /fastdetect
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Windows XP SP3 DEBUG" /KERNEL=ntos3.exe /HAL=hal3.dll /debug /debugport=COM1 /baudrate=115200 /BREAK
C:\WINDOWS="KDNET" /noexecute=optin /fastdetect /KERNEL=ntos3.exe /HAL=hal3.dll /DEBUG /DEBUGPORT=NET
/HOST_IP=192.168.2.101 /HOST_PORT=50000 /ENCRYPTION_KEY=make.winxp.great.again /CPUFREQ=3000 /TARGET_IP=192.168.2.103
C:\WINDOWS="KDNET_Brk" /noexecute=optin /fastdetect /KERNEL=ntos3.exe /HAL=hal3.dll /DEBUG /DEBUGPORT=NET
/HOST_IP=192.168.2.101 /HOST_PORT=50000 /ENCRYPTION_KEY=make.winxp.great.again /CPUFREQ=3000 /TARGET_IP=192.168.2.103 /BREAK


PS: MSVCRTD.DLL on XP SP3 Compi where Windbg runs (Host) is version 6.00.8797.0  from ⇗ @blackwingcat
SHA-1  F6C83FBF9BE1F5AB40CABD63DFDE4DF340CB74C9
#5957diderius6I want to compare the Windbg whole driver output from driverentry of igxpmp32.sys on the Lenovo x230 with DEV_0166 HD4000
for to compare it with Baytrail.
Crazy, the last Intel (R) HD drivers 6.14.10.5441, 6.14.10.5445 and 6.14.10.5449 give a black screen on the x230.
So, I try the laast version before (without Haswell) 6.14.10.5437 (also with best laast sound)
and this one works, now compare can start
Dietmar
#5958diderius6The driver igxpmp32.sys is unloaded between
80b5d309 e840efecff      call    nt!PipProcessStartPhase2 (80a2c24e)
1: kd>
nt!PipProcessDevNodeTree+0x25e:
80b5d30e 8bf0 mov esi,eax
1: kd>
nt!PipProcessDevNodeTree+0x260:
80b5d310 85f6 test esi,esi
1: kd>
nt!PipProcessDevNodeTree+0x262:
80b5d312 0f8dd6000000 jge nt!PipProcessDevNodeTree+0x33e (80b5d3ee)
1: kd>
nt!PipProcessDevNodeTree+0x268:
80b5d318 817b1806030000 cmp dword ptr [ebx+18h],306h
1: kd>
nt!PipProcessDevNodeTree+0x26f:
80b5d31f bece0200c0 mov esi,0C00002CEh
1: kd>
nt!PipProcessDevNodeTree+0x274:
80b5d324 0f851b010000 jne nt!PipProcessDevNodeTree+0x395 (80b5d445)
1: kd>
nt!PipProcessDevNodeTree+0x395:
80b5d445 807d1c00 cmp byte ptr [ebp+1Ch],0
1: kd>
nt!PipProcessDevNodeTree+0x399:
80b5d449 0f8529020000 jne nt!PipProcessDevNodeTree+0x5c8 (80b5d678)
1: kd>
nt!PipProcessDevNodeTree+0x39f:
80b5d44f ffb5c8fdffff push dword ptr [ebp-238h]
1: kd>
nt!PipProcessDevNodeTree+0x3a5:
80b5d455 ffb5d0fdffff push dword ptr [ebp-230h]
1: kd>
nt!PipProcessDevNodeTree+0x3ab:
80b5d45b 6a01 push 1
1: kd>
nt!PipProcessDevNodeTree+0x3ad:
80b5d45d ff7518 push dword ptr [ebp+18h]
#5959blackwingcatI bought serial blanket yesterday.
I tried it , but F8 press on F6 period seems not to be effection. :3
#5960diderius6⇗ @blackwingcat

No external COM port works, I tested.
Only when there is an integrated COM port on the motherboard,
you can use it for Windbg. But via Lan, an external Lan card works for Windbg under XP as long as it is the supported
Lan DEV list
⇗ https://docs.microsoft.com/en-us/windows...-in-windows-8-1
Dietmar
#5961diderius6Driver igxpmp32.sys loaded on Lenovo x230 with DEV_0166 HD4000

Why I post this is, that I hope to find those belonging places in the igxpmp32.sys driver. But only the names of the variables
appear, I can not find any characteristic place in the driver itself. The driver is for both motherboards the same,
so I wonder, how it can happen, that in memory they are not the same, only similar. driver entrypoint and a lot more are the same in memory on both boards.

So, for me the question is, if you can make a copy from the content of the memory(!),
working on the x230 board and copy it to the memory of the Baytrail board.


The XP installation is nearly to 100% the same, I connect the XP installation from the x230 board to the Baytrail board and this works
Dietmar

80b5d309 e840efecff                call    nt!PipProcessStartPhase2 (80a2c24e)
3: kd>
nt!PipProcessDevNodeTree+0x25e:
80b5d30e 8bf0 mov esi,eax
3: kd>
nt!PipProcessDevNodeTree+0x260:
80b5d310 85f6 test esi,esi
3: kd>
nt!PipProcessDevNodeTree+0x262:
80b5d312 0f8dd6000000 jge nt!PipProcessDevNodeTree+0x33e (80b5d3ee)
3: kd>
nt!PipProcessDevNodeTree+0x33e:
80b5d3ee 33ff xor edi,edi
3: kd>
nt!PipProcessDevNodeTree+0x340:
80b5d3f0 eb47 jmp nt!PipProcessDevNodeTree+0x389 (80b5d439)
3: kd>
nt!PipProcessDevNodeTree+0x389:
80b5d439 81fece0200c0 cmp esi,0C00002CEh
3: kd>
nt!PipProcessDevNodeTree+0x38f:
80b5d43f 0f8533020000 jne nt!PipProcessDevNodeTree+0x5c8 (80b5d678)
3: kd>
nt!PipProcessDevNodeTree+0x5c8:
80b5d678 8bc7 mov eax,edi
3: kd>
nt!PipProcessDevNodeTree+0x5ca:
80b5d67a 48 dec eax
3: kd>
nt!PipProcessDevNodeTree+0x5cb:
80b5d67b 740e je nt!PipProcessDevNodeTree+0x5db (80b5d68b)
3: kd>
nt!PipProcessDevNodeTree+0x5cd:
80b5d67d 48 dec eax
3: kd>
nt!PipProcessDevNodeTree+0x5ce:
80b5d67e 7570 jne nt!PipProcessDevNodeTree+0x640 (80b5d6f0)
3: kd>
nt!PipProcessDevNodeTree+0x640:
80b5d6f0 80bdf2fdffff00 cmp byte ptr [ebp-20Eh],0
3: kd>
nt!PipProcessDevNodeTree+0x647:
80b5d6f7 0f84fdfaffff je nt!PipProcessDevNodeTree+0x14a (80b5d1fa)


DevNode 0x8b09eda8 for PDO 0x8b03f038
InstancePath is "PCI\VEN_8086&DEV_0166&SUBSYS_21FA17AA&REV_09\3&b1bfb68&0&10"
ServiceName is "ialm"
State = DeviceNodeStartPostWork (0x307)
Previous State = DeviceNodeStartCompletion (0x306)

Driver igxpmp32.sys not loaded on Baytrail j1900 board with DEV_0F31

nt!PipProcessDevNodeTree+0x259:
80b5d309 e840efecff call nt!PipProcessStartPhase2 (80a2c24e)
1: kd>
nt!PipProcessDevNodeTree+0x25e:
80b5d30e 8bf0 mov esi,eax
1: kd>
nt!PipProcessDevNodeTree+0x260:
80b5d310 85f6 test esi,esi
1: kd>
nt!PipProcessDevNodeTree+0x262:
80b5d312 0f8dd6000000 jge nt!PipProcessDevNodeTree+0x33e (80b5d3ee)
1: kd>
nt!PipProcessDevNodeTree+0x268:
80b5d318 817b1806030000 cmp dword ptr [ebx+18h],306h
1: kd>
nt!PipProcessDevNodeTree+0x26f:
80b5d31f bece0200c0 mov esi,0C00002CEh
1: kd>
nt!PipProcessDevNodeTree+0x274:
80b5d324 0f851b010000 jne nt!PipProcessDevNodeTree+0x395 (80b5d445)
1: kd>
nt!PipProcessDevNodeTree+0x395:
80b5d445 807d1c00 cmp byte ptr [ebp+1Ch],0
1: kd>
nt!PipProcessDevNodeTree+0x399:
80b5d449 0f8529020000 jne nt!PipProcessDevNodeTree+0x5c8 (80b5d678)
1: kd>
nt!PipProcessDevNodeTree+0x39f:
80b5d44f ffb5c8fdffff push dword ptr [ebp-238h]
1: kd>
nt!PipProcessDevNodeTree+0x3a5:
80b5d455 ffb5d0fdffff push dword ptr [ebp-230h]
1: kd>
nt!PipProcessDevNodeTree+0x3ab:
80b5d45b 6a01 push 1
1: kd>
nt!PipProcessDevNodeTree+0x3ad:
80b5d45d ff7518 push dword ptr [ebp+18h]

DevNode 0x8a4ba430 for PDO 0x8a4cd038
InstancePath is "PCI\VEN_8086&DEV_0F31&SUBSYS_0F311849&REV_0E\3&11583659&0&10"
ServiceName is "ialm"
State = DeviceNodeAwaitingQueuedRemoval (0x30f)
Previous State = DeviceNodeStartCompletion (0x306)

#5962blackwingcatUmm, Serial blanket connected directly mother board.

⇗ https://www.amazon.co.jp/gp/product/B001Y1F0HW/
I bought it
#5963diderius6⇗ @blackwingcat

Does your motherboard have intern COM port? If yes,
this should work
Dietmar
#5964AndaluRegarding the failed restart on my Asrock B250M Pro4, I noticed that it works fine on an 'MPS Multiprocessor' and 'ACPI Uniprocessor' system, while it hangs on a 'Standard PC' and clearly on the 'ACPI Multiprocessor' pc.
What could I try to find a solution?

Edit: I have already tried all the modded hal.dll (halmacpi.dll) without success.
#5965diderius6⇗ @Andalu

Try to disable all devices in Bios, that you dont need.
Make a try with Safe Boot F8.
It is an unknown device, that makes the compi hang
Dietmar

PS: Last chance is to mod DSDT in Bios. But this is crazy hard work.
Have you tried to downgrade your Bios?
Be very careful, BIG risk, that via Bios mod only EEpromer can bring your compi back to life!
#5966Andalu⇗ @diderius6
all devices not needed are disabled in bios and the restart doesn't work even in safe mode.

I also tried to disassemble the dsdt table but I got the following error on the command "iasl -d dsdt.dat":
"File appears to be binary: found 49430 non-ASCII characters, disassembling Binary file does not contain a valid ACPI table"


Edit: nothing changes even downgrading to the first bios release
#5967diderius6⇗ @Andalu

So it is not the *.raw DSDT table.
What version is your Bios for Asrock B250M Pro4?
I can download few Bios for this board and compare their DSDT
Dietmar
#5968Andalu⇗ @diderius6
the version in use is the 2.50 (B250M Pro4(2.50)ROM)

Edit: I'm stuck on the errors below after the command "c:\iasl -f dsdt.dsl" on the dsdt table extracted with UEFITool:

Compiler aborting due to parser-detected syntax error(s)
dsdt.dsl   6503:  Zero
Error    6126 -^ syntax error, unexpected PARSEOP_ZERO

dsdt.dsl  10773:         }
Error    6126 -  ^ syntax error, unexpected '}'

dsdt.dsl  14385:
Error    6126 - syntax error, unexpected $end and premature End-Of-File

ASL Input: dsdt.dsl - Compilation aborted due to parser-detected syntax error(s)

Compilation failed. 3 Errors, 0 Warnings, 0 Remarks
No AML files were generated due to syntax error(s)
#5969diderius6⇗ @Andalu

I also cant disassamble DSDT from 2.50 Bios, strange, I never had before.
May be, that a brandnew version of iasl is needed for this, but brandnew iasl do not run on XP SP3.

From the Bios 1.00 I can extract DSDT and disassemble. There are some changes as I can see in their *.raw files.
Easy try to repair header on *.raw 2.50 DSDT does not work. Iasl starts to disassemble but then crashes.
With Eepromer is no risk to flash this DSDT from 1.00, but without EEpromer BIG risk.

You can make a try to downgrade the Bios to the very first version 1.00
but also this is a risk without EEpromer
Dietmar
#5970Andalu⇗ @diderius6
even with the procedure posted ¶ here by ⇗ @infuscomus is there a risk?
I could give it a try.

 

Page 399

#5971infuscomus⇗ @diderius6 ⇗ @Andalu

I would recommend my Easy2boot grub2 ACPI patching method, no risk to BIOS that way.

edit: yes, no risk.
#5972Andalu⇗ @infuscomus
thanks for confirmation ;)
I already use it on an installed XP. Unfortunately with no success for an iso installation.
#5973infuscomus⇗ @Andalu

with my method the patched ACPI table is deleted on reboot, you would need to mod BIOS to make it permanent.
#5974Andalu⇗ @infuscomus
If I could solve the problem of the failed restart, I could then look for a way to make the change permanent. The problem is that at the moment I don't know which changes to apply.


⇗ @diderius6
eventually I could use my EEprom CH341A that I bought a few days ago even if also in this case I need to better learn "how to" :)
#5975infuscomus⇗ @Andalu

anything hidden by OSYS or OSEL entries in the DSDT?
#5976Andalu⇗ @infuscomus
I was not able to obtain a disassembled DSDT table even in win10 with the iasl version 20200717.
I'll try with the latest version 20201217.

Edit: no way even with the latest iasl ("Binary file does not contain a valid ACPI table").
#5977diderius6⇗ @Andalu
The EEpromer CH341A works ONLY on 3 Volt Bioschips.
Very easy you can kill your chip, I "succeed" with this.
The only EEpromer which works everywhere is Revelprog IS,
but it costs about 150 Dollar and is send from Poland
Dietmar


EDIT: I just see, that they have this EEpromer Revelprog IS also on Ebay.
#5978Andalu⇗ @diderius6
thanks for the info ;)
Could the EZP2019 be useful?

About the dsdt table from the bios version 1.0, which are the changes to apply?
#5979infuscomus⇗ @Andalu

try
acpidump -b
#5980Andalu⇗ @infuscomus
I already obtained the dsdt.dat with UEFITool (the same file with the acidump -b command) but the disassembling operation with the command "iasl -d DSDT.dat" gives always the same message: "Binary file does not contain a valid ACPI table"
#5981diderius6⇗ @Andalu

I would try to downgrade the Bios to very first version 1.0. At once you will see, if the problem is gone or not.
But there is risk without good EEpromer
Dietmar
#5982daniel_kHey guys!

⇗ @Andalu
Are you running a fully updated XP install?
I've experienced those restart issues with a SP3 installation with no updates.
#5983Andalu⇗ @diderius6
I already tried the downgrade for the first time more than an year ago ¶ here
and again some days ago without success

I'm not able to obtain the dsdt.aml even with the bios version 1.0 :(
#5984Andalu⇗ @daniel_k
Hi dude ;) How are you?

As you can see, I have always issues..... is it just a coincidence that they are only with asrock boards?

Unfortunately, the restart doesn't wotk even with the updated XP from Win-XP IE 2020.9.9
#5985daniel_k
Zitat von ⇗ blackwingcat im Beitrag ¶ #5879
Hi.

When fail to load acpi, Windows 2000 does not show BSoD. It only shows blinking cursor after loading all text mode drivers. :3

Hi blackwingcat,

This also happens with XP SP1, acpi.sys hangs while parsing the acpi table.

I'll tell you where to look so you can compare both and patch the Win2000 acpi.sys.

 

Page 400

#5986diderius6⇗ @Andalu
The DSDT from Bios 1.0 I have
Dietmar

⇗ https://ufile.io/35robgkc

Compilation successful. 0 Errors, 32 Warnings, 70 Remarks, 245 Optimizations
#5987Andalu⇗ @diderius6
thanks for the file. Here the results:
Compilation successful. 0 Errors, 32 Warnings, 70 Remarks, 245 Optimizations
Previously it was my mistake :)

Edit: I will try to figure out what changes to apply, it will take me a long time but it will definitely be a way to learn something new.
#5988diderius6⇗ @Andalu

I use iasl.exe with

SHA-1 A4302BFEC6A7D52A937801F6C76D450A1989EB95

It must be one of the very last versions, which works with XP
Dietmar
#5989Andalu⇗ @diderius6
I'm using the same version form the iasl-win-20190509 package
#5990diderius6⇗ @daniel_k

Do you have a modded acpi.sys from XP SP1

Dietmar
#5991daniel_k⇗ @blackwingcat

Bug is in the _ParseScope function

XP SP1

 
.00027D69: 53                             push         ebx
.00027D6A: 8B5C2410 mov ebx,[esp][010]
.00027D6E: 85DB test ebx,ebx
.00027D70: 56 push esi
.00027D71: 8B742410 mov esi,[esp][010]
.00027D75: 57 push edi
.00027D76: 740D jz .000027D85
.00027D78: 81FB01800000 cmp ebx,000008001
.00027D7E: 7405 jz .000027D85
.00027D80: 6A02 push 2
.00027D82: 58 pop eax
.00027D83: EB06 jmps .000027D8B
.00027D85: 8B4608 mov eax,[esi][8]
.00027D88: 83E00F and eax,00F
.00027D8B: 83E800 sub eax,0
.00027D8E: 8B7C2410 mov edi,[esp][010]
.00027D92: 7408 jz .000027D9C
.00027D94: 48 dec eax
.00027D95: 7408 jz .000027D9F
.00027D97: 48 dec eax
.00027D98: 7418 jz .000027DB2
.00027D9A: EB3C jmps .000027DD8
.00027D9C: FF4608 inc d,[esi][8]
.00027D9F: 81FB01800000 cmp ebx,000008001
.00027DA5: 755E jnz .000027E05
.00027DA7: 8B4610 mov eax,[esi][010]
.00027DAA: 89473C mov [edi][03C],eax
.00027DAD: 33DB xor ebx,ebx
.00027DAF: FF4608 inc d,[esi][8]
.00027DB2: 8B4618 mov eax,[esi][018]
.00027DB5: 894728 mov [edi][028],eax
.00027DB8: 8B461C mov eax,[esi][01C]
.00027DBB: 89472C mov [edi][02C],eax
.00027DBE: 8B4620 mov eax,[esi][020]
.00027DC1: 8987A8000000 mov [edi][0000000A8],eax
.00027DC7: 8B7614 mov esi,[esi][014]
.00027DCA: 85F6 test esi,esi
.00027DCC: 7403 jz .000027DD1
.00027DCE: 89773C mov [edi][03C],esi
.00027DD1: 57 push edi
.00027DD2: E827B8FFFF call .0000235FE
.00027DD7: 59 pop ecx
.00027DD8: 5F pop edi
.00027DD9: 5E pop esi
.00027DDA: 8BC3 mov eax,ebx
.00027DDC: 5B pop ebx
.00027DDD: C3 retn



XP SP3

 
.00029485: 8BFF                           mov          edi,edi
.00029487: 55 push ebp
.00029488: 8BEC mov ebp,esp
.0002948A: 837D1000 cmp d,[ebp][010],0
.0002948E: 53 push ebx
.0002948F: 56 push esi
.00029490: 8B750C mov esi,[ebp][00C]
.00029493: 57 push edi
.00029494: BB01800000 mov ebx,000008001
.00029499: 740A jz .0000294A5
.0002949B: 395D10 cmp [ebp][010],ebx
.0002949E: 7405 jz .0000294A5
.000294A0: 6A02 push 2
.000294A2: 58 pop eax
.000294A3: EB06 jmps .0000294AB
.000294A5: 8B4608 mov eax,[esi][8]
.000294A8: 83E00F and eax,00F
.000294AB: 83E800 sub eax,0
.000294AE: 8B7D08 mov edi,[ebp][8]
.000294B1: 7408 jz .0000294BB
.000294B3: 48 dec eax
.000294B4: 7408 jz .0000294BE
.000294B6: 48 dec eax
.000294B7: 7423 jz .0000294DC
.000294B9: EB47 jmps .000029502
.000294BB: FF4608 inc d,[esi][8]
.000294BE: 395D10 cmp [ebp][010],ebx
.000294C1: 756F jnz .000029532
.000294C3: 8B4610 mov eax,[esi][010]
.000294C6: 89473C mov [edi][03C],eax
.000294C9: F6460A02 test b,[esi][00A],2 -->> THIS FIXES
.000294CD: 8B4610 mov eax,[esi][010]
.000294D0: 894614 mov [esi][014],eax
.000294D3: 7404 jz .0000294D9 -->> THIS FIXES
.000294D5: 83651000 and d,[ebp][010],0 -->> THIS FIXES
.000294D9: FF4608 inc d,[esi][8]
.000294DC: 8B4618 mov eax,[esi][018]
.000294DF: 894728 mov [edi][028],eax
.000294E2: 8B461C mov eax,[esi][01C]
.000294E5: 89472C mov [edi][02C],eax
.000294E8: 8B4620 mov eax,[esi][020]
.000294EB: 8987A8000000 mov [edi][0000000A8],eax
.000294F1: 8B7614 mov esi,[esi][014]
.000294F4: 85F6 test esi,esi
.000294F6: 7403 jz .0000294FB
.000294F8: 89773C mov [edi][03C],esi
.000294FB: 57 push edi
.000294FC: E8C0B2FFFF call .0000247C1
.00029501: 59 pop ecx
.00029502: 8B4510 mov eax,[ebp][010]
.00029505: 5F pop edi
.00029506: 5E pop esi
.00029507: 5B pop ebx
.00029508: 5D pop ebp
.00029509: C3 retn



Windows 2000 SP4 - acpi.sys 5.0.2195.6920

 
.00023A52: 53                             push         ebx
.00023A53: 8B5C2410 mov ebx,[esp][010]
.00023A57: 56 push esi
.00023A58: 8B742410 mov esi,[esp][010]
.00023A5C: 85DB test ebx,ebx
.00023A5E: 57 push edi
.00023A5F: 740D jz .000023A6E
.00023A61: 81FB01800000 cmp ebx,000008001
.00023A67: 7405 jz .000023A6E
.00023A69: 6A02 push 2
.00023A6B: 58 pop eax
.00023A6C: EB06 jmps .000023A74
.00023A6E: 8B4608 mov eax,[esi][8]
.00023A71: 83E00F and eax,00F
.00023A74: 8B7C2410 mov edi,[esp][010]
.00023A78: 83E800 sub eax,0
.00023A7B: 740B jz .000023A88
.00023A7D: 48 dec eax
.00023A7E: 740B jz .000023A8B
.00023A80: 48 dec eax
.00023A81: 7472 jz .000023AF5
.00023A83: E993000000 jmp .000023B1B
.00023A88: FF4608 inc d,[esi][8]
.00023A8B: 81FB01800000 cmp ebx,000008001
.00023A91: 7457 jz .000023AEA
.00023A93: 8B473C mov eax,[edi][03C]
.00023A96: 3B4610 cmp eax,[esi][010]
.00023A99: 7329 jnc .000023AC4
.00023A9B: 6A01 push 1
.00023A9D: FF7624 push d,[esi][024]
.00023AA0: E80FAFFFFF call .00001E9B4
.00023AA5: 59 pop ecx
.00023AA6: 59 pop ecx
.00023AA7: FF7624 push d,[esi][024]
.00023AAA: FF7610 push d,[esi][010]
.00023AAD: 57 push edi
.00023AAE: E805050000 call .000023FB8
.00023AB3: 8BD8 mov ebx,eax
.00023AB5: 83C40C add esp,00C
.00023AB8: 85DB test ebx,ebx
.00023ABA: 7508 jnz .000023AC4
.00023ABC: 3BB7C8000000 cmp esi,[edi][0000000C8]
.00023AC2: 74CF jz .000023A93
.00023AC4: 81FB01800000 cmp ebx,000008001
.00023ACA: 741E jz .000023AEA
.00023ACC: 81FB04800000 cmp ebx,000008004
.00023AD2: 7447 jz .000023B1B
.00023AD4: 3BB7C8000000 cmp esi,[edi][0000000C8]
.00023ADA: 753F jnz .000023B1B
.00023ADC: 85DB test ebx,ebx
.00023ADE: 7512 jnz .000023AF2
.00023AE0: 8B473C mov eax,[edi][03C]
.00023AE3: 3B4610 cmp eax,[esi][010]
.00023AE6: 730A jnc .000023AF2
.00023AE8: EBA9 jmps .000023A93
.00023AEA: 8B4610 mov eax,[esi][010]
.00023AED: 33DB xor ebx,ebx
.00023AEF: 89473C mov [edi][03C],eax
.00023AF2: FF4608 inc d,[esi][8]
.00023AF5: 8B4618 mov eax,[esi][018]
.00023AF8: 894728 mov [edi][028],eax
.00023AFB: 8B461C mov eax,[esi][01C]
.00023AFE: 89472C mov [edi][02C],eax
.00023B01: 8B4620 mov eax,[esi][020]
.00023B04: 8987B0000000 mov [edi][0000000B0],eax
.00023B0A: 8B7614 mov esi,[esi][014]
.00023B0D: 85F6 test esi,esi
.00023B0F: 7403 jz .000023B14
.00023B11: 89773C mov [edi][03C],esi
.00023B14: 57 push edi
.00023B15: E884CFFFFF call .000020A9E
.00023B1A: 59 pop ecx
.00023B1B: 5F pop edi
.00023B1C: 8BC3 mov eax,ebx
.00023B1E: 5E pop esi
.00023B1F: 5B pop ebx
.00023B20: C3 retn



Check the attached files, all original and compare code.

See if you can apply the SP3 fix:

 
.000294C9: F6460A02                       test         b,[esi][00A],2 -->> THIS FIXES
...
.000294D3: 7404 jz .0000294D9 -->> THIS FIXES
.000294D5: 83651000 and d,[ebp][010],0 -->> THIS FIXES


to Win2000 acpi.sys

daniel_k has attached files to this post
#5992daniel_k
Zitat von ⇗ Andalu im Beitrag ¶ #5984
@daniel_k
Hi dude ;) How are you?

As you can see, I have always issues..... is it just a coincidence that they are only with asrock boards?

Unfortunately, the restart doesn't wotk even with the updated XP from Win-XP IE 2020.9.9

Good, hope you're doing fine too!

Those restart issues are complicated to fix, as the acpi table is properly loaded.
Personally, I have no idea where the issue may be.
#5993daniel_k
Zitat von ⇗ diderius6 im Beitrag ¶ #5990
Do you have a modded acpi.sys from XP SP1

The one from SP3 seems to work just fine, you can even use 6666.
#5994gordo999
Zitat von ⇗ blackwingcat im Beitrag ¶ #5962
Umm, Serial blanket connected directly mother board.
⇗ https://www.amazon.co.jp/gp/product/B001Y1F0HW/
I bought it
⇗ @blackwingcat ...in Canada, we call it a serial port connector, or a serial port breakout connector. I use one on my Asus B360M mobo.

For a serial connection for debugging you also need a null modem cable (crossover cable) to connect your connector to the other computer.

⇗ https://www.decisivetactics.com/support/view?article=crossover-or-null-modem-vs-straight-through-serial-cable

Microsoft describes it well here:

Note the difference between the 9-pin D-shell connector like yours and the 25-pin connector. Almost the same but a slight difference.

⇗ https://docs.microsoft.com/en-us/windows-hardware/drivers/debugger/setting-up-a-null-modem-cable-connection

I made my own but you have to be very careful identifying the correct pins since the D-shell serial connectors are mirror images. I used the more complex cable, the null modem cable with handshake.

Basically, a normal serial cable has pins 2 and 3 connected as:

Rx2 -> Rx2
Tx3 -> Tx3

Those are the receive and transmit conductors. With a simple modem cable you are normally sending signals to a 'dumb' terminal like a monitor or over a telephone line to a remote station.

When you connect two computers via serial ports a simple serial/modem cable does not work. Each computer needs to 'talk' to the other to avoid data collisions. So, they reverse the Rx and Tx connectors like this:

Rx2 -> Tx3
Tx2 -> Rx3

Then they use other control signals to control the data flow.

Pin 4 = DTR = data terminal ready
Pin 5 = ground - important to have the same ground at each terminal.
Pin 6= DSR = data set ready
Pin 7 = RTS = ready to send
Pin 8 = CTS = clear to send

Note that these cables cross over as well. That is...

DTR -> DSR both ways
CTS -> RTS both ways

I have actually used a USB -> serial adapter on the host through a crossover cable to a breakout connector like yours.
#5995Andalu⇗ @diderius6
I have extracted the dsdt.bin file from the installed bios v2.50 with aida64 and it is identical (same SHA-1) for both 'uniprocessor acpi' (with the working restart) and 'multiprocessor acpi' system (where the restart fails).

Edit: with the dsdt table extracted from aida64, I can now get the dsdt.dsl also from the bios v2.50

Edit1: I'm still unable to get the dsdt.aml due to 3 errors detected during the iasl compilation :(
#5996diderius6Hi,
is there a way to change the DEV ID from 0F31=>0156 for the integrated Graphikcard
on the J1900 Baytrail cpu
Dietmar
#5997infuscomus⇗ @Andalu

Can you send me your DSDT in both original BIN and DSL form so I can take a look?
#5998Andalu⇗ @infuscomus

below the dsdt table extracted with RWeverything from bios v2.50

Andalu has attached files to this post
#5999Mov AX, 0xDEAD
Zitat von ⇗ YuriyCN im Beitrag ¶ #del-10

Edit: swiss knife named "RWEverything" can do this:
Specific -> IO Index/Data - >CMOS 70/71
first 5 bytes are sec:min:hour, in BCD coding (no need hex converting)
...
Если после накрутки времени в Windows XP, перегрузиться и зайти в BIOS - то время уже идет вперед. Кто из них начинает врать - не понятно, но в BIOS новое время записывается

Hi YuriyCN,
dont need to mess, just compare cmos 70/71 clock with external clock (hand watches/etc)
#6000infuscomus⇗ @Andalu

OK, I managed to disassemble and reassemble your DSDT using iasl 20161222

On recompile it found an error on line 292 - BNUM already exists, so I deleted that.

Try this modded DSDT (the DSDT.aml) and see if it fixes your restarting issue?

infuscomus has attached files to this post

 

Page 401

#6001Andalu⇗ @infuscomus
thanks for your help ;)
I made a fresh XP installation as "standard pc" (here too I got the restart issue) and then loaded your dsdt.aml file via "asl /loadtable dsdt.aml" command but the restart is still not working.
del-11YuriyCN
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #5999

Hi YuriyCN,
dont need to mess, just compare cmos 70/71 clock with external clock (hand watches/etc)



Я именно так и делаю.

Сравниваю работу часов в ПК с наручными часами "Электроника Мелодия 55Б", в которых есть ЦНХ (цифровая настройка хода). При синхронизации ПК с интернетом и сравнении с часами - подтверждается идеальная работа часов. Уход времени данных часов несколько секунд за пол-года...

Возвращаемся к ПК
За ночь в выключенном состоянии (8-10 часов) время идет правильно. По факту имею отставание около 1 секунды за 8-10 часов. В итоге часы ПК отстают от точного времени на 2-3 секунды / день. Это точность часов, определяемая BIOS и точностью часового кварцевого резонатора 32,768 Гц. Эту цифру считаю приемлимой.

Но под Windows XP, когда всевозможный запускаемый софт начинает манипулировать с периодом системного таймера (16 мс <-> 1 мс) - я наблюдаю резкий уход времени вперед - до 3-5 секунд за 10 минут активной работы. За рабочий день часы могут уйти на 5-7 минут вперед. Что считаю не приемлемо и не допустимо.

Я могу скинуть программу, с исходным кодом, которая жестко устанавливает период таймера на 1 мс - и убирает глюк со временем.
#6002daniel_k⇗ @Andalu

Wait a minute:

Zitat
Regarding the failed restart on my Asrock B250M Pro4, I noticed that it works fine on an 'MPS Multiprocessor' and 'ACPI Uniprocessor' system, while it hangs on a 'Standard PC' and clearly on the 'ACPI Multiprocessor' pc.


In MPS mode and Standard PC, Windows doesn't load/touch ACPI tables.
Probably your issue is somewhere else, maybe even a BIOS bug.

#6003infuscomus⇗ @Andalu

try "ACPI multiprocessor" mode with the DSDT mod - does restart work now?
#6004Andalu⇗ @infuscomus
Sorry for the delay in my reply.
Does the command "asl /loadtable dsdt.aml" also work on ACPI Multiprocessor mode?
I would like try your procedure with easy2boot but I'm still looking for a way to get the dsdt.bin file :(

Edit: just tried in ACPI Multiprocessor mode with the asl /loadtable command but on (manually) restart I got the A5 bsod (0x00010007,0x79,0x00,0x00) with the acpi666 from outer space. I'll try with other acpi.sys versions.

Edit1: identical A5 bsod error code with acpi5048 and error code 0x03 with acpi2015
#6005Andalu
Zitat von ⇗ daniel_k im Beitrag ¶ #6002
@daniel_k
In MPS mode and Standard PC, Windows doesn't load/touch ACPI tables.
Probably your issue is somewhere else, maybe even a BIOS bug.

also the 'acpi uniprocessor' mode does not touch the acpi tables? Here the restart works.
The bios bug occurs in XP only, no such issue in Win7 and Win10.
#6006infuscomus
Zitat von ⇗ Andalu im Beitrag ¶ #6004
I would like try your procedure with easy2boot but I'm still looking for a way to get the dsdt.bin file :(


didn't you already send me your dsdt.bin file?

Try my Easy2boot method using the modded dsdt.aml file in that zip file I sent you.
#6007Andalu⇗ @infuscomus
I sent you the original un-modded dsdt.bin file. Can I use your patched .aml file instead of the .bin file for the easy2boot method?
#6008infuscomus⇗ @Andalu

Yes, please try my modded dsdt.aml using my method.
edit: and use "ACPI multiprocessor"
#6009Andalu⇗ @infuscomus
just tried with the dsdt.aml file with the easy2boot method on an ACPI Multiprocessor XP system: A5 bsod (0x11)

Edit: same bsod on another working XP disk.
#6010infuscomus⇗ @Andalu

OK, try this dsdt-mod-2.aml file with easy2boot method - does it also give A5 BSOD?

infuscomus has attached files to this post
#6011daniel_k
Zitat von ⇗ Andalu im Beitrag ¶ #6005
[quote=""|p6005]
also the 'acpi uniprocessor' mode does not touch the acpi tables? Here the restart works.
The bios bug occurs in XP only, no such issue in Win7 and Win10.

Only acpi uni/multiprocessor loads the acpi tables. All other modes don't.
As I've said before, if restart doesn't work in Standard PC mode or MPS Uniprocessor, the issue lies in the BIOS itself.

You're obviously using a graphics card.

What about using the onboard video even if in VGA mode to see if the issue persist?
Or even using the PCIE3 (x4 mode) for your graphics card?
#6012daniel_k⇗ @Andalu

The ACPI table of your board is XP friendly.

Does XP boots with your very own table you've attached here?
¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (401)

Try it.
#6013Andalu⇗ @infuscomus
A5 bsod 0x03
#6014Andalu⇗ @daniel_k
it boots with its table but the restart fails :(
#6015Andalu
Zitat von ⇗ daniel_k im Beitrag ¶ #6011
Only acpi uni/multiprocessor loads the acpi tables. All other modes don't.
As I've said before, if restart doesn't work in Standard PC mode or MPS Uniprocessor, the issue lies in the BIOS itself.

You're obviously using a graphics card.

What about using the onboard video even if in VGA mode to see if the issue persist?
Or even using the PCIE3 (x4 mode) for your graphics card?

In ACPI Uniprocessor mode the restart works correctly.
No changes with onboard or PCIEx graphics card, it fails with both.

 

Page 402

#6016infuscomus⇗ @Andalu

does this dsdt-mod-3.aml give a BSOD - If it does there might be something wrong with my method.

infuscomus has attached files to this post
#6017Andalu⇗ @infuscomus
unfortunately it doesn't work, same A5 bsod 0x03.

Most likely you are right: I got the A5 bsod even with the original un-modded dsdt.bin file.
Here a shot where you can see my flash drive (disk 1) with the two partitions (I must use the diskmod driver to create and see the 2nd partition):




⇗ @daniel_k
before I did not understand what you meant, sorry
#6018infuscomus⇗ @Andalu

do you have an existing XP install? If you do try patching dsdt then going straight from agfm to your XP drive instead of back to easy2boot.
#6019Andalu⇗ @infuscomus
I follow these steps for the easy2boot method:
- boot from the flash drive
- select "1 alive grub2 File Manager (agFM)"
- F2 and enter to see the exact disk/partition containing the modded table
- F6 to enter the screen where I can select the grub2 console
- I write here: acpi (hd0,msdos2)/ACPI/DSDT.aml (or bin) and enter (no error detected)
- ESC to exit and F3 to select the partition containing the installed XP to boot from.

Should I try differently?
#6020infuscomus⇗ @Andalu

you checked that hd0,msdos2 is the correct partition where the ACPI amd/bin files are located? use the ls command to check

grub2 is case sensitive so double check

If you run acpi (hd0,msdos2)/ACPI/DSDT.bin using your original unmodded DSDT does it boot?
#6021Andalu⇗ @infuscomus
I don't know where to write the 'ls' command but I can see however the exact disk/partition containing the ACPI folder previously created by pressing the F2 key after entering into agFM.
I had already checked that the command in the grub2 console is case-sensitive otherwise it gives an error.

As said before, I got the A5 bsod even with the original dsdt.bin file
#6022infuscomus⇗ @Andalu

ls command in grub2 console to list files in directory

are you able to remake your easy2boot USB on windows 10? I made my easy2boot in windows 10 so I'm thinking maybe it does something different to make it work correctly.
#6023Andalu⇗ @infuscomus
it will seem strange, but I don't have an internet connection in Win10, I use it really few times because I don't like it at all.
And it is equally strange that to create a simple usb stick you need to connect to the easy2boot site :)
#6024infuscomus⇗ @Andalu

Just out of curiosity, can you boot into a live ubuntu 20.04 ISO after patching the DSDT?
#6025Andalu⇗ @infuscomus
to install that ISO in a USB stick with easy2boot I'd still have to use XP and I don't think it's possible with a 64 bit version such as Ubuntu 20.04.
#6026infuscomus⇗ @Andalu

You only need to download the ISO and put it in the LINUX folder - XP can do that.
#6027Andalu⇗ @infuscomus
I used ubuntu-16.04.5 iso (the 20.04 needs some time to compete the download). Once patched the dsdt.aml file and selected the disk to boot from (the E2B parition) I got the same screen of some days ago for the XP iso installation: the classic horizontal lines that fill the screen as a sign of error.
#6028infuscomus⇗ @Andalu

On my Threadripper system I'm not able to get it to boot - grub2 loads but if I try to boot into ubuntu it will freeze after it loads the USB driver (or so it seems, couldn't get a log)
20.04 worked fine though (although the installer was unstable, hopefully they've fixed that by now)
#6029Andalu⇗ @infuscomus
just tried: I can boot into a live ubuntu 16.04.5 via easy2boot after patching the dsdt table.
#6030infuscomus⇗ @Andalu

It would be good to confirm that it is using the modded DSDT.

Open up log viewer and do a search for DSDT or ACPI in the ubuntu system logs to check the date stamp of the table, that way we can see which one is loaded.

I'm off to bed for now, be back later.

 

Page 403

#6031Andalu⇗ @infuscomus
here is an extract from the ubuntu syslog file:



Many thanks for the support
#6032diderius6Nice Video about assembler x86 for 32 bit
⇗ https://www.youtube.com/watch?v=75gBFiFtAb8

But still I do not understand, how the opcode of a driver in XP is worked down, step by step.
What I understand:
The drivers has an entrypoint in memory. But this seems not to mean, that the whole opcode of the driver starts from this adress, step by step.
Because with Windbg you can see, that XP does not work step by step on this driver, because in that case the same driver loaded at the same entrypoint on 2 different compis would be to 100% the same and you should see this opcode of the driver direct,
but it isnt
Dietmar

PS: With the entrypoint of a driver you should be able to extract the whole loaded driver from memory
and even edit it direct in memory: possible?
#6033blackwingcatOkay.
I could enter debug mode with serial cable :3

And I got KeBugCheckEx on
Halaacpi.dll
  		cmp	edx,eax
jnz L8002D7DE
push ebx
push L8001D7B0
push ecx
push DEAD000Ah
push 0000005Ch
call [ntoskrnl.exe!KeBugCheckEx]

ebx = 0 , ecx = 0
#6034infuscomus⇗ @Andalu

Thanks!
Now we know the patching is working and my easy2boot method is valid.
The hard part comes now - to get it working with XP.

What A5 BSOD did you get in XP with this DSDT?
#6035diderius6⇗ @blackwingcat

It is Bsod 0x0000005C, (0xDEAD000A, 0x00000000, xxx, 0x00000000)
in HalpInitIntiInfo

Dietmar

PS: In XP SP3 halmacpi.dll hack is

75 14 53 => EB 14 53

I think in win2000 similar, if not you can sent me your hal.dll .

L80022222:
          cmp    edx,eax
jnz L8002223A ---> jmp L8002223A
push ebx
push L80018E78
push ecx
push DEAD000Ah
push 0000005Ch
call [ntoskrnl.exe!KeBugCheckEx]
L8002223A:
pop edi
pop esi
pop ebx
leave
retn
#6036Andalu⇗ @infuscomus

Hi,
with easy2boot I got the same A5 error code with all DSDT versions (original and modded) on an XP already installed:
(0x03,xxxx,xxxx,0x494E495F)

but, for the same installed XP, when I use the asl /loadtable command with, for example, the dsdt.aml from the 'andalu-dsdt-mod-3' package, the A5 error code is (0x00010007,xxxx,xxxx,0x00)

I still have to find a way to install an XP ISO via easy2boot
#6037diderius6I try to understand, how XP works with a driver, here igxpmp32.sys.
First I notice, that the driverentry point is not the same place in memory,
where the driver is loaded up.

For igxpmp32.sys

entrypoint is 0x80ac37ec

place in memory is from 0xB8EEF000 to 0xB9159000 size 26A000 (is 2531328 which is not the real size of the driver but its required place on harddisk 2.531.328 Byte)

The simple(?) question is now, HOW XP works step by step with this driver and how this can be seen via Windbg

Dietmar
#6038diderius6⇗ @Andalu

When you load DSDT table via asl /loadtable from Skylake above you get always Acpi Bsod,
no matter which version of asl you use. So, asl cant be used any longer for to check any DSDT table
Dietmar
#6039Andalu⇗ @diderius6
thanks for the info ;)
I thought your posts about the asl /loadtable command were still applicable in my case.
#6040infuscomus⇗ @Andalu

There is a tutorial for how to install XP with easy2boot on youtube by a youtuber - Philscomputerlab

On your existing XP install, can you check that you are using the patched outerspace acpi.sys driver?
#6041Andalu⇗ @infuscomus
acpi.sys 6666 (2019.10.20) from outer space (SHA-1: B1CE1C07AFB0861BCCDEC17DAF04274A3DD80C8C)

I'll take a look to the video.
#6042infuscomus⇗ @Andalu

the checksum matches the acpi.sys I use, so thats good.

can you run acpidump -b again? but send me everything this time?
#6043Andalu⇗ @infuscomus
here the extracted tables

Andalu has attached files to this post
#6044diderius6⇗ @Mov AX, 0xDEAD  ⇗ @gordo999

All IRP are with success for the igxpmp32.sys on the Baytrail J1900 board.
For XP now only Process Monitor 3.53 works. New version 3.6 works only for Vista and above.
Now I am out of ideas, what I can look more for, why this driver gets unloaded
Dietmar

#6045infuscomus⇗ @Andalu

Thanks,
I tried different approaches with these, let me know the result.

infuscomus has attached files to this post

 

Page 404

#6046Andalu⇗ @infuscomus
tried both versions on two different SSDs with XP already installed and working but I got always the same A5 error code: 0x00000003,0x8B783D44,0xC0000034,0x494E495F
#6047infuscomus⇗ @Andalu

Very strange, error is in _INI for some reason.

⇗ @diderius6

any ideas?
#6048diderius6⇗ @Andalu

Please send me the acpi.sys
that you use
Dietmar
#6049Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #6044
@Mov AX, 0xDEAD  @gordo999
All IRP are with success for the igxpmp32.sys on the Baytrail J1900 board

Hi Diderius,
1) ProcMon shows only filesystem irps.
Try IrpTracker, IRPTrace to see kernel IRPs (i never used it, maybe they are just trash)

2) I forget to say, In WinXP, IRPs for video drivers processed by VIDEOPRT.SYS, this is kernel "framework for video drivers", it will subcall vendor driver by looking function in special _VIDEO_HW_INITIALIZATION_DATA table , for example at init stage it will call HwFindAdapter(). I think there is no tool to trace VIDEOPRT.sys<>Driver.sys requests
#6050Andalu
Zitat von ⇗ diderius6 im Beitrag ¶ #6048
@Andalu

Please send me the acpi.sys
that you use
Dietmar

The acpi.sys is one of your mod versions:
acpi.sys 6666 from outer space (SHA-1: B1CE1C07AFB0861BCCDEC17DAF04274A3DD80C8C)
#6051Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #6032

But still I do not understand, how the opcode of a driver in XP is worked down, step by step.
What I understand:
The drivers has an entrypoint in memory. But this seems not to mean, that the whole opcode of the driver starts from this adress, step by step.
Because with Windbg you can see, that XP does not work step by step on this driver, because in that case the same driver loaded at the same entrypoint on 2 different compis would be to 100% the same and you should see this opcode of the driver direct,
but it isnt

PS: With the entrypoint of a driver you should be able to extract the whole loaded driver from memory
and even edit it direct in memory: possible?

- to make life easier, in driver xxx.sys on all code sections set "not pageable" property, this will force load all driver code
- driver loaded in memory by sections, each section define "VirtualAdress Offset", this is offset from load adress to begin of section
- sections may have gaps in memory, but be solid in file driver
- Windows start driver's life by executing entrypoint call "DriverEntry()", "bu xxx!DriverEntry" set deferred breakpoint to first byte of this func inside driver in memory
- Window has "blackmagic" at boot process, it load all drivers to one adresses, after some time reload to another, only ntoskrnl.exe/hal.dll still at old adresses
- all good debuggers allow edit code in memory, just dont edit memory "under" breakpoint, it may give bad effects
#6052diderius6⇗ @Mov AX, 0xDEAD

Thanks for help!

Do you think, that it makes sense to load after breakpoint (for driverentry of igxpmp32.sys) all the code
in memory of the Baytrail board,
that the working driver from the Lenovo x230 has there
Dietmar
#6053Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #6037

First I notice, that the driverentry point is not the same place in memory,
where the driver is loaded up.
For igxpmp32.sys
entrypoint is 0x80ac37ec
place in memory is from 0xB8EEF000 to 0xB9159000 size 26A000 (is 2531328 which is not the real size of the driver but its required place on harddisk 2.531.328 Byte)
The simple(?) question is now, HOW XP works step by step with this driver and how this can be seen via Windbg


what is entry point ? this is adress of function if driver loaded to "PE Header Image base"
Windows ignore this Image base for drivers and load body to own memory pool, each driver get "new image base" , so entrypoint in memory is
new image base +  (0x80ac37ec - PE Header Image base)
#6054Mov AX, 0xDEAD
Zitat von ⇗ YuriyCN im Beitrag ¶ #del-11
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #5999

Hi YuriyCN,
dont need to mess, just compare cmos 70/71 clock with external clock (hand watches/etc)


Но под Windows XP, когда всевозможный запускаемый софт начинает манипулировать с периодом системного таймера (16 мс <-> 1 мс) - я наблюдаю резкий уход времени вперед - до 3-5 секунд за 10 минут активной работы. За рабочий день часы могут уйти на 5-7 минут вперед. Что считаю не приемлемо и не допустимо.


Тогда нет возможности обнаружить источник проблемы если ночью когда все выключено микросхема часов правильно считает колебания кварца и правильно записывает их в cmos память. Когда WinXP загружена некая програмная часть записывает свои собственные показания времени, которые в конечном виде попадают в CMOS память поверх того, что там насчитала микросхема, по другому изменить показания аппаратных часов невозможно (есть конечно Intel ME со свои процессором, но врят ли он этим будет заниматся). Настройка периода системного таймера уже не имеет значения если есть такой факт перебивки времени.
Со стороны Windows это выглядит как кто-то(или сама винда) периодически (?) использует вызов SetLocalTime(), за каждый вызов разница времи только увеличивается
#6055ruthanI had time to switch to more active mode, i will never make some wild coding as some masters here.. but good testing and experimenting is also important.

My target was try Fresco USB3 device compatibility (⇗ https://sheet.zoho.com/sheet/published.d...22a5b950420cb22 ).. but i got boot freeze (infinite boot logo), after reboot and some new devices detection.. i suspected USB devices and i was right, when i disconnected all USB devices, its booting fine.. so im now connecting UBS device one by one, because i had to make some unwanted changes.. I have now 4 different USB controllers connected. Meanwhile i find few things.

 At least on Intel USB3 my Gigabyte keyboard is not realiable, when i had only 1 device, keyboard connected, was always able to skip WinXP checkdisk, but take ~1 hour on all my disk and WinXP has bad idea add some dirty flag to all partitions, when you get some boot crash, at least on my machine.. Win7 checkdisk is also that slow, only for some reason Windows 10 have some better and much faster checkdist at least 10x faster..
  I know that Windows 98 i thing i some ms-dos.sys file or something like that have possibilities not run scandisk.. but i dunno if it is possible to set for XP? Ideal would be check only system C: driver and ignore other..
  .. but back to keyboard, i made with 1 device connected, zillion restarts and reboot and it always worked, when i connected other devices just 3x USB2 monitor hubs, its no more realiable and keyboard is sometimes not working for checkdisk skip.. i tried shutdown, psu power disconnection anything.. im not able to find way to make it working everytime.. when i connect PS/2 keyboard it is working everytime, so there has to be some bug.

Some dirty flag removed from Windows would be good too..

I have other question, Nvidia Gpus are limited in XP to 2 monitors only, what about AMD ones, is there some AMD card and driver, which could handle 3 monitors?
#6056diderius6⇗ @Andalu

This is hack of acpi.sys against Bsod 0x000000A5 (0x00000003, xxx, yyy, zzz)

Dietmar

⇗ https://ufile.io/305aedg3
#6057ruthanSome good new, i finally found some working USB3 Gigabit Lan combo..  Assix AX88119 is running fine on Fresco USB3 controller and fresco driver - station drivers from 2016..  Because copying files with 100Mbit/s simply sucks.. I tried better Realtek USB3 with zillions controllers, it always installed drivers, no exclamation marks, but networking never worked.. it seems i will be maybe even make working some DVB-T2 turner on it.. but i have now other priorities.
#6058ruthanHmm Fresco is nice one, its first controller, where Xbox360 controller working correctly, even after reboot..
#6059Andalu⇗ @diderius6 ⇗ @infuscomus

firstly thank you guys for your help

With the new acpi.sys XP boots correctly.
With the easy2boot method it works on an XP already installed with the "dsdt-mod.aml" from the package "andalu_acpidump_dsdt_mod" but, really strange, not all the times:
XP starts correctly without the A5 bsod but in some attempts the desktop occupies only a third of the screen, the remaining part remains black. The same always happens with "dsdt-mod-osys-fix.aml". The other modified dsdt tables always give a bsod.

In any case, the restart still doesn't work, unfortunately


EDIT: also tried with a pciex graphics card for the easy2boot method but I got the A5 bsod (0x00010007,xxx,xxx,0x00) in all attempts, even with the only mod table that sometime works (dsdt-mod.aml). Same error code with the original dsdt table also with the onboard vga.
#6060diderius6I just noticed, that none of the *.dll are loaded together with igxpmp32.sys on the Baytrail J1900 board.
For example igxpdx32.dll gets a lot of IRP on the Lenovo x230 notebook with working DEV_0166 HD4000 GPU.
But I dont know if the absent of all the *.dll which belongs to the driver igxpmp32.sys on the Baytrail board
is a consequence of the unloaded driver igxpmp32.sys or a reason, that igxpmp32.sys gets unloaded
Dietmar

EDIT: In Dependency Walker igxpdx32.dll shows only dependency to videoprt.sys
but not to igxpmp32.sys.

igxpmp32.sys itself also shows no dependency to igxpdx32.dll .

 

Page 405

#6061blackwingcatThank you, I tried it.
And, I found crash on reference address 0x01000801 in hal!HalInitSystem

So, I want to make break point on hal!HalInitSystem
I tried the following command.

kd> bp hal!HalInitSystem
Bp expression 'hal!HalInitSystem' could not be resolved, adding deferred bp
kd> bp 803b5ab8
kd> eb 803b5ab8
ReadVirtual: 803b5ab8 not properly sign extended
803b5ab8 55
kd> bu 803b5ab8
kd> bu hal!HalInitSystem
kd> bl
0 e Disable Clear 803b5ab8 0001 (0001)
1 e Disable Clear 803b5ab8 0001 (0001) hal!HalInitSystem
Microsoft (R) Windows Debugger Version 10.0.20153.1000 AMD64
Copyright (c) Microsoft Corporation. All rights reserved.

Opened \\.\com5
Waiting to reconnect...

*** Fatal System Error: 0x0000000a
(0x01000801,0x000000FF,0x00000001,0x803B5b50)

But it is no effection.
Is there any better method how to make bp ?
 
 SUB_L80025B3C:
mov eax,[L800225D0]
push esi
push edi
xor edi,edi
test eax,eax
jbe L80025B9E
L80025B49:
mov esi,[L800225E4+edi*4]
mov dword ptr [esi],00000000h <- esi =0x01000801
push edi





Zitat von ⇗ diderius6 im Beitrag ¶ #6035
@blackwingcat

It is Bsod 0x0000005C, (0xDEAD000A, 0x00000000, xxx, 0x00000000)
in HalpInitIntiInfo

Dietmar

PS: In XP SP3 halmacpi.dll hack is

#6062gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #6032
But still I do not understand, how the opcode of a driver in XP is worked down, step by step. What I understand: The drivers has an entrypoint in memory. But this seems not to mean, that the whole opcode of the driver starts from this adress, step by step.
⇗ @diderius6 ...Dietmar, the opcode is the hex byte combo that represent an assembly instruction. When you see an assembly instruction like PUSH, it is a higher level instruction that makes no sense to the processor.The processor needs machine code which is in 1s and 0s which can be represented by 3.3 volts or 0 volts. To make it conveninet for we humans, the binary 1s and 0s are written in hexadecimal.

Don't try to digest all of this, or feel frustrated if you can't. It's just intended as an example of opcode usage. In IDA, if you want to see the opcodes associated with instructions, you have to open Options/General/Disassembly and look for 'Number of opcode bytes'. I generally start at 8 bytes but you may find certain instructions use more. IDA will then display the opcodes for each instruction.

You will notice immediately that the code steps between addresses is dependent on the number of opcode bytes.

For example, a PUSH instruction in 32-bit code often starts with an 0x5 as in 01010reg. The first 4 most significant bits are 0101 = 0x5. The 4 least significant digits are 0reg, a 4 bit value where:

reg = 000 for the EAX register
reg = 001 for the ECX register
reg = 010 for the EDX register
reg = 011 for the EBX register
reg = 100 if no register is specified
reg = 101 for the EBP register
reg = 110 for the ESI register
reg = 111 for the EDI register

Note that the values from 000 - 111 are binary codes for 0,1,2,3,4,5,6,7.

If you see assembly code for PUSH 55, it means to PUSH the value of the EBP register onto the stack. You can tell that because its PUSH = 01010101, where MSB 0101 = 0x5 and LSB 0101 = 0reg where reg = 101 = 0x5 = EBP. Opcode 50 means PUSH EAX.

This is for x86 assembly and it seems things have changed for x64 assembly. I am looking into that now. However, I am looking at an x64 instruction for a jump instruction which is written as:

jmp short loc_149a4 in IDA

It's opcode is EB 6F where JMP = EB, the same as in x86. The 6F tells the processor how many code steps to take. My JMP statement is located at 00000000'00014933 and the JMP is going to relocate the processor execution 0x6F code steps later at 00000000'000149A4. If I subtract the originating address from that address, using hexidecimal subtraction (use programmer mode on the Windows calculator) I get 149A4 - 14933 = 0x71, which is wrong. If I subtract the 0x6f indicated in the EB 6F opcode, I get 149A4 - 6F = 14935, which is two code steps past the JMP address. Therefore I have to add the 6F after the opcode steps.

Going back to my original address:
0000000000014933     EB 6F    jmp short loc_149A4
counting from 14933, the EB opcode is at 14934 and the 6F opcode is at 14935. That's the address I want. When I add 6F to 14935, I get 149A4, the address specified in the jmp statement.

You can see from that alone that the processor executes each opcode statement based on the address spaces taken up by each opcode byte. Having said that, it's never that simple. There are variations, depending on the instruction, how the counting is done and which registers are used.

Also, the opcode bytes can form a code, one of them called an r/m code. The codes identify the register used and they also indicate how more complex opcodes are addressed. Sometimes you'll see an assembly instruction with a multiplier in it that is indicated by *. The multiplier value included in the opcode.

So, you'll get an instruction like MOV reg, reg. That means to move a value from one register to another. It is written in the form:

[100010dw] [mod, reg, ,r/m] [disp 0,1 or 2]

Where each value in the brackets is a byte in length. The second byte breaks down into:

mod (2 bits) + reg (3 bits) + r/m (3 bits) = 8 bits = 1 byte. Each of those sets of bits can form a code. In base 2, two bits can form 4 codes: 00, 01, 10, and 11. Three bits can form 8 codes: 000, 001, 010, 011, 100, 101, 110, 111. Each code can represent a condition or a processor register.

Some people tend to forget that all of this code is aimed at a hardware processor which can only understand 1s and 0s in the form of equivalent voltages. Some people using higher level languages, like object oriented programming, never seem to understand that the objects they define don't exist, but are represented by code, which ultimately is executed by voltages in a processor. It's difficult to equate human ideas to a processor but it's really not helpful to abstract and obfuscate code as if it is a reality unto itself. Assembly language tends to bring us back to Earth, especially at the machine code level which opcodes represent.  

If you hear the word object, think of it as code. That way, you won't get your mind bent trying to visualize an object in a processor or memory. The trick then, when trying to represent reality in a processor is to think of how to represent the reality as code. Or read the inventor of the C++ language, Bjarne Stroustrup, who tends to talk in real terms rather than in abstractions and obfuscations.

So the opcode has 3 bytes with the first representing the MOV instruction as in 0x100010dw. I wont get right into this right now, I just want to give an example, The d refers to 'direction' and if d = 1 the MOV is memory to register. The w = word, which means a data word. If w = 1, use a 16 bit or 32 bit data word. If w = 0 use an 8 bit data word.

Therefore if the MOV instructions first opcode byte is 10001011 = 0x8B we have a MOV from memory to a register and it will be 16 or 32 bits. I have noticed that 64 bit code does it differently so I need to research that since I am currently debugging a 64-bit app.

The mod, reg,  r/m byte tells us which registers are in use and how memory is to be addressed. 'mod' means mode and it can have 4 values, since it occupies only 2 binary digits: 00,01,10,11. If mod = 00, it can have two meanings. If the associated r/m = 110, a direct memory access is used. If r/m, is not 110, the displacement is 0 and indirect memory access is used. Don't be confused by displacement I'll explain.

If mod = 01, an indirect memory operand is used with 8 bit displacement.
If mod = 10 an indirect memory operand is used with 16 bit displacement.
If mod = 11 a two register instruction is used. The reg field is the destination register and the r/m field is the source register.

The 'reg' component of the mod, reg, r/m byte tells us which general purpose register is used. I described them above for the PUSH instruction but they are slightly different here. Since the 'reg' portion is 3 bytes it is limited to 8 separate codes, hence 8 registers, as follows:

000 = AX/EAX or AL for 8 bits
001 = CX/ECX or CL for 8 bits
010 = DX/EDX or DL for 8 bits.
011 = BX/EBX or BL for 8 bits
100 = SP/ESP or AH for 8 bits
101 = BP/EBP or CH for 8 bits
110 = SI/ESI or DH for 8 bits
111 = DI/EDI or BH for 8 bits.

There are times when the reg field defines a segment register 'sreg' rather than a general purpose register. A segment register is a register pointing to a data segment (DS), a stack segment (SS), a code segment (CS), system registers FS and GS, and an extra segment, ES.

000 = ES, 001 = CS, 010 = SS, 011 = DS, 100 = FS and 101 = GS. All of these registers are used as base addresses for various data segments while FS and GS are used by the system for thread specific work.

Here's the complex part for the r/m portion. The fields work together at times. If the mod field is 11, r/m specifies the source register using the reg field. Otherwise, r/m is as follows:

000 = DS:[BX+SI+disp]...explained in a minute.
001 = DS:[BX+DI+disp]
010 = SS:[BP+SI+disp]
011 = SS:[BP+DI+disp]
100 = DS:[(SI+disp]
101 = DS:[DI+disp]
110 = SS:[BP+disp]
111 = DS:[BX+disp]

These are all examples of indirect memory addressing since the memory address is not expressed as a number. It is expressed indirectly by a pointer, which is contained in the square brackets. A pointer is value that points to the address in memory that needs to be accessed.

The DS and SS refer to the data segment and the stack segment. If you open up the 'registers' window in windbg (under View/Registers) and scroll down the window you will see the cs, ds, es, fs, gs, and ss registers listed with values. Those values are used to located the base addresses of other segments in memory. It's not easy to decipher them so don't take them too literally. If you learn to decipher them it will help you incredibly when going through memory.

Anyway the DS segment register is usually combined with the ESI register as DS:ESI while the ES register is combined with the EDI register as ES:EDI. Likewise, the SS register is usually combined with the stack pointer as SS:ESP.

⇗ https://www.tutorialspoint.com/assembly_programming/assembly_registers.htm

In the case above, the DS and SS registers are being used internally to point the processor to where it needs to be. So DS:[BX+SI+disp] has the following meaning:

DS = the base memory segment (again, don't go looking for it, it needs to be deciphered using system tables).

[.....] indicates a pointer. Any time you see the square brackets around register values it means you have to use the value pointed to by the address inside the brackets. In this case you are adding the value in the BX register to the value in the SI register plus a displacement, to get an address.

BX is a general reference for the B-register. With a 32-bit system, it included the EBX (32-bit) and the BX (16-bit). BX can be further broken into BH = 8 MSB bits and BL = 8 LSB bits.

SI is the lower 16 bits of the ESI register.

disp = displacement is the number of bytes given to offset a value. For example [EBP + 8] means go to the memory address of EBP plus 8 bytes.


Zitat von ⇗ diderius6 im Beitrag ¶ #6032
Because with Windbg you can see, that XP does not work step by step on this driver, because in that case the same driver loaded at the same entrypoint on 2 different compis would be to 100% the same and you should see this opcode of the driver direct, but it isnt Dietmar
As I explained above, it should go step by step if you look at the opcode bytes and give each byte an address.

Zitat von ⇗ diderius6 im Beitrag ¶ #6032
PS: With the entrypoint of a driver you should be able to extract the whole loaded driver from memory and even edit it direct in memory: possible?
Yes, it's possible. However, there may be issues with memory access since a driver is normally related to system memory which is better protected than user memory. You also have to realize that the image in memory for executables and dll files is not exactly the same as the image on disk. If you learn how to use the PE header in the app on disk you can figure out how the memory image is loaded.

This is more about advanced reverse engineering and you'll have to read on how to do it. I have dumped the memory of a user-level app to disk and I have edited the memory of the app. There are things you need to watch, however. In a paged system like Windows, sometimes the memory page you need is paged to disk, in the pagefile. If you try to access it the system can crash. So, you need to learn how to reload the memory from disk.

It's all doable.
#6063gordo999
Zitat von ⇗ blackwingcat im Beitrag ¶ #6061
So, I want to make break point on hal!HalInitSystem
I tried the following command.
kd> bp hal!HalInitSystem

⇗ @blackwingcat ...this could be a context problem. In other words, you need to be in the code for Hal before you can set a breakpoint. Or, the Hal module has to be loaded, which you can't do in windbg apparently. I had no problem with this using softice but windbg seems to have difficulties setting BPs on system code.

I think there are ways around this using kernel mode debugging...not sure. Softice would let you trace from user code into system code then set a breakpoint. I know there is a way to change context in windbg.
#6064gordo999⇗ @diderius6 ...a couple of links to useful windbg stuff. The pdf file at second link has a section on memory dumps.

⇗ http://windbg.info/doc/1-common-cmds.html

⇗ http://windbg.info/doc/2-windbg-a-z.html
#6065Andalu⇗ @infuscomus

XP-IE2020.9.9 iso with the new acpi.sys by ⇗ @diderius6 correctly installed via the easy2boot flash drive prepared in XP using Easy2Boot_v2.06A_DPMS.exe.
It needs a mandatory graphics card because the vga on board produces an unreadable screen. Unfortunately, the restart remains still not working for my B250M Pro4.

By entering the command "acpi (hd0, msdos2)/acpi/dsdt.aml" in the grub2 console, the installation hangs right after loading the iso into memory with either Firadisk or WinVBlock. Tried using all the modded dsdt.aml tables without results.
#6066diderius6⇗ @gordo999

Thank you a lot for help and the 2 documents about the use of Windbg!
Do you have an idea, why a *.dll is not loaded at all, how is a *.dll loaded and called,
have a nice day
Dietmar
#6067diderius6⇗ @gordo999

Can you please describe as good as possible for me the following output from Windbg
kd> 
nt!PipProcessDevNodeTree+0x399:
80b5d449 0f8529020000 jne nt!PipProcessDevNodeTree+0x5c8 (80b5d678)

Dietmar
#6068infuscomus⇗ @Andalu

are you able to continue the install without patching ACPI for now?
#6069Andalu⇗ @infuscomus

1st test: the XP installation is correctly completed with the acpi.sys from ⇗ @diderius6 integrated into the XP-IE2020.9.9 iso by choosing the classic "windows install menu" option in the easy2boot main menu.

2nd test: before choosing directly the "windows install menu" option, if I enter the grub2 console and here run the command "acpi (hd0,msdos2)/acpi/dsdt.aml", then go back to the easy2boot main menu and choose again the same "windows install menu" option as above, the XP installation hangs after loading the iso in memory.
#6070diderius6⇗ @blackwingcat

I noticed, that you have Bios 2606 installed on your board.
For the cpu Ryzen 3950x you can go back to Bios 0602.
I compare the DSDT in both Bios.
In Bios 0602 are some less devices than in Bios 2606.
So its worth a try, but without a good EEpromer a BIG risk on this board
Dietmar
#6071infuscomus⇗ @Andalu

Honestly, I'm not sure why this is happening, I only tested this method on my threadripper system.
#6072Andalu⇗ @infuscomus

your method seems to work correctly with one of your modded dsdt tables, otherwise my system would never boot.
I can't figure out why this doesn't happen every time and the desktop isn't always displayed full screen.
#6073diderius6I succeed to install the igxpmp32.sys driver version 5437
on the Lenovo x230 with DEV_0166 HD4000 GPU
without any *.dll.
For this I deleted all *.dll in its setup folder,
in registry everything about service "ialm"
and all those belonging *.dll in windows\System32
This means, that the driver igxmp32.sys is to 100% independend
from any of its installations *.dlls
Dietmar

EDIT: I also succeed to install the igxpmp32.sys driver on the Lenovo x230 notebook
with only one entry for DEV_0F31 in its installations *.inf file.
So vice versa this modded driver (no 166h in igxpmp32.sys only F31h)  works.
What is different for Baytrail Valley View GPU???

#6074diderius6Is anybody here, who knows about linux?
I found, that they wrote, that the Sourcecode for Baytrail Valley View is nearly(?) identic to
HD4000 or HD2500, so that they do not need to change a lot.
But I dont find this Source code
Dietmar
#6075kukonosau⇗ @diderius6
Hello. Where is last version SATA AHCI for XPx86 for Ryzen? I have B350 chipset motherboard. Which drivers version recommended? Hitman: Blood Money has slow more loading and Fraps lagging. Copying files very low.

 

Page 406

#6076kukonosau⇗ @diderius6
Why Patch Integrator was deleted with Upload.ee site? I haven't found files Integrator, but early I can their save. Site electronix help...
#6077infuscomus⇗ @kukonosau

you can get the patch integrator here - ⇗ https://www.zone62.com/downloads/softwar...ntegral-edition
#6078ruthanHere is disable annoying checkdisk:
⇗ https://www.raymond.cc/blog/disable-or-s...indows-startup/

I also made on VIA USB3 TV tuner fully working..
#6079gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #6067
kd> 
nt!PipProcessDevNodeTree+0x399:
80b5d449 0f8529020000 jne nt!PipProcessDevNodeTree+0x5c8 (80b5d678)

⇗ @diderius6 ..I don't pretend to be an expert on windbg, I consider myself a newbie on it as well, even though my experience with debuggers in the past as well as years of tracing code gives me an advantage .

The statement above is a conditional jump and it is dependent on a previous statement in which two values are compared (CMP) or tested (TEST). If you see a CALL statement before the jne above, when it returns, there will be values returned in different registers, usually in the RAX/EAX register, at least.. Then you might see a Test EAX, EAX. The test instruction compares the returned value with itself using a logical bitwise AND operator. If the values returned are anything other than 0, the test operator will return a 1. If the value is 0 it will return a 0.

The statement above is based on a previous condition, immediately before it. If the condition is TRUE = 1, the processor will ignore the jne and continue execution. If the condition is FALSE, it will branch off to the address following the jne. Be careful with this because it could cause a crash but if you don't want to branch off to that address, you can replace the opcodes before the jne, 0f8529020000, with 909090909090. Be sure to use as many 0x90s as opcode bytes. Don't leave a 0 because you think it means nothing. Each 0x90 is a NOP statement which means do nothing. The processor will happily carry on executing past the jne statement. You have seen this done before but maybe did not understand why.

The CMP instruction compares the returned value with a value stored elsewhere. The value could be an 'immediate' value, which is an integer value stored in the program, like 0x1000, or it could be in another register. If the CALL returns 0x1000, the CMP instruction compares 0x1000 to 0x1000 and produced a 1 = TRUE. If not, it produces a 0 = FALSE. The conditional jump statement following acts accordingly.

The jne instruction means 'jump if not equal'. An equivalent instruction is jnz = jump if not zero. They react to the flags register, which have a bit set to 1 or 0 depending on the condition reported by statements like CMP or TEST. There are many other conditions that can change the flags register.

If you want to change the result of a conditional jump, if you want to take a different code path than the app is taking, you can find the related flag and change it. For example, in a jz or jnz conditonal jump, the zero flag controls the direction the code will take following a conditional jump. If you change it, the jump goes in the other available code direction.

Such a change in the flag register is only temporary, when you reload the app it does not apply, so you need to change the code in the app using the 0x90 or equivalent.

⇗ https://en.wikipedia.org/wiki/FLAGS_register
#6080diderius6⇗ @gordo999

Thanks a lot,
I try,
Dietmar
#6081diderius6I see,
that my compare between Lenovo x230 with DEV_0166 HD4000 and Baytrail with DEV_0F31 seems to be better, than thought.
Really at every place in memory is on both compis the same Hexcode after meeting driverentry of igxpmp32.sys.

Take a look:
HD4000 loads
3: kd> 
nt!PipProcessDevNodeTree+0x259:
80b5d309 e840efecff call nt!PipProcessStartPhase2 (80a2c24e)
3: kd>
nt!PipProcessDevNodeTree+0x25e:
80b5d30e 8bf0 mov esi,eax
3: kd>
nt!PipProcessDevNodeTree+0x260:
80b5d310 85f6 test esi,esi
3: kd>
nt!PipProcessDevNodeTree+0x262:
80b5d312 0f8dd6000000 jge nt!PipProcessDevNodeTree+0x33e (80b5d3ee)
3: kd>
nt!PipProcessDevNodeTree+0x33e:
80b5d3ee 33ff xor edi,edi
3: kd>
nt!PipProcessDevNodeTree+0x340:
80b5d3f0 eb47 jmp nt!PipProcessDevNodeTree+0x389 (80b5d439)


Baytrail fails
nt!PipProcessDevNodeTree+0x259:
80b5d309 e840efecff call nt!PipProcessStartPhase2 (80a2c24e)
1: kd>
nt!PipProcessDevNodeTree+0x25e:
80b5d30e 8bf0 mov esi,eax
1: kd>
nt!PipProcessDevNodeTree+0x260:
80b5d310 85f6 test esi,esi
1: kd>
nt!PipProcessDevNodeTree+0x262:
80b5d312 0f8dd6000000 jge--->E9d700000090 jmp? nt!PipProcessDevNodeTree+0x33e (80b5d3ee)
1: kd>
nt!PipProcessDevNodeTree+0x268:
Heres must be 80b5d3ee ----> 80b5d318 817b1806030000 cmp dword ptr [ebx+18h],306h

When this is the place, where IRP for the very first time gives "true" on Baytrail,
the driver fails
Dietmar

PS: Can this driverfail been overcome just by jge => jmp?
#6082gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #6081
PS: Can this driverfail been overcome just by jge => jmp?

⇗ @diderius6 ...not necessarily. The code leading up to it is checking the devnode tree so it is trying to find a driver object in the tree and maybe it can't find one. With Microsoft, it's not necessary to suspect they are trying to mislead you by creating a false jump in most of their stuff.  

I am not that experienced with windbg but I know there is a way to display the devnode tree. If you can do that for both drivers any discrepancies might be obvious. I suggest you become familiar with how the devnode tree is formed using driver objects.

BTW...I am a newbie with driver stuff as well.

⇗ https://docs.microsoft.com/en-us/windows...bugger/-devnode

⇗ https://docs.microsoft.com/en-us/windows...d-device-stacks

At bottom of page in link 1..."Remarks

The !devnode 1 command lists all pending removals of device objects.

The !devnode 2 command lists all pending ejects of device objects.

You can use !devnode 0 1 to see the entire device tree".

Also, see link in page to plug and play troubleshooting.
#6083diderius6⇗ @gordo999

The fail of Baytrail happens always exact at this place, which I describe.
And very few steps later, the driver is loaded (for HD4000).
Interesting what will happen, when I do this hack tomorrow.
Still the reason is unclear, why this error happens. It seems to depend on test esi, esi (if esi =0).
But for sure this is the exact place
Dietmar
#6084ruthanI made newer XP install again working fine, but i have problem with older installation, which worked before some HW messing (faster CPU, Geforce 730 -> 750 TI and some USB controllers and devices in other USB ports). Now im able to boot once in normal boot, here hw changes are detected.. and after getting BSOD bellow, im only able boot into Safe mode. Newer installation is using same HW fine, so it has to be some OS, driver configuration problem.

Code 0x000050, detail:
⇗ https://www.dropbox.com/s/9llqyzivf22sz1...code50.jpg?dl=0

Does somebody know to which device it is related? Im using PAE 4 mem mode, unless some driver installation rewriten modified files..
#6085gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #6083
It seems to depend on test esi, esi (if esi =0).
But for sure this is the exact place Dietmar
⇗ @diderius6 ...it can be challenging for sure unless you find the exact code leading to the problem. Sometimes it's nowhere near where it seems.

Can you post more of the code? What precedes the test esi, esi? The esi register is often used for strings and there may have been a compare of strings that were not equal.

If there is a CALL before the test instruction, can you trace into it to see where it goes? It may be huge with many nested calls or it could be simple before the RET instruction. I think you may have posted the driver file, if I can have a look at it in IDA with the right address of the test esi, esi, I may be able to spot something.

Also, what is the result of the test esi, esi instruction? Does it jump or not? I think you said one of the drivers had a different result than the other.
#6086diderius6⇗ @gordo999

This comes from the result of the call of nt!PipProcessStartPhase2 (80a2c24e)
as you can see in the code above.
The result is in EAX(?) and then copied to ESI.

So, the problem is in nt!PipProcessStartPhase2 (80a2c24e).

I found nothing about ProcessStartPhase2

Dietmar

PS: I dont know, how to follow nt!PipProcessStartPhase2
and where this test esi, esi is written.
Is it at a place in the driver igxpmp32.sys?

EDIT: With the Source code of XP SP1 I found it. It is defined in pnpenum.c
and called by pnpirp.c

NTSTATUS
PipProcessStartPhase2(
IN PDEVICE_NODE DeviceNode
)
{
ULONG problem = CM_PROB_FAILED_START;
NTSTATUS status;

PAGED_CODE();

status = DeviceNode->CompletionStatus;
if (DeviceNode->DockInfo.DockStatus != DOCK_NOTDOCKDEVICE) {

if (NT_SUCCESS(status)) {

//
// Commit the current Hardware Profile as necessary.
//
PpProfileCommitTransitioningDock(DeviceNode, DOCK_ARRIVING);

} else {

PpProfileCancelHardwareProfileTransition();
}
}

if (!NT_SUCCESS(status)) {

SAVE_FAILURE_INFO(DeviceNode, DeviceNode->CompletionStatus);

//
// Handle certain problems determined by the status code
//
switch(status) {

case STATUS_PNP_REBOOT_REQUIRED:
problem = CM_PROB_NEED_RESTART;
break;

default:
problem = CM_PROB_FAILED_START;
break;
}

PipRequestDeviceRemoval(DeviceNode, FALSE, problem);

if (DeviceNode->DockInfo.DockStatus != DOCK_NOTDOCKDEVICE) {

ASSERT(DeviceNode->DockInfo.DockStatus == DOCK_QUIESCENT);
IoRequestDeviceEject(DeviceNode->PhysicalDeviceObject);
}

} else {

IopDoDeferredSetInterfaceState(DeviceNode);

//
// Reserve legacy resources for the legacy interface and bus number.
//
if (!IopBootConfigsReserved && DeviceNode->InterfaceType != InterfaceTypeUndefined) {

//
// ISA = EISA.
//
if (DeviceNode->InterfaceType == Isa) {

IopAllocateLegacyBootResources(Eisa, DeviceNode->BusNumber);

}

IopAllocateLegacyBootResources(DeviceNode->InterfaceType, DeviceNode->BusNumber);
}

//
// This code path currently doesn't expect any of the above functions
// to fail. If they do, a removal should be queued and failure should
// be returned.
//
ASSERT(DeviceNode->State == DeviceNodeStartCompletion);

PipSetDevNodeState(DeviceNode, DeviceNodeStartPostWork, NULL);
}

return status;
}

#6087diderius6I found everything with IDA Pro in the debug version of Ntoskrnl
loc_55B308: ; CODE XREF: PipProcessDevNodeTree(x,x,x,x,x,x,x,x)+173 j
PAGE:0055B308 ; DATA XREF: PAGE:off_55B781 o
PAGE:0055B308 push ebx ; jumptable 0055B223 case 5
PAGE:0055B309 call _PipProcessStartPhase2@4 ; PipProcessStartPhase2(x)
PAGE:0055B30E mov esi, eax
PAGE:0055B310 test esi, esi
PAGE:0055B312 jge loc_55B3EE <--------- jmp, this hack will stay forever but does it help?
PAGE:0055B318 cmp dword ptr [ebx+18h], 306h
PAGE:0055B31F mov esi, 0C00002CEh
PAGE:0055B324 jnz loc_55B445
PAGE:0055B32A push 0
PAGE:0055B32C push 14F3h
PAGE:0055B331 push offset asc_55ADBE ; "d:\\xpsp\\base\\ntos\\io\\pnpmgr\\pnpenum.c"
PAGE:0055B336 push offset aCurrentnodeSta ; "currentNode->State != DeviceNodeStartCo"...
PAGE:0055B33B jmp loc_55B411
#6088infuscomus⇗ @Mov AX, 0xDEAD

Since you have source code, do you have a new acpi.sys driver to help ⇗ @Andalu with the restart issue?
#6089Mov AX, 0xDEAD
Zitat von ⇗ infuscomus im Beitrag ¶ #6088
@Mov AX, 0xDEAD
Since you have source code, do you have a new acpi.sys driver to help @Andalu with the restart issue?

Hi infuscomus,
there is nothing to compile to make working driver, acpi "sp1->sp3" sources useless for new platforms, they don't have acpi 2.0 support
to fix reboot issue you can try find in sp1 sources place where need to patch and apply binary patch to v6666 or longhorn 5048's acpi.sys
#6090infuscomus⇗ @Mov AX, 0xDEAD

Oh sorry, I was mistaken, I had thought you had updated the source code to fix bugs and support ACPI 2.0 on new hardware.

 

Page 407

#6091diderius6⇗ @Mov AX, 0xDEAD

What does it mean, when in Windbg something in the "view" of the registers is marked red
Dietmar
#6092ruthanHmm i encountered some other Win XP problem with my new monitor which would be nice to fix.. Nvidia drivers and lack of support of anything better than 1080p over HDMI, with Display port its a bit better (at least 2560x1440 @60 Hz), but also only older revisions on DP standard are running.. Problem is on AMD site too, i dunno about Intel. On Nvidia side is also problem with scaling keep - aspect ration correction, it is not avalaibe in newer drivers, last one good is 355.98

⇗ https://www.vogons.org/viewtopic.php?f=6...=922827#p922827
⇗ https://www.vogons.org/viewtopic.php?f=63&t=72471
⇗ https://www.vogons.org/viewtopic.php?f=63&t=75570
#6093Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #6091
@Mov AX, 0xDEAD
What does it mean, when in Windbg something in the "view" of the registers is marked red


⇗ @diderius6
I dont use windbg for step debugging, but i think "red" mean register' value was changed after last executed opcode
#6094ruthanI found out that my old installation problem is related to Nvidia drivers.. when i install them, i cant boot to normal boot..

Code 0x000050, Page_Fault_In_NONPAGE_AREA detail: // Sometimes it is also black screen, after logo..
⇗ https://www.dropbox.com/s/9llqyzivf22sz1...code50.jpg?dl=0

Question is why im getting this with my old install and not with new one?
#6095diderius6Until now no success with the Baytrail Valley View GPU.
Even all the hacks work, at the end the driver igxpmp32.sys gets still unloaded.
I notice, that some informations in registry for Service\ialm are missed only on the Baytrail board,
for example
"HardwareInformation.MemorySize"=hex:00,00,00,40
This just looks, as if the device with DEV_0F31 is not correct recogniced by the driver.
When I delete this value on the Lenovo x230,
in each boot it is build new so it is important
Dietmar

PS: I also make a try to copy all the missed values from the Lenovo x230 to the J1900 Baytrail board.
Does not help, the device there is not correct recogniced.
#6096ruthanHmm, im out of ideas, i rechecked and applied PAE /4GB patch and its still not booting, because Nvidia drivers, i tried couple of them with older GPU it worked, i dunno if it matter that old  slower GPU had paradoxically 4GB (Geforce 730 with 4GB..) and new one has only 2GB, so other memory areas are used.. and they are failing or collide with something..
#6097blackwingcatThus, I could enter kernel Debug mode on HAL.
But it seems to fail to initialize HalpMpInfoTable in HalInitSystem(it is dll Entrypoint)
Strangely, it seems to be called any functions in hal.dll before HalInitSystem.
#6098infuscomus⇗ @ruthan

you might want to try using display driver uninstaller and then reinstall your drivers.
#6099dpps5387690Hi ⇗ @diderius6

Can you give me last acpi.sys for winxp sp3?
I will install Winxp sp3 for Z490.
Thanks.
#6100infuscomus⇗ @dpps5387690

For XP on modern hardware (ACPI, AHCI, USB3) I would recommend getting this - ⇗ https://www.zone62.com/downloads/softwar...ntegral-edition

and using the optional patch integrator included with it to make a patched XP ISO that will work on modern hardware.

use options 1, 4, 6 and 7 in the patch integrator.
#6101dpps5387690Thank you.
I try it.
#6102diderius6⇗ @Mov AX, 0xDEAD

When I want to set a breakpoint in the driver igxpmp32.sys itself before call VideoPortSetRegistryParameters(),
can I use the same method, changing at the exact place at the beginning of this call in the igxpmp32.sys to Hexvalues EB FE?
And will I been there at the exact place, where this function is called?
And can I check via this methode, which part of a driver is never reached, used from XP?
Dietmar

PS: Do you have an idea, why the string with value for "HardwareInformation.MemorySize"=hex: ..
was not written in the registry? May be because XP does not know, how big this Video memory is. If yes, where can I find this value?
#6103diderius6⇗ @dpps5387690

I dont know, how fit you are with computers.
At your place, I would install everything by myself.
The XP from zone62.com is a really nice thing.
But where is fun to reach all by yourself
Dietmar

This acpi.sys from outerspace )

⇗ https://ufile.io/dvr3flye
#6104ruthan⇗ @infuscomus  Is there some good driver installer for XP?
 I reinstalled quite few Nvidias drivers (during process it should be overwritten), i dunno if some old hidden devices could be problem, installed no Geforce experience bloatware and i tested that only Nvidia HDMI sound driver (is not blocking boot). my guess that problem is elsewhere in some WinXP memory or PAE memory management, which need to be patched, because safe is working fine, normal mode without Nvidia drivers too.. Without PAE patch (4GB) my MB has only 900 MB of RAM, so it is dead end. i had this error (Page_FAULT_IN_NONPAGED_AREA), on some machines, when old PAE Dibya patch was used and some driver was not compatible..
#6105infuscomus⇗ @ruthan

There is snappy driver installer, although I'm not sure if the latest version still works in XP though.

 

Page 408

#6106diderius6Yesssa, the nice methode EB FE from ⇗ @Mov AX, 0xDEAD at any point in the driver works!
Now I can really test the driver step by step(!) with all registers,
100% as the compi did.
A little bit crazy: First, XP changes the hacked EB FE driver igxpmp32.sys against original one.
Then I get endless loop, but the break happens at the driverentry point.
Then I continue from there with hitting p enter enter enter enter...
and I come to the place with jmp jmp jmp jmp..
as the photo shows.
And voila, this is the exact point, at (with via Ida Pro)
 .text:1001FD0D                                                 call            ds:VideoPortSetRegistryParameters
happens. There is a correspondens between the adresses
0xB8F1FD0D on compi.

Now, in princip XP is complete open for me, Source Code all in Assembler,
but no mystery has a chance now
Dietmar



#6107ruthan⇗ @infuscomus Its installer not uninstaller and its running even with Windows 2000.
#6108diderius6What I still do not understand is,
with which values now this function is called
Dietmar
VideoPortSetRegistryParameters(
PVOID HwDeviceExtension,
PWSTR ValueName,
PVOID ValueData,
ULONG ValueLength
);


HwDeviceExtension=89130358 (content of EDX via Source Code in Ida) as I can see with the Register View from Windbg
ValueName =??? offset aHardwareinform ; "HardwareInformation.MemorySize"
ValueData=87e1b734 (content of ECX via Source Code in Ida)
ValueLength= 4 via Ida source code, but no register contains 4, so is this value direct given without any register ???

PS: By the way I noticed, that on a second boot XP has changed some values at the same place(!), for example the
register ESI.
#6109Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #6108
VideoPortSetRegistryParameters(
PVOID HwDeviceExtension,
PWSTR ValueName,
PVOID ValueData,
ULONG ValueLength
);


⇗ @diderius6

PVOID HwDeviceExtension=89130358 (content of EDX via Source Code in Ida) as I can see with the Register View from Windbg
PVOID - pointer to something, at 0x89130358 stored allocated HwDeviceExtension struct

PWSTR ValueName =??? offset aHardwareinform ; "HardwareInformation.MemorySize"
PWSTR - Pointer to null-terminated Unicode string, this pointer set to some adress inside *.sys because ida detected this string staticaly

PVOID ValueData=87e1b734 (content of ECX via Source Code in Ida)
PVOID - pointer to something, because length is 4 this mean pointer to simple type, in this case to ULONG, at 0x87e1b734 stored 4 bytes

ULONG ValueLength= 4 via Ida source code, but no register contains 4, so is this value direct given without any register ???
yes, for integer constants, compiler use "push 4", no regs
#6110Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #6102
@Mov AX, 0xDEAD
PS: Do you have an idea, why the string with value for "HardwareInformation.MemorySize"=hex: ..
was not written in the registry? May be because XP does not know, how big this Video memory is. If yes, where can I find this value?

XP dont need to know, driver is responser for edit/write record in registry, it detect mem size by reading hardware chip and write raw size to registry
#6111diderius6⇗ @Mov AX, 0xDEAD

Thanks a lot.
Today was a nice day, because now I understand a lot more, how XP works.
And new chances for the Baytrail driver
Dietmar

PS: Interesting, that there are only adresses given. Because I wonder a lot, how complex information can be given in 4 Byte.
#6112diderius6⇗ @Mov AX, 0xDEAD

"it detect mem size by reading hardware chip"

Where is this information about GPU chip originally taken from
Dietmar
#6113Mov AX, 0xDEADHi All,

After review KDNET in Windows 10, i didn't found significal changes, win81<>win10 kdnet.dll convertor will be released soon

p.s. this tool not for end-users, but help to remote debug old winxp/2003 kernel stuff on MotherBoards with modern PCIe LAN Controllers
#6114Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #6112
@Mov AX, 0xDEAD
"it detect mem size by reading hardware chip"
Where is this information about GPU chip originally taken from


⇗ @diderius6
from video chip itself, driver read some reg from chip, it knows which reg need to use, there is no standart regs for videochips (except VGA-compatible part)
videochip' hardware registers mapped to cpu' memory, this is how PCI MMIO works, cpu read from "logical" memory adress, but actualy read from pci device
#6115diderius6⇗ @Mov AX, 0xDEAD

Do you know, how I can just read the content of an given adddress (here for example 0x87e1b734 with windbg?
When this address is not touched during boot of XP,
a breakpoint there does not help
Dietmar
#6116diderius6⇗ @Mov AX, 0xDEAD

I tried !db 0x87e1b734

but this gives nonsense or at the end of boot process just 00 00 00 everywhere
Dietmar
#6117diderius6I found, how to see all of the content (and around also) of an given address via:

Just chose from Edit menu of Windbg "Go to Address" and then chose "Dissasembly".
So I find after starting from the breakpoint at the entrypoint of igxpmp32.sys
typing in the open Window from "Go to Address" 80b5d309 in "Dissasembly" Window
80b5d309 e840efecff                call    nt!PipProcessStartPhase2 (80a2c24e)
From this I know, that it is correct.

Now, until now I only do not know, how Windbg can show to me the content of any VARIABLE, from the address, where I set breakpoint via bp with Windbg.
Interesting would be also, to know the content of any variable at the address called with "Go to Address".
But because the compi is not at this address, it seems to be impossible
Dietmar
#6118ruthanHow to exactly install Kernel driver model 1.1 to existing installation? In readme just install it, but there is not installer, should i right click on inf file and install, or its there other way? Is needed for NVME drivers? There also some certificates in Integrator package for which drivers are these needed? What will not work without this update? Its unclear..
#6119diderius6⇗ @ruthan
You can take a look at the nice XP from zone62.com .
I think, that you can install everything from the installations folders on Setup CD
for Windows XP Professional SP3 x86 - Integral Edition 2020.9.9  also on a normal XP SP3 installation.
Just chose, which driver or program you want
Dietmar

PS: If you have a special question for a driver or a program, ask in the forum at zone62.com .
#6120ruthanI already have it installed on other partition, but im trying to keep working my old one and here some more info would nice..  If there are authors or users of that distro here, why not ask here?

It has for sure more value for most of users than some registry debug values, im getting lots of notification about it from this thread on email.. but im not saying, go to post it elsewhere.. because this one of advantages this forum, to be open.

 

Page 409

#6121diderius6⇗ @Mov AX, 0xDEAD

When I type dv for to see the content of all locale variables in commandline of Windbg,
I get message
0: kd> dv
Unable to enumerate locals, HRESULT 0x80004005
Private symbols (symbols.pri) are required for locals.
Type ".hh dbgerr005" for details.

This happens, because I do not have private symbols for the driver igxpmp32.sys, even not the public *.pdb.
Is there a way, to get the content of a local variable, when windbg breaks at an given address
Dietmar
#6122gordo999
Zitat von ⇗ blackwingcat im Beitrag ¶ #6097
Thus, I could enter kernel Debug mode on HAL.
But it seems to fail to initialize HalpMpInfoTable in HalInitSystem(it is dll Entrypoint)
Strangely, it seems to be called any functions in hal.dll before HalInitSystem.
@backwingcat ...Hal is called early in the boot process (by ntoskrnl???) to initialize Windows. That could mean the entry point for HalInitSystem is known at boot and may not be part of the Hal library that requires the dll EntryPoint.

Can you use a remote kernel debugging session and get it to break before Hal is called? I have not tried that.
#6123gordo999
Zitat von ⇗ gordo999 im Beitrag ¶ #6122
Zitat von ⇗ blackwingcat im Beitrag ¶ #6097
Thus, I could enter kernel Debug mode on HAL.
But it seems to fail to initialize HalpMpInfoTable in HalInitSystem(it is dll Entrypoint)
Strangely, it seems to be called any functions in hal.dll before HalInitSystem.
@backwingcat ...Hal is called early in the boot process (by ntoskrnl???) to initialize Windows. That could mean the entry point for HalInitSystem is known at boot and may not be part of the Hal library that requires the dll EntryPoint.

Can you use a remote kernel debugging session and get it to break before Hal is called? I have not tried that.



Look here...

⇗ http://pig.made-it.com/win-boot-test.html

also, check links at bottom of page.

ps. you may have to look up the links on the Wayback Machine.
#6124pappyN4⇗ @infuscomus
KeInitializeSpinLock imports fine from the x86 ntoskrnl.exe, however its does not look like its present in the x64 versions which is what i am trying to get working.  Looking at the code from react, if it calls KeInitializeSpinLock for x86 then it call it from ntkernalAPI, but if its for x64 then it just sets the SpinLock value to zero.  

if defined(_X86_) && (defined(_WDM_INCLUDED_) || defined(WIN9X_COMPAT_SPINLOCK))
NTKERNELAPI
VOID
NTAPI
KeInitializeSpinLock(
_Out_ PKSPIN_LOCK SpinLock);
#else
FORCEINLINE
VOID
KeInitializeSpinLock(_Out_ PKSPIN_LOCK SpinLock)
{
/* Clear the lock */
*SpinLock = 0;
}
#endif



It's been a long time since ive used C...   ⇗ @Mov AX, 0xDEAD  спрашивая желающий помогать? благодарю вас

Off topic:  I put several phrases through google translate, and every time i translated to Russian and back to English it turned a polite asking if someone is willing to take a look, help if they feel like, and google translate turns it into sounding like an order or demand.  google completely removed  the politeness.

Compiling with Server 2003 x64 free build environment:
-jumps to else statement, does not stay in AMD64,
-remove IF statement and have only #pragma....@KeInitializeSpinLock_k8, ERROR:Unresolved external symbol @KeInitializeSpinLock_k8

ntoskrnl_redirects.h

 
//                Windows XP/2003 x64                   //
#if (NTDDI_VERSION >= NTDDI_WS03) && defined(_AMD64_)

// KeInitializeSpinLock (FASTCALL) (4)
#define _KeInitializeSpinLock
#ifndef _AMD64_
#pragma comment (linker, "/export:KeInitializeSpinLock=@KeInitializeSpinLock_k8")
#else
#pragma comment (linker, "/export:KeInitializeSpinLock=ntoskrnl.KeInitializeSpinLock")
#endif



ntoskrn8.c

 
void FASTCALL
KeInitializeSpinLock_k8 ()
{
KSPIN_LOCK SpinLock;

SpinLock = 0;

}
#6125gordo999
Zitat von ⇗ pappyN4 im Beitrag ¶ #6124

Off topic:  I put several phrases through google translate, and every time i translated to Russian and back to English it turned a polite asking if someone is willing to take a look, help if they feel like, and google translate turns it into sounding like an order or demand.  google completely removed  the politeness.
⇗ @pappyN4 ...

I understand. Some phrases in English asking for help:

Could someone help me with this problem?

Is it same in Russian?

Может ли кто-нибудь помочь мне с этой проблемой?

More polite:

Could someone help me with this problem, please?

Может кто-нибудь помочь мне с этой проблемой, пожалуйста?
#6126gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #6106
Then I continue from there with hitting p enter enter enter enter...
and I come to the place with jmp jmp jmp jmp..as the photo shows.
⇗ @diderius6 ...still don't understtand why you are using p-enter. The p enter jumps over entire function calls. I find it easier to use F10 instead of p-enter. I use F8 to single-step (t-enter). If you know where you are going and you are sure there is nothing important in each function call, then p-enter allows you to step through large amounts of code. However, if there is something important in one of those CALLs you will miss it.

One thing I have learned from years of reversing is that certain CALLs call into the kernel and the kernel can call back into your app at a different address. You can miss that using p-enter only. I have seen that in user mode where user32.dll calls back into the app before the app returns to user32.dll then back to the original location in the app code.

Using t-enter (F8) can be very tedious but you will learn tricks to bypass a lot of single-stepping.

You can use p-enter or F10 to trace but I prefer t-enter or F8 so that I won't accidentally jump over a CALL. As I approach a CALL I am often looking to see what is loaded in each register because some are related to the parameters required by the CALL. The registers can hold addresses of strings and where the strings might be moved. If you know the function, like memcpy, you can look up what is being loaded into the registers and passed on the stack.

Look here under 14)Stepping and Tracing. It does say p-enter can be used for tracing but I find it can be dangerous if you are not paying attention. If you make a mistake and single-step into a function CALL using T-enter (F8) there are windbg instructions to step back out, which means tracing all the way to the end of the CALL. Or, you can explore the CALL then jump over it.

⇗ http://windbg.info/doc/1-common-cmds.html
#6127gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #6111
PS: Interesting, that there are only adresses given. Because I wonder a lot, how complex information can be given in 4 Byte.
⇗ @diderius6 ...4 bytes = 32 bits of data. You don't need to get complex information into 4 bytes, you can include an address that points to the complex information.

An address pointing to such information is called a pointer. In the code, if an address is contained in square brackets [....], it is an address pointing to information at that address. Or the address may be preceded by 'ptr' for pointer.

In memory, complex data can be stored in structures like arrays. The array is arranged sequentially in memory with the base address as the zero element. If I have an array at address 0x80004567, then the array data begins at that address. If code wants to reach that address it loads it in a register as pointer. If it wants to reach the n-1 element in the array it uses an address like [80004567 + n].
#6128blackwingcatWhen set break, Windows Installer shows it can't load bootvid.dll. :3

I found
HalpMpInfoTable
broken.

Broken table
FFFFFFFF`803AE100  01 00 00 02 00 00 00 00 00 00 00 00 01 10 00 02
FFFFFFFF`803AE110 04 08 00 00 00 00 00 00 01 00 00 02 00 00 00 00
FFFFFFFF`803AE120 00 00 00 00 01 08 00 01 B4 00 00 00 00 00 00 00
FFFFFFFF`803AE130 01 20 00 03 08 08 00 00 00 00 00 00 01 40 00 01
FFFFFFFF`803AE140 20 08 00 00 00 00 00 00 01 00 00 01 00 00 00 00

Correct table.
FFFFFFFF`803AE100  10 00 00 00 20 00 00 00 00 00 00 00 00 00 00 00
FFFFFFFF`803AE110 02 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FFFFFFFF`803AE120 00 00 E0 FE 00 40 D0 FF 00 50 D0 FF 00 00 00 00
FFFFFFFF`803AE130 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FFFFFFFF`803AE140 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Zitat von ⇗ gordo999 im Beitrag ¶ #6122
Zitat von ⇗ blackwingcat im Beitrag ¶ #6097
Thus, I could enter kernel Debug mode on HAL.
But it seems to fail to initialize HalpMpInfoTable in HalInitSystem(it is dll Entrypoint)
Strangely, it seems to be called any functions in hal.dll before HalInitSystem.
@backwingcat ...Hal is called early in the boot process (by ntoskrnl???) to initialize Windows. That could mean the entry point for HalInitSystem is known at boot and may not be part of the Hal library that requires the dll EntryPoint.

Can you use a remote kernel debugging session and get it to break before Hal is called? I have not tried that.

#6129diderius6On the Lenovo x230 I can simulate exact the behavior from the J1900 Baytrail board,
when I change the magic numbers from 9 9 0C => 9 5 0E on the igxpmp32.sys driver
So, this is a big step forward
Dietmar
#6130diderius6⇗ @Mov AX, 0xDEAD
I have problem, to delete a breakpoint in windbg.
After hitting F9 and delete all Breakpoints, they are not gone.
My question is: Where are those breakpoints stored,
in real memory on the Target PC (the PC which I test)?
And how can I delete them there all?
Is it possible, that they stay in memory even after reboot?
Or are they stored at another place in windbg on the Host computer (where windbg runs)?
This seems to be a bug in windbg
Dietmar
#6131Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #6130
@Mov AX, 0xDEAD
My question is: Where are those breakpoints stored,
in real memory on the Target PC (the PC which I test)?
Or are they stored at another place in windbg on the Host computer (where windbg runs)?


@Dietmar
Hi,
BPs stored on Target PC, in memory. if "bc *" don't works, this is bug, maybe restarting windbg can clear session data, i dont know...
#6132Mov AX, 0xDEADHi pappyN4,

Zitat von ⇗ pappyN4 im Beitrag ¶ #6124

Compiling with Server 2003 x64 free build environment:
-jumps to else statement, does not stay in AMD64,
-remove IF statement and have only #pragma....@KeInitializeSpinLock_k8, ERROR:Unresolved external symbol @KeInitializeSpinLock_k8

ntoskrnl_redirects.h  
//                Windows XP/2003 x64                   //
#if (NTDDI_VERSION >= NTDDI_WS03) && defined(_AMD64_)

// KeInitializeSpinLock (FASTCALL) (4)
#define _KeInitializeSpinLock
#ifndef _AMD64_
#pragma comment (linker, "/export:KeInitializeSpinLock=@KeInitializeSpinLock_k8")
#else
#pragma comment (linker, "/export:KeInitializeSpinLock=ntoskrnl.KeInitializeSpinLock")
#endif




1) reduced variant:
#define _KeInitializeSpinLock
#pragma comment (linker, "/export:KeInitializeSpinLock=KeInitializeSpinLock_k8")


2)
change in "default redirect" section:
#pragma comment (linker, "/export:KeInitializeSpinLock=ntoskrnl.KeInitializeSpinLock")
to:
#ifndef _KeInitializeSpinLock
#pragma comment (linker, "/export:KeInitializeSpinLock=ntoskrnl.KeInitializeSpinLock")
#endif

for x32 block "1)" will never compiled because parent "#if (NTDDI_VERSION >= NTDDI_WS03) && defined(_AMD64_) ", _KeInitializeSpinLock will not defined and export will be "/export:KeInitializeSpinLock=ntoskrnl.KeInitializeSpinLock"

for x64 block "1)" set export as "/export:KeInitializeSpinLock=KeInitializeSpinLock_k8", define _KeInitializeSpinLock, skip block "2)"


Zitat

 
void FASTCALL
KeInitializeSpinLock_k8 ()
{
KSPIN_LOCK SpinLock;

SpinLock = 0;

}




No args, must be:
void
FASTCALL (are you sure ??)
KeInitializeSpinLock_k8( KSPIN_LOCK* SpinLock)
{
*SpinLock = 0;
}

#6133diderius6⇗ @Mov AX, 0xDEAD

This is an interesting aspect:
Even after new install of XP, new install of Windbg, reboot few times,
the breakpoints are still at their places in memory of the Target pc.
Hm, this means, you can put information there without any notice
Dietmar

PS: I doublecheck this: Via old windbg version on COM1 port and via windbg from win8.1.
Both show the same breakpoints in memory, surviving there in a crazy way, like on a harddisk..
#6134Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #6121
0: kd> dv
Unable to enumerate locals, HRESULT 0x80004005
Private symbols (symbols.pri) are required for locals.
Is there a way, to get the content of a local variable, when windbg breaks at an given address


⇗ @diderius6
windbg is too oldschool with ugly GUI, I recommend change debugger to IDA (dont sure about windbg plugin in IDA FREE 5.0 or 7.0 versions)
IDA show [ebp-xxx] as local variable on stack without any symbols requirement (but name is undefined, like var_xxx)
#6135daniel_k⇗ @diderius6

Did you take a look at the changes in the Kaby Lake driver modded to support Coffee Lake graphics?

 

Page 410

#6136diderius6⇗ @daniel_k

Yes, I check there everything and understand most.
They do not change the magic numers, only DEV numbers and entries in *.inf file, because each Kaby Lake device has a counterpart in Coffee Lake graphics.
Without the correct Magic Numbers, the graphic chip is not correct recogniced from XP.
This I found out today with test on the Lenovo x230 board with working DEV_0166 HD4000,
where I simple change the Magic Number from 9 9 0C => 9 5 0E
Dietmar
#6137diderius6⇗ @Mov AX, 0xDEAD
I have IDA pro 6.1.
There I found in "Debugger" "run" or "attach".
Which one should I use and which to put in the field of the connection string,
see photo,
thanks a lot
Dietmar

#6138diderius6⇗ @Mov AX, 0xDEAD

Can I delete the "CC" for break with code "90" by hand in memory using windbg
Dietmar
#6139infuscomus⇗ @pappyN4

Zitat

Dependency Walker shows one issue, ntoskrn8.sys trying to get KeInitializeSpinLock from ntoskrnl.exe but is not finding it. Tried with ntoskrnl.exe from SP1 (5.2.3790.1830), SP2 (5.2.3790.3959), and latest (5.2.3790.5583).



I missed this earlier, So I looked into it and I think KeInitializeSpinLock should be omitted from the 64-bit version of ntoskrnl extender since it seems it does not exist for 64-bit versions of ntoskrnl.

⇗ @Mov AX, 0xDEAD
can you update ntoskrnl extender on github to reflect this?

#6140Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #6137
@Mov AX, 0xDEAD
I have IDA pro 6.1.
There I found in "Debugger" "run" or "attach".
Which one should I use and which to put in the field of the connection string,


⇗ @diderius6
⇗ https://www.hex-rays.com/wp-content/uplo...ging_windbg.pdf
read kernel part....
#6141Mov AX, 0xDEAD
Zitat von ⇗ infuscomus im Beitrag ¶ #6139
@pappyN4
Zitat

Dependency Walker shows one issue, ntoskrn8.sys trying to get KeInitializeSpinLock from ntoskrnl.exe but is not finding it. Tried with ntoskrnl.exe from SP1 (5.2.3790.1830), SP2 (5.2.3790.3959), and latest (5.2.3790.5583).


I missed this earlier, So I looked into it and I think KeInitializeSpinLock should be omitted from the 64-bit version of ntoskrnl extender since it seems it does not exist for 64-bit versions of ntoskrnl.
@Mov AX, 0xDEAD
can you update ntoskrnl extender on github to reflect this?


Hi All, thank for feedback !

I will update extender to exclude KeInitializeSpinLock from x64 compiling
But be carefully - i never tested x64 extender in real :), i've done x64 part just to be "compilable", for example it may have errors in reverse-engineered structs

#6142Mov AX, 0xDEADKDNET project updated on github, now it support lan debug drivers from Windows 10 !

windows 8.1 supported chipsets - ⇗ https://docs.microsoft.com/en-us/windows...-in-windows-8-1

versus

windows 10 supported chipsets - ⇗ https://docs.microsoft.com/en-us/windows...g-in-windows-10
#6143diderius6IDA pro winddbg
Seems not to work with XP as host and xp as target

LoadLibrary(C:\IDA61\plugins\python.p64) error: Das angegebene Modul wurde nicht gefunden.
C:\IDA61\plugins\python.p64: can't load file

Dietmar
#6144Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #6143
IDA pro winddbg
LoadLibrary(C:\IDA61\plugins\python.p64) error: Das angegebene Modul wurde nicht gefunden.
C:\IDA61\plugins\python.p64: can't load file


ida try to load x64 dll, too strange...
for debugging no need python, ignore this warning
del-12YuriyCN
Уход времени "вперёд" на современных ПК под Windows XP


При использовании Windows XP на современных материнских платах обнаружился досадный глюк - системное время уходит вперёд, причем степень ухода зависит от активности работы ПК и может набегать до 5 минут в день. Проблема проявляется только в Windows XP. На выключенном ПК, под UEFI/BIOS или в современной ОС - время идет правильно. Хотя часовая микросхема RTC должна быть независимой частью, но на современных материнских платах это не так. Видимо UEFI продолжает взаимодействовать с установленной Windows XP и как-то влияет на ход часов. Исследование показало, что уход часов "вперед" происходит при постоянном переключении периода системного таймера 16 мс в 1 мс и обратно. В Windows XP (по умолчанию) этот таймер работает с периодом 16 мс и если на ПК не проявлять активности - то он продолжит работать с периодом 16 мс. Но при запуске Хрома или мультимедиа приложений, таймер переключается в режим работы с периодом 1 мс и может возвращаться на 16 мс. При жестко установленном периоде 16 мс (или 1 мс) время идет точно, но при постоянном переключении таймера 16 мс - 1 мс - 16 мс - 1 мс происходит сбой в работе часов реального времени RTC.

Решение проблемы:
Поскольку специалисты с Win-Raid не смогли разобраться с причиной данной проблемы, то "красивого" решения (на уровне патча системных файлов) по состоянию на 3 января 2021 года ещё не появилось. Имеющиеся правленые файлы hal.dll и intelppm.sys решают какую-то другую проблему с таймерами, но на описанный глюк не влияют. Сейчас мы имеем "костыльное" решение - программа Timer_Fix с исходным кодом, написанная на Visual Studio 6.0. Программа не имеет интерфейса, после запуска она переведет системный таймер на период 1 мс и оставит его неизменным. Программа постоянно висит в процессах до перезагрузки ОС. Для завершения работы (в случае необходимости) нужно просто прибить процесс Timer_Fix.exe через "Диспетчер задач". Для удобства лучше положить Timer_Fix.exe в "Автозагрузку" и напрочь забыть о проблеме с уходом времени. Каких-либо косяков от использования данного метода не обнаружено. В целом, данный фикс можно считать "костыльным", но ничего лучшего на данный момент нет.

Состав архива:
Clockres - программа для контроля периода системного таймера
CPU-Z - в закладке About, кнопка Timers можно контроллировать частоты системных таймеров
Neutron 1.07 - удобная программа для контроля и синхронизации времени через интернет
Timer_Fix (с исходным кодом) - фикс проблемы с уходом времени вперед (устанавливает таймер на 1мс)
Timer_bug.png, Timer_bug_2.png - скриншоты с демонстрацией проблемы

Скачать - ⇗ https://www.upload.ee/files/12718339/Sof...l_Time.zip.html
или ⇗ https://yadi.sk/d/KpTGDPITsNWn7w

===========================================================================

Текстовый комплект методик по установке Windows ХР mod 2021 на современные ПК


Данный файл обязан быть у каждого ХР-ишечника. Народ читает какие-то бредовые форумы, хотя если прочитать данный TXT-файл - вы найдете ответ на 95% вопросов и позволит использовать Windows XP на ПК 2014-2021 года сборки. В текстовой методике собрана вся информация известная на данный момент - модернизированные драйвера (USB3.0, AHCI SATA, ACPI, NVMe, GPT, PAEfix), твики, патчи, готовые сборки.

Версия методики от 03.01.2021г.
ТХТ файл (74 кБ) - ⇗ https://yadi.sk/d/ieXbEpruPa3DWg
#6145dpps5387690Hi ⇗ @diderius6 & ⇗ @infuscomus

I try the acpi 6666
Install winxp stuck 0x7E 0xC0000005 in IDE Mode

dpps5387690 has attached images to this post  ⇗ 0x7E.jpg
#6146diderius6⇗ @dpps5387690

I think because of this Bsod,
that your acpi.sys from outerspace ) is on reboot copied back to the original acpi.sys.
You can copy the acpi.sys from outerspace ) by hand into folder Windows\system32\drivers

Dietmar

PS: Do you try to install from original xp.iso?
#6147dpps5387690⇗ @diderius6

I use USB(grldr Tool),during install cause this problem(0x7E).

I will try the original xp.iso.

Thanks.
#6148kukonosau⇗ @diderius6
Hi! My congratulations again for create drivers acpi, SATA AHCI and so on for Windows XP SP3 x86. But how you have talent create drivers? Do you learning programs languages, for example, C++? Maybe, Python? How to be "scientist"? Sorry for my bad English. I speak in Russian. But I don't understand you. Maybe, you to talk me different literature for develop my skill programmer? Maybe, you are use IDA 7 Freeware? 2nd questions: do you working under Windows XP SP2 x64 today? Can you to send me all last drivers? More I interesting acpi after post #2202. Do you have another acpi for XP x64 today? I thanks you for your job! Job done! :)
#6149kukonosau⇗ @YuriyCN
Приветствую. Неоднократно видел Ваши сообщения на форуме. Вы и вправду тут единственный русскоговорящий? Ну, кроме меня)
#6150diderius6⇗ @kukonosau
Я работаю учителем математики и физики в средней школе. Windows XP - мое хобби.
Windows XP SP2 x64 is unstable on most newer hardware, as I noticed
Dietmar

 

Page 411

#6151kukonosau⇗ @diderius6
Do you speak in Russian?! Or you used translator? But you have last unstable drivers for XP x64? XP is my hobby also, this is my life! :)
#6152infuscomus⇗ @dpps5387690

I would recommend using Easy2boot to do XP installs, I've had no trouble with it.
#6153diderius6I make small joke:
I replace the original opcode at this place in Ram(!) via windbg with 90 90 and restart the compi about 10 times.
And voila, my changed opcode survives reboot in memory!
So, it is a mythos, that with switching off compi, all information is lost in Ram.
This is DDR3, 4 Gbyte on the Baytrail board
Dietmar
nt!KiIdleLoop+0x3a:
80ae3e0a 90 nop
1: kd>
nt!KiIdleLoop+0x3b:
80ae3e0b 90 nop

PS: The crazy breakpoint survives full new install of XP in ram.

EDIT: Now I think it is a crazy error in both versions of windbg,
because I change whole ram on the Baytrail J1900 board and both windbg versions show me still the 90 90 at their place in ram, brrr.. It means, that the whole windbg installation on my compi is crashed. Now I need to think, how to repair this.
Just install windbg does not help, it tested.
#6154diderius6⇗ @kukonosau
Я немного говорю по-русски :))
Dietmar
#6155kukonosau⇗ @diderius6
Вот это хорошо! Тогда я бы побольше хотел с Вами общаться насчёт Windows XP. Уж очень нравится мне эта операционная система. Жаль, для x64 нет сборника драйверов. Почему, интересно, она нестабильно работает с современными платами, а в играх FPS отличный показывает, даже лучше, чем x86? И почему на Intel работает, но не на Ryzen? На Ryzen случайный BSOD возникает. Я бы смирился с отключением сетевой карты Ethernet, но никак не с BSOD/crash randomally.
#6156kukonosau⇗ @diderius6
What is Dietmar? Translate in Russian, please.
#6157diderius6⇗ @kukonosau

I can read, speak and understand without any translator. To write in Russian is another thing.
But better to speak english here at the forum.
XP SP3 is the OS, that the US army is using still today.
And when you have a payed license (I think about 1200$ a month) for XP SP3 like the german Bundestag,
you get updates always for XP SP3 today
Dietmar
#6158kukonosau⇗ @diderius6
Okay. But I don't understand English. I have based level speaking. Why USA use XP SP3? This is faster OS, for their opinion? Bad that I haven't motherboard with socket AM3+. Последнее оборудование, поддерживаемое ХР, очень хотел бы! На борту имею GTX 960 лишь.
#6159kukonosau⇗ @diderius6
Probably, I mistaked that buyed equipment with AM4 Socket change AM3+. Price almost equal, but I had been full support OS Windows XP and Windows 7. Ideal be launch GTA V on Windows XP x64 and other modern games. Highest performance!!!
#6160gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #6130
I have problem, to delete a breakpoint in windbg.
⇗ @diderius6 ...look under Edit menu for 'Breakpoints' window. You can disable, enable, or delete them there.
#6161gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #6153
PS: The crazy breakpoint survives full new install of XP in ram.
diderius6 ...sounds like the 90 90 got written to disk. Don't know if windbg has that feature although some debuggers have that option. There's no way RAM can retain memory after being powered off unless there is some kind of battery backup or sleep/hibernate state active.
#6162diderius6⇗ @gordo999

After this operation, crazy things happen.
I install XP new on the Baytrail board,
I set up windbg on another harddisk, delete all paths for symbols
and set them new.
Now on the Baytrail board and (!) on the Lenovo x230 ALWAYS windbg breaks at always the same adresses,
very near to the place, where I set the 90 90.
They are still there.
This is really crazy. No breakpoint is set,
but windbg shows at this places cc int 3.
So, I am nearly sure, that for some crazy reasons those 2 breakpoints and the 90 90 are always set from fresh(!) installed windbg at the place in memory on this 2(!) compis
Dietmar

PS: The list for breakpoints is empty.

#6163gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #6162
Now on the Baytrail board and (!) on the Lenovo x230 ALWAYS windbg breaks at always the same adresses,
very near to the place, where I set the 90 90.
⇗ @diderius6 ...from what I can see, windbg has broken on a debug breakpoint at 80AC37E0 and your disassembly address is at 80AC36C1. The INT 3 you see following that address are not breakpoints, they are filler bytes you find in some apps before a function.

What is bothering me is the cmp eax, 30203DB just before the series of INT 3 instructions. It may be garbage code. I used to see that in Softice when it first broke and when I hit t-enter for a single step, the code would change. Sometimes the disassembler get it wrong. Try a single-step (F8 or t-enter) to see if the code changes. As it stands, it should hit the INT 3 instruction, which makes no sense.
#6164diderius6The Windbg via COM1 does not work any longer, it just hangs, see photo.
Even I installed XP on the Baytrail compi new.
Strange as much as possible
Dietmar

#6165gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #6164
The Windbg via COM1 does not work any longer, it just hangs, see photo.
Even I installed XP on the Baytrail compi new.
⇗ @diderius6 ...debugging can be a nightmare at times. Did you use a break instruction? Open Debug windows and click on Break (there is a key combo for it...I forget). Also, reboot the target computer. It seems to have connected OK. If not, try rebooting both computers.

 

Page 412

#6166diderius6⇗ @gordo999

Reboot of all compis does not help. Tomorrow I make on a brandnew harddisk an XP install new, where Windbg runs.
Somewhere must those crazy entries been stored. If I trust windbg, they are really in memory of the Baytrail and the Lenovo
x230 compi. Question is, how they come there and how to delete them there. It is like virus.

Just before the total crash of Windbg I make an interesting discovery:
Using the EB FE methode I find out, that in the driver 5449, where the Device ID DEV_0F31 for baytrail is mentioned,
the subroutine for DEV_0F31 is reached, but not the place, where the compare with DEV_0F31 happens.
Not the compare fails, the place is not reached. For the very first time I understand, why this driver does not work for Baytrail on XP,
but there is hope
Dietmar
#6167Outbreaker⇗ @YuriyCN
Do we have to run the "Timer_Fix.exe" file for every logged-in user? Or is it enough to run it as a SYSTEM file?
#6168diderius6⇗ @gordo999

You are right. When I type t (F8) now windbg shows complete other assembler orders than with p.
How to overcome this?
And the strange breakpoints are still shown and brake the same, even I install Windbg (from *.msi installer) and run windbg on a different compi(!), with Symbols, all new fetched only from
WINDOWSXP-KB936929-SP3-X86-DEBUG-SYMBOLS-FULL-ENU-DEBUG.EXE
Dietmar

PS: Not so much possibilities left, where those breakpoints come from. From lan net?!
#6169infuscomus⇗ @diderius6

I'm guessing windbg has the breakpoints cached somewhere, in appdata maybe?
#6170dpps5387690⇗ @diderius6 & ⇗ @infuscomus

I install winxp success.

Thanks.
#6171infuscomus⇗ @dpps5387690

you're welcome!
#6172diderius6⇗ @infuscomus

For now nearly exact 3 years I have not seen a single crash on my PC for daily use with XP SP3.
And from there I heavy use Windbg all the time also.
Something really strange is going on. Eventually it is not enough, to install XP new,
but needed before with Winhex a 00 00 00.. writing to the whole harddisk.
It is like virus
Dietmar
del-13YuriyCN
Zitat von ⇗ Outbreaker im Beitrag ¶ #6167
@YuriyCN
Do we have to run the "Timer_Fix.exe" file for every logged-in user? Or is it enough to run it as a SYSTEM file?


Если в WinХР несколько пользователей
Я работаю только под одним пользователем - Администратор, других пользователей не использую, даже учетная запись Гость - отключена.. Соответственно, Timer_Fix.exe достаточно запустить 1 раз. Если вы используете несколько пользователей одновременно - то проверьте с помощью программы Clockres, чтобы период системного таймера был постоянным и равным 1 мс для всех пользователей.

А вообще, нужно взять за основу исходники Timer_Fix и написать программу, которая наоборот, специально переключает системный таймер 1 мс / 16 мс например каждые 10 секунд. Тогда данной программой можно вызывать ошибку с RTC и накручивать время. Возможно тогда это привлечет внимание реверс инженеров и они решат данную проблему "красиво" - на уровне патча системных файлов.
#6173diderius6I set up 2 compis with original XP SP3 from CD.
After I start debug via lan on them, again the same breakpoint happens.
So, the only possibility is, that this happens over lan,
because all compis are in the same net.
Exact like Virus
Dietmar

EDIT: For not to get crazy, I boot without any lan and connected only direct with serial cable via COM1 port those 2 computers.
Now, Windbg works normal, no Break at all (both versions 6.12 of Windbg and 6.3.6900 from win 8.1).
Still crazy, what is going on. It seems, that Windbg stores the IP numbers of the via lan connected compis,
and then send to all of them this crazy Break command.

EDIT2: I connect the Lenovo x230 notebook and the baytrail J1900 board, both with XP SP3 via lan cable direct.
Hm, again I get Breakpoint at 80ac37e0 for the board J1900 and vice versa Host<=>Target also(!).
Where can this information been stored?

Ok, next try: Now again I install XP SP3 from original CD on the Lenovo x230 notebook and the same for the baytrail J1900 board. In the very first beginning before XP install I wipe the harddisks out on both compis with 00 everywhere.

No connection to my lan home net or internet at all. Only connection via direct Lan cable at the end.
If then again this Breakpoint 80ac37e0 will be shown, this information must stay in Ram or in Bios or??
I disable before connection via direct lan cable the pagefile.
Then I will report.
#6174diderius6Waaaooh,
even I make EVERYTHING on both compis (Lenovo x230 and Baytrail J1900) new (XP SP3 original)
no contact to Internet, no contact to my Home lan,
when the Baytrail J1900 is debugged via 8.1 debugger,
with direct Lan cable connection,
it shows the same BREAK as before.
So, it is somewhere stored on this compi, what a crazy result,
because I wiped both harddisks out with 00 everywhere, checked this and they have no contact to any other compi,
brandnew original installation with this result. Pagefile I disabled and checked non existance of pagefile.sys on both compis before I connect them direct via Lan cable.
Dietmar

EDIT: On this Baytrail board I flashed the Bios new with the nice DSDT from ⇗ @infuscomus .
I will flash it again and take a look again. If then the same Break happens, it is not stored in Bios.
I also make a test with the free ntoskrnl.exe on the Baytrail board. Same result but little bit other place, where it brakes.

Microsoft (R) Windows Debugger Version 6.3.9600.17200 X86
Copyright (c) Microsoft Corporation. All rights reserved.

Using NET for debugging
Opened WinSock 2.0
Waiting to reconnect...
Connected to target 169.254.211.181 on port 50000 on local IP 169.254.63.4.
Connected to Windows XP 2600 x86 compatible target at (Mon Jan 4 18:10:02.343 2021 (UTC + 1:00)), ptr64 FALSE
Kernel Debugger connection established.

************* Symbol Path validation summary **************
Response Time (ms) Location
OK C:\WINDOWS\Symbols
Symbol search path is: C:\WINDOWS\Symbols
Executable search path is:
Windows XP Kernel Version 2600 MP (1 procs) Checked x86 compatible
Built by: 2600.xpsp.080413-2133
Machine Name:
Kernel base = 0x80a02000 PsLoadedModuleList = 0x80b019e8
System Uptime: not available
Break instruction exception - code 80000003 (first chance)
nt!DbgBreakPoint:
80ac37e0 cc int 3


EDIT: I flash Bios new, doublecheck that Bioschip has to 100% the same content as on 16 December (complete, everything, whole Bios chip),
but the break remains exact as before.
So, windbg found a way to store something not on harddisk, not in Bios, hm, where else??
Last idea from me was to clear Cmos, result same breakpoint.
And my lastlast idea: I change the DD3 ram against one, that I havent used for 2 years, but still same Breakpoint.
#6175infuscomus⇗ @diderius6

do you get the same result with the windows 10 debugger?
#6176diderius6⇗ @infuscomus
Where do I find the win10 debugger?
And can it work like the 8.1 windbg with XP SP3?
Dietmar
#6177infuscomus⇗ @diderius6

It's part of the Windows 10 SDK (you can install just the Debugger Tools)
#6178diderius6⇗ @infuscomus
Thanks, I am just downloading.
I set a breakpoint at this address, where the compi always break.
Then I delete this breakpoint.
On next reboot break again at the same point.
I try to overwrite the hexcode for cc at this address.
Debugger shows, that code has changed.
On next reboot break at the same place again,
brrr..
windbg found a hidden place on compi: Not harddisk, not Bios, not Cmos, not Ram. Some other places on Compi where to store information for Break?
Dietmar
#6179infuscomus⇗ @diderius6

There is no left over junk in AppData or in Windows\Temp?
#6180diderius6⇗ @infuscomus

No, I delete on known places all to 100% and set XP up fresh from original CD on Target and Host pc.
No connection to anything.
This simple means, that we (I) do not understand, how a compi under XP works. There are hidden places for to store something
on the mainboard.
I noticed some strange things before:
When I go in last summer to Ukraine,
after the scanner on Airport the SSD (with XP) and the mssd (with Win10) show errors.
Rosetta Stone program was damaged.
I have a very good USB stick from Kingston, which works as harddisk.
On this I put an USB bootable image of this XP installation before.
Just like intuition, that ssds, nvme are bad at all.
This image is still ok, survives scanner at Airport.
With XP on harddisk I never got a problem for years with scanners at airport.
This is future..
Dietmar

 

Page 413

#6181infuscomus⇗ @diderius6

maybe try windows 8.1/10 as host PC?
#6182diderius6⇗ @infuscomus

May be, that newer Windbg work better.
But the discovery is really serious in my eyes.
Information can be stored on this motherboard without known place.
I got a second, brandnew motherboard, exact the same build year, brand,
as the first Asrock Q1900M.
This I never connected to a power source until now.
May be, that I can found out, where other places are on this motherboard for to store information
Dietmar

EDIT: I have a Kangaroo USB stick, which can be set write protect.
With EWF filter on a Fat32 partition(NTFS not works, because XP writes during boottime there) it is possible,
to start XP complete write protected.
I will install on the second J1900 board a new XP, and then copy it to the write protect stick.
I think, Windbg will work from there also.

del-14YuriyCN

>>Добавление команды /usepmtimer на глюк со временем не влияет.

Привет, вот описание ключа:

/USEPMTIMER  параметр указывает на то, что операционные системы Windows XP и Windows Server 2003 используют параметры таймера PM-TIMER, а не параметры счетчика отметок времени, если процессор поддерживает параметры таймера PM_TIMER. Проблема возникает на компьютерах с включенной технологией AMD Cool'n'Quiet в BIOS.
Многоядерные или многопроцессорные системы могут столкнуться с смещением счетчика отметки времени (TSC), когда время между различными ядрами не синхронизируется.[/QUOTE]

Спасибо. Я уже опробовал. Эта команда не помогает.

У меня не АМД, а Интел процессор. Да и вообще глюк - это происки современного, слишком умного UEFI.... Вряд ли разработчики ВинХП в 2001 году знали, что появятся такие модные материнки, с такими умными UEFI, чтобы заложить эту команду.

Из того, что проверил и оно не помогает.
1) включение/отключение HPET таймера в BIOS|UEFI
2) включение/отключение режимов энергосбережения процессора в BIOS|UEFI (у меня Intel i5-6500, 4@3,2ГГц)
с названиями C7 State, С0/1 State и других - всего 6 режимов.
3) команда /USEPMTIMER  в boot.ini
4) правленые файлы hal.dll и intelppm.sys с win-raid

Из того, что помогает.
1) Использование Timer_Fix.exe

#6183gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #6168
PS: Not so much possibilities left, where those breakpoints come from. From lan net?!
⇗ @diderius6 ...Dietmar...it's not clear to me which breakpoints you mean. In the screen shot you posted I could not see any breakpoints that were abnormal. Can you give more information?

With regard to RAM, it is not possible for it to retain memory between boots unless the individual cells in the memory card are damaged. I am referring to a hard boot, one in which Sleep or Hibernate is not maintaining the data in RAM. Even then (after hard reboot), the memory data affected would change from boot to boot. It's highly unlikely that the same driver would occupy the same physical memory cells in RAM.

For example, I am working on an app that loads at a different RAM base address each time I boot. Right after starting an app in windbg, if you enter !peb in the command line windbg will show the PEB, which lists information about the loaded module. It shows the base address as something like 00000001 3FEB0000 for 64 bit. I have left a space between the 00000001 and the 3FEB0000 for clarity. Next time I load the app in windbg, it will show something like 00000001 E0070000 for the same app. There is a big difference in memory location between 3FEB0000 and E0070000.

BTW, once you locate the base address using !peb, you can enter !dh 00000001E0070000 and it will give you the entry point into the appllication/module. In my case the entry point is 144C, meaning it is located at offset 0x144C from the base address. I can now enter BP 00000001E007144C and windbg will stop at at the apps entry point after I hit G. That saves using the other trick that forces the processor to freeze at the point you inserted it.

Actually, the entry offset for any app is located in the PE header. There are tools like LordPE that will lay out the PE header for you.
#6184diderius6⇗ @gordo999

The problem is deeper. Why happens there a Break without any instruction always at the same place?
I set up complete new Host and target PC, with NO connection to world outside. And this Break remains always.
Not the Break is the problem, the problem is, that this Break is instructed from a strange, unknown place on the mainboard,
not Bios, not CMOS, not harddisk, not Ram
Dietmar
#6185ruthan⇗ @diderius6
If is on board, longer batter removal could help, older bioses have something caaled NAND or CMOS clear option, but new ones has nothing like that and for some example some data as memory stick first training results etc, has to be saved somewhere. Maybe only part of ROM is writable from bios upgraded. Also some board have dual bios, but not afaik 2 special chips, so there could be some other memory areas.

But i would also bet my money on remote pc from which you are making connection.. that it has some session and which connection data are these thing reapplied. I dont follow every your post and details, maybe you already excluded it.
#6186diderius6"In this case windbg is using Base+Kernel+x86 workspaces."
Where is this workspace located,
on the CPU itself? Is there a piece of memory,
where windbg can store information permanent?

Dietmar

PS: May be there is a flag, that Windbg can permanently set on a  cpu register for a breakpoint, who knows..
#6187iyutosGentlemen, I know that among you there are renown experts in Assembler and Windows internals.  
Perhaps when somebody will have free minutes, can you please take a look to a *problem of video-acceleration* in Windows 7 with classic theme?
I know that this forum is about WinXP/2k, I posting it as odd exception.

⇗ https://github.com/MovAX0xDEAD/NTOSKRNL_Emu/issues/4
#6188infuscomus⇗ @diderius6

This was posted on 4chan

Zitat

Someone with account there should tell him there is a bug in Intel iAMT debug engine which actually has the ability to fuck the computer storing things like breakpoints in its flash portion of the ROM, if you write to certain directions under certain circustances. It comes from the built in AMT debug/jtag like feature.

#6189iyutosIf indeed Intel iAMT debug engine is involved here, this debugging of graphic drivers becomes real hardcore.
Few sentences out of context: "The second option enables the use of hardware breakpoints rather than software breakpoints. The hardware breakpoints employ CPU debugging facilitiesnamely, debugging registers dr0 through dr7whereas implementing software breakpoints usually involves executing the int3 instruction. In the context of malware debugging, this means hardware breakpoints are more resilient and more difficult to detect".


****************Intel System Debugger - User and Reference Guide:*************

The debugger can use both hardware and software breakpoints, each of these has strengths and weaknesses:

*Hardware Breakpoints* are implemented using the DRx architectural breakpoint registers described in the Intel® 64 and IA-32 Architectures Software Developer Manuals. They have the advantage of being USABLE DIRECTLY AT RESET, BEING NON-VOLATILE, and being usable with flash or other read-only memory. The downside is that they are a finite resource.
*Software Breakpoints* require modifying system memory as they are implemented by replacing the opcode at the desired location with a special instruction. This makes them an unlimited resource, but the memory dependency mean you cannot install them prior to a module being loaded in memory, and if the target software overwrites that memory then they will become invalid.

<...> SMM Entry/exit disables/re-enables breakpoints. <...> Alternatively, you can patch the BIOS to re-enable breakpoints when entering SMM, but this requires the ability to modify the BIOS.

See also:  ⇗ https://en.wikipedia.org/wiki/X86_debug_register
⇗ https://www.codeproject.com/Articles/280...reakpoints-prog
#6190iyutosIt seems to me that Windbg stores values in six debug registers, Intel ME is not involved
#6191diderius6⇗ @infuscomus

Can you give me the link for this article?
I read, that someone has the same problems with Windbg,
that he was unable to delete Breakpoints but no explanation for this.
A comment about this was just to delete whole registry entry
under HCU\software\Microsoft\windbg .
There the "workspace" from windbg is "stored".
This cant be true in my case, because registry on new XP SP3 setup on Host and Target compis never heard anything about windbg.
There must be a place on the motherboard,
where this information is stored. And it is not only a flag,
because the full address(es), where the Break(s) should happen must be stored also
Dietmar

PS: Now I set up a fresh original XP SP3 on the brandnew Asrock Q1900M board (named board 2).
For this I use a brandnew harddisk and Ram DDR3 never used until now.
Before I save the whole Bios 1.80 from this board with very good EEpromer Revelprog IS.
Then I flash unmodded Bios 1.30 to it from its own Biosmenu.
Then I integrate nice DSDT from ⇗ @infuscomus into Bios 1.30 and flash with EEpromer, so that I can setup XP in IDE mode without crazy BSODs.
At the end I do not install any driver. Then I connect it to the old compi from 2005 from my parents via COM1 cable direct.
Until now, there is no Windbg on it.
And in the end I put this brandnew harddisk back to the Q1900M (board1), and change Ram from the Board2.
Look what happens.
This will be the ultimative prove, that there are other possibilities to store some information on an unknown place on this board Asrock Q1900M.
#6192diderius6"Beginning in 2005, Intel began including Active Management Technology in Ethernet controllers. This system is effectively a firewall and a tool used for provisioning laptops and desktops in a corporate environment. In 2008, a new coprocessor  the Management Engine  was added. This management engine is a processor connected to every peripheral in a system. The ME has complete access to all of a computers memory, network connections, and every peripheral connected to a computer. The ME runs when the computer is hibernating and can intercept TCP/IP traffic. Management Engine can be used to boot a computer over a network, install a new OS, and can disable a PC if it fails to check into a server at some predetermined interval. From a security standpoint, if you own the Management Engine, you own the computer and all data contained within."
Dietmar
del-15YuriyCN
Zitat von ⇗ iyutos im Beitrag ¶ #6187
Gentlemen, I know that among you there are renown experts in Assembler and Windows internals.  
Perhaps when somebody will have free minutes, can you please take a look to a *problem of video-acceleration* in Windows 7 with classic theme?
I know that this forum is about WinXP/2k, I posting it as odd exception.

⇗ https://github.com/MovAX0xDEAD/NTOSKRNL_Emu/issues/4




Очень медленная работа классического интерфейса Win7, привела к тому, что я отказался от использования Win7 в пользу WinXP. У данной проблемы 2 решения: использовать классическую тему в AERO-исполнении либо использовать патченый DWM.EXE.

Проблема довольно подробно описана здесь - ⇗ [Solution] Acceleration of GUI interface on the non-Aero themes of Windows 7
#6193diderius6Flash back to Bios 1.30 and placing nice modded DSDT from ⇗ @infuscomus on the Asrock Q1900m Board 2 is done.
After I reset CMOS, set IDE in Bios and enable USB3, nothing more.
Just now I am installing original XP SP3 with acpi.sys from outerspace ). No other driver, no connection to outer world.

Now happens the most most crazy ever:
I get the same (!) break on board 2 as before on board 1. Debug via COM1 port works, but is unstable.
This means: All the fresh XP SP3 installations give a break on any of the Asrock Q1900m boards!
Now I put an XP with all updates and also with the updates from Posready on this new harddsik.
Because I remember very good, that there has been a time without any breaks on board 1
Dietmar

EDIT: After I install an XP SP3 with newest updates, windbg via COM1 works very fast but still shows this crazy Break.
I disabled nearly all devices in Bios. After this, the free ntoskrnl.exe does not show a Break,
but the checked ntoskrnl.exe shows Break exact at the same place.
Now I use the working debugger, for to look a little deeper at this Break.
This place, where it happens is marked


Microsoft (R) Windows Debugger Version 6.12.0002.633 X86
Copyright (c) Microsoft Corporation. All rights reserved.

Opened \\.\com1
Waiting to reconnect...
Connected to Windows XP 2600 x86 compatible target at (Tue Jan 5 21:51:49.703 2021 (UTC + 1:00)), ptr64 FALSE
Kernel Debugger connection established.
Symbol search path is: C:\WINDOWS\symbols
Executable search path is: C:\WINDOWS\symbols
Windows XP Kernel Version 2600 MP (1 procs) Checked x86 compatible
Built by: 2600.xpsp.080413-2133
Machine Name:
Kernel base = 0x80a02000 PsLoadedModuleList = 0x80b019e8
System Uptime: not available
Break instruction exception - code 80000003 (first chance)
nt!DbgBreakPoint:
80ac37e0 cc int 3
kd> !analyze -v
Connected to Windows XP 2600 x86 compatible target at (Tue Jan 5 21:52:05.875 2021 (UTC + 1:00)), ptr64 FALSE
Loading Kernel Symbols
.....................................
Loading User Symbols

*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

Unknown bugcheck code (0)
Unknown bugcheck description
Arguments:
Arg1: 00000000
Arg2: 00000000
Arg3: 00000000
Arg4: 00000000

Debugging Details:
------------------


FAULTING_IP:
nt!DbgBreakPoint+0
80ac37e0 cc int 3

EXCEPTION_RECORD: ffffffff -- (.exr 0xffffffffffffffff)
ExceptionAddress: 80ac37e0 (nt!DbgBreakPoint)
ExceptionCode: 80000003 (Break instruction exception)
ExceptionFlags: 00000000
NumberParameters: 3
Parameter[0]: 00000000
Parameter[1]: 80124cdc
Parameter[2]: 80af5242

ERROR_CODE: (NTSTATUS) 0x80000003 - {AUSNAHME} Haltepunkt Im Quellprogramm wurde ein Haltepunkt erreicht.

EXCEPTION_CODE: (HRESULT) 0x80000003 (2147483651) - Mindestens ein Argument ist ung ltig.

EXCEPTION_PARAMETER1: 00000000

EXCEPTION_PARAMETER2: 80124cdc

EXCEPTION_PARAMETER3: 80af5242

DEFAULT_BUCKET_ID: DRIVER_FAULT

BUGCHECK_STR: 0x0

LAST_CONTROL_TRANSFER: from 80123c39 to 80ac37e0

STACK_TEXT:
80af2340 80123c39 ffdff120 80af2368 80123dcb nt!DbgBreakPoint
80af234c 80123dcb 80084000 00000000 80afc980 HAL3!HalpGetParameters+0x91
80af2368 80d2ff9f 00000000 80084000 80afe260 HAL3!HalInitSystem+0x33
80af24f8 80d41cd4 00000000 80084000 8003fc00 nt!ExpInitializeExecutive+0x171
80af254c 80d3f6ec 80afe4c0 80afe260 80af2810 nt!KiInitializeKernel+0x568
00000000 00000000 00000000 00000000 00000000 nt!KiSystemStartup+0x2c4


STACK_COMMAND: kb

FOLLOWUP_IP:
nt!ExpInitializeExecutive+171
80d2ff9f 84c0 test al,al

SYMBOL_STACK_INDEX: 3

SYMBOL_NAME: nt!ExpInitializeExecutive+171

FOLLOWUP_NAME: MachineOwner

MODULE_NAME: nt

IMAGE_NAME: ntkrpamp.exe

DEBUG_FLR_IMAGE_TIMESTAMP: 4802b3ce

FAILURE_BUCKET_ID: 0x0_nt!ExpInitializeExecutive+171

BUCKET_ID: 0x0_nt!ExpInitializeExecutive+171

Followup: MachineOwner
---------

#6194diderius6I found this place for Break in the debug version of ntoskrnl.exe.

After
call   HalInitSystem 
test al, al

and when this is zero,
compi jumps to Breakpoint.
Crazy, because I changed nothing..
Before I never had this Break.
I try to hack the degug ntoskrnl.exe
but then comes message, that ntoskrnl is damaged.
So it seems to have something like Signed in it,
checksum is correct.
May be someone here can tell me or just do,
how to overcome for hacked ntoskrnl this message,
here is the file from my modded ntoskrnl.exe
Dietmar

⇗ https://ufile.io/2klom64c
#6195gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #6193
FAULTING_IP: 
nt!DbgBreakPoint+0
80ac37e0 cc int 3

⇗ @diderius6 ...confused as to the problem you are having. The code above is normal for windbg, it always break at that point, nt!DbgBreakPoint in ntdll!LdrDODebuggerBreak. I just opened an app and that's where it stops. My address is different than your because I am using Windows 7 version of ntdll.dll.

In the windbg debug window, the main window, it says:
(1640:1218): Break instruction exception - code 80000003 (first chance)
ntdll!LdrpDoDebuggerBreak+0x30
00000000'77cf6c50 cc int 3
That code is the loader that loads apps into memory for windbg. If it did not stop there, the app would run to completion. It stops there to allow you to make adjustments and to tell windbg where you'd like it to stop.

 

Page 414

#6196diderius6⇗ @gordo999

When you want to set a breakpoint there, it is normal.
But here happens something strange.
After Break the debugger gets crazy, only in few times it shows the line with kd>.
This all did not happen before.
I also find the errorplace in ntoskrnl, something does not match in hall.dll, this test al, al
shows this.
As I said, nothing at all of this happens before,
I do not know what changed
Dietmar
#6197diderius6When I use the debug hal.dll, modded for the timer error, and ntoskrnl.exe debug version,
the break still happens at the same place, but after that break I can work normal with Windbg
Dietmar

PS: After hitting g,
windbg shows me now a lot of lines, which do not appear at all before.
#6198diderius6Next try on the Q1900m board 1, with 4 Gb ram.
I setup with original XP SP3 CD in IDE mode, only acpi.sys from outerspace ) on it.
Before setup I disable nearly everything in Bios.
After setup I change intelppm.sys and hal.dll on the harddisk (against the power states and timer problems),
because I noticed, that windbg hangs without them, may be only timermodded hal.dll needed on Baytrail(!) board.
With the normal free ntoskrnl.exe now no Break happens with Windbg via COM1 cable, connected to the old compi from my parents. Was a hard job, to get on this old compi Windbg vers. 6.12 to run. It is only in the win7 SDK 7.1 and it needs Framework 4.0, full install.
Then I change free ntoskrnl.exe against checked ntoskrnl.exe and the free, timermodded hal.dll against the checked, timermodded hal.dll and rename them to ntos3.exe and hal3.dll.
I thought, that may be the /BREAK command in boot.ini can let the compi with checked files break
at always the same address 80ac37e0. But this also does not help. So, still break from nowhere at 80ac37e0.
Ok, crazy things are going on:
After hitting g on the kd> line, compi starts without any other breaks and very few lines in Window from Windbg.
Then I install the Intel HD driver version 5449, unmodded only in its *.inf I change 0152=>0F31, then I use the setup.exe
for the HD driver. No error message. But some entries in registry under Services\ialm are missed or not NULL Terminated, for example for maxmem.
But the driver still does not work (Code 10), but this is only for humans, says nothing about why.
I check with nice EB FE command the driverentry point. It is also always the same, 0x80ac37ec.
Now the compi runs endless and a look at the register EIP shows 0x80ac37ec as usual.
But now things changed: It is impossible to set a breakpoint with bp or bu at this adress.
You can set the breakpoint, but the compi does not stop. A look with bl tells always, breakpoint at 0x80ac37ec.
Now I try next: After crazy break again at 80ac37e0, I type in kd>bp igxpmp32!DriverEntry .
Strange message appears: expression 'bp igxpmp32!DriverEntry' could not be resolved. adding deferred bp
Ok, I hit g
Then Message appears *** ERROR: Module load completed but symbols could not be loaded for igxpmp32.sys
Breakpoint 0's offset expression evaluation failed.

But the compi stops at the DriverEntry point of igxpmp32.sys .
Before, I cant use g, p or t from this place. But crazy things going on, now I can.
But Windbg is in an endless loop at next adress pop ebp.
And always breaks after this message.
Now I just type in kd>bc *
which deletes all Breakpoints.
And voila, now I can use g, p, t for to trace the driver igxpmp32.sys .
Because from loong work before I know, that the shown HEX orders are correct.

Ok, why it is impossible to set a working breakpoint at the DriverEntry?
The DriverEntry 0x80ac37ec
is very near to the crazy break from nowhere at 80ac37e0 .
I thought, that this may be too short time for BREAK at 0x80ac37ec.
So I set down the speed for Debug via COM cable from 115200=>9600.
But this does not help
Dietmar

PS: But via method at wished places Breakpoint force with EB FE works.
So, testing what is going on, can continue.

Here is the content of my boot.ini on the Target PC Baytrail Asrock Q1900m board 1.

[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional" /noexecute=optin /fastdetect
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional" /noexecute=optin /fastdetect /debug /debugport=COM1 /baudrate=115200
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Windows XP SP3 DEBUG" /noexecute=optin /fastdetect /KERNEL=ntos3.exe /HAL=hal3.dll /debug /debugport=COM1 /baudrate=115200 /BREAK
C:\WINDOWS="KDNET" /noexecute=optin /fastdetect /KERNEL=ntos3.exe /HAL=hal3.dll /DEBUG /DEBUGPORT=NET /HOST_IP=192.168.2.101 /HOST_PORT=50000 /ENCRYPTION_KEY=1.2.3.4 /CPUFREQ=3000 /TARGET_IP=192.168.2.104
C:\WINDOWS="KDNET_Brk" /noexecute=optin /fastdetect /KERNEL=ntos3.exe /HAL=hal3.dll /DEBUG /DEBUGPORT=NET /HOST_IP=192.168.2.101 /HOST_PORT=50000 /ENCRYPTION_KEY=1.2.3.4 /CPUFREQ=3000 /TARGET_IP=192.168.2.104 /BREAK
#6199diderius6⇗ http://read.pudn.com/downloads182/ebook/...nternals(2).pdf

Nice, there I found, that indeed the timer is involved in HalInitSystem
Dietmar
#6200diderius6I found with the nice EB FE methode via Windbg the exact place in the Hex code of the igxpmp32.sys, where this driver fails.
In version 5449, where the Baytrail driver with DEV_0F31 is mentioned,
this condition jnz is never met. So, the driver settings to DEV_0F31 is overjumped always
Before this place, compi reaches all, I tested
Dietmar

cmp     dword ptr [edx+1FCh], 0Eh

gives not ZERO as needed for Baytrail via its Magic Numbers 9 5 0Eh


#6201diderius6"Hardware Breakpoints
Within most CPUs there are special debug registers that can be used to store the addresses of breakpoints and specific conditions on which the breakpoint should triggered (e.g. read, write, execute). Breakpoints stored here are called hardware (or processor) breakpoints. There is a very finite number of registers (usually 4) which limits the number of total hardware breakpoints that can be set. When the CPU reaches a memory address defined within the debug register and the access conditions are met, the program will pause execution.

Hardware breakpoints are set within WinDBG using the ba (Break on Access) command. In its most basic usage, it takes 3 attributes:

0:001> ba e 1 00453689



This command would (we'll see soon why it doesn't) accomplish the same thing as the previous bp example, however now we're setting a hardware breakpoint. The first argument, e, is the type of memory access to break on (execute), while the second is the size (always 1 for execute access). The final is the address."

Tomorrow I will test

ba e 1 80ac37ec

Dietmar
#6202gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #6196
When you want to set a breakpoint there, it is normal.
⇗ @diderius6 ...It has nothing to do with the user, windbg sets that BP as a matter of its normal operation. Without the BP, the app would not stop while being loaded and would run to completion.

Part of my confusion is related to how you are working with the driver. With a normal executable, when you load it from the File menu, it is loaded by windbg and stops at the debug point we are talking about. I was not aware that you can load a driver in the same way since it does not have to be executed. A driver is loaded in memory and accessed by the system via calls (interrupts) from external hardware. However, I realize you are having trouble getting the driver to load.

I suggest you look at that specific application of windbg to debugging drivers.

Your windbg installation may be corrupt. You could start by deleting the current workspace and starting fresh. If that doesn't work, then delete everything related to windbg and install a fresh copy.

With regard to windbg not allowing the kd> prompt, it does that when it is busy, or when it does not have a proper connection to the target. In fact, the kernel is responsible for loading kdcom.dll, which interprets and controls the flow of serial data to and from the computer. It is loaded at boot time by ntoskrnl at the same time Hal is loaded and the video driver. A problem in communications between ntoskrnl and kdcom.dll could mess up your windbg session.

Zitat von ⇗ diderius6 im Beitrag ¶ #6196
As I said, nothing at all of this happens before,
I do not know what changed Dietmar
Welcome to the crazy world of debuggers. I have spent hours, days, and even weeks trying to get a debugger running properly.
#6203diderius6⇗ @gordo999

Do you have an idea, why a breakpoint set via Windbg with
bp address
not stops the compi at this address, when it is a valid address in memory, which the compi has to execute?
Before it works. Oh, I installed everything 2 times new, really all.
Can this happen because of missing Symbols? Now I use the checked Symbols, but only hal.dll and ntoskrnl.exe
are checked files, all others in this XP SP3 are from free build.
I think, the breakpoints set with bp or bu know nothing about memory.
But the hardware breakpoints do, so it should be impossible, that a hardware breakpoint does not work, as long as the compi pass this address during executing Hex code
Dietmar
#6204gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #6203
Do you have an idea, why a breakpoint set via Windbg with  bp address not stops the compi at this addressr
⇗ @diderius6 ...what comes to mind immediately is a thing called "context". When a process is running, it runs in its own context. In this use of the word, context means address space. Breakpoints like BP are generally valid only in the memory space of a process. I have not used BU but I understand it to mean the BP will be reserved till that module at that address comes into focus, which is also its context.

Also, Windows and other OSs use time-slicing. That means the processor can only focus on one thread at a time. A thread, of course, is a string of code that represents a process for a user or the system. You may see many windows open on a desktop but only the one you are working in with the mouse cursor has th focus, meaning the focus of the processor. Of course, the processor has to keep all the other windows and processes alive so it jumps from one to the other, attending to them while the window you are working in has the focus.

When the Window in focus is running, it occupies a virtual address space, which includes all imports required by the app. That's it's context. If you set an ordinary BP on an address in another module or process outside that context, windbg will likely complain.

When I worked with softice, it could be frustrating until I learned about contexts. If I set a BP in a process address when the process was not loaded, or even in focus, softice would complain. So, I had to locate the process in memory using the 'table' command, which listed all modules loaded. I could then highlight the module, set my breakpoint, and softice was happy.

There is a similar feature in windbg for setting context. I am not very familiar with it but I did use it once. This is the problem with windbg, it is so complex the learning curve seems to take forever. Leave it alone for a few months and much of it is forgotten.

Regarding your previous post about ba e1 <address>, I have not used hardware BPs a lot. However, I read something interesting at the Msoft site. You can set a breakpoint on the serial port using the ba breakpoint, using BA i <serial port addy>, where addy is the standard serial port address range.. That might be a useful troubleshooting technique, not just for serial ports but for any external device attached to the mobo. You can also specify a hardware BP using r, w or i in place of e, where r = read, w = write, and i = i/o as in i/o port..

The difference between a hardware and a software BP, is that the software BP relies on temporarily replacing code with an int 3. That causes an exception which windbg knows how to handle. The hardware breakpoint is set for the processor. The processor is interrupt-driven, meaning it is alerted by external devices via interrupts whenever they need service. I think a hardware interrupts address is placed in a special table monitored by the processor, as with normal interrupts.

⇗ https://docs.microsoft.com/en-us/windows...reak-on-access-

This article may prove valuable to you. I posted about the special debug version of ntldr, found on the XP SP1 disk, that can help kernel debugging over a serial cable. It also explains a windbg attachment that can help. With this NTLDR, you can apparently break before ntoskrnl is loaded during boot.

⇗ https://kobyk.wordpress.com/2008/07/04/r...-boot-debugger/
#6205diderius6MINIX is the most used OS in the world since 2006

⇗ https://www.cs.vu.nl/~ast/intel/

Dietmar
#6206diderius6Is there a program,
with which you can find the (start) address of a series of Hex orders in memory
Dietmar
#6207Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #6206
Is there a program,
with which you can find the (start) address of a series of Hex orders in memory
Dietmar

Hi Dietmar,
question is "what kind of memory ?" memory controller ? virtual in ring 0 ? virtual in user's process ?
WinHEX can work with all RAM, also RW_Everything has some RAM operations
#6208Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #6205
MINIX is the most used OS in the world since 2006
⇗ https://www.cs.vu.nl/~ast/intel/


most used is linux because every LCD/Plasma TV and every Android-based device has it (linux kernel, not all OS)
#6209diderius6This time I break into the loaded driver with CC INT 3 (with edited igxpmp32.sys vers 5449 with Winhex at wished place),
and Windbg breaks there as wished
.text:1004EE7E loc_1004EE7E: ; CODE XREF: sub_1004EA10+2EF j
.text:1004EE7E mov edx, [ebp+arg_0]
.text:1004EE81 cmp dword ptr [edx+1FCh], 0Eh
.text:1004EE88 int 3 ; Trap to Debugger <--- this break I set, it was original jnz
.text:1004EE89 nop
Question, if I understand this right:

edx=89be4358 as the Register view of Windbg shows at EIP=b937ae88 (the address, where Break happens)
edx+1FCh = 89be4554 if I calculate right.

This means, that at the address 89be4554 should be a value of 0Eh when the cmp gives "yes" ?
But the value at address 89be4554 is 0000, so the cmp gives "false" ?
Dietmar
#6210gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #6206
Is there a program,
with which you can find the (start) address of a series of Hex orders in memory
Dietmar
⇗ @diderius6 ...this is a lot more info than you need but I am trying to demonstrate the overall procedure for byte searches and why.

As ⇗ @Mov AX, 0xDEAD explained, it depends on where in memory and how the app/driver is loaded. I don't know of any program that can do a search for bytes in memory but if I am searching for memory bytes, I do it indirectly by examining the disk image using IDA or hex editors like UltraEdit or HxD. Then I cross-reference the addresses between the disk image and the memory image. Or, you could try to dump the entire file/driver RAM image to a disk file and do your search with a hex editor, or even load it as a binary file in IDA.

If you are working in a particular application or driver, which is loaded from disk, you can search for the bytes in the app's disk image and note the offset from the beginning of code. Then you can try to find the same offset in memory. So, you are working backwards, you are not searching memory for the bytes you are searching a disk image or a disassembled image in IDA, then synchronizing addresses till you find the desired code.

There is another problem, however. If the bytes you seek are common bytes, there may be a thousand instances of those bytes. The trick is to look nearby to find unusual sequences of code bytes, noting the offset from the bytes you want to find, then searching for those bytes. I use IDA with the opcodes visible and look at the assembly instructions. I look for assembly instructions nearby that are unlikely to be common to the entire app, then I include that string of opcode bytes in my search string. Using that method I can narrow down a search to one or two instances. Then I look at the bytes surrounding those bytes to see if they compare.

If you can load the app/driver in IDA and figure out how the IDA address compares the the address of the app/driver when it is loaded in memory, it's a matter of doing hexadecimal arithmetic to find the bytes. It's not always that simple, however. I have used this successfully with apps that are loaded conventionally into user memory but as ⇗ @Mov AX, 0xDEAD explained, getting at other memory can be tricky or impossible.

I have not tried windbg remotely in kernel mode yet to any degree. One complaint I have with it in local mode, where you load an app with windbg on the same computer, is it's inability to trace into ring 0 code, which is system code. If you can't trace it I don't see how you can search it. I can't see a tool being available that will search ring 0 code.

For straight apps on disk, I use a hex editor like UltraEdit or HxD. Both have hex bytes search features but for larger files, I find HxD faster. As ⇗ @Mov AX, 0xDEAD pointed out in an earlier post, IDA also has a hex editor with search features.

With apps, and possibly drivers, you can find the base address where the app/driver is loaded in memory using windbg. If the app/driver has the focus, use !peb and it will give you a lot of info on that app/driver with its base address in memory. As a preliminary check, you can compare the bytes at the windbg memory address to the bytes on the disk image. Be advised that code often starts on a disk image at offset 0x400 or 0x1000, so you may need to apply those offsets on the disk image. The PE header info will tell you where the code section starts. By analyzing the memory image against the disk image you can eventually figure out how they are related.

You might get lucky with a one to one search between a hex editor image and the memory image but sometimes the memory image is loaded a bit differently than the disk image. For one, a disk image shows code address offsets from address zero whereas in common x86 memory addressing the app image was often located at 0x401000. With 64 bit apps it gets trickier. If you know how to read a PE header or PE header information from a tool like LordPE, the information is in there to locate your code in memory.

Still, if you are persistent and use landmarks in the code that are recognizable in the IDA disassembly or the hex editor image, you can find anything eventually.

For example, I am currently working on an app which I have loaded in memory and open in IDA as well. If I have an address in memory I try to find the same address in IDA and calculate the difference in the MSB of the lower 8 bytes in the address space between the memory address and the IDA address. Then I can find my way through the IDA code and synchronize it with the memory code. Using both, I can locate code in the disk image as well, so I can then sync between memory, IDA and the disk image.

If you have a PDB file for the app/driver, it makes life easier to synchronize between the three. The PDB gives names to functions so you can do a string search for a normal function or look up imports in the IDA import table. Once you have located a familiar name, of a function or import, at a certain address in IDA, you can check the code around it to see if it is the same as the code in memory. Or, you can at least find an offset to the desired code.

Some debuggers like Ollydebug for x86 and X64dbg for x86 and x64, allow extensive text search capabilities.  I am sure windbg has a search facility, I have never seen it. Be aware that plugins (extensions) exist for windbg and are located in the Debugging Tools for Windows directory under the winext sub-directory.  Someone may have written a search plugin, I don't know.

 

Page 415

#6211gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #6209

.text:1004EE7E                 mov     edx, [ebp+arg_0]

edx=89be4358 as the Register view of Windbg shows at EIP=b937ae88 (the address, where Break happens)
edx+1FCh = 89be4554 if I calculate right.

This means, that at the address 89be4554 should be a value of 0Eh when the cmp gives "yes" ?
But the value at address 89be4554 is 0000, so the cmp gives "false" ?
Dietmar
⇗ @diderius6 ...where did you get the 1F for edx+1F? If you have windbg open, then open a memory window. Where it says @scope, or whatever, type in ebp+value, where value = the value given for it in the windbg code. I don't know why Ilfak decided to use arg_0 when he designed IDA. I think the values may be written above the function as a series of args.

When you read the memory window to get the value at ebp+value, be aware that the hex values are written in Endian format. For a common 4 byte double word like 0401000, they would be written as 00 00 01 04. You take the last two bytes and reverse them, putting them as the MSB bytes then reverse the first two bytes, putting them in the LSB position. It's similar for 64 bit notation except they use a qword like 000007fe 12345678.
#6212FireKillerGRHi,

been having acpi issues (A5 0x0000...3, 0x89CB67F8, 0XC0000034, 0X494E495F) even tho I have tried most of the modded acpi files & WinXP-IE Optional Patch Integrator tool/patcher.

Any thoughts?
#6213infuscomus⇗ @FireKillerGR

So for this error the microsoft documentation says this - ACPI could not find a mapping in the _PRT package for a device.

This is with the most recent outerspace acpi.sys

⇗ @diderius6

do you think you could patch this one?
#6214George KingHello everyone,

I created small tool, that alow distributing Windows XP syspreped image from install.wim / install.esd. [TOOL] XP2ESD - Create modern Windows XP installer

Why I writing right here? I see here a lot of you who can create patch. I need to suppress one message box from showing in setup.exe from Windows 10 installer.

Can anybody have a look on it please? Here are all needed information.

⇗ https://forums.mydigitallife.net/threads...nstaller.82935/

Many thanks

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#6215diderius6⇗ @FireKillerGR

This is the only possible hack in acpi.sys from outerspace )
against the Bsod 0x000000A5 (0x00000003, xxx, 0xC0000034, zzz)
Dietmar

⇗ https://ufile.io/305aedg3
#6216diderius6⇗ @gordo999

Thanks a lot for help!
In this afternoon I make a new try for to find the value of variables direct in Ram,
have a nice day
Dietmar
#6217diderius6⇗ @FireKillerGR  ⇗ @George King

I noticed, that you have the normal XP SP3 acpi.sys version 5.1.2600.5512  in the folder Sources\install.wim for XP home and also for XP professional.
This acpi.sys you have to change against the acpi.sys from post 6223 each, even I think that
the normal acpi.sys from outerspace ) at this places is enough.
For unpack you can use 7zip, for to pack I dont know, which program works.
You can make a first try to install XP without repack of install.wim
Dietmar

EDIT: Also you have to change acpi.sys against acpi.sys from outerspace ) in the folder

sources\install\1\WINDOWS\Driver Cache\i386\sp3.cab
and in
sources\install\2\WINDOWS\Driver Cache\i386\sp3.cab
#6218infuscomus⇗ @George King  

Can you update your XP2ESD_Builder.cmd script so I can choose which architecture I want to use?

e.g - If I'm running Windows 10 x64 but I want to build an XP x86 installer.
#6219FireKillerGRActually the acpi.sys file you provided helped and allowed me to proceed with the installation.
Now issue is that after installation is completed (txt and gui) I still get the A5  bsod(0X00000003 0X89CAA7F8, 0XC0000034, 0X494E495F) when trying to enter the OS

Edit: I replaced the file again after the installation and it works fine so far. Thanks!
#6220George King
Zitat von ⇗ infuscomus im Beitrag ¶ #6218
@George King  

Can you update your XP2ESD_Builder.cmd script so I can choose which architecture I want to use?

e.g - If I'm running Windows 10 x64 but I want to build an XP x86 installer.


⇗ @infuscomus No update needed, just build it, architecture detection is used for host Windows to use proper tools.
I'm also on Windows x64 and building XP 32bit modern installer [TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#6221diderius6⇗ @Mov AX, 0xDEAD

The missing (no entry) of the Magic Number 0Eh for the Baytrail videochip makes me think,
that may be all the time I look at the wrong place.
Imagine, that the modded igxpmp32.sys vers. 5449 already works for Baytrail.
I noticed, that when I change the Magic Number for the HD4000 on the Lenovo x230 laptop,
it shows EXACT the same symptoms as now for the Baytrail board.
So it can be, that hal.dll does not propagete the correct Magic Number to igxpmp32.sys.
And then even a working igxpmp32.sys has no chance
Dietmar

PS: So my question is, do you know how hal.dll gives the information from Bios about the videochip to igxpmp32.sys?
#6222gordo999
Zitat von ⇗ FireKillerGR im Beitrag ¶ #6219
Now issue is that after installation is completed (txt and gui) I still get the A5  bsod(0X00000003 0X89CAA7F8, 0XC0000034, 0X494E495F) when trying to enter the OS
⇗ @FireKillerGR ...may be a dumb suggestion but can you check the folder in which you inserted acpi.sys to make sure it is the same version as the modded version? Just check the size. I am thinking that Windows file checker may have replaced it, although it shouldn't because it doesn't know about acpi.sys.

BTW...which directory did you put acpi.sys into? It's supposed to be in %windir%/System32/Drivers. The size of mine is 234 KB and I had a previous version in there of 183 KB. Note that when Windows file checker changes files, it gets the file from %windir%/System32/dllcache. There should be no acpi.sys in that directory. If there is, replace it with the modded acpi.sys.

If the installation booted with the modded acpi.sys, with no A5 BSOD, it should boot in normal mode with it.
#6223gordo999
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #6207
WinHEX can work with all RAM, also RW_Everything has some RAM operations
⇗ @Mov AX, 0xDEAD ...sorry...did not see your recommendation for Winhex. Can it do a virtual memory search for hex bytes? I have been using Active@ Disk Editor but it can only search the hard disk. It's very good when working with partitions and sectors and I have used it to trace through the MFT. It has templates that can help read the MFT.
#6224FireKillerGRWill test. Thanks!
#6225Andalu
Zitat von ⇗ diderius6 im Beitrag ¶ #5986
The DSDT from Bios 1.0 I have
Dietmar

⇗ https://ufile.io/35robgkc

Compilation successful. 0 Errors, 32 Warnings, 70 Remarks, 245 Optimizations

Bios downgraded to the v1.00.
Dsdt.aml extracted from DSDT100.dsl you provided and loaded via easy2boot method.
I always got a bsod for each acpi.sys version tried until now:

1. "0xA5 (0x03,xxx,0xC0140004,0x494E495F)" for the following versions:
- original unmodded 5512 (SHA-1: FAF1AE66CC016DD7281A1FCA53BE841B6B611106),
- acpi2015 (SHA-1: CE14072D34DE5B9D9C796073CD1BC2DBF1E04C98),
- 5048 (SHA-1: 8EF48518B17DAAC4A90632A811FBFDC8183C325B) and
- 'from outer space' (SHA-1: B1CE1C07AFB0861BCCDEC17DAF04274A3DD80C8C).

2. "0x7E (0xC05,0xB9EE62B4,0XBA53FBE8,0xBA53F8E4)" for "acpi.sys - address B9EE62B4 base at B9ED4000, datestamp 480252b1"
for your latest acpi.sys version (SHA-1: 1C240A25E8D5C10CAE67C7C03F10715802C5950D).

I got almost the same BSODs for other dsdt.aml files extracted from the bios v2.50 and using them on the same bios version (even reparsing the ssdt tables and importing the ref.txt file for the reported warnings). With some of these versions the boot is completed without issues, the oddity is that this does not happen for every boot: in the other times only the bottom of the desktop is displayed at the top of the screen.

But even when the desktop is totally or partially displayed, the restart fails anyway.

What else can I try?


P.S.: without patching the dsdt table, my boards boots correctly with all patched acpi.sys for both bios versions. XP boots also with the bios v1.00 using the original un-modded acpi.sys v5512 even if the restart remains still not working.

 

Page 416

#6226diderius6⇗ @Andalu

It is a driver. Which one I do not know. Can you boot your compi in IDE mode?
I have on some compis this strange problem because of graphic
Dietmar
#6227JeveesHi. Does any XP drivers for modern videocards exist? Im searching for Nvidia RTX 3080 compatible driver.
#6228infuscomus⇗ @Jevees

for the 3080 the best you can get now is a universal 2D driver, no 3D.

If you want 3D in XP, get a 980ti or older.
#6229Jevees
Zitat von ⇗ infuscomus im Beitrag ¶ #6228
@Jevees

for the 3080 the best you can get now is a universal 2D driver, no 3D.

If you want 3D in XP, get a 980ti or older.


Thanks. Where can i get that universal 2D driver?  And are there any plans to implement 3080 support drivers?
#6230infuscomus⇗ @Jevees

Here is the 2D driver - ⇗ https://bearwindows.zcm.com.au/vbemp.htm

very unlikely to get the 3080 working on XP any time soon (years away if at all), so it would be best to get something like a 980ti or earlier if you need 3D in XP.
#6231Andalu⇗ @diderius6
IDE mode option not present in the bios.
Here all devices are disabled: onboard LAN and HD audio, serial and parallel ports. No other device is connected besides PS/2 keyboard and mouse (and onboard vga).
The same configuration in 'Uniprocessor ACPI' mode allows the normal restart.

I noticed a different behavior for the available 'mode pc' just during the XP installation, at end of the text and GUI modes when a reboot is requested:
the restart automatically works only for 'Uniprocessor ACPI' and 'Advanced Configuration and Power Interface (ACPI)' while fails for all other options (Standard PC, MPS Uniprocessor, MPS Multiprocessor and Compaq System PRO Multiprocessor or 100% compatible).

I have also tried to quit from an XP installation on a first step of the text mode setup, by pressing the F3 key just after the 'mode pc' is selected via F5 key (so just after the "setup is starting windows" screen). Even in this case, the restart behaves differently: it automatically works for Multiprocessor ACPI, Uniprocessor ACPI and Advanced Configuration and Power Interface (ACPI) while it hangs for all other modes (Standard PC, MPS Multi and Uni, Compaq, Standard PC with C-step) even by pressing the enter key.
#6232Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #6221
@Mov AX, 0xDEAD
So it can be, that hal.dll does not propagete the correct Magic Number to igxpmp32.sys.
PS: So my question is, do you know how hal.dll gives the information from Bios about the videochip to igxpmp32.sys?

Hi Dietmar,
I didnt track your previous posts about igxpmp32.sys, so i dont know what is "magic number". If it is series of moving constants "mov [xxx+yyy], 0xZZ" after pci_devid detection inside igxpmp32.sys, this is intel' way to store "generation" of chip. We dont know what these number means.
There is no relation with hal.dl, as i wrote before, driver read hardware registers directly from chip (memory size/ etc...)

Driver don't read chip parameters from registry (HardwareInformation.*), instead it rewrite to registry at every reboot, every videodriver does same:
"Write hw information to registry, so that it's visible in windows property dialog" (remark from virtualbox' video driver sources)

EDIT:
little info after quick reverse-engineering Win7's igdkmd32.sys driver +  .pdb:
 
mov     dword ptr [eax+22Ch], 2
mov dword ptr [ecx+228h], 2
mov dword ptr [edx+224h], 3



+22C generation of chip:
2 - Gen3
3 - Gen4
5 - Gen5
4,6 - Gen5
7 - Gen5_7

+228 subgeneration of chip ?:
2 - Gen3

+224 subgeneration of chip ?:
3,4,7 - Napa Family
0a,0b, ... -  Gen6

#6233infuscomus⇗ @Andalu

I'm just guessing here, but maybe the problem is in the halmacpi.dll? try going back to unpatched version maybe?
#6234diderius6⇗ @Mov AX, 0xDEAD
Nice information, thanks a lot.
So it is really on the driver igxpmp32.sys to work with Baytrail or not.
About the Magic Numbers:
Yes, they are those, but one thing is other than you think:
The last Magic Number "+224h" is different, depending on OS:
On Win7 it it always increased +1 from XP to Win7 for ALL videodrivers from Intel for the same device
Dietmar

PS: Yes, the "+228h" is for a subsystem, it is on XP and Win7 always the same for the same VGA device.

EDIT: Can a for XP working VGA driver work in Win7? Or in Vista?
This would be interesting, especially for the "Win2003" 5048 version of Vista .
#6235diderius6⇗ @Andalu
"the restart automatically works only for 'Uniprocessor ACPI' and 'Advanced Configuration and Power Interface (ACPI)' "
This means, that the DSDT table is involved and so is a chance with modding DSDT.
I am not good with modding DSDT.
May be ⇗ @infuscomus or ⇗ @daniel_k can help you.
The idea for modding DSDT is:
Go back to the original DSDT from very first Bios.
And delete one (not needed for boot) driver after the other there,
so you will find the cause
Dietmar
#6236Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #6234

EDIT: Can a for XP working VGA driver work in Win7? Or in Vista?
This would be interesting, especially for the "Win2003" 5048 version of Vista .

⇗ @diderius6
win7 ddk declare legacy compatibilty "win2000 model display driver" to work on Vista (without directx 10+ features)

i dont know how it works:
- in vista display driver load dxgkrnl.sys, then win32k.sys will connect with driver and dxgkrnl.sys
- in compatibility mode video driver will not load dxgkrnl.sys and probably win32k.sys will load it or maybe avoid using of dxgkrnl.sys
#6237Andalu⇗ @infuscomus
just tried the XP-IE2020.9.9 ISO with options 1,6,D (sata/ahci, acpi, remove driver packs) and only the original hal.dll v5687 in the system32 folder: nothing changed.
#6238Andalu⇗ @diderius6
previously I skipped to mention the behavior of the 'Multiprocessopr ACPI' mode during the XP installation:
the auto restart works at the end of the txt mode while fails at the end of the GUI setup, no other mode has this dual behavior on my board.

The only driver integrated into the XP-IE iso besides the acpi.sys is the sata/ahci.


EDIT: just installed the XP-IE2020.9.9 ISO on my sabrent NVMe drive (no other disks connected to the board) with integrated the samsung nvme driver only (and the patched acpi.sys): the restarts is still not working, so the driver sata/ahci can be excluded.
#6239diderius6⇗ @Andalu

"so the driver sata/ahci can be excluded"

For to exclude Sata, you have to disable it in registry (set Start=4 there in HKLM\System\currentcontrolset\services)
or rename the name of the Sata driver on \windows\system32\drivers
Dietmar
#6240Andalu⇗ @diderius6
that was the first check I did as soon as the installation was completed: no sata driver file present in the system32/drivers folder

 

Page 417

#6241diderius6⇗ @Andalu

Can you disable in Bios the Hpet timer?
Can you disable all sleeping states, only C1 not?
Can you disable the onboard graphikcard?
Make also try to disable "save to Ram"
Dietmar
#6242JeveesI'm searching for acpi.sys x64 for Z490 to instal windows XP x64. Are there any ?

Edit: nvm found it, works perfect
#6243juk777Hello, everyone! And why there are no statistics on configurations (Intel and AMD) "motherboard + cpu" with a successful installation of XP and with a specific version of acpi?
This would make life much easier for people who, for example, want to buy new hardware to install XP...
#6244Andalu⇗ @diderius6

I keep trying with the NVMe as system drive, no sata disks connected.

No success even disabling all the suggested settings one at a time or simultaneously. For the vga section the options are onboard, PCI express and PCI, so no "disabled" options available.
I have tried once again with a vga card but on restart the monitor turns off while the motherboard still remains on (CPU fan keeps spinning) and the OS frozen as always.

I have changed the setting of almost all bios options with no results. If it is a bios-related issue, shouldn't it also occur in uniprocessor acpi mode? (also reducing the number of cpu cores to 1 in the bios didn't help).
#6245diderius6⇗ @Andalu

"I have tried once again with a vga card but on restart the monitor turns off"
Try another VGA card.
I remember from Windows Embedded, that there was a program,
that force XP to shut down, but I dont remember the name, may be it was tool from XP itself
Dietmar
#6246diderius6⇗ @Mov AX, 0xDEAD

How can you see in running Vista or Win7, if you run a driver XDDM which was compiled with the Win7 DDK with
"legacy compatibilty "win2000 model display driver" settings,
or if the driver is compiled "normal" WDDM for 6.1 Win7 or higher
Dietmar
#6247JeveesI've successfully instaled XP x86 to my Z490 motherboard, but can't install XP x64, getting 0x000000CA BSOD during second phase of the installation. I've used acpi 5048 - 2019.10.19 (Intel&AMD Final) - daniel_k as it's the latest that have x64 acpi. Was able to bypass A5 error with it. And i've used x64 AHCI driver for Asmedia ASM106x controller integrated into ISO with Nlite to bypass 7B error. I've unpluged all external devices, turn off all onboard equipment in bios. No luck, 0X000000CA PnP bsod.
Any solution to this problem ?
#6248infuscomus⇗ @Jevees

Unless I'm not up to date with XP patches, there is still no solution for the CA BSOD on XP x64, it is the main reason we still recommend XP x86 over x64
#6249Jevees
Zitat von ⇗ infuscomus im Beitrag ¶ #6248
@Jevees

Unless I'm not up to date with XP patches, there is still no solution for the CA BSOD on XP x64, it is the main reason we still recommend XP x86 over x64

appreciate your help! May i also ask for Ethernet Driver for Windows 7 and XP x86 for Intel I225-V. Is it exist ? PCI\VEN_8086&DEV_15F3&SUBSYS_87D21043&REV_02\4&10ED824A&0&00E4
del-16YuriyCN

RTC bug fix - решение проблемы с уходом времени под WinXP

Причина:
В многопроцессорных ядрах Windows XP для генерации прерываний используется таймер, который находится в модуле RTC. Когда в Windows каким-то процессом меняется интервал системного таймера (1 -> 16 -> 1 -> 16 мс), то в модуле RTC переключается делитель тактовой частоты, от выхода которого идут прерывания для подсчета системных тиков. Делитель частоты находится в Status Register A CMOS RTC (offset - 0Ah). При каждом переключении возникает ошибка подсчёта импульсов. Чем чаще переключается делитель - тем чаще возникают ошибки, что приводит к неточному ходу времени. Проблема убрана начиная с Windows Vista.

Решение №1: Программа Timer_Fix + Source Code

Программа Timer_Fix с исходным кодом, написанная на Visual Studio 6.0. Программа не имеет интерфейса, после запуска она переведет системный таймер на период 1 мс и оставит его неизменным, программа постоянно висит в процессах до перезагрузки ОС. Для завершения работы (в случае необходимости) нужно просто прибить процесс Timer_Fix.exe через "Диспетчер задач". Каких-либо косяков от использования данного метода не обнаружено.

Скачать - ⇗ https://yadi.sk/d/KpTGDPITsNWn7w

Решение №2: Патч файла ntoskrnl.exe (предложил rmn). ---- Способ оказался НЕ РАБОТАЮЩИМ.

1. Переходим в c:\windows\system32
2. Создаем копию файла ntoskrnl.exe (оригинал мы патчить не можем, потому что система блокирует доступ к своему ядру).
3. Переименовываем оригинальный файл в ntoskrnl.bak, а копию - в ntoskrnl.exe и открываем последний в CFF Explorer.
4. В Export Directory находим функцию KeQueryTimeIncrement и копируем ее Function RVA.
5. Переходим по данному rva в Address Converter и патчим байты на EB FE (инкремент времени не будет таким образом зависеть от делителя частоты таймера).
6. Сохраняем изменения и перезагружаемся.

Готовые файлы - УДАЛЕН. Способ оказался НЕ РАБОТАЮЩИМ.

==========================================================================

Windows XP mod 2021 - сборка системы для современного ПК (редакция 08.01.2021)

Вся информация в TXT файле (75кБ) - ⇗ https://yadi.sk/d/pUsunDIheystaw

#6250Jevees
Zitat von ⇗ Jevees im Beitrag ¶ #6249
May i also ask for Ethernet Driver for Windows 7 and XP x86 for Intel I225-V. Is it exist ? PCI\VEN_8086&DEV_15F3&SUBSYS_87D21043&REV_02\4&10ED824A&0&00E4


Made the driver for Win7 by editing ini file from Windows10 driver. Works great. Now just needs driver for XP x86 please
#6251daniel_k⇗ @diderius6

I think you're taking the wrong approach to patch the driver.

You didn't even patch the device ID check.

What is the exact device ID of your Baytrail graphics? Is it similar to HD 2500?
#6252daniel_k
Zitat von ⇗ Jevees im Beitrag ¶ #6250
Made the driver for Win7 by editing ini file from Windows10 driver. Works great. Now just needs driver for XP x86 please

No x86 driver exists, it's a lost cause.
#6253daniel_k⇗ @Mov AX, 0xDEAD

Zitat
Решение №2: Патч файла ntoskrnl.exe (предложил rmn)

1. Переходим в c:\windows\system32
2. Создаем копию файла ntoskrnl.exe (оригинал мы патчить не можем, потому что система блокирует доступ к своему ядру).
3. Переименовываем оригинальный файл в ntoskrnl.bak, а копию - в ntoskrnl.exe и открываем последний в CFF Explorer.
4. В Export Directory находим функцию KeQueryTimeIncrement и копируем ее Function RVA.
5. Переходим по данному rva в Address Converter и патчим байты на EB FE (инкремент времени не будет таким образом зависеть от делителя частоты таймера).
6. Сохраняем изменения и перезагружаемся.

Готовые файлы - ⇗ https://www.upload.ee/files/12747026/RTC...oskrnl.zip.html


What do you think of this patch?

#6254diderius6⇗ @daniel_k

The problem seems to be the Magic Numbers.
Oh, I tried a lot but never has been a correct entry for maxmem in registry
for the Baytrail board. This means, that the Baytrail VGA is not correct recogniced by the driver.
The driver 5449 has already (!) DEV entry for 0F31h, but for some crazy reasons does not work.
But there is no text in hardware description for Baytrail in this 5449 driver, so it may be uncomplete for Baytrail.
In Win7, you can mix device ID for HD2500 or HD4000 with Baytrail as you wish,
driver works always. The hardware is nearly identic to HD2500 but with less lines (6 on HD2500, 16 on HD4000, 4 for Baytrail)
The driver ID for this Baytrail device  is VEN_8086&DEV_0F31
Dietmar

EDIT: The magic numbers for HD2500 and HD4000 are 9, 9, Ch on XP
and for Baytrail 9, 7, (5?), Eh.
I check the mod of ⇗ @canonkong for win7. He does not change the Magic Numbers in the driver.

Here I upload the 2 interesting drivers for Baytrail (XP and Win7 (compiled for win2000?))

⇗ https://ufile.io/0dc2gsls
#6255Andalu⇗ @diderius6
even using other two different ati video cards the behavior remains the same:
- on the ati drivers (tried two versions) the monitor goes to sleep but motherboard and vga card are still on;
- without the ati drivers the system hangs on the "windows is shutting down" screen (so the monitor also remains on) as happens for the onboard vga.

I don't know that program, would it also work for the restart?

Another question: do the tables extracted (dsdt, ssdt, facs, facs, rsdt etc.) from a live system using the acpidump.exe command from the iasl compiler package remain identical even if extracted from an operating system other than XP?


⇗ @infuscomus
have you ever used easy2boot without a PCIEx video card? I'm afraid that even to load a modded dsdt table you need to use an external vga card, otherwise you can see graphic artifacts: full screen of horizontal lines or only part of the desktop being displayed as happened several times in my attempts.

 

Page 418

#6256diderius6⇗ @Andalu

"Another question: do the tables extracted (dsdt, ssdt, facs, facs, rsdt etc.) from a live system using the acpidump.exe command from the iasl compiler package remain identical even if extracted from an operating system other than XP?"

I test this a year ago. Those tables are very similar but not identic.
So you cant change them from other OS to XP, only get ideas from them
Dietmar
#6257infuscomus
Zitat von ⇗ Andalu im Beitrag ¶ #6255
have you ever used easy2boot without a PCIEx video card?


The systems I used Easy2boot on always use a dedicated PCI-E video card, I did not test on a system with an iGPU because I did not have any with drivers for XP.

Zitat von ⇗ Andalu im Beitrag ¶ #6255
Another question: do the tables extracted (dsdt, ssdt, facs, facs, rsdt etc.) from a live system using the acpidump.exe command from the iasl compiler package remain identical even if extracted from an operating system other than XP?


I would assume they would be the same, but I don't know for sure.
#6258daniel_k
Zitat von ⇗ diderius6 im Beitrag ¶ #6254
The problem seems to be the Magic Numbers.

No, the driver is not loaded because device ID check fails.

Zitat
Oh, I tried a lot but never has been a correct entry for maxmem in registry
for the Baytrail board. This means, that the Baytrail VGA is not correct recogniced by the driver.


Because of the above, the driver gets unloaded before writing registry info.

Zitat
The driver 5449 has already (!) DEV entry for 0F31h, but for some crazy reasons does not work.


No, it doesn't. the 0F31h you see in the code is just a coincidence. It's used for another purpose.

Zitat
The driver ID for this Baytrail device  is VEN_8086&DEV_0F31


You need to use the same codes for 0152/0156/015A

Zitat
EDIT: The magic numbers for HD2500 and HD4000 are 9, 9, Ch on XP


Correct, but it varies and they are just presets so the driver knows the device it is being in use.

Actual device checks are in at least 2 places (maybe more checks).


First check:

Maybe you can JMP directly to 10021B74, not sure. (note the JG, jmp if greater, opcodes).

 
.text:10020ECB                 cmp     [ebp+var_5C4], 0C06h
.text:10020ED5 jg loc_10021106
.text:10020EDB cmp [ebp+var_5C4], 0C06h
.text:10020EE5 jz loc_10021CAE ; jumptable 10021046 case 1046
.text:10020EE5 ; ...
.text:10020EEB cmp [ebp+var_5C4], 406h
.text:10020EF5 jg loc_10020FDE
.text:10020EFB cmp [ebp+var_5C4], 406h
.text:10020F05 jz loc_10021CAE ; jumptable 10021046 case 1046
.text:10020F05 ; ...
.text:10020F0B cmp [ebp+var_5C4], 122h
.text:10020F15 jg short loc_10020F5A
.text:10020F17 cmp [ebp+var_5C4], 122h
.text:10020F21 jz loc_10021B0A ; jumptable 10020F53 cases 258,262,266,267,274,278
.text:10020F21 ; jumptable 10020FA2 case 294
.text:10020F27 mov ecx, [ebp+var_5C4]
.text:10020F2D sub ecx, 42h ; 'B' ; switch 213 cases
.text:10020F30 mov [ebp+var_5C4], ecx
.text:10020F36 cmp [ebp+var_5C4], 0D4h
.text:10020F40 ja def_10020F53 ; jumptable 10020F53 default case, cases 67-69,71-143,147-257,259-261,263-265,268-273,275-277
.text:10020F40 ; ...
.text:10020F46 mov edx, [ebp+var_5C4]
.text:10020F4C movzx eax, ds:byte_100230F8[edx]
.text:10020F53 jmp ds:jpt_10020F53[eax*4] ; switch jump
.text:10020F5A cmp [ebp+var_5C4], 162h
.text:10020F64 jg short loc_10020FA9
.text:10020F66 cmp [ebp+var_5C4], 162h
.text:10020F70 jz loc_10021BDE
.text:10020F76 mov ecx, [ebp+var_5C4]
.text:10020F7C sub ecx, 126h ; switch 53 cases
.text:10020F82 mov [ebp+var_5C4], ecx
.text:10020F88 cmp [ebp+var_5C4], 34h
.text:10020F8F ja def_10020F53 ; jumptable 10020F53 default case, cases 67-69,71-143,147-257,259-261,263-265,268-273,275-277
.text:10020F8F ; ...
.text:10020F95 mov edx, [ebp+var_5C4]
.text:10020F9B movzx eax, ds:byte_100231D9[edx]
.text:10020FA2 jmp ds:jpt_10020FA2[eax*4] ; switch jump



which should jmp to:

 
.text:10021B74                 mov     eax, [ebp+arg_0] ; jumptable 10020FA2 cases 338,342,346
.text:10021B77 mov dword ptr [eax+208h], 9
.text:10021B81 mov ecx, [ebp+arg_0]
.text:10021B84 mov dword ptr [ecx+204h], 9
.text:10021B8E mov edx, [ebp+arg_0]
.text:10021B91 mov dword ptr [edx+1FCh], 0Ch
.text:10021B9B mov eax, [ebp+arg_0]
.text:10021B9E mov ecx, [eax+0DCh]
.text:10021BA4 or ecx, 80000000h
.text:10021BAA mov edx, [ebp+arg_0]
.text:10021BAD mov [edx+0DCh], ecx
.text:10021BB3 push offset aIntelRHdGraphi_2 ; "Intel(R) HD Graphics Family"
.text:10021BB8 lea eax, [ebp+var_208]
.text:10021BBE push eax
.text:10021BBF mov ecx, [ebp+arg_0]
.text:10021BC2 push ecx
.text:10021BC3 call sub_1002F2D0
.text:10021BC8 mov [ebp+var_478], 38h ; '8'
.text:10021BD2 mov [ebp+var_469], 0
.text:10021BD9 jmp loc_10021D24



Second check:

 
.text:10023FA7                 cmp     dword ptr [ecx+1Ch], 152h
.text:10023FAE jz short loc_10023FC8
.text:10023FB0 mov edx, [ebp+arg_0]
.text:10023FB3 cmp dword ptr [edx+1Ch], 156h
.text:10023FBA jz short loc_10023FC8
.text:10023FBC mov eax, [ebp+arg_0]
.text:10023FBF cmp dword ptr [eax+1Ch], 15Ah
.text:10023FC6 jnz short loc_10024017
.text:10023FC8
.text:10023FC8 loc_10023FC8: ; CODE XREF: sub_10023A60+54E\u2191j
.text:10023FC8 ; sub_10023A60+55A\u2191j
.text:10023FC8 cmp [ebp+var_4], 0Ah
.text:10023FCC jz short loc_10023FDA
.text:10023FCE cmp [ebp+var_4], 0Bh
.text:10023FD2 jz short loc_10023FDA
.text:10023FD4 cmp [ebp+var_4], 0Dh
.text:10023FD8 jnz short loc_10023FF7
.text:10023FDA
.text:10023FDA loc_10023FDA: ; CODE XREF: sub_10023A60+56C\u2191j
.text:10023FDA ; sub_10023A60+572\u2191j
.text:10023FDA push offset aIntelRHdGraphi_15 ; "Intel(R) HD Graphics 2500"
.text:10023FDF mov ecx, [ebp+arg_4]
.text:10023FE2 push ecx
.text:10023FE3 mov edx, [ebp+arg_0]
.text:10023FE6 push edx
.text:10023FE7 call sub_1002F2D0
.text:10023FEC mov eax, [ebp+arg_C]
.text:10023FEF mov dword ptr [eax], 34h ; '4'
.text:10023FF5 jmp short loc_10024012
#6259diderius6⇗ @daniel_k
Thanks for help!
At the 2 places you show above,
I tried a lot of time to jmp with DEV_0F31, but it does not work.
When I change the Magic Number for the DEV_0166 device to 9, 5, Eh on the Lenovo x230 board,
exact the same symptoms are shown as for the 0F31, the device is not reconiced any longer.
So, the Magic Numbers are important and the correct numbers seem to be needed for the next steps
When you change them from 9, 9, 0Ch => 9, 5, 0E as seen on the win7 settings for the Baytrail device,
it does not work either
Dietmar
#6260daniel_k⇗ @diderius6

Do you understand the code flow?

First check, at
.text:10020ECB                 cmp     [ebp+var_5C4], 0C06h
change to
.text:10020ECB                 jmp     loc_10021B74
Second check, at
.text:10023FAE                 jz      short loc_10023FC8
change to
.text:10023FAE                 jmp     short loc_10023FDA
#6261Andalu⇗ @diderius6  ⇗ @infuscomus

I asked about the tables and the different OSes because I noticed a strange (for my limited knowledge) behavior:
the tables extracted from Win10 x64 via iasl20210105 (*.dat files) are identical (same SHA-1) to the ones extracted in XP Multiprocessor ACPI via RWeverything (*.raw files) except only one, the ssdt4 table. Instead, using the same iasl version in Win10 x32, the different tables are eight

In a very simplistic way, I tried to load the ssdt4.aml (obtained via 'iasl -d ssdt4.dat' and 'iasl -f ssdt4.dsl' commands) from Win10 x64 in XP with the easy2boot method and on restart I got the "new hardware recognized" screen about a "ACPI\INT0E0C\2&DABA3FF&0" device for which the system has automatically found the related driver.
But also this time the restart failed.

Edit: I forgot to mention the description for the new device: 'Software Guard Extensions' which is disabled in the bios.
#6262diderius6⇗ @daniel_k

I did the changes from you,
but still the same behavior, the VGA device is not recogniced.
I am quite sure, that it is because of wrong Magic Numbers.

Now they are 9, 9, 0Ch
but for Baytrail they should be
9, 5(7?), 0Eh

Dietmar

⇗ https://ufile.io/3zxif4z7

PS: Entries in registry Service ialm for example for maxmem are still missing.
#6263Mov AX, 0xDEAD
Zitat von ⇗ daniel_k im Beitrag ¶ #6253
@Mov AX, 0xDEAD
Zitat

5. Переходим по данному rva в Address Converter и патчим байты на EB FE (инкремент времени не будет таким образом зависеть от делителя частоты таймера)

What do you think of this patch?


⇗ @daniel_k
I dont loaded these files yet, but EB FE is hard joke, probably mistake in post

EDIT: this is real joke:
1) infinite loop
2) return in eax random trash
3) opcode inserted in relocation offset, after loading kernel to 0x8xxxxx adress, "jmp" offset will be overrided

#6264diderius6⇗ @daniel_k

I change in *.inf
the 0F31 entry back to its original one

%iIVBGD0GT1%    = iIVBD0, PCI\VEN_8086&DEV_0152

Now I get BSOD 0x7E (C00000005, xxx, yyy, zzz)

exact as in the beginning of my tries for the Baytrail driver
Dietmar

EDIT: I find with Ida pro the place in igxpmp32.sys where this Bsod happens

.text:10188080 ; =============== S U B R O U T I N E =======================================
.text:10188080
.text:10188080 ; Attributes: bp-based frame
.text:10188080
.text:10188080 sub_10188080 proc near ; DATA XREF: sub_10187750+183↑o
.text:10188080
.text:10188080 var_1 = byte ptr -1
.text:10188080 arg_0 = dword ptr 8
.text:10188080 arg_4 = byte ptr 0Ch
.text:10188080
.text:10188080 push ebp
.text:10188081 mov ebp, esp
.text:10188083 push ecx
.text:10188084 mov [ebp+var_1], 0
.text:10188088 mov al, [ebp+arg_4]
.text:1018808B push eax
.text:1018808C mov ecx, [ebp+arg_0]
.text:1018808F mov edx, [ecx+0F6Ch]
.text:10188095 push edx
.text:10188096 mov eax, [ebp+arg_0]
.text:10188099 mov ecx, [eax+0F6Ch]
.text:1018809F call dword ptr [ecx+54h]
.text:101880A2 mov al, [ebp+var_1]
.text:101880A5 mov esp, ebp
.text:101880A7 pop ebp
.text:101880A8 retn 8
.text:101880A8 sub_10188080 endp
.text:101880A8



Microsoft (R) Windows Debugger Version 6.12.0002.633 X86
Copyright (c) Microsoft Corporation. All rights reserved.

Opened \\.\com1
Waiting to reconnect...
Connected to Windows XP 2600 x86 compatible target at (Sun Jan 10 23:03:54.015 2021 (UTC + 1:00)), ptr64 FALSE
Kernel Debugger connection established.
Symbol search path is: C:\WINDOWS\symbols
Executable search path is: C:\WINDOWS\symbols
Windows XP Kernel Version 2600 MP (1 procs) Checked x86 compatible
Built by: 2600.xpsp.080413-2133
Machine Name:
Kernel base = 0x80a02000 PsLoadedModuleList = 0x80b019e8
System Uptime: not available
Break instruction exception - code 80000003 (first chance)
nt!DbgBreakPoint:
80ac37e0 cc int 3
kd> g
MM: Loader/HAL memory block indicates large pages cannot be used for 80100000->8012777F
MM: Loader/HAL memory block indicates large pages cannot be used for 80F86000->81CDEFFF
MM: Disabling large pages for all ranges due to overlap
PS: Unhandled Kernel Mode Exception Pointers = 0xB9D16E5C
Code c0000005 Addr 00000000 Info0 00000008 Info1 00000000 Info2 00000000 Info3 00000000

*** Fatal System Error: 0x0000007e
(0xC0000005,0x00000000,0xB9D17310,0xB9D1700C)

Break instruction exception - code 80000003 (first chance)

A fatal system error has occurred.
Debugger entered on first try; Bugcheck callbacks have not been invoked.

A fatal system error has occurred.

Connected to Windows XP 2600 x86 compatible target at (Sun Jan 10 23:04:25.812 2021 (UTC + 1:00)), ptr64 FALSE
Loading Kernel Symbols
...............................................
Loading User Symbols

*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

Use !analyze -v to get detailed debugging information.

BugCheck 7E, {c0000005, 0, b9d17310, b9d1700c}

*** ERROR: Module load completed but symbols could not be loaded for mssmbios.sys
*** ERROR: Symbol file could not be found. Defaulted to export symbols for VIDEOPRT.SYS -
*** No owner thread found for resource 80afd640
*** No owner thread found for resource 80afd640
*** No owner thread found for resource 80afd640
*** No owner thread found for resource 80afd640
Probably caused by : igxpmp32.sys ( igxpmp32+1880a2 )

Followup: MachineOwner
---------

nt!RtlpBreakWithStatusInstruction:
80ac37ec cc int 3
0: kd> !analyze -v
*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

SYSTEM_THREAD_EXCEPTION_NOT_HANDLED (7e)
This is a very common bugcheck. Usually the exception address pinpoints
the driver/function that caused the problem. Always note this address
as well as the link date of the driver/image that contains this address.
Arguments:
Arg1: c0000005, The exception code that was not handled
Arg2: 00000000, The address that the exception occurred at
Arg3: b9d17310, Exception Record Address
Arg4: b9d1700c, Context Record Address

Debugging Details:
------------------

*** No owner thread found for resource 80afd640
*** No owner thread found for resource 80afd640
*** No owner thread found for resource 80afd640
*** No owner thread found for resource 80afd640

EXCEPTION_CODE: (NTSTATUS) 0xc0000005 - Die Anweisung in "0x%08lx" verweist auf Speicher in "0x%08lx". Der Vorgang "%s" konnte nicht auf dem Speicher durchgef hrt werden.

FAULTING_IP:
+1562faf009bdfc0
00000000 ?? ???

EXCEPTION_RECORD: b9d17310 -- (.exr 0xffffffffb9d17310)
ExceptionAddress: 00000000
ExceptionCode: c0000005 (Access violation)
ExceptionFlags: 00000000
NumberParameters: 2
Parameter[0]: 00000008
Parameter[1]: 00000000
Attempt to execute non-executable address 00000000

CONTEXT: b9d1700c -- (.cxr 0xffffffffb9d1700c)
eax=89be7000 ebx=e12731c0 ecx=89be8da0 edx=89be8da0 esi=89b260f8 edi=b9d17664
eip=00000000 esp=b9d173d8 ebp=b9d173e8 iopl=0 nv up ei ng nz na pe nc
cs=0008 ss=0010 ds=0023 es=0023 fs=0030 gs=0000 efl=00010286
00000000 ?? ???
Resetting default scope

DEFAULT_BUCKET_ID: DRIVER_FAULT

PROCESS_NAME: System

ERROR_CODE: (NTSTATUS) 0xc0000005 - Die Anweisung in "0x%08lx" verweist auf Speicher in "0x%08lx". Der Vorgang "%s" konnte nicht auf dem Speicher durchgef hrt werden.

EXCEPTION_PARAMETER1: 00000008

EXCEPTION_PARAMETER2: 00000000

WRITE_ADDRESS: 00000000

FOLLOWUP_IP:
igxpmp32+1880a2
b94b40a2 8a45ff mov al,byte ptr [ebp-1]

FAILED_INSTRUCTION_ADDRESS:
+1562faf009bdfc0
00000000 ?? ???

BUGCHECK_STR: 0x7E

LOCK_ADDRESS: 80afd6c0 -- (!locks 80afd6c0)

Resource @ nt!IopDeviceTreeLock (0x80afd6c0) Shared 1 owning threads
Threads: 89c80b30-01<*>
1 total locks, 1 locks currently held

PNP_TRIAGE:
Lock address : 0x80afd6c0
Thread Count : 1
Thread address: 0x89c80b30
Thread wait : 0x141

LAST_CONTROL_TRANSFER: from 80a30d7b to 80ac37ec

STACK_TEXT:
WARNING: Frame IP not in any known module. Following frames may be wrong.
b9d173d4 b94b40a2 89be8da0 89be7000 00be7000 0x0
b9d173e8 b94a3bca 89be7000 00000000 00000003 igxpmp32+0x1880a2
b9d17408 b94cb7a2 89be5008 00be5008 b9d17430 igxpmp32+0x177bca
b9d17418 b9476c55 89be5008 89bf8a88 89bf8960 igxpmp32+0x19f7a2
b9d17430 b9440d9c 89bf44fc 00000007 b9d17454 igxpmp32+0x14ac55
b9d17440 b93e753c 89bf0000 00000004 89bf0000 igxpmp32+0x114d9c
b9d17454 b93be40e 89bf8a88 89bf8960 43544e49 igxpmp32+0xbb53c
b9d17510 b93c4d44 89bf8720 89bf8960 00000057 igxpmp32+0x9240e
b9d17524 b932ddde 89b26358 89b26358 e12731c0 igxpmp32+0x98d44
b9d1753c b9593fbd 89b26358 00000000 89c6d500 igxpmp32+0x1dde
b9d17664 b932f9cd 89b26358 00000000 00000000 igxpmp32+0x267fbd
b9d17684 b9327318 89b26358 00000000 00000000 igxpmp32+0x39cd
b9d17888 b9327c9a 89ba3308 89ba33e0 89ba33e8 VIDEOPRT!VideoPortQueryServices+0x76a
b9d178b4 b9321c41 89ba3308 89ba33e0 89ba33e8 VIDEOPRT!VideoPortCreateSecondaryDisplay+0x3cc
b9d17a20 80a21c8d 89b26040 89b69e70 89b26040 VIDEOPRT!VideoPortGetVgaStatus+0x883
b9d17a38 80b5e526 b9d17aa8 89c8fa48 89c6d448 nt!IopfCallDriver+0x51
b9d17a64 80b5e66e 89b26040 b9d17a84 00000000 nt!IopSynchronousCall+0xf0
b9d17aac 80a2c123 89c6d448 00000001 00000000 nt!IopStartDevice+0x82
b9d17ac8 80b5d2e8 89c6d448 89c19801 00000000 nt!PipProcessStartPhase1+0x9f
b9d17d24 80b5dbe4 89c9cb90 00000001 00000000 nt!PipProcessDevNodeTree+0x238
b9d17d58 80a2d0b3 89c198d8 89c80b30 80b1365c nt!PiProcessStartSystemDevices+0x70
b9d17d80 80ad51a9 00000000 00000000 89c80b30 nt!PipDeviceActionWorker+0x187
b9d17dac 80bd81ac 00000000 00000000 00000000 nt!ExpWorkerThread+0x10f
b9d17ddc 80ae4212 80ad509a 00000001 00000000 nt!PspSystemThreadStartup+0x34
00000000 00000000 00000000 00000000 00000000 nt!KiThreadStartup+0x16


SYMBOL_STACK_INDEX: 1

SYMBOL_NAME: igxpmp32+1880a2

FOLLOWUP_NAME: MachineOwner

MODULE_NAME: igxpmp32

IMAGE_NAME: igxpmp32.sys

DEBUG_FLR_IMAGE_TIMESTAMP: 52eae6bc

STACK_COMMAND: .cxr 0xffffffffb9d1700c ; kb

FAILURE_BUCKET_ID: 0x7E_NULL_IP_igxpmp32+1880a2

BUCKET_ID: 0x7E_NULL_IP_igxpmp32+1880a2

Followup: MachineOwner
---------

0: kd> !DEVNODE 0 1
Dumping IopRootDeviceNode (= 0x89c9cb90)
DevNode 0x89c9cb90 for PDO 0x89c9ccd8
InstancePath is "HTREE\ROOT\0"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x89c9c760 for PDO 0x89c9c8c0
InstancePath is "Root\ACPI_HAL\0000"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x89c6ced8 for PDO 0x89c98de0
InstancePath is "ACPI_HAL\PNP0C08\0"
ServiceName is "ACPI"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x89c86438 for PDO 0x89c33108
InstancePath is "ACPI\PNP0B00\2&daba3ff&0"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x89c86308 for PDO 0x89c8a1f8
InstancePath is "ACPI\PNP0103\0"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x89c861d8 for PDO 0x89c22c48
InstancePath is "ACPI\PNP0A08\0"
ServiceName is "pci"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x89c8fb78 for PDO 0x89c72408
InstancePath is "PCI\VEN_8086&DEV_0F00&SUBSYS_00000000&REV_0E\3&11583659&0&00"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x89c8fa48 for PDO 0x89c6d448
InstancePath is "PCI\VEN_8086&DEV_0F31&SUBSYS_0F311849&REV_0E\3&11583659&0&10"
ServiceName is "ialm"
State = DeviceNodeResourcesAssigned (0x304)
Previous State = DeviceNodeDriversAdded (0x303)
#6265pappyN4Success for Win8 generic USB3 driver for XP x64.  Full credit to Mov AX, 0xDEAD for showing the way.

¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (328)
¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware

WDF 1.11 is same. Some minor differences for x64 USB compared to x86.

KeInitializeSpinLock exists for x86 ntoskrnl.exe but for x64 function needs to be added in emu_extender.  Also, usbd.sys also needs to be changed to use ntoskrn8. For anyone trying this, you can use a hex editor like hexplorer to change and Dependency Walker to make sure everything links together.   PEChecksum.exe when finished with changes.

x86
wpprecorde8 - no change - KeInitSpinLock from ntoskrnl.exe
usb8 - no change  - KeInitSpinLock from ntoskrnl.exe
ucx01000 - change to wpprecorde8 and ntoskrn8.sys - KeInitSpinLock from ntoskrn8->ntoskrnl.exe
usbxhci- change to wpprecorde8 and ntoskrn8.sys - KeInitSpinlock from ntoskrn8->ntoskrnl.exe
usbhub3 - change to wpprecorde8 and ntoskrn8.sys ksecd8 usb8 - KeInitSpinlock from ntoskrn8->ntoskrnl.exe

x64
wpprecorde8 - no change - does not use KeInitSpinLock
usb8 - change to ntoskrn8.sys - KeInitSpinLock from ntoskrn8:function
ucx01000 - change to wpprecorde8 and ntoskrn8.sys - KeInitSpinLock from ntoskrn8:function
usbxhci - change to wpprecorde8 and ntoskrn8.sys - KeInitSpinLock from ntoskrn8:function
usbhub3 - change to wpprecorde8 and ntoskrn8.sys ksecd8 usb8 - KeInitSpinlock from ntoskrn8:function


ksecd8 same as x86 instructions

__security_cookie does need to be changed.  If you skip it, driver will BSOD on you.  I used IDA free to lookup the hex position value of where the cookie is then changed to a random value
x86
usb8 6.2.9200.20761
hexposition: 1600
value: 4E E6 40 BB

ucx01000 6.2.9200.22453
hexposition: 14E00
value: 4E E6 40 BB

usbhub3 6.2.9200.21180
hexposition: 27C00
value: 4E E6 40 BB

usbxhci 6.2.9200.22099
hexposition: 2A800
value: 4E E6 40 BB

wpprecorde8 6.2.9200.16384
hexposition: 1E00
value: 4E E6 40 BB

x64
usbxhci 6.2.9200.22099
hexposition: 39100
value: 32 A2 DF 2D 99 2B

ucx01000 6.2.9200.22453
hexposition: 1AD00
value: 32 A2 DF 2D 99 2B

usb8 6.2.9200.20761
hexposition: 2100
value: 32 A2 DF 2D 99 2B

wpprecorde8 6.2.9200.16384
hexposition: 2500
value: 32 A2 DF 2D 99 2B

usbhub3 6.2.9200.21180
hexposition: 32D00
value: 32 A2 DF 2D 99 2B



For emu_extender, the following changes.  Add KeInitializeSpinLock_k8 function, thanks Mov AX, 0xDEAD.  Then modify one existing function.   Changes in bold.

void FASTCALL
KeInitializeSpinLock_k8(
KSPIN_LOCK* SpinLock)
{
*SpinLock = 0;
}


void
Initialize (PUNICODE_STRING RegistryPath)
{
KLOCK_QUEUE_HANDLE LockHandle;

g_GuardedRegionCounter = 0;

KeInitializeSpinLock_k8(&g_SpinWorkerRoutineArray);
KeAcquireInStackQueuedSpinLock(&g_SpinWorkerRoutineArray, &LockHandle);
{
g_LastUsedWorkerRoutineArray_Entry = 0;
RtlZeroMemory(WorkerRoutineArray, sizeof(WorkerRoutineArray));
}
KeReleaseInStackQueuedSpinLock(&LockHandle);

KeInitializeSpinLock_k8(&g_SpinCreateProcessNotifyExArray);
KeAcquireInStackQueuedSpinLock(&g_SpinCreateProcessNotifyExArray, &LockHandle);
{
g_LastUsedCreateProcessNotifyExArray_Entry = 0;
RtlZeroMemory(CreateProcessNotifyExArray, sizeof(CreateProcessNotifyExArray));
}
KeReleaseInStackQueuedSpinLock(&LockHandle);

}


ADD
#pragma comment (linker, "/export:__C_specific_handler=ntoskrnl.__C_specific_handler")
#pragma comment (linker, "/export:_local_unwind=ntoskrnl._local_unwind")
#pragma comment (linker, "/export:_purecall=ntoskrnl._purecall")
#pragma comment (linker, "/export:_snwprintf=ntoskrnl._snwprintf")
#pragma comment (linker, "/export:_stricmp=ntoskrnl._stricmp")
#pragma comment (linker, "/export:_strnicmp=ntoskrnl._strnicmp")
#pragma comment (linker, "/export:_vsnwprintf=ntoskrnl._vsnwprintf")
#pragma comment (linker, "/export:_wcsicmp=ntoskrnl._wcsicmp")
#pragma comment (linker, "/export:_wcsnicmp=ntoskrnl._wcsnicmp")
#pragma comment (linker, "/export:ExAcquireFastMutex=ntoskrnl.ExAcquireFastMutex")
#pragma comment (linker, "/export:ExpInterlockedPopEntrySList=ntoskrnl.ExpInterlockedPopEntrySList")
#pragma comment (linker, "/export:ExpInterlockedPushEntrySList=ntoskrnl.ExpInterlockedPushEntrySList")
#pragma comment (linker, "/export:ExQueryDepthSList=ntoskrnl.ExQueryDepthSList")
#pragma comment (linker, "/export:ExReleaseFastMutex=ntoskrnl.ExReleaseFastMutex")
#pragma comment (linker, "/export:IoIs32bitProcess=ntoskrnl.IoIs32bitProcess")
#pragma comment (linker, "/export:IoWMIDeviceObjectToProviderId=ntoskrnl.IoWMIDeviceObjectToProviderId")
#pragma comment (linker, "/export:KeAcquireSpinLockRaiseToDpc=ntoskrnl.KeAcquireSpinLockRaiseToDpc")
#pragma comment (linker, "/export:KeLowerIrql=ntoskrnl.KeLowerIrql")
#pragma comment (linker, "/export:KeReleaseSpinLock=ntoskrnl.KeReleaseSpinLock")
#pragma comment (linker, "/export:KfRaiseIrql=ntoskrnl.KfRaiseIrql")

CHANGED FROM
#pragma comment (linker, "/export:KeInitializeSpinLock=ntoskrnl.KeInitializeSpinLock")

TO
#pragma comment (linker, "/export:KeInitializeSpinLock=KeInitializeSpinLock_k8")



Using the x86 as guide I think i found the correct spot to make the change for x64 version for USB3.0 speed reporting fix.  USBTreeView shows as (0x03 (Super-Speed))

 
x86
usbhub3 6.2.9200.21180
hexposition: 9058
change: 75 09 -> EB 09 (jnz -> jmp)

x64
usbhub3 6.2.9200.21180
hexposition: A44B
change: 75 0A -> EB 0A (jnz -> jmp)




change inf NTamd64 -> NTx86 if using for x86

;
; usbhub3.inf
;
; Copyright (c) Microsoft Corporation. All rights reserved.
;

[Version]
signature="$Windows NT$"
Class=USB
ClassGUID={36FC9E60-C465-11CF-8056-444553540000}
Provider=%Msft%
DriverVer=05/01/2018,6.2.9200.16384

[SourceDisksNames]
1="Generic USB 3.0 Hub Driver"

[SourceDisksFiles]
usbhub3.sys = 1
usb8.sys = 1
ksecd8.sys = 1

[ControlFlags]
BasicDriverOk = *
ExcludeFromSelect = *

[DestinationDirs]
DefaultDestDir = 12

[Manufacturer]
%GenericHub.Mfg%=GenericHub, NTamd64

;
; ---------------------- HUB3 Controllers ----------------------
;

[GenericHub.NTamd64]
%UsbHub3.RootHubDeviceDesc%=GenericHub.Install, USB\ROOT_HUB30
%UsbHub3.Usb30HubDesc%=GenericHub.Install, USB\USB30_HUB
%UsbHub3.Usb20HubDesc%=GenericHub.Install, USB\USB20_HUB

[GenericHub.Install.NT]
CopyFiles=GenericHub.CopyFiles

[GenericHub.Install.NT.Services]
AddService=USBHUB3, 2, GenericHub.AddService

[GenericHub.AddService]
DisplayName = %UsbHub3.SVCDESC%
ServiceType = 1 ; SERVICE_KERNEL_DRIVER
StartType = 3 ; SERVICE_DEMAND_START
ErrorControl = 1 ; SERVICE_ERROR_NORMAL
ServiceBinary = %12%\UsbHub3.sys
LoadOrderGroup = Base
AddReg = ServiceHub_AddReg

[GenericHub.Install.NT.WMI]
; Set access permissions for UI WMI GUIDs
WMIInterface = {4E623B20-CB14-11D1-B331-00A0C959BBD2},,WMIGuidSecurity_AllRights

[ServiceHub_AddReg]
HKR, , BootFlags, 0x00010001, 16 ; CM_SERVICE_USB3_DISK_BOOT_LOAD
HKR, Parameters\Wdf, LogPages, 0x00010001, 3 ; KMDF IFR size
HKR, Parameters, LogPages, 0x00010001, 3 ; Driver IFR size
;
; Create a dummy usbhub services key because UxD relies on it.
;
HKLM, SYSTEM\CurrentControlSet\Services\usbhub,,0x00000010
;
; Fixes the power off when a safely remove hardware command was send.
;
HKLM, "SYSTEM\CurrentControlSet\Services\usbhub\hubg", "DisableOnSoftRemove", 0x00010001, "1"

[GenericHub.CopyFiles]
usbhub3.sys
usb8.sys
ksecd8.sys

;
; --------------------------- Strings --------------------------
;

[Strings]
;Non-Localizable
Msft = "Microsoft"

;Localizable
GenericHub.Mfg = "(Standard USB HUBs)"
UsbHub3.RootHubDeviceDesc = "USB Root Hub (xHCI)"
UsbHub3.Usb30HubDesc = "Generic SuperSpeed USB Hub"
UsbHub3.Usb20HubDesc = "Generic USB Hub"
UsbHub3.SVCDESC = "SuperSpeed Hub"



;
; usbxhci.inf
;
; Copyright (c) Microsoft Corporation. All rights reserved.
;

[Version]
signature="$Windows NT$"
Class=USB
ClassGUID={36FC9E60-C465-11CF-8056-444553540000}
Provider=%Msft%
DriverVer=05/01/2018,6.2.9200.16384

[SourceDisksNames]
1="Generic USB xHCI Host Controller"

[SourceDisksFiles]
usbxhci.sys = 1
ucx01000.sys = 1
WppRecorde8.sys = 1

[ControlFlags]
BasicDriverOk = *
ExcludeFromSelect = *

[DestinationDirs]
DefaultDestDir = 12

[Manufacturer]
%Generic.Mfg%=Generic, NTamd64

;
; ---------------------- xHCI Controllers ----------------------
;

[Generic.NTamd64]
%PCI\CC_0C0330.DeviceDesc%=Generic.Install,PCI\CC_0C0330
%ACPI\PNP0D10.DeviceDesc%=Generic.Install,ACPI\PNP0D10

[Generic.Install.NT]
CopyFiles=Generic.CopyFiles
ExcludeID=PCI\VEN_1B73&DEV_1000&CC_0C0330
ExcludeID=PCI\VEN_1B73&DEV_1400&CC_0C0330
ExcludeID=PCI\VEN_1B73&DEV_1009&REV_00
ExcludeID=PCI\VEN_1022&DEV_43D5

[Generic.Install.NT.HW]
AddReg=PciD3ColdSupported.RegHW

[PciD3ColdSupported.RegHW]
HKR,e5b3b5ac-9725-4f78-963f-03dfb1d828c7,D3ColdSupported,0x10001,1

[Generic.Install.NT.Services]
AddService=USBXHCI, 2, Generic.AddService
AddService=UCX01000,, UCX.AddService

[Generic.AddService]
DisplayName = %PCI\CC_0C0330.DeviceDesc%
ServiceType = 1
StartType = 3
ErrorControl = 1
ServiceBinary = %12%\USBXHCI.SYS
LoadOrderGroup = Base
AddReg = USBXHCI.AddReg

[USBXHCI.AddReg]
HKR,, BootFlags, 0x00010001, 16 ; CM_SERVICE_USB3_DISK_BOOT_LOAD

[Generic.CopyFiles]
usbxhci.sys
ucx01000.sys
WppRecorde8.sys

[UCX.AddService]
DisplayName = "USB Controller Extension"
ServiceType = 1 ; SERVICE_KERNEL_DRIVER
StartType = 3 ; SERVICE_DEMAND_START
ErrorControl = 1 ; SERVICE_ERROR_NORMAL
ServiceBinary = %12%\ucx01000.sys
LoadOrderGroup = Base
AddReg = UCX.AddService.AddReg

[UCX.AddService.AddReg]
HKLM,System\CurrentControlSet\Control\Wdf\Kmdf\Ucx\Versions\1\1,Service,,ucx01000
HKR,, BootFlags, 0x00010001, 16 ;CM_SERVICE_USB3_DISK_BOOT_LOAD

;
; --------------------------- Strings --------------------------
;

[Strings]
;Non-Localizable
Msft = "Microsoft"

;Localizable
Generic.Mfg = "Generic USB xHCI Host Controller"
PCI\CC_0C0330.DeviceDesc="USB xHCI Compliant Host Controller"
ACPI\PNP0D10.DeviceDesc="USB xHCI Compliant Host Controller"

Note "ExcludeID=PCI\VEN_1022&DEV_43D5" in usbxhci.inf, to avoid using driver for USB port that I already have existing vendor drivers.



Attached unmodified original sys files for x64,x86 for anyone who wants to try

pappyN4 has attached files to this post
#6266daniel_k⇗ @diderius6

Just tried it here on my 8700K (UHD Graphics 630) using Haswell Desktop Controller preset.

During install, screen flashed, driver tried to initialize.

When restarting, doesn't crash, but hangs. The approach is correct, just doesn't work.
#6267Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #6262

Now they are 9, 9, 0Ch
but for Baytrail they should be
9, 5(7?), 0Eh


win7/8 drivers ( igdkmd32.sys 10.18.10.5100) set  9, 5, 0F
05 setted for 2E02, 2A42, 2A42,2E22, ...
0F is unique and setted only for 0f30/0f31/0f33, this mean driver has special logic for baytrail, try to search "cmp dword ptr [eax+234h], 0Fh" and you'll see it
#6268Mov AX, 0xDEAD
Zitat von ⇗ pappyN4 im Beitrag ¶ #6265
Success for Win8 generic USB3 driver for XP x64.  Full credit to Mov AX, 0xDEAD for showing the way.
WDF 1.11 is same. Some minor differences for x64 USB compared to x86.


Hi pappyN4

Glad to see successful run win8 usb3 driver on x64, you are first man who did it with emu_extemder !
Your success inspire me to review extender code to be fully compatible with x64 XP/2003
del-17YuriyCN

Пояснения по RTC bug

Решение №1 (программа Timer_Fix.exe + source code) - пока единственный рабочий вариант, убирающий RTC bug.

Решение №2 (с патчем ntoskrnl.exe by "rmn") оказалось не рабочим. Форумчанин "rmn" настолько уверенно его предложил, как альтернативу Timer_Fix.exe, что я, даже не проверив работоспособность, выложил его в паблик.

В итоге мы имеем проблемы:
1) бесконечный цикл
2) возврат в случайный мусор регистра EAX
3) код операции вставлен в смещение перемещения, после загрузки ядра по адресу 0x8xxxxx смещение "jmp" будет отменено

Вывод: патч ntoskrnl.exe - не работает, а пользователь "rmn" больше не заслуживает доверия.

#6269pappyN4Anyone using backported win7 stornvme/storport drivers able to read SMART using CrystalDiskInfo? I managed to get NVME working with OFA driver backported for server 2003 from sourceforge, but it does not show SMART.

AMD AHCI 1.2.1.402, storport 5.2.3790.4485, YES SMART
schtrom NVMe for Windows 2003 Server, storport 5.2.3790.4485, NO SMART
schtrom StorAhci for Windows 2003 Server, storport 5.2.3790.4485, NO SMART

stornvme,storport 6.1.7601.23403, ??
storahci 6.2.9200.16384, storport 6.1.7601.23403, ??

I was playing with backporting of win7 x64 driver with emu_extender to see if it would have SMART data, but have not gotten it working yet.   The x86 instructions say to force legacy mode since MSI interrupts is not compatible with XP.  I could not find anything online stating if XP/2003 x64 also needs to force legacy.  

Flow wise it feels like sub_15B40 for x64 storport is comparable to x86 sub_1598D.  But it looks different enough that I can not tell if it needs to be changed and if it does, where.
#6270Andalu⇗ @pappyN4

¶ here some screenshots about it.

 

Page 419

#6271Andalu
Zitat von ⇗ diderius6 im Beitrag ¶ #6245
I remember from Windows Embedded, that there was a program,
that force XP to shut down, but I dont remember the name, may be it was tool from XP itself
Dietmar


I could not find in XP Embedded any alternative application for shutdown. I have however tried both tsshutdn and psshutdown (and their parameters set) but the restart always gets stuck in the same way.

I take this opportunity to ask you: can a dsdt table extracted from a live system, simply decompiled and recompiled without making any changes and then loaded at boot on the same system give a bsod? Could it be that the compiler (iasl) is not appropriate? If so and the restart problem was dependent on the dsdt table, I would have no hope to find a way to fix it.
#6272infuscomus⇗ @Andalu

Zitat von ⇗ Andalu im Beitrag ¶ #6271
can a dsdt table extracted from a live system, simply decompiled and recompiled without making any changes and then loaded at boot on the same system give a bsod?


If you're not making any changes it should not be giving a BSOD.
#6273Andalu⇗ @infuscomus
unfortunately it is not so, at least for what I have noticed in my attempts.
I got always the A5 bsod (0x00010007,xxx,xxx,0x00) with an unmodified dsdt.aml loaded via easy2boot method.

Edit: even more weird, using an unmodded dsdt table sourced from the same board with Win10 x64, extracted and decompiled with iasl20210105 but recompiled with iasl20161222 (the only newer version that allows recompilation for that dsdt.dat), my system doesn't give bsod on the XP boot.
#6274infuscomus⇗ @Andalu

Zitat von ⇗ Andalu im Beitrag ¶ #6273
Win10 x64, extracted and decompiled with iasl20210105 but recompiled with iasl20161222 (the only newer version that allows recompilation for that dsdt.dat), my system doesn't give bsod on the XP boot.


Does this work consistently?
#6275Mov AX, 0xDEAD
Zitat von ⇗ pappyN4 im Beitrag ¶ #6269

I was playing with backporting of win7 x64 driver with emu_extender to see if it would have SMART data, but have not gotten it working yet.   The x86 instructions say to force legacy mode since MSI interrupts is not compatible with XP.  I could not find anything online stating if XP/2003 x64 also needs to force legacy.  

Flow wise it feels like sub_15B40 for x64 storport is comparable to x86 sub_1598D.  But it looks different enough that I can not tell if it needs to be changed and if it does, where.


Hi PappyN4
- dont be "blind", download *.pdb from MS repository with C:\Program Files\Windows Kits\XXX\Debuggers\x86\symchk.exe and load to IDA project, no more sub_xxxx
- x86 hex patch 8B 8E 3C 01 00 00 ->  B9 00 00 00 00 90 mean forcing InterruptSynchronizationMode = 0 :
      
InterruptSynchronizationMode = DevExt->Miniport.PortConfiguration.InterruptSynchronizationMode;
DevExt->Flags.InterruptsEnabled = 0;
DevExt->MsiMode = InterruptSynchronizationMode;
if ( InterruptSynchronizationMode )
{
DevExt->MSISupported = 0;
if ( SynchronizationModel == StorSynchronizeHalfDuplex )
DevExt->MsiMode = 1;
}
result = RaidAdapterConnectInterrupt(DevExt);


- PDB Ripper can extract structure offsets from *.pdb and you can see
struct _RAID_ADAPTER_EXTENSION:
enum _INTERRUPT_SYNCHRONIZATION_MODE MsiMode;// Offset=0x504 Size=0x4
unsigned char MSISupported;// Offset=0x514 Size=0x1

#6276Andalu
Zitat von ⇗ infuscomus im Beitrag ¶ #6274
Does this work consistently?

XP boots correctly and seems to work without problems, but I didn't spend much time going into details. After loading the dsdt.aml coming from Win10 x64 via easy2boot (so this method works), on the XP boot the "Found new hardware wizard" is shown and in the device manager there are three unknown devices as from the image below:




I confirm that the dsdt table extracted, decompiled and recompiled in XP with iasl20161222 without any modification gives the A5 bsod (0x00010007,xxx,xxx,0x00).
So, if XP boots with the extracted dsdt table from Win10 x64 with the latest iasl20210105 and fails with iasl20161222 I think this latter version is no longer appropriate for use in XP.

In my case, the worst thing is that even the latest iasl version is not able to recompile the dsdt.dsl previously obtained with the same application, a contradiction....
#6277infuscomus⇗ @Andalu

ACPI\INT33A2 is a wifi device and ACPI\INT344B is a GPIO controller - If there are any options in your BIOS to disable these devices can you try disabling them and see if doing that fixes the restart issue?
#6278Andalu⇗ @infuscomus

No entries in the bios for both of them.
#6279infuscomus⇗ @Andalu

I'm out of ideas on how to fix this restart issue
#6280infuscomus⇗ @Gelip has managed to get XP x64 working in UEFI mode without CSM - ⇗ https://www.betaarchive.com/forum/viewto...f7eeb8f#p456492

So if we can solve the most common A5, CA and 50 BSODs it would be possible to run XP x64 in UEFI on real hardware too.
#6281Gelip
Zitat von ⇗ infuscomus im Beitrag ¶ #6280
@Gelip has managed to get XP x64 working in UEFI mode without CSM - ⇗ https://www.betaarchive.com/forum/viewto...f7eeb8f#p456492

So if we can solve the most common A5, CA and 50 BSODs it would be possible to run XP x64 in UEFI on real hardware too.

I did it on real hardware: ASUS P8H61-M LE R2 (Sandy Bridge) + AMD HD7450 with GOP firmware

but I have all the official device drivers for WinXP 64-bit
#6282Andalu
Zitat von ⇗ infuscomus im Beitrag ¶ #6279
I'm out of ideas on how to fix this restart issue

Me too

Maybe the problem is not related to the dsdt table... but if not here, where is the bug?

The iasl20190329 allowed to decompile and recompile the dsdt table even in XP: no error detected in both steps.
I was hoping to use the dsdt.aml coming from the ACPI Uniprocessor system (where the restart works) for the ACPI Multiprocessor (where the restart fails) but even if XP boots correctly via easy2boot, the restart issue is always there. The dsdt tables obtained from the two pc modes are identical as are the facp and rdst tables. The only different table is facs but nothing changed even switching it between the two modes.

I also extracted the dsdt table with UEFITool NE A58, decompiling and recompiling it with the same iasl20190329 but at startup always the usual A5 bsod (0x00010007,xxx,xxx,0x00). It seems better to extract a table from a live system than from a raw file.
#6283pappyN4Thanks for the advice Mov AX, 0xDEAD.  Definitely easier to see with PDB files loaded.

820h = 0
JMP to avoid 840h set 1, 820h set 1

 
x86 storport 6.1.7601.23403
hexposition: 4E19
change: 8B 8E 3C 01 00 00 -> B9 00 00 00 00 90
hexposition: 4E2C
change: 74 11 -> EB 11

x64 storport 6.1.7601.23403
hexposition: 156AE
change: 8B 83 C0 01 00 00 -> B8 00 00 00 00 90
hexposition: 156C0
change: 74 15 -> EB 15
#6284YuriyCN[ENGLISH] Updated set of solutions for installing Windows XP on a modern PC from 17-jan-2021 (detailed descriptions, mod drivers, programs, ready-builds OS)

[RUSSIAN] Обновленный комплект решений по установке Windows ХР на современные ПК от 17-янв-2021г., включающий подробные описания, модернизированные драйвера, программы, готовые сборки ОС

TXT (85KB) - ⇗ https://yadi.sk/d/HcmGtGL7IJdczw
#6285gordo999
Zitat von ⇗ YuriyCN im Beitrag ¶ #6284
[ENGLISH] Updated set of solutions for installing Windows XP...
⇗ @YuriyCN ...thanks for your solutions. Good work.

⇗ @YuriyCN ... спасибо за ваши решения. Хорошая работа.

 

Page 420

#6286diderius6Hi,
does somebody know, if for the filterdriver EWF.sys exists
a 64 bit version, that can work together with XP 64 bit?
I know, that there has been ewf.sys for vista 64 bit,
but I have never seen those files.
The last version for EWF.sys from Win7 64 bit Embedded  may work also,
but I also dont know from where to get those 64 bit EWF files.
Intersting is also, if there is a size limit for ram.
For XP SP3 and ewf.sys is even with hacked files a limit of 650 Mbyte ram free
Dietmar
#6287infuscomus⇗ @diderius6

I suppose it depends on whether or not there was ever an x64 version of Embedded XP.
#6288diderius6⇗ @infuscomus
I found this website
⇗ https://www.chiphell.com/thread-322102-1-1.html
Quick check with Dependency Walker shows some unresolved dependencies
using the win7 64 bit ewf.sys for XP 64 bit
Dietmar

PS: May be this can be solved. But I read, that there exists a Vista 64 bit ewf.sys
#6289infuscomus⇗ @diderius6

can you check if the missing dependencies are covered by ntoskrnl extender?
#6290diderius6There are 6 functions in ewf.sys from win7 Embedded 64 Bit,
that are missed in ntoskrnl.exe from XP SP3.
None of them is listed until now in implemented Func List v6 for XP SP3.
But maybe, that they are already implemented in XP 64 bit

ExQueryDepthSList
ExpInterlockedPopEntrySList
ExpInterlockedPushEntrySList
KeAcquireSpinLockRaiseToDpc
KeReleaseSpinLock
__C_specific_handler

I upload this ewf.sys from win7 embedded
Dietmar

⇗ https://ufile.io/zx0ar8ee

EDIT: Waaoh, I just make a check with real ntoskrnl.exe version 5.2.3790.3959 (srv03_sp2_rtm.070216-1710)
from XP 64 SP2. NO unmatched functions, so this ewf.sys from November 2009 may work from scratch at once with XP 64 !!!
#6291diderius6For to test the ewf.sys from the very first win7 Embedded  64 bit on XP 64
I just set up a new XP 64 bit SP1 corporate version.
First I get acpi BSOD A5 (0x11, 0x08, yyy, zzz).
Ok, first hack on original acpi.sys.
After this I get Bsod A5 (0x02, xxx, yyy, zzz).
This is, because a device mentioned in DSDT does not like to work.
Ok, next hack.
Then I noticed, that the Firadisk USB install gives always BSOD 0x7B.
So I use normal CD install, I use the nice storahci driver from Kai Schtrom, correct storport is already in XP 64 SP1
⇗ https://sourceforge.net/projects/storahc...ows-2003/files/
now install works
Dietmar

PS: I use the (modded) original acpi.sys because I hope, that the crazy instability of XP 64 on newer hardware is gone with it.

Modded from original acpi.sys for XP 64 bit SP1

⇗ https://ufile.io/r4p0i2i8
#6292diderius6I just modded the acpi.sys and hal.dll from original XP 64 SP2.
Now the timerproblem is gone and also all Acpi Bsods on my Asrock Fatalty gaming k6 board with i8700k cpu
Dietmar

⇗ https://ufile.io/8qn0smia
#6293diderius6For the ewf.sys 64 bit from Win7 Embedded,
Dependency Walker shows, that all dependencies in XP64 SP2 are fulfilled.
A look with Windbg shows, that ewf.sys is loaded and started in XP64 SP2.

But in ewfmgr.exe from Win7 Embedded Dependency Walker shows under XP64 SP2
missing functions in msvcrt.dll from XP64 SP2. I tried the msvcrt version from Vista64 5048, but compi crashes with this Vista version.

swprintf_s
memcpy_s
strncpy_s
wcscpy_s

I would add this missing functions by myself to msvcrt.dll from XP64 SP2 , but I dont know how,
so help is welcome
Dietmar

This is the original msvcrt.dll from XP64 SP2, with the missing functions

⇗ https://ufile.io/2vkouypg
#6294daniel_k⇗ @diderius6

If Windows crashes, probably the issue is in ewf.sys.
msvcrt.dll is a user mode dll, wouldn't crash your system.

By the way, wouldn't be better to create a new thread for XP x64?
#6295diderius6⇗ @daniel_k

XP64 SP2 does not crash with ewf.sys (!).
It starts normal and I check with windbg, all is ok.

DevNode 0xfffffadce0aa7c30 for PDO 0xfffffadce0aa7e50
InstancePath is "Root\LEGACY_EWF\0000"
ServiceName is "EWF"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)

But the Volume (here harddisk) is not protected.
Maybe even without ewfmgr this should be possible to get ewf to work, I think something is missed in registry for ewf.
Dependency Walker shows also, that msjava.dll is missed for ewfmgr.exe .
I dont know, which version of msjava.dll can work with XP64 SP2
Dietmar

PS: The problem with new thread is, that nobody looks there.
#6296diderius6Yessssssaaa,
I get ewf ram to work on XP64 SP2

Now I test, HOW much ram can be used for it, I have 32 Gbyte on this compi

Dietmar

This is the content of my ewf.reg file, this is a little bit other than in XP SP3
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{71A27CDD-812A-11D0-BEC7-08002BE2092F}]
"UpperFilters"="Ewf"
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ewf]
"ErrorControl"=dword:00000001
"Start"=dword:00000000
"Type"=dword:00000001

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ewf\Parameters]

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ewf\Parameters\Protected]

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ewf\Parameters\Protected\Volume0]
"Type"=dword:00000001
"Enabled"=dword:00000001
"CompareBeforeAlloc"=dword:00000000
"DiskSignature"=dword:9f38d7fa
"PartitionOffset"=dword:00100000

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ewf\Enum]
"0"="Root\\LEGACY_EWF\\0000"
"Count"=dword:00000003
"NextInstance"=dword:00000003
"1"="STORAGE\\Volume\\1&30a96598&0&Signature9F38D7FAOffset100000Length1D1C05C0000"
#6297diderius6Ok, ram limit for EWF is around 705 Mbyte, not very impressive.
This should be 64 Bit?
May be the reason is in ntldr from XP64 SP2
Dietmar

PS: Anyway this is impressive, this XP64 SP2 running on a Western Digital hardisk with 2 Tbyte.
From feeling with EWF ram enabled, it is the fastest OS ever;))..

#6298diderius6What is the limiting factor for ewf ram size of about 705 MB in XP64?
A try with the bootloader from Vista64 would be interesting
Dietmar

"the system page table memory is usually the limiting factor???"
How to enlarge that?

Specifically 64-bit has a maximum memory size of 128GBs for PTEs while 32-bit Windows has a 660MB maximum for PTEs.
#6299daniel_k
Zitat von ⇗ diderius6 im Beitrag ¶ #6298
What is the limiting factor for ewf ram size of about 705 MB in XP64?

Test the EWF RAM limits on Embedded 7 just to be sure.
#6300diderius6⇗ @daniel_k

I look about EWF RAM limits on Embedded 7, found only
"the system page table memory is usually the limiting factor" ;))
Dietmar

 

Page 421

#6301diderius6I found the tool

EWFAdmin_1.0.0.108_Installer.exe

I can install it on XP64 SP2
but then comes message when I start it

"The procedure entry point memcpy_s  could not be located in the dynamic link library msvcrt.dll ."

So, at least this function needs to be integrated in msvcrt.dll from XP64 SP2.
Just now I cant do this, but I want to learn how
Dietmar

PS: May be just a setting in registry can enlarge the usable ram for EWF ram reg .

⇗ https://rsonline.cn/webdocs/126e/0900766b8126ede9.pdf

EWFAdmin_1.0.0.108_Installer.exe

⇗ https://ufile.io/1353y6eq
#6302diderius6May be it is this key

No, does also not help for to enlarge ram for EWF ram reg
Dietmar
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management]
"ClearPageFileAtShutdown"=dword:00000000
"DisablePagingExecutive"=dword:00000000
"LargeSystemCache"=dword:00000000
"NonPagedPoolQuota"=dword:00000000
"NonPagedPoolSize"=dword:00000000
"PagedPoolQuota"=dword:00000000
"PagedPoolSize"=dword:00000000
"SecondLevelDataCache"=dword:00000000
"SystemPages"=dword:ffffffff
"PagingFiles"=hex(7):00,00,00,00
"PhysicalAddressExtension"=dword:00000001
#6303diderius6It hangs, even the limit is about full 32 Gbyte?
Dietmar

#6304gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #6293
I would add this missing functions by myself to msvcrt.dll from XP64 SP2 , but I dont know how, so help is welcome Dietmar
⇗ @diderius6 ...Dietmar...I have re-built IAT tables in the past but too long ago to be of help to you now. It's not that complicated. You can add functions directly to the IAT table or you can create a dll with the functions in it and insert the address of the dll in the IAT table.

Here's a good overall article on it. This is part I, look at the bottom of the article to find links to Part II, etc.

⇗ https://relearex.wordpress.com/2017/12/2...s-table-hooking
#6305gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #6301
"The procedure entry point memcpy_s  could not be located in the dynamic link library msvcrt.dll ."
⇗ @diderius6 ...Dietmar...I just posted a link to an article that explains how to do it. The entry point cannot be found because it is not present in the IAT table.
#6306diderius6⇗ @gordo999

Thanks a lot. I try today!
Today in the afternoon I will try the same ewf.sys files on a brandnew Win7 Sp1 64 bit installation.
Interesting, if there can be used more than 705 MB for the EWF ram overlay.
Has somebody here in the forum tested this already?
There has been a discussion in a microsoft blog about the max size of the EWF ram overlay in 64 bit, but now it is deleted so there is no information about it at all. Max EWF Ram overlay with 64 bit ewf.sys should be about 128 Gbyte(!)
Dietmar

PS: If the EWF overlay in win7 64 bit also is below 1 Gbyte,
I will make a test with the ewf.sys from win8, win8.1 .. etc. under XP64 SP2.
#6307kukonosau⇗ @diderius6
Thanks for work! But new acpi.sys get BSOD on WinXPx64 on Ryzen. I used files from post #6302. I haven't Intel motherboard.
#6308diderius6⇗ @kukonosau
In the evening I try to mod for Ryzen also
Dietmar
#6309kukonosau⇗ @diderius6
I will enjoyed if you can modding! Thanks if modding! Maybe, this is very fast system in the world!!! Probably, it is working fast than XPSP3x86. Do you testing mod acpi.sys now or after?
#6310kukonosau⇗ @diderius6
How to modding? I must be programmer C++? How to change system drivers? Can I learning C++ and modify Windows XP? This is probably or no?
#6311kukonosau⇗ @diderius6
This theme is interesting me. I want to be specialist, but I nothing know almost. But Windows XP is my hobby. It is my love, my soul!!!
#6312infuscomus⇗ @kukonosau

To modify existing drivers you'll need to learn assembly language as well as how to use a disassembler and a debugger, and to write new drivers you'll need to learn C (not C++)
#6313kukonosau⇗ @infuscomus
Existence Russian literature about assembler, disassembler and debugger? Why C++ restricted for write new drivers? Why C, but not C++? Syntax almost equal? And how long I must to learn? Diderius6 professional into assembler?
#6314diderius6⇗ @kukonosau

Until now we dont have a modded original acpi.sys for XP64 SP2 version
5.2.3790.3959 (srv03_sp2_rtm.070216-1710),
that works also on Ryzen.
I remember very good, that we gave up more than a year ago for this and choose the 5048 one.
But I am getting better and here is new try
Dietmar

PS: When this acpi.sys not works, please write me the exact Bsod for the Ryzen Pc.

⇗ https://ufile.io/cf67npye
#6315kukonosau⇗ @diderius6
Now, wait, please! Do you online now? I check and write for you. I be write to flash another XPx64, but with your new acpi.sys. I use YUMI program. After if doesn't work I error code write. Probably, this is error A5, how usually.

 

Page 422

#6316kukonosau⇗ @diderius6
I checked new acpi.sys. Unfortunately, also BSOD with error A5. 0x000000A5 (0x0000000000002001, 0x0000000000000001, 0xFFFFFFFFC0000034, 0xFFFFFADE859DB038). The BIOS in this system is not fully ACPI compliant. And so on. But your well done that working all. Like.
#6317diderius6⇗ @kukonosau

Now it is exact as a year ago.
This Bsod 2001 is gone for sure with this new acpi.sys
question is, what comes then
Dietmar

⇗ https://ufile.io/d55nguzq
#6318kukonosau⇗ @diderius6
Okay, I will checking acpi.sys from #6327. I makecab ACPI.SY_ and put to folder AMD64 in distributive XPx64. After write to flash with YUMI. Wait, please...
#6319kukonosau⇗ @diderius6
I checking without compressed SP2.CAB archive and without put to him new acpi.sys. Chekcking in text mode, before 3rd restart, in our 1st start.
#6320diderius6⇗ @kukonosau
Does it mean it works?
Dietmar
#6321kukonosau⇗ @diderius6
Unfortunately, no. Also error A5. But I see that every start appearance brackets new figures. 0x000000000000002 and so on...
#6322diderius6⇗ @kukonosau
Now sadly it is a dejavue from last last year.
I have no idea, HOW this Bsod 0xA5 (0x02,xxx,yyy,zzz) can survive
Dietmar
#6323kukonosau⇗ @diderius6
By the way, acpi.sys from post #2202 sometimes started!!! Maybe, this acpi started also with several try, I don't know. Also now I haven't file *tib, created with Acronis. Comfortable will be checking.
#6324kukonosau⇗ @diderius6
Yes, yes, yes!!! After 0x02 appearance different values after every restarting!!! Your rename their xxx, yyy, zzz.
#6325diderius6⇗ @kukonosau

Please write to me the exact full Bsod code
Dietmar
#6326kukonosau⇗ @diderius6
My action:
1) save your new acpi.sys on Local Disk;
2) makecab acpi.sys in command line;
3) put get acpi.SY_ in extracted distribute WinXP64 (AMD64 for x64; if acpi for WinXPSP3x86 then put to folder I386);
4) with nlite create ISO file without driver (I integrated SATA AHCI early);
5) with YUMI create load flash drive WinXP64;
6) checking acpi.sys after restarting computer.

This is correctly action? I don't change acpi.sys in SP2.CAB and I don't compressed this archive and put AMD64 again.
#6327kukonosau⇗ @diderius6
I don't know how to send screenshots with full code ACPI(((
#6328kukonosau⇗ @diderius6
Last error ACPI:

***STOP: 0x000000A5 (0x000000000000002, 0xFFFFADE85B34840, 0x0000000000000001, 0xFFFFFADE85ADAC30)
#6329kukonosau⇗ @diderius6

A problem has been detected and windows has been shut down to prevent damage to your computer.

If this is the first time you've seen this stor error screen,
restart your computer. If this screen appears again, follow these steps:

The BIOS in this system is not fully ACPI compliant. Please contact your
system vendor for an updated BIOS. If you are unable to obtain an
updated BIOS or the latest BIOS supplied by your vendor is not ACPI
compliant, you can turn off ACPI mode during textmode setup. To do this,
press the F7 key when you are prompted to install storage drivers. The
system will not notify you that the F7 key was pressed  it will stiently
disable ACPI and allow you to continue your installation.

Technical information:

***STOP: 0x000000A5 (0x000000000000002, 0xFFFFADE85B34840, 0x0000000000000001, 0xFFFFFADE85ADAC30)
#6330diderius6⇗ @kukonosau

Interesting,
what this new acpi.sys will show
Dietmar

⇗ https://ufile.io/meeg1fjj

 

Page 423

#6331ruthan
Zitat
I don't know how to send screenshots with full code ACPI(((


 Just use Phone camera.

#6332bright_lightHi everyone,
I'm new to this forum and this is my first post.
First, I must say thank you very, very much for your amazing work, making Windows XP possible on new computers.
I've done some testing on Ryzen and Intel computers.

For Windows XP Professional x64 Edition, there is something I like to do with Nlite which seems to improve stability for me. It may or may not work for you. It's complicated process. You may need Virtual box to install windows xp there first before you transfer it to use on a real PC.

Use Nlite to modify original XP 64-bit as described below:
1. remove Multi-Processor support (you will use uniprocessor. You will install multi-processor later after you get other things working.)
2. remove support for Intel and AMD processors
3. disable System File Protection (SFC)
4. Save ISO

In Virtual box under settings you first use IDE as disk drive, install windows completely. close virtualbox, open VHD, copy all drivers USB SATA etc. and don't forget to copy modded acpi.sys. Then again start virtualbox program, go to settings, attach secondary vhd which must be SATA, enable usb3.x and set processor to at least 2 cores. Start windows machine on virtualbox once again and install multiprocessor manually from acpi.inf pointing to modded acpi.sys via device manager and all drivers USB3.0, SATA etc. Then close virtaulbox.

After that, you need to find a way of booting your VHD on real PC from your USB flash drive or HDD using something like Yummy, Grub4DOS loader or Easy2Boot with FiraDisk (or SVBus). Svbus is like FiraDisk but newer.
You don't like booting from VHD? You can try copying WINDOWS folder Program files etc. from VHD to your PC where you plan using XP but it may not work if your XP expects to be on a different drive/partition or some registry entries are pointing to a wrong location or something else is wrong.

With processor support removed you get trully portable windows-to-go-XP (without needing any registry modifications) that will boot on any PC by swapping your disk drive. If you choose to install ACPI processor functions (intelppm.sys, amdppm.sys) you have to modify registry to get windows-to-go feature.

Make Windows XP  to go (with processor support) by adding this to registry:
-----------------------------------------------------------------------------
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\intelppm]
"Start"=dword:00000003

-----------------------------------------------------------------------------

Anyway you may skip virtualbox installation process and go directly with installing on real PC. In that case you must integrate all necessary drivers USB, SATA etc. I hope it works for you.
#6333daniel_k⇗ @diderius6

acpi.sys 6666 supports all ACPI 2.0 opcodes.

Unless someone does the same for x64, it won't work.
#6334infuscomus⇗ @daniel_k

Hopefully ⇗ @Mov AX, 0xDEAD can share how he did it?
#6335infuscomus⇗ @bright_light

we already have XP via live USB support up and running - ⇗ @diderius6 got it working and ⇗ @Outbreaker made a script to replicate it.
#6336diderius6⇗ @daniel_k

Do you think, that the Bsod 0xA5 (0x02, xxx, 0x01, yyy)
happens because of unknown words from Acpi2.0 in DSDT table?

For me it is soso strange, that we cant jmp over this Bsod. I did it for all places with 0x02, not enough?

I thought, that this Bsod happens, because acpi.sys cant work together with some devices from DSDT.


What do those 2 lines tell

cmp     cs:PciInterfacesInstantiated, 0
jz...

? Can you force this with jmp (EB) even cmp     cs:PciInterfacesInstantiated, 0 is not true (is it then 1?).


May be, that we do not know the reason until now, why the acpi.sys from XP64 fell on Ryzen,
because on Intel with hack against Bsod 0xA5 (0x02, xxx, 0x01, yyy) it works.
Is there a chance via the numbers for xxx and yyy to find in memory, which device belongs to this
Dietmar

From Microsoft Bsod 0xA5 (0x02, xxx, 0x01, yyy)

xxx: The ACPI extension for the PCI bus


0x01


yyy: A pointer to the QUERY_RESOURCE_REQUIREMENTS IRP


ACPI cannot convert the BIOS' resource list into the proper format.
This probably represents an error in the BIOS' list encoding procedure.
#6337bright_lightdiderius6

The ACPI you made back in 2019 seems to work fine on XP x64 on Ryzen PC. 415kb in size. not one 315kb.
415kb is the only one that is working.
#6338diderius6⇗ @kukonosau ⇗ @daniel_k

Crazy, after intensive compare with the 32 bit acpi.sys
I found 2(!) new places for Bsod A5 (0x02,xxx,0x01,yyy) in the 64bit acpi.sys .
Crazy hard job to "correct" them all.
But now, this is the best modded from original XP64 SP2 acpi.sys
Dietmar

⇗ https://ufile.io/8fqhmws2
#6339diderius6Hm, with the acpi.sys above compi hangs.
So, new one for XP64 SP2, compi hangs not and works at least in Safe Mode F8
Dietmar

⇗ https://ufile.io/g9h11z3a
#6340kukonosau⇗ @diderius6
ACPI from post #6349 freeze on setup in starting Windows, but not BSOD. I haven't installed Windows XP SP2 x64 with Acronis and I haven't opportunities check acpi in safe mode.
#6341kukonosau⇗ @diderius6
Sometime appeared BSOD error 0x01E. But often ACPI freeze in setup is starting Windows.
#6342gordo999
Zitat von ⇗ kukonosau im Beitrag ¶ #6313
Existence Russian literature about assembler, disassembler and debugger? Why C++ restricted for write new drivers? Why C, but not C++?
⇗ @kukonosau ...C is an easier, lower-level language than C++, which is object-oriented and needed for more complex programming of larger systems. There is no need for C++ when C will do a job perfectly well.

If you reverse engineer code you will soon see the difference. A C++ app is full of unrelated code you need to recognize but it's not nearly as bad as some of the bloatware you'd find in apps written in Delphi or MFC C++. In my day, there were no PDB files for MFC dlls and the code appeared to be a massive jungle.

Many of the answers you need are in this blog thread. Start reading at the beginning to see the original problems, then see how they were overcome. Some of the modders, like ⇗ @daniel_k have done it by code analysis using IDA, and studying the Intel manuals to see how the hardware devices work.

How long? My specialty is in reverse engineering and I have contributed nothing to this blog. I learned reverse engineering by 'doing it'. There are no shortcuts, you start at the beginning with simple assembly code problems and by doing the jobs you learn more and more each time. You learn how to use debuggers (windbg, Ollydbg, x64dbg), disassemblers (IDA), and other tools that help you analyze the assembly code (LordPE, etc.).

You read a lot. When I started there was no Internet. All we had were 1200 bps modems and BBSs (Bulletin Board Services). The state of the art communication protocol was eventually Z-modem which was like standing still compared to the Internet speeds of today. Even at that, if you wanted information you searched for it and you found it through tutorials. You found tools as well but you took chances because you did not know if it contained a virus. I will say this about hackers and crackers, most I have encountered were honest people who had no interest in harming anyone's system. I have never had a virus from any hacker/cracker site.

Or you do it with a lot of hard work as daniel_k, diderius, and infuscomus, have done. Mov Ax Dead is in another class. He has a very good understanding of programming and reversing techniques, as well as a good understanding of how Windows works.

If you have a strong desire to learn, use your desire to motivate you. I started decades ago because software I had purchased had a very simple form of protection to prevent you copying a floppy disk. I needed a copy so I started researching how to defeat the protection. I had very limited experience with assembly language from my work as an electronics/computer technician. That helped, but what really helps is being able to persevere through frustration when you know nothing about a problem and why it is happening.
#6343kukonosau⇗ @gordo999
Thanks. I continue learning C++. My level is beginning, or started. Maybe, junior. While I learning C++ assembler is restricted for me. Correctly? May I go learning C++, but not Python, Pascal and simple/usually C? My C++ level is junior. I know arithmetical operations only and arrays. Cycles and input/output little.
#6344diderius6⇗ @kukonosau
get a working copy of Winhex and Ida pro.
Ida 6.1 64 bit is very good for XP.
And Winhex I have version 11.9 from 2003 I think, but works for nearly everything.
Then take a look with Ida Pro at the original acpi.sys and a modded one.
At once you will understand what changes and how
Dietmar
#6345kukonosau⇗ @diderius6
Thanks. Sometime I save IDA 7 Freeware and see many figures. I don't understand. Many changes was. May I seeing Ida without learning C++?! It is have semantics?

 

Page 424

#6346kukonosau⇗ @diderius6
I want wish you good luck in modify acpi.sys for XPx64. This is hardest work, I think. Your old acpi.sys from post #2202 working in our installations, but not always working and crash randomally with different BSOD's.
#6347kukonosau⇗ @diderius6
Influence acpi.sys on perfomance? For example gaming perfomance?
#6348diderius6⇗ @kukonosau

Under XP64 there is no possiblility to install without acpi.
On XP SP3 there is and on Ryzen it helps a lot, because you can use Multiprocessor only via acpi
Dietmar

PS: You have post.
#6349kukonosau⇗ @diderius6
What am I doing?
#6350kukonosau⇗ @diderius6
Incorrect password.
#6351diderius6⇗ @kukonosau
You need 7zip for to unpack
Dietmar
#6352kukonosau⇗ @diderius6
I have 7-zip. Incorrect password.
#6353diderius6⇗ @kukonosau
The file is damaged,
I upload it new
Dietmar
#6354kukonosau⇗ @diderius6
Okay, I understand. File is damaged, file include errors.
#6355kukonosau⇗ @diderius6
But, probably, I can't modify acpi.sys XPx64 for Ryzen if I will be equal standard acpi XPx86 and modify your acpi XPx86.
#6356Mov AX, 0xDEAD
Zitat von ⇗ infuscomus im Beitrag ¶ #6334

Hopefully @Mov AX, 0xDEAD can share how he did it?

Hi infuscomus,

"old way" - assembler implants from acpi.sys w7 to acpi.sys, i dont recommend repeat it again if you dont have enough time, too complex.

what about longhorn v5048 acpi.sys x64 ? does it totaly fails on xp x64 ?
#6357diderius6I just make a test with the EWF filter from win7 embedded Standard under win7 64 bit.
Behavior is a little bit strange:
EFW filter works normal up to an occupied memory of about 2.3 Gbyte.
Then, the cache is grown up, but very slow. So I succeed with 6 Gbyte but this not nice for use,
so only 2.3 Gbte.
Dont know, why XP 64 only allows about 705 MByte with this EWF filter from Win7.
Dietmar

PS: May be ewf.sys from win8 or above is better.
#6358infuscomus⇗ @Mov AX, 0xDEAD

can we do an acpi2.0 implementation properly using the source code instead? or manual assembly edit is the only way?
#6359diderius6⇗ @Mov AX, 0xDEAD ⇗ @infuscomus

I just take a look at the acpi.sys from outerspace ) for the acpi2.0 word "Tointeger" implementation.
At once you get a feeling how much work this is.

The modded 5048 Vista 64 acpi.sys works so lala on newer Intel boards, network is unstable on Intel controllers
and is maximal unstable (unusable) on Ryzen platform.

The advantage in a transforming of a XP64 acpi.sys to full Acpi2.0 would be, that now all variables are 64 bit also.
Not so easy to answer the question, if it is worth.
I succeed with small mod on the acpi.sys from XP64 but only on Intel boards it works good
Dietmar
#6360kukonosau⇗ @diderius6
At the way, Vista x64 also instable working on Ryzen motherboard!!! Maybe, this is for me only?! But Vista x64 get BSOD/crash randomally!!! Windows 7 stable working, exception GTA IV. Vista sometimes get BSOD in our installation!!! Sometimes it is BSOD after select load flash drive!!! Updates integrate don't solve problem! However, I don't check Vistax86 in have BSOD. But I sure that Vista x86 crash randomally also. This is correctly?

 

Page 425

#6361kukonosau⇗ @diderius6
But Windows XP x64 SP2 has more BSOD's on Ryzen than Vista x64 SP2, but no much.
#6362Mov AX, 0xDEAD
Zitat von ⇗ infuscomus im Beitrag ¶ #6358
@Mov AX, 0xDEAD
can we do an acpi2.0 implementation properly using the source code instead? or manual assembly edit is the only way?

of couse you can do in C but ida decompiler often show code with many crossed GOTOs, sometimes very hard to understand what code do

pros of asm implants - they already done, need sometime change field offsets inside of one important structure (struct _ObjData) because win7 has different format, also need kill 64-bit integer math because this structure in XP dont have space to store high dword, this is why integers in xp acpi.sys always 32bit
#6363AndaluFinally the restart works correctly on my asrock B250M Pro4 also in acpi multiprocessor mode.
I had already tried changing all the components on the board except the one that turned out to be the culprit: the ps/2 keyboard that I always used to avoid usb problems during XP installation. It was the last of the things I would have thought of. The same with a usb mouse and its ps/2 adapter. Without connecting the ps/2 peripherals the restart issue disappears.
Enabling the ps/2 emulation in the bios doesn't help either: XP hangs on the boot when the logo screen appears.

I'm still wondering why the same problem doesn't occur in uniprocessor acpi mode.

Anyway, I would like to find a way to get the PS/2 ports working. Can anyone suggest where to start looking?
#6364daniel_k⇗ @Andalu

Glad you have finally found the culprit.

Here my input devices are all USB.

USB drivers are mature and stable, if properly integrated, they work right from start during XP setup.
#6365Andalu⇗ @daniel_k
there are some exceptions: on the same crazy asrock B250M board the XP-IE2020.9.9 iso (including the xHCI USB3 driver) installation from a pendrive plugged into a usb2 port gives the '0xDEADBEEF' bsod on the first step of text mode. No problem with the same pendrive plugged into a usb3 port or using the XP-IE iso without the usb3 driver even if plugged into a usb2 port.
#6366Mov AX, 0xDEAD⇗ @Andalu

Zitat von ⇗ Andalu im Beitrag ¶ #6365

'0xDEADBEEF' bsod


Hi Andalu
this is debug bsod of emu_extender, some check was failed and reported to user this way, numbers after '0xDEADBEEF' is hint to failed check
#6367Andalu⇗ @Mov AX, 0xDEAD

here the complete code: 0xDEADBEEF (0x02, 0x8A158B20, 0x8A20D1F8,0x00).
But I don't know what they mean.
#6368diderius6Hi,
can somebody help me with the new ewf.sys files in

Windows6.1-KB2573449-x64.msu

They cant be found now in Internet
Dietmar
#6369pappyN4Andalu's post inspired me to check again and it was the PS2 keyboard that was causing my reboots to fail (both XP32 and XP64).  I had tested it before by just unplugging it and doing a restart which failed.  This time, I started the computer with no PS2 at all and restart works...  Restarts were working fine with Win7 and with a parted magic bootable linux ISO from 2012.

Totally would not have expected that.  I would have said that a "dumber" interface like PS2 would be more compatible...

So Shutdown proceeds normally.
Restart, which sets the "Reset Register" must hang somewhere right before the soft reset... (something related with ACPI?)

Numlock turn off, "Windows is shutting down", monitor(GPU output) turns off and then nothing when a PS2 keyboard is attached...

Are the PDBs for 5048 available? x86 and x64  I had no luck trying to download from ms symbols server
#6370daniel_k
Zitat von ⇗ diderius6 im Beitrag ¶ #6368
Hi,
can somebody help me with the new ewf.sys files in

Windows6.1-KB2573449-x64.msu

They cant be found now in Internet
Dietmar


You didn't look hard enough!

⇗ http://web.archive.org/web/2020080320522...2573449-x64.msu
⇗ http://web.archive.org/web/2020080321005...2573449-x86.msu
#6371diderius6⇗ @daniel_k

Really crazy,
I look in web.archive also,
but I only find a list, how often this file has been downloaded..
Thanks a lot!
Dietmar

Here is the link from the translation of ⇗ @dencorso for the installation instruction of XP from ⇗ @YuriyCN

⇗ https://msfn.org/board/topic/182311-wind...comment-1194610
#6372pappyN4⇗ @diderius6 windows6.1-kb3125574-v4-x64 has ewf.sys 1.0.1533.0
#6373Andalu⇗ @pappyN4

you can find some x86 versions here:
⇗ https://archive.org/download/somewinxpdownloads/


Edit: only now I realized that you were looking for the symbols for Vista, sorry.
#6374diderius6⇗ @daniel_k ⇗ @pappyN4

Do you know, how to extract  Windows6.1-KB2573449-x64.msu ?
On Win7 SP1 64 bit I was told,
that this package is not for this compi
Dietmar
#6375pappyN4I use sereby Hotfix Extr4ct0r.  Works nice.  Then search extracted folders for *.sys or whatever

 

Page 426

#6376daniel_k⇗ @diderius6

Open Command Prompt:
expand -f:* Windows6.1-KB2573449-x64.msu .
expand -f:* Windows6.1-KB2573449-x64.cab .
#6377diderius6⇗ @daniel_k

I try this command but does not work. Gives message, that no file
Dietmar

PS: Very strange, I cant put them in a folder

expand -f:* Windows6.1-KB2573449-x64.msu C:
expand -f:* Windows6.1-KB2573449-x64.cab C:
works
#6378diderius6The behavior of the new ewf.sys under win7 SP1 64 bit is similar as before:
Up to 2.3 Gigabyte transfer speed is ultrafast (I use copy from harddisk to protected harddisk) via Sata.
Then, transferspeed goes down between 70...7 MByte/s,
cache grows with the same speed,
but there seems no limit in ram
Dietmar
#6379diderius6This seems to be the limiting factor, how to change?

See pic, "Zugesichert 3/15 GB"

Strange enough, win7 64 bit SP1 home professional allows you only 16 Gbyte at all from your ram.
Dietmar

#6380pappyN4Depending on which version of Windows 7 x64, RAM limits

Windows 7 Home Basic 8 GB
Windows 7 Home Premium 16 GB
Windows 7 Professional 192 GB
Windows 7 Enterprise 192 GB
Windows 7 Ultimate 192 GB

⇗ @diderius6 do you have PDB for 5048 acpi x86 and x64?
#6381diderius6⇗ @pappyN4
I dont have this PDB.
Crazy flight in night during editing this acpi 5048 files
Dietmar
#6382diderius6It seems,
that also with the very laast ewf.sys vers.1533 64Bit the maximal ram overlay is limited to about 2.3 Gbyte,
in win7 SP1 64bit and the same limit for XP64.
Under XP64 can be used from this about 715 Mbyte with the newest ewf.sys 64 Bit,
under win7 SP1 64 bit the full 2.3 Gbyte
Dietmar
#6383usa1ec
Zitat von ⇗ diderius6 im Beitrag ¶ #6371
@daniel_k

Here is the link from the translation of @dencorso for the installation instruction of XP from @YuriyCN

⇗ https://msfn.org/board/topic/182311-wind...comment-1194610



Registration is required.
Please, upload the file to this forum.
#6384diderius6Here it is,
hope that ⇗ @dencorso agrees
Dietmar

⇗ https://ufile.io/dunj39qa
#6385diderius6I make also a try with the very last version of ewf.sys from Win7 32bit Embedded Standard for in use XP SP3,
because this ewf.sys fulfills all dependencies under XP SP3.
But very late in the bootprocess comes

Bsod CONFIG_LIST_FAILED
0x00000073 (0x00000001, 0xC000017D, 0x00000001, 0xB271CBB8)

I have never seen before.
Compi boots from an also mechanical write protected Kangaroo USB stick with single Fat32 partition.
Safe Boot (F8) shows the same. May be, that this new ewf.sys driver tries to write to disk, which is here impossible
because of write protect
Dietmar

EDIT: Yeppp, this is the reason. When I open the write protect switch on the USB stick, it boots to full XP SP3.
Nice, now I test and then I close on running XP the write protect switch;))

#6386infuscomus⇗ @diderius6 ⇗ @Mov AX, 0xDEAD

I did an experiment adding CreateQWordField to acpi.sys using the source code.

I would like to get this up to outerspace acpi.sys in terms of compatibility - anyone willing to help with it?

infuscomus has attached files to this post
#6387kukonosau⇗ @infuscomus
Hello. Post #6396 include acpi.sys for XPx64? Can I testing in my machine with Ryzen 5 2600 or no? It is have semantics?
#6388infuscomus⇗ @kukonosau

No sorry, this is not ready yet, it was just to show that new ACPI words could be implemented using source code.
#6389kukonosau⇗ @infuscomus
Thanks. I checked now. ACPI is not compatible with x64. Probably, this is very hard work, modify acpi.sys for XPx64. I never will can modify. Diderius6 is professional, but not I.
#6390diderius6⇗ @infuscomus  ⇗ @kukonosau

I am not professional.
I did all by myself, just try an error, nice hobby.
I am interested to build a new acpi.sys for XP64 with all the needed(!) words from acpi2.0.
Until now, I have no idea how to do this, I am just not good enough
Dietmar

PS: ⇗ @infuscomus use the 64 bit acpi.sys 5.2.3790.4099 (srv03_sp2_qfe.070612-2335) from the very last package for XP64 from 2016
5er_UpdatePack_XPx64SP2_2017-06_2.7z

 

Page 427

#6391infuscomus⇗ @diderius6

Zitat von ⇗ diderius6 im Beitrag ¶ #6390

PS: @infuscomus use the 64 bit acpi.sys 5.2.3790.4099 (srv03_sp2_qfe.070612-2335) from the very last package for XP64 from 2016


I meant updating the actual C source code and compiling to match outerspace acpi.sys not editing painstakingly in assembly.
#6392diderius6⇗ @infuscomus

Oh, I think this is much more difficult using Source Code from XP64.
⇗ @Mov AX, 0xDEAD tells us in principle, how to do it in assembler.
But I see another problem.
Just as in case of acpi.sys from outerspace ),
there is no garantie, that such a new build acpi.sys from XP64 will work with Ryzen.
Before that, first we need to find out, why Ryzen does not work with the actual acpi.sys from XP64.
And this means hack like usual, solving one BSOD after the other on a Ryzen platform with the very new acpi.sys 5.2.3790.4099
Dietmar
#6393diderius6Just now I try new ewf.sys on a fresh XP SP3.
May be, that the limit of 715 MByte comes from ntldr.
Is there an already ready *.iso from XP SP3, which uses for boot winload.efi and bootia32.efi version 6.0.5219.0 from Longhorn
with boot.ini content

[boot loader]
timeout=30
NOBCD
default=multi(0)disk(0)rdisk(0)partition(2)\WINDOWS
[operating systems]
multi(0)disk(0)rdisk(0)partition(2)\WINDOWS="Microsoft Windows XP Professional" /noexecute=optin /fastdetect /usenewloader

or it is enough to copy those files on a working XP SP3 on a Fat32 partition. Do I need to mod the MBR for this to get rid of ntldr at all
Dietmar
#6394kukonosau⇗ @diderius6
How you testing acpi.sys on Ryzen without Ryzen motherboard? You have helper? Why you are not professional if you experiment sucessfully? You have knowledge assembler and disassembler drivers, but I understand nothing.You are not programmer, but you disassembler drivers? Talent!!! It's very hard for me. I see Hex yesterday. Many figures and nothing understand. What is offset...
#6395diderius6⇗ @kukonosau
Most information you can get here in this forum. I just do the same for to boot XP SP3 without any ntldr.
Hard job but only via this way you get better
Dietmar
#6396kukonosau⇗ @infuscomus
Where is last package 2016 for XPx64? And you use acpi on Ryzen or Intel motherboard? This is official package? Only I Doing Vista also, and I get BSOD!!! Updates from last version doesn't help me.
#6397kukonosau⇗ @diderius6
I nothing understand. You want to Windows XP has loader equal Windows 10? Load writer PBR if I don't mistake? Correctly I understand?
#6398diderius6Bootloader is from Vista 32 bit.
I have done boot XP SP3 and delete ntldr for this, but I dont remember all steps.
The idea is from ⇗ @Gelip and ⇗ @skullteria
Dietmar
#6399kukonosau⇗ @diderius6
Good idea. I missed Windows Vista early, I move from Windows XP to Windows 7 sometime. I don't mark her perfomance equal Windows 7. And I don't check stable acpi in Vista 32-bit. Randomally BSOD Vista x64 on Ryzen causes ACPI, yes? But Vista often was quickly than Windows 7 on Ryzen in desktop.
#6400diderius6⇗ @daniel_k

I think, the Bsod 0xA5 (0x02, xxx, 0x01, yyy)
on Ryzen for the debug version of acpi.sys from XP64 SP2 5.2.3790.3959 (srv03_sp2_rtm.070216-1710)
happens at

ACPIBusIrpQueryResourceRequirements+446

and then, when reach this line, the Bsod happens

PAGE:0000000000080EDF         lea     edx, [r9+1]     ; BugCheckParameter1

Dietmar

PS: May be you see a possibility to hack this Bsod.
#6401diderius6⇗ @kukonosau

Here is a new acpi.sys from XP64 also for Ryzen,
make try
Dietmar

⇗ https://ufile.io/20q6t748
#6402kukonosau⇗ @diderius6
Okay, thanks, I trying. After send message for you, okay? May I will be tester your acpi?
#6403pappyN4So I installed Windows 7 ps2 driver for keyboard.  6.1.7601.23403 i8042prt.sys, kbdclass.sys. Runs fine but does not fix restart issue.  I did not think it would but why not try...   Played with Legacy and 60/64 port USB port settings in BIOS.  No luck.  Does acpi have something with PNP0303 during shutdown? I cant think of anything else at the moment.


⇗ @diderius6 #6411 5.2.3790.3959 BSOD A5 (....0000002, ....AD9C16E9950,....0000001,....AD9C1FE23B0)
#6404kukonosau⇗ @diderius6
Unfortunately, BSOD A5(0x01,xxx,0x02,yyy) again.
#6405diderius6⇗ @kukonosau ⇗ @pappyN4

I think, for any device acpi.sys is used.
And I know the places, where this Bsod 0xA5 (0x02, xxx, 0x01, yyy) can happen,
at least there are 4 places in acpi.sys for this Bsod 0x02
but I do not succeed to solve them. The most most crazy is, that the idea for to solve this Bsod works in acpi.sys 5048 64 bit.
And it is special for Ryzen.
Really crazy. At the moment I am out of ideas
Dietmar

 

Page 428

#6406kukonosau⇗ @diderius6
Any device? Bad. But thanks that not the all writing drivers, working! Maybe, you can modify your acpi from post #2202, but not original acpi? Acpi from #2202 sometimes started and crash randomally, but new acpi never started. I haven't idea also, because while I have enough knowledge about programming.
#6407diderius6⇗ @kukonosau ⇗ @pappyN4

I make a strange mistake.
So, this is new acpi.sys for XP64
Dietmar

⇗ https://ufile.io/4rhoz1f4
#6408Mov AX, 0xDEAD
Zitat von ⇗ pappyN4 im Beitrag ¶ #6380

@diderius6 do you have PDB for 5048 acpi x86 and x64?

PDBs for longhhorn betas available on MS Symbol server since v5342
#6409kukonosau⇗ @diderius6
BSOD A5 again, sorry. (0x02,xxx,0x01,yyy)
#6410kukonosau⇗ @diderius6
Very hard work. But you are tolerant! I was been resigned.
#6411dencorso
Zitat von ⇗ diderius6 im Beitrag ¶ #6371
Here is the link from the translation of @dencorso for the installation instruction of XP from @YuriyCN

⇗ https://msfn.org/board/topic/182311-wind...comment-1194610



Thanks to DeepL, I was able to create that translation, and MSFN member gerwin has fully reformatted it and made it much more readable. If anyone here finds errors in it, please do PM me on MSFN, and I'll be glad to fix/improve it.

BTW, can one of the Russian speakers here enlighten me on a small detail? What does a "танцы с бубном" mean? Is it a "hard time"? Thanks in advance!
#6412diderius6Hi,
I tried to boot XP SP3 with the boot files from Vista, meaning without any ntldr.
But then comes message

\Windows\system32\ntkrnlpa.exe
0xc0000428
Windows cannot verify the digital signature for this file.

I tried bootice for to disable driver signature testing.
All does not help, also not F8 Disable Driver Signature Enforcement.
This is strange, because with the help from ⇗ @skullteria and ⇗ @Gelip I succeed with this in September 2019
Dietmar

PS: The version of the files is winload.exe 6.0.6002.18005 (lh_sp2rtm.090410-1830)
from post ⇗ @skullteria 31 August 2019

¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (144)
#6413diderius6This help file is from ⇗ @skullteria

Step 1:
- From my boot files or any Windows VIsta CD, copy boot folder and place on C:\
Step 2:
- From my boot files or any Windows Vista CD, copy bootmgr and place on C:\
Step 3:
- From my boot files, copy winload to your Windows XP installation, on Windows\System32
Step 4:
- Install EasyBCD, preferly version 1.7.2. I can upload to you. This program require .Net Framework 2.0.
Step 5:
- After install easyBCD, open the program, You will get some erros, only click "ok" and wait program start. The default entry presents on BCD are wrong for now, you need delete on "Add/Remove Entries" and add a new entry, on same page on "Add and entry" your choose on type combobox: "Windows Vista/longhorn", edit Name and choose drive. Next, click in "Add entry"
Step 6:
- In "Manage bootloader section (a button named, like Other what i talked), you see "Bootloader Installtion options", you choose "Reinstall The Vista bootloader", and click in "Write MBR". You can verify if it is ok on "Viwe Settings", if you added entry is ok.
Step 7:
- I recommend add a Ntldr based entry for fallback. For it, you back to Step 5 and instead choose "Windows Vista/Longhorn", you choose "Windows NT/2000/XP/2003", click em "Add Entry". For default, the entry has wrong partition. You need edit in "change Settings" section. There, you will see "Entry based settings", and select the entry what you already add (XP based). And after, choose "Drive" where is windows XP is installed (need ntldr and ntdetect.com placed there too) (for default, C:). Click em "Save Settings".
Final Step:
- If all ok, you will restart and on Windows Vista based entry you press "F8" and choose "Disable driver integrity checks" (or similar"). You will get BSOD A5 0x0000002. For debug it. you need back to easybcd, and edit settings on "Advanced Settings", choose Windows Vista based entry and mark "Debug boot process" and click and "Apply Settings"
#6414diderius6May be this strange behavior is typical for Vista. Or the whole procedure works only on Intel board z170
Dietmar

bootmgr and BCD

In Windows 2K, XP and 2K3 the three boot manager-loader files are ntldr, Ntdetect.com and boot.ini and all three are in the root of the active primary partition of the boot hard drive (the System partition). With Vista these three files have been replaced with bootmgr, BCD and winload.exe, but only bootmgr and BCD stay in the root of the system partition and winload.exe now resides in the Windows/system32 folder of the Boot partition. (Of course the system and boot partitions can be the same partition if there is no Windows dual or multiboot configured). The BCD (Boot Configuration Data) file has replaced the boot.ini file. The bootmanager function that was a part of ntldr is now carried out by bootmgr. The other functions of ntldr and those of Ntdetect.com of setting up the correct environment for Windows are now both carried out by winload.exe. The rest of the boot process remains the same, ntldr and winload are the bootloaders that start the operating system by loading ntoskrnl.exe, hal.dll and the System registry hive.


Method of Operation
In old WinNT the ntldr uses the boot.ini file to locate hard drives and partitions and a typical line for a PC/AT BIOS computer with IDE or SATA hard drives may look like this - multi(0)disk(0)rdisk(0)partition(1)\WINDOWS........ The ntldr knows from the information here that it has to go to partition number one on hard drive zero. It consults the computer's firmware (BIOS) to find out which hard drive is considered to be drive zero, then looks at the partition table on that drive to find out which partition is number one. Once it knows the location of the partition it can then find the Windows/system32 folder of the OS it has been asked to start.

In Vista the bootmgr consults the BCD file for the information it needs to find the correct drive and partition, but it does not use the firmware to find the hard drive, or the partition table to find the partition. Instead it uses the unique Disk Signature in the MBR of a hard drive and the partition offset (starting sector) of a partition.

Inside the BCD store each boot item is in its own little container (Object) and many of these Objects hold details of the disk signature of the hard drive and the starting sector of the partition where the item to be started is located. Each Object is labeled with a 32 digit alpha/numeric number called a GUID number. When bootmgr is asked to start a boot item it identifies the item's Object by its GUID number and then reads the disk signature and partition offset information that is contained in that Object. Bootmgr then scans the connected hard drives until it finds the drive with that disk signature and then jumps straight to the desired sector on that hard drive by using the partition offset information. The BIOS no longer has to be consulted to find the hard drive because bootmgr is not looking for a specific number of drive but just scanning all drives for a disk signature. The partition table on the drive does not have to be consulted because bootmgr does not need to know the number of the partition or be told where that partition is.

In some respects this new method could be seen as an improvement on how ntldr locates a drive and partition. It means that Vista is not wholly dependent on the configuration of drives and partitions remaining completely static. A change to the partition's number (by changing other partitions on the drive), or moving the position of a hard drive in the computer, will have no affect on bootmgr's ability to start any Vista OS that a BCD Object holds valid signature and offset information for. Of course bootmgr will still have to be on the boot hard drive, or even a boot floppy, but the OS itself can have its partition number changed or its hard drive moved in the machine. As long as the disk signature on a hard drive and the starting offset of the Vista partition still matches the ones in the Object, then bootmgr will find the OS. (If you are using the Vista bootmanager to dual or multiboot with an earlier WinNT OS then you will still need to update its boot.ini after configuration changes.)


Moving Vista
There is a definite downside to this new arrangement for anyone who wants to move an install of Vista to another partition or hard drive. If either the signature or offset on the drive no longer match those that were written into an Object, then bootmgr will not be able to find the bootloader and so will give the error message that "winload.exe.....is missing or corrupt". (For Windows 7 see winload.exe....is no longer missing). Of course winload.exe is in perfect working order and located where it should be within the OS, it is just that bootmgr is getting the wrong numbers from the Object on where to look for it. The information in the Object will need to be updated to correctly reflect new signature and offset details. If you are using the Microsoft bootmanager and just have a simple set up of no more than a dual or maybe triple boot then the auto-repair from the Vista DVD might do this for you, that is if you have a full Vista DVD. For the slightly more able computer user the bootrec.exe tool can be used, and for the real experts there is the command line BCDEdit.exe tool. If you are using a third-party bootmanager and your Windows installs are all independent then the DVD Auto Repair would be best avoided as it will try to configure the Windows bootmanager. (If you don't know what I mean by 'Independent' then try the guide here). How to use BCDEdit.exe to update the BCD is explained on the cloning page.
You can also find an updated article on this topic here.
#6415Gelip⇗ @diderius6

Zitat von ⇗ diderius6 im Beitrag ¶ #6412
Hi,
I tried to boot XP SP3 with the boot files from Vista, meaning without any ntldr.
But then comes message

\Windows\system32\ntkrnlpa.exe
0xc0000428
Windows cannot verify the digital signature for this file.

I tried bootice for to disable driver signature testing.
All does not help, also not F8 Disable Driver Signature Enforcement.
This is strange, because with the help from @skullteria and @Gelip I succeed with this in September 2019
Dietmar

PS: The version of the files is winload.exe 6.0.6002.18005 (lh_sp2rtm.090410-1830)
from post @skullteria 31 August 2019

¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (144)

Digital signature checking is only available on 64-bit systems. To boot WinXP 32-bit you need 32-bit Windows Boot Manager - bootmgr, Windows Boot Loader winload.exe from Vista Beta Longhorn 5219 32-bit and boot.ini with /usenewloader option - no BCD needed.
If the partitions on the disk were created using the WinXP installer, run WinPE from DVD/ISO Win7 and execute the CMD command (Shift+F10), which will add an entry in the PBR partition to load the bootmgr file:

bootrec /fixboot
   

Of course you have to delete or rename the ntldr file to e.g. ntldr.bak
If we do not copy the winload.exe file to \WINDOWS\system32 it will be an error:


Files from Vista Beta 5219: Gelip has attached files to this post
#6416infuscomusDoes anyone want to help update with the acpi.sys source code? or should I go it alone?
#6417diderius6⇗ @Gelip
Thanks a lot for help.
I am just trying. The aim of this is to test,
if the very last version of ewf.sys can give about 2.3 Gbyte ram for overlay free also on XP SP3
Dietmar
#6418diderius6⇗ @Gelip

I do all the steps you write,
use only your files and add entry /usenewloader to boot.ini .
With Win7 CD I wrote from its commandline X:\Sources\bootrec /FixBoot
I rename ntldr to ntldrrr.
Now I get message

BlInitializelibrary failed 0xc0000017

So, help is welcome
Dietmar
#6419Gelip⇗ @diderius6
Do you have WinXP on one NTFS partition? Show me what your boot.ini looks like. Temporarily rename the files and restart WinXP:

  • ntldr -> ntldr_old
  • bootmgr -> bootmgr.old
  • winload.exe -> winload.old

If you get an error: BOOTMGR is missing. Press Ctrl+Alt+Del to restart - it means you have successfully executed the bootrec /fixboot command
#6420Gelip⇗ @diderius6
Delete Boot folder with BCD file from partition or add to boot.ini NOBCD parameter:

 
[boot loader]
timeout=30
NOBCD
default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional" /noexecute=optin /fastdetect /usenewloader

 

Page 429

#6421diderius6⇗ @Gelip
I set up everything new.
Exact the same message appears
BlInitializelibrary failed 0xc0000017

When I rename the files to

   ntldr -> ntldr_old
   bootmgr -> bootmgr.old
   winload.exe -> winload.old

I get message
BOOTMGR is missing. Press Ctrl+Alt+Del to restart

Dietmar

PS: I have done this before on the Gigabyte board h110m, XP SP3 and XP64 I can boot there without any ntldr.
This is a Skylake board.

But on the Coffeelake board Fatal1ty Z370 Gaming K6 it fails with the message above.
#6422Gelip⇗ @diderius6
Are there original files in the WinXP system or are you modified acpi.sys, modded-USB, modded-AHCI etc. ???
#6423Gelip@diderius
I had the same error as I tried to boot WinXP 64-bit with winload.efi from Vista Beta2 5384 when I added the /maxmem switch in boot.ini:
⇗ https://www.betaarchive.com/forum/viewto...=433688#p433688
I also found this: ⇗ https://www.betaarchive.com/forum/viewto...=389728#p389728
Samuka wrote:

Zitat
Unfortunatly, the problem resides on Bootmgr and winload from 5048-5270 Vista builds.
#6424George King
Zitat von ⇗ diderius6 im Beitrag ¶ #6412
Hi,
I tried to boot XP SP3 with the boot files from Vista, meaning without any ntldr.
But then comes message

\Windows\system32\ntkrnlpa.exe
0xc0000428
Windows cannot verify the digital signature for this file.

I tried bootice for to disable driver signature testing.
All does not help, also not F8 Disable Driver Signature Enforcement.
This is strange, because with the help from @skullteria and @Gelip I succeed with this in September 2019
Dietmar

PS: The version of the files is winload.exe 6.0.6002.18005 (lh_sp2rtm.090410-1830)
from post @skullteria 31 August 2019

¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (144)


I would like to see this working too. I found this interesting notes about patching winload.exe. Maybe you can patch it too. This can be very nice addition to XP2ESD

 
//Disable PatchGuard - the easy/lazy way.
//for Vista SP2 & Windows 7 (X64)
//
//by Fyyre (thank you Roxaz for helping me to test)
//http://fyyre.l2-fashion.de/
//http://twitter.com/Fyyre

last update: 19/03/2011

This txt file provides a general overview/outline for bypassing signature validation of critical system files (ntoskrnl, mainly) during the Vista/Win 7 boot phase. It is documentation of the steps taken from start to finish, to reach the desired goal of removing kernel patch protection "PatchGuard" without use of a driver. We will call this the 'lazy/easy' way to kill PatchGuard.

We cannot modify ntoskrnl without winload taking up issue...

winload.exe is the Windows loader for Vista & Windows 7. Along with this, he makes some verification of digital signatures and
checking to make sure the files have not been modified. If modification of ntoskrnl is detected, the result is winload *refusing*
to boot Windows and launching a WinPE looking "Recovery Mode".

PART I { additional }: new way for patch of winload.exe

Function ImgpValidateImageHash - signature we locate: 8B C3 49 8B 5B 20 49 8B 73 28 49 8B 7B 30 4D 8B -- you may play with this one to make him smaller. as for this patching, use of dUP2... size of not a concern. First bytes replaced with xor eax, eax (STATUS_SUCCESS) .. all validations successful.

PART I: disassembly and modification of winload.exe

Starting from OslpMain, after loading the System registry hives(registry)... occurs a call to OslInitializeCodeIntegrity:

.text:00000000004016C3 call OslpLoadSystemHive
.text:00000000004016C3
.text:00000000004016C8 cmp eax, ebx
.text:00000000004016CA mov edi, eax
.text:00000000004016CC jl loc_401A08
.text:00000000004016CC
.text:00000000004016D2 mov ecx, ebp
.text:00000000004016D4 call OslInitializeCodeIntegrity <<-- =(


.text:00000000004057E8 OslInitializeCodeIntegrity proc near

original code -->>

We will replace four bytes here:

48 8B C4 53
.text:00000000004057E8 mov rax, rsp
.text:00000000004057EB push rbx
.text:00000000004057EC push rbp


with: 0B0h, 01h, 0C3h, 090h ... which produce:

mov al, 1
ret
nop

Save as winload.exe as osloader.exe (or whatever..) & correct PE checksum (LordPE and/or CFF_Explorer will do). Copy osloader.exe to \Windows\System32

PART II - new BCD entry:

bcdedit /copy {current} /d "PatchGuard Disabled"

"The entry was successfully copied to {01234567-89ab-cdef-00ff-fff000ffffff}" <<-- GUID of new entry. each is different!

bcdedit /timeout 10 <<-- number of seconds to show boot menu.

bcdedit /set {01234567-89ab-cdef-00ff-fff000ffffff} nointegritychecks 1 <<-- no validation of winload

bcdedit /set {01234567-89ab-cdef-00ff-fff000ffffff} recoveryenabled 0 <<-- optional... i dislike this feature, therefore disable.

bcdedit /set {01234567-89ab-cdef-00ff-fff000ffffff} path \Windows\system32\osloader.exe

bcdedit /set {01234567-89ab-cdef-00ff-fff000ffffff} kernel ntkrnlmp.exe (name of modified ntos... =))

Part III: Skip Initialization of PatchGuard - - (driver not required)

As for this .txt, and PatchGuard... we are concerned with one function KiInitializePatchGuard(*1) which is called by KiFilterFiberContext.
KiInitializePatchGuard is a very large function located in the INIT section of ntoskrnl, you can easily locate him via two calls from KiFilterFiberContext, by examination xrefs to exported dword InitSafeBootMode, searching for db 20h dup(90h) + db 044h ... or 48 81 EC 58 0F 00 00 to
name a few...

PatchGuard does not initialize if we boot into safe mode. So to disable we just patch one conditional jxx

KiInitializePatchGuard:

original code -->>
INIT:000000014055D359 sub rsp, 0F58h
INIT:000000014055D360 xor edi, edi
INIT:000000014055D362 cmp cs:InitSafeBootMode, edi
INIT:000000014055D368 jz short loc_14055D371
INIT:000000014055D368
INIT:000000014055D36A mov al, 1
INIT:000000014055D36C jmp loc_1405600D9

modified code -->>
INIT:000000014055D359 sub rsp, 0F58h
INIT:000000014055D360 xor edi, edi
INIT:000000014055D362 cmp cs:InitSafeBootMode, edi
INIT:000000014055D368 nop
INIT:000000014055D369 nop
INIT:000000014055D36A mov al, 1
INIT:000000014055D36C jmp loc_1405600D9 <<-- to end of KiInitializePatchGuard

and back to KiFilterFiberContext... and important detail:

The first jxx in KiInitializePatchGuard must not be taken & al == 1. When we return to KiFilterFiberContext, the jxx must be taken, and EBX must not be xor'd ... (unless enjoy BSOD).

INIT:0000000140567110 loc_140567110:
INIT:0000000140567110 test al, al
INIT:0000000140567112 jnz short loc_140567116
INIT:0000000140567112
INIT:0000000140567114
INIT:0000000140567114 loc_140567114:
INIT:0000000140567114 xor ebx, ebx <<-- bad
INIT:0000000140567114

Anyways... nop the first jxx in KiInitializePatchGuard... save modified ntoskrnl.exe with a different name (i.e. ntkrnlmp.exe) ... fix checksum (PE header).
Then copy your modified kernel to \Windows\system32 -- with bcdedit -->>

bcdedit /set {guid-of-new-entry} kernel ntkrnlmp.exe

When you reboot the system, loading your modified kernel should be a success... He will load without PatchGuard initializing, which will allow you to
once again play in kernel mode without receiving BSOD as result...

This could be worked into mbr bootkit code as well... this is beyond the scope of our intention.

-Fyyre

references:
*1: Bypassing PatchGuard on Windows x64, by Skywing 12/1/2005
[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#6425Gelip⇗ @George King
Yes, I did it:
⇗ https://www.betaarchive.com/forum/viewto...=445111#p445111
⇗ https://www.betaarchive.com/forum/viewto...=445204#p445204
#6426George King⇗ @Gelip

Cool, I'm downloading 6.0.6001.16497/6.0.6001.16497.longhorn_beta3.070330-1720_x86fre_server-multisku_retail_en-us ISO right now to grab needed files.
I want to get rid of boot.ini. Is it possible to boot inly with bootmgr + bcd + patched winload? Are there any needed steps?

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#6427diderius6⇗ @skullteria ⇗ @Gelip ⇗ @George King

In 3. attempt I get it to work again on the Gigabyte H110M board.
XP SP3 booted with original winload.exe 6.0.6002.18005 (lh_sp2rtm.090410-1830) from Vista SP2 32 bit
as you can see on the photos. Later I rename ntldr --> ntldrrr .
I use for this only naked XP SP3 install via original CD(!) ONLY with acpi.sys from outerspace )
and the Sata driver 1006 from fernando on it.

Dietmar

PS:You need to keep the signature of the harddisk for Vista bootloader.
For this you can delete key Mounted Devices in registry HKLM\System\MountedDevices.
And then boot XP normal again before any changes.
XP searches then alone for the correct signature of its harddsik and find it and rebuild key MountedDevices.
This important step is needed and works also for ewf.sys .

In easyBCD is always a wrong letter U: for the Vista boot entry listed.

You have to store it again and again until the letter C: appears also for the vista boot entry.
Also I rewrite MBR 5 times with easyBCD. Boottime to full desktop via Western Digital black 2TB is 3 sec.





#6428George King
Zitat von ⇗ Gelip im Beitrag ¶ #6425
@George King
Yes, I did it:
⇗ https://www.betaarchive.com/forum/viewto...=445111#p445111
⇗ https://www.betaarchive.com/forum/viewto...=445204#p445204


I opened winload.exe 6.0.6001.16497 (longhorn_beta3.070330-1720) using HxD and searched for 48 8B C4 53 as you mentioned to replace it with B0 01 C3 90. I can't find it. Can please share patched files? [TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#6429diderius6I do not succeed to transfer this xp from
H110M ---> Asrock Fatalty gaming k6.
After fight with the Iastor driver I can use the bootmenue from Vista
and choosing XP via ntldr starts normal, recognicing a lot of new drivers.
But when I choose the Vista entry in the bootmenue,
it starts also normal but then hangs with black screen.
I also rebuild with easyBCD the old ntldr MBR, works.
But when I then install again the MBR for Vista,
exact the same happens as before, XP via ntldr starts
but via winload.exe hangs
Dietmar
#6430Gelip⇗ @George King

Zitat von ⇗ George King im Beitrag ¶ #6426

Is it possible to boot inly with bootmgr + bcd + patched winload?

Yes, but what for? Signature checking is only available on 64-bit Windows.

My patched files are from 64-bit beta Longhorn 2008 6.0.6001.16497, not 32-bit. In 32-bit files, nothing needs to be patched because there is no signature checking there.

⇗ @diderius6
Zitat von ⇗ diderius6 im Beitrag ¶ #6427

XP SP3 booted with original winload.exe 6.0.6002.18005 (lh_sp2rtm.090410-1830) from Vista SP2 32 bit

Checking signature in Windows 32-bit - WTF ???

⇗ Test Signing
#6431skullteria
Zitat von ⇗ Gelip im Beitrag ¶ #6430
@George King
Zitat von ⇗ George King im Beitrag ¶ #6426

Is it possible to boot inly with bootmgr + bcd + patched winload?

Yes, but what for? Signature checking is only available on 64-bit Windows.

My patched files are from 64-bit beta Longhorn 2008 6.0.6001.16497, not 32-bit. In 32-bit files, nothing needs to be patched because there is no signature checking there.

@diderius6
Zitat von ⇗ diderius6 im Beitrag ¶ #6427

XP SP3 booted with original winload.exe 6.0.6002.18005 (lh_sp2rtm.090410-1830) from Vista SP2 32 bit

Checking signature in Windows 32-bit - WTF ???

⇗ Test Signing


No, Digital Certificate Signature for kernel files is required on x86 too. winload must be patched on if you use a original kernel, i have a method to work without patch winload
#6432diderius6⇗ @skullteria

"i have a method to work without patch winload"

Please tell how.
And can you boot via this methode also brandnew motherboards, with the files from Vista SP2
Dietmar
#6433George King
Zitat von ⇗ diderius6 im Beitrag ¶ #6432
@skullteria

"i have a method to work without patch winload"

Please tell how.
And can you boot via this methode also brandnew motherboards, with the files from Vista SP2
Dietmar




I think we still need to patch winload if we want to patch kernel to support more RAM.
I see there is function _ImgpValidateImageHash like in mentioned document I posted on previous page. I'm not able to patch it..

Also I have modded BCD to have 2 options - Legacy using ntldr + boot.ini and new option for winload. Here is whole set of files - Vista SP2. All other 23 languages should be added too.
Can you patch winload?

Btw, this cannot solve kernel and hal detection... For this purpose is still needed Longhor NTLDR + boot.ini with /detectHAL and dtecthal.inf inside Windows\inf


EDIT: Here are some useful informations, patching winload seems like only one perfect solution
 
https://www.iasj.net/iasj/download/40eb00455c0a5a1f



EDIT2: DetectHAL can be set by BCD

 
https://www.geoffchappell.com/notes/windows/boot/bcd/osloader/detecthal.htm
George King has attached files to this post [TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#6434diderius6I take a look,
why this bootmethode not works until now on Coffeelake board Asrock z370 Fatalty k6.
I identify

PFN_LIST_CORRUPT

Bsod 0x0000004E (0x0000008F, 0x00000FB1, 0x0008E6B1, 0x00000000)

Never seen before
Dietmar

PS: It depends not on memory size. I change the 32 Gbyte against the 4 Gbyte stick form the H110M board, same Bsod.

⇗ https://docs.microsoft.com/en-us/windows...fn-list-corrupt

It is in zeropage.c
PageFrame = MmFreePageListHead.Flink;
ASSERT (PageFrame != MM_EMPTY_LIST);

Pfn1 = MI_PFN_ELEMENT(PageFrame);

NewPage = MiRemoveAnyPage(MI_GET_COLOR_FROM_LIST_ENTRY(PageFrame, Pfn1));
if (NewPage != PageFrame) {

//
// Someone has removed a page from the colored lists
// chain without updating the freelist chain.
//

KeBugCheckEx (PFN_LIST_CORRUPT,
0x8F,
NewPage,
PageFrame,
0);
}
#6435diderius6I succeed to enable the very last ewf.sys from win 7.1 bit32 Version 1.0.1533.0 (win7sp1_ldr.160325-0600)
with XP SP3.
No matter, if you use Vista boot with winload.exe or classic ntldr,
the limit of ram overlay is always about 719 MByte.
But this new ewf.sys seems to be more stable than the ewf.sys from XP embedded.
And this ewf.sys from win7 Bit32 still works together with ewfmgr.exe from XP Embedded.

For to make it work under XP SP3, you have to build a new ewf.reg
and you need to put in your correct "DiskSignature" and "PartitionOffset".
The old ewf.reg from XP Embedded does not work any longer. Because now the disksignature and the partitionsoffset
have to be given. I have no idea how this can work any longer with floppy or other changeable media without those values.
The old ewf.sys from XP Embedded can(!) work with changeable medium.

For to start, you have to change "Enabled"=dword:00000000 ---> "Enabled"=dword:00000001

Dietmar

⇗ https://ufile.io/jx84ajtd
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{71A27CDD-812A-11D0-BEC7-08002BE2092F}]
"UpperFilters"="Ewf"
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ewf]
"ErrorControl"=dword:00000001
"Group"="System Bus Extender"
"Start"=dword:00000000
"Type"=dword:00000001

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ewf\Parameters]

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ewf\Parameters\Protected]

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ewf\Parameters\Protected\Volume0]
"Type"=dword:00000001
"ArcName"="multi(0)disk(0)rdisk(0)partition(1)"
"Enabled"=dword:00000000
"CompareBeforeAlloc"=dword:00000000
"DiskSignature"=dword:db4c1922
"PartitionOffset"=dword:00100000

 

Page 430

#6436Mov AX, 0xDEAD
Zitat von ⇗ dencorso im Beitrag ¶ #6411
What does a "танцы с бубном" mean? Is it a "hard time"?

"танцы с бубном" = "shaman dance"  - making something unfinished/untrivial/bugged/incompatible to work well
#6437gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #6434
I take a look,
why this bootmethode not works until now on Coffeelake board Asrock z370 Fatalty k6.
I identify

PFN_LIST_CORRUPT
⇗ @diderius6 ...could this have something to do with PAE? Don't know if this helps, some of it is on Chinese. However, it references some windbg commands related to memory.

⇗ https://www.programmersought.com/article/44473588910/

Another link with references to windbg usage for memory.

⇗ http://www.cs.umd.edu/~waa/412-F10/Lab3.pdf
#6438diderius6⇗ @gordo999

This Bsod PFN_LIST_CORRUPT is a really strange error.
The place is in C-Code, where I write above.
It seems to happen on nearly all newer motherboards,
but not always on all.
It happens only with the use of the Vista SP2 bootloader.
I read, that somebody thinks it can be because of corrupt ram.
This is not true, XP SP3 booted via ntldr never shows this behavior
Dietmar
#6439gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #6438
I read, that somebody thinks it can be because of corrupt ram.
This is not true, XP SP3 booted via ntldr never shows this behaviorDietmar
⇗ @diderius6 ...corrupt RAM is unlikely if it only happens during certain procedures. If you have multiple memory cards you can swap them around. If their is corruption the symptoms will change. If the corruption is in the first board into which the OS is loaded, you will likely see boot errors, or no boot at all.

I should have spent more time learning the Windows memory system but it can become quite complex. The problem is the difference between virtual memory and physical memory. The fact that you have pages of memory at all shows you how much memory is paged out to disk. While tracing through memory, I have encountered pages missing, meaning they have been swapped to disk. You must reload them before proceeding or the OS doesn't like it.

That's why I asked if it might be related to a PAE mod.
#6440gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #6438
It happens only with the use of the Vista SP2 bootloader.
⇗ @diderius6 ...an idea. During boot, some firmware is read and moved to RAM. At that point, I'd think the memory address where it is loaded is static, that is, hard coded into the firmware code. During the boot process, before the OS loads, or even the loader, the RAM is initialized. I think it is initiliazed to all zeros.

There may be a difference between the Vista loading addresses and procedure than with other OSes. Maybe the address it needs to load it's firmware code is not available for some reason. It could be damaged memory but it could be something else as well. Your paging system is working, however, which means to me that you're past the boot stage and into the OS loading by ntoskrnl. That would suggest there is a problem with ntoskrnl or a related module since it controls the memory manager.

Do you see any evidence of Windows loading, like the 'Windows is loading..." message? How far into the boot process do you get before receiving the error? Also, are you running a pagefile and is there a pointer to it in your system configuration files? Is the pagefile large enough? The system may be trying to write to a pagefile that isn't there.
#6441gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #6434
PFN_LIST_CORRUPT
@diderius6... something else worth a try. I was trying to install Hiren's Boot Disk on W7 and it normally won't work on  a newer mobo/chipset due to the same issues we have encountered. The error I got was 0xC0000017, which is related to PFNs but it is caused by memory blocks being marked by Windows as bad.

To check this, open a command window as admin and type 'bcdedit /enum all' (no quotes). If Windows has marked certain blocks as bad, you should see sections like {badmemory} with the memory addresses listed. A solution offered for my BCD file is to use:

bcdedit /deletevalue {badmemory} badmemorylist

Don't know if this is related to your problem but it might be. The problem I am having is related to Hiren's using a ramdisk. The ramdisk needs contiguous memory, meaning it cannot tolerate missing blocks of memory. This version of Hiren's is updated so it will run on mini Win7 or XP. The older versions only ran on mini XP. When I tried the XP version I got an acpi 0xA5 error, and I said, "I know how to fix that"...acpi from outer space!!!  . I may have to fix their XP version so it will run. Don't know why I'm having problems with the W7 version that is memory related and producing an 0xC0000017 boot error. Tells me I don't have enough memory and I have 8 gigs.

⇗ https://borncity.com/win/2017/10/06/wind...ramdisk-memory/
#6442Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #6438
@gordo999
It happens only with the use of the Vista SP2 bootloader.
I read, that somebody thinks it can be because of corrupt ram.


Hi All,

i think this is logical corruption due miscompatible bootloader structs
best way is inject little code for change format from vista to xp/2003 before starting ntoskrnl.exe
#6443infuscomus⇗ @Mov AX, 0xDEAD

Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #6442
best way is inject little code for change format from vista to xp/2003


what do you need to inject?
#6444George KingIf anybody interested in winload.exe patching. I can provide ISO created by XP2ESD for testing that automatically have 2 boot options in BCD. Legacy ntldr and winload that causing BSOD.

Winload will be very good adition, because writing correct boot.ini is always pain.

P.S. PM me for ISO

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#6445Mov AX, 0xDEAD
Zitat von ⇗ infuscomus im Beitrag ¶ #6443
@Mov AX, 0xDEAD
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #6442
best way is inject little code for change format from vista to xp/2003

what do you need to inject?

Hi infuscomus,

ntldr/winload fill _LOADER_PARAMETER_BLOCK and start ntoskrnl.exe with this structure as first argument
after checking Vista vs XP i've changed mind - there is no significal difference, struct almost same, BSOD has other unknow source

_LOADER_PARAMETER_BLOCK Vista has more fields at end
struct _LOADER_PARAMETER_BLOCK// Size=0x7c
{
struct _LIST_ENTRY LoadOrderListHead;// Offset=0x0 Size=0x8
struct _LIST_ENTRY MemoryDescriptorListHead;// Offset=0x8 Size=0x8
struct _LIST_ENTRY BootDriverListHead;// Offset=0x10 Size=0x8
unsigned long KernelStack;// Offset=0x18 Size=0x4
unsigned long Prcb;// Offset=0x1c Size=0x4
unsigned long Process;// Offset=0x20 Size=0x4
unsigned long Thread;// Offset=0x24 Size=0x4
unsigned long RegistryLength;// Offset=0x28 Size=0x4
void *RegistryBase;// Offset=0x2c Size=0x4
struct _CONFIGURATION_COMPONENT_DATA *ConfigurationRoot;// Offset=0x30 Size=0x4
char *ArcBootDeviceName;// Offset=0x34 Size=0x4
char *ArcHalDeviceName;// Offset=0x38 Size=0x4
char *NtBootPathName;// Offset=0x3c Size=0x4
char *NtHalPathName;// Offset=0x40 Size=0x4
char *LoadOptions;// Offset=0x44 Size=0x4
struct _NLS_DATA_BLOCK *NlsData;// Offset=0x48 Size=0x4
struct _ARC_DISK_INFORMATION *ArcDiskInformation;// Offset=0x4c Size=0x4
void *OemFontFile;// Offset=0x50 Size=0x4
struct _SETUP_LOADER_BLOCK *SetupLoaderBlock;// Offset=0x54 Size=0x4
struct _LOADER_PARAMETER_EXTENSION *Extension;// Offset=0x58 Size=0x4
union <unnamed-tag> u;// Offset=0x5c Size=0xc
struct _FIRMWARE_INFORMATION_LOADER_BLOCK FirmwareInformation;// Offset=0x68 Size=0x14
};

struct _LOADER_PARAMETER_BLOCK// Size=0x68
{
struct _LIST_ENTRY LoadOrderListHead;// Offset=0x0 Size=0x8
struct _LIST_ENTRY MemoryDescriptorListHead;// Offset=0x8 Size=0x8
struct _LIST_ENTRY BootDriverListHead;// Offset=0x10 Size=0x8
unsigned long KernelStack;// Offset=0x18 Size=0x4
unsigned long Prcb;// Offset=0x1c Size=0x4
unsigned long Process;// Offset=0x20 Size=0x4
unsigned long Thread;// Offset=0x24 Size=0x4
unsigned long RegistryLength;// Offset=0x28 Size=0x4
void *RegistryBase;// Offset=0x2c Size=0x4
struct _CONFIGURATION_COMPONENT_DATA *ConfigurationRoot;// Offset=0x30 Size=0x4
char *ArcBootDeviceName;// Offset=0x34 Size=0x4
char *ArcHalDeviceName;// Offset=0x38 Size=0x4
char *NtBootPathName;// Offset=0x3c Size=0x4
char *NtHalPathName;// Offset=0x40 Size=0x4
char *LoadOptions;// Offset=0x44 Size=0x4
struct _NLS_DATA_BLOCK *NlsData;// Offset=0x48 Size=0x4
struct _ARC_DISK_INFORMATION *ArcDiskInformation;// Offset=0x4c Size=0x4
void *OemFontFile;// Offset=0x50 Size=0x4
struct _SETUP_LOADER_BLOCK *SetupLoaderBlock;// Offset=0x54 Size=0x4
struct _LOADER_PARAMETER_EXTENSION *Extension;// Offset=0x58 Size=0x4
union __unnamed u;// Offset=0x5c Size=0xc
};

union <unnamed-tag>// Size=0xc
{
union // Size=0xc
{
struct _I386_LOADER_BLOCK I386;// Offset=0x0 Size=0xc
struct _ALPHA_LOADER_BLOCK Alpha;// Offset=0x0 Size=0x4
struct _IA64_LOADER_BLOCK Ia64;// Offset=0x0 Size=0x4
};
};

LoadOrderListHead = KLDR_DATA_TABLE_ENTRY
MemoryDescriptorListHead = MEMORY_ALLOCATION_DESCRIPTOR
BootDriverListHead = BOOT_DRIVER_LIST_ENTRY


_CONFIGURATION_COMPONENT_DATA full match
struct _CONFIGURATION_COMPONENT_DATA// Size=0x34
{
struct _CONFIGURATION_COMPONENT_DATA *Parent;// Offset=0x0 Size=0x4
struct _CONFIGURATION_COMPONENT_DATA *Child;// Offset=0x4 Size=0x4
struct _CONFIGURATION_COMPONENT_DATA *Sibling;// Offset=0x8 Size=0x4
struct _CONFIGURATION_COMPONENT ComponentEntry;// Offset=0xc Size=0x24
void *ConfigurationData;// Offset=0x30 Size=0x4
};

struct _CONFIGURATION_COMPONENT_DATA// Size=0x34
{
struct _CONFIGURATION_COMPONENT_DATA *Parent;// Offset=0x0 Size=0x4
struct _CONFIGURATION_COMPONENT_DATA *Child;// Offset=0x4 Size=0x4
struct _CONFIGURATION_COMPONENT_DATA *Sibling;// Offset=0x8 Size=0x4
struct _CONFIGURATION_COMPONENT ComponentEntry;// Offset=0xc Size=0x24
void *ConfigurationData;// Offset=0x30 Size=0x4
};


_CONFIGURATION_COMPONENT full match
struct _CONFIGURATION_COMPONENT// Size=0x24
{
enum _CONFIGURATION_CLASS Class;// Offset=0x0 Size=0x4
enum _CONFIGURATION_TYPE Type;// Offset=0x4 Size=0x4
struct _DEVICE_FLAGS Flags;// Offset=0x8 Size=0x4
unsigned short Version;// Offset=0xc Size=0x2
unsigned short Revision;// Offset=0xe Size=0x2
unsigned long Key;// Offset=0x10 Size=0x4
unsigned long AffinityMask;// Offset=0x14 Size=0x4
unsigned long ConfigurationDataLength;// Offset=0x18 Size=0x4
unsigned long IdentifierLength;// Offset=0x1c Size=0x4
char *Identifier;// Offset=0x20 Size=0x4
};

struct _CONFIGURATION_COMPONENT// Size=0x24
{
enum _CONFIGURATION_CLASS Class;// Offset=0x0 Size=0x4
enum _CONFIGURATION_TYPE Type;// Offset=0x4 Size=0x4
struct _DEVICE_FLAGS Flags;// Offset=0x8 Size=0x4
unsigned short Version;// Offset=0xc Size=0x2
unsigned short Revision;// Offset=0xe Size=0x2
unsigned long Key;// Offset=0x10 Size=0x4
unsigned long AffinityMask;// Offset=0x14 Size=0x4
unsigned long ConfigurationDataLength;// Offset=0x18 Size=0x4
unsigned long IdentifierLength;// Offset=0x1c Size=0x4
char *Identifier;// Offset=0x20 Size=0x4
};


_NLS_DATA_BLOCK full match
struct _NLS_DATA_BLOCK// Size=0xc
{
void *AnsiCodePageData;// Offset=0x0 Size=0x4
void *OemCodePageData;// Offset=0x4 Size=0x4
void *UnicodeCaseTableData;// Offset=0x8 Size=0x4
};

struct _NLS_DATA_BLOCK// Size=0xc
{
void *AnsiCodePageData;// Offset=0x0 Size=0x4
void *OemCodePageData;// Offset=0x4 Size=0x4
void *UnicodeCaseTableData;// Offset=0x8 Size=0x4
};


_ARC_DISK_INFORMATION full match

_SETUP_LOADER_BLOCK - probably match (used only at installation stage ???)

_LOADER_PARAMETER_EXTENSION - Vista has more fields at end
struct _LOADER_PARAMETER_EXTENSION// Size=0x84
{
unsigned long Size;// Offset=0x0 Size=0x4
struct _PROFILE_PARAMETER_BLOCK Profile;// Offset=0x4 Size=0x10
unsigned long MajorVersion;// Offset=0x14 Size=0x4
unsigned long MinorVersion;// Offset=0x18 Size=0x4
void *EmInfFileImage;// Offset=0x1c Size=0x4
unsigned long EmInfFileSize;// Offset=0x20 Size=0x4
void *TriageDumpBlock;// Offset=0x24 Size=0x4
unsigned long LoaderPagesSpanned;// Offset=0x28 Size=0x4
struct _HEADLESS_LOADER_BLOCK *HeadlessLoaderBlock;// Offset=0x2c Size=0x4
struct _SMBIOS_TABLE_HEADER *SMBiosEPSHeader;// Offset=0x30 Size=0x4
void *DrvDBImage;// Offset=0x34 Size=0x4
unsigned long DrvDBSize;// Offset=0x38 Size=0x4
struct _NETWORK_LOADER_BLOCK *NetworkLoaderBlock;// Offset=0x3c Size=0x4
unsigned char *HalpIRQLToTPR;// Offset=0x40 Size=0x4
unsigned char *HalpVectorToIRQL;// Offset=0x44 Size=0x4
struct _LIST_ENTRY FirmwareDescriptorListHead;// Offset=0x48 Size=0x8
void *AcpiTable;// Offset=0x50 Size=0x4
unsigned long AcpiTableSize;// Offset=0x54 Size=0x4
unsigned long BootViaWinload:1;// Offset=0x58 Size=0x4 BitOffset=0x0 BitSize=0x1
unsigned long Reserved:31;// Offset=0x58 Size=0x4 BitOffset=0x1 BitSize=0x1f
struct _LOADER_PERFORMANCE_DATA *LoaderPerformanceData;// Offset=0x5c Size=0x4
struct _LIST_ENTRY BootApplicationPersistentData;// Offset=0x60 Size=0x8
void *WmdTestResult;// Offset=0x68 Size=0x4
struct _GUID BootIdentifier;// Offset=0x6c Size=0x10
unsigned long ResumePages;// Offset=0x7c Size=0x4
void *DumpHeader;// Offset=0x80 Size=0x4

};

struct _LOADER_PARAMETER_EXTENSION// Size=0x40
{
unsigned long Size;// Offset=0x0 Size=0x4
struct _PROFILE_PARAMETER_BLOCK Profile;// Offset=0x4 Size=0x10
unsigned long MajorVersion;// Offset=0x14 Size=0x4
unsigned long MinorVersion;// Offset=0x18 Size=0x4
void *InfFileImage;// Offset=0x1c Size=0x4
unsigned long InfFileSize;// Offset=0x20 Size=0x4
void *TriageDumpBlock;// Offset=0x24 Size=0x4
unsigned long LoaderPagesSpanned;// Offset=0x28 Size=0x4
struct _HEADLESS_LOADER_BLOCK *HeadlessLoaderBlock;// Offset=0x2c Size=0x4
struct _SMBIOS_TABLE_HEADER *SMBiosEPSHeader;// Offset=0x30 Size=0x4
void *DrvDBImage;// Offset=0x34 Size=0x4
unsigned long DrvDBSize;// Offset=0x38 Size=0x4
struct _NETWORK_LOADER_BLOCK *NetworkLoaderBlock;// Offset=0x3c Size=0x4
};


_I386_LOADER_BLOCK full match
struct _I386_LOADER_BLOCK// Size=0xc
{
void *CommonDataArea;// Offset=0x0 Size=0x4
unsigned long MachineType;// Offset=0x4 Size=0x4
unsigned long VirtualBias;// Offset=0x8 Size=0x4
};

struct _I386_LOADER_BLOCK// Size=0xc
{
void *CommonDataArea;// Offset=0x0 Size=0x4
unsigned long MachineType;// Offset=0x4 Size=0x4
unsigned long VirtualBias;// Offset=0x8 Size=0x4
};


_KLDR_DATA_TABLE_ENTRY mismatch, LoadedImports shifted
struct _KLDR_DATA_TABLE_ENTRY// Size=0x54
{
struct _LIST_ENTRY InLoadOrderLinks;// Offset=0x0 Size=0x8
void *ExceptionTable;// Offset=0x8 Size=0x4
unsigned long ExceptionTableSize;// Offset=0xc Size=0x4
void *GpValue;// Offset=0x10 Size=0x4
struct _NON_PAGED_DEBUG_INFO *NonPagedDebugInfo;// Offset=0x14 Size=0x4
void *DllBase;// Offset=0x18 Size=0x4
void *EntryPoint;// Offset=0x1c Size=0x4
unsigned long SizeOfImage;// Offset=0x20 Size=0x4
struct _UNICODE_STRING FullDllName;// Offset=0x24 Size=0x8
struct _UNICODE_STRING BaseDllName;// Offset=0x2c Size=0x8
unsigned long Flags;// Offset=0x34 Size=0x4
unsigned short LoadCount;// Offset=0x38 Size=0x2
unsigned short __Unused5;// Offset=0x3a Size=0x2
void *SectionPointer;// Offset=0x3c Size=0x4
unsigned long CheckSum;// Offset=0x40 Size=0x4
unsigned long CoverageSectionSize;// Offset=0x44 Size=0x4
void *CoverageSection;// Offset=0x48 Size=0x4
void *LoadedImports;// Offset=0x4c Size=0x4
void *PatchInformation;// Offset=0x50 Size=0x4
};

struct _KLDR_DATA_TABLE_ENTRY// Size=0x4c
{
struct _LIST_ENTRY InLoadOrderLinks;// Offset=0x0 Size=0x8
void *__Unused1;// Offset=0x8 Size=0x4
void *__Unused2;// Offset=0xc Size=0x4
void *__Unused3;// Offset=0x10 Size=0x4
struct _NON_PAGED_DEBUG_INFO *NonPagedDebugInfo;// Offset=0x14 Size=0x4
void *DllBase;// Offset=0x18 Size=0x4
void *EntryPoint;// Offset=0x1c Size=0x4
unsigned long SizeOfImage;// Offset=0x20 Size=0x4
struct _UNICODE_STRING FullDllName;// Offset=0x24 Size=0x8
struct _UNICODE_STRING BaseDllName;// Offset=0x2c Size=0x8
unsigned long Flags;// Offset=0x34 Size=0x4
unsigned short LoadCount;// Offset=0x38 Size=0x2
unsigned short __Unused5;// Offset=0x3a Size=0x2
void *SectionPointer;// Offset=0x3c Size=0x4
unsigned long CheckSum;// Offset=0x40 Size=0x4
void *LoadedImports;// Offset=0x44 Size=0x4
void *__Unused6;// Offset=0x48 Size=0x4
};


MEMORY_ALLOCATION_DESCRIPTOR full match
struct _MEMORY_ALLOCATION_DESCRIPTOR// Size=0x14
{
struct _LIST_ENTRY ListEntry;// Offset=0x0 Size=0x8
enum _TYPE_OF_MEMORY MemoryType;// Offset=0x8 Size=0x4
unsigned long BasePage;// Offset=0xc Size=0x4
unsigned long PageCount;// Offset=0x10 Size=0x4
};

struct _MEMORY_ALLOCATION_DESCRIPTOR// Size=0x14
{
struct _LIST_ENTRY ListEntry;// Offset=0x0 Size=0x8
enum _TYPE_OF_MEMORY MemoryType;// Offset=0x8 Size=0x4
unsigned long BasePage;// Offset=0xc Size=0x4
unsigned long PageCount;// Offset=0x10 Size=0x4
};


BOOT_DRIVER_LIST_ENTRY Vista has more fields at end
struct _BOOT_DRIVER_LIST_ENTRY// Size=0x24
{
struct _LIST_ENTRY Link;// Offset=0x0 Size=0x8
struct _UNICODE_STRING FilePath;// Offset=0x8 Size=0x8
struct _UNICODE_STRING RegistryPath;// Offset=0x10 Size=0x8
struct _KLDR_DATA_TABLE_ENTRY *LdrEntry;// Offset=0x18 Size=0x4
long LoadStatus;// Offset=0x1c Size=0x4
unsigned long LoadInformation;// Offset=0x20 Size=0x4

};

struct _BOOT_DRIVER_LIST_ENTRY// Size=0x1c
{
struct _LIST_ENTRY Link;// Offset=0x0 Size=0x8
struct _UNICODE_STRING FilePath;// Offset=0x8 Size=0x8
struct _UNICODE_STRING RegistryPath;// Offset=0x10 Size=0x8
struct _KLDR_DATA_TABLE_ENTRY *LdrEntry;// Offset=0x18 Size=0x4
};
#6446George KingThis is BSOD that I encounter when booting using Windows 7 bootmgr + BCD + Vista winload.exe.

This what happends. Bootmenu and first option is for winload and detectHAL and integrityservices disabled in BCD.
Boot menu

Then booting

Then BSOD


Tested in VirtualBox

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#6447diderius6⇗ @Mov AX, 0xDEAD

The Bsod "PFN_LIST_CORRUPT"
happens very late in boot process.
I know this for sure, because I have seen all the Bsods with acpi.sys,
no bootdevice found etc. Until now I cant debug Vista,
because always this crazy "enable signature unforce" I have to hit in the beginning.
Because this bootloader from Vista SP2 would be really nice,
I can only debug it when I get over this "unforce signature" step
Dietmar
#6448kukonosau⇗ @diderius6
Hi. ACPI for WinXPx64 working on RYzen if download 5eraph's post-SP2 Update Pack v2017-06_2? Infuscomus use him on Ryzen? Where is download, at the way?
#6449George King
Zitat von ⇗ diderius6 im Beitrag ¶ #6447
@Mov AX, 0xDEAD

The Bsod "PFN_LIST_CORRUPT"
happens very late in boot process.
I know this for sure, because I have seen all the Bsods with acpi.sys,
no bootdevice found etc. Until now I cant debug Vista,
because always this crazy "enable signature unforce" I have to hit in the beginning.
Because this bootloader from Vista SP2 would be really nice,
I can only debug it when I get over this "unforce signature" step
Dietmar


ISO in PM on the way! [TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#6450diderius6I succeed to set up a windbg session for the Vista SP2 bootloader winload.exe using boot.ice.
But this gives no information?
How to set up here a good windbg session
Dietmar

The Bsod PFN_LIST_CORRUPT

happens,
but is not(?!) shown in debugger
Dietmar


Microsoft (R) Windows Debugger Version 6.12.0002.633 X86
Copyright (c) Microsoft Corporation. All rights reserved.

Opened \\.\com1
Waiting to reconnect...
BD: Boot Debugger Initialized
Connected to Windows Boot Debugger 6002 x86 compatible target at (Wed Jan 27 21:32:26.156 2021 (UTC + 1:00)), ptr64 FALSE
Kernel Debugger connection established.
Symbol search path is: C:\WINDOWS\symbols
Executable search path is: C:\WINDOWS\symbols
*** ERROR: Module load completed but symbols could not be loaded for winload.exe
Windows Boot Debugger Kernel Version 6002 UP Free x86 compatible
Machine Name:
Primary image base = 0x00236000 Loaded module list = 0x00336e98
System Uptime: not available
Console video mode set to 0x118
Console video mode set to 0x3
*** Windows is unable to verify the signature of
the file \Windows\system32\ntkrnlpa.exe. It will be allowed to load
because the boot debugger is enabled.
Use g to continue!!
Break instruction exception - code 80000003 (first chance)
*** ERROR: Module load completed but symbols could not be loaded for winload.exe
winload+0x2caa6:
00262aa6 cc int 3
kd> g
*** Windows is unable to verify the signature of
the file \Windows\system32\hal.dll. It will be allowed to load
because the boot debugger is enabled.
Use g to continue!!
Break instruction exception - code 80000003 (first chance)
winload+0x2caa6:
00262aa6 cc int 3
kd> g
*** Windows is unable to verify the signature of
the file \Windows\system32\kdcom.dll. It will be allowed to load
because the boot debugger is enabled.
Use g to continue!!
Break instruction exception - code 80000003 (first chance)
winload+0x2caa6:
00262aa6 cc int 3
kd> g
*** Windows is unable to verify the signature of
the file \Windows\system32\BOOTVID.dll. It will be allowed to load
because the boot debugger is enabled.
Use g to continue!!
Break instruction exception - code 80000003 (first chance)
winload+0x2caa6:
00262aa6 cc int 3
kd> g
*** Windows is unable to verify the signature of
the file \Windows\System32\Drivers\KSecDD.sys. It will be allowed to load
because the boot debugger is enabled.
Use g to continue!!
Break instruction exception - code 80000003 (first chance)
winload+0x2caa6:
00262aa6 cc int 3
kd> g
Shutdown occurred at (Wed Jan 27 21:33:08.609 2021 (UTC + 1:00))...unloading all symbol tables.
Waiting to reconnect...
Connected to Windows XP 2600 x86 compatible target at (Wed Jan 27 21:33:09.343 2021 (UTC + 1:00)), ptr64 FALSE
Kernel Debugger connection established.
Symbol search path is: C:\WINDOWS\symbols
Executable search path is: C:\WINDOWS\symbols
*** ERROR: Symbol file could not be found. Defaulted to export symbols for ntkrpamp.exe -
Windows XP Kernel Version 2600 MP (1 procs) Free x86 compatible
Built by: 2600.xpsp.080413-2111
Machine Name:
Kernel base = 0x8102d000 PsLoadedModuleList = 0x810b3720
System Uptime: not available


Intel Storage Driver Ver: 11.2.0.1006

ERROR: DavReadRegistryValues/RegQueryValueExW(4). WStatus = 5
ERROR: DavReadRegistryValues/RegQueryValueExW(5). WStatus = 5
ERROR: DavReadRegistryValues/RegQueryValueExW(6). WStatus = 5
Break instruction exception - code 80000003 (first chance)
*******************************************************************************
* *
* You are seeing this message because you pressed either *
* CTRL+C (if you run kd.exe) or, *
* CTRL+BREAK (if you run WinDBG), *
* on your debugger machine's keyboard. *
* *
* THIS IS NOT A BUG OR A SYSTEM CRASH *
* *
* If you did not intend to break into the debugger, press the "g" key, then *
* press the "Enter" key now. This message might immediately reappear. If it *
* does, press "g" and "Enter" again. *
* *
*******************************************************************************
*** ERROR: Symbol file could not be found. Defaulted to export symbols for ntkrpamp.exe -
nt!DbgBreakPointWithStatus+0x4:
810815dc cc int 3
0: kd> lm
start end module name
7c910000 7c9c6000 ntdll M (pdb symbols) c:\windows\symbols\dll\ntdll.pdb
8100c000 8102cd00 hal (deferred)
8102d000 8123b000 nt (export symbols) ntkrpamp.exe
ba747000 ba787a80 HTTP (deferred)
baa80000 baad1c00 srv (deferred)
baafa000 bab26180 mrxdav (deferred)
bad9f000 bada2900 ndisuio (deferred)
bae97000 baed7000 dump_storport (deferred)
baed7000 baee8000 dump_storahci (deferred)
baf10000 baf7f780 mrxsmb (deferred)
baf80000 bafaae80 rdbss (deferred)
bafab000 bafccb80 afd (deferred)
bafcd000 baff4c00 netbt (deferred)
baff5000 bb01a500 ipnat (deferred)
bb01b000 bb073380 tcpip (deferred)
bb074000 bb086600 ipsec (deferred)
bb087000 bb09af00 VIDEOPRT (deferred)
bb0e7000 bb0e9900 Dxapi (deferred)
bb0eb000 bb148f00 update (deferred)
bb149000 bb16b700 ks (deferred)
bb16c000 bb19be80 rdpdr (deferred)
bb19c000 bb1ace00 psched (deferred)
bb1d5000 bb1eb580 ndiswan (deferred)
bb203000 bb22b000 HDAudBus (deferred)
bb233000 bb235280 rasacd (deferred)
bb2b1000 bb2b4c80 mssmbios (deferred)
bb2ed000 bb306b80 Mup (deferred)
bb307000 bb333980 NDIS (deferred)
bb334000 bb3c0600 Ntfs (deferred)
bb3c1000 bb3d7880 KSecDD (deferred)
bb3d8000 bb3e9f00 sr (deferred)
bb3ea000 bb409b00 fltMgr (deferred)
bb40a000 bb44a000 storport (deferred)
bb44a000 bb45b000 storahci (deferred)
bb45b000 bb710000 iaStor (deferred)
bb710000 bb721000 ewf (deferred)
bb721000 bb746a00 dmio (deferred)
bb747000 bb765d80 ftdisk (deferred)
bb766000 bb776a80 pci (deferred)
bb777000 bb7a6d80 ACPI (deferred)
bb8a8000 bb8b1300 isapnp (deferred)
bb8b8000 bb8c2580 MountMgr (deferred)
bb8c8000 bb8d5200 VolSnap (deferred)
bb8d8000 bb8e0e00 disk (deferred)
bb8e8000 bb8f4180 CLASSPNP (deferred)
bb928000 bb934f00 i8042prt (deferred)
bb938000 bb941e00 intelppm (no symbols)
bb948000 bb954880 rasl2tp (deferred)
bb958000 bb962200 raspppoe (deferred)
bb968000 bb973d00 raspptp (deferred)
bb978000 bb980900 msgpc (deferred)
bb988000 bb991f00 termdd (deferred)
bb998000 bb9a1e80 NDProxy (deferred)
bb9b8000 bb9c0700 wanarp (deferred)
bb9c8000 bb9d0780 netbios (deferred)
bba08000 bba12e80 Fips (deferred)
bbb28000 bbb2cd00 PartMgr (deferred)
bbbb0000 bbbb6280 kbdclass (deferred)
bbbb8000 bbbbdc00 mouclass (deferred)
bbbc0000 bbbc4a80 TDI (deferred)
bbbc8000 bbbcc580 ptilink (deferred)
bbbd0000 bbbd4080 raspti (deferred)
bbbf8000 bbbfca80 Msfs (deferred)
bbc00000 bbc07880 Npfs (deferred)
bbc08000 bbc0c500 watchdog (deferred)
bbcb8000 bbcbb000 BOOTVID (deferred)
bbda0000 bbda2280 wmiacpi (deferred)
bbda4000 bbda6780 ndistapi (deferred)
bbda8000 bbda9b80 kdcom (deferred)
bbdaa000 bbdab100 WMILIB (deferred)
bbdac000 bbdad700 dmload (deferred)
bbdb8000 bbdb9100 swenum (deferred)
bbdc2000 bbdc3f00 Fs_Rec (deferred)
bbdc4000 bbdc5080 Beep (deferred)
bbe92000 bbe92b80 Null (deferred)
bbeba000 bbebad00 dxgthk (deferred)
bbf27000 bbf27c00 audstub (deferred)
bf800000 bf9c2a00 win32k (deferred)
bf9c3000 bf9d4600 dxg (deferred)
bff50000 bff52f00 TSDDD (deferred)

Unloaded modules:
baae6000 baafa000 Parport.SYS
bb9f8000 bba03000 imapi.sys
bb9e8000 bb9f7000 redbook.sys
bb9d8000 bb9e8000 serial.sys
bbdc8000 bbdca000 RDPCDD.sys
bbdc6000 bbdc8000 mnmdd.SYS
bbbf0000 bbbf6000 vga.sys
bbbe8000 bbbed000 Cdaudio.SYS
bb9a8000 bb9b8000 cdrom.sys
bb237000 bb23a000 Sfloppy.SYS
bbbe0000 bbbe5000 Flpydisk.SYS
bbbd8000 bbbdf000 Fdc.SYS
0: kd> g
Break instruction exception - code 80000003 (first chance)
*******************************************************************************
* *
* You are seeing this message because you pressed either *
* CTRL+C (if you run kd.exe) or, *
* CTRL+BREAK (if you run WinDBG), *
* on your debugger machine's keyboard. *
* *
* THIS IS NOT A BUG OR A SYSTEM CRASH *
* *
* If you did not intend to break into the debugger, press the "g" key, then *
* press the "Enter" key now. This message might immediately reappear. If it *
* does, press "g" and "Enter" again. *
* *
*******************************************************************************
nt!DbgBreakPointWithStatus+0x4:
810815dc cc int 3
0: kd> g
BD: Boot Debugger Initialized
Console video mode set to 0x118
Console video mode set to 0x3
*** Windows is unable to verify the signature of
the file \Windows\system32\ntkrnlpa.exe. It will be allowed to load
because the boot debugger is enabled.
Use g to continue!!
Break instruction exception - code 80000003 (first chance)
*** ERROR: Module load completed but symbols could not be loaded for winload.exe
winload+0x2caa6:
0020:00262aa6 cc int 3
0: kd> g
*** Windows is unable to verify the signature of
the file \Windows\system32\hal.dll. It will be allowed to load
because the boot debugger is enabled.
Use g to continue!!
Break instruction exception - code 80000003 (first chance)
winload+0x2caa6:
0020:00262aa6 cc int 3
0: kd> g
*** Windows is unable to verify the signature of
the file \Windows\system32\kdcom.dll. It will be allowed to load
because the boot debugger is enabled.
Use g to continue!!
Break instruction exception - code 80000003 (first chance)
winload+0x2caa6:
0020:00262aa6 cc int 3
0: kd> g
*** Windows is unable to verify the signature of
the file \Windows\system32\BOOTVID.dll. It will be allowed to load
because the boot debugger is enabled.
Use g to continue!!
Break instruction exception - code 80000003 (first chance)
winload+0x2caa6:
0020:00262aa6 cc int 3
0: kd> g
*** Windows is unable to verify the signature of
the file \Windows\System32\Drivers\KSecDD.sys. It will be allowed to load
because the boot debugger is enabled.
Use g to continue!!
Break instruction exception - code 80000003 (first chance)
winload+0x2caa6:
0020:00262aa6 cc int 3
0: kd> g
Shutdown occurred at (Wed Jan 27 21:39:07.843 2021 (UTC + 1:00))...unloading all symbol tables.
Waiting to reconnect...

 

Page 431

#6451diderius6This is the last line in Windbg,
before compi starts new

winload+0x1533:
00237533 391d78032900 cmp dword ptr [winload+0x5a378 (00290378)],ebx
kd>
winload+0x1539:
00237539 8b701c mov esi,dword ptr [eax+1Ch]
kd>
winload+0x153c:
0023753c 7c12 jl winload+0x1550 (00237550)
kd>
winload+0x1550:
00237550 e836f40100 call winload+0x2098b (0025698b)
kd>
winload+0x1555:
00237555 e845650000 call winload+0x7a9f (0023da9f)
kd>
winload+0x155a:
0023755a 8b4f58 mov ecx,dword ptr [edi+58h]
kd>
winload+0x155d:
0023755d 8b495c mov ecx,dword ptr [ecx+5Ch]
kd>
winload+0x1560:
00237560 8b5dd4 mov ebx,dword ptr [ebp-2Ch]
kd>
winload+0x1563:
00237563 8919 mov dword ptr [ecx],ebx
kd>
winload+0x1565:
00237565 8b5dd8 mov ebx,dword ptr [ebp-28h]
kd>
winload+0x1568:
00237568 895904 mov dword ptr [ecx+4],ebx
kd>
winload+0x156b:
0023756b 8b4f58 mov ecx,dword ptr [edi+58h]
kd>
winload+0x156e:
0023756e 8b495c mov ecx,dword ptr [ecx+5Ch]
kd>
winload+0x1571:
00237571 894108 mov dword ptr [ecx+8],eax
kd>
winload+0x1574:
00237574 56 push esi
kd>
winload+0x1575:
00237575 89510c mov dword ptr [ecx+0Ch],edx
kd>
winload+0x1578:
00237578 836768fe and dword ptr [edi+68h],0FFFFFFFEh
kd>
winload+0x157c:
0023757c 57 push edi
kd>
winload+0x157d:
0023757d e892770300 call winload+0x38d14 (0026ed14)

kd>
Shutdown occurred at (Wed Jan 27 22:14:00.328 2021 (UTC + 1:00))...unloading all symbol tables.
Waiting to reconnect...
#6452diderius6I found this Bsod in winload.exe from Vista SP2

.text:0040156B                 mov     ecx, [edi+58h]
.text:0040156E mov ecx, [ecx+5Ch]
.text:00401571 mov [ecx+8], eax
.text:00401574 push esi
.text:00401575 mov [ecx+0Ch], edx
.text:00401578 and dword ptr [edi+68h], 0FFFFFFFEh
.text:0040157C push edi
.text:0040157D call near ptr _OslArchTransferToKernel@8 ; OslArchTransferToKernel(x,x) <---- last line in Windbg
.text:00401582
.text:00401582 loc_401582: ; CODE XREF: OslpMain(x):loc_401582 j <-----endless loop
.text:00401582 jmp short loc_401582
#6453diderius6small hack in winload.exe ;)) from Vista SP2 32 bit

.text:00401531                 jz      short loc_401584   ---> .text:00401531                 jmp      short loc_401584


74 51 39 1D 78 A3 45 00 --->
EB 51 39 1D 78 A3 45 00


Dietmar

EDIT: Does not help.

Now it crashes at the call from

.text:004011BC                 call    _BlDestroyLibrary@0 ; BlDestroyLibrary()
#6454gordo999⇗ @diderius6 ...I was reading through your windbg log and noted that windows loader became involved between ntoskrnl loading and hal loading. Wondered why and began looking on Google. Came across this detailed explanation of the Windows 7 boot process which should be similar to the Vista boot process.

From the article at the link below:

" Windows Boot Loader Phase

The Windows Boot Manager starts the Windows Boot Loader phase when the user chooses to load Windows Vista or Windows 7. The Windows Boot Loader does the following:

   Loads the operating system kernel, Ntoskrnl.exe, but does not yet run it.
   Loads the Hardware Abstraction Layer (HAL), Hal.dll. This will not be used until the kernel is run.
   Loads the system registry hive (System32\Config\System) into memory.
   Scans the HKEY_LOCAL_MACHINE\SYSTEM\Services key for device drivers and loads all drivers that are configured for the boot class into memory. The Windows Boot Loader does not, however, initiate the drivers. Drivers are not initiated until the kernel loading phase.
   Enables paging.
   Passes control to the operating system kernel, which starts the next phase".

Note the entry about Enables Paging. I was wrong about that, thinking paging would be enabled by ntoskrnl.

In the following article there are links at the bottom of each page that list all the topics covered in the tutorial. Best to read it from this beginning page.

⇗ https://sourcedaddy.com/windows-7/config...tup-issues.html
#6455gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #6453
.text:00401531                 jz      short loc_401584   ---> .text:00401531                 jmp      short loc_401584


74 51 39 1D 78 A3 45 00 --->
EB 51 39 1D 78 A3 45 00

⇗ @diderius6 ...don't need all those bytes. This is your hack:

74 51
EB 51

However, they included a string of opcode bytes to make sure you have the right jump.

****Make sure there is not another code sequence in winloader.exe that is the same as the sequence you posted. Use a hex editor and do a search for the bytes 74 51 39 1D 78 A3 45 00.****

Make sure you put the EB 51 back to 74 51. If there is another sequence like that, or more, that's your problem. You have the wrong sequence.

The 74 51 is a conditional jump 51 bytes ahead from the address of the last opcode byte at 00401533. The EB 51 is a forced jump of 51 bytes. So, add it up as 401531, 401532, and 401533. That gets you to the last byte in the opcode 74 51. Address 401533 + 51 = 401584, the address listed in the je short local_401584.  That address is a long distance from where the program faulted so what lies between?

Since code was forced to take that jump it might be interesting to see what would happen without the jump. That would mean replacing the 74 51 opcode with 90 90. That way the code executes at the next byte after the last 90 without making the jump. Or just set the EB 51 back to 74 51.
#6456gordo999⇗ @diderius6 ...take a look at your code just before:
.text:00401531 jz short loc_401584 ---> .text:00401531 jmp short loc_401584
To see if there is a call to BlInitializeLibrary.

I am looking at winload.exe in W7 and they have a similar call to yours but its a jns with opcode 79 05. The jump depends on the 'sign' flag. If it's set = 1 there is no jmp. If it's not set = 0, there is a jmp. If the jmp is taken it leads to a call to the Main() function, before the call to BlDestroyLibrary. If not, it jmps over both calls, then likely exits.

Look to see if there is a call just before the call to BlDestroyLibrary. On the W7 winload.exe there is a call to OslpMain. That seems to be the main function that sets up ntoskrnl, etc. If there is an issue in that call it will return to BlDestroyLibrary then exit.

In any C or C++ application, the first function called is the main() function. In Windows, they call it Winmain().
#6457George KingI tried to use only Vista files - Boot folder + bootmgr and same settings to BCD as when using Windows 7 boot folder and bootmgr.
There is one change - When is used completely Vista files there is needed to run boot option in "Disable driver signature".
When using Windows 7 boot files (winload is still Vista SP2) then it can start booting without needs to enable "Disable driver signature".

So much better is use Windows 7 bootmgr as it don't need additional click step.

But both methods end in same BSOD, btw, detect HAL option is enabled in BCD. This is why I need to figure it out. For legacy HAL detection I'm using Longhorn NTLDR + dtecthal.inf in Windows\inf and boot.ini switch /detectHAL - this works great


⇗ @skullteria Any ideas from your research around booting using winload?

Link for ISO where it accurs is in attached file

George King has attached files to this post [TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#6458diderius6⇗ @gordo999
Thanks for help and the nice link about the boot process from Win7!
All the time I work only with XP, so this is new for me.
Have a nice day
Dietmar
#6459diderius6I succeed with USB3 boot and the bootfiles from Vista SP2 on the Asrock z370 Fatalty gaming k6 board with 8700k cpu.
Normal ntldr XP SP3 boots fine via USB3 on this board via Vista boot menu,
XP SP3 via USB3 and winload.exe from Vista SP2 shows the same Bsod

PFN_LIST_Corrupt

0x0000004E (0x0000008F, 0x00000D59, 0x0008E699, 0x00000000)

Dietmar

PS: So, this Bsod depends not on bootdevice, not on ram, not on ram size, not on pagefile enabled/disabled .
#6460genieautravail⇗ @diderius6 ⇗ @infuscomus

Hello,

A few months ago, PPeti66x has uploaded a modded Intel HCSwitch device driver for Intel Gen7 and Gen8 chipsets on MDL forum:

⇗ https://forums.mydigitallife.net/threads...-4#post-1612326

As I got a mini PC ZOTAC Zbox EN760 (Haswell processor), I'm using the modded Intel HCSwitch device driver for Gen8 chipset (Haswell) to enable USB 3.0.

⇗ http://old.zotac.com/en/products/mini-pcs/zbox-e-series/product/zbox-e-series/detail/zbox-en760.html

But there is a big issue with it, the modded Intel HCSwitch device driver hang the shutdown or reboot process of the computer and I must push the power button to complete the process.

More informations here:

⇗ https://forums.mydigitallife.net/threads...-6#post-1631463

⇗ https://forums.mydigitallife.net/threads...-7#post-1642482

As PPeti66x isn't present on the MDL forum since he has uploaded the file, can you help me to solve the issue with the modded driver ?

Regards
#6461Andalu⇗ @genieautravail
what error code did you get by installing the USB3 driver normally without using the HCSwitch method?
Normal installation of the USB3 driver worked here on my Q87 haswell board.
#6462gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #6458
All the time I work only with XP, so this is new for me.
⇗ @diderius6 ...I know you are working on XP but you mentioned using Vista drivers and Vista is more like W7 than XP.

Would you mind briefly sharing your procedure for getting a windbg kernel mode connection going with XP or W7? I had a good connection a year ago but can't seem to get one now. I am using a serial mode connection via COM2 but I think something is wrong with my B360M chipset that is refusing the connection. May be a driver issue.

You will notice that during the boot process, ntoskrnl. and probably Hal, call kdcom.dll to setup a serial port debugging session. My problem might be in the boot procedure. I found that out a year ago when I could not initiate a serial connection. I got one going between W7 as host and W10 using the network protocol. When I tried with a serial connection it failed till I rebooted W10, as required for the target, and did something during reboot that made the serial connection work. Then the serial connection worked between W7 and W7.

So, it seems the debug connection depends on settings in the boot loader.
#6463diderius6⇗ @gordo999

The standalone MSI file of windbg can be downloaded from here. The version is 6.12.0002.633 (x86).
It works for XP, Vista and Win7.

⇗ http://download.microsoft.com/download/A...ols/dbg_x86.msi

X64
⇗ http://download.microsoft.com/download/A...4/dbg_amd64.msi

Windbg needs
Microsoft .NET Framework 4 (Standalone Installer) (full install).

⇗ https://www.microsoft.com/en-US/download...s.aspx?id=17718

Then you need the debug files of ntoskrnl.exe and the timermodded hal.dll debug for XP SP3.

I upload them here.
⇗ https://ufile.io/dwlf4vma

I describe all for Serial Debug via 115200 baudrate:

On both compis set in Device manager the serial COM1 port to 115200 Bit.
Copy the file boot.ini on C:\ on the compi, which you want to debug.
It is also in my package.
Then copy on the same compi ntos3.exe and hal3.dll into Windows\System32 .

On the compi, where windbg will run, first install Microsoft .NET Framework 4.
Then install windbg.
On running windbg set in left corner on top: File, Kernel Debug, Baudrate 115200
port com1

I always set a fresh XP SP3 up for the compi, which I want to debug.
XP SP3 does not like to work together with different hal.dll and ntoskrnl.exe .

Connect both compis with a serial cable on their COM1 port. Look in Bios of both compis, that the serial port there is enabled.

If you want Lan debug, because your compi has no COM port, you need windbg from 8.1
Original windbg 8.1 stand alone
⇗ https://github.com/kbandla/installers/bl...s-x86_en-us.msi

⇗ @Mov AX, 0xDEAD  ⇗ https://github.com/MovAX0xDEAD/KDNET

and the msvcrt.dll from Blackwingcat for XP.
¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (176)

Here in the forum I showed the special boot.ini for lan debug.
And you need the files from ⇗ @Mov AX, 0xDEAD .
Lan debug is much faster but needs some more work to set it up. You can connect 2 compis direct with a Lan cable
Dietmar

boot.ini for Lan debug in my home network, all compis connected via Hub.

[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional" /noexecute=optin /fastdetect
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Windows XP SP3 DEBUG" /KERNEL=ntos3.exe /HAL=hal3.dll /debug /debugport=COM1 /baudrate=115200 /BREAK
C:\WINDOWS="KDNET" /noexecute=optin /fastdetect /KERNEL=ntos3.exe /HAL=hal3.dll /DEBUG /DEBUGPORT=NET /HOST_IP=192.168.2.101 /HOST_PORT=50000 /ENCRYPTION_KEY=make.winxp.great.again /CPUFREQ=3000 /TARGET_IP=192.168.2.103
C:\WINDOWS="KDNET_Brk" /noexecute=optin /fastdetect /KERNEL=ntos3.exe /HAL=hal3.dll /DEBUG /DEBUGPORT=NET /HOST_IP=192.168.2.101 /HOST_PORT=50000 /ENCRYPTION_KEY=make.winxp.great.again /CPUFREQ=3000 /TARGET_IP=192.168.2.103 /BREAK

   

You also need the Symbol package for XP SP3 debug. Unpack the Symbols and set the path on left corner above of Windbg to those Symbol folder.

WINDOWSXP-KB936929-SP3-X86-DEBUG-SYMBOLS-FULL-ENU-DEBUG.EXE

⇗ https://archive.org/download/somewinxpdownloads
#6464gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #6463
I upload them here
⇗ @diderius6 ...Dietmar, thanks for going to all the trouble of providing links, creating a file package, and the explanation. I really appreciate it. I will setup a fresh install of XP on its own disk and see if that helps.
#6465daniel_k⇗ @genieautravail

Install KMDF 1.11 and the USB 3.0 driver.

Instead of using the HCSwitch, use WPCRSET to manually change the controller's registers to enable USB 3.0 speeds.

Get device ID from USB 3 controller in Device Manager (PCI\VEN_8086&DEV_????)

Guide:
⇗ http://www.a7vtroubleshooting.com/articles/wpcrset/index.htm

Run WPCREDIT and select device with same ID
⇗ http://ftp.vector.co.jp/32/55/2012/wpcre14.exe

Run/install WPCRSET, enter Bus/Device/Function from WPCREDIT and change registers D0 and D8 to 0F
⇗ http://ftp.vector.co.jp/10/14/2012/wpcrs120.exe

 

Page 432

#6466PPeti66x⇗ @genieautravail
Hi!
I am on mydigitallife really rare.
So my experiences:
If WDF coinstaller is wrongly installed => BSOD. It is mandatory for HCSwitchwer. HCSwitcher itself should not do any problems - switches to USB3 or not. The modded inf itself comes from Daniel_K. My work is only a manual, how to install these things. I do not have any new informations yet. I never tried it with PAE patched kernel.
For haswell, you must install acpi 5048 + Kernel Mode Driver Framework 1.11 (because of Win8 USB3, for HCSwitcher 1.09 is enough).

But USB have a strange behaviour on some systems (even USB2). There are some registry settings to manipulate these things. The next settings are in INF style.
;Disables the USB Idle Endpoint Support. (KB918005)
; This may prevent your computer from enter to C3/C4 power state,
; so power consumption will be not reduced.
HKLM,"SYSTEM\CurrentControlSet\Services\usb","EnableIdleTimer",0x10001,0
HKLM,"SYSTEM\CurrentControlSet\Services\usb","EnIdleEndPointSupportEx",0x10001,0
Undo:
HKLM,"SYSTEM\CurrentControlSet\Services\usb","EnableIdleTimer",0x10001,1
HKLM,"SYSTEM\CurrentControlSet\Services\usb","EnIdleEndPointSupportEx",0x10001,1


;Enable S3 system power state for standby when USB devices are armed for wake up (0=enable, not_exist=disable)
;Not recommended because attached device may be fully disabled and then can not wake up the computer.
HKLM,"SYSTEM\CurrentControlSet\Services\usb","USBBIOSx",0x00010001,0
Undo:
Delete value: HKLM,"SYSTEM\CurrentControlSet\Services\usb","USBBIOSx"


;Disables a silent retry if USB transfer fails. (KB908673)
By default (XP SP2/above), if USB transfer fails for specific reasons
is silently retried instead of completed and given a "failure" status.
HKLM,"SYSTEM\CurrentControlSet\Services\usb","EnSoftRetry",0x10001,0
Undo:
HKLM,"SYSTEM\CurrentControlSet\Services\usb","EnSoftRetry",0x10001,1
#6467genieautravail
Zitat von ⇗ Andalu im Beitrag ¶ #6461
@genieautravail
what error code did you get by installing the USB3 driver normally without using the HCSwitch method?
Normal installation of the USB3 driver worked here on my Q87 haswell board.


None, the HCSwitch driver must be installed after KMDF 1.11 and the USB 3.0 driver.
This computer is particular, it's a desktop computer with a mobile CPU, a mobile chipset and a mobile graphic card!

It has 4 USB 3.0 ports and none USB 2.0 ports.
If I want to enable the USB 3.0 speed, the HCSwitch driver must be running at startup of the computer like on a laptop.
This computer is compatible with XP, but with XP, you have only 2.0 speed on the USB ports.
#6468genieautravail
Zitat

If WDF coinstaller is wrongly installed => BSOD. It is mandatory for HCSwitchwer. HCSwitcher itself should not do any problems - switches to USB3 or not. The modded inf itself comes from Daniel_K. My work is only a manual, how to install these things. I do not have any new informations yet. I never tried it with PAE patched kernel.
For haswell, you must install acpi 5048 + Kernel Mode Driver Framework 1.11 (because of Win8 USB3, for HCSwitcher 1.09 is enough).


None BSOD, apart the shutdown process, all is fine!

My setup:
acpi 5048 + Kernel Mode Driver Framework 1.11 + Intel USB3 HCSwitch for XP (Gen4 Series8 C220 and later)

I will check your settings as soon as possible!

Thank you for your help!

Regards

#6469bright_lightUnder normal conditions the 32-bit XP EFI boot cannot possibly work on a real modern computer using UEFI + GPT partition. 32-bit OS would require 32-bit processor ( 32-bit CPU) + 32-bit UEFI/EFI bios + 32-bit EFI loader.

On modern computers the UEFI BIOS by design is capable of booting only 64-bit Windows via EFI and it would require very serious modifications, patching and signing to be able to boot 32 bit XP.

Normally you can only boot XP 64 bit on modern computers (Ryzen, Commet Lake, Kaby Lake, threadripper etc.) because of the UEFI bios lack 32 bit EFI boot and is only compatible with 64 bit EFI booting. MBR booting is a different matter because it doesn't care about you CPU architecture as long your PC is legacy BIOS compatible.

If you really want to boot 32 bit XP, you must have computer with 32 bit UEFI and 32 bit processor which are very rare or maybe as alternative you try those loaders like Quibble, freeloader, uefiseven if any of those work at all.

Good luck
#6470diderius6⇗ @bright_light
Just implement a generic CSM module in any pur Uefi Bios
and the problem with only Uefi boot is gone.
The Source code for the CSM module is available
Dietmar
#6471PPeti66x⇗ @genieautravail
It seems that everything was installed correctly on your side.
But be careful with these settings. In most cases it produces more problems that solves. I needed 1 or 2 of these keys only once, but I do not remember the correct combination. I am used these via a special INF tuning utility, which was integrated to add/remove windows components menu. I made this INF around year 2010 for XP SP2, but it also works for SP3 (tested). The complete INF file is here: ⇗ https://drive.google.com/file/d/13uQxh_R...iew?usp=sharing
If you want to try, right click and install it, then you can access it via Add/remove windows components menu.

If the registry tuning does not resolve the problem, and even recommendations by Daniel_K, then you can try the HCSwitch with the AMD USB3 driver. I never tryed it, but theoretically should work. Problem is, that AMD driver is not problem-free on Intel chipset.
#6472PPeti66xHi!
I am still searching for a good solution for the LCD brightness control problem on XP with ACPI5048.
Brightness control works with the original ACPI (including the outer space version), but on Haswell+ the USB3 does not. It is not a problem for desktop PCs but is very annoying for the notebooks.
I tried to write my own program using IOCTL method, but no supported brightness levels reported - so this is a bad way. I was able only to turn off the lights, but I am unable to turn on. The only program, that can turn on is the MultiMonitorTool by NirSoft, with the "/Switch \\.\DISPLAY1" or with "/disable \\.\DISPLAY1" (yes, both does a same thing in this case) parameter (the /TurnOn not works). But I am unable to acces this program via shortcut key from the logon screen. Is possible to add/restore this functionality for ACPI5048 ?
#6473genieautravail
Zitat von ⇗ PPeti66x im Beitrag ¶ #6472
Hi!
I am still searching for a good solution for the LCD brightness control problem on XP with ACPI5048.
Brightness control works with the original ACPI (including the outer space version), but on Haswell+ the USB3 does not. It is not a problem for desktop PCs but is very annoying for the notebooks.
I tried to write my own program using IOCTL method, but no supported brightness levels reported - so this is a bad way. I was able only to turn off the lights, but I am unable to turn on. The only program, that can turn on is the MultiMonitorTool by NirSoft, with the "/Switch \\.\DISPLAY1" or with "/disable \\.\DISPLAY1" (yes, both does a same thing in this case) parameter (the /TurnOn not works). But I am unable to acces this program via shortcut key from the logon screen. Is possible to add/restore this functionality for ACPI5048 ?


Same issue on 2 laptops, one is a Dell Latitude E6230 and the other a Dell Latitude E6430.
#6474diderius6⇗ @Mov AX, 0xDEAD

Is it possible,
just to compile ntldr from Sources from XP SP1 with small corrections (a lot not needed stuff in winload.exe from Vista)
and name it winload.exe for XP SP3
Dietmar
#6475diderius6⇗ @Mov AX, 0xDEAD

I found this zeropage.c . zeropage.c is compiled into ntoskrnl.exe in XP.
But in Vista it is compiled into winload.exe . Nobody needs it there under XP.
So, there happens something like a doublecheck for "zeropage" with winload.exe from Vista and ntoskrnl.exe from XP.
A single Bit error can make this crash.
And this would explain, why this error happens not always but sometimes on newer compis.
So the Bsod happens in winload.exe from Vista SP2.
Dietmar

/*++

Copyright (c) Microsoft Corporation. All rights reserved.

You may only use this code if you agree to the terms of the Windows Research Kernel Source Code License agreement (see License.txt).
If you do not agree to the terms, do not use the code.


Module Name:

zeropage.c

Abstract:

This module contains the zero page thread for memory management.

--*/

#include "mi.h"

#define MM_ZERO_PAGE_OBJECT 0
#define PO_SYS_IDLE_OBJECT 1
#define NUMBER_WAIT_OBJECTS 2

#define MACHINE_ZERO_PAGE(ZeroBase,NumberOfBytes) KeZeroPagesFromIdleThread(ZeroBase,NumberOfBytes)

LOGICAL MiZeroingDisabled = FALSE;

#if DBG
ULONG MiInitialZeroNoPtes = 0;
#endif

#if !defined(NT_UP)

LONG MiNextZeroProcessor = (LONG)-1;

#ifdef ALLOC_PRAGMA
#pragma alloc_text(INIT,MiStartZeroPageWorkers)
#endif

#endif

VOID
MmZeroPageThread (
VOID
)

/*++

Routine Description:

Implements the NT zeroing page thread. This thread runs
at priority zero and removes a page from the free list,
zeroes it, and places it on the zeroed page list.

Arguments:

None.

Return Value:

None.

Environment:

Kernel mode.

--*/

{
KIRQL OldIrql;
PFN_NUMBER PageFrame1;
LOGICAL ZeroedAlready;
PFN_NUMBER PageFrame;
PMMPFN Pfn1;
PVOID ZeroBase;
PVOID WaitObjects[NUMBER_WAIT_OBJECTS];
NTSTATUS Status;
PVOID StartVa;
PVOID EndVa;
PFN_COUNT PagesToZero;
PFN_COUNT MaximumPagesToZero;
ULONG Color;
ULONG StartColor;
PMMPFN PfnAllocation;
ULONG SecondaryColorMask;
PMMCOLOR_TABLES FreePagesByColor;

#if defined(MI_MULTINODE)

ULONG i;
ULONG n;
ULONG LastNodeZeroing;
KAFFINITY ProcessorMask;

n = 0;
LastNodeZeroing = 0;
#endif

//
// Make local copies of globals so they don't have to be wastefully
// refetched while holding the PFN lock.
//

FreePagesByColor = MmFreePagesByColor[FreePageList];
SecondaryColorMask = MmSecondaryColorMask;

//
// Before this becomes the zero page thread, free the kernel
// initialization code.
//

MiFindInitializationCode (&StartVa, &EndVa);

if (StartVa != NULL) {
MiFreeInitializationCode (StartVa, EndVa);
}

MaximumPagesToZero = 1;

#if !defined(NT_UP)

//
// Zero groups of pages at once to reduce PFN lock contention.
// Charge commitment as well as resident available up front since
// zeroing may get starved priority-wise.
//
// Note using MmSecondaryColors here would be excessively wasteful
// on NUMA systems. MmSecondaryColorMask + 1 is correct for all platforms.
//

PagesToZero = SecondaryColorMask + 1;

if (PagesToZero > NUMBER_OF_ZEROING_PTES) {
PagesToZero = NUMBER_OF_ZEROING_PTES;
}

if (MiChargeCommitment (PagesToZero, NULL) == TRUE) {

LOCK_PFN (OldIrql);

//
// Check to make sure the physical pages are available.
//

if (MI_NONPAGEABLE_MEMORY_AVAILABLE() > (SPFN_NUMBER)(PagesToZero)) {
MI_DECREMENT_RESIDENT_AVAILABLE (PagesToZero,
MM_RESAVAIL_ALLOCATE_ZERO_PAGE_CLUSTERS);
MaximumPagesToZero = PagesToZero;
}

UNLOCK_PFN (OldIrql);
}

#endif

//
// The following code sets the current thread's base priority to zero
// and then sets its current priority to zero. This ensures that the
// thread always runs at a priority of zero.
//

KeSetPriorityZeroPageThread (0);

//
// Initialize wait object array for multiple wait
//

WaitObjects[MM_ZERO_PAGE_OBJECT] = &MmZeroingPageEvent;
WaitObjects[PO_SYS_IDLE_OBJECT] = &PoSystemIdleTimer;

Color = 0;
PfnAllocation = (PMMPFN) MM_EMPTY_LIST;

//
// Loop forever zeroing pages.
//

do {

//
// Wait until there are at least MmZeroPageMinimum pages
// on the free list.
//

Status = KeWaitForMultipleObjects (NUMBER_WAIT_OBJECTS,
WaitObjects,
WaitAny,
WrFreePage,
KernelMode,
FALSE,
NULL,
NULL);

if (Status == PO_SYS_IDLE_OBJECT) {

//
// Raise the priority and base priority of the current thread
// above zero so it can participate in priority boosts provided
// during the ready thread scan performed by the balance set
// manager.
//

KeSetPriorityZeroPageThread (1);
PoSystemIdleWorker (TRUE);

//
// Lower the priority and base priority of the current thread
// back to zero so it will not participate in ready thread scan
// priority boosts.
//

KeSetPriorityZeroPageThread (0);
continue;
}

PagesToZero = 0;

LOCK_PFN (OldIrql);

do {

if (MmFreePageListHead.Total == 0) {

//
// No pages on the free list at this time, wait for
// some more.
//

MmZeroingPageThreadActive = FALSE;
UNLOCK_PFN (OldIrql);
break;
}

if (MiZeroingDisabled == TRUE) {
MmZeroingPageThreadActive = FALSE;
UNLOCK_PFN (OldIrql);
KeDelayExecutionThread (KernelMode,
FALSE,
(PLARGE_INTEGER)&MmHalfSecond);
break;
}

#if defined(MI_MULTINODE)

//
// In a multinode system, zero pages by node. Resume on
// the last node examined, find a node with free pages that
// need to be zeroed.
//

if (KeNumberNodes > 1) {

n = LastNodeZeroing;

for (i = 0; i < KeNumberNodes; i += 1) {
if (KeNodeBlock[n]->FreeCount[FreePageList] != 0) {
break;
}
n = (n + 1) % KeNumberNodes;
}

ASSERT (i != KeNumberNodes);
ASSERT (KeNodeBlock[n]->FreeCount[FreePageList] != 0);

if (n != LastNodeZeroing) {
Color = KeNodeBlock[n]->MmShiftedColor;
}
}
#endif

ASSERT (PagesToZero == 0);

StartColor = Color;

do {

PageFrame = FreePagesByColor[Color].Flink;

if (PageFrame != MM_EMPTY_LIST) {

Pfn1 = MI_PFN_ELEMENT (PageFrame);

//
// Check the frame carefully because a single bit (hardware)
// error causing us to zero the wrong frame is very hard
// to reconstruct after the fact.
//


if ((Pfn1->u3.e1.PageLocation != FreePageList) ||
(Pfn1->u3.e2.ReferenceCount != 0)) {

//
// Someone has removed a page from the colored lists
// chain without updating the freelist chain.
//

KeBugCheckEx (PFN_LIST_CORRUPT,
0x8D,
PageFrame,
(Pfn1->u3.e2.ShortFlags << 16) |
Pfn1->u3.e2.ReferenceCount,
(ULONG_PTR) Pfn1->PteAddress);
}

PageFrame1 = MiRemoveAnyPage (Color);

if (PageFrame != PageFrame1) {

//
// Someone has removed a page from the colored lists
// chain without updating the freelist chain.
//

KeBugCheckEx (PFN_LIST_CORRUPT,
0x8E,
PageFrame,
PageFrame1,
0);
}

Pfn1->u1.Flink = (PFN_NUMBER) PfnAllocation;


//
// Temporarily mark the page as bad so that contiguous
// memory allocators won't steal it when we release
// the PFN lock below. This also prevents the
// MiIdentifyPfn code from trying to identify it as
// we haven't filled in all the fields yet.
//

Pfn1->u3.e1.PageLocation = BadPageList;

PfnAllocation = Pfn1;

PagesToZero += 1;
}

//
// March to the next color - this will be used to finish
// filling the current chunk or to start the next one.
//

Color = (Color & ~SecondaryColorMask) |
((Color + 1) & SecondaryColorMask);

if (PagesToZero == MaximumPagesToZero) {
break;
}

if (Color == StartColor) {
break;
}

} while (TRUE);

ASSERT (PfnAllocation != (PMMPFN) MM_EMPTY_LIST);

UNLOCK_PFN (OldIrql);

#if defined(MI_MULTINODE)

//
// If a node switch is in order, do it now that the PFN
// lock has been released.
//

if ((KeNumberNodes > 1) && (n != LastNodeZeroing)) {
LastNodeZeroing = n;

ProcessorMask = KeNodeBlock[n]->ProcessorMask;

//
// Only affinitize if the node has a processor. Otherwise
// just stay with the last ideal processor that was set.
//

if (ProcessorMask != 0) {

KeFindFirstSetLeftAffinity (ProcessorMask, &i);

if (i != NO_BITS_FOUND) {
KeSetIdealProcessorThread (KeGetCurrentThread(), (UCHAR)i);
}
}
}

#endif

ZeroedAlready = FALSE;

if (ZeroedAlready == FALSE) {
ZeroBase = MiMapPagesToZeroInHyperSpace (PfnAllocation, PagesToZero);

MACHINE_ZERO_PAGE (ZeroBase, PagesToZero << PAGE_SHIFT);

MiUnmapPagesInZeroSpace (ZeroBase, PagesToZero);
}

PagesToZero = 0;

Pfn1 = PfnAllocation;

LOCK_PFN (OldIrql);

do {

PageFrame = MI_PFN_ELEMENT_TO_INDEX (Pfn1);

Pfn1 = (PMMPFN) Pfn1->u1.Flink;

MiInsertPageInList (&MmZeroedPageListHead, PageFrame);

} while (Pfn1 != (PMMPFN) MM_EMPTY_LIST);

//
// We just finished processing a cluster of pages - briefly
// release the PFN lock to allow other threads to make progress.
//

UNLOCK_PFN (OldIrql);

PfnAllocation = (PMMPFN) MM_EMPTY_LIST;

LOCK_PFN (OldIrql);

} while (TRUE);

} while (TRUE);
}

#if !defined(NT_UP)


VOID
MiZeroPageWorker (
IN PVOID Context
)

/*++

Routine Description:

This routine is the worker routine executed by all processors so that
initial page zeroing occurs in parallel.

Arguments:

Context - Supplies a pointer to the workitem.

Return Value:

None.

Environment:

Kernel mode initialization time, PASSIVE_LEVEL. Because this is INIT
only code, don't bother charging commit for the pages.

--*/

{
MMPTE TempPte;
MMPTE DefaultCachedPte;
PMMPTE PointerPte;
KAFFINITY Affinity;
KIRQL OldIrql;
PVOID ZeroBase;
PKTHREAD Thread;
CCHAR OldProcessor;
SCHAR OldBasePriority;
KPRIORITY OldPriority;
PWORK_QUEUE_ITEM WorkItem;
PMMPFN Pfn1;
PFN_COUNT PagesToZero;
PFN_COUNT MaximumPagesToZero;
PFN_NUMBER PageFrame;
PFN_NUMBER PageFrame1;
PMMPFN PfnAllocation;
ULONG Color;
ULONG StartColor;
LOGICAL ZeroedAlready;
PMMCOLOR_TABLES FreePagesByColor;
ULONG SecondaryColorMask;

WorkItem = (PWORK_QUEUE_ITEM) Context;

ExFreePool (WorkItem);

DefaultCachedPte = ValidKernelPte;

//
// Make local copies of globals so they don't have to be wastefully
// refetched while holding the PFN lock.
//

FreePagesByColor = MmFreePagesByColor[FreePageList];
SecondaryColorMask = MmSecondaryColorMask;

//
// The following code sets the current thread's base and current priorities
// to one so all other code (except the zero page thread) can preempt it.
//

Thread = KeGetCurrentThread ();
OldBasePriority = Thread->BasePriority;
Thread->BasePriority = 1;
OldPriority = KeSetPriorityThread (Thread, 1);

//
// Dispatch each worker thread to the next processor in line.
//

OldProcessor = (CCHAR) InterlockedIncrement (&MiNextZeroProcessor);

Affinity = AFFINITY_MASK (OldProcessor);

KeSetSystemAffinityThread (Affinity);

Color = 0;

#if !defined(NT_UP)

//
// Make an attempt to stagger the processors ...
//

Color = (MmSecondaryColors / KeNumberProcessors) * OldProcessor;
Color &= SecondaryColorMask;
#endif

#if defined(MI_MULTINODE)
if (KeNumberNodes > 1) {
Color = KeGetCurrentNode()->MmShiftedColor;
}
#endif

//
// Zero groups of local pages at once to reduce PFN lock contention.
//
// Note using MmSecondaryColors here would be excessively wasteful
// on NUMA systems. MmSecondaryColorMask + 1 is correct for all platforms.
//

MaximumPagesToZero = SecondaryColorMask + 1;


//
// Zero a maximum of 64k at a time since 64k is the largest binned
// system PTE size (for systems that need to use PTEs for zeroing).
//

if (MaximumPagesToZero > (64 * 1024) / PAGE_SIZE) {
MaximumPagesToZero = (64 * 1024) / PAGE_SIZE;
}

PagesToZero = 0;

PfnAllocation = (PMMPFN) MM_EMPTY_LIST;

LOCK_PFN (OldIrql);

do {

StartColor = Color;

ASSERT (PagesToZero == 0);
ASSERT (PfnAllocation == (PMMPFN) MM_EMPTY_LIST);

do {

PageFrame = FreePagesByColor[Color].Flink;

if (PageFrame != MM_EMPTY_LIST) {

Pfn1 = MI_PFN_ELEMENT (PageFrame);

//
// Check the frame carefully because a single bit (hardware)
// error causing us to zero the wrong frame is very hard
// to reconstruct after the fact.
//

if ((Pfn1->u3.e1.PageLocation != FreePageList) ||
(Pfn1->u3.e2.ReferenceCount != 0)) {

//
// Someone has removed a page from the colored lists
// chain without updating the freelist chain.
//

KeBugCheckEx (PFN_LIST_CORRUPT,
0x8D,
PageFrame,
(Pfn1->u3.e2.ShortFlags << 16) |
Pfn1->u3.e2.ReferenceCount,
(ULONG_PTR) Pfn1->PteAddress);
}

PageFrame1 = MiRemoveAnyPage (Color);

if (PageFrame != PageFrame1) {

//
// Someone has removed a page from the colored lists
// chain without updating the freelist chain.
//

KeBugCheckEx (PFN_LIST_CORRUPT,
0x8E,
PageFrame,
PageFrame1,
0);
}

Pfn1->u1.Flink = (PFN_NUMBER) PfnAllocation;

//
// Temporarily mark the page as bad so that contiguous
// memory allocators won't steal it when we release
// the PFN lock below. This also prevents the
// MiIdentifyPfn code from trying to identify it as
// we haven't filled in all the fields yet.
//

Pfn1->u3.e1.PageLocation = BadPageList;

PfnAllocation = Pfn1;

PagesToZero += 1;
}

//
// March to the next color - this will be used to finish
// filling the current chunk or to start the next one.
//

Color = (Color & ~SecondaryColorMask) |
((Color + 1) & SecondaryColorMask);

if (PagesToZero == MaximumPagesToZero) {
break;
}

if (Color == StartColor) {

if (PagesToZero == 0) {

//
// All of the pages for this node have been zeroed, bail.
//

ASSERT (PfnAllocation == (PMMPFN) MM_EMPTY_LIST);
UNLOCK_PFN (OldIrql);
goto ZeroingComplete;
}

break;
}

} while (TRUE);

ASSERT (PagesToZero != 0);
ASSERT (PfnAllocation != (PMMPFN) MM_EMPTY_LIST);

//
// Use system PTEs instead of hyperspace to zero the page so that
// a spinlock (ie: interrupts blocked) is not held while zeroing.
// Since system PTE acquisition is lock free and the TB lazy flushed,
// this is perhaps the best path regardless.
//

UNLOCK_PFN (OldIrql);

ZeroedAlready = FALSE;

if (ZeroedAlready == FALSE) {

Pfn1 = PfnAllocation;

PointerPte = MiReserveSystemPtes (PagesToZero, SystemPteSpace);

if (PointerPte == NULL) {

#if DBG
MiInitialZeroNoPtes += 1;
#endif

//
// Put these pages back on the freelist.
//

LOCK_PFN (OldIrql);

do {

PageFrame = MI_PFN_ELEMENT_TO_INDEX (Pfn1);

Pfn1 = (PMMPFN) Pfn1->u1.Flink;

MiInsertPageInFreeList (PageFrame);

} while (Pfn1 != (PMMPFN) MM_EMPTY_LIST);

UNLOCK_PFN (OldIrql);

break;
}

ZeroBase = MiGetVirtualAddressMappedByPte (PointerPte);

do {

ASSERT (PointerPte->u.Hard.Valid == 0);

PageFrame = MI_PFN_ELEMENT_TO_INDEX (Pfn1);

TempPte = DefaultCachedPte;

if (Pfn1->u3.e1.CacheAttribute == MiWriteCombined) {
MI_SET_PTE_WRITE_COMBINE (TempPte);
}
else if (Pfn1->u3.e1.CacheAttribute == MiNonCached) {
MI_DISABLE_CACHING (TempPte);
}

TempPte.u.Hard.PageFrameNumber = PageFrame;

MI_WRITE_VALID_PTE (PointerPte, TempPte);

PointerPte += 1;

Pfn1 = (PMMPFN) Pfn1->u1.Flink;

} while (Pfn1 != (PMMPFN) MM_EMPTY_LIST);

KeZeroPages (ZeroBase, PagesToZero << PAGE_SHIFT);

PointerPte -= PagesToZero;

MiReleaseSystemPtes (PointerPte, PagesToZero, SystemPteSpace);
}

PagesToZero = 0;

Pfn1 = PfnAllocation;

PfnAllocation = (PMMPFN) MM_EMPTY_LIST;

LOCK_PFN (OldIrql);

do {

PageFrame = MI_PFN_ELEMENT_TO_INDEX (Pfn1);

Pfn1 = (PMMPFN) Pfn1->u1.Flink;

MiInsertZeroListAtBack (PageFrame);

} while (Pfn1 != (PMMPFN) MM_EMPTY_LIST);

} while (TRUE);

ZeroingComplete:

//
// Restore the entry thread priority and processor affinity.
//

KeRevertToUserAffinityThread ();

KeSetPriorityThread (Thread, OldPriority);

Thread->BasePriority = OldBasePriority;

return;
}


VOID
MiStartZeroPageWorkers (
VOID
)

/*++

Routine Description:

This routine starts the zero page worker threads.

Arguments:

None.

Return Value:

None.

Environment:

Kernel mode initialization phase 1, PASSIVE_LEVEL.

--*/

{
ULONG i;
PWORK_QUEUE_ITEM WorkItem;

for (i = 0; i < (ULONG) KeNumberProcessors; i += 1) {

WorkItem = ExAllocatePoolWithTag (NonPagedPool,
sizeof (WORK_QUEUE_ITEM),
'wZmM');

if (WorkItem == NULL) {
break;
}

ExInitializeWorkItem (WorkItem, MiZeroPageWorker, (PVOID) WorkItem);

ExQueueWorkItem (WorkItem, CriticalWorkQueue);
}
}

#endif
#6476PPeti66x⇗ @genieautravail
Both are Gen3 (Ivy Bridge). Is really needed the ACPI5048 for these? For desktop PCs the original ACPI is mostly enough.
#6477George KingAnybody have idea how to port Vista RTM takeown / icacls?
It cannot be run as is not valid win32 application.

Anybody can patch them so they can work on XP too to control files permission in Windows 6.x?

George King has attached files to this post [TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#6478genieautravail
Zitat von ⇗ PPeti66x im Beitrag ¶ #6476
@genieautravail
Both are Gen3 (Ivy Bridge). Is really needed the ACPI5048 for these? For desktop PCs the original ACPI is mostly enough.


With the original ACPI file, no Intel(R) 7 Series/C216 Chipset Family Universal Serial Bus (USB) Controller - 1E31 device in the devices manager and so no USB 3.0...
#6479daniel_k⇗ @PPeti66x and ⇗ @genieautravail

If your laptops "hide" USB3 controller on XP, please try all acpi.sys:
⇗ http://www.mediafire.com/file/hwio6yp5je1hqkq
#6480genieautravail⇗ @daniel_k

It's the same thing with the ZOTAC ZBOX, the USB3 controller is "hidden" with the original acpi.sys.
As I understand, Andalu's motherboards doesn't "hide" the USB3 controller.

 

Page 433

#6481PPeti66x⇗ @daniel_k
ACPITEST results for Dell M4800 (Mobile Intel QM87 Express/Haswell)

acpi2006.sys
  USB xHCI listed. HCSwitch uses USB2.0
  Manual HCSwitching(wpcr): works
  hotkeys: sleep:yes, displayswitch:no, brightness:no

acpi2009.sys
  USB xHCI listed. HCSwitch uses USB2.0
  Manual HCSwitching(wpcr): works
  hotkeys: sleep:yes, displayswitch:no*, brightness:no
  *problems: moving selection on some (beginning with "p") icons on desktop

acpi2012.sys
  USB xHCI listed. HCSwitch uses USB2.0
  Manual HCSwitching(wpcr): works
  hotkeys: sleep:yes, displayswitch:no*, brightness:no
  notes: new unknown hardware found: "ACPI\DELLABCE\2&DABA3FF&0" (no compatible ID)
     (Dell Airplane Mode driver for Windows 8.0/later)
  *problems: moving selection on some (beginning with "p") icons on desktop

acpi2013.sys
  USB xHCI listed. HCSwitch uses USB2.0
  Manual HCSwitching(wpcr): works
  hotkeys: sleep:yes, displayswitch:yes, brightness:yes
  notes: This one seems to be the best.

acpi2015.sys
  USB xHCI not listed. HCSwitch uses USB2.0
  Manual HCSwitching(wpcr): hardware ID not found
  hotkeys: sleep:yes, displayswitch:yes, brightness:yes

For comparison

acpi_sp3original:
  USB xHCI not listed. HCSwitch: uses USB2.0
  Manual HCSwitching(wpcr): hardware ID not found
  hotkeys: sleep:yes(fails), displayswitch:yes, brightness:yes

acpi_OuterSpace(CRC32:2438B702):
  USB xHCI not listed. HCSwitch: uses USB2.0
  Manual HCSwitching(wpcr): hardware ID not found
  hotkeys: sleep:yes, displayswitch:yes, brightness:yes

acpi_vista5048:
  USB xHCI listed. HCSwitch uses USB3.0
  Manual HCSwitching(wpcr): not required
  hotkeys: sleep:yes, displayswitch:no, brightness:no

Common problems:
  1.) When returning from sleep, sometimes display is switched off. When display switch hotkey is working, it can re-enable it.
  2.) When sleep was used, newly connected usb pendrive was not detected. When connected prior returning from sleep, then is OK. It seems taht only USB3 mode is affected, in USB2 is OK.
#6482PPeti66x⇗ @genieautravail
I recommend you to check the acpi2013.sys. But prior this: If you used a modded INF to install the ACPI5048, you must revert to the original, then force-reinstall all device drivers which name contains "ACPI" from Windows\INF folder and restart.
Now brightness and display switch hotkeys should work again (this was killed by the ACPI5048 INF file). At this point, you can replace the acpi.sys, then install the wpcrset service with correct changes. Now you should have USB3 enabled and working hotkeys.
#6483Andalu⇗ @genieautravail
Here my USB configuration for Q87 board (intel controller + Renesas controller from a PCIEx to USB3 board):

with acpi.sys v.6666 from Outer Space (SHA-1:   B1CE1C07AFB0861BCCDEC17DAF04274A3DD80C8C) both controllers are visible and working:



with the original acpi.sys 5512 I got the error code 10 for the Intel controller but no issues for the Renesas controller:
#6484daniel_k⇗ @PPeti66x, thanks for your testing report.
Those acpi20xx.sys files are actually the same OuterSpace version (v6666), with a fix for ⇗ @Andalu's crazy ASRock board.

⇗ @Mov AX, 0xDEAD
Is there a way to optimize the string loader code at address 27FB8, maybe a loop instead of one by one in original code?
All strings must be present (Windows 2006 ~ Windows 2015), otherwise it won't have the desired effect.
#6485genieautravail⇗ @Andalu

Thanks you for the screenshots.

I understand better now.

It existed 2 groups of hardware:

One for consumers market without fully support for XP
I presume that the USB 3.0 ports doesn't works under XP even in USB 2.0 mode. True ?

Another group with full support of XP (especially for the business market).
The Dell Latitude E6230 and E6430 are business laptops released in 2012.
In 2012, XP was widely used in the business, so to make these laptops fully compatible with XP, the USB 3.0 ports can works in 2.0 mode.

Manufacturers had the choice to keep or not fully compatibility with XP in 2012, 2013.

Regards
#6486genieautravail⇗ @PPeti66x

Thanks you very much!

That's do a lot of tests for me the next week!

Regards
#6487onuracengiz⇗ Unofficial Windows XP Service Pack 4
⇗ .Net Framework runtimes
⇗ The latest supported Visual C++ downloads
⇗ Potplayer
⇗ K-Lite Codec Pack Mega 13.8.5 for Xp
⇗ Windows Media Format Runtime for Windows XP/Vista
⇗ 7-zip
⇗ Privazer
⇗ Smart Defrag
⇗ DirectX End-User Runtimes (June 2010)
⇗ DirectX 3.0, 5.2, 6.1, 7.0, 8.0, 8.1, and 8.2
⇗ Microsoft Visual Basic 6.0 Service Pack 6 Security Rollup Update
⇗ Microsoft UAA Bus Driver for High Definition Audio
⇗ OpenAL
⇗ TCP Optimizer
⇗ K-Meleon
⇗ CabMaker 1.2 (dated 7 May 2018)
⇗ StorAhci for Windows 2003 Server (Last Update: 2020-09-28)
Notepad++ (dont know if its still working,need confirmation)
Directx downloads are no longer available in microsoft downloads site
Windows XP Pro SP3 x86 EN-RU Integral Edition. A good copy with all the patches,tweaks and updates applied.
look it up,i will not link it :) for researches purposes in order to see the tweaks,patches they have used
#6488Mov AX, 0xDEAD
Zitat von ⇗ daniel_k im Beitrag ¶ #6484

@Mov AX, 0xDEAD
Is there a way to optimize the string loader code at address 27FB8, maybe a loop instead of one by one in original code?
All strings must be present (Windows 2006 ~ Windows 2015), otherwise it won't have the desired effect.


⇗ @daniel_k  Hi Daniel,
Let's play with stack :)
1) allocate more space in stack sub   esp, 5Ch => sub   esp, 9Ch (40h bytes, max 16 pointers)

2) original code place pointer to first string "Windows 2000" (before it copy string to stack too, at var_24 stored first char "W") as SupportedOSList[0]
because order of string is important, need to shift all original pointer to end of new stack layout:
lea     eax, [ebp+var_24]
mov     [ebp-5Ch], eax = >mov     [ebp-9Ch], eax
....
mov     [ebp-58h], eax = >mov     [ebp-98h], eax
...
mov     [ebp-54h], eax = >mov     [ebp-98h], eax
...
mov     [ebp-50h], eax = >mov     [ebp-90h], eax

3) orig stack layout:
ebp-50h = SupportedOSList[3]
ebp-54h = SupportedOSList[2]
ebp-58h = SupportedOSList[1]
ebp-5Ch = SupportedOSList[0]
new stack layout:
ebp-90h = SupportedOSList[3]
ebp-94h = SupportedOSList[2]
ebp-98h = SupportedOSList[1]
ebp-9Ch = SupportedOSList[0]

4) create inject code, it must insert new pointers to stack as SupportedOSList[4], SupportedOSList[5], ...
.....
ebp-80h = SupportedOSList[7]
ebp-84h = SupportedOSList[6]
ebp-88h = SupportedOSList[5]
ebp-8Ch = SupportedOSList[4]
....

5) original code assume ebp-5Ch (SupportedOSList[0]) as base of SupportedOSList[] array, change base to new layout
push    [ebp+esi*4-5Ch] = > push    [ebp+esi*4-9Ch] (dont shure about fitting "-9Ch" to orig opcode, maybe changed instruction will be bigger)
6) orig code hardcoded to 4 elements of SupportedOSList[], increase to yours
inc     esi
cmp     esi, 4 => cmp     esi, xx
7) dont need copy strings on stack as original code do at begin, we can store strings in any PE section, only pointers to strings are important and need to store on stack
#6489Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #6474
@Mov AX, 0xDEAD
Is it possible, just to compile ntldr from Sources from XP SP1 with small corrections (a lot not needed stuff in winload.exe from Vista)
and name it winload.exe for XP SP3


⇗ @diderius6
why ntldr is so bad and need winload.exe on x32 XP?
#6490Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #6475
@Mov AX, 0xDEAD
I found this zeropage.c . zeropage.c is compiled into ntoskrnl.exe in XP.
But in Vista it is compiled into winload.exe . Nobody needs it there under XP.
So, there happens something like a doublecheck for "zeropage" with winload.exe from Vista and ntoskrnl.exe from XP.
A single Bit error can make this crash.
And this would explain, why this error happens not always but sometimes on newer compis.
So the Bsod happens in winload.exe from Vista SP2.


answer is in head of code:
Zitat
Module Name:
   zeropage.c
Abstract:
   This module contains the zero page thread for memory management.


When ntldr start ntoskrnl.exe, it never get CPU back(dont sure 100%), so there is no concurrency threads
ntldr is bootchain loader - get memory list from bios, prepare i386 protected mode, load boot drivers/dlls, fill main _LOADER_PARAMETER_BLOCK struct, jmp to kernel' entry point. I dont know what winload do, too big EXE as to be "bootchainloader" :)

p.s. You can explore leaked windows 10 bootloader sources, i think it contains BootMgr and Winload.exe

#6491diderius6⇗ @Mov AX, 0xDEAD

Now I think, the people who make ntldr make it very good. And the edit of boot.ini is much more comfortable than BCD.
They implemented in ntldr the only very needed functions for to boot XP. Via ntbootdd.sys it is also possible for ntldr to work
in such a way without Bios as winload.exe. But this works only for boot drivers, which depend on the scsiport. sys model.
Not storport!

For me, the only thing why winload.exe is interesting is,
that it gives you some more freedom for to go away from Bios.

Interesting, if it is possible for to example for to boot XP via winload from a nvme disk, when there is no legacy nvme in Bios.
Question in this is, HOW the nvme disk can be recogniced at all before the nvme driver itself is loaded.
I tried this with ntldr (just with some kind of generic legacy nvme add into Bios) and it would work, if there is a nvme driver, which depends on scsiport model.

But there are also very bad side effects in winload.exe.
Now, winload.exe looks at the Signature of the harddisk in registry.
I noticed that, because when you just delete whole key HKLM\SYSTEM\MountedDevices in registry,
winload.exe cant find any more the harddisk!
Hihi, so you can fake this key, add or delete the wished entries in MountedDevices and blind winload.exe thinks,
oh, this is my harddisk )..

Dietmar

PS: I dont know, how much work has to be done, that winload.exe works also for XP.
May be it is even possible to integrate drivers for to boot into such a winload.exe like PLOP.
#6492George King
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #6489
Zitat von ⇗ diderius6 im Beitrag ¶ #6474
@Mov AX, 0xDEAD
Is it possible, just to compile ntldr from Sources from XP SP1 with small corrections (a lot not needed stuff in winload.exe from Vista)
and name it winload.exe for XP SP3


@diderius6
why ntldr is so bad and need winload.exe on x32 XP?


Also DetectHAL feature should be nice [TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#6493George King
Zitat von ⇗ diderius6 im Beitrag ¶ #6491
@Mov AX, 0xDEAD

But there are also very bad side effects in winload.exe.
Now, winload.exe looks at the Signature of the harddisk in registry.
I noticed that, because when you just delete whole key HKLM\SYSTEM\MountedDevices in registry,
winload.exe cant find any more the harddisk!
Hihi, so you can fake this key, add or delete the wished entries in MountedDevices and blind winload.exe thinks,
oh, this is my harddisk )..

Dietmar

PS: I dont know, how much work has to be done, that winload.exe works also for XP.


Interesting, this key is deleted during SysPrep method, that XP2ESD using (Adapted Russian MyFactory). Will see if I can encounter same BSOD if these key are present [TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#6494Mov AX, 0xDEAD
Zitat von ⇗ George King im Beitrag ¶ #6492

Also DetectHAL feature should be nice

"nice" is notepad.exe + boot.ini, just add any combination of kernel + hal you want, no BCD shit, just text line
#6495George KingThats true,  I'm writing boot.ini on the fly. But there is a limit as I don't know how set correct partition - Diskpart partitions are counted different way then boot.ini partitions works. So there is limitation image deyployed by XP2ESD must be always at first partition on disk.

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/

 

Page 434

#6496Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #6491

For me, the only thing why winload.exe is interesting is,
that it gives you some more freedom for to go away from Bios.

Interesting, if it is possible for to example for to boot XP via winload from a nvme disk, when there is no legacy nvme in Bios.
Question in this is, HOW the nvme disk can be recogniced at all before the nvme driver itself is loaded.
I tried this with ntldr (just with some kind of generic legacy nvme add into Bios) and it would work, if there is a nvme driver, which depends on scsiport model.

⇗ @diderius6
there is no escape from bios, to load winload from nvme disk,  bios must have nvme support = uefi driver
1) CSM emulator translate DOS mode int13h to uefi x64 calls, MBR and Partition boot code can use only int13h to access disk and load winload
2) On bioses without CSM no way to start x32 windows because no one yet written uefi64<->uefi32 translator (theoricaly this is possible)
#6497daniel_k⇗ @PPeti66x, ⇗ @genieautravail, ⇗ @Andalu, ⇗ @diderius6

Thanks to ⇗ @Mov AX, 0xDEAD, we now have an updated acpi.sys v6666 from outerspace.

Added the following _OSI Strings for Windows:
Windows 2006 (Vista)
Windows 2006 SP1 (Vista SP1)
Windows 2009 (Win7)
Windows 2012 (Win8)
Windows 2013 (Win8.1)
Windows 2015 (Win10)

Sometimes there is code in the DSDT table that disables/enables certain devices depending on the Windows version detected (some laptops hide the USB3 controller unless Win8 is detected).
This just fixes that: if it checks for any of the versions above, it will return TRUE.

EDIT: I've reuploaded, now there are 2 files:
- acpi2013.sys
- acpi2015.sys

It's just a one byte change between them.
Just use the one that works best for your system.

daniel_k has attached files to this post
#6498genieautravail⇗ @daniel_k

Thanks you very much and many thanks to ⇗ @Mov AX, 0xDEAD for his help!

That's cooool!

Regards
#6499Andalu⇗ @daniel_k  ⇗ @Mov AX, 0xDEAD

thanks guys for your amazing work
#6500PPeti66x⇗ @daniel_k
⇗ @Mov AX, 0xDEAD
Many thanks for it!

Test results for this version (on Dell M4800 notebook)
acpi2015-new.sys
USB xHCI listed. HCSwitch uses USB2.0
Manual HCSwitching(wpcr): works
hotkeys: sleep:yes, displayswitch:no*, brightness:no
notes: new unknown hardware found: "ACPI\DELLABCE\2&DABA3FF&0" (no compatible ID)
(Dell Airplane Mode driver for Windows 8.0/later)
*problems: moving selection on some (beginning with "p") icons on desktop

So it seems, that not always best to mimic the Windows 10. In my case the acpi2013 still works better. Why the display switching and brightness control hotkeys are disfunctional? And why is the interesting behaviour with moving selection on desktop icons beginning with "p"? It is a bug in my system or something special misinterpreted by XP?

And the most important question: is x64 version planned?
#6501daniel_k
Zitat von ⇗ PPeti66x im Beitrag ¶ #6500
So it seems, that not always best to mimic the Windows 10. In my case the acpi2013 still works better. Why the display switching and brightness control hotkeys are disfunctional? And why is the interesting behaviour with moving selection on desktop icons beginning with "p"? It is a bug in my system or something special misinterpreted by XP?

Can you dump the acpi tables of your Dell so I can see what is going on?
⇗ http://rweverything.com/

Zitat
And the most important question: is x64 version planned?


We don't have a fully working acpi.sys, so no point in do it for now.

#6502daniel_kI've updated the attachment. so there are 2 versions now: 2013/2015.
Use the one that works best for your system.
#6503PPeti66x⇗ @daniel_k
Thanks!

Here are the ACPI tables (BIOS version A26 - 06 Dec 2019)

UPDATE:
The new ACPI2013 have exactly same behaviour as new ACPI2015. The old ACPI2013 is OK.

PPeti66x has attached files to this post
#6504daniel_k
Zitat von ⇗ PPeti66x im Beitrag ¶ #6503
UPDATE:
The new ACPI2013 have exactly same behaviour as new ACPI2015. The old ACPI2013 is OK.

Thanks for the dump.
Looking at the ACPI tables, there is no "Windows 2015", theoretically the 2013 and 2015 versions should behave in the same way, even the "old test" ones.

That is really strange! Let me double check.
#6505PPeti66x⇗ @daniel_k
I made some extra tests: replaced entries 1-by-1 in hexeditor (to "Windows 2002") and found the incompatible entries: "Windows 2006", "Windows 2009" and "Windows 2012" ("Windows 2006 SP1" is OK). It seems, that changes are cumulative (e.g. without 2012 there is no unknown hardware found, without 2009 and 2012 no jumping to file beginning with "p" on display switch Fn key), not only the highest supported is used. So if the above 3 entries missing, it works correctly on my Dell M4800. The "Windows 2015" only variant was problematic, because it was not supported at all.
#6506daniel_k
Zitat von ⇗ PPeti66x im Beitrag ¶ #6505
@daniel_k
It seems, that changes are cumulative (e.g. without 2012 there is no unknown hardware found, without 2009 and 2012 no jumping to file beginning with "p" on display switch Fn key), not only the highest supported is used.

That doesn't make sense, because of this:

		Method(_INI, 0, NotSerialized)
{
Store(0x07D0, OSYS) -> BY DEFAULT WIN2000 IF NOT MATCH
If(CondRefOf(\_OSI, Local0))
{
If(_OSI("Linux"))
{
Store(0x03E8, OSYS)
}
If(_OSI("Windows 2001")) -> COMPARES ONE BY ONE
{
Store(0x07D1, OSYS) -> SUPPORTED? WRITE/STORE 0x07D1 IN VARIABLE OSYS
}
If(_OSI("Windows 2001 SP1"))
{
Store(0x07D1, OSYS)
}
If(_OSI("Windows 2001 SP2"))
{
Store(0x07D2, OSYS)
}
If(_OSI("Windows 2001.1"))
{
Store(0x07D3, OSYS)
}
If(_OSI("Windows 2006"))
{
Store(0x07D6, OSYS)
}
If(_OSI("Windows 2009"))
{
Store(0x07D9, OSYS)
}
If(_OSI("Windows 2012"))
{
Store(0x07DC, OSYS)
}
If(_OSI("Windows 2013"))
{
Store(0x07DD, OSYS)
}
}
...



Acpi.sys reports supported for all strings.
However, when doing the checks, from older to newer versions (Windows 2001 to 2013), if a newer version is detected, OSYS variable is overwritten, as seen in the code in spoiler.

In other parts of the DSDT code, search for OSYS and you'll see that it is used with a comparison operator (GreaterEqual, Greater, Less, Equal, etc.)

#6507pappyN4Hi ⇗ @Mov AX, 0xDEAD

I am having an issue with some of the functions from safecrtnt.lib.   Specifically _ultow_s  _ultoa_s  _ui64toa_s  for samsung nvme driver.   It shows up correctly when compiling emu_extender for x86, but on the x64 build it is missing.


I downloaded the latest version to see if it was an issue with any changes I had made, but same problem.  Any ideas why?

That reminds me, when building a x86 or x64 with a fresh copy, the build fails with the following error.  ntoskrn8.c(214) : error C4013: 'RtlQueryRegistryValues' undefined; assuming extern returning int


I forgot about this. I had removed it to get it to compile while testing the other stuff.  But it is needed for uapstor if someone is using it.

 
NTSTATUS
RtlQueryRegistryValuesEx_k8 (
ULONG RelativeTo,
PCWSTR Path,
PRTL_QUERY_REGISTRY_TABLE QueryTable,
PVOID Context,
PVOID Environment )
{
return RtlQueryRegistryValues(RelativeTo, Path, QueryTable, Context, Environment); <--- line 214 in ntoskrn8.c
}
#6508Gelip⇗ @diderius6

Zitat von ⇗ diderius6 im Beitrag ¶ #6447
Until now I cant debug Vista,
because always this crazy "enable signature unforce" I have to hit in the beginning.
Because this bootloader from Vista SP2 would be really nice,
I can only debug it when I get over this "unforce signature" step

Try to patch the bootmgr, winload.exe and ntoskrnl.exe files with ⇗ EfiGuard (-> ⇗ binaries)
I tried it on WinXP 64-bit with the beta Longhorn 16497 files and it patched so it should be able to handle Vista files too. Use Loader.config.efi and select option 2 Boot time DSE bypass and Wait for keypress Yes:


[edited]
This only seems to work with an EFI loader and a 64-bit kernel
#6509diderius6⇗ @Gelip

On which OS you run this tool?

I need a step by step Tutorial!

Today I also try to enable Windbg via Lan during bootice and the crazy BCD, never tried
Dietmar

PS: Debug via serial COM1 works for the Vista bootloader.
I read here, that ⇗ @George King uses the bootmgr from win7 and winload.exe from Vista SP2 and get rid of the crazy "driver signature" message.
Have you tried this?
Interesting, that with this tool you can patch ntoskrnl.exe. So, easy hack there is also possible. Before I never succeed with it,
because XP SP3 tells that ntoskrnl.exe is broken.

About the Bsod pfn_list_corrupt I read:
"This error is typically caused by a driver passing a bad memory descriptor list. For example, the driver might have called MmUnlockPages twice with the same list.

If a kernel debugger is available, examine the stack trace: the !analyze debug extension displays information about the bug check and can be helpful in determining the root cause, then enter one of the k (Display Stack Backtrace) commands to view the call stack."

EDIT: To change bootmgr from Vista SP2 against bootmgr from win7 does not change "Signature check".
#6510Gelip
Zitat von ⇗ diderius6 im Beitrag ¶ #6509
On which OS you run this tool?

Not in OS but under Uefi Shell

⇗ UPGDSED can be used to disable DSE in Win7, 8, 10 but only for 64-bit Windows:
 
Universal PatchGuard and Driver Signature Enforcement Disable

WARNING: Using this tool might render your PC to an unbootable state.
If you want to continue type CONTINUE (all uppercase) and press Enter

CONTINUE
Patch: Windows Version: 6.1.7601, LegacyBIOS

Patch: Symbol dlls extracted successfully.
Patch: Dbghelp initialized.
Patch: Copy files to %TEMP%.
Patch: Copy success.
Patch: Scanning ntoskrnl for patterns.

Patch: Ntoskrnl version: 6.1.7601.18741

-> SeValidateImageData 00285FCC
-> CcInitializeBcbProfiler 004CED80
-> KeInitAmd64SpecificState 004DC680
-> SepInitializeCodeIntegrity 00367921

Patch: Ntoskrnl scan complete.
Patch: Scanning winload for patterns.

Patch: Winload version: 6.1.7601.18649


Patch: Cannot query ImgpValidateImageHash offset using symbols: Nie mo&#380;na uko&#324;c
y&#263; wykonywania tej funkcji.

Patch: Running signature scan for ImgpValidateImageHash
-> ImgpValidateImageHash 00031584

Patch: Winload scan complete.

Patch: ModifyFilesAndMove succeed
Patch: Executing BCDEDIT commands
bcdedit.exe -create {71A3C7FC-F751-4982-AEC1-E958357E6813} -d "Patch Guard Disa
led" -application OSLOADER
Wpis {71a3c7fc-f751-4982-aec1-e958357e6813} zosta&#322; pomy&#347;lnie utworzony.
bcdedit.exe -set {71A3C7FC-F751-4982-AEC1-E958357E6813} device partition=C:
Operacja uko&#324;czona pomy&#347;lnie.
bcdedit.exe -set {71A3C7FC-F751-4982-AEC1-E958357E6813} osdevice partition=C:
Operacja uko&#324;czona pomy&#347;lnie.
bcdedit.exe -set {71A3C7FC-F751-4982-AEC1-E958357E6813} systemroot \Windows
Operacja uko&#324;czona pomy&#347;lnie.
bcdedit.exe -set {71A3C7FC-F751-4982-AEC1-E958357E6813} path \Windows\system32\
sloader.exe
Operacja uko&#324;czona pomy&#347;lnie.
bcdedit.exe -set {71A3C7FC-F751-4982-AEC1-E958357E6813} kernel ntkrnlmp.exe
Operacja uko&#324;czona pomy&#347;lnie.
bcdedit.exe -set {71A3C7FC-F751-4982-AEC1-E958357E6813} recoveryenabled 0
Operacja uko&#324;czona pomy&#347;lnie.
bcdedit.exe -set {71A3C7FC-F751-4982-AEC1-E958357E6813} nx OptIn
Operacja uko&#324;czona pomy&#347;lnie.
bcdedit.exe -set {71A3C7FC-F751-4982-AEC1-E958357E6813} nointegritychecks 1
Operacja uko&#324;czona pomy&#347;lnie.
bcdedit.exe -set {71A3C7FC-F751-4982-AEC1-E958357E6813} inherit {bootloadersett
ngs}
Operacja uko&#324;czona pomy&#347;lnie.
bcdedit.exe -displayorder {71A3C7FC-F751-4982-AEC1-E958357E6813} -addlast
Operacja uko&#324;czona pomy&#347;lnie.
bcdedit.exe -timeout 10
Operacja uko&#324;czona pomy&#347;lnie.
Patch: Setting PeAuth service to manual start
Patch: PeAuth service set to manual start

Patch: BcdCreatePatchEntry succeed
Patch: Press Enter to exit



 

Page 435

#6511PPeti66x⇗ @daniel_k
The new ACPI 2013,2015 behaviour is exactly same as previous.
By the DSDT table there is no cumulative behaviour. But cumulative behaviour was observed. How is it possible? This is really strange.
#6512diderius6After crazy hard work ,
⇗ @infuscomus succeed to boot XP SP3 via the acpi.sys 6.0.5365.8 (winmain_idx05.060419-1800) from Vista Longhorn
to desktop. The problem was, to set in acpi.sys the function ACPILoadFindRSDT() back to the place, where XP stores RSDT table in registry.

This works with the use of the nice Emu_Extender from ⇗ @Mov AX, 0xDEAD
⇗ https://github.com/MovAX0xDEAD/NTOSKRNL_Emu

Oh, soso nice what can be done with XP SP3 and this gives me motivation to do much more
Dietmar

#6513Mov AX, 0xDEAD
Zitat von ⇗ pappyN4 im Beitrag ¶ #6507
Hi @Mov AX, 0xDEAD
I am having an issue with some of the functions from safecrtnt.lib.   Specifically _ultow_s  _ultoa_s  _ui64toa_s  for samsung nvme driver.   It shows up correctly when compiling emu_extender for x86, but on the x64 build it is missing.

That reminds me, when building a x86 or x64 with a fresh copy, the build fails with the following error.   ntoskrn8.c(214) : error C4013: 'RtlQueryRegistryValues' undefined; assuming extern returning int


Hi pappyN4

- I rewrote ntoskrnl_redirects.h, now it export everything more correctly, i didnt commit it yet because im in process of checking some x64 custom drivers (storport8 has x64 unfixed issues)
- Something wrong with your DDK, RtlQueryRegistryValues() declared in wdm.h, this header included at begin in ntoskrnl8.c (via ntddk.h)
#6514diderius6I make some more tests with winload.exe and XP SP3 on the Asrock z370 Fataltiy gaming k6 board with i8700k cpu.
Via Windbg I get message
"Warning: Hal and ntoskrnl overlap"
So, it is a real problem
Dietmar
#6515Gelip⇗ @diderius6

Zitat von ⇗ diderius6 im Beitrag ¶ #6514
Via Windbg I get message
"Warning: Hal and ntoskrnl overlap"
So, it is a real problem
Dietmar

This error can occur when restarting the system and not restarting WinDbg.
#6516genieautravailHello ⇗ @daniel_k and ⇗ @PPeti66x

Here the results of my tests:

For the Ivy Bride Laptops I have followed the advices of PPeti66x by installing XP first with the original acpi.sys and after that I have swiched to a modded one.

Ivy Bridge Dell Latitude E6230 laptop:

Original acpi.sys:

USB 3.0 controller is "hidden" and there is nothing to do for that
All keyboard shortcuts works

acpi_5048:

USB 3.0 works with HCSwitch
USB 3.0 works with WCRSET
Only the keyboard shortcut for brighness doesn't works

Unlike PPeti66x The keyboard shortcut for display switch works.
Probably a result of the differences between Ivy Bridge and Haswell chipsets.

acpi2013 (the old):

No 1E31 device in the devices manager, so no USB 3.0
All keyboard shortcuts works even the one for brighness

The old acpi2013 is unable to "unhide" the "hidden" USB 3.0 controller on a Ivy Bridge chipset!

acpi2015:

There is a missing device in the devices manager:
ACPI\DELLABCE\2&DABA3FF&0

USB 3.0 doesn't works with HCSwitch
USB 3.0 works with WPCRSET
a part of the keyboard shortcuts doesn't works (exemples: display switch and brighness)

The acpi2015 is better that the old acpi2013 but there is a regression for the keyboard shortcuts and a missing device appear in the device manager.

Ivy Bridge Dell Latitude E6430 laptop:

The results are exactely the same that for the Dell Latitude E6230.

Haswell ZOTAC ZBOX EN760 mini PC:

Original acpi.sys:

USB 3.0 controller is "hidden" and there is nothing to do for that

acpi_5048:

USB 3.0 works with HCSwitch but there is a issue with the shutdown or reboot process
USB 3.0 works with WCRSET and the issue above is gone

acpi2013 (old):

USB 3.0 works with HCSwitch but there is a issue with the shutdown or reboot process
USB 3.0 works with WCRSET and the issue above is gone

acpi2015:

USB 3.0 works with HCSwitch but there is a issue with the shutdown or reboot process
USB 3.0 works with WCRSET and the issue above is gone

Any of the 3 files can be used with the same results on this computer.

The acpi2015 has good promises if the regression about the keyboard shortcuts can be resolved.

Regards
#6517PPeti66x⇗ @genieautravail
Did you try all the ACPI files from the test set? These works differently. May be you will found a variant, which is good for your mobo. For me, it was the ACPI2013, but the new ACPI2013 is not good for me. At this time is unknown, what causes the problems in the new version.
#6518George King
Zitat von ⇗ diderius6 im Beitrag ¶ #6509
@Gelip

On which OS you run this tool?

I need a step by step Tutorial!

Today I also try to enable Windbg via Lan during bootice and the crazy BCD, never tried
Dietmar

PS: Debug via serial COM1 works for the Vista bootloader.
I read here, that @George King uses the bootmgr from win7 and winload.exe from Vista SP2 and get rid of the crazy "driver signature" message.
Have you tried this?
Interesting, that with this tool you can patch ntoskrnl.exe. So, easy hack there is also possible. Before I never succeed with it,
because XP SP3 tells that ntoskrnl.exe is broken.

About the Bsod pfn_list_corrupt I read:
"This error is typically caused by a driver passing a bad memory descriptor list. For example, the driver might have called MmUnlockPages twice with the same list.

If a kernel debugger is available, examine the stack trace: the !analyze debug extension displays information about the bug check and can be helpful in determining the root cause, then enter one of the k (Display Stack Backtrace) commands to view the call stack."

EDIT: To change bootmgr from Vista SP2 against bootmgr from win7 does not change "Signature check".


Its not only about bootmgr swapping, you need BCD too with nointegritychecks enabled. If you want manualy edit BCD from XP, use bcdedit from Vista RTM. This will be included in still unreleased XP2ESD 1.4

 
https://www.geoffchappell.com/notes/windows/boot/bcd/elements.htm?tx=5



Zitat von ⇗ George King im Beitrag ¶ #6446
This is BSOD that I encounter when booting using Windows 7 bootmgr + BCD + Vista winload.exe.

This what happends. Bootmenu and first option is for winload and detectHAL and integrityservices disabled in BCD.
Boot menu

Then booting

Then BSOD




There is no need to use 3rd tools, as we can do it using bcdedit.exe 6.0.6000.16386 (vista_rtm.061101-2205)

Example from setup.cmd that handle BCD entries, %TARGET% is system like C:, this means which partition is system one you want to boot from.
This will suppress mentioned "Signature check"

 
REM Winload option
if exist "%TARGET%\Windows\system32\winload.exe" (
bcdedit /store "%TARGET%\boot\bcd" /set {default} description "Microsoft Windows XP" >nul
bcdedit /store "%TARGET%\boot\bcd" /set {default} device partition=%TARGET% >nul
bcdedit /store "%TARGET%\boot\bcd" /set {default} path \windows\system32\winload.exe >nul
bcdedit /store "%TARGET%\boot\bcd" /set {default} osdevice partition=%TARGET% >nul
bcdedit /store "%TARGET%\boot\bcd" /set {default} systemroot \Windows >nul
bcdedit /store "%TARGET%\boot\bcd" /set {default} detecthal yes >nul
bcdedit /store "%TARGET%\boot\bcd" /set {default} pae default >nul
bcdedit /store "%TARGET%\boot\bcd" /set {default} integrityservices disable >nul
) else (
bcdedit /store "%TARGET%\boot\bcd" /delete {default} >nul
)


REM NTLDR option
if exist "%TARGET%\Windows\system32\winload.exe" (
bcdedit /store "%TARGET%\boot\bcd" /create {ntldr} /d "Microsoft Windows XP Legacy" >nul
) else (
bcdedit /store "%TARGET%\boot\bcd" /create {ntldr} /d "Microsoft Windows XP" >nul
)
bcdedit /store "%TARGET%\boot\bcd" /set {ntldr} device partition=%TARGET% >nul
bcdedit /store "%TARGET%\boot\bcd" /set {ntldr} path \ntldr >nul
bcdedit /store "%TARGET%\boot\bcd" /displayorder {ntldr} /addlast >nul

del /q /s /a "%TARGET%\boot\bcd.log*" >nul
[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#6519infuscomusported vista beta 5365 acpi.sys - testers welcome!

infuscomus has attached files to this post
#6520Andalu⇗ @infuscomus

just tried on my asrock B250M Pro4 with installed XP-IE 2020.9.9:
7B BSOD for both Microsoft SATA driver v2.0 (v6.2.9200.16384) and RSTe 4.7.0.1117.

Edit1: h8l.dll copied into windows\system32 folder.

Edit2: same bsod for the Universal 32bit Intel RST AHCI+RAID driver v11.2.0.1006.
#6521genieautravail⇗ @PPeti66x

I will try the others ACPI files as soon that I will have a little free time!
#6522ruthan
Zitat von ⇗ infuscomus im Beitrag ¶ #6519
ported vista beta 5365 acpi.sys - testers welcome!

 What are expectation that it would be better than XP modded ACPI, make sense test it for intel desktop, or only laptops, or its more for ryzen? Is expected than USB3 compatibility would be better if yes, with Intel USB3 or external PCI-E controllers?
#6523daniel_k⇗ @PPeti66x

Please do a last test using the 2009 and 2012 acpi files attached.

daniel_k has attached files to this post
#6524PPeti66x⇗ @infuscomus
XP SP3 (with PosReady updates) failed to boot in both normal and safe mode on my Dell M4800 (Haswell).
Normal:
 STOP: 0x0000007E (0xC0000005,0xB7F240A8,0xB84D715C,0xB84D6E58)
 ACPI.sys - Address B7F240A8 base at B7EE1000, Datestamp 601a73b6
SafeMode:
 STOP: 0x0000007E (0xC0000005,0xF74B30A8,0xF78B215C,0xF78B1E58)
 ACPI.sys - Address F74B30A8 base at F7470000, Datestamp 601a73b6
#6525daniel_k
Zitat von ⇗ ruthan im Beitrag ¶ #6522
What are expectation that it would be better than XP modded ACPI, make sense test it for intel desktop, or only laptops, or its more for ryzen? Is expected than USB3 compatibility would be better if yes, with Intel USB3 or external PCI-E controllers?


IMHO, only acpi.sys v6666 (outerspace) should be recommended. as it is based on the original SP3 version with improved ACPI 2.0 support by ⇗ @Mov AX, 0xDEAD .

When using Vista versions you'll notice issues sooner or later, as acpi.sys does much more than simply parsing the ACPI tables.
For instance, with 5048 beta, wireless connection would not activate automatically upon logon.

 

Page 436

#6526PPeti66x⇗ @daniel_k
Both works exactly same as the test versions in ⇗ http://www.mediafire.com/file/hwio6yp5je1hqkq .
#6527daniel_k
Zitat von ⇗ PPeti66x im Beitrag ¶ #6526
@daniel_k
Both works exactly same as the test versions in ⇗ http://www.mediafire.com/file/hwio6yp5je1hqkq .

Thanks for testing them.

You'll have to use that "custom" acpi2013.sys, unfortunately no universal fix is possible.
#6528PPeti66x⇗ @daniel_k
Until those strings remains easily patchable, I can easily adapt future versions for my compi. Thanks for your hard work.
#6529diderius6I make a deeper analysis with the debug version of ntoskrnl.exe (here ntkrnlpa.exe)
why the Bsod 0x000004E, (0x0000008F,xxx,yyy,0}
happens. It is not direct related to winload.exe from Vista SP2.

.text:00496CF6 loc_496CF6: ; CODE XREF: MmZeroPageThread()+187 j
.text:00496CF6 mov cl, _MmSecondaryColorNodeShift
.text:00496CFC mov eax, ebx
.text:00496CFE imul eax, 1Ch
.text:00496D01 add eax, _MmPfnDatabase
.text:00496D07 mov eax, [eax+0Ch]
.text:00496D0A shr eax, 4
.text:00496D0D and eax, 7
.text:00496D10 shl eax, cl
.text:00496D12 mov ecx, _MmSecondaryColorMask
.text:00496D18 and ecx, ebx
.text:00496D1A or ecx, eax
.text:00496D1C call @MiRemoveAnyPage@4 ; MiRemoveAnyPage(x)
.text:00496D21 cmp eax, ebx
.text:00496D23 jnz loc_496E90

.text:00496E90 loc_496E90: ; CODE XREF: MmZeroPageThread()+1CB j
.text:00496E90 push 0 ; BugCheckParameter4
.text:00496E92 push ebx ; BugCheckParameter3
.text:00496E93 push eax ; BugCheckParameter2
.text:00496E94 push 8Fh ; BugCheckParameter1
.text:00496E99 push 4Eh ; BugCheckCode
.text:00496E9B call _KeBugCheckEx@20 ; KeBugCheckEx(x,x,x,x,x)
.text:00496E9B _MmZeroPageThread@0 endp ; sp-analysis failed
So Bsod happens direct after the call of MiRemoveAnyPage(),
when eax and ebx are different. Exact the value from eax is given out in Bsod as BugCheckParameter2,
and the (now different) value from ebx in BugCheckParameter3.
BugCheckParameter4 is always 0, as you can see above
Dietmar

⇗ https://reactos.org/wiki/Techwiki:Memory...ndows_XP_kernel
#6530Gelip⇗ @George King

Zitat von ⇗ George King im Beitrag ¶ #6518
If you want manualy edit BCD from XP, use bcdedit from Vista RTM.

BootICE -> Professional mode is best for editing BCD under WinXP
#6531George King
Zitat von ⇗ Gelip im Beitrag ¶ #6530
@George King
Zitat von ⇗ George King im Beitrag ¶ #6518
If you want manualy edit BCD from XP, use bcdedit from Vista RTM.

BootICE -> Professional mode is best for editing BCD under WinXP



Direct editing BCD from cmd is still more powerfull for all commands that I can run in WinPE or installed Windows. Maybe I don't see the right benefits as you? What is so special on it? Or is here something what can't be done using bcdedit? [TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#6532jonathan_hzsprime b250m plus I7-7700 hd630
Successful installation   bbs.pcbeta.com xp Section
I am not good at English
#6533R3nI need the AMDXHCI_XP_FINAL.rar driver, but I can't find where it was posted in the thread.
#6534genieautravail⇗ @PPeti66x

I have tested all acpi files from this archive:
⇗ http://www.mediafire.com/file/hwio6yp5je1hqkq

Of all acpi files, all keyboard shortcuts works even the one for brighness only with acpi2013 and acpi2015.
But for both of them, no 1E31 device in the devices manager...

Regards
#6535infuscomus⇗ @Andalu ⇗ @PPeti66x

I think my re-implementation of XP's find RSDT function was not done correctly, but I'm not sure how to fix it.

⇗ @daniel_k ⇗ @Mov AX, 0xDEAD

can you see where I went wrong in my acpi.sys?
#6536Gelip⇗ @George King

Zitat von ⇗ George King im Beitrag ¶ #6531
Direct editing BCD from cmd is still more powerfull for all commands that I can run in WinPE or installed Windows.

BootICE also works under WinPE or installed Windows:

There is too much typing in bcdedit in CMD and it's easy to make a mistake, especially with GUID's. In BootICE in professional mode, I just click and choose options from the list:

For example, ApplicationDevice and OSDevice options are very easy to modify:

BootICE can also easily edit UEFI Boot Menu:

Besides, it is free and it can also much more
#6537diderius6⇗ @R3n

The last version of AMDXHCI_XP_FINAL can be found at
⇗ https://forums.mydigitallife.net/threads...hardware.81607/
Dietmar
#6538infuscomus⇗ @diderius6

I patched ACPILoadFindRSDT into vista RTM acpi.sys - can you test it to see if it is more stable?
#6539diderius6⇗ @infuscomus

Yes, just send to me
Dietmar
#6540diderius6I change in Debug ntoskrnl.exe from XP SP3
.text:00496D23 jnz loc_496E90  => .text:00496D23 nop nop nop nop nop nop
Then at boot XP tells, that ntoskrnl.exe is damaged.
Now I open with the tool resource_hacker this hacked ntoskrnl.exe
and just store it again.
This tool overcomes the XP check and now the edited ntoskrnl.exe
is accepted by XP
Dietmar

⇗ http://www.angusj.com/resourcehacker/#download

 

Page 437

#6541infuscomus⇗ @diderius6

here it is.

edit: updated

infuscomus has attached files to this post
#6542R3n
Zitat von ⇗ diderius6 im Beitrag ¶ #6537
@R3n

The last version of AMDXHCI_XP_FINAL can be found at
⇗ https://forums.mydigitallife.net/threads...hardware.81607/
Dietmar

Thanks.
#6543gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #6540
Now I open with the tool resource_hacker this hacked ntoskrnl.exe
and just store it again.
⇗ @diderius6 ...it probably reset the CRC value in the PE header. Don't know, can you or someone confirm?
#6544diderius6Hi,
is there a tool, with which you can track the use of the PFN list for any driver?
Can only a driver, which uses paged memory, can make a fault in the PFN list (especially in MiRemoveAnyPage(x) )?
Dietmar
#6545kukonosau⇗ @infuscomus
Hello. How to change acpi.sys in Vista? I use any other file, and I have error acpi is corrupted, and black screen. Windows Vista can't load any modify driver acpi.
#6546infuscomus⇗ @kukonosau

It is not a stable acpi.sys right now.
#6547kukonosau⇗ @infuscomus
Sorry( But acpi.sys for WinXP64 exist for Ryzen? I use acpi from post #2202 and get BSOD. More BSOD in games than desktop.
#6548infuscomus⇗ @kukonosau

I am not sure if one exists for XPx64.
#6549kukonosau⇗ @infuscomus
Thanks for answers. But why Win7 and 8.1 equal bad working in games on Ryzen (GTA IV)? Equal lags has!!! Vista before BSOD hasn't lags in games and XP also (after change intelppm.sys), and Win10. What is problem? I can't solve 2 years!!! Win7 highest FPS sometimes than Win10, but have lagging few games. Why? Diderius6 while can't help me.
#6550Mov AX, 0xDEAD
Zitat von ⇗ kukonosau im Beitrag ¶ #6545
How to change acpi.sys in Vista? I use any other file, and I have error acpi is corrupted, and black screen. Windows Vista can't load any modify driver acpi.

это тоже самое что спросить у хирурга "как починить сломанный орган", он конечно раскажет в деталях, но повторить ты врят ли сможешь - слишком много деталей  и нюансов. Лучше начинать с базовых вещей - исправление контрольной суммы PE файла, отключение проверки подписей драйверов и т.д.
p.s. по winxp_x64 здесь заметно меньше материалов, архитектура сложнее (ассемблерный уровень) и она заметно менее популярна
#6551daniel_k- WinXPPAE v3

* Fixed setting of all memory size variables.
* Added option to set custom memory limits, in MB (megabytes) or GB (gigabytes), from 4GB to 128GB.
* Fixed crashes when using patched HAL with unpatched Kernel
* Fixed 64-bit addressing being enabled when less than 4GB is available, related to fix above.
* Removed the /4GB option as it didn't work properly.
* Removed useless patching of non-PAE Kernels (ntkrnlmp.exe and ntoskrnl.exe).

⇗ http://www.mediafire.com/file/jb835a2pcg62who

 
/M:131072MB Limits RAM to a custom amount in MB (megabytes).
/M:128GB Limits RAM to a custom amount in GB (gigabytes).
/M:ALL Uses all available RAM.
/NB Does not create backup copies of original files.
/NOBACKUP Same as /NB


Now you can permanently replace all original HALs with patched ones (hal*.dll files are not protected by SFC), then create an entry in boot.ini to use the patched PAE Kernel (Uni or MultiProcessor) with unlocked RAM.

#6552infuscomus⇗ @daniel_k

/4GB option did not work correctly? how so? It seems to work just fine for me.

are drivers misbehaving still and issue when using more than 4GB of RAM?
#6553ruthan⇗ @daniel_k - Could this explain with my old install in had with same HW, BSOD with Pool in non page area and with other it works fine? Also that with new install NVME drivers are working with OLD not? What is now options for best compatibility? Could this fix some USB3 device crashes not working problems?
#6554daniel_k
Zitat von ⇗ infuscomus im Beitrag ¶ #6552
/4GB option did not work correctly? how so? It seems to work just fine for me.

As ⇗ @Mov AX, 0xDEAD have said before, 4GB were available, but included addresses above 4GB, so a badly written driver could have issues accessing those addresses.
You may mimic its behavior by using the /M:4097MB parameter.

Zitat
are drivers misbehaving still and issue when using more than 4GB of RAM?


Yes, the issue lies in the drivers themselves, not in the patch.
Drivers that have issues on XP with my patch also have exactly the same issues on Server 2003 Datacenter/Enterprise.

#6555daniel_k⇗ @ruthan

The updated patcher won't help you.

When everything works on a new install, something was wrong with the old one.
It's difficult to diagnose old installs, can't help you with that.

 

Page 438

#6556daniel_k⇗ @genieautravail

Can you dump the acpi tables of your laptop so I can see if there is something I can do about it?
⇗ http://rweverything.com/
#6557diderius6I make a try with verifier.exe on original XP SP3 5512.
This is output from Windbg.
Does this mean, all is ok with any driver from this XP SP3?
Dietmar

PS: I noticed, that the very last version from XP SP3, updated with all the Posready updates until May 2019
⇗ https://www.zone94.com
does not longer work together with the debug versions of XP SP3 hal.dll and ntoskrnl.exe .

EDIT: Now I think, this happens because of the use from ntoskrn8.sys .

⇗ @Outbreaker
So it seems not a good idea, to make use of ntoskrn8.sys in a full working XP SP3 installation for daily use.

Better to integrate wished functions direct into ntoskrnl.exe.
And this modified ntoskrnl.exe can then be used after just load and store with the nice tool ResourceHacker.
0: kd> !verifier

Verify Level fb ... enabled options are:
Special pool
Special irql
All pool allocations checked on unload
Io subsystem checking enabled
Deadlock detection enabled
Enhanced Io checking enabled
DMA checking enabled

Summary of All Verifier Statistics

RaiseIrqls 0x2b
AcquireSpinLocks 0xfc9c5
Synch Executions 0x2
Trims 0x6740

Pool Allocations Attempted 0xec08
Pool Allocations Succeeded 0xec08
Pool Allocations Succeeded SpecialPool 0xec08
Pool Allocations With NO TAG 0x9
Pool Allocations Failed 0x0
Resource Allocations Failed Deliberately 0x0

Current paged pool allocations 0x148c for 00872544 bytes
Peak paged pool allocations 0x14c9 for 0087CA78 bytes
Current nonpaged pool allocations 0xf2e for 0219E658 bytes
Peak nonpaged pool allocations 0x112e for 024B66B0 bytes
#6558iyutos(deleted)  I found "Modded ACPI Drivers Depot"
#6559DibyaWhat kind of problems are faced with ntoskrn8.sys? ⇗ @diderius6
#6560infuscomus
Zitat von ⇗ diderius6 im Beitrag ¶ #6557
So it seems not a good idea, to make use of ntoskrn8.sys in a full working XP SP3 installation for daily use.


⇗ @diderius6

I disagree, it is perfectly fine for daily use, it only becomes an issue when debugging is needed - in which case use the official checked build.
#6561genieautravail⇗ @daniel_k

ACPI tables of the laptops.

Regards

genieautravail has attached files to this post
#6562genieautravail⇗ @daniel_k, ⇗ @Mov AX, 0xDEAD

Zitat

IMHO, only acpi.sys v6666 (outerspace) should be recommended. as it is based on the original SP3 version with improved ACPI 2.0 support by ⇗ @Mov AX, 0xDEAD .


Perhaps, but only on computers that don't "hide" the USB 3.0 controller.
Overall, on all computers on which I have tried the various acpi files, I get better results with the acpi_5048...
In the acpi.sys v6666 (outerspace) something is mssing or wrong as it can't "unhide" the USB 3.0 controller.
Probably a tiny thing to change in the code.

Regards

#6563diderius6This is the famous double slit experiment in Quantenmechanic.
2 years ago I think about, how to prove it. Now it seems, that it has been done.
Take a look on this "streets" for photons, electrons, any particel.
Because they do not cross, it is impossible, that any information is lost, world as big clock,
Dietmar

#6564diderius6After crazy fight with missing arcpath, which gives Bsod 0x7b,
I succeed to get original XP SP3 5512 to work with the original acpi.sys from Vista.

This is great work from ⇗ @infuscomus

Dietmar

#6565infuscomus⇗ @diderius6

Please share how you achieved this! even I still have not got this acpi.sys working properly.
#6566Mov AX, 0xDEADHi,

Ntoskrnl_Extender + Storport_win8 + Guide updated to full support x64 Windows XP/2003, everything works - wdf 1.11, usb 3, storport_win7, msahci, storahci, uaspstor, ¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (328)
not tested yet: 3rd party intel/amd sata drivers, nvme_win7

also Vista and Win7 supported as target os, compilation is OK for x32/x64 platforms, but not tested on real OSes
#6567XPLives⇗ @infuscomus

Zitat von ⇗ infuscomus im Beitrag ¶ #5358
@diderius6 @XPLives

regarding XP and larger than 2TB hard drives -

I noticed the import table for disk.sys of vista RTM is a match for XP ntoskrnl hal and classpnp.sys

I'm wondering if it might be possible to swap XP disk.sys with vista RTM disk.sys to get larger disk support?

edit:
and disk.sys of windows 7 SP1 is a match with ntoskrn8 extender.


Don't bother.  If you did get this to work it would only support GPT for large disks.  Once you moved the drive to vanilla XP or 2K it would not read larger drives > 2.2TB and it would not read GPT without the same modded drivers on the the target system.

I am looking into finding a way to read controller chips that do the translation so then MBR can be used to boot off > 2.2TB drives internally connected.   Then you can have 17.6TB for a boot drive using FAT32.
#6568infuscomus⇗ @XPLives

I'm not too concerned about not having 2TB+ disks on XP right now (excluding the USB workaround), and it turns out it was not the issue anyway, it was in fact a kernel panic from having more than 32 CPUs.
#6569XPLives⇗ @infuscomus

Zitat von ⇗ infuscomus im Beitrag ¶ #6568
@XPLives

I'm not too concerned about not having 2TB+ disks on XP right now (excluding the USB workaround), and it turns out it was not the issue anyway, it was in fact a kernel panic from having more than 32 CPUs.


Which CPU do you have with 32 Cores+ showing?  I thought you had a 12 Cores / 24 Thread ThreadRipper at one point you mentioned for the TRX40 motherboard.

I'm also doing another test later for 18TB and 32TB for MBR and GPT.
#6570infuscomus⇗ @XPLives

3960x - 24 Core / 48 Thread

I found that if I either disabled a CCX or disabled hyperthreading XP would boot just fine, but if all are enabled it freezes without a BSOD.

 

Page 439

#6571XPLives⇗ @gordo999

Zitat von ⇗ gordo999 im Beitrag ¶ #4331
Zitat von ⇗ XPLives im Beitrag ¶ #4330
And Daniel_K is missing so no idea if he was contacted first or Fernando about this to find helpful answers on what really happened and what was the timeline of events.
@XPLives ...see the following page, message 4203. Also 4194, a page or so before. Reading between the lines I'd say someone from Intel is behind this.

Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (281)



Reading that message link you provided again made me reconsider you might be right that it's possible Intel was upset about something.  I think it was the Storage drivers themselves but even those that were modified were unnecessary to get XP installed but only useful for using the extra features that DK might have enabled and work on XP when originally it was meant for another operating system.

However even Intel cracking down on such drivers still had no impact on getting XP to install on modern hardware using the older drivers still available so they were mainly trying to swat the little guy again with bullying.   Sounds like Creative Labs part deux.

Intel should be thankful since it would only encourage more people to buy Intel CPUs because of their compatibility versus AMD.  Also the extra functions in the newer storage drivers backported to XP just helps that case.

I remember hounding Intel when Haswell was released without XP drivers for their iGPU.  It really damned their sales wherever I could.  I felt you were getting less for your money losing the use of the iGPU since they decided to drop XP driver support.  It would have been better had they just released the source code for the XP iGPU drivers and let people do the work they wouldn't.  I consider all the CPUs with their iGPUs basically a waste of money where I'd rather have that money and die space used for more cores and just use my own discrete graphics card.
#6572XPLives⇗ @infuscomus

Zitat von ⇗ infuscomus im Beitrag ¶ #6570
@XPLives

3960x - 24 Core / 48 Thread

I found that if I either disabled a CCX or disabled hyperthreading XP would boot just fine, but if all are enabled it freezes without a BSOD.


Was that the only ThreadRipper CPU you had?  For some reason I thought you had a 12 Core / 24 Thread.

What does the CCX do?

Disabling the HyperThreading would give you just the pure 24 Cores and No Threads so are you saying you finally got XP working with 24 Cores on your TRX40 motherboard?

Which ACPI.sys  did you have to use to boot and work properly?

It shouldn't be too hard for me to test what happens once I break 32 Cores on Intel.  It's just a matter of $$$ to do it.

But you also have to realize there might be a certain point where number of Cores in XP doesn't improve or alter the performance much.  I'm not certain where that number is yet as I haven't done any major core comparison testing.  I'd say it's possible 8 Cores vs 4 Cores you should see some improvement but is it significant?  I'm not even sure if most software for XP written takes advantage of more than 2 cores.  I'd have to see how Crysis does on 12 and 24 Cores and see if the Task Manager shows any kind of CPU usage on all the cores or just the first few.
#6573infuscomus⇗ @XPLives

Zitat von ⇗ XPLives im Beitrag ¶ #6572
Was that the only ThreadRipper CPU you had?  For some reason I thought you had a 12 Core / 24 Thread.


Thats the only Threadripper CPU I have.

Zitat von ⇗ XPLives im Beitrag ¶ #6572
What does the CCX do?


Disables a Compute Core Complex so some CPU cores are turned off.

Zitat von ⇗ XPLives im Beitrag ¶ #6572
Disabling the HyperThreading would give you just the pure 24 Cores and No Threads so are you saying you finally got XP working with 24 Cores on your TRX40 motherboard?


Yep, I got it working properly.

Zitat von ⇗ XPLives im Beitrag ¶ #6572
Which ACPI.sys  did you have to use to boot and work properly?


I used the outerspace acpi.sys - this gets past ACPI BSOD - although motherboard USB ports will not behave correctly on every boot unless I disable and reenable the USB controller every time (and I needed a separate pci-e USB card to be able to do this)

Zitat von ⇗ XPLives im Beitrag ¶ #6572
It shouldn't be too hard for me to test what happens once I break 32 Cores on Intel.  It's just a matter of $$$ to do it.


If you can figure out what happens that would be great. Server 2003 RTM has the same issue, but SP1 has a fix in its kernel somewhere that stops it freezing.
#6574XPLives⇗ @infuscomus

Zitat von ⇗ infuscomus im Beitrag ¶ #6573
@XPLives

I used the outerspace acpi.sys - this gets past ACPI BSOD - although motherboard USB ports will not behave correctly on every boot unless I disable and reenable the USB controller every time (and I needed a separate pci-e USB card to be able to do this)

If you can figure out what happens that would be great. Server 2003 RTM has the same issue, but SP1 has a fix in its kernel somewhere that stops it freezing.


The problem with the internal USB 3.0 ports is something I cannot solve since I also use internal USB 3.0 PCIe cards so I avoid them.  Also the best card is the Texas Instruments model as it has the fastest reaction time and less lag which is important when watching HD footage and scrubbing through it there is almost no noticeable delay.  Using any other brand has lags of a few seconds in some cases even if they have a higher top end sustained transfer rate speed.

Imagine if all USB 3.0 PCIe cards were different car models.

One is the fastest but very poor braking that takes a few seconds before it responds.
Other cars maybe 90%-99% as fast but even poorer braking response time than the fastest car.
One is 98% of the top speed of the fastest car but can brake instantly.  I choose this car.  This is the Texas Instruments.

But DK could not crack the TI driver successfully but that is in my opinion the best driver out there even if it is considered Fort Knox.  Other option I would suggest is to negotiate a deal to sell the source code to that driver for a cheap price since I doubt the company cares about XP / 2003 any more these days so it's free money in the end to them.

If there's an option on the BIOS side to disable the USB 3.0 on board that's what I do so I don't have to deal with any conflicts or popups or using up resources.  Some BIOS don't let you do this.

The AM4 BIOS doesn't have proper MPS mode which is why I gave up early on for multicore support.  If you can transplant AM3+ BIOS MPS into AM4 and TRX40 BIOS then you can have the same compatibility as Intel does.

I am getting an advanced BIOS Programmer to see if I can frankenstein it since I told you long ago I bought the AMD 990FX at the time hoping to use it to bridge the gap to AM4 but it has sat there unused since then. But I will be starting from complete scratch and total guess work.

The best idea is transplant settings from MPS mode into ACPI.sys to simulate MPS mode while using ACPI.sys so it's always guaranteed 100% working on all systems (Intel) at least but possibly AM4 would work too since you are simulating MPS mode while using ACPI.sys it should in theory work on all platforms.  Then tweak this MPS emulating ACPI.sys to add more ACPI functionality one step at a time so it's still 100% compatible.  Using a pure ACPI.sys always has problems as we discover later and trying to patch the problem after the fact for every user.    Why not start with what works 100% and add onto it instead to avoid debugging nightmare?  One day diderius6 may not be alive and you are left in the same situation with no one to fix a future BSOD specific issue.

Once this is completed for 32-Bit versions  then to find a way to modify this MPS emulating ACPI.sys for 64-Bit XP/2003.  May take a long time to complete since no source code for it exists for any MPS Mode for 64-Bit so a modified ACPI.sys emulating MPS mode needs to be created.  Even if hyperthreading threads are gone I would still prefer it than not being able to use it.



Can you provide the outerspace acpi.sys original post link and also upload that version here again in case it's dead and I'll place it later into its own Thread Depot for easier location.


Also for the CPU Max Cores fix can you give me that file that you tested from diderius6 for 64 Cores and 128 Cores if you have both files?  I think those links are dead now from long ago.


I think I will try to see after 64 Cores and 128 Cores works to try to push it to 256 Cores, 512 Cores, and 1024 Cores support over the next twenty years.
#6575XPLives
Zitat von ⇗ RayeR im Beitrag ¶ #5369
Zitat von ⇗ XPLives im Beitrag ¶ #5320

Actually it is unnecessary to worry about this.  As long as use the source code for Windows 2000 Server to create the updated ACPI.sys file it can work with XP SP0-SP3, 2009 POS, and Server 2003.  I tested this before.
As for SP1 source it won't be an issue for SP2 or SP3 to work with it.   What you cannot do is use SP3 source to work with Windows 2000 SP0-SP4, or XP SP0-SP2.
It is imperative to use Windows 2000 source code to create the updated ACPI files so it can be used with all NT5.X versions from Windows 2000->2009 POS.



I need to clarify this...
So you mean there was already leaked sources of acpi.sys from W2k that can be rebuild and used for all newer windows up to SP3/Wk3? I read that some subset of W2k sources had leaked before but didn't investigated further.
Are you sure there was not any critical acpi.sys updates in newer OS versions that would require some minimal version for specified OS version? I would guess ahat acpi.sys from XP SP1 would be more advanced than one from W2k.

And how about that acpi.sys patches linked in this thread? I though they are original binaries that was hacked/patched on binary level using disassembler and hexa exitor, not rebuilded from sources. am I right?

diderius6 also mentioned about acpi.sys from XP SP3 from "outer space" that it worked for him, it's meant to be original SP3 version or some hacked one?
He aslo mentioned "I build a new acpi.sys" - is it mean from leaked  src?
Update: oh, I see you just rebuild and run 'miniXP' - congrats :) But a pitty about missing kernel sources :(

BTW from the ⇗ posted description of acpi.sys it seems it's respnsible for enumerating other devices and loading drivers so I can imagine that if something not anumerated properly then disk driver is not loaded getting other error.
BTW2 there's mention about AMLI debugger, did someone able to run it? It should help debugging ACPI issuses.


A lot of questions some I cannot answer regarding diderius6 modified ACPI.sys as I do NOT know what he did or changed and he has not released an instruction manual or guide to replicate those changes.  Also the method of constantly patching an ACPI.sys that's constantly like a leaking boat eventually diderius6 will die one day (God forbid) and then the holes in the boat remain unplugged and it sinks.

In my own testing using the Windows 2000 ACPI.sys versions then can be placed into any later NT 5.X version and boot up properly and used without issue.   It is using a later ACPI.sys version from say 2003 or XP and placing it into Windows 2000 it will not work.  Hope that made sense.  That is why if the source code to the Windows 2000 ACPI.sys exists and can be modified directly then that is the best way to proceed to fix any ACPI issues that affect XP, 2003, and 2009 POS.  Now how ACPI itself works even if you have the source code is another can of worms to unravel.  I think the key is replicating the MPS mode equivalent environment into the ACPI.sys as being the default settings.  Then you will have a true emulated MPS Mode using ACPI.sys method of working on all NT5.X based operating systems.

You can go to my main ACPI thread here:
⇗ Modded ACPI Drivers Depot 2000 XP 2003 2009

I discovered this ACPI.SYS forward compatibility over 2 years ago.
⇗ Modded ACPI Drivers Depot 2000 XP 2003 2009

Again good to see you RayeR as all things retro and ISA SB passion.


XPLives
#6576Andalu
Zitat von ⇗ daniel_k im Beitrag ¶ #6554
Zitat von ⇗ infuscomus im Beitrag ¶ #6552
/4GB option did not work correctly? how so? It seems to work just fine for me.

You may mimic its behavior by using the /M:4097MB parameter.

thank you for the new WinXPPAE patch release

It works fine with the option /ALL but I was not able to obtain the /4GB recognition: only 2.11GB of ram detected using the /M:4097MB parameter in the command line.
Even adding the entries  "/M:4097MB" and "/kernel=ntkrnlpa.exe" (ntkrpamp.exe renamed) in the boot.ini didn't help.

Where I was wrong?
#6577RayeRHi, can someone point me to some description of daniel_k's patch - what this patch do differently and why comapred to original chinese 64GB or russian 128GB patches? I just tried it and compared patched files. There was much more modified Bytes (~200) in the HAL.DLL over old patches. But I did not notice any difference when boot up. My problem with PAE are some drivers that cause XP unresponsive, e.g. when using generic USB camera or Saleae USB logic analyser. Of course I replaced all related USB drivers by files from W2K3S SP2 or newer but problem still persist.

I also noticed that original VIA VL805 drivers for USB 3.0 XHCI doesn't even start properly after installation with PAE enabled (error code 10). So I moved to Win8 backported driver that seems to work OK with PAE. Just tested with USB 2.0 device only, still waiting for delivery of USB3SATA cable...
BTW what is security cookie inside driver files and why it needs to be changed? AFAIK this is something new that came after XP so do I bother when using backported drivers in XP-only?
#6578Mov AX, 0xDEAD
Zitat von ⇗ RayeR im Beitrag ¶ #6577
Hi, can someone point me to some description of daniel_k's patch - what this patch do differently and why comapred to original chinese 64GB or russian 128GB patches? I just tried it and compared patched files. There was much more modified Bytes (~200) in the HAL.DLL over old patches. But I did not notice any difference when boot up.
I also noticed that original VIA VL805 drivers for USB 3.0 XHCI doesn't even start properly after installation with PAE enabled (error code 10).

BTW what is security cookie inside driver files and why it needs to be changed? AFAIK this is something new that came after XP so do I bother when using backported drivers in XP-only?

Hi RayeR

- If you use Daniel_K's PAE patch properly, you will see difference, for example original VIA USB 3 driver load with error 10.
error 10 on VIA means you have unproperly pached hal.dll (XP64G/FIX128 produce such bugged hal.dll)
- Why 200 bytes ? - run disassemler/bindiff and you can see how much cost restoring DMA functionality XP SP2/SP3' hal to W2003' hal for systems with more 4Gb ram
- Replacing some USB files from W2003 solve famous error in orig XP drivers - USB 1.0/2.0 contoller stop working on PAE + RAM>4GB system, this solution not related to PAE patches, this is just replacing faulty driver from one MS team to better driver written by another MS team  :)
- Security cookie introduced in windows 8, they must be random at every boot, driver itself check this "random", on all prew-Win8 OSes, kernel load driver in older way without random. To bypass check for "random" i offer change cookie to pseudorandom (staticaly in file), but exist another way - patching this check
#6579RayeRThanks for info, so DMA works better with dan's patch, OK. I tested the VIA driver before I found this patch so I had unproperly patched hal.dll by chinese PAE patch.

And is there known solution for USB cameras with PAE? This are the drivers I had replaced from W2K3S:
hidparse.sys  usbehci.sys   usbport.sys   usbstor.sys   usb8023.sys
usbaudio.sys  usbhub.sys    usbprint.sys  usbuhci.sys
usbccgp.sys   usbintel.sys  usbscan.sys   usbvideo.sys
usbd.sys      usbohci.sys   usbser.sys    usb8023x.sys
Did I miss something?

I still didn't get the purpose of the security cookie. It's some random number initilaized by kernel for every driver it loads and then driver checks for it? What happens when it's changed at runtime? Should it protect against some hacker's attack of unwanted driver modification? So it would make me more sense to check some hash of the driver periodically...
#6580gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #6563
Take a look on this "streets" for photons, electrons, any particel.
Because they do not cross, it is impossible, that any information is lost, world as big clock,
Dietmar
⇗ @diderius6 ...the physics is wrong.

The original double-slit experiment involved waves of light striking a surface with two slits. The different frequencies in the wave were deflected different amounts onto a target where certain frequencies added and other subtracted, causing alternate light and dark areas on the target.

Now they think that individual electrons behave the same way but they do not. For one, you cannot fire a single electron from a gun, they flow through a vacuum in a beam of electrons. They won't flow through air because they would collide with air molecules. Electrons beams were applied to a single slit, not a double slit. Because they produced the same diffraction patterns on a target screen it was theorized that electrons must have a wave-like nature, BS. Electrons are solid particles that carry a charge and a magnetic field, therefore the diffraction patterns must be due to some kind of quantum property as proposed by Bohm.

There is no proof that photons exist. They are defined as particles of electromagnetic energy with NO MASS. Unlikely!! It is known that electrons attached to atoms emit and absorb EM of certain frequencies but how can a particle have a frequency? Obviously, the electrons are emitting and absorbing portions of EM fields (aka waves).

It is convenient to think of EM as being made of photons but the same is done in electrical theory by forming an analogy with water flow. I find that unnecessarily confusing and have never thought that way. Same with photons, the interaction of EM with electrons can be done easily without thinking in terms of photons. In fact, the idea of a photon only serves to confuse the physics.

Before he died, Einstein stated that no one knew whether EM was a wave or a series of particles. I'll go one further, I know a lot about electrons, having worked in the field for decades. I don't think there is any such thing as a photon and that part of quantum theory is nonsense.
#6581gordo999
Zitat von ⇗ RayeR im Beitrag ¶ #6579
I still didn't get the purpose of the security cookie. It's some random number initilaized by kernel for every driver it loads and then driver checks for it?
⇗ @RayeR ...they are used everywhere in code, not just in drivers.

⇗ https://docs.microsoft.com/en-us/cpp/c-r...e?view=msvc-160

"The global security cookie is used for buffer overrun protection in code compiled with /GS (Buffer Security Check) and in code that uses exception handling. On entry to an overrun-protected function, the cookie is put on the stack, and on exit, the value on the stack is compared with the global cookie. Any difference between them indicates that a buffer overrun has occurred and causes immediate termination of the program".

They appear to be anti-hacker devices since a buffer overrun is a prime way of hacking code.
#6582diderius6⇗ @gordo999
Oppenheimer (he was the doctor father of Bohm) tells:
When we cant prove, that he is wrong, we must ignore him.
Einstein writes about Bohm: It seems to me too easy. But when there is a man on earth who understand Quantenmechanics,
then it is Bohm
Dietmar

PS: You can make an easy experiment: Just put the screen from an interference patton closer and closer to the slit.
You will find those "streets".
Oh, this has more dramatic consequences than Galilei in 1600.
#6583RayeRAha, I know this kind of stack overflow protection-detection, I also used somethin like that on my MCU code but didn't know they call stack fill as a cookie...
#6584daniel_k⇗ @infuscomus and ⇗ @Andalu
Hal patches are perfect, Kernel needed fixes.
I've already fixed the issue and will release ASAP.

⇗ @genieautravail
Got an idea after looking at your ACPI dumps.
#6585gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #6582
But when there is a man on earth who understand Quantenmechanics,
then it is Bohm
⇗ @diderius6 ...I know this is off-topic, and I won't take advantage, but the theories related to computers are all based on it. XP would not exist had it not been for the work of people like David Bohm.

David Bohm is one of my favourite physicists. He once stated that any equation that has no physical evidence to back it is garbage. I have read several of his books and I recall him talking about the one slit experiment with free electrons. He did not have an explanation for why they could be bent to form a diffraction pattern on a target but he hypothesized there 'might' be a quantum action at work.

I fear that theories invented to explain the one and two slit experiments are on shaky grounds. The wave theory is plain enough but when you introduce photon theory, you are relying more on consensus than actual physical reality.

Bohm was a good friend of Einstein and he ran many of his ideas past him. Einstein was not so enthusiastic about quantum ideas that involved action at a distance. Neither was Schrodinger. Both of them wanted a more physical explanation for quantum theory. Then again, Einstein turned around and based relativity theory on redefining time and distance, with no proof of either. He simply added a multiplier to time based on the speed of light with no experimentation or further proof. Some of it worked out but one of his main critics was Louis Essen, who invented the atomic clock. He claimed Einstein's theories are nothing more than a collection of thought experiments and that Einstein did not understand measurement.

I also liked Bohm's work with Jiddu Krishnamurti on how the mind works with respect to thought. There is a book where they both discuss time and Bohm points out at one point that we humans invented time. The title of the book is 'The Ending of Time'.  The 'ground' of which they speak is a reference to what lies beyond thought, when the mind becomes completely quiet.

 

Page 440

#6586gordo999
Zitat von ⇗ RayeR im Beitrag ¶ #6583
Aha, I know this kind of stack overflow protection-detection, I also used somethin like that on my MCU code but didn't know they call stack fill as a cookie...
⇗ @RayeR ...whenever I trace through code, the cookie is referenced by a magic number. That is the value pushed onto the Stack. It is a simple integer value. When the cookie is checked there is a small code section to do the check. I usually jump over it.
#6587Mov AX, 0xDEAD
Zitat von ⇗ RayeR im Beitrag ¶ #6579

And is there known solution for USB cameras with PAE? This are the drivers I had replaced from W2K3S:
hidparse.sys  usbehci.sys   usbport.sys   usbstor.sys   usb8023.sys
usbaudio.sys  usbhub.sys    usbprint.sys  usbuhci.sys
usbccgp.sys   usbintel.sys  usbscan.sys   usbvideo.sys
usbd.sys      usbohci.sys   usbser.sys    usb8023x.sys
Did I miss something?


i dont know, if camera uses custom vendor driver, problem maybe in this driver.
for example on my lenovo ivybridge notebook, camera chip made by RealTek and require custom driver to work on winxp/2003
but chip connected to USB bus and relay on windows usb software stack, so probably never touch DMA things itself

Zitat von ⇗ RayeR im Beitrag ¶ #6579

I still didn't get the purpose of the security cookie. It's some random number initilaized by kernel for every driver it loads and then driver checks for it? What happens when it's changed at runtime? Should it protect against some hacker's attack of unwanted driver modification? So it would make me more sense to check some hash of the driver periodically...

In pre-win8 drivers, every "cookie protected" driver at begin itself generate random cookie value, in Win8 MS moved this part to kernel and drivers dont have this "init cookie procedure" anymore, so this is why win8 drivers expect random from kernel, but winxp<->win7 kernels can't provide it.

And yes, sec. cookies used as stack protection, Idea is to place cookie on stack between return adress and local variables.
If someone try to change return adress on stack (buffer overflow attack), it must patch cookie too, but attacker don't know cookie value because it is random. Every "cookie protected" function when want to return to parent first check saved cookie and only if it is OK, return to parent.
#6588genieautravail⇗ @daniel_k

Zitat von ⇗ daniel_k im Beitrag ¶ #6584
@infuscomus and @Andalu
Hal patches are perfect, Kernel needed fixes.
I've already fixed the issue and will release ASAP.

OK, because as Andalu I have the same issue with the /M:4097MB parameter.

Without WinXPPAE:



With WinXPPAE 2 and /4GB parameter:



With WinXPPAE 3 and /M:4097MB parameter:



Regards
#6589daniel_kWinXPPAE v3:
⇗ http://www.mediafire.com/file/urjqtrfveqnr16s

- Properly patched TotalPagesAllowed, while leaving NumberOfPages set to maximum.
- Fixed when using /3GB, maximum RAM is limited to 16GB.
#6590Andalu⇗ @daniel_k
just tried with the /4GB option: ram correctly recognized, thanksss
#6591genieautravail⇗ @daniel_k

Issue resolved with the /M:4097MB parameter.

Good works!

Regards
#6592daniel_k⇗ @RayeR

The only file you need from Server 2003 is usbport.sys, please try to replace only this file.
#6593YuriyCNWindows XP mod 2021 - system build for the modern PC (edition 12.02.2021)

The information doesn't fit into a forum post for a long time - so download the text file and read it in Notepad. Always use the latest version of the methodology, as the information is constantly changing and the methodology is supplemented.

All information is in txt file (84KB, ENGLISH) - ⇗ https://yadi.sk/d/P3OGVJsJ24aOvg
All information is in txt file (86KB, RUSSIAN) - ⇗ https://yadi.sk/d/M58N2iE6qIOAdw
#6594Mov AX, 0xDEADHi All,

Interesting KB888137 about how Microsoft explains killing >4Gb memory support in XP SP2/SP3:

SYMPTOMS
In Windows Vista, or after you upgrade to Windows XP Service Pack 2 (SP2), the memory that is reported
in the System Properties dialog box or by the System Information tool (Msinfo32.exe) has changed.

CAUSE
This issue occurs because of a design change in Windows XP SP2 that is also included in Windows Vista.
The changes were made to PAE mode behavior to improve driver compatibility.

To reduce driver compatibility issues, Windows Vista and Windows XP Service Pack 2 include hardware abstraction layer
(HAL) changes that mimic the 32-bit HAL DMA behavior. The modified HAL grants unlimited map registers when the computer
is running in PAE mode. Additionally, the kernel memory manager ignores any physical address that is more than 4 GB.
Any system RAM that is more than the 4 GB barrier would be made unaddressable by Windows and be unusable in the system.
By limiting the address space to 4 GB, devices with 32-bit DMA bus master capability will not see a transaction with
an address that is more than the 4 GB barrier. Because these changes remove the need to double-buffer the transactions,
they avoid a class of bugs in some drivers that is related to the correct implementation of double buffering support.

The largest driver PAE compatibility issue involves direct memory access (DMA) transfers and map register allocation.
Many devices that support DMA, typically 32-bit adapters, cannot perform 64-bit physical addressing. When these devices
run in 32-bit mode, the devices can address all physical address space. In PAE mode, data can be present at a physical
address that is more than 4 GB. To enable devices with these constraints to function in this scenario, the Windows 2000
Server family and later versions of Windows provide double-buffering for the DMA transaction. The Windows 2000 Server
family and later versions of Windows do this by providing a 32-bit address that is indicated by a map register.
The device can perform the DMA transaction to the 32-bit address and the kernel copies the memory to the 64-bit
address that is provided to the driver. When the system runs with PAE disabled, drivers for 32-bit devices never
require their map registers to be backed by real memory. This means that double-buffering is not required, because
all devices and drivers are contained within the 32-bit address space. Based on tests of drivers for 32-bit devices
on 64-bit processorbased computers, it is expected that most client-tested, DMA-capable drivers expect unlimited map
registers.
#6595diderius6⇗ @Mov AX, 0xDEAD

Is it a lot of work, for Lan Windbg
also to modd kdstub.dll and kdnet.dll for XP 64 bit from the files from win81 64 bit or even win10 64 bit?
For experiments with UEFI boot,
this will help a lot
Dietmar
#6596Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #6595
@Mov AX, 0xDEAD
Is it a lot of work, for Lan Windbg


Hi
Yes, a lot, i attached part of source fasm code, you need convert it to x64 asm
remain part is injected code in kdnet.dll
⇗ https://pastebin.com/vgkpEgei
#6597diderius6⇗ @Mov AX, 0xDEAD

Via Lan Windbg you can do this via a PCI-e Slot card.
But when you use a slot card for a COM1 serial port,
debugging does not work.
Do you think, that it can make to work with some settings in boot.ini

Dietmar

EDIT: I found this

"The kernel debugging support has hardcoded support for UARTs that look like a 16550, and expects to be able to communicate with them at the standard I/O addresses, 0x3f8 (for COM1) and 0x2f8 (for COM2). (Not sure about COM3/COM4/etc.) The KD support in the kernel does not use a loadable driver, so if you want to use a serial UART, this is your only option. If your PCI board can be configured to work this way, and be ready to do so at OS boot time, then you can probably get it to work."
#6598diderius6I found kd1394.dll also in XP 64,
so a Windbg session should be possible during Firewire Slot card
Dietmar

In boot.ini of the Target PC you have to add /debug /debugport=1394 /CHANNEL=3
And you have to disable the 1394 device(!) in device manager.

and on the Host PC, where Windbg runs in Console

set_NT_DEBUG_BUS=1394
set_NT_DEBUG_1394_CHANNEL= x
kd -k

and run Windbg.

⇗ http://www.ockam.com/OldSite/docs/DisableSerialMiceOnXP.pdf
#6599PPeti66x⇗ @YuriyCN
Hi!
Some notes about Realtek HD Audio for XP:
Some notebook manufacturers are prone to use a custom solutions, and these requires a custom drivers made by the manufacturer. Without a manufacturer-specific driver the device will not work correctly (even if the official Realtek driver can be installed without errors). Known problems: audio have much more noise, because noise cancellation for motherboards internal noise not works, or plugged-in headphone have no sound. Other possible problems may be a higher CPU usage or problems around stanby. The Dell M4800 have issues with the Realtek driver, but I heard that some Lenovo notebooks have similiar problems. For the Dell M4800 (Realtek ALC3226) I found a correct driver: "https://dl.dell.com/FOLDER01584986M/10/REALTEK_ALC3226-HD-AUDIO_A04_D3P06_SETUP_ZPE.exe" For later versions the XP driver was removed.
#6600onuracengizHave you tried these;
⇗ Realtek HD Audio (HDA) Drivers Version 8186

⇗ Microsoft UAA Bus Driver for High Definition Audio

 

Page 441

#6601Mov AX, 0xDEAD⇗ @diderius6

Zitat von ⇗ diderius6 im Beitrag ¶ #6597
@Mov AX, 0xDEAD
0x3f8 (for COM1) and 0x2f8 (for COM2).

change in kdcom.dll constants to yours or recompile kdcom.c
but first check in DOS what COM adapter really works without windows/drivers
#6602diderius6⇗ @Mov AX, 0xDEAD

Today in the morning I take a look with Ida Pro at kdcom.dll and found the entries for COM1 and COM2.
They are there implemented as strings.
Can I just change those strings against the adresses 0x3f8 (for COM1) and 0x2f8 (for COM2)?
And in boot.ini /debugport=0x3f8 ?
The idea I understand but to make it come true is another thing.
How can I check under DOS, that this serial adapter works with only this kdcom.dll as driver?
I have 2 different Serial slot cards. I think, that it works only for a to 100% compatible to 16550 UART
Dietmar

Edit: I have PEX2S553 Startech Serial Card , 2 Port Pci-E , 16550 Uart with mcs9922cv-aa chip.

Seems, that indeed no other driver is needed under DOS

Installation Procedure:
The following procedure explains how to install MosChip serial and parallel I/O ports on DOS.
Step 1: Copy "SXDOSIN.exe" to 'C:\' Drive from Floppy. The command is "copy a:\ SXDOSIN.exe c:\"
Step 2: Type "sxdosin" to confirm Device detection. (Eg. MCS9901)
Following information is displayed For 4 Serial Port
COM1 exists.
COM2 exists
LPT1 exists.
PCI Device configurations.
Found Moschip Semiconductor pci device 9901 (1000A000) Rev00 on Bus01 Slot 00
Found Moschip Semiconductor pci device 9901 (1000A000) Rev00 on Bus01 Slot 00
Found Moschip Semiconductor pci device 9901 (1000A000) Rev00 on Bus01 Slot 00
Found Moschip Semiconductor pci device 9901 (1000A000) Rev00 on Bus01 Slot 00
Detected 4 pci device(s)
= = = = = = = = = = = = = = = =
COM1 exist at 3F8.
COM2 exist at 2F8.
LPT1 exist at 378
= = = = = = = = = = = = == = = = =
#6603YuriyCN
Zitat
Have you tried these;
Realtek HD Audio (HDA) Drivers Version 8186



This driver does not work on Windows XP!!
Windows Vista or newer is required.

============================

I actually got the latest version of "Realtek HD Audio" drivers for Windows XP - it's version 5.10.0.7514 of 23.08.2016.

The supported chips are ALC880, ALC882, ALC883, ALC885, ALC886, ALC887, ALC888, ALC889, ALC892, ALC899, ALC861VC, ALC861VD, ALC867, ALC900, ALC660, ALC662, ALC663, ALC665, ALC668, ALC670, ALC671, ALC672, ALC676, ALC680, ALC221, ALC231, ALC233, ALC235, ALC255, ALC260, ALC262, ALC267 and others.

Realtek_HD_Audio_v5.10.0.7514 driver from 08/23/2016 for Windows XP (35 MBytes) - ⇗ https://www.upload.ee/files/11530218/Rea...8.2016.zip.html

#6604Mov AX, 0xDEAD⇗ @diderius6

Zitat von ⇗ diderius6 im Beitrag ¶ #6602
@Mov AX, 0xDEAD
Can I just change those strings against the adresses 0x3f8 (for COM1) and 0x2f8 (for COM2)?
And in boot.ini /debugport=0x3f8 ?


No, kdcom dont understand this, look for integers 3f8 and 2f8 inside dll
you dont need change ports if your card has standart ports already com1=0x3f8, com2=0x2f8

Zitat

COM1 exist at 3F8.
COM2 exist at 2F8.
LPT1 exist at 378


1) download any terminal util for DOS
2) check with remote PC for "echo" after typing  on keyboard, config 115200 8-N-1
3) you need proof that COM hardware works at standart i/o ports
some test utils support loop test of com ports, just connect rx to tx

ntdetect.com may inteference with com ports, i dont knoq how to disable ntdetect

#6605PPeti66x⇗ @YuriyCN
Headphone not works with it. Same result as the R2.74.
The only correct driver is what I linked before.
#6606gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #6597
But when you use a slot card for a COM1 serial port,
debugging does not work.
⇗ @diderius6 ...is the serial port turned on in BIOS and is it assigned the correct port numbers? You can change the port numbers in BIOS but I don't know if the serial feature appears if you don't have an onboard serial port. Could you add it to BIOS?

Sometimes the hypervisor takes COM1, if you have a hypervisor. Don't think there is one on XP. Sometimes Bluetooth can grab it or an internal modem chip.

⇗ https://phoenixnap.com/kb/what-is-hypervisor-type-1-2

A common problem with COM ports is an IRQ/port conflict with another device. Usually, COM ports use IRQ 3 and 4. Look in Device Manager to see if any COM ports are available. Make sure 'Show Hidden Devices' is checked in the View tab of Device Manager. If your add-on card is properly installed, it should show up in Device Manager under Ports. Also, for more hardware info, look under View\Resources by type and \Resources by connection. Look there to see if another device is trying to use IRQ 3/4 or a COM port address assigned to COM 1/2. With modern chipsets, it's common for devices to share IRQs.

A real good reason nothing shows up in device manager is that the drivers for the add-on card are not right for XP.

If only COM2 is listed (COM1 is missing) you need to troubleshoot to find out why. One good reason is that nothing is attached to the physical port. It can occur because COM1 was assigned earlier and never released. You can fix it in the registry but I can't remember how. Turning on 'Show Hidden Devices' should reveal it in Device Manager.

In boot.ini, I don't know if you can list the port address in hex, I think you have to specify it as COMx.

You can use Hyperterminal to test serial ports or get one of the free communications apps on the net that talk between COM ports. Google putty serial. Better still.

⇗ https://www.techwalla.com/articles/how-t...rial-connection

ps. On my W7 machine the com ports are listed under:

HKLM\system\controlset001\enum\ACPI\PNP0501\0 and \1. May be something in ACPI causing COM issues.
#6607gordo999
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #6604
ntdetect.com may inteference with com ports, i dont knoq how to disable ntdetect

⇗ @Mov AX, 0xDEAD ...Seems to depend on whether BIOS sets the hardware parameters or whether ACPI is available.

"Ntdetect.com is used on computers that use BIOS firmware. Computers with Extensible Firmware Interface, such as IA-64, use a method of device-detection that is not tied to the operating system.[1]

Hardware detection operates somewhat differently depending on whether or not Advanced Configuration and Power Interface (ACPI) is supported by the hardware. It passes on the hardware details gathered from the BIOS onto the OS. If ACPI is supported, the list of found devices is handed to the kernel, Windows will take responsibility for assigning each device some resources. On older hardware, where ACPI is not supported, the BIOS takes responsibility for assigning resources, not the operating system, so this information is passed to the kernel as well".

⇗ https://en.wikipedia.org/wiki/Ntdetect.com

************

⇗ @Mov AX, 0xDEAD ... Похоже, это зависит от того, устанавливает ли BIOS параметры оборудования или доступен ACPI.

"Ntdetect.com используется на компьютерах, которые используют микропрограмму BIOS. Компьютеры с расширяемым интерфейсом микропрограмм, такие как IA-64, используют метод обнаружения устройств, который не привязан к операционной системе. [1]

Обнаружение оборудования работает несколько по-разному в зависимости от того, поддерживается ли аппаратным обеспечением Advanced Configuration and Power Interface (ACPI). Он передает сведения об оборудовании, собранные из BIOS, в ОС. Если ACPI поддерживается, список найденных устройств передается ядру, Windows берет на себя ответственность за назначение каждому устройству некоторых ресурсов. На старом оборудовании, где ACPI не поддерживается, за назначение ресурсов берет на себя BIOS, а не операционная система, поэтому эта информация также передается ядру ".

[URL] ⇗ https://en.wikipedia.org/wiki/Ntdetect.com [/ URL]
#6608onuracengiz⇗ Realtek HD Audio (HDA) Drivers Version R2.8x (8186) WHQL listed as Xp.maybe installer is not working on Xp but have you tried have disk method?

Could you try the official one from realteks website
⇗ Windows 2000, Windows XP/2003(32/64 bits) 2.74 dated 2014/05/14

And yes ⇗ Intel Realtek ALCxxx Driver v5.10.0.5377 is also for Xp but these are for much older cards

Same goes for ⇗ Microsoft UAA Bus Driver for High Definition Audio even much much older (again intel board)

and here is a bonus; ⇗ K-Lite Codec Pack v13.8.5 Mega
                             ⇗ OpenAl driver v1.1 (cross-platform 3D audio API) some apps and games uses this (Baldur's Gate: Enhanced Edition.
Battlefield 2 etc) get more information ⇗ here
                             ⇗ OpenAL Soft v1.21.1 (updated Win32 and Win64 binaries 4.2.2021)
#6609Gelip⇗ @diderius6

Zitat von ⇗ diderius6 im Beitrag ¶ #6598
so a Windbg session should be possible during Firewire Slot card

I wonder if it would work through firewire on a PCI, PCIe, PCMCIA or ExpressCard?

Zitat von ⇗ diderius6 im Beitrag ¶ #6602
Today in the morning I take a look with Ida Pro at kdcom.dll and found the entries for COM1 and COM2.

In which offset?

Zitat von ⇗ diderius6 im Beitrag ¶ #6602
How can I check under DOS, that this serial adapter works

  • connect two computers with a nullmodem cable
  • on remote PC run Putty on COMx 19200
  • on local PC run MS-DOS 6.22 and type:
     
    mode com1:19,n,8,1,p
    ctty com1

At this point, you should see the data in Putty:


To use the serial port on the card, e.g. mini-PCIe, you probably need to use the MMIO address - but how to use this in WinDbg ???
⇗ mPCIe serial
⇗ Chromium OS [serial] Console Debugging HOWTO
#6610diderius6⇗ @Gelip

I think, the most important for Windbg via Firewire is the compability of the 1394 card.
I read, that those from Texas Instruments are best for this. Any of them should work for Windbg 1394 Firewire debug.
Because there is no Whitelist from Microsoft for 1394 as for the Lan Slot cards.

⇗ https://docs.microsoft.com/en-us/windows...er-a-1394-cable

Until now, I do not find a report, that someone succeeds with using a Serial Slot card for Windbg.
When you have a board, with a COM1 connector, you have to disable(!) this device in Bios of the target (to be debugged)
computer, when you want to use this Serial Slot card. So, you kill a working connection.
Question for me is, if there is an entry in Bios needed for a working Serial Windbg connection.
I think yes,
and so Windbg will not work with any Serial Slotcard
Dietmar
#6611YuriyCN
Zitat von ⇗ onuracengiz im Beitrag ¶ #6608

And yes ⇗ Intel Realtek ALCxxx Driver v5.10.0.5377 is also for Xp but these are for much older cards



Latest version - Realtek_HD_Audio_v5.10.0.7514 driver 08/23/2016
⇗ https://www.upload.ee/files/11530218/Rea...8.2016.zip.html
#6612onuracengizthank you.inf and files looks legit.i will try to verify the source.in the mean time, majorgeeks is a trustworthy source therefore i will keep that version

#6613PPeti66x⇗ @onuracengiz
You did not uderstand, what I am say: The mentioned Realtek drivers (R2.74, v5.10.0.7514) installs and works on XP, but have missing features on Dell (and probably on some Lenovo) computers. Dell made special drivers (not only repacked, but completely recompiled with specific customizations) for this audio chip, because used some non-standard solutions.
#6614onuracengizthats because realtek versions are often generic ones,in order to cover more devices.manufacturer's version is custom tailored.thats normal
latest does not mean good for everbody.
Also they might have added more files into it afterwards?
Need confirmation from more people that this one is working for them aswell
source traces back to tenforums

this one is from realtek official
#6615genieautravail⇗ @PPeti66x ⇗ @YuriyCN ⇗ @onuracengiz

It's the same thing for display drivers.
My Dell Latitude e6230 laptop use a specific driver from Dell for the Intel HD 4000 chip.
Windows XP won't install the generic driver from Intel even if the driver is more recent...
Regards

 

Page 442

#6616onuracengizyour sata,chipset (not even drivers but still),graphics drivers are device series based "can be considered" generic drivers,but oh well :)
and that may be,just maybe cause of the end of xp support :D
#6617Gelip@diderius

Zitat von ⇗ diderius6 im Beitrag ¶ #6602
Seems, that indeed no other driver is needed under DOS

Installation Procedure:
The following procedure explains how to install MosChip serial and parallel I/O ports on DOS.
Step 1: Copy "SXDOSIN.exe" to 'C:' Drive from Floppy. The command is "copy a: SXDOSIN.exe c:"
Step 2: Type "sxdosin" to confirm Device detection. (Eg. MCS9901)


Please test:
  • connect two PC with nullmodem serial cable
  • on PC1 run WinDbg on serial COM1 115200
  • on PC2 in WinXP config serial debug in boot.ini on COM1: /debug /debugport=COM1: /baudrate=115200
  • reboot PC2 from USB with MS-DOS 6.22 - ready bootable MS-DOS disk image that you need to write to a USB flash drive with Win32DiskImager - link: ⇗ msdos.zip
  • remap COM your PCIe card to standard COM1 3F8 IRQ4 use SXDOSIN.exe
  • run GRUB4DOS grub.exe
  • boot WinXP from GRUB4DOS like this:

    find --set-root /ntldr
    chainloader /ntldr
    boot

Does data on PC1 appear in WinDbg?

If not work try without HIMEM.SYS, SMARTDRV.EXE, SETVER.EXE
#6618diderius6⇗ @Gelip

"reboot PC2 from USB with MS-DOS 6.22 - ready bootable MS-DOS disk image that you need to write to a USB flash drive with Win32DiskImager - link: msdos.zip"

I cant get the USB bootable MS-DOS 6.22 image.
Can you upload it for me, then I test
Dietmar
#6619Gelip⇗ @diderius6
New link: ⇗ https://www97.zippyshare.com/v/rwRpVcxV/file.html
#6620diderius6⇗ @Gelip

I get 403 Forbidden
Dietmar

PS: Use
⇗ https://ufile.io/
#6621Gelip⇗ @diderius6
⇗ msdos.zip

I tested my serial port ExpressCard i-Tec EXRS232 in the early stages of Debian 6 boot and it works beautifully but it's probably thanks to the Linux kernel:
In CMDLINE need like this (0x4000 is address my card):

earlycon=uart8250,io,0x4000,115200n8 or console=uart8250,io,0x4000,115200n8

To check the address in Linux type in terminal: dmesg | grep tty

#6622PPeti66x⇗ @genieautravail
I had no issues with Intel HD4000 except display switching. You can install the driver only if the device is enabled. If you have a discrete VGA, XP probably uses this by default (and others are disabled), and you can not install the Intel driver in this case. You must force the Intel Graphics by BIOS first. In my case (Dell M4800) it is Video/Switchable_Graphics: Enable Switchable Graphics (checkbox) - it is a one-shot option, because then incompatible OS is detected and switched back automatically. So if you installing the XP, you must set at every restart.

...interesting, it worked me before, now I get black screen (display/backlight is ON, I can set even the brightness level). Driver installation worked without error (without Intel Driver, it works). It is caused by a BIOS update? Or something else? Same on x86 and x64 version (both with original and modded ACPI.SYS).
#6623diderius6⇗ @Gelip

Thanks for the nice USB MS-DOS 6.22. This is a very nice, because you can copy any files to the USB stick.
I have to rename Himem.sys, because it tests and tests and tests extended memory (32 GByte:)) ).
Then I make the test with just typing C:\SXDOSIN at the comandline.
But no COM port can be found. I check all PCI-E slots with both Serial cards.
When I disable the com Port in Bios, no port at all can be found.
So it is just a lie from the manufacturer, that this card works under DOS
Dietmar

PS: Shows your Serial Slot card an COM port with C:\sxdosin ?

#6624Gelip
Zitat von ⇗ diderius6 im Beitrag ¶ #6623
PS: Shows your Serial Slot card an COM port with C:sxdosin ?


My serial card is on chip Oxford but also not detect. I try SXDOSIN.EXE, DOS_MODE.EXE, NMDOSIN.EXE

but

I have good news! Kernel Debug work on ⇗ ReactOS 0.4.9 with ExpressCard. I need set serial port address in freeldr.ini - my card I/O is 0x4000:

 
[ReactOS_Debug]
BootType=Windows2003
SystemPath=multi(0)disk(0)rdisk(0)partition(1)\ReactOS
Options=/DEBUG /DEBUGPORT=COM:0x4000 /BAUDRATE=115200 /SOS


#6625diderius6⇗ @Gelip
Yes, Reactos is a nice project, but still Win95B is more useful
Dietmar

PS: I notice, that SXDOSIN.EXE shows working Serial PCI slot cards but not PCI-E.
Interesting, if there is any Serial PCI-E card today on the market, which works under DOS also.
I have not found.
Manufacturers you cant trust, see above, only test test test..
#6626Gelip⇗ @diderius6
Try set I/O and IRQ in MS-DOS with setpci tool (included on my msdos.img):

 
setpci -s xx:xx:x INTERRUPT_LINE=04
setpci -s xx:xx.x BASE_ADDRESS_0=0x03f8
setpci -s xx:xx.x command=1


Check the bus slot func address of your card and enter xx:xx.x instead then grub4dos and boot WinXP

#6627Gelip@diderius ⇗ @Mov AX, 0xDEAD

Yeeeesssssaaa! WinDbg work over ExpressCard serial

It is enough to change the I/O address COM1 3F8 in the kdcom.dll 64-bit 5.2.3790.1830 file in offset 1024 by changing F8 03 to the address of our card (I have 00 40)
#6628diderius6⇗ @Gelip Waaaooohh  ,
please help me to do this with my card also.

LSPCI gives for me
03:00.0 0700:9710:9922
03:00.1 0700:9710:9922

So this means, I only have to change F8 03 to 00 07 in kdcom.dll
Dietmar
#6629Gelip
Zitat von ⇗ diderius6 im Beitrag ¶ #6628
LSPCI gives for me
03:00.0 0700:9710:9922
03:00.1 0700:9710:9922

So this means, I only have to change F8 03 to 00 07 in kdcom.dll


Nooooo!!! - 0700:9710 is PCI Vendor:Device

You need I/O address - check in Linux Live in terminal: dmesg | grep tty or lspci -s 03:00.0 -v

In line ttyS0 at I/O 0xnnnn where nnnn is I/O address. This address need insert to kdcom.dll in little endian form e.g if your address is 8000 then replace F8 03 to 00 80:

root@debian:~# dmesg | grep tty
[    0.000000] console [tty0] enabled
[    0.843833] ttyS0: detected caps 00000700 should be 00000100
[    0.843908] 0000:05:00.0: ttyS0 at I/O 0x4000 (irq = 19) is a 16C950/954

or

root@debian:~# lspci -s 05:00.0 -v
05:00.0 Serial controller: Oxford Semiconductor Ltd Device c120 (prog-if 02 [16550])
       Subsystem: Oxford Semiconductor Ltd Device c120
       Flags: bus master, fast devsel, latency 0, IRQ 19
       I/O ports at 4000 [size=8]
       Capabilities: [40] Power Management version 3
       Capabilities: [50] MSI: Enable- Count=1/1 Maskable- 64bit+
       Capabilities: [70] Express Legacy Endpoint, MSI 00
       Capabilities: [100] Device Serial Number 00-30-e0-11-11-00-01-20
       Capabilities: [110] Power Budgeting <?>
       Kernel driver in use: serial
#6630GelipThe COM port driver card (PCI, PCIe, PCMCIA or ExpressCard) in the debugged WinXP system must be uninstalled because the debugging process will be interrupted when the driver is loaded.

 

Page 443

#6631diderius6⇗ @Gelip
For my Serial PCI-E slot cards it does not work under XP SP3.
I have the (small) problem, that I have 2 COM connectors on those cards each.
I found out, that the IO address is 0xD000 and 0xD010 for both cards.
In XP SP3 kdcom.dll you have to change the addresses at 2 places,
and I did those changes for COM1 and COM2 but without success.
Dont know, where the problem is
Dietmar

PS: Here is my original kdcom.dll file and the modded one
⇗ https://ufile.io/z9638ayh

EDIT:And the most most crazy is, that also with the modded kdcom.dll I can use the inbuild COM1 port of this board!
So, may be ntoskrnl.exe or ntldr plays a role in XP SP3 also.
By the way I noticed, that Windbg can ONLY run on COM1 with IO address 0x3F8h.
#6632diderius6Yepp,
COM4 COM3 COM2 COM1 appear in this очередь with there IO address also in ntoskrnl.exe of XP SP3
Dietmar
.text:0046889B                 mov     eax, 2E8h
.text:004688A0 jmp short loc_4688B5
.text:004688A2 ; ---------------------------------------------------------------------------
.text:004688A2
.text:004688A2 loc_4688A2: ; CODE XREF: InbvPortInitialize(x,x,x,x,x)+5E j
.text:004688A2 mov eax, 3E8h
.text:004688A7 jmp short loc_4688B5
.text:004688A9 ; ---------------------------------------------------------------------------
.text:004688A9
.text:004688A9 loc_4688A9: ; CODE XREF: InbvPortInitialize(x,x,x,x,x)+5B j
.text:004688A9 mov eax, 2F8h
.text:004688AE jmp short loc_4688B5
.text:004688B0 ; ---------------------------------------------------------------------------
.text:004688B0
.text:004688B0 loc_4688B0: ; CODE XREF: InbvPortInitialize(x,x,x,x,x)+58 j
.text:004688B0 mov eax, 3F8h
.text:004688B5
.text:004688B5 loc_4688B5: ; CODE XREF: InbvPortInitialize(x,x,x,x,x)+38 j
.text:004688B5 ; InbvPortInitialize(x,x,x,x,x)+53 j ...
.text:004688B5 lea edi, [esi+esi*2]
.text:004688B8 lea edi, _CmRegistryLogSizeLimit[edi*4]
.text:004688BF cmp dword ptr [edi], 0
.text:004688C2 jz short loc_4688C8
.text:004688C4
.text:004688C4 loc_4688C4: ; CODE XREF: InbvPortInitialize(x,x,x,x,x)+47 j
.text:004688C4 xor al, al
.text:004688C6 jmp short loc_468916
.text:004688C8 ; ---------------------------------------------------------------------------
.text:004688C8
.text:004688C8 loc_4688C8: ; CODE XREF: InbvPortInitialize(x,x,x,x,x)+8A j
.text:004688C8 cmp [ebp+arg_10], 0
.text:004688CC jz short loc_4688F0
.text:004688CE xor ecx, ecx
#6633Gelip⇗ @diderius6
I only changed the second place and after editing the file, you need rebuild the checksum and PE header with CFF Explorer:


Do you have two PCIe cards with serial ports??? If so, take one out.

Show the result of the dmesg | grep tty and lspci -s bus:slot.func -v your card.

In Linux, ttySX is the COMX port number on Windows and in kdcom.dll F803 is the COM1 address. You are interested in the I/O address assigned to the ttyS0 device in Linux.

ttyS0 -> COM1 0x03F8 -> F803 in kdcom.dll
ttyS1 -> COM2 0x02F8 -> F802 in kdcom.dll

and probably

ttyS2 -> COM3 0x03E8 -> E803 in kdcom.dll
ttyS3 -> COM4 0x02E8 -> E802 in kdcom.dll

⇗ COM I/O addresses
#6634gordo999
Zitat von ⇗ Gelip im Beitrag ¶ #6621
I tested my serial port ExpressCard i-Tec EXRS232 in the early stages of Debian 6 boot and it works beautifully but it's probably thanks to the Linux kernel:
⇗ @Gelip ⇗ @diderius6  ...for what it's worth...I have used the Startech USB to serial adapter (ICUSB2321F) with windbg and a null modem cable. It worked well with W7 as host and both W7 ans W10 as target.

My mobo, an ASUS B360M, has two serial ports on the mobo. Have not been able to get it running lately on either OS and not on XP. I think there is a problem with W10 running in a dual boot system with W7. I found that out by mistake. First, I established a LAN connection from W7 as host to W10 as target with windbg. When I switched back to the USB-serial port setup, during the required reboot of the target, which was supposed to be W7, I had forgotten about the dual boot setup and W10 grabbed the connection. As I was messing with it, suddenly the serial connection started working with windbg, but with W7 as target.

That makes me suspect that the boot loaders of either W10 or XP are interfering with the windbg connection. If ntdetect is involved it may not be reporting the serial ports to ntoskrnl. If it's not involved, as in an ACPI system, the ACPI system is not reporting the serial ports correctly.

More specifically, neither W7 nor XP will run natively on the B360M. I needed USB drivers from canonkong and other drivers to get W7 runnong on this board. Makes me think that something is wrong with the drivers related to debugging on both XP and W7 on the newer chipsets.

Here's how I got the debug session going originally between W7 as host and W7 as target, using a USB-serial adapter and a NULL modem cable. I had W7 dual booted with W10, using the W10 boot loader. I forgot that and when I tried to establish the debug session, the W10 bootloader grabbed the connection. I was frustrated about that but it gave me an opportunity to go into the W10 Advanced options screen and I enabled debug mode from there.

Here's the key. While I was in the W10 advanced options screen I also selected W7 as the default OS. So, now I have debug mode set by W10 and W7 selected as the default OS. When I rebooted, as required, it ran back to the W10 boot screen but I could see on the host that I now had a debug connection. When I rebooted again, like magic, it now started in W7 with a full debug session running. After that, I had no problem starting a debug session in W7.

I know there is a problem between the W10 bootloader and XP but I am thinking that W10 has the ability to initiate a debug session that is lacking in W7 or XP. Or, at least, it is partially broken in XP and W7. Ditmar gor a debug session going between a host and XP but I have been unable to do so on the B360M chipset.
#6635diderius6⇗ @Gelip

Even with address hack 03f8h => D000h in kdcom.dll and ntkrnlpa.exe
both Serial PCI-E cards do not work with Windbg.
Now I am out of ideas.
Maybe, that somebody has also a Serial PCI-E card and can try my files from original XP SP3 5512
Dietmar
PS: OH, the most most most crazy: With both of my modded files, the onboard COM port still works, even I changed the adresses,
crazy. Debug address must be hard hard coded in Bios or ntdetect.com fetch them, so no chance for a Serial PCI-E card on a board that has already a COM port..

⇗ https://ufile.io/cgvtu40s
#6636gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #6628
So this means, I only have to change F8 03 to 00 07 in kdcom.dll Dietmar
⇗ @diderius6 ...be careful, the change should only be temporary. 03F8 is a standard serial port address for a com port and has been back to the days of DOS. Your other address seems to be its PCI address. Not the same. That address will vary from system to system.

There is no reason why your external cards should not be detected by BIOS is the 0x3F8 range. When the card is detected at boot time by ACPI, there is info in the card's EEPROM that identifies it and it's type. It likely has a hardware ID like Ven_xxxx&Dev_xxxx programmed into it. It seems to me that ACPI is not detecting your card.

The 0x3F8 address does not come from the card itself, it comes from a serial comm controller which is either on the mobo or on the card itself. If the card is not reporting itself correctly, that's the problem.
#6637diderius6⇗ @gordo999

I hacked also ntdetect.com, changing COM1 port there from 03F8h  => D000h
Crazy, XP boots with this 3 hacked files,
but still none of the crazy Serial PCI-E slot cards will work for Windbg
Dietmar

⇗ https://ufile.io/s4u98ipl
#6638gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #6623
I have to rename Himem.sys, because it tests and tests and tests extended memory (32 GByte:)) ).
⇗ @diderius6 ...himemsys is a driver to see memory above the DOS 1 meg limit, but just above it. It cannot see 32 Gigs. Furthermore, DOS is a 16 bit OS that cannot address memory beyond 1 Mb. You can use extended memory, which has a base in the DOS memory range between 640K to 1024K,  but that requires an external card and a lot of headaches. Even at that, it could never see the gigabyte addresses of today's OSs.

You'd need DOS 7 to do that, which is the DOS built into modern systems and used in the CMD window.
#6639diderius6⇗ @gordo999

I just try the onboard COM port. Crazy, Windbg works together with those 3 modded files.
So, this address 03F8h stays in Bios and this is enough for Serial Windbg, because now I dont know any file, where it is mentioned also.
In hal.dll this address is not
Dietmar
#6640gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #6637
but still none of the crazy Serial PCI-E slot cards will work for Windbg
Dietmar
It seems external cards operate differently than the standard mobo serial ports.  Some useful information here:

⇗ https://community.osr.com/discussion/215...-pci-card-issue

"When you debug via 1394, the debugger has its own miniature 1394 driver
stack. When you debug via COM1, the debugger writes to I/O port 0x3F8.
A PCI-based COM port always has a BIOS-assigned port number, even if the
O/S calls it COM1".

A problem I had when building a NULL modem cable was the difference between the mobo serial pin-out and the RS-232 standard. There may be differences in how your external card is wired to the DB-9 output connector. As it indicates in the forum discussion, windbg uses a primitive system that talks only to the mobo COM port. If it's not there it won't see the external card. Don't know if there's a way to make it see the card.

The wiring of the NULL modem cable is very important. Microsoft supplies the required wiring in one of its debugging articles.

Also see the post from Jan under OSR_Community_User, The name is at the end of the post and there is some good technical info in it.
#6641gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #6637
I hacked also ntdetect.com, changing COM1 port there from 03F8h  => D000h

⇗ @diderius6 ...can't d/l files...getting Forbidden warning. I'll try later. If it's not too much trouble can you PM them to me? I want to test them on my system but it may be a few days.
#6642gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #6637
Crazy, XP boots with this 3 hacked files
⇗ @diderius6 ...ntdetect is only used on older systems that existed before ACPI. We are using modded ACPI drivers to run XP therefore it's unlikely that ntdetect is being used. ACPI reports the info ntdetect once retrieved directly to ntoskrnl.

Your PCI serial cards are likely finding a different way to report their serial ports. Maybe they cannot report till after the system has booted and there drivers are loaded. However, it seems that ACPI should still be able to interrogate the PCI cards. Maybe the ACPI driver needs further modifications.

I keep forgetting that ACPI will detect an on-board COM port directly, at 0X3F8, or whatever address it is wired to. On my mobo, the COM 1 and COM 2 ports cannot be changed, a device connected to COM2 shows up as being connected to COM2, However, those addresses can be re-assigned via software in Windows.

Port addresses are memory addresses as far as Windows is concerned. In the real world, many of those addresses are dedicated to external hardware.

When my USB to serial interface was working, I was able to break early in the target boot process. I did not test to see how early I could break. However, the USB-serial drivers were already working in the host.
#6643LSS3333⇗ @daniel_k

I'm trying the latest WinXPPAE 3.5, but it doesn't seem to accept the halmacpi.dll version 5.1.2600.5687, citing "Invalid file".

The base SP3 version (5.1.2600.5512) of halmacpi.dll, which can be obtained from official SP3 update, can be patched, but I don't have a detail of the difference between these two HAL versions.

I haven't gotten it working yet with /M:ALL (or /M:131072MB), as that resulted in the system rebooting immediately (no error message, no BSOD). This is observed with 5687 HAL (since I can't patch it), and patched 5512 HAL. Will try lowering the memory limit to 4GB to see if it makes a difference, and start testing from there.


EDIT: Will try this again. Just found out the HAL might have been patched by something else, so it's possible there's another patch in the WXPIE integrator involving the HAL (maybe ACPI?) and is not compatible with WinXPPAE (maybe the order of patching matters). It seems PM Timer Fix from the integrator has its own modified halmacpi.dll that WinXPPAE cannot recognize.

EDIT 2: Tested a bit deeper and can confirm up to 64GB works in my case (as per original PAE specifications), using 128GB or ALL would result in reboot. Haven't done any detailed tests yet, though I haven't encountered any critical issues during the boot process for now.

Support of 128GB might be CPU-dependent so it won't work under all circumstances.

EDIT 3: Tried installing some drivers. nVidia video card drivers work without major issues at the moment, just that Windows XP doesn't seem to work well with some 4K monitors so I got a black screen and had to manually set it to 1080p via registry from Safe Mode. It seems Asus Xonar (C-Media) drivers don't cope well with the patch that I get a BAD_POOL_CALLER BSOD when the driver loads.
#6644Gelip⇗ @diderius6
I just tested debugging with WinXP SP2 32-bit on other laptop IdeaPad S10e and working :-) I edited the second location of F8 03 in the kdcom.dll file offset C50. kdcom.dll EN is exactly same on WinXP SP2 and SP3 regardless of the language version of the system. The card in this laptop has a different I/O address than in the X220, so you need to put the same in the kdcom.dll file.

You do not need to disable the port COM integrated on the motherboard, but then you need to change F8 02 COM2 in the kdcom.dll file (probably offset C47) and set boot.ini to COM2.

I tested COM2 F8 02 on WinXP 64-bit and working OK so it should work on WinXP 32-bit


It has to work and somewhere you are making a mistake - are you sure you are using WinDbg 32-bit for debugging WinXP 32-bit?

⇗ @diderius6
Show me the output of the dmesg | grep tty from Linux I'll make you kdcom.dll
Write ⇗ d6.img to USB stick and boot PC from this.
#6645diderius6⇗ @Gelip

3F8h for COM1 is also mentioned at 3 places in NTLDR.
Now I am downloading your d6.img and I will send you photo
Dietmar

 

Page 444

#6646Gelip⇗ @diderius6

Zitat von ⇗ diderius6 im Beitrag ¶ #6645
3F8h for COM1 is also mentioned at 3 places in NTLDR.

You don't need to modify any other files except kdcom.dll
#6647diderius6⇗ @Gelip

With d6.img copied bit by bit to USB3 stick I cant boot my compi.
I tried all USB slots.
On USB3.0 it tells: Unable to build a live system
On USB3.1 hangs at sysenter_do_call+0x12/0x28
Dietmar
#6648Gelip
Zitat von ⇗ diderius6 im Beitrag ¶ #6647
On USB3.0 it tells: Unable to build a live system
On USB3.1 hangs at sysenter_do_call+0x12/0x28


⇗ @diderius6
Try in the USB 2.0 port and/or disable USB 3.0 in bios. It seems Debian 6 doesn't support USB 3. You need Debian 9:
⇗ live-image-i386.hybrid.iso
#6649diderius6⇗ @Gelip
No USB2 port on this board and no possibility in Bios to set USB3 --> USB2,
so on this board Asrock z370 gaming k6 fatalty d6.img does not work
Dietmar

EDIT: I succeed to boot via USB3 into a initramfs comandline.

There you can see, that only the onboard COM is recogniced

#6650Gelip⇗ @diderius6

Zitat von ⇗ diderius6 im Beitrag ¶ #6649
There you can see, that only the onboard COM is recogniced


Is the PCIe serial card inserted in PCIe slot?
#6651diderius6⇗ @Gelip
Yeppp;)).
I also tried the other PCI-E Serial slotcard,
exact the same, just not recogniced from Linux Debian on this board
Dietmar

#6652diderius6By the way I noticed,
that when I change in ntldr 03F8h ---> D000h
at its 3 places,
I get message on boot, that ntldr cant be found.
Is there a tool, with which you can rebuild the integrity of ntldr
Dietmar

EDIT: I succeed to hack ntldr 03F8h ---> D000h at 3 places and boot.
But even with now 4 modded files, Windbg does not work with Serial PCI-E card on this board.

EDIT2: With those 4 changed files, the board intern COM port still works. This is really a good survive:)).

Here is normal ntldr and the hacked ntldr from XP SP3 5512

⇗ https://ufile.io/u9mzun6m
#6653Gelip⇗ @diderius6
And if you disable the integrated COM port in bios, then Linux sees ports on the PCIe card?

Try Debian9, link in ¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (444)
#6654diderius6⇗ @Gelip
Can you help me, to build a working USB3 boot from this *.iso?
I try, but then I was told, that I have to give the numbers of heads???
Content of my menu.lst

title Start IBM Lenovo BIOS Update from ISO
  root (hd0,0)
  --heads=0
  map /live-image-i386.hybrid.iso (0xff) || map --mem /live-image-i386.hybrid.iso (0xff)
  map --hook
  root (0xff)
  configfile /grub4dos.lst || chainloader (0xff)
#6655Gelip
Zitat von ⇗ diderius6 im Beitrag ¶ #6654
Can you help me, to build a working USB3 boot from this *.iso?
I try, but then I was told, that I have to give the numbers of heads???
Content of my menu.lst


Just write iso to usb with win32diskimager and boot

Of course it can be done like Debian6. You need to extract 3 files from the ISO>live subfolder to the appropriate locations on the flash drive: filesystem.squashfs, initrd.img and vmlinuz
#6656diderius6⇗ @Gelip
This time it works.
micro ) letters on screen, but no problem for cam.
The other PCI-E Serial slot card gives exact the same values.
Dietmar

#6657Gelip⇗ @diderius6
Where are the same ???

ttyS0 is integrated serial port COM1 on motherboard on I/O 0x03F8
ttyS1 COM2 I/O 0xD010 and ttyS2 COM3 I/O 0xD000 is ports on your PCIe card.

You must repalce COM2 or COM3 location in kdcom.dll but not all places only one:
offset C47: ttyS1 (COM2) 0x2F8 (F802) - address 0xD010 (10D0) and use boot.ini COM2
or
offset C3E: ttyS2 (COM3) 0x3E8 (E803) - address 0xD000 (00D0) and use boot.ini COM3

Try this files - first on COM2 and second on COM3:

Gelip has attached files to this post
#6658diderius6⇗ @Gelip
Thanks for help!
I test both files, enable disable COM in Bios, in Device Manager, edit boot.ini .
Serial Windbg with this PCI-E slotcard does not work until now
Dietmar

PS: Now I set up a brandnew XP SP3.
#6659Gelip⇗ @diderius6

Zitat von ⇗ diderius6 im Beitrag ¶ #6658
@Gelip
Thanks for help!
I test both files, enable disable COM in Bios, in Device Manager, edit boot.ini .
Serial Windbg with this PCI-E slotcard does not work until now
Dietmar

PS: Now I set up a brandnew XP SP3.

I'm not sure if it's an offset C47 for COM2 because F802 is in five offsets. You must check all but one offset at a time.

If you disable the COM port in bios then the port settings on the PCIe card change from COM2, COM3 to COM1,COM2 and you need replace a different location in kdcom.dll. After disable integrated serial you must one more time check settings in Debian dmesg | grep tty

The same as you put the PCIe card in another slot, the settings may change and again you need a different kdcom.dll file.

Stick to one hardware configuration e.g. disabled integrated and only use serial PCIe card and then test kdcom.dll
#6660diderius6⇗ @Gelip
I tried really all,
no success with this PCI-E Serial slotcard for Windbg
Dietmar

 

Page 445

#6661genieautravail⇗ @PPeti66x

I don't have issues with the Intel HD 4000 driver.
I'm just telling that I can only use the specific driver from Dell.
On this laptop, I have only the graphic chip from the processor, there is no discrete graphic card.

On the Dell Latitude E6430 laptop, I have both the Intel HD 4000 and NVIDIA Quadro NVS 5200M graphics solutions.
Fortunately, in the BIOS there is a setting that let me disable the Nvidia Optimus technology.
So, only the NVIDIA Quadro NVS 5200M graphic card is used by the system (and XP).

It's one of the reasons that I love Dell laptops!

Interesting what you are saying, because on the E6430 laptop, I don't have to set this setting in the BIOS at every restart...
It seems that the support for XP is very limited on your laptop.

Regards
#6662Gelip
Zitat von ⇗ diderius6 im Beitrag ¶ #6660
I tried really all,
no success with this PCI-E Serial slotcard for Windbg
Dietmar


Impossible, you are making a mistake somewhere.
1. Have you rebuilt the PE header and checksum?
2. Do you replace the kdcom.dll file outside of a working WinXP system?
3. Are you using Windbg 32-bit?
4. Did you uninstall the PCIe COM port drivers in the device manager? You also need to manually remove oemXX.inf files from C:\WINDOWS\Inf because after restart WinXP will install itself again automatically.
5. Did you confuse the COMX port number in boot.ini with what you are editing in kdcom.dll?

I am just checking the port locations in the kdcom.dll file on WinXP 32-bit:
COM1 offset C50 - need change F803 to little endian I/O addres ttyS0 (it definitely works) < boot.ini COM1
COM2 offset C47 - need change F802 to little endian I/O addres ttyS1 (it definitely works) < boot.ini COM2
COM3 offset C3E - need change E803 to little endian I/O addres ttyS2 (not tested but 99%) < boot.ini COM3
COM4 offset C35 - need change E802 to little endian I/O addres ttyS3 (not tested but 99%) < boot.ini COM4

I don't have how to test COM3 and COM4 ports because I have only 2 PCIe hardware ports (one integrated on motherboard SOL and one on ExpressCard)
#6663Gelip⇗ @diderius6

Only one fundamental question: Does WinXP see PCIe ports in device manager as PCI Serial Port in section Other devices when no drivers are installed?
#6664PPeti66x⇗ @genieautravail
XP was not supported at all. Dell never released drivers for it. And in BIOS no correct VGA selection option. Discrete graphics is used by default, CPU graphics can be forced by every restart. It was hard to hunt down XP drivers for all devices. The only Dell-specific driver is for the Realtek Audio. At this time only 3 things have problems: 1.) Intel Graphics (without installing the Intel driver works), 2.) ST Electronic Freefall sensor (probably WDF coinstaller problem, it was killed at expriments with USB3 HCSwith), 3.) USB3 not detecting newly plugged-in devices after sleep mode was used, but otherwise is OK. In other words: it is now usable with XP without major issues or restrictions.
#6665diderius6⇗ @Gelip

I do not think, that I make a mistake.
This PCI-E card is just not compatible with kdcom.dll
Dietmar

"Only one fundamental question: Does WinXP see PCIe ports in device manager as PCI Serial Port in section Other devices when no drivers are installed?" Yes.
#6666infuscomus⇗ @diderius6

I think in XP PCIe ports are shown as "PCI Standard PCI-to-PCI Bridge"
#6667diderius6⇗ @Gelip
Do you have a PCI-E Serial slot card?
Make test with it.
I think, only PCI works
Dietmar
#6668Gelip⇗ @diderius6

Zitat von ⇗ diderius6 im Beitrag ¶ #6667
Do you have a PCI-E Serial slot card?

Unfortunately I don't, but my ExpressCard is on a PCI Express Root:


And how is your card connected in device manager - View -> Devices by connection?
#6669diderius6⇗ @Gelip
Here it is. I enabled, disabled all. No difference, just no serial Windbg via this PCI-E slotcard
Dietmar

#6670Gelip
Zitat von ⇗ diderius6 im Beitrag ¶ #6669
Here it is. I enabled, disabled all. No difference, just no serial Windbg via this PCI-E slotcard

Download pciutils for Windows and make screenshots: lspci -s 03:00.0 -v and lspci 03:00.1 -v Gelip has attached files to this post
#6671diderius6⇗ @Gelip
Here it is
Dietmar

#6672SkorbinWhile preparing for my Win 98 / Win XP Dual build I stumbled over the Win 98 tools from R. Loew, which are available for free now. Not only that, but if I see that right, there are also source codes available.

Now, Windows 98 is not exactly what people try to achieve here, but there is a tool which aims for implementing the trim command under DOS.
Maybe there are interesting parts which can be used for a similar function for Windows XP?
Might be worth to have a look at those sources ....
#6673Gelip⇗ @diderius6

Zitat von ⇗ diderius6 im Beitrag ¶ #6671
Here it is
Dietmar

Your card has I/O and MMIO addresses and mine has only I/O:

C:\Program Files\pciutils>lspci -s 05:00.0 -v
05:00.0 Serial controller: Oxford Semiconductor Ltd Device c120 (prog-if 02 [16550])
       Subsystem: Oxford Semiconductor Ltd Device c120
       Flags: bus master, fast devsel, latency 0, IRQ 10
       I/O ports at 4000
       Capabilities: [40] Power Management version 3
       Capabilities: [50] MSI: Enable- Count=1/1 Maskable- 64bit+
       Capabilities: [70] Express Legacy Endpoint, MSI 00
#6674diderius6⇗ @Gelip

I look for comments about your Serial card.
And everybody tells, that it is compatible with DOS and nobody told
about problems on any OS.
This I do not hear about my card.
I can change the modus of the chip, which should be "simulated".
Oha, nobody needs this
Dietmar
#6675diderius6⇗ @Gelip
I found this

"The Re-Mapping to legacy addresses will work in systems that have PCI and PCIe expansion slots that are on Bus 0.
Systems have the PCI and PCIe expansion slots behind a Bridge (Bus-1, Bus-2) may not work since legacy address is not recognised by system."

Dietmar

 

Page 446

#6676diderius6⇗ @Gelip
This is a new DOS tool,
which recognices my card under DOS.
It is on BUS 3.
Now I look, if there is any PCI-E slot on my board
with Bus 0
Dietmar

EDIT: No Bus 0 on my board for any PCI-e slot.

⇗ https://ufile.io/hi5b14x2
#6677Gelip⇗ @diderius6
It seems to me that this is about I/O vs MMIO and my hack kdcom.dll will only work on the cards without MMIO. Read this: ⇗ Who Decides Between I/O Mapped and Memory Mapped I/O (x86)

On ⇗ ReacOS debug info i found this:

Zitat
Note: ReactOS does not (yet!) support memory mapped I/O (MMIO) based (modern) serial extension cards.



This is probably why WinXP debugging does not work for you because the card is MMIO.

Check on Debian in CMDLINE if COM port works over I/O or MMIO:
⇗ http://www.chromium.org/chromium-os/how-...s-for-your-UART

try I/O: console=uart8250,io,0xd010,115200n8
try MMIO: console=uart8250,mmio,0xyour_start_addres,115200n8
or MMIO32: console=uart8250,mmio32,0xyour_start_addres,115200n8

Boot PC from my Debian 9 USB and press Tab to edit boot parameter and after space write console=uart8250,io,0xd010,115200n8 and if on Putty you have data this means that card work over I/O
Now reboot PC and write second MMIO setting and check.

#6678Mov AX, 0xDEAD
Zitat von ⇗ gordo999 im Beitrag ¶ #6636

The 0x3F8 address does not come from the card itself, it comes from a serial comm controller which is either on the mobo or on the card itself. If the card is not reporting itself correctly, that's the problem.


Hi gordo999,

PCI devices not connected directly to address translator, if cpu want to read at 0x3F8 port from PCI device, it in most cases will read it from southbridge
So PCI devices declare resource list (in PCI 256 byte header), then bios/OS read this list and reconfigure PCI Host/Bridge to include this ranges to adress decoding.
These serial card supplied with own DOS utils, and if vendor's pictures are not lie, these utils do some magic with PCI bus to enable passthrough very low I/O adresses to PCI device. Port 80 on POST cards is other case, port 80 hardcoded to address decoder by hardware, bios can route it to LPC or PCI/PCIe bus. VGA low I/O ranges also can be forced in PCI bridge to passthrough.
May serial card tell bios to enable passthroug at low I/O ranges by declaring some bits in PCI Config space - i dont know.....

So Gelip & Dietmar choose right way, keep card own i/o adresses, but patch kdcom to work with it
#6679diderius6⇗ @Gelip
I just bought this card Lindy 51187.
It has Oxford 952 chipset, the same as yours but with a PCI-e connector.
It works on all OS, from DOS to win10.
Soon fun will go on
Dietmar

PS: ⇗ @Mov AX, 0xDEAD
Have you tried your Serial card for Windbg?

#6680diderius6⇗ @Gelip
Via USB boot of Debian 9 and typing after hitting Tab and then Space
console=uart8250,io,0xd010,115200n8

I get this output in micro letters )
Dietmar



with reboot, Tab and space
console=uart8250,mmio,0xd010,115200n8

output is in normal letters
Probing EDD (edd=off to disable)... ok
and a blinking cursor at the beginning of next line )

Now after reboot , Tab and space
console=uart8250,mmio32,0xd010,115200n8

exact the same message in normal letters
Probing EDD (edd=off to disable)... ok
and a blinking cursor at the beginning of next line )

EDIT: May be, that the 0xd010 address in the last 2 examples has to be changed against the start 32 bit addresses of the mmio.
So I change 0xd010 => 0xdf403000 for mmio and also in mmio32.
But nothing changed, the message with blinking cursor in the end stays the same.
#6681gordo999
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #6678
So Gelip & Dietmar choose right way, keep card own i/o adresses, but patch kdcom to work with it
⇗ @Mov AX, 0xDEAD ...thanks for info. The problem, as I pointed out, with modding kdcom, is that the mod works only for one external card on one buss address. KDcom expects to see a com port at a traditional address for a serial port, hence the 'com' in kdcom. That means any traditional com device accessed early in the boot stage will be where it's expected to be. Why the manufacturer pf the external serial cards is using a different address in not clear.

As I pointed out to Gelip and Dietmar, the external card driver is not loaded when kdcom is first initialized. Furthermore, the system has been booting in real mode to that point. I am sure BIOS is access initially in real mode. They likely arrange the port addresses low enough so they can be accessed in real mode, as they have always been accessed by DOS in the past.

Someone mentioned that the external cards will work on DOS. So, why are they using such strange port addresses for a com port?
#6682SkorbinHmmm ⇗ @gordo999 ,

if I remember my old DOS times correctly (ISA bus and such), they used to to set add-on serial cards to different adresses by default to avoid collision with onboard ports. But usually you had the ability to change them back by setting jumpers.
#6683Mov AX, 0xDEAD
Zitat von ⇗ gordo999 im Beitrag ¶ #6681

Someone mentioned that the external cards will work on DOS. So, why are they using such strange port addresses for a com port?


i think to avoid confliction with southbridge and bugged bioses if these bioses dont disable default  legacy range routing to southbridge LPC bus
#6684Gelip@dierius6

Zitat von ⇗ diderius6 im Beitrag ¶ #6680
Via USB boot of Debian 9 and typing after hitting Tab and then Space
console=uart8250,io,0xd010,115200n8


But did you connect a second PC with a nullmodem cable and run Putty serial 115200 at that time ?? You have to check if the data is sent via nullmodem cable from PC Debian to the second PC with Putty on e.g. Windows.


You have two port COM on your PCIe Startech card but I just don't know which is which.

One port is: 03:00.0 IO 0xd010 or MMIO df403000 or MMIO df402000
Second port is: 03:00.1 IO 0xd000 or MMIO df401000 or MMIO df400000

During the test, you must have a nullmodem cable connected to the appropriate port.

Connect cable to first port COM and make tests:

console=uart8250,io,0xd010,115200n8
console=uart8250,mmio,0xdf403000,115200n8
console=uart8250,mmio,0xdf402000,115200n8
console=uart8250,mmio32,0xdf403000,115200n8
console=uart8250,mmio32,0xdf402000,115200n8

Connect cable to second port COM and repeat same test.

Make a note of which settings and which COM port data appears in Putty.

P.S. You have the addresses here:
¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (446)
but the photo is out of focus so I'm not sure.
#6685jonathan_hzsHDMI sound
VEN_8086&DEV_280B
i7-7700 HD6300
32WINXP
have idea?
#6686jonathan_hzsHDAUDIO\FUNC_01&VEN_8086&DEV_280B HDMI sound
PCI\VEN_8086&DEV_15B8 LAN adapter (2) I219-v


Missing drivers for devices
#6687diderius6⇗ @Gelip

I boot compi with the Startech card with Debian 9, hitting tab and space
console=uart8250,io,0xd010,115200n8

On the other compi, connected via Nullmodem cable, where Putty runs under XP SP3 at COM1 then appears black screen with a line
Debian GNU/Linux 9 debian ttyS1

debian login:
Password:

I tried some, gives always
Login incorrect
Dietmar

PS: I know, why I like XP )
#6688Gelip
Zitat von ⇗ diderius6 im Beitrag ¶ #6687
I boot compi with the Startech card with Debian 9, hitting tab and space
console=uart8250,io,0xd010,115200n8


So the card works with I/O 0xd010?

Password: toor
#6689diderius6⇗ @Gelip

This appears with Putty on screen from compi with XP SP3 (needs about 30 sec?!) for to react.
Can I check anything from the XP compi via this comand line about the Serial card and Password:toor
Dietmar

debian login: root
Password:
Linux debian 4.9.0-8-686 #1 SMP Debian 4.9.130-2 (2018-10-27) i686

The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.

Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
root@debian:~#
#6690diderius6⇗ @Gelip

"mmio" does not work at all.
Compi with debian 9 hangs always at
Probing EDD (edd=off to disable)... ok
(What a crazy message, nothing is ok, I prefer blue screen Bsod^^)

Dietmar

 

Page 447

#6691Gelip
Zitat von ⇗ diderius6 im Beitrag ¶ #6689
Can I check anything from the XP compi via this comand line about the Serial card and Password:toor

Yes, you can also run Debian locally and remotely simultaneously (monitor and Putty). In cmdline write like this:
console=tty0 console=uart8250,io,0xd010,115200n8

or

console=tty0 console=ttyS1,115200n8

ttyX - local console monitor display
ttySX - remote console serial
#6692diderius6⇗ @Gelip

I noticed, that when I disable the internal COM port in Bios on the compi with debian 9 running,
on the remote compi with Putty under XP SP3 changes

ttyS1 => ttyS0
ttyS2 => ttyS1

which means, that now the internal COM port looks like non existant for the Startech PCI-e Serial card
Dietmar
#6693Gelip
Zitat von ⇗ diderius6 im Beitrag ¶ #6692
I noticed, that when I disable the internal COM port in Bios on the compi with debian 9 running,
on the remote compi with Putty under XP SP3 changes

ttyS1 => ttyS0
ttyS2 => ttyS1

which means, that now the internal COM port looks like non existant for the Startech PCI-e Serial card


Yes, In Windows, the serial ports are numbered from 1 and the first available port is COM1
On Linux, serial ports are numbered from 0 and the first available port is ttyS0

If you disable COM in bios or if you move the card to another PCI-e slot, the port numbers, I/O addresses and interrupts IRQ will change but:

Always:
COM1 = ttyS0
COM2 = ttyS1
COM3 = ttyS2
COM4 = ttyS3
etc.
#6694diderius6⇗ @infuscomus compiled a real NTLDR_debug.

Waaaooohh;)),
your ntldr_debug works!

For to check this, I renamed boot.ini to booooooooooot.ini .
There is NO /debug switch at all, nowhere.
When I start XP SP3, at once I get message, that ntldr starts a Debug session at COM1 with 115200 baud.
And the via serial cable connected compi, where Windbg runs, starts at once a Windbg session.
Nice.
Now I look, how it is possible to break into Windbg at the earliest possibility.
And then you can check, which drivers are loaded,
should be VERY few
Dietmar

EDIT: Maybe it is possible, to integrate in this NTLDR_debug itself a EBFE endless loop
or CC. This can only work, when this ntldr already started Windbg.
#6695infuscomus⇗ @diderius6

does it matter where I put the endless loop? or do I just put it in at osloader entrypoint?
#6696diderius6⇗ @infuscomus
Very late, when all the work of ntldr is done.
Only important is, that this place with endless loop EBFE is always reached and that Windbg is already started
Dietmar

PS: With the Source Code it may be easier to find the point, when all the work is done from ntldr.
#6697infuscomus⇗ @diderius6

If you can trace ntldr in windbg and find the point where it is done let me know where to add the loop.
#6698diderius6⇗ @infuscomus
I succeed to break very early into ntldr.
Then I build a file osloader.exe, using WinHex looking for MZ in your ntldr_debug.
From this alone standing MZ (inclusive) in Hexeditor until the end of ntldr_debug I build osloader.exe because I want to load Symbols. But then Windbg tells, that no Symbols can be found for osloader.exe .
So, we need osloader.pdb , I think it is not the same as a ntldr_debug.pdb
Dietmar

Microsoft (R) Windows Debugger Version 6.12.0002.633 X86
Copyright (c) Microsoft Corporation. All rights reserved.

Opened \\.\com1
Waiting to reconnect...
BD: Boot Debugger Initialized
BD: osloader.exe base address 00400000
Connected to Windows Boot Debugger 3790 x86 compatible target at (Wed Feb 17 16:46:50.171 2021 (UTC + 1:00)), ptr64 FALSE
Kernel Debugger connection established.
Symbol search path is: C:\WINDOWS\symbols
Executable search path is: C:\WINDOWS\symbols
Module List address is NULL - debugger not initialized properly.
WARNING: .reload failed, module list may be incomplete
KdDebuggerData.KernBase < SystemRangeStart
Windows Boot Debugger Kernel Version 3790 UP Checked x86 compatible
Machine Name:
Primary image base = 0x00000000 Loaded module list = 0x00000000
System Uptime: not available
BD: Boot Debugger Initialized
BD: osloader.exe base address 00400000
Break instruction exception - code 80000003 (first chance)
*** WARNING: Unable to verify timestamp for osloader.exe
osloader!BlOsLoader+0x4e1:
004239ec cc int 3
kd> lm
start end module name
00400000 00500000 osloader M (pdb symbols) c:\windows\symbols\exe\osloader.pdb
kd> !devnode 0 1
No export devnode found
kd> .readmem C:\osloader.exe 0x400000 L01000
Reading 1000 bytes..
kd> .imgscan /l /r 00400000
MZ at 00400000 - size 85000
Name: osloader.EXE
*** ERROR: Symbol file could not be found. Defaulted to export symbols for osloader.EXE -
Loaded osloader.EXE module
kd> !devnode 0 1
No export devnode found

#6699infuscomus⇗ @diderius6

osloader symbols should be in osloader_dbg.pdb which i sent to you - try renaming to osloader.pdb I'm pretty sure that will work.
#6700diderius6⇗ @infuscomus

Do you have the Symbols for Win2003 32 bit 3790
free and checked versions
Dietmar

PS: May be someone here in the forum has.
#6701infuscomus⇗ @diderius6

I don't think free ntldr will let you debug, only checked version.

just the symbols for osloader? or did you want everything?

I get them whenever I build from source.
#6702infuscomus⇗ @diderius6

did renaming osloader_dbg.pdb to osloader.pdb not work?
#6703diderius6⇗ @infuscomus
The symbols for osloader.exe work.

But still I get message: debugger not initialized properly.

When I type
kd>!devnode 0 1

No export devnode found

Before this happens to me, when the Symbols where wrong
Dietmar
#6704diderius6⇗ @infuscomus
For sure Windbg works.
Trace shows, that it is even in an early Phase of working NTLDR,
nothing else is loaded, only ntdetect.com.
Cool, via this methode you can also check Bsod 0x7b of a boot device
Dietmar


Microsoft (R) Windows Debugger Version 6.12.0002.633 X86
Copyright (c) Microsoft Corporation. All rights reserved.

Opened \\.\com1
Waiting to reconnect...
BD: Boot Debugger Initialized
BD: osloader.exe base address 00400000
Connected to Windows Boot Debugger 3790 x86 compatible target at (Wed Feb 17 18:17:01.835 2021 (UTC + 1:00)), ptr64 FALSE
Kernel Debugger connection established.
Symbol search path is: C:\WINDOWS\symbols2
Executable search path is: C:\WINDOWS\symbols2
Module List address is NULL - debugger not initialized properly.
WARNING: .reload failed, module list may be incomplete
KdDebuggerData.KernBase < SystemRangeStart
Windows Boot Debugger Kernel Version 3790 UP Checked x86 compatible
Machine Name:
Primary image base = 0x00000000 Loaded module list = 0x00000000
System Uptime: not available
Break instruction exception - code 80000003 (first chance)
*** WARNING: Unable to verify timestamp for osloader.exe
osloader!DbgBreakPoint:
004239ec cc int 3
kd> lm
start end module name
00400000 00500000 osloader M (private pdb symbols) c:\windows\symbols2\osloader.pdb
kd> !devnode 0 1
No export devnode found
kd> .readmem C:\osloader.exe 0x400000 L0x1000
Reading 1000 bytes..
kd> .imgscan /l /r 00400000
MZ at 00400000 - size 85000
Name: osloader.EXE
*** ERROR: Symbol file could not be found. Defaulted to export symbols for osloader.EXE -
Loaded osloader.EXE module
kd> lm
start end module name
00400000 00485000 osloader (export symbols) osloader.EXE
kd> !sym noisy
noisy mode - symbol prompts on
kd> p
osloader!ScsiPortWritePortUchar+0x20473:
004239ed c3 ret
kd> p
osloader!ScsiPortWritePortUchar+0x2517a:
004286f4 c9 leave
kd> p
osloader!ScsiPortWritePortUchar+0x2517b:
004286f5 c20c00 ret 0Ch
kd> p
osloader!ScsiPortWritePortUchar+0x25b9c:
00429116 807dff00 cmp byte ptr [ebp-1],0
kd> p
osloader!ScsiPortWritePortUchar+0x25ba0:
0042911a 7405 je osloader!ScsiPortWritePortUchar+0x25ba7 (00429121)
kd> p
osloader!ScsiPortWritePortUchar+0x25ba2:
0042911c e81c40ffff call osloader!ScsiPortWritePortUchar+0x19bc3 (0041d13d)
kd> p
osloader!ScsiPortWritePortUchar+0x25ba7:

#6705infuscomus⇗ @diderius6

I PMed you a free ntldr build with symbols

 

Page 448

#6706infuscomus⇗ @diderius6

any luck with the free build symbols?
#6707diderius6⇗ @infuscomus

In the beginning all seems to work nice.
I can see the very early work of loading ntldr and XP SP3 starts with the ntldr_dbg.
But later it always break in the beginning and then crashes.
So tomorrow I will look what changed
Dietmar
#6708diderius6⇗ @infuscomus

I got it work again, in the very beginning of the ntldr_dbg.
You can see this with trace on compi, which is debugged.
No ntoskrnl.exe, no hal.dll is loaded but Windbg started already with work.
But it does not work as good as with normal ntldr and Windbg. It often hangs like in a loop during operating ntldr_dbg.
I think with using Ida Pro and Windbg, you can trace XP in a Virtual machine even when the bootsector is loaded to memory.
But on a real compi the things are other
Dietmar
#6709gordo999
Zitat von ⇗ Skorbin im Beitrag ¶ #6682
if I remember my old DOS times correctly (ISA bus and such), they used to to set add-on serial cards to different adresses by default to avoid collision with onboard ports. But usually you had the ability to change them back by setting jumpers.
⇗ @Skorbin that's right. However, the selectable port addresses were all within the traditional ranges for a serial com ports. I can still do that to a limited extent in the BIOS of my Asus B360M. There was also a major problem with IRQ addresses, which were limited to about 16, with some reserved for the system.

As long as no other device was using a traditional serial/parallel port/IRQ, you could use it. IRQ 5 and 7 were commonly used if you were not running either as an LPT port. That could create major headaches when you tried to install a com port, a parallel port, a mouse...whatever...and something else was using it. If it was a mouse port, the system would freeze.

The problem as I remember was the I/O controller chip, the PIC (Programmable Interrupt Controller) on early IBM-based mobos. They alleviated the problem by introducing a second controller chip which ran off a port on the first chip. The number of IRQ's was still limited and I think that was fixed by the APIC (Advanced Programmable Interrupt Controller).

⇗ https://en.wikipedia.org/wiki/Advanced_P...rupt_Controller
#6710infuscomus⇗ @diderius6

I will try to build an ntldr using XP SP1 source, maybe that might behave better than this server 2003 one.
#6711gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #6698
I succeed to break very early into ntldr.
⇗ @diderius6 ...just wondering. Can you trace as far as ntoskrnl being loaded. If so, can you trace ntoskrnl code? A weakness I find with windbg is that it will not trace into kernel code. Wonder if you can with a remote k-mode debugging session via com port.

The sysenter command indicates a process leading to kernel code. With each sysenter a number is loaded into EAX/RAX that represents a function to be called. With the softice debugger, I could trace into those kernel calls at sysenter. My experience with windbg on a single computer is that it skips over the sysenter.

People have asked me why I want to trace into kernel code. The reason is simple. There are times when the system (kernel) will call back into a calling processes and if the sysenter part is jumped over, whatever happened during the call back to the calling code is missed.
#6712Skorbin
Zitat von ⇗ gordo999 im Beitrag ¶ #6709
Zitat von ⇗ Skorbin im Beitrag ¶ #6682
if I remember my old DOS times correctly (ISA bus and such), they used to to set add-on serial cards to different adresses by default to avoid collision with onboard ports. But usually you had the ability to change them back by setting jumpers.
@Skorbin that's right. However, the selectable port addresses were all within the traditional ranges for a serial com ports. I can still do that to a limited extent in the BIOS of my Asus B360M. There was also a major problem with IRQ addresses, which were limited to about 16, with some reserved for the system.

As long as no other device was using a traditional serial/parallel port/IRQ, you could use it. IRQ 5 and 7 were commonly used if you were not running either as an LPT port. That could create major headaches when you tried to install a com port, a parallel port, a mouse...whatever...and something else was using it. If it was a mouse port, the system would freeze.

The problem as I remember was the I/O controller chip, the PIC (Programmable Interrupt Controller) on early IBM-based mobos. They alleviated the problem by introducing a second controller chip which ran off a port on the first chip. The number of IRQ's was still limited and I think that was fixed by the APIC (Advanced Programmable Interrupt Controller).

⇗ https://en.wikipedia.org/wiki/Advanced_P...rupt_Controller



⇗ @gordo999
If my memory serves right, the com ports were typically IRQ 3 and 4, LPT initially at IRQ 5, but later (with the introduction of soundcards with their demand for IRQ 5 and interrupt sharing not always working as intended) often moved to IRQ 7 (?).
#6713infuscomus⇗ @diderius6

OK, I built you an ntldr_dbg from XP SP1 source - check your PMs

let me know if this behaves correctly now.
#6714diderius6⇗ @infuscomus

I make a small joke.
I put only your new NTLDR_dbg and my special ntdetect.com on a 2 Gbyte FAT16 partition.
And voila, Windbg works
Dietmar



#6715infuscomus⇗ @diderius6

cool,
can you try to debug my vhal4xp.dll using this setup?
#6716diderius6⇗ @infuscomus
I just change at 3 places in your nice NTLDR_dbg

3F8h ---> D010h

And Waaaooh,
my Startech Serial PCI-e card works with Windbg,
COM in Bios disabled, oh so much fun )
Dietmar

EDIT: This at 3 places modded ntldr_dbg build from XP SP1 Sources works also on my Startech Serial PCI-e card
for large NTFS harddisks with 2048 Sectors preceding partition 1 .

https://ufile.io/jdjxz4wq



#6717infuscomus⇗ @diderius6

Finally, the source code proves itself useful for us.

I noticed in your first pic your error message is different from mine when I try to load vhal4xp.dll

instead I get "load needed DLLs for kernel."
#6718diderius6⇗ @infuscomus

With your nice ntldr_dbg Windbg works also for your Vista hal.dll.
I remember my experiments with Vista years ago.
For to find all the needed Dlls, you have to check each file with Dependency Walker,
if there is another dependency on a Vista *.dll, hal.dll, ntoskrnl.exe file.
I found about 20 more *.dll from Vista, that are needed for this Vista hal.dll
Dietmar

PS: You can try also Brutforce methode: Copy ALL *.dlls from Vista into the folder Windows\system32 from XP.



#6719infuscomus⇗ @diderius6

I thought I had resolved all the missing imports in vista hal.dll using dependency walker.

I noticed pshed.dll is not listed in the load order, I know vista hal.dll depends on it, is there a way to add pshed.dll to the load order?
#6720diderius6⇗ @infuscomus
Make try with to copy ALL *.dlls from Vista into folder Windows\system32 of XP
and look, what happens. The message of missing DLL for Kernel should be gone
Dietmar

PS: Hard way, to find all the dependencies. May be you find them WITH all the *.dlls from Vista in the XP folder.

 

Page 449

#6721infuscomus⇗ @diderius6

That would probably break the XP install unrecoverably, I would prefer to avoid that.

Does windbg give any info about the cause of "load DLLs for kernel."?
#6722diderius6⇗ @infuscomus
No information.
hal.dll is loaded as you can see.
Because ntoskrnl.exe is from XP,
I think, it will be hard to find out, which *.dll from Vista is missed,
so Brute force
Dietmar
#6723infuscomus⇗ @diderius6

I searched with disassembler in vista hal and managed to find this

mcupdate.dll
#6724diderius6⇗ @infuscomus

As I remember, there are about 20 *.dlls from Vista,
that you need more for to fulfill all dependencies
Dietmar
#6725infuscomus⇗ @diderius6

why doesn't dependency walker tell you what the other dependencies are?
#6726Gelip⇗ @diderius6

Zitat von ⇗ diderius6 im Beitrag ¶ #6716
I just change at 3 places in your nice NTLDR_dbg 3F8h ---> D010h
And Waaaooh,my Startech Serial PCI-e card works with Windbg,COM in Bios disabled, oh so much fun )


Please check on this hardware config my kdcom.dll file with the original WinXP SP3 ntldr and other original files. Gelip has attached files to this post
#6727diderius6⇗ @infuscomus

For the very first time, that I see, that Dependency Walker did not see all, what is going on,
was with the nvme.sys from OFA.
Kai Schtrom told me, that not all functions and their use are shown by Dependency Walker,
and on this recognicing he rebuild a working nvme.sys from OFA for XP SP3
Dietmar
#6728infuscomus
Zitat von ⇗ diderius6 im Beitrag ¶ #6727
@infuscomus

For the very first time, that I see, that Dependency Walker did not see all, what is going on,
was with the nvme.sys from OFA.
Kai Schtrom told me, that not all functions and their use are shown by Dependency Walker,
and on this recognicing he rebuild a working nvme.sys from OFA for XP SP3
Dietmar



Well, that's annoying. So what is the proper way to find what is missing?
#6729diderius6@infuscoumus

When I understand Kai correct,
he looks for each import and export function and compare, if they are just there or needed
in OFA nvme Source Code and in a lot of versions of storport.sys.
He writes about this search at

⇗ https://sourceforge.net/projects/nvme-fo...Me.txt/download

Dietmar
#6730diderius6⇗ @Gelip
I use the same hardware, all the same as for the ntldr_dbg.
I only change original kdcom.dll against yours and change entry in boot.ini for debug.
But Windbg does not start for the Startech card PCI-e serial. I check all, that the com port on the card is the same,
that COM is disabled in Bios, does not help
Dietmar

EDIT:And in a last step I change on this configuration only ntldr ---> modded ntldr_dbg
and at once Windbg starts on reboot.
#6731Gelip⇗ @diderius6

Zitat von ⇗ diderius6 im Beitrag ¶ #6730
does not help
Dietmar

EDIT:And in a last step I change on this configuration only ntldr ---> modded ntldr_dbg
and at once Windbg starts on reboot.


Very strange  - I tested on WinXP SP2 32-bit and SP2 64-bit and works.

Maybe there is something different on WinXP SP3???

Yes, NTLDR file in SP2 is other than in SP3 - maybe this is problem?

I test ntldr SP3 in WinXP SP2 and works.
#6732diderius6⇗ @Gelip
I test ntldr SP1, SP2, SP3
not works
Dietmar
#6733Gelip⇗ @diderius6
I am installing fresh WinXP SP3 and checking it - maybe other files differents?
#6734diderius6⇗ @Gelip
I also modd ntldr from XP SP1 on the same 3 places, where I modd
the XP SP1 ntldr_dbg
also not works
Dietmar
#6735Gelip⇗ @diderius6
Where did you copy the modified kdcom.dll file?

 

Page 450

#6736diderius6⇗ @Gelip

I copy the modified kdcom.dll file to Windows\system32 of XP SP3.
Then I disconnect USB box and reconnect it, looking if the your modded kdcom.dll is still there.
Because I notice, that via USB file transaction ALWAYS some mistakes can happen.
By the way, first I noticed this crazy bad behavior of USB on the Raspberry Pi.
This never happens on IDE or Sata connetion.

I just notice, that the ntldr_dbg XP SP1 has some extra scsiport routines integrated.
They are missed complete in XP SP1 ntldr
Dietmar
#6737Gelip⇗ @diderius6
I tested my kdcom.dll mod on WinXP SP3 and working same as on SP2 or 64-bit

This means that it does not depend on the WinXP version.
#6738diderius6⇗ @Gelip

Yes, it depends on the PCI-e Serial Slotcard.
Just arrives my new PCI-e Slotcard and I will report you soon
Dietmar
#6739Gelip⇗ @diderius6

Zitat von ⇗ diderius6 im Beitrag ¶ #6738
Yes, it depends on the PCI-e Serial Slotcard.
Just arrives my new PCI-e Slotcard and I will report you soon


Thanks. I also ordered a serial port on a PCIe card and an ExpressCard to PCIe EXP GDC adapter and will also test.
#6740diderius6⇗ @Gelip

It has the same addressed 0xD010 and 0xD00 and Oxfordshipset and no MMiO.
Does not work with modded kdcom.dll
works with modded ntldr_dbg
Dietmar

#6741Gelip⇗ @diderius6
Are you 100% sure that you are replacing the kdcom.dll file - you cannot do it normally in a running WinXP because SFC will work and restore the original file.

What is USB box ??????? I change files in WinXP Live.
#6742diderius6⇗ @Gelip
USB box is from ICY, very nice, you can put your harddisk or SSD in
and change all, that you want via other XP.
I am to 100% sure, that I did everything right (not so often you can say this in your life;) )
Dietmar

#6743diderius6⇗ @Gelip
I modded 03F8 ---> D010 for COM1
in XP SP3
at all places in

ntdetect.com
ntldr
hal.dll
ntkrnlpa.exe
kdcom.dll

and double check all this files before and after modd.

XP SP3 still boots with those modded files, but no starting Windbg.
In hal.dll I also found, that maybe for simulating full COM1 IRQ has to be 4, but this is hard to find at all the right places
Dietmar
#6744gordo999
Zitat von ⇗ Skorbin im Beitrag ¶ #6712
If my memory serves right, the com ports were typically IRQ 3 and 4, LPT initially at IRQ 5, but later (with the introduction of soundcards with their demand for IRQ 5 and interrupt sharing not always working as intended) often moved to IRQ 7 (?).
⇗ @Skorbin ....that's the way I remember it.
#6745infuscomus⇗ @diderius6

can you try softice with ntldr_dbg to see if that debugger will let you debug hal.dll?
#6746diderius6⇗ @infuscomus
In the afternoon today I can try.
When for example you delete kdcom.dll,
you get the same message about missing dll for Kernel. So it is not direct a problem of hal.dll.
So you can find out, which dll it is
Dietmar
#6747infuscomus⇗ @diderius6

any luck debugging the HAL using softice?
#6748diderius6⇗ @infuscomus
Do you know, how to get a full version of Softice,
that works under XP SP3
Dietmar
#6749infuscomus⇗ @diderius6

I thought that since SoftICE was old and not maintained it would be easy to find, but I'm having trouble finding a copy.

edit: i think i found it on archive.org
⇗ https://archive.org/search.php?query=softice%20debugger
#6750diderius6⇗ @infuscomus
I get a version SIEX4322.EXE from 17 November 2006, which should work under XP SP2.
This is the official "last" version.
But compi with XP SP3 crashes after reboot.
Also I read, that there is a patch for this version of softice for to work also under XP SP3,
until now I dont find
Dietmar

 

Page 451

#6751infuscomus⇗ @diderius6

does the softice uploaded to archive.org work on SP3?
#6752diderius6⇗ @infuscomus
I dont know, how to find softice at archive.org
Dietmar
#6753infuscomus⇗ @diderius6

This one -
⇗ https://archive.org/details/soft-ice-v-4.2.7-rc-1-for-xp
#6754diderius6⇗ @infuscomus
I think, that it is only a guide for Softice.
And how to unpack *.jp2 files(?!)
Dietmar
#6755infuscomus⇗ @diderius6

In the RAR file on the right of the page there is an EXE inside
#6756XPLives⇗ @Skorbin, ⇗ @gordo999

Zitat von ⇗ gordo999 im Beitrag ¶ #6744
Zitat von ⇗ Skorbin im Beitrag ¶ #6712
If my memory serves right, the com ports were typically IRQ 3 and 4, LPT initially at IRQ 5, but later (with the introduction of soundcards with their demand for IRQ 5 and interrupt sharing not always working as intended) often moved to IRQ 7 (?).
⇗ @Skorbin ....that's the way I remember it.



Actually LPT1 was for Printer Ports using IRQ7 not IR5 as the default.  The original Sound Cards ISA using by Creative Labs Sound Blaster was set at IRQ7 which potentially conflicted with a Printer Port.  However when gaming back then using your sound card it was rare to be able to Print at the same time in DOS so such a conflict did not actually occur since multitasking was not big in DOS.  Windows 3.1 probably could have issues if you were to print a Word Document while playing music or sound in the background simultaneously.  I can see at that point a potential issue could occur if both devices were sharing IRQ7.  Strangely enough IRQ5 was used for LPT2 but it was doubtful people had two printers hooked up to their PC back in the day so this was very rare.

It was because of this issue the later Sound Blaster Pros began to shift to IRQ 5 from the original IRQ 7.  Not the other way around as you stated from IRQ5 to IRQ7.  In the end the IRQ7 restoration of LPT1 is often missed if you had not been there in the early days.  I still prefer my ISA sound cards set on IRQ7 for max compatibility.

For Serial Com Port 1 and 2.  Typically with an I/O ISA expansion card included 2 Serial Ports though some could have up to 4 Serial Ports with some header to expansion bracket.

Serial Com Port 1 was mainly used for a serial mouse.  Com Port 2, 3, and 4 were used for Analog Modems.

Back then Serial Com Port 1 used IRQ 4.  Serial Com Port 2 used IRQ 3 and usually people connected a dial up modem on this.

If people used Serial Com Port 3 it would share with IRQ4.  Serial Com Port 4 would share with IRQ3.

However, I never recalled ever using two serial mice or two serial modems in the same PC back in the day to see what would happen if this conflict could be fatal hanging both devices or not.


[Typical max out setup for a PC 386/486]

Serial Com Port 1 - IRQ 4 - Serial Mouse
Serial Com Port 2 - IRQ 3 - 14,400 Baud External Modem - Used for the old internet days on the telephone line
Sound Card - Sound Blaster ISA - IRQ7
Printer - IRQ5 if using the sound card above

If using Sound Blaster Pro then
Sound Card - Sound Blaster Pro ISA - IRQ5
Printer - IRQ7

However many sound programs targeted IRQ7 as the default IRQ so did not work correctly as a result of the later IRQ5 switching.
Probably could be patched in code to change IRQ.
Many newer sound programs allowed flexibility of IRQ and Address choosing using a setup or install program.
#6757XPLives⇗ @diderius6, ⇗ @gordo999

Zitat von ⇗ gordo999 im Beitrag ¶ #6638
Zitat von ⇗ diderius6 im Beitrag ¶ #6623
I have to rename Himem.sys, because it tests and tests and tests extended memory (32 GByte:)) ).
⇗ @diderius6 ...himemsys is a driver to see memory above the DOS 1 meg limit, but just above it. It cannot see 32 Gigs. Furthermore, DOS is a 16 bit OS that cannot address memory beyond 1 Mb. You can use extended memory, which has a base in the DOS memory range between 640K to 1024K,  but that requires an external card and a lot of headaches. Even at that, it could never see the gigabyte addresses of today's OSs.

You'd need DOS 7 to do that, which is the DOS built into modern systems and used in the CMD window.



You can see up to the 4GB boundary in DOS.  Anything above it DOS does not see directly.  You can  make 2GB Ramdrive which is useful.

R. Loew made a Ramdrive for using memory above 4GB range to 32GB and probably to 2TB.  However, for whatever reason I cannot get his to work properly on my systems.

Renaming himem.sys as you said or trying /TESTMEM:OFF method.

Modifying MSDOS.SYS you could set default to Command Prompt safe mode to bypass loading CONFIG.SYS or use custom MENU method if you need to load specific drivers for different situations.
#6758XPLives⇗ @diderius6, @gelip, ⇗ @gordo999

Zitat von ⇗ diderius6 im Beitrag ¶ #6637
⇗ @gordo999

I hacked also ntdetect.com, changing COM1 port there from 03F8h  => D000h
Crazy, XP boots with this 3 hacked files,
but still none of the crazy Serial PCI-E slot cards will work for Windbg
Dietmar

⇗ https://ufile.io/s4u98ipl


Dietmar, here's a crazy idea to try and patch to work for XP.  Can you replace using LPT1 address to debug XP instead?  Can transfer more information than serial so would have advantages.
A lot of motherboards have parallel port header on board.  But also PCIe Parallel Port card also exists some with 2 LPT ports.  Then can use Serial Port Com1 for hooking up Serial Mouse if motherboard cannot use USB to control mouse.


XPLives
#6759diderius6⇗ @infuscomus
I succeed to install this version of Softice in XP SP3.
But when I start it, I see for a second a screen like in Dos mode and then shuts down
Dietmar
#6760infuscomus⇗ @diderius6

I guess it is not the right version for XP? but then why did they write that it was for XP?
#6761diderius6⇗ @infuscomus
The last original version od Softice crashes under XP SP3.
This not. Also seems the IDE much more comfortable than on the Softice versions
that I know from years ago. Maybe, it is just of not correct connection. I try,
Dietmar
#6762diderius6⇗ @infuscomus

This version seems not to work under XP SP3.

The NTICE.bat with content

net start ntice

does not work
Dietmar

EDIT:
May be it has nothing to do with XP SP3 but just gets no connection to a server from softice,
because this company does not exist any more.
Edit2: No, the file NTice.sys crashes XP SP3
#6763infuscomus⇗ @diderius6

I just noticed, there is a windbg.cpp in the source.
#6764infuscomus⇗ @diderius6

I sent you a windbg built from source - in your PMs.

let me know if this lets you debug the HAL
#6765diderius6⇗ @infuscomus
This compiled windbg works,
but it is just windbg.exe vers 6.1.
The windbg I run is 6.12 or the version 6.3.9600.17200 x86 from ⇗ @Mov AX, 0xDEAD from Win8.1.
So, this will not help, is an interesting discovery,
Dietmar

 

Page 452

#6766infuscomus⇗ @diderius6

I was thinking it might have been a special internal Microsoft version, but if there is nothing special about it then nevermind.
#6767diderius6⇗ @infuscomus
I found this about softice:

"windows update KB885835 (12/14/2004) has changed ntoskrnl.exe to version 5.1.2600.1605(xpsp2.040919-1003) and softice could not hook function MICopyOnWrite, it went to loop EBFE, windows was locked"

So, may be it is possible to run XP SP3 with an old ntoskrnl.exe and Hal.dll from XP SP2, or just to repair the function above
Dietmar

PS: I have NTice.sys version 3.2.1.2560 . This should work with XP SP2.
Is there any newer or modded ntice.sys?

EDIT: Softice seems to run only on a one CPU compi, so may be /onecpu in boot.ini helps.

Output folder: C:\Programme\SoftICE
Created uninstaller: C:\Programme\SoftICE\Uninstall.exe
Installed:  Install Soft-ICE v4.3.21...
Installed:  Install symbols for WinXP SP2 (5.1.2600.2180)...
Installed:  Shortcuts in Start Menu...
#6768gordo999
Zitat von ⇗ infuscomus im Beitrag ¶ #6745
can you try softice with ntldr_dbg to see if that debugger will let you debug hal.dll?
⇗ @infuscomus ...if you can get it running on XP without a VM. That's my next project if I can ever get past my current commitments.

Softice has a video driver problem with more modern systems. It has a universal driver which has worked in the past with simpler systems but it won't run on drivers from Nvidia, etc. Can't recall how soon you can begin debugging but I do recall that the Driver Studio package, which includes softice, acts almost like the F6 key when loading driver during a Windows install. A window pops up before Windows loads and offers some options.

One reason softice was so successful was its ability to load Windows on top of its drivers. I'm thinking it must have hooked ntoskrnl very early. Driver Studio has provisions for debugging drivers so it must have some functionality early in the boot stage.
#6769gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #6759
I succeed to install this version of Softice in XP SP3.
But when I start it, I see for a second a screen like in Dos mode and then shuts down
Dietmar
⇗ @diderius6 ...Try Ctrl-D to see if the screen returns. Softice uses a DOS-type window. If it doesn't return it's likely a video driver problem.
#6770gordo999
Zitat von ⇗ infuscomus im Beitrag ¶ #6760
I guess it is not the right version for XP? but then why did they write that it was for XP?
⇗ @infuscomus ...XP only works on XP x86. I had it running well on SP3 on an older system and on a VM. In fact, it still works for me on a VM running XP x86.

The best version is the Driver Studio version. It can be tough to setup but well worth it for x86 apps if you can get it running. Steep learning curve but it will go through any kernel code. I was working on a DX app and the mouse cursor you see on a DX screen is not the Windows mouse cursor, therefore it won't respond to any normal BP.   Neither do the DX windows belong to Windows. I managed to set a BP on the Windows mouse driver then trace through system code and into the DX code. I have not encountered any other debugger that can do that.
#6771gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #6767
I found this about softice:

"windows update KB885835 (12/14/2004) has changed ntoskrnl.exe to version 5.1.2600.1605(xpsp2.040919-1003) and softice could not hook function MICopyOnWrite, it went to loop EBFE, windows was locked"
⇗ @diderius6 ...that's old. The MICopyOnWrite error was always logged on the softice start screen but it did not prevent SI from working. The company who created SI, NuMega, were always updating a file in SI that dealt with changes in the Windows kernel.

If NuMega could do it, I am theorizing that anyone could mod that file to update it to newer versions of XP SP3. I would like to see the video driver issue solved and see SI ported to 64 bit. I think the name of the file was OSInfo.dat, or something like that. The most recent version of Driver Studio also had the most recent versions of that file and that was well past 2004.
#6772gordo999
Zitat von ⇗ XPLives im Beitrag ¶ #6756
Back then Serial Com Port 1 used IRQ 4.  Serial Com Port 2 used IRQ 3 and usually people connected a dial up modem on this.
⇗ @XPLives ...recall Zmodem well, after struggling through long BBS downloads with Xmodem.
#6773diderius6Hi,
is there a tool, which works under DOS,
with which you can build a serial connection on COM port
and where you can set the address of the COM port to 0xD010
Dietmar
#6774infuscomus⇗ @diderius6

I'm not sure any DOS terminal will let you set the COM port to 0xD010
I think you would need to write your own DOS program to do this.
#6775Gelip⇗ @diderius6

Zitat von ⇗ diderius6 im Beitrag ¶ #6773
is there a tool, which works under DOS,
with which you can build a serial connection on COM port
and where you can set the address of the COM port to 0xD010


Try change serial port I/O with debug.exe at the address 40:0 in MS-DOS 6.22 and maybe use FileMaven 3.5a to test if work:
⇗ Testing ports COM & LPT

P.S. I also found this: ⇗ INPOUT32/X64 Works with SOME PCI cards

⇗ Using DEBUG to Create Program to Swap LPT Ports

To change 03F8 to D010 COM1:


⇗ 22.1 The 8250 Serial Communications Chip
#6776Gelip⇗ @diderius6
It works with my ExpressCard with serial port Host or guest mode FileMaven3 even when the integrated motherboard COM (AMT SOL) port is enabled in the BIOS

but the first connection must be when the host computer in FileMaven must be the second computer baudrate 19200 (not the one where we set the port in debug.exe)
#6777diderius6⇗ @Gelip
This are nice news;))!!
What is the name of your Serial card,
thanks for help a lot
Dietmar

PS: Can you use your original kdcom.dll from XP SP3 now for debugging?
#6778Gelip
Zitat von ⇗ diderius6 im Beitrag ¶ #6777
What is the name of your Serial card,
thanks for help a lot
Dietmar

PS: Can you use your original kdcom.dll from XP SP3 now for debugging?


My ExpressCard is: ¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (443)

Yes, (tested WinXP SP2 64-bit) if set I/O in MS-DOS then work with original kdcom.dll

but the computer cannot be restarted. After changing the I/O in MS-DOS, you have to boot GRUB4DOS (grub.exe) and boot WinXP from it.

How to do it:

WinDbg PC:
  • run WinDbg on your port serial at 19200


Debugging PC:
  • we have the original WinXP system installed on the disk
  • if have integrated motherboard COM the use COM2 to debug
  • set debug in boot.ini to COM2 baudrate 19200
  • reboot PC to MS-DOS 6.22 e.g. from USB stick
  • set COM2 to I/O addres your PCIe port COM e.g. my is 0x4000 (little endian 0040)

    debug.exe
    -e 40:2 00 40
    -q
    grub.exe
      map (hd0) (hd1)
      map (hd1) (hd0)
      map --hook
      find --set-root /ntldr
      chainloader /ntldr
      boot



or disable integrated motherboard port COM and set COM1 in boot.ini and MS-DOS for debug:

  • debug.exe
    -e 40:0 00 40


COM1 -> 40:0
COM2 -> 40:2

UPDATE
=====

It also works when the AMT SOL serial port is enabled in the BIOS - probably because SOL has a different I/O 0x50B0 than the one set in MS-DOS 0x4000

debug.exe
-e 40:0 00 40

#6779diderius6⇗ @Gelip

Can you please send to me your installation with GRUB4DOS?
Dietmar
#6780diderius6I do not succeed to get Softice to work with XP SP2.
Without the graphiccard, Softice test for video tells me,
that the test is not successfull,
but when I start Softice, I can see for a short moment some colored lines on the screen.
When I install the Nvida driver for the 980 GTX (with some problems in XP SP2 but get it to work),
the video test from Softice tells, that all is ok,
but when I start Softice, it just hangs in a black window with white cursor. The videocard GT 730 shows same behavior.
I disabled in Bios Hyperthreading, set numbers of CPU=1 and use the ntoskrnl.exe without PAE support.
The switch in boot.ini /NOPAE not works
Dietmar

PS: When I hit direct CTRL D after start of softice, behavior is the same, no error message. With PAE I get there error 31.

 

Page 453

#6781Gelip⇗ @diderius6

Zitat von ⇗ diderius6 im Beitrag ¶ #6779
Can you please send to me your installation with GRUB4DOS?

Just copy the DEBUG.EXE file to the USB stick created from my msdos.img file and boot WinXP PC from this USB stick Gelip has attached files to this post
#6782diderius6With the X1300 graphic card I get Softice version 4.3.21 to run on XP SP2,
but still no grafik output, the video test from Softice tells me, that no DirectDraw on this card
Dietmar

#6783infuscomus⇗ @diderius6

maybe, try a reinstall of directx?
#6784onuracengiz⇗ DirectX End-User Runtimes (June 2010)
⇗ DirectX 3.0, 5.2, 6.1, 7.0, 8.0, 8.1, and 8.2
⇗ ATI Radeon X1xxx Series Drivers & Support

⇗ sguide_tweak_2k_pppoe.zip Generic patch for Windows XP/2000 and DSL connections using PPPoE. This patch will optimize your TCP/IP Registry settings for high speed Internet connections. It is specifically designed for PPPoE DSL connections. To install, extract the .inf file first, then double-click (or right-click on filename and choose install from the pull-down menu) and reboot for changes to take effect

⇗ winxp_dnscache.zip Patch Windows 2k/XP not to cache failed DNS entries. By default, when a DNS lookup fails (due to temporary DNS problems), Windows still caches the unsuccessful DNS query, and in turn fails to connect to a host regardless of the fact that the DNS server might be able to handle your lookup seconds later. This patch fixes the problem by configuring the DNS client to continue sending queries to an unresponsive network. To install, save to your HD, unzip the .reg file, then double-click the filename

⇗ sg_webtweak_2k.zip Patch increases Web page loading speed, by doubling the number of possible concurrent open connections. For example, imagine a web page has 20 images and some text - in order for your browser to get all these files, it opens 2 or 4 concurrent connections, depending on the Web server. Increasing the number of open connections allows for faster retrieving of the data. Please note that the patch sets some values outside of the HTML specs. If you decide to install it, backup your Registry first. Changes will take effect after you reboot
#6785diderius6⇗ @onuracengiz ⇗ @infuscomus

Thanks for the driver, I installed all new.
But this card X1300 really seems to have no DirectDraw
Dietmar

PS: I have no other PCI-e videocard, that I can test. So it seems, that Softice fails to me because of the videocard.
May be here in the forum is somebody, who knows, which video card works for the last versions of Softice.

EDIT: Strange, on XP SP3 ist DirectDraw activated with the same card X1300 but on XP SP2 not.
#6786Gelip⇗ @diderius6

Zitat von ⇗ diderius6 im Beitrag ¶ #6785
But this card X1300 really seems to have no DirectDraw

Softice Serial & Troubleshooting.txt from SoftICE 4.05:
Zitat
3) Some cards do not support the direct draw system. The correct
settings
for these in SoftICE Video (in the SoftICE Display Adapter Setup) are
Standard Vga with Universal Video Driver box NOT checked.
#6787diderius6⇗ @Gelip

Thanks, but does not help.
Now I give up on a first with Softice and try
your GRUB4DOS on a fresh installed XP SP3
Dietmar
#6788infuscomus⇗ @diderius6

Try a GT710, they're abundant and cheap.
#6789diderius6⇗ @infuscomus
I tried a GT730,
Softice video test tells, that all is ok,
but isnt
Dietmar
#6790onuracengizCan you add a screenshot from your dxdiag panels
DirectX, and its 2D component DirectDraw, should be enabled by default on most Windows XP computers. If you have reason to believe it is turned off on your computer, open the "Run" dialogue and type "dxdiag." Click the "Display" tab and ensure "DirectX" and "DirectDraw" are both turned on. If not, click their checkboxes to turn them on

⇗ Microsoft DirectX Control Panel 9.0c (use this if you are having trouble with the original)
#6791diderius6Yesssaaa;)) with your help I get it

SoftICE ver.4.3.21 on XP SP3

Dietmar

#6792onuracengizGo nuts :)
#6793infuscomus⇗ @diderius6

nice!
do you think you can debug the HAL using this?
#6794diderius6⇗ @infuscomus

May be. Until now, it is just crazy for me, that it works on XP SP3
Dietmar
#6795Gelip⇗ @diderius6

Zitat von ⇗ diderius6 im Beitrag ¶ #6791
SoftICE ver.4.3.21 on [b]XP SP3/b]


Cool

P.S. Don't use the camera (or smartfon) to take a WinXP screenshot. Just:
  • press Print Screen key on keyboard (PrtScr) to make full screenshot
  • press Alt+PrtScr to make only active window screenshot
  • open MS Paint, paste clipboard and save file as .PNG format


P.S. If WinXP is set to debug (boot.ini) and WinDbg is running on the other PC then pressing the PrtScr button will cause Break and OS stop responding (need go 'g' to run WinXP on WinDbg) - so it's best to use IrfanView -> Options -> Capture/ScreenShot...

 

Page 454

#6796onuracengiz⇗ FastStone Image Viewer (was my favorite)
⇗ IrfanView
⇗ XnView
#6797diderius6⇗ @Gelip
All (4, all different) of my Serial PCI-e Slot cards show via debug

0040:0000 00 00 00 00 00 00 00 00

Now it looks like a small wonder, that the modded NTLDR_dbg can work with this
Dietmar

PS: With the onboard enabled COM port debug shows

0040:0000 F8 03 00 00 00 00 00 00
#6798diderius6⇗ @Gelip

But now fun is going on;)..

I type debug in USB boot MS-DOS6.22 and then
-e 40:0 10 D0
q

And I download the MS-DOS program Kermit, which I put also on the nice USB stick.
And after typing Kermit in commandline
I type Output otto
Before I open putty on the other serial connected compi with a Baudrate of 9600
and this is the result,
which means, that I just help MS-DOS a little to find its Serial adress and that this card indeed works under MS-DOS.
Now I make a try to change the adress of the Startech PCI-e Serial Slotcard to adress 03 F8
and look, if I can start with normal kdcom.dll Windbg
Dietmar

EDIT:Ok, I cant change port to 03F8. Kermit via test COM1 tells me now, not an 8250 UART at this COM port.
So I still need for Windbg D010 modded kdcom.dll .

EDIT2: Even with for address D010 modded kdcom.dll  Windbg does not start from the Startech PCI-e slotcard
via grub from DOS.

EDIT3: When I look with debug from the via grub so booted XP I see, that the com1 port is set back to 03 F8.

EDIT4: It seems not possible, to redirect COM1 port from address 03F8 ---> D010 or vice versa(!) under XP SP3.

#6799Gelip⇗ @diderius6
Must be 19200 baudrate in boot.ini and in MS-DOS
¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (453)

19200 is max baudrate for MS-DOS

Everything works for me and I have two ways to make WinDbg work:

  • modded kdcom.dll and 115200 baud in boot.ini

or

  • MS-DOS set I/O and only 19200 in boot.ini with original kdcom.dll
#6800infuscomus⇗ @diderius6

you know how my patched vista acpi.sys mostly gives a 7B BSOD but also sometimes works?
can you try to debug that?
#6801diderius6⇗ @infuscomus

I think, that the acpi.sys from Vista works sometimes,
because not all (mostly all survives is ram?!) is gone in memory after reboot.
The original acpi.sys from Vista looks for the acpi tables at a wrong place.
Your modded acpi.sys looks at the right place, but the tables are just not loaded up there.
When now in memory the tables still stay, modded acpi.sys from Vista fetch this tables from before boot,
reads and start.
I think, it is nearly impossible to debug this.
You get Bsod, because the tables are not found.
XP starts normal, when the tables are found,
just crazy
Dietmar
#6802diderius6⇗ @Gelip
Today I make a new try.
I put only the files from XP SP3 on the harddisk, that are needed, so that Windbg still starts with the onboard COM1 port.
Then I disable step by step the address 03F8 until Windbg stops to start.
It is vice versa than doing before
Dietmar

PS: There must be a driver, which overwrites in memory the D010 address, build via DOS in memory.
I do not think, that it is Bios, because with disabled COM port in Bios Windbg does not start and Debian 9 use with disabled COM1 port in Bios for the COM port on the slotcard COM1.
#6803Gelip⇗ @diderius6
I don't understand what you want to test - onboard serial port or ports on PCIe card?  - decide what you want to test  I thought you only want to test serial ports on a PCIe card. Why are you turning on the integrated port in the bios again ????

By the way, does WinDbg work on the built-in serial port of the motherboard?
#6804diderius6⇗ @Gelip

Windbg works with the inbuild COM port.
When you do not reach your aim on a normal way,
you just can try something crazy other
Dietmar
#6805AndaluI tried to make a fresh XP installation on a Comet Lake board (GA-H470-HD3) but I got a 7B bsod (0xF7AFC524,0xC034,0x00,0x00).
It seems to be related to the acpi.sys version used. This bsod is bypassed with the acpi2013.sys (SHA-1 726C3B83599A20A2C15CF1FDAAD4F81469A6ED99)
but even in this case I got an error (never seen before) on the text-mode: "Setup cannot copy the file: setupwst.exe".
Skipping this file the text-mode ends normally but the following GUI-mode doesn't start.

Until now to prepare the USB flash I always used the Yumi tool (much faster than others) but for this H470 system it doesn't work: I got a blank screen just after the memory loading and before to enter in the first step of the XP setup. The same happens with RMPrepUSB.
WinSetupFromUSB 1.9 seems to work better but with it I got the error above about the setupwst.exe file.

XP works on my H470 board only by using a disk drive from another XP system (in this case even with the acpi6666 from outer space).
A strange thing: the bios version (F3) installed on my board is not listed on the official gigabyte webpage, maybe it is a buggy version?
#6806diderius6⇗ @Andalu

On my EVGA Dark Z390 (XP friendly Bios) board also no USB install at all works.
And even with CD install and normal harddisk I got always Bsod 0x7B.
I can install XP via CD only, because there is an Asmedia 106 Sata Slot on this board.
The same I hear about the EVGA Dark z490 on
⇗ https://community.hwbot.org/
even they try a lot to optimize USB install via Firadisk
Dietmar

PS: You can try an install to USB harddisk or nvme. With the XP from zone94.com it is possible.
#6807infuscomus⇗ @diderius6

I thought I recalled you saying it was possible to diagnose a 7B BSOD using the ntldr_dbg version I sent you, so I thought it might be possible to find out why my modded vista acpi.sys gives this BSOD.
If I was mistaken and that is not what you said, I'm sorry.
#6808diderius6⇗ @infuscomus
With hard work it may be possible to find out a little bit more, what happens.
With my tests before with Windbg I know, it happens because of the not found acpi tables
Dietmar

PS: Windbg works much less stable with the ntldr_dbg.
So for example it is not always possible to trace a driver,
because it hangs in an endless loop.
#6809Andalu⇗ @diderius6

You're giving me a bad news  I was hoping to install XP without troubles even in that system.

I've never tried installing XP on a USB HD or nvme, I can also attempt but I wouldn't know where to start after selecting the related option in the Patch Integrator.


P.S.: another strange thingh about the XP ISO installation on my H470 system: the usb boot from a nvme to usb3 enclosure (with a M.2 sata drive) doesn't work  
while I never had issue on the Q370 system.
#6810diderius6⇗ @Andalu

I know for sure, that USB install with the nice USB driver from ⇗ @Mov AX, 0xDEAD
works with the XP SP3 from zone94.com

SP3 x86 - Integral Edition 2020.5.5 (Vanilla).iso
WinXP-IE Optional Patch Integrator v2.3.3b14.cmd
Customized Option 1,2,3,4,5,D,S,U,L

Dietmar

 

Page 455

#6811onuracengizgenerally speaking server 2003 is more stable then xp,instead of vista's use 2003's.or even better Xplives's modified ones
⇗ Modded ACPI Drivers Depot 2000 XP 2003 2009
#6812diderius6Here is the minimal list for XP SP3 on a NTFS partition with the iastor driver from fernando
so that serial debug via COM works for Windbg:

In folder C:\

ntldr
ntdetect.com
boot.ini

In C:\WINDOWS

folder
AppPatch with drvmain.sdb in it

folder
Fonts with vga850.fon in it

folder system32 with in it

bootvid.dll
c_850.nls
c_1252.nls
kdcom.dll
l_intl.nls
ntkrnlpa.exe
HAL.DLL

C:\WINDOWS\system32\config
with system in it

and

C:\WINDOWS\system32\drivers
with

acpi.sys
disk.sys
iaStor.sys
isapnp.sys
ksecdd.sys
mountmgr.sys
mssmbios.sys
ntfs.sys
partmgr.sys
pci.sys
pciidex.sys
videoprt.sys

So, away from Bios, there has to be changed address for COM1 port from 03F8 --->D010
for the Startech Serial PCI-e slot card, which works under DOS but DOS did not find their address D010
Dietmar

PS: In DSDT all serial COM ports are listed, for example 0x03F8.
#6813Andalu⇗ @diderius6

XP ISO successfully installed from a USB stick on my Comet Lake H470 system with Easy2Boot:



But it was not easy at all: Easy2Boot only worked correctly twice out of 15 attempts: most of the time the system reboots automatically or Easy2Boot freezes on its first screens. So far I haven't been able to figure out the reason for this malfunctioning, really annoying. Another mandatory requirement for Easy2Boot is an external graphics card: the XP installation doesn't work at all with the internal cpu graphics.
#6814diderius6Hi,
I look at the Source code for XP SP1,
what is different in the normal ntldr compared with the ntldr_dbg.
The problem in the normal ntldr is, that the address for COM1 0xD010 is not transfered
to ntoskrnl.exe when using a PCI-e Serial slotcard.
But using the ntldr_dbg this address is transfered.
So, there is a chance without modding DSDT in Bios, to make an ntldr,
that transfers the address of COM1 to ntoskrnl.exe but still uses after kdcom.dll
Dietmar

PS: I noticed an interesting thing with the ntldr_dbg.
It seems to crash, when first part of load from XP is done.
May be, like in USB, that then the slotcard looses contact with the COM1 port at 0xD010
and so crashes.
#6815BrooonsAfter installation of any driver USB disappears hibernate.
Why?
#6816diderius6⇗ @Brooons

This seems to be a problem of all USB drivers under XP.
The same happens for the pagefile, when you do USB boot.
I do not know, if this problem is solved in the nice win8 USB driver from ⇗ @Mov AX, 0xDEAD
Dietmar
#6817Brooons
Zitat
USB driver from @Mov AX, 0xDEAD
Dietmaк


Where I can see this driver, please.

#6818Gelip⇗ @diderius6
I received a PCIe card with a serial port I ordered - ⇗ Sunrich I-350 PCI-E 1S Serial:

I tested the card in a desktop PC in the PCIe x1 slot and in a laptop with EXP GDC 8.5c ExpressCard external graphics adapter.
Unfortunately this card doesn't use I/O addresses but MMIOs so I can't use it with WinDbg. However, it works very well in the early stages of Linux bootup:

cmdline:

desktop PC: console=uart8250,mmio,0xf7c01000,115200n8
laptop PC: console=uart8250,mmio,0xf0801000,115200n8
#6819diderius6⇗ @Brooons
Dietmar

⇗ https://forums.mydigitallife.net/threads...hardware.81607/
#6820diderius6This is a step in the right direction.
I hack this hacked;) ntldr to work with my Startech card,
now the bootfiles can be debugged careful.
Only disadvantage of this ntldr is,
that it shuts down after first step of XP SP3 load but XP starts to desktop
Dietmar

PS: For the very first time I can debug the whole boot process of XP SP3
without any error message or crazy loops.


⇗ https://ufile.io/zsfm8mqi

#6821infuscomus⇗ @diderius6

even the HAL?
#6822diderius6⇗ @infuscomus
Just send me, what you want to test.
I got soso many files,
that I do not know which where the last and which should work together
Dietmar

PS: Crazy job. After building minimal XP SP3 for debugging I tested 41 different ntldr.
Found this one and modd it, works.
#6823infuscomus⇗ @diderius6

can you try and debug vhal4xp.dll (the most recent one I sent you without missing imports)

do you need me to send it again?
#6824diderius6⇗ @infuscomus

Which files have to stay together with vhal4xp.dll ?
Can it work together with the checked files from XP SP3?
Dietmar
#6825infuscomus⇗ @diderius6

vhal4xp.dll depends on my ntoskrn8.sys (you should still have this right?) kdcom.dll and pshed.dll - put all of these in windows\system32

I think it should work with checked XP SP3, but just doubled check in dependency walker that I haven't missed an import.

 

Page 456

#6826diderius6⇗ @infuscomus
I found the exact place, where hal.dll crashes.
The reason is the value in EAX at this place (see EIP)
Dietmar

BD: Debugging NTLDR --By: diyhack
BD: Boot Debugger Initialized
Connected to Windows Boot Debugger 3790 x86 compatible target at (Mon Feb 22 19:13:39.040 2021 (UTC + 1:00)), ptr64 FALSE
Kernel Debugger connection established.
Symbol search path is: C:\WINDOWS\symbols2;C:\WINDOWS\symbols
Executable search path is: C:\WINDOWS\symbols2
Windows Boot Debugger Kernel Version 3790 UP Checked x86 compatible
Machine Name:
Primary image base = 0x00400000 Loaded module list = 0x0042fc9c
System Uptime: not available
Break instruction exception - code 80000003 (first chance)
osloader!DbgBreakPoint:
0040b0c6 cc int 3
kd> lm
start end module name
00400000 0045a000 osloader (private pdb symbols) c:\windows\symbols2\osloader.pdb
kd> bc *
kd> bp 0040e723
kd> g
BD: 804BA000 \WINDOWS\system32\ntkrnlpa.exe
BD: 806C8000 \WINDOWS\system32\hal.dll
Breakpoint 0 hit
osloader!NtProcessStartup+0x26a:
0040e723 ff5014 call dword ptr [eax+14h]

kd> t
osloader!AEReboot:
00402ad3 55 push ebp
kd> t
osloader!AEReboot+0x1:
00402ad4 8bec mov ebp,esp
kd> t
osloader!AEReboot+0x3:
00402ad6 51 push ecx
kd> t
osloader!AEReboot+0x4:
00402ad7 e815960000 call osloader!TextGrTerminate (0040c0f1)
kd> t
osloader!TextGrTerminate:
0040c0f1 33c0 xor eax,eax
kd> t
osloader!TextGrTerminate+0x2:
0040c0f3 390594ed4200 cmp dword ptr [osloader!DbcsLangId (0042ed94)],eax
kd> t
osloader!TextGrTerminate+0x8:
0040c0f9 7405 je osloader!TextGrTerminate+0xf (0040c100)
kd> t
osloader!TextGrTerminate+0xa:
0040c0fb a394ed4200 mov dword ptr [osloader!DbcsLangId (0042ed94)],eax
kd> t
osloader!TextGrTerminate+0xf:
0040c100 38054a304300 cmp byte ptr [osloader!GraphicsMode (0043304a)],al
kd> t
osloader!TextGrTerminate+0x15:
0040c106 7511 jne osloader!TextGrTerminate+0x28 (0040c119)
kd> t
osloader!TextGrTerminate+0x17:
0040c108 a14cfc4200 mov eax,dword ptr [osloader!ExternalServicesTable (0042fc4c)]
kd> t
osloader!TextGrTerminate+0x1c:
0040c10d 6a03 push 3
kd> t
osloader!TextGrTerminate+0x1e:
0040c10f 6800000080 push 80000000h
kd> t
osloader!TextGrTerminate+0x23:
0040c114 ff5018 call dword ptr [eax+18h]
kd> t
00020eff 6858000000 push 58h
kd> t
00020f04 680a0f0000 push 0F0Ah
kd> t
00020f09 cb retf
kd> t
0058:0f0a 6655 push ebp
16.kd> t
0058:0f0c 6653 push ebx
16.kd> t
0058:0f0e 6656 push esi
16.kd> t
0058:0f10 6657 push edi
16.kd> t
0058:0f12 6689e3 mov ebx,esp
16.kd> t
0058:0f15 b86000 mov ax,60h
16.kd> t
0058:0f18 8ed8 mov ds,ax
16.kd> t
BD: Debugging NTLDR --By: diyhack
BD: Boot Debugger Initialized
osloader!DbgBreakPoint:
0040b0c6 cc int 3


#6827infuscomus⇗ @diderius6

strange that it fails there

maybe pshed.dll needs a proper service registry entry?

I took this registry from windows 10, it might be different on vista

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\EventLog\System\Microsoft-Windows-Kernel-WHEA]
"ProviderGuid"="{7b563579-53c8-44e7-8236-0f87b9fe6594}"
"EventMessageFile"=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,\
00,6f,00,74,00,25,00,5c,00,73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,\
5c,00,50,00,53,00,48,00,45,00,44,00,2e,00,44,00,4c,00,4c,00,00,00

   

edit:
I'm happy to see you've gotten further with debugging at least.
#6828diderius6⇗ @infuscomus
I take a look what happens direct before crash of Hal.dll
Dietmar
Connected to Windows Boot Debugger 3790 x86 compatible target at (Mon Feb 22 20:47:28.708 2021 (UTC + 1:00)), ptr64 FALSE
Kernel Debugger connection established.
Symbol search path is: C:\WINDOWS\symbols2;C:\WINDOWS\symbols
Executable search path is: C:\WINDOWS\symbols2
Windows Boot Debugger Kernel Version 3790 UP Checked x86 compatible
Machine Name:
Primary image base = 0x00400000 Loaded module list = 0x0042fc9c
System Uptime: not available
Break instruction exception - code 80000003 (first chance)
osloader!DbgBreakPoint:
0040b0c6 cc int 3
kd> bc *
kd> bp 0040e71e
kd> g
BD: 804BA000 \WINDOWS\system32\ntkrnlpa.exe
BD: 806C8000 \WINDOWS\system32\hal.dll
Breakpoint 0 hit
osloader!NtProcessStartup+0x265:
0040e71e a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]

kd> t
osloader!NtProcessStartup+0x26a:
0040e723 ff5014 call dword ptr [eax+14h]
kd> t
osloader!AEReboot:
00402ad3 55 push ebp
kd> t
osloader!AEReboot+0x1:
00402ad4 8bec mov ebp,esp
kd> t
osloader!AEReboot+0x3:
00402ad6 51 push ecx
kd> t
osloader!AEReboot+0x4:
00402ad7 e815960000 call osloader!TextGrTerminate (0040c0f1)
kd> t
osloader!TextGrTerminate:
0040c0f1 33c0 xor eax,eax
kd> t
osloader!TextGrTerminate+0x2:
0040c0f3 390594ed4200 cmp dword ptr [osloader!DbcsLangId (0042ed94)],eax
kd> t
osloader!TextGrTerminate+0x8:
0040c0f9 7405 je osloader!TextGrTerminate+0xf (0040c100)
kd> t
osloader!TextGrTerminate+0xa:
0040c0fb a394ed4200 mov dword ptr [osloader!DbcsLangId (0042ed94)],eax
kd> t
osloader!TextGrTerminate+0xf:
0040c100 38054a304300 cmp byte ptr [osloader!GraphicsMode (0043304a)],al
kd> t
osloader!TextGrTerminate+0x15:
0040c106 7511 jne osloader!TextGrTerminate+0x28 (0040c119)
kd> t
osloader!TextGrTerminate+0x17:
0040c108 a14cfc4200 mov eax,dword ptr [osloader!ExternalServicesTable (0042fc4c)]
kd> t
osloader!TextGrTerminate+0x1c:
0040c10d 6a03 push 3
kd> t
osloader!TextGrTerminate+0x1e:
0040c10f 6800000080 push 80000000h
kd> t
osloader!TextGrTerminate+0x23:
0040c114 ff5018 call dword ptr [eax+18h]
kd> t
00020eff 6858000000 push 58h
kd> t
00020f04 680a0f0000 push 0F0Ah
kd> t
00020f09 cb retf
kd> t
0058:0f0a 6655 push ebp
16.kd> t
0058:0f0c 6653 push ebx
16.kd> t
0058:0f0e 6656 push esi
16.kd> t
0058:0f10 6657 push edi
16.kd> t
0058:0f12 6689e3 mov ebx,esp
16.kd> t
0058:0f15 b86000 mov ax,60h
16.kd> t
0058:0f18 8ed8 mov ds,ax
16.kd> t
BD: Debugging NTLDR --By: diyhack
BD: Boot Debugger Initialized
#6829infuscomus⇗ @diderius6

I see It's already at the BootFailed function by that point. I noticed just before calling BootFailed there is a BlPrint function, does BlPrint give any useful information?
#6830diderius6⇗ @infuscomus
ntldr was put into an endless loop, I found
Dietmar
seg000:000108E7 loc_108E7: ; CODE XREF: seg000:000108DD j
seg000:000108E7 call sub_13F2F
seg000:000108EC call sub_4D38
seg000:000108F1 call sub_1DDF6
seg000:000108F6 call sub_71E0
seg000:000108FB push ebx
seg000:000108FC call sub_FDAA
seg000:00010901 test byte ptr ds:42FC2Ch, 1
seg000:00010908 jz short loc_10936
seg000:0001090A push 4203A4h
seg000:0001090F call sub_EC5F
seg000:00010914 mov eax, ds:4222ECh
seg000:00010919 pop ecx
seg000:0001091A call dword ptr [eax+54h]
seg000:0001091D mov esi, eax
seg000:0001091F
seg000:0001091F loc_1091F: ; CODE XREF: seg000:0001092C j
seg000:0001091F mov eax, ds:4222ECh
seg000:00010924 call dword ptr [eax+54h]
seg000:00010927 sub eax, esi
seg000:00010929 cmp eax, 5
seg000:0001092C jb short loc_1091F
seg000:0001092E
seg000:0001092E loc_1092E: ; CODE XREF: seg000:0001093F j
seg000:0001092E mov eax, ds:4222ECh
seg000:00010933 call dword ptr [eax+14h]
seg000:00010936
seg000:00010936 loc_10936: ; CODE XREF: seg000:00010908 j
seg000:00010936 ; seg000:0001093D j
seg000:00010936 call sub_1E0D1
seg000:0001093B test al, al
seg000:0001093D jz short loc_10936
seg000:0001093F jmp short loc_1092E
seg000:00010941
#6831infuscomus⇗ @diderius6

I can see the loop in graph view -
I think you would need to set a breakpoint before BootFailed gets called to find the cause of this.
#6832diderius6⇗ @infuscomus
Here it is
Dietmar
Connected to Windows Boot Debugger 3790 x86 compatible target at (Mon Feb 22 21:26:52.898 2021 (UTC + 1:00)), ptr64 FALSE
Kernel Debugger connection established.
Symbol search path is: C:\WINDOWS\symbols2;C:\WINDOWS\symbols
Executable search path is: C:\WINDOWS\symbols2
Windows Boot Debugger Kernel Version 3790 UP Checked x86 compatible
Machine Name:
Primary image base = 0x00400000 Loaded module list = 0x0042fc9c
System Uptime: not available
Break instruction exception - code 80000003 (first chance)
osloader!DbgBreakPoint:
0040b0c6 cc int 3
kd> bc *
kd> bp 0040e6f1
kd> g
BD: 804BA000 \WINDOWS\system32\ntkrnlpa.exe
BD: 806C8000 \WINDOWS\system32\hal.dll
Breakpoint 0 hit
osloader!NtProcessStartup+0x238:
0040e6f1 f6052cfc420001 test byte ptr [osloader!BootFlags (0042fc2c)],1
kd> t
osloader!NtProcessStartup+0x23f:
0040e6f8 742c je osloader!NtProcessStartup+0x26d (0040e726)
kd> t
osloader!NtProcessStartup+0x26d:
0040e726 e896d70000 call osloader!BlTerminalHandleLoaderFailure (0041bec1)
kd> t
osloader!BlTerminalHandleLoaderFailure:
0041bec1 55 push ebp
kd> t
osloader!BlTerminalHandleLoaderFailure+0x1:
0041bec2 8bec mov ebp,esp
kd> t
osloader!BlTerminalHandleLoaderFailure+0x3:
0041bec4 51 push ecx
kd> t
osloader!BlTerminalHandleLoaderFailure+0x4:
0041bec5 51 push ecx
kd> t
osloader!BlTerminalHandleLoaderFailure+0x5:
0041bec6 53 push ebx
kd> t
osloader!BlTerminalHandleLoaderFailure+0x6:
0041bec7 33db xor ebx,ebx
kd> t
osloader!BlTerminalHandleLoaderFailure+0x8:
0041bec9 381da1704500 cmp byte ptr [osloader!BlTerminalConnected (004570a1)],bl
kd> t
osloader!BlTerminalHandleLoaderFailure+0xe:
0041becf 7507 jne osloader!BlTerminalHandleLoaderFailure+0x17 (0041bed8)
kd> t
osloader!BlTerminalHandleLoaderFailure+0x10:
0041bed1 b001 mov al,1
kd> t
osloader!BlTerminalHandleLoaderFailure+0x12:
0041bed3 e966020000 jmp osloader!BlTerminalHandleLoaderFailure+0x27d (0041c13e)
kd> t
osloader!BlTerminalHandleLoaderFailure+0x27d:
0041c13e 5b pop ebx
kd> t
osloader!BlTerminalHandleLoaderFailure+0x27e:
0041c13f c9 leave
kd> t
osloader!BlTerminalHandleLoaderFailure+0x27f:
0041c140 c3 ret
kd> t
osloader!NtProcessStartup+0x272:
0040e72b 84c0 test al,al
kd> t
osloader!NtProcessStartup+0x274:
0040e72d 74f7 je osloader!NtProcessStartup+0x26d (0040e726)
kd> t
osloader!NtProcessStartup+0x276:
0040e72f ebed jmp osloader!NtProcessStartup+0x265 (0040e71e)
kd> t
osloader!NtProcessStartup+0x265:
0040e71e a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd> t
osloader!NtProcessStartup+0x26a:
0040e723 ff5014 call dword ptr [eax+14h]
#6833diderius6Here ist the whole package with Source Code for this nice ntldr for debug bootdevices in XP
*.pdb , ntldr for IDA etc.
Dietmar

⇗ https://ufile.io/8c63f15v
#6834infuscomus⇗ @diderius6

The pdb symbols included in your download don't seem to be for the osloader.exe you included.
#6835diderius6⇗ @infuscomus
There are different *.pdb files in this packet.
For this here used ntldr take the *.pdb from the bin folder,
this one works together with ntldr here used
Dietmar
#6836diderius6⇗ @infuscomus
compi hangs after the call of
osloader!CpPutByte+0x3a:
00409e82 e88cfeffff      call    osloader!CpReadLsr (00409d13)
 -------->
                                                                                                        
seg000:0000BF23 ; =============== S U B R O U T I N E -------- < =======================================
seg000:0000BF23
seg000:0000BF23
seg000:0000BF23 sub_BF23        proc near ; CODE XREF: sub_BFD5+27 p
seg000:0000BF23                                         ; sub_BFD5+60 p ...
seg000:0000BF23
seg000:0000BF23 arg_0           = dword ptr  4
seg000:0000BF23 arg_4           = byte ptr  8
seg000:0000BF23
seg000:0000BF23                 push    ebx
seg000:0000BF24                 push    esi
seg000:0000BF25                 mov     esi, [esp+8+arg_0]
seg000:0000BF29                 mov     eax, [esi]
seg000:0000BF2B                 add     eax, 5
seg000:0000BF2E                 push    eax
seg000:0000BF2F                 call    dword ptr ds:422494h
seg000:0000BF35                 mov     bl, al
seg000:0000BF37                 test    [esp+8+arg_4], bl
seg000:0000BF3B                 jnz     short loc_BF64
seg000:0000BF3D                 mov     eax, [esi]
seg000:0000BF3F                 add     eax, 6
seg000:0000BF42                 push    eax
seg000:0000BF43                 call    dword ptr ds:422494h
seg000:0000BF49                 test    al, 40h
seg000:0000BF4B                 setz    al
seg000:0000BF4E                 inc     al
seg000:0000BF50                 or      ds:42D108h, al
seg000:0000BF56                 cmp     byte ptr ds:42D108h, 3
seg000:0000BF5D                 jnz     short loc_BF64
seg000:0000BF5F                 or      word ptr [esi+8], 2
seg000:0000BF64
seg000:0000BF64 loc_BF64: ; CODE XREF: sub_BF23+18 j
seg000:0000BF64 ; sub_BF23+3A j
seg000:0000BF64                 pop     esi
seg000:0000BF65                 mov     al, bl
seg000:0000BF67                 pop     ebx
seg000:0000BF68                 retn    8    <---- Compi never comes back to the place, from where it is called
seg000:0000BF68 sub_BF23        endp
seg000:0000BF68
seg000:0000BF6B
#6837diderius6
UCHAR
CpReadLsr(
     PCPPORT Port,
     UCHAR waiting
 );

   Routine Description:

       Read LSR byte from specified port.  If HAL owns port & display
       it will also cause a debug status to be kept up to date.

       Handles entering & exiting modem control mode for debugger.

   Arguments:

       Port - Address of CPPORT

   Returns:

       Byte read from port
#6838diderius6⇗ @infuscomus
Oh, I just see, that this Bsod can happen because of my hack for the COM1 port address to 10D0 (little endian) everywhere, but only in your hal.dll not, ok tomorrow more )
Dietmar

Microsoft (R) Windows Debugger Version 6.12.0002.633 X86
Copyright (c) Microsoft Corporation. All rights reserved.

Opened \\.\com1
Waiting to reconnect...
Connected to Windows Boot Debugger 3790 x86 compatible target at (Mon Feb 22 23:27:45.367 2021 (UTC + 1:00)), ptr64 FALSE
Kernel Debugger connection established.
Symbol search path is: C:\WINDOWS\symbols2
Executable search path is: C:\WINDOWS\symbols2
Windows Boot Debugger Kernel Version 3790 UP Checked x86 compatible
Machine Name:
Primary image base = 0x00400000 Loaded module list = 0x0042fc9c
System Uptime: not available
Break instruction exception - code 80000003 (first chance)
osloader!CpReadLsr+0x18:
00409d2b 7527 jne osloader!CpReadLsr+0x41 (00409d54)
kd> g
Access violation - code c0000005 (first chance)
First chance exceptions are reported before any exception handling.
This exception may be expected and handled.
00000020 ?? ???
kd> g
Access violation - code c0000005 (first chance)
First chance exceptions are reported before any exception handling.
This exception may be expected and handled.
00000020 ?? ???
kd> g
Access violation - code c0000005 (first chance)
First chance exceptions are reported before any exception handling.
This exception may be expected and handled.
00000020 ?? ???
kd> !analyze -v
Connected to Windows Boot Debugger 3790 x86 compatible target at (Mon Feb 22 23:29:23.445 2021 (UTC + 1:00)), ptr64 FALSE
Loading Kernel Symbols

Loading User Symbols
Unable to resolve nt!KiBugCheckData
*******************************************************************************
* *
* Exception Analysis *
* *
*******************************************************************************


FAULTING_IP:
+0
00000020 ?? ???

EXCEPTION_RECORD: ffffffff -- (.exr 0xffffffffffffffff)
ExceptionAddress: 00000020
ExceptionCode: c0000005 (Access violation)
ExceptionFlags: 00000000
NumberParameters: 3
Parameter[0]: 00000000
Parameter[1]: 00000020
Parameter[2]: 00000000
Attempt to read from address 00000020

DEFAULT_BUCKET_ID: BAD_INSTRUCTION_PTR

ERROR_CODE: (NTSTATUS) 0xc0000005 - Die Anweisung in "0x%08lx" verweist auf Speicher in "0x%08lx". Der Vorgang "%s" konnte nicht auf dem Speicher durchgef hrt werden.

EXCEPTION_CODE: (NTSTATUS) 0xc0000005 - Die Anweisung in "0x%08lx" verweist auf Speicher in "0x%08lx". Der Vorgang "%s" konnte nicht auf dem Speicher durchgef hrt werden.

EXCEPTION_PARAMETER1: 00000000

EXCEPTION_PARAMETER2: 00000020

EXCEPTION_PARAMETER3: 00000000

READ_ADDRESS: 00000020

FOLLOWUP_IP:
osloader!Port+0
0042d0d8 10d0 adc al,dl

FAILED_INSTRUCTION_ADDRESS:
+1562faf009bdf58
00000020 ?? ???

MOD_LIST: <ANALYSIS/>

FAULTING_THREAD: 00000001

PRIMARY_PROBLEM_CLASS: BAD_INSTRUCTION_PTR

BUGCHECK_STR: APPLICATION_FAULT_BAD_INSTRUCTION_PTR_INVALID_POINTER_READ

LAST_CONTROL_TRANSFER: from 0042d0d8 to 00000020

STACK_TEXT:
WARNING: Frame IP not in any known module. Following frames may be wrong.
0005c324 0042d0d8 00000030 0040ab93 00000000 0x20
0005c32c 0040ab93 00000000 00000030 0040abb8 osloader!Port
0005c338 0040abb8 00000030 0005c388 0040afad osloader!BdComPutByte+0xf [f:\work\ntldr\source\osloader\dbgcom.cpp @ 71]
0005c344 0040afad 0005c360 00000010 00000000 osloader!BdComSendString+0x10 [f:\work\ntldr\source\osloader\dbgcom.cpp @ 102]
0005c370 0040ed8a 00000002 0005c388 00000000 osloader!BdComSendPacket+0xa8 [f:\work\ntldr\source\osloader\dbgcom.cpp @ 572]
0005c390 0040f484 0005c3ac 0005c3ec 0042e13c osloader!BdWriteBreakpoint+0x40 [f:\work\ntldr\source\osloader\kdapi.cpp @ 557]
0005c3f8 0040f662 00000007 0005c508 0005c500 osloader!BdSendWaitContinue+0xea [f:\work\ntldr\source\osloader\kdapi.cpp @ 1036]
0005c510 0040b63c 0005c564 0042e13c 00000000 osloader!BdReportExceptionStateChange+0x6c [f:\work\ntldr\source\osloader\kdapi.cpp @ 1141]
0005c550 0040b256 0005c564 00000000 0005c5b8 osloader!BdTrap+0x3e [f:\work\ntldr\source\osloader\debug.cpp @ 601]
0005c5b0 0040b2be 00000000 00000000 00000000 osloader!BdDispatch+0x61 [f:\work\ntldr\source\osloader\debug.cpp @ 251]
0005c688 0040ed8a 00000002 0005c6a0 00000000 osloader!BdTrap03+0x30 [f:\work\ntldr\source\osloader\debug.cpp @ 319]
0005c6a8 0040f484 0005c6c4 0005c704 0042e13c osloader!BdWriteBreakpoint+0x40 [f:\work\ntldr\source\osloader\kdapi.cpp @ 557]
0005c710 0040f662 00000007 0005c820 0005c818 osloader!BdSendWaitContinue+0xea [f:\work\ntldr\source\osloader\kdapi.cpp @ 1036]
0005c828 0040b63c 0005c87c 0042e13c 00000000 osloader!BdReportExceptionStateChange+0x6c [f:\work\ntldr\source\osloader\kdapi.cpp @ 1141]
0005c868 0040b256 0005c87c 00000000 0005c8d0 osloader!BdTrap+0x3e [f:\work\ntldr\source\osloader\debug.cpp @ 601]
0005c8c8 0040b2be 00000000 00000000 00000000 osloader!BdDispatch+0x61 [f:\work\ntldr\source\osloader\debug.cpp @ 251]
0005c9a0 0040ed8a 00000002 0005c9b8 00000000 osloader!BdTrap03+0x30 [f:\work\ntldr\source\osloader\debug.cpp @ 319]
0005c9c0 0040f484 0005c9dc 0005ca1c 0042e13c osloader!BdWriteBreakpoint+0x40 [f:\work\ntldr\source\osloader\kdapi.cpp @ 557]
0005ca28 0040f662 00000007 0005cb38 0005cb30 osloader!BdSendWaitContinue+0xea [f:\work\ntldr\source\osloader\kdapi.cpp @ 1036]
0005cb40 0040b63c 0005cb94 0042e13c 00000000 osloader!BdReportExceptionStateChange+0x6c [f:\work\ntldr\source\osloader\kdapi.cpp @ 1141]
0005cb80 0040b256 0005cb94 00000000 0005cbe8 osloader!BdTrap+0x3e [f:\work\ntldr\source\osloader\debug.cpp @ 601]
0005cbe0 0040b2be 00000000 00000000 00000000 osloader!BdDispatch+0x61 [f:\work\ntldr\source\osloader\debug.cpp @ 251]
0005ccb8 0040ed8a 00000002 0005ccd0 00000000 osloader!BdTrap03+0x30 [f:\work\ntldr\source\osloader\debug.cpp @ 319]
0005ccd8 0040f484 0005ccf4 0005cd34 0042e13c osloader!BdWriteBreakpoint+0x40 [f:\work\ntldr\source\osloader\kdapi.cpp @ 557]
0005cd40 0040f662 00000007 0005ce50 0005ce48 osloader!BdSendWaitContinue+0xea [f:\work\ntldr\source\osloader\kdapi.cpp @ 1036]
0005ce58 0040b63c 0005ceac 0042e13c 00000000 osloader!BdReportExceptionStateChange+0x6c [f:\work\ntldr\source\osloader\kdapi.cpp @ 1141]
0005ce98 0040b256 0005ceac 00000000 0005cf00 osloader!BdTrap+0x3e [f:\work\ntldr\source\osloader\debug.cpp @ 601]
0005cef8 0040b2be 00000000 00000000 00000000 osloader!BdDispatch+0x61 [f:\work\ntldr\source\osloader\debug.cpp @ 251]
0005cfd0 0040ed8a 00000002 0005cfe8 00000000 osloader!BdTrap03+0x30 [f:\work\ntldr\source\osloader\debug.cpp @ 319]
0005cff0 0040f484 0005d00c 0005d04c 0042e13c osloader!BdWriteBreakpoint+0x40 [f:\work\ntldr\source\osloader\kdapi.cpp @ 557]
0005d058 0040f662 00000007 0005d168 0005d160 osloader!BdSendWaitContinue+0xea [f:\work\ntldr\source\osloader\kdapi.cpp @ 1036]
0005d170 0040b63c 0005d1c4 0042e13c 00000000 osloader!BdReportExceptionStateChange+0x6c [f:\work\ntldr\source\osloader\kdapi.cpp @ 1141]
0005d1b0 0040b256 0005d1c4 00000000 0005d218 osloader!BdTrap+0x3e [f:\work\ntldr\source\osloader\debug.cpp @ 601]
0005d210 0040b2be 00000000 00000000 00000000 osloader!BdDispatch+0x61 [f:\work\ntldr\source\osloader\debug.cpp @ 251]
0005d2e8 0040ed8a 00000002 0005d300 00000000 osloader!BdTrap03+0x30 [f:\work\ntldr\source\osloader\debug.cpp @ 319]
0005d308 0040f484 0005d324 0005d364 0042e13c osloader!BdWriteBreakpoint+0x40 [f:\work\ntldr\source\osloader\kdapi.cpp @ 557]
0005d370 0040f662 00000007 0005d480 0005d478 osloader!BdSendWaitContinue+0xea [f:\work\ntldr\source\osloader\kdapi.cpp @ 1036]
0005d488 0040b63c 0005d4dc 0042e13c 00000000 osloader!BdReportExceptionStateChange+0x6c [f:\work\ntldr\source\osloader\kdapi.cpp @ 1141]
0005d4c8 0040b256 0005d4dc 00000000 0005d530 osloader!BdTrap+0x3e [f:\work\ntldr\source\osloader\debug.cpp @ 601]
0005d528 0040b2be 00000000 00000000 00000000 osloader!BdDispatch+0x61 [f:\work\ntldr\source\osloader\debug.cpp @ 251]
0005d600 0040ed8a 00000002 0005d618 00000000 osloader!BdTrap03+0x30 [f:\work\ntldr\source\osloader\debug.cpp @ 319]
0005d620 0040f484 0005d63c 0005d67c 0042e13c osloader!BdWriteBreakpoint+0x40 [f:\work\ntldr\source\osloader\kdapi.cpp @ 557]
0005d688 0040f662 00000007 0005d798 0005d790 osloader!BdSendWaitContinue+0xea [f:\work\ntldr\source\osloader\kdapi.cpp @ 1036]
0005d7a0 0040b63c 0005d7f4 0042e13c 00000000 osloader!BdReportExceptionStateChange+0x6c [f:\work\ntldr\source\osloader\kdapi.cpp @ 1141]
0005d7e0 0040b256 0005d7f4 00000000 0005d848 osloader!BdTrap+0x3e [f:\work\ntldr\source\osloader\debug.cpp @ 601]
0005d840 0040b2be 00000000 00000000 00000000 osloader!BdDispatch+0x61 [f:\work\ntldr\source\osloader\debug.cpp @ 251]
0005d918 0040ed8a 00000002 0005d930 00000000 osloader!BdTrap03+0x30 [f:\work\ntldr\source\osloader\debug.cpp @ 319]
0005d938 0040f484 0005d954 0005d994 0042e13c osloader!BdWriteBreakpoint+0x40 [f:\work\ntldr\source\osloader\kdapi.cpp @ 557]
0005d9a0 0040f662 00000007 0005dab0 0005daa8 osloader!BdSendWaitContinue+0xea [f:\work\ntldr\source\osloader\kdapi.cpp @ 1036]
0005dab8 0040b63c 0005db0c 0042e13c 00000000 osloader!BdReportExceptionStateChange+0x6c [f:\work\ntldr\source\osloader\kdapi.cpp @ 1141]
0005daf8 0040b256 0005db0c 00000000 0005db60 osloader!BdTrap+0x3e [f:\work\ntldr\source\osloader\debug.cpp @ 601]
0005db58 0040b2be 00000000 00000000 00000000 osloader!BdDispatch+0x61 [f:\work\ntldr\source\osloader\debug.cpp @ 251]
0005dc30 0040ed8a 00000002 0005dc48 00000000 osloader!BdTrap03+0x30 [f:\work\ntldr\source\osloader\debug.cpp @ 319]
0005dc50 0040f484 0005dc6c 0005dcac 0042e13c osloader!BdWriteBreakpoint+0x40 [f:\work\ntldr\source\osloader\kdapi.cpp @ 557]
0005dcb8 0040f662 00000007 0005ddc8 0005ddc0 osloader!BdSendWaitContinue+0xea [f:\work\ntldr\source\osloader\kdapi.cpp @ 1036]
0005ddd0 0040b63c 0005de24 0042e13c 00000000 osloader!BdReportExceptionStateChange+0x6c [f:\work\ntldr\source\osloader\kdapi.cpp @ 1141]
0005de10 0040b256 0005de24 00000000 0005de78 osloader!BdTrap+0x3e [f:\work\ntldr\source\osloader\debug.cpp @ 601]
0005de70 0040b2be 00000000 00000000 00000000 osloader!BdDispatch+0x61 [f:\work\ntldr\source\osloader\debug.cpp @ 251]
0005df48 0040ed8a 00000002 0005df60 00000000 osloader!BdTrap03+0x30 [f:\work\ntldr\source\osloader\debug.cpp @ 319]
0005df68 0040f484 0005df84 0005dfc4 0042e13c osloader!BdWriteBreakpoint+0x40 [f:\work\ntldr\source\osloader\kdapi.cpp @ 557]
0005dfd0 0040f662 00000007 0005e0e0 0005e0d8 osloader!BdSendWaitContinue+0xea [f:\work\ntldr\source\osloader\kdapi.cpp @ 1036]
0005e0e8 0040b63c 0005e13c 0042e13c 00000000 osloader!BdReportExceptionStateChange+0x6c [f:\work\ntldr\source\osloader\kdapi.cpp @ 1141]
0005e128 0040b256 0005e13c 00000000 0005e190 osloader!BdTrap+0x3e [f:\work\ntldr\source\osloader\debug.cpp @ 601]
0005e188 0040b2be 00000000 00000000 00000000 osloader!BdDispatch+0x61 [f:\work\ntldr\source\osloader\debug.cpp @ 251]
0005e260 0040ed8a 00000002 0005e278 00000000 osloader!BdTrap03+0x30 [f:\work\ntldr\source\osloader\debug.cpp @ 319]
0005e280 0040f484 0005e29c 0005e2dc 0042e13c osloader!BdWriteBreakpoint+0x40 [f:\work\ntldr\source\osloader\kdapi.cpp @ 557]
0005e2e8 0040f662 00000007 0005e3f8 0005e3f0 osloader!BdSendWaitContinue+0xea [f:\work\ntldr\source\osloader\kdapi.cpp @ 1036]
0005e400 0040b63c 0005e454 0042e13c 00000000 osloader!BdReportExceptionStateChange+0x6c [f:\work\ntldr\source\osloader\kdapi.cpp @ 1141]
0005e440 0040b256 0005e454 00000000 0005e4a8 osloader!BdTrap+0x3e [f:\work\ntldr\source\osloader\debug.cpp @ 601]
0005e4a0 0040b2be 00000000 00000000 00000000 osloader!BdDispatch+0x61 [f:\work\ntldr\source\osloader\debug.cpp @ 251]
0005e578 0040ed8a 00000002 0005e590 00000000 osloader!BdTrap03+0x30 [f:\work\ntldr\source\osloader\debug.cpp @ 319]
0005e598 0040f484 0005e5b4 0005e5f4 0042e13c osloader!BdWriteBreakpoint+0x40 [f:\work\ntldr\source\osloader\kdapi.cpp @ 557]
0005e600 0040f662 00000007 0005e710 0005e708 osloader!BdSendWaitContinue+0xea [f:\work\ntldr\source\osloader\kdapi.cpp @ 1036]
0005e718 0040b63c 0005e76c 0042e13c 00000000 osloader!BdReportExceptionStateChange+0x6c [f:\work\ntldr\source\osloader\kdapi.cpp @ 1141]
0005e758 0040b256 0005e76c 00000000 0005e7c0 osloader!BdTrap+0x3e [f:\work\ntldr\source\osloader\debug.cpp @ 601]


STACK_COMMAND: kb

SYMBOL_STACK_INDEX: 1

SYMBOL_NAME: osloader!Port+5c32c

FOLLOWUP_NAME: MachineOwner

MODULE_NAME: osloader

IMAGE_NAME: osloader.exe

DEBUG_FLR_IMAGE_TIMESTAMP: 4a102c49

FAILURE_BUCKET_ID: BAD_INSTRUCTION_PTR_c0000005_osloader.exe!Port

BUCKET_ID: APPLICATION_FAULT_BAD_INSTRUCTION_PTR_INVALID_POINTER_READ_BAD_IP_osloader!Port+5c32c

Followup: MachineOwner
---------

#6839gordo999⇗ @diderius6 ...something that might interest you.

⇗ http://standa-note.blogspot.com/2014/11/...of-windows.html

⇗ http://bochs.sourceforge.net/
#6840diderius6⇗ @gordo999

Thanks for the links,
have a nice day
Dietmar

PS: "You will see IDA Pro breaks at the very beginning of MBR (0x7c00).." cool

 

Page 457

#6841diderius6⇗ @infuscomus
Funny, the XP hal.dll does not cry, when I change its COM1 port to address 0xD010
but the Vista hal.dll crashes, telling that it cant set up a terminal on this port.
This I can change back easy, I just need to use the for the Com1 port unmodded files
ntdetect.com, ntldr (new nice Master), (kdcom.dll), ntoskrnl.exe and hal.dll (this from Vista)
and use the onboard COM1 with 0x03F8 address
Dietmar
#6842diderius6⇗ @infuscomus

The crazy message about terminal error stays,
even I have now for all files COM1 port at standard address 0x03F8, IRQ 4.
I test, if I can get any more information, why hal.dll from Vista fails on XP SP3
Dietmar

Microsoft (R) Windows Debugger Version 6.12.0002.633 X86
Copyright (c) Microsoft Corporation. All rights reserved.

Opened \\.\com1
Waiting to reconnect...
BD: Debugging NTLDR --By: diyhack
BD: Boot Debugger Initialized
Connected to Windows Boot Debugger 3790 x86 compatible target at (Tue Feb 23 09:58:06.015 2021 (UTC + 1:00)), ptr64 FALSE
Kernel Debugger connection established.
Symbol search path is: C:\WINDOWS\symbols2
Executable search path is: C:\WINDOWS\symbols2
Windows Boot Debugger Kernel Version 3790 UP Checked x86 compatible
Machine Name:
Primary image base = 0x00400000 Loaded module list = 0x0042fc9c
System Uptime: not available
Break instruction exception - code 80000003 (first chance)
osloader!DbgBreakPoint:
0040b0c6 cc int 3
kd> bc *
kd> bp 0040e6f1
kd> g
BD: 804BA000 \WINDOWS\system32\ntkrnlpa.exe
BD: 806C8000 \WINDOWS\system32\hal.dll
BD: 80700000 \WINDOWS\system32\kdcom.dll
Breakpoint 0 hit
osloader!NtProcessStartup+0x238:
0040e6f1 f6052cfc420001 test byte ptr [osloader!BootFlags (0042fc2c)],1
kd> t
osloader!NtProcessStartup+0x23f:
0040e6f8 742c je osloader!NtProcessStartup+0x26d (0040e726)
kd> t
osloader!NtProcessStartup+0x26d:
0040e726 e896d70000 call osloader!BlTerminalHandleLoaderFailure (0041bec1)
kd> t
osloader!BlTerminalHandleLoaderFailure:
0041bec1 55 push ebp
kd> t
osloader!BlTerminalHandleLoaderFailure+0x1:
0041bec2 8bec mov ebp,esp
kd> t
osloader!BlTerminalHandleLoaderFailure+0x3:
0041bec4 51 push ecx
kd> t
osloader!BlTerminalHandleLoaderFailure+0x4:
0041bec5 51 push ecx
kd> t
osloader!BlTerminalHandleLoaderFailure+0x5:
0041bec6 53 push ebx
kd> t
osloader!BlTerminalHandleLoaderFailure+0x6:
0041bec7 33db xor ebx,ebx
kd> t
osloader!BlTerminalHandleLoaderFailure+0x8:
0041bec9 381da1704500 cmp byte ptr [osloader!BlTerminalConnected (004570a1)],bl
kd> t
osloader!BlTerminalHandleLoaderFailure+0xe:
0041becf 7507 jne osloader!BlTerminalHandleLoaderFailure+0x17 (0041bed8)
kd> t
osloader!BlTerminalHandleLoaderFailure+0x10:
0041bed1 b001 mov al,1
kd> t
osloader!BlTerminalHandleLoaderFailure+0x12:
0041bed3 e966020000 jmp osloader!BlTerminalHandleLoaderFailure+0x27d (0041c13e)
kd> t
osloader!BlTerminalHandleLoaderFailure+0x27d:
0041c13e 5b pop ebx
kd> t
osloader!BlTerminalHandleLoaderFailure+0x27e:
0041c13f c9 leave
kd> t
osloader!BlTerminalHandleLoaderFailure+0x27f:
0041c140 c3 ret
kd> t
osloader!NtProcessStartup+0x272:
0040e72b 84c0 test al,al
kd> t
osloader!NtProcessStartup+0x274:
0040e72d 74f7 je osloader!NtProcessStartup+0x26d (0040e726)
kd> t
osloader!NtProcessStartup+0x276:
0040e72f ebed jmp osloader!NtProcessStartup+0x265 (0040e71e)
kd> t
osloader!NtProcessStartup+0x265:
0040e71e a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd> t
osloader!NtProcessStartup+0x26a:
0040e723 ff5014 call dword ptr [eax+14h]
kd> t
osloader!AEReboot:
00402ad3 55 push ebp
kd> t
osloader!AEReboot+0x1:
00402ad4 8bec mov ebp,esp
kd> t
osloader!AEReboot+0x3:
00402ad6 51 push ecx
kd> t
osloader!AEReboot+0x4:
00402ad7 e815960000 call osloader!TextGrTerminate (0040c0f1)
kd> t
osloader!TextGrTerminate:
0040c0f1 33c0 xor eax,eax
kd> t
osloader!TextGrTerminate+0x2:
0040c0f3 390594ed4200 cmp dword ptr [osloader!DbcsLangId (0042ed94)],eax
kd> t
osloader!TextGrTerminate+0x8:
0040c0f9 7405 je osloader!TextGrTerminate+0xf (0040c100)
kd> t
osloader!TextGrTerminate+0xa:
0040c0fb a394ed4200 mov dword ptr [osloader!DbcsLangId (0042ed94)],eax
kd> t
osloader!TextGrTerminate+0xf:
0040c100 38054a304300 cmp byte ptr [osloader!GraphicsMode (0043304a)],al
kd> t
osloader!TextGrTerminate+0x15:
0040c106 7511 jne osloader!TextGrTerminate+0x28 (0040c119)
kd> t
osloader!TextGrTerminate+0x17:
0040c108 a14cfc4200 mov eax,dword ptr [osloader!ExternalServicesTable (0042fc4c)]
kd> t
osloader!TextGrTerminate+0x1c:
0040c10d 6a03 push 3
kd> t
osloader!TextGrTerminate+0x1e:
0040c10f 6800000080 push 80000000h
kd> t
osloader!TextGrTerminate+0x23:
0040c114 ff5018 call dword ptr [eax+18h]
kd> t
00020eff 6858000000 push 58h
kd> t
00020f04 680a0f0000 push 0F0Ah
kd> t
00020f09 cb retf
kd> t
0058:0f0a 6655 push ebp
16.kd> t
0058:0f0c 6653 push ebx
16.kd> t
0058:0f0e 6656 push esi
16.kd> t
0058:0f10 6657 push edi
16.kd> t
0058:0f12 6689e3 mov ebx,esp
16.kd> t
0058:0f15 b86000 mov ax,60h
16.kd> t
0058:0f18 8ed8 mov ds,ax
16.kd> t
BD: Debugging NTLDR --By: diyhack
BD: Boot Debugger Initialized
osloader!DbgBreakPoint:
0040b0c6 cc int 3

#6843infuscomus⇗ @diderius6

BD: 804BA000 \WINDOWS\system32\ntkrnlpa.exe
BD: 806C8000 \WINDOWS\system32\hal.dll
BD: 80700000 \WINDOWS\system32\kdcom.dll
^
do you know of a way to force pshed.dll to load after kdcom.dll? vista hal depends on it and it might be failing if pshed.dll is not loaded.
#6844diderius6⇗ @infuscomus
I think, that the harddisk is not recogniced correct with this hal from Vista.
Not easy to understand this output,
but I think, it shows something like this
Dietmar

osloader!atol+0xbc:
0041c7ac 894dec mov dword ptr [ebp-14h],ecx
kd> t
osloader!atol+0xbf:
0041c7af 837dec00 cmp dword ptr [ebp-14h],0
kd> t
osloader!atol+0xc3:
0041c7b3 7424 je osloader!atol+0xe9 (0041c7d9)
kd> t
osloader!atol+0xe9:
0041c7d9 837dfc2d cmp dword ptr [ebp-4],2Dh
kd> t
osloader!atol+0xed:
0041c7dd 7509 jne osloader!atol+0xf8 (0041c7e8)
kd> t
osloader!atol+0xf8:
0041c7e8 8b45f8 mov eax,dword ptr [ebp-8]
kd> t
osloader!atol+0xfb:
0041c7eb 8be5 mov esp,ebp
kd> t
osloader!atol+0xfd:
0041c7ed 5d pop ebp
kd> t
osloader!atol+0xfe:
0041c7ee c3 ret
kd> t
osloader!BlGetPathMnemonicKey+0x84:
00404fc3 59 pop ecx
kd> t
osloader!BlGetPathMnemonicKey+0x85:
00404fc4 8b4d10 mov ecx,dword ptr [ebp+10h]
kd> t
osloader!BlGetPathMnemonicKey+0x88:
00404fc7 8901 mov dword ptr [ecx],eax
kd> t
osloader!BlGetPathMnemonicKey+0x8a:
00404fc9 32c0 xor al,al
kd> t
osloader!BlGetPathMnemonicKey+0x8c:
00404fcb 5e pop esi
kd> t
osloader!BlGetPathMnemonicKey+0x8d:
00404fcc c9 leave
kd> t
osloader!BlGetPathMnemonicKey+0x8e:
00404fcd c20c00 ret 0Ch
kd> t
osloader!BiosPartitionOpen+0x152:
004045eb 84c0 test al,al
kd> t
osloader!BiosPartitionOpen+0x154:
004045ed 0f85dffeffff jne osloader!BiosPartitionOpen+0x39 (004044d2)
kd> t
osloader!BiosPartitionOpen+0x15a:
004045f3 8d4508 lea eax,[ebp+8]
kd> t
osloader!BiosPartitionOpen+0x15d:
004045f6 50 push eax
kd> t
osloader!BiosPartitionOpen+0x15e:
004045f7 8b45f8 mov eax,dword ptr [ebp-8]
kd> t
osloader!BiosPartitionOpen+0x161:
004045fa 53 push ebx
kd> t
osloader!BiosPartitionOpen+0x162:
004045fb 83e880 sub eax,0FFFFFF80h
kd> t
osloader!BiosPartitionOpen+0x165:
004045fe 50 push eax
kd> t
osloader!BiosPartitionOpen+0x166:
004045ff 895d08 mov dword ptr [ebp+8],ebx
kd> t
osloader!BiosPartitionOpen+0x169:
00404602 e853f4ffff call osloader!BiosDiskOpen (00403a5a)
kd> t
osloader!BiosDiskOpen:
00403a5a 55 push ebp
kd> t
osloader!BiosDiskOpen+0x1:
00403a5b 8bec mov ebp,esp
kd> t
osloader!BiosDiskOpen+0x3:
00403a5d 83ec0c sub esp,0Ch
kd> t
osloader!BiosDiskOpen+0x6:
00403a60 817d0881000080 cmp dword ptr [ebp+8],80000081h
kd> t
osloader!BiosDiskOpen+0xd:
00403a67 53 push ebx
kd> t
osloader!BiosDiskOpen+0xe:
00403a68 0f9745fe seta byte ptr [ebp-2]
kd> t
osloader!BiosDiskOpen+0x12:
00403a6c 816508ffffff7f and dword ptr [ebp+8],7FFFFFFFh
kd> t
osloader!BiosDiskOpen+0x19:
00403a73 817d0880000000 cmp dword ptr [ebp+8],80h
kd> t
osloader!BiosDiskOpen+0x20:
00403a7a 56 push esi
kd> t
osloader!BiosDiskOpen+0x21:
00403a7b 8b3528274200 mov esi,dword ptr [osloader!FwDiskCache (00422728)]
kd> t
osloader!BiosDiskOpen+0x27:
00403a81 57 push edi
kd> t
osloader!BiosDiskOpen+0x28:
00403a82 c645ff00 mov byte ptr [ebp-1],0
kd> t
osloader!BiosDiskOpen+0x2c:
00403a86 7341 jae osloader!BiosDiskOpen+0x6f (00403ac9)
kd> t
osloader!BiosDiskOpen+0x6f:
00403ac9 33ff xor edi,edi
kd> t
osloader!BiosDiskOpen+0x71:
00403acb 807dfe00 cmp byte ptr [ebp-2],0
kd> t
osloader!BiosDiskOpen+0x75:
00403acf 740b je osloader!BiosDiskOpen+0x82 (00403adc)

kd> t
osloader!BiosDiskOpen+0x82:
00403adc 897df8 mov dword ptr [ebp-8],edi
kd> t
osloader!BiosDiskOpen+0x85:
00403adf a14cfc4200 mov eax,dword ptr [osloader!ExternalServicesTable (0042fc4c)]

kd> t
osloader!BiosDiskOpen+0x8a:
00403ae4 57 push edi
kd> t
osloader!BiosDiskOpen+0x8b:
00403ae5 57 push edi
kd> t
osloader!BiosDiskOpen+0x8c:
00403ae6 57 push edi
kd> t
osloader!BiosDiskOpen+0x8d:
00403ae7 57 push edi
kd> t
osloader!BiosDiskOpen+0x8e:
00403ae8 57 push edi
kd> t
osloader!BiosDiskOpen+0x8f:
00403ae9 ff7508 push dword ptr [ebp+8]
kd> t
osloader!BiosDiskOpen+0x92:
00403aec 897df4 mov dword ptr [ebp-0Ch],edi
kd> t
osloader!BiosDiskOpen+0x95:
00403aef 6a08 push 8
kd> t
osloader!BiosDiskOpen+0x97:
00403af1 ff5004 call dword ptr [eax+4]
kd> t
00020b4d 6858000000 push 58h
kd> t
00020b52 68580b0000 push 0B58h
kd> t
00020b57 cb retf
kd> t
0058:0b58 6655 push ebp
16.kd> t
0058:0b5a 6653 push ebx
16.kd> t
0058:0b5c 6656 push esi
16.kd> t
0058:0b5e 6657 push edi
16.kd> t
0058:0b60 6689e3 mov ebx,esp
16.kd> t
0058:0b63 b86000 mov ax,60h
16.kd> t
0058:0b66 8ed8 mov ds,ax
16.kd> t
BD: Debugging NTLDR --By: diyhack
BD: Boot Debugger Initialized
osloader!DbgBreakPoint:
0040b0c6 cc int 3
#6845diderius6⇗ @infuscomus

Now I try something other.
I set EB FE at the driverentry from your Vista hal.dll and change the 2 Bytes back to their original value 8B FE in memory
Dietmar
#6846diderius6⇗ @infuscomus
Hm, this boot debugger is not as good as the normal Windbg.
I set EB FE and CC, does not help.
In the moment, when the compi reach this driverentry of Hal.dll,
the debugger reboots the compi at once
Dietmar
#6847diderius6⇗ @infuscomus

Always the same happens
after hal.dll is loaded

Dietmar

Microsoft (R) Windows Debugger Version 6.12.0002.633 X86
Copyright (c) Microsoft Corporation. All rights reserved.

Opened \\.\com1
Waiting to reconnect...
BD: Debugging NTLDR --By: diyhack
BD: Boot Debugger Initialized
Connected to Windows Boot Debugger 3790 x86 compatible target at (Tue Feb 23 11:42:33.109 2021 (UTC + 1:00)), ptr64 FALSE
Kernel Debugger connection established.
Symbol search path is: C:\WINDOWS\symbols
Executable search path is: C:\WINDOWS\symbols
Windows Boot Debugger Kernel Version 3790 UP Checked x86 compatible
Machine Name:
Primary image base = 0x00400000 Loaded module list = 0x0042fc9c
System Uptime: not available
Break instruction exception - code 80000003 (first chance)
osloader!DbgBreakPoint:
0040b0c6 cc int 3
kd> bc *
kd> p
osloader!DbgBreakPoint+0x1:
0040b0c7 c3 ret
kd> p
osloader!BdInitDebugger+0x3c0:
0040bb78 eb05 jmp osloader!BdInitDebugger+0x3c7 (0040bb7f)
kd> p
osloader!BdInitDebugger+0x3c7:
0040bb7f c9 leave
kd> p
osloader!BdInitDebugger+0x3c8:
0040bb80 c20c00 ret 0Ch
kd> p
osloader!MempCopyGdt+0x254:
0041143c 33c0 xor eax,eax
kd> p
osloader!MempCopyGdt+0x256:
0041143e 5b pop ebx
kd> p
osloader!MempCopyGdt+0x257:
0041143f 5f pop edi
kd> p
osloader!MempCopyGdt+0x258:
00411440 5e pop esi
kd> p
osloader!MempCopyGdt+0x259:
00411441 59 pop ecx
kd> p
osloader!MempCopyGdt+0x25a:
00411442 59 pop ecx
kd> p
osloader!MempCopyGdt+0x25b:
00411443 c3 ret
kd> p
osloader!InitializeMemorySubsystem+0x236:
0041167a 5f pop edi
kd> p
osloader!InitializeMemorySubsystem+0x237:
0041167b 5e pop esi
kd> p
osloader!InitializeMemorySubsystem+0x238:
0041167c 5b pop ebx
kd> p
osloader!InitializeMemorySubsystem+0x239:
0041167d c9 leave
kd> p
osloader!InitializeMemorySubsystem+0x23a:
0041167e c20400 ret 4
kd> p
osloader!DoGlobalInitialization+0x62:
0040e2fd 85c0 test eax,eax
kd> p
osloader!DoGlobalInitialization+0x64:
0040e2ff 740f je osloader!DoGlobalInitialization+0x75 (0040e310)
kd> p
osloader!DoGlobalInitialization+0x75:
0040e310 e86c330000 call osloader!InitializeMemoryDescriptors (00411681)
kd> p
osloader!DoGlobalInitialization+0x7a:
0040e315 c20400 ret 4
kd> p
osloader!NtProcessStartup+0x15:
0040e4ce 56 push esi
kd> p
osloader!NtProcessStartup+0x16:
0040e4cf 68b8254200 push offset osloader!BlSuCmdLine (004225b8)
kd> p
osloader!NtProcessStartup+0x1b:
0040e4d4 e83ffeffff call osloader!ParseCommandLine (0040e318)
kd> p
osloader!NtProcessStartup+0x20:
0040e4d9 56 push esi
kd> p
osloader!NtProcessStartup+0x21:
0040e4da e86c4affff call osloader!BlFillInSystemParameters (00402f4b)
kd> p
osloader!NtProcessStartup+0x26:
0040e4df 8b4628 mov eax,dword ptr [esi+28h]
kd> p
osloader!NtProcessStartup+0x29:
0040e4e2 a32cfc4200 mov dword ptr [osloader!BootFlags (0042fc2c)],eax
kd> p
osloader!NtProcessStartup+0x2e:
0040e4e7 8b06 mov eax,dword ptr [esi]
kd> p
osloader!NtProcessStartup+0x30:
0040e4e9 8b00 mov eax,dword ptr [eax]
kd> p
osloader!NtProcessStartup+0x32:
0040e4eb 25ff000000 and eax,0FFh
kd> p
osloader!NtProcessStartup+0x37:
0040e4f0 bb48f34200 mov ebx,offset osloader!BootPartitionName (0042f348)
kd> p
osloader!NtProcessStartup+0x3c:
0040e4f5 0f848c010000 je osloader!NtProcessStartup+0x1ce (0040e687)
kd> p
osloader!NtProcessStartup+0x42:
0040e4fb 83f801 cmp eax,1
kd> p
osloader!NtProcessStartup+0x45:
0040e4fe 0f8483010000 je osloader!NtProcessStartup+0x1ce (0040e687)
kd> p
osloader!NtProcessStartup+0x4b:
0040e504 83f840 cmp eax,40h
kd> p
osloader!NtProcessStartup+0x4e:
0040e507 751a jne osloader!NtProcessStartup+0x6a (0040e523)
kd> p
osloader!NtProcessStartup+0x6a:
0040e523 83f841 cmp eax,41h
kd> p
osloader!NtProcessStartup+0x6d:
0040e526 7514 jne osloader!NtProcessStartup+0x83 (0040e53c)
kd> p
osloader!NtProcessStartup+0x83:
0040e53c 50 push eax
kd> p
osloader!NtProcessStartup+0x84:
0040e53d e82efdffff call osloader!BlIsElToritoCDBoot (0040e270)
kd> p
osloader!NtProcessStartup+0x89:
0040e542 84c0 test al,al
kd> p
osloader!NtProcessStartup+0x8b:
0040e544 8b06 mov eax,dword ptr [esi]
kd> p
osloader!NtProcessStartup+0x8d:
0040e546 741e je osloader!NtProcessStartup+0xad (0040e566)
kd> p
osloader!NtProcessStartup+0xad:
0040e566 0fb64801 movzx ecx,byte ptr [eax+1]
kd> p
osloader!NtProcessStartup+0xb1:
0040e56a 0fb600 movzx eax,byte ptr [eax]
kd> p
osloader!NtProcessStartup+0xb4:
0040e56d 51 push ecx
kd> p
osloader!NtProcessStartup+0xb5:
0040e56e 50 push eax
kd> p
osloader!NtProcessStartup+0xb6:
0040e56f 53 push ebx
kd> p
osloader!NtProcessStartup+0xb7:
0040e570 e842fcffff call osloader!BlGetActivePartition (0040e1b7)
kd> p
osloader!NtProcessStartup+0xbc:
0040e575 6a4f push 4Fh
kd> p
osloader!NtProcessStartup+0xbe:
0040e577 33ff xor edi,edi
kd> p
osloader!NtProcessStartup+0xc0:
0040e579 8d45a5 lea eax,[ebp-5Bh]
kd> p
osloader!NtProcessStartup+0xc3:
0040e57c 57 push edi
kd> p
osloader!NtProcessStartup+0xc4:
0040e57d 50 push eax
kd> p
osloader!NtProcessStartup+0xc5:
0040e57e c645a400 mov byte ptr [ebp-5Ch],0
kd> p
osloader!NtProcessStartup+0xc9:
0040e582 e825dd0000 call osloader!memset (0041c2ac)
kd> p
osloader!NtProcessStartup+0xce:
0040e587 8b06 mov eax,dword ptr [esi]
kd> p
osloader!NtProcessStartup+0xd0:
0040e589 897d08 mov dword ptr [ebp+8],edi
kd> p
osloader!NtProcessStartup+0xd3:
0040e58c 8b00 mov eax,dword ptr [eax]
kd> p
osloader!NtProcessStartup+0xd5:
0040e58e 83e07f and eax,7Fh
kd> p
osloader!NtProcessStartup+0xd8:
0040e591 50 push eax
kd> p
osloader!NtProcessStartup+0xd9:
0040e592 8d45a4 lea eax,[ebp-5Ch]
kd> p
osloader!NtProcessStartup+0xdc:
0040e595 6834054200 push offset osloader!`string' (00420534)
kd> p
osloader!NtProcessStartup+0xe1:
0040e59a 50 push eax
kd> p
osloader!NtProcessStartup+0xe2:
0040e59b e8b0db0000 call osloader!sprintf (0041c150)
kd> p
osloader!NtProcessStartup+0xe7:
0040e5a0 83c418 add esp,18h
kd> p
osloader!NtProcessStartup+0xea:
0040e5a3 8d4508 lea eax,[ebp+8]
kd> p
osloader!NtProcessStartup+0xed:
0040e5a6 50 push eax
kd> p
osloader!NtProcessStartup+0xee:
0040e5a7 6a02 push 2
kd> p
osloader!NtProcessStartup+0xf0:
0040e5a9 8d45a4 lea eax,[ebp-5Ch]
kd> p
osloader!NtProcessStartup+0xf3:
0040e5ac 50 push eax
kd> p
osloader!NtProcessStartup+0xf4:
0040e5ad a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd> p
osloader!NtProcessStartup+0xf9:
0040e5b2 ff505c call dword ptr [eax+5Ch]
kd> p
osloader!NtProcessStartup+0xfc:
0040e5b5 85c0 test eax,eax
kd> p
osloader!NtProcessStartup+0xfe:
0040e5b7 0f85bd000000 jne osloader!NtProcessStartup+0x1c1 (0040e67a)
kd> p
osloader!NtProcessStartup+0x104:
0040e5bd 57 push edi
kd> p
osloader!NtProcessStartup+0x105:
0040e5be 8d45f8 lea eax,[ebp-8]
kd> p
osloader!NtProcessStartup+0x108:
0040e5c1 50 push eax
kd> p
osloader!NtProcessStartup+0x109:
0040e5c2 ff7508 push dword ptr [ebp+8]
kd> p
osloader!NtProcessStartup+0x10c:
0040e5c5 a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd> p
osloader!NtProcessStartup+0x111:
0040e5ca 897df8 mov dword ptr [ebp-8],edi
kd> p
osloader!NtProcessStartup+0x114:
0040e5cd 897dfc mov dword ptr [ebp-4],edi
kd> p
osloader!NtProcessStartup+0x117:
0040e5d0 ff5070 call dword ptr [eax+70h]
kd> p
osloader!NtProcessStartup+0x11a:
0040e5d3 85c0 test eax,eax
kd> p
osloader!NtProcessStartup+0x11c:
0040e5d5 0f858a000000 jne osloader!NtProcessStartup+0x1ac (0040e665)
kd> p
osloader!NtProcessStartup+0x122:
0040e5db 8d45f4 lea eax,[ebp-0Ch]
kd> p
osloader!NtProcessStartup+0x125:
0040e5de 50 push eax
kd> p
osloader!NtProcessStartup+0x126:
0040e5df bf00020000 mov edi,200h
kd> p
osloader!NtProcessStartup+0x12b:
0040e5e4 57 push edi
kd> p
osloader!NtProcessStartup+0x12c:
0040e5e5 8d85a4fdffff lea eax,[ebp-25Ch]
kd> p
osloader!NtProcessStartup+0x132:
0040e5eb 50 push eax
kd> p
osloader!NtProcessStartup+0x133:
0040e5ec ff7508 push dword ptr [ebp+8]
kd> p
osloader!NtProcessStartup+0x136:
0040e5ef a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd> p
osloader!NtProcessStartup+0x13b:
0040e5f4 ff5064 call dword ptr [eax+64h]
kd> p
osloader!NtProcessStartup+0x13e:
0040e5f7 85c0 test eax,eax
kd> p
osloader!NtProcessStartup+0x140:
0040e5f9 7563 jne osloader!NtProcessStartup+0x1a5 (0040e65e)
kd> p
osloader!NtProcessStartup+0x142:
0040e5fb 39855cffffff cmp dword ptr [ebp-0A4h],eax
kd> p
osloader!NtProcessStartup+0x148:
0040e601 756d jne osloader!NtProcessStartup+0x1b7 (0040e670)
kd> p
osloader!NtProcessStartup+0x1b7:
0040e670 ff7508 push dword ptr [ebp+8]
kd> p
osloader!NtProcessStartup+0x1ba:
0040e673 e89b69ffff call osloader!ArcCacheClose (00405013)
kd> p
osloader!NtProcessStartup+0x1bf:
0040e678 eb2d jmp osloader!NtProcessStartup+0x1ee (0040e6a7)
kd> p
osloader!NtProcessStartup+0x1ee:
0040e6a7 6a02 push 2
kd> p
osloader!NtProcessStartup+0x1f0:
0040e6a9 e848260000 call osloader!FwAllocateHeapPermanent (00410cf6)
kd> p
osloader!NtProcessStartup+0x1f5:
0040e6ae a38c304300 mov dword ptr [osloader!PcrBasePage (0043308c)],eax
kd> p
osloader!NtProcessStartup+0x1fa:
0040e6b3 85c0 test eax,eax
kd> p
osloader!NtProcessStartup+0x1fc:
0040e6b5 7408 je osloader!NtProcessStartup+0x206 (0040e6bf)
kd> p
osloader!NtProcessStartup+0x1fe:
0040e6b7 c1e80c shr eax,0Ch
kd> p
osloader!NtProcessStartup+0x201:
0040e6ba a38c304300 mov dword ptr [osloader!PcrBasePage (0043308c)],eax
kd> p
osloader!NtProcessStartup+0x206:
0040e6bf 6a03 push 3
kd> p
osloader!NtProcessStartup+0x208:
0040e6c1 e830260000 call osloader!FwAllocateHeapPermanent (00410cf6)
kd> p
osloader!NtProcessStartup+0x20d:
0040e6c6 a390304300 mov dword ptr [osloader!TssBasePage (00433090)],eax
kd> p
osloader!NtProcessStartup+0x212:
0040e6cb 85c0 test eax,eax
kd> p
osloader!NtProcessStartup+0x214:
0040e6cd 7408 je osloader!NtProcessStartup+0x21e (0040e6d7)
kd> p
osloader!NtProcessStartup+0x216:
0040e6cf c1e80c shr eax,0Ch
kd> p
osloader!NtProcessStartup+0x219:
0040e6d2 a390304300 mov dword ptr [osloader!TssBasePage (00433090)],eax
kd> p
osloader!NtProcessStartup+0x21e:
0040e6d7 e843360000 call osloader!BlMemoryInitialize (00411d1f)
kd> p
osloader!NtProcessStartup+0x223:
0040e6dc e84744ffff call osloader!AEInitializeStall (00402b28)
kd> p
osloader!NtProcessStartup+0x228:
0040e6e1 e800d50000 call osloader!BlInitializeHeadlessPort (0041bbe6)
kd> p
osloader!NtProcessStartup+0x22d:
0040e6e6 e8e568ffff call osloader!BlIoInitialize (00404fd0)
kd> p
osloader!NtProcessStartup+0x232:
0040e6eb 53 push ebx
kd> p
osloader!NtProcessStartup+0x233:
0040e6ec e8a9f4ffff call osloader!BlStartup (0040db9a)
kd> p
BD: 80A02000 \WINDOWS\system32\ntkrnlpa.exe
BD: 80100000 \WINDOWS\system32\hal.dll
BD: 80010000 \WINDOWS\system32\kdcom.dll
osloader!NtProcessStartup+0x238:
0040e6f1 f6052cfc420001 test byte ptr [osloader!BootFlags (0042fc2c)],1
kd> t
osloader!NtProcessStartup+0x23f:
0040e6f8 742c je osloader!NtProcessStartup+0x26d (0040e726)
kd> t
osloader!NtProcessStartup+0x26d:
0040e726 e896d70000 call osloader!BlTerminalHandleLoaderFailure (0041bec1)
kd> t
osloader!BlTerminalHandleLoaderFailure:
0041bec1 55 push ebp
kd> t
osloader!BlTerminalHandleLoaderFailure+0x1:
0041bec2 8bec mov ebp,esp
kd> t
osloader!BlTerminalHandleLoaderFailure+0x3:
0041bec4 51 push ecx
kd> t
osloader!BlTerminalHandleLoaderFailure+0x4:
0041bec5 51 push ecx
kd> t
osloader!BlTerminalHandleLoaderFailure+0x5:
0041bec6 53 push ebx
kd> t
osloader!BlTerminalHandleLoaderFailure+0x6:
0041bec7 33db xor ebx,ebx
kd> t
osloader!BlTerminalHandleLoaderFailure+0x8:
0041bec9 381da1704500 cmp byte ptr [osloader!BlTerminalConnected (004570a1)],bl
kd> t
osloader!BlTerminalHandleLoaderFailure+0xe:
0041becf 7507 jne osloader!BlTerminalHandleLoaderFailure+0x17 (0041bed8)
kd> t
osloader!BlTerminalHandleLoaderFailure+0x10:
0041bed1 b001 mov al,1
kd> t
osloader!BlTerminalHandleLoaderFailure+0x12:
0041bed3 e966020000 jmp osloader!BlTerminalHandleLoaderFailure+0x27d (0041c13e)
kd> t
osloader!BlTerminalHandleLoaderFailure+0x27d:
0041c13e 5b pop ebx
kd> t
osloader!BlTerminalHandleLoaderFailure+0x27e:
0041c13f c9 leave
kd> t
osloader!BlTerminalHandleLoaderFailure+0x27f:
0041c140 c3 ret
kd> t
osloader!NtProcessStartup+0x272:
0040e72b 84c0 test al,al
kd> t
osloader!NtProcessStartup+0x274:
0040e72d 74f7 je osloader!NtProcessStartup+0x26d (0040e726)
kd> t
osloader!NtProcessStartup+0x276:
0040e72f ebed jmp osloader!NtProcessStartup+0x265 (0040e71e)
kd> t
osloader!NtProcessStartup+0x265:
0040e71e a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd> t
osloader!NtProcessStartup+0x26a:
0040e723 ff5014 call dword ptr [eax+14h]
kd> t
osloader!AEReboot:
00402ad3 55 push ebp
kd> t
osloader!AEReboot+0x1:
00402ad4 8bec mov ebp,esp
kd> t
osloader!AEReboot+0x3:
00402ad6 51 push ecx
kd> t
osloader!AEReboot+0x4:
00402ad7 e815960000 call osloader!TextGrTerminate (0040c0f1)
kd> t
osloader!TextGrTerminate:
0040c0f1 33c0 xor eax,eax
kd> t
osloader!TextGrTerminate+0x2:
0040c0f3 390594ed4200 cmp dword ptr [osloader!DbcsLangId (0042ed94)],eax
kd> t
osloader!TextGrTerminate+0x8:
0040c0f9 7405 je osloader!TextGrTerminate+0xf (0040c100)
kd> t
osloader!TextGrTerminate+0xa:
0040c0fb a394ed4200 mov dword ptr [osloader!DbcsLangId (0042ed94)],eax
kd> t
osloader!TextGrTerminate+0xf:
0040c100 38054a304300 cmp byte ptr [osloader!GraphicsMode (0043304a)],al
kd> t
osloader!TextGrTerminate+0x15:
0040c106 7511 jne osloader!TextGrTerminate+0x28 (0040c119)
kd> t
osloader!TextGrTerminate+0x17:
0040c108 a14cfc4200 mov eax,dword ptr [osloader!ExternalServicesTable (0042fc4c)]
kd> t
osloader!TextGrTerminate+0x1c:
0040c10d 6a03 push 3
kd> t
osloader!TextGrTerminate+0x1e:
0040c10f 6800000080 push 80000000h
kd> t
osloader!TextGrTerminate+0x23:
0040c114 ff5018 call dword ptr [eax+18h]
kd> t
00020eff 6858000000 push 58h
kd> t
00020f04 680a0f0000 push 0F0Ah
kd> t
00020f09 cb retf
kd> t
0058:0f0a 6655 push ebp
16.kd> t
0058:0f0c 6653 push ebx
16.kd> t
0058:0f0e 6656 push esi
16.kd> t
0058:0f10 6657 push edi
16.kd> t
0058:0f12 6689e3 mov ebx,esp
16.kd> t
0058:0f15 b86000 mov ax,60h
16.kd> t
0058:0f18 8ed8 mov ds,ax
16.kd> t
BD: Debugging NTLDR --By: diyhack
BD: Boot Debugger Initialized
osloader!DbgBreakPoint:
0040b0c6 cc int 3
#6848infuscomus⇗ @diderius6

maybe using kdcom.dll of vista RTM might give more information?
#6849diderius6⇗ @infuscomus
kdcom.dll is not used because all debugging is done by this new ntldr.
I test this, just renaming kdcom.dll
Dietmar
#6850infuscomus⇗ @diderius6

do you get these same results with the other ntldr_dbg builds?
#6851diderius6⇗ @infuscomus
with your ntldr_dbg from XP SP1 I succeed to break after the load of ntkrnlpa.exe and before hal.dll.
But the result is the same. And to set a breakpoint in hal.dll itself also does not work, here this breakpoint is just ignored.

osloader!BlInsertDescriptor+0x5e:
00407d02 7523 jne osloader!BlInsertDescriptor+0x83 (00407d27)
kd> t
osloader!BlInsertDescriptor+0x60:
00407d04 8b7d08 mov edi,dword ptr [ebp+8]
kd> t
osloader!BlInsertDescriptor+0x63:
00407d07 8b5f10 mov ebx,dword ptr [edi+10h]
kd> t
osloader!BlInsertDescriptor+0x66:
00407d0a 8b7f0c mov edi,dword ptr [edi+0Ch]
kd> t
osloader!BlInsertDescriptor+0x69:
00407d0d 03fb add edi,ebx
kd> t
osloader!BlInsertDescriptor+0x6b:
00407d0f 3b780c cmp edi,dword ptr [eax+0Ch]
kd> t
osloader!BlInsertDescriptor+0x6e:
00407d12 7510 jne osloader!BlInsertDescriptor+0x80 (00407d24)
kd> t
osloader!BlInsertDescriptor+0x70:
00407d14 8b5010 mov edx,dword ptr [eax+10h]
kd> t
osloader!BlInsertDescriptor+0x73:
00407d17 8b4508 mov eax,dword ptr [ebp+8]
kd> t
osloader!BlInsertDescriptor+0x76:
00407d1a 03d3 add edx,ebx
kd> t
osloader!BlInsertDescriptor+0x78:
00407d1c 8b5dfc mov ebx,dword ptr [ebp-4]
kd> t
osloader!BlInsertDescriptor+0x7b:
00407d1f 895010 mov dword ptr [eax+10h],edx
kd> t
osloader!BlInsertDescriptor+0x7e:
00407d22 eb0f jmp osloader!BlInsertDescriptor+0x8f (00407d33)
kd> t
osloader!BlInsertDescriptor+0x8f:
00407d33 3bf3 cmp esi,ebx
kd> t
osloader!BlInsertDescriptor+0x91:
00407d35 7432 je osloader!BlInsertDescriptor+0xc5 (00407d69)
kd> t
osloader!BlInsertDescriptor+0x93:
00407d37 8b5108 mov edx,dword ptr [ecx+8]
kd> t
osloader!BlInsertDescriptor+0x96:
00407d3a 83fa02 cmp edx,2
kd> t
osloader!BlInsertDescriptor+0x99:
00407d3d 7405 je osloader!BlInsertDescriptor+0xa0 (00407d44)
kd> t
osloader!BlInsertDescriptor+0x9b:
00407d3f 83fa18 cmp edx,18h
kd> t
osloader!BlInsertDescriptor+0x9e:
00407d42 7525 jne osloader!BlInsertDescriptor+0xc5 (00407d69)
kd> t
osloader!BlInsertDescriptor+0xa0:
00407d44 8b5010 mov edx,dword ptr [eax+10h]
kd> t
osloader!BlInsertDescriptor+0xa3:
00407d47 8b700c mov esi,dword ptr [eax+0Ch]
kd> t
osloader!BlInsertDescriptor+0xa6:
00407d4a 03f2 add esi,edx
kd> t
osloader!BlInsertDescriptor+0xa8:
00407d4c 3b710c cmp esi,dword ptr [ecx+0Ch]
kd> t
osloader!BlInsertDescriptor+0xab:
00407d4f 7518 jne osloader!BlInsertDescriptor+0xc5 (00407d69)
kd> t
osloader!BlInsertDescriptor+0xad:
00407d51 8b7110 mov esi,dword ptr [ecx+10h]
kd> t
osloader!BlInsertDescriptor+0xb0:
00407d54 03f2 add esi,edx
kd> t
osloader!BlInsertDescriptor+0xb2:
00407d56 897010 mov dword ptr [eax+10h],esi
kd> t
osloader!BlInsertDescriptor+0xb5:
00407d59 8b5108 mov edx,dword ptr [ecx+8]
kd> t
osloader!BlInsertDescriptor+0xb8:
00407d5c 895008 mov dword ptr [eax+8],edx
kd> t
osloader!BlInsertDescriptor+0xbb:
00407d5f 8b01 mov eax,dword ptr [ecx]
kd> t
osloader!BlInsertDescriptor+0xbd:
00407d61 8b4904 mov ecx,dword ptr [ecx+4]
kd> t
osloader!BlInsertDescriptor+0xc0:
00407d64 8901 mov dword ptr [ecx],eax
kd> t
osloader!BlInsertDescriptor+0xc2:
00407d66 894804 mov dword ptr [eax+4],ecx
kd> t
osloader!BlInsertDescriptor+0xc5:
00407d69 5f pop edi
kd> t
osloader!BlInsertDescriptor+0xc6:
00407d6a 5e pop esi
kd> t
osloader!BlInsertDescriptor+0xc7:
00407d6b 5b pop ebx
kd> t
osloader!BlInsertDescriptor+0xc8:
00407d6c c9 leave
kd> t
osloader!BlInsertDescriptor+0xc9:
00407d6d c20400 ret 4
kd> t
osloader!BlFreeDescriptor+0x62:
00407dd2 33c0 xor eax,eax
kd> t
osloader!BlFreeDescriptor+0x64:
00407dd4 5d pop ebp
kd> t
osloader!BlFreeDescriptor+0x65:
00407dd5 c20400 ret 4
kd> t
osloader!BlImageFreeCache+0x1c:
00415a05 83661400 and dword ptr [esi+14h],0
kd> t
osloader!BlImageFreeCache+0x20:
00415a09 83661000 and dword ptr [esi+10h],0
kd> t
osloader!BlImageFreeCache+0x24:
00415a0d 5e pop esi
kd> t
osloader!BlImageFreeCache+0x25:
00415a0e 5d pop ebp
kd> t
osloader!BlImageFreeCache+0x26:
00415a0f c20800 ret 8
kd> t
osloader!BlLoadImageEx+0x45d:
00415e6f ff75f8 push dword ptr [ebp-8]
kd> t
osloader!BlLoadImageEx+0x460:
00415e72 e846f2feff call osloader!BlClose (004050bd)
kd> t
osloader!BlClose:
004050bd 55 push ebp
kd> t
osloader!BlClose+0x1:
004050be 8bec mov ebp,esp
kd> t
osloader!BlClose+0x3:
004050c0 8b4508 mov eax,dword ptr [ebp+8]
kd> t
osloader!BlClose+0x6:
004050c3 6bc068 imul eax,eax,68h
kd> t
osloader!BlClose+0x9:
004050c6 f68080bd460001 test byte ptr osloader!BlFileTable (0046bd80)[eax],1
kd> t
osloader!BlClose+0x10:
004050cd 7409 je osloader!BlClose+0x1b (004050d8)
kd> t
osloader!BlClose+0x12:
004050cf 8b8094bd4600 mov eax,dword ptr osloader!BlFileTable+0x14 (0046bd94)[eax]
kd> t
osloader!BlClose+0x18:
004050d5 5d pop ebp
kd> t
osloader!BlClose+0x19:
004050d6 ff20 jmp dword ptr [eax]
kd> t
osloader!ScsiDiskClose:
004089b0 55 push ebp
kd> t
osloader!ScsiDiskClose+0x1:
004089b1 8bec mov ebp,esp
kd> t
osloader!ScsiDiskClose+0x3:
004089b3 8b4508 mov eax,dword ptr [ebp+8]
kd> t
osloader!ScsiDiskClose+0x6:
004089b6 6bc068 imul eax,eax,68h
kd> t
osloader!ScsiDiskClose+0x9:
004089b9 8d8080bd4600 lea eax,osloader!BlFileTable (0046bd80)[eax]
kd> t
osloader!ScsiDiskClose+0xf:
004089bf 8320fe and dword ptr [eax],0FFFFFFFEh
kd> t
osloader!ScsiDiskClose+0x12:
004089c2 33c0 xor eax,eax
kd> t
osloader!ScsiDiskClose+0x14:
004089c4 5d pop ebp
kd> t
osloader!ScsiDiskClose+0x15:
004089c5 c20400 ret 4
kd> t
osloader!BlLoadImageEx+0x465:
00415e77 8b4508 mov eax,dword ptr [ebp+8]
kd> t
osloader!BlLoadImageEx+0x468:
00415e7a 5f pop edi
kd> t
osloader!BlLoadImageEx+0x469:
00415e7b 5e pop esi
kd> t
osloader!BlLoadImageEx+0x46a:
00415e7c c9 leave
kd> t
osloader!BlLoadImageEx+0x46b:
00415e7d c21c00 ret 1Ch
kd> t
osloader!BlOsLoader+0xaba:
004226e8 8bf0 mov esi,eax
kd> t
osloader!BlOsLoader+0xabc:
004226ea 83fe10 cmp esi,10h
kd> t
osloader!BlOsLoader+0xabf:
004226ed 74bd je osloader!BlOsLoader+0xa7e (004226ac)
kd> t
osloader!BlOsLoader+0xac1:
004226ef 3bf7 cmp esi,edi
kd> t
osloader!BlOsLoader+0xac3:
004226f1 0f8532060000 jne osloader!BlOsLoader+0x10fb (00422d29)
kd> t
osloader!BlOsLoader+0xac9:
004226f7 e84543ffff call osloader!BlUpdateBootStatus (00416a41)
kd> t
osloader!BlUpdateBootStatus:
00416a41 ff0528db4300 inc dword ptr [osloader!BlNumFilesLoaded (0043db28)]
kd> t
osloader!BlUpdateBootStatus+0x6:
00416a47 803d35db430000 cmp byte ptr [osloader!BlShowProgressBar (0043db35)],0
kd> t
osloader!BlUpdateBootStatus+0xd:
00416a4e 7406 je osloader!BlUpdateBootStatus+0x15 (00416a56)
kd> t
osloader!BlUpdateBootStatus+0x15:
00416a56 e9b9feffff jmp osloader!BlRedrawProgressBar (00416914)
kd> t
osloader!BlRedrawProgressBar:
00416914 803d35db430000 cmp byte ptr [osloader!BlShowProgressBar (0043db35)],0
kd> t
osloader!BlRedrawProgressBar+0x7:
0041691b 7552 jne osloader!BlRedrawProgressBar+0x5b (0041696f)
kd> t
osloader!BlRedrawProgressBar+0x9:
0041691d a170904300 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (00439070)]
kd> t
osloader!BlRedrawProgressBar+0xe:
00416922 ff5054 call dword ptr [eax+54h]
kd> t
osloader!AEGetRelativeTime:
0040691b a170d94600 mov eax,dword ptr [osloader!ExternalServicesTable (0046d970)]
kd> t

osloader!AEGetRelativeTime+0x5:
00406920 ff500c call dword ptr [eax+0Ch]
kd> t
00022e90 6858000000 push 58h
kd> t
00022e95 68b4070000 push 7B4h
kd> t
00022e9a cb retf
kd> t
0058:07b4 6655 push ebp
16.kd> t
0058:07b6 6653 push ebx
16.kd> t
0058:07b8 6656 push esi
16.kd> t
0058:07ba 6657 push edi
16.kd> t
0058:07bc 668bdc mov ebx,esp
16.kd> t
0058:07bf b86000 mov ax,60h
16.kd> t
0058:07c2 8ed8 mov ds,ax
16.kd> t
BD: Boot Debugger Initialized
BD: osloader.exe base address 00400000
*** WARNING: Unable to verify timestamp for osloader.exe
BD: \WINDOWS\system32\ntkrnlpa.exe base address 80A02000
osloader!RtlpBreakWithStatusInstruction:
0041cf70 cc int 3

   

When I let Windbg run, I get on the debugged compi the known message about missing DLLs for Kernel.
The compi, where the program Windbg runs, breaks at
BD: \WINDOWS\system32\hal.dll base address 80100000
Break

But when I trace back with Disassembly (works as long as there is no jmp or call or retn) the last operations
are the same as in spoiler before.
#6852infuscomus⇗ @diderius6

It's getting up to

osloader!BlLoadImageEx+0x460:
then goes to BlClose

I'm thinking my modifications to the vista hal.dll export table might be preventing this from working correctly. That or it doesn't like XP ntoskrnl.
#6853diderius6⇗ @infuscomus
I can make a try with SoftIce.
SoftICE is a one machine Debugger, which means, that the Host and the Target are one and the same compi.

The problem in this is, that the only compi on which Softice runs under XP SP3
is not my daily compi and I have to safe the content of everything from this compi.
Many partitions, so it will be not easy. On this compi, SoftICE runs stable under XP SP3.
I thought about to make via Winhex an identical copy to an USB harddisk of partition C:\ ,
where SoftICE just now works and to boot from this USB harddisk.
Dont know, what Softice will say to this, but it is worth a try
Dietmar
#6854infuscomus⇗ @diderius6

If you're doing anything take might break an OS install just remember to make an image of the drive before you do anything.
I quite like Paragon Hard Disk Manager and its Recovery Media and always use it for my backups.
#6855diderius6⇗ @infuscomus
I have had one case, where the Paragon program fails.
Because I want to avoid any risk,
I will make a one by one bit copy of the harddisk with Winhex.
But this is crazy slow, needs more than a day on large harddisks,
but until now never fails
Dietmar

PS: On any other compi I would just take harddisk out and install XP new.
But because the crazy way to get SoftICE to work on this compi under XP SP3,
never change a running system ).
You for yourself can do any easy test: Copy ALL *.dlls from Vista into Windows\system32 folder of XP and look what happens.
The message about missing dlls for Kernel is gone then (I think).
Via this way you can also find out, which dlls are missed.

 

Page 458

#6856infuscomus⇗ @diderius6

I recall that Paragon does have a RAW copy mode that should do the same thing (it'd be slow, like you said)
I'm not sure where it is in the most recent version, but it should still be there.

⇗ https://kb.paragon-software.com/article/133
^
this article mentions -  HDD raw copy to copy the hard disk in the sector-by-sector mode, thus ignoring its information structure
#6857diderius6⇗ @infuscomus
I just read,
that SoftICE works also over serial connection or even lan
Dietmar

⇗ https://community.osr.com/discussion/726...ng-with-softice

EDIT: BOOT modus works in SoftICE on XP SP3 but not early BOOT.
#6858BrooonsDisk C: -  windows XP
Disk D: -  windows XP
Both windows alike identical absolutely
ACPI.SYS alike identical absolutely
SATA alike identical absolutely
Disk C:  -  start well
Disk D: -- start BSOD 0x00000050
Why?
#6859diderius6⇗ @Brooons
This depends, on how you install XP.
When you install it with only one harddisk at a time connected,
XP will install on C:\.
This you can repeat for the other harddisk also (as single harddisk) and boot later
from each as you wish.
Sometimes it helps to delete whole key in registry
HKEY_LOCAL_MACHINE\SYSTEM\MountedDevices .
It is build new from XP during reboot. This trick works only in XP
Dietmar
#6860Brooons
Zitat von ⇗ diderius6 im Beitrag ¶ #6859
@Brooons
This depends, on how you install XP.
Dietmar


Both windows I carry with other computer, has conducted through Paragon P2P OS.
Disk C very well, Disk D - start BSOD
though all actions alike absolutely
#6861diderius6⇗ @Brooons

When you use Paragon together with an other harddisk at the compi in the same time,
the "intelligence" of the program "repairs" the bootsector
Dietmar
#6862BrooonsBoot sector good, windows do start, boot, cursor picture and BSOD
#6863Gelip⇗ @diderius6

Zitat von ⇗ diderius6 im Beitrag ¶ #6631
I found out, that the IO address is 0xD000 and 0xD010 for both cards.


Zitat von ⇗ diderius6 im Beitrag ¶ #6671
@Gelip
Here it is
Dietmar

⇗ [img]https://i.ibb.co/XS2xxNf/lspci.png[/img]




Zitat von ⇗ diderius6 im Beitrag ¶ #6669
@Gelip
Here it is. I enabled, disabled all. No difference, just no serial Windbg via this PCI-E slotcard
Dietmar

⇗ [img]https://i.ibb.co/Mk7S2sp/20210216-193823.jpg[/img]


Your PEX2S553 Startech card have I/O and MMIO addressing:
lspci -s 03:00.0 -vv (I/O port at d010 and Memory at df403000)

Please show screenshot is your port 03:00.0 is BusMaster+

lspci -s 03:00.0 -vv

Disable integrated port COM, uninstall WinXP drivers Startech port if installed and boot PC from MS-DOS USB stick then disable MMIO access:

setpci -s 03:00.0 command=1     this set I/O+ Mem-

or

setpci -s 03:00.0 command=5     this set I/O+ Mem- BusMaster+

and

debug.exe
-e 40:0 10 D0
-q
grub.exe and boot WinXP

or use modded kdcom.dll with repalced COM1 03f8 to d010 in offset C50 and boot.ini COM1

P.S. In setpci command:

+ means option enabled
- means option disabled
#6864gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #6853
I can make a try with SoftIce.
SoftICE is a one machine Debugger, which means, that the Host and the Target are one and the same compi.
⇗ @diderius6 ...SI can be run as a remote debugger if you use the Driver Studio version. An article on that.

⇗ http://driverentry.com.br/en/blog/?p=141
#6865infuscomus⇗ @diderius6

I sent you a PM, can you test and debug it?
#6866diderius6⇗ @infuscomus
Soon I will test.
I think, that you have to rename

vkrnl4xp.exe  ---> ntoskrnl.exe

Also I will make the idea from ⇗ @gordo999 come true,
to set up a virtual debugger with Bochs and Ida Pro 6.
This may be just for fun,
but who knows
Dietmar
#6867diderius6⇗ @infuscomus

With the normal ntldr I get the same message about missing dlls for Kernel.
With the Master-ntldr now I get the bootfiles loaded,
but the crash happens in Windbg at the same place as before
Dietmar

Microsoft (R) Windows Debugger Version 6.12.0002.633 X86
Copyright (c) Microsoft Corporation. All rights reserved.

Opened \\.\com1
Waiting to reconnect...
BD: Debugging NTLDR --By: diyhack
BD: Boot Debugger Initialized
Connected to Windows Boot Debugger 3790 x86 compatible target at (Thu Feb 25 10:31:23.904 2021 (UTC + 1:00)), ptr64 FALSE
Kernel Debugger connection established.
Symbol search path is: C:\WINDOWS\symbols
Executable search path is: C:\WINDOWS\symbols
Windows Boot Debugger Kernel Version 3790 UP Checked x86 compatible
Machine Name:
Primary image base = 0x00400000 Loaded module list = 0x0042fc9c
System Uptime: not available
Break instruction exception - code 80000003 (first chance)
osloader!DbgBreakPoint:
0040b0c6 cc int 3
kd> g
BD: 80A02000 \WINDOWS\system32\ntoskrnl.exe
BD: 80100000 \WINDOWS\system32\hal.dll
BD: 80010000 \WINDOWS\system32\kdcom.dll
BD: 80001000 \WINDOWS\system32\PSHED.dll
BD: 8000A000 \WINDOWS\system32\BOOTVID.dll
BD: 80138000 \WINDOWS\system32\CLFS.SYS
BD: 80173000 \WINDOWS\system32\CI.dll
Shutdown occurred at (Thu Feb 25 10:32:11.357 2021 (UTC + 1:00))...unloading all symbol tables.
Waiting to reconnect...
BD: Debugging NTLDR --By: diyhack
BD: Boot Debugger Initialized


osloader!NtProcessStartup+0x21e:
0040e6d7 e843360000 call osloader!BlMemoryInitialize (00411d1f)
kd>
osloader!NtProcessStartup+0x223:
0040e6dc e84744ffff call osloader!AEInitializeStall (00402b28)
kd>
osloader!NtProcessStartup+0x228:
0040e6e1 e800d50000 call osloader!BlInitializeHeadlessPort (0041bbe6)
kd>
osloader!NtProcessStartup+0x22d:
0040e6e6 e8e568ffff call osloader!BlIoInitialize (00404fd0)
kd>
osloader!NtProcessStartup+0x232:
0040e6eb 53 push ebx
kd>
osloader!NtProcessStartup+0x233:
0040e6ec e8a9f4ffff call osloader!BlStartup (0040db9a)
kd>
BD: 80A02000 \WINDOWS\system32\ntoskrnl.exe
BD: 80100000 \WINDOWS\system32\hal.dll
BD: 80010000 \WINDOWS\system32\kdcom.dll
BD: 80001000 \WINDOWS\system32\PSHED.dll
BD: 8000A000 \WINDOWS\system32\BOOTVID.dll
BD: 80138000 \WINDOWS\system32\CLFS.SYS
BD: 80173000 \WINDOWS\system32\CI.dll
osloader!NtProcessStartup+0x238:
0040e6f1 f6052cfc420001 test byte ptr [osloader!BootFlags (0042fc2c)],1
kd> t
osloader!NtProcessStartup+0x23f:
0040e6f8 742c je osloader!NtProcessStartup+0x26d (0040e726)
kd> t
osloader!NtProcessStartup+0x26d:
0040e726 e896d70000 call osloader!BlTerminalHandleLoaderFailure (0041bec1)
kd> t
osloader!BlTerminalHandleLoaderFailure:
0041bec1 55 push ebp
kd> t
osloader!BlTerminalHandleLoaderFailure+0x1:
0041bec2 8bec mov ebp,esp
kd> t
osloader!BlTerminalHandleLoaderFailure+0x3:
0041bec4 51 push ecx
kd> t
osloader!BlTerminalHandleLoaderFailure+0x4:
0041bec5 51 push ecx
kd> t
osloader!BlTerminalHandleLoaderFailure+0x5:
0041bec6 53 push ebx
kd> t
osloader!BlTerminalHandleLoaderFailure+0x6:
0041bec7 33db xor ebx,ebx
kd> t
osloader!BlTerminalHandleLoaderFailure+0x8:
0041bec9 381da1704500 cmp byte ptr [osloader!BlTerminalConnected (004570a1)],bl
kd> t
osloader!BlTerminalHandleLoaderFailure+0xe:
0041becf 7507 jne osloader!BlTerminalHandleLoaderFailure+0x17 (0041bed8)
kd> t
osloader!BlTerminalHandleLoaderFailure+0x10:
0041bed1 b001 mov al,1
kd> t
osloader!BlTerminalHandleLoaderFailure+0x12:
0041bed3 e966020000 jmp osloader!BlTerminalHandleLoaderFailure+0x27d (0041c13e)
kd> t
osloader!BlTerminalHandleLoaderFailure+0x27d:
0041c13e 5b pop ebx
kd> t
osloader!BlTerminalHandleLoaderFailure+0x27e:
0041c13f c9 leave
kd> t
osloader!BlTerminalHandleLoaderFailure+0x27f:
0041c140 c3 ret
kd> t
osloader!NtProcessStartup+0x272:
0040e72b 84c0 test al,al
kd> t
osloader!NtProcessStartup+0x274:
0040e72d 74f7 je osloader!NtProcessStartup+0x26d (0040e726)
kd> t
osloader!NtProcessStartup+0x276:
0040e72f ebed jmp osloader!NtProcessStartup+0x265 (0040e71e)
kd> t
osloader!NtProcessStartup+0x265:
0040e71e a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd> t
osloader!NtProcessStartup+0x26a:
0040e723 ff5014 call dword ptr [eax+14h]
kd> t
osloader!AEReboot:
00402ad3 55 push ebp
kd> t
osloader!AEReboot+0x1:
00402ad4 8bec mov ebp,esp
kd> t
osloader!AEReboot+0x3:
00402ad6 51 push ecx
kd> t
osloader!AEReboot+0x4:
00402ad7 e815960000 call osloader!TextGrTerminate (0040c0f1)
kd> t
osloader!TextGrTerminate:
0040c0f1 33c0 xor eax,eax
kd> t
osloader!TextGrTerminate+0x2:
0040c0f3 390594ed4200 cmp dword ptr [osloader!DbcsLangId (0042ed94)],eax
kd> t
osloader!TextGrTerminate+0x8:
0040c0f9 7405 je osloader!TextGrTerminate+0xf (0040c100)
kd> t
osloader!TextGrTerminate+0xa:
0040c0fb a394ed4200 mov dword ptr [osloader!DbcsLangId (0042ed94)],eax
kd> t
osloader!TextGrTerminate+0xf:
0040c100 38054a304300 cmp byte ptr [osloader!GraphicsMode (0043304a)],al
kd> t
osloader!TextGrTerminate+0x15:
0040c106 7511 jne osloader!TextGrTerminate+0x28 (0040c119)
kd> t
osloader!TextGrTerminate+0x17:
0040c108 a14cfc4200 mov eax,dword ptr [osloader!ExternalServicesTable (0042fc4c)]
kd> t
osloader!TextGrTerminate+0x1c:
0040c10d 6a03 push 3
kd> t
osloader!TextGrTerminate+0x1e:
0040c10f 6800000080 push 80000000h
kd> t
osloader!TextGrTerminate+0x23:
0040c114 ff5018 call dword ptr [eax+18h]
kd> t
00020eff 6858000000 push 58h
kd> t
00020f04 680a0f0000 push 0F0Ah
kd> t
00020f09 cb retf
kd> t
0058:0f0a 6655 push ebp
16.kd> t
0058:0f0c 6653 push ebx
16.kd> t
0058:0f0e 6656 push esi
16.kd> t
0058:0f10 6657 push edi
16.kd> t
0058:0f12 6689e3 mov ebx,esp
16.kd> t
0058:0f15 b86000 mov ax,60h
16.kd> t
0058:0f18 8ed8 mov ds,ax
16.kd> t
BD: Debugging NTLDR --By: diyhack
BD: Boot Debugger Initialized
osloader!DbgBreakPoint:
0040b0c6 cc int 3
#6868infuscomus⇗ @diderius6

can you try to do a jump over BlTerminalHandleLoaderFailure?
#6869diderius6⇗ @infuscomus
I find the place, from where this call happens in Master-ntldr

seg000:000108E7 loc_108E7: ; CODE XREF: seg000:000108DD j
seg000:000108E7                 call    sub_13F2F
seg000:000108EC                 call    sub_4D38
seg000:000108F1                 call    sub_1DDF6
seg000:000108F6                 call    sub_71E0
seg000:000108FB                 push    ebx
seg000:000108FC                 call    sub_FDAA
seg000:00010901                 test    byte ptr ds:42FC2Ch, 1
seg000:00010908                 jz      short loc_10936  <----- if ZERO, jump to BlTerminalHandleLoaderFailure
seg000:0001090A                 push    4203A4h
seg000:0001090F                 call    sub_EC5F
seg000:00010914                 mov     eax, ds:4222ECh
seg000:00010919                 pop     ecx
seg000:0001091A                 call    dword ptr [eax+54h]
seg000:0001091D                 mov     esi, eax
#6870infuscomus⇗ @diderius6

if you change to jnz, what happens?

 

Page 459

#6871diderius6⇗ @infuscomus
I just change to NOP NOP
now I test
Dietmar

PS: Hack works. debugger still running..
kd> 
osloader!NtProcessStartup+0x22d:
0040e6e6 e8e568ffff call osloader!BlIoInitialize (00404fd0)
kd>
osloader!NtProcessStartup+0x232:
0040e6eb 53 push ebx
kd>
osloader!NtProcessStartup+0x233:
0040e6ec e8a9f4ffff call osloader!BlStartup (0040db9a)
kd>
BD: 80A02000 \WINDOWS\system32\ntoskrnl.exe
BD: 80100000 \WINDOWS\system32\hal.dll
BD: 80010000 \WINDOWS\system32\kdcom.dll
BD: 80001000 \WINDOWS\system32\PSHED.dll
BD: 8000A000 \WINDOWS\system32\BOOTVID.dll
BD: 80138000 \WINDOWS\system32\CLFS.SYS
BD: 80173000 \WINDOWS\system32\CI.dll
osloader!NtProcessStartup+0x238:
0040e6f1 f6052cfc420001 test byte ptr [osloader!BootFlags (0042fc2c)],1
kd> t
osloader!NtProcessStartup+0x23f:
0040e6f8 90 nop
kd> t
osloader!NtProcessStartup+0x240:
0040e6f9 90 nop

kd> t
osloader!NtProcessStartup+0x241:
0040e6fa 68a4034200 push offset osloader!`string' (004203a4)
kd> t
osloader!NtProcessStartup+0x246:
0040e6ff e84be3ffff call osloader!BlPrint (0040ca4f)
kd> t
osloader!BlPrint:
0040ca4f 55 push ebp
kd> t
osloader!BlPrint+0x1:
0040ca50 8bec mov ebp,esp
kd> t
osloader!BlPrint+0x3:
0040ca52 83ec10 sub esp,10h
kd> t
osloader!BlPrint+0x6:
0040ca55 a1a8244200 mov eax,dword ptr [osloader!BlConsoleOutDeviceId (004224a8)]
kd> t
#6872diderius6⇗ @infuscomus
But does not help much
Dietmar

Microsoft (R) Windows Debugger Version 6.12.0002.633 X86
Copyright (c) Microsoft Corporation. All rights reserved.

Opened \\.\com1
Waiting to reconnect...
BD: Boot Debugger Initialized
Connected to Windows Boot Debugger 3790 x86 compatible target at (Thu Feb 25 12:01:53.325 2021 (UTC + 1:00)), ptr64 FALSE
Kernel Debugger connection established.
Symbol search path is: C:\WINDOWS\symbols
Executable search path is: C:\WINDOWS\symbols
Windows Boot Debugger Kernel Version 3790 UP Checked x86 compatible
Machine Name:
Primary image base = 0x00400000 Loaded module list = 0x0042fc9c
System Uptime: not available
Break instruction exception - code 80000003 (first chance)
osloader!DbgBreakPoint:
0040b0c6 cc int 3
kd> bc *
kd> bp 0040e6f1
kd> g
BD: 80A02000 \WINDOWS\system32\ntoskrnl.exe
BD: 80100000 \WINDOWS\system32\hal.dll
BD: 80010000 \WINDOWS\system32\kdcom.dll
BD: 80001000 \WINDOWS\system32\PSHED.dll
BD: 8000A000 \WINDOWS\system32\BOOTVID.dll
BD: 80138000 \WINDOWS\system32\CLFS.SYS
BD: 80173000 \WINDOWS\system32\CI.dll
Breakpoint 0 hit
osloader!NtProcessStartup+0x238:
0040e6f1 f6052cfc420001 test byte ptr [osloader!BootFlags (0042fc2c)],1
kd> p
osloader!NtProcessStartup+0x23f:
0040e6f8 90 nop
kd>
osloader!NtProcessStartup+0x240:
0040e6f9 90 nop
kd>
osloader!NtProcessStartup+0x241:
0040e6fa 68a4034200 push offset osloader!`string' (004203a4)
kd>
osloader!NtProcessStartup+0x246:
0040e6ff e84be3ffff call osloader!BlPrint (0040ca4f)
kd>
osloader!NtProcessStartup+0x24b:
0040e704 a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd>
osloader!NtProcessStartup+0x250:
0040e709 59 pop ecx
kd>
osloader!NtProcessStartup+0x251:
0040e70a ff5054 call dword ptr [eax+54h]
kd>
osloader!NtProcessStartup+0x254:
0040e70d 8bf0 mov esi,eax
kd>
osloader!NtProcessStartup+0x256:
0040e70f a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd>
osloader!NtProcessStartup+0x25b:
0040e714 ff5054 call dword ptr [eax+54h]
kd>
osloader!NtProcessStartup+0x25e:
0040e717 2bc6 sub eax,esi
kd>
osloader!NtProcessStartup+0x260:
0040e719 83f805 cmp eax,5
kd>
osloader!NtProcessStartup+0x263:
0040e71c 72f1 jb osloader!NtProcessStartup+0x256 (0040e70f)
kd>
osloader!NtProcessStartup+0x256:
0040e70f a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd>
osloader!NtProcessStartup+0x25b:
0040e714 ff5054 call dword ptr [eax+54h]
kd>
osloader!NtProcessStartup+0x25e:
0040e717 2bc6 sub eax,esi
kd>
osloader!NtProcessStartup+0x260:
0040e719 83f805 cmp eax,5
kd>
osloader!NtProcessStartup+0x263:
0040e71c 72f1 jb osloader!NtProcessStartup+0x256 (0040e70f)
kd>
osloader!NtProcessStartup+0x256:
0040e70f a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd>
osloader!NtProcessStartup+0x25b:
0040e714 ff5054 call dword ptr [eax+54h]
kd>
osloader!NtProcessStartup+0x25e:
0040e717 2bc6 sub eax,esi
kd>
osloader!NtProcessStartup+0x260:
0040e719 83f805 cmp eax,5
kd>
osloader!NtProcessStartup+0x263:
0040e71c 72f1 jb osloader!NtProcessStartup+0x256 (0040e70f)
kd>
osloader!NtProcessStartup+0x256:
0040e70f a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd>
osloader!NtProcessStartup+0x25b:
0040e714 ff5054 call dword ptr [eax+54h]
kd>
osloader!NtProcessStartup+0x25e:
0040e717 2bc6 sub eax,esi
kd>
osloader!NtProcessStartup+0x260:
0040e719 83f805 cmp eax,5
kd>
osloader!NtProcessStartup+0x263:
0040e71c 72f1 jb osloader!NtProcessStartup+0x256 (0040e70f)
kd>
osloader!NtProcessStartup+0x256:
0040e70f a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd>
osloader!NtProcessStartup+0x25b:
0040e714 ff5054 call dword ptr [eax+54h]
kd>
osloader!NtProcessStartup+0x25e:
0040e717 2bc6 sub eax,esi
kd>
osloader!NtProcessStartup+0x260:
0040e719 83f805 cmp eax,5
kd>
osloader!NtProcessStartup+0x263:
0040e71c 72f1 jb osloader!NtProcessStartup+0x256 (0040e70f)
kd>
osloader!NtProcessStartup+0x256:
0040e70f a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd>
osloader!NtProcessStartup+0x25b:
0040e714 ff5054 call dword ptr [eax+54h]
kd>
osloader!NtProcessStartup+0x25e:
0040e717 2bc6 sub eax,esi
kd>
osloader!NtProcessStartup+0x260:
0040e719 83f805 cmp eax,5
kd>
osloader!NtProcessStartup+0x263:
0040e71c 72f1 jb osloader!NtProcessStartup+0x256 (0040e70f)
kd>
osloader!NtProcessStartup+0x256:
0040e70f a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd>
osloader!NtProcessStartup+0x25b:
0040e714 ff5054 call dword ptr [eax+54h]
kd>
osloader!NtProcessStartup+0x25e:
0040e717 2bc6 sub eax,esi
kd>
osloader!NtProcessStartup+0x260:
0040e719 83f805 cmp eax,5
kd>
osloader!NtProcessStartup+0x263:
0040e71c 72f1 jb osloader!NtProcessStartup+0x256 (0040e70f)
kd>
osloader!NtProcessStartup+0x256:
0040e70f a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd>
osloader!NtProcessStartup+0x25b:
0040e714 ff5054 call dword ptr [eax+54h]
kd>
osloader!NtProcessStartup+0x25e:
0040e717 2bc6 sub eax,esi
kd>
osloader!NtProcessStartup+0x260:
0040e719 83f805 cmp eax,5
kd>
osloader!NtProcessStartup+0x263:
0040e71c 72f1 jb osloader!NtProcessStartup+0x256 (0040e70f)
kd>
osloader!NtProcessStartup+0x256:
0040e70f a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd>
osloader!NtProcessStartup+0x25b:
0040e714 ff5054 call dword ptr [eax+54h]
kd>
osloader!NtProcessStartup+0x25e:
0040e717 2bc6 sub eax,esi
kd>
osloader!NtProcessStartup+0x260:
0040e719 83f805 cmp eax,5
kd>
osloader!NtProcessStartup+0x263:
0040e71c 72f1 jb osloader!NtProcessStartup+0x256 (0040e70f)
kd>
osloader!NtProcessStartup+0x256:
0040e70f a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd>
osloader!NtProcessStartup+0x25b:
0040e714 ff5054 call dword ptr [eax+54h]
kd>
osloader!NtProcessStartup+0x25e:
0040e717 2bc6 sub eax,esi
kd>
osloader!NtProcessStartup+0x260:
0040e719 83f805 cmp eax,5
kd>
osloader!NtProcessStartup+0x263:
0040e71c 72f1 jb osloader!NtProcessStartup+0x256 (0040e70f)
kd>
osloader!NtProcessStartup+0x256:
0040e70f a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd>
osloader!NtProcessStartup+0x25b:
0040e714 ff5054 call dword ptr [eax+54h]
kd>
osloader!NtProcessStartup+0x25e:
0040e717 2bc6 sub eax,esi
kd>
osloader!NtProcessStartup+0x260:
0040e719 83f805 cmp eax,5
kd>
osloader!NtProcessStartup+0x263:
0040e71c 72f1 jb osloader!NtProcessStartup+0x256 (0040e70f)
kd>
osloader!NtProcessStartup+0x256:
0040e70f a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd>
osloader!NtProcessStartup+0x25b:
0040e714 ff5054 call dword ptr [eax+54h]
kd>
osloader!NtProcessStartup+0x25e:
0040e717 2bc6 sub eax,esi
kd>
osloader!NtProcessStartup+0x260:
0040e719 83f805 cmp eax,5
kd>
osloader!NtProcessStartup+0x263:
0040e71c 72f1 jb osloader!NtProcessStartup+0x256 (0040e70f)
kd>
osloader!NtProcessStartup+0x256:
0040e70f a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd>
osloader!NtProcessStartup+0x25b:
0040e714 ff5054 call dword ptr [eax+54h]
kd>
osloader!NtProcessStartup+0x25e:
0040e717 2bc6 sub eax,esi
kd>
osloader!NtProcessStartup+0x260:
0040e719 83f805 cmp eax,5
kd>
osloader!NtProcessStartup+0x263:
0040e71c 72f1 jb osloader!NtProcessStartup+0x256 (0040e70f)
kd>
osloader!NtProcessStartup+0x256:
0040e70f a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd>
osloader!NtProcessStartup+0x25b:
0040e714 ff5054 call dword ptr [eax+54h]
kd>
osloader!NtProcessStartup+0x25e:
0040e717 2bc6 sub eax,esi
kd>
osloader!NtProcessStartup+0x260:
0040e719 83f805 cmp eax,5
kd>
osloader!NtProcessStartup+0x263:
0040e71c 72f1 jb osloader!NtProcessStartup+0x256 (0040e70f)
kd>
osloader!NtProcessStartup+0x256:
0040e70f a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd>
osloader!NtProcessStartup+0x25b:
0040e714 ff5054 call dword ptr [eax+54h]
kd>
osloader!NtProcessStartup+0x25e:
0040e717 2bc6 sub eax,esi
kd>
osloader!NtProcessStartup+0x260:
0040e719 83f805 cmp eax,5
kd>
osloader!NtProcessStartup+0x263:
0040e71c 72f1 jb osloader!NtProcessStartup+0x256 (0040e70f)
kd>
osloader!NtProcessStartup+0x256:
0040e70f a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd>
osloader!NtProcessStartup+0x25b:
0040e714 ff5054 call dword ptr [eax+54h]
kd>
osloader!NtProcessStartup+0x25e:
0040e717 2bc6 sub eax,esi
kd>
osloader!NtProcessStartup+0x260:
0040e719 83f805 cmp eax,5
kd>
osloader!NtProcessStartup+0x263:
0040e71c 72f1 jb osloader!NtProcessStartup+0x256 (0040e70f)
kd>
osloader!NtProcessStartup+0x256:
0040e70f a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd>
osloader!NtProcessStartup+0x25b:
0040e714 ff5054 call dword ptr [eax+54h]
kd>
osloader!NtProcessStartup+0x25e:
0040e717 2bc6 sub eax,esi
kd>
osloader!NtProcessStartup+0x260:
0040e719 83f805 cmp eax,5
kd>
osloader!NtProcessStartup+0x263:
0040e71c 72f1 jb osloader!NtProcessStartup+0x256 (0040e70f)
kd>
osloader!NtProcessStartup+0x256:
0040e70f a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd>
osloader!NtProcessStartup+0x25b:
0040e714 ff5054 call dword ptr [eax+54h]
kd>
osloader!NtProcessStartup+0x25e:
0040e717 2bc6 sub eax,esi
kd>
osloader!NtProcessStartup+0x260:
0040e719 83f805 cmp eax,5
kd>
osloader!NtProcessStartup+0x263:
0040e71c 72f1 jb osloader!NtProcessStartup+0x256 (0040e70f)
kd>
osloader!NtProcessStartup+0x256:
0040e70f a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd>
osloader!NtProcessStartup+0x25b:
0040e714 ff5054 call dword ptr [eax+54h]
kd>
osloader!NtProcessStartup+0x25e:
0040e717 2bc6 sub eax,esi
kd>
osloader!NtProcessStartup+0x260:
0040e719 83f805 cmp eax,5
kd>
osloader!NtProcessStartup+0x263:
0040e71c 72f1 jb osloader!NtProcessStartup+0x256 (0040e70f)
kd>
osloader!NtProcessStartup+0x256:
0040e70f a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd>
osloader!NtProcessStartup+0x25b:
0040e714 ff5054 call dword ptr [eax+54h]
kd>
osloader!NtProcessStartup+0x25e:
0040e717 2bc6 sub eax,esi
kd>
osloader!NtProcessStartup+0x260:
0040e719 83f805 cmp eax,5
kd>
osloader!NtProcessStartup+0x263:
0040e71c 72f1 jb osloader!NtProcessStartup+0x256 (0040e70f)
kd>
osloader!NtProcessStartup+0x256:
0040e70f a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd>
osloader!NtProcessStartup+0x25b:
0040e714 ff5054 call dword ptr [eax+54h]
kd>
osloader!NtProcessStartup+0x25e:
0040e717 2bc6 sub eax,esi
kd>
osloader!NtProcessStartup+0x260:
0040e719 83f805 cmp eax,5
kd>
osloader!NtProcessStartup+0x263:
0040e71c 72f1 jb osloader!NtProcessStartup+0x256 (0040e70f)
kd>
osloader!NtProcessStartup+0x256:
0040e70f a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd>
osloader!NtProcessStartup+0x25b:
0040e714 ff5054 call dword ptr [eax+54h]
kd>
osloader!NtProcessStartup+0x25e:
0040e717 2bc6 sub eax,esi
kd>
osloader!NtProcessStartup+0x260:
0040e719 83f805 cmp eax,5
kd>
osloader!NtProcessStartup+0x263:
0040e71c 72f1 jb osloader!NtProcessStartup+0x256 (0040e70f)
kd>
osloader!NtProcessStartup+0x256:
0040e70f a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd>
osloader!NtProcessStartup+0x25b:
0040e714 ff5054 call dword ptr [eax+54h]
kd>
osloader!NtProcessStartup+0x25e:
0040e717 2bc6 sub eax,esi
kd>
osloader!NtProcessStartup+0x260:
0040e719 83f805 cmp eax,5
kd>
osloader!NtProcessStartup+0x263:
0040e71c 72f1 jb osloader!NtProcessStartup+0x256 (0040e70f)
kd>
osloader!NtProcessStartup+0x256:
0040e70f a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd>
osloader!NtProcessStartup+0x25b:
0040e714 ff5054 call dword ptr [eax+54h]
kd>
osloader!NtProcessStartup+0x25e:
0040e717 2bc6 sub eax,esi
kd>
osloader!NtProcessStartup+0x260:
0040e719 83f805 cmp eax,5
kd>
osloader!NtProcessStartup+0x263:
0040e71c 72f1 jb osloader!NtProcessStartup+0x256 (0040e70f)
kd>
osloader!NtProcessStartup+0x256:
0040e70f a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd>
osloader!NtProcessStartup+0x25b:
0040e714 ff5054 call dword ptr [eax+54h]
kd>
osloader!NtProcessStartup+0x25e:
0040e717 2bc6 sub eax,esi
kd>
osloader!NtProcessStartup+0x260:
0040e719 83f805 cmp eax,5
kd>
osloader!NtProcessStartup+0x263:
0040e71c 72f1 jb osloader!NtProcessStartup+0x256 (0040e70f)
kd>
osloader!NtProcessStartup+0x256:
0040e70f a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd>
osloader!NtProcessStartup+0x25b:
0040e714 ff5054 call dword ptr [eax+54h]
kd>
osloader!NtProcessStartup+0x25e:
0040e717 2bc6 sub eax,esi
kd>
osloader!NtProcessStartup+0x260:
0040e719 83f805 cmp eax,5
kd>
osloader!NtProcessStartup+0x263:
0040e71c 72f1 jb osloader!NtProcessStartup+0x256 (0040e70f)
kd>
osloader!NtProcessStartup+0x256:
0040e70f a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd>
osloader!NtProcessStartup+0x25b:
0040e714 ff5054 call dword ptr [eax+54h]
kd>
osloader!NtProcessStartup+0x25e:
0040e717 2bc6 sub eax,esi
kd>
osloader!NtProcessStartup+0x260:
0040e719 83f805 cmp eax,5
kd>
osloader!NtProcessStartup+0x263:
0040e71c 72f1 jb osloader!NtProcessStartup+0x256 (0040e70f)
kd>
osloader!NtProcessStartup+0x256:
0040e70f a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd>
osloader!NtProcessStartup+0x25b:
0040e714 ff5054 call dword ptr [eax+54h]
kd>
osloader!NtProcessStartup+0x25e:
0040e717 2bc6 sub eax,esi
kd>
osloader!NtProcessStartup+0x260:
0040e719 83f805 cmp eax,5
kd>
osloader!NtProcessStartup+0x263:
0040e71c 72f1 jb osloader!NtProcessStartup+0x256 (0040e70f)
kd>
osloader!NtProcessStartup+0x256:
0040e70f a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd>
osloader!NtProcessStartup+0x25b:
0040e714 ff5054 call dword ptr [eax+54h]
kd>
osloader!NtProcessStartup+0x25e:
0040e717 2bc6 sub eax,esi
kd>
osloader!NtProcessStartup+0x260:
0040e719 83f805 cmp eax,5
kd>
osloader!NtProcessStartup+0x263:
0040e71c 72f1 jb osloader!NtProcessStartup+0x256 (0040e70f)
kd>
osloader!NtProcessStartup+0x256:
0040e70f a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd>
osloader!NtProcessStartup+0x25b:
0040e714 ff5054 call dword ptr [eax+54h]
kd>
osloader!NtProcessStartup+0x25e:
0040e717 2bc6 sub eax,esi
kd>
osloader!NtProcessStartup+0x260:
0040e719 83f805 cmp eax,5
kd>
osloader!NtProcessStartup+0x263:
0040e71c 72f1 jb osloader!NtProcessStartup+0x256 (0040e70f)
kd>
osloader!NtProcessStartup+0x256:
0040e70f a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd>
osloader!NtProcessStartup+0x25b:
0040e714 ff5054 call dword ptr [eax+54h]
kd>
osloader!NtProcessStartup+0x25e:
0040e717 2bc6 sub eax,esi
kd>
osloader!NtProcessStartup+0x260:
0040e719 83f805 cmp eax,5
kd>
osloader!NtProcessStartup+0x263:
0040e71c 72f1 jb osloader!NtProcessStartup+0x256 (0040e70f)
kd>
osloader!NtProcessStartup+0x256:
0040e70f a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd>
osloader!NtProcessStartup+0x25b:
0040e714 ff5054 call dword ptr [eax+54h]
kd>
osloader!NtProcessStartup+0x25e:
0040e717 2bc6 sub eax,esi
kd>
osloader!NtProcessStartup+0x260:
0040e719 83f805 cmp eax,5
kd>
osloader!NtProcessStartup+0x263:
0040e71c 72f1 jb osloader!NtProcessStartup+0x256 (0040e70f)
kd>
osloader!NtProcessStartup+0x256:
0040e70f a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd>
osloader!NtProcessStartup+0x25b:
0040e714 ff5054 call dword ptr [eax+54h]
kd>
osloader!NtProcessStartup+0x25e:
0040e717 2bc6 sub eax,esi
kd>
osloader!NtProcessStartup+0x260:
0040e719 83f805 cmp eax,5
kd>
osloader!NtProcessStartup+0x263:
0040e71c 72f1 jb osloader!NtProcessStartup+0x256 (0040e70f)
kd>
osloader!NtProcessStartup+0x256:
0040e70f a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd>
osloader!NtProcessStartup+0x25b:
0040e714 ff5054 call dword ptr [eax+54h]
kd>
osloader!NtProcessStartup+0x25e:
0040e717 2bc6 sub eax,esi
kd>
osloader!NtProcessStartup+0x260:
0040e719 83f805 cmp eax,5
kd>
osloader!NtProcessStartup+0x263:
0040e71c 72f1 jb osloader!NtProcessStartup+0x256 (0040e70f)
kd>
osloader!NtProcessStartup+0x256:
0040e70f a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd>
osloader!NtProcessStartup+0x25b:
0040e714 ff5054 call dword ptr [eax+54h]
kd>
osloader!NtProcessStartup+0x25e:
0040e717 2bc6 sub eax,esi
kd>
osloader!NtProcessStartup+0x260:
0040e719 83f805 cmp eax,5
kd>
osloader!NtProcessStartup+0x263:
0040e71c 72f1 jb osloader!NtProcessStartup+0x256 (0040e70f)
kd>
osloader!NtProcessStartup+0x256:
0040e70f a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd>
osloader!NtProcessStartup+0x25b:
0040e714 ff5054 call dword ptr [eax+54h]
kd>
osloader!NtProcessStartup+0x25e:
0040e717 2bc6 sub eax,esi
kd>
osloader!NtProcessStartup+0x260:
0040e719 83f805 cmp eax,5
kd>
osloader!NtProcessStartup+0x263:
0040e71c 72f1 jb osloader!NtProcessStartup+0x256 (0040e70f)
kd>
osloader!NtProcessStartup+0x256:
0040e70f a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd>
osloader!NtProcessStartup+0x25b:
0040e714 ff5054 call dword ptr [eax+54h]
kd>
osloader!NtProcessStartup+0x25e:
0040e717 2bc6 sub eax,esi
kd>
osloader!NtProcessStartup+0x260:
0040e719 83f805 cmp eax,5
kd>
osloader!NtProcessStartup+0x263:
0040e71c 72f1 jb osloader!NtProcessStartup+0x256 (0040e70f)
kd>
osloader!NtProcessStartup+0x256:
0040e70f a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd>
osloader!NtProcessStartup+0x25b:
0040e714 ff5054 call dword ptr [eax+54h]
kd>
osloader!NtProcessStartup+0x25e:
0040e717 2bc6 sub eax,esi
kd>
osloader!NtProcessStartup+0x260:
0040e719 83f805 cmp eax,5
kd>
osloader!NtProcessStartup+0x263:
0040e71c 72f1 jb osloader!NtProcessStartup+0x256 (0040e70f)
kd>
osloader!NtProcessStartup+0x256:
0040e70f a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd>
osloader!NtProcessStartup+0x25b:
0040e714 ff5054 call dword ptr [eax+54h]
kd>
osloader!NtProcessStartup+0x25e:
0040e717 2bc6 sub eax,esi
kd>
osloader!NtProcessStartup+0x260:
0040e719 83f805 cmp eax,5
kd>
osloader!NtProcessStartup+0x263:
0040e71c 72f1 jb osloader!NtProcessStartup+0x256 (0040e70f)
kd>
osloader!NtProcessStartup+0x256:
0040e70f a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd>
osloader!NtProcessStartup+0x25b:
0040e714 ff5054 call dword ptr [eax+54h]
kd>
osloader!NtProcessStartup+0x25e:
0040e717 2bc6 sub eax,esi
kd>
osloader!NtProcessStartup+0x260:
0040e719 83f805 cmp eax,5
kd>
osloader!NtProcessStartup+0x263:
0040e71c 72f1 jb osloader!NtProcessStartup+0x256 (0040e70f)
kd>
osloader!NtProcessStartup+0x256:
0040e70f a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd>
osloader!NtProcessStartup+0x25b:
0040e714 ff5054 call dword ptr [eax+54h]
kd>
osloader!NtProcessStartup+0x25e:
0040e717 2bc6 sub eax,esi
kd>
osloader!NtProcessStartup+0x260:
0040e719 83f805 cmp eax,5
kd>
osloader!NtProcessStartup+0x263:
0040e71c 72f1 jb osloader!NtProcessStartup+0x256 (0040e70f)
kd>
osloader!NtProcessStartup+0x256:
0040e70f a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd>
osloader!NtProcessStartup+0x25b:
0040e714 ff5054 call dword ptr [eax+54h]
kd>
osloader!NtProcessStartup+0x25e:
0040e717 2bc6 sub eax,esi
kd>
osloader!NtProcessStartup+0x260:
0040e719 83f805 cmp eax,5
kd>
osloader!NtProcessStartup+0x263:
0040e71c 72f1 jb osloader!NtProcessStartup+0x256 (0040e70f)
kd>
osloader!NtProcessStartup+0x256:
0040e70f a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd>
osloader!NtProcessStartup+0x25b:
0040e714 ff5054 call dword ptr [eax+54h]
kd>
osloader!NtProcessStartup+0x25e:
0040e717 2bc6 sub eax,esi
kd>
osloader!NtProcessStartup+0x260:
0040e719 83f805 cmp eax,5
kd>
osloader!NtProcessStartup+0x263:
0040e71c 72f1 jb osloader!NtProcessStartup+0x256 (0040e70f)
kd>
osloader!NtProcessStartup+0x256:
0040e70f a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd>
osloader!NtProcessStartup+0x25b:
0040e714 ff5054 call dword ptr [eax+54h]
kd>
osloader!NtProcessStartup+0x25e:
0040e717 2bc6 sub eax,esi
kd>
osloader!NtProcessStartup+0x260:
0040e719 83f805 cmp eax,5
kd>
osloader!NtProcessStartup+0x263:
0040e71c 72f1 jb osloader!NtProcessStartup+0x256 (0040e70f)
kd>
osloader!NtProcessStartup+0x256:
0040e70f a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd>
osloader!NtProcessStartup+0x25b:
0040e714 ff5054 call dword ptr [eax+54h]
kd>
osloader!NtProcessStartup+0x25e:
0040e717 2bc6 sub eax,esi
kd>
osloader!NtProcessStartup+0x260:
0040e719 83f805 cmp eax,5
kd>
osloader!NtProcessStartup+0x263:
0040e71c 72f1 jb osloader!NtProcessStartup+0x256 (0040e70f)
kd>
osloader!NtProcessStartup+0x256:
0040e70f a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd>
osloader!NtProcessStartup+0x25b:
0040e714 ff5054 call dword ptr [eax+54h]
kd>
osloader!NtProcessStartup+0x25e:
0040e717 2bc6 sub eax,esi
kd>
osloader!NtProcessStartup+0x260:
0040e719 83f805 cmp eax,5
kd>
osloader!NtProcessStartup+0x263:
0040e71c 72f1 jb osloader!NtProcessStartup+0x256 (0040e70f)
kd>
osloader!NtProcessStartup+0x256:
0040e70f a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd>
osloader!NtProcessStartup+0x25b:
0040e714 ff5054 call dword ptr [eax+54h]
kd>
osloader!NtProcessStartup+0x25e:
0040e717 2bc6 sub eax,esi
kd>
osloader!NtProcessStartup+0x260:
0040e719 83f805 cmp eax,5
kd>
osloader!NtProcessStartup+0x263:
0040e71c 72f1 jb osloader!NtProcessStartup+0x256 (0040e70f)
kd>
osloader!NtProcessStartup+0x256:
0040e70f a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd>
osloader!NtProcessStartup+0x25b:
0040e714 ff5054 call dword ptr [eax+54h]
kd>
osloader!NtProcessStartup+0x25e:
0040e717 2bc6 sub eax,esi
kd>
osloader!NtProcessStartup+0x260:
0040e719 83f805 cmp eax,5
kd>
osloader!NtProcessStartup+0x263:
0040e71c 72f1 jb osloader!NtProcessStartup+0x256 (0040e70f)
kd>
osloader!NtProcessStartup+0x256:
0040e70f a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd>
osloader!NtProcessStartup+0x25b:
0040e714 ff5054 call dword ptr [eax+54h]
kd>
osloader!NtProcessStartup+0x25e:
0040e717 2bc6 sub eax,esi
kd>
osloader!NtProcessStartup+0x260:
0040e719 83f805 cmp eax,5
kd>
osloader!NtProcessStartup+0x263:
0040e71c 72f1 jb osloader!NtProcessStartup+0x256 (0040e70f)
kd>
osloader!NtProcessStartup+0x256:
0040e70f a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd>
osloader!NtProcessStartup+0x25b:
0040e714 ff5054 call dword ptr [eax+54h]
kd>
osloader!NtProcessStartup+0x25e:
0040e717 2bc6 sub eax,esi
kd>
osloader!NtProcessStartup+0x260:
0040e719 83f805 cmp eax,5
kd>
osloader!NtProcessStartup+0x263:
0040e71c 72f1 jb osloader!NtProcessStartup+0x256 (0040e70f)
kd>
osloader!NtProcessStartup+0x256:
0040e70f a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd>
osloader!NtProcessStartup+0x25b:
0040e714 ff5054 call dword ptr [eax+54h]
kd>
osloader!NtProcessStartup+0x25e:
0040e717 2bc6 sub eax,esi
kd>
osloader!NtProcessStartup+0x260:
0040e719 83f805 cmp eax,5
kd>
osloader!NtProcessStartup+0x263:
0040e71c 72f1 jb osloader!NtProcessStartup+0x256 (0040e70f)
kd>
osloader!NtProcessStartup+0x256:
0040e70f a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd>
osloader!NtProcessStartup+0x25b:
0040e714 ff5054 call dword ptr [eax+54h]
kd>
osloader!NtProcessStartup+0x25e:
0040e717 2bc6 sub eax,esi
kd>
osloader!NtProcessStartup+0x260:
0040e719 83f805 cmp eax,5
kd>
osloader!NtProcessStartup+0x263:
0040e71c 72f1 jb osloader!NtProcessStartup+0x256 (0040e70f)
kd>
osloader!NtProcessStartup+0x256:
0040e70f a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd>
osloader!NtProcessStartup+0x25b:
0040e714 ff5054 call dword ptr [eax+54h]
kd>
osloader!NtProcessStartup+0x25e:
0040e717 2bc6 sub eax,esi
kd>
osloader!NtProcessStartup+0x260:
0040e719 83f805 cmp eax,5
kd>
osloader!NtProcessStartup+0x263:
0040e71c 72f1 jb osloader!NtProcessStartup+0x256 (0040e70f)
kd>
osloader!NtProcessStartup+0x256:
0040e70f a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd>
osloader!NtProcessStartup+0x25b:
0040e714 ff5054 call dword ptr [eax+54h]
kd>
osloader!NtProcessStartup+0x25e:
0040e717 2bc6 sub eax,esi
kd>
osloader!NtProcessStartup+0x260:
0040e719 83f805 cmp eax,5
kd>
osloader!NtProcessStartup+0x263:
0040e71c 72f1 jb osloader!NtProcessStartup+0x256 (0040e70f)
kd>
osloader!NtProcessStartup+0x256:
0040e70f a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd>
osloader!NtProcessStartup+0x25b:
0040e714 ff5054 call dword ptr [eax+54h]
kd>
osloader!NtProcessStartup+0x25e:
0040e717 2bc6 sub eax,esi
kd>
osloader!NtProcessStartup+0x260:
0040e719 83f805 cmp eax,5
kd>
osloader!NtProcessStartup+0x263:
0040e71c 72f1 jb osloader!NtProcessStartup+0x256 (0040e70f)
kd>
osloader!NtProcessStartup+0x256:
0040e70f a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd>
osloader!NtProcessStartup+0x25b:
0040e714 ff5054 call dword ptr [eax+54h]
kd>
osloader!NtProcessStartup+0x25e:
0040e717 2bc6 sub eax,esi
kd>
osloader!NtProcessStartup+0x260:
0040e719 83f805 cmp eax,5
kd>
osloader!NtProcessStartup+0x263:
0040e71c 72f1 jb osloader!NtProcessStartup+0x256 (0040e70f)
kd>
osloader!NtProcessStartup+0x256:
0040e70f a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd>
osloader!NtProcessStartup+0x25b:
0040e714 ff5054 call dword ptr [eax+54h]
kd>
osloader!NtProcessStartup+0x25e:
0040e717 2bc6 sub eax,esi
kd>
osloader!NtProcessStartup+0x260:
0040e719 83f805 cmp eax,5
kd>
osloader!NtProcessStartup+0x263:
0040e71c 72f1 jb osloader!NtProcessStartup+0x256 (0040e70f)
kd>
osloader!NtProcessStartup+0x256:
0040e70f a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd>
osloader!NtProcessStartup+0x25b:
0040e714 ff5054 call dword ptr [eax+54h]
kd>
osloader!NtProcessStartup+0x25e:
0040e717 2bc6 sub eax,esi
kd>
osloader!NtProcessStartup+0x260:
0040e719 83f805 cmp eax,5
kd>
osloader!NtProcessStartup+0x263:
0040e71c 72f1 jb osloader!NtProcessStartup+0x256 (0040e70f)
kd>
osloader!NtProcessStartup+0x256:
0040e70f a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd>
osloader!NtProcessStartup+0x25b:
0040e714 ff5054 call dword ptr [eax+54h]
kd>
osloader!NtProcessStartup+0x25e:
0040e717 2bc6 sub eax,esi
kd>
osloader!NtProcessStartup+0x260:
0040e719 83f805 cmp eax,5
kd>
osloader!NtProcessStartup+0x263:
0040e71c 72f1 jb osloader!NtProcessStartup+0x256 (0040e70f)
kd>
osloader!NtProcessStartup+0x256:
0040e70f a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd>
osloader!NtProcessStartup+0x25b:
0040e714 ff5054 call dword ptr [eax+54h]
kd>
osloader!NtProcessStartup+0x25e:
0040e717 2bc6 sub eax,esi
kd>
osloader!NtProcessStartup+0x260:
0040e719 83f805 cmp eax,5
kd>
osloader!NtProcessStartup+0x263:
0040e71c 72f1 jb osloader!NtProcessStartup+0x256 (0040e70f)
kd>
osloader!NtProcessStartup+0x256:
0040e70f a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd>
osloader!NtProcessStartup+0x25b:
0040e714 ff5054 call dword ptr [eax+54h]
kd>
osloader!NtProcessStartup+0x25e:
0040e717 2bc6 sub eax,esi
kd>
osloader!NtProcessStartup+0x260:
0040e719 83f805 cmp eax,5
kd>
osloader!NtProcessStartup+0x263:
0040e71c 72f1 jb osloader!NtProcessStartup+0x256 (0040e70f)
kd>
osloader!NtProcessStartup+0x256:
0040e70f a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd>
osloader!NtProcessStartup+0x25b:
0040e714 ff5054 call dword ptr [eax+54h]
kd>
osloader!NtProcessStartup+0x25e:
0040e717 2bc6 sub eax,esi
kd>
osloader!NtProcessStartup+0x260:
0040e719 83f805 cmp eax,5
kd>
osloader!NtProcessStartup+0x263:
0040e71c 72f1 jb osloader!NtProcessStartup+0x256 (0040e70f)
kd>
osloader!NtProcessStartup+0x256:
0040e70f a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd>
osloader!NtProcessStartup+0x25b:
0040e714 ff5054 call dword ptr [eax+54h]
kd>
osloader!NtProcessStartup+0x25e:
0040e717 2bc6 sub eax,esi
kd>
osloader!NtProcessStartup+0x260:
0040e719 83f805 cmp eax,5
kd>
osloader!NtProcessStartup+0x263:
0040e71c 72f1 jb osloader!NtProcessStartup+0x256 (0040e70f)
kd>
osloader!NtProcessStartup+0x256:
0040e70f a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd>
osloader!NtProcessStartup+0x25b:
0040e714 ff5054 call dword ptr [eax+54h]
kd>
osloader!NtProcessStartup+0x25e:
0040e717 2bc6 sub eax,esi
kd>
osloader!NtProcessStartup+0x260:
0040e719 83f805 cmp eax,5
kd>
osloader!NtProcessStartup+0x263:
0040e71c 72f1 jb osloader!NtProcessStartup+0x256 (0040e70f)
kd>
osloader!NtProcessStartup+0x256:
0040e70f a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd>
osloader!NtProcessStartup+0x25b:
0040e714 ff5054 call dword ptr [eax+54h]
kd>
osloader!NtProcessStartup+0x25e:
0040e717 2bc6 sub eax,esi
kd>
osloader!NtProcessStartup+0x260:
0040e719 83f805 cmp eax,5
kd>
osloader!NtProcessStartup+0x263:
0040e71c 72f1 jb osloader!NtProcessStartup+0x256 (0040e70f)
kd>
osloader!NtProcessStartup+0x256:
0040e70f a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd>
osloader!NtProcessStartup+0x25b:
0040e714 ff5054 call dword ptr [eax+54h]
kd>
osloader!NtProcessStartup+0x25e:
0040e717 2bc6 sub eax,esi
kd>
osloader!NtProcessStartup+0x260:
0040e719 83f805 cmp eax,5
kd>
osloader!NtProcessStartup+0x263:
0040e71c 72f1 jb osloader!NtProcessStartup+0x256 (0040e70f)
kd>
osloader!NtProcessStartup+0x256:
0040e70f a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd>
osloader!NtProcessStartup+0x25b:
0040e714 ff5054 call dword ptr [eax+54h]
kd>
osloader!NtProcessStartup+0x25e:
0040e717 2bc6 sub eax,esi
kd>
osloader!NtProcessStartup+0x260:
0040e719 83f805 cmp eax,5
kd>
osloader!NtProcessStartup+0x263:
0040e71c 72f1 jb osloader!NtProcessStartup+0x256 (0040e70f)
kd>
osloader!NtProcessStartup+0x256:
0040e70f a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd>
osloader!NtProcessStartup+0x25b:
0040e714 ff5054 call dword ptr [eax+54h]
kd>
osloader!NtProcessStartup+0x25e:
0040e717 2bc6 sub eax,esi
kd>
osloader!NtProcessStartup+0x260:
0040e719 83f805 cmp eax,5
kd>
osloader!NtProcessStartup+0x263:
0040e71c 72f1 jb osloader!NtProcessStartup+0x256 (0040e70f)
kd>
osloader!NtProcessStartup+0x256:
0040e70f a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd>
osloader!NtProcessStartup+0x25b:
0040e714 ff5054 call dword ptr [eax+54h]
kd>
osloader!NtProcessStartup+0x25e:
0040e717 2bc6 sub eax,esi
kd>
osloader!NtProcessStartup+0x260:
0040e719 83f805 cmp eax,5
kd>
osloader!NtProcessStartup+0x263:
0040e71c 72f1 jb osloader!NtProcessStartup+0x256 (0040e70f)
kd>
osloader!NtProcessStartup+0x256:
0040e70f a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd>
osloader!NtProcessStartup+0x25b:
0040e714 ff5054 call dword ptr [eax+54h]
kd>
osloader!NtProcessStartup+0x25e:
0040e717 2bc6 sub eax,esi
kd>
osloader!NtProcessStartup+0x260:
0040e719 83f805 cmp eax,5
kd>
osloader!NtProcessStartup+0x263:
0040e71c 72f1 jb osloader!NtProcessStartup+0x256 (0040e70f)
kd>
osloader!NtProcessStartup+0x256:
0040e70f a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd>
osloader!NtProcessStartup+0x25b:
0040e714 ff5054 call dword ptr [eax+54h]
kd>
osloader!NtProcessStartup+0x25e:
0040e717 2bc6 sub eax,esi
kd>
osloader!NtProcessStartup+0x260:
0040e719 83f805 cmp eax,5
kd>
osloader!NtProcessStartup+0x263:
0040e71c 72f1 jb osloader!NtProcessStartup+0x256 (0040e70f)
kd>
osloader!NtProcessStartup+0x256:
0040e70f a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd>
osloader!NtProcessStartup+0x25b:
0040e714 ff5054 call dword ptr [eax+54h]
kd>
osloader!NtProcessStartup+0x25e:
0040e717 2bc6 sub eax,esi
kd>
osloader!NtProcessStartup+0x260:
0040e719 83f805 cmp eax,5
kd>
osloader!NtProcessStartup+0x263:
0040e71c 72f1 jb osloader!NtProcessStartup+0x256 (0040e70f)
kd>
osloader!NtProcessStartup+0x256:
0040e70f a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd>
osloader!NtProcessStartup+0x25b:
0040e714 ff5054 call dword ptr [eax+54h]
kd>
osloader!NtProcessStartup+0x25e:
0040e717 2bc6 sub eax,esi
kd>
osloader!NtProcessStartup+0x260:
0040e719 83f805 cmp eax,5
kd>
osloader!NtProcessStartup+0x263:
0040e71c 72f1 jb osloader!NtProcessStartup+0x256 (0040e70f)
kd>
osloader!NtProcessStartup+0x256:
0040e70f a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd>
osloader!NtProcessStartup+0x25b:
0040e714 ff5054 call dword ptr [eax+54h]
kd>
osloader!NtProcessStartup+0x25e:
0040e717 2bc6 sub eax,esi
kd>
osloader!NtProcessStartup+0x260:
0040e719 83f805 cmp eax,5
kd>
osloader!NtProcessStartup+0x263:
0040e71c 72f1 jb osloader!NtProcessStartup+0x256 (0040e70f)
kd>
osloader!NtProcessStartup+0x256:
0040e70f a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd>
osloader!NtProcessStartup+0x25b:
0040e714 ff5054 call dword ptr [eax+54h]
kd>
osloader!NtProcessStartup+0x25e:
0040e717 2bc6 sub eax,esi
kd>
osloader!NtProcessStartup+0x260:
0040e719 83f805 cmp eax,5
kd>
osloader!NtProcessStartup+0x263:
0040e71c 72f1 jb osloader!NtProcessStartup+0x256 (0040e70f)
kd>
osloader!NtProcessStartup+0x256:
0040e70f a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd>
osloader!NtProcessStartup+0x25b:
0040e714 ff5054 call dword ptr [eax+54h]
kd>
osloader!NtProcessStartup+0x25e:
0040e717 2bc6 sub eax,esi
kd>
osloader!NtProcessStartup+0x260:
0040e719 83f805 cmp eax,5
kd>
osloader!NtProcessStartup+0x263:
0040e71c 72f1 jb osloader!NtProcessStartup+0x256 (0040e70f)
kd>
osloader!NtProcessStartup+0x256:
0040e70f a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd>
osloader!NtProcessStartup+0x25b:
0040e714 ff5054 call dword ptr [eax+54h]
kd>
osloader!NtProcessStartup+0x25e:
0040e717 2bc6 sub eax,esi
kd>
osloader!NtProcessStartup+0x260:
0040e719 83f805 cmp eax,5
kd>
osloader!NtProcessStartup+0x263:
0040e71c 72f1 jb osloader!NtProcessStartup+0x256 (0040e70f)
kd>
osloader!NtProcessStartup+0x265:
0040e71e a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd>
osloader!NtProcessStartup+0x26a:
0040e723 ff5014 call dword ptr [eax+14h]
kd>
Shutdown occurred at (Thu Feb 25 12:04:31.529 2021 (UTC + 1:00))...unloading all symbol tables.
Waiting to reconnect...
BD: Debugging NTLDR --By: diyhack
BD: Boot Debugger Initialized
Connected to Windows Boot Debugger 3790 x86 compatible target at (Thu Feb 25 12:04:42.607 2021 (UTC + 1:00)), ptr64 FALSE
Kernel Debugger connection established.
Symbol search path is: C:\WINDOWS\symbols;C:\WINDOWS\symbols2
Executable search path is: C:\WINDOWS\symbols
Windows Boot Debugger Kernel Version 3790 UP Checked x86 compatible
Machine Name:
Primary image base = 0x00400000 Loaded module list = 0x0042fc9c
System Uptime: not available
Break instruction exception - code 80000003 (first chance)
osloader!DbgBreakPoint:
0040b0c6 cc int 3
#6873infuscomus⇗ @diderius6

infinite loop?

also, what was the message the xpsp1 ntldr_dbg displayed?
#6874diderius6⇗ @infuscomus
No, it just gets comand to reboot
BD: 80A02000 \WINDOWS\system32\ntoskrnl.exe
BD: 80100000 \WINDOWS\system32\hal.dll
BD: 80010000 \WINDOWS\system32\kdcom.dll
BD: 80001000 \WINDOWS\system32\PSHED.dll
BD: 8000A000 \WINDOWS\system32\BOOTVID.dll
BD: 80138000 \WINDOWS\system32\CLFS.SYS
BD: 80173000 \WINDOWS\system32\CI.dll
Breakpoint 0 hit
osloader!NtProcessStartup+0x26a:
0040e723 ff5014 call dword ptr [eax+14h]

kd> t
osloader!AEReboot:
00402ad3 55 push ebp
kd> t
osloader!AEReboot+0x1:
00402ad4 8bec mov ebp,esp
kd> t
osloader!AEReboot+0x3:
00402ad6 51 push ecx
kd> t
osloader!AEReboot+0x4:
00402ad7 e815960000 call osloader!TextGrTerminate (0040c0f1)
kd> t
osloader!TextGrTerminate:
0040c0f1 33c0 xor eax,eax
kd> t
osloader!TextGrTerminate+0x2:
0040c0f3 390594ed4200 cmp dword ptr [osloader!DbcsLangId (0042ed94)],eax
kd> t
osloader!TextGrTerminate+0x8:
0040c0f9 7405 je osloader!TextGrTerminate+0xf (0040c100)
kd> t
osloader!TextGrTerminate+0xa:
0040c0fb a394ed4200 mov dword ptr [osloader!DbcsLangId (0042ed94)],eax
kd> t
osloader!TextGrTerminate+0xf:
0040c100 38054a304300 cmp byte ptr [osloader!GraphicsMode (0043304a)],al
kd> t
osloader!TextGrTerminate+0x15:
0040c106 7511 jne osloader!TextGrTerminate+0x28 (0040c119)
kd> t
osloader!TextGrTerminate+0x17:
0040c108 a14cfc4200 mov eax,dword ptr [osloader!ExternalServicesTable (0042fc4c)]
kd> t
osloader!TextGrTerminate+0x1c:
0040c10d 6a03 push 3
kd> t
osloader!TextGrTerminate+0x1e:
0040c10f 6800000080 push 80000000h
kd> t
osloader!TextGrTerminate+0x23:
0040c114 ff5018 call dword ptr [eax+18h]
kd> t
00020eff 6858000000 push 58h
kd> t
00020f04 680a0f0000 push 0F0Ah
kd> t
00020f09 cb retf
kd> t
0058:0f0a 6655 push ebp
16.kd> t
0058:0f0c 6653 push ebx
16.kd> t
0058:0f0e 6656 push esi
16.kd> t
0058:0f10 6657 push edi
16.kd> t
0058:0f12 6689e3 mov ebx,esp
16.kd> t
0058:0f15 b86000 mov ax,60h
16.kd> t
0058:0f18 8ed8 mov ds,ax
16.kd> t
BD: Debugging NTLDR --By: diyhack
BD: Boot Debugger Initialized
osloader!DbgBreakPoint:
0040b0c6 cc int 3
#6875infuscomus⇗ @diderius6

I think vistas ntoskrnl and hal might depend on winload.exe to work

I recall ⇗ @Gelip managed to get winload.exe of vista beta 5219 to work with XP (and I think that winload.exe build still supports boot.ini) over on betaarchive.

edit: It wasn't Gelip, but still someone got it working
⇗ https://www.betaarchive.com/forum/viewto...=433345#p433345
#6876diderius6⇗ @infuscomus
With the ntldr_dbg from XP SP1
XP boot runs much further, Hal is asked for PCI
Dietmar

PS: In the end comes message, that dlls for Kernel cant be found.

⇗ https://ufile.io/q8vpkb5y

EDIT: It seems to hang at MempSetupPaging.
#6877infuscomus⇗ @diderius6

I made an ntldr out of vista beta 5219 loader, maybe this might work - try it

make a backup because this is probably going to not be bootable

infuscomus has attached files to this post
#6878diderius6⇗ @infuscomus
Interesting ) picture,
means, this ntldr does not work with XP
Dietmar

#6879infuscomus⇗ @diderius6

never seen that before

anything output from the debugger? or completely dead?
#6880diderius6⇗ @infuscomus
The 3 files ntdetect.com, boot.ini and this ntldr do not work together,
no Windbg output, just funny pic
Dietmar
#6881diderius6I just notice,
that the newest Bochs version 2.6.11
does not run under XP SP3.
The version before, Bochs version 2.6.10 works under XP SP3
Dietmar

EDIT: The Bochs version 2.6.10 crashes for me with the settings from Tutorial of IDA Pro debug via Bochs
⇗ http://standa-note.blogspot.com/2014/11/...of-windows.html
So I use like in this article Bochs version 2.6.6.
First I thought, that it crashes also, but then I noticed it is only SOSO slow, installing XP SP3:))..
So, just now fun is going on. I want to debug the load of the bootsector(!).
The clock is really running faast in Bochs XP.
As faster the clock, the slower the install ), XP SP3 still installs..
#6882infuscomus⇗ @Gelip

Can you show how to switch XP from using NTLDR bootloader to using bootmgr/winload loader? or otherwise have a prepatched XP VM?

I would like to test to see if my patched vista ntoskrnl/hal needs the new loader to work.
#6883diderius6You can really debug with Bochs single(!) step by step the bootprocess of XP SP3.
It is shown with an Pentium4 cpu at 300 MHZ, 1 Gb ram and acpi and USB,
Dietmar

PS: The debugger work together with Ida Pro 6 I try tomorrow.

#6884diderius6⇗ @infuscomus
I make small joke:
With vdk.exe I first make a copy of c.img file from Bochs, then open this copy as /rw the c.img file and delete there everything,
only boot.ini and ntdetect.com stay.
Then I copy your ntldr from Vista into this file,
type vdk stop
and start Bochs debugger.
Here is the result, not easy to understand but here you can see the crash of this ntldr
Dietmar

PS: Seems to be an endless loop at add byte ptr ds:[eax], al
Strange, this code isnt in this ntldr. Some garbage in memory, translated from stupid debugger to "Source Code" ?!

#6885Gelip⇗ @infuscomus

Zitat von ⇗ infuscomus im Beitrag ¶ #6882
Can you show how to switch XP from using NTLDR bootloader to using bootmgr/winload loader?

  • rename ntldr to ntldr.bak
  • copy bootmgr vista 5219 32-bit to C:
  • copy winload.exe vista 5219 32-bit to C:\WINDOWS\system32
  • add to boot.ini switch /usenewloader
  • boot PC from a newer version Windows e.g. DVD Win7 setup, Shift+F10 to CMD, bootrec /fixboot


⇗ How to switch XP over to wibload bootloader?

 

Page 460

#6886ruthanHow big victory is Bochs debugging? I mean:
- you probably not fix Intel GPU or any gpu boot problems..
- you probably cant fix there that Intel 219 lan driver problems..
- if im not wrong has not also EFI mode to fix EFI boot problem..
 So?
#6887gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #6867

BD: 80173000 \WINDOWS\system32\CI.dll

⇗ @diderius6 ...one thing that stands out is the file CI.dll which seems to have been the last file processed before the faults began. CI.dll is a file verification process. CI = code integrity.

⇗ https://www.cybereason.com/blog/code-int...look-into-cidll
#6888gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #6884
PS: Seems to be an endless loop at add byte ptr ds:[eax], al
Strange, this code isnt in this ntldr. Some garbage in memory, translated from stupid debugger to "Source Code" ?!
⇗ @diderius6 ...whenever you see that code in a disassembly, it usually means the disassembler cannot disassemble the bytes correctly. If you analyze the opcodes where the code exists, it may give you a clue.

For some reason, some apps include data bytes within the executable code. The bytes mean something to the code flow in the proper context, but taken out of context, they are meaningless. That's why IDA is called an 'interactive' disassembler, it depends on the user to help it figure out byte sequences. On many occasions, I've had to mark a sequence of bytes as code or data to help it interpret the section of bytes.
#6889gordo999Anybody found XP drivers for a GT 1030 Nvidia card. Apparently the 900-series could be made to work on XP.
#6890infuscomus
Zitat von ⇗ gordo999 im Beitrag ¶ #6887
Zitat von ⇗ diderius6 im Beitrag ¶ #6867

BD: 80173000 \WINDOWS\system32\CI.dll

⇗ @diderius6 ...one thing that stands out is the file CI.dll which seems to have been the last file processed before the faults began. CI.dll is a file verification process. CI = code integrity.

⇗ https://www.cybereason.com/blog/code-int...look-into-cidll




⇗ @diderius6

I think ⇗ @gordo999 is right, I just switched over to vista beta 5219 bootmgr/winload.exe - thanks ⇗ @Gelip - and after I confirmed that it could boot vanilla XP I tested my modded kernel and I got an error referring to CI.dll being missing or corrupt, I confirmed the file is there and I have not modified it in any way.

⇗ @diderius6
Do you think you could hack CI.dll to skip the check? I can send you my XP VM if you want.
#6891infuscomus
Zitat von ⇗ gordo999 im Beitrag ¶ #6889
Anybody found XP drivers for a GT 1030 Nvidia card. Apparently the 900-series could be made to work on XP.


⇗ @gordo999

There are none that I know of anyway,
but if my modded vista ntoskrnl/hal can be made to boot XP then it should work.
#6892diderius6⇗ @infuscomus
"to vista beta 5219 bootmgr/winload.exe"
on most real newer compis this does not work for XP,
as you can see here by post from ⇗ @skullteria .
And it is a hard way to overcome any check for signature or something like this.
acpi.sys from Vista does not need the file CI.dll, as I tested.
I think, ntoskrnl.exe from Vista looks for it and so the modd should happen there
Dietmar

PS: Always the question is, what you want to reach. A file, working in XP or in Vista.
For to make a 1030 Nvidia card to work with XP, I think the only way is to enable the new driver model for graphik from Vista for XP. This is, what ⇗ @skullteria is working on.
#6893infuscomus⇗ @diderius6

Zitat
PS: Always the question is, what you want to reach.



basically boot XP using ntoskrnl/hal - a very difficult goal to reach.

can you mod my ntoskrnl or ci.dll to skip the integrity check? I'm not sure how to do it myself.

P.S If we can get vista ntoskrnl/hal to boot XP then we could also switch to vista RTM bootmgr/winload too, so we wont necessarily need the vista beta boot loader.

#6894diderius6⇗ @infuscomus
From my tests long time ago I know,
that for a XP boot with vista ntoskrnl/hal you need a lot more dlls,
for which ntoskrnl.exe asks.
In the end, it is Vista.
For to overcome the check in PE header, you can use ResourceHacker.exe
⇗ http://www.angusj.com/resourcehacker/#download
just open the modded file and store it again
Dietmar
#6895infuscomus
Zitat von ⇗ diderius6 im Beitrag ¶ #6894
For to overcome the check in PE header, you can use ResourceHacker.⇗ exehttp://www.angusj.com/resourcehacker/#downloadjust open the modded file and store it againDietmar


⇗ @diderius6

what do you mean by open the file and store it again?
#6896diderius6⇗ @infuscomus

Click on ResourceHacker.exe and open the wished file.
Then save it again. Nothing more. Nice program.
It works for modded *.exe files, *.dlls but not for *.com or ntldr
Dietmar
#6897infuscomus⇗ @diderius6

how will doing this help with the integrity check problem though?

I think what is happening (from what I read in the blog linked to) CI.dll is looking for the Microsoft certificate at the end of the ntoskrnl.exe file, which I took out to add in my removed XP code, so since the certificate isn't there it complains.

I think I'm going to need to learn how to make a BCD and use the vista RTM bootloader since it allows DISABLE_INTEGRITY_CHECKS
#6898diderius6⇗ @infuscomus
Make try with ResourceHacker.exe
Dietmar
#6899skullteriaI think winload/bootmgr from Longhorn 5048 until Vista 5308 not work on Real Computer Since First generation of Core i (3,5 and 7). On core 2 Duo or lower works
#6900infuscomus⇗ @diderius6

no change, still error about CI.dll

 

Page 461

#6901infuscomus⇗ @Gelip

I want to make a BCD for use with vista RTM bootmgr/winload.exe since I now want to use DISABLE_INTEGRITY_CHECKS option - I recall you saying BOOTICE was a good option to make one from scratch, it doesn't have a vista option though, only windows 7, would this still work?
#6902Gelip⇗ @infuscomus
Try BCD and bootmgr+winload.exe from Vista SP2, but for me have BSOD 4E on MS VPC 2007:


You need fix ApplicationDevice and OSDevice path in BCD file e.g. with BootICE and boot PC pressing F8 to select Disable Driver Signature Enforcement from menu Advanced Boot Options

Gelip has attached files to this post
#6903infuscomusI got a message saying

\windows\system32\ntkrnlpa.exe

Windows could not verify the signature for this file

I enabled testsigning, nointegritychecks and DDISABLE_INTEGRITY_CHECKS in the BCD but none of them helped - there must be another check somewhere

EDIT:
I got the same error message with both original XP ntoskrnl/ntkrnlpa.exe and my modded vista ntoskrnl/ntkrnlpa.exe
#6904diderius6⇗ @infuscomus

When you enable Debug modus with bootice,
this message is gone
Dietmar
#6905infuscomus⇗ @diderius6

where is the debug mode option in bootice?
#6906diderius6⇗ @infuscomus
BC EDit, professional mode,
right click in table "new entry"
Dietmar
#6907infuscomus⇗ @diderius6

I tried this but the message persists
I've attached my BCD

infuscomus has attached files to this post
#6908gordo999
Zitat von ⇗ infuscomus im Beitrag ¶ #6891
There are none that I know of anyway,
but if my modded vista ntoskrnl/hal can be made to boot XP then it should work.
⇗ @infuscomus .....I wish you luck in your project. Wish I could contribute more...I'd like to...but I'm up to my butt in alligators at the moment.
#6909gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #6892
For to make a 1030 Nvidia card to work with XP, I think the only way is to enable the new driver model for graphik from Vista for XP. This is, what @skullteria is working on.
⇗ @diderius6 ...thanks for info. I am surprised that XP works on the GT 1030 at all but it's stable in a super-VGA mode. Good enough to work with XP if I don't want 3-D graphics.
#6910gordo999
Zitat von ⇗ infuscomus im Beitrag ¶ #6897
I think what is happening (from what I read in the blog linked to) CI.dll is looking for the Microsoft certificate at the end of the ntoskrnl.exe file, which I took out to add in my removed XP code, so since the certificate isn't there it complains.
⇗ @diderius6 ....Microsoft may have made the certificate check difficult to bypass but they may also have made it a simple yes/no check. That would come down to a test or compare followed by a conditional jump.
#6911Gelip⇗ @infuscomus
Try files from beta Longhorn Server 2008 6.0.6001.16497 32-bit and Disable Driver Signature Enforcement. It works for me :-)

P.S. To enable kernel debugger add these options in BootICE:

Gelip has attached files to this post
#6912diderius6⇗ @gordo999
"they may also have made it a simple yes/no check. "
Can you please tell the exact place, where this check happens,
have a nice day
Dietmar
#6913diderius6⇗ @infuscomus
How to set up this virtual machine?
Until now, I have had only one *.img file for to boot in Qemu or Bochs
Dietmar
#6914infuscomus⇗ @diderius6

VMWare player

⇗ https://www.vmware.com/us/products/works...evaluation.html
#6915diderius6⇗ @infuscomus
I just notice, that the VMware-player-16.1
needs at least Win8 for to be installed.
Because I have had no working Win8.1 install, I am just doing this.
Question will be, how to debug a VM with XP. May be, it can be done from Win8.1 OS surrounding
Dietmar

EDIT: VMware-player-16.1 also does not run on win8.1 32 bit, brrr..

 

Page 462

#6916infuscomus⇗ @diderius6

I can make a .vhd of this VM using paragon, then you should be able to boot it directly - should I make a vhd?
#6917jonathan_hzs
?
#6918diderius6⇗ @infuscomus
Yes, make a vhd from it and send to me. For to debug, this will give more correct results.
Can I just use the Paragon program, for to install this vhd direct to harddisk?
Question is, if this VM works on real compi
Dietmar

PS: Anyway I just set up a brandnew Win8.1. So I can test all.
Now I have normal Startmenu back, so that I can work with win8.1.

#6919infuscomus⇗ @diderius6

I PMed you the VHD that you can also restore with paragon.
#6920diderius6⇗ @infuscomus
I download your vhd file.
In the end of the installation of win8.1
it tells me: Ordinal 907 can't be found in the dynamic link library mshtml.dll
and I cant run Windows Update, even it is my original DVD with key.
What a garbage
Dietmar

EDIT: I think, this happens because I upgraded from Win8.
Ok, format harddisk new. Then I set direct up the win8.1.iso from Microsoft with my key.
Now I am ready with all drivers and updates for win8.1 32 bit.
#6921infuscomus⇗ @diderius6

This might be blasphemy here, but try windows 10, you don't lose much leaving it unactivated.
#6922infuscomus⇗ @diderius6

bootice might have broken the BCD in the VHD I sent you when I first tried to enable debugging - if you get a winload.exe error this should fix it.

infuscomus has attached files to this post
#6923galagun
Zitat von ⇗ infuscomus im Beitrag ¶ #6893

P.S If we can get vista ntoskrnl/hal to boot XP then we could also switch to vista RTM bootmgr/winload too, so we wont necessarily need the vista beta boot loader.


If you read the posts in betaarchive thread about XP in UEFI, has been already stated Bootmgr/Winload from WinVista RTM actually can load XP SP3 and Win2003 SP2. But back them was deemed useless, as WinVista RTM only has *.efi loader files for 64bit uefi firmware flavors (they wanted to boot xp32 and 2003-32 in uefi, that was the goal after all). Only Beta versions of longhorn have 32bit versions of uefi loader, and then it gets removed and doesn't come back until Win8 and some longhorn server betas.

Also, Vista RTM Bootmgr/Winload PCAT versions (exe files), and the UEFI64 efi files included, are the last ones which can load XP and Win2003 with no modifications (from released product, no betas here). SP1 can't anymore. It hangs in very early Kernel init stages (before windbg kernel debugger gets up), and causes exceptions in Virtual Machines.
#6924infuscomus⇗ @galagun

I was able to boot XP with vista beta 5219 files, but I have not succeeded with vista RTM files as of yet.
#6925galagun⇗ @infuscomus

Right now I don't have time... But tomorrow may share my BCD database so it can be tested by you guys. But I state again... It works, I have seen it functional and working. I can't say the same from SP1 Vista files.
#6926infuscomus⇗ @galagun

Can you PM this to me when you are able? I'm trying to get this to work right now without much luck.
#6927galagun⇗ @infuscomus

Sure. I hope tomorrow having plenty of time... I also want to get this up to new levels.
#6928infuscomus
Zitat von ⇗ Gelip im Beitrag ¶ #6911
@infuscomus
Try files from beta Longhorn Server 2008 6.0.6001.16497 32-bit and Disable Driver Signature Enforcement. It works for me :-)

P.S. To enable kernel debugger add these options in BootICE:



⇗ @Gelip

Thanks,

I got a bit further with this - but still stuck at "Starting Windows Vista" so my install might be borked - I'll reinstall and try again.
#6929YuriyCNWindows XP mod 2021 - system build for the modern PC (edition 27.02.2021)

The information doesn't fit into a forum post for a long time - so download the text file and read it in Notepad. Always use the latest version of the methodology, as the information is constantly changing and the methodology is supplemented.

TXT-file (84kB, ENGLISH) - ⇗ https://yadi.sk/d/kCpA2FbTmqZMLA
TXT-file (87kB, RUSSIAN) - ⇗ https://yadi.sk/d/cUNXHjS1OvL4og
#6930infuscomus
Zitat
files from beta Longhorn Server 2008 6.0.6001.16497 32-bit and Disable Driver Signature Enforcement.



⇗ @Gelip

So, I tried these files you suggested on a fresh install - 7E BSOD

any tips?

 

Page 463

#6931Gelip⇗ @infuscomus

Zitat von ⇗ infuscomus im Beitrag ¶ #6928
but still stuck at "Starting Windows Vista" so my install might be borked - I'll reinstall and try again.

Turn on debug and check in WinDbg - I bet it's a problem with your graphics card driver.
#6932Gelip⇗ @infuscomus

Zitat von ⇗ infuscomus im Beitrag ¶ #6930
So, I tried these files you suggested on a fresh install - 7E BSOD

any tips?


⇗ https://www.betaarchive.com/forum/viewto...=446113#p446113
#6933infuscomus⇗ @Gelip

So, if I'm reading this right, I should take vgapnp.sys from vista?
#6934Gelip⇗ @infuscomus

Zitat von ⇗ infuscomus im Beitrag ¶ #6933
So, if I'm reading this right, I should take vgapnp.sys from vista?

No.

I had this 7E error when I tried to install the Longhorn beta.

You only use a few Longhorn files in WinXP and you also get this 7E error.

I do not know what it depends on. This is what the WinDbg log looks like when I tried to install Longhorn x86 on ASUS P8H61-M LE R2 -> ⇗ Link
Probably caused by : ntkrpamp.exe ( nt!TmInitSystem+4bda )
#6935infuscomus⇗ @Gelip

what do I do if I get a black screen?
#6936Gelip⇗ @infuscomus

Zitat von ⇗ infuscomus im Beitrag ¶ #6935
what do I do if I get a black screen?


I don't know.

I had a black screen but with a white bar on the Vista 5384 loaders - ⇗ Link

#6937infuscomus⇗ @Gelip

I removed bootdebug and nointegritychecks from my BCD, now black screen is gone and 7E BSOD is back
this 7E BSOD is with XP ntoskrnl/hal.
#6938diderius6⇗ @infuscomus
I test your vhd file.
First I change the BCD like you told.
Then I get Bsod 0xC000000E
and the message, that winload is defect.
Winload is there, I looked. And Windbg does not start.
So the Bsod happens very early or the settings in Serial Debug, kernel debug, port1, baudrate=115200
are not correct in BCD.
Before with my own tries I tested, that this Vista files together with XP SP3 can be debugged with Windbg
Dietmar

PS: I edit your BCD for debugging and now Windbg
Microsoft (R) Windows Debugger Version 6.12.0002.633 X86
Copyright (c) Microsoft Corporation. All rights reserved.

Opened \\.\com1
Waiting to reconnect...
BD: Boot Debugger Initialized
Connected to Windows Boot Debugger 6001 x86 compatible target at (Sun Feb 28 00:42:28.750 2021 (UTC + 1:00)), ptr64 FALSE
Kernel Debugger connection established.
Symbol search path is: C:\WINDOWS\symbols
Executable search path is: C:\WINDOWS\symbols
*** ERROR: Module load completed but symbols could not be loaded for bootmgr
Windows Boot Debugger Kernel Version 6001 UP Free x86 compatible
Machine Name:
Primary image base = 0x00400000 Loaded module list = 0x00502258
System Uptime: not available
MUI: \Boot\en-US\bootmgr.EXE.MUI checksum does not match primary file checksum

An error occurred (c000000e) while attempting to load the boot application \Windows\system32\winload.exe

*** Fatal Error 0x00000001 :
(0x00000002, 0x001B4A84, 0xC000000E, 0x00000000)

Break instruction exception - code 80000003 (first chance)
*** ERROR: Module load completed but symbols could not be loaded for bootmgr
bootmgr+0x2ab48:
0042ab48 cc int 3
kd> !analyze -v
Connected to Windows Boot Debugger 6001 x86 compatible target at (Sun Feb 28 00:42:43.859 2021 (UTC + 1:00)), ptr64 FALSE
*** ERROR: Module load completed but symbols could not be loaded for bootmgr
Loading Kernel Symbols

Loading User Symbols
Unable to resolve nt!KiBugCheckData
*******************************************************************************
* *
* Exception Analysis *
* *
*******************************************************************************


FAULTING_IP:
bootmgr+2ab48
0042ab48 cc int 3

EXCEPTION_RECORD: ffffffff -- (.exr 0xffffffffffffffff)
ExceptionAddress: 0042ab48 (bootmgr+0x0002ab48)
ExceptionCode: 80000003 (Break instruction exception)
ExceptionFlags: 00000000
NumberParameters: 1
Parameter[0]: 00000000

DEFAULT_BUCKET_ID: STATUS_BREAKPOINT

ERROR_CODE: (NTSTATUS) 0x80000003 - {AUSNAHME} Haltepunkt Im Quellprogramm wurde ein Haltepunkt erreicht.

EXCEPTION_CODE: (HRESULT) 0x80000003 (2147483651) - Mindestens ein Argument ist ung ltig.

EXCEPTION_PARAMETER1: 00000000

MOD_LIST: <ANALYSIS/>

FAULTING_THREAD: 00000001

PRIMARY_PROBLEM_CLASS: STATUS_BREAKPOINT

BUGCHECK_STR: APPLICATION_FAULT_STATUS_BREAKPOINT

LAST_CONTROL_TRANSFER: from 00401f7e to 0042ab48

STACK_TEXT:
WARNING: Stack unwind information not available. Following frames may be wrong.
00061ec8 00401f7e 00000002 c000000e 0016ab80 bootmgr+0x2ab48
00061f34 00401a14 001b4a84 00000000 00061f6b bootmgr+0x1f7e
00061f6c 004012aa 0016ab80 00000000 00000001 bootmgr+0x1a14
00061ff0 00020a9a 00025338 448bc0c3 f1eb04c7 bootmgr+0x12aa
00000000 f000eef3 f000e2c3 f000eef3 f000eef3 0x20a9a
00000000 00000000 f000e2c3 f000eef3 f000eef3 0xf000eef3


STACK_COMMAND: kb

FOLLOWUP_IP:
bootmgr+2ab48
0042ab48 cc int 3

SYMBOL_STACK_INDEX: 0

SYMBOL_NAME: bootmgr+2ab48

FOLLOWUP_NAME: MachineOwner

MODULE_NAME: bootmgr

IMAGE_NAME: bootmgr

DEBUG_FLR_IMAGE_TIMESTAMP: 460dce46

FAILURE_BUCKET_ID: STATUS_BREAKPOINT_80000003_bootmgr!Unknown

BUCKET_ID: APPLICATION_FAULT_STATUS_BREAKPOINT_bootmgr+2ab48

Followup: MachineOwner
---------


EDIT: I break very early into
and this is the result

Microsoft (R) Windows Debugger Version 6.12.0002.633 X86
Copyright (c) Microsoft Corporation. All rights reserved.

Opened \\.\com1
Waiting to reconnect...
BD: Boot Debugger Initialized
Connected to Windows Boot Debugger 6001 x86 compatible target at (Sun Feb 28 00:51:11.906 2021 (UTC + 1:00)), ptr64 FALSE
Kernel Debugger connection established.
Symbol search path is: C:\WINDOWS\symbols
Executable search path is: C:\WINDOWS\symbols
*** ERROR: Module load completed but symbols could not be loaded for bootmgr
Windows Boot Debugger Kernel Version 6001 UP Free x86 compatible
Machine Name:
Primary image base = 0x00400000 Loaded module list = 0x00502258
System Uptime: not available
User requested boot debugger break!
Break instruction exception - code 80000003 (first chance)
*** ERROR: Module load completed but symbols could not be loaded for bootmgr
bootmgr+0x2ab48:
0042ab48 cc int 3
kd> p
bootmgr+0x2ab49:
0042ab49 c3 ret
kd>
bootmgr+0x59a3:
004059a3 84db test bl,bl
kd>
bootmgr+0x59a5:
004059a5 7408 je bootmgr+0x59af (004059af)
kd>
bootmgr+0x59a7:
004059a7 ff75fc push dword ptr [ebp-4]
kd>
bootmgr+0x59aa:
004059aa e881100200 call bootmgr+0x26a30 (00426a30)
kd>
bootmgr+0x59af:
004059af 5e pop esi
kd>
bootmgr+0x59b0:
004059b0 5b pop ebx
kd>
bootmgr+0x59b1:
004059b1 c9 leave
kd>
bootmgr+0x59b2:
004059b2 c3 ret
kd>
bootmgr+0x5b3f:
00405b3f eb23 jmp bootmgr+0x5b64 (00405b64)
kd>
bootmgr+0x5b64:
00405b64 5f pop edi
kd>
bootmgr+0x5b65:
00405b65 5e pop esi
kd>
bootmgr+0x5b66:
00405b66 8bc3 mov eax,ebx
kd>
bootmgr+0x5b68:
00405b68 5b pop ebx
kd>
bootmgr+0x5b69:
00405b69 c9 leave
kd>
bootmgr+0x5b6a:
00405b6a c3 ret
kd>
bootmgr+0x1d89a:
0041d89a e820860000 call bootmgr+0x25ebf (00425ebf)
kd>
bootmgr+0x1d89f:
0041d89f 53 push ebx
kd>
bootmgr+0x1d8a0:
0041d8a0 e8b249ffff call bootmgr+0x12257 (00412257)
kd>
bootmgr+0x1d8a5:
0041d8a5 e8ef390000 call bootmgr+0x21299 (00421299)
kd>
MUI: \Boot\en-US\bootmgr.EXE.MUI checksum does not match primary file checksum
bootmgr+0x1d8aa:
0041d8aa 33c0 xor eax,eax
kd>
bootmgr+0x1d8ac:
0041d8ac eb09 jmp bootmgr+0x1d8b7 (0041d8b7)
kd>
bootmgr+0x1d8b7:
0041d8b7 5f pop edi
kd>
bootmgr+0x1d8b8:
0041d8b8 5e pop esi
kd>
bootmgr+0x1d8b9:
0041d8b9 5b pop ebx
kd>
bootmgr+0x1d8ba:
0041d8ba 5d pop ebp
kd>
bootmgr+0x1d8bb:
0041d8bb c20400 ret 4
kd>
bootmgr+0x1143:
00401143 85c0 test eax,eax
kd>
bootmgr+0x1145:
00401145 7d0b jge bootmgr+0x1152 (00401152)
kd>
bootmgr+0x1152:
00401152 e8290e0000 call bootmgr+0x1f80 (00401f80)
kd>
bootmgr+0x1157:
00401157 e834020200 call bootmgr+0x21390 (00421390)
kd>
bootmgr+0x115c:
0040115c 85c0 test eax,eax
kd>
bootmgr+0x115e:
0040115e 7517 jne bootmgr+0x1177 (00401177)
kd>
bootmgr+0x1177:
00401177 50 push eax
kd>
bootmgr+0x1178:
00401178 e867c10200 call bootmgr+0x2d2e4 (0042d2e4)
kd>
bootmgr+0x117d:
0040117d 8bd8 mov ebx,eax
kd>
bootmgr+0x117f:
0040117f 85db test ebx,ebx
kd>
bootmgr+0x1181:
00401181 7d12 jge bootmgr+0x1195 (00401195)
kd>
bootmgr+0x1195:
00401195 8b5c241c mov ebx,dword ptr [esp+1Ch]
kd>
bootmgr+0x1199:
00401199 85db test ebx,ebx
kd>
bootmgr+0x119b:
0040119b c644241201 mov byte ptr [esp+12h],1
kd>
bootmgr+0x11a0:
004011a0 0f8c1c020000 jl bootmgr+0x13c2 (004013c2)
kd>
bootmgr+0x11a6:
004011a6 8d442413 lea eax,[esp+13h]
kd>
bootmgr+0x11aa:
004011aa 50 push eax
kd>
bootmgr+0x11ab:
004011ab 8d442414 lea eax,[esp+14h]
kd>
bootmgr+0x11af:
004011af 50 push eax
kd>
bootmgr+0x11b0:
004011b0 b8c00f4800 mov eax,offset bootmgr+0x80fc0 (00480fc0)
kd>
bootmgr+0x11b5:
004011b5 c70534cd4700b62a4000 mov dword ptr [bootmgr+0x7cd34 (0047cd34)],offset bootmgr+0x2ab6 (00402ab6)
kd>
bootmgr+0x11bf:
004011bf c70540cd470002304000 mov dword ptr [bootmgr+0x7cd40 (0047cd40)],offset bootmgr+0x3002 (00403002)
kd>
bootmgr+0x11c9:
004011c9 c70544cd4700af314000 mov dword ptr [bootmgr+0x7cd44 (0047cd44)],offset bootmgr+0x31af (004031af)
kd>
bootmgr+0x11d3:
004011d3 c70548cd47001d324000 mov dword ptr [bootmgr+0x7cd48 (0047cd48)],offset bootmgr+0x321d (0040321d)
kd>
bootmgr+0x11dd:
004011dd e8baf90100 call bootmgr+0x20b9c (00420b9c)
kd>
bootmgr+0x11e2:
004011e2 807c241000 cmp byte ptr [esp+10h],0
kd>
bootmgr+0x11e7:
004011e7 750f jne bootmgr+0x11f8 (004011f8)
kd>
bootmgr+0x11f8:
004011f8 8d442414 lea eax,[esp+14h]
kd>
bootmgr+0x11fc:
004011fc e82f200000 call bootmgr+0x3230 (00403230)
kd>
bootmgr+0x1201:
00401201 8bd8 mov ebx,eax
kd>
bootmgr+0x1203:
00401203 85db test ebx,ebx
kd>
bootmgr+0x1205:
00401205 0f8cb7010000 jl bootmgr+0x13c2 (004013c2)
kd>
bootmgr+0x120b:
0040120b e89dec0100 call bootmgr+0x1fead (0041fead)
kd>
bootmgr+0x1210:
00401210 6840364500 push offset bootmgr+0x53640 (00453640)
kd>
bootmgr+0x1215:
00401215 e812c30200 call bootmgr+0x2d52c (0042d52c)
kd>
bootmgr+0x121a:
0040121a c605b024500000 mov byte ptr [bootmgr+0x1024b0 (005024b0)],0
kd>
bootmgr+0x1221:
00401221 33c0 xor eax,eax
kd>
bootmgr+0x1223:
00401223 bf02000024 mov edi,24000002h
kd>
bootmgr+0x1228:
00401228 eb04 jmp bootmgr+0x122e (0040122e)
kd>
bootmgr+0x122e:
0040122e 33f6 xor esi,esi
kd>
bootmgr+0x1230:
00401230 39742418 cmp dword ptr [esp+18h],esi
kd>
bootmgr+0x1234:
00401234 8974241c mov dword ptr [esp+1Ch],esi
kd>
bootmgr+0x1238:
00401238 c644241000 mov byte ptr [esp+10h],0
kd>
bootmgr+0x123d:
0040123d 0f85e6000000 jne bootmgr+0x1329 (00401329)
kd>
bootmgr+0x1243:
00401243 8d442430 lea eax,[esp+30h]
kd>
bootmgr+0x1247:
00401247 50 push eax
kd>
bootmgr+0x1248:
00401248 8d44242c lea eax,[esp+2Ch]
kd>
bootmgr+0x124c:
0040124c 50 push eax
kd>
bootmgr+0x124d:
0040124d 57 push edi
kd>
bootmgr+0x124e:
0040124e ff35d40f4800 push dword ptr [bootmgr+0x80fd4 (00480fd4)]
kd>
bootmgr+0x1254:
00401254 8974243c mov dword ptr [esp+3Ch],esi
kd>
bootmgr+0x1258:
00401258 e84dc90100 call bootmgr+0x1dbaa (0041dbaa)
kd>
bootmgr+0x125d:
0040125d 85c0 test eax,eax
kd>
bootmgr+0x125f:
0040125f 7d6b jge bootmgr+0x12cc (004012cc)
kd>
bootmgr+0x1261:
00401261 89742418 mov dword ptr [esp+18h],esi
kd>
bootmgr+0x1265:
00401265 8d442413 lea eax,[esp+13h]
kd>
bootmgr+0x1269:
00401269 50 push eax
kd>
bootmgr+0x126a:
0040126a 8d442420 lea eax,[esp+20h]
kd>
bootmgr+0x126e:
0040126e 50 push eax
kd>
bootmgr+0x126f:
0040126f ff74241c push dword ptr [esp+1Ch]
kd>
bootmgr+0x1273:
00401273 e85e040000 call bootmgr+0x16d6 (004016d6)
kd>
bootmgr+0x1278:
00401278 8bd8 mov ebx,eax
kd>
bootmgr+0x127a:
0040127a 3bde cmp ebx,esi
kd>
bootmgr+0x127c:
0040127c 0f8c1b010000 jl bootmgr+0x139d (0040139d)
kd>
bootmgr+0x1282:
00401282 807c241300 cmp byte ptr [esp+13h],0
kd>
bootmgr+0x1287:
00401287 0f8510010000 jne bootmgr+0x139d (0040139d)
kd>
bootmgr+0x128d:
0040128d 8b442414 mov eax,dword ptr [esp+14h]
kd>
bootmgr+0x1291:
00401291 3bc6 cmp eax,esi
kd>
bootmgr+0x1293:
00401293 7409 je bootmgr+0x129e (0040129e)
kd>
bootmgr+0x1295:
00401295 e8aa2d0000 call bootmgr+0x4044 (00404044)
kd>
bootmgr+0x129a:
0040129a 89742414 mov dword ptr [esp+14h],esi
kd>
bootmgr+0x129e:
0040129e 6a01 push 1
kd>
bootmgr+0x12a0:
004012a0 56 push esi
kd>
bootmgr+0x12a1:
004012a1 ff742424 push dword ptr [esp+24h]
kd>
bootmgr+0x12a5:
004012a5 e8bf060000 call bootmgr+0x1969 (00401969)
kd>

An error occurred (c000000e) while attempting to load the boot application \Windows\system32\winload.exe

*** Fatal Error 0x00000001 :
(0x00000002, 0x001B4A84, 0xC000000E, 0x00000000)



After this I set a breakpoint at 004012a5

Then soon comes an endless loop.

#6939diderius6⇗ @infuscomus

I take a look at the Bsod c000000e .
This can happen, when you changed the boot partition.
Then winload.exe cant be found.

Because of those crazy problems, I work always with a real and only one harddisk at the compi, which should be debugged.

Dietmar
#6940gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #6912
Can you please tell the exact place, where this check happens,
have a nice dayDietmar
⇗ @diderius6 ...apparently XP does not use integrity checks using CI.dll. I don't have the Vista ntoskrnl but in the W7 ntoskrl (6.1.7601.24387), CI.dll is called from address:
00000001'403B13F3    call CIInitialize
Someone with the Vista ntoskrnl should look to see if CIInitialize is listed as an import in Vista ntoskrnl. That's how ntoskrnl calls CI.dll and apparently it is the only static linking for CI.dll.

Apparently, if the option during boot at F8 is set to disable security checks is set, it bypasses CI.dll. Or, if debug mode is set it bypasses it, also, during a remote kernel debug session. The problem seems to be that XP does not have that option because it doesn't need it. I am wondering if the option could be added in the XP boot loading system.

If you look back in the W7 ntoskrnl a few steps, you see it checking if DISABLE_INTEGRITY_CHECKS at 1'403B13AC  call SepIsOptionPresent. If you trace into that call you see a 'call strstr'. It seems to be comparing the DISABLE_INTEGRITY_CHECKS string to the same string stored elsewhere. I presume that when security checks are disabled, the DISABLE_INTEGRITY_CHECKS string is stored somewhere.

If the strings compare, it moves 1 to ebx at 1'403A2E9D and returns. However, it does more before returning, it MOVs values to rsi, eax,and rbx. Then it adjusts the stack by 0x20 and pops rdi. Then it does the same with the string 'TESTSIGNING'.

Keep in mind that the last call to SepIsOptionPresent set eax = 1. It will still be set to 1. There is a cmp eax to ebx before the second call, and I have no way of knowing without tracing the code what is stored in ebx, It seems to be important because the same comparison is made following the call.

I am thinking that if you can set the code so that it is always seeing DISABLE_INTEGRITY_CHECKS that may solve your problem, even though it calls CIInitialize at 1'403B13F3. Don't know how to do that exactly without tracing the code. Note at 1'403B13C6, after the first integrity check call, that a compare is made between eax and ebx. That is followed by cmovnz edi, ebx. That is a condional MOV which depends on the state of the compare. It says move if not zero which is the same as move if not equal. So, if ebx does not equal eax, it moves ebx to edi.

There is good information here:

⇗ https://j00ru.vexillium.org/2010/06/insi...re-enforcement/

Here's an example of how a kernel rootkit bypassed it. People who do online banking should be aware that a kernel rootkit can hide itself from any user mode protection. The rootkit, in the form of a keylogger, can read keyboard keystrokes and even read the screen input. My bank had no idea such a rootkit existed.

⇗ https://www.sekoia.fr/blog/windows-drive...ass-by-derusbi/

Another very good article on CL.dll:

⇗ https://www.cybereason.com/blog/code-int...look-into-cidll

#6941Gelip⇗ @infuscomus

Zitat von ⇗ infuscomus im Beitrag ¶ #6937
I removed bootdebug and nointegritychecks from my BCD, now black screen is gone and 7E BSOD is back
this 7E BSOD is with XP ntoskrnl/hal.

7E depends on the hardware, but I don't know what exactly does not fit. WinXP 32-bit works on Longhorn Server 2008 16497 32-bit files, but on old hardware - I tested Celeron-S 1.2GHz, NB Intel i815E

P.S. WinXP 64-bit works fine on UEFI 64-bit with .efi files from Longhorn Server 2008 16497 64-bit

WinXP 32-bit starts fine under UEFI 32-bit with Vista 5219 files (tested virtual machine and ⇗ UEFI DUET 32-bit on real old hardware)
Today computers mostly have UEFI 64-bit. Probably to run WinXP 32-bit under UEFI 64-bit you need UEFI OS loader compiled as EBC - EFI Byte Code:


EBC application works on UEFI 32-bit and UEFI 64-bit. Some UEFI bios may not have the EBC implemented - this can be checked using the ⇗ checkebc.efi utility. If the bios doesn't have the EBC you can load the EBC driver ⇗ EBCx64.efi:

#6942infuscomus⇗ @diderius6

This is the fix I use for winload.exe not found - check your GUID ID

1. Boot Win7 x86 ISO
2. Shift+F10 for command prompt
3. type C:
4. type cd boot
5. type bcdedit /set {whatever-GUID-it-is-using} device partition=C:
6. type bcdedit /set {whatever-GUID-it-is-using} osdevice partition=C:
7. exit

winload.exe not found should be gone now.
#6943Gelip⇗ @infuscomus

Zitat von ⇗ infuscomus im Beitrag ¶ #6942
This is the fix I use for winload.exe not found - check your GUID ID

1. Boot Win7 x86 ISO
2. Shift+F10 for command prompt
3. type C:
4. type cd boot
5. type bcdedit /set {whatever-GUID-it-is-using} device partition=C:
6. type bcdedit /set {whatever-GUID-it-is-using} osdevice partition=C:
7. exit

winload.exe not found should be gone now.


In BootICE you can do it easier:

#6944diderius6⇗ @infuscomus
After I repaired BCD,
now I get message, that the digital signature of ntkrnlpa.exe cannot be verified,
even it runs with debug and this test disabled in BCD
Dietmar
#6945infuscomus⇗ @diderius6

This is the same point I got up to, I couldn't get my modded vista kernel to boot.
With unmodded XP kernel I get 7E BSOD with this boot loader.

 

Page 464

#6946diderius6⇗ @infuscomus

I just try something, what ⇗ @gordo999 tells about ci.dll .

In a first try, I nop nop nop nop nop the call of
PAGE:0067EF7A                 call    CiInitialize
in ntkrnlpa.exe
This hacked ntkrnlpa.exe I then open and store again with resource Hacker
Dietmar
PAGE:0067EF78                 push    ecx
PAGE:0067EF79 push ebx
PAGE:0067EF7A nop
PAGE:0067EF7B nop
PAGE:0067EF7C nop
PAGE:0067EF7D nop
PAGE:0067EF7E nop
PAGE:0067EF7F pop edi
PAGE:0067EF80 pop esi
PAGE:0067EF81 pop ebx
PAGE:0067EF82
PAGE:0067EF82 locret_67EF82: ; CODE XREF: sub_67EF03+13 j
PAGE:0067EF82 retn
#6947diderius6⇗ @infuscomus

The message changed now to
0xc000000f
Windows failed to load because the kernel is missing or corrupt
ntkrnlpa.exe

Dietmar
#6948infuscomus⇗ @diderius6

I'm wondering if my usage of kernelex to automate patch of missing code into the file has corrupted it somehow.

Unfortunately I'm not skilled enough to do this patching manually, I think only ⇗ @Mov AX, 0xDEAD or maybe ⇗ @daniel_k would know how to do this kind of patching manually.
#6949diderius6⇗ @infuscomus
We can hack ci.dll
oh, soso much fun
Dietmar
#6950diderius6⇗ @infuscomus
I jumped over all 0xc000000f and 0xc0000428 and nop out the call of CiInitialize
in ntkrnlpa.exe .
Strange enough, then happens the error 0xc0000428 again,
which is in ci.dll .
This means, that ci.dll is also called from other place
Dietmar

PS: I set an breakpoint CC direct before of the call of
PAGE:0067EF7A call CiInitialize
in ntkrnlpa.exe
Again I get message 0xc0000428 about missed signature check. The CC breakpoint there does not stop compi.
This is strange, because with the CC the call of CiInitialize cant happen. So, this 0xc0000428 must happen before the call.
This 0xc0000428 error is at many places in ci.dll .

EDIT: Maybe, that this behavior can be traced in Bochs debugger.
EDIT2: I just copy this into c.img file from Bochs. There it gives "ntldr not found".
This I understand, because the MBR from Bochs is still the MBR looking for XP with ntldr.
I also changed the MBR direct. But this is not enough, for this we need to build a new Vista-XP in Bochs.
#6951infuscomus⇗ @diderius6

If you removed the call to CiInitialize in ntoskrnl.exe try also removing the import too.

also, in that VHD I was lazy with ntkrnlpa.exe and just made a duplicate of ntoskrnl.exe and renamed it - if we aren't using PAE will this still cause problems?
#6952diderius6⇗ @infuscomus
The only thing, that makes all this problems, is ci.dll , first introduced in Vista.
Here is my try to hack ntkrnlpa.exe
and I dont know how to disable the import of ci.dll there.
I look a little bit about ci.dll in Internet, but do not find somebody who succeeds with hack of ci.dll,
so as if ci.dll just not exists. The root kit works other:
The original(!) ntkrnlpa.exe and ci.dll are loaded to ram.
And then, a signed(!) driver just set (changes) the test of ci.dll in Ram to always true, cool
Dietmar

⇗ https://ufile.io/ca24f9lq
#6953infuscomus⇗ @diderius6

If you need PDB symbols for CI.dll I have them
#6954diderius6⇗ @infuscomus
Yes, send to me
Dietmar
#6955infuscomus⇗ @diderius6

here

also, I noticed there is a CI.dll string in winload.exe, maybe nop that too?

infuscomus has attached files to this post
#6956iyutos⇗ http://www.stackprinter.com/export?quest...g.stackexchange

⇗ https://web.archive.org/web/201605262234...ot-process.html

"The kernel checks the digital signatures of all of the image files from which it loads device drivers, using routines exported from ci.dll, the kernel-mode DLL that provides a set of "code integrity" library functions. (Much of the content of ci.dll is exactly the same cryptographic code that is statically linked into winload.exe, including the 8 hardwired Root Certification Authorities.)"

"WINLOAD will halt if one of a small fixed set of image files (winload.exe, ntoskrnl.exe, hal.dll, bootvid.dll, tpm.sys, ksecdd.sys, clfs.sys, ci.dll, kdcom.dll, kdusb.dll, kd1394.dll, and spldr.sys) fails the check."
#6957galagunHere my BCD and Bootmgr (PCAT/UEFI) files. For 32Bit XP and 2003 loading.
- UEFI files come from the last beta which I had available which can boot XP/2003 (no rtm uefi 32bit files available up to win8) (not the same as ⇗ @Gelip ones, which come from some longhorn server beta I don't have).
- PCAT files come from WinVista RTM.

⇗ https://ufile.io/u0k77j1e
#6958gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #6946
I just try something, what @gordo999 tells about ci.dll . In a first try, I nop nop nop nop nop the call of
PAGE:0067EF7A                 call    CiInitialize     in ntkrnlpa.exe
⇗ @diderius6 ....it's too drastic to NOP an entire function without knowning what it does or what values it returns. If I remember correctly, the call to CIInitialze sets up a table of callbacks which are likely pointers to functions that are exported by CI.dll. Those functions may serve other purposes that testing code integrity, like verifying the PE header, etc.

I was focussed more on the code preceding the call to CIinitialize. There are two parameters tested DISABLE_INTEGRITY_CHECKS and TESTSIGNING. The first is obviously set during boot at F8 where the option is presented to turn off integrity checks. The second is a parameter that can be used in BCD, and as part of boot.ini, to tell a 32-bit Vista or W7 OS that a TESTSIGNING is in progress and to ignore integrity checks.

If you follow the code for DISABLE_INTEGRITY_CHECKS, it runs through a call to strstr, which compares strings. the LEA command points to the address where that string should be found. You'll notice that the code following strstr has a conditional jump that either jumps ahead 2 code steps to 67EF4C orlets the following xor zero out ebx. No matter what, the code flow must go through the next code section.

In that section, the TESTSIGNING string is compared in strstr. AFter that function you have an option: either the conditional jump at 67EF67 is taken to 67EF6C or it falls through that jump and ebx is ORed with 8. That is a bit-wise test where each bit in ebx is ORed with 00001000 = 0x8. Don't know till I see what is in ebx what they are testing.

Anyway, I would play with that conditional jump at 67EF67. Try changing the code to EB 03, which will force a jump, or NOP it, which will force the code through the OR statement. Note that the ebx register, after being ORed with 0x8, is PUSHed to CIInitialize as a parameter, right before the call there is a PUSH ebx. The contents of ecx and esi are also passed as parameters with the function call. You may be able to manipulate CIInitialize by finding what its parameters are and seeing what they do. One of them may have a bit that turns off code checking.

Just checked and the first parameter passed (PUSH EBX) is the CiOptions parameter. If it is set right, the integrity chacks should be ignored.
#6959Gelip⇗ @galagun

Zitat von ⇗ galagun im Beitrag ¶ #6957
Here my BCD and Bootmgr (PCAT/UEFI) files. For 32Bit XP and 2003 loading.
- UEFI files come from the last beta which I had available which can boot XP/2003 (no rtm uefi 32bit files available up to win8) (not the same as @Gelip ones, which come from some longhorn server beta I don't have).
- PCAT files come from WinVista RTM.

⇗ https://ufile.io/u0k77j1e

Your .efi files are identical to mine on the Longhorn 2008 5384.4 beta:
#6960jonathan_hzs

 

Page 465

#6961BrooonsMe start XP, all work good.
But, i do not install Kernel-mode Framework 1.1
Explain me, why he needs, please?
#6962Gelip⇗ @jonathan_hzs
Yes, 5384.4 .efi files 32 and 64-bit cause black screen with white bar or two bars on real hardware, Qemu or Oracle VirtualBox. They only work in VMware - I tested 64-bit files in WinXP SP2 64-bit on Workstation 8:
⇗ https://www.betaarchive.com/forum/viewto...=433717#p433717
⇗ https://www.betaarchive.com/forum/viewto...=434155#p434155
#6963infuscomus⇗ @Brooons

KMDF 1.11 is a requirement for the backported windows 8 USB 3 driver.
#6964infuscomus⇗ @gordo999 ⇗ @diderius6

I found this - hope it helps

⇗ https://j00ru.vexillium.org/2010/06/insi...re-enforcement/

Checks, whether nt!g_CiEnabled is set to TRUE

   If so, compares the nt!g_CiCallbacks[0] pointer to NULL
       If not empty, calls the nt!g_CiCallbacks[0] function and quits,
       Otherwise, returns 0xc0000428.
   Otherwise:
       Allocates one byte on the Paged Pools,
       Puts the resulting address into memory pointed to by the first argument,
       Returns STATUS_SUCCESS (or whatever zero means here).
#6965jonathan_hzsI use it now
Can't get rid of the dependence of boot.ini
Also, there is no EFI32 HDD or SSD device
Only EFI32 EMMC devices
just Test with virtual machines

⇗ https://ws28.cn/f/4tzepajanm4
#6966infuscomus⇗ @jonathan_hzs

Try experimenting with more recent vista beta boot loaders.
#6967infuscomus⇗ @diderius6

I think modify SepInitializeCodeIntegrity

change

   jz code_0x140806

to
   jmp code_0x140806

I think this should disable code integrity check in ntoskrnl

edit:
did the mod, try it

infuscomus has attached files to this post
#6968diderius6⇗ @infuscomus

I just test.
The error message 0xc0000428 about cannot verify the digital signature from ntkrnlpa.exe is the same as before.
I understand this, because in other case the normal driver check disable via F8 and/or the connect and start of Windbg would help
Dietmar

PS: Hard job to overcome ci.dll . This file ci.dll gets from the US gouvernment the highest possible safety standard medal for OS.
It does not check one value of the bootfiles, just about 7.

EDIT: So the only chance I think is, to delete all traces, Import and Export functions from or to ci.dll from the bootfiles.
#6969infuscomus⇗ @diderius6

I think I will try to apply a patch to actual ntkrnlpa.exe instead of just duplicating ntoskrnl.exe to see if that makes a difference.
#6970diderius6⇗ @infuscomus

I think, that it makes no difference. Better would be (if possible), to eliminate all traces of ci.dll in the bootfiles
Dietmar
#6971infuscomus⇗ @diderius6

are you able boot into a vista checked build to debug CI.dll to identify and remove it's checks?
#6972diderius6⇗ @infuscomus

First try in ci.dll would be, to jump over all 0xc0000428 .
Yes, with the Bochs debugger it is possible, crazy hard work.

Maybe it is easier, to kick this file ci.dll out of the bootfiles
Dietmar
#6973IxeonHello everyone, I have installed a Windows XP SP3 on my Ryzen 5 1600 PC, but I can't get USB drivers to work. In this thread, few drivers were provided and they partially installed and still it is not enough, I tried to use etron usb drivers and only 2 devices of 4 were identified
[img]https://fastpic.ru/view/114/2021/0302/_c92a18a78b46b91ae31a2007518526f0.png[/img]

Could someone help me, how to proceed with the installation of usb drivers? Thanks
#6974infuscomus⇗ @Ixeon

There is a backported Windows 8 USB 3.0 driver that is universal and much more reliable.

available here - ⇗ https://forums.mydigitallife.net/threads...hardware.81607/
#6975infuscomus⇗ @diderius6

I've patched vista RTM ntkrnlpa.exe and I also spotted a mistake I made in ntoskrnl.exe

please replace these and test if persistent signature error is gone.

infuscomus has attached files to this post

 

Page 466

#6976gordo999
Zitat von ⇗ infuscomus im Beitrag ¶ #6964
Checks, whether nt!g_CiEnabled is set to TRUE
⇗ @infuscomus ...don't think that part is relevant since the reference   nt!g_CiEnabled checks whether WinPE mode is enabled. If you read further, it states, "CiOptions is initialized accordingly to the system boot options, and finally passed to the CiInitialize routine, together with a pointer to KeLoaderBlock...". The critical item is CiOptions.

Look at bottom of pseudo-code, it gives the full function call:

CiInitialize(CiOptions,(KeLoaderBlock+32),&g_CiCallbacks);

That would give an assembly pseudo-code of:

push &CiCallbacks .... a pointer to an array
push KeLoaderBlock+32 ....an address within KeLoaderBlock
pushCiOptions ...whether integrity checks is on/off ot whether TESTSIGNING is on/off
Call CIInitialize

A bit earlier in the pseudo-code you have:

{
     if(SepIsOptionPresent((KeLoaderBlock+84),L"DISABLE_INTEGRITY_CHECKS"))
       CiOptions = 0;
     if(SepIsOptionPresent((KeLoaderBlock+84),L"TESTSIGNING"))
       CiOptions |= 8;
   }

This tells you, if DISABLE_INTEGRITY_CHECKS is present at the KeLoaderBlock at base+ 0x84 then set
CIOptions = 0

if TESTSIGNING is present at that address, set CiOptions to 0x8.

If you look in the ntoskrnl code just before the call to CiInitiialize at 67EF7A, you can see the value returned from the code testing for TESTSIGNING, testing the value in ebx with an OR 8. After the check for DISABLE_INTEGRITY_CHECKS, it XORs the value to 0 if a condition was false.

I would try changing the final PUSH just before the call to CiInitialize to PUSH 0. That should tell the CI.dll that the system is set to disable integrity checks. Easier said than done. It's not easy to change the PUSH ebx at 67EF79 to PUSH 0 since that would require two opcode bytes. The easiest way would be to make sure ebx = 0 at that point.

I have already suggested a way to try that, but maybe we can amend that.

At 67EF67 the opcode is 74 03 and the command is jz 67Ef6C. That jump would bypass the test of ebx by the following OR command that ORs ebx with 8. That's what you see in the pseudo-code referred to above"

if(SepIsOptionPresent((KeLoaderBlock+84),L"TESTSIGNING"))
       CiOptions |= 8;

It's saying that if the TESTSIGNING option has been inserted in boot.ini then ebx should be 0x8. By ORing 0x8 with 0x8, the result will be 0x8, therefore ebx will be unchanged. That means ebx will be passed as the TESTSIGNING option to CIInitialize.

What we could do is NOP the 74 03 and change the opcode following it from 83 CB 08 to 83 CB 00. If I am reading that correctly the command should now read, OR ebx, 0. That should ensure that ebx is 0 when it is PUSHed to CIInitialize.

However, if you are tracing, which I can't because I'm not set up for it, when you trace to 67EF67 and ebx = 0, just leave it and change the opcode at 67EF67 to EB 03.

I'm not sure what the code does between 67EF6C and 67EF76. It may be significant. It's hard to do this without tracing it to see what's going on.
#6977diderius6⇗ @infuscomus

I just test your new ntoskrnl from Vista.
The message about cannot verify the digital signature of ntkrnlpa.exe
is the same as before 0xc0000428
Dietmar
#6978infuscomus⇗ @diderius6

damn,
any luck jumping over 0xc0000428?

⇗ @Mov AX, 0xDEAD
can you help to bypass CI.dll checks?
#6979BrooonsIt is possible?
Patch driver Win7 Integrated Graphics Processor for work on XP?
#6980infuscomus⇗ @Brooons

not at the moment
#6981diderius6⇗ @infuscomus
According to this

⇗ https://vx-underground.org/archive/Syman...-mode-06-en.pdf

the check of the integrity of the boot files in Vista happens in

winload.exe .

"The  most  straight  forward  way  to  evade  driver  signing  restrictions  is  to  simply  patch  the  on-disk  executable  files  and  disable   the   checks   entirely.   To   load  unsigned   drivers   at   runtime,   NTOSKRNL.EXE   needs   to   be   patched.   However,   patching    NTOSKRNL.EXE  will  invalidate  its  digital  signature,  so  that   WINLOAD.EXE  will  refuse  to  load  it.  Therefore,  WINLOAD.EXE will also need to be patched.   "

Dietmar

⇗ http://lib.21h.io/library/PRCMJA2V/downl...20libgen.lc.pdf
#6982diderius6⇗ @infuscomus
Do you have the *.pdb for winload.exe
Dietmar
#6983infuscomus⇗ @diderius6

which version of winload.exe?
#6984diderius6⇗ @infuscomus
The one, which you send to me with last XP with Vista ntkrnlpa.exe, which gives always the error message 0xc0000428
about cannot verify the digital signature
Dietmar

winload.exe  6.0.6001.16497 (longhorn_beta3.070330-1720)
#6985infuscomus⇗ @diderius6

Unfortunately I do not have the symbols for this exact version

I do have pdb symbols for vista RTM winload.exe - I hope these are useful

try booting with vista RTM bootmgr/winload.exe

infuscomus has attached files to this post
#6986diderius6⇗ @infuscomus

I still cant find the place, in which file,
the message

"cannot verify the digital signature"

is generated
Dietmar
#6987infuscomus⇗ @diderius6

there is a reference in ImgpFilterValidationFailure inside winload.exe
#6988diderius6⇗ @infuscomus

The message comes from other place, because the word "digital" is missed.

I make a try to jump over the message in winload.exe
but still the same message "cannot verify the digital signature"
Dietmar

EDIT: By the way I noticed, that all the hacks go to ci.dll.
For to boot with a modded ntkrnlpa.exe I think it is the wrong place,
the error is generated only in a work together via winload.exe and ntkrnlpa.exe .
.text:00422B7A                 mov     ebp, esp
.text:00422B7C cmp ecx, 0C0000428h
.text:00422B82 jnz short loc_422BA9
.text:00422B84 test [ebp+arg_4], 20h
.text:00422B88 jz short loc_422BA9
.text:00422B8A call _BlBdDebuggerEnabled@0 ; BlBdDebuggerEnabled()
.text:00422B8F test al, al
.text:00422B91 jz short loc_422BA9 <--- here I jmp, does not help
.text:00422B93 push [ebp+arg_0]
.text:00422B96 push offset aWindowsIsUnabl ; "*** Windows is unable to verify the sig"...
.text:00422B9B call _BlStatusPrint
.text:00422BA0 pop ecx
.text:00422BA1 pop ecx
.text:00422BA2 call _DbgBreakPoint@0 ; DbgBreakPoint()
.text:00422BA7 xor ecx, ecx
#6989infuscomus⇗ @diderius6

There is an identical string in bootmgr, I don't know if jumping over both in bootmgr and winload will help.
#6990infuscomus⇗ @diderius6

I somehow got past the signature error after making these files - but now another message saying kernel is corrupt.

infuscomus has attached files to this post

 

Page 467

#6991diderius6⇗ @infuscomus

This gives error 0xc0000098 kernel is missing, or corrupt .

This hexnumber appears at 11 places in winload.exe (I think, there it happens)
and at 5 places in ntkrnlpa.exe
and not in ci.dll

Dietmar
#6992infuscomus⇗ @diderius6

did you want checked vista RTM bootmgr and winload.exe with pdb symbols for debugging?
#6993diderius6⇗ @infuscomus
Yes, send all.
I try to debug, when I have time
Dietmar
#6994infuscomus⇗ @diderius6

here are vista RTM checked bootmgr and winload with PDB symbols

infuscomus has attached files to this post
#6995genieautravail⇗ @daniel_k

About WinXPPAE 3.5:

Is there a difference between the parameters /M:ALL and /M:128GB ?

Best regards
#6996Gelip⇗ @diderius6
Still have a Lenovo Flex10 laptop with UEFI 32-bit bios? If so, check if you can boot WinXP 32-bit with UefiSeven 32-bit:

  • prepare WinXP 32-bit on a disk on one NTFS partition in MBR style (not GPT)
  • extract archive u7_UEFI32.zip to USB FAT32 flash drive (EFI and u7 on root USB)
  • copy winload.efi from Vista 5219 to WINDOWS\system32
  • create boot.ini on root USB stick:

    [boot loader]
    timeout=30
    default=multi(0)disk(0)rdisk(1)partition(1)\WINDOWS
    [operating systems]
    multi(0)disk(0)rdisk(1)partition(1)\WINDOWS="WinXP UEFI boot.ini" /noexecute=optin /fastdetect /usenewloader
  • boot PC from this USB flash drive - UEFI Shell should start
  • go to u7 folder fs0: and cd u7
  • run uefiseven

It works with UEFI DUET32 and in QEMU with OVMF-pure-efi.fd bios (fake VESA does not work, but WinXP starts)

Does force fake VESA work for you? After starting WinXP, do you have in memory at C0000 UefiSeven fake INT10?
<-- this screenshot is from WinXP 64-bit when UefiSeven 64-bit force fake INT10 works Gelip has attached files to this post
#6997jonathan_hzs

 
[boot loader]
default=multi(0)disk(1)rdisk(0)partition(1)\WINDOWS
timeout=30
NOBCD
[operating systems]
multi(0)disk(1)rdisk(0)partition(1)\WINDOWS="partition1(&#20998;&#21306;1) Nt5" /noexecute=optin /fastdetect /usenewloader
multi(0)disk(1)rdisk(0)partition(2)\WINDOWS="partition2(&#20998;&#21306;2) Nt5" /noexecute=optin /fastdetect /usenewloader
multi(0)disk(1)rdisk(0)partition(3)\WINDOWS="partition3(&#20998;&#21306;3) Nt5" /noexecute=optin /fastdetect /usenewloader
#6998jonathan_hzsThe real machine is a black screen reboot
#6999Gelip⇗ @jonathan_hzs

Zitat von ⇗ jonathan_hzs im Beitrag ¶ #6998
The real machine is a black screen reboot

This is the answer to my posts? Do you have a UEFI32 bit computer?

P.S. At the beginning, mark whoever you are writing to, starting post with @user_name
#7000jonathan_hzsanother mbr disk boot gpt partions xp
#7001jonathan_hzsefi32 computer is z3735 pad
IT is emmc disk.
#7002Gelip⇗ @jonathan_hzs ⇗ @diderius6

Zitat von ⇗ jonathan_hzs im Beitrag ¶ #6998
The real machine is a black screen reboot

Sorry, but I forgot about boot.ini on USB stick - I edited post: ¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (468)
#7003jonathan_hzs⇗ http://bbs.wuyou.net/forum.php?mod=viewt...extra=page%3D10
If you are interested, you can try this modified version
Same mirror 24 hours fast link
⇗ https://ws28.cn/f/4v2jam6cbzc
I think uefiseven cannot bring anny help
#7004AmirInstalling Windows XP on... UEFI.https://m.youtube.com/watch?v=kqq87j2jJZY&amp;t=207s
#7005Gelip⇗ @jonathan_hzs
But this winXP_SP2_2003.wim is probably only legacy and not UEFI - they write something about bootmgr and VMware but nothing about UEFI.

UefiSeven is based on VgaShim: ⇗ https://github.com/manatails/uefiseven

Zitat
Credits

   Original VgaShim project


VgaShim is based on OVMF VbeShim: ⇗ https://github.com/davidcie/VgaShim

Zitat
Credits

   This solution is based on a VBE shim prepared by the OVMF project (QemuVideoDxe/VbeShim).


⇗ https://github.com/tianocore/edk2/blob/m...eoDxe/VbeShim.c

Virtual machines do not need UefiSeven 32 or 64-bit because they have their own fake INT10 code. VMware has its own code but VBox and Qemu use OVMF UEFI 32-bit and UEFI 64-bit bios OVMF-pure-efi.fd and OVMF-with-csm.fd which has a fake INT10 VbeShim in QemuVideoDxe.efi driver:



Real UEFI 32-bit or UEFI 64-bit computers do not have fake INT10 in bios only:

UEFI + CSM + legacy ROM graphics card

or

pure UEFI class 3 + GOP ROM graphics card

GOP is only supported since Win8

Win7 64-bit UEFI or WinXP 64-bit UEFI with Vista beta .efi files not support GOP ROM but support fake INT10 which is possible with UefiSeven.

Therefore, you should only test UefiSeven on real computers with a graphics card that has a GOP ROM !!!

 

Page 468

#7006jonathan_hzsno interest on winxp64.
i know it Win7 64-bit UEFI or WinXP 64-bit UEFI with Vista beta .efi files not support GOP ROM but support fake INT10 which is possible with UefiSeven.
#7007jonathan_hzsI don't feel that uefiseven is helpful for 32xp
#7008Gelip
Zitat von ⇗ jonathan_hzs im Beitrag ¶ #7007
I don't feel that uefiseven is helpful for 32xp


I asked manatails to compile a UefiSeven 32-bit and he did it but i don't have a real UEFI32 computer to test it.
To check this you have to test UefiSeven 32-bit on a real UEFI 32-bit computer without CSM or when you disable CSM in bios.

There were such computers, for example, Lenovo Flex10 UEFI32 - that's why I wrote to ⇗ @diderius6 to test UefiSeven 32-bit

In VMware UEFI32 WinXP 32-bit boot OK with Vista beta 5219 files but thanks to fake INT10 not GOP.
#7009diderius6⇗ @Gelip
Now I try uefiseven compiled for 32bit on the Lenovo Flex 10 notebook.
For this, first I have to flash back the Bios to the pure 32 Bit version without any CSM, because I edited the DSDT in its Bios as much as possible for to enable XP SP3 on it on a ntfs partition and Sata harddisk.
This works only with EEpromer.
Until now I have a working XP SP3 on it with all drivers,
only not graphic driver, because I tried in vain to build a Baytrail driver for XP in my last holidays.
When all went ok, the first test will be, that now my XP SP3 does not start on it (because no UEFI).
And the same for Win7 and Win8. Win8.1 should work, because there is a 32 bit Uefi version of it.
Then I do everything as you describe in your post for uefi boot of XP SP3 on this notebook without any CSM
Dietmar


EDIT: I do not succeed to flash the pure 32 UEFI Bios. I get only black screen. I doublecheck Bios flash with EEpromer.
I remember this behavior from last year, there suddently the screen comes back but just until now not.

Edit2: I succeed to tell the Lenovo Flex 10 to be 32 bit. Realy funny: Now it has the date of the Bios before, but whole Bios body is 32 bit, oh soso much fun.
Now it shows "No boot device" with the before working XP, and pure UEFI boot can only be choosen.





As you can see, Bios changed from 64 Bit ---> 32 Bit, CSM is gone.
#7010diderius6⇗ @Gelip
The hook to the harddisk does not work until now for uefiseven.
Status:0xc0000098. Info:The Windows Boot Configuration file does not contain a valid OS entry. (here boot.ini)
But when I copy the whole XP SP3 to the USB stick with the UEFI boot files, it starts from there.
After first boot stage it crashes, because the USB boot files are not correct from normal XP for to boot via USB.

But anyway this works, first time XP SP3 boots from pur UEFI on real compi,
nice:))

Dietmar

boot.ini on USB stick with content

[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(1)partition(1)\WINDOWS
[operating systems]
C:\WINDOWS="XP SP3 on pur UEFI" /noexecute=optin /fastdetect /usenewloader
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional" /noexecute=optin /fastdetect /usenewloader
multi(0)disk(0)rdisk(1)partition(1)\WINDOWS="Microsoft Windows XP Professional" /noexecute=optin /fastdetect /usenewloader



#7011infuscomus⇗ @Gelip

I got XP to boot using the server 2008 beta bootmgr/winload.exe files - through testing I think WinXPPAE is not compatible with this loader - it says that the HAL is corrupt.

⇗ @daniel_k

have you tested you WinXPPAE with the server 2008 beta bootmgr/winload.exe files?
#7012THE_FISTIs there any new acpi.sys for z590? My z490 XP OS does not work on z590...appreciate the help
#7013infuscomus⇗ @THE_FIST

post a pic of the A5 BSOD you get
#7014daniel_k
Zitat von ⇗ infuscomus im Beitrag ¶ #7011
@daniel_k

have you tested you WinXPPAE with the server 2008 beta bootmgr/winload.exe files?

Sorry, not interested on these things.
#7015infuscomus⇗ @Gelip

Since I confirmed that XP could be booted using this server 2008 beta bootloader I thought I'd try replacing ntoskrnl/hal and dependencies with the files from the 2008 beta - I got a BSOD 12A - MUI_NO_VALID_SYSTEM_LANGUAGE

I'll try grabbing the MUI files and see if that makes a difference

edit: didn't seem to work
#7016diderius6⇗ @Gelip

I think, that the hook to the harddisk not works,
because there are just no drivers for the Sata harddisk
Dietmar
#7017jonathan_hzsreply #7023
usbxp Set limits for 24 hours ldownload ink
⇗ https://ws28.cn/f/4ve2ih3ykyw
It can boot from a USB device,old usb2
#7018jonathan_hzsThe modified XP system cannot be implemented
PAE 3.5+ RAM Unlock and fix128v48
You're going to have a blue screen, here
#7019Gelip⇗ @diderius6

Zitat von ⇗ diderius6 im Beitrag ¶ #7010
The hook to the harddisk does not work until now for uefiseven.
Status:0xc0000098. Info:The Windows Boot Configuration file does not contain a valid OS entry. (here boot.ini)
But when I copy the whole XP SP3 to the USB stick with the UEFI boot files, it starts from there.


Error 98 means the loader doesn't know where the WinXP system is. WinXP 32-bit should be on the disk on the NTFS partition and boot.ini on the USB flash drive and should look like this:
[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(1)partition(1)\WINDOWS
[operating systems]
multi(0)disk(0)rdisk(1)partition(1)\WINDOWS="WinXP UEFI boot.ini" /noexecute=optin /fastdetect /usenewloader
If you still get error 98 then try changing rdisk(x) in boot.ini on USB
#7020Gelip⇗ @diderius6

Zitat von ⇗ diderius6 im Beitrag ¶ #7009
only not graphic driver, because I tried in vain to build a Baytrail driver for XP in my last holidays.

To test WinXP 32-bit under UEFI 32-bit use the vbemp graphics driver:
⇗ https://www.betaarchive.com/forum/viewto...=434999#p434999

vbempk\VBE30\XP2003\PNP from ⇗ vbempk.zip 2015.01.01

 

Page 469

#7021diderius6⇗ @Gelip
I tried this. nothing changed. Always the same error 0xc0000098 .
There is no driver for the Sata disk I think for XP SP3 32 bit,
because via USB harddisk XP SP3 pure UEFI works
Dietmar
#7022Gelip⇗ @diderius6

Zitat von ⇗ diderius6 im Beitrag ¶ #7021
@Gelip
I tried this. nothing changed. Always the same error 0xc0000098 .
There is no driver for the Sata disk I think for XP SP3 32 bit,
because via USB harddisk XP SP3 pure UEFI works
Dietmar

Yeah, you are right - error 98 is also when there is no disk driver and when the partition is in GPT mode. Vista 5219 32-bit loader not support GPT:
⇗ https://www.betaarchive.com/forum/viewto...=450810#p450810
#7023Gelip⇗ @diderius6

Zitat von ⇗ diderius6 im Beitrag ¶ #7021
because via USB harddisk XP SP3 pure UEFI works

Please make screenshot when UefiSeven locks C0000 memory.
#7024diderius6⇗ @Gelip

I flashed back the original 64 bit Bios on the Flex10.
Then I setup there a working XP SP3 on a fat32 partition on a harddisk in an USB box,
which I test, that it can boot from USB3. I copy all the UEFI files and folders there at their place.
Then I flash back 32 bit Bios.
When I now start direct from this USB harddisk,
first step of XP boot works, but then hangs again,
meaning the reason for hanging is not only the Sata drivers because now is on USB3
Dietmar

#7025jonathan_hzsefi64 boot xp32 from usb3?
efi32 didn't boot xp32 from usb?
#7026diderius6⇗ @infuscomus

First I get Bsod 0x7b.
So I integrate by hand the iastor 1006 driver from fernando.
Then the legacy XP boots.
The XP (with EMS enabled?) hangs very late in the boot process.
I run a Windbg session but no Bsod can be seen there, just running.
I can break and restart with "g".
The same is in Safe Mode and with VGA
Dietmar

PS: May be for tests it is better to make a minimal XP SP3, with only the absolut necessary drivers.

EDIT: After some minutes I get an endless printout from Windbg with always the same lines

I just find, that this is a bug in .net 4.0

*** HR originated: -2147024774
***   Source File: d:\iso_whid\x86fre\base\isolation\com\copyout.cpp, line 1391


*** HR propagated: -2147024774
***   Source File: d:\iso_whid\x86fre\base\isolation\com\identityauthority.cpp, line 278


*** HR originated: -2147024774
***   Source File: d:\iso_whid\x86fre\base\isolation\com\copyout.cpp, line 1391


*** HR propagated: -2147024774
***   Source File: d:\iso_whid\x86fre\base\isolation\com\identityauthority.cpp, line 278

and now

*** HR propagated: -2147024774
***   Source File: d:\iso_whid\x86fre\base\isolation\com\enumidentityattribute.cpp, line 144
#7027diderius6⇗ @jonathan_hzs

On 64 bit Bios I use normal CSM legacy boot on the Lenovo Flex10 for the XP SP3, which boots from USB3, sitting on a Fat32 partition.
When I flash Bios back to 32 Bit pure UEFI (wothout any CSM) XP SP3 starts, but after mup.sys in next boot stage it hangs
Dietmar
#7028infuscomus⇗ @diderius6

what were you debugging here? my modded kernel?
#7029diderius6⇗ @infuscomus

The whole *.vhd XP, that you send to me.
I put it on an normal harddisk and boot from it.
Legacy XP SP3 starts but this one with EMS enabled hangs.
Most drivers are loaded, I can see in Windbg. So, may be it hangs because of a driver
Dietmar
#7030infuscomus⇗ @diderius6

VMWare additions maybe? I installed them in this image so maybe that is why?

Maybe it will only work from a new install - I'm going to send you a beta ISO of ⇗ @George King 's XP2ESD program as that is how I made this image
#7031George King
Zitat von ⇗ infuscomus im Beitrag ¶ #7030
@diderius6

VMWare additions maybe? I installed them in this image so maybe that is why?

Maybe it will only work from a new install - I'm going to send you a beta ISO of @George King 's XP2ESD program as that is how I made this image


You both got same testing ISO created using unreleased XP2ESD v1.5 beta3. I will add some fixes and build beta4 with included winload.exe v6.0.6001.16497 (longhorn_beta3.070330-1720). Good is system can be booted without NTLDR and boot.ini. Will see if it can detect HAL too. [TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#7032Gelip⇗ @diderius6
The photo you placed shows that UefiSeven cannot lock the C0000 memory. Earlier you wrote that you boot WinXP from USB (after copy Windows to USB) without CSM with UefiSeven? Could you repeat that and then take a screenshot if UefiSeven is blocking C0000 or not?

EDIT: How UefiSeven works when you delete a file UefiSeven.force_fakevesa ?

⇗ @diderius6
EDIT2: Please delete or rename boot.ini on USB, run UefiSeven and after back to UEFI Shell type:

mem c0000 100

Then what is under C0000 - the video card ROM, empty 00 00 00 or UefiSeven fake INT10?
#7033diderius6⇗ @Gelip
Here is my screenshot from the Lenovo Flex10.
It seems, that the fake vesa for INT10 is at the right place loaded to memory.
So, the reason why XP SP3 hangs after first boot stage (ending with mup.sys),
is at another place
Dietmar

#7034Gelip⇗ @diderius6

Zitat von ⇗ diderius6 im Beitrag ¶ #7033
So, the reason why XP SP3 hangs after first boot stage (ending with mup.sys),

I understand you are using winload.efi 5219?
#7035diderius6⇗ @Gelip
Yes, from your files here
Dietmar

 

Page 470

#7036Gelip⇗ @diderius6
Have you installed the vbemp graphics driver? WinXP is best to deploy or restore to disk from image (e.g. installed on VMware): ⇗ How to deploy WinXP 64-bit on a UEFI (without CSM) in AHCI << this is for WinXP 64-bit but same can be done for WinXP 32-bit

⇗ @diderius6
or Remote Desktop and disable services vga & vgasave: ⇗ https://www.betaarchive.com/forum/viewto...=434653#p434653
#7037Gelip⇗ @diderius6
You use WinXP HAL ACPI or not ACPI?
#7038diderius6⇗ @Gelip
XP SP3 with acpi.sys from outerspace ),
works also for USB3 boot under 64bit Bios with CSM on the Lenovo Flex10
Dietmar

PS: Remote Desktop I tested for UEFI boot for XP 64 (SP1and SP2) without CSM on the Asrock board with 64 bit Bios, works.
But without working Video on the Asrock board, this has not so much sense.
#7039diderius6⇗ @George King ⇗ @infuscomus

I test the winload.exe,
which comes with the last Beta3 version.
Normal XP SP3 boot works,
but with the winload.exe it hangs in ntkrnlpa.exe
Dietmar

Edit: I found this place in ntkrnlpa.exe from original XP SP3 5512 version
It is an endless loop

IDA Pro
.text:0046ED54 loc_46ED54: ; CODE XREF: KiIdleLoop()+19 j
.text:0046ED54 cmp dword ptr [ebx+128h], 0 ----------------------------> endless loop
.text:0046ED5B jz short loc_46ED34 ----------------------------------------------> endless loop
.text:0046ED5D mov ecx, 1Ch
.text:0046ED62 call ds:__imp_@KfRaiseIrql@4 ; KfRaiseIrql(x)

Windbg
nt!KiDispatchInterrupt+0x38a:
8106ed3a ff11 call dword ptr [ecx]
6: kd>
nt!KiDispatchInterrupt+0x38c:
8106ed3c f390 pause
6: kd>
nt!KiDispatchInterrupt+0x38e:
8106ed3e fb sti
6: kd>
nt!KiDispatchInterrupt+0x38f:
8106ed3f 90 nop
6: kd>
nt!KiDispatchInterrupt+0x390:
8106ed40 90 nop
6: kd>
nt!KiDispatchInterrupt+0x391:
8106ed41 fa cli
6: kd>
nt!KiDispatchInterrupt+0x392:
8106ed42 3b6d00 cmp ebp,dword ptr [ebp]
6: kd>
nt!KiDispatchInterrupt+0x395:
8106ed45 740d je nt!KiDispatchInterrupt+0x3a4 (8106ed54)
6: kd>
nt!KiDispatchInterrupt+0x3a4:
8106ed54 83bb2801000000 cmp dword ptr [ebx+128h],0

6: kd>
nt!KiDispatchInterrupt+0x3ab:
8106ed5b 74d7 je nt!KiDispatchInterrupt+0x384 (8106ed34)
6: kd>
nt!KiDispatchInterrupt+0x384:
8106ed34 8d8b500c0000 lea ecx,[ebx+0C50h]
6: kd>
nt!KiDispatchInterrupt+0x38a:
8106ed3a ff11 call dword ptr [ecx]
6: kd>
nt!KiDispatchInterrupt+0x38c:
8106ed3c f390 pause
6: kd>
nt!KiDispatchInterrupt+0x38e:
8106ed3e fb sti
6: kd>
nt!KiDispatchInterrupt+0x38f:
8106ed3f 90 nop
6: kd>
nt!KiDispatchInterrupt+0x390:
8106ed40 90 nop
6: kd>
nt!KiDispatchInterrupt+0x391:
8106ed41 fa cli
6: kd>
nt!KiDispatchInterrupt+0x392:
8106ed42 3b6d00 cmp ebp,dword ptr [ebp]
6: kd>
nt!KiDispatchInterrupt+0x395:
8106ed45 740d je nt!KiDispatchInterrupt+0x3a4 (8106ed54)
6: kd>
nt!KiDispatchInterrupt+0x3a4:
8106ed54 83bb2801000000 cmp dword ptr [ebx+128h],0
#7040infuscomus⇗ @diderius6

Try pressing F8 and then entering Safe Mode
#7041diderius6⇗ @infuscomus
I tried F8 also,
result is the same
Dietmar
#7042infuscomus⇗ @diderius6

does it give a BSOD?
#7043diderius6⇗ @infuscomus
No Bsod,
it hangs in this endless loop as I show above.
I has something to do, how the memory is paged and used an newer Intel CPU
Dietmar
#7044George KingIn Generic AHCI driver storahci.inf was discovered bug. See more here.

 
https://forums.mydigitallife.net/threads/drivers-and-tools-to-run-windows-xp-on-newer-hardware.81607/page-9#post-1648546



For upcoming XP2ESD v1.5 I fixed it.
⇗ @diderius6 ⇗ @infuscomus This fix will be included in beta4 for testing

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#7045diderius6I wrote here,
that sometimes after Bios flash with EEpromer I get a black screen on the Flex10,
even I doublecheck always the content of the Bios Chips with its original file.
Now I understand, why this happens.
I can reproduce this behavior, just for fun for about 10 times.
It seems, that some parts of this notebook motherboard desolder from themselfs,
for example the Bios chip.
So it is not the Bios flash, just the manual handling with this motherboard.
I have this crazy phaenomen on 2(!) different Flex10 boards,
what a crazy bad solder quality by Lenovo on the Flex10 motherboard
Dietmar

PS: One of those Flex10 notebooks is brandnew.
It even could be, that some components are only glued in, not soldered at all.
For to test this, I make the ultimative test for the Bios chip.
I can remove by hand the whole "soldered" Bios chip from the brandnew Flex10,
so the original Bios chip is only glued in. The "solder" points under the Bios chip do not show the smallest damage,
just the Bios chip is outside.
#7046Gelip
Zitat von ⇗ diderius6 im Beitrag ¶ #7045
I can remove by hand the whole "soldered" Bios chip from the brandnew Flex10

Not soldered  it sucks.
#7047diderius6⇗ @Gelip

I solder the Bios chip back into the brandnew Flex10 by hand.
Now, the black screen often seen after Bios update is gone )
Dietmar

#7048Gelip⇗ @diderius6

Zitat von ⇗ diderius6 im Beitrag ¶ #7047
I solder the Bios chip back into the brandnew Flex10 by hand.

You tried to program the chip with the SOIC 8 clip without desoldering? Apparently Lenovo X220 can be done, so maybe Flex10 too:
⇗ https://tylercipriani.com/blog/2016/11/1...a-raspberry-pi/
#7049infuscomus⇗ @Gelip

If I understood ⇗ @diderius6 correctly, the chip was never actually soldered in the first place.
#7050diderius6⇗ @infuscomus ⇗ @Gelip
Yes, I put the Bios chip out only with hand, brrr..
But now it is soldered by hand for the first time solid rock on the Flex10 motherboard
Dietmar


⇗ @infuscomus
I debug your last 12A setup.
The legacy XP does not start, just hangs from beginning.

And the XP (with EMS) gives Bsod 0x12A, because no information about the language pack is stored in registry.
I found via Ida Pro the place in ntkrnlpa.exe where this Bsod happens

PAGE:0069332D                 mov     _MUIRegistryInfo, eax
PAGE:00693332 mov eax, [ebp+var_74]
PAGE:00693335 mov _MUIRegistryInfoSize, eax
PAGE:0069333A cmp [ebp+var_70], ebx
PAGE:0069333D jnz short loc_69334A
PAGE:0069333F push 8002h ; BugCheckParameter2
PAGE:00693344
PAGE:00693344 loc_693344: ; CODE XREF: NtGetMUIRegistryInfo(x,x,x)+1DD j
PAGE:00693344 call _MUIBugCheck@4 ; MUIBugCheck(x)
PAGE:00693344 ; ---------------------------------------------------------------------------
PAGE:00693349 align 2
PAGE:0069334A
PAGE:0069334A loc_69334A: ; CODE XREF: NtGetMUIRegistryInfo(x,x,x)+1BE j
PAGE:0069334A cmp [ebp+var_68], ebx
PAGE:0069334D jnz short loc_693363
PAGE:0069334F cmp ds:_PsUILanguageComitted, ebx
PAGE:00693355 jz short loc_69335E -------> gives BSOD 0x12A, when not ZERO

PAGE:00693357 push 8001h
PAGE:0069335C jmp short loc_693344
PAGE:0069335E ; ---------------------------------------------------------------------------
PAGE:0069335E
PAGE:0069335E loc_69335E: ; CODE XREF: NtGetMUIRegistryInfo(x,x,x)+1D6 j
PAGE:0069335E call _MigrateOOBELanguageToInstallationLanguage@0 ; MigrateOOBELanguageToInstallationLanguage()
PAGE:00693363



And the XP (with EMS) shows via Windbg

Microsoft (R) Windows Debugger Version 6.12.0002.633 X86
Copyright (c) Microsoft Corporation. All rights reserved.

Opened \\.\com1
Waiting to reconnect...
Connected to Windows Vista 6000 x86 compatible target at (Tue Mar 9 12:56:17.380 2021 (UTC + 1:00)), ptr64 FALSE
Kernel Debugger connection established.
Symbol search path is: C:\WINDOWS\symbols
Executable search path is: C:\WINDOWS\symbols
Windows Vista Kernel Version 6000 (Service Pack 3) MP (1 procs) Free x86 compatible
Built by: 6000.16386.x86fre.vista_rtm.061101-2205
Machine Name:
Kernel base = 0x81400000 PsLoadedModuleList = 0x81511db0
System Uptime: not available
Break instruction exception - code 80000003 (first chance)

A fatal system error has occurred.
Debugger entered on first try; Bugcheck callbacks have not been invoked.

A fatal system error has occurred.

Connected to Windows Vista 6000 x86 compatible target at (Tue Mar 9 12:56:19.458 2021 (UTC + 1:00)), ptr64 FALSE
Loading Kernel Symbols
..........................................
Loading User Symbols

*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

Use !analyze -v to get detailed debugging information.

BugCheck 12A, {1, 46, 0, 0}

Probably caused by : ntkrpamp.exe ( nt!CmGetSystemControlValues+57 )

Followup: MachineOwner
---------

nt!RtlpBreakWithStatusInstruction:
81481760 cc int 3
kd> !analyze -v
*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

MUI_NO_VALID_SYSTEM_LANGUAGE (12a)
Windows did not find any installed, licensed language packs for the system default UI language.
Arguments:
Arg1: 00000001, Windows did not find any installed language packs during
phase I initialization.
Arg2: 00000046, NT status code that describes the reason of failure.
Arg3: 00000000
Arg4: 00000000

Debugging Details:
------------------


DEFAULT_BUCKET_ID: VISTA_DRIVER_FAULT

BUGCHECK_STR: 0x12A

CURRENT_IRQL: 1

LAST_CONTROL_TRANSFER: from 814d873f to 81481760

STACK_TEXT:
814f16e4 814d873f 00000003 814fac74 00000000 nt!RtlpBreakWithStatusInstruction
814f1734 814d91ac 00000003 00000001 00000046 nt!KiBugCheckDebugBreak+0x1c
814f1ae0 814d85c9 0000012a 00000001 00000046 nt!KeBugCheck2+0x5f4
814f1b04 8173fc58 0000012a 00000001 00000046 nt!KeBugCheckEx+0x1e
814f1b48 8173a596 00000000 814f8300 814f4820 nt!CmGetSystemControlValues+0x57
814f1cdc 816b901e 808076b0 814f1d3c 816babf9 nt!InitBootProcessor+0x257
814f1ce8 816babf9 00000000 808076b0 814fa67c nt!ExpInitializeExecutive+0x13
814f1d3c 814e6319 814f8740 814f8300 814f2000 nt!KiInitializeKernel+0x656
00000000 f000eef3 f000e2c3 f000eef3 f000eef3 nt!KiSystemStartup+0x319
WARNING: Frame IP not in any known module. Following frames may be wrong.
00000000 00000000 f000e2c3 f000eef3 f000eef3 0xf000eef3


STACK_COMMAND: kb

FOLLOWUP_IP:
nt!CmGetSystemControlValues+57
8173fc58 cc int 3

SYMBOL_STACK_INDEX: 4

SYMBOL_NAME: nt!CmGetSystemControlValues+57

FOLLOWUP_NAME: MachineOwner

MODULE_NAME: nt

IMAGE_NAME: ntkrpamp.exe

DEBUG_FLR_IMAGE_TIMESTAMP: 4549ae00

FAILURE_BUCKET_ID: 0x12A_nt!CmGetSystemControlValues+57

BUCKET_ID: 0x12A_nt!CmGetSystemControlValues+57

Followup: MachineOwner
---------

kd> lm
start end module name
81252000 81253100 WMILIB (deferred)
81274000 8127c000 kdcom (deferred)
8127c000 81285000 PSHED (deferred)
81285000 8128d000 BOOTVID (deferred)
8128d000 812c8000 CLFS (deferred)
812c8000 812f7d80 ACPI (deferred)
812f8000 81308a80 pci (deferred)
81309000 81312180 isapnp (deferred)
81313000 81315800 compbatt (deferred)
81316000 81319780 BATTC (deferred)
8131a000 8131b580 intelide (deferred)
8131c000 81322180 PCIIDEX (deferred)
81323000 8132d700 MountMgr (deferred)
8132e000 8132f700 dmload (deferred)
81330000 81334d00 PartMgr (deferred)
81335000 81339700 storpor8 (deferred)
81400000 817a1000 nt (pdb symbols) c:\windows\symbols\ntkrpamp.pdb
817a1000 817d5000 hal (deferred)
81c00000 81ce1000 CI (deferred)
81ce1000 81db4000 sptd (deferred)
81db4000 81dd2880 ftdisk (deferred)
81dd3000 81df8700 dmio (deferred)
81df9000 81e08c80 vmci (deferred)
81e09000 81e15c80 VolSnap (deferred)
81e16000 81e23d00 vsock (deferred)
81e24000 81e3b900 atapi (deferred)
81e3c000 81e56b00 symmpi (deferred)
81e57000 81e6e880 SCSIPORT (deferred)
81e6f000 81e82000 storahci (deferred)
81e82000 81ecb000 storport (deferred)
81ecb000 81eed680 ntoskrn8 (deferred)
81eee000 81f0b000 lsi_sas2 (deferred)
81f0b000 81f13e00 disk (deferred)
81f14000 81f20180 CLASSPNP (deferred)
81f21000 81f40b00 fltMgr (deferred)
81f41000 81f52f00 sr (deferred)
81f53000 81f69b80 KSecDD (deferred)
81f6a000 81ff6d00 Ntfs (deferred)
81ff7000 82023a80 NDIS (deferred)
82024000 820a6000 wdf01000 (deferred)
820a6000 820b4000 WDFLDR (deferred)
820b4000 820cde80 Mup (deferred)
820ce000 820d8580 agp440 (deferred)

 

Page 471

#7051infuscomus⇗ @diderius6

I wonder how Vista is designed to detect which system language is installed? It is obviously different from how XP detects language since this was a working XP install and I just swapped ntoskrnl/hal.
#7052infuscomus⇗ @diderius6

do you think copying every registry key with MUI in it from an existing vista install would be enough to get past this BSOD?
#7053George King
Zitat von ⇗ infuscomus im Beitrag ¶ #7052
@diderius6

do you think copying every registry key with MUI in it from an existing vista install would be enough to get past this BSOD?


I don't think it will be related to MUI registry key. I will scan LP installing process in Windows 7 RTM, where are no LPs. These locations should be same. But it can be also caused by file scan, as language pack package should be placed in correct place in packages directory.
Also it can be related to this registry as I cannot uninstall LP until it was modded
 
https://forums.mydigitallife.net/threads/how-remove-default-thin-pc-language-pack.81205/



I will try to do this LP scan in few days

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#7054infuscomus⇗ @George King

Do you think it is possible to integrate a Vista language pack into an XP install?
#7055gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #7045
I can remove by hand the whole "soldered" Bios chip from the brandnew Flex10,
so the original Bios chip is only glued in. The "solder" points under the Bios chip do not show the smallest damage, just the Bios chip is outside.
diderius6 ...normally, that kind of chip with the pads underneath is connected by a hot air flow. They may have developed some kind of conductive glue but I am guessing the batch from which your motherboard came did not have the airflow at the proper temperature to melt the solder.

Can you post a photo of the BIOS chip on the mobo and maybe photos of the mobo and chip when they are off? It's hard to visualize solder pads with no visible sign of solder.

When removing and replacing chips on a mobo or any board, it's better to have a good solder flux. I have a Zhaoxin 858D rework station which is a hot air device with different sized funnels to direct the hot air.

Sorry...saw your photo later. Pretty weird that you could remove the chip without de-soldering. Poor quality control. It appears from your photo that you may not have used soldering flux. The solder did not flow very well, especially on the lower pins on the left pin.

It's very tough to do, I am not being critical. You need the right temperature, a very fine point on the soldering iron, the right solder and flux. I have an adjustable heat soldering station with different tips which is a lot better than using my trusty old 25 watt iron. There is not very much space on modern mobos and I sometimes use an overhead microscope and amplify the board 100x.

The hot air station is very good as well once you get used to it. It's pretty well essential for surface mount technology.
#7056George KingNo It's impossible, but I hope I can reproduce same error on Windows 7, then find certain reg key or package file location.
Can you send me your files, so I can reproduce it on XP too?

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#7057infuscomus⇗ @George King

I sent you a PM with my files.
#7058diderius6⇗ @gordo999

You are right, this time I do not use any solder flux.
The reason for this is:
On the solder pads on the motherboard itself was a lot of solder,
like small, high round hill on each pad.
No solder at all at the legs of the Bios chip.
So, any more solder or even flux can make those "hills" melt and connect pins to each other.
I use my 30 Watt iron, press the Bios chip as heavy as I could with fingers on the pad,
and the iron on them. So, the "hills" got melted and the Bios chip legs just sink into it
Dietmar

PS: On my older Flex 10 I removed the Bios chip with a HOT airgun from China.
Problem in this airgun is, that the temperature is about 500 degrees and it has too much power.
At once the Bios chip flies away ). On this older Flex 10 board after airgun I cleaned pins on motherboard and on the Bios chip from all solder, then use flux and the Bios chip sits perfect on the pads. To solder this was easy, because I can use much less solder than it is original on the new flex 10 board.
Yes, a good microscop lense would be very helpful, I just use glasses.
#7059gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #7058
On the solder pads on the motherboard itself was a lot of solder, like small, high round hill on each pad. No solder at all at the legs of the Bios chip.

diderius6 ...Dietmar, the reason I use flux on old solder is that the old stuff gets hard to melt. A bit of flux makes it flow better. If there is too much and it flows across the pins you can 'wick' if off using braided copper which is designed for that. Or, use a suction device when the solder is melted.

The biggest problem, as you know is too much heat. That can destroy the chips, or cause the 'lands' to which the chip is attached to lift off the board. I use a very light (small diameter) solder (60/40) which melts fast and I add a small amount to the iron tip as I touch it on the chip lead to get it flowing. I try not to leave the tip on more than a second or two.

In the old days we'd use a heat sink of some sort on transistor leads to draw the heat away (small alligator clip). You could wedge the end of a long piece of 22 gauge copper wire between the chip leads, above where you are working, to suck some of the heat away.

With the hot air guns, I use tweezers to hold the chip in place, after tinning both the pad and the chip lead.  With the iron, I hold the chip with the tweezers while I attach one lead (after tinning the pad and lead). Then I go to another lead on the other side of the chip so I don't get too much heat in one area. Once a couple of leads are soldered it's easier to do the rest.

Zitat von ⇗ diderius6 im Beitrag ¶ #7058
Problem in this airgun is, that the temperature is about 500 degrees and it has too much power.
Know what you mean. For me, it's trying to find the right distance and using a funnel attachment that is about 3/16" diameter, to focus the heat.

Zitat von ⇗ diderius6 im Beitrag ¶ #7058
Yes, a good microscop lense would be very helpful, I just just glasses.

I was doing extensive work on a mobo, changing mosfets, and needed to trace the circuit. Could hardly see the traces. Bought a stereoscope microscope like the one at the link. It gives you 9" clearance between the lower lens and the work piece.

⇗ https://www.amscope.com/stereo-microscop...neck-light.html
#7060diderius6⇗ @gordo999

Thanks for the link. I like a lot the microscops there!

For a good stereoscope microscope 3 things must be fulfilled:

1.) Big distance between lense and object, at which you look
2.) Also possible low magnification
3.) Good light, this may be the most important

Dietmar
#7061gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #7060
3.) Good light, this may be the most important...
diderius6 ...the unit at the link comes with an LED lamp on a goose neck holder for placing the light. You can see it on the example, it's the long, black attachment and you can bend the holder to shine directly onto the work. The base of the unit is quite heavy, for stability.
#7062infuscomus⇗ @George King

any updates on XP2ESD?
#7063George King
Zitat von ⇗ infuscomus im Beitrag ¶ #7062
@George King

any updates on XP2ESD?


Yes, I was working on method how to create fully localized shortcut with strings from EXE/MUI. So I finished it now. My goal is to add Snipping Tool app as it's really usefull component. Using Alky for application is possible patch Vista beta 2 with MUI from RTM. I tried to prepatch files to make it easy, but I realized it doesn't work at the end. It's needed to patch it in installed Windows at the end.

But I'm lost in automated patching way. Do you have idea how to reproduce it? If you install Alky for applications (best is to grab installer from Windows Sidebar addon by Ricktendo64), you get new right click context menu options. I found these options in registry, but there is no command only UUID. Do you have idea how to reproduce this patching from cmd?


EDIT: I also managed to use Windows 8.0 setup engine instead of Windows 10, so both can be now used without problem. My goal with Windows 8.0 setup engine is to be able use "upgrade" install. Will see today if I can really manage it. Windows 8.0 is latest possible engine (setup.exe) that can run under XP/Vista. My plan is deploy script, that can create perfect multiboot setup with multiple boot options, to boot into XP (XP2ESD modded boot.wim) / 7 / 10 setup engine with ability to use Recovery option and with only one install.esd. I hope this upgrade can be done, if yes setup transformation for XP will be perfect :) [TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#7064infuscomus
Zitat von ⇗ George King im Beitrag ¶ #7063
Yes, I was working on method how to create fully localized shortcut with strings from EXE/MUI. So I finished it now. My goal is to add Snipping Tool app as it's really usefull component. Using Alky for application is possible patch Vista beta 2 with MUI from RTM. I tried to prepatch files to make it easy, but I realized it doesn't work at the end. It's needed to patch it in installed Windows at the end.

But I'm lost in automated patching way. Do you have idea how to reproduce it? If you install Alky for applications (best is to grab installer from Windows Sidebar addon by Ricktendo64), you get new right click context menu options. I found these options in registry, but there is no command only UUID. Do you have idea how to reproduce this patching from cmd?


⇗ @George King

Resource editor maybe? I'm not sure.
#7065xiaox
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #4

Windows XP/2003 32-Bit on Modern Intel Hardware

...


@Mov AX, 0xDEAD

hello sir, can i ask where i can download the "3) StorAHCI by skulltera/OneCore (storahci.sys), compiled from Microsoft Windows 8.x DDK Samples, (require storport.sys from Windows 2003)"?

and you says "Add PCI\VEN_8086&CC_0106 to *.inf as universal DEV_ID for any Intel AHCI Sata Controller", it's this right?(ie i add it in "7) StorAhci for Windows 2003, based on Microsoft Windows 8.x DDK Samples source code, ⇗ https://sourceforge.net/projects/storahc...dows-2003/";)

[Models]
%ADAPTERNAME% = storahci, "PCI\CC_010601" ; Standard SATA AHCI Controller
%ADAPTERNAME% = storahci," PCI\VEN_8086&CC_0106" ; Standard SATA AHCI Controller

[Models.NTx86]
%ADAPTERNAME% = storahci, "PCI\CC_010601" ; Standard SATA AHCI Controller
%ADAPTERNAME% = storahci, "PCI\VEN_8086&CC_0106" ; Standard SATA AHCI Controller

[Models.NTamd64]
%ADAPTERNAME% = storahci, "PCI\CC_010601" ; Standard SATA AHCI Controller
%ADAPTERNAME% = storahci, "PCI\VEN_8086&CC_0106" ; Standard SATA AHCI Controller


if it's right, how to add "amd's AHCI Sata Controllers" to those "Standard SATA AHCI drivers"?

 

Page 472

#7066klovaaxel1000Hello, I am new to this forum so hope it's ok to ask in this thread.

I need to move a windows XP machine to a newer PC I did manage to move it from the original one which was in sata IDE Mode to my main Z97 PC in ACHI mode by updating the IDE/ATA controllers driver to the DEV_8C83.

However the new PC (lenovoThincentre m710e) says its a 200 series z370 with a i3 7100 but none of the drivers labeled 100, 200/300 or 300 series work for me. just end up the the 0x000000A5 stop code.

Does anyone have any tips on how to get the drivers working for me?
#7067Fernando⇗ @klovaaxel1000
Welcome to the Win-RAID Forum!
Since the modern Intel RST drivers do not support Windows XP, I have moved your request into this thread where you may get help from usern, who know much more than me about how to get XP working on a PC with modern hardware.
By the way: The 0x000000A5 stop code has been caused by the not compatible XP in-box MS driver named acpi.sys and has nothing to do with the Intel SATA AHCI driver.
Good luck!
Dieter (alias Fernando)
#7068infuscomus⇗ @klovaaxel1000

To get past A5 BSOD you need to replace acpi.sys in system32\drivers with a patched acpi.sys
#7069infuscomus⇗ @George King

If you find out which registry key(s) that cause a 12A BSOD on windows7 let me know.
#7070klovaaxel1000⇗ @infuscomus

Thanks for your response I have however solved the issue by booting the xp OS on my old pc and Replaced the acpi drivers with standard pc in control panel, it booted fine however all the USB controllers where Intel usb3 so I decided to run this machine in a vm and pass through the USB an network
#7071BrooonsHiren's BootCD, MiniXP.
USB drivers to load by Txtsetup.sif
All work fine, but name USB device don't show from menagement device.
Why?
"USB 3.1 Root Hub", "USB Hub"- the inscription is not present....
From *.inf set driver - ok title
Through Txtsetup.sif - incorrect title
#7072diderius6⇗ @Gelip
I make a try,
if I can install original Win8.1 32 bit in pure UEFI mode (without any CSM) on the Flex10 with 32 bit bios.
Installation starts, but then the harddisk is not recogniced.
So, there may be a difference in original 32 bit Flex10 compis compared with 64 bit Flex 10 notebooks (as mine).
Because XP SP3 starts until mup.sys under pur UEFI on this compi using USB3,
I think, that the 32 bit Uefiseven works.
We just dont have a compi with real 32 Bit pur UEFI Bios
Dietmar

PS: Maybe, that pure UEFI boot is not supported for 32 bit Win8.1.
Pure UEFI boot also not works from original DVD with win8.0 in 32 bit on the Flex10.
#7073Gelip⇗ @diderius6
In my opinion, there were only few computers with UEFI 32-bit. Mostly they are UEFI 64-bit and have CSM. If there is CSM then you can use WinXP32/64 - there is only problem with ACPI, SATA and USB. To get around these problems the best way to use WinXP on a modern computer is a QEMU/KVM (virt-manager) virtual machine on Linux with PCI passthrough (CPU and bios must support).
I tested it and it works very well: ⇗ PCI passthrough karty graficznej na Debian 9 64-bit

  • virtual legacy bios - >no ACPI and storage (SATA & USB) problems<
  • native GPU and any PCIe or USB device


WinXP works like a dream
Of course we use PCIe devices with official WinXP drivers
#7074gordo999
Zitat von ⇗ Brooons im Beitrag ¶ #7071
Hiren's BootCD, MiniXP. USB drivers to load by Txtsetup.sif All work fine, but name USB device don't show from menagement device. Why? e
⇗ @Brooons ...I am interested in getting Hirens to run with mini XP on a newer Asus B360M mobo. Can you supply more information about what you are doing?
#7075Brooons⇗ @gordo999 Integration Sata by means of Txtsetup.sif
Replace Acpi.sys
For set USB  to need edit Txtsetup.sif like this:

 
[HardwareIdsDatabase]
AMDUSB30\ROOT_HUB30="amdhub30"
AMDHUB30="amdhub30"
AMDUSB30\CLASS_09&SUBCLASS_00&PROT_03="amdhub30"
PCI\VEN_8086&DEV_A2AF&CC_0C03="amdxhc"

[InputDevicesSupport]
amdxhc="USB bla bla HUB",files.amdxhc,amdxhc

[HwIdsDatabase]
AMDUSB30\ROOT_HUB30="amdhub30"
AMDHUB30="amdhub30"
AMDUSB30\CLASS_09&SUBCLASS_00&PROT_03="amdhub30"
PCI\VEN_8086&DEV_A2AF&CC_0C03="amdxhc"

[InputDevicesSupport.Load]
amdhub30=amdhub30.sys
amdxhc=amdxhc.sys

[files.amdhub30]
amdhub30.sys,4

[files.amdxhc]
amdxhc.sys,4

in detail for edit Txtsetup.sif: ⇗ http://www.oszone.net/user_img/050224181558/sata_guide.zip
⇗ http://www.oszone.net/2782

This worked, but, correct name Usb Hub is not displayed in the device menager
",,Bla bla,,," replaced another words

#7076infuscomus⇗ @Brooons

use the backported windows 8.0 driver instead.
#7077gordo999
Zitat von ⇗ Brooons im Beitrag ¶ #7075
Integration Sata by means of Txtsetup.sif
Replace Acpi.sys
For set USB  to need edit Txtsetup.sif like this:
⇗ @Brooons ...thanks for advice. On the Hirens 15.2 disk I found an XP.wim file in HBCD\XP folder. There is a txtsetup.sif file in the i386 folder of the wim file Is that the file you mean?

I am going to replace acpi.sys with acpi.sys from outer space and I have the installation file for SATA from Fernando. I am comparing my XP installation registry entries, that work well, with the entries in the Hirens sif file. I need some time to figure it out.

Meanwhile, thanks for the link. I will read the file. I have done slipstreaming using nlite, also adding drivers, but I don't see how that would work with Hirens. Looks like I need to edit the sif file directly and add the acpi.sys driver as well as Fernando's SATA drivers. I am still using ⇗ @daniel_k AMD drivers for USB 3 and I'll add those as well. I have PS/2 ports so may just use them at first.
#7078gordo999
Zitat von ⇗ gordo999 im Beitrag ¶ #7077
[quote=Brooons|p7075]
Integration Sata by means of Txtsetup.sif
Replace Acpi.sys
For set USB  to need edit Txtsetup.sif like this:
⇗ @Brooons ...thanks for advice. On the Hirens 15.2 disk I found an XP.wim file in HBCD\XP folder. There is a txtsetup.sif file in the i386 folder of the wim file Is that the file you mean?

I am going to replace acpi.sys with acpi.sys from outer space and I have the installation file for SATA from Fernando. I am comparing my XP installation registry entries, that work well, with the entries in the Hirens sif file. I need some time to figure it out.

If you need USB info from a working XP installation registry, let me know.

Meanwhile, thanks for the link. I will read the file. I have done slipstreaming using nlite, also adding drivers, but I don't see how that would work with Hirens. Looks like I need to edit the sif file directly and add the acpi.sys driver as well as Fernando's SATA drivers. I am still using ⇗ @daniel_k AMD drivers for USB 3 and I'll add those as well. I have PS/2 ports so may just use them at first.

ps. according to the file at your link I should make entries in the txtsetup.sif file for adding drivers under the heading [SourceDiskFiles] with a 1,,,,,,3_,4,1. It also says to create a folder in the install disk for the drivers but the only folder I see on Hirens is in the XP.wim file in the i386 folder under system32\drivers. Sound right??? Or should I create a $OEM$\$1\drivers directory somewhere and put each driver in its own folder? Hirens does not have the $OEM$ folder.
#7079Brooons
Zitat von ⇗ gordo999 im Beitrag ¶ #7077
On the Hirens 15.2 disk I found an XP.wim file in HBCD\XP folder. There is a txtsetup.sif file in the i386 folder of the wim file Is that the file you mean?


Yes
See on worker Txtsetup.sif ⇗ https://transfiles.ru/foo19
Zitat
$OEM$\$1\drivers directory somewhere and put each driver in its own folder? Hirens does not have the $OEM$ folder.


No need
system32\driver folder only

#7080Brooons⇗ @gordo999  ⇗ https://transfiles.ru/yushu
Ready XP.wim, for test it

(Intel B250 Prime work fine)

 

Page 473

#7081diderius6⇗ @Gelip
I just find an full 8Mbyte original UEFI 32bit Bios (via EEpromer readout) for the Lenovo Flex 10.
So, soon we will know, if it is possible to boot XP SP3 via pure UEFI
Dietmar

PS: Oh, soso much fun..)

Just flashed and double checked with this 32 bit Bios



⇗ https://ufile.io/tuixb2mu

EDIT: My 64 bit Lenovo Flex 10 does not start with this 32 bit Bios.
#7082gordo999
Zitat von ⇗ Brooons im Beitrag ¶ #7079
No need....system32\driver folder only
⇗ @Brooons ...thanks for help, advice, and link to sif file.
#7083galagun
Zitat von ⇗ diderius6 im Beitrag ¶ #7081

EDIT: My 64 bit Lenovo Flex 10 does not start with this 32 bit Bios.



Maybe it is hitting SEC phase due mismatch between security eeprom keys and UEFI32 routines, or mismatch between MEI chipset core and the routines found in the capsule. Nowadays the diverse components which compose machine's firmware boot are spread across motherboard eeprom's and chips built-in flash space. Isn't as easy as just replace main firmware volume as it was with older x86 desktop boards (actually, never has been easy in laptops, specially brand ones like HPs, Dells, Lenovo's, Apples, Toshibas, etc... but now with security signatures and checks, has become harder than ever).

This may need debugging via JTAG to see where it actually fails.

EDIT:
⇗ https://forums.mydigitallife.net/threads...te-issue.56669/
Basically, and according this, you need an older board with older processor to run UEFI32. Newer boards with UEFI64 and newer SoC can't be switched to 32bit older firmware, and older ones can't be switched to UEFI64. Mismatch between Capsule core and the EC firmware stored in the ITE chip prevent that.
#7084Gelip⇗ @diderius6

Zitat von ⇗ diderius6 im Beitrag ¶ #7081
I just find an full 8Mbyte original UEFI 32bit Bios (via EEpromer readout) for the Lenovo Flex 10.

I do not understand you
Earlier you wrote:
Zitat von ⇗ diderius6 im Beitrag ¶ #7024
When I now start direct from this USB harddisk,
first step of XP boot works

that you checked that UefiSeven 32 works
Do you have two Flex10 laptops?
#7085Gelip
Zitat von ⇗ diderius6 im Beitrag ¶ #7081
https://ufile.io/tuixb2mu

This bios is not pure UEFI because it has no GOP. UEFITool shows many errors:
<- H2OEZE-W

The original 32-bit Flex10 bios has GOP: ⇗ 93cn19ww(v5.2&v3.7).exe
<- H2OEZE-W

Original 32-bit bios: ⇗ 93cn19ww
Original 64-bit bios: ⇗ 93cn52ww Gelip has attached files to this post
#7086diderius6⇗ @Gelip

I have 5 Flex 10 ), 4 of them absolut identic for 64 bit.

Thanks a lot for the new Bios.
I only noticed, that the Bios for 32 Bit, that I found in Internet,
does not work.
Today in the afternoon I will flash yours and test,
have a nice day
Dietmar
#7087Gelip⇗ @diderius6
32-bit bios have only UEFI+GOP 32-bit firmware
64-bit bios have UEFI+GOP 64-bit & CSM+Oprom 16-bit
#7088diderius6⇗ @Gelip

Also with your 32 bit Bios, the 64 bit Flex 10 does not start.
I check everything 3 times, so ⇗ @galagun is right
Dietmar
#7089Brooons
Zitat von ⇗ infuscomus im Beitrag ¶ #7076
@Brooons

use the backported windows 8.0 driver instead.

⇗ success, press here
#7090infuscomus⇗ @Brooons

nice!
#7091Gelip⇗ @diderius6

Zitat von ⇗ diderius6 im Beitrag ¶ #7088
Also with your 32 bit Bios, the 64 bit Flex 10 does not start.I check everything 3 times, so @galagun is rightDietmar

Yes, you probably need to do ME cleanup. 32-bit bios have ME 1.0.2.1060 but 64-bit bios have ME 1.1.0.1089
#7092thetesterI have a Gigabyte H310M S2P motherboard.. I want to use the COM and LPT ports too. But when i try to install the Windows XP, i get a Blue Screen. ACPI error and SATA AHCI driver errors.
Wha i need to INTEGRATE with nLite to install?! Thank you! TT
#7093Gelip⇗ @diderius6
Try reprogram also EC.

EC is in file .fd after string "$_IFLASH_EC_IMG_"+8 bytes and have 64Kb (10000h) size. It starts with HEX 02 00

Original 32-bit bios: 93cn19ww -> offset 82C218
Original 64-bit bios: 93cn52ww -> offset 830D30

Gelip has attached files to this post
#7094diderius6⇗ @Gelip

I flash your 32 bit Bios on another 64 Bit Flex 10 notebook. From hardware it is identic to first one.
This time, the screen stays not black(?!). Strange, because flash methode and check of Bios chip content is fulfilled on both.
First try without modded EC. Now the result is exact the same as for my own build 32 bit Bios
(see post before)
¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (469)

The Bios version and the EC in Bios is shown from the 64 bit version before, but now as 32 bit.
The harddisk is not recogniced and error is shown for the serial number Lenovo SN
Dietmar

PS: May be, that the Bios cant detect a harddisk with MBR. But for a GPT harddisk I think the UEFI files from Vista Longhorn do not work.

#7095Gelip⇗ @diderius6

Zitat von ⇗ diderius6 im Beitrag ¶ #7094
PS: May be, that the Bios cant detect a harddisk with MBR. But for a GPT harddisk I think the UEFI files from Vista Longhorn do not work.

I don't know, make a GPT partition and check but UEFI should support both MBR and GPT - at least for me WinXP 64-bit boots from MBR disk on pure UEFI (same WinXP 32-bit under DUET32 from MBR disk).

P.S. When you update the bios with the .exe file under Windows, the BIOS and EC are programmed:

Zitat
⇗ Install the package in Windows

Before Flash, plugin AC and battery capacity need over 30%.

   Locate the file 93cn59ww(v9.9&v3.8).exe that has been downloaded.
   Double click the 93cn59ww(v9.9&v3.8).exe icon.
   Click OK, the computer will automatically reboot to start flashing BIOS and EC. During the process, please do not turn off the computer.
   After the update finished, the computer will automatically reboot for the changes to take effect.



⇗ @diderius6
UPDATE!!!
Yes. EFI Longhorn 5219 32-bit files not support GPT ----> ⇗ https://www.betaarchive.com/forum/viewto...=450771#p450771

but it has nothing to do with the bios.

I think that the EC must be programmed compatible.

 

Page 474

#7096diderius6⇗ @Gelip

You cant use the flashprogram for to change between 64 and 32 bit, only EEpromer.
I think for to flash a 32 bit Bios with the flashprogram, a partition on the UEFI harddisk is build,
from which after reboot the Bios chip is written. So this does not work without an UEFI partition on harddisk
Dietmar

PS: Do you know, how to program the EC and the ME? Because I use your full 8Mbyte bios with its own EC and ME via EEpromer.
So this is stored at another place, not in Bios chip. But EC and ME can be updated so in princip it should be possible to change them by hand, but where and how?

PPS: Your 32 bit Bios has ME 1.0.2.1060 version and it is complete flashed to the Bios chip also.
How can I check on the Flex 10, which version of ME is now working there? And why is the Bios version and the EC the same as before (from 64 bit Bios)?
I can operate only from USB device on the Flex 10, because no harddisk is recogniced.
#7097Gelip⇗ @diderius6

Zitat von ⇗ diderius6 im Beitrag ¶ #7096
You cant use the flashprogram for to change between 64 and 32 bit, only EEpromer.

Yes, I know - but new (other) bios is programmed with EC.

Zitat von ⇗ diderius6 im Beitrag ¶ #7096
PS: Do you know, how to program the EC and the ME? Because I use your full 8Mbyte bios with its own EC and ME via EEpromer.

8MB file contains only bios and ME regions. EC region is in .fd file - did you read it -> ¶ t4035f45-Windows-XP-Bit-and-Server-Bit-on-Modern-Hardware-473.html#7093 ???

Maybe it is enough to replace the EC region in the 32-bit or 64-bit .fd file and program it with force EC only - see platform.ini settings:
[UpdateEC]
Flag=1
EC_Dialog=0
BIOS_Only=0
EC_Only=0
EC_Path=
EC_Compare=0
EC_Verify=0
EC_VerifyErrorRetry=3
;Flag (w)
; default : 0.
; 0 : Don't flash EC by BIOS.
; 1 : Flash EC by BIOS.
;EC_Dialog (w)
; default : 0.
; 0 : Don't display confirm dialog when begin to update EC.
; 1 : Show confirm dialog.
;BIOS_Only (w)
; default : 0.
; 0 : Flash EC and BIOS file.
; 1 : Only flash BIOS part of the merge file.
;EC_Only (w)
; default : 0.
; 0 : Flash EC and BIOS file.
; 1 : Flash only EC binary file.
;EC_Path (w)
; default : empty.
; String : EC file name.
;EC_Compare (w)
; default : 0.
; 0 : Don't do compare before writing. Just do write action directly.
; 1 : Read EC and compare difference before writing.
; If the read data is the same as the data we want to write,
; it will not do the write action.
;EC_Verify (w)
; default : 0.
; 0 : Don't verify EC.
; 1 : Verify EC after writing.
;EC_VerifyErrorRetry (w)
; default : 3.
; Integer : Retry times.
; If the value is not zero means enable verify retry, and will retry setted times.
; 0 for disable verify retry.

; Supports on WIN flash.
#7098Gelip
Zitat von ⇗ diderius6 im Beitrag ¶ #7096
How can I check on the Flex 10, which version of ME is now working there?


To check ME version use MeInfo for yor platform e.g. under UEFI Shell 32-bit from pendrive  TXEInfo.efi from Intel TXE System Tools v1 r4 -> ⇗ Intel Trusted Execution Engine: Drivers, Firmware & System Tools
#7099diderius6⇗ @Gelip
I format the intern harddisk from the Lenovo Flex 10 with GPT and FAT32,
but harddisk is still not recogniced from Bios.

Now I download Intel TXE System Tools v1 r4,
but I have no idea how to make a bootable USB stick from this, so that I can use all tools.
There are a lot of other tools also, with which I think you can change nearly everything.

May be others can help here also, to change the Lenovo Flex 10 Bit 64 ---> Bit 32 machine
Dietmar
#7100Gelip
Zitat von ⇗ diderius6 im Beitrag ¶ #7099
Now I download Intel TXE System Tools v1 r4,
but I have no idea how to make a bootable USB stick from this, so that I can use all tools.

For UEFI 32-bit bios:
  • format USB as FAT32
  • make folder EFI\Boot\
  • copy TXEInfo.efi from EFI32 System Tools archive to USB anywhere e.g. root
  • copy bootia32.efi (UEFI Shell) to \EFI\Boot
  • boot PC from this USB in UEFI mode
  • go to your USB - probably fs0: (check run map -r)
  • dir
  • txeinfo -page
Gelip has attached files to this post
#7101diderius6⇗ @Gelip

I get this for the Lenovo Flex 10 with 32 Bit Bios after typing TXEInfo.efi
Dietmar

#7102Gelip⇗ @diderius6
You have ME 1.0.2.1060
#7103galagunUEFI32 lenovo firmware for the Flex10 was meant to work with the N2805 and N3510 SoC family, while the UEFI64 image is meant to work with the posterior N2806 and N3520 ones. Maybe there is a difference between the SATA controllers built with these old and new SoCs which makes the built in EFI SATA AHCI driver to fail working with them (yes, UEFI uses drivers to expose these)?
#7104galagun
Zitat von ⇗ diderius6 im Beitrag ¶ #7101
@Gelip

I get this for the Lenovo Flex 10 with 32 Bit Bios after typing TXEInfo.efi
Dietmar




I can see this firmware can't decrypt the security info on your security eeprom, so the UUID and the OEM tags aren't available. Some firmware setups enter in manufacturing mode if them can't do that (can't read the "sealed" tag) and disable functions in the motherboard... Although never have seen firmware disabling sata controllers in manufacturing mode...
#7105Gelip⇗ @diderius6
Boot Flex10 from USB under UEFI32 Shell and check what about the hard drive:

devtree -b

Check SATA (AHCI) Ctrl number (in example is 91), then dh 91 -d
the pictures show examples from QEMU UEFI:


What does map -r show? Example from QEMU:
#7106George King
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #5440

0xDEADBEEF is error of ntoskrnl_extender, it means it found some error when someone called it (ported usb3 driver), second code can tell more, i numerated it as 0,1,2,3 to define what procedure inside sources generated it



Hi ⇗ @Mov AX, 0xDEAD, I encountered this BSOD with Server 2003 SP2. All ported drivers are included in this system.
With Windows XP is works as expected.

Any idea whats going wrong?

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#7107infuscomus⇗ @George King

This happens because of this code in wrk2003.c

Zitat
//////////////////////////////////////////////////////   
// KeAlertThread
gTramp_KeAlertThread = (PFN_BOOLEAN_PKTHREAD_KPROCESSOR_MODE) ModuleHexSearch(MODULE_NTOSKRNL, KeAlertThread_magic1, sizeof(KeAlertThread_magic1), KeAlertThread_magic1mask);
if (!gTramp_KeAlertThread)
gTramp_KeAlertThread = (PFN_BOOLEAN_PKTHREAD_KPROCESSOR_MODE) ModuleHexSearch(MODULE_NTOSKRNL, KeAlertThread_magic2, sizeof(KeAlertThread_magic2), KeAlertThread_magic2mask);
if (!gTramp_KeAlertThread)
gTramp_KeAlertThread = (PFN_BOOLEAN_PKTHREAD_KPROCESSOR_MODE) ModuleHexSearch(MODULE_NTOSKRNL, KeAlertThread_magic1chk, sizeof(KeAlertThread_magic1chk), KeAlertThread_magic1chkmask);
if (!gTramp_KeAlertThread)
KeBugCheckEx(0xDEADBEEFL, 5, 0, 0, 3);
//////////////////////////////////////////////////////



I don't know why the hex check is necessary, ⇗ @Mov AX, 0xDEAD has a better understanding of why its there.

#7108infuscomus⇗ @George King

have you had any luck in finding the registry key that causes a 12A BSOD in windows7?
#7109George King
Zitat von ⇗ infuscomus im Beitrag ¶ #7108
@George King

have you had any luck in finding the registry key that causes a 12A BSOD in windows7?


I still don't touch it, I hope to have a look on it at weekend [TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#7110thetesteris there any way to use Windows XP on this motherboard?! Thank you!

 

Page 475

#7111diderius6⇗ @Gelip

As you can see, no SATA driver at all, only USB.
Is there an generic Sata 32 bit UEFI driver for Bios,
which can be integrated with UEFI tool into the 32 bit Bios of the Flex 10
or can the SATA driver from the Flex 64 bit Bios been used also for 32 bit Bios
Dietmar

#7112Gelip⇗ @diderius6
Show command result:
pci -b
drivers -b
#7113diderius6⇗ @Gelip
Here it is
Dietmar



#7114infuscomus
Zitat von ⇗ thetester im Beitrag ¶ #7092
I have a Gigabyte H310M S2P motherboard.. I want to use the COM and LPT ports too. But when i try to install the Windows XP, i get a Blue Screen. ACPI error and SATA AHCI driver errors.
Wha i need to INTEGRATE with nLite to install?! Thank you! TT


⇗ @thetester

For a motherboard that recent it's easiest just to use the XP integral Edition with the optional patch integrator.

⇗ https://www.zone94.com/downloads/softwar...ntegral-edition

use options 1,4,6 and 7 for everything to work.
#7115Gelip⇗ @diderius6
SATA controller device is PCI 00 13 00
SATA driver is present in bios but not connected to SATA controller device - see #C column is -

Try connect driver SATA (EC) to device SATA controller (127):

connect 127 ec
map -r
#7116diderius6⇗ @Gelip

After typing

connect 127 ec
map -r

still only the USB device is shown
Dietmar

PS: Setup from original Win10 Usb installationsstick also tells: No harddisk found.
#7117Gelip⇗ @diderius6
I think you need to match UEFI32 EC and ME bios.

I have an idea but I don't know if it will work.

- now you have 32-bit bios writed by external programmer
- try update bios in with 32-bit from extracted (7-zip) file 93cn19ww.exe with insydeflash.exe

It should update the bios, ME and EC. If not, try again changing options in platform.ini
#7118diderius6⇗ @Gelip

Question is, how to run 93cn19ww.exe .
Frome the UEFI-shell it is not possible.
There has been Bios files from Lenovo in *.iso ,
but this I do not find.
May be, that there is an bootable Win8 32 bit USB stick image,
so that this can be used
Dietmar
#7119Gelip
Zitat von ⇗ diderius6 im Beitrag ¶ #7118
May be, that there is an bootable Win8 32 bit USB stick image,
so that this can be used


Yes, try WinPE 8 or 10 32-bit from USB
#7120diderius6⇗ @Gelip

Do you have a bootable winpe.img, I think best would be win8.0 32 bit
that starts under pur 32 Bit Uefi?
The winpe.img that you send to me,
does not boot on the Flex 10 with Uefi 32bit Bios
Dietmar
#7121Gelip⇗ @diderius6
Try update from UEFI32 USB Shell - copy two files to USB:
- FwUpdLcl.efi from FWUpdate\EFI32 folder from Intel TXE System Tools v1 r4
- Win01BTIL52_37_19.fd from extracted 93cn19ww.exe (rename to bios.fd)
- boot from USB in UEFI and:

⇗ @diderius6
EDITED

fwupdlcl bios.fd

or

fwupdlcl -f bios.fd

FwUpdLcl utility is only for ME region update
#7122diderius6⇗ @Gelip

using
fwupdlcl -f bios.fd

I got message
Error 8771: Invalid File

Dietmar
#7123infuscomus⇗ @diderius6

windows 8.0 32bit here - ⇗ https://the-eye.eu/public/MSDN/Windows%2..._dvd_915479.iso
#7124diderius6⇗ @Gelip ⇗ @infuscomus
I boot the Flex 10 with the win8.0 *.iso written to DVD, booting for Setup of Win8 from USB DVD device.
Together I connect an USB stick with the full 32 bit Bios 93cn19ww.exe on it.
Then on boot from Win8 setup I chose computer repair, commandline.
There I change drive letter to C: (USB stick) and type 93cn19ww.exe there.
Waaoh, Bios is updated(!).
Then on next reboot after about loong 5 min,
I can "see", how the Bios chip is flashed.
Now in Bios can be seen the real name and EC of 93cn19ww,
but still no harddisk.
So, the UEFI 32 bit driver from this Bios just does not work together with the real SATA connector in the 64 bit Flex 10
Dietmar

#7125Gelip⇗ @diderius6
I make WinPE 5 (Win 8.1) 32-bit. Use Rufus to prepare USB - FAT32
⇗ winpe81x86.iso

 

Page 476

#7126Pill Monster
Zitat von ⇗ George King im Beitrag ¶ #7106
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #5440

0xDEADBEEF is error of ntoskrnl_extender, it means it found some error when someone called it (ported usb3 driver), second code can tell more, i numerated it as 0,1,2,3 to define what procedure inside sources generated it



Hi @Mov AX, 0xDEAD, I encountered this BSOD with Server 2003 SP2. All ported drivers are included in this system.
With Windows XP is works as expected.

Any idea whats going wrong?




DEAD BEEF - hilarious! :D
#7127Gelip⇗ @diderius6
Run now txeinfo.efi -page
#7128Gelip⇗ @diderius6
Try Debian_32UEFI from USB. Write image ISO to USB with Win32diskimager, boot from it, press e to edit boot option, replace *586 to 4.9.0-8-686 and boot Debian pressing F10


⇗ live-image-i386.hybrid.iso

Show what gives the commands:
fdisk -l
cat /proc/devices
cat /proc/partitions
lspci -s 00:13.0 -v
#7129thetesteris there any way to use Windows XP on this motherboard?! Thank you!

Thank you, i'll try it!
#7130diderius6⇗ @Gelip

After your steps on reboot Debian hangs,
looking in vain for the Sata device
Dietmar

#7131diderius6I just compare the SataController DXE driver in 32 and in 64 bit UEFI Bios.
They are different, at least is one for x86 and the other is for x64

Section_PE32_image_SataController_SataController_body.efi

Dietmar
#7132galagun⇗ @diderius6
Check if you can see a clue as ven&dev pciids or cc_xxxx pnp ids.
#7133diderius6⇗ @galagun

I look, but I found only word Sata, 686 via Winhex txt extract and nothing about ven&dev.
Also I am not sure, that this driver is the only thing, which belongs to Sata,
because it is only about 3kB small body file
Dietmar
#7134Mov AX, 0xDEADHi ⇗ @Pill Monster

Zitat von ⇗ Pill Monster im Beitrag ¶ #7106
[quote=George King|p7106]
Hi @Mov AX, 0xDEAD, I encountered this BSOD with Server 2003 SP2. All ported drivers are included in this system.
With Windows XP is works as expected.


 
//  KeAlertThread
gTramp_KeAlertThread = (PFN_BOOLEAN_PKTHREAD_KPROCESSOR_MODE) ModuleHexSearch(MODULE_NTOSKRNL, KeAlertThread_magic1, sizeof(KeAlertThread_magic1), KeAlertThread_magic1mask);
...
KeBugCheckEx(0xDEADBEEFL, 5, 0, 0, 3);


this mean KeAlertThread() not found inside w2003 sp2 ntoskrnl.exe as hex pattern

// 2003 SP2 MP:
// 55 8B EC 83 EC 0C 53 56 8B 75 08 57 8D 4E 44 8D 55 F4 FF 15 xx xx xx xx 64 8B 0D 20 00 00 00 BF 18 04 00 00
// 55 8B EC 83 EC 0C 53 56 8B 75 08 80 3E 06 57 74 16 6A 00 chk builds

// 2003 SP2 UP:
// 55 8B EC 83 EC 0C 53 56 8B 75 08 8D 4E 44 8D 55 F4 FF 15 xx xx xx xx 8A 4D 0C 0F BE C1 8D 44 30 5E
// 55 8B EC 83 EC 0C 53 56 8B 75 08 80 3E 06 57 74 16 6A 00 chk builds
#7135thetesterDear  infuscomus

I tried to create with Rufus (latest), but unsuccessfull.
I tried YUMI (latest), but stlii unsuccessfull (load, but halt after count memory..)
I tried WinSetupFromUSB 0-2-3, started the install, but the second stage is unsuccessfull..

Can you help me, which program, and which settings to write the CREATED Windows XP SP3 1,4,6,7 ISO to FLASH Drive (8 Gb)

Thank you!
The Tester'
#7136George King
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #7134

 
//  KeAlertThread
gTramp_KeAlertThread = (PFN_BOOLEAN_PKTHREAD_KPROCESSOR_MODE) ModuleHexSearch(MODULE_NTOSKRNL, KeAlertThread_magic1, sizeof(KeAlertThread_magic1), KeAlertThread_magic1mask);
...
KeBugCheckEx(0xDEADBEEFL, 5, 0, 0, 3);


this mean KeAlertThread() not found inside w2003 sp2 ntoskrnl.exe as hex pattern

// 2003 SP2 MP:
// 55 8B EC 83 EC 0C 53 56 8B 75 08 57 8D 4E 44 8D 55 F4 FF 15 xx xx xx xx 64 8B 0D 20 00 00 00 BF 18 04 00 00
// 55 8B EC 83 EC 0C 53 56 8B 75 08 80 3E 06 57 74 16 6A 00 chk builds

// 2003 SP2 UP:
// 55 8B EC 83 EC 0C 53 56 8B 75 08 8D 4E 44 8D 55 F4 FF 15 xx xx xx xx 8A 4D 0C 0F BE C1 8D 44 30 5E
// 55 8B EC 83 EC 0C 53 56 8B 75 08 80 3E 06 57 74 16 6A 00 chk builds



Yes, it doesn't exist in latest kernels. Here are kernels v5.2.3790.5583. I'm using fully updated setup with OnePiece Post SP2 UpdatePack for Server 2003.
 
https://www.mediafire.com/file/j3uhwhf85y6uu4b/2k3_kernels_5.2.3790.5583.7z/file



Is here a solution or this mean Extender needs to be adapted?

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#7137infuscomus⇗ @thetester

The easiest solution for this would be to burn it to a CD.

If that is not an option then I suggest using Easy2boot to make the USB drive - it even has a specific option for phase2 of XP setup.

Note: For your hardware choose the one without DPMS - The backported windows8 AHCI driver is the better solution anyway.

⇗ https://www.easy2boot.com/download/
#7138Pill Monster
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #7134
Hi @Pill Monster
Zitat von ⇗ Pill Monster im Beitrag ¶ #7106
[quote=George King|p7106]
Hi @Mov AX, 0xDEAD, I encountered this BSOD with Server 2003 SP2. All ported drivers are included in this system.
With Windows XP is works as expected.


 
//  KeAlertThread
gTramp_KeAlertThread = (PFN_BOOLEAN_PKTHREAD_KPROCESSOR_MODE) ModuleHexSearch(MODULE_NTOSKRNL, KeAlertThread_magic1, sizeof(KeAlertThread_magic1), KeAlertThread_magic1mask);
...
KeBugCheckEx(0xDEADBEEFL, 5, 0, 0, 3);


this mean KeAlertThread() not found inside w2003 sp2 ntoskrnl.exe as hex pattern

// 2003 SP2 MP:
// 55 8B EC 83 EC 0C 53 56 8B 75 08 57 8D 4E 44 8D 55 F4 FF 15 xx xx xx xx 64 8B 0D 20 00 00 00 BF 18 04 00 00
// 55 8B EC 83 EC 0C 53 56 8B 75 08 80 3E 06 57 74 16 6A 00 chk builds

// 2003 SP2 UP:
// 55 8B EC 83 EC 0C 53 56 8B 75 08 8D 4E 44 8D 55 F4 FF 15 xx xx xx xx 8A 4D 0C 0F BE C1 8D 44 30 5E
// 55 8B EC 83 EC 0C 53 56 8B 75 08 80 3E 06 57 74 16 6A 00 chk builds



Thanks, I hadn't seen that one before. :)
#7139Mov AX, 0xDEAD
Zitat von ⇗ George King im Beitrag ¶ #7138

this mean KeAlertThread() not found inside w2003 sp2 ntoskrnl.exe as hex pattern
// 2003 SP2 MP:
// 55 8B EC 83 EC 0C 53 56 8B 75 08 57 8D 4E 44 8D 55 F4 FF 15 xx xx xx xx 64 8B 0D 20 00 00 00 BF 18 04 00 00
// 55 8B EC 83 EC 0C 53 56 8B 75 08 80 3E 06 57 74 16 6A 00 chk builds

// 2003 SP2 UP:
// 55 8B EC 83 EC 0C 53 56 8B 75 08 8D 4E 44 8D 55 F4 FF 15 xx xx xx xx 8A 4D 0C 0F BE C1 8D 44 30 5E
// 55 8B EC 83 EC 0C 53 56 8B 75 08 80 3E 06 57 74 16 6A 00 chk builds
Yes, it doesn't exist in latest kernels. Here are kernels v5.2.3790.5583. I'm using fully updated setup with OnePiece Post SP2 UpdatePack for Server 2003.
Is here a solution or this mean Extender needs to be adapted?

⇗ @George King:
all 4 kernels from v5.2.3790.5583 still contain same patterns, i was able to start w2003 sp2 (Virtualbox VM) with these kernels(all 4 variants) without bsod, so
1) check ntoskrn8.sys version, last 5.1.2600.10
2) recheck actual kernel in installed w2003 versus 5.2.3790.5583 archive (ntkrnlmp.exe,size=2503168, ...)
#7140diderius6⇗ @Gelip
I extract the whole SataController
File_DXE_driver_SataController_SataController.ffs
from the 32 Bit Bios of the Packard Bell EasyNote ME69BMP
which runs on a N2806 with integrated chipset,
the same as on the Flex 10.
Then I change with UEFITOOL this Satacontroller in the Flex 10 Bios and flash.
Now the Satacontroller is listed on the Flex 10 with full correct name VEN_8086&DEV_0F23
, but still no harddisk
Dietmar

PS: There must be another Bios driver, which does not work, may be AHCIbus.
I dont find information comparing the chipset of the N2806 with the N2805.
With the 32bit Bios from the Packard Bell we should be able to integrate in the 32 bit Bios of the Flex 10  everything what is missed, step by step.

 

Page 477

#7141diderius6Should all the drivers with a questionmark "?" been replaced in Bios?
Any help is welcome
Dietmar

#7142thetesterWhere can I find, or how can i modify the drivers to work on Windows XP?!

No drirvers:
Unknown      ACPI\INT3450\3&11583659&0
PCI Data Acq VEN_8086&DEV_A379&SUBSYS_88881458&REV_10\3&11583659&0&90
PCI Device   VEN_8086&DEV_A324&SUBSYS_72708086&REV_10\3&11583659&0&FD
PCI simple   VEN_8086&DEV_A360&SUBSYS_1C3A1458&REV_10\3&11583659&0&B0
SM BUS       VEN_8086&DEV_A323&SUBSYS_50011458&REV_10\3&11583659&0&FC
VGA          VEN_8086&DEV_3E92&SUBSYS_D0001458&REV_00\3&11583659&0&10

Audio Device FUNC_01&VEN_8086&DEV_280B&SUBSYS_80860101&REV_1000\4&2E415D45&0&0201


Thank you,
TT'
#7143infuscomus⇗ @thetester

VGA VEN_8086&DEV_3E92&SUBSYS_D0001458&REV_00\3&11583659&0&10

no 3D driver for this device
there is a 2D driver though - ⇗ https://bearwindows.zcm.com.au/vbemp.htm
#7144Gelip⇗ @diderius6

Zitat von ⇗ diderius6 im Beitrag ¶ #7141
Should all the drivers with a questionmark "?" been replaced in Bios?

No, you don't !

The question mark is not the problem. UEFI Shell does not know what type of BUS (B) or DEVICE (D) driver is. I checked two UEFI computers and a UEFI virtual machine and there are question marks everywhere:
#7145diderius6⇗ @Gelip
Hm, I see, that at the driver for AHCI Bus is not a questionmark at you.
So, may be it is a hint for a not correct working, important driver in Uefi BIos
Dietmar
#7146Pill Monster
Zitat von ⇗ thetester im Beitrag ¶ #7135
Dear  infuscomus
Can you help me, which program, and which settings to write the CREATED Windows XP SP3 1,4,6,7 ISO to FLASH Drive (8 Gb)
I use ⇗ Rufus

Edit - I see you already tried Rufus but didn't work? Strange..  Another one I've used without issue is ⇗ WinToFlash
#7147thetesterThank you, it slill work! ;)
Now XP on my Machine!!!!! :)

But need theese drivers:
Unknown ACPI\INT3450\3&11583659&0
PCI Data Acq VEN_8086&DEV_A379&SUBSYS_88881458&REV_10\3&11583659&0&90
PCI Device VEN_8086&DEV_A324&SUBSYS_72708086&REV_10\3&11583659&0&FD
PCI simple VEN_8086&DEV_A360&SUBSYS_1C3A1458&REV_10\3&11583659&0&B0
SM BUS VEN_8086&DEV_A323&SUBSYS_50011458&REV_10\3&11583659&0&FC
VGA VEN_8086&DEV_3E92&SUBSYS_D0001458&REV_00\3&11583659&0&10
Audio Device FUNC_01&VEN_8086&DEV_280B&SUBSYS_80860101&REV_1000\4&2E415D45&0&0201

Now i try the VGA what  infuscomus what sayed..

Thank you
TT
#7148infuscomus⇗ @George King

any ETA on the next XP2ESD release?
also, any luck on finding the source of a 12A BSOD?
#7149George King
Zitat von ⇗ infuscomus im Beitrag ¶ #7148
@George King
any ETA on the next XP2ESD release?
also, any luck on finding the source of a 12A BSOD?
XP2ESD is close to release. Next beta ISO can be in few days. Including all XP and Server 2003 editions. Server still need figure whats wrong in event log, but now all 5.1 and 5.2 32bit setup can be automatically converted into modern installer method with UpdatePacks. Some small polishing in few days and I hope it can be ready

EDIT: I'm thinking about ACPI.sys replacing on the fly during setup, same as PAE patching. As this can be very usefull on USB installs. Also base image will be untouched. Only standard and ported drivers are integrated.

EDIT2: I also would like to see XP2ESD 1.5 to run without problems on 5.1 or newer too, Now is needed to perform build from Windows 8+ [TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#7150infuscomus⇗ @George King

have you had the time to find the cause of a 12A BSOD?
#7151YuriyCNWindows XP mod 2021 - system build for the modern PC (edition 27.03.2021)

The information doesn't fit into a forum post for a long time - so download the text file and read it in Notepad. Always use the latest version of the methodology, as the information is constantly changing and the methodology is supplemented.

TXT file (84kB, ENGLISH) - ⇗ https://yadi.sk/d/w7ps2MxYETTrNw
TXT file (94kB, RUSSIAN) - ⇗ https://yadi.sk/d/DW6NIfqVymZNDg
#7152gordo999⇗ @YuriyCN ...thanks for good work on info files. Might be an error in the English version in section under 'Recommended drivers individually':

With reference to:

storroprop.dll = 100,,,,,,,,3,3

in this section:

"2) Edit file DOSNET.INF, look for line d1,scsiport.sys and put d1,storport.sys
below this line. There will be 2 such places, so let's do it 2 times, it will
be like this:

d1,scsiport.sys
d1,storport.sys

3) Edit file TXTSETUP.SIF, look for line storprop.dll and after not
storport.sys = 1,,,,,,3_,4,0,0,,1,4 it should look like this:
storroprop.dll = 100,,,,,,,,3,3
storport.sys = 1,,,,,,3_,4,0,0,,1,4"

Is that a typo for storroprop.dll?  Should it be storprop.dll?
#7153YuriyCNFixed and updated
Windows XP mod 2021 - system build for the modern PC (edition 28.03.2021)

TXT file (85kB, ENGLISH) - ⇗ https://www.upload.ee/files/13002216/Win..._3_ENU.txt.html
TXT file (95kB, RUSSIAN) - ⇗ https://www.upload.ee/files/13002217/Win..._3_RUS.txt.html
#7154George King
Zitat von ⇗ gordo999 im Beitrag ¶ #7152
@YuriyCN ...thanks for good work on info files. Might be an error in the English version in section under 'Recommended drivers individually':

With reference to:

storroprop.dll = 100,,,,,,,,3,3

in this section:

"2) Edit file DOSNET.INF, look for line d1,scsiport.sys and put d1,storport.sys
below this line. There will be 2 such places, so let's do it 2 times, it will
be like this:
d1,scsiport.sys
d1,storport.sys

3) Edit file TXTSETUP.SIF, look for line storprop.dll and after not
storport.sys = 1,,,,,,3_,4,0,0,,1,4 it should look like this:
storroprop.dll = 100,,,,,,,,3,3
storport.sys = 1,,,,,,3_,4,0,0,,1,4"

Is that a typo for storroprop.dll?  Should it be storprop.dll?







You can always use nLite addon to add needed new files for ported drivers, I posted it on MDL. If you add this addon you can safely integrate ported drivers too with them.

⇗ https://forums.mydigitallife.net/threads...-9#post-1649999 [TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#7155gordo999
Zitat von ⇗ George King im Beitrag ¶ #7154
You can always use nLite addon to add needed new files for ported drivers, I posted it on MDL. If you add this addon you can safely integrate ported drivers too with them.
⇗ @George King ...George...I have used nlite on Win XP but I tried recently to mod the xp.wim file in Hiren's mini XP version with nlite and it doesn't seem to like wim files that are not from a windows installation. Neither does DISM, although I can mount the Hiren's 15.2 xp.wim with DISM (W10) and mod it from there.

⇗ @Brooons ...I got Hiren's 15.2 running to the boot phase without ACPI or SATA driver problems, but if I select Mini XP, the horizontal bar runs across the bottom and I get a blank screen after it completes. Seem to have a video problem. I recently upgraded my video card to Nvidia GT 1030 but my XP installation on disk will run on it in super VGA mode. Not sure which driver I should install on Hiren's.

Thanks for your help and your sample wim file. Helped a lot. So did ⇗ @YuriyCN 's text file for installing XP.

 

Page 478

#7156George King
Zitat von ⇗ gordo999 im Beitrag ¶ #7155
Zitat von ⇗ George King im Beitrag ¶ #7154
You can always use nLite addon to add needed new files for ported drivers, I posted it on MDL. If you add this addon you can safely integrate ported drivers too with them.
@George King  ...George...I have used nlite on Win XP but I tried recently to mod the xp.wim file in Hiren's mini XP version with nlite and it doesn't seem to like wim files that are not from a windows installation. Neither does DISM, although I can mount the Hiren's 15.2 xp.wim with DISM (W10) and mod it from there.




Yes, there is no tool for XP editing inside WIM. I didn't see you are working with live edition. Interesting idea. Will investigate Bart PE later in future to see if it can be included in XP2ESD image [TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#7157gordo999
Zitat von ⇗ George King im Beitrag ¶ #7156
Yes, there is no tool for XP editing inside WIM. I didn't see you are working with live edition. Interesting idea. Will investigate Bart PE later in future to see if it can be included in XP2ESD image
⇗ @George King ...would be interesting to see something incorporated so your device booted like Hiren's or BartPE and the drivers could be inserted offline....maybe using nlite as part of the process.

I found a while back that the registry of another Windows OS can be edited offline by using a live regedit then loading the required hive from the offline hive. Of course, you don't want to go too crazy or you could be spending the rest of your life doing this. That's why I want to get Hiren's 15.2 running on my 300 series chipset (Intel B360M). It has a lot of goodies that can help troubleshoot problems on the offline OS.

Any ideas on a basic SVGA driver to use for Hiren's? In the txtsetup.sif file, under 'Display', it only lists vga=vga,sys. That driver is apparently too primitive for the newer nvidia GT 1030 card. However, I have noticed that a full XP OS will run in SVGA mode using some kind of driver with the same card.

I'm guessing it is running off an older nvidia nv4_disp driver in a very basic mode. I think that driver may have been loaded for the GT 730 driver which ran fine with XP on games like Myst.

Don't know if you are including the modded intelppm/hal mod for XP. It fixed up problems I had with games and the Firefox browser. Before inserting the modded files, games would not start, nor would the browser run efficiently.
#7158diderius6Hi,
on my EVGA z390 Dark board (XP friendly),
there is an onboard soundcard similar to  Sound Blaster Recon3Di VEN_1102&DEV_0011,

chip CA0132-4AN

But I found only a driver for Vista 32 bit for this Soundcard.

A look with Dependency Walker shows unfulfilled dependencies from this Vista 32 bit driver to ntoskrnl.exe to XP SP3

KeEnterGuardedRegion
KeLeaveGuardedRegion

What do you think:
Make a try for to enable this soundcard with Extender for Ntoskrnl.exe under XP SP3
or just use another soundcard, working under XP
Dietmar

EDIT: There is hope, because I think, that this 2 files from Vista are not needed
ieshims.dll
wer.dll

#7159gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #7158
What do you think:
⇗ @diderius6 ...⇗ @daniel_k is the resident expert on Creative sound cards. He might already have a driver.
#7160Gelip
Zitat von ⇗ George King im Beitrag ¶ #7156
Yes, there is no tool for XP editing inside WIM.

I use imagex.exe + GUI (gimagex) for editing WIM. On WinXP 32-bit I used 32-bit imagex.exe 3.1.0.0 + GUI

Now on WinXP 64-bit I use 64-bit imagex.exe 6.1.7600.16385 + GUI:
#7161gordo999
Zitat von ⇗ Gelip im Beitrag ¶ #7160
I use imagex.exe + GUI (gimagex) for editing WIM.
⇗ @Gelip ....George and I were talking about the xp.wim file on Hiren's 15.2 boot disk. I have used dism to mount the Hiren's xp.wim file then I could edit it in a file manager. For some reason W10 would not let me delete any files in the mounted wim file unless I used shift-delete, which is normally used for permanent deletion.

Hiren's 15.2 would not run on the newer mobo's. I managed to edit the wim file which has a txtsetup.sif file and a system32/drivers folder. I edited the sif file and added modded XP drivers. Now it boots but I seem to be lacking a video driver that will work with the nvidia GT 1030 card. Oddly, my XP installation will run with the card in SVGA mode. It was running fine with a GT 730 so I am trying to figure out which drivers allow XP to run on the GT 1030 in SVGA mode. That's all I should need for Hirens.
#7162infuscomus⇗ @gordo999

There is no driver for the GT 1030 for XP, so it would be defaulting the the basic SVGA driver XP ships with.
There is a driver for the GT 730 for XP though so I assume that hirens XP.wim uses that.
#7163gordo999
Zitat von ⇗ infuscomus im Beitrag ¶ #7162
There is no driver for the GT 1030 for XP, so it would be defaulting the the basic SVGA driver XP ships with. There is a driver for the GT 730 for XP though so I assume that hirens XP.wim uses that.
⇗ @infuscomus ...thanks for reply. I am trying to figure out which stock XP driver is being used on my XP drive to make the GT 1030 work in SVGA mode. In the XP drivers folder, on both my hard drive and Hiren's boot CD, all I can see is vga.sys. It's obviously not working, either that or something else is wrong. I am wondering if there is a more advanced VGA driver that will do SVGA, or maybe vga.sys can do SVGA.

On my XP hard drive I have nvidia drivers left over from GT 730 and maybe it is running in SVGA from one of those drivers. I might try figuring out which drivers the GT 730 ran on, like the nv4_disp driver and see if I can load that in Hiren's.

I also have a lot of driver packs from the unofficial SP4 update. There may be a driver in there that will work. When I loaded the SP4 update, it made a few things work that were not working before. I could try the mobo video drivers but I don't want to keep switching if possible.
#7164daniel_k
Zitat von ⇗ diderius6 im Beitrag ¶ #7158
What do you think:
Make a try for to enable this soundcard with Extender for Ntoskrnl.exe under XP SP3
or just use another soundcard, working under XP

I've tried with SBZ (has nearly the same drivers), but it didn't work.

The driver does load, but no mixer inputs/outputs are exposed, so it's useless.
Also had to use (or port) portcls.sys from Vista.

One needs to learn about the changes in Vista+ in order to fix this.
#7165George King
Zitat von ⇗ Gelip im Beitrag ¶ #7160
Zitat von ⇗ George King im Beitrag ¶ #7156
Yes, there is no tool for XP editing inside WIM.

I use imagex.exe + GUI (gimagex) for editing WIM. On WinXP 32-bit I used 32-bit imagex.exe 3.1.0.0 + GUI

Now on WinXP 64-bit I use 64-bit imagex.exe 6.1.7600.16385 + GUI:



This was mean for NTLite equivalent app, which works with already deployed images. You can also use Windows 8.0 DISM on XP. I still not released XP2ESD v1.5 where is integrated completely, in public v1.4 is used Windows 7 DISM. [TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#7166gordo999
Zitat von ⇗ George King im Beitrag ¶ #7165
You can also use Windows 8.0 DISM on XP... in public v1.4 is used Windows 7 DISM.
⇗ @George King ...I found that W7 dism lacks some of the features of W10 dism. I have not tried W7 dism recently. I had no problem mounting an XP wim file, as you point out, for Hirens, using W10 dism and editing it in file manager.
#7167YuriyCNwith 1 apr ))

#7168diderius6Hi,
after crazy fight with Microsoft download servers I succeed to start Updates for XP SP3 and Posready 2009 again.
I use the posready reg hack, and before I updated with external Service Pack until April 2014.
I do not install any updates for XP,
because problem with the XP validating tool can happen
Dietmar

#7169George King
Zitat von ⇗ diderius6 im Beitrag ¶ #7168
Hi,
after crazy fight with Microsoft download servers I succeed to start Updates for XP SP3 and Posready 2009 again.
I use the posready reg hack, and before I updated with external Service Pack until April 2014.
I do not install any updates for XP,
because problem with the XP validating tool can happen
Dietmar





Why not use integrated setup with all updates? [TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#7170ruthan⇗ @YuriyCN: You forgot alternative operating systems.

 

Page 479

#7171diderius6⇗ @George King
It is from my german XP SP1 CD.
I build with your nice files a complete XP SP3 setup DVD, 788 Mbyte, with all updates for XP SP3 and also for all posready 2009 updates.
Then, also a brandnew XP validate tool starts.
The problem in this is, that the Windows Validate tool gives problem. And via my methode I can chose, which files I want and which not
Dietmar
#7172George KingMy tool XP2ESD is updated to v1.5!

This is most important update!
Setup from USB3.x with NVMe is no longer problem!
Deyploed system have correct HALs and kernels.
Automated HALs and kernel patching when 4GB+ RAM detected during setup on end machine.
Dynamic input ISOs processing, no more defining Windows XP file names ISOs.
Windows 8 DISM due VHD mounting and image capturing
Windows Server 2003 support
..and many more changes.

Please see changelog for all details.

 
03.04.2021 - v1.5 - Fixed generating tag file and image flag in Professional N Volume edition
- Fixed typos in Professional images naming
- Fixed MassStorage drivers integration before capturing
- Fixed registry bug in storahci.inf
- Removed bad driver iaNvStor.INF as iaNvStor.sys was broken somehow
- Updated AutoSysprep.cmd to dynamicaly process Repository folder
- Changed VHD mounting from DiskPart to DISM
- Changed "drivers" folder to "driverpacks" for future merging with Windows 7 / 10 setup to get perfect AIO
- Changed WinPE ScratchSpace from 32MB to 64MB (needed for sp3.cab repacking after PAE patching)
- Improved "System reserved" partition removal. New method remove partition on target disk, which have size listed in MBs, so 50/100/350/500 partition is automatically removed.
- Updated "Auto-Sysprep" scripts and deleted some unneeded files
- Updated DISM to latest version 6.2.9200.16384 that runs under XP - this adds also VHD mounting feature!
- Updated bcdedit.exe to latest version 6.2.9200.16384 that runs under XP
- Updated Longhorn NTLDR to look for standard ntoskrnl.exe
- Updated Snappy driver Installer to latest version v1.21.2.2102
- Updated MSSTMake to latest version 21.3.13.1
- Added Windows Server 2003 processing support, now can be all XP and Server 2003 ISO processed to build one perfect install.esd with all editions
- Added default system tweaks - Disable missing antivirus warning, Set Windows update as enabled to avoid unneeded settings prompt as WU is down, Show My documents and Computer on desktop
- Added setup.exe patching for Windows 8.0 source, now can be used Windows 8.0 and Windows 10 setup engine
- Added temporary and log files removal before capturing image
- Added Serpent, Palemoon, Firefox browser SFX installers, see more information about when you open them in WinRAR
- Added NTOSKRNL_Emu files into "Auto-Sysprep" as it's needed for included ported drivers (Generic AHCI, Generic NVMe, Generic USB3.x, Samsung NVMe, Intel IRST, AMD AHCI)
- Added bootsect.exe + bcdboot.exe v6.2.9200.16384
- Added winload.exe v6.0.6001.16497 - This one can successfully boot XP/2003. If you want use this boot option, just remember one important thing - This option can be used to boot after you finish OOBE otherwise you broke system
- Added makecab.exe extracted from Windows 7 image into WinPE setup image, need to repacking CABs
- Added sigcheck.exe into WinPE setup image, needed for detectinf file versions
- Added unneeded HALs and kernels removal before second reboot
- Added Windows XP bootlogo WinPE to get perfect XP look
- Added automated HALs and kernel patching using WinXPPAE when more then 4000MB RAM detected during setup
- Added WinPE MassStorage integration steps - including NVMe and USB3.x generic drivers. You can perform setup from USB3 drive without problem!



 
https://www.mediafire.com/file/1r8b5pfxuesh9n5/XP2ESD_v1.5.7z/file




I also added into first post (Maybe need more update, but it's enough for now) Silent Software Pack example package. I hope you will find it useful for your own build. Expand it into setup folder and all of them will be applied at the end of setup before OOBE.
Included are latest XP browsers repacks, thanks for idea @Shortyportuguese, WinRAR, 7z, CCleaner, VirtualBox etc..

 
https://www.mediafire.com/file/0sbhqsgcc9r7f6c/SilentSetupSoftwarePack_Example_2021-04-03.7z/file
[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#7173George King⇗ @infuscomus ⇗ @diderius6

If you want to build ISO with winload.exe, set USEWINLOAD=Yes in config.ini

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#7174infuscomus⇗ @George King - nice work!
If you have the time now, can you try to find the cause of a 12A BSOD in windows 7?
#7175George King
Zitat von ⇗ infuscomus im Beitrag ¶ #7174
@George King - nice work!
If you have the time now, can you try to find the cause of a 12A BSOD in windows 7?
Yes, it's on my radar now! I'm going to use Windows 7 Ultimate E RTM, uninstall English language pack and commit changes, then install Czech language packs and compare both images, will send you all registry changes. I hope we can find needed placeholder soon :) [TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#7176diderius6Hi, today I make some speed tests with the dark z390 board under XP SP3 with all updates and also all posready.
CPU 9900k, 32Gbyte memory.

In Mathematica 5

25 sec for 2700000! with Western Digital black harddisk 2 TB and 4 Gbyte Memory
43 sec for 2700000! with nvme Optane 905P 960 GB and the 32 Gbyte patch

Cpu load only 6% in both cases(?!).


On Youtube and the Nvidia GT730 graphiccard

4k Video Peru without any stoppers with Western Digital black harddisk 2 TB and 4 Gbyte Memory
4k Video Peru with small stoppers with nvme Optane 905P 960 GB and the 32 Gbyte patch and 32 Gbyte Memory

Boottime to full desktop 13 sec with Western Digital black harddisk 2 TB and 4 Gbyte Memory
Boottime to full desktop 20 sec with nvme Optane 905P 960 GB and the 32 Gbyte patch


Dietmar
#7177ruthanWell 100 / 16 (8 core + 8 virtual ones(HT)) threads is ~6%, maybe its running on single core..
#7178CixertAs much as I search, I cannot find where to download WinXPPAE 2.0 by ⇗ @daniel_k
I do not understand...
#7179George King
Zitat von ⇗ Cixert im Beitrag ¶ #7178
As much as I search, I cannot find where to download WinXPPAE 2.0 by @daniel_k
I do not understand...


There is latest 3.5 version [TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#7180Mov AX, 0xDEADHi !

Let's make another dirty hack :)

This time is AVX/AVX2 Enabler for Windows XP (x32 only)
Again as Proof-of-Concept, only ntkrpamp.exe (MultiCPU+PAE) is done (still BETA v1), v5.1.2600.7581 (KB4463103 update, 2029056 bytes)

Do it yourself (you need change kernel file on disk, remember about Microsoft's EULA):
1) xdelta3.exe -v -f -d -s ntkrpamp.exe ntkrpamp.delta ntkrpamp_avx.exe
2) put ntkrpamp_avx.exe as new ntkrnlpa.exe in /system32 folder, ntkrnlpa.exe will be selected by bootloader only if windows was installed as MultiCPU+PAE. Also you can force exact filename in boot.ini: add /kernel=ntkrnlpa.exe

Links:
ntkrpamp.delta v1 - ⇗ http://www.unibytes.com/facSy3u_83gLqw-Us4P3UgBB / ⇗ https://www.mediafire.com/file/a692j6ymc..._delta.zip/file
ASM sources (FASM format) v1 - ⇗ https://pastebin.com/CbBFd5tM
xdelta3.exe - ⇗ https://github.com/MovAX0xDEAD/KDNET/raw/master/xdelta3.exe


P.S. Some test/diag utils fail with AVX detection due wrong coding, but proper projects like Prime95 do it right

P.S. WinXP x64 kernel has different FPU context format, but i think it is possible to do same trick, but i'm not interested

P.S.S Don't ask for AVX512, there is no free space in FPU context to store additional 16*AVX512_H(256bit) regs. WinXP x32 kernel allocates only 520 bytes(see _FXSAVE_FORMAT struct) for store all (2*ControlWords(128bit) + 8*FPU/MMX(128bit) + 8*SSE(128bit) + 8*AVX_H(128bit)) regs, this "520" harcoded to structs and code :(
#7181diderius6⇗ @Mov AX, 0xDEAD

I take a look, which CPU is first in offering AVX (Registers with 256 Bit) : Sandy Bridge
AVX2: Haswell
Via Microsoft, only from Win7 SP1 AVX is used.

I just build ntkrpamp_avx.exe

⇗ https://ufile.io/in92dj79

Dietmar

"By default, newer Prime95  >=  v.27 automatically selects the newest instruction set extension, such as AVX, AVX2, or even AVX-512." yepp, confirmed.
Hihi, this will be a real burning hardware test for any compi now, using Prime95 with AVX enabled under XP SP3 with last Posready ntkrpamp.exe.
Einstein@Home, looking for Gravitional Waves, also uses AVX.

EDIT: I just check Prime95 with and without AVX. AVX works.
Prime95 is about 4 times(!) as fast as without AVX.


CPU 9900k on the EVGA Dark board z390 reaches 100 degrees on all cores,
225 Watt without any overclocking.
The EVGA dark z390 board is stable under this extreme conditions but I think,
that this test will crash a lot of compis.
#7182iyutos⇗ @Mov AX, 0xDEAD

To add a new CPU instruction into XP kernel - it's hard to imagine, I admire your skills.

What about patching Explorer.exe so that when deleting NTFS Junction through Shift+Delete, it will not delete target files.
Also to add an ability to understand NTFS symlinks natively (though there is a symlink driver for Windows XP by Masatoshi Kimura).
To remove 255 characters limit in Explorer.exe for files and folders...
#7183diderius6Would be very interesting,
to compile some programs new, allowing the compiler to make use of AVX2 instructions.
Nothing needs to be changed in original code. The compiler do it for you.
Not only the registers are now 256 bit, also the integer operations.
Mathematica or Chess-programs do not use it until now
Dietmar
#7184Outbreaker⇗ @Mov AX, 0xDEAD
Will the AVX/AVX2 Enabler also work with the PAE RAM Patcher together?
#7185diderius6⇗ @Outbreaker

I put the AVX patch from ⇗ @Mov AX, 0xDEAD  together with the Mem patch from ⇗ @daniel_k

Needs intensive testing,
for me it works
Dietmar

⇗ https://ufile.io/9cqs6h78

EDIT: With AVX and mempatch, now Prime95 is about 430% faster as without.
CPU-Z tells, that now the CPU is 1200% faster..

 

Page 480

#7186Outbreaker⇗ @diderius6
I see. I had to apply the AVX Patch first before applying the RAM Patch.
#7187ruthanI was searching to my stuff, so found memory bios areas explanation from one super micro manual.. It probably help to understand, why PAE patch is needed for to gain reasonable ammount of rams on some MBs..
It seams at least for some MBs, this design is sucks and its done by wrong way..


 Source Super micro MBD-C7X99-OCE-F manual
⇗ https://www.supermicro.com/en/products/m...ard/C7X99-OCE-F // here is download link
#7188jonathan_hzshalplusntosAVXplusMempatch.7z
shutdown and reboot error
usb become unknow
#7189diderius6⇗ @jonathan_hzs

Do you use usbport.sys from win2003

Dietmar

⇗ https://ufile.io/r75opqts

EDIT: May be, that the other files from the USB stack should also be used from win2003, because they work under large memory,
usbd.sys and usbstor.sys .
#7190diderius6⇗ @jonathan_hzs

With halplusntosAVXplusMempatch.7z
and only usbport.sys from Win2003
I noticed some random crashes,
when connecting a new USB device (USB driver is the win8 ported).

I dont know, which is the last usbd.sys and usbstor.sys from win2003.

But USB3 boot for example works, EWF works (gives 83524 Mbyte/sec ^^),
all on the Evga Dark z390 board.
Until now, all other seems to be stable. Prime95 runs stable for 90min, cooking compi )
Dietmar
#7191daniel_k
Zitat von ⇗ diderius6 im Beitrag ¶ #7190
With halplusntosAVXplusMempatch.7z
and only usbport.sys from Win2003
I noticed some random crashes,
when connecting a new USB device (USB driver is the win8 ported).

I dont know, which is the last usbd.sys and usbstor.sys from win2003.

Hi Dietmar,

usbport.sys is only used by USB 1.1 / 2.0 host drivers, so the crashes have nothing to do with it.
#7192diderius6⇗ @daniel_k

I changed

usbport.sys
usbstor.sys
usbd.sys

against their version from win2003

Now, the random crashes are gone for
halplusntosAVXplusMempatch.7z

Dietmar

⇗ https://ufile.io/apynpcsd
#7193Outbreaker
Zitat von ⇗ YuriyCN im Beitrag ¶ #5876
Zitat von ⇗ schreiberstein im Beitrag ¶ #5856
New report:

After testing out the Sapphire AMD Radeon 7970 graphics card for a while now, I fount its performance to be lackluster on my Z490 platform:

Neg:
- Performance feels dated when playing games at 1440p
- Windows XP 2D performance is very slow (~1900 pts in Tom 2D Benchmark)
---> Regardless of the blazing fast 10 core CPU, the UI feels very sluggish like an old Intel Centrino notebook from 2005.
---> Performance degraded even further when using the PAE memory patch to enable more than ~900 MB of RAM (~1900 pts to ~400 pts on Tom 2D Benchmark) = UNUSABLE PERFORMANCE!
---> Scrolling in web browser felt slow
- Catalyst Control Center buggy on Windows XP



1. To increase 2D performance on RADEON video cards in 2-3 times, you need to replace the videoprt.sys file with a file with WinXP SP2.
⇗ https://www.upload.ee/files/12489589/videoprt_files.zip.html

2. Good Catalyst Control Center for Windows XP
⇗ https://www.upload.ee/files/12377846/AMD...-Pack3.zip.html

3. Scrolling in web browser felt slow - it is observed with PAE only. Without PAE - scrolling in web browser works fast.
Replace the file c:\WINDOWS\system32\drivers\videoprt.sys - and the scroll will work fine!



@ALL
Is this problem still the case?
And is the file videoprt.sys also from WinXP SP2?
#7194YuriyCNSituation with videoprt.sys + PAE RAM patch

It was noticed that using videoprt.sys taken from "WinXP SP2" AMD Radeon drivers have much better 2D performance (up to 200-250%) than the file with SP3. NVidia users answered that they do not see any difference between SP2 and SP3 - that is why the ready builds #2 and #3 include the file with SP2 as a more productive one. Checked file should be copied to c:WINDOWS\system32\drivers\videoprt.sys replacing the original one and reboot your PC. After the restart make sure that the file protection system does not give back the old version.

Measure the 2D performance with Tom2D_Ru (2D GDI Benchmark) and videoprt.sys (versions from SP1, SP2, SP3) - ⇗ https://www.upload.ee/files/13039545/Vid...D_Test.zip.html
#7195OutbreakerWell that's interesting and strange.
If there is no side-effect for the Intel/NVidia users then it thing it would be the best to simply use the WinXP-SP2 videoprt.sys file as the default one for Windows XP.

EDIT:
Is the web browser Scrolling slower with the SP2 videoprt.sys file or without the SP3 videoprt.sys file?
#7196diderius6Hi,
there is a z590 motherboard, that supports XP
Dietmar

⇗ https://www.overclock.net/threads/asrock...thread.1778037/
#7197daniel_k⇗ @YuriyCN

I don't have time to test right now.
Can you please test these SP2 hotfixes to see the performance?

5.1.2600.3512 (latest version)
⇗ http://thehotfixshare.net/board/index.ph...921-x86-enuexe/

5.1.2600.2911
⇗ http://thehotfixshare.net/board/index.ph...332-x86-enuexe/
#7198YuriyCNThe effect is manifested with "Radeon video cards + PAE patch" only.
videoprt.sys (with SP2) - normal scrolling and good 2D performance
videoprt.sys (with SP3) - slower scrolling and low 2D performance

Zitat
I don't have time to test right now.
Can you please test these SP2 hotfixes to see the performance?

5.1.2600.3512 (latest version)
⇗ http://thehotfixshare.net/board/index.ph...921-x86-enuexe/

5.1.2600.2911
⇗ http://thehotfixshare.net/board/index.ph...332-x86-enuexe/



Okay. The result will be later.

#7199PPeti66xTest on my machine: ASRock Z77 Fatal1ty Professional, CPU Intel I7 3770 (non-K variant, overclocked to 4.00 GHz); VGA: AMD Radeon R9 280x, Driver Date 29.08.2013, Driver Version: 9.0.100.0
Sorry, but I missed the "copy to clipboard" - because cyrillic text codepage was not converted to my system codepage - so only screenshots are available in RAR archive.

PPeti66x has attached files to this post
#7200OutbreakerStrange that the ⇗ KB96092 HotFix that supposedly only fixes an LCD bug is causing this Radeon slow down Vs the ⇗ KB917332 HotFix.

 

Page 481

#7201daniel_k⇗ @PPeti66x

Thanks for your results, just realized that I couldn't test anyway, as I don't have any Radeon cards here.
#7202YuriyCNVideocard - Radeon R7 360 2GB
OS - Windows XP Pro SP3 RUS

2D performance with videoprt.sys (SP2):


2D performance with videoprt.sys (SP3):


These updates are not installed on my PC.
Please upload ready-made, unpacked files videoprt.sys.



#7203Outbreaker⇗ @YuriyCN
Here you go.
⇗ https://www.mediafire.com/file/77u09ddvh...ookies.zip/file
You can also extract the WinXP HotFix files with command '/x' like "KBXXXXXX.exe /x"
#7204YuriyCNVideocard - Radeon R7 360 2GB



WindowsXP-KB917332-x86-ENU\SP2QFE\videoprt.sys



WindowsXP-KB960921-x86-ENU\SP2QFE\videoprt.sys



WindowsXP-KB960921-x86-ENU\SP3QFE\videoprt.sys
#7205ruthanCould you share Tom2D benchmark tool pleas? It seems that old download links are dead.
#7206PPeti66xv1.04 english: ⇗ https://www.overclockers.com/forums/atta...27&d=1323748287
v1.05 russian: ⇗ http://www.thg.ru/graphic/2d_acceleratio...es/Tom2D_Ru.rar
#7207daniel_k
Zitat von ⇗ diderius6 im Beitrag ¶ #7190
With halplusntosAVXplusMempatch.7z
and only usbport.sys from Win2003
I noticed some random crashes,
when connecting a new USB device (USB driver is the win8 ported).

Those random crashes happened only when booting from USB?
#7208Lenovo_brokey:/
#7209diderius6⇗ @daniel_k

Before, the crashes with 32 Gbyte sometimes happen, when I connect an USB stick
or sometimes, when I shut down the compi.
But now, with the Win2003 usb files,
I have not seen any crash.
For me it is rockstable. All programs work. Other question is, if XP uses any of the memory >4Gb, until now I see no difference to 4 Gb.
I succeed with USB boot from USB stick (with EWF filter and cfa.sys for to show any USB stick as harddisk, it is most fast XP in world ), also harddisk in USB box.

By the way I noticed, that your USB driver AMDXHCI_XP_FINAL_V3 is best for USB boot, only not for Asmedia ports

Dietmar
#7210Andalu
Zitat von ⇗ diderius6 im Beitrag ¶ #7209
I succeed with USB boot from USB stick (with EWF filter and cfa.sys for to show any USB stick as harddisk, it is most fast XP in world ), also harddisk in USB box

Could you please write a short guide about it?
#7211YuriyCNTom2D_Ru 1.05 + videoprt.sys (versions from SP1, SP2, SP3)
⇗ https://www.upload.ee/files/13039545/Vid...D_Test.zip.html
#7212diderius6⇗ @Andalu

Ok, I write Tutorial. Because it means a lot of work for me,
I continue this Tutorial day by day, when I have mood ) and time for.
All needed files I offer for download. During writing this Tutorial I do all the steps by hand,
so that I do not miss something.

You do everything for yourself.
I am not responsible for any damage.



Tutorial How to build a write protected USB stick for any motherboard and boot XP from it


14 April 2021 dietmar.stoelting@t-online.de

1.)  Format a harddisk with Fat32.
NTFS can be used also, but it is not possible to boot a mechanical write protected XP via NTFS.
     Put this harddisk in an USB box and format this harddisk with RMPrepUSB  v.2.1.739.
     In RMPrepUSB choose on top "Settings" List large devices > 128 GiB.
     Set mark in XP/BartPE bootable [NTLDR], FAT32, Force use of LBA calls . No other mark.
Click on the drive, so that it becomes blue.
Click left down on "6 Laufwerk bereitstellen". Click "ok", "ok", "ok", wait few seconds and then hit right down "Beenden".

RMPrepUSB  v.2.1.739  
⇗ https://ufile.io/aq0gleox

2.) Take this harddisk with Fat32 out of the USB box and install XP on it. Best is to install XP via original CD.
When during setup XP asks you about this harddisk, use "let partition unchanged".
You can install every driver and program, that you want. I would install only the most needed drivers and programs,
because later to copy it to an USB stick becomes very slow, when a lot needs to be copied.

3.) Before you install any USB device, go to Windows\inf folder usbstor.inf
Change there in
[USBSTOR.AddService]

StartType      = 3     --->  StartType      = 0

and add the line below ServiceBinary  = %12%\USBSTOR.SYS

LoadOrderGroup = System Reserved

close usbstor.inf and store.

When you have already an USB driver or device installed, you have to do this step also,
but also change this value in registry [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\usbstor]

Start = 3 ---> Start = 0

and add extra key with content

Group System Reserved

4.) Download the USB driver from ⇗ @daniel_k . Other USB driver can work also, but this is the most easy way.
I edit this USB driver so that nothing needs to be changed.
Copy this USB driver to your harddisk.
Install this USB driver via device manager.
First click on amdxhc.inf and later, when XP asks, amdhub30.inf.

DanielUSBV3mod
⇗ https://ufile.io/6r80m7ix

5.) Connect your USB device, from where you want to boot XP. It can be any device, even flashcard.
 Here I tell the procedure for the Kanguru SS3 USB-Stick. This is an USB3 stick with size 16, 64, or 128 Gbyte.
Expensive and slow, but it is one of the very few USB sticks on the market, which have a mechanical write protection.
This mechanical write protection is a true protection. I compare the content bit by bit before and after boot, no change.
Later with the EWF filter it builds the fastest XP on earth with this stick.

Before connecting your wished USB device, format it with FAT32 RMPrepUSB as written before.
This is an important step. Even later for to copy you may delete this partition on the USB device,
it has to be formatted before as I wrote.

The USB3 port has to be not from Asmedia.
USB boot via the Asmedia port is possible, but you have to use the original Asmedia USB3 files v.54 for this and modd its *.inf.
USB boot is also possible with the nice ported Win8 driver from ⇗ @Mov AX, 0xDEAD .
But also does not work for Asmedia USB ports and also not for to boot from an USB stick, but USB boot from harddisk in an USB box works.

6.) Disable the pagefile via "System" and boot XP new.

7.) Install the Cfa.sys filter driver to the USB stick. This step is only necessary, when your USB device is shown as "removable".
 If you have success you will see, when the USB stick suddently appears as harddisk.
For this copy the CFA folder to the harddisk. Go to Device Manager, look for your USB device.
There you can see the driver disk.sys and partmgr.sys.
Choose driver update and click on cfadisk.inf. Install this driver even message appears,
that this driver is not for this device.

CFA filter driver
⇗ https://ufile.io/a6lgu2bv

7.2) Type regedit in "run" and delete whole key Mounted Devices.
[HKEY_LOCAL_MACHINE\SYSTEM\MountedDevices]
After deleting this key, shut XP down and go to 8.) Do not start this XP again,
before you copy it to the USB stick, because with each reboot, this key Mounted Devices is build new from XP.

8.) Now you have to make a copy of your XP on the harddisk to the USB stick.
I prefer to copy the files one by one from an outstanding XP via copy and paste.
This copy and paste let all files continous and allows the maximal possible short boottime for XP.
Begin with NTLDR, then ntdetect.com, then boot.ini then whole "Windows" folder, then "Documents and settings",
then "programs" then the rest. Always NTLDR has to be copied first and alone!
"Recycled" and "System Volume Information" copy not.

Now you may have a bootable USB stick. Depending on the device, there are possibilities to make any USB device bootable.
Most common is Bsod 0x7B or 0x21. Against 0x21 helps to start one time in Safe mode or to start with the connected original harddisk. And you may get a windows, which starts, but you see not the Desktop.
In this case you have to delete the whole key "Mounted Devices" on the USB stick from an outstanding XP.
On reboot, XP builds this key new.
[HKEY_LOCAL_MACHINE\SYSTEM\MountedDevices]

Exact this happens to me, when I follow step by step this my own Tutorial. Because of this, I put 7.2) here, there it is easy to delete the key
"Mounted Devices".
After deleting key MountedDevices on my USB stick, XP boots to Desktop via this USB stick, nothing other connected.

Now I describe, how to install the EWF filter, so that you have an XP from USB stick, which can boot write protected and is ultrafast.

9.) Download and extract the folder EWF to your bootable USB device

EWF
⇗ https://ufile.io/edismzsa

Copy from the folder EWF the file ewfmgr.exe to Windows\System32
and the file ewf.sys to Windows\System32\drivers

Type regedit in "run"
Go in registry to [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet]
Click right on this key and choose "Permissions".
On the second (or last) entry (something like user) set all marks in "Allow".
When you do not find "user", click on each other and select always "allow".
Then click on "Advanced".
Then set mark in "Replace Permissions.."
click "Apply" "Yes" "ok" "ok".

Then doubleclick in the folder EWF on ewf.reg.
When you set the permissions correct in registry, a message appears,
that the changes have been put to registry.

10) Type again regedit in "run".
Go to
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ewf\Parameters\Protected\Volume0]
and change there on the right side "enabled" from 0 ---> 1
This Bit changes the whole USB device partition(!) to write protect.
Close registry and shut compi down.

After(!) next boot XP starts write protected. My boottime is 4 sec.
When you have an USB stick, which can be set manually write protect you will see,
that XP still boots. Only on a FAT32 partition XP does not write again and again to the USB device.
This prolonges the life of your USB stick from 1 day to years.

A test, if everything is ok you can do also:

Type in commandline ewfmgr c:

And when all is ok, you see message RAM <REG> enabled
and at bottom, how many bytes are used now for the Ram overlay. It can be under XP 650 Mbyte.
Nice hack would be, to enlarge this to 2 Gbyte as on win7.

When you want to stop write protect (first switch mechanical switch to write enable), write in commandline
ewfmgr c: -commitanddisable -live
and all your changes are written to your USB device. This is very comfortable and fast for new programs.
In registry you can see, that in
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ewf\Parameters\Protected\Volume0
"enabled" from 1 ---> 0
Set this bit back to 1 and after(!) next reboot your USB device is write protected again.


Good luck, tell me if you have success

Dietmar

PS: I add hal.dll and intelppm.sys from post
¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (197)
for to overcome the timer problem on newer Intel boards.

diderius6 has attached files to this post
#7213Andalu⇗ @diderius6

It worked on the first try ......really awesome!!!

Thank you soooooo much for the very detailed and meticulous guide, a true gem!


Edit: added the following image:

#7214gordo999⇗ @diderius6 ...yeah...thanks Dietmar. Don't have time at the moment but I wonder if this might work with my Hirens 15.2 which uses mini XP. I managed to load it on a USB thumb drive with a grub/DOS bootloader and it loads fine until XP's GUI starts. Then I get a blank screen. Confirmed that it's not the video driver. The text portion is fine and I get the menu for selecting mini XP.

There are ideas in your tutorial that might work. My mobo uses an Intel-based B360C/CSM chipset.
#7215juk777Это на Radeon R7 360 2GB такие жиденькие результаты?Вот, ради интереса, прогнал на своей "затычке" GT 710:

 

Page 482

#7216ruthanWhat about gaming is Steam still working on XP somehow?
#7217infuscomus⇗ @ruthan

there is an old steam version on archive.org that still works for XP.
#7218YuriyCNDownload archive and unpack it to the root of your drive
File SteamDreamXP.7z (57 MB) - ⇗ https://www.upload.ee/files/13002672/SteamDreamXP.7z.html
Windows XP STEAM reconnect fix ⇗ https://yadi.sk/d/CX7-7GeClqeNfA
This version of STEAM perfectly works on XP and store and library, in short full functionality.

========================

Windows XP 2021 - system build for the modern PC (edition 17-APR-2021)

TXT (86kB, ENGLISH) - ⇗ https://yadi.sk/d/RYoBsl5rqcXXAQ
TXT (96kB, RUSSIAN) - ⇗ https://yadi.sk/d/Yl5ZxgRRa1CwRg
#7219gordo999
Zitat von ⇗ ruthan im Beitrag ¶ #7216
What about gaming is Steam still working on XP somehow?
⇗ @ruthan ...most Steam games I have seen are hacked. Steam not required. To get games running on XP I found the intelppm and Hal mods are required. Otherwise, games won't start, or run erratically. I have been able to run much of the Myst series with Riven on XP. The intelppm/Hal mods also help Firefox run up to a certain version.
#7220genieautravailA question to everyone!

Is there an XP driver for Intel Iris Pro 5200 graphics solutions?

I find on the internet a lot of links for a driver for XP but concretely does anyone use a PC with XP and this graphic solution?

Thank you in advance
#7221xingyou12
Zitat von ⇗ diderius6 im Beitrag ¶ #1145
May be we need WDFLDR.SYS (from Vista-Longhorn5048, Vista, Win7) all 32 bit
for XP for Intel USB
Dietmar

PS:Intel USB 3 drivers need WDFLDR.SYS (Kernel Mode Driver Framework LOADER) which doesn't exist on XP.
XP drivers require coinstaller WdfCoInstaller01009.dll (included with driver, it installs wdfldr.sys and wdf01000.sys) and separate usbd.sys.
I install the Microsoft Kernel Mode Driver Framework runtime 'Microsoft Kernel-Mode Driver Framework Install-v1.9-Win2k-WinXP-Win2k3.exe' extracted from WdfCoinstaller01009.dll which is the co-installer for KMDF 1.9.
This drivers here have all only dependecies for XP!

EDIT: This brings me to the idea, to install the very first USB driver from NEC on Longhorn 5048 for Intel chipset USB3.0.


Excuse me, do you have the 64bit Version of Microsoft Kernel Mode Driver Framework runtime 'Microsoft Kernel-Mode Driver Framework Install-v1.9-Win2k-WinXP-Win2k3.exe'(KB970158) ? I need it for my PC to run XP/Server 2003 x64, I spend a lont time for searching it but can't find it in the Internet. And another hotfix I need is the x64 version of KB971286(WinUSB version 1.9 update) if you have. Thank you very much.
#7222Mov AX, 0xDEAD
Zitat von ⇗ xingyou12 im Beitrag ¶ #7221

Excuse me, do you have the 64bit Version of Microsoft Kernel Mode Driver Framework runtime 'Microsoft Kernel-Mode Driver Framework Install-v1.9-Win2k-WinXP-Win2k3.exe'(KB970158) ?


try:
 
rundll.exe WdfCoInstaller01009.dll,WdfCoInstaller


WdfCoInstaller01009.dll can be found on many drivers like VIA USB3.0 Driver Package, x64 subfolder

#7223xingyou12
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #7222
Zitat von ⇗ xingyou12 im Beitrag ¶ #7221

Excuse me, do you have the 64bit Version of Microsoft Kernel Mode Driver Framework runtime 'Microsoft Kernel-Mode Driver Framework Install-v1.9-Win2k-WinXP-Win2k3.exe'(KB970158) ?


try:
 
rundll.exe WdfCoInstaller01009.dll,WdfCoInstaller


WdfCoInstaller01009.dll can be found on many drivers like VIA USB3.0 Driver Package, x64 subfolder



Thanks, I have gotten the file 64bit version of Microsoft Kernel-Mode Driver Framework Install-v1.9-Win2k-WinXP-Win2k3.exe from extracting WdfCoinstaller01009.dll, and than installed it successfully! xingyou12 has attached files to this post
#7224BrooonsXP SP3,  PRIME B250-PLUS,  graphic card NVidia GV-NX66256DP , 5 browsers.
4 browsers not work, freeze.
Opera work fine.
DirectX9 run dxdiag all test fine, but browsers freeze
Rebooting this machine on Win_7, fine work browser for Win_7
Rebooting on XP, then not work browsers for XP, again, but except Opera, which work fine.
Why browsers freeze?
#7225diderius6⇗ @Brooons

Do you use the halplusintelppm patch from post

¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (197)

The symptoms can be related to a not correct working timer
Dietmar
#7226Brooons⇗ @diderius6

Wow !!!!
It's work! Thank you!

#7227Outbreaker
Zitat von ⇗ diderius6 im Beitrag ¶ #6435
I succeed to enable the very last ewf.sys from win 7.1 bit32 Version 1.0.1533.0 (win7sp1_ldr.160325-0600)
with XP SP3.
No matter, if you use Vista boot with winload.exe or classic ntldr,
the limit of ram overlay is always about 719 MByte.
But this new ewf.sys seems to be more stable than the ewf.sys from XP embedded.
And this ewf.sys from win7 Bit32 still works together with ewfmgr.exe from XP Embedded.

For to make it work under XP SP3, you have to build a new ewf.reg
and you need to put in your correct "DiskSignature" and "PartitionOffset".
The old ewf.reg from XP Embedded does not work any longer. Because now the disksignature and the partitionsoffset
have to be given. I have no idea how this can work any longer with floppy or other changeable media without those values.
The old ewf.sys from XP Embedded can(!) work with changeable medium.

For to start, you have to change "Enabled"=dword:00000000 ---> "Enabled"=dword:00000001

Dietmar

⇗ https://ufile.io/jx84ajtd
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{71A27CDD-812A-11D0-BEC7-08002BE2092F}]
"UpperFilters"="Ewf"
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ewf]
"ErrorControl"=dword:00000001
"Group"="System Bus Extender"
"Start"=dword:00000000
"Type"=dword:00000001

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ewf\Parameters]

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ewf\Parameters\Protected]

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ewf\Parameters\Protected\Volume0]
"Type"=dword:00000001
"ArcName"="multi(0)disk(0)rdisk(0)partition(1)"
"Enabled"=dword:00000000
"CompareBeforeAlloc"=dword:00000000
"DiskSignature"=dword:db4c1922
"PartitionOffset"=dword:00100000


What about the FBWF (File Based Write Filter) would that not be a better option to add?
#7228diderius6⇗ @Outbreaker

The only way to build a complete write protected XP is to use EWF,
have a nice day
Dietmar
#7229Outbreaker
Zitat von ⇗ diderius6 im Beitrag ¶ #7228
@Outbreaker

The only way to build a complete write protected XP is to use EWF,
have a nice day
Dietmar

They say that EWF protects the whole volume and that the FBWF can protect the whole volume or you can setup write-throughs for files and folders.
⇗ https://www.itprotoday.com/server-virtua...ile-based-write
#7230diderius6⇗ @Outbreaker

FBWF operates at the file level while EWF operates at the sector level.
So, any virus has no chance. And a mechanical write protection then protects also MBR, just all on the boot device.
This can be done only with FAT32, because NTFS wants to make real writes to the boot device during boottime and check them.
When you work on the file level, it is possible for a virus, to put itself anywhere, outside of the files, because no real write protection.
With working on the sector level real write protection is possible, because all operations on the whole partition work in ram.
And with FBWF  you cannot commit changes to the disk for all files at one time, only for selected file.
This is clear, because XP does not understand, what is written in a sector.
When all of all sectors of a partition are write protected (only in EWF), a virus has zero chance,
how good it ever may be written and you also protect it mechanical, so that no changes in the MBR or elsewhere outside of the partition can happen. Not a single bit changes, as you can test from an outstanding XP with Winhex.
By the way you can see, that also only reading from an USB stick lets the USB stick age, so reading alone limits the life time of any USB stick and there are BIG quality differences how quick this USB stick produces errors even nothing is written to, only readings.
With time, such an USB stick gets slower during read
Dietmar

"Bei dem FBWF kann es unter Umständen zu Seiteneffekten kommen, die den Schutz des jeweiligen Mediums nicht mehr gewährleisten."

"In case of a power failure FBWF can make your system unbootable."

 

Page 483

#7231infuscomus⇗ @diderius6

you could have a mostly write protected XP install by making a bootable ESD image, sure with the right tools it can be modified but I think for most cases it should suffice.
#7232Gelip⇗ @diderius6

Zitat von ⇗ diderius6 im Beitrag ¶ #7228
@Outbreaker
The only way to build a complete write protected XP is to use EWF

There are other ways e.g.:
  • sanboot (iSCSI or AoE in Read Only mode) - the size of the partition is practically irrelevant, works best over Ethernet 1000
  • mapping RAW disk image to RAM with GRUB4DOS (map --mem). Of course, provided that the WinXP disk (partition) image will fit in RAM, but with today's RAM sizes of 8 GB and more, it is probably not a problem, e.g. 5GB disk image
#7233diderius6⇗ @Gelip

Is it possible,
to boot a mechanical write protected USB stick with an partitionsize of 5Gbyte with working XP on it to ram?
Interesting if yes and very much I would like a Tutorial for it,
because the main problem of EWF is its ram overlay size of about 650Mbyte maximal.
But the partition, from where XP via EWF starts, has NO size limit at all.
EWF has a lot of advantages: You can write all ram back to the disk,
you load to ram only the needed files which makes it fast as much as possible.
Because EWF is sectorbased, you can compress or whatever you can do with a partition
Dietmar
#7234Gelip
Zitat von ⇗ diderius6 im Beitrag ¶ #7233
Is it possible,
to boot a mechanical write protected USB stick with an partitionsize of 5Gbyte with working XP on it to ram?

I don't know but WinXP can, for example, be run from a server on Linux - NetzoneSoft NxD - after restart WinXP, the changes are not saved. I tested it almost 9 years ago with WinXP SP2: ⇗ https://www.elektroda.pl/rtvforum/topic2324204.html
#7235Gelip⇗ @diderius6
Also try iSCSI Cake server (runs on WinXP)
#7236Andalu
Zitat von ⇗ Gelip im Beitrag ¶ #7232
mapping RAW disk image to RAM with GRUB4DOS (map --mem). Of course, provided that the WinXP disk (partition) image will fit in RAM, but with today's RAM sizes of 8 GB and more, it is probably not a problem, e.g. 5GB disk image

Very interesting!
Could you please give me a link to some guide about it?
#7237NT5 forever
Zitat von ⇗ diderius6 im Beitrag ¶ #7246
Is it possible,
to boot a mechanical write protected USB stick with an partitionsize of 5Gbyte with working XP on it to ram?
Interesting if yes and very much I would like a Tutorial for it,
because the main problem of EWF is its ram overlay size of about 650Mbyte maximal.



⇗ http://reboot.pro/index.php?showtopic=9830

Here you are. Enjoy!
#7238NT5 foreverI have been using XP in RAM disk mode since 2009 and can't even imagine running XP the regular way because it is way too scary with all the malware floating around the net.
RAM disks are a pain to set up, but once you get everything running it is stable as a rock.

I use Grub4DOS bootloader/menu, and it has the option to run XP both in file disk mode and in RAM disk mode.
When I want to install new software or hardware I use filedisk and set everything up the way I like it.
Changes are persistent after reboot, just like a regular XP installation on hard disk.
Once everything is configured correctly I reboot my machine and use RAM disk mode.
Changes made to the C drive will be flushed during a reboot.

I'm not using any realtime antivirus software and do everything, including browsing the web using the Administrator account.
Internet facing programs are sandboxed using Sandboxie freeware, and I use an anti executable: bouncer.
EWF is used to protect my data partitions.

I have never had any malware problem since I use this setup.
RAM disks are very easy to set up with the IMG-XP software package.

You can also use Microsoft's ramdisk.sys driver, but your RAM disk size will be limited to 500 MB.
It's not a big issue because most of my XP installations are smaller than that.
The advantage of the Microsoft driver is its compatibility with TrueCrypt pre-boot authentication.
This allows you to create a RAM disk image file nested inside an encrypted partition.
Before you will be allowed to boot the image into RAM TrueCrypt will ask for a password at the boot screen.

Once you get to the desktop and look in explorer you will see your C drive, but it won't appear in disk management!
The encrypted partition containing the RAM disk image is inaccessible, so malware will not be able to infect it.
The downside of this method is the longer boot time, because of the decryption process.
#7239diderius6Hi,
is there somebody, who uses SVBus_V1.2_20200428
from Kai Schtrom for Ram Boot of XP
Dietmar
#7240gordo999
Zitat von ⇗ NT5 forever im Beitrag ¶ #7238
I have been using XP in RAM disk mode since 2009...
⇗ @NT5 forever ...just pointing out that this thread is aimed more at XP on newer motherboards (Modern Hardware). How does your installation work on say a B360C/CSM Intel chipset which is a 300 series chipset?

I'm asking because I am trying to convert the Hiren's 15.2 utility disk, which boots in mini XP, to run on this modern chipset. I have tried on a CDROM and a USB stick. You would need to d/l Hiren's 15.2 to see what I mean but it uses the Grub4DOS bootloader and that works fine through the text mode part of the boot. I can get to the opening menu, select the mini-XP mode and it starts to load fine, with a horizontal bar indicating its loading progress.

After the horizontal bar completes, it should indicate that XP is starting but it never reaches that stage. All I get is a blank screen. Normally, trying to boot normal XP without the modded SATA driver, would produce a BSOD at this stage. But there is no BSOD, just a blank screen. I have verified it is not a video driver problem.

Any ideas from your experience since 2009?  Is Mini-XP very different from standard XP?
#7241Brooons
Zitat von ⇗ gordo999 im Beitrag ¶ #7240
Is Mini-XP very different from standard XP?

XP boot from HDD, but MiniXP boot from memory, after download ISO in memory.
My MiniXP work fine on PRIME B250-PLUS, but necessarily download ISO in memory, through Grub map memory.
#7242diderius6I succeed with ramboot of a 7Gbyte xp.img file

using svbus vers. 1.2 from Kai Schtrom,

RMPrebUSB vers. 2.1.739,

grub4dos-0.4.5c-2016-01-18

xp.img is the pur copy of the first 14844060 sectors via Winhex of my Western Digital NTFS 2 TB harddisk,
it is first partition with MBR and 2048 sectors before partition.

I install the svbus via its setup file to this WD 2TB and defrag this HD, before I make from it xp.img .
I install grub4dos to an USB stick via RMPrebUSB, and copy after the whole content of grub4dos-0.4.5c-2016-01-18
on root of this stick.

And I add a menu.lst with content

title Windows XP - RAMDISK
 find --set-root --ignore-floppies /xp.img
 map --mem /xp.img (hd0)
 map --hook
 root (hd0,0)
 chainloader /ntldr

Then I copy xp.img (7Gbyte) to the root of this stick,
voila )
Dietmar

PS: After, you can disconnect your USB stick, this is even better than any mechanical write protection.
It is stable. The chainloading via grub4dos allows you, to set the USB stick mechanical write protected, even NTFS.

#7243BrooonsI installed a new copy of XP, ntfs.
Everything is set up, everything works fine.
Then I copied the XP folders, copy-paste, to another hard drive and attached that hard drive on that machine.
I get a loop of the desktop startup sound, but I can't see the desktop.
I've never seen this before
A constant loop of the Windows startup sound, endlessly.
Why?
#7244diderius6⇗ @Brooons

Not easy to get a working XP via copy and paste.
Better is to use the tool AOMEI Partition Assistant Standard Edition 7.0

Dietmar
#7245Brooons⇗ @diderius6
AOMEI will delete partition, this is not possible, there are the necessary files
XP copy-paste never had any problems before for me.
It's amazing to see this for the first time... Loop sound, very strange.

 

Page 484

#7246gordo999
Zitat von ⇗ Brooons im Beitrag ¶ #7241
XP boot from HDD, but MiniXP boot from memory, after download ISO in memory.
⇗ @Brooons ...thanks. Seems I am having problems after mini-XP is loaded into the RAM disk. I'll check that out. It seems to load OK since the horizontal bar finishes before the blank screen appears. However, it may not be loading correctly.
#7247Brooons
Zitat von ⇗ gordo999 im Beitrag ¶ #7246
[quote=Brooons|
Seems I am having problems after mini-XP is loaded into the RAM disk.


Folder XP on ISO, file X, read him with notepad:  
BootDevice="ramdisk(0)"
BootPath="\i386\System32"
OsLoadOptions="/fastdetect /minint /rdimageoffset=8192 /rdimagelength=3161088 /rdpath=\HBCD\XP\XP.wim /iso=\ISO\Hiren'sBootCD.iso"


Do you have such a path "\ISO\Hiren'sBootCD.iso"?
ISO virtual or real ?

del-18YuriyCN
Баг RTC таймера - уход времени "вперёд" на мультипроцессорном ядре Windows XP


Описание:
При использовании Windows XP на современных ПК обнаружился глюк - системное время (RTC часы) уходит вперёд, причем степень ухода зависит от активности работы ПК и может составлять до 5 минут в день. Проблема проявляется только в Windows XP. На выключенном ПК, под UEFI/BIOS или в Windows 7 - время идет правильно. Часовая микросхема RTC должна быть независимой частью, но на современных материнских платах это не так. Исследование показало, что уход часов "вперед" происходит при постоянном переключении периода системного таймера 16 мс (15.625 мс) в 1 мс (0.977 мс) и обратно. В Windows XP (по умолчанию) этот таймер работает с периодом 16 мс и если на ПК не проявлять активности - то он продолжит работать с периодом 16 мс. Но при запуске Хрома или мультимедиа приложений, таймер переключается в режим работы с периодом 1 мс и может возвращаться на 16 мс. При жестко установленном периоде 16 мс (или 1 мс) время идет точно, но при постоянном переключении таймера 16 мс - 1 мс - 16 мс - 1 мс происходит сбой в работе часов реального времени RTC.


Решение проблемы:
Решение проблемы - утилита Timer_Fix.exe (с исходным кодом, написанная на Visual Studio 6.0). Программа не имеет интерфейса, после запуска она переведет системный таймер на период 1 мс и оставит его неизменным. Программа постоянно висит в процессах до перезагрузки ОС. Для завершения работы (в случае необходимости) нужно просто прибить процесс Timer_Fix.exe через "Диспетчер задач". Для удобства лучше положить Timer_Fix.exe в "Автозагрузку" и забыть о проблеме с уходом времени. В целом, данный фикс можно считать "костыльным", но ничего лучшего на данный момент нет.



Программа для демонстрации проблемы (программа для накрутки времени):

RTC_bug_demonstrations\Timer_v10\Timer_src_BCB6.0 - исходные коды программы
RTC_bug_demonstrations\Timer_v10\timeBeginPeriod.exe
RTC_bug_demonstrations\Timer_v10\timer.exe

Разработчик программы - женщина-программист Xenia. Огромное ей спасибо!

Данная программа служит для наглядной демонстрации проблемы с RTC таймером. Она устанавливает период системного таймера 1 мс (0.977 мс) выдерживает 0.2 секунды, устанавливает 16 мс (15.625 мс) выдерживает 0.2 секунды и далее продолжает переключать системный таймер с заданными длительностями. Программа состоит из 2-х частей:
1. timeBeginPeriod.exe - консольная программа для установки режима таймера. Заданный режим (период и длительность) передаётся в параметрах командной строки. Программа представлена с исходным кодом на Borland C++ Builder 6.0.
2. timer.exe - это GUI интерфейс для timeBeginPeriod.exe. В графическом режиме можно задать период 1, длительность 1 и период 2, длительность 2 работы системного таймера. Программа представлена с исходным кодом на Borland C++ Builder 6.0.
Для корректной работы timeBeginPeriod.exe и timer.exe должны находиться рядом, в одной директории.



Проверка RTC-bug:
1. Проверку производим на свежезагруженной системе, без выполняющихся фоновых задач. Все фоновые процессы должны быть закрыты, поскольку они могут удерживать таймер на 1 мс, что помешает работе демонстрационной программы.
2. Запускаем Clockres - программу для контроля периода системного таймера. Измеренный период должен = 15.625 мс
3. Запускаем CPU-Z, переходим на закладку About, нажимаем кнопку Timers и кнопку Start, чтобы контроллировать частоты системных таймеров
4. Запускаем timer.exe. Устанавливаем режимы Период 1 = 1 мс, Длительность 1 = 0,2 секунды, Период 2 = 16 мс, Длительность 2 = 0,2 секунды и нажимаем кнопку Start. Эти режимы заданы режимами по-умолчанию.
5. В установленном режиме (по-умолчанию) будет происходить "накрутка" времени RTC таймера приблизительно +2 секунды за 1 минуту работы программы. При Длительности = 0.1 секунда, накрутка времени будет составлять +4 секунды за 1 минуту.

Выводы:
1. Не смотря на то, что существует решение - программа Timer_Fix.exe, я предлагаю специалистам подробно изучить данную проблему с использованием нового инструмента - программы для накрутки времени Timer_v10
2. Может патчем файлов зафиксировать работу таймера на периоде 1 мс (0.977 мс), как это сделано в Windows 7

Состав архива:
Clockres - программа для контроля периода системного таймера
CPU-Z - в закладке About, кнопка Timers можно контроллировать частоты системных таймеров
Neutron 1.07 - программа для контроля и синхронизации времени через интернет
Timer_Fix (с исходным кодом) - фикс проблемы с уходом времени вперед (устанавливает таймер на 1мс)
Timer_v10 (с исходным кодом) - программа накрутки времени, для демонстрации проблемы

Скачать (2 МБ) - ⇗ https://www.upload.ee/files/13095203/RTC...ations.zip.html
#7248gordo999
Zitat von ⇗ Brooons im Beitrag ¶ #7247
Do you have such a path "\ISO\Hiren'sBootCD.iso"?
ISO virtual or real ?
⇗ @Brooons ...thanks for pointing out that 'X' file. I do have such a file and it has the same data you posted. I do not have a folder called \ISO with a Hiren's ISO in it. I created a folder on my C:\ drive and named it ISO and I made an ISO from my USB flash drive, naming it Hiren'sBootCD.iso but it made no difference.

It's not clear what /rdpath=\HBCD\XP\XP.wim /iso=\ISO\Hiren'sBootCD.iso means. I understand that rdpath is pointing to a path to the Hiren's files found in the XP.wim file but /iso=\ISO\Hiren'sBootCD.iso makes no sense. I think there may be a confusion here been the Unix language and the Windows language.

Clearly that path applies to the original CD so why would they need a reference to an ISO, unless they have created an ISO in the ramdisk, in folder /iso? It seems that line is aimed at the ramdisk since the reference is 'rdpath', where rd means ramdisk.

I am going to try changing the path to /iso=c:\ISO\Hiren'sBootCD.iso. Unfortunately, when ramdisks are created, they don't always use the same drive letters. I may have to guess which drive letter to use.
#7249NT5 forever@Gordo999

The advantage of using RAM disks is that it's very unlikely that you will get a blue screen because of missing/incompatible storage drivers.
You will just end up with only a C: drive in My Computer.
If the C: drive contains driverpacks, it will often be possible to install the correct driver manually from within the running OS.
After that, you can create a bootable disk image of the running system using the IMG_XP utilities package.
This new image will now contain the correct storage drivers and all the required registry settings in order to boot correctly in file disk mode.

Is there any particular reason you want to use Hiren's bootdisk?
Most of the programs on the disk are very outdated and this disk is just another flavour of BartPE AFAIK.
Running a PE has many limitations compared to regular XP.

Most programs on Hiren's disk are available for download on the net if you really must use them.
It would be much better to make your own mini XP using the free IMG_XP package.
The mini XP option reduces the size of your regular XP (not PE) to about 100 MB, and the image file it creates will be bootable in RAM disk and file disk mode.
In file disk mode you can install all the programs you need, and as long as you install all the right drivers you should be able to have access to your SATA drives.
I haven't tried to do this on modern hardware yet.
My latest XP compatible motherboard is from 2014.

Being stuck on the blank screen after booting might be a PE specific problem.
Maybe regular XP will boot just fine in RAM disk mode.
Dietmar made a tiny, tiny 10 MB XP a few years back.
Maybe you should test if it boots on your machine.
#7250gordo999
Zitat von ⇗ NT5 forever im Beitrag ¶ #7249
The advantage of using RAM disks is that it's very unlikely that you will get a blue screen because of missing/incompatible storage drivers.
⇗ @NT5 forever ...thanks for pointing that out. I am using the same storage driver, signed by Fernando, that I am using on my XP installation and it boots fine. However, that is the loading section where the driver is likely to be a problem.

On the Hiren's 15.2 disk there is a file called XP.bin. I am decompiling it in IDA and I have to use 16-bit decompilation. Even at that, IDA won't decompile it completely so I am doing the interactive part of IDA and marking code sections and text. As I decipher the text I have noticed the file's real name is setupldr.exe, version 5.2.3790.1830. It seems that is the XP loader file.

There are a few references to entries in the txtsetup.sif file, especially to acpi. I did not pay too much attention to that while modding the txtsetup file so maybe there are issues with my BIOS being too new for this older setup. Also, I may have made some errors while modding parts related to storage, ACPI, and USB. I'll take a closer look to see if I need to give the sif file more info. Also, the processors may be a problem. Mine has 6 cores.

The reason I want to use the older Hiren's is that it has many apps that are not on the newer version. I won't go into the reasons. I get what you mean about the other apps being available on the Net but I did not want to get too deeply into creating my own mini-XP disk. It's just handy to have all those apps on a boot disk, especially with W10 and its paranoid security system. I have used the newer Hirens for that, the 64-bit version.

Zitat von ⇗ NT5 forever im Beitrag ¶ #7249
You will just end up with only a C: drive in My Computer. If the C: drive contains driverpacks, it will often be possible to install the correct driver manually from within the running OS.
After that, you can create a bootable disk image of the running system using the IMG_XP utilities package.
This new image will now contain the correct storage drivers and all the required registry settings in order to boot correctly in file disk mode.
Thanks for that info and the info about IMG_XP. Very helpful.
#7251diderius6I just build an XP in ram,
which loads a 15000 Mbyte XP to ram in 6 sec
Dietmar
#7252NT5 forever
Zitat von ⇗ diderius6 im Beitrag ¶ #7251
I just build an XP in ram,
which loads a 15000 Mbyte XP to ram in 6 sec
Dietmar

Wow! That's huge.

I always try to keep my images a lot smaller, ideally under 500 MB.
This way it will only take a few seconds to load the image.
I don't see the need for a big C: drive.
I only use my C: drive to store a stripped down version of XP.
My programs and data reside on seperate partitions, protected by EWF of course.

How did you manage to load a 15 gig image in only 6 seconds?
#7253NT5 forever
Zitat von ⇗ gordo999 im Beitrag ¶ #7250
I get what you mean about the other apps being available on the Net but I did not want to get too deeply into creating my own mini-XP disk.

Sometimes it's easier to slightly modify an existing product in order to make it boot on your specific hardware than to build your own solution.
I'm too much of a stubborn perfectionist to do that.
When I see something nice, I always want to improve and customise it.
The biggest drawbacks of a PE disk are speed and the difficulty to add new apps to it.
All the PE disks I played with felt sluggish. I used to make my own custom BartPE ISO's for a while, but it was just too annoying to have to rebuild the ISO file every time you add a program or customise some settings.
In 2009 I discovered RAM booting with regular XP.
After that I never touched PE again.

You might be lucky and get Hiren's disk working spending only a few hours finding and fixing the problem.
It's also possible that you will spend days or weeks trying, without ever solving the issue.
Making a rescue image based on regular XP might be much faster and easier.
However, I applaud you for your efforts and determination to get Hiren's disk to boot on your machine.
#7254Brooons⇗ @gordo999
Any attempt to help for you is crashed by the inability hear from you out which way(method) you are launching XP.wim
#7255diderius6⇗ @NT5 forever

I make some tests and now I really have the ultimative boot design for XP in ram.

First I install a 4 Gbyte XP SP3 with wished drivers and programs on a black Western Digital 2TB with NTFS.
The partitionssize of this 4Gbyte XP is 15 Gbyte. I think, it can be 255 Gbyte, depending on your ram size.
I disable the pagefile.
Then I install the svbus driver from Kai Schtrom on this 4Gbyte XP
⇗ https://sourceforge.net/projects/svbus/f...28.rar/download

Then I download the nvme driver Samsung from ⇗ @daniel_k
⇗ http://www.mediafire.com/file/7b74v4i1s5..._XP_x86.7z/file
copy its storport.sys to windows\system32\drivers

Then compi shut down and connect my nvme device, no matter which one, because the nice Samsung nvme driver
recognices everything.
I install the Samsung nvme driver on my 4Gbyte XP, so that the nvme device appears.
With Aomei PAssist_Std vers 7.0 I format the whole nvme device with NTFS.
Then I delete(!) the partition on this nvme device.
Then I copy the 4Gbyte XP to this nvme device with Aomei. Compi needs restart for to copy.
Not so easy, to succed with boot via nvme on next time after copying.
You have to let your harddisk connected but boot from the nvme device via bootmenu.

Then, in registry you delete the key Mounted Devices.
If all is ok, after disconnecting the harddisk, you boot XP from the nvme device alone.

(A short remark, that gives me hope that in future you can boot any XP via nvme to ram without any Bios support.
Today I use the Samsung 950 with own Bios for this, but mostly all newer compis can boot legacy from nvme.)

Now I downloaded the special nvme grub4dos from Kai Schtrom
⇗ https://sourceforge.net/projects/grub4do...27.rar/download

and copy only its grldr to the root of the nvme device,
rename ntldr on the nvme device to ntldrORI
and rename grldr to ntldr.
Then I put an menu.lst on the root of the nvme device with content

title Windows XP - RAMDISK
nvme --set-drive=0x80 --set-controller=0 --showselected
find --set-root --ignore-floppies /xp.img
map --mem /xp.img (hd0)
map --hook
nvme --uninit
root (hd0,0)
chainloader /ntldr

After this, I make an xp.img from the 4Gbyte XP and copy it to the nvme device.
Thats all. The XP loads to ram (with a speed about 4gbyte/sec, depending on your compi and the nvme device).

The procedure is a little bit difficult,
but I hope, that some test it and have success also
Dietmar

PS: Some steps here can be done more easy but not easy to write a Tutorial, that works on any compi.
read/write speed on this XP in ram is about 20Gbyte/sec (!).
Oh soso much fun ))).. The xp.img itself does not need an nvme driver, no USB, no Sata.
xp.img can be make really universal, so that it boots on any compi.
#7256diderius6During my tests with Windbg in winter I noticed,
that even long time after compi shuts down,
complete parts in ram stay(!) as before (even it is ddr4).
Later I use this methode for to load tables for acpi.sys to ram, survives reboot.
I do not find a tool, with which I can reset all ram.
So I come to the idea, to use memtest86-usb .
⇗ https://www.memtest86.com/

This version does not work for XP, but there is an memtest86-usb.img in it,
which I put under XP ) via Winhex to an USB stick.
And voila, connect this USB stick to your compi and ram is freshed up
Dietmar
#7257Andalu⇗ @diderius6
thanks for your helpful guides ;)
but I have still a question: could you please tell me what is the best way to get XP.img?
#7258diderius6⇗ @Andalu

For me, the best way for to get xp.img is,
to make a copy of the first partition of a harddisk with Winhex with MBR and the 2048 sectors before partition.
I copy all the sectors to a file and name it xp.img .
There are other ways like vhd files.
With my way to build xp.img, this xp.img works with any tool, because for XP it is real harddisk,
you can even find and edit everything in ram

Dietmar
#7259Andalu⇗ @diderius6

thanks, I'll give it a try tomorrow .
This way is also easier because I was not able to find a valid link for downloading the IMG-XP utility package.
#7260NT5 foreverIMG_XP download link:

⇗ https://drive.google.com/file/d/1sXSypHt...ew?usp=drivesdk

 

Page 485

#7261Gelip⇗ @Andalu ⇗ @diderius6

Zitat von ⇗ Andalu im Beitrag ¶ #7236
Very interesting!
Could you please give me a link to some guide about it?


Zitat von ⇗ diderius6 im Beitrag ¶ #7239
Hi,
is there somebody, who uses SVBus_V1.2_20200428
from Kai Schtrom for Ram Boot of XP
Dietmar


Instead of the Kai driver, you can use WinVBlock RAM driver. Here you have the x86 and x64 versions for WinXP that I have fixed: ⇗ http://reboot.pro/index.php?showtopic=81...23&#entry193676
There are drivers in the archives on the floppy images that can be used to install WinXP from RAM-ISO. There are also menu.lst files for GRUB4DOS.

⇗ Install WinXP from ISO image using WinVBlock
⇗ Install WinXP from ISO image to dummy.img diskimage

Have a nice day
Gelip (aka reboot12)
#7262gordo999
Zitat von ⇗ Brooons im Beitrag ¶ #7254
Any attempt to help for you is crashed by the inability hear from you out which way(method) you are launching XP.wim
⇗ @Brooons ...sorry...have not ignored you, I am have been very busy with other matters. I have only a few minutes to post about Hiren's.

I am launching xp.wim from the standard CDROM after replacing with modded drivers. Also, I am using a USB flash drive which I created based on the Hirens site recommendation.

Hiren's loads OK through the text mode. That is, I get the menu and I can select mini-XP mode. Then the horizontal bar moves across the screen but only goes about 7/8ths of the way before a blank screen appears.

#7263Gelip⇗ @diderius6

Zitat von ⇗ diderius6 im Beitrag ¶ #7258
For me, the best way for to get xp.img is,
to make a copy of the first partition of a harddisk with Winhex with MBR and the 2048 sectors before partition.


WinXP image is best done under Linux Live using the fdisk and dd command e.g. in Debian 6. You need make disk image from the beginning of the disk to the end of the partition cylinder:


The image file can be copied to a USB flash drive, and even better, the image can be made directly via LAN to the mapped Windows drive e.g. D$ (in the example: Windows User=Adam, password=1234)

mount.cifs //192.168.0.3/D$ /mnt/images -o user=Adam 1234
dd if=/dev/sda of=/mnt/images/xp.img bs=4128768 count=390

⇗ @diderius6
P.S. Use my Debian 6 live that I sent you recently

#7264Brooons⇗ @gordo999

Test it my iso ⇗ Hirens_miniXP_Sata.iso
Don't change anything in it
Work fine on my PRIME B250-PLUS
CRC32: D65F2EEC
#7265daniel_k⇗ @Mov AX, 0xDEAD

Regarding ⇗ @YuriyCN's post:
¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (485)

What if we patch kernel to set 1ms as default timer resolution and make it ignore when "someone" tries to change it?
I'm not too familiar with timers, but are there any apps/games that expect higher timer resolutions (16ms)?
#7266iyutosIf to hardcode the timer resolution to 1ms, PC will consume more electicity unreasonably.
⇗ https://randomascii.wordpress.com/2013/0...gawatts-wasted/

it will consume as MS-DOS in idle, without resident programs like: idle.com, dpakbd.com, dosidle.exe, tamedos.com, vdos.exe
Better let's try to understand what happens with YuriyCN's PC.
#7267 YuriyCN
Zitat von ⇗ daniel_k im Beitrag ¶ #7265
@Mov AX, 0xDEAD

Regarding @YuriyCN's post:
¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (485)

What if we patch kernel to set 1ms as default timer resolution and make it ignore when "someone" tries to change it?
I'm not too familiar with timers, but are there any apps/games that expect higher timer resolutions (16ms)?


[RUS]
Я не знаю приложения, которые требовали исключительно 16 мс и не работали бы при периоде 1 мс. При использовании Timer_Fix.exe с принудительным переводом на 1 мс, в используемых мной программах проблем не наблюдалось. Насколько известно, в Виндовс 7 этот таймер постоянно установлен в режиме 1 мс.

[ENG]
I do not know the applications that demanded 16 ms only and would not work with a period of 1 ms. When using a Timer_Fix.exe with a forced period 1 ms, in the applications used by me, problems were not observed. As far as is known, in Windows 7, this timer is constantly set in 1 ms.

#7268daniel_k⇗ @iyutos
Nice article, thanks for sharing it.

I have an APC UPS with monitoring, will do some tests when I have more time.
#7269iyutosI contrary, resisted to 1 ms acceleration by greedy programs with Nobuzz: ⇗ https://github.com/rustyx/nobuzz.
This program (works only on Win7) shows which program increases the timer: ⇗ https://kbench.com/software/?q=node/51328
I have a patched version, which somehow works on XP, but most counters are not displayed, (because the program was written for Vista and above).
⇗ https://www.upload.ee/files/13102725/BlaUnpack.rar.html
#7270 Andalu⇗ @diderius6

as I feared the most difficult part for me is to create the XP.img file. I have tried both WinHex (free version) and HxD without success. Could you please tell me how to proceed?

One step of your guide that didn't work in my case was copying the partition from the HD to the NVMe drive with Aomei Partition Assistant Standard Edition 7.0 which, strangely enough, didn't allow the above operation, even clicking on the "Next" button nothing happened.
I tried another tool (QILING Disk Master bootable stick) and it worked: XP started correctly with only the samsung 950pro connected to the board.

Edit: another little note: I didn't need to delete the 'Mounted Devices' key.


⇗ @NT5 forever  ⇗ @Gelip

thanks a lot for the links, as soon as I can better understand how to proceed I'll try the alternatives that you have kindly indicated ;)
#7271Gelip⇗ @Andalu

Zitat von ⇗ Andalu im Beitrag ¶ #7270
as I feared the most difficult part for me is to create the XP.img file. I have tried both WinHex (free version) and HxD without success.


You read it? ¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (486)

#7272diderius6⇗ @Andalu

Run Winhex.
Open tools
open disk
Physical media
harddisk 0
click right above "Access"
Partition
Partiontable (template)

Write down the number of "Sectors in partion 1"
add to this value the number of "Sectors preceeding partition"

Close window
go to "Position"
got to sector
and type there the added number.

At the place direct before the cursor went, you see HEX 55 AA
click right on this Hex value AA "end of block"
EDIT
copy block
Into New File

Save as xp.img

Good luck
Dietmar
#7273gordo999
Zitat von ⇗ Brooons im Beitrag ¶ #7264
Test it my iso ⇗ Hirens_miniXP_Sata.iso

@Broons ...thanks for trying to download ISO. The transfiles.ru site is down for technical problems. (... спасибо за попытку скачать ISO. Сайт transfiles.ru не работает из-за технических проблем. )

Error message...Уважаемы посетители! В данный момент на рынке сайте идут техни ческие работы. Приносим извинения за неудобст

My translation... Dear visitors! The site is currently undergoing technical work on the market. We are sorry for the inconvenience.

#7274gordo999
Zitat von ⇗ Andalu im Beitrag ¶ #7270
...One step of your guide that didn't work in my case was copying the partition from the HD to the NVMe drive with Aomei Partition Assistant Standard Edition
⇗ @Andalu ...try this editor....Active@ Disk Editor...it's designed to give you a visual image of partitions, MBRs, etc. I used it once to edit the MFT table in Windows.

⇗ https://www.disk-editor.org/index.html

#7275gordo999
Zitat von ⇗ iyutos im Beitrag ¶ #7266
If to hardcode the timer resolution to 1ms, PC will consume more electicity unreasonably.
⇗ @iyutos ...a quote from the article. "One is that if your software is on average running on 33 million machines (a conservative bet for something like Chrome) then increasing the timer frequency could be wasting about ten MW of power".

This presumes all 33 million computers are running at the same time and off the same power grid. If the power grid is fed from hydro power, the power is instantly renewable. If it's fed from coal-fired power sources, the 33 million would have to be running off the same generator. Highly unlikely.

I think this article is nit-picking. They don't seem to understand that the real time clock is a quartz crystal running at a constant frequency and powered by a battery when the power is turned off. Those batteries last for years, indicating the low power draw of an RTC. The ms divisions they are talking about are digital divisions of the RTC crystal timebase. This is a highly technical problem related to digital electronics and although Microsoft pays lip service to environmental issues, they know there is nothing that can be done about it.

The power meter they reference in the article is not measuring the power draw of the RTC, it is measuring the power draw elsewhere. If the RTC drew 0.3 watts, the battery, typically a 2032, would drain overnight. The 0.3 watt measurement is a measure of the power draw of circuits driven by the different RTC frequency divisions.

You cannot change the basic timer frequency if it is a crystal oscillator, all you can do is sub-divided the frequency it is generating. They use crystals due to their stability; using a multivibrator created from semiconductor components, even if it is locked to the power line frequency would tend to drift in frequency. Also, it could be prone to noise on the power line. When you change frequency from 16 ms to 1 ms, you are not changing the frequency of the RTC oscillator, you are changing the sub-divisions created by a digital divider network. That's why you can switch them. You could not switch frequency on a quartz-based oscillator without changing crystals.

If Microsoft could have done it that easily, they'd have done it by now. Besides, this has nothing to do with Microsoft. The Windows OS cannot control the internal workings of the CPU or the hardware in general, all they can do is use software to control features in the hardware. Hardware, including the RTC, are designed by manufacturers like Intel. Microsoft can suggest to Intel that they change their chip designs but I am sure they are already on top of that.

 

Page 486

#7276iyutos⇗ @gordo999

My deep respect, you are very knowledgeable in microelectronics, I only quoted the results of another specialist.
But the point of the article was not so much about power grid or environment, but about PC's performance.
#7277gordo999
Zitat von ⇗ iyutos im Beitrag ¶ #7276
My deep respect, you are very knowledgeable in microelectronics, I only quoted the results of another specialist. But the point of the article was not so much about power grid or environment, but about PC's performance.
⇗ @iyutos ...I understand, I meant no disrespect to you. I was referencing the article's author.

Microsoft have hidden the hardware from the user. They make it appear as if Windows is running applications when in fact it is the hardware processing the data. Programmers use registers while programming, like the EAX register (32-bit), without realizing this is a real, physical register in a processor. It holds voltages to represent 1s and 0s.

The frequency in an RTC refers to the number of times per second a voltage changes direction. My background is in hardware and it bothers me sometimes that the hardware is often ignored, or obfuscated as an 'object', and that you cannot access it directly without using kernel-mode drivers.  

This forum is based on the fact that the hardware has changed so much that XP, or even Windows 7, can no longer run on it natively. I needed to get a modded USB driver from ⇗ @canonkong to get W7 running on my new hardware. Till I got the driver, I was forced to use a PS/2 mouse and keyboard.
#7278Brooons⇗ @gordo999
Second attempt ⇗ Hiren_MiniXP_ISO
del-19YuriyCN

Насколько я понимаю RTC bug.
Существует часовой опорный RTC генератор 32768 Гц. Его частота стабильная и определяется кварцевым резонатором установленном на материнской плате. Далее, после кварца, частота подается на делитель  частоты 1:64, 1:128, 1:256, 1:512.



При использовании делителя 1:512 получаем частоту 64 Гц (период 15.625 мс) - эта частота по-умолчанию. Разные мульти-медиа приложения могут требовать более высокую частоту опроса, тогда делитель частоты переключается на 1:32 и получаем частоту 1024 Гц (период 0.977 мс). Временная ошибка возникает, когда при ПРОГРАММНОМ переключении счетчик таймера думает, что он работает в режиме коэффициента деления 1:512 (на 64 Гц), но АППАРАТНО тактовые импульсы уже идут гораздо чаще, как при 1:32 (с частотой 1 кГц). Вообщем, за те микросекунды пока программно регистр счетчика переконфигурируется в новый режим, он получает "лишние" импульсы, которые вызывают набег времени вперед. И чем чаще будет переключаться режим "16мс - 1 мс" - тем больше временной набег.

#7279Mov AX, 0xDEAD
Zitat von ⇗ YuriyCN im Beitrag ¶ #del-19
Насколько я понимаю RTC bug.
При использовании делителя 1:512 получаем частоту 64 Гц (период 15.625 мс) - эта частота по-умолчанию. Разные мульти-медиа приложения могут требовать более высокую частоту опроса, тогда делитель частоты переключается на 1:32 и получаем частоту 1024 Гц (период 0.977 мс)

Windows use different hardware timer with basic frequency 14,31Mhz, it can divde it to many constants to get final requested frequency for interrupts. RTC timer (32768Hz) used only for calibrating first timer at init stages.
Problem with timer is 1)failed calibrating 2)skipped interrupts 3) some else (imho)
del-20YuriyCN
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #7279
Windows use different hardware timer with basic frequency 14,31Mhz, it can divde it to many constants to get final requested frequency for interrupts. RTC timer (32768Hz) used only for calibrating first timer at init stages.
Problem with timer is 1)failed calibrating 2)skipped interrupts 3) some else (imho)





Программа CPU-Z четко фиксирует разницу хода таймеров. Если прерывания идут от базовой частоты 14,31 МГц, то почему их частоты в точности кратные базовой частоте 32768 Гц, например 32768 / 32 = 1024 (=0.977 мс). Причем промежуточные значения установить невозможно - допустимо значение 0.977 мс, а потом сразу 1.953 мс, но промежуточных значений (например 1,5 мс) этот таймер не принимает. Если бы бралось базовое значение 14,31 МГц - то кол-во принимаемых значений было больше. Кстати, если период установлен на 0.977 мс (частота 1024 Гц), то пока данное приложение не закончит свою работу, на более низкую частоту (например 64 Гц) таймер не переведется. Программно можно переключать длительность периода только в направлении 16 мс -> 8 мс -> 4 мс -> 2 мс -> 1 мс. В обратном - только завершая процесс. Посмотрите программу "накрутки времени Timer_v10" - я недавно выкладывал с исходниками на BCB 6.0.
#7280gordo999
Zitat von ⇗ Brooons im Beitrag ¶ #7264
Test it my iso ⇗ Hirens_miniXP_Sata.iso
Don't change anything in it
⇗ @Brooons ...downloaded the iso and wrote it to a CD disk. It boots OK but I have no mouse or keyboard. Managed to get a PS/2 keyboard to work but not the mouse. My PS/2 connector may be damaged.

Thanks. I will check it out more to see the difference between your iso and mine.

*****

скачал iso и записал его на CD-диск. Он загружается нормально, но у меня нет ни мыши, ни клавиатуры. Удалось заставить работать клавиатуру PS / 2, но не мышь. Мой разъем PS / 2 может быть поврежден.

Спасибо. Я проверю его подробнее, чтобы увидеть разницу между вашим iso и моим.
#7281Brooons⇗ @gordo999
Folder /Inf to place for driver USB inf-file for you USB-port
*.SYS files to place folder /drivers
XpCustomize.cmd -- write string AUTO LAUNCH force install all drivers, two time, two string identically, (link him on desktop)
But, for me, Intel G4400, B250, all work fine without change, keybord, mouse, Sata hdd, it works properly.
With MiniXP, my life is full of breath.
#7282diderius6Hi,
I just noticed, that for fast ram boot
you only need the grldr from Kai Schtrom,
renamed to ntldr and the menu.lst in the root of the nvme device and xp.img.
xp.img boots to ram from the nvme device root, without any nvme driver
Dietmar

PS: Before, you have to make with RMPrepUSB your nvme device bootable.
#7283Andalu⇗ @diderius6

I restarted the procedure from scratch but on the boot from ramdrive I got this message:

0) NVMe Controller VendorID#144D, DeviceID#A802, Base Address#51010000
Bus#4, Device#0, Function#0
Samsung SSD 950 PRO 256GB (serial number + firmware version)

(hd0,0)
map --mem /xp.img (hd0)
Error 13: Invalid or unsupported executable format

Here an image of the two testing systems (HD+NVMe):



The changes I made from your original guide:
- restored an image from an XP system (B250 chipset) to the base system (H470 chipset).
- used a bootable media from Aomei Partition Assistant Pro 8.6 and its partition cloning operation. Copy partition doesn't make the drive bootable.
#7284Andalu
Zitat von ⇗ Gelip im Beitrag ¶ #7271
You read it? ¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (486)

I read that post but I can't try your method if I don't first solve the other procedure of @diderius6.
Then, at the moment, I don't have a linux distribution to use and I can't download it because my internet connection has a fault, at moment I'm surfing at 320KBps.
#7285YuriyCN

1. Windows XP mod 2021 - system build for the modern PC (edition 01.05.2021)

The information doesn't fit into a forum post for a long time - so download the text file and read it in Notepad.

TXT file (87kB, ENGLISH) - ⇗ https://yadi.sk/d/pJ1mLT8f0iwOfw
TXT file (98kB, RUSSIAN) - ⇗ https://yadi.sk/d/1t0PuYOFVAr15w

2. Archive of all existing 33 versions "WinXP-IE Optional Patch Integrator" from May 2020 to April 2021 (420 MB) - ⇗ http://file.sampo.ru/5863f7
or (Password: 123) - ⇗ https://yadi.sk/d/gpXO90qyxoPIoQ
#7286Gelip⇗ @Andalu

Zitat von ⇗ Andalu im Beitrag ¶ #7284
Then, at the moment, I don't have a linux distribution to use and I can't download it because my internet connection has a fault, at moment I'm surfing at 320KBps.

Write the ⇗ d6.img image to a USB flash drive using Win32 Disk Imager and boot PC from it.
#7287Mov AX, 0xDEAD
Zitat von ⇗ YuriyCN im Beitrag ¶ #del-20
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #7279
Windows use different hardware timer with basic frequency 14,31Mhz, it can divde it to many constants to get final requested frequency for interrupts. RTC timer (32768Hz) used only for calibrating first timer at init stages.
Problem with timer is 1)failed calibrating 2)skipped interrupts 3) some else (imho)


Программа CPU-Z четко фиксирует разницу хода таймеров.

yes, it show something, but not full true :)
acpi - fake, acpi hardware timer is disabled on skylake+, cpu-z probably reads acpi memspace in cycle, every  3.5 secs acpi time counter is overflowing, cpu-z handle this software way, any windows can't do same.
qpc - is not timer, it is cpu counter, qpc depends on cpu bus freq, cpu bus freq is 100Mhz, 100Mhz generated from 14,31Mhz
rtc - clock chip with 32768Hz
cpu-z can't show important thing - interrupt counter, this counter is base of all windows timers

You're using overclocked cpu bus freq, so qpc is shifted, this is not problem if bus freq is really constant without fluctuations
#7288diderius6⇗ @Andalu

your xp.img contains only the Hex Value AA,
as I can see on the pic.
All is ok, but you forget to click right on this AA and click "end of block".
Then you will see, that not only the AA becomes selected, but also the whole partition with MBR from before,
and the size of the xp.img grows enormous
Dietmar
#7289iyutos⇗ @gordo999

Hello, I have not meant any subtext, I really expressed that I respect you as a specialist, you wrote a clever post.
English is a foreign language to me, perhaps I was misunderstood.
#7290Andalu⇗ @diderius6
so the 16GB file I had already obtained was the right one? I'll try again soon.


⇗ @Gelip
thanks for the suggestions. The download of the d6.img file will end in over 2 hours

 

Page 487

del-21YuriyCN
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #7287

yes, it show something, but not full true :)
acpi - fake, acpi hardware timer is disabled on skylake+, cpu-z probably reads acpi memspace in cycle, every  3.5 secs acpi time counter is overflowing, cpu-z handle this software way, any windows can't do same.
qpc - is not timer, it is cpu counter, qpc depends on cpu bus freq, cpu bus freq is 100Mhz, 100Mhz generated from 14,31Mhz
rtc - clock chip with 32768Hz
cpu-z can't show important thing - interrupt counter, this counter is base of all windows timers

You're using overclocked cpu bus freq, so qpc is shifted, this is not problem if bus freq is really constant without fluctuations



Факт в том, что счет времени в таймерах ACPI и QPC одинаковый - время идет точно и одинаково. Максимальная разбежность составляет 0.1 секунду за 20-30 минут проверки. А вот показания таймера RTC резко разнится от ACPI и QPC если использовать программу накрутки времени Timer_v10. При частоте переключений таймеров 0.2 секунды, RTC-таймер накручивает лишние +2 секунды за 1 минуту накрутки. При 0.1 секунды мы получаем уже +4 секунды в минуту. В итоге, при постоянной работе программы Timer_v10 можно накрутить время 4-5 минут вперед за час!!! Конечно это очень жесткий режим. С реальными приложениями такого сильного ухода времени не наблюдается, но все таки +1..2 минуты за рабочий день - это очень плохой показатель точности системных часов.

Никакого разгона у меня нет, все режимы по частотам CPU в BIOS|UEFI выбраны по-умолчанию. Процессор Intel i5-6500 (4 core @ 3200 MHz), поэтому QPC показывает 3,192 GHz, так как рабочая частота 3,200 GHz.

Проведите накрутку времени, используя Timer_v10 по методике изложенной в ¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (485) я уверен, что результат накрутки на вашем ПК будет такой-же, при условии, что не запущено какое-либо приложение, которое принудительно удерживает таймер на периоде меньшем стандартных 16 мс...
#7291Brooons⇗ @gordo999
Very maybe PS\2 disabled in the bios.
Me also had this situation, PS\2 settings are very deeply hidden.
#7292Andalu⇗ @diderius6

now my challenge has become to find the exact partition size on the NVMe drive to overcome "error 28: Selected item cannot fit into memory" obtained as a result of the "Warning: total sectors calculated from partition table (3907024065) is greater than the number of sectors in the whole disk image (32194260)".
The XP.img file is 16.097.130KB. What should be the exact size of the partition on the NVMe?
#7293diderius6⇗ @Andalu

From your pic I see, that the partition size together with MBR is 3D67DA800 = 16483461120 Byte.
So you need Ram > 16 Gbyte
Dietmar
#7294Andalu⇗ @diderius6

I always get the same error even if the ram is 32GB
#7295diderius6⇗ @Andalu

The error seems to be, that your xp.img has 32194260 sectors,
but you try to load 2TB to ram
Dietmar

PS: Write me step by step, how you build your xp.img.
#7296Andalu
Zitat von ⇗ diderius6 im Beitrag ¶ #7295
Write me step by step, how you build your xp.img.

Here the images:

   


The base hard drive is 2TB while the NVMe is 256GB
#7297diderius6⇗ @Andalu

I have only 1 Partition on my 2TB harddisk.
And I delete in registry Mounted Devices on the original XP before I shut compi down and make xp.img from it.
So, XP does not know, how large its harddisk is, just looks what is offered and build this key new
Dietmar
#7298Andalu⇗ @diderius6

just tried: nothing changes even deleting the Mounted Devices key from the registry. I connected the base HD on another system to prevent the creating of that key on the booting from the same disk drive.
#7299Andalu
Zitat von ⇗ Gelip im Beitrag ¶ #7286
Write the ⇗ d6.img image to a USB flash drive using Win32 Disk Imager and boot PC from it.

d6.img file copied into a new USB stick with Win32 Disk Imager 0.9 (that seems to be the last version XP compatible). On the boot from that usb stick I got the following message:
"Boot failed! - Unable to find a medium containing a live file system".


Edit: I re-applied Win32 Disk Imager after formatting the usb stick but at startup still an error that repeats endlessly:
"cat: can't open '/sys/block/*/removable': No such file or directory"
#7300diderius6⇗ @Andalu

When you prepare your 2TB harddisk with RMPrebUSB,
do you set the mark in "Force use of LBA calls"
Dietmar
#7301gordo999
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #7287
qpc - is not timer, it is cpu counter
⇗ @Mov AX, 0xDEAD ...as we say in English, when we have insight, a light goes on in the mind. It has been a long time since I studied digital theory especially related to computers.

The clock on the XP desktop that ⇗ @YuriyCN talks about losing time is a counter, not a time source. It counts pulses, or ticks, generated by another time base. However, it must know how long a second is in ticks therefore it is dependent on the source of the ticks being accurate. I think ⇗ @YuriyCN 's work on this is important, however. All I am trying to do is explain some theory about clocks, and not very well because my brain is so rusty.

It's like an atomic clock which knows nothing about time. It generates a very accurate frequency due to natural atomic vibrations between electrons and protons in a Cesium nucleus. The second we use is derived from the rotation of the Earth. The period of that rotation is divided into 24 hours as represented by the distance between lines of longitude at the Equator. Each hour is divided into 60 minutes then 60 seconds. The resultant second is the one we use as the basis of time in physics and it equals 1/86,400th of one Earth rotation on its axis. Please note that the second also equals a distance.

So, the frequency generated by an atomic clock is very large compared to our second. It must be divided by digital dividers till it reaches the smaller size of 1 second. But how does the divider circuitry know the length of 1 second? A common method is to use the 60 hz power frequency which is actually 60 cycles per second. If you invert that frequency you get the time, in second, between each cycle of electrical power where 1/60 c/s = 0.01666666 s/c.... seconds per cycle. Multiply that by 60 and you have the exact length of 1 second. Digital circuits can do that easily.

I know ⇗ @diderius6 does not agree with me   but that's why Einstein was wrong about time dilation.  The second, hence all time, is based on the rotation of the Earth, which is a relative constant. Therefore, it is impossible for time to dilate, or for that matter, for space-time to curve.

Back to the clock. The time-keeping clock on a computer can run fairly accurately using the 60 hz line frequency as a basis for the second but when the power is turned off it has no source with which to synchronize. It has the real time clock, powered by a battery, but how does it know the length of a second? It doesn't, and if you leave any computer turned off and offline, the clock will lose time. Most computers connect to an external time source online to re-synchronize.

It's important to distinguish between hardware clocks and software clocks. A hardware clock is a dedicated, physical chip that uses a quartz crystal to establish an accurate time base. I noted from a post of ⇗ @YuriyCN that one quartz crystal runs at 3.58Mhz. That is the same crystal used in North American colour television to synchronize the colour signal. Apparently, computer manufacturers thought it easier to use an existing crystal that was readily available.

You can build a clock from discrete transistors but discrete units tend to drift with temperature change, etc. The RTCs using advanced chips are compensated internally for drift (change) and with a quartz crystal they can maintain accurate time for long periods. Also, the transistors are grown on the chip and the quality control is very good.

Software timers/clocks are not synchronized and depend on the code flow, which is controlled by the processor. It makes sense that if the processor, being based on time-slices, is loaded down with many apps, the code-timed clocks would vary with porcessor load. Therefore, it would make no sense to use a software clock/timer unless it was a dedicated unit.

Here's a discussion of some time bases on a forum:

⇗ https://forums.guru3d.com/threads/differ...and-qpc.431593/

"LAPIC is abbreviation for Local Advanced Programmable Interrupt Controller - ⇗ https://en.wikipedia.org/wiki/Advanced_P...rupt_Controller - see section "APIC timer".

TSC is abbreviation for Time Stamp Counter - ⇗ https://en.wikipedia.org/wiki/Time_Stamp_Counter

QPC is abbreviation for QueryPerformanceCounter - function from Windows API. This function can use LAPIC, TSC and also HPET (High Precision Event Timer) timers. Developers can use this function to estimate a time span between two measures (calls).

Timer resolution means system timer resolution - the interval with which system timer (usually Real Time Clock - RTC - a chip on the motherboard) fires interrupts. Those interrupts are called a "tick". System timer resolution has nothing to do with LAPIC, TSC, HPET and QPC.
A bit of info about system timer - ⇗ https://forums.guru3d.com/threads/window...ng.377790/";
#7302NT5 forever
Zitat von ⇗ diderius6 im Beitrag ¶ #7255
@NT5 forever
The procedure is a little bit difficult,
but I hope, that some test it and have success also
Dietmar

PS: Some steps here can be done more easy but not easy to write a Tutorial, that works on any compi.

Maybe you should take a look at IMG_XP_Create.exe, one of the programs included in the IMG_XP utilities pack.
It can create a Grub4DOS menu, build a new xp.img, install RAM disk driver and storage drivers and modify registry settings in xp.img.
You can select the image file size, add a custom hal.dll etc.

The great thing about the IMG_XP utilities is that they are just compiled AutoHotkey scripts interacting with existing utilities and drivers like ERUNT, Imdisk, WinVBlock, BootSect.exe, Grubinst.exe,  df.exe, dsfi.exe, dsfo.exe, etc.

The source code scripts are included in the pack, so it's very easy to modify and customise everything according to your specific needs.
I think it would be fairly easy to automate your procedure with an app that offers a nice GUI.



NT5 forever has attached files to this post
#7303NT5 forever
Zitat von ⇗ diderius6 im Beitrag ¶ #7258
@Andalu

For me, the best way for to get xp.img is,
to make a copy of the first partition of a harddisk with Winhex with MBR and the 2048 sectors before partition.
I copy all the sectors to a file and name it xp.img


Winhex supports scripting:

⇗ http://www.winhex.com/winhex/scripting.html

It is probably feasible to add some lines to the IMG_XP_Create script in order to automatically copy all the sectors to the xp.img file freshly created by IMG_XP_Create.

The IMG_XP_Create script could also delete the mounted devices registry key.
#7304diderius6⇗ @gordo999

"I know ⇗ @diderius6 does not agree with me but that's why Einstein was wrong about time dilation."

Time is always together with the 3 dimensions.
When you have gravity, time is prolonged. So dilatation of time is just the presents of a force, which we call gravity and vice versa.
Also gravity changes the distance in the 3 dimensions and vice versa, just the same as with time.
Nothing is understood what gravity is. Einstein describes gravity as a changes in geometrie.
But this is just describing the effect, no explanation at all.
I agree with Ernst Mach, who says about Einsteins General theory of relativity: "It is complete empty, no physics in it."
Without gravity, you can build an universal Psi-function, with describes the whole universe.
And with the Bohmian mechanik you can even go further to describe Non-equilibrium states as the Big Bang.
So, without gravity, physics would be "perfect".
But because noone understands gravity, nothing at all is ready in physics
Dietmar
#7305Andalu⇗ @diderius6

I re-started the procedure once again with the following differences than before:
- 2TB hard disk drive with one partition only formatted with RMPrebUSB v2.1.739;
- XP installed from scratch;
- 'Device Mounted' key deleted from registry for both HD and NVMe drives,

I finally got it but...... to complete the boot my system (Q370 + i7 9700 + 32GB of ram + NVMe 950pro) takes over 100 seconds
The pagefile is disabled, what else could it be?

 

Page 488

#7306diderius6⇗ @Andalu

Loong bootime happens, when you dont use the nvme grldr renamed to ntldr from Kai Schtrom on the nvme bootdevice.
And also check the content of the menu.lst
Dietmar
#7307Andalu⇗ @diderius6

the issue is on another place, both ntldr (renamed from grldr) and menu.lst are correct.
#7308diderius6⇗ @Andalu

I just test a 27 Gbyte to ram loaded XP.
I will report soon
Dietmar
#7309diderius6⇗ @Andalu ⇗ @NT5 forever


The new 27 Gbyte XP loads in 9 sec to ram.
The own Bios of the 950 Pro nvme enables this. On this 950 pro I have only renamed grldr, menu.lst and xp.img.

Using the own Bios nvme drivers from the Asrock Fatalty z370 gaming K6
on an Optane nvme with 29 Gbyte, I get message, that nvme cant boot from LBA 0.
This is a bug.

And I did another hack: On the xp.img itself I have NO nvme driver at all.
So, not a second device appears, because no nvme driver under XP for it, when XP loaded to ram
Dietmar

PS: I use only the 4Gbyte hack from ⇗ @daniel_k . When you use more than 4 Gbyte, you need to think about,
that this is subtracted from the 32 Gbyte ram memory.

⇗ https://ufile.io/myp86qqg
#7310NT5 forever⇗ @diderius6

So that means that in explorer you can only see a 27 GB sized C:\ drive?

The other drives are not visible?
#7311diderius6⇗ @NT5 forever

yepp ). This means, that the nvme device is perfect write protected, I checked.

Dietmar

#7312diderius6⇗ @Andalu

When you have installed XP via Firadisk for the xp.img,
make sure, that you disabled Firadisk, so that it does not comes in conflict with the Svbus driver from Kai
Dietmar
#7313AndaluI think the loading time so high may be due to this:



repeating on every boot from the NVMe drive.
Yet in the HD, once I did the disk upgrade, it did not recur. From this point I did the disk clone and the other things
#7314NT5 forever
Zitat von ⇗ diderius6 im Beitrag ¶ #7311
@NT5 forever

yepp ). This means, that the nvme device is perfect write protected, I checked.

Dietmar



Nice.

Is your XP RAM boot method compatible with all modern machines?
I just bought a new laptop.
An inexpensive ASUS with 4 GB of RAM and a NVMEe drive.
#7315diderius6⇗ @NT5 forever

From USB it works always, even from Optane in USB clothes.
But from USB, the load speed is only about 150Mbyte/sec
Dietmar
#7316Andalu
Zitat von ⇗ diderius6 im Beitrag ¶ #7312
@Andalu

When you have installed XP via Firadisk for the xp.img,
make sure, that you disabled Firadisk, so that it does not comes in conflict with the Svbus driver from Kai
Dietmar

you still haven't told this, though
#7317NT5 forever⇗ @diderius6

I'm sick and tired of using Windows 10 on my laptop.
I would like to boot XP from USB.
I don't care about slow transfer speed. My XP.img is smaller than 500 MB.
I just don't know how to get it working.
#7318NT5 forever⇗ @diderius6

AFAIK, my laptop doesn't support legacy boot, only UEFI.
I've got an XP.img file that RAM boots on my desktop PC.
I would like to boot it from USB on my laptop, but I've got no clue how to make a UEFI usb stick.
#7319diderius6⇗ @NT5 forever

There is a new UEFI grub4dos.
Until now I did not test, for what it can be used.
But because everything works here in Ram, maybe(!) with this grub4dos legacy XP ram boot is possible on pur UEFI Bios
Dietmar
#7320diderius6Toshiba RD400 works also for ramboot of XP, this nvme device has no own Bios.
It is using the Bios nvme driver from the motherboard Asrock z370 Fatalty gaming k6.
On this RD400 is only the to ntldr renamed nvme grldr from Kai Schtrom,
the menu.lst and the 15 Gbyte xp.img.
Few seconds load time for 15 Gbyte XP to ram. Then, the RD400 can be disconnected
Dietmar

 

Page 489

#7321diderius6⇗ @Andalu

Take a look, if your nvme slot shares lines with other devices.
Just try another PCI-e slot or other M2. connector.
Sharing lines can put down the transferrate near to zero
Dietmar
#7322daniel_kNice work guys, unfortunately can't join you as I have only one NVMe drive.
#7323Andalu⇗ @diderius6

the problem was simpler than I expected, it was the samsung 950pro, which was evidently excessively worn. Replacing it with a WD SN720 the boot of the 16GB takes 10 seconds (excluding the memory loading). I also replaced the samsung NVMe driver with the Microsoft one and it still worked.

The only strange thing is that every time the system boots, the "found new hardware" wizard for the NVMe device is displayed. The same happened with the samsung driver.


P.S.: my connection is getting worse and worse, in the afternoon it was completely down, I apologize in advance if I will unable to reply.
#7324diderius6⇗ @Andalu

I noticed the same strange behavior of nvme devices, only not for Optane(!).
When with Winhex you put everywhere 00, during
one session all tested nvme devices at the end become slower than a normal harddisk.
After trim (I use win8.1 for trim),
suddently the nvme device awakes to new life. But when you take a closer look,
during transfer of 10 Gbyte there are errors, only the internal error correction repairs them.
On a Western Digital black 2TB no errors are found during tranfer of 10.000 Gbyte,
as I check with Winhex. So, I do not use any nvme device for daily use.
At the airport, when going through the Scanner, my nvme device in a Lenovo notebook and the SSD show errors after.
This NEVER happens to me, when my notebook with harddisk goes through scanner
Dietmar

PS: Fast means bad for important documents. Only the Optane drives are better and do not need any Trim.
#7325NT5 forever
Zitat von ⇗ diderius6 im Beitrag ¶ #7242

[] RMPrebUSB vers. 2.1.739,

grub4dos-0.4.5c-2016-01-18 []

I install grub4dos to an USB stick via RMPrebUSB, and copy after the whole content of grub4dos-0.4.5c-2016-01-18
on root of this stick.

And I add a menu.lst with content

title Windows XP - RAMDISK
 find --set-root --ignore-floppies /xp.img
 map --mem /xp.img (hd0)
 map --hook
 root (hd0,0)
 chainloader /ntldr



I just tried that on my machine using the versions of RMPrebUSB and grub4dos you mentioned.
The stick appears in the boot menu of my laptop.
However, when I select the entry in the menu the screen flashes but it won't leave the boot menu.
It won't even load the grub4dos menu on the stick.
I've tried several times, formatting the stick in FAT32 and NTFS, with and without force LBA option.
Same result.

#7326diderius6⇗ @Andalu

Make an xp.img without any nvme driver. Connect your nvme device to your motherboard when booting from harddisk.
Then you will see a yellow question mark behind unknown pci device in Device Manager. This is your nvme disk. Disable it.
And when building xp.img from this harddisk partition, the problem with recognicing new hardware is gone,
because XP has no driver for it and it is disabled in device manager
Dietmar
#7327diderius6⇗ @NT5 forever

Make a try with the UEFI grup4dos. I never tried but maybe, that here in the forum somebody knows more,
for what you can use this new grub4dos
Dietmar
#7328NT5 forever
Zitat von ⇗ diderius6 im Beitrag ¶ #7327
@NT5 forever

Make a try with the UEFI grup4dos. I never tried but maybe, that here in the forum somebody knows more,
for what you can use this new grub4dos
Dietmar

I have downloaded it, but I don't know how to install it.
There is no installer, just a bunch of folders with files.
Documentation is in Chinese.

#7329diderius6⇗ @NT5 forever

Just copy the grldr to the root of the device and rename it ntldr. Use the menu.lst from before.
But I never tried
Dietmar
#7330NT5 foreverLol. There is no grldr file included,
#7331diderius6⇗ @NT5 forever

I think, you only need to copy the *.efi files on a Fat32 partition and boot XP via bootmgr.
The procedure with the *.img files is the same and even SVbus from Kai can be used.
But still INT13 from Bios is needed I think,
some got a working INT 13 simulation for Win7,
very experimental alpha stage
Dietmar

PS: For Win10 bit 64 ramboot seems to work via UEFI and grub4dos.
But ram boot via MBR works also for Win10 bit 64,
as long as you have legacy CSM support.
#7332AndaluThe XP booting in ram also works from a NVMe enclosure. I tried some of them connected to a USB 3.2 Gen.2 port (10 GB/s). Even if the ram loading is slow (especially for the RTL9210 chipset), the boot works for all chipsets tried:

JMS583:



RTL9210:



ASM2362 and ASM2364:



All chipsets have a yellow mark because the uaspstor driver was not installed on the base XP Hard Disk.


⇗ @diderius6
I got some 0x24 BSOD for the ntfs.sys driver booting from an NVMe inserted on the M.2 socket when the NVMe driver is no longer installed. This has occurred every time the system is restarted after a successful boot.
#7333diderius6⇗ @Andalu

Nice ).
I succeed with USB ramboot also for the Optane nvme with 29 Gbyte in USB clothes via JMS583 but not as nvme.
Funny, I do not get a yellow questionmark, the device appears 2 times (rambooted and original USB device).
Yes, it is slow. When you disable any nvme driver for Ramboot, the xp.img is perfect write protected.
So, any Bsod is strange, because nothing on the nvme device can change.
May be it has to do, how the Bios recognices the nvme device and Bios changes boot order
Dietmar
#7334Andalu⇗ @diderius6

for the same NVMe drive I also had to disable smart control from the bios as the NVMe drive was considered corrupted. The same was detected as bad in XP by CrystalDiskInfo while the same program in Win10 considered the disk as healthy.
#7335diderius6⇗ @Andalu

Is there an nvme device, which is not corrupted?
Few copy errors I get on a brandnew Samsung 1TB 980pro, when you take a look in the history of the device.
Only the internal error correction make the nvme device look, as everything is ok,
but isnt
Dietmar

 

Page 490

#7336Mov AX, 0xDEAD
Zitat von ⇗ YuriyCN im Beitrag ¶ #del-21
Zitat

acpi - fake, acpi hardware timer is disabled on skylake+, cpu-z probably reads acpi memspace in cycle, every  3.5 secs acpi time counter is overflowing, cpu-z handle this software way, any windows can't do same.
qpc - is not timer, it is cpu counter, qpc depends on cpu bus freq, cpu bus freq is 100Mhz, 100Mhz generated from 14,31Mhz
rtc - clock chip with 32768Hz
cpu-z can't show important thing - interrupt counter, this counter is base of all windows timers


Никакого разгона у меня нет, все режимы по частотам CPU в BIOS|UEFI выбраны по-умолчанию. Процессор Intel i5-6500 (4 core @ 3200 MHz), поэтому QPC показывает 3,192 GHz, так как рабочая частота 3,200 GHz.


Привет Юрий
1) there is no any acpi timers on skylake+, cpu-z show virtual timer, it may be equalent to anything
2) if you have 32x100Mhz CPU with standart 100Mhz bus refq, QPC Frequency must be 3200, not 3192 !!! use WinTimerTester 1.1 to re-check QueryPerformanceFrequency, if it is not 3200 - you have strange bus clock gen on motherboard, it cannot generate exact 100Mhz (or wrong rtc clock gen)

#7337Mov AX, 0xDEAD
Zitat von ⇗ gordo999 im Beitrag ¶ #7301
Timer resolution means system timer resolution - the interval with which system timer (usually Real Time Clock - RTC - a chip on the motherboard) fires interrupts. Those interrupts are called a "tick". System timer resolution has nothing to do with LAPIC, TSC, HPET and QPC.
A bit of info about system timer - ⇗ https://forums.guru3d.com/threads/window...cessing.377790/


Hi Gordo

Mark Russinovich, David A. Solomon, Alex Ionescu said: "On todays machines, the APIC Multiprocessor HAL configures the RTC to fire every 15.6 milliseconds, which corresponds to about 64 times a second."

OK, i was wrong, on modern APIC systems, hardware system timer is RTC chip
But on classic one-processor systems hardware timer is 8254 chip, not RTC chip. Clock input pin of 8254 connected to system 14.31Mhz (or divided by /2 or /4, i dont know details ). Windows don't trust 14.31Mhz as precision clock, it calibrate "ticks" from 8254 to fit to 1 sec (as i remember) of precision time, this "1 precision sec" it get from RTC chip
#7338gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #7304
Time is always together with the 3 dimensions.
⇗ @diderius6 ...Dietmar...I confirmed this with a former physics professor from the days when I studied engineering (applied science). I met him by chance in a super market and after we chatted for a few moments I told him I had recently read that time does not exist. He said, "That's correct, humans invented time to keep tract of change".

Have you considered what I said, that time, the second, is based on the rotation of the Earth. At one time, the Egyptians used a sun dial to do the same thing, to kept tract of the Sun's position in the sky, by casting its shadow on a sun dial face. They did not understand that the Earth was rotating and the Sun was standing still.

Today, we know the Earth rotates and we have two means of tracking that rotation. One is to use the position of the Sun at Noon wrt the horizon, then wait till Earth rotates back around to the same position. We created a machine, the clock, to measure that period then we arbitrarily divided a clock face into 24 divisions, which we called a day. Then we broke down the day into hours, minutes, and seconds.

The other means is to keep tract of the Earth's rotation wrt the stars, which are relatively fixed. The advantage with that time is that it is the same throughout the Earth's orbit whereas the former method loses a few degrees each rotation due to the Earth's movement in its orbit.

Was it Mach you quoted as claiming there is no physics in Einstein's relativity theory? Louis Essen, who discovered the atomic clock, claims Einstein's relativity is not a theory but a collection of thought experiments. He went further, claiming Einstein did not understand measurement. In his paper on relativity, E. claimed time is the hands on a clock. In that case, he should have known that time is locked to the rotation of the Earth because all clocks are synchronized to the Earth's rotation. It cannot dilate.

The space you mentioned is measured in metres (or kilometres) where the metre used to be defined as a fraction of the distance  from the Equator to the North Pole. So, we humans invented that space and the time related to it. Neither exist in reality.

Gravity is a force and I think it is likely related to the electrostatic forces in atoms. It operates in the same way as two electrostatic charges where electrostatic force = K(q1.q2)/d^2. With gravity, f = G(m1m2)/d^2. Is that a coincidence? Today, students are being taught that gravity is not a force but some kind of space-time issue. I find that to be scary.

I don't think time exists. However, we have created it as an illusion in our minds where our minds create a past and a future that does not exist. Both are illusions, just like our illusion that the Sun rises in the East and sets in the West. What we have in reality is one immense space with no movement of time. In other words, if you consider the life of Christ, beginning at 0 BC, nothing has changed time-wise since then. We imagine it has but we are still in exactly the same space as when Jesus walked the Earth. There have been changes in geography due to erosion, etc., but no change in time.
#7339Gelip⇗ @Andalu

Zitat von ⇗ Andalu im Beitrag ¶ #7299
Boot failed! - Unable to find a medium containing a live file system


Edit menu.lst file adding acpi=off noapic nomodeset:

 
default 0
timeout 3

title Debian Live
kernel /images/debian-live/vmlinuz boot=live live-media-path=/images/debian-live/live/ config username=root acpi=off noapic nomodeset
initrd /images/debian-live/initrd.img



@NT forever
What is this laptop? Is UEFI 32 or 64-bit? This version ⇗ grub4dos-for_UEFI-2021-05-01.7z is 32 and 64-bit. You must use the version that is compatible with your UEFI. It's best to run from UEFI Shell.

If your UEFI is 64-bit, you can only run WinXP 64-bit

To check the UEFI version, format the flash drive in FAT32, create the directory structure EFI\Boot and copy the uefiinfo.efi file to Boot subfolder renaming it to bootia32.efi (if UEFI 32-bit) or bootx64.efi (if UEFI 64-bit)

or do not rename uefiinfo.efi and use appropriate UEFI Shell version

P.S. uefiinfo.efi can run under both 32-bit and 64-bit UEFI as it is compiled as EBC



Gelip has attached files to this post
#7340Brooons⇗ @gordo999
Time is needed so that events do not occur simultaneously.
Our events are not simultaneous.
This means the fact of the existence of time.
#7341diderius6⇗ @Brooons

With Bohmian Mechanics, the events happen one after the other like on Videotape. No place for any randomness.
From a philosophie side: Who ever orchester randomness? nobody, because there isnt.
This enables also the possibility, that video runs backward, nobody has a chance to notice or to change this, because all IS as before.
Gravity makes the movie to run slower or faster. From human thinking,
nobody likes the idea, that we are like statists, cant change anything
Dietmar
#7342gordo999
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #7337
Mark Russinovich, David A. Solomon, Alex Ionescu said: "On todays machines, the APIC Multiprocessor HAL configures the RTC to fire every 15.6 milliseconds, which corresponds to about 64 times a second."
⇗ @Mov AX, 0xDEAD ...I am not up to date on modern computers, the older 8086 processors were easier to understand with their interrupts and RTCs.

I think the statement by Russinovich et al may be a bit misleading. I know who Russinovich is and I have read his work with great interest. In fact, I respect all three deeply as software gurus. Personally, if I want info on RTCs I would go to the source, an Intel hardware manual. A phrase like APIC Multiprocessor HAL does not make a lot of sense to me in English and I can only imagine how it must sound to you with English not your main language.  HAL is a software reference whereas an APIC is hardware. Seems Mark and the boys are viewing hardware from a software level.

An APIC, as you know, is an advanced programmable interrupt controller. It's predecessor, the PIC, a programmable interrupt controller, was introduced as a means of interrupting the processor so the processor could process external hardware devices, like COM ports, printers, etc. It had interrupt lines for IRQ (interrupt request) from 0x0 to 0x7 (8 interrupts). A newer pic was introduced later with an extra interrupt line that attached to another PIC to extend the interrupts possible to 16.

The APIC does the same work and much more and has 255 interrupt lines. In the older PICs, IRQ 0 was for the system timer, and I think that's what Russinovich and all are calling a PIT. So, the timer interrupts the processor at the highest interrupt level. I think that is done to give the processor a regular reference pulse to synchronize it. The APIC now has a function provided so companies like Microsoft can redirect the interrupts so Microsoft can redefine them.

In the book by Russinovich et al from which you quoted, they claim, "Windows programs the system clock to fire at the most appropriate interval for the machine...". A few sentences later they claim, "The RTC, on the other hand, runs at 32.768 KHz, which, by being a power of two, is easily configured to run at various intervals that to the next highest value thats been required by a process or driver)".

Seems to me they are confusing the RTC with the system clock. I had not noticed before that 32,768 is 2^15th power. That makes sense now because digital counters can naturally divided a 2^n binary number into any power of 2. However, on one hand they claim the RTC runs at 32.768 Khz, which is a constant frequency, then they claim the RTC can be configured by the APIC to fire every 15.6 ms.

I think what they mean is that the RTC 'OUTPUT' frequency is divided by separate digital circuitry which fire at various intervals. If you have a counter counting the RTC output signal, you can reset the counter to 0 any time you want. Or, you can configure the counter to reset itself every so many counts and/or to output a pulse after every interval count.

I don't pretend to understand this at depth, especially the APIC, which is far more complex than the PIC. I think all that needs to be understood is that the APIC is a complex interrupt detector that can detect service requests from external devices and internal devices like counters and timers. It also has the ability to communicate with other APICs.

A processor has to be told when power is applied. That is a power interrupt request, which forces the processor to go through housekeeping routines to reset its registers, etc. That pin is right on the processor and connected to a power source. The processor will carry on performing its house keeping routines, like refreshing memory, till it is interrupted to do other work. Windows has introduced its own software interrupts, which I think are IRQLs.
#7343gordo999
Zitat von ⇗ Brooons im Beitrag ¶ #7340
Time is needed so that events do not occur simultaneously.Our events are not simultaneous.
This means the fact of the existence of time.
⇗ @Brooons ...do you mean physical events or mental events? If you removed every human from the Earth, would any events ever occur simultaneously? The human mind has the ability to create events that don't exist in the real, physical world.

By mental events I mean those recorded in human memory. None of them happened at the same time because the humans involved did not exist in the same physical space. They died, and new humans appeared, in the same space. However, humans today read history and record that history chronologically in their mind, making it appear as if there has been a change in time. Mental chronological time is an illusion.

Consider the example of Jesus walking around Jerusalem 2000 years ago (I am not religious I just admire the guy). He and the people of his time died and are no longer in Jerusalem. If I went there now and walked in the same places Jesus walked I would not be interfering in events he experienced. But I'd be walking in the same space he walked in.
#7344gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #7341
With Bohmian Mechanics, the events happen one after the other like on Videotape. No place for any randomness.Dietmar
⇗ @diderius6 ...Dietmar ...if you read Bohm's discussions with Jiddu Krishnamurti (you can find the book, The Ending of Time, on the Net) he states clearly at one point that humans invented time. Their entire discussion revolves around the illusions created by thought, including time, and the 'actuality' available to a mind that operates with a 'choiceless awareness'. That's a reference to a mind that operates only in the 'here and now'.

That's all there is...now. No past, no future. Maybe that's what's wrong with the XP timer.
#7345gordo999
Zitat von ⇗ Gelip im Beitrag ¶ #7339
⇗ @Andalu ...[quote="Andalu"|p7299]
Boot failed! - Unable to find a medium containing a live file system
⇗ @Andalu ...I often get that message if I have a USB device plugged into a USB port with the BIOS set to boot from a USB port. I drove myself crazy one night before I got what it was. I had a USB wifi device plugged into a USB port and the system was looking for an operating system on it.
#7346diderius6⇗ @gordo999
Because Bohmian Mechanics is linear with time, the situation at any moment, for example "NOW" is enough (but past(see photos) and future exist) to describe all(!) past and future.
This is very impressive, most do not understand. The routes cant cross, this is the end for all randomness
Dietmar

PS: This means, that you cant do anything wrong;)..
#7347ruthan
Zitat von ⇗ gordo999 im Beitrag ¶ #7338
Zitat von ⇗ @diderius6 im Beitrag ¶ #7304
Time is always together with the 3 dimensions.


Everybody knows, that time is flat circle :)
#7348diderius6⇗ @ruthan
When you take a look at the Zeta function, there will be endless the same situation as before,
BUT always with changes in Epsilon ranges (Poincarescher Wiederkehrsatz, also true in Quantenmechanics(!)).
Zeta grows with Log, means, changes will be big as much as possible, so an universal time exists,
counter on the Videotape, but I think without errors, not as in XP
Dietmar
#7349Andalu⇗ @Gelip
the NVMe drive is not recognized on "fdisk -l" command. Only the USB stick is listed.
#7350Andalu
Zitat von ⇗ gordo999 im Beitrag ¶ #7345
[@Andalu ...I often get that message if I have a USB device plugged into a USB port with the BIOS set to boot from a USB port. I drove myself crazy one night before I got what it was. I had a USB wifi device plugged into a USB port and the system was looking for an operating system on it.

In my case instead it was correct to search for an image file to be loaded.

 

Page 491

#7351BrooonsIf the laptop's timer speeds up or slows down, it is possible that this laptop is moving in space according to Einstein's theory
#7352Mov AX, 0xDEAD
Zitat von ⇗ gordo999 im Beitrag ¶ #7342
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #7337
Mark Russinovich, David A. Solomon, Alex Ionescu said: "On todays machines, the APIC Multiprocessor HAL configures the RTC to fire every 15.6 milliseconds, which corresponds to about 64 times a second."
@Mov AX, 0xDEAD ...I am not up to date on modern computers, the older 8086 processors were easier to understand with their interrupts and RTCs.

I think the statement by Russinovich et al may be a bit misleading. I know who Russinovich is and I have read his work with great interest. In fact, I respect all three deeply as software gurus. Personally, if I want info on RTCs I would go to the source, an Intel hardware manual. A phrase like APIC Multiprocessor HAL does not make a lot of sense to me in English and I can only imagine how it must sound to you with English not your main language.  HAL is a software reference whereas an APIC is hardware. Seems Mark and the boys are viewing hardware from a software level

Hi Gordo

Yes, "APIC Multiprocessor HAL" means which HAL is activated.
APIC/ACPI/MPS HALs use RTC as input to interrupt controller
UniProcessor HAL uses 8254
#7353Mov AX, 0xDEAD⇗ @YuriyCN

Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #7336
Zitat von ⇗ YuriyCN im Beitrag ¶ #del-21
Zitat

acpi - fake, acpi hardware timer is disabled on skylake+, cpu-z probably reads acpi memspace in cycle, every  3.5 secs acpi time counter is overflowing, cpu-z handle this software way, any windows can't do same.
qpc - is not timer, it is cpu counter, qpc depends on cpu bus freq, cpu bus freq is 100Mhz, 100Mhz generated from 14,31Mhz
rtc - clock chip with 32768Hz
cpu-z can't show important thing - interrupt counter, this counter is base of all windows timers


Никакого разгона у меня нет, все режимы по частотам CPU в BIOS|UEFI выбраны по-умолчанию. Процессор Intel i5-6500 (4 core @ 3200 MHz), поэтому QPC показывает 3,192 GHz, так как рабочая частота 3,200 GHz.



Can you do test on your pc ?
1) extract hal.dll and ntoskrnl.exe from sp3(or from last kernel KB***** patch if you are use fresh kernels), rename to hal1111.dll & ntos1111.exe
2) run in boot.ini "/kernel=ntos1111.exe /hal=hal1111.dll"

you will get one-cpu windows with standart "non-acpi" hal, but with another hardware timer !

del-22YuriyCN
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #7353

Can you do test on your pc ?
1) extract hal.dll and ntoskrnl.exe from sp3(or from last kernel KB***** patch if you are use fresh kernels), rename to hal1111.dll & ntos1111.exe
2) run in boot.ini "/kernel=ntos1111.exe /hal=hal1111.dll"

you will get one-cpu windows with standart "non-acpi" hal, but with another hardware timer !


Проверить могу!
Только дайте мне эти 2 файла, чтобы не было путаницы.
Вдруг я не те версии использую и мы запутаемся в результатах.
Закачайте мне эти 2 файла нужных версий и я проведу проверку.
#7354NT5 forever
Zitat von ⇗ Brooons im Beitrag ¶ #7339
@NT forever
What is this laptop? Is UEFI 32 or 64-bit? This version ⇗ grub4dos-for_UEFI-2021-05-01.7z is 32 and 64-bit. You must use the version that is compatible with your UEFI. It's best to run from UEFI Shell.

If your UEFI is 64-bit, you can only run WinXP 64-bit

To check the UEFI version, format the flash drive in FAT32, create the directory structure EFI\Boot and copy the uefiinfo.efi file to Boot subfolder renaming it to bootia32.efi (if UEFI 32-bit) or bootx64.efi (if UEFI 64-bit)

or do not rename uefiinfo.efi and use appropriate UEFI Shell version

P.S. uefiinfo.efi can run under both 32-bit and 64-bit UEFI as it is compiled as EBC

Hmmm. I'm pretty sure my laptop's UEFI is 64 bit, because it runs 64 bit Win 10.

WinXP 64-bit sucks.
32-bit XP has been patched by MS until May 2019.
64-bit XP only until 2014 if my memory serves me.

Its GUI is nice, and it's stable, but AFAIK it's a pain to find the right drivers.

Windows 10 it is (unless I manage to install Windows 7 on my laptop)
Farewell XP! (when it concerns this particular machine)

I hate Windows 10 with a passion.
Maybe I should install Linux on my laptop.
I hate Linux as well, but not half as much as I hate Win 10.
Linux looks great, but it's a pain to set up and to find the right software for the job, and without good software my laptop is just a very expensive paperweight.
Maybe I should give up on computers all together, and stay far away from them when my last XP compatible motherboard dies...
#7355gordo999
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #7352
UniProcessor HAL uses 8254
⇗ @Mov AX, 0xDEAD ...I think you told us your first name in the past. I don't want to say "hi, Mov".

I wonder if the i8254 could be part of the problem. Apparently, some versions of XP are related to the 8254. The newer hardware likely has this functionality included in the LAPIC and is perhaps running at a slightly different frequency.

There is a post in this form about high performance counters that states:

"Well, on the same machine, 4 different Windows installs deliver 4 different timer resolutions:

Windows XP x64 Edition SP2:
High-resolution performance counter frequency is 3215.0 MHz

Windows XP Media Center Edition 2005 SP3:
High-resolution performance counter frequency is 3.579545 MHz

Windows Vista Ultimate Edition 64-Bit SP2:
High-resolution performance counter frequency is 25.0 MHz

Windows 7 Ultimate Edition 64-Bit SP1:
High-resolution performance counter frequency is 3.139248 MHz"

⇗ https://social.msdn.microsoft.com/Forums...velopmentissues

****

Don't know if there is a mistake for Windows XP x64 = 3215.0 Mhz. That is 3.125 Ghz. It may be a typo and should read 3.125 Mhz.

Note the frequency for Windows media centre XP version = 3.579545 MHz. That is the frequency of the crystal oscillator used in colour television for the colour information reference in North American televisions. Apparently, computer manufacturers used the same crystal because it was plentiful and inexpensive. The i8254 runs at 1/3 that frequency in certain modes, or 1.19318 Mhz.

Other versions of XP are returning different values according to the article in the forum. That's not to say the queryperformancecounter function is returning those vlaues but the count they are returning for the counter is based on different base frequencies.

I imagine it might be the same for gettickcount, etc. Browsers and games are likely using those functions for XP apps but when the counter frequency base changes, their timing will be incorrect. So, when XP runs on hardware using different timers and time bases, it loses synchronization.

Also, you may find this article interesting. It is old but it explains the use of the i8254 in older systems.

⇗ https://www.compuphase.com/int70.txt
#7356gordo999
Zitat von ⇗ NT5 forever im Beitrag ¶ #7354
Linux looks great, but it's a pain to set up and to find the right software for the job...
⇗ @NT5 forever ...not only that, if you dare to look under the hood you find an archaic Unix system with some apps dating back to the 1970s, and written for teletype. Much to my horror, while trying to learn macOS to help a friend, I found the same Unix under the hood. Unix is to Linus and macOS as DOS is to Windows.

BTW...for anyone not speaking English as a first language, 'hood' refers to the metal door over the engine in an automobile. When you lift it to access the engine, you are said to be 'looking under the hood'. In the UK, they call it a bonnet, like a woman's hat.
#7357gordo999About timing issues....just noticed an article that mentions HPETs, or high precision Event timers. I had not turned XP on for several weeks and when I just booted it, the clock was within 3 seconds of the clock on my Windows 7 machine. XP is not connected to the Internet at this time, so it did not correct itself via the Net.

In Device Manager, under System devices, I have a listing for an HPET as High Precision Event Timer. Its hardware ID is ACPI\PNP0103\0.   It's memory range is FED00000 - FED003FF.

The following article explains the HPET in detail and its relation to other timers. Under 'Notes' at the end of the article, in Note d., they mention a PM Timer that can be turned on and off in boot.ini use the /usepmtimer switch. It's not clear to me at this time what that does.

⇗ https://en.wikipedia.org/wiki/High_Precision_Event_Timer

It seems my problems with timing cleared up when I used the modded intelppm/HAL mod combo.
#7358Gelip⇗ @Andalu

Zitat von ⇗ Andalu im Beitrag ¶ #7349
@Gelip
the NVMe drive is not recognized on "fdisk -l" command. Only the USB stick is listed.


Yes, Debian 6 is old. Try my Debian 9:
¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (444)

P.S. On Debian 9 use:

fdisk -l -u=cylinders

⇗ @NT5 forever
Zitat von ⇗ NT5 forever im Beitrag ¶ #7354
Hmmm. I'm pretty sure my laptop's UEFI is 64 bit, because it runs 64 bit Win 10.
WinXP 64-bit sucks.


To run WinXP 64-bit under pure 64-bit UEFI class 3 you need to use 64-bit UefiSeven loader and beta files from 64-bit Longhorn Server 2008 6.0.6001.16497: ⇗ https://www.betaarchive.com/forum/viewto...=456492#p456492

Besides, you have to deploy WinXP e.g. with VMware Workstation. Installation is not possible:
⇗ How to deploy WinXP 64-bit on a UEFI (without CSM) in AHCI
#7359BrooonsSometimes, the power does not turn off, on XP.
10\1, 10 time correctly, 1 time freeze in end.
Rebooting correctly, without checkdisk.
Which way to look...
del-23YuriyCN

Я не дождался 2-х файлов от вас, поэтому решил провести эксперимент как я понял.

1. Я взял официальный SP3 для русской версии windowsxp-kb936929-sp3-x86-rus
2. Переходим в нем по пути \i386\sp3.cab
3. Из архива sp3.cab берем 2 файла hal.dll и ntoskrnl.exe, копируем в любую директорию и переименовываем в hal1111.dll и ntos1111.exe
4. Копируем hal1111.dll и ntos1111.exe в c:\WINDOWS\system32\
5. Дописываем параметры /kernel=ntos1111.exe /hal=hal1111.dll в файл boot.ini

Все 3 файла я залил в архив - ⇗ https://www.upload.ee/files/13113007/Test_Kernel.zip.html
Если нужно было проверять на других версиях - дайте свои файлы.

Готово! Измененные файлы лежат на своих местах.

6. Перезагружаем ПК.
7. При загрузке ПК началось определение оборудования, вроде как при свежеустановленной системе. Все драйвера ранее были установлены, поэтому подхватились в автоматическом режиме.
8. Чтобы все драйвера (в том числе видеокарты) нормально заработали ещё раз перезагрузил ПК.

Готово! Можно проводить тест.

9. Судя по "Диспетчеру задач" мой ПК превратился в одноядерный и слетел патч РАЕ. Смотрите скрин - из 4 ядер осталось 1 ядро, а памяти вместо 8 Гб, осталось 2,1 ГБ.



10. Провевожу проверку.
Запускаю CPU-Z и Timer. После 380 секунд проверки получаю времена как на скриншоте. Интересным моментом является то, что ранее в таком режиме я бы получил время ACPI равное времени QPC таймера, а RTC таймер ушел бы вперед за 380 секунд приблизительно на 12...14 секунд (приблизительно по +2 секунды за каждые 60 секунд).

Но с новым ядром картина резко изменилась. Время ACPI и QPC таймера немного разнится, на 0.08 секунд. При чем наоборот, уже в меньшую сторону, а время QPC и RTC вообще совпадает. Если время в 0.08 секунд считать погрешностью - то все 3 таймера считают приблизительно одинаково. Ещё раз обращаю внимание, что ранее, за 380 секунд "накрутки" я бы получил увеличение времени для RTC до +(12...14) секунд!



Пишите какие действия я должен ещё выполнить.
Может какие-то проверки необходимо повторить.
Я готов тестировать.

#7360Mov AX, 0xDEAD
Zitat von ⇗ YuriyCN im Beitrag ¶ #del-23

9. Судя по "Диспетчеру задач" мой ПК превратился в одноядерный и слетел патч РАЕ. Смотрите скрин - из 4 ядер осталось 1 ядро, а памяти вместо 8 Гб, осталось 2,1 ГБ.

Пишите какие действия я должен ещё выполнить.


⇗ @YuriyCN
You can apply WinXPPAE to hal&ntoskrnl for full RAM access, but this simple hal.dll is not "ACPI" so your PC is limited to control power/freq/cpus/...
What is difference with standart mode - clock source is virtual "8254" chip with 14.318-MHz clock (derived from 24-MHz quartz)
In standart mode with halmacpi.dll clock source is RTC chip 32768Khz

On your PC windows assume 8254 is better clock source than RTC, there is no simple way to switch clock source in halmacpi.dll, need to replace some code to version from hal.dll, it is hard job.

You can play with some timer related switches in boot.ini at standart mode:
/USE8254  на системах с устаревшим BIOS сообщает ядру ОС, что на ПК установлен таймер на основе чипа 8254
/TIMERES=X в мультипроцессорных системах устанавливает разрешение системного таймера. По умолчанию разрешение таймера 7.8ms. Параметр X измеряется в сотнях миллисекунд и поддерживаются следующие значения: (X=сотен миллисекунд миллисекунд)
9766 0.98
19532 2.0
39063 3.9
78125 7.8
#7361Mov AX, 0xDEAD
Zitat von ⇗ gordo999 im Beitrag ¶ #7355
"Well, on the same machine, 4 different Windows installs deliver 4 different timer resolutions:
Windows XP x64 Edition SP2:
High-resolution performance counter frequency is 3215.0 MHz
Windows XP Media Center Edition 2005 SP3:
High-resolution performance counter frequency is 3.579545 MHz
Windows Vista Ultimate Edition 64-Bit SP2:
High-resolution performance counter frequency is 25.0 MHz
Windows 7 Ultimate Edition 64-Bit SP1:
High-resolution performance counter frequency is 3.139248 MHz"
it is OK, because for performance counters windows can choose from pool of sources: acpi hardware, TSC, ...
3215.0 MHz = RDTSC
3.139248 MHz = RDTSC/1024 (windows 7+ divide raw TSC this way)
3.579545 MHz = ACPI hardware timer (acpi specification frequency)
25.0 MHz = mistake
with additional boot switches possible to force use HPET and 8254 as performance counters

p.s. my own experiments with broken acpi timer on skylakes: ¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (10)

#7362Andalu
Zitat von ⇗ Gelip im Beitrag ¶ #7358
Yes, Debian 6 is old. Try my Debian 9:
¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (444)
P.S. On Debian 9 use:
fdisk -l -u=cylinders
thank you for the help but, sincerely, I have many difficulties to proceed, totally ignoring the linux commands. For example, I prepared the usb stick by writing the iso Debian9 with Win32 Disk Imager but I don't know if this was the right thing to do. With the command fdisk -l -u=cylinders I don't know what is intended to obtain and which parameters to change in case, as happened, an error is shown.

del-24YuriyCN
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #7360
You can apply WinXPPAE to hal&ntoskrnl for full RAM access, but this simple hal.dll is not "ACPI" so your PC is limited to control power/freq/cpus/...
What is difference with standart mode - clock source is virtual "8254" chip with 14.318-MHz clock (derived from 24-MHz quartz)
In standart mode with halmacpi.dll clock source is RTC chip 32768Khz
On your PC windows assume 8254 is better clock source than RTC, there is no simple way to switch clock source in halmacpi.dll, need to replace some code to version from hal.dll, it is hard job.
You can play with some timer related switches in boot.ini at standart mode:
/USE8254  на системах с устаревшим BIOS сообщает ядру ОС, что на ПК установлен таймер на основе чипа 8254
/TIMERES=X в мультипроцессорных системах устанавливает разрешение системного таймера. По умолчанию разрешение таймера 7.8ms. Параметр X измеряется в сотнях миллисекунд и поддерживаются следующие значения: (X=сотен миллисекунд миллисекунд)
9766 0.98
19532 2.0
39063 3.9
78125 7.8
1. Про РАЕ всё понятно, я же заменил ядро на непатченое.
2. В "Диспетчере устройств" появился "Стандартный компьютер", вместо "Многопроцессорный компьютер с ACPI" который был раньше
3. Что мне делать сейчас? Оставить однопроцессорное ядро, для дальнейшего проведения тестов... Или вернуть многопроцессорное ядро и поиграться с параметрами /USE8254 и /TIMERES=X в boot.ini???

Моя материнская плата на чипсете Intel H110M, процессор Intel i5-6500.
Готов к любым экспериментам.

del-25YuriyCN

Вопрос: а как вернуть как было??

Я удалил добавленные параметры /kernel=ntos1111.exe /hal=hal1111.dll с boot.ini, но режим "Многопроцессорный компьютер с ACPI" не вернулся.... (((( Далее, я попробовал натравить на обычное ядро с РАЕ, задав в boot.ini параметр /kernel=ntkrnlpa.exe /hal=hal.dll - но опять загружается в режиме "Стандартный компьютер".

Как вернуть "Многопроцессорный компьютер с ACPI"??? Неужели Виндовс придется переустанавливать?

#7363Mov AX, 0xDEAD
Zitat von ⇗ YuriyCN im Beitrag ¶ #del-25
Я удалил добавленные параметры /kernel=ntos1111.exe /hal=hal1111.dll с boot.ini, но режим "Многопроцессорный компьютер с ACPI" не вернулся.... (((( Далее, я попробовал натравить на обычное ядро с РАЕ, задав в boot.ini параметр /kernel=ntkrnlpa.exe /hal=hal.dll - но опять загружается в режиме "Стандартный компьютер"
⇗ @YuriyCN
always make backup of registry, ERUNT is good for XP  
1) /kernel=ntkrnlpa.exe /hal=hal.dll - must work, ntkrnlpa.exe = real ntkrpamp.exe, hal.dll - real halmacpi.dll
2) load available system restore snapshot
3) del manually ""Стандартный компьютер"", reboot
4) restore registry manual backup if you have one (only SYSTEM is enough)

del-26YuriyCN
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #7363

always make backup of registry, ERUNT is good for XP  
1) /kernel=ntkrnlpa.exe /hal=hal.dll - must work, ntkrnlpa.exe = real ntkrpamp.exe, hal.dll - real halmacpi.dll
2) load available system restore snapshot
3) del manually ""Стандартный компьютер"", reboot
4) restore registry manual backup if you have one (only SYSTEM is enough)



Уже вернул. Задача оказалась не простой. Восстановление системы отключено. Пункт "Стандартный компьютер" удалить нельзя - в его меню нет пункта "Удалить" когда он один и нет выбора, а в "Многопроцессорный компьютер с ACPI" - пункт удалить есть.

Правильная последовательность:
Оказывается, когда мы загружаемся с режиме "Стандартный компьютер" с альтернативного ядра hal1111.dll, то это однопроцессорное ядро втихаря копируется в файл hal.dll . В итоге, когда мы возвращаемся обратно, ядро загружается из hal.dll, но файл уже подмененный. Пришлось вернуть ехе и dll из какого-то бекапа, но ПК не загружался, а зависал с черным экраном, реестр не мог подгрузиться. Тогда повторно заменил 2 файла и загрузился в безопасном режиме (через F8). Посмотрел в "Диспетчер устройств" - появилось 2 устройства "Многопроцессорный компьютер с ACPI" и "Стандартный компьютер". Поскольку устройств было 2, то на "Стандартный компьютер" пункт "Удалить" появился. Я его и удалил, оставив только "Многопроцессорный компьютер с ACPI". Перезагрузился в обычном режиме и работа нормализовалась.

По RTC bug.



Проверка показала, что в однопроцессорном ядре проблемы нет. Я даже накручивал время почти 20 минут, но разность хода таймеров составила -0,24 секунды за 1187 секунд (~ 20 минут). За это время, на мнопроцессорном ядре мы накрутим приблизительно +40 секунд.

ВОПРОСЫ

1) Посоветуйте с каким параметром в boot.ini сделать проверку?
2) Можно ли патчем ядра установить предделитель на 1 мс (0.977 мс) принудительно (как это сделано в Windows 7) ?

#7364Fernando⇗ @YuriyCN: I don't understand, what you are writing.
This is an international Forum, but its language is English.
#7365Gelip⇗ @Andalu

Zitat von ⇗ Andalu im Beitrag ¶ #7362
With the command fdisk -l -u=cylinders I don't know what is intended to obtain and which parameters to change in case, as happened, an error is shown.

What do you dont know? Show me the output of the fdisk -l -u=cylinders

After all, I explained how to make a disk image here: ¶ #7263
bs is number of bytes from the Units= line
count is last cylinder of first partition (END column)

You need to first mount another partition, external drive or network drive where the xp.img image will fit.

To mount an NTFS partition of external USB disk (e.g. /dev/sdb1) in the /mnt/images directory:

  • create an images folder in the mnt directory:
    mkdir /mnt/images
  • mount NTFS partition in this directory:
    mount /dev/sdb1 /mnt/images


In Debian, NVME disks will be labeled /dev/nvmexxx e.g. /dev/nvme0n1 and first partition /dev/nvme0n1p1

 

Page 492

#7366gordo999⇗ @Mov AX, 0xDEAD ...thanks for link to your research. Good work.

I mentioned in previous post that timing issues on my XP installation were fixed by the intelppm/hal mod. I had games that would not start and Firefox would not run properly. After using the mod, everything worked.

Do you know what changes were made in the mod to affect the timer? After XP being turned off for several weeks, the clock was 3 seconds fast, not slow.
#7367gordo999For anyone interested, I am re-visiting the problem of getting the Nvidia GT 1030 to run on XP. The complaint thus far is that the card runs only in 2D but I can't even get it to load. I get an error 10.

Found one major problem. The recommended package from Nvidia for XP is the 368.81 package. However, it comes in three versions for x86: an XP version, a VISTA/W7/W8 package, and a W10 x86 package which seems to be a Japanese version. The XP package uses the nv_mini.sys driver which was used as far back as the GT 730. The GT 1030 requires a different driver, the nvlddmkm.sys driver which comes in the VISTA/W7/W8 package.

The 368.81 package for XP should not work at all with the GT 1030 since the required driver is missing in that package. The INF file on the XP package points to the nv_mini.sys driver whereas the Vista/W7/W8 package points to the nvlddmkm.sys driver. I am just beginning to look at the problem but thought I'd advise anyone wondering about the issues.

The INF file for the VISTA/W7/W8 package has a section for each OS, so if it is used for XP the header of one of those sections will have to be changed to reflect XP. I am thinking the Vista section would be best. The Vista INF file has no mention of the GT 1030, the highest hardware ID is DEV_1C03 = GTX 1060. Just found a W10 English version of the 368.81 package for x86 and it only goes to DEV_1C03 as well.
#7368infuscomus⇗ @gordo999

I don't think you'll have much luck getting nvlddmkm.sys working in XP, unless we can somehow get XP booting with Vista/7 ntoskrnl/hal.
I tried to get it to boot once before using a longhorn server beta bootloader that I know can boot XP but got stuck at a 12A BSOD.
#7369infuscomus⇗ @Mov AX, 0xDEAD

It is possible to boot into XP using the Longhorn Server 2008 6.0.6001.16497 bootmgr and winload.exe
So as an experiment I tried swapping out the XP ntoskrnl and hal with the one from Vista and see if it would boot - but I ran into a 12A BSOD when I tried to boot into it.

I was wondering if you might be interested in solving this? I think it would be pretty cool to have XP booting with the Vista ntoskrnl and hal
#7370gordo999
Zitat von ⇗ infuscomus im Beitrag ¶ #7368
I don't think you'll have much luck getting nvlddmkm.sys working in XP, unless we can somehow get XP booting with Vista/7 ntoskrnl/hal.
⇗ @infuscomus ...I think you are right. Just checked the driver with 'depends' and there are 22 functions missing in the XP ntoskrnl. No other module shows missing functions. I am still running the original ntoskrnl, not the newer one from W8.

Not sure how that works, I am going to check ⇗ @daniel_k 's repository to see. There may be a chance that the missing functions are not called under normal usage, but I doubt it.

#7371spacedrone808Anyone tried Ryzen 5900x on Win XP 32-bit?
5900 is the fastest cpu in terms of single thread performance!

AMD 1950x ~4Ghz | Noctua NH-U14S  | Asrock Taichi X399m | 64GB RAM Corsair DDR4 @2800Mhz| 512Gb Samsung 970 Pro NVME | 1Tb Samsung QVO SSD | 2Tb Seagate Firecuda sHDD (8Gb SSD cache) | AMD Radeon VII 16Gb VRAM | Asus Essense STX II | Edifier R2800 Speakers | 1300 Watt SeaSonic Gold| NEC PA301W | Fractal Design Meshify  Case |Topre RealForce RGB Keys | Windows 7 SP2+ x64
#7372gordo999
Zitat von ⇗ infuscomus im Beitrag ¶ #7369
So as an experiment I tried swapping out the XP ntoskrnl and hal with the one from Vista and see if it would boot - but I ran into a 12A BSOD when I tried to boot into it.
⇗ @infuscomus ...looked up bsod 12a out of interest and it's about language packs. Apparently Vista is looking for language pack info in the registry.

Got this possible solution (posted below) by translating with Google from a Russian site. This requires a registry mod on an offline system. The explanation advises to export the registry hive but I find that is not necessary. If you boot from a live CD like Hirens, you can use their registry editor.

Highlight the HKLM hive (on live CD) and look under the 'File' tab for 'Load Hive'. Go to the registry folder in the offline XP Windows directory under %windir%\system32\config and highlight the 'system' file. If that does not have the hives you need, unload the 'System' hive and load the 'Software' hive. Hit enter and it will ask for a name. I use a distinct name because it will be loaded under the HKLM hive as a sub-hive. Then you can edit the XP registry hive as if it was live in XP.

***CAUTION....be sure to unload the hive under 'File' when you are finished**** You may also be able to do this on a live XP, I don't think it would care about the added MUI stuff.

From Russian site:
⇗ http://forum.oszone.net/nextoldesttothread-269667.html

"Recently I met such a rare error on Win 7x32 ru. For some reason, the dump is not created. With difficulty I found in Google where the problem is. It turns out that when updating the "left" windows, the contents of the current * registry branch sometimes disappear
[HKEY_LOCAL_MACHINE \ SYSTEM \ ControlSet * \ Control \ MUI \ UILanguages
(see what ControlSet number is current in the system \ select section)

To solve this, you need to boot from some Live CD and load the System hive. Find the desired branch (see above) and, after checking that there are no necessary subsections, export it to disk. Then, with the right mouse, change and insert missing lines
[hive \ HKEY_LOCAL_MACHINE \ SYSTEM \ ControlSet * \ Control \ MUI \ UILanguages \ en-US]
"LCID" = dword: 00000409
"Type" = dword: 00000091

[hive \ HKEY_LOCAL_MACHINE \ SYSTEM \ ControlSet * \ Control \ MUI \ UILanguages \ ru-RU]
"LCID" = dword: 00000419
"DefaultFallback" = "en-US"
"en-US" = hex (7): 00,00,00,00
"Type" = dword: 00000092
Instead of "hive" there will be the name of the loaded hive, and instead of * - the ControlSet number that is current. Save. Then two clicks on the resulting reg file, merge and reboot. Instead of these manual work, you can probably write a simple script, but this stop is quite rare".

*****
Note....I could find no similar reference in the XP registry but there is a hive under HKLM\system\ControlSet * \Control\Nls\MUILanguages

ControlSet * refers to your current ControlSet, which you can find under HKLM\System\Select\Current. For example, my current ControlSet is ControlSet008.

Note also that W7 has a MUI hive in the same place as Vista. Maybe you could export the entire hive from W7 and import it into XP registry. Of course, if you have an offline Vista installation you could do the same.

#7373infuscomus⇗ @gordo999

Thanks for that useful info! I wasn't able to find this myself.
#7374gordo999
Zitat von ⇗ infuscomus im Beitrag ¶ #7373
Thanks for that useful info! I wasn't able to find this myself.
⇗ @infuscomus ...I got lucky. Found out that nvlddkmk means Nvidia Longhorn Display Driver  Kernel Mode Driver. Tried to force it via INF files but all I got was an error change from code 10 to code 1 to code 28. Surprisingly, my desktop video is still clear with the stock VGA drivers.
#7375Mov AX, 0xDEAD⇗ @gordo999

Zitat von ⇗ gordo999 im Beitrag ¶ #7366

I mentioned in previous post that timing issues on my XP installation were fixed by the intelppm/hal mod. I had games that would not start and Firefox would not run properly. After using the mod, everything worked.
Do you know what changes were made in the mod to affect the timer? After XP being turned off for several weeks, the clock was 3 seconds fast, not slow.


first page of this "megatopic" has mini-wiki, descriptions to most patches

p.s. intelppm mod patch cpu idle function, not any timers :)
#7376Mov AX, 0xDEAD⇗ @infuscomus

Zitat von ⇗ infuscomus im Beitrag ¶ #7369

So as an experiment I tried swapping out the XP ntoskrnl and hal with the one from Vista and see if it would boot - but I ran into a 12A BSOD when I tried to boot into it.
I was wondering if you might be interested in solving this? I think it would be pretty cool to have XP booting with the Vista ntoskrnl and hal

I'm not interested because after solving BSOD 12 you will get infinite  BSOD XXXX/YYYYY/......
to simplify this BIG problem need replace all XP's ring0 code to Vista, then fix XP's user32.dll/kernel32/gdi32.dll/ntdll.dll because these libraries contain "gates" from XP-ring3 to Vista-ring0

#7377Andalu
Zitat von ⇗ Gelip im Beitrag ¶ #7365
What do you dont know? Show me the output of the fdisk -l -u=cylinders

Here the output of the fdisk -l -u=cylinders command:

 
Device                  Boot  Start   End     Cylinders   Size     Id   Type
/dev/nvme0n1p1 * 1 4749 4749 36.4G 7 HPFS/NTFS/exFAt



Too complicated for me to understand the rest... sorry

#7378Gelip⇗ @Andalu

Zitat von ⇗ Andalu im Beitrag ¶ #7377
Here the output of the fdisk -l -u=cylinders command:

Your WinXP is on an NTFS 36.4G partition (/dev/nvme0n1p1). Shrink the partition or reinstall WinXP on a small partition, e.g. 5GB. 36GB is too much to fit in RAM !
#7379gordo999
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #7375
first page of this "megatopic" has mini-wiki, descriptions to most patches
⇗ @Mov AX, 0xDEAD ...thanks, I had not looked at that page for long time. Thanks for all the hard work you and others have done to make XP work on newer motherboards.
#7380Andalu
Zitat von ⇗ Gelip im Beitrag ¶ #7378
Your WinXP is on an NTFS 36.4G partition (/dev/nvme0n1p1). Shrink the partition or reinstall WinXP on a small partition, e.g. 5GB. 36GB is too much to fit in RAM !

I'm trying different ram image sizes and even the 28GB one works in the 36GB disk partition on a system with 64GB of ram:

 

Page 493

#7381Andalu
Zitat von ⇗ NT5 forever im Beitrag ¶ #7238
I use Grub4DOS bootloader/menu, and it has the option to run XP both in file disk mode and in RAM disk mode.
When I want to install new software or hardware I use filedisk and set everything up the way I like it.
Changes are persistent after reboot, just like a regular XP installation on hard disk.
Once everything is configured correctly I reboot my machine and use RAM disk mode.
Changes made to the C drive will be flushed during a reboot.

Could you please report the content of the file menu.lst that allows the switch between file Disk mode and RAM disk mode?
#7382Fernando⇗ @Mov AX, 0xDEAD:

Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #7375
first page of this "megatopic" has mini-wiki, descriptions to most patches
Thank you very much for this work!
To make it easier for new visitors of this thread to find your post, I have added a hint to your smart summary to the start post.

#7383Fernando⇗ @YuriyCN:

Zitat von ⇗ Fernando im Beitrag ¶ #7364
⇗ @YuriyCN: I don't understand, what you are writing.
This is an international Forum, but its language is English.
Since I haven't seen any reaction from you side, I have deleted all your posts, which were written by you without any translation in Russian language with Cyrillic letters.
All other Forum members except you are writing here in English language and with Latin letters, no matter where they live and which mother tongue they speak. That is not fair!
All contributions of this Forum should be readable and understandable for all visitors.

#7384Gelip
Zitat von ⇗ Andalu im Beitrag ¶ #7380
'm trying different ram image sizes and even the 28GB one works in the 36GB disk partition on a system with 64GB of ram:


64GB RAM in WinXP ???   What do you need so much RAM for? I am using WinXP 64-bit with 4GB RAM, I have the paging file disabled and I am very happy. WinXP doesn't need that much RAM.
#7385NT5 forever
Zitat von ⇗ Andalu im Beitrag ¶ #7381
Could you please report the content of the file menu.lst that allows the switch between file Disk mode and RAM disk mode?
title XP file disk
find --set-root --ignore-floppies /xp.img
map /xp.img (hd0)
map --hook
root (hd0,0)
chainloader /ntldr

title XP RAM disk
find --set-root --ignore-floppies /xp.img
map --mem /xp.img (hd0)
root (hd0,0)
chainloader /ntldr
#7386Andalu
Zitat von ⇗ Gelip im Beitrag ¶ #7384
64GB RAM in WinXP ???   What do you need so much RAM for? I am using WinXP 64-bit with 4GB RAM, I have the paging file disabled and I am very happy. WinXP doesn't need that much RAM.

Currently my main system has 32GB of ram. C: drive is used for 1.7GB with only 4 programs installed. All the rest is on ramdisk, including pagefile, browser, downloads and some Framework versions (2.0 and 4.0). Some ramdisks are loaded at startup while others are loaded only when the need occurs. Booting with 3 ramdisks (4GB for the pagefile + 6Gb for Firefox + 2GB for some programs) is a bit slow (50 seconds) but ramdisk operations are fast even with XP installed on an old Haswell board with a 4770k cpu.

Next system will have with 64GB of ram. My crazy goal is to find a way to load XP on ram and at the same time:
- still use the ramdisk software;
- install the programs currently running on C on a ramdisk even if they need their own driver to work and especially write on the drive C.

I am aware, in any case, that it will be very difficult, at least for me, to find the solution.
Any advice will be greatly appreciated :)
#7387Gelip⇗ @Andalu

  • install fresh WinXP on partition 5GB
  • install device drivers, WinVBlock RAM disk driver, and adjust system settings
  • install your programs
  • disable pagefile
  • create an xp.img image from the beginning of the disk to the end of the 5GB partition
  • boot system from xp.img to RAM with GRUB4DOS
#7388BrooonsHiberfil.sys create impossible, Hibernate mode does not work, it is impossible to turn on, error id 49, this problem is maybe solved anybody or it is not worth wasting time?
#7389YuriyCN

ENGLISH
Windows XP mod 2021 - system build for the modern PC (edition 09.05.2021)
The information doesn't fit into a forum post - so download the text file and read it in Notepad.
TXT (89KB) - ⇗ https://yadi.sk/d/ljE4cOq9IqEj3Q

RUSSIAN
Windows XP мод 2021 - сборка системы для современного ПК (редакция 09.05.2021)
Информация не помещается в форумный пост - поэтому скачайте текстовый файл и читайте в Блокноте.
TXT (100КБ) - ⇗ https://yadi.sk/d/Dt4iHUhoqABMzQ
#7390gordo999
Zitat von ⇗ Gelip im Beitrag ¶ #7339
P.S. uefiinfo.efi can run under both 32-bit and 64-bit UEFI as it is compiled as EBC
⇗ @Gelip ....thanks for your help with UEFI but after getting it working on W7, I cannot see the point of it. My shell appeared as version 2.0 but it looks like the same kind of Unix used in Linux, like DOS in Windows. Each device seems to be described by a long GUID and I cannot see manipulating each piece of hardware using 32-bit GUIDS and using a text mode which is based in Unix. There's really no point unless a user wants more control over each element that is listed in the standard visual BIOS.

I got it running in W7, rather than using an USB drive for XP,  by adding a drive letter to the system partition so it would show up in a file manager. Then I created a directory \EFI with a sub-directory \Boot. Then I placed the efi shell file in the Boot directory. With my system directory using letter z:\, that means the efi file is in z:\EFI\Boot. I had two 64-bit EFI files, one from you, named bootx64.efi and another named shell.efi. I did not know which one the system required so I placed both in the Boot directory. When I rebooted, the EFI menu appeared but it said I could escape before loading the nmi file by pressing ESC. Did not happen, it just sat there claiming the EFI boot was successful.

I could not see anything that would allow me to add XP to the W7 boot file. Then, again, I could not spend that much time investigating. Eventually, I used EasyBCD, with UEFI disabled in BIOS, to add XP to the BCD boot file in W7. Very simple, and now I have the dual boot window appear at boot.
#7391Gelip⇗ @gordo999

Zitat von ⇗ gordo999 im Beitrag ¶ #7390
thanks for your help with UEFI but after getting it working on W7, I cannot see the point of it.

What point?
Zitat von ⇗ gordo999 im Beitrag ¶ #7390
My shell appeared as version 2.0 but it looks like the same kind of Unix used in Linux, like DOS in Windows.

This is what UEFI Shell looks like.
Zitat von ⇗ gordo999 im Beitrag ¶ #7390
Each device seems to be described by a long GUID and I cannot see manipulating each piece of hardware using 32-bit GUIDS and using a text mode which is based in Unix. There's really no point unless a user wants more control over each element that is listed in the standard visual BIOS.

To edit the Boot Menu you need a special version of UEFI Shell (in Attachment) that includes the bcfg command Gelip has attached files to this post
#7392Andalu⇗ @Gelip

Thanks for your suggestions
So far I used only the SVBus driver and after some tests I managed to boot XP from memory and at the same time, always on startup, to load some ramdisks from the E: drive (SSD connected to the USB3 port), as shown in the image below:



Now I need to find a way to install two programs for which I need to permanently save their rules during usage (one possibility could be to use symbolic links, some tests are needed), but first I wanted to ask if someone can give me a hint on the following problem:

with two nvme connected, the first with the XP image and the other for ramdisk files, what command should be added in the menu.lst file to load the XP.img file located on the first drive? So far the nvme drive that is automatically selected by GRUB4DOS is always the one containing the ramdisk files and not the one with XP.img, so the system won't boot.

Current menu.lst:

title Windows XP - RAMDISK
nvme --set-drive=0x80 --set-controller=0 --showselected
find --set-root --ignore-floppies /xp.img
map --mem /xp.img (hd0)
map --hook
nvme --uninit
root (hd0,0)
chainloader /ntldr
#7393Andalu
Zitat von ⇗ diderius6 im Beitrag ¶ #7256
During my tests with Windbg in winter I noticed,
that even long time after compi shuts down,
complete parts in ram stay(!) as before (even it is ddr4).
Later I use this methode for to load tables for acpi.sys to ram, survives reboot.
I do not find a tool, with which I can reset all ram.
So I come to the idea, to use memtest86-usb .
⇗ https://www.memtest86.com/

This version does not work for XP, but there is an memtest86-usb.img in it,
which I put under XP ) via Winhex to an USB stick.
And voila, connect this USB stick to your compi and ram is freshed up
Dietmar

Is it only with debugging that I can check if the ram is effectively reset or can I use another way as well?
#7394diderius6⇗ @Andalu

With Winhex you have the possibility to check ram.
Long time ago I use DOS, for to see,
that information survives reboot in ram and I boot complete(!) XP loaded to ram before, via reboot.
For me it is not clear, how you can access real ram under XP.
Even with winhex, ram is separated into pieces of virtual ram,
which program reserves it.
Would be nice, if somebody here can explain, how to take a look at the complete physical ram under XP

Dietmar

PS:memtest86 tests whole ram, the program itself needs to copy itself to another place in ram during operation.
I do not find any explanation, HOW memtest86 succeeds with this.
And the information in memtest86 leeds to missunderstanding:
It tells for example, that ram between 0x100000000 - 0x85e409000 (for 32 Gbyte ram) is checked.
The 0x100000000 seems to be at adress 00000000000000000,
because when you build the difference between 85e409000 and 100000000 you ends with 32 Gbyte.
#7395gordo999
Zitat von ⇗ Gelip im Beitrag ¶ #7391
What point?
@Gelip....point as in advantage. You have a normal BIOS with visual menus that can be opened with values that can be changed. For example, in my BIOS, I can open the Boot tab and change the boot order easily. Or I can select which devices can boot. Seems to me that the EFI shell requires me to use 32 or 64 bit GUIDs to identify each device then use commands to operate on them.

I can see with a drive mapped as FS0, or whatever it is, I can just use the FS0. But what if I want to turn USB on or off, or turn audio on or off, or do operations on many other devices/controls. First I have to know what is there and what can be changed. With EFI, how do I know what parameters are available and which ones can be changed. Taking a look at the EFI commands, they seem a lot more like an autoexec.bat file or a config.sys file than a BIOS replacement.

Thanks for the shell.

 

Page 494

#7396galagun
Zitat von ⇗ gordo999 im Beitrag ¶ #7395
Zitat von ⇗ Gelip im Beitrag ¶ #7391
What point?
@Gelip....point as in advantage. You have a normal BIOS with visual menus that can be opened with values that can be changed. For example, in my BIOS, I can open the Boot tab and change the boot order easily. Or I can select which devices can boot.


Shell + Bcfg command allow you to add entries to firmware's boot menu, not just enable/disable/delete them or change its order on it.
So far very few machines offer built-in such capability. I know my Dell E6410 can add and modify entries there. But almost all Insyde H20 UEFI driven machines can't. EFI shell bcfg command allows you to do that without having to boot a full liveos to do it.
#7397gordo999
Zitat von ⇗ galagun im Beitrag ¶ #7396
Shell + Bcfg command allow you to add entries to firmware's boot menu, not just enable/disable/delete them or change its order on it.
⇗ @galagun ...thanks for reply. My concern about the EFI shell is whether or not we are reverting to the old Unix text mode. As you know, Unix is the base language in Linux and macOS and Windows has tried to move in that direction to an extent.

I don't understand what the big deal is about Unix. It's an ancient language from the 1970s designed for teletype communication and some of the apps in Linux date back to that era. I am think of the text editors like emacs. I could not believe how old they were and non-intuitive. That's what has turned me off about moving to Linux.

I know Unix is more powerful than DOS and I don't care because I don't have to use it. DOS works fine for me when I need it. However, I  still don't understand the purpose of the EFI shell. I have skimmed through the UEFI standard and I can see where they are going but I don't understand why. They seem to have immersed themselves in Unix and the craziness of object-oriented languages.

For example, a handle in C or C++ is a hex-based number returned by the Windows kernel when an object is defined. It's a very simple concept. However, the folks at UEFI have redefined it to mean something mysterious. Then they talk about protocols, which are similar to the DOS software interrupts, so why the crazy name? A protocol in English is simply a set of rules. What does that have to do with interrupts?

Apparently there is a graphical interface for EFI, is it GOP? The UEFI standard makes it sound like they are replacing firmware (BIOS) but they are not. They are actually re-introducing a DOS-like boot system wherein you can reach a DOS prompt before any OS is loaded. That is definitely handy but nothing you can't do with a boot disk, like a W7 boot disk, which allows you to reach a DOS (command) prompt. In fact, in the past you could start Windows from a DOS prompt, by pointing to the Windows directory and typing winboot, or whatever the command was at the time.

Why did they not just discard Unix and DOS and go straight to a graphical interface, like a mini-Windows environment that would allow you to carry on into an OS if required? Something like powershell would have been preferable to a Unix text-mode interface.

I am afraid the software community is led by super-geeks like Bill Gates, running around in their offices with their pants held up by suspenders and wearing several belts around their waists in case the suspenders break. Is EFI the best they could do? Could they not come up with a new graphical shell that could accomplish everything claimed as an advantage with EFI?

[/rant off]
#7398Gelip
Zitat von ⇗ gordo999 im Beitrag ¶ #7397
However, I  still don't understand the purpose of the EFI shell.

UEFI Shell is something like MS-DOS. You can, for example, edit the boot menu or load device driver (e.g. NTFS or NVME). You can also start the OS manually, e.g. Windows by running the bootmgfw.efi file.

Before, we had MS-DOS and Win9x and today is UEFI Shell and Win10
⇗ UEFI Shell

Gelip has attached files to this post

#7399gordo999
Zitat von ⇗ Gelip im Beitrag ¶ #7398
Before, we had MS-DOS and Win9x and today is UEFI Shell and Win10
⇗ @Gelip ...thanks for explanation and PDF...makes sense.
#7400daniel_kHi ⇗ @Andalu!

Don't remember right now, can you please confirm if you had any issues when you tested the uaspstor.sys on Win7 and which usb-to-sata and usb-to-nvme controller you've tested?
#7401Andalu⇗ @daniel_k

Hi Daniel,
some months have passed since that test (it was July 2020) and I can't remember exactly. I found only one image saved at the time about the RTL9210 NVMe enclosure connected to a PCIEx to USB3.1 card with the ASM3142 chipset (wrongly listed in the device manager as 2142):



As soon as I can I will do the updated tests
#7402daniel_k
Zitat von ⇗ Andalu im Beitrag ¶ #7401
As soon as I can I will do the updated tests

Thanks, but please don't waste your time redoing the tests.

I'm just asking about the reliability of the drivers (disconnection issues or other errors).

#7403Andalu⇗ @daniel_k

I don't use win7 so frequently to be 100% reliable. However, I do remember encountering no errors from using the uaspstor driver. If you know of a specific scenario in which there is a possibility of an issue, I am here to test ;)
#7404kukonosau⇗ @diderius6
Hello. Do you have modify drivers for Win 7 for AMD SATA Controllers? This is normally that I seeing ATA Channels and one Standard AHCI 1.0 Serial ATA? Storage is ATA, but not SATA in device manager.
#7405diderius6⇗ @kukonosau

I have no Sata driver for Win7 and AMD.
Maybe, that a Sata driver, modded for XP, also works under Win7
Dietmar
#7406kukonosau⇗ @diderius6
Thanks. But where is last best driver for XPx64? I need SATA AHCI for Ryzen for Win 7.
#7407daniel_k⇗ @Andalu

No more info needed.
Thanks!
#7408gordo999
Zitat von ⇗ kukonosau im Beitrag ¶ #7406
Thanks. But where is last best driver for XPx64? I need SATA AHCI for Ryzen for Win 7.
⇗ @kukonosau ...I had no problem running W7 on a modern mobo (Asus B360C/CSM, a 300 series chipset). There are no SATA or AHCI problems with W7 as far as I know. My problem was the USB. I got a driver from ⇗ @canonkong .
#7409igor166XPWELL64

Zitat von ⇗ XPWELL64 im Beitrag ¶ #4057
I''m currently working on Intel HDMI Audio for windows xp.

Have you finished modifying the Intel HDMI Audio for Windows XP driver yet?
I opened a ⇗ new separate topic on this issue, tk. the problem is old and many users have
#7410YuriyCN

ENGLISH

Windows XP mod 2021 - system build for the modern PC (edition 21.05.2021)
The information doesn't fit into a forum post - so download the text file and read it in Notepad.

TXT (90 KB) - ⇗ https://yadi.sk/d/DnV0Q40oo7D61A
Backup drivers from TXT (805 МБ) - ⇗ https://yadi.sk/d/LWXV9JLWetKSvA

RUSSIAN

Windows XP мод 2021 - сборка системы для современного ПК (редакция 21.05.2021)
Информация не помещается в форумный пост - поэтому скачайте текстовый файл и читайте в Блокноте.

TXT (101 КБ) - ⇗ https://yadi.sk/d/ErwFkIPMPqBm9g
Бекап драйверов из ТХТ (805 МБ) - ⇗ https://yadi.sk/d/LWXV9JLWetKSvA

 

Page 495

#7411YuriyCN⇗ https://www.youtube.com/watch?v=skzTESTEESA

Starting WinXP x64 with UEFI using Vista loader.
#7412Gelip⇗ @YuriyCN

Zitat von ⇗ YuriyCN im Beitrag ¶ #7411
Starting WinXP x64 with UEFI using Vista loader.

Yep, I did it out a not long ago in this topic: ⇗ WinXP SP2 64-bit in pure UEFI class 3 without CSM
I found an AMD PCIe graphics card that works with WinXP x64 driver even in pure UEFI class 3 mode without CSM

Have a nice day
Beta12 aka Gelip
#7413diderius6Interesting,
what you can do with ram,
Dietmar

Today, we are sharing details around our discovery of Half-Double, a new Rowhammer technique that capitalizes on the worsening physics of some of the newer DRAM chips to alter the contents of memory.Rowhammer is a DRAM vulnerability whereby repeated accesses to one address can tamper with the data stored at other addresses. Much like speculative execution vulnerabilities in CPUs, Rowhammer is a breach of the security guarantees made by the underlying hardware. As an electrical coupling phenomenon within the silicon itself, Rowhammer allows the potential bypass of hardware and software memory protection policies. This can allow untrusted code to break out of its sandbox and take full control of the system.

⇗ https://security.googleblog.com/2021/05/...-hammering.html
#7414ruthanWell, there always would be security holes.. they are as diseases.. you can life completely without it.. and they are nice for hacking some closed Hardware as game consoles or apple HW..
#7415tumagonx
Zitat von ⇗ iyutos im Beitrag ¶ #7182
@Mov AX, 0xDEAD

To add a new CPU instruction into XP kernel - it's hard to imagine, I admire your skills.

What about patching Explorer.exe so that when deleting NTFS Junction through Shift+Delete, it will not delete target files.
Also to add an ability to understand NTFS symlinks natively (though there is a symlink driver for Windows XP by Masatoshi Kimura).
To remove 255 characters limit in Explorer.exe for files and folders...


[OffTopic]
how about a maturer ASLR support? which is more crucial for 32-bit system than pure 64-bit, there are two known open source implementation:
Ozone:
⇗ http://web.archive.org/web/2007073116342...AgentKernel.zip
Wehntrust:
⇗ https://archive.codeplex.com/?p=wehntrust
#7416iyutosOn the other side, a maturer ASLR is more CPU cycles, a little slower load of executables into memory.
That's why we value XP, because of simpler and lesser kerner comparing to NT 6.
Persons who still use XP are "mature wolves", who don't fear viruses neither in PC, nor in life
#7417George KingAnybody can help me to use NVMe drivers in Vista x64? I tried to integrate ported XP NVMe drivers, but without success, I tried also generic for 7. But all the time I got same error "File is corrupted" when booting system. I doesn't matter which one I use, all the time same error. Anybody know how to solve it? If there is working driver for XP, it should run on Vista too.

I also tried ported NVMe driver from Windows 8.1 by ⇗ @daniel_k, but result was same, even if I resign files with SHA1 using same tools as canoncong does. Any idea is welcome

⇗ [REQUEST] Generic NVMe driver for Windows Vista / Server 2008?

[TOOL] POWIS - Powerful Windows Setup - Support Windows Vista, 7, 8.0, 8.1, 10 and their Servers equivalent
⇗ https://forums.mydigitallife.net/threads...p-v1-0-1.83558/

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#7418infuscomus⇗ @George King

did you make sure to integrate ntoskrnl extender along with the NVMe driver? It depends on the extender to work.
#7419George King⇗ @infuscomus

Of course, there must be something with files integrity or similiar problem.

I have created injector of needed files and registry entries for KB2864202 into Vista boot.wim, USB3.x generic driver ported by daniel_k for Vista / 7 works without problem.

I have no idea what should be wrong. Maybe PE Checskum?





Can you please compile this code? I would like to see if it helps.

 
https://gist.github.com/jay/d662cc9615f3e1ffc75e4ae9485da685
[TOOL] POWIS - Powerful Windows Setup - Support Windows Vista, 7, 8.0, 8.1, 10 and their Servers equivalent
⇗ https://forums.mydigitallife.net/threads...p-v1-0-1.83558/

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#7420infuscomus⇗ @George King

can you upload your problematic image for me to have a look at?
#7421George King⇗ @infuscomus Sure, I will build on English Vista Ultimate SP2+ and upload you today. I hope you can manage it.

[TOOL] POWIS - Powerful Windows Setup - Support Windows Vista, 7, 8.0, 8.1, 10 and their Servers equivalent
⇗ https://forums.mydigitallife.net/threads...p-v1-0-1.83558/

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#7422infuscomus⇗ @George King

I patched some NVMe drivers for you.



infuscomus has attached files to this post
#7423George King⇗ @infuscomus I tried them and it still fails with "file is missing or corrupt", even if I resign them.

[TOOL] POWIS - Powerful Windows Setup - Support Windows Vista, 7, 8.0, 8.1, 10 and their Servers equivalent
⇗ https://forums.mydigitallife.net/threads...p-v1-0-1.83558/

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#7424infuscomus⇗ @George King

here is the whole thing like you requested



infuscomus has attached files to this post
#7425George King⇗ @infuscomus Perfect, thanks!

[TOOL] POWIS - Powerful Windows Setup - Support Windows Vista, 7, 8.0, 8.1, 10 and their Servers equivalent
⇗ https://forums.mydigitallife.net/threads...p-v1-0-1.83558/

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/

 

Page 496

#7426George King⇗ @infuscomus

I created post here

 
https://www.win-raid.com/t8967f52-REQUEST-Generic-NVMe-driver-for-Windows-Vista-Server.html#msg145101



I modded Phison and Generic Windows 7 drivers on my own with help of your compiled EMU Extender, but its still doesn't work. Currently only x86 Generic Windows 7 driver seems promissing as system is bootable in VirtualBox. I ordered PCI-e NVMe expansion card and I can try it on real HW in about 5 days.

x64 ntoskrn8.sys missing some ntoskrnl.exe fuctions to get Windows 7 storport.sys depencies green on Windows Vista in Depency Walker

[TOOL] POWIS - Powerful Windows Setup - Support Windows Vista, 7, 8.0, 8.1, 10 and their Servers equivalent
⇗ https://forums.mydigitallife.net/threads...p-v1-0-1.83558/

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#7427infuscomus⇗ @George King

Windows 7 storport.sys is unlikely to work for this.
Try with standard vista storport.sys
#7428YuriyCNENGLISH
Windows XP mod 2021 - system build for the modern PC (edition 06.06.2021)
The information doesn't fit into a forum post - so download the text file and read it in Notepad.
TXT (91 KB) - ⇗ https://yadi.sk/d/k4ilwz5gjKr1jw

RUSSIAN
Windows XP мод 2021 - сборка системы для современного ПК (редакция 06.06.2021)
Информация не помещается в форумный пост - поэтому скачайте текстовый файл и читайте в Блокноте.
TXT (104 КБ) - ⇗ https://yadi.sk/d/xAoSmxRNYaIpkg
#7429George King⇗ @infuscomus I will try it soon on real HW. Tomorrow I should got PCI-e NVMe + 128GB M2 for test on my old desktop. I will see how it goes with 7 storport.sys and and with Vista one too.

[TOOL] POWIS - Powerful Windows Setup - Support Windows Vista, 7, 8.0, 8.1, 10 and their Servers equivalent
⇗ https://forums.mydigitallife.net/threads...p-v1-0-1.83558/

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#7430steregushchyy30Good day to all.
I am collecting new components for a Windows xp computer for old games.
For older games only.
Please tell me which board is the best to buy? At z490 or x570?
#7431infuscomus⇗ @steregushchyy30

From personal experience I would recommend AMD as I can confirm it works with the proper patches.
#7432diderius6⇗ @steregushchyy30

Try to find an ASRock Fatal1ty Z370 Gaming K6
because it has drivers for everything for XP

Dietmar
#7433steregushchyy30
Zitat von ⇗ diderius6 im Beitrag ¶ #7432
@steregushchyy30

Try to find an ASRock Fatal1ty Z370 Gaming K6
because it has drivers for everything for XP

Dietmar

Thanks for the answer. If there are ALL drivers for ASRock, does it mean that there are drivers for any Z370 motherboard? Can I have a link?
#7434diderius6⇗ @steregushchyy30

As far as I remember, this is the only Z370 board, with all drivers for XP.
Now it is not sold any longer but on Ebay you can find
Dietmar
#7435steregushchyy30
Zitat von ⇗ diderius6 im Beitrag ¶ #7434
@steregushchyy30

As far as I remember, this is the only Z370 board, with all drivers for XP.
Now it is not sold any longer but on Ebay you can find
Dietmar


Where can you download these drivers? They are not on the official website.
#7436diderius6⇗ @steregushchyy30

Here in this forum,

also at

⇗ https://forums.mydigitallife.net/threads...hardware.81607/

and at

⇗ https://www.zone94.com/downloads/softwar...ntegral-edition

Dietmar
#7437zuulI have spent ages researching, which GPU is the fastest/strongest supported by Windows XP.

I concluded that Geforce 980 ti is it, since it's the latest one that has Nvidia drivers for it. It's the official Windows XP drivers v. 344 to 368, that can be used for 980 ti. They need a tiny and easy .ini text mod to work.

Do you all agree that it's virtually impossible to make the Geforce 1000 / 2000 / 3000 series work under Windows XP?
#7438infuscomus⇗ @zuul

Zitat von ⇗ zuul im Beitrag ¶ #7437
Do you all agree that it's virtually impossible to make the Geforce 1000 / 2000 / 3000 series work under Windows XP?


Yeah, it's pretty much impossible at this time, Unless ⇗ @Mov AX, 0xDEAD happens to make a major breakthrough with his ntoskrnl extender and get WDDM working in XP, it's not going to happen.
#7439gordo999
Zitat von ⇗ zuul im Beitrag ¶ #7437
Do you all agree that it's virtually impossible to make the Geforce 1000 / 2000 / 3000 series work under Windows XP?
⇗ @zuul ...would not say impossible but XP ntoskrnl has several functions missing that are required by the 1000 series drivers.
#7440gordo999May be a bit off topic but the experts in this thread are familiar with XP BIOS. If the CMOS battery is dead for an extended period of time, because the mobo has not been used for a while, can that alter the BIOS data enough for it to intermittently have trouble reading the proper memory configuration at boot? I know the problem is often due to a bad memory stick but I'm thinking of re-flashing the BIOS to make sure.

The board is a 10year old Intel DQ35JO with an ICH9 chipset and it has jumpers you can set to go into maintenance mode. My background is in hardware but this RAM problem seems to be more than a bad memory stick.

 

Page 497

#7441infuscomus⇗ @gordo999

I would imagine having a dead CMOS battery would cause strange behavior from the hardware.

I think it would be best to play it safe and replace the battery.
#7442diderius6⇗ @gordo999

Put the ram in another slot and try again.
Some ram slots gets corroded with time,
especially on notebooks
Dietmar
#7443skullteriaThe problem is not ntoskrnl. The really problem is win32k, what need implement funtions to handle wddm drivers.
#7444gordo999
Zitat von ⇗ infuscomus im Beitrag ¶ #7441
I would imagine having a dead CMOS battery would cause strange behavior from the hardware.I think it would be best to play it safe and replace the battery.
⇗ @infuscomus ...I did replace it immediately but after replacing it the mobo began behaving oddly. I had to reset the BIOS using the maintenance feature on the Intel board and that returned things to normal. However, every so often, during boot, I get three beeps, meaning there is a problem with RAM.

When I insert my RAM sticks in a certain order, it is stored in BIOS, in the CMOS section that is backed up by battery. Therefore, if the battery dies, that configuration is lost and has to be learned again after the battery us replaced. Normally, that should not be an issue, unless the CMOS memory is somehow not resetting properly after the battery is changed.

If I go into maintenance mode on the Intel mobo, I can reset the BIOS to the default values stored in EEPROM. But what if the EEPROM charges are weak in some sections and get intermittent, producing faulty code for checking the RAM stick order? That would mean I need to re-flash the default BIOS. At least, that's my reasoning.

I am not clear on the difference between EEPROM storage and CMOS storage at this point. Need to read more but I though someone who understands BIOS data may have encountered this already.
#7445gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #7442
Put the ram in another slot and try again
⇗ @diderius6 ...Dietmar, I cleaned the RAM stick contacts and firmly reseated them all. I have 2 x 2Gb sticks and 2 x 1Gb sticks. The 2 Gb sticks are Kingston sticks so I worked only with them. If I put one stick in DIMM 0 it works fine and if I put the other one in DIMM 0 it works fine. However, when I populate both DIMM 0 slots in Channel A, sometimes I get the 3 beeps, telling me I have a memory problem in low memory.

After cleaning all contacts, the beeps were gone and it complained only of a change in memory. Then I filled the DIMM 1 slots in Channel B with the 2 x 1 Gb sticks. It has been working fine for a couple of days, reporting full 6 Gb memory, but it did that a month ago before starting losing the memory sticks in BIOS.
#7446gordo999
Zitat von ⇗ skullteria im Beitrag ¶ #7443
The problem is not ntoskrnl. The really problem is win32k, what need implement funtions to handle wddm drivers.
⇗ @skullteria ... I claimed it was ntoskrnl because when I checked all the drivers using 'depends', it indicates several functions missing in XP ntoskrnl for the Nvidia GT 1030 driver. I presume those functions will have to be inserted in XP ntoskrnl or another ntoskrnl will have to be used.

Depends did not indicate missing functions in win32k.sys, only in ntoskrnl.
#7447Mov AX, 0xDEADHi Gordo

Zitat von ⇗ gordo999 im Beitrag ¶ #7446

Depends did not indicate missing functions in win32k.sys, only in ntoskrnl.


⇗ https://docs.microsoft.com/en-us/windows...el-architecture
⇗ https://en.wikipedia.org/wiki/Windows_Display_Driver_Model

Yes, problem is win32k, it is shared with directx kernel / gdi32.dll / user32.dll
#7448skullteria
Zitat von ⇗ gordo999 im Beitrag ¶ #7446
Zitat von ⇗ skullteria im Beitrag ¶ #7443
The problem is not ntoskrnl. The really problem is win32k, what need implement funtions to handle wddm drivers.
@skullteria ... I claimed it was ntoskrnl because when I checked all the drivers using 'depends', it indicates several functions missing in XP ntoskrnl for the Nvidia GT 1030 driver. I presume those functions will have to be inserted in XP ntoskrnl or another ntoskrnl will have to be used.

Depends did not indicate missing functions in win32k.sys, only in ntoskrnl.



Because drivers calls are internal. All workflow of WDDM is internal and reside on win32k/gdi32 and dxgkrnl. Watchdog driver is envolved too. Ntoskrnl missing functions are minimal! We don't forget CDD (Cannonical Display Driver) is need by WDDM and it is handled by win32k.
#7449gordo999
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #7447
Yes, problem is win32k, it is shared with directx kernel / gdi32.dll / user32.dll
⇗ @Mov AX, 0xDEAD ...thanks for info. There are still several functions missing in ntoskrnl and until it is patched, it seems we won't be able to do anything about win32k.

I am running a GT 1030 on XP but it is running only with VGA drivers. The required non-directx graphics are very good and stable and the DirectDraw tests work in dxdiag, but not 3D. I was wondering which driver they are using but Device Manager lists no driver. In the registry, under the GT 1030 it claims it is using the nv4_disp driver, which I think is from the GT 730 card. However, it says in the same section that it is not VGA compatible.

If I search under PCI\VEN_10DE&DEV_1D01, the GT 1030, the search stops at a display driver class with GUID {4D36E968-..........}\0000. The only entry there is coinstaller32 and it's values is nvdispgenco3236881.dll. It seems the GT 1030 is using the GT 730 driver.

I am presuming the 1000-series WDK drivers are different than the drivers used on the GT 730. I need to read the articles at the links you provided but could you offer some information as to the exact problem?  Thanks.

ps. I am using the GT 1030 because I use the same computer for XP, W7, and W10. I need the GT 1030 for more advanced games on W7/W10 and switch back to the GT 730 on XP for games.
#7450gordo999
Zitat von ⇗ skullteria im Beitrag ¶ #7448
Because drivers calls are internal. All workflow of WDDM is internal and reside on win32k/gdi32 and dxgkrnl. Watchdog driver is envolved too. Ntoskrnl missing functions are minimal! We don't forget CDD (Cannonical Display Driver) is need by WDDM and it is handled by win32k.
⇗ @skullteria ...thanks for info. I miss softice. When I used it on 32-bit systems I could trace anywhere in ring 0, right through win32k, if required. With softice, when you encounter a SYSENTER, it steps right into ring 0. I have not found a debugger since that can do that.

I worked on a DX app with softice and needed to get into the directx code. Since the mouse on a directx app is not the windows mouse, you cannot break on it using a standard mouse breakpoint. I found that I could set a BP on the Windows mouse driver and break on it, then I started tracing through ring 0 when the mouse driver called into it.

You can trace to the directx code from the entry point but that code only sets up the DX app, and when it finishes, you find yourself in the Windows message loop. It's tough to follow all the messages in the loop to find where the entry to the DX app is found but if you come in the back way, through the Windows mouse driver, and ring 0, you can find where the message loop enters the DX code. Then it's a matter of tracing through the Dark Code Woods as +Ork used to call them..

That's what I'd like to try with win32k sys and the DX module. I have been meaning to get softice running on XP x86 but there are video driver issues to be overcome and I am sure there are issues with drivers as related to the newer chipsets.
#7451gordo999
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #7447

⇗ https://docs.microsoft.com/en-us/windows...el-architecture
⇗ https://en.wikipedia.org/wiki/Windows_Display_Driver_Model

Yes, problem is win32k, it is shared with directx kernel / gdi32.dll / user32.dll

⇗ @Mov AX, 0xDEAD ....after looking briefly at the block diagram at your first link, it appears that win32k.sys is operating as it usually does. User mode apps go through gdi32.sys, the user-mode interface, then through win32k.sys, which is kernel mode. The user-mode display driver is not related to win32k.sys at this point. However, the Nvidia application needs win32k.sys to render other graphics information.

It appears the user-mode display driver indicated in the block diagram is only related to 3D.

Please consider the following. I've had the GT 730 driver running successfully on XP with games. The games were the Myst series, which were not in 3D. However, the games ran well after I installed the intelppm.sys modded driver with the associated modded hal. Before installing the intelppm/hal mods, the games would not run at all and I had trouble running browsers like Firefox.

I just ran the original Myst game using ScummVM with the GT 1030 and it runs OK. A bit grainy at 1920 x 1080, but I could live with that. I only use XP for the older games and use W7 for more modern games. I guess the point is to be able to run 3D games on XP.

The GT 730 was developed long after Vista and its drivers must be based on the WDDM model since the same card runs on W7 and W10. I don't remember how I got the GT 730 running on XP, I do remember loading a different Nvidia package. Obviously since my XP is 32-bit, and my W7 is 64-bit, I had different drivers installed for each OS, but they were basically the nv4_disp drivers. I wonder if Nvidia created different 3D drivers for 32-bit but I don't see anything like that in the Nvidia driver package.

I may be missing something here but according to the block diagram at your first link, win32k.sys is not involved with 3D rendering. It is purely a kernel-mode graphics driver and 3D rendering is done only by direct3D. The fact that the GT 730 and the GT 1030 both run on XP without 3D seems to suggest that is true.

The block diagram suggests that the output of win32k.sys, direct3D runtime, and the output of Open GL as related to gdi32.sys, are fed to dxgkrnl.sys, the direct x kernel subsystem driver. The way I see it, the direct3d runtime is rendering the nvidia driver to 3D, gdi32.sys is rendering Open GL, and win32k.sys is rendering any other graphics features, all being mixed by dxgkrnl.sys.

I presume that Nvidia knew about those issues with XP and if they ever had games running in 3D on XP, they must have had a way of doing it. Direct3D has been available since W95 so it should be available in XP. At least, the XP Dxdiag untility  indicates a 3D capability for XP.
#7452gordo999
Zitat von ⇗ skullteria im Beitrag ¶ #7448
Because drivers calls are internal. All workflow of WDDM is internal and reside on win32k/gdi32 and dxgkrnl.
⇗ @skullteria  ...according to the WDDM block diagram at link 1 provided by ⇗ @Mov AX, 0xDEAD, the 3D drivers are in user mode and they are rendered by direct3D. Other graphic information from the application are rendered separately by win32k.sys. Then they are mixed by the kernel mode dxgkrnl driver.

If win32k.sys was not running separately, I would not be able to run my GT 730 and GT 1030 in XP. There is no indication in the block diagram that win32k is involved with 3D rendering, only the direct3D runtime driver, running in user-mode.

Zitat von ⇗ skullteria im Beitrag ¶ #7448
Ntoskrnl missing functions are minimal!
Here are the missing functions in ntoskrnl when I run the GT 1030 driver, nvlddmkm.sys:

CmRegisterCallbackEx
EtwRegister
EtwUnregister
EtwWrite
IoConnectInterruptEx
IoDisconnectInterruptEx
IoInitializeWorkItem
IoQueueWorkItemEx
IoSizeofWorkItem
IoUninitializeWorkItem
KdRefreshDebuggerNotPresent
KeAcquireGuardedMutex
KeInitializeGuardedMutex
KeInitializeThreadedDpc
KeInvalidateAllCaches
KeQueryActiveProcessorCount
KeReleaseGuardedMutex
MmAllocatePagesForMdlEx
PoRegisterPowerSettingCallback
PoUnregisterPowerSettingCallback
RtlCmDecodeMemToResource
_chkstk

I have not had time to look through these yet to see what they do.
#7453skullteria
Zitat von ⇗ gordo999 im Beitrag ¶ #7452
Zitat von ⇗ skullteria im Beitrag ¶ #7448
Because drivers calls are internal. All workflow of WDDM is internal and reside on win32k/gdi32 and dxgkrnl.
@skullteria ...according to the WDDM block diagram at link 1 provided by @Mov AX, 0xDEAD, the 3D drivers are in user mode and they are rendered by direct3D. Other graphic information from the application are rendered separately by win32k.sys. Then they are mixed by the kernel mode dxgkrnl driver.

If win32k.sys was not running separately, I would not be able to run my GT 730 and GT 1030 in XP. There is no indication in the block diagram that win32k is involved with 3D rendering, only the direct3D runtime driver, running in user-mode.

Zitat von ⇗ skullteria im Beitrag ¶ #7448
Ntoskrnl missing functions are minimal!
Here are the missing functions in ntoskrnl when I run the GT 1030 driver, nvlddmkm.sys:

CmRegisterCallbackEx
EtwRegister
EtwUnregister
EtwWrite
IoConnectInterruptEx
IoDisconnectInterruptEx
IoInitializeWorkItem
IoQueueWorkItemEx
IoSizeofWorkItem
IoUninitializeWorkItem
KdRefreshDebuggerNotPresent
KeAcquireGuardedMutex
KeInitializeGuardedMutex
KeInitializeThreadedDpc
KeInvalidateAllCaches
KeQueryActiveProcessorCount
KeReleaseGuardedMutex
MmAllocatePagesForMdlEx
PoRegisterPowerSettingCallback
PoUnregisterPowerSettingCallback
RtlCmDecodeMemToResource
_chkstk

I have not had time to look through these yet to see what they do.





I will try explain to you:
WDDM work on "top" of XDDM architecture. For Directx Applications, Microsoft seperate calls to user mode instedead Kernel mode, like XDDM does. The XDDM use a pair of drivers to work: miniport and display driver.
Miniport: responsable to control the device (GPU), and translate all framebuffer calls to device to perform ouput.
Display Driver: responsable to communicate and translate GDI and Directx calls to win32k and other situations, perform call directx to miniport, like change resolution, present the display and etc.
Both drivers (the pair) works on kernel mode. Miniport call directx videport and provide callbacks to manipulate device and Display Driver comunnicate with Win32k to perform GDI and Directx things.
On WDDM, exists Miniport, Display Driver and User Mode Driver.
Miniport on WDDM: communicate with dxgkrnl (indirectx, perform a I/O call), start, stop and control device, and provide callbacks to perform directx and gdi (on WDDM 1.1 or above) things.
Display Driver: perform a sofware (by cpu) GDI things on WDDM 1.0 and on WDDM 1.1, perform hardware accelarated GDI. Call by I/O request the dxgkrnl to perform presentation of GDI things, like resolution and others. On WDDM, it is provided by OS, a genneric driver called "Cannonical Display Driver (CDD)"
User mode driver: Well, this is the part dark for now. It seem perform all directx thins on user mode, and its call probably dxgkrnl or gdi, because gdi export all callbacks provided by miniport.
Win32k has internal implementation to handle miniport callbacks to GDI and handle too directx callbacks from Dxg (directx driver) on XDDM
ON wddm, win32k call dxgkrnl to get callbacks table from miniport driver and additionals from dxgkrnl and pass to gdi by syscall table. And, win32k handle cdd callback tables.

So, it's envolves several and deep implementation. Need reompile win32k complelety, and gdi32 and user32 too. It is very very very hard.
Ntoskrnl missing are eaty to fix. Win32k implementation no.
#7454gordo999
Zitat von ⇗ skullteria im Beitrag ¶ #7453
I will try explain to you:
⇗ @skullteria ...thanks for detailed explanation. I need time to understand what you wrote.
#7455dencorso
Zitat von ⇗ diderius6 im Beitrag ¶ #7394
Long time ago I use DOS, for to see, that information survives reboot in ram and I boot complete(!) XP loaded to ram before, via reboot.

⇗ @diderius6:
Did you ever post a more detailed report of it, or even created a tutorial about it as you used to do way back when? If so, can you give me a link or point me to a .pdf document on it? I'm quite interested in "reboot/reset attacks" but all info I was able to gather up to now refers to "cold boot attack"s, which require cooling on DDR3/4, so are cumbersome for using as a way to reprograming BIOS tables without patching the BIOS. BTW, I bet you already know it, but this article is quite interesting: "Practical Cold boot attack on IoT device - Case study on Raspberry Pi -" by Yoo-Seung Won et al., 2020 IPFA...

 

Page 498

#7456diderius6⇗ @dencorso

In 2004-2005 I loaded a complete XP SP1 with a size of about 2 Gbyte to ram.
After reboot I compare this XP in ram bit by bit with a DOS tool with the original XP and was so much surprised,
that not a single bit has changed.

My aim was to boot this XP from ram,
but at that time I had no ram boot driver for to show this XP in ram as a fat32 harddisk.
Later in summer 2005 I managed to build a ntbootdd.sys driver together with the 32 MB Microsoft ramdisk,
for to boot a mini XP with about 26 MB, loaded up to ram.
I succeed to load this XP image from USB stick via DOS also to ram (without any USB in Bios) and reboot this mini XP in ram.

For reboot the compi, ram was less than a second without power, I think it was DDR2 or even older).
I am even not sure, if you restart a compi, that at any time the ram is without power.
This is like a mix between cold and warm reboot.

With the modded acpi.sys from Vista from ⇗ @infuscomus I make a test, if the loaded tables from another(!) acpi.sys can survive in ram for minutes(!) without any power and if they can be used from this new acpi.sys.
They can, as I showed here in the forum. I also put some special Hex values to ram with Windbg and check them after reboot.
I found no size limit. Always I found those stored Hex values in ram again. I make some crazy checks for to make sure,
that not Windbg itself stores thoses Hex values. Those Hexvalues really survive a cold reboot in DDR4 ram
Dietmar

PS: I have no document or tutorial about this. The most crazy hard work for me, was to translate and modify the ntbootdd.sys (Source Code) from NT4 to XP SP1.
If you have the PDF from "Practical Cold boot attack on IoT device - Case study on Raspberry Pi -" by Yoo-Seung Won et al., 2020 IPFA..." can you please send it to me, because I do not get.
#7457Bumpy⇗ https://dr.ntu.edu.sg/bitstream/10356/14...01_IPFA2020.pdf

greetings
#7458mockingbirdCan someone please have a look at my DSDT?  My motherboard is an AsRock B250M Pro4.   Everything installed fine (except for a couple of devices, one which I think I can get rid of by using a different acpi.sys and the other the MEI which I haven't found an XP driver for), but the system locks on reset.

I have used modified DSDTs before with Linux, I'm not sure how to swap them for Windows.

[[File:DSDT2.zip]]



mockingbird has attached files to this post
#7459infuscomus⇗ @mockingbird

I've found that grub2 can work for modifying the DSDT in RAM for XP.
What modifications are you looking for?
#7460Andalu
Zitat von ⇗ mockingbird im Beitrag ¶ #7458
Can someone please have a look at my DSDT?  My motherboard is an AsRock B250M Pro4.  Everything installed fine (except for a couple of devices, one which I think I can get rid of by using a different acpi.sys and the other the MEI which I haven't found an XP driver for), but the system locks on reset.

If you refer to the system block on the restart screen, I had the same issue on the same board using a keyboard connected to the PS/2 port.
Restarting works correctly with the USB keyboard.
#7461mockingbird
Zitat von ⇗ Andalu im Beitrag ¶ #7460
Restarting works correctly with the USB keyboard.

Yes! Thank you.  Brilliant...  I guess I can live without restart, because I intend to use this with an old KVM that needs to be shared with other computers that require a PS/2 (AT) keyboard.

Zitat von ⇗ infuscomus im Beitrag ¶ #7459
@mockingbird
I've found that grub2 can work for modifying the DSDT in RAM for XP.
What modifications are you looking for?

Ah, yes, of course...  Grub acts as an intercessor and pre-loads the modified DSDT before Windows loads...  Got it.  I guess I would like the PS/2 functionality not to break restart.

Is it also worthwhile fixing compilation errors with the DSDT?  The system is working fine otherwise.
#7462infuscomus⇗ @mockingbird

From what I've experienced fixing compilation errors doesn't seem to do all that much, at least for XP. I'm still a novice at this though.

so what exactly do you want to achieve by modifying the DSDT, is it just being able to restart?
#7463mockingbirdYessir, that's the only glitch -- it freezes on restard with a PS/2 device plugged in.  Is removing the MEI device also achievable by hacking the DSDT.  It has no XP driver (though I am tempted to hack the Windows 10 driver to see if it works)...

Tomorrow I will use a different acpi.sys because I think acpi2015 gives the unknown device INTACPI0331a or something like that.
#7464infuscomus⇗ @mockingbird

OK, give this one a try.



infuscomus has attached files to this post
#7465Andalu⇗ @mockingbird

if it can be useful to save you some time: I have already tried all available versions of the acpi.sys driver but none of them solved the restart problem on that crazy board.
Only as a bit note: the restart works properly if you install XP as 'uniprocessor pc'
I also tried to make some changes to the dsdt table but again without success. I hope you or ⇗ @infuscomus can solve it.
#7466gordo999
Zitat von ⇗ mockingbird im Beitrag ¶ #7458
the system locks on reset.
⇗ @mockingbird ...could you describe that in more detail? A reset, to me, is related to a separate button on some computer systems that perform a cold boot. It was called a restart button but these days they same thing seems to be accomplished by holding the start button for 4 seconds or more.

When does your problem occur? Are you able to boot into XP then have the problem on restart? Can you see a PS/2 mouse driver and a USB mouse driver in Device Manager?

There may also be a problem with your USB drivers. Maybe they are not being reloaded correctly after a reboot and freezing the system. I had a problem with a USB wifi connector that was being seen by the system as a USB hard rive. It had no operating system, of course, and my BIOS was set to recognize USB devices at boot time. Unplugging the wifi USB device solved the problem.

I have the B360M mobo and I recall discussing the two boards in the past with ⇗ @Andalu (hi, Andalu). I have two inputs for PS/2, one for keyboard and one for mouse, and I use a USB to PS/2 adapter to connect. I can run both PS/2 and USB devices at the same time with no problem.
#7467mockingbird
Zitat von ⇗ infuscomus im Beitrag ¶ #7464
@mockingbird

OK, give this one a try.

Thank you.  I followed your instructions ¶ here, and I get a BSOD when starting XP having to do with the BIOS not being fully ACPI compliant and an error code of 0x000000A5.

Don't break your head over it, it's only a minor inconvenience, and I'll probably be switching over to a Gigabyte B365M-DS3H with an i5-9400F at some point, when this AsRock board fails, like I know it is going to (it's a third RMA).
#7468gordo999
Zitat von ⇗ mockingbird im Beitrag ¶ #7467
I get a BSOD when starting XP having to do with the BIOS not being fully ACPI compliant and an error code of 0x000000A5
⇗ @mockingbird The 0xA5 error is usually because your acpi.sys is not the right version for your system. Any chance it got replaced during work you were doing?
#7469infuscomus⇗ @mockingbird

Does XP boot fine without an A5 BSOD if you don't use grub2?

can you post a screenshot of the A5 BSOD? it might give more info about the problem. perhaps I did not recompile the DSDT correctly.
#7470mockingbird
Zitat von ⇗ infuscomus im Beitrag ¶ #7469
@mockingbird

Does XP boot fine without an A5 BSOD if you don't use grub2?

can you post a screenshot of the A5 BSOD? it might give more info about the problem. perhaps I did not recompile the DSDT correctly.

Ok, I will do this ASAP...  I am just re-installing Windows XP on the machine with a different ACPI.SYS so I had to re-format the USB stick...

I suppose you mean to say, does it run ok if I boot it with agFM, but without interposing the custom DSDT...  Got it.  Will get back to you on this.

 

Page 499

#7471meklini make videos for my windows tweaks and using isos and drivers from here at youtube.com/indicator27 and for windows xp i am unable to get any usb drivers to work on asus b550m-a wifi with ryzen 3600x tho i can use ps2 keyboard to mess around on desktop, anyone know anything?

i also using archive.org/details/xp-intel-amd-2020-32-bit-en-550-mb made in italy iso and have to press F7 when the installer starts up check the videos i made of it, no usb mouse yet tho and not sure which driver to use/edit
#7472meklinRE: post #1108 by diderius

may be late reply but studying the procmon sysinternal tool to see when plugplay svc loads each .sys and .inf in my studies has shown a main usb driver being loaded first
#7473infuscomus⇗ @meklin

what happens if you don't press F7 during install?
#7474mockingbird
Zitat von ⇗ infuscomus im Beitrag ¶ #7469
@mockingbird

Does XP boot fine without an A5 BSOD if you don't use grub2?

can you post a screenshot of the A5 BSOD? it might give more info about the problem. perhaps I did not recompile the DSDT correctly.

I apologize for the delay sir.

The answer to your question whether the system boots to Windows with AgFM without loading the custom DSDT?  Yes.

Please see attached screenshot for the BSOD with your custom DSDT.

Thanks again.  

mockingbird has attached images to this post
imagepreview

IMG_1670.JPG

⇗ download

#7475infuscomus⇗ @mockingbird

OK, try this one.

⇗ @diderius6

would A5 0x03 require an acpi.sys patch?

 

 

infuscomus has attached files to this post 
#7476diderius6⇗ @infuscomus
Bsod 0xC0140004 should be gone with acpi.sys from outerspace ).
But crazy DSDT can make XP not to start with any acpi.sys
Dietmar
#7477YuriyCN

ENGLISH:

Windows XP mod 2021 - system build for the modern PC (edition 31.07.2021)
The information doesn't fit into a forum post - so download the text file and read it in Notepad.
TXT (92 KB) - ⇗ https://yadi.sk/d/iQlnfhxzgdEYCA

Updated set of 4 browsers for Windows XP from July 31, 2021
- 360EE v12 - clone Chrome 78 (recommended browser, build December 2020)
- Modernized version of the TOR browser (2 versions - October 2020 and June 2021)
- Modernized version of classic Opera v12 (build June 2021)
- Basilisk browser analogue of FireFox (2 versions - September 2020 and July 2021)
Download (438 MB) - ⇗ https://yadi.sk/d/vVYzQSpr3JNyLw

Friezes in browsers
On some new systems, friezes are observed when using browsers. To troubleshoot problems, measure 2D performance - a videocard must provide at least 1000 units and use modified files hal.dll, intelppm.sys (correct working timer) - ⇗ https://yadi.sk/d/aAMdALaTUTOLSw

RUSSIAN:

Windows XP мод 2021 - сборка системы для современного ПК (редакция 31.07.2021)
Информация не помещается в форумный пост - поэтому скачайте текстовый файл и читайте в Блокноте.
TXT (105 КБ) - ⇗ https://yadi.sk/d/bU75wHOMCwNm0w

Обновлённый комплект из 4-х браузеров для Windows XP от 31 июля 2021 года
- 360EE v12 - хромоклон на 78 движке работоспособный под WinXP (рекомендуемый браузер, сборка декабрь 2020 года)
- Модернизированная версия TOR-браузера (2 версии - октябрь 2020 и июнь 2021 года)
- Модернизированная сборка классической Opera v12 (сборка июнь 2021 года)
- Браузер Basilisk аналог FireFox (2 версии - сентябрь 2020 и июль 2021 года)
Скачать (438 МБ) - ⇗ https://yadi.sk/d/vVYzQSpr3JNyLw

Фризы в браузерах
На некоторых новых системах наблюдаются фризы при использовании браузеров. Для устранения проблем произведите замер 2D производительности - видеокарта должна обеспечить не менее 1000 единиц, а также используйте модифицированные файлы с фиксом таймера hal.dll, intelppm.sys скачанные по ссылке - ⇗ https://yadi.sk/d/aAMdALaTUTOLSw
#7478mockingbird
Zitat von ⇗ infuscomus im Beitrag ¶ #7475
@mockingbird

OK, try this one.

@diderius6

would A5 0x03 require an acpi.sys patch?

Hello, thanks but the same thing happens with that one.

Perhaps you want the DSDT dumped in a different way?  The one you are editing was dumped with R/W Everything.
#7479infuscomus⇗ @mockingbird

try using acpidump from the most recent iASL download.

acpidump -b

then send the .dat files it spits out.
#7480George KingXP2ESD v1.6 coming soon. Now with posibility to build multilanguage ISO


This is how it looks






On MultiLanguage AIO can't be used autounatted.xml otherwise Language selector screen is hidden. There is no way to skip product key + eula on these builds.


After that only one thing I would like to achieve for 1.7 remaining - make upgrade installation possible using Windows 8.0 setup engine, but this should be hard and it should require additional setup.exe patching or develop custom script to do it manualy, but I need to dig around it to see how whole process works

[TOOL] POWIS - Powerful Windows Setup - Support Windows Vista, 7, 8.0, 8.1, 10, 11 and their Servers equivalent
⇗ https://forums.mydigitallife.net/threads...p-v1-0-1.83558/

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#7481genieautravail⇗ @YuriyCN

A member of the MSFN forums has made his own repack of the 360 Browser with many enhancements.

⇗ https://msfn.org/board/topic/182876-360-extreme-explorer-modified-version/#comments

On my side and for my convenience, I'm using a mix of the russian repack and the new.
#7482mockingbird
Zitat von ⇗ infuscomus im Beitrag ¶ #7479
@mockingbird
try using acpidump from the most recent iASL download.
acpidump -b
then send the .dat files it spits out.
Again, sorry for the delay.
Dumped with the 20190405 build.

mockingbird has attached files to this post
#7483infuscomus⇗ @mockingbird

alrighty, try this one.

please screenshot the A5 BSOD if any.



infuscomus has attached files to this post
#7484mockingbird
Zitat von ⇗ infuscomus im Beitrag ¶ #7483
@mockingbird

alrighty, try this one.

please screenshot the A5 BSOD if any.

Please see attached screenshot of the BSOD.

The only thing I can think of is that I am renaming it to a .bin extension.  Should I keep it at the default filename of dsdt.aml?

mockingbird has attached images to this post  ⇗ IMG_1673.JPG
#7485infuscomus⇗ @mockingbird

I doubt renaming it from dsdt.aml to dsdt.bin would make a difference, but you might as well try anyway.

⇗ @diderius6

This DSDT is frustrating! if I disassemble and reassemble with the version it was assembled with - 20160422 - it'll disassemble but it won't reassemble! and the most recent iASL version doesn't even recognize the file as an ACPI table!
annoying!
any ideas?

 

Page 500

#7486diderius6⇗ @infuscomus

Make a try with downloading the very first Bios for this board.
Extract its DSDT,, disassemble it and compare it with the frustrating new DSDT.
May be you find, what makes this crazy behavior.
You also can integrate the old DSDT in the new Bios.
But this is a risk
Dietmar
#7487infuscomus⇗ @diderius6

OK, thanks
I'll grab the DSDT from the oldest BIOS I can find for this board.

-------------------

Just a reminder to myself, the DSDT GUID is C118F50D-391D-45F4-B3D3-11BC931AA56D

-------------------

⇗ @mockingbird

OK, try this one, post BSOD if any.



infuscomus has attached files to this post
#7488mockingbirdThanks for your continued attempts.  Attached is the BSOD.



mockingbird has attached images to this post  ⇗ IMG_1674.JPG
#7489gordo999500 pages...is that a record? Lot of good information contained within.
#7490infuscomus⇗ @mockingbird

OK, hopefully this one doesn't BSOD.



infuscomus has attached files to this post
#7491mockingbird
Zitat von ⇗ infuscomus im Beitrag ¶ #7490
@mockingbird

OK, hopefully this one doesn't BSOD.

Please see attached BSOD.  Thanks.

mockingbird has attached images to this post  ⇗ IMG_1675.JPG
#7492infuscomus⇗ @mockingbird

Thanks.

⇗ @diderius6

looking at all the BSODs, the control method in hex is always 494e495f which is _INI

any tips for how we might proceed from here?
#7493AmirHello everyone. I have one problem when installing Windows XP on a Packard Bell EasyNote entf71bm laptop. I solved all the problems, but after downloading all the files, the laptop turns off.
#7494infuscomus⇗ @Amir

your post is a bit vague, have you charged the battery?
#7495Amir
Zitat von ⇗ infuscomus im Beitrag ¶ #7494
@Amir

your post is a bit vague, have you charged the battery?


Yes.
#7496infuscomus⇗ @Amir

well, can you describe a bit more what exactly it is you were trying to do right before it turned off?
#7497George KingIf anybody want to try my latest ISO builded by upcoming XP2ESD v1.6

This ISO is created from all Windows XP SP3 ISOs - I used 131 XP ISO to build this insane multilanguage AIO. All ported drivers are included in all images. This ISO is really universal. HALs are automatically patched to current RAM amount, so if you have installed >= 4GB RAM then is applied patch.

https://ulozto.net/file/o0O8ZYefw97R/winxp-aio-esd-iso#!ZGDkBGR1MTWuBQtjZwtmZQxjL2HlHwp5qmZjZRt1qJWGLwNj


WinXP_AIO_ESD.iso SHA1

A15294A328A0BF397E33405102A6DBBB60FB513E




How to use it?
1) Download ISO
2) Download Rufus
3) Create bootable USB using Rufus
4) Download compressed DriverPacks and place them in USB\driverpacks, you can place any *.7z compressed drivers here
5) Boot from USB and install on first partition

TIP: If your PC needs patched ACPI.sys, simply place patched file into USB\sources\$OEM$\$$\system32

NOTE: It's still testing build, but many things were fixed and hopefully it's a bug free ISO



ISO install.esd content

Details for image : F:\XP2ESD\_output\sources\install.esd

Index : 1
Name : 1. Windows XP Home (ar-SA)
Description : Windows XP Home SP3 (ar-SA)
Size : 2 815 176 804 bytes

Index : 2
Name : 2. Windows XP Professional Volume License (ar-SA)
Description : Windows XP Professional Volume License SP3 (ar-SA)
Size : 2 861 017 811 bytes

Index : 3
Name : 3. Windows XP Professional (ar-SA)
Description : Windows XP Professional SP3 (ar-SA)
Size : 2 861 126 200 bytes

Index : 4
Name : 4. Windows XP Home N (cs-CZ)
Description : Windows XP Home N SP3 (cs-CZ)
Size : 2 740 413 498 bytes

Index : 5
Name : 5. Windows XP Home (cs-CZ)
Description : Windows XP Home SP3 (cs-CZ)
Size : 2 809 069 747 bytes

Index : 6
Name : 6. Windows XP Professional N Volume License (cs-CZ)
Description : Windows XP Professional N Volume License SP3 (cs-CZ)
Size : 2 788 843 345 bytes

Index : 7
Name : 7. Windows XP Professional N (cs-CZ)
Description : Windows XP Professional N SP3 (cs-CZ)
Size : 2 788 909 714 bytes

Index : 8
Name : 8. Windows XP Professional Volume License (cs-CZ)
Description : Windows XP Professional Volume License SP3 (cs-CZ)
Size : 2 844 914 428 bytes

Index : 9
Name : 9. Windows XP Professional (cs-CZ)
Description : Windows XP Professional SP3 (cs-CZ)
Size : 2 845 083 499 bytes

Index : 10
Name : 10. Windows XP Home N (da-DK)
Description : Windows XP Home N SP3 (da-DK)
Size : 2 733 685 349 bytes

Index : 11
Name : 11. Windows XP Home (da-DK)
Description : Windows XP Home SP3 (da-DK)
Size : 2 802 587 488 bytes

Index : 12
Name : 12. Windows XP Professional N Volume License (da-DK)
Description : Windows XP Professional N Volume License SP3 (da-DK)
Size : 2 781 738 299 bytes

Index : 13
Name : 13. Windows XP Professional N (da-DK)
Description : Windows XP Professional N SP3 (da-DK)
Size : 2 779 774 691 bytes

Index : 14
Name : 14. Windows XP Professional Volume License (da-DK)
Description : Windows XP Professional Volume License SP3 (da-DK)
Size : 2 848 492 081 bytes

Index : 15
Name : 15. Windows XP Professional (da-DK)
Description : Windows XP Professional SP3 (da-DK)
Size : 2 848 568 766 bytes

Index : 16
Name : 16. Windows XP Home N (de-DE)
Description : Windows XP Home N SP3 (de-DE)
Size : 2 792 771 968 bytes

Index : 17
Name : 17. Windows XP Home (de-DE)
Description : Windows XP Home SP3 (de-DE)
Size : 2 855 988 121 bytes

Index : 18
Name : 18. Windows XP Professional N Volume License (de-DE)
Description : Windows XP Professional N Volume License SP3 (de-DE)
Size : 2 839 835 608 bytes

Index : 19
Name : 19. Windows XP Professional N (de-DE)
Description : Windows XP Professional N SP3 (de-DE)
Size : 2 842 082 673 bytes

Index : 20
Name : 20. Windows XP Professional Volume License (de-DE)
Description : Windows XP Professional Volume License SP3 (de-DE)
Size : 2 905 580 046 bytes

Index : 21
Name : 21. Windows XP Professional (de-DE)
Description : Windows XP Professional SP3 (de-DE)
Size : 2 903 520 254 bytes

Index : 22
Name : 22. Windows XP Home N (el-GR)
Description : Windows XP Home N SP3 (el-GR)
Size : 2 755 445 646 bytes

Index : 23
Name : 23. Windows XP Home (el-GR)
Description : Windows XP Home SP3 (el-GR)
Size : 2 821 594 126 bytes

Index : 24
Name : 24. Windows XP Professional N Volume License (el-GR)
Description : Windows XP Professional N Volume License SP3 (el-GR)
Size : 2 804 820 860 bytes

Index : 25
Name : 25. Windows XP Professional N (el-GR)
Description : Windows XP Professional N SP3 (el-GR)
Size : 2 802 754 256 bytes

Index : 26
Name : 26. Windows XP Professional Volume License (el-GR)
Description : Windows XP Professional Volume License SP3 (el-GR)
Size : 2 870 668 156 bytes

Index : 27
Name : 27. Windows XP Professional (el-GR)
Description : Windows XP Professional SP3 (el-GR)
Size : 2 868 703 635 bytes

Index : 28
Name : 28. Windows XP Home KN (en-US)
Description : Windows XP Home KN SP3 (en-US)
Size : 2 687 260 349 bytes

Index : 29
Name : 29. Windows XP Home K (en-US)
Description : Windows XP Home K SP3 (en-US)
Size : 2 753 618 794 bytes

Index : 30
Name : 30. Windows XP Home N (en-US)
Description : Windows XP Home N SP3 (en-US)
Size : 2 689 196 352 bytes

Index : 31
Name : 31. Windows XP Home (en-US)
Description : Windows XP Home SP3 (en-US)
Size : 2 755 932 848 bytes

Index : 32
Name : 32. Windows XP Media Center (en-US)
Description : Windows XP Media Center SP3 (en-US)
Size : 3 210 279 284 bytes

Index : 33
Name : 33. Windows XP Media Center (en-US)
Description : Windows XP Media Center SP3 (en-US)
Size : 4 416 993 364 bytes

Index : 34
Name : 34. Windows XP Professional KN (en-US)
Description : Windows XP Professional KN SP3 (en-US)
Size : 2 779 167 136 bytes

Index : 35
Name : 35. Windows XP Professional K (en-US)
Description : Windows XP Professional K SP3 (en-US)
Size : 2 848 020 244 bytes

Index : 36
Name : 36. Windows XP Professional N Volume License (en-US)
Description : Windows XP Professional N Volume License SP3 (en-US)
Size : 2 779 641 165 bytes

Index : 37
Name : 37. Windows XP Professional N (en-US)
Description : Windows XP Professional N SP3 (en-US)
Size : 2 781 886 484 bytes

Index : 38
Name : 38. Windows XP Professional Volume License (en-US)
Description : Windows XP Professional Volume License SP3 (en-US)
Size : 2 846 132 611 bytes

Index : 39
Name : 39. Windows XP Professional (en-US)
Description : Windows XP Professional SP3 (en-US)
Size : 2 848 329 108 bytes

Index : 40
Name : 40. Windows XP Tablet PC (en-US)
Description : Windows XP Tablet PC SP3 (en-US)
Size : 3 060 935 222 bytes

Index : 41
Name : 41. Windows XP Tablet PC Volume License (en-US)
Description : Windows XP Tablet PC Volume License SP3 (en-US)
Size : 3 060 793 588 bytes

Index : 42
Name : 42. Windows XP Home N (es-ES)
Description : Windows XP Home N SP3 (es-ES)
Size : 2 800 243 174 bytes

Index : 43
Name : 43. Windows XP Home (es-ES)
Description : Windows XP Home SP3 (es-ES)
Size : 2 866 696 192 bytes

Index : 44
Name : 44. Windows XP Professional N Volume License (es-ES)
Description : Windows XP Professional N Volume License SP3 (es-ES)
Size : 2 848 598 567 bytes

Index : 45
Name : 45. Windows XP Professional N (es-ES)
Description : Windows XP Professional N SP3 (es-ES)
Size : 2 846 385 776 bytes

Index : 46
Name : 46. Windows XP Professional Volume License (es-ES)
Description : Windows XP Professional Volume License SP3 (es-ES)
Size : 2 914 990 974 bytes

Index : 47
Name : 47. Windows XP Professional (es-ES)
Description : Windows XP Professional SP3 (es-ES)
Size : 2 915 135 131 bytes

Index : 48
Name : 48. Windows XP Home N (fi-FI)
Description : Windows XP Home N SP3 (fi-FI)
Size : 2 736 722 741 bytes

Index : 49
Name : 49. Windows XP Home (fi-FI)
Description : Windows XP Home SP3 (fi-FI)
Size : 2 803 378 104 bytes

Index : 50
Name : 50. Windows XP Professional N Volume License (fi-FI)
Description : Windows XP Professional N Volume License SP3 (fi-FI)
Size : 2 779 965 040 bytes

Index : 51
Name : 51. Windows XP Professional N (fi-FI)
Description : Windows XP Professional N SP3 (fi-FI)
Size : 2 782 245 227 bytes

Index : 52
Name : 52. Windows XP Professional Volume License (fi-FI)
Description : Windows XP Professional Volume License SP3 (fi-FI)
Size : 2 848 633 431 bytes

Index : 53
Name : 53. Windows XP Professional (fi-FI)
Description : Windows XP Professional SP3 (fi-FI)
Size : 2 846 652 619 bytes

Index : 54
Name : 54. Windows XP Home N (fr-FR)
Description : Windows XP Home N SP3 (fr-FR)
Size : 2 782 643 577 bytes

Index : 55
Name : 55. Windows XP Home (fr-FR)
Description : Windows XP Home SP3 (fr-FR)
Size : 2 849 353 136 bytes

Index : 56
Name : 56. Windows XP Professional N Volume License (fr-FR)
Description : Windows XP Professional N Volume License SP3 (fr-FR)
Size : 2 831 000 611 bytes

Index : 57
Name : 57. Windows XP Professional N (fr-FR)
Description : Windows XP Professional N SP3 (fr-FR)
Size : 2 828 979 396 bytes

Index : 58
Name : 58. Windows XP Professional Volume License (fr-FR)
Description : Windows XP Professional Volume License SP3 (fr-FR)
Size : 2 897 597 265 bytes

Index : 59
Name : 59. Windows XP Professional (fr-FR)
Description : Windows XP Professional SP3 (fr-FR)
Size : 2 895 596 757 bytes

Index : 60
Name : 60. Windows XP Home (he-IL)
Description : Windows XP Home SP3 (he-IL)
Size : 2 810 847 018 bytes

Index : 61
Name : 61. Windows XP Professional Volume License (he-IL)
Description : Windows XP Professional Volume License SP3 (he-IL)
Size : 2 854 500 267 bytes

Index : 62
Name : 62. Windows XP Professional (he-IL)
Description : Windows XP Professional SP3 (he-IL)
Size : 2 854 512 134 bytes

Index : 63
Name : 63. Windows XP Home N (hu-HU)
Description : Windows XP Home N SP3 (hu-HU)
Size : 2 744 291 928 bytes

Index : 64
Name : 64. Windows XP Home (hu-HU)
Description : Windows XP Home SP3 (hu-HU)
Size : 2 812 903 431 bytes

Index : 65
Name : 65. Windows XP Professional N Volume License (hu-HU)
Description : Windows XP Professional N Volume License SP3 (hu-HU)
Size : 2 791 948 704 bytes

Index : 66
Name : 66. Windows XP Professional N (hu-HU)
Description : Windows XP Professional N SP3 (hu-HU)
Size : 2 792 113 949 bytes

Index : 67
Name : 67. Windows XP Professional Volume License (hu-HU)
Description : Windows XP Professional Volume License SP3 (hu-HU)
Size : 2 856 467 652 bytes

Index : 68
Name : 68. Windows XP Professional (hu-HU)
Description : Windows XP Professional SP3 (hu-HU)
Size : 2 858 706 322 bytes

Index : 69
Name : 69. Windows XP Home N (it-IT)
Description : Windows XP Home N SP3 (it-IT)
Size : 2 743 131 306 bytes

Index : 70
Name : 70. Windows XP Home (it-IT)
Description : Windows XP Home SP3 (it-IT)
Size : 2 808 264 288 bytes

Index : 71
Name : 71. Windows XP Professional N Volume License (it-IT)
Description : Windows XP Professional N Volume License SP3 (it-IT)
Size : 2 790 543 988 bytes

Index : 72
Name : 72. Windows XP Professional N (it-IT)
Description : Windows XP Professional N SP3 (it-IT)
Size : 2 788 531 941 bytes

Index : 73
Name : 73. Windows XP Professional Volume License (it-IT)
Description : Windows XP Professional Volume License SP3 (it-IT)
Size : 2 855 927 052 bytes

Index : 74
Name : 74. Windows XP Professional (it-IT)
Description : Windows XP Professional SP3 (it-IT)
Size : 2 853 947 831 bytes

Index : 75
Name : 75. Windows XP Home (ja-JP)
Description : Windows XP Home SP3 (ja-JP)
Size : 3 161 255 734 bytes

Index : 76
Name : 76. Windows XP Professional Volume License (ja-JP)
Description : Windows XP Professional Volume License SP3 (ja-JP)
Size : 3 210 084 858 bytes

Index : 77
Name : 77. Windows XP Professional (ja-JP)
Description : Windows XP Professional SP3 (ja-JP)
Size : 3 207 825 291 bytes

Index : 78
Name : 78. Windows XP Home KN (ko-KR)
Description : Windows XP Home KN SP3 (ko-KR)
Size : 2 984 956 151 bytes

Index : 79
Name : 79. Windows XP Home K (ko-KR)
Description : Windows XP Home K SP3 (ko-KR)
Size : 3 056 249 284 bytes

Index : 80
Name : 80. Windows XP Professional KN Volume License (ko-KR)
Description : Windows XP Professional KN Volume License SP3 (ko-KR)
Size : 3 030 006 198 bytes

Index : 81
Name : 81. Windows XP Professional KN (ko-KR)
Description : Windows XP Professional KN SP3 (ko-KR)
Size : 3 028 033 542 bytes

Index : 82
Name : 82. Windows XP Professional K Volume License (ko-KR)
Description : Windows XP Professional K Volume License SP3 (ko-KR)
Size : 3 099 599 331 bytes

Index : 83
Name : 83. Windows XP Professional K (ko-KR)
Description : Windows XP Professional K SP3 (ko-KR)
Size : 3 097 780 744 bytes

Index : 84
Name : 84. Windows XP Home N (nl-NL)
Description : Windows XP Home N SP3 (nl-NL)
Size : 2 737 324 993 bytes

Index : 85
Name : 85. Windows XP Home (nl-NL)
Description : Windows XP Home SP3 (nl-NL)
Size : 2 803 637 322 bytes

Index : 86
Name : 86. Windows XP Professional N Volume License (nl-NL)
Description : Windows XP Professional N Volume License SP3 (nl-NL)
Size : 2 785 002 137 bytes

Index : 87
Name : 87. Windows XP Professional N (nl-NL)
Description : Windows XP Professional N SP3 (nl-NL)
Size : 2 783 050 694 bytes

Index : 88
Name : 88. Windows XP Professional Volume License (nl-NL)
Description : Windows XP Professional Volume License SP3 (nl-NL)
Size : 2 851 165 591 bytes

Index : 89
Name : 89. Windows XP Professional (nl-NL)
Description : Windows XP Professional SP3 (nl-NL)
Size : 2 849 092 024 bytes

Index : 90
Name : 90. Windows XP Home N (nb-NO)
Description : Windows XP Home N SP3 (nb-NO)
Size : 2 730 714 125 bytes

Index : 91
Name : 91. Windows XP Home (nb-NO)
Description : Windows XP Home SP3 (nb-NO)
Size : 2 798 801 766 bytes

Index : 92
Name : 92. Windows XP Professional N Volume License (nb-NO)
Description : Windows XP Professional N Volume License SP3 (nb-NO)
Size : 2 777 513 740 bytes

Index : 93
Name : 93. Windows XP Professional N (nb-NO)
Description : Windows XP Professional N SP3 (nb-NO)
Size : 2 777 484 771 bytes

Index : 94
Name : 94. Windows XP Professional Volume License (nb-NO)
Description : Windows XP Professional Volume License SP3 (nb-NO)
Size : 2 843 326 563 bytes

Index : 95
Name : 95. Windows XP Professional (nb-NO)
Description : Windows XP Professional SP3 (nb-NO)
Size : 2 843 432 150 bytes

Index : 96
Name : 96. Windows XP Home N (pl-PL)
Description : Windows XP Home N SP3 (pl-PL)
Size : 2 743 911 845 bytes

Index : 97
Name : 97. Windows XP Home (pl-PL)
Description : Windows XP Home SP3 (pl-PL)
Size : 2 813 020 816 bytes

Index : 98
Name : 98. Windows XP Professional N Volume License (pl-PL)
Description : Windows XP Professional N Volume License SP3 (pl-PL)
Size : 2 791 875 271 bytes

Index : 99
Name : 99. Windows XP Professional N (pl-PL)
Description : Windows XP Professional N SP3 (pl-PL)
Size : 2 791 968 167 bytes

Index : 100
Name : 100. Windows XP Professional Volume License (pl-PL)
Description : Windows XP Professional Volume License SP3 (pl-PL)
Size : 2 859 160 277 bytes

Index : 101
Name : 101. Windows XP Professional (pl-PL)
Description : Windows XP Professional SP3 (pl-PL)
Size : 2 859 232 405 bytes

Index : 102
Name : 102. Windows XP Home (pt-BR)
Description : Windows XP Home SP3 (pt-BR)
Size : 2 807 805 860 bytes

Index : 103
Name : 103. Windows XP Professional Volume License (pt-BR)
Description : Windows XP Professional Volume License SP3 (pt-BR)
Size : 2 855 262 613 bytes

Index : 104
Name : 104. Windows XP Professional (pt-BR)
Description : Windows XP Professional SP3 (pt-BR)
Size : 2 853 356 689 bytes

Index : 105
Name : 105. Windows XP Home N (pt-PT)
Description : Windows XP Home N SP3 (pt-PT)
Size : 2 743 644 616 bytes

Index : 106
Name : 106. Windows XP Home (pt-PT)
Description : Windows XP Home SP3 (pt-PT)
Size : 2 810 257 805 bytes

Index : 107
Name : 107. Windows XP Professional N Volume License (pt-PT)
Description : Windows XP Professional N Volume License SP3 (pt-PT)
Size : 2 786 829 689 bytes

Index : 108
Name : 108. Windows XP Professional N (pt-PT)
Description : Windows XP Professional N SP3 (pt-PT)
Size : 2 789 156 298 bytes

Index : 109
Name : 109. Windows XP Professional Volume License (pt-PT)
Description : Windows XP Professional Volume License SP3 (pt-PT)
Size : 2 853 295 096 bytes

Index : 110
Name : 110. Windows XP Professional (pt-PT)
Description : Windows XP Professional SP3 (pt-PT)
Size : 2 855 426 594 bytes

Index : 111
Name : 111. Windows XP Home (ru-RU)
Description : Windows XP Home SP3 (ru-RU)
Size : 2 816 870 692 bytes

Index : 112
Name : 112. Windows XP Professional Volume License (ru-RU)
Description : Windows XP Professional Volume License SP3 (ru-RU)
Size : 2 865 430 547 bytes

Index : 113
Name : 113. Windows XP Professional (ru-RU)
Description : Windows XP Professional SP3 (ru-RU)
Size : 2 863 665 213 bytes

Index : 114
Name : 114. Windows XP Home N (sv-SE)
Description : Windows XP Home N SP3 (sv-SE)
Size : 2 733 778 491 bytes

Index : 115
Name : 115. Windows XP Home (sv-SE)
Description : Windows XP Home SP3 (sv-SE)
Size : 2 802 033 107 bytes

Index : 116
Name : 116. Windows XP Professional N Volume License (sv-SE)
Description : Windows XP Professional N Volume License SP3 (sv-SE)
Size : 2 780 189 531 bytes

Index : 117
Name : 117. Windows XP Professional N (sv-SE)
Description : Windows XP Professional N SP3 (sv-SE)
Size : 2 780 303 251 bytes

Index : 118
Name : 118. Windows XP Professional Volume License (sv-SE)
Description : Windows XP Professional Volume License SP3 (sv-SE)
Size : 2 846 244 096 bytes

Index : 119
Name : 119. Windows XP Professional (sv-SE)
Description : Windows XP Professional SP3 (sv-SE)
Size : 2 844 331 942 bytes

Index : 120
Name : 120. Windows XP Home (tr-TR)
Description : Windows XP Home SP3 (tr-TR)
Size : 2 804 064 074 bytes

Index : 121
Name : 121. Windows XP Professional Volume License (tr-TR)
Description : Windows XP Professional Volume License SP3 (tr-TR)
Size : 2 851 916 089 bytes

Index : 122
Name : 122. Windows XP Professional (tr-TR)
Description : Windows XP Professional SP3 (tr-TR)
Size : 2 851 931 452 bytes

Index : 123
Name : 123. Windows XP Home (zh-CN)
Description : Windows XP Home SP3 (zh-CN)
Size : 3 054 580 412 bytes

Index : 124
Name : 124. Windows XP Professional Volume License (zh-CN)
Description : Windows XP Professional Volume License SP3 (zh-CN)
Size : 3 096 092 721 bytes

Index : 125
Name : 125. Windows XP Professional (zh-CN)
Description : Windows XP Professional SP3 (zh-CN)
Size : 3 096 139 364 bytes

Index : 126
Name : 126. Windows XP Home (zh-TW)
Description : Windows XP Home SP3 (zh-TW)
Size : 3 036 410 741 bytes

Index : 127
Name : 127. Windows XP Professional Volume License (zh-TW)
Description : Windows XP Professional Volume License SP3 (zh-TW)
Size : 3 078 222 319 bytes

Index : 128
Name : 128. Windows XP Professional (zh-TW)
Description : Windows XP Professional SP3 (zh-TW)
Size : 3 076 363 124 bytes

Index : 129
Name : 129. Windows XP Home (zh-TW)
Description : Windows XP Home SP3 (zh-TW)
Size : 3 036 161 132 bytes

Index : 130
Name : 130. Windows XP Professional Volume License (zh-TW)
Description : Windows XP Professional Volume License SP3 (zh-TW)
Size : 3 076 087 711 bytes

Index : 131
Name : 131. Windows XP Professional (zh-TW)
Description : Windows XP Professional SP3 (zh-TW)
Size : 3 078 204 195 bytes



Known bugs:
BUG1) %SystemDrive%\Windows\Web folder content is deleted by accident during setup
FIX1) Mount boot.wim (easy is to use NTLite), delete " Web" in tag list in sources\setup.cmd at line 30 and save it. Then unload and save boot.wim [TOOL] POWIS - Powerful Windows Setup - Support Windows Vista, 7, 8.0, 8.1, 10, 11 and their Servers equivalent
⇗ https://forums.mydigitallife.net/threads...p-v1-0-1.83558/

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#7498gordo999
Zitat von ⇗ Amir im Beitrag ¶ #7493
...the laptop turns off.
@Amir...what happens before it turns off? Do you notice a blue screen flash by? Some computers shut down automatically after a blue screen and you have to set them not to shut down so you can read the data on the blue screen. Don't remember how to set the computer on XP not to shutdown after BSOD. It can be set in system properties by right clicking My Computer icon and selecting 'properties'. Maybe someone else remembers.
#7499diderius6⇗ @George King

What is the MD5 and SHA-1 from

WinXP_AIO_ESD.iso

I search but I dont find them

Dietmar
#7500George King⇗ @diderius6

Added into post ¶ #7497

[TOOL] POWIS - Powerful Windows Setup - Support Windows Vista, 7, 8.0, 8.1, 10, 11 and their Servers equivalent
⇗ https://forums.mydigitallife.net/threads...p-v1-0-1.83558/

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/

 

Page 501

#7501infuscomus⇗ @mockingbird

OK, try this one.

attached files
#7502George King
Zitat von ⇗ gordo999 im Beitrag ¶ #7498
Zitat von ⇗ Amir im Beitrag ¶ #7493
...the laptop turns off.
@Amir...what happens before it turns off? Do you notice a blue screen flash by? Some computers shut down automatically after a blue screen and you have to set them not to shut down so you can read the data on the blue screen. Don't remember how to set the computer on XP not to shutdown after BSOD. It can be set in system properties by right clicking My Computer icon and selecting 'properties'. Maybe someone else remembers.



XP2ESD images have disabled reboot after BSOD by default. It's really easy
1
2
3
4
REM Disable automatic reboot after BSOD
reg load HKLM\TEMPSYSTEM "%TARGET%\Windows\System32\config\SYSTEM" >nul
REG ADD HKLM\TEMPSYSTEM\ControlSet001\Control\CrashControl /v "AutoReboot" /t REG_DWORD /d 0 /f >nul
reg unload HKLM\TEMPSYSTEM >nul
[TOOL] POWIS - Powerful Windows Setup - Support Windows Vista, 7, 8.0, 8.1, 10, 11 and their Servers equivalent
⇗ https://forums.mydigitallife.net/threads...p-v1-0-1.83558/

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#7503Masterchief79Hello everyone,
I'm currently trying to install Win XP on my Ryzen 5800X + Gigabyte Aorus B550 Elite V2 on a 320GB SATA HDD. I don't need a highly functional 24/7 XP with NVME support, network and audio drivers, it's more for benchmarking purposes. I did this once already with an i5 7600K and a Z270 Apex motherboard but it wasn't nearly as complicated back then.

I followed the instructions in the "Windows XP 2021_7_ENU" text file and got through the first part of the setup okay one the second try. So it doesn't crash on the 07B anymore and actually installs the OS. I'm using the 2021.5.15 build with options 3,4,6,A,B,C,E,G,K enabled (look in screenshot for more info).

Then however, I get the ACPI bluescreen "A5" on the first reboot. Which modified ACPI file should I use and how do I best integrate it into the build? I assume I can't just press F7 on setup and get it to work? Is this CPU and chipset generation even able to run XP, and if not, can it at least run Windows 7?

#7504infuscomus⇗ @Masterchief79

do you get an A5 BSOD during textmode setup? don't press F7.

what A5 BSOD do you get on first reboot? can you post a screenshot?
#7505Masterchief79Thanks for the reply. Textmode setup works for me (if by textmode you mean the bit where it looks like an old BIOS, basically). It gets to the point where Windows goes "your computer will restart in 15 seconds". I haven't hit any keys during that time (so this is without F7 aswell). After rebooting, I get this BSOD:

#7506infuscomus⇗ @Masterchief79

I've never heard of a scenario where textmode setup did not give an A5 BSOD but GUI setup did.
try extracting the patched acpi.sys from DRIVER.CAB and replacing the one in your XP system32\drivers folder.
#7507diderius6⇗ @infuscomus ⇗ @mockingbird ⇗ @Masterchief79

I make a quick and dirty hack on last acpi.sys from outerspace ),
please try

Dietmar

⇗ https://ufile.io/9f6ng0y4
#7508Masterchief79⇗ @infuscomus Thanks, that didn't change anything unfortunately. I'm trying the same thing with the file from ⇗ @diderius6 now.

//
So the provided ACPI file from ⇗ @diderius6 worked! It booted into the GUI setup successfully. USB devices worked too. System froze pretty quickly on the screen where it tries to install keyboard and mouse drivers though, see screenshot below. I've got all kinds of devices connected from this being my 24/7 system aswell, should I just try to disconnect everything except for mouse and keyboard?
After that, I tried rebooting into GUI setup another time and again got the ACPI bluescreen. I don't know if that says anything.
#7509diderius6⇗ @Masterchief79

The system restore of XP replaced my hacked acpi.sys 6666 with the original acpi.sys I think.
So just replace acpi.sys again in C:\WINDOWS\system32\drivers

Dietmar
#7510Masterchief79Yeah, I figured something like that, so I already did that. Now I gotta get past this freeze :) I think I'm gonna try disconnecting the unnecessary devices next, just to see if that makes a difference, but input from more experienced people welcome of course.
#7511diderius6⇗ @Masterchief79

You can make a Setup in Safe Mode via F8 and disable there all not needed devices for first boot of XP.
Or you can disable all not needed devices in Bios
Dietmar
#7512Masterchief79On the screen it crashes on it also says something about screen flickering, so is it trying to install the video card drivers at that point in the setup? Because I currently have a 1080Ti installed. I assumed it would just skip the video driver installation if the setup doesn't have a proper driver. Do you think that could be the issue? I can try the setup again with an older videocard, I've got plenty to choose from.
#7513diderius6⇗ @Masterchief79

Disconnect also all not needed real devices, videocard also if you have a legacy video putout from your cpu (no XP driver for 1080Ti exists)
Dietmar

PS: And boot XP first time via F8 Safe Mode.
#7514Masterchief79
Zitat von ⇗ diderius6 im Beitrag ¶ #7513
@Masterchief79

Disconnect also all not needed real devices, videocard also if you have a legacy video putout from your cpu (no XP driver for 1080Ti exists)
Dietmar

PS: And boot XP first time via F8 Safe Mode.

Thank you, gonna try that next. Booting first time with F8 you mean after GUI setup is done?
#7515diderius6⇗ @Masterchief79

I think, that F8 can be done even earlier in Setup of XP,
but in this case, yes
Dietmar

 

Page 502

#7516Masterchief79So just as an update, disconnecting my USB devices and swapping to a GTX275 didn't change anything. It still freezes on the same point in the setup. I'm gonna disable unnecessary onboard devices next (like Audio, LAN etc.) but I have a feeling that I'm not gonna get further with that. I might try a different XP distribution with other drivers later but any feedback is welcome of course.
#7517infuscomus⇗ @Masterchief79

Try and replace the acpi.sys in Integrator Files\Patches\ACPI drivers with the one diderius6 gave you and build a new ISO using the script. Then do a new fresh XP install over again and see if that works.
#7518Masterchief79Good shout, worth a try, thanks :)
#7519gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #7509
The system restore of XP replaced my hacked acpi.sys 6666 with the original acpi.sys I think. So just replace acpi.sys again in C:\WINDOWS\system32\driversDietmar
⇗ @diderius6 ...Dietmar...I would replace the acpi.sys where the system file checker get it's version. I don't have XP open right now but XP keeps a store of files for the system file checker. That one has to be replaced first, before inserting your version.
#7520gordo999
Zitat von ⇗ Masterchief79 im Beitrag ¶ #7516
It still freezes on the same point in the setup.  
⇗ @Masterchief79 ...if the problem is your mouse/keyboard drivers it may be that your USB drivers are not loading properly. Does your mobo have a PS/2 input? I used PS/2 on mine while setting up by connecting USB/mouse to PS/2 via an adapter. If you can get it to install that way, you can troubleshoot USB issues using Device Manager.

If the installation freezes right near the end it's likely an Internet Explorer problem. Something to do with the IE version. I don't remember the details at the moment regarding how I solved it.
#7521Masterchief79Haha, I actually got it installed and working. I replaced the ACPI file with Dietmars before building a new ISO and tried a slightly different driver combination. It recognizes my phone and everything. In terms of performance, I haven't done enough testing to say if it's faster than my 24/7 windows or an optimized Windows 7 in the benchmarks I'm interested in. That will come soon. But being able to run old benchmarks at all is a plus over Windows 10 already.
Little background: I had a 7600K on XP working and used it to benchmark a ton of old graphics cards in like 3D Mark 01 to 06. They're are usually CPU-limited, but with a very quick CPU and a reasonably old GPU (like everything between GeForce 6000 series and GTX 400 series) you can get some easy points on ⇗ www.hwbot.org (this is my profile there: ⇗ https://hwbot.org/user/masterchief79/). Add a single stage compressor cooling system that cools the GPU to -40°C on load and you can overclock and score to your hearts desire. That Z270 mainboard I was using with the 7600K just quit working unfortunately, I didn't wanna buy another one and they didn't want to repair it... Anyway, now the Singlecore performance of my 5800X should be sufficient to be competitive without having to have two different systems.

I was gonna post screenshots but I forgot that I disconnected the HDD before booting into my 24/7 windows. Promise that I'm gonna add some later.
#7522Masterchief79I had everything working with the GTX275 yesterday. Then I swapped to a GTS450, installed the according Nvidia 290.53 driver, and now I can't get into Windows anymore. It boots, then it wants to execute CHKDSK, and afterwards (no matter if I skip it or don't), it bluescreens with this BSOD. Any ideas? Safe mode boot freezes on loading "Drivers.mup".
#7523diderius6⇗ @Masterchief79

This bluescreen I have seen, when the graphik driver is not working correct.
Have you tried via F8 "Go back to last working configuration"?
This takes the copy from the registry before you installed the other graphik driver
Dietmar
#7524infuscomus⇗ @diderius6

If dump_ntoskrn8.sys is where the error occurs wouldn't ⇗ @Mov AX, 0xDEAD know more about this BSOD?
#7525Masterchief79It's probably graphics driver related, yes. I'm gonna try last working configuration, thanks. Maybe some part of the driver package (nView, PhysX, some HDMI Audio driver...) is not working correctly.
#7526imadam__Hi, i made a iso file with windows xp integral edition and the optional patches. But the setup gets stuck at setup is starting windows with no blue screen or error. I made the usb drive with "WinSetupFromUSB 1.9". ive tried it with a external dvd drive but that doesnt work.

ryzen 5 2600, asus rog strix b450-f gaming II, 16gb ram, 240gb kingston a400 SSD.

thanks
#7527diderius6⇗ @imadam__

There are some possibilities, why this setup did not work.
Easiest way is to burn a CD from the *.iso and connect this CD on a DVD drive, which is connected to the SATA slot (not USB(!)).
Other possibility is, that setup cant recognice the harddisk.
This problem can be solved, when you format your harddisk before with RMPrebUSB version 2.1.739
Dietmar
#7528imadam__I dont have any sata dvd drives :( but ill try the rmprepusb method
#7529imadam__ok so formatting the ssd with rmprepusb didnt work :( any other things i could try ?

 

Page 503

#7530 LOST
#7531 LOST
#7532 LOST
#7533 LOST
#7534 LOST
#7535 LOST
#7536diderius6

⇗ @Masterchief79

The Bsod from your graphikcard can be memory related.
So make a try with a new *.iso,
but this time without the "5" in settings of Integral Edition 2021.5.15
Dietmar

#7537 LOST
#7538 LOST
#7539 LOST
#7540 LOST
#7541 LOST
#7542infuscomus⇗ @imadam__

OK, looking at the manual for your motherboard, it should be under - CPU Core Count Control in the AMD Overclocking section.
#7543diderius6⇗ @imadam__

Hit F5 and choose "Standard PC".
This is single core and without any acpi.
Via this way you can find out, if the Sata connector is the problem.
Also change the Sata connector
Dietmar

PS: If the Sata connector does not work under XP, you can install XP to an USB device, to an nvme device
or you can try another working XP for this board with B450 chipset.
Or you can boot XP from ram;))..
#7544imadam__hi, i chose standard pc and unplugged all sata drives but it still gets stuck at that stage
#7545infuscomus⇗ @imadam__

at "Setup is Starting Windows" or a 7B BSOD?

 

Page 504

#7546imadam__Setup is starting windows.
#7547infuscomus⇗ @imadam__

Try without integrating any of the USB 3.0 drivers.
#7548imadam__Ok.
#7549diderius6⇗ @imadam__  ⇗ @infuscomus

I think it is the Sata connector. Here in the forum I find, that from Chipset B450 also Win7 does not start from this ahci.
But the modded XP drivers are from Win8.
Then only USB boot or boot from nvme will work on this board
Dietmar
#7550imadam__Weird - becuase I've used this board to install windows XP before - but I installed it from Windows 8 PE and manually copied over the drivers from Linux and it worked, but I can't seem to get that to work anymore
#7551infuscomus⇗ @imadam__

I recall you mentioned earlier that one time you got a 7B BSOD instead of the usual freezing, what options did you select when you got that?
#7552George King
Zitat von ⇗ imadam__ im Beitrag ¶ #7550
Weird - becuase I've used this board to install windows XP before - but I installed it from Windows 8 PE and manually copied over the drivers from Linux and it worked, but I can't seem to get that to work anymore


You can build XP2ESD with Windows 8.0 input ISO instead of 7. You should encounter some errors during building but they will be related to bootlogo patching. I will see today in my upcoming v1.6 version if it can be properly builded, but I think yes, we can use Windows 8.0 and Windows 10 as source ISOs. And if there will be some errors, I can catch them too and adapt XP2ESD. [TOOL] POWIS - Powerful Windows Setup - Support Windows Vista, 7, 8.0, 8.1, 10, 11 and their Servers equivalent
⇗ https://forums.mydigitallife.net/threads...p-v1-0-1.83558/

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#7553diderius6⇗ @imadam__

For to understand, if really the Sata connector is the problem,
build a new *.iso with settings

3 ,4, D, E, G
and my acpi.sys .

Then connect a non (!) removable device to an USB slot, for example an USB-harddisk.
Now try to install XP again. If you can install XP to this USB device,
the problem is the Sata connector. When installation is complete, you can try to find a Sata driver which works for
the B450 board under XP
Dietmar
#7554imadam__i actually removed all sata drives and tried to boot the installer but it still wouldnt boot.
#7555George King
Zitat von ⇗ imadam__ im Beitrag ¶ #7554
i actually removed all sata drives and tried to boot the installer but it still wouldnt boot.


Can you boot successfully into Windows 8.0 installer? [TOOL] POWIS - Powerful Windows Setup - Support Windows Vista, 7, 8.0, 8.1, 10, 11 and their Servers equivalent
⇗ https://forums.mydigitallife.net/threads...p-v1-0-1.83558/

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#7556imadam__yeah, i can boot and use the windows 8 installer fine, im building an xp2esd iso right now, just downloading things.
#7557George King
Zitat von ⇗ imadam__ im Beitrag ¶ #7556
yeah, i can boot and use the windows 8 installer fine, im building an xp2esd iso right now, just downloading things.

Good, I will review this process myself later to be sure all works in script as expected.
Using Windows 8.0 input ISO should be also option without needs Windows 10 ISO in future.

EDIT: And if current XP2ESD fails to build it for some reason, I should create this image for you [TOOL] POWIS - Powerful Windows Setup - Support Windows Vista, 7, 8.0, 8.1, 10, 11 and their Servers equivalent
⇗ https://forums.mydigitallife.net/threads...p-v1-0-1.83558/

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#7558imadam__ok, thanks
#7559diderius6⇗ @imadam__

There exist 2 versions of the ASUS ROG Strix B450-F Gaming II board,
one with Usb 3.1 (90MB15V0-M0EAY0) and another one with Usb3.2 (B08KH1M1H4 )
Which version do you have
Dietmar
#7560diderius6I just order the first version ASUS ROG Strix B450-F Gaming II (90MB15V0-M0EAY0) for EUR 104,90 via Amazon.
I have different Ryzen and AMD cpus, which run on this board.
It is a really interesting, cheap board with PS/2, with Intel i211 lan, COM1 port and Realtek 1200 sound.
You can install any Ryzen processors (also 5000) as far as I understand.
From this specs it is(?) one of the very last boards, that may support XP to full (Sata?!)
Dietmar

 

Page 505

#7561imadam__Mine appears to have model number 90MB15V0-M0EAY0 so it's the usb3.1 version.
#7562diderius6⇗ @imadam__

I noticed, that on the board ASUS ROG Strix B450-F Gaming II there are 2 different Sata connections:
One goes direct to the cpu and other over chipset B450,
so there is hope for full XP support
Dietmar
#7563imadam__When I get home I will try a different connector then.
#7564diderius6I found Sata driver for the B450 chipset for Win7 bit32.
Dont know, if they can be modified for XP also
Dietmar

⇗ https://ufile.io/1m410fet
#7565diderius6And this may be the same Sata drivers for XP,
thanks to ⇗ @daniel_k

Dietmar

⇗ http://www.mediafire.com/file/jog8i403j2...402_x86.7z/file
#7566George King⇗ @diderius6 I checked XP2ESD driver repository, for XP and 7 is included v1.2.001.0402. And ⇗ @imadam__ stuck on boot logo and cannot boot into installer.

I'm adapting code to build XP2ESD only using Windows 8.0 ISO right now. Testing ISO should be ready soon

[TOOL] POWIS - Powerful Windows Setup - Support Windows Vista, 7, 8.0, 8.1, 10, 11 and their Servers equivalent
⇗ https://forums.mydigitallife.net/threads...p-v1-0-1.83558/

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#7567George King⇗ @imadam__ m What XP Edition and Language do you use? I'm ready to build your ISO based on Windows 8.0 instead of 7 & 10

[TOOL] POWIS - Powerful Windows Setup - Support Windows Vista, 7, 8.0, 8.1, 10, 11 and their Servers equivalent
⇗ https://forums.mydigitallife.net/threads...p-v1-0-1.83558/

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#7568imadam__English And any edition of Professional (N, VL)
#7569George King⇗ @imadam__ Image created with unreleased XP2ESD v1.6. Based on English Windows 8.0 x86 + Windows XP Professional Volume License. Patched ACPI.SYS is included. You can find it in $OEM$ directory

 
 https://www.mediafire.com/file/vs5jkk12739pgqy/WinXP_AIO_ESD_v1.6_b2_w8_based.iso/file
[TOOL] POWIS - Powerful Windows Setup - Support Windows Vista, 7, 8.0, 8.1, 10, 11 and their Servers equivalent
⇗ https://forums.mydigitallife.net/threads...p-v1-0-1.83558/

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#7570diderius6Thanks to ⇗ @pappyN4 you can use an old AMD Sata driver for XP also for the B450 chipset.
Dietmar

Download an old 13.4 XP/XP64 chipset pack from AMD.

Open up amd_sata.inf and add in these lines underneath existing DEVs:
%AMDSATA.DeviceDesc% = amd_sata_inst, PCI\VEN_1022&DEV_7901&CC_0106
%AMDSATA.DeviceDesc% = amd_sata_inst, PCI\VEN_1022&DEV_7904&CC_0106
%AMDSATA.DeviceDesc% = amd_sata_inst, PCI\VEN_1022&DEV_43C8&CC_0106
#7571imadam__so far its working good :), but my usb keyboard and mouse arent working in the windows xp setup stage and OS but they work fine in windows 8 PE (i have a ps/2 keyboard so its fine for now )
#7572George King
Zitat von ⇗ imadam__ im Beitrag ¶ #7571
so far its working good :), but my usb keyboard and mouse arent working in the setup stage (i have a ps/2 keyboard so its fine for now )


This is confirmation that WinXP_AIO_ESD_v1.6_b2_w8_based.iso was bootable, but before first XP boot USB doesn't work right? :) [TOOL] POWIS - Powerful Windows Setup - Support Windows Vista, 7, 8.0, 8.1, 10, 11 and their Servers equivalent
⇗ https://forums.mydigitallife.net/threads...p-v1-0-1.83558/

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#7573imadam__the usb works in the windows 8 PE stage, but in windows xp it doesnt work, also its frozen at "windows is shutting down" so should i manually restart it?
#7574imadam__and after 2nd reboot there is now a 0x000000A5 blue screen of death
#7575George King
Zitat von ⇗ imadam__ im Beitrag ¶ #7573
the usb works in the windows 8 PE stage, but in windows xp it doesnt work, also its frozen at "windows is shutting down" so should i manually restart it?

Good is you are able to install it now. Now we can solve other problems. Was your USB keyboard connected during whole setup? Ported USB3.x driver is injected directly inside image, how looks device manager after that? Do you need to install it manualy (you can extract driver using 7-zip from USB\sources\install.wim\D\M\GENERIC_USB3X)?

Zitat von ⇗ imadam__ im Beitrag ¶ #7574
and after 2nd reboot there is now a 0x000000A5 blue screen of death

Can you have a look on Windows\system32\drivers\ACPI.sys if it match that one in USB\sources\$OEM$\$$\system32\drivers? In this build is SFC patched, but maybe MyFactory re-enabled it again, this is untested scenario [TOOL] POWIS - Powerful Windows Setup - Support Windows Vista, 7, 8.0, 8.1, 10, 11 and their Servers equivalent
⇗ https://forums.mydigitallife.net/threads...p-v1-0-1.83558/

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/

 

Page 506

#7576imadam__yeah, the acpi.sys in windows\system32\drivers is dated 2008 which is the default windows xp one, so i guess it didnt get copied over?
#7577George King
Zitat von ⇗ imadam__ im Beitrag ¶ #7576
yeah, the acpi.sys in windows\system32\drivers is dated 2008 which is the default windows xp one, so i guess it didnt get copied over?


This must be caused by re-enabled SFC after first reboot of deployed system. I'm going to find whats wrong now [TOOL] POWIS - Powerful Windows Setup - Support Windows Vista, 7, 8.0, 8.1, 10, 11 and their Servers equivalent
⇗ https://forums.mydigitallife.net/threads...p-v1-0-1.83558/

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#7578imadam__oh, i manually copied over the acpi.sys and there is no longer 0x000000A5 but now there ois 0x0000007B which i think is ahci error ?
#7579diderius6⇗ @imadam__

Can you choose your harddisk (before Bsod 0x7B), where you want to install XP and see this partition
Dietmar
#7580imadam__yes, i can
#7581diderius6⇗ @imadam__

This means, that the Sata driver no longer works.
May be, that storport.sys for this Sata driver is now deleted in windows\system32\drivers
or comes in conflict with another storport.sys driver with same name
Dietmar
#7582imadam__alright, ill try to copy the new one over and see if that works :)
#7583imadam__i manually copied over the drivers, and it gets further in booting, but it freezes at the windows xp bootscreen, ill boot it in safe mode to see


EDIT: safe mode freezes at boot on \Windows\Syetem32\Drivers\Mup.sys
#7584diderius6⇗ @imadam__

I think that something is not ok with the Sata driver.
You can make a try with all the files from ⇗ @daniel_k and replace storport.sys and the other sata files also with them
in windows\system32\drivers

Dietmar

⇗ https://ufile.io/kzeap6np
#7585imadam__i tried copying over the drivers again but no luck - i even copied over a new mup.sys and still no luck :(
#7586diderius6⇗ @imadam__

Try one by one all Sata slots
Dietmar

EDIT: You can integrate this Sata driver by hand into registry of XP, but not easy job.
#7587imadam__Ok.
#7588George KingAnd I'm building image to see how SFC goes. I have also removed some storport files to be sure only one and correct is installed. I will upload it after some Virtual Machine tests

[TOOL] POWIS - Powerful Windows Setup - Support Windows Vista, 7, 8.0, 8.1, 10, 11 and their Servers equivalent
⇗ https://forums.mydigitallife.net/threads...p-v1-0-1.83558/

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#7589gordo999
Zitat von ⇗ imadam__ im Beitrag ¶ #7554
i actually removed all sata drives and tried to boot the installer but it still wouldnt boot.
⇗ @imadam__ ...what errors or symptoms do you get when your machine doesn't boot? Also, with no SATA drives did you adjust BIOS to give the system a bootable source? If there is no boot source, the system will simply sit there, but sometimes you get some error in text mode.

When a system boots, it needs some kind of storage device that contains the information it needs to continue booting. This article explains it well....

⇗ https://neosmart.net/wiki/mbr-boot-process/

What do you see during boot? Do you get the option to press F2 or ALT to enter the BIOS editor? On my system, I see hexadecimal character going by rapidly in one spot of the screen, indicating POST activity. Or, do you just get a blank screen with nothing?
#7590gordo999
Zitat von ⇗ imadam__ im Beitrag ¶ #7585
i tried copying over the drivers again but no luck - i even copied over a new mup.sys and still no luck :(
⇗ @imadam__   mup.sys is a common place for the file list to stop in safe mode. Means nothing.

 

Page 507

#7591infuscomus⇗ @imadam__

I think your XP install might have been corrupted after not being completed and from all the restarts. I think it's best to start again.

Can you check the device ID for your USB 3.0 controller?

On my threadripper system, this USB controller
PCI\VEN_1022&DEV_149C

never works on first boot up but it will work correctly if I disable and reenable it in device manager, this is with the backported windows 8.0 USB 3.0 driver
I'm guessing it's something to do with ACPI

maybe you have the same controller?
#7592George King⇗ @imadam__ Here is beta 4 image. I'm sure SFC is OK, even if it shows ACPI.sys date 2008 file version is 6666. I have also removed all useless drivers from repository and now are included only Generic AHCI, Generic NVMe, Generic USB3.x, AMD_AHCI, INTEL_AHCI, Samsung_NVMe - I double checked and these drivers are same as you can find in "Integral edition". These files are taken from ⇗ @daniel_k MDL ⇗ repository

 
https://www.mediafire.com/file/xv8pl5trx96wdyk/WinXP_AIO_ESD_v1.6_b4_w8_based.iso/file



EDIT: Seems like acpi.sys is restored from sp3.cab during second reboot, even with disabled SFC. Investigating right now. I have 2 ideas how to solve it, will see which one can work

EDIT2: I'm rebuilding image with new SPx.cab repack solution for patched PAE and patched ACPI right now

EDIT3: SPx.cab is repacked before first boot to avoid ACPI.sys replacement with original file. This repack is called it two scenarios 1) PAE was patched when detected >= 4GB RAM 2) APCI.sys is in USB\sources\$OEM$\$$\system32\drivers

NOTE: USB3.x should work at first boot. In past I have tested setup from USB3 with DriverPacks installation from USB3 and it worked. Maybe is broken something else. If you don't want PAE patch, simply delete it in USB\support\WXPPAE.exe


⇗ @infuscomus Can you test how it goes on your machine? If there is needed USB device restart - disable and enable device, I can add needed command to do it automatically before Snappy Driver Installer session start

EDIT4: Seems like ucx01000.sys is not correctly installed into drivers folder before capturing when adding drivers. Investigating right now

[TOOL] POWIS - Powerful Windows Setup - Support Windows Vista, 7, 8.0, 8.1, 10, 11 and their Servers equivalent
⇗ https://forums.mydigitallife.net/threads...p-v1-0-1.83558/

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#7593imadam__still freezes on boot. but there is no 0x0000007B bsod or 0x000000A5 bsod.
#7594George King
Zitat von ⇗ imadam__ im Beitrag ¶ #7593
still freezes on boot. but there is no 0x0000007B bsod or 0x000000A5 bsod.


Installer is OK?
XP freeze on boot? [TOOL] POWIS - Powerful Windows Setup - Support Windows Vista, 7, 8.0, 8.1, 10, 11 and their Servers equivalent
⇗ https://forums.mydigitallife.net/threads...p-v1-0-1.83558/

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#7595imadam__yeah, the installer is ok, and the 2nd windows xp stage but when it reboots it freezes at the XP boot screen.
#7596George KingJust to be sure, you are able to see this screen? This is MyFactory driver handling stage. I will compare system before and after it's touch to see difference

[TOOL] POWIS - Powerful Windows Setup - Support Windows Vista, 7, 8.0, 8.1, 10, 11 and their Servers equivalent
⇗ https://forums.mydigitallife.net/threads...p-v1-0-1.83558/

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#7597imadam__yeah, i was able to see that screen, but after that it no longer boots and just freezes on the boot screen like this
#7598George King⇗ @imadam__ Try to boot again into installer and then open CMD (best to open notepad - open file and change to all file extensions to see whole file system) and delete ucx01000.sys in drivers folder in deployed XP, this is only one change in files that is before second boot of deployed system. I will see what is changed in registry too

[TOOL] POWIS - Powerful Windows Setup - Support Windows Vista, 7, 8.0, 8.1, 10, 11 and their Servers equivalent
⇗ https://forums.mydigitallife.net/threads...p-v1-0-1.83558/

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#7599imadam__so i deleted the ucx01000.sys and it actually boots.
#7600George King
Zitat von ⇗ imadam__ im Beitrag ¶ #7599
so i deleted the ucx01000.sys and it actually boots.


USB3.x doesn't work right? [TOOL] POWIS - Powerful Windows Setup - Support Windows Vista, 7, 8.0, 8.1, 10, 11 and their Servers equivalent
⇗ https://forums.mydigitallife.net/threads...p-v1-0-1.83558/

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#7601infuscomus
Zitat von ⇗ George King im Beitrag ¶ #7592
Can you test how it goes on your machine? If there is needed USB device restart - disable and enable device, I can add needed command to do it automatically before Snappy Driver Installer session start


⇗ @George King

This behavior still happens even after the XP installation has completed and I'm at the desktop. On every restart I need to disable and reenable the motherboard USB 3.0 controller.

To get around this I'm using a separate PCI-E USB 3.0 card with an ASMedia 2142 chip that works on every boot.
#7602imadam__yeah, my usb keyboard and mouse dont work, i have a ps/2 one though so i can install drivers in the OS
#7603diderius6⇗ @imadam__

When you go to device manager, what is shown for the Sata devices?
Can you look, which Sata driver is installed there and which Ven_&Dev_  number.
Are those numbers different for different Sata devices
Dietmar
#7604diderius6⇗ @imadam__

About USB on the B450 chipset
credit to ⇗ @pappyN4
Dietmar

Download the Windows 7 chipset pack for the B450 from AMD.

Install the 1.0.5.3 USB driver from USB31_PT for the controller and the hub. The drivers install fine, but when you insert a USB device like a mouse or USB flash drive it shows as having a Code 39 error. To fix, you will have to copy usbd.sys to your \system32\drivers folder for a live system. You can also modify the inf file in two spots to also copy over the usbd.sys file when it copies over the driver sys file like the amdxhc31.sys or amdhub31.sys.

EDIT: There are only USB files for 64 bit.
#7605George King⇗ @infuscomus Do you use same drivers that are in "Integral edition"?

I have compared them with ⇗ @daniel_k USB3.x and they are really different, maybe Ramsey patched them on his own and something is broken.

⇗ @imadam__ I would like to find out, why it happends. I have now replaced USB3.x driver with daniel_k version. I will see if all files are added correctly into repository. If yes, I will upload you another image to see if it can work automatically?

[TOOL] POWIS - Powerful Windows Setup - Support Windows Vista, 7, 8.0, 8.1, 10, 11 and their Servers equivalent
⇗ https://forums.mydigitallife.net/threads...p-v1-0-1.83558/

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/

 

Page 508

#7606diderius6⇗ @George King

May be, that you can add missed Dev_ ids for AMD USB just into ⇗ @daniel_k

[AMD.NTx86.5.1]
%AMDXHC.DeviceDesc% = AMDXHC, PCI\VEN_1022&DEV_YOURS

Dietmar
#7607George King⇗ @diderius6 See how much different are these two USB3x drivers



George King has attached files to this post [TOOL] POWIS - Powerful Windows Setup - Support Windows Vista, 7, 8.0, 8.1, 10, 11 and their Servers equivalent
⇗ https://forums.mydigitallife.net/threads...p-v1-0-1.83558/

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#7608imadam__the chipset drivers wont install. it just says "error opening installation log file. Verify that the specified log file location exists and is writable.
#7609diderius6⇗ @Mov AX, 0xDEAD  ⇗ @daniel_k

I think, that the Asmedia USB and those USB from AMD are similar.
May be it is possible, to take an Asmedia USB driver and make it work for newer AMD USB also

Dietmar
#7610George King
Zitat von ⇗ imadam__ im Beitrag ¶ #7608
the chipset drivers wont install. it just says "error opening installation log file. Verify that the specified log file location exists and is writable.


I will upload you another ISO to test. Meanwhile download Chipset DriverPack from here, placing it in driverpacks folder on USB will automatically install compatible driver if find any
 
https://download0.drp.su/driverpacks/
[TOOL] POWIS - Powerful Windows Setup - Support Windows Vista, 7, 8.0, 8.1, 10, 11 and their Servers equivalent
⇗ https://forums.mydigitallife.net/threads...p-v1-0-1.83558/

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#7611diderius6⇗ @George King

I noticed also, that the original Win8 USB driver (patch 2 from 5 May 2020) (with WppRecorder.sys )
from ⇗ @Mov AX, 0xDEAD
is more stable than all later versions with ntoskrn8.sys

Dietmar
#7612George King⇗ @diderius6 So you recommend that one with WppRecorder.sys?

⇗ @imadam__ This one is builded with ⇗ @daniel_k USB3.x driver, ucx01000.sys is added too after first reboot of deployed system. Let me know if there is same problem. If yes, maybe other driver needs to be installed before reboot too. Simply place all needed DriverPacks *.7z inside USB\driverpacks folder. Will be nice to catch this problem :)

 
https://www.mediafire.com/file/rbkvc10beuil34p/WinXP_AIO_ESD_v1.6_b5_w8_based.iso/file
[TOOL] POWIS - Powerful Windows Setup - Support Windows Vista, 7, 8.0, 8.1, 10, 11 and their Servers equivalent
⇗ https://forums.mydigitallife.net/threads...p-v1-0-1.83558/

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#7613diderius6⇗ @George King

I think, that ⇗ @daniel_k makes this USB driver brandnew after he learned a lot from transfering USB driver from Win8 => Win7.
Until  now, I have not tested those new ones from Daniel.

But I found a very interesting comment from ⇗ @canonkong :
For all AMD boards, you get crash with the ported USB driver from Win 8, if you use the generic USB device (this works for Intel).
But for AMD you HAVE to give the correct Dev_ from your board and this crash after boot and install with AMD USB devices is gone

[AMD.NTx86.5.1]
%AMDXHC.DeviceDesc% = AMDXHC, PCI\VEN_1022&DEV_7812


forbidden for AMD USB

%AMDXHC.DeviceDesc% = AMDXHC, PCI\VEN_1022&CC_0C0330


allowed for Intel USB

%INTELXHC.DeviceDesc% = AMDXHC, PCI\VEN_8086&CC_0C0330


Dietmar

PS: The same as for AMD USB in its *.inf may be true also for Asmedia USB, because they are very similar.
#7614Masterchief79
Zitat von ⇗ diderius6 im Beitrag ¶ #7536
@Masterchief79

The Bsod from your graphikcard can be memory related.
So make a try with a new *.iso,
but this time without the "5" in settings of Integral Edition 2021.5.15
Dietmar

Thank you, I'm gonna try that later and update you with my progress. I'm not getting back into my original XP install after I installed the GTS450 and the according driver. I don't think it's a GPU-related issue though.

Zitat von ⇗ diderius6 im Beitrag ¶ #7613
But for AMD you HAVE to give the correct Dev_ from your board and this crash after boot and install with AMD USB devices is gone


Can you elaborate on this and how to solve the error, assuming it's related to my ntoskrn8.sys BSOD?
#7615infuscomus⇗ @George King

Ramsey's XP Integral Edition uses ⇗ @Mov AX, 0xDEAD 's USB 3.0 driver since Mov specifically targeted XP when he made it.

⇗ @daniel_k is more interested in targeting windows 7 with his USB 3.0 driver.

I'm guessing the drivers are different since they target different versions of windows.
#7616imadam__i copied the driver packs to the USB:\driverpacks folder but they dont get installed
#7617George King⇗ @imadam__ So you used WinXP_AIO_ESD_v1.6_b5_w8_based.iso with Daniel_k USB3x driver? Was there same problem with ucx01000.sys?

I forgot that I removed it from ISO, download and place this SDI folder into USB:\support, then it will be automatically processed

[TOOL] POWIS - Powerful Windows Setup - Support Windows Vista, 7, 8.0, 8.1, 10, 11 and their Servers equivalent
⇗ https://forums.mydigitallife.net/threads...p-v1-0-1.83558/

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/

George King has attached files to this post

#7618George KingDuring XP2ESD v1.6 development was needed to do operations in CHCP 65001 in CMD which is not supported originally by XP. I found interesting patch, that can add support for CHCP 65001. Now I can use unicode characters in CMD. Patched CMD is used only during Windows XP Home conversion into WIM, but I hope you find this patch useful.

https://www.dostips.com/forum/viewtopic.php?p=34428#p34428


And if you want to use Copy + Paste into CMD, install Command Line Clipboard

https://dennisbabkin.com/clc/
[TOOL] POWIS - Powerful Windows Setup - Support Windows Vista, 7, 8.0, 8.1, 10, 11 and their Servers equivalent
⇗ https://forums.mydigitallife.net/threads...p-v1-0-1.83558/

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#7619imadam__when i do the SDI thing and install it it no longer boots and just goes to the xp boot screen for a long time and then a black screen.
#7620infuscomus⇗ @George King

If I'm not mistaken, daniel_k's USB 3.0 driver is targeted at windows 7 not XP - you can check for it's dependencies by putting the driver and XP's ntoskrnl.exe and hal.dll in the same folder and then opening the driver sys files with dependency walker.

 

Page 509

#7621George King
Zitat von ⇗ imadam__ im Beitrag ¶ #7619
when i do the SDI thing and install it it no longer boots and just goes to the xp boot screen for a long time and then a black screen.


Thats sad, probably bad incompatible driver. Otherwise you can place any *.7z compressed drivers in this folder to automate drivers installation. And what about ucx01000.sys with beta 5 ISO? [TOOL] POWIS - Powerful Windows Setup - Support Windows Vista, 7, 8.0, 8.1, 10, 11 and their Servers equivalent
⇗ https://forums.mydigitallife.net/threads...p-v1-0-1.83558/

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#7622George King
Zitat von ⇗ infuscomus im Beitrag ¶ #7620
@George King

If I'm not mistaken, daniel_k's USB 3.0 driver is targeted at windows 7 not XP - you can check for it's dependencies by putting the driver and XP's ntoskrnl.exe and hal.dll in the same folder and then opening the driver sys files with dependency walker.


Here is XP USB3.x driver by daniel_k / Mov. But maybe it's and old version?
https://forums.mydigitallife.net/threads/drivers-and-tools-to-run-windows-xp-on-newer-hardware.81607/
[TOOL] POWIS - Powerful Windows Setup - Support Windows Vista, 7, 8.0, 8.1, 10, 11 and their Servers equivalent
⇗ https://forums.mydigitallife.net/threads...p-v1-0-1.83558/

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#7623infuscomus⇗ @George King

That's the most recent version for XP as far as I know.
I also checked daniel_k's USB 3.0 driver against XP ntoskrnl/hal - no missing dependencies, so I think it should work.
#7624George King⇗ @infuscomus Yes, both of these USB3.x driver works. But when used one from "Integral Edition" ⇗ @imadam__ then was stuck on boot logo and after deleting ucx01000.sys was system bootable again.

[TOOL] POWIS - Powerful Windows Setup - Support Windows Vista, 7, 8.0, 8.1, 10, 11 and their Servers equivalent
⇗ https://forums.mydigitallife.net/threads...p-v1-0-1.83558/

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#7625infuscomus⇗ @George King

both versions have ucx01000.sys - but it's only the "integral edition" version that freezes?
#7626George King⇗ @infuscomus We need confirmation from ⇗ @imadam__

[TOOL] POWIS - Powerful Windows Setup - Support Windows Vista, 7, 8.0, 8.1, 10, 11 and their Servers equivalent
⇗ https://forums.mydigitallife.net/threads...p-v1-0-1.83558/

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#7627imadam__i deleted the ucx....sys file and it still wont boot.
#7628George King⇗ @imadam__ You confirmed ¶ here, when using beta 4 ISO and deleted usx....sys system was bootable. When using beta 5 ISO without driverpacks was what result?

[TOOL] POWIS - Powerful Windows Setup - Support Windows Vista, 7, 8.0, 8.1, 10, 11 and their Servers equivalent
⇗ https://forums.mydigitallife.net/threads...p-v1-0-1.83558/

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#7629imadam__it was bootable without the SDI thing  but with them it doesnt boot.
#7630infuscomus⇗ @George King

Whilst testing your WinXP_AIO_ESD_v1.6_b5_w8_based.iso in a VMWare VM I noticed that while the driver for the USB 3.0 controller installed correctly, but the USB 3.0 hub driver did not.

I had to manually point it to usbxhci.inf again before the hub would install.

Can you test in your own VM with USB 3.0 enabled and confirm this?
#7631imadam__im trying to install the usb 3 drivers manually in snappy driver installer in the OS but the OS completely freezes when i try to
#7632infuscomus⇗ @imadam__

can you try installing XP without the USB 3.0 drivers first, and only install the USB drivers after XP makes it to the desktop?
#7633imadam__thats what im doing. in snappy driver installer.
#7634infuscomus⇗ @imadam__

you can also without snappy driver installer instead manually point it to usbxhci.inf for installation.
#7635imadam__that still freezes it.

 

Page 510

#7636George King⇗ @imadam__ Thanks, that means only ucx01000.sys in from "Integral edition" cause this problem

EDIT: OK, seems like you need to find other (chipset etc) drivers and install them first before USB3.x


⇗ @infuscomus Confirmed. This seems to be caused by MSSTMake during processing drivers when is image prepared to capture. This is related to missing ucx01000.sys and related service registry keys. I have contacted MSSTMake author as this seems like a bug. Will see what he answer

[TOOL] POWIS - Powerful Windows Setup - Support Windows Vista, 7, 8.0, 8.1, 10, 11 and their Servers equivalent
⇗ https://forums.mydigitallife.net/threads...p-v1-0-1.83558/

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#7637YuriyCNWindows XP - 20 years!
Happy birthday!
#7638gordo999
Zitat von ⇗ imadam__ im Beitrag ¶ #7612
the chipset drivers wont install. it just says "error opening installation log file. Verify that the specified log file location exists and is writable.
⇗ @imadam__ I've had a lot of grief with this on W7 recently and it's all about file and folder permissions. Permission are not nearly as stringent in XP as in W7 so this may be a long shot.

Is there an error number? Do you see an 'access denied' anywhere?
#7639imadam__I got it to work btw
#7640infuscomus⇗ @imadam__

How?
Please tell us more.
#7641imadam__I mean the chipset drivers, still can't get usb drivers to work
#7642infuscomus⇗ @imadam__

If it's not working why did you say you got it to work?
#7643imadam__I meant I could get the chipset drivers to work, but not the usb driverd
#7644guzarguit was bootable without the SDI thing but with them it  ⇗ Windows XP 32Bit doesn't boot.
#7645George King
Zitat von ⇗ guzargu im Beitrag ¶ #7644
it was bootable without the SDI thing but with them it doesnt boot.


SDI = Snappy Driver Installer then it depends on used DriverPacks - there always can be bad driver in their collection of course [TOOL] POWIS - Powerful Windows Setup - Support Windows Vista, 7, 8.0, 8.1, 10, 11 and their Servers equivalent
⇗ https://forums.mydigitallife.net/threads...p-v1-0-1.83558/

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#7646imadam__i tried installing the AMDXHCI_XP_276_FINAL usb  drivers but it just froze :(
#7647diderius6⇗ @imadam__

What Sata drivers are shown in Device Manager and in Hardware which Dev_ ?
With my tests on the ASRock Fatal1ty AB350 Gaming K4 I noticed,
that very few Sata drivers work there correct. May be best is the original AMD sata driver
see post ¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (505)

and
¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (112)

and
¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (418)

Also I noticed, that on the Ryzen boards a lot PCI-e lines are shared. This gives crazy results,
for example sound or network. And I see, that the behavior with different Bios versions is different
and some of the the USB depends also on the cpu, because the Ryzen processor is like cpu with integrated own chipset.
So, put all out only graphikcard stays. And try different Sata slots,
because some go direct to cpu and some to the B450 chipset

Dietmar

PS: There is a new storport.sys from Kai Schtrom, which should pass through SMART information.
⇗ https://sourceforge.net/projects/storpor...-smart-support/
#7648imadam__am i looking for Hardware Ids? if so then for the sata driver AMD SATA Controller it

PCI\VEN_1022&DEV_43c8&SUBSYS_10621B21&REV_01
#7649diderius6⇗ @imadam__

Yepp, this is one Dev_ from the Sata devices. But there should be another Sata Dev_ for another Sata slot also.
And what is the exact name of the driver for Sata now
Dietmar
#7650imadam__yeah, theres another one also named "AMD SATA Controller"

PCI\VEN_1022&DEV_7901&SUBSYS_87471043&REV_51

 

Page 511

#7651diderius6⇗ @imadam__

Now the exact name with time stamp for the used Sata drivers please
Dietmar
#7652imadam__Name: AMD SATA Controller

Driver Provider: AMD
Driver Date: 3/29/2015
Driver Version: 1.2.1.402
Driver files: C:\Windows\System32\Drivers\amd_sata.sys
C:\Windows\System32\Drivers\amd_xata.sys

File Version: 1.2.001.0402 built by: WinDDK
#7653diderius6⇗ @imadam__

This looks like the original AMD Sata driver.
But even from it exist different versions.
Please go to windows\system32\drivers and look for the exact name of storport.sys with time stamp or can you upload this  storport.sys to ⇗ https://ufile.io/
Dietmar
#7654imadam__storport.sys - ⇗ https://ufile.io/7nwe2u0e
#7655diderius6⇗ @imadam__

Thanks,
this is the from win7 Sp1 backported version of storport.sys
6.1.7601.23403 (win7sp1_ldr.160325-0600)
But may be, that newer storport.sys from WinServer 2003 also works with this Sata driver
or the new one from Kai
Dietmar
#7656diderius6I just test original amd_sata.sys, build for Win7 bit 32.
It works without any modification(!) together for XP SP3 with storport.sys from Winserver 2003 SP2 vers. 5.2.3790.4485 .
But the for Trim used file amd_xata.sys shows 2 unfullfilled dependencies to ntoskrnl.exe

PoRegisterPowerSettingCallback
PoUnregisterPowerSettingCallback

Dietmar
#7657diderius6⇗ @imadam__

Can you please test this AMD Sata drivers?
First copy this storport.sys to folder windows\system32\drivers
And then try to change from running XP the Sata driver against those ones
Dietmar

⇗ https://ufile.io/vbwmo02m
#7658imadam__i tried using them files - but usb driver installatio still freezes - sorry for the wait
#7659diderius6Just in this moment my new board Asus rog strix b450-f gaming II arrives.

Before I make a try with the AB350 Asrock fatalty K4 board and Ryzen 3700x cpu.
There my new modded Sata driver for AMD works at once.

I use my own XP SP3 CD, just brandnew updated with only all XP SP3 updates and PosReady until May 2019,
my last modded acpi.sys and the AMD sata driver from below.

Thanks a lot to ⇗ @George King !

Dietmar

AMD Sata original driver for XP 1.2.1.321 using original storport from Server 2003 SP2 version 5.2.3790.4485
works for all(?) boards from AMD 400 serie

⇗ https://ufile.io/8rppgryz
#7660imadam__i tried to install the AMDXHCI XP 145-Final v3 and AMDXHCI XP 276-Final v3 USB 3 drivers and that got further - but i got a BSOD 0x0000008E
#7661juk777I wonder - how did you manage to install the driver from 2003 on XP, if NTx86.5.2 is written in your. inf file instead of NTx86.5. 1?
#7662diderius6⇗ @juk777

XP works also under the name NTx86.5.2 :)).
But a strange thing I noticed:
The file amd_xata.sys is not copied via txtsetup.oem and nlite.
When you add this file later via hand,
you get Bsod 0x7B on next reboot.
Dietmar

PS: I think, that amd_xata.sys is used for SMART information. And without changing something in storport.sys
SMART does not work for XP SP3.

EDIT: I make a try with the new storport.sys from Kai Schtrom, but keeping the original amd_sata.sys .
#7663daniel_k
Zitat von ⇗ diderius6 im Beitrag ¶ #7662
But a strange thing I noticed:
The file amd_xata.sys is not copied via txtsetup.oem and nlite.
When you add this file later via hand,
you get Bsod 0x7B on next reboot.

Dietmar, amd_xata.sys is a filter driver, used as a power management helper and to passthrough TRIM commands on Win7 and later.

Filter drivers are not required for basic operation and txtsetup.oem does not provide a way to install filter drivers during text mode setup.

amd_xata.sys is properly installed during GUI mode setup through the driver's INF file.

#7664diderius6⇗ @daniel_k

Nice to see you ).

I noticed another crazy behavior. On last boot I get Bsod 0x7B.
A closer look at the registry shows me, that no entry is in CriticalDeviceDatabase and also not the correct path
to the file amd_xata.sys in [HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\amd_sata].
I remember, when this happen: When you try to install a not signed driver in XP. After adding servicepacks,
the message is gone in XP setup : "Do you want to install unsigned drivers?"

This can be overcome with adding a file

WINNT.SIF

[Unattended]
NonDriverSigningPolicy = "Ignore"
DriverSigningPolicy = "Ignore"

This gives message direct at the beginning of Gui-Setup
"Inconsistant Strukture" and Setup fails.

Then I changed also, but with same result "Inconsistant Strukture" and Setup fails.

HIVEDEF.INF

HKCU,"SOFTWARE\Policies\Microsoft\Windows NT\Driver Signing","BehaviorOnFailedVerify",0x00010003,00000000


Hm, now it hangs with this settings on Text setup, I cant see the harddisk.
So it seems, that the direct installation of XP SP3 does not work with this driver from AMD 1.2.1.321.
#7665imadam__are you having the same issue as me (setup is starting wndows)

 

Page 512

#7666diderius6⇗ @imadam__

I tried the original AMD 1.2.1.321 Sata driver, fails always on 3. reboot with Bsod 0x7b,
even I integrate the amd_sata.sys in registry by hand, strange.

I tried the generic Storahci driver from Kai, fails on 2. reboot with Bsod 0x7b.
This driver gives randomally 0x7b even on first boot, so something unstable there.

Now the modded Sata driver AMD 1.2.1.402  from ⇗ @daniel_k I will try and the Win8 driver for AHCI from ⇗ @Mov AX, 0xDEAD .
When those driver also fail, I will try to use no update pack at all,
just naked original XP SP3 CD.

On the Asrock ab350 gaming k4 I can use the Asmedia 106 Sata scsiport driver with its own driver,
but this is not(?) possible on the board Asus rog strix b450-f gaming 2 .
(I remember some tests from ⇗ @daniel_k to make the Sata Asmedia 106 driver generic.
This has big advantage of no need for any storport.sys because it is a scsiport driver)

Later nvme boot, usb boot or ram boot are next next possibilities.

Tomorrow is another day
Dietmar
#7667imadam__xp2esd worked for me, probably becaus it uses windows 8 PE to install  which has native usb 3 and sata drivers
#7668diderius6⇗ @imadam__

With ⇗ @Mov AX, 0xDEAD AHCI driver from Win8,
blackscreen on 3. boot.
It looks, as if the Bios has a problem to detect, at which Sata port the harddisk is connected
Dietmar

EDIT: Yepp, when I change randomally the Sata connector, suddently the black screen is gone and for the very first time I can finish install of XP with ⇗ @Mov AX, 0xDEAD AHCI driver from Win8.
#7669diderius6⇗ @daniel_k

Can you tell me about your results of making the Asmedia 106 Sata driver generic?
You changed the DEV_ ID in the driver itself away from asmedia.
As far as I remember, the CD rom device was then shown also as harddisk )
Dietmar
#7670daniel_k⇗ @diderius6

Dietmar, my finding are here:
⇗ Generic SCSIAHCI driver for Windows XP

Original ASMedia SCSIPORT drivers v2.0.3.0001:
⇗ http://www.mediafire.com/file/llbijc030nvjmtl

The driver is completely generic, there is no hardware ID checking, just edit .inf and add a generic ID:
PCI\CC_010601

Good luck!
#7671juk777"AMD AHCI Driver 1.2.001.0210
It does not support Windows XP, although it is possible to work with certain combinations of the controller and the version of the AHCI module in the BIOS.
Use it at your own risk.
ATTENTION! 1.2.001.0210 does not support TRIM, and therefore is not recommended for working with SSD.
TRIM support appeared in 1.2.001.0263 (package 10.9 for Vista /7).
Latest versions: 1.2.001.0402 (Win7), 1.3.001.0276 (Win8).
It made sense to put it only in XP, where there was no one of its own, and in Vista, where MS was not very good.
In Windows 7 and newer-the built-in is not slower, and is more stable. "(C)
#7672diderius6⇗ @daniel_k

After integrating the Asmedia 106x with nlite in the Setup CD I get message,
"No harddisk for installation can be found".
This is not a bluescreen, this message appears after accepting EULA via F8.

Do I mod the *.inf and the TXTSETUP.OEM correct?
⇗ @canonkong wrote, that for AMD generic PCI\CC_010601 does not work and that you have to give the exact Dev_ ID
for AMD devices, what do you think
Dietmar

⇗ https://ufile.io/emm0asb9


EDIT: I remember from tests with USB boot, that exact this message appears when all was ok with the driver,
but the Bios does not recognice the harddisk because of no support for USB in very old Bioses.
#7673canonkong⇗ @diderius6
If your mainboards is ASUS, Enable Precision Boost Overdrive and Disable PBO FMax Enhancer in BIOS, because ASUS will freeze when booting if using the win8 port driver.
#7674diderius6I have to use Force LBA when formatting the harddisk in RMPrepUSB, if not I get a blinking cursor at the end of TXT Setup of XP.
But now, waaoh:)) for the very first time I can install XP SP3 without any problem!
For this I use the nice modded Sata driver from ⇗ @daniel_k , I add TXTSETUP.OEM to it
and integrate this driver via nlite
Dietmar

⇗ https://ufile.io/a0h27ulz
#7675diderius6⇗ @imadam__

I use for install XP on the board Asus Rog Strix b450-f gaming II an original XP SP3 CD without any extra service packs.
With the AMD Sata driver from ⇗ @daniel_k installation was very fast, without any problem.
Shutdown works also with the PS/2 keyboard connected.
An y-cable in the PS/2 slot does not work, message "No keyboard connected".
So you can use keyboard or mouse.

Just now I try to install the USB driver AMDXHCI_XP_276_FINAL from ⇗ @daniel_k .
On USB devices this gives Bsod 0x7E 0xC0000005 and on the other 0x8E 0xC0000005
The same for AMDXHCI_XP_FINAL_V3 .

Dietmar
#7676daniel_k
Zitat von ⇗ diderius6 im Beitrag ¶ #7672
Do I mod the *.inf and the TXTSETUP.OEM correct?

Yes, it's correct.

The driver works with Intel controller and even Jmicron's.
Those Ryzen AMD systems are complicated to deal with.

It's a shame, Intel is much more legacy compatible.

#7677imadam__Alright, I'll try that tomorrow maybe if I have time
#7678diderius6This is brandnew USB driver,
I think from work together ⇗ @Mov AX, 0xDEAD  and ⇗ @daniel_k .

This driver needs no storport.sys and so comes not in conflict with the Sata storport.sys.
And the very best is:

It works at once for all USB ports  :))))))))))!!!!!!!!!!!!
of the Board ASUS ROG Strix B450-F Gaming II

Dietmar

⇗ https://ufile.io/9879ypno

EDIT: Now this board becomes really interesting for XP. All drivers are there!
#7679diderius6On the Board ASUS ROG Strix B450-F Gaming II
I got nearly everything to work under XP SP3.

Acpi
Graphik
Sound
Lan
Com1 port
USB2, USB3
PS/2 port
Sata

Nvme works, see post
¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (513)

There is one not nice thing: The USB controller with Dev_149C crashes the compi at boot (hangs early).
Even sometimes with no USB device connected. I tried also the original Win8 USB driver from ⇗ @Mov AX, 0xDEAD from 5 May 2020. With this Usb driver, the board hangs always with Dev_149C enabled. So, on this board the new USB driver is better!
This controller with Dev_149C works, when the compi is already started (can enable it in Device Manager).
So I disable this controller Dev_149C in Device Manager.

The other controller with Dev_43D5 works with all USB devices, that I tested, no hang, no crash at all.
The PS/2 port makes no problem for shutdown, just works.

So, 4 USB ports 2 USB2, 2 USB3 are left for permanent working under XP SP3
Dietmar

#7680imadam__just curious - what graphics card is that? i ordered a gt 740 for gpu passthrough on linux but i can also use it on windows xp natively ::)

 

Page 513

#7681diderius6⇗ @imadam__

It is an Nvidia GT 730.
I just get 39001 Points with 3DMark 2001 on the Ryzen 3700x above,
this nice card seems to live forever
Dietmar

PS: I like this board a lot, now it is rock stable!
And from feeling it is fast..
#7682juk777And what specific version of mod acpi was used?
#7683diderius6⇗ @juk777

This one

⇗ https://ufile.io/jkvo34sp
#7684juk777And how did the experiments with the modification of the Server 2003 sata driver version 1.2.1.321 end?
#7685diderius6⇗ @juk777

Always Bsod 0x7B after 3. reboot. I notice, that the driver was not integrated and this can happen because of no driver signing.
With the new AMD Sata version from ⇗ @daniel_k  together with my TXTSETUP all is easy
Dietmar
#7686juk777How do you like Kai Schtrom StorAhci?
#7687diderius6⇗ @juk777

Before I thought, that the Ahci driver from Kai was the most generic.
But for the Asus Strix board it does not work
Dietmar
#7688diderius6The only nvme driver for XP SP3,
which works correct on the board ASUS ROG Strix B450-F Gaming II
with a lot of different nvme devices,
is the one from ⇗ @daniel_k .

The Samsung nvme driver shows on all nvme devices Code 10.
This means, that this Samsung driver is not the most generic

Dietmar

Working nvme driver for ASUS ROG Strix B450-F Gaming II
⇗ https://ufile.io/rdp8xw3g
#7689juk777And the respectable ⇗ @daniel_k will not try to modify Server 2003 sata driver version 1.2.1.321 to a working state?
#7690juk777"the processor always consumes significant power

The problem is again related to the disabled hardware ACPI blocks.
In ACPI described two modes of reduced power consumption C2 and C3,
to move the processor must record certain values in certain ports ACPI iron
then there is BACH and darkness, the CPU clock is no longer serving + the rest of the magic,
associated with the state of the internal cache, etc.
Because ACPI is now on the Board in truncated mode, Windows XP mode S2/S3 does not pass, though, and logs everything you need in ports.
The darkness does not come, the processor turns as if nothing had happened.
It is logical to ask - and how do Windows 7-10 save energy?
It's very simple - they use only the capabilities of the central processor without using the ACPI subsystem.

There are two options that can be achieved from the CPU:

classic hlt instruction, you can only switch to C1 mode

monitor/mwait instructions, switches to C7 or C10.

The solution for Windows XP is to patch one file so that instead of ACPI C2/C3, the same two processor methods are used... "(C)

Has it been decided yet? Which file is meant?
#7691daniel_k⇗ @diderius6

Dietmar, can you try this AHCI driver v1.2.001.0337 for Server 2003?
⇗ http://www.mediafire.com/file/1xg19o49kfv9u6l

Really hard to find and the last one for NT5.2.
#7692diderius6⇗ @daniel_k

Hi Daniel, I install those Server 2003 files via its modded *.inf

I can see what changed:

amd_sata.sys 1.2.1.402  =>  amd_sata.sys 1.2.1.337
amd_xata.sys 1.2.1.337  =>  amd_xata.sys 1.2.1.337

Both work.

Here I send you the compare of the modded  1.2.1.337 *.inf  file,
it is different from the modded  1.2.1.402 *.inf  file

Binary compare shows, that both amd_xata.sys 1.2.1.337 are identic.
But amd_sata.sys 1.2.1.402 is very different from amd_sata.sys 1.2.1.337

CrystalDiskInfo8_12_7 shows, start SMART also here works

Both drivers are very fast. This is the first time, that my hardisk shows 210 MByte/s.
The amd_sata.sys 1.2.1.402 is as fast as the amd_sata.sys 1.2.1.337

Dietmar
FILE COMPARISON
Produced: 29.08.2021 18:55:44

Mode: Just Differences

Left file: D:\amd_sata_1.2.001.0337_Server2003\amd_sata.inf
Right file: D:\WinXP-IE Optional Patch Integrator v3.2.0-beta\Integrator Files\Patches\AMD SATA driver v1.0\amd_sata.inf
2 ; Copyright (c) 2008-2012 AMD <> 2 ; Copyright (c) 2008-2015 AMD
------------------------------------------------------------------------
------------------------------------------------------------------------
10 DriverVer=10/12/2012,1.2.001.0337 <> 10 DriverVer=03/29/2015,1.2.001.0402
------------------------------------------------------------------------
------------------------------------------------------------------------
22 <>
23 [AhciPowerSetting]
24 Subgroup = {0012ee47-9041-4b5d-9b77-535fba8b1442}
25 Setting = {0b2d69d7-a2a1-449c-9680-f91c70521c60}, "AHCI Link Power Management - HIPM/DIPM", "Configures the LPM state.",,0x00000001
26
27 Value = 0, "Active", "Neither Host or Device initiated allowed", 0x00010001, 0
28 Value = 1, "HIPM", "Host initiated allowed only", 0x00010001, 1
29 Value = 2, "HIPM+DIPM", "Both Host and Device initiated allowed", 0x00010001, 3
30 Value = 3, "DIPM", "Device initiated allowed only", 0x00010001, 2
31 Value = 4, "Lowest", "HIPM+DIPM+DEVSLP", 0x00010001, 7
32
33 ; High Performance
34 Default = {8C5E7FDA-E8BF-4A96-9A85-A6E23A8C635C}, 0, 0
35 Default = {8C5E7FDA-E8BF-4A96-9A85-A6E23A8C635C}, 1, 1
36 ; Balanced
37 Default = {381B4222-F694-41F0-9685-FF5BB260DF2E}, 0, 1
38 Default = {381B4222-F694-41F0-9685-FF5BB260DF2E}, 1, 1
39 ; Power Saving
40 Default = {A1841308-3541-4FAB-BC81-F71556F20B4A}, 0, 2
41 Default = {A1841308-3541-4FAB-BC81-F71556F20B4A}, 1, 2
------------------------------------------------------------------------
------------------------------------------------------------------------
55 <>
------------------------------------------------------------------------
------------------------------------------------------------------------
-+ 42 ;FeatureScore=0xFE
------------------------------------------------------------------------
------------------------------------------------------------------------
106 HKR, "Parameters\Device","AmdSataDevSlp",%REG_DWORD%, 0x100 <> 86 HKR, "Parameters\Device","AmdSataDevSlp",%REG_DWORD%, 0x3E8
87 HKR, "Parameters\Device","AmdSataSWSP",%REG_DWORD%, 0x0F
------------------------------------------------------------------------
------------------------------------------------------------------------
139 <> 120 HKR, "StorPort", "EnableIdlePowerManagement", %REG_DWORD%, 0x01
------------------------------------------------------------------------
#7693diderius6Here is the for XP SP3 modded version of the file

amd_sata_1.2.001.0337_Server2003.7z

from ⇗ @daniel_k

Dietmar

⇗ https://ufile.io/0x3av66j
#7694diderius6⇗ @daniel_k


This AMD Sata driver amd_sata_1.2.001.0337_Server2003  works also with original storport.sys 5.2.3790.4485 from Win Server 2003

on XP SP3

and SMART, waaohh;))..

Dietmar
#7695daniel_k⇗ @diderius6

Thanks for your test report.

1.2.1.337 might be better for XP because 1.2.1.402 is signed for Win7 and may have removed compatibility code with 2003, which usually affects power management.
It's just a guess as I didn't do a more in-depth analysis of the code.

Are you using a mechanical HDD?

If you have a chance, please check if these drivers properly shutdown SSDs (save SMART before shutdown and after turning it on again).

 

Page 514

#7696diderius6⇗ @daniel_k

I copied whole mechanical harddisk to an Samsung 860 EVO SSD.
Cristaldiskmark shows 565 MByte/s , this is the highest value, that I have ever seen.

Shutdown works, SMART is written.

But the really crazy amazing is the boottime of XP with this SSD and
AMD Sata driver amd_sata_1.2.001.0337_Server2003:

1 sec        

Dietmar
#7697daniel_k
Zitat von ⇗ diderius6 im Beitrag ¶ #7696
Shutdown works, SMART is written.

Check POR Recovery Count attribute.

After a proper shutdown, it does not increase.

#7698diderius6⇗ @daniel_k

POR Recovery Count 99 before shutdown.

After restart

POR Recovery Count 99

Dietmar
#7699daniel_k⇗ @diderius6

Nice, the best AHCI driver for AMD systems!

Enjoy your new AMD system, you're surely having fun with it.
#7700diderius6⇗ @daniel_k

My last AMD system for daily use was from 2003, first of all with 64 bit.

But this is the first board since this time, that I like from AMD

ROG Strix B450-F Gaming II with Ryzen 3700x, Bios 4007, 32 Gbyte Ram

Dietmar
#7701infuscomus⇗ @diderius6

what do you not like about the Asrock AB350 G K4?
#7702diderius6⇗ @infuscomus

Not bad board and I test a lot with it.
But its Bios is crazy: You have sound or network or nvme,
4 tries always for USB boot, compi starts sometimes in 5 seconds and sometimes never,
sometimes after 40 sec.
I use it with this Ryzen 3700x, test everything what can be done better in Bios. For training it is good.

The Strix board is other, just an evolution in Bios
Dietmar
#7703gordo999
Zitat von ⇗ juk777 im Beitrag ¶ #7690
It is logical to ask - and how do Windows 7-10 save energy?
It's very simple - they use only the capabilities of the central processor without using the ACPI subsystem".
⇗ @juk777 ...I don't think the processor has much to do with power saving. All power saving circuits, that turn devices on and off, are on the motherboard as hardware. It is the ACPI system that controls the power saving hardware, as far as I know. Unless, of course, the processor has circuitry to shut itself down after all ACPI-controlled circuits are shut down. That would make no sense unless the processor states were stored on the CPU or on external storage.

Power saving states are controlled by hardware devices on the motherboard, by mosfet transistors. Does not make sense to put those devices into the processor. When you get to the lowest sleep state, which is hibernate, all the computer states are stored on disk along with the memory state.
#7704galagun
Zitat von ⇗ gordo999 im Beitrag ¶ #7703

Power saving states are controlled by hardware devices on the motherboard, by mosfet transistors.


Not anymore. Newer 2019+ CPUs have PWMs and Power Management IPs and microcode bolt in the CPU die.
Main power states may still depend on external mobo hardware, but intermediate microstates don't, and actually these are more important than main states to low overall hardware consumption. Idea taken from phone SoCs btw.
#7705juk777And here's another point: for Intel, the file intelppm.sys patched (the one that is "in the package" with the patched hal.dll), and amdk8.sys for AMD - no?
#7706gordo999
Zitat von ⇗ galagun im Beitrag ¶ #7704
Not anymore. Newer 2019+ CPUs have PWMs and Power Management IPs and microcode bolt in the CPU die.
⇗ @galagun ...I'm no expert on this but are you referring to CPU power state management? That's not the same as the ACPI-based power saving states, it has more to do with power management inside the processor.

⇗ https://link.springer.com/chapter/10.100...1-4302-6638-9_2

"As power management has become more and more complex, CPUs have added internal microcontrollers that have special firmware for managing the CPU power management flows. At Intel, these microcontrollers are called both the PCU (power control unit) and the P-Unit, and the code that they execute is called pcode".

As you know, it's vital to control the heat in a CPU as well as to keep its power consumption at a minimal level. Seems to me that's what the CPU built-in controller do. They may also be geared to hardware means of fighting software reverse engineering. Lot of secrecy around it.

ps. an example is the way they shut down unused cores and reduce the power to cores until they are needed.
#7707diderius6Hi,
I got few Asus boards P8H77-M with cpu i3-3240 for free.
But now it looks for me, that the TPM chip on this boards is enabled.
All boards show with connected screen endless light blue, black, white, blue, black, white..

Keyboard or mouse on PS/2 or on USB or Win8.1 setup CD or Win10 setup USB stick are complete ignorated.

Is there a chance, when I flash the socket Bios chip with EEpromer just with Bios from Website or
is it a lost case

Dietmar

EDIT: I cleared CMOS, put cmos batterie out, changes nothing.
Because all boards show exact the same behavior, they are not defekt.

EDIT2: Hm, may be it is really only something strange in Bios of each board, because in manual of the P8H77-M is written,

"This connector supports a TPM system, TPM 20-1"

Does this mean, that this board P8H77-M itself has no TPM at all? Then Bios flash will help!
#7708infuscomus⇗ @diderius6

If you can login to the BIOS I think it should be possible to wipe the key stored in the TPM and then you should be able to switch it off.
#7709gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #7707
All boards show with connected screen endless light blue, black, white, blue, black, white..
⇗ @diderius6 ...hey, Dietmar...back in the bad old days where the displays were tubes, vertical lines down the screen and right across it was called 'ringing'. Ringing refers to an oscillation modulating the beam as it scans across the screen.

With modern LCD screen, an electron beam is no longer swept across the screen, as you know, but something has to move the display pixel to pixel in a horizontal direction. At the same time, something sweeps it vertically. If there is something in a driver, or elsewhere, causing the screen pixels to be modulated in a regular manner, the result is vertical lines across the screen.

Can you see any video at all, or just a blank screen with vertical lines?

I would suggest your problem is in a driver that may not match your display specifications. BTW...I have read that a faulty power supply or bad power connections can do the same.
#7710diderius6⇗ @infuscomus ⇗ @gordo999

When I switch on the boards, the screen reacts soon and changes in a whole to this moving colors,
all over the LCD screen same color, no letters, no lines, just colors in full. It is HDMI and the connection works.
Yes, when I can reach the Bios, I can set everything back.
But the 16 boards do not react to anything, I have never seen before.
I tried different power sources, always the same.
What I think is, that somebody changes Bios to network boot
and succeed to tell the compi only via Bios, that no reaction to anything other at this time
Dietmar

PS: Today I will read out the Bios chip and then flash it new with Bios from webside of Asus and we will see..
I hope, that it is not possible to edit the Bios of the network card to make whole compi to behave like this.
The network is a 1 Gb LAN Realtek RTL8111F .

EDIT:
Just an idea: Is it possible, to delete in this readout Bios the lan card RTL8111F
and later update it normal with Website Bios?


Here is the 8 Mbyte original read out with nice EEpromer Revelprog IS of the Bios chip  W25Q64BV  of the ASUS P8H77-M

⇗ https://ufile.io/h3d2tlu3

 

Page 515

#7711daniel_k⇗ @diderius6

Dietmar, FYI your BIOS dump is from version 1202.

Make sure you save that dump so you can restore the MAC address later.

Download the latest BIOS version from 2014, open the .CAP with UEFITool NE, expand the tree, select Intel image and Extract as is.

Write the resulting .rom file to the eeprom and cross your fingers!
#7712diderius6⇗ @daniel_k

Oh, first I try to find out, from where you know, that it is Bios version 1202.
Now I find also:)).

I flashed the Bios chip with Asus website Bios 1202, without the "Cap" from Asus Bios and double check, that all works correct.
Now, the color show is gone on monitor, no output at all.
Before, the keyboard LED lits up for a short time, this is now gone also.
The compi starts (I hear ventilator from cpu starting),
but the compi looks now "more" dead than before, may be, because the MAC adress is gone and now the lan chip can not work at all
Dietmar
#7713daniel_k
Zitat von ⇗ diderius6 im Beitrag ¶ #7712
the compi looks now "more" dead than before, may be, because the MAC adress is gone and now the lan chip can not work at all

Did you try to remove all RAM sticks (only CPU) and power on the board to see if it beeps?
If it doesn't, flash the dump you saved and do the same test.

Do these boards were working at all? Maybe were replaced after a lightning strike?

#7714diderius6⇗ @daniel_k

I am sure, that all boards work.
I ask the "vendor" and he tells me this.
He told me also, that those boards where booted via network and Arch Linux.
And that a password for the (normal) UEFI Bios was set, which he dont knows.
This sounds strange for me, because in this case I should get the question "Enter Password",
which did not happen. And also I think, that normal Bios passwords can be killed with Batterie out and clear CMOS.
May be, that on newer motherboards this Bios password is stored at other place, who knows.

"If it doesn't, flash the dump you saved and do the same test."
Yes, this will be my next step if I have until now no other idea
Dietmar
#7715daniel_k⇗ @diderius6

Clear CMOS would work, even the manual says that and those boards are consumer models, nothing special.

Did you try an external graphics card? Might be worth a try.
#7716diderius6⇗ @daniel_k
At another board with the same light show before,
after Clear CMOS the light show is gone and now asks "Enter Password".
So, to clear CMOS is not enough for to cancel this normal UEFI Bios password
on the Asus board P8H77-M
Dietmar
#7717daniel_k⇗ @diderius6

Write the dumped BIOS back to the first board and see if the "light show is back".

Only if it does, dump the BIOS of the board that asks for the password and flash the original downloaded from ASUS.
I believe the password is stored in the eeprom itself.
#7718diderius6⇗ @daniel_k

For to test your idea,
I do not flash, but I change the Bios chips.
But now the second compi looks like dead as first one,
no flashing keyboard,
no light show, no asking for password.
When even the change of the Bioschip is not enough (I am 100% sure, that the flashing ends ok),
the UEFI BIos password or some parts of it must be stored at other place in compi also
Dietmar

EDIT: Now I change Bioschip back
and second compi asks for password again^^..
#7719daniel_k
Zitat von ⇗ diderius6 im Beitrag ¶ #7718
the UEFI BIos password or some parts of it must be stored at other place in compi also

It's strange as I've seen reports that flashing stock/manufacturer BIOS gets rid of the password.

Would be nice of the system administrator to clear the password before "donating" the boards.

#7720daniel_k
Zitat von ⇗ diderius6 im Beitrag ¶ #7718
Now I change Bioschip back
and second compi asks for password again^^..

What about trying that BIOS that asks for the password on the first board?

#7721diderius6⇗ @daniel_k

Yepp, exakt this I am doing just now

Dietmar
#7722diderius6⇗ @daniel_k

I notice, that in the board, that asks for password is a different bioschip

EN25F64

So, first I make with EEpromer a copy of this chip, it laaasts some time
before I put it in first compi

Dietmar
#7723diderius6⇗ @daniel_k

With Bios chip from Compi, that asks for password,
first compi is "dead" as before, no flashing keyboard.
May be, something is defekt with first board.
For next tests I use only second board,
which asks for password
Dietmar
#7724daniel_k⇗ @diderius6
I'd try to flash the dump back to the first board, remove the battery for some time and try to power it on again.
Sometimes hardware specific data in the BIOS image is part of the password protection.

⇗ @plutomaniac
Was thinking, does ME play any role related to UEFI admin password?
#7725diderius6⇗ @daniel_k

Just few min ago I get a mail with the password for all those boards.
The "seller" of those boards give me the mail adress, from the person, who gives to him all those boards.
And I write a kind mail to this person and he answered me in 15 min with the correct password.
The password is a little bit crazy:

ichhassems

Which means translated "I hate Microsoft" . Ok, on all the boards was Arch Linux^^, booted via network.
At the board, that asks for password, this password works at once.
I go to its Bios and delete the Admin password just now.
Now this boards is free, nice. Until now the only one, that is free.

From tomorrow I have more time and I will test dump the Bios of the other boards with password enabled.
Then I disable this password there and compare with Winhex, what changed in the Bios dump.
It looks, that it is not enough to change a Bioschip with Admin password against another Bioschip without password
Dietmar

EDIT: By the way, now I understand, WHY I get all those boards for free. The original owner of the boards did not tell his password to anyone before, even they ask a lot..

 

Page 516

#7726Masterchief79
Zitat von ⇗ diderius6 im Beitrag ¶ #7536
@Masterchief79

The Bsod from your graphikcard can be memory related.
So make a try with a new *.iso,
but this time without the "5" in settings of Integral Edition 2021.5.15
Dietmar

Hey, it's been a few days. I did what you suggested and burned another CD with the "5" disabled. XP installs fine, but the first time actually booting to OS after the setup is complete, I instantly get this ntoskrnl.exe BSOD. Before, it only happened after a few reboots and a GPU swap. Does that help to narrow the issue down?


Before and after:

#7727diderius6⇗ @Masterchief79

This Bsod is memory related. What exact happens I dont know

Dietmar
#7728infuscomus⇗ @Masterchief79

It might be one of the optional patches causing the BSOD - I think you might need to try trial and error to find out which one of the patches is causing the BSOD.

It's a shame ⇗ @Mov AX, 0xDEAD isn't around to give more info on that BSOD.
#7729diderius6⇗ @daniel_k

I make a test with Bios. This is readout from whole Bios chip with EEpromer Revelprog IS of the board ASUS P8H77-M
On the left side is without password and the right side is with password.
The diff file I make with Winhex
Dietmar

PS: Now in Bios is Password. And for the very last test I flash back the before readout without any password to the Bioschip with EEpromer.
And voila;)), on the same board now the Bios shows NO password and the compi starts normal.

This means: The major(?) part of the Admin password in UEFI Bios is stored in Bioschip.
CMOS I do not clear, so nothing of password in UEFI Bios is stored in CMOS.

Überprüfung auf Unterschiede

1. F:\P8H77-M-ASUS-1202\BiosOHNEPasswordtest220210903_235655_FLASH_25064.bin: 8.388.608 Bytes
2. F:\P8H77-M-ASUS-1202\MitPasswordTest220210904_000426_FLASH_25064.bin: 8.388.608 Bytes
Offsets: hexadez.

155BE: DC C8
155C9: 5C 48
155D4: DC C8
155DF: FF 48
155E0: FF F0
155E1: FF 00
155E2: FF 0D
155E3: FF 03
155E4: FF 00
155E5: FF 0C
155E6: FF 00
155E7: FF 07
155E8: FF 07
155E9: FF 03
155EA: FF C8
155EB: FF F0
155EC: FF 00
155ED: FF 02
155EE: FF 00
155F0: FF 40
155F1: FF 00
155F2: FF 07
155F3: FF 07
155F4: FF 04
155F5: FF DC
155F6: FF F0
155F7: FF 00
155F8: FF 2A
155F9: FF 00
155FA: FF 00
155FB: FF 48
155FC: FF 00
155FD: FF 07
155FE: FF 08
155FF: FF 00
15600: FF 48
15601: FF F0
15602: FF 00
15603: FF 0D
15604: FF 03
15605: FF 00
15606: FF 0C
15607: FF 00
15608: FF 07
15609: FF 08
1560A: FF 01
1560B: FF C8
1560C: FF F0
1560D: FF 00
1560E: FF 02
1560F: FF 00
15611: FF 40
15612: FF 00
15613: FF 07
15614: FF 08
15615: FF 02
15616: FF 5C
15617: FF F0
15618: FF 00
15619: FF 0D
1561A: FF 03
1561B: FF 00
1561C: FF 0C
1561D: FF 00
1561E: FF 07
1561F: FF 08
15620: FF 03
15621: FF DC
15622: FF F0
15623: FF 00
15624: FF 02
15625: FF 00
15627: FF 40
15628: FF 00
15629: FF 07
1562A: FF 08
1562B: FF 04
1C01D: 80 00
1C01E: FF 00
1C01F: FF 00
1C020: FF 1F
1C021: FF F8
1C098: FF 08
1C099: FF 09
1C7A0: FF 83
1C7A1: FF 0E
1C7A2: FF 00
1C7A3: FF 00
1C7A4: FF 00
1C7A5: FF 00
1C7A6: FF 13
1C7A7: FF 00
1C7A8: FF 0F
1C7A9: FF 0F
1C7AA: FF 00
1C7AB: FF 00
1C7AC: FF 00
1C7AD: FF 00
1C7B0: FF 84
1C7B1: FF 42
1C7B2: FF 5D
1C7B3: FF 00
1C7B4: FF 00
1C7B5: FF 00
1C7B6: FF 69
1C7B7: FF 89
1C7B8: FF 00
1C7B9: FF 00
1C7BA: FF 00
1C7BB: FF 00
1C7BC: FF 00
1C7BD: FF 00
1C7BE: FF 00
1C7BF: FF 00
1C7C0: FF 00
1C7C1: FF 00
1C7C2: FF 00
1C7C3: FF 00
1C7C4: FF 00
1C7C5: FF 00
1C7C6: FF 00
1C7C7: FF 00
1C7C8: FF 00
1C7C9: FF 00
1C7CA: FF 00
1C7CB: FF 00
1C7CC: FF 00
1C7CD: FF 00
1C7CE: FF 00
1C7CF: FF 00
1C7D0: FF 00
1C7D1: FF 00
1C7D2: FF 00
1C7D3: FF 00
1C7D4: FF 00
1C7D5: FF 00
1C7D6: FF 00
1C7D7: FF 00
1C7D8: FF 00
1C7D9: FF 00
1C7DA: FF 00
1C7DB: FF 00
1C7DC: FF 00
1C7DD: FF 00
1C7DE: FF 00
1C7DF: FF 00
1C7E0: FF 00
1C7E1: FF 00
1C7E2: FF 00
1C7E3: FF 00
1C7E4: FF 00
1C7E5: FF 00
1C7E6: FF 00
1C7E7: FF 00
1C7E8: FF 00
1C7E9: FF 00
1C7EA: FF 00
1C7EB: FF 00
1C7EC: FF 00
1C7ED: FF 00
1C7EE: FF 00
1C7EF: FF 00
1C7F0: FF 00
1C7F1: FF 00
1C800: FF 80
1C801: FF 4A
1C802: FF 00
1C803: FF 01
1C804: FF 02
1C805: FF 03
1C806: FF 04
1C807: FF 05
1C808: FF 06
1C809: FF 07
1C80A: FF 08
1C80B: FF 09
1C80C: FF 0A
1C80D: FF 0B
1C80E: FF 0C
1C80F: FF 0D
1C810: FF 0E
1C811: FF 0F
1C812: FF 06
1C813: FF 06
1C814: FF 06
1C815: FF 06
1C816: FF 06
1C817: FF 06
1C818: FF 00
1C819: FF 00
1C81A: FF 00
1C81B: FF 00
1C81C: FF 01
1C81D: FF 01
1C81E: FF 04
1C81F: FF 04
1C820: FF 01
1C821: FF 01
1C822: FF 00
1C823: FF 00
1C824: FF 00
1C825: FF 00
1C826: FF 00
1C827: FF 00
1C828: FF 00
1C829: FF 00
1C82A: FF 00
1C82B: FF 00
1C82C: FF 00
1C82D: FF 00
1C82E: FF 00
1C82F: FF 00
1C830: FF 00
1C831: FF 00
1C832: FF 00
1C833: FF 00
1C834: FF 04
1C835: FF 01
1C836: FF 01
1C837: FF 10
1C838: FF 00
1C839: FF 00
1C83A: FF 00
1C83B: FF 00
1C83C: FF 00
1C83D: FF 00
1C83E: FF 00
1C83F: FF 00
1C840: FF 00
1C841: FF 00
1C842: FF 00
1C843: FF 00
1C844: FF 00
1C845: FF 00
1C846: FF 00
1C847: FF 00
1C848: FF 00
1C849: FF 00
1C850: FF 81
1C851: FF 0E
1C852: FF 00
1C853: FF 00
1C854: FF 00
1C855: FF 00
1C856: FF 13
1C857: FF 00
1C858: FF 0F
1C859: FF 0F
1C85A: FF 00
1C85B: FF 00
1C85C: FF 00
1C85D: FF 00
1C860: FF 82
1C861: FF 42
1C862: FF 5D
1C863: FF 00
1C864: FF 00
1C865: FF 00
1C866: FF FD
1C867: FF 89
1C868: FF 00
1C869: FF 00
1C86A: FF 00
1C86B: FF 00
1C86C: FF 00
1C86D: FF 00
1C86E: FF 00
1C86F: FF 00
1C870: FF 00
1C871: FF 00
1C872: FF 00
1C873: FF 00
1C874: FF 00
1C875: FF 00
1C876: FF 00
1C877: FF 00
1C878: FF 00
1C879: FF 00
1C87A: FF 00
1C87B: FF 00
1C87C: FF 00
1C87D: FF 00
1C87E: FF 00
1C87F: FF 00
1C880: FF 00
1C881: FF 00
1C882: FF 00
1C883: FF 00
1C884: FF 00
1C885: FF 00
1C886: FF 00
1C887: FF 00
1C888: FF 00
1C889: FF 00
1C88A: FF 00
1C88B: FF 00
1C88C: FF 00
1C88D: FF 00
1C88E: FF 00
1C88F: FF 00
1C890: FF 00
1C891: FF 00
1C892: FF 00
1C893: FF 00
1C894: FF 00
1C895: FF 00
1C896: FF 00
1C897: FF 00
1C898: FF 00
1C899: FF 00
1C89A: FF 00
1C89B: FF 00
1C89C: FF 00
1C89D: FF 00
1C89E: FF 00
1C89F: FF 00
1C8A0: FF 00
1C8A1: FF 00
1C8B0: FF 83
1C8B1: FF 0E
1C8B2: FF 00
1C8B3: FF 00
1C8B4: FF 00
1C8B5: FF 00
1C8B6: FF 13
1C8B7: FF 00
1C8B8: FF 0F
1C8B9: FF 0F
1C8BA: FF 00
1C8BB: FF 00
1C8BC: FF 00
1C8BD: FF 00
1C8C0: FF A4
1C8C1: FF 40
1C8C2: FF 07
1C8C3: FF 09
1C8C4: FF 00
1C8C5: FF 5D
1C8C6: FF 00
1C8C7: FF 00
1C8C8: FF 00
1C8C9: FF 29
1C8CA: FF 8A
1C8CB: FF 00
1C8CC: FF 00
1C8CD: FF 00
1C8CE: FF 00
1C8CF: FF 00
1C8D0: FF 00
1C8D1: FF 00
1C8D2: FF 00
1C8D3: FF 00
1C8D4: FF 00
1C8D5: FF 00
1C8D6: FF 00
1C8D7: FF 00
1C8D8: FF 00
1C8D9: FF 00
1C8DA: FF 00
1C8DB: FF 00
1C8DC: FF 00
1C8DD: FF 00
1C8DE: FF 00
1C8DF: FF 00
1C8E0: FF 00
1C8E1: FF 00
1C8E2: FF 00
1C8E3: FF 00
1C8E4: FF 00
1C8E5: FF 00
1C8E6: FF 00
1C8E7: FF 00
1C8E8: FF 00
1C8E9: FF 00
1C8EA: FF 00
1C8EB: FF 00
1C8EC: FF 00
1C8ED: FF 00
1C8EE: FF 00
1C8EF: FF 00
1C8F0: FF 00
1C8F1: FF 00
1C8F2: FF 00
1C8F3: FF 00
1C8F4: FF 00
1C8F5: FF 00
1C8F6: FF 00
1C8F7: FF 00
1C8F8: FF 00
1C8F9: FF 00
1C8FA: FF 00
1C8FB: FF 00
1C8FC: FF 00
1C8FD: FF 00
1C8FE: FF 00
1C8FF: FF 00
1C900: FF 80
1C901: FF 07
1C902: FF 00
1C903: FF 00
1C904: FF 00
1C905: FF 00
1C906: FF 00
1A5BF2: FF CE
1A5BF3: FF 20
1A5BF4: FF 00
1A5C41: FF 8A
1A5C42: FF 20
1A5C43: FF 00
1A74FF: FF B5
1A7500: FF 07
1A7501: FF 00
1A7AE0: FF 9C
1A7AE1: FF 01
1A7AE2: FF 00
1A7AEE: FF 9C
1A7AEF: FF 01
1A7AF0: FF 00
1A7B0C: FF 90
1A7B0D: FF 01
1A7B0E: FF 00
1A7C67: 83 03
1A7C76: FF 4E
1A7C77: FF 56
1A7C78: FF 41
1A7C79: FF 52
1A7C7A: FF 0E
1A7C7B: FF 00
1A7C7C: FF AA
1A7C7D: FF 00
1A7C7E: FF 00
1A7C7F: FF 88
1A7C80: FF FD
1A7C81: FF 0A
1A7C82: FF 00
1A7C83: FF 00
1A7C84: FF 4E
1A7C85: FF 56
1A7C86: FF 41
1A7C87: FF 52
1A7C88: FF 12
1A7C89: FF 00
1A7C8D: FF 88
1A7C8E: FF EA
1A7C8F: FF 27
1A7C90: FF 00
1A7C91: FF 00
1A7C92: FF BA
1A7C93: FF B9
1A7C94: FF 00
1A7C95: FF 00
1A7C96: FF 4E
1A7C97: FF 56
1A7C98: FF 41
1A7C99: FF 52
1A7C9A: FF 0C
1A7C9B: FF 00
1A7C9C: FF 0C
1A7C9D: FF 00
1A7C9E: FF 00
1A7C9F: FF 88
1A7CA0: FF 00
1A7CA1: FF 00
1A7CA2: FF 4E
1A7CA3: FF 56
1A7CA4: FF 41
1A7CA5: FF 52
1A7CA6: FF 0C
1A7CA7: FF 00
1A7CA8: FF 8C
1A7CA9: FF 00
1A7CAA: FF 00
1A7CAB: FF 88
1A7CAC: FF 01
1A7CAD: FF 00
1A7CAE: FF 4E
1A7CAF: FF 56
1A7CB0: FF 41
1A7CB1: FF 52
1A7CB2: FF 0C
1A7CB3: FF 00
1A7CB7: FF 88
1A7CB8: FF 18
1A7CB9: FF 00
1A7CBA: FF 4E
1A7CBB: FF 56
1A7CBC: FF 41
1A7CBD: FF 52
1A7CBE: FF 0B
1A7CBF: FF 00
1A7CC0: FF B2
1A7CC1: FF 00
1A7CC2: FF 00
1A7CC3: FF 88
1A7CC4: FF 01
1A7CC5: FF 4E
1A7CC6: FF 56
1A7CC7: FF 41
1A7CC8: FF 52
1A7CC9: FF 5B
1A7CCA: FF 00
1A7CCE: FF 88
1A7CCF: FF 00
1A7CD0: FF 00
1A7CD1: FF 00
1A7CD2: FF 00
1A7CD3: FF 00
1A7CD4: FF 00
1A7CD5: FF 00
1A7CD6: FF 00
1A7CD7: FF 00
1A7CD8: FF 00
1A7CD9: FF 00
1A7CDA: FF 00
1A7CDB: FF 00
1A7CDC: FF 00
1A7CDD: FF 00
1A7CDE: FF 00
1A7CDF: FF 00
1A7CE0: FF 00
1A7CE1: FF 00
1A7CE2: FF 00
1A7CE3: FF 00
1A7CE4: FF 00
1A7CE5: FF 00
1A7CE6: FF 00
1A7CE7: FF 00
1A7CE8: FF 00
1A7CE9: FF 00
1A7CEA: FF 00
1A7CEB: FF 00
1A7CEC: FF 00
1A7CED: FF 00
1A7CEE: FF 00
1A7CEF: FF 00
1A7CF0: FF 00
1A7CF1: FF 00
1A7CF2: FF 00
1A7CF3: FF 00
1A7CF4: FF 00
1A7CF5: FF 00
1A7CF6: FF 00
1A7CF7: FF 3F
1A7CF8: FF 93
1A7CF9: FF DF
1A7CFA: FF 26
1A7CFB: FF 74
1A7CFC: FF BA
1A7CFD: FF 18
1A7CFE: FF 4D
1A7CFF: FF AA
1A7D00: FF E0
1A7D01: FF 43
1A7D02: FF 74
1A7D03: FF 0F
1A7D04: FF 07
1A7D05: FF A8
1A7D06: FF 9A
1A7D07: FF 52
1A7D08: FF 2E
1A7D09: FF FE
1A7D0A: FF C1
1A7D0B: FF 88
1A7D0C: FF 54
1A7D0D: FF 23
1A7D0E: FF E8
1A7D0F: FF FA
1A7D10: FF 7B
1A7D11: FF 93
1A7D12: FF 0E
1A7D13: FF 64
1A7D14: FF A2
1A7D15: FF B0
1A7D16: FF 35
1A7D17: FF 0B
1A7D18: FF C9
1A7D19: FF 66
1A7D1A: FF 5C
1A7D1B: FF C1
1A7D1C: FF EF
1A7D1D: FF 1C
1A7D1E: FF 83
1A7D1F: FF 02
1A7D20: FF 4E
1A7D21: FF 56
1A7D22: FF 41
1A7D23: FF 52
1A7D24: FF 0E
1A7D25: FF 00
1A7D26: FF 26
1A7D27: FF 00
1A7D28: FF 00
1A7D29: FF 88
1A7D2A: FF FE
1A7D2B: FF 0A
1A7D2C: FF 00
1A7D2D: FF 00
1A7D2E: FF 4E
1A7D2F: FF 56
1A7D30: FF 41
1A7D31: FF 52
1A7D32: FF 0C
1A7D33: FF 00
1A7D34: FF 0C
1A7D35: FF 00
1A7D36: FF 00
1A7D37: FF 88
1A7D38: FF 00
1A7D39: FF 00
1A7D3A: FF 4E
1A7D3B: FF 56
1A7D3C: FF 41
1A7D3D: FF 52
1A7D3E: FF 0C
1A7D3F: FF 00
1A7D40: FF 1A
1A7D41: FF 00
1A7D42: FF 00
1A7D43: FF 88
1A7D44: FF 01
1A7D45: FF 00
1A7D46: FF 4E
1A7D47: FF 56
1A7D48: FF 41
1A7D49: FF 52
1A7D4A: FF 0E
1A7D4B: FF 00
1A7D4F: FF 88
1A7D51: FF 0A
1A7D52: FF 00
1A7D53: FF 00
1A7D54: FF 4E
1A7D55: FF 56
1A7D56: FF 41
1A7D57: FF 52
1A7D58: FF 0C
1A7D59: FF 00
1A7D5A: FF 0C
1A7D5B: FF 00
1A7D5C: FF 00
1A7D5D: FF 88
1A7D5E: FF 00
1A7D5F: FF 00
1A7D60: FF 4E
1A7D61: FF 56
1A7D62: FF 41
1A7D63: FF 52
1A7D64: FF 0C
1A7D65: FF 00
1A7D69: FF 88
1A7D6A: FF 01
1A7D6B: FF 00
1A7D6C: FF 4E
1A7D6D: FF 56
1A7D6E: FF 41
1A7D6F: FF 52
1A7D70: FF 0B
1A7D71: FF 00
1A7D75: FF 88
1A7D76: FF 00
1A7D77: FF 4E
1A7D78: FF 56
1A7D79: FF 41
1A7D7A: FF 52
1A7D7B: FF 18
1A7D7C: FF 00
1A7D80: FF 83
1A7D81: FF 04
1A7D82: FF 42
1A7D83: FF 6F
1A7D84: FF 6F
1A7D85: FF 74
1A7D86: FF 46
1A7D87: FF 72
1A7D88: FF 6F
1A7D89: FF 6D
1A7D8A: FF 55
1A7D8B: FF 53
1A7D8C: FF 42
1A7D8D: FF 00
1A7D8E: FF 00

681 Abweichung(en) gefunden.


Bios WithOUTpassword ASUS P8H77-M
⇗ https://ufile.io/yz5ew0bb

Bios with Password ASUS P8H77-M
⇗ https://ufile.io/n4ytmjur
#7730daniel_k⇗ @diderius6

Congrats on your research!
Did you try on a password protected untouched board?

What about the first board, it's really defective?
#7731diderius6⇗ @daniel_k

Yesterday, after I delete Admin password in Bios, I set up XP SP3 on this second ASUS P8H77-M board.
Today just now I start XP one time, Bios without password and shut compi down.
Direct after this I read out Bios without Password.

Then I start this second board again, and hit F2 for Bios and set Admin password.
Then I shut this compi down. Then I start this compi with Password in Bios one more time, test via F2 if compi asks for password, yepp asks, I boot full XP and then shut down.
Direct after this I read out its Bios chip with password with EEpromer.

After this I flash back to this Bios chip the before readout without password and put the Bioschip without password back into compi.
And voila, Bios via F2 shows not password and compi starts normal XP SP3.

What happens to the first board I do not know. May be, that a compi with Admin password does not like to work with a Bios without password from other compi and refuses to start after this at all, means board is destroyed, even you flash its own, original Bios with password back. Because I have 16 identic boards, I will test this also, brr..
#7732daniel_k
Zitat von ⇗ diderius6 im Beitrag ¶ #7731
What happens to the first board I do not know. May be, that a compi with Admin password does not like to work with a Bios from other compi and refuses to start after this, means is destroyes. Because I have 16 identic boards, I will test this also, brr..

Yes, your best bet is to "clear" the password from the original dump using your technique above, then flash it on the first board.

#7733diderius6⇗ @daniel_k

I flash its own Bios with password back to first board.
First board does not awake. This means, that this board is destroyed,
possible before any operation with Bios on it.

On second board I flash the Bios from first board with password.
Now, second board is "dead" also.
When I flash back its own Bios without password to second board, it works again.
Then I flash back its own Bios with passport. It works again and asks for password.
When I give this password via F2 in Bios and delete there in Bios its Admin Password, second board is free and works without password and boots to XP.

Conclusions: If the Bios file from the first board has no other damage, this means, that you cant use an UEFI Bios chip with password on another board from same brand. And IF first board is ok, you cant use an UEFI Bios chip without password on another compi from same brand.
But the situation is not to 100% clear: Imagine, that the first compi AND its Bios with password has errors,
the behavior will be the same. So I need to test a 3. board, which asks for password and shows, that the board and Bios together are all ok on this 3. board.

And then, I test there on 3. compi the Bios without password from second compi
Dietmar

EDIT: Yessa, 3. board gives explanation to 100%. It asks at once for password.
Then I put in this board Bios chip from second board without password.
And voila, this 3. board now starts with Bios from 2. board without password.
And 3. board does not longer ask for password!

This means: First board has unknown problems. And also may be even its Bios has errors or it is just because of password protected.

Now the ultimative Hack for to overcome any Admin Password in UEFI Bios is, to put there just a Bios chip from another compi of same brand without password. This means, that the UEFI Bios Admin Password is ONLY stored in its Bios chip.

#7734daniel_k
Zitat von ⇗ diderius6 im Beitrag ¶ #7733
I flash its own Bios with password back to first board.
First board does not awake. This means, that this board is destroyed,
possible before any operation with Bios on it.

So even after flashing the original BIOS with password, it doesn't give that "light show" anymore?

What about trying to temporarily change the CPU?

#7735diderius6⇗ @daniel_k

CPU and Ram, both from first board, I put in 3. board.
Works.

This means, that the first motherboard itself has an unknown problem
Dietmar
#7736diderius6⇗ @daniel_k

At the very last I test, if it is possible, to boot from UEFI Bios chip from other compi (same brand) with other password.
Yes, it is, then Bios asks for this other Admin Password and you can go to Bios with this other password.
This means, that first board is defekt and that there are also errors in its original Bios, crazy
Dietmar
#7737diderius6⇗ @daniel_k

You can also use the Bios from Website and flash it with EEpromer
to your Bios chip for to overcome any UEFI BIOS Admin Password.

In this case you have to edit the Mac adress for the Lan by yourself.

I test this just now with Bios 1202 from Asus Website for board Asus P8H77-M, works;))..

Dietmar
#7738daniel_k⇗ @diderius6

Great, it was just a defective board after all.

Those 2nd/3rd gen boards are great for XP, native support etc. And for free!

Let us know how many boards are OK after testing them all.
#7739diderius6⇗ @daniel_k

Hihi,
I put everything out of the tower for board1.
I put everything out from board1.
I put everything new and clean in board1,

now it works;))
Dietmar

#7740daniel_k⇗ @diderius6


Those computer mysteries we can't explain.

 

Page 517

#7741gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #7739
now it works;))
⇗ @diderius6 ...for what it's worth...I had a heck of a time recently getting an Intel DQ35JOE to boot consistently. I have two identical boards and one board would boot while the other one would not. Then it reversed.

Seemed to be memory card placement, but I'm not sure. I was using memory cards of different sizes and from different manufacturers. I played with it for a while then settled on placing both of the larger cards in the A slots and the smaller cards in the B slots. The computer has been running stable now for several months. I think the problem might have been caused by me. It came originally with the smaller cards in the A-slot and I added larger memory sized cards in the B-slots.

The DQ35JOE has an interesting RTC jumper arrangement. With a jumper on 1 - 2 it runs normally. With the jumper on 2 - 3, it goes into Maintenance Mode, where you can perform several functions like clearing BIOS, etc. Anyway, between memory card placement/re-seating and working in Maintenance Mode, I now have the board running OK.

Btw...if the boards have been stored in a damp location, the contacts for the memory cards and the PCI   bus may have slightly corroded. It's easy to clean the card contacts but not so easily to get at the socket contacts. I used to apply 99% isopropyl alcohol to the card contacts and insert/re-insert them several times to clean the socket contacts. It would be better if you had some kind of material for insertion into the socket that would absorb the alcohol yet not leave lint on the socket contacts.

Typically, you can have a 0.5 volt drop across normal contacts. With a 5 volt supply you could get away with that but with the 3.3 volt rail voltage or 1.8 volts supplied to the processor it would be far more critical. I don't know how low the PCI voltages get but I presume it is critical to keep all the PCI and memory sockets as clean as possibly.

I wonder if there are products for cleaning the sockets, something you could insert into the various sockets to clean them with 99% isopropyl alcohol?
#7742ruthanI wonder if exists Killer E2500 WinXP driver? I managed to get working Killer E2200 card, but not found E2500 driver.
#7743diderius6⇗ @gordo999

Yes, this board is unstable.
I have seen this with bad contacts in memory slots. I clean all as good as I can,
helps a little but not complete.
When I take a closer look at this board, it looks as if it has been to repair,
so those problems have been there before also.
Until now I tested 3 boards from 16.
2 are rockstable and fast, I run a lot of tests on them
have a nice evening
Dietmar

PS: Now I can hack Admin Password in UEFI Bios on the fly ).
So, nice result in any case!
#7744mockingbird
Zitat von ⇗ infuscomus im Beitrag ¶ #7501
@mockingbird

OK, try this one.

Sorry for the late response again, it's been a busy couple of weeks.

Please see attached BSOD.

Zitat von ⇗ diderius6 im Beitrag ¶ #7507
@infuscomus @mockingbird @Masterchief79

I make a quick and dirty hack on last acpi.sys from outerspace ),
please try

Dietmar

⇗ https://ufile.io/9f6ng0y4

Thanks, this was a definite improvement.  Now, instead of getting stuck on the shutting down screen, the screen goes black and the monitor loses signal (yet the power stays on), but the system doesn't reboot.

mockingbird has attached images to this post  ⇗ IMG_20210905_232530787.jp
#7745diderius6⇗ @mockingbird

This screen you can see only,
when the last modded acpi.sys isnt any longer in Windows\System32\drivers

Dietmar
#7746mockingbird
@mockingbird

This screen you can see only,
when the last modded acpi.sys isnt any longer in Windows\System32\drivers

Dietmar

Ah, sorry for the misunderstanding, this isn't the case here...

A few pages back ⇗ @infuscomus was modifying my DSDT to fix my problem where my system would not reboot when a PS/2 mouse and keyboard were plugged in.

And you posted a modified acpi.sys. The BSOD is for ⇗ @infuscomus when testing his modded DSDT, and the report for the ACPI.sys is for you. Thanks
#7747 LOST
#7748 LOST
#7749 LOST
#7750 LOST
#7751 LOST
#7752gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #7748
Personally I dont like win10. Win8.1 I like a little, but most of all I like XP
Dietmar
⇗ @diderius6 ...Dietmar...I pinch my nose when I used W10, it stinks. However, with today's security issues, sites are beginning to demand W10. For example, online banking. If you get hacked while online, which is not likely if you are very careful, the banks will likely argue that you are using a Window's OS that is not properly secured. If you take it to court, the judges will likely accept the word of Microsoft.

Are you using the W8 version that uses the tiles instead of a Start button with menu? Even with W10, I use an app that changes the Start button back to the W7 version, so the tiles are gone and when you hit Start you get a W7-style menu. My W10 is not much different than W7/XP in appearance.

With the faster B360M mobo w/i5 processor, I hardly notice the difference in performance between XP and W10. There are other issues too. I run music apps on XP -32bit and the x86 plugins I use won't work on x64 bit systems. Therefore, I have converted to running the music apps on W7 - x64.
#7753infuscomus⇗ @mockingbird

So it manages to restart but fails to POST afterwards?

⇗ @diderius6

have you ever experienced anything like this in your testing?
#7754diderius6⇗ @infuscomus

Yes, I have seen this.
Until now only, when there is a problem with the Sata driver or on AMD boards with the PS/2 keyboard or with USB.
Other possibility is, that the original acpi.sys is changed back from System Restore into Windows\System32\drivers
Dietmar
#7755mockingbird
Zitat von ⇗ infuscomus im Beitrag ¶ #7753
@mockingbird

So it manages to restart but fails to POST afterwards?



Yes, correct.

Also, I'd like to confirm that System Restore is disabled, and System File Protection did not replace the ACPI.sys in the drivers folder.

 

Page 518

#7756infuscomus⇗ @mockingbird

It would seem that softmodding your DSDT with grub2 isn't the right approach in your case, I could never get past A5 0x03 BSOD no matter what I changed in the table.

an acpi.sys mod seems promising for you though - ⇗ @diderius6 can help with that.
#7757infuscomusIt would be nice if ⇗ @Mov AX, 0xDEAD would come back so that we might get the Vista RTM acpi.sys working reliably in XP instead of seeming at random from what ⇗ @diderius6 observed.

If Vista RTM acpi.sys can be made to reliably work in XP then it should also be possible to do the same with 7/8.1/10 acpi.sys
#7758diderius6⇗ @daniel_k ⇗ @gordo999

I get one more board Asus P8H77-M, complete with cpu  i3-3240 and 4 Gb ram, all complete in tower with power supply, harddisk and CD rom, keyboards and monitors.
From 17 of those boards 15 work fantastic stable. I run with AVX enabled prime95, 3dmark2001 and cinebench 11529 on them.
Temperature is always around 50 degrees, even under heavy load. USB3, USB2 runs very fast and stable with
nice Win8 ported driver from ⇗ @Mov AX, 0xDEAD .
I noticed another interesting "feature". On all of my newer compis from Intel or AMD, when you run those benchmarks,
a video running at the same time on Youtube always stocks. But with this "Ivy Bridge" chipset not. Hm why?
Stand By does not work under XP SP3 on those boards.

First board does not work stable and another board is from beginning "dead", shows no reaction.
This board I will check tomorrow a little bit further.
Now I have really a lot of platforms with monitors, keyboards for to test anything with XP, Bios hacks etc;))..
Dietmar
#7759diderius6Only the power source of this "dead" board is defect.
I just change it against the power source from the unstable board
and now I have a cluster of 16 Asus P8H77-M compis,
tested and work as brandnew.
Biosmod and to try to implement there legacy nvme can start now )
Dietmar
#7760daniel_k⇗ @diderius6

Congrats!

Do you have a soldering station or something?
#7761diderius6⇗ @daniel_k

I have a HOT air gun (be careful with your fingers;)) )
and other soldering staff.
Few years ago I was good in soldering.

Do you have an idea, how to implement a legacy nvme to the Bios of the Asus P8H77-M board ?
Few month ago I tried via nvme CSM Bios from another compi,
but this Bios does not work in full in legacy mode for XP
Dietmar

PS: Because the Bios chip is on socket on each of this boards,
with EEpromer Revelprog IS I can program everything as I want into this Bios without any risk.
#7762daniel_k
Zitat von ⇗ diderius6 im Beitrag ¶ #7761
Do you have an idea, how to implement a legacy nvme to the Bios of the Asus P8H77-M board ?

That board uses AMI Aptio 4, if I'm not mistaken.

See if an Aptio 4 BIOS supporting NVMe was ever released, so you could try to use those modules.

For Aptio 5 (my Z370 board), searching for INT13 in UEFITool NE, I can see many modules, for AHCI, NVMe and USB.

#7763diderius6⇗ @daniel_k

I compare the Bios for the board Asus H97M-E .
The last Bios version without nvme support 2401.CAP
with the first Bios with nvme 2402.CAP.

With UEFI tool I look for the word nvme (text Unicode and text normal).

I found the 3 known files only in Bios 2402.cap

Nvme
NvmeSmm
NVMEINT13

But the word nvme appears also in

Section_Freeform_subtype_GUID_97E409E6-4CC1-11D9-81F6-000000000000_Setup_Setup
Section_Raw_CSMCORE_CSMCORE


So I think, that to integrate those 3 files Nvme NvmeSmm NVMEINT13  into Bios from Asus P8H77-M is not enough.

How to edit in the Bios from Asus P8H77-M those 2 files for to have legacy nvme

Section_Freeform_subtype_GUID_97E409E6-4CC1-11D9-81F6-000000000000_Setup_Setup
Section_Raw_CSMCORE_CSMCORE


Dietmar
#7764daniel_k⇗ @diderius6

Try this using programmer:
⇗ http://www.mediafire.com/file/kdrtpvuxxeybf24

Basically, the key to CSM NVME support is in Section_Raw_CSMCORE_CSMCORE and maybe in Section_PE32_image_CsmDxe_CSMCORE_body.

ASRock H87 Pro4 Beta BIOS give us some clues:
⇗ https://www.asrock.com/mb/Intel/H87%20Pro4/index.asp#BIOS

At the end of Section_Raw_CsmDxe_CSMCORE_body, there is USB Storage and NVME Storage (when supported) blocks.
The USB Storage block is identical to your P8H77-M's BIOS.

There are differences in Section_PE32_image_CsmDxe_CSMCORE_body, but I don't know if they are really required or are result of other changes in the beta BIOS.
#7765diderius6⇗ @daniel_k

Thanks a lot for help. I think, together Bios has no chance;))..
Just now, with your for nvme modded Bios,
the board starts with all LEDs,
but no video output and no LED on keyboard.

Can you make a try with the original Bios (for nvme mod) from this board, which I just upload,
have a nice evening
Dietmar

⇗ https://ufile.io/vuz7te1r
#7766daniel_k⇗ @diderius6

Let's try one step at a time:
⇗ http://www.mediafire.com/file/q026p4ad215zbij

See if it boots and USB boot works.
#7767diderius6⇗ @daniel_k

With Test1 Bios, compi boots and all USB works, everything works normal.
But it hangs for USB3 or USB2 boot, blinking cursor direct at start, even in Bios the USB device is shown
Dietmar
#7768daniel_k⇗ @diderius6

Try Test2:
⇗ http://www.mediafire.com/file/miksjc1zws5m6iy
#7769diderius6⇗ @daniel_k

I make a crazy test:
I flash the whole Bios Z77EXT4  2.90P from Website for Asrock board
⇗ https://www.asrock.com/mb/intel/z77%20extreme4/#BIOS
I think, that this Bios for chipset Z77 is the only one with nvme support.

The compi starts, the nvme Samsung 960 pro
is recogniced in Bios,
but compi does not boot from it.
After boot to full XP via Sata disk with this Z77 Bios,
XP hangs
Dietmar
#7770daniel_k⇗ @diderius6

Crossflash is complicated.

In BIOS there are ID checks for chipset/device IDs, and Super I/O controller and programmable Voltage regulator must match.

 

Page 519

#7771diderius6⇗ @daniel_k

USB2,3 boot works with Bios Test 2
Dietmar
#7772daniel_k⇗ @diderius6

Here is test3:
⇗ http://www.mediafire.com/file/albf078hbiy35eg
#7773diderius6⇗ @daniel_k

With Bios test3,
the blue LED from the nvme Samsung 960 Pro is flickering at the very first boot stage.
This means, that it is recogniced from Bios!

But the nvme Samsung 960 Pro is not shown in Bios.

Usb2 boot still works as before, for USB3 boot now it boots only with an other Sata harddisk connected,
which you can switch off during boot from the USB3 harddisk in USB clothes. This strange behavior I know from other boards also, it means nothing
Dietmar
#7774daniel_k⇗ @diderius6

Test4, USB boot won't work, but NVME should:
⇗ http://www.mediafire.com/file/ljf2t0uwjbpwfve
#7775diderius6⇗ @daniel_k

The behavior with Bios test4 is as before:
The blue LED of the nvme Samsung 960 pro is flashing soon as you switch the compi on,
but it is not shown in Bios and you cant boot from it.
Now I set up a new XP for nvme boot. Because XP can be installed to a working boot device,
even it is not recogniced from Bios.
USB I do not test this time
Dietmar

EDIT: My try to set up XP direct to this nvme device does not work, gives blinking cursor at the very first begin of Setup.
EDIT2: This blinking happens, because of no USB support from Bios test4.

May be it is possible, to take all CSM parts from the Bios 2.90P
for the board from Asrock Z77 Extreme4 , which has legacy nvme support for Z77 chipset(!).
This is until now the only variant, which shows the nvme Samsung 960 pro in Bios of the board Asus P8H77-M .
#7776daniel_k⇗ @diderius6

I'm out of ideas.

Support for legacy boot is in CsmDxe (GUID: A062CF1F-8473-4AA3-8793-600BC4FFE9A8), for sure.

I don't understand the iteration between 'PE32 Image section' and 'Raw section', if in PE32 there are pointers to data in Raw section.
#7777diderius6⇗ @daniel_k

May be, that somebody here in the forum knows,
how to compile the whole CSM module for Bios
Dietmar
#7778infuscomus⇗ @daniel_k

are you willing to help me figure out why my TRX4 motherboard's USB 3.0 controller never works at boot?

the device ID is
PCI\VEN_1022&DEV_149C

It will work with your backported windows 8.0 driver if I disable and re-enable the controller in device manager after boot, but it never works at boot up.

any ideas for why it might be behaving like this?
#7779canonkong⇗ @infuscomus
If your amd mainboard is ASUS, it need to disable Fmax and Enable PBO in bios. ASUS bios bring the bug with its special function. Other mainboards not need to do that.
#7780infuscomus⇗ @canonkong

my motherboard is an ASRock TRX40 DESIGNARE

how did you find out about this bug? are you sure only ASUS boards have the bug?
#7781George King⇗ @skullteria I saw you updated your⇗  One-Core-Api GitHub repository. Can you upload also compiled dlls so I can add option into XP2ESD to added them and provide new apps support? I would also create RES patched to get multilanguage support on replaced system files (if possible)

Can you please post compiled dlls and some notes How-to use them? It should be great plugin for XP2ESD if it really adds DX10 and new apps like latest Chrome support

[TOOL] POWIS - Powerful Windows Setup - Support Windows Vista, 7, 8.0, 8.1, 10, 11 and their Servers equivalent
⇗ https://forums.mydigitallife.net/threads...p-v1-0-1.83558/

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#7782diderius6⇗ @daniel_k

I inserted with MMTool 4.50.0.23
the 3 files Nvme  NvmeSmm NVMEINT13 for legacy nvme boot from the
Asrock Bios 2.90P for their board Z77EXT4 into my original Bios 1202 board15 for my Asus P8H77-M board.
Same effect as your try: The blue LED flashes on the Samsung 960 Pro nvme device,
but it is not listed in Bios and I also cant install XP on it

Dietmar
#7783daniel_k⇗ @infuscomus

Try to install Win 8.0 and see if all USB ports work.
If they do, issue is ACPI related.

If it's a driver issue, can't help.
If it's an ACPI issue, we need someone to improve acpi.sys.
#7784daniel_k⇗ @diderius6

Like I've said before, those NVME modules aren't enough.
Try also to replace the CsmDxe module.
#7785diderius6⇗ @daniel_k

Yepp,
I just did it and voila,
now the Samsung 960 Pro is listed as boot device on the board Asus P8H77-M
with its own, for nvme edited Bios 1202 board15.
Dietmar

PS: I am just installing XP on this nvme device

 

Page 520

#7786daniel_k⇗ @diderius6

Nice, but what about booting other devices (USB, SATA)?
#7787diderius6⇗ @daniel_k

USB3 does not work, only USB2.

Sata I have disconnected all

Dietmar

#7788daniel_k⇗ @diderius6

After testing the current hack, try to also replace USB related modules and/or SATA modules as well, if the ports don't work.
#7789diderius6⇗ @daniel_k

TXTsetup of XP works without any error.
But after reboot and Gui Setup I get message "read error",
so some more work has to be done.
But it looks, that in principe it can be done
Dietmar
#7790daniel_k⇗ @diderius6

Try to replace other dependencies, such as 25ACF158-DD61-4E64-9A49-55851E9A26C7 (CsmBlockIo).
#7791diderius6⇗ @daniel_k

It looks, as if in Gui Setup of XP,
Bios tries to boot the nvme disk with its Sata driver
Dietmar
#7792daniel_k⇗ @diderius6

Dietmar, the easiest way to test this, is to install either Win7 with NVME hotfix or Win8.1.
#7793diderius6⇗ @daniel_k

This time I dont work as chirurg,
just more like slaughter;)).
With Uefi Tool I integrate the 3 nvme files
and also change the whole csmcore driver from Asrock Bios 2.90P for Z77EXT4
into Bios 1012 for the Asus P8H77-M board.

But the effect is the same: The nvme device Samsung 960 Pro is shown in Bios, it is shown there also as boot device,
all works nice in TXT Setup from XP, but on GUI Setup I always get message "Disk read error".

Now USB3 works
Dietmar
#7794skullteria
Zitat von ⇗ George King im Beitrag ¶ #7781
@skullteria I saw you updated your⇗  One-Core-Api GitHub repository. Can you upload also compiled dlls so I can add option into XP2ESD to added them and provide new apps support? I would also create RES patched to get multilanguage support on replaced system files (if possible)

Can you please post compiled dlls and some notes How-to use them? It should be great plugin for XP2ESD if it really adds DX10 and new apps like latest Chrome support



Hello friend, i already updated and upload version 2.0 on github.
⇗ https://github.com/Skulltrail192/One-Cor...eleases/tag/2.0
#7795diderius6⇗ @daniel_k

I take a look, what XP writes on the nvme Samsung 960 Pro via TXT Setup of XP on the Asus P8H77-M board.
XP TXT Setup builds an ntbootdd.sys from the nvme driver and in boot.ini an signature entry.
This happens always, when INT13 fails in Bios.
ntbootdd.sys works on scsiport.sys base and so any driver, that uses storport.sys on the bootdevice fails.

Strange, because the nvme Samsung 960 Pro is listed as bootdevice in Bios
Dietmar
#7796infuscomus⇗ @daniel_k

Hi
In windows 8.0 all the motherboard USB 3.0 ports work correctly.

So it is an ACPI related issue.
any interest in helping me with this? acpi.sys mod? DSDT mod?
#7797daniel_k⇗ @infuscomus

Unfortunately a crash is easier to figure out.
Malfunction would be hit and miss game.
#7798diderius6⇗ @infuscomus

For better understanding, what is going on with this crazy USB,
make a try with a new XP install, hitting F5 and then "Standard PC",
means no Acpi at all
Dietmar
#7799AndaluIs there any way to always have a USB3 device recognized as such when connected to a USB 3.0 switch hub (Generic SuperSpeed USB Hub)?
Unfortunately, this doesn't always happen and many times the USB3 device (as the only device connected to the hub) is recognized as USB2 (Generic USB 2.1 Full Speed Hub).

The only way that so far seems to work better when the USB3 device is recognized as USB2 is to disconnect the USB cable of the device itself and quickly reconnect it to another USB port of the switch HUB (as I read somewhere on the web). But this way doesn't always work on the first try.

An alternative way seems to be to shut down the system and not reboot immediately but after some time, in this case you will almost certainly get the correct recognition of the USB3 device. Both methods are not a definitive solution.
I tried all versions of XP USB3 drivers. Also tried another usb switch and two different PCIEx to USB3 cards in addition to the intel controller on 3 different systems: same behavior.


P.S.:  the switch hub is powered with an additional USB cable. A USB "Y" cable for the USB3 device for additional power did not help.
#7800juk777⇗ @infuscomus Hi! OnceCoreApi2.0 - and what to do about it? Is it easy to install or should there be some kind of sequence?
Everything in a row or something specific?

 

Page 521

#7801infuscomus⇗ @juk777

I've never gotten it to work.
ask ⇗ @skullteria
#7802juk777⇗ @infuscomus I'm sorry - I made a mistake...

⇗ @skullteria  Hi! OnceCoreApi2.0 - and what to do about it? Is it easy to install or should there be some kind of sequence?
Everything in a row or something specific?
#7803skullteria
Zitat von ⇗ juk777 im Beitrag ¶ #7802
@infuscomus I'm sorry - I made a mistake...

@skullteria  Hi! OnceCoreApi2.0 - and what to do about it? Is it easy to install or should there be some kind of sequence?
Everything in a row or something specific?


Hello friend, please, download version 2.0 on "Releases"
⇗ https://github.com/Skulltrail192/One-Cor...eleases/tag/2.0

And see instructions to install and install sequence on readme:
⇗ https://github.com/Skulltrail192/One-Core-API-Binaries
#7804TwinThe webcams problems in PAE mode were mentioned here several times, but there were no solutions of them. I have plug and play SilverCrest Webcam WC2230, on my Win7 32-bit partition it uses only one driver - usbvideo.sys, and works perfectly in PAE mode. On the other hand, on my WinXP 32-bit partition this one driver is not enough; the system installs also kernel streaming driver (ks.sys), which loads yet other 12 co-drivers: dshowext.ax, iyuv_32.dll, ksproxy.ax, kstvtune.ax, ksuser.dll, kswdmcap.ax, ksxbar.ax, msh263.drv, msyuv.dll, tsbyuv.dll, vfwwdm32.dll, and vidcap.ax. In PAE mode XP system freezes (audio is working but video not) and needs forced restart. It does not matter if I use the WinXPPAE 3.5 or Fix128 0.48. There are 2007 year firm drivers available, if used, they replace in both XP+7 systems usbvideo.sys, no problem with PAE on Win7, but on WinXP the second driver ks.sys remains with all 12 co-drivers and video in PAE mode is not working as well, only in this case the XP system does not freeze.

My question to this community is: What is the true cause? Either the PAE incompatibility of one of the 12 co-drivers, or the general problem of patched AMD USB drivers (which otherwise best fit my Intel 100 Series/C230 Skylake) that is responsible for similar issues like checkdisk of flash drives or non-functional sleep mode? If the second alternative is true, is then possible to buy an external USB card with PAE compatible drivers (ASMedia, VIA...) in order to make webcam working on PAE XP?
#7805juk777⇗ @skullteria  Thanks. What does it mean:

"you can't install Base installer and others packages side by side with Kernel Standalone installed"?

Conflict? Or...?
#7806George King
Zitat von ⇗ pappyN4 im Beitrag ¶ #6265
Success for Win8 generic USB3 driver for XP x64.  Full credit to Mov AX, 0xDEAD for showing the way.

¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (328)
¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware

WDF 1.11 is same. Some minor differences for x64 USB compared to x86.

KeInitializeSpinLock exists for x86 ntoskrnl.exe but for x64 function needs to be added in emu_extender.  Also, usbd.sys also needs to be changed to use ntoskrn8. For anyone trying this, you can use a hex editor like hexplorer to change and Dependency Walker to make sure everything links together.   PEChecksum.exe when finished with changes.

x86
wpprecorde8 - no change - KeInitSpinLock from ntoskrnl.exe
usb8 - no change - KeInitSpinLock from ntoskrnl.exe
ucx01000 - change to wpprecorde8 and ntoskrn8.sys - KeInitSpinLock from ntoskrn8->ntoskrnl.exe
usbxhci- change to wpprecorde8 and ntoskrn8.sys - KeInitSpinlock from ntoskrn8->ntoskrnl.exe
usbhub3 - change to wpprecorde8 and ntoskrn8.sys ksecd8 usb8 - KeInitSpinlock from ntoskrn8->ntoskrnl.exe

x64
wpprecorde8 - no change - does not use KeInitSpinLock
usb8 - change to ntoskrn8.sys - KeInitSpinLock from ntoskrn8:function
ucx01000 - change to wpprecorde8 and ntoskrn8.sys - KeInitSpinLock from ntoskrn8:function
usbxhci - change to wpprecorde8 and ntoskrn8.sys - KeInitSpinLock from ntoskrn8:function


usbhub3 - change to wpprecorde8 and ntoskrn8.sys ksecd8 usb8 - KeInitSpinlock from ntoskrn8:function

ksecd8 same as x86 instructions

__security_cookie does need to be changed.  If you skip it, driver will BSOD on you.  I used IDA free to lookup the hex position value of where the cookie is then changed to a random value

x86
usb8 6.2.9200.20761
hexposition: 1600
value: 4E E6 40 BB

ucx01000 6.2.9200.22453
hexposition: 14E00
value: 4E E6 40 BB

usbhub3 6.2.9200.21180
hexposition: 27C00
value: 4E E6 40 BB

usbxhci 6.2.9200.22099
hexposition: 2A800
value: 4E E6 40 BB

wpprecorde8 6.2.9200.16384
hexposition: 1E00
value: 4E E6 40 BB

x64
usbxhci 6.2.9200.22099
hexposition: 39100
value: 32 A2 DF 2D 99 2B

ucx01000 6.2.9200.22453
hexposition: 1AD00
value: 32 A2 DF 2D 99 2B

usb8 6.2.9200.20761
hexposition: 2100
value: 32 A2 DF 2D 99 2B

wpprecorde8 6.2.9200.16384
hexposition: 2500
value: 32 A2 DF 2D 99 2B

usbhub3 6.2.9200.21180
hexposition: 32D00
value: 32 A2 DF 2D 99 2B



For emu_extender, the following changes.  Add KeInitializeSpinLock_k8 function, thanks Mov AX, 0xDEAD.  Then modify one existing function.   Changes in bold.
void FASTCALL
KeInitializeSpinLock_k8(
KSPIN_LOCK* SpinLock)
{
*SpinLock = 0;
}


void
Initialize (PUNICODE_STRING RegistryPath)
{
KLOCK_QUEUE_HANDLE LockHandle;

g_GuardedRegionCounter = 0;

KeInitializeSpinLock_k8(&g_SpinWorkerRoutineArray);
KeAcquireInStackQueuedSpinLock(&g_SpinWorkerRoutineArray, &LockHandle);
{
g_LastUsedWorkerRoutineArray_Entry = 0;
RtlZeroMemory(WorkerRoutineArray, sizeof(WorkerRoutineArray));
}
KeReleaseInStackQueuedSpinLock(&LockHandle);

KeInitializeSpinLock_k8(&g_SpinCreateProcessNotifyExArray);
KeAcquireInStackQueuedSpinLock(&g_SpinCreateProcessNotifyExArray, &LockHandle);
{
g_LastUsedCreateProcessNotifyExArray_Entry = 0;
RtlZeroMemory(CreateProcessNotifyExArray, sizeof(CreateProcessNotifyExArray));
}
KeReleaseInStackQueuedSpinLock(&LockHandle);

}


ADD
#pragma comment (linker, "/export:__C_specific_handler=ntoskrnl.__C_specific_handler")
#pragma comment (linker, "/export:_local_unwind=ntoskrnl._local_unwind")
#pragma comment (linker, "/export:_purecall=ntoskrnl._purecall")
#pragma comment (linker, "/export:_snwprintf=ntoskrnl._snwprintf")
#pragma comment (linker, "/export:_stricmp=ntoskrnl._stricmp")
#pragma comment (linker, "/export:_strnicmp=ntoskrnl._strnicmp")
#pragma comment (linker, "/export:_vsnwprintf=ntoskrnl._vsnwprintf")
#pragma comment (linker, "/export:_wcsicmp=ntoskrnl._wcsicmp")
#pragma comment (linker, "/export:_wcsnicmp=ntoskrnl._wcsnicmp")
#pragma comment (linker, "/export:ExAcquireFastMutex=ntoskrnl.ExAcquireFastMutex")
#pragma comment (linker, "/export:ExpInterlockedPopEntrySList=ntoskrnl.ExpInterlockedPopEntrySList")
#pragma comment (linker, "/export:ExpInterlockedPushEntrySList=ntoskrnl.ExpInterlockedPushEntrySList")
#pragma comment (linker, "/export:ExQueryDepthSList=ntoskrnl.ExQueryDepthSList")
#pragma comment (linker, "/export:ExReleaseFastMutex=ntoskrnl.ExReleaseFastMutex")
#pragma comment (linker, "/export:IoIs32bitProcess=ntoskrnl.IoIs32bitProcess")
#pragma comment (linker, "/export:IoWMIDeviceObjectToProviderId=ntoskrnl.IoWMIDeviceObjectToProviderId")
#pragma comment (linker, "/export:KeAcquireSpinLockRaiseToDpc=ntoskrnl.KeAcquireSpinLockRaiseToDpc")
#pragma comment (linker, "/export:KeLowerIrql=ntoskrnl.KeLowerIrql")
#pragma comment (linker, "/export:KeReleaseSpinLock=ntoskrnl.KeReleaseSpinLock")
#pragma comment (linker, "/export:KfRaiseIrql=ntoskrnl.KfRaiseIrql")

CHANGED FROM
#pragma comment (linker, "/export:KeInitializeSpinLock=ntoskrnl.KeInitializeSpinLock")
TO
#pragma comment (linker, "/export:KeInitializeSpinLock=KeInitializeSpinLock_k8")


Using the x86 as guide I think i found the correct spot to make the change for x64 version for USB3.0 speed reporting fix. USBTreeView shows as (0x03 (Super-Speed))
x86
usbhub3 6.2.9200.21180
hexposition: 9058
change: 75 09 -> EB 09 (jnz -> jmp)

x64
usbhub3 6.2.9200.21180
hexposition: A44B
change: 75 0A -> EB 0A (jnz -> jmp)




change inf NTamd64 -> NTx86 if using for x86

;
; usbhub3.inf
;
; Copyright (c) Microsoft Corporation. All rights reserved.
;

[Version]
signature="$Windows NT$"
Class=USB
ClassGUID={36FC9E60-C465-11CF-8056-444553540000}
Provider=%Msft%
DriverVer=05/01/2018,6.2.9200.16384

[SourceDisksNames]
1="Generic USB 3.0 Hub Driver"

[SourceDisksFiles]
usbhub3.sys = 1
usb8.sys = 1
ksecd8.sys = 1

[ControlFlags]
BasicDriverOk = *
ExcludeFromSelect = *

[DestinationDirs]
DefaultDestDir = 12

[Manufacturer]
%GenericHub.Mfg%=GenericHub, NTamd64

;
; ---------------------- HUB3 Controllers ----------------------
;

[GenericHub.NTamd64]
%UsbHub3.RootHubDeviceDesc%=GenericHub.Install, USB\ROOT_HUB30
%UsbHub3.Usb30HubDesc%=GenericHub.Install, USB\USB30_HUB
%UsbHub3.Usb20HubDesc%=GenericHub.Install, USB\USB20_HUB

[GenericHub.Install.NT]
CopyFiles=GenericHub.CopyFiles

[GenericHub.Install.NT.Services]
AddService=USBHUB3, 2, GenericHub.AddService

[GenericHub.AddService]
DisplayName = %UsbHub3.SVCDESC%
ServiceType = 1 ; SERVICE_KERNEL_DRIVER
StartType = 3 ; SERVICE_DEMAND_START
ErrorControl = 1 ; SERVICE_ERROR_NORMAL
ServiceBinary = %12%\UsbHub3.sys
LoadOrderGroup = Base
AddReg = ServiceHub_AddReg

[GenericHub.Install.NT.WMI]
; Set access permissions for UI WMI GUIDs
WMIInterface = {4E623B20-CB14-11D1-B331-00A0C959BBD2},,WMIGuidSecurity_AllRights

[ServiceHub_AddReg]
HKR, , BootFlags, 0x00010001, 16 ; CM_SERVICE_USB3_DISK_BOOT_LOAD
HKR, Parameters\Wdf, LogPages, 0x00010001, 3 ; KMDF IFR size
HKR, Parameters, LogPages, 0x00010001, 3 ; Driver IFR size
;
; Create a dummy usbhub services key because UxD relies on it.
;
HKLM, SYSTEM\CurrentControlSet\Services\usbhub,,0x00000010
;
; Fixes the power off when a safely remove hardware command was send.
;
HKLM, "SYSTEM\CurrentControlSet\Services\usbhub\hubg", "DisableOnSoftRemove", 0x00010001, "1"

[GenericHub.CopyFiles]
usbhub3.sys
usb8.sys
ksecd8.sys

;
; --------------------------- Strings --------------------------
;

[Strings]
;Non-Localizable
Msft = "Microsoft"

;Localizable
GenericHub.Mfg = "(Standard USB HUBs)"
UsbHub3.RootHubDeviceDesc = "USB Root Hub (xHCI)"
UsbHub3.Usb30HubDesc = "Generic SuperSpeed USB Hub"
UsbHub3.Usb20HubDesc = "Generic USB Hub"
UsbHub3.SVCDESC = "SuperSpeed Hub"

;
; usbxhci.inf
;
; Copyright (c) Microsoft Corporation. All rights reserved.
;

[Version]
signature="$Windows NT$"
Class=USB
ClassGUID={36FC9E60-C465-11CF-8056-444553540000}
Provider=%Msft%
DriverVer=05/01/2018,6.2.9200.16384

[SourceDisksNames]
1="Generic USB xHCI Host Controller"

[SourceDisksFiles]
usbxhci.sys = 1
ucx01000.sys = 1
WppRecorde8.sys = 1

[ControlFlags]
BasicDriverOk = *
ExcludeFromSelect = *

[DestinationDirs]
DefaultDestDir = 12

[Manufacturer]
%Generic.Mfg%=Generic, NTamd64

;
; ---------------------- xHCI Controllers ----------------------
;

[Generic.NTamd64]
%PCI\CC_0C0330.DeviceDesc%=Generic.Install,PCI\CC_0C0330
%ACPI\PNP0D10.DeviceDesc%=Generic.Install,ACPI\PNP0D10

[Generic.Install.NT]
CopyFiles=Generic.CopyFiles
ExcludeID=PCI\VEN_1B73&DEV_1000&CC_0C0330
ExcludeID=PCI\VEN_1B73&DEV_1400&CC_0C0330
ExcludeID=PCI\VEN_1B73&DEV_1009&REV_00
ExcludeID=PCI\VEN_1022&DEV_43D5

[Generic.Install.NT.HW]
AddReg=PciD3ColdSupported.RegHW

[PciD3ColdSupported.RegHW]
HKR,e5b3b5ac-9725-4f78-963f-03dfb1d828c7,D3ColdSupported,0x10001,1

[Generic.Install.NT.Services]
AddService=USBXHCI, 2, Generic.AddService
AddService=UCX01000,, UCX.AddService

[Generic.AddService]
DisplayName = %PCI\CC_0C0330.DeviceDesc%
ServiceType = 1
StartType = 3
ErrorControl = 1
ServiceBinary = %12%\USBXHCI.SYS
LoadOrderGroup = Base
AddReg = USBXHCI.AddReg

[USBXHCI.AddReg]
HKR,, BootFlags, 0x00010001, 16 ; CM_SERVICE_USB3_DISK_BOOT_LOAD

[Generic.CopyFiles]
usbxhci.sys
ucx01000.sys
WppRecorde8.sys

[UCX.AddService]
DisplayName = "USB Controller Extension"
ServiceType = 1 ; SERVICE_KERNEL_DRIVER
StartType = 3 ; SERVICE_DEMAND_START
ErrorControl = 1 ; SERVICE_ERROR_NORMAL
ServiceBinary = %12%\ucx01000.sys
LoadOrderGroup = Base
AddReg = UCX.AddService.AddReg

[UCX.AddService.AddReg]
HKLM,System\CurrentControlSet\Control\Wdf\Kmdf\Ucx\Versions\1\1,Service,,ucx01000
HKR,, BootFlags, 0x00010001, 16 ;CM_SERVICE_USB3_DISK_BOOT_LOAD

;
; --------------------------- Strings --------------------------
;

[Strings]
;Non-Localizable
Msft = "Microsoft"

;Localizable
Generic.Mfg = "Generic USB xHCI Host Controller"
PCI\CC_0C0330.DeviceDesc="USB xHCI Compliant Host Controller"
ACPI\PNP0D10.DeviceDesc="USB xHCI Compliant Host Controller"
Note "ExcludeID=PCI\VEN_1022&DEV_43D5" in usbxhci.inf, to avoid using driver for USB port that I already have existing vendor drivers.


Attached unmodified original sys files for x64,x86 for anyone who wants to try



Can you upload modded files too please? [TOOL] POWIS - Powerful Windows Setup - Support Windows Vista, 7, 8.0, 8.1, 10, 11 and their Servers equivalent
⇗ https://forums.mydigitallife.net/threads...p-v1-0-1.83558/

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#7807AmirBlue screen of death appears when loading Windows longhorn build 4042.
#7808AmirStop: c000021a Unknown Hard Error
Unknown Hard Error
#7809tumagonx
Zitat von ⇗ Twin im Beitrag ¶ #7804
The webcams problems in PAE mode were mentioned here several times, but there were no solutions of them. I have plug and play SilverCrest Webcam WC2230, on my Win7 32-bit partition it uses only one driver - usbvideo.sys, and works perfectly in PAE mode. On the other hand, on my WinXP 32-bit partition this one driver is not enough; the system installs also kernel streaming driver (ks.sys), which loads yet other 12 co-drivers: dshowext.ax, iyuv_32.dll, ksproxy.ax, kstvtune.ax, ksuser.dll, kswdmcap.ax, ksxbar.ax, msh263.drv, msyuv.dll, tsbyuv.dll, vfwwdm32.dll, and vidcap.ax. In PAE mode XP system freezes (audio is working but video not) and needs forced restart. It does not matter if I use the WinXPPAE 3.5 or Fix128 0.48. There are 2007 year firm drivers available, if used, they replace in both XP+7 systems usbvideo.sys, no problem with PAE on Win7, but on WinXP the second driver ks.sys remains with all 12 co-drivers and video in PAE mode is not working as well, only in this case the XP system does not freeze.

My question to this community is: What is the true cause? Either the PAE incompatibility of one of the 12 co-drivers, or the general problem of patched AMD USB drivers (which otherwise best fit my Intel 100 Series/C230 Skylake) that is responsible for similar issues like checkdisk of flash drives or non-functional sleep mode? If the second alternative is true, is then possible to buy an external USB card with PAE compatible drivers (ASMedia, VIA...) in order to make webcam working on PAE XP?



Want to know about this too

Got better chance if I record after fresh boot (no freeze) but once windows run a lot of stuff, it started to freeze (but still work after wait). This was using win2003 sys files.
#7810Twin
Zitat von ⇗ tumagonx im Beitrag ¶ #7809

Want to know about this too

Got better chance if I record after fresh boot (no freeze) but once windows run a lot of stuff, it started to freeze (but still work after wait). This was using win2003 sys files.


It seems like your webcam is sensitive to limited resources during simultaneous running of many programs, whereas my webcam causes system freezing even after fresh boot, and this freezing is permanent. What do you see in XP device manager: only usbvideo.sys alone, or moreover other drivers that I have mentioned in my previous post? Maybe even the plug and play webcams are different; I would be useful if people share here their experiences with various webcam types. It really bothers me since I have otherwise no issues with all the other USB devices in XP PAE mode, only this webcam is critical.
#7811Pill Monster
Zitat von ⇗ Andalu im Beitrag ¶ #7799
Is there any way to always have a USB3 device recognized as such when connected to a USB 3.0 switch hub (Generic SuperSpeed USB Hub)?
Unfortunately, this doesn't always happen and many times the USB3 device (as the only device connected to the hub) is recognized as USB2 (Generic USB 2.1 Full Speed Hub).

The only way that so far seems to work better when the USB3 device is recognized as USB2 is to disconnect the USB cable of the device itself and quickly reconnect it to another USB port of the switch HUB (as I read somewhere on the web). But this way doesn't always work on the first try.

An alternative way seems to be to shut down the system and not reboot immediately but after some time, in this case you will almost certainly get the correct recognition of the USB3 device. Both methods are not a definitive solution.
I tried all versions of XP USB3 drivers. Also tried another usb switch and two different PCIEx to USB3 cards in addition to the intel controller on 3 different systems: same behavior.


P.S.: the switch hub is powered with an additional USB cable. A USB "Y" cable for the USB3 device for additional power did not help.

In the BIOS disable Legacy USB Support (under USB options).
#7812Pill Monster
Zitat von ⇗ Twin im Beitrag ¶ #7804
The webcams problems in PAE mode were mentioned here several times, but there were no solutions of them. I have plug and play SilverCrest Webcam WC2230, on my Win7 32-bit partition it uses only one driver - usbvideo.sys, and works perfectly in PAE mode. On the other hand, on my WinXP 32-bit partition this one driver is not enough; the system installs also kernel streaming driver (ks.sys), which loads yet other 12 co-drivers: dshowext.ax, iyuv_32.dll, ksproxy.ax, kstvtune.ax, ksuser.dll, kswdmcap.ax, ksxbar.ax, msh263.drv, msyuv.dll, tsbyuv.dll, vfwwdm32.dll, and vidcap.ax. In PAE mode XP system freezes (audio is working but video not) and needs forced restart. It does not matter if I use the WinXPPAE 3.5 or Fix128 0.48. There are 2007 year firm drivers available, if used, they replace in both XP+7 systems usbvideo.sys, no problem with PAE on Win7, but on WinXP the second driver ks.sys remains with all 12 co-drivers and video in PAE mode is not working as well, only in this case the XP system does not freeze.

My question to this community is: What is the true cause? Either the PAE incompatibility of one of the 12 co-drivers, or the general problem of patched AMD USB drivers (which otherwise best fit my Intel 100 Series/C230 Skylake) that is responsible for similar issues like checkdisk of flash drives or non-functional sleep mode? If the second alternative is true, is then possible to buy an external USB card with PAE compatible drivers (ASMedia, VIA...) in order to make webcam working on PAE XP?



Does your BIOS have a Memory Remap option, (could be referred to as "PCI memory hole/memory hoisting)? Or MMI/O enable/disable?
#7813Twin
Zitat von ⇗ Pill Monster im Beitrag ¶ #7812


Does your BIOS have a Memory Remap option, (could be referred to as "PCI memory hole/memory hoisting)? Or MMI/O enable/disable?



Nothing of that you have noticed is in my BIOS. I have HP ProDesk 490 G3 MT Business PC and was surprised how the BIOS is almost fully "automated" with only a few selectable options, as compared with BIOSes of my previous older computers.
#7814Pill Monster
Zitat von ⇗ Twin im Beitrag ¶ #7813
Zitat von ⇗ Pill Monster im Beitrag ¶ #7812


Does your BIOS have a Memory Remap option, (could be referred to as "PCI memory hole/memory hoisting)? Or MMI/O enable/disable?



Nothing of that you have noticed is in my BIOS. I have HP ProDesk 490 G3 MT Business PC and was surprised how the BIOS is almost fully "automated" with only a few selectable options, as compared with BIOSes of my previous older computers.



Yep - as an OEM HP lock their machines down fairly tightly. For a BIOS with options look for ASUS or perhaps Gigabyte.
I prefer ASUS myself. One great advantage of ASUS boards is ofc USB Flashback. :)

HP build wonderful quality desktops - I always recommend HP equipment to my clients. However they are business machines.
#7815juk777⇗ @Pill Monster

Hi! I have the same problem with the webcam. My BIOS have a Memory Remap option.
And what: enable/disable?

Page 522

#7816Pill Monster
Zitat von ⇗ juk777 im Beitrag ¶ #7815
@Pill Monster

Hi! I have the same problem with the webcam. My BIOS have a Memory Remap option.
And what: enable/disable?


Enable definitely. It's likely already enabled - usual BIOS default for most vendors.,


(I assume you have between 8GB - 32GB RAM right?))
#7817juk777⇗ @Pill Monster

Thank you, but as it turned out, Memory Remap-Enable was originally (((
#7818Pill Monster
Zitat von ⇗ juk777 im Beitrag ¶ #7817
@Pill Monster

Thank you, but as it turned out, Memory Remap-Enable was originally (((

f it's ASUS you may have another option under Northbridge Menu called MMIO. It's off by default but could be beneficial to have it on.
#7819juk777⇗ @Pill Monster

Alas, I don't have option under Northbridge Menu called MMIO (
#7820diderius6⇗ @skullteria

Hi, I want to test legacy nvme boot on the ASUS P8H77-M board.

For to reach this, first I try the BCD boot with your Vista bootfiles from normal Sata harddisk.
¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (144)

But when I choose the Vista boot entry, after the message of "missing signature in ntkrnlpa.exe"
and hitting F8 for to disable "driver signature enforcement",
the compi always reboots at once.

On other compis XP SP3 boot via the Vista bootfiles and BCD works.

Do you have newer bootfiles or an idea what I am doing wrong

Dietmar

EDIT: The problem seems to be related to acpi.sys . With newested modded acpi.sys I do not get reboot at once via BCD boot files, but I cant get rid off the message
"missing signature in ntkrnlpa.exe" even I hit F8, this message appears again and again.
#7821George King⇗ @diderius6 Just set in BCD WinPE to yes. This should do the job as this works with Windows 7 bootmgr + BCD, XP2ESD use this too.

bcdedit /store "%TARGET%\boot\bcd" /set {default} winpe yes
[TOOL] POWIS - Powerful Windows Setup - Support Windows Vista, 7, 8.0, 8.1, 10, 11 and their Servers equivalent
⇗ https://forums.mydigitallife.net/threads...p-v1-0-1.83558/

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#7822diderius6⇗ @George King

Thanks for help.
I got it work.
Now I can boot XP SP3 via ntldr or via BCD on the Asus P8H77-M with Intel Core i3-3240 Prozessor and 4 Gbyte ram.
I use an original XP SP3 CD, choose IDE mode for the harddisk and do not add any driver.

Some strange things I noticed:

1.) Works only with the newest modded acpi.sys .
⇗ https://ufile.io/6lqij4n8

2.) When you want to boot via ntldr OR BCD, there happens a mix between them.
I overcome this with connected original XP SP3 boot CD , hitting on TXT setup "repair" and then fixmbr and fixboot.
Then I deleted from an outstanding XP the folder BOOT in the xp C:\  path.
This folder BOOT is in some crazy way involved even when you boot XP via ntldr.
Then I copy the original BOOT folder from post below there again.
¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (144)

EDIT: Boottime for XP to full desktop is with ntldr 13 sec, with BCD 11 sec.

Maybe, that in boot.ini (for ntldr boot) only the following entry is allowed:

[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="xppppp"


This is Tutorial from ⇗ @skullteria


Well, i will try explain

Step 1:
- From my boot files or any Windows VIsta CD, copy boot folder and place on C:\
Step 2:
- From my boot files or any Windows Vista CD, copy bootmgr and place on C:\
Step 3:
- From my boot files, copy winload to your Windows XP installation, on Windows\System32
Step 4:
- Install EasyBCD, preferly version 1.7.2. I can upload to you. This program require .Net Framework 2.0.
Step 5:
- After install easyBCD, open the program, You will get some erros, only click "ok" and wait program start. The default entry presents on BCD are wrong for now, you need delete on "Add/Remove Entries" and add a new entry, on same page on "Add and entry" your choose on type combobox: "Windows Vista/longhorn", edit Name and choose drive. Next, click in "Add entry"
Step 6:
- In "Manage bootloader section (a button named, like Other what i talked), you see "Bootloader Installtion options", you choose "Reinstall The Vista bootloader", and click in "Write MBR". You can verify if it is ok on "Viwe Settings", if you added entry is ok.
Step 7:
- I recommend add a Ntldr based entry for fallback. For it, you back to Step 5 and instead choose "Windows Vista/Longhorn", you choose "Windows NT/2000/XP/2003", click em "Add Entry". For default, the entry has wrong partition. You need edit in "change Settings" section. There, you will see "Entry based settings", and select the entry what you already add (XP based). And after, choose "Drive" where is windows XP is installed (need ntldr and ntdetect.com placed there too) (for default, C:). Click em "Save Settings".
Final Step:
- If all ok, you will restart and on Windows Vista based entry you press "F8" and choose "Disable driver integrity checks" (or similar"). You will get BSOD A5 0x0000002. For debug it. you need back to easybcd, and edit settings on "Advanced Settings", choose Windows Vista based entry and mark "Debug boot process" and click and "Apply Settings"


Dietmar
#7823Andalu
Zitat von ⇗ Pill Monster im Beitrag ¶ #7811
In the BIOS disable Legacy USB  Support (under USB options).

Thanks for the suggestion but it didn't work. Also, by disabling Legacy USB Support the usb keyboard no longer works during POST and I cannot enter the bios.


Doing some more tests I noticed the following:

- for the USB switch hub for 4 PCs, I found that in position 1 the USB3 is never enabled (even tried in Win10) so I think that USB port is defective. The other 3 positions work properly;

- for the USB switch hub for 2 PCs, however, the weirdness continues: in two PCs the USB3 device is correctly detected as connected to a SuperSpeed HUB while in other 2 PCs the same device is detected as USB2 (also in Win10) and as connected to a generic USB 2.1 Full Speed Hub


P.S.: clearly, the same version of the USB3 driver is installed in all XP systems.
#7824George King⇗ @diderius6 ⇗ @infuscomus ⇗ @daniel_k ⇗ @Mov AX, 0xDEAD
Have you ever seen this BSOD? I'm getting it in VirtualBox from some reason now

[TOOL] POWIS - Powerful Windows Setup - Support Windows Vista, 7, 8.0, 8.1, 10, 11 and their Servers equivalent
⇗ https://forums.mydigitallife.net/threads...p-v1-0-1.83558/

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#7825diderius6Even with BCD boot of XP SP3 it is not possible,
to boot this XP on for nvme modded Bios ASUS P8H77-M board from nvme Samsung 960 Pro.
I test the BCD boot possibility of the Samsung 960 Pro on a compi with nvme support, there the 960 Pro boots BCD XP.

Another strange result is: I flash the whole nvme Bios from the z77 extreme4 Website Bios
Z77 EXT4  2.90P
into the Bioschip of the ASUS P8H77-M.
The Samsung 960 Pro is listet there at once as boot device in Bios, but does not boot.
The behavior is exact as for the for nvme modded Bios.

And for to make this crazy check complete, I succeed to boot this BCD XP SP3 with the whole(!) Bios Z77EXT42.90P
on the ASUS P8H77-M board via harddisk in IDE mode. It boots like in slow motion, but boots to full desktop.
So, maybe, that in the nvme files or CSM of the Bios Z77EXT42.90P is something wrong for nvme boot.

This I can only test, when I own such a board z77 extreme4
Dietmar

EDIT: From the nvme Samsung 950 Pro I can boot, but this one has own nvme legacy Bios.
#7826diderius6⇗ @George King

I found this

⇗ https://docs.microsoft.com/en-us/windows...ernel-mode-trap

⇗ https://www.techspot.com/community/topic...ll-0x0s.128292/

Dietmar
#7827skullteria
Zitat von ⇗ juk777 im Beitrag ¶ #7805
@skullteria  Thanks. What does it mean:

"you can't install Base installer and others packages side by side with Kernel Standalone installed"?

Conflict? Or...?


For now, has conflit. I will solve on next version
#7828infuscomus⇗ @George King

I think a driver might be crashing, what changes have you made?
#7829George King⇗ @infuscomus Nothing was changed on my HW. My host is Windows 10 and works without any problem - but I noticed my system was automatically updated after energy blackout. And after that my VirtualBox XP return mentioned BSOD. Currently I updated BIOS to latest version and seems same. I will format my system to see difference - if will be same than it must be some HW problem..


This is my main machine

Motherboard:

Asus Prime B360 Plus

CPU:

Intel Core i5-9400F, 2,9 GHz - 4,1 GHz

RAM:

2x 16GB HyperX 2666 MHz

Disks:

1x SSD 1TB Intel 660p

1x SSD 1TB Samsung EVO 970

2x HDD 8TB Seagate

GPU:

Sapphire RX 580 Nitro+ 4 GB (I bought it as it was very cheap 90% discount last piece)

Expansions:

1x PCI WiFi Qualcomm Atheros AR922x

1x PCI Silicon Image 0680 ATA/133 RAID Controller

1x PCIe VIA USB3 Controller

1x USB Bluetooth

1x SATA Asus Blu-Ray

[TOOL] POWIS - Powerful Windows Setup - Support Windows Vista, 7, 8.0, 8.1, 10, 11 and their Servers equivalent
⇗ https://forums.mydigitallife.net/threads...p-v1-0-1.83558/

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#7830juk777⇗ @skullteria    

I installed everything was installed normally, BUT the Russian language was partially lost and the portative programs stopped working...

 

Page 523

#7831infuscomus⇗ @George King

I'm reasonable sure the cause of the BSOD in your VM wouldn't be anything on the host machine or the real hardware, the problem will be inside the VM, maybe you changed something in the VM configuration file?

Does an old version of XP2ESD give the same BSOD?
#7832George King⇗ @infuscomus You are absolutly correct. Seems like driver problems. I made a lot of changes to add x64 support.. And I forgot I replaced MassStorage drivers in Auto-Sysprep with latest ones.. I'm going to find a cause..

Weird is I encountered same error on my testing laptop few months back and reinstall solved this issue.

[TOOL] POWIS - Powerful Windows Setup - Support Windows Vista, 7, 8.0, 8.1, 10, 11 and their Servers equivalent
⇗ https://forums.mydigitallife.net/threads...p-v1-0-1.83558/

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#7833diderius6⇗ @daniel_k

I just get board Asrock Z77 Extreme4 and now fun with legacy nvme on older boards starts
Dietmar

#7834diderius6I just flash the Bios 2.90P with nvme support to the Asrock Z77 Extreme4 board.
And voila, the Samsung 960 Pro is at once shown in Bios as boot device,
but you cant boot from it!

Now it is clear, that with this 2.90P Bios legacy nvme boot of XP is impossible.
But why?!

Dietmar
#7835diderius6May be this non bootable for XP legacy nvme device happens,
because in Bios of the Asrock Z77 Extreme4 there is no switch
in CSM between UEFI Windows <=> Other OS.

Does somebody here know, how to add this switch to CSM in Bios
Dietmar
#7836skullteria
Zitat von ⇗ juk777 im Beitrag ¶ #7830
@skullteria    

I installed everything was installed normally, BUT the Russian language was partially lost and the portative programs stopped working...


portative programs is portable programs?

About russian language, it's normal, because i used english native dlls as base, like ntdll and kernel32 (renamed to kernelex)
#7837AmirHello everybody. One question worries me. What is the acpiec.sys driver and what is it for? After Windows Longhorn build 4093, this driver simply does not exist.
#7838juk777
Zitat von ⇗ skullteria im Beitrag ¶ #7836
portative programs is portable programs?


Portable Soft
#7839infuscomus⇗ @diderius6

I'm not entirely sure what you mean by CSM switch, is CSM not switched on?
#7840diderius6⇗ @infuscomus

On newer UEFI Bios there is inside the switch CSM another switch for "Uefi Windows" or "Other OS".
This switch is missed in the nvme Bios 2.90P of the Asrock Z77 Extreme4 board.
I check, what happens, if on such a Bios you set in CSM switch "Other OS"  => "Uefi Windows".
Then it shows exact this behavior under XP: "look for bootable device" when compi starts
Dietmar
#7841infuscomus⇗ @diderius6

does nvme booting work for windows 10 on that board?
#7842daniel_k⇗ @diderius6

As suggested, see if NVME boot works in pure UEFI mode by trying to install Win8 or later.

It seems that proper legacy boot was introduced with chipsets supporting Haswell or later.
#7843infuscomus⇗ @George King

here is the 64bit ntoskrnl extender you asked for.

 

 

infuscomus has attached files to this post
#7844Pill Monster
Zitat von ⇗ Andalu im Beitrag ¶ #7799
Is there any way to always have a USB3 device recognized as such when connected to a USB 3.0 switch hub (Generic SuperSpeed USB Hub)?
Unfortunately, this doesn't always happen and many times the USB3 device (as the only device connected to the hub) is recognized as USB2 (Generic USB 2.1 Full Speed Hub).



USB 2.1 would appear be a USB 3 device plugged into a USB 2 port.  

AIDA64:

#7845infuscomus⇗ @Pill Monster ⇗ @Andalu

I'm not sure if the backported windows 8 driver in windows XP will show it like that though.

 

Page 524

#7846Pill Monster
Zitat von ⇗ Pill Monster im Beitrag ¶ #7844
[quote=Andalu|p7799]
Is there any way to always have a USB3 device recognized as such when connected to a USB 3.0 switch hub (Generic SuperSpeed USB Hub)?
Unfortunately, this doesn't always happen and many times the USB3 device (as the only device connected to the hub) is recognized as USB2 (Generic USB 2.1 Full Speed Hub).





Well this is interesting.
I just unplugged the ADATA flash drive, plugged in a USB 3 external HDD and then the ADATA, so both are connected..

Now the ADATA shows up as USB 3.0.

The VIA hub btw is a PCIe card....not onboard.  What brand hub are you using?

#7847diderius6⇗ @infuscomus ⇗ @daniel_k

On the ASRock Z77 Extreme4 board with "nvme" Bios 2.90P
I cant install on Samsung nvme 960 Pro Win10 32 on MBR and also not Win10 64 bit on MBR.
I also cant install on GPT UEFI Win10 bit 32 on Samsung nvme 960 Pro.
Only install on GPT UEFI of Win10 bit 64 works there.
I also make a try with the "nvme" Bios from 2018, its Bios 2.90A for the ASRock Z77 Extreme6 board,
with exact the same result. Cool, this Bios shows a floppy controller, so floppy connector is on  ASRock Z77 Extreme6 board ).
So, legacy nvme isnt working until now on the 77 chipset (Ivy Bridge)
Dietmar
#7848Pill Monster
Zitat von ⇗ infuscomus im Beitrag ¶ #7845
@Pill Monster ⇗ @Andalu

I'm not sure if the backported windows 8 driver in windows XP will show it like that though.

Didn't ⇗ @Andalu just say that it did? Unless I misunderstood his comment...

Zitat
the USB3 device (as the only device connected to the hub) is recognized as USB2 (Generic USB 2.1 Full Speed Hub)  



I would expect if the backported driver supports 3.0 it also supports 2.1 which OTTOMH is part of the 3.0 standard correct me if I'm wrong.

#7849Andalu⇗ @Pill Monster

trying to explain better:
I have a USB 3.0 data transfer cable connected on one side to a pc (which I will call 'master') and on the other side to a USB3 switch hub for 4 pcs (which I will call 'slave'). The hub uses additional power from another USB port.

My intention is to get the USB3 recognition of the cable on the 'master' side and especially on the 'slave' side every time I make the switch between the PCs connected to the hub.

Unfortunately, sometimes on the 'slave' side the cable is recognized as a USB2 device and can happen:
- that also the 'master' is degraded to USB2 device;
- launching the software for synchronize files between PCs, one of the two systems freeze (black screen) needing a manual reboot.

Already tried with another data transfer cable and another hub switch with the same results. This happens even with a USB3 flash drive inserted into the hub as the only connected device.

For the 'master' it seems to work to turn off the system and disconnect the power completely. For the 'slave' side I haven't found a definitive solution.

Below some images:

Master correctly recognized in XP


Slave misrecognized in Win10 (the same happens on XP as a device connected to a Generic USB 2.1 Full Speed Hub).



P.S.: Unfortunately at the moment I couldn't take an image from XP because I don't want to lose the correct recognition for both (master and slave) as USB3 switching on another PC. I have to transfer some quite big files and I don't want spent a lot of time :)


Edit: added the images containing the USB hub IDs:

USB3.0 Hub ID


USB2.1 Hub ID
#7850Pill Monster
Zitat von ⇗ Andalu im Beitrag ¶ #7849
@Pill Monster

trying to explain better:
I have a USB 3.0 data transfer cable connected on one side to a pc (which I will call 'master') and on the other side to a USB3 switch hub for 4 pcs (which I will call 'slave'). The hub uses additional power from another USB port.

My intention is to get the USB3 recognition of the cable on the 'master' side and especially on the 'slave' side every time I make the switch between the PCs connected to the hub.

Unfortunately, sometimes on the 'slave' side the cable is recognized as a USB2 device and can happen:
- that also the 'master' is degraded to USB2 device;
- launching the software for synchronize files between PCs, one of the two systems freeze (black screen) needing a manual reboot.

Already tried with another data transfer cable and another hub switch with the same results. This happens even with a USB3 flash drive inserted into the hub as the only connected device.

For the 'master' it seems to work to turn off the system and disconnect the power completely. For the 'slave' side I haven't found a definitive solution.

Below some images:

Master correctly recognized in XP


Slave misrecognized in Win10 (the same happens on XP as a device connected to a Generic USB 2.1 Full Speed Hub).



P.S.: Unfortunately at the moment I couldn't take an image from XP because I don't want to lose the correct recognition for both (master and slave) as USB3 switching on another PC. I have to transfer some quite big files and I don't want spent a lot of time :)


Edit: added the images containing the USB hub IDs:

USB3.0 Hub ID


USB2.1 Hub ID




05E3 is Genesis.
Maybe I can offer some suggestions - as it gave me few headaches in the past.

I also coincidentally own an external hub with Genesis Logic controller. It's a pita.

I'm headed to work but will post back later.
#7851Andalu⇗ @Pill Monster
my other switch hub is also a Genesis as well.
I had thought about getting another hub switch but there is no reference to the onboard chipset. I wouldn't want it to be Genesis again.
#7852Pill Monster
Zitat von ⇗ Andalu im Beitrag ¶ #7851
@Pill Monster
my other switch hub is also a Genesis as well.
I had thought about getting another hub switch but there is no reference to the onboard chipset. I wouldn't want it to be Genesis again.


Yeah me either lol. Complaints all over the web regarding the Genesis hubs.   
Mine is POS, legacy has to be disabled in BIOS or the hub USB 3 doesn't work when plugged to my machines' ASMedia 3.0 ports.
But then USB 2 devices won't work in any USB 3 ports.

Plus I'm sure the GL hub borked a bunch of my 3.0 flash drives.  
Previous GL hub (had 2) I accidentally connected a 12v adapter to it - it fried the hub ofc. The USB hubs (or controllers?) on the motherboard were killed too - and the onboard LAN.
Left me with 2 usb ports - mouse/keyboard.


Btw what Intel platform do you have?  -  Intel released updates to address Renesas controller issues, might be worth a shot.
#7853Andalu
Zitat von ⇗ Pill Monster im Beitrag ¶ #7852
What Intel platform do you have?  -  Intel released updates to address Renesas controller issues, might be worth a shot.

i5 10600 on Gigabyte H470 (master)
i5 8400 on Asrock H310 +  i7 9700 on Asus Q370 (both slave)
I have a Nec-Renesas PCIEx to USB3 but the cards with VIA chipset work better on my systems.
#7854Andalu⇗ @Pill Monster
It's getting late at my place, time for bed.
Thanks for your kind attention ;)
#7855George King⇗ @infuscomus Thanks for compiled files. Meanwhile I managed to compile them too according your informations from PM.

I managed to create Generic USB3.x driver, Generic AHCI, Generic NVMe and IRST 16 for Windows XP SP2 x64 based on informations on ⇗ @Mov AX, 0xDEAD EMU Extender project. Currently I can confirm, USB3x + AHCI driver works as expected in VM. I think NVMe will work too, but I need to test it on real HW  - I have assembled some old desktop for testing, will see how it goes :)

I will upload testing ISO and drivers soon :)

Now I think patched APCI is needed too to install it on newer HW?

[TOOL] POWIS - Powerful Windows Setup - Support Windows Vista, 7, 8.0, 8.1, 10, 11 and their Servers equivalent
⇗ https://forums.mydigitallife.net/threads...p-v1-0-1.83558/

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#7856infuscomus⇗ @George King

Yes, Patched ACPI driver is needed for any PC newer than 2015.
#7857mockingbird
Zitat von ⇗ George King im Beitrag ¶ #7855
@infuscomus Thanks for compiled files. Meanwhile I managed to compile them too according your informations from PM.

I managed to create Generic USB3.x driver, Generic AHCI, Generic NVMe and IRST 16 for Windows XP SP2 x64 based on informations on @Mov AX, 0xDEAD EMU Extender project. Currently I can confirm, USB3x + AHCI driver works as expected in VM. I think NVMe will work too, but I need to test it on real HW  - I have assembled some old desktop for testing, will see how it goes :)

I will upload testing ISO and drivers soon :)

Now I think patched APCI is needed too to install it on newer HW?


I look forward to this...  XP x64 is very tempting....  Been using it here for more than 5 years.
#7858George KingAnybody is able to add some new functions to ntoskrn8.sys? For example, when I'm exploring Windows 7 driver, these is generic HDA driver. I found hdabus.sys is missing 4 functions in ntoskrn8.sys, but these functions are defined in ntifs_ddk.h. Is anybody able to add them so compiled ntoskn8.sys have them available?

This is in ntifs_ddk.h

 
#if (NTDDI_VERSION >= NTDDI_WIN7)
__drv_maxIRQL(APC_LEVEL)
NTKERNELAPI
NTSTATUS
PoCreatePowerRequest (
__deref_out PVOID *PowerRequest,
__in PDEVICE_OBJECT DeviceObject,
__in PCOUNTED_REASON_CONTEXT Context
);
#endif

#if (NTDDI_VERSION >= NTDDI_WIN7)
__drv_maxIRQL(DISPATCH_LEVEL)
NTKERNELAPI
NTSTATUS
PoSetPowerRequest (
__inout PVOID PowerRequest,
__in POWER_REQUEST_TYPE Type
);
#endif

#if (NTDDI_VERSION >= NTDDI_WIN7)
__drv_maxIRQL(DISPATCH_LEVEL)
NTKERNELAPI
NTSTATUS
PoClearPowerRequest (
__inout PVOID PowerRequest,
__in POWER_REQUEST_TYPE Type
);
#endif

#if (NTDDI_VERSION >= NTDDI_WIN7)
__drv_maxIRQL(APC_LEVEL)
NTKERNELAPI
VOID
PoDeletePowerRequest (
__inout PVOID PowerRequest
);
#endif




[TOOL] POWIS - Powerful Windows Setup - Support Windows Vista, 7, 8.0, 8.1, 10, 11 and their Servers equivalent
⇗ https://forums.mydigitallife.net/threads...p-v1-0-1.83558/

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#7859infuscomus⇗ @George King

why are you using ntoskrnl extender with portcls.sys?
XP should have it's own version of that already.
#7860George King⇗ @infuscomus
With XP portcls.sys is missing this function. I think "easiest" is add it into extender and use Windows 7 portcls.sys, but I'm not able to edit Extender code

[TOOL] POWIS - Powerful Windows Setup - Support Windows Vista, 7, 8.0, 8.1, 10, 11 and their Servers equivalent
⇗ https://forums.mydigitallife.net/threads...p-v1-0-1.83558/

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/

 

Page 525

#7861infuscomus⇗ @George King

you can edit ntoskrn8.c to add the functions you need.
#7862diderius6⇗ @daniel_k ⇗ @Ethaniel ⇗ @YuriyCN

I make a new test for legacy nvme boot of XP on board Asus P8H77-M via nvme Samsung 960 Pro with the files from
⇗ [Experimental] NVMe Option ROM (4)

But even the nvme device is now shown in Bios, no boot of XP is possible.
Those files make an entry for nvme in RAW in CSMCORE.
Later I also add the three files Nvme.ffs , NvmeSmm.ffs , NVMEINT13.ffs
does not help for legacy boot

Dietmar

PS: Does somebody know, how to extract the Rom Bios of the Samsung 950 Pro?
#7863Ethaniel⇗ @diderius6: The referenced Option ROM does not work with Samsung devices, the thread has successful reports with some models from other manufacturers.

Samsung 950 Pro has support for index-data register pair (IDP) and its Option ROM depends on that. Other Samsung models support memory-mapped I/O (MMIO) only, so the Samsung 950 Pro Option ROM will not work with those.

Instructions for extracting the Option ROM are available in the ⇗ Samsung NVMe legacy BOOT ROM present on 950 Pro thread and the very next post contains the extracted Option ROM. Note that the same method works for other devices with the exception of the primary video card as Linux is returning it from RAM that might be changed during boot.
#7864diderius6⇗ @Ethaniel

Thanks for answer.
I make a small joke:
I use the extracted Rom Bios from the Samsung 950 Pro and integrate it with MMTool 4.50.0.23 into Bios 1202 of Asus P8H77-M board, which never heard anything in its life about nvme ).
During integrating via MMTool 4.50.0.23  I set there the Ven 144D and Dev A804 for the nvme Samsung 960 Pro.
Now, this nvme device is correct(!) shown as Samsung 960 Pro in Bios of Asus P8H77-M.

But during boot of XP it hangs, but no crash and no message about wrong boot device as always before.

Now comes fun: I succeed to boot XP SP3 via this nvme Samsung 960 Pro with Grub and ramboot on Asus P8H77-M

Dietmar
#7865diderius6I make some more tests with the rom Bios of nvme Samsung 950 Pro integrated in the Bios 1202 of Asus P8H77-M board.
For this I set up a nvme BCD boot of XP SP3, thanks to ⇗ @skullteria .
And voila, for a second I can see the start screen of XP, then reboot with the nvme Samsung 960 Pro.
This Samsung 960 Pro is the only boot device connected to the Asus P8H77-M board.
This simple means, that it is possible to integrate the rom Bios of the Samsung 950 Pro in a Bios,
that never heard anything about nvme and boot XP from the Samsung 960 Pro.
The crash during boot of XP via the Samsung 960 pro happens (I think),
because this BCD nvme XP is build on other compi
Dietmar

EDIT: I am not good with grub4dos. May be somebody here knows, how to set up the most easy grub4dos boot of XP.
It is as I thought: The rom Bios of the Samsungs 950 Pro does not like to work together with NTLDR of XP on a lot of Bios.
I just test this: BCD boot of XP on the 960 Pro starts, ntldr as second boot option gives black screen at once.
#7866infuscomus⇗ @diderius6

Easy2boot has some premade grub4dos scripts than can be used to both install and boot into XP.
#7867diderius6⇗ @infuscomus

Thanks for help, I will try.
All good and bad behavior of the Samsung 950 Pro can be transported via MMTool 4.50.0.23 to the nvme Samsung 960 Pro via the rom image to Bios from post
⇗ Samsung NVMe legacy BOOT ROM present on 950 Pro

Dietmar
#7868George King
Zitat von ⇗ infuscomus im Beitrag ¶ #7861
@George King

you can edit ntoskrn8.c to add the functions you need.


I'm not programmer, so I'm not able to do it. Maybe you or any other members can investigate into mentioned 4 functions to help port Generic HDA Windows 7 drivers? [TOOL] POWIS - Powerful Windows Setup - Support Windows Vista, 7, 8.0, 8.1, 10, 11 and their Servers equivalent
⇗ https://forums.mydigitallife.net/threads...p-v1-0-1.83558/

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#7869gordo999
Zitat von ⇗ infuscomus im Beitrag ¶ #7861
you can edit ntoskrn8.c to add the functions you need.
⇗ @infuscomus ...I think you mentioned this before. What do you use to recompile the c file? If possible, can you quickly explain your procedure? I have visual C++ installed but it can get nasty with its error checking.
#7870infuscomus⇗ @gordo999

I use the windows 7 DDK in a VM

First setup a windows 10 VM.
Download windows 7 DDK and install it.

⇗ https://www.microsoft.com/en-au/download...s.aspx?id=11800

After installing the DDK go to the ntoskrnl extender github and download then extract it.

copy the ntoskrnl_Emu-master folder to the root of C:\
The DDK is sensitive about folder paths so this is easier.

Next open x86/x64 free build environment and navigate to C:\ntoskrnl_Emu-master
make sure it's the folder that has ntoskrn8.c in it
and type BLD to build.
#7871George KingI have created some patched drivers using EMU Extender for both - x86 and x64. I recreated all what I could as I have added x64 support to XP2ESD, now we have also ported drivers for x64.

All drivers are standalone packages - every needed file is installed by INF.

These drivers are ported according to information on ⇗ EMU Extender GitHub

x64\AMD_SATA_1.2.001.0402
x64\Generic_AHCI
x64\Generic_MSAHCI
x64\Generic_NVMe
x64\Generic_UASP_6.1.7600.4002
x64\Generic_USB3x
x64\IRST_16.8.3.1003
x64\IRST_18.36.3.1019
x64\RSTe_4.7.0.1119
x64\Samsung_NVMe_3.3.0.2003

x86\AMD_SATA_1.2.001.0402
x86\Generic_AHCI
x86\Generic_MSAHCI
x86\Generic_NVMe
x86\Generic_UASP_6.1.7600.4002
x86\Generic_USB3x
x86\IRST_16.8.2.1002
x86\RSTe_4.7.0.1119
x86\Samsung_NVMe_3.3.0.2003


NOTES:
2) Generic AHCI and USB3x drivers was tested in VirtualBox and they works, every other drivers needs to be tested
2) UASP is only INF edited VIA driver as is seems generic

Download

 
https://www.mediafire.com/file/e3fxix06lfq564w/PortedDrivers-WindowsXP%252BWindows2003_x86%252Bx64.7z/file




EDIT: To get working Generic HDA Windows 7 drivers - portcls.sys from build 6801 can be ported using EMU Extender. But this needs more time to investigate. HDAUDIO + HDABUS can be installed without problem, but device cannot start with error 10 -> maybe related to WDMAUDIO.inf + KS.inf

[TOOL] POWIS - Powerful Windows Setup - Support Windows Vista, 7, 8.0, 8.1, 10, 11 and their Servers equivalent
⇗ https://forums.mydigitallife.net/threads...p-v1-0-1.83558/

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#7872daniel_k⇗ @diderius6

As you can easily recover the BIOS, try to use CSM/NVMe modules from some Z97 BIOS.

Native M.2 NVMe was introduced with 9 series chipsets, so probably proper legacy support may have been implemented.
#7873George KingCan anybody test this Generic Windows 8.1 NVMe driver under XP on real machine? I have patched security cookie and fixed checksum and ported Windows 7 storport.sys + ntoskrn8.sys was added into INF. Seems good in Depency Walker.

 
https://www.mediafire.com/file/5gtz85p6yz3wjld/Generic_NVMe_6.3.9600.16421_x86.7z/file
[TOOL] POWIS - Powerful Windows Setup - Support Windows Vista, 7, 8.0, 8.1, 10, 11 and their Servers equivalent
⇗ https://forums.mydigitallife.net/threads...p-v1-0-1.83558/

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#7874diderius6Yessssaaa:)))))))!!!!!!

For the very first time I succeed to boot legacy CSM XP SP3 from an nvme Samsung 960 Pro
with VEN 144D  DEV A804
on the board Asus P8H77-M with Bios, that never heard anything about nvme in its life before.
No other device is connected, only Samsung 960 Pro without own nvme Bios.
I do not integrate any nvme.efi files in Bios.

The most critical procedure was to prepare the XP for this.
It works with BCD boot.
It is stable.

I integrate the rom Bios from the Samsung 950 Pro into the Bios from the Asus P8H77-M,
with EEpromer Revelprog IS it is easy procedure.
For me it works only with the very laast acpi.sys from outerspace ), this file is in the package here also
together with MMTool 4.50.0.23 and the rom image from the Samsung 950 Pro

Dietmar

This are all files, that I use

⇗ https://ufile.io/jl645u9x

PS: BCD boottime is below 1 sec:)).
From feeling it is the most fast XP ever. Feels even faster than complete XP in ram. Is this possible?






#7875Andalu
Zitat von ⇗ George King im Beitrag ¶ #7873
Can anybody test this Generic Windows 8.1 NVMe driver under XP on real machine? I have patched security cookie and fixed checksum and ported Windows 7 storport.sys + ntoskrn8.sys was added into INF. Seems good in Depency Walker.

Driver tried on asus prime B250M with the Sabrent Rocket SSD NVMe as secondary drive (not as system drive). All sys files manually copied into system32/drivers folder. I got the same bsod just installed the driver and also on reboot:

DRIVER_IRQL_NOT_LESS_OR_EQUAL

STOP: 0x000000D1 (0x00000408,0x00000007,0x00000000,0xB9B246EA)

storport.sys - Address B9B246EA base at B9B1F000, DateStamp 56f57964

 

Page 526

#7876gordo999
Zitat von ⇗ infuscomus im Beitrag ¶ #7870
Download windows 7 DDK and install it.
⇗ @infuscomus ...thanks for detailed explanation. I already have DDK - 7 loaded on W7 in the C:\ directory. In the \bin directory there is an \x86 sub-directory. In the root,  there is a build.exe compiler (and linkers) for x86 and in the same \x86 directory is an \AMD64, where there is another build.exe (and linkers) presumably for x64 apps.

In fact, there are several compilers in the directories, like ml.exe for assembler and rc.exe for compiling resources. Good stuff. Thanks again.

ps. just noticed on MovAX_DEAD's github page, the instructions to:

Run shell: "Start Menu\Programs\Windows Driver Kits\Win7 7600.16385.1\Build Environments\Windows XXX\YYY Free Build Environment" (XXX - target OS, YYY - target CPU)

It's all there in my W7 Start\All Programs\Windows Drivers Kits directory. Thanks again.

And thanks again to MovAX_DEAD for all the hard work creating the page and supplying the files.
#7877George King⇗ @Andalu Can you try drivers, that I ported for XP2ESD on previous page too please?

[TOOL] POWIS - Powerful Windows Setup - Support Windows Vista, 7, 8.0, 8.1, 10, 11 and their Servers equivalent
⇗ https://forums.mydigitallife.net/threads...p-v1-0-1.83558/

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#7878George KingI have created testing ISO with XP Professional x86 SP3 and XP Professional x64 SP2 - without integrated updates - Original MSDN ISOs was used as input. Only drivers was added - Including latest MassStorage and USB driverpacks exctrated from DRP.SU / SAMLAB packs + newly ported drivers according to EMU Extender tutorial by me. This release doesn't include patched ACPI.sys.

1) Create USB install using RUFUS
2) If needed add patched ACPI.sys into USB\sources\$OEM$\sources\$OEM$\$$\system32\drivers. There are no patched x64 ACPI.sys yet.. And remember, if you add x86 ACPI.sys you cannot install x64 version
3) Boot from USB and install
4) Let me know how it goes
5) If  can, create patched ACPI.sys for x64 to be able to boot it on newer machines - x64 XP version can be booted in pure UEFI :)

Download

 
https://www.mediafire.com/file/dnpxf10lgsi7qwz/WinXP_AIO_ESD_v1.6_rc1.iso/file
[TOOL] POWIS - Powerful Windows Setup - Support Windows Vista, 7, 8.0, 8.1, 10, 11 and their Servers equivalent
⇗ https://forums.mydigitallife.net/threads...p-v1-0-1.83558/

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#7879infuscomus⇗ @George King

nice work!
I'll try and patch the x64 ACPI.SYS driver - but I can't promise anything will come of it. ⇗ @Mov AX, 0xDEAD is much more skilled at this than I am.
#7880diderius6Hi,

is it possible to dump the legacy nvme rom image from any Bios from CSMCORE there,
may be via Linux

Dietmar
#7881diderius6I extract the "Option Rom" from the Plextor nvme M8Pe for legacy nvme boot and integrate it in Bios of the Asus H77.
It does not work, even no nvme disk at all is recogniced. The checksum is wrong and also may be not all correct in this *.rom.

So, until now the only possibility for legacy nvme boot (without any other tools) is the Option Rom from the Samsung 950 Pro

Dietmar

Option Rom from Plextor

⇗ https://ufile.io/4nu0jmy0
#7882diderius6I compare, what happens after integration of the nvme Option Rom.

This is the only thing, that changes in BIOS:

The Option Rom is copied complete at the end of raw section in CSMCORE.
Only 10 Bytes are added to the Option Rom image, at the beginning of Option Rom with the Ven and Dev number.

Here

00 A0   4D 14   04 A8   00 7E 00 00

Then follows the startsequence 55 AA .
A good search string for to find the Option Rom for nvme is text "nvme"
and Hexvalues 50 43 49 52

Dietmar
#7883diderius6Here is the best Option Rom from the Samsung 950 Pro until now.
The original Samsung pro shows 2 IDE nvme devices.
Here I cut the second nvme IDE,
so the Option Rom is much smaller and may be more generic.

I tested it for legacy nvme Boot of XP SP3,
works

Dietmar

EDIT: For some strange reasons, this cut versions hangs on second boot?!.

So, better to use the original 950pro.rom.

950pro.rom (hangs on 2. boot)
17.920 Bytes
⇗ https://ufile.io/k4prfe57

950proFULL.rom (works always)
32.256 Bytes
⇗ https://ufile.io/mr10i71p
#7884Andalu
Zitat von ⇗ George King im Beitrag ¶ #7877
@Andalu Can you try drivers, that I ported for XP2ESD on previous page too please?

I tried to install some drivers from the PortedDrivers-WindowsXP+Windows2003_x86+x64 package on my intel Skylake platform with XP-SP3 x86 Integral Edition 2021.5.15. Here the results:

- AMD_SATA not tested (I have no AMD system)

- Generic_AHCI:


- Generic_MSAHCI not tested

- Generic_NVMe:
same BSOD 0x000000D1 (0x00000408,0x00000007,0x00000000,0xB9B246EA) as reported previously.

- Generic_UASP not tested because the USB3x driver fails to install

- Generic_USB3x:
it doesn't work. I got the message "the specified location does not contain information about your hardware" on installing manually.
In the "Generic_USB3x" folder I noticed the 'usb8.sys' file. Maybe it should be 'usbd8.sys'? (even renaming this file the USB3x driver doesn't work anyway).

- IRST_16.8.2.1002:


- RSTe_4.7.0.1119:


- Samsung_NVMe_3.3.0.2003:
it works only for Samsung NVMe drives. For other brands (Crucial, WD and Sabrent I got the message "the specified location does not contain information about your hardware").



Please note that I have tested those drivers for a short time only.
#7885daniel_k⇗ @diderius6

See on page 33: A.2 PnP Option ROM Header
⇗ https://www.scs.stanford.edu/nyu/04fa/lab/specsbbs101.pdf

The Samsung 950 Pro option ROM size is OK, for "part1" and "part2". Checksum of part1 is important, for part2 doesn't matter.
Maybe part1 access data in part2, that's why it fails on 2nd boot.

About the Plextor option rom, size and checksum of part1 is OK, but part2 seems incomplete.
According to its header, part2 should have 6A00h (27136) bytes, but it's just 688A (26762) bytes long.
#7886infuscomus⇗ @diderius6 ⇗ @daniel_k

how do you dump/flash an NVMe Option boot ROM?
#7887diderius6⇗ @infuscomus

Download files from
¶ Windows XP 32-Bit and Server 2003 32-Bit on Modern Hardware (526)

I dump the NVME Option Rom from Website of for example Plextor, looking for "55 AA" Signature in those files for Option Rom.
And I flash it with MMTool 4.50.0.23,
Load Image (Whole Bios from compi)
Load Module file (Option Rom)
Enable "For Option ROM only" via "Link present"
Put Vendor ID and Device ID in (for Samsung 950 Pro Ven 144D, Dev A804)
Save Image as ..
Flash to Bioschip of compi ( I use Revelprog IS for this, best EEpromer ever)

The Option Rom is put via MMTool at the end of RAW file in CSMCORE

Dietmar
#7888George King
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #5056
Patch for VIA USB Mass Storage Device (UAS/UASP) to restore "Safe Remove":

vusbstor.sys x32 v6.1.7600.4002
89 9D 70 FF FF FF 89 9D 68 FF FF FF => 90 90 90 90 90 90 89 9D 68 FF FF FF


Is there x64 patch too please? [TOOL] POWIS - Powerful Windows Setup - Support Windows Vista, 7, 8.0, 8.1, 10, 11 and their Servers equivalent
⇗ https://forums.mydigitallife.net/threads...p-v1-0-1.83558/

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#7889diderius6I just add via MMTool also the Ven 1B85 Dev 6018 from the Toshiba RD400
to the Option Rom (extracted from Samsung Pro 950) into the Bios of the Asus P8H77-M board.
Interesting, the RAW file in CSMCORE in Bios does not grow,
even now there is support in Bios for the Samsung 960 Pro and the Toshiba RD400.
XP SP3 boots fast via legay CSM nvme in the Bios of the P8H77-M,
which never heard anything about nvme in its life ) before.
In Bios, the Toshiba RD400 is now listed with its correct full name.
Only with Samsung 960 Pro entries in Option Rom the Toshiba RD 400 is not recogniced from Bios at all.

Waaoh, the Option Rom from the Samsung Pro 950 seems to be really generic.

Only BCD boot of XP works on the P8H77-M, only with Sata set to IDE mode(!) or disabled.
This BCD boot is not necessary on other boards, but in about >50% of all boards
Dietmar

EDIT: Standby works with full USB3 support.
With normal ntldr boot, Standby does not work, only with BCD boot.

#7890diderius6I just get a nvme Plextor 1 Tbyte M8PeG
and I succeed to boot XP from it in legacy CSM mode on the Asus P8H77-M board.
But I dont know, how to make a working Option Rom from it
Dietmar

EDIT: If there is no way, to extract the Option Rom direct from the Plextor nvme disk,
may be it is possible, when you can extract correct the file from Plextor Website

PX-1TM8PeG_1.06.EXE
⇗ https://ufile.io/zk72k1ar


 

Page 527

#7891diderius6After crazy fight with Linux I succeed to get the correct Option Rom direct from the nvme Plextor M8Peg
Dietmar

plextor.rom
⇗ https://ufile.io/jwvy04j9


EDIT: Even I am to 100% sure, that I integrate this Option Rom from Plextor correct in Bios for the Samsung 960 Pro on the Asus P8H77-M board, no nvme at all is shown.

So, only the Option Rom from the Samsung 950 Pro is generic and works for other nvme devices also for legacy boot of XP.
#7892diderius6I make some more tests with the Option Rom extracted from the Samsung 950 Pro.
For this I integrate into Bios together(!) the 3 Ven Dev numbers, all nvme, from the

500 GB Samsung 960 Pro (144D A804)
the Toshiba RD400 with 500 GB (1B85 6018)
and the Samsung 970 Pro 1TB (144D A808).

I integrate all with MMtool step by step into the Bios 1306 of the Asus P8H77-M board,
before without any nvme. All nvme disks work now, nice ).
So all (?) nvme devices can be used as legacy Boot device for XP SP3 on any motherboard
(I test only UEFI) with the extracted Option Rom from the Samsung 950 Pro.
Standby now works always with BCD boot. With ntldr boot, Standby does not work.
Even boot with 2 different nvme disks, connected at the same time for to boot legacy XP on the Asus P8H77-M works ).

I use only the nvme driver from ⇗ @Mov AX, 0xDEAD .
⇗ http://www.mediafire.com/file/7os0e1db59..._XP_x86.7z/file

Dietmar

#7893diderius6I make some fun with the Asus mainboard P8Z68-V LX of ⇗ @dencorso ).
Voila, legacy nvme boot of XP SP3 works there also.
I only integrate the image.rom extracted from the Samsung 950 pro
with Ven_144D&Dev_A808 for the Samsing 1TB 970 Pro
Dietmar

#7894George KingI have created some patched drivers using EMU Extender for both - x86 and x64. I recreated all what I could as I have added x64 support to XP2ESD, now we have also ported drivers for x64.

All drivers are standalone packages - every needed file is installed by INF.

These drivers are ported according to information on ⇗ EMU Extender GitHub

x64\AMD_SATA_1.2.001.0402
x64\Generic_AHCI_6.2.9200.16384
x64\Generic_MSAHCI_6.1.7601.23403
x64\Generic_NVMe_6.1.7601.23403
x64\Generic_UASP_6.1.7600.4002
x64\Generic_USB3x_6.2.9200.21180
x64\IRST_16.8.3.1003
x64\IRST_18.36.3.1019
x64\RSTe_4.7.0.1119
x64\Samsung_NVMe_3.3.0.2003

x86\AMD_SATA_1.2.001.0402
x86\Generic_AHCI_6.2.9200.16384
x86\Generic_MSAHCI_6.1.7601.23403
x86\Generic_NVMe_6.1.7601.23403
x86\Generic_UASP_6.1.7600.4002
x86\Generic_USB3x_6.2.9200.21180
x86\IRST_16.8.2.1002
x86\RSTe_4.7.0.1119
x86\Samsung_NVMe_3.3.0.2003



Download

 
https://www.mediafire.com/file/1md5awnrgg7k4xg/PortedDrivers-WindowsXP+Windows2003_x86+x64_v2.7z/file




Changes from last upload¶  in this post

1. Fixed all INFs encoding to UTF8 - LE BOM, this caused USB3.x driver was refused with "no compatible device" messsage
2. All INFs are prepared for future signing
3. Applied USB3.x additional patch to correctly recognize USB speed
4. Applied USAP additional patch to recover "safe removal" in x86 version of uapstor.sys - for x64 there is no patch at this moment
5. Added versions into all folder names


To-Do list
1. Find x64 patch for uapstor.sys
2. Review NVMe driver - ⇗ @Andalu reported some BSOD, this seems weird as stornvme.sys in unmodified and this must be in ported storport.sys? Every ported drivers use same storport.sys. This can be also caused by test environment (XP Integral edition)
3. Create working Generic HDA driver - I found some of them ⇗ here by ⇗ @skullteria , but no sound at all after installation, maybe there are needed more steps to do in system
4. Find out solution for MSAHCI and original mshdc.inf. I can confirm this driver works good, but it will be reinstalled with bad files after second reboot

[TOOL] POWIS - Powerful Windows Setup - Support Windows Vista, 7, 8.0, 8.1, 10, 11 and their Servers equivalent
⇗ https://forums.mydigitallife.net/threads...p-v1-0-1.83558/

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#7895George King
Zitat von ⇗ Andalu im Beitrag ¶ #7884
Zitat von ⇗ George King im Beitrag ¶ #7877
@Andalu Can you try drivers, that I ported for XP2ESD on previous page too please?

I tried to install some drivers from the PortedDrivers-WindowsXP+Windows2003_x86+x64 package on my intel Skylake platform with XP-SP3 x86 Integral Edition 2021.5.15. Here the results:

- AMD_SATA not tested (I have no AMD system)

- Generic_AHCI:


- Generic_MSAHCI not tested

- Generic_NVMe:
same BSOD 0x000000D1 (0x00000408,0x00000007,0x00000000,0xB9B246EA) as reported previously.

- Generic_UASP not tested because the USB3x driver fails to install

- Generic_USB3x:
it doesn't work. I got the message "the specified location does not contain information about your hardware" on installing manually.
In the "Generic_USB3x" folder I noticed the 'usb8.sys' file. Maybe it should be 'usbd8.sys'? (even renaming this file the USB3x driver doesn't work anyway).

- IRST_16.8.2.1002:


- RSTe_4.7.0.1119:


- Samsung_NVMe_3.3.0.2003:
it works only for Samsung NVMe drives. For other brands (Crucial, WD and Sabrent I got the message "the specified location does not contain information about your hardware").



Please note that I have tested those drivers for a short time only.



Thanks a lot, I have uploaded new set with fixed USB3.x driver INF, it was caused by accident by bad file encoding. Should work now without any problem. Yes, Samsung driver is only for Samsung devices, this is not modded INF to switch it into generic driver. [TOOL] POWIS - Powerful Windows Setup - Support Windows Vista, 7, 8.0, 8.1, 10, 11 and their Servers equivalent
⇗ https://forums.mydigitallife.net/threads...p-v1-0-1.83558/

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#7896George King⇗ @diderius6 Can you try NVMe driver from my collection please? I would like to know if you encounter same BSOD as ⇗ @Andalu?

[TOOL] POWIS - Powerful Windows Setup - Support Windows Vista, 7, 8.0, 8.1, 10, 11 and their Servers equivalent
⇗ https://forums.mydigitallife.net/threads...p-v1-0-1.83558/

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#7897diderius6⇗ @George King

Your modded nvme stornvme.sys works without any problem under XP SP3.
I tested different nvme disks.

There is a difference between this driver and the driver from ⇗ @daniel_k :
Your stornvme.sys and your storport.sys drivers are both ported from Win7.
The stornvme.sys and storport.sys from ⇗ @daniel_k are modded from Win8
Dietmar

PS: A BSOD can happen for another reason: When you first install the Samsung Nvme driver, its Filterdriver secnvmeF.sys
does not want to go and when you delete it by hand, you get Bsod 0x7B.
By the way I noticed during my intensive tests, that the Samsung nvme driver secnvme.sys often gives yellow question mark with Start error 10. So, the generic nvme driver stornvme.sys is the better choice.

Until now no TRIM support for nvme devices under XP.
#7898George King⇗ @diderius6 Nice, that is great! Seem Like I managed to build whole driver collection for upcoming XP2ESD v1.6. Only this patch equivalent for x64 needs to be discovered

⇗ @Mov AX, 0xDEAD
Patch for VIA USB Mass Storage Device (UAS/UASP) to restore "Safe Remove":

vusbstor.sys x32 v6.1.7600.4002
89 9D 70 FF FF FF 89 9D 68 FF FF FF => 90 90 90 90 90 90 89 9D 68 FF FF FF


And of course x64 ACPI.sys patch needs to be done..

[TOOL] POWIS - Powerful Windows Setup - Support Windows Vista, 7, 8.0, 8.1, 10, 11 and their Servers equivalent
⇗ https://forums.mydigitallife.net/threads...p-v1-0-1.83558/

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#7899George King
Zitat von ⇗ diderius6 im Beitrag ⇗ HP Pavilion 11-E10SG shuts down during Windows XP installation
@George King

I am happy, when you can make an XP SP3 , German version.
This I would test intensive
Dietmar


⇗ @diderius6 Give me few hours to build it. I would like to finish XP2ESD v1.6 and release for public as this can help everyone to install it. Do you have any new patched x86 ACPI.sys which would you like to include? [TOOL] POWIS - Powerful Windows Setup - Support Windows Vista, 7, 8.0, 8.1, 10, 11 and their Servers equivalent
⇗ https://forums.mydigitallife.net/threads...p-v1-0-1.83558/

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#7900George King⇗ @diderius6

⇗ Here is German (de-DE) Windows XP SP3+ ISO (Installer is English and Windows 7 + 10 based, don't worry about installed system). Please create bootable USB using Rufus as it can be installed from USB3.x without problem.

This in nLite session from XP2ESD

 
[Tasks]
Hotfixes and Update Packs
Options

[Patches]
DoUxTheme
DoSFC

[Hotfixes]
F:\XP2ESD\plugins\updates\OnePiece_Windows_XP_Post-SP3_UpdatePack_v1.1.0_FINAL_DEU_.7z
F:\XP2ESD\plugins\updates\OnePiece_WinXP_Embedded_Post-SP3_True_AddOn_DEU.7z
F:\XP2ESD\plugins\updates\OnePiece_NetFxLangPack_SvcPack_AddOn_DEU.cab
F:\XP2ESD\plugins\updates\addons\TimeZonesUpdate_SVCPACK.7z
F:\XP2ESD\plugins\updates\addons\VisualC++.7z



Just for clarification - Huge MassStorage + USB driver set is integrated in captured image to provide universal image. Don't worry about unneeded drivers as every not used driver service is disabled after first reboot of installed system using MyFactory (That is first screen that looks like original Windows XP setup billboard, but it's MyFactory with applied WinntBBU design). You can find all included drivers in Drivers folder in root of installed system or in USB\sources\install.esd\Drivers. Also in CLONE_TAG.txt are all of them listed in install.esd. And all ported drivers are ported by me using tutorials from @Mov AX, 0xDEAD. And these drivers are still unsigned, no need to do it right now until we are sure they works as expected.

If your machine needs patched ACPI.sys place them into USB\sources\$OEM$\$$\system32\drivers
If you don't want to use PAE patcher by ⇗ @daniel_k, delete WinXPPAE.exe from USB\support


EDIT: XP2ESD build log

 
                                                                                   Started on 05.10.2021 at 17:47:59,24
Auto-Sysprep progress: 1 / 1

[1] Extracting de_windows_xp_professional_with_service_pack_3_x86_cd_vl_x14-73985.iso
Windows XP Professional Volume License (de-DE)
[2] Integrating UpdatePack
[3] Adding Auto-Sysprep
[4] Building ISO
[5] Installing into VirtualBox
[6] Extracting VHD
[7] Capturing image
[8] Exporting image


Started on 05.10.2021 at 18:12:30,07
Windows XP Modern Installer

[1] Extracting Windows 7 & 10 ISO
[2] Building setup structure
Building bootloader
Adding DriverPacks support
Adding Setup folder
[3] Upgrading setup engine
Integrating setup updates
Integrating setup drivers
[4] Patching setup design
[5] Modifying setup launch
[7] Compressing boot.wim
[8] Updating install.wim
1. Windows XP Professional Volume License (de-DE)
License files check
[9] Compressing install.esd
[11] Building bootable ISO
Finished on 05.10.2021 at 18:18:25,68

Process finished, press any key to exit...
[TOOL] POWIS - Powerful Windows Setup - Support Windows Vista, 7, 8.0, 8.1, 10, 11 and their Servers equivalent
⇗ https://forums.mydigitallife.net/threads...p-v1-0-1.83558/

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#7901Andalu
Zitat von ⇗ George King im Beitrag ¶ #7894
2. Review NVMe driver - @Andalu reported some BSOD, this seems weird as stornvme.sys in unmodified and this must be in ported storport.sys? Every ported drivers use same storport.sys. This can be also caused by test environment (XP Integral edition)

Zitat von ⇗ George King im Beitrag ¶ #7895
Thanks a lot, I have uploaded new set with fixed USB3.x driver INF, it was caused by accident by bad file encoding. Should work now without any problem. Yes, Samsung driver is only for Samsung devices, this is not modded INF to switch it into generic driver.

I tried again the drivers that didn't work before on my system. Here are the results:

Generic_USB3x_6.2.9200.21180 + Generic_UASP_6.1.7600.4002:



Generic_NVMe_6.1.7601.23403
Installed on the 'XP-Integral Edition 2021.5.15' (with PAE enabled) and on the 'en_windows_xp_professional_with_service_pack_3_x86_cd_vl_x14-73974' (with no PAE) ISOs without any issue this time:



The strange thing is that now I get the exact same BSOD that I reported previously for the NVMe driver modded from Win8 on both iso mentioned above.
#7902diderius6⇗ @George King

Thanks for the german XP version!

First I install it on the Asus P8H77-M board from USB stick using Rufus 2.18p (last version for XP).
With chosing IDE mode in Bios it shows Bsod 0x7B.
When I chose AHCI mode it installs fast.
At the end of the installation I cant chose "Time Zone" (just white list there without letters),
but chosing "next" works.
The USB3 driver shows yellow questionmark, does not work.
The XP Updates are all there, even the last Posready.

What I like very much is, that you keep every program and setting from Original XP CD

Dietmar

PS: Nice would be also a Setup, which uses only BCD boot for XP.
I know, that after Skylake and processors > Celeron it does not work but for all the other compis,
and also for nvme boot.
#7903George King
Zitat von ⇗ diderius6 im Beitrag ¶ #7902
@George King

Thanks for the german XP version!

First I install it on the Asus P8H77-M board from USB stick using Rufus 2.18p (last version for XP).
With chosing IDE mode in Bios it shows Bsod 0x7B.
When I chose AHCI mode it installs fast.
At the end of the installation I cant chose "Time Zone" (just white list there without letters),
but chosing "next" works.
The USB3 driver shows yellow questionmark, does not work.
The XP Updates are all there, even the last Posready.

What I like very much is, that you keep every program and setting from Original XP CD

Dietmar

PS: Nice would be also a Setup, which uses only BCD boot for XP.
I know, that after Skylake and processors > Celeron it does not work but for all the other compis,
and also for nvme boot.



1) IDE / AHCI problem should be caused by drivers mismatch - included driver set will always need user touch to remove unneeded ones before building XP2ESD ISO
2) TimeZone problem is interesting. I must moved INF setup from SYSSETUP to SVCPACK and apply it during RunOnceEx same as VisualC++, I must do it according to x64 support to XP2ESD. I have no idea why is selection box empty in OOBE. If you try to change TimeZone you can see all of them are here. Will see what can I do as TimeZone OOBE pages are unlocked by editing OOBE htm file.
3) Weird, even if I reinstall USB3.x driver in VirtualBox I got error 3. This VM machine is configured as XP 32bit. When I try same ISO on VM configured as 8 x64 same result. Any idea what should cause it? I will try to buid another image. I have some ideas why it happends - When I tried these ported drivers it was only on pure XP SP3 English and Czech and it worked, so maybe caused by UpdatePack's WDF CO installers or other drivers, but wdfldr seems as correct one.

I will investigate these weirdos tomorrow.


Currently is used BCD + BOOTMGR + NTLDR legacy option. I have added some experimental support for booting through BCD + BOOTMGR + WINLOAD but this doesn't work due detecthal feature which we need. I'm 110% in to find cause and be able to boot only using this modern method. [TOOL] POWIS - Powerful Windows Setup - Support Windows Vista, 7, 8.0, 8.1, 10, 11 and their Servers equivalent
⇗ https://forums.mydigitallife.net/threads...p-v1-0-1.83558/

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#7904infuscomus⇗ @George King

Remind me why XP2ESD needs to use the detecthal feature of a vista beta NTLDR?

I think it wouldn't be unreasonable to assume that anyone running this XP2ESD would be running it on hardware newer than 2005.
So why not just have it automatically use multiprocessor HAL and kernel and not bother with detecthal?
#7905User32
Zitat von ⇗ infuscomus im Beitrag ¶ #7904
@George King

Remind me why XP2ESD needs to use the detecthal feature of a vista beta NTLDR?

I think it wouldn't be unreasonable to assume that anyone running this XP2ESD would be running it on hardware newer than 2005.
So why not just have it automatically use multiprocessor HAL and kernel and not bother with detecthal?
lol speak for yourself, XP2ESD would be a massive time saver for people who play around with old/XP era hardware quite often.

 

Page 528

#7906infuscomus⇗ @User32

The Windows 8/10 PreInstall Environment doesn't always work on older hardware though.
#7907User32
Zitat von ⇗ infuscomus im Beitrag ¶ #7906
@User32

The Windows 8/10 PreInstall Environment doesn't always work on older hardware though.
Indeed it doesn't, you need PAE, NX and some other instructions for it so anything below a C0 stepping Pentium M can't run it.
#7908George King
Zitat von ⇗ infuscomus im Beitrag ¶ #7904
@George King

Remind me why XP2ESD needs to use the detecthal feature of a vista beta NTLDR?

I think it wouldn't be unreasonable to assume that anyone running this XP2ESD would be running it on hardware newer than 2005.
So why not just have it automatically use multiprocessor HAL and kernel and not bother with detecthal?


I got and idea how to change this seetings on the fly on USB in settings.ini. I'm building testing image right now to see how it goes.

[TOOL] POWIS - Powerful Windows Setup - Support Windows Vista, 7, 8.0, 8.1, 10, 11 and their Servers equivalent
⇗ https://forums.mydigitallife.net/threads...p-v1-0-1.83558/

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#7909George King⇗ @infuscomus ⇗ @User32
There are still two methods to build XP2ESD Installer in v1.6

"Legacy" ISO -> Windows 7 PE + Windows 10 setup engine -> most compatible with older machines
"Modern" ISO -> Windows 8.0 or Windows 10  PE including setup engine -> most compatible with newer machines

[TOOL] POWIS - Powerful Windows Setup - Support Windows Vista, 7, 8.0, 8.1, 10, 11 and their Servers equivalent
⇗ https://forums.mydigitallife.net/threads...p-v1-0-1.83558/

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#7910Masterchief79I got some more info on this now. I did another XP installation on my B550 board and 5800X Ryzen CPU and it worked pretty well. I installed no optional patches and could boot, reboot, switch between OSes etc. no issues.

Then I got into overclocking a little bit and inevitably got the PC to freeze on a too aggressive overclock during a benchmark. This is what I mainly wanna use XP for if you remember: To have a fast platform for benchmarking old graphics cards, a GTX285 in this case.
So PC froze, I shut it down and rebooted it, and got greeted with Windows Check Disk. After disk checking, the PC bluescreens again, so it seems my install is borked and I can't get it to boot anymore. It doesn't matter if I actually run the disk check or not, it still BSODs.
I still have all kinds of HDDs connected that I use as data storage on my Win10 OS. Interestingly enough, the C drive from Windows XP install is not the HDD where it's actually installed on, either. (So I install Windows on my 320GB HDD which ends up being the E: drive.) Is that just a severe case of data salad? Would just disconnecting all other HDDs probably solve the issue?
#7911infuscomus⇗ @Masterchief79

Post a screenshot of the BSOD, it'll help determine what the problem is.
#7912diderius6May be (!?)
that it is possible to start XP SP3 with NTLDR and ntdetect.com from XP 64.
Crazy idea, but who knows and may be, this opens door to UEFI
Dietmar

PS: Does anybody know, what this message at boot of XP means?

#7913infuscomus⇗ @diderius6

I'm not sure, google it?
or look through NTDETECT source code for error code?
#7914diderius6I make a try with the master ntldr debug for XP for to see, why using ntldr with the integrated option rom from the nvme
Samsung 950 Pro always gives reboot.
Here is the output of Windbg.
Any help, why ntldr XP reboots from nvme device after last line is welcome
Dietmar

PS: ntldr seems to hang at
kd>
osloader!NtProcessStartup+0x238:
0040e6f1 f6052cfc420001 test byte ptr [osloader!BootFlags (0042fc2c)],1
kd>
osloader!NtProcessStartup+0x23f:
0040e6f8 742c je osloader!NtProcessStartup+0x26d (0040e726)
kd>
osloader!NtProcessStartup+0x26d:
0040e726 e896d70000 call osloader!BlTerminalHandleLoaderFailure (0041bec1)

or at
osloader!InitializeMemoryDescriptors+0x19:
0041169a a14cfc4200 mov eax,dword ptr [osloader!ExternalServicesTable (0042fc4c)]
kd> t
osloader!InitializeMemoryDescriptors+0x1e:
0041169f 8975e8 mov dword ptr [ebp-18h],esi
kd> t
osloader!InitializeMemoryDescriptors+0x21:
004116a2 ff502c call dword ptr [eax+2Ch]
kd> t
000212eb 6858000000 push 58h
kd> t
000212f0 68f6120000 push 12F6h
kd> t
000212f5 cb retf




Microsoft (R) Windows Debugger Version 6.12.0002.633 X86
Copyright (c) Microsoft Corporation. All rights reserved.

Opened \\.\com1
Waiting to reconnect...
BD: Debugging NTLDR --By: diyhack
BD: Boot Debugger Initialized
Connected to Windows Boot Debugger 3790 x86 compatible target at (Sun Oct 17 11:01:52.859 2021 (UTC + 2:00)), ptr64 FALSE
Kernel Debugger connection established.
Symbol search path is: C:\symbols
Executable search path is: C:\Symbols
*** ERROR: Symbol file could not be found. Defaulted to export symbols for osloader.exe -
Windows Boot Debugger Kernel Version 3790 UP Checked x86 compatible
Machine Name:
Primary image base = 0x00400000 Loaded module list = 0x0042fc9c
System Uptime: not available
Sun Oct 17 11:01:54.406 2021 (UTC + 2:00): Break instruction exception - code 80000003 (first chance)
osloader!DbgBreakPoint:
0040b0c6 cc int 3
kd> p
osloader!DbgBreakPoint+0x1:
0040b0c7 c3 ret
kd> p
osloader!BdInitDebugger+0x3c0:
0040bb78 eb05 jmp osloader!BdInitDebugger+0x3c7 (0040bb7f)
kd> p
osloader!BdInitDebugger+0x3c7:
0040bb7f c9 leave
kd> p
osloader!BdInitDebugger+0x3c8:
0040bb80 c20c00 ret 0Ch
kd> p
osloader!MempCopyGdt+0x254:
0041143c 33c0 xor eax,eax
kd> p
osloader!MempCopyGdt+0x256:
0041143e 5b pop ebx
kd>
osloader!MempCopyGdt+0x257:
0041143f 5f pop edi
kd>
osloader!MempCopyGdt+0x258:
00411440 5e pop esi
kd>
osloader!MempCopyGdt+0x259:
00411441 59 pop ecx
kd>
osloader!MempCopyGdt+0x25a:
00411442 59 pop ecx
kd>
osloader!MempCopyGdt+0x25b:
00411443 c3 ret
kd>
osloader!InitializeMemorySubsystem+0x236:
0041167a 5f pop edi
kd>
osloader!InitializeMemorySubsystem+0x237:
0041167b 5e pop esi
kd>
osloader!InitializeMemorySubsystem+0x238:
0041167c 5b pop ebx
kd>
osloader!InitializeMemorySubsystem+0x239:
0041167d c9 leave
kd>
osloader!InitializeMemorySubsystem+0x23a:
0041167e c20400 ret 4
kd>
osloader!DoGlobalInitialization+0x62:
0040e2fd 85c0 test eax,eax
kd>
osloader!DoGlobalInitialization+0x64:
0040e2ff 740f je osloader!DoGlobalInitialization+0x75 (0040e310)
kd>
osloader!DoGlobalInitialization+0x75:
0040e310 e86c330000 call osloader!InitializeMemoryDescriptors (00411681)
kd>
osloader!DoGlobalInitialization+0x7a:
0040e315 c20400 ret 4
kd>
osloader!NtProcessStartup+0x15:
0040e4ce 56 push esi
kd>
osloader!NtProcessStartup+0x16:
0040e4cf 68b8254200 push offset osloader!BlSuCmdLine (004225b8)
kd>
osloader!NtProcessStartup+0x1b:
0040e4d4 e83ffeffff call osloader!ParseCommandLine (0040e318)
kd>
osloader!NtProcessStartup+0x20:
0040e4d9 56 push esi
kd>
osloader!NtProcessStartup+0x21:
0040e4da e86c4affff call osloader!BlFillInSystemParameters (00402f4b)
kd>
osloader!NtProcessStartup+0x26:
0040e4df 8b4628 mov eax,dword ptr [esi+28h]
kd>
osloader!NtProcessStartup+0x29:
0040e4e2 a32cfc4200 mov dword ptr [osloader!BootFlags (0042fc2c)],eax
kd>
osloader!NtProcessStartup+0x2e:
0040e4e7 8b06 mov eax,dword ptr [esi]
kd>
osloader!NtProcessStartup+0x30:
0040e4e9 8b00 mov eax,dword ptr [eax]
kd>
osloader!NtProcessStartup+0x32:
0040e4eb 25ff000000 and eax,0FFh
kd>
osloader!NtProcessStartup+0x37:
0040e4f0 bb48f34200 mov ebx,offset osloader!BootPartitionName (0042f348)
kd>
osloader!NtProcessStartup+0x3c:
0040e4f5 0f848c010000 je osloader!NtProcessStartup+0x1ce (0040e687)
kd>
osloader!NtProcessStartup+0x42:
0040e4fb 83f801 cmp eax,1
kd>
osloader!NtProcessStartup+0x45:
0040e4fe 0f8483010000 je osloader!NtProcessStartup+0x1ce (0040e687)
kd>
osloader!NtProcessStartup+0x4b:
0040e504 83f840 cmp eax,40h
kd>
osloader!NtProcessStartup+0x4e:
0040e507 751a jne osloader!NtProcessStartup+0x6a (0040e523)
kd>
osloader!NtProcessStartup+0x6a:
0040e523 83f841 cmp eax,41h
kd>
osloader!NtProcessStartup+0x6d:
0040e526 7514 jne osloader!NtProcessStartup+0x83 (0040e53c)
kd>
osloader!NtProcessStartup+0x83:
0040e53c 50 push eax
kd>
osloader!NtProcessStartup+0x84:
0040e53d e82efdffff call osloader!BlIsElToritoCDBoot (0040e270)
kd>
osloader!NtProcessStartup+0x89:
0040e542 84c0 test al,al
kd>
osloader!NtProcessStartup+0x8b:
0040e544 8b06 mov eax,dword ptr [esi]
kd>
osloader!NtProcessStartup+0x8d:
0040e546 741e je osloader!NtProcessStartup+0xad (0040e566)
kd>
osloader!NtProcessStartup+0xad:
0040e566 0fb64801 movzx ecx,byte ptr [eax+1]
kd>
osloader!NtProcessStartup+0xb1:
0040e56a 0fb600 movzx eax,byte ptr [eax]
kd>
osloader!NtProcessStartup+0xb4:
0040e56d 51 push ecx
kd>
osloader!NtProcessStartup+0xb5:
0040e56e 50 push eax
kd>
osloader!NtProcessStartup+0xb6:
0040e56f 53 push ebx
kd>
osloader!NtProcessStartup+0xb7:
0040e570 e842fcffff call osloader!BlGetActivePartition (0040e1b7)
kd>
osloader!NtProcessStartup+0xbc:
0040e575 6a4f push 4Fh
kd>
osloader!NtProcessStartup+0xbe:
0040e577 33ff xor edi,edi
kd>
osloader!NtProcessStartup+0xc0:
0040e579 8d45a5 lea eax,[ebp-5Bh]
kd>
osloader!NtProcessStartup+0xc3:
0040e57c 57 push edi
kd>
osloader!NtProcessStartup+0xc4:
0040e57d 50 push eax
kd>
osloader!NtProcessStartup+0xc5:
0040e57e c645a400 mov byte ptr [ebp-5Ch],0
kd>
osloader!NtProcessStartup+0xc9:
0040e582 e825dd0000 call osloader!memset (0041c2ac)
kd>
osloader!NtProcessStartup+0xce:
0040e587 8b06 mov eax,dword ptr [esi]
kd>
osloader!NtProcessStartup+0xd0:
0040e589 897d08 mov dword ptr [ebp+8],edi
kd>
osloader!NtProcessStartup+0xd3:
0040e58c 8b00 mov eax,dword ptr [eax]
kd>
osloader!NtProcessStartup+0xd5:
0040e58e 83e07f and eax,7Fh
kd>
osloader!NtProcessStartup+0xd8:
0040e591 50 push eax
kd>
osloader!NtProcessStartup+0xd9:
0040e592 8d45a4 lea eax,[ebp-5Ch]
kd>
osloader!NtProcessStartup+0xdc:
0040e595 6834054200 push offset osloader!`string' (00420534)
kd>
osloader!NtProcessStartup+0xe1:
0040e59a 50 push eax
kd>
osloader!NtProcessStartup+0xe2:
0040e59b e8b0db0000 call osloader!sprintf (0041c150)
kd>
osloader!NtProcessStartup+0xe7:
0040e5a0 83c418 add esp,18h
kd>
osloader!NtProcessStartup+0xea:
0040e5a3 8d4508 lea eax,[ebp+8]
kd>
osloader!NtProcessStartup+0xed:
0040e5a6 50 push eax
kd>
osloader!NtProcessStartup+0xee:
0040e5a7 6a02 push 2
kd>
osloader!NtProcessStartup+0xf0:
0040e5a9 8d45a4 lea eax,[ebp-5Ch]
kd>
osloader!NtProcessStartup+0xf3:
0040e5ac 50 push eax
kd>
osloader!NtProcessStartup+0xf4:
0040e5ad a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd>
osloader!NtProcessStartup+0xf9:
0040e5b2 ff505c call dword ptr [eax+5Ch]
kd>
osloader!NtProcessStartup+0xfc:
0040e5b5 85c0 test eax,eax
kd>
osloader!NtProcessStartup+0xfe:
0040e5b7 0f85bd000000 jne osloader!NtProcessStartup+0x1c1 (0040e67a)
kd>
osloader!NtProcessStartup+0x104:
0040e5bd 57 push edi
kd>
osloader!NtProcessStartup+0x105:
0040e5be 8d45f8 lea eax,[ebp-8]
kd>
osloader!NtProcessStartup+0x108:
0040e5c1 50 push eax
kd>
osloader!NtProcessStartup+0x109:
0040e5c2 ff7508 push dword ptr [ebp+8]
kd>
osloader!NtProcessStartup+0x10c:
0040e5c5 a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd>
osloader!NtProcessStartup+0x111:
0040e5ca 897df8 mov dword ptr [ebp-8],edi
kd>
osloader!NtProcessStartup+0x114:
0040e5cd 897dfc mov dword ptr [ebp-4],edi
kd>
osloader!NtProcessStartup+0x117:
0040e5d0 ff5070 call dword ptr [eax+70h]
kd>
osloader!NtProcessStartup+0x11a:
0040e5d3 85c0 test eax,eax
kd>
osloader!NtProcessStartup+0x11c:
0040e5d5 0f858a000000 jne osloader!NtProcessStartup+0x1ac (0040e665)
kd>
osloader!NtProcessStartup+0x122:
0040e5db 8d45f4 lea eax,[ebp-0Ch]
kd>
osloader!NtProcessStartup+0x125:
0040e5de 50 push eax
kd>
osloader!NtProcessStartup+0x126:
0040e5df bf00020000 mov edi,200h
kd>
osloader!NtProcessStartup+0x12b:
0040e5e4 57 push edi
kd>
osloader!NtProcessStartup+0x12c:
0040e5e5 8d85a4fdffff lea eax,[ebp-25Ch]
kd>
osloader!NtProcessStartup+0x132:
0040e5eb 50 push eax
kd>
osloader!NtProcessStartup+0x133:
0040e5ec ff7508 push dword ptr [ebp+8]
kd>
osloader!NtProcessStartup+0x136:
0040e5ef a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd>
osloader!NtProcessStartup+0x13b:
0040e5f4 ff5064 call dword ptr [eax+64h]
kd>
osloader!NtProcessStartup+0x13e:
0040e5f7 85c0 test eax,eax
kd>
osloader!NtProcessStartup+0x140:
0040e5f9 7563 jne osloader!NtProcessStartup+0x1a5 (0040e65e)
kd>
osloader!NtProcessStartup+0x142:
0040e5fb 39855cffffff cmp dword ptr [ebp-0A4h],eax
kd>
osloader!NtProcessStartup+0x148:
0040e601 756d jne osloader!NtProcessStartup+0x1b7 (0040e670)
kd>
osloader!NtProcessStartup+0x1b7:
0040e670 ff7508 push dword ptr [ebp+8]
kd>
osloader!NtProcessStartup+0x1ba:
0040e673 e89b69ffff call osloader!ArcCacheClose (00405013)
kd>
osloader!NtProcessStartup+0x1bf:
0040e678 eb2d jmp osloader!NtProcessStartup+0x1ee (0040e6a7)
kd>
osloader!NtProcessStartup+0x1ee:
0040e6a7 6a02 push 2
kd>
osloader!NtProcessStartup+0x1f0:
0040e6a9 e848260000 call osloader!FwAllocateHeapPermanent (00410cf6)
kd>
osloader!NtProcessStartup+0x1f5:
0040e6ae a38c304300 mov dword ptr [osloader!PcrBasePage (0043308c)],eax
kd>
osloader!NtProcessStartup+0x1fa:
0040e6b3 85c0 test eax,eax
kd>
osloader!NtProcessStartup+0x1fc:
0040e6b5 7408 je osloader!NtProcessStartup+0x206 (0040e6bf)
kd>
osloader!NtProcessStartup+0x1fe:
0040e6b7 c1e80c shr eax,0Ch
kd>
osloader!NtProcessStartup+0x201:
0040e6ba a38c304300 mov dword ptr [osloader!PcrBasePage (0043308c)],eax
kd>
osloader!NtProcessStartup+0x206:
0040e6bf 6a03 push 3
kd>
osloader!NtProcessStartup+0x208:
0040e6c1 e830260000 call osloader!FwAllocateHeapPermanent (00410cf6)
kd>
osloader!NtProcessStartup+0x20d:
0040e6c6 a390304300 mov dword ptr [osloader!TssBasePage (00433090)],eax
kd>
osloader!NtProcessStartup+0x212:
0040e6cb 85c0 test eax,eax
kd>
osloader!NtProcessStartup+0x214:
0040e6cd 7408 je osloader!NtProcessStartup+0x21e (0040e6d7)
kd>
osloader!NtProcessStartup+0x216:
0040e6cf c1e80c shr eax,0Ch
kd>
osloader!NtProcessStartup+0x219:
0040e6d2 a390304300 mov dword ptr [osloader!TssBasePage (00433090)],eax
kd>
osloader!NtProcessStartup+0x21e:
0040e6d7 e843360000 call osloader!BlMemoryInitialize (00411d1f)
kd>
osloader!NtProcessStartup+0x223:
0040e6dc e84744ffff call osloader!AEInitializeStall (00402b28)
kd>
osloader!NtProcessStartup+0x228:
0040e6e1 e800d50000 call osloader!BlInitializeHeadlessPort (0041bbe6)
kd>
osloader!NtProcessStartup+0x22d:
0040e6e6 e8e568ffff call osloader!BlIoInitialize (00404fd0)
kd>
osloader!NtProcessStartup+0x232:
0040e6eb 53 push ebx
kd>
osloader!NtProcessStartup+0x233:
0040e6ec e8a9f4ffff call osloader!BlStartup (0040db9a)
kd>
osloader!NtProcessStartup+0x238:
0040e6f1 f6052cfc420001 test byte ptr [osloader!BootFlags (0042fc2c)],1
kd>
osloader!NtProcessStartup+0x23f:
0040e6f8 742c je osloader!NtProcessStartup+0x26d (0040e726)
kd>
osloader!NtProcessStartup+0x26d:
0040e726 e896d70000 call osloader!BlTerminalHandleLoaderFailure (0041bec1)
kd>
osloader!NtProcessStartup+0x272:
0040e72b 84c0 test al,al
kd>
osloader!NtProcessStartup+0x274:
0040e72d 74f7 je osloader!NtProcessStartup+0x26d (0040e726)
kd>
osloader!NtProcessStartup+0x276:
0040e72f ebed jmp osloader!NtProcessStartup+0x265 (0040e71e)
kd>
osloader!NtProcessStartup+0x265:
0040e71e a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd>
osloader!NtProcessStartup+0x26a:
0040e723 ff5014 call dword ptr [eax+14h]
kd>
Shutdown occurred at (Sun Oct 17 11:02:34.859 2021 (UTC + 2:00))...unloading all symbol tables.
Waiting to reconnect...

   

Microsoft (R) Windows Debugger Version 6.12.0002.633 X86
Copyright (c) Microsoft Corporation. All rights reserved.

Opened \\.\com1
Waiting to reconnect...
BD: Debugging NTLDR --By: diyhack
BD: Boot Debugger Initialized
Connected to Windows Boot Debugger 3790 x86 compatible target at (Sun Oct 17 11:23:06.125 2021 (UTC + 2:00)), ptr64 FALSE
Kernel Debugger connection established.
Symbol search path is: C:\symbols
Executable search path is: C:\Symbols
*** ERROR: Symbol file could not be found. Defaulted to export symbols for osloader.exe -
Windows Boot Debugger Kernel Version 3790 UP Checked x86 compatible
Machine Name:
Primary image base = 0x00400000 Loaded module list = 0x0042fc9c
System Uptime: not available
Sun Oct 17 11:23:07.671 2021 (UTC + 2:00): Break instruction exception - code 80000003 (first chance)
osloader!DbgBreakPoint:
0040b0c6 cc int 3
kd> t
osloader!DbgBreakPoint+0x1:
0040b0c7 c3 ret
kd> t
osloader!BdInitDebugger+0x3c0:
0040bb78 eb05 jmp osloader!BdInitDebugger+0x3c7 (0040bb7f)
kd> t
osloader!BdInitDebugger+0x3c7:
0040bb7f c9 leave
kd> t
osloader!BdInitDebugger+0x3c8:
0040bb80 c20c00 ret 0Ch
kd> t
osloader!MempCopyGdt+0x254:
0041143c 33c0 xor eax,eax
kd> t
osloader!MempCopyGdt+0x256:
0041143e 5b pop ebx
kd> t
osloader!MempCopyGdt+0x257:
0041143f 5f pop edi
kd> t
osloader!MempCopyGdt+0x258:
00411440 5e pop esi
kd>
osloader!MempCopyGdt+0x259:
00411441 59 pop ecx
kd>
osloader!MempCopyGdt+0x25a:
00411442 59 pop ecx
kd>
osloader!MempCopyGdt+0x25b:
00411443 c3 ret
kd>
osloader!InitializeMemorySubsystem+0x236:
0041167a 5f pop edi
kd>
osloader!InitializeMemorySubsystem+0x237:
0041167b 5e pop esi
kd>
osloader!InitializeMemorySubsystem+0x238:
0041167c 5b pop ebx
kd>
osloader!InitializeMemorySubsystem+0x239:
0041167d c9 leave
kd>
osloader!InitializeMemorySubsystem+0x23a:
0041167e c20400 ret 4
kd>
osloader!DoGlobalInitialization+0x62:
0040e2fd 85c0 test eax,eax
kd>
osloader!DoGlobalInitialization+0x64:
0040e2ff 740f je osloader!DoGlobalInitialization+0x75 (0040e310)
kd>
osloader!DoGlobalInitialization+0x75:
0040e310 e86c330000 call osloader!InitializeMemoryDescriptors (00411681)
kd>
osloader!InitializeMemoryDescriptors:
00411681 55 push ebp
kd>
osloader!InitializeMemoryDescriptors+0x1:
00411682 8bec mov ebp,esp
kd>
osloader!InitializeMemoryDescriptors+0x3:
00411684 83ec20 sub esp,20h
kd>
osloader!InitializeMemoryDescriptors+0x6:
00411687 8365e400 and dword ptr [ebp-1Ch],0
kd>
osloader!InitializeMemoryDescriptors+0xa:
0041168b 53 push ebx
kd>
osloader!InitializeMemoryDescriptors+0xb:
0041168c 56 push esi
kd>
osloader!InitializeMemoryDescriptors+0xc:
0041168d 57 push edi
kd>
osloader!InitializeMemoryDescriptors+0xd:
0041168e bfff0f0000 mov edi,0FFFh
kd>
osloader!InitializeMemoryDescriptors+0x12:
00411693 6a14 push 14h
kd>
osloader!InitializeMemoryDescriptors+0x14:
00411695 5e pop esi
kd>
osloader!InitializeMemoryDescriptors+0x15:
00411696 8d45e0 lea eax,[ebp-20h]
kd>
osloader!InitializeMemoryDescriptors+0x18:
00411699 50 push eax
kd>
osloader!InitializeMemoryDescriptors+0x19:
0041169a a14cfc4200 mov eax,dword ptr [osloader!ExternalServicesTable (0042fc4c)]
kd>
osloader!InitializeMemoryDescriptors+0x1e:
0041169f 8975e8 mov dword ptr [ebp-18h],esi
kd>
osloader!InitializeMemoryDescriptors+0x21:
004116a2 ff502c call dword ptr [eax+2Ch]
kd>
000212eb 6858000000 push 58h
kd>
000212f0 68f6120000 push 12F6h
kd>
000212f5 cb retf
kd>
0058:12f6 6655 push ebp
16.kd>
0058:12f8 6653 push ebx
16.kd>
0058:12fa 6656 push esi
16.kd>
0058:12fc 6657 push edi
16.kd>
0058:12fe 6689e3 mov ebx,esp
16.kd>
0058:1301 b86000 mov ax,60h
16.kd>
0058:1304 8ed8 mov ds,ax
16.kd>

   

Microsoft (R) Windows Debugger Version 6.12.0002.633 X86
Copyright (c) Microsoft Corporation. All rights reserved.

Opened \\.\com1
Waiting to reconnect...
BD: Debugging NTLDR --By: diyhack
BD: Boot Debugger Initialized
Connected to Windows Boot Debugger 3790 x86 compatible target at (Sun Oct 17 11:27:16.250 2021 (UTC + 2:00)), ptr64 FALSE
Kernel Debugger connection established.
Symbol search path is: C:\symbols
Executable search path is: C:\Symbols
*** ERROR: Symbol file could not be found. Defaulted to export symbols for osloader.exe -
Windows Boot Debugger Kernel Version 3790 UP Checked x86 compatible
Machine Name:
Primary image base = 0x00400000 Loaded module list = 0x0042fc9c
System Uptime: not available
Sun Oct 17 11:27:17.796 2021 (UTC + 2:00): Break instruction exception - code 80000003 (first chance)
osloader!DbgBreakPoint:
0040b0c6 cc int 3
kd> p
osloader!DbgBreakPoint+0x1:
0040b0c7 c3 ret
kd> p
osloader!BdInitDebugger+0x3c0:
0040bb78 eb05 jmp osloader!BdInitDebugger+0x3c7 (0040bb7f)
kd> p
osloader!BdInitDebugger+0x3c7:
0040bb7f c9 leave
kd> p
osloader!BdInitDebugger+0x3c8:
0040bb80 c20c00 ret 0Ch
kd> p
osloader!MempCopyGdt+0x254:
0041143c 33c0 xor eax,eax
kd> p
osloader!MempCopyGdt+0x256:
0041143e 5b pop ebx
kd> p
osloader!MempCopyGdt+0x257:
0041143f 5f pop edi
kd> p
osloader!MempCopyGdt+0x258:
00411440 5e pop esi
kd> p
osloader!MempCopyGdt+0x259:
00411441 59 pop ecx
kd> p
osloader!MempCopyGdt+0x25a:
00411442 59 pop ecx
kd> p
osloader!MempCopyGdt+0x25b:
00411443 c3 ret
kd> p
osloader!InitializeMemorySubsystem+0x236:
0041167a 5f pop edi
kd> p
osloader!InitializeMemorySubsystem+0x237:
0041167b 5e pop esi
kd> p
osloader!InitializeMemorySubsystem+0x238:
0041167c 5b pop ebx
kd> p
osloader!InitializeMemorySubsystem+0x239:
0041167d c9 leave
kd> p
osloader!InitializeMemorySubsystem+0x23a:
0041167e c20400 ret 4
kd> p
osloader!DoGlobalInitialization+0x62:
0040e2fd 85c0 test eax,eax
kd> p
osloader!DoGlobalInitialization+0x64:
0040e2ff 740f je osloader!DoGlobalInitialization+0x75 (0040e310)
kd> p
osloader!DoGlobalInitialization+0x75:
0040e310 e86c330000 call osloader!InitializeMemoryDescriptors (00411681)
kd> p
osloader!DoGlobalInitialization+0x7a:
0040e315 c20400 ret 4
kd> p
osloader!NtProcessStartup+0x15:
0040e4ce 56 push esi
kd> p
osloader!NtProcessStartup+0x16:
0040e4cf 68b8254200 push offset osloader!BlSuCmdLine (004225b8)
kd> p
osloader!NtProcessStartup+0x1b:
0040e4d4 e83ffeffff call osloader!ParseCommandLine (0040e318)
kd> p
osloader!NtProcessStartup+0x20:
0040e4d9 56 push esi
kd> p
osloader!NtProcessStartup+0x21:
0040e4da e86c4affff call osloader!BlFillInSystemParameters (00402f4b)
kd> p
osloader!NtProcessStartup+0x26:
0040e4df 8b4628 mov eax,dword ptr [esi+28h]
kd> p
osloader!NtProcessStartup+0x29:
0040e4e2 a32cfc4200 mov dword ptr [osloader!BootFlags (0042fc2c)],eax
kd> p
osloader!NtProcessStartup+0x2e:
0040e4e7 8b06 mov eax,dword ptr [esi]
kd> p
osloader!NtProcessStartup+0x30:
0040e4e9 8b00 mov eax,dword ptr [eax]
kd> p
osloader!NtProcessStartup+0x32:
0040e4eb 25ff000000 and eax,0FFh
kd> p
osloader!NtProcessStartup+0x37:
0040e4f0 bb48f34200 mov ebx,offset osloader!BootPartitionName (0042f348)
kd> p
osloader!NtProcessStartup+0x3c:
0040e4f5 0f848c010000 je osloader!NtProcessStartup+0x1ce (0040e687)
kd> p
osloader!NtProcessStartup+0x42:
0040e4fb 83f801 cmp eax,1
kd> p
osloader!NtProcessStartup+0x45:
0040e4fe 0f8483010000 je osloader!NtProcessStartup+0x1ce (0040e687)
kd> p
osloader!NtProcessStartup+0x4b:
0040e504 83f840 cmp eax,40h
kd> p
osloader!NtProcessStartup+0x4e:
0040e507 751a jne osloader!NtProcessStartup+0x6a (0040e523)
kd> p
osloader!NtProcessStartup+0x6a:
0040e523 83f841 cmp eax,41h
kd> p
osloader!NtProcessStartup+0x6d:
0040e526 7514 jne osloader!NtProcessStartup+0x83 (0040e53c)
kd> p
osloader!NtProcessStartup+0x83:
0040e53c 50 push eax
kd> p
osloader!NtProcessStartup+0x84:
0040e53d e82efdffff call osloader!BlIsElToritoCDBoot (0040e270)
kd> p
osloader!NtProcessStartup+0x89:
0040e542 84c0 test al,al
kd> p
osloader!NtProcessStartup+0x8b:
0040e544 8b06 mov eax,dword ptr [esi]
kd> p
osloader!NtProcessStartup+0x8d:
0040e546 741e je osloader!NtProcessStartup+0xad (0040e566)
kd> p
osloader!NtProcessStartup+0xad:
0040e566 0fb64801 movzx ecx,byte ptr [eax+1]
kd> p
osloader!NtProcessStartup+0xb1:
0040e56a 0fb600 movzx eax,byte ptr [eax]
kd> p
osloader!NtProcessStartup+0xb4:
0040e56d 51 push ecx
kd> p
osloader!NtProcessStartup+0xb5:
0040e56e 50 push eax
kd> p
osloader!NtProcessStartup+0xb6:
0040e56f 53 push ebx
kd> p
osloader!NtProcessStartup+0xb7:
0040e570 e842fcffff call osloader!BlGetActivePartition (0040e1b7)
kd> p
osloader!NtProcessStartup+0xbc:
0040e575 6a4f push 4Fh
kd> p
osloader!NtProcessStartup+0xbe:
0040e577 33ff xor edi,edi
kd> p
osloader!NtProcessStartup+0xc0:
0040e579 8d45a5 lea eax,[ebp-5Bh]
kd> p
osloader!NtProcessStartup+0xc3:
0040e57c 57 push edi
kd> p
osloader!NtProcessStartup+0xc4:
0040e57d 50 push eax
kd> p
osloader!NtProcessStartup+0xc5:
0040e57e c645a400 mov byte ptr [ebp-5Ch],0
kd> p
osloader!NtProcessStartup+0xc9:
0040e582 e825dd0000 call osloader!memset (0041c2ac)
kd> p
osloader!NtProcessStartup+0xce:
0040e587 8b06 mov eax,dword ptr [esi]
kd> p
osloader!NtProcessStartup+0xd0:
0040e589 897d08 mov dword ptr [ebp+8],edi
kd> p
osloader!NtProcessStartup+0xd3:
0040e58c 8b00 mov eax,dword ptr [eax]
kd> p
osloader!NtProcessStartup+0xd5:
0040e58e 83e07f and eax,7Fh
kd> p
osloader!NtProcessStartup+0xd8:
0040e591 50 push eax
kd> p
osloader!NtProcessStartup+0xd9:
0040e592 8d45a4 lea eax,[ebp-5Ch]
kd> p
osloader!NtProcessStartup+0xdc:
0040e595 6834054200 push offset osloader!`string' (00420534)
kd> p
osloader!NtProcessStartup+0xe1:
0040e59a 50 push eax
kd> p
osloader!NtProcessStartup+0xe2:
0040e59b e8b0db0000 call osloader!sprintf (0041c150)
kd> p
osloader!NtProcessStartup+0xe7:
0040e5a0 83c418 add esp,18h
kd> p
osloader!NtProcessStartup+0xea:
0040e5a3 8d4508 lea eax,[ebp+8]
kd> p
osloader!NtProcessStartup+0xed:
0040e5a6 50 push eax
kd> p
osloader!NtProcessStartup+0xee:
0040e5a7 6a02 push 2
kd> p
osloader!NtProcessStartup+0xf0:
0040e5a9 8d45a4 lea eax,[ebp-5Ch]
kd> p
osloader!NtProcessStartup+0xf3:
0040e5ac 50 push eax
kd> p
osloader!NtProcessStartup+0xf4:
0040e5ad a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd> p
osloader!NtProcessStartup+0xf9:
0040e5b2 ff505c call dword ptr [eax+5Ch]
kd> p
osloader!NtProcessStartup+0xfc:
0040e5b5 85c0 test eax,eax
kd> p
osloader!NtProcessStartup+0xfe:
0040e5b7 0f85bd000000 jne osloader!NtProcessStartup+0x1c1 (0040e67a)
kd> p
osloader!NtProcessStartup+0x104:
0040e5bd 57 push edi
kd> p
osloader!NtProcessStartup+0x105:
0040e5be 8d45f8 lea eax,[ebp-8]
kd> p
osloader!NtProcessStartup+0x108:
0040e5c1 50 push eax
kd> p
osloader!NtProcessStartup+0x109:
0040e5c2 ff7508 push dword ptr [ebp+8]
kd> p
osloader!NtProcessStartup+0x10c:
0040e5c5 a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd> p
osloader!NtProcessStartup+0x111:
0040e5ca 897df8 mov dword ptr [ebp-8],edi
kd> p
osloader!NtProcessStartup+0x114:
0040e5cd 897dfc mov dword ptr [ebp-4],edi
kd> p
osloader!NtProcessStartup+0x117:
0040e5d0 ff5070 call dword ptr [eax+70h]
kd> p
osloader!NtProcessStartup+0x11a:
0040e5d3 85c0 test eax,eax
kd> p
osloader!NtProcessStartup+0x11c:
0040e5d5 0f858a000000 jne osloader!NtProcessStartup+0x1ac (0040e665)
kd> p
osloader!NtProcessStartup+0x122:
0040e5db 8d45f4 lea eax,[ebp-0Ch]
kd> p
osloader!NtProcessStartup+0x125:
0040e5de 50 push eax
kd> p
osloader!NtProcessStartup+0x126:
0040e5df bf00020000 mov edi,200h
kd> p
osloader!NtProcessStartup+0x12b:
0040e5e4 57 push edi
kd> p
osloader!NtProcessStartup+0x12c:
0040e5e5 8d85a4fdffff lea eax,[ebp-25Ch]
kd> p
osloader!NtProcessStartup+0x132:
0040e5eb 50 push eax
kd> p
osloader!NtProcessStartup+0x133:
0040e5ec ff7508 push dword ptr [ebp+8]
kd> p
osloader!NtProcessStartup+0x136:
0040e5ef a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd> p
osloader!NtProcessStartup+0x13b:
0040e5f4 ff5064 call dword ptr [eax+64h]
kd> p
osloader!NtProcessStartup+0x13e:
0040e5f7 85c0 test eax,eax
kd> p
osloader!NtProcessStartup+0x140:
0040e5f9 7563 jne osloader!NtProcessStartup+0x1a5 (0040e65e)
kd> p
osloader!NtProcessStartup+0x142:
0040e5fb 39855cffffff cmp dword ptr [ebp-0A4h],eax
kd> p
osloader!NtProcessStartup+0x148:
0040e601 756d jne osloader!NtProcessStartup+0x1b7 (0040e670)
kd> p
osloader!NtProcessStartup+0x1b7:
0040e670 ff7508 push dword ptr [ebp+8]
kd> p
osloader!NtProcessStartup+0x1ba:
0040e673 e89b69ffff call osloader!ArcCacheClose (00405013)
kd> p
osloader!NtProcessStartup+0x1bf:
0040e678 eb2d jmp osloader!NtProcessStartup+0x1ee (0040e6a7)
kd> p
osloader!NtProcessStartup+0x1ee:
0040e6a7 6a02 push 2
kd> p
osloader!NtProcessStartup+0x1f0:
0040e6a9 e848260000 call osloader!FwAllocateHeapPermanent (00410cf6)
kd> p
osloader!NtProcessStartup+0x1f5:
0040e6ae a38c304300 mov dword ptr [osloader!PcrBasePage (0043308c)],eax
kd> p
osloader!NtProcessStartup+0x1fa:
0040e6b3 85c0 test eax,eax
kd> p
osloader!NtProcessStartup+0x1fc:
0040e6b5 7408 je osloader!NtProcessStartup+0x206 (0040e6bf)
kd> p
osloader!NtProcessStartup+0x1fe:
0040e6b7 c1e80c shr eax,0Ch
kd> p
osloader!NtProcessStartup+0x201:
0040e6ba a38c304300 mov dword ptr [osloader!PcrBasePage (0043308c)],eax
kd> p
osloader!NtProcessStartup+0x206:
0040e6bf 6a03 push 3
kd> p
osloader!NtProcessStartup+0x208:
0040e6c1 e830260000 call osloader!FwAllocateHeapPermanent (00410cf6)
kd> p
osloader!NtProcessStartup+0x20d:
0040e6c6 a390304300 mov dword ptr [osloader!TssBasePage (00433090)],eax
kd> p
osloader!NtProcessStartup+0x212:
0040e6cb 85c0 test eax,eax
kd> p
osloader!NtProcessStartup+0x214:
0040e6cd 7408 je osloader!NtProcessStartup+0x21e (0040e6d7)
kd> p
osloader!NtProcessStartup+0x216:
0040e6cf c1e80c shr eax,0Ch
kd> p
osloader!NtProcessStartup+0x219:
0040e6d2 a390304300 mov dword ptr [osloader!TssBasePage (00433090)],eax
kd> p
osloader!NtProcessStartup+0x21e:
0040e6d7 e843360000 call osloader!BlMemoryInitialize (00411d1f)
kd> p
osloader!NtProcessStartup+0x223:
0040e6dc e84744ffff call osloader!AEInitializeStall (00402b28)
kd> p
osloader!NtProcessStartup+0x228:
0040e6e1 e800d50000 call osloader!BlInitializeHeadlessPort (0041bbe6)
kd> p
osloader!NtProcessStartup+0x22d:
0040e6e6 e8e568ffff call osloader!BlIoInitialize (00404fd0)
kd> p
osloader!NtProcessStartup+0x232:
0040e6eb 53 push ebx
kd> p
osloader!NtProcessStartup+0x233:
0040e6ec e8a9f4ffff call osloader!BlStartup (0040db9a)
kd> p
osloader!NtProcessStartup+0x238:
0040e6f1 f6052cfc420001 test byte ptr [osloader!BootFlags (0042fc2c)],1
kd> p
osloader!NtProcessStartup+0x23f:
0040e6f8 742c je osloader!NtProcessStartup+0x26d (0040e726)
kd> p
osloader!NtProcessStartup+0x26d:
0040e726 e896d70000 call osloader!BlTerminalHandleLoaderFailure (0041bec1)
kd> p
osloader!NtProcessStartup+0x272:
0040e72b 84c0 test al,al
kd> p
osloader!NtProcessStartup+0x274:
0040e72d 74f7 je osloader!NtProcessStartup+0x26d (0040e726)
kd> p
osloader!NtProcessStartup+0x276:
0040e72f ebed jmp osloader!NtProcessStartup+0x265 (0040e71e)
kd> p
osloader!NtProcessStartup+0x265:
0040e71e a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd> p
osloader!NtProcessStartup+0x26a:
0040e723 ff5014 call dword ptr [eax+14h]
kd> p
Shutdown occurred at (Sun Oct 17 11:29:23.734 2021 (UTC + 2:00))...unloading all symbol tables.
Waiting to reconnect...
#7915infuscomus⇗ @diderius6

having access to proper symbols would probably help with this, I'm assuming NTLDR symbols are still on microsofts symbol server?

Alternatively, build your own NTLDR from source code and use its private symbols might give more info about the problem?
#7916diderius6And here comes a working bootprocess with the same master debug ntldr and the same nvme and the same XP
on another compi

Microsoft (R) Windows Debugger Version 6.12.0002.633 X86
Copyright (c) Microsoft Corporation. All rights reserved.

Opened \\.\com1
Waiting to reconnect...
BD: Debugging NTLDR --By: diyhack
BD: Boot Debugger Initialized
Connected to Windows Boot Debugger 3790 x86 compatible target at (Sun Oct 17 12:09:47.984 2021 (UTC + 2:00)), ptr64 FALSE
Kernel Debugger connection established.
Symbol search path is: C:\symbols
Executable search path is: C:\Symbols
*** ERROR: Symbol file could not be found. Defaulted to export symbols for osloader.exe -
Windows Boot Debugger Kernel Version 3790 UP Checked x86 compatible
Machine Name:
Primary image base = 0x00400000 Loaded module list = 0x0042fc9c
System Uptime: not available
Sun Oct 17 12:09:49.562 2021 (UTC + 2:00): Break instruction exception - code 80000003 (first chance)
osloader!DbgBreakPoint:
0040b0c6 cc int 3
kd> p
osloader!DbgBreakPoint+0x1:
0040b0c7 c3 ret
kd> p
osloader!BdInitDebugger+0x3c0:
0040bb78 eb05 jmp osloader!BdInitDebugger+0x3c7 (0040bb7f)
kd> p
osloader!BdInitDebugger+0x3c7:
0040bb7f c9 leave
kd> p
osloader!BdInitDebugger+0x3c8:
0040bb80 c20c00 ret 0Ch
kd> p
osloader!MempCopyGdt+0x254:
0041143c 33c0 xor eax,eax
kd> p
osloader!MempCopyGdt+0x256:
0041143e 5b pop ebx
kd> p
osloader!MempCopyGdt+0x257:
0041143f 5f pop edi
kd> p
osloader!MempCopyGdt+0x258:
00411440 5e pop esi
kd> p
osloader!MempCopyGdt+0x259:
00411441 59 pop ecx
kd> p
osloader!MempCopyGdt+0x25a:
00411442 59 pop ecx
kd> p
osloader!MempCopyGdt+0x25b:
00411443 c3 ret
kd> p
osloader!InitializeMemorySubsystem+0x236:
0041167a 5f pop edi
kd> p
osloader!InitializeMemorySubsystem+0x237:
0041167b 5e pop esi
kd> p
osloader!InitializeMemorySubsystem+0x238:
0041167c 5b pop ebx
kd> p
osloader!InitializeMemorySubsystem+0x239:
0041167d c9 leave
kd> p
osloader!InitializeMemorySubsystem+0x23a:
0041167e c20400 ret 4
kd> p
osloader!DoGlobalInitialization+0x62:
0040e2fd 85c0 test eax,eax
kd> p
osloader!DoGlobalInitialization+0x64:
0040e2ff 740f je osloader!DoGlobalInitialization+0x75 (0040e310)
kd> p
osloader!DoGlobalInitialization+0x75:
0040e310 e86c330000 call osloader!InitializeMemoryDescriptors (00411681)
kd> p
osloader!DoGlobalInitialization+0x7a:
0040e315 c20400 ret 4
kd> p
osloader!NtProcessStartup+0x15:
0040e4ce 56 push esi
kd> p
osloader!NtProcessStartup+0x16:
0040e4cf 68b8254200 push offset osloader!BlSuCmdLine (004225b8)
kd> p
osloader!NtProcessStartup+0x1b:
0040e4d4 e83ffeffff call osloader!ParseCommandLine (0040e318)
kd> p
osloader!NtProcessStartup+0x20:
0040e4d9 56 push esi
kd> p
osloader!NtProcessStartup+0x21:
0040e4da e86c4affff call osloader!BlFillInSystemParameters (00402f4b)
kd> p
osloader!NtProcessStartup+0x26:
0040e4df 8b4628 mov eax,dword ptr [esi+28h]
kd> p
osloader!NtProcessStartup+0x29:
0040e4e2 a32cfc4200 mov dword ptr [osloader!BootFlags (0042fc2c)],eax
kd> p
osloader!NtProcessStartup+0x2e:
0040e4e7 8b06 mov eax,dword ptr [esi]
kd> p
osloader!NtProcessStartup+0x30:
0040e4e9 8b00 mov eax,dword ptr [eax]
kd> p
osloader!NtProcessStartup+0x32:
0040e4eb 25ff000000 and eax,0FFh
kd> p
osloader!NtProcessStartup+0x37:
0040e4f0 bb48f34200 mov ebx,offset osloader!BootPartitionName (0042f348)
kd> p
osloader!NtProcessStartup+0x3c:
0040e4f5 0f848c010000 je osloader!NtProcessStartup+0x1ce (0040e687)
kd> p
osloader!NtProcessStartup+0x42:
0040e4fb 83f801 cmp eax,1
kd> p
osloader!NtProcessStartup+0x45:
0040e4fe 0f8483010000 je osloader!NtProcessStartup+0x1ce (0040e687)
kd> p
osloader!NtProcessStartup+0x4b:
0040e504 83f840 cmp eax,40h
kd> p
osloader!NtProcessStartup+0x4e:
0040e507 751a jne osloader!NtProcessStartup+0x6a (0040e523)
kd> p
osloader!NtProcessStartup+0x6a:
0040e523 83f841 cmp eax,41h
kd> p
osloader!NtProcessStartup+0x6d:
0040e526 7514 jne osloader!NtProcessStartup+0x83 (0040e53c)
kd> p
osloader!NtProcessStartup+0x83:
0040e53c 50 push eax
kd> p
osloader!NtProcessStartup+0x84:
0040e53d e82efdffff call osloader!BlIsElToritoCDBoot (0040e270)
kd> p
osloader!NtProcessStartup+0x89:
0040e542 84c0 test al,al
kd> p
osloader!NtProcessStartup+0x8b:
0040e544 8b06 mov eax,dword ptr [esi]
kd> p
osloader!NtProcessStartup+0x8d:
0040e546 741e je osloader!NtProcessStartup+0xad (0040e566)
kd> p
osloader!NtProcessStartup+0xad:
0040e566 0fb64801 movzx ecx,byte ptr [eax+1]
kd> p
osloader!NtProcessStartup+0xb1:
0040e56a 0fb600 movzx eax,byte ptr [eax]
kd> p
osloader!NtProcessStartup+0xb4:
0040e56d 51 push ecx
kd> p
osloader!NtProcessStartup+0xb5:
0040e56e 50 push eax
kd> p
osloader!NtProcessStartup+0xb6:
0040e56f 53 push ebx
kd> p
osloader!NtProcessStartup+0xb7:
0040e570 e842fcffff call osloader!BlGetActivePartition (0040e1b7)
kd> p
osloader!NtProcessStartup+0xbc:
0040e575 6a4f push 4Fh
kd> p
osloader!NtProcessStartup+0xbe:
0040e577 33ff xor edi,edi
kd> p
osloader!NtProcessStartup+0xc0:
0040e579 8d45a5 lea eax,[ebp-5Bh]
kd> p
osloader!NtProcessStartup+0xc3:
0040e57c 57 push edi
kd> p
osloader!NtProcessStartup+0xc4:
0040e57d 50 push eax
kd> p
osloader!NtProcessStartup+0xc5:
0040e57e c645a400 mov byte ptr [ebp-5Ch],0
kd> p
osloader!NtProcessStartup+0xc9:
0040e582 e825dd0000 call osloader!memset (0041c2ac)
kd> p
osloader!NtProcessStartup+0xce:
0040e587 8b06 mov eax,dword ptr [esi]
kd> p
osloader!NtProcessStartup+0xd0:
0040e589 897d08 mov dword ptr [ebp+8],edi
kd> p
osloader!NtProcessStartup+0xd3:
0040e58c 8b00 mov eax,dword ptr [eax]
kd> p
osloader!NtProcessStartup+0xd5:
0040e58e 83e07f and eax,7Fh
kd> p
osloader!NtProcessStartup+0xd8:
0040e591 50 push eax
kd> p
osloader!NtProcessStartup+0xd9:
0040e592 8d45a4 lea eax,[ebp-5Ch]
kd> p
osloader!NtProcessStartup+0xdc:
0040e595 6834054200 push offset osloader!`string' (00420534)
kd> p
osloader!NtProcessStartup+0xe1:
0040e59a 50 push eax
kd> p
osloader!NtProcessStartup+0xe2:
0040e59b e8b0db0000 call osloader!sprintf (0041c150)
kd> p
osloader!NtProcessStartup+0xe7:
0040e5a0 83c418 add esp,18h
kd> p
osloader!NtProcessStartup+0xea:
0040e5a3 8d4508 lea eax,[ebp+8]
kd> p
osloader!NtProcessStartup+0xed:
0040e5a6 50 push eax
kd> p
osloader!NtProcessStartup+0xee:
0040e5a7 6a02 push 2
kd> p
osloader!NtProcessStartup+0xf0:
0040e5a9 8d45a4 lea eax,[ebp-5Ch]
kd> p
osloader!NtProcessStartup+0xf3:
0040e5ac 50 push eax
kd> p
osloader!NtProcessStartup+0xf4:
0040e5ad a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd> p
osloader!NtProcessStartup+0xf9:
0040e5b2 ff505c call dword ptr [eax+5Ch]
kd> p
osloader!NtProcessStartup+0xfc:
0040e5b5 85c0 test eax,eax
kd> p
osloader!NtProcessStartup+0xfe:
0040e5b7 0f85bd000000 jne osloader!NtProcessStartup+0x1c1 (0040e67a)
kd> p
osloader!NtProcessStartup+0x104:
0040e5bd 57 push edi
kd> p
osloader!NtProcessStartup+0x105:
0040e5be 8d45f8 lea eax,[ebp-8]
kd> p
osloader!NtProcessStartup+0x108:
0040e5c1 50 push eax
kd> p
osloader!NtProcessStartup+0x109:
0040e5c2 ff7508 push dword ptr [ebp+8]
kd> p
osloader!NtProcessStartup+0x10c:
0040e5c5 a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd> p
osloader!NtProcessStartup+0x111:
0040e5ca 897df8 mov dword ptr [ebp-8],edi
kd> p
osloader!NtProcessStartup+0x114:
0040e5cd 897dfc mov dword ptr [ebp-4],edi
kd> p
osloader!NtProcessStartup+0x117:
0040e5d0 ff5070 call dword ptr [eax+70h]
kd> p
osloader!NtProcessStartup+0x11a:
0040e5d3 85c0 test eax,eax
kd> p
osloader!NtProcessStartup+0x11c:
0040e5d5 0f858a000000 jne osloader!NtProcessStartup+0x1ac (0040e665)
kd> p
osloader!NtProcessStartup+0x122:
0040e5db 8d45f4 lea eax,[ebp-0Ch]
kd> p
osloader!NtProcessStartup+0x125:
0040e5de 50 push eax
kd> p
osloader!NtProcessStartup+0x126:
0040e5df bf00020000 mov edi,200h
kd> p
osloader!NtProcessStartup+0x12b:
0040e5e4 57 push edi
kd> p
osloader!NtProcessStartup+0x12c:
0040e5e5 8d85a4fdffff lea eax,[ebp-25Ch]
kd> p
osloader!NtProcessStartup+0x132:
0040e5eb 50 push eax
kd> p
osloader!NtProcessStartup+0x133:
0040e5ec ff7508 push dword ptr [ebp+8]
kd> p
osloader!NtProcessStartup+0x136:
0040e5ef a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd> p
osloader!NtProcessStartup+0x13b:
0040e5f4 ff5064 call dword ptr [eax+64h]
kd> p
osloader!NtProcessStartup+0x13e:
0040e5f7 85c0 test eax,eax
kd> p
osloader!NtProcessStartup+0x140:
0040e5f9 7563 jne osloader!NtProcessStartup+0x1a5 (0040e65e)
kd> p
osloader!NtProcessStartup+0x142:
0040e5fb 39855cffffff cmp dword ptr [ebp-0A4h],eax
kd> p
osloader!NtProcessStartup+0x148:
0040e601 756d jne osloader!NtProcessStartup+0x1b7 (0040e670)
kd> p
osloader!NtProcessStartup+0x1b7:
0040e670 ff7508 push dword ptr [ebp+8]
kd> p
osloader!NtProcessStartup+0x1ba:
0040e673 e89b69ffff call osloader!ArcCacheClose (00405013)
kd> p
osloader!NtProcessStartup+0x1bf:
0040e678 eb2d jmp osloader!NtProcessStartup+0x1ee (0040e6a7)
kd> p
osloader!NtProcessStartup+0x1ee:
0040e6a7 6a02 push 2
kd> p
osloader!NtProcessStartup+0x1f0:
0040e6a9 e848260000 call osloader!FwAllocateHeapPermanent (00410cf6)
kd> p
osloader!NtProcessStartup+0x1f5:
0040e6ae a38c304300 mov dword ptr [osloader!PcrBasePage (0043308c)],eax
kd> p
osloader!NtProcessStartup+0x1fa:
0040e6b3 85c0 test eax,eax
kd> p
osloader!NtProcessStartup+0x1fc:
0040e6b5 7408 je osloader!NtProcessStartup+0x206 (0040e6bf)
kd> p
osloader!NtProcessStartup+0x1fe:
0040e6b7 c1e80c shr eax,0Ch
kd> p
osloader!NtProcessStartup+0x201:
0040e6ba a38c304300 mov dword ptr [osloader!PcrBasePage (0043308c)],eax
kd> p
osloader!NtProcessStartup+0x206:
0040e6bf 6a03 push 3
kd> p
osloader!NtProcessStartup+0x208:
0040e6c1 e830260000 call osloader!FwAllocateHeapPermanent (00410cf6)
kd> p
osloader!NtProcessStartup+0x20d:
0040e6c6 a390304300 mov dword ptr [osloader!TssBasePage (00433090)],eax
kd> p
osloader!NtProcessStartup+0x212:
0040e6cb 85c0 test eax,eax
kd> p
osloader!NtProcessStartup+0x214:
0040e6cd 7408 je osloader!NtProcessStartup+0x21e (0040e6d7)
kd> p
osloader!NtProcessStartup+0x216:
0040e6cf c1e80c shr eax,0Ch
kd> p
osloader!NtProcessStartup+0x219:
0040e6d2 a390304300 mov dword ptr [osloader!TssBasePage (00433090)],eax
kd> p
osloader!NtProcessStartup+0x21e:
0040e6d7 e843360000 call osloader!BlMemoryInitialize (00411d1f)
kd> p
osloader!NtProcessStartup+0x223:
0040e6dc e84744ffff call osloader!AEInitializeStall (00402b28)
kd> p
osloader!NtProcessStartup+0x228:
0040e6e1 e800d50000 call osloader!BlInitializeHeadlessPort (0041bbe6)
kd> p
osloader!NtProcessStartup+0x22d:
0040e6e6 e8e568ffff call osloader!BlIoInitialize (00404fd0)
kd> p
osloader!NtProcessStartup+0x232:
0040e6eb 53 push ebx
kd> p
osloader!NtProcessStartup+0x233:
0040e6ec e8a9f4ffff call osloader!BlStartup (0040db9a)
kd> p
Sun Oct 17 12:12:20.812 2021 (UTC + 2:00): BD: 804BA000 \WINDOWS\system32\ntkrnlpa.exe
Sun Oct 17 12:12:21.937 2021 (UTC + 2:00): BD: 806C8000 \WINDOWS\system32\hal.dll
Sun Oct 17 12:12:23.046 2021 (UTC + 2:00): BD: 806E9000 \WINDOWS\system32\kdcom.dll
Sun Oct 17 12:12:24.062 2021 (UTC + 2:00): BD: 80010000 \WINDOWS\system32\BOOTVID.dll
Sun Oct 17 12:12:25.312 2021 (UTC + 2:00): BD: 80124000 \WINDOWS\system32\DRIVERS\ACPI.sys
Sun Oct 17 12:12:26.234 2021 (UTC + 2:00): BD: 80004000 \WINDOWS\system32\DRIVERS\WMILIB.SYS
Sun Oct 17 12:12:27.156 2021 (UTC + 2:00): BD: 80062000 \WINDOWS\system32\DRIVERS\pci.sys
Sun Oct 17 12:12:28.078 2021 (UTC + 2:00): BD: 80006000 \WINDOWS\system32\DRIVERS\isapnp.sys
Sun Oct 17 12:12:29.000 2021 (UTC + 2:00): BD: 80013000 \WINDOWS\system32\drivers\firadisk.sys
Sun Oct 17 12:12:29.921 2021 (UTC + 2:00): BD: 8001A000 \WINDOWS\system32\DRIVERS\pciide.sys
Sun Oct 17 12:12:30.843 2021 (UTC + 2:00): BD: 80154000 \WINDOWS\system32\DRIVERS\PCIIDEX.SYS
Sun Oct 17 12:12:31.765 2021 (UTC + 2:00): BD: 8015B000 \WINDOWS\System32\Drivers\MountMgr.sys
Sun Oct 17 12:12:32.687 2021 (UTC + 2:00): BD: 80166000 \WINDOWS\system32\DRIVERS\ftdisk.sys
Sun Oct 17 12:12:33.609 2021 (UTC + 2:00): BD: 8001B000 \WINDOWS\System32\drivers\dmload.sys
Sun Oct 17 12:12:34.531 2021 (UTC + 2:00): BD: 80185000 \WINDOWS\System32\drivers\dmio.sys
Sun Oct 17 12:12:35.453 2021 (UTC + 2:00): BD: 801AB000 \WINDOWS\System32\Drivers\PartMgr.sys
Sun Oct 17 12:12:36.375 2021 (UTC + 2:00): BD: 8001D000 \WINDOWS\system32\DRIVERS\ACPIEC.sys
Sun Oct 17 12:12:37.296 2021 (UTC + 2:00): BD: 80073000 \WINDOWS\system32\DRIVERS\OPRGHDLR.SYS
Sun Oct 17 12:12:38.218 2021 (UTC + 2:00): BD: 801B6000 \WINDOWS\System32\Drivers\VolSnap.sys
Sun Oct 17 12:12:39.140 2021 (UTC + 2:00): BD: 801C3000 \WINDOWS\system32\DRIVERS\atapi.sys
Sun Oct 17 12:12:40.062 2021 (UTC + 2:00): BD: 80A02000 \WINDOWS\system32\DRIVERS\iaStor.sys
Sun Oct 17 12:12:41.000 2021 (UTC + 2:00): BD: 801DB000 \WINDOWS\system32\DRIVERS\stornvme.sys
Sun Oct 17 12:12:41.921 2021 (UTC + 2:00): BD: 801E9000 \WINDOWS\system32\DRIVERS\storport.sys
Sun Oct 17 12:12:42.843 2021 (UTC + 2:00): BD: 80232000 \WINDOWS\system32\DRIVERS\ntoskrn8.sys
Sun Oct 17 12:12:43.765 2021 (UTC + 2:00): BD: 80255000 \WINDOWS\system32\DRIVERS\disk.sys
Sun Oct 17 12:12:44.687 2021 (UTC + 2:00): BD: 80265000 \WINDOWS\system32\DRIVERS\CLASSPNP.SYS
Sun Oct 17 12:12:45.625 2021 (UTC + 2:00): BD: 80272000 \WINDOWS\system32\DRIVERS\fltMgr.sys
Sun Oct 17 12:12:46.546 2021 (UTC + 2:00): BD: 80292000 \WINDOWS\system32\DRIVERS\sr.sys
Sun Oct 17 12:12:47.468 2021 (UTC + 2:00): BD: 802A4000 \WINDOWS\System32\Drivers\KSecDD.sys
Sun Oct 17 12:12:48.390 2021 (UTC + 2:00): BD: 802BB000 \WINDOWS\System32\Drivers\Ntfs.sys
Sun Oct 17 12:12:49.328 2021 (UTC + 2:00): BD: 80348000 \WINDOWS\System32\Drivers\NDIS.sys
Sun Oct 17 12:12:50.250 2021 (UTC + 2:00): BD: 80375000 \WINDOWS\system32\DRIVERS\wdf01000.sys
Sun Oct 17 12:12:51.187 2021 (UTC + 2:00): BD: 806EB000 \WINDOWS\system32\DRIVERS\WDFLDR.SYS
Sun Oct 17 12:12:52.109 2021 (UTC + 2:00): BD: 806F9000 \WINDOWS\System32\Drivers\Mup.sys
Shutdown occurred at (Sun Oct 17 12:12:53.125 2021 (UTC + 2:00))...unloading all symbol tables.
Waiting to reconnect...

   

A compare with Beyondcompare2 shows,
that they are absolut identic,
only after this it stops

working
0040e6ec e8a9f4ffff      call    osloader!BlStartup (0040db9a)
kd> p
Sun Oct 17 12:12:20.812 2021 (UTC + 2:00): BD: 804BA000 \WINDOWS\system32\ntkrnlpa.exe

not working
0040e6ec e8a9f4ffff call osloader!BlStartup (0040db9a)
kd> p
osloader!NtProcessStartup+0x238:
0040e6f1 f6052cfc420001 test byte ptr [osloader!BootFlags (0042fc2c)],1
#7917diderius6Yessssaa ), I get XP SP3 to boot from an 960 Pro on normal ntldr on ASUS P8H77-M via Option Rom from Samsung 950 Pro.
Now, legacy nvme boot of XP is possible on any compi with a Pci-e connector and may be even install
Dietmar

PS: For this I set a breakpoint at

kd> bp 0040e6ec
kd> g
Sun Oct 17 12:30:39.515 2021 (UTC + 2:00): Breakpoint 0 hit
osloader!NtProcessStartup+0x233:
0040e6ec e8a9f4ffff call osloader!BlStartup (0040db9a)

and compare working boot of XP SP3 with not working boot.
#7918diderius6So the "not boot" behavior on older Bios of legacy XP on Option Rom from Samsung 950 Pro
seems to be a time problem. XP shuts off too quick.

Post is too big here for spoiler even I split in 2 parts

Dietmar

EDIT: Boot is unstable.

Very strange: Successfull boot and not successfull boot ends with exact the same output of Windbg

0041c77e 0fb7057c2f4200  movzx   eax,word ptr [osloader!__mb_cur_max (00422f7c)]
kd> t
osloader!atol+0x95:
0041c785 83f801 cmp eax,1
kd> t
osloader!atol+0x98:
0041c788 7e13 jle osloader!atol+0xad (0041c79d)
kd> t
osloader!atol+0xad:
0041c79d 8b55f4 mov edx,dword ptr [ebp-0Ch]
kd> t
osloader!atol+0xb0:
0041c7a0 a1742f4200 mov eax,dword ptr [osloader!_pctype (00422f74)]
kd> t
osloader!atol+0xb5:
0041c7a5 0fb70c50 movzx ecx,word ptr [eax+edx*2]
kd> t
osloader!atol+0xb9:
0041c7a9 83e104 and ecx,4
kd> t
osloader!atol+0xbc:
0041c7ac 894dec mov dword ptr [ebp-14h],ecx
kd> t
osloader!atol+0xbf:
0041c7af 837dec00 cmp dword ptr [ebp-14h],0
kd> t
osloader!atol+0xc3:
0041c7b3 7424 je osloader!atol+0xe9 (0041c7d9)
kd> t
osloader!atol+0xe9:
0041c7d9 837dfc2d cmp dword ptr [ebp-4],2Dh
kd> t
osloader!atol+0xed:
0041c7dd 7509 jne osloader!atol+0xf8 (0041c7e8)
kd> t
osloader!atol+0xf8:
0041c7e8 8b45f8 mov eax,dword ptr [ebp-8]
kd> t
osloader!atol+0xfb:
0041c7eb 8be5 mov esp,ebp
kd> t
osloader!atol+0xfd:
0041c7ed 5d pop ebp
kd> t
osloader!atol+0xfe:
0041c7ee c3 ret
kd> t
osloader!BlGetPathMnemonicKey+0x84:
00404fc3 59 pop ecx
kd> t
osloader!BlGetPathMnemonicKey+0x85:
00404fc4 8b4d10 mov ecx,dword ptr [ebp+10h]
kd> t
osloader!BlGetPathMnemonicKey+0x88:
00404fc7 8901 mov dword ptr [ecx],eax
kd> t
osloader!BlGetPathMnemonicKey+0x8a:
00404fc9 32c0 xor al,al
kd> t
osloader!BlGetPathMnemonicKey+0x8c:
00404fcb 5e pop esi
kd> t
osloader!BlGetPathMnemonicKey+0x8d:
00404fcc c9 leave
kd> t
osloader!BlGetPathMnemonicKey+0x8e:
00404fcd c20c00 ret 0Ch
kd> t
osloader!BiosPartitionOpen+0x152:
004045eb 84c0 test al,al
kd> t
osloader!BiosPartitionOpen+0x154:
004045ed 0f85dffeffff jne osloader!BiosPartitionOpen+0x39 (004044d2)
kd> t
osloader!BiosPartitionOpen+0x15a:
004045f3 8d4508 lea eax,[ebp+8]
kd> t
osloader!BiosPartitionOpen+0x15d:
004045f6 50 push eax
kd> t
osloader!BiosPartitionOpen+0x15e:
004045f7 8b45f8 mov eax,dword ptr [ebp-8]
kd> t
osloader!BiosPartitionOpen+0x161:
004045fa 53 push ebx
kd> t
osloader!BiosPartitionOpen+0x162:
004045fb 83e880 sub eax,0FFFFFF80h
kd> t
osloader!BiosPartitionOpen+0x165:
004045fe 50 push eax
kd> t
osloader!BiosPartitionOpen+0x166:
004045ff 895d08 mov dword ptr [ebp+8],ebx
kd> t
osloader!BiosPartitionOpen+0x169:
00404602 e853f4ffff call osloader!BiosDiskOpen (00403a5a)
kd> t
osloader!BiosDiskOpen:
00403a5a 55 push ebp
kd> t
osloader!BiosDiskOpen+0x1:
00403a5b 8bec mov ebp,esp
kd> t
osloader!BiosDiskOpen+0x3:
00403a5d 83ec0c sub esp,0Ch
kd> t
osloader!BiosDiskOpen+0x6:
00403a60 817d0881000080 cmp dword ptr [ebp+8],80000081h
kd> t
osloader!BiosDiskOpen+0xd:
00403a67 53 push ebx
kd> t
osloader!BiosDiskOpen+0xe:
00403a68 0f9745fe seta byte ptr [ebp-2]
kd> t
osloader!BiosDiskOpen+0x12:
00403a6c 816508ffffff7f and dword ptr [ebp+8],7FFFFFFFh
kd> t
osloader!BiosDiskOpen+0x19:
00403a73 817d0880000000 cmp dword ptr [ebp+8],80h
kd> t
osloader!BiosDiskOpen+0x20:
00403a7a 56 push esi
kd> t
osloader!BiosDiskOpen+0x21:
00403a7b 8b3528274200 mov esi,dword ptr [osloader!FwDiskCache (00422728)]
kd> t
osloader!BiosDiskOpen+0x27:
00403a81 57 push edi
kd> t
osloader!BiosDiskOpen+0x28:
00403a82 c645ff00 mov byte ptr [ebp-1],0
kd> t
osloader!BiosDiskOpen+0x2c:
00403a86 7341 jae osloader!BiosDiskOpen+0x6f (00403ac9)
kd> t
osloader!BiosDiskOpen+0x6f:
00403ac9 33ff xor edi,edi
kd> t
osloader!BiosDiskOpen+0x71:
00403acb 807dfe00 cmp byte ptr [ebp-2],0
kd> t
osloader!BiosDiskOpen+0x75:
00403acf 740b je osloader!BiosDiskOpen+0x82 (00403adc)
kd> t
osloader!BiosDiskOpen+0x82:
00403adc 897df8 mov dword ptr [ebp-8],edi
kd> t
osloader!BiosDiskOpen+0x85:
00403adf a14cfc4200 mov eax,dword ptr [osloader!ExternalServicesTable (0042fc4c)]
kd> t
osloader!BiosDiskOpen+0x8a:
00403ae4 57 push edi
kd> t
osloader!BiosDiskOpen+0x8b:
00403ae5 57 push edi
kd> t
osloader!BiosDiskOpen+0x8c:
00403ae6 57 push edi
kd> t
osloader!BiosDiskOpen+0x8d:
00403ae7 57 push edi
kd> t
osloader!BiosDiskOpen+0x8e:
00403ae8 57 push edi
kd> t
osloader!BiosDiskOpen+0x8f:
00403ae9 ff7508 push dword ptr [ebp+8]
kd> t
osloader!BiosDiskOpen+0x92:
00403aec 897df4 mov dword ptr [ebp-0Ch],edi
kd> t
osloader!BiosDiskOpen+0x95:
00403aef 6a08 push 8
kd> t
osloader!BiosDiskOpen+0x97:
00403af1 ff5004 call dword ptr [eax+4]
kd> t
00020b4d 6858000000 push 58h
kd> t
00020b52 68580b0000 push 0B58h
kd> t
00020b57 cb retf
kd> t
0058:0b58 6655 push ebp
16.kd> t
0058:0b5a 6653 push ebx
16.kd> t
0058:0b5c 6656 push esi
16.kd> t
0058:0b5e 6657 push edi
16.kd> t
0058:0b60 6689e3 mov ebx,esp
16.kd> t
0058:0b63 b86000 mov ax,60h
16.kd> t
0058:0b66 8ed8 mov ds,ax
16.kd> t
#7919diderius6I found the place, from where nvme XP crashes, see

⇗ https://blog.titanwolf.in/a?ID=00200-bb5...c7-79b0a47d49ce

osloader!BlStartup+0x27d:
0040de17 e864d50000      call    osloader!BlSelectKernel (0041b380)

So it looks, as if XP cant find the correct Arcpath for the nvme disk.

Direct after this appears message on screen:
Invalid BOOT.INI file
Booting from c:\windows\

and then in Windbg
osloader!BlStartup+0x29b:
0040de35 e82ffbffff      call    osloader!BlDetectHardware (0040d969)

and after this on screen
Error opening NTDETECT.COM, status = 0002

Dietmar

Microsoft (R) Windows Debugger Version 6.12.0002.633 X86
Copyright (c) Microsoft Corporation. All rights reserved.

Opened \\.\com1
Waiting to reconnect...
BD: Debugging NTLDR --By: diyhack
BD: Boot Debugger Initialized
Connected to Windows Boot Debugger 3790 x86 compatible target at (Sun Oct 17 15:11:02.406 2021 (UTC + 2:00)), ptr64 FALSE
Kernel Debugger connection established.
Symbol search path is: C:\symbols
Executable search path is: C:\Symbols
*** ERROR: Symbol file could not be found. Defaulted to export symbols for osloader.exe -
Windows Boot Debugger Kernel Version 3790 UP Checked x86 compatible
Machine Name:
Primary image base = 0x00400000 Loaded module list = 0x0042fc9c
System Uptime: not available
Break instruction exception - code 80000003 (first chance)
osloader!DbgBreakPoint:
0040b0c6 cc int 3
kd> bp 0040e6ec
kd> g
Breakpoint 0 hit
osloader!NtProcessStartup+0x233:
0040e6ec e8a9f4ffff call osloader!BlStartup (0040db9a)
kd> t
osloader!BlStartup:
0040db9a 6a68 push 68h
kd> p
osloader!BlStartup+0x2:
0040db9c 68c0134200 push offset osloader!__lookuptable+0x100 (004213c0)
kd> p
osloader!BlStartup+0x7:
0040dba1 e8f7bfffff call osloader!_SEH_prolog (00409b9d)
kd> p
osloader!BlStartup+0xc:
0040dba6 33f6 xor esi,esi
kd> p
osloader!BlStartup+0xe:
0040dba8 8975fc mov dword ptr [ebp-4],esi
kd> p
osloader!BlStartup+0x11:
0040dbab 8975d8 mov dword ptr [ebp-28h],esi
kd> p
osloader!BlStartup+0x14:
0040dbae 8d45d8 lea eax,[ebp-28h]
kd> p
osloader!BlStartup+0x17:
0040dbb1 50 push eax
kd> p
osloader!BlStartup+0x18:
0040dbb2 56 push esi
kd> p
osloader!BlStartup+0x19:
0040dbb3 ff7508 push dword ptr [ebp+8]
kd> p
osloader!BlStartup+0x1c:
0040dbb6 a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd> p
osloader!BlStartup+0x21:
0040dbbb ff505c call dword ptr [eax+5Ch]
kd> p
osloader!BlStartup+0x24:
0040dbbe 3bc6 cmp eax,esi
kd> p
osloader!BlStartup+0x26:
0040dbc0 7417 je osloader!BlStartup+0x3f (0040dbd9)
kd> p
osloader!BlStartup+0x3f:
0040dbd9 6a00 push 0
kd> p
osloader!BlStartup+0x41:
0040dbdb ff75d8 push dword ptr [ebp-28h]
kd> p
osloader!BlStartup+0x44:
0040dbde e8e8e2ffff call osloader!TextGrInitialize (0040becb)
kd> p
osloader!BlStartup+0x49:
0040dbe3 6a09 push 9
kd> p
osloader!BlStartup+0x4b:
0040dbe5 59 pop ecx
kd> p
osloader!BlStartup+0x4c:
0040dbe6 bec0024200 mov esi,offset osloader!`string' (004202c0)
kd> p
osloader!BlStartup+0x51:
0040dbeb bf20ef4200 mov edi,offset osloader!ConsoleInputName (0042ef20)
kd> p
osloader!BlStartup+0x56:
0040dbf0 f3a5 rep movs dword ptr es:[edi],dword ptr [esi]
kd> p
osloader!BlStartup+0x58:
0040dbf2 6a09 push 9
kd> p
osloader!BlStartup+0x5a:
0040dbf4 59 pop ecx
kd> p
osloader!BlStartup+0x5b:
0040dbf5 be98024200 mov esi,offset osloader!`string' (00420298)
kd> p
osloader!BlStartup+0x60:
0040dbfa bfe0ee4200 mov edi,offset osloader!ConsoleOutputName (0042eee0)
kd> p
osloader!BlStartup+0x65:
0040dbff f3a5 rep movs dword ptr es:[edi],dword ptr [esi]
kd> p
osloader!BlStartup+0x67:
0040dc01 66a5 movs word ptr es:[edi],word ptr [esi]
kd> p
osloader!BlStartup+0x69:
0040dc03 c7458820ef4200 mov dword ptr [ebp-78h],offset osloader!ConsoleInputName (0042ef20)
kd> p
osloader!BlStartup+0x70:
0040dc0a c7458ce0ee4200 mov dword ptr [ebp-74h],offset osloader!ConsoleOutputName (0042eee0)
kd> p
osloader!BlStartup+0x77:
0040dc11 8d4588 lea eax,[ebp-78h]
kd> p
osloader!BlStartup+0x7a:
0040dc14 50 push eax
kd> p
osloader!BlStartup+0x7b:
0040dc15 6a02 push 2
kd> p
osloader!BlStartup+0x7d:
0040dc17 e8eee00000 call osloader!BlInitStdio (0041bd0a)
kd> p
osloader!BlStartup+0x82:
0040dc1c ff75d8 push dword ptr [ebp-28h]
kd> p
osloader!BlStartup+0x85:
0040dc1f e8ef73ffff call osloader!ArcCacheClose (00405013)
kd> p
osloader!BlStartup+0x8a:
0040dc24 8d45d8 lea eax,[ebp-28h]
kd> p
osloader!BlStartup+0x8d:
0040dc27 50 push eax
kd> p
osloader!BlStartup+0x8e:
0040dc28 6a02 push 2
kd> p
osloader!BlStartup+0x90:
0040dc2a ff7508 push dword ptr [ebp+8]
kd> p
osloader!BlStartup+0x93:
0040dc2d a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd> p
osloader!BlStartup+0x98:
0040dc32 ff505c call dword ptr [eax+5Ch]
kd> p
osloader!BlStartup+0x9b:
0040dc35 8bd8 mov ebx,eax
kd> p
osloader!BlStartup+0x9d:
0040dc37 85db test ebx,ebx
kd> p
osloader!BlStartup+0x9f:
0040dc39 7587 jne osloader!BlStartup+0x28 (0040dbc2)
kd> p
osloader!BlStartup+0xa1:
0040dc3b c645b801 mov byte ptr [ebp-48h],1
kd> p
osloader!BlStartup+0xa5:
0040dc3f 8845e6 mov byte ptr [ebp-1Ah],al
kd> p
osloader!BlStartup+0xa8:
0040dc42 b88c024200 mov eax,offset osloader!`string' (0042028c)
kd> p
osloader!BlStartup+0xad:
0040dc47 33ff xor edi,edi
kd> p
osloader!BlStartup+0xaf:
0040dc49 897dd0 mov dword ptr [ebp-30h],edi
kd> p
osloader!BlStartup+0xb2:
0040dc4c 803dfef8420000 cmp byte ptr [osloader!BlBootingFromNet (0042f8fe)],0
kd> p
osloader!BlStartup+0xb9:
0040dc53 744e je osloader!BlStartup+0x109 (0040dca3)
kd> p
osloader!BlStartup+0x109:
0040dca3 897de0 mov dword ptr [ebp-20h],edi
kd> p
osloader!BlStartup+0x10c:
0040dca6 897ddc mov dword ptr [ebp-24h],edi
kd> p
osloader!BlStartup+0x10f:
0040dca9 397dd0 cmp dword ptr [ebp-30h],edi
kd> p
osloader!BlStartup+0x112:
0040dcac 0f8529010000 jne osloader!BlStartup+0x241 (0040dddb)
kd> p
osloader!BlStartup+0x118:
0040dcb2 8d4de0 lea ecx,[ebp-20h]
kd> p
osloader!BlStartup+0x11b:
0040dcb5 51 push ecx
kd> p
osloader!BlStartup+0x11c:
0040dcb6 57 push edi
kd> p
osloader!BlStartup+0x11d:
0040dcb7 50 push eax
kd> p
osloader!BlStartup+0x11e:
0040dcb8 ff75d8 push dword ptr [ebp-28h]
kd> p
osloader!BlStartup+0x121:
0040dcbb e89b75ffff call osloader!BlOpen (0040525b)
kd> p
osloader!BlStartup+0x126:
0040dcc0 8bd8 mov ebx,eax
kd> p
osloader!BlStartup+0x128:
0040dcc2 6820020000 push 220h
kd> p
osloader!BlStartup+0x12d:
0040dcc7 57 push edi
kd> p
osloader!BlStartup+0x12e:
0040dcc8 6800f94200 push offset osloader!MyBuffer (0042f900)
kd> p
osloader!BlStartup+0x133:
0040dccd e8dae50000 call osloader!memset (0041c2ac)
kd> p
osloader!BlStartup+0x138:
0040dcd2 83c40c add esp,0Ch
kd> p
osloader!BlStartup+0x13b:
0040dcd5 3bdf cmp ebx,edi
kd> p
osloader!BlStartup+0x13d:
0040dcd7 0f85fe000000 jne osloader!BlStartup+0x241 (0040dddb)
kd> p
osloader!BlStartup+0x241:
0040dddb e8be9b0000 call osloader!MdShutoffFloppy (0041799e)
kd> p
osloader!BlStartup+0x246:
0040dde0 8d45dc lea eax,[ebp-24h]
kd> p
osloader!BlStartup+0x249:
0040dde3 50 push eax
kd> p
osloader!BlStartup+0x24a:
0040dde4 6a04 push 4
kd> p
osloader!BlStartup+0x24c:
0040dde6 6860f34100 push offset osloader!`string' (0041f360)
kd> p
osloader!BlStartup+0x251:
0040ddeb ff35a8244200 push dword ptr [osloader!BlConsoleOutDeviceId (004224a8)]
kd> p
osloader!BlStartup+0x257:
0040ddf1 a1ec224200 mov eax,dword ptr [osloader!GlobalSystemBlock+0x20 (004222ec)]
kd> p
osloader!BlStartup+0x25c:
0040ddf6 ff506c call dword ptr [eax+6Ch]
kd> p
osloader!BlStartup+0x25f:
0040ddf9 803dfef8420000 cmp byte ptr [osloader!BlBootingFromNet (0042f8fe)],0
kd> p
osloader!BlStartup+0x266:
0040de00 7405 je osloader!BlStartup+0x26d (0040de07)
kd> p
osloader!BlStartup+0x26d:
0040de07 897dc8 mov dword ptr [ebp-38h],edi
kd> p
osloader!BlStartup+0x270:
0040de0a ff75b8 push dword ptr [ebp-48h]
kd> p
osloader!BlStartup+0x273:
0040de0d 8d45c8 lea eax,[ebp-38h]
kd> p
osloader!BlStartup+0x276:
0040de10 50 push eax
kd> p
osloader!BlStartup+0x277:
0040de11 ff75d0 push dword ptr [ebp-30h]
kd> p
osloader!BlStartup+0x27a:
0040de14 ff75d8 push dword ptr [ebp-28h]
kd> p
osloader!BlStartup+0x27d:
0040de17 e864d50000 call osloader!BlSelectKernel (0041b380)
kd> p
osloader!BlStartup+0x282:
0040de1c 8bf0 mov esi,eax
kd> p
osloader!BlStartup+0x284:
0040de1e 8975bc mov dword ptr [ebp-44h],esi
kd> p
osloader!BlStartup+0x287:
0040de21 3bf7 cmp esi,edi
kd> p
osloader!BlStartup+0x289:
0040de23 0f8423030000 je osloader!BlStartup+0x5b2 (0040e14c)
kd> p
osloader!BlStartup+0x28f:
0040de29 807de600 cmp byte ptr [ebp-1Ah],0
kd> p
osloader!BlStartup+0x293:
0040de2d 7556 jne osloader!BlStartup+0x2eb (0040de85)
kd> p
osloader!BlStartup+0x295:
0040de2f ff75c8 push dword ptr [ebp-38h]
kd> p
osloader!BlStartup+0x298:
0040de32 ff75d8 push dword ptr [ebp-28h]
kd> p
osloader!BlStartup+0x29b:
0040de35 e82ffbffff call osloader!BlDetectHardware (0040d969)
kd> p
osloader!BlStartup+0x2a0:
0040de3a 84c0 test al,al
#7920infuscomus⇗ @diderius6

I'm happy to hear you've made progress!

 

Page 529

#7921diderius6The crash seems to happen at XferPhysicalDiskSectors .
This would mean, that the Bios does not recognice correct the physical data of the nvme disk
Dietmar

kd> bp 00403997
kd> g
Breakpoint 0 hit
osloader!XferPhysicalDiskSectors+0x69:
00403997 a14cfc4200 mov eax,dword ptr [osloader!ExternalServicesTable (0042fc4c)]
kd> t
osloader!XferPhysicalDiskSectors+0x6e:
0040399c ff5004 call dword ptr [eax+4]

kd> t
00020b4d 6858000000 push 58h
kd> t
00020b52 68580b0000 push 0B58h
kd> t
00020b57 cb retf
kd> t
0058:0b58 6655 push ebp
16.kd> t
0058:0b5a 6653 push ebx
16.kd> t
0058:0b5c 6656 push esi
16.kd> t
0058:0b5e 6657 push edi
16.kd> t
0058:0b60 6689e3 mov ebx,esp
16.kd> t
0058:0b63 b86000 mov ax,60h
16.kd> t
0058:0b66 8ed8 mov ds,ax
16.kd>
#7922diderius6This is in machine.c
⇗ http://218.94.103.156:8090/download/deve.../i386/machine.c
Dietmar
ARC_STATUS
XferPhysicalDiskSectors(
IN UCHAR Int13UnitNumber,
IN ULONGLONG StartSector,
IN UCHAR SectorCount,
IN PUCHAR Buffer,
IN UCHAR SectorsPerTrack,
IN USHORT Heads,
IN USHORT Cylinders,
IN BOOLEAN AllowExtendedInt13,
IN BOOLEAN Write
)

/*++

Routine Description:

Read or write disk sectors.

Xfers sectors via int13. If the request starts on a cylinder
larger than the number of cylinders reported by conventional int13, then
extended int13 will be used if the drive supports it.

It is assumed that the caller has ensured that the transfer buffer is
under the 1MB line, that the sector run does not cross a 64K boundary,
and that the sector run does not cross a track boundary. (The latter
might not be strictly necessary, but the i/o will fail if the sector run
starts inside the magic CHS boundary and ends past it since we won't
switch to xint13 unless the start sector indicates that it is necessary.)

Arguments:

Int13UnitNumber - supplies the int13 drive number for the drive
to be read from/written to.

StartSector - supplies the absolute physical sector number. This is 0-based
relative to all sectors on the drive.

SectorCount - supplies the number of sectors to read/write.

Buffer - receives data read from the disk or supplies data to be written.

SectorsPerTrack - supplies sectors per track (1-63) from int13 function 8
for the drive.

Heads - supplies number of heads (1-255) from int13 function 8 for the drive.

Cylinders - supplies number of cylinders (1-1023) from int13 function 8
for the drive.

AllowExtendedInt13 - if TRUE and the start cylinder for the i/o is
greater than the cylinder count reported by conventional int13 for
the drive, then extended int13 will be used to do the i/o operation.

Write - supplies a flag indicating whether this is a write operation.
If FALSE, then it's a read. Otherwise it's a write.

Return Value:

ARC status code indicating outcome.

--*/
#7923diderius6This is a working XP boot from legacy nvme

Microsoft (R) Windows Debugger Version 6.12.0002.633 X86
Copyright (c) Microsoft Corporation. All rights reserved.

Opened \\.\com1
Waiting to reconnect...
BD: Debugging NTLDR --By: diyhack
BD: Boot Debugger Initialized
Connected to Windows Boot Debugger 3790 x86 compatible target at (Sun Oct 17 17:04:25.859 2021 (UTC + 2:00)), ptr64 FALSE
Kernel Debugger connection established.
Symbol search path is: C:\symbols
Executable search path is: C:\Symbols
*** ERROR: Symbol file could not be found. Defaulted to export symbols for osloader.exe -
Windows Boot Debugger Kernel Version 3790 UP Checked x86 compatible
Machine Name:
Primary image base = 0x00400000 Loaded module list = 0x0042fc9c
System Uptime: not available
Break instruction exception - code 80000003 (first chance)
osloader!DbgBreakPoint:
0040b0c6 cc int 3
kd> bp 00403997
kd> g
Breakpoint 0 hit
osloader!XferPhysicalDiskSectors+0x69:
00403997 a14cfc4200 mov eax,dword ptr [osloader!ExternalServicesTable (0042fc4c)]
kd>
Breakpoint 0 hit
osloader!XferPhysicalDiskSectors+0x69:
00403997 a14cfc4200 mov eax,dword ptr [osloader!ExternalServicesTable (0042fc4c)]
kd>
Breakpoint 0 hit
osloader!XferPhysicalDiskSectors+0x69:
00403997 a14cfc4200 mov eax,dword ptr [osloader!ExternalServicesTable (0042fc4c)]
kd>
Breakpoint 0 hit
osloader!XferPhysicalDiskSectors+0x69:
00403997 a14cfc4200 mov eax,dword ptr [osloader!ExternalServicesTable (0042fc4c)]
kd>
Breakpoint 0 hit
osloader!XferPhysicalDiskSectors+0x69:
00403997 a14cfc4200 mov eax,dword ptr [osloader!ExternalServicesTable (0042fc4c)]
kd>
Breakpoint 0 hit
osloader!XferPhysicalDiskSectors+0x69:
00403997 a14cfc4200 mov eax,dword ptr [osloader!ExternalServicesTable (0042fc4c)]
kd>
Breakpoint 0 hit
osloader!XferPhysicalDiskSectors+0x69:
00403997 a14cfc4200 mov eax,dword ptr [osloader!ExternalServicesTable (0042fc4c)]
kd>
Breakpoint 0 hit
osloader!XferPhysicalDiskSectors+0x69:
00403997 a14cfc4200 mov eax,dword ptr [osloader!ExternalServicesTable (0042fc4c)]
kd>
Breakpoint 0 hit
osloader!XferPhysicalDiskSectors+0x69:
00403997 a14cfc4200 mov eax,dword ptr [osloader!ExternalServicesTable (0042fc4c)]
kd>
Breakpoint 0 hit
osloader!XferPhysicalDiskSectors+0x69:
00403997 a14cfc4200 mov eax,dword ptr [osloader!ExternalServicesTable (0042fc4c)]
kd>
Breakpoint 0 hit
osloader!XferPhysicalDiskSectors+0x69:
00403997 a14cfc4200 mov eax,dword ptr [osloader!ExternalServicesTable (0042fc4c)]
kd>
Breakpoint 0 hit
osloader!XferPhysicalDiskSectors+0x69:
00403997 a14cfc4200 mov eax,dword ptr [osloader!ExternalServicesTable (0042fc4c)]
kd>
Breakpoint 0 hit
osloader!XferPhysicalDiskSectors+0x69:
00403997 a14cfc4200 mov eax,dword ptr [osloader!ExternalServicesTable (0042fc4c)]
kd>
Breakpoint 0 hit
osloader!XferPhysicalDiskSectors+0x69:
00403997 a14cfc4200 mov eax,dword ptr [osloader!ExternalServicesTable (0042fc4c)]
kd>
Breakpoint 0 hit
osloader!XferPhysicalDiskSectors+0x69:
00403997 a14cfc4200 mov eax,dword ptr [osloader!ExternalServicesTable (0042fc4c)]
kd>
Breakpoint 0 hit
osloader!XferPhysicalDiskSectors+0x69:
00403997 a14cfc4200 mov eax,dword ptr [osloader!ExternalServicesTable (0042fc4c)]
kd>
Breakpoint 0 hit
osloader!XferPhysicalDiskSectors+0x69:
00403997 a14cfc4200 mov eax,dword ptr [osloader!ExternalServicesTable (0042fc4c)]
kd>
Breakpoint 0 hit
osloader!XferPhysicalDiskSectors+0x69:
00403997 a14cfc4200 mov eax,dword ptr [osloader!ExternalServicesTable (0042fc4c)]
kd>
Breakpoint 0 hit
osloader!XferPhysicalDiskSectors+0x69:
00403997 a14cfc4200 mov eax,dword ptr [osloader!ExternalServicesTable (0042fc4c)]
kd>
Breakpoint 0 hit
osloader!XferPhysicalDiskSectors+0x69:
00403997 a14cfc4200 mov eax,dword ptr [osloader!ExternalServicesTable (0042fc4c)]
kd>
Breakpoint 0 hit
osloader!XferPhysicalDiskSectors+0x69:
00403997 a14cfc4200 mov eax,dword ptr [osloader!ExternalServicesTable (0042fc4c)]
kd>
Breakpoint 0 hit
osloader!XferPhysicalDiskSectors+0x69:
00403997 a14cfc4200 mov eax,dword ptr [osloader!ExternalServicesTable (0042fc4c)]
kd>
Breakpoint 0 hit
osloader!XferPhysicalDiskSectors+0x69:
00403997 a14cfc4200 mov eax,dword ptr [osloader!ExternalServicesTable (0042fc4c)]
kd>
Breakpoint 0 hit
osloader!XferPhysicalDiskSectors+0x69:
00403997 a14cfc4200 mov eax,dword ptr [osloader!ExternalServicesTable (0042fc4c)]
kd>
Breakpoint 0 hit
osloader!XferPhysicalDiskSectors+0x69:
00403997 a14cfc4200 mov eax,dword ptr [osloader!ExternalServicesTable (0042fc4c)]
kd>
Breakpoint 0 hit
osloader!XferPhysicalDiskSectors+0x69:
00403997 a14cfc4200 mov eax,dword ptr [osloader!ExternalServicesTable (0042fc4c)]
kd>
Breakpoint 0 hit
osloader!XferPhysicalDiskSectors+0x69:
00403997 a14cfc4200 mov eax,dword ptr [osloader!ExternalServicesTable (0042fc4c)]
kd>

#7924diderius6And the same as unsuccessfull boot of XP via legacy nvme
Dietmar

Microsoft (R) Windows Debugger Version 6.12.0002.633 X86
Copyright (c) Microsoft Corporation. All rights reserved.

Opened \\.\com1
Waiting to reconnect...
BD: Debugging NTLDR --By: diyhack
BD: Boot Debugger Initialized
Connected to Windows Boot Debugger 3790 x86 compatible target at (Sun Oct 17 17:24:13.296 2021 (UTC + 2:00)), ptr64 FALSE
Kernel Debugger connection established.
Symbol search path is: C:\symbols
Executable search path is: C:\Symbols
*** ERROR: Symbol file could not be found. Defaulted to export symbols for osloader.exe -
Windows Boot Debugger Kernel Version 3790 UP Checked x86 compatible
Machine Name:
Primary image base = 0x00400000 Loaded module list = 0x0042fc9c
System Uptime: not available
Break instruction exception - code 80000003 (first chance)
osloader!DbgBreakPoint:
0040b0c6 cc int 3
kd> bp 00403997
kd> g
Breakpoint 0 hit
osloader!XferPhysicalDiskSectors+0x69:
00403997 a14cfc4200 mov eax,dword ptr [osloader!ExternalServicesTable (0042fc4c)]
kd>
Breakpoint 0 hit
osloader!XferPhysicalDiskSectors+0x69:
00403997 a14cfc4200 mov eax,dword ptr [osloader!ExternalServicesTable (0042fc4c)]
kd>
Breakpoint 0 hit
osloader!XferPhysicalDiskSectors+0x69:
00403997 a14cfc4200 mov eax,dword ptr [osloader!ExternalServicesTable (0042fc4c)]
kd>
Breakpoint 0 hit
osloader!XferPhysicalDiskSectors+0x69:
00403997 a14cfc4200 mov eax,dword ptr [osloader!ExternalServicesTable (0042fc4c)]
kd>
Breakpoint 0 hit
osloader!XferPhysicalDiskSectors+0x69:
00403997 a14cfc4200 mov eax,dword ptr [osloader!ExternalServicesTable (0042fc4c)]
kd>
Breakpoint 0 hit
osloader!XferPhysicalDiskSectors+0x69:
00403997 a14cfc4200 mov eax,dword ptr [osloader!ExternalServicesTable (0042fc4c)]
kd>
Breakpoint 0 hit
osloader!XferPhysicalDiskSectors+0x69:
00403997 a14cfc4200 mov eax,dword ptr [osloader!ExternalServicesTable (0042fc4c)]
kd>
Breakpoint 0 hit
osloader!XferPhysicalDiskSectors+0x69:
00403997 a14cfc4200 mov eax,dword ptr [osloader!ExternalServicesTable (0042fc4c)]
kd>
Breakpoint 0 hit
osloader!XferPhysicalDiskSectors+0x69:
00403997 a14cfc4200 mov eax,dword ptr [osloader!ExternalServicesTable (0042fc4c)]
kd>
Breakpoint 0 hit
osloader!XferPhysicalDiskSectors+0x69:
00403997 a14cfc4200 mov eax,dword ptr [osloader!ExternalServicesTable (0042fc4c)]
kd>
Breakpoint 0 hit
osloader!XferPhysicalDiskSectors+0x69:
00403997 a14cfc4200 mov eax,dword ptr [osloader!ExternalServicesTable (0042fc4c)]
kd>
Breakpoint 0 hit
osloader!XferPhysicalDiskSectors+0x69:
00403997 a14cfc4200 mov eax,dword ptr [osloader!ExternalServicesTable (0042fc4c)]
kd>
Breakpoint 0 hit
osloader!XferPhysicalDiskSectors+0x69:
00403997 a14cfc4200 mov eax,dword ptr [osloader!ExternalServicesTable (0042fc4c)]
kd>
Breakpoint 0 hit
osloader!XferPhysicalDiskSectors+0x69:
00403997 a14cfc4200 mov eax,dword ptr [osloader!ExternalServicesTable (0042fc4c)]
kd>
Breakpoint 0 hit
osloader!XferPhysicalDiskSectors+0x69:
00403997 a14cfc4200 mov eax,dword ptr [osloader!ExternalServicesTable (0042fc4c)]
kd>
Breakpoint 0 hit
osloader!XferPhysicalDiskSectors+0x69:
00403997 a14cfc4200 mov eax,dword ptr [osloader!ExternalServicesTable (0042fc4c)]
kd>
Breakpoint 0 hit
osloader!XferPhysicalDiskSectors+0x69:
00403997 a14cfc4200 mov eax,dword ptr [osloader!ExternalServicesTable (0042fc4c)]
kd>
Breakpoint 0 hit
osloader!XferPhysicalDiskSectors+0x69:
00403997 a14cfc4200 mov eax,dword ptr [osloader!ExternalServicesTable (0042fc4c)]
kd>
Shutdown occurred at (Sun Oct 17 17:25:11.062 2021 (UTC + 2:00))...unloading all symbol tables.
Waiting to reconnect...

#7925diderius6Is it possible to boot XP SP3 with the Reactos freeldr.sys (it is "ntldr" from Reactos)
Dietmar
#7926diderius6I see on youtube

⇗ https://www.youtube.com/watch?v=0dWbTIchr5Y

and even booting win2003 from ext2 partition

⇗ https://www.youtube.com/watch?v=tovBUJ7cQUE&t=27s

Win2003 booting with freeldr.sys from 30 January 2008,
I think it is freeldr.sys from Reactos 0.3.4 .
And the possibility of freeldr.sys to boot win2000 and XP is kept.

Comment of Aleksey Bragin (from reactos people)

"My biggest achievement in the bootloading land: Winldr (this is how I called the windows loading part of the FreeLdr) from ReactOS natively boots Windows 2003."
"Allocate memory for groups list dynamically, and make it enough (4096 bytes) for a really long list of groups. This makes Windows 2003 booting up to explorer without crashing.(Aleksey Bragin)"

"WINLDR: Load drivers database (AppPatch/drvmain.sdb), so Windows could use it if needed.(Aleksey Bragin)
WINLDR: Don't store memory allocation descriptors inside the bootloader, since this memory is unmapped in kernelmode. Fixe s a pagefault after switching to paged mode. Store the configuration data in the LPB.(Aleksey Bragin)
WINLDR: Different behavior for NT4 or NT5+ boot: NT4 requires text mode to be set up, and further version of Windows OS require a different preparation.(Aleksey Bragin)
WINLDR: Properly fill ACPI BIOS configuration entry (a couple of ACPI specification structures were added). This makes Windows 2003 initialize HAL (ACPI version) properly and be able to connect to the debugger.(Aleksey Bragin)
WINLDR: Fix an incorrect type of memory behind PDE, HAL mapping and kernel segment pagetables. They should be MemoryData (and change allocation algorithm slightly). With this change Windows 2003 boots up to the BSOD showing ACPI_BIOS_ERROR.(Aleksey Bragin)
WINLDR: Fix a typo in the if branch, which resulted in marking almost all memory above the bootloader as "FirmwareTemporary", even reserved ACPI pages. This should fix the ACPI BSOD Windows 2003 and XP show up. If a memory is marked as "free", leave it so, without transferring to FirmwareTemporary.(Aleksey Bragin)"

EDIT: Problem in this is, that I even cant install Reactos 0.3.5 in IDE mode on the Asus H77 board.
Life CD of 0.35 also not works, brrr..
Just renaming freeldr.sys => ntldr on an XP installation does not work.
#7927diderius6I succeed to install Reactos 0.4.1.3 on the Asus P8H77-M  Fat32 and IDE mode.
For this I need about 10 restarts, because always the Setup stops for unknown reason.
USB2 works, USB mouse works, PS/2 keyboard works.
No sound, no network.
Moorhuhn works, without sound. Device manager shows Acpi Uniprocessor.
It is less stable than win95 ).

Now I try to boot XP via freeldr.sys and freeldr.ini, just replacing all the files from XP SP3 there
Dietmar
#7928diderius6Waaaoh,
for a second I can see the XP SP3 start screen, only with freeldr.sys and modded freeldr.ini
but then crashes
Dietmar

#7929diderius6Waaaoh:))))))))!!!!!!

I succeed to start XP SP3 to full desktop ONLY with freeldr.sys and freeldr.ini from Reactos 0.4.1.3
on Asus P8H77-M board and all other files from XP SP3. No ntldr, no ntdetect.com, no boot.ini .

All works.

Moorhuhn with sound now,
Acpi Multiprocessor, Sata, USB2,3, sound, network, USB mouse, PS/2, Graphik3D, COM1 port etc.
Standby works.

and it is stable
Dietmar

#7930lsmlcxbeautiful
how to used them?
#7931diderius6⇗ @lsmlcx

Until now it works on Fat32.
I dont know anything about the MBR and the Bootsector from Reactos. Because of this, first I install Reactos 0.4.13 on an IDE harddisk. Now, after changing the Reactos files all against them from XP, only freeldr.sys and freeldr.ini stay. Ntldr, ntdetect.com and boot.ini I dont copy from XP files. Now XP SP3 boots from Sata and now it is stable. I change with editor all word reactos against Windows in freeldr.ini, works ).
My try was, to make any compi bootable from legacy nvme and XP, but I am not sure if the reactos freeldr.sys can do this.
A lot of test are necessary. But until now I do not see any XP in world, that boots direct from this nice freeldr.sys.

Thanks a lot to Aleksey Bragin из Москвы, Россия.


Dietmar

PS: MBR and Bootsector from Reactos

⇗ https://ufile.io/iylfkpg2
#7932diderius6The Reactos Freeldr.sys boots also XP on the ASRock Fatal1ty Z370 Gaming K6 with 8700k cpu.
There it boots also from legacy nvme.
But on the Asus P8H77-M via legacy nvme boot XP shows the same red an violett points as with ntldr, ntdetect.com and boot.ini.
So it looks a little bit like miracle, that via winload.exe it boots via BCD legacy nvme XP on the Asus P8H77-M
Dietmar
#7933diderius6Has somebody a bootsector for NTFS for Reactos, which asks for freeldr.sys?
There has been an ntfs.asm for Reactos but I do not find it
Dietmar
#7934infuscomus⇗ @canonkong

besides disabling PBO and FMax do you have any other ideas to try for the misbehaving AMD 149C USB 3.0 controller?
#7935infuscomus⇗ @diderius6

Do any of the motherboards in your collection have this specific USB controller?

PCI\VEN_1022&DEV_149C

 

Page 530

#7936diderius6⇗ @infuscomus

Yes see the post down here, and it shows exact the same behavior as for you
Dietmar

¶ XP/W2k3 x86 on Modern Hardware (513)
#7937diderius6Yesssa ),
I succeed to boot XP SP3 via legacy nvme on the Asus P8H77-M board with the freeldr.sys from Reactos 0.4.13,
using the Plextor m8pe nvme M2 disk. No Bios mod(!). This is an absolut generic XP, just put in PCI-e slot and boot compi.
This is the very first time for me, that the freeldr has an advantage against the ntldr, ntdetect.com. StandBy works.
And in some sense the Plextor M8Pe is better than the Samsung 950 Pro for XP boot.
But even with cooling you can fry eggs on the Plextor M8Pe
Dietmar



And here is the same XP SP3 installation, booting the Asrock Fatal1ty Z370 Gaming K6 board
from freeldr via legacy nvme, niccccccce ) everything works absolut stable and fast

#7938infuscomus⇗ @diderius6

I have not experienced any crashing or freezing when I use the 149C controller, it simply does not function.
Maybe I did not test correctly, how did you cause it to crash?
#7939diderius6⇗ @infuscomus

Sometimes no crash at all during boot of XP and sometimes crash, compi hangs during boot, no BSOD.
For me it was a big problem to identify the USB3 controller with DEV_149C as the cause of this problem.
Later I disabled it in Device Manager and from this moment no crash at all.
When XP booted to desktop, I can enable again the DEV_149C without any crash during this session and it works normal,
strange
Dietmar
#7940infuscomus⇗ @diderius6

Very Strange,
No crashes for me, instead it simply doesn't work until I disable and re-enable the 149C controller.

I think the problem might be ACPI related? The 149C controller works fine in Windows 8.0 and we're using it's driver already so I'm thinking it's something to do with ACPI.
#7941diderius6⇗ @infuscomus

To test, if this behavior of USB3 controller with DEV_149C is acpi related, install an "Standard PC" XP SP3 without any acpi
and look
Dietmar

EDIT: You dont need to install XP new. XP can work with "Acpi Multiprocessor" and "Standard PC" at the same time,
see
⇗ https://www.scm-pc-card.de/file/manual/F..._xp_english.pdf
#7942infuscomus⇗ @diderius6

Oh OK, thanks for the tip, I'll try that.
#7943canonkong⇗ @infuscomus
Only ASUS mainboards will have this problem because of the bios, try to update the latest bios, ASUS x570 already solved this problem with its latest bios.
#7944infuscomus⇗ @diderius6

So I tried Standard PC without any ACPI.
my system froze.
no BSOD, just nothing.

textmode setup had same result.

damn!

⇗ @canonkong

I have a Gigabyte board, but I updated to the latest F4 BIOS anyway, no change in behavior.
#7945diderius6⇗ @infuscomus

This means, that the crazy behavior of the USB3 DEV_149C is not acpi related.
Have you tried F8 "Last good configuration"?
May be before Setup you can disable this USB3 DEV_149C in Bios?
If this also not helps, you need to do your Setup without any USB.
This was the only way for me
Dietmar
#7946diderius6Is it possible to integrate into UEFI Bios a legacy Option Rom with the UEFITool?
Dietmar
#7947infuscomus⇗ @diderius6

I've worked around it thus far with a separate PCI-E USB 3.0 card that works, but still it would be preferable to actually resolve the problem instead of going around it.

Zitat von ⇗ diderius6 im Beitrag ¶ #7946
Is it possible to integrate into UEFI Bios a legacy Option Rom with the UEFITool?


I'd imagine it would be possible, but then again maybe the BIOS developers have some other tool that they use.
#7948diderius6I try to integrate the extracted Option Rom from life Plextor M8Pe via Linux from post
¶ XP/W2k3 x86 on Modern Hardware (527)

by hand into the Bios of the Asus P8H77-M board.
But I fail. Nothing from nvme of the 960 Pro is recogniced.
Also not with Dev&Ven from Toshiba RD400.
May be, that there are other parts in "Bios" from this nvme device M8Pe, that are needed.
The Option Rom from the Samsung 950 Pro works very similar. There I succeed.
Both show legacy nvme device as 4 Ide devices
Dietmar
#7949diderius6I make a new try with the Plop "Option Rom" insert into Bios.
For this I use the "Option Rom" file NvmeOpRom.bin from post
⇗ [Experimental] NVMe Option ROM
First I change my Ven_&DEV_ number in the NvmeOpRom.bin against the one from the Samsung 960 Pro nvme disk
Ven_144D&DEV_A804 . This is very bad documented on Elmars Tutorial.

and with commandline

plpbtrom -vendorid 0x10EC -deviceid 0x8168 NvmeOpRom.bin nvme.rom


This is Ven_10EC&Dev_8168 for my Realtek Lan card for PXE lan boot.

I make a new "Option Rom" nvme.rom from it, now nvme with bootmanager from Elmar.
With MMtool I change the Option Rom for the Realtek boot lan card against this nvme.rom "Option Rom"
in the Bios 1306 from the Asus P8H77-M.
Then I flash this new Bios.
When I enable boot from Lan in Bios, the line for the Plop Option Rom from Elmar appears for a second
and I can choose "Plop Boot Manager" as boot device. But then I get blinking cursor

Dietmar

This is new try with the modded Option Rom Via Plop for the Samsung 960 Pro
⇗ https://ufile.io/ggsywage


And this is the original Bios 1306 from Asus P8H77-M board, full 8MB readout with nice EEpromer Revelprog IS
⇗ https://ufile.io/5cgb1xtk

EDIT: The same blinking cursor with the Option Rom from the Samsung 950 Pro.
With the Option Rom of the Plextor M8Pe I get first message, that this Option Rom is too large.
So I use only the first driver from 2 in it.
Then, I also see the message of bootmanager, but then compi restarts.
So, my resume is just, that the Option Rom methode from Elmar does not work for nvme.

EDIT2: Maybe, that I missunderstand something: That you can only integrate in Bios the Option Rom plpbtrom.bin from Elmar and no other Option Rom from outerworld ).
#7950infuscomus⇗ @diderius6

If I send you the checked build of the windows 8.0 USB 3.0 driver would you be willing to trace through it to see why it fails when run on the 149C controller?

 

Page 531

#7951diderius6⇗ @infuscomus

Send it to me.
I try. I think only small chance to see something.
The crash via 149C controller (hanging of XP and even not always) happens very early
in boot process and Windbg is quite blind in this moment
Dietmar

PS: By the way I noticed, that ⇗ @daniel_k updated his USB3 driver few days ago at my digital life forum. Make try.
#7952infuscomus⇗ @diderius6

here is the checked build of the windows 8.0 USB 3.0 driver, both original and modded with PDB symbols. I hope I did the mod correctly for the ntoskrnl extender.

Thanks, I'll have to check out daniel_k's new driver.



infuscomus has attached files to this post
#7953infuscomus⇗ @diderius6

I forgot to change ksecdd -> ksecd8

use this new version.



infuscomus has attached files to this post
#7954diderius6Waaoooh:)))))) ,
I split the Option Rom in 2 parts:
First Option Rom is original plpbtrom.bin from Elmar (Plop).
I modd this for the Realtek Lan PXE boot on the Asus P8H77-M board via

plpbtrom -vendorid 0x10EC -deviceid 0x8168 plpbtrom.bin nvmeua.rom

and integrate nvmeua.rom into Bios with MMTool (Replace Methode "Option Rom", here for 10EC 8168).

The second Option Rom is from the Samsung 950 Pro.
This I modd for the Samsung 960 Pro  etc. and integrate it also in the same Bios
with MMTool (insert Option Rom with 144D A804).

And voila: I can now boot legacy NVME XP SP3
via ntldr(?), via freeldr.sys and via winload.exe on the Asus P8H77-M board from any nvme device.
This methode should work on all (needs to be tested) motherboards.


It is stable. All works. StandBy works.

When I have time I write Tutorial. Now I am going to look at USB3 from ⇗ @infuscomus
So the Plop plpbtrom-0.6 for to build Option Rom is a very nice, good tool.
New nocumentation should be done for this Plop plpbtrom-0.6 from Elmar
Dietmar

EDIT: Plop can load freeldr.sys(!) and ntldr. Plop cant load MBR for winload.exe.
So in my eyes is winload.exe not a good choice for to run XP.

PS: The Option Rom from the Plextor M8Pe does also not work via this way with Plop and also not alone.
So I think, the Option Rom Bios of the Plextor M8Pe speaks in other(?) way to its nvme disk.

The Option Rom from Vmware see post also does not work.
⇗ [Experimental] NVMe Option ROM
Not alone and also not with Plop.
Plop bootmanager starts but does not show harddisk and also nvme cant be booted via "Lan" switch in Plop.
The legacy nvme disk is recogniced but not correct.

This is full readout Bios 1306 8MB from Asus P8H77-M board. It contains the full Samsung 950 Pro Option Rom.
It boots XP SP3 from Samsung 950 Pro, Samsung 960 Pro, Samsung 970 Pro and Toshiba RD 400
and Plextor M8Pe.
It contains also the Option Rom from Elmar for the Realtek PXE Lan boot on the P8H77-M.
⇗ https://ufile.io/gfnu4jn2

#7955diderius6⇗ @infuscomus

First I make small joke, if the Asus ROG STRIX B450-F GAMING II with AMD 3700x cpu and Bios 4007 and 32 Gb Ram can boot
from ntldr, freeldr.sys and winload.exe. It can, nice board for XP!
It has also an COM1 port for debug. So, even debug before ntoskrln.exe is loaded is possible.

As far as I know, this is the only new board on the market, that supports XP Sp3 in all.

Now I set up on this board an Ramsey XP from 15 May 2021 on ntldr via
WinXP-IE Optional Patch Integrator v3.2.0.2b.cmd without any USB, only needed drivers (Customized Option; 4,E,I).
I use a 500 Gbyte harddisk for this. This harddisk I weep out with Winhex with 00 everywhere and then use RMPrebUSB
with nldr, ntfs and forced LBA.
After this I install your debug version of USB3 drivers from Win8, set up a Debug session and soon will report
Dietmar
#7956diderius6⇗ @infuscomus
The first strange thing that I notice is, that install of XP via Firadisk does not work from all USB ports.
Installation after this via Firadisk on working USB3 port goes on without problem,
even survives most critical 3. reboot from harddisk.
But then the OEM folder was not found, even it exists on USB.
So I copy the OEM folder by hand on the harddisk and repeat 3. reboot of install, from harddisk.
OEM folder now is found and installs
Dietmar

PS: Because no driver from XP is used for this install, there may be a real problem with an USB port, may be via Bios.

EDIT: Hard job to do install without any mouse. I look for my COM port mouse from 1997 ).
Yesssaa, Serial Mouse with Wheel works )..
Interesting, Mouse without LED light is much more comfortable.

#7957infuscomus⇗ @diderius6

I hope I didn't miss anything porting that checked USB driver.
#7958diderius6⇗ @infuscomus

First I copy to Windows\system32\drivers those Win8 Debug files

ksecd8.sys
ntoskrn8.sys
UCX01000.SYS
usbd8.sys
USBHUB3.SYS
USBXHCI.SYS
Wdf01000.sys
WdfLdr.sys
WppRecorder.sys

Then I start install for the uncritical USB3 device with DEV_43D5.
Install starts but then asks for WppRecor.sys .
To rename WppRecorder.sys =>WppRecor.sys
gives Bsod.
So, there happens a mix between those two files (8 characters convention)
Dietmar
#7959infuscomus⇗ @diderius6

copy all the files in the MOD folder to /drivers
use my .inf files
mine go to wpprecorder.sys
#7960diderius6⇗ @infuscomus

in the xhci.inf is a typo:
Down there is written wpprecor.sys.
This I change there to wpprecorder.sys. Now compi installs everything for xhci.
But in the end it gives Bsod
Dietmar
#7961infuscomus⇗ @diderius6

please screenshot BSOD?

maybe security_cookie needs to be changed? I thought with extender we don't need to do that but maybe we do?

edit:
did you download the updated version win8_USB3_checked_2.7z.zip?
#7962diderius6⇗ @infuscomus

BSOD is shown for a 1/100 sec, I make video and from this screenshot
Dietmar

#7963infuscomus⇗ @diderius6

If I recall correctly, a 7F BSOD is related to the security_cookie thing.
I'll try editing the cookie tomorrow.
or you can try it yourself if you feel you can do it.
#7964diderius6⇗ @infuscomus

I have no idea, how to do this^^
Dietmar
#7965infuscomus⇗ @diderius6

with PDB symbols and a disassembler I do a search for security_cookie in the file.

like in usbhub3.sys it's at 0x0029000 with a value of 0xBB40E64E

It should be 0xBB40E64E in every .sys file

in a hex editor

4E E6 40 BB B1 19 BF 44 0C 92 03 00 14 92 03 00

I'd change it to

DE AD BE EF B1 19 BF 44 0C 92 03 00 14 92 03 00

 

Page 532

#7966diderius6⇗ @infuscomus
I make a try with the updated USB3 driver from ⇗ @daniel_k .
The uncritical USB3 device with DEV_43D5 installs at once,
but the USB3 device with DEV_ 149C hangs as usual, here during the install of USBXHCI.sys
Dietmar
#7967George King⇗ @infuscomus From my tests, without changing security cookie you encounter BSOD after reboot or during INF install

[TOOL] POWIS - Powerful Windows Setup - Support Windows Vista, 7, 8.0, 8.1, 10, 11 and their Servers equivalent
⇗ https://forums.mydigitallife.net/threads...p-v1-0-1.83558/

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#7968infuscomus⇗ @George King

I think you are correct.

⇗ @diderius6

new version with security_cookie changed.

please try it.



infuscomus has attached files to this post
#7969George King⇗ @diderius6 What do you mean with updated Daniel_k's driver? I see still same file on MDL USBXHCI_UASP_XP_x86.7z uploaded 2020-07-25 17:26:32.

And I posted my files in same topic too, you can try them too. But yes they are not from debug Win8 release

 
https://forums.mydigitallife.net/threads/drivers-and-tools-to-run-windows-xp-on-newer-hardware.81607/page-10#post-1693276
[TOOL] POWIS - Powerful Windows Setup - Support Windows Vista, 7, 8.0, 8.1, 10, 11 and their Servers equivalent
⇗ https://forums.mydigitallife.net/threads...p-v1-0-1.83558/

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#7970StraniI have a virtual machine on vmWare Workstation with Windows XP SP3 with all the latest updates. Applied the latest version WinXPPAE. Additionally replaced usbport.sys. After a reboot, the virtual machine is loaded if there is no more than three with small GB of memory. If I increase memory to 3.5 GB, there is a blue screen with an error of UNMOUNTABLE_BOOT_VOLUME (STOP 0x000000ED). If I increase memory to 6 GB, there is a blue screen with STOP 0x0000007B error. HAL - ACPI Uniprocessor HAL.
Links posted on My Digital Life forum under the theme "Drivers and tools to run Windows XP on newer hardware".
#7971diderius6⇗ @infuscomus

Now your driver works:)).
You just forget to change the typo in xhci.inf down for wpprecor.sys ;).

Here are first results: The uncritical USB3 with DEV_43D5 I can install at once
on the Asus ROG STRIX B450-F GAMING II board.
When I install the critical USB3 with DEV_ 149C it hangs at the end of xhci install, shown install of wpprecorder.sys.
I have to reboot compi. I try to install the critical USB3 (now yellow questionmark) again.
This time it works. At this moment ALL USB connectors on the Asus board works normal, I test them.
Ok, after next reboot compi hangs early in boot process.
By the way I notice, that the Serial Mouse does not work(!) in Safe Mode.
Even in Save Mode the critical USB3 does not work and I cant install this USB in Safe Mode(?!).
Then I disable all USB and restart.
In first reboot I can only install the uncritical USB.
And again after reboot I can install the critical USB3 and all USB works.
So, this behavior is reproducible, because on next reboot compi hangs early in boot process,
even in Safe Mode.

Now I set up a new Ramsey XP with same settings, now with Serial Mouse from beginning.
I do this, because only then I can keep all situations in registry what happens between the Install of the critical USB.
After this I set up a Windbg session (with Debug ntoskrnl and hal) and hope that compi hangs after ntoskrnl is loaded
Dietmar

PS: The USB slot, from where I cant install XP via Firadisk belongs to the critical USB device with DEV_ 149C.
So this problem may be Bios related.

EDIT: In Safe Mode the critical USB does not always hang, about 50/50. When it does not hang here,
all USB work.
In normal Mode, XP hangs always, very early in boot process with this "working" critical USB.
#7972infuscomus⇗ @diderius6

does it hang before debugging is possible?
#7973infuscomus⇗ @Strani

Very strange, never seen behavior like that before. maybe you corrupted your VM somehow?
#7974Strani
Zitat von ⇗ infuscomus im Beitrag ¶ #7973
@Strani

Very strange, never seen behavior like that before. maybe you corrupted your VM somehow?

No, it's ruled out. I use the snapshots so that at any moment it is possible to restore the earlier state of the system. Without the patch, the virtual machine even works with 8 GB (seeing only 3 GB of them).
#7975infuscomus⇗ @Strani

Strange.
I use VMWare Player 16 and I can use WinXPPAE in an XP VM without any problems.

So I'm not sure why it's not working for you.
#7976Strani
Zitat von ⇗ infuscomus im Beitrag ¶ #7975
@Strani

Strange.
I use VMWare Player 16 and I can use WinXPPAE in an XP VM without any problems.


I have a hard drive connected to the VMware PVSCSI Controller.
Do you have a hard drive connected to where?
#7977infuscomus⇗ @Strani

I use a virtual SATA vmdk with AHCI driver for srv2003
⇗ https://sourceforge.net/projects/storahci-for-windows-2003/
#7978Strani
Zitat von ⇗ infuscomus im Beitrag ¶ #7977
@Strani

I use a virtual SATA vmdk with AHCI driver for srv2003


I figured out what the problem was. After applying WinXPPAE and increasing memory to 3.5 GB or higher, the VMware PVSCSI Controller driver stops working correctly.
If I change to "VMware VMSCSI Controller" or "LSI Adapter, Ultra320 SCSI 2000 Series, w/1020/1030," the virtual machine will work normally.
#7979infuscomus⇗ @Strani

I'm happy to hear it's now working for you!
#7980diderius6⇗ @infuscomus

XP hangs after ntoskrnl is loaded.
This are good news.
Windbg is running in this moment.
The problem is to find the exact point, where the hang happens,
because no BSOD and so Windbg suddently stops working without any output (cant type anything at console, no break possible)
Dietmar

 

Page 533

#7981diderius6⇗ @infuscomus

Crazy, now XP boots to full desktop with Debugger connected
Dietmar

DevNode 0x8acac6f8 for PDO 0x8acace50
           InstancePath is "PCI\VEN_1022&DEV_149C&SUBSYS_87C01043&REV_00\4&f6230fb&0&0341"
           ServiceName is "USBXHCI"
           State = DeviceNodeStarted (0x308)
           Previous State = DeviceNodeEnumerateCompletion (0x30d)
           DevNode 0x8a9f7d40 for PDO 0x8aa8de00
             InstancePath is "USB\ROOT_HUB30\5&399a3586&1&0"
             ServiceName is "USBHUB3"
             State = DeviceNodeStarted (0x308)
             Previous State = DeviceNodeEnumerateCompletion (0x30d)

EDIT: Ok, now XP hangs again and Debugger does not react to anything:))..
And again XP starts normal, after I set a breakpoint very short before hanging happens, brrr;))..

Now XP hangs again.
This I caught milliseconds before hang happens:

DevNode 0x8ac3fed8 for PDO 0x8abff6a0
           InstancePath is "PCI\VEN_1022&DEV_149C&SUBSYS_87C01043&REV_00\4&f6230fb&0&0341"
           ServiceName is "USBXHCI"
           State = DeviceNodeDriversAdded (0x303)
           Previous State = DeviceNodeInitialized (0x302)

Dont know, if this means anything

Microsoft (R) Windows Debugger Version 6.12.0002.633 X86
Copyright (c) Microsoft Corporation. All rights reserved.

Opened \\.\com1
Waiting to reconnect...
Connected to Windows XP 2600 x86 compatible target at (Fri Oct 22 17:09:13.828 2021 (UTC + 2:00)), ptr64 FALSE
Kernel Debugger connection established.
Symbol search path is: C:\symbols
Executable search path is: C:\Symbols
Windows XP Kernel Version 2600 MP (1 procs) Checked x86 compatible
Built by: 2600.xpsp.080413-2133
Machine Name:
Kernel base = 0x80a02000 PsLoadedModuleList = 0x80b019e8
System Uptime: not available
MM: Loader/HAL memory block indicates large pages cannot be used for 80100000->8012777F
MM: Loader/HAL memory block indicates large pages cannot be used for 818A6000->82D8AFFF
MM: Disabling large pages for all ranges due to overlap
EX: Pageable code called at IRQL 2

*** Assertion failed: FALSE
*** Source File: d:\xpsp\base\ntos\ex\rundown.c, line 163

Break repeatedly, break Once, Ignore, terminate Process, or terminate Thread (boipt)? i
i
EX: Pageable code called at IRQL 2

*** Assertion failed: FALSE
*** Source File: d:\xpsp\base\ntos\ex\rundown.c, line 274

Break repeatedly, break Once, Ignore, terminate Process, or terminate Thread (boipt)? i
i
EX: Pageable code called at IRQL 2

*** Assertion failed: FALSE
*** Source File: d:\xpsp\base\ntos\ex\rundown.c, line 163

Break repeatedly, break Once, Ignore, terminate Process, or terminate Thread (boipt)? i
i
EX: Pageable code called at IRQL 2

*** Assertion failed: FALSE
*** Source File: d:\xpsp\base\ntos\ex\rundown.c, line 274

Break repeatedly, break Once, Ignore, terminate Process, or terminate Thread (boipt)? i
i
EX: Pageable code called at IRQL 2

*** Assertion failed: FALSE
*** Source File: d:\xpsp\base\ntos\ex\rundown.c, line 163

Break repeatedly, break Once, Ignore, terminate Process, or terminate Thread (boipt)? i
i
EX: Pageable code called at IRQL 2

*** Assertion failed: FALSE
*** Source File: d:\xpsp\base\ntos\ex\rundown.c, line 274

Break repeatedly, break Once, Ignore, terminate Process, or terminate Thread (boipt)? i
i
EX: Pageable code called at IRQL 2

*** Assertion failed: FALSE
*** Source File: d:\xpsp\base\ntos\ex\rundown.c, line 163

Break repeatedly, break Once, Ignore, terminate Process, or terminate Thread (boipt)? i
i
EX: Pageable code called at IRQL 2

*** Assertion failed: FALSE
*** Source File: d:\xpsp\base\ntos\ex\rundown.c, line 274

Break repeatedly, break Once, Ignore, terminate Process, or terminate Thread (boipt)? i
i
EX: Pageable code called at IRQL 2

*** Assertion failed: FALSE
*** Source File: d:\xpsp\base\ntos\ex\rundown.c, line 163

Break repeatedly, break Once, Ignore, terminate Process, or terminate Thread (boipt)? i
i
EX: Pageable code called at IRQL 2

*** Assertion failed: FALSE
*** Source File: d:\xpsp\base\ntos\ex\rundown.c, line 274

Break repeatedly, break Once, Ignore, terminate Process, or terminate Thread (boipt)? i
i
EX: Pageable code called at IRQL 2

*** Assertion failed: FALSE
*** Source File: d:\xpsp\base\ntos\ex\rundown.c, line 163

Break repeatedly, break Once, Ignore, terminate Process, or terminate Thread (boipt)? i
i
EX: Pageable code called at IRQL 2

*** Assertion failed: FALSE
*** Source File: d:\xpsp\base\ntos\ex\rundown.c, line 274

Break repeatedly, break Once, Ignore, terminate Process, or terminate Thread (boipt)? i
i
Break instruction exception - code 80000003 (first chance)
*******************************************************************************
* *
* You are seeing this message because you pressed either *
* CTRL+C (if you run kd.exe) or, *
* CTRL+BREAK (if you run WinDBG), *
* on your debugger machine's keyboard. *
* *
* THIS IS NOT A BUG OR A SYSTEM CRASH *
* *
* If you did not intend to break into the debugger, press the "g" key, then *
* press the "Enter" key now. This message might immediately reappear. If it *
* does, press "g" and "Enter" again. *
* *
*******************************************************************************
nt!RtlpBreakWithStatusInstruction:
80ac37ec cc int 3


*** Assertion failed: IoWorkItem->Size == sizeof( IO_WORKITEM )
*** Source File: d:\xpsp\base\ntos\io\iomgr\misc.c, line 965

Break repeatedly, break Once, Ignore, terminate Process, or terminate Thread (boipt)? i
i

*** Assertion failed: IoWorkItem->Size == sizeof( IO_WORKITEM )
*** Source File: d:\xpsp\base\ntos\io\iomgr\misc.c, line 965



And this is msec later, but this leads to successful boot of XP:

DevNode 0x8abca8e0 for PDO 0x8abca038
InstancePath is "PCI\VEN_1022&DEV_149C&SUBSYS_87C01043&REV_00\4&f6230fb&0&0341"
ServiceName is "USBXHCI"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8ab4a9d0 for PDO 0x8aa7d540
InstancePath is "USB\ROOT_HUB30\5&399a3586&1&0"
ServiceName is "USBHUB3"
State = DeviceNodeResourcesAssigned (0x304)
Previous State = DeviceNodeDriversAdded (0x303)
#7982infuscomus⇗ @diderius6

maybe a trace through usbxhci.sys while it is being loaded will shed some light on why it hangs?
#7983diderius6⇗ @infuscomus
I dont know, if this is possible with Kernel Debug.

I think I find the place, at which the hang happens
Dietmar

80ae3e09 fb              sti
15: kd> p
nt!KiIdleLoop+0x3a:
80ae3e0a 90 nop
15: kd> p
nt!KiIdleLoop+0x3b:
80ae3e0b 90 nop
15: kd> g
Break instruction exception - code 80000003 (first chance)
nt!Kei386EoiHelper+0x45:
80adf811 5a pop edx
13: kd> g
Break instruction exception - code 80000003 (first chance)
nt!Kei386EoiHelper+0x45:
80adf811 5a pop edx
12: kd> g
Break instruction exception - code 80000003 (first chance)
processr!AcpiC1Idle+0x19:
ba209d45 59 pop ecx

11: kd> g
Break instruction exception - code 80000003 (first chance)
nt!Kei386EoiHelper+0x45:
80adf811 5a pop edx
10: kd> g
Break instruction exception - code 80000003 (first chance)
nt!Kei386EoiHelper+0x45:
80adf811 5a pop edx

And soon Windbg crashs.
#7984infuscomus⇗ @diderius6

in processr.sys? odd
I would have thought either usbxhci.sys or usbhub3.sys would be the cause of the system hanging.
#7985diderius6⇗ @infuscomus

Yepp, at a successfull boot of XP,
XP does not stop at bp ba209d45,
this means, that this Address  ba209d45  is never reached when all is ok,
but is reached, when the critical USB hangs
Dietmar
#7986diderius6⇗ @infuscomus

This is whole protocol from hanging XP

Microsoft (R) Windows Debugger Version 6.12.0002.633 X86
Copyright (c) Microsoft Corporation. All rights reserved.

Opened \\.\com1
Waiting to reconnect...
Connected to Windows XP 2600 x86 compatible target at (Fri Oct 22 18:27:38.531 2021 (UTC + 2:00)), ptr64 FALSE
Kernel Debugger connection established.
Symbol search path is: C:\symbols
Executable search path is: C:\Symbols
Windows XP Kernel Version 2600 MP (1 procs) Checked x86 compatible
Built by: 2600.xpsp.080413-2133
Machine Name:
Kernel base = 0x80a02000 PsLoadedModuleList = 0x80b019e8
System Uptime: not available
MM: Loader/HAL memory block indicates large pages cannot be used for 80100000->8012777F
MM: Loader/HAL memory block indicates large pages cannot be used for 818A6000->82D8AFFF
MM: Disabling large pages for all ranges due to overlap
Break instruction exception - code 80000003 (first chance)
*******************************************************************************
* *
* You are seeing this message because you pressed either *
* CTRL+C (if you run kd.exe) or, *
* CTRL+BREAK (if you run WinDBG), *
* on your debugger machine's keyboard. *
* *
* THIS IS NOT A BUG OR A SYSTEM CRASH *
* *
* If you did not intend to break into the debugger, press the "g" key, then *
* press the "Enter" key now. This message might immediately reappear. If it *
* does, press "g" and "Enter" again. *
* *
*******************************************************************************
nt!RtlpBreakWithStatusInstruction:
80ac37ec cc int 3
kd> bp ba209d45
kd> g
EX: Pageable code called at IRQL 2

*** Assertion failed: FALSE
*** Source File: d:\xpsp\base\ntos\ex\rundown.c, line 163

Break repeatedly, break Once, Ignore, terminate Process, or terminate Thread (boipt)? i
i
EX: Pageable code called at IRQL 2

*** Assertion failed: FALSE
*** Source File: d:\xpsp\base\ntos\ex\rundown.c, line 274

Break repeatedly, break Once, Ignore, terminate Process, or terminate Thread (boipt)? i
i
EX: Pageable code called at IRQL 2

*** Assertion failed: FALSE
*** Source File: d:\xpsp\base\ntos\ex\rundown.c, line 163

Break repeatedly, break Once, Ignore, terminate Process, or terminate Thread (boipt)? i
i
EX: Pageable code called at IRQL 2

*** Assertion failed: FALSE
*** Source File: d:\xpsp\base\ntos\ex\rundown.c, line 274

Break repeatedly, break Once, Ignore, terminate Process, or terminate Thread (boipt)? i
i
EX: Pageable code called at IRQL 2

*** Assertion failed: FALSE
*** Source File: d:\xpsp\base\ntos\ex\rundown.c, line 163

Break repeatedly, break Once, Ignore, terminate Process, or terminate Thread (boipt)? i
i
EX: Pageable code called at IRQL 2

*** Assertion failed: FALSE
*** Source File: d:\xpsp\base\ntos\ex\rundown.c, line 274

Break repeatedly, break Once, Ignore, terminate Process, or terminate Thread (boipt)? i
i
EX: Pageable code called at IRQL 2

*** Assertion failed: FALSE
*** Source File: d:\xpsp\base\ntos\ex\rundown.c, line 163

Break repeatedly, break Once, Ignore, terminate Process, or terminate Thread (boipt)? i
i
EX: Pageable code called at IRQL 2

*** Assertion failed: FALSE
*** Source File: d:\xpsp\base\ntos\ex\rundown.c, line 274

Break repeatedly, break Once, Ignore, terminate Process, or terminate Thread (boipt)? i
i
EX: Pageable code called at IRQL 2

*** Assertion failed: FALSE
*** Source File: d:\xpsp\base\ntos\ex\rundown.c, line 163

Break repeatedly, break Once, Ignore, terminate Process, or terminate Thread (boipt)? i
i
EX: Pageable code called at IRQL 2

*** Assertion failed: FALSE
*** Source File: d:\xpsp\base\ntos\ex\rundown.c, line 274

Break repeatedly, break Once, Ignore, terminate Process, or terminate Thread (boipt)? i
i
EX: Pageable code called at IRQL 2

*** Assertion failed: FALSE
*** Source File: d:\xpsp\base\ntos\ex\rundown.c, line 163

Break repeatedly, break Once, Ignore, terminate Process, or terminate Thread (boipt)? i
i
EX: Pageable code called at IRQL 2

*** Assertion failed: FALSE
*** Source File: d:\xpsp\base\ntos\ex\rundown.c, line 274

Break repeatedly, break Once, Ignore, terminate Process, or terminate Thread (boipt)? i
i
KD: write to 0xba209d45 ok
#7987infuscomus⇗ @diderius6

would you say that it unlikely that we will discover the cause of why this 149C controller does not behave correctly?

For whatever reason the 149C controller is not ready at boot.

My 149C controller has a slightly different problem to yours, no crash, but any USB device connected has ID USB\VID_0000&PID_0000

edit: until disable and re-enable in device manager, then it works fine.
#7988diderius6⇗ @infuscomus

I am quite sure, that this is the place, where the hanging happens,
because a successful boot to full desktop of XP gives this KD: write to 0xba209d45 ok
and direct after this the last 3 USB files are loaded
Dietmar
0: kd> g
*** ERROR: Symbol file could not be found. Defaulted to export symbols for WppRecorder.sys -
*** ERROR: Symbol file could not be found. Defaulted to export symbols for WDFLDR.SYS -
*** ERROR: Module load completed but symbols could not be loaded for USBXHCI.SYS
*** ERROR: Module load completed but symbols could not be loaded for wdf01000.sys
*** ERROR: Module load completed but symbols could not be loaded for ucx01000.sys
*** ERROR: Module load completed but symbols could not be loaded for audstub.sys
*** ERROR: Symbol file could not be found. Defaulted to export symbols for ndistapi.sys -
*** ERROR: Module load completed but symbols could not be loaded for ndiswan.sys
*** ERROR: Module load completed but symbols could not be loaded for raspppoe.sys
*** ERROR: Symbol file could not be found. Defaulted to export symbols for psched.sys -
*** ERROR: Symbol file could not be found. Defaulted to export symbols for ptilink.sys -
*** ERROR: Module load completed but symbols could not be loaded for raspti.sys
*** ERROR: Module load completed but symbols could not be loaded for rdpdr.sys
*** ERROR: Symbol file could not be found. Defaulted to export symbols for termdd.sys -
KD: write to 0xba209d45 ok
*** ERROR: Symbol file could not be found. Defaulted to export symbols for ksecd8.sys -
*** ERROR: Symbol file could not be found. Defaulted to export symbols for USBD8.SYS -
*** ERROR: Symbol file could not be found. Defaulted to export symbols for UsbHub3.sys -

*** Assertion failed: IoWorkItem->Size == sizeof( IO_WORKITEM )
*** Source File: d:\xpsp\base\ntos\io\iomgr\misc.c, line 965


Break repeatedly, break Once, Ignore, terminate Process, or terminate Thread (boipt)? i
i

*** Assertion failed: IoWorkItem->Size == sizeof( IO_WORKITEM )
*** Source File: d:\xpsp\base\ntos\io\iomgr\misc.c, line 965

Break repeatedly, break Once, Ignore, terminate Process, or terminate Thread (boipt)? i
i
*** ERROR: Module load completed but symbols could not be loaded for Fdc.SYS
*** ERROR: Module load completed but symbols could not be loaded for cdrom.sys
*** ERROR: Module load completed but symbols could not be loaded for Cdaudio.SYS
*** ERROR: Module load completed but symbols could not be loaded for Fs_Rec.SYS
*** ERROR: Module load completed but symbols could not be loaded for Null.SYS
*** ERROR: Module load completed but symbols could not be loaded for Beep.SYS

*** Assertion failed: IoWorkItem->Size == sizeof( IO_WORKITEM )
*** Source File: d:\xpsp\base\ntos\io\iomgr\misc.c, line 965

Break repeatedly, break Once, Ignore, terminate Process, or terminate Thread (boipt)? i
i
*** ERROR: Symbol file could not be found. Defaulted to export symbols for VIDEOPRT.SYS -
*** ERROR: Module load completed but symbols could not be loaded for RDPCDD.sys
*** ERROR: Module load completed but symbols could not be loaded for mouhid.sys
*** ERROR: Module load completed but symbols could not be loaded for rasacd.sys
*** ERROR: Symbol file could not be found. Defaulted to export symbols for rdbss.sys -
*** ERROR: Module load completed but symbols could not be loaded for DumpDrv.SYS
*** ERROR: Module load completed but symbols could not be loaded for autochk.exe
*** ERROR: Module load completed but symbols could not be loaded for sfcfiles.dll
*** ERROR: Module load comp
#7989infuscomus⇗ @diderius6

regarding this

Zitat von ⇗ diderius6 im Beitrag ¶ #7988

*** ERROR: Symbol file could not be found. Defaulted to export symbols for WppRecorder.sys -
*** ERROR: Symbol file could not be found. Defaulted to export symbols for WDFLDR.SYS -
*** ERROR: Module load completed but symbols could not be loaded for USBXHCI.SYS
*** ERROR: Module load completed but symbols could not be loaded for wdf01000.sys
*** ERROR: Module load completed but symbols could not be loaded for ucx01000.sys

etc...

did the PDB symbols I included for the USB3 drivers in the zip file not work for you?
#7990diderius6⇗ @infuscomus

No, that simply means, that just now my compi for daily use crash, first time in more than 3 years.
It is a x58 board from 2009
Dietmar

PS: Just now I write from other compi, but until next hours (?) no Windbg..

EDIT: These lines are also interesting, may be, that the hanging happens here

*** Assertion failed: IoWorkItem->Size == sizeof( IO_WORKITEM )
***   Source File: d:\xpsp\base\ntos\io\iomgr\misc.c, line 965
#7991infuscomus⇗ @diderius6

Fortunately we have access to source code so we can make changes to that line of code if we need to.
#7992diderius6⇗ @infuscomus

processr!AcpiC1Idle+0x19:

can this been acpi related to the sleeping state C1

Dietmar
#7993infuscomus⇗ @diderius6

I suppose it's possible, I can't say for certain.
#7994Strani
Zitat von ⇗ diderius6 im Beitrag ¶ #7192
@daniel_k

I changed

usbport.sys
usbstor.sys
usbd.sys

against their version from win2003


After applying patch WinXpPAE on Windows XP SP3 I need to replace the built-in driver USB2, correct? How to do this correctly:
1. Take usbport.sys from Windows Server 2003 KB2862330?
2. Take usbport.sys and usbd.sys files from Windows Server 2003 KB2862330?
3. Take usbport.sys from your message?
4. Take usbport.sys and usbd.sys files from your message?

Sorry for my bad english!
#7995diderius6⇗ @infuscomus

On 21 August this year 2021 I make a copy of my Windows\System32\config  folder from an external XP.
Just this safes now my life.
I think, the problem is the harddisk, WD 2 TB from 2017.
Even there are 20 Gb free on it, when I try to run chkdisk, only phase 1 completes
and from phase 2 I do not see one little green mark, I think because millions of small files on it
Dietmar

PS: But fun with Windbg can go on now.

 

Page 534

#7996diderius6⇗ @infuscomus

XP hangs because of critical USB

Dietmar

Connected to Windows XP 2600 x86 compatible target at (Fri Oct 22 23:18:49.583 2021 (UTC + 2:00)), ptr64 FALSE
Kernel Debugger connection established.
Symbol search path is: C:\symbols
Executable search path is: C:\Symbols
Windows XP Kernel Version 2600 (Service Pack 3) MP (16 procs) Checked x86 compatible
Product: WinNt, suite: TerminalServer SingleUserTS
Built by: 2600.xpsp.080413-2133
Machine Name:
Kernel base = 0x80a02000 PsLoadedModuleList = 0x80b019e8
Debug session time: Sat Oct 23 06:20:19.937 2021 (UTC + 2:00)
System Uptime: 0 days 0:00:07.453
Break instruction exception - code 80000003 (first chance)
*******************************************************************************

DevNode 0x8ac84300 for PDO 0x8ad41178
InstancePath is "PCI\VEN_1022&DEV_149C&SUBSYS_87C01043&REV_00\4&f6230fb&0&0341"
ServiceName is "USBXHCI"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8a8fded8 for PDO 0x8ad454b8
InstancePath is "USB\ROOT_HUB30\5&399a3586&1&0"
ServiceName is "USBHUB3"
State = DeviceNodeStartPostWork (0x307)
Previous State = DeviceNodeStartCompletion (0x306)

13: kd> p
nt!IoFreeWorkItem+0x2d:
80a250cb 5e pop esi
13: kd> p
nt!IoFreeWorkItem+0x2e:
80a250cc 5d pop ebp
13: kd> p
nt!IoFreeWorkItem+0x2f:
80a250cd c20400 ret 4
13: kd> p
USBXHCI!CommonBuffer_WorkItem+0x219:
b8981643 33c0 xor eax,eax
13: kd> p
USBXHCI!CommonBuffer_WorkItem+0x21b:
b8981645 50 push eax
13: kd> p
USBXHCI!CommonBuffer_WorkItem+0x21c:
b8981646 50 push eax
13: kd> p
USBXHCI!CommonBuffer_WorkItem+0x21d:
b8981647 8d4310 lea eax,[ebx+10h]
13: kd> p
USBXHCI!CommonBuffer_WorkItem+0x220:
b898164a 50 push eax
13: kd> p
USBXHCI!CommonBuffer_WorkItem+0x221:
b898164b ff15b8b19ab8 call dword ptr [USBXHCI!_imp__KeSetEvent (b89ab1b8)]
13: kd> p
USBXHCI!CommonBuffer_WorkItem+0x227:
b8981651 5f pop edi
13: kd> p
USBXHCI!CommonBuffer_WorkItem+0x228:
b8981652 5e pop esi
13: kd> p
USBXHCI!CommonBuffer_WorkItem+0x229:
b8981653 5b pop ebx
13: kd> p
USBXHCI!CommonBuffer_WorkItem+0x22a:
b8981654 8be5 mov esp,ebp
13: kd> p
USBXHCI!CommonBuffer_WorkItem+0x22c:
b8981656 5d pop ebp
13: kd> p
USBXHCI!CommonBuffer_WorkItem+0x22d:
b8981657 c20c00 ret 0Ch
13: kd> p
ntoskrn8+0x672:
b9e67672 eb07 jmp ntoskrn8+0x67b (b9e6767b)
13: kd> p
ntoskrn8+0x67b:
b9e6767b 8bce mov ecx,esi
13: kd> p
ntoskrn8+0x67d:
b9e6767d ff1528efe6b9 call dword ptr [ntoskrn8+0x7f28 (b9e6ef28)]
13: kd> p
ntoskrn8+0x683:
b9e67683 5e pop esi
13: kd> p
ntoskrn8+0x684:
b9e67684 5d pop ebp
13: kd> p
ntoskrn8+0x685:
b9e67685 c20400 ret 4
13: kd> p
nt!ExpWorkerThread+0x10f:
80ad51a9 83bfd400000000 cmp dword ptr [edi+0D4h],0
13: kd> p
nt!ExpWorkerThread+0x116:
80ad51b0 7431 je nt!ExpWorkerThread+0x149 (80ad51e3)
13: kd> p
nt!ExpWorkerThread+0x149:
80ad51e3 ff150c31a080 call dword ptr [nt!_imp__KeGetCurrentIrql (80a0310c)]
13: kd> p
nt!ExpWorkerThread+0x14f:
80ad51e9 84c0 test al,al
13: kd> p
nt!ExpWorkerThread+0x151:
80ad51eb 757d jne nt!ExpWorkerThread+0x1d0 (80ad526a)
13: kd> p
nt!ExpWorkerThread+0x153:
80ad51ed f6874802000008 test byte ptr [edi+248h],8
13: kd> p
nt!ExpWorkerThread+0x15a:
80ad51f4 7484 je nt!ExpWorkerThread+0xe0 (80ad517a)
13: kd> p
nt!ExpWorkerThread+0xe0:
80ad517a ff75f8 push dword ptr [ebp-8]
13: kd> p
nt!ExpWorkerThread+0xe3:
80ad517d ff75f4 push dword ptr [ebp-0Ch]
13: kd> p
nt!ExpWorkerThread+0xe6:
80ad5180 56 push esi
13: kd> p
nt!ExpWorkerThread+0xe7:
80ad5181 e83013f6ff call nt!KeRemoveQueue (80a364b6)
13: kd> p
nt!ExpWorkerThread+0xec:
80ad5186 8bd8 mov ebx,eax
7: kd> p
nt!ExpWorkerThread+0xee:
80ad5188 81fb02010000 cmp ebx,102h
7: kd> p
nt!ExpWorkerThread+0xf4:
80ad518e 7479 je nt!ExpWorkerThread+0x16f (80ad5209)
7: kd> p
nt!ExpWorkerThread+0xf6:
80ad5190 33c9 xor ecx,ecx
7: kd> p
nt!ExpWorkerThread+0xf8:
80ad5192 8d462c lea eax,[esi+2Ch]
7: kd> p
nt!ExpWorkerThread+0xfb:
80ad5195 41 inc ecx
7: kd> p
nt!ExpWorkerThread+0xfc:
80ad5196 f00fc108 lock xadd dword ptr [eax],ecx
7: kd> p
nt!ExpWorkerThread+0x100:
80ad519a 8b4b0c mov ecx,dword ptr [ebx+0Ch]
7: kd> p
nt!ExpWorkerThread+0x103:
80ad519d 8b4308 mov eax,dword ptr [ebx+8]
7: kd> p
nt!ExpWorkerThread+0x106:
80ad51a0 51 push ecx
7: kd> p
nt!ExpWorkerThread+0x107:
80ad51a1 8945fc mov dword ptr [ebp-4],eax
7: kd> p
nt!ExpWorkerThread+0x10a:
80ad51a4 894d08 mov dword ptr [ebp+8],ecx
7: kd> p
nt!ExpWorkerThread+0x10d:
80ad51a7 ffd0 call eax
7: kd> p
nt!ExpWorkerThread+0x10f:
80ad51a9 83bfd400000000 cmp dword ptr [edi+0D4h],0
7: kd> p
nt!ExpWorkerThread+0x116:
80ad51b0 7431 je nt!ExpWorkerThread+0x149 (80ad51e3)
7: kd> p
nt!ExpWorkerThread+0x149:
80ad51e3 ff150c31a080 call dword ptr [nt!_imp__KeGetCurrentIrql (80a0310c)]
7: kd> p
nt!ExpWorkerThread+0x14f:
80ad51e9 84c0 test al,al
7: kd> p
nt!ExpWorkerThread+0x151:
80ad51eb 757d jne nt!ExpWorkerThread+0x1d0 (80ad526a)
7: kd> p
nt!ExpWorkerThread+0x153:
80ad51ed f6874802000008 test byte ptr [edi+248h],8
7: kd> p
nt!ExpWorkerThread+0x15a:
80ad51f4 7484 je nt!ExpWorkerThread+0xe0 (80ad517a)
7: kd> p
nt!ExpWorkerThread+0xe0:
80ad517a ff75f8 push dword ptr [ebp-8]
7: kd> p
nt!ExpWorkerThread+0xe3:
80ad517d ff75f4 push dword ptr [ebp-0Ch]
7: kd> p
nt!ExpWorkerThread+0xe6:
80ad5180 56 push esi
7: kd> p
nt!ExpWorkerThread+0xe7:
80ad5181 e83013f6ff call nt!KeRemoveQueue (80a364b6)
7: kd> p
nt!ExpWorkerThread+0xec:
80ad5186 8bd8 mov ebx,eax
10: kd>
nt!ExpWorkerThread+0xee:
80ad5188 81fb02010000 cmp ebx,102h
10: kd> p
nt!ExpWorkerThread+0xf4:
80ad518e 7479 je nt!ExpWorkerThread+0x16f (80ad5209)
10: kd> p
nt!ExpWorkerThread+0xf6:
80ad5190 33c9 xor ecx,ecx
10: kd> p
nt!ExpWorkerThread+0xf8:
80ad5192 8d462c lea eax,[esi+2Ch]
10: kd> p
nt!ExpWorkerThread+0xfb:
80ad5195 41 inc ecx
10: kd> p
nt!ExpWorkerThread+0xfc:
80ad5196 f00fc108 lock xadd dword ptr [eax],ecx
10: kd> p
nt!ExpWorkerThread+0x100:
80ad519a 8b4b0c mov ecx,dword ptr [ebx+0Ch]
10: kd> p
nt!ExpWorkerThread+0x103:
80ad519d 8b4308 mov eax,dword ptr [ebx+8]
10: kd> p
nt!ExpWorkerThread+0x106:
80ad51a0 51 push ecx
10: kd> p
nt!ExpWorkerThread+0x107:
80ad51a1 8945fc mov dword ptr [ebp-4],eax
10: kd> p
nt!ExpWorkerThread+0x10a:
80ad51a4 894d08 mov dword ptr [ebp+8],ecx
10: kd> p
nt!ExpWorkerThread+0x10d:
80ad51a7 ffd0 call eax
10: kd> p
nt!ExpWorkerThread+0x10f:
80ad51a9 83bfd400000000 cmp dword ptr [edi+0D4h],0
10: kd>
nt!ExpWorkerThread+0x116:
80ad51b0 7431 je nt!ExpWorkerThread+0x149 (80ad51e3)
10: kd> p
nt!ExpWorkerThread+0x149:
80ad51e3 ff150c31a080 call dword ptr [nt!_imp__KeGetCurrentIrql (80a0310c)]
10: kd> p
nt!ExpWorkerThread+0x14f:
80ad51e9 84c0 test al,al
10: kd> p
nt!ExpWorkerThread+0x151:
80ad51eb 757d jne nt!ExpWorkerThread+0x1d0 (80ad526a)
10: kd> p
nt!ExpWorkerThread+0x153:
80ad51ed f6874802000008 test byte ptr [edi+248h],8
10: kd> p
nt!ExpWorkerThread+0x15a:
80ad51f4 7484 je nt!ExpWorkerThread+0xe0 (80ad517a)
10: kd> p
nt!ExpWorkerThread+0xe0:
80ad517a ff75f8 push dword ptr [ebp-8]
10: kd> p
nt!ExpWorkerThread+0xe3:
80ad517d ff75f4 push dword ptr [ebp-0Ch]
10: kd> p
nt!ExpWorkerThread+0xe6:
80ad5180 56 push esi
10: kd> p
nt!ExpWorkerThread+0xe7:
80ad5181 e83013f6ff call nt!KeRemoveQueue (80a364b6)
10: kd> p
nt!ExpWorkerThread+0xec:
80ad5186 8bd8 mov ebx,eax
9: kd> p
nt!ExpWorkerThread+0xee:
80ad5188 81fb02010000 cmp ebx,102h
9: kd> p
nt!ExpWorkerThread+0xf4:
80ad518e 7479 je nt!ExpWorkerThread+0x16f (80ad5209)
9: kd> p

*** Assertion failed: IoWorkItem->Size == sizeof( IO_WORKITEM )
*** Source File: d:\xpsp\base\ntos\io\iomgr\misc.c, line 965

nt!ExpWorkerThread+0xf6:
80ad5190 33c9 xor ecx,ecx
9: kd> p
Break repeatedly, break Once, Ignore, terminate Process, or terminate Thread (boipt)? p

p
nt!ExpWorkerThread+0xf8:
80ad5192 8d462c lea eax,[esi+2Ch]
9: kd> p
nt!ExpWorkerThread+0xfb:
80ad5195 41 inc ecx
9: kd> p
nt!ExpWorkerThread+0xfc:
80ad5196 f00fc108 lock xadd dword ptr [eax],ecx
9: kd> p
nt!ExpWorkerThread+0x100:
80ad519a 8b4b0c mov ecx,dword ptr [ebx+0Ch]
9: kd> p
nt!ExpWorkerThread+0x103:
80ad519d 8b4308 mov eax,dword ptr [ebx+8]
9: kd> p
nt!ExpWorkerThread+0x106:
80ad51a0 51 push ecx
9: kd> p
nt!ExpWorkerThread+0x107:
80ad51a1 8945fc mov dword ptr [ebp-4],eax
9: kd> p
nt!ExpWorkerThread+0x10a:
80ad51a4 894d08 mov dword ptr [ebp+8],ecx
9: kd> p
nt!ExpWorkerThread+0x10d:
80ad51a7 ffd0 call eax
9: kd> p
nt!ExpWorkerThread+0x10f:
80ad51a9 83bfd400000000 cmp dword ptr [edi+0D4h],0
9: kd> p
nt!ExpWorkerThread+0x116:
80ad51b0 7431 je nt!ExpWorkerThread+0x149 (80ad51e3)
9: kd> p
nt!ExpWorkerThread+0x149:
80ad51e3 ff150c31a080 call dword ptr [nt!_imp__KeGetCurrentIrql (80a0310c)]
9: kd> p
nt!ExpWorkerThread+0x14f:
80ad51e9 84c0 test al,al
9: kd> p
nt!ExpWorkerThread+0x151:
80ad51eb 757d jne nt!ExpWorkerThread+0x1d0 (80ad526a)
9: kd> p
nt!ExpWorkerThread+0x153:
80ad51ed f6874802000008 test byte ptr [edi+248h],8
9: kd> p
nt!ExpWorkerThread+0x15a:
80ad51f4 7484 je nt!ExpWorkerThread+0xe0 (80ad517a)
9: kd> p
nt!ExpWorkerThread+0xe0:
80ad517a ff75f8 push dword ptr [ebp-8]
9: kd> p
nt!ExpWorkerThread+0xe3:
80ad517d ff75f4 push dword ptr [ebp-0Ch]
9: kd> p
nt!ExpWorkerThread+0xe6:
80ad5180 56 push esi
9: kd> p
nt!ExpWorkerThread+0xe7:
80ad5181 e83013f6ff call nt!KeRemoveQueue (80a364b6)
9: kd> p

*** Fatal System Error: 0x000000e9
(0x8AD270C0,0x00000000,0x00000000,0x00000000)


WARNING: This break is not a step/trace completion.
The last command has been cleared to prevent
accidental continuation of this unrelated event.
Check the event, location and thread before resuming.
Break instruction exception - code 80000003 (first chance)

A fatal system error has occurred.
Debugger entered on first try; Bugcheck callbacks have not been invoked.

A fatal system error has occurred.

Connected to Windows XP 2600 x86 compatible target at (Sat Oct 23 00:04:20.143 2021 (UTC + 2:00)), ptr64 FALSE
Loading Kernel Symbols
.............................................................
Loading User Symbols

Loading unloaded module list
.
*** ERROR: Symbol file could not be found. Defaulted to export symbols for ntoskrn8.sys -
*** ERROR: Symbol file could not be found. Defaulted to export symbols for amd_sata.sys -
*** ERROR: Module load completed but symbols could not be loaded for ftdisk.sys
*** ERROR: Module load completed but symbols could not be loaded for amd_xata.sys
*** ERROR: Symbol file could not be found. Defaulted to export symbols for ptilink.sys -
*** ERROR: Module load completed but symbols could not be loaded for raspti.sys
*** ERROR: Symbol file could not be found. Defaulted to export symbols for BOOTVID.dll -
*** ERROR: Module load completed but symbols could not be loaded for ACPIEC.sys
*** ERROR: Symbol file could not be found. Defaulted to export symbols for kdcom.dll -
*** ERROR: Module load completed but symbols could not be loaded for WMILIB.SYS
Unable to read KiBugCheckData
Unable to read KiBugCheckData
*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

Use !analyze -v to get detailed debugging information.

BugCheck 0, {0, 0, 0, 0}

Unable to read KiBugCheckData


Failure could not be analyzed

*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************
Bugcheck code 000000E9
Arguments 8ad270c0 00000000 00000000 00000000

ChildEBP RetAddr Args to Child
ba55742c 80a30d7b 00000003 ba557788 00000000 nt!RtlpBreakWithStatusInstruction
ba557478 80a319e6 00000003 8ad29290 8ad270c0 nt!KiBugCheckDebugBreak+0x19
ba557858 80a31f77 000000e9 8ad270c0 00000000 nt!KeBugCheck2+0x574
ba557878 80bdc60b 000000e9 8ad270c0 00000000 nt!KeBugCheckEx+0x1b
ba557928 80bdc910 c0000001 8ad29290 00000000 nt!PspExitThread+0x813
ba55794c 80bdcbd0 8ad270c0 c0000001 ba557988 nt!PspTerminateThreadByPointer+0x88
ba557978 80adedd8 00000000 c0000001 00000030 nt!NtTerminateProcess+0x158
ba557978 80a3c91d 00000000 c0000001 00000030 nt!KiFastCallEntry+0x158
ba557a04 80ac5485 ffffffff c0000001 00000001 nt!ZwTerminateProcess+0x11
ba557cfc 80ac54e4 80a2506e 80a2504a 000003c5 nt!RtlAssert2+0xe7
ba557d18 80a250c3 80a2506e 80a2504a 000003c5 nt!RtlAssert+0x18
ba557d34 b8981643 8aa2a978 8ad270c0 8aa8e4f8 nt!IoFreeWorkItem+0x25
ba557d68 b9e67672 8aa8e4f8 8aa11868 8aa2a978 USBXHCI!CommonBuffer_WorkItem+0x219
WARNING: Stack unwind information not available. Following frames may be wrong.
ba557d80 80ad51a9 8aa2a978 00000000 8ad270c0 ntoskrn8!IoGetDevicePropertyData+0x48
ba557dac 80bd81ac 8aa2a978 00000000 00000000 nt!ExpWorkerThread+0x10f
ba557ddc 80ae4212 80ad509a 00000000 00000000 nt!PspSystemThreadStartup+0x34
00000000 00000000 00000000 00000000 00000000 nt!KiThreadStartup+0x16

nt!RtlpBreakWithStatusInstruction:
80ac37ec cc int 3
13: kd>
ChildEBP RetAddr Args to Child
ba55742c 80a30d7b 00000003 ba557788 00000000 nt!RtlpBreakWithStatusInstruction
ba557478 80a319e6 00000003 8ad29290 8ad270c0 nt!KiBugCheckDebugBreak+0x19
ba557858 80a31f77 000000e9 8ad270c0 00000000 nt!KeBugCheck2+0x574
ba557878 80bdc60b 000000e9 8ad270c0 00000000 nt!KeBugCheckEx+0x1b
ba557928 80bdc910 c0000001 8ad29290 00000000 nt!PspExitThread+0x813
ba55794c 80bdcbd0 8ad270c0 c0000001 ba557988 nt!PspTerminateThreadByPointer+0x88
ba557978 80adedd8 00000000 c0000001 00000030 nt!NtTerminateProcess+0x158
ba557978 80a3c91d 00000000 c0000001 00000030 nt!KiFastCallEntry+0x158
ba557a04 80ac5485 ffffffff c0000001 00000001 nt!ZwTerminateProcess+0x11
ba557cfc 80ac54e4 80a2506e 80a2504a 000003c5 nt!RtlAssert2+0xe7
ba557d18 80a250c3 80a2506e 80a2504a 000003c5 nt!RtlAssert+0x18
ba557d34 b8981643 8aa2a978 8ad270c0 8aa8e4f8 nt!IoFreeWorkItem+0x25
ba557d68 b9e67672 8aa8e4f8 8aa11868 8aa2a978 USBXHCI!CommonBuffer_WorkItem+0x219
WARNING: Stack unwind information not available. Following frames may be wrong.
ba557d80 80ad51a9 8aa2a978 00000000 8ad270c0 ntoskrn8!IoGetDevicePropertyData+0x48
ba557dac 80bd81ac 8aa2a978 00000000 00000000 nt!ExpWorkerThread+0x10f
ba557ddc 80ae4212 80ad509a 00000000 00000000 nt!PspSystemThreadStartup+0x34
00000000 00000000 00000000 00000000 00000000 nt!KiThreadStartup+0x16
13: kd> lm
start end module name
80100000 80127780 HAL3 (pdb symbols) c:\symbols\halmacpi.pdb\E84507EBCC884EC88312CED392E768A61\halmacpi.pdb
80a02000 80da3000 nt (pdb symbols) c:\symbols\ntkrpamp.pdb\5B9E8A586D3D49D98927B5D5117577231\ntkrpamp.pdb
b865f000 b86c6000 ksecd8 (pdb symbols) C:\Programme\Debugging Tools for Windows (x86)\sym\ksecdd.pdb\7A79E8DB807B4AE2B8DE483364369CAE1\ksecdd.pdb
b86c6000 b8729000 UsbHub3 (private pdb symbols) C:\Programme\Debugging Tools for Windows (x86)\sym\usbhub3.pdb\FCC3C5A1B41E43F2BC5FCAF5C68E6CEF1\usbhub3.pdb
b8779000 b87d6f00 update (pdb symbols) c:\symbols\update.pdb\840B22B4D8124987BF5F6AB05B14102C1\update.pdb
b87d7000 b87f9700 ks (pdb symbols) c:\symbols\ks.pdb\B006640EDA8C40FD8951E31F54F77B642\ks.pdb
b87fa000 b8829c80 rdpdr (pdb symbols) c:\symbols\rdpdr.pdb\2B82EDCE1DF54F7AAE60CD3A5DD350851\rdpdr.pdb
b882a000 b883b280 psched (pdb symbols) c:\symbols\psched.pdb\9F3A1A98725A4CEF9067BB7CFFBDF5751\psched.pdb
b8864000 b887a680 ndiswan (pdb symbols) c:\symbols\ndiswan.pdb\A4934DF1DEAF464A90C88C559BC259C72\ndiswan.pdb
b887b000 b88a3000 HDAudBus (pdb symbols) c:\symbols\hdaudbus.pdb\A6AEE77DD7294755AA656D52792AEEFB1\hdaudbus.pdb
b88a3000 b88d4000 ucx01000 (private pdb symbols) C:\Programme\Debugging Tools for Windows (x86)\sym\ucx01000.pdb\B5DBF075046B4B60A8FCCB4E56AE51271\ucx01000.pdb
b88d4000 b897e000 wdf01000 (private pdb symbols) C:\Programme\Debugging Tools for Windows (x86)\sym\Wdf01000.pdb\4B21CEB3EDE541318DA92AA1A31DA6C01\Wdf01000.pdb
b897e000 b89c5000 USBXHCI (private pdb symbols) C:\Programme\Debugging Tools for Windows (x86)\sym\usbxhci.pdb\2C65A36AB54E4E93815303711F6822FB1\usbxhci.pdb
b9ca1000 b9ca4c80 mssmbios (pdb symbols) c:\symbols\mssmbios.pdb\9940673F3B9A4BD682DF9D96A12A355C1\mssmbios.pdb
b9cb9000 b9cbb900 ndistapi (pdb symbols) c:\symbols\ndistapi.pdb\98F0B15E72FD4123B200B770799B214B1\ndistapi.pdb
b9cc1000 b9cc3280 wmiacpi (pdb symbols) c:\symbols\wmiacpi.pdb\7E27F259317A4D7596E61F675272F8671\wmiacpi.pdb
b9d01000 b9d1ae80 Mup (pdb symbols) c:\symbols\mup.pdb\1C433960902E4E169BCDB83FDA9AA3D82\mup.pdb
b9d1b000 b9d47a80 NDIS (pdb symbols) c:\symbols\ndis.pdb\3DFF1E048DD2464D8D0B1BFEBAC7C8A12\ndis.pdb
b9d48000 b9dd4d00 Ntfs (pdb symbols) c:\symbols\ntfs.pdb\89F306F8DA21470E8DBC76F3BFED90C62\ntfs.pdb
b9dd5000 b9debb80 KSecDD (pdb symbols) C:\Programme\Debugging Tools for Windows (x86)\sym\ksecdd.pdb\F1FFF3CA4D5C4A568D3FA1B71EB0F5FE1\ksecdd.pdb
b9dec000 b9dfdf00 sr (pdb symbols) c:\symbols\sr.pdb\9D5432B7234C4CD2A8F6275B9D9AF41F1\sr.pdb
b9dfe000 b9e1db00 fltMgr (pdb symbols) c:\symbols\fltMgr.pdb\30197425FFC04385B84C0354E5035D5C1\fltMgr.pdb
b9e1e000 b9e67000 storport (pdb symbols) c:\symbols\storport.pdb\AB4436C5F6B54079A136C8FA486F6D4E2\storport.pdb
b9e67000 b9e89680 ntoskrn8 (export symbols) ntoskrn8.sys
b9e8a000 b9e9f000 amd_sata (export symbols) amd_sata.sys
b9e9f000 b9ec4700 dmio (pdb symbols) c:\symbols\dmio.pdb\7DD31474CC0941E9B2175DDBC956E4601\dmio.pdb
b9ec5000 b9ee3880 ftdisk (no symbols)
b9ee4000 b9ef4a80 pci (pdb symbols) c:\symbols\pci.pdb\46927BAFB8E740B6B4BAC813675A82871\pci.pdb
b9ef5000 b9f24d80 ACPI (pdb symbols) c:\symbols\acpi.pdb\3E23085EEF9C4EB5AC40C386278F6D7E1\acpi.pdb
b9f25000 b9fa7000 WDF01_W8 (private pdb symbols) C:\Programme\Debugging Tools for Windows (x86)\sym\Wdf01000.pdb\20273A8183AD43C0B93F7EFEE76FA6AC2\Wdf01000.pdb
ba0a8000 ba0b6000 WDFLDR8 (private pdb symbols) C:\Programme\Debugging Tools for Windows (x86)\sym\wdfldr.pdb\2BA2A21947B449C294395DF16113E10F2\wdfldr.pdb
ba0b8000 ba0c1180 isapnp (pdb symbols) c:\symbols\isapnp.pdb\C88742CDDA0641E39B06BD20309F22991\isapnp.pdb
ba0c8000 ba0d2700 MountMgr (pdb symbols) c:\symbols\mountmgr.pdb\5D38A8CA29F64A48AB5F17646D153CEA1\mountmgr.pdb
ba0d8000 ba0e3000 PartMgr (pdb symbols) c:\symbols\partmgr.pdb\553D05ACC6B74F7A96205455C0FDC0612\partmgr.pdb
ba0e8000 ba0f4c80 VolSnap (pdb symbols) c:\symbols\volsnap.pdb\063AE2CDED15450491E240111E7E66511\volsnap.pdb
ba0f8000 ba103000 amd_xata (no symbols)
ba108000 ba118000 disk (pdb symbols) c:\symbols\disk.pdb\3DA44D56F4CF49678E6E538BEA9F55311\disk.pdb
ba118000 ba124180 CLASSPNP (pdb symbols) c:\symbols\classpnp.pdb\79125526F95B483880DC8AC59206505E2\classpnp.pdb
ba178000 ba182000 WppRecorder (private pdb symbols) C:\Programme\Debugging Tools for Windows (x86)\sym\wpprecorder.pdb\91005AD9C44F453EB3B06C8BBE01A5EA1\wpprecorder.pdb
ba188000 ba197000 WDFLDR (private pdb symbols) C:\Programme\Debugging Tools for Windows (x86)\sym\wdfldr.pdb\F402F779A2FF45BFB2C05076C4D691591\wdfldr.pdb
ba198000 ba1a4d00 i8042prt (pdb symbols) c:\symbols\i8042prt.pdb\FA66C3D83C0546E0862C49B30DF6B8022\i8042prt.pdb
ba1a8000 ba1b0c00 processr (pdb symbols) c:\symbols\processr.pdb\1C3453BC6D454A0F84F9F53A5AA11C7F1\processr.pdb
ba1b8000 ba1c4880 rasl2tp (pdb symbols) c:\symbols\rasl2tp.pdb\FADB1E8D59EE44EF82E7E9D8324CE21B2\rasl2tp.pdb
ba1c8000 ba1d2200 raspppoe (pdb symbols) c:\symbols\raspppoe.pdb\7031C43F730146F69C07DA1F1D2B8D3C1\raspppoe.pdb
ba1d8000 ba1e3d00 raspptp (pdb symbols) c:\symbols\raspptp.pdb\D7C7E7BFE2924EA29A16BD98B0B46BCE2\raspptp.pdb
ba1e8000 ba1f0900 msgpc (pdb symbols) c:\symbols\msgpc.pdb\E80C52EE74E1497EBBC1E28C15CB28811\msgpc.pdb
ba1f8000 ba201f80 termdd (pdb symbols) c:\symbols\termdd.pdb\341B8AB6C73249269B2AFA3A108CCA5A1\termdd.pdb
ba208000 ba212000 NDProxy (pdb symbols) c:\symbols\ndproxy.pdb\D1A519BC9F3341D785DFC664C26A58671\ndproxy.pdb
ba218000 ba222000 USBD8 (pdb symbols) c:\symbols\usbd.pdb\E73E119839284DAF97EAF2403A6DC4A21\usbd.pdb
ba3f8000 ba3fe000 kbdclass (pdb symbols) c:\symbols\kbdclass.pdb\227A15B4C380417181684895714317F31\kbdclass.pdb
ba400000 ba404a80 TDI (pdb symbols) c:\symbols\tdi.pdb\545742C029D24374BD687966638629EB1\tdi.pdb
ba408000 ba40c580 ptilink (export symbols) ptilink.sys
ba410000 ba414080 raspti (no symbols)
ba418000 ba41da00 mouclass (pdb symbols) c:\symbols\mouclass.pdb\1BBF200238534BE489B4DC62262BE30C1\mouclass.pdb
ba4b8000 ba4bb000 BOOTVID (export symbols) BOOTVID.dll
ba4bc000 ba4bed80 ACPIEC (no symbols)
ba5a8000 ba5a9b80 kdcom (export symbols) kdcom.dll
ba5aa000 ba5ab100 WMILIB (no symbols)
ba5ac000 ba5ad700 dmload (deferred)
ba5b2000 ba5b3100 swenum (deferred)
ba670000 ba670d80 OPRGHDLR (deferred)
ba7b3000 ba7b3c00 audstub (deferred)

Unloaded modules:
ba328000 ba32f000 firadisk.sys
13: kd> !analyze -v
*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

ACTIVE_EX_WORKER_THREAD_TERMINATION (e9)
An executive worker thread is being terminated without having gone through
the worker thread rundown code. A stack trace should indicate the cause.
Arguments:
Arg1: 8ad270c0, The exiting ETHREAD.
Arg2: 00000000
Arg3: 00000000
Arg4: 00000000

Debugging Details:
------------------


DEFAULT_BUCKET_ID: DRIVER_FAULT

BUGCHECK_STR: 0xE9

PROCESS_NAME: System

ASSERT_DATA: IoWorkItem->Size == sizeof( IO_WORKITEM )

ASSERT_FILE_LOCATION: d:\xpsp\base\ntos\io\iomgr\misc.c at Line 965

LAST_CONTROL_TRANSFER: from 80a30d7b to 80ac37ec

STACK_TEXT:
ba55742c 80a30d7b 00000003 ba557788 00000000 nt!RtlpBreakWithStatusInstruction
ba557478 80a319e6 00000003 8ad29290 8ad270c0 nt!KiBugCheckDebugBreak+0x19
ba557858 80a31f77 000000e9 8ad270c0 00000000 nt!KeBugCheck2+0x574
ba557878 80bdc60b 000000e9 8ad270c0 00000000 nt!KeBugCheckEx+0x1b
ba557928 80bdc910 c0000001 8ad29290 00000000 nt!PspExitThread+0x813
ba55794c 80bdcbd0 8ad270c0 c0000001 ba557988 nt!PspTerminateThreadByPointer+0x88
ba557978 80adedd8 00000000 c0000001 00000030 nt!NtTerminateProcess+0x158
ba557978 80a3c91d 00000000 c0000001 00000030 nt!KiFastCallEntry+0x158
ba557a04 80ac5485 ffffffff c0000001 00000001 nt!ZwTerminateProcess+0x11
ba557cfc 80ac54e4 80a2506e 80a2504a 000003c5 nt!RtlAssert2+0xe7
ba557d18 80a250c3 80a2506e 80a2504a 000003c5 nt!RtlAssert+0x18
ba557d34 b8981643 8aa2a978 8ad270c0 8aa8e4f8 nt!IoFreeWorkItem+0x25
ba557d68 b9e67672 8aa8e4f8 8aa11868 8aa2a978 USBXHCI!CommonBuffer_WorkItem+0x219
WARNING: Stack unwind information not available. Following frames may be wrong.
ba557d80 80ad51a9 8aa2a978 00000000 8ad270c0 ntoskrn8!IoGetDevicePropertyData+0x48
ba557dac 80bd81ac 8aa2a978 00000000 00000000 nt!ExpWorkerThread+0x10f
ba557ddc 80ae4212 80ad509a 00000000 00000000 nt!PspSystemThreadStartup+0x34
00000000 00000000 00000000 00000000 00000000 nt!KiThreadStartup+0x16


STACK_COMMAND: kb

FOLLOWUP_IP:
nt!IoFreeWorkItem+25
80a250c3 6a00 push 0

SYMBOL_STACK_INDEX: b

SYMBOL_NAME: nt!IoFreeWorkItem+25

FOLLOWUP_NAME: MachineOwner

MODULE_NAME: nt

IMAGE_NAME: ntkrpamp.exe

DEBUG_FLR_IMAGE_TIMESTAMP: 4802b3ce

FAILURE_BUCKET_ID: 0xE9_nt!IoFreeWorkItem+25

BUCKET_ID: 0xE9_nt!IoFreeWorkItem+25

Followup: MachineOwner
---------

#7997diderius6⇗ @infuscomus

*** Assertion failed: IoWorkItem->Size == sizeof( IO_WORKITEM )
*** Source File: d:\xpsp\base\ntos\io\iomgr\misc.c, line 965


USBXHCI!CommonBuffer_WorkItem+0x21a:
b8981644 c050508d rcl byte ptr [eax+50h],8Dh
12: kd> p
Break repeatedly, break Once, Ignore, terminate Process, or terminate Thread (boipt)? p
p
PS: Unhandled Kernel Mode Exception Pointers = 0xBA55B7C8
Code c0000005 Addr B8981644 Info0 00000001 Info1 00000050 Info2 00000050 Info3 00860001

*** Fatal System Error: 0x0000007e
(0xC0000005,0xB8981644,0xBA55BC7C,0xBA55B978)


A fatal system error has occurred.
Debugger entered on first try; Bugcheck callbacks have not been invoked.

A fatal system error has occurred.

But windbg continues until

*** Fatal System Error: 0x000000e9
(0x8AD270C0,0x00000000,0x00000000,0x00000000)

Shutdown occurred at (Sat Oct 23 01:08:20.453 2021 (UTC + 2:00))...unloading all symbol tables.
Waiting to reconnect...
#7998diderius6
12: kd> !analyze -v
*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

ACTIVE_EX_WORKER_THREAD_TERMINATION (e9)
An executive worker thread is being terminated without having gone through
the worker thread rundown code. A stack trace should indicate the cause.
Arguments:
Arg1: 8ad26020, The exiting ETHREAD.
Arg2: 00000000
Arg3: 00000000
Arg4: 00000000

Debugging Details:
------------------


DEFAULT_BUCKET_ID: DRIVER_FAULT

BUGCHECK_STR: 0xE9

PROCESS_NAME: System

ASSERT_DATA: IoWorkItem->Size == sizeof( IO_WORKITEM )

ASSERT_FILE_LOCATION: d:\xpsp\base\ntos\io\iomgr\misc.c at Line 965

LAST_CONTROL_TRANSFER: from 80a30d7b to 80ac37ec

STACK_TEXT:
ba55b42c 80a30d7b 00000003 ba55b788 00000000 nt!RtlpBreakWithStatusInstruction
ba55b478 80a319e6 00000003 8ad29290 8ad26020 nt!KiBugCheckDebugBreak+0x19
ba55b858 80a31f77 000000e9 8ad26020 00000000 nt!KeBugCheck2+0x574
ba55b878 80bdc60b 000000e9 8ad26020 00000000 nt!KeBugCheckEx+0x1b
ba55b928 80bdc910 c0000001 8ad29290 00000000 nt!PspExitThread+0x813
ba55b94c 80bdcbd0 8ad26020 c0000001 ba55b988 nt!PspTerminateThreadByPointer+0x88
ba55b978 80adedd8 00000000 c0000001 00000030 nt!NtTerminateProcess+0x158
ba55b978 80a3c91d 00000000 c0000001 00000030 nt!KiFastCallEntry+0x158
ba55ba04 80ac5485 ffffffff c0000001 00000000 nt!ZwTerminateProcess+0x11
ba55bcfc 80ac54e4 80a2506e 80a2504a 000003c5 nt!RtlAssert2+0xe7
ba55bd18 80a250c3 80a2506e 80a2504a 000003c5 nt!RtlAssert+0x18
ba55bd34 b8981643 8a9bbcb8 8ad26020 8aacc038 nt!IoFreeWorkItem+0x25
ba55bd68 b9e67672 8aacc038 8a9fa348 8a9bbcb8 USBXHCI!CommonBuffer_WorkItem+0x219
WARNING: Stack unwind information not available. Following frames may be wrong.
ba55bd80 80ad51a9 8a9bbcb8 00000000 8ad26020 ntoskrn8!IoGetDevicePropertyData+0x48
ba55bdac 80bd81ac 8a9bbcb8 00000000 00000000 nt!ExpWorkerThread+0x10f
ba55bddc 80ae4212 80ad509a 00000000 00000000 nt!PspSystemThreadStartup+0x34
00000000 00000000 00000000 00000000 00000000 nt!KiThreadStartup+0x16


STACK_COMMAND: kb

FOLLOWUP_IP:
nt!IoFreeWorkItem+25
80a250c3 6a00 push 0

SYMBOL_STACK_INDEX: b

SYMBOL_NAME: nt!IoFreeWorkItem+25

FOLLOWUP_NAME: MachineOwner

MODULE_NAME: nt

IMAGE_NAME: ntkrpamp.exe

DEBUG_FLR_IMAGE_TIMESTAMP: 4802b3ce

FAILURE_BUCKET_ID: 0xE9_nt!IoFreeWorkItem+25

BUCKET_ID: 0xE9_nt!IoFreeWorkItem+25

Followup: MachineOwner
---------
#7999infuscomus⇗ @diderius6

should we change the size of workitem?
#8000gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #7983
@infuscomus
I dont know, if this is possible with Kernel Debug.
⇗ @diderius6 ...I'm not sure about this either but would like to find out. A major weakness with windbg for me is not being able to trace through system code (ring0). Maybe Microsoft has done that by design. If that's true, maybe there is a way to mod windbg to enter system code instead of bypassing it at a SYSENTER command.

I could do it with softice. I read somewhere that it might be possible using windbg in a remote connection like yours.
#8001diderius6⇗ @gordo999 ⇗ @infuscomus

Yes, the behavior from Windbg is strange. What you can see from all the output here is,
that at the moment, when USBHUB3.SYS is loaded and gets to start, something went wrong.
From my intuition I would say, that this has something to do with the sleeping mode of USB and its Hub in XP.
I can also see, that with the other, uncritical USB3, always all is ok. And when I remember the situation, that I cant install XP via Firadisk on this critical USB port, it may be Bios related.
For me is the most most crazy thing, that when I set a breakpoint, the compi does not always stop at this point.
How is this possible? Then I get message, that it is ok, that KD writes to this breakpoint but does not stop???
I only can imagine, that this breakpoint is not hit at this situation.
But it is impossible(?!), because it is the start of usbxhci.sys.
Now I will try the methode from ⇗ @Mov AX, 0xDEAD with the endless loop at the driver entry point, here USBXHCI.SYS and especcially USBHUB3.SYS. And the hang of XP seems not to happen always at the exact place, only around..
I am quite sure, that it is not the fault of usbxhci.sys, because this driver is always loaded and started correct
Dietmar

PS: Any help with Windbg is welcome!

⇗ @gordo999
"I read somewhere that it might be possible using windbg in a remote connection like yours."
Yes, I did. But it works only until the Comp, which is doing the Debug, is older = Core Duo and very few graphik cards work.
#8002Mov AX, 0xDEADHi All

Zitat von ⇗ diderius6 im Beitrag ¶ #7997

*** Assertion failed: IoWorkItem->Size == sizeof( IO_WORKITEM )
***   Source File: d:\xpsp\base\ntos\io\iomgr\misc.c, line 965



checked kernel has additional field Size:
 
typedef struct _IO_WORKITEM {
WORK_QUEUE_ITEM WorkItem;
PIO_WORKITEM_ROUTINE Routine;
PDEVICE_OBJECT DeviceObject;
PVOID Context;
#if DBG
ULONG Size;
#endif
} IO_WORKITEM;


Emu_Extender override original IO_WORKITEM struct to new "vista-like" format and not compatible with assertion check above

p.s. remove check in IoFreeWorkItem

#8003infuscomus⇗ @Mov AX, 0xDEAD

We haven't heard from you for a while! Welcome back!

⇗ @diderius6 ⇗ @gordo999

we have source code for windbg (XP SP1 version) maybe there is something in there for how to debug ring0?
#8004Strani⇗ @diderius6

Can you answer my question above?
¶ XP/W2k3 x86 on Modern Hardware (534)
#8005diderius6⇗ @Mov AX, 0xDEAD

Can I hack this Bsod in checked XP SP3 ntoskrnl.exe
via
.text:0042309E ; void __stdcall IoFreeWorkItem(PIO_WORKITEM IoWorkItem)
.text:0042309E public _IoFreeWorkItem@4
.text:0042309E _IoFreeWorkItem@4 proc near
.text:0042309E
.text:0042309E P = dword ptr 8
.text:0042309E
.text:0042309E mov edi, edi
.text:004230A0 push ebp
.text:004230A1 mov ebp, esp
.text:004230A3 push esi
.text:004230A4 mov esi, [ebp+P]
.text:004230A7 cmp dword ptr [esi+1Ch], 20h
.text:004230AB jz short loc_4230C3 ============> jmp short loc_4230C3
.text:004230AD push 0 ; Message
.text:004230AF push 3C5h ; LineNumber
.text:004230B4 push offset aDXpspBaseNt_10 ; "d:\\xpsp\\base\\ntos\\io\\iomgr\\misc.c"
.text:004230B9 push offset aIoworkitemSize ; "IoWorkItem->Size == sizeof( IO_WORKITEM"...
.text:004230BE call _RtlAssert@16 ; RtlAssert(x,x,x,x)
.text:004230C3
.text:004230C3 loc_4230C3: ; CODE XREF: IoFreeWorkItem(x)+D j
.text:004230C3 push 0 ; Tag
.text:004230C5 push esi ; P
.text:004230C6 call _ExFreePoolWithTag@8 ; ExFreePoolWithTag(x,x)
.text:004230CB pop esi
.text:004230CC pop ebp
.text:004230CD retn 4
.text:004230CD _IoFreeWorkItem@4 endp
.text:004230CD
.text:004230CD ; ---------------------------------------------------------------------------
#8006diderius6⇗ @Strani
Change those USB files,
where is question
Dietmar
#8007diderius6⇗ @Mov AX, 0xDEAD
Here is this hack )
now I test
Dietmar

⇗ https://ufile.io/ij5g8pzj

EDIT: Yesssa:)))), hack works.. спасибо большое!
#8008diderius6⇗ @infuscomus
Now back to the critical USB.

When I set a breakpoint at 0xb8981643

because
13: kd> p
nt!IoFreeWorkItem+0x2f:
80a250cd c20400 ret 4
13: kd> p
USBXHCI!CommonBuffer_WorkItem+0x219:
b8981643 33c0 xor eax,eax
13: kd> p
USBXHCI!CommonBuffer_WorkItem+0x21b:
b8981645 50 push eax
I get message
KD: write to 0xb8981643 ok  (???)
and the Windbg hangs
Dietmar
#8009infuscomus⇗ @diderius6

maybe try nop that part?
#8010diderius6⇗ @infuscomus

I am very near to the root of the problem with critical USB.
processr!AcpiC1Idle remembers me a lot of sleeping Hub
Dietmar

DevNode 0x8ac0c420 for PDO 0x8ac98338
InstancePath is "PCI\VEN_1022&DEV_149C&SUBSYS_87C01043&REV_00\4&f6230fb&0&0341"
ServiceName is "USBXHCI"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8a9e28f0 for PDO 0x8aa8ba60
InstancePath is "USB\ROOT_HUB30\5&399a3586&1&0"
ServiceName is "USBHUB3"
State = DeviceNodeResourcesAssigned (0x304)

Previous State = DeviceNodeDriversAdded (0x303)


80ae3ded 751a jne nt!KiIdleLoop+0x39 (80ae3e09)
12: kd> p
nt!KiIdleLoop+0x39:
80ae3e09 fb sti
12: kd> p
nt!KiIdleLoop+0x3a:
80ae3e0a 90 nop
12: kd> p
nt!KiIdleLoop+0x3b:
80ae3e0b 90 nop
12: kd> p
nt!KiIdleLoop+0x3c:
80ae3e0c fa cli
12: kd> p
nt!KiIdleLoop+0x3d:
80ae3e0d 3b6d00 cmp ebp,dword ptr [ebp]
12: kd> p
nt!KiIdleLoop+0x40:
80ae3e10 740f je nt!KiIdleLoop+0x51 (80ae3e21)
12: kd> p
nt!KiIdleLoop+0x51:
80ae3e21 83bb2801000000 cmp dword ptr [ebx+128h],0
12: kd> p
nt!KiIdleLoop+0x58:
80ae3e28 74b0 je nt!KiIdleLoop+0xa (80ae3dda)
12: kd> p
nt!KiIdleLoop+0xa:
80ae3dda 8d8b500c0000 lea ecx,[ebx+0C50h]
12: kd> p
nt!KiIdleLoop+0x10:
80ae3de0 ff11 call dword ptr [ecx]
12: kd> p
WARNING: This break is not a step/trace completion.
The last command has been cleared to prevent
accidental continuation of this unrelated event.
Check the event, location and thread before resuming.
Break instruction exception - code 80000003 (first chance)
processr!AcpiC1Idle+0x19:
ba1a9d45 59 pop ecx
15: kd> g
Break instruction exception - code 80000003 (first chance)
processr!AcpiC1Idle+0x19:
ba1a9d45 59 pop ecx
14: kd> g
Single step exception - code 80000004 (first chance)
First chance exceptions are reported before any exception handling.
This exception may be expected and handled.
nt!KeSwapProcessOrStack+0x19:
80a3fd1f 6a00 push 0
13: kd> g
Break instruction exception - code 80000003 (first chance)
processr!AcpiC1Idle+0x19:
ba1a9d45 59 pop ecx
11: kd> g
Break instruction exception - code 80000003 (first chance)
processr!AcpiC1Idle+0x12:
ba1a9d3e 6a00 push 0
10: kd> g
Break instruction exception - code 80000003 (first chance)
processr!AcpiC1Idle+0x19:
ba1a9d45 59 pop ecx
9: kd> g
Break instruction exception - code 80000003 (first chance)
processr!AcpiC1Idle+0x19:
ba1a9d45 59 pop ecx
8: kd> g
Single step exception - code 80000004 (first chance)
First chance exceptions are reported before any exception handling.
This exception may be expected and handled.
nt!PopProcessorIdle+0x105:
80abe4ad 84c0 test al,al
7: kd> g
Break instruction exception - code 80000003 (first chance)
processr!AcpiC1Idle+0x12:
ba1a9d3e 6a00 push 0
6: kd> g
Single step exception - code 80000004 (first chance)
First chance exceptions are reported before any exception handling.
This exception may be expected and handled.
nt!KiIdleLoop+0xa:
80ae3dda 8d8b500c0000 lea ecx,[ebx+0C50h]
5: kd> g
Break instruction exception - code 80000003 (first chance)
processr!AcpiC1Idle+0x19:
ba1a9d45 59 pop ecx
3: kd> g
Break instruction exception - code 80000003 (first chance)
nt!Kei386EoiHelper+0x45:
80adf811 5a pop edx
2: kd> g
Break instruction exception - code 80000003 (first chance)
nt!Kei386EoiHelper+0x45:
80adf811 5a pop edx
1: kd> g
Break instruction exception - code 80000003 (first chance)
nt!Kei386EoiHelper+0x45:
80adf811 5a pop edx
0: kd> g
Breakpoint 0 hit
USBXHCI!CommonBuffer_WorkItem+0x22d:
b8981657 e20c loop USBXHCI!CommonBuffer_QueueWorkItem+0x5 (b8981665)
11: kd> p

*** Fatal System Error: 0x0000010d
(0x00000005,0x00000000,0x00001030,0x8AAD1A90)


*** Fatal System Error: 0x0000010d
(0x00000005,0x00000000,0x00001030,0x8AAD1A90)

WARNING: This break is not a step/trace completion.
The last command has been cleared to prevent
accidental continuation of this unrelated event.
Check the event, location and thread before resuming.
Break instruction exception - code 80000003 (first chance)

A fatal system error has occurred.
Debugger entered on first try; Bugcheck callbacks have not been invoked.

A fatal system error has occurred.

Connected to Windows XP 2600 x86 compatible target at (Sat Oct 23 12:34:15.125 2021 (UTC + 2:00)), ptr64 FALSE
Loading Kernel Symbols
.............................................................
Loading User Symbols

Loading unloaded module list
.
*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

Use !analyze -v to get detailed debugging information.

BugCheck 10D, {5, 0, 1030, 8aad1a90}

*** ERROR: Symbol file could not be found. Defaulted to export symbols for ntoskrn8.sys -
Probably caused by : memory_corruption

Followup: memory_corruption
---------

nt!RtlpBreakWithStatusInstruction:
80ac37ec cc int 3
11: kd> !analyze -v
*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

WDF_VIOLATION (10d)
The Kernel-Mode Driver Framework was notified that Windows detected an error
in a framework-based driver. In general, the dump file will yield additional
information about the driver that caused this bug check.
Arguments:
Arg1: 00000005, A framework object handle of the incorrect type was passed to
a framework object method.
Arg2: 00000000, The handle value passed in.
Arg3: 00001030, Reserved.
Arg4: 8aad1a90, Reserved.

Debugging Details:
------------------


BUGCHECK_STR: 0x10D_5

DEFAULT_BUCKET_ID: CODE_CORRUPTION

PROCESS_NAME: System

LAST_CONTROL_TRANSFER: from 80a30d7b to 80ac37ec

STACK_TEXT:
ba55f8c8 80a30d7b 00000003 ba55fc24 00000000 nt!RtlpBreakWithStatusInstruction
ba55f914 80a319e6 00000003 00000000 8aac1880 nt!KiBugCheckDebugBreak+0x19
ba55fcf4 80a31f77 0000010d 00000005 00000000 nt!KeBugCheck2+0x574
ba55fd14 b8925387 0000010d 00000005 00000000 nt!KeBugCheckEx+0x1b
ba55fd30 b88f2666 00000005 00000000 00001030 wdf01000!FxVerifierBugCheck+0x21 [d:\w8rtm\minkernel\wdf\framework\shared\object\fxverifierbugcheck.cpp @ 72]
ba55fd58 b8981673 8aad1b78 00000000 8ad26da8 wdf01000!imp_WdfDeviceWdmGetDeviceObject+0x26 [d:\w8rtm\minkernel\wdf\framework\kmdf\src\core\fxdeviceapi.cpp @ 158]
ba55fd68 b9e67672 8aac1880 8a9a7848 8aa0da00 USBXHCI!CommonBuffer_QueueWorkItem+0x13
WARNING: Stack unwind information not available. Following frames may be wrong.
ba55fd80 80ad51a9 8aa0da00 00000000 8ad26da8 ntoskrn8!IoGetDevicePropertyData+0x48
ba55fdac 80bd81ac 8aa0da00 00000000 00000000 nt!ExpWorkerThread+0x10f
ba55fddc 80ae4212 80ad509a 00000000 00000000 nt!PspSystemThreadStartup+0x34
00000000 00000000 00000000 00000000 00000000 nt!KiThreadStartup+0x16


STACK_COMMAND: kb

CHKIMG_EXTENSION: !chkimg -lo 50 -d !USBXHCI
b8981657 - USBXHCI!CommonBuffer_WorkItem+22d
[ c2:e2 ]
1 error : !USBXHCI (b8981657)

MODULE_NAME: memory_corruption

IMAGE_NAME: memory_corruption

FOLLOWUP_NAME: memory_corruption

DEBUG_FLR_IMAGE_TIMESTAMP: 0

MEMORY_CORRUPTOR: ONE_BIT

FAILURE_BUCKET_ID: MEMORY_CORRUPTION_ONE_BIT

BUCKET_ID: MEMORY_CORRUPTION_ONE_BIT

Followup: memory_corruption
---------

 

Page 535

#8011diderius6And the next one. May be, that hack in acpi.sys against C3 (deep sleep) can help..
DevNode 0x8ac7db58 for PDO 0x8aca9360
InstancePath is "PCI\VEN_1022&DEV_149C&SUBSYS_87C01043&REV_00\4&f6230fb&0&0341"
ServiceName is "USBXHCI"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8a928a88 for PDO 0x8aa6c410
InstancePath is "USB\ROOT_HUB30\5&399a3586&1&0"
ServiceName is "USBHUB3"
State = DeviceNodeStarted (0x308)

Previous State = DeviceNodeEnumerateCompletion (0x30d)

This is strange, because it means, that the Hub for the critical USB device also already started.
KD: write to 0xba1a9d45 ok

Breakpoint 0 hit
processr!AcpiC1Idle+0x19:
ba1a9d45 7589 jne processr!Acpi2C3ArbdisIdle+0xcc (ba1a9cd0) ==> This is Deep Sleep ;))
9: kd> p
MM:***EBX BA380C70, ESI BA380C50 EDI 8AC60D68
processr!Acpi2C3ArbdisIdle+0xcc:
ba1a9cd0 1aba00740a51 sbb bh,byte ptr [edx+510A7400h]
9: kd> p

*** Fatal System Error: 0x000000d1
(0x510A7478,0x00000002,0x00000000,0xBA1A9CD0)

MM:***PAGE FAULT AT IRQL > 1 Va 510A7478, IRQL 2
MM:***EIP BA1A9CD0, EFL 00010306
MM:***EAX FBB1B338, ECX 00000000 EDX 00000078
MM:***EBX BA370C70, ESI BA370C50 EDI 8AC60D68

*** Fatal System Error: 0x000000d1
(0x510A7478,0x00000002,0x00000000,0xBA1A9CD0)



A fatal system error has occurred.

Connected to Windows XP 2600 x86 compatible target at (Sat Oct 23 13:02:28.171 2021 (UTC + 2:00)), ptr64 FALSE
Loading Kernel Symbols
.............................................................
Loading User Symbols

Loading unloaded module list
..
*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

Use !analyze -v to get detailed debugging information.

BugCheck D1, {510a74b8, 2, 0, ba1a9cd0}

Probably caused by : memory_corruption

Followup: memory_corruption
---------
#8012infuscomus⇗ @diderius6

maybe try with windows 8.0 checked ISO?

⇗ https://windowstan.com/win/windows-8-debug-checked-build/

compare what happens in windows 8.0 when it is working to XP?
#8013diderius6⇗ @infuscomus
I am just downloading, thanks!
May be it is related to C3 (deep sleep) and may be, that a new hack in acpi.sys from outerspace )
can repair this
Dietmar
#8014diderius6⇗ @infuscomus
I can reduce the number of XP SP3 crashes,
when I set in Bios "ACPI _CST C1 Declaration" to "enabled".
Bios tells, that via this setting "Determines whether or not to declare the C1 state to the OS".
In 20 starts, XP hangs 3 times (11, 15, 19. start)
Dietmar

PS: So it has something to do with the sleeping states produced by the Hub, but the problem is still not solved.
#8015infuscomus⇗ @diderius6

I checked the power states for both working and non-working USB 3.0 controllers.

Both have power state D0
#8016diderius6⇗ @infuscomus

Just now I am installing your Win8 debug and soon I report.
For this, I set "ACPI _CST C1 Declaration" to "Auto" back in Bios
Dietmar
#8017Strani⇗ @diderius6

Zitat von ⇗ diderius6 im Beitrag ¶ #8006
@Strani
Change those USB files,
where is question

Sorry, but I didn't understand your answer.
I repeat.

After applying patch WinXpPAE on Windows XP SP3 I need to replace the built-in driver USB2, correct? How to do this correctly:
1. Take usbport.sys from Windows Server 2003 KB2862330?
2. Take usbport.sys and usbd.sys files from Windows Server 2003 KB2862330?
3. Take usbport.sys from your message?
4. Take usbport.sys and usbd.sys files from your message?
#8018diderius6⇗ @infuscomus

Ok, I get Win8 Debug version running and also just now Windbg for it.
Hm, what can I check now
Dietmar


Microsoft (R) Windows Debugger Version 6.12.0002.633 X86
Copyright (c) Microsoft Corporation. All rights reserved.

Opened \\.\com1
Waiting to reconnect...
Connected to Windows 7 9200 x86 compatible target at (Sat Oct 23 17:58:56.640 2021 (UTC + 2:00)), ptr64 FALSE
Kernel Debugger connection established.
Symbol search path is: C:\symbols
Executable search path is: C:\Symbols
*** ERROR: Symbol file could not be found. Defaulted to export symbols for ntkrpamp.exe -
Windows 7 Kernel Version 9200 MP (1 procs) Checked x86 compatible
Built by: 9200.16384.x86chk.win8_rtm.120725-1247
Machine Name:
Kernel base = 0x81816000 PsLoadedModuleList = 0x81c57888
System Uptime: 0 days 0:00:00.744 (checked kernels begin at 49 days)
Break instruction exception - code 80000003 (first chance)
*******************************************************************************
* *
* You are seeing this message because you pressed either *
* CTRL+C (if you run kd.exe) or, *
* CTRL+BREAK (if you run WinDBG), *
* on your debugger machine's keyboard. *
* *
* THIS IS NOT A BUG OR A SYSTEM CRASH *
* *
* If you did not intend to break into the debugger, press the "g" key, then *
* press the "Enter" key now. This message might immediately reappear. If it *
* does, press "g" and "Enter" again. *
* *
*******************************************************************************
nt!RtlpBreakWithStatusInstruction:
819d7a80 cc int 3
kd> lm
start end module name
80400000 80414000 pdc (deferred)
80418000 80425000 ApiSetSchema (deferred)
80425000 8043c000 mcupdate_AuthenticAMD (deferred)
8043c000 80485000 CLFS (deferred)
80485000 804a6000 tm (deferred)
804a6000 804bb000 PSHED (deferred)
804bb000 804c4000 BOOTVID (deferred)
804c4000 8053b000 CI (deferred)
8053b000 80585000 msrpc (deferred)
80585000 805f6000 cng (deferred)
80610000 80623000 partmgr (deferred)
80623000 80663000 spaceport (deferred)
80663000 80674000 volmgr (deferred)
80674000 806c5000 volmgrx (deferred)
806c5000 806da000 mountmgr (deferred)
806da000 806ed000 storahci (deferred)
806ed000 80735000 storport (deferred)
80735000 8074e000 EhStorClass (deferred)
8074e000 807a4000 fltmgr (deferred)
807a4000 807b6000 fileinfo (deferred)
80800000 80827000 tpm (deferred)
80827000 80833000 WdBoot (deferred)
80837000 808e1000 Wdf01000 (deferred)
808e1000 808f0000 WDFLDR (deferred)
808f0000 80902000 acpiex (deferred)
80902000 8090c000 WppRecorder (deferred)
8090c000 80991000 ACPI (deferred)
80991000 8099a000 WMILIB (deferred)
8099a000 809a2000 msisadrv (deferred)
809a2000 809e2000 pci (deferred)
809e2000 809ef000 vdrvroot (deferred)
80ec1000 80ecb000 kdcom (deferred)
81816000 821d1000 nt (pdb symbols) C:\Programme\Debugging Tools for Windows (x86)\sym\ntkrpamp.pdb\C4F414C9D1854DE495BDAD814A722C4D1\ntkrpamp.pdb
821d1000 8222d000 hal (deferred)
82c0d000 82c83000 fvevol (deferred)
82c83000 82cc7000 volsnap (deferred)
82cc7000 82d08000 rdyboost (deferred)
82d08000 82d1c000 mup (deferred)
82d1c000 82d27000 hwpolicy (deferred)
82d27000 82d3e000 disk (deferred)
82d3e000 82d88000 CLASSPNP (deferred)
82e0b000 82fbe000 tcpip (deferred)
82fbe000 82fcc000 wfplwfs (deferred)
89811000 89863000 WdFilter (deferred)
89863000 89934000 ndis (deferred)
89934000 89984000 NETIO (deferred)
89984000 899b5000 ksecpkg (deferred)
899b5000 899fc000 fwpkclnt (deferred)
89a00000 89a0a000 Fs_Rec (deferred)
89a18000 89bd3000 Ntfs (deferred)
89bd3000 89be9000 ksecdd (deferred)
89be9000 89bf9000 pcw (deferred)

#8019diderius6Interesting,
if there is a difference between XP and win8 ;))
Dietmar

DevNode 0x87959808 for PDO 0x87958a10
InstancePath is "PCI\VEN_1022&DEV_149C&SUBSYS_87C01043&REV_00\4&14393665&0&0341"
ServiceName is "USBXHCI"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x90beba48 for PDO 0x90a480d0
InstancePath is "USB\ROOT_HUB30\5&cd58b07&0&0"
ServiceName is "USBHUB3"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)


And this one is very near to crash of critical USB in XP

nt!KiExceptionExit+0xcd:
819ddb7d 8b54243c mov edx,dword ptr [esp+3Ch]
2: kd> p
nt!KiExceptionExit+0xd1:
819ddb81 8b4c2440 mov ecx,dword ptr [esp+40h]
2: kd> p
nt!KiExceptionExit+0xd5:
819ddb85 8b442444 mov eax,dword ptr [esp+44h]
2: kd> p
nt!KiExceptionExit+0xd9:
819ddb89 66837d6c08 cmp word ptr [ebp+6Ch],8
2: kd> p
nt!KiExceptionExit+0xde:
819ddb8e 740c je nt!KiExceptionExit+0xec (819ddb9c)
2: kd> p
nt!KiExceptionExit+0xec:
819ddb9c 8d6554 lea esp,[ebp+54h]
2: kd> p
nt!KiExceptionExit+0xef:
819ddb9f 5f pop edi
2: kd> p
nt!KiExceptionExit+0xf0:
819ddba0 5e pop esi
2: kd> p
nt!KiExceptionExit+0xf1:
819ddba1 5b pop ebx
2: kd> p
nt!KiExceptionExit+0xf2:
819ddba2 5d pop ebp
2: kd> p
nt!KiExceptionExit+0xf3:
819ddba3 83c404 add esp,4
2: kd> p
nt!KiExceptionExit+0xf6:
819ddba6 cf iretd
2: kd> p

*** Fatal System Error: 0x0000007f
(0x00000008,0x83052280,0x00000000,0x00000000)


Gives BSOD :( on Win8, I like blue screen from XP more:))

I think, possible fault is hanging USB3 Hub, the same as in XP

DevNode 0x8795c808 for PDO 0x8795ba10
InstancePath is "PCI\VEN_1022&DEV_149C&SUBSYS_87C01043&REV_00\4&14393665&0&0341"
ServiceName is "USBXHCI"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x90b97608 for PDO 0x90a6f670
InstancePath is "USB\ROOT_HUB30\5&cd58b07&0&0"
ServiceName is "USBHUB3"
State = DeviceNodeStartPending (0x305)
Previous State = DeviceNodeResourcesAssigned (0x304)


0x0000007F: UNEXPECTED KERNEL MODE TRAP


0x0000007f (0x00000008, xxx,yyy,zzz)

Double Fault Indicates that an exception occurs during a call to the handler for a prior exception. Typically, the two exceptions are handled serially. However, there are several exceptions that cannot be handled serially, and in this situation the processor signals a double fault. There are two common causes of a Double Fault: 1. A kernel stack overflow. This overflow occurs when a guard page is hit, and the kernel tries to push a trap frame. Because there is no stack left, a stack overflow results, causing the double fault. If you think this has occurred, use !thread to determine the stack limits, and then use kb (Display Stack Backtrace) with a large parameter (for example, kb 100) to display the full stack. 2. The other common cause is a hardware problem.
#8020infuscomus⇗ @diderius6

Windows 8.0 USB3 will work for me, I need to use your patched acpi.sys though.
#8021diderius6⇗ @infuscomus

I think, win8 has the same problem with this critical USB device as XP.
Just the error management is "better" (less critical), which gives 20 from 20 instead 17 from 20 under XP
Dietmar
#8022diderius6Just now I test, if it is possible, to boot XP via freeldr.sys from a normal formatted XP Fat32 harddisk with ntldr in it
or what are the minimal changes on harddisk for

freeldr.sys <==> ntldr

Dietmar

Edit: Maybe it is even possible to make a harddisk as hybrid, which can boot ntldr and freeldr.sys.
#8023infuscomus⇗ @Strani

Yes copy the USB driver files from a server 2003 install, take the most recent version if you have it.
#8024YuriyCN

ENGLISH
Windows XP mod 2021 - system build for the modern PC (edition 23.10.2021)
The information doesn't fit into a forum post - so download the text file and read it in Notepad.
TXT (93KB) - ⇗ https://yadi.sk/d/KKgPIfOF31v65g

RUSSIAN
Windows XP мод 2021 - сборка системы для современного ПК (редакция 23.10.2021)
Информация не помещается в форумный пост - поэтому скачайте текстовый файл и читайте в Блокноте.
TXT (105КБ) - ⇗ https://yadi.sk/d/AumB5BTbg7RYxA
#8025canonkong⇗ @diderius6
I think it is some bug on ASUS bios, I tested ASUS Gigabyt MSI ASRock B350/450/B550/X570. On win8, all work very well with the win8 port usb driver.
On win7 with the win8 port usb driver, only ASUS will freeze while booting. As we know, X570 Io chip is from CPU IO DIE, so OF you use x570 to run a zen2/3 CPU, it will shows three XHCI controller and the device ID all are 149C. To drive the x570 chips' 149C xhci controller, it is working well. But once you drive the 149C XHCI controller from the CPU IO DIE, it wiill freeze while booting.
It is very strange that this problem will only appear on ASUS mainboard. Maybe ASUS BIOS have something special.

 

Page 536

#8026infuscomus⇗ @canonkong

I wonder whats up with my 149C controller? do you think it's an ACPI issue?

no freezes, but it never works at boot with XP.

It works correctly in Windows 8.0 on every boot - although I need to use a patched acpi.sys by ⇗ @diderius6
In XP it never works at boot but it will work if I disable and re-enable it.

weird.
#8027infuscomus⇗ @diderius6

besides you ASUS board, do you have any other X570 boards?
If you do check if they also have the 149C controller.
#8028diderius6⇗ @infuscomus
I have only the ASUS Prime X570-PRO board for AMD chips.
With the very first Bios, I can install there also the 1700x Cpu.
I remember, that from the USB controllers, one is on board
and the other is integrated in the Cpu, which means, that it changes with each Cpu.
From feeling, this is the most most bad board, that I ever had
Dietmar
#8029infuscomus⇗ @diderius6

do you know if the 149C USB controller is a CPU or Chipset controller?
#8030diderius6⇗ @infuscomus

This is from ⇗ @canonkong

"AM4 Ryzen CPUs have a usb controller that DEV_ID 149C, even though we use 300/400 series mainboards, 149C still doesnt work, but can use mainboards USB controller from ASMedia."

Dietmar
#8031canonkong⇗ @diderius6
I also have Gigabyte X570 and MSI X570, both of them have three 149C controllers.
Here is the ASUS X570-I with 5800X. Because the xhci controller can not use win8 port driver, I used AMD 1.0.0.13 usb driver.
#8032infuscomus⇗ @canonkong

It's strange that the 149C controller works in windows 8.0 for me but not for you.
I wonder why?

do you know if there is a 32-bit version of the AMD 1.0.0.13 usb driver?
#8033canonkong⇗ @infuscomus
No, On win8/server 2012 system, all of the mainboards are working well, even use the mod win8 port driver also are working well.
Not have 32bit 1.0.0.13 usb driver.
#8034diderius6I make some more fun with the freeldr from Reactos with nice result for XP SP3 boot!
This Tutorial I tested on 2 different motherboards.

1.) First I take an old 80 Gbyte Sata harddisk and wipe all out with 00 with Winhex.
    This step is not necessary, but it gives clear start situation.
    
This HD is in an USB box, so that I can easy see, which is the wished 80 GB harddisk and that I do not destroy my other harddisks(!).

2.) Make a Fat32 partition with RMPrebUSB 2.1.739 with ntldr and force use LBA on this 80 Gbyte HD.

3.) With Rufus 2.18 portable (last version for XP)
    set mark for "Show USB" , Fat32, "Schnellformatierung", "Startffäges Laufwerk erstellen   Grub4Dos 0.4.6a" and hit Start.
    Message about grldr I ignore. And also message about "fehlgeschlagen".

4.) Copy grldr (extracted from RMPrebUSB 2.1.739) on the 80Gb HD.

5.) Make a *.txt file on the 80 Gb HD with content

title  ReactOS
root  (hd0,0)
kernel  /freeldr.sys

and rename it to menu.lst .

6.) Copy freeldr.sys and freeldr.ini from Reactos 0.4.13 on the 80GB HD.

7. With Editor open freeldr.ini and replace all  ReactOS => WINDOWS .
  
With only the 4 files grldr, menu.lst, freeldr.sys and freeldr.ini on harddisk, you can test already boot possibility for XP.
It works from harddisk, USB, nvme..

8.) With copy and paste copy there a (small, not necessary small) working XP SP3 installation.
   Not important, if this XP installation comes from ntfs or fat32, all work.
   ntldr, ntdetect.com and boot.ini dont copy. Also dont copy Recycler, System Volume Information, pagefile.

9.) Now fun starts: Connect this 80 GB HD to a compi.
   It gives ultrafast start of XP to Desktop via freeldr, faster than with ntldr.

10.) Tell me, if it works for you )

Dietmar

PS: I just test my own Tutorial for booting XP via freeldr step by step and it works .

EDIT: I just notice, that Rufus 2.18 can be kicked out of the Tutorial,
        because RMPrebUSB offers also the possibility to install grub4dos and also to install its own and wished grldr.

Here are the needed and already edited files for XP boot via freeldr
⇗ https://ufile.io/71t6nooh
#8035diderius6⇗ @infuscomus

There are reports in Internet about the X570 AMD, that even win10 shows exact the same problems with 0000 everywhere on this
149C USB controller and that they can disable and enable again this xhci and then starts. But after reboot the same as before, brrr..
Dietmar

PS: I remember my tests with the crazy board from Asus Prime X570-PRO from May 2020.
There exact the same to me happens as to you now.
At this time I noticed, that the USBD driver was missed and problems with the win8 version of it.

Make try with them
⇗ https://ufile.io/e78fghm0
#8036infuscomus⇗ @diderius6

This version works for you?
#8037diderius6⇗ @infuscomus
In May 2020 I wrote a lot of mails with ⇗ @Mov AX, 0xDEAD
about testing his nice USB3 driver for XP ported from Win8.
And I also write him about this problem with critical USB controller 149C on the Asus x570 board.
As far as I remember, with this laaast version of USB3 for XP from 5 May 2020 all tested USB controllers on all my boards work without a single fail.
I start all my boards about 500 times with a lot of different USB devices
Dietmar

PS: On the ROG Strix B450-F Gaming II board I did not test until now.
#8038George KingHi ⇗ @Mov AX, 0xDEAD, can you please have a look on x64 vusbstor.sys and find proper patch to restore "Safe Remove" as you find for x86?

Patch for VIA USB Mass Storage Device (UAS/UASP) to restore "Safe Remove":
- replace in vusbstor.sys (v6.1.7600.4002):
page:000209B4: mov [ebp+SurpriseRemovalOK], ebx -> NOPs
(89 9D 70 FF FF FF 89 9D 68 FF FF FF => 90 90 90 90 90 90 89 9D 68 FF FF FF)

Here are ported driver set for both x86 and x64. I builded them according to your notes on GitHub and here on WinRaid. NOTE: vusbstor.sys is renamed to uapstor.sys

 
#7898




And I would also like to request missing informations for WDF 1.11. I would like to use ported WDF 1.11 with original XP ones to avoid unhandled problems with other drivers.

 
If need coexist with original WDF1.9 drivers:

Rename WDF01000.SYS->WDF01_W8.SYS, WdfLdr.sys->WdfLdr8.sys
In WDF01_W8.SYS replace string "WdfLdr.sys" to "WdfLdr8.sys" in import section
In WdfLdr8.sys replace unicode string "\Registry\Machine\System\CurrentControlSet\Services\Wdf%02d000" to "\Registry\Machine\System\CurrentControlSet\Services\Wdf%02d_w8"
In WdfLdr8.sys replace hex pattern F6 78 1B F6 to F6 EB 1B F6 (x32), ** ** to ** ** (x64)
In target driver XXX.sys replace string "WdfLdr.sys" to "WdfLdr8.sys" in import section
In .INF of ported driver add creating new service:




After these things we should have great drivers set for both architectures. And only x64 ACPI.sys patch will be needed.

Thanks for your hard work!

[TOOL] POWIS - Powerful Windows Setup - Support Windows Vista, 7, 8.0, 8.1, 10, 11 and their Servers equivalent
⇗ https://forums.mydigitallife.net/threads...p-v1-0-1.83558/

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#8039diderius6I just succeed to switch for one and the same XP installation between boot with freeldr from Reactos or via ntldr.
For this I use menu.lst (thanks to jaclaz at reboot.pro) with content

title XP via ReactOS loader
root (hd0,0)
kernel /freeldr.sys

title XP via normal NTLDR
root (hd0,0)
chainloader /ntldr

This configuration can now boot any XP bootdevice. It can boot more(!) devices than ntldr alone.
This is the very first time, that Reactos puts XP a lot forward.
Some more tests with other boards I need, then I write new Tutorial
Dietmar

EDIT: With Reactos freeldr boot, the strange shutdown problem on some boards is gone.
#8040infuscomus⇗ @diderius6

I wonder, does freeldr.sys solve the issues with the 149C USB controller?

 

Page 537

#8041diderius6⇗ @infuscomus

I am doing a lot of tests with freeldr.sys. Until now, all looks nice:)). Tomorrow I write Tutorial.
Just now I test easy setup for everything. On each board and for any bootdevice freeldr works.
The package from ⇗ @Mov AX, 0xDEAD for USB3 boot does not help for your board with critical USB?
This is strange, because the only board which makes problems in May 2020 was
this crazy Asus PRIME X570-PRO with the same critical USB controller.
But with the very last version this problem with 0000 everywhere was gone and I can even boot XP via USB3 on this board
Dietmar

EDIT: I just finished test successfull with normal install of a Ramsey XP ⇗ @Outbreaker on Fat32 harddisk and (Customized Option; 4,6,7,C,H).
I do not use USB for first tests. A Serial Mouse;) on COM1 port helps me through installing.
This test where done on my Asrock Fatal1ty Z370 Gaming K6 with 8700k cpu and 32 Gbyte ram.
There I can now switch on each boot between freeldr and ntldr and compare.
It is stable.
#8042dencorso
Zitat von ⇗ diderius6 im Beitrag ¶ #7897
PS: A BSOD can happen for another reason: When you first install the Samsung Nvme driver, its Filterdriver secnvmeF.sys does not want to go and when you delete it by hand, you get Bsod 0x7B.

⇗ @diderius6 : For what it's worth, the way to avoid such BSODs is to do the folowing, before trying to remove either just secnvmeF.sys or the full Samsing driver... (I mean: one has installed it, then decides to remove it: so, before anything, while the system still boots correcly, not after one starts getting the BSOD 0x7B) do the folowing from inside the running XP: (1) run regedit; (2) go to HKLM\SYSTEM\CurrentControlSet\Control\Class\{4D36E967-E325-11CE-BFC1-08002BE10318}; (3) once there, delete the MULTI_SZ value "LowerFilters"="secnvmeF"; (4) close regedit and reboot... the reboot should occur normally and one ends at the desktop. From this point, one may use one's favorite method for removing either just secnvmeF.sys or the full Samsing driver. HTH.
#8043diderius6Sometimes, the combination of ntldr and ntdetect.com cant boot Windows XP SP3.
This you see in a blinking cursor, a message that a driver cant be found,
error in reading from bootdevice, error in ntdetect.com, missing ntldr or just black screen.
In a lot of this cases the use of the freeldr.sys from Reactos can help to boot such a XP.
During my test I found examples for all the crashs above, but freeldr boots this XP.
I do not find a single case, where ntldr works but freeldr fails.
Sometimes the boot via winload.exe also helps. But this booting of XP via winload shows a lot of other unnice behaviors.
The disadvantages of freeldr are: Only support for Fat32 until now, no Ntfs.
Only the very last USB3 driver ported from Win8 from ⇗ @Mov AX, 0xDEAD and ⇗ @daniel_k works.
⇗ https://forums.mydigitallife.net/threads...hardware.81607/
The old modded USB drivers from AMD work also with freeldr.
When you use the patch of more than 4 GB, freeldr boots, but shows only <4Gb free ram.
I notice, that in this case the XP with freeldr is faster than with ntldr.
When you use the patch for AVX, freeldr boots but without AVX.
The boottime with freeldr is shorter than with ntldr.
Nvme, lan, sound, graphik, keyboard, mouse, COM1 etc. works all on a XP, booted from freeldr, which I tested.
May be, that freeldr supports Windbg from COM-slotcard.
Some boards, which have a problem to shut down XP, shut down with freeldr.
Booting via freeldr works also for Reactos, Win2003 and Win2000.

Dietmar
#8044diderius6Tutorial
Booting XP via freeldr or ntldr

1.) Format your bootdevice with Fat32. MBR, harddisk 1, partition 1.
I test harddisk and nvme device, formatted with RMPrepUSB 2.1.739 (in attachment),
with settings FAT32, NTLDR, force LBA.

2.) This step do only, if you want to test at once,
if you can switch booting of XP between freeldr and ntldr.
Enable grub4dos with RMPrepUSB 2.1.739 on your bootdevice from 1.).
Copy the 7 files from attachment here to the root of your bootdevice.
grldr, menu.lst (thanks to jaclaz at reboot.pro), freeldr.sys, freeldr.ini, ntldr, ntdetect.com and boot.ini.
Restart computer.

3.) Install XP on this Fat32 partition.
I use Firadisk and the nice XP from Ramsey ⇗ @Outbreaker
Windows XP Professional SP3 x86 - Integral Edition 2021.5.15 (Customized Option; 4,6,7,C,H) with
WinXP-IE Optional Patch Integrator v3.2.0.2b .
During first tests I work without any USB but with Serial Mouse.
Until now dont use USB3 ported from Win8 there. You can use option "N" for USB.

4.) Enable grub4dos with RMPrepUSB 2.1.739 on your bootdevice from 1.)
answer to question about to copy grldr with "yes".

5.) Copy from attachment the bootfiles to the root of your bootdevice, replacing your files.

6.) Tell me, if it works for you )

Dietmar

PS: If you dont see the bootmenu from grub4dos in 2.), run a diskcheck for this harddisk,
after(!) you copied the 7 bootfiles on it.

EDIT: For to install new drivers or programs I use NTLDR.

Bootfiles
⇗ https://ufile.io/1xs2lrb5

You have to rename the splitted files for RMPrepUSB again to RMPrepUSB.part1.rar and RMPrepUSB.part2.rar after download.



diderius6 has attached files to this post
#8045infuscomus⇗ @diderius6

I'll try your freeldr tutorial in a VM first to make sure I get it right before I try on real hardware.

regarding that USB 3.0 driver you uploaded earlier, it seems to be the exact same backported windows 8.0 driver we have already, what is different about this one?
#8046diderius6⇗ @infuscomus

It is not the USB driver but the Kernel Mode Driver Framework 1.11 (updated) by MOV AX, 0xDEAD,
that you need to install before the USB driver
Dietmar

PS: The Tutorial will work in VM for sure, but interesting is in real:)) life.

EDIT: May be, that I missunderstand your question:
The USB3 driver from ⇗ @Mov AX, 0xDEAD from 5 May 2020 does not need any ntoskrn8.sys file.
#8047Mov AX, 0xDEADHi George King

Zitat von ⇗ George King im Beitrag ¶ #8038

Patch for VIA USB Mass Storage Device (UAS/UASP) to restore "Safe Remove":
- replace in vusbstor.sys (v6.1.7600.4002):
page:000209B4: mov [ebp+SurpriseRemovalOK], ebx -> NOPs
(89 9D 70 FF FF FF 89 9D 68 FF FF FF => 90 90 90 90 90 90 89 9D 68 FF FF FF)


vusbstor.sys_x64 6.1.7600.4002 :
89 AC 24 84 00 00 00 -> 90 90 90 90 90 90 90

Zitat von ⇗ George King im Beitrag ¶ #8038

And I would also like to request missing informations for WDF 1.11. I would like to use ported WDF 1.11 with original XP ones to avoid unhandled problems with other drivers.
In WdfLdr8.sys replace hex pattern F6 78 1B F6 to F6 EB 1B F6 (x32), ** ** to ** ** (x64)


wdfldr.sys_x64 1.11.9200.16384 :
85 FF 78 2A -> 85 FF EB 2A

i don't have any XP x64 installed now, hex patterns made by "copy&paste way", need to confirm working state
#8048diderius6⇗ @George King

I make small fun with the nice German XP.iso, that you make for me.
First I try to do the BCD install on a Fat32 partition. But then comes message,
that Install can only be done on a Ntfs partition.
So, first step of Install is done on a Ntfs partition.
Now comes fun: Before 2. step in Install, I change by hand the  ntfs ==> Fat32, keeping all files and settings.
And voila, 2. step of Install continues, this time using freeldr.
Because I am not good in the syntax of freeldr.ini later in Setup it hangs,
but in principe it can be done;))
Dietmar
#8049infuscomus⇗ @diderius6

So I finally got around to testing that USB 3.0 driver you send me from May 2020 for the 149C controller.

Unfortunately, the behavior is exactly the same with this driver as with the other drivers, no change.
#8050infuscomus⇗ @diderius6

If I send you a halmacpi.dll HAL built from XP SP1 source code can you test it to see if it works with XP SP3?
#8051diderius6⇗ @infuscomus

Are you sure, that no part from any other USB3 driver is still used?
There are crazy side effects.
For example I cant install the very last USB3 driver (I think, this is just now the best USB3 on the market) from ⇗ @daniel_k
without before installing the old AMD USB3 driver. Without I get message, that no compatible hardware(!) is found
Dietmar
#8052diderius6⇗ @infuscomus

I tested, this will not work, hal.dll only works together with its own ntoskrnl
Dietmar
#8053infuscomus⇗ @diderius6

It was a new install, no existing USB 3.0 drivers present.
same result.

damn! I was hoping we could use source code to modify the HAL.

⇗ @Mov AX, 0xDEAD

Have you ever tried to modify the HAL?

I tried to make a HAL extender using your ntoskrnl extender project a little while ago. I recall it didn't work correctly since it did not use PMHalDispatchTable correctly - I suppose only the real HAL can do that?
#8054diderius6Hi,
I succeed to fake ntldr in Setup of XP with freeldr.sys and freeldr.ini.

But in GUI Setup, after I see for about 2 sec the running bar, comes Message
SYSTEM_LICENSE_VIOLATION

0x0000009A (0x00000000, 0x00000000, 0x00000000, 0x00690057)
This kind of message I never saw before
Dietmar

PS: In Internet I found, that this comes from registry. But I dont find. Also I dont find this Bsod with IDA Pro in ntoskrnl or in hal. Hm, where else can 0x0000009A be stored???

"In TD you must set "correct" value for your OS partition size." by Slobodan Brcin (eMVP)
This was for XP Embedded.
Oh.., I think I understand this. You have to use always the exact same partition during install of XP.


#8055diderius6⇗ @infuscomus

I hack hal.dll for always to use the onboard system clock in hal.dll from XP SP2 and XP SP3.
At this point I see, that you cant mix those hals with different versions of XP
Dietmar

 

Page 538

#8056st1cky⇗ @diderius6 Do you know if its possible to do changes on Win10 Hal / ntoskrnl?

Would like to change a function with a function from an older Win10 build.

But hadn't figured out how to bypass the security check on Boot for Kernel Drivers.
#8057diderius6⇗ @st1cky

Dont know, if this tool ResourceHacker works also for Win10. For all XP versions it is like magic ).
⇗ www.angusj.com/resourcehacker

Just open with ResourceHacker.exe the edited file and store it again

Dietmar
#8058st1cky⇗ @diderius6

I dont think it will work.

It was easier back then, even with Win7, I think.

But under Windows 10, as far as I know, the kernel drivers must be digitally signed and the checksum must be adjusted after the modification.

And under the new Windows 10 versions, the hal.dll was even made smaller, I think there are only shortcuts in the file that can be found in ntoskrnl.

Maybe I'll deal with it again later. : D

Hal -  10.0.16299.15 - 460 KB (471.448 Bytes)
Hal -  10.0.19042.1237 - 16,7 KB (17.200 Bytes)
#8059un user
Zitat von ⇗ diderius6 im Beitrag ¶ #8054
Hi,
I succeed to fake ntldr in Setup of XP with freeldr.sys and freeldr.ini.

But in GUI Setup, after I see for about 2 sec the running bar, comes Message
SYSTEM_LICENSE_VIOLATION

0x0000009A (0x00000000, 0x00000000, 0x00000000, 0x00690057)
This kind of message I never saw before
Dietmar

PS: In Internet I found, that this comes from registry. But I dont find. Also I dont find this Bsod with IDA Pro in ntoskrnl or in hal. Hm, where else can 0x0000009A be stored???

"In TD you must set "correct" value for your OS partition size." by Slobodan Brcin (eMVP)
This was for XP Embedded.
Oh.., I think I understand this. You have to use always the exact same partition during install of XP.




In Windows Embedded this also mean sistem license is incorrect.
#8060Tom33231How new of a system can windows xp work on I heard of people getting that os to work on haswell and ivy bridge system. If anything newer is possible let me know.
#8061diderius6⇗ @un user

Yes, you are right. I choose the identic partition but still get this error.
With Beyond Compare I make a Binary check between working install
and the one with Bsod 0x0000009A (0x00000000, 0x00000000, 0x00000000, 0x00690057).
Only the files in WINDOWS\System32\config
which means whole registry, are ALL different.
Now, the partition is identic, but still this crazy message.

Do you know, which file makes this Bsod?
It looks for me, that you know much more

Dietmar
#8062diderius6⇗ @Tom33231

Until now I dont know any board, where XP SP3 not works
Dietmar
#8063infuscomus⇗ @st1cky

Looks like they moved the HAL into the ntoskrnl itself.

hal.dll is empty now, just forwarded names.
#8064diderius6⇗ @un user

I also look with IDA Pro in winlogon.exe,
because from XP Embedded I know,
that nothing bad about License happens, when you change winlogon.exe against minlogon.exe.
But also in winlogon I dont find any information about
Bsod 0x0000009A (0x00000000, 0x00000000, 0x00000000, 0x00690057)

Now, only the hard way for me is left, put one file after the other into folder WINDOWS and boot until first time this message appears
Dietmar
#8065diderius6Now only freeldr.sys, freeldr.ini, ntkrnlpa.exe, hal.dll and folder config are left before GUI Setup of XP.
Now, during load via freeldr, loading hangs at "system hive", but no error message is posted until now,
Dietmar
#8066infuscomus⇗ @diderius6

My HAL build from source code works in XP!!

⇗ @Mov AX, 0xDEAD

Would you have any interest at all in making changes to the HAL source code?
like get our SP1 version to match SP3 version?
or add additional exports to the HAL for more functionality?

Using a modded HAL I would like to be able to use the Windows 8.0 acpi.sys with XP - Thanks to ⇗ @diderius6 it is proven at least possible with the Vista RTM version, if a bit unreliably.
#8067diderius6⇗ @infuscomus
Nice ,
what do you change in Hal.dll in sources from XP SP1, so that in works in XP SP3
Dietmar
#8068infuscomus⇗ @diderius6

That's the thing, I didn't change anything, I simply opened razzle and compiled inside XPSP1\base\hals and swapped the resulting halmacpi.dll and it works.

The srv03rtm build however doesn't work in XP, maybe thats what you were thinking of?
#8069un userHi Diderius
This happens when PID is wrong or when i forgot to copy weruntime.ini in root partition.

Also, if you use Minlogon you need to import following in registry, before system boot.
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon]
"Config"=dword:00000017
#8070diderius6⇗ @infuscomus

This can mean only one thing: The hal.dll build from SP1 sources is different to the normal SP1 hal.dll .
Can you please send me your new build halmacpi.dll
Dietmar

 

Page 539

#8071infuscomus⇗ @diderius6

here.



infuscomus has attached files to this post
#8072un userHi Diderius

Tomorrow i will start to made some test in order to see exact steps for this error.
#8073diderius6⇗ @infuscomus

Waaooh, this Hal.dll from Sources SP1 from you also starts XP SP3, loaded via nvme and freeldr, to desktop
Dietmar
#8074diderius6⇗ @un user

I am just building XP Gui boot from Scratch.
I can use boot via ntldr or via freeldr, so normal ntldr boot gives me always the hint,
which driver is still missed.
Interesting, you need more files than I thought just for to load System Hive from XP SP3
Dietmar
#8075infuscomus⇗ @diderius6

Now I'm hoping to add missing exports from Vista and later to XP HAL.

I think Vista acpi.sys from before failed because my psuedo h8l.sys put nothing in _PMHalDispatchTable
maybe modifying the real HAL will actually work.

⇗ @Mov AX, 0xDEAD

any interest in helping?
#8076isopc1999aAsrock Z690 motherboards still have CSM Support
⇗ https://download.asrock.com/Manual/Z690%...hi.pdf#page=125
#8077infuscomus⇗ @isopc1999a

Desktop PCs still have CSM, That's good to know.

Intel NUC9 and later have dropped CSM, and as far as I know all the laptop manufactures have dropped CSM too.
#8078diderius6Yessa, I caught the Bsod 0xA9, which happens ONLY during setup with ntldr ==> freeldr modd
using the debug function from freeldr(!) during Setup of XP SP3 in GUI Mode (second stage)
Dietmar

Microsoft (R) Windows Debugger Version 6.12.0002.633 X86
Copyright (c) Microsoft Corporation. All rights reserved.

Opened \\.\com1
Waiting to reconnect...
Connected to Windows XP 2600 x86 compatible target at (Wed Oct 27 20:34:14.468 2021 (UTC + 2:00)), ptr64 FALSE
Kernel Debugger connection established.
Symbol search path is: C:\symbols
Executable search path is: C:\Symbols
Windows XP Kernel Version 2600 (Service Pack 3) MP (4 procs) Free x86 compatible
Product: WinNt
Built by: 2600.xpsp_sp3_qfe.190108-0655
Machine Name:
Kernel base = 0x80400000 PsLoadedModuleList = 0x8048c4c0
Debug session time: Wed Oct 27 22:34:13.515 2021 (UTC + 2:00)
System Uptime: 0 days 0:00:01.890
Break instruction exception - code 80000003 (first chance)

A fatal system error has occurred.

Connected to Windows XP 2600 x86 compatible target at (Wed Oct 27 20:34:16.718 2021 (UTC + 2:00)), ptr64 FALSE
Loading Kernel Symbols
.....................
Loading User Symbols

*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

Use !analyze -v to get detailed debugging information.

BugCheck 9A, {0, 0, 0, 690057}

Probably caused by : ntkrnlmp.exe ( nt!ExpInitSystemPhase0+bcb )

Followup: MachineOwner
---------

nt!RtlpBreakWithStatusInstruction:
8040b9c2 cc int 3
3: kd> !analyze -v
*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

SYSTEM_LICENSE_VIOLATION (9a)
A violation of the software license agreement has occurred. This can be due to
either attempting to change the product type of an offline system, or an attempt
to change the trial period of an evaluation unit of Windows.
Arguments:
Arg1: 00000000, means that offline product type changes were attempted
Arg2: 00000000, if 1, product should be LanmanNT or ServerNT. If 0, should be WinNT
Arg3: 00000000, partial serial number
Arg4: 00690057, first two characters of product type from product options.

Debugging Details:
------------------


DEFAULT_BUCKET_ID: DRIVER_FAULT

BUGCHECK_STR: 0x9A

PROCESS_NAME: System

LAST_CONTROL_TRANSFER: from 8045f57f to 8040b9c2

STACK_TEXT:
f789e2d4 8045f57f 00000004 f771f408 00000000 nt!RtlpBreakWithStatusInstruction
f789e320 80460557 00000004 04000000 00690057 nt!KiBugCheckDebugBreak+0x19
f789e700 8046066a 0000009a 00000000 00000000 nt!KeBugCheck2+0xa75
f789e720 805fc6d8 0000009a 00000000 00000000 nt!KeBugCheckEx+0x1b
f789e838 805f2916 805dafe6 00000000 8e879950 nt!ExpInitSystemPhase0+0xbcb
f789e83c 805dafe6 00000000 8e879950 00000000 nt!ExInitSystemPhase2+0x5
f789edac 8049e828 80068000 00000000 00000000 nt!Phase1Initialization+0xa9b
f789eddc 804151a9 805da7bf 80068000 00000000 nt!PspSystemThreadStartup+0x34
00000000 00000000 00000000 00000000 00000000 nt!KiThreadStartup+0x16


STACK_COMMAND: kb

FOLLOWUP_IP:
nt!ExpInitSystemPhase0+bcb
805fc6d8 cc int 3

SYMBOL_STACK_INDEX: 4

SYMBOL_NAME: nt!ExpInitSystemPhase0+bcb

FOLLOWUP_NAME: MachineOwner

MODULE_NAME: nt

IMAGE_NAME: ntkrnlmp.exe

DEBUG_FLR_IMAGE_TIMESTAMP: 5c34e27b

FAILURE_BUCKET_ID: 0x9A_nt!ExpInitSystemPhase0+bcb

BUCKET_ID: 0x9A_nt!ExpInitSystemPhase0+bcb

Followup: MachineOwner
---------

#8079diderius6And this is the jump to death  in ntoskrnl

INIT:005DE6B9 loc_5DE6B9:
; CODE XREF: sub_5DDD58+1AF j
INIT:005DE6B9 ; sub_5DDD58+1C5 j ...
INIT:005DE6B9 push 9Ah ; BugCheckCode
INIT:005DE6BE call _KeBugCheckEx@20 ; KeBugCheckEx(x,x,x,x,x)
INIT:005DE6BE sub_5DDD58 endp



Hihi, this point of death loc_5DE6B9 is reached via jmp from 18(!), (with co-jumpers 24) positions in ntoskrnl ,

but from now soon not
Dietmar
#8080NT5 forever
Zitat von ⇗ diderius6 im Beitrag ¶ #8044
Tutorial
Booting XP via freeldr or ntldr

Very interesting!
Can freeldr also boot RAMDisk images?
#8081diderius6⇗ @NT5 forever

Yes. I think freeldr has whole functionality of ntldr, even more, for example Debug from only itself,
but I need more tests.
Just now I am working on those 18 places for to tell XP,
that even for Setup freeldr is a nice one^^
Dietmar
#8082NT5 forever
Zitat von ⇗ diderius6 im Beitrag ¶ #8073
@infuscomus

Waaooh, this Hal.dll from Sources SP1 from you also starts XP SP3, loaded via nvme and freeldr, to desktop
Dietmar

Does it support PAE natively, so XP can see more than 4GB of RAM without patch?
#8083NT5 forever
Zitat von ⇗ diderius6 im Beitrag ¶ #8081
@NT5 forever

Yes. I think freeldr has whole functionality of ntldr, even more, for example Debug from only itself,
but I need more tests.
Just now I am working on those 18 places for to tell XP,
that even for Setup freeldr is a nice one^^
Dietmar


Fascinating. I've got a newish ASUS laptop with a NVME SSD and I wonder how difficult it would be to boot a RAMdisk image with a universal XP on that machine.
#8084NT5 foreverIf only the ntldr of 64 bit XP could be modded to boot 32 bit XP.... I think that's the missing part of the puzzle.
#8085diderius6⇗ @NT5 forever

There is also a 64Bit Reactos version with its freeldr,
Dietmar

 

Page 540

#8086NT5 foreverThat might be a better option because it's designed to target modern hardware.
#8087NT5 foreverMaybe someone could try to mod the 64 bit freeldr so it can boot 32 bit Reactos.
That would probably be easier than modding ntldr.
#8088diderius6⇗ @infuscomus

Just for to know, can you test boot with freeldr on your board with critical USB
Dietmar
#8089infuscomus⇗ @diderius6

I'm still going through your tutorial for how to set it up correctly.

Can you image your freeldr bootable installation with paragon? I'll restore the image and try and boot from it.
#8090diderius6⇗ @infuscomus
Which step in the Tutorial you dont understand?
To upload an image with Paragon is possible,
but not sure if it works for you
Dietmar
#8091diderius6⇗ @Mov AX, 0xDEAD

Is it possible to replace the call of ExpInitSystemPhase0
just with Boolean "True"?
And how to do this at the place where ExpInitSystemPhase0
is called in ntoskrnl
Dietmar
#8092Mov AX, 0xDEAD⇗ @infuscomus

Zitat von ⇗ infuscomus im Beitrag ¶ #8066

@Mov AX, 0xDEAD
Would you have any interest at all in making changes to the HAL source code?
like get our SP1 version to match SP3 version?
or add additional exports to the HAL for more functionality?


Let imagine you have Win7/8 HAL and it works with sp3, then you try Win7/8' acpi.sys and it still not works, i dont see reason to convert hal if final point still not reached
#8093Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #8091
@Mov AX, 0xDEAD
Is it possible to replace the call of ExpInitSystemPhase0
just with Boolean "True"?
And how to do this at the place where ExpInitSystemPhase0
is called in ntoskrnl


to return Boolean:
 
mov eax, 1
ret xxx


xxx - amount of arguments of ExpInitSystemPhase0(if it is stdcall) *4

#8094infuscomus⇗ @Mov AX, 0xDEAD

I think this final point can be reached.
⇗ @diderius6 showed that XP can boot with Vista RTM acpi.sys - I think it was just my hack was too sloppy to be reliable.

edit:
⇗ @Mov AX, 0xDEAD  here diderius6 got it working
¶ XP/W2k3 x86 on Modern Hardware (438)
#8095diderius6Until now I cant install XP using freeldr,
because it is crazy hard to overcome this BSOD in ntkrnlpa.exe
BugCheck 9A, {0, 0, 0, 690057}
Probably caused by : ntkrnlmp.exe ( nt!ExpInitSystemPhase0+bcb )
see post
¶ XP/W2k3 x86 on Modern Hardware (539)

I found 3 places, which belongs to this BSOD, so all together more than 50 pathes have to be modded
Dietmar

PS: No information in BSOD from where it comes. And also Windbg does not accept breakpoints before this crash.
And this Bsod happens very early in bootprocess, only in 2. Stage of XP Setup, GUI mode.
#8096galagunThat's because freeldr doesn't implement the necessary code to set up certain structures used by ntoskrnl exinit.c and systime.c later. That code is used by text mode setup phase to set up license data, timebombs, update state and such, which ReactOS has no need on. You will trigger some strange errors if using FreeLDR to boot setup phases.

More about systime and exinit:
⇗ https://tinyurl.com/build-win2k3
#8097skullteria
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #8093
Zitat von ⇗ diderius6 im Beitrag ¶ #8091
@Mov AX, 0xDEAD
Is it possible to replace the call of ExpInitSystemPhase0
just with Boolean "True"?
And how to do this at the place where ExpInitSystemPhase0
is called in ntoskrnl


to return Boolean:
 
mov eax, 1
ret xxx


xxx - amount of arguments of ExpInitSystemPhase0(if it is stdcall) *4




How is the code in hex?
#8098skullteria
Zitat von ⇗ diderius6 im Beitrag ¶ #8095
Until now I cant install XP using freeldr,
because it is crazy hard to overcome this BSOD in ntkrnlpa.exe
BugCheck 9A, {0, 0, 0, 690057}
Probably caused by : ntkrnlmp.exe ( nt!ExpInitSystemPhase0+bcb )
see post
¶ XP/W2k3 x86 on Modern Hardware (539)

I found 3 places, which belongs to this BSOD, so all together more than 50 pathes have to be modded
Dietmar

PS: No information in BSOD from where it comes. And also Windbg does not accept breakpoints before this crash.
And this Bsod happens very early in bootprocess, only in 2. Stage of XP Setup, GUI mode.



Do you trying use freeldr or setupldr?
#8099diderius6⇗ @skullteria

For TXT Setup I use normal ntldr.
And for GUI Setup I use freeldr.
When I see the post from ⇗ @galagun
¶ XP/W2k3 x86 on Modern Hardware (540)

I do not think that it is impossible to use freeldr for everything.
So maybe it is worth a try, to look at the boot and install process of Reactos very close
Dietmar

EDIT: Just an idea: Change the whole registry from XP after TXT Setup against the registry from Reactos, also after TXT Setup.
And with outstanding Reactos edit via loading Hive all ReactOS ==> WINDOWS in this Registry.
#8100diderius6⇗ @Mov AX, 0xDEAD

For to give always the Boolean "True" as answer from the function ExpInitSystemPhase0,
is this changing at its end correct?

Original
loc_5DDD46:
mov al, [ebp+var_1] (is here in Hex 8A 45 FF as can be seen via IDA Pro)
pop edi
pop esi
pop ebx
leave
retn
_ExpInitSystemPhase0@0 endp

===>

MOD
loc_5DDD46:
mov al, 1 (is in Hex B0 01 90)
nop
pop edi
pop esi
pop ebx
leave
retn
_ExpInitSystemPhase0@0 endp

Dietmar

 

Page 541

#8101un user⇗ @diderius6
Maybe information about Product Key is not entered in registry ?
You could try to start setup from Windows installation and replace ntldr with freeldr before restart to see if works.

Or

Copy registry key with activation from ntldr installation in to registry from freeldr installation (or whole SYSTEM).
#8102skullteria
Zitat von ⇗ diderius6 im Beitrag ¶ #8099
@skullteria

For TXT Setup I use normal ntldr.
And for GUI Setup I use freeldr.
When I see the post from @galagun
¶ XP/W2k3 x86 on Modern Hardware (540)

I do not think that it is impossible to use freeldr for everything.
So maybe it is worth a try, to look at the boot and install process of Reactos very close
Dietmar

EDIT: Just an idea: Change the whole registry from XP after TXT Setup against the registry from Reactos, also after TXT Setup.
And with outstanding Reactos edit via loading Hive all ReactOS ==> WINDOWS in this Registry.


Have a way to use freeldr with BCD? I want intregate it with Vista+ setup engine.
#8103diderius6⇗ @skullteria

You need to describe "to use freeldr with BCD" a little bit more.
Should this be a dual boot freeldr and BCD as in your Tutorial for BCD boot of XP, with MBR from Vista
Dietmar
#8104diderius6I found the exact place in ntkrnlpa.exe for Bsod when try to setup XP with freeldr

.text:0046F228 ; =============== S U B R O U T I N E =======================================
.text:0046F228
.text:0046F228
.text:0046F228 ; __stdcall KiThreadStartup(x)
.text:0046F228 _KiThreadStartup@4 proc near ; DATA XREF: KiInitializeContextThread(x,x,x,x,x)+22E↑o
.text:0046F228 xor ebx, ebx
.text:0046F22A xor esi, esi
.text:0046F22C xor edi, edi
.text:0046F22E xor ebp, ebp
.text:0046F230 mov ecx, 1
.text:0046F235 call ds:__imp_@KfLowerIrql@4 ; KfLowerIrql(x)
.text:0046F23B pop eax
.text:0046F23C call eax ===> Here you can set Breakpoint bp 804151a7 ,
because in real compi it is
nt!KiThreadStartup+0x14:
804151a7 ffd0 call eax The content of EAX at this point is 8049e7f4

when you hit t, EIP jumps to this adress, but it is an endless loop from there, I run it for 2 hours.

.text:0046F23E                   pop     ecx ==>          This line was never reached via Windbg (it is 804151a9   on real compi)
.text:0046F23F or ecx, ecx
.text:0046F241 jz short loc_46F24A
.text:0046F243 mov ebp, esp
.text:0046F245 jmp _KiServiceExit2
.text:0046F24A ; ---------------------------------------------------------------------------
.text:0046F24A



When you type "p" after this Breakpoint, at once you get

nt!KiThreadStartup+0x14:
804151a7 ffd0 call eax
kd> p

*** Fatal System Error: 0x0000009a
(0x00000000,0x00000000,0x00000000,0x00690057)

Dietmar

PS: Interesting, a lot of drivers are already loaded at this point from freeldr during GUI Setup of XP before Bsod.
3: kd> lm
start end module name
80301000 80321d80 hal (deferred)
80400000 80629000 nt (pdb symbols) c:\symbols\ntkrnlmp.pdb\2070D15C611B40BDA93F5F7F12CAC76C2\ntkrnlmp.pdb
f6fff000 f702ba80 NDIS (deferred)
f702c000 f7042b80 KSecDD (deferred)
f7043000 f7106400 dmboot (deferred)
f7107000 f73bc000 iaStor (deferred)
f73bc000 f73e1700 dmio (deferred)
f73e2000 f7400880 Ftdisk (deferred)
f7401000 f7411a80 PCI (deferred)
f7412000 f7441d80 ACPI (deferred)
f7442000 f7465180 fastfat (deferred)
f7487000 f7490180 isapnp (deferred)
f7497000 f74a1700 MountMgr (deferred)
f74a7000 f74b2000 PartMgr (deferred)
f74b7000 f74c3c80 VolSnap (deferred)
f74c7000 f74d3180 CLASSPNP (deferred)
f74d7000 f74e7000 Disk (deferred)
f7707000 f770f000 mvxxmm (deferred)
f770f000 f7715800 firadisk (deferred)
f7717000 f771f000 mv61xxmm (deferred)
f771f000 f7727000 mv64xxmm (deferred)
f7897000 f789a000 BOOTVID (deferred)
f7987000 f7988b80 kdcom (deferred)
f7989000 f798a100 WMILIB (deferred)
f798b000 f798c700 dmload (deferred)
#8105skullteria
Zitat von ⇗ diderius6 im Beitrag ¶ #8103
@skullteria

You need to describe "to use freeldr with BCD" a little bit more.
Should this be a dual boot freeldr and BCD as in your Tutorial for BCD boot of XP, with MBR from Vista
Dietmar


BCD works with entries,like:
1. Entry for winload, natively on Vista+;
2: Pre-Vista entry, for ntldr

I want know if has entry for freeldr, maybe Pre-Vista entry works, but, i don't know
#8106Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #8100

loc_5DDD46:
mov al, [ebp+var_1] (is here in Hex 8A 45 FF as can be seen via IDA Pro)

MOD
loc_5DDD46:
mov al, 1 ; B0 01
nop ; 90



Yes, it is right, BOOLEAN fit to AL, no need set full EAX reg
#8107Mov AX, 0xDEAD
Zitat von ⇗ infuscomus im Beitrag ¶ #8094
@Mov AX, 0xDEAD
I think this final point can be reached.
@diderius6 showed that XP can boot with Vista RTM acpi.sys - I think it was just my hack was too sloppy to be reliable.
¶ XP/W2k3 x86 on Modern Hardware (438)

Oh, seems i missed this info
Why this vista's acpi.sys didn't become a substitute of previouis v6666/v5048 ?
#8108diderius6⇗ @Mov AX, 0xDEAD

"Why this vista's acpi.sys didn't become a substitute of previouis v6666/v5048 ?"

Because it was not stable. I think, the problem is "only" in loading the correct tables at the right time.
Nice work from ⇗ @infuscomus .
I got it 3 times to start and everything works for me under XP SP3 with this acpi.sys from Vista
Dietmar

PS: I read, that you think that it is not possible, to use the USB3 driver from Win8.1 .
Why? Because a really big step forward would be to mod drivers from Win8.1 for XP,
also acpi.sys better to have from Win8.1 .
#8109diderius6This happens,
when I start GUI Setup from XP via freeldr.sys and the WINDOWS\System32\config folder from Reactos 0.415 .
VERY similar to the boot of full XP GUI Setup via freeldr, may be just enough to change also ntoskrnl und hal
Dietmar

Breakpoint 0 hit
nt!KiThreadStartup+0x14:
804151a7 ffd0 call eax
2: kd> p

*** Fatal System Error: 0x00000074
(0x00000003,0x00000002,0x80068000,0xC000014C)

WARNING: This break is not a step/trace completion.
The last command has been cleared to prevent
accidental continuation of this unrelated event.
Check the event, location and thread before resuming.
Break instruction exception - code 80000003 (first chance)

A fatal system error has occurred.
Debugger entered on first try; Bugcheck callbacks have not been invoked.

A fatal system error has occurred.

Connected to Windows XP 2600 x86 compatible target at (Fri Oct 29 19:07:36.437 2021 (UTC + 2:00)), ptr64 FALSE
Loading Kernel Symbols
.....................
Loading User Symbols

*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

Use !analyze -v to get detailed debugging information.

BugCheck 74, {3, 2, 80068000, c000014c}

Probably caused by : ntkrnlmp.exe ( nt!CmpInitializeSystemHive+130 )

Followup: MachineOwner
---------

nt!RtlpBreakWithStatusInstruction:
8040b9c2 cc int 3
3: kd> !analyze -v
*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

BAD_SYSTEM_CONFIG_INFO (74)
Can indicate that the SYSTEM hive loaded by the osloader/NTLDR
was corrupt. This is unlikely, since the osloader will check
a hive to make sure it isn't corrupt after loading it.
It can also indicate that some critical registry keys and values
are not present. (i.e. somebody used regedt32 to delete something
that they shouldn't have) Booting from LastKnownGood may fix
the problem, but if someone is persistent enough in mucking with
the registry they will need to reinstall or use the Emergency
Repair Disk.
Arguments:
Arg1: 00000003, (reserved)
Arg2: 00000002, (reserved)
Arg3: 80068000, (reserved)
Arg4: c000014c, usually the NT status code.

Debugging Details:
------------------


DEFAULT_BUCKET_ID: DRIVER_FAULT

BUGCHECK_STR: 0x74

PROCESS_NAME: System

LAST_CONTROL_TRANSFER: from 8045f57f to 8040b9c2

STACK_TEXT:
f789e37c 8045f57f 00000003 f789e6d8 00000000 nt!RtlpBreakWithStatusInstruction
f789e3c8 80460056 00000003 00000001 80069000 nt!KiBugCheckDebugBreak+0x19
f789e7a8 8046066a 00000074 00000003 00000002 nt!KeBugCheck2+0x574
f789e7c8 805fd06c 00000074 00000003 00000002 nt!KeBugCheckEx+0x1b
f789e7fc 805f3b98 80068000 00034000 c1064000 nt!CmpInitializeSystemHive+0x130
f789e838 805daf11 80068000 00000000 8e87cda0 nt!CmInitSystem1+0x274
f789edac 8049e828 80068000 00000000 00000000 nt!Phase1Initialization+0x84a
f789eddc 804151a9 805da7bf 80068000 00000000 nt!PspSystemThreadStartup+0x34
00000000 00000000 00000000 00000000 00000000 nt!KiThreadStartup+0x16


STACK_COMMAND: kb

FOLLOWUP_IP:
nt!CmpInitializeSystemHive+130
805fd06c 32c0 xor al,al

SYMBOL_STACK_INDEX: 4

SYMBOL_NAME: nt!CmpInitializeSystemHive+130

FOLLOWUP_NAME: MachineOwner

MODULE_NAME: nt

IMAGE_NAME: ntkrnlmp.exe

DEBUG_FLR_IMAGE_TIMESTAMP: 5c34e27b

FAILURE_BUCKET_ID: 0x74_nt!CmpInitializeSystemHive+130

BUCKET_ID: 0x74_nt!CmpInitializeSystemHive+130

Followup: MachineOwner
---------

3: kd> lm
start end module name
80224000 80244d80 hal (deferred)
80400000 80629000 nt (pdb symbols) c:\symbols\ntkrnlmp.pdb\2070D15C611B40BDA93F5F7F12CAC76C2\ntkrnlmp.pdb
f735c000 f7388a80 ndis (deferred)
f7389000 f73ab700 ks (deferred)
f73ac000 f73c5e80 mup (deferred)
f73c6000 f73dcb80 ksecdd (deferred)
f73dd000 f73eda80 pci (deferred)
f73ee000 f7411300 USBPORT (deferred)
f7412000 f7441d80 acpi (deferred)
f7442000 f7465180 fastfat (deferred)
f7487000 f7490180 isapnp (deferred)
f7497000 f74a2000 partmgr (deferred)
f74a7000 f74b5880 usbhub (deferred)
f74b7000 f74c3180 CLASSPNP (deferred)
f74c7000 f74d1700 mountmgr (deferred)
f74d7000 f74e7000 disk (deferred)
f7707000 f770e700 usbehci (deferred)
f7897000 f789a000 BOOTVID (deferred)
f7987000 f7988b80 kdcom (deferred)
f7989000 f798a100 WMILIB (deferred)
f798b000 f798c500 USBD (deferred)
f798d000 f798e100 swenum (deferred)


Yepp, this Bsod 0x74 (3, 2, yyy, zzz) happens in ntkrnlpa.exe of XP SP3 at

INIT:005E290C
INIT:005E290C loc_5E290C: ; CODE XREF: CmpInitializeSystemHive(x)+84 j
INIT:005E290C push 8 ; int
INIT:005E290E push offset _CmpSystemFileName ; int
INIT:005E2913 push ebx ; int
INIT:005E2914 push ebx ; int
INIT:005E2915 push ebx ; FileHandle
INIT:005E2916 push esi ; int
INIT:005E2917 push edi ; int
INIT:005E2918 push 2 ; int
INIT:005E291A push edi ; int
INIT:005E291B push eax ; int
INIT:005E291C call _CmpInitializeHive@40 ; CmpInitializeHive(x,x,x,x,x,x,x,x,x,x)
INIT:005E2921 cmp eax, ebx
INIT:005E2923 jge short loc_5E292D
INIT:005E2925 push eax
INIT:005E2926 push [ebp+Object]
INIT:005E2929 push 2
INIT:005E292B jmp short loc_5E2965
INIT:005E292D ; ---------------------------------------------------------------------------
INIT:005E292D

.
.
.

INIT:005E2965
INIT:005E2965 loc_5E2965: ; CODE XREF: CmpInitializeSystemHive(x)+53 j
INIT:005E2965 ; CmpInitializeSystemHive(x)+C7 j
INIT:005E2965 push 3 ; BugCheckParameter1
INIT:005E2967 push 74h ; BugCheckCode
INIT:005E2969 call _KeBugCheckEx@20 ; KeBugCheckEx(x,x,x,x,x)
INIT:005E296E ; ---------------------------------------------------------------------------
INIT:005E296E

#8110diderius6⇗ @skullteria

I install XP SP3 new on the Asus P8H77-M board on a FAT32 partition.
There I install BCD MBR via easybcd_1.7.2.exe and BOOTICEx86.exe for the PE entry after nice tip from ⇗ @George King .
BCD boot from Vista for XP is with your boot files.
Now I can boot XP via ntldr there or via bootmgr.
bootmgr with winload is a little bit faster than ntldr.
Now I try to integrate in the boot menu also freeldr
Dietmar

PS: Long time ago I wrote Tutorial, how to install Vista on a Fat32 partition. It is still avaible on MSFN.

#8111diderius6⇗ @skullteria

This was easy,
oh..
soso much fun. 3 bootloaders work for XP.
Dietmar

PS: Fastest boot of XP is via freeldr. Then comes BCD and then ntldr.

From feeling is the very best of them freeldr. It can find also crazy Arcpaths.

ntldr is generic.

BCD can boot some crazy compis with XP but has a lot of bad side effects, for example when you modd hal.dll it cries, that hal.dll is not valid. And from >=Skylake compis BCD boot works only for cpu <= Celeron.

#8112diderius6⇗ @infuscomus

I noticed, that from your nice hal.dll from SP1 you dont need the Timer hack,
because this hal always uses the System clock
Dietmar
#8113infuscomus⇗ @diderius6

I wonder what other differences there are between the XP SP1 and SP3 HAL?
#8114Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #8108

PS: I read, that you think that it is not possible, to use the USB3 driver from Win8.1 .


i never wrote this. if someone will implement "new timer api" you'l get usb3
#8115diderius6⇗ @Mov AX, 0xDEAD

"if someone will implement "new timer api" you'l get usb3"

Until now, I have no idea how to make this.
But I can learn a lot, so.. if there is a chance to integrate more drivers from Win8.1 into XP..
Very much I am interested in Lan driver i219.
Because with this driver, all can work with coming z690 boards under XP

Dietmar

PS: XP is more than fun. How much time you can save in daily work with an rocksolid OS.
I remember October 2009, when Win7 was on the market: I simply compare Skype from Win7 with Skype from XP.
This experiance was the reason, why I never install Win7 for use.

 

Page 542

#8116infuscomus⇗ @diderius6

Attempting again with Vista RTM acpi.sys

This will give a 7E BSOD - is the point of failure still in ACPIFindLoadRSDT? or has it changed?



infuscomus has attached files to this post
#8117diderius6⇗ @infuscomus


Microsoft (R) Windows Debugger Version 6.12.0002.633 X86
Copyright (c) Microsoft Corporation. All rights reserved.

Opened \\.\com1
Waiting to reconnect...
Connected to Windows XP 2600 x86 compatible target at (Sat Oct 30 18:45:38.281 2021 (UTC + 2:00)), ptr64 FALSE
Kernel Debugger connection established.
Symbol search path is: C:\symbols
Executable search path is: C:\Symbols
Windows XP Kernel Version 2600 MP (1 procs) Free x86 compatible
Built by: 2600.xpsp_sp3_qfe.190108-0655
Machine Name:
Kernel base = 0x804d7000 PsLoadedModuleList = 0x805634c0
System Uptime: not available
MM: Loader/HAL memory block indicates large pages cannot be used for 81448000->828B8FFF
MM: Disabling large pages for all ranges due to overlap

*** Fatal System Error: 0x0000007e
(0xC0000005,0x8A846F44,0xF789E0AC,0xF789DDA8)

Break instruction exception - code 80000003 (first chance)

A fatal system error has occurred.
Debugger entered on first try; Bugcheck callbacks have not been invoked.

A fatal system error has occurred.

Connected to Windows XP 2600 x86 compatible target at (Sat Oct 30 18:45:44.718 2021 (UTC + 2:00)), ptr64 FALSE
Loading Kernel Symbols
..........................
Loading User Symbols

*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

Use !analyze -v to get detailed debugging information.

BugCheck 7E, {c0000005, 8a846f44, f789e0ac, f789dda8}

*** No owner thread found for resource 805614e0
*** No owner thread found for resource 805614e0
*** No owner thread found for resource 805614e0
*** No owner thread found for resource 805614e0
*** No owner thread found for resource 805614e0
*** No owner thread found for resource 805614e0
Probably caused by : ntkrnlmp.exe ( nt!IopQueryDeviceResources+79 )

Followup: MachineOwner
---------

nt!RtlpBreakWithStatusInstruction:
804e29c2 cc int 3
3: kd> !analyze -v
*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

SYSTEM_THREAD_EXCEPTION_NOT_HANDLED (7e)
This is a very common bugcheck. Usually the exception address pinpoints
the driver/function that caused the problem. Always note this address
as well as the link date of the driver/image that contains this address.
Arguments:
Arg1: c0000005, The exception code that was not handled
Arg2: 8a846f44, The address that the exception occurred at
Arg3: f789e0ac, Exception Record Address
Arg4: f789dda8, Context Record Address

Debugging Details:
------------------

*** No owner thread found for resource 805614e0
*** No owner thread found for resource 805614e0
*** No owner thread found for resource 805614e0
*** No owner thread found for resource 805614e0
*** No owner thread found for resource 805614e0
*** No owner thread found for resource 805614e0

EXCEPTION_CODE: (NTSTATUS) 0xc0000005 - Die Anweisung "0x%08lx" verweist auf Speicher bei "0x%08lx". Die Daten wurden wegen eines E/A-Fehlers in "0x%081x" nicht in den Arbeitsspeicher bertragen.

FAULTING_IP:
+1782faf00c0dfc0
8a846f44 0000 add byte ptr [eax],al

EXCEPTION_RECORD: f789e0ac -- (.exr 0xfffffffff789e0ac)
ExceptionAddress: 8a846f44
ExceptionCode: c0000005 (Access violation)
ExceptionFlags: 00000000
NumberParameters: 2
Parameter[0]: 00000001
Parameter[1]: 08a846a9
Attempt to write to address 08a846a9

CONTEXT: f789dda8 -- (.cxr 0xfffffffff789dda8)
eax=08a846a9 ebx=00000001 ecx=e1009780 edx=e1009758 esi=e13c7628 edi=00000000
eip=8a846f44 esp=f789e174 ebp=8a84aa38 iopl=0 nv up ei pl zr na pe nc
cs=0008 ss=0010 ds=0023 es=0023 fs=0030 gs=0000 efl=00010246
8a846f44 0000 add byte ptr [eax],al ds:0023:08a846a9=??
Resetting default scope

DEFAULT_BUCKET_ID: DRIVER_FAULT

PROCESS_NAME: System

ERROR_CODE: (NTSTATUS) 0xc0000005 - Die Anweisung "0x%08lx" verweist auf Speicher bei "0x%08lx". Die Daten wurden wegen eines E/A-Fehlers in "0x%081x" nicht in den Arbeitsspeicher bertragen.

EXCEPTION_PARAMETER1: 00000001

EXCEPTION_PARAMETER2: 08a846a9

WRITE_ADDRESS: 08a846a9

FOLLOWUP_IP:
nt!IopQueryDeviceResources+79
805a734f 8bf8 mov edi,eax

FAILED_INSTRUCTION_ADDRESS:
+1782faf00c0dfc0
8a846f44 0000 add byte ptr [eax],al

BUGCHECK_STR: 0x7E

LOCK_ADDRESS: 80561560 -- (!locks 80561560)

Resource @ nt!IopDeviceTreeLock (0x80561560) Shared 1 owning threads
Threads: 8a867780-01<*>
1 total locks, 1 locks currently held

PNP_TRIAGE:
Lock address : 0x80561560
Thread Count : 1
Thread address: 0x8a867780
Thread wait : 0x4d

LAST_CONTROL_TRANSFER: from 8053657f to 804e29c2

STACK_TEXT:
WARNING: Frame IP not in any known module. Following frames may be wrong.
f789e178 80717f9d 8a846aa8 8a84aa54 8a84aacc 0x8a846f44
f789e1cc 805a734f 8a846aa8 f789e220 f789e278 hal!HalGetAdapter+0x1583
f789e248 805aa4f6 8a846aa8 00000000 f789e278 nt!IopQueryDeviceResources+0x79
f789e27c 805a8685 8a8843c8 80000048 8a849140 nt!PiQueryAndAllocateBootResources+0x34
f789e36c 805a9022 8a8843c8 8a849140 8a84a768 nt!PipProcessNewDeviceNode+0xab5
f789e5c0 805a4079 8a84a768 00000000 00000000 nt!PipProcessDevNodeTree+0x16b
f789e5f4 80505ed6 00000003 80561598 00000000 nt!PiProcessReenumeration+0x60
f789e61c 80510c13 00000000 80085000 00000000 nt!PipDeviceActionWorker+0x170
f789e634 806c1b58 8a84aca8 00000009 00000000 nt!PipRequestDeviceAction+0x118
f789e690 806b0f8c 80085001 8000003c 00034000 nt!IopInitializePlugPlayServices+0x647
f789e838 806b2012 80085000 00000000 8a867780 nt!IoInitSystem+0x6ea
f789edac 80575828 80085000 00000000 00000000 nt!Phase1Initialization+0xac7
f789eddc 804ec1a9 806b17bf 80085000 00000000 nt!PspSystemThreadStartup+0x34
00000000 00000000 00000000 00000000 00000000 nt!KiThreadStartup+0x16


SYMBOL_STACK_INDEX: 2

SYMBOL_NAME: nt!IopQueryDeviceResources+79

FOLLOWUP_NAME: MachineOwner

MODULE_NAME: nt

IMAGE_NAME: ntkrnlmp.exe

DEBUG_FLR_IMAGE_TIMESTAMP: 5c34e27b

STACK_COMMAND: .cxr 0xfffffffff789dda8 ; kb

FAILURE_BUCKET_ID: 0x7E_BAD_IP_nt!IopQueryDeviceResources+79

BUCKET_ID: 0x7E_BAD_IP_nt!IopQueryDeviceResources+79

Followup: MachineOwner
---------

3: kd> lm
start end module name
804d7000 80700000 nt (pdb symbols) c:\symbols\ntkrnlmp.pdb\2070D15C611B40BDA93F5F7F12CAC76C2\ntkrnlmp.pdb
80700000 8071fc00 hal (export symbols) halmacpi.dll
ba44e000 ba467e80 Mup (deferred)
ba468000 ba494a80 NDIS (deferred)
ba495000 ba4abb80 KSecDD (deferred)
ba4ac000 ba4cf180 Fastfat (deferred)
ba4d0000 ba4e1f00 sr (deferred)
ba4e2000 ba501b00 fltMgr (deferred)
ba502000 ba54b000 storport (deferred)
ba54b000 ba800000 iaStor (deferred)
f747a000 f749f700 dmio (deferred)
f74a0000 f74be880 ftdisk (deferred)
f755f000 f756fa80 pci (deferred)
f7570000 f7592700 ntoskrn8 (deferred)
f7593000 f75d6000 ACPI (deferred)
f75f7000 f7600180 isapnp (deferred)
f7607000 f7611700 MountMgr (deferred)
f7617000 f7622000 PartMgr (deferred)
f7627000 f7633c80 VolSnap (deferred)
f7637000 f7645000 stornvme (deferred)
f7647000 f7657000 disk (deferred)
f7657000 f7663180 CLASSPNP (deferred)
f7707000 f770d800 firadisk (deferred)
f7897000 f789a000 BOOTVID (deferred)
f7987000 f7988b80 kdcom (deferred)
f7989000 f798a100 WMILIB (deferred)
f798b000 f798c700 dmload (deferred)

#8118infuscomus⇗ @diderius6

so failure does not occur in acpi.sys but in ntkrnlmp.exe?
#8119diderius6⇗ @infuscomus

It looks like an address error, I test some more with Windbg,
what the register values are at 8a846f44
Dietmar
#8120diderius6⇗ @infuscomus

This Bsod before happens because of the now not working nvme driver with this modded ntkrnl8.
So, it means nothing. Here is new
Dietmar



Microsoft (R) Windows Debugger Version 6.12.0002.633 X86
Copyright (c) Microsoft Corporation. All rights reserved.

Opened \\.\com1
Waiting to reconnect...
Connected to Windows XP 2600 x86 compatible target at (Sat Oct 30 19:52:04.406 2021 (UTC + 2:00)), ptr64 FALSE
Kernel Debugger connection established.
Symbol search path is: C:\symbols
Executable search path is: C:\Symbols
Windows XP Kernel Version 2600 MP (1 procs) Checked x86 compatible
Built by: 2600.xpsp.080413-2133
Machine Name:
Kernel base = 0x80a02000 PsLoadedModuleList = 0x80b019e8
System Uptime: not available

*** Fatal System Error: 0x00000079
(0x00000002,0x00000001,0x00000000,0x00000000)

Break instruction exception - code 80000003 (first chance)

A fatal system error has occurred.
Debugger entered on first try; Bugcheck callbacks have not been invoked.

A fatal system error has occurred.

Connected to Windows XP 2600 x86 compatible target at (Sat Oct 30 19:52:06.703 2021 (UTC + 2:00)), ptr64 FALSE
Loading Kernel Symbols
........................
Loading User Symbols

*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

Use !analyze -v to get detailed debugging information.

BugCheck 79, {2, 1, 0, 0}

*** ERROR: Symbol file could not be found. Defaulted to export symbols for halmacpi.dll -
Probably caused by : ntkrpamp.exe ( nt!ExpInitializeExecutive+171 )

Followup: MachineOwner
---------

nt!RtlpBreakWithStatusInstruction:
80ac37ec cc int 3
kd> !analyze -v
*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

MISMATCHED_HAL (79)
The HAL revision level and HAL configuration type does not match that
of the kernel or the machine type. This would probably happen if the
user has manually updated either ntoskrnl.exe or hal.dll and managed to
get a conflict.
You have an MP (multi-processor) Hal and a UP (uni-processor) Kernel,
or the reverse.
Arguments:
Arg1: 00000002,
The build types mismatch.
Arg2: 00000001, Build type of ntoskrnl.exe
Arg3: 00000000, Build type of hal.dll
Build type
0 = Free multiprocessor enabled build
1 = Checked multiprocessor enabled build
2 = Free uniprocessor build
3 = checked uniprocessor build
Arg4: 00000000

Debugging Details:
------------------


BUGCHECK_STR: 0x79_2

DEFAULT_BUCKET_ID: DRIVER_FAULT

LAST_CONTROL_TRANSFER: from 80a30d7b to 80ac37ec

STACK_TEXT:
80af1ef0 80a30d7b 00000003 80af224c 00000000 nt!RtlpBreakWithStatusInstruction
80af1f3c 80a319e6 00000003 000000ff ffdff120 nt!KiBugCheckDebugBreak+0x19
80af231c 80a31f77 00000079 00000002 00000001 nt!KeBugCheck2+0x574
80af233c 8007ea22 00000079 00000002 00000001 nt!KeBugCheckEx+0x1b
WARNING: Stack unwind information not available. Following frames may be wrong.
80af2368 80d2ff9f 00000000 80085000 80afe260 hal!HalInitSystem+0x64
80af24f8 80d41cd4 00000000 80085000 8003fc00 nt!ExpInitializeExecutive+0x171
80af254c 80d3f6ec 80afe4c0 80afe260 80af2810 nt!KiInitializeKernel+0x568
00000000 00000000 00000000 00000000 00000000 nt!KiSystemStartup+0x2c4


STACK_COMMAND: kb

FOLLOWUP_IP:
nt!ExpInitializeExecutive+171
80d2ff9f 84c0 test al,al

SYMBOL_STACK_INDEX: 5

SYMBOL_NAME: nt!ExpInitializeExecutive+171

FOLLOWUP_NAME: MachineOwner

MODULE_NAME: nt

IMAGE_NAME: ntkrpamp.exe

DEBUG_FLR_IMAGE_TIMESTAMP: 4802b3ce

FAILURE_BUCKET_ID: 0x79_2_nt!ExpInitializeExecutive+171

BUCKET_ID: 0x79_2_nt!ExpInitializeExecutive+171

Followup: MachineOwner
---------

kd> lm
start end module name
80001000 80004000 BOOTVID (deferred)
80007000 80008100 WMILIB (deferred)
80009000 8000f800 firadisk (deferred)
80010000 80011b80 kdcom (deferred)
80012000 8001b180 isapnp (deferred)
8001c000 8001d700 dmload (deferred)
80062000 80081c00 hal (export symbols) halmacpi.dll
80124000 80167000 ACPI (deferred)
80167000 80189700 ntoskrn8 (deferred)
8018a000 8019aa80 pci (deferred)
8019b000 801a5700 MountMgr (deferred)
801a6000 801c4880 ftdisk (deferred)
801c5000 801ea700 dmio (deferred)
801eb000 801f6000 PartMgr (deferred)
801f6000 80202c80 VolSnap (deferred)
80203000 80213000 disk (deferred)
80213000 8021f180 CLASSPNP (deferred)
80220000 8023fb00 fltMgr (deferred)
80240000 80251f00 sr (deferred)
80252000 80268b80 KSecDD (deferred)
80269000 802f5d00 Ntfs (deferred)
802f6000 80322a80 NDIS (deferred)
80323000 8033ce80 Mup (deferred)
804d7000 8078c000 iaStor (deferred)
80a02000 80da3000 nt (pdb symbols) c:\symbols\ntkrpamp.pdb\5B9E8A586D3D49D98927B5D5117577231\ntkrpamp.pdb

#8121infuscomus⇗ @diderius6

I see MISMATCHED_HAL (79)
I gave you a free build HAL, not a checked build.
#8122diderius6⇗ @infuscomus
yepp
#8123infuscomus⇗ @diderius6

OK, here is checked HAL.



infuscomus has attached files to this post
#8124diderius6⇗ @infuscomus

nt!SwapContext+0x130:
80ae3c20 890b mov dword ptr [ebx],ecx
kd> p
nt!SwapContext+0x132:
80ae3c22 807e4900 cmp byte ptr [esi+49h],0
kd> p
nt!SwapContext+0x136:
80ae3c26 7504 jne nt!SwapContext+0x13c (80ae3c2c)
kd> p
nt!SwapContext+0x138:
80ae3c28 9d popfd
kd> p
nt!SwapContext+0x139:
80ae3c29 33c0 xor eax,eax
kd> p
nt!SwapContext+0x13b:
80ae3c2b c3 ret
kd> p
nt!KiThreadStartup:
80ae41fc 33db xor ebx,ebx
kd> p
nt!KiThreadStartup+0x2:
80ae41fe 33f6 xor esi,esi
kd> p
nt!KiThreadStartup+0x4:
80ae4200 33ff xor edi,edi
kd> p
nt!KiThreadStartup+0x6:
80ae4202 33ed xor ebp,ebp
kd> p
nt!KiThreadStartup+0x8:
80ae4204 b901000000 mov ecx,1
kd> p
nt!KiThreadStartup+0xd:
80ae4209 ff153030a080 call dword ptr [nt!_imp_KfLowerIrql (80a03030)]
kd> p
nt!KiThreadStartup+0x13:
80ae420f 58 pop eax
kd> p
nt!KiThreadStartup+0x14:
80ae4210 ffd0 call eax
kd> p
PS: Unhandled Kernel Mode Exception Pointers = 0xBA4C2BD4
Code c0000005 Addr 8ABF7ED0 Info0 00000000 Info1 00000000 Info2 00000000 Info3 BA4C3118

*** Fatal System Error: 0x0000007e
(0xC0000005,0x8ABF7ED0,0xBA4C3088,0xBA4C2D84)

WARNING: This break is not a step/trace completion.
The last command has been cleared to prevent
accidental continuation of this unrelated event.
Check the event, location and thread before resuming.
Break instruction exception - code 80000003 (first chance)

A fatal system error has occurred.
Debugger entered on first try; Bugcheck callbacks have not been invoked.

A fatal system error has occurred.

Connected to Windows XP 2600 x86 compatible target at (Sat Oct 30 20:22:33.687 2021 (UTC + 2:00)), ptr64 FALSE
Loading Kernel Symbols
........................
Loading User Symbols

*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

Use !analyze -v to get detailed debugging information.

BugCheck 7E, {c0000005, 8abf7ed0, ba4c3088, ba4c2d84}

*** No owner thread found for resource 80afd640
*** No owner thread found for resource 80afd640
*** No owner thread found for resource 80afd640
*** No owner thread found for resource 80afd640
*** No owner thread found for resource 80afd640
*** No owner thread found for resource 80afd640
Probably caused by : ntkrpamp.exe ( nt!IopSynchronousCall+f0 )

Followup: MachineOwner
---------

#8125infuscomus⇗ @diderius6

Maybe it is not possible to use ntoskrnl_extender at all for acpi.sys? I may have to try with a custom ntoskrnl too.
#8126infuscomus⇗ @diderius6

Do you remember how you found the error in ACPIFindLoadRSDT last time around? you're sure there is not still an error acpi.sys?
#8127diderius6⇗ @infuscomus

At the moment compi seems to hang at this

after I set Breakpoint

nt!RtlpBreakWithStatusInstruction:
80ac37ec cc int 3
kd> g
Breakpoint 0 hit
nt!KiThreadStartup+0xd:
80ae4209 ff153030a080 call dword ptr [nt!_imp_KfLowerIrql (80a03030)]
kd> p
nt!KiThreadStartup+0x13:
80ae420f 58 pop eax
kd> p
nt!KiThreadStartup+0x14:
80ae4210 ffd0 call eax
kd> t
nt!PspSystemThreadStartup:
80bd8178 6a08 push 8
kd> t
nt!PspSystemThreadStartup+0x2:
80bd817a 68d861a080 push offset nt!`string'+0x30 (80a061d8)
kd> t
nt!PspSystemThreadStartup+0x7:
80bd817f e8ac04f0ff call nt!_SEH_prolog (80ad8630)
kd> t
nt!_SEH_prolog:
80ad8630 686065ad80 push offset nt!_except_handler3 (80ad6560)
kd> t
nt!_SEH_prolog+0x5:
80ad8635 64a100000000 mov eax,dword ptr fs:[00000000h]
kd> t
nt!_SEH_prolog+0xb:
80ad863b 50 push eax
kd> t
nt!_SEH_prolog+0xc:
80ad863c 8b442410 mov eax,dword ptr [esp+10h]
kd> t
nt!_SEH_prolog+0x10:
80ad8640 896c2410 mov dword ptr [esp+10h],ebp
kd> t
nt!_SEH_prolog+0x14:
80ad8644 8d6c2410 lea ebp,[esp+10h]
kd> t
nt!_SEH_prolog+0x18:
80ad8648 2be0 sub esp,eax
kd> t
nt!_SEH_prolog+0x1a:
80ad864a 53 push ebx
kd> t
nt!_SEH_prolog+0x1b:
80ad864b 56 push esi
kd> t
nt!_SEH_prolog+0x1c:
80ad864c 57 push edi
kd> t
nt!_SEH_prolog+0x1d:
80ad864d 8b45f8 mov eax,dword ptr [ebp-8]
kd> t
nt!_SEH_prolog+0x20:
80ad8650 8965e8 mov dword ptr [ebp-18h],esp
kd> t
nt!_SEH_prolog+0x23:
80ad8653 50 push eax
kd> t
nt!_SEH_prolog+0x24:
80ad8654 8b45fc mov eax,dword ptr [ebp-4]
kd> t
nt!_SEH_prolog+0x27:
80ad8657 c745fcffffffff mov dword ptr [ebp-4],0FFFFFFFFh
kd> t
nt!_SEH_prolog+0x2e:
80ad865e 8945f8 mov dword ptr [ebp-8],eax
kd> t
nt!_SEH_prolog+0x31:
80ad8661 8d45f0 lea eax,[ebp-10h]
kd> t
nt!_SEH_prolog+0x34:
80ad8664 64a300000000 mov dword ptr fs:[00000000h],eax
kd> t
nt!_SEH_prolog+0x3a:
80ad866a c3 ret
kd> t
nt!PspSystemThreadStartup+0xc:
80bd8184 e84964e9ff call nt!MmAllowWorkingSetExpansion (80a6e5d2)
kd> t
nt!MmAllowWorkingSetExpansion:
80a6e5d2 8bff mov edi,edi
.
.
.

kd> t
hal!HalStartNextProcessor+0x278e:
801189ee 7533 jne hal!HalStartNextProcessor+0x27c3 (80118a23)
kd> t
hal!HalStartNextProcessor+0x27c3:
80118a23 43 inc ebx
kd> t
hal!HalStartNextProcessor+0x27c4:
80118a24 83c704 add edi,4
kd> t
hal!HalStartNextProcessor+0x27c7:
80118a27 6681fb0008 cmp bx,800h
kd> t
hal!HalStartNextProcessor+0x27cc:
80118a2c 72b6 jb hal!HalStartNextProcessor+0x2784 (801189e4)
kd> t
hal!HalStartNextProcessor+0x2784:
801189e4 8a07 mov al,byte ptr [edi]
kd> t
hal!HalStartNextProcessor+0x2786:
801189e6 8ac8 mov cl,al
kd> t
hal!HalStartNextProcessor+0x2788:
801189e8 80e10f and cl,0Fh
kd> t
hal!HalStartNextProcessor+0x278b:
801189eb 80f901 cmp cl,1
kd> t
hal!HalStartNextProcessor+0x278e:
801189ee 7533 jne hal!HalStartNextProcessor+0x27c3 (80118a23)
kd> t
hal!HalStartNextProcessor+0x27c3:
80118a23 43 inc ebx
kd> t
hal!HalStartNextProcessor+0x27c4:
80118a24 83c704 add edi,4
kd> t
hal!HalStartNextProcessor+0x27c7:
80118a27 6681fb0008 cmp bx,800h
kd> t
hal!HalStartNextProcessor+0x27cc:
80118a2c 72b6 jb hal!HalStartNextProcessor+0x2784 (801189e4)
kd> t
hal!HalStartNextProcessor+0x2784:
801189e4 8a07 mov al,byte ptr [edi]
kd> t
hal!HalStartNextProcessor+0x2786:
801189e6 8ac8 mov cl,al
kd> t
hal!HalStartNextProcessor+0x2788:
801189e8 80e10f and cl,0Fh

#8128diderius6
Breakpoint 0 hit
nt!KiThreadStartup+0xd:
80ae4209 ff153030a080 call dword ptr [nt!_imp_KfLowerIrql (80a03030)]
3: kd> p
nt!KiThreadStartup+0x13:
80ae420f 58 pop eax
3: kd> p
nt!KiThreadStartup+0x14:
80ae4210 ffd0 call eax
3: kd> p
PS: Unhandled Kernel Mode Exception Pointers = 0xBA4C2BD4
Code c0000005 Addr 8ABF7ED0 Info0 00000000 Info1 00000000 Info2 00000000 Info3 BA4C3118

*** Fatal System Error: 0x0000007e
(0xC0000005,0x8ABF7ED0,0xBA4C3088,0xBA4C2D84)

WARNING: This break is not a step/trace completion.
The last command has been cleared to prevent
accidental continuation of this unrelated event.
Check the event, location and thread before resuming.
Break instruction exception - code 80000003 (first chance)

A fatal system error has occurred.
Debugger entered on first try; Bugcheck callbacks have not been invoked.

A fatal system error has occurred.

Connected to Windows XP 2600 x86 compatible target at (Sat Oct 30 21:01:29.625 2021 (UTC + 2:00)), ptr64 FALSE
Loading Kernel Symbols
........................
Loading User Symbols

*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

Use !analyze -v to get detailed debugging information.

BugCheck 7E, {c0000005, 8abf7ed0, ba4c3088, ba4c2d84}

*** No owner thread found for resource 80afd640
*** No owner thread found for resource 80afd640
*** No owner thread found for resource 80afd640
*** No owner thread found for resource 80afd640
*** No owner thread found for resource 80afd640
*** No owner thread found for resource 80afd640
Probably caused by : ntkrpamp.exe ( nt!IopSynchronousCall+f0 )

Followup: MachineOwner
---------

nt!RtlpBreakWithStatusInstruction:
80ac37ec cc int 3
3: kd> !analyze -v
*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

SYSTEM_THREAD_EXCEPTION_NOT_HANDLED (7e)
This is a very common bugcheck. Usually the exception address pinpoints
the driver/function that caused the problem. Always note this address
as well as the link date of the driver/image that contains this address.
Arguments:
Arg1: c0000005, The exception code that was not handled
Arg2: 8abf7ed0, The address that the exception occurred at
Arg3: ba4c3088, Exception Record Address
Arg4: ba4c2d84, Context Record Address

Debugging Details:
------------------

*** No owner thread found for resource 80afd640
*** No owner thread found for resource 80afd640
*** No owner thread found for resource 80afd640
*** No owner thread found for resource 80afd640
*** No owner thread found for resource 80afd640
*** No owner thread found for resource 80afd640

EXCEPTION_CODE: (NTSTATUS) 0xc0000005 - Die Anweisung "0x%08lx" verweist auf Speicher bei "0x%08lx". Die Daten wurden wegen eines E/A-Fehlers in "0x%081x" nicht in den Arbeitsspeicher bertragen.

FAULTING_IP:
+1562faf00c0dfc0
8abf7ed0 1b0a sbb ecx,dword ptr [edx]

EXCEPTION_RECORD: ba4c3088 -- (.exr 0xffffffffba4c3088)
ExceptionAddress: 8abf7ed0
ExceptionCode: c0000005 (Access violation)
ExceptionFlags: 00000000
NumberParameters: 2
Parameter[0]: 00000000
Parameter[1]: 00000000
Attempt to read from address 00000000

CONTEXT: ba4c2d84 -- (.cxr 0xffffffffba4c2d84)
eax=08ac1cef ebx=00000000 ecx=00000001 edx=00000000 esi=e13a6288 edi=e13de148
eip=8abf7ed0 esp=ba4c3150 ebp=8ac1cf00 iopl=0 nv up ei ng nz ac po nc
cs=0008 ss=0010 ds=0023 es=0023 fs=0030 gs=0000 efl=00010292
8abf7ed0 1b0a sbb ecx,dword ptr [edx] ds:0023:00000000=????????
Resetting default scope

PROCESS_NAME: System

ERROR_CODE: (NTSTATUS) 0xc0000005 - Die Anweisung "0x%08lx" verweist auf Speicher bei "0x%08lx". Die Daten wurden wegen eines E/A-Fehlers in "0x%081x" nicht in den Arbeitsspeicher bertragen.

EXCEPTION_PARAMETER1: 00000000

EXCEPTION_PARAMETER2: 00000000

READ_ADDRESS: 00000000

FOLLOWUP_IP:
nt!IopSynchronousCall+f0
80b5e526 8bf0 mov esi,eax

FAILED_INSTRUCTION_ADDRESS:
+1562faf00c0dfc0
8abf7ed0 1b0a sbb ecx,dword ptr [edx]

BUGCHECK_STR: 0x7E

DEFAULT_BUCKET_ID: NULL_DEREFERENCE

LOCK_ADDRESS: 80afd6c0 -- (!locks 80afd6c0)

Resource @ nt!IopDeviceTreeLock (0x80afd6c0) Shared 1 owning threads
Threads: 8abfe258-01<*>
1 total locks, 1 locks currently held

PNP_TRIAGE:
Lock address : 0x80afd6c0
Thread Count : 1
Thread address: 0x8abfe258
Thread wait : 0x443

LAST_CONTROL_TRANSFER: from 80a30d7b to 80ac37ec

STACK_TEXT:
WARNING: Frame IP not in any known module. Following frames may be wrong.
ba4c3154 8011cfac 8ac1cf00 8abf7e7c 8ac1cf00 0x8abf7ed0
ba4c3170 80a21c8d 8ac1cf00 8abf7e60 8ac1cf00 hal!HalGetAdapter+0x2a0c
ba4c3188 80b5e526 8ac1c150 ba4c3264 00000000 nt!IopfCallDriver+0x51
ba4c31b4 80b602db 8ac1cf00 ba4c320c ba4c3264 nt!IopSynchronousCall+0xf0
ba4c3234 80b56451 8ac1cf00 00000000 ba4c3264 nt!IopQueryDeviceResources+0xdf
ba4c3268 80b5cb93 8ac1c150 80000368 00000001 nt!PiQueryAndAllocateBootResources+0x67
ba4c3358 80b5d26d 8ac1c150 8ac20008 8ac20190 nt!PipProcessNewDeviceNode+0xc9d
ba4c35b0 80b5db03 8ac20008 00000000 00000000 nt!PipProcessDevNodeTree+0x1bd
ba4c35e8 80a2d08e 8ac20190 80afd6f8 00000000 nt!PiProcessReenumeration+0xb1
ba4c3610 80a2d2fb 00000000 000f003f 00000000 nt!PipDeviceActionWorker+0x162
ba4c3628 80d37702 8abdfca0 00000009 00000000 nt!PipRequestDeviceAction+0x13b
ba4c3684 80d341c9 80085001 80000008 00034000 nt!IopInitializePlugPlayServices+0x702
ba4c3830 80d31940 80085000 00000000 8abfe258 nt!IoInitSystem+0x805
ba4c3dac 80bd81ac 80085000 00000000 00000000 nt!Phase1Initialization+0xb12
ba4c3ddc 80ae4212 80d30e2e 80085000 00000000 nt!PspSystemThreadStartup+0x34
00000000 00000000 00000000 00000000 00000000 nt!KiThreadStartup+0x16


SYMBOL_STACK_INDEX: 3

SYMBOL_NAME: nt!IopSynchronousCall+f0

FOLLOWUP_NAME: MachineOwner

MODULE_NAME: nt

IMAGE_NAME: ntkrpamp.exe

DEBUG_FLR_IMAGE_TIMESTAMP: 4802b3ce

STACK_COMMAND: .cxr 0xffffffffba4c2d84 ; kb

FAILURE_BUCKET_ID: 0x7E_BAD_IP_nt!IopSynchronousCall+f0

BUCKET_ID: 0x7E_BAD_IP_nt!IopSynchronousCall+f0

Followup: MachineOwner
---------

3: kd> lm
start end module name
80100000 80126a00 hal (export symbols) halmacpi.dll
80a02000 80da3000 nt (pdb symbols) c:\symbols\ntkrpamp.pdb\5B9E8A586D3D49D98927B5D5117577231\ntkrpamp.pdb
b9b19000 b9b32e80 Mup (deferred)
b9b33000 b9b5fa80 NDIS (deferred)
b9b60000 b9becd00 Ntfs (deferred)
b9bed000 b9c03b80 KSecDD (deferred)
b9c04000 b9c15f00 sr (deferred)
b9c16000 b9c35b00 fltMgr (deferred)
b9c36000 b9eeb000 iaStor (deferred)
b9eeb000 b9f10700 dmio (deferred)
b9f11000 b9f2f880 ftdisk (deferred)
b9f30000 b9f40a80 pci (deferred)
b9f41000 b9f63700 ntoskrn8 (deferred)
b9f64000 b9fa7000 ACPI (deferred)
ba0a8000 ba0b1180 isapnp (deferred)
ba0b8000 ba0c2700 MountMgr (deferred)
ba0c8000 ba0d3000 PartMgr (deferred)
ba0d8000 ba0e4c80 VolSnap (deferred)
ba0e8000 ba0f8000 disk (deferred)
ba0f8000 ba104180 CLASSPNP (deferred)
ba328000 ba32e800 firadisk (deferred)
ba4b8000 ba4bb000 BOOTVID (deferred)
ba5a8000 ba5a9b80 kdcom (deferred)
ba5aa000 ba5ab100 WMILIB (deferred)
ba5ac000 ba5ad700 dmload (deferred)

#8129infuscomus⇗ @diderius6

Tomorrow I'll try patching ntoskrnl with missing functions instead of using the extender and see if that works.
#8130diderius6⇗ @infuscomus

I am still looking, where exact in Debug XP SP3 ntkrnlpa.exe this BSOD with IopSynchronousCall
happens.
FOLLOWUP_IP: 
nt!IopSynchronousCall+f0
80b5e526 8bf0 mov esi,eax

FAILED_INSTRUCTION_ADDRESS:
+1562faf0094dfc0
8abf7ed0 040a add al,0Ah

BUGCHECK_STR: 0x7E

DEFAULT_BUCKET_ID: NULL_DEREFERENCE


Dietmar

 

Page 543

#8131diderius6
nt!RtlpBreakWithStatusInstruction:
80ac37ec cc int 3
kd> g
Breakpoint 0 hit
nt!IopSynchronousCall+0xf0:
80b5e526 8bf0 mov esi,eax
3: kd> t
nt!IopSynchronousCall+0xf2:
80b5e528 8b450c mov eax,dword ptr [ebp+0Ch]
3: kd> t
nt!IopSynchronousCall+0xf5:
80b5e52b 0fb64801 movzx ecx,byte ptr [eax+1]
3: kd> t
nt!IopSynchronousCall+0xf9:
80b5e52f 33c0 xor eax,eax
3: kd> t
nt!IopSynchronousCall+0xfb:
80b5e531 40 inc eax
3: kd> t
nt!IopSynchronousCall+0xfc:
80b5e532 d3e0 shl eax,cl
3: kd> t
nt!IopSynchronousCall+0xfe:
80b5e534 bb03010000 mov ebx,103h
3: kd> t
nt!IopSynchronousCall+0x103:
80b5e539 8505a8d9af80 test dword ptr [nt!PnpIrpMask (80afd9a8)],eax
3: kd> t
nt!IopSynchronousCall+0x109:
80b5e53f 7424 je nt!IopSynchronousCall+0x12f (80b5e565)
3: kd> t
nt!IopSynchronousCall+0x12f:
80b5e565 3bf3 cmp esi,ebx
3: kd> t
nt!IopSynchronousCall+0x131:
80b5e567 7512 jne nt!IopSynchronousCall+0x145 (80b5e57b)
3: kd> t
nt!IopSynchronousCall+0x145:
80b5e57b 8b4510 mov eax,dword ptr [ebp+10h]
3: kd> t
nt!IopSynchronousCall+0x148:
80b5e57e 85c0 test eax,eax
3: kd> t
nt!IopSynchronousCall+0x14a:
80b5e580 5f pop edi
3: kd> t
nt!IopSynchronousCall+0x14b:
80b5e581 7405 je nt!IopSynchronousCall+0x152 (80b5e588)
3: kd> t
nt!IopSynchronousCall+0x152:
80b5e588 8bc6 mov eax,esi
3: kd> t
nt!IopSynchronousCall+0x154:
80b5e58a 5e pop esi
3: kd> t
nt!IopSynchronousCall+0x155:
80b5e58b 5b pop ebx
3: kd> t
nt!IopSynchronousCall+0x156:
80b5e58c c9 leave
3: kd> t
nt!IopSynchronousCall+0x157:
80b5e58d c20c00 ret 0Ch
3: kd> t
nt!PipQueryDeviceCapabilities+0x57:
80b573fb 8bf0 mov esi,eax

#8132infuscomus⇗ @diderius6

maybe point of failure is in ntoskrn8.sys? I'm sure I gave you the symbols for it.
#8133diderius6⇗ @infuscomus
Because I succeed to jmp behind the point of crash,
now it seems to boot to desktop,
with Windbg it can laaast an hour
Dietmar

EDIT: No, XP hangs during boot in an endless loop now with scrawling bar all the time.
#8134diderius6⇗ @infuscomus

I found the place of crash in ntoskrnl

.text:0041FC96 ; =============== S U B R O U T I N E =======================================
.text:0041FC96
.text:0041FC96
.text:0041FC96 ; __fastcall IofCallDriver(x, x)
.text:0041FC96 public @IofCallDriver@8
.text:0041FC96 @IofCallDriver@8 proc near ; CODE XREF: CcSetValidData(x,x)+A0↑p
.text:0041FC96 ; HalExamineMBR(x,x,x,x)+88↑p ...
.text:0041FC96 jmp _pIofCallDriver
.text:0041FC96 @IofCallDriver@8 endp
.text:0041FC96


Dietmar

PAGE:0055C436 ; __stdcall IopSynchronousCall(x, x, x)
PAGE:0055C436 _IopSynchronousCall@12 proc near ; CODE XREF: IopQueryDeviceRelations(x,x,x,x)+40↑p
PAGE:0055C436 ; IoFreeDumpStack(x)+8E↑p ...
PAGE:0055C436
PAGE:0055C436 Object = byte ptr -18h
PAGE:0055C436 var_16 = byte ptr -16h
PAGE:0055C436 var_14 = dword ptr -14h
PAGE:0055C436 var_10 = dword ptr -10h
PAGE:0055C436 var_C = dword ptr -0Ch
PAGE:0055C436 var_8 = dword ptr -8
PAGE:0055C436 var_4 = dword ptr -4
PAGE:0055C436 arg_0 = dword ptr 8
PAGE:0055C436 arg_4 = dword ptr 0Ch
PAGE:0055C436 arg_8 = dword ptr 10h
PAGE:0055C436
PAGE:0055C436 mov edi, edi
PAGE:0055C438 push ebp
PAGE:0055C439 mov ebp, esp
PAGE:0055C43B sub esp, 18h
PAGE:0055C43E push ebx
PAGE:0055C43F push esi
PAGE:0055C440 mov esi, ds:__imp__KeGetCurrentIrql@0 ; KeGetCurrentIrql()
PAGE:0055C446 call esi ; KeGetCurrentIrql() ; KeGetCurrentIrql()
PAGE:0055C448 cmp al, 1
PAGE:0055C44A jbe short loc_55C477
PAGE:0055C44C call esi ; KeGetCurrentIrql() ; KeGetCurrentIrql()
PAGE:0055C44E movzx eax, al
PAGE:0055C451 push eax
PAGE:0055C452 push offset asc_55C3AE ; "EX: Pageable code called at IRQL %d\n"
PAGE:0055C457 call _DbgPrint
PAGE:0055C45C pop ecx
PAGE:0055C45D pop ecx
PAGE:0055C45E xor esi, esi
PAGE:0055C460 push esi ; Message
PAGE:0055C461 push 12Dh ; LineNumber
PAGE:0055C466 push offset asc_55C3D6 ; "d:\\xpsp\\base\\ntos\\io\\pnpmgr\\pnpirp.c"
PAGE:0055C46B push offset asc_55C3FE ; "FALSE"
PAGE:0055C470 call _RtlAssert@16 ; RtlAssert(x,x,x,x)
PAGE:0055C475 jmp short loc_55C479
PAGE:0055C477 ; ---------------------------------------------------------------------------
PAGE:0055C477
PAGE:0055C477 loc_55C477: ; CODE XREF: IopSynchronousCall(x,x,x)+14 j
PAGE:0055C477 xor esi, esi
PAGE:0055C479
PAGE:0055C479 loc_55C479: ; CODE XREF: IopSynchronousCall(x,x,x)+3F j
PAGE:0055C479 push [ebp+arg_0]
PAGE:0055C47C call _IoGetAttachedDevice@4 ; IoGetAttachedDevice(x)
PAGE:0055C481 mov [ebp+arg_0], eax
PAGE:0055C484 movsx eax, byte ptr [eax+30h]
PAGE:0055C488 push esi ; ChargeQuota
PAGE:0055C489 push eax ; StackSize
PAGE:0055C48A call _IoAllocateIrp@8 ; IoAllocateIrp(x,x)
PAGE:0055C48F mov ebx, eax
PAGE:0055C491 cmp ebx, esi
PAGE:0055C493 jnz short loc_55C49F
PAGE:0055C495 mov eax, 0C000009Ah
PAGE:0055C49A jmp loc_55C58A
PAGE:0055C49F ; ---------------------------------------------------------------------------
PAGE:0055C49F
PAGE:0055C49F loc_55C49F: ; CODE XREF: IopSynchronousCall(x,x,x)+5D j
PAGE:0055C49F xor edx, edx
PAGE:0055C4A1 push edi
PAGE:0055C4A2 inc edx
PAGE:0055C4A3 mov ecx, ebx
PAGE:0055C4A5 call @IovUtilWatermarkIrp@8 ; IovUtilWatermarkIrp(x,x)
PAGE:0055C4AA mov eax, 0C00000BBh
PAGE:0055C4AF mov [ebp+var_8], eax
PAGE:0055C4B2 mov [ebx+18h], eax
PAGE:0055C4B5 mov [ebp+var_4], esi
PAGE:0055C4B8 mov [ebx+1Ch], esi
PAGE:0055C4BB lea eax, [ebp+var_10]
PAGE:0055C4BE mov [ebp+var_C], eax
PAGE:0055C4C1 mov [ebp+var_10], eax
PAGE:0055C4C4 lea eax, [ebp+var_8]
PAGE:0055C4C7 mov [ebp+Object], 1
PAGE:0055C4CB mov [ebp+var_16], 4
PAGE:0055C4CF mov [ebp+var_14], esi
PAGE:0055C4D2 mov [ebx+28h], eax
PAGE:0055C4D5 lea eax, [ebp+Object]
PAGE:0055C4D8 mov [ebx+2Ch], eax
PAGE:0055C4DB mov eax, large fs:124h
PAGE:0055C4E1 mov cl, 1
PAGE:0055C4E3 mov [ebx+50h], eax
PAGE:0055C4E6 call ds:__imp_@KfRaiseIrql@4 ; KfRaiseIrql(x)
PAGE:0055C4EC mov edx, [ebx+50h]
PAGE:0055C4EF add edx, 210h
PAGE:0055C4F5 mov edi, [edx]
PAGE:0055C4F7 lea esi, [ebx+10h]
PAGE:0055C4FA mov [esi], edi
PAGE:0055C4FC mov [esi+4], edx
PAGE:0055C4FF mov [edi+4], esi
PAGE:0055C502 mov cl, al
PAGE:0055C504 mov [edx], esi
PAGE:0055C506 call ds:__imp_@KfLowerIrql@4 ; KfLowerIrql(x)
PAGE:0055C50C mov edi, [ebx+60h]
PAGE:0055C50F mov esi, [ebp+arg_4]
PAGE:0055C512 push 9
PAGE:0055C514 sub edi, 24h
PAGE:0055C517 pop ecx
PAGE:0055C518 rep movsd
PAGE:0055C51A mov edi, [ebp+arg_0]
PAGE:0055C51D mov edx, ebx
PAGE:0055C51F mov ecx, edi
PAGE:0055C521 call @IofCallDriver@8 ; IofCallDriver(x,x)
PAGE:0055C526 mov esi, eax

PAGE:0055C528 mov eax, [ebp+arg_4]
PAGE:0055C52B movzx ecx, byte ptr [eax+1]
PAGE:0055C52F xor eax, eax
PAGE:0055C531 inc eax
PAGE:0055C532 shl eax, cl
PAGE:0055C534 mov ebx, 103h
PAGE:0055C539 test dword ptr _PnpIrpMask, eax
PAGE:0055C53F jz short loc_55C565
PAGE:0055C541 test esi, esi
PAGE:0055C543 jl short loc_55C549
PAGE:0055C545 cmp esi, ebx
PAGE:0055C547 jnz short loc_55C57B
PAGE:0055C549
PAGE:0055C549 loc_55C549: ; CODE XREF: IopSynchronousCall(x,x,x)+10D j
PAGE:0055C549 mov eax, [edi+8]
PAGE:0055C54C push esi
PAGE:0055C54D add eax, 1Ch
PAGE:0055C550 push eax
PAGE:0055C551 push _IrpName[ecx*4]
PAGE:0055C558 push offset aSDriverWzRet_0 ; " ++ %s Driver ( %wZ ) return status %08"...
PAGE:0055C55D call _DbgPrint
PAGE:0055C562 add esp, 10h
PAGE:0055C565
PAGE:0055C565 loc_55C565: ; CODE XREF: IopSynchronousCall(x,x,x)+109 j
PAGE:0055C565 cmp esi, ebx
PAGE:0055C567 jnz short loc_55C57B
PAGE:0055C569 xor eax, eax
PAGE:0055C56B push eax ; Timeout
PAGE:0055C56C push eax ; Alertable
PAGE:0055C56D push eax ; WaitMode
PAGE:0055C56E push eax ; WaitReason
PAGE:0055C56F lea eax, [ebp+Object]
PAGE:0055C572 push eax ; Object
PAGE:0055C573 call _KeWaitForSingleObject@20 ; KeWaitForSingleObject(x,x,x,x,x)
PAGE:0055C578 mov esi, [ebp+var_8]
PAGE:0055C57B
PAGE:0055C57B loc_55C57B: ; CODE XREF: IopSynchronousCall(x,x,x)+111 j
PAGE:0055C57B ; IopSynchronousCall(x,x,x)+131 j
PAGE:0055C57B mov eax, [ebp+arg_8]
PAGE:0055C57E test eax, eax
PAGE:0055C580 pop edi
PAGE:0055C581 jz short loc_55C588
PAGE:0055C583 mov ecx, [ebp+var_4]
PAGE:0055C586 mov [eax], ecx
PAGE:0055C588
PAGE:0055C588 loc_55C588: ; CODE XREF: IopSynchronousCall(x,x,x)+14B j
PAGE:0055C588 mov eax, esi
PAGE:0055C58A
PAGE:0055C58A loc_55C58A: ; CODE XREF: IopSynchronousCall(x,x,x)+64 j
PAGE:0055C58A pop esi
PAGE:0055C58B pop ebx
PAGE:0055C58C leave
PAGE:0055C58D retn 0Ch
PAGE:0055C58D _IopSynchronousCall@12 endp
PAGE:0055C58D

#8135diderius6It looks, as if a driver is hanging

NTSTATUS
FASTCALL
IofCallDriver(
IN PDEVICE_OBJECT DeviceObject,
IN OUT PIRP Irp
);

Routine Description:

This routine is invoked to pass an I/O Request Packet (IRP) to another
driver at its dispatch routine.

Arguments:

DeviceObject - Pointer to device object to which the IRP should be passed.

Irp - Pointer to IRP for request.

Return Value:

Return status from driver's dispatch routine.
#8136diderius6This looks,
as if this hal.dll does not like my MBR?!

HalExamineMBR function (ntddk.h)

2 minutes to read

The HalExamineMBR routine reads the master boot record (MBR) of a disk and returns data from the MBR if the MBR is of the type specified by the caller.
Syntax

void HalExamineMBR(
[in] PDEVICE_OBJECT DeviceObject,
[in] ULONG SectorSize,
[in] ULONG MBRTypeIdentifier,
[out] PVOID *Buffer
);

Parameters

[in] DeviceObject

A pointer to the device object for the device being examined.

[in] SectorSize

The minimum number of bytes that an I/O operation can fetch from the device being examined. If this value is less than 512, HalExamineMBR reads 512 bytes to ensure that it reads an entire partition table.

[in] MBRTypeIdentifier

MBR partition type identifier. This parameter specifies the type of MBR that may be on the disk. For more information, see Remarks.

[out] Buffer

A pointer to a location to which HalExamineMBR writes a pointer to a buffer that contains data from the MBR. The layout of the buffer depends on the MBR partition type. HalExamineMBR allocates the storage for this buffer. The caller must deallocate this buffer as soon as possible by calling the ExFreePool routine.

HalExamineMBR sets *Buffer = NULL if the MBR partition type of the disk does not match that specified by MBRTypeIdentifier or if there is an error.
Return value

None
Remarks

For a list of system-defined MBR partition type identifiers, see the table in PARTITION_INFORMATION. These identifiers are defined in the Ntdddisk.h header file.
Requirements

Minimum supported client Available starting with Windows XP.
Target Platform Universal
Header ntddk.h (include Ntddk.h)
IRQL PASSIVE_LEVEL
DDI compliance rules PowerIrpDDis, HwStorPortProhibitedDDIs
#8137infuscomus⇗ @diderius6

I'm guessing no MBR because no ACPI?
#8138Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #8128
*** Fatal System Error: 0x0000007e
(0xC0000005,0x8ABF7ED0,0xBA4C3088,0xBA4C2D84)

CONTEXT: ba4c2d84 -- (.cxr 0xffffffffba4c2d84)
eax=08ac1cef ebx=00000000 ecx=00000001 edx=00000000 esi=e13a6288 edi=e13de148

FAILED_INSTRUCTION_ADDRESS:
+1562faf00c0dfc0
8abf7ed0 1b0a sbb ecx,dword ptr [edx]


STACK_TEXT:
ba4c3154 8011cfac 8ac1cf00 8abf7e7c 8ac1cf00 0x8abf7ed0
ba4c3170 80a21c8d 8ac1cf00 8abf7e60 8ac1cf00 hal!HalGetAdapter+0x2a0c
ba4c3188 80b5e526 8ac1c150 ba4c3264 00000000 nt!IopfCallDriver+0x51


CPU was jumped/called to random address with non-code bytes
hal!HalGetAdapter - init DMA functions
0x8abf7ed0 - bad adress,  drivers loaded to 0xb9xxxxx, kernel loaded to 0x80xxxxxx
#8139Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #8135
It looks, as if a driver is hanging
NTSTATUS
FASTCALL
IofCallDriver(
IN PDEVICE_OBJECT DeviceObject,
IN OUT PIRP Irp
);


IopfCallDriver is standart way to call driver functions from other driver
for example HAL can call ACPI and vice versa, Irp is buffer with many data: which function to call, arguments, custom data, etc
#8140Mov AX, 0xDEAD⇗ @diderius6

Zitat von ⇗ diderius6 im Beitrag ¶ #8115
@Mov AX, 0xDEAD
"if someone will implement "new timer api" you'l get usb3"

Until now, I have no idea how to make this.
But I can learn a lot, so.. if there is a chance to integrate more drivers from Win8.1 into XP..


Just missed Extended Timing functions from 8.1 kernel: ExAllocateTimer, ExDeleteTimer, ExCancelTimer, ExSetTimer
add to Emu Extender or patch manually as Gen1 usb3 driver
#8141diderius6⇗ @Mov AX, 0xDEAD

With Windbg I found the exact place, where hal.dll crashes.
First I thought, it is because ESI = C8h (this is the waiting time for the cpu in Microsec).
in hal.dll from XP SP3 is at this place ESI = 7D0h .

PAGELK:80028509 ; =============== S U B R O U T I N E =======================================
PAGELK:80028509
PAGELK:80028509 ; Attributes: bp-based frame
PAGELK:80028509
PAGELK:80028509 sub_80028509 proc near ; CODE XREF: HalStartNextProcessor+CA↑p
PAGELK:80028509
PAGELK:80028509 arg_0 = dword ptr 8
PAGELK:80028509 arg_4 = dword ptr 0Ch
PAGELK:80028509
PAGELK:80028509 push ebp
PAGELK:8002850A mov ebp, esp
PAGELK:8002850C push ebx
PAGELK:8002850D mov ebx, [ebp+arg_0]
PAGELK:80028510 test ebx, 0FFF00FFFh
PAGELK:80028516 push edi
PAGELK:80028517 mov edi, 0FFFE0300h
PAGELK:8002851C jz short loc_80028535
PAGELK:8002851E push 0 ; Message
PAGELK:80028520 push 306h ; LineNumber
PAGELK:80028525 push offset aEXpsp1BaseH_61 ; "e:\\xpsp1\\base\\hals\\halmps\\i386\\mpsproc."...
PAGELK:8002852A push offset aUlongInitcodep ; "(((ULONG) InitCodePhysAddr) & 0xfff00ff"...
PAGELK:8002852F call ds:RtlAssert
PAGELK:80028535
PAGELK:80028535 loc_80028535: ; CODE XREF: sub_80028509+13 j
PAGELK:80028535 mov eax, [ebp+arg_4]
PAGELK:80028538 cmp eax, dword_80024644
PAGELK:8002853E jnb short loc_8002854E
PAGELK:80028540 lea ecx, [ebp+arg_0+3]
PAGELK:80028543 push ecx
PAGELK:80028544 push eax
PAGELK:80028545 call sub_8001972E
PAGELK:8002854A test eax, eax
PAGELK:8002854C jge short loc_80028555
PAGELK:8002854E
PAGELK:8002854E loc_8002854E: ; CODE XREF: sub_80028509+35 j
PAGELK:8002854E xor eax, eax
PAGELK:80028550 jmp loc_80028615
PAGELK:80028555 ; ---------------------------------------------------------------------------
PAGELK:80028555
PAGELK:80028555 loc_80028555: ; CODE XREF: sub_80028509+43 j
PAGELK:80028555 cmp dword_8001F9C4, 0
PAGELK:8002855C jz short loc_80028568
PAGELK:8002855E movzx eax, byte ptr [ebp+arg_0+3]
PAGELK:80028562 inc eax
PAGELK:80028563 jmp loc_80028615
PAGELK:80028568 ; ---------------------------------------------------------------------------
PAGELK:80028568
PAGELK:80028568 loc_80028568: ; CODE XREF: sub_80028509+53 j
PAGELK:80028568 push esi
PAGELK:80028569 mov esi, 0C8h ===> 7D0h in Hal.dll from SP3
PAGELK:8002856E push esi ; MicroSeconds
PAGELK:8002856F call KeStallExecutionProcessor
PAGELK:80028574 push 64h
PAGELK:80028576 mov edx, 0FFFE0300h
PAGELK:8002857B pop ecx
PAGELK:8002857C call sub_80011CF4
PAGELK:80028581 test eax, eax
PAGELK:80028583 jnz short loc_8002858C
PAGELK:80028585
PAGELK:80028585 loc_80028585: ; CODE XREF: sub_80028509+E7 j
PAGELK:80028585 xor eax, eax
PAGELK:80028587 jmp loc_80028614
PAGELK:8002858C ; ---------------------------------------------------------------------------
PAGELK:8002858C
PAGELK:8002858C loc_8002858C: ; CODE XREF: sub_80028509+7A j
PAGELK:8002858C movzx ecx, byte ptr [ebp+arg_0+3]
PAGELK:80028590 shl ecx, 18h
PAGELK:80028593 mov eax, 0FFFE0310h
PAGELK:80028598 mov [eax], ecx
PAGELK:8002859A mov dword ptr [edi], 0C500h
PAGELK:800285A0 push 0Ah ; MicroSeconds
PAGELK:800285A2 call KeStallExecutionProcessor
PAGELK:800285A7 push esi ; MicroSeconds
PAGELK:800285A8 mov dword ptr [edi], 8500h
PAGELK:800285AE call KeStallExecutionProcessor
PAGELK:800285B3 cmp dword_80024640, 0
PAGELK:800285BA jz short loc_8002860F
PAGELK:800285BC movzx ecx, byte ptr [ebp+arg_0+3]
PAGELK:800285C0 and ebx, 0FF000h
PAGELK:800285C6 or ebx, 600000h
PAGELK:800285CC shl ecx, 18h
PAGELK:800285CF mov eax, 0FFFE0310h
PAGELK:800285D4 shr ebx, 0Ch
PAGELK:800285D7 mov [eax], ecx
PAGELK:800285D9 push esi ; MicroSeconds
PAGELK:800285DA mov [edi], ebx
PAGELK:800285DC call KeStallExecutionProcessor ===> Place of crash, compi restarts, no BSOD
PAGELK:800285E1 push 64h
PAGELK:800285E3 mov edx, 0FFFE0300h
PAGELK:800285E8 pop ecx
PAGELK:800285E9 call sub_80011CF4
PAGELK:800285EE test eax, eax
PAGELK:800285F0 jz short loc_80028585
PAGELK:800285F2 push 64h ; MicroSeconds
PAGELK:800285F4 call KeStallExecutionProcessor
PAGELK:800285F9 movzx ecx, byte ptr [ebp+arg_0+3]
PAGELK:800285FD shl ecx, 18h
PAGELK:80028600 mov eax, 0FFFE0310h
PAGELK:80028605 mov [eax], ecx
PAGELK:80028607 push esi ; MicroSeconds
PAGELK:80028608 mov [edi], ebx
PAGELK:8002860A call KeStallExecutionProcessor
PAGELK:8002860F
PAGELK:8002860F loc_8002860F: ; CODE XREF: sub_80028509+B1 j
PAGELK:8002860F movzx eax, byte ptr [ebp+arg_0+3]
PAGELK:80028613 inc eax
PAGELK:80028614
PAGELK:80028614 loc_80028614: ; CODE XREF: sub_80028509+7E j
PAGELK:80028614 pop esi
PAGELK:80028615
PAGELK:80028615 loc_80028615: ; CODE XREF: sub_80028509+47 j
PAGELK:80028615 ; sub_80028509+5A j
PAGELK:80028615 pop edi
PAGELK:80028616 pop ebx
PAGELK:80028617 pop ebp
PAGELK:80028618 retn 8
PAGELK:80028618 sub_80028509 endp
PAGELK:80028618
PAGELK:80028618 ; ---------------------------------------------------------------------------
PAGELK:8002861B align 4
PAGELK:8002861C
PAGELK:8002861C ; =============== S U B R O U T I N E =======================================


.text:80018930 KeStallExecutionProcessor proc near ; CODE XREF: sub_80013DC8+7C↑p
.text:80018930 ; sub_80013E6E+7C↑p ...
.text:80018930
.text:80018930 MicroSeconds = dword ptr 8
.text:80018930
.text:80018930 push ebp
.text:80018931 mov ebp, esp
.text:80018933 pop ebp
.text:80018934 jmp ds:off_8001F444
.text:80018934 KeStallExecutionProcessor endp
.text:80018934


#8142diderius6I change the time for wait in hal.dll to 7D0h as you can see on photo in ESI=7D0h.
But it does not help.

This error is reproducible,
compi always crash at
*85DA                 mov     [edi], ebx
*85DC call KeStallExecutionProcessor =====> crash and reboot without Bsod
*85E1 push 64h
On photo you can see, that EBX = 60c .
Is this wrong address, so that  KeStallExecutionProcessor cant be found?


#8143diderius6⇗ @infuscomus

The Bsod comes from your new hal.dll.

I test your new hal.dll with original ntoskrnl and acpi.sys from XP SP3
and there it crashes also.
With the hal.dll, which you send me before build from Sources SP1 it boots to desktop with acpi.sys from XP SP3
Dietmar
#8144infuscomus⇗ @diderius6

Thanks for testing, appreciate it.
I think this is beyond my skills so I'm giving up for now.
#8145Bumpyif you have the source code you can change every asserts and such
to outputs in a text file all executed functions + parameters + data etc.

 

Page 544

#8146diderius6⇗ @infuscomus

How do you generate this hal.dll?
Did you change anything compared to the Hal.dll form Sources SP1,
that you send to me few days ago
Dietmar
#8147infuscomus⇗ @diderius6

I added some stub functions to this HAL for the Vista RTM acpi.sys to resolve missing dependencies that are missing from XP HAL.
#8148Mov AX, 0xDEAD
Zitat von ⇗ diderius6 im Beitrag ¶ #8142
*85DA                 mov     [edi], ebx
*85DC call KeStallExecutionProcessor =====> crash and reboot without Bsod
*85E1 push 64h


KeStallExecutionProcessor depends on timer counter, before first call to KeStallExecutionProcessor, hal determinate which timer counter to use (usually RDTSC counter). If it really hangs on first call to KeStallExecutionProcessor, it means execution path at HAL is wrong
In Vista+ loaders KeStallExecutionProcessor already inited by loader before loading kernel

if it is not first call, you have problem with this function, it write to APIC hardware to start up additional cores, it hangs at apic, not at Stall cycle
#8149diderius6⇗ @Mov AX, 0xDEAD

I make hack for to overcome all call KeStallExecutionProcessor

PAGELK:80028509 ; =============== S U B R O U T I N E =======================================
PAGELK:80028509
PAGELK:80028509 ; Attributes: bp-based frame
PAGELK:80028509
PAGELK:80028509 sub_80028509 proc near ; CODE XREF: HalStartNextProcessor+CA↑p
PAGELK:80028509
PAGELK:80028509 arg_0 = dword ptr 8
PAGELK:80028509 arg_4 = dword ptr 0Ch
PAGELK:80028509
PAGELK:80028509 push ebp
PAGELK:8002850A mov ebp, esp
PAGELK:8002850C push ebx
PAGELK:8002850D mov ebx, [ebp+arg_0]
PAGELK:80028510 test ebx, 0FFF00FFFh
PAGELK:80028516 push edi
PAGELK:80028517 mov edi, 0FFFE0300h
PAGELK:8002851C jz short loc_80028535
PAGELK:8002851E push 0 ; Message
PAGELK:80028520 push 306h ; LineNumber
PAGELK:80028525 push offset aEXpsp1BaseH_61 ; "e:\\xpsp1\\base\\hals\\halmps\\i386\\mpsproc."...
PAGELK:8002852A push offset aUlongInitcodep ; "(((ULONG) InitCodePhysAddr) & 0xfff00ff"...
PAGELK:8002852F call ds:RtlAssert
PAGELK:80028535
PAGELK:80028535 loc_80028535: ; CODE XREF: sub_80028509+13 j
PAGELK:80028535 mov eax, [ebp+arg_4]
PAGELK:80028538 cmp eax, dword_80024644
PAGELK:8002853E jnb short loc_8002854E
PAGELK:80028540 lea ecx, [ebp+arg_0+3]
PAGELK:80028543 push ecx
PAGELK:80028544 push eax
PAGELK:80028545 call sub_8001972E
PAGELK:8002854A test eax, eax
PAGELK:8002854C jge short loc_80028555 ==> Nop Nop (90 90)
PAGELK:8002854E
PAGELK:8002854E loc_8002854E: ; CODE XREF: sub_80028509+35 j
PAGELK:8002854E xor eax, eax
PAGELK:80028550 jmp loc_80028615
PAGELK:80028555 ; ---------------------------------------------------------------------------
PAGELK:80028555
PAGELK:80028555 loc_80028555: ; CODE XREF: sub_80028509+43 j
PAGELK:80028555 cmp dword_8001F9C4, 0
PAGELK:8002855C jz short loc_80028568
PAGELK:8002855E movzx eax, byte ptr [ebp+arg_0+3]
PAGELK:80028562 inc eax
PAGELK:80028563 jmp loc_80028615
PAGELK:80028568 ; ---------------------------------------------------------------------------
PAGELK:80028568
PAGELK:80028568 loc_80028568: ; CODE XREF: sub_80028509+53 j
PAGELK:80028568 push esi
PAGELK:80028569 mov esi, 0C8h
PAGELK:8002856E push esi ; MicroSeconds
PAGELK:8002856F call KeStallExecutionProcessor
PAGELK:80028574 push 64h
PAGELK:80028576 mov edx, 0FFFE0300h
PAGELK:8002857B pop ecx
PAGELK:8002857C call sub_80011CF4
PAGELK:80028581 test eax, eax
PAGELK:80028583 jnz short loc_8002858C
PAGELK:80028585
PAGELK:80028585 loc_80028585: ; CODE XREF: sub_80028509+E7 j
PAGELK:80028585 xor eax, eax
PAGELK:80028587 jmp loc_80028614
PAGELK:8002858C ; ---------------------------------------------------------------------------
PAGELK:8002858C
PAGELK:8002858C loc_8002858C: ; CODE XREF: sub_80028509+7A j
PAGELK:8002858C movzx ecx, byte ptr [ebp+arg_0+3]
PAGELK:80028590 shl ecx, 18h
PAGELK:80028593 mov eax, 0FFFE0310h
PAGELK:80028598 mov [eax], ecx
PAGELK:8002859A mov dword ptr [edi], 0C500h
PAGELK:800285A0 push 0Ah ; MicroSeconds
PAGELK:800285A2 call KeStallExecutionProcessor
PAGELK:800285A7 push esi ; MicroSeconds
PAGELK:800285A8 mov dword ptr [edi], 8500h
PAGELK:800285AE call KeStallExecutionProcessor
PAGELK:800285B3 cmp dword_80024640, 0
PAGELK:800285BA jz short loc_8002860F
PAGELK:800285BC movzx ecx, byte ptr [ebp+arg_0+3]
PAGELK:800285C0 and ebx, 0FF000h
PAGELK:800285C6 or ebx, 600000h
PAGELK:800285CC shl ecx, 18h
PAGELK:800285CF mov eax, 0FFFE0310h
PAGELK:800285D4 shr ebx, 0Ch
PAGELK:800285D7 mov [eax], ecx
PAGELK:800285D9 push esi ; MicroSeconds
PAGELK:800285DA mov [edi], ebx
PAGELK:800285DC call KeStallExecutionProcessor

PAGELK:800285E1 push 64h
PAGELK:800285E3 mov edx, 0FFFE0300h
PAGELK:800285E8 pop ecx
PAGELK:800285E9 call sub_80011CF4
PAGELK:800285EE test eax, eax
PAGELK:800285F0 jz short loc_80028585
PAGELK:800285F2 push 64h ; MicroSeconds
PAGELK:800285F4 call KeStallExecutionProcessor
PAGELK:800285F9 movzx ecx, byte ptr [ebp+arg_0+3]
PAGELK:800285FD shl ecx, 18h
PAGELK:80028600 mov eax, 0FFFE0310h
PAGELK:80028605 mov [eax], ecx
PAGELK:80028607 push esi ; MicroSeconds
PAGELK:80028608 mov [edi], ebx
PAGELK:8002860A call KeStallExecutionProcessor
PAGELK:8002860F
PAGELK:8002860F loc_8002860F: ; CODE XREF: sub_80028509+B1 j
PAGELK:8002860F movzx eax, byte ptr [ebp+arg_0+3]
PAGELK:80028613 inc eax
PAGELK:80028614
PAGELK:80028614 loc_80028614: ; CODE XREF: sub_80028509+7E j
PAGELK:80028614 pop esi
PAGELK:80028615
PAGELK:80028615 loc_80028615: ; CODE XREF: sub_80028509+47 j
PAGELK:80028615 ; sub_80028509+5A j
PAGELK:80028615 pop edi
PAGELK:80028616 pop ebx
PAGELK:80028617 pop ebp
PAGELK:80028618 retn 8
PAGELK:80028618 sub_80028509 endp
PAGELK:80028618
PAGELK:80028618 ; ---------------------------------------------------------------------------
PAGELK:8002861B align 4
PAGELK:8002861C
PAGELK:8002861C ; =============== S U B R O U T I N E =======================================

#8150infuscomus⇗ @diderius6

I tried again - the free build of this one worked in a VM at least, hopefully this checked build also boots for you.



infuscomus has attached files to this post
#8151diderius6⇗ @infuscomus

The Bsod happens at exact the same place as before.
My Hack with 90 90 gives no Bsod but endless loop with HalStartNextProcessor
Dietmar

hal!HalStartNextProcessor+0x234e:
801185ae e87d03ffff call hal!KeStallExecutionProcessor (80108930)
kd> t
hal!KeStallExecutionProcessor:
80108930 55 push ebp
kd> t
hal!KeStallExecutionProcessor+0x1:
80108931 8bec mov ebp,esp
kd> t
hal!KeStallExecutionProcessor+0x3:
80108933 5d pop ebp
kd> t
hal!KeStallExecutionProcessor+0x4:
80108934 ff2544f41080 jmp dword ptr [hal!HalMakeBeep+0x59c4 (8010f444)]
kd> t
hal+0xd2c:
80100d2c 53 push ebx
kd> t
hal+0xd2d:
80100d2d 57 push edi
kd> t
hal+0xd2e:
80100d2e 33c0 xor eax,eax
kd> t
hal+0xd30:
80100d30 0fa2 cpuid
kd> t
hal+0xd32:
80100d32 0f31 rdtsc
kd> t
hal+0xd34:
80100d34 8bd8 mov ebx,eax
kd> t
hal+0xd36:
80100d36 8bfa mov edi,edx
kd> t
hal+0xd38:
80100d38 8b4c240c mov ecx,dword ptr [esp+0Ch]
kd> t
hal+0xd3c:
80100d3c 64a14c000000 mov eax,dword ptr fs:[0000004Ch]
kd> t
hal+0xd42:
80100d42 f7e1 mul eax,ecx
kd> t
hal+0xd44:
80100d44 03d8 add ebx,eax
kd> t
hal+0xd46:
80100d46 13fa adc edi,edx
kd> t
hal+0xd48:
80100d48 0f31 rdtsc
kd> t
hal+0xd4a:
80100d4a 3bfa cmp edi,edx
kd> t
hal+0xd4c:
80100d4c 77fa ja hal+0xd48 (80100d48)
kd> t
hal+0xd4e:
80100d4e 7204 jb hal+0xd54 (80100d54)
kd> t
hal+0xd54:
80100d54 5f pop edi
kd> t
hal+0xd55:
80100d55 5b pop ebx
kd> t
hal+0xd56:
80100d56 c20400 ret 4
kd> t
hal!HalStartNextProcessor+0x2353:
801185b3 833d4046118000 cmp dword ptr [hal!KdComPortInUse+0x4e38 (80114640)],0
kd> t
hal!HalStartNextProcessor+0x235a:
801185ba 7453 je hal!HalStartNextProcessor+0x23af (8011860f)
kd> t
hal!HalStartNextProcessor+0x235c:
801185bc 0fb64d0b movzx ecx,byte ptr [ebp+0Bh]
kd> t
hal!HalStartNextProcessor+0x2360:
801185c0 81e300f00f00 and ebx,0FF000h
kd> t
hal!HalStartNextProcessor+0x2366:
801185c6 81cb00006000 or ebx,600000h
kd> t
hal!HalStartNextProcessor+0x236c:
801185cc c1e118 shl ecx,18h
kd> t
hal!HalStartNextProcessor+0x236f:
801185cf b81003feff mov eax,0FFFE0310h
kd> t
hal!HalStartNextProcessor+0x2374:
801185d4 c1eb0c shr ebx,0Ch
kd> t
hal!HalStartNextProcessor+0x2377:
801185d7 8908 mov dword ptr [eax],ecx
kd> t
hal!HalStartNextProcessor+0x2379:
801185d9 56 push esi
kd> t
hal!HalStartNextProcessor+0x237a:
801185da 891f mov dword ptr [edi],ebx

kd> t

Bsod, here comes in this step call KeStallExecutionProcessor

#8152infuscomus⇗ @diderius6

Strange.
I was able to boot with the free build, are you using outerspace acpi.sys or Vista acpi.sys? I used outerspace acpi.sys
#8153diderius6⇗ @infuscomus
I use the acpi.sys from Vista, because this is the aim.
Ok, I try with acpi.sys from outerspace ) also now
Dietmar
#8154diderius6Wit acpi.sys from outerspace )
Bsod at the exact same place,
so this comes only from hal.dll
Dietmar
kd> t
hal!HalStartNextProcessor+0x2379:
801185d9 56 push esi
kd> t
hal!HalStartNextProcessor+0x237a:
801185da 891f mov dword ptr [edi],ebx
kd> t
#8155infuscomus⇗ @diderius6

I tested with outerspace acpi.sys to be sure that my modded HAL would boot XP with our known working ACPI driver.

If my HAL is working, then we can try Vista acpi.sys
#8156infuscomus⇗ @diderius6

Does it boot without the debugger connected?

edit:
checked HAL crashes VM, but free build works?

Why??
#8157diderius6⇗ @infuscomus

Always the exact same Bsod, independend from acpi.sys,
no matter if Debugger is connected or not
Dietmar
#8158infuscomus⇗ @diderius6

I'll look for the spot in the code that stops the free HAL from working with the debugger and I'll send you that. Hopefully that'll work.
#8159infuscomus⇗ @diderius6

I think I got rid of the debugger check for the free build.
try this.



infuscomus has attached files to this post
#8160diderius6⇗ @infuscomus

Waaooh, this checked hal.dll boots XP SP3 to desktop with acpi.sys from outerspace ) and the checked ntkrnlpa.exe from XP SP3
Dietmar

PS: Now I try acpi.sys from Vista.

 

Page 545

#8161infuscomus⇗ @diderius6

Sorry, it's a free HAL, something is wrong with the checked HAL, I'm not sure what's wrong with it.
#8162diderius6⇗ @infuscomus

With the debugger connected, this hal.dll gives "hardware error" during boot with ntldr.
And without debugger, acpi.sys from Vista restarts compi.
But with freeldr I can run Debugger with acpi.sys from Vista this gives


Microsoft (R) Windows Debugger Version 6.12.0002.633 X86
Copyright (c) Microsoft Corporation. All rights reserved.

Opened \\.\com1
Waiting to reconnect...
Connected to Windows XP 2600 x86 compatible target at (Sun Oct 31 21:49:36.218 2021 (UTC + 1:00)), ptr64 FALSE
Kernel Debugger connection established.
Symbol search path is: C:\symbols
Executable search path is: C:\Symbols
Windows XP Kernel Version 2600 MP (1 procs) Free x86 compatible
Built by: 2600.xpsp_sp3_qfe.190108-0655
Machine Name:
Kernel base = 0x807e5000 PsLoadedModuleList = 0x808714c0
System Uptime: not available
MM: Loader/HAL memory block indicates large pages cannot be used for 85448000->868B8FFF
MM: Disabling large pages for all ranges due to overlap

*** Fatal System Error: 0x0000007e
(0xC0000005,0x00000000,0xF789E168,0xF789DE64)

Break instruction exception - code 80000003 (first chance)

A fatal system error has occurred.
Debugger entered on first try; Bugcheck callbacks have not been invoked.

A fatal system error has occurred.

Connected to Windows XP 2600 x86 compatible target at (Sun Oct 31 21:49:43.140 2021 (UTC + 1:00)), ptr64 FALSE
Loading Kernel Symbols
..............................
Loading User Symbols

*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

Use !analyze -v to get detailed debugging information.

BugCheck 7E, {c0000005, 0, f789e168, f789de64}

Probably caused by : Unknown_Image ( ANALYSIS_INCONCLUSIVE )

Followup: MachineOwner
---------

nt!RtlpBreakWithStatusInstruction:
807f09c2 cc int 3
3: kd> !analyze -v
*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

SYSTEM_THREAD_EXCEPTION_NOT_HANDLED (7e)
This is a very common bugcheck. Usually the exception address pinpoints
the driver/function that caused the problem. Always note this address
as well as the link date of the driver/image that contains this address.
Arguments:
Arg1: c0000005, The exception code that was not handled
Arg2: 00000000, The address that the exception occurred at
Arg3: f789e168, Exception Record Address
Arg4: f789de64, Context Record Address

Debugging Details:
------------------


EXCEPTION_CODE: (NTSTATUS) 0xc0000005 - Die Anweisung "0x%08lx" verweist auf Speicher bei "0x%08lx". Die Daten wurden wegen eines E/A-Fehlers in "0x%081x" nicht in den Arbeitsspeicher bertragen.

FAULTING_IP:
+1b
00000000 ?? ???

EXCEPTION_RECORD: f789e168 -- (.exr 0xfffffffff789e168)
ExceptionAddress: 00000000
ExceptionCode: c0000005 (Access violation)
ExceptionFlags: 00000000
NumberParameters: 2
Parameter[0]: 00000000
Parameter[1]: 00000000
Attempt to read from address 00000000

CONTEXT: f789de64 -- (.cxr 0xfffffffff789de64)
eax=00000000 ebx=80a10780 ecx=54445358 edx=00000001 esi=f7597b20 edi=80a106b0
eip=00000000 esp=f789e230 ebp=f789e250 iopl=0 nv up ei pl zr na pe nc
cs=0008 ss=0010 ds=0023 es=0023 fs=0030 gs=0000 efl=00010246
00000000 ?? ???
Resetting default scope

DEFAULT_BUCKET_ID: DRIVER_FAULT

PROCESS_NAME: System

ERROR_CODE: (NTSTATUS) 0xc0000005 - Die Anweisung "0x%08lx" verweist auf Speicher bei "0x%08lx". Die Daten wurden wegen eines E/A-Fehlers in "0x%081x" nicht in den Arbeitsspeicher bertragen.

EXCEPTION_PARAMETER1: 00000000

EXCEPTION_PARAMETER2: 00000000

READ_ADDRESS: 00000000

FOLLOWUP_IP:
+1b
00000000 ?? ???

FAILED_INSTRUCTION_ADDRESS:
+1b
00000000 ?? ???

BUGCHECK_STR: 0x7E

LAST_CONTROL_TRANSFER: from 00000000 to 00000000

STACK_TEXT:
f789e22c 00000000 00000000 00000000 f759c4fc 0x0


STACK_COMMAND: kb

SYMBOL_NAME: ANALYSIS_INCONCLUSIVE

FOLLOWUP_NAME: MachineOwner

MODULE_NAME: Unknown_Module

IMAGE_NAME: Unknown_Image

DEBUG_FLR_IMAGE_TIMESTAMP: 0

FAILURE_BUCKET_ID: 0x7E_NULL_IP_ANALYSIS_INCONCLUSIVE

BUCKET_ID: 0x7E_NULL_IP_ANALYSIS_INCONCLUSIVE

Followup: MachineOwner
---------

#8163infuscomus⇗ @diderius6

nice!
does loading up acpi.pdb reveal any more info about it?
#8164diderius6With freeldr, your free hal.dll and original Vista RTM acpi.sys I get this.
But now we have 2 places, hal.dll and acpi.sys from Vista,
which should be solved
Dietmar

nt!KeUpdateRunTime+0xb6:
807f0799 83b89009000000 cmp dword ptr [eax+990h],0
kd> t
nt!KeUpdateRunTime+0xbd:
807f07a0 744e je nt!KeUpdateRunTime+0x10d (807f07f0)
kd> t
nt!KeUpdateRunTime+0x10d:
807f07f0 ff88dc050000 dec dword ptr [eax+5DCh]
kd> t
nt!KeUpdateRunTime+0x113:
807f07f6 7522 jne nt!KeUpdateRunTime+0x138 (807f081a)
kd> t
nt!KeUpdateRunTime+0x138:
807f081a 806b6f03 sub byte ptr [ebx+6Fh],3
kd> t
nt!KeUpdateRunTime+0x13c:
807f081e 7f19 jg nt!KeUpdateRunTime+0x157 (807f0839)
kd> t
nt!KeUpdateRunTime+0x157:
807f0839 5b pop ebx
kd> t
nt!KeUpdateRunTime+0x158:
807f083a c20400 ret 4
kd> t
nt!KeUpdateSystemTime+0x146:
807f069e fa cli
kd> t
nt!KeUpdateSystemTime+0x147:
807f069f ff1594607e80 call dword ptr [nt!_imp__HalEndSystemInterrupt (807e6094)]
kd> t
*** ERROR: Symbol file could not be found. Defaulted to export symbols for halmacpi.dll -
hal!HalEndSystemInterrupt:
80a10d54 33c9 xor ecx,ecx
kd> t
hal!HalEndSystemInterrupt+0x2:
80a10d56 8a4c2404 mov cl,byte ptr [esp+4]
kd> t
hal!HalEndSystemInterrupt+0x6:
80a10d5a 8a895402a180 mov cl,byte ptr hal!HalRequestIpi+0x4c0 (80a10254)[ecx]
kd> t
hal!HalEndSystemInterrupt+0xc:
80a10d60 c705b000feff00000000 mov dword ptr ds:[0FFFE00B0h],0
kd> t
hal!HalEndSystemInterrupt+0x16:
80a10d6a 80f941 cmp cl,41h
kd> t
hal!HalEndSystemInterrupt+0x19:
80a10d6d 720f jb hal!HalEndSystemInterrupt+0x2a (80a10d7e)
kd> t
hal!HalEndSystemInterrupt+0x2a:
80a10d7e 64803d9600000000 cmp byte ptr fs:[96h],0
kd> t
hal!HalEndSystemInterrupt+0x32:
80a10d86 64c6059500000000 mov byte ptr fs:[95h],0
kd> t
hal!HalEndSystemInterrupt+0x3a:
80a10d8e 74df je hal!HalEndSystemInterrupt+0x1b (80a10d6f)
kd> t
hal!HalEndSystemInterrupt+0x1b:
80a10d6f 890d8000feff mov dword ptr ds:[0FFFE0080h],ecx
kd> t
hal!HalEndSystemInterrupt+0x21:
80a10d75 8b158000feff mov edx,dword ptr ds:[0FFFE0080h]
kd> t
hal!HalEndSystemInterrupt+0x27:
80a10d7b c20800 ret 8
kd> t
nt!KeUpdateSystemTime+0x14d:
807f06a5 e983bbffff jmp nt!Kei386EoiHelper (807ec22d)
kd> t
nt!Kei386EoiHelper:
807ec22d fa cli
kd> t
nt!Kei386EoiHelper+0x1:
807ec22e f7457000000200 test dword ptr [ebp+70h],20000h
kd> t
nt!Kei386EoiHelper+0x8:
807ec235 7506 jne nt!Kei386EoiHelper+0x10 (807ec23d)
kd> t
nt!Kei386EoiHelper+0xa:
807ec237 f6456c01 test byte ptr [ebp+6Ch],1
kd> t
nt!Kei386EoiHelper+0xe:
807ec23b 7434 je nt!Kei386EoiHelper+0x44 (807ec271)
kd> t
nt!Kei386EoiHelper+0x44:
807ec271 8b54244c mov edx,dword ptr [esp+4Ch]
kd> t
nt!Kei386EoiHelper+0x48:
807ec275 648b1d50000000 mov ebx,dword ptr fs:[50h]
kd> t
nt!Kei386EoiHelper+0x4f:
807ec27c 64891500000000 mov dword ptr fs:[0],edx
kd> t
nt!Kei386EoiHelper+0x56:
807ec283 f7c3ff000000 test ebx,0FFh
kd> t
nt!Kei386EoiHelper+0x5c:
807ec289 754e jne nt!Kei386EoiHelper+0xac (807ec2d9)
kd> t
nt!Kei386EoiHelper+0x5e:
807ec28b f744247000000200 test dword ptr [esp+70h],20000h
kd> t
nt!Kei386EoiHelper+0x66:
807ec293 0f85c1000000 jne nt!Kei386EoiHelper+0x12c (807ec35a)
kd> t
nt!Kei386EoiHelper+0x6c:
807ec299 66f744246cf9ff test word ptr [esp+6Ch],0FFF9h
kd> t
nt!Kei386EoiHelper+0x73:
807ec2a0 7477 je nt!Kei386EoiHelper+0xec (807ec319)
kd> t
nt!Kei386EoiHelper+0x75:
807ec2a2 8b54243c mov edx,dword ptr [esp+3Ch]
kd> t
nt!Kei386EoiHelper+0x79:
807ec2a6 8b4c2440 mov ecx,dword ptr [esp+40h]
kd> t
nt!Kei386EoiHelper+0x7d:
807ec2aa 8b442444 mov eax,dword ptr [esp+44h]
kd> t
nt!Kei386EoiHelper+0x81:
807ec2ae 66837d6c08 cmp word ptr [ebp+6Ch],8
kd> t
nt!Kei386EoiHelper+0x86:
807ec2b3 740c je nt!Kei386EoiHelper+0x94 (807ec2c1)
kd> t
nt!Kei386EoiHelper+0x94:
807ec2c1 8d6554 lea esp,[ebp+54h]
kd> t
nt!Kei386EoiHelper+0x97:
807ec2c4 5f pop edi
kd> t
nt!Kei386EoiHelper+0x98:
807ec2c5 5e pop esi
kd> t
nt!Kei386EoiHelper+0x99:
807ec2c6 5b pop ebx
kd> t
nt!Kei386EoiHelper+0x9a:
807ec2c7 5d pop ebp
kd> t
nt!Kei386EoiHelper+0x9b:
807ec2c8 66817c24088000 cmp word ptr [esp+8],80h
kd> t
nt!Kei386EoiHelper+0xa2:
807ec2cf 0f87a1000000 ja nt!Kei386EoiHelper+0x148 (807ec376)
kd> t
nt!Kei386EoiHelper+0xa8:
807ec2d5 83c404 add esp,4
kd> t
nt!Kei386EoiHelper+0xab:
807ec2d8 cf iretd
After this line Bsod, compi restarts
kd> t
Bsod

#8165infuscomus⇗ @diderius6

would a checked vista rtm acpi.sys help for this?
#8166diderius6⇗ @infuscomus

For to see, what is going on, the checked versions are better.
So, better to have acpi.sys from Vista as checked version
Dietmar

PS: Do you know, why the checked version from SP1 hal.dll from Sources does not boot XP SP3?
#8167infuscomus⇗ @diderius6

OK, I'll get you a checked version.

Zitat von ⇗ diderius6 im Beitrag ¶ #8166
PS: Do you know, why the checked version from SP1 hal.dll from Sources does not boot XP SP3?


No, sorry, If I knew why I would fix it.
#8168infuscomus⇗ @diderius6

Vista RTM checked acpi.sys



infuscomus has attached files to this post
#8169infuscomus⇗ @diderius6

any progress with the checked acpi.sys?
#8170diderius6⇗ @infuscomus
Today I have a lot of work at school. Corona is going like crazy in Germany again.
We have incidents 700 in parts, even with vaccine and a lot of new dead people.
Tomorrow I test checked acpi.sys from Vista
Dietmar
#8171George King
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #8140
@diderius6
Zitat von ⇗ diderius6 im Beitrag ¶ #8115
@Mov AX, 0xDEAD
"if someone will implement "new timer api" you'l get usb3"

Until now, I have no idea how to make this.
But I can learn a lot, so.. if there is a chance to integrate more drivers from Win8.1 into XP..


Just missed Extended Timing functions from 8.1 kernel: ExAllocateTimer, ExDeleteTimer, ExCancelTimer, ExSetTimer
add to Emu Extender or patch manually as Gen1 usb3 driver




Seems like we can get these functions here, but I have no idea how to add them to Extender as I'm not C/C++ developer. It's like 10 years after my last QT C++ exam..
 
https://github.com/tpn/winddk-8.1/blob/master/Include/km/wdm.h



It will be great if you can add new functions. I have looked into Vista / 7 Generic HDA driver and only few functions seems to be missing too. It woul be great if you can have a look on it a bring Generic Windows 7 HDA driver into XP. When I was inspecting files I found this:
hdaudio.sys / hdabus.sys / portcls.sys / usbaudio.sys 6.1.7601.17514 can be used with ntoskrn8.sys, but these 4 files have 4 missing import functions. Then I tried to figure out how to mod EMU_Extender source with these missing functions - PoCreatePowerRequest, PoSetPowerRequest, PoClearPowerRequest, PoDeletePowerRequest. They exist in ntifs_ddk.h, but thats all what can I find. I have no Idea how to add them as usable functions to ntoskrn8.sys. I hope driver can work with these added functions.

Here are used files, contains original and modded/combined files replaced ntoskrnl.exe = ntoskrn8.sys for missing imports and added some XP SYS files to see full depencies in Depency Walker. So only 4 mentioned functions are missing

 
https://www.mediafire.com/file/8ip4rjbwni5xgt4/Generic_HDA_from_Win7_for_XP_x86.7z/file



It would be nice to see updated EMU_Extender with new functions to get Windows 8.1 USB3.x driver and Windows 7 HDA under XP.

[TOOL] POWIS - Powerful Windows Setup - Support Windows Vista, 7, 8.0, 8.1, 10, 11 and their Servers equivalent
⇗ https://forums.mydigitallife.net/threads...p-v1-0-1.83558/

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#8172George King
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #8047
Hi George King
Zitat von ⇗ George King im Beitrag ¶ #8038

Patch for VIA USB Mass Storage Device (UAS/UASP) to restore "Safe Remove":
- replace in vusbstor.sys (v6.1.7600.4002):
page:000209B4: mov [ebp+SurpriseRemovalOK], ebx -> NOPs
(89 9D 70 FF FF FF 89 9D 68 FF FF FF => 90 90 90 90 90 90 89 9D 68 FF FF FF)

vusbstor.sys_x64 6.1.7600.4002 :
89 AC 24 84 00 00 00 -> 90 90 90 90 90 90 90

Zitat von ⇗ George King im Beitrag ¶ #8038

And I would also like to request missing informations for WDF 1.11. I would like to use ported WDF 1.11 with original XP ones to avoid unhandled problems with other drivers.
In WdfLdr8.sys replace hex pattern F6 78 1B F6 to F6 EB 1B F6 (x32), ** ** to ** ** (x64)

wdfldr.sys_x64 1.11.9200.16384 :
85 FF 78 2A -> 85 FF EB 2A

i don't have any XP x64 installed now, hex patterns made by "copy&paste way", need to confirm working state



Many thanks for these informations! I have modded my drivers set and will see how it goes on real HW on friday. I can confirm now wdfldr8.sys work with USB3.x under XP x64 in VirtualBox [TOOL] POWIS - Powerful Windows Setup - Support Windows Vista, 7, 8.0, 8.1, 10, 11 and their Servers equivalent
⇗ https://forums.mydigitallife.net/threads...p-v1-0-1.83558/

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#8173Mov AX, 0xDEAD
Zitat von ⇗ George King im Beitrag ¶ #8171
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #8140

Just missed Extended Timing functions from 8.1 kernel: ExAllocateTimer, ExDeleteTimer, ExCancelTimer, ExSetTimer
add to Emu Extender or patch manually as Gen1 usb3 driver


Seems like we can get these functions here, but I have no idea how to add them to Extender as I'm not C/C++ developer. It's like 10 years after my last QT C++ exam.. It will be great if you can add new functions.

I'm not interested in it

Zitat von ⇗ George King im Beitrag ¶ #8171

I have looked into Vista / 7 Generic HDA driver and only few functions seems to be missing too. It woul be great if you can have a look on it a bring Generic Windows 7 HDA driver into XP. When I was inspecting files I found this:
hdaudio.sys / hdabus.sys / portcls.sys / usbaudio.sys 6.1.7601.17514 can be used with ntoskrn8.sys, but these 4 files have 4 missing import functions. Then I tried to figure out how to mod EMU_Extender source with these missing functions - PoCreatePowerRequest, PoSetPowerRequest, PoClearPowerRequest, PoDeletePowerRequest.


I've tried HDA driver from win7, driver/portcls.sys return  0xC00000BB after processing initial IRPs, so fixing import is not enough.
Some of HDA driver from longhorn betas loads without errors, but always there is no sound (in VirtualBOX VM, not tested on real hardware)
5012 - Early drivers with different sizes has this version, usually driver load with error due supporting only selected chipsets
5244, 5250- All Audio devices available, output tagged as Headphones
5285 - Show only "In" devices (Microphone)
5335 - No any devices
I heard that guys from shorthorn project run sucessfully driver 5048 beta, but i dont know details
#8174infuscomus⇗ @Mov AX, 0xDEAD

I'm trying to merge your ntoskrnl extender into the actual ntoskrnl source code but I keep hitting compilation errors.
Have you had any luck with achieving this?
#8175Mov AX, 0xDEAD⇗ @infuscomus

Zitat von ⇗ infuscomus im Beitrag ¶ #8174
@Mov AX, 0xDEAD
I'm trying to merge your ntoskrnl extender into the actual ntoskrnl source code but I keep hitting compilation errors.
Have you had any luck with achieving this?

I guess you have struct redeclaration/macro redefinition/xxx doubling
Extender written to take some existing code/headers if it was not exported normal way. common.h is tricky, it dynamicaly compiled depended on target Kernel/OS

 

Page 546

#8176gordo999
Zitat von ⇗ infuscomus im Beitrag ¶ #8156
Does it boot without the debugger connected?
⇗ @infuscomus ...just thought of something. Sometimes, when the OS is set to debug mode, it can act erratically in normal mode. Not sure if this applies.
#8177infuscomus⇗ @gordo999

There is a problem with the checked HAL that is making it crash, I'm not sure what it is. The free HAL seems to be working just fine though.
#8178Mov AX, 0xDEAD
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #8173

I've tried HDA driver from win7, driver/portcls.sys return  0xC00000BB after processing initial IRPs, so fixing import is not enough.
Some of HDA driver from longhorn betas loads without errors, but always there is no sound (in VirtualBOX VM, not tested on real hardware)
5012 - Early drivers with different sizes has this version, usually driver load with error due supporting only selected chipsets
5244, 5250- All Audio devices available, output tagged as Headphones
5285 - Show only "In" devices (Microphone)
5335 - No any devices
I heard that guys from shorthorn project run sucessfully driver 5048 beta, but i dont know details


Update:
5012(size 133120), 5244, 5250 - After reinstalling VirtualBox to last 6.1.28 i've got sound from VM, output is "headphones"
only HdAudio.sys was updated, portcls.sys(5512) & hdaudbus.sys(5013) is original SP3
5285 - broken, no Output devices

5250 = LongHorn build 5270
5244 = LongHorn build 5259
5012(size 133120) =  LongHorn build 5231
#8179George King
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #8178
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #8173

I've tried HDA driver from win7, driver/portcls.sys return  0xC00000BB after processing initial IRPs, so fixing import is not enough.
Some of HDA driver from longhorn betas loads without errors, but always there is no sound (in VirtualBOX VM, not tested on real hardware)
5012 - Early drivers with different sizes has this version, usually driver load with error due supporting only selected chipsets
5244, 5250- All Audio devices available, output tagged as Headphones
5285 - Show only "In" devices (Microphone)
5335 - No any devices
I heard that guys from shorthorn project run sucessfully driver 5048 beta, but i dont know details


Update:
5012(size 133120), 5244, 5250 - After reinstalling VirtualBox to last 6.1.28 i've got sound from VM, output is "headphones"
only HdAudio.sys(5250) was updated, portcls.sys(5512) & hdaudbus.sys(5013) is original SP3
5285 - broken, no Output devices


Have you tried portcls.sys from Windows 7 6801 too? This one have no missing imports using ntoskrn8.sys and other connected files seems good (no missing imports from portcls.sys). Maybe it's usable with 7601 driver as is mostly like "Vista post SP2 branch"?


⇗ @skullteria Have you created any working HDA drivers for XP / 2003? If have some noted, it could save some time during digging around Generic HDA drivers. I see you have some of them here, but some user on MDL tried them without success. I still haven't tried them myself
 
http://shorthornproject.com/allcategories.html?tab=drivers&item=item-drivers



I hope we can find working drivers combination from betas etc.

[TOOL] POWIS - Powerful Windows Setup - Support Windows Vista, 7, 8.0, 8.1, 10, 11 and their Servers equivalent
⇗ https://forums.mydigitallife.net/threads...p-v1-0-1.83558/

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#8180skullteria
Zitat von ⇗ George King im Beitrag ¶ #8179
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #8178
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #8173

I've tried HDA driver from win7, driver/portcls.sys return  0xC00000BB after processing initial IRPs, so fixing import is not enough.
Some of HDA driver from longhorn betas loads without errors, but always there is no sound (in VirtualBOX VM, not tested on real hardware)
5012 - Early drivers with different sizes has this version, usually driver load with error due supporting only selected chipsets
5244, 5250- All Audio devices available, output tagged as Headphones
5285 - Show only "In" devices (Microphone)
5335 - No any devices
I heard that guys from shorthorn project run sucessfully driver 5048 beta, but i dont know details


Update:
5012(size 133120), 5244, 5250 - After reinstalling VirtualBox to last 6.1.28 i've got sound from VM, output is "headphones"
only HdAudio.sys(5250) was updated, portcls.sys(5512) & hdaudbus.sys(5013) is original SP3
5285 - broken, no Output devices


Have you tried portcls.sys from Windows 7 6801 too? This one have no missing imports using ntoskrn8.sys and other connected files seems good (no missing imports from portcls.sys). Maybe it's usable with 7601 driver as is mostly like "Vista post SP2 branch"?


@skullteria Have you created any working HDA drivers for XP / 2003? If have some noted, it could save some time during digging around Generic HDA drivers. I see you have some of them here, but some user on MDL tried them without success. I still haven't tried them myself
 
http://shorthornproject.com/allcategories.html?tab=drivers&item=item-drivers



I hope we can find working drivers combination from betas etc.




Yes, all drivers avaliable on these links works on XP/2003 without problem. Starting build 5308 (maybe previous version, linke 5285 works, but, i not tested) install and load, but, no sound.
#8181George King⇗ @skullteria Thanks for info, I will try 5231 in both architectures. Will see how it goes - seems like INFs need some touch to do everything automatically

[TOOL] POWIS - Powerful Windows Setup - Support Windows Vista, 7, 8.0, 8.1, 10, 11 and their Servers equivalent
⇗ https://forums.mydigitallife.net/threads...p-v1-0-1.83558/

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#8182diderius6I just download the Bios F4 for the new Gigabyte Z690 UD board for new 12900k Intel CPU.
With UefiTool I see, that there is no CSMCORE in Bios, only Videocsm
Dietmar
#8183infuscomus⇗ @diderius6

a custom kernel and hal for you.

use all the files included, that includes the ntoskrn8.sys too since I had to link it to the custom library built from my kernel.

please debug Vista acpi.sys with it when you have time.



infuscomus has attached files to this post
#8184DogHas anyone tried using one of the newer 2020 DDR5 versions of the GT 710 as a physx card in Windows XP? If they aren't using 16 lanes, will they slow down the higher end Windows XP GPUs?
#8185infuscomus⇗ @Dog

I'm reasonably sure that a GT710 will slow down any higher end GPU.
#8186infuscomus⇗ @diderius6

I did a test
KMDF 1.11 won't load because these functions aren't exported from SP1 kernel.

ExAcquireRundownProtectionEx
ExReleaseRundownProtectionEx
ExfReleasePushLock

I'll fix this and reupload a new version.
#8187DogThinking about it a bit more I think I understand a bit better. PCIe 3.0 was released right at the end of XP support, so it probably wouldn't make sense for any of those cards. However consider a machine targeting SLI under Windows XP. My understanding is that the gtx 580 was the last officially supported SLI card. This card was not PCIe 3.0 (Like the Titan X Maxwell was). Its PCIe 2.0 and in SLI they would be running in x8/x8 in most cases.

Gigabyte has an iteration of the GT 710 that runs at PCIe 2.0 8x despite having a 16x connector, and is single slot (GV-N710D5-2GL). It seemed like it might be a formidable Physx card for an SLI build as someone that hardly knows what they are doing (954MHz vs 900MHz Base Clock, 2 vs 3 GDDR5, 5010 MHz vs 4212 MHz Memory Clock). I'm still curious if I'm missing something else, like misunderstanding how PCIe lanes are shared.
#8188infuscomus⇗ @diderius6

Exported now

ExAcquireRundownProtectionEx
ExReleaseRundownProtectionEx
ExfReleasePushLock

ignore wdf01000.sys - was just checking if exports were correct.

EDIT:
Damnit! I missed KeFlushQueuedDpcs
and ObIsDosDeviceLocallyMapped
and SeAuditingHardLinkEventsWithContext SeAuditingFileEventsWithContext


I'm tired :(



infuscomus has attached files to this post
#8189infuscomus⇗ @Dog

I think the GT 710 would still be a bottleneck even if running as a PhysX card. It's not exactly fast.
#8190infuscomus⇗ @Mov AX, 0xDEAD

I seem to have gotten stuck trying to reintegrate   SeAuditingHardLinkEventsWithContext and SeAuditingFileEventsWithContext into the SP1 kernel.

Using the code from the WRK doesn't seem to be working, any ideas?

 

Page 547

#8191infuscomus⇗ @diderius6 ⇗ @Mov AX, 0xDEAD

I've been trying to get the SP1 ntoskrnl source code to boot on XP SP3.

I've run into a BSOD I have not seen before - BSOD 71



can you help to trace the cause of this?
PDB symbols included.



infuscomus has attached files to this post
#8192diderius6⇗ @infuscomus

Waaoh,
with this hal.dll from you, modded from Sources SP1 hal.dll
it is possible to boot XP SP3 via BCD on an 8700k cpu on my Asrock k6 z370 Fatalty board
for the very first time
Dietmar

⇗ https://ufile.io/u6zqc89z
#8193infuscomusI successfully integrated SeAuditingHardLinkEventsWithContext and SeAuditingFileEventsWithContext into the SP1 kernel.

I still get BSOD 71 though

⇗ @diderius6

when you have time, can you please trace the cause of BSOD 71 in my kernel?



infuscomus has attached files to this post
#8194diderius6⇗ @infuscomus

I run Windbg with your files from BSOD71_2.7z.zip .

This is result, I test some more.

MISMATCHED_HAL (79) hal.dll is free version
and ntoskrnl is checked version

Dietmar


Microsoft (R) Windows Debugger Version 6.12.0002.633 X86
Copyright (c) Microsoft Corporation. All rights reserved.

Opened \\.\com1
Waiting to reconnect...
Connected to Windows XP 2600 x86 compatible target at (Sat Nov 6 13:11:35.140 2021 (UTC + 1:00)), ptr64 FALSE
Kernel Debugger connection established.
Symbol search path is: C:\symbols;C:\symbolss
Executable search path is: C:\Symbols
Windows XP Kernel Version 2600 MP (1 procs) Checked x86 compatible
Built by: 2600.srckit
Machine Name:
Kernel base = 0x80a02000 PsLoadedModuleList = 0x80ae2398
System Uptime: not available

*** Fatal System Error: 0x00000079
(0x00000002,0x00000001,0x00000000,0x00000000)

Break instruction exception - code 80000003 (first chance)

A fatal system error has occurred.
Debugger entered on first try; Bugcheck callbacks have not been invoked.

A fatal system error has occurred.

Connected to Windows XP 2600 x86 compatible target at (Sat Nov 6 13:11:37.312 2021 (UTC + 1:00)), ptr64 FALSE
Loading Kernel Symbols
........................
Loading User Symbols

*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

Use !analyze -v to get detailed debugging information.

BugCheck 79, {2, 1, 0, 0}

Probably caused by : ntkrnlmp.exe ( nt!ExpInitializeExecutive+167 )

Followup: MachineOwner
---------

nt!RtlpBreakWithStatusInstruction:
80aa960c cc int 3
kd> !analyze -v
*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

MISMATCHED_HAL (79)
The HAL revision level and HAL configuration type does not match that
of the kernel or the machine type. This would probably happen if the
user has manually updated either ntoskrnl.exe or hal.dll and managed to
get a conflict.
You have an MP (multi-processor) Hal and a UP (uni-processor) Kernel,
or the reverse.
Arguments:
Arg1: 00000002,
The build types mismatch.
Arg2: 00000001, Build type of ntoskrnl.exe
Arg3: 00000000, Build type of hal.dll
Build type
0 = Free multiprocessor enabled build
1 = Checked multiprocessor enabled build
2 = Free uniprocessor build
3 = checked uniprocessor build
Arg4: 00000000

Debugging Details:
------------------


BUGCHECK_STR: 0x79_2

DEFAULT_BUCKET_ID: DRIVER_FAULT

LAST_CONTROL_TRANSFER: from 80a2d6aa to 80aa960c

STACK_TEXT:
80ad2f0c 80a2d6aa 00000003 80ad323c 00000002 nt!RtlpBreakWithStatusInstruction [E:\XPSP1\base\ntos\rtl\i386\debug2.asm @ 59]
80ad2f58 80a2e1b8 00000003 000000ff ffdff120 nt!KiBugCheckDebugBreak+0x19 [e:\xpsp1\base\ntos\ke\bugcheck.c @ 207]
80ad3324 80a2e79b 00000079 00000002 00000001 nt!KeBugCheck2+0x46d [e:\xpsp1\base\ntos\ke\bugcheck.c @ 913]
80ad3344 8007ea22 00000079 00000002 00000001 nt!KeBugCheckEx+0x19 [e:\xpsp1\base\ntos\ke\bugcheck.c @ 102]
80ad3370 80cf8d57 00000000 80084000 80aded20 hal!HalInitSystem+0x64 [e:\xpsp1\base\hals\halmps\i386\mphal.c @ 568]
80ad34f4 80d0978d 00000000 80084000 8003fc00 nt!ExpInitializeExecutive+0x167 [e:\xpsp1\base\ntos\init\init.c @ 795]
80ad354c 80d072e0 80adef80 80aded20 80ad3810 nt!KiInitializeKernel+0x42b [e:\xpsp1\base\ntos\ke\i386\kernlini.c @ 771]
00000000 00000000 00000000 00000000 00000000 nt!KiSystemStartup+0x2c4 [E:\XPSP1\base\ntos\ke\i386\newsysbg.asm @ 553]


STACK_COMMAND: kb

FOLLOWUP_IP:
nt!ExpInitializeExecutive+167 [e:\xpsp1\base\ntos\init\init.c @ 795]
80cf8d57 84c0 test al,al

FAULTING_SOURCE_CODE:
No source found for 'e:\xpsp1\base\ntos\init\init.c'


SYMBOL_STACK_INDEX: 5

SYMBOL_NAME: nt!ExpInitializeExecutive+167

FOLLOWUP_NAME: MachineOwner

MODULE_NAME: nt

IMAGE_NAME: ntkrnlmp.exe

DEBUG_FLR_IMAGE_TIMESTAMP: 61857a31

FAILURE_BUCKET_ID: 0x79_2_nt!ExpInitializeExecutive+167

BUCKET_ID: 0x79_2_nt!ExpInitializeExecutive+167

Followup: MachineOwner
---------

#8195infuscomus⇗ @diderius6

hmm, I thought I got rid of all of those, thanks.
#8196diderius6⇗ @infuscomus

May be most easy way, to build also a free ntoskrnl from SP1 sources
Dietmar
#8197infuscomus⇗ @diderius6

OK, hopefully I got all the mismatched hal checks.
please check for the cause of BSOD 71 SESSION5_INITIALIZATION_FAILED



infuscomus has attached files to this post
#8198diderius6⇗ @infuscomus

This one does not work at all
Dietmar


Microsoft (R) Windows Debugger Version 6.12.0002.633 X86
Copyright (c) Microsoft Corporation. All rights reserved.

Opened \\.\com1
Waiting to reconnect...
Connected to Windows XP 2600 x86 compatible target at (Sat Nov 6 16:32:04.078 2021 (UTC + 1:00)), ptr64 FALSE
Kernel Debugger connection established.
Symbol search path is: C:\symbols;C:\symbolss
Executable search path is: C:\Symbols
Windows XP Kernel Version 2600 MP (1 procs) Checked x86 compatible
Built by: 2600.srckit
Machine Name:
Kernel base = 0x80a02000 PsLoadedModuleList = 0x80ae2398
System Uptime: not available
Break instruction exception - code 80000003 (first chance)
nt!KiExceptionExit+0x107:
80ac1eb3 cc int 3
kd> g
Break instruction exception - code 80000003 (first chance)
nt!KiExceptionExit+0x107:
80ac1eb3 cc int 3
kd> g
Break instruction exception - code 80000003 (first chance)
nt!KiExceptionExit+0x107:
80ac1eb3 cc int 3
kd> g
Break instruction exception - code 80000003 (first chance)
nt!KiExceptionExit+0x107:
80ac1eb3 cc int 3
kd> g
Break instruction exception - code 80000003 (first chance)
nt!KiExceptionExit+0x107:
80ac1eb3 cc int 3
kd> !analyze -v
Connected to Windows XP 2600 x86 compatible target at (Sat Nov 6 16:32:47.796 2021 (UTC + 1:00)), ptr64 FALSE
Loading Kernel Symbols
........................
Loading User Symbols

*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

Unknown bugcheck code (0)
Unknown bugcheck description
Arguments:
Arg1: 00000000
Arg2: 00000000
Arg3: 00000000
Arg4: 00000000

Debugging Details:
------------------


FAULTING_IP:
nt!KiExceptionExit+107 [E:\XPSP1\base\ntos\ke\i386\trap.asm @ 1845]
80ac1eb3 cc int 3

EXCEPTION_RECORD: ffffffff -- (.exr 0xffffffffffffffff)
ExceptionAddress: 80ac1eb3 (nt!KiExceptionExit+0x00000107)
ExceptionCode: 80000003 (Break instruction exception)
ExceptionFlags: 00000000
NumberParameters: 3
Parameter[0]: 00000000
Parameter[1]: 00002710
Parameter[2]: 00000046

ERROR_CODE: (NTSTATUS) 0x80000003 - {AUSNAHME} Haltepunkt Im Quellprogramm wurde ein Haltepunkt erreicht.

EXCEPTION_CODE: (HRESULT) 0x80000003 (2147483651) - Mindestens ein Argument ist ung ltig.

EXCEPTION_PARAMETER1: 00000000

EXCEPTION_PARAMETER2: 00002710

EXCEPTION_PARAMETER3: 00000046

DEFAULT_BUCKET_ID: DRIVER_FAULT

BUGCHECK_STR: 0x0

LAST_CONTROL_TRANSFER: from 80075727 to 80ac1eb3

STACK_TEXT:
80ad32e8 80075727 00000046 80ac05b0 00000000 nt!KiExceptionExit+0x107 [E:\XPSP1\base\ntos\ke\i386\trap.asm @ 1845]
80ad3370 80cf8d57 00000000 80084000 80aded20 hal!HalpInitializeClock+0xe7 [E:\XPSP1\base\hals\halmps\i386\mpclock.asm @ 366]
80ad34f4 80d09795 00000000 80084000 8003fc00 nt!ExpInitializeExecutive+0x167 [e:\xpsp1\base\ntos\init\init.c @ 795]
80ad354c 80d072e8 80adef80 80aded20 80ad3810 nt!KiInitializeKernel+0x42b [e:\xpsp1\base\ntos\ke\i386\kernlini.c @ 771]
00000000 00000000 00000000 00000000 00000000 nt!KiSystemStartup+0x2c4 [E:\XPSP1\base\ntos\ke\i386\newsysbg.asm @ 553]


STACK_COMMAND: kb

FOLLOWUP_IP:
nt!KiExceptionExit+107 [E:\XPSP1\base\ntos\ke\i386\trap.asm @ 1845]
80ac1eb3 cc int 3

FAULTING_SOURCE_CODE:
No source found for 'E:\XPSP1\base\ntos\ke\i386\trap.asm'


SYMBOL_STACK_INDEX: 0

SYMBOL_NAME: nt!KiExceptionExit+107

FOLLOWUP_NAME: MachineOwner

MODULE_NAME: nt

IMAGE_NAME: ntkrnlmp.exe

DEBUG_FLR_IMAGE_TIMESTAMP: 61869846

FAILURE_BUCKET_ID: 0x0_nt!KiExceptionExit+107

BUCKET_ID: 0x0_nt!KiExceptionExit+107

Followup: MachineOwner
---------

kd> lm
start end module name
80001000 80004000 BOOTVID (deferred)
80007000 80008100 WMILIB (deferred)
80009000 8000f800 firadisk (deferred)
80010000 80011b80 kdcom (deferred)
80012000 8001b180 isapnp (deferred)
8001c000 8001d700 dmload (deferred)
80062000 80081c00 hal (private pdb symbols) c:\symbolss\halmacpi.pdb
80124000 80153d80 ACPI (deferred)
80154000 80164a80 pci (deferred)
80165000 8016f700 MountMgr (deferred)
80170000 8018e880 ftdisk (deferred)
8018f000 801b4700 dmio (deferred)
801b5000 801c0000 PartMgr (deferred)
801c0000 801ccc80 VolSnap (deferred)
801cd000 801dd000 asahci32 (deferred)
801dd000 801f4880 SCSIPORT (deferred)
801f5000 80205000 disk (deferred)
80205000 80211180 CLASSPNP (deferred)
80232000 80243f00 sr (deferred)
80244000 8025ab80 KSecDD (deferred)
8025b000 802e7d00 Ntfs (deferred)
802e8000 80314a80 NDIS (deferred)
80315000 8032ee80 Mup (deferred)
804d7000 8078c000 iaStor (deferred)
80a02000 80d69000 nt (private pdb symbols) c:\symbolss\ntkrnlmp.pdb

#8199infuscomus⇗ @diderius6

??????????
I have no idea why this is happening.

Well, Thanks for testing it anyway.
#8200diderius6XP SP3 works on z690 chipset with very laast acpi.sys from outerspace )

⇗ https://community.hwbot.org/topic/209655...#comment-599202

Dietmar
#8201diderius6And voila,
new world record for PiFast under XP SP3 on the ASUS ROG Maximus Z690 Apex  board
Dietmar

⇗ https://www.youtube.com/watch?v=rhdxPscpAIU&t=1831s

#8202infuscomus⇗ @Mov AX, 0xDEAD

Can you look at this code to see why this line is reached?

KeBugCheck(SESSION5_INITIALIZATION_FAILED);

and how to resolve this?

edit:
looking at my kernel compared to actual XP kernel, there is supposed to be a conditional jump after ZwWaitForSingleObject to go to ZwClose or the BSOD in the actual kernel.

mine has no conditional jump and just ends there - compiler error?



infuscomus has attached files to this post
#8203skullteria
Zitat von ⇗ infuscomus im Beitrag ¶ #8202
@Mov AX, 0xDEAD

Can you look at this code to see why this line is reached?

KeBugCheck(SESSION5_INITIALIZATION_FAILED);

and how to resolve this?

edit:
looking at my kernel compared to actual XP kernel, there is supposed to be a conditional jump after ZwWaitForSingleObject to go to ZwClose or the BSOD in the actual kernel.

mine has no conditional jump and just ends there - compiler error?


Are you trying XP SP1 kernel with ntdll from SP3? If yes, it will not work because syscall mechanism is changed between XP SP1 and XP SP2, like occourred betweeen Server 2003 RTM and SP1. See functions KIFastSyscall, KiFastSyscallEntry, etc. If you want test, download One-Core-API binaries and use ntdll from XP on Base Installer package.
#8204infuscomus⇗ @skullteria

So if I replace my XP SP3 ntdll.dll with the one from One-core-api my modified SP1 kernel will work?
#8205Mov AX, 0xDEAD
Zitat von ⇗ infuscomus im Beitrag ¶ #8202
@Mov AX, 0xDEAD

Can you look at this code to see why this line is reached?

KeBugCheck(SESSION5_INITIALIZATION_FAILED);

and how to resolve this?

edit:
looking at my kernel compared to actual XP kernel, there is supposed to be a conditional jump after ZwWaitForSingleObject to go to ZwClose or the BSOD in the actual kernel.

mine has no conditional jump and just ends there - compiler error?

 
       //
// Wait five seconds for the session manager to get started or
// terminate. If the wait times out, then the session manager
// is assumed to be healthy and the zero page thread is called.
//

OldTime.QuadPart = Int32x32To64(5, -(10 * 1000 * 1000));
Status = ZwWaitForSingleObject(
ProcessInformation.Process,
FALSE,
&OldTime
);


kernel create smss.exe process (user-mode), wait for signal from it and faults if timeout occurs 5 secs to check if smss still alive (.Process field as trigger) and faults if not

 

Page 548

#8206imadam__hi, i posted in this thread a few months ago on how to install xp on my system. but i forgot what to do now. what would be a good guide to install xp on my specs?

ryzen 3 1200
8gb ddr4 ram
asus prime b450m-a
#8207skullteria
Zitat von ⇗ infuscomus im Beitrag ¶ #8204
@skullteria

So if I replace my XP SP3 ntdll.dll with the one from One-core-api my modified SP1 kernel will work?



Sorry, i said a mistake. Ntdll for XP from One-Core-API l already changed syscall mechanism. You need compile ntdll from source and add missing functions. In true, it will not work natively on XP SP3. I recommend you test with XP SP1.
#8208skullteria
Zitat von ⇗ Mov AX, 0xDEAD im Beitrag ¶ #8205
Zitat von ⇗ infuscomus im Beitrag ¶ #8202
@Mov AX, 0xDEAD

Can you look at this code to see why this line is reached?

KeBugCheck(SESSION5_INITIALIZATION_FAILED);

and how to resolve this?

edit:
looking at my kernel compared to actual XP kernel, there is supposed to be a conditional jump after ZwWaitForSingleObject to go to ZwClose or the BSOD in the actual kernel.

mine has no conditional jump and just ends there - compiler error?

 
       //
// Wait five seconds for the session manager to get started or
// terminate. If the wait times out, then the session manager
// is assumed to be healthy and the zero page thread is called.
//

OldTime.QuadPart = Int32x32To64(5, -(10 * 1000 * 1000));
Status = ZwWaitForSingleObject(
ProcessInformation.Process,
FALSE,
&OldTime
);


kernel create smss.exe process (user-mode), wait for signal from it and faults if timeout occurs 5 secs to check if smss still alive (.Process field as trigger) and faults if not




It faults because smss calls syscall (nt functions) and ntdll can't not locate it on kernel. In true, the jump of user mode to kernel mode is different between ntdll and kernel.
#8209infuscomus⇗ @Mov AX, 0xDEAD ⇗ @skullteria

could smss.exe also be failing to start because my ntoskrnl.exe has additional exports that ntdll.dll doesn't have?

or that has nothing to do with the problem?
#8210galagunA small clue: "On reactos, each time you change some export in the kernel (server), you also have to rebuild the ntdll component (client)."

They have tables about some core component dependencies, so they know which set of components they have to overwrite or rebuild when doing cross-test for implementation accuracy or debugging (for example, Reactos NT Kernel with Windows userland, or MS Win32k on ReactOS). Probably this would be useful to you guys, who are doing cross-testing between components belonging to different ServicePack levels.
#8211windows2.0uefihow did you it please how did you run windows xp sp3 in uefi64
#8212juk777diderius6
"XP SP3 works on z690 chipset with very laast acpi.sys from outerspace"

Which one is it? Can I have a link?
#8213diderius6⇗ @juk777

Now this very laast acpi.sys from outerspace ) is the standard acpi.sys in the nice XP from Rasmsey
⇗ https://www.zone94.com/downloads/softwar...ntegral-edition

Dietmar
#8214imadam__Tried both XP Integral Edition and a custom XP edition. XP integral edition bluescreened at 0x0000007B and my custom xp edition just said "storahci.sys is missing" or something like that

ryzen 3 1200
asus prime b450m-a
8gb ram ddr4
#8215diderius6⇗ @imadam__

Use as AHCI driver only via option 4, I
from  Integrator v3.2.0.2b

Dietmar
#8216imadam__can you send download link to the intergrator? please
#8217imadam__i found it and tried to use that, but same 0x0000007B error ( i used intergral edition iso )
#8218George KingLink is 3 posts before yours

[TOOL] POWIS - Powerful Windows Setup - Support Windows Vista, 7, 8.0, 8.1, 10, 11 and their Servers equivalent
⇗ https://forums.mydigitallife.net/threads...p-v1-0-1.83558/

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#8219imadam__i tried the amd sata driver with nlite and same issue still - 0x0000007B BSOD
#8220diderius6⇗ @imadam__

Only use  Integrator v3.2.0.2b

Dietmar

⇗ https://www.zone94.com/component/jlexcom...download&id=134

 

Page 549

#8221imadam__That is the one i was using. The AMD Sata driver from it and the 2021-08-2X acpi file from it,.
#8222diderius6⇗ @imadam__

Use it together with Ramsey XP
Dietmar
#8223imadam__Just to clarify - Ramsey XP is the XP intergral edition, right? I was using that when I got the amd_sata.sys is missing error
#8224imadam__also im using it with latest WinSetupFromUSB (version 1.10) and a 16GB usb stick formatted with NTFS
#8225diderius6⇗ @imadam__
Yes, use Ramsey XP is the XP intergral edition together with Integrator v3.2.0.2b, only Option settings 4, I .
Dont use USB because of one crazy USB controller from AMD.

Without USB driver this WinSetupFromUSB will not work.

Without USB driver you need install from burned CD via Sata connector or Firadisk via USB.
This will work to 100%, I tested

Dietmar
#8226infuscomus⇗ @imadam__

Since you lack USB you can use Easy2boot to bypass the need to burn a CD as it includes a RAMdisk driver for the installation phase which should get around that 7B BSOD you've been having. I've used this before and it works well.
#8227infuscomusMy modified ntoskrnl.exe works just fine when integrated into a SP1 install media. I did not need to modify ntdll.dll to get it to work.

So there is some other incompatibility between SP1 and SP3 that is causing the 71 BSOD.
#8228galagunBetween SP1 and SP2 there was a big change in system call tables, which need recompile on client module (NTDLL) and even other stuff. ReactOS tested, and that's the reason you can't really do easy crosstesting between SP1 XP or Win2003 RTM there, only from XP SP2 or Win2003 SP1 and onwards (in a small note, that's why magazines and articles on the day called SP2 a "new OS release" or an OSR rather than just an update).

Now, between XP SP2 and 3, or Win2003 SP1 and 2, there aren't many changes in that subject... Except maybe integrated HyperV paravirtual support in Kernel.
#8229diderius6⇗ @infuscomus

I do not see this 71 Bsod with Windbg on real compi
Dietmar
#8230imadam__I get this error when booting XP from the drive for the 1st time ⇗ https://i.imgur.com/Yc0jWwk.png
#8231diderius6⇗ @imadam__
Copy the folder OEM from the CD to your harddisk, may be whole content of XP install CD,
because all files on USB device are not recogniced because of missing USB driver.
This does not happen, if you use a burned CD on a SATA connector
Dietmar
#8232imadam__is there any way to use a stock windows xp installer with the drivers? or do you have to use the integral edition
#8233infuscomus⇗ @imadam__

you can run the optional patch integrator on a stock XP SP3 CD and it'll work.
#8234imadam__alright
#8235imadam__I installed windows XP integral edition from a burned cd and i get a blank screen after restarting from the installer booted from cd

 

Page 550

#8236diderius6⇗ @imadam__
With setting option only 4, I
this will not happen via boot XP CD on an CD-rom Sata device
Dietmar
#8237JakoDelhi guys, are there any uhd 630 (coffee lake igpu) modded drivers around? also, does anyone know if  it has a decent vesa compatibility (so that I can use vbemp)? if the answer is no to both, then I guess I'll have to buy a 980ti lol (I have a 1070 ti card with completely ducked up vbe 3.0 support, thanks nvidia)
#8238gordo999
Zitat von ⇗ diderius6 im Beitrag ¶ #7971
I can install at once on the Asus ROG STRIX B450-F GAMING II board.

⇗ @diderius6 ...thinking about getting a laptop with Rog Strix mobo or maybe Rog Zephyrus. Are you only running XP on the Rog Strix or are you dual-booting another OS? Is the B450 fairly new? Do you know of a limit on the model that will still run XP?

I notice that most of the newer models are running solid state drives, usually limited to 500 GB. Maybe that's because they are running RAID assemblies or because laptop drives are too small physically to run a terabyte drive.
#8239diderius6⇗ @gordo999

The Asus ROG STRIX B450-F GAMING II board comes into market one year ago.
As far as I know, it is the latest new motherboard, that supports XP SP3 in all.
It is a really modern and nice board, stable, fast and cheap.
Solid state drives are no problem, when you have at least win8.1 also on this compi
for Trim. The programs for Trim do not run correct until now on XP
Dietmar
#8240infuscomus
Zitat von ⇗ gordo999 im Beitrag ¶ #8238
...thinking about getting a laptop with Rog Strix mobo or maybe Rog Zephyrus.


If I'm not mistaken, laptops no longer have any CSM, so I would get a desktop board instead.
#8241Mov AX, 0xDEAD
Zitat von ⇗ JakoDel im Beitrag ¶ #8237
hi guys, are there any uhd 630 (coffee lake igpu) modded drivers around?

Drivers for coffee lake exist only for Windows 10 x64, but kabylake modded driver is usable for windows 7 x32/x64 too.
There's no any drivers for XP and it will never be due different video driver architecture since vista

Zitat von ⇗ JakoDel im Beitrag ¶ #8237
also, does anyone know if it has a decent vesa compatibility (so that I can use vbemp)

You will be first researcher :), formally coffee provides VESA 3.0, but i'm not satisfied with it in pure ms-dos, it always scale any resolution to 1024x768(i think because i use analog CRT with externel Display Port DAC on motherboard)
as i remember last releases of vbemp have special tools for intel chips like custom widescreen modes

Zitat
I guess I'll have to buy a 980ti


best option with native directdraw/overlay/3d acceleration

#8242Mov AX, 0xDEAD  
       //
// Wait five seconds for the session manager to get started or
// terminate. If the wait times out, then the session manager
// is assumed to be healthy and the zero page thread is called.
//

OldTime.QuadPart = Int32x32To64(5, -(10 * 1000 * 1000));
Status = ZwWaitForSingleObject(
ProcessInformation.Process,
FALSE,
&OldTime
);


This code from kernel maybe very bad if executed in one(same) kernel thread, It just hang for 5 sec and do nothing :)
If this code is being executed in separate system thread, it is OK, just thread in waiting state.
EDIT: patching this waiting time don't change XP loading time, in VirtualBox XP always loads in 2.5 secs

#8243George KingAnybody know what must be patched to get rid of Unsupported State (6) on Windows XP Starter?

 
https://forums.mydigitallife.net/threads/windows-xp-starter-unsuported-state-6.84419/
[TOOL] POWIS - Powerful Windows Setup - Support Windows Vista, 7, 8.0, 8.1, 10, 11 and their Servers equivalent
⇗ https://forums.mydigitallife.net/threads...p-v1-0-1.83558/

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#8244diderius6⇗ @George King

⇗ https://www.betaarchive.com/forum/viewto...=439371#p439371

Dietmar

PS: From this crazy XP Starter Edition exists also an SP3 version.
I think, hack will be not easy.
#8245George King⇗ @diderius6 Seems like only few files are added by STARTOC component. Other files from CAB seems irelevant.

 
duass.dll ediskeer.dll 



There doesn't exist SP3 version, but it's possible to integrate SP3, but it must be done from 5.x environment, otherwise it doesn't accept product key

EDIT: Here is info it's driven by WPA\Starter key

 
https://www.betaarchive.com/forum/viewtopic.php?p=447974#p447974
[TOOL] POWIS - Powerful Windows Setup - Support Windows Vista, 7, 8.0, 8.1, 10, 11 and their Servers equivalent
⇗ https://forums.mydigitallife.net/threads...p-v1-0-1.83558/

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#8246konsheynDon't mind me asking, you seems like person who may give me right adv. Trying to move system (don't ask why) by mowing hdd to another machine with J1900. The Windows (XP Embedded) start with finding bunch of devices and asks if drivers should be updated. But keyboard and mouse don't work. Found that ACPI.SYS have to be replaced with newer one, but there is no such driver on XP Embedded. Wondering if anything could be done to make keyboard/mouse work?
Thanks
#8247George King⇗ @diderius6 I created Windows 8 AHCI and Windows 7 NVMe driver addons for nLite. Can you try them on vanilla source and report back how it goes please?

 
https://www.mediafire.com/file/les8tj6jixsvqkr/Generic_AHCI_6.2.9200.16384_Addon_x86.7z/file
https://www.mediafire.com/file/z5977s5hj49cac3/Generic_NVMe_6.1.7601.23403_Addon_x86.7z/file
[TOOL] POWIS - Powerful Windows Setup - Support Windows Vista, 7, 8.0, 8.1, 10, 11 and their Servers equivalent
⇗ https://forums.mydigitallife.net/threads...p-v1-0-1.83558/

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#8248George King⇗ @skullteria ACPI.sys x64 link doesn't work. Can you share your latest one please?

 
http://shorthornproject.com/allcategories.html?tab=drivers&item=item-drivers
[TOOL] POWIS - Powerful Windows Setup - Support Windows Vista, 7, 8.0, 8.1, 10, 11 and their Servers equivalent
⇗ https://forums.mydigitallife.net/threads...p-v1-0-1.83558/

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#8249diderius6⇗ @George King

I integrate those 2 drivers via nlite into setup CD XP SP3.
But on TXT Setup I get message,
that no harddisk can be found.
This happens for connected harddisk and also for connected nvme device
Dietmar

PS: Because the drivers are integrated not via TXTSETUP.OEM but via entries.ini
is there a special procedure needed for nlite?

EDIT: I integrate the drivers as drivers via (*.inf) and also as update pack via (entries.ini) with nlite and also copy them by hand into i386 folder of the XP Setup CD.
Now XP SP3 installs via them.

EDIT2: Install via Ahci or via nvme both hang at network install.
#8250skullteria
Zitat von ⇗ George King im Beitrag ¶ #8248
@skullteria ACPI.sys x64 link doesn't work. Can you share your latest one please?
 
http://shorthornproject.com/allcategories.html?tab=drivers&item=item-drivers



Hello friend, i need fix it on site. Thank you for notice to me.
Here is the link with x86 and x64 versions:
⇗ https://www.adrive.com/public/9MTJTm/ACPI.rar

 

Page 551

#8251infuscomus⇗ @konsheyn

I'm guessing you'll need some USB 3.0 drivers to get input working.
I know how to integrate USB drivers for a new XP installation, but not for a pre-existing one.
#8252konsheynAs I know USB in modern hardware work in XHCI mode. Windows XP can work only with EHCI controllers. XHCI require driver. But without correct ACPI USB XHCI will not install. So, as much as I know I need ACPI driver to be installed. But how to add it to system. that is the question. My existing system doesn't have ACPI.SYS in SYSTEM32.
#8253George King⇗ @diderius6 - integrate these 7z as is on Hotfixes / Addons page -> no need to have TXTSETUP.OEM

[TOOL] POWIS - Powerful Windows Setup - Support Windows Vista, 7, 8.0, 8.1, 10, 11 and their Servers equivalent
⇗ https://forums.mydigitallife.net/threads...p-v1-0-1.83558/

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#8254gordo999
Zitat von ⇗ konsheyn im Beitrag ¶ #8252
As I know USB in modern hardware work in XHCI mode. Windows XP can work only with EHCI controllers. XHCI require driver. But without correct ACPI USB XHCI will not install. So, as much as I know I need ACPI driver to be installed. But how to add it to system. that is the question. My existing system doesn't have ACPI.SYS in SYSTEM32.
⇗ @konsheyn ...copy it to the system32/drivers directory and reboot.

I don't have my XP computer connected right now. I do remember an acpi.sys being in either the system32 or system32/drivers directory. I renamed it and copied the acpi.sys from outer space where that acpi.sys was located. System File Checker did not try to replace the acpi.sys I copied to the directory but it might on some versions of XP. If it does, find the store where the backups are stored and replace that acpi.sys in the store first with acpi.sys from outer space.

ps. you may have to replace the SATA storage driver signed by ⇗ @Fernando and there is another 'pair' of drivers for timing with a HAL.dll and an intelppm.sys. I could not play games without them.
#8255gordo999
Zitat von ⇗ infuscomus im Beitrag ¶ #8240
If I'm not mistaken, laptops no longer have any CSM, so I would get a desktop board instead.
⇗ @infuscomus ...good point, thanks. Worth checking out.
#8256diderius6⇗ @George King

Now install starts but still hangs at network install on
ASRock Fatal1ty Z370 Gaming K6 board.
On Asus P8H77-M network install works and whole install.
This behavior may be acpi related, because only the z370 board needs modded acpi.sys

Dietmar
#8257infuscomus⇗ @diderius6 ⇗ @daniel_k ⇗ @George King ⇗ @Mov AX, 0xDEAD

If this forum closes (at least according to the announcement)
what forum are we going to move to?
#8258diderius6⇗ @infuscomus

Until now, no forum like this exists.
May be, that we ask ⇗ @dencorso from MSFN

Dietmar
#8259diderius6⇗ @George King

I am just running a Windbg session of GUI Setup from original XP SP3 with your drivers on the ASRock Fatal1ty Z370 Gaming K6 board,
for to see, why it hangs at network install
Dietmar

EDIT: Also with Windbg it hangs at network install, at exact the same place as without Windbg.
But when I break with the Debugger and then continue with "g",
installation continues to full XP desktop.
So, not easy to understand, why it hangs.

EDIT2: With the checked ntoskrnl 5.1.2600.5512 and checked hal.dll 5.1.2600.5512 XP Gui Install it does not hang at installing network.
So may be it is enough, to use a newer ntoskrnl.exe from Posready.
Do you have an original German XP SP3 CD for testing your drivers, with nothing installed on it but with all updates, especially last ntoskrnl from Posready until May 2019
Dietmar
#8260diderius6This is output from Windbg,
when I hit "break" exact at the place, where XP GUI Setup hangs.
It looks, as if it hangs at nt!KeUpdateSystemTime+0x175 ,
which is the last step before network install
Dietmar


Microsoft (R) Windows Debugger Version 6.12.0002.633 X86
Copyright (c) Microsoft Corporation. All rights reserved.

Opened \\.\com1
Waiting to reconnect...
Connected to Windows XP 2600 x86 compatible target at (Sat Nov 13 18:57:53.812 2021 (UTC + 1:00)), ptr64 FALSE
Kernel Debugger connection established.
Symbol search path is: C:\symbols;C:\symbolss
Executable search path is: C:\Symbols
Windows XP Kernel Version 2600 MP (1 procs) Free x86 compatible
Built by: 2600.xpsp.080413-2111
Machine Name:
Kernel base = 0x804d7000 PsLoadedModuleList = 0x8055d720
System Uptime: not available
<CSync:BeginUnload
<CSync:BeginUnload
watchdog!WdUpdateRecoveryState: Recovery enabled.
Break instruction exception - code 80000003 (first chance)
*******************************************************************************
* *
* You are seeing this message because you pressed either *
* CTRL+C (if you run kd.exe) or, *
* CTRL+BREAK (if you run WinDBG), *
* on your debugger machine's keyboard. *
* *
* THIS IS NOT A BUG OR A SYSTEM CRASH *
* *
* If you did not intend to break into the debugger, press the "g" key, then *
* press the "Enter" key now. This message might immediately reappear. If it *
* does, press "g" and "Enter" again. *
* *
*******************************************************************************
nt!RtlpBreakWithStatusInstruction:
8052b5dc cc int 3
0: kd> !analyze -v
Connected to Windows XP 2600 x86 compatible target at (Sat Nov 13 19:05:27.843 2021 (UTC + 1:00)), ptr64 FALSE
Loading Kernel Symbols
.........................................................
Loading User Symbols

Loading unloaded module list
......
*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

Unknown bugcheck code (0)
Unknown bugcheck description
Arguments:
Arg1: 00000000
Arg2: 00000000
Arg3: 00000000
Arg4: 00000000

Debugging Details:
------------------


PROCESS_NAME: Idle

FAULTING_IP:
nt!RtlpBreakWithStatusInstruction+0
8052b5dc cc int 3

EXCEPTION_RECORD: ffffffff -- (.exr 0xffffffffffffffff)
ExceptionAddress: 8052b5dc (nt!RtlpBreakWithStatusInstruction)
ExceptionCode: 80000003 (Break instruction exception)
ExceptionFlags: 00000000
NumberParameters: 3
Parameter[0]: 00000000
Parameter[1]: 80553780
Parameter[2]: 000003f8

ERROR_CODE: (NTSTATUS) 0x80000003 - {AUSNAHME} Haltepunkt Im Quellprogramm wurde ein Haltepunkt erreicht.

EXCEPTION_CODE: (HRESULT) 0x80000003 (2147483651) - Mindestens ein Argument ist ung ltig.

EXCEPTION_PARAMETER1: 00000000

EXCEPTION_PARAMETER2: 80553780

EXCEPTION_PARAMETER3: 000003f8

DEFAULT_BUCKET_ID: DRIVER_FAULT

BUGCHECK_STR: 0x0

STACK_TEXT:
805513d0 80545119 00000001 80551402 000000d1 nt!RtlpBreakWithStatusInstruction
805513d0 80545d40 00000001 80551402 000000d1 nt!KeUpdateSystemTime+0x175
80551454 00000000 0000000e 00000000 00000000 nt!KiIdleLoop+0x14


STACK_COMMAND: kb

FOLLOWUP_IP:
nt!RtlpBreakWithStatusInstruction+0
8052b5dc cc int 3

SYMBOL_STACK_INDEX: 0

SYMBOL_NAME: nt!RtlpBreakWithStatusInstruction+0

FOLLOWUP_NAME: MachineOwner

MODULE_NAME: nt

IMAGE_NAME: ntkrpamp.exe

DEBUG_FLR_IMAGE_TIMESTAMP: 4802516a

BUCKET_ID: MANUAL_BREAKIN

Followup: MachineOwner
---------

0: kd> lm
start end module name
804d7000 806e5000 nt (pdb symbols) c:\symbols\ntkrpamp.pdb\7D6290E03E32455BB0E035E38816124F1\ntkrpamp.pdb
806e5000 80705d00 hal (pdb symbols) c:\symbols\halmacpi.pdb\9875FD697ECA4BBB8A475825F6BF885E1\halmacpi.pdb
bf800000 bf9c2a00 win32k (deferred)
bf9c3000 bf9d4600 dxg (deferred)
bff70000 bff72480 framebuf (deferred)
f6a2c000 f6a89f00 update (deferred)
f6aa2000 f6aa4280 wmiacpi (deferred)
f6ac6000 f6ac9c80 mssmbios (pdb symbols) c:\symbols\mssmbios.pdb\9940673F3B9A4BD682DF9D96A12A355C1\mssmbios.pdb
f6e92000 f6eb4680 dump_ntoskrn8 (deferred)
f6eb5000 f6efe000 dump_storport (deferred)
f6efe000 f6f11000 dump_storahci (deferred)
f6f39000 f6f5ab80 afd (deferred)
f6f7b000 f6f8ef00 VIDEOPRT (deferred)
f6fed000 f700f700 ks (deferred)
f7066000 f7068900 Dxapi (deferred)
f70d2000 f70ebb80 Mup (deferred)
f70ec000 f7118980 NDIS (deferred)
f7119000 f71a5600 Ntfs (deferred)
f71a6000 f71bc880 KSecDD (deferred)
f71bd000 f7280680 dmboot (deferred)
f7281000 f72ca000 storport (deferred)
f72ca000 f72ec680 ntoskrn8 (deferred)
f72ed000 f7300000 storahci (deferred)
f7300000 f7325a00 dmio (deferred)
f7326000 f7344d80 Ftdisk (deferred)
f7345000 f7355a80 PCI (deferred)
f7356000 f7385d80 ACPI (deferred)
f7487000 f7490300 isapnp (deferred)
f7497000 f74a1580 MountMgr (deferred)
f74a7000 f74b4200 VolSnap (deferred)
f74b7000 f74bfe00 Disk (deferred)
f74c7000 f74d3180 CLASSPNP (deferred)
f74d7000 f74e3f00 i8042prt (deferred)
f74e7000 f74f6600 Cdrom (deferred)
f7507000 f7511e80 Fips (deferred)
f7527000 f7536900 Cdfs (deferred)
f75b7000 f75c0e00 intelppm (deferred)
f7707000 f770bd00 PartMgr (deferred)
f770f000 f7715800 firadisk (deferred)
f7717000 f771bc00 storpor8 (deferred)
f7797000 f779d280 Kbdclass (deferred)
f77cf000 f77d4c00 Mouclass (deferred)
f77d7000 f77dc200 vga (deferred)
f77e7000 f77eba80 Msfs (deferred)
f77f7000 f77fe880 Npfs (deferred)
f7807000 f780ba80 TDI (deferred)
f7817000 f781bc00 dump_storpor8 (deferred)
f782f000 f7833500 watchdog (deferred)
f7897000 f789a000 BOOTVID (deferred)
f7987000 f7988b80 kdcom (deferred)
f7989000 f798a100 WMILIB (deferred)
f798b000 f798c700 dmload (deferred)
f7993000 f7994100 swenum (deferred)
f7997000 f7998f00 Fs_Rec (deferred)
f799b000 f799c080 Beep (deferred)
f799f000 f79a0080 mnmdd (deferred)
f7b1f000 f7b1fd00 dxgthk (deferred)
f7bd7000 f7bd7b80 Null (deferred)

Unloaded modules:
f6f8f000 f6fed000 Update.SYS
f74f7000 f7502000 Imapi.SYS
f77c7000 f77cc000 Cdaudio.SYS
f70ae000 f70b1000 Sfloppy.SYS
f77b7000 f77bc000 Flpydisk.SYS
f77af000 f77b6000 Fdc.SYS
0: kd> !devnode 0 1
Dumping IopRootDeviceNode (= 0x89da2008)
DevNode 0x89da2008 for PDO 0x89df38c0
InstancePath is "HTREE\ROOT\0"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x89da2ba8 for PDO 0x89da2cf0
InstancePath is "Root\ACPI_HAL\0000"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x89da1190 for PDO 0x89da1de0
InstancePath is "ACPI_HAL\PNP0C08\0"
ServiceName is "acpi"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x89cc7828 for PDO 0x89cc79b0
InstancePath is "ACPI\PNP0A08\0"
ServiceName is "pci"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x89b4b628 for PDO 0x89d9d208
InstancePath is "PCI\VEN_8086&DEV_3EC2&SUBSYS_00000000&REV_07\3&11583659&0&00"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x89b4b508 for PDO 0x89cc3030
InstancePath is "PCI\VEN_8086&DEV_1901&SUBSYS_00000000&REV_07\3&11583659&0&08"
ServiceName is "pci"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x89cea440 for PDO 0x89ceabb0
InstancePath is "PCI\VEN_10DE&DEV_1287&SUBSYS_730B19DA&REV_A1\4&17bc2637&0&0008"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_FAILED_INSTALL
DevNode 0x89cea320 for PDO 0x89cea878
InstancePath is "PCI\VEN_10DE&DEV_0E0F&SUBSYS_730B19DA&REV_A1\4&17bc2637&0&0108"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_FAILED_INSTALL
DevNode 0x89b4b3e8 for PDO 0x89cc3e50
InstancePath is "PCI\VEN_8086&DEV_A2AF&SUBSYS_A2AF1849&REV_00\3&11583659&0&A0"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_FAILED_INSTALL
DevNode 0x89b4b2c8 for PDO 0x89cc3c70
InstancePath is "PCI\VEN_8086&DEV_A2B1&SUBSYS_A2B11849&REV_00\3&11583659&0&A2"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_FAILED_INSTALL
DevNode 0x89b4b1a8 for PDO 0x89cc3938
InstancePath is "PCI\VEN_8086&DEV_A2BA&SUBSYS_A2BA1849&REV_00\3&11583659&0&B0"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_FAILED_INSTALL
DevNode 0x89cdd008 for PDO 0x89cc3600
InstancePath is "PCI\VEN_8086&DEV_A282&SUBSYS_A2821849&REV_00\3&11583659&0&B8"
ServiceName is "storahci"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x89c63b58 for PDO 0x89df3bf0
InstancePath is "SCSI\Disk&Ven_SAMSUNG&Prod_HD160JJ\4&3543605e&0&000000"
ServiceName is "Disk"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x89cddee8 for PDO 0x89cc32c8
InstancePath is "PCI\VEN_8086&DEV_A2E7&SUBSYS_00000000&REV_F0\3&11583659&0&D8"
ServiceName is "pci"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x89cdddc8 for PDO 0x89cebe50
InstancePath is "PCI\VEN_8086&DEV_A290&SUBSYS_00000000&REV_F0\3&11583659&0&E0"
ServiceName is "pci"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x89cddca8 for PDO 0x89cebb18
InstancePath is "PCI\VEN_8086&DEV_A291&SUBSYS_00000000&REV_F0\3&11583659&0&E1"
ServiceName is "pci"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x89c63350 for PDO 0x89c63820
InstancePath is "PCI\VEN_1B21&DEV_0612&SUBSYS_06121849&REV_02\4&12e73dd2&0&00E1"
ServiceName is "storahci"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x89cddb88 for PDO 0x89ceb7e0
InstancePath is "PCI\VEN_8086&DEV_A292&SUBSYS_00000000&REV_F0\3&11583659&0&E2"
ServiceName is "pci"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x89c63c78 for PDO 0x89c63030
InstancePath is "PCI\VEN_8086&DEV_1539&SUBSYS_15391849&REV_03\4&2880aa1&0&00E2"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_FAILED_INSTALL
DevNode 0x89cdda68 for PDO 0x89ceb4a8
InstancePath is "PCI\VEN_8086&DEV_A294&SUBSYS_00000000&REV_F0\3&11583659&0&E4"
ServiceName is "pci"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x89b19548 for PDO 0x89b19bb0
InstancePath is "PCI\VEN_1B21&DEV_2142&SUBSYS_21421849&REV_00\4&1fc90664&0&00E4"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_FAILED_INSTALL
DevNode 0x89cdd948 for PDO 0x89b1a030
InstancePath is "PCI\VEN_8086&DEV_A298&SUBSYS_00000000&REV_F0\3&11583659&0&E8"
ServiceName is "pci"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x89cdd828 for PDO 0x89b1ae50
InstancePath is "PCI\VEN_8086&DEV_A2C9&SUBSYS_00000000&REV_00\3&11583659&0&F8"
ServiceName is "isapnp"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x89b4a2e0 for PDO 0x89b4a030
InstancePath is "ISAPNP\ReadDataPort\0"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x89b4a1c0 for PDO 0x89b4af18
InstancePath is "ACPI\PNP0C02\0"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x89cdc008 for PDO 0x89b4ae00
InstancePath is "ACPI\PNP0303\0"
ServiceName is "i8042prt"
TargetDeviceNotify List - f 0xe10a5c10 b 0xe10a5c10
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x89cdcee8 for PDO 0x89b4ace8
InstancePath is "ACPI\INT0800\4&e69c0be&0"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x89cdcdc8 for PDO 0x89b4abd0
InstancePath is "ACPI\PNP0103\0"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x89cdcca8 for PDO 0x89b4aab8
InstancePath is "ACPI\PNP0000\4&e69c0be&0"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x89cdcb88 for PDO 0x89b4a9a0
InstancePath is "ACPI\PNP0C04\4&e69c0be&0"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x89cdca68 for PDO 0x89b4a888
InstancePath is "ACPI\PNP0C02\2"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x89cdc948 for PDO 0x89b4a770
InstancePath is "ACPI\PNP0C02\LPC_DEV"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x89cdc828 for PDO 0x89b4a658
InstancePath is "ACPI\PNP0B00\4&e69c0be&0"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x89cdc708 for PDO 0x89b4a540
InstancePath is "ACPI\PNP0100\4&e69c0be&0"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x89cdc5e8 for PDO 0x89b4a428
InstancePath is "ACPI\INT3F0D\4&e69c0be&0"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x89cdd708 for PDO 0x89b1ac70
InstancePath is "PCI\VEN_8086&DEV_A2A1&SUBSYS_A2A11849&REV_00\3&11583659&0&FA"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_FAILED_INSTALL
DevNode 0x89cdd5e8 for PDO 0x89b1a938
InstancePath is "PCI\VEN_8086&DEV_A2F0&SUBSYS_12211849&REV_00\3&11583659&0&FB"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_FAILED_INSTALL
DevNode 0x89cdd4c8 for PDO 0x89b1a600
InstancePath is "PCI\VEN_8086&DEV_A2A3&SUBSYS_A2A31849&REV_00\3&11583659&0&FC"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_FAILED_INSTALL
DevNode 0x89cdd3a8 for PDO 0x89b1a2c8
InstancePath is "PCI\VEN_8086&DEV_15B8&SUBSYS_15B81849&REV_00\3&11583659&0&FE"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_FAILED_INSTALL
DevNode 0x89cdd288 for PDO 0x89c64f18
InstancePath is "ACPI\PNP0C02\1"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x89cdd168 for PDO 0x89c64e00
InstancePath is "ACPI\PNP0C02\PCHRESV"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x89c08008 for PDO 0x89c64ce8
InstancePath is "ACPI\PNP0C02\IoTraps"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x89c08ee8 for PDO 0x89c64bd0
InstancePath is "ACPI\PNP0C02\5"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x89c08dc8 for PDO 0x89c64ab8
InstancePath is "ACPI\PNP0C14\MXM2"
ServiceName is "WmiAcpi"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x89cc7708 for PDO 0x89b6cbb8
InstancePath is "ACPI\GenuineIntel_-_x86_Family_6_Model_158\_0"
ServiceName is "intelppm"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x89b6cee8 for PDO 0x89d111f8
InstancePath is "ACPI\GenuineIntel_-_x86_Family_6_Model_158\_1"
ServiceName is "intelppm"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x89b6cdc8 for PDO 0x89cc7460
InstancePath is "ACPI\GenuineIntel_-_x86_Family_6_Model_158\_2"
ServiceName is "intelppm"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x89c65240 for PDO 0x89dd8230
InstancePath is "ACPI\GenuineIntel_-_x86_Family_6_Model_158\_3"
ServiceName is "intelppm"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x89c65120 for PDO 0x89da1790
InstancePath is "ACPI\GenuineIntel_-_x86_Family_6_Model_158\_4"
ServiceName is "intelppm"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x89df36b8 for PDO 0x89cfd030
InstancePath is "ACPI\GenuineIntel_-_x86_Family_6_Model_158\_5"
ServiceName is "intelppm"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x89df3598 for PDO 0x89cfdac0
InstancePath is "ACPI\GenuineIntel_-_x86_Family_6_Model_158\_6"
ServiceName is "intelppm"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x89df3478 for PDO 0x89cc7bc0
InstancePath is "ACPI\GenuineIntel_-_x86_Family_6_Model_158\_7"
ServiceName is "intelppm"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x89dd73d0 for PDO 0x89b6c9f0
InstancePath is "ACPI\GenuineIntel_-_x86_Family_6_Model_158\_8"
ServiceName is "intelppm"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x89dd72b0 for PDO 0x89cfe4c8
InstancePath is "ACPI\GenuineIntel_-_x86_Family_6_Model_158\_9"
ServiceName is "intelppm"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x89dd7190 for PDO 0x89cec8a8
InstancePath is "ACPI\GenuineIntel_-_x86_Family_6_Model_158\10"
ServiceName is "intelppm"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x89b1bee8 for PDO 0x89cc71b8
InstancePath is "ACPI\GenuineIntel_-_x86_Family_6_Model_158\11"
ServiceName is "intelppm"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x89b1bdc8 for PDO 0x89da0598
InstancePath is "ACPI\PNP0C0E\2&daba3ff&0"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x89b1bca8 for PDO 0x89cec680
InstancePath is "ACPI\PNP0C14\TBFP"
ServiceName is "WmiAcpi"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x89cec360 for PDO 0x89cfd6a8
InstancePath is "ACPI\PNP0C0C\2&daba3ff&0"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x89cec240 for PDO 0x89cfd590
InstancePath is "ACPI\FixedButton\2&daba3ff&0"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x89da28c8 for PDO 0x89da2a10
InstancePath is "Root\dmio\0000"
ServiceName is "dmio"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x89da2688 for PDO 0x89da27d0
InstancePath is "Root\firadisk\0000"
ServiceName is "firadisk"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x89b5b270 for PDO 0x89b5b630
InstancePath is "FIRADISK\CDROM\1&2b2f4947&0&1.1"
ServiceName is "cdrom"
TargetDeviceNotify List - f 0xe1000278 b 0xe10d7e28
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x89da2448 for PDO 0x89da2590
InstancePath is "Root\ftdisk\0000"
ServiceName is "ftdisk"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x89b5a920 for PDO 0x89b5aa68
InstancePath is "STORAGE\Volume\1&30a96598&0&Signature444D0DD4Offset100000Length2542880000"
TargetDeviceNotify List - f 0xe10c1690 b 0xe10c1690
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x89da21d0 for PDO 0x89da2318
InstancePath is "Root\LEGACY_DMBOOT\0000"
ServiceName is "dmboot"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x89df2ee8 for PDO 0x89df2030
InstancePath is "Root\LEGACY_DMLOAD\0000"
ServiceName is "dmload"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x89df2ca8 for PDO 0x89df2df0
InstancePath is "Root\LEGACY_KSECDD\0000"
ServiceName is "ksecdd"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x89df2a68 for PDO 0x89df2bb0
InstancePath is "Root\LEGACY_MOUNTMGR\0000"
ServiceName is "mountmgr"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x89df2828 for PDO 0x89df2970
InstancePath is "Root\SYSTEM\0000"
ServiceName is "swenum"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x89ca7908 for PDO 0x89b91dd0
InstancePath is "SW\{eeab7790-c514-11d1-b42b-00805fc1270e}\asyncmac"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0x89df25e8 for PDO 0x89df2730
InstancePath is "Root\SYSTEM\0001"
ServiceName is "update"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x89df23a8 for PDO 0x89df24f0
InstancePath is "Root\SYSTEM\0002"
ServiceName is "mssmbios"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x89bc2c90 for PDO 0x89ba6a90
InstancePath is "Root\LEGACY_AFD\0000"
ServiceName is "AFD"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x899d9408 for PDO 0x89b81c08
InstancePath is "Root\LEGACY_BEEP\0000"
ServiceName is "Beep"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x899c04c8 for PDO 0x89c55d90
InstancePath is "Root\LEGACY_FIPS\0000"
ServiceName is "Fips"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x899bc5c0 for PDO 0x89ae0b48
InstancePath is "Root\LEGACY_MNMDD\0000"
ServiceName is "mnmdd"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x89a5dbb8 for PDO 0x899c3858
InstancePath is "Root\LEGACY_NDIS\0000"
ServiceName is "NDIS"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x89983db8 for PDO 0x89a5bee8
InstancePath is "Root\LEGACY_NULL\0000"
ServiceName is "Null"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x899d1700 for PDO 0x899d1e08
InstancePath is "Root\LEGACY_PARTMGR\0000"
ServiceName is "PartMgr"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x89bcf238 for PDO 0x89a6ff10
InstancePath is "Root\LEGACY_PARVDM\0000"
ServiceName is "ParVdm"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8995b008 for PDO 0x89c23f10
InstancePath is "Root\LEGACY_VGASAVE\0000"
ServiceName is "VgaSave"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x898bf078 for PDO 0x8993b598
InstancePath is "Root\LEGACY_VOLSNAP\0000"
ServiceName is "VolSnap"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x8987eb18 for PDO 0x89944310
InstancePath is "ROOT\MEDIA\MS_MMMCI"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x89923008 for PDO 0x898bda08
InstancePath is "ROOT\MEDIA\MS_MMVID"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x8997d268 for PDO 0x89894030
InstancePath is "ROOT\MEDIA\MS_MMACM"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x898c7680 for PDO 0x89923190
InstancePath is "ROOT\MEDIA\MS_MMVCD"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x89b899b0 for PDO 0x899ae608
InstancePath is "ROOT\MEDIA\MS_MMDRV"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x89b59960 for PDO 0x89b99d30
InstancePath is "Root\LEGACY_SERIAL\0000"
ServiceName is "Serial"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)

#8261diderius6When I continue with hitting "p" at Windbg it hangs still at network install
Dietmar

nt!KiIdleLoop+0xe:
80545d3a ff11 call dword ptr [ecx]
6: kd> p
nt!KiIdleLoop+0x10:
80545d3c f390 pause
6: kd> p
nt!KiIdleLoop+0x12:
80545d3e fb sti
6: kd> p
nt!KiIdleLoop+0x13:
80545d3f 90 nop
6: kd> p
nt!KiIdleLoop+0x14:
80545d40 90 nop
6: kd> p
nt!KiIdleLoop+0x15:
80545d41 fa cli
6: kd> p
nt!KiIdleLoop+0x16:
80545d42 3b6d00 cmp ebp,dword ptr [ebp]
6: kd> p
nt!KiIdleLoop+0x19:
80545d45 740d je nt!KiIdleLoop+0x28 (80545d54)
6: kd> p
nt!KiIdleLoop+0x28:
80545d54 83bb2801000000 cmp dword ptr [ebx+128h],0
6: kd> p
nt!KiIdleLoop+0x2f:
80545d5b 74d7 je nt!KiIdleLoop+0x8 (80545d34)
6: kd> p
nt!KiIdleLoop+0x8:
80545d34 8d8b500c0000 lea ecx,[ebx+0C50h]
6: kd> p
nt!KiIdleLoop+0xe:
80545d3a ff11 call dword ptr [ecx]
6: kd> p
nt!KiIdleLoop+0x10:
80545d3c f390 pause
6: kd> p
nt!KiIdleLoop+0x12:
80545d3e fb sti
6: kd> p
nt!KiIdleLoop+0x13:
80545d3f 90 nop
6: kd> p
nt!KiIdleLoop+0x14:
80545d40 90 nop
6: kd> p
nt!KiIdleLoop+0x15:
80545d41 fa cli
6: kd> p
nt!KiIdleLoop+0x16:
80545d42 3b6d00 cmp ebp,dword ptr [ebp]
6: kd> p
nt!KiIdleLoop+0x19:
80545d45 740d je nt!KiIdleLoop+0x28 (80545d54)
6: kd> p
nt!KiIdleLoop+0x28:
80545d54 83bb2801000000 cmp dword ptr [ebx+128h],0
6: kd> p
nt!KiIdleLoop+0x2f:
80545d5b 74d7 je nt!KiIdleLoop+0x8 (80545d34)
6: kd> p
nt!KiIdleLoop+0x8:
80545d34 8d8b500c0000 lea ecx,[ebx+0C50h]
6: kd> p
nt!KiIdleLoop+0xe:
80545d3a ff11 call dword ptr [ecx]
6: kd> p
nt!KiIdleLoop+0x10:
80545d3c f390 pause
6: kd> p
nt!KiIdleLoop+0x12:
80545d3e fb sti
6: kd> p
nt!KiIdleLoop+0x13:
80545d3f 90 nop
6: kd> p
nt!KiIdleLoop+0x14:
80545d40 90 nop

#8262George King⇗ @diderius6 Yes, I have all Windows XP SP3 ISO that exists in all languages. Same with UpdatePacks, thats also one of reasons to have XP2ESD project :)
Currently is for me enough to hear addons logic is correct (should be same method as original DriverPacks Base method). On XP2ESD will be always different method

⇗ @imadam__ I will upload you some testing image soon.
⇗ @infuscomus It will be great if you can test it too, this image will be mainly based on ported Generic drivers except Windows 8 AHCI, these images will have Windows 7 MSHACI driver instead

[TOOL] POWIS - Powerful Windows Setup - Support Windows Vista, 7, 8.0, 8.1, 10, 11 and their Servers equivalent
⇗ https://forums.mydigitallife.net/threads...p-v1-0-1.83558/

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#8263diderius6I found the exact place, where XP GUI Setup hangs

 *** An Access Violation occurred in C:\WINDOWS\system32\svchost.exe -k netsvcs:

001b:7c802402 b8c0000000 mov eax,0C0h
10: kd> p
The instruction at 7C9111E6 tried to read from 001b:7c802407 3945e0 cmp dword ptr [ebp-20h],eax
10: kd> p
an invalid address, FFFFFFFF

001b:7c80240a 7402 je 7c80240e
10: kd> p
*** enter .exr 042BFBE0 for the exception record
001b:7c80240c 33c0 xor eax,eax
10: kd> p
*** enter .cxr 042BFBFC for the context
001b:7c80240e e8fe000000 call 7c802511
10: kd> p
*** then kb to get the faulting stack

STACK_TEXT:
805513ac 80545119 00000001 00000002 000000d1 nt!RtlpBreakWithStatusInstruction
805513ac f76f9162 00000001 00000002 000000d1 nt!KeUpdateSystemTime+0x175
80551450 80545d3c 00000000 0000000e 00000000 intelppm!AcpiC1Idle+0x12
80551454 00000000 0000000e 00000000 00000000 nt!KiIdleLoop+0x10
#8264diderius6Yesssa ,
I solve the problem with hanging XP SP3 setup after I see that it goes to the crazy timer with
modded XP SP3 5512 version files

acpi.sys laast outerspace )
hal.dll
intelppm.sys

Dietmar

EDIT: Direct setup to nvme device also works. But when you dont use an original XP SP3 CD, the message of allowing unsigned drivers is gone. So you get Bsod on 3. reboot 0x7B and you have to integrate the nvme driver by hand in registry (in System and also criticaldevicedatabase).



diderius6 has attached files to this post
#8265Mov AX, 0xDEAD
Zitat von ⇗ infuscomus im Beitrag ¶ #8257
@diderius6 @daniel_k @George King @Mov AX, 0xDEAD
If this forum closes (at least according to the announcement)
what forum are we going to move to?

MSFN -  similar sharing policy (i mean no direct links to copyrighted files)
MDL - allow links, but forum itself is unusable for non-registered readers

 

Page 552

#8266George King
Zitat von ⇗ infuscomus im Beitrag ¶ #8257
@diderius6 @daniel_k @George King @Mov AX, 0xDEAD

If this forum closes (at least according to the announcement)
what forum are we going to move to?



It sucks if it happends.

Then MDL, MSFN or maybe bring new life on WinCert? I asked N1K how is WinCert policy with modding files and drivers. [TOOL] POWIS - Powerful Windows Setup - Support Windows Vista, 7, 8.0, 8.1, 10, 11 and their Servers equivalent
⇗ https://forums.mydigitallife.net/threads...p-v1-0-1.83558/

[TOOL] XP2ESD - Create modern Windows XP installer
⇗ https://forums.mydigitallife.net/threads...nstaller.82935/
#8267konsheynDo you know how to implement driver if there is no DOSNET.INF. I'm trying to adopt XP Embedded, not  Integral edition
Thanks
#8268diderius6⇗ @George King

I make a try to overcome the crazy Signature Check for drivers on the XP SP3 install CD
for to enable direct install of XP SP3 on nvme device with the modded syssetup.dll from ⇗ @Mattiwatti

⇗ XP/W2k3 x64 on Modern Hardware (2)

But it does not help.
Still the stornvme.sys is not listed in path Windows\System32\drivers in Registry Services and also no entry in Criticaldevicedatabase. This gives Bsod 0x7B on 3. reboot.
I know, that this happens only because of missing driver signature in stornvme.sys .
May be, that someone here in the forum has an idea for to overcome the Signature Check on the XP SP3 CD
Dietmar

EDIT: I got it . The modded syssetup.dll from ⇗ @Mattiwatti works.
The problem was, that the Setup Routine of XP cant find stornvme.sy_
on the XP SP3 Install CD during GUI-Setup. This path you have to give by hand during this GUI-Setup.
With this modded syssetup.dll it is possible to give a path by hand.
Maybe it is possible, to do something more in the entries.ini file for stornvme.sys or in its stornvme.inf, so that this path is found automatically.
#8269diderius6I make a compare with Winhex,
what ⇗ @Mattiwatti changed in syssetup.dll , because I want to have German version of it.
Quite hard work via Ida Pro.
Here is the compare, left is original and right is modded version of syssetup.dll from
en_windows_xp_professional_with_service_pack_3_x86_cd_x14-80428.iso
Dietmar

1. F:\syssetupdllXPSP3moddd\syssetupORIengl\SYSSETUP\syssetup.dll: 990.208 Bytes
2. F:\syssetupdllXPSP3moddd\SYSSETUP\syssetup.dll: 990.208 Bytes
Offsets: hexadez.

148: DC F8
149: 27 F5
33BFE: 8B 31
33BFF: F8 C0
33C00: 3B 31
33C01: FE FF
33C02: 75 90
33C03: 20 90
33DA6: 8B 31
33DA7: F0 C0
33DA8: 85 31
33DAA: 75 90
33DAB: 17 90
35535: 0F E9
35536: 84 A0
35537: 9F 00
3553A: 00 90
37F03: 3B 31
37F04: C6 C0
37F0B: 75 90
37F0C: 3E 90

21 Abweichung(en) gefunden.


EDIT: Voila, here is modded german syssetup.dll XP SP3 via Ida Pro, nice idea goes to ⇗ @Mattiwatti

EDIT2: With my german modded syssetup.dll I cant choose the path for stornvme.sys and so again on 3. reboot
Bsod 0x7B.
I need to modd the syssetup.dll from a very last original german XP SP3 CD.


EDIT3: I take the syssetup.dll from
de_windows_xp_professional_with_service_pack_3_x86_cd_x14-80444.iso

Doing the same hacks, now I can choose the path for stornvme.sys
and it is complete German version (for example Programme instead of Program Files).

Now install of german XP SP3 direct to nvme device with the new driver from ⇗ @George King
is ultrafast and straight.



diderius6 has attached files to this post
#8270
#8271
#8272
#8273 plutomaniacThis thread has been deleted for continuous violation, even after warnings, of ⇗ Rule #17, among others.

Any modified driver must be clearly marked as such, include the source/modder and NOT involve any binary/signature components.

 

This thread has been closed.