This commit is contained in:
Markus Fröschle
2015-10-13 05:14:06 +00:00
parent 96d5ffe0e5
commit 3d42910fea

View File

@@ -236,13 +236,18 @@ void remove_handler(void)
*trap_0_vector = (uint32_t) std_exc_vec; *trap_0_vector = (uint32_t) std_exc_vec;
} }
/*
* trap #0 entry point
*
* this is used to retrieve the driver table that gets exposed to the OS by BaS
*/
void __attribute__((interrupt)) get_bas_drivers(void) void __attribute__((interrupt)) get_bas_drivers(void)
{ {
__asm__ __volatile( __asm__ __volatile(
/* /*
* sp should now point to the next instruction after the trap * sp should now point to the next instruction after the trap
* The trap itself is 2 bytes, the four bytes before that must * The trap itself is 2 bytes, the four bytes before that must
* read '_BAS' or we are not meant by this call * read '_BAS', otherwise we are not meant by this call
*/ */
" move.l a0,-(sp) \n\t" // save registers " move.l a0,-(sp) \n\t" // save registers
" move.l d0,-(sp) \n\t" " move.l d0,-(sp) \n\t"