ThorstenOtto wrote:You would need a VDI driver, for example for fVDI. Not impossible, but still some work. Maybe for monochrome you can even use the 1-plane driver (dunno how the video memory in a Mac is organized).
It's the most trivial layout possible — it's linear from one of two selectable start addresses*, with the MSB of each word being the first pixel out and the LSB the last. 1 = black, 0 = white. So it's colour inverted compared to the ST (and a different size) but otherwise the same. And the pixels are square.
An interrupt is offered on vsync, and you can poll for whether pixel output is currently active; there's the usual time division of RAM access that you'd expect from anything of that era so you don't need to do anything special to avoid snow/sparkle.
There's no mouse cursor sprite or anything like that, just the frame buffer.
Speaking of the pre-ADB machines: the mouse is the standard quadrature thing of the era, generating interrupts on changes in X1 and Y1 and leaving the processor to sample X2 and Y2 at interrupt to determine direction of movement. The mouse button is polled, it isn't an interrupt source. The keyboard is serial, feeding into and out of a VIA shift register. So it can trigger interrupts. But the keyboard itself supplies the clock, so you'll occasionally hit the 6522 shiter race condition bug. Very rarely though as it's only ever one-or-two byte packets, as infrequently as a human types. The built-in firmware just does a retry anytime a transmission goes awry.
* either 0xffff2700 or 0xffffa700, each masked to however much RAM there actually is. One of the VIA outputs selects either the one or the other.
EDIT: wait, obviously I've been stupid posting the above. I would dare imagine it's also accurate for the SE/30, which has a 68030, but otherwise it applies only to 68000 machines that hugely predate those that MacMint aims to support. Anything colour with a 68020 or better makes no guarantees about its video hardware beyond that they'll provide suitable firmware. Apple made no efforts towards hardware compatibility between models.