• Content count

  • Joined

  • Last visited

  • Days Won


jumper last won the day on February 17

jumper had the most liked content!

Community Reputation

38 Excellent

About jumper

  • Rank
    2016 Masters HJ+TJ All-American
  • Birthday

Contact Methods

  • Website URL

Profile Information

  • OS
  • Country

Recent Profile Visitors

1,410 profile views
  1. It turns out the version of SetDllDirectoryA/W in the master branch was only a rough start by Xeno86 to a partial implementation. It supports setting the Dll Directory search path, but not resetting it by passing NULL as the parameter. I have simplified SetDllDirectory*(...) down to SetEnvironmentVariable*("DLLPATH",...) and also added GetDllDirectory*. Now I'm testing new LoadLibrary* and LoadLibraryEx* code that will use DLLPATH to fully implement WinXP-Win7 alternate DLL search paths. The Win8 functions AddDllDirectory, RemoveDllDirectory, and SetDefaultDllDirectory are a bit tougher and will be added later. For the time being, SetDllDirectoryA/W can be disabled in CORE.INI.
  2. You might also try extracting all files from the installer and simply moving them into place.
  3. Thanks for the BitTorrent report. In the Run 1 stack dump, the only kex addresses are BFA05F90 and BFA075BB in KernelEx.dll. Those portions of KernelEx didn't change between .15 and .16, however if you can reliably reproduce this error, try reverting just KernelEx.dll back to version .15 and report if that makes a difference. Runs 2 and 3 are virtually identical with a GPF occurring when the stack frame spans a page boundary (ESP and EBP are on different 4k pages, 4k=1000h). This is a known problem that goes way back several years at least. In Run 2, the last kex addresses are BFA4A6D5 and BFA4A7B0 (both in Kexbases). BFA4A6D5 appears multiple time in the stack dump, so might be part of some recursion. A DumpPE -disasm on Kexbases.dll reveals that BFA4A6D5 is the entry point for CreateFileA_fix. So the BFA4A6D5 entries on the stack must be parameters or local PROC pointers, not return addresses. BFA4A7B0 is the return address in CreateFileA_fix from the call to the real CreateFileA (CreateFileA_fix pre-processes the parameters and then calls the original CreateFileA to do the actual work). Please check that you have extensions disabled on Kexbases.dll. This portion of Kexbases.dll was not changed in version .16. I see now that the BitTorrent installer is UPXed, if the same is true of the installed app you should unUPX it. UPXed files are not supported yet. Edit: I was able to reproduce the exact error (down to same ESP and EBP). The app self-installs/configures so it is confirmed: UPX is the problem. BT6.4 actually only needs the subsystem changed from 5.0 to 4.0 to work without KernelEx entirely!
  4. I don't think multiple EMMExclude statements are valid. If they are, then EMMExclude=0000-FFFF makes all the others superfluous. Himem/Himemx aren't needed at all. Stacks should probably be 0,0 Many other settings are highly questionable.
  5. The valid load commands for config.sys are DEVICE and DEVICEHIGH for device drivers, and INSTALL for TSR programs. The valid load command for autoexec.bat are LOADHIGH (LH) and LOADFIX. Reading a DVD disc only requires a DVD drive. Playing a DVD video requires commercial software (that may come with a system or video card). Not all apps support the mouse wheel. Not all CD-ROM drives support DMA access.
  6. The project you describe already exists: ReactOS.
  7. Win95 is not supported. The KernelEx 4.5 series only knows how to detect and patch the system loader in 98, SE, and ME.
  8. IdnToAscii isn't missing (it's in Normaliz.dll, a redist.). To what DLL did you add it? On the other hand, RtlIdnToAscii _is_ missing from Kernel32.dll in XP, so that code won't work anyway.
  9. Or just use the Normaliz.dll that comes with IE8. And by the way, RtlIdnToAscii wasn't added to Kernel32.dll until Vista.
  10. It looks like you cross-compiled on a Linux system. Do you have a Windows-based compiler? If you recompile it on Windows without the cygwin and libwine bloat (almost 5MB pre-UPX), it should be much leaner and (hopefully) faster. You might also want to try the Xompie and ReactOS versions of dwmapi.dll.
  11. > FF 53 crashes on extendedXP when i try to type anything . What make you say this? Was there a CrashReporter/error dialog or did FF53 terminate silently?
  12. 1 fffd584d [XUL.DLL]106355c0:SetDllDirectoryW(bfa59306) SetDllDirectoryW is called in the main thread and never returns. Instead, the error handler thread (fff22405) gathers information and calls CreateProcessW to launch CrashReporter which returns successfully. SetDllDirectoryW was written by Xeno86 and enabled by Ley0K. The code also looked good to me so I enabled it in .16. Xeno86 didn't leave any clues as to why he didn't enable it. It is an important function, so I'll try to fix it instead of just disabling it again.
  13. If the app is calling ExpandEnvironmentStringsForUser, replacing kernelex\userenv.dll with M()zart's version should fix the %systemroot% expansion problem. But Kernel32, Ntdll, and Shlwapi also contain environment string expansion functions so in all cases adding this to Autoexec.bat should also work: set systemroot=C:\windows Unfortunately, the app shouldn't be assuming Program Files is in your SystemRoot folder. So try this workaround instead to reference off the current folder (real Program Files): set systemroot=.. I was working on Userenv.dll just last week and discovered that M()zart's version is actually much better than the Wine code used in KernelEx. It's just missing a couple of stubs which are easy to add. When I discovered the environment issue is much broader, I temporarily stopped work.
  14. So a 1k resistor between pins 14 and 16 works for the new system where an open connection works for the old system? A larger resistance, a diode in series, or a switch might enable the cable to work on both systems.
  15. The subroutines sub_6161E and sub_AB1E9 are being called as if they takes no parameters. IDA seems to think they take Pascal-style parameters (modifying the stack on return). Which is it? The addresses (61662 and AB2DD) for the endp and following lines are incorrect. > "The application has been completely decompiled." Wrong. It has been disassembled.