О, кстати это классная идея! Иметь незапорченный фон целиком ускорит процесс восстановления фона на экране.
Сопутствующий вопрос. Сколько времени требуется на подключение к квазидиску на чтение? Где поподробнее почитать про работу с ним?
Вид для печати
О, кстати это классная идея! Иметь незапорченный фон целиком ускорит процесс восстановления фона на экране.
Сопутствующий вопрос. Сколько времени требуется на подключение к квазидиску на чтение? Где поподробнее почитать про работу с ним?
Процессор не имеет представления, читает он из основного ОЗУ или из КД, тоже самое и с записью.
У КД есть управляющее слово, которое записывается в порт 10h, этим словом КД включается в нужный режим или отключается (хrа а\ out 10h).
Значения бит управляющего слова расписаны много раз во всех описаниях КД, в журнале ВекторЮзет тоже.
Соответственно, требуется по 20 тактов на включение и выключение КД.
Если КД оактивируется на работу со стеком, то все стековые операции (PUSH, POP) , будут обращаться к КД, а команды обычных записи/чтения (sta, lda, shld, lhld, stax, ldax) будут работать с основной памятью, именно этот режим и используется для переноса данных из КД в основное ОЗУ, и обратно.
KTSerg, включение квазидиска 20 тактов, отключение 16? Уточняю чтобы удостовериться что я правильно тебя понял.
Если квазидиск включен на работу как стек и прерывания включены то прерывание запортит как минимум два байта данных квазидиска, правильно?
А если не стеком а рандомным доступом, то мапятца банки по 32к в экранные адреса?
Лучше всё-таки прочитать документацию.
В режиме подстановки в ОЗУ можно видеть только один из четырёх блоков по 16К = всего 64К из 256К ЭД.
http://sensi.org/scalar/ware/522/
Код:ПРОГРАММИСТУ ОБ ЭЛЕКТРОННОМ ДИСКЕ
Для работы с ЭД программисту необходимо знать, что:
- при работе в ОС "МикроДОС" об'ем ОЗУ ЭД распределяется следующим образом:
234 К ОЗУ пользователя,
16 К "подэкранное" ОЗУ,
4 К контрольные суммы,
2 К каталог.
- доступ к ЭД осуществляется через порт 10h; в этот порт записывается байт,
определяющий режим доступа к ЭД и номер одного из четырех 64-х килобайтных
блоков, к которому разрешается доступ. Структура управляющего байта:
D7 D6 D5 D4 D3 D2 D1 D0
где:
D1,D0 - биты, которые задают номер блока при обращении к ЭД "как ОЗУ",
D3,D2 - биты, которые задают номер блока при обращении к ЭД "как стек",
D4 - указывает на вкл/выкл режима ЭД "как стек",
0 - режим выключен;
1 - режим включен;
D5 - указывает на вкл/выкл режима ЭД "как ОЗУ",
0 - режим выключен;
1 - режим включен;
D7,D6 - не используються.
В режиме "как ОЗУ" (D5=1, D4=0) в адресное пространство A000-DFFFh
процессора БПЭВМ подключается память соответствующего блока ЭД т.е. при
обращении к этим адресам данные будут записываться в ОЗУ ЭД, а не в ОЗУ БПЭВМ.
В режиме "как стек" (D5=0, D4=1) при выполнении команд, обращающихся к
стеку, данные будут выбираться из ОЗУ ЭД, а не БПЭВМ. Таким образом, для
полного использования ОЗУ ЭД необходимо использовать режим "как стек".
Если установлены оба режима (D5=1, D4=1), то при выполнении стековых
операций в адресах A000-DFFFh доступ будет обеспечен к блоку, который задан
разрядами D3, D2.
Номер 64-х килобайтного блока задается инверсно, то есть:
11B - блок 0
10B - блок 1
01B - блок 2
00B - блок 3
Пример: стандартная конфигурация МикроДОС работает в режиме 23h или
00010011B, что означает нулевой блок ЭД работающий в режиме "как ОЗУ".
По материалам фирмы "PC - Invoservise"
Усков И.М.
Чего-то не было в картотеке теста расширений Баркаря, добавил
http://sensi.org/scalar/ware/918/
Да на Векторе можно не хуже NES замутить, только усилий надо много приложить :)