Speccy - наш выбор!

Speccy - наш выбор! (http://zx-pk.ru/index.php)
-   Вектор (http://zx-pk.ru/forumdisplay.php?f=55)
-   -   Вектор-06Ц: Эмуляция - бордюр и скроллинг (http://zx-pk.ru/showthread.php?t=11066)

ivagor 9th October 2009 23:38

Вектор-06Ц: Эмуляция - бордюр и скроллинг
 
Эмуляторы все ближе к реальному вектору, надо бы разобраться и со скроллингом. Вот как бы тестик
Attachment 13680
В b2m, VV и ve27 работает по-разному, а на реале, надеюсь, совсем иначе :).

Еще забыл в readme написать, что шрифт взят у b2m :)

Ramiros 9th October 2009 23:59

Чес говоря непонял в чем тест заключается и что должно быть?

b2m 10th October 2009 00:24

А я, в свою очередь, выдернул шрифт из тестов таймера i8253*.rom :)
Как я понял этот тест проверяет, а что же будет, если скролл изменить в определённый момент, когда "луч" находится в определённой точке с определённой координатой X, которая зависит от задержки. Сразу скажу, у меня в эмуляторе это не предусмотрено.

Tim0xA 10th October 2009 01:10

3 Attachment(s)
Quote:

Originally Posted by ivagor (Post 224528)
В b2m, VV и ve27 работает по-разному, а на реале, надеюсь, совсем иначе

На реале при любых задержках картинка стабильна. Прилагаю три скриншота. Халтурите, господа эмуляторщики ;)

ivagor 10th October 2009 07:47

Честно говоря я надеялся, что изменение регистра скроллинга, если не в любой момент, то хотя бы в некоторые моменты при отрисовке картинки будет успешным. Т.е. думал, что будет ближе к b2m или VV, а оказалось, что правильно работает только ve27 :(.

---------- Post added at 08:47 ---------- Previous post was at 08:39 ----------

Мне все же интересно, почему так? svofski, b2m - скажите что-нибудь умное по этому поводу.
А может, если сделать дискретность изменения задержки меньше, то найдется "уязвимый" момент, или все же дергать экран при его отрисовке на векторе принципиально невозможно?

b2m 10th October 2009 13:08

Блин, я ведь видел, как организован скролл, но почему-то не задумался о том, он задаётся на весь кадр - значение порта скроллера записывается в счётчик адреса по кадровому импульсу, а дальше счётчик просто увеличивается. Но это сделать как раз проще простого.

Ramiros 10th October 2009 14:13

Tim0xA, а запусти macsit.rom на реале, там в заставке растровый эффект на бордюре, и что интересно на шесть линий там тратится 1140 тактов, что соответствует 190 тактам на линию (должно быть 192), теоретически должен быть косяк внизу с права на бордюре, хотелось бы увидеть скриншот

svofski 10th October 2009 16:19

partscrl у меня держится четко (если то, что надо было сделать, это понажимать CC пока не переберутся все цифирки?). Скролл -- это просто значение, которым инициализируется счетчик строк. В середине кадра его можно менять, но в следующий раз оно занесется только в начале следующего кадра.

Это, кстати, вопрос невыясненный: по кадровому импульсу, или сигнал защелкивания снимается в момент начала видимой области. Нужен еще тест.

ivagor 10th October 2009 16:37

Quote:

Originally Posted by svofski (Post 224645)
Это, кстати, вопрос невыясненный: по кадровому импульсу, или сигнал защелкивания снимается в момент начала видимой области.

Это почти телепатия - как раз сижу и пялюсь в схему и техническое описание.
Момент важный, т.к., если я все правильно понял, можно опрашивать клавиатуру без ущерба для изображения не только сразу после прерывания, но и во время отрисовки изображения. Главное - чтобы к моменту (который нужно уточнить) переписывания в счетчик в порту 3 было нужное значение.

---------- Post added at 17:37 ---------- Previous post was at 17:25 ----------

Вроде сигнал /WVA, по которому, судя по описанию, осуществляется запись в счетчик экранного адреса, не совпадает с сигналом, по которому происходит прерывание проца.

b2m 10th October 2009 17:46

Судя по тому, что счётчик адреса вычитается всегда, то запись ведётся по строчному СИ перед началом видимой области.


All times are GMT +4. The time now is 23:52.

Powered by vBulletin® Version 3.8.3
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.