Какой кросс-ассемблер выбрать? SjASMPlus или всё-таки zmac

Микропроцессоры и микроконтроллеры от фирмы Zilog, а также компьютеры на них построенные

Moderator: Shaos

User avatar
Shaos
Admin
Posts: 25092
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Re: Какой cross-asm выбрать? SjASMPlus или всё-таки zmac

Post by Shaos »

shiny wrote:
Shaos wrote:а я буду оставаться в рамках нашей старой-доброй версии 1.33 :mrgreen:
поздравляю, это второй недоассемблер.
а какой был первый? :lol:
User avatar
shiny
Maniac
Posts: 324
Joined: 14 Oct 2023 06:59

Re: Какой cross-asm выбрать? SjASMPlus или всё-таки zmac

Post by shiny »

похоже, что для pdp-11.
Mondx
Devil
Posts: 667
Joined: 10 Aug 2022 07:27
Location: Crimea

Re: Какой cross-asm выбрать? SjASMPlus или всё-таки zmac

Post by Mondx »

Mondx wrote:
shiny wrote:Кстати, раз на ужасме сидят некоторые кодеры,то zasm проглотит

Code: Select all

 push af,bc,de,hl
 inc de,hl
?
Макроассемблер проглотит, если оформить:

Code: Select all

pushr	MACRO	str		;;push registers
	  IFNB	<str>
	 IRP	src,<str>
	push	src
	 ENDM
	  ENDIF
	ENDM
Shaos wrote:Это извращение какое-то :)
Это правильный макроассемблер.)
Alekcandr
Devil
Posts: 745
Joined: 01 Oct 2007 10:30
Location: Ukraine

Re: Какой кросс-ассемблер выбрать? SjASMPlus или всё-таки zmac

Post by Alekcandr »

Нашел для себя современную замену непревзойденному ассемблеру M80 и это Nestor80.
Тестировал на 10-ти этажных макросах M80.

 test.asm

Code: Select all

        .Z80
        ASEG
        ORG     0100H


_LD     MACRO   O1,O2
        LD      O1,O2
        MK
        ENDM

MK      MACRO
        MK1     %(MK_COU)
        ENDM

MK1     MACRO   AA
MKP&AA  EQU     $-501H
MK_COU  ASET    MK_COU+1
        ENDM

RELW    MACRO   DD
        DEFW    MKP&DD
        ENDM

        IF1
MK_COU  ASET    1
        ENDIF


        JP      J.0500

; relocation table

I$0103:

        IF2

TT_COU  ASET    MK_COU
MKP_2   ASET    1

        REPT    TT_COU-1
        RELW    %(MKP_2)
MKP_2   ASET    MKP_2+1
        ENDM
        
        DEFW    0
MK_COU  ASET    1

        ENDIF


        DEFS    0500H-$,0


J.0500: _LD     SP,I.1A00
        _LD     (D$1A13),HL
        JR      $


I.1A00: DEFS    19
D$1A13: DEFS    2

        END

Эмулятор OrionEXT:
http://www.orion-ext.narod.ru
Mondx
Devil
Posts: 667
Joined: 10 Aug 2022 07:27
Location: Crimea

Re: Какой кросс-ассемблер выбрать? SjASMPlus или всё-таки zmac

Post by Mondx »

Где local, IRP/IRPC в тесте? Ещё и NET framework нужен? Ужос.
Тут ещё величина внутренних буферов важна. Столкнулся с этой проблемой у М80 при большом кол-ве макро.
Всегда!
Alekcandr
Devil
Posts: 745
Joined: 01 Oct 2007 10:30
Location: Ukraine

Re: Какой кросс-ассемблер выбрать? SjASMPlus или всё-таки zmac

Post by Alekcandr »

Mondx wrote: 06 Apr 2026 21:39 Где local, IRP/IRPC в тесте?
Local, IRP/IRPC поддерживается.
Mondx wrote: 06 Apr 2026 21:39Ещё и NET framework нужен? Ужос.
Что касается NET framework или что-либо не устраивает по каким-то причинам, проект открытый, перепишите на любой язык, да хоть на бейсик ;-)
Эмулятор OrionEXT:
http://www.orion-ext.narod.ru
Alekcandr
Devil
Posts: 745
Joined: 01 Oct 2007 10:30
Location: Ukraine

Re: Какой кросс-ассемблер выбрать? SjASMPlus или всё-таки zmac

Post by Alekcandr »

Нашел еще одну замену М80 в этот раз на питоне um80_and_friends. Продукт сыроват. С моим участием удалось собрать достаточно сложный исходник command.mac от MSX-DOS.

Приобщайтесь к тестированию.
Эмулятор OrionEXT:
http://www.orion-ext.narod.ru
Alekcandr
Devil
Posts: 745
Joined: 01 Oct 2007 10:30
Location: Ukraine

Re: Какой кросс-ассемблер выбрать? SjASMPlus или всё-таки zmac

Post by Alekcandr »

Mondx wrote: 06 Apr 2026 21:39 Ещё и NET framework нужен? Ужос.
Кстати, с исходников на C# можно и нативный бинарник собрать хоть под Windows, хоть под Linux, если сильно не увлекаться особенностями C#.
Эмулятор OrionEXT:
http://www.orion-ext.narod.ru
Mondx
Devil
Posts: 667
Joined: 10 Aug 2022 07:27
Location: Crimea

Re: Какой кросс-ассемблер выбрать? SjASMPlus или всё-таки zmac

Post by Mondx »

Есть ещё МА80 под ДОС. Насколько лучше, сложно сказать. Но М80 уже покрывает, хотя и баги присутствуют.
Alekcandr
Devil
Posts: 745
Joined: 01 Oct 2007 10:30
Location: Ukraine

Re: Какой кросс-ассемблер выбрать? SjASMPlus или всё-таки zmac

Post by Alekcandr »

Mondx wrote: 03 Jun 2026 05:13 Есть ещё МА80 под ДОС. Насколько лучше, сложно сказать. Но М80 уже покрывает, хотя и баги присутствуют.
Очень много этих ассемблеров развелось по делу и без, и что-то с этим надо делать.

Так вот, мне окончательно надоело прыгать между разными ассемблерами и разбираться каждый раз по-новому с необузданной фантазией в каждом ассемблере.
Взял я исходники ассемблера на си от HI-TECH v3.09 ну и перевел на C#. Внес необходимые мне изменения как-то режим "плоского" ассемблера, поддержку необходимого мне синтаксиса макросов от M80, локальные метки, директивы и всякое по мелочи.

Теперь у меня свой ассемблер на все случаи жизни для меня, плюс линкер с пристрелом на язык си :)

P.S. Очень интересно было изучать код си из 80-х, открыл для себя много нового.
Эмулятор OrionEXT:
http://www.orion-ext.narod.ru
imsushka
Doomed
Posts: 394
Joined: 01 Jan 2022 04:34
Location: USSR, Tashkent

Re: Какой кросс-ассемблер выбрать? SjASMPlus или всё-таки zmac

Post by imsushka »

Alekcandr wrote: 03 Jun 2026 11:30
Mondx wrote: 03 Jun 2026 05:13 Есть ещё МА80 под ДОС. Насколько лучше, сложно сказать. Но М80 уже покрывает, хотя и баги присутствуют.
Очень много этих ассемблеров развелось по делу и без, и что-то с этим надо делать.

Так вот, мне окончательно надоело прыгать между разными ассемблерами и разбираться каждый раз по-новому с необузданной фантазией в каждом ассемблере.
Взял я исходники ассемблера на си от HI-TECH v3.09 ну и перевел на C#. Внес необходимые мне изменения как-то режим "плоского" ассемблера, поддержку необходимого мне синтаксиса макросов от M80, локальные метки, директивы и всякое по мелочи.

Теперь у меня свой ассемблер на все случаи жизни для меня, плюс линкер с пристрелом на язык си :)

P.S. Очень интересно было изучать код си из 80-х, открыл для себя много нового.
Вот нах..на? надо нормальный проги писать. МАЛЕНЬКИЕ. и что б работало на XP, 7 или даже ДОСе
а не на 11, 12 винде только
Alekcandr
Devil
Posts: 745
Joined: 01 Oct 2007 10:30
Location: Ukraine

Re: Какой кросс-ассемблер выбрать? SjASMPlus или всё-таки zmac

Post by Alekcandr »

imsushka wrote: 03 Jun 2026 11:50 Вот нах..на? надо нормальный проги писать. МАЛЕНЬКИЕ. и что б работало на XP, 7 или даже ДОСе
а не на 11, 12 винде только
Что бы маленькие проги писать надо прикладывать значительно больше усилий. Соглашусь, что в некоторых случаях это просто необходимо. А в этом случае зачем? Ассемблер не бином Ньютона и на дворе не 80-е прошлого века.

P.S. Зачем мне воспроизводить логику хэш-таблиц с нуля? Когда в C# это делается в одну строку.
Эмулятор OrionEXT:
http://www.orion-ext.narod.ru
Alekcandr
Devil
Posts: 745
Joined: 01 Oct 2007 10:30
Location: Ukraine

Re: Какой кросс-ассемблер выбрать? SjASMPlus или всё-таки zmac

Post by Alekcandr »

И да. Тут я планирую получить еще один профит для себя со своим ассемблером. Это затягивание выходных структурированных данных из ассемблера в дебаггер своего инструментального эмулятора всяких разных компов из 80-х.
Эмулятор OrionEXT:
http://www.orion-ext.narod.ru
imsushka
Doomed
Posts: 394
Joined: 01 Jan 2022 04:34
Location: USSR, Tashkent

Re: Какой кросс-ассемблер выбрать? SjASMPlus или всё-таки zmac

Post by imsushka »

Alekcandr wrote: 03 Jun 2026 12:08
imsushka wrote: 03 Jun 2026 11:50 Вот нах..на? надо нормальный проги писать. МАЛЕНЬКИЕ. и что б работало на XP, 7 или даже ДОСе
а не на 11, 12 винде только
Что бы маленькие проги писать надо прикладывать значительно больше усилий. Соглашусь, что в некоторых случаях это просто необходимо. А в этом случае зачем? Ассемблер не бином Ньютона и на дворе не 80-е прошлого века.

P.S. Зачем мне воспроизводить логику хэш-таблиц с нуля? Когда в C# это делается в одну строку.
вот я и сижу на TASMе, который универсальный под разные процы.
SjASMxxxx - одна версия не запускается, винда не 10. другая - длл нету какой то.
еще какие то АСМы - тоже только под 10ку