Wow, you've made a lot of progress doing all the things that I wanted to but didn't get around to! I wanted to talk to you about merging the changes back. I'd rather not have two competing repos to confuse people. To be honest, I don't really care who owns it. We could create an org so we could both commit to the same repo if you prefer.
One roadblock is the HBIOS dependency you've added. I'm really not a fan of requiring this because people using the Grant Searle CP/M or my own z80ctrl board won't be able to make use of it. It seems like you're only using it to get the ports to use. A better way might be to auto detect the port. I have added code to my tms.asm example library that does this. It also allows adding runtime configurable wait loop so that it can work with different processor speeds.
https://github.com/jblang/TMS9918A/blob/master/examples/tms.asm#L147
An example on how to call this code can be found here:
https://github.com/jblang/TMS9918A/blob/master/examples/mandel.asm#L53
Let me know if you'd be willing to switch to this approach or if you'd consider making it at least compile time configurable.