COMAL80 is a combination of the at the time dominant programming languages for educational purposes, BASIC and Pascal. The intention was to introduce a structured approach to programming where BASIC normally was used.
The programming language described was designed to remedy the weaknesses of BASIC by adding structured constructs and other desirable improvements, while retaining the major features and overall spirit of BASIC. COMAL80 is proposed as an introductory programming language for schools.
COMAL80 is like BASIC an interpreted language. And interpreters was available for a wide range of platforms. A key feauture of COMAL80 was the ability to expand the language features width modules or library's. Because of the structured nature, COMAL80 was often compared to BBC Basic. Besides Denmark, Comal80 was frequently used in schools in Scotland.
COMAL80 for the Amstrad CPC
The Amstrad CPC had two version available.
A generic CP/M version and a native version
C80MODE COM 6 400 27/12/12 23:08 C80MODE.COM COMAL80 COM 28 672 27/12/12 23:07 COMAL80.COM COMALCNV COM 9 984 27/12/12 23:09 COMALCNV.COM ERRMSG 2 432 27/12/12 23:07 ERRMSG FORMAT COM 1 536 27/12/12 23:09 FORMAT.COM PIP COM 7 424 27/12/12 23:12 PIP.COM SYSTEXT C80 1 280 27/12/12 23:06 SYSTEXT.C80 SYSTEXT ASM 2 264 29/12/12 17:31 systext.asm
CPC specific version
The native version was programmed by Freddy Dalgas Kristiansen and distributed through his company Dalgasoft. It was available on tape, disc and finally also a ROM version was available. This version of COMAL80 was compliant to the Commodore 64 Comal80 ver 2.01 and the UniComal variant for the IBM PC.
The first of the tape and disc versions was lacking functions to control the special features of the Amstrad CPC. Functions like sound, graphics and software interrupts. To use the specific functions small modules was released so the programmer could include them in their own COMAL80 programs.
Finally a greatly enhanced version was released. This version occupied three 16Kb eproms. Extensive graphic/sound/timer commands was added together width extended FILE I/O (Random Access File) and the ability to use both DK'tronics and Vortex memory expansion as ram discs or graphic swap space (to use width the advanced windows features). The ROM version was shipped with its own ROM board, micro switches controlled whether to boot directly into COMAL80 or to make the ROM board invisible to allow native CPC programs to run. It is unknown if COMAL80 would have worked on a standard ROM board.
The Danish magazine Amstradbladet, ran a series of articles called "The COMAL school" to teach its readers COMAL80.
- Comal80.zip (Original danish version - zipped dsk image)