Homebrew 3DS SDK fully written in Zig

Hi! Lurker over here for quite some time that finally decided to sign up :smiley:

I’ve been working these last few months in a homebrew 3DS SDK fully written in everyone’s favourite programming language, Zig. I must say, being able to literally go from zero to something is quite amazing as with a C-based setup I’d need to setup complex cross-compilers and use make, cmake (which I despise both) or meson (somewhat better imo).

Some cool features that are currently implemented or in progress include a full graphics api acting as a GPU driver, a shader assembler for the GPU shader ISA, a comptime IPC command packer and unpacker, a lot of services implemented on top of the IPC layer, multiple tools related to the 3DS and many more things that I may not remember :sweat_smile:

It can currently be used as-is but I’m waiting for zig 0.16 to release (even if it takes months) so I can take advantage of the juicy new Io interface to make the standard library as useful as possible for downstream users. After that I’ll make a proper release with as much docs as possible.

This is my first proper “big” OSS project, any amount of feedback is welcome!

10 Likes

I must say I really like your API design :slight_smile:

1 Like

Thanks! It’s very heavily inspired by vk as I love how powerful it can be, even though it can be quite verbose sometimes :stuck_out_tongue:

2 Likes