Led Display Arduino - Chars flowing from left to right

Hi everyone, i'm new here and i really need your help.

I have the Beginning Arduino book by Micheal McRoberts, during months i've been working with the projects from the book. Most of the projects were easy and had no problem.

The project 21 is a Display that show messages using a Matrix LED (8x8) and a MAX7219. I followed the wiring, The LED Matrix display im using is 1588bs and it's datasheet is this one.

After the wiring, i used the code that states in the book. Both are in the atacched files.

Its working!! But not how it's was meant to be.

The letters are flowing from letf to right and are vertically rotated. A way to read the text it's reading it through a mirror.

Here's a little video:

If anyone knows how to fix it or what did i do wrong, please help me. I' think that modify the scroll() block it's the key.

Thanks.

Matrix8x8Letters-BegininngArduiono.ino (12.4 KB)

Wiring2.png

Change buffer[y] = ledOutput;
to:buffer[8-y] = ledOutput;

That will flip the letters vertically (mirroring them) and then you can flip the whole display.

I changed the it to buffer [8-y] = ledOutput;

But now the text it's upside down, and keeps flowing from left to right.

Update:
It was:
** ** for (byte y= 0; y<8; y++) {                                 firstChrRow = pgm_read_byte(&font[Char1 - 32][y]);                                 secondChrRow = (pgm_read_byte(&font[Char2 - 32][y])) << 1;                                 ledOutput = (firstChrRow << scrollBit) | (secondChrRow >>(8 - scrollBit) );                                 buffer[y] = ledOutput;                         }** **
I changed it to:
** **firstChrRow = pgm_read_byte(&font[Char1 - 32][y]);                                 secondChrRow = (pgm_read_byte(&font[Char2 - 32][y])) >> 1;                                 ledOutput = (firstChrRow >> scrollBit) | (secondChrRow <<(8 - scrollBit) );                                 buffer[y] = ledOutput;** **
the letters are showing from right to left, but still are flipped vertically.