Introduction ------------ Running BPQ in Windows reliably (i.e. so that it will keep running for days on end, irrespective of what else you run on the PC) has always required you to "hide" from Windows any COM ports that BPQ uses. This was true for Win31 and Win95, and it is still true for Win98. I have successfully used the techniques described below, on several different PCs, with Win95 (original retail version), Win95 OSR2, Win98 Beta 3, and Win98 release version. If you have been trying to run BPQ with Win98 and had problems with it crashing, hopefully these notes will help. I am making three assumptions:- 1. You understand BPQ well enough to have already set it up so if you boot into DOS, rather than into Win98, it works properly and reliably. 2. You don't already have any DOS multiple boot configurations set up in CONFIG.SYS and AUTOEXEC.BAT. 3. You are using BPQ with a KISS TNC. These notes do NOT apply to using it with Baycom modems. If you follow the instructions below, then you will finish up with a configuration where Win98 offers you two boot options - one will boot your PC without BPQ and one will boot it with BPQ. The assumption is that the PC will be used for things besides packet and so you don't always want to have BPQ loaded. The following example is based on using COM2 (2F8H, IRQ3) in BPQ, you will need to make alterations according to what ports BPQ is actually using. 1. Clear Up Any Mess -------------------- You MUST check the following:- (a) Control Panel, System, "Device Manager", "Ports (COM & LPT)" should show ALL the COM ports on your PC. None of them should have red crosses through them. (b) In the BIOS, all the COM ports on the motherboard should be enabled. If the BIOS allows a setting for a COM port of "automatic" it should not be used. You should use an option that assigns a specific address to the port. (c) That the address and IRQ you are specifiying in BPQCFG.TXT for any COM Port that BPQ is going to use match the address and IRQ shown for that port in "Device Manager", Properties, Resources. (d) That the settings of any address and IRQ jumpers on additional COM port cards match the settings in "Device Manager". (e) That no two COM ports are using the same IRQ. (f) For now, remove any commands from AUTOEXEC.BAT that are attempting to load BPQ, but keep a copy because you'll need to put them back later. (You can, of course, just REM them out rather than removing them.) If you cannot achieve (a) to (f) then give up now. Because, if you carry on, you're going to have big problems! 2. Create Two Hardware Profiles ------------------------------- In Control Panel, select System then "Hardware Profiles". Highlight "Original Configuration" and rename it to "Original". Now select Copy and make a copy of "Original" as "BPQ". Reboot the PC, and it should offer you a menu with two options - "Original" and "BPQ". Select "BPQ". 3. "Remove" The COM Port ------------------------ In Control Panel, select System then "Device Manager". Expand "Ports (COM & LPT)" and highlight COM2 (or whatever port you want BPQ to use). Click "Remove", select "Remove from specific configuration", select BPQ. You wiil now probably be prompted to reboot. When you reboot, select "BPQ" from the menu. Check in Device Manager and it should now no longer list COM2. NOTE - if COM2 is listed and marked with a red cross, you haven't followed the above instructions correctly! Repeat the above for any other COM ports that you want BPQ to use. 4. Changes To CONFIG.SYS ------------------------ The aim of the changes to CONFIG.SYS and AUTOEXEC.BAT is to create DOS two boot configurations with names that match the names you used for the hardware profiles you have created in Windows. Edit CONFIG.SYS. Put at the top the following lines:- [menu] menuitem=Original menuitem=BPQ [common] REM all your existing CONFIG.SYS entries go below [common]. At the end of CONFIG.SYS, put the following lines:- [Original] REM put here any entries that you only want to be processed when REM BPQ is NOT loaded. [BPQ] REM put here any entries that you only want to be processed when REM BPQ IS loaded. 5. Changes to AUTOEXEC.BAT -------------------------- Edit AUTOEXEC.BAT. At the end, put the following lines:- goto %config% :bpq REM put here your commands to load BPQ. For example, my BPQ is in REM F:\BPQ, so I put:- f: cd \bpq REM load any ethernet drivers, etc. bpqcode c: goto end :original REM if you want to have some AUTOEXEC.BAT commands that are only REM executed when BPQ is NOT loaded, then put them here. :end 6. Give It A Try ---------------- Reboot and you will once again get the menu with the "Original" and "BPQ" options. If you now select "Original" then BPQ won't be loaded and the COM port(s) won't be hidden from Windows. If you select "BPQ" then BPQ is loaded and the COM port(s) are hidden. This "magic" occurs because the names of your two DOS configurations (menuitems) in CONFIG.SYS match the names of your hardware profiles in Device Manager. (If it doesn't work, before you start tearing your hair out, check that your spelling of "Original" is consistent throughout! ;-) Open a DOS window, go into your BPQ directory and run PAC4. You should be able to make reliable connections. 7. NOTE - How Not To Do It! --------------------------- If, in Device Manager, you view the Properties of a COM port, then you will see there is an option for "Disable in this hardware profile". DO NOT try and use that option to hide a port that BPQ is using - it won't work properly. In a worst situation, it results in the port that BPQ is using being disabled in the BIOS, and Windows then assigning the IRQ that BPQ is using to a PCI device - with disastrous results! If The PC Is Being Used Only For Packet --------------------------------------- If the PC is to be used only for packet, then you don't need two boot options, and so much of the above doesn't apply. All you need to do is to Remove the COM port in Device Manager. (Note that '1' and '7' above still apply.) You don't need to make the changes to CONFIG.SYS and AUTOEXEC.BAT to create two boot options, simply put your BPQ commands in AUTOEXEC.BAT. How "Solid" IS Your Windows/BPQ Configuration? ---------------------------------------------- As I said at the start, the aim should be to have a system that will run reliably for days on end, irrespective of what else you run on your PC. Here are a few tests that a properly configured Windows/BPQ system should pass:- (a) If you open a Windows comms application (e.g. Terminal or Hyperterminal) it should not allow you to select a port that BPQ is using. (b) You should be able to run Windows comms programs on other COM ports without BPQ stopping working. (c) If you connect to the BPQ switch and send the command "s", then "RX Overruns" should be no more than a fraction of a percent of "L2 Frames Heard". If you are using BPQ in polled mode, "Undrun/Poll T-O" should also be a very small number. If either of these statistics are showing high values, then you need to reduce "SPEED" in the BPQ port configuration. Also, try and make sure that you are using a port with a 16550, a port without a 16550 will suffer badly from "RX Overruns" unless you run it a low speed. Roger Barker, G4IDE roger@peaksys.co.uk Last update - 30 September 1998