История изменений
Исправление ncrmnt, (текущая версия) :
Я взял копипаст из педивикии: http://ru.wikipedia.org/wiki/XTEA Собирал просто с такими флагами:
avr-gcc -mmcu=atmega328p -DF_CPU=8000000 -mcall-prologues -fno-tree-scev-cprop -fno-split-wide-types -fpack-struct -fshort-enums -D__DELAY_BACKWARD_COMPATIBLE__ -include /home/necromant/Dev/antares-playground/rf24-slave/include/generated/autoconf.h -Os -Wall -fdata-sections -ffunction-sections -I/home/necromant/Dev/antares-playground/rf24-slave/include -I/home/necromant/Dev/antares-playground/rf24-slave/antares/include -MD -MP -MF xtea.o.d -c -o xtea.o /home/necromant/Dev/antares-playground/rf24-slave/src/xtea.c
necromant@ilwyn:~/Dev/antares-playground/rf24-slave$ avr-size build/app/xtea.o
text data bss dec hex filename
364 0 0 364 16c build/app/xtea.o
Собственно, этим я его с 6-7к до 4х утряс в итоге. Ну и в коде кое-какие хаки добавил. К сожалению, на avr активное использование указателей сильно разносит прошивку по размеру. Из-за этого, кстати частенько тот же код на msp430 меньше выходит по размеру.
Исправление ncrmnt, :
Я взял копипаст из педивикии: http://ru.wikipedia.org/wiki/XTEA Собирал просто с такими флагами:
avr-gcc -mmcu=atmega328p -DF_CPU=8000000 -mcall-prologues -fno-tree-scev-cprop -fno-split-wide-types -fpack-struct -fshort-enums -D__DELAY_BACKWARD_COMPATIBLE__ -include /home/necromant/Dev/antares-playground/rf24-slave/include/generated/autoconf.h -Os -Wall -fdata-sections -ffunction-sections -I/home/necromant/Dev/antares-playground/rf24-slave/include -I/home/necromant/Dev/antares-playground/rf24-slave/antares/include -MD -MP -MF xtea.o.d -c -o xtea.o /home/necromant/Dev/antares-playground/rf24-slave/src/xtea.c
necromant@ilwyn:~/Dev/antares-playground/rf24-slave$ avr-size build/app/xtea.o
text data bss dec hex filename
364 0 0 364 16c build/app/xtea.o
Собственно, этим я его с 6-7к до 4х утряс в итоге. Ну и в коде кое-какие хаки добавил. К сожалению, на avr активное использование указателей сильно разносит прошивку по размеру.
Исправление ncrmnt, :
Я взял копипаст из педивикии: http://ru.wikipedia.org/wiki/XTEA Собирал просто с такими флагами:
avr-gcc -mmcu=atmega328p -DF_CPU=8000000 -mcall-prologues -fno-tree-scev-cprop -fno-split-wide-types -fpack-struct -fshort-enums -D__DELAY_BACKWARD_COMPATIBLE__ -include /home/necromant/Dev/antares-playground/rf24-slave/include/generated/autoconf.h -Os -Wall -fdata-sections -ffunction-sections -I/home/necromant/Dev/antares-playground/rf24-slave/include -I/home/necromant/Dev/antares-playground/rf24-slave/antares/include -MD -MP -MF xtea.o.d -c -o xtea.o /home/necromant/Dev/antares-playground/rf24-slave/src/xtea.c
necromant@ilwyn:~/Dev/antares-playground/rf24-slave$ avr-size build/app/xtea.o
text data bss dec hex filename
364 0 0 364 16c build/app/xtea.o
Исходная версия ncrmnt, :
Я взял копипаст из педивикии: http://ru.wikipedia.org/wiki/XTEA Собирал просто с такими флагами:
avr-gcc -mmcu=atmega328p -DF_CPU=8000000 -mcall-prologues -fno-tree-scev-cprop -fno-split-wide-types -fpack-struct -fshort-enums -D__DELAY_BACKWARD_COMPATIBLE__ -include /home/necromant/Dev/antares-playground/rf24-slave/include/generated/autoconf.h -Os -Wall -fdata-sections -ffunction-sections -I/home/necromant/Dev/antares-playground/rf24-slave/include -I/home/necromant/Dev/antares-playground/rf24-slave/antares/include -MD -MP -MF xtea.o.d -c -o xtea.o /home/necromant/Dev/antares-playground/rf24-slave/src/xtea.c