Joe's OS/2 Tips - Number 3

Topics Covered


 * CPS:EXtend not found Error, related stuff.
 * Comms Programs
 * Off-Line Readers
 * First Impressions of CSet/2 - The C compiler for OS/2

CPS-EXTEND NOT FOUND
If you have seen this message after your system came to a screaming halt, chances are that (your not watching chances), you have either not installed the HPFS fix or your power to your machine was cut-off. What ever, this error message can only be fixed by booting from an OS/2 BOOT DISK and checking the hard drive for corrupted sectors, with the following command. CHKDSK D: /F:3 where D: is your Drive and /F:3 is the highest testing level for chkdsk.

Unfortunately OS/2 doesn't provide an easy to use FORMAT /S command, but you have to make a boot disk by hand, never fear, I've included a very nice REXX command file by Donald L. Meyer. This MAKEBOOT.CMD will ask you questions, then make a boot disk for your system. I recommend that you do this NOW, if you don't have one already.

Also many 'silly' problems like vanishing Icons, keyboard problems and other silly (was working yesterday) problems, are normally fixed by the above. Some programmes have the ability to edit your system's INI files, and don't close them correctly, thus just creating errors in the next boot-up, this will help solve your problems.

These INI files can be 'saved' at boot-time to a floppy by adding into you config.sys file the following line - RUN REN B:\*.INI B:\*.PRE RUN copy d:\os2\.ini B:

This will now save/backup your INI files to a floppy, and will give you two INI file sets to choose from, either the last one or the second last one (since, if you've got the same luck as I, your backup INIs will be corrupt as well!).

COMMS PROGRAMS
Since many people, when exposed to OS/2 for the first time, seem to be heavily involved with DOS/WINDOWS etc, they are often caught out by OS/2's comms support. I have had many calls with various problems with communications, from slow transfers to CRC errors all the time.

Often these people don't realise that OS/2 is heavily hardware dependent, and that if you are using the wrong hardware, software can't really solve your problems.

The Hardware Side
Most people have heard/read about the mysterious 'thing' call a UART. This single chip, is the single most important chip for your comport and speed. In that, even if you are driving the latest 486-50 Mhz system, you will still suffer from CRCs (etc) with your communications, if you've still got the older UARTs installed (8250,16450).

For successful communications, your UART must belong to the family called 16550. This family has a character buffer built into the chip, so that while your computer is busy, with other tasks, the UART can provide a small amount of breathing space for your comport. Essentially, and operating system/shell which provides any form of multi-tasking ability, requires at least the 16550 chipset. This is due to the design of the standard IBM PC (not XT/AT etc), in that every time the Comport receives/sends data, the CPU must handle it directly, rather than another piece of hardware, thus while the software is executing another application, the comport must be able to hold/store the incoming signals, otherwise you'll incur data lost - hence the CRC's and aborted download/uploads.

With a 16550 installed, you can happily multi-task away under OS/2, if and only if you have a medium sized system (eg a 25SX with 8 meg of ram), and if you don't go overboard with applications (not more than 10 concurrent processes). I've found that my system (a 386-33 8 meg, with a v32bis modem) can happily run 10 applications, with a high speed caller on line (14.4 K baud). ....Just like now.

So when your thinking of upgrading your system, or fixing the comports, on your current system, make sure you get a 16550 installed, especially if you wish to use OS/2 to it's fullest.

The OS/2 MODE command
OS/2 is a very strongly defined OS, even comports must be setup via an OS/2 mode command. The following is the one I use on my BBS line (com2). MODE COM2:19200,N,8,1,XON=OFF,RTS=HS,OCTS=ON,IDSR=OFF,ODSR=OFF,TO=ON,BUFFER=ON

Looks confusing, right?

No? Your kidding yourself.

Ok then, here's a brief run-down on the above. 19200 - Locks Com port 2 at 19200 Baud (ideal for 14.4k transfers) N    - No Parity 8    - 8 data bits 1    - 1 stop bit XON  - Enable/Disable XON software flow control RTS  - Enable/Disable/Handshake Hardware RTS flow control OCTS - Enable/Disable CTS handshaking TO   - Enable/Disable Time out BUFFER- Enable/Disable the 16550 buffers.

Ok, I said it was brief, but that's basically it. If your using a MNP capable modem, then you should know how to configure your modem to allow it to use a locked DTE interface, so adjust the 19200 setting to suit your system, otherwise, just remove the 19200 part, but LEAVE the comma (eg MODE COM2:,N,....)

To save typing, add the above, to your config.sys file, with your favorite editor.

RUN=D:\OS2\MODE COM2:,,,,XON=OFF,RTS=HS,OCTS=ON,IDSR=OFF,ODSR=OFF,TO=ON

This way, every time you boot up with OS/2, the mode command is    automatic. Also the D:\OS2\ is my path to my OS/2 system directory, remember to change this to suit your system.

The Software Side
Did you make it through? If not the OS/2 command-line help, will explain in more details.

The accepted rule with OS/2 is as follows, OS/2 comms packages will operate correctly at any speed level, at which both your modem and hardware can handle, DOS stuff will only be able to be    'trusted' on systems at speeds 9600 or less.

The DOS limitation is brought on by OS/2's Dos handling. Since OS/2, will only allow 1000 interupts a second, via a dos program, some higher speed modems will not be able to provide the normal transfers when compared to vanilla DOS. Thus, basically if you want to use a high speed modem, use OS/2 software.

The OS/2 software is quite capable of performing any of your normal communications needs. With little restrictions (the mode command    be the main one) you can happily down/upload the latest files from your favorite BBS (mine or course ;-), except if your running on a    limited platform, watch the number of apps your running, because the swapping to the hard drive, etc, can cause the transfers to    slow right down, because the coms software isn't getting enough attention from the CPU.

TIP! Always put the comms program in a FULL SCREEN. Since the system will spend to much time looking after how the program looks, rather than how it talks to comport. Essential for High Speed modems.

Ok, so you've got the modem firing on all cylinders, what about a QWK reader to use.

QWK Offline readers FOR OS/2
Currently, there are 3 known QWK compatible readers for OS/2, I've seen only two of them (I've included a GIF file showing you what one looks like.) - Mail Reader/2-MR2 (Text Based) and KWQ (PM Based apps. CUA)

MR/2
This application is a very straight forward QWK reader, which has familiar keystrokes to SLMR. Installing requires your to edit a INI file, otherwise no dramas.

KWQ
This is the BEST QWK reader I've used for a long time. Very, very simple to install, and use. No real need to press any keys (unless of course you want to write a reply) just point and shot (click, for the beginners ;-) ). UPDATE - This program is in Beta testing, and some OS/2 users, or my system, are having problems, with 'Drive D: not found', on single partitioned machines, hopefully the author fixes this, soon.

IBM's C Developers Workset/2
Firstly, I've got to say that IBM is selling these at a special price of $395, till end of September. I've got to say WOW, I ordered it, and IBM expressed couriered it to me the following day! Now that's Service! Now to the review.

Early one morning I noticed the courier labouring away with this MASSIVE box, I was saying to myself, I didn't order anything, not expecting to see the developer's kit for weeks. I was astounded to find out that it was from Big Blue. Yippee!

As usual, IBM does everything to make the most tight fitting packaging in the history of packing, it did not even rattle. Opening the Box I discover 2 more! One the Cset/2 32-bit C compiler and PM Debugger. The other was called Developer's WorkBench.

I started to panic, 6 packets of disks! 15 disks in all! Ouch, I only had 20 meg spare, no hassles, as with OS/2, the compiler and tool kits are fully selectable, to allow you to choose what you want to install. The compiler and debugger take approximately 7 meg, and the tool kit (which is included with the workbench) takes another 7. Everything comes with sample code, and of course on line help/references.

With the tool kit comes a program call a Dialog Editor (Didn't know I could write scripts for OS/2 ;-) ), this will actually product the dialog boxes, you see, used in other applications, and you guess it, the data files are call script files. This utility makes life really easy, to make thousands of dialog boxes of all types/sizes/functions, now all I've got to do is learn how to tie them into my code ;-).

Since the Workplace Shell is an object oriented system, Cset/2 handles the WPS Functions as objects. You are also provided with a tool to make subclasses of the main class libraries of the WPS model.

The debugger has the power to trace through even the most hardest of OS/2 apps, even multi-threaded apps are no problem. You can debug anything from CMD.EXE (OS/2 command processor) to DESCRIBE (OS/2 commercial wordprocessor 32bit DTP). I've included a few snap shots of the tools and the debugger.

IBM's compiler is SAA (Systems Application Architecture) Level 2, which basically means that you can write code, for OS/2, which is easily ported between IBM's (and others) operating platforms (such as AS400 and mainframes). It is an command line compiler, so you can either use your favorite editor, or use the WorkBench. The Workbench is a programmers dream, but for me it, was a quick view, then delete, I simply was out of hard drive space (only 1.5 meg in size, but with a BBS eating up all the room for OS/2 share ware, I couldn't delete the files, without my users complaining). Thus I'am not able to show you a snap shot of the screen from workbench, but all I can say, it's brilliant.

Well this wraps up another issue, there was not much in the way tips, today, mainly a review on software. Never fear, as I get questions and such, I shall make more tips. In this issue I've introduced many different things, like the CMD file, and GIFs. And next, shall be things like sample code, that is once I've learnt enough, to show you all how to do it.

Till next time, Happy OS/2ing, Joseph Mckinnon.