The 9vx 0.11 source code includes OS X gui code,
a severely cleaned-up version of the drawterm code.

It is not built by default, but you can build it by using

        make 9vx/9vx PLAN9GUI=osx

Unfortunately, it seems to have one problem: the
Carbon app event loop appears to install its own
handler for EXC_BAD_ACCESS, the Mach equivalent
of SIGBUS/SIGSEGV.  When it gets that exception,
it passes it along, but first it pops up an annoying
"The application 9vx quit unexpectedly" dialog.
Even if you turn the popup off (with TinkerTool),
the handler must record that things are broken,
and the cursor turns into a pinwheel forever:
Carbon/Quartz/whatever-it's-called-today can't
fathom the idea that an EXC_BAD_ACCESS came in
and the app actually survived it.  

I assume the fix would be to install an EXC_BAD_ACCESS
handler after kicking off the app event loop.  That would
make sure that Carbon never saw it.
But I don't know how to do that.

Russ


Reply via email to