19a747e4fSDavid du Colombier#!/bin/rc 2*998526ebSDavid du Colombier# termrc 39a747e4fSDavid du Colombierif(~ $#debug 1 && ~ $debug yes) 49a747e4fSDavid du Colombier flag x + 59a747e4fSDavid du Colombierif not 69a747e4fSDavid du Colombier debug=0 79a747e4fSDavid du Colombier 89a747e4fSDavid du Colombierif(~ $debug yes) echo env... 99a747e4fSDavid du Colombiersysname=gnot 109a747e4fSDavid du Colombierfont=/lib/font/bit/lucidasans/typelatin1.7.font 119a747e4fSDavid du Colombier 1239734e7eSDavid du Colombierfor (i in '#P' '#f' '#m' '#t' '#v') { 139a747e4fSDavid du Colombier if(~ $debug yes) echo bind $i 149a747e4fSDavid du Colombier bind -a $i /dev >/dev/null >[2=1] 159a747e4fSDavid du Colombier} 169a747e4fSDavid du Colombierif(~ $debug yes) echo binddev done 179a747e4fSDavid du Colombier 189a747e4fSDavid du Colombierfor(disk in /dev/sd??) { 1939734e7eSDavid du Colombier if(test -f $disk/data && test -f $disk/ctl){ 209a747e4fSDavid du Colombier disk/fdisk -p $disk/data >$disk/ctl >[2]/dev/null 219c06fe1dSDavid du Colombier# if(~ $#nosddma 0) 229c06fe1dSDavid du Colombier# echo dma on >$disk/ctl 239c06fe1dSDavid du Colombier# if(~ $#nosdrwm 0) 249c06fe1dSDavid du Colombier# echo rwm on >$disk/ctl 2539734e7eSDavid du Colombier } 269a747e4fSDavid du Colombier} 279a747e4fSDavid du Colombier 289a747e4fSDavid du Colombierfor (i in /sys/log/*) { 299a747e4fSDavid du Colombier if(~ $debug yes) echo bind $i 309a747e4fSDavid du Colombier bind /dev/null $i 319a747e4fSDavid du Colombier} 329a747e4fSDavid du Colombier 339a747e4fSDavid du Colombierif(~ $debug yes) echo bindlog done 349a747e4fSDavid du Colombier 359a747e4fSDavid du Colombierbind -a '#l' /net >/dev/null >[2=1] 369a747e4fSDavid du Colombier 379a747e4fSDavid du Colombierdossrv 389a747e4fSDavid du Colombierboota: 395d459b5aSDavid du Colombierboota: # again, just in case a timeout made the earlier one fail 409a747e4fSDavid du Colombiercp /n/a:/plan9.ini /tmp/plan9.orig 4139734e7eSDavid du Colombierif(! ~ $cdboot yes){ 423ff48bf5SDavid du Colombier pci >/n/a:/pci.txt >[2]/dev/null 4339734e7eSDavid du Colombier cp /dev/kmesg /n/a:/boot.txt >[2]/dev/null 4439734e7eSDavid du Colombier} 459a747e4fSDavid du Colombier 469a747e4fSDavid du Colombier# restore a partial install 479a747e4fSDavid du Colombierif(test -f /n/a:/9inst.cnf) 489a747e4fSDavid du Colombier cp /n/a:/9inst.cnf /tmp/vars 499a747e4fSDavid du Colombier 509a747e4fSDavid du Colombier# make vgadb easier to edit 519a747e4fSDavid du Colombierif(test -f /n/a:/vgadb) 529a747e4fSDavid du Colombier cp /n/a:/vgadb /lib/vgadb 539a747e4fSDavid du Colombier 543ff48bf5SDavid du Colombieraux/vmware 553ff48bf5SDavid du Colombier 56f425ee0bSDavid du Colombier# configure loopback device without touching /net/ndb 57f425ee0bSDavid du Colombier{ 58f425ee0bSDavid du Colombier echo bind loopback /dev/null 59f425ee0bSDavid du Colombier echo add 127.0.0.1 255.255.255.0 60f425ee0bSDavid du Colombier} >/net/ipifc/clone 61f425ee0bSDavid du Colombier 6273e742d7SDavid du Colombierif(~ $#dmamode 0) 6373e742d7SDavid du Colombier dmamode=ask 6473e742d7SDavid du Colombierif(~ $dmamode ask){ 6573e742d7SDavid du Colombier echo -n 'use DMA for ide drives[yes]: ' 6673e742d7SDavid du Colombier dmamode=`{read} 6773e742d7SDavid du Colombier if(~ $#dmamode 0) 6873e742d7SDavid du Colombier dmamode=yes 6973e742d7SDavid du Colombier} 7073e742d7SDavid du Colombierif(~ $dmamode yes) 7173e742d7SDavid du Colombier for(i in /dev/sd*/ctl) 7273e742d7SDavid du Colombier if(test -f $i) 739c06fe1dSDavid du Colombier {echo dma on; echo rwm on >[2]/dev/null} >$i 7473e742d7SDavid du Colombier 75f425ee0bSDavid du Colombierif(~ $installmode ask){ 76f425ee0bSDavid du Colombier echo -n 'install mode is (text, graphics)[graphics]: ' 77f425ee0bSDavid du Colombier installmode=`{read} 78f425ee0bSDavid du Colombier if(~ $#installmode 0) 79f425ee0bSDavid du Colombier installmode=graphics 80f425ee0bSDavid du Colombier} 81f425ee0bSDavid du Colombierif(~ $installmode text){ 82f425ee0bSDavid du Colombier mouseport=() 83f425ee0bSDavid du Colombier vgasize=() 84f425ee0bSDavid du Colombier monitor=() 85f425ee0bSDavid du Colombier} 86f425ee0bSDavid du Colombierif not 87f425ee0bSDavid du Colombier installmode=graphics 88f425ee0bSDavid du Colombier 899a747e4fSDavid du Colombierif(~ $mouseport ask){ 909a747e4fSDavid du Colombier echo -n 'mouseport is (ps2, ps2intellimouse, 0, 1, 2)[ps2]: ' 919a747e4fSDavid du Colombier mouseport=`{read} 929a747e4fSDavid du Colombier if(~ $#mouseport 0) 939a747e4fSDavid du Colombier mouseport=ps2 949a747e4fSDavid du Colombier} 959a747e4fSDavid du Colombierif(~ $vgasize ask){ 969a747e4fSDavid du Colombier echo -n 'vgasize [640x480x8]: ' 979a747e4fSDavid du Colombier vgasize=`{read} 989a747e4fSDavid du Colombier if(~ $#vgasize 0) 999a747e4fSDavid du Colombier vgasize=640x480x8 1009a747e4fSDavid du Colombier} 1019a747e4fSDavid du Colombierif(~ $monitor ask){ 1029a747e4fSDavid du Colombier echo -n 'monitor is [xga]: ' 1039a747e4fSDavid du Colombier monitor=`{read} 1049a747e4fSDavid du Colombier if(~ $#monitor 0) 1059a747e4fSDavid du Colombier monitor=xga 1069a747e4fSDavid du Colombier} 1079a747e4fSDavid du Colombierif(~ $#mouseport 1) { 1089a747e4fSDavid du Colombier aux/mouse $mouseport 1099a747e4fSDavid du Colombier if(~ $#vgasize 1 && ! ~ $vgasize '') { 1109a747e4fSDavid du Colombier vgasize=`{echo $vgasize} 1113ff48bf5SDavid du Colombier if(! ~ $cdboot yes) 1129a747e4fSDavid du Colombier aux/vga -vip $vgasize >/n/a:/vgainfo.txt 1139a747e4fSDavid du Colombier sleep 2 # wait for floppy to finish 1149a747e4fSDavid du Colombier aux/vga -l $vgasize 11539734e7eSDavid du Colombier if(! ~ $#novgaaccel 0) 1169a747e4fSDavid du Colombier echo -n 'hwaccel off' >'#v/vgactl' >[2]/dev/null 11739734e7eSDavid du Colombier if(! ~ $#novgablank 0) 1189a747e4fSDavid du Colombier echo -n 'hwblank off' >'#v/vgactl' >[2]/dev/null 1199a747e4fSDavid du Colombier } 1209a747e4fSDavid du Colombier} 121