a6/README.md

1.6 KiB

A6 — operating system for embedded M68k systems

(work in progress, most of these are lies until those things are actually built)

A6 (originally a shortening of AVL68KOS / AVL's 68K OS) is an operating system for use in embedded M68k computers. Some characteristics:

  • Supported CPUs currently include: 68010 (There is preliminary 68000 support but it is untested. In the future, newer ones will also probably work.)

  • Preemptive multitasking

  • IO using device files, a la *n?x

  • Memory protection support

    (No support is planned for full MMUs — this is a deliberate design choice. However, future ports to more modern 68ks may understand how to turn their MMUs into MPUs).

  • Loadable kernel modules

  • Applications load from ELF files, with dynamic linking/relocation

Compiling

There is more documentation on compiling here. The tl;dr is: you need a m68k gcc toolchain called m68k-elf-* on your path, then build using meson. A helper script to run all the meson commands is at ./build.sh.

Documentation

The documentation takes the form of Markdown files located in this source tree; it can be viewed here.

Issues are managed in Gitea now, but the old issue tracker has issues that were closed prior to this migration.

Intellectual property is bullshit. This is everyone's code. Because it includes picolibc, you'll have to dump the big pile of IP crap from here into documentation you bundle with a binary build.