|
Subject: Re: Open Firmware 3 Boot, revisited Newsgroups: gmane.os.netbsd.ports.macppc Date: 2005-02-28 21:51:16 GMT (4 years, 17 weeks, 6 days, 8 hours and 52 minutes ago) Generally, forth is postfix and either interprets tokens (sep. by whitespace) as numbers or address and places them on the stack, or as a 'word' or function and runs it. However, words can manipulate the line being read, taking over the parsing, that's why you need a space around ", it's actually an operator like +, but it takes over parsing and reads until next " , makes that into a string , (allocates memory for it) and leaves address on the stack. So " screen" output, is actually passing an address to output. >>> setenv boot-command " screen" output boot Setenv also parses the line, that's how it apparently provides "prefix/normal" interface. Also, it means you can't just paste other forth stuff into it, because it won't work. Mainly, because setenv isn't really 'normal' forth, also, neither is boot, for that matter. To make matters more confusing, the trick only works in interpreted mode when there's an line being parsed in, in 'compiled mode' or inside a function, it won't. I rediscovered this aspect of forth, when I was experimenting with an interactive boot menu, since I factored my menu into other functions, I hit a snag as I couldn't just use straight forward boot commands I was used to. At any rate, the CD just wants to set the output once, for 1 boot only, and doesn't mess w/ the nvram, setenv sets nvram. In fact, it should already be 'screen', but if it needs setting I think: setenv output-device screen would work, you can check current setting with printenv. What's the machine doing right now? Also, wasn't that for machines were OF defaulted to serial? Machines where option-command-o-f would put the ok prompt on a serial line?. Isn't this a mini? I'm thinking you want you leave boot-command alone, and try boot-file. And experiment maybe by wrapping the boot file: make a text file, boot that and, at the bottom execute boot again with your parameters: something like: ------------ |
|
|