|Apple Pascal Operating System|
|License (s)||Apple Software License Agreement|
|Current version||1.3 (1984)|
|ancestry||based on UCSD-Pascal Version II.1 (1979)|
|Architecture (s)||P code|
|Others||for Apple II series|
Apple Pascal was an implementation of UCSD Pascal , the P-Code of the University of California, San Diego (UCSD) for the Apple II . Pascal was very popular in the 1970s and early 1980s; therefore a variant for the Apple II was derived from UCSD Pascal II.1. Two UCSD students, Mark Allen and Richard Gleaves, developed an interpreter for the 6502 microprocessor used in the Apple II in the summer of 1978 , which later became the basis for Apple Pascal , which was released in 1979 and remained an Apple product for five years.
UCSD Pascal was developed by Roger T. Sumner at the UCSD Institute for Information Systems, where five versions have been published:
- Version I.3 August 1977
- Version I.4 January 1978
- Version I.5 September 1978 (source code released)
- Version II.0 February 1979
- Version II.1 1979
Four versions of Apple Pascal have been published:
- Version 1.0 1979 (based on UCSD-Pascal II.1)
- Version 1.1 1980
- Version 1.2 1983
- Version 1.3 1984
From version 1.2 only 128K systems were supported.
The direct economic importance of the Apple Pascal operating system is rather low:
- There were few professional applications. Popularity has most the ADImens - database obtained, also known as ADI proFIT. Adimens was later ported to Atari ST . The database was developed by the Karlsruhe company ADI Software GmbH (today ADI Innovation AG).
- Pascal was indirectly the basis for the programming of the Lisa and later the Mac OS up to version Mac OS 9.2.2 (Classic) . Programming in Pascal with strict type testing was a major reason for the high stability of the early Mac OS. Mac OS X later built on FreeBSD and, like all Unix-like operating systems, was written in C and assembler .
The standard developed by Niklaus Wirth was expanded to include some language elements in UCSD Pascal, e.g. B. unit commands (unitread, unitwrite, unitstatus) to be able to communicate directly with the connected hardware. In order to be able to manage with a tight main memory space, it was possible to segment the program. Apple Pascal differs only insignificantly from UCSD Pascal in terms of language scope.