Thank you for making this. I was genuinely considering a solution at this abstraction level for Megadrive / Sega development .