What is FreeMiNT?
FreeMiNT is a free, open-source operating system for 16/32bit Atari computers and clones. It is compatible with TOS, but adds a lot of new functionality not available in any other TOS-compatible operating system.
- Allows any number of GEM (with XaAES running) and TOS programs to run concurrently.
- Has memory protection to improve security and stability.
- Has built in network support and drivers for all existing networking hardware.
- Multi-user support.
- Has a wide array of system extensions to ease porting of unix programs.
How does FreeMiNT work?
FreeMiNT is a TSR that replace the GEMDOS-part of TOS. It also replace most of BIOS and XBIOS. The ROM AES can be replaced by the FreeMiNT kernel module XaAES or by some other AES like N.AES.
FreeMiNT implements all features from TOS. It also adds a lot of it’s own, like networking, multiuser support, process control and most importantly the ability to run several programs concurrently.
See the installation guide for details on how to install FreeMiNT.
The unified filesystem (u:\)
A feature of FreeMiNT that is new to TOS-like systems is the concept of protecting the program’s memory space from unauthorized “intruders”. Such an intruder is usually another program, that went bad due to its bugs.
NOTICE: The memory protection mechanism works only on machines equipped with processor 68030 or newer.
The hardware memory protection is implemented at the CPU level on a per process basis, so that any memory a process hasn’t allocated is considered invalid for that process. Virtually, such memory does not exist, and starts to do just after the process requests it from the system. The memory protection serves for preventing an errant process from destroying other programs running in parallel, or even the system itself. At least, that’s the theory.
In practice, apart from running Un*x software (which usually is perfectly compatible with memory protection) FreeMiNT has to be compatible with TOS software. Unfortunately some TOS programs – especially older applications and MIDI software – tend to enter supervisor mode and do things beyond the system control.
Under TOS it is perfectly okay. However, under FreeMiNT there’s a risk for a conflict with the resource protection mechanisms. This can cause the program or even the entire system to crash.
Memory protection is on by default but can be switched off in the boot menu.
The MiNT system folder
FreeMiNT expects to find a folder named mint in the root of your . This folder contains the various config-files, modules and tools required by MiNT.
Optionally, this can be located in subfolders named after the kernel version number. For example FreeMiNT 1.17.0 will look for the subfolder ‘1-17-0/’, and if this folder doesn’t exist it will load the config file and modules located in the root of the system folder. This allows the user to keep separate system folders for different versions of the kernel.
So if your boot-drive is C: and you boot FreeMiNT 1.17.0, it will look for the following folders:
It will load it’s config-files and modules from the first folder it finds.
Exception: If you’re using a beta or alpha version of the kernel, it will look for a special “beta”-folder. This will have the suffix “-cur”, e.g. ‘1-17-cur’ for the current alpha or beta of FreeMiNT 1.17. This will allow you to have one system folder for the latest beta, and one for the release version.
Warning: since version 1.16.0 FreeMiNT ignores multitos folder in the root of your boot-drive.