Часовой форум Watch.ru (http://forum.watch.ru/index.php)
-   Электроника (http://forum.watch.ru/forumdisplay.php?f=28)
-   -   Уголок яйцеловов. Обсуждаем, чиним, хвастаемся находками (http://forum.watch.ru/showthread.php?t=154411)

siealex 14.03.2023 23:04

Цитата:

Я не хотел реализовывать воспроизведение звука, так как это не имеет смысла при отладке.
Напрасно, лучше сделать это опцией.
Цитата:

Содержимое памяти в unattended mode можно контролировать, нажав и удерживая клавишу F5.
Очень неудобно, особенно если одновременно нажимаешь другие клавиши или щёлкаешь сырой ввод.

Кстати, а есть ли где-нибудь описание каждого байта в оперативной памяти, что где хранится? Очевидные данные (типа текущего времени, очков, рекордов) найти легко, а вот например положение каждого яйца - шиш.

MilanSK 16.03.2023 22:18

Вложений: 1
Цитата:

Сообщение от siealex (Сообщение 6680011)
Напрасно, лучше сделать это опцией.

Могу подумать об этом, но в данный момент это нет мой приоритет.

Цитата:

Очень неудобно, особенно если одновременно нажимаешь другие клавиши или щёлкаешь сырой ввод.
Принимаю. Сделаю это выбираемым, как в animated режиме.

Цитата:

Кстати, а есть ли где-нибудь описание каждого байта в оперативной памяти, что где хранится? Очевидные данные (типа текущего времени, очков, рекордов) найти легко, а вот например положение каждого яйца - шиш.
Я не знаю о таком описании. Это надо выяснять только экспериментально.
Яйца обозначаются различными битами в оперативной памяти, см. рисунок. Причина в том, чтобы удобно записывать значения в регистры LCD.

siealex 17.03.2023 19:43

Цитата:

Яйца обозначаются различными битами в оперативной памяти, см. рисунок. Причина в том, чтобы удобно записывать значения в регистры LCD.
Не подряд на одной дорожке? Это же не очень удобно для просчёта следующего шага, приходится держать большую таблицу в памяти или в прошивке.

MilanSK 17.03.2023 22:39

Вложений: 2
Цитата:

Сообщение от siealex (Сообщение 6682390)
Не подряд на одной дорожке? Это же не очень удобно для просчёта следующего шага, приходится держать большую таблицу в памяти или в прошивке.

Поскольку программисты должны были следовать тому, как был определен ЖК-дисплей, они адаптировали биты в переменных памяти для макета ЖК-дисплея.
Это очевидно из следующей картинки.

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

siealex 21.03.2023 20:15

MilanSK
Существует ли подробная документация по этому чипу? Или исходники его эмулятора (хотя это менее удобно).

MilanSK 21.03.2023 22:05

Зависит от того, какая документация вам нужна. Hardware (напряжения, сигналы, формы волны и т.д.) или software (описание инструкции)?

Техническая спецификация SHARP SM-5A (КБ1013ВК1-2 - клон этой японской микросхемы)
Однокристальные ЭВМ серии КБ1013 (ошибки-исправлена транскрипция статьи из журнала ниже)
Микропроцессорные средства и системы №5, 1987 (страницы 5-18)
Эмулятор МАМЕ (содержит также исходный код эмуляции микросхемы КБ1013ВК1-2)

siealex 22.03.2023 00:00

Цитата:

Сообщение от MilanSK (Сообщение 6685502)
Зависит от того, какая документация вам нужна. Hardware (напряжения, сигналы, формы волны и т.д.) или software (описание инструкции)?
Эмулятор МАМЕ (содержит также исходный код эмуляции микросхемы КБ1013ВК1-2)

В основном софт, хотелось бы понять, получится ли сэмулировать этот чип (именно сэмулировать точно) на современных микроконтроллерах.

С горем пополам нашёл исходники - там (пока что) трудно что-либо понять из-за огромного количества ссылок из одного файла в другой...

siealex 22.03.2023 01:14

Ещё вопрос. Почему содержимое ROM, которое отображается в отладчике, не совпадает с содержимым файла ROM в папке? Загружаю Mickey Mouse, вижу в окне на 0 странице 70 58 8А E2 AE F2 B7 A2, в файле же 70 00 00 AB C4 00 7D A2. Файлы каким-то образом сжаты или зашифрованы?
PS, в эмуляторе Ну-Погоди ROM лежит открытым текстом и в точности совпадает с содержимым окна отладчика.

MilanSK 22.03.2023 11:54

Вложений: 1
Цитата:

В основном софт, хотелось бы понять, получится ли сэмулировать этот чип (именно сэмулировать точно) на современных микроконтроллерах.
Наверняка можно будет эмулировать этот чип на современных микроконтроллерах. Он был очень медленным, и его основная исполнительная функциональность была очень простой.

Многое будет зависеть от того, какой тип графического вывода вы выберете. Будет ли это снова монохромный одноцелевой ЖК-дисплей? Или что-то совсем другое?
Гораздо интереснее, чем эмулировать инструкции чипа, будет программировать представление графического вывода.

Цитата:

Почему содержимое ROM, которое отображается в отладчике, не совпадает с содержимым файла ROM в папке? Файлы каким-то образом сжаты или зашифрованы?
Ну, мы можем назвать это типом шифрования. Адрес следующей инструкции не вычисляется как Предыдущий+1. Вместо этого используется так называемый LFSR. Для вычисления следующего адреса используется простая функция.
Для этого:
000 + 1 = 020
020 + 1 = 030
030 + 1 = 038
038 + 1 = 03C
и т. д.
Смотрите картинку.

siealex 22.03.2023 20:28

Цитата:

Многое будет зависеть от того, какой тип графического вывода вы выберете. Будет ли это снова монохромный одноцелевой ЖК-дисплей? Или что-то совсем другое?
Как раз именно оригинальный дисплей - была мысль сделать прямую замену родного чипа.

max-73 22.03.2023 21:13

Цитата:

Сообщение от MilanSK (Сообщение 6685760)
Ну, мы можем назвать это типом шифрования. Адрес следующей инструкции не вычисляется как Предыдущий+1. Вместо этого используется так называемый LFSR

Рискну предположить, что дело всё таки не в запутывании кода, а просто в упрощенной реализации счётчика - как описано в разделе Использование в качестве счётчиков вышеупомянутой статьи.

MilanSK 22.03.2023 22:19

Цитата:

Сообщение от siealex (Сообщение 6686059)
Как раз именно оригинальный дисплей - была мысль сделать прямую замену родного чипа.

Затем вы должны правильно эмулировать также ЖК-драйвер оригинального чипа. Что не так уж и просто, как может показаться. Речь идет не только о подаче одного напряжения на вывод ЖК-дисплея, чтобы зажечь сегмент.

Цитата:

Сообщение от max-73 (Сообщение 6686100)
Рискну предположить, что дело всё таки не в запутывании кода, а просто в упрощенной реализации счётчика - как описано в разделе Использование в качестве счётчиков вышеупомянутой статьи.

Я определенно согласен. Классический счётчик намного сложнее в реализации на уровне микросхеме.

siealex 23.03.2023 02:28

Цитата:

Затем вы должны правильно эмулировать также ЖК-драйвер оригинального чипа.
Для этого существуют микроконтроллеры со встроенным драйвером, например STM8L152.

Вопрос по игре "Хоккей". Должна ли у него на дисплее быть надпись "ГОЛ!", как в Весёлых футболистах? На моём экземпляре этого сегмента не нахожу.

max-73 23.03.2023 03:25

siealex, Разновидности микропроцессорных игр "Электроника" -> Игра Электроника ИМ-10 Хоккей

siealex 23.03.2023 03:41

У меня оказался вариант с шестигранными часиками.

max-73 23.03.2023 04:00

похоже, авторы данного варианта ЖКИ не придумали, чем заменить разбитое яйцо и убегающего цыпленка :)

siealex 23.03.2023 11:54

Скорее всего не столько не придумали (в Весёлых футболистах же есть прыгающая надпись ГОЛ), а не вместили разводку из-за другого расположения нижних дорожек. А вообще странно, что не сделали даже один сегмент. Играю, вдруг слышу на ровном месте пип-щёлк-щёлк-щёлк-щёлк, а на экране пусто. Уже думал, что чип глючный, а оказался просто промах.

max-73 23.03.2023 12:03

Возможно... Хотя, в варианте с прямоугольными часами всё получилось.

"пип-щёлк-щёлк-щёлк-щёлк" - трибуны выразили своё разочарование (или одобрение?..) :D

siealex 24.03.2023 04:31

Цитата:

Хотя, в варианте с прямоугольными часами всё получилось.
Не всё - надпись ГОЛ одна с каждой стороны, а должно быть по пять.

max-73 24.03.2023 05:30

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

siealex 30.03.2023 04:00

Вопрос к фанатам Разведчиков космоса. Играл сегодня в игру Б (на реальном железе), дошёл примерно до 360, вдруг игра стала работать неравномерно и заметно подлагивать при нажатии на кнопки. У кого-нибудь такое было?

jerkyboy 01.04.2023 09:11

Вложений: 1
Всем привет!
Игра Ну, погоди! Была исправна, человек вынул ОДНУ батарейку и положил игру на полочку (почему одну? А я, говорит так с пультами делаю, не работает же, значит обесточил...). Полежала игра пару месяцев так. Вставляем батарейки, экран блеклый, ну ладно, думаем, сели батарейки, сейчас новые вставим. Вставляем новые, четкое изображение левой нижней четверти экрана и всё, ни замена резинок, ни смена платы на происходящее не повлияли :(
Как-то тут мелькало на форуме понятие "деградация", но не очень понятна суть и можно ли это вылечить?

Как вам вот такой экземпляр? В г.Орёл всплыл. Понятно, что сюжет цирка впихнули туда, но сам корпус явно намекает на Арифметику. Ранее я не встречал арифметику в нестандартном корпусе Протона, да ещё и экспортный к тому-же...

MilanSK 01.04.2023 18:45

Цитата:

Сообщение от jerkyboy (Сообщение 6693541)
человек вынул ОДНУ батарейку и положил игру на полочку (почему одну? А я, говорит так с пультами делаю, не работает же, значит обесточил...). Полежала игра пару месяцев так.

Именно это может быть основной проблемой.
Если удалить только одну батарею, другая по-прежнему подает напряжение на схему ЖК-дисплея!
ЖК-дисплей в этих играх ДОЛЖЕН питаться от переменного напряжения. Это его принцип. Когда вы подаете постоянный ток в течение длительного времени, вы можете эффективно разрушить дисплей.
Поэтому, когда вы удаляете только одну батарею или оставляете внутри обе батареи с низким напряжением, чип не может генерировать переменные напряжения. Он постоянно пропускает только одно напряжение на ЖК-дисплей, что медленно повреждает кристаллы.

siealex 01.04.2023 21:24

Вложений: 1
Переделка платы от "тонкого" корпуса (Протон) в "толстый" (Винница).
http://forum.watch.ru/attachment.php...1&d=1680372501
Отмеченное зелёным - сверлим или точим совершенно безопасно. Отмеченное красным - на другой стороне платы дорожки, после просверливания найти их и соединить по схеме. Ничего не указано - отверстия уже совпадают.

Цитата:

Сообщение от jerkyboy (Сообщение 6693541)
Всем привет!
Вставляем новые, четкое изображение левой нижней четверти экрана и всё, ни замена резинок, ни смена платы на происходящее не повлияли :(

Не похоже это на деградацию, скорее обрыв межслойных переходов по углам. Деградация обычно выглядит так: сегменты большой площади не отображаются, сегменты немного тёмные даже без питания и т. д.

Цитата:

Как вам вот такой экземпляр? В г.Орёл всплыл. Понятно, что сюжет цирка впихнули туда, но сам корпус явно намекает на Арифметику.
Назначение маленьких кнопок не совпадает с Арифметикой.

jerkyboy 01.04.2023 22:53

Цитата:

Сообщение от siealex (Сообщение 6694024)
Не похоже это на деградацию, скорее обрыв межслойных переходов по углам. Деградация обычно выглядит так: сегменты большой площади не отображаются, сегменты немного тёмные даже без питания и т. д.

Как то это можно проверить/исправить?

Цитата:

Сообщение от siealex (Сообщение 6694024)
Назначение маленьких кнопок не совпадает с Арифметикой.

А что смущает? только Tab на старт не смахивает, а так вполне понятно всё.

siealex 01.04.2023 23:15

Цитата:

Как то это можно проверить/исправить?
Проверить теоретически можно. Получится показать, какие именно сегменты светятся в режиме сброса на заведомо исправной плате и с новыми резинками?

siealex 05.04.2023 19:55

Цитата:

Как вам вот такой экземпляр? В г.Орёл всплыл. Понятно, что сюжет цирка впихнули туда, но сам корпус явно намекает на Арифметику.
Кстати, что это за синие треугольники на передней плёнке? Сколько попадался Цирк - там просто плоские полочки.

max-73 06.04.2023 19:45

Видимо, что-то типа навеса изображено. Там не очень отчетливо видно, но нижний край ещё украшен каймой из полукругов желтого цвета.

siealex 09.04.2023 04:20

Попалась мне плата от Ну-Погоди с очень странной проблемой. Индикатор работает криво, как будто на плате оборвана дорога средней точки от батарейного отсека. Проверил дорогу - нормально, в чипе диодной прозвонкой тоже прозванивается, но до драйвера дисплея этот уровень не доходит. Становлюсь карманным осликом на общие выводы дисплея и вижу такую картину: верхний уровень (3 В) и нижний (0) чёткие, а вот вместо среднего уровня (1.5 В) микросхема выдаёт Z - напряжение зависит как от отображаемых сегментов, так и от того, относительно чего его мерить (и это при входном сопротивлении ослика 1 МОм). В качестве временной меры подтянул оба общих резисторами 430 кОм на среднюю точку - средний уровень установился около 2 В, индикация вполне нормальная, хотя и ценой лишних 5..7 мкА потребления. Как такое могло произойти?

max-73 09.04.2023 14:50

Цитата:

средний уровень установился около 2 В
а так не получится ли асимметрия напряжения с появлением постоянной составляющей и всеми вытекающими?..

siealex 10.04.2023 00:46

Получится, но другого выхода нет - эти резисторы потребляют существенный ток, так что уменьшать их сопротивление дальше нет смысла.

jerkyboy 14.04.2023 01:14

Вложений: 1
Цитата:

Сообщение от siealex (Сообщение 6694083)
Проверить теоретически можно. Получится показать, какие именно сегменты светятся в режиме сброса на заведомо исправной плате и с новыми резинками?

Дошли руки до этого вопроса :)
Вставил экран в заведомо рабочую плату, результат на фото

7400N 15.04.2023 19:41

Цитата:

Сообщение от siealex (Сообщение 6699470)
Как такое могло произойти?

Ну собсно как мне кажется вы диагноз правильно и поставили, внутри чипа отвал средней точки на коммутаторах. Рецепт лечения вобщем-то тоже вы применили вполне верный "задуть с обратной стороны среднюю точку ценой энергопотребления".

Разве что сопротивление резисторов можно попробовать дать в гору, токи там через индикатор наноамперные, поэтому до мегаома задрать можно на мой дилетантский взгляд. В принципе сопротивления в этом делителе можно наращивать до той поры пока потенциал средней точки будет плюс-минус держаться около середины. На "по заводу" выйти по потреблению конечно не удастся, но на разумный компромисс между энергожоркостью и качеством индикации без паразитных засветок я думаю можно вполне. Хотя ресурс батареи конечно будет несколько ниже чем если бы было все исправно.

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

max-73 15.04.2023 21:51

7400N, по-моему, siealex не делитель сделал, а -1.5 В через резистор на COM бросил (2 раза, соответственно).

jerkyboy 16.04.2023 23:19

Вложений: 1
Цитата:

Сообщение от siealex (Сообщение 6696938)
Кстати, что это за синие треугольники на передней плёнке? Сколько попадался Цирк - там просто плоские полочки.

С такими "навесами" я встречал только в нестандартных корпусах протона. Возможно более поздние выпуски.

siealex 17.04.2023 00:11

Цитата:

Сообщение от max-73 (Сообщение 6704344)
7400N, по-моему, siealex не делитель сделал, а -1.5 В через резистор на COM бросил (2 раза, соответственно).

Да, именно так.

Цитата:

Сообщение от jerkyboy (Сообщение 6703018)
Дошли руки до этого вопроса :)
Вставил экран в заведомо рабочую плату, результат на фото

Ничего не понимаю. Правые общие в полном отвале, а вот что с левыми? Если разводка в точности совпадает с картинкой в отладчике - скорее где-то КЗ внутри дисплея, чем обрыв.

siealex 18.04.2023 15:04

Цитата:

Разве что сопротивление резисторов можно попробовать дать в гору, токи там через индикатор наноамперные
Нифига не наноамперные, разница с дисплеем и без дисплея в режиме сброса (все сегменты работают) до 15 мкА.

MilanSK 18.05.2023 21:21

Цитата:

Сообщение от MilanSK (Сообщение 6678729)
Подтверждено, есть ошибка в отладчике. Некоторые сэмплы были случайно пропущены при записи в аудиобуфер. Это вызывает более высокий звук. Вскоре будет выпущена новая версия отладчика, включающая это исправление.

Готовый.
Здесь журнал изменений.
Если что-то не работает правильно, дайте мне знать.

siealex 19.05.2023 01:07

Звук теперь записывается корректно, от оригинала не отличишь.

Zigokaktus 02.06.2023 23:22

Цитата:

Сообщение от jerkyboy (Сообщение 6166025)
А Вам не попадался вот такой логотип?

Логотип Одесский Завод Сопротивлений


Часовой пояс UTC +3, время: 15:54.

© 1998–2024 Watch.ru