GSETUP 3.0 - 2/88 (c) 1986,1987 Micro Consulting Associates 868 Ashford Avenue, Suite 6B Condado, Puerto Rico 00907 (809) 721-8470 GEnie: J.JIMENEZ MCI Mail: JJIMENEZ Author: Juan Jimenez GSETUP is a generic SETUP program for the IBM-PC/AT Personal Computer and all TRUE compatibles. The program is designed to allow you to set/modify CMOS ram values to tell the system what the time, date, type and number of floppy disk drives and hard disks, monitor type, etc., are for your personal computer. It is similar in concept and design to the SETUP utility that comes with the diagnostics diskette that you get when you buy an IBM-PC/AT, with the notable difference that GSETUP can be run from DOS without having to reset your machine first, and the user interface/menu system is much more "friendly" (I do hate cliches, but "friendly" is all I could come up with, sorry...) To install GSETUP, rename the file GSETUP30.EXE to GSETUP.EXE and place it into your DOS directory or into any directory that is included in your PATH statement in the AUTOEXEC.BAT file. Once you do this you are ready to roll. To execute the program, type: GSETUP [Enter] You will be presented with the main menu, which is a pop-up window with three menu choices. There are three basic functions to GSETUP: 1) CMOS ram parameter setting/modification. 2) Diagnostics (not operational in version 3.0, but if some of you finally decide to register I just might sit down and write the best darn diagnostics package for your PC that you will ever find... I've written diagnostics for everything from printers to modules in the B-1 Supersonic Bomber. Believe me when I say I can do it...). 3) Preparing your system for relocation. 4) Resetting (cold boot) of the computer upon exiting the program. Note that the hard disk type selection allows you to choose from all the available types in your machine's ROM BIOS parameter table. Make sure that you select the proper type entry. If you are not sure, call the dealer that sold you your computer, or, better yet, the people who made your hard disk (i.e. Seagate, Miniscribe, Maxtor, Priam, etc.) and read them the parameters displayed for each one of the hard disk types you can select. They will tell you which one(s) can be used with your particular brand/model hard disk. The code for the CBOOT and CPUID routines is included here (if you registered you copy of GSETUP with us and received a real disk), in both assembly language and .OBJ formats. The source for WINDOW4C, the windowing library, is not included as it is a proprietary shareware product of WindowSoft, Inc. and Glen Boyd. If you would like more information about it, send me a msg via GEnie or MCI Mail and I will be more than happy to get you a copy of the distribution package with docs but no source code except for a demo. If you want the full package, you'll have to contact WindowSoft. Note that all of these are set up for small memory model. If you want to use them in your code in other memory models you'll have to make the appropriate modifications yourself. Also note that the [F1] function key has now been enabled as the HELP key in most menus, with a couple of exceptions where I did not think it was necessary to display help. Release and modification history: Version 1.0, 6/12/86: Initial release Version 1.1, 6/13/86: Added re-boot on change in CMOS, cleaned up some of the code. Version 1.2, 6/17/86: Add check for CMOS ram power failure on startup and tell user if that is the case, then exit. Version 1.3, 6/21/86: Fixed bug in equipment byte settings. Program was telling CMOS that system had the wrong number of floppies. Version 1.4, 6/25/86: Refused to setup a machine with dead CMOS... Made several changes, including CMOS clearing on a dead CMOS condition, setup of status parameters and other nasty crawlies. Big RAID raid. (... and 1 year later...) Version 1.5, 6/26/87: Turbo C port, squashed spontaneous reboot bug, darn thing wanted to reboot for no reason, saying CMOS values had changed after prep for reloc. Now reboots any time you run the program, just like real SETUP. Version 2.0, 7/10/87: Windows! Added use of Glen Boyd's "WINDOW4C" routines, ported to Turbo C from Lattice 2.12 by yours truly (turns out Glen already wrote a TC version... oh, well...). Finally got around to fully commenting and cleaning up the source code, since we are now giving it away to contributors. Version 2.1, 8/31/87: Fixed minor bug with setting day 31 of month. Version 2.1a, 9/01/87: Added code to produce demo version, mainly #defines and some #ifdef's and #ifndef's. Nothing major. Version 2.2, 11/01/87: Modified hard disk type selection code to allow the user to choose a type from all the available types in his machine's ROM BIOS. Computer must now be a TRUE compatible for the program to work. Version 2.2a, 12/6/87: Added real-time updating of the time display in the CMOS parameters display screen. Version 2.2b, 12/16/87: Added fix for Compaq CMOS compatibility bug (Compaq's fault, not ours...) Version 2.2c, 12/20/87: Added support for 720k and 1.44m drives (3.5 inch drives in normal situations...). Added "None" write precomp cyl display if the cyl specified is either non-existent or not valid. This just means the hard disk that the type was originally meant for does not need a write precomp cyl parameter. Version 3.0. 2/88 : Added help facility, fancier menus and displays, and switched to month/year version dating.