[comp.sys.atari.st] S.A.L.A.D.

julius@yugas.UUCP (Julius OKLAMCAK) (02/22/88)

Dale Schumacher ...ihnp4!meccts!stag!syntel!dal sezs:

>  <Thomas_E_Zerucha@cup.portal.com> writes...
>> Arkanoid uses a series of locations where GEM stores the current mouse
>> X,Y, and button state, somewhere in 0x00002000 - 0x00002fff range, and
>> you can find the locations easily and patch them.  I have the new ROMs
>> and a copy of ARKANOIDS that runs on them.  When will programmers use
>> the documented methods of doing these things <groan>?
>
>I picked up some information a while ago about these values actually being
>referencable as an offset from the a-line base address (like lots of other
>information posted in Bammi's ALINE2.H).  I haven't tested these values on
>the Megas, but they should work.  Perhaps someone could substantiate their
>usefulness (or failure) on the Mega ROMs.
>
>#define	MOUSEX		*((WORD  *)((char  *)aline + (char  *)-344L))
>#define	MOUSEY		*((WORD  *)((char  *)aline + (char  *)-342L))
>#define	MOUSESTATE	*((BYTE  *)((char  *)aline + (char  *)-348L))
>
>The mouse buttons appear to be (MOUSESTATE & 1) for left and (MOUSESTATE & 2)
>for right.  The higher order bits of MOUSESTATE seem to hacve something to
>do with the mouse being moved.  If anyone can expand on this information,
>(or make corrections) please do.

There is an 'official' Atari document, S.A.L.A.D (Still Another Line A
Document), that lists the above mouse variables and many more...  The
negative LINE-A variables it speaks of are 'cast in concrete' and will
no doubt stay into future ROMs.

How do you get it?  Bug your developer support person...(in Canada, me! :-)

Julius Oklamcak					UUCP:	julius@yugas.UUCP
Atari (Canada) Corp.				CIS:	70007,1070
(416) 479-1266					GEnie:	J.OKLAMCAK

"I've finally figgered this out, no thanks to the documentation!"