|
|
  |
свежак KGP win32/arm/avr/mips/m68k, GNU tools chain |
|
|
|
Mar 23 2012, 05:16
|

Профессионал
    
Группа: Свой
Сообщений: 1 143
Регистрация: 30-09-08
Из: Новочеркасск
Пользователь №: 40 581

|
Цитата(demiurg_spb @ Mar 22 2012, 11:51)  Уже было сделано, и даже переделано __pgm заменили позже на __flashвозможно, я вместо двух подчеркиваний делал одно... проверю  а вообще, мне понравилась новая сборка: колупаюсь тут с проектом на тини13, так простой переход на эту версию сразу дал выигрыш по флешу больше 80 байтов! правда почему-то эту сборку не полюбила AVR Studio 4.18. добавлено в 12:33. проверил: не работает __flash, без ошибок компилится __pgm, но результат как-то не радует... обращаюсь к массиву структур во flash, так компилятор генерирует загадочный код: Цитата static uint8_t load_color(uint8_t i){ //__pgm const FIX_COLOR *ptr = &fix_colors[i]; uint8_t tmp = fix_colors[i].mode; c0: 90 e0 ldi r25, 0x00 ; 0 c2: 66 e0 ldi r22, 0x06 ; 6 c4: 70 e0 ldi r23, 0x00 ; 0 c6: 8b d1 rcall .+790 ; 0x3de <__mulhi3> c8: ac 01 movw r20, r24 ca: 4c 5e subi r20, 0xEC ; 236 cc: 5f 4f sbci r21, 0xFF ; 255 ce: fa 01 movw r30, r20 d0: 84 91 lpm r24, Z if(tmp == MODE_FIXED){ d2: 81 30 cpi r24, 0x01 ; 1 d4: 99 f4 brne .+38 ; 0xfc <load_color+0x3c> r = fix_colors[i].r; d6: 9a 01 movw r18, r20 d8: 2d 5f subi r18, 0xFD ; 253 da: 3f 4f sbci r19, 0xFF ; 255 dc: f9 01 movw r30, r18 de: 94 91 lpm r25, Z e0: 90 93 68 00 sts 0x0068, r25 g = fix_colors[i].g; e4: 9a 01 movw r18, r20 e6: 2c 5f subi r18, 0xFC ; 252 e8: 3f 4f sbci r19, 0xFF ; 255 ea: f9 01 movw r30, r18 ec: 94 91 lpm r25, Z ee: 90 93 69 00 sts 0x0069, r25 b = fix_colors[i].b; f2: fa 01 movw r30, r20 f4: 35 96 adiw r30, 0x05 ; 5 f6: 94 91 lpm r25, Z f8: 90 93 6a 00 sts 0x006A, r25 } return tmp; } fc: 08 95 ret очевидно ведь, что все данные в структуре хранятся последовательно и можно просто последовательно увеличивать Z на 2 или 1 - а лепится код вычисления с пересылками  и только в самом последнем обращении использована команда adiw
--------------------
Я бы взял частями... но мне надо сразу.
|
|
|
|
|
Mar 27 2012, 08:14
|
Группа: Новичок
Сообщений: 3
Регистрация: 27-03-12
Пользователь №: 71 024

|
Помогите со сборкой для процессора 1890вм2т(mips, komdiv32), язык си и ассемблер, ОС: opensuse12.1, для R3000 сборка есть.
Сообщение отредактировал deMax07 - Mar 27 2012, 08:14
|
|
|
|
|
Mar 29 2012, 06:11
|
Группа: Новичок
Сообщений: 3
Регистрация: 27-03-12
Пользователь №: 71 024

|
[quote name='klen' date='Mar 28 2012, 18:08' post='1042884'.....посмотрите выше по постам - я уже собирал и выкладывал [/quote]я уже скачивал, пишет не могу запустить бинарный файл. Самому хочется собрать, хотя бы скажите какие дополнительные аргументы комдиву в отличие от r3000.
|
|
|
|
|
Mar 29 2012, 08:57
|

бессмертным стать можно тремя способами
    
Группа: Свой
Сообщений: 1 405
Регистрация: 9-05-06
Из: Москва
Пользователь №: 16 912

|
Цитата(deMax07 @ Mar 29 2012, 10:11)  [quote name='klen' date='Mar 28 2012, 18:08' post='1042884'.....посмотрите выше по постам - я уже собирал и выкладывал я уже скачивал, пишет не могу запустить бинарный файл. Самому хочется собрать, хотя бы скажите какие дополнительные аргументы комдиву в отличие от r3000. сборка 64 битная кажется была. иначе бы бинарники бы исполнялисьбы. по поводу самостоятельной сборки http://gcc.gnu.org/install/index.htmlкомдиву никаких дополнительных ключей быть не может - ядро такоеже как и у r3000 - компилятор для ядра код генерит ане для конкретной микросхемы. в НИИСИшной реализации r3000+обвязка есть ошибки и гдюки или назовем это особенностями .. по этому вопросу к чипмейкеу - НИИСИ РАН, но они ничего не дадут, я пробы вал. патчи к старым версиям компиллера и обрывки информации которые потребители вытрясли из НИИСИ нада брать у этих несчастных. эти патчи можно перепортировать на текщий код gcc. если бы ядро было бы сделано точной копией r3000 то вообще проблем небыло бы. я так понимаю суть вопроса. считаю комдив в техническом контексте мертвым проектом - инфа закрыта, цена микросхемы ~70т.р. серийное производство под вопросом, те несчастные с котоорыми общался - говорили что это все под застав навязано и им приходися костылями заставлять его работать, я думаю дело не в ядре а втом как там в нутри шины и шинная матрица работают (возможно это самодельная часть устройства)- это может влиять на работу конвеера ядра, на задерки и затыки. я могу во всем что я написал оошибатся. если есть знающие комдив близко - рад буду почитать описание ситуации с комдивом достоверно. хотя интерес медленно угасает.
|
|
|
|
|
Mar 29 2012, 17:11
|
Группа: Новичок
Сообщений: 3
Регистрация: 27-03-12
Пользователь №: 71 024

|
Цитата(klen @ Mar 29 2012, 12:57)  сборка 64 битная кажется была. иначе бы бинарники бы исполнялисьбы. извините, действительно не заметил, у меня x32 сусе. Если есть какая либо информация по отличиям не могли бы вы скинуть, спасибо. На счет бесперспективности процессора, у нас для космоса больше ничего нет. Скоро 5890... выйдет, тот же 1890вм2т но с тройным резервированием в камне и очень хорошей радстойкостью, очень нужная вещь. А для земли и тем более домашнего использования, понятно что проц абсолютно бесперспективен(разве только для военки).
|
|
|
|
|
Apr 13 2012, 13:35
|

Профессионал
    
Группа: Участник
Сообщений: 1 620
Регистрация: 22-06-07
Из: Санкт-Петербург, Россия
Пользователь №: 28 634

|
Цитата(klen @ Apr 13 2012, 12:57)  старье чуток пдчистил. на выходных постараюсь выложить свежак. уж для линуха точно - обновил вчера, потестю и выложу. win32 host - arm target, avr target... если не сложно! ПОльзуюсь Код arm-kgp-eabi-gcc.EXE (Klen's GNU package (KGP) for ARM/elf platform) 4.7.0 20110618 (experimental)
|
|
|
|
|
Apr 13 2012, 18:08
|
Участник

Группа: Участник
Сообщений: 42
Регистрация: 8-10-11
Пользователь №: 67 615

|
Цитата(klen @ Apr 13 2012, 12:57)  старье чуток пдчистил. на выходных постараюсь выложить свежак. уж для линуха точно - обновил вчера, потестю и выложу. Ок. Спасибо. Ради этих библиотек поставил ubuntu 64. до этого сидел под 32ой
|
|
|
|
|
  |
5 чел. читают эту тему (гостей: 5, скрытых пользователей: 0)
Пользователей: 0
|
|
|