I worked at Victorian TAB (Totalisator Agency Board) back in the late 80s.
The system they had was an early 80s Burroughs (from memory) that could process up to 400 bets/second, it was connected via a complicated switch that then connected serial lines to up to 150 agency shops. Each shop had a "GART" (General Agency Racing Terminal - maybe, it's been a while) that had 2 keyboard/mark sense card reader/display units.
Via complicated polling, the GART dealt with the keyboard/displays and reading mark sense (graphite pencil) readers to take bets.
The backend could keep pools on each race for win/place/quinella/trifecta/quadrella. The system was designed to maximize for one race, the Melbourne Cup, run annually, with a maximum of 24 horses.
The combination of location/sport (racing/trots/dogs)/race/competitor was mostly hard coded (MEL R was Melbourne Races).
When they tried to move to sports betting, the initial implementation used an "unused" location/sport (eg Geelong Racing) for the football round. Each race was a match and each "horse" was a margin, with +/- 11 goals and a draw.
So we wrote complicated code on new PC based terminals that translated "Geelong Racing" into "AFL Round 3" and "Race 2" into "Carlton vs Collingwood".
We got the "odds" from a system that broadcast the pool totals via satellite sideband to each agency, which was then fed into the terminals independent of their connection to the backend. That let us offer things like "mystery bets", which marketing asked us to "skew" towards winning, so it took the total pool and the random selection of the "winner" was based on the proportion of a competitor's total in the overall pool.
There were lots of other hacks that lasted well into the 90s, while they tried twice to replace the back end system originally with a very expensive DECNET based VAX system.
I worked at Victorian TAB (Totalisator Agency Board) back in the late 80s.
The system they had was an early 80s Burroughs (from memory) that could process up to 400 bets/second, it was connected via a complicated switch that then connected serial lines to up to 150 agency shops. Each shop had a "GART" (General Agency Racing Terminal - maybe, it's been a while) that had 2 keyboard/mark sense card reader/display units.
Via complicated polling, the GART dealt with the keyboard/displays and reading mark sense (graphite pencil) readers to take bets.
The backend could keep pools on each race for win/place/quinella/trifecta/quadrella. The system was designed to maximize for one race, the Melbourne Cup, run annually, with a maximum of 24 horses.
The combination of location/sport (racing/trots/dogs)/race/competitor was mostly hard coded (MEL R was Melbourne Races).
When they tried to move to sports betting, the initial implementation used an "unused" location/sport (eg Geelong Racing) for the football round. Each race was a match and each "horse" was a margin, with +/- 11 goals and a draw.
So we wrote complicated code on new PC based terminals that translated "Geelong Racing" into "AFL Round 3" and "Race 2" into "Carlton vs Collingwood".
We got the "odds" from a system that broadcast the pool totals via satellite sideband to each agency, which was then fed into the terminals independent of their connection to the backend. That let us offer things like "mystery bets", which marketing asked us to "skew" towards winning, so it took the total pool and the random selection of the "winner" was based on the proportion of a competitor's total in the overall pool.
There were lots of other hacks that lasted well into the 90s, while they tried twice to replace the back end system originally with a very expensive DECNET based VAX system.