PLAN9.INI(8) PLAN9.INI(8) NAME plan9.ini - configuration file for PC's SYNOPSIS none DESCRIPTION When booting Plan 9 on a PC, the DOS program b.com first reads a DOS file containing configuration information from the boot disk. This file, plan9.ini, looks like a shell script containing lines of the form name=value each of which defines a kernel or device parameter. For devices, the generic format of value is type=TYPE [port=N] [irq=N] [mem=N] [size=N] [dma=N] [ea=N] specifying the controller type, the base I/O port of the interface, its interrupt level, the physical starting address of any mapped memory, the length in bytes of that memory, the DMA channel, and for Ethernets an override of the physical network address. Not all elements are relevant to all devices; the relevant values and their defaults are defined below in the description of each device. The file is used by b.com and the kernel to configure the hardware available. The information it contains is also passed to the boot process (see boot(8)) as environment variables. The following sections describe how variables are used. etherX=value This defines an Ethernet interface. X, a unique monotoni- cally increasing number beginning at 0, identifies an Ether- net card to be probed at system boot. Probing stops when a card is found or there is no line for etherX+1. Some cards are software configurable and do not require all options. Unspecified options default to the factory defaults. Known types are NE2000 Not software configurable. 16-bit card. Defaults are port=0x300 irq=2 mem=0x04000 size=0x4000 PLAN9.INI(8) PLAN9.INI(8) NE4100 A PCMCIA version of the NE2000 WD8003 Includes WD8013 and SMC Elite cards. There are varying degrees of software configurability. Cards may be in either 8-bit or 16-bit slots. Defaults are port=0x280 irq=3 mem=0xD0000 size=0x2000 BUG: On many machines only the 16 bit card works. 3C509 The 3COM 509 (ISA) and 579 (EISA) cards. Completely configurable, no options need be given. Port 0x110 is used for the little configuration dance. 3C589 The 3COM 589 and 589B PCMCIA cards. Completely config- urable, no options need be given. Defaults are port=0x240 irq=10 scsiX=value This defines a SCSI interface. Known types are aha1542 Adaptec 1542[BC]. This includes other cards that claim to be 1542 compatible; only the Buslogic 77[SD], 545C, and 946C have been tried and confirmed. Defaults are port=0x330 irq=11 ultra14f Ultrastor 4f. Defaults as for aha1542. bus4201 Buslogic 77[SD] in 32-bit mode. Defaults as for aha1542. cdromX=value This defines a CD-ROM drive connected to a Sound Blaster 16, Pro, MCD, or ACX card. Known types are mitsumi Mitsumi drive. Default is port=0x340 panasonic Panasonic drive. Default is port=0x230 PLAN9.INI(8) PLAN9.INI(8) matsushita Another name for Panasonic. serialX=value This defines add on serial ports and cards. Multiple cards can share the same IRQ. Unfortunately, many PC's allow only the built in UARTs on the COM1 and COM2 IRQ's (3 & 4) so beware. Known types are mp008 The TTC 8 serial line card. The mem parameter is the port number of the interrupt polling port. Size is the number of UARTs, default 8. Port is the port number of the first UART. generic Any set of 16450 compatible serial lines with consecu- tive port addresses. Size is the number of UARTs, default 1. Port is the port number of the first UART. mouseport=value This specifies where the mouse is attached. Value can be ps2 the PS2 mouse/keyboard port. The BIOS setup procedure should be used to configure the machine appropriately. 0 for COM1 1 for COM2 modemport=value Picks the UART line to call out on. This is used when con- necting to a file server over an async line. Value is the number of the port. incondev=value This specifies which parallel port exists. 0 means LPT1 (default), 1 means LPT2, etc. spindowntime=value Some IDE disks, especially those on portables, can be spun down to conserve power and reduce noise. Here value is a decimal number of seconds of inactivity after which the disk is automatically spun down. The default is not to spin down the disk. pcmcia=value This gives a count of the number of PCMCIA interfaces installed. PLAN9.INI(8) PLAN9.INI(8) console=value baud=value These are used to specify the console device. The default console value is cga. Values of 0 or 1 specify COM1 or COM2 respectively, in which case baud is used to initialize the port. bootfile=value This is used to direct the actions of b.com(8). kernelpercent=value This defines what percentage of available memory is reserved for the kernel allocation pool. The remainder is left for user processes. The default value is 30. monitor=value vgasize=value These are used not by the kernel but by vga(8). nvr=value This is used by a file server kernel to locate a file hold- ing information to configure the file system. The file can- not live on a SCSI disk. The default is fd!0!plan9.nvr, unless bootfile is set, in which case it is plan9.nvr on the same disk as bootfile. rootdir=value This names the directory on the root disk to hold the root of the file system for a Plan 9 kernel using a DOS file sys- tem. The default is the DOS root directory. audioX=value This defines a sound interface. Known types are sb16 Sound Blaster 16. The DMA channel may be any of 5, 6, or 7. The defaults are port=0x220 irq=7 dma=5 EXAMPLES A representative plan9.ini: % cat /n/c:/plan9.ini ether0=type=3C509 mouseport=ps2 modemport=1 scsi0=type=aha1542 port=0x330 serial0=type=generic port=0x3E8 irq=5 monitor=445x vgasize=1600x1200x8 PLAN9.INI(8) PLAN9.INI(8) % Minimum CONFIG.SYS and AUTOEXEC.BAT files to use COM2 as a console: % cat /n/c:/config.sys SHELL=COMMAND.COM COM2 /P % cat /n/c:/autoexec.bat @ECHO OFF PROMPT $p$g PATH C:\DOS;C:\BIN mode com2:96,n,8,1,p SET TEMP=C:\TMP % SEE ALSO b.com(8), booting(8), boot(8) BUGS Being able to set the console device to other than a display is marginally useful on file servers; MS-DOS and the pro- grams which run under it are so tightly bound to the display that it is necessary to have a display if any setup or reconfiguration programs need to be run. Also, the delay before any messages appear at boot time is disconcerting, as any error messages from the BIOS are lost. This idea is at best an interesting experiment that needs another iteration.