Annotation of uae/src/include/inputdevice.h, revision 1.1.1.5

1.1       root        1:  /*
                      2:   * UAE - The Un*x Amiga Emulator
                      3:   *
                      4:   * Joystick, mouse and keyboard emulation prototypes and definitions
                      5:   *
                      6:   * Copyright 1995 Bernd Schmidt
                      7:   * Copyright 2001-2002 Toni Wilen
                      8:   */
                      9: 
                     10: 
1.1.1.2   root       11: #define IDTYPE_JOYSTICK 0
                     12: #define IDTYPE_MOUSE 1
                     13: #define IDTYPE_KEYBOARD 2
                     14: 
                     15: struct inputdevice_functions {
                     16:     int (*init)(void);
                     17:     void (*close)(void);
1.1.1.3   root       18:     int (*acquire)(unsigned int,int);
                     19:     void (*unacquire)(unsigned int);
1.1.1.2   root       20:     void (*read)(void);
1.1.1.5 ! root       21:     int (*get_num)(void);
        !            22:     const char *(*get_name)(unsigned int);
        !            23:     int (*get_widget_num)(unsigned int);
1.1.1.3   root       24:     int (*get_widget_type)(unsigned int,unsigned int,char*,uae_u32*);
                     25:     int (*get_widget_first)(unsigned int,int);
1.1.1.2   root       26: };
                     27: extern struct inputdevice_functions inputdevicefunc_joystick;
                     28: extern struct inputdevice_functions inputdevicefunc_mouse;
                     29: extern struct inputdevice_functions inputdevicefunc_keyboard;
                     30: extern int pause_emulation;
                     31: 
                     32: struct uae_input_device_kbr_default {
                     33:     int scancode;
                     34:     int event;
                     35: };
                     36: 
                     37: #define IDEV_WIDGET_NONE 0
                     38: #define IDEV_WIDGET_BUTTON 1
                     39: #define IDEV_WIDGET_AXIS 2
                     40: #define IDEV_WIDGET_KEY 3
                     41: 
                     42: #define IDEV_MAPPED_AUTOFIRE_POSSIBLE 1
                     43: #define IDEV_MAPPED_AUTOFIRE_SET 2
                     44: 
                     45: #define ID_BUTTON_OFFSET 0
                     46: #define ID_BUTTON_TOTAL 32
                     47: #define ID_AXIS_OFFSET 32
                     48: #define ID_AXIS_TOTAL 32
                     49: 
                     50: extern int inputdevice_iterate (int devnum, int num, char *name, int *af);
                     51: extern int inputdevice_set_mapping (int devnum, int num, char *name, char *custom, int af, int sub);
                     52: extern int inputdevice_get_mapped_name (int devnum, int num, int *pflags, char *name, char *custom, int sub);
                     53: extern void inputdevice_copyconfig (struct uae_prefs *src, struct uae_prefs *dst);
                     54: extern void inputdevice_copy_single_config (struct uae_prefs *p, int src, int dst, int devnum);
                     55: extern void inputdevice_swap_ports (struct uae_prefs *p, int devnum);
                     56: extern void inputdevice_config_change (void);
                     57: extern int inputdevice_config_change_test (void);
                     58: extern int inputdevice_get_device_index (int devnum);
                     59: extern char *inputdevice_get_device_name (int type, int devnum);
                     60: extern int inputdevice_get_device_status (int devnum);
                     61: extern void inputdevice_set_device_status (int devnum, int enabled);
                     62: extern int inputdevice_get_device_total (int type);
                     63: extern int inputdevice_get_widget_num (int devnum);
                     64: extern int inputdevice_get_widget_type (int devnum, int num, char *name);
                     65: 
                     66: extern void input_get_default_mouse (struct uae_input_device *uid);
                     67: extern void input_get_default_joystick (struct uae_input_device *uid);
                     68: 
                     69: #define DEFEVENT(A, B, C, D, E, F) INPUTEVENT_ ## A,
                     70: enum inputevents {
                     71: INPUTEVENT_ZERO,
                     72: #include "inputevents.def"
                     73: INPUTEVENT_END
                     74: };
                     75: #undef DEFEVENT
                     76: 
                     77: extern void handle_cd32_joystick_cia (uae_u8, uae_u8);
                     78: extern uae_u8 handle_parport_joystick (int port, uae_u8 pra, uae_u8 dra);
                     79: extern uae_u8 handle_joystick_buttons (uae_u8);
                     80: extern int getbuttonstate (int joy, int button);
                     81: extern int getjoystate (int joy);
                     82: 
1.1       root       83: extern int needmousehack (void);
                     84: extern int mousehack_alive (void);
1.1.1.2   root       85: extern int mousehack_allowed (void);
                     86: 
1.1.1.3   root       87: extern void toggle_fullscreen (void);
                     88: 
1.1.1.2   root       89: extern void setmousebuttonstateall (int mouse, uae_u32 buttonbits, uae_u32 buttonmask);
                     90: extern void setjoybuttonstateall (int joy, uae_u32 buttonbits, uae_u32 buttonmask);
                     91: extern void setjoybuttonstate (int joy, int button, int state);
                     92: extern void setmousebuttonstate (int mouse, int button, int state);
                     93: extern void setjoystickstate (int joy, int axle, int state, int max);
                     94: void setmousestate (int mouse, int axis, int data, int isabs);
                     95: extern void inputdevice_updateconfig (struct uae_prefs *prefs);
                     96: 
                     97: extern int inputdevice_translatekeycode (int keyboard, int scancode, int state);
                     98: extern void inputdevice_setkeytranslation (struct uae_input_device_kbr_default *trans);
                     99: extern void handle_input_event (int nr, int state, int max, int autofire);
                    100: extern void inputdevice_do_keyboard (int code, int state);
1.1.1.4   root      101: extern void inputdevice_release_all_keys (void);
1.1       root      102: 
                    103: extern uae_u16 potgo_value;
                    104: extern uae_u16 POTGOR (void);
                    105: extern void POTGO (uae_u16 v);
                    106: extern uae_u16 POT0DAT (void);
                    107: extern uae_u16 POT1DAT (void);
                    108: extern void JOYTEST (uae_u16 v);
                    109: extern uae_u16 JOY0DAT (void);
                    110: extern uae_u16 JOY1DAT (void);
1.1.1.2   root      111: 
                    112: extern void inputdevice_vsync (void);
                    113: extern void inputdevice_hsync (void);
                    114: extern void inputdevice_reset (void);
                    115: 
                    116: extern void write_inputdevice_config (struct uae_prefs *p, FILE *f);
                    117: extern void read_inputdevice_config (struct uae_prefs *p, char *option, char *value);
                    118: extern void reset_inputdevice_config (struct uae_prefs *pr);
                    119: 
                    120: extern void inputdevice_init (void);
                    121: extern void inputdevice_close (void);
                    122: extern void inputdevice_default_prefs (struct uae_prefs *p);
                    123: 
                    124: extern void inputdevice_acquire (void);
                    125: extern void inputdevice_unacquire (void);
                    126: 
                    127: extern void indicator_leds (int num, int state);
                    128: 
                    129: extern void warpmode (int mode);
                    130: extern void pausemode (int mode);
                    131: 
                    132: extern void inputdevice_add_inputcode (int code, int state);
                    133: extern void inputdevice_handle_inputcode (void);
                    134: 
                    135: #define JSEM_KBDLAYOUT 0
                    136: #define JSEM_JOYS 100
                    137: #define JSEM_MICE 200
                    138: #define JSEM_END 300
                    139: #define JSEM_DECODEVAL(port,p) ((port) == 0 ? (p)->jport0 : (p)->jport1)
                    140: #define JSEM_ISNUMPAD(port,p) (jsem_iskbdjoy(port,p) == JSEM_KBDLAYOUT)
                    141: #define JSEM_ISCURSOR(port,p) (jsem_iskbdjoy(port,p) == JSEM_KBDLAYOUT + 1)
                    142: #define JSEM_ISSOMEWHEREELSE(port,p) (jsem_iskbdjoy(port,p) == JSEM_KBDLAYOUT + 2)
                    143: #define JSEM_ISXARCADE1(port,p) (jsem_iskbdjoy(port,p) == JSEM_KBDLAYOUT + 3)
                    144: #define JSEM_ISXARCADE2(port,p) (jsem_iskbdjoy(port,p) == JSEM_KBDLAYOUT + 4)
                    145: #define JSEM_LASTKBD 5
                    146: #define JSEM_ISANYKBD(port,p) (jsem_iskbdjoy(port,p) >= JSEM_KBDLAYOUT && jsem_iskbdjoy(port,p) < JSEM_KBDLAYOUT + JSEM_LASTKBD)
                    147: extern int compatibility_device[2];
                    148: 
                    149: extern int jsem_isjoy (int port, struct uae_prefs *p);
                    150: extern int jsem_ismouse (int port, struct uae_prefs *p);
                    151: extern int jsem_iskbdjoy (int port, struct uae_prefs *p);
                    152: 
                    153: extern int inputdevice_uaelib (char*, char*);

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.