<aname="l3"></a>* The vision is the same usage model and niche as the Commodore 64 -- a simple machine where programming was the goal, not
<aname="l4"></a>just a means to an end. However, it is modern, 64-bit and </span><spanclass=cF2>multi-cored</span><spanclass=cF0>. It is special purpose, not general purpose, so some
<aname="l5"></a>things it will not do. Also, it's a kayak, not a Titanic. The priority is </span><spanclass=cF2>user developers</span><spanclass=cF0>, not </span><spanclass=cF2>3rd party developers</span><spanclass=cF0>.
<aname="l7"></a>* </span><spanclass=cF4>We don't think twice about breaking compatibility. </span><spanclass=cF0> We do not put any hooks for future changes. "Perfect" means we always
<aname="l8"></a>act as though it is final, for all time. Microsoft allowed the </span><ahref="http://en.wikipedia.org/wiki/BMP_file"><spanclass=cF2>Windows BMP</span></a><spanclass=cF0> file format to adapt to the future and it became
<aname="l15"></a>lines of code. </span><spanclass=cF4>3rd party libraries are banned</span><spanclass=cF0> because they circumvent the intent of this limit. The vision is a Commodore 64
<aname="l19"></a>* The metric for resolving all ZealOS code governance issues is how fast the compiler compiles itself and the kernel with </span><spanclass=cF4>
<aname="l20"></a></span><ahref="https://zeal-operating-system.github.io/ZealOS/System/Boot/BootHDIns.ZC.html#l25"><spanclass=cF4>BootHDIns</span></a><spanclass=cF0>(). The </span><ahref="https://zeal-operating-system.github.io/ZealOS/Doc/ZealC.DD.html#l1"><spanclass=cF4>ZealC</span></a><spanclass=cF0> language should be changed to optimize this metric, as Terry Davis did when he changed type casting
<aname="l21"></a>from prefix standard C to postfix </span><ahref="https://zeal-operating-system.github.io/ZealOS/Doc/ZealC.DD.html#l1"><spanclass=cF4>ZealC</span></a><spanclass=cF0>, but we need a rule to prevent degenerating into a brainfuck language.
<aname="l23"></a>* Minimal abstraction is a goal. Sheep are fools. They always respect a design that is more complicated than another. Any
<aname="l24"></a>genius can make it complicated. Like in physics, it takes a supra-genius to make it simple.
<aname="l25"></a>
<aname="l26"></a>* It is for one platform -- </span><ahref="http://en.wikipedia.org/wiki/Amd64#AMD64"><spanclass=cF4>x86_64</span></a><spanclass=cF0> desktop PC compatibles, more like super-computers than battery efficient wimpy mobiles.
<aname="l31"></a>* </span><spanclass=cF2>Ring-0-only</span><spanclass=cF0>. Everything runs in kernel mode, including user applications.
<aname="l32"></a>
<aname="l33"></a>* </span><spanclass=cF4>No wireless</span><spanclass=cF0> communications. Only wired communications like Ethernet and Serial IO will be used.
<aname="l34"></a>
<aname="l35"></a>* </span><spanclass=cF4>No GPU</span><spanclass=cF0>. We want one processing platform, the CPU, for everything.
<aname="l36"></a>
<aname="l37"></a>* Full access to everything. All memory, I/O ports, instructions, and similar things must never be off limits. All
<aname="l38"></a>functions, variables and class members will be accessible. There are no C++ </span><spanclass=cF2>public</span><spanclass=cF0>/</span><spanclass=cF2>private</span><spanclass=cF0> protections and all functions,
<aname="l39"></a>even secondary ones in the kernel, can be called.
<aname="l41"></a>* </span><spanclass=cF2>Single-address-map</span><spanclass=cF0> as though paging is not used. Long mode requires paging, however, so the nearest thing is keeping all
<aname="l44"></a>* </span><spanclass=cF2>Free</span><spanclass=cF0> and </span><spanclass=cF2>public domain</span><spanclass=cF0>.
<aname="l45"></a>
<aname="l46"></a>* </span><spanclass=cF2>100% open source</span><spanclass=cF0> with all source included.
<aname="l47"></a>
<aname="l48"></a>* Documents are not for printing. They're dynamic, intended for the screen.
<aname="l49"></a>
<aname="l50"></a>* Just one 8x8 fixed-width font. </span><spanclass=cF4>No Unicode, just Extended ASCII</span><spanclass=cF0>. Other countries can make their own versions. The versions
<aname="l51"></a>should be just for one language and platform.
<aname="l52"></a>
<aname="l53"></a>* </span><spanclass=cF4>No multimedia</span><spanclass=cF0>. Sounds and images will be primarily calculated in real-time, not fetched from storage.
<aname="l54"></a>
<aname="l55"></a></span><spanclass=cF8>
<aname="l56"></a>* "Commodore 64" is a trademark owned by Polabe Holding NV.