This repository contains both hardware diagrams and software code for a retro-computing-inspired system, built entirely from scratch.
We named it philOS.
The software consists of a very simple 16-bit kernel, several user programs, and a fully custom BIOS.
The hardware is built around the legendary Intel 8086, the 16-bit processor that gave life to the x86 architecture, along with 128 KiB of RAM and 64 KiB of ROM.
Started as a side hobby, later became our final-year exam project for high school.
Initially, we intended to develop only an operating system (hence the name), but we eventually decided to buy some chips and got to work on building the physical computer as well.
The project is still work in progress. There are many things left to implement and improve, however, the journey has taught us a great deal about how a computer actually works under the hood. Working with no abstraction layer was challenging at times, but the result has been far more rewarding and fascinating as a direct consequence.
We hope we can inspire you to build a computer from absolutely nothing, too!
If you're interested in the project, we would tell you to read the documentation but unfortunately we're still working on it. Once deemed ready, the complete documentation will be available here in both Italian and English.
philOS is completely free and open-source software (can't say the same for the hardware!), and is licensed under the MIT license.
We don't accept contributions at this stage, but you're obviously free to fork the repository and make your own improvements.
After cloning, you can make the project. This will generate the build/ directory, which contains a NASM-assembled binary file for each source code file found in the src/ directory. We currently have some C support, but x86-16 assembly remains the preferred choice for most of the code. That being said, the make release option is probably what you're after as this creates two 64 KiB binaries, one for each ROM that you should have hooked up to the i8086. Either way if you have an EEPROM programmer and just want the binaries, we periodically release stable versions.
You'll find some useful scripts in the tools/ directory, these mainly help us build the final binary files.
The hw/ directory contains all the hardware-related files, including the complete circuit diagram and a list of components used. If you want to build the physical system yourself, you may want to check that first.
The docs/ directory is pretty much self-explanatory.
While we’re not accepting contributions right now, feedback is always appreciated. You don't necessarily have to emulate or physically build philOS to spot its bugs or errors because they are probably a lot and visible from a distance: you just need to be able to read some assembly. Thank you!
We don’t have a fixed roadmap for what to implement next; we prefer to develop things as we go. Software-wise, you might want to check ; TODO: comments, most of them are either "fix this" or "make that". One final goal could be to create an approximate replica of the Olivetti M24—perhaps an enhanced version of it.
The following are photographs showing the evolution of the project in chronological order.









