I’ve been slowly adding core bits of key code into the pinball codebase. I have also been putting off making cables. Anyone who has read through the old posts in the blog know full well that making cables is not my strong suit. It is more like an ill fitting suit that my Dad handed down to me years ago for my first job interview. Somehow it did the job, but boy howdy, it sure wasn’t going to win me any second looks for fashion sense. But I digress.
I do have all of the bits I need to make a small test cable which will allow me to do two things. Firstly I can verify that my device driver hacking is working as expected, namely that I am properly reassigning pinouts to the functions I want in the GPIO. Second, it will allow me to hook up said pinouts to the protoboard to test a variety of circuits. Third, and possibly most frightening, it will allow me to hook one of those circuits up to the Vishay Dale DMD display and find out if my DMD driver works on the actual hardware.
All I need to do is get the soldering iron out and spend the time to put it together. Hopefully that will happen soon.
On the coding front I am going through the self flip flopping debate over whether certain systems should be callback/event driven or whether a polling loop should be used. To that end, I have decided that the timer system will be handled with callbacks. That was a pretty simply choice actually. If every section of code that required accurate timers needed to be written with polling, every system would have to somehow manage on their own to be consistently reliably deterministic. By using a system that employs a central timer and callbacks, I can achieve a reasonable deterministic result for all timers in the system. Each callback will still have to make sure that a reasonable response is made on the timer callback and each callback will need to ensure that they are operating safely on data in a multithreaded environment. I’m not worried about either of those situations.
You see, coding suits me much more like the Men’s Wearhouse. I’ll like the results…I guarantee it.