On 2016-Apr-16 12:48 , Programmingkid wrote:
I wanted to share what I found out. If I remove the '\r' to '\n' patch that allows Mac OS 9 to boot, the boot script will stop executing at a r> word. This is the position:

<BOOT-SCRIPT>
here &gt;r
dev /
cr ." Checkpoint 1" cr " model" active-package get-package-property abort" can't find MODEL"
[...]


r&gt;		<---------------  This is where execution stops


[...]
This boot script was taken from the Mac OS 9 file "Mac OS ROM". 

Does anyone have any idea why removing '\r' characters from the script makes it work? 

I'm baffled. There are two other lines above which are end-of-line sensitive, using the "dev" word:

dev ( "device-specifier<eol>" -- ) Make the specified device node the active package.

Parse device-specifier delimited by end of line. Perform the equivalent of find-device with device-specifier as its argument.

Used as: ok dev device-specifier <eol>

You could try replacing the two lines with the equivalent find-device operations:
" /" find-device
" /openprom" find-device
which aren't end-of-line sensitive, but if that were the problem, we wouldn't be seeing the checkpoint 1 message.

Usually when something blows up on a r>, that means the return stack has been clobbered - and I don't see anything there that looks like it would clobber it based on an eol.
Microsoft Word - 1275.DOC