Skip to content
C0deDeveloper edited this page Jul 31, 2023 · 2 revisions

Welcome to the FalconOS wiki!

This wiki is written by CodeDevel0per (Pratyush), it has everything ever in FalconOS, please read through this entire book of a wiki if you are actually interested.

Basics

It is using Cosmos DevKit, on windows, via visual studio, so if you want to use it, you must have those. Building is as simple as using the solution to open and compile! It's very optimized and has gzip compression by default.

Actual Code

The code is split into multiple parts: System:

  • Kernel.cs (Main Kernel file) Check all about the main kernel file at Kernel page
  • Shell.cs (the fash Shell) The console-mode shell that runs after the OS is logged in detailed at Fash [Shell]
  • assemble.cs (Assembly compiler) the basic assembly compiler [Detailed at assembly page]
  • calc.cs (Simple Calc Evaluator) calculator expression evaluator just for fun :)
  • data.cs (The main data file) containing currentDir, version and os name and all the main stuff used all across the code
  • executor.cs (Executable file runner) that runs all falcon executables detailed at all executor
  • falcmp.cs (Simplified Assembly) simplifies falcon assembly, although very limited (not detailed at all)
  • fcg.cs (FCG [clone of my own CCG with a lot of features]) which is basically a way to make wonderful GUI's inside console interface. detailed at FCG
  • feditor.cs (clone of looti with a bit of customization) alternative text editor (not detailed at all)
  • FIV.cs (which is actually FAV, FAlcon Vi) is the current most usable text editor (vi clone based up on MIV but has a lot more)
  • infochecks.cs (inner helper library) just basic tedious checks in one file
  • initsys.cs (init system) inits the system, which also contains the setup written in fcg, detailed at InitSystem
  • log.cs (Every Output function used in shell.cs is from this file) it uses a buffer to add stuff and there's a bmgr too! detailed at Logging
  • processMgr.cs (process manager, as simple as that) contains all process names, a way to add and remove em' easier to manager stuff
  • sudo.cs (contains sudo, with all root stuff) runs as root (seriously, you need explanation for this)
  • sysmgr.cs (has the login function) to login to another user.

Why did I make this?

Hmm.. so after my last heck of a disaster (Zypherix OS), I wanted to make a full on easy to use, linux-friendly, bash-like interface because the code I made previously was too cluttered so I made another one planning to make a lot of stuff almost no typical cosmos based OS make! So I went ahead and made this, using a lot of courage, I made my own executable format, a text editor (almost cloned), an init system, a full bash-like shell featuring the && thing and a process manager, followed by an assembly sorta compiler. Very not proud of myself. 👏🏻

Clone this wiki locally