PC-01 Lviv

It is currently 28 Mar 2024, 20:31

Forum Games WEB Tape Loader Twitter RSS

All times are UTC+03:00




Post new topic  Reply to topic  [ 29 posts ]  Go to page Previous 1 2
Author Message
 Post subject: Re: Ассемблеры
PostPosted: 06 Jun 2012, 11:09 
Offline

Joined: 20 Apr 2012, 16:00
Posts: 372
Location: Конотоп
Quote:
...версия Андрея Лебедева, которые тоже можно посмотреть.
Жму на сслыку http://vector06c.narod.ru/source/bolder_and_secrets.zip
а она у меня не скачивается...
liberation, вышли плиз мылом


Top
   
 Post subject: Re: Ассемблеры
PostPosted: 06 Jun 2012, 11:24 
Offline

Joined: 20 Apr 2012, 16:00
Posts: 372
Location: Конотоп
Code:
0023   0010             
0024   0010 44          _IMUL:   MOV B,H
0025   0011 4D             MOV C,L
0026   0012 21 00 00       LXI H,0
0027   0015 3E 11          MVI A,17
0028   0017 3D          _IMUL1:   DCR A
0029   0018 C8             RZ
0030   0019 29             DAD H
0031   001A EB             XCHG
0032   001B 29             DAD H
0033   001C EB             XCHG
0034   001D D2 17 00       JNC _IMUL1
0035   0020 09             DAD B
0036   0021 C3 17 00       JMP _IMUL1
0037   0024             
0038   0024 7B          _IXOR:   MOV A,E
Еще один момент не пойму...
Дак а что номер строки в ДЕСятичн. а адре в в Шестнадцатеричном формате? (и байты в шестнад)
Странно как-то...


Top
   
 Post subject: Re: Ассемблеры
PostPosted: 06 Jun 2012, 11:38 
Offline
Site Admin
User avatar

Joined: 24 Jul 2008, 12:05
Posts: 1070
sas9568635
Quote:
а она у меня не скачивается...
Странно, у меня скачивается. Попробуйте правой кнопкой и "save link as..."
Quote:
номер строки в ДЕСятичн. а адре в в Шестнадцатеричном формате
Вполне стандартный подход. Строки текстового редактора никогда не нумеруют в шестнадцатиричной.


Top
   
 Post subject: Re: Ассемблеры
PostPosted: 06 Jun 2012, 11:49 
Offline

Joined: 29 Mar 2012, 21:35
Posts: 115
Quote:
Еще один момент не пойму...
Дак а что номер строки в ДЕСятичн. а адре в в Шестнадцатеричном формате? (и байты в шестнад)
Странно как-то...
Листинг делается обычно для человека.
А ему удобнее знать номер строки в десятичном виде (чтобы искать в текстовом редакторе, где номер строки также десятичный).
А про адрес и коды объяснять, надеюсь, не надо. :)


Top
   
 Post subject: Re: Ассемблеры
PostPosted: 06 Jun 2012, 12:26 
Offline
User avatar

Joined: 11 Aug 2008, 17:05
Posts: 1405
Location: Украина
Quote:
Жму на сслыку [...], а она у меня не скачивается...
Закинул исходники BD в файловое хранилище [открыть]. :)

_________________
Carthago delenda est, Carthaginem delendam esse


Top
   
 Post subject: Re: Ассемблеры
PostPosted: 06 Jun 2012, 14:39 
Offline

Joined: 20 Apr 2012, 16:00
Posts: 372
Location: Конотоп
Ну вот "склепал".. Надо проверить... http://sas.forumbb.ru/viewtopic.php?id=287
При поверхностной проверке вроде все в порядке, хотя когда я листинг-файл(CAVE.LVT.01.asm.lst) которой от (CAVE.LVT) "подтянул" в "Башкирию" этот файл он почему-то не запустился вручную в эмуляторе т.е. по команде "Def usr=35832: x=usr(x)". Может я чего не так делал и делаю, а может есть место ошибкам, причем грубым.. Прошу помощи, раз это действительно будет нужно как говорил b2m :P :D

Еще интересный момент...
"Номер строки" выравнивается на 4 знака т.е. 0000,
а как быть с файлами которые 65000 строк, например?.. - ведь будет смещение... после 9999 ...иль это неважно?...
может всетаки выравнивать номер строки на 00000?...


Top
   
 Post subject: Re: Ассемблеры
PostPosted: 06 Jun 2012, 14:52 
Offline

Joined: 20 Apr 2012, 16:00
Posts: 372
Location: Конотоп
Quote:
слушай, а может сделать так, чтобы асм "заганял" ассемлируемую прогу в твой EMU-формат, но не запускал
Quote:
Что-то как-то сложно. Хотя я ничего не имею против. Берёшь в качестве шаблона записанный эмулятором файл, и изменяешь нужные байты памяти. Другое дело, что смещение может измениться, если изменить конфиг. Там в .emu весь обработанный конфиг хранится, плюс состояние компонентов конфига.
Да я уже понял, когда дизасм стал невсегда файлы EMU дизасемблировать правильно...
при жесткой зацепке за 1357 байт в файле EMU, как за начало памяти...
А можна ли зацепится вот так:
Найти (файле EMU) первую "memory"
+ поправка_несколько_байт
- это и будет начало памяти?...


Top
   
 Post subject: Re: Ассемблеры
PostPosted: 06 Jun 2012, 15:14 
Offline

Joined: 29 Mar 2012, 21:35
Posts: 115
Quote:
хотя когда я листинг-файл(CAVE.LVT.01.asm.lst) которой от (CAVE.LVT) "подтянул" в "Башкирию" этот файл он почему-то не запустился вручную в эмуляторе
При загрузке листинга память не меняется, т.е. нужно сначала загрузить .lvt как обычно, а затем в отладчике "подключить" листинг. Листинг влияет только на окно дизассемблера, т.е. вместо дизассемблирования будут показаны строки из листинга (при условии, что байты совпадают).
Quote:
"Номер строки" выравнивается на 4 знака т.е. 0000,
а как быть с файлами которые 65000 строк, например?.. - ведь будет смещение... после 9999 ...иль это неважно?...
может всетаки выравнивать номер строки на 00000?...
Я уже говорил, номер строки не используется, главное - чтобы после него был минимум один пробел (но можно и больше, т.е. выравнивать адрес за счёт количества пробелов).
Quote:
А можна ли зацепится вот так:
Найти (файле EMU) первую "memory"
+ поправка_несколько_байт
- это и будет начало памяти?...
Можно и так. Вряд-ли в файле встретится такая строка до содержимого памяти.
После слова memory будет 4 байта (длина блока памяти), а затем сама память.


Top
   
 Post subject: Re: Ассемблеры
PostPosted: 06 Jun 2012, 15:17 
Offline
Site Admin
User avatar

Joined: 24 Jul 2008, 12:05
Posts: 1070
Quote:
т.е. выравнивать адрес за счёт количества пробелов
Табуляция же! Все выравнивается автоматически!


Top
   
 Post subject: Re: Ассемблеры
PostPosted: 06 Jun 2012, 15:23 
Offline

Joined: 29 Mar 2012, 21:35
Posts: 115
Quote:
Табуляция же! Все выравнивается автоматически!
А вот символ табуляции использовать не рекомендую :)


Top
   
 Post subject: Re: Ассемблеры
PostPosted: 06 Jun 2012, 15:35 
Offline

Joined: 20 Apr 2012, 16:00
Posts: 372
Location: Конотоп
Quote:
Quote:
Табуляция же! Все выравнивается автоматически!
А вот символ табуляции использовать не рекомендую :)
Да я его и не использую... :-)
Хотя в моем асме при ассемблировании и "встрече" кода 09 - он "понимает" его как разделитель, как тотже "пробел"... :-)

Поэтому пользователи моим асмом, могут вместо "пробела" смело пользоваться "табом"... :-):-):-)
Да людей с больн... т.е с широкой фантазией, мой асм в таком - очень даже подойдет !!!:-):-):-)


Top
   
 Post subject: Re: Ассемблеры
PostPosted: 06 Jun 2012, 15:44 
Offline
User avatar

Joined: 11 Aug 2008, 17:05
Posts: 1405
Location: Украина
Quote:
Еще интересный момент...
"Номер строки" выравнивается на 4 знака т.е. 0000,
а как быть с файлами которые 65000 строк, например?.. - ведь будет смещение... после 9999 ...иль это неважно?...
может всетаки выравнивать номер строки на 00000?...
Если я не ошибаюсь, то общее правило таково: ширина поля должна быть кратна 4-м или 8-м символам. Резервируйте под номера строк восемь символов, делайте выравнивание по правому краю, пустые символы забивайте пробелами и все будет хоккей.

_________________
Carthago delenda est, Carthaginem delendam esse


Top
   
 Post subject: Re: Ассемблеры
PostPosted: 06 Jun 2012, 17:38 
Offline

Joined: 20 Apr 2012, 16:00
Posts: 372
Location: Конотоп
Quote:
Ну вот "склепал".. Надо проверить... http://sas.forumbb.ru/viewtopic.php?id=287
...а может есть место ошибкам, причем грубым.. Прошу помощи, раз это действительно будет нужно как говорил b2m :P :D
Почему молчим?... :-) Кто нить скачивал?... Смотрел?... Ну... И что не так?...


Top
   
 Post subject: Re: Ассемблеры
PostPosted: 28 Jul 2020, 14:05 
Offline

Joined: 07 Dec 2010, 16:54
Posts: 227
Раз тема про ассемблеры в целом, то прикреплю конвертер из внутренного представления какого-то Львовского ассемблера в текстовое.
Перебирал файлы и нашёл исходник программатора, в своё время этот файл был помечен как "неизвестный". В принципе, так оно и есть, исходные тексты у этого ассемблера в токенизированной форме, токенами служат коды команд, неизвестные опкоды выступают служебными директивами.
Сказать что-то точнее не могу. Мне повезло, т.к. рядом лежали как исходник так и его скомпилированная форма, это и позволило написать конвертер.

Авось кому пригодится, если исходники у кого-то ещё сохранились в файловой форме и было непонятно что с ними делать.

o32asm.pl это сам конвертер
o32asm.txt это пример работы (исходный текст какого-то программатора, брался тут: warez-d4.rar\ARCHIVE\SYSTEM.BIN\O32.LV0)


Attachments:
File comment: "Assembler source converter" (C) 28-Jul-2020y by *HW*
o32asm.zip [5.57 KiB]
Downloaded 714 times
Top
   
Display posts from previous:  Sort by  
Post new topic  Reply to topic  [ 29 posts ]  Go to page Previous 1 2

Forum Games WEB Tape Loader Twitter RSS

All times are UTC+03:00


Who is online

Users browsing this forum: No registered users and 1 guest


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

Search for:
cron
Powered by phpBB® Forum Software © phpBB Limited