Page 5 of 529
#61 RE: Windows XP SP3 32bit and modern PC parts by Mov AX, 0xDEAD 26.11.2018 22:03

avatar

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 RE: Windows XP SP3 32bit and modern PC parts by diderius6 26.11.2018 22:35

avatar

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 RE: Windows XP SP3 32bit and modern PC parts by diderius6 27.11.2018 20:25

avatar

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 RE: Windows XP SP3 32bit and modern PC parts by Mov AX, 0xDEAD 27.11.2018 20:49

avatar

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 RE: Windows XP SP3 32bit and modern PC parts by diderius6 27.11.2018 21:36

avatar

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 RE: Windows XP SP3 32bit and modern PC parts by Mov AX, 0xDEAD 27.11.2018 23:58

avatar

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 RE: Windows XP SP3 32bit and modern PC parts by diderius6 28.11.2018 01:11

avatar

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 RE: Windows XP SP3 32bit and modern PC parts by diderius6 28.11.2018 02:08

avatar

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 RE: Windows XP SP3 32bit and modern PC parts by Mov AX, 0xDEAD 28.11.2018 11:24

avatar

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 RE: Windows XP SP3 32bit and modern PC parts by diderius6 28.11.2018 11:43

avatar

@ Mov AX, 0xDEAD,
oh, this is really nice.

How do you reach this?

Have a nice day
Dietmar

#71 RE: Windows XP SP3 32bit and modern PC parts by Mov AX, 0xDEAD 28.11.2018 16:24

avatar

...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 RE: Windows XP SP3 32bit and modern PC parts by diderius6 28.11.2018 17:26

avatar

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 RE: Windows XP SP3 32bit and modern PC parts by diderius6 30.11.2018 02:00

avatar

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 RE: Windows XP SP3 32bit and modern PC parts by diderius6 01.12.2018 00:14

avatar

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

#75 RE: Windows XP SP3 32bit and modern PC parts by diderius6 01.12.2018 01:32

avatar

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.

Xobor Forum Software von Xobor
Datenschutz