$VER: arosboot.doc 41.7 (29.3.97) ***************************************************************************** AROS Native Boot Program Part of the Amiga Replacement OS (AROS) Written by Lennard voor den Dag Last revised: March 29, 1997 ***************************************************************************** ============================================================================= 0. Contents ----------------------------------------------------------------------------- 0. Contents 1. Introduction 2. Requirements 3. Installation 4. Usage 5. Config File Usage 6. Technical Information 7. WhoWhatWhere 8. Legalese 9. History ============================================================================= 1. Introduction ----------------------------------------------------------------------------- This document describes arosboot, the program used to load and install AROS modules on the Native Amiga. ============================================================================= 2. Requirements ----------------------------------------------------------------------------- Arosboot requires a 68020 or better processor and Kickstart V37 (Release 2.04) or better. ============================================================================= 3. Installation ----------------------------------------------------------------------------- If you have unpacked the archive, you will have a directory "AROS" where everything you need can be found. AROS/ AROS/arosboot AROS/arosboot.config AROS/os/ <== main AROS modules live here AROS/tools/ <== various utilities CD into this directory and you're ready to run "arosboot". ============================================================================= 4. Usage ----------------------------------------------------------------------------- arosboot CONFIGFILE,CHIP/S,FAST/S,KICK/S,LOCAL/S,CLEAR/S,CO=CLEARONLY/S, RESET/S,DEBUG/S,SIM=SIMULATE/S,FORCE/S,QUIET/S Configfile Config file to use, default is "arosboot.config". Chip/Fast/Kick/Local Force the modules to a particular type of memory. If your original Kickstart is V37 (Release 2), the default is chip memory. If you have fast memory on your motherboard, you can specify the option "fast" to force the modules to that fastmem. On Kickstart V39/V40 (Release 3/3.1) the default is "kick" memory. If you specify more than one memory type, the order of precedence is kick->local->fast->chip. Clear Clear the reset vectors before installing new modules. Use this if you have already loaded AROS and want to load new modules, or else there will be 2 copies of AROS modules in memory. Clearonly : only clear reset vectors and exit Only clear the reset vectors and exit. Use this so AROS will not come up during the next reset. Use it together with the reset option to reset the machine right now. Reset After arosboot has installed modules, the computer has to be reset to activate these modules. You can do that by hand or use this option to let arosboot reset the machine by itself. There will be a 2 second delay to give diskaccess a chance to finish. Debug Output debugging information. Include this debug output in a bug report, if you suspect there are problems with arosboot. This setting will override the quiet setting. Simulate Simulate loading, do not actually install modules. This will read the config file and load the modules into memory, but will immediately unload them. You can use this to test your installation. Force Normally, arosboot will not install modules if it finds that AROS modules have already been installed in the system. Use force to override this so new modules will be loaded. Don't forget to specify "clear" to delete the old modules from memory. Quiet Be quiet. All file operations (reading the config file and loading the modules) will be done relative to the directory where arosboot itself is located. This means you don't have to CD into arosboot's directory but can just run arosboot from anywhere and it will behave as if you CD'd into it's directory yourself. ============================================================================= 5. Config File Usage ----------------------------------------------------------------------------- Example config file: ----8<----8<---- ; ; arosboot config file ; ; MODULE os/exec.strap MODULE os/alert.hook MODULE os/utility.library ; FUNCTION -72 os/exec.strap ON ; InitCode FUNCTION -84 os/exec.strap ON ; MakeLibrary FUNCTION -90 os/exec.strap OFF ; MakeFunctions ----8<----8<---- MODULE lines Template: MODULE/K/A These lines contain the names (including (relative) paths) of the modules to install. The MODULE keyword is compulsory. FUNCTION lines Template: FUNCTION/N/K/A,MODULE/A,ON/S,OFF/S With these lines you can specify which functions in a module should be turned on or off. Currently this is only possible for the "exec.strap" module. If you turn a function off, the original AmigaOS function will be used instead. You can use this to selectively disable certain functions, to aid in debugging and more specific bug reports. The FUNCTION keyword is compulsory. The MODULE keyword can be omitted. Both arguments must be specified. If you don't specify ON or OFF, the function will be turned on. If you specify both ON and OFF, the function will be turned on. Be very careful if you disable functions. Many functions are part of a constructor/deconstructor pair. E.g. if you disable AllocVec, you also _must_ disable FreeVec. Experience with the AmigaOS API is recommended before you start turning functions on/off. If you are unsure about something, you can always ask for our help. COMMENTS Start comment lines with a ; character. ============================================================================= 6. Technical Information ----------------------------------------------------------------------------- 68020+ version -------------- There is no 68000 version at the moment, because AROS itself is only compiled for 68020 or better processors. This way you can never inadvertently install AROS modules on systems with a 68000/68010. 68000 support will be added in the future. arosboot and memory ------------------- AROS modules are loaded into RAM. The memory they are loaded in has to be available very early during the reboot. This limits the types of memory that can be used. On Kickstart V39 and above, exec recognizes all memory available for this process by marking it with a special flag, the "kickmemory" flag. On this Kickstart, arosboot will load memory into this kickmemory by default. On Kickstart V37, the exec doesn't have this flag, so arosboot has to guess which memory it can use for the modules. Chip memory is one region of memory that is guaranteed to always be available early in the reset procedure. Arosboot uses chipmemory by default on this Kickstart version. Fast memory on expansion cards is not guaranteed to be available early in the reset procedure, but fast memory on the motherboard generally is. If you have fast memory on your motherboard you can force AROS modules to be loaded into this fast memory by specifying the "fast" option. If you have fast memory on both the motherboard and expansion cards, you can try the "local" flag. This will load the modules in "local" memory, which is generally the fast memory on the motherboard, and the chip memory, with a preference for fast memory. arosboot and system patches --------------------------- If you use system patches like FastExec, MCP, SystemPrefs, or similar, you may find that there are problems with installation of AROS modules. Such utilities can move certain system structures to fast memory, but they will only do that after the system is up and running. AROS modules will be started very early in the reset procedure, before these utilities have had a chance to perform their memory swizzling. If such a utility relocates some system structure to fast memory, and the OS can't find that structure during the reset, it will construct a new structure. If this happens, all resetproof programs, such as AROS modules, will be purged from memory. More specifically, a new execbase structure will be built, which has empty reset vectors, so resetproof modules will be forgotten. If you experience problems (such as AROS disappearing during a reset), try turning off options that relocate certain things to fast memory. Examples of this are: SSP to fastmem, Exec to fastmem, Expansion to fastmem, Interrupts to fastmem, etc. Try turning all of these off, and if AROS works, turn them on one at a time to see which option is incompatible with AROS. arosboot utilities ------------------ Two utilities are included with arosboot: Showvecs shows a report of everything that lives at the system reset vectors used by arosboot. If the checksum of these vectors is correct, an extended report is printed, else only the vectors themselves are printed. If arosboot is successful, you can see the new contents of the vectors even before a reset. Printresmodules shows all Resident Modules that are currently in the System Resident Module List. Newly loaded AROS modules will only show up in this list after a system reset. To find AROS modules, look for modules that are in RAM (they have an address outside of the $f80000-$ffffff range), and the "arosboot.cookie" module at priority -120. ============================================================================= 7. WhoWhatWhere ----------------------------------------------------------------------------- More information on these pages on the WorldWideWait: http://www.lysator.liu.se/amiga/aros/ (Sweden Mirror) http://aros.fh-konstanz.de/~digulla/ (German Mirror) http://home.worldonline.nl/~ldp/aros/ (AROS for Amiga) If you have FTP, you can also get the most recent version as tar.gz files (quite smaller than lha) from: ftp://aros.fh-konstanz.de/pub/aros/ You can use these EMail addresses to send bug reports: aros-bugs@aros.fh-konstanz.de aros-linux-bugs@aros.fh-konstanz.de aros-amiga-bugs@aros.fh-konstanz.de ============================================================================= 8. Legalese ----------------------------------------------------------------------------- This software is subject to the "Standard Amiga FD-Software Copyright Note". It is MAILWARE as defined in paragraph 4b. If you like it and use it regularly please send a message to the following address: Aaron "Optimizer" Digulla Th.-Heuss-Str. 8 78467 Konstanz Germany EMail: digulla@aros.fh-konstanz.de or Lennard voor den Dag EMail: ldp AT xs4all DOT nl For more information please read "AFD-COPYRIGHT" (Version 1 or higher). ============================================================================= 9. History ----------------------------------------------------------------------------- 41.6 - Major overhaul. - New command line options. - Extended config file format. - Renamed to "arosboot". - Docs. 41.5 - Back out 41.4 change of falling back to MEMF_LOCAL. It turned out to worsen the situation when using FastExec with the "local" option. Still have the "-l" option in boot to force AROS to MEMF_LOCAL. 41.4 - No longer fall back to MEMF_CHIP on kick V37, but to MEMF_LOCAL. This may also benefit FastExec users. 41.3 - First public release. - Fail if option not recognized (e.g. "boot 0x" instead of "boot -x"). ============================================================================= END =============================================================================