Skip to content

Zeal 8-bit OS Release v0.1.0

Compare
Choose a tag to compare
@Zeal8bit Zeal8bit released this 26 Oct 15:37
· 200 commits to main since this release

First public release. Keep in mind this is a still a beta, that is not complete and may still have bugs.

The Operating System is divided in two parts: the kernel, common to all targets and the targets implementation.

Kernel features

The kernel support the following features:
The kernel itself supports the following features:

  • Mono-threaded system
  • Up to 26 disks (A to Z)
  • Support for files and directories
  • Support static drivers, provided at compile time
  • Separation between user space and kernel space (no memory protection)
  • Abstract "opened devices" which can represent an opened file, directory, or driver in the user space
  • Support for Real-Time Clock
  • Support for timer, can be a hardware or a software timer
  • Support up to 16MB of physical address space divided as 256 banks of 16KB
  • Support the following operations for dirvers: open, read, write seek, close, ioctl
  • Support the following operations for files: open, read, write, seek, close, remove
  • Support the following operations for directories: open, browse, close, remove
  • Load raw binaries as init file
  • Syscalls to perform communication between user programs and kernel
  • Support for file systems: rawtable implemented
  • Modular build system, simplifying adding files and targets to the compilation, configurable build with menuconfig

Target support

Zeal 8-bit Computer target is currently the only supported target, with the following features:

  • Use the ROM as a read-only disk formatted in "romdisk" file system
  • Support for the MMU
  • PS/2 Keyboard input
  • Partial Video 640x480 text mode support
  • Partial PIO implementation for system port (port B)
  • Add a command line interface, init.bin, to execute on boot