Hi Jeremy ! 

I'm glad someone (you) is / are fixing this issue. I have made a driver which 
fixes it
successfully in conjunction with the flawed kernels, and I was wondering 
whether I should have
to bundle that proof-of-concept with the EBDA mover. Obviously a kernel fix is 
infinitely cleaner !

Kenneth J.Davis said : 

> Please try the kernel at:
> <http://www.fdos.org/kernel/testing/ebda/KERNEL.SYS>
> And let me know if it resolves the issue for you? 

Unfortunately it has not changed a thing! With the above kernel and XBDA mover
(either mine or Japheth's) and JEMM - memory corruption occurs - and my fixing 
driver 
"FREEFIX.SYS" does repair it!
 I could't see a difference from using your /new/ build from the /stock/ ones, 
eother 2040 or 2041 :(

Strange that it worked in VBox though !  

|     /* reset root */
|+    /* Note: since device drivers can change what is considered top of memory 
(e.g. move XBDA) we must requery */
|+    ram_top = init_oem();
|     LoL->uppermem_root = ram_top * 64 - 1;

Please check the function "init_oem()" . ram_top should be obtained from  
"peeking" at 40:13
(more secure than calling BIOS int 0x12 at this point). 

> There are multiple possible fixes; I choose to update ram_top in the
> umb_init code as that is where it is used for generating the new MCB chain
> for UMBs (which produces issue described above).  Another option, is to
> update ram_top after each load of a device driver (and possibly install'd
> command).  A third variation would be to remove ram_top variable and always
> query for value when used.

The third option might be the cleanest one. What good does a private variable 
do you if
you have to reinstantiate it anyway ?

As for the LoL ->uppermem_root, we (rogue EBDA movers!) keep it in sync as 
needed, so the last
line of C above is not strictly needed, though should not do harm...

Thanks, and regards

-- 
Czerno

------------------------------------------------------------------------------
See everything from the browser to the database with AppDynamics
Get end-to-end visibility with application monitoring from AppDynamics
Isolate bottlenecks and diagnose root cause in seconds.
Start your free trial of AppDynamics Pro today!
http://pubads.g.doubleclick.net/gampad/clk?id=48808831&iu=/4140/ostg.clktrk
_______________________________________________
Freedos-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/freedos-devel

Reply via email to