So, DOS or Disk Operating System happens to be the best operating system ever; surpassing all the other computer-program-management systems like UNIX and Linux (or GNU/Linux according to Linux enthusiasts (or GNU+Linux according to Linux purists)).
Direct hardware access, or memory management;
Single-user or Multi-User;
CLI or TUI or GUI;
All depending on what YOU want or need for a certain project.
But a tiny problem.
It requires a BIOS to be present, the very same BIOS that Intel is planning to axe off. I hence propose, in order to preserve such a work of art for our progeny, and to ensure the PC does not lose her true operating system, we must make a UEFI version of it.
Most UEFI firmwares already operate as an operating system in their own right, containing complete mouse-driven GUI display systems and network stacks. BIOS syscalls were invariably modeled after the ones from CP/M.
Can't imagine how you would use machine with DOS and over 4G RAM. I mean, if you like DOS, why you also like new hardware?
The problem is that hardware become enormously sophisticated. Even if we do not talk about security (security and DOS, huh?), modern hardware is a "black box" with multiple levels of abstractions, designed to hide complexity and give you a "tool".
So, the only hope we do have today is FPGA. And biggest obstacle is companies which more likely will make everything to populate their proprietary FPGA chips.
>>3
It sounds like you need TempleOS in your life. Terry created it specifically for computer programmers who like to tinker in the same way as tinkering the Commodore 64.
You wrote "DOS", however your description clearly implies that you mean Microsoft's PC-DOS or MS-DOS specifically. Meanwhile, in the world of DOSs it was a step back in many areas. Especially the lack of a proper driver ecosystem ended to be a nail in its coffin. Theoretically BIOS was intended for that, but it was slow. In the end it forced direct hardware access, which meant any piece of hardware needed separately hardcoded support in every software program. At best some applications had their own selectable, internal drivers (that sometimes could be interchangeable if the same library was used). Anything the programmer(s) didn't implement, wouldn't otherwise work.
An example of a much better DOS is Apple's ProDOS. That's right, Apple once made something actually good and useful. Just remove the artificial or legacy limitations, implement drivers for current hardware, introduce multitasking, modern security architecture as well as data integrity protection measures and it would make a really nice and small OS for anyone who isn't a retard and can be bothered to read an instruction manual.
A GUI isn't necessarily a bad thing though. Proper design is the key here. Most people think that the shitty Windoze or Mac ones are the only way to go. Meanwhile a GUI doesn't really need a "wallpaper", icons, transparency or stupid animations. In fact, a GUI doesn't have to be operated by a mouse, as it's actually a very inefficient way to give the computer commands, also very prone to mistakes and errors. Think about something like Spectrwm, Norton Commander-style file managers (ignore the pull-down menus though), Conkeror browser or any program using WordStar's keybindings.
"The CIA encourages code obsfucation. They make it more complicated than necessary. TempleOS is, literally, more simple than necessary. It is obnoxiously simple... to the point it hurts."
"In UNIX everything is a file, in TempleOS everything is a document" (documents can have embedded models and sprites as well)
TempleOS core features:
x86_64, ring-0-only, single-address-map (identity), multitasking kernel with multicore support.
Free, public domain, 100% open source.
64-bit compiler/assembler for HolyC (a non-standard dialect of C/C++). Truly compiles, doesn't interpret. Just-in-Time and Ahead-of-Time compilation. With JIT, no need for object or exe files.
640x480 16 color VGA graphics.
Oracle in with <F7> for words or <SHIFT-F7> for passages.
Many games, demos and documentation.
#EXAMPLE
aria2c -x 2 'https://archive.org/download/TempleOS_ISO_Archive/TempleOSCDV5.03.ISO'
# Create a virtual HDD:
qemu-img create -f qcow2 TOS_disk.qcow2 2G
# Install TOS
qemu-system-x86_64 -hda TOS_disk.qcow2 -smp cores=2 -enable-kvm -cpu host -m 4096M -rtc base=localtime -soundhw pcspk -cdrom TempleOSCDV5.03.ISO -boot d
# Run the TempleOS VM
qemu-system-x86_64 -hda TOS_disk.qcow2 -smp cores=2 -enable-kvm -cpu host -m 4096M -rtc base=localtime -soundhw pcspk -boot c
Links
* Site: https://web.archive.org/web/20170221041504/http://www.templeos.org/
* New/Unofficial site: https://templeos.org
* Terry's old blog: https://web.archive.org/web/20141020170729/http://www.templeos.org:80/Wb/Accts/TS/Wb2/Rants/TAD/TADRants.html
* Mirror: https://templeos.holyc.xyz
* ISOs: https://archive.org/details/TempleOS_ISO_Archive (some versions lack After Egypt)
* Docs: https://templeos.holyc.xyz/Wb/Doc/HelpIndex.html
* Videos: https://archive.org/download/TerryADavis_TempleOS_Archive/videos/ (and other archives)
* Shrine: https://github.com/minexew/Shrine
* ZenithOS: ~~ zenithos.org ~~ (dead link)
* ZealOS: https://github.com/Zeal-Operating-System/ZealOS
* HolyC: https://web.archive.org/web/20170325000321/http://www.templeos.org/Wb/Doc/HolyC.html
* Unofficial docs (including HolyC): https://templeos.me
* HolyC compiler for Windoze/Linux: https://github.com/nrootconauto/3Days
* More...: https://github.com/topics/holyc
* https://harrison.totty.dev/p/a-lang-design-analysis-of-holyc
GodWords for Lunix
You need to have /usr/share/dict/words file. On Arch and Artix, you can obtain this file by running doas pacman -S words
#!/bin/bash
#This prints ten random words.
echo "$(shuf -n 10 /usr/share/dict/words --random-source=/dev/urandom | tr '\n' ' ')"
Micropython feels like DOS.
Isn't the EFI shell enough?