Scrolling matrix display

JoeN:
I have a scroller and I do basically what you do but there is no problem decoding the text via the font on the fly with no need to store the bitmap anywhere except in the driver/shift registers. The Arduino is fast enough for that, at least it was for me with 6 8x8 displays.

Very nice looking display. That's what I'm working on, currently I have one 8x8 matrix on breadboard wired as you described and I just ordered some PCBs for 7219 backpacks to build a row of modules, exactly what you have but I haven't decided how many modules I'll use yet.

Is your actual display as choppy as the video? I thought about decoding the font on the fly but figured it would make the timing more difficult and just feel kludgy in code. Are you using a blocking delay or using millis() to make sure the time interval between updating the display is constant? Being more careful with the time between updates could make your scroll more smoothly.

Right now, my code is incredibly simple, I don't even need to read all the symbols from the font. For a time display when I want a colon, I just set 2 columns to 0x24, and to make the colon blink seamlessly as it scrolls, I can blank and reset those 2 columns every second. Replicating that functionality without the buffered bitmap would be difficult. Same goes for any scrolling animations.

Anyway, thanks for your reply, I guess you've given me the right answer, which is to work out the more complicated code. Either that or upgrade my mega168 to a 328 and limit my messages to 150 characters or so :).

Edit: I didn't notice you posted code at first, I just read through it, it's not quite as difficult as I thought, so I really should spend some time trying to do it that way (at least if I don't want animations). I'm a bit confused by your triple loop, is it because your font is storing columns but you're updating the displays as rows so you're twisting around bits?

Is the delay(10) after the for i loop the only time keeping? If so, is it scrolling as fast as it's able right now?