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

jumper

KernelEx 4.5 Core Updates (4.5.2016.17)

Recommended Posts

>(There is no point to calling it on 9x/ME as they always return FALSE, and 95 doesn't even have it.)

I raises the question then, why did the stub not work? If I am wrong about this and if it just blocks the function, unless KEX is designed for Win95, why block the IsProcessorFeaturePresent for this mode as the block could cause problems with individual files. Some games I found liked Win95 mode and is a slightly less resource hungry mode. The text displaying can be first to go wrong when resources are very low. One test where GDI resources can be checked easily is DAZ vs 2. It just loads with their example if an minimum of programming is run. I had to use WIN98FE & use plugins KEX disabled to have enough GDI resources. Ctrl + Alt +Del with RP9 installed shows 3 resource types. Java based programming uses up LDT resources.

>Please debug what is going wrong with Vuze and JRE in W2k mode.

Update >> I have looked into it and has been always the case I tested wit KEX 4.5.2 same result. Between the two loads of WinME & NT40 there are no extra modules loaded, no discernible differences there. There is a difference though, the registry thinks that it has not been run after switching from ME to NT modes. I think it changes user settings or something or registry changes do not work. It tries to install a ja file found in temp and _Restore\temp as though it goes through a new install with different mode changes. The font not displaying could be a Unicode employment of fonts and not Ansi but I do not know or it simply does not read the registry so the fonts are not deployed.

Edited by Goodmaneuver

Share this post


Link to post
Share on other sites

Some apps probe for functions and then make assumptions based on the results. When emulating Win95, the correct behavior for KernelEx is to disable IsProcessorFeaturePresent.

If you would like to create an experimental mode for Core.ini named Win95++ that enables it and possibly other APIs as well, please do so. There are many examples already in the current Core.ini. Feel free to post it and discuss it here in this thread. Others are also encouraged to share their experimental modes as well as discuss the structure of Core.ini in general.

Share this post


Link to post
Share on other sites

A little feedback: Today I updated to 24 on a second machine. New problems have not yet occurred, however so far I haven't done extensive program tests. 
 

Share this post


Link to post
Share on other sites

Although NVopenGL.dll works well KEX disabled it may need BASE setting to stop VLC exiting error. BASE is the best setting as it does not impact frame rate noticeably. I have taken this theory to some other libraries that have no implicit load library errors but still needed NT setting. Examples include Activeds from DSclient for Win95; Libeay32 & SSLeay32 vs 1.0.2.4; dnsapi vs 5.1.2410.1. This idea should not be taken to all though as *\*.SCR should still be set to NT40 as if setting to BASE the ReactOS screen savers can throw the NVopenGL error on exiting even when NVopenGL is set to BASE :- it seems to be a timing issue IMO. Riched20 14.0.7155.5000 needs NT40 or better to perform properly not DCFG1 same goes with 5.50.99.2070, tested with Wordpad 5.0.2195.6991, I chose Win2K_MT. After using MPC 1.4.2499.0 & DDhelp set disabled, I found NVarch32 has to be set to BASE. I had User32 set to NT40 to try & prevent the occasional error in User32 from occurring when experimenting, it seemed to work. I am bound to change some settings in future but getting KEX settings correct is not easy.
 

Edited by Goodmaneuver
DDhelp OK disabled

Share this post


Link to post
Share on other sites

>  getting KEX settings correct is not easy

Agreed! I'm hoping to add an "Auto" mode setting that allows Kex to analyse each module and use the mode it deems best.

 

Updates for Sheet and Ktree are on the way.  Also, a new property sheet handler named pshExports (derived from Sheet).

 

Share this post


Link to post
Share on other sites

When manually updating KEX reg settings like %WINDIR%\SYSTEM\*.AX = NT40 for example, care must be taken to make sure there are no other KEX settings for other registered AX files in the System folder. Best to do a search check. I found out the hard way as FFDSHOW was still registered as XP setting. After LAV was installed FFDSHOW did not work so I reinstalled FFDSHOW this had the effect of blacking out my video whenever NotePad3.exe was started, (no video output) whether it was from clicking on an ini or txt, whatever started up NotePad3. A frustrating error but solved now.
 

Edited by Goodmaneuver
Greater clarity

Share this post


Link to post
Share on other sites

> When manually updating KEX reg settings

Reg setting are only read when updated via Sheet and when the driver loads (boot and restart).  So manual changes require a restart/reboot.

 

 

Share this post


Link to post
Share on other sites

Yes KEX users should be aware of this. Talking more about last post, I wiped out a week's worth of system saves thinking I had a bad registry. I am not totally sure of the XP setting I mentioned about FFDSHOW so I just loaded system restore of 2/11/2019, it showed FFDSHOW was NT40 at this time. I was working on this fault for some time as it crept into two separate builds and finally I found out, it was after reinstalling FFDSHOW after LAV that had caused the blackout with two conflicting KEX settings. Blackout also occurred when trying to run CometBird9.
 

Edited by Goodmaneuver

Share this post


Link to post
Share on other sites

I'll add to the Sheet Todo list an option to customize the target filter string. Then wildcards could be added with no restarting needed.

It could also search for conflicts and even create a dated backup.

The current plan is to fork the project with ongoing development continuing as 4.5.2020.

4.5.2016 API support will then be slimmed down to XP and below for stability. (Kexstubs will still be supported.)

(Or should 4.5.20 be the slimmed version and 4.?? or 5.0 the ongoing?)

 

Share this post


Link to post
Share on other sites

> The current plan is to fork the project with ongoing development continuing as 4.5.2020.
> 4.5.2016 API support will then be slimmed down to XP and below for stability. (Kexstubs will still be supported.)
> (Or should 4.5.20 be the slimmed version and 4.?? or 5.0 the ongoing?)

Just my opinion, but I've never seen much logic in keeping the same old main versions forever in any product, and only counting up the X.X.X.xxx sub numbers, despite major updates. Like the old gecko engines too, e.g. 1.8.1.xx, and some day Mozilla jumped to the exact other extreme. Or Seamonkey too, also gives the wrong impression of being a very early product version yet, when seeing that it's still only version 2.x
Seeing a lot of development going on for KernelEx too since the good old 4.5.2 version, it IMO deserves a new main number long since too. Perhaps 5.x for max XP and 6.0 for new developments. Also like the years as part of version numbers. KernelEx2019+2020, why not. Just saying ;-)

Share this post


Link to post
Share on other sites

4.5 introduced the driver that patches modules in memory instead of on disk. That hasn't changed a bit (yet).  However "KernelEx" is now overused, so maybe k4xp and kfive/k5?

Possible additions to the driver include rloew’s i686 + my finesse sse exception handling, and Wdmex code.

 

Share this post


Link to post
Share on other sites

Both Sheet Todo & auto module testing for mode selection are great ideas.

>>4.5.2016 API support will then be slimmed down to XP and below for stability. (Kexstubs will still be supported.)

I would like to see Vista mode still available because MXMUTE.DLL from Maxthon has no implicit load library errors and Vista mode is required. Some in between modes are probably not required but Win2K_MT is required for a NotePad++ plugin.

When running 4.5.110, Opera 12.02 & FF3.6 work but CometBird9 does not transfer any TCP/IP data. I was thinking, the change made to 4.5.120 to make FF8 work is it large enough for later version FF browsers? That is, the size of a buffer, what ever the change was. HTTPS pages in particularly made the browsers stall.

While not important, making Explorer KEX disabled prevented rundll32.dll loading NVMCTRAY.DLL and an error notifies this but after placing explorer back to DCFG1 or other setting it still does not start up after a reboot if 2 reboots have past while explorer was disabled. It takes a reinstall of the driver to reinstate Media Center and control panel Daemon. Also the Daemon and Media Center do not start up after runtime (while explorer is running) if terminated, a reboot is required and has always been the case but reinstallation to reinstate the media center tray was not required in 4.5.110.

>>Possible additions to the driver include rloew’s i686 + my finesse sse exception handling, and Wdmex code.

I know very little of these & would like to know more about them.

Edited by Goodmaneuver
Removed error report with 4.5.11

Share this post


Link to post
Share on other sites
On 12/10/2019 at 8:20 PM, jumper said:

Possible additions to the driver include rloew’s i686 + my finesse sse exception handling, and Wdmex code.

KernelEx and WDMEX have completely different targets; KernelEx is for programs and WDMEX is for drivers, which are totally different beasts. I'm not certain it makes much sense to attempt to combine them (but I'm no programmer, so maybe I'm missing something).

Now if you mean DLLHOOK, or the lesser-known "UNICOWS WRAPPERS" package, then it makes much more sense. I had hopes that with the "WRAPPERS" package that we might even be able to get roytam1's PaleMoon 26.5 build for Windows 2000 to run under 98, but I never seem to have time to work on making the attempt. :no:

Share this post


Link to post
Share on other sites

If VKrnlEx.vxd is linked to a driver then perhaps it will startup earlier in the boot sequence and therefore load KEX before network login & perhaps load in safe mode as well? pshExports what would this mean as a sheet option, does it mean all imports calling a particular module be directed to a different library similar to KnownDlls but be able to act on a module by module basis?

VLC3 with KEX23 used standard windows OpengGL and worked. KEX24 was working as I proclaimed, (I may have had a FX3000 installed at that time), but now I get a black screen when trying to play videos and it will not terminate. This build is using NVopenGL when video is loaded in VLC. (GeForce 7900GS). The one build that is working with KEX24 is using windows standard Opengl in VLC with the same hardware setup. NVopenGL is running with the screen savers on this build. I will update progress with this here soon.

Edited by Goodmaneuver

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...