MicroKernel

From F256 Foenix
Jump to navigationJump to search

The TinyCore MicroKernel github FoenixRetro fork is the kernel that is shipped with the F256 machines. It provides keyboard, mouse, and timer drivers, a SLIP/ICMP/UDP/TCP stack, and a unified file I/O system (IEC and SD) via an asynchronous (non-blocking) event-queue interface. It does not include a tty driver, but it does provide calls for blasting arrays of characters to the screen as would typically be used by full-screen text applications.

The MicroKernel is designed to provide background I/O for real-time games and applications; programs which don't want to deal with async I/O are, of course, free to just make calls and loop on the event queue until they complete.

  • The kernel's README.md contains extensive documentation.
  • The F256_Jr_Kernel_DOS project contains cc65 bindings (cc65 folder) and assembler examples (dos) for nearly all of the calls.
  • The F256_example_tcp project contains a minimal terminal program example which could be extended into a full-blown telnet program.
  • The F256_wget project includes a DNS client and a simple http client.

The MicroKernel is not compatible with an 816 CPU running in native mode. Emulation mode (the default) is fine :).