Yup, Makaron sure can boot GD images. CDI are supported only because homebrew needs to boot as well (though any new stuff could be easily fashioned into GDI as well). I kinda wonder - who is it exactly that came up with that format?
I've a problem here. I ported some more changes from my ARM core to AO and it stopped playing anything at all. It seems that there are lots of unaligned memory reads by LDR - and those get rotated. There's a bug in AO though, the rotation is done twice: first my RBOD macro and then arm7_read_32 does it's own. Since all of those addresses have bit 1 set, it ends up rotated 2x16=32 bit, that is nothig changes. But it only works like that due to this incorrect double rotation...?
I hardly ever see unaligned reads in Makaron, if any at all. This is why I had #ifdef on that macro int the first place, I was planning on skipping that check later. Is it possible that it's caused by the libraries that are loaded?
EDIT: And maybe it's just me, but I do belive AO plays tunes slightly bit faster then Makaron...