.global _start .equ IODIR0, 0xE0028008 .equ IOCLR0, 0xE002800C .equ IOSET0, 0xE0028004 .text b _start b undef_handler b SVC_handler b PAbt_handelr b DAbt_handler b RFU_handler b IRQ_handler b FIQ_handler undef_handler: SVC_handler: PAbt_handelr: DAbt_handler: RFU_handler: IRQ_handler: FIQ_handler: b undef_handler /* do nothing */ delay: mov r0, #10 dowaitloop: subs r0,#1 bne dowaitloop bx lr _start: MOV r3, #0xFFFFFFFF LDR r4, =IODIR0 LDR r1, =IOCLR0 LDR r2, =IOSET0 str r3, [r4] loop: str r3, [r2] bl delay str r3, [r1] bl delay b loop