A number of large sports stadiums in Australia (including the two largest, with 100,000-person capacities) run custom scoreboard-control software during all matches. The software keeps and displays the score for the games (including personal player information) and displays other messages and advertising during matches. The information is relayed to huge video scoreboards, as well as smaller strip scoreboards located around the ground and locally to the scorers’ PC using HTML.
The system runs on Windows NT computers and needs to talk to a variety of custom software and hardware, including a custom input device for score keeping and custom hardware to control the video and strip scoreboards. The system also needs to read data during the game from an external database that provides detailed game statistics for each player.
The scoreboard software is written in C++ and Python. The C++ components of the system are responsible for keeping the match score and maintaining the key score database. All scoreboard output functionality is written in Python and exposes Python as a macro language.
Each output device (e.g., the video screen, strip scoreboard, or HTML file) has a particular “language” that controls the output. HTML, for example, uses <TAGS>, while the video scoreboard uses a formatting language somewhat similar to PostScript. A common thread is that all output formats are text-based.
A scheme has been devised that allows the scoreboard operator to ...