leigh@cache.DEC (Allen Leigh @SHR1-3/E29 DTN 237-3255) (03/27/85)
A few weeks ago, I announced the availability of RDBMS/AT, a relational database system in Atari BASIC. At that time it was only available on DOS 3 disks. With the help of my 1010 cassette recorder, I've ported RDBMS/AT to DOS 2 disks, and I'm again announcing the availability of the software. After sending out a number of DOS 3 disks, I discovered that two modules were partly missing (BLDRDBMS.V1 and RDBMS2.V1); I had the Atariwriter driver for the Gemini 10X loaded at the time I made my master DOS 3 disk, and there was not enough room in memory for all of the code in those two modules. I apologize for this mistake, and in making my DOS 2 masters, I have doubled checked that each module is intact. Two DOS 2 disks are required, one for code and one for documentation. The following information is a repeat of the description given out earlier. ************************************************************************ The database manager is called RDBMS/AT and provides the following functions: 1. A standalone builder program written in Atari BASIC to build the database. You can have as many fields in each record as you want, and the length of each field can be as long as you want. The fields can be either REAL or CHARACTER values. You can have as many records in each relation as you want, and you can also have as many separate relations as you want, limited only by the memory available. 2. Six subroutines that can be included in the source of application programs. These routines provide a "user view" of the database. (a) Obtain ADEF Table. The ADEF (A DEFinition) table is used by the standalone program to build the database. Your application program uses this subroutine to learn the characteristics of the database. (b) Get a New Record with Default Values. Your application program uses this subroutine to obtain a new record from the database manager. The fields in the record contain default values as specified by the ADEF table. Your program places new values in the fields. (c) Insert a Record into the Database. Your application program uses this subroutine to request that the manager place the record in the specified relation. (d) Select a Record from the Database. Your application program uses this subroutine to obtain a record from the specified relation. (e) Update a Record in the Database. Your application program uses this subroutine to change values in a record in the specified relation. The manager obtains the record from the database, updates the values, and returns the record to the database. (f) Delete a Record from the Database. Your application program uses this subroutine to remove a record from the specified relation. 3. Various routines to support the linked lists that comprise the database and perform the disk I/O. These routines provide a "physical view" of the database. The DOS 2 program diskette contains the following files: 1. BLDRDBMS.V1 The builder program 2. RDBMS1.V1 A template for an application program that contains the proper interface for RDBMS/AT. 3. RDBMS2.V1 The subroutines comprising the "user view". 4. RDBMS3.V1 The subroutines comprising the "physical view". The source code contains many comments to help you understand the code. The comments do not have BASIC line numbers and are thus thrown away when the code is loaded into memory. The DOS 2 documentation diskette contains the following files: RDBMS0.DOC thru RDBMS5.DOC The users manual, formatted by Atariwriter for the Gemini 10X printer. The manual contains 25 double spaced pages. This version of RDBMS/AT should be thought of as a prototype version to gain functionality. I've made no attempt to optimize the program in any way. As a result, the program takes up 15,683 bytes in memory leaving only 10,185 bytes (48K 800) for your application program. However, I feel it is a very useful tool and can be the basis of some powerful application programs. People who obtain RDBMS/AT are welcome and encouraged to modify and expand the code and to convert it to other languages. There are only two restrictions that I impose. First, that your version contain an edit history containing the author's name and version number of EACH proceeding version back to my original version which is V1.0. This edit history must be in both the users manual and each source file. I feel that all persons involved with public domain programs should be given credit for their work. Second, that NO versions of RDBMS/AT be used in ANY way for commercial purposes. Public domain programs should remain free for all to use and enjoy. If you would like a copy of RDBMS/AT, send me two DOS 2 formatted diskettes and a SASE. Allen Leigh 93 Shirley St. RFD 2 Pepperell, MA 01463 (617) 433-2108