This article's factual accuracy may be compromised due to out-of-date information. Please update this article to reflect recent events or newly available information.(December 2011)
The Xbox Development Kit (XDK) is a software development kit created by Microsoft used to write software for the Xbox gaming system. The XDK includes libraries, a compiler, and various tools used to create software for the Xbox. The XDK has the option to integrate itself into Microsoft Visual Studio2002 or 2003. This is needed if one wants to develop applications or games for the Xbox. The XDK also includes a tool to record in-game footage, which has been widely used to create high-quality screenshots and trailers.
The Xbox BIOS is based on Win32, but does not have all of the resources or capabilities of the Windows NT operating system, (for example: neither DirectShow, registry, nor DLL are natively supported on the Xbox). Because of the constraints on the hardware and environment of the Xbox, all software development for the Xbox (and all video game consoles systems in general) are focused on reserving the limited resources that exist, the main limitation of which is the amount of available RAM.[1]
Compiling games and applications for the Xbox[edit]
The Xbox has four non-standard USB ports but the Xbox SDK does not contain a full USB stack, thus to add support for USB hardware devices, the developer would have to code the entire USB stack from scratch.
This is a list of XDK, Xbox hardware, and Xbox operating system specific limitations.
UDF (Universal Disk Format) file system limitation: The Xbox only supports UDF version 1.02 (designed for DVD-Video), which has a maximum file size of 1 GB (a DVD in a newer UDF version with a video that is larger than 1GB will not play), with the same applying to UDF/ISO hybrid formats (a.k.a. UDF Bridge format). A workaround is to burn discs in the ISO 9660 format. The ISO 9660 format has a 2GB (Gigabyte) maximum file size, which cannot be bypassed.[1]
The Xbox hard disk is formatted in FATX (File Allocation Table for Xbox) which has a 4GB (4096 Megabyte) maximum file size, and only supports file/folder names up to 42 characters, a maximum of 255 character full path, and a maximum number of 4096 files/folders in a single folder, plus in the root of each partition, the maximum number of files/folders is 256. FATX also does not support all standard ASCII characters in file/folder names (for example < > = ? : ; " * +, / \|¤ &).[1][2]
The USB flash drive reader/writer class used by the Xbox operating system has a few limitations as well. It is limited to USB flash drives and hard disks compatible with USB Mass Storage Device Class following the USB 1.1 standard, with a maximum size of 4 GB. It can read and write to FATX formatted flash drives, but can only read FAT12, FAT16 (including VFAT), and FAT32. NTFS formatted drives are not supported yet.[2]