Цитата Сообщение от Smalovsky Посмотреть сообщение
Shaos, получается, блок выделяем через ОС, а физические номера страниц блока узнаём через БИОС?
Для хорошей игры надо бы иметь все 4 окна в памяти, и это значит, что к обращение к ОС будет затруднительно, поэтому лучше работать с физическими страницами, а не с логическими через ОС.
Как использовать все 4 окна в памяти не мешая ОС? То есть как используя все 4 окна для своей программы вызвать функцию ОС? Что там надо - вернуть системную страницу в нулевое окно и восстановить системный стек?
а в чём сложность?
вызвать ОС для запроса нужного кол-ва страниц.
вызвать БИОС для декодирования (получения) полученного ИД в номера страниц.
запомнить страницу окна0 в переменную.
включить туда нужную страницу.
при необходимости повторного обращения к ОС, обменять текущее значение окна0 на значение из переменной. отработав, вернуть туда свою страницу.
при выходе из программы, восстановить страницу Ос из переменной в окно0, сделать ld bc,0x0041:rst 0x10:jp $ (глюкоуловитель).
ничего сложного.