User Tag List

Страница 74 из 167 ПерваяПервая ... 707172737475767778 ... ПоследняяПоследняя
Показано с 731 по 740 из 1664

Тема: SjASMPlus Z80 кросс ассемблер

  1. #731

    Регистрация
    01.03.2005
    Адрес
    Samara
    Сообщений
    4,867
    Спасибо Благодарностей отдано 
    328
    Спасибо Благодарностей получено 
    311
    Поблагодарили
    235 сообщений
    Mentioned
    12 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Keeper, не знаю
    допиливание обычно имеет побочным эффектом забаговывание
    С уважением,
    Jerri / Red Triangle.

  2. #732

    Регистрация
    16.09.2009
    Адрес
    г. Харьков
    Сообщений
    1,466
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    16
    Поблагодарили
    12 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от jerri Посмотреть сообщение
    Keeper, не знаю
    допиливание обычно имеет побочным эффектом забаговывание
    дык тестами покрывать надо.

    ---------- Post added at 16:03 ---------- Previous post was at 16:01 ----------

    Цитата Сообщение от Keeper Посмотреть сообщение
    Можно пример использования, может я неправильно понял зачем это нужно
    ну например
    macro _preffix_
    ld (store&_preffix_),a
    ld hl,(value&_preffix_)
    jp label_&_preffix_
    endm

  3. #733

    Регистрация
    01.03.2005
    Адрес
    Samara
    Сообщений
    4,867
    Спасибо Благодарностей отдано 
    328
    Спасибо Благодарностей получено 
    311
    Поблагодарили
    235 сообщений
    Mentioned
    12 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    esl, это детский лепет
    вот это пример

    Код:
    ;RAY 1,1,H,L,D,E,y,x
           MACRO RAY
    mainplus=\0 ;основное направление положительно
    secplus=\1 ;побочное направление положительно
    ;\2=основное направление для hl
    ;\3=побочное направление для hl
    ;\4=основное направление для de
    ;\5=побочное направление для de
    ;\6=основное направление
    ;\7=побочное направление
           ;LD DE,(cur\7\6)
    cur\0\1\7\6=$+1
            LD DE,0
            LD A,E ;основное направление
          ;IFN mainplus ;основное направление положительно
          ; CPL ;1-основное направление
          ; LD E,A
          ;ENDIF
            LD LX,A ;IX=dist*cos
            MULPOS
           IFN secplus ;побочное направление положительно
            ADD A,D ;побочное направление
            LD B,A
           ;LD HL,(curYX)
    ray\0\1\7\6_YX=$+1
            LD HL,0
           IFN "\6\6"-"xx"
           ;LD D,H,E,L
           ;SET mapdifbit,E
    ray\0\1\7\6_YX2=$+1
            LD DE,0
           ELSE 
            LD D,H,E,L
           ENDIF 
            JNC raynshort\0\1\7\6
            INC \5 ;e/d
            LD A,(DE)
            RLA 
            JC raysec\0\1\7\6
            INC \3 ;l/h
    raynshort\0\1\7\6
           IFN "\6\6"-"yy"
            SET mapdifbit,L
           ENDIF 
           ELSE 
            LD L,A
            LD A,D ;побочное направление
            SUB L
            LD B,A
           ;LD HL,(curYX)
    ray\0\1\7\6_YX=$+1
            LD HL,0
           IFN "\6\6"-"xx"
           ;LD D,H,E,L
           ;SET mapdifbit,E
    ray\0\1\7\6_YX2=$+1
            LD DE,0
           ELSE 
            LD D,H,E,L
           ENDIF 
            JNC raynshort\0\1\7\6
            LD A,(DE)
            RLA 
            JC raysec\0\1\7\6
            DEC \3,\5 ;l/h,e/d
    raynshort\0\1\7\6
           IFN "\6\6"-"yy"
            SET mapdifbit,L
           ENDIF 
           ENDIF 
    
    raynsec\0\1\7\6
            INC HX
           IFN mainplus ;основное направление положительно
            INC \2 ;h/l
           ENDIF 
            LD A,(HL)
            RLA 
            JP C,rayhlq ;b=texx
           IFN mainplus ;основное направление положительно
            INC \4 ;d/e
           ELSE 
            DEC \2,\4 ;h/l,d/e
           ENDIF 
            LD A,B
           IFN secplus ;побочное направление положительно
            ADD A,C
           ELSE 
            SUB C
           ENDIF 
            LD B,A
            JNC raynsec\0\1\7\6
           IFN secplus ;побочное направление положительно
            INC \5 ;e/d
           ENDIF 
            LD A,(DE)
            RLA 
            JC raysec\0\1\7\6
           IFN secplus ;побочное направление положительно
            INC \3 ;l/h
           ELSE        ;побочное направление отрицательно
            DEC \3,\5 ;l/h,e/d
           ENDIF 
            JP raynsec\0\1\7\6
    
    raysec\0\1\7\6
            EXD 
            LD A,B
           IFN secplus ;побочное направление положительно
            SUB C
            DIVPOS
           ELSE 
            ADD A,C
            DIVNEG
           ENDIF 
           IFN mainplus ;основное направление положительно
            CPL 
            LD B,A ;b=texx
           ELSE 
            LD B,A ;b=texx
            CPL 
           ENDIF 
            JP raydeq
           ENDM
    sjasm скукоживается сразу
    Последний раз редактировалось jerri; 17.09.2012 в 17:45.
    С уважением,
    Jerri / Red Triangle.

  4. #734

    Регистрация
    25.01.2005
    Адрес
    Miass, Chelyabinsk region
    Сообщений
    4,094
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    2
    Поблагодарили
    2 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    от такого я тоже скукоживаюсь... ))

  5. #735

    Регистрация
    16.09.2009
    Адрес
    г. Харьков
    Сообщений
    1,466
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    16
    Поблагодарили
    12 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от jerri Посмотреть сообщение
    esl, это детский лепет
    вот это пример
    то был пример, а ЭТО - черная магия

  6. #736

    Регистрация
    01.03.2005
    Адрес
    Samara
    Сообщений
    4,867
    Спасибо Благодарностей отдано 
    328
    Спасибо Благодарностей получено 
    311
    Поблагодарили
    235 сообщений
    Mentioned
    12 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    esl, ну следуя логике
    я должен получив строчку
    "ray\0\1\7\6_YX=$+1"
    сначала заменить все \х на данные макроса
    и только потом парсить уже готовый набор данных
    а не так как сделано сейчас

    ---------- Post added at 20:33 ---------- Previous post was at 20:32 ----------

    esl, ну ты рар не смотрел
    вот там реально чорная магия

    ---------- Post added at 20:35 ---------- Previous post was at 20:33 ----------

    Keeper, а что за асм использует савелий?
    С уважением,
    Jerri / Red Triangle.

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

  8. #737

    Регистрация
    16.09.2009
    Адрес
    г. Харьков
    Сообщений
    1,466
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    16
    Поблагодарили
    12 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от jerri Посмотреть сообщение
    esl, ну следуя логике
    я должен получив строчку
    "ray\0\1\7\6_YX=$+1"
    сначала заменить все \х на данные макроса
    и только потом парсить уже готовый набор данных
    а не так как сделано сейчас
    как работает подстановка как раз то легко понять
    а вот макроссссссс

  9. #738

    Регистрация
    01.03.2005
    Адрес
    Samara
    Сообщений
    4,867
    Спасибо Благодарностей отдано 
    328
    Спасибо Благодарностей получено 
    311
    Поблагодарили
    235 сообщений
    Mentioned
    12 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    esl, я тут наброски делал на PB и не увидел особых проблем с макросами
    С уважением,
    Jerri / Red Triangle.

  10. #739

    Регистрация
    06.05.2006
    Адрес
    Ливны, Орловская обл
    Сообщений
    1,169
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Кошмарный пример, зачем я его на ночь глядел...
    Неужели после сборки всех вариантов в один параметризированный макрос объём кода сократился и стал понятнее?
    И кстати вот всплывает велосипедистость sjasm+, где в одну кучу кода навалены разные тулзы. А макры... ну m4 и прочие никто не отменял.

  11. #740

    Регистрация
    01.03.2005
    Адрес
    Samara
    Сообщений
    4,867
    Спасибо Благодарностей отдано 
    328
    Спасибо Благодарностей получено 
    311
    Поблагодарили
    235 сообщений
    Mentioned
    12 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    NovaStorm, если ты про методы товарища Алоне то это к нему обратись
    но прелесть Аласма в том что он это понимает и интерпретирует нормально
    С уважением,
    Jerri / Red Triangle.

Страница 74 из 167 ПерваяПервая ... 707172737475767778 ... ПоследняяПоследняя

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

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

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

Похожие темы

  1. Кросс-ассемблеры Z80 для Pc
    от Aprisobal в разделе Программирование
    Ответов: 16
    Последнее: 15.01.2011, 22:46
  2. кросс компилятор С для Z80
    от vitasam в разделе Программирование
    Ответов: 24
    Последнее: 04.03.2007, 18:03
  3. Хороший ПЦшный ассемблер - залог успеха!
    от Aprisobal в разделе Программирование
    Ответов: 35
    Последнее: 08.08.2005, 15:25
  4. ZX ассемблер (и не только?) с библиотеками
    от shade в разделе Программирование
    Ответов: 24
    Последнее: 04.03.2005, 19:43

Ваши права

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