Using MADGEODI DOS ODI Driver ============================= MARCH 1993 The MADGEODI driver consists of two DOS files: MADGEODI.COM and MDGDOS03.BIN. MADGEODI.COM is an executable file and MDGDOS03.BIN is a downloadable firmware file. Keep both files in the same directory or sub-directory. Novell's Open Data-Link Interface (ODI) allows LAN drivers and protocol stacks to work together independent of hardware and protocol stack details. An intervening layer, called the Link Support Layer (LSL), is responsible for routing different packet types between LAN drivers and protocol stacks. MADGEODI is an ODI driver for DOS workstations. Schematic diagram of the Open Datalink Interface: NetWare Higher layers: NCP --------------ipx i/f---------------- Protocol stacks: IPXODI -------hardware independent i/f------ Link Support Layer: LSL -------protocol independent i/f------ LAN drivers: MADGEODI -------------hardware i/f------------ Hardware: MADGE SMART RINGNODE The MADGEODI driver conforms to the ODI specification for a LAN driver. Load it after the Link Support Layer and before any protocol stacks. The following is a sample AUTOEXEC.BAT: LSL (Novell supplied) MADGEODI IPXODI (Novell supplied) NETX (Novell supplied) Additionally, if source-routing support is required, load the file ROUTE.COM (Novell supplied) after MADGEODI.COM and before IPXODI.COM. If Novell Remote Program Load is being used, load the file RPLODI.COM (Novell supplied) before MADGEODI.COM. Additionally, load the ROUTE.COM file, if required, before MADGEODI.COM. The reason for this is so that a connection to a server that is on the far side of a source-routing bridge can be maintained while the "real" ODI driver is taking over from the RPL driver. A sample AUTOEXEC.BAT for RPL is: LSL (Novell supplied) RPLODI (Novell supplied) ROUTE (Novell supplied) MADGEODI IPXODI (Novell supplied) NETX (Novell supplied) The driver uses a default maximum frame size of 4210 bytes (4Kbytes data). The default internal buffer sizes are 4.5Kbytes for the send buffer and 8.5Kbytes for the receive buffers. The DOS memory requirement is approximately 4.5Kbytes + receive buffer size + transmit buffer size. Using the default settings this is approximately 17.5Kbytes. The driver may be loaded in high memory using a memory manager such as EMM386.EXE. You can configure the MADGEODI driver from a NET.CFG file. The options required are listed following the driver's section header, which is "LINK DRIVER MADGEODI". The following are the keywords recognised and their meanings: PORT nn : The IO location of the required adapter card. SLOT nn : The IO SLOT of the required adapter card. FRAME abc : A Frame type that is required (may be entered more than once). PROTOCOL abc : A Protocol stack that is required (may be entered more than once). MAX FRAME SIZE nnnn : The Maximum packet size to be supported including protocol and hardware headers (4216 represents a maximum data size of 4Kbytes). The minimum frame size is 632 (1/ 2Kbytes); RECEIVE BUFFER SIZE nnnn : The size of the internal receive buffer. This must be at least twice the size of the maximum frame size and is limited to a maximum of 30Kbytes. This setting changes the driver's run-time memory usage and may affect performance slightly. TRANSMIT BUFFER SIZE nnnn : The size of the internal transmit buffer. This has the same limitations and purpose as the receive buffer. ADAPTER WATCHDOG TIMEOUT nn :This parameter changes the timeout period after which the adapter will shut itself down and de-inset from the Token-Ring. the default is 8 seconds but this should be increased if applications that disable system interrupts for long periods are to be used. Giving no timeout value at all causes the Watchdog timer to be disbled. If no NET.CFG file exists or if the Adapter IO Port (or slot) is not specified then the first available adapter is used. If the driver is loaded twice, then on the second occasion, a NET.CFG file must be present and must specify which adapter (IO Port or slot) to use. The driver supports the following command-line switches: MADGEODI : Loads the driver into memory MADGEODI U : Unloads the driver from memory. MADGEODI F : Forces the driver to unload from memory. MADGEODI I : Displays version information. MADGEODI ? : Displays a list of command-line switches. MADGEODI H : Displays current file configuration and shows a sample NET.CFG file. MADGEODI C : Pre-configures the MADGEODI.COM file. The NET.CFG file is read and the "burnt-in" settings for maximum frame size, receive buffer size, and transmit buffer size are changed to those in the NET.CFG file. This means that a NET.CFG file is not necessarily needed on every workstation. MADGEODI D : Re-configures the MADGEODI.COM file to its initial (default) state.