CEEMAC

Last updated
CEEMAC
Paradigm Visual composition language
Designed by Brooke Boering
Developer Vagabondo Enterprises
Platform Apple II

CEEMAC is a programming language developed in the 1980s for the Apple II family of computers. It was authored by Brooke Boering and published by Vagabondo Enterprises, [1]

Programming language language designed to communicate instructions to a machine

A programming language is a formal language, which comprises a set of instructions that produce various kinds of output. Programming languages are used in computer programming to implement algorithms.

Apple II first Apple II series computer

The Apple II is an 8-bit home computer, one of the first highly successful mass-produced microcomputer products, designed primarily by Steve Wozniak. It was introduced in 1977 at the West Coast Computer Faire by Jobs and was the first consumer product sold by Apple Computer, Inc. It is the first model in a series of computers which were produced until Apple IIe production ceased in November 1993. The Apple II marks Apple's first launch of a personal computer aimed at a consumer market – branded towards American households rather than businessmen or computer hobbyists.

CEEMAC was designed to be a visual composition language in which the programmer designed dynamic "scores" by programatically controlling color, shape, sound and movement. Additionally, a programmer could then "perform" their score through use of the Apple II keyboard or paddle input devices to introduce additional variation. [2]

CEEMAC syntax loosely resembled a combination of BASIC and Pascal and include control commands such as GOTO, GOSUB, DO, AGAIN, FOR, SKIP, EXIT and loop control structures such as IF/WHILE and TIL/UNLESS. Additionally, 30 predefined macros were included in CEEMAC to aid in score composition. [2]

BASIC programming language

BASIC is a family of general-purpose, high-level programming languages whose design philosophy emphasizes ease of use. In 1964, John G. Kemeny and Thomas E. Kurtz designed the original BASIC language at Dartmouth College. They wanted to enable students in fields other than science and mathematics to use computers. At the time, nearly all use of computers required writing custom software, which was something only scientists and mathematicians tended to learn.

Pascal is an imperative and procedural programming language, which Niklaus Wirth designed in 1968–69 and published in 1970, as a small, efficient language intended to encourage good programming practices using structured programming and data structuring. It is named in honor of the French mathematician, philosopher and physicist Blaise Pascal.

While loop

In most computer programming languages, a while loop is a control flow statement that allows code to be executed repeatedly based on a given Boolean condition. The while loop can be thought of as a repeating if statement.

The following is a small CEEMAC sample score: [3]

      SCORE: KT          :FIRE ORGAN  KEY T          SPEED [0,0]          : - BUT 0          0          CLEAR [0,0]          XY1 = $80;$80         : MAIN LOOP          F         :FORGND SYMMETRY 0-3          VC = RND3 ORA 3          : SAVE FORGND ROTATION          VD = ROTEZ          :FORGND COLOR          COLOR = NXTCOL

CEEMAC was originally marketed through distribution of a free demonstration program entitled Fire Organ. This program contained several scores create by Boering and other programmers to demonstrate some of the capabilities of the language. [1]

Sources

  1. 1 2 A structured graphics language: Ceemac, CREATIVE COMPUTING VOL. 9, NO. 1 / JANUARY 1983
  2. 1 2 Ceemac, A Visual Composition System for the Apple, InfoWorld, July 19, 1982
  3. The Apple II Programmer's Catalog of Languages and Toolkits, 1993

Related Research Articles

Applesoft BASIC is a dialect of Microsoft BASIC, developed by Marc McDonald and Ric Weiland, supplied with the Apple II series of computers. It supersedes Integer BASIC and is the BASIC in ROM in all Apple II series computers after the original Apple II model. It is also referred to as FP BASIC because of the Apple DOS command used to invoke it, instead of INT for Integer BASIC.

In computer science, control flow is the order in which individual statements, instructions or function calls of an imperative program are executed or evaluated. The emphasis on explicit control flow distinguishes an imperative programming language from a declarative programming language.

Atari 8-bit family series of 8-bit home computers

The Atari 8-bit family is a series of 8-bit home computers introduced by Atari, Inc. in 1979 and manufactured until 1992. All of the machines in the family are technically similar and differ primarily in packaging. They are based on the MOS Technology 6502 CPU running at 1.79 MHz, and were the first home computers designed with custom co-processor chips. This architecture enabled graphics and sound capabilities that were more advanced than contemporary machines at the time of release, and gaming on the platform was a major draw. Star Raiders is considered the platform's killer app.

Commodore 128 home computer

The Commodore 128, also known as the C128, C-128, C= 128, or occasionally CBM 128, is the last 8-bit home computer that was commercially released by Commodore Business Machines (CBM). Introduced in January 1985 at the CES in Las Vegas, it appeared three years after its predecessor, the bestselling Commodore 64.

Exidy Sorcerer

The Sorcerer is one of the early home computer systems, released in 1978 by the videogame company Exidy. It was comparatively advanced when released, especially when compared to the contemporary more commercially successful Commodore PET and TRS-80, but due to a number of problems, including a lack of marketing, the machine remained relatively unknown, and Exidy eventually pulled it from the market in 1980.

Microsoft BASIC is the foundation product of the Microsoft company. It first appeared in 1975 as Altair BASIC, which was the first BASIC by Microsoft and the first high level programming language available for the Altair 8800 microcomputer.

<i>Marble Madness</i> arcade video game

Marble Madness is an arcade video game designed by Mark Cerny and published by Atari Games in 1984. The player uses a trackball to guide an onscreen marble through six obstacle-filled courses within a time limit. Marble Madness was Atari's first game to use the Atari System 1 hardware and to be programmed in the C programming language. It was also one of the first games to use true stereo sound; previous games used either monaural sound or simulated stereo.

Apple IIGS Apple II series 16-bit computer

The Apple IIGS, the fifth and most powerful of the Apple II family, is a 16-bit personal computer produced by Apple Computer, Inc. While featuring the Macintosh look and feel, and resolution and color similar to the Commodore Amiga and Atari ST, it remains compatible with earlier Apple II models. The "GS" in the name stands for "Graphics and Sound," referring to its enhanced multimedia hardware, especially its state of the art audio.

Visual programming language

In computing, a visual programming language (VPL) is any programming language that lets users create programs by manipulating program elements graphically rather than by specifying them textually. A VPL allows programming with visual expressions, spatial arrangements of text and graphic symbols, used either as elements of syntax or secondary notation. For example, many VPLs are based on the idea of "boxes and arrows", where boxes or other screen objects are treated as entities, connected by arrows, lines or arcs which represent relations.

<i>Lunar Lander</i> (video game genre) several video games, the player must portion a limited amount of fuel to land on the moon without crashing

Lunar Lander is the name of a genre of video games in which the player controls a spaceship as it falls towards the surface of the Moon or other astronomical bodies, and must maneuver the ship's thrusters so as to land safely before exhausting the available fuel. In many games in the genre, the player must adjust the ship's orientation, as well as its horizontal and vertical velocities. The first Lunar Lander game was a text-based game named Lunar, or alternately the Lunar Landing Game, written in the FOCAL programming language for the Digital Equipment Corporation (DEC) PDP-8 minicomputer by Jim Storer while a high school student in the fall of 1969. Two other versions were written soon after by other programmers in BASIC. Lunar was converted to BASIC by David H. Ahl, who included all three versions in his 1973 101 BASIC Computer Games; by the end of the decade, the type of game was collectively known as a "lunar lander" game.

The Adventure Game Interpreter (AGI) is a game engine developed by Sierra On-Line. The company originally developed the engine for King's Quest (1984), an adventure game which Sierra and IBM wished to market in order to attract consumers to IBM's lower-cost home computer, the IBM PCjr.

The 8563 Video Display Controller (VDC) was an integrated circuit produced by MOS Technology. It was used in the Commodore 128 computer to generate an 80-column RGB video display, running alongside a VIC-II which supported Commodore 64-compatible graphics. The DCR models of the C128 used the later and more technically advanced 8568 [D]VDC controller.

General-purpose computing on graphics processing units is the use of a graphics processing unit (GPU), which typically handles computation only for computer graphics, to perform computation in applications traditionally handled by the central processing unit (CPU). The use of multiple video cards in one computer, or large numbers of graphics chips, further parallelizes the already parallel nature of graphics processing. In addition, even a single GPU-CPU framework provides advantages that multiple CPUs on their own do not offer due to the specialization in each chip.

<i>Sea Dragon</i> (video game) 1982 video game

Sea Dragon is a horizontally scrolling shooter for the TRS-80 computer, written by Wayne Westmoreland and Terry Gilman, and released in 1982 by Adventure International. The gameplay is similar to the Scramble arcade game. It was ported to the Apple II, Atari 8-bit family, Commodore 64, TRS-80 Color Computer, and IBM PC.

Programma International was one of the first personal computer software publishers. Established in the late 1970s by David Gordon, it published a line of approximately 300 game, programming utility, and office productivity products for the Apple II, Commodore PET, TRS-80 and other personal computer systems. Hayden Publishing bought Programma International in 1980 and the company went out of business in 1983.

CUDA parallel computing platform and programming model

CUDA is a parallel computing platform and application programming interface (API) model created by Nvidia. It allows software developers and software engineers to use a CUDA-enabled graphics processing unit (GPU) for general purpose processing — an approach termed GPGPU. The CUDA platform is a software layer that gives direct access to the GPU's virtual instruction set and parallel computational elements, for the execution of compute kernels.

The Apple II graphics were composed of idiosyncratic modes and settings that could be exploited. This graphics system debuted on the original Apple II, continued with the Apple II Plus and was carried forward and expanded with the Apple IIe, Enhanced IIe, IIc, IIc Plus and IIGS.

CLACL, representing CLAC-Language is the result of ongoing theoretical research which aims to provide a formal description of the logical choices relating to the definition of organizational processes of composition.