Jump to content
Strawberry Orange Banana Lime Leaf Slate Sky Blueberry Grape Watermelon Chocolate Marble
Strawberry Orange Banana Lime Leaf Slate Sky Blueberry Grape Watermelon Chocolate Marble

MSFN is made available via donations, subscriptions and advertising revenue. The use of ad-blocking software hurts the site. Please disable ad-blocking software or set an exception for MSFN. Alternatively, register and become a site sponsor/subscriber and ads will be disabled automatically. 


Popular Content

Showing content with the highest reputation since 06/13/2020 in Posts

  1. 13 points
    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 xxx.sys so that it loads ntoskrn8.sys instead of the original ntoskrnl.exe 3) 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) Select Target OS 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) Use shell 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 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 Ported drivers: WDF 1.11 for Windows XP/2003 x32 Last version for Windows XP/2003 is 1.9, but possible to backport 1.11 version: 1) Get files from Windows 7 Updates: WDF01000.SYS v 1.11.9200.20755 WdfLdr.sys v 1.11.9200.16384 2) In WDF01000.SYS replace string ntoskrnl.exe to ntoskrn8.sys in import section, now WDF01000.SYS will import all kernel functions only from Emu_Extender 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** 8) In ported 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 Windows 7's Storport.sys for Windows XP x32 Storport was released only for Windows 2003, but possible to backport Windows 7 version: 1) Get files from Windows 7 Updates (KB3125574): storport.sys v 6.1.7600.23403 2) In storport.sys replace string ntoskrnl.exe to ntoskrn8.sys in import section, now storport.sys will import all kernel functions only from Emu_Extender 3) Storport uses MSI interrupts, need to force use only legacy/compatible interrupts replace hex pattern **8B 8E 3C 01 00** to **B9 00 00 00 90** 4) Recalc checksum Windows 7's NVMe driver for Windows XP x32 1) Get files from Windows 7 Updates (KB3125574): stornvme.sys v 6.1.7600.23403 2) MS Win7 NVMe driver require Win7 Storport.sys, use backported one Windows 8's USB3 driver for Windows XP x32 1) Get required files from Windows 8: ucx01000.sys usbhub3.sys usbxhci.sys wpprecorder.sys usbd.sys from Vista Beta/Longhorn 5456.5: ksecdd.sys 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, now *.sys will import kernel functions only from Emu_Extender 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 x32 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. MS 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, also it generate BSOD (0x0000009F) Take attention: Win8’s STORAHCI + Win7’s STORPORT have significal performance drop and high CPU usage, there is no fix yet 1) Get files from Windows 8 (): storahci.sys v 6.2.9200.16384 2) In storahci.sys replace string storport.sys to ntoskrn8.sys in import section, now storahci.sys will import all storport functions only from Emu_Extender 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: replace hex pattern 83 A6 C8 00 00 00 00 to 90 90 90 90 90 90 90 replace hex pattern 83 8E CC 00 00 00 03 to 90 90 90 90 90 90 90 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 x32 1) Get files from Windows 7 Updates(KB3125574): atapi.sys v 6.1.7600.23403 ataport.sys v 6.1.7600.23403 msahci.sys v 6.1.7600.23403 pciidex.sys v 6.1.7600.23403 2) In ataport.sys, pciidex.sys replace string ntoskrnl.exe to ntoskrn8.sys in import section, now these *.sys will import all kernel functions only from Emu_Extender 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: 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] 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/Premium) AHCI/RAID driver for Windows XP/2003 Intel RST AHCI/RAID drivers (any version, last compatible is for Windows XP/2003 These drivers require storport.sys from Windows 7, use backported version. 1) In file iaStorA.sys or iaStorAC.sys replace string “ntoskrnl.exe” to “ntoskrn8.sys” in import section (do not change second string “NTOSKRNL.exe”) now these *.sys will import kernel functions only from Emu_Extender 3) Recalc checksum Implemented Func List v6: _chkstk _i64toa_s _i64tow_s _itoa_s _itow_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 DllInitialize DllUnload EmClientQueryRuleState EtwActivityIdControl EtwEventEnabled EtwProviderEnabled EtwRegister EtwUnregister EtwWrite EtwWriteString EtwWriteTransfer ExAcquireRundownProtectionCacheAware ExAcquireRundownProtectionCacheAwareEx ExAllocateCacheAwareRundownProtection ExEnterCriticalRegionAndAcquireResourceExclusive ExFreeCacheAwareRundownProtection ExGetFirmwareEnvironmentVariable ExInitializeRundownProtectionCacheAware ExReInitializeRundownProtectionCacheAware ExReleaseResourceAndLeaveCriticalRegion ExReleaseRundownProtectionCacheAware ExReleaseRundownProtectionCacheAwareEx ExRundownCompletedCacheAware ExSetFirmwareEnvironmentVariable ExSizeOfRundownProtectionCacheAware ExWaitForRundownProtectionReleaseCacheAware IoAllocateSfioStreamIdentifier IoConnectInterruptEx IoDisconnectInterruptEx IoFreeSfioStreamIdentifier IoFreeWorkItem IoGetActivityIdIrp IoGetAffinityInterrupt IoGetDevicePropertyData IoGetIoPriorityHint IoGetSfioStreamIdentifier IoInitializeWorkItem IoQueueWorkItemEx IoSetActivityIdIrp IoSetDevicePropertyData IoSizeofWorkItem IoUninitializeWorkItem IoUnregisterPlugPlayNotificationEx KdRefreshDebuggerNotPresent KeAcquireGuardedMutex KeAcquireGuardedMutexUnsafe KeEnterGuardedRegion KeGetCurrentNodeNumber KeGetCurrentProcessorNumberEx KeGetProcessorIndexFromNumber KeGetProcessorNumberFromIndex KeInitializeGuardedMutex KeLeaveGuardedRegion KeQueryActiveGroupCount KeQueryActiveProcessorCount KeQueryActiveProcessorCountEx KeQueryDpcWatchdogInformation KeQueryGroupAffinity KeQueryHighestNodeNumber KeQueryLogicalProcessorRelationship KeQueryMaximumGroupCount KeQueryMaximumProcessorCount KeQueryMaximumProcessorCountEx KeQueryNodeActiveAffinity KeReleaseGuardedMutex KeReleaseGuardedMutexUnsafe KeRevertToUserAffinityThreadEx KeRevertToUserGroupAffinityThread KeSetCoalescableTimer KeSetSystemAffinityThreadEx KeSetSystemGroupAffinityThread KeSetTargetProcessorDpcEx KeTryToAcquireGuardedMutex LpcReplyWaitReplyPort LpcSendWaitReceivePort memcpy_s memmove_s MmAllocateContiguousMemorySpecifyCacheNode MmAllocateContiguousNodeMemory MmGetSystemRoutineAddress ObfDereferenceObjectWithTag ObfReferenceObjectWithTag PcwAddInstance PcwCloseInstance PcwCreateInstance PcwRegister PcwUnregister PoDisableSleepStates PoEndDeviceBusy PoGetSystemWake PoRegisterPowerSettingCallback PoSetDeviceBusyEx PoSetSystemWake PoStartDeviceBusy PoUnregisterPowerSettingCallback PsSetCreateProcessNotifyRoutineEx RtlCheckPortableOperatingSystem RtlIsNtDdiVersionAvailable 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 ZwAlpcConnectPort ZwAlpcSendWaitReceivePort Download Binaries https://github.com/MovAX0xDEAD/NTOSKRNL_Emu/releases Download Sources https://github.com/MovAX0xDEAD/NTOSKRNL_Emu
  2. 6 points
    Default settings just spoof the user agent, which you can replicate by setting general.useragent.override.youtube.com in about:config to: Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)
  3. 5 points
    This tutorial is based on early versions of the kernel which act as nothing more than providing stubs for API functions. Actual functionality is being implemented though and once completed, it will be communicated in this thread. Please contact me directly for inquiries regarding the expanded functionality. For x86 kernel extension, see this post: Attention Windows Vista x64 users! Did you feel wounded by the way your OS was surpassed by NT 6.1? And felt salt being poured into those wounds when BlackWingCat implemented some of those NT 6.1+ functions in his extended kernel for NT 5.0? Now I'm here to give Windows Vista the leg up it has always deserved! All you need is CFF Explorer and ExportTableTester. (rules prohibit the distribution of modified MS binaries) First, enter X:\Windows\System32 (where X: is the letter of your system partition) and copy kernel32.dll (for this experiment, I'm using version 6.0.6002.19623; this method is applicable to versions through 6.0.6003.20686. users with later versions check out my second post below) to another folder. Open that copy of kernel32.dll in CFF Explorer and click "Section Headers [x]" on the left sidebar. Keep your attention on the .text section and scroll down to the bottom of the hex representation of the section, where you will find a portion filled with zeros. Then starting at offset 000BCF50, add all of the non-zero code shown in the image below: Save the file and exit CFF Explorer. Open ExportTableTester and drag-and-drop the file into its window. Click "Edit Exports" at the bottom of the window. Enter each of the 000BCF** offsets referenced in the left window into the "Address of Function (Hex)" field on the right, followed by the function names associated with them below. Reopen the file in CFF Explorer, click "Rebuilder" on the left sidebar, select the checkboxes for "Rebuild PE Header" and "Update Checksum" then click "Rebuild" before saving. Place your modified kernel32.dll in the folder of each application that requires it. Create a file labelled "xxxx.exe.local" (where xxxx is the name of the application executable) in order to direct the executable to use the modified kernel32.dll as opposed to the one in the system32/sysWOW64 folder. If you do the same steps as I did, you should be successful in this endeavour. As a sanity check, I opened Dependency Walker x64, checked the present kernel32.dll and it had those K32* functions previously exclusive to Windows 7 and up. What a feeling of accomplishment! WARNING Remember to keep the "Add New Section" checkbox enabled in ExportTableTester. If not selected, the expanded export table will overwrite some other code below it, which buggered up keyboard layout/localization settings (for example, all keyboard layouts under "English (Canada)" would function like the Canadian French keyboard). Please test thoroughly and post in this thread about any issues that may arise. ExportTableTester, according to other users, may have issues of its own, but no other known tools will manipulate PE32+ export tables the way it does. I plan on eventually introducing additional functions in kernel32.dll as well as in other system files to meet my first goal: running Waterfox 2020.03! In fact, all of the functions that have been added to kernel32 are the missing ones required by its xul.dll (with the exception of TryAcquireSRWLockExclusive, which forwards to ntdll.dll).
  4. 5 points
    Bk52 (the browser, as test application) was initially built by upstream on top of a fork of the Mozilla ESR 52.6.0 platform code; the derived platform is named UXP. Since then, both the original official Basilisk 52.9.x upstream project as well as roytam1's Serpent 52.9.0 fork have significantly diverged from that starting point, but have also diverged significantly between each other, too... IMHO, stating that Serpent 52 is "based on FF52 code" is no longer descriptive of the current situation... Bk55 (the browser, as test application) was initially built by upstream (Moonchild Productions) on top of a forked Mozilla Nightly 53.0a1 snapshot platform code, with very few 54.x and 55.x code elements merged in; the platform that was produced was named Moebius; the app (browser) built on top of it was named Basilisk and was given an app version of 55.x.x, for (if you ask me) sensationalistic reasons ; much of the initial Moebius code, hence, can be described as a pre-53 Firefox snapshot... Serpent 55 by roytam1 was forked off Bk55/Moebius; that upstream project was abandoned in favour of UXP (and Bk52/UXP); since then, St55 is being infrequently maintained as a code melting pot, merging bits of various other upstream projects (e.g. UXP, tenfourfox, Mozilla and even code from IceWeasel 53.x). TL;DR: Current Serpent 55.0.0 has extremely limited affiliation, codewise, with stable Firefox 55.0
  5. 5 points
    How will Tobin feel about this? There has only been one minor glitch where the title/URL/bookmark/tab bar briefly expanded when I was on YouTube. But I may have seen it before on 2012R2. Waterfox Classic 2020.3.1 is working too, but only in non-e10s mode (same as Pale Moon). I need to finish up SetCurrentProcessExplicitAppUserModelID in shell32.dll before e10s will work, it appears. I finished implementing CoGetApartmentType in ole32.dll, and it appears that dwmapi.dll is OK with stubs since the OS doesn't actually use the functions that newer Firefox-based browsers ask of that file. And there are some extra functions in user32.dll and uxtheme.dll that will be needed to make Firefox 68.9 ESR happy. More updates: K32GetModuleInformation will be added to kernel32 to accommodate SeaMonkey 2.53.x. And the thing that keeps e10s from working in Waterfox is that earlier one part of SetCurrentProcessExplicitAppUserModelID was bugged in a way similar to that of SetThreadErrorMode a few pages back. Problem is that NtQueryInformationProcess is not imported by the original Vista file, and there is no room to expand the import table (and I haven't found a good way to move import tables in x64 binaries yet). So first I tried adding NtQueryInformationProcess as a subroutine to shell32.dll. But that causes waterfox to crash with a BEX64 error (related to DEP/NX). And NtQueryInformationProcess has a syscall function in it. According to Intel 64 manual, syscall is a "Fast call to privilege level 0 system procedures". And as such, it is inappropriate for shell32 and should only be in ntdll.
  6. 4 points
    New build of Serpent/UXP for XP! Test binary: Win32 https://o.rths.ml/basilisk/basilisk52-g4.6.win32-git-20200711-61fb611-uxp-936438dd5-xpmod.7z Win64 https://o.rths.ml/basilisk/basilisk52-g4.6.win64-git-20200711-61fb611-uxp-936438dd5-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.rths.ml/basilisk/basilisk52-g4.6.win32-git-20200711-61fb611-uxp-936438dd5-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.rths.ml/palemoon/palemoon-28.10.1a1.win32-git-20200711-92c0881dc-uxp-936438dd5-xpmod.7z Win64 https://o.rths.ml/palemoon/palemoon-28.10.1a1.win64-git-20200711-92c0881dc-uxp-936438dd5-xpmod.7z Official UXP changes since my last build: - Issue #618 - Check for failed instantiation when starting to fetch dependencies (ec10b65dd) - Issue #618 - Add clarifying code comments. (98752af13) - Issue #618 - Align module instantiation/errors with the updated spec. (61a471ef1) - Issue #618 - Update code comments for ModuleInstantiate (9ca741472) - Issue #618 - Add APIs to query module record errors (74c48bcc7) - Issue #618 - Match JSAPI names with the changes in 9ca74147225eed305e28c7887f9b2251aeeb0f36 (10e262441) - Issue #618 - Fix JSAPI additions to pass the JS context. (121935cae) - Issue #618 - Remove eager instantiation (046534432) - Issue #618 - Remove context and heap-idle check (9b60e7110) - Issue #618 - Further align error handling for module scripts with the spec (66bf3a227) - Issue #618 - Slightly improve module scripting tests. (d637d99ee) - Issue #618 - Report source position information (line/column) (2dff89b65) - Merge branch 'es-modules-work' (c053de708) - Issue #618 - Fix typo and remove old function declarations. (e378530bc) - Merge branch 'es-modules-work' (7cebdd781) - [image] Add a sanity check to JPEG encoder buffer handling, just in case. (64be1dc32) - [AppCache] Add check for disallowed encoded path separators (1409983d2) - [WebRTC] Make candidate pair insertion code easier to read/understand. (7bc3826bc) - [js] Improve readability and control flow of js date string parser. (247ed6576) - [NSS] Implement constant-time GCD and modular inversion (3e56a2c97) - [NSS] Version and build bump (c5e5d7068) - Force clobber (5d700cd91) - [js] Get the class pointer from the ObjectGroup in NativeObject::slotSpan (f0a6ca4f9) - [network] Use query and ref lengths if available in nsStandardURL. (936438dd5) Official Basilisk changes since my last build: - Issue MoonchildProductions/UXP#1578 - Add global menubar support for GTK (7b88cc8) - Merge pull request #19 from Lootyhoof/global-menu (08794b6) - Issue #17 - Reinstate erroneously removed unload event listener (61fb611) Official Pale-Moon changes since my last build: - Issue #1782 - Add option to insert all new tabs after the current tab (e823327b3) - Update back-end branch pointer (Unstable 2020-06-27) (7b4263d20) - Update back-end branch pointer (Unstable 2020-07-06) (92c0881dc)
  7. 4 points
    Microsoft bashing is... Sometimes warranted. Ignoring their own "desktop consistency guidelines" to what, try to make it look "different"? Just bad policy. Show me someone who honestly thinks desktop usability is "new and improved". I love the system Windows is based on. I've been a Windows afficionado since the time of NT. Second to none the kernel is. Dave Cutler's design was so many decades ahead of its time and is still better than any version of Unix, IMHO. But it is not open and it is starting to look like we have already seen the best it could become. Today Windows development appears to have become about hanging all kinds of things on that solid kernel and calling them operating system improvements, because "perception is reality". Truth be told, even as a software developer I don't need cloud-integration. But Windows is no longer a system for developers. Microsoft envies Apple, and that is a very, very bad thing. -Noel
  8. 4 points
    The problem is in the wpsmain.dll file. If you replace it with the old version or patch xompie, then the office will start. The ksomisc.exe error still appears, but it does not affect the work, it can be deleted, without it there is no error and everything seems to work without problems.
  9. 4 points
    New build of Serpent/UXP for XP! Test binary: Win32 https://o.rths.ml/basilisk/basilisk52-g4.6.win32-git-20200704-34cf555-uxp-fd602fbff-xpmod.7z Win64 https://o.rths.ml/basilisk/basilisk52-g4.6.win64-git-20200704-34cf555-uxp-fd602fbff-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.rths.ml/basilisk/basilisk52-g4.6.win32-git-20200704-34cf555-uxp-fd602fbff-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.rths.ml/palemoon/palemoon-28.10.1a1.win32-git-20200704-7b4263d20-uxp-fd602fbff-xpmod.7z Win64 https://o.rths.ml/palemoon/palemoon-28.10.1a1.win64-git-20200704-7b4263d20-uxp-fd602fbff-xpmod.7z Official UXP changes since my last build: - Issue #1602 - Make sure we have a JSObject before trying to get global. (c7330b5eb) - Issue #1603 - Part 1: Reorganize ScriptLoader/ScriptElement (c45b7ee3a) - Issue #1603 - Part 2: Split some classes out of ScriptLoader.cpp (9056191e6) - Merge branch 'es-modules-work' (fd602fbff) No official Basilisk changes since my last build. Official Pale-Moon changes since my last build: - Issue #1782 - Add option to insert all new tabs after the current tab (e823327b3) - Update back-end branch pointer (Unstable 2020-06-27) (7b4263d20)
  10. 4 points
    Unfortunately things aren't working out with Brave: And I have identified two conditions that may cause a system to lock up; first, running chrome_pwa_launcher.exe from Brave's folder or attempting to use Netflix in Firefox 68 ESR and later. In the second case, it seemed to be due to GetCurrentPackageId, which is a Windows 8 function. Firefox also does exhibit completely different behaviour if tricked into thinking it's on 8.x, as most UI elements don't work in that case. You can disable buggy functions by opening your local copy of a dll in ExportTableTester, and simply changing "XXXXFunction" to "XXXXFunctio_". But Electron-based Visual Studio Code seems to be in a better place. The only thing holding that back is my incomplete implementation of Shell_NotifyIconGetRect. All I have to do for that one is add a chunk of the function (as in a part that is separated from the rest), two subroutines with a chunk each, as well as a couple of new qword values in the data section. Luckily, all of its imports are accounted for in the Vista version. I can't think of a good, modern Chromium browser to try. It seems that they are all undesirable in some way, and their only good purpose is to view heavily-DRMed content that roytam1's or Tobin's browsers can't handle. With the expanded complexity of the project in mind, I have scrapped the idea for the tutorial. I am working on alternative means of distribution for the kernel extensions. Please contact me for more information.
  11. 4 points
    Months have gone by and I've had to do without Aero Glass for Win 8+ on several work machines. I thought that as long as I made the Title Bar size a bit smaller I could get used to it, and it IS usable but... Ugh, I can't tell you how many times I've clicked the wrong chrome to get to a window that's partly behind another one, just because I can't differentiate one window from the other. Microsoft has made Windows ugly and basic, and by outlasting people who want otherwise have forced it on us. Microsoft will get no love from me for turning something nice into something stupid. Sure, if they had another new system available that would do it all better - but they don't, and they won't. The desktop metaphor with keyboard, mouse, and monitors was - and is - actually very good still for getting work done. But those who understood how to optimize it have fallen by the wayside and now we have Marketeers whose prime function is to "reduce expectations" in charge. Kind like how you can't buy a car that's not a shade of black or earth tone any more. -Noel
  12. 4 points
    ... Being slightly pedantic, but the URL query parameter should be: disable_polymer=1 Be that as it may, the query no longer works for the main YT homepage, https://www.youtube.com/?disable_polymer=1 (classic style is not restored), but still works for independent video URIs: https://www.youtube.com/watch?v=W-z7hoEWaH4&disable_polymer=1 A Google-bot SSUAO however does, as of this writing, work in both cases... [I'm using just "Googlebot/2.1 (+http://www.googlebot.com/bot.html)"]
  13. 4 points
    New build of Serpent/UXP for XP! Test binary: Win32 https://o.rths.ml/basilisk/basilisk52-g4.6.win32-git-20200620-34cf555-uxp-c05d07a68-xpmod.7z Win64 https://o.rths.ml/basilisk/basilisk52-g4.6.win64-git-20200620-34cf555-uxp-c05d07a68-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.rths.ml/basilisk/basilisk52-g4.6.win32-git-20200620-34cf555-uxp-c05d07a68-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.rths.ml/palemoon/palemoon-28.10.1a1.win32-git-20200620-1e701c445-uxp-c05d07a68-xpmod.7z Win64 https://o.rths.ml/palemoon/palemoon-28.10.1a1.win64-git-20200620-1e701c445-uxp-c05d07a68-xpmod.7z Official UXP changes since my last build: - Bug 1613623 - For IMAP, no longer allow STARTTLS when server sends PREAUTH greeting. (93f74227b) - Bug 1217436 - Make nsIdentifierMapEntry::mIdContentList an AutoTArray to save an allocation (a4c5e74b0) - Bug 1355787 - nsIdentifierMapEntry should let one to use either strings or atoms as keys to avoid slow string assignments when possible. (35754dd1a) - Bug 1426494 - Share more code between nsIDocument and ShadowRoot (43725c726) - Bug 1429656 - Implement ShadowRoot.activeElement (5e7917e2c) - Bug 1430299 - Add DocumentOrShadowRoot interface (bbd59105d) - Merge pull request #1591 from MoonchildProductions/sr.activeElement-work (7cc007d9b) - Merge pull request #1590 from g4jc/mail_patch (68c72c123) - Bug 1316302 - Part 1: Helper methods for HTMLEditRules::WillDeleteSelection() should have an out argument to indicates if it actually handles the action (d8a29fcaf) - Bug 1316302 - Part 2: WillDeleteSelection() should retry to handle it when selection is collapsed and JoinBlocks() doesn't handle nor cancel the action (9f2a6d370) - Bug 1316302 - Part 3: Create EditActionResult class for making the methods which return nsresult, handled and canceled with out params (3dde51910) - Bug 1316302 - Part 4: Refine HTMLEditRules::TryToJoinBlocks() and HTMLEditRules::MoveNodeSmart() with early return style for making scope of EditActionResult variable smaller (55c84e4ce) - Issue #1594 - restore UAC elevation in the uninstaller. (ad966887a) - Follow up to Issue #1578 - Remove unnecessary MOZ_ASSERT (4e688106c) - Merge pull request #1595 from Lootyhoof/issue-1578-fixup (0fab85e38) - Merge pull request #1596 from g4jc/1563 (c05d07a68) No official Basilisk changes since my last build. Official Pale-Moon changes since my last build: - Issue MoonchildProductions/UXP#1578 - Add global menubar support for GTK (dc54fe888) - Issue #1802 - Remove conflicting migration code for SQL storage (2e697a991) - Merge pull request #1799 from Lootyhoof/global-menu (cd8798d98) - Issue #1802 - Enable SQL storage for NSS security by default (1e701c445) My changes since my last build: - Reverted "Issue #1802 - Remove conflicting migration code for SQL storage (2e697a991)" - Reverted "Issue #1802 - Enable SQL storage for NSS security by default (1e701c445)"
  14. 4 points
    We have absolutely no idea how long it takes. It could take a full week or it could take 12 hours. We have no idea. This is what I mean with speculation. Did he ever share any info regarding what it takes to update? How big of a chance is there even that this can cause bugs? And if a lot of bugs can be there does he have a very solid way of fixing these with some kind of debugging software perhaps? And having an application without bugs is pretty logical yes. I don't see how that changes anything in this particular situation. We still don't know how much testing is actually done each update. Also, the application is not free. If you can pay for it how is it free? Unless you can pay for the application and your payment changes nothing. You would have the exact same feature set with no downsides. That's what we call an donation. This is clearly a trial/demo. Anyway, I appreciate what BigMuscle is doing because I think this isn't an easy task. He is probably doing this for himself and a small group of people. At least I think so. Like I said, I'm speculating just as much as all of you. I just wanted to get this off my chest. I understand most of the people present on this section of the forum will probably disagree with me or think I don't appreciate what he has created. There is no need for me to make everyone uncomfortable (hopefully I didn't) for a long period of time with replies going back and forth. I really don't want that. The world is already in a full epidemic at the moment. So I just wanted to share what I think, considering this thread was somewhat steering towards the topic. So yeah, be safe and sorry for waltzing in here with my skepticism. I'm just a user like all of you and I can be a bit harsh with what I say. Good day everyone! EDIT: Thinking about it a bit more, I think I might've been a bit too harsh/distrustful. See it as simple food for thought for now, or something. I'm probably overthinking things.
  15. 4 points
    Hello I am French I am a fan of Windows Longhorn and Windows Vista RTM here is my config
  16. 3 points
    I wouldn't go quite that far. If you were Tim Cook you wouldn't be in pursuit of patching an OS from 2007, you'd be too preoccupied depreciating one from 2017 Fair enough, I didn't take into account the x86/x64 subsystems. It's easy to forget x64 NT 6.x is like 2 OSes.
  17. 3 points
    I for one beg to differ. Windows 10 can be made to look and operate exactly like Windows 7, only faster, more stable, and more secure, HOWEVER, to do so requires not only a bit of digging/learning, particularly WRT telemetry and other privacy options, but also some tenacity/perseverance when it comes to those "tweaks" that Microsoft loves to do you a big favor and revert. Here's the basic reason: You and I, and most people at a level to be reading this post, have been around Windows for many years, in some cases decades. I first used Windows at 3.0 (then 3.1 really introduced some stability, and 3.11 introduced networking). I recall playing with memmaker and config.sys for hours to eek an extra 2K of base memory so Doom would load. MOST people who get a new computer today (with no alternative but Windows 10, and worse "Home"), have no clue what the difference between a registry entry and a service is. MOST people today throw their hands up in the air when the machine gives 'em a BSOD or their printer doesn't work, or whatever. Again, you and I and the rest of the gang here know better. We all know enough to make the tweaks needed to make Windows 10 look and feel like nothing more than a better Win7. If anyone is bemoaning Windows 10 because of how it behaves, well, really it's up to them to rein that in and make it behave like you wish it to (and for many, that means "like Win 7 did"). However, the big distinction here, is much of the Windows Metrics parameters we used to use to very finely control how Windows APPEARS (as opposed to behaves) has been taken away from us. And for this, I do agree, Microsoft took a step backwards for us, the minority. But, this is the point. The majority of consumers simply don't have the skills to wield the BFG9000. And so, to reduce the instances of crashes or borked displays, video configurations, etc., Microsoft has dumbed down the interface. I get that from a business perspective, but I wish dearly they'd address the few of us that really do know what we're doing, and give us the "chrome://flags" or "about:config" option. Let *US* take the responsibility... you know, with great power comes great responsibility. *BUT* .... and here's the thing... and we must all really keep this in mind... at least we're not running Mac OS where *everything* is bolted down and you can't do jacketysquat with your own computer. My two cents worth, which today is probably more like .000002 but hey.
  18. 3 points
    youtube: someone figured out that useragent googlebot still gets classic layout https://msfn.org/board/topic/180462-my-browser-builds-part-2/page/91/?tab=comments#comment-1183430
  19. 3 points
    Even in 2018 it was crazy; less than three years after Windows 10 was released, yet that's all my new HP laptop officially supported (what a mess that thing is). But if I bought a laptop in 2004, three years after Windows XP came out, I would have official support for not just XP, but 2000, 98 FE/SE and even NT 4 (ThinkPad T41)! And that laptop has sleep-related bugs with Windows 10 that the officially-unsupported 8.1/2012R2 doesn't have! Even with all of the MS lock-in, relatively few new win32 API functions have been added after Windows 8 so it looks like forcing software incompatibility with Vista exkernel/7/8.x will be difficult for years to come.
  20. 3 points
    Download Manager (S3) There's also a forum for it, 39 pages on mozillazine: http://forums.mozillazine.org/viewtopic.php?f=48&t=2793995
  21. 3 points
  22. 3 points
    That really doesn't seem his style. It's the same thing every time an update breaks aeroglass. Crickets, lots of waiting, People in the forums keep freaking out, asking about an update, demanding bigmuscle address their concerns. He ignores them all. Then a month or two later an update drops. Then a few months later Microsoft breaks it again. Rinse/Repeat. Sure it'd be nice to get faster updates, but I think I'm only in this for $10 at this point. I think I bought $5 license one, used it on 2 pc's. Then I bought a new one and didn't want to wait for 30 days to reuse a deleted key, so paid another $5. I don't feel like he owes me a lot for $10. Especially when i've been using it for years. I tried the only other competition I'm aware of (Windowsblinds) but I didn't like it.
  23. 3 points
    I have been playing around with a dual-boot msdos 6.3 + 7.1 boot system. to help with a help file. There are things to do with these DOS versions yet, but the help-system from 6.22 has been updated to include most of msdos 5.x to 7.x, as well as interesting info on pcdos, versions of programs like emm386 and msd, which shipped with dos, and even basica / gwbasic, etc. http://www.os2fan2.com/files/dos7help.zip is the source. The version of qbasic has a number of known patches applied, inc;luding the *.* and phatcode patches. dos6.com is help.com, renamed so not to overwrite help, and so it's accessable from 4dos as well. qbed.com is edit.com renamed to not overwrite edit.com. The help and ini file are qbed.hlp and qbed.ini, for similar reasons. W
  24. 3 points
    I made a custom Windows Vista Image called Windows Vienna (Named after Windows 7's codename) I gave it it's own kind of look anyway i'm kinda off topic. I used a program called gimagex which is very useful. all you have to do is extract install.wim from the .ISO file and mount it but be sure to select the 'read and write' check box. you can directly replace the modified kernel32.dll file in the Windows directory without any permission issues. once done, check 'commit changes' and then select unmount. here's what i achieved whith gimagex: this took me 2 years to develop btw.
  25. 2 points
    New build of BOC/UXP for XP! Test binary: MailNews Win32 https://o.rths.ml/boc-uxp/mailnews.win32-20200711-9a3d652a-uxp-936438dd5-xpmod.7z Browser-only Suite Win32 https://o.rths.ml/boc-uxp/bnavigator.win32-20200711-9a3d652a-uxp-936438dd5-xpmod.7z source patch (excluding UXP): https://o.rths.ml/boc-uxp/boc-uxp-src-xpmod-20191123.7z No official repo changes since my last build. -- New build of IceApe-UXP for XP! Test binary: https://o.rths.ml/gpc/files1.rt/iceape.win32-20200711-id-eed056673-ia-41157bf-uxp-936438dd5-xpmod.7z for UXP changes please see above.
  26. 2 points
    ... which, sadly, removes support for Pale Moon 27 based forks, like @roytam1's New Moon 27.x.x (whose sse builds are very popular with our members running pre-SSE2 CPUs): https://github.com/gorhill/uBlock-for-firefox-legacy/pull/239#issuecomment-651090892 https://github.com/gorhill/uBlock-for-firefox-legacy/blob/3524cbc34b30d9555eb7e9089aa4a5ea91465741/platform/firefox/install.rdf#L47-L54 https://github.com/gorhill/uBlock-for-firefox-legacy/commit/990daae
  27. 2 points
    Well said, bro. Windows 10 is a pile of $hit by any measurement. AeroGlass is the only thing that makes it tolerable as far as I am concerned. Nothing will ever make it a truly good product. The Redmond Retards are losers that have completely lost their way and couldn't find their a$$es using both hands. All they produce in garbage now. Their nonstop streak of failures started with Windows 8 and there is no end in sight to their stupidity.
  28. 2 points
    Heads up about Firefox installers (78.0.1 to be exact). To install, add "setup.exe" to the list of applications in Application Verifier x86 and adjust version settings accordingly. Firefox 68.9 ESR is mostly working, except for a quirk involving the address/search bars. There are no default search engines and no way to add them. Thus, if you want to load pages directly from the address bar, you have to specify the protocol (like http;// or ftp://). Please note that the uxtheme.dll I'm using is a little stubby, but it does seem to be a far-fetched link. And I'd think that uxtheme would be OK being stubbed as, much like with dwmapi, uxtheme only needs to accommodate themes compatible with Windows Vista and not those for Windows 7. Perhaps some more debugging is needed. As for 78.0.1, it appears we will now need K32GetPerformanceInfo in kernel32.dll. The Firefox executable now also calls for RtlQueryPerformanceCounter in ntdll.dll. The thing is that, ntdll seems to be untouchable in NT 6.0! There's tonnes of extra data beyond the specified sections, which CFF Explorer does not handle gracefully. Stud_Pe does recognize the extra data, and makes new sections beyond it. But I still haven't tried adding any code since, as RtlQueryPerformanceCounter can easily be substituted for something like NtQueryInformationProcess. In fact, now that I extended kernel32.dll and modified firefox.exe, it seems to work similar to 68.9 ESR with the same bug. I'll get to the bottom of this! UPDATE: Turns out that windbg still works with my kernel extensions. So, this is what happens with Firefox 68.9 ESR: Where is search engine information stored in modern Firefox? Furthermore, it thinks I have no Windows Media Foundation. Maybe if I extended it (mf and mfplat.dll) it would work. Maybe. And now for Visual Studio Code: to install it, add VSCodeUserSetup-x64-1.46.1.tmp (or whatever the exe is called, just with a tmp at the end) to Application Verifier x86. It needs these functions: shell32 Shell_NotifyIconGetRect user32 ChangeWindowMessageFilterEx SetWindowDisplayAffinity kernel32 PowerClearRequest PowerCreateRequest PowerSetRequest QueryUnbiasedInterruptTime RaiseFailFastException K32GetMappedFileNameW (this one is for Brave browser based on Chromium 83) But apparently Office 2016+ and MS Edge installers (click-to-run) don't like local files, so they won't install.
  29. 2 points
    I could see them calling reg keys like HKLM\Software\Microsoft\Windows NT\CurrentVersion and calling KeBugCheck or something similar if they saw (or did not see) a certain version. But I don't think that happened in that case. https://docs.microsoft.com/en-us/windows-hardware/drivers/debugger/bug-check-0x139--kernel-security-check-failure Yours had a 3 in parameter 1, so a corrupted LIST_ENTRY. But the issue seems to only be restricted to Windows 8's dxgkrnl.sys; there seem to be no issues with the ones in 7 and 8.1. Perhaps the last working and first broken driver need to be compared, or dxgkrnl.sys needs to be replaced with a 7 or 8.1 version (preferably 8.1). There must be some differences in 8's dxgkrnl.sys compared to the 7 and 8.1 versions, and perhaps the driver no longer accommodates for that one since it's no longer a targeted/supported platform. More specifically, DXGCONTEXT::SubmitPresentHistoryToken needs to be compared between the three OSes. Going back to Vista, I admit that the road to an extended ntoskrnl.exe/dxgkrnl.sys/etc will be tricky. Even with Windows 2000's kernelmode driver extension, some XP display drivers were quite unstable in certain games; BWC had to edit the drivers further to improve functionality. But it will be interesting to see how far we go.
  30. 2 points
    @roytam1<-- Hope this is okay to say it here. https://www.cnn.com/2020/06/30/asia/hong-kong-china-national-security-law-intl-hnk/index.html Hong Kong is about to be governed by a law most residents have never seen. And it's already having an effect ; 2020.06.30 RT ... Just saying that I pay a bit of attention to HK News. Not looking to start up a political discussion here. But I guess now , that you (HK) have less freedom than you once did. Be well , and thanks on the RT Browsers.
  31. 2 points
    Sumatra PDF 3.3 Ported by Barcode http://www.filedropper.com/testpdf2
  32. 2 points
    I appear to have exhausted all reasonable options for modifying the import table aside from rebuilding it from scratch. But shell32 calls over 1200 functions so that is practically impossible. The procedure for doing this on x86 is considerably easier thanks to PE Maker. So I decided to call NtQueryInformationFile instead and now Waterfox Classic 2020.3.1 including e10s works. We are back on track. Even took a peek inside Server 2019's uefi.sys and dxgkrnl.sys. The latter has what appears to be calling dozens of functions missing from ntoskrnl.exe , yet uefi.sys only has about 4.
  33. 2 points
    I think this is probably what you were trying to say, but I will do it myself as well nevertheless: Windows 10 is and should be NT 6.4. I don't see such a huge change that would justify it being "NT 10" except for marketing purposes..and I mean, it should probably suggest progress..and sound fancy. Somehow it does eradicate the initial value that these version numbers had, but oh well. I wouldn't be surprised if by 2023 Windows 10 will be rebranded into "Windows". Feel free to add any additional knowledge or things that I have missed, my knowledge in that area is more than shaky. But hey, this is the perfect place to learn, I have found out many interesting things while browsing through this forum. I fear I am an average Windows user at heart, after all!
  34. 2 points
    This is what's holding back things overall, and generally speaking people are far more tolerant of corporate BS than they were say, 20 years ago: try blocking any of the big five's IPs, you'll find next to no websites will work correctly due to having some assets loaded, usually Google Ads/Fonts or Twitter Bootstrap CDN, or AWS/Azure/GCP hosting facilities being used in some form or another. I get the feeling there will be almost zero choice by the next twenty years, especially given the little faith the many one sided political people out there there are now. The middle ground/balance has been completely eradicated since 2012, leaving no choice anymore unless you're one of the ever-decreasing few who won't give in to it all. It's a shame about Ray how everything has gone over time. (I knew I'd have that song in my head by writing that sentence lol...)
  35. 2 points
    Very often the issue in these polls/opinions is the exact way people considers the OS. I mean, more often than not an opinion is made NOT (as it should in these kind of polls) on the OS as it comes from the good MS guys, but rather on a heavily re-configured/tweaked/customized/changed/what not OS In the case of Jody, he has a system that is probably very unlike Windows 8 (as conceived and released by the good MS guys) but much more like a "modernized" Windows 7. I mean when passing from Windows NT 3.1/3.51 to NT 4.00 and then to 2000 and then to XP (which remains essentially Windows 2000 with some added bells and whistles) there was not any "shock". From XP to Vista there was some shock, but not on the visual impact of the UI, only at its terrible performances (due to underpowered hardware). From Vista to 7 as well no particular shock. From 7 to 8 . Just have a quick tour here: http://toastytech.com/guis/indexwindows.html and you can quickly relive the experience. jaclaz
  36. 2 points
    tried 20200530 build and no problem here, and it crashes since 20200606. I'll need more time for debugging and resolve this.
  37. 2 points
    I can do that in my Linux system. 1. Install the program fontforge. 2. Create a script called e.g. otf2ttf.sh in /home/$USER/bin, with the following content: #!/usr/bin/fontforge i=1 while ( i<$argc ) Open($argv[i]) Generate($argv[i]:r + ".ttf") i = i+1 endloop 3. Make this script executable. 4. Open a terminal in the directory with your .otf file(s) and enter the following command: for i in *.otf; do echo $i; fontforge -script ~/bin/otf2ttf.sh $i; done 5. Profit! [Edit] Fontforge is available for Windows as well, but I have no idea how to proceed there...
  38. 2 points
    bernd said: > Hi Roy, for a couple of your releases, "about:downloads" (Ctrl+J) seems to be partly broken. > I use the add-on "Download Manager (S3) 4.13" (based on the well-known "Download Status Bar") > as my dowload manager of choice. It's my most important add-on and really indispensable to me. > So when I call up the Ctrl+J command, the browser immediately crashes everytime. Last working build > without problems was: https://o.rths.ml/palemoon/palemoon-27.9.7.win32-git-20200404-842aa7563-xpmod.7z > Regarding a "clean profile", I made countless adjustments/modifications in "about:config" > and won't lose them. So this would be a problem... What to do now?? Just some thoughts, am no expert.... Are you using the english version? If not, does it crash in english too? Does about:downloads still crash if that addon is removed? CCleaner and similar tools are often found culprits of weird bugs Or possibly a buggy file in profile folder? Modifications in "about:config": All changes done manually in about:config are stored in your profile folder in file prefs.js, if they are different from default settings. On about:config those are displayed in bold font and marked as "user-set". You can look inside prefs.js with a text editor. Editing is only possible while the browser is closed, but easier on about:config. You can make a backup of that file and restore it later. But better make a BACKUP copy of the whole profile folder, there's a lot other important stuff in it too. If deleting prefs.js helps, you can start experimenting by deleting half its contents to figure out which half contains the culprit. Start the closed browser again for testing. Then delete another quarter of the file and test again, etc. Another trick: Multiple Profiles You can create another, independant new profile, and choose at session startup which one to use. The old and new (or more) profiles are stored in separate subfolders, very handy. Howto: Open "about:support" and click on button "Open Folder" to open the current profile folder. Step one level higher and find file "profiles.ini". If not there, look yet another level higher... Open it with a text editor (did you make a backup already??) Does it look similar to this? [Profile0] Name=default Path=abcdefg.default IsRelative=1 Default=1 [General] StartWithLastProfile=1 Change it to Default=0 and StartWithLastProfile=0 If StartWithLastProfile is missing, create it manually. At next browser start the Profile Manager should appear. Click the button to create a NEW profile, and check the box to ASK at startups.
  39. 2 points
    Phew... After over an hour, I have finally checked every single link on the list to make sure everything still worked, and fixed quite a few broken ones. I hadn't done this since around 2017, so hopefully all the links should be working now for a while
  40. 2 points
    Absolutely! And thank you for the kind words about my YouTube videos. Unfortunately I haven't made another one in a while due to being so busy IRL, but I'll try to make another one soon. I will certainly make one on your kernel extension project for Vista in the future, too. Speaking of getting programs working, I have one that you may be interested in trying: After growing up with the widely-beloved original console game from 2003, I decided to purchase the newly released SpongeBob SquarePants: Battle for Bikini Bottom Rehydrated on Steam. To my dismay (but not to my surprise), it will not run in Windows Vista due to several missing functions. It apparently works with Windows 7 or later according to the Steam page (Win7/8.1 support is claimed in the Additional Notes section), but at least two of these functions are exclusive to Windows 8 or later, so unless these are simply delay load functions that don't prevent the game from running in Windows 7 (I have yet to test it on that OS), then the game will only run in Windows 8 or later. After inspecting the game's executable with Dependency Walker, I came up with this list of missing functions in some DLLs within Windows Vista. Here is a list of missing functions (I know you've already integrated some of these): KERNEL32.DLL missing functions: GetCurrentPackageId GetSystemTimePreciseAsFileTime K32EnumProcessModules K32GetProcessMemoryInfo SetThreadErrorMode TryAcquireSRWLockExclusive USER32.DLL missing functions: CloseTouchInputHandle GetTouchInputInfo RegisterTouchWindow MF.DLL missing functions: MFCreateDeviceSource MFEnumDeviceSources MFPLAT.DLL missing functions: MFCreateDXGIDeviceManager MFCreateDXGISurfaceBuffer MFCreateMFByteStreamOnStream MFCreateSourceResolver MFPutWaitingWorkItem
  41. 2 points
    @RainyShadow testpage works now: www.epicgames.com/store/en-US/free-games For writing thumb older KM needs img.setAttribute('thumb', x) not just img.thumb // img.thumb = img.getAttribute("data-src") || img.getAttribute("data-image"); // add here var x= img.getAttribute("data-src") || img.getAttribute("data-image") || img.getAttribute('data-srcset') || img.getAttribute('lazyload-src') || img.getAttribute('data-original') || img.getAttribute('src-load') || img.getAttribute('srcabsolute') || img.getAttribute('data-img-src') || img.getAttribute('data-ezsrc') || img.getAttribute('data-lazzy') || img.getAttribute('data-zoom-src') || img.getAttribute('data-pagespeed-lazy-src') || img.getAttribute('nitro-lazy-srcset') || img.getAttribute('nitro-lazy-src') ; if (x) img.setAttribute('thumb', x.split(' ')[0]); ------- ATTENTION users of browsers OLDER as Firefox38 / PM27 / KM-Goanna76: add this too: img.getAttribute('srcset') || (modern browsers handle this one automatically by pure CSS, no JS needed)
  42. 2 points
    With that it would be possible to use newer AMD and nVidia GPUs, which would be a dream come true Do keep on posting updates, this is an extremely interesting project.
  43. 2 points
    Yes. I just need to do about ten more patches of call near ptr to call cs: in the nine existing functions, and then I'll be adding more. These are other missing ones that I've found to be called by programs: GetNumaNodeProcessorMaskEx GetCurrentPackageId GetSystemTimePreciseAsFileTime plus their dependencies and sister functions Those are going on the list along with the other unimplemented K32 functions as well as TryAcquireSRWLockShared (not sure why I shelved it earlier - perhaps because it's really a ntdll function but it doesn't matter since nothing really seems to call them directly from ntdll so it can go into kernel32, like BWC has done). Anyway, I really like these x64 dlls. MS gets to do its own thing in its own code section, while I can just make a section for myself and move the export table to its own section and things are good. All of the existing functionality of Vista is retained and not a single beat is skipped. And if you choose not to replace your existing kernel32.dll and just use the modified one on a per-program basis using .exe.local redirectors, you will be preventing the direct execution of malicious executables requiring W7+ functions. I'm also thinking about compatibility shims - One-Core-API expanded the amount of shims available in XP to include OSes like Vista/7/8.1/10. I think that I need something like that to get some installers to run since that seems to go above and beyond what Application Verifier can provide.
  44. 2 points
    My reply is a 2 month old bump... but this, necessarily, is what caused the problem. Laziness, ease of throwing things together, slapping a bunch of ads together, internet becoming more of a profitable means of distribution = easy money for people. The modern internet doesn't seem to stick out individually anymore though, it's all bland, and I guess it's down to ease of just throwing together things that way. I guess that also partly influenced (or vice versa) why a lot of big websites have over the past eight years or so removed many 'custom profiles' (making them more generic), and overall deprecating things that give a sense of community unless it is somehow profitable to do so for businesses as well. My biggest concern is accessibility, which is essentially thrown out of the window for slower-developing countries with lesser access to fast-speed/always-on Internet; oh, and small-screen devices, due to the more-than-useless cookie consent banners the EU imposed on the world in 2012, that can't even dismiss the stupid prompts without messing with the zoom settings.
  45. 2 points
    Very interesting. It's nice to find out all of the ways to customize and modify NT 6.x much like we have been doing to NT 5.x for many years. Unfortunately that doesn't mitigate the risk of it being overwritten by updates though. Though I think that guy who was trying to get fully slipstreamed Vista install media with all updates-to-present would be interested. On another note, this snippet of code is giving me a lot of trouble: xdata:0000000078E6D07F loc_78E6D07F: ; CODE XREF: SetThreadErrorMode+4A↑j .xdata:0000000078E6D07F lea rdx, [rsp+30h] .xdata:0000000078E6D084 call near ptr RtlSetThreadErrorMode .xdata:0000000078E6D089 nop .xdata:0000000078E6D08A cmp eax, ebx .xdata:0000000078E6D08C jge short loc_78E6D092 .xdata:0000000078E6D08E mov ecx, eax .xdata:0000000078E6D090 jmp short loc_78E6D056 GIMP crashes when it encounters the nop. I know that it should be xdata:0000000078E6D07F loc_78E6D07F: ; CODE XREF: SetThreadErrorMode+4A↑j .xdata:0000000078E6D07F lea rdx, [rsp+30h] .xdata:0000000078E6D084 call cs:RtlSetThreadErrorMode .xdata:0000000078E6D08A cmp eax, ebx .xdata:0000000078E6D08C jge short loc_78E6D092 .xdata:0000000078E6D08E mov ecx, eax .xdata:0000000078E6D090 jmp short loc_78E6D056 But IDA doesn't like me patching that and turns it into this .xdata:0000000078E6D07F ; --------------------------------------------------------------------------- .xdata:0000000078E6D084 db 9Ah ; š .xdata:0000000078E6D085 db 0C0h ; À .xdata:0000000078E6D086 db 0E8h ; è .xdata:0000000078E6D087 db 0DFh ; ß .xdata:0000000078E6D088 db 78h ; x .xdata:0000000078E6D089 db 6 .xdata:0000000078E6D08A db 0 .xdata:0000000078E6D08B ; --------------------------------------------------------------------------- No better of course and it crashes on the shambolic non-code. I tried just placing the W7 version of RtlSetThreadErrorMode into my kernel32, but it called something in a completely unrelated function just above it (GetCurrentProcessorNumberEx+2) and failed there. I also wonder why RtlSetThreadErrorMode was implemented in Vista but SetThreadErrorMode wasn't until 7. update: So I noticed two calls to the same import, CsrClientCallServer (78DFE090). The one at 78DA0B24 looks like this: FF 15 66 D5 05 00 While the call to it at 78DA0BA1 is like this: FF 15 E9 D4 05 00 Perhaps I need to deduce something from that. Putting these somewhere else will direct them to a completely different memory address, so I need to figure out how to get to call 78DFE8C0 (RtlSetThreadErrorMode). update: Apparently, a call cs:* only will call memory addresses below it, using the FF 15 ** ** 0* 00 format. But a quick look at XP x64's kernel32 reveals that the import table is at the beginning of the file, so call cs:* must refer to addresses above them. And the format for those is FF 15 ** ** FF FF (for close ones seemingly) or FF 15 ** F5 FF for ones very far away, with options for going in between. In the end, I was able to call RtlSetThreadErrorMode using hex code FF 15 36 18 F9 FF. And it fixed everything SetThreadErrorMode! YIP YIP HOORRRRRRRRRRRAY!!!!!!!!!!!!!!!!!!! I will promptly correct the other functions. 10 hours ago I actually doubted myself enough that I briefly thought that I went in wayyyy over my head with this supposed vapourware project but now it is anything but!!! I even did a little editing of the photo in there. Still some missing functions so other components may not work well but I think I've got all figured out.
  46. 2 points
    Came across a site yesterday that can download YouTube videos via webpage. It does not appear to get them all, had a VEVO video still fail, but seems to get most, many of which would be inaccessible to my 9xweb script. Pros: - Simply paste YouTube URL into webpage - Fast download speed - Does not require browser JavaScript - Works in RetroZilla Cons: - Does not provide video information - Does not auto-name video (without JS anyway) Bookmarked the site in RetroZilla for now. Not sure yet if i will incorporate a link to this site in my 9xweb script for videos that otherwise fail. It would definitely improve YouTube access for more vanilla Windows 9x systems. Just like youtube-dl, YouTube keeps changing things and the site can sometimes fail, as outlined in the home page's changelog. keepvid[dot]works Took another look at youtube-dl's code for YouTube, not sure yet how they get VEVO type videos to work. Brain tired, may chip away again sometime later, later, later.
  47. 2 points
    Actually, 2.10.0 x64 runs on Vista. Download gimp-2.10.0-x64-setup.exe from https://download.gimp.org/mirror/pub/gimp/v2.10/windows/ and you will notice that the installer doesn't block Vista like those for later 2.10 releases. The module that calls SetThreadErrorMode in later releases doesn't call it in this one. huh? 404? what a shame since 2.10.2's installer blocks Vista!
  48. 2 points
    I personally do think it's weird that the moment I purchased a premium license for this software it was already out of date. Since I knew about AeroGlass it has been out of date. I'm "freaking out" because it does take him so long to update a paid product. I could only use it for some time because I had 1903. You can call it donating but we all know it isn't. The "free" version (trial) is a stripped down version. You need to pay to unlock all it's features and for most make it a viable option to use daily. Having fancy glass windows while having an ugly (Opinion of mine but also a lot of others) watermark on your desktop is for most not really a win. And that's very done on purpose. Cosmetic micro transactions in games also influence the game by a very large portion. It doesn't influence the gameplay with stats but it does influence the game itself. Cosmetics and making something look good is for a lot of people more important than functionality. Hence why cosmetics in those games are so popular. I'm not an id*** though. I know there is Corona epidemic going on and I also know that updating AeroGlass is probably not 10 mins of work. But this is what you get when you're not transparent in what you do. People are going to ask questions. The way AeroGlass is now is beneficial for BigMuscle, not us. He has all the benefits of developing free software with the added benefit of receiving "donations". Which aren't really donations. Most of those donations are really done to get the full version with an added "good feel" effect because you have the impression you're supporting the development of AeroGlass. While in reality, that extra 10 euro you just donated might've absolutely no influence at all. My assumption is is that BigMuscle will likely stop updating this once it takes too much of his time, the donations aren't high enough and people are generally not that interested anymore. But that 10 euro I mentioned might've not changed that in any shape or form. Even better, not updating AeroGlass for some time is probably beneficial to him. I'm not saying he has ill intend or that he's doing it on purpose but not updating AeroGlass will get people to donate yet again. That's all fine. But then I think he should be transparent in regards to what's up. Tell us SOMETHING. Not be quiet for months and months. Give us an ETA. Keep us up to date in regards to plans or innovations. Maybe you found a way to update AeroGlass quicker? Or maybe you wanna make sure that we know that it will take awhile because you're expecting Windows to release an update soon that might break it yet again? Who knows, I'm not developing this software. Everyone is just guessing at this point and everyone who says they know what BigMuscle is thinking is just speculating. In regards to transparency, listing how much is approximately donated each month, an explanation what exactly needs to be done each update and how much time that costs would already go a long way. Of course combined with some quick communication here and there. For all I know he gets over a €690 each update and it takes him an hour or 2 to get it working for the latest version of Windows because he's got it all set up now and optimized for quick successful updates. In terms of optimizing the updating of software, there is a lot you can do. Of course, the €690 isn't based on realism, but I hope you understand what I'm trying to say. Or maybe he indeed only needs about 3-4 hours for each minor update, and 7 for major updates? Or maybe minor or major updates don't matter in terms of time? Or maybe he's just very busy with his 6 jobs? Who knows. The things I mentioned above would take about 10 mins. Quick communication in regards to what's up, how much was donated last month and a quick explanation what needs to be done if an update needs to be released for AeroGlass and the complications some things might bring to updating the software.
  49. 2 points
    The greater evil is YouTube’s owner, Google. They are not in the habit of making things easy for Firefox, much less for developers of Firefox forks. As VistaLover pointed out on page 1 of this thread (which has not benefited much from subsequent expansion IMO), Firefox Quantum 63 or above supports Polymer v2 but UXP does not. If MCP thinks they can backport Polymer v2 support to UXP, then I wish them luck. For XP/Vista, Yandex 17 (or perhaps one of the Chinese Chromium backports) is the alternative.
  50. 2 points
    New build of Serpent/UXP for XP! Test binary: Win32 https://o.rths.ml/basilisk/basilisk52-g4.6.win32-git-20200613-34cf555-uxp-59a5adc93-xpmod.7z Win64 https://o.rths.ml/basilisk/basilisk52-g4.6.win64-git-20200613-34cf555-uxp-59a5adc93-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.rths.ml/basilisk/basilisk52-g4.6.win32-git-20200613-34cf555-uxp-59a5adc93-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.rths.ml/palemoon/palemoon-28.10.1a1.win32-git-20200613-2ddefd2bc-uxp-59a5adc93-xpmod.7z Win64 https://o.rths.ml/palemoon/palemoon-28.10.1a1.win64-git-20200613-2ddefd2bc-uxp-59a5adc93-xpmod.7z Official UXP changes since my last build: - Issue #1580 - Add missing MP3Demuxer.h to MediaDecoderReader.h (bd971831f) - Issue #1525 - Kill marquee element; Debug Follow Up (32c3efa3c) - Merge pull request #1582 from g4jc/marqp (e0dc5f309) - Merge pull request #1581 from g4jc/1580 (cc01b5e2a) - Issue #1542 - Fix a typo in wasm which was causing build failure on ARM (8f02c2b06) - [NSS] Update exported symbols (e8bdf27ac) - Issue #439 - Remove, fix and clean up automated tests (b0901eb09) - Issue #1560 - Always include speech synthesis IPDLs (ad6ce890d) - Issue MoonchildProductions/UXP#1578 - Add global menubar support for GTK (d18faf819) - Merge pull request #1584 from Lootyhoof/global-menu (907530e86) - Follow up to Issue #1578 - Preprocess the popup binding (47db6b4b5) - Issue #1585 - Replace node.rootNode with node.getRootNode() (8797b2074) - Merge pull request #1586 from adeshkp/fix-arm-build (0955b34e6) - Issue #1587 - Part 1: Implement FetchController/FetchSignal interface (a8602cc87) - Issue #1587 - Part 2: Implement controller follow/unfollow (be82b3331) - Issue #1587 - Part 3: Hook FetchSignal up to the Fetch API (1ca6039fb) - Issue #1587 - Part 4: Implement FetchObserver (ec792e2ac) - Issue #1587 - Part 5: Hook FetchObserver up to the Fetch API (fdc11c731) - Issue #1587 - Part 6: Move FetchController/Signal to its own dir (1620ec196) - Issue #439 - Debug follow up to remove no longer existing headers (5629e34f8) - Merge pull request #1588 from g4jc/439 (433c300a3) - Issue #1587 - Part 7: Rename FetchController to AbortController (e97a29a65) - Issue #1587 - Part 8: Remove controller follow/unfollow (94c694d38) - Issue #1587 - Part 9: Immediately reject an already-aborted signal (1c9731480) - Issue #1587 - Part 10: Expose controlling pref and enable by default (927c2fd3e) - Merge branch 'abortcontroller-work' (59a5adc93) Official Basilisk changes since my last build: - Issue MoonchildProductions/UXP#1577 - Update client.mk to be more consistent with the original platform version (1febb59) - Update back-end branch pointer (991e8d3) - Revert "Issue MoonchildProductions/UXP#1577 - Update client.mk to be more consistent with the original platform version" (db17817) - Update back-end branch pointer (e3973ac) - Issue MoonchildProductions/UXP#1577 - Update client.mk to be more consistent with the original platform version (34cf555) Official Pale-Moon changes since my last build: - Remove duplicate panels with the same ID (08e14c611) - Issue MoonchildProductions/UXP#1577 - Update client.mk to be more consistent with the original platform version (af77741cf) - Update back-end branch pointer (unstable 2020-06-09) (326b60bca) - Issue MoonchildProductions/UXP#1577 - Fix configure generation (9827a6c6d) - Merge branch 'master' of https://github.com/MoonchildProductions/Pale-Moon (1e591db14) - Update back-end branch pointer (Unstable 2020-06-12) (2ddefd2bc) My changes since my last build: - Reverted "Issue #1525 - Kill marquee element; Debug Follow Up (32c3efa3c)"
  • Create New...