Hello Michael,

>>INT xx enters the interrupt handler with IF cleared, so this should be
>>done also when being rerouted through the v86_monitor; looks like a
>>plain bug to me


>> > Changing a long-standing fundamental behavior to fix a single problem in a
>> > virtual environment with one program can be worrying.
>>I understand that you are not just quickly changing this, as this
>>could have other funny sideeffects...
>>
>>If I had to decide this, I'd change this, and see what happens,

> Well, heck, if I already to have to change some A20 behavior to get a few
> ancient programs to work with that idiotic EXEPACK 0FFFFh address-wrapping
> (assuming EXEPACK makes A20 calls),
*VERY* early PKLITE (~1992) versions had the same bug

AFAIK, it doesn't - it's older then the invention of HMA

but it's decompression code is based on the assumption that

   [cs:100]
is equivalent to
   [cs-f00:100+f000]

(don't ask why, I didn't write it)

this is true if
   the code is loaded above 1000:0 (that's what LOADFIX
      does)
   A20 is disabled

in fact, this shouldn't happen in freedos; exactly for this reason
the kernel disables A20 before beginning execution of any program, so
that the (potential) startup code gets executed with A20 disabled, and
gets only enabled with the first Int 21

of course this might have been 'optimized' in newer kernels ;)

> I might as make all the low-level
> changes at once and see how big the smoke plume gets.
just go ahead

Tom



-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys -- and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
Freedos-devel mailing list
Freedos-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-devel

Reply via email to