[Contents] [Index] [Help] [Retrace] [Browse <] [Browse >]

TABLE OF CONTENTS

gameport.device/GPD_ASKCTYPE
gameport.device/GPD_ASKTRIGGER
gameport.device/GPD_READEVENT
gameport.device/GPD_SETCTYPE
gameport.device/GPD_SETTRIGGER
gameport.device/GPD_ASKCTYPE                     gameport.device/GPD_ASKCTYPE

   NAME
	GPD_ASKCTYPE -- Acquire the current game port controller type

   FUNCTION
	This command identifies the type of controller at the game
	port, so that the signals at the port may be properly
	interpreted.  The controller type has been set by a previous
	SetCType.

	This command always executes immediately.

   IO REQUEST
	io_Message	mn_ReplyPort set if quick I/O is not possible
	io_Device	preset by the call to OpenDevice
	io_Unit		preset by the call to OpenDevice
	io_Command	GPD_ASKCTYPE
	io_Flags	IOB_QUICK set if quick I/O is possible
	io_Length	at least 1
	io_Data		the address of the byte variable for the
			result

gameport.device/GPD_ASKTRIGGER                 gameport.device/GPD_ASKTRIGGER

   NAME
	GPD_ASKTRIGGER -- Inquire the conditions for a game port report

   FUNCTION
	This command inquires what conditions must be met by a game
	port unit before a pending Read request will be satisfied.
	These conditions, called triggers, are independent -- that
	any one occurs is sufficient to queue a game port report to
	the Read queue.	 These conditions are set by SetTrigger.

	This command always executes immediately.

   IO REQUEST
	io_Message	mn_ReplyPort set if quick I/O is not possible
	io_Device	preset by the call to OpenDevice
	io_Unit		preset by the call to OpenDevice
	io_Command	GPD_ASKTRIGGER
	io_Flags	IOB_QUICK set if quick I/O is possible
	io_Length	sizeof(gamePortTrigger)
	io_Data		a structure of type GamePortTrigger, which
			has the following elements
	    gpt_Keys -
		    GPTB_DOWNKEYS set if button down transitions
		    trigger a report, and GPTB_UPKEYS set if button up
		    transitions trigger a report
	    gpt_Timeout	-
		    a time which, if exceeded, triggers a report;
		    measured in vertical blank units (60/sec)
	    gpt_XDelta	-
		    a distance in x which, if exceeded, triggers a
		    report
	    gpt_YDelta	-
		    a distance in x which, if exceeded, triggers a
		    report

gameport.device/GPD_READEVENT                   gameport.device/GPD_READEVENT

   NAME
	GPD_READEVENT -- Return the next game port event.

   FUNCTION
	Read game port events from the game port and put them in the
	data area of the iORequest.  If there are no pending game port
	events, this command will not be satisfied, but if there are
	some events, but not as many as can fill IO_LENGTH, the
	request will be satisfied with those currently available.

   IO REQUEST
	io_Message	mn_ReplyPort set if quick I/O is not possible
	io_Device	preset by the call to OpenDevice
	io_Unit		preset by the call to OpenDevice
	io_Command	GPD_READEVENT
	io_Flags	IOB_QUICK set if quick I/O is possible
	io_Length	the size of the io_Data area in bytes: there
			are sizeof(inputEvent) bytes per input event.
	io_Data		a buffer area to fill with input events.  The
			fields of the input event are:
	    ie_NextEvent
			links the events returned
	    ie_Class
			is IECLASS_RAWMOUSE
	    ie_SubClass
			is 0 for the left, 1 for the right game port
	    ie_Code
			contains any gameport button reports.  No
			report is indicated by the value 0xff.
	    ie_Qualifier
			only the relative and button bits are set
	    ie_X, ie_Y
			the x and y values for this report, in either
			relative or absolute device dependent units.
	    ie_TimeStamp
			the delta time since the last report, given
			not as a standard timestamp, but as the frame
			count in the TV_SECS field.

   RESULTS
	This function sets the error field in the iORequest, and fills
	the iORequest with the next game port events (but not partial
	events).

   SEE ALSO
	gameport.device/SetCType, gameport.device/SetTrigger

gameport.device/GPD_SETCTYPE                     gameport.device/GPD_SETCTYPE

   NAME
	GPD_SETCTYPE -- Set the current game port controller type

   FUNCTION
	This command sets the type of device at the game port, so that
	the signals at the port may be properly interpreted.  The port
	can also be turned off, so that no reports are generated.

	This command always executes immediately.

   IO REQUEST
	io_Message	mn_ReplyPort set if quick I/O is not possible
	io_Device	preset by the call to OpenDevice
	io_Unit		preset by the call to OpenDevice
	io_Command	GPD_SETCTYPE
	io_Flags	IOB_QUICK set if quick I/O is possible
	io_Length	1
	io_Data		the address of the byte variable describing
			the controller type, as per the equates in
			the gameport include file

gameport.device/GPD_SETTRIGGER                 gameport.device/GPD_SETTRIGGER

   NAME
	GPD_SETTRIGGER -- Set the conditions for a game port report

   FUNCTION
	This command sets what conditions must be met by a game
	port unit before a pending Read request will be satisfied.
	These conditions, called triggers, are independent -- that
	any one occurs is sufficient to queue a game port report to
	the Read queue.	 These conditions are inquired with
	AskTrigger.

	This command always executes immediately.

   IO REQUEST
	io_Message	mn_ReplyPort set if quick I/O is not possible
	io_Device	preset by the call to OpenDevice
	io_Unit		preset by the call to OpenDevice
	io_Command	GPD_SETTRIGGER
	io_Flags	IOB_QUICK set if quick I/O is possible
	io_Length	sizeof(gamePortTrigger)
	io_Data		a structure of type GamePortTrigger, which
			has the following elements
	    gpt_Keys -
		    GPTB_DOWNKEYS set if button down transitions
		    trigger a report, and GPTB_UPKEYS set if button up
		    transitions trigger a report
	    gpt_Timeout	-
		    a time which, if exceeded, triggers a report;
		    measured in vertical blank units (60/sec)
	    gpt_XDelta	-
		    a distance in x which, if exceeded, triggers a
		    report
	    gpt_YDelta	-
		    a distance in x which, if exceeded, triggers a
		    report