nedoPC.org

Electronics hobbyists community established in 2002
Atom Feed | View unanswered posts | View active topics It is currently 27 Apr 2024 12:34



Reply to topic  [ 165 posts ]  Go to page Previous  1 ... 7, 8, 9, 10, 11  Next
Дизассемблер Yozh 
Author Message
Fanat

Joined: 21 Feb 2017 06:54
Posts: 79
Location: Казань
Reply with quote
Попрактиковался немного в ассемблере PDP11asm85, использовал свой текст, набранный в ассемблере RK86.ru , не сразу но получилось скомпилировать. Этот ассемблер не принимает такое выражение MVI A, 08 , пока не исправил его на MVI A, 08h .
Перекомпилировал YOZH для Специалиста , получилось сразу и вот, теперь и на Специалисте работает :

Attachment:
YosHSp_dizassm.jpg
YosHSp_dizassm.jpg [ 82.88 KiB | Viewed 617 times ]


22 Feb 2024 13:39
Profile
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22606
Location: Silicon Valley
Reply with quote
круто :mrgreen:

_________________
:dj: https://mastodon.social/@Shaos


22 Feb 2024 18:50
Profile WWW
Fanat

Joined: 21 Feb 2017 06:54
Posts: 79
Location: Казань
Reply with quote
Задам здесь вопрос про ассемблер PDP11asm85, у него в самом хвосте добавляется строка :

make_radio86rk_rom "yozh.rkr"

т.е. он добавляет в БИН файл коды, превращающие его в RKR магнитофонный файл.
если в асме ОРГ 0000 - то все нормально, файл правильный

но если стоит например ORG 3800h , те не с нуля, то RKR файл делается все равно с 0000h , добавляя с 0000 по 3800 коды 00
и длина файла увеличивается на 15К

почему он так делает ?


27 Feb 2024 11:42
Profile
Senior
User avatar

Joined: 14 Oct 2023 06:59
Posts: 139
Reply with quote
а нет ли бинаря со всеми опкодами для теста дизассемблера?

_________________
uselessretro.blogspot.com


28 Feb 2024 11:14
Profile
Doomed

Joined: 25 Aug 2009 07:02
Posts: 460
Location: Москва
Reply with quote
shiny wrote:
а нет ли бинаря со всеми опкодами для теста дизассемблера?

/dev/urandom попросите такой бинарь сделать :)
Достаточной длины. Или несколько разных. Там будет больше, чем просто все опкоды.
Дизасм должен без замечаний отрабатывать любой ввод, иначе он не может называться инструментом.


28 Feb 2024 13:17
Profile
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22606
Location: Silicon Valley
Reply with quote
shiny wrote:
а нет ли бинаря со всеми опкодами для теста дизассемблера?
Так вот жеж
vital72 wrote:
также я добавил файл i8080.bin.rk для проверки дизассемблирования всех инструкций, включая инструкции 8085, он загружается по адресу 1000H.
чтобы его дизассемблировать надо в HL загрузить 1000H, в DE 1163H
Я этот блоб совмещённый с дизассемблером выкладываю каждый раз в архиве Yozh - например тут и тут (в последнем случае я приложил его 2 раза - один раз с дизассемблером 8085 yozh0005-i8085.rkr и другой - только с определением 8080 инструкций yozh0005-i8080.rkr)

_________________
:dj: https://mastodon.social/@Shaos


28 Feb 2024 20:17
Profile WWW
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22606
Location: Silicon Valley
Reply with quote
Damir wrote:
Задам здесь вопрос про ассемблер PDP11asm85, у него в самом хвосте добавляется строка :

make_radio86rk_rom "yozh.rkr"

т.е. он добавляет в БИН файл коды, превращающие его в RKR магнитофонный файл.
если в асме ОРГ 0000 - то все нормально, файл правильный

но если стоит например ORG 3800h , те не с нуля, то RKR файл делается все равно с 0000h , добавляя с 0000 по 3800 коды 00
и длина файла увеличивается на 15К

почему он так делает ?

Поглядел исходник - да, там нужно задавать аргументы, если начало не с нуля - start и опционально stop (если второй не задавать, то он его посчитает сам - также как если совсем без аргументов писать):
Code:
  if(p.ifToken("make_radio86rk_rom"))
  {
        p.needToken(ttString2);
        Parser::TokenText fileName;
        strcpy(fileName, p.loadedText);
        size_t start = 0, stop = out.writePtr;
        if(p.ifToken(","))
        {
            start = ullong2size_t(readConst3());
            if(p.ifToken(",")) stop = ullong2size_t(readConst3());
        }
        if(step2)
        {
            if(stop<=start || stop>sizeof(out.writeBuf)) p.syntaxError();
            size_t length = stop - start;
            char error_buf[256];
            if(!make_radio86rk_rom(fileName, start, out.writeBuf+start, length, error_buf, sizeof(error_buf)))
                p.syntaxError(error_buf);
            lstWriter.writeFile(fileName);
        }
        return true;
  }

_________________
:dj: https://mastodon.social/@Shaos


28 Feb 2024 20:23
Profile WWW
Senior
User avatar

Joined: 14 Oct 2023 06:59
Posts: 139
Reply with quote
Mixa64 wrote:
/dev/urandom попросите такой бинарь сделать :)
Достаточной длины. Или несколько разных. Там будет больше, чем просто все опкоды.
Дизасм должен без замечаний отрабатывать любой ввод, иначе он не может называться инструментом.


и как это я сразу не догадался?


Attachments:
8080op.zip [2.87 KiB]
Downloaded 17 times

_________________
uselessretro.blogspot.com
28 Feb 2024 21:58
Profile
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22606
Location: Silicon Valley
Reply with quote
а как проверить, что там всё ок надекодилось? 8)

_________________
:dj: https://mastodon.social/@Shaos


28 Feb 2024 22:39
Profile WWW
Senior
User avatar

Joined: 14 Oct 2023 06:59
Posts: 139
Reply with quote
Shaos wrote:
а как проверить, что там всё ок надекодилось? 8)

Там это где?
скормил бинарь онлайн-дизассемблеру, который упоминался в разделе. Визуально код норм, но последние 5 байт неверны. Dasmx 1.40 обработал корректно, сравнил с исходником Telemark Assembler.
Других способов я не знаю.

_________________
uselessretro.blogspot.com


28 Feb 2024 23:09
Profile
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22606
Location: Silicon Valley
Reply with quote
там - это в случайно нагенерённой последовательности
если есть другие эталонные дизасмы, то это хорошо

_________________
:dj: https://mastodon.social/@Shaos


28 Feb 2024 23:42
Profile WWW
Senior
User avatar

Joined: 14 Oct 2023 06:59
Posts: 139
Reply with quote
Shaos wrote:
там - это в случайно нагенерённой последовательности
если есть другие эталонные дизасмы, то это хорошо


Вооот) Поэтому и спросил набор опкодов - хватит для начальной отладки.

_________________
uselessretro.blogspot.com


28 Feb 2024 23:46
Profile
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22606
Location: Silicon Valley
Reply with quote
shiny wrote:
Shaos wrote:
там - это в случайно нагенерённой последовательности
если есть другие эталонные дизасмы, то это хорошо


Вооот) Поэтому и спросил набор опкодов - хватит для начальной отладки.

А он тут пролетааал :lol:
см. выше:
http://www.nedopc.org/forum/viewtopic.php?p=172617#p172617

_________________
:dj: https://mastodon.social/@Shaos


28 Feb 2024 23:47
Profile WWW
Senior
User avatar

Joined: 17 Jun 2014 04:29
Posts: 138
Location: 93.80.157.217
Reply with quote
shiny wrote:
скормил бинарь онлайн-дизассемблеру, который упоминался в разделе. Визуально код норм, но последние 5 байт неверны. Dasmx 1.40 обработал корректно, сравнил с исходником Telemark Assembler.
Других способов я не знаю.


а какой онлайн-дизассемблер упоминался? я, вроде, свой не упоминал, если речь о нём и в нём всё нормально.

_________________
https://radio-86rk.ru
кто я такой, чтобы спорить с самим собой


29 Feb 2024 06:48
Profile WWW
Senior
User avatar

Joined: 14 Oct 2023 06:59
Posts: 139
Reply with quote
vital72 wrote:
shiny wrote:
скормил бинарь онлайн-дизассемблеру, который упоминался в разделе. Визуально код норм, но последние 5 байт неверны. Dasmx 1.40 обработал корректно, сравнил с исходником Telemark Assembler.
Других способов я не знаю.


а какой онлайн-дизассемблер упоминался? я, вроде, свой не упоминал, если речь о нём и в нём всё нормально.

https://86rk.ru/disassm/

меня это смутило


Attachments:
2024-02-29_181025.jpg
2024-02-29_181025.jpg [ 75.92 KiB | Viewed 368 times ]

_________________
uselessretro.blogspot.com
29 Feb 2024 08:19
Profile
Display posts from previous:  Sort by  
Reply to topic   [ 165 posts ]  Go to page Previous  1 ... 7, 8, 9, 10, 11  Next

Who is online

Users browsing this forum: Hammer and 68 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

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Group
Designed by ST Software.