1 .text 2 .org 0 3 .align 2 4 .globl _start 5 6 // stubs_2_elf.S 7 // (c) 2008 chr 8 // GPL v3+ 9 // create elf file from a binary blob 10 // and mix with symbols from stubs files 11 12 // compile with: 13 // arm-linux-gnu-gcc -Wl,-N,-Ttext,0xff810000 -nostdlib stubs_2_elf.S -o rom.elf 14 15 16 // cheat around gdb ignoring absolute symbols 17 here = . 18 #define offs 0xff810000 19 #define NSTUB(name, addr) name = here + addr - offs 20 #define NHSTUB NSTUB 21 #define __STUBS_ASM__H__ 22 #include "stubs_entry.S" 23 #include "stubs_entry_2.S" 24 #include "stubs_bonus.S" 25 26 // test test ... 27 NSTUB(Jump, 0xff81000c) 28 NSTUB(Whatever, 0xff810164) 29 30 // include rom dump 31 _start: 32 .text 33 34 blob_start: 35 .incbin "PRIMARY.BIN" 36 blob_end: 37