Previously in devlog #1: Boot chain transitioned from 16-bit real mode to 64-bit long mode; shell got core commands (echo, run, clear, mem, peek/poke, cpuid, uptime); ACPI power-off enabled true hardware shutdown; UI/UX gained text input, PS/2 mouse cursor, scrolling, and draw/sysinfo; infrastructure achieved hybrid BIOS+UEFI boot.
Codebase organization. The second “Organized src/” commit dismantled the monolithic kernel.asm by extracting components into modular topic files (%included under defs.inc.asm, entry.asm, interrupts.asm, input.asm, display.asm, data_strings.asm, data_commands.asm, and command handlers divided by category).
Shell features. “Added command history” implemented a 16-slot ring buffer for commands up to 128 bytes each. Arrow Up recalls older lines while caching the current unsaved prompt; Arrow Down moves back forward, restoring the saved prompt at position 0, with cursor positioning aligned to the end of the text. Shift+arrow keys are bypassed to maintain viewport scrollback.
Calculator. “Added calc command” introduced signed decimal parsing (parse_dec_arg) and printing to support signed 64-bit integer binary operations (+, -, *, /, %). It also implements an integer square root (isqrt64) working as a prefix or postfix (calc sqrt N or calc N sqrt) with error-checking for division-by-zero and negative parameters.
Infra & Licensing. “Updated LICENSE” adopted the custom TreeSoft Open Source License. “Added release workflow” standardized output file names to lowercase kebab-case (amethyst-os.iso/.img) and introduced a GitHub Actions pipeline that builds both ISO and raw USB images on ubuntu-latest, calculates SHA256 checksums, and publishes nightly prereleases via the GitHub CLI.
Comments 0
No comments yet. Be the first!
Sign in to join the conversation.