CHCP 437
PROGRAM.EXE %1 %2 %3 %4 %5 %6 %7 %8
CHCP 850
PROGRAM.EXE is the name of the program with the problem. If you rename the program to something different, for example:
REN PROGRAM.EXE PROGRAM!.EXE
Name your batch file PROGRAM.BAT you will be able to run the program in the same way but with no funny corners, accented characters or misplaced graphics. Note that NLSFUNC must be invoked before code pages can be switched in this way.
Gordon E. Leek,
Lancashire
A code page is basically a translation table used to work out the representation of any given character on a particular device. MS-DOS supports a number of different code pages but some software fails to take this into account.
You are likely to use code pages with graphic devices such as laser printers with downloadable fonts or CGA/EGA/VGA screens when operating in graphics mode.
The '.CPI' files supplied with MS-DOS contain 'Code Page Information' for different devices.
NLSFUNC is used to extend MS-DOS to support code page selection (via CHCP). It needs to read information from COUNTRY.SYS, the full path to which can be specified as a parameter if needed.
Since the Deskjet Family drier has not been updated to cover the Deskjet 500 it cannot be used to access the printer's internal CG Times font, so the scaleable driver appears to be the only way of obtaining a proportionally spaced typeface. However, if the Laserjet III driver supplied with Windows is used instead the font called 'CG Times [E1]' in the Word selection box will print quite happily (and very rapidly) at twelve and six points, using the internal character set.
Unfortunately no graphics will print using this driver, so it isn't much good for applications other than Word. Within Word paragraph borders and similar will be omitted. For simple text-only documents (like letters to Computer Magazines) the improvement in print speed is very welcome.
Paul W. Gould, Liverpool.
Using a Toshiba Laptop at work and at home I found that I was having to connect cables to the serial and printer port at least twice a day. Of course, on the desktop the 9 and 25 way D connectors work fine because they are always screwed firmly in place.
However, I got a little concerned about this continual screwing and unscrewing - I'm sure the D type connector was never designed to be used this way and foresaw problems such as the integrity of the connection going as the thing worked loose, and perhaps even the locking nuts on the rear of the connector coming free and sloshing about inside. Not a happy state of affairs.
The solution I found was to screw two slimline gender changes into the serial and parallel port using stacking nuts (they type thread a thread on one end and a hexagonal tapped head). I then had to change my serial and parallel cables - in fact on my prin
ter cable I used another gender changer! All this seems a little fiddly but has he clear advantage that all the wear and tear is upon the gender changers. The regular plugging and unplugging of cables is no longer wearing away the contacts on the original ports.
Why doesn't somebody make a slimline, expendable connector with the correct gender on each end for just this purpose?
Gordon Leek, Lancashire
If you are handy with a soldering iron it is quite easy to make a suitable 'sacrificial socket' using a solder bucket type connector and a strieght PCB connector back to back. The pins on the PCB version fit nicely into the buckets making soldering easy and neat.
Good quality connectors can have a working life of many thousands of insertions. It depends on the pressure of the contacts and the depth of the gold plating - and as everyone knows, gold isn't cheap. It is quite possible that manufactures of laptops are not specifying the best quality of connector in an effort to cut costs!
There is another thing: I would like to get into some programming but I have only done a little BASIC before. What compiler would you recommend? A friend of mine recommended Turbo Pascal, which he claimed was among the easier to learn. Bit if so, is it a "serious" programming language? And is it easy to move to more advanced programming languages when you know Pascal?
Best regards from a bit confused student.
Lars Erik Gullerud,
Oslo.
You need four things to be present when adding a second hard disk to an IBM-clone; a spare interface on the controller, cooperation from the BIOS, power, and finally the physical space to install the drive.
From your description it sounds likely that you will be able to mount a second drive unit in the unused drive bay. Some drives have a face plate which protrudes beyond the front panel of the enclosure (spoiling the aesthetics) but most will sit quite happily in the space behind the blanking plate. You may need some special mounting hardware to match the drive to the metalwork of the case but most 'clone' brands have a rack with screw holes to match those found as standard on the drive. If all else fails, wedge it in with some cardboard.
Supplying the power to the new drive is usually quite straightforward too. You will probably find a bundle of cable coming out of the power supply which connects with the existing drives via white plastic plugs crimped on at intervals along its length. These wires normally carry +12V and +5V, which is just what most drives requires. They are coloured red, yellow and two black. Simply find a spare plug to match the socket found on the drive.
Getting onto the BIOS is where the fun can start. A BIOS is a piece of software, normally in ROM, which allows the operating system to talk to the outside world. It actually stands for Basic Input/Output Subroutines and by using it the operating system does not need to know anything about the types of disk which are connected. It simply asks the BIOS to read or write to a numbered block device. Why does all this matter? Unfortunately, if your BIOS does not know how to deal with your second drive then nothing will be able to use it. This was more of a problem with XT class machines, where the hard disk BIOS was in a separate ROM on the interface card. AT class machines, and later, have the hard disk BIOS built into the motherboard ROM. This can normally be configured to support two drives, and modern version do not require that both should be of the same design. However, there are exceptions to this - in particular, some hard disk systems have a separate BIOS on the controller which over-rides the one on the motherboard. 'Hardcards', which were designed for XT machines, nearly all do this. If you see a message from a hard disk BIOS when the machine boots, you may well have problems.
If your existing system is standard you will be able to tell the BIOS about your new drive by entering the BIOS setup. The method for doing this varies from machine to machine. It would be worth trying this before you go any further - tell it you have the new drive and see what it thinks about it. It should just say that the drive is faulty when you boot.
The final hurdle is the interface itself. You did not say what type you had, but generally all controller support two drives. However, both drives must have the same interface. While it is possible to have two different controllers in a machine it is not always very easy. The controller will probably have a 20 way socket labelled 'Drive 1' (zero being the first one) and all you need is a cable to go between this and the drive. There will also be a second connector on a 34 way cable going to the existing drive - this must be connected to the new drive too.
Any good dealer should be able to supply you with cables and detailed instructions.
As for programming languages; whatever I say is bound to upset someone as programmers tend to stick loyally with their favourites. However, I will point out that 'C' is the best language to learn from a commercial point of view. Standard Pascal is a limited teaching language, though Turbo Pascal, and other implementations, are greatly enhanced and fit for anything. Unfortunately, Turbo Pascal only runs on PCs.
For beginners I can recommend Turbo 'C' (also from Borland) or Quick 'C' from Microsoft as being particularly friendly. Quick 'C' for Windows is definitely worth a good look, and all three products are keenly priced.
Frank Leonhardt
Computer Answers can be contacted on:
leo2@cix.compulink.co.uk
uab1018@dircon.uucp
Telephone 081-429 3047.
Computer Answers Archive Next edition Previous edition