Subject: Re: Succeeded to boot from IDE on G3/266MT
To: Yoshihisa Sugimoto <sugimoto@sums.shiga-med.ac.jp>
From: None <scott@cybersource.com>
List: port-macppc
Date: 03/25/1999 01:57:58
I believe you can achieve these results by going into OF (cmd-ctrl-O-F at
boot) and typing:

setenv boot-device ide/disk@0:0
setenv boot-file netbsd

Only reason I'm not sure is the nvramrc stuff--I don't know Forth, but it
doesn't look like it has anything to do with these nvram vars.

Scott

--
scott@cybersource.com

On Thu, 25 Mar 1999, Yoshihisa Sugimoto wrote:

> Hi,
> 
> I've been trying to boot from IDE drive on PMG3/266MT. Finally, I succeeded
> to boot from the IDE drive.
> 
> My procedures were as follows;
> 
> 1) I installed binaries using bootfloppy-990119 according to the procedure d
> escribed by Mr. Fujiwara.
> http://www.ki.nu/software/NetBSD/PowerPC/starting.shtml
> 
> 2) I reset PRAM with Cmd+Option+P+R.
> 
> 3) I went back again into Mac OS, and used Multibooter 1.0d13 which was an u
> tility program for Rhapsody (and OS X) developers.
> ftp://ftp.apple.com/developer/macosxserver/UsefulStuff/Multibooter1.0d13.sit
> 
> 4) I set up some parameters according to a homepage of LinuxPPC.
> http://members.aol.com/mgssuchino/Ga/
> 
> I booted Multibooter 1.0d13 and selected "Network Disk (Open Firmware)". Aft
> er clicking "Advanced Options", I set up parameters like this;
> Boot-Device  : ide/disk@0:0
> Boot-File    : netbsd
> Boot-Command : boot
> Input-Device : kbd
> Output-Device: screen
> Stop Boot at Open Firmware Prompt: checked
> Then I enter "OK".
> After hitting "Save" button, I rebooted my G3.
> Booting was stopped at Open Firmware prompt.
> Simply typing "boot" gave me a miracle!
> Everything worked fine with remarkable speed.
> 
> I wondered why it booted. Then I went down to Open Firmware and saw how Mult
> ibooter manipulated my G3 through the serial console. Apple seemed to provid
> e some magics to ide devices in nvramrc.
> 
> 
> ---------------------------FROM HERE------------------------------
> 0>printenv
> 
> VARIABLE            CURRENT             DEFAULT
> little-endian?      false               false
> real-mode?          false               false
> auto-boot?          false               true
> diag-switch?        false               false
> fcode-debug?        false               false
> oem-banner?         false               false
> oem-logo?           false               false
> use-nvramrc?        true                false
> real-base           -1                  -1
> real-size           100000              100000
> virt-base           -1                  -1
> virt-size           100000              100000
> load-base           600000              4000
> pci-probe-list      -1                  -1
> screen-#columns     64                  64
> screen-#rows        28                  28
> selftest-#megs      0                   0
> boot-device         ide/disk@0:0        /AAPL,ROM
> boot-file           netbsd
> diag-device                             fd:diags
> diag-file
> input-device        kbd                 kbd
> output-device       screen              screen
> oem-banner
> oem-logo
> nvramrc
>      hex
>      : $D find-device ;
>      : $E device-end ;
>      : $L BLpatch ; : $R BRpatch ;
>      : $X execute ;
>      : $p 0 to my-self property ;
>      : $a " /chosen" $D $p $E ;
>      10 buffer: km
>      dev kbd
>      get-key-map km swap move
>      $E
>      : ck 0 do swap dup 3 >> km + c@ 1 rot 7 and << and or loop ;
>      : bootr 0d word count encode-string " machargs" $a
>      8 0 1 ck if 0 and else f 29 3d 0 3 ck if 40 or then then
>      if bye else cr 20 0 do ['] boot catch drop 500 ms loop then ;
>      dev enet
>      ' open constant $M
>      : $M2 $M 710 - $X ;
>      : rl@ -7D9D40 $X ;
>      : chstat begin $M2 $M 14f8 - $X -7D6C20 $X rl@ 400 and 0= until ;
>      : bmstat begin $M2 $M 13F0 - $X rl@ 100 and until ;
>      : xmt1 get-msecs $M 720 - ! chstat $M A00 - $X bmstat chstat ;
>      ' xmt1 ' WRITE 10 + l!
>      62 ' READ 7 - c!
>      : READ { _p _n ; _a } begin _p _n bead -> _a _a 2+
>      if _p c@ 80 and 0= else 1 then until _a ;
>      $E
>      dev /packages/obp-tftp
>      : $M over + ['] noop $L ;
>      ' open E8 $M EC $M F0 $M F4 $M F8 + ' true $L
>      $E
>      dev /packages/mac-parts
>      : $M -7E89E0 $X 8000 alloc-mem 4 -7E89E0 $X ;
>      ' load 268 - ' $M $L
>      $E
>      dev ide0
>      f3000038 constant $hfr
>      : $M $hfr rl@ or $hfr rl! 10 ms ;
>      : ata-enable 4 $M 80 $M 800000 $M 100 $M 20 $M 40 $M ;
>      : $M2 use-ata-interface ata-enable true ;
>      : set-device-ID set-drive-select ;
>      : reset-atapi-bus reset-ata-bus ;
>      ' open ' $M2 $R
>      ' enable-bus ' ata-enable $R
>      ' reset-ata-bus 2c + ' 2 $L
>      $E
>      dev ide1
>      f3000038 constant $hfr
>      : $M $hfr rl@ or $hfr rl! 10 ms ;
>      : ata-enable 4 $M 80 $M 800000 $M 100 $M 20 $M 40 $M ;
>      : $M2 use-ata-interface ata-enable true ;
>      : set-device-ID set-drive-select ;
>      : reset-atapi-bus reset-ata-bus ;
>      ' open ' $M2 $R
>      ' enable-bus ' ata-enable $R
>      ' reset-ata-bus 2c + ' 2 $L
>      $E
>      dev scsi
>      : $M ['] do-cmd + ;
>      : $M2 5 us -5f0 $M $X ;
>      : $M3 -710 $M f over $X $X ;
>      -1AC $M ' $M2 $L
>      100 $M ' $M3 $L
>      1 124 $M !
>      $E
>      unselect-dev
> boot-command        boot                boot
>  ok
> ---------------------------TO HERE--------------------------------
> 
> 
> --
> Yoshihisa Sugimoto, M.D., Ph. D.
> Medical Information Center / First Deapartment of Medicine
> Shiga University of Medical Science
> Seta-Tsukinowa, Otsu, Shiga, 520-2192, Japan
> 
> 
>