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

User Tag List

Страница 38 из 85 ПерваяПервая ... 343536373839404142 ... ПоследняяПоследняя
Показано с 371 по 380 из 849

Тема: Пожелания и планы по эмулятору Башкирия-2М

  1. #371

    Регистрация
    16.09.2009
    Адрес
    г. Харьков
    Сообщений
    1,466
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    16
    Поблагодарили
    12 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от b2m Посмотреть сообщение
    Нет, это учитывается: CALL - 17, RST - 11


    А я думал, что я просто не успеваю сделать то, что надо. А как должно быть по-нормальному?
    в моем - работает

    там курсором водиш
    пробел+курсор - воворачивать зеркала

  2. #372

    Регистрация
    16.09.2009
    Адрес
    г. Харьков
    Сообщений
    1,466
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    16
    Поблагодарили
    12 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    кстате о растактовке корвета
    из документации

    частота кадровой похоже
    49.8166746373346

    20мгц/16=1.25мгц
    1.25мгц/164=7.62кгц
    7.62кгц/153=49.8166746373346

    ~hbl = 1(64T=51.2мкс)0(18T=14.1мкс)
    ~vbl = 0(25T)1(128T)

    и еще цитата

    "при обращении МП к УВВ формируется один такт ожидания"
    УВВ это все бисы

    и еще похоже (но не уверен) что при форимровании CALL от контроллера прерываний на каждый байт добавляем по такту ожидания ....
    может это что-то объяснит ?

  3. #373

    Регистрация
    24.01.2008
    Адрес
    Уфа
    Сообщений
    3,926
    Спасибо Благодарностей отдано 
    105
    Спасибо Благодарностей получено 
    291
    Поблагодарили
    217 сообщений
    Mentioned
    10 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от esl Посмотреть сообщение
    кстате о растактовке корвета
    из документации

    частота кадровой похоже
    49.8166746373346

    20мгц/16=1.25мгц
    1.25мгц/164=7.62кгц
    7.62кгц/153=49.8166746373346

    ~hbl = 1(64T=51.2мкс)0(18T=14.1мкс)
    ~vbl = 0(25T)1(128T)
    Ну в принципе, и у меня почти также, только я считаю по-другому, исходя из тактовой частоты процессора:
    2.5МГц / 164 / 306 = 49.8166...Гц

    Насчёт hbl они где-то общитались: 51.2+14.1=65.3мкс, а если по тактам посчитать 164/2.5Мгц = 65.6мкс

    А, понял, 18Т=14.4мкс

    А насчёт vbl я вообще не понял, почему они считают в половину меньше, стандартная ТВ развёртка 625 чересстрочная, то есть в кадре 312,5 строк, с учётом Корветовской развёртки 306, а у них только 153...


    Цитата Сообщение от esl Посмотреть сообщение
    и еще цитата

    "при обращении МП к УВВ формируется один такт ожидания"
    УВВ это все бисы

    и еще похоже (но не уверен) что при форимровании CALL от контроллера прерываний на каждый байт добавляем по такту ожидания ....
    может это что-то объяснит ?
    Один такт ожидания при обращении к УВВ - это только +1 такт в тесте, т.к. там только одна команда обращения к PIC. Насчёт такта ожидания при формировании CALL я сомневаюсь.

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

    ---------- Post added at 13:26 ---------- Previous post was at 13:13 ----------

    Если порассуждать про команду HLT, то получится следующее.
    Циклы МП могут быть 3,4 и 5 тактов. Первый цикл М1 - всегда 4 такта (я так думаю), по документации HLT выполняется за 7 тактов (минимум), т.е. это 4 такта цикла M1 и скорее всего 3 такта цикла ожидания прерывания. Если в начале цикла ожидания обнаруживается запрос на прерывание, то происходит выход из HLT за те-же 3 такта. Однако собственно запрос может возникнуть и на 1-2 такта раньше. Получается на выход из HLT потратится 4-5 тактов. Плюс один такт на обращение к УВВ описанный выше. Итого 5-6 тактов, что подтверждается результатами теста: я пробовал укорачивать размер кадра на 5 тактов, а не на 6 - результат не изменился.
    Последний раз редактировалось b2m; 09.04.2010 в 12:17.

  4. #374

    Регистрация
    16.09.2009
    Адрес
    г. Харьков
    Сообщений
    1,466
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    16
    Поблагодарили
    12 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    еще про корвет, нашел ответ Скурихина на вопрос по таймеру

    =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
    From: A.Skurikhin <sk@------->
    To: Sergey Erokhin <esl@-----.--->
    Date: Wednesday, May 21, 2003, 1:51:27 PM
    Subject: PK8020, новая версия winbeta1
    Files: <нет>
    --====----====----====----====----====----====----====----====----====----===--
    > какая точно частота подавалась на вход 2-го канала корвета ?

    Сколько помню, есть две модификации Корвета. В исходной версии подвалось
    50гц (VBL). Но очень быстро выяснилось, что для практических применений
    гораздо лучше иметь на входе таймера строчную частоту(64мкс), а
    веритикальный синхронизирующий импульс подавать на вход управления этого же
    таймера. Такая схема позволяет настроить таймер в режим, когда по сигналу
    вертикального синхроимпульса таймер сбрасывается, затем отсчитывает заданное
    количество строк и генерит прерывание.
    Используя эту технологию, можно обеспечить "гладкий" вывод на экран.

  5. #375

    Регистрация
    24.01.2008
    Адрес
    Уфа
    Сообщений
    3,926
    Спасибо Благодарностей отдано 
    105
    Спасибо Благодарностей получено 
    291
    Поблагодарили
    217 сообщений
    Mentioned
    10 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от esl Посмотреть сообщение
    еще про корвет, нашел ответ Скурихина на вопрос по таймеру
    Спасибо. Хотя это мы уже выяснили

  6. #376

    Регистрация
    16.09.2009
    Адрес
    г. Харьков
    Сообщений
    1,466
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    16
    Поблагодарили
    12 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    уточнение

    ~vbl = 0(25T1)1(128T1)
    период Т1 = 164Т = 131.2 мксек

    и цитата из Технического описания

    Нам осталось разобраться с обработкой прерываний, т.е. с сигналом INTA. При формировании контроллером прерываний D8(12.4) сигнала INT процессор заканчивает выполнение команды и начинает выполнять трехбайтную команду "CALL", которую он принимает из контроллера прерываний, при условии, что прерывания разрешены командой "EI".
    Как это делается? Попробуем разобраться без наглядной иллюстрации. В первом цикле процессор выполняет цикл М10, который отличается от М1 наличием единицы в разряде D0 шины данных. Кроме этого вводится такт ожидания, потому при обращении к контроллеру прерываний вырабатывается сигнал CSDEV. Положительным фронтом сигнала на тактовом входе С триггера D15 (3.25) единица в D0 устанавливает выход триггера D15 (5 ножка) в единицу. На рисунке 5 сигнал на тактовом входе D15 показан.
    Изменить состояние D15 теперь можно двумя способами. Первый: с приходом следующего положительного перепада на тактовый вход сигнал на линии D0 должен низкий уровень. Но такая ситуация может наступить после выполнения полностью команды "CALL". Второй способ: подать на вход R (RESET) сигнал низкого уровня. Из рисунка 5 видно, что это возможно при выполнении цикла записи (М3 или М5).
    Итак, триггер D15 находится в состоянии единица. Сигнал высокого уровня с выхода триггера поступает на дешифратор адресов, запрещая его работу, и на микросхему D18 (3.27) - И. Поэтому сигнал INTA будет инвертированным сигналом DBIN. Сигнал INTA выбирает контроллер прерываний и в цикле М10 в процессор вводится код команды CALL из контроллера.
    Команда "CALL" выполняется за пять машинных циклов, из которых первые три связаны с вводом команды в процессор, а два последних с записью в стек текущего адреса прерванной команды. Первый цикл (М10), мы уже разобрали. Затем выполняется два раза подряд цикл М8, отличающийся от М2 только единицей в разряде D0 шины данных. В первом цикле М8 читается младший байт адреса, а во втором цикле М8 - старший байт адреса перехода на программу обработки прерываний. В конце цикла М8 будет вырабатываться сигнал INTA, который и обеспечивает чтение из контроллера.
    В четвертом и пятом циклах будет выполняться цикл М5, обеспечивающий запись в стек старшего и младшего байта адреса прерванной программы. Отрицательный сигнал с выхода регистра D27 (3.26) сбросит триггер D15 в нуль. Поэтому в четвертом и пятом циклах команды CALL сигнал INTA формироваться не будет.


    При обращении к УВВ низкий уровень сигнала CSDEV появляется на выходе D24 и процессор переходит в режим ожидания, устанавливая на выходе WI сигнал WAIT высокого уровня.
    ---------- Post added at 13:06 ---------- Previous post was at 13:05 ----------

    Цитата Сообщение от b2m Посмотреть сообщение
    Спасибо. Хотя это мы уже выяснили
    во первых обещался, во вторых информация от авторов вполне интересна сама по себе
    Последний раз редактировалось esl; 09.04.2010 в 15:32.

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

  8. #377

    Регистрация
    16.09.2009
    Адрес
    г. Харьков
    Сообщений
    1,466
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    16
    Поблагодарили
    12 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Запустил тест на реале
    sta/lda
    0DFA - при записи в регистры БИС
    0F0D - при записи в обычную память

    добавил в TestDataInit еще один sta
    mvi a,020h
    sta 0FB28h
    sta 0FB28h
    ei
    стало

    0DF9 - при записи в регистры БИС
    0F0С - при записи в обычную память

    а для
    nop

    1x 30e7
    2x 30e7
    3x 30e3

    соответсвенно 1,2,3 sta


    есть предложение
    по результатам ваших коллективных эксперементов над процом
    вышли мне детали, а я сведу в табличку, чтоб осталось в доступе
    Последний раз редактировалось esl; 10.04.2010 в 02:25.

  9. #378

    Регистрация
    07.08.2008
    Адрес
    г. Уфа
    Сообщений
    8,392
    Спасибо Благодарностей отдано 
    763
    Спасибо Благодарностей получено 
    2,367
    Поблагодарили
    1,317 сообщений
    Mentioned
    39 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    esl, интересно бы еще потестировать быстродействие записи в графическое и символьное ВидеоОЗУ и чтения оттуда (если в документации или еще где не написано, например, что доступ полностью прозрачный).
    Последний раз редактировалось ivagor; 10.04.2010 в 15:50.

  10. #379

    Регистрация
    16.09.2009
    Адрес
    г. Харьков
    Сообщений
    1,466
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    16
    Поблагодарили
    12 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от ivagor Посмотреть сообщение
    esl, интересно бы еще потестировать быстродействие записи в графическое и символьное ВидеоОЗУ и чтения оттуда (если в документации или еще где не написано, например, что доступ полностью прозрачный).
    запись/чтение в ACZU и область клавиатуры и LUT совпадает с обычной памятью
    это я проверял

    судя по описанию в VRAM не должно быть торможения
    но проверить надо бы конечно, но эт не скоро
    надо тест переписать и опять железку достать ....

    кстати, прогнал сегодня на корвете 8080 CPU Exerciser (KR580VM80A)
    с вполне ожидаемым OK :)
    какой точно стоит проц - не знаю, он под радиатором ...

    а в доке вот что

    Рассмотрим теперь сигнал 1READY, который через разъем XS3 поступает на вход RA (готовность) процессора. Он формируется на выходе микросхемы D24 (ИЛИ). На вход D24 подаются два сигнала CSDEV и WAIT. CSDEV - это сигнал обращения к УВВ (при обращении он имеет низкий уровень). Когда обращения к УВВ нет, то на выходе 1READY сигнал высокого уровня и процессор, анализируя этот сигнал в такте Т2, не переходит в режим ожидания. При обращении к УВВ низкий уровень сигнала CSOEV появляется на выходе D24 и процессор переходит в режим ожидания, устанавливая на выходе WI сигнал WAIT высокого уровня. Сигнал WAITЕ формирует сигнал 1READY высокого уровня, поэтому, пропустив после такта Т2 один такт - такт ожидания, процессор продолжает работу с выполнения такта Т3. Таким образом при обращении к УВВ процессор автоматически вставляет один такт ожидания между тактами Т2 и Т3. Эта хитрость применена для надежного обращения к УВВ. На рисунке 5 такт ожидания не показан. Заметим только, что в случае появления такта ожидания сигнал DBIN автоматически расширяется до 800 нсек.


    ---------- Post added at 15:30 ---------- Previous post was at 15:26 ----------

    Цитата Сообщение от ivagor Посмотреть сообщение
    esl, интересно бы еще потестировать быстродействие записи в графическое и символьное ВидеоОЗУ и чтения оттуда (если в документации или еще где не написано, например, что доступ полностью прозрачный).
    кстати, могу выполнить любые ваши тесты :)

    Код:
    tasm -b -85 vst.asm
    @copy vst.obj A.COM
    @xkorvet d disk.kdi A.COM >nul
    @xkorvet a disk.kdi A.COM >nul
    эт батник, компилит ваш тест и сразу пишет на диск для эмулятора :)

  11. #380

    Регистрация
    07.08.2008
    Адрес
    г. Уфа
    Сообщений
    8,392
    Спасибо Благодарностей отдано 
    763
    Спасибо Благодарностей получено 
    2,367
    Поблагодарили
    1,317 сообщений
    Mentioned
    39 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    esl, если я правильно понимаю, "ширина" активной области изображения корвета 51,2 мкс, а большинство ТВ отображают максимум примерно 48 мкс. Старые ТВ и мониторы имели регулировки развертки, которыми (почти всегда) можно было сжать изображение. Была (есть) проблема с обрезанием краев изображения корвета? Как было на старых мониторах, есть ли опыт подключения к новым ТВ (у которых нужных регулировок, как правило, нет)?
    Сам я сидел за реальным корветом буквально несколько минут, про края изображения ничего не помню.

Страница 38 из 85 ПерваяПервая ... 343536373839404142 ... ПоследняяПоследняя

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

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

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

Похожие темы

  1. Ответов: 1034
    Последнее: 29.10.2021, 07:15
  2. Жалобы/пожелания по работе форума
    от Conan в разделе Форум
    Ответов: 6289
    Последнее: 14.03.2021, 00:19
  3. пожелания создателям эмуляторов
    от проф в разделе Эмуляторы
    Ответов: 24
    Последнее: 09.02.2007, 01:31
  4. Пожелания по сервисам форума
    от andrews в разделе Форум
    Ответов: 10
    Последнее: 14.08.2006, 13:47

Ваши права

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