Nick Couchman wrote:
Mark, Thanks for the patch - for me this takes care of the seek failed error when booting off the Solaris Nevada DVD, but I'm back to getting this:
No worries. Looks like it still needs some work on the C interface end though.
0 > boot cdrom [sparc64] Booting file 'cdrom' with parameters '' Not a bootable ELF image Not a Linux kernel image Not a bootable a.out image Loading FCode image... Loaded 7120 bytes entry point is 0x4000 Evaluating FCode... Unhandled Exception 0x0000000008000000 PC = 0x00000000ffd10e3c NPC = 0x00000000ffd10e40 Stopping execution
the exception being at the following location: 0xffd10e3c is in cfetch (../include/openbios/stack.h:34). 29 typedef ucell phandle_t; 30 31 32 33 34 static inline void PUSH(ucell value) { 35 dstack[++dstackcnt] = (value); 36 } 37 static inline void PUSH_xt( xt_t xt ) { PUSH( (ucell)xt ); } 38 static inline void PUSH_ih( ihandle_t ih ) { PUSH( (ucell)ih ); }
If you're interested in the full output of "boot cdrom" with "true to ?fcode-verbose", I've put it here: http://openbios.pastebin.com/m1c58f4e5
Maybe there's somewhere else where the stack is in the wrong order - I don't know that I've seen cfetch mentioned before??
-Nick
On my Milax test ISO here, it's actually crashing calling one of the Forth methods to do with getting the platform/architecture name so you probably don't need to go down to C level (yet). However, given that there is a still an issue with the CIF C interface, it would make sense to fix that first before spending more time on this just in case the two problems are related.
ATB,
Mark.