Аппаратный скроллинг для Pentagon1024SL22

Postby breeze » 25 Jun 2009, 01:24

lvd wrote:Только честно


конечно, а какие-то сомнения ? smile
breeze
 
Posts: 538
Joined: 07 Feb 2009, 16:19
Group: Registered users

Postby lvd » 25 Jun 2009, 08:34

breeze wrote:конечно, а какие-то сомнения ?

Значит срочно покупай у коя голую плату за 500$, комплектуху ищи ещё на полсотни-сотню и учись паять 0.5мм кфп корпуса. А то иначе подозрения на искренность веры. А вероотступники отправляются на говнофорум! biggrin tongue bye hands
F̞͖̭̿̔ͯu̐̅cͬ̑ͩk̨̤̳͇̮̭̪̠̽̿̓̆ͭͩ ̷̩̰͎̩͓̘̾̀ͬ̊ͭ͛ͅda̝̺͙̬͎̝̾͟ ̰̜̝̯͉̯̖̓̎́ͨ̽ͫ͟f̟͇̭̀ͬͨͭ̐̚u̹̼̹̗̞͑̔͂͐̚cͭ̅̊̆̒̆ǩ̝̩̯́ͥ̔̍̑ḭ͓͍̳̬ͦ̽͂n͍͎͈̈̅ͩͬ ̊ͫ̂̾̑̈́f̲͚͉͓͗̋́ͧͦ̅ȗ͇̲̻͈̲̅̎͗͒ͭ͡c̬̟̠̹̯̈́ͩ͘ͅk̫̠̻̋͜a̲͒̾̇!͙͕̺͉̗̩̲̂̏̄̀
User avatar
lvd
 
Posts: 7262
Joined: 07 Apr 2007, 21:28
Group: Registered users

Postby breeze » 25 Jun 2009, 08:50

lvd wrote:Значит срочно покупай у коя голую плату за 500$, комплектуху ищи ещё на полсотни-сотню и учись паять 0.5мм кфп корпуса.


уууу sad нее... паять это не мой профиль... отсутствие должного количества внимания, приводит к не очень приятным последствиям dry так что, я уж лучше софт попишу... по крайней мере ничего не спалю wink

lvd wrote:А то иначе подозрения на искренность веры.


ну я как бы и не претендую на роль юного падавана wink
breeze
 
Posts: 538
Joined: 07 Feb 2009, 16:19
Group: Registered users

Postby DDp » 25 Jun 2009, 19:53

lvd wrote:А из описания этого не следует.

Добавил слово "циклический" biggrin

Обновлено по ссылкам в первом посте.
Добавлен вариант циклического скроллинга 192 линий. Доп.память при этом не используется. (Как вариант там можно хранить часть спрайтов, куски фона и т.п.)

Дополнительная фишка в прошивке - в режиме "16C" смещено положения INT-а. Импульс прерывания возникает после того, как луч отрисует 192 строку экрана, с началом нижней части бордюра (на 48 * 224 = 10752 такта раньше "Пентагоновского").
User avatar
DDp
 
Posts: 123
Joined: 27 Oct 2007, 10:29
Group: Registered users

Postby DDp » 25 Jun 2009, 19:55

lvd wrote:Кстати, а с горизонтальным кагдела?

Будет пауза - я опять в разъездах...
User avatar
DDp
 
Posts: 123
Joined: 27 Oct 2007, 10:29
Group: Registered users

Postby DDp » 07 Jul 2009, 18:21

Когда говоришь, что это невозможно, то тебе в ответ: "Ну, ты постарайся уж, как-нибудь!"
Держите...

Горизонтальный+вертикальный аппаратный скроллинг для Pentagon1024SL22 в режиме 16C.
Паяльник не требуется.
Прошивка. Описание (кратенько). Оценить это можно в специальной версии эмулятора.
User avatar
DDp
 
Posts: 123
Joined: 27 Oct 2007, 10:29
Group: Registered users

Postby jdigreze » 08 Jul 2009, 04:40

Как сказал бы заяц Бо: Это круть несусветная! happy
Сколько меня не корми, волк всё равно в лес смотреть будет
jdigreze
 
Posts: 1478
Joined: 01 Aug 2008, 06:49
Location: Агбан
Group: Registered users

Postby alone » 08 Aug 2009, 14:36

Надо две отдельных скроллируемых области 256x256. Иначе невозможно работать на двух экранах (светить один, рисовать в другом). Ибо у соседних кадров в общем случае разные сдвиги. А 256 по вертикали потому, что пересчитывать координаты в 192 проблематично.
User avatar
alone
 
Posts: 152
Joined: 04 Jun 2007, 20:04
Group: Registered users

Postby Black_Cat » 09 Aug 2009, 20:14

alone wrote:Ибо у соседних кадров в общем случае разные сдвиги

эт врядли.. ведь адрес сдвига физически один, и не зависит от того какой экран отображается, основной, или альтернативный.. дык откуда взяться разному сдвигу?

alone wrote:Надо две отдельных скроллируемых области 256x256. Иначе невозможно работать на двух экранах (светить один, рисовать в другом).

Пожалуй ты прав, переключение по D3#7FFD должно обеспечивать смену экрана. Но тогда необходимо решить вопрос с выделением областей памяти под неотображаемую область скроллируемого экрана. Учитывая, что прокрутка может быть двухкоординатная, то под такой скроллинг должно выделяться как минимум 4 экрана. Основной проблемой здесь является то, что в разных видеорежимах экраны имеют разный объём, к тому же в перспективе объём будет расти, поэтому выделение областей под скроллинг должно быть масштабируемым. При этом не получится привязать область скроллинга к конкретным страницам памяти, т.к. объём ОЗУ у разных клонов разный, а конкретная привязка приведёт к невозможности оптимально использовать имеющуюся у клона память, отдав конкретные области сугубо под скроллинг. Поэтому, как мне видится, самым оптимальным решением будет закрепить под скроллинг плавающие адреса, зависящие только от конкретного клона, например два старших адреса адресного пространства ОЗУ - самый старший - вертикаьный, следующий за ним - горизонтальный скроллинг. Т.к. объём ОЗУ у разных клонов разный, то программа использующая скроллинг должна предварительно его определить и таким способом получить конкретные адресные разряды для адресации 4х экранных областей выделенных под скроллинг.
Last edited by Black_Cat on 09 Aug 2009, 20:45, edited 1 time in total.
"Очень трудно найти чёрную кошку в тёмной комнате... особенно, если её там нет.", "Forever!".
zx.clan.su - Soviet Union ZX Spectrum Community - форум посвящённый развитию Спека.
User avatar
Black_Cat
Не умею ничего делать, потому учу
 
Posts: 659
Joined: 17 Apr 2007, 13:19
Group: Removed

Postby DDp » 19 Sep 2009, 08:24

Скролл (без извратов, один экран) 256x256.
Прошивка. Описание (кратенько). Оценить это можно в специальной версии эмулятора
User avatar
DDp
 
Posts: 123
Joined: 27 Oct 2007, 10:29
Group: Registered users

PreviousNext

Return to ZX Spectrum

Who is online

Users browsing this forum: No registered users and 9 guests

cron