2 An open source PlayStation 4 SDK.
4 ## Building and installing
5 Just run `make` on the `PS4-SDK` directory to build the library.
7 Then create an environment variable called, `PS4SDK` which points to the base directory of the repository, using the Unix path style; for example:
9 /C/Users/Chris/Documents/GitHub/PS4-SDK
11 You must make sure that your compiler supports the System V AMD64 ABI calling convention. PS4-SDK relies on this for compatibility with Sony's functions and system calls.
14 At the moment, it is primarily focused on the kernel. For example, [all semaphore system calls have been implemented](https://github.com/CTurt/PS4-SDK/blob/master/source/semaphore.c), from 549 to 556.
16 However, using function pointers and the `RESOLVE` macro, we can call functions from other modules. For example, [the socket functions](https://github.com/CTurt/PS4-SDK/blob/master/source/network.c) from `libSceNet.sprx`.
19 Whilst the SDK isn't capable of most basic functionality yet, such as displaying graphics, or receiving controller input, it is a solid foundation which will be improved upon over time.
22 `hello` - Load libc module and perform `getpid` system call
24 `sockets` - Send a message over a TCP socket
26 `threads` - Create and wait for a thread to increment a variable
28 `camera` - Initialise the PlayStation Camera and capture 10 frames
30 `pad` - Read controller input (not finished)
32 `modules` - Load and dump a module
35 `directories` - List the contents of a directory
37 `files` - Read a file's size, and its contents
40 `list_devices` - List information about all USB devices connected
42 `storage` - Read raw image from a USB flash drive