Искать ничего и не надо, objcopy входит в сотсав gcc, которым ты пользуешься.
Вид для печати
В описалове не нашел, но подозреваю что Local/Virtual Memory Address. Так?
Можно заставить линкер насильно делать стартовую точку в начале кодового блока?
Если нет, то как ты узнаешь из простого бинарника этот адрес?
cygwin у меня есть, но все равно это не совсем то. Как среда для выполнения шелл-скриптов (ибо командные файлы это редкостный дуст) еще пойдет. Чтото серьезное- не очень...
Елки! Я ж ленивый человек, мне проще сделать свое, нежели искать что там есть подобного в мире...
Линкер можно заставить сделать что угодно (особенно если это линкер ld).
LMA - адрес где лежит код
VMA - адрес с которого он исполняется
линкером ld можно вообще сформировать обычный .sna файл, а не plane binary. А можно и в plane binary сделать так:
dw entry
а дальше этот entry в линк скрипте объявить как хочешь, хоть выражением высчитать.
В ИАРовском линкере все примерно также, токо там скрипты победнее чем в ld
Программа закрашивает прямоугольную область экрана пикселями в шахматном порядке.
Для компиляции программы необходим IAR C, программа использует свой нестандартный startup, поэтому из стандартной библиотеки IAR необходимо удалить модуль startup (модифицированная библиотека есть в архиве).
Выходом компиляции является файл test.sna (причем этот файл в формате intel-hex формируется самим компилятором).
Для преобразования hex->bin служит всего одна внешняя утилита objcopy из пакета binutils (для windows входит в cygwin и mingw).
Аналогичным образом делаются программы с бейсик загрузчиком.
Более того IAR C позволяет генерировать программы с автоматическим переключением банков памяти (например для ZX128 и выше), при этом необходимо написать всего лишь одну дополнительную функцию (которая включает нужный банк памяти) на ассемблере.
по MIX C есть у кого-нибудь документация?
IAR C безусловно крут.
SDCC рулит для разработки открытых проектов, где важно наличие открытых средств разработки (и такое бывает :))
Можно посмотреть таблицу сравнения компилеров.