Why did the robots crash when playing back the “Star Wars” theme?
Answer #1: The robots didn’t actually crash, they were just waiting to play the next note. The robots play music stored in the MIDI file format. The files tell the robots when to play which note on what instrument. My software made an error while processing this file, and the robots would get to a certain point, then wait a very long time to play the next note. I think it would have been about three days until the next note… Answer #2: The MIDI file format has a bass-ackward way of representing time and dealing with tempo changes. I was trying to compute all timing references with full precision, but eventually overflowed the variable I was using to keep track of the “now” time. My only consolation for having an otherwise simple demo fail so miserably on national television was that it was the first time I have been able to overflow a 32-bit unsigned integer. (i.e. one of my intermediate values was greater than 4,294,967,296!) This is most certainly one of the rites of passage to bec