Capricorn: Dec.22-Jan.29 The Sundial Primer
created by Carl Sabanski
Capricorn: Dec.22-Jan.29

The Sundial Primer Index

Dialling with QBASIC - Mac Oglesby

Mac Oglesby has written many dialling routines using QBASIC and fortunately I am able to present some of these here. But first read the following notes Mac has provided that give a bit of a glimpse into his background and experience.

"My initial opportunity was due to an fortuitous encounter with Eugene Fucci, then working for Dartmouth College at its Kiewit Computing Center in Hanover, New Hampshire. The date was late spring, 1974. He kindly loaned me a computer terminal (a Teletype machine) and arranged for access to the Dartmouth Time-Sharing System (DTSS) for the summer vacation period. My goal during the summer was to justify my being allowed to continue on DTSS, and for the next 9 or 10 years I happily maintained their library of programs called ELEMLIB***. During those years I gradually learned a lot about BASIC programming.

The Teletype printed at 10 characters per second, as a small rubber mallet struck the rear face of a cylinder which jumped up and down as it spun about. Input, entered from the keyboard, appeared on the paper, much like on an electric typewriter, and went on to the DTSS computer over a 300 baud dial-up telephone modem -- the kind where you place a telephone handset onto rubber cups. Since there was no screen, the few "graphics" were contrived from tedious placement of punctuation marks.

About DTSS: (The following is excerpted from the EXPLAIN HISTORY command on DCTS.)

In September, 1963, under the direction of mathematics professors John G. Kemeny and Thomas E. Kurtz, a project to establish a time-sharing system at Dartmouth got under way. The fruits of this project were BASIC, a simplified programming language, and a time-sharing system -- using the GE-235 and Datanet-30 computers. This system began operations in May, 1964. In 1965, Dartmouth placed off-campus terminals in secondary schools in the area. At the same time, other computer installations began to use Dartmouth's system software.

To quote Wikipedia,

In computer programming, BASIC (an acronym for Beginner's All-purpose Symbolic Instruction Code) is a family of high-level programming languages. The original BASIC was designed in 1964, by John George Kemeny and Thomas Eugene Kurtz at Dartmouth College, Hanover, New Hampshire, U.S., to provide access for non-science students to computers. At the time, nearly all use of computers required writing custom software, which was something only scientists and mathematicians tended to do. The language (in one variant or another) became widespread on microcomputers in the late 1970s and home computers in the 1980s. BASIC remains popular to this day in a handful of highly modified dialects and new languages based on BASIC such as Microsoft Visual Basic.

DTSS BASIC programs, in 1974, used line numbers, as did the early versions of BASIC on personal computers such as the Commodore PET. After using DTSS for several years, I purchased one of the very first PET computers available, a model 2001, boasting 8k of RAM, tiny, "chicklet" keys, a 9-inch monochrome CRT screen, and a built-in tape cassette player to enter and store programs. I still have that PET, and I believe it still works. I know that there are at least 4 other PETs around the house which also work. A couple are on loan to a local elementary school. These early PETs lack the color and graphic capabilities of Commodore's later models (VIC-20 and C-64), but they do have an extended group of graphic characters available. And I have a substantial library of educational programs, many of which I wrote expressively for use with young children in schools.

At the time of my retirement from full-time teaching (1992), my classroom had many Commodore 64s and several PETs, perhaps a dozen computers in all. At home, I relied on Apple Macintosh computers, buying my first in 1986. (I recall that the price dropped $400 shortly after I got my "fat MAC"!) Naturally, I still have that first MAC, and yes, it still works. I resisted getting any type of PC until after joining NASS and discovering a real need for one. And then, my first PC was a MAC which contained a PC motherboard running Windows 3.1. One could have both PC and MAC systems running at the same time, switching back and forth from the keyboard. Flaky at times, at least it let me use Fer de Vries' Zonwvlak and run DeltaCad, after Warren Thom introduced me to version 2.3. Note: Zonwvlak is nowadays known as ZW2000.

Using DTSS BASIC and then Commodore BASIC, I wrote dozens of educational games and other programs suitable for young children. Listings of many of these were published in now defunct magazines such as "People's Computer Company," "Creative Computing," "Kilobaud," and others whose names I can't recall. I was one of the authors of the book, "PET Games and Recreations," published in 1981. I'm listed as the lead author, but Len Lindsay did a large part of the book. When the publisher got mad at Len for something long forgotten, I was promoted. Alas, the book sold poorly and I don't think made enough to even recover the advance paid. Maybe there was no market for a collection of program listings, but I suspect the book didn't sell well because of the color of the cover.

I also wrote lots of BASIC programs for personal use, including a database for tracking homework assignments, test grades, projects, etc. Other programs produced elementary math work sheets. Almost all of my BASIC programs between 1982 and 1990 were written for/with Commodore BASIC. After Macintosh computers entered my life I briefly used True Basic. With PCs I used MicroSoft Basic, then QBASIC. Nowadays, I use QBASIC and ZW2000 (along with DeltaCad) for sundial designs. I can't pretend to be a professional programmer, or even a good programmer, but it's been a lot of fun writing tools to create dial faces which would have been very tedious, if not impossible to draw if one were restricted to a hand calculator or to a compass and straight edge."


The following is a ps Mac included in one of his emails to me. You have been warned.

"As I revisit this old stuff, I realize that this all may seem a bit quaint to today's dialist, who has internet access to sophisticated sundial programs not available when I wrote my QB programs. And since I had no plans to publish these programs, I didn't do much testing beyond what was necessary for my personal use. Somewhere you should include a disclaimer to warn any users about my failure to complete rigorous checking of these QB programs. They should be thought of as tools which may indeed need modifications for circumstances other than those under which I exercised them. But my hope remains that at least someone will be able to benefit from seeing my efforts."


The following pages contain QBASIC routines that Mac has written over the years and how he has turned them into functional sundials. The photographs, files and any text in quotations were provided by Mac. Mac makes many of his sundials from wood and paper as you will see from the photographs. He uses many of them as teaching tools when he lectures at local schools. As these programs were created for Mac's personal use, in most cases there is no user interaction as you might expect. Inputs that need to be changed are changed in the program. This is very easy to do and is discussed on the various pages.

Equation of Time

Polar Sundial

Polar Monofilar Standard Time Sundial

Horizontal Monofilar Standard Time Sundial

Two Complementary Dial Faces Sundial

Horizontal Monofilar Sundial

Vertical Declining Monofilar Standard Time Sundial

Hours to Sunset Card Sundial