At 09:37 AM 8/21/2006 +0200, Norbert Remmel wrote:

>During testing I discovered a bug concerning STR-ALT-DEL usage.
>When pressing these keys, freedos crashes with invalid opcode outputting
>some memory addresses and registers.
>As I remember this wasn't like this using earlier versions of
>himem/emm386 but I didn't test so far.

Okay, here's where we have a fundamental conflict.  It's also causing 
problems with FDAPM and WARMBOOT options, perhaps other FDAPM options.  It 
is the difference between ALTBOOT and NOALTBOOT options in EMM386.  ALTBOOT 
was the default prior to 2.25 for a while, and NOALTBOOT is the new 
default, and was the original default when EMM386 was first written up to 
an unknown version.

The problem is that EMM386 no longer hooks and processes the keyboard keys 
by default to try and force a proper reboot through direct keyboard port 
access.  It leaves things to the default ROM/BIOS reboot code.  The 
keyboard hook happens when ALTBOOT option is active.  Some environments and 
applications can have the machine state set so that a normal ROM/BIOS 
reboot doesn't work, which is why there is such a thing as ALTBOOT.

Unfortunately, a lot of things fail to work, or fail to work correctly if 
ALTBOOT is active, which is why it was changed to not the default setting 
in 2.25.  Here's a breakdown of the pros and cons:

ALTBOOT active positives:  All FDAPM options related to rebooting and 
power-off should work.  Some applications may not properly reboot when you 
press Ctrl-Alt-Del if ALTBOOT is not present.

ALTBOOT active negatives:  Qemu has an almost unusable keyboard due to 
frequent loss of status keys, plus missing and doubled keys.  VMware is 
reported to have keyboard or other failure.  Ensemble with GEOS will simply 
lockup during start if ALTBOOT is active -- GEOS doesn't like things 
hooking and messing with the keyboard interrupt.  There are reports from 
other users that there are additional applications which do not like the 
keyboard hooked and (pre-)processed this way, but I don't know the exact 

So here's where we're at:  I can either make some environments work 
properly (or at all) by leaving ALTBOOT as optional as in version 
2.25.  That means those who are having problems with FDAPM or Ctrl-Alt-Del 
need to specify ALTBOOT as an option with EMM386.

OR, I can switch ALTBOOT back as the default, and Qemu, VMware, and 
Ensemble users will have to know to specify the option to make their 
machines work properly.

It's not an easy decision, but personally, I think we're better off getting 
people booted up and running properly as a default (NOALTBOOT), and then 
telling them if they have problems with FDAPM or Ctrl-Alt-Del to specify 
ALTBOOT as an EMM386 option.  But maybe I'm wrong, if someone can convince 
me otherwise.

Obviously the best solution would be for everything to work under one 
option, but I don't see that happening unless someone can come up with a 
good workaround really soon (I wouldn't count on this, but it could 
happen).  Even MS-DOS EMM386 does not use its own ALTBOOT by default, but 
warns that it may be necessary or desirable for some environments.

[technical follow-ups to freedos-devel]

Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
Freedos-user mailing list

Reply via email to