May 1984 Editor: J.B.Schueler

The Group and the Welcome to WATCOM News University of Waterloo have created a joint venture to provide distribution and customer support of software products. WATCOM Products has been formed to provide these services both for the Computer Systems Group at the University of Waterloo and for WATCOM Systems Inc. The formation of WATCOM Products reflects a decision by both groups to expand and improve their customer service and support activities. WATCOM Products will assume the responsibility for the services currently handled by WATSOFT Products Inc. I am pleased that Sandra Ward, Angie Rohrbacher, Cindy Pfisterer and Dagmar McIntosh will be associated with WATCOM Products to assist us in our new endeavours and to provide continued and expanded support to our current customers. I hope this first newsletter will provide an introduction to our company and to some of the exciting new activities in Waterloo. The newsletter will replace the current newsletters of the Computer Systems Group (WATNEWS) and of WATCOM Systems (InfoWat). Our intent is to make the newsletter interesting in a general sense, as well as informative about our products. Yours truly, it/. James W. Welch, President of WATCOM Products (left) with K. Ian McPhee, President of The WATCOM Group (right) James W. Welch, WATCOM Products Inc.

WATCOM Products Inc. markets software developed by the University of Waterloo's Computer Systems Group (CSG) and by WATCOM Systems Inc., a member company in The WATCOM Group. For over two decades the Computer Systems Group has been producing software that has been widely accepted by universities and colleges throughout the world. In the last few years, WATCOM, whose roots are in the Computer Systems Group, has been producing software with similar success and acceptance. Long standing successful products developed by the Computer Systems Group includeWATFIV, WATBOL, ASMG, TRACE, WATERLOO SCRIPT, WIDJET, WATFOR-11, WATBOL-11, Waterloo BASIC, Waterloo Pascal and Waterloo Systems Language (WSL). Portable software products developed recently include thePortable Software Maintenance Policy WATCOM language interpreters for APL, BASIC, COBOL, Most of the software products Waterloo and WATCOM software andPascal. available from WATCOM Products provide written and telephone support Waterloo's communication toolsare portable and have been adapted free of charge for one full year from include JANET (an IBM PC local compatibly to a range of micro andthe date of purchase. Maintenance network), Waterloo PC Network(an mainframe computers. They include releases of the software will resolve IBM PC to IBM mainframe network IBM PC/DOS, IBM PC/PORT, IBM reported user problems and possible marketed by IBM), HOSTCM VM/SP CMS, Digital VAX/VMS, incompatibilities with new versions ot (mainframe file access for micro Digital Professional, the Commodore operating systems. Performance and software), and various terminal 64, Commodore SuperPet,and the minor functional enhancements may emulators for micros. CEMCORP ICON. also be included in a maintenance Waterloo and WATCOM products The systems programming release. A telephone "Hotline" has are software tools designed to optimizelanguage called WSL (Waterloo just been introduced and is staffed the productivity of student andSystems Language) and a collection ofwith personnel able to handle user professional programmers. Tools arelibraries (WSLLIB) provide developers problems and committed to efficient used to develop solutions to specificlike WATCOM with the technology response. Software purchasers will application needs. Recent Waterlooneeded to produce software which is receive our newsletter which provides and WATCOM products take the tool portable across different machine new product information and concept one step further allowing non­architectures and different operating frequently includes helpful tips and technical users to develop solutionssystems and yet executes efficiently intechniques related to our software. without programmer assistance. native machine language. Waterloo and WATCOM products Since the same software runs on Maintenance Follow-on different systems, the user benefits are strongly supported by clear, self- After the first year of use of a from compatibility beyond that help documentation. In many cases, Waterloo or WATCOM product, normally achieved by independently there are both a Tutorial and maintenance will continue as above for developed products following standard Reference Manual and a User's Guide a yearly renewable fee (in the case of specifications. The user also benefits specific to the machine and operating mainframe software this is a license common user interface across system being used. from a for both use and maintenance). The systems. These books are often written for fee is dependent on type of software Waterloo and WATCOM portable use by students and priced for book purchased (e.g., micro or mainframe). and compatible software provide the store sales volume. One of the key Written, "Hotline" and maintenance user with complimentary use of micros reasons for the success and longevity release support will continue as will and mainframes. Maximum of Waterloo and WATCOM products receipt of our newsletter. Further, if portability of user applications across has been the care taken in producing new versions of the software are systems is provided. Maximum comprehensive and legible offered with major functiona documentation. mobility of users between systems enhancements at a higher price, these without re-education is possible. will be offered to maintenance Waterloo and WATCOM customers at incremental cost. communications support allows micros to files and devices and to access mainframe resources. WATCOM Pascal for the • WATCOM Pascal contains a Documentation Commodore 64 function to generate random numbers; a feature not normally WATCOM Pascal for the Commodore part of the language 64 is documented in one book which WATCOM Pascalfor the Commodore implementation. explains both the language and the 64 is a full function Pascal* editor. This book is designed to be conforming to both ANSI and ISO- either a self-teaching tool or a • An interactive debugger provides draft standards and extended to textbook for a course and could be immediate execution of Pascal support Commodore 64 features such used at the introductory level in high statements, execution of a Pascal as sprites, sound synthesizer and school or university. program one statement at a time colour and bit-map graphics. The book includes a language and invocations of the debugger WATCOM Pascal is already available primer with step-by-step examples, an from any point in a running on a number of micros and advanced section on Pascal suitable program. mainframes including IBM VM/SP for a second level course, a complete CMS, IBM PC/DOS, DEC editor reference manual and finally VAX/VMS, the Commodore SuperPet Special Features the full syntax and semantics of the and the CEMCORP ICON. language. Additional copies of the text • The standard input/output devices can be purchased from WATCOM on the Commodore 64 can be • The one omission from the standard Publications (see below). addressed directly from a Pascal is that you cannot pass a procedure as program. These devices include a parameter. the printer, the disk and the Availability cassette. WATCOM Pascal for the Commodore 64 is packaged as three separate Features • There are three procedures to components: • WATCOM Pascal is unique as an manipulate bits in a byte,bitset, interactive interpreter. An bitreset and bitread which allow • A diskette containing the interpreter is an extremely efficient full access to sprites, the sound WATCOM Pascal interpreter and tool in both program development synthesizer chip and any other library. and teaching because it gives the particular I/O devices. user immediate feedback and • A cartridge containing the execution rather than waiting • WATCOM Pascal has also WATCOM Editor in 16K of ROM through the usual provided a bit-mapped graphics compile/link/execute steps. capability, a significant expansion • A book containing both textual and of the normal graphics modes reference material for WATCOM • WATCOM string extensions to available on the Commodore 64. Pascal and the WATCOM Editor Pascal provide the ability to handle variable-length strings and improve • sysfunc or sysproc commands can normal string manipulation have parameters which are passed facilities. to the called program. In the case of sysfunc the machine-language • Extra input/output features are routine may also return an integer included. Relative access files and value. extensions to thereset and rewrite procedures allow system file names • The user workspace of WATCOM to be used. Pascal on the Commodore 64 permits programs of 700-800 lines • Built-in procedures and functions (depending on the number of permit machine level interface comments used). includingpeek to examine memory, poke to store into memory,sysfunc • The full-screen editor integrated and sysproc to call machine with WATCOM Pascal is also language routines andaddress to loadable standalone from the obtain a variable's machine cartridge provided. address.

• The case statement is extended with the else clause to allow for cases which are not defined. Waterloo Structured The IF statement has the following Documentation general format: BASIC for the Waterloo Structured BASIC for the Commodore 64 IF condition Commodore 64 is documented in one ... BASIC statements book which is designed to be either a Waterloo Structured BASIC extends ELSEIF condition self-teaching tool or a textbook for a the normal BASIC system on ... BASIC statements course. The book is ^ tutorial and Commodore-64 machines to include ELSEIF condition reference manual which assists the statements. ... BASIC statements student in learning the modern These extensions are necessary in concepts of Structured Programming order to teach proper programming ELSE and top-down design. Additional copies methodology using the BASIC ... BASIC statements of the text can be purchased from language. The Commodore-64 version ENDIF WATCOM Publications (see below). is very similar to the implementation used since 1980 with the Commodore The ELSEIF and ELSE portions are Availability PET. optional. There are several academic Waterloo Structured BASIC for the benefits to be derived from the (b) Procedures Commodore 64 has two separate Waterloo Structured BASIC system. components: Most notably, programs written with It is important to be able to the system are more readable. This modularize a program in a meaningful • a cartridge containing Waterloo means: way. This is accomplished in Waterloo Structured BASIC in 4k of ROM Structured BASIC withprocedures. A • programs are easier to write, debug procedure is a group of BASIC • a book containing tutorial and and maintain statements which are given a reference material for Waterloo meaningful name: Structured BASIC • the BASIC language is easier to teach and to learn PROC name . . . BASIC statements • students learn important principles ENDPROC which can be applied to other To obtain further information programming languages. The procedure can be invoked fromconcerning Waterloo software, contact: anywhere in the program using a WATCOM Products Inc., Students learn proper programmingCALL statement: 415 Phillip Street, discipline and style. They write Waterloo, Ontario, Structured Programs, not the old-style CALL name Canada, N2L 3X2 "spaghetti code". (519) 886-3700 (c) Additional Commands Telex 06-955458 Features Several commands are added to (a) Structured Statements facilitate program development.

Waterloo Structured BASIC extendsAUTO automatically generates the normal BASIC with new line numbers as statements to control loops and program text is added selection with IF statements. Loops to a program. are written as DELETE used to remove a range LOOP of lines from a or WHILE condition program. ... BASIC statements ENDLOOP RENUMBER renumbers the lines in or UNTIL condition a program including all references. Computer Systems Group as well as managing WATSOFT Products Inc. from 1981-1983. In the early seventies, Sandra was chairman of CLING (Co-ordinated Library Interest Group - Ontario) and of USIG (User Services Interest Group - Ontario). Since the mid­ seventies, she has served SHARE (North American IBM educational users group) in several official capacities. These include being project manager of the FORTRAN Project and project manager of SHARE'S University Interest Group. Sandra has given many speeches at meetings of SHARE, GUIDE (North American IBM Commercial users group) and other user groups such as UNIVAC's. Among her many activities, Sandra has co-ordinated conferences on campus for such groups as OUCC Yes, Virginia there (Ontario Universities Computing Fred Crigger Conference), CIPS (Canadian is a Sandra Ward! Information Processing Society) andDirector of Research and Canadian VM User Groups. Sandra is j.H’or more years than she'd care to Development, WATCOM Systems a member of the Board of Directors of Inc. remember, Sandra Ward has been told the University Club at the University that she doesn't really exist. of Waterloo and of two private Purchasers of Waterloo and One of the three founding members of companies, Cyberware Computer The WATCOM Group in 1981, Fred WATCOM Software have often been Systems Ltd. and Dynasty Computing surprised to find out that 'Sandra has been in the mainstream of Inc. software development at the Computer Ward' isn't a fictitious name covering An avid traveller, Sandra has numerous persons and a hive of Systems Group, University of taken her computing interests abroad, Waterloo and at WATCOM Systems activity. Well, nowadays, thereare most recently attending the SEAS numerous persons but the hive of from the time he started as a co-op (European equivalent to SHARE)mathematics student in 1974. activity is still Sandra Ward. conference in Oxford last September. Sandra Ward is currently Director Fred's first contact with computing Yes Virginia, there is a Sandra Ward came when his enterprising Grade 13 of Sales and Distribution at and she's a very busy lady! WATCOM Products Inc., a software math teacher brought a FORTRAN marketing company jointly owned by text to school and suggested his the University of Waterloo and The students study computing for one month. Together, they worked from WATCOM Group. Sandra has pioneered several distribution systems that single text and from blackboard for University products and it is her examples in preparation for a one-day visit to the University of Waterloo. expertise that will go a long way to produce success for the new marketing Fred borrowed the text, and read it from cover to cover. It only took the company. An Ontario Scholar, Sandra first visit to Waterloo to confirm that he was hooked on computing - before he came to the University of Waterloo in 1965 on a mathematics scholarship. had even touched a terminal. The main focus for Fred during his In 1967, she put her academic career computing career has been on the on the part-time burner to accept the osition of Program Librarian for the performance of software. He has often been involved in the optimization vVATFIV project at the Department of various software products. "I seem of Computing Services. She's been at the University of Waterloo since then to have a unique talent for looking at a project I haven't been involved in working at the Department of Computing Services and with the and coming up with several recommendations on how to increase performance." Jim Welch, President of Testing Waterloo and The next phase of testing probes WATCOM Products Inc., comments, the limits of the software product and "When Fred was a student, the only WATCOM Software ensures its compatibility with the way I could manage him was to give machine and operating system for him too many things to do so he There are two essential purposes to which it is intended. Computin wouldn't find something moretesting, (a) verify that the software professionals and/or university— interesting. He has terrific focus and works as intended, and (b) make sure students use the software in large concentration. Fred is one of the fewthe human interface is acceptable and projects. people who thrive on diversity. Givethat the software and documentation User testing of the product follows him five projects and he'll be looking are easy to use. completion of the documentation and for the sixth!" Before a product is released for the first phase testing. These tests are Although Fred is a confirmed sale by WATCOM Products Inc., it often arranged at selected university workaholic, he finds time for golf, goes through this rigorous testing. or corporate test sites. Over an windsurfing, and following his Depending on the type of users theextensive period of time the software favourite basketball team, the product may have, the testers may be and documentation are put through University of Waterloo Warriors. students, teachers, programmers or the paces of their intended use. Based business professionals. Often, the on the testing, corrections are made in Software Projects testing pool is a combination of thesepreparation for the official release of categories. No one involved in thethe product. Waterloo BASIC for the IBM development of the product is eligible WATCOM Pascal for the Series/1; Waterloo Structured BASIC as a tester. Commodore 64 (announced in this for the Commodore Pet, SuperPet, Of course, software is tested issue) was tested by a group of 27 VIC 20 and 64; WSL (Waterloo continually during the developmenthigh school students and teachers from Systems Language) for the stage. Embryonic versions are oftenthe Waterloo region. The testing was IBM 370, DEC pdpll, and the 6809 placed into limited production atto probe not only the teaching and 8086 processors; floating point locations such as the University of facilities of the language on the 64 but library for the 6809 and 8086 Waterloo. When available, the to see what glitches, if any, junior processors; WATCOM BASIC for the developers will use a stream of test students might make as they IBM PC; graphics library for the IBM data to verify that the software experimented. The result was PC; large workspace support for behaves as expected. As a project enthusiasm from both the teachers and WATCOM APL on the IBM PC and progresses, a test stream is also students for this full implementation has consulted to IBM in Florida. gradually developed by theof Pascal on an inexpensive machine Current projects include: adapting programming team. This first phase like the Commodore 64. As readei WATCOM interpreters to the Port continues until the developers haveorder and use this product, we will”" operating system (Port is a product of confidence in the reliability of the look forward to feedback and Waterloo Microsystems Inc.), software product. The software is now comments that can be published in WATFILE data management system, ready to be tested by persons externalupcoming issues. and a "load-and-go" FORTRAN 77 to the development project. compiler for the IBM 370.

Further Information To obtain further information concerning Waterloo software, contact: WATCOM Products Inc., 415 Phillip Street, Waterloo, Ontario, Canada, N2L 3X2 (519) 886-3700 Telex 06-955458 Inquiries about text books may be directed to WATCOM Publications Inc. at the same address. Any questions concerning seminars may be answered by WATCOM Seminars at the same address. Unless otherwise specified, permission to reprint or adapt articles from this publication for non-commercial purposes is granted, provided the author(s), title of article and date are acknowledged. For other purposes, requests should be directed in writing to the Editor of WATCOM News at the above address. A high school student using WA TCOM Pascal on the Commodore 64 Printed in Canada