User Tag List

Показано с 1 по 10 из 27

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

Древовидный режим

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #4

    Регистрация
    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.

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

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

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

Похожие темы

  1. Кросскомпилятор Си под 8080
    от vinxru в разделе Разное
    Ответов: 110
    Последнее: 27.05.2024, 23:06
  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

Ваши права

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