Enhanced OS-9 for X86 PCAT Version 1.
Copyright and Publication Information Copyright ©2000 Microware Systems Corporation. All Rights Reserved. Reproduction of this document, in part or whole, by any means, electrical, mechanical, magnetic, optical, chemical, manual, or otherwise is prohibited, without written permission from Microware Systems Corporation. This manual reflects version 1.2 of Enhanced OS-9 for X86.
Ta bl e of C onte n ts Chapter 1: Installing and Configuring Enhanced OS-9 8 8 8 10 10 10 11 12 12 12 12 12 13 13 14 15 15 16 21 23 33 33 38 38 38 39 39 7 Introduction Host System Requirements Target System Requirements Support and Documentation Applicable Documents OS-9 Product Support Microware TECH-CHECK Installing OS-9 on the Windows Host Computer Hardware Setup Memory Disk Drives Monitor Keyboard/Mouse Ethernet Support CMOS Settings Installing OS-9 on the Target X86 Hardware Configuring the Hardware
0 44 44 45 46 47 47 47 48 49 51 52 53 57 60 64 64 67 70 73 74 78 81 81 82 83 83 84 85 86 87 88 88 4 Customizing the Component Building the Project Loading and Executing the HomeWatch Application Security Modifying the Key Code Using Cross Hosted Utilities os9dir os9dcheck os9list Additional Cross Hosted Utilities Supported Devices Ethernet Controllers 3COM PCI 3COM ISA SMC Ultra 83C790 SMC 8390 System State Debugging - Not Supported 3COM PCMCIA DEC 21140 AM79C961 & AM79C73A NE2000 Cirrus Logic CS8900 Seq
93 99 101 106 107 108 108 114 119 119 119 120 120 121 121 123 123 123 123 124 125 126 126 128 130 130 131 136 137 138 138 PCMCIA IDE IDE Descriptors DiskOnChip DiskOnChip Descriptors PC AT Style Floppy Floppy Descriptors Symbios 810,810A,825,825A and 875 PCI SCSI controllers—Wide, Ultra and Ultra Wide Diamond FirePort20 and FirePort40—Wide, Ultra and Ultra Wide Adaptec 1540/1542 ISA Adaptec 2940, 2940U and 2940UW SCSI Descriptors System Devices Real Time Clock Additional Devices PPP and SLIP X86 Utilities
138 llcis 139 rpciv 140 PCI Configuration Information 140 PCI Library User Guide 140 _pci_search_device() - search for PCI device 141 _pci_next_device() - find next PCI device 142 pci_get_config_data() - get PCI configuration data 144 pci_find_device() - find PCI device 145 pci_find_class_code() - find PCI device based on class code 146 pci_read_configuration_byte() - read PCI configuration byte 147 pci_read_configuration_word() - read PCI configuration word 148 pci_read_configuration_dword() - read PCI con
Cha pte r 1 : I ns t al li ng an d C onfi guri n g Enhanced OS-9 This chapter describes installing and configuring Enhanced OS-9 for X86.
1 Installing and Configuring Enhanced OS-9 Introduction This manual provides information to help you get started with Enhanced OS-9 for the X86. OS-9 is an architecturally advanced, high performance real-time operating system available for the IBM/Motorola, Intel, SuperH, MIPS and ARM/StrongARM microprocessor families. Refer to the documentation on the Enhanced OS-9 for the X86 CD for additional OS-9 product information.
1 Installing and Configuring Enhanced OS-9 • • • Network connection to the host computer (required for initial configuration and when using Microware’s Hawk to debug applications) Keyboard or serial connection to the Windows host computer (may be removed once OS-9 is installed) Optional mouse Enhanced OS-9 for X86 PCAT 9
1 Installing and Configuring Enhanced OS-9 Support and Documentation Applicable Documents The OS-9 Product Documentation Set for X86 is included on the CD-ROM and may be optionally installed on the Windows host computer.
1 Installing and Configuring Enhanced OS-9 Microware TECH-CHECK Microware TECH-CHECK is a state-of-the-art call tracking system that maintains a complete record of your product concerns and questions. You can assist us in handling your questions more effectively by using Microware TECH-CHECK when contacting Customer Support. Microware TECH-CHECK is a program wizard which asks you a series of questions about your system, your questions/concerns, and your contact information.
1 Installing and Configuring Enhanced OS-9 Installing OS-9 on the Windows Host Computer Microware’s Enhanced OS-9 for the X86 must be installed on your Windows 95/98 or NT computer, prior to running OS-9 on your target machine. Insert the OS-9 CD-ROM into your CD-ROM drive and select the installation option from the autorun menu. Follow the on-line instructions to complete the install.
1 Installing and Configuring Enhanced OS-9 Keyboard/Mouse Connect a keyboard and PS/2 or serial mouse to the target system. Both the keyboard and mouse are optional, although a keyboard should be used when initially installing OS-9. Ethernet Support Development work will be facilitated with the addition of an ISA, PCI or PCMCIA network card. The network card must be supported by OS-9. Additional cards are constantly being added, so check bbs.microware.com for the latest list.
1 Installing and Configuring Enhanced OS-9 CMOS Settings It may be necessary to modify the BIOS settings in CMOS to boot from a hard disk. In most cases you may modify the CMOS settings by pressing DEL after rebooting. Configure the board with the correct settings for the attached peripherals. The boot sequence should try floppy first, and then the IDE hard drive.
1 Installing and Configuring Enhanced OS-9 Installing OS-9 on the Target X86 Hardware Installation of OS-9 on the target hardware follows these basic steps: 1. Configuring the hardware and basic CMOS settings. 2. Making a basic boot floppy using Microware’s wizard. 3. Booting OS-9. 4. Modifying the OS-9 boot image to take advantage of the peripherals on the target machine. 5. Loading the hard disk. 6. Making the hard disk bootable. 7. Configuring graphics support.
1 Installing and Configuring Enhanced OS-9 Making a Boot Floppy The quickest way to bring OS-9 up on the target system is to attach a floppy drive and use Microware’s Configuration Wizard to build a bootable floppy disk. Step 1. Once OS-9 is installed on your Windows host computer, select Microware Configuration Wizard from the Programs->Enhanced OS-9 for X86 folder. The following dialog box appears: Step 2.
1 Installing and Configuring Enhanced OS-9 Step 3. Type a name in the Configuration Name drop down box (OS9test in this example) and press OK. The IP Address dialog box appears. Step 4. The IP Address Dialog box configures networking on the target. Select your network adaptor model from the drop down list box to enable networking, otherwise select none. Step 5. Select either the Server assigned IP address or the Specify an IP address radio button.
1 Installing and Configuring Enhanced OS-9 Step 6. 18 Select the Enable DNS radio button if DNS is to be used. Fill in the appropriate values for your network. Select Next to continue.
1 Installing and Configuring Enhanced OS-9 Step 7. Enter the gateway, if appropriate for your network and click Next to continue.
1 Installing and Configuring Enhanced OS-9 Step 8. Enable the SoftStax (SPF) radio button if using networking. Select the Build button to create the OS-9 boot image. Insert a new floppy disk into your computer’s A drive and click Yes to format it for OS-9 and copy the boot image. Select Finish and save your changes, when prompted. The newly created boot floppy can be used to bring OS-9 up on the X86 target hardware. The default OS-9 console is the target computer’s monitor.
1 Installing and Configuring Enhanced OS-9 the target, from the windows host computer. For example, select run from the Windows start menu and type telnet OS9test. Login as super with the password user. Preparing the Hard Disk The newly created boot floppy may be used to format a local hard disk with the OS-9 file system. A network connection between the OS-9 target machine and the Windows host computer may be used to load the OS-9 system files onto the hard disk.
1 Installing and Configuring Enhanced OS-9 • Step 3. Make sure to use MBR option if this is a new disk with no other OS on it. Run format from the OS-9 console to create the OS-9 RBF file system $ format /hc1fmt Note Note that physical format and physical verifies are typically not necessary. Step 4. Download the required system files. On the Windows host computer, open a command window and change into the RESIDENT directory on the CD-ROM. Start an ftp session with the target machine.
1 Installing and Configuring Enhanced OS-9 At this point, the disk has been formatted and the OS-9 system files have been copied to disk. The next section, Advanced Configurations , discusses building and installing an OS-9 boot file on the hard disk. Advanced Configurations It may be desirable to configure the target computer to boot from a local hard disk and to move the OS-9 console to a serial port so that the monitor may be removed or dedicated to graphics applications.
1 Installing and Configuring Enhanced OS-9 Step 1. Select Microware Configuration Wizard from the Programs->Enhanced OS-9 for X86 folder. The following dialog box appears: Step 2. Click the Advanced Mode radio button and select the configuration used when making the boot floppy (OS-9test in this example) from the Configuration Name drop down list. Click OK to continue.
1 Installing and Configuring Enhanced OS-9 Step 3. Select Configure->Bootfile->Configure System Options from the menu. Step 4. Click on the Define /term Port tab. Step 5. Click on the COM1 radio button to define the high-level console as using serial port 1. Verify that the baud rate is set to 9600 baud. Click OK to continue. Note, leave the high-level console at VGA/Keyboard if the monitor and keyboard will be used as the OS-9 system console.
1 Installing and Configuring Enhanced OS-9 Step 6. Select Configure->Coreboot->Disk Configuration from the menu. Select the IDE Configuration tab. Step 7. Enable the Auto Boot checkbox and click OK to continue.
1 Installing and Configuring Enhanced OS-9 Step 8. Select Configure->Coreboot->Main Configuration from the menu. Select the Define ROM Ports tab Step 9. Select the Define Console Port COM1 radio button and verify that the baud rate is set to 9600. Click OK to continue. This dialog box moves the low-level OS-9 console to serial port 1. Note, leave the low-level console at VGA if the monitor and keyboard will be used as the OS-9 system console.
1 Installing and Configuring Enhanced OS-9 Step 10. Select Configure->Bootfile->Disk Configuration from the menu. Click the RAM Disk tab. Step 11. Verify that only the Enable RAM disk checkbox is checked. Select the RAM disk size from the drop down list box. Use of a RAM disk is optional, and you may disable it by clearing the Enable RAM disk checkbox. If enabled, the RAM disk may be accessed as /r0 on the target system.
1 Installing and Configuring Enhanced OS-9 Step 12. Select the IDE Configuration tab. Step 13. Click on the Enable IDE disk, Map IDE disk as /dd and Map IDE disk as /h0 checkboxes to enable them. Note The standard IDE hard disk will be accessed as device /hc1 from the OS-9 console. The same device may also be accessed as /h0 or /dd. An IDE CD-ROM drive may be attached to the target system and accessed as device /cd0. The CD-ROM must be the master device on the second IDE channel.
1 Installing and Configuring Enhanced OS-9 Step 14. Click on the Init Options tab. Step 15. Select the /h0 radio button to use the as the initial device. Click OK to continue.
1 Installing and Configuring Enhanced OS-9 Step 16. Select Configure->Build Image from the menu. Step 17.
1 Installing and Configuring Enhanced OS-9 Note Select the User State Debugging Modules checkbox to include the Hawk debugging modules on the target system. Alternately, you may load and run the modules from the hard disk on the target. Step 18. Click Build to create the OS-9 boot image. Step 19. Click Makeboot when the image is built. The following dialog box appears: Step 20. Insert a new floppy disk into your computer’s A drive and click Yes to format it for OS-9 and copy the boot image.
1 Installing and Configuring Enhanced OS-9 Finishing the Hard Disk Configuration This section finishes the hard disk configuration by using the OS-9 bootgen utility to install a boot image onto the hard disk. It is assumed that the instructions in the section Preparing the Hard Disk were followed to format and load the disk. The hard disk will be made bootable using the OS-9 boot image created in the previous section, Advanced Configurations. Step 1.
1 Installing and Configuring Enhanced OS-9 may want to comment out the mode 13 driver by placing an asterisk in front of each line, and uncomment one of the other video drivers such as the generic VESA driver or the ISA Bank driver. On the OS-9 target system you may edit the loadmaui file using the umacs editor. Refer to the Using the uMACS utility chapter in the Utilities Reference manual.
1 Installing and Configuring Enhanced OS-9 * * ****************************************************** * VESA driver - uses INT 10h calls Remove the leading asterisk from the following files to enable VESA driver support * the CDB determines which drivers are used. Pick one * *load -d CMDS/BOOTOBJS/MAUI/cdb_vesa - PS/2 mouse *load -d CMDS/BOOTOBJS/MAUI/cdb_vesa_s - Serial mouse * * The graphics descriptor.
1 Installing and Configuring Enhanced OS-9 *load -d CMDS/BOOTOBJS/MAUI/ibct65548ts110cs - Toshbia 110CS laptop *load -d CMDS/BOOTOBJS/MAUI/ibct65550ts205cds - Toshbia 205cds laptop *load -d CMDS/BOOTOBJS/MAUI/ibct65550ts205cdsvga - Toshbia 205cds laptop with VGA monitor *load -d CMDS/BOOTOBJS/MAUI/ibtlet4000 - Tseng Labs ET4000 ISA ******************************************************* * End of bootlist The gx_vesa driver comes in four different modules. gx_vesa is the normal one.
1 Installing and Configuring Enhanced OS-9 The descriptor is svgab and the cdb’s are cdb_svgab= and cdb_svga_s. cdb_svga is for a bus mouse and cdb_svga_s is for a serial mouse.
1 Installing and Configuring Enhanced OS-9 Cross-Hosted Development Using Hawk Hawk is a comprehensive software development and management environment designed to increase the efficiency of development under OS-9. Hawk’s highly integrated tool set simplifies and automates the tasks of creating, debugging, analyzing and managing complex real-time software development projects. Hawk is much more than just an “edit-compile-debug” package.
1 Installing and Configuring Enhanced OS-9 Running the Hawk Tutorial Included on the CD is a sample MAUI application intended to introduce both MAUI programming and the Hawk IDE to the new OS-9 user. The application, named security, is actually one program in a series of possible applications grouped together to provide a home security suite called HomeWatch.
1 Installing and Configuring Enhanced OS-9 Step 6. Select the units that will be associated with this component. Navigate to the C:\MWOS\SRC\MAUI\DEMOS\HOMEWATCH folder, and double click on the security.c source file. This is the only source file that is needed for this program. Click on the Finish button. Once these steps are completed, Hawk will generate the dependencies for the source file, and you will be presented with the security component on the left side of the Hawk IDE window.
1 Installing and Configuring Enhanced OS-9 Enhanced OS-9 for X86 PCAT 41
1 Installing and Configuring Enhanced OS-9 Step 3. Select the Source Tab. Step 4. In the Category: list box, select Code Generation. Notice the area at the bottom of the dialog box labeled Debug Support. Select the option Source Level. This allows us the option of source debugging the application if desired.
1 Installing and Configuring Enhanced OS-9 Step 5. Select the Link tab. Here we must tell Hawk which libraries to link to specifically. In the O-Code Libraries: text field, type the following: megafonts.l;mtk.l;sgui.l;maui.l;mfm.l Step 6. Click on the Close button.
1 Installing and Configuring Enhanced OS-9 Building the Project Now we are ready to build the project. Go to the Project menu and select Build. Hawk will display a dialog box showing the progress of the compilation of the security component. If no errors occur, the dialog box will show Status: Done and you can dismiss the box by clicking the OK button. If errors do occur, review the above procedures and be sure you followed them exactly as outlined.
1 Installing and Configuring Enhanced OS-9 Step 1. Go the Target menu and select Load. Step 2. In the new dialog box, navigate to the C:\MWOS\OS9000\80386\CMDS\MAUIDEMO folder, Double click on the file security_data, and then click Load. With both the security and security_data files loaded, you can run the security demo.
1 Installing and Configuring Enhanced OS-9 Modifying the Key Code Changing the length of the key code or even the key code itself is easy. From Hawk, click on security.c on the left hand side of the IDE to edit the source file. Look around line 47 for the following code: #define CODE_LEN 5 static char alarmCode[CODE_LEN] = { ’1’, ’2’, ’4’, ’5’, ’5’ }; The CODE_LEN definition can be changed to accommodate any code length.
1 Installing and Configuring Enhanced OS-9 Using Cross Hosted Utilities The following utilities may be executed on the Windows95/98 or NT system to access a OS-9 formatted floppy (RBF). Users may use the cross hosted utilities in much the same way they do from OS-9. Note: The Wizard uses the Cross Hosted Utilities when creating boot media. os9dir The os9dir utility displays a formatted list of file names of the specified directory file on standard output.
1 Installing and Configuring Enhanced OS-9 block $0000000f is start of low level boot file block $0000013b is start of bootstrap fd block $00000002 is start of root directory fd building allocation map... checking allocation map... ’OS9 Boot Disk’ file structure is intact 3 directories, 8 files, 6 hard links 999424 of 1474048 bytes (0.95 of 1.40 meg) used on media os9list The os9list utility displays text lines from the specified path(s) to standard output.
1 Installing and Configuring Enhanced OS-9 Note The main difference between the use of the OS-9 cross hosted utilities and the OS-9 resident utilities is the lack of wild card support. In OS-9, the shell provides this service. Under Windows95/98 or NT the standard shell does not provide this service. We can however pipe commands to perform the same functionality. Also note that the OS-9 utilities will work on the native Windows95/98 NT file system.
1 Installing and Configuring Enhanced OS-9 Note os9list and os9copy both support conversion options.
1 Installing and Configuring Enhanced OS-9 Supported Devices Following is a list of the supported devices in this release. Please refer to http://www.microware.com/X86relnotes for late breaking news and to http://bbs.microware.com for driver updates.
1 Installing and Configuring Enhanced OS-9 • Digiboard • HostessI • Risicom • Parallel Printer Physical Disk Media • IDE Standard • PCMCIA IDE • IDE Standard • DiskOnChip • DiskOnChip Descriptors • PC AT Style Floppy • Floppy Descriptors • Symbios 810,810A,825,825A and 875 PCI SCSI controllers—Wide, Ultra and Ultra Wide • Diamond FirePort20 and FirePort40—Wide, Ultra and Ultra Wide • Adaptec 1540/1542 ISA • Adaptec 2940, 2940U and 2940UW • SCSI Descriptors System Devices •
1 Installing and Configuring Enhanced OS-9 Note Some Network Interface Cards require that a setup disk, included with the card, is ran before the card is installed in a system running OS-9. The setup disk is required for configuring the connection type for cards which support multiple interfaces, such as connections for 10Base-T, 10Base-2 or AUI. The setup disk may also be needed to configure the card for a specific interrupt or I/O address.
1 Installing and Configuring Enhanced OS-9 The default connection type is set to INF_EXT (auto). For the 3COM ISA card, this implies the card setup program has been used and has setup the card connection type. If you are unable to communicate with this card and netstat -in shows the device, the connection type may be incorrect. To correct it, you may do one of the following: 1. Use the 3COM setup disk to configure the card for the connection used. 2.
1 Installing and Configuring Enhanced OS-9 Next time you run the Wizard, it will use the new descriptor. Boomerang The source code for the spe509 driver includes “#if defined(BOOMERANG)” sections to allow only including support for the newer 3COM PCI based cards. Each card is now defined in a constant table and as such the driver makefile used must be modified to include both the define for “BOOMERANG” and the compiler option “-c” to force constant code data. /* spfdrvr.
1 Installing and Configuring Enhanced OS-9 Note The PCIV utility may be used to examine a network card. This utility displays vendor and device ID’s for each installed PCI device. To find out if your card has been tested with OS-9, run the pciv command and look at the vendor and device ID’s. The vendor ID should be 0x10B7 for all 3COM network cards. Network cards with the following device ID’s have been tested with OS-9 drivers shipping with this release.
1 Installing and Configuring Enhanced OS-9 3COM Tornado NIC 0x9200 3COM 10/100 Base-TX NIC (Python-H) 0x9800 3COM 10/100 Base-TX NIC (Python-T) 0x9805 Additional Notes 1 100BaseT support is included for the 3C905B-TX and 3CSOHO100-TX. 2 The 3C905-T4 has been tested with 10BaseT only.
1 Installing and Configuring Enhanced OS-9 3. Try one of the other connections on the card (if using AUI type, try the RJ45 connector). Interrupt Conflict Another problem may be the interrupt used. The default interrupt is IRQ3. In this case you have the following options. 1. Disable the COM2 serial port from the BIOS to allow IRQ3 to function with this card. 2. Choose a interrupt that matches the system configuration such as IRQ10 (0x4a). In this case the OS-9 device descriptor must be changed.
1 Installing and Configuring Enhanced OS-9 ( using the actual address of another machine on the network, rather than the one shown above). If interrupts are running you should be presented a Rombug prompt at the breakpoint address. You can type g to see if you get another interrupt or k to kill the breakpoint. Port Address Conflict It is also possible that the port address used for this card is used by another device in the system.
1 Installing and Configuring Enhanced OS-9 /* options for CONNTYPE: INF_AUI, INF_BNC, INF_UTP, INF_EXT (auto) */ #define CONNTYPEINF_EXT Finally, remake the descriptor: change to the MWOS/OS9000/80386/PORTS/PCAT/SPF/SPE509 directory and type: C:> os9make -f=spfdesc.mak Next time you run the Wizard the new descriptor will be used.
1 Installing and Configuring Enhanced OS-9 Interrupt Conflict Another problem may be the interrupt used. The default interrupt is IRQ10. In this case you have the following options. 1. Resolve the conflict by moving the device using IRQ10. 2. Choose an interrupt that matches the system configuration such as IRQ15 (0x4f). In this case the OS-9 device descriptor must be changed and the board jumpers must be changed to set the interrupt to be used.
1 Installing and Configuring Enhanced OS-9 It is also possible that the port address used for this card is used by another device in the system. If this is the case the OS-9 command netstat -in will not show the card as available. The following netstat example shows a working network card configured with IP address 182.25.109.25 and MAC address of 00.00.C0.91.4F.96. (Super)[/h0/sys/>] netstat -in Name lo0 lo0 enet0 enet0 Mtu 1536 1536 1500 1500 Network 127 182.52.109 Address 127.0.0.1 00.
1 Installing and Configuring Enhanced OS-9 000e0000 000e0010 000e0020 000e0030 000e0040 000e0050 000e0060 000e0070 000e0080 000e0090 000e00a0 000e00b0 000e00c0 000e00d0 000e00e0 000e00f0 55aa 4445 4d20 f7c8 3230 696f 0a43 6972 2031 7972 2053 3938 6768 0a00 1600 bae8 40e9 4f20 434f 30df 2056 6e20 6f70 7275 3938 6967 6f66 342d 7473 9043 ef52 4a33 ce00 0000 4d50 7a0c 4741 332e 7972 7320 372d 6874 7477 3139 2052 55e8 ba02 c0ef 4c43 0000 4154 030d 2042 3132 6967 4c6f 3139 2028 6172 3838 6573 947e 018a b001
1 Installing and Configuring Enhanced OS-9 Note The SMC 83C795 part is not yet supported. SMC 8390 System State Debugging - Not Supported Default Settings PORTADDR0x00000300/* Base address of hardware */ VECTOR 0x4a /* Port vector */ CPU_BASE 0xcc000 /* CPU BASE */ RAM_SIZE /* RAM Size */ 0x4000 Solving Configuration Issues Connection Type On the SMC 8390 the hardware connection type is setup in hardware on the board. Refer to the SMC 83C70 documentation that came with the card used.
1 Installing and Configuring Enhanced OS-9 5. Use the command irqs to see a list of interrupts. 6. (Super)[/h0/sys/>] irqs 7. PC-AT Compatible 80386 OS9 For Embedded Systems (X86) V1.0 8.
1 Installing and Configuring Enhanced OS-9 Note: On the SMC 8390 the ring buffers are located in the 384k hole (1MB-384K - 1MB). The default location of 0xcc000 may be used by another system device. You can dump the memory at this location to see if it looks like packet data. The OS-9 command dump may be used to dump the memory to see if it looks correct.
1 Installing and Configuring Enhanced OS-9 How to modify the OS-9 descriptor Edit the file MWOS/OS9000/80386/PORTS/PCAT/SPF/SP8390/DEFS/spf_desc.h and change the following fields as required: #define #define #define #define PORTADDR0x00000300/* Base address of hardware */ VECTOR0x4a/* Port vector */ CPU_BASE0xcc000/* CPU BASE */ RAM_SIZE0x4000/* RAM Size */ Then remake the descriptor: change to the MWOS/OS9000/80386/PORTS/PCAT/SPF/SP8390 directory and type: os9make -f=spfdesc.
1 Installing and Configuring Enhanced OS-9 1. Disable the COM2 serial port from the BIOS to allow IRQ3 to function with this card. 2. Choose a interrupt that matches the system configuration such as IRQ10 (0x4a). In this case the OS-9 device descriptor must be changed. Also the PCMCIA socket services setup must be changed to assign the new interrupt to the PCMCIA Ethernet Card. If an interrupt conflict exists the device will either not work at all or will hang when the conflicting device is accessed.
1 Installing and Configuring Enhanced OS-9 It is also possible that the port address used for this card is used by another device in the system. If this is the case the OS-9 command netstat -in will not show the card as available. (Super)[/h0/sys/>] netstat -in Name lo0 lo0 enet0 enet0 Mtu 1536 1536 1500 1500 Network 127 182.52.109 Address 127.0.0.1 00.00.C0.91.4F.96 182.52.109.
1 Installing and Configuring Enhanced OS-9 Find the following lines: #define LLE509_PORT_ADDRESS0x340 #define LLE509_IF_VECTOR0x43 #define ETH_CIS_PARAMS"3com=0x340,3" The above port addresses and/or IRQ information should be changed as required by the system. For IRQ 10, here are the changes required: #define LLE509_PORT_ADDRESS0x340 #define LLE509_IF_VECTOR0x4a #define ETH_CIS_PARAMS"3com=0x340,10" The Wizard will automatically re-make the cnfgdata module.
1 Installing and Configuring Enhanced OS-9 The following netstat example shows a working network card configured with IP address 182.52.109.25 and MAC address of 00.00.C0.91.4F.96. (Super)[/h0/sys/>] netstat -in Name lo0 lo0 enet0 enet0 Mtu 1536 1536 1500 1500 Network 127 182.52.109 Address 127.0.0.1 00.00.C0.91.4F.96 182.52.109.
1 Installing and Configuring Enhanced OS-9 * * Intra Server DE504-BA (Quad) * 10BaseT = INF_UTP ( note: preliminary release support for 21143. No 100BaseT support) * * Asante’ Fast 10/100 * 10BaseT = INF_UTP * 100BaseT = INF_MII100 * * D-Link DFE-500TX ProFast 10/100 Adapter * * 10BaseT = INF_UTP * 10BaseT = INF_MII10 * 100BaseT = INF_MII100 * */ #define CONNTYPE INF_UTP Finally, remake the descriptor: change to the MWOS/OS9000/80386/PORTS/PCAT/SPF/SP21140 directory and type: os9make -f=spfdesc.
1 Installing and Configuring Enhanced OS-9 ETHER_OPTION_3=enet2 address 122.16.1.237 broadcast 122.16.255.255 netmask 255.255.000.000 binding /spde2/enet ETHER_OPTION_4=enet3 address 132.16.1.237 broadcast 132.16.255.255 netmask 255.255.000.000 binding /spde3/enet Once the boot image is created you may boot OS-9 and use "netstat" to see that all cards are active and ready for use. You should see entries for enet0, enet1, enet2 and enet3 if you are using a quad card.
1 Installing and Configuring Enhanced OS-9 NE2000 ZF NetDisplay ACCTON - EN166X MPX 2 Ethernet D-LINK DE-220PCT - 10Mbps Combo 16-Bit Ethernet ISA Adapter Compex - ReadyLink 2000 - PCI 32-bit System State Debugging - Supported Default Settings PORTADDR 0x340 /* IO port for ISA */ IRQVECTOR 0x49 /* IRQ vector */ CONNTYPE /* Auto */ INF_EXT Board Setup Issues ZF NetDisplay use :\Drivers\Ethernet\Realtek\RSET8019.EXE" to determine the IO address and IRQ required.
1 Installing and Configuring Enhanced OS-9 When using multiple NE2000 PCI cards in a system you may force the driver to use a specific slot or card number for the device being used. PCIINDEX may be used to specify the card instance to be used. Keep in mind the PCIINDEX method is based on a first found basis, so moving cards in the system will change the configuration used. You may also use the PCIBUS and PCIDEV to force the use of the device to a specific slot.
1 Installing and Configuring Enhanced OS-9 Use the command irqs to see a list of interrupts.
1 Installing and Configuring Enhanced OS-9 How to modify the OS-9 descriptor Edit the file MWOS/OS9000/80386/PORTS/PCAT/SPF/NE2000/DEFS/spf_desc.h. Change the fields below as required. /* * From spf_desc.
1 Installing and Configuring Enhanced OS-9 Cirrus Logic CS8900 Overview The OS9 sp8900 software driver provides support for the Cirrus Logic CS8900a Ethernet Controller. This allows the device to be used as part of an OS9 SoftStax network implementation. The Cirrus Logic CS8900a provides single chip support for IEEE 802.3 Ethernet. It has a direct ISA bus interface and is therefore commonly found in PC-AT type environments.
1 Installing and Configuring Enhanced OS-9 OS9 Software Configuration Configuring PnP Firmware The OS9 sp8900 driver will use the PnP (Plug and Play) capability of the cs8900a. This will only be used if it is enabled in the OS9 device descriptor. When enabled the OS9 driver will search all possible I/O locations for a cs8900a device. If found, the first one, starting at the lowest valid I/O address, will be used. The software will confirm that the EEPROM is present.
1 Installing and Configuring Enhanced OS-9 #define #define #define #define VECTOR0x4a/* Port vector */ PRIORITY8/* IRQ polling priority */ IRQLEVEL0/* Port IRQ Level */ PNP8900PNPON/* Do plug and play ( Normal setting ) */ #define TB486COMPATTRUE --------------------*/ Any information ( not shown ) beyond this point MUST not be changed User configurable fields The following fields are user configurable. Field Name Default Value Possible Values PORTADDR Ox300 0x200..
1 Installing and Configuring Enhanced OS-9 Sequential Device Support VGA Graphics / Keyboard VGA support is provided using standard VGA graphics screen and keyboard. Most PC based systems use VGA keyboard as the default device for user input. While this is not required for OS-9 based systems it is a convenient way to initially setup systems for use with OS-9.
1 Installing and Configuring Enhanced OS-9 Language support options To change the language support for the keyboard use the advanced mode from the Wizard and select BOOTFILE OPTIONS tab. Select the language desired.
1 Installing and Configuring Enhanced OS-9 * [OPTION4 && !MOUSE] serial mouse * ../../../CMDS/BOOTOBJS/DESC/SC16550/m0_t1 *../../../CMDS/BOOTOBJS/DESC/SC16550/m0_t2 *../../../CMDS/BOOTOBJS/DESC/SC16550/m0_t3 *../../../CMDS/BOOTOBJS/DESC/SC16550/m0_t4 * Changed to use COM3 * * [OPTION4 && !MOUSE] serial mouse * *../../../CMDS/BOOTOBJS/DESC/SC16550/m0_t1 *../../../CMDS/BOOTOBJS/DESC/SC16550/m0_t2 ../../../CMDS/BOOTOBJS/DESC/SC16550/m0_t3 *../../..
1 Installing and Configuring Enhanced OS-9 #define T2PRI_165505/* Priority */ #define T3BASE_165500x000003e8/* SC16550 port 3 */ #define T3VECT_165500x44/* IRQ 4 */ #define T3PRI_1655010/* Priority */ #define T4BASE_165500x000002e8/* SC16550 port 4 */ #define T4VECT_165500x43/* IRQ 3 */ #define T4PRI_1655010/* Priority */ Making the descriptors Once the systype.h file has been updated the new descriptors may be created.
1 Installing and Configuring Enhanced OS-9 #define #define #define #define #define #define #define T11PORT T12PORT T13PORT T14PORT T15PORT T16PORT T17PORT 0x328 0x330 0x338 0x340 0x348 0x350 0x358 /* /* /* /* /* /* /* t11 t12 t13 t14 t15 t16 t17 onboard onboard onboard onboard onboard onboard onboard port port port port port port port address address address address address address address */ */ */ */ */ */ */ Making the descriptors Once the systype.
1 Installing and Configuring Enhanced OS-9 Making the descriptors Once the systype.h file has been updated the new descriptors may be created.
1 Installing and Configuring Enhanced OS-9 MWOS\OS9000\80386\PORTS\PCAT\CMDS\BOOTOBJS\DESC\SCRISCOM\t22 MWOS\OS9000\80386\PORTS\PCAT\CMDS\BOOTOBJS\DESC\SCRISCOM\t23 MWOS\OS9000\80386\PORTS\PCAT\CMDS\BOOTOBJS\DESC\SCRISCOM\t24 MWOS\OS9000\80386\PORTS\PCAT\CMDS\BOOTOBJS\DESC\SCRISCOM\t25 MWOS\OS9000\80386\PORTS\PCAT\CMDS\BOOTOBJS\DESC\SCRISCOM\t26 MWOS\OS9000\80386\PORTS\PCAT\CMDS\BOOTOBJS\DESC\SCRISCOM\t27 ! WARNING We have not been able to obtain a Riscom8 board to verify this driver with this release.
1 Installing and Configuring Enhanced OS-9 Physical Disk Media IDE Standard Support for IDE based devices, including standard IDE based hard disk. Primary and secondary controllers with master and slave drive support. On some embedded systems Compact Flash supported devices may be used as if they were standard PC AT based devices. Benefits • Supports large media (8.5GB maximum). • PIO mode three supported. • PC File system supported including long filenames (FAT32 is not supported).
1 Installing and Configuring Enhanced OS-9 while in MWOS/OS9000/80386/PORTS/PCAT/RBF/RB1003/config.des the portion of interest is /* * * * * * * * * * * * Device specific defines ds_idetype = IDE interface type IDE_TYPE_STANDARD IDE_TYPE_PCI IDE_TYPE_PCMCIA ds_polled = IDE_POLLED IDE_INTERRUPTS ds_altstat = HD_DEFAULT_ALTSTAT (Standard IDE offset) * HD_PCMCIA_ALTSTAT (PCMCIA IDE offset) * * ds_timeout = Drive ready timeout in seconds. * IDE specification allows for up to * 30 seconds.
1 Installing and Configuring Enhanced OS-9 ds_timeout = 30; #endif }; Note Since OS-9 does not require the BIOS to use IDE it is possible on some systems to use IDE without interrupts. Keep in mind that on some systems disabling the IDE from the BIOS also disables the IDE controller as well. Drive time-out may also fail on drives that are extremely old. If you are having problems using drives that are less than 540MB you may want to disable the time-out.
1 Installing and Configuring Enhanced OS-9 the device type to PCI in the config.des file shown above. You must have the sources for RB1003 for the ability to make this change using the cross hosted utilities. If the PCI bridge does not work in PCI mode you can modify the RB1003 init code as need for the PCI bridge device used. The sources are located in MWOS/OS9000/SRC/IO/RBF/DRVR/RB1003, and are included with the Embedded Systems package. Use of IDE in PCI mode adds about 2K to the driver size.
1 Installing and Configuring Enhanced OS-9 cudo -cdo password Although RBF is the preferred file system for use with OS-9 the convenience of using FAT file systems should be taken into consideration when deciding how you want to setup your system. Special Note In the following example the IDE device for /h0 and /dd is set for IDE primary partition four. If the init dialog is set to /h0 the following is generated. In this case we also have SoftStax SPF enabled.
1 Installing and Configuring Enhanced OS-9 ROM BOOTING If changes to the IDE addresses of time-out values are employed, then the ROM boot system may also require changes. MWOS/OS9000/80386/PORTS/PCAT/ROM/cnfgdata.
1 Installing and Configuring Enhanced OS-9 • Native RBF file system supported. Full boot support including IPL boot technology (PCMCIA BIOS BOOT support required if this option is used). • Requires no interrupts. Interrupts are optional. The standard configuration assumes socket #0 is mapped to 0x320 and socket #1 is mapped to 0x360. The default configuration does not use interrupts. Users may however enable interrupts if desired.
1 Installing and Configuring Enhanced OS-9 #defineVECT_RB1003_PRI0x0 /* IDE controller vector */ #defineBASE_RB1003_SEC0x00000360/* IDE 2nd controller port */ #defineVECT_RB1003_SEC0x0/* IDE 2nd controller vector */ #else #defineBASE_RB1003_PRI0x000001f0/* IDE controller port addr */ #defineVECT_RB1003_PRI0x4e/* IDE controller vector */ #defineBASE_RB1003_SEC0x00000170/* IDE 2nd controller port */ #defineVECT_RB1003_SEC0x4f/* IDE 2nd controller vector */ #endif MWOS/OS9000/80386/PORTS/PCAT/RBF/RB1003/confi
1 Installing and Configuring Enhanced OS-9 #if defined(RB1003_SPEC_IO_ADDRESS) ds_idetype = IDE_TYPE_PCMCIA; ds_polled = IDE_POLLED; ds_altstat = HD_PCMCIA_ALTSTAT; ds_timeout = 30; #else ds_idetype = ds_polled = ds_altstat = ds_timeout = IDE_TYPE_STANDARD; IDE_INTERRUPTS; HD_DEFAULT_ALTSTAT; 30; #endif }; RBF OS-9 RBF native file system may be used on any IDE drive including PCMCIA devices. For more information see BootGen and IDE DESCRIPTORS.
1 Installing and Configuring Enhanced OS-9 md C:\CMDS md C:\SYS copy MWOS\OS9000\80386\CMDS\* C:\CMDS copy MWOS\OS9000\80386\PORTS\PCAT\BOOTS\INSTALL\SYS\MSHELL\startup C:\SYS copy MWOS\OS9000\80386\PORTS\PCAT\BOOTS\INSTALL\SYS\MSHELL\password C:\SYS cd C:\SYS cudo -cdo startup cudo -cdo password Although RBF is the preferred file system for use with OS-9 the convenience of using FAT file systems should be taken into consideration when deciding how you want to setup your system.
1 Installing and Configuring Enhanced OS-9 It is usually best to create the initial boot image to not use /h0. /dd should be set for RAM disk. This will allow downloading the TAR images. Next setup the final boot image and select /h0 if as initial device name. Descriptors Refer to IDE Descriptors for information on descriptor naming conventions. The descriptors for RB1003 are located in MWOS/OS9000/80386/PORTS/PCAT/CMDS/BOOTOBJS/DESC/RB1 003.
1 Installing and Configuring Enhanced OS-9 boot devices installed. How do we place the RBF file system on such small embedded systems? Compact Flash devices will work in PCMCIA systems with a carrier, so that we can use a standard PC with PCMCIA support to build up the PCMCIA disk. Once the disk is built, we can then remove the Compact Flash from the carrier and place it in the target system for use. IDE Descriptors For Standard IDE devices the devices are referenced as shown in the following table.
1 Installing and Configuring Enhanced OS-9 /hf2fmt IDE secondary slave - Primary partition #2 /hf3fmt IDE secondary slave - Primary partition #3 /hf4fmt IDE secondary slave - Primary partition #4 Standard IDE - PCF Descriptors /mhc1 IDE primary master - Primary partition #1 /mhc2f IDE primary master - Primary partition #2 /mhc3 IDE primary master - Primary partition #3 /mhc4 IDE primary master - Primary partition #4 /mhd1 IDE primary slave - Primary partition #1 /mhd2 IDE primary slave -
1 Installing and Configuring Enhanced OS-9 /pchc1fmt PCMCIA IDE Socket #0 - Primary partition #1 /pchefmt PCMCIA IDE Socket #1 - Entire disk /pche1fmt PCMCIA IDE Socket #1 - Primary partition #1 PCMCIA IDE - PCF Descriptors /pcmhc1 PCMCIA IDE Socket #0 - Primary partition #1 /pcmhe1 PCMCIA IDE Socket #1 - Primary partition #1 Note The descriptors for IDE are automatically included when using the Wizard.
1 Installing and Configuring Enhanced OS-9 Benefits • Small footprint for embedded boards. • Native RBF file system supported. Full boot support including IPL boot technology.
1 Installing and Configuring Enhanced OS-9 4. Navigate to Configure->Coreboot->Disk Configuration. A window appears with several tabs. 5. Select the tab labeled IDE Configuration. 6. Look for the area of the window labeled DiskOnChip and click on the checkmark boxes labeled Add to menu and Auto Boot. This will cause the booter to include the proper modules for allowing the system to boot from the DiskOnChip device. 7. Click on the OK button to dismiss the window. 8.
1 Installing and Configuring Enhanced OS-9 From fdisk, select option 6 to create the Master Boot Record. Respond with y , then to return to the fdisk main menu Use option 1 to create an OS-9000 partition. Press to accept the partition size, then selection option 1 to create an OS-9000/386 partition. Press to return to the fdisk main menu. At the main menu, select option 2 to make the newly created partition active.
1 Installing and Configuring Enhanced OS-9 DUPDATE /WIN:{address} /S:DOC121.EXB /FIRST With the {address} being the base address of the DiskOnChip, i.e. D000, D400, etc. “121” in the file DOC121.EXB represents the firmware version. The actual firmware version used might be a higher version, i.e. DOC122.EXB, etc. Note The DUPDATE utility and firmware files are provided with the DiskOnChip ISA evaluation board available from M-Systems. The default base address for the M-System’s evaluation board is D000h.
1 Installing and Configuring Enhanced OS-9 Your system is now fully booting from DiskOnChip! DiskOnChip Descriptors In the MWOS\OS9000\80386\PORTS\PCAT\CMDS\BOOTOBJS\DESC\RBD OC directory there are numerous device descriptors for both RBF and PCF filesystems. Note that the table below omits descriptors with the filename extension .h0 - these files are also present, and contain device descriptors with the canonical name h0, useful for systems whose main disk unit will be a DiskOnChip device.
1 Installing and Configuring Enhanced OS-9 /dochf3fmt DiskOnChip Device 3 - Primary partition #3 /dochf4fmt DiskOnChip Device 3 - Primary partition #4 DiskOnChip - PCF Descriptors /docmhcfmt DiskOnChip Device 0 - Entire disk /docmhc1fmt DiskOnChip Device 0 - Primary partition #1 /docmhc2fmt DiskOnChip Device 0 - Primary partition #2 /docmhc3fmt DiskOnChip Device 0 - Primary partition #3 /docmhc4fmt DiskOnChip Device 0 - Primary partition #4 /docmhdfmt DiskOnChip Device 1 - Entire disk /docmhd1fmt Disk
1 Installing and Configuring Enhanced OS-9 See the section Using Cross Hosted Utilities for creating and moving data to RBF floppies from Windows95/98 or NT4.0. Floppy Descriptors Floppy - RBF Descriptors /d0 Floppy drive A: Floppy - PCF Descriptors /md0 Floppy drive A: Note When using the Wizard the descriptors for floppy devices are automatically included. Users may also access the descriptors in the MWOS directory structure.
1 Installing and Configuring Enhanced OS-9 Note The SCRIPTS RAM support is currently only available on OS9000 X86 based systems. Requires non translation of PCI memory. To use SCRIPTS RAM support include the "-dSCRIPTS_RAM" in the compile line when making the driver. Instruction prefetch is not enabled by default. Maximum burst rate and large fifo’s are enabled. By default the Microware Symbios driver will use the PCI I/O model.
1 Installing and Configuring Enhanced OS-9 ---------------------------------------------------------------Symbios 53c810N/AN/AN/A6416 Symbios 53c825NoN/AN/A8816 This release adds the following: Number of devices supported (12) DEVICEWIDEULTRA1ULTRA2FIFO_SIZEBURST ------------------------------------------------------------Symbios 53c810N/AN/AN/A6416 Symbios 53c810APN/AN/AN/A6416 (1) Symbios 53c815N/AN/AN/A6416 (1) Symbios 53c820YesN/AN/A8816 (1) Symbios 53c825YesN/AN/A8816 Symbios 53c825AYesN/AN/A536128 S
1 Installing and Configuring Enhanced OS-9 Device supports instruction prefetch Device supports Cache Line Size and Cache Commands [Symbios 53C815] Device supports burst op code fetch [Symbios 53C825] Device supports Wide SCSI data transfers Device supports burst op code fetch [Symbios 53C825A] Device supports Wide SCSI data transfers Device supports burst op code fetch Device supports instruction prefetch Device has Scripts RAM Device supports Cache Line Size and Cache Commands [Symbios 53C860] Device su
1 Installing and Configuring Enhanced OS-9 Device supports burst op code fetch Device supports instruction prefetch Device has Scripts RAM Device supports Cache Line Size and Cache Commands Device supports Fast-20 transfers Device supports Clock Doubler [Symbios 53C895] Device supports Wide SCSI data transfers Device supports burst op code fetch Device supports instruction prefetch Device has Scripts RAM Device supports Cache Line Size and Cache Commands Device supports Fast-20 transfers ( Not supported y
1 Installing and Configuring Enhanced OS-9 Device Descriptors: To use a device with disconnect, wide, synchronous data transfer, and FAST20 Ultra the following should be added to the device descriptor entry in "systype.h". Be sure to re-make the descriptors. #define SCSIOPTS SCSI_ATN|SCSI_SYNC|SCSI_WIDE|SCSI_ULTRA Optionally you may use EditMod to change the SCSIOPTS field. For SYNC and ATN the SCSIOPTS value is "5".
1 Installing and Configuring Enhanced OS-9 Diamond FirePort20 and FirePort40—Wide, Ultra and Ultra Wide Highlights • Wide support • Ultra FAST20 support • SCRIPTS RAM support ( able to run scripts from on chip RAM ) (1) • Large FIFO enabled • Increased burst rates to 128 where supported • Special PCI cache features enabled (2) • PCI IO Mode selectable (PCI I/O or PCI Memory ) (3) Notes 1. The SCRIPTS RAM support is currently only available on OS-9, X86 based systems.
1 Installing and Configuring Enhanced OS-9 Note We have changed the default to IO_MAPPED for X86 due to problems on PCAT based motherboards.
1 Installing and Configuring Enhanced OS-9 Device supports instruction prefetch Device supports Cache Line Size and Cache Commands [Symbios 53C810ALV] * same as 810 Device supports burst op code fetch Device supports instruction prefetch Device supports Cache Line Size and Cache Commands [Symbios 53C815] Device supports burst op code fetch [Symbios 53C825] Device supports Wide SCSI data transfers Device supports burst op code fetch [Symbios 53C825A] Device supports Wide SCSI data transfers Device supports
1 Installing and Configuring Enhanced OS-9 Device supports Cache Line Size and Cache Commands Device supports Fast-20 transfers [Symbios 53C885] Device supports Wide SCSI data transfers Device supports burst op code fetch Device supports instruction prefetch Device has Scripts RAM Device supports Cache Line Size and Cache Commands Device supports Fast-20 transfers Device supports Clock Doubler [Symbios 53C895] Device supports Wide SCSI data transfers Device supports burst op code fetch Device supports ins
1 Installing and Configuring Enhanced OS-9 Device supports Fast-40 transfers ( Not supported yet ) Using Ultra Fast20 and Wide support. Controller Dependency: For FAST20 support the controller must support FAST20. Device Descriptors: To use a device with disconnect, wide, synchronous data transfer, and FAST20 Ultra the following should be added to the device descriptor entry in "systype.h". Be sure to re-make the descriptors.
1 Installing and Configuring Enhanced OS-9 Remove the # and specify the ID required. Driver name: scsi8xx Rom driver name: ncr8xx Adaptec 1540/1542 ISA Support for Adaptec 1540 series is provided, this includes 1540, 1542 and 1542CP. The driver probes the DMA channel used, but the port address and interrupt are fixed. If the vector does not match the card, a Bad Mode error is returned. You may set up the descriptor to use vector zero, which forces the driver to use what the card reports.
1 Installing and Configuring Enhanced OS-9 d_3.d0 id= SCSI ID (1-f) mapped as drive d0 SCSI FLOPPY - PCF Descriptors md_3.d0 id= SCSI ID (1-f) mapped as drive md0 SCSI TAPE Descriptors /mt id= SCSI ID (1-f) SCSI CDROM Descriptors /cd0 SCSI ID is set to 5 Note When using the Wizard, the descriptors for SCSI are automatically included or created as needed for the SCSI controller selected. Users may also access the descriptors in the MWOS directory structure.
1 Installing and Configuring Enhanced OS-9 The driver communicates with the OS-9 kernel using GMT, with the System Time Zone field in the init. module converting between GMT and local time. Refer to the Configuration Wizard Init dialog for information on setting the system time zone. Additional Devices PPP and SLIP Note PPP and SLIP is not directly supported by the Wizard. Although PPP and SLIP are not directly supported by the Wizard, you can use the Wizard to configure and use both PPP and SLIP.
1 Installing and Configuring Enhanced OS-9 Edit the pcat.ini in the directory MWOS\OS900\80386\PORTS\PCAT\BOOTS\INSTALL\INI directory and search for ETHER_OPTION_0. Setup SLIP as required. ETHER_OPTION_0=slip0 address 10.0.0.1 destaddr 10.0.0.2 binding /spsl0 Make sure SLIP is selected in the SPF/OPTIONS tab. Go into the Wizard and select Enable Softstax just as you would for an Ethernet based connection. Build the boot.
1 Installing and Configuring Enhanced OS-9 X86 Utilities ABORT The Abort utility is a p2module that may be used to allow the system to enter debug state once a Non-maskable Interrupt (NMI) is generated. Usage: $ p2init abort CACHECHK The Cachechk utility may be used to verify L2 cache is working on a given system. (Super)[/h0/>] cachechk Memory Block -----------256 512 1024 2048 4096 8192 16384 32768 65536 131072 262144 524288 1048576 2097152 Transfer Speed Access Time -------------- -----------292.
1 Installing and Configuring Enhanced OS-9 Syntax: dmppci {} Function: dump PCI configuration space. Options: none.
1 Installing and Configuring Enhanced OS-9 In order for a user state program to be granted I/O port access by GIMMEIO, the user state program module must be supervisor state (owned by 0.x). Note Although the GIMMEIO trap handler was required as of v2.1 of OS-9 for X86, users may now disable I/O protection system wide if desired, by selecting Allow User State I/O in the Configuration Wizard’s Init Options dialog box. LOOP The loop command may be used to create repetitive commands.
1 Installing and Configuring Enhanced OS-9 98/11/08 22:52:31 up for: 0 days 0 hours 0 minutes 6 seconds Wait 2 Seconds 98/11/08 22:52:33 up for: 0 days 0 hours 0 minutes 8 seconds Wait 2 Seconds 000:216 (E_PNNF) File not found. Error #000:216 (E_PNNF) File not found. The pathlist does not lead to any known file. MOUSE The Mouse utility is provide as a example of how to access the mouse from user programs. Source is included.
1 Installing and Configuring Enhanced OS-9 BUS:DV:FU VID DID CMD STAT CLASS RV CS IL IP ------------------------------------------------000:00:00 8086 1250 0006 2200 060000 03 00 00 00 000:02:00 1011 0022 0107 0280 060400 03 08 00 00 000:03:00 8086 1229 0007 0290 020000 04 08 0a 01 000:04:00 1013 00d6 0007 00a0 030000 03 00 0a 01 000:07:00 8086 7000 000f 0280 060100 01 00 00 00 000:07:01 8086 7010 0005 0280 010180 00 00 00 00 001:13:00 10b7 9000 0007 0200 020000 00 00 0a 01 Bridge Device [S] Bridge Device
1 Installing and Configuring Enhanced OS-9 ELCR-EDGE/LEVEL CONTROL REGISTER INT CNTRL-1 - [0x000004d0] = 0x00 INT00 INT01 INT02 INT03 INT04 INT05 INT06 INT07 edge edge edge edge edge edge edge edge INT CNTRL-2 - [0x000004d1] = 0x04 INT08 INT09 INT10 INT11 INT12 INT13 INT14 INT15 edge edge level edge edge edge edge edge INTERRUPT CONTROLLER STATUS [PIC-8259] OCW1 - OPERATIONAL CONTROL WORD 1 REGISTER INT CNTRL-1 - [0x00000021] = 0xf8 INT00 INT01 INT02 INT03 INT04 INT05 INT06 INT07 on on on off off off off o
1 Installing and Configuring Enhanced OS-9 (Super)[/r0/>] chd /pcmhe1 (Super)[/pcmhe1/>] free "pcmhe1" Capacity: 43967 blocks, 1373.968 Mbytes Free: 28681 blocks, 896.281 Mbytes Largest Free Block: 13036 blocks, 407.375 Mbytes (Super)[/r0/>] pcmcia -d -s=1 socket1: occupied It is now save to remove the card is socket #01 MWOS/OS9000/80386/PORTS/PCAT/ROM/config.
1 Installing and Configuring Enhanced OS-9 PINFO The pinfo utility may be used to access DOS extended partitions by providing the required information to create descriptors. The extended partitions are displayed as well if the partition may be used with OS-9. Note that we currently only support this utility with IDE devices. SCSI devices are not supported. You may create or modify a existing descriptor with the values shown in the Extended partition section.
1 Installing and Configuring Enhanced OS-9 Options All command line arguments are required, save that the presence or absence of indicates whether to read or write the specified information. PCI bus number (0..255) PCI device number (0..32) PCI function number (0..7) offset value (e.g.
1 Installing and Configuring Enhanced OS-9 Note Due to the nature of the ’Symbios_info’ utility changes to the Symbios driver may cause this program to fail. The ’Symbios_info’ utility should be re-compiled anytime the driver changes. Although the ’Symbios_info’ utility is mainly used to see how the drive in use is set up, advanced information is also included to help determine any problems with using SCSI drives. Most problems with SCSI are normally termination related.
1 Installing and Configuring Enhanced OS-9 The show information option will display the current thread states. $ iniz hs02; dir /hs02; Symbios_info -s PC-AT Compatible 80386 OS-9000 V2.2 for Intel x86 vector ($) ------------74 ($4a) prior ----10 drivstat --------$00f90fb4 irq svc --------$0013e6f1 driver -----scsi8xx Dump Threads....
1 Installing and Configuring Enhanced OS-9 0xe8001000 0xe8001001 0xe8001002 0xe8001003 0xe800100a 0xe8001005 0xe8001006 0xe8001007 0xe8001008 0xe8001009 0xe800100a 0xe800100b 0xe800100d 0xe800100e 0xe800100f 0xe8001010 0xe8001014 0xe8001018 0xe8001019 0xe800101a 0xe800101b 0xe800101c 0xe8001020 0xe8001021 0xe8001022 0xe8001024 0xe8001027 0xe8001028 0xe800102c 0xe8001030 0xe8001034 0xe8001035 0xe8001036 0xe8001037 0xe8001038 0xe8001039 0xe800103a 0xe800103b 0xe800103c 0xe8001040 0xe8001041 0xe8001044 0xe800
1 Installing and Configuring Enhanced OS-9 0xe800105c [ffffffff] SCRATCHB The show dsp option displays the current Symbios scripts location; it is useful when and if the SCSI bus locks. The information obtained will help to deal with drives that appear to have problems. If a SCSI drive appears to hang, you can load the ’Symbios_info’ utility and run it after the hang to see the state of the scripts. Tech support can use this information to determine what the drive is doing or not doing.
1 Installing and Configuring Enhanced OS-9 Irq Level Irq Vector Irq Priorty [0x00000000] [0x0000004a] [0x0000000a] SCSI controller supports SCSI Wide 16 Special Features: Clock Doubler Enabled SCSI Large FIFO enabled size = 536 Burst Rate = 128 Burst Op Code Fetch Enabled PCI Read Line Enabled PCI Read Multiple Enabled Write and Invalidate Enabled PCI Cache Line Size Enabled TESTPCI The TestPCI utility provides a means to test the PCI library calls.
1 Installing and Configuring Enhanced OS-9 VIDBIOS The VIDBIOS utility shows how to use the INT10h trap handler. Users may either use the VIDBIOS utility or incorporate the functionality in their own programs by studying the code in MWOS/OS9000/80386/PORTS/PCAT/UTILS/VIDBIOS. The VIDBIOS utility allows setting specific video mode using INT10h on video cards. Some video cards may not function correctly with the VIDBIOS utility do to the protected nature of OS-9.
1 Installing and Configuring Enhanced OS-9 ROM Utilities and Special Booters llkermit The llkermit ROM booter allows booting OS-9 over serial using Kermit Protocol. You must select llkermit in the ROM options when creating the boot image. Once the menu is displayed type ker. You should now be able to send the image on the communications port. llcis The LLCIS ROM Sub-Booter allows PCMCIA devices to be initialized for use.
1 Installing and Configuring Enhanced OS-9 may be that another device is using the memory at 0xd4000. If this is the case change the value in config.des. The Wizard will use this value next time you create a boot image. rpciv ROM based version of the PCIV utility. The RPCIV utility is provided for debugging purposes before the system boots.
1 Installing and Configuring Enhanced OS-9 PCI Configuration Information By default the PCI system will search up to seven buses. On newer motherboards, PCI slot devices are not bus zero. The maximum bus number may be changed in MWOS/OS9000/80386/PORTS/PCAT/systype.h. The PCI library must be re-made as well in MWOS/OS9000/80386/PORTS/PCAT/PCILIB. Running os9make from this directory will re-create a new PCI library. You must also re-make any drivers that require the new changes.
1 Installing and Configuring Enhanced OS-9 Description _pci_search_device() provides a means to check whether PCI devices are available in the system. If the system supports PCI devices and at least one PCI device is found, _pci_search_device() will return SUCCESS; otherwise it returns NO_DEVICE. Header Files MWOS/SRC/DEFS/HW/pcicnfg.h Example #include #include #include #include
1 Installing and Configuring Enhanced OS-9 • function_number • vendor_id • device_id • rev_class in the structure stat points to will reflect the proper values for the device found. If no PCI next device is found, then _pci_next_device() will return NO_DEVICE. Header Files MWOS/SRC/DEFS/HW/pcicnfg.h Example #include #include #include #include main() { pci_config_stat stat; stat.bus_number = 0; stat.
1 Installing and Configuring Enhanced OS-9 Description pci_get_config_data() provides a simple means to obtain the PCI standard information for a given PCI device. Note Many PCI devices include additional information after the standard configuration block. To access it one must use pci_read_configuration(). For information on the information returned, refer to the pci_config_reg structure in ’pcicnfg.h’. Header File MWOS/SRC/DEFS/HW/pcicnfg.h Example #include #include #include #include
1 Installing and Configuring Enhanced OS-9 pci_find_device() - find PCI device Syntax #include error_code pci_find_device(u_int32 vender_id, u_int32 device_id, u_int32 index, u_int8 *bus, u_int8 *dev); State System Description pci_find_device function() will search the PCI bus for a device with the same ’vendor_id’ and ’device_id’ passed. If the index is nonzero, then the device found is based on the index.
1 Installing and Configuring Enhanced OS-9 } return EXIT_SUCCESS; } pci_find_class_code() - find PCI device based on class code Syntax #include error_code pci_find_class_code( u_int32 class_code, u_int32 device_index, u_int8 *bus, u_int8 *dev); State System Description The pci_find_class_code() function will search the PCI bus for a device with the same ’class_code’ as the one passed.
1 Installing and Configuring Enhanced OS-9 u_int8 bus, dev; u_int32 index = 0; if (pci_find_class_code(NETWORK_ATM_CONTROLLER, index, &bus, &dev) == SUCCESS) { printf("device at bus:%02d dev:%02d func:%02d\n", bus, dev&0x1f, dev>>5); } return EXIT_SUCCESS; } pci_read_configuration_byte() - read PCI configuration byte Syntax #include
1 Installing and Configuring Enhanced OS-9 func, offsetof(pci_config_reg, irq_line)); printf("PCI irq line = %d\n", irqline); return EXIT_SUCCESS; } pci_read_configuration_word() - read PCI configuration word Syntax #include
1 Installing and Configuring Enhanced OS-9 pci_read_configuration_dword() - read PCI configuration dword Syntax #include u_int32 pci_read_configuration_dword(u_int32 bus, u_int32 dev, u_int32 func, u_int32 index); State System Description pci_read_configuration_dword() function will return the PCI configuration dword value for the PCI device at ’bus’ bus number, ’dev’ device number, ’func’ function number, ’index’ offset into the configuration space. Header File MWOS/SRC/DEFS/HW/pcicnfg.
1 Installing and Configuring Enhanced OS-9 pci_write_configuration_byte() - write PCI configuration byte Syntax #include error_code pci_write_configuration_byte(u_int32 bus, u_int32 dev, u_int32 func, u_int32 index, u_int8 val); State System Description pci_write_configuration_byte() writes to the PCI configuration space the byte value ’val’ for the PCI device at ’bus’ bus number, ’dev’ device number, ’func’ function number, ’index’ offset into the configuration space.
1 Installing and Configuring Enhanced OS-9 pci_write_configuration_word() - write PCI configuration word Syntax #include error_code pci_write_configuration_word(u_int32 bus, u_int32 dev, u_int32 func, u_int32 index, u_int16 val); State System Description pci_write_configuration_word function() writes to the PCI configuration space the word value ’val’ for the PCI device at ’bus’ bus number, ’dev’ device number, ’func’ function number, ’index’ offset into the configuration space.
1 Installing and Configuring Enhanced OS-9 pci_write_configuration_dword() - write PCI configuration dword Syntax #include error_code pci_write_configuration_dword(u_int32 bus, u_int32 dev, u_int32 func, u_int32 index, u_int32 val); State System Description pci_write_configuration_dword() writes to the PCI configuration space the dword value ’val’ for the PCI device at ’bus’ bus number, ’dev’ device number, ’func’ function number, ’index’ offset into the configuration space.
1 Installing and Configuring Enhanced OS-9 pci_get_irq_pin() - get PCI IRQ pin Syntax #include u_int8 pci_get_irq_pin(u_int8 bus, u_int8 dev, u_int8 func); State System Description pci_get_irq_pin() returns the status of the IRQ pin on a given PCI device at ’bus’ bus number, ’dev’ device number, ’func’ function number. Header File MWOS/SRC/DEFS/HW/pcicnfg.h Example #include #include #include #include
1 Installing and Configuring Enhanced OS-9 Description pci_get_irq_line() returns the status of the IRQ line on a given PCI device at ’bus’ bus number, ’dev’ device number, ’func’ function number. Header File MWOS/SRC/DEFS/HW/pcicnfg.h Example #include #include #include #include
1 Installing and Configuring Enhanced OS-9 Example #include #include #include #include
1 Installing and Configuring Enhanced OS-9 Hawk Profiler To use the Hawk Profiler the system must be setup to included the specific target configuration. The autoexec.bat file will contain the following information. In this example we have install to C:\MWOS, if the install path is different the information in the autoexec.bat file will reflect the information used during the install.
1 Installing and Configuring Enhanced OS-9 Both Hawk and the Hawk profiler required that Windows95/98 or NT4.0 includes TCP/IP support and the IP address must be setup correctly to allow connection to the target board. The target board IP address must appear on the same physical network domain. The target hardware should be running SoftStax (SPF). Also the spfnppd and spfnppdc modules must be loaded. The spfnppd and spfnppdc modules are located in MWOS/OS9000/80386/CMDS directory.
P r o d u ct Di sc r ep an cy R ep o r t To: Microware Customer Support FAX: 515-224-1352 From:___________________________________________ Company:_______________________________________ Phone:__________________________________________ Fax:_____________________Email:__________________ Product Name: Description of Problem: ________________________________________________ ________________________________________________ ________________________________________________ ________________________________________