aboutsummaryrefslogtreecommitdiff
path: root/mirai/invocations/handler.zig
AgeCommit message (Collapse)AuthorFilesLines
2026-02-24Bunch of stuff moved as .old for new arch changeBobby1-92/+0
2026-02-24commit for arch changeBobby1-0/+2
2026-02-20feat: Add OS information invocations for CPU, memory, disk, uptime, and timeBobby1-0/+12
2026-02-15Refactor I/O operations and update driver importsBobby1-2/+2
- Renamed I/O port functions for clarity: `write_port_byte` to `out_byte`, `read_port_byte` to `in_byte`, `write_port_word` to `out_word`, `read_port_word` to `in_word`, `write_port_long` to `out_long`, and `read_port_long` to `in_long`. - Updated import paths for serial, ahci, ata, gpt, keyboard, terminal, and other drivers to reflect new directory structure. - Replaced instances of `read_file_by_path` with `view_unit_at` in various files for consistency. - Added new utility functions for AHCI FIS setup and defined types for AHCI and PCI. - Introduced string copy utilities for handling strings from Kata pointers.
2026-02-15feat: Add various invocations for file system and I/O operationsBobby1-50/+48
- Implemented `viewstack` invocation to list contents of a stack. - Created `attach` invocation for opening attachments with device and unit handling. - Added `getkeychar` invocation to read a single character from the keyboard. - Developed `mark` invocation to write to attachments with color support. - Introduced `seal` invocation to close attachments. - Implemented `view` invocation to read from attachments. - Added `wipe` invocation to clear the terminal screen. - Created `exit` invocation to dissolve a Kata and seal attachments. - Implemented `postman` invocation for letter passing between parent and child Katas. - Added `spawn` invocation to create new Katas from executables. - Implemented `wait` invocation to wait for child Katas to dissolve. - Added `yield` invocation to voluntarily give up CPU time to Sensei. - Introduced utility functions for location resolution and path handling. - Added memory copy and slice utilities for efficient data manipulation. - Implemented random number generation utilities. - Added string comparison utilities for easier string handling. - Introduced integer and pointer conversion utilities for type safety. - Implemented result handling utilities for invocation results.
2026-02-15feat: Add 'wipe' command for clearing the terminal screenBobby1-0/+2
2026-02-13Refactor and enhance filesystem navigation and communication between KatasBobby1-0/+7
- Updated `mi.zig` to default target path to an empty string. - Improved context switching in `context.zig` by restoring registers from the context struct. - Enhanced `loader.zig` to inherit current location from the parent Kata. - Simplified `getkeychar.zig` by removing unnecessary serial import and error handling. - Added new invocations: `getlocation.zig` for retrieving current stack location and `postman.zig` for letter passing between Katas. - Introduced `setlocation.zig` to change current stack location with path resolution. - Created `nav.zig` for navigating the filesystem with commands to print current location or change it. - Added `nav.zon` for binary metadata. - Updated `limits.zig` to define maximum letter length. - Enhanced `ash.zig` to process navigation letters and improved command execution flow. - Updated syscall interface in `sys.zig` to handle variable arguments for invocations.
2026-01-27feat: Remove echo and rd binaries; add mi stack viewer and viewstack syscallBobby1-0/+3
2026-01-23refactor: Reorder and organize import statements across multiple files for ↵Bobby1-4/+3
improved readability
2026-01-23feat: Remove debug print statements across various modules to clean up outputBobby1-7/+0
2026-01-22feat: Implement keyboard input handling and shell functionalityBobby1-0/+2
- Added framebuffer initialization and retrieval functions in multiboot2.zig. - Integrated framebuffer support into the boot sequence. - Refactored keyboard driver to use a circular buffer for input and added blocking behavior for kata waiting on keyboard input. - Enhanced kata management to support blocking and waking katas based on keyboard input. - Introduced a new invocation for reading a character from the keyboard (getkeychar). - Implemented a simple shell (ash) that reads user input and echoes it back. - Updated syscall handling to include the new getkeychar invocation. - Improved memory management for loading programs and handling user/kernel stacks. - Added functionality to wake katas waiting for specific events, such as the dissolution of other katas.
2025-12-30feat: add yield invocation and syscall support for process schedulingBobby1-0/+2
2025-12-16separate invocations; moved helper functions to utils; created invocations ↵Bobby1-8/+26
for spawn, wait for kata handling; added required fields in kata
2025-12-12file descriptors, IO, and more invocationsBobby1-7/+8
2025-12-11updated interrupts, invocations, kata, and paging to switch to Layer 3Bobby1-20/+3
2025-12-09invocations (syscalls) using syscall/sysretBobby1-0/+70