Dear Naruaki, sorry for the long radio silence, but I was occupied by so many other things (testing newly purchased machines for example, highlight: an AlphaServer ES45 :-)). But in the meantime I also did some research regarding `sash` and the way it is booted from the PROM and came across a detailed description on [1]. This might be useful for our undertaking. [1]: https://techpubs.jurassic.nl/manuals/0530/admin/SiteAdmin/sgi_html/ch04.html#id37004 IIUIC `sash` gets the kernel to boot in its first argument. And the PROM monitor command `auto` looks like it could be used to perform a boot of the default operating system, with the bootloader with device path in the variable `bootfile` and the root partition (in IRIX notation) in the variable `root`. From how I understand it, the `auto` command seems to actually issue a `boot` command as follows: ``` boot [-f $bootfile] $root/unix ``` ...with `-f $bootfile` being optional, because without using `-f [...]`, the `boot` command starts the file specified in `bootfile`. Unfortunately I can't determine exactly what arguments `auto` provides to `irisboot`, as `irisboot` only tells me they're invalid but not what they are: ``` >> printenv netaddr=172.16.2.103 dbaud=9600 rbaud=1200 bootfile=dksc(0,1,8)irisboot bootmode=c console=d diskless=0 volume=128 path=dksc(0,1,8) cpufreq=33 root=dks0d1s0 >> auto Starting the system... Loading dksc(0,1,8)irisboot: 56784+0+1832 entry: 0x80368000 NetBSD/sgimips 8.99.24 Yet another Bootstrap, Revision 1.0 (Sun Aug 19 08:53:34 UTC 2018) Invalid argument i.e., dksc(X,Y,8)loader dksc(X,Y,0)/kern Starting the system... [...] ``` Contrary to the docs (assuming they are for IRIX 5.3 and matching firmware level(s)), the `root` variable vanishes after the machine resets. But it could still be really helpful if `irisboot` would also print all of its arguments, so we could see, what we can achieve from the PROM monitor. BTW, with `dksc(0,1,8)irisboot` in the variable `bootfile` it also works to just boot with `boot dksc(0,1,0)/netbsd`: ``` >> printenv netaddr=172.16.2.103 dbaud=9600 rbaud=1200 bootfile=dksc(0,1,8)irisboot bootmode=c console=d diskless=0 volume=128 path=dksc(0,1,8) cpufreq=33 >> boot dksc(0,1,0)/netbsd 56784+0+1832 entry: 0x80368000 NetBSD/sgimips 8.99.24 Yet another Bootstrap, Revision 1.0 (Sun Aug 19 08:53:34 UTC 2018) 2829712+82768 [185024+176400]=0x31fa74 [ 1.0000000] arcemu: unknown console "", using serial [ 1.0000000] Copyright (c) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, [ 1.0000000] 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, [ 1.0000000] 2018 The NetBSD Foundation, Inc. All rights reserved. [ 1.0000000] Copyright (c) 1982, 1986, 1989, 1991, 199 [ 1.0000000] The Regents of the University of California. All rights reserved. [ 1.0000000] NetBSD 8.99.24 (GENERIC32_IP12) #3: Sun Aug 19 13:04:21 UTC 2018 [ 1.0000000] naruaki@:/usr/obj.sgimips/sys/arch/sgimips/compile /GENERIC32_IP12 [...] ``` On 9/17/18 21:10, Naruaki.Etomi wrote: >> Makes perfect sense then. But maybe you could include >> `dksc(0,1,0)/netbsd` as the default path to the kernel in irisboot, >> which could be used if no argument is given to irisboot. This could work >> for the major part of installations where the kernel is on the partiton >> for "/" on the first disk. And users could still overwrite it with their >> preferred settings. > > I tried to implement irisboot "lazymode" for about a week. > https://github.com/nullnilaki/irisboot_lazymode > > Unfortunately, It is too large for Indigo R3K. > https://github.com/nullnilaki/NetBSD_irisboot/blob/master/irisboot.diff#L226 > It can not loading kernel... > https://twitter.com/nullnilaki/status/1041051486715666432 Ok, bummer, but I'm unsure if this is really due to the size of `irisboot`. This because `sash` is even bigger: ``` /mnt/stand# ls -la total 6186 drwxrwxr-x 2 root root 512 Feb 10 1996 . drwxrwxr-x 8 root root 512 Feb 10 1996 .. [...] -rw-rw-r-- 1 root root 359856 Feb 10 1996 fx.IP12 [...] -rw-rw-r-- 1 root root 249280 Feb 10 1996 sash.IP12 [...] ``` This is from an IRIX 5.3 CDROM and it looks like`sash` for IP12 is more then 200 KiB in size. But if I interpret the picture in your tweet ([2]) correctly, the modified `irisboot` is just below 60 KiB in size. Not sure what the problem is then, though. [2]: https://twitter.com/nullnilaki/status/1041051486715666432 > > Let's put irisboot "lazymode" implementation plan on hold. > > I am sorry for the inconvenience... No issue, but if you want to continue this, I'm all in for testing. :-) Cheers, Frank