ZXNet эхоконференция «hardware.zx»


тема: ZX 128 - второй экран



от: Andreas Kaiser
кому: All
дата: 06 Mar 2006
Hello, All

Вопрос такого плана: в #7FFD бит 3 отвечает за выбор активного экрана.
Правильно ли я понимаю, что второй экран юзается при установленном 3-м бите
#7FFD и седьмой впечатаной странице? Установить _только_ 3-й бит либо _только
включить_ седьмую страницу недостаточно для смены экранов?

от: Vlad Semchenko
кому: All
дата: 06 Mar 2006
Hello, icebear

ice> в #7FFD бит 3 отвечает за выбор активного экрана

Более корректно сказать "за отображение экрана". Значение бита определяет какой
экран отображать.

ice> Установить _только_ 3-й бит либо _только включить_ седьмую страницу
ice> недостаточно для смены экранов?

Страницу 7 необходимо включать в область оверлея (C000-FFFF) только в случае
необходимости что-то там изменить. Условно говоря одновременно ты можешь
использовать 64К+6912байт одновременно - экран будет отображаться не находясь в
области непосредственной адресации CPU.

от: Andreas Kaiser
кому: All
дата: 06 Mar 2006
Hello, Sinus

Sin> icebear
Sin>
Sin> 3й бит #7FFD отвечает только за адрес выборки при отображении.
Sin> это никак не связано с текущей страницей.

О какой текущей странице идёт речь? Я говорил о текущем (активном) экране,
информация которого отображается.

Sin> т.е. то что ты написал в своём последнем посте почти правильно.

Что значит "почти правильно"?

от: Andreas Kaiser
кому: All
дата: 06 Mar 2006
Hello, Sinus

Sin> а я о другом наверное. :mad:

Hазывай тогда вещи своими именами :)

Sin> ULA не подключает никаких банок.
Sin> ULA просто берёт инфу из нужного местя памяти (3й бит мапится на шину
Sin> адреса)
Sin>
Sin> это не придирательство к словам, просто если бы ULA действительно
Sin> "подключала" нужную банку, а потом возвращала как было, сильно
Sin> усложнилась бы схема контроллера.

Это именно придирательство к словам :) Ладно, в следующий раз буду обрамлять в
кавычки, что бы непоняток не было. Спасибо за инфу.

от: Andreas Kaiser
кому: All
дата: 06 Mar 2006
Hello, spensor

spe> Страницу 7 необходимо включать в область оверлея (C000-FFFF) только в
spe> случае необходимости что-то там изменить. Условно говоря одновременно
spe> ты можешь использовать 64К+6912байт одновременно - экран будет
spe> отображаться не находясь в области непосредственной адресации CPU.

Т.е. проще говоря ULA во время вывода информации на экран сама подключает
нужную банку в зависимости от значения 3-го бита? А если я хочу писать во
второй экран, мне надо обязательно включать 7-ю банку, так?

от: Andreas Kaiser
кому: All
дата: 06 Mar 2006
Hello, Максагор

> P.S. Вопросик отсюда: вы же с командой в свое время AZX-Monstrum
> проектировали, дык почему пробелы в таких элементарных моментах
> попадаются?

Проектировали - громко сказано. Я уже писал, что тогда "напроектировали". А
ответ на твой вопрос прост: последний Спектрум у меня имел 48К (это был конец
94-го и это был брестский Байт с дисководом), посему я практически со 128-м не
сталкивался. Во времена AZX я набирал людей ещё и для того, что бы они делали
узлы, о которых я либо ничего, либо очень мало знаю (что бы быстрее сделать, а
не что бы они за меня сделали). Плюс сейчас перерыв почти в 6 лет. Так что
элементарен этот момент тем, кто с этим уже хоть раз сталкивался. Тогда я
раньше забил, чем начал изучать. Сейчас посмотрел на разные схемы и решил
проверить сам себя.

от: Slavik Tretiak
кому: All
дата: 06 Mar 2006
Hello, icebear

ice> О какой текущей странице идёт речь? Я говорил о текущем (активном)
ice> экране, информация которого отображается.

а я о другом наверное. :mad:
о какой странице? о той которая в данный момент "впечатана" в адресное
пространство процессора от #C000 до #FFFF.

> Что значит "почти правильно"?

> ULA во время вывода информации на экран сама подключает нужную банку
> в зависимости от значения 3-го бита

ULA не подключает никаких банок.
ULA просто берёт инфу из нужного местя памяти (3й бит мапится на шину адреса)

это не придирательство к словам, просто если бы ULA действительно "подключала"
нужную банку, а потом возвращала как было, сильно усложнилась бы схема
контроллера.

от: Slavik Tretiak
кому: All
дата: 06 Mar 2006
Hello, icebear

icebear

3й бит #7FFD отвечает только за адрес выборки при отображении.
это никак не связано с текущей страницей.

т.е. то что ты написал в своём последнем посте почти правильно.

от: Тимонин Максим Анатольевич
кому: All
дата: 06 Mar 2006
Hello, icebear

ice> Т.е. проще говоря ULA во время вывода информации на экран сама
ice> подключает нужную банку в зависимости от значения 3-го бита? А если я
ice> хочу писать во второй экран, мне надо обязательно включать 7-ю банку,
ice> так?

Да, безусловно. Иначе куда ты будешь вносить байты командами LD, LDI(R) и
прочими? Само собой, "впечатав" страницу 5 или 7 в адресное пространство. Hо
отображаться они могут и не будучи впечатанными.

P.S. Вопросик отсюда: вы же с командой в свое время AZX-Monstrum проектировали,
дык почему пробелы в таких элементарных моментах попадаются?




Темы: Игры, Программное обеспечение, Пресса, Аппаратное обеспечение, Сеть, Демосцена, Люди, Программирование

Похожие статьи:
IS-DOS - Faq: Ответы на часто задаваемые вопросы.
Правда о CC - Random/CC: Правда о Хаосе.
Pain - Slip "Я не пытаюсь вые..ться! Просто делаю игры. Делаю их, одну за другой"...

В этот день...   23 августа