From: Julien M. <jm...@cs...> - 2004-03-25 09:09:02
|
Hi, I would like to manually write my interrupt vectors, I've read that "#pragma noiv" tells the compiler not to generate the interrupt vectors for the ISRs declareted after it but I don't know how to write it myself. I've try to write them with inline assembly, coding something like that : _asm .area CSEG .ORG 0x0000 ljmp __sdcc_gsinit_startup .ORG 0x0003 reti .ORG 0x000B ljmp _TIMER0_interrupt_handler .ORG 0x0013 reti _endasm but I have this type of errors : ?ASxxxx-Error-<o> in line 880 of boot.asm <o> .org in REL aera or directive / mnemonic error My inline assembly code is situated at the beginning of my main() C function, I believe it's not the right place to put it but I've no clue where else to put it and I've found nothing about it in the documentation. 2nd question : when using the --code-loc option, it's said in the doc that the interrupt vectors are relocated. Does it means that the "original" interrupt vectors (at adress 0x000 0x003 and the followings) are filled with long jumps (LJMP) to where we've chosen to locate the code, or is it it managed in a different way? thanks, julien -- MARBACH Julien +41 32 557 56 00 CSM-Instruments R&D Department Gare 4 CH-2034 Peseux Switzerland www.csm-instruments.com |