AROS ​​Vision

Modern and free Amiga-Compatible Experience on Amiga and PC

Drivers explained

In AROS OS, drivers are integrated through the Amiga-like system structure, especially through drawers such as DEVS:, Libs:, Classes:, and sometimes Storage:. AROS does not usually use one single “driver manager” like Windows. Instead, drivers are stored as files in specific system locations and are loaded automatically during boot or when a device is mounted. 

Basic idea of drivers 

in AROS A driver is a piece of software that allows AROS to communicate with hardware or a virtual device. Drivers may be responsible for things such as:
hard disks and partitions
CD/DVD drives
USB devices
graphics output
sound cards
network adapters
printers
file systems
input devices such as mouse and keyboard

The basic idea is: 
Application or system component↓
AROS device/library/class↓
Driver↓
Hardware or virtual hardware 

For example, a program does not normally access a disk controller directly. It asks the operating system, and the operating system uses the correct driver to talk to the device. 

What does DEVS: mean? 

DEVS: is an important AROS assign. It points to the system drawer that contains device-related files. 

Usually it corresponds to something like: SYS:Devs But users and programs normally refer to it as: DEVS: This is because Amiga-like systems use assigns: logical names that point to real paths. A beginner can think of DEVS: as: the drawer where AROS keeps many device drivers and device descriptions. 

Typical contents of DEVS: 

Depending on the AROS distribution, DEVS: may contain items such as: 
device drivers
monitor/display drivers
DOS drivers
printer drivers
mount files
file system components
keymaps
datatypes-related device files
storage-related configuration

Typical subdrawers may include names like: 
DEVS:DOSDrivers
DEVS:Monitors
DEVS:Keymaps
DEVS:Printers
DEVS:Networks
DEVS:Storage 

The exact structure depends on the AROS version and distribution. 

What is Storage:? 

Some Amiga-like systems use a Storage: drawer for drivers or mount files that are available but not active automatically. 

A simple distinction is: LocationMeaning 
DEVS: Active device files used by the system Storage: Optional device files stored for later use For example, a DOS driver file may be kept in Storage:DOSDrivers if it should not be mounted automatically at boot. If the user wants it to become active automatically, it may be copied to DEVS:DOSDrivers. In simple words: DEVS: = active or system-used device setup
Storage: = optional or inactive device setup

What is a MountList? 

A MountList is a configuration file that describes how a device or volume should be mounted. 

It tells the system things such as: which device driver to use
which unit number to access
which file system to use
block size
buffers
volume name
startup options
whether the device is removable
other low-level disk or device settings

A MountList is especially important for disk-like devices and volumes. 

A simplified beginner example could look conceptually like this: 
Device = ata.device
Unit = 0
FileSystem = FastFileSystem
Volume = Work 

This is not meant as a complete working MountList. It only shows the kind of information such a file may contain. 

MountList versus DOSDriver 

On Amiga-like systems, the older term MountList often refers to one larger configuration file containing mount entries. A DOSDriver is often a more modern or more convenient form where each mountable device has its own file. 

For beginners: 
MountList A list of mount definitions 
DOSDriver A single mount definition stored as a separate file 
Mount The command/process that activates such a definition 

So instead of having one big MountList, the system may use individual files in: 
DEVS:DOSDrivers or: Storage:DOSDrivers 

How devices are mounted 

When AROS mounts a device, it reads the mount information and loads the needed driver. 

The process is roughly: 
Mount command or boot process↓
Reads DOSDriver or MountList entry↓
Finds the device driver↓
Loads file system if needed↓
Creates a volume or device name↓
The device becomes usable 

After that, the device may appear as a volume such as: 
Work:
CD0:
USB0: 

depending on the setup. 

Automatic mounting at boot 

Some drivers or devices become active automatically during boot. This can happen if their configuration files are placed in active system locations such as: 

DEVS:DOSDrivers 

During startup, AROS may scan this drawer and mount the devices listed there. 

If a file is stored instead in: 

Storage:DOSDrivers 

it may be available but not mounted automatically. This is useful because not every possible device should always be active. 9. Drivers, libraries, and classes Not every driver is stored only in DEVS:. AROS uses several system drawers. DEVS: Used for device drivers and device configuration. 

Typical examples: 
disk devices
monitor/display definitions
printer device files
DOS drivers
keymaps

Libs: 

Used for shared libraries. A library provides functions that programs or drivers can use. Example idea: LIBS:some.library If a program says a library is missing, it often means a required file is missing from Libs:. 

Classes: 

Used for class-based components, often related to BOOPSI, GUI objects, datatypes, or system components. Some applications need specific classes to display windows, buttons, images, or other objects. C: Used for command-line tools. Some driver packages include commands that must be copied to: C: Prefs: Used for preference programs. Some drivers include a configuration tool that belongs in: Prefs: 

How new drivers are installed 

The exact installation method depends on the driver package. 

There is no single universal method, but the usual process is: 
Read the driver’s documentation.
Copy the driver file to the correct drawer.
Copy related libraries, classes, or commands if needed.
Copy the DOSDriver or mount file if the device must be mounted.
Configure ToolTypes or preference settings if required.
Reboot or manually mount/load the device.
Test whether the device works.

Typical manual installation example 

A simple driver package may contain files like this: 
mydevice.device
MyDevicemydevice.library
mytool 

These might be copied like this: 
mydevice.device    → DEVS:
MyDevice           → DEVS:DOSDrivers
mydevice.library   → LIBS:
mytool             → C: 

After copying, the user may need to mount the DOS driver: Mount MyDevice Or reboot, if the file was placed in DEVS:DOSDrivers.

Installing a DOSDriver 

If a driver package includes a DOSDriver file, it is important where the file is placed. 

To make it available but not auto-start: 
Storage:DOSDrivers To make it mount automatically at boot: DEVS:DOSDrivers 
Some users first test a driver from Storage:DOSDrivers. 

If it works, they move or copy it to DEVS:DOSDrivers. This is safer because a bad mount file in DEVS:DOSDrivers may cause boot problems. 

Installing a monitor or graphics driver 

Graphics or monitor drivers may use: 
DEVS:Monitors 

A monitor file may define or enable certain screen modes. After installing it, the user may need to open: Prefs:ScreenMode Then they can select a new screen mode if the driver works. If the selected screen mode fails, the system may become unreadable, so beginners should test carefully. 

Installing a network driver 

Network drivers may require: 
a device driver
a network stack configuration
IP settings
DHCP setup
sometimes additional tools

The files may go into places such as: DEVS:DEVS:NetworksLibs:Prefs: The exact method depends strongly on the AROS distribution and the network stack used. In a VM, it is often easier to choose a virtual network card known to work with the AROS distribution.

Installing a printer driver 

Printer drivers may involve: 
DEVS:PrintersPrefs: 

After copying the driver, the user may need to open printer preferences and select: 
printer type
output port
paper size
print quality

In a VM, printing through the host system is often easier than direct printer driver setup in AROS. 16. Installing file system drivers A file system driver allows AROS to read or write a specific disk format. It may be placed in a location such as: L: or another system-specific location depending on the AROS setup. A DOSDriver or MountList entry may then refer to that file system. The relationship is: DOSDriver / MountList↓uses a device↓uses a file system↓mounts the volume 

Safe beginner workflow for new drivers 

A safe workflow is: 
Make a backup or VM snapshot first.
Read the included documentation.
Copy optional mount files first to Storage:DOSDrivers.
Test manually with Mount.
If the device works, copy the mount file to DEVS:DOSDrivers.
Reboot and check whether the system still starts correctly.
Keep notes about which files were copied where.

This is especially important for beginners because wrong drivers or wrong mount entries can prevent normal startup. 

Common problems after installing drivers 

Device does not appear Possible causes: 
wrong driver version
driver copied to the wrong drawer
missing library
missing class
wrong unit number
wrong DOSDriver or MountList settings

System hangs or slows during boot Possible causes: 
bad entry in DEVS:DOSDrivers
driver tries to access hardware that is not present
incompatible driver
wrong controller or unit number

Program says a library is missing Possible causes: 
required file not copied to Libs:
wrong version of the library
library name is case-sensitive or expected exactly
Screen mode disappears or becomes unusable Possible causes: wrong monitor driver
unsupported graphics mode
incompatible display setup

Important beginner warning 

Beginners should be careful when copying files directly into system drawers such as: 
DEVS:
Libs:
Classes:
C:
S: 

A wrong file in the wrong place can cause confusing errors. In a VM, it is best to create a snapshot before experimenting with drivers. 

Short summary 

Drivers in AROS are integrated through Amiga-like system drawers and assigns. DEVS: is the main place for device drivers and device-related configuration. A MountList or DOSDriver tells AROS how to mount a device or volume. Files in DEVS:DOSDrivers are usually active or mounted automatically, while files in Storage:DOSDrivers are often kept available but inactive. New drivers are usually installed by copying driver files, libraries, classes, commands, and mount files into the correct drawers, then testing them manually or after reboot.

Explaining Mountlist entry

A MountList entry in AROS is a small configuration block that tells the system how to make a device or volume available. It is used by the Mount command or by startup scripts to activate disks, partitions, CD drives, removable media, or other DOS-style devices.

Basic idea 

A MountList entry answers questions like:
What should the new volume/device be called?
Which hardware driver should be used?
Which unit of that driver should be accessed?
Which file system should read the data?
How large are the blocks?
How many buffers should be used?
Is the device removable?
What startup options are required?

In simple form: 

MountList entry↓
Mount command reads it↓
AROS loads the device driver↓
AROS loads the file system 
if needed↓A volume such as CD0:, Work:, or USB0: becomes usable 

Example of a typical MountList-style entry 

A simplified example may look like this: 
CD0:    Device      = cdrom.device    
Unit        = 0    
FileSystem  = L:CDFileSystem    
Flags       = 0    
Surfaces    = 1    
BlocksPerTrack = 1    
BlockSize   = 2048    
Reserved    = 0    
LowCyl      = 0    
HighCyl     = 0    
Buffers     = 20    
BufMemType  = 1    
StackSize   = 4096    
Priority    = 5    
GlobVec     = -1    
DosType     = 0x43443031    
Activate    = 1


This is only an illustrative example. Real entries can differ depending on the AROS version, hardware, driver, and distribution. Line-by-line explanation 

CD0: 

This is the name of the device or volume that will appear in the system. For example: CD0: means the mounted device may be accessed as: CD0: Other examples could be: USB0: Work: PC0: 

#Device = cdrom.device 

This tells AROS which device driver to use. Examples: Device = ata.deviceDevice = cdrom.deviceDevice = trackdisk.device The device driver is usually stored somewhere in the system, often related to DEVS: or built into the system, depending on the driver.

Unit = 0 

The unit number selects which device on that driver should be used. For example: Unit = 0 usually means the first device handled by that driver. If the same driver controls several disks or drives, another entry might use: Unit = 1 or: Unit = 2 

FileSystem = L:CDFileSystem 

This tells AROS which file system handler should interpret the data. 

Examples: 
FileSystem = L:CDFileSystem
FileSystem = L:FastFileSystem

For a CD-ROM, a CD file system is needed.
For a hard disk partition, a disk file system is needed. 

Flags = 0 

Flags are low-level options passed to the device or file system. For beginners, this is usually left unchanged unless the documentation says otherwise. 

Surfaces, BlocksPerTrack, LowCyl, HighCyl 

These values describe disk geometry or a logical view of the device. They come from classic Amiga-style disk configuration. On modern or virtual systems, they may be less intuitive, but they can still appear in mount definitions. Surfaces describes disk sides/heads. BlocksPerTrack describes blocks per track. LowCyl and HighCyl define the cylinder range.

For beginners: do not change these unless you know exactly what the driver expects. BlockSize = 2048 This defines the size of one block in bytes. 

Typical examples: 
512 for many disk-style devices
2048 for CD-ROM sectors

Wrong block size can prevent the device from being read correctly. 

Reserved = 0 

This defines reserved blocks at the beginning of the device or partition. It is normally driver/file-system specific. 

Buffers = 20 

Buffers are memory areas used to cache disk data. More buffers can improve performance, but they also use more memory. For a beginner setup, the default value from the supplied DOSDriver or MountList should usually be kept. 

BufMemType = 1 

This defines what kind of memory should be used for buffers. On classic Amiga systems this could matter a lot because of different memory types. In AROS, it is still part of the Amiga-like configuration model. 

StackSize = 4096 This sets the stack size for the file system or handler process. If the stack is too small, a handler may crash or behave incorrectly. If unsure, keep the value provided by the driver or distribution. 

Priority = 5 

This sets the task priority of the handler. Higher priority means the handler may get CPU time sooner, but wrong values can affect system responsiveness. For beginners: keep the default. 

GlobVec = -1 

This is a compatibility-related value from AmigaOS-style system design. For most modern AROS use, beginners should not change it. 

DosType = 0x43443031 

DosType identifies the file system or disk type. For example, a CD file system may use a specific hexadecimal identifier. This helps the system understand what kind of volume it is dealing with. 

Activate = 1 

This tells the system whether the device should become active when mounted. If set to 1, it is normally activated automatically after mounting. 



The hash symbol marks the end of the MountList entry. DOSDriver files versus MountList entries 

In many Amiga-like systems, a MountList can contain several entries in one file. A DOSDriver is often one mount entry stored as its own file. 

Example: DEVS:DOSDrivers/CD0 may contain one MountList-style entry for CD0:. 

The practical difference: FormMeaning 

MountList One file with one or more mount definitions
DOSDriver One file that usually defines one device 
DEVS:DOSDrivers Devices here may be mounted automatically at startup 
Storage:DOSDrivers Devices here are available but usually not auto-mounted 

How it is used 

To mount a DOSDriver manually, you may type: Mount CD0: or sometimes: Mount DEVS:DOSDrivers/CD0 
If the file is placed in: DEVS:DOSDrivers it may be mounted automatically during startup, often by a line such as: Mount DEVS:DOSDrivers/~(#?.info) This means: mount the DOSDriver files in that drawer, but ignore .info icon files. 

Beginner warning MountList entries are powerful but sensitive. 

A wrong value can cause: 
the device not appearing
read/write errors
long delays during boot
system freezes while trying to access missing hardware
wrong file system detection

For beginners, the safest workflow is: 
Keep the original DOSDriver or MountList as backup.
Test new entries from Storage:DOSDrivers first.
Mount manually with Mount.
If it works, copy it to DEVS:DOSDrivers.
In a VM, make a snapshot before experimenting.

Short summary A MountList entry in AROS is a device description. It tells AROS which device driver, unit, file system, block size, buffers, and options are needed to make a device available. Modern AROS setups often use separate DOSDriver files instead of one large MountList. Files in DEVS:DOSDrivers are usually active or mounted automatically, while files in Storage:DOSDrivers are kept available for manual use.