>&.Text.Document.ExtractDoc

Package Version 0.20 17th July 1989

ExtractMod Program Documentation

This file documents the BASIC program ExtractMod (0.20,17th June 1989).

It contains two sections:

        - ExtractMod Documentation
                Information about the ExtractMod program.
        * Package Documentation
                Information about the package in general. Read this.

Document Version 0.01 17th June 1989

--- ExtractMod Documentation

!!! This program will not work as written on an A305 machine !!!

        The ExtractMod program allows the user to create *RMLOADable module
images from modules stored in a file or in memory in the 'in memory' list 
format. Its primary use is for decomposing an OS ROM into its constituent parts
so that any one module from that release of the OS can be RMLOADed into a later
machine. For this to work you will need a copy of the ROM on disc. The Arthur
ROM (1.2 and previous) and the RISC OS 2.0 ROM can be saved with the command

*SAVE $.ROM 3800000 3880000

This saves the ROM currently in the machine if it is a 512Kbyte ROM. 

        Next you need to find the start of the module chain. Use a memory
editor to find the title string of a module. Normally the module header will
be just before this. At the start of the module header will be the run,
initialise and finalise entries. Run will be 0 for most modules in the OS.
Before the run entry should be a word of smallish positive value. This is the
module size. If it is negative then this is not a valid module chain start. 
Note that the first module in both OSes I have seen has had an invalid size
for the first module. Remember the address (or offset from the start for a
file). This is the number you will have to enter for the program.
The numbers you need for common ROMs are:
Arthur 1.2      Offset 62bc Address 38062bc
RISCOS 2.0      Offset 873c Address 380873c

When you chain the program it will ask you:

Ram or file (R/F) : 

pressing return will select file mode.

Then, it will ask for a filename if necessary and finally ask for the address
or offset. Finally you will be asked for the name of a directory to put the
files into. If you just press return then the modules will only be listed,
not saved.

Each module is listed as

SosijRoles (380999a,12da)

The first number is the address, the second is the length. 


- Caution

        This package is not intended for novice Archimedes users, nor will it
be of any use to them. If you don't understand what it's doing, it's probably
of no use to you.

--- Package Documentation

*** Users of other shareware written by me please note - the text below may
*** look the same as others but it is not. Take a few moments to look through
*** it for differences, please.

This package contains:

   The software contained in this package is Shareware. The word 'Shareware'
means many things to many people, so I'll explain what I mean. In fact, some
people would call this 'freeware' or 'public domain software' but it hardly
matters what you call it - your obligations are set out below.
   The program is free. You may make any number of copies and give them away to
anyone (subject to the condition that you give them ALL the files in the
package). You may not sell this software, or use it otherwise for personal gain
without my permission. If you wish to post it on your Bulletin Board or include
it in your Shareware library then that, too, is fine.
   If you want to add any part of the code or data to one of your programs for
your own use, then that's fine too. If you want to add it to something you plan
to sell, or otherwise release as copyright material (whether for gain or not)
then you'll need my permission - I retain copyright on this program.
   If you like this program and find it useful then I would appreciate a small
donation (say 5 pounds). This donation is a voluntary contribution.
   If you send a donation and say which version of the package you have then I
will send you an update if there is one. This disc will also contain up-to-date
copies of as much of my shareware as will fit, plus any other stuff I can fit.
There may be no update, since, for the moment, I've done all I want to to this
program. Thus I don't guarantee that, if you send me money, I'll send you a
new version of the program. You will, however, get a disc with things on it. If
you'd prefer to wait until there is a disc with a new version on it then please
say so. In this case you'll get a thankyou note.
   This program has been tested with RISC OS. It should be suitable for both
Arthur 1.2 and RISC OS. Please state, when sending for updates, whether you
have RISC OS.
   This software carries no warranty, either express or implied. I've tested it
and, to the best of my knowledge, there are no bugs. If you come across a bug
then I'd be delighted if you got in touch with me. I can't guarantee to fix it
but I'll probably have a good try.
My address is:
        Martyn Lovell
        16, Fairwater Park,
        Barnwood,
        Gloucester.
        GL4 7HF
No telephone calls please.
However, I can be contacted as:
Cix:       MartynL
Janet:     ZCEEB02@UK.AC.UCL.EUCLID
Interspan: Contact via Janet at above address
Eureka II: Martyn Lovell (112)
Note that, during university terms, I read all this EMail sites regularly but
in the holiday periods I may read them less regularly.
For bug reports please send the following information:
        Machine Type
        OS Version
        Software Version
        Modules Installed
        Modules Unplugged
        Podules Installed
        Drives Installed
        RAM Available
        Monitor Type
        Which OS was saved file
        Which OS was running at the time of the crash
        What address was the program started at
        Please if possible send a copy of the file
        Is the bug repeatable?
and everything else that seems relevant.
