Catweasel-OSX is a project with the goal of developing a complete driver suite for the Catweasel MK3 and MK4 PCI card on Mac OS X. It will include floppy, joystick and SID drivers.
Much of this project is currently in development/Alpha phase, there's not a lot of user-friendly download and install componentry yet. But if you have an older Mac with a PCI-based Catweasel card, this is the project for you!
The great work of Tim Mann, Jim Battle, Jay Jaeger, and others has been ported to use the IOKit Kernel Extension driver so that they can live peacefully with a driver rather than having to control the Catweasel exclusively. The commands that have been ported so far include:
Work is currently underway to connect Karsten Scheibler's excellent cwtool toolset to the OSX driver. A layer that intercepts the ioctl() calls destined for the Linux driver is being written to redirect and re-formulate those calls into a form the catweasel-osx driver understands. The merged/ported code will be integrated into Karsten's official code stream once complete, and a buildable snapshot may be hosted here as well. The official cwtool code stream will remain with Karsten.
Currently, installation for the disk driver and commands is manual at best. The immediate goals are to gather other cw2dmk-like commands and produce a common set of services they all can use to enable simpler creation of new ones, and to complete the ioctl() conversion layer to enable ctwool. Help wanted includes updates to the build system to enable 64-bit driver production.
Fully functional HID driver for joysticks and keyboards. HID devices can be used as input for all Mac OS X applications that access joysticks directly.
Fully functional SID driver so userland SID players can access the sound chips on the Catweasel MK4.
Fully functional floppy disk driver.
This portion of the driver I see having two modes. A raw mode that gives the userland application total control of the card. This will shutdown the HID and SID portions of the driver. The second mode supports calls for track stepping and disk I/O. The driver will provide actual flux transition times and not interrupt the data in any way.
Static library so userland applications can easily communicate with the driver.
A Framework for a similar dynamic library.
Preference Panel so the User can configure the driver with ease.