Skip to content

Chrome main thread #178

Open
Open

Description

@idontyboi

Since this thread has been made the main Chrome thread (because I figured out the workarounds first?), the Chrome progress as of One-Core-API 4.0.0 is:

  • All versions of Chromium up to 133 at the time of writing.
  • Electron applications mostly works apart from some cases.
  • CEF-based applications also should work with mixed results, like Steam.
  • All Chromium derivatives [Opera, Yandex, Vivaldi, Opera GX] work fine except for WebView2, which can't be installed right now.

image
image

Known Issues with Chromium

Hardware acceleration crashes browser a lot of times on OpenGL 2.1

Hardware acceleration on OpenGL 2.1 crashes the entire browser. To fix, use --disable-gpu switch. Chromium 122 is espically bad about this.

Chromium 111+ x64: massive pagefile requirements

Chromium 111 removes some Windows 7 fallback code, and under x64, each process requires 512 MB of additional pagefile to work. 32-bit Chromium and 64-bit Supermium is not affected.

You can mitigate this in many ways: switching to x86, using --single-process, reducing processes by one of many Chromium command line flags, increasing the pagefile by upwards of 16 GB.

Chromium 113+: flickering title bar

By Chromium 113, there is a flickering title bar on window moving or tab actions. There is no fix, the only fix is DWM.
Exception: Supermium.

WebGPU?

WebGPU support requires hardware newer than any version of DirectX supported in Windows XP or even Windows 7 supports. NVIDIA GPUs using the last drivers are able to properly translate DirectX 11 to OpenGL using WineD3D, but others will either have massive graphical artifacts or don't even work at all.

Compatibility mode for WebGPU, coming eventually in browsers, will solve this problem atleast partially.

Supermium

Due to the requirement of fixing older versions of Supermium, progwrp.dll is still overwritten.
If Supermium breaks in an update, post here rightaway.

Activity

  1. Skulltrail192 commented on Sep 20, 2023

    @Skulltrail192
    Collaborator

    Of course my friend. I want know reason of some bugs:

    • Downloads not working
    • Extensions cannot be installed
    • File Dialog cannot be opened
  2. idontyboi commented on Sep 20, 2023

    @idontyboi
    Author

    Thanks, I only test in XP32. I'm posting this from Supermium 118 on Windows XP. I'm pretty sure that Chrome 103 - 109 will work with the same ncrypt.dll workaround.

    Debug spam in dwmapi_main.c:196

    Please mute this debug spam.

    Extensions can not be installed

    This happens:

    DebugString: "Unexpected object name: L"\\Device\\HarddiskVolume1\\Documents and Settings\\Administrator\\Local Settings\\Temp\\a0229288-db85-4a03-8eac-4441e13dcdc5.tmp""
    DebugString: "Unexpected object name: L"\\Device\\HarddiskVolume1\\Documents and Settings\\Administrator\\Local Settings\\Temp\\Supermium\\User Data\\Default\\Extensions\\Temp\\8acc5a46-6ab1-49d0-a7fc-8c21f83eb9d6.tmp""
    

    There is a issue with GetFinalPathNameByHandleW. You should enhance this function to accept that, likely syncing this function with latest Wine.
    The next thing that is required is accepting Windows 7 flags in FindFirstFileEx.

    Downloads not working is likely the same reason.

    File Dialog cannot be opened

    Likely expects full Vista File Dialog implementation.

    get.webgl.org crashes the tab or browser

    It crashes on SwitchToFiber function. Not much else known about it.

  3. p1glynlol commented on Sep 20, 2023

    @p1glynlol

    Did you use some dlls other than ncrypt.dll to get Supermium 118 to work? For me I can launch Chrome 103-109 and Supermium 117 (without crashing), but I keep getting Aw Snap error on Supermium 118.
    VirtualBox_XP_20_09_2023_18_26_47

    Edit: Ok now it works fine by adding --single-process and --disable-webgl on the shortcut. Also I just noticed that the browser looks off (Did they readded GDI rendering?).

  4. idontyboi commented on Sep 20, 2023

    @idontyboi
    Author

    I used --single-process --disable-webgl shortcut to reduce memory and be able to debug the process [thus see what caused it to crash in the first place] and to make Chrome take less memory. I haven't tested without it: that is the only DLL I used.

    More issues:
    User data seems to be stored in the %TEMP%... for some reason. So if you clear temporary directories, browser data is gone.
    image

    Rendering a PDF crashes the whole browser. It's painful to investigate due to memory constraints and the debugger itself crashing, but it could be due to the extension issues.

  5. jonm58 commented on Sep 20, 2023

    @jonm58
    Contributor
  6. Skulltrail192 commented on Sep 20, 2023

    @Skulltrail192
    Collaborator

    Can you help-me about Firefox 55 issue too?

  7. idontyboi commented on Sep 20, 2023

    @idontyboi
    Author

    Oh, good timing. I was testing that and got Firefox 59.0.3 working.
    Patch mozglue.dll

    0000688E: 3D 90
    0000688F: B4 90
    00006890: 05 90
    00006891: 00 90
    00006892: 00 90
    0000AFD7: 68 EB
    0000AFD8: 20 0E
    

    Also go on about:config and disable multiprocess otherwise every tab crashes
    ntdll.LdrRegisterDllNotification is required to get Firefox 59+ working.
    It's likely that you also need either a real implementation of LdrRegisterDllNotification or enhancements to condition variables.
    If you want I can open another issue
    image

  8. Skulltrail192 commented on Sep 20, 2023

    @Skulltrail192
    Collaborator

    Thanks for all! Do you have discord, skype or any way to contact you? Do you tested Opera too? I don't know why Opera traditional not work and Opera GX work. Edge only work if you install Visual Studio Debugger. All installers not working.

  9. idontyboi commented on Sep 20, 2023

    @idontyboi
    Author

    I do, what's your Discord username?
    It's expected that all the other Chromium browsers call said ncrypt.dll API and crash/burn, but I have only tested Supermium. Some likely don't call the defect API.
    Also consider running WINE tests and unzip the tests to see API conformance with Windows. Condition variables have very poor results, and this impacts Firefox 59 requiring a patch to skip over errors. kernel32_test.exe file also causes a BSOD.

    kernel32_test.exe sync
    sync.c:2797: Test failed: got 3735928559
    sync.c:475: Tests skipped: RtlInterlockedPushListSListEx not available, skipping tests
    sync.c:596: memory resource notifications not supported
    sync.c:1159: Test failed: DeleteTimerQueueTimer
    sync.c:1964: Test failed: SleepConditionVariableCS should return ERROR_TIMEOUT on untriggered condvar, not 317
    sync.c:1973: Test failed: SleepConditionVariableSRW should return ERROR_TIMEOUT on untriggered condvar, not 317
    sync.c:1980: Test failed: SleepConditionVariableSRW should return ERROR_TIMEOUT on untriggered condvar, not 317
    sync.c:1869: Test failed: SleepConditionVariableCS should return ERROR_TIMEOUT on out of band wake, not 317
    sync.c:1879: Test failed: SleepConditionVariableCS should return ERROR_TIMEOUT on out of band wake, not 317
    sync.c:1898: Test failed: SleepConditionVariableCS should return ERROR_TIMEOUT on out of band wake, not 317
    sync.c:1964: Test failed: SleepConditionVariableCS should return ERROR_TIMEOUT on untriggered condvar, not 87
    sync.c:1973: Test failed: SleepConditionVariableSRW should return ERROR_TIMEOUT on untriggered condvar, not 87
    sync.c:1980: Test failed: SleepConditionVariableSRW should return ERROR_TIMEOUT on untriggered condvar, not 87
    sync.c:1869: Test failed: SleepConditionVariableCS should return ERROR_TIMEOUT on out of band wake, not 87
    sync.c:1879: Test failed: SleepConditionVariableCS should return ERROR_TIMEOUT on out of band wake, not 87
    sync.c:1885: Test failed: SleepConditionVariableCS should return TRUE on good wake
    sync.c:1891: Test failed: SleepConditionVariableCS should return TRUE on good wakeall
    sync.c:1898: Test failed: SleepConditionVariableCS should return ERROR_TIMEOUT on out of band wake, not 87
    sync.c:1904: Test failed: SleepConditionVariableCS should still return TRUE on crit unlock delay
    sync.c:1918: Test failed: pSleepConditionVariableSRW should return TRUE on good wake
    sync.c:1924: Test failed: pSleepConditionVariableSRW should return TRUE on good wake
    sync.c:1930: Test failed: pSleepConditionVariableSRW should return TRUE on good wake
    sync.c:1936: Test failed: pSleepConditionVariableSRW should return TRUE on good wake
    sync.c:1757: Test failed: error occurred during SleepConditionVariableCS
    sync.c:1761: produced 50, c1 5, c2 23, c3 22
    sync.c:1765: producer sleep 21, consumer sleep 15
    sync.c:2420: Test failed: thread commands were executed in the wrong order (occurred 11 times).
    sync.c:2424: Test failed: AcquireSRWLockExclusive didn't block when called multiple times from the same thread (occurred
     2 times).
    sync.c:2428: Test failed: AcquireSRWLockShared didn't block when the same thread holds an exclusive lock (occurred 2 tim
    es).
    sync.c:2432: Test failed: AcquireSRWLockExclusive didn't block when the same thread holds a shared lock (occurred 2 time
    s).
    sync.c:2436: Test failed: AcquireSRWLockExclusive didn't block when a second thread holds the exclusive lock (occurred 2
     times).
    sync.c:2440: Test failed: thread waiting for exclusive access to the SHMLock was not preferred (occurred 3 times).
    sync.c:2532: number of shared accesses per thread are c1 46, c2 52, c3 46
    sync.c:2533: number of total exclusive accesses is 11
    sync.c:2739: Test failed: Unexpected debug info pointer 00F83D70.
    06e0:sync: 1338191 tests executed (0 marked as todo, 0 as flaky, 29 failures), 1 skipped.
    
  10. Skulltrail192 commented on Sep 20, 2023

    @Skulltrail192
    Collaborator

    My Discord is Samuel Marins#0436

  11. p1glynlol commented on Sep 21, 2023

    @p1glynlol

    Did you use some dlls other than ncrypt.dll to get Supermium 118 to work? For me I can launch Chrome 103-109 and Supermium 117 (without crashing), but I keep getting Aw Snap error on Supermium 118. VirtualBox_XP_20_09_2023_18_26_47

    Edit: Ok now it works fine by adding --single-process and --disable-webgl on the shortcut. Also I just noticed that the browser looks off (Did they readded GDI rendering?).

    I also tried to run patched Google Chrome 117 (https://github.com/Blaukovitch/GOOGLE_CHROME_Windows_7_CRACK) and it works too! (I also don't need to add --single-process and --disable-webgl, I just put ncrypt.dll and start !NOSANDBOX_STABLE.bat).
    VirtualBox_XP_21_09_2023_19_12_19

    Unlike Supermium, this one uses the Windows 10 titlebar instead the one from Windows Vista/7 (without Aero).

  12. Skulltrail192 commented on Sep 21, 2023

    @Skulltrail192
    Collaborator

    What is NOSANDBOX_STABLE.bat?

  13. p1glynlol commented on Sep 21, 2023

    @p1glynlol

    It's the batch file containing the flags for the browser to work "chrome.exe --no-sandbox --use-webgpu-adapter=d3d11 https://cracklab.team/PAunlock/" you can also put it on a shortcut (copy anything except chrome.exe) and it will work fine.

  14. Skulltrail192 commented on Sep 21, 2023

    @Skulltrail192
    Collaborator

    However, i pass --no-sandbox by default

  15. 76 remaining items

  16. p1glynlol commented on Sep 13, 2024

    @p1glynlol

    Update: I tried the newest version "Supermium 126.0.6478.249 R3 (XP x64 Hotfix)" and guess what... It seems to work without NNN4NT5. Make sure to remove (or rename) OCAPI progwrp.dll in System32 and SysWOW64 and restart the computer (else the error will show up again).

    Supermium generates a log called "condvar_use_log.txt" which might have to do with DirectWrite runtime from Supermium, it does work with OCAPI and the emojis also works.

    Windows XP Professional x64 Edition-2024-09-13-14-37-36

    Can anyone test it? If it works then there's no need to use OCAPI progwrp.

  17. Stepman123 commented on Sep 14, 2024

    @Stepman123

    Can anyone test it?

    Yes it works with Server 2003 x86.

    If it works then there's no need to use OCAPI progwrp.

    You are right if someone needs Supermium. I still can't configure Supermium to work as fast as Thorium 109.

  18. Stepman123 commented on Sep 15, 2024

    @Stepman123

    I also tested it on Windows XP without OCA. It seems that win32ss optimized the code for processors like single-core Pentium-4. This is noticeable on modern websites like GitHub, Discord, when images and other page elements are loaded. The CPU load is lower and it happens faster than in Server 2003 OCA.


    To avoid this problem, need to enable HT in the BIOS and reinstall windows + OCA.

  19. TheLostMeme commented on Nov 8, 2024

    @TheLostMeme

    Does this fix still work with latest 4.0.0 RTM? Supermium 126 is still crashing for me.

  20. p1glynlol commented on Nov 8, 2024

    @p1glynlol

    Does this fix still work with latest 4.0.0 RTM? Supermium 126 is still crashing for me.

    Pre-RTM did have updated progwrp, and yes that fix still works.

    I think the crashing issue may be related to AVX? I think having that enabled breaks some apps, I'm not sure if theres a way to do that on real hardware. You can try to ask @Skulltrail192 for help.

  21. TheLostMeme commented on Nov 8, 2024

    @TheLostMeme

    Just tried this fix (renamed progwrp.dll and restarted laptop) and I'm still getting the "Supermium has encountered a problem" error. I even tried spoofing Vista with NNN4NT5 (without restarting, don't know if you're supposed to restart for that to take effect) and it still didn't work.

  22. p1glynlol commented on Feb 7, 2025

    @p1glynlol

    Someone shared this on One-Core-API discord server and I want to share this one here.

    https://github.com/e3kskoy7wqk/Firefox-for-windows-7
    https://github.com/e3kskoy7wqk/Chromium-for-windows-7

    Supermium/R3dfox alternative for Windows 7+ users that had performance issues or want something more vanilla. No progwrp, hex editing and DLL injection. Just most of Windows 10 only code reverted.

  23. xavierzhao commented on Feb 11, 2025

    @xavierzhao

    Any plan to support WebView2? @Skulltrail192

  24. idontyboi commented on Feb 11, 2025

    @idontyboi
    Author

    You can try to set environment variable WEBVIEW2_BROWSER_EXECUTABLE_FOLDER to the path that the main WebView2 executable is located at. However, it is not on the auto no-sandbox whitelist, so you should try WebView2 from version 109 first.

  25. Stepman123 commented on Feb 11, 2025

    @Stepman123
    ---------------------------
    WebView2APISample.exe - Ordinal Not Found
    ---------------------------
    The ordinal 9 could not be located in the dynamic link library d2d1.dll. 
    ---------------------------
    ОК   
    ---------------------------
    
    

    If replace the outdated DLL OCA, then several msedgewebview2.exe processes are launched, but they crash.
    The launch line does not contain --no-sandbox (spied in Process Explorer)

    "C:\PORTABLE\109.0.1518.140\msedgewebview2.exe" --embedded-browser-webview=1 --webview-exe-name=WebView2APISample.exe --user-data-dir="C:\Users\Admin\Мои документы\Downloads\WebView2APISample-release-x86-1.0.902\WebView2APISample.exe.WebView2\EBWebView" --noerrdialogs --embedded-browser-webview-dpi-awareness=0 --embedded-browser-webview-additional-dpi-params=1 --mojo-named-platform-channel-pipe=3764.3648.5846181431696214360

  26. Stepman123 commented on Mar 3, 2025

    @Stepman123

    For webview2 to work with --no-sandbox, another environment variable is needed. WEBVIEW2_ADDITIONAL_BROWSER_ARGUMENTS.

    This works.

  27. bw134polska commented on Aug 10, 2025

    @bw134polska

    Recent versions of Chromium (like 140 or 141) crashes when opening any page (new tab works). There's no other workaround than recommending you to use e3kskoy7wqk's Chromium for Windows 7 which still works.

  28. Skulltrail192 commented on Aug 11, 2025

    @Skulltrail192
    Collaborator

    The issue with chromium starting version 140 will be solved on next OCA version.

  29. ChaseKnowlden commented on Aug 25, 2025

    @ChaseKnowlden

    Google Updater is not installing whenever I try the 32 bit version or the 64 bit version, it crashes.

  30. hubman-star commented on Aug 27, 2025

    @hubman-star

    Supermium 132 exhibits the problem of browser running at 1fps

    Windows XP Professional x64 Edition

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancements-fixesEnhancements or fixes for some application

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions