Page 2 of 2

Re:sti! ... and nothing happens

Posted: Wed Oct 16, 2002 1:39 pm
by dronkit
Finally, this is what was causing the error:

Code: Select all

const isr_t *isr[ISR_TOTAL] = {
   /* exception handlers. */
   ex_00, ex_01, ex_02, ex_03, ex_04, ex_05, ex_06, ex_07,
   ex_08, ex_09, ex_0a, ex_0b, ex_0c, ex_0d, ex_0e, ex_0f,
   ex_10, ex_11, ex_12, ex_13, ex_14, ex_15, ex_16, ex_17,
   ex_18, ex_19, ex_1a, ex_1b, ex_1c, ex_1d, ex_1e, ex_1f,
   /* irq handlers. */
   irq_00, irq_01, irq_02, irq_03, irq_04, irq_05, irq_06, irq_07,
   irq_08, irq_09, irq_0a, irq_0b, irq_0c, irq_0d, irq_0e, irq_0f
};


Apparently the linker leaves this array unresolved because it is declared in the bss section of the object file.

I moved the isr[] declaration into the function I'm using to initialize everything and everything worked smoothly (it is now a local variable instead of a global variable) ;)

I'm now looking for a gcc or ld flag to fix this so I can move it again to the global context (not that i need it, tho) ;)

Thanks anyway!

Regards

Re:sti! ... and nothing happens

Posted: Thu Oct 17, 2002 12:21 am
by Pype.Clicker
maybe you could try "allocate common symbols" or something alike.

Re:sti! ... and nothing happens

Posted: Thu Oct 17, 2002 11:46 pm
by .bdjames
What I mean was that bochs will not crash when
pushed into pmode with the old isrs.