TempleOS

Biblical-themed operating system created by Terry A. Davis

"J Operating System" redirects here. For the system used on mainframe computers in the 1960s, see J (operating system).

Operating system

TempleOS

TempleOS 5.03

Developer| Terry A. Davis
Written in| HolyC and x86 Assembly
Working state| Finished
Source model| Open-source
Initial release| 2005; 20 years ago (2005) (as J Operating System)
2013; 12 years ago (2013) (as TempleOS)
Latest release| 5.03 / November 20, 2017; 7 years ago (2017-11-20)
Repository|

* github.com/cia-foundation/TempleOS

Supported platforms| x64
Kernel type| Monolithic
Userland| UserCmdLine using HolyC,
Adam
Default
user interface| 640x480 16 Color Graphics, specifically created for TempleOS
License| Public domain
Official website| templeos.org

TempleOS (formerly J Operating System, LoseThos, and SparrowOS) is a biblical-themed lightweight operating system (OS) designed to be the Third Temple prophesized in the Bible. It was created by American computer programmer Terry A. Davis, who developed it alone over the course of a decade after a series of manic episodes that he later described as a revelation from God. TempleOS is an example of coding as an art form.

The system was characterized as a modern x86-64 Commodore 64, using an interface similar to a mixture of DOS and Turbo C. Davis proclaimed that the system's features, such as its 640x480 resolution, 16-color display, and single-voice audio, were designed according to explicit instructions from God.[1] It was programmed with an original variation of C/C++ (named HolyC) in place of BASIC, and included an original flight simulator, compiler, and kernel.

First released in 2005 as J Operating System, TempleOS was renamed in 2013 and was last updated in 2017.

## Background

[edit]

Main article: Terry A. Davis

Terry A. Davis

He began developing TempleOS circa 2003.[2] One of its early names was the "J Operating System" before renaming it to "LoseThos", a reference to a scene from the 1986 film Platoon.[1] In 2008, Davis wrote that LoseThos was "primarily for making video games. It has no networking or Internet support. As far as I'm concerned, that would be reinventing the wheel".[3] Another name he used was "SparrowOS" before settling on "TempleOS".[4]

## System overview

[edit]

TempleOS is a 64-bit, non-preemptive multi-tasking,[5] multi-cored, public domain, open source, ring-0-only, single address space, non-networked, PC operating system for recreational programming.[6] The OS runs 8-bit ASCII with graphics in source code and has a 2D and 3D graphics library, which run at 640x480 VGA with 16 colors.[4] Like most modern operating systems, it has keyboard and mouse support. It supports ISO 9660, FAT32 and RedSea file systems (the latter created by Davis) with support for file compression.[7] According to Davis, many of these specifications—such as the 640x480 resolution, 16-color display and single audio voice—were, according to him, instructed to him by God. He explained that the limited resolution was to make it easier for children to draw illustrations for God.[1]

The operating system includes an original flight simulator, compiler, and kernel.[2] One bundled program, "After Egypt", is a game in which the player travels to a burning bush to use a "high-speed stopwatch". The stopwatch is meant to act as an oracle that generates pseudo-random text, something Davis likened to a Ouija board and glossolalia.[4] An example of generated text follows:

> among consigned penally result perverseness checked stated held sensation reasonings skies adversity Dakota lip Suffer approached enact displacing feast Canst pearl doing alms comprehendeth nought[4]

TempleOS was written in a programming language developed by Davis as a middle ground between C and C++, originally called "C+" (C Plus), later renamed to "Holy C", possibly a reference to the Holy See.[4] Davis ultimately wrote over 100,000 lines of code for the OS.[2]

## HolyC

[edit]

HolyC

Paradigm| Imperative, Compiled
Designed by| Terry A. Davis
OS| TempleOS
Filename extensions| .hc
Website| templeos.org
Influenced by
C, C++

HolyC (formerly C+), named after a play on words of Holy See, is a variant of the C and C++ programming Languages designed by Terry A. Davis specifically for the TempleOS. It functions as both a general-purpose language for application development and a scripting language for automating tasks within TempleOS.[8]

### Design and features

[edit]

HolyC is the just-in-time compiled language of TempleOS. It is an imperative, statically typed programming language, although it uses some object-oriented programming paradigms.[9]

## Critical reception

[edit]

TempleOS received mostly "sympathetic" reviews. Tech journalist David Cassel opined that "programming websites tried to find the necessary patience and understanding to accommodate Davis".[2] TechRepublic and OSNews published positive articles on Davis's work, even though Davis was banned from the latter for hostile comments targeting its readers and staff.[2] In his review for TechRepublic, James Sanders concluded that "TempleOS is a testament to the dedication and passion of one man displaying his technological prowess. It doesn't need to be anything more."[4] OSNews editor Kroc Camen wrote that the OS "shows that computing can still be a hobby; why is everybody so serious these days? If I want to code an OS that uses interpretive dance as the input method, I should be allowed to do so, companies like Apple be damned."[2] In 2017, the OS was shown as a part of an outsider art exhibition in Bourgogne, France.[10]

## Legacy

[edit]

After Davis' death, OSNews editor Thom Holwerda wrote: "Davis was clearly a gifted programmer – writing an entire operating system is no small feat – and it was sad to see him affected by his mental illness".[11] One fan described Davis as a "programming legend", while another, a computer engineer, compared the development of TempleOS to a one-man-built skyscraper.[12] He added that it "actually boggles my mind that one man wrote all that" and that it was "hard for a layperson to understand what a phenomenal achievement" it is to write an entire operating system alone.[12]

## See also

[edit]

* Free and open-source software portal

* Creativity and mental health
* Biblical software
* Religion and video games

## References

[edit]

1. ^ a b c Hicks, Jesse (November 25, 2014). "God's Lonely Programmer". VICE Motherboard. Archived from the original on May 3, 2015. Retrieved April 21, 2015.
2. ^ a b c d e f Cassel, David (September 23, 2018). "The Troubled Legacy of Terry Davis, 'God's Lonely Programmer'". The New Stack. Archived from the original on September 28, 2018. Retrieved September 28, 2018.
3. ^ Davis, Terry A. (2008). "The LoseThos IBM PC Operating System". LoseThos. Archived from the original on December 16, 2008. Retrieved July 18, 2021.
4. ^ a b c d e f Sanders, James (January 21, 2014). "TempleOS: an educational tool for programming experiments". TechRepublic. Archived from the original on April 16, 2015. Retrieved April 21, 2015.
5. ^ Davis, Terry A. (n.d.). "Scheduler". The TempleOS Source Code. Archived from the original on June 1, 2016. Retrieved June 16, 2018.
6. ^ Mathieu, Bruno (November 28, 2014). "TempleOS : le système d'exploitation qui parle à Dieu" [TempleOs: The operating system that talks to God]. Tom's Guide (in French). Archived from the original on July 2, 2015. Retrieved April 21, 2015.
7. ^ Davis, Terry A. (n.d.). "The Temple Operating System". www.templeos.org. Archived from the original on March 31, 2017. Retrieved March 30, 2017.
8. ^ "HolyC Lang". holyc-lang.com. Retrieved July 2, 2024.
9. ^ Sierra, Austin (2024). Learning TempleOS: An Introduction to HolyC Programming. TSDM LLC. p. 23\. ISBN 979-8-9920365-1-0. Retrieved February 12, 2025.
10. ^ Godin, Philippe (January 13, 2017). "la Diagonale de l'art – ART BRUT 2.0". Libération (in French). Archived from the original on March 11, 2017. Retrieved March 22, 2021.
11. ^ Holwerda, Thom (September 8, 2018). "Creator of TempleOS, Terry Davis, has passed away". OSNews. Archived from the original on January 17, 2019. Retrieved January 6, 2019.
12. ^ a b Cecil, Neita (September 7, 2018). "Man killed by train had tech following". The Dalles Chronicle. Archived from the original on November 8, 2020. Retrieved November 24, 2020. (subscription required)

## External links

[edit]

* Comprehensive archive of TempleOS and Terry A. Davis material
* Archive of the TempleOS website and operating system
* Archive of the TempleOS bootable ISO images
* TempleOS source code

* v
* t
* e

Hobbyist operating systems

* AROS
* BareMetal
* EmuTOS
* FiwixOS
* GeckOS
* HelenOS
* KolibriOS
* MenuetOS
* Phantom OS
* Redox
* SerenityOS
* SharpOS
* SkyOS
* Syllable Desktop
* SymbOS
* TempleOS
* ToaruOS

* Category
* List

* v
* t
* e

Operating systems

General|

* Comparison
* Forensic engineering
* History
* List
* Timeline
* Usage share
* User features comparison

Variants|

* Disk operating system
* Distributed operating system
* Embedded operating system
* Hobbyist operating system
* Just enough operating system
* Mobile operating system
* Network operating system
* Object-oriented operating system
* Real-time operating system
* Supercomputer operating system

Kernel|

| Architectures|

* Exokernel
* Hybrid
* Microkernel
* Monolithic
* Multikernel
* vkernel
* Rump kernel
* Unikernel

|

Components|

* Device driver
* Loadable kernel module
* User space and kernel space

Process management|

| Concepts|

* Computer multitasking (Cooperative, Preemptive)
* Context switch
* Interrupt
* IPC
* Process
* Process control block
* Real-time
* Thread
* Time-sharing

|

Scheduling
algorithms|

* Fixed-priority preemptive
* Multilevel feedback queue
* Round-robin
* Shortest job next

Memory management,
resource protection|

* Bus error
* General protection fault
* Memory paging
* Memory protection
* Protection ring
* Segmentation fault
* Virtual memory

Storage access,
file systems|

* Boot loader
* Defragmentation
* Device file
* File attribute
* Inode
* Journal
* Partition
* Virtual file system
* Virtual tape library

Supporting concepts|

* API
* Computer network
* HAL
* Live CD
* Live USB
* Shell
* CLI
* User interface
* PXE

*[v]: View this template
*[t]: Discuss this template
*[e]: Edit this template