Oscilloscopes are important for electronics work as a result of they let customers see the wave types of analog and digital alerts. Need to see the sample of a digital sign that follows an unknown protocol? An oscilloscope can present it to you. Need to see how a capacitor impacts an analog sign? Oscilloscope to the rescue! And since ‘scopes are so helpful, they have been common for a lot of a long time and there are extra fashions on the used market than you possibly can rely. Ilia Sam bought a used high-performance Tektronix TDS540D for lidar improvement and acquired it to run Tetriswhereas unraveling its secrets and techniques.
Whereas the oldest oscilloscopes are little greater than cathode-ray tubes with their deflection coils connected to the sign inputs, later fashions just like the TDS540D (this instance is from 1998) have been very difficult. The TDS540D is a digital oscilloscope with a CRT show. It has a Motorola 68EC040 processor and runs the RTOS VxWorks real-time working system. That masses from flash reminiscence, however this ‘scope additionally has a floppy disk drive (FDD). The aim of the FDD is to let customers save wave kinds for later evaluation, retailer settings, and to load to software program that would unlock extra options.
Ilia Sam had hassle discovering any examples of software program for the TDS540D and was solely capable of find one, which is named TDSPRT1 and that lets customers print information from the ‘scope. That may be a Java software and itgave Ilia Sam some hope that they could have the ability to write their very own customized software program to run on the oscilloscope.
This led Ilia Sam down a rabbit gap of quirky ’90s embedded software program eccentricities. There is no documentation on-line for any of this, so Ilia Sam needed to reverse-engineer each step of the method via debugging and code disassembly.
For instance, customized software program can entry the states of the oscilloscope’s entrance panel buttons by studying a selected reminiscence tackle. However urgent the identical button twice in a row would not replace that. So the software program has to examine the button states, write zeroes at that reminiscence tackle, then examine it once more to see button state updates.
After slogging via a gauntlet of out of date compilers and unusual conventions, Ilia Sam was ultimately capable of create their very own customized software program. That can be very helpful as they’ll broaden the capabilities of their oscilloscope to accommodate their work. However it additionally allow them to run Tetris on the ‘scope, utilizing the entrance panel buttons to regulate the sport.