ASM8080 IDE

Использование и разработка софта (преимущественно на ПЦ)

Moderator: Shaos

User avatar
Lavr
Supreme God
Posts: 16628
Joined: 21 Oct 2009 15:08
Location: Россия

ASM8080 IDE

Post by Lavr »

Очень давно у меня присутствует такой вот кросс-ассемблер-дизассемблер, и взял я его,
кажется, с компакт-диска "Хакер #1".

asmide.gif
asmide.gif (9.14 KiB) Viewed 6709 times

Ассемблер-дизассемблер, довольно странненький, насколько я понимаю основные процессы у него выполняет
динамическая библиотека ASMDLL.DLL, а сам исполняемый файл ASMIDE.EXE поддерживает оболочку и
редактор, передавая в ASMDLL.DLL хэндлер своего окна (вроде бы так).

Вот что пишет в файле readme.txt сам автор этого поделия:
ASMIDE Оконная среда (Win16) кросс-ассемблера для К580
Как показали современные тесты, почему-то среда,
не работает весьма странно* под Win32.
А жалко.

Автор и разработчик Дмитрий Покровский.
В общем-то оно так и было: написан этот ASMIDE еще на VB3, и как-то я им позанимался: подсунул
в его папку VBRUN300.DLL, которая ему нужна, и CMDIALOG.VBX, которую он использует, и вдруг
этот ASMIDE неожиданно заработал! :o
Как ассемблер-дизассемблер - он так себе - средненький... в пакете "Специалист-МХ" ассемблер
и дизассемблер лучше...
И держал я этот ASMIDE просто как кросс-средство под Вендой...

Ну и вчера понадобился он мне, запускаю, а он насмерть валится при компиляции с внутренней
ошибкой! :roll:
И ничем я его заставить работать не смог... :-?
Ну я не удивился, у меня и жесткий диск падал... файлы могли испортиться...
Однако сегодня попробовал запустить этот ASMIDE снова - он вдруг работает великолепно! 8)

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

Выкладываю AS IS - на вирусы проверяйте сами, у меня он подозрения не вызывал ни у каких антивирусов,
но всё может быть... Мне просто интересно, под какими Вендами он вдруг заработает, а где и - нет...

В файле readme.txt есть и моя статистика, где я пробовал этот ASMIDE.
Attachments

asmide.zip
(286.56 KiB) Downloaded 521 times

iLavr
User avatar
Lavr
Supreme God
Posts: 16628
Joined: 21 Oct 2009 15:08
Location: Россия

Re: ASM8080 IDE

Post by Lavr »

Если у кого это ASMIDE не заработает, прошу в меня камни не кидать, ибо оно с норовом...
У меня целый день работает и работает... :lol:

assmsucs.jpg
assmsucs.jpg (65.74 KiB) Viewed 6697 times

Возможно, кому-то будет интересна эта библиотека ASMDLL.DLL, то в ней всего две функции:
ассемблировать и дизассемблировать... :wink:

Вызываются эти функции по следующему соглашению (если я чего не подзабыл...):

Code: Select all

'_______ USING 16 BIT AsmDLL.dll _______________________________________________________
' Declare Function AssemblyIt Lib "AsmDLL.dll" Alias "DoAssembly" (ByVal p1$, ByVal p2$) As Integer
' Declare Function DisassemIt Lib "AsmDLL.dll" Alias "DoDisassembly" (ByVal p1$, ByVal p2$) As Integer
'________________________________________________________________________________________
iLavr
User avatar
barsik
Doomed
Posts: 585
Joined: 19 Feb 2017 10:46
Location: Санкт-Петербург, Россия, третья планета от Солнца, галактика Млечный Путь

Post by barsik »

Попробовал этот ASMIDE.EXE в Windows XP SP3. Загрузил по "Open source..." файл MONITOR1.ASM и запустил "asssemble". Возникла надпись, что на вышеприведённой картинке, и на диске возник файл MONITOR1.BIN. Но это оказался последний успех. Больше такое не повторялось. Даже после выхода и повторного запуска. Пробовал загружать разные исходники и транслировать. Всё неудачно, выдаётся окно "Ошибка в приложении", по нажатию "Закрыть" возникает второе окно с сообщением, что возникла ошибка защиты в модуле ASMDLL.DLL.

В другой раз, уже перезагрузив Windows, удалось странслировать исходник снова и даже дважды, каждый раз перезагружая программу и тот же исходник. Но затем при попытке загрузить другой исходник программа вообще перестала загружать исходники (выдаёт окно "Can't load file"). Спустя час снова попробовал и, о чудо, снова один исходник удалось без проблем загрузить и странслировать.

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

Т.о программа вполне годится для пост-апокалипсического мира, при условии, что тогда погибнут вообще все компиляторы ассемблера 8080 и в мире останется только эта программа. Другими словами, это просто глючная программа, подлежит безжалостному удалению, а её автор заслуживает порицания. Так обычно и бывает, когда программа распространяется без сопутствующей документации, что обычно свидетельствует о несеръёзности автора..
Andy6zx
Fanat
Posts: 54
Joined: 22 Apr 2015 13:56
Location: Киров

Re: ASM8080 IDE

Post by Andy6zx »

Хоть и поздновато, но для информации: Win XP Pro 2002 SP3 RUS - Среда работает, коипилирует и сохраняет нормально и многократно. Но у меня не компилирует команду DI. Просто игнорирует и не добавляет в бинарник (команда EI компилится нормально).

Можно ли как то поправить?
User avatar
Lavr
Supreme God
Posts: 16628
Joined: 21 Oct 2009 15:08
Location: Россия

Re: ASM8080 IDE

Post by Lavr »

Если не ковырять исходник, напишите вместо DI:

Code: Select all

    DB   0F3H;  код DI, если я не ошибся...
iLavr
User avatar
Lavr
Supreme God
Posts: 16628
Joined: 21 Oct 2009 15:08
Location: Россия

Re: ASM8080 IDE

Post by Lavr »

Чисто для статистики: под Windows 7 у меня работает, не глючит и не падает... :lol:

ASM80.PNG
ASM80.PNG (42.51 KiB) Viewed 866 times

Инструкция DI действительно не компилируется, хотя в исходном коде есть.
Замена нa DB 0F3H компилируется нормально.
iLavr
Andy6zx
Fanat
Posts: 54
Joined: 22 Apr 2015 13:56
Location: Киров

Re: ASM8080 IDE

Post by Andy6zx »

Lavr wrote:Если не ковырять исходник, напишите вместо DI:

Code: Select all

    DB   0F3H;  код DI, если я не ошибся...
Спасибо! Так и делаю, но это же костыль. Я подумал, может у кого исходник сохранился и там поправить можно.
User avatar
Lavr
Supreme God
Posts: 16628
Joined: 21 Oct 2009 15:08
Location: Россия

Re: ASM8080 IDE

Post by Lavr »

Andy6zx wrote:Я подумал, может у кого исходник сохранился и там поправить можно.
Нет, исходников у меня нет и не было, здесь выложено всё, что было.
Ну и поскольку я всё же глянул в код HEX-редактором, мне кажется, что и у автора исходника не было.
ASMDLL.DLL написана на Borland C++, a оболочка с редактором - на VB 3.0.
Похоже, автор только оболочку и написал со встроенным компонентом "редактор".
iLavr
Andy6zx
Fanat
Posts: 54
Joined: 22 Apr 2015 13:56
Location: Киров

Re: ASM8080 IDE

Post by Andy6zx »

Оно ещё и EQU не понимает :( Совсем какая то версия ассемблера учебная похоже.
User avatar
Lavr
Supreme God
Posts: 16628
Joined: 21 Oct 2009 15:08
Location: Россия

Re: ASM8080 IDE

Post by Lavr »

Andy6zx wrote:Оно ещё и EQU не понимает :( Совсем какая то версия ассемблера учебная похоже.
Я им сильно не пользовался, но бывает, что ассемблер EQU не понимает.
У меня на работе есть такой экземпляр, вместо EQU предпочитает запись:
CONST PORT_A 0FFE0H

Тем не менее, я проверил из интересу, директиву EQU
этот ассемблер вполне правильно понимает:

DIREQU.PNG
DIREQU.PNG (63.8 KiB) Viewed 740 times

iLavr
Andy6zx
Fanat
Posts: 54
Joined: 22 Apr 2015 13:56
Location: Киров

Re: ASM8080 IDE

Post by Andy6zx »

Ага. Символьное обозначение должно оканчиваться ":" (как метки), тогда работает.
Попробовал скомпилить таблицу всех команд процессора. Скомпилировалось нормально, но надо ещё проверить, всё ли правильно.
Last edited by Andy6zx on 15 Nov 2024 02:47, edited 1 time in total.
User avatar
Lavr
Supreme God
Posts: 16628
Joined: 21 Oct 2009 15:08
Location: Россия

Re: ASM8080 IDE

Post by Lavr »

Вы таки будете смеяться, но у меня он, наконец, рухнул... :ebiggrin:

ASM81.PNG
ASM81.PNG (105.66 KiB) Viewed 662 times

Вчера, минут так через 10 после последнего поста. :wink:
И до сих пор не оживает, выпадая с одинаковой ошибкой.

А у Вас что-то подозрительно долго работает, не падая! :roll:
iLavr
Andy6zx
Fanat
Posts: 54
Joined: 22 Apr 2015 13:56
Location: Киров

Re: ASM8080 IDE

Post by Andy6zx »

Lavr wrote: А у Вас что-то подозрительно долго работает, не падая! :roll:
Сам удивляюсь. На всякий случай DLLку разместил в system32 и зарегистрировал.
User avatar
Lavr
Supreme God
Posts: 16628
Joined: 21 Oct 2009 15:08
Location: Россия

Re: ASM8080 IDE

Post by Lavr »

Andy6zx wrote:
Lavr wrote:А у Вас что-то подозрительно долго работает, не падая! :roll:
Сам удивляюсь. На всякий случай DLLку разместил в system32 и зарегистрировал.
В общем-то особо удивляться-то и нечему, у Вас - Win XP Pro 2002 SP3 RUS.
Оболочка ASMIDE.EXE и библиотека ASMDLL.DLL - 16-разрядные приложения.
По разным источникам, я посмотрел, пишут: под Win XP большая вероятность,
что 16-разрядное приложение будет работать.
А вот под Win 7, как у меня, - скорее всего нет. Так что ASMIDE.EXE делала мне исключение. :wink:

Но самая неприятная ситуация в том, что и под Win 98 эта программа себя непредсказуемо вела.

Я уж тут подумал, что выкаблучиваться она, возможно, перестанет, если включать её под
DOS BOX с установленной там Win 3.11. :lol:
iLavr
User avatar
Lavr
Supreme God
Posts: 16628
Joined: 21 Oct 2009 15:08
Location: Россия

Re: ASM8080 IDE

Post by Lavr »

Lavr wrote:Но самая неприятная ситуация в том, что и под Win 98 эта программа себя непредсказуемо вела.
Чисто уже из спортивного интереса перезагрузил ноутбук (чего я обычно не делаю,
просто закрываю крышку).
Программа запустилась и благополучно скомпилировала один файл.
Второй файл скомпилировать уже не смогла, благополучно рухнув.

В общем совершенно непонятно в какой момент она ловит глюки.
В реестре никаких записей о программе не нашел, думал, может Венда как-то вмешивается.
iLavr
Post Reply