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

User Tag List

Страница 59 из 61 ПерваяПервая ... 55565758596061 ПоследняяПоследняя
Показано с 581 по 590 из 602

Тема: ПК8000 - Общие вопросы

  1. #581

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

    По умолчанию

    Цитата Сообщение от cy6 Посмотреть сообщение
    Как я понимаю, оба в режиме 1. Порт В и младшая тетрада порта С. Верно?
    ВВ55 позволяет задавать разные режимы только для портов A (режимы 0-2) и B (режимы 0 или 1), для C можно задать направление обмена, зато раздельно для младшей и старшей половины.

    Что касается деталей обмена разных версий ПК8000 с принтером, то я в них не вникал, только запомнил для себя, что в 1.2 изменили вывод на принтер и соответствующие процедуры там другие. b2m разбирался, насколько помню он писал на форуме и в конфигах у него есть соответствующие различия. В частности C7 для 1.2 у него
    portC[7]=prn.~strobe
    и при печати символа на принтере в пзу 1.2 этим битом щелкают
    Код:
    RAM:22C1                 out     85h
    RAM:22C3                 in      86h
    RAM:22C5                 ani     7Fh
    RAM:22C7                 out     86h
    RAM:22C9                 ori     80h
    RAM:22CB                 out     86h
    RAM:22CD                 ret
    А в 1.1 всего лишь
    Код:
    RAM:229E                 out     85h
    RAM:22A0                 ret
    - - - Добавлено - - -

    Если что вывод на принтер в 1.0 по адресу
    017С out 85h

    Этот пользователь поблагодарил ivagor за это полезное сообщение:

    cy6(21.02.2023)

  2. #582

    Регистрация
    27.04.2015
    Адрес
    г. Пенза
    Сообщений
    500
    Спасибо Благодарностей отдано 
    334
    Спасибо Благодарностей получено 
    90
    Поблагодарили
    59 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от ivagor Посмотреть сообщение
    b2m разбирался, насколько помню он писал на форуме и в конфигах у него есть соответствующие различия. В частности C7 для 1.2 у него
    portC[7]=prn.~strobe
    и при печати символа на принтере в пзу 1.2 этим битом щелкают
    Есть одна маленькая проблемка, на схемах от Mick'а порт C7 никуда не запаян, судя по всему.
    Нажмите на изображение для увеличения. 

Название:	Sura-Mick-DD32.jpg 
Просмотров:	342 
Размер:	62.1 Кб 
ID:	78511

    На родных схемах намного хуже. Порты С1 и С7 закорочены, и обозначены на разъеме принтера как STR(obe).
    Нажмите на изображение для увеличения. 

Название:	Sura-book4-DD32.jpg 
Просмотров:	344 
Размер:	71.0 Кб 
ID:	78512
    wtf

  3. #583

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

    По умолчанию

    Цитата Сообщение от cy6 Посмотреть сообщение
    Порты С1 и С7 закорочены, и обозначены на разъеме принтера как STR(obe).
    Я бы сказал что они запараллелены.
    В emu:
    для 1.1 - portC[1]=prn.strobe (в режиме 1 С1 это как раз /OBF - строб вывода новых данных)
    для 1.2 - portC[7]=prn.~strobe

  4. #584

    Регистрация
    27.04.2015
    Адрес
    г. Пенза
    Сообщений
    500
    Спасибо Благодарностей отдано 
    334
    Спасибо Благодарностей получено 
    90
    Поблагодарили
    59 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    По блоку начального запуска, интересный момент.

    Сигнал выбора чипов DD32 и DD33 (порты в/в), CS84/ и CS80/ соответственно, формируются без относительно обращения именно к портам.
    То есть по прямому адресу, как на Радио-86РК.

    Нажмите на изображение для увеличения. 

Название:	Sura-Mick-DD21.jpg 
Просмотров:	338 
Размер:	51.3 Кб 
ID:	78513

    Следовательно, при написании своих прошивок и тестов (!) надо учесть этот момент.

    Блок начального запуска выбирает ПЗУ принудительно, после сброса
    и до появления в младшем байте шины адреса шаблона типа 100000хх (80h..83h).

    То есть, любые адреса в ПЗУ типа 0080, 1081, 2А83 и так далее, приведут к загрузке следующей команды уже не с чипа ПЗУ,
    если вы вдруг еще не инициализировали чип DD33 на правильную карту памяти.

    Возникает вопрос, всегда ли выбираются указанные чипы, на младших адресах памяти?
    Судя по всему да. Но от неверного чтения и записи их спасают уже нормальные сигналы IORD/ => RD/ и IOWR/ => WR/

    Этот же вопрос скорее всего будет важен при ремонте, когда не понятно почему не выбирается ПЗУ.
    wtf

  5. #585

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

    По умолчанию

    Цитата Сообщение от cy6 Посмотреть сообщение
    То есть, любые адреса в ПЗУ типа 0080, 1081, 2А83 и так далее, приведут к загрузке следующей команды уже не с чипа ПЗУ,
    если вы вдруг еще не инициализировали чип DD33 на правильную карту памяти.
    По ресету все регистры ВВ55 обнуляются, соответственно все порты ВВ55 будут настроены на вывод и в 80h будет 0. Т.е. если программа не задаст другое значение порта 80h, то все адресное пространство будет пзу.

  6. #586

    Регистрация
    27.04.2015
    Адрес
    г. Пенза
    Сообщений
    500
    Спасибо Благодарностей отдано 
    334
    Спасибо Благодарностей получено 
    90
    Поблагодарили
    59 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    ivagor, схема запуска состоит из триггера DD5.1 и мультиплексора DD34.

    После сброса, ВВ55 ничего не может выводить полезного, для выбора ПЗУ, так как она отключена триггером и мультиплексором от такой возможности.
    Состояние после-сбросовой "отключки" отменяется только после появления сигнала CS80/
    Как он появляется, я запостила схему выше.

    Также, после сброса ВВ55 не может быть настроена на вывод, это послужило бы причиной множество КЗ и соответствующих бедствий.
    Смотрим книгу Домашний компьютер/Зеленко Г. В., Панов В. В.,. Попов С. Н.- М.: Радио и связь, 1989.-144 с.: ил.-. (Массовая радиобиблиотека; Вып. 1139),
    страница 123.

    При начальном запуске из микроЭВМ на соответствующий вход ППА должен быть подан сигнал "Сброс" (RESET).
    По этому сигналу все порты ППА настраиваются на выполнение операций ввода в режиме 0 и их разряды обнуляются.
    То есть, следуя логике "обнуления" ППА, после любого обращения к адресам, похожими на адрес порта (появление сигнала CS80/), мы должны увидеть ПЗУ, которое четыре раза отображено в адресное пространство (16кб x 4).
    Так как карта памяти будет заполнена нулями.
    То есть, мы к ОЗУ доступ теряем, а не к ПЗУ как я подумала сначала.
    А схема запуска выходит делает тоже самое (множит ПЗУ), только без участия ВВ55.
    Интересно было бы это проверить вживую.

    Цитата Сообщение от ivagor Посмотреть сообщение
    По ресету все регистры ВВ55 обнуляются, соответственно все порты ВВ55 будут настроены на вывод и в 80h будет 0. Т.е. если программа не задаст другое значение порта 80h, то все адресное пространство будет пзу.
    Что по сути, Вы и сказали, кроме режима на ввод, а не на вывод.
    wtf

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

  8. #587

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

    По умолчанию

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

    Этот пользователь поблагодарил ivagor за это полезное сообщение:

    cy6(22.02.2023)

  9. #588

    Регистрация
    14.06.2005
    Адрес
    г. Калуга
    Сообщений
    10,141
    Спасибо Благодарностей отдано 
    216
    Спасибо Благодарностей получено 
    769
    Поблагодарили
    417 сообщений
    Mentioned
    23 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от cy6 Посмотреть сообщение
    Есть одна маленькая проблемка, на схемах от Mick'а порт C7 никуда не запаян, судя по всему.
    Я при отрисовки ориентировался на плату. На плате C7 и C6 никуда не идут.
    Возможно в других более ранних версиях было иначе
    Сайт поддержки моих изделий - http://micklab.ru/
    Группа ВКонтакте - https://vk.com/micklab

  10. #589

    Регистрация
    27.04.2015
    Адрес
    г. Пенза
    Сообщений
    500
    Спасибо Благодарностей отдано 
    334
    Спасибо Благодарностей получено 
    90
    Поблагодарили
    59 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Mick, я имела ввиду что проблема не в схеме.
    А в трактовке того, как работает печать на принтер.

    Заводские схемы нечитаемые, для меня лично, вызывают замыкание мозга и зрения очень быстро.
    Прекрасно, есть есть альтернативы.
    wtf

  11. #590

    Регистрация
    27.04.2015
    Адрес
    г. Пенза
    Сообщений
    500
    Спасибо Благодарностей отдано 
    334
    Спасибо Благодарностей получено 
    90
    Поблагодарили
    59 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от cy6 Посмотреть сообщение
    То есть, следуя логике "обнуления" ППА, после любого обращения к адресам, похожими на адрес порта (появление сигнала CS80/), мы должны увидеть ПЗУ, которое четыре раза отображено в адресное пространство (16кб x 4).
    Так как карта памяти будет заполнена нулями.
    То есть, мы к ОЗУ доступ теряем, а не к ПЗУ как я подумала сначала.
    А схема запуска выходит делает тоже самое (множит ПЗУ), только без участия ВВ55.
    Интересно было бы это проверить вживую.
    И все таки, это неверно!

    Логика обнуления не выводит ничего наружу (пусть нули и есть, где то внутри самой ППА), так как выводы настроены на ввод.
    Для внешнего, мира они Hi-Z, что скорее всего воспринимается как "1".
    Следовательно, неинициализированная DD33, показывает для внешнего мира в карте памяти биты Hi-Z (интерпретированные как "1"), что соответствует ОЗУ во всем адресном пространстве.

    Но схема начального запуска отключает эту карту, до появления на ША A7=1 и A4=A3=A2=0.
    При появлении на ША описанной комбинации, формируется сигнал /CS80, отключающий схему начального запуска.
    И, как следствие, включающий карту памяти, которая располагает ОЗУ на всем адресном пространстве.

    Для нас является полезным то, что нужно успеть инициализировать DD33 в первые 128 байт ПЗУ (0..007Fh).
    Или в "других" 128 байт, избегая младших адресов на 80h, как это сделано в оригинальной ПЗУ с бейсиком.
    Если этого не сделать, то произойдет "потеря ПЗУ" и выборка только из ОЗУ.
    Данное явление, я уже заметила при снятии сигналов с "физики".

    Кардиограмма



    Теперь ясно, почему не работал мой первый дурацкий тест.
    В ПЗУ 2048 байт была записана повторяющаяся комбинация "F3 AA F3 55". А в конце 2048 байт стоял "JMP" на начало.
    Но выполнялись только первые 128 байт и все.
    Последний раз редактировалось cy6; 07.03.2023 в 22:30.
    wtf

Страница 59 из 61 ПерваяПервая ... 55565758596061 ПоследняяПоследняя

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

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

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

Похожие темы

  1. Вектор-06Ц: Общие вопросы
    от CityAceE в разделе Вектор
    Ответов: 867
    Последнее: 17.10.2025, 18:38
  2. Корвет: Общие вопросы
    от DATAsoft в разделе Корвет
    Ответов: 248
    Последнее: 14.10.2025, 00:32
  3. Вопросы и ответы
    от Addison в разделе ZX Концепции
    Ответов: 31
    Последнее: 28.11.2007, 11:35
  4. вопросы по Amiga?
    от volton в разделе Amiga
    Ответов: 2
    Последнее: 07.07.2007, 23:49

Ваши права

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