[OpenBIOS] r624 - trunk/openbios-devel/forth/system

Laurent Vivier Laurent at vivier.eu
Sun Nov 22 18:38:45 CET 2009


Le dimanche 22 novembre 2009 à 13:44 +0000, Mark Cave-Ayland a écrit :
> Laurent Vivier wrote:
> 
> > Same result as previous one: yaboot hangs, but quik exits with: "call-method seek: exception -21"
> > 
> > Regards,
> > Laurent
> 
> Thanks Laurent. Now I get it: the conversion routine in modules/client.c 
> mistakenly put the CIF arguments into Forth the wrong way around using 
> this piece of code:
> 
>          for( i=pb->nargs-1; i>=0; i-- )
>                  PUSH( pb->args[i] );
> 
> So, in other words: in order to fix this, we need to reverse the above 
> loop so that the arguments are simply pushed onto the Forth stack in 
> forward order, and then alter the Forth client interface words to take 
> the new ordering into account. Then the CIF words can be called 
> correctly from both Fcode and the C interface, and both our cases should 
> work.
> 

I agree with that.

Regards,
Laurent
-- 
--------------------- laurent at vivier.eu ----------------------
"Tout ce qui est impossible reste à accomplir"    Jules Verne
"Things are only impossible until they're not" Jean-Luc Picard




More information about the OpenBIOS mailing list