Jump to content

Leaderboard

Popular Content

Showing content with the highest reputation on 07/09/2022 in all areas

  1. And additionally, on Windows XP, Process Explorer v16.32 works, but doesn't show the menu bar icons and graphs. The last version which works completely is Process Explorer v16.22.
    3 points
  2. <OT> Even though I've been warned, I still enjoy a lorna doone shortbread cookie ... call me a rebel. <OT>
    3 points
  3. The fact that Feodor has been able to do as much as he has, given the circumstances, is truly incredible. I admire his dedication and enthusiasm for the projects he's worked on over the years...his 'old' MyPal (29.3.0) is still one of my primary daily-use browsers in XP, and it's been very exciting to see the progress that has been made so far on the newer 68. He's one talented coder, as his 'resurrected' MyPal 68 has proven...it's a shame to look back on that whole fiasco nearly one year later, because the Pale Moon developers had an opportunity to take the highest of high roads by inviting Feodor to work with them and even help them restore official compatibility to benefit XP/Vista users, but instead they fought and alienated him and many others. In a more ideal world, there would have been a mutual respect that could have led to a long-term partnership, maybe even a friendship. I'm genuinely praying for him, his family, and all of his friends...and of course, I'm keeping Roy in my thoughts too as he's in Hong Kong. They both come from places that have been through so much, especially in recent times. To Roy and Feodor: thank you both VERY much for everything you have done. Your efforts have never, ever been in vain.
    3 points
  4. ... Well, Serpent 52.9.0 is my default browser here (Vista SP2 32-bit); when loading https://www.lner.co.uk I get the mis-rendered page layout everyone else got in this thread... But, as suspected, the root cause is NOT Javascript code per se, but CSS code instead ; the LNER site has been redesigned internally (an uncalled for change just to cater to newer web standards [read Google Chrome and its Firefox sibling]) to use newer CSS code not supported by the XP/Vista browsers mentioned here with regards to this issue... In Serpent's "about:config" internal page, I enabled "layout.css.report_errors" (from false to true), then I opened Web Console (ctrl+shift+k) and loaded the LNER homepage anew; multiple Missing closing ‘)’ in negation pseudo-class ‘,’. Ruleset ignored due to bad selector. CSS errors populated the Web Console output... Doing a search for that specific error, I arrived at: support compound selectors and complex selectors within :not() negation pseudo-class a Bugzilla "bug" first reported on Oct 31st 2013, but only "closed" on Oct 29th 2020 (!) ... The new CSS feature was finally implemented in Mozilla Firefox v84.0+ ... You can read more about that CSS feature in https://developer.mozilla.org/en-US/docs/Web/CSS/:not and https://css4-selectors.com/selector/css4/negation-pseudo-class/ and https://caniuse.com/css-not-sel-list The "CCS-selector-L4 negation pseudo-class" (the feature now required by the LNER site) has been implemented in Chrome starting with version 88: so that's why that site doesn't render correctly in ALL 360EE versions compatible with XP/Vista... Sad as it might sound, stable Chrome is now at version 103, (most useful) sites will never cease the endless game of catering ONLY to what latest Chrome exclusively supports; backwards compatibility isn't even an after-thought nowadays ... Chromium 86 (fork point of 360EEv13/13.5) is now 17 major versions behind current Google Chrome release branch, it has now started to show its age with regards to WebCompat 2022... Opting not to visit sites optimised for latest Chrome might be one way to deal with the modern web (when on "legacy" browsers supporting XP/Vista), but it's just "sweeping the problem under the rug"; what if it's a site you absolutely have to use, say in order to buy a railway ticket on-line? What if, like me, you don't own an Android device, either? Damn you Google...
    2 points
  5. New build of Serpent/UXP for XP! Test binary: Win32 https://o.rthost.win/basilisk/basilisk52-g4.8.win32-git-20220709-3219d2d-uxp-206c9dcbb-xpmod.7z Win64 https://o.rthost.win/basilisk/basilisk52-g4.8.win64-git-20220709-3219d2d-uxp-206c9dcbb-xpmod.7z source code that is comparable to my current working tree is available here: https://github.com/roytam1/UXP/commits/custom IA32 Win32 https://o.rthost.win/basilisk/basilisk52-g4.8.win32-git-20220709-3219d2d-uxp-206c9dcbb-xpmod-ia32.7z source code that is comparable to my current working tree is available here: https://github.com/roytam1/UXP/commits/ia32 NM28XP build: Win32 https://o.rthost.win/palemoon/palemoon-28.10.6a1.win32-git-20220709-d849524bd-uxp-206c9dcbb-xpmod.7z Win32 SSE https://o.rthost.win/palemoon/palemoon-28.10.6a1.win32-git-20220709-d849524bd-uxp-206c9dcbb-xpmod-sse.7z Win64 https://o.rthost.win/palemoon/palemoon-28.10.6a1.win64-git-20220709-d849524bd-uxp-206c9dcbb-xpmod.7z Official UXP changes picked since my last build: - Issue #1948 - Update nestegg library. (b7a771fce) - Issue #1949 - Part 1: Update soundtouch library to 2.3.1. (e98c7b8f6) - Issue #1949 - Part 2: Disable exceptions in soundtouch's STTypes.h. (f170360d1) - Issue #1952 - m-c 1365387: Optimize FinishBoundFunctionInit by delaying atomizing the function name (53d6173cf) - Issue #1952 - m-c 1371593: Avoid repeated string atomizations when retrieving the unresolved name of a bound function (fc6c505da) - Issue #1952 - m-c 1380962/1: Merge append calls when assembling the source string for native functions (70eee9b0d) - Issue #1952 - m-c 1380962/2: Remove unnecessary lambda function in FunctionToString (1e753237e) - Issue #1952 - m-c 1383775: Clean up function toString/toSource code, remove remnants of source decompiler (85af7f6e8) - Issue #1952 - m-c 1440468: Proxied functions can't be passed to Function.prototype.toString.call() (887e6d0ab) - [network] Clean up and update the list of external protocol handlers. (7c429f525) - [DOM media] Remove potentially unsafe type accesses when debug logging (6066cc36c) - Update NSS (2706ef696) - [network] Clear PAC loader when the load failed (991e2ffb4) - [DOM] use the sanitizer to restrict href in svg:use to fragment-only URLs (c0429c9a0) - [XPCOM] Crash safely when TArray replacements are OOB. (37d0ffa17) No official Pale-Moon changes picked since my last build. No official Basilisk changes picked since my last build. * Notice: From now on, UXP rev will point to `custom` branch of my UXP repo instead of MCP UXP repo, while "official UXP changes" shows only `tracking` branch changes.
    2 points
  6. And one thing is totally clear. Without the efforts and support of @roytam1, @feodor2, @NotHereToPlayGames, @Humming Owl and so on, Windows XP would have been died years ago. Therefore, thanks to you all for your great work , and keep Windows XP alive as long as possible! Kind regards, AstroSkipper +
    2 points
  7. Solving BSODs 0xA5(..., ..., ..., ...): Windows XP/2003 supports 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, 95% solved, 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 generates 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 v.6666 based on original Windows XP SP3 v.5512 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 3) acpi.sys compiled from leaked "XP SP1+W2003 RTM" sources Pro: - allow compile x64 build based on W2003 sources Cons: - same as v.6666 - 0xA5 (0x11, 0x08, ..., ...) unknow error in _AMLILoadDDB, probably fail after parsing DSDT/SSDT table, solved Patch (by Diderius): - 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 v6666 & 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 ) Intel Motherboards specific issues: 1) ACPI BSOD 0xA5 (0x02, ..., ..., ...), error in ACPIRangeValidatePciResources, ACPI vs E820 conflict, solved BSOD is generated by DSDT code like this: 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) 2) Device Manager show conflict between Video Card and Motherboard resources Device IOTR(PNP0C02) claim 255 I/O adresses in range 0xFF00-0xFFFE, this range conflict with Video Card I/O range because vga has limitation to 10Bit I/O decoding. 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 3) No CPU power saving, most time CPU in C0 state even without cpu load 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 (default Windows 7 power saving mode, DPC Latency Checker shows significal increased latency in this mode): Replace Acpi2C3ArbdisIdle to: 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 Replace Acpi2C2Idle: 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 4) Programs show wrong timing results/works only first 3.5 sec 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 / inform Win7+ about existing HPET timer (not acpi timer!)) Patch (by Diderius) "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: 5) No driver for Intel SATA Controller - BSOD 0x7B(..,..,..,..) 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/ Tip: Add PCI\VEN_8086&CC_0106 or PCI\VEN_8086&CC_010601 to *.inf as universal DEV_ID for any Intel AHCI Sata Controller AMD Motherboards Issues ACPI BSOD 0xA5 (0x0000000D, ..., ..., ...) duplicated _HID method Patch: - Skip DetectDuplicateHID processing (v5512 .text:00013F6C => jmp .text:00013F6C) BSOD 0x7E (..., ..., C0000005, ...) unknow error in AcpiArbCrackPRT Patch: (v5512 jnz short .text:0001BD6D => jmp short .text:0001BD6D) Intel USB3 Controller Drivers 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, recommended driver 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 ssues 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, solved, many solutions: 1) UAS Driver from Windows 8 + storport.sys from Windows 2003, beta 2) UAS Driver from Windows 8 + storport.sys from Windows 7, beta 3) UAS Driver from Windows 8 + storport.sys from Windows 8, beta 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 Patches for Microsoft Generic USB3 driver 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) Patch for AMD driver (amdxhci_adresscalc_fix) 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 UASP driver (via_uas_fix) 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 UASP driver (etron_uas_fix) Restore "Safe Remove": - replace in EtronSTOR.SYS (any version): OR dword ptr [eax+4], 0300h -> OR dword ptr [eax+4], 0000h 4GB+ RAM Support - Windows 2003 supports more than 4Gb RAM without additional actions, limited to some value depending "Edition" - Windows XP ServicePack1 supports 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, lack of HAL_DMA patch 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 UEFI Boot - 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, Guide LINK 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 NVMExpress Drivers 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 GPT partitions Windows 2003 already supports 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, currently not available for sale) Booting from GPT disk partially solved, need convert pure GPT to HybridMBR, Guide LINK by Levvon Saving crash dumps through storport based disk controller drivers 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 Modded AVX/AVX2 kernel Currently Proof-Of-Concept, only one kernel version supported LINK Projects for Developers/Advanced Users - 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, https://msfn.org/board/topic/181615-ntoskrnl-emu_extender-for-windows-xp2003/ Research & Experiments Running Windows XP with "new generation" ACPI.sys taken from many Vista Beta/Longhorn version Running existing USB3 vendor's drivers on Intel USB3.0 controller Implementation of ACPI Timer/HPET on different windows generations Switching between DMA32/DMA64 under PAE Environment, Windows XP Switching between DMA32/DMA64 under PAE Environment, Windows 7 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
    1 point
  8. ... FWIW, that forum loads and displays fine in latest Serpent 52.9.0 by roytam1: itself a fork originally of FxESR52 (but now significantly distanced from...); time and again I've tried to convince you, Dave, to migrate from FxESR52 over to St52 (on your XP partition), but I understand your absolute need to have your desktop Firefox copy synced with your mobile Firefox is what still keeps you from doing so... Anyhow, to each his own...
    1 point
  9. Not good news for us still using XP and Vista :( Don't own and Android device either and don't want one either.
    1 point
  10. The easiest route would be to visit the website via Wayback Machine, save the three .css files locally, then have Proxomitron inject your locally-stored .css instead of the server-served "modern" .css. edit - but it may require "transpiling" the modern .css, save that locally, and inject it via Proxomitron.
    1 point
  11. Thanks so much guys, especially @VistaLover, great detective work! So, it appears that 360Chome 13.5, which I thought would be pretty much OK at least in the short term, already isn't! How would Proxomitron fix this? Certainly using ProxHTTPSProxy seems to make no difference to the problem.
    1 point
  12. i have a 90gb ssd partition for vista with 40gb free (with so much crap installed on it's not even stable anymore) so about 60gb should be ok
    1 point
  13. Dave , it's not a complete mess , but it looks more like if you just switched the java script off. Works fine on chrome 104. This is exactly the same situation with my gym website. EDIT: I also tried MiniBrowser (chrome 87) and the same "mess".
    1 point
  14. Yes, thanks for that. This is off-topic here of course, but I've been very impressed how the developer of Otter has stuck with it all this time. Its updates are few and far between, its user forum is dead, and it seems to now be completely just one person's project. It was of course specifically intended to be a replacement for my much beloved Presto Opera, as was Vivaldi, but the latter went the Chromium route of course, and that was the end of it as far as XP was concerned. It never occurred to me that the LNER site might work in Otter, and when @AstroSkipper pointed it out, I was amazed! As far as this thread is concerned, I'm more concerned that the site won't work in 360Chrome 13.5, and it's the first site that I've seen completely fail to render properly in that browser. I can only assume that the site now needs a Chromium version newer than 86, or there is some JavaScript incompatibility. It's not a site I use very often, but it was certainly fine the last time I used it, so they must have done some code changes. Looking at it in Firefox 102 it looks to me exactly as it did before, so it hasn't actually been redesigned, something's just been done in the background. Can anyone see it correctly in any version of 360Chrome?
    1 point
  15. Otter Browser is definitely a good option for XP, especially if you like WebKit and/or the Opera 12.x interface...I still like to use the original Opera 12.18 for some lightweight browsing from time to time, but this is a worthy successor to the classic Presto Opera legacy browsers. It has a lot of capabilities that classic Opera lacks (including correctly rendering this forum; in fact, I am writing this reply from the latest stable Otter Browser release with JavaScript enabled!), but is behind other browsers such as the UXP-based ones in other useful features. In general, it's a great browser if you understand WebKit's strengths and weaknesses (it beats Presto in rendering but doesn't quite get up to higher Gecko/UXP/etc. levels) and can live without some of the fancier features you'll find in UXP-based browsers, MyPal 68 and the like. It's also a lot more stable than it used to be, though I can imagine earlier releases may have had speed advantages over the latest builds (though speed ultimately doesn't mean very much if the browser itself isn't particularly stable). Otter Browser gets my stamp of approval (for what VERY little that's worth)!
    1 point
  16. May be the Browser Kernel was not surport the website
    1 point
  17. Actually, the flag --disable-file-system would have to prevent the access of Chrome apps (and extensions?) to the user's local file system. It seems to be a security option, although then a read and write access of installed apps to the user's local file system wouldn't be possible anymore. Is that the idea? What do you think? I didn't find any details about this flag either, only the description "Disable FileSystem API".
    1 point
  18. thanks for flags you provided. "--disable-file-system --disable-gpu" really works in term of memory relief. I can see when a thread of memory release as a tag is closed. I can't find what "--disable-file-system" do it seems disable file sytem file api but nothing in detail. For DC browser update I will be looking forward it.
    1 point
  19. If I'm understanding right, This has been a problem for a while for some updates for Office 2010, even since Windows update worked normally. I think eventually it will sort itself out, but it could take a while particularly on slower processors.
    1 point
  20. back in 2021, my Vista laptop had Office 2010 and it only take 15 minutes to check for updates and never take forever. Strange
    1 point
  21. ... Thanks ; so, another "misinformation" posted by @Imacri (on the vistax64.com forum):
    1 point
  22. @sparty411 Yes, I agree with you. It's very impressive to see Chrome 102 working on XP, thanks to One-Core-API, which has improved a lot, and it's still improving significantly over time. If you're gonna test One-Core-API, I recommend a VM for this (for safety), since One-Core-API is still in development. That's what I do, and I report any bugs occurring when using One-Core-API. Consider One-Core-API a Work in Progress (WIP). @cmccaff1 I don't recommend using Chrome 102 for daily use though. As @K-BOX2022 said above, it has some main problems, such as: not being able to download files (yes, the last Chrome version [with One-Core-API installed] you can download files with is 74], unable to add extensions to Chrome. The latest version of Chrome, which is 103, doesn't run. Indeed as you have said, hopefully OCAPI will be more stable and reliable in the future. So far, I'm glad of the progress being made.
    1 point
  23. I was able to get past the cookies and accept them (gawd, they taste terrible, I'll stick to oatmeal raisin).... V11 and DC Browser the same ... doesn't look good but I don't know what Its supposed to look like; either. Serpent also the same. I've never in my entire (miserable .. kidding, or am I) life used Otter Browser but thank you @AstroSkipper I've downloaded it and will try it.
    1 point
  24. @Imacri wrote: ... The version currently available there is Process Explorer v16.43 (the x86 binary has a digital, sha256-only, file signature of 2021-08-17) and, upon testing in my Vista SP2 32-bit laptop, I discovered it doesn't launch under Vista SP2 : The previous release, Process Explorer v16.42 (the x86 binary has a digital, sha256-only, file signature of 2021-06-01), exhibits the exact same behaviour as v16.43 ... However, I can confirm that Process Explorer v16.32 (the x86 binary has a digital, sha256-only, file signature of 2020-09-12) is the Vista End-Of-Service[EoS] version of Process Explorer ; no longer available via the official MS page, but can be retrieved via third party reputable archiving sites (I used FileHorse) ...
    1 point
  25. Evidently yes. There is an unsolved thread at another forum by a Vista user who followed a YouTube video by @i430VX to get Windows Update to work. It sounds like it works for everything he wants except updates for Office 2010 SP2: https://www.vistax64.com/threads/svchost-exe-using-100-of-cpu-after-installing-ms-office-2010-sp2-update.305905/
    1 point
  26. This picture is from Thailand. It's like being used in a DNA research company.
    1 point
  27. POSReady 2009 still going strong on the self-service tills in my local Marks and Spencer!
    1 point
  28. Windows NT4 Extended kernel New Added API's : KERNEL32.DLL: Heap32ListFirst Heap32ListNext Heap32First Heap32Next Toolhelp32ReadProcessMemory Process32FirstW Process32First Process32NextW Process32Next Thread32First Thread32Next Module32FirstW Module32First Module32NextW Module32Next CreateToolhelp32Snapshot user32.dll: GetMonitorInfoA MonitorFromWindow shell32.dll: SHGetFolderPathW I managed to run the latest 7-zip version , work slowly but in the right way Update for 15/07/22 New Added API's : SETUPAPI.DLL : SetupDiEnumDeviceInterfaces pSetupMalloc pSetupRealloc ADVAPI32.DLL : ConvertSidToStringSidW OLE32.DLL : CoWaitForMultipleHandles USERENV.DLL : ExpandEnvironmentStringsForUserW ExpandEnvironmentStringsForUserA user32.dll: GetLayeredWindowAttributes GetMonitorInfoW MonitorFromPoint MonitorFromRect SetLayeredWindowAttributes
    1 point
  29. I don't really know about that, but I know that the custom download engine is the same version in all browsers. I guess you can add the respective files and see what happens. You may want to try these extensions or an equivalent one. https://chrome.google.com/webstore/detail/memory-saver/dhnagkedjknpmhmdoaggchdefbmbeabk https://chrome.google.com/webstore/detail/auto-tab-discard/jhnleheckmknfcgijgkadoemagpecfol Cheers.
    1 point
  30. Yes the BIOS can lock out the ability to boot specific architectures. If this is indeed the issue, the only solution is to get a modified BIOS from the manufacturer. There may be a version already available that allows x86 boot but it wouldn't be the latest. You'll have to look at older BIOS and their changelogs if the manufacturer makes things like that. For example, Intel has release notes for their different versions that can be read to find specific ones to use.
    1 point
  31. Hear, hear!!! Long live Windows XP--and thank you for your own contributions! All of you have played a very big part in keeping XP alive!
    1 point
  32. Honestly, what you've done is still very impressive either way. Even if you did not do any coding in the traditional sense, you've still done some tremendous work in compiling these binaries...the fact that support is retained for pre-SSE2 processors is no small miracle, and you can rest assured I know it will get harder as time goes on. I'm grateful because you could have just as easily decided to keep your binaries for yourself--instead, you chose to share them with others, and in a world full of selfish people I am always grateful to ANYONE who is as generous as you have been. Thank you for being humble enough to be so honest--you've earned the right to pat yourself on the back, but that's all up to you. Speaking only for myself, I am definitely looking forward to your future releases! Thank you VERY much!
    1 point
  33. Actually I didn't. In fact, I'm not a C/C++ coder, not even a coder by profession at all. In the process I just learned how to compile an FFmpeg binary for my old pc. So I guess that's all thanks to the optimized FFmpeg code itself, and maybe a little to the GCC compiler that I used. Every single time I try to compile new binaries is a challenge though, because it is getting harder and harder to add back WinXP compatibility. One thing is for sure; without Gianluigi Tiesi's patches I couldn't have done this anymore! He - obviously a professional coder - also releases WinXP compatible FFmpeg binaries, but his binaries aren't compatible with my old CPU. You're welcome nonetheless, of course. https://forum.doom9.org/showthread.php?t=181802
    1 point
  34. If I may say so, I think that's a great idea! Personally, I've been sticking with VLC 1.1.11 for years...for me, 1.1.x was when VLC truly hit its peak, but newer versions I've tested also seem to work quite well. After more than a decade, this old version still gets the job done, and can play a lot of formats with very little toll on the CPU (I believe experimental GPU acceleration was introduced with the 1.1.x series, which really helps if your GPU supports H/X.264 decoding). Also, I agree with everything you said about VLC...for me, it's still the 'heavyweight champ' of media players, and even the newest 3.0.x still knocks a lot of other programs out of the ring. I appreciate that the devs haven't changed the program too much over the years! They've added a lot of support for modern formats and other cool features, while keeping the same great interface we all know & love.
    1 point
  35. Well, I think that I am affected by staying up late, and as I saw, I no longer see well, and as you see I made a terrible mistake "..txt" , Tomorrow I will try and tell you thanks
    1 point
  36. You typed "GetConsoleWindow..txt" when it is "GetConsoleWindow.txt", That will not work. My intent for scanexp was to work for forwarding all the original exports to the original file when building a wrapper. To get all of them, you would have to go into dependency walker, open the original file, and CTRL-A on the lower table of function names, then right-click to do as shown here: Paste into the text file.
    1 point
  37. I think that I did not understand what you mean well because of my poor understanding of the English language, but I did an experiment, where I came up with a API in the GetConsoleWindow.cpp file with the API code written in C++ , and I wrote the name GetConsoleWindow in GetConsoleWindow.txt then I ran scanexp and the result was like this, it was deleted the C++ code for GetConsoleWindow and change it with this comment I think that my understanding of the work of this program is wrong , how do you add functions with this ’?, you may need an in-depth explanation or make a video please , I discovered that the way I work now is not like this at all
    1 point
  38. The original kernel32 would still exist, but it would be renamed to something else (i.e. kernel33). The new kernel32 still needs to export every function that the original kernel32 has, in addition to the new functions. And yes you can write as many functions in a .c/.cpp file as possible, but keep organization techniques in mind.
    1 point
  39. @win32 https://forum.eclectic4un.me/viewtopic.php?f=25&t=130 I am now using another method similar to this, but changing the original file, sometimes it works and sometimes it shows bsod if the additions are large (large API), and the size of the .dll grows a lot, meaning BSOD appears because the base address must be changed, I managed to add some API's and it worked, but it worked Adding successfully is random, So maybe your method will be free of BSOD randomness, should I put the name of the API that the original kernel32.dll is missing in .txt and then put the code of this API in the .cpp file? Why did you say the name of the functions in .txt, meaning many and not the name of one function ?, do you mean that I can put several functions in a .cpp file or what? Please more explication
    1 point
×
×
  • Create New...