Small 8x8 matrix driver?

A max7219 clone is fairly simple. You need to implement two basic elements:

  1. a display routine that is called from a timer isr to update the matrix in the background;
  2. an interrupt based spi slave.

The two pieces are integrated in the main loop where the incoming data (common + data bytes) are processed.

The beauty of this approach is that the execution in the main loop is non-critical and support the full capabilities of the spi hardware.