Module services

Source
Expand description

OS services used to handle system-specific functionality.

Most of the 3DS console’s functionalities (when writing user-land homebrew) are accessible via services, which need to be initialized before accessing any particular feature.

To ensure safety while using the underlying services, ctru-rs leverages Rust’s lifetime model. After initializing the handle for a specific service (e.g. Apt) the service will be accessible as long as there is at least one handle “alive”. As such, handles should be dropped after the use of a specific service. This is particularly important for services which are necessary for functionality “outside” their associated methods, such as RomFS, which creates an accessible virtual filesystem, or Soc, which enables all network communications via sockets.

In ctru-rs some services only allow a single handle to be created at a time, to ensure a safe and controlled environment.

Modules§

ac
The Automatic Connection (AC) service handles Wi-Fi and network settings. It can:
am
Application Manager service.
apt
Applet service.
cam
Camera service.
cfgu
System Configuration service.
fs
FileSystem service.
gfx
Graphics service.
gspgpu
GSPGPU service
hid
Human Interface Device service.
ir_user
IR (Infrared) User Service.
ndsp
NDSP (Audio) service.
ps
Process Services.
ptm
Power-Time service.
romfs
Read-Only Memory FileSystem service.
soc
Network Socket service.
sslc
SSLC (TLS) service.
svc
Syscall APIs
uds
UDS (local networking) service.