Важная информация

User Tag List

Страница 1 из 12 12345 ... ПоследняяПоследняя
Показано с 1 по 10 из 112

Тема: Идея по введению лучшей графики в РК86

  1. #1
    Banned
    Регистрация
    05.10.2016
    Адрес
    г. Санкт-Петербург
    Сообщений
    1,080
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    5
    Поблагодарили
    5 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию Идея по введению лучшей графики в РК86

    Наиболее востребованый режим псевдографики РК86 это 128*60. При этом за счёт сокращения высоты знакоместа с 10 до 8 линий растра в экран умещается 30 строк. Базовый фонт псевдографики разбивает знакоместо на 2*2 пикселя, т.е на 4 пикселя затрачивая 16 символов в фонте. Размер элементарного пикселя 3*4 точки. Так и получается 64*2=128 по горизонтали и 30*2=60 по вертикали.

    Однако ВГ75 позволяет большее. Допустимо иметь до 64 строк. Сократив высоту знакоместа ещё более, - с 8 до 6 линий растра и применяя альтернативный, специально для графики предназначенный фонт, можно увеличить разрешение по вертикали. При этом общее число рядов знакомест 52, что даёт в кадре 6*52=312 требуемых линий растра. Видимыми будут только 43 знакоряда. Разделив знакоместо на 2*3 пикселя с размерами каждого пикселя в 3*2 точки, при 43 строках знакомест высотой в 6 линий, получается графика 128*129. Естественно, в знакогенераторе 64 псевдографических символа.

    Но и это оказывается не предел для РК86. За счёт использования interlaced режима с частотой полукадров в 25 Герц можно иметь картинку с разрешением 256*129.

    Для пояснения идеи расскажу о одном эксперименте с ОРИОНОМ, что я делал в 1993 году. Итак в ОРИОН добавляется триггер ТМ2 по схеме D-триггера, т.е по каждому заднему фронту на C-входе его выход изменяется. На C-вход триггера заводим КСИ, а выход триггера подаем в схему ОРИОНА так, чтобы переключать экран с C000 на 4000. Тогда один период частоты 50 ГЦ отображается один экран, а в следующий период - другой. Идея обычной черестрочной развёртки телевидения. В ходе эксперимента я загружал в экран 4000 одну картинку, а в экран C000 другую картинку. И убрав сброс с входа RESET ТМ2, я видел на экране объединённые 2 картинки. Но яркость изображения заметно падала.

    На РК86 сигнал с выхода триггера с помощью ЛП5 будет инвертировать адрес А12, причём только когда идёт HLDA, т.е только пока экран читает ПДП. Это приведёт к тому, что чётные кадры будут читаться с обычных адресов экрана 76D0...7FFF, а вот нечётные будут читаться с адресов 66D0...6FFF. Причём сигнал триггера будет переключать фонт. В каждом знакогенераторе обоих фонтов псевдографика занимает только только половину знакоместа (или левую половину или правую).

    Лучше использовать фонт шириной не 6, а 8 точек (чтобы делилось на 4). Высота знакомеcт 6 линий (чтобы делилось на 3). Фонт 8*6 разбивается на матрицу 4*3 с размером пикселя в 2*2, но фонт для каждого полукадра занимает лишь половину знакоместа по горизонтали, т.е в матрице 2*3, отчего число символов те же 64.

    В чётных полукадрах отображются левые половины знакомест, а в нечётных кадрах правые половины знакомест. Но общее разрешение по горизонтали увеличивается вдвое до 256. При высоте знакоместа в 6 линий по вертикали умещается 43 строки. Так получается разрешение 256*129. Это вполне нормальное разрешение для игровых автоматов вплоть до середины 80-тых.

    Если же не менять ИЕ4 на ИЕ5, т.е сохранив убогий фонт 6*8, то тоже получается графика 256*129, но пиксели по ширине не одинаковые - чётные шириной в 2 точки нечётные шириной в 1 точку.

    Итого, расход деталей - один дешёвый триггер и затраты труда на перепрошивку фонта превращают РК86 в приличный (для своего времени) графический компьютер.

    Интересно, многие ли читатели поймут эту идею. Если не поняли, - спрашивайте, уточню что не ясно.
    Миниатюры Миниатюры Нажмите на изображение для увеличения. 

Название:	5 КОИ-8 в графич.режиме 192x100.png 
Просмотров:	370 
Размер:	3.7 Кб 
ID:	63598  
    Последний раз редактировалось barsik; 01.01.2018 в 15:47.

  2. #1
    С любовью к вам, Yandex.Direct
    Размещение рекламы на форуме способствует его дальнейшему развитию

  3. #2
    Veteran Аватар для Kakos_nonos
    Регистрация
    26.12.2010
    Адрес
    Кубань
    Сообщений
    1,152
    Спасибо Благодарностей отдано 
    29
    Спасибо Благодарностей получено 
    36
    Поблагодарили
    22 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Круто! Но тут встает вопрос необходимости. РК и так тормозной, а пдп его еще сильнее тормозит, и чем больше строк тем больше тормоза.
    У рк частота 1,77 мгц, но эффективная частота - 1,3 мгц. В режиме 50 строк апогея тормоза еще сильнее, мало остается тактов на прерывание, а если добавить что экран большой, надо перерисовывать его дольше, то есть фпс еще сильней упадет.
    Может, есть какая-то деталь, которую я не понял, но во время создания уточек демо я столкнулся с этим.
    У партнера отличные режим, у МЦПГ. И почти не освоен еще, столько крутого можно понаписать.

  4. #3
    Banned
    Регистрация
    05.10.2016
    Адрес
    г. Санкт-Петербург
    Сообщений
    1,080
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    5
    Поблагодарили
    5 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Kakos nonos
    В режиме 50 строк апогея тормоза еще сильнее, мало остается тактов на прерывание, а если добавить что экран большой, надо перерисовывать его дольше, то есть FPS ещё сильней упадет.
    Чем больше строк, тем больше торможение. О каких 50-ти строках речь? Это 50 строк видимых или 50 строк это их общее число с учетом верхнего и нижнего бордюров?

    Если 50 строк видимых, то разве есть у Апогея фонт высотой в 5 линий ? 50 строк иметь не проблема. Выбираем фонт высотой в 5 линий, с общим число знакорядов в 62. Получаются те же 62*5=310 линий растра в кадре. Из них 50 видимых рядов знакомест высотой в 5 точек. Но псевдографика при высоте не кратной 2 - некрасива. Верхние пиксели высотой в 2 точки, нижние высотой в 3 точки.

    В текстовом режиме по сбросу общее число строк 31, видимых 25. В традиционном графическом режиме общее число строк 36, из них 30 видимы. А в предлагаемом режиме с высотой знакомест в 6 линий общее число строк 52, из них 42 или 43 видимых.

    Невидимые строки тоже жрут быстродействие. Потеря скорости на смене режима, думаю, процентов 15-20, и это легко компенсируется перекидыванием проводника в схеме РК86, чтобы поднять такт ВТ57.

    В РК есть 2 метода ускорения - это поднять такт ВТ57 (короче будут циклы ПДП) и второе, - это поднять такт КР580 (по журналу РАДИО, кажется 01.1991). В РК86 видео и CPU могут быть асинхронны, т.к никак не связаны. Я ставил кварц 27 МГЦ (такт 3 МГЦ), устойчиво работало. Но при подключении РК-КНГМД пришлось понижать кварц до 20 МГЦ, т.к нет запаса по нагрузочной способности, ОЗУ просто не тянут нагрузку. А вот если ОЗУ на статике, то 3 МГЦ не предел даже при нагруженной шине. При большой нужде в турбировании можно поставить буфера на ОЗУ и разогнать КР580 выше 3 МГЦ.

    РК86 тем и приятен, что в нём очень простые доработки дают выдающийся результат. Например, простейшая допрошивка в РФ2 альтернативного фонта резко улучшает качество вводя инверсию знакомест, рамки и высокую графику, тупая замена кварца повышает быстродействие, а замена ИЕ4 на ИЕ5 делает красивый фонт.

    Ну а если скорости не хватает, можно использовать два экрана. Это снимает необходимость в прерываниях для синхронизации с видео. На прерываниях остаётся только функция счёта времени. А вообще-то в РК86 нет прерываний. Зато есть возможность считать КСИ из регистров ВГ75. Но вряд-ли кто -то это делал или будет делать.

    Хочу попробовать такую простую доработку РК86 до графики. Это делает симпатичный компьютер из уродливого.
    Последний раз редактировалось barsik; 01.01.2018 в 16:04.

  5. #4
    Member
    Регистрация
    01.06.2005
    Адрес
    Москва
    Сообщений
    184
    Спасибо Благодарностей отдано 
    1
    Спасибо Благодарностей получено 
    29
    Поблагодарили
    24 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    не вижу смысла. в Апогее графика делается знакогенератором и получается вполне прилично для такого компьютера и никакого аппаратного изменения.

  6. #5
    Guru Аватар для NEO SPECTRUMAN
    Регистрация
    22.05.2011
    Адрес
    г. Дзержинск, Украина
    Сообщений
    6,832
    Спасибо Благодарностей отдано 
    479
    Спасибо Благодарностей получено 
    656
    Поблагодарили
    511 сообщений
    Mentioned
    10 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от barsik Посмотреть сообщение
    Это приведёт к тому, что чётные кадры будут читаться с обычных адресов экрана 76D0...7FFF, а вот нечётные будут читаться с адресов 66D0...6FFF.
    зачем это?
    в РК уже все это изначально есть
    нужно всего лишь запрограммировать ПДП на перекидывание в два раза большего количества данных
    а вг75 уже будет каждый раз получать данные из разных полукадров

    не подумал что нужно каждый фрейм менять шрифт
    а у рк нет прерываний

    Цитата Сообщение от barsik Посмотреть сообщение
    Итого, расход деталей в дешёвый триггер и затраты труда на перепрошивку фонта превращают РК86 в приличный (для своего времени) графический компьютер.
    спектрумисты мигали мигали экраном
    даже пытались получить этим цвет на точку

    но в конечном итоге пришли к выводу что все это вырвиглазно
    от этого устают глаза, это нормально не эмулируется

    нельзя просто так взять и мигать в таком диапазоне яркостей с такой низкой частотой
    была бы развертка герц 75-80 а не 50 Гц
    это б уже прокатило (но при поворотах головы сразу же видно что нам подсунули что то не то)

    я достаточно наэксперементировал с этим
    и думаю что ты даже не представляешь как оно будет выглять на самом деле

    нет если подобрать телек с большим послесвечением
    выкрутить яркость в минимум
    и сидеть смотреть на это безобразие в темноте
    то да
    картинка будет относительно стабильной


    почитал внимательней и увидел что ты знаешь как оно мерцает
    но если это мерцание терпимо для тебя
    то оно не терпимо для других (например меня неимоверно бесило мерцание менюшки двдшника с его непрогресивной разверткой(хотя там диапазон мерцания был явно меньшим и еще ж было само смещение строк))
    и это при том что я достаточно хорошо отношусь к этому эффекту

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



    хотя само по себе мерцание с черезстрочником в 4 пикселя уже достаточно сильно ослабляет мерцание
    но все равно
    с черезстрочниками в 2 и 1 пиксель оно не сравнится


    в принципе можно проверить идею на состоятельность
    найти любой рк подобный с доработкой со сменным шрифтом
    или зашить в пзу-шку кому не трудно
    для теста сгодится и традиционный рк с 6х8 шрифтом

    можно взять так удвоить разрешение по вертикали например


    - - - Добавлено - - -

    @barsik, более рациональным будет применение такой матрицы
    Код:
    122000
    112000
    344000
    334000
    566000
    556000
    
    000122
    000112
    000344
    000334
    000566
    000556

    1. не нужно никаких модификаций рк только перепрошивка ПЗУ
    2. мерцание с шагом в 3 пикселя менее заметно
    (хотя если в доработаном до 8х8 рк пиксель клок больше(пиксели уже) то разницы как таковой не будет)

    ну пиксели не совсем квадратные
    ну и что?
    на фоне мерцания это не такая проблема


    а может все таки лучше удвоить разрешение по вертикали
    Код:
    112233
    112233
    445566
    445566
    000000
    000000
    000000
    000000
    
    000000
    000000
    000000
    000000
    112233
    112233
    445566
    445566
    в итоге у нас красивые ~квадратные пиксели
    +кажется мне что мигающие горизонтальные полосы это лучше чем мигающие вертикальные

    самый оптимальный вариант
    Код:
    110022
    110022
    003300
    003300
    440055
    440055
    006600
    006600
    
    001100
    001100
    220033
    220033
    004400
    004400
    550055
    550055
    но он из разряда смерть кодеру
    пушо работать с ним будет трудновато
    но картинка будет довольно стабильная

    - - - Добавлено - - -

    Цитата Сообщение от barsik Посмотреть сообщение
    Это приведёт к тому, что чётные кадры будут читаться с обычных адресов экрана 76D0...7FFF, а вот нечётные будут читаться с адресов 66D0...6FFF.
    не забывай что рк нет понятие экрана с такого то адреса !!!!!
    у него экран может быть с произвольного места
    и произвольных размеров

    тут нужно ксоренье какого нибудь старшего бита


    еще напомню что мы не знаем в какой момент времени какой из экранов у нас сейчас рисуется
    и просто так нельзя привязать смену шрифтов к частоте фреймов
    иначе полу кадры просто поменяются местами (тк програмирование вг75 и пдп может произойти как на четном полукадре так и не на четном)

    или лучше смену экранов оставить обязаностью ПДП
    а переключение шрифтов чтоб зависило от сигнала с ноги какого нибудь старшего адреса

    тогда можно будет тулить экрана произвольных размеров так чтоб посредине была смена шрифтов

    а лучше попытаться менять шрифт каким то другим образом
    порасматривать внимательно вг75
    и подумать как

    - - - Добавлено - - -

    короче что предлагаю я
    впилить в рк прерывания от КСИ
    впилить перепрограмируемый шрифт (несколько сменных переключаемых наборов)
    всё
    все проблемы решены
    у програмиста развязаны руки
    он может получить 64 "спрайта" в нативном разрешении 5**х3**
    а может и запилить любой видео режим который он захочет с любым строением байта
    и без проблем запилить все то что описано выше (каждый фрейм щелкать набором шрифтов)



    кстате я предлагаю не жлобиться
    а отдать под сменные шрифты столько памяти
    сколько максимум может съесть вг75 за 2-3 кадра (лучше конечно 3)

    это ну очень сильно расширит возможности
    начиная от сильного упрощения всей анимации (просто в начале кадра меняем набор шрифтов и всё (все что на экране даже не трогаем)
    заканчивая тем что можно будет иметь 3 экранных буфера с разрешением 5**х3** (нужно будет щелкать наборы шрифтов каждое определенное время с начала фрейма (для синхронизации с которым как раз будет инт от КСИ) и будет софтварный режим высокого разрешения (который я пока еще не выжал из обычного недоработанного рк))

    3ы3ы меня если понесет я могу строчить посты и побольше чем ты
    Последний раз редактировалось NEO SPECTRUMAN; 01.01.2018 в 05:05.

  7. #6
    Banned
    Регистрация
    05.10.2016
    Адрес
    г. Санкт-Петербург
    Сообщений
    1,080
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    5
    Поблагодарили
    5 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Раз речь шла о графике, я не упомянул ещё об одном шикарном режиме для РК86. Речь о великолепном текстовом режиме 64*21 с фонтом корветовского качества 8*12. Режим программирования тот же, - мой любимый режим с высотой знакомест в 6 линий в 42-х отображаемых линиях, при полном числе линий в 52. Этот режим полностью соответствует стандарту. Считайте сами 52*6=312 линий в кадре, что и требуется. Базовый режим РК86 чуть-чуть не дотягивает до стандарта, он даёт всего 31*10=310 линий в кадре.

    В этом режиме используя специальный фонт для 64 символов, в котором символ на экране составляется из двух знакомест одно над другим, получается очень красивый фонт 8*12 в 21-ной строке по 64 символа в каждой. Но общее число доступных символов падает с 128 до 64. Это не так страшно, т.к большинство первых компьютеров в 70-тые (в т.числе и Apple-II) тоже имело всего 64 символа и никто не переживал из-за этого. Гораздо хуже, что для инверсии придётся использовать атрибут Reverse Video. Что резко сокращает цветовые возможности. Я предпочитаю иметь красивый шрифт вместо русских букв.

    Дико удивлён, что нашлись таки люди до которых дошла сама идея чересстрочной развертки с имитацией двух экранов фонтами "вползнакоместа".

    В раннем кинематографе использовали частоту кадров в 12, потом в 16 ГЦ и только в середине 20-тых годов стали использовать 24 Герца. Если людям хватало 16-ти Герц, и в телевидении до сих пор хватает 25 Гц частоты полукадров, почему тут должны возникнуть проблемы? Когда я коммутировал кадры с частотой 25 ГЦ, не помню, чтобы было заметно мерцание. Хотя это был профессиональный видео монитор, возможно с бОльшим послесвечением. Вот яркость заметно упала, это да. Но для этого есть ручки яркость и контрастность на видео мониторе.

    Где-то читал, что современные телевизоры захватывают сигнал с частотой кадров в 60 ГЦ. При частоте полукадров в 30 Герц экран явно не будет мерцать даже для аборигенов Австралии. Просто тупо повышаем кварц с 16 МГЦ до 19.2 МГЦ (а если основной кварц был 20 МГЦ из-за применения красивого фонта 8*8, то для частоты кадров в 60 Гц понадобится кварц 24 МГЦ). Проблему мерцаний, если они и будут, можно таким образом решить.

    Но вот с программированием поточечной графики сложнее. Псевдографика она и есть псевдографика. Тут сложнее программировать. А вот выводить текстовые символы это совсем не проблема.

    Текстовый драйвер пишется один раз и он не сложен (помнится я написал драйверы 192*100 и 128*120 всего за полчаса каждый, сложнее было написать программку конверсии обычного фонта в фонт нужный для такой графики). Скорость работы драйвера вывода текстов примерно в 4-5 раз выше, чем у драйвера ОРИОНА с шириной фонта в 6 точек (там тормозит небайтовость шрифта, требуются маскирования).

    По поводу быстродействия. У ИРИШИ в режиме "320 точек моно" эффективный такт ~1.5 МГЦ, а в режиме цвета или "моно 640 точек" эффективный такт ~1 МГЦ. И даже такой скорости хватает. Там ролик экрана делается стеком и при выключенном изображении, отчего эффективный такт временно поднимается до 1.77 МГЦ, что позволяет сдвинуть экран в 16 кб всего за 0.25 секунды.

    Считаем размер экрана для режима 256*129. 43 строки по 64 символа в каждой, два экрана. Итого 43*64*2=5504 байта. Такой экран сдвинется быстрее, чем на ИРИШЕ. Причём, т.к при копировании массива регенерация ОЗУ получается программной, то ПДП на время ролика можно просто отключать и двигать экран на максимальной скорости CPU в 2.22 МГЦ (это при фонте 8*8 и кварце 20 МГЦ). Это будет почти мгновенный ролик. Ну а для вывода символов достаточно скорости и в 1 МГЦ, а при кварце 20 МГЦ эффективная скорость равна ~1.8 МГЦ (выигрыш не кратен соотношению кварцев, а намного выше, т.к цикл ПДП сокращается из-за повышения такта ВТ57).

    Также как и с выводом символов, нет особых проблем с выводом заранее заготовленных спрайтов в играх. Есть готовый спрайт, есть подпрограмма его вывода. Задаём позицию в экране с шагом в 4 пикселя по горизонтали и 3 пикселя по вертикали и вызываем подпрограмму. Хлопот у прикладного программиста никаких.

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

    На таком РК удобно иметь 2 графических режима 256*129 чересстрочный для текстов и более простой режим 128*129 без чересстрочной развёртки для более простой псевдографики, полезный в основном для игр. Это оптимально, т.к в фонте как раз занимается 64 символа на чересстрочный фонт и 64 символа остаются на обычный псевдографический фонт знакоместа 8*6 с графической матрицей 2*3 (размер пикселя 4*2).

    Как указано в начале поста, используя ещё один фонт для 64 символов, в котором символ на экране составляется из двух знакомест одно над другим, получается очень красивый фонт 8*12 в 21-ной строке по 64 символа в каждой.

    Получается великолепный скоростной компьютер с текстовым экраном 64*21, красивым шрифтом и цветом. Плюс к тому же такой компьютер, простейшим переключением фонта получает вышеописанную графику 256*129 со шрифтом КОИ-8 и инверсией знакомест.

    Теоретически при графике 256*129 можно иметь 42 символа в строке в 14-ти строках c фонтом для символа в 6*9. Однако 42 символа в строке запрограммировать сложно (я за это не берусь), а вот драйвер на 32 символа в строке простой. Причём драйвер даёт и инверсию знакомест, т.к вывод графический. Яркость на экране во всех режимах (interlaced - non interlaced) легко уравнивается путём доп.расхода одного транзистора.

    Итого считаем, что надо для того, чтобы из РК86 сделать такой шикарный текстово графический компьютер.

    Сделать фонт 8*8. Поставить 155 ТМ2 заведя ему на C-вход сигнал КСИ. Прошить дополнительный фонт в ПЗУ фонта. Для нового текстового режима фонт чисто текстовой машины с высотой знакоместа в 6 линий и фонтом из двух знакомест. И дополнительно фонты для двух графических графических режимов 128*129 и 256*129. Для режима 256*129 в первый килобайт шьётся фонт для чётного кадра, во второй килобайт фонт для нечётного кадра. Ещё придётся поставить 155 ЛП5. Итого надо всего три доп.микросхемы ТМ2, ЛП5 и 27256.

    Старый базовый фонт тоже надо оставить, чтобы использовать старые программы РК86. Удобно использовать для фонта ПЗУ 27128 и управлять переключением фонтов разрядами запасного ППА D14. Тогда по сбросу, когда управляющие биты на адресах A11, A12, A13 ПЗУ фонта = 0,0,0 устанавливается базовый фонт РК86.

    В это ПЗУ фонта умещается 2 фонта для текстового режима с красивым фонтом от Корвета 8*12, (в одном фонте латинские заглавные буквы, в другом русские заглавные буквы). Графический фонт для графического режима 128*129, предназначенный в основном для игр и два фонта для чересстрочного режима 256*129.

    Если не делать замену ИЕ4 на ИЕ5, т.е оставить убогий фонт 6*8, то получается графика 128*129 и 192*129, а текстовый режим с двухблочными символами становится бессмысленным. Тогда лучше в 'interlaced' режиме увеличивать разрешение по вертикали (192*200) используя знакоместа высотой в 5 линий в 50-ти строках

    Это, помимо базового режима РК86 с 25-ю строками, даёт три дополнительных режима (в которых 42 или 43 ряда знакомест с высотой знакоместа в 6 линий):

    1. Text 64*21 mono с качественным фонтом для текстообработки (для программистов)

    2. Graf Low Resolution Color 128*129, режим для псевдографических цветных игр (16 цветов)

    3. Graf High Resolution Mono 256*129, чересстрочный режим графики высокого разрешения.

    Чересстрочный режим пока не проверял на практике, но (как говорил пан начальник тюрьмы из "Ва-банк-2") не вижу проблем.

    Для драйверов удобнее всего расширить ПЗУ РК86 до 15 кб в адресах C400...FFFF. Это можно сделать позднее, отлаживать ПО проще в ОЗУ.

    Для начала достаточно слегка модифицировать базовое ПЗУ F800. Я уже давно освободил в ПЗУ РК86 100 байт. Потому не проблема перетранслировать это ПЗУ введя флаг драйвера. Тогда по сбросу флаг устанавливается в 0, отчего п/п-ммы F803, F809 и F812 работают как в оригинале. Но если этот флаг поставить в не_0, то по входу в эти подпрограммы будет делаться JMP в фиксированные адреса в ОЗУ (разумно в ОЗУ выше 8400) или (если есть) в ПЗУ C400.

    Нужны текстовые драйвера двух режимов: Text mono 64*21 и High Resolution. Чисто графический режим для игр не нуждается в текстовом драйвере (хотя он у меня есть). Эти два текстовые драйвера могут грузиться в ОЗУ с ленты, но удобнее грузить их из ROM-диска от ОРИОНА. Драйвер в ОЗУ предпочтительнее на этапе отладки драйверов.

    Драйвер режима Text 64*21 совсем простой, размером менее 200 байт. Экран в этом режиме занимает 52*78= 4056 байт, потому его удобно делать в верхнем ОЗУ (выше 8400). В обоих драйверах курсор выводится программно, аппаратный курсор ВГ75 не виден.

    Текстовый драйвер шрифта 8*9 для графического режима 256*129, дающий текст 32*14 также очень прост, но имеет размер в 3 кб из-за необходимости иметь в нём фонт. На каждый символ тратится 6 байтов, потому размер фонта КОИ-8 составляет 256*6= 1.5 кб.

    Если кого интересует, давайте "забацаем" такой компьютер. Выпуск плат не особо нужен. Жаль, что в платах новоделов РК86 сразу не предусмотрели большого ПЗУ для фонта и большого ПЗУ F800 (с страничной коммутацией в окне размером в 2 кб). Тогда бы все доработки ограничились бы монтажом ТМ2 и ЛП5 (да и они нужны только для чересстрочного режима, остальные режимы достигаются тривиальной сменой фонта и применением другого режима ВГ75).

    Я лично для начала хочу сделать его эмулятор для ОРИОНА, чтобы отладить текстовые драйверы или даже целый ROM-BIOS, т.к меня не особо волнует совместимость с базовым РК86 (если надо посмотреть ПО РК86, то нет проблем поставить эр-кашные ПЗУ F800 и ПЗУ фонта назад).
    Последний раз редактировалось barsik; 01.01.2018 в 15:58.

  8. #7
    Guru Аватар для HardWareMan
    Регистрация
    26.02.2011
    Адрес
    г. Павлодар, Казахстан
    Сообщений
    4,394
    Спасибо Благодарностей отдано 
    304
    Спасибо Благодарностей получено 
    594
    Поблагодарили
    440 сообщений
    Mentioned
    10 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от barsik Посмотреть сообщение
    Для пояснения идеи расскажу о одном эксперименте с ОРИОНОМ, что я делал в 1993 году. Итак в ОРИОН добавляется триггер ТМ2 по схеме D-триггера, т.е по каждому заднему фронту на C-входе его выход изменяется. На C-вход триггера заводим КСИ, а выход триггера подаем в схему ОРИОНА так, чтобы переключать экран с C000 на 4000. Тогда один период частоты 50 ГЦ отображается один экран, а в следующий период - другой. Идея обычной черестрочной развёртки телевидения. В ходе эксперимента я загружал в экран 4000 одну картинку, а в экран C000 другую картинку. И убрав сброс с входа RESET ТМ2, я видел на экране объединённые 2 картинки. Но яркость изображения заметно падала.
    И... Это не интерлейсед режим а два чередующиеся с частотой полуполей кадра в режиме 288р (привет Спецтрумский мультигигаколор!). Чтобы получить настоящий интерлейсед, надо менять количество строк в поле: четное 312, нечетное 313. Это вызовет смещение растра на полстроки у обычного ЭЛТ телевизора (и соответствующую коррекцию у цифровых телевизоров или плат захвата, либо ЭЛТ телевизоров с цифровой обработкой изображения) и падение яркости будет уже не таким сильным (не в 2 раза а примерно в 0.7 раз) + точки двух полей не будут слипаться. Пытайся еще.

    PS Это справедливо и для РКшки.

  9. #8
    Guru
    Регистрация
    07.08.2008
    Адрес
    г. Уфа
    Сообщений
    7,794
    Спасибо Благодарностей отдано 
    639
    Спасибо Благодарностей получено 
    1,770
    Поблагодарили
    1,020 сообщений
    Mentioned
    22 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от HardWareMan Посмотреть сообщение
    И... Это не интерлейсед режим а два чередующиеся с частотой полуполей кадра в режиме 288р (привет Спецтрумский мультигигаколор!).
    Для ЭЛТ мониторов это не чересстрочная, а, например, тюнер AVER воспринимал 2 соседних прогрессивных кадра вектора (312 строк, 50 Гц) как полукадры одного чересстрочного кадра. Это было четко видно про скроллу вбок - если каждые 20 мс сдвиг влево на 8 точек, то при захвате (с горизонтальным разрешением 576 и частотой кадров 25 Гц) была гребенка - в нечетных строках было сдвинутое на 8 точек изображение, в следующем кадре уже на 16 и т.д. В virtualdube есть фильтры для разбора таких кадров в два полукадра с удвоением частоты, чем и пользовался при захвате. Но это касается именно тюнера, на ЭЛТ такого, конечно, не было.

  10. #9
    Guru Аватар для NEO SPECTRUMAN
    Регистрация
    22.05.2011
    Адрес
    г. Дзержинск, Украина
    Сообщений
    6,832
    Спасибо Благодарностей отдано 
    479
    Спасибо Благодарностей получено 
    656
    Поблагодарили
    511 сообщений
    Mentioned
    10 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от barsik Посмотреть сообщение
    25 ГЦ
    но никаой тебе телевизор не покажет меньше чем 50

    и если в телеке мигание будет в небольшом диапазоне яркостей
    и будет еле заметным

    то тут магиние в диапазоне от 0 до максимума
    что очень заметно

    - - - Добавлено - - -

    Цитата Сообщение от barsik Посмотреть сообщение
    Сделать фонт 8*8. Поставить 155 ТМ2 заведя ему на C-вход сигнал КСИ. Прошить дополнительный фонт в ПЗУ фонта.
    еще раз
    перепрограмирование вг75 может произойти как в четном полукадре
    так и не в четном

    твоей поделки на это фиолетово
    и после сброса(или вообще после старта машины) вполне возможно этот недовидеорежим уже работать не будет
    нужно будет ручная синхронизация
    по принципу видите фигзнаетчто
    нажмите кнопку

    Цитата Сообщение от barsik Посмотреть сообщение
    Если кого интересует, давайте "забацаем" такой компьютер.
    я за инт от кси
    и сменный фонт
    и ненадо никакого колхоза

    Цитата Сообщение от barsik Посмотреть сообщение
    дошла сама идея чересстрочной развертки с имитацией двух экранов фонтами "вползнакоместа".
    дык спектрумисты это уже все давно прошли
    вот те пара примеров
    http://vtrd.in/full_ver/OPENS.ZIP
    http://vtrd.in/demo_ver/WORMSWV2.zip

    с таким же успехом ты сейчас изобретешь цвет на псевдо точку
    (потом запилю пример для апогея как это может выглядеть)

    на комоде эту гадость применить намного проще
    там много не сильно отличающихся цветов
    и мигать ими намного безопасней
    Последний раз редактировалось NEO SPECTRUMAN; 01.01.2018 в 17:20.

  11. #10
    Guru
    Регистрация
    07.08.2008
    Адрес
    г. Уфа
    Сообщений
    7,794
    Спасибо Благодарностей отдано 
    639
    Спасибо Благодарностей получено 
    1,770
    Поблагодарили
    1,020 сообщений
    Mentioned
    22 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от NEO SPECTRUMAN Посмотреть сообщение
    цвет на псевдо точку
    (потом запилю пример для апогея как это может выглядеть)
    типа такого?
    Последний раз редактировалось ivagor; 01.01.2018 в 17:32.

Страница 1 из 12 12345 ... ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Расширение ПЗУ РК86
    от barsik в разделе Радио-86РК
    Ответов: 3
    Последнее: 02.12.2017, 00:42
  2. РК86 с статическим ОЗУ
    от Vladimir_S в разделе Новодел
    Ответов: 1
    Последнее: 05.07.2012, 07:15
  3. Платы Радио РК86
    от Павел Рябцов в разделе Барахолка (архив)
    Ответов: 136
    Последнее: 20.01.2012, 14:38
  4. продам корпус рк86
    от oracleua в разделе Барахолка (архив)
    Ответов: 10
    Последнее: 29.01.2011, 00:51

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •