{"id":14991197,"url":"https://github.com/xboxdev/nxdk","last_synced_at":"2025-05-15T13:07:07.836Z","repository":{"id":37617230,"uuid":"48426404","full_name":"XboxDev/nxdk","owner":"XboxDev","description":"The cross-platform, open-source SDK to develop for original Xbox: *new* xdk","archived":false,"fork":false,"pushed_at":"2025-05-14T14:39:37.000Z","size":16684,"stargazers_count":493,"open_issues_count":107,"forks_count":73,"subscribers_count":33,"default_branch":"master","last_synced_at":"2025-05-14T15:40:36.960Z","etag":null,"topics":["3d","compiler","hacktoberfest","homebrew","linker","llvm","nxdk","shaders","toolchain","xbox","xboxkrnl","xiso"],"latest_commit_sha":null,"homepage":"","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/XboxDev.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSES/Apache-2.0.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2015-12-22T10:43:15.000Z","updated_at":"2025-05-14T14:39:41.000Z","dependencies_parsed_at":"2024-09-10T23:25:20.549Z","dependency_job_id":"b2cc78dc-b8cc-48b5-8594-234d57ddabf0","html_url":"https://github.com/XboxDev/nxdk","commit_stats":{"total_commits":737,"total_committers":26,"mean_commits":"28.346153846153847","dds":"0.48168249660786977","last_synced_commit":"f133d5cca31dbe07ef5285046cd93429ce907285"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/XboxDev%2Fnxdk","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/XboxDev%2Fnxdk/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/XboxDev%2Fnxdk/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/XboxDev%2Fnxdk/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/XboxDev","download_url":"https://codeload.github.com/XboxDev/nxdk/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254346624,"owners_count":22055808,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["3d","compiler","hacktoberfest","homebrew","linker","llvm","nxdk","shaders","toolchain","xbox","xboxkrnl","xiso"],"created_at":"2024-09-24T14:21:43.500Z","updated_at":"2025-05-15T13:07:02.825Z","avatar_url":"https://github.com/XboxDev.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"nxdk - *the new open source xdk*\n================================\nnxdk is a software development kit for the original Xbox. nxdk is a revitalization of [OpenXDK](https://web.archive.org/web/20170624051336/http://openxdk.sourceforge.net:80/).\nIt is maintained by the [XboxDev](https://github.com/XboxDev/XboxDev) community.\n\nNotable features:\n- Portable toolchain that works on modern versions of Windows, macOS and Linux.\n- No complicated cross-compiling or big library dependencies! Builds with `make` and just needs standard tools and llvm.\n- Modern C / C++ standards and compiler features.\n- Supports popular APIs like Windows API and BSD sockets.\n- SDL2 support for input, audio and 2D graphics.\n- Custom API for 3D graphics using NVIDIA-designed shader-languages (with additional Xbox extensions).\n- Open-Source drivers which can be modified to get the most out of the hardware.\n- Modifiable startup code, for as much system control as necessary.\n- Supported by an active community that can help with problems and responds to bug reports.\n\nBuild Status\n------\n![CI Status for \"Build Samples\"](https://github.com/XboxDev/nxdk/actions/workflows/build_samples.yml/badge.svg)\n\nStatus\n------\nWhile nxdk still is in early stages of development, it can already be used in many projects.\nTake a look at the [list of projects](https://github.com/XboxDev/nxdk/wiki/Projects-using-nxdk) that are build on top of nxdk. Additionally, the [provided samples](https://github.com/XboxDev/nxdk/tree/master/samples) show how to use common features.\n\nGetting Started\n---------------\n### Prerequisites\nYou will need the following tools:\n- GNU make\n- [clang](http://clang.llvm.org/)\n- [GNU bison](https://www.gnu.org/software/bison/) and [flex](http://flex.sourceforge.net/)\n- [lld](http://lld.llvm.org/)\n- [Git](http://git-scm.com/)\n- [CMake](https://cmake.org/)\n\nOS-specific instructions for installing these prerequisites can be found in the [Wiki](https://github.com/XboxDev/nxdk/wiki/Install-the-Prerequisites)\n\n### Download nxdk\n    git clone --recursive https://github.com/XboxDev/nxdk.git\n\n### Build Samples\nSamples are easily built by running the activation script `bin/activate`, which will spawn a shell that is fully set up to start using nxdk, and then running the Makefile in one of the sample directories. Details can be found in the [Wiki](https://github.com/XboxDev/nxdk/wiki/Build-a-Sample). nxdk also supports automatic [creation of ISO files](https://github.com/XboxDev/nxdk/wiki/Create-an-XISO).\n\nNext Steps\n----------\nCopy one of the sample directories to get started. You can copy it anywhere you like. Run nxdk's activation script `bin/activate`, then, in the directory of your program, you can simply run `make`.\n\nCredits\n-------\n- [OpenXDK](https://web.archive.org/web/20170624051336/http://openxdk.sourceforge.net:80/) is the inspiration for nxdk, and large parts of it have been reused. (License: MIT)\n- Large parts of [pbkit](https://web.archive.org/web/20141024145308/http://forums.xbox-scene.com/index.php?/topic/573524-pbkit/), by openxdkman, are included, with modifications. (License: MIT)\n- A network stack is included based on [lwIP](http://savannah.nongnu.org/projects/lwip/) (License: Modified BSD)\n- A libc is included based on [PDCLib](https://github.com/DevSolar/pdclib) (License: CC0)\n- Large parts of the runtime library are derived from LLVM's [compiler-rt](https://compiler-rt.llvm.org/) library (License: MIT)\n- vp20compiler is based on nvvertparse.c from [Mesa](http://www.mesa3d.org/) (License: MIT)\n- fp20compiler is based on nvparse from the [NVIDIA SDK 9.52](https://www.nvidia.com/object/sdk-9.html).\n- The [NVIDIA Cg compiler](https://developer.nvidia.com/cg-toolkit) is bundled.\n- extract-xiso developed by in et al. (License: BSD)\n\nCode Overview\n-------------\n* `lib/hal` - Barebones Hardware Abstraction Layer for the Xbox, from OpenXDK.\n* `lib/net` - Network stack for the Xbox based on lwIP.\n* `lib/pdclib` - Xbox port of PDCLib, a CC0-licensed C standard library.\n* `lib/pbkit` - A low level library for interfacing with the Xbox GPU.\n* `lib/sdl` - Xbox ports of SDL2 and SDL_ttf.\n* `lib/usb` - USB support from OpenXDK. Hacked together parts of an old Linux OHCI stack.\n* `lib/winapi` - Xbox specific implementations of common useful WinAPI-functions.\n* `lib/xboxkrnl` - Header and import library for interfacing with the Xbox kernel.\n* `lib/xboxrt` - Miscellaneous functionality for debugging etc.\n* `tools/cxbe` - Simple converter for PE executables to the Xbox executable format, from OpenXDK.\n* `tools/fp20compiler` - Translates register combiner descriptions to Xbox pushbuffer commands.\n* `tools/vp20compiler` - Translates vertex program assembly to Xbox microcode.\n* `tools/extract-xiso` - Generates and extracts ISO images compatible with the Xbox (and XQEMU).\n* `samples/` - Sample applications to get started.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fxboxdev%2Fnxdk","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fxboxdev%2Fnxdk","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fxboxdev%2Fnxdk/lists"}