======**sqInt ioSetCursorWithMask(sqInt cursorBitsIndex, sqInt cursorMaskIndex, sqInt offsetX, sqInt offsetY)**====== **Parms**: cursorBitsIndex pointer to oops, data bits describing cursor cursorMaskIndex pointer to oops, data bits describing mask offsetX integer, offset to hot spot X, the pixel where the click is offsetY integer, offset to hot spot Y, the pixel where the click is **return**: NONE, fake return of zero **From**: Interpreter **Why**: To set the host system cursor and host spot **Responsibility**: /* Set the 16x16 cursor bitmap. If cursorMaskIndex is nil, then make the mask the same as the cursor bitmap. If not, then mask and cursor bits combined determine how cursor is displayed: mask cursor effect 0 0 transparent (underlying pixel shows through) 1 1 opaque black 1 0 opaque white 0 1 invert the underlying pixel */ Also see ioSetCursorARGB which is bigger cursor support On the macintosh we have logic to set/reset the cursor depending on if the cursor is inside or outside of the drawing surface. Some platforms may do this automatically, others require support in the VM to enable this feature. **MacIntosh** //os-9/OSXCarbon// If headless or not drawing in the browser yet then return Set bigger cursors to off Copy the data from the Squeak oops into a MacCursor, respect issues with powerpc/intel Check to see if we need to send the cursor to the browser plugin, or we have to draw it because we are full screen in the browser, or running not as a browser subtask. Then use OS-9 era call to set the cursor. //Cocoa:// Grind thru the data to use NSCursor to set the cursor. **iPhone** The iPhone has no concept of a cursor, so the api does return 0 **Unix** Use X-Windows to display the cursor in the proper endian **Windows** Use create and set cursor, return 1 **BUGS** Platforms return 1 or 0 which are cheerfully ignored.