User Tag List

Показано с 201 по 210 из 311

Тема: РАДИО-86РК на Z80

Древовидный режим

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #10

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

    По умолчанию

    Цитата Сообщение от Vladimir_S
    Принтер здесь ни причем и ошибки никакой нет
    Это ошибка. Хотя-бы потому, что если Вы правы, то директива R, должна сама по окончанию загрузки делать отключение чип-селектов ПЗУ ROM-диска, если это действительно надо.

    Ну а зачем, кстати, это надо? В ОРИОНЕ ROM-диск активен всегда, чип-селект на нуле, никто не жаловался. А доп.ППА это общее устройство и оно может использоваться по любому. И в частности, для выбора режимов железа. Поэтому, кидать в доп.ППА какие-то байты по WARM BOOT это явная ошибка. А в данном случае, я думаю, что речь идёт именно о принтере, не о ROM-диске, которому это просто не надо.

    Кстати, в ПЗУ РК86 есть ещё одна, более серъёзная ошибка. Если однобуквенная команда не найдена, то делается переход на F000. Не знаю, что там стояло у авторов РК86, но у остальных многих тысяч пользователей на F000 ничего не было. И это приводит к улёту программы. Поэтому, еще в 1988 я эту ошибку исправил, переадресовав переход на вход ERROR. Для доступа к XT-ROM на F000 есть директива U, а для расширения директив должен быть вектор (как в ленинградском мониторе СПЕЦИАЛИСТА и М3 ОРИОНА)

    Посмотрел Вашу адресацию в области 8000...83FF. Такая адресация несовместима с другими - базовыми РК86. У меня в реальном РК86 тоже одно время использовалась адресация в области 8000...83FF, причём у меня это было сделано совместимо с программами.

    Когда это делается только для себя, то можно использовать область 8000...83FF для подключения В/У. Это не вызывает проблем на одном компьютере. Но в данном случае, мы на форуме, и тут надо учитывать интересы других пользователей РК, т.е проблемы совместимости с базовым РК86. Совместимость - это аксиома.

    Кстати, Ваша схема установки Z80 неудобна и для Вас. Если бы Вы поставили на старшую шину адреса две КП11, с целью вывода при командах IN/OUT на адреса A8...A15 младших адресов по схеме ОРИОН-СЕРВИС, то Вам не пришлось бы переделывать много игр и РК-ДОС работала бы без переделок (в RK-DOS всё сделано на командах IN/OUT). Когда я буду ставить Z80 именно так и сделаю, т.к совместимость мне важна.

    Из альтруизма разумно ставить В/У в области F000...F7FF, а не в области клавиатуры. Иначе некоторые Ваши программы не смогут работать на базовом РК86. Программы от базового РК86 не использующие IN/OUT, Вам годятся, а вот Ваши программы для базового РК придётся модифицировать. Я понимаю, что это Ваш личный проект, а не общественный, как в других темах, где желаемую архитектуру обсуждают (точнее хотели обсудить, но не стали, т.к заинтересованных в новых платах не нашлось).

    Но Вы ведь для этого публикуете сообщения в форуме, чтобы что-то можно было обсуждать с целью получить наилучший результат. Например, Вы поддержите таймер в области 8000...83FF, но все остальные пользователи РК имеют другой адрес (ранее был Ax00).

    Я предлагаю, например, адреса следующие: РК-КНГМД - F000, доп.ППА - F100, а таймер ВИ53 - F200, уникальные для каждой конкретной РК86 регистры - это F700. Мне без разницы, где ставить В/У, но вот совместимость мне важна. Предлагаю обсудить адресацию В/У. У Вас ведь всё-равно уже есть В/У в области F000, иначе как Вы подключаете РК-КНГМД? Зачем тратить два дешифратора (на 8000 и F000), если можно обойтись одним.

    Область F000 всё-равно занята для РК-КНГМД и ПЗУ сюда уже никто ставить не будет. Если уж надо доп.ПЗУ на нужды ROM-BIOS, то удобна коммутация двух банок ПЗУ в окне F800...FFFF. У меня есть несколько РФ2 с напаянными на них панельками в 24 ноги. И я их повсюду ставлю вместо РФ2, получая 4К ПЗУ вместо двух. Это очень полезно и главное не требует коррекций на платах, что важно. Для Z80 расширение ПЗУ не актуально, т.к при переделке кода в ПЗУ освобождается 130 ячеек, куда вполне влезают нужные расширения. Впрочем, и в ROM-BIOS для КР580 я уже давно встроил подпрограммы F836/39, причём не сами подпрограммы, а векторизованные входы, поэтому можно загружать драйвер любого эл.диска любой конструкции.

    Кстати, вот реальный довод в пользу установки Z80. При Z80 я собираюсь эмулировать клавиатуру РК86 на клавиатуре IBM PC по прерываниям. Для этого при обращениях процессора на 8000...83FF будет происходить прерывание NMI (с автовключением по адресу 0...7FF ПЗУ F800) и программная эмуляция матричной клавиатуры. C КР580 это не сделать, т.к NMI нет, а обычные прерывания уже истрачены на звук.

    В выложенной ранее версии ROM-BIOS для Z80 неверно работал разделитель пробел, поэтому я заменил ранее выложенный RAR-файл исправленным.
    Последний раз редактировалось barsik; 21.01.2017 в 21:33.

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

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

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

Похожие темы

  1. Радио-86РК: Видеовыход
    от m.d. в разделе Радио-86РК
    Ответов: 13
    Последнее: 21.05.2015, 08:19
  2. Радио-86РК: По страницам журнала "Радио"
    от Viktor2312 в разделе Радио-86РК
    Ответов: 79
    Последнее: 13.02.2014, 08:34
  3. эмулятор радио-86рк
    от sergey2b в разделе Эмуляторы отечественных компьютеров
    Ответов: 4
    Последнее: 09.06.2011, 15:59
  4. Радио 86РК
    от Shnurkov в разделе Барахолка (архив)
    Ответов: 1
    Последнее: 02.01.2009, 12:52

Ваши права

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