my-server
← Wiki

Deep Blue C

Deep Blue C is a C programming language compiler for Atari 8-bit computers distributed by the Atari Program Exchange (APX).

Description

Deep Blue C is based on Ron Cain's public domain Small-C compiler, a subset of the C programming language, modified by John Howard Palevich to run on Atari 8-bit hardware. Palevich also wrote Dandy for APX. The syntax supported by Deep Blue C is close to that of ANSI C with significant limitations. The compiler creates Intel 8080 binary code which is executed by an 8080 virtual machine as p-code.

The user must supply a source code editor, but included libraries provide and other I/O routines and video graphics, including player/missile graphics. The source code to the compiler was sold separately by APX as Deep Blue Secrets.

Limitations

As a proper subset of V7 Unix C, Deep Blue C code that does not use Atari 8-bit features can be compiled on other systems with the full language. The following language constructs are not supported:

Other non-standard properties of Deep Blue C:

  • The last part of <code>switch</code> clause must end with: <code>break</code>, <code>continue</code>, or <code>return</code>.
  • The maximum length of a source code line has to be less than 80 characters.
  • The number of arguments for functions cannot exceed 126.
  • <code>$(</code> and <code>$)</code> are used instead of <code>{</code> and <code>}</code>, because the Atari keyboard and standard character set does not include braces.

The p-code that the compiler produces is slower than native binary. It is smaller than binary, however, and faster than Atari BASIC.

Reception

Antic thought that Deep Blue C's use of p-code was acceptable given Atari's hardware limitations. The magazine praised Palevich for publishing the source code, and recommended purchasing it with the compiler for study and customization alongside The C Programming Language.

Sample program

This program prints "Hello World!":

main() $( printf("Hello World!"); $)

References