!!! Произвольная адресация экранной области
ZXNet echo conference «real.speccy»
From Ruslan Abdullaev → To All 9 June 2004
Меня интересует, возможность аппаратной реализации режима произвольной
адресации экранной области. Стандартно, начиная с модели ZX Spectrum
128K, экранную область можно размещать, только в #05, и #07 страницах
ОЗУ.
Для того, чтобы All лучше понял о чем идет речь, я буду приводить
условные примеры управления предполагаемыми режимами.
------------------------------------------------------------[Вариант1]-
;условный пример управления режимом
ld bc,SomePort
ld a,SomePage
out (c),a
;SomePage - произвольный номер страницы, в которой с адреса
#c000 размещается экранная область.
Насколько сложнее реализация следующих вариантов.
------------------------------------------------------------[Вариант2]-
Запись в порт старшего адреса, меняет текущий адрес чтения
видеопамяти. При этом, необходимо предварительно включить
соответствующую страницу ОЗУ.
;условный пример управления режимом
ld bc,SomePort
ld a, ScrAdr/256; старший байт адреса экранной области (#40-#FF)
out (c),a
или более радикальный вариант, но менее гибкий вариант.
------------------------------------------------------------[Вариант3]-
;условный пример управления режимом
ld bc,SomePort
ld a,%xxxxyyyy
out (c),a
;где yyyy - номер страницы ОЗУ, а xxxx - старший байт адреса
экранной области (#40-#F0). Правда в этом варианте, ограниченный
диапозон адресов, с #4000 по #f000, с шагом #1000.
--
Отправлено через сервер Форумы@mail.ru - http://talk.mail.ru