|
nedoPC.orgCommunity for electronics hobbyists, established in 2002 |
|
Last visit was: 06 Oct 2024 02:39
|
It is currently 06 Oct 2024 02:39
|
Отладочный модуль на К1801ВМ1
Author |
Message |
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
|
Получился первый удобоваримый ассемблерный вариант, который собирается в точную побитную копию оригинала Монитора. При сборке со смещением о1000 все относительные смещения вычисляются правильно, и далее полученный бинарный код перемещаем. Собирал код вот этим КроссАссемблером, он добавляет в начале 4 байта для эмулятора БК-0010. Сверял сборку побитно програмой fc ( file compare) с опцией /b - бинарное сравнение. Сравнивал с оригинальным кодом Монитора, который тоже на всякий случай прилагаю: На всякий случай - пометки в исходнике: ' %%%' - посмотреть, что за число; ' ???' - это не совсем понятно. Нашел все таблицы переходов (вычисляются сейчас при сборке правильно), нашел таблицы и значения в тексте для 7-сегментных кодов. Не нашел 7-сегментных кодов для комбинации ' HA': Возможно, их делают не так прямолинейно, как остальные... В общем с этой версией исходного кода Монитора уже удобно работать с компилятором Ассемблера, хотя следует быть внимательным - кое где относительные смещения к таблицам вычисляются неявно, без указания метки, поэтому вставлять что-то своё в код следует осторожно. Везде, где я это нашел - прокомментировал, но доводить до вычислений Ассемблером - не стал.
You do not have the required permissions to view the files attached to this post.
_________________ iLavr
|
10 Feb 2018 05:00 |
|
|
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
|
Погуглил сам, коли у нас на форуме, похоже, что нет их... Но, видимо, их в более хорошем качестве и в принципе нет. Скачал вот здесь, но опять то же самое - "скан из мануала на двух листах": http://r-games.net/31517-shemy-bk-0010-01.htmlhttp://r-games.net/31518-shemy-bk-0011m.htmlВ данный момент меня, собственно, интересует, как в схемах на микропроцессорах 1801ВМ1,2был организован арбитраж обращения к Видео-ОЗУ. Как это делается в схемах на К580ВМ80А я знаю, а вот со схемами на 1801ВМ1,2 надо разобраться. И очень приятным бонусом вдруг обнаружилась схема " Электроники МС 0511 УКНЦ" на 1801ВМ2 ! http://forum.tslabs.info/viewtopic.php?f=34&t=778Схема и сопутствующая документация очень хорошего качества, жаль только в "шинном" варианте... И если кому интересно - фотографии " МС 0511 УКНЦ" с её описанием: https://is000.livejournal.com/25799.html
_________________ iLavr
|
10 Feb 2018 07:33 |
|
|
Shaos
Admin
Joined: 08 Jan 2003 23:22 Posts: 23357 Location: Silicon Valley
|
А чо там 2 проца ВМ2 чтоли?
|
10 Feb 2018 13:07 |
|
|
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
|
Да, процев КМ1801ВМ2 - там два: Прямо как в твоей "Электронике-85"...
_________________ iLavr
|
10 Feb 2018 14:01 |
|
|
Shaos
Admin
Joined: 08 Jan 2003 23:22 Posts: 23357 Location: Silicon Valley
|
Круто
|
10 Feb 2018 15:26 |
|
|
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
|
Нашел-таки хорошо отрисованную с оригинала схему БК-шки здесь: Ремонт БК-0010 БК 0011 БК 0011М. [перерисовка СD-INC] Или прямая ссылка: Схема принципиальная "Электроника БК 0010 - 01"
_________________ iLavr
|
13 Feb 2018 09:56 |
|
|
Shaos
Admin
Joined: 08 Jan 2003 23:22 Posts: 23357 Location: Silicon Valley
|
|
13 Feb 2018 23:03 |
|
|
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
|
Возможно, более крупные картинки, а так - те же самые: А по этой ссылке: " Схема принципиальная "Электроника БК 0010 - 01" схема отрисована заново, что я, собственно, и искал...
_________________ iLavr
|
18 Feb 2018 10:43 |
|
|
Случайность
Doomed
Joined: 05 Apr 2011 12:45 Posts: 491 Location: Великий Новгород
|
Насчет устройства клавишного, Кнопка П, не замыкает линию К4 на землю, Это отдельная кнопка в этом устройстве, у нее свой контакт и эту отдельную линию она замыкает на землю, Собственно это и есть сброс. Вот в плохом качестве оригинал. Эти файлы у меня были с самого начала, просто никто не спрашивал, И не думал что кому то надо. Все же надо добить эту схему в железе, я так понял что монитор полностью рабочим оказался? и его можно заливать в РФ-ки?
_________________ танцуй пока живешь под каплями огненного дождя...
|
05 Dec 2019 14:18 |
|
|
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
|
Я думаю, что Монитор полностью соответствует своей прошивке и он - рабочий. Хотя нюансы неожиданные всегда могут быть, всё ж артефакт из 1986 года! Я давно уже собирался выложить здесь этот пропатченный вариант эмулятора БК-0010с .dll-эмуляцией индикатора с клавиатурой, которые обслуживают этот самый Монитор. Но вся загвоздка была в том, что писал и тестировал я всё это под Windows 98через функции Win-API, а это не всегда работает в Windows старших версий... Сегодня решил проверить работу этой связки под Windows 7 и был просто очень озадачен! Дело в том, что для отрисовки 7-сегментного индикатора я использовал специальный шрифт LED.TTF, и попытка установить его в Windows 7 вызвала сообщение: что этот файл «Не является правильным шрифтом Windows 7» ( возможно, не дословно, но как-то так...) Я погуглил и наткнулся в разных местах на странный совет: Ну я попробовал, включил их (хотя, может, они и были включены), но положительного результата это не принесло... В общем, в полном недоумении я по поводу случившегося.
You do not have the required permissions to view the files attached to this post.
_________________ iLavr
|
13 Jan 2020 16:37 |
|
|
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
|
Обидно, что именно этот самый LED.TTF, как у меня, раздают в Интернете просто-таки на всех углах... к примеру, вот: https://www.fontup.ru/fonts/9125/led.htmlи никто не жалуется... Я его и сразу-то выбрал за бесплатность и широкую распространенность - есть откуда скачать в случае чего.
_________________ iLavr
|
13 Jan 2020 19:01 |
|
|
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
|
Прочитал я килотонны "этих наших Интернетов", как пишут люди - "коллективного разума" и ничего полезного не нашел... Особенно задолбал на всех углах совет "включить брендмауэр Windows", который относят аж к самой M$ ! Забавно, что и вправду непонятно в Windows 7 когда включен брендмауэр Windows, а когда выключен. Когда его начинаешь "включать/выключать" (а у меня это одна опция), он пишет про какие-то настройки и сети... Ну какие нафиг сети, когда ноутбук с Windows 7 у меня ни в какие сети не включен! Решение оказалось простым, хоть я пол-дня и угробил... Если Windows 98 шрифт этот понимает и на него не жалуется: Значит Windows 7 просто не нравится что-то в его оформлении, поэтому я решил прогнать его через какой-либо конвертор. Их полно в онлайн варианте сейчас, но у меня успешно сработал вот этот: https://www.font-converter.net/enЧестно говоря, первоначально я хотел конвертнуть .ttf в .otf, поскольку обратил внимание, что в Windows 7 большинство шрифтов именно такие. Но потом по предложению конвертора решил конвертнуть в несколько форматов, в том числе и в сам .ttf. Результат превзошел все ожидания! Кстати, Windows 7 безобразно тупа... Ну какие нафиг " французские булки", если в шрифте нет кириллицы! Шрифт во всех современных форматах выкладываю: Он хороший, и он - БЕСПЛАТНЫЙ! А сейчас, как я начитался, и с авторскими правами на шрифты бывают проблемы!
You do not have the required permissions to view the files attached to this post.
_________________ iLavr
|
14 Jan 2020 03:00 |
|
|
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
|
Ну а дальше, собственно, случилось то, чего я и боялся, почему и не выкладывал код сразу, как закончил этот проект... Очень мне не хотелось, чтобы кто-то нарвался на это раньше меня... Ошибка 0xc0000005 - это " код выполняется в области данных", что, честно говоря, так и есть. ЕХЕ-файл эмулятора был пропатчен кодом для взаимодействия с DLL. И хотя я знал про это и старался не влезть в область данных, где-то всё же влез. Windows 98 ещё прощает такие трюки, но старшие Винды к этому относятся строго. Там этот механизм задействован на уровне ядра системы и самого процессора. Пробовал под Windows 7 отключить предотвращение выполнение данных (DEP) для этой программы - не спасло. Это не единственный механизм в Windows 7, который отслеживает такую ситуацию. Что ж... осталось попробовать под Windows ХР и Windows 10 - помотрю, как они среагируют на некорректный хак.
You do not have the required permissions to view the files attached to this post.
_________________ iLavr
|
14 Jan 2020 17:50 |
|
|
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
|
В общем, я подумал и решил поступить следующим образом: выложить всё "как есть", потому как удивить всех панелью Монитора не было моей самоцелью, а хотел я пригласить всех заинтересованных лиц на форуме попрактиковаться в программировании на ассемблере микропроцессоров семейства 1801. На основе большого числа различных эмуляторов, которые я насобирал, я пришел к выводу, что этот - наиболее подходящий. Ну и мне хотелось, чтобы процесс был привычен и удобен всем, кто начинал с этих наших "Специалистов" и "Микрош", с их директивми D, L, T и т.п. К сожалению, встроенный монитор БК - упрощенный и не так удобен. А вот Монитор с панелью управления по идеологии к этому очень близок. Ну и сама по себе панель управления - наглядное устройство ввода-вывода, а я очень люблю на ассемблере зажигать светодиоды и читать кнопки. Ситуация усложняется тем, что на компьютерах с Windows XP, 7, 10 у меня нет никаких средств разработки и отладки, и я не уверен, что изменю что-то в ближайшее время, так что: BK_M.EXE - эмулятор с панелью под Монитор, а если не заработает, то BK.EXE - эмулятор оригинальный, он точно под Windows 7 работает! Также в архиве: Injected.dll - эмулятор панели Монитора; InjDLL.cpp - его исходный код; InjHOW.cpp - как делается инжекция в чужой файл .ЕХЕ; LED.ttf - 7-сегментный шрифт; MON1986.ASM - исходный код Монитора с панелью управления; MON1986.BIN - оригинал Монитора, который мы тут набирали; MPSS_86_2.doc - статья из "МПСС", с которой всё и началось. ASM.COM - простой ассемблер для микропроцессоров 1801; ASM... - всё что нужно для него. Писать программы лучше в привычной среде под Windows, компилировать этим ассемблером, переносить в папку Bin и запускать в среде эмулятора БК. Как это сделать по-быстрому: " Руководство по запуску.txt" Отладчик в эмуляторе БК - свой собственный, хороший, " с блэкджэком и прочими ништяками". Эмулятор БК 0010 new.rtf - справочный материал, по эмулятору БК. В папке Bin - Mirage66000.bin - один из лучших отладчиков для БК, для тех, кто любит эти наши директивы D, L, T... и хелп к нему - там же. В папке Docs - полезные материалы по БК, процессору 1801ВМ1 и программированию на его ассемблере и Васике (иногда из-под него удобно что-либо проверить). Отдельное спасибо автору этого замечательного эмулятора, за то, что он корректно работает в Windows 98 ( и не только), четко слушается моей виртуальной клавиатуры, и оказался весьма удобным для сторонней инжекции в собственный код!
You do not have the required permissions to view the files attached to this post.
_________________ iLavr
|
14 Jan 2020 22:31 |
|
|
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
|
В общем, есть некоторая прелесть в ассемблере этих процессоров! Вот, к примеру, заполнение области экрана словом: Я еще и задуматься толком не успел... а оно уже в две строчки получилось!
_________________ iLavr
|
29 Jan 2020 03:33 |
|
Who is online |
Users browsing this forum: Claude AI [Bot] and 0 guests |
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot post attachments in this forum
|
|