Jump to content

Deep Blue C

From Wikipedia, the free encyclopedia

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

Description

[edit]

Deep Blue C is based on Ron Cain's public domain Small-C compiler, a subset of the C programming language,[1] modified by John Howard Palevich to run on Atari 8-bit hardware. Palevich also wrote Dandy for APX.[2] 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[3] as p-code.[4]

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

Limitations

[edit]

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.[4] The following language constructs are not supported:[5]

Other non-standard properties of Deep Blue C:

  • The last part of switch clause must end with: break, continue, or return.
  • The maximum length of a source code line has to be less than 80 characters.
  • The number of arguments for functions cannot exceed 126.
  • $( and $) are used instead of { and }, 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.[4]

Reception

[edit]

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.[4]

Sample program

[edit]

This program prints "Hello World!":[6]

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

References

[edit]
  1. ^ a b Palevich, John Howard (1982). Deep Blue Secrets Manual. Atari Program Exchange.
  2. ^ Hague, James. "The Giant List of Classic Game Programmers".
  3. ^ Atari 8-bit FAQ
  4. ^ a b c d e Striepe, Harald E. (January 1984). "Deep Blue C & Deep Blue Secrets". Antic. p. 109. Retrieved 2024-11-27.
  5. ^ Deep Blue C documentation at Atari Archives
  6. ^ W. Zientara, "Jezyki programowania Atari cz.2", SOETO, Warsaw, 1989