revert between 56095 -> 55830 in arch
[AROS.git] / workbench / locale / help / English / faq.txt
blob85cbe8cd34239591c5283ef9317e4a72be490908
1 ==========================
2 Frequently Asked Questions
3 ==========================
5 :Authors:   Aaron Digulla, Adam Chodorowski, Sergey Mineychev, AROS-Exec.org
6 :Copyright: Copyright Â 1995-2004, The AROS Development Team
7 :Version:   $Revision: 24844 $
8 :Date:      $Date: 2006-10-03 19:14:17 +0500 (à®á™, 03 àÎàÊá™ 2006) $
9 :Status:    Done. 
11 TO DO: Convert to Guide
13 .. Contents::
15 Common questions
16 ================
18 Can I ask a question?
19 ---------------------
21 Of course you can. Please go to `Aros-Exec forum <http://aros-exec.org/modules/newbb/viewtopic.php?topic_id=1636&start=0>`__ and 
22 read the threads and ask everything you want. This FAQ will be updated with the 
23 user`s questions, but the forum still remains more recent.
25 What is AROS all about? 
26 -----------------------
28 Please read the introduction_.
30 .. _introduction: ../../introduction/index
33 What is the legal status of AROS?
34 ---------------------------------
36 European law says that it is legal to apply reverse engineering techniques to
37 gain interoperability. It also says that it is illegal to distribute the
38 knowledge gained by such techniques. It basically means that you are allowed to
39 disassemble or resource any software to write something which is compatible (for
40 example, it would be legal to disassemble Word to write a program which converts
41 Word documents into ASCII text).
43 There are of course limitations: you are not allowed to disassemble the software
44 if the information you would gain by this process can be obtained by other
45 means. You must also not tell others what you learned. A book like "Windows
46 inside" is therefore illegal or at least of dubious legality.
48 Since we avoid disassembling techniques and instead use common available
49 knowledge (which includes programming manuals) which don't fall below any NDA,
50 the above doesn't apply directly to AROS. What counts here is the intention of
51 the law: it is legal to write software which is compatible with some other
52 software. Therefore we believe that AROS is protected by the law.
54 Patents and header files are a different issue, though. We can use patented
55 algorithms in Europe since European law doesn't allow patents on algorithms.
56 However, code that uses such algorithms that are patented in the USA could not
57 be imported to the USA. Examples of patented algorithms in AmigaOS include
58 screen dragging and the specific way menus work. Therefore we avoid implementing
59 these features in exactly the same way. Header files on the other hand must be
60 compatible but as different as possible from the orignal.
62 To avoid any trouble we applied for an official OK from Amiga Inc. They are
63 quite positive about the effort but they are very uneasy about the legal
64 implications. We suggest that you take the fact that Amiga Inc did not send us
65 any cease and desist letters as a positive sign. Unfortunately, no legally sound
66 agreement has been made yet, besides good intentions on both sides.
69 Why are you only aiming for compatibility with 3.1?
70 ---------------------------------------------------
72 There have been discussions about writing an advanced OS with the features of
73 the AmigaOS. This has been dropped for a good reason. First, everyone agrees
74 that the current AmigaOS should be enhanced, but no one knows how to do that or
75 even agrees on what has to be enhanced or what is important. For example, some
76 want memory protection, but don't want to pay the price (major rewrite of the
77 available software and speed decrease).
79 In the end, the discussions ended in either flame wars or reiteration of the
80 same old arguments over and over again. So we decided to start with something we
81 know how to handle. Then, when we have the experience to see what is possible or
82 not, we decide on improvements.
84 We also want to be binary compatible with the original AmigaOS on Amiga. The
85 reason for this is just that a new OS without any programs which run on it has
86 no chance to survive. Therefore we try to make the shift from the original OS to
87 our new one as painless as possible (but not to the extent that we can't improve
88 AROS afterwards). As usual, everything has its price and we try to decide
89 carefully what that price might be and if we and everyone else will be willing
90 to pay it.
93 Can't you implement feature XYZ?
94 --------------------------------
96 No, because: 
98 a) If it was really important, it would be in the original OS. :-) 
99 b) Why don't you do it yourself and send a patch to us?
101 The reason for this attitude is that there are plenty of people around who think
102 that their feature is the most important and that AROS has no future if that
103 feature is not built in right away. Our position is that AmigaOS, which AROS
104 aims to implement, can do everything a modern OS should do. We see that there
105 are areas where AmigaOS could be enhanced, but if we do that, who would write
106 the rest of the OS? In the end, we would have lots of nice improvements to the
107 original AmigaOS which would break most of the available software but be worth
108 nothing, because the rest of the OS would be missing.
110 Therefore, we decided to block every attempt to implement major new features in
111 the OS until it is more or less completed. We are getting quite close to that
112 goal now, and there have been a couple of innovations implemented in AROS that
113 aren't available in AmigaOS.
116 How compatible is AROS with AmigaOS?
117 ------------------------------------
119 Very compatible. We expect that AROS will run existing software on the Amiga
120 without problems. On other hardware, the existing software must be recompiled.
121 We will offer a preprocessor which you can use on your code which will change
122 any code that might break with AROS and/or warn you about such code.
124 Porting programs from AmigaOS to AROS is currently mostly a matter of a simple
125 recompilation, with the occasional tweak here and there. There are of course
126 programs for which this is not true, but it holds for most modern ones.
129 What hardware architectures is AROS available for?
130 --------------------------------------------------
132 Currently AROS is available in a quite usable state as native and hosted
133 (under Linux, and FreeBSD) for the i386 architecture (ie. IBM PC AT
134 compatible clones). There are ports under way at varying degrees of
135 completeness to SUN SPARC (hosted under Solaris) and Palm compatible
136 handhelds (native).
139 Will there be a port of AROS to PPC? 
140 ------------------------------------
142 There is currently an effort under way to port AROS to PPC, initially
143 hosted under Linux.
146 Why are you using Linux and X11?
147 --------------------------------
149 We use Linux and X11 to speed up development. For example, if you implement
150 a new function to open a window you can simply write that single function and
151 don't have to write hundreds of other functions in layers.library,
152 graphics.library, a slew of device drivers and the rest that that function might
153 need to use. 
155 The goal for AROS is of course to be independent of Linux and X11 (but it would
156 still be able to run on them if people really wanted to), and that is slowly
157 becoming a reality with the native versions of AROS. We still need to use Linux
158 for development though, since some development tools haven't been ported to AROS
159 yet.
162 How do you intend to make AROS portable?
163 ----------------------------------------
165 One of the major new features in AROS compared to AmigaOS is the HIDD (Hardware
166 Independent Device Drivers) system, which will allow us to port AROS to
167 different hardware quite easily. Basically, the core OS libraries do not hit the
168 hardware directly but instead go through the HIDDs, which are coded using an
169 object oriented system that makes it easy to replace HIDDs and reuse code.
172 Why do you think AROS will make it? 
173 -----------------------------------
175 We hear all the day from a lot of people that AROS won't make it. Most of them
176 either don't know what we are doing or they think the Amiga is already dead.
177 After we explained what we do to the former, most agree that it is possible. The
178 latter make more problems. Well, is Amiga dead right now? Those who are still
179 using their Amigas will probably tell you that it isn't. Did your A500 or A4000
180 blow up when Commodore went bankrupt? Did it blow up when Amiga Technologies
181 did?
183 The fact is that there is quite little new software developed for the Amiga
184 (although Aminet still chugs along quite nicely) and that hardware is also
185 developed at a lower speed (but the most amazing gadgets seem appear right now).
186 The Amiga community (which is still alive) seems to be sitting and waiting. And
187 if someone releases a product which is a bit like the Amiga back in 1984, then
188 that machine will boom again. And who knows, maybe you will get a CD along with
189 the machine labeled "AROS". :-)
192 What do I do if AROS won't compile?
193 -----------------------------------
195 Please post a message with details (for example, the error messages you
196 get) on the Help forum at `AROS-Exec`__ or become a developer and
197 subscribe to the AROS Developer list and post it there, and someone will
198 try to help you.
200 __ http://aros-exec.org/
203 Will AROS have memory protection, SVM, RT, ...?
204 -----------------------------------------------
206 Several hundred Amiga experts (that's what they thought of themselves at least)
207 tried for three years to find a way to implement memory protection (MP) for
208 AmigaOS. They failed. You should take it as a fact that the normal AmigaOS will
209 never have MP like Unix or Windows NT.
211 But all is not lost. There are plans to integrate a variant of MP into AROS
212 which will allows protection of at least new programs which know about it. Some
213 efforts in this area look really promising. Also, is it really a problem if your
214 machine crashes? Let me explain, before you nail me to a tree. :-) The problem
215 is not that the machine crashes, but rather: 
217 1. You have no good idea why it crashed. Basically, you end up having to poke 
218    with a 100ft pole into a swamp with a thick fog. 
219 2. You lose your work. Rebooting the machine is really no issue.
221 What we could try to construct is a system which will at least alert if
222 something dubious is happening and which can tell you in great detail what was
223 happening when the machine crashed and which will allow you to save your work
224 and *then* crash. There will also be a means to check what has been saved so you
225 can be sure that you don't continue with corrupted data.
227 The same thing goes for SVM (swappable virtual memory), RT (resource tracking)
228 and SMP (symmetric multiprocessing). We are currently planning how to implement
229 them, making sure that adding these features will be painless. However, they do
230 not have the highest priority right now. Very basic RT has been added, though.
233 Can I become a beta tester?
234 ---------------------------
236 Sure, no problem. In fact, we want as many beta testers as possible, so
237 everyone is welcome! We don't keep a list of beta testers though, so all
238 you have to do is to download AROS, test whatever you want and send us a
239 report.
242 What is the relation between AROS and UAE?
243 ------------------------------------------
245 UAE is an Amiga emulator, and as such has somewhat different goals than AROS.
246 UAE wants to be binary compatible even for games and hardware hitting code,
247 while AROS wants to have native applications. Therefore AROS is much faster than
248 UAE, but you can run more software under UAE.
250 We are in loose contact with the author of UAE and there is a good chance that
251 code for UAE will appear in AROS and vice versa. For example, the UAE developers
252 are interested in the source for the OS because UAE could run some applications
253 much faster if some or all OS functions could be replaced with native code. On
254 the other hand, AROS could benefit from having an integrated Amiga emulation.
256 Since most programs won't be available on AROS from the start, Fabio Alemagna
257 has ported UAE to AROS so you can run old programs at least in an emulation box.
260 What is the relation between AROS and Haage & Partner?
261 ------------------------------------------------------
263 Haage & Partner used parts of AROS in AmigaOS 3.5 and 3.9, for example the
264 colorwheel and gradientslider gadgets and the SetENV command. This means that in
265 a way, AROS has become part of the official AmigaOS. This does not imply that
266 there is any formal relation between AROS and Haage & Partner. AROS is an open
267 source project, and anyone can use our code in their own projects provided they
268 follow the license.
271 What is the relation between AROS and MorphOS?
272 ----------------------------------------------
274 The relationship between AROS and MorphOS is basically the same as between AROS
275 and Haage & Partner. MorphOS uses parts of AROS to speed up their development
276 effort; under the terms of our license. As with Haage & Partner, this is good
277 for both the teams, since the MorphOS team gets a boost to their development
278 from AROS and AROS gets good improvements to our source code from the MorphOS
279 team. There is no formal relation between AROS and MorphOS; this is simply how
280 open source development works.
283 What programming languages are available?
284 -----------------------------------------
286 Most development for AROS is done using ANSI C by crosscompiling the
287 sources under a different OS, eg. Linux or FreeBSD. Fabio Alemagna has
288 completed an initial port of GCC to i386 native. However, it is not
289 currently on the ISO or integrated into the build system.
291 The languages that are available natively are Python_, Regina_ and False_:
293 + Python is a scripting language which has become quite popular, because of 
294   its nice design and features (object-oriented programming, module system,
295   many useful modules included, clean syntax, ...). A separate project has 
296   been started for the AROS port and can be found at 
297   http://pyaros.sourceforge.net/.
299 + Regina is a portable ANSI compliant REXX interpreter. The goal for the AROS
300   port is to be compatible with the ARexx interpreter for the classic
301   AmigaOS.
303 + False can be classified as an exotic language, so it will most likely not be 
304   used for serious development, although it can be lots of fun. :-) 
306 .. _Python: http://www.python.org/
307 .. _Regina: http://regina-rexx.sourceforge.net/
308 .. _False:  http://wouter.fov120.com/false/
311 Why is there no m68k emulator in AROS?
312 --------------------------------------
314 To make old Amiga programs run on AROS, we have ported UAE_ to AROS. AROS's
315 version of UAE will probably be a bit faster than other versions UAE since AROS
316 needs less resources than other operating systems (which means UAE will get more
317 CPU time), and we'll try to patch the Kickstart ROM in UAE to call AROS
318 functions which will give another small improvement. Of course, this only
319 applies to the native flavors of AROS and not the hosted flavors.
321 But why don't we simply implement a virtual m68k CPU to run software directly on
322 AROS? Well, the problem here is that m68k software expects the data to be in big
323 endian format while AROS also runs on little endian CPUs. The problem here is
324 that the little endian routines in the AROS core would have to work with the big
325 endian data in the emulation. Automatic conversion seems to be impossible (just
326 an example: there is a field in a structure in the AmigaOS which sometimes
327 contains one ULONG and sometimes two WORDs) because we cannot tell how a couple
328 of bytes in RAM are encoded.
330 .. _UAE: http://www.freiburg.linux.de/~uae/
333 Will there be an AROS Kickstart ROM? 
334 ------------------------------------
336 There might be, if someone creates a native Amiga port of AROS and does all the
337 other work needed to create a Kickstart ROM. Currently, no one has applied for
338 the job. 
341 Software questions
342 ==================
344 How do I access AROS's disk images from UAE?
345 --------------------------------------------
347 The floppy disk image can be mounted as a hardfile and then used as a 1.4 MB
348 harddisk within UAE. After you have put the files you want on the hardfile disk
349 image (or whatever you wanted to do), you can write it to a floppy.
351 The geometry of the hardfile is as follows::
353     Sectors    = 32
354     Surfaces   = 1
355     Reserved   = 2
356     Block Size = 90
359 How do I access AROS's disk images from hosted flavors of AROS?
360 ---------------------------------------------------------------
362 Copy the disk image to the DiskImages directory in AROS (SYS:DiskImages, eg.
363 bin/linux-i386/AROS/DiskImages) and rename it to "Unit0". After starting AROS,
364 you can mount the disk image with::
366     > mount AFD0: 
369 What is Zune?
370 -------------
372 In case you read on this site about Zune, it's simply an open-source
373 reimplementation of MUI, which is a powerful (as in user- and
374 developer-friendly) object-oriented shareware GUI toolkit and de-facto
375 standard on AmigaOS. Zune is the preferred GUI toolkit to develop
376 native AROS applications. As for the name itself, it means nothing,
377 but sounds good.
379 How can I restore my Prefs to defaults?
380 ---------------------------------------
382 In AROS, open CLI shell, go to Envarc: and delete relevant files for the 
383 pref you want to restore.
385 What is the Graphical mem and other memory in Wanderer?
386 -------------------------------------------------------
388 This memory division is mostly a relic from Amiga past, when graphical memory was application memory before you added some other, called FAST RAM, memory where applications ended, when graphics, sounds and some system structures were still in graphic memory.
390 In AROS-hosted, there isn't such kind of memory as FAST, but only GFX, when on Native AROS, GFX can have a max of 16MB, although it wouldn't reflect the state of the graphic adapter memory...  It has no relation to the amount of memory on your graphics card.
392 *The longwinded answer*
393 Graphics memory in i386-native signifies the lower 16MB of memory in the system. That lower 16MB is the area where ISA cards can do DMA. Allocating memory with MEMF_DMA or MEMF_CHIP will end up there, the rest in the fast 
394 memory.
396 Use C:Avail HUMAN command for memory info.
398 What do the Wanderer Snapshot <all/window> action actually do? 
399 --------------------------------------------------------------
401 This conmmand must remember icon`s placement of all (or one) windows.
403 How do I change the screensaver/background?
404 -------------------------------------------
406 At the moment the only way to change screensaver is to write your one.
407 Blanker commodity could be tuned with Exchange, but it able to do only "starfield" with given amount of stars.
408 Background of Wanderer is set by Pref tool Prefs/Wanderer.
409 Background of Zune Windows is set by Zune prefs Prefs/Zune. You can also set 
410 your chosen application preferences by using the Zune <application> command.
412 I`ve launch AROS-hosted but it`s failed
413 ---------------------------------------
415 This could be probably fixed by creating a WBStartup directory in the AROS 
416 directory. If you are root and AROS crashes at launch, do "xhost +" before 
417 "sudo && ./aros -m 20". You must also give it some memory with -m option as 
418 shown. Also don`t forget about BackingStore option in section Device of your 
419 xorg.conf.
421 What are the command line options for AROS-hosted executable?
422 -------------------------------------------------------------
424 You can get a list of them by rinning ./aros -h command.
426 What are the AROS-native kernel options used in GRUB line?
427 ----------------------------------------------------------
429 Here`s some::
431     nofdc - Disables the floppy driver completely.
432     noclick - Disabled the floppy disk change detection (and clicking)
433     ATA=32bit - Enables 32-bit I/O in the hdd driver (safe)
434     forcedma - Forces DMA to be active in the hdd driver (should be safe, but       might not be)
435     gfx=<hidd name> - Use the named hidd as the gfx driver
436     lib=<name> - Load and init the named library/hidd
438 Please note that they are case-sensitive.
440 How can I transfer files to virtual machine with AROS?
441 ------------------------------------------------------
443 First and simpliest way is to put files to the ISO image and and connect it to VM. There`s alot of programs able to edit ISO`s like UltraISO, WinImage, 
444 or mkisofs. Second, you can set up the network in AROS and FTP server on your 
445 host machine. Then, you can use FTP client for AROS to transfer files. This is 
446 tricky enough to stop at this point. User documentation must contain chapter on 
447 networking.
450 Hardware questions
451 ==================
453 Where can I find an AROS Hardware Compatibility List?                   
454 -----------------------------------------------------
456 You can find one on the `AROS Wiki <http://en.wikibooks.org/wiki/Aros/Platforms/x86_support>`__ page. There can be
457 another lists made by the AROS users.
459 Why Aros can`t boot from my drive set as the SLAVE on IDE channel?
460 ------------------------------------------------------------------
462 Well, AROS should boot if the drive is SLAVE but ONLY if there`s a drive also 
463 on MASTER. That`s appeared to be a correct connection respecting to the IDE 
464 specification, and AROS follows it.
466 My system hangs with red cursor on screen
467 -----------------------------------------
469 One reason for this can be use of the serial mouse (these is not supported yet).
470 You must use PS/2 mouse with AROS at the moment. Another can be if you`ve chosen an video mode unsupported by your hardware, in boot menu. Reboot and try a different one.