aboutsummaryrefslogtreecommitdiff
path: root/ctru-rs
diff options
context:
space:
mode:
authorVivian Lim <[email protected]>2021-02-06 19:34:51 -0800
committerVivian Lim <[email protected]>2021-02-06 19:34:51 -0800
commit8b35effd3cd14843bb4d26f3566741d53fe97b76 (patch)
tree10e3a128542960efe0b6301005b5fbc0bd95382d /ctru-rs
parenttweaks to get it to attempt linking (diff)
downloadarchived-ctru-rs-8b35effd3cd14843bb4d26f3566741d53fe97b76.tar.xz
archived-ctru-rs-8b35effd3cd14843bb4d26f3566741d53fe97b76.zip
Support libctru 2.0
Diffstat (limited to 'ctru-rs')
-rw-r--r--ctru-rs/src/applets/swkbd.rs5
-rw-r--r--ctru-rs/src/console.rs2
-rw-r--r--ctru-rs/src/sdmc.rs4
-rw-r--r--ctru-rs/src/services/gspgpu.rs6
-rw-r--r--ctru-rs/src/thread.rs3
5 files changed, 11 insertions, 9 deletions
diff --git a/ctru-rs/src/applets/swkbd.rs b/ctru-rs/src/applets/swkbd.rs
index 1c14cab..5091539 100644
--- a/ctru-rs/src/applets/swkbd.rs
+++ b/ctru-rs/src/applets/swkbd.rs
@@ -1,6 +1,7 @@
use std::iter::once;
use std::mem;
use std::str;
+use std::convert::TryInto;
use libctru::{self, SwkbdState, swkbdInit, swkbdSetFeatures, swkbdSetHintText, swkbdInputText,
swkbdSetButton};
@@ -90,7 +91,7 @@ impl Swkbd {
/// (from 1-3).
pub fn init(keyboard_type: Kind, num_buttons: i32) -> Self {
unsafe {
- let mut state = Box::new(mem::uninitialized::<SwkbdState>());
+ let mut state = Box::new(SwkbdState::default());
swkbdInit(state.as_mut(), keyboard_type as u32, num_buttons, -1);
Swkbd { state }
}
@@ -127,7 +128,7 @@ impl Swkbd {
/// the output will be truncated but should still be well-formed UTF-8
pub fn get_bytes(&mut self, buf: &mut [u8]) -> Result<Button, Error> {
unsafe {
- match swkbdInputText(self.state.as_mut(), buf.as_mut_ptr(), buf.len()) {
+ match swkbdInputText(self.state.as_mut(), buf.as_mut_ptr(), buf.len().try_into().unwrap()) {
libctru::SWKBD_BUTTON_NONE => Err(self.parse_swkbd_error()),
libctru::SWKBD_BUTTON_LEFT => Ok(Button::Left),
libctru::SWKBD_BUTTON_MIDDLE => Ok(Button::Middle),
diff --git a/ctru-rs/src/console.rs b/ctru-rs/src/console.rs
index d1a22e6..eb8df6b 100644
--- a/ctru-rs/src/console.rs
+++ b/ctru-rs/src/console.rs
@@ -15,7 +15,7 @@ impl Console {
/// printing.
pub fn init(screen: Screen) -> Self {
unsafe {
- let mut context = Box::new(mem::uninitialized::<PrintConsole>());
+ let mut context = Box::new(PrintConsole::default());
consoleInit(screen.into(), context.as_mut());
Console { context, }
}
diff --git a/ctru-rs/src/sdmc.rs b/ctru-rs/src/sdmc.rs
index 6c435f1..de08a9a 100644
--- a/ctru-rs/src/sdmc.rs
+++ b/ctru-rs/src/sdmc.rs
@@ -3,7 +3,7 @@ pub struct Sdmc(());
impl Sdmc {
pub fn init() -> ::Result<Sdmc> {
unsafe {
- let r = ::libctru::sdmcInit();
+ let r = ::libctru::archiveMountSdmc();
if r < 0 {
Err(r.into())
} else {
@@ -15,6 +15,6 @@ impl Sdmc {
impl Drop for Sdmc {
fn drop(&mut self) {
- unsafe { ::libctru::sdmcExit() };
+ unsafe { ::libctru::archiveUnmountAll() };
}
}
diff --git a/ctru-rs/src/services/gspgpu.rs b/ctru-rs/src/services/gspgpu.rs
index b047493..e1fa12d 100644
--- a/ctru-rs/src/services/gspgpu.rs
+++ b/ctru-rs/src/services/gspgpu.rs
@@ -51,8 +51,8 @@ pub fn wait_for_event(ev: Event, discard_current: bool) {
}
}
-impl From<::libctru::GSPGPU_FramebufferFormats> for FramebufferFormat {
- fn from(g: ::libctru::GSPGPU_FramebufferFormats) -> Self {
+impl From<::libctru::GSPGPU_FramebufferFormat> for FramebufferFormat {
+ fn from(g: ::libctru::GSPGPU_FramebufferFormat) -> Self {
use self::FramebufferFormat::*;
match g {
::libctru::GSP_RGBA8_OES => Rgba8,
@@ -65,7 +65,7 @@ impl From<::libctru::GSPGPU_FramebufferFormats> for FramebufferFormat {
}
}
-impl From<FramebufferFormat> for ::libctru::GSPGPU_FramebufferFormats {
+impl From<FramebufferFormat> for ::libctru::GSPGPU_FramebufferFormat {
fn from(g: FramebufferFormat) -> Self {
use self::FramebufferFormat::*;
match g {
diff --git a/ctru-rs/src/thread.rs b/ctru-rs/src/thread.rs
index a194a3e..481e559 100644
--- a/ctru-rs/src/thread.rs
+++ b/ctru-rs/src/thread.rs
@@ -892,6 +892,7 @@ mod imp {
use std::mem;
use std::ptr;
use std::time::Duration;
+ use std::convert::TryInto;
use libc;
@@ -920,7 +921,7 @@ mod imp {
let handle = threadCreate(
Some(thread_func),
&*p as *const _ as *mut _,
- stack_size,
+ stack_size.try_into().unwrap(),
priority,
affinity,
false,