Важная информация

User Tag List

Страница 1 из 3 123 ПоследняяПоследняя
Показано с 1 по 10 из 27

Тема: Ассемблер для 8080

Комбинированный просмотр

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1
    Member
    Регистрация
    02.07.2010
    Адрес
    Запорожье
    Сообщений
    65
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию Ассемблер для 8080

    Tomasz Grysztar - автор ассемблера fasm, написал новый: fasmg. Он не привязан к конкретной архитектуре и может быть настроен под любой процессор при помощи макросов.

    В комплекте идет поддержка 8051, AVR (сыроватая) и Java-машины.
    Я написал для него макросы для 8080/8085 и 8048
    Есть еще и для 6502.

    Есть версии для винды и для линукса.
    Взять fasmg можно здесь (в самом низу).
    Приятного ассемблирования!
    Последний раз редактировалось shoorick; 09.02.2016 в 17:31.

  2. #1
    С любовью к вам, Yandex.Direct
    Размещение рекламы на форуме способствует его дальнейшему развитию

  3. #2
    Activist Аватар для san010101
    Регистрация
    18.11.2015
    Адрес
    г. Красноярск
    Сообщений
    271
    Спасибо Благодарностей отдано 
    19
    Спасибо Благодарностей получено 
    2
    Поблагодарили
    2 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    немогли бы вы полный пакет предоставить, архивом со всеми настройками?
    Я попробовал новый include установить но не что то не получилось.

    - - - Добавлено - - -

    Пробую применить ваши макросы для ЮТ-88 в минимальной конфигурации. В старой версии 8080 asm запускался, теперь нет. К тому же готовый файл приходилось запускать не через WinASM Studio и эмулятор, а отдельно.
    В виде командного файла например (emu ut88test.rku)

  4. #3
    Veteran Аватар для zebest
    Регистрация
    11.01.2008
    Адрес
    Ладошкино
    Сообщений
    1,668
    Записей в дневнике
    4
    Спасибо Благодарностей отдано 
    320
    Спасибо Благодарностей получено 
    221
    Поблагодарили
    174 сообщений
    Mentioned
    7 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от san010101 Посмотреть сообщение
    немогли бы вы полный пакет предоставить, архивом со всеми настройками?
    Плюсую. Для чайников, желательно с парочкой примеров типа "Hello, World!?"
    Profi v3.2 -=- Speccy2010,r2

  5. #4
    Member
    Регистрация
    02.07.2010
    Адрес
    Запорожье
    Сообщений
    65
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Да, постараюсь побыстрее, но как получится. Прикладываюсь к этому делу урывками...
    В общем случае:
    fasmg myfile.asm myfile.bin
    В исходнике на первом месте должен быть включен файл 8085.inc
    Если включить в исходник файл rks.inc и поставить в начале кода макрос RKS_START, а в конце RKS_END, то к бинарнику добавится заголовок с начальным и конечным адресом (как на магнитной ленте), а в конце - 2 байта, имитирующие контрольную сумму (эмулятор ее не проверяет, но ожидает )
    проще всего положить все в одну папку: fasmg, 8085.inc, rks.inc и исходник - и собрать в командной строке.
    а проект для WinAsm Studio придется настроить, это я сделаю

    - - - Добавлено - - -

    вот вам привет для начала.
    для линукса файлам fasmg и build сначала установить признак "исполняемый"

    - - - Добавлено - - -

    так, стоп!
    хорошо, что я скачал зип с форума фасма...
    я туда почему-то старый архив залил (или он не заменился) - там старая версия. в принципе там все работает, кроме условных возвратов и есть проблема с использованиям $... в понедельник исправлю.

    - - - Добавлено - - -

    спасибо хорошему человеку, который выложил rku не в раре

    напоминаю, что при записи на ленту специалист, в отличие от рк86 и остальных подобных, писал в заголовках сначала младший байт адреса, а потом старший. поэтому пользователям ЮТ, РК86 и т.д. рекомендую использовать вместо rks.inc rk.inc с таким содержимым (формат fasmg):
    Код:
    ;=======================================================================
    ;     Macros to create tape header and tail
    ;     for emulator of some soviet computers 
    ;-----------------------------------------------------------------------
    macro RK_START? rk_org:0 
      db  rk_org  shr 8  
      db  rk_org  and 255  
      db  rk_end_ shr 8
      db  rk_end_ and 255
      org rk_org
    end macro  
    ;-----------------------------------------------------------------------
    macro RK_END?
      rk_end_ = $ - 1
      dw  0
    end macro     
    ;=======================================================================
    macro ENDM? top:65535
        if $>top
            err "out of memory limit"
        end if
    end macro
    ;=======================================================================
    либо (формат fasm - не проверял)
    Код:
    macro rk_start _off {
      local _org
      if _off eq 
         rk_org = 0
      else
         rk_org = _off
      end if
      db rk_org shr 8  
      db rk_org and 255
      db rk_end_ shr 8
      db rk_end_ and 255
      org rk_org
    }  
    
    macro rk_end {
      rk_end_ = $ - 1
      dw 0
    }
    ,
    а в тексте программы использовать не RKS_START и RKS_END, а RK_START и RK_END
    Вложения Вложения
    Последний раз редактировалось shoorick; 07.02.2016 в 00:05.

  6. #5
    Member
    Регистрация
    02.07.2010
    Адрес
    Запорожье
    Сообщений
    65
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Примеры там исправил.
    В том числе добавил для РК86 (проверил работоспособность на эмуляторе)
    Для ЮТ-88: если он не совместим по вызовам с РК-ашкой, дайте пример хеловорда,
    я посмотрю.

  7. #6
    Activist Аватар для san010101
    Регистрация
    18.11.2015
    Адрес
    г. Красноярск
    Сообщений
    271
    Спасибо Благодарностей отдано 
    19
    Спасибо Благодарностей получено 
    2
    Поблагодарили
    2 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Заголовок для ЮТ-88 вроде как работает. Эмулятор как и прежде запускаю через командный файл иначе ни как.
    Например:
    создаем run.cmd
    в файле пишем
    emu ut88_00.rku
    Если загружать из эмулятора то не работает. Предполагаю, что это глюк самого эмулятора. В остальном все вроде в порядке.

  8. #7
    Member
    Регистрация
    02.07.2010
    Адрес
    Запорожье
    Сообщений
    65
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    san010101, если из пакетника запускается, то я не думаю, что это глюк эмулятора, скорее, что-то на стыке.
    мне понадобятся ваш проект и файл WAAddIns.Ini (рекомендую его просмотреть в случае опасности засветить чё-нить приватное)
    Я не могу сейчас запустить Emu - он у меня под вайном не работает, доставлять длл от мс не хочу, поэтому использую Emu80.
    Но Emu80 не загружает rku правильно: почему-то портится первый (точнее, нулевой) байт: заменяется на F0, а так как это RP, то шансов нет.
    Хотя если делать со смещением, то работает, просто и запускать тогда нужно со смещением, что не очень фэншуйно...
    Код:
    include "8085.inc"
    include "rk.inc"
    
    RK_START 10h
        nop
        lxi  h,hello
        call 0F818h
        jmp  $
    hello:
        db "HI THERE!",0
    RK_END
    Миниатюры Миниатюры Нажмите на изображение для увеличения. 

Название:	UT88-Emu80-fasmg-winasm.png 
Просмотров:	199 
Размер:	11.0 Кб 
ID:	55944  

  9. #8
    Guru
    Регистрация
    24.01.2008
    Адрес
    Уфа
    Сообщений
    3,847
    Спасибо Благодарностей отдано 
    84
    Спасибо Благодарностей получено 
    229
    Поблагодарили
    167 сообщений
    Mentioned
    9 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от san010101 Посмотреть сообщение
    Если загружать из эмулятора то не работает. Предполагаю, что это глюк самого эмулятора. В остальном все вроде в порядке.
    Можно поподробнее? Я не замечал, чтобы что-то неправильно открывалось. Если можно, с примерами файлов.

  10. #9
    Guru
    Регистрация
    07.08.2008
    Адрес
    г. Уфа
    Сообщений
    7,842
    Спасибо Благодарностей отдано 
    654
    Спасибо Благодарностей получено 
    1,814
    Поблагодарили
    1,043 сообщений
    Mentioned
    22 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от b2m Посмотреть сообщение
    не замечал, чтобы что-то неправильно открывалось
    В современных версиях rko и ori пытаются грузится в отсутствующую (сейчас) в конфиге mem2

  11. #10
    Activist Аватар для san010101
    Регистрация
    18.11.2015
    Адрес
    г. Красноярск
    Сообщений
    271
    Спасибо Благодарностей отдано 
    19
    Спасибо Благодарностей получено 
    2
    Поблагодарили
    2 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Я использую минимальную конфигурацию ЮТ88. Во вложении файлы конф-ии, проект и экраны, черный это запуск файла из эмулятора, с цифрами запуск из командного файла.
    Вложения Вложения

Страница 1 из 3 123 ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Кросскомпилятор Си под 8080
    от vinxru в разделе Разное
    Ответов: 108
    Последнее: 18.10.2016, 16:29
  2. Ассемблер 8080
    от Kakos_nonos в разделе Утилиты
    Ответов: 0
    Последнее: 21.09.2011, 23:35
  3. схема АОН на 8080/z80
    от sergey2b в разделе Разный софт
    Ответов: 7
    Последнее: 07.02.2010, 22:43
  4. An 8080/Z80 C Compiler
    от breeze в разделе Программирование
    Ответов: 1
    Последнее: 18.08.2005, 06:54

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •