RUЭВМ
Вы хотите отреагировать на этот пост ? Создайте аккаунт всего в несколько кликов или войдите на форум.
Март 2021
ПнВтСрЧтПтСбВс
1234567
891011121314
15161718192021
22232425262728
293031    

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

Последние темы
» Анонсы монет.
автор Viktor2312 Вчера в 14:30

» Team Red Miner
автор Viktor2312 Вс Фев 28 2021, 17:43

» Пул. beepool
автор Viktor2312 Вс Фев 28 2021, 15:16

» Пул. 2miners
автор Viktor2312 Вс Фев 28 2021, 15:06

» Пул. 0769.it
автор Viktor2312 Вс Фев 28 2021, 14:56

» T-Rex
автор Viktor2312 Вс Фев 28 2021, 14:41

» SRBMiner
автор Viktor2312 Вс Фев 28 2021, 13:53

» PhoenixMiner
автор Viktor2312 Вс Фев 28 2021, 13:26

» NPlusMiner
автор Viktor2312 Вс Фев 28 2021, 13:14

» NiceHash-Miner-Legacy-Fork-Fix
автор Viktor2312 Вс Фев 28 2021, 13:02

» NiceHash-miner
автор Viktor2312 Вс Фев 28 2021, 12:53

» NBMiner
автор Viktor2312 Вс Фев 28 2021, 12:42

» Nanominer
автор Viktor2312 Вс Фев 28 2021, 12:23

» MindMiner
автор Viktor2312 Вс Фев 28 2021, 12:03

» miniZ
автор Viktor2312 Вс Фев 28 2021, 11:32

» lolMiner
автор Viktor2312 Вс Фев 28 2021, 11:01

» KBMiner
автор Viktor2312 Вс Фев 28 2021, 10:58

» Hash Auger
автор Viktor2312 Вс Фев 28 2021, 10:33

» Пул. newpool.pw
автор Atari1974 Вс Фев 28 2021, 10:05

» GMiner
автор Viktor2312 Вс Фев 28 2021, 00:30

» EWBF
автор Viktor2312 Вс Фев 28 2021, 00:28

» Ethminer
автор Viktor2312 Сб Фев 27 2021, 19:57

» Ищу файл печатной платы
автор freddy Пт Фев 26 2021, 14:01

» Языки программирования. Статьи, заметки, очерки, разное...
автор Viktor2312 Чт Фев 25 2021, 19:52

» CryptoDredge
автор Viktor2312 Чт Фев 25 2021, 18:30

Самые активные пользователи за месяц
Viktor2312
Настройки ПДП КР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
Гуру+

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

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

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

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

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

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

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

Настройки ПДП КР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         ; ждем прерывания по VRTC

       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 (Ср Янв 06 2021, 19:52), всего редактировалось 1 раз(а)
barsik
barsik
Ветеран

Сообщения : 1149
Дата регистрации : 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                     ; ждём бит запроса на прерывание по VRTC
        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 (Ср Янв 06 2021, 19:48), всего редактировалось 1 раз(а)
barsik
barsik
Ветеран

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

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

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

Сообщение  ведущий_специалист Ср Янв 06 2021, 16:10

5
Интересно было бы видеть информацию по ВТ57. Думаю можно и в эту тему, так как они работают в РК вместе.
ведущий_специалист
ведущий_специалист
Мастер+

Сообщения : 281
Дата регистрации : 2020-10-16
Откуда : Санкт Петербург

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

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

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

6

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


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

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


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