sdk-core
v2026.11.05
PS2 SDK - core tier (build-critical EE/IOP modules)
Toggle main menu visibility
Loading...
Searching...
No Matches
sio2man.h
Go to the documentation of this file.
1
/*
2
# _____ ___ ____ ___ ____
3
# ____| | ____| | | |____|
4
# | ___| |____ ___| ____| | \ PS2DEV Open Source Project.
5
#-----------------------------------------------------------------------
6
# Copyright (c) 2003 Marcus R. Brown <mrbrown@0xd6.org>
7
# Licenced under Academic Free License version 2.0
8
# Review ps2sdk README & LICENSE files for further details.
9
*/
10
17
18
#ifndef __SIO2MAN_H__
19
#define __SIO2MAN_H__
20
21
#include <types.h>
22
#include <
irx.h
>
23
24
#ifdef __cplusplus
25
extern
"C"
{
26
#endif
27
28
struct
_sio2_dma_arg
{
// size 12
29
void
*addr;
30
int
size;
31
int
count;
32
};
33
34
typedef
struct
{
35
u32 stat6c;
36
37
u32 port_ctrl1[4];
38
u32 port_ctrl2[4];
39
40
u32 stat70;
41
42
u32 regdata[16];
43
44
u32 stat74;
45
46
u32 in_size;
47
u32 out_size;
48
u8 *in;
49
u8 *out;
50
51
struct
_sio2_dma_arg
in_dma;
52
struct
_sio2_dma_arg
out_dma;
53
}
sio2_transfer_data_t
;
54
55
extern
void
sio2_ctrl_set(u32 val);
56
extern
u32 sio2_ctrl_get(
void
);
57
extern
u32 sio2_stat6c_get(
void
);
58
extern
void
sio2_portN_ctrl1_set(
int
N, u32 val);
59
extern
u32 sio2_portN_ctrl1_get(
int
N);
60
extern
void
sio2_portN_ctrl2_set(
int
N, u32 val);
61
extern
u32 sio2_portN_ctrl2_get(
int
N);
62
extern
u32 sio2_stat70_get(
void
);
63
extern
void
sio2_regN_set(
int
N, u32 val);
64
extern
u32 sio2_regN_get(
int
N);
65
extern
u32 sio2_stat74_get(
void
);
66
extern
void
sio2_unkn78_set(u32 val);
67
extern
u32 sio2_unkn78_get(
void
);
68
extern
void
sio2_unkn7c_set(u32 val);
69
extern
u32 sio2_unkn7c_get(
void
);
70
extern
void
sio2_data_out(u8 val);
71
extern
u8 sio2_data_in(
void
);
72
extern
void
sio2_stat_set(u32 val);
73
extern
u32 sio2_stat_get(
void
);
74
extern
void
sio2_pad_transfer_init(
void
);
75
extern
void
sio2_mc_transfer_init(
void
);
76
extern
int
sio2_transfer(
sio2_transfer_data_t
*td);
77
78
#define sio2man_IMPORTS_start DECLARE_IMPORT_TABLE(sio2man, 1, 1)
79
#define sio2man_IMPORTS_end END_IMPORT_TABLE
80
81
#define I_sio2_ctrl_set DECLARE_IMPORT(4, sio2_ctrl_set)
82
#define I_sio2_ctrl_get DECLARE_IMPORT(5, sio2_ctrl_get)
83
#define I_sio2_stat6c_get DECLARE_IMPORT(6, sio2_stat6c_get)
84
#define I_sio2_portN_ctrl1_set DECLARE_IMPORT(7, sio2_portN_ctrl1_set)
85
#define I_sio2_portN_ctrl1_get DECLARE_IMPORT(8, sio2_portN_ctrl1_get)
86
#define I_sio2_portN_ctrl2_set DECLARE_IMPORT(9, sio2_portN_ctrl2_set)
87
#define I_sio2_portN_ctrl2_get DECLARE_IMPORT(10, sio2_portN_ctrl2_get)
88
#define I_sio2_stat70_get DECLARE_IMPORT(11, sio2_stat70_get)
89
#define I_sio2_regN_set DECLARE_IMPORT(12, sio2_regN_set)
90
#define I_sio2_regN_get DECLARE_IMPORT(13, sio2_regN_get)
91
#define I_sio2_stat74_get DECLARE_IMPORT(14, sio2_stat74_get)
92
#define I_sio2_unkn78_set DECLARE_IMPORT(15, sio2_unkn78_set)
93
#define I_sio2_unkn78_get DECLARE_IMPORT(16, sio2_unkn78_get)
94
#define I_sio2_unkn7c_set DECLARE_IMPORT(17, sio2_unkn7c_set)
95
#define I_sio2_unkn7c_get DECLARE_IMPORT(18, sio2_unkn7c_get)
96
#define I_sio2_data_out DECLARE_IMPORT(19, sio2_data_out)
97
#define I_sio2_data_in DECLARE_IMPORT(20, sio2_data_in)
98
#define I_sio2_stat_set DECLARE_IMPORT(21, sio2_stat_set)
99
#define I_sio2_stat_get DECLARE_IMPORT(22, sio2_stat_get)
100
#define I_sio2_pad_transfer_init DECLARE_IMPORT(23, sio2_pad_transfer_init)
101
#define I_sio2_mc_transfer_init DECLARE_IMPORT(24, sio2_mc_transfer_init)
102
#define I_sio2_transfer DECLARE_IMPORT(25, sio2_transfer)
103
104
#ifdef __cplusplus
105
}
106
#endif
107
108
#endif
/* __SIO2MAN_H__ */
irx.h
_sio2_dma_arg
Definition
sio2man.h:28
sio2_transfer_data_t
Definition
sio2man.h:34
core
sio2man
include
sio2man.h
Generated by
1.18.0