A building blog for my homemade BioShock pinball machine!
Sunday, November 4, 2012
Status update
The current alpha state of the gameflow and menu system is as follows...
I've done a couple of things that doesn't show in the video, such as - fixing the tilt blob, tidying the cables, soldered an additional powerboard, prepared the upper level so it's more or less complete...
how are you achieving such a nice linear gradients on the led DMD, are you using 3 sub frames to create your 8 shades? and just cycling them like 011222?
I'm actually drawing them all in one go (may or may not be the recommended way due to speed) with an exponential delay between each shade. I'm using a microsecond delay of x*n, so the final shade has around 48 microseconds between each line and the first shade has 0 delay. This evens out all the shades and the lower range is softer and blends better with the diminished pixels, but still allows the higher ranges to be crisp.
On top of that I have a "blood red filter" to color my orange display red. :)
Thanks! :) Not at the moment, I'm afraid. I recorded this using my cellphone so the quality is severely lacking. But I will post higher resolution images and videos as I get access to better equipment.
I also noticed reading another post, you was running out of time to run your main dmd control code, i had the same problem the other week with a similar pinball dmd display project. every time i sent frames to the display using usb the display slightly flickered, i converted all the code to use hardware timers and now it runs perfect 0 flicker, i can hammer it at 128fps and you would never know its running a full usb stack in the background :)
If you ever run into display flicker problems due to busy cpu, swap the main row update routine to be triggered from a hardware timer interrupt :)
Yeah, I did the other way around actually - streamlining the process so "no matter what" I decide to do and/or add effects there would be no flickering. Pretty rock solid 75Hz with full streaming of SD animations and effects etc. :)
how are you achieving such a nice linear gradients on the led DMD, are you using 3 sub frames to create your 8 shades? and just cycling them like 011222?
ReplyDeleteI'm actually drawing them all in one go (may or may not be the recommended way due to speed) with an exponential delay between each shade.
ReplyDeleteI'm using a microsecond delay of x*n, so the final shade has around 48 microseconds between each line and the first shade has 0 delay.
This evens out all the shades and the lower range is softer and blends better with the diminished pixels, but still allows the higher ranges to be crisp.
On top of that I have a "blood red filter" to color my orange display red. :)
I see, im really impressed with this demo video. Have you got a higher res version you could upload?
ReplyDeleteThanks! :)
DeleteNot at the moment, I'm afraid. I recorded this using my cellphone so the quality is severely lacking.
But I will post higher resolution images and videos as I get access to better equipment.
Sounds great :)
ReplyDeleteI also noticed reading another post, you was running out of time to run your main dmd control code, i had the same problem the other week with a similar pinball dmd display project. every time i sent frames to the display using usb the display slightly flickered, i converted all the code to use hardware timers and now it runs perfect 0 flicker, i can hammer it at 128fps and you would never know its running a full usb stack in the background :)
If you ever run into display flicker problems due to busy cpu, swap the main row update routine to be triggered from a hardware timer interrupt :)
Yeah, I did the other way around actually - streamlining the process so "no matter what" I decide to do and/or add effects there would be no flickering.
ReplyDeletePretty rock solid 75Hz with full streaming of SD animations and effects etc. :)
Was your version running a Chipkit or Propeller?
My rev2 is now a nice stm32f4 168mhz :)
ReplyDelete