Спрошу ка в старой теме, вруг кто уже делал. На advantestinstrument@groups.io расколупали прямое чтение памяти приборов ( анализаторов спектра) используя переход в тестовый режим и команды $R ( чтение) и $W (запись). При этом GPIB кодов таких команд в прошивке найти не удалось. Может кто в курсе, каким хитрым образом реализовано декодирование таких команд? Ну и до кучи. Где то пролетал скрипт чтения памяти калибровок для адвантеста, что то не могу найти.
Карма: 66
Рейтинг сообщений: 3189
Зарегистрирован: Чт сен 09, 2010 07:32:24 Сообщений: 2175 Откуда: г. Рыбинск
Рейтинг сообщения:0
Как понять, о каком анализаторе речь - гадать, или разгребать тысячи сообщений в advantestinstrument? Если это что-то из серии R3271/65 на МПК MC68000, то там никаких секретов нет. А есть лишь прошивка на мегабайт, в которой крутится либо самописная ОС РВ, либо VRTX32-68k. В ней при запуске создаётся целая куча задач, в том числе задачи обработчиков потоков событий в режиме отладки. А уж в одной из этих задач есть собственный интерпретатор команд интерфейса, в коем обработчик этих $R и $W. Поскольку такие короткие служебные слова скорее всего не в виде ASCIIZ представлены, искать их в дампе совершенно бесперспективно.
Так сообщения за последние 2-3 дня. И там еще нет готового описания- еще разбираются с форматом адреса , прибор виснет при попадании в трап по недействительному адресу итд. ОС РВ там нет- похоже не обычный main c циклом опроса и прерываниями. А вопрос по командам связан с тем, что на все другие команды видны и их символьные реализации, и индексы в таблице переходов парсера итд. А вот эти две найти просто не получилось.
Карма: 66
Рейтинг сообщений: 3189
Зарегистрирован: Чт сен 09, 2010 07:32:24 Сообщений: 2175 Откуда: г. Рыбинск
Рейтинг сообщения:0
Скачал прошивку. Действительно всё намного проще, многозадачной ОС РВ там нет, на trap #0 висит не точка входа, а обычный обработчик исключений. В таблице паттернов команд интерфейса есть "W", можете глянуть её обработчик. Но я бы (будь у меня такой аппарат), начал с переменной - флага режима отладки. По ней находятся все инстансы ветвлений, в т.ч. к обработчику этих специальных команд чтения-записи. По крайней мере в более новых Advantest-ах с адской мультизадачной ОС удалось таким способом все пути в режиме отладки проследить.
P.S. Вот она, ваша искомая процедура:
Забавно, что пароль "94284" к Maintenance mode указан прямо открытым текстом.
Обязательным условием долгой и стабильной работы Li-FePO4-аккумуляторов, в том числе и производства EVE Energy, является применение специализированных BMS-микросхем. Литий-железофосфатные АКБ отличаются такими характеристиками, как высокая многократность циклов заряда-разряда, безопасность, возможность быстрой зарядки, устойчивость к буферному режиму работы и приемлемая стоимость. Но для этих АКБ очень важен контроль процесса заряда и разряда для избегания воздействия внешнего зарядного напряжения после достижения 100% заряда. Инженеры КОМПЭЛ подготовили список таких решений от разных производителей.
Да, это место я нашел, сейчас пытаюсь разобраться в ветвлениях. К сожалению в асме 68000 как свинья в апельсинах разбираюсь. Надо будет еще с чексумами разобраться, а то алгоритм пока неизвестен а на groups.io уже положили один аппарат, поломав чексуммы.
Компания EVE выпустила новый аккумулятор серии PLM, сочетающий в себе высокую безопасность, длительный срок службы, широкий температурный диапазон и высокую токоотдачу даже при отрицательной температуре.
Эти аккумуляторы поддерживают заряд при температуре от -40/-20°С (сниженным значением тока), безопасны (не воспламеняются и не взрываются) при механическом повреждении (протыкание и сдавливание), устойчивы к вибрации. Они могут применяться как для автотранспорта (трекеры, маячки, сигнализация), так и для промышленных устройств мониторинга, IoT-устройств.
Карма: 66
Рейтинг сообщений: 3189
Зарегистрирован: Чт сен 09, 2010 07:32:24 Сообщений: 2175 Откуда: г. Рыбинск
Рейтинг сообщения:0
Как успехи с чексуммами? Можно создать тему (чтобы не оффтопить здесь). При анализе трудных для понимания фрагментов кода очень удобно использовать среду симулятора EASy68K. Скачивается в Сети бесплатно. После археологических раскопок у меня сформировалось стойкое убеждение, что при разработке прошивок Advantest-ов на платформе Motorola 68k программисты использовали одни и те же ветхозаветные библиотеки "The Standard C Library'' P.J. Plauger со своими доработками и дополнениями.
Да копаюсь в фирмвари потихоньку. Предположение что команды $R $W связаны с отладочным режимом- не подтвердилось. Их декодируют еще до основного парсера команд в подпрограмме коррекции вехнего-нижнего регистра.
По стандартным библиотекам- где бы взять SIG файлы для них для ИДы? Тему отдельную можно, но это такая экзотика- утонет. Ну или надо правильно назвать чтобы легко поисковиками находилась.
Карма: 66
Рейтинг сообщений: 3189
Зарегистрирован: Чт сен 09, 2010 07:32:24 Сообщений: 2175 Откуда: г. Рыбинск
Рейтинг сообщения:0
Значит это такие своеобразные "чит-коды"
Надежда найти файлы сигнатур, как и сами библиотеки, у меня угасала с каждым годом и на сегодняшний день угасла совсем. Японцы не точь-в-точь брали исходники с дискет Plauger-а, но какую-то довольно близкую версию, которую дополняли кусками из других библиотек и своим творчеством. В итоге получился монстр, в котором одних только операций копирования строк четыре вида (с терминатором и без, с прямым порядком аргументов и обратным, с результатом и void).
Так что я махнул рукой на автоматизацию и разпарсил вручную самое критичное из STDIO, SDTLIB, MATH и STRINGS. На текущий момент в прошивке моего подопытного R6581 из 2677 функций идентифицировано 600 с чем-то штук и ещё такого же порядка разобрано структур данных. Я прекрасно понимаю, что это капля в море, и что я ещё не занимался вплотную разбором протоколов низкоуровневого обмена с железом (из-за отсутствия "широкого" логического анализатора), но в конце-концов это просто весело
Я так глубоко дизасмить фирмварь и не планировал. Главная моя задача была получить возможность сохранить калибровки, которые хранятся с RAM с батарейной поддержкой. Официально их можно было только сохранить на внешнюю карту 128кб, которую найти практически невозможно. А перекалибровывать весь прибор при слете данных- еще та задачка, хотя и выполнимая. Теперь эти данные можно считать и в перспективе записать ( когда разберусь с форматом $W). С картой я даже разобрался и слепил эмулятор- но там проблема в том что прибор считает готовность данных с карты абсолютной- нет никакой проверки готовности. Для карты с батарейной RAM это справедливо, а вот для софтового эмулятора- уже нет. Ну и как дополнительная хотелка- слегка модернизировать фирмварь чтобы номер рабочей гармоники выдавался на разьем parallel IO - это сильно облегчит использование внешнего следящего генератора. А остальное можно и на внешнем контроллере реализовать, благо теперь есть доступ к буферу сырых данных. Например измерение NoiseFig используя внешний ГШ и синхронно собирая данные при включенном и выключенном ГШ. Задачки конечно специфичны для РЧ и СВЧ измериловки. Боюсь, что скоро меня ждет замена экрана на LCD- кинескоп садится. А стандартные контроллеры LCD не захватывают синхросигналы advantest-а- частоты синхросигналов отличаются. Прийдется еще с программированием контроллера LCD возится.
Боюсь, что скоро меня ждет замена экрана на LCD- кинескоп садится. А стандартные контроллеры LCD не захватывают синхросигналы advantest-а- частоты синхросигналов отличаются. Прийдется еще с программированием контроллера LCD возится.
Да, с древней измериловкой беда, а там где еще и трубы стоят..... . Я пытался прикрутить ХКИ монитор к Hewlett Packard HP 16500C, из ~ 20 мониторов только пара завелась. Hewlett Packard HP 16500C 25Khz*60Hz HIOKI 7070 WAVEFORM GENERATOR 25Khz*56Hz А у этих, YOKOGAWA AG1200 и Hioki8852 насколько помню, вообще телевизионная строчная и кадровая. Даже купил в Китае плату, конвертер из всех строчных и кадровых в ЖКИ монитор, но завести не смог(руки наверное кривые )
Даже купил в Китае плату, конвертер из всех строчных и кадровых в ЖКИ монитор, но завести не смог(руки наверное кривые )
Про замену кинескопов на LCD в измерительной аппаратуре надо наверно отдельную тему заводить. Особенно в старой, где еще не было VGA резьемов, а частоты разверток были или свои собственные или типа древних MDA дисплеев. Для таких частот надо на китайские платы адаптеров на базе RTD2660 чипов кастомную прошивку делать. Как по разрешению LCD матрицы, потому что часто приходится искать нестандартную на теперешнее время широких экранов матрицу 4:3 и частоты H-sync V-sync нетипичные задавать.
Карма: 66
Рейтинг сообщений: 3189
Зарегистрирован: Чт сен 09, 2010 07:32:24 Сообщений: 2175 Откуда: г. Рыбинск
Рейтинг сообщения:3
Вот же ж хитрые японцы! В Advantest R6581 я таки нашёл "закладку" Когда я расшифровывал структуру полей ключевых слов SCPI и ADC команд и вычленял в коде отвечающие за эти команды процедуры, обнаружил, что из 484 процедур 53 шт. не описаны в руководстве и становятся доступны через GPIB интерфейс только после снятия флага защиты специальной командой. Эти "секретные" процедуры делятся на несколько классов и имеют совершенно разный синтаксис команд, начиная от простейшей WR и заканчивая монстрами, типа, CALIBRATION:INTERNAL:DCV:HOSEI:NUMBER или CALIBRATION:EXTERNAL:ZERO:FRONT:EEPROM:DEF? Кстати, "HOSEI" здесь - это отсылка к одному известному японскому университету. В итоге можно получить низкоуровневый доступ к АЦП и всем аналоговым узлам, а так же калибровочным константам разного уровня (в RAM, EEPROM) и функций. Всё это происходит совершенно прозрачно для основной работы прибора. Т.е., к примеру, шлём управляющее слово 0x4800 (ADC Reset), и на дисплее на мгновение мелькает мусор или OVERLOAD, т.к. задачи считывания и отображения результатов получили некорректные данные.
Прошивка R6551 мне ещё не попадалась, но есть основания полагать, что и в ней тоже могут быть подобного рода служебные команды.
Вот же ж хитрые японцы! В Advantest R6581 я таки нашёл "закладку" Когда я расшифровывал структуру полей ключевых слов SCPI и ADC команд и вычленял в коде отвечающие за эти команды процедуры, обнаружил, что из 484 процедур 53 шт. не описаны в руководстве и становятся доступны через GPIB интерфейс только после снятия флага защиты специальной командой. Эти "секретные" процедуры делятся на несколько классов и имеют совершенно разный синтаксис команд, начиная от простейшей WR и заканчивая монстрами, типа, CALIBRATION:INTERNAL:DCV:HOSEI:NUMBER или CALIBRATION:EXTERNAL:ZERO:FRONT:EEPROM:DEF? Кстати, "HOSEI" здесь - это отсылка к одному известному японскому университету. В итоге можно получить низкоуровневый доступ к АЦП и всем аналоговым узлам, а так же калибровочным константам разного уровня (в RAM, EEPROM) и функций. Всё это происходит совершенно прозрачно для основной работы прибора. Т.е., к примеру, шлём управляющее слово 0x4800 (ADC Reset), и на дисплее на мгновение мелькает мусор или OVERLOAD, т.к. задачи считывания и отображения результатов получили некорректные данные.
Прошивка R6551 мне ещё не попадалась, но есть основания полагать, что и в ней тоже могут быть подобного рода служебные команды.
Карма: 66
Рейтинг сообщений: 3189
Зарегистрирован: Чт сен 09, 2010 07:32:24 Сообщений: 2175 Откуда: г. Рыбинск
Рейтинг сообщения:0
При ближайшем рассмотрении этот мультиметр оказался всё-таки другого рода-племени в плане структуры ПО. К тому же он не поддерживает SCPI стек, и соответственно, что-то подобного для него получить вряд ли возможно.
При ближайшем рассмотрении этот мультиметр оказался всё-таки другого рода-племени в плане структуры ПО. К тому же он не поддерживает SCPI стек, и соответственно, что-то подобного для него получить вряд ли возможно.
Карма: 66
Рейтинг сообщений: 3189
Зарегистрирован: Чт сен 09, 2010 07:32:24 Сообщений: 2175 Откуда: г. Рыбинск
Рейтинг сообщения:0
Ядро действительно находится в 29F400. Можно смело брать 68040 дизассемблер и грузить прошивку с 0x100000. Как в самом образе ROM, так и в загружаемых файлах присутствует отладочная информация. Так что разобраться с DEBUG режимами Advantest R3273 - лишь вопрос времени. Правда при отсутствии самого прибора изучать прошивку - дело совершенно не интересное и бесперспективное.
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 29
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения