Back to home page

DOS ain't dead

Forum index page

Log in | Register

Back to the forum
Board view  Mix view

Using Multiple CPU Cores in DOS? (Miscellaneous)

posted by tom(R) Homepage, Germany, 19.09.2011, 15:03

> I've seen statements that vary from (paraphrasing), "There are a lot of
> programs that depend on A20 being disabled so you shouldn't EVER leave it
> enabled," to "There are only a few poorly written 8086-era programs that
> depend on A20 being disabled, and nobody uses them any more." I think the
> latter statement is more accurate, but just wondered what others feel/know
> about the real situation.

it's somewhere in the middle.
almost no program ever relied on A20 being enabled or disabled.

BUT early versions of Microsoft LINK /EXEPACK and early versions of PKLITE (pre 1991) had a bug, and relied on A20 being disabled.

for this reason MSDOS invented first LOADFIX, them started programs with A20 disabled, and reenabled A20 on the first int 21, and left it enabled.

in my own humble opinion, it's pointless as programs that haven't been updated since ~1991 are probably obsolete, deserve LOADFIX, and my HIMEM's behaviour was 'enable A20 and leave it in this state'.

Bart thought different, and persuaded me to behave like MSDOS, and disable A20 on program start.

anyway, checking for A20 status is easy, like

status = memcmp(0000:80, FFFF:90, 16)

only if status is disabled, you should enable, then copy, then disable A20
status will be enabled most of the time

> Thanks for all your help Tom, BTW.


Complete thread:

Back to the forum
Board view  Mix view
15297 Postings in 1378 Threads, 254 registered users, 18 users online (0 registered, 18 guests)
DOS ain't dead | Admin contact
RSS Feed
powered by my little forum