home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Frozen Fish 1: Amiga
/
FrozenFish-Apr94.iso
/
bbs
/
cbm
/
os-include.lha
/
os-include
/
libraries
/
lowlevel.h
< prev
next >
Wrap
C/C++ Source or Header
|
1993-10-15
|
8KB
|
249 lines
#ifndef LIBRARIES_LOWLEVEL_H
#define LIBRARIES_LOWLEVEL_H
/*
** $VER: lowlevel.h 40.6 (30.7.93)
** Includes Release 40.15
**
** lowlevel.library interface structures and definitions.
**
** (C) Copyright 1993 Commodore-Amiga, Inc.
** All Rights Reserved
*/
/*****************************************************************************/
#ifndef EXEC_TYPES_H
#include <exec/types.h>
#endif
#ifndef UTILITY_TAGITEM_H
#include <utility/tagitem.h>
#endif
/*****************************************************************************/
/* structure for use with QueryKeys() */
struct KeyQuery
{
UWORD kq_KeyCode;
BOOL kq_Pressed;
};
/*****************************************************************************/
/* bits in the return value of GetKey() */
#define LLKB_LSHIFT 16
#define LLKB_RSHIFT 17
#define LLKB_CAPSLOCK 18
#define LLKB_CONTROL 19
#define LLKB_LALT 20
#define LLKB_RALT 21
#define LLKB_LAMIGA 22
#define LLKB_RAMIGA 23
#define LLKF_LSHIFT (1<<LLKB_LSHIFT)
#define LLKF_RSHIFT (1<<LLKB_RSHIFT)
#define LLKF_CAPSLOCK (1<<LLKB_CAPSLOCK)
#define LLKF_CONTROL (1<<LLKB_CONTROL)
#define LLKF_LALT (1<<LLKB_LALT)
#define LLKF_RALT (1<<LLKB_RALT)
#define LLKF_LAMIGA (1<<LLKB_LAMIGA)
#define LLKF_RAMIGA (1<<LLKB_RAMIGA)
/*****************************************************************************/
/* Tags for SetJoyPortAttrs() */
#define SJA_Dummy (TAG_USER+0xc00100)
#define SJA_Type (SJA_Dummy+1) /* force type to mouse, joy, game cntrlr */
#define SJA_Reinitialize (SJA_Dummy+2) /* free potgo bits, reset to autosense */
/* Controller types for SJA_Type tag */
#define SJA_TYPE_AUTOSENSE 0
#define SJA_TYPE_GAMECTLR 1
#define SJA_TYPE_MOUSE 2
#define SJA_TYPE_JOYSTK 3
/*****************************************************************************/
/* ReadJoyPort() return value definitions */
/* Port types */
#define JP_TYPE_NOTAVAIL (00<<28) /* port data unavailable */
#define JP_TYPE_GAMECTLR (01<<28) /* port has game controller */
#define JP_TYPE_MOUSE (02<<28) /* port has mouse */
#define JP_TYPE_JOYSTK (03<<28) /* port has joystick */
#define JP_TYPE_UNKNOWN (04<<28) /* port has unknown device */
#define JP_TYPE_MASK (15<<28) /* controller type */
/* Button types, valid for all types except JP_TYPE_NOTAVAIL */
#define JPB_BUTTON_BLUE 23 /* Blue - Stop; Right Mouse */
#define JPB_BUTTON_RED 22 /* Red - Select; Left Mouse; Joystick Fire */
#define JPB_BUTTON_YELLOW 21 /* Yellow - Repeat */
#define JPB_BUTTON_GREEN 20 /* Green - Shuffle */
#define JPB_BUTTON_FORWARD 19 /* Charcoal - Forward */
#define JPB_BUTTON_REVERSE 18 /* Charcoal - Reverse */
#define JPB_BUTTON_PLAY 17 /* Grey - Play/Pause; Middle Mouse */
#define JPF_BUTTON_BLUE (1<<JPB_BUTTON_BLUE)
#define JPF_BUTTON_RED (1<<JPB_BUTTON_RED)
#define JPF_BUTTON_YELLOW (1<<JPB_BUTTON_YELLOW)
#define JPF_BUTTON_GREEN (1<<JPB_BUTTON_GREEN)
#define JPF_BUTTON_FORWARD (1<<JPB_BUTTON_FORWARD)
#define JPF_BUTTON_REVERSE (1<<JPB_BUTTON_REVERSE)
#define JPF_BUTTON_PLAY (1<<JPB_BUTTON_PLAY)
#define JP_BUTTON_MASK (JPF_BUTTON_BLUE|JPF_BUTTON_RED|JPF_BUTTON_YELLOW|JPF_BUTTON_GREEN|JPF_BUTTON_FORWARD|JPF_BUTTON_REVERSE|JPF_BUTTON_PLAY)
/* Direction types, valid for JP_TYPE_GAMECTLR and JP_TYPE_JOYSTK */
#define JPB_JOY_UP 3
#define JPB_JOY_DOWN 2
#define JPB_JOY_LEFT 1
#define JPB_JOY_RIGHT 0
#define JPF_JOY_UP (1<<JPB_JOY_UP)
#define JPF_JOY_DOWN (1<<JPB_JOY_DOWN)
#define JPF_JOY_LEFT (1<<JPB_JOY_LEFT)
#define JPF_JOY_RIGHT (1<<JPB_JOY_RIGHT)
#define JP_DIRECTION_MASK (JPF_JOY_UP|JPF_JOY_DOWN|JPF_JOY_LEFT|JPF_JOY_RIGHT)
/* Mouse position reports, valid for JP_TYPE_MOUSE */
#define JP_MHORZ_MASK (255<<0) /* horzizontal position */
#define JP_MVERT_MASK (255<<8) /* vertical position */
#define JP_MOUSE_MASK (JP_MHORZ_MASK|JP_MVERT_MASK)
/* Obsolete ReadJoyPort() definitions, here for source code compatibility only.
* Please do NOT use in new code.
*/
#define JPB_BTN1 JPB_BUTTON_BLUE
#define JPF_BTN1 JPF_BUTTON_BLUE
#define JPB_BTN2 JPB_BUTTON_RED
#define JPF_BTN2 JPF_BUTTON_RED
#define JPB_BTN3 JPB_BUTTON_YELLOW
#define JPF_BTN3 JPF_BUTTON_YELLOW
#define JPB_BTN4 JPB_BUTTON_GREEN
#define JPF_BTN4 JPF_BUTTON_GREEN
#define JPB_BTN5 JPB_BUTTON_FORWARD
#define JPF_BTN5 JPF_BUTTON_FORWARD
#define JPB_BTN6 JPB_BUTTON_REVERSE
#define JPF_BTN6 JPF_BUTTON_REVERSE
#define JPB_BTN7 JPB_BUTTON_PLAY
#define JPF_BTN7 JPF_BUTTON_PLAY
#define JPB_UP JPB_JOY_UP
#define JPF_UP JPF_JOY_UP
#define JPB_DOWN JPB_JOY_DOWN
#define JPF_DOWN JPF_JOY_DOWN
#define JPB_LEFT JPB_JOY_LEFT
#define JPF_LEFT JPF_JOY_LEFT
#define JPB_RIGHT JPB_JOY_RIGHT
#define JPF_RIGHT JPF_JOY_RIGHT
/*****************************************************************************/
/* Tags for SystemControl() */
#define SCON_Dummy (TAG_USER+0x00C00000)
#define SCON_TakeOverSys (SCON_Dummy+0)
#define SCON_KillReq (SCON_Dummy+1)
#define SCON_CDReboot (SCON_Dummy+2)
#define SCON_StopInput (SCON_Dummy+3)
#define SCON_AddCreateKeys (SCON_Dummy+4)
#define SCON_RemCreateKeys (SCON_Dummy+5)
/* Reboot control values for use with SCON_CDReboot tag */
#define CDReboot_On 1
#define CDReboot_Off 0
#define CDReboot_Default 2
/*****************************************************************************/
/* Rawkey codes returned when using SCON_AddCreateKeys with SystemControl() */
#define RAWKEY_PORT0_BUTTON_BLUE 0x72
#define RAWKEY_PORT0_BUTTON_RED 0x78
#define RAWKEY_PORT0_BUTTON_YELLOW 0x77
#define RAWKEY_PORT0_BUTTON_GREEN 0x76
#define RAWKEY_PORT0_BUTTON_FORWARD 0x75
#define RAWKEY_PORT0_BUTTON_REVERSE 0x74
#define RAWKEY_PORT0_BUTTON_PLAY 0x73
#define RAWKEY_PORT0_JOY_UP 0x79
#define RAWKEY_PORT0_JOY_DOWN 0x7A
#define RAWKEY_PORT0_JOY_LEFT 0x7C
#define RAWKEY_PORT0_JOY_RIGHT 0x7B
#define RAWKEY_PORT1_BUTTON_BLUE 0x172
#define RAWKEY_PORT1_BUTTON_RED 0x178
#define RAWKEY_PORT1_BUTTON_YELLOW 0x177
#define RAWKEY_PORT1_BUTTON_GREEN 0x176
#define RAWKEY_PORT1_BUTTON_FORWARD 0x175
#define RAWKEY_PORT1_BUTTON_REVERSE 0x174
#define RAWKEY_PORT1_BUTTON_PLAY 0x173
#define RAWKEY_PORT1_JOY_UP 0x179
#define RAWKEY_PORT1_JOY_DOWN 0x17A
#define RAWKEY_PORT1_JOY_LEFT 0x17C
#define RAWKEY_PORT1_JOY_RIGHT 0x17B
#define RAWKEY_PORT2_BUTTON_BLUE 0x272
#define RAWKEY_PORT2_BUTTON_RED 0x278
#define RAWKEY_PORT2_BUTTON_YELLOW 0x277
#define RAWKEY_PORT2_BUTTON_GREEN 0x276
#define RAWKEY_PORT2_BUTTON_FORWARD 0x275
#define RAWKEY_PORT2_BUTTON_REVERSE 0x274
#define RAWKEY_PORT2_BUTTON_PLAY 0x273
#define RAWKEY_PORT2_JOY_UP 0x279
#define RAWKEY_PORT2_JOY_DOWN 0x27A
#define RAWKEY_PORT2_JOY_LEFT 0x27C
#define RAWKEY_PORT2_JOY_RIGHT 0x27B
#define RAWKEY_PORT3_BUTTON_BLUE 0x372
#define RAWKEY_PORT3_BUTTON_RED 0x378
#define RAWKEY_PORT3_BUTTON_YELLOW 0x377
#define RAWKEY_PORT3_BUTTON_GREEN 0x376
#define RAWKEY_PORT3_BUTTON_FORWARD 0x375
#define RAWKEY_PORT3_BUTTON_REVERSE 0x374
#define RAWKEY_PORT3_BUTTON_PLAY 0x373
#define RAWKEY_PORT3_JOY_UP 0x379
#define RAWKEY_PORT3_JOY_DOWN 0x37A
#define RAWKEY_PORT3_JOY_LEFT 0x37C
#define RAWKEY_PORT3_JOY_RIGHT 0x37B
/*****************************************************************************/
/* Return values for GetLanguageSelection() */
#define LANG_UNKNOWN 0
#define LANG_AMERICAN 1 /* American English */
#define LANG_ENGLISH 2 /* British English */
#define LANG_GERMAN 3
#define LANG_FRENCH 4
#define LANG_SPANISH 5
#define LANG_ITALIAN 6
#define LANG_PORTUGUESE 7
#define LANG_DANISH 8
#define LANG_DUTCH 9
#define LANG_NORWEGIAN 10
#define LANG_FINNISH 11
#define LANG_SWEDISH 12
#define LANG_JAPANESE 13
#define LANG_CHINESE 14
#define LANG_ARABIC 15
#define LANG_GREEK 16
#define LANG_HEBREW 17
#define LANG_KOREAN 18
/*****************************************************************************/
#endif /* LIBRARIES_LOWLEVEL_H */