[Home]
[Previous (Schematics)][Contents][Next (Contact Info)]

SCORING SOFTWARE

Here you'll find the diagrams and other stuff about the software written for scoring the Driving Tour of KY and interpreting the outputs of the track.

   Nifty Software Stuff

  1. Description
  2. GUI Screenshots

Where to Get It

   Download

DISCLAIMER: This software talks directly to the parallel port, and expects to find our custom track hardware there! Therefore, it is possible that using this software can mess up other hardware attached to the parallel port!! The take home message is, DO NOT RUN THIS APPLICATION BEFORE INSTALLING THE PARALLEL PORT INTERFACE HARDWARE, OR AFTER REMOVING THAT HARDWARE. If you do, we are not responsible for anything that gets messed up!

The take home message is, don't run the application without unhooking your printer first. The constructor of the port driver actually writes to the port when it initializes, at the very start of the program. You have been warned.

You can download the scoring software for your own use, perfectly free of charge:

Note that the source code does not include the OWL libraries needed to compile! These are available with Borland's Turbo C++ for Windows 3.x, which is the compiler we used (on a windows 95 machine). Also, the direct port I/O and direct hardware access aspects of this software makes it highly unlikely that WinNT will allow this software function correctly.

 

How It Works

Screenshots

  Screenshots

Our scoring application, IEEE.EXE, was compiled under Windows95 with Borland's Turbo C++, a 16-bit compiler from the old days of Windows 3.xx.   Since I don't have a screen-grabber for Win95, but I do for Linux, these screenshots were taken in XFree86 on a Linux system, running IEEE.EXE, with WINE, a program that allows linux users to run Windows applications (by translating Windows system calls to X system calls and then running the Intel binaries... pretty nifty!.   This explains the old-style window dressings in the pictures....

The pictures here are thumbnails, reduced in size to make downloading faster. Click on them to see the full-size images.

 

How to Run a Competition

  How to Run a Competition

filler text filler text filler text

  1. start it
  2. enter some team names
  3. go to File->Start->Round One
  4. Select Teams for each side
  5. Make sure everyone's ready
  6. click reset --- this starts the pre-contest (no cheaters!)
  7. click start to sound the buzzer and start the clock
  8. watch
  9. when it's over, click stop.
  10. reset for the next teams...
  11. and so on
  12. and so forth

!Bambolaeo!

 

Components

  Components

  Ideal Development stages

 

Who Wrote It?

  Authors

The so-called Scoring Software is a Windows-based program that controls the track hardware and runs the competition. It has a parallel port interface to speak to the hardware built into two tracks, a scoring engine that computes the scores of two simultaneously competing teams, and a graphical user interface that facilitates the team management and displays the tracks, scores, and times while the competition transpires (purely for the enjoyment of the audience).

This larger-than-we-thought project was the undertaking of three individuals, each focusing on a specific module, and all working together to cram the pieces into a coherent whole in the last marathon programming session in finals week.

Earl Fugate took on the thankless job of creating a usable graphical user interface, working with Borland's Object Windows Library software in C++. All of the nifty graphics are his doing.

Scott Arrington wrote the scoring engine, which contains the lion's share of the contest rules. He also re-drew the bitmaps of the tracks, and helped with the GUI aesthetics.

Keith Loiselle bore the responsibility for not only the parallel port interface software, but for the hardware as well. His methods of accessing the parallel port in software are quite efficient, but necessarily reduce the portability of the application. He uses actual bit-reads and bit-writes to the parallel port, giving a rather unique power to our software, as explained in the Disclaimer above...