Aros/User/Docs

From Wikibooks, the open-content textbooks collection

< Aros
Jump to: navigation, search
Navbar for the Aros wikibook
Aros User Docs
Aros User FAQs
Aros Developer Docs
Aros Developer BuildSystem
The Zune IDE
Zune for beginners
Aros Developer - Hello World
Specific platforms
Aros 68k Support
Aros PPC Support
Aros *nix Installing
Aros *nix Support
Aros x86 Installing
Aros x86 Support
misc
Aros on wikipedia
Aros Public License

This is the AROS Research Operating System's User's Guide. It is designed to inform people about the great AmigaOS implementation known as AROS, and show them enough to be able to install and use it. The documentation is for everybody interested in AROS, as it tries to provide information useable by people of differing levels of ability.

We will try to cover relevant subjects in depth, but in such a way that you won't need to learn what you don't want to learn.

Contents

[edit] Who should be reading this Document?

This document is written as a guide, and will help you getting used to AROS. As mentioned before - It is written for everybody who is interested in AROS.

AROS is now ~80% finished, so keep in mind that the software is still considered BETA and in development. Currently AROS is mostly fun to play with on a curiosity level, but its also pretty interesting to program for, and in. Hopefully your interest in AROS is explained by one of these reasons.

If you came here because you thought AROS was a Multimedia Internet-Ready Etc. OS, well, you might be right - but it is not finished and therefore some patience may be needed.

If you thought AROS was a Grapefruit-Machine or a Free Money Project, you are entirely in the wrong place!.

Missing Features compared to AmigaOS3.1 Incomplete API functions

[edit] How should I read this Document?

This document/guide has been written in the hope that it covers all aspects of AROS from "simple" to "advanced". You should be able start reading at any chapter that contains information that is new, or of interest. Perhaps of even more importance, you should stop reading at any chapter that contains information going beyond your interest. In this way you can learn the advanced topics starting from scratch, or you can stop earlier if you think you only want to use AROS specifc features of AROS.

There should be starting points and a stop points to cater for everyone.

It is important to realize that this guide is meant for AROS, not AmigaOS. So even if you owned an Amiga for years, you might need to read "Using AROS" too. This is not an embarrassment: you will notice that using AROS is very slightly different from using AmigaOS.

[edit] What exactly is AROS?

[edit] Description

AROS is an implementation of the AmigaOS APIs, in a manner that should enable the environment to be compiled on other hardware than was originally designed for.

It is NOT designed to be binary compatible with AmigaOS software, but to work the same way (look & feel), and offer the same functionality - although it is hoped to achieve binary compatability on m68k platforms.

[edit] History

The project was originaly started by a small group of amiga enthusiasts in 1995.

[edit] Future

Future goals for AROS include expanding its underlying retargetability to support even more diverse architectures, provide memory protection features and user level file security, and many other wonderfull features missing from AmigaOS - while still providing as much source level compatability as is possible (however it is accepted that to achieve some goals code certain things may require a little recoding).

To get an idea of some of the proposed features/changes drop by aros exec or the lively IRC channel.

[edit] Obtaining AROS

AROS is currently under heavy development. The result is that you have to choose between stability and features. Currently there are two types of binary packages available for download: snapshots and nightly builds.

Snapshots are done manually quite infrequently, mostly when there have been a larger amount of useful changes done to AROS since the last snapshot and someone feels motivated to create a new snapshot. In short, there is currently no regular release schedule. Even though they are made infrequently and that we try to pick times when AROS is particularly stable, there is no guarantee they won't contain bug-free or work on your particular machine. That said, we try to test snapshots on a wider variety of machines, so in practice they should work relatively well.

Nightly builds are done, as the name implies, automatically every night directly from the SVN (Subversion) tree and contain the latest code. However, they have not been tested in any way and can be horrible broken, extremely buggy and may even destroy your system if you're unlucky. Most of the time though, they work fine.

Please see the download page for more information on which nightly builds are available and how to download them.

[edit] Supported Hardware & Availabilty

Since AROS is designed to run on various platforms, the subsystems have been re implemented in cross platform ways.

Below are the currently supported systems and peripherals:

x86 Compatibility 
This page lists drivers for the x86 platform, and hardware AROS has been tested upon.
mc68k Compatibility 
This page lists drivers for the motorola 68k platforms, and hardware AROS has been tested upon.
  • download: NONE CURRENTLY AVAILABLE
PPC Compatibility 
This page lists drivers for the PowerPC platforms, and hardware AROS has been tested upon.

[edit] Using AROS

[edit] An Operating System is an Operating System?

AROS was originally developed on Linux running on an Intel-based computer, but runs on many more machines and Operating Systems, though. This may sound strange: an OS running on top of an other OS, that's emulation, right?

A nice term for what AROS does is "API emulation". API is a three-letter acronym for Application Programmer's Interface. In plain English: an API provides (C Language) functions that a programmer can use. The AmigaOS API consists of a load of library calls that an Amiga programmer can use to make an Amiga program. AROS emulates the AmigaOS API: it tries to provide the same library calls (and indeed libraries) as AmigaOS. An Amiga emulator, such as UAE; emulates the Amiga computer: the processor, the connected hardware, everything. This has its advantages, like being able to play binary Amiga games on different hardware, and its disadvantages, like not being able to use the emulator as a "real" OS, on a "real" processor. AROS runs on the "real" processor. But it isn't a "real" OS, unless you run in such a way that it doesn't require Linux. This is called AROS-Native.

AROS-Native can be run on Intel and Amiga(tm) computers, quite as good as it runs on Linux. AROS library functions are made to run under Linux first, internally using Linux kernel and library calls. This way a programmer has got the opportunity to bother about the implementation of the whole system first, and to bother about the technical details in a later stadium. Nontheless it is perfectly possible to use AROS as a real (and only) Operating system on an IBM PC compatible machine.

AROS is not only an API emulator. It also tries to provide all the AmigaOS3.1 system software, and you will also find a few demos and games being shipped with AROS. While AROS is still not fully completed (currently about 90%), games like 'Quake' or 'Doom' alongside networking applications and other tools are already available.

[edit] Using AROS-Native on i386 and x86-64

AROS-Native, for intel architecture machines, is distributed on bootable ISO's for both 32bit and 64bit platforms.

Upon booting from the ISO you will find yourself in Wanderer - the AROS workbench replacement (looking very much like AmigaOS). You can fool around with the "AmigaDOS Shell"; or play some of the games/demos found in the Extras drawer.

[edit] Using AROS-Native on m68k

On Amiga(tm) hardware you can place the native code somewhere on you harddisk, double-click the "boot" icon, do a reset and enjoy a complete Amiga system. This is because it is not really native. The boot program just temporarily replaces a few AmigaOS libraries with AROS libraries. For testing purposes this is of course good, but in the end you still run good ol' AmigaOS and not plain native AROS.

[edit] Using AROS on Linux and FreeBSD

Once you got the binaries for your system, either by compiling or by downloading pre-compiled binaries, you should go down into the "bin/$TARGET/AROS" directory, where $TARGET is your system target (something like "linux-i386"). What you should do then, depends on the age of your code. If you have a file "arosshell" in the current directory, run it from within a terminal ("./arosshell"). A window will open with nothing interesting on it, and your terminal will have a strange new input prompt. If you do not have the file "arosshell", but instead a file called "aros", you should run that one instead ("./aros"). Now a window will open, and on that window you will see painted an Amiga-like window (if you're new to them, this is what they look like) with an input prompt on it.

In either way, you are faced by the already-infamous input prompt (sorry, we don't have a "Workbench" - yet). Now you should type in commands, and the most important command is "dir": it will show you a directory's contents. The directory named "C" contains all the commands, so it might be useful to display its contents with "dir C". (Note: Old Amigans, please note that this shell is case sensitive!) The shell behaves like an AmigaDOS shell, and the commands in "C" behave like their AmigaDOS equivalents. So if you have problems understanding the system, you should really take a look at the AmigaDOS Online Reference Manual. (Note to UNIX folks: to address the parent directory, use "/" and not "..": this will look ugly because AROS thinks that Linux's ".." is a normal directory. You shouldn't use "./" as a prefix to address a command within the current directory either, but leave this away instead.) Once you are used to it, try to execute a few programs (especially the "Demos" and "Games") to get an impression of AROS capabilities.

N.B -: On Linux Hosted you should specify an amount of memory for AROS to use (32meg is recommeneded at the least) using the -m command line option! failure to do so will result in undesired behavour!!

i.e

 ./aros -m32

[edit] Storing programs and files

[edit] Installing Applications

The typical means to install applications under AROS/AmigaOS involves simply copying/extracting the drawer containing the applications files to your own desired location and then launching it. generally this is on a seperate partition from your AROS system files, however in reality it can be any location - including RAM: if you dont want to permenantly install it.

At some time in the future it may be desireable for AROS to have a package-manager like subsystem able to retrieve information online about packages avaialable for AROS and whether they update anything you currently have installed, however at the moment no such ability exists.

[edit] User Data files

AmigaOS has no notion of a default location to store user data files, and presently neither does AROS - though it may be desireable at some time to provide a common start location.

For most people, Having a Work: partition or other partitions to store data seems preferable.

[edit] User Environment configuration files

AmigaOS/AROS stores persistent system configuration data in directory assigned to ENVARC:. This, by default, points to SYS:Prefs/EnvArc.

During boot a copy is made to another assign , ENV:, which is for runtime usage. Changes to the files here will not survive a reboot.

Setting the env variables is generally done by applications themselves, or when neccessary by the user using the SetEnv command. SetEnv has a SAVE switch to force the persistent copy in EnvArc: to be written also for when you are sure the change should be permanent.


[edit] Configuring/Using a network

AROS currently only has one real choice for TCP/IP networking - AROSTCP. This is a port of the AmiTCP package from AmigaOS, with a number of enhancements/fixes from AROS developers and changes backported from the MOSNet package (A port of AROSTCP to MorphOS)

Documentation on configuring the AROSTCP environment can be found here

[edit] What to do if you are having problems....

If you are just having difficulties getting certain things working in or with AROS, the first port of call should be one of the community forums, or IRC channels.

However, if you feel you have found a genuine bug/fault in AROS that needs attention, please use the bug submittion form to record as much information about what happened, why, and what hardware etc you have so that people may try to assist you.

If your competent enough at programming, we would prefer if you could attempt to identify the problem and possibly correct it yourself, and all contributions to the AROS codebase are warmly recieved.

[edit] Footnotes

[1] It is actually possible to install AROS/i386-pc onto a harddrive, but the procedure is far from being automated and user-friendly and the necessary tools are still being heavily developed and might be quite buggy. Therefore we officially do not support harddisk installation for the moment.

[edit] FAQs

The AROS User FAQs have their own page.

Personal tools
Create a book