MTVSpool Version 2.02 User Guide February 1991 By Mark T. Van Ditta Copyright (c) 1990, 1991 by Mark T. Van Ditta & Associates. All rights reserved. TABLE OF CONTENTS PAGE SECTION 1 INTRODUCTION 1 2 OVERVIEW OF MTVSPOOL 1 3 MTVSPOOL FEATURES 2 4 MTVSPOOL COMPONENTS 3 5 MTVSPOOL COMMAND LINE ARGUMENTS 3 6 INSTALLATION 4 ii 1 INTRODUCTION Welcome to MTVSpool, an affordable non-dedicated distributed print service for Novell NetWare Version 2.1 or higher. I developed MTVSpool as a project to assist me in preparing for the Certified NetWare Engineer (CNE) examinations. I have always believed that in order to truly understand a software product, one must have intimate knowledge of that product's algorithms and data structures. By developing this product, I was able to gain a thorough understanding of NetWare's: Bindery, Connection, Directory, Message, Print, Queue Management, and Workstation Services. After completing the CNE examinations, I decided that although there were already several workstation based non-dedicated distributed print services available for NetWare, not one of them was truly affordable. Every one of these print services carries price tag in the $400-$500 dollar range. For an ELS NetWare user, $400-$500 is a hefty price to pay just to have non-dedicated workstation based shared printing. In an effort to drive down the price of these print services, I decided to package my project and offer it to the NetWare community at a fraction of my closest competitor's price. 2 OVERVIEW OF MTVSPOOL Starting with NetWare Version 2.1, Novell included NetWare Queue Management System Services in every workstation shell. These services provide the necessary hooks into the NetWare Operating System to implement what are called Value Added Servers (VASs). MTVSpool is one of those VASs that Novell hoped third party developers would create and distribute. A workstation executing NetWare and MTVSpool becomes an extension to the file server's normal print service. Every command line or menu utility which can be used to control a printer attached to a file server can also be used to control a MTVSpool print server. Thus, there is no need to learn another set of commands to use a shared printer attached to a workstation that is executing MTVSpool. 1 3 MTVSPOOL FEATURES From a features point of view, MTVSpool boasts a few that some of the higher priced non-dedicated distributed print services do not have, such as: o Not requiring a user to be logged in at the workstation. o Automatic redirection (capture) of the shared printer LPT port to queue which the shared printer services. o Print job complete notification. o Requires only 4.5K total memory space (DOS Memory Control Block + Program Segment Prefix + Executable Load Module) with banner pages or 3.3K (The smallest memory requirement of any non-VAP based distributed print server) without banner pages. ** Note ** : The demo version of this product contains code that limits the number of concurrent print servers to 1. I included this code to insure that I see a return on the large investment in time (approximately 1000 hours) I spent developing this product. Thus, one will notice that the TSRs have slightly larger memory requirements than stated. The registered version of this product does not contain this concurrency control code. o Not requiring the printer to send interrupts (e.g. IRQ 5 and IRQ 7 are still free to be used for other applications). o Not requiring the execution of a VAP on the file server. o Not requiring an extra connection on a concurrent workstation/print server (i.e. if one uses Novell's Pserver or LAN Systems' LANSpool on NetWare 2.1x, then one loses a user connection to the VAP, an ELS II network becomes a 7 user network). 2 4 MTVSPOOL COMPONENTS In version 2.02 of MTVSpool, there are three software components: MTVSPOOL.EXE, MTVSPLNB.EXE and MTVSETUP.EXE. The MTVSPOOL.EXE and MTVSPLNB.EXE components execute as TSRs on each workstation that wishes to share its printer with other network users. The only difference being that the MTVSPLNB.EXE component does not support banner pages. The MTVSETUP.EXE component is used by the Network Supervisor to setup a file server to allow MTVSpool print servers to service the file server's print queues. 5 MTVSPOOL COMMAND LINE ARGUMENTS Under normal operation, one will only need to use the /Q= command line argument. The rest of the arguments are optional and have defaults. The following is a list of command line arguments available in MTVSpool 2.02: /B= Where is greater than or equal to 512 and is less than or equal to 49152. This command line argument is used to control the print buffer size. When using a LAN with a bandwidth of 1 MBps or greater (i.e. Ethernet, ARCnet, Token Ring), this command line option should be left at its default of 512. /L= Where equal the LPT number of the shared locally attached printer. The default for this command line argument is 1. /N Notify the user who submitted the print job after it has been printed. The default for this command line argument is no notification. /Q= Where is replaced with the queue one wishes the workstation to service. /S MTVSpool normally sends a trailing form feed to the printer to insure that the next print job does not start to print on the last page of the previous print job. There will be times (i.e. printing labels) were one does not wish for MTVSpool to send this trailing form feed. By using the /S command line argument, one may instruct MTVSpool not to send this trailing form feed. 3 6 INSTALLATION In order to setup the file server for MTVSpool, one must be either the file server SUPERVISOR or a SUPERVISOR EQUIVALENT, as the MTVSETUP program modifies the file server's bindery. Once the file server is setup for MTVSpool, anyone may share their printer using either MTVSPOOL or MTVSPLNB. The following steps must be followed in order for MTVSpool to function correctly. 1. First, one must login as SUPERVISOR or as a SUPERVISOR EQUIVALENT. 2. Using PCONSOLE, create all of the print queues which one wishes to be serviced by MTVSpool print servers. If one does not know how to create a print queue, this operation is performed by selecting "Print Queue Information" from the PCONSOLE Main Menu. After selecting this menu item, one should see a window with the print queues that are currently available for use. If one wishes MTVSpool to service only these existing queues, then they will not need to create any new print queues; but, if one wishes to create a print queue for each different workstation printer which will be shared, then all one has to do is press the "INSERT" key to create a new queue. After pressing the "INSERT" key, one will be prompted to enter the name of the new print queue. After entering the new print queue name and pressing "ENTER", one will be taken back to the window which displays the currently available print queues. If one wishes to create more than one print queue, then all they have to do is to repeat this process for every new print queue which is needed. 3. If the file server was not previously setup for version 1.0 of MTVSpool, then one may skip to step 4. Otherwise, using PCONSOLE delete the old MTVSPOOL print server bindery object using the "Print Server Information" selection from the PCONSOLE Main Menu. After selecting this menu item, one should see a window with the names of the currently available print servers. After locating and placing the highlighted bar on the print server named MTVSPOOL, one should press the "DELETE" key. 4. If the file server was previously setup for any version of MTVSpool greater than 1.0; but, less than or equal to the current version, then one may skip to step 5. Otherwise, one must execute the MTVSETUP program, which will afford one the opportunity the authorize only those queues which one wishes MTVSpool to service. This authorization process comes in the form of a query prompt such as "Do you wish to have 4 MTVSpool service Queue MTV_TEST?". If one wishes MTVSpool to be able service the queue in the query prompt, then answer "Y" to this query prompt; otherwise, answer "N" to this query prompt. This process will be repeated for every print queue on the file server. 5. Copy the MTVSPOOL (or MTVSPLNB) program onto the startup disk of every workstation which will be used as a MTVSpool print server (a print server is a workstation which one wishes to be able to share its locally attached printer) and modify that workstation's autoexec.bat to execute the MTVSPOOL (or MTVSPLNB) program after the executing IPX.COM and the NetWare Shell (e.g. NET3.COM) when booting. One should remember that the MTVSPOOL program requires that the print queue which will be serviced by MTVSpool to be specified using the /Q= command line argument (e.g. MTVSPOOL /Q=MTV_TEST, or MTVSPLNB /Q=MTV_TEST). 6. One must then add the following lines to the config.sys file of every workstation will be used a print server: files=40 (this number can be greater; but, not less) stacks=0,0 7. Now for the last and final step. If one has successfully completed steps 1-6, then all one will need to do is to reboot the workstations which will be print servers (remember, if one has not purchased a registered copy of MTVSpool, one will not be allowed to use more than one workstation as a non-dedicated print server at a time). After rebooting the print server workstations, all one needs to do to use MTVSpool print servers from any other workstation is perform a capture (on a print serving workstation, one does not need to perform a capture of the LPT port which is attached to the printer which is being shared as MTVSpool performs this performs operation automatically) to the queue which the MTVSpool print server services. 5