On 2009/11/16 at 07:51, Mark Cave-Ayland mark.cave-ayland@siriusit.co.uk
wrote:
Hi Nick,
By default the OpenBIOS fcode evaluator creates headerless words, and so they won't appear in any wordlists which are visible to the system.
In order to make the words visible, you need to open up forth/admin/nvram.fs and change the value of fcode-debug? from false to true in the NVRAM variables section. If you then rebuild OpenBIOS, the words generated by the Fcode evaluator will then show up in the relevant package when you type "words".
I also figured out that for some of the words to become available I have to actually execute a real boot - not sure why.
Incidentally, I see that Blue Swirl has also committed the Forth source debugger over the weekend, so you should be able to do "debug do-boot" followed by "do-boot" and then step through the process to see where it fails.
Here's the output from "do-boot" once I turn on debugging for Solaris Nevada B127:
0 > do-boot : do-boot ( Empty ) 00000000ffe388e8: parse-bootargs ( Empty ) 00000000ffe388f0: halt? ( 0 ) 00000000ffe388f8: do?branch ( Empty ) 00000000ffe38948: get-bootdev ( Empty ) 00000000ffe38950: load-pkg ( Empty ) 00000000ffe38958: mount-root seek failed
Can't mount root Aborted. 0 >
Again, not sure why it can't mount-root, but that seems to be the issue. And, here's the output from a debug do-boot for Solaris 9:
0 > do-boot : do-boot ( Empty ) 00000000ffe36b30: sign-on FCode UFS Reader 1.12 00/07/17 15:48:16. ( Empty ) 00000000ffe36b38: real-devname ( Empty ) 00000000ffe36b40: halt? ( 0 ) 00000000ffe36b48: do?branch ( Empty ) 00000000ffe36b98: loader-base ( 6000 ) 00000000ffe36ba0: plat-booter$ ( 6000 ffe359f0 12 ) 00000000ffe36ba8: diagnostic-mode? ( 6000 ffe359f0 12 ffffffffffffffff ) 00000000ffe36bb0: do?branch ( 6000 ffe359f0 12 ) 00000000ffe36bc0: (") ( 6000 ffe359f0 12 ffe36bd0 9 ) 00000000ffe36be0: type Loading: ( 6000 ffe359f0 12 ) 00000000ffe36be8: 2dup ( 6000 ffe359f0 12 ffe359f0 12 ) 00000000ffe36bf0: type /platform//ufsboot ( 6000 ffe359f0 12 ) 00000000ffe36bf8: cr ( 6000 ffe359f0 12 ) 00000000ffe36c00: get-file ( ffffffffffffffff ) 00000000ffe36c08: do?branch ( Empty ) 00000000ffe36c18: loader-base ( 6000 ) 00000000ffe36c20: def-booter$ ( 6000 ffe359f0 17 ) 00000000ffe36c28: diagnostic-mode? ( 6000 ffe359f0 17 ffffffffffffffff ) 00000000ffe36c30: do?branch ( 6000 ffe359f0 17 ) 00000000ffe36c40: (") ( 6000 ffe359f0 17 ffe36c50 9 ) 00000000ffe36c60: type Loading: ( 6000 ffe359f0 17 ) 00000000ffe36c68: 2dup ( 6000 ffe359f0 17 ffe359f0 17 ) 00000000ffe36c70: type /platform/sun4u/ufsboot ( 6000 ffe359f0 17 ) 00000000ffe36c78: cr ( 6000 ffe359f0 17 ) 00000000ffe36c80: get-file ( ffffffffffffffff ) 00000000ffe36c88: do?branch ( Empty ) 00000000ffe36c98: (") ( ffe36ca8 11 ) 00000000ffe36cc0: type Boot load failed. ( Empty ) 00000000ffe36cc8: cr ( Empty ) 00000000ffe36cd0: exit ok
-Nick
HTH,
Mark.
-------- This e-mail may contain confidential and privileged material for the sole use of the intended recipient. If this email is not intended for you, or you are not responsible for the delivery of this message to the intended recipient, please note that this message may contain SEAKR Engineering (SEAKR) Privileged/Proprietary Information. In such a case, you are strictly prohibited from downloading, photocopying, distributing or otherwise using this message, its contents or attachments in any way. If you have received this message in error, please notify us immediately by replying to this e-mail and delete the message from your mailbox. Information contained in this message that does not relate to the business of SEAKR is neither endorsed by nor attributable to SEAKR.