В соседней ветке в том документе что ты нашел все расписано
в диапазоне d000 - e000 4 окна по 16 килобайт (как раз емс спецификация) и каждое можно отобразить куда хош в физическую память
так там и устроено есть две группы регистров одна ремапинг лог адреса на физический - тоже по 16кб страницы видимо для отключения битых зон в озу например вторая же как раз куда будут 4 окна указывать
вообще все достаточно просто
интересно что таким образом похоже можно БЫСТРО перекинуть основную память в другой кусок физической
те скажем быстрый свитчер задач мог бы случится если бы кому это было надо
а цмос стандартный так что можно утилитку пилануть для дос времени но проще всего вообще в биосе это сделать как я понимаю (ведь у ат дос берет актуальное время похоже просто через переменные биоса?)
- - - Добавлено - - -
ну так там по сегментам D000 по D400 те D0000 - D4000 что есть 16 килобайт
а точнее там 4 таких страницы по 16 кб подряд
вот и эмулируй
- - - Добавлено - - -
у меня вм86 запускается но в итоге вполне быстро перегревается и виснет или глючит
а вот родной 8086-2 работает себе отлично
- - - Добавлено - - -
Короче для эмуля достаточно сделать так
0E0H-0E3H
4 регистра куда пишутся старшие 8 бит адреса для этих 16 кб страниц на D0000 D4000 D8000 DC000
соотв там тупо для 2х мег физической памяти [ А21 А20 А19 А18 А17 А16 А15 А14 ]
оставшиеся А13-А0 дает 16 кило
- - - Добавлено - - -
А по адресам F0-FF есть 256 байт каждый из которых ремапит память тоде по 16 кб страницам уже в рам чипы
короче получается двухэтапная (ничего себе) трансляция
ну блин намутили такого да плюс перепаковку 16 бит транзакций в 2 по 8
вот и виснет все и греется =)
лабухи! =)))





Ответить с цитированием
Размещение рекламы на форуме способствует его дальнейшему развитию 

Радио-Губитель
Канал на 