User Tag List

Страница 10 из 10 ПерваяПервая ... 678910
Показано с 91 по 100 из 100

Тема: Кодогенерация SDCC: пожелания об улучшении компилятора

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

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

    Регистрация
    01.02.2005
    Адрес
    perm/ru
    Сообщений
    520
    Записей в дневнике
    1
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Oleg N. Cher Посмотреть сообщение
    P.S. Списался с IAR, попросил сделать IAR Embedded Workbench for Zilog Z80 безплатным хотя бы для некоммерческого использования, ну раз уже не продают, так чего хоронить. Ага, щаз.
    5 лет назад то же самое говорили =) тоже им предлагал зафриварить хотя-бы =)
    oisee.

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

  3. #2

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

    По умолчанию

    >without support
    >For the amount of 1715 EUR
    Петросяны #%я =)

  4. #3

    Регистрация
    24.08.2007
    Адрес
    Днепропетровская обл.
    Сообщений
    1,751
    Спасибо Благодарностей отдано 
    2,737
    Спасибо Благодарностей получено 
    173
    Поблагодарили
    133 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Забыл добавить:
    >PC locked
    (залоченный на один комп, как я понимаю)

  5. #4

    Регистрация
    01.03.2005
    Адрес
    Саранск
    Сообщений
    5,831
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    247
    Поблагодарили
    106 сообщений
    Mentioned
    5 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    А вы типа хотели, чтобы вам плоды сотен человекочасов за спасибо отдали? Кто еще петросяны...
    Свирепый агрессивно-депрессивный мордовец!
    Не уверен - не напрягай!

    Не сдавайся. Дыши?

    Virtual TR-DOS

  6. #5

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

    По умолчанию

    Цитата Сообщение от Shadow Maker Посмотреть сообщение
    А вы типа хотели, чтобы вам плоды сотен человекочасов за спасибо отдали?
    это называется "ни себе, ни людям". они в любом случае не получат ничего. но и не потеряют, разрешив некоммерческое использование.

  7. #6

    Регистрация
    24.08.2007
    Адрес
    Днепропетровская обл.
    Сообщений
    1,751
    Спасибо Благодарностей отдано 
    2,737
    Спасибо Благодарностей получено 
    173
    Поблагодарили
    133 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Господа, подскажите вот какую вещь.

    Как с помощью препроцессора передать символ # вовнутрь тела макроса?

    Я придумал способ передавать параметры функций через регистры. Сразу скажу про ограничение этого способа. Он не позволяет передавать вычисляемые в рантайме выражения, только константы, числа известные на этапе компиляции. Проблема в том, что SDCC-ассемблер требует везде, где подразумевается числовой литерал, писать перед ним # (в sdasz80 это не обозначитель шестнадцатеричного числа), и опускать # нельзя. Получается, что без # невозможно нормально написать даже DB(DEFB). А препроцессор напротив считает # сугубо служебным символом и ругается на любые попытки передавать его в теле макроса.

    Т.е. хочу, чтобы если встретилось BORDER(4), оно превращалось в:
    Код:
        LD A,4
        CALL 0x229B
    но в SDCC-асме так будет ошибка. Надо:
    Код:
        LD A,#4
        CALL 0x229B
    Так что при попытке скомпилировать код:
    Код:
    #ifndef Basic_fastcall_BORDER
      import void BORDER (BYTE color);
    #else //Basic_fastcall_BORDER
      #define BORDER(color) __asm \
        LD A,#color \
        CALL 0x229B \
        __endasm;
    #endif
    SDCC выдаёт ошибку:
    Basic.h:13:29: error: '#' is not followed by a macro parameter
    Пробовал различные комбинации скобочек, по совету Филиппа пробовал такое:
    Код:
    #define id(x) x
    
    #ifndef Basic_fastcall_BORDER
      import void BORDER (SHORTINT color);
    #else //Basic_fastcall_BORDER
      #define BORDER(color) __asm \
        LD A,id(#)color \
        CALL 0x229B \
        __endasm;
    #endif
    Пробовал даже диграфы и триграфы. Не подошли (не понимаю тогда зачем они вообще нужны).

    Есть ли решение?

  8. #7

    Регистрация
    16.01.2005
    Адрес
    Ekaterinburg
    Сообщений
    2,082
    Записей в дневнике
    11
    Спасибо Благодарностей отдано 
    176
    Спасибо Благодарностей получено 
    493
    Поблагодарили
    343 сообщений
    Mentioned
    4 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Код:
    #define hash #
    #define id(x) x
    #define BORDER(x) ld a,id(hash)x
    
    
    void main()
    {
    	BORDER(5)
    }
    Граф Дракула наш кумир, патамушта он вомпир!
    VKINK 9 : BORDER NOT PI YTINK 9 Channel

  9. #8

    Регистрация
    24.08.2007
    Адрес
    Днепропетровская обл.
    Сообщений
    1,751
    Спасибо Благодарностей отдано 
    2,737
    Спасибо Благодарностей получено 
    173
    Поблагодарили
    133 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Всё-таки удалось выспросить у IAR триальную версию Embedded Workbench for Z80. Филипп, как и обещал, добавил её в список.
    Цитата Сообщение от Philipp Klaus Krause
    Thanks.

    I have compiled the benchmark using IAR 4.06A (optimizing for code size,
    without use of undocumented instructions), and added the results at

    http://sourceforge.net/apps/trac/sdc...%20code%20size

    Philipp

Страница 10 из 10 ПерваяПервая ... 678910

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

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

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

Похожие темы

  1. SDCC - Small Device C Compiler
    от Valen в разделе Программирование
    Ответов: 52
    Последнее: 06.04.2012, 20:44
  2. Конструктор для компилятора с Си
    от Raydac в разделе Программирование
    Ответов: 0
    Последнее: 21.12.2009, 23:14
  3. Пожелания ваще
    от svofski в разделе Эмуляторы отечественных компьютеров
    Ответов: 7
    Последнее: 01.09.2009, 18:27
  4. SDCC вокруг да около
    от andrews в разделе Программирование
    Ответов: 8
    Последнее: 26.03.2008, 08:16
  5. Пожелания по сервисам форума
    от andrews в разделе Форум
    Ответов: 10
    Последнее: 14.08.2006, 13:47

Ваши права

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