aboutsummaryrefslogtreecommitdiff
path: root/src/raw/services/irrst.rs
blob: 89815916b1a41189f3083ecc59377f3aac5e3aa7 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
use ::{Result, Handle};
use ::raw::types::*;

use super::hid::circlePosition;

#[link(name = "ctru")]
extern "C" {
    pub static irrstMemHandle: Handle;
    pub static irrstSharedMem: *mut vu32;

    pub fn irrstInit(sharedMem: *mut u32) -> Result;
    pub fn irrstExit() -> ();
    pub fn irrstScanInput() -> ();
    pub fn irrstKeysHeld() -> u32;
    pub fn irrstCstickRead(pos: *mut circlePosition) -> ();
    pub fn irrstWaitForEvent(nextEvent: u8) -> ();
    pub fn IRRST_GetHandles(outMemHandle: *mut Handle,
                            outEventHandle: *mut Handle) -> Result;
    pub fn IRRST_Initialize(unk1: u32, unk2: u8) -> Result;
    pub fn IRRST_Shutdown() -> Result;
}