RUЭВМ
Вы хотите отреагировать на этот пост ? Создайте аккаунт всего в несколько кликов или войдите на форум.
Сентябрь 2020
ПнВтСрЧтПтСбВс
 123456
78910111213
14151617181920
21222324252627
282930    

Календарь Календарь

Последние темы
» Тема для вопросов, консультаций и т. д...
автор Atari1974 Вчера в 16:12

» ZX Microdrive
автор barsik Вчера в 02:44

» Флейм только по теме "Радио-86РК".
автор barsik Пн Сен 28 2020, 09:24

» Трансформатор электронный Taschibra 230/12В 60Вт для галогенных ламп. Перестал работать.
автор Viktor2312 Ср Сен 23 2020, 15:05

» Купил с али БП 12в 100w для питания LED лент подсветки. Проблема
автор Viktor2312 Вс Сен 20 2020, 18:07

» Жалобы/пожелания по работе форума
автор Viktor2312 Вс Сен 20 2020, 11:54

» Стабилизированный преобразователь напряжения.
автор Viktor2312 Пн Сен 14 2020, 23:12

» Простые доработки ZX-48К: RAM-монитор в ПЗУ и экран на E000
автор barsik Сб Сен 12 2020, 23:47

» Применение КР580 ВИ53 для генерации музыки
автор Viktor2312 Сб Сен 12 2020, 20:09

» STM32. Статьи, заметки, очерки, разное...
автор Viktor2312 Чт Сен 03 2020, 12:09

» STM32G0. Документация (Datasheet, разное).
автор Viktor2312 Чт Сен 03 2020, 11:52

» Новинки. Книги. Часть 1.
автор Viktor2312 Ср Сен 02 2020, 14:21

» STM32F4. Статьи, заметки, очерки, разное...
автор Viktor2312 Вт Сен 01 2020, 14:44

» Ленинград-0,-1,-2,-3. Статьи, заметки, очерки, разное...
автор barsik Вс Авг 30 2020, 08:32

» Ленинград-0
автор barsik Вс Авг 30 2020, 08:01

» STM32F4. Изучение.
автор Viktor2312 Пт Авг 28 2020, 00:07

» Орион-128: Полезные доработки ПЭВМ
автор barsik Чт Авг 27 2020, 11:21

» STM32H7. Статьи, заметки, очерки, разное...
автор Viktor2312 Вт Авг 25 2020, 10:43

» Радио-86РК: По страницам журнала "Радио" и не только...
автор barsik Вт Авг 25 2020, 01:28

» STM32L0. Документация (Datasheet, разное).
автор Viktor2312 Вс Авг 23 2020, 10:10

» STM32L0. Отладочные платы.
автор Viktor2312 Сб Авг 22 2020, 20:22

» STM32L0. Программное обеспечение, разное...
автор Viktor2312 Сб Авг 22 2020, 17:24

» STM32L0. Статьи, заметки, очерки, разное...
автор Viktor2312 Чт Авг 20 2020, 19:37

» STM32H7. Документация (Datasheet, разное).
автор Admin Чт Авг 20 2020, 13:33

» STM32F7. Документация (Datasheet, разное).
автор Admin Чт Авг 20 2020, 13:32

Самые активные пользователи за месяц
Viktor2312
Настройки ПДП КР580ВГ75 Vote_l10Настройки ПДП КР580ВГ75 Voting10Настройки ПДП КР580ВГ75 Vote_r10 
barsik
Настройки ПДП КР580ВГ75 Vote_l10Настройки ПДП КР580ВГ75 Voting10Настройки ПДП КР580ВГ75 Vote_r10 
Atari1974
Настройки ПДП КР580ВГ75 Vote_l10Настройки ПДП КР580ВГ75 Voting10Настройки ПДП КР580ВГ75 Vote_r10 

Поиск
 
 

Результаты :
 


Rechercher Расширенный поиск


Настройки ПДП КР580ВГ75

Перейти вниз

Настройки ПДП КР580ВГ75 Empty Настройки ПДП КР580ВГ75

Сообщение  Viktor2312 в Вс Янв 22 2017, 14:22

1
Данная тема создана с перспективой на будущее и вообще потому, что такое существует в природе. Я выложу здесь ту информацию, которая мне доступна и как вроде связанна с данной темой. В надежде, что пользователи поправят меня, если что, и дополнят тему в будущей перспективе...
Viktor2312
Viktor2312
Гуру+

Сообщения : 12512
Дата регистрации : 2012-08-10
Возраст : 41
Откуда : Пятигорск

Вернуться к началу Перейти вниз

Настройки ПДП КР580ВГ75 Empty Re: Настройки ПДП КР580ВГ75

Сообщение  Viktor2312 в Вс Янв 22 2017, 14:22

2
резерв.
Viktor2312
Viktor2312
Гуру+

Сообщения : 12512
Дата регистрации : 2012-08-10
Возраст : 41
Откуда : Пятигорск

Вернуться к началу Перейти вниз

Настройки ПДП КР580ВГ75 Empty стандартный видео режим 64*25

Сообщение  barsik в Сб Дек 28 2019, 10:29

3
Режим ВГ75 устанавливает стандартная п/п-мма F82D. Если посмотреть в исходнике ПЗУ РК86 процедуру программирующую видео режим ВГ75, то увидим там:


PUSK_VG:
       PUSH    HL
       LD      HL,VG_75+1
       LD      (HL),0          ; reset commando
       DEC     HL              ; адрес VG_75
       LD      (HL),04DH       ; 0.1001101  77 (77+1 знакомест)

       LD      (HL),01DH       ; 00.011101  29 (29+1 строк)

       LD      (HL),99H        ; 1001.1001  9 9 (9+1 линия подчерк)
                               ; (9+1 линий в знакоместе)

       LD      (HL),93H        ; 1.0.01.0011 счёт линий со смещением
                               ; атрибуты отображать пробелом
                               ; курсор - мигающая линия подчеркивания
                               ; ZZZZ= 3. Т.о 3*2+2= 8 тактов сдвига -
                               ; длина обратного хода луча в строке

       INC     HL              ; адрес VG_75+1
       LD      (HL),27H        ; Start display commando

       LD      A,(HL)          ; read status (зачем-то это надо)
AFAE1: LD      A,(HL)          ; read status
       AND     20H             ; mask 'Interrupt request flag'
       JP      Z,AFAE1         ; ждем конца строки

       LD      HL,VT_57+8
       LD      (HL),80H
       LD      L,4             ; VT_57+04
       LD      (HL),low SA     ; 0D0H
       LD      (HL),high SA    ; 076H
       INC     L               ; адрес VT_57+5
       LD      (HL),23H        ; число байтов
       LD      (HL),49H        ; режим
       LD      L,8             ; VT_57+8
       LD      (HL),0A4H
       POP     HL
       RET
Проанализировав эти числа, записываемые в ВГ75, мы обнаружим, что базовый режим ВГ75 в РК настроен достаточно близко к стандарту телевидения, но всё-же отличается. Стандарт предусматривает частоту строк 15.625 КГЦ (что соответствуе строчному периоду в 64 МКСЕК), частоту кадров 50 ГЦ и длительности ССИ и КСИ 4.7 МКСЕК и 160 МКСЕК соответственно.

Из исходника видим, что на отображение по строке отведено 78 периодов знакомест-клока (8 МГЦ : 6= 1.333 МГЦ), а параметр ZZZZ задающий HRTC (время гашения по строкам) равен 3. В иностранном даташите есть вот такая табличка:

Настройки ПДП КР580ВГ75 ZZZZ.1577513938

Хотя в книге В.Майоров, А.Гаврилов "Практический курс программирования микропроцессорных систем", Машиностроение, 1989, в описании 580 ВГ75 как раз в параметре ZZZZ ошибка. Я много лет пользовался этой мерзкой книгой и никак не мог понять почему расчётная частота строк так сильно отличается (если посчитать частоты по этой гадкой книге, то частота строк получается 16.26 КГЦ). И только недавно заглянув во вражеский даташит обнаружил расхождение и понял в чём дело.

Строчный период длится 78+8= 86 периодов знакомест-клока (это 1.333 МГЦ) и получается равным 86*(1/1.333)= 64.5 МКСЕК (а надо 64 МКСЕК) и соответственно заниженную частоту строк в 15.504 КГЦ вместо 15.625. Длительность ССИ=HRTC - тоже не в стандарте. Это в РК 8 периодов частоты 1.3333 МГЦ, т.е 6 МКСЕК, вместо требуемых стандартом 4.7 МКСЕК.

Число линий растра в РК - 310, т.к режимом задано 30 строк и еще одна строка отведена на обратный ход луча. Т.о при высоте знакоместа в 10 линий, получаем 31*10= 310 линий (в стандарте 312.5). Таким образом и кадровый период получается не тем, равным 310*64.5= 19.840 МСЕК (вместо требуемых 20 МСЕК), что даёт частоту кадров 50.4 ГЦ вместо требуемых 50 ГЦ.

КСИ в РК длится, вместо требуемых стандартом 160 МКСЕК, целых 64*10= 640 МКСЕК. Это кстати, нисколько не вредит синхронизации.

Вообще-то сама ВГ75 не формирует ни КСИ ни ССИ, а только VRTC и HRTC - кадровый и строчный бланки (сигналы гашения на время обратного хода луча). Очевидно, т.к для каждой системы и разных частот пиксель клока нужны свои положения и длительности ССИ и КСИ, разработчики i8275 оставили эту задачу для прикладных инженеров.

Для получения ССИ и ССИ достаточно двух 155 АГ3 (74123), в каждом из которых два прецизионных одновибратора. Первый одновибратор запускаем по заднему фронту HRTC/VRTC и его время вибрации задаёт временнОе смещение до начала импульса ССИ/КСИ. А второй одновибратор запускается по окончанию вибрации первого одновибратора и задаёт длительность самогО импульса ССИ/КСИ. Но авторы РК86 использовали сигналы с выходов HRTC и VRTC нетрадиционно - в качестве самих ССИ / КСИ. Потому поменять длительности и положение этих импульсов в РК86 ни программно, ни аппаратно нельзя (если только с помощью "химии").

PS. PUSH-POP-ы для HL стоящие на входе/выходе этой подпрограммы установки режима были нужны лишь потому, что эта п/п-мма в ПЗУ РК входит в процедуру загрузки блока с МГ-ленты. В прикладной программе это не надо.
barsik
barsik
Мастер++

Сообщения : 701
Дата регистрации : 2016-11-10
Откуда : С-Петербург

Вернуться к началу Перейти вниз

Настройки ПДП КР580ВГ75 Empty псевдографический режим

Сообщение  barsik в Сб Янв 04 2020, 15:09

4
В начальные годы популярности РК86 начинающие любители программирования ещё не разобрались в том, как перепрограммировать режим ВГ75, а информации об этом сдуру в журнале Радио не опубликовали. Потому ранние РК-игры работали в режиме 64*25. В таком режиме при использовании псевдографики, между рядами знакомест по вертикали остаётся разрыв в 2 линии растра. Но с 1989 года стали появляться РК-игры использующие псевдографику без разрывов между рядами знакомест. Для того, чтобы этого добиться нужно запрограммировать режим ВГ75 так, чтобы задать высоту знакоместа в 8 точек или линий растра. Вот как делается правильная инициализация ВГ75 для псевдографики (это реальный, хотя и не самый оптимальный по объёму код, взятый из одной РК-игры):


P_VG75: LD      A,0                     ; команда формат экрана
        LD      (0C001H),A
        LD      A,4DH                   ; 77 --> т.е 78 колонок
        LD      (0C000H),A
        LD      A,25H                   ; 37+1 строк (т.е всего 39 строк)
        LD      (0C000H),A
        LD      A,77H                   ; 8 линий в знакоместе, 8 подчёркив-е
        LD      (0C000H),A
        LD      A,53H                   ; 0101.0011
        LD      (0C000H),A
        LD      A,27H                   ; команда начало отображения
        LD      (0C001H),A

        LD      A,(0C001H)              ; это зачем-то надо
WAIT:   LD      A,(0C001H)
        AND     20H                     ; ждём бит запрос на прерывание
        JP      Z,WAIT

        LD      A,80H
        LD      (0E008H),A              ; E000 - адрес ПДП ВТ57
        LD      A,0
        LD      (0E004H),A              ; начальный адрес экрана 4000H
        LD      A,40H
        LD      (0E004H),A
        LD      A,93H                   ; режим
        LD      (0E005H),A
        LD      A,4BH                   ; число байтов
        LD      (0E005H),A
        LD      A,0A4H
        LD      (0E008H),A
        RET



Здесь ВГ75 программируется на 38 строк высотой в 8 линий растра. Ещё одна строка задана на обратный ход луча по кадрам, что даёт общее число строк в 39. Общее число линий растра при этом: 39*8= 312, что как раз соответствует стандарту телевидения. Из общего числа в 39 строк видимыми являются 30 строк (редко используют вывод на 31 строку), остальные строки образуют программный бордюр.

Т.к 38 строк с символами занимают в ОЗУ намного больший объём, чем 30 строк стандартного режима, то экранный буфер не умещается в отведённое для него место 76D0...7FFF. Ниже 76D0 расширять экранный буфер нельзя, т.к ниже расположены рабочие ячейки ROM-BIOS. Потому экран в таком режиме программно переносят ниже 7500, в данном фрагменте на 4000. Стандартная подпрограмма вывода символов F809 выводит только на экран 76D0, потому символы в этом режиме можно выводить только прямой записью в экранное ОЗУ самим процессором.
barsik
barsik
Мастер++

Сообщения : 701
Дата регистрации : 2016-11-10
Откуда : С-Петербург

Вернуться к началу Перейти вниз

Настройки ПДП КР580ВГ75 Empty Re: Настройки ПДП КР580ВГ75

Сообщение  Спонсируемый контент

5

Спонсируемый контент


Вернуться к началу Перейти вниз

Вернуться к началу


 
Права доступа к этому форуму:
Вы не можете отвечать на сообщения