Quoted from Rensh:
Thanks for the update. Awesome work from you and Ofa.
Now already with Inframe coloring you have 255 palets possible. Does this new feature give more advantage over Inframe besides the famous 8 dots up left (which you very rarely notice in gameplay)?
Should I start making a side channel cable for my MET?
Right now MET is colored using "In-Frame"
However, I've been reworking MET with the new version of "Side Channel" in mind. FYI - I'll go back and do this for ACDC as well - one game at a time though
Once we've thoroughly beta tested everything, PB will be updated to include the new version of "Side Channeling." Side channeling will then use a serial link between the game's MPU board and the RPi's GPIO pins. Here's a list of the advantages for the new version of Side Channel:
1) 255 color palettes instead of only 15
For example, I'm now using 52 palettes for MET - about 330 unique colors as some colors are used in multiple palettes. I'm estimating about 500 unique colors will be used in MET when it's all said and done.
2) No pixel loss as the palette information is stored externally from the frame. This should greatly reduce the about of free ROM memory needed for colorization as well
3) With "In Frame" you can only assign palettes to full size frames or sprite frames that are displayed at (0,0). With "Side Channel" you can assign a palette to any frame, including dynamic text characters, regardless of where they're displayed on the screen.
Full Size frame = an image that is 128x32 in size, meaning 128 columns of dots by 32 rows of dots.
Sprite frame = any image that isn't 128x32 in size.
What does (0,0) mean? Do you remember your (X,Y) Cartesian Coordinates from Algebra? (0,0) refers to the origin, where both X and Y are equal to zero. (0,0) is the dot location in the upper left hand corner of the DMD screen. As you move from left to right (this is the X axis) you increase the value of X. So, the dot in the upper right hand corner of the DMD screen would be positioned at (128,0). Likewise, as you move from top to bottom (this is the Y axis) you increase the value of Y. So, the dot in the lower left hand corner of the DMD would be positioned at (0,32). Hence the dot in the lower right hand corner corresponds to location (128,32). Make since?
So, now we have the ability to assign palettes to any frame in the game's ROM.
The limitations are:
1) You can only use one palette at any give time. For example, when sprites are displayed on top of a 128x32 full sized background frame you'll only want to assign a palette to the background frame. You don't want to have more than one image with a palette displayed at any given time.
2) As before you can only have 16 colors per frame. However, I have some animations in MET that use over 30 different colors. This is done by using different palettes within a given animation (flip flopping between them).
Hope this helps.