Patrick Welche <prlw1@cam.ac.uk>
[netbsd-mini2440.git] / distrib / notes / macppc / install
blob1d16d29647ea151a5686237561aca45d52de42f6
1 .\"     $NetBSD: install,v 1.36 2007/12/14 21:15:59 pavel Exp $
3 .Ss2 Open Firmware boot syntax
5 The syntax of the Open Firmware
6 .Ic boot
7 command is:
8 .Pp
9 .Dl boot boot-device [boot-file] [-as]
10 .Pp
11 where the
12 .Li boot-device
13 describes where to find the bootloader,
14 .Li boot-file
15 describes where to find the
16 .Nx
17 kernel, and the options specify how you want to boot.
18 .Pp
19 You use the
20 .Li boot-device
21 to tell Open Firmware where to find
22 .Xr ofwboot 8
23 by listing the device, the partition (if it's a disk), and the filename
24 of the bootloader (if using
25 .Pa ofwboot.xcf ) .
26 .Pp
27 If the
28 .Li boot-file
29 is on the same device and partition (if it's a disk) as the
30 .Li boot-device
31 then you can just specify the kernel filename.
32 Otherwise, you need to specify the full Open Firmware path to the kernel.
33 .Pp
34 The
35 .Fl a
36 flag will ask you for the location of the next item to load
37 (i.e. the bootloader will ask where the kernel is (if unspecified),
38 or the kernel will ask where the root file system is).
39 The
40 .Fl s
41 flag will boot into
42 .Sq single-user
43 mode.
44 .Pp
45 The exact command you will be using depends on which version of Open Firmware
46 your machine has and which device you will be booting from.
47 Sometimes you may have to guess as we don't know all of the combinations
48 of models, device names, and file names.
49 In general the format is:
50 .Li "device:[partition][,\efilename]" .
51 Keep in mind for the future that you may be able to have your
52 .Li boot-device
53 and
54 .Li boot-file
55 on entirely different devices (such as the bootloader netbooted from
56 .Li enet
57 and the kernel loaded from a hard drive on the
58 .Li ultra0
59 ATA/IDE bus).
60 .Pp
61 We'll try to walk you through the process of figuring out what Open
62 Firmware calls your device, partition, and file names.
63 To start with, Open Firmware keeps a
64 .Dq device tree
65 with all of the devices it finds in your system.
66 You can get a listing of the nodes in this device tree with the
67 .Ic dev
68 and
69 .Ic ls
70 commands.
71 .Ic dev
72 is similar to the unix
73 .Ic cd
74 command and is used to change between the nodes in the Open Firmware
75 device tree (similar to a file system).
76 .Ic ls
77 of course is similar to the unix
78 .Ic ls
79 command and is used to list the contents of the current device node.
80 To get a listing of all the devices available in your system, use the
81 following commands:
82 .(disp
83 .No 0 \*[Gt] Ic "dev /"
84 .No 0 \*[Gt] Ic "ls"
85 .disp)
86 .Pp
87 Open Firmware has device aliases which are simple names for the full
88 hardware path to a device (similar to
89 .Ic alias
91 .Xr csh 1 ).
92 You can find out
93 what device aliases Apple created on your machine with the
94 .Ic devalias
95 command.
96 For example, here are the devaliases on a PowerMacintosh 7300:
97 .Pp
98 .(disp
99 .No 0 \*[Gt] Ic devalias
100 vci0                /chaos@F0000000
101 pci1                /bandit@F2000000
102 pci2                /bandit@F4000000
103 fd                  /bandit/gc/swim3
104 kbd                 /bandit/gc/via-cuda/adb/keyboard
105 ttya                /bandit/gc/escc/ch-a
106 ttyb                /bandit/gc/escc/ch-b
107 enet                /bandit/gc/mace
108 scsi                /bandit/gc/53c94
109 scsi-int            /bandit/gc/mesh
110  ok
111 .disp)
113 On most systems, you'll find the devices you're looking for.
114 Typical aliases are:
115 .Bl -column xxx "scsi-intxxxxxx" "internal scsi bus (on system with multiple SCSI busses)"
116 .It Ta Li hd Ta No "internal hard drive"
117 .It Ta Li cd Ta No "CD-ROM drive"
118 .It Ta Li zip Ta No "internal Zip drive"
119 .It Ta Li enet Ta No ethernet
120 .It Ta Li fd Ta No "floppy drive"
121 .It Ta Li scsi Ta No "SCSI bus"
122 .It Ta Li scsi-int Ta No "internal SCSI bus (on systems with multiple SCSI busses)"
123 .It Ta Li ata Ta No "ATA/IDE bus"
124 .It Ta Li ideN Ta No "ATA/IDE bus number N"
125 .It Ta Li ultraN Ta No "Ultra/66 or Ultra/100 IDE bus number N"
128 Note that some of these items are the device itself, and some are a bus.
129 When you only have the devalias to a bus, you need to specify which
130 device on that bus you want to use.
131 You can use the Open Firmware
132 .Ic dev No and Ic ls
133 commands.
134 For example, here are the devices on the internal SCSI bus of a
135 PowerMacintosh 7300:
136 .(disp
137 .No 0 \*[Gt] Ic "dev scsi-int"
138 .No 0 \*[Gt] Ic "ls"
139 FF83C850: /sd@0,0
140 FF83D480: /st@0,0
141  ok
142 .disp)
144 In this case, Open Firmware seems to be saying there are two devices, both
145 at address zero (one is a SCSI disk
146 .Sq sd@0,0
147 and the other is a SCSI tape
148 .Sq st@0,0 ).
149 Unfortunately, older systems will only list the naming convention and not
150 the actual devices currently connected, but that's OK -- we've got more
151 tricks up our sleeve.
153 If you've got ATA/IDE drives, you have all the device information you need
154 (since Apple only ever ships drives as
155 .Dq master
156 which is typically something like
157 .Li ata-disk@0 , Li ATA-Disk@0 , Li atapi-disk , or Li disk@0 ).
159 You can find out the devices on your SCSI bus with the
160 .Ic show-children
161 command:
162 .(disp
163 .No 0 \*[Gt] Ic "dev scsi-int"
164 .No 0 \*[Gt] Ic "show-children"
165 Target 0
166   Unit 0  Disk     IBM     DCAS-32160      S65A
167 Target 3
168   Unit 0  Removable Read Only device    SONY    CD-ROM CDU-8005 1.0j
169  ok
170 .disp)
172 Open Firmware calls SCSI IDs
173 .Dq Li Target .
175 .Dq Li Unit
176 number is the Logical Unit Number (LUN).
177 This is almost always zero.
178 Thus, this PowerMacintosh system has an IBM hard drive (DCAS-32160) at
179 SCSI ID 0, and a Sony CD-ROM drive (CDU-8005) at SCSI ID 3.
181 Now, we've got enough information to construct the device name for
182 Open Firmware.
183 Just stick everything together to describe to Open Firmware what you want.
184 For example, Open Firmware calls the CD-ROM drive
185 in this system
186 .Li scsi-int/sd@3 .
188 To determine if a device is bootable, type:
190 .(disp
191 .No 0 \*[Gt] Ic dev scsi-int/sd@3
192 .No 0 \*[Gt] Ic words
193 load          write        read          seek        close     open
194 write-blocks  read-blocks  max-transfer  block-size  dma-sync  dma-map-out
195 dma-map-in    dma-free     dma-alloc
196  ok
197 .disp)
199 If the
200 .Ic word Dq Li open
201 is present in the list, then the device is almost certainly bootable.
203 Next, you need to figure out what partition Open Firmware thinks your
204 bootloader is located on if you're going to boot from a disk.
205 If you're using a
206 .Dq "partition zero"
207 bootloader, the answer is obvious: 0.
208 Thus, your
209 .Li boot-device
210 for the
211 .Nx*M
212 CD-R image on an Open Firmware 1.0.5 system would be
213 .Li scsi-int/sd@3:0
214 since the image has a
215 .Sq "partition zero"
216 bootloader.
218 Other situations get a little
219 trickier, as we know of no way to get a partition map from
220 within Open Firmware, and it uses a different numbering scheme than either
222 or MacOS 9 (or earlier).  You can use
223 .Ic pdisk
224 to get a listing of the partitions on a disk.
225 See the Partitioning HOW-TO for help:
226 .Lk http://www.NetBSD.org/ports/macppc/partitioning.html#pdisk
228 Typically, MS-DOS and ISO9660 formatted disks have their file systems at
229 partition 1.
230 Typically, Drive Setup formatted disks have their
231 file systems starting at partition number 9.
232 Often, if you omit the partition number, Open Firmware
233 looks in the first partition it understands holding a valid file system.
235 Open Firmware uses a comma (,) to separate the partition number from the
236 filename.
237 It uses a backslash (the
238 .Pa \e
239 character) to separate directories.
240 The bootloader uses forward slashes (the
241 .Pa /
242 character) to separate directories when specifying the
243 .Li boot-file .
244 Thus, to specify the top of the
245 file system on a CD-ROM in the example PowerMacintosh 7300 system, you'd
246 use:
247 .Li scsi-int/sd@3:,\e
249 Now, to confirm that you and Open Firmware are looking at the same files,
250 you can get a directory listing of the file system on your device with the
251 .Ic dir
252 command.
253 This command is only useful with file systems that Open Firmware
254 understands and is able to boot from.
255 On Open Firmware 1.0.5, 1.1.22, and 2.0.x systems, you can use
256 .Ic dir
257 on ISO9660 (not hybrid) and MS-DOS file systems.
258 On Open Firmware 2.4, you can use it on HFS, HFS+, hybrid, ISO9960,
259 and MS-DOS file systems.
260 On Open Firmware 3, you can use it on HFS, HFS+, hybrid (not pure ISO9660),
261 and MS-DOS file systems.  The one exception to this rule is that Open 
262 Firmware cannot list files on a disk with a 
263 .Sq "partition zero"
264 bootloader (including the 
265 .Nx*M
266 CD-R image and installation floppies).
267 .(disp
268 .No 0 \*[Gt] Ic "dir fd:,\e"
269 FINDER  .DAT 022 2 2B8
270 DESKTOP .    022 0 0
271 RESOURCE.FRK 012 3 0
272 NETBSD~1.GZ  020 5 1FDFCA
273 TRASH   .    010 B00 0
274 OFWBOOT .XCF 020 A75 D8F4
275  ok
276 .disp)
277 You can see that this MS-DOS
278 formatted disk has a bunch of stuff, as well as the two important files:
279 .Pa NETBSD~1.GZ No and Pa OFWBOOT.XCF .
280 Note that
281 .Tn MacOS
282 shortened
283 .Pa netbsd-GENERIC_MD.gz No to Pa NETBSD~1.GZ
284 since MS-DOS file systems can only natively hold 8 characters for the
285 filename.
286 .(Note
287 Keep in mind that Open Firmware is often case-sensitive when it
288 comes to filenames.
289 .Note)
290 .(Note
291 You may need to append a 
292 .Pa ;1
293 to the filename when using a ISO 9660 file system.  This
294 .Dq "version number"
295 is part of the ISO 9660 specification and will show up in the directory 
296 listing if it is present on the disk.  For example:
297 .(disp
298 .No 0 \*[Gt] Ic "boot cd:,\eOFWBOOT.XCF;1 NETBSD.MACPPC;1"
299 .disp)
300 .Note)
302 If the
303 .Ic dir
304 command showed you the files you're looking for, then you've figure out
305 how to tell Open Firmware to look for your bootloader!
306 In this case, your
307 .Sq Li boot-device
309 .Sq Li fd:,\eOFWBOOT.XCF
310 and your
311 .Sq Li boot-file
313 .Sq Li fd:,/NETBSD~1.GZ .
315 For additional help, see
316 .Xr ofwboot 8
317 and the FAQ on topics like how to use the
318 Open Firmware command environment and how to boot from a device attached
319 to a PCI card which has Open Firmware support:
320 .Lk http://www.NetBSD.org/ports/macppc/faq.html#ofw-use
321 .Lk http://www.NetBSD.org/ports/macppc/faq.html#boot-pci
323 .Ss2 Examples of Open Firmware boot commands
325 Here are some examples of the commands you might use to boot your system:
326 .(bullet
327 .To 2 "Booting the NetBSD/macppc install CD-R"
328 .Em "Booting the NetBSD/\*M install CD-R"
330 (Open Firmware 1.0.5, Open Firmware 1.1.22, Open Firmware 2.0.x, Open
331 Firmware 2.4)
333 Here are some examples of what you might use to boot from CD-ROM (Apple
334 usually sets their CD-ROM drives to SCSI ID 3):
336 .(disp
337 .No 0 \*[Gt] Ic "boot cd:0 NETBSD.MACPPC"
338 .No 0 \*[Gt] Ic "boot scsi-int/sd@3:0 NETBSD.MACPPC"
339 .No 0 \*[Gt] Ic "boot scsi/sd@3:0 NETBSD.MACPPC"
340 .No 0 \*[Gt] Ic "boot ata/atapi-disk:0 NETBSD.MACPPC"
341 .No 0 \*[Gt] Ic "boot ide1/disk@0:0 NETBSD.MACPPC"
342 .disp)
345 .Em "Booting the NetBSD/\*M install CD-R"
347 (Open Firmware 3)
349 .(disp
350 .No 0 \*[Gt] Ic "boot cd:,\eofwboot.xcf netbsd.macppc"
351 .disp)
353 .To 2 "Booting the NetBSD install floppies"
354 .Em "Booting the NetBSD install floppies"
356 (Open Firmware 1.0.5, Open Firmware 1.1.22, Open Firmware 2.0.x, Open
357 Firmware 2.4)
359 The first floppy disk has a
360 .Sq "partition zero"
361 bootloader.  When it has loaded the kernel, it will ask you to insert the
362 second floppy disk.
363 .(Note
364 This is not a normal
365 .Tn MacOS
366 boot floppy -- you must enter Open Firmware and type a boot command.
367 .Note)
368 All you need to do is:
370 .(disp
371 .No 0 \*[Gt] Ic boot fd:0
372 .disp)
374 It is common to see
375 .Dq "READ TIMEOUT@"
376 from the floppy.  This means that Open
377 Firmware is having difficulty reading the media.  See the section below on
378 .Sx "Common Problems and Error Messages"
379 for more information about this and what you can do to get a successful boot.
381 You can eject a floppy by typing:
383 .(disp
384 .No 0 \*[Gt] Ic eject fd
385 .disp)
387 .To 2 "Booting an IDE or SCSI drive with an HFS partition"
388 .Em "Booting an IDE or SCSI drive with an HFS or HFS+ partition"
390 (Open Firmware 2.4, Open Firmware 3)
392 .Tn MacOS
393 drives have several system-level partitions reserved for
394 .Tn MacOS
395 drivers.
396 You may find that your first HFS or HFS+ partition might be as high as
397 partition 9.
398 You may need to keep trying higher partition numbers until you find the one
399 that has your bootloader.  You can use
400 .Ic pdisk
401 to print out your partition map:
402 .Lk http://www.NetBSD.org/ports/macppc/partitioning.html#pdisk
404 You should use the Open Firmware
405 .Ic dir
406 command to get a directory listing of the files on your hard drive.
408 If bootloader is on a different partition from the
410 kernel, you will need to specify where to find the kernel.
412 Remember, that SCSI Zip disks are usually ID 5 or 6.
413 Internal hard drives are usually SCSI ID 0.
415 Here are some examples of what you might use to boot the installer kernel
416 located on an HFS or HFS+ partition:
418 .(disp
419 .No 0 \*[Gt] Ic "boot hd:9,\eofwboot.xcf netbsd-GENERIC_MD.gz"
420 .No 0 \*[Gt] Ic "boot scsi/sd@0:9,\eofwboot.xcf netbsd-GENERIC_MD.gz"
421 .No 0 \*[Gt] Ic "boot ide0/disk@0:10,\eofwboot.xcf netbsd-GENERIC_MD.gz"
422 .No 0 \*[Gt] Ic "boot ultra1:9,ofwboot.xcf netbsd-GENERIC_MD.gz"
423 .disp)
426 .To 2 "Booting a custom CD-ROM"
427 .Em "Booting a custom CD-ROM"
429 (All Open Firmware versions)
431 Open Firmware doesn't understand long filenames (created with the RockRidge
432 and Joliet extensions), so you may need to figure out what your file is
433 called.  You should use the Open Firmware
434 .Ic dir
435 command to get a listing of the files on your CD.
437 For instance,
438 .Ic Toast
440 .Tn MacOS
441 creates CDs with long filenames, but uses
442 .Tn MS-DOS
443 style short names
444 as well.
445 Instead of referencing
446 .Pa netbsd-GENERIC
447 you would need to open
448 .Pa NETBSD-G.ENE
450 .Ic mkisofs
451 program has a similar problem,
452 .Pa netbsd-GENERIC_MD.gz
453 becomes
454 .Pa NETBSD-GENERIC_MD.GZ .
456 Another thing to note is that you
457 .Em must
458 use the same case when specifying the filename to load that Open Firmware
459 uses.
460 Also, keep in mind what format your CD-R has to be for your version of
461 Open Firmware (pure ISO versus hybrid ISO/HFS).
463 We'll assume that you've wisely renamed your kernel to
464 .Pa netbsd.gz
465 to avoid many of these name issues.
466 Here are some examples of what you might use to boot from CD-ROM
467 (Apple usually sets their CD-ROM drives to SCSI ID 3):
469 .(disp
470 .No 0 \*[Gt] Ic "boot cd:,\eofwboot.xcf netbsd.gz"
471 .No 0 \*[Gt] Ic "boot scsi-int/sd@3:,\eOFWBOOT.XCF NETBSD.GZ"
472 .No 0 \*[Gt] Ic "boot scsi/sd@3:,\eOFWBOOT.XCF NETBSD.GZ"
473 .No 0 \*[Gt] Ic "boot ata/atapi-disk:,\eOFWBOOT.XCF NETBSD.GZ"
474 .No 0 \*[Gt] Ic "boot ide1/disk@0:,\eOFWBOOT.XCF NETBSD.GZ"
475 .disp)
477 .To 2 "Booting an MS-DOS floppy"
478 .Em "Booting an MS-DOS floppy"
480 (Open Firmware 1.0.5, Open Firmware 1.1.22, Open Firmware 2.0.x, Open
481 Firmware 2.4)
482 .(Note
483 This is not a normal
484 .Tn MacOS
485 boot floppy -- you must enter Open Firmware and type a boot command.
486 .Note)
488 Use the Open Firmware
489 .Ic dir
490 command to get a listing of the files on the floppy.
491 Typically you'll find filenames like
492 .Li OFWBOOT.XCF No and Li NETBSD~1.GZ .
493 .(disp
494 .No 0 \*[Gt] Ic "boot fd:,\eOFWBOOT.XCF NETBSD~1.GZ"
495 .disp)
497 You can eject a floppy by typing:
499 .(disp
500 .No 0 \*[Gt] Ic eject fd
501 .disp)
503 .To 2 "Booting over the ethernet"
504 .Em "Booting over the ethernet"
506 (Open Firmware 1.0.5, Open Firmware 1.1.22, Open Firmware 2.0.x, Open
507 Firmware 2.4)
509 You can try the simple form (i.e. that you are booting from ethernet):
511 .(disp
512 .No 0 \*[Gt] Ic "boot enet:,ofwboot.xcf"
513 .disp)
515 Or you may be more specific,
516 specifying the bootloader filename and the kernel name:
518 .(disp
519 .No 0 \*[Gt] Ic "boot enet:,ofwboot.xcf enet:,/netbsd-GENERIC_MD.gz"
520 .disp)
521 .(Note
522 Some Open Firmware 1.0.5 machines have their MAC address stored
523 incorrectly.
524 Make sure that your netboot server is using the same MAC
525 address that your \*M client is using.
526 See the section on
527 .Sx "Setting up Open Firmware 1 and 2 to boot NetBSD"
528 to figure out your MAC address.
529 .Note)
530 .(Note
531 Some machines cannot load compressed kernels over ethernet.
532 Uncompress them first.
533 .Note)
535 .Em "Booting over the ethernet"
537 (Open Firmware 3)
539 You can try the simple form (i.e. that you are booting from ethernet):
541 .(disp
542 .No 0 \*[Gt] Ic "boot enet:0"
543 .disp)
545 Or you may be more specific,
546 specifying the bootloader filename and the kernel name:
548 .(disp
549 .No 0 \*[Gt] Ic "boot enet:0,ofwboot.xcf enet:0,/netbsd-GENERIC_MD.gz"
550 .disp)
552 .To 2 "Booting an IDE or SCSI drive with 'partition zero'"
553 .Em "Booting an IDE or SCSI drive with a"
554 .Sq Em "partition zero"
555 .Em bootloader
557 (Open Firmware 1.0.5, Open Firmware 1.1.22, Open Firmware 2.0.x, Open
558 Firmware 2.4)
560 You do not specify a file to load, since the
561 .Sq "partition zero"
562 booloader knows what to do.
563 You would boot such a system if you have dumped
564 the CD-R image to your drive, or if you have an already-installed
565 .Nx*M
566 system
568 Remember, that SCSI Zip disks are usually ID 5 or 6.
569 Internal hard drives are usually SCSI ID 0.
571 Here are some examples of what you might use to boot from such a drive:
573 .(disp
574 .No 0 \*[Gt] Ic "boot zip:0"
575 .No 0 \*[Gt] Ic "boot scsi-int/sd@0:0"
576 .No 0 \*[Gt] Ic "boot scsi/sd@0:0"
577 .No 0 \*[Gt] Ic "boot ata/ata-disk@0:0"
578 .No 0 \*[Gt] Ic "boot ata/ATA-Disk@0:0"
579 .No 0 \*[Gt] Ic "boot ide0/disk@0:0"
580 .disp)
581 .bullet)
583 .Ss2 Example of a normal boot
585 Of course, a lot of the information in this example depends on your model
586 and what your boot method is, but we'll include this anyways just so you
587 get an idea of what to expect (user-typed commands are in
588 .Ic bold ) .
589 .(disp
590  Apple PowerBook3,1 2.1f1 BootROM built on 01/29/00 at 22:38:07
591  Copyright 1994-2000 Apple Computer, Inc.
592  All Rights Reserved
594  Welcome to Open Firmware.
595  To continue booting, type "mac-boot" and press return.
596  To shut down, type "shut-down" and press return.
597   ok
598 .No  0 \*[Gt] Ic "boot enet:,ofwboot.xcf netbsd-GENERIC_MD.gz"
599  loading XCOFF
600  tsize=C280 dsize=14AC bsize=2620 entry=600000
601  SECTIONS:
602  .text    00600000 00600000 0000C280 000000E0
603  .data    0060D000 0060D000 000014AC 0000C360
604  .bss     0060E4B0 0060E4B0 00002620 00000000
605  loading .text, done..
606  loading .data, done..
607  clearing .bss, done..
609  \*[Gt]\*[Gt] NetBSD/macppc OpenFirmware Boot, Revision 1.3
610  \*[Gt]\*[Gt] (tsubai@mint.iri.co.jp, Sun Nov 26 01:41:27 JST 2000)
611  1701508+177748 [100+68176+55886]=0x1e9468
613   start=0x100000
614  Copyright (c) 1996, 1997, 1998, 1999, 2000, 2001
615      The NetBSD Foundation, Inc.  All rights reserved.
616  Copyright (c) 1982, 1986, 1989, 1991, 1993
617      The Regents of the University of California.  All rights reserved.
619  NetBSD 1.5.1 (INSTALL) #0: Thu Mar 15 00:52:56 PST 2001
620      mw@al:/usr/src/sys/arch/macppc/compile/INSTALL
621  total memory = 192 MB
622  avail memory = 172 MB
623  using 2483 buffers containing 9932 KB of memory
624  [...]
625  erase ^H, werase ^W, kill ^U, intr ^C, status ^T
626  Terminal type? [vt100]
627  Erase is backspace.
628  (I)nstall, (S)hell or (H)alt ?
629 .disp)
631 .Ss2 Common Problems and Error Messages
633 This is a brief list of some of the Open Firmware problems you may run into.
634 See the
635 .Nx*M
636 FAQ for a thorough list.
637 .Lk http://www.NetBSD.org/ports/macppc/faq.html#boot-trouble
638 .(Note
639 You may find it necessary to remove all non-Apple devices from your
640 machine.
641 Some users have found this necessary.
642 .Note)
644 .(bullet
645 .To 2 "Black screen"
646 Black screen
648 If your system is a PowerBook,
650 may have turned down the brightness of the backlight.
651 Use the buttons to turn your brightness back up.
653 Otherwise, you need a serial console.
654 See the section entitled
655 .Sx "Open Firmware 1 and 2 System Preparation"
657 .To 2 "Grey screen with flashing question mark"
658 Grey screen with flashing question mark
660 This means that your system is trying to boot
661 .Tn MacOS .
662 You might get to this state if you didn't properly enter Open Firmware, or if
663 your Open Firmware boot command has bad syntax.
665 If you typed a bad boot command, Open Firmware tries to boot from the
666 value stored in the
667 .Li boot-device
668  variable, whose default value is the MacOS ROM.
670 The grey screen with the icon is generated by the MacOS ROM.
671 A flashing question-mark or broken folder means that your machine
672 is looking for a bootable MacOS file system, but can't find one.
673 A globe icon means that your machine is looking for a netboot server.
674 A happy face or spinning disc means it's starting to boot MacOS.
676 The boot floppy does not have a bootable MacOS file system, it has a
677 bootable NetBSD file system.
679 Reboot, re-enter Open Firmware and check your syntax carefully.
681 .(Note
682 Don't forget to check your Open Firmware environment variables, as they
683 may have been changed by your brief excursion into
684 .Tn MacOS .
685 .Note)
687 .To 2 "Information on your screen seems garbled or out of sync"
688 Information on your screen seems garbled or out of sync
690 If you have a PowerMacintosh 7300 through 8600, then you need to read the
691 section on System Disk and the patches it applies.
692 See the section entitled
693 .Sx "Open Firmware 1 and 2 System Preparation"
695 If you have a Twentieth Anniversary Macintosh, Open Firmware does not work
696 with the internal display, you will need to set up a serial console.
699 .To 2 "DEFAULT CATCH!"
700 .Dq Li "DEFAULT CATCH!"
702 This is a general message from Open Firmware to the effect that it had
703 trouble loading a file.
705 If your machine is Open Firmware version 1.0.5, 2.0.x, or 2.4, this error
706 does sometimes appear randomly.
707 You might try the boot command a second time
708 (this is known to work on some models).
709 It's also an indication that either your floppy disk is bad,
710 or the floppy drive is bad.
711 Try doing a low-level format on the floppy, re-copy the files, and try again.
713 There are several models that cannot be booted while using the on-board
714 video and keyboard.
715 Try using a serial console.
717 .To 2 "CLAIM failed"
718 .Dq Li "CLAIM failed"
720 This is a general message from Open Firmware to the effect that it failed
721 to allocate some memory or memory is messed up.
723 First, make sure you have the Open Firmware variable
724 .Li load-base
725 set correctly.
726 If your system is Open Firmware version 1.0.5, 1.1.22,
727 2.0.x, or 2.4, see the section above on
728 .Sx "Setting up Open Firmware 1 and 2 to boot NetBSD"
730 Do not change
731 .Li load-base
732 on an Open Firmware 3 system.
734 Reset your system and try using a different boot command (this is the 
735 only way some people have gotten their Open Firmware 2.4 systems to work):
736 .(disp
737 .No 0 \*[Gt] Ic "0 bootr boot-device boot-file"
738 .disp)
740 If you tried one boot command and it failed, then you tried a second and
741 got the
742 .Li CLAIM failed
743 message, then this is an indication that you should reboot between attempts.
744 Use the Open Firmware
745 .Ic reset-all
746 command.
748 Contradictorily, if your machine is Open Firmware version 1.0.5, 2.0.x or
749 2.4, this error does sometimes appear randomly.
750 You might try the boot command a second time
751 (this is known to work on some models).
753 There are several models that cannot be booted while using the on-board
754 video and keyboard.
755 Try using a serial console.
757 .To 2 "can't OPEN"
758 .Dq Li "can't OPEN"
760 Open Firmware either can't open the device you specified (because it is not
761 present or the device path is mistyped) or the file you specified.
762 Check your typing and check to make sure that the media has the
763 files you think it has.
765 Use the NetBSD
766 .Ic pdisk
767 command to list the partition map and the Open Firmware
768 .Ic dir
769 command to verify that the file(s) you tried accessing are really there.
771 .To 2 "unrecognized Client Program formatstate not valid"
772 .Dq Li "unrecognized Client Program formatstate not valid"
774 This is a general Open Firmware error message indicating that the filename
775 you tried to open either doesn't exist or is in the wrong format.
776 For Open Firmware 1 and 2 machines, it must be an XCOFF file (such as
777 .Pa ofwboot.xcf )
778 and for Open Firmware 3 machines, it must be either XCOFF or ELF (such as
779 a kernel).
780 Make sure that you have use binary mode to FTP the files, and
781 that they are properly uncompressed.
783 .To 2 "bad partition number, using 0no bootable HFS partition"
784 .Dq Li "bad partition number, using 0no bootable HFS partition"
786 If you're trying to boot an Open Firmware 1.0.5, 1.1.22, or 2.0.x system,
787 this probably means that your media (i.e. hard drive or CD-ROM) has an HFS
788 file system on it (such as a hybrid CD-R or a hard drive with MacOS
789 partitions).
791 .To 2 "READ TIMEOUT@"
792 .Dq Li "READ TIMEOUT@"
794 Open Firmware is having trouble reading your floppy disk.  Things to try:
795 .(bullet -compact
796 Try booting from the floppy again
798 Try a different floppy disk
800 Try writing the floppy on the same machine you're trying to boot
802 Clean the floppy drive
804 Use another boot method
805 .bullet)
807 As disk drives get older, especially with portables, they can get a
808 little bit out of alignment so that they do not consistently read disks
809 written on other floppy drives.  Strongly consider writing the floppies
810 on the same machine that will be reading them.
812 .To 2 "TFTP timeout"
813 .Dq Li "TFTP timeout"
815 Either the server's TFTP server isn't running, or you're using a model
816 with Open Firmware 1.0.5 and not specifying the location of the bootloader.
817 Unfortunately, on the early models,
818 .Pa ofwboot.xcf
819 gets confused and doesn't work right unless you load it explicitly from the
820 .Li boot-device ,
821 even if the bootp or DHCP server provides the correct information.
822 You need to boot with a command like:
823 .(disp
824 .No 0 \*[Gt] Ic "boot enet:,ofwboot.xcf"
825 .disp)
827 .To 2 "enet:,/netbsd.ram.gz: Inappropriate file type or format"
828 .Dq Li "enet:,/netbsd.ram.gz: Inappropriate file type or format"
830 Some systems booting over ethernet can't load compressed 
831 kernels.  Use 
832 .Xr gunzip 1
833 to uncompress the kernel before attempting to netboot.
835 .To 2 "Bootloader hangs before the copyright notice"
836 Bootloader hangs before the copyright notice and the kernel configuration
838 You forgot to set
839 .Li real-base
840 in Open Firmware or it got erased by your booting into
841 .Tn MacOS .
843 Make sure you have the Open Firmware variable
844 .Li real-base
845 set correctly.
846 If your system is Open Firmware version 1.0.5, 1.1.22,
847 2.0.x, or 2.4, see the section above on
848 .Sx "Setting up Open Firmware 1 and 2 to boot NetBSD"
850 Do not set
851 .Li real-base
852 on an Open Firmware 3 system.
854 .To 2 "Hang after configuring devices"
855 Hang after configuring devices, but before doing anything else
857 Actually, this can have many causes.
858 The most likely is a keyboard problem.
859 First, try plugging the USB keyboard directly into the computer
860 (i.e. not through a hub) and unplugging the mouse.
862 If you're trying a model that's not on the supported list (such as a new 
863 laptop model), they keyboard may not be supported yet.
864 .bullet)
866 .Ss2 Milestone
868 If you've reached this point, then you must've gotten the
870 installer to boot.
871 Congratulations!
872 That was the hard part.
873 From now through the rest of this document,
874 there should be no more Open Firmware
875 specific problems, so read everything because it applies to all models.
877 .so ../common/sysinst
879 .Ss2 "Finalizing Open Firmware settings"
881 Now, you can reboot to get to the Open Firmware prompt.  You still need 
882 to figure out how to get Open Firmware to boot the operating system(s) of 
883 your choice.  First, try to get 
884 .Nx*M
885 running.  Using the methods described in the section 
886 .Sx "Examples of Open Firmware boot commands"
887 figure out the boot command for your installation of
888 .Nx .
889 Try booting.  Once you've got the syntax worked out, decide which operating 
890 systems you'll be using regularly.
891 .(bullet
892 .To 2 "Booting NetBSD exclusively"
893 .Em "Booting NetBSD exclusively"
895 If you'll only be using
897 on your \*M system, then simply set the Open Firmware
898 .Sq Li boot-device
900 .Sq Li boot-file
901 variables to the values you just determined.  Also, you might want to 
902 enable the system to always boot
904 when powered on or reset.  Once you set up auto-booting you can get to 
905 the Open Firmware prompt again by using the
906 .Xr shutdown 8
907 command to halt the system.
909 If you are not using a
910 .Sq "partition zero"
911 style boot scheme (e.g. Open Firmware 3 models), then you would type 
912 something like the following:
914 .(disp
915 .No 0 \*[Gt] Ic "setenv auto-boot? true"
916 .No 0 \*[Gt] Ic "setenv boot-device ide0/disk@0:8,\eofwboot.xcf"
917 .No 0 \*[Gt] Ic "setenv boot-file ide0/disk@0:13,/netbsd"
918 .No 0 \*[Gt] Ic "reset-all"
919 .disp)
921 The last command resets the system so that these settings are stored.
923 If you are using a
924 .Sq "partition zero"
925 style boot scheme, you would type something like the following:
927 .(disp
928 .No 0 \*[Gt] Ic "setenv auto-boot? true"
929 .No 0 \*[Gt] Ic "setenv boot-device scsi/sd@0:0"
930 .No 0 \*[Gt] Ic "setenv boot-file netbsd"
931 .No 0 \*[Gt] Ic "reset-all"
932 .disp)
934 Replace
935 .Ic scsi/sd@0:0
936 with the actual device you will be booting from.
938 .To 2 "Additional Open Firmware tips"
939 .Em "Additional Open Firmware tips"
941 If you find that your system tries booting before your hard drive has
942 spun up, try one of the two following
943 .Sq Li boot-command
944 settings:
946 .(disp
947 .No 0 \*[Gt] Ic "setenv boot-command catch 5000 ms boot"
948 .No 0 \*[Gt] Ic "setenv boot-command begin ['] boot catch 1000 ms cr again"
949 .disp)
951 Also, you may be able to pause a system at the Open Firmware prompt
952 if you have 
953 .Sq Li auto-boot?
954 set to
955 .Sq Li true
956 by holding down any key while the system is resetting.  Set the 
957 following
958 .Sq Li boot-command
959 (this may not work on system with Open Firmware 1.0.5) (this method should
960 interrupt booting, even when holding down any key while using a serial 
961 console):
963 .(disp
964 .No 0 \*[Gt] Ic "setenv boot-command key? invert if boot then"
965 .disp)
967 .To 2 "Booting NetBSD and MacOS X or Darwin"
968 .Em "Booting NetBSD and MacOS X or Darwin"
970 Alas, this takes a little more work.  Usually, when you select a system 
971 to boot in the
972 .Dq "Startup Disk"
973 panel of the 
974 .Dq "System Preferences"
975 application, it stores the Open Firmware path to that device in the
976 .Sq Li boot-device
977 variable.  So, instead of writing the 
979 device path to Open Firmware, you'll store the paths to your operating 
980 systems in NVRAM.  Open Firmware cannot deal with nested
981 .Ic devalias
982 entries.  You must, therefore, enter the 
983 .Em entire
984 path to your device.  See the
985 .Nx*M 
986 .Ic nvedit
987 HOW-TO for more help:
988 .Lk http://www.NetBSD.org/ports/macppc/nvedit.html
990 .(disp
991 .No 0 \*[Gt] Ic "printenv boot-device"
992 boot-device /pci@f2000000/mac-io@17/ata-4@1f000/@0:10,\e\e:tbxi
993  ok
994 .No 0 \*[Gt] Ic "nvalias osx /pci@f2000000/mac-io@17/ata-4@1f000/@0:10,\e\e:tbxi"
995 .No 0 \*[Gt] Ic "nvalias bsd /pci@f2000000/mac-io@17/ata-4@1f000/@0:9,ofwboot.xcf"
996 .No 0 \*[Gt] Ic "nvstore"
997 .No 0 \*[Gt] Ic "setenv use-nvramrc? true"
998 .No 0 \*[Gt] Ic "reset-all"
999 .disp)
1001 Now, when the system is reset, it will stop at the Open Firmware prompt 
1002 and you can type one of the following to boot an operating system:
1003 .(disp
1004 .No 0 \*[Gt] Ic "boot osx"
1005 .No 0 \*[Gt] Ic "boot bsd"
1006 .disp)
1008 .To 2 "Booting NetBSD and MacOS 9 or earlier"
1009 .Em "Booting NetBSD and MacOS 9 or earlier"
1011 For Open Firmware 3 systems, the procedure is identical to the section 
1012 above on
1013 .Sx "Booting NetBSD and MacOS X or Darwin"
1015 For older systems, you're in for more hassle.  Booting an Open Firmware 
1016 1.0.5, 2.0.x, or 2.4 system into 
1017 .Tn MacOS
1018 9 or earlier will erase some or all of your Open Firmware settings.  Try 
1019 it and see which Open Firmware variables survive.  
1021 If only 
1022 .Sq Li real-base
1023 is lost, you can compile a kernel that does not require changing the
1024 .Sq Li real-base .
1025 Just build a kernel that is less than 4 MB uncompressed.  This is easy if
1026 you remove all of the USB devices from the config file.  Once you've got 
1027 a smaller kernel, just follow the procedure in the section above on
1028 .Sx "Booting NetBSD and MacOS X or Darwin"
1030 If everything is lost when you boot into 
1031 .Tn MacOS
1032 9 or earlier, you will need to make a custom BootVars 
1033 configuration that you run before trying to boot
1034 .Nx*M 
1035 since System Disk does not preserve enough information when it saves a 
1036 configuration.
1037 .(enum
1038 If your system supports System Disk, run it and click 
1039 .Dq Save
1040 to install the NVRAMRC patches.
1042 Run BootVars, click the 
1043 .Dq "All Variables"
1044 button.
1046 Fill in 
1047 .Sq Li real-base , 
1048 .Sq Li boot-device , 
1049 .Sq Li boot-file , 
1050 .Sq Li input-device , 
1052 .Sq Li output-device .
1054 From the 
1055 .Dq File
1056 menu, pick 
1057 .Dq Save .
1058 When you run this file, it will load BootVars with all your settings.  To 
1059 boot
1061 click the
1062 .Dq "Write&reboot"
1063 button.
1065 Now your system will always boot
1066 .Nx .
1067 To boot
1068 .Tn MacOS ,
1069 use the
1070 .Xr shutdown 8
1071 command to halt the system at the Open Firmware prompt and use the
1072 Open Firmware
1073 .Dq Li bye
1075 .Dq Li mac-boot
1076 command to boot
1077 .Tn MacOS .
1078 .enum)
1080 .To 2 "Other boot techniques"
1081 .Em "Other boot techniques"
1083 See the FAQ for some vague information on how to use the Linux
1084 .Ic yaboot
1085 system to boot
1086 .Nx .
1087 .Lk http://www.NetBSD.org/ports/macppc/faq.html#yaboot
1088 .bullet)