In conjunction with his self-professed affinity for sharing source code, John Carmack has open-sourced most of the major id Software engines under the GNU General Public License. Historically, the source code for each engine has been released once the code base is 5 years old. Consequently, many home grown projects have sprung up porting the code to different platforms, cleaning up the source code, or providing major modifications to the core engine. "Wolfenstein 3D", "DOOM" and "Quake" engine ports are ubiquitous to nearly all platforms capable of running games, such as hand-held PCs, iPods, the PSP, the Nintendo DS and more. Impressive core modifications include DarkPlaces which adds stencil shadow volumes into the original "Quake" engine along with a more efficient network protocol. Another such project is ioquake3, which maintains a goal of cleaning up the source code, adding features and fixing bugs. Even earlier id Software code, namely for "Hovertank 3D" and "Catacomb 3D", was released in June 2014 by Flat Rock Software.