Path: utzoo!attcan!utgpu!jarvis.csri.toronto.edu!rutgers!cs.utexas.edu!tut.cis.ohio-state.edu!ukma!xanth!nic.MR.NET!umn-cs!hall!rosenkra From: rosenkra@hall.cray.com (Bill Rosenkranz) Newsgroups: comp.sys.atari.st Subject: resetting the mouse position Summary: how? Message-ID: <2947@hall.cray.com> Date: 5 Jun 89 15:28:31 GMT Reply-To: rosenkra@hall.UUCP (Bill Rosenkranz) Organization: Cray Research, Inc., Mendota Heights, MN Lines: 44 --- help, please!!! i need to know how i can change the position of the mouse cursor (and of course its internal absolute coord). i tried something like: hide_mouse (); Bconout (4, 0x0E); /* ikbd command (set abs pos) */ Bconout (4, 0x00); /* filler */ Bconout (4, newx_MSB); /* new coord */ Bconout (4, newx_LSB); Bconout (4, newy_MSB); Bconout (4, newy_LSB); show_mouse (); to no avail. the coord are pixel coord, 0,0 in UL (i have left the ikbd in the state it was booted at, and i invoked the gem program from gulam... i hope my "obedient servent" is not biting again). or is there something silly like the arg to Bconout is an int and the command/data packet needs to be char? ir do i have to call the ikbdwc() function burried in the bios somewhere? or do i have to set up some sort of interupt handler? btw: does the ikbd send anything back after this call (i mean other than "normal" mouse/key/joystick/inquiry packets)? i guess the more general question is: how do you send data to the ikbd? the commands themselves are easy, the Bconout works for a 1 byte command. i know how to get data from an inquiry command (using a service routine installed on the keyboard vector, say to read joysticks). i tried this with a mega4 (TOS 1.2). there is an illegal way of doing this, but (to keep allan happy :^) the solution MUST be legal. the program "mousdoub" does it (i think) illegally (at least it uses the pointer-to-bios-function-tables-returned- in-a0-on-illegal-biosfunction trick... infinite thanx... -bill rosenkranz rosenkra@hall.cray.com (pls send mail as news is rather sporadic here...)