Hi Tom,
reading your "a20 always on pro/contra list", I modify the suggestion
which I sent (not on the list) to you and Michael a few minutes ago...
Suggested new ordering:
- if already on, use always on
- else try all methods to turn a20 on and remember which worked
- if a20 is on now and user gave some "stick to on" command line option, fine
- else try to disable a20 with the same method which was the first which
  could enable it. If it works, use that method
- if it still did not work: Is it worth trying more methods? After all,
  we found a method to enable a20 but the same method failed to disable
  it again. If the a20 still fails to disable after waiting a long while
  (10 timer ticks or something - half a second), it is probably best to
  continue assuming that it is okay that a20 is now stuck to on.

For all methods, I think it is important to check the actual a20 state
after modifying a20. BIOS might misreport some method as working and
the PS/2 port might read back right while a20 did not change yet on
some weird systems.
The "enable/disable a20 again after int 15" wrapper should, if possible,
be disabled after a check whether int 15 modifies / messes up a20 state.
It should also check actual a20 state (quick) before trying to "restore"
a20 state (slow) after int 15 (which will probably only mess up a20 state
in one direction, not in both, so either "restore on state" or "restore
off state" or both will not be needed on most machines...).

Eric


-------------------------------------------------------
This SF.Net email is sponsored by: IBM Linux Tutorials
Free Linux tutorial presented by Daniel Robbins, President and CEO of
GenToo technologies. Learn everything from fundamentals to system
administration.http://ads.osdn.com/?ad_id=1470&alloc_id=3638&op=click
_______________________________________________
Freedos-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/freedos-devel

Reply via email to