!!! Произвольная адресация экранной области

ZXNet эхоконференция «real.speccy»

От Ruslan Abdullaev Кому All 09.06.2004

Здравствуй, All.

Меня интересует, возможность аппаратной реализации режима произвольной
адресации экранной области. Стандартно, начиная с модели 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.


ra.id

--
Отправлено через сервер Форумы@mail.ru - http://talk.mail.ru