PS2SDK
PS2 Homebrew Libraries
xsio2man.h
Go to the documentation of this file.
1 /*
2 # _____ ___ ____ ___ ____
3 # ____| | ____| | | |____|
4 # | ___| |____ ___| ____| | \ PS2DEV Open Source Project.
5 #-----------------------------------------------------------------------
6 # Copyright 2001-2004, ps2dev - http://www.ps2dev.org
7 # Licenced under Academic Free License version 2.0
8 # Review ps2sdk README & LICENSE files for further details.
9 */
10 
17 #ifndef __XSIO2MAN_H__
18 #define __XSIO2MAN_H__
19 
20 #include <sio2man.h>
21 
22 #ifdef __cplusplus
23 extern "C" {
24 #endif
25 
26 typedef int (*sio2_mtap_change_slot_cb_t)(s32 *status);
27 typedef int (*sio2_mtap_get_slot_max_cb_t)(int port);
28 typedef int (*sio2_mtap_get_slot_max2_cb_t)(int port);
29 typedef void (*sio2_mtap_update_slots_t)(void);
30 
31 extern void sio2_transfer_reset(void);
32 extern void sio2_ctrl_set2(u32 val);
33 extern u32 sio2_ctrl_get2(void);
34 extern u32 sio2_stat6c_get2(void);
35 extern void sio2_portN_ctrl1_set2(int N, u32 val);
36 extern u32 sio2_portN_ctrl1_get2(int N);
37 extern void sio2_portN_ctrl2_set2(int N, u32 val);
38 extern u32 sio2_portN_ctrl2_get2(int N);
39 extern u32 sio2_stat70_get2(void);
40 extern void sio2_regN_set2(int N, u32 val);
41 extern u32 sio2_regN_get2(int N);
42 extern u32 sio2_stat74_get2(void);
43 extern void sio2_unkn78_set2(u32 val);
44 extern u32 sio2_unkn78_get2(void);
45 extern void sio2_unkn7c_set2(u32 val);
46 extern u32 sio2_unkn7c_get2(void);
47 extern void sio2_data_out2(u8 val);
48 extern u8 sio2_data_in2(void);
49 extern void sio2_stat_set2(u32 val);
50 extern u32 sio2_stat_get2(void);
51 extern void sio2_pad_transfer_init2(void);
52 extern void sio2_mc_transfer_init2(void);
53 extern void sio2_mtap_transfer_init(void);
54 extern int sio2_transfer2(sio2_transfer_data_t *td);
55 extern void sio2_transfer_reset2(void);
56 extern void sio2_mtap_change_slot_set(sio2_mtap_change_slot_cb_t cb);
57 extern void sio2_mtap_get_slot_max_set(sio2_mtap_get_slot_max_cb_t cb);
58 extern void sio2_mtap_get_slot_max2_set(sio2_mtap_get_slot_max2_cb_t cb);
59 extern void sio2_mtap_update_slots_set(sio2_mtap_update_slots_t cb);
60 extern int sio2_mtap_change_slot(s32 *arg);
61 extern int sio2_mtap_get_slot_max(int port);
62 extern int sio2_mtap_get_slot_max2(int port);
63 extern void sio2_mtap_update_slots(void);
64 
65 #define xsio2man_IMPORTS_start DECLARE_IMPORT_TABLE(sio2man, 1, 2)
66 #define xsio2man_IMPORTS_end END_IMPORT_TABLE
67 
68 #ifndef NO_XSIO2MAN_IMPORTS
69 #define I_sio2_transfer_reset DECLARE_IMPORT(26, sio2_transfer_reset)
70 #define I_sio2_ctrl_set2 DECLARE_IMPORT(27, sio2_ctrl_set2)
71 #define I_sio2_ctrl_get2 DECLARE_IMPORT(28, sio2_ctrl_get2)
72 #define I_sio2_stat6c_get2 DECLARE_IMPORT(29, sio2_stat6c_get2)
73 #define I_sio2_portN_ctrl1_set2 DECLARE_IMPORT(30, sio2_portN_ctrl1_set2)
74 #define I_sio2_portN_ctrl1_get2 DECLARE_IMPORT(31, sio2_portN_ctrl1_get2)
75 #define I_sio2_portN_ctrl2_set2 DECLARE_IMPORT(32, sio2_portN_ctrl2_set2)
76 #define I_sio2_portN_ctrl2_get2 DECLARE_IMPORT(33, sio2_portN_ctrl2_get2)
77 #define I_sio2_stat70_get2 DECLARE_IMPORT(34, sio2_stat70_get2)
78 #define I_sio2_regN_set2 DECLARE_IMPORT(35, sio2_regN_set2)
79 #define I_sio2_regN_get2 DECLARE_IMPORT(36, sio2_regN_get2)
80 #define I_sio2_stat74_get2 DECLARE_IMPORT(37, sio2_stat74_get2)
81 #define I_sio2_unkn78_set2 DECLARE_IMPORT(38, sio2_unkn78_set2)
82 #define I_sio2_unkn78_get2 DECLARE_IMPORT(39, sio2_unkn78_get2)
83 #define I_sio2_unkn7c_set2 DECLARE_IMPORT(40, sio2_unkn7c_set2)
84 #define I_sio2_unkn7c_get2 DECLARE_IMPORT(41, sio2_unkn7c_get2)
85 #define I_sio2_data_out2 DECLARE_IMPORT(42, sio2_data_out2)
86 #define I_sio2_data_in2 DECLARE_IMPORT(43, sio2_data_in2)
87 #define I_sio2_stat_set2 DECLARE_IMPORT(44, sio2_stat_set2)
88 #define I_sio2_stat_get2 DECLARE_IMPORT(45, sio2_stat_get2)
89 #define I_sio2_pad_transfer_init2 DECLARE_IMPORT(46, sio2_pad_transfer_init2)
90 #define I_sio2_mc_transfer_init2 DECLARE_IMPORT(47, sio2_mc_transfer_init2)
91 #define I_sio2_mtap_transfer_init DECLARE_IMPORT(48, sio2_mtap_transfer_init)
92 #ifndef NO_XSIO2MAN_V2_CONFLICTING_IMPORTS
93 #define I_sio2_transfer2 DECLARE_IMPORT(49, sio2_transfer2)
94 #define I_sio2_transfer_reset2 DECLARE_IMPORT(50, sio2_transfer_reset2)
95 #define I_sio2_mtap_change_slot_set DECLARE_IMPORT(51, sio2_mtap_change_slot_set)
96 #define I_sio2_mtap_get_slot_max_set DECLARE_IMPORT(52, sio2_mtap_get_slot_max_set)
97 #define I_sio2_mtap_get_slot_max2_set DECLARE_IMPORT(53, sio2_mtap_get_slot_max2_set)
98 #define I_sio2_mtap_update_slots_set DECLARE_IMPORT(54, sio2_mtap_update_slots_set)
99 #define I_sio2_mtap_change_slot DECLARE_IMPORT(55, sio2_mtap_change_slot)
100 #define I_sio2_mtap_get_slot_max DECLARE_IMPORT(56, sio2_mtap_get_slot_max)
101 #define I_sio2_mtap_get_slot_max2 DECLARE_IMPORT(57, sio2_mtap_get_slot_max2)
102 #define I_sio2_mtap_update_slots DECLARE_IMPORT(58, sio2_mtap_update_slots)
103 #endif
104 #endif
105 
106 #ifdef __cplusplus
107 }
108 #endif
109 
110 #endif /* __XSIO2MAN_H__ */
sio2man.h
sio2_transfer_data_t
Definition: sio2man.h:33