Blunt 2 is supposed to be implemented as a standalone task which talks to the serial chip directly. It seems that the warnings in the DDK header files about using TSerialChip are justified… interfacing with the 16450 chip which is usually used for PCMCIA cards fails right in the initialization with a “deep toast” alert. I guess there is some magic happening with the interrupts, supervisor mode and other low level stuff.
The good news (at least for me) is that it works when talking to the Voyager chipset which is in charge of the internal serial port. That means that my internal Bluetooth modules should work fine. The only requirement is that instead of pain old serial communication with the chip, DMA has to be used. Another fun thing to reverse engineer! But it looks ok now, and besides getting some rudimentary Bluetooth stack up and running, I ‘just’ have to implement the CommTool counterpart which sits between the NewtonScript world and the Bluetooth stack.