25 Years of Programming
An open source source for C, C++, OWL, BASIC, MDB, XLS, DOT, and more...
Home   Projects   Up   Sitemap   Search   Blog   Forum+Chat   About Us   Privacy   Terms of Use   Feedback   FAQ   Images   Services   Payments   Humor   Music

Function library for the Heathkit H-100 computer in DeSmet C

DeSmet C is still available free on the internet. If you have an old H-100 (or Zenith Z-100) computer and want to do something interesting with it, DeSmet C is a good way to go. 

I was limited to using GWBASIC for graphics programming until I wrote my PSET function and the others that it made possible. The assembly language optimization of PSET was a major triumph. One of the few projects I ever did in assembly language, it made H-100 color graphics incredibly fast by H-100 standards and made it possible to do any graphics programming I wanted, free from GWBASIC.

In addition to the functions listed on this page, there are Borland C++ functions that I originally wrote in DeSmet C and that might be converted back to it without too much difficulty.

Each link below goes to the project page, which has a more complete description and code listings.

PSET: Color Graphics Primitive Functions Color graphics primitives for pixel manipulation, in .C and .A (optimized assembler). pset(): get pixel color, set pixel color, using OR, XOR, and other options.
Color Graphics Drawing Functions Drawing functions: line(), box(), circle().
Paint (Flood Fill) Function Paints an enclosed graphic area with specified color or combination of colors, using regular or random tiling, within a specified border color or to edge of screen.
Graphics Bitmap Save/Load Functions Fast routines to save color screen display to a disk file, and load back in.
Two-page Video Management Functions The H-100 has 2 video pages! You can independently choose which page you draw to and which page is displayed.
Display Management Functions Display management functions, using the H-19 / H-89 / H-100 terminal escape codes.
Procedural Utility Functions abort() terminates program execution.
Random Number Functions Two random number related functions, one a bug fix for DeSmet C.
Input Functions contin() asks "Do you want to continue?", presskey() says "Press any key to continue...", two input functions allow for a default value if user just presses CR, and a function that emulates the BASIC function INPUT #1, A$.
String Search Function A string search function that emulates the BASICA INSTR function.
Date and Time Routines Miscellaneous date and time routines.

 

Valid HTML 4.01 Transitional Valid CSS
Yahoo! Search
Search the web Search this site
View content labeling at ICRA.