summaryrefslogtreecommitdiff
path: root/src/include/toxic
AgeCommit message (Collapse)Author
2026-03-08Add a path parsing mechanismCarlos Maiolino
Now the system can parse paths to files/directories. It follows the same Unix standard namespace. For now, only absolute paths are allowed. The parse mechanism relies on the struct path_part. Which represents each component on a single path. All the components are chain-linked through path_part->next, where the last path component will have ->next == NULL. This also introduces path_root struct, which represents the root of the path. The first component, linked to path_root->head, is always the "/" component. The disk_id represents the disk the root directory is found into. This should actually (and likely will) be a mountpoint not a disk id. Signed-off-by: Carlos Maiolino <[email protected]>
2026-03-08add strncpy helperCarlos Maiolino
Also fix a off by one bug in strnlen Signed-off-by: Carlos Maiolino <[email protected]>
2026-03-08Add NULL definitionCarlos Maiolino
Signed-off-by: Carlos Maiolino <[email protected]>
2026-02-28Add strnlen helperCarlos Maiolino
Signed-off-by: Carlos Maiolino <[email protected]>
2026-02-28add strnlen and isdigit helpersCarlos Maiolino
This is missing and will come in handy for path parsing. Signed-off-by: Carlos Maiolino <[email protected]>
2026-02-24block: Add a simple block layerCarlos Maiolino
Signed-off-by: Carlos Maiolino <[email protected]>
2025-09-14Enable interrupts only after IDT is setCarlos Maiolino
So far we've been playing a dangerous game... We enabled interrupts before we actually had the interrupt descriptor table setup. Fix this so we prevent IRQs to fire before the table is initialized and attempt to run garbage instead of code Signed-off-by: Carlos Maiolino <[email protected]>
2025-09-14Add a simple heap implementationCarlos Maiolino
Add a simple API implementing a heap memory area. This specifies 2 main data structures: struct heap - Defines a heap: Holds a table with all entries in the specific heap and the initial heap memory address struct heap_table - Describes the usage state of every PAGE within the specific heap. Signed-off-by: Carlos Maiolino <[email protected]>
2025-08-25Add error numbersCarlos Maiolino
This is supposed to be compliand with POSIX Signed-off-by: Carlos Maiolino <[email protected]>
2025-08-25Add math libCarlos Maiolino
So far I just need a roundup routine to implement a basic heap manager Signed-off-by: Carlos Maiolino <[email protected]>
2025-08-25IO: Add in/out declarations/definitionsCarlos Maiolino
I've forgotten to commit this when working on interrupts. The OS won't build without these helpers. They are used for now mostly to setup PICs. Signed-off-by: Carlos Maiolino <[email protected]>
2025-08-22vga.h: Fix unknown type nameCarlos Maiolino
This has only been working so far because vga.h was included only on source files already including stdint.h. We should put it direct to the header file Signed-off-by: Carlos Maiolino <[email protected]>
2025-08-01Implement interrupt descriptor tableCarlos Maiolino
Signed-off-by: Carlos Maiolino <[email protected]>
2025-07-26Move include files to a subdirectoryCarlos Maiolino
Move the include files to the toxic/ subdirectory, so it gets a bit more organized. Ah, yeah, OS name will be renamed to ToxicOS Signed-off-by: Carlos Maiolino <[email protected]>