nedoPC.org

Electronics hobbyists community established in 2002
Atom Feed | View unanswered posts | View active topics It is currently 28 Mar 2024 02:50



Reply to topic  [ 15 posts ] 
ЗАПРЕДЕЛЬНЫЕ видеорежимы 83h (84h) и 80h (GFF) 
Author Message
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22409
Location: Silicon Valley
Reply with quote
По итогам экспериментов с квадратиками видеопамяти Спринтера предлагаются новые видеорежимы для старого спринтеровского железа - 352x280 256 цветов (и 704x280 16 цветов):

Attachment:
vramsys_83h_84h.jpg
vramsys_83h_84h.jpg [ 19.43 KiB | Viewed 13613 times ]

_________________
:dj: https://mastodon.social/@Shaos


14 Apr 2021 20:10
Profile WWW
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22409
Location: Silicon Valley
Reply with quote
Post 
Способ адресации "запредельных" пикселов в режиме 83h (84h) предлагается следующий:

Attachment:
Mode-83h-84h.gif
Mode-83h-84h.gif [ 17.6 KiB | Viewed 13601 times ]

Верхние 16 строк и нижние 8 строк пикселов расположены в области шрифтов (это не страшно - шрифты вернутся на место после смены видеорежима в текстовый).
Верхние 16 строк переключаются вместе с видеостраницей, а вот нижние 8 строк - нет (видеопамяти не хватит их тоже переключать).
Кроме того в нижних 8 строках можно организовать полуаппаратный горизонтальный скролл с шагом 8 пикселов в пределах 512 пикселов...

_________________
:dj: https://mastodon.social/@Shaos


14 Apr 2021 21:33
Profile WWW
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22409
Location: Silicon Valley
Reply with quote
Слегка поправил распределение памяти для верхних строк у второй видеостраницы и сделал нижние строки единым блоком - теперь вроде более логично стало (см.выше)

_________________
:dj: https://mastodon.social/@Shaos


14 Apr 2021 23:12
Profile WWW
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22409
Location: Silicon Valley
Reply with quote
Проба пера вширь :)

Attachment:
termipus-sprinter.jpg
termipus-sprinter.jpg [ 243.8 KiB | Viewed 13534 times ]

Пока 352x256

P.S. На самом деле эта картинка нарисована НЕ по описанной выше спецификации видеорежима 83h (84h) т.к. тут не трогается зона шрифтов и все запредельные пикселы расположены в зоне второй видеостраницы - только ради того, чтобы выйдя из картики в обычный графический или текстовый софт, можно было увидеть по краям эти самые запредельные пикселы:

Attachment:
termipus-sprinter-after.jpg
termipus-sprinter-after.jpg [ 160.23 KiB | Viewed 13435 times ]


P.P.S. И вот через неделю - 27 апреля 2021 года - я решил завести под это дело новый видеорежим (для беспроблемной эмуляции в своём эмуляторе) под номером 80h - спецификацию в тетрадочке нарисовал - вот фотосканы (залил их сюда уже только в сентябре 2023):


Attachment:
Mode0x80-OnTheScreen.jpg
Mode0x80-OnTheScreen.jpg [ 59.65 KiB | Viewed 2828 times ]

Это так оно выглядит на экране, а ниже - как в теневой видеостранице, откуда берутся кусочки по краям:

Attachment:
Mode0x80-In2ndScreenVideoMem.jpg
Mode0x80-In2ndScreenVideoMem.jpg [ 71.79 KiB | Viewed 2828 times ]

_________________
:dj: https://mastodon.social/@Shaos


20 Apr 2021 19:07
Profile WWW
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22409
Location: Silicon Valley
Reply with quote
Возникает вопрос - а как представлять картинки для таких расширенных режимов? А очень просто - дамп видеопамяти Спринтера 256 кб :)
Если этот дамп пожать пакером (например SHAFF1) то размер получившегося файла будет 70-80 килобайт.
Расширение у таких файлов можно сделать GFF (Gfx packed with shaFF).
В будущем так можно не только широкие и высокие картинки представлять, но и картинки с 4 палитрами на экране - т.е. всего 1024 цвета из 16 миллионов! :mrgreen:

_________________
:dj: https://mastodon.social/@Shaos


24 Apr 2021 02:14
Profile WWW
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22409
Location: Silicon Valley
Reply with quote
Вот тестовая картинка от пользователя телеграма LessNick в разрешении 368x288 (максимум для нового режима 80h):


Attachments:
LessNick.jpg
LessNick.jpg [ 160.96 KiB | Viewed 13422 times ]

_________________
:dj: https://mastodon.social/@Shaos
30 Apr 2021 00:50
Profile WWW
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22409
Location: Silicon Valley
Reply with quote
Shaos wrote:
Image


Я вчера открыл новый вид графического искусства - бордер арт :mrgreen:


Attachments:
borderart.jpg
borderart.jpg [ 192.75 KiB | Viewed 13422 times ]

_________________
:dj: https://mastodon.social/@Shaos
30 Apr 2021 01:09
Profile WWW
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22409
Location: Silicon Valley
Reply with quote
То были просто куски Саймановских шариков, а вот настоящий "Border Art" :mrgreen:


Attachments:
borderart.jpg
borderart.jpg [ 200.66 KiB | Viewed 13419 times ]

_________________
:dj: https://mastodon.social/@Shaos
30 Apr 2021 03:24
Profile WWW
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22409
Location: Silicon Valley
Reply with quote
Обновил архив запредельных картинок (UPDATE 13-FEB-2022):

http://nedopc.org/nedopc/sprinter/upload/gffview.zip (1.7MB)

Code:
Archive:  gffview.zip
  Length      Date    Time    Name
---------  ---------- -----   ----
    66099  2021-05-06 19:34   AMBER_H.GFF
    71070  2022-02-12 13:49   BIGBUCKB.GFF
    96281  2022-02-12 00:31   CHEBOKSA.GFF
    81050  2022-02-12 00:43   CHICAGO.GFF
    11787  2021-04-30 02:59   CLEAN.GFF
    87843  2021-05-28 23:09   EBURG.GFF
    66717  2021-04-30 03:17   GAGARIN.GFF
     1753  2021-05-06 19:10   GFFVIEW.EXE
    19801  2021-04-30 03:17   GOLDEN.GFF
    95170  2021-08-29 22:25   HACKERMN.GFF
    96692  2021-05-26 00:55   KLAD.GFF
    84833  2021-08-20 09:14   KOLYAZIN.GFF
    21420  2021-04-30 02:52   LESSNICK.GFF
    85863  2022-02-11 23:48   MIAMI.GFF
    91305  2022-02-12 00:08   MOSKVA.GFF
    89754  2022-01-25 21:55   NEDOPC.GFF
    48353  2021-05-20 03:10   OPUS_MEM.GFF
    89619  2022-02-12 01:12   PARAD.GFF
    81264  2022-02-12 00:41   PURPLE.GFF
    79812  2021-05-16 21:24   ROMANROM.GFF
    84982  2022-02-08 23:10   SHOUGANG.GFF
   100537  2022-02-12 00:10   STARS.GFF
    81846  2021-04-30 08:24   TERMIPUS.GFF
   108424  2021-08-12 01:22   TOKYO.GFF
    27852  2021-05-06 19:40   TV_CHART.GFF
    96379  2021-05-16 21:25   ZABOR.GFF
---------                     -------
  1866506                     26 files


P.S. Одна из картинок 368x288 TV_CHART.GFF выведенная через OSSC на HDMI телевизор с отключенным оверсканом (тут видно все добавленные квадратики - по 2 сверху и снизу и по 3 слева и справа):

Attachment:
tv_chart-sprinter.jpg
tv_chart-sprinter.jpg [ 189.69 KiB | Viewed 13130 times ]


P.P.S. Она же выведенная напрямую на VGA-монитор 16:9 с автоподстройкой, который способен показывать видео с 15 кГц строчной:

Image

_________________
:dj: https://mastodon.social/@Shaos


16 May 2021 21:44
Profile WWW
Writer

Joined: 02 Dec 2020 14:53
Posts: 21
Reply with quote
на пц теперь надо вьювер, что бы можно было быстренько картинки глянуть, а не загружать эмуляторы всякие )


19 May 2021 01:42
Profile WWW
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22409
Location: Silicon Valley
Reply with quote
RomanRom2 wrote:
на пц теперь надо вьювер, что бы можно было быстренько картинки глянуть, а не загружать эмуляторы всякие )

да - можно попробовать сделать вьювер с юзер-интерфейсом, например wxWidgets, чтобы собиралось подо всё на свете
а то в эмулях эти кубики-квадратики ещё долго не будут поддержаны...

_________________
:dj: https://mastodon.social/@Shaos


21 May 2021 00:12
Profile WWW
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22409
Location: Silicon Valley
Reply with quote
В эмуляторе эти режимы можно поддержать так - если программа пробует установить такой режим по номеру через DSS в эмуляторе, то эмулятор включает нужный режим, а на реале будет возвращаться ошибка и программа будет устанавливать режим "вручную" заполняя квадратики нужным образом (эта часть в эмуляторе запускаться не будет т.к. там не будет возвращаться ошибка - режим установится сам).

_________________
:dj: https://mastodon.social/@Shaos


18 Jan 2022 22:17
Profile WWW
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22409
Location: Silicon Valley
Reply with quote
Обновил архив запредельных картинок (см. выше):

http://www.nedopc.org/forum/viewtopic.php?p=160414#p160414

Вот одна из них:


Attachments:
shougang-sprinter.jpg
shougang-sprinter.jpg [ 148.42 KiB | Viewed 11244 times ]

_________________
:dj: https://mastodon.social/@Shaos
13 Feb 2022 03:24
Profile WWW
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22409
Location: Silicon Valley
Reply with quote
Задумал я тут метадату писать в первой строке в неиспользуемую область между описателями экрана и палитрами - со смещения 928 до 991 (64 байта), например писать сигнатуру GFX и далее могут идти 2 байта размер по X, 2 байта размер по Y и байт флагов:
Code:
бит 0 - картинка имеет пикселы 256 цветов
бит 1 - картинка в удвоенном разрешении 16 цветов на пиксел
бит 2 - текстовая картинка
бит 3 - хитрый режим с 4 видеостраницами
биты 4,5:
 00 - не мигать (открывать видеостраницу 0 и оставаться в ней до выхода)
 01 - мигать видеостраницами по кадровому прерыванию
 10 - мигать видеостраницами с частотой 2 кадра в секунду
 11 - мигать видеостраницами по нажатию пробела
биты 6,7 - зарезервировано (в 6,7 можно количество используемых палитр указывать)
Можно ещё писать какой программой картинка создана и когда (скажем во второй строчке)

P.S. Либо вообще всё в текстовом виде писать - там целый трактат можно вставить размером 256 строк по 64 символа в каждой т.е. в пределе 16КБ :o

_________________
:dj: https://mastodon.social/@Shaos


13 Feb 2022 04:33
Profile WWW
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22409
Location: Silicon Valley
Reply with quote
Я практически вплотную подобрался к реализации "запредельных" картинок высокой чёткости 736x288 с 16 цветами (цветной дизеринг либо градации серого) - пожалуй ради будущей совместимости с Project Spirit они будут всегда в широкоэкранном режиме (с соотношением сторон 16:9 в отличие от "низкой" чёткости 368x288, которые уже были как 5:4, так и 16:9). В будущем (и в эмуляторе SprintEm) такой режим также будет устанавливаться через A=80h и чтобы отличить его от обычного 256-цветного режима можно воспользоваться аргументом B, который в данном случае не будет обозначать видеостраницу т.к. видеостраница в этом режиме всегда только одна - скажем при B=0 будет выбираться режим 368x288 c 256 цветами на точку, а при B=1 будет выбираться режим 736x288 c 16 цветами на точку - это сильно упростит поддержку GFF-картинок в эмуляторе. Требуемый режим можно указывать в метаданных, как было предложено выше, но в текстовом виде:
Code:
GFX1 #80 1 (768x288 16c)
GFFVIEW будет вычитывать эту строку и будет пытаться установить этот режим (A=80h B=1) и если ОС ещё ничего про него не знает (как на реальном Спринтере), то данные просто будут скопированы в видеопамять, что должно работать на реальном железе. А размер и количество цветов по сути необходимы только для программы-просмотрщика на ПЦ (по умолчанию оно будет предполагаться 368x288 с 256 цветами и стандартным соотношением сторон 5:4). Возможно надо будет ещё писать скажем букву W (или слово Wide целиком), если предусматривается, что картинка должна быть показана с соотношением сторон 16:9, а не обычными 5:4. Также можно писать количество используемых палитр (пока не для эмулятора) в виде 2p, 3p или 4p (по умолчанию это всегда одна палитра, причём вторая т.е. палитра №1).

_________________
:dj: https://mastodon.social/@Shaos


12 Sep 2023 01:12
Profile WWW
Display posts from previous:  Sort by  
Reply to topic   [ 15 posts ] 

Who is online

Users browsing this forum: No registered users and 6 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Group
Designed by ST Software.