(This post was repurposed and embellished from my FaceBook post).
Well, more baby steps. Did a bunch of reading in the arcade book about bitmap images and rendering. Learned a lot.
Realized I need 7 shift frames for each bitmap I want to move around since 1 byte in hi-res is 7 pixels. That is because the expense to calculate the image shift of the fly will be complex and costly. Remember, with the 7-bits and a high bit for color control (g/v vs b/o) you can’t simply shift each byte by one bit and be done.
That’s because the high bit needs to be left alone so it doesn’t change color, so the 7th bit needs to moved the low bit of the next byte (if shifting right), etc. Not to mention doing this EVERY time.
Time for graph paper? Umm, no… If necessity is the mother of invention, then laziness is the father. I wrote a tool to draw my bitmaps and added code to generate each of the 7 shifts. Needs some cleaning up, but it works great.
- Drawing the bitmap (duh)
- Buttons to manually shift left/right
- Button to clear
- Generarates output data in textarea boxes. (C array for main frame, JSON for loading/unloading, C array for all frames). These are updated in real-time.
The video shows my bitmap tool, the build pipeline in Xcode and the results running.
Proof is in the pudding they say. So, without further ado, the pudding.