dBase II was a database program from Ashton-Tate released in the 1980s.
It ran on CP/M computers and provided an easy way of creating complete database systems. This was because it included a way of displaying input forms, validating the entered data and of retrieving and reporting entered information. You could write programs in its database language.
I thought it pretty amazing at the time, especially as it ran on 8bit microcomputers with, often, less than 64K of memory. (That’s not the Gigabytes that we see today, nor even Megabytes, it’s a tiny fraction of a thousandth of what you have in your desktop computer or even your phone). Entire inventory control systems and accounting systems were developed with it and they were the mainstay of many businesses.
To run an old dBase II program on a modern Windows computer is pretty straight forward with the right tools. Here’s how it’s done…
1. Download a CP/M simulator such as Run CP/M.
2. Get a dBase II disk (cpm/disks/dbase2.dsk)
3. UnZIP the simulator somewhere.
4. Copy the dBase II disk into the simulator directory and rename it as drivec.dsk
5. Double-click “run.bat” in the directory.
You should see something like:
6. Select drive C, check that the disk does have dBase.com on it, and run dBase:
A>c: C>dir C: DBASEX COM : DBASEOVR COM : DBASEMSG TXT : DBASE CMD C: INSTALL COM : DATETEST HEX : DBASE COM : DISKLIST DBF C: C>dbase ENTER TODAYS DATE OR RETURN FOR NONE (MM/DD/YY) : Copyright (C) 1982 RSP Inc. *** dBASE II Ver 2.4 1 April, 1983 Type 'HELP', 'HELP dBASE', or a command .
You can then “USE” an existing database (like disklist.dbf in the directory listing above) or “CREATE” (database name). As the sign-on suggests, you can also type “HELP” for an intro.
“QUIT” will get you out again.
Version 0.04 of the (Windows build of the) z80 simulator includes some vt100 screen emulation. This should be enough to get you going with full screen editing.
The 25th Line
Note that most real-world terminals of the time had 24 rows and simulators often have 25 (or more). The “extra line(s) for free” is usually a plus; but it can be confusing to still see the old 25th line when you’re in full screen mode. Just ignore it or use the scroll bar on the right to scroll it out of view. You can also right-click the simulator title bar, choose “Properties”, “Layout” and set the Window Size Height to 24.
Installing dBase II
If your copy of dBase hasn’t been installed, here’s what the install process looks like (this example is running it in a browser with z80emu and the dBase II disk in drive D):
>>> b load bootloader from drive 0......DONE >>> g 64K CP/M Version 2.2 A>dir d: D: DBASEX COM : DBASEOVR COM : DBASEMSG TXT : DBASE CMD D: INSTALL COM : DATETEST HEX : A>d: D>ren dbase.com=dbasex.com D>install dBASE II INSTALLATION PROGRAM VER 3.0 ARE FULL SCREEN OPERATIONS WANTED (Y/N)? y dBASE II INSTALLATION PROGRAM VER 3.0 MENU #1 A -ADDS VIEWPOINT M -HP 2621 B -ADM-31 N -INTERCOLOR C -ADM-3A O -KAYPRO II D -APPLE /// P -NEC PC-8000/1 E -APPLE II 40 COL Q -NS ADVANTAGE F -CROMEMCO 3102 R -OSBORNE I G -DIALOG 81 S -PERKIN ELMER 11 H -EAGLE AVL T -SANYO MBC 3000 I -GNAT-SYSTEM 10 U -SOROC J -HAZELTINE 1500 V -SPERRY UTS 40 K -HEATH 89 W -SUPERBRAIN L -HP 125 X - MENU #2 Y - MODIFY PREVIOUS INSTALLATION Z - USER SUPPLIED TERMINAL COMMANDS SELECT TERMINAL TYPE: x dBASE II INSTALLATION PROGRAM VER 3.0 MENU #2 A -TELEVIDEO B -TOSHIBA T100 C -TOSHIBA T250 D -TRS-80 (FMG) E -TRS-80 II (P&T) F -TRS-80 III G -VECTOR GRAPHICS H -VISUAL-100 I -VPD-80 J -VT-100 K -XEROX 820 X - MENU #1 Y - MODIFY PREVIOUS INSTALLATION Z - USER SUPPLIED TERMINAL COMMANDS SELECT TERMINAL TYPE: j CHANGE MACRO, DATE, ETC. (Y/N)? y ENTER A CHARACTER TO BE USED FOR INDICATING MACROS OR A RETURN FOR DEFAULT CHARACTER OF AMPERSAND (&) : TYPE A RETURN IF THE ERROR CORRECTION DIALOGUE IS TO BE USED OR ANY OTHER KEY IF NO DIALOGUE IS WANTED : ENTER OPERATING SYSTEM A - CP/M 2.2 B - MP/M II SYSTEM a DATE FORMAT IS MM/DD/YY, CHANGE TO DD/MM/YY (Y/N)y TYPE "Y" TO SAVE, ANY OTHER KEY TO ABORT INSTALL y SAVING INSTALLATION PARAMETERS D>dir D: DBASE COM : DBASEOVR COM : DBASEMSG TXT : DBASE CMD D: INSTALL COM : DATETEST HEX D>dbase ENTER TODAYS DATE OR RETURN FOR NONE (DD/MM/YY) :2/11/17 Copyright (C) 1982 RSP Inc. *** dBASE II Ver 2.4 1 April, 1983 Type 'HELP', 'HELP dBASE', or a command . create addo ENTER RECORD STRUCTURE AS FOLLOWS: FIELD NAME,TYPE,WIDTH,DECIMAL PLACES 001 name,c,20 002 surname,c,20 003 street,c,20 004 city,c,15 005 state,c,3 006 phone,c,15 007 INPUT DATA NOW? N . use addo . disp struc STRUCTURE FOR FILE: D:ADDO .DBF NUMBER OF RECORDS: 00000 DATE OF LAST UPDATE: 02/11/17 PRIMARY USE DATABASE FLD NAME TYPE WIDTH DEC 001 NAME C 020 002 SURNAME C 020 003 STREET C 020 004 CITY C 015 005 STATE C 003 006 PHONE C 015 ** TOTAL ** 00094 . . store "text" to a text . store 5 to bb 5 . store 6.78 to ccc 6.78 . save memo to mem *** SYNTAX ERROR *** ? save memo to mem CORRECT AND RETRY (Y/N)? Y CHANGE FROM :memo CHANGE TO : save to mem MORE CORRECTIONS (Y/N)? N . quit *** END RUN dBASE II *** D>dir D: DBASE COM : DBASEOVR COM : DBASEMSG TXT : DBASE CMD D: INSTALL COM : DATETEST HEX : ADDO DBF : MEM MEM D>
This is part of the CP/M topic.