Prism OS is a Cosmos Based Operating System Developed With C#.
This Project is Made Possible by Cosmos and the Community Around it, We Give a Huge Thanks to All of the Developers that Contribute to and Support it, Our Work Would Not be Possible Without it.
Have any problems? Found a bug? Just want to chat? Join the discord!
2023-02-20.17-25-07.mp4
Demo of lerp animations in Prism OS.
2023-02-19.19-30-18.mp4
Demo of the 3D rasterizer with mouse controls in Prism OS.
2023-02-21.12-53-14.mp4
Demo of the 'bounce out' animation generated by an AnimationController.
- A Basic 3D Rasteriser
- Parsing for Many File Formats (TAR, Bitmap, and Targa)
- LZW Compression and Decompression
- Good Graphics API
- Animation & color fade support
- Custom language lexer, compiler, and runtime
- And more...
Name | Contribution(s) |
---|---|
Cosmos team | The entirety of Cosmos |
Terminal.cs | Founder, Main developer |
theopcoder | Website developer |
These are the avalable syscalls Prism OS offers, the EAX value will always become the return value after calling.
All references to strings will be pointers to null-terminated strings in whatever format was used, typicaly it will be UTF-8.
Name | EAX | EBX | ECX | EDX | ESI | EDI | Returns |
---|---|---|---|---|---|---|---|
Console.WriteLine | 0x00 | Message | - | - | - | - | - |
Console.Write | 0x01 | Message | - | - | - | - | - |
Console.Clear | 0x02 | - | - | - | - | - | - |
Console.SetColor | 0x03 | FG Color | BG Color | - | - | - | - |
Console.ResetColor | 0x04 | - | - | - | - | - | - |
Memory.Realloc | 0x05 | Old Address | New Size | - | - | - | New Address |
Memory.Alloc | 0x06 | Size | - | - | - | - | Address |
Memory.Free | 0x07 | Address | - | - | - | - | - |
Memory.Set | 0x08 | Address | Value | - | - | - | - |
Memory.Get | 0x09 | Address | - | - | - | - | Value |
Memory.Copy64 | 0x10 | Destination | Source | Size | - | - | - |
Memory.Copy32 | 0x11 | Destination | Source | Size | - | - | - |
Memory.Copy16 | 0x12 | Destination | Source | Size | - | - | - |
Memory.Copy8 | 0x13 | Destination | Source | Size | - | - | - |
Memory.Fill64 | 0x14 | Destination | Value | Size | - | - | - |
Memory.Fill32 | 0x15 | Destination | Value | Size | - | - | - |
Memory.Fill16 | 0x16 | Destination | Value | Size | - | - | - |
Memory.Fill8 | 0x17 | Destination | Value | Size | - | - | - |
File.Read | 0x18 | Full Path | - | - | - | - | Binary |
File.Write | 0x19 | Full Path | Binary | - | - | - | - |
File.Remove | 0x20 | Full Path | Name | - | - | - | - |
File.Create | 0x21 | Full Path | Name | Type | - | - | - |
File.Exists | 0x22 | Full Path | - | - | - | - | 0 = False, 1 = File, 2 = Folder |
File.GetSize | 0x23 | Full Path | - | - | - | - | Size of the file |
Prism OS supports inclusion/exclusion of drivers at compile time, You can modify what is added when compiling by editing this file.
Available Constants |
---|
IncludeVMWARE |
IncludeVBE |
Want to Add Something New to Prism OS? Simply Create a Pull Request and We'll Review it. (Your Code Should Preferably Follow These Guidelines)
This project is licensed Under the GPL-2.0 licence.
This project's logo, 'Daimond', was created by Nicole Hammonds from The Noun Project.