Вход

Просмотр полной версии : Высший разум, или кривые руки



PWA
02.06.2020, 22:55
Здравствуйте уважаемые форумчане. Собрал рк на новой уменьшенной плате. Подключил клавиатуру от Каро. Уже неделю бьюсь, над данным дефектом. Есть все приборы, двухканальный осциллограф, 8 каналов логический анализатор, но лыжи не едут. Скрин проблемы прилагаю. Также зависает на диррективе Х, и I. Понимаю, что проблема в какойто линии адреса, но не могу пока определить.

hitomi2500
03.06.2020, 10:23
Если монитор в принципе работает, это уже говорит о том, что с данными и младшими адресами самими по себе скорее всего всё хорошо. Вероятно проблема в ОЗУ - либо действительно до ОЗУ не доходит адрес или что-то ещё, либо сама память битая. Если вы дадите ссылку на схему, можно будет попробовать уточнить. По "классической" схеме нужно проверять ОЗУ, которая отвечает за бит D1.

Denn
03.06.2020, 11:03
При работе Монитор использует ОЗУ (стэк, системные переменные), если бы оно всё было неисправное, то скорее всего вместо приглашения Монитора был бы "мусор".

b2m
03.06.2020, 11:09
Возможно ПЗУ битое, или плавающие биты. Если есть возможность, поменять ПЗУ.

Alex_LG
03.06.2020, 16:01
Недавно столкнулся с проблемой, когда загружал проги с адреса 0000, то часть инфы портилась. При этом комп с виду работал нормально и директивы исполнял. Оказался обрыв в одной линии адреса на РУ6 из младшей страницы...

Это для Микроши...

PWA
03.06.2020, 17:59
Спасибо за ответы. РК собран по схеме переделанной на к565ру5 32 кило. Вроде все как по классике остальное. Самое обидное, сначала все микросхемы впаял. Потом выпаял пзу и поставил в панель. В процессе наладки и запуска поменял проц вм80, прчемуто перебирал все адреса без реакции на команду jmp.. Пзу считывал и сравнивал с несколькими дампами мониторов найденных на форуме, все сходится до байта. По поводу озу была мысля на битость, но осцилом ничего подозрительного не увидел.

- - - Добавлено - - -

И забыл признаться. До этого скрина, где адрес превращается в 0200 и тд, было всегда 0300. И если ввести М11, то выведет адресс 3311. И больше 2х цифр не дает ввести. Если написать М111, то выдает вопрос.

hitomi2500
03.06.2020, 18:28
Команды F и D работают? Покажите результат например вот такой пары команд:
F,100,FF
D,100

PWA
04.06.2020, 07:07
Эти команды работают. Но 3 цифрв ввести нельзя. D, 11 выводит дамп от 0 до 3311. Команда F, 11,00 заполняет память от 0 до 3311. Если написать D, 1 то выведет дамп от 0 до 0301.

zebest
04.06.2020, 14:24
До этого скрина, где адрес превращается в 0200 и тд, было всегда 0300. И если ввести М11, то выведет адресс 3311. И больше 2х цифр не дает ввести. Если написать М111, то выдает вопрос.
АчтО изменилось, что 0200 в 0300 превратилось ?

я так со своей колокольни думаю, что команды монитора сперва пишуЦЦа в текстовый буфер, и по Ентеру оттеда забираются, парсяЦЦа, и исполняются.
чтобы при команде "М" выводило верно, а при "М1" выдавало 301, надо чтобы 0-й бит адресной шины залип сразу с 8 и 9 битом адреса, тогда да, выдаст 1100000001. но раз экран выдает верно, и надпись и прочее - тогда очень странно.
Я бы попробовал залить в ПЗУ Монитор16, это проще и нагляднее, и посмотреть с ним этот же фокус.
Еще бы я скомпилил Монитор4 или даже 2, чтобы вообще отсечь верхние адреса, это если проблема с памятию.
Ну или длинный вариант - залить тест32 и анализатором тогда уж

OrionExt
04.06.2020, 15:24
Все сложно. Нид быть уверенным в стабильном интерфейсе памяти. Потом. На моей памяти - это глитч. Каламбур. Его так просто не изловить. Надо думать. А думать мне лень, как и любому отписавшемуся тут.

hitomi2500
04.06.2020, 15:37
Есть две маловероятные гипотезы - это дырка в памяти, ровно в том месте, где монитор хранит остаток команды, и дырка в ПЗУ, где эта команда обрабатывается. Вторая вроде бы проверялась (хотя не исключено, что ПЗУ исправное, а проблема происходит при чтении, надо ловить анализатором), первую тоже можно проверить.

Монитор поддерживает произвольное (пока буфера хватит) число пробелов после команды и до аргументов. Если после M вставить один пробел, ничего не изменится? А если 10?

OrionExt
04.06.2020, 15:41
С чего бы начал. Написал микро тест (работающий из ПЗУ) памяти для минимальной функциональности системы. Такая штука работает в MSX.

zebest
04.06.2020, 16:29
дырка в памяти, ровно в том месте, где монитор хранит остаток команды, и дырка в ПЗУ, где эта команда обрабатывается.
вот поэтмуу я и предлагаю мон16, системные переменные сместятся с 76хх на 36хх, это самое простое, что можно проверить.

OrionExt
04.06.2020, 16:47
ЫЫЫ. Последоватили стыренного терминала из рекламной рассылки Intell в 75г. (где-то так) на одной страничке не исправимы.

hitomi2500
04.06.2020, 16:50
В Апогее такой тест есть в дополнительном ПЗУ. Где-то на форуме проскакивала информация, что если поменять в Апогее ПЗУшки, то тест запустится сразу. Я попробовал в эмуляторе, на Апогее реально заработало, а при втыкании этого дополнительного рома в РК-86 вместо основного ничего хорошего не вышло. Видимо есть завязки.

В принципе такой тест написать недолго. В данном случае видео работает, можно результаты сразу на экран выводить.

OrionExt
04.06.2020, 17:06
Вырулить на конструктов не получилось. Жаль. Даже в таком простом вопросе.

Serg6845
04.06.2020, 19:41
Здравствуйте уважаемые форумчане. Собрал рк на новой уменьшенной плате. Подключил клавиатуру от Каро. Уже неделю бьюсь, над данным дефектом. Есть все приборы, двухканальный осциллограф, 8 каналов логический анализатор, но лыжи не едут. Скрин проблемы прилагаю. Также зависает на диррективе Х, и I. Понимаю, что проблема в какойто линии адреса, но не могу пока определить.

я бы грешил на ПЗУ или процессор...

PWA
04.06.2020, 23:46
Спасибо за ответы. Уже буду прошивать на монитор16. Уже думаю на 12 бит адреса(чисто мое мнение). Потом замена вм80. Заливка теста, и перебирание всех адресов, мазохисткий метод, но для людей старой закалки, как говорится, при домашнем режиме, чем бы еще занятся. Сборка компьютера заняла пару часов, но он полюбил меня с первого включения, и любит до сих пор:v2_dizzy_vodka2:3.

- - - Добавлено - - -

Самое интресное, директива Х при наборе не работает. Но если ее написать с 0 адреса, то все норм. Грешу на 3ю четверку бит 12,11,10,9. Как раз где переменные стека и прочей лабуды.Если заработает монитор16, то сьо процентов эта четверка барагозит.

- - - Добавлено - - -

По поводу анализатора, то он на 8 каналов, нихрена толком им в рк не просмотриш. Максимум, что проанализировал, так это обращение к вв55. Увидел, что выборка микросхемы иногда происходит впустую,без чтения или записи. Подключил анализатор на rd, wr, и cs.

PWA
05.06.2020, 12:08
Есть подвижки в решении проблемы. 16к монитор работает прекрасно, даже подгрузил игры. Как бы все указывает на память. Но, у меня стоят ру5, и на плате есть перемычка, которой я могу выбрать верхнюю или нижнюю половинку памяти. В обоих половинках работает норм. Соответственно версия 32к глючит одинаково в обоих половинках тоже. Буду рыть ближе к мультиплексорам, кажется я на верном пути

zebest
05.06.2020, 14:15
16к монитор работает прекрасно, даже подгрузил игры.
Ну этого для проверки должно вполне хватить.
16к монитор он чисто монитор, ничего более, просто работает в первых 16к, но при этом должен без особых проблем работать и со следующими 16к. Вот и пробуй директивами в верхнюю память записывать и считывать, ну и делать выводы. Можно и картинки делать, мы то жи посмОтрим. Ну и все же дамп 32к монитора слитый с твей ROM - залей сюда, то жи на него посмотрим, даже если он самый обычный. Может служебные невтуда адресует.

PWA
05.06.2020, 18:23
Всем спасибо, запустил наконец ркшку. Проблема оказалась в плавающем бите самой пзу.перепрошивка пзу помогла.

b2m
06.06.2020, 00:10
Проблема оказалась в плавающем бите самой пзу
Вот, как знал! :)