1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
[]
= "pspsdk"
= ["GrayJack <gr41.j4ck@gmail.com>"]
= "0.0.2"
= "MPL-2.0-no-copyleft-exception"
= "2024"
= "build.rs"
= ["no-std", "embedded", "external-ffi-bindings"]
= ["psp", "pspsdk", "mips", "sdk"]
= ["/.cargo", "/.github", "/.idea", "/.vscode", "/examples"]
= "../README.md"
= "A SDK for creating PSP modules, including both PRX plugins and regular homebrew apps."
[]
= ["lib", "staticlib"]
[]
= { = "0.14.0" }
= { = "0.4.4", = ["alloc", "nightly"] }
= { = "../pspsdk-macros", = "0.0.1", = [] }
[]
= ["non-stub-code"]
# Enable kernel modules.
= ["use-stub-c"]
# Enable CFW modules.
= []
# Optimize for space instead of speed the basic C-functions required by the
# linker when such functions doesn't have a stub alternative. (memset, memcpy,
# memmove, strlen).
= []
# Use available stubs in the basic C-functions required by the linker when
# available (memset, memcpy, memmove, strlen).
#
# This is the default for kernel modules as the kernel libc will always be
# available. It is recommended to enable this feature when:
# - Creating EBOOT.PBP
# - Plugins and EBOOT.PBP using `cfw-api` enabled.
# - When enabling PAF functions (TODO)
= []
# Build with std support
= []
# Includes code that is not stub definition.
#
# Compile this library without this feature to have it as a stub provider.
# Useful to compile this as a static library for other projects.
= []
# For the following features, you can't enable more than one of them
# Also, they are more beneficial for CFW implementation, as the SystemControl
# CFW module requires the NIDs to be correct.
#
# For plugins and homebrew apps, they are never required as most moderns CFWs
# implement NID translation table for non-SystemControl modules.
#
# It may be required for signed homebrew apps (homebrew that works on OFW), but
# that is an edge case.
# Use PSP 1.00~3.73 NID on kernel modules
= []
# Use PSP 3.70~3.73 NID on kernel modules. Not all modules had this one, so far only sceGE and sceDisplay
= []
# Use PSP 3.80~3.93 NID on kernel modules
= []
# Use PSP 3.95~4.05 NID on kernel modules
= []
# Use PSP 4.20~4.21 NID on kernel modules
= []
# Use PSP 5.00~5.55 NID on kernel modules
= []
# Use PSP 5.70 NID on kernel modules
= []
# Use PSP 6.00~6.20 NID on kernel modules
= []
# Use PSP 6.30~6.39 NID on kernel modules
= []
# Use PSP 6.60~6.61 NID on kernel modules (6.61 didn't change NID of exported items)
= []
# Use PSPemu 3.65 NID on kernel modules
= ["psp_660"]
[]
= "mipsel-sony-psp"
= ["kernel"]
= ["-Zunstable-options", "--show-type-layout"]
= [
"-Zbuild-std=core,alloc,compiler_builtins,panic_unwind,panic_abort",
]
[]
= true