Subject: Re: Booting on a Beige G3 266?
To: Andy <andy@softbook.com>
From: Yoshihisa Sugimoto <sugimoto@sums.shiga-med.ac.jp>
List: port-macppc
Date: 11/30/1999 12:15:29
At 4:38 PM -0800 99.11.29, Andy wrote:
> So for the time being those who have a beige G3 are stuck?
> Or is there some work in progress booter that can be downloaded?
> Thx,Andy

I could boot NetBSD from internal IDE disk on beige G3 266MT (OF v 2.0f1)
with Multibooter 1.0d13 which was a booter used with Rhapsody.

The page below shows how-to in Japanese but you would understand how it
works on figures.
http://members.aol.com/mgssuchino/Ga/
Unfortunately Multibotter 1.0d13 had disappeared from the Apple ftp server. ;-(

I guess the contents of nvramrc is a key to boot. Looking at nvramrc given
by Multibooter 1.0d13, there are some description about 'dev ide0'. This
nvramrc may patch buggy Apple's OF.

Here is the nvramrc on bootable beige G3. The input and output devices were
changed to ttya to get log. Change them to kbd and screen to work.
-----------------
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        ttya                kbd
output-device       ttya                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
------------------


--
Yoshihisa Sugimoto, M.D., Ph. D.
Medical Information Center / First Department of Medicine
Shiga University of Medical Science
Seta-Tsukinowa, Otsu, Shiga, 520-2192, Japan