I'd be tempted to port that to actual hardware. It'd require using a mix of sprites and BG tiles for the pieces, but it can definitely be done.
Best part about this is if you add CGB support you don't have to bother with the second VRAM bank, you can just tweak the tints to your liking. However, you no longer have the BGP/OBP0/OBP1 registers so you'll have to do everything through the main CGB palette (in other words, fades will be different), and you'll use a different attribute bit to select the sprite palette.