ferry@chorus.fr (Ferry de Jong) (01/14/91)
MONTHLY POSTING: Frequently Asked Questions and Answers
This article contains a list of frequently asked questions
and answers. It is posted by me every month in
comp.sys.amiga.introduction.
Pay attention to the version number of this article. It
indicates what kind of changes are made to the contents
compared to the previous posting.
First number changed: New questions and answers ad-
ded.
Second number changed: Answers to existing questions
changed or updated.
If you have suggestions about this article, feel free to
mail them to me so I can improve this document. You can
reach me by e-mail:
ferry@chorus.fr or ferry%chorus.fr@mcsun.EU.net
I'd like to thank the following people for their contribu-
tions:
Kent Paul Dolan(xanthian@zorch.SF-Bay.ORG)
For sending several parts of information for this ar-
ticle.
Edwin Hoogerbeets(ehoogerbeets@watyew.uwaterloo.ca)
For sending me his collection of FAQ&A postings.
Mic Kaczmarczik(mic@emx.utexas.edu) UT Austin Compu-
tation Center
For the information about mtools.
DISCLAIMER
Use the information in this posting at your own risk and cost.
All opinions expressed are mine, not necessarily those of my
employer.
----------8<----------8<----------8<----------8<----------8<----------
You can find answers to the following questions
HARDWARE
1.1. Why does my battery backup-ed clock not work properly?
1.2. What are the 8520's?
1.3. What hardware is broken and can I repair it myself?
1.4. During a boot or RESET the screen changes. What does this mean?
1.5. Can I replace the 68000 with an 68010 to get a higher perfor-
mance?
1.6. What is the difference between the A2000 and the B2000?
1.7. What is the difference between al these kinds of memory?
1.8. On boot time on an AMIGA 2000 the first key pressed isn't read.
1.9. What is done upon boot time?
SOFTWARE
2.1. Who is Fred Fish and what are the AmigaLibDisks?
COMMUNICATION
3.1. How can I exchange disks between a UNIX system and the AMIGA?
3.2. How can I post articles if I'm not on usenet?
3.3. How can I read the comp.sys.amiga.* newsgroups when I'm not on
usenet?
3.4. How can I ftp by mail?
3.5. What file transfer protocols are there for a modem?
3.6. In what forms can files be transferred if I load them with my
modem?
Answers about HARDWARE questions.
1.1. Why does my battery backup-ed clock not work properly?
Symptoms: Clock is several minutes/hours early/late.
Clock is RESET to first day of the AMIGA's life.
The battery backup-ed clock draws its power during power-off of the AMI-
GA from a small NiCd-battery. There are two often occuring reasons for
the strange behaviour of the clock:
1. The battery is (almost) enpty. This should normally only happen
after a very long power-off of the AMIGA. (Several weeks/months)
2. The battery is old and can't supply the clock with the voltage
or current it needs to operate properly.
To solve the problem in the first case you should turn your AMIGA on for
several hours to allow the battery to recharge. After this you can set
the setclock command and everything should work OK.
The solution in the second case is to have the battery checked and re-
placed by your AMIGA dealer.
1.2. What are the 8520's?
The 8520 is a chip inside the AMIGA. In the 500/1000/2000 there are two
of them. They are custom chips of the company that designed and built
the AMIGA.
1.3. What hardware is broken and can I repair it myself?
Symptoms: Printer doesn't work properly anymore.
Audio sampler seems to produce one constant or random values.
Modem doens't work properly anymore.
Joy-sticks seem not to be working.
All the previous mentioned devices are driven by the two 8520's in your
AMIGA. These are very delicate chips and history has proven that they
are very fragile. It might well be the case that one of them is broken.
You can check this by exchanging them inside your AMIGA. (They are both
socket-ed.) ONLY do this if you (Opening the AMIGA isn't allowed during
the guarantee period!) know what you are doing. If exchanging does make
a difference one of them is broken an you can replace the broken chip by
a new one. You can buy them only at certain places eg. at your dealer.
They cost about $10,- $15,- a piece.
If you don't want to repare this yourself, bring your computer to a
qualified repare company.
1.4. During a boot or RESET the screen changes. What does this
mean?
To indicate problems detected within the hardware, the screen is changed
to one of the following colours: [See also question 1.9..]
dark gray Hardware OK
light gray Software OK
blue Bad Custom Chips
green Bad CHIP RAM
red Checksumerror ROM (Bad ROM)
yellow exception before a GURU-meditation could be given
1.5. Can I replace the 68000 with an 68010 to get a higher perfor-
mance?
Yes, in general you can replace the 68000 with an 68010. It is a opera-
tion that needs to be done with care because they are large chips and
aren't very easy to get out/in the socked. NB Don't put the 68010 in the
socked the wrong way around!
Don't expect to much performance increase. Only programs with a lot of
calculation might run a bit faster but the overall performance increase
will be less than 5%.
Because of bad programming there are several programs that will stop
running when you are using a 68010. Keep this in mind.
List of known programs that won't run with an 68010
[none]
[Send updates to me]
1.6. What is the difference between the A2000 and the B2000?
Commodore in Braunschweig (Germany) has built the A2000 based on the
AMIGA 1000. They added the slots and 512 KBytes RAM. This was done in
order to allow an XT-card inside the computer.
Later Commodore developed the B2000 which was based on the new hardware
also used in the AMIGA 500. It has 1 MByte of RAM and is prepared for 1
MByte of CHIP RAM.
Both have the same case but are completely different inside.
1.7. What is the difference between al these kinds of memory?
These are the most common terms used that have to do with memory:
Autoconfig RAM Memory that is available and known to the system
as you power on the machine. This means that you don't have to exe-
cute a program to let the operating system know this memory is
available.
On the other hand NonAutoconfig RAM needs to be made available,
which is usually done with programs like AddMem and AddRAM. With
these you are telling the OS where in the addressing space the
memory board can be found.
Public RAM [Good explanation needed.]
FAST RAM FAST RAM is any RAM out of the reach of the cus-
tom chips. It is known as FAST RAM because code and data may be
accessed by the CPU there faster, as it does not have to deal with
the bus contention in the CHIP RAM addressing space.
On the CHIP RAM bus, time has to be shared by both the processor
and the custom chips. If the custom chips are very active at a
given time, the CPU must wait for the bus to be free for it's use.
[Some activities of the custom chips can 'cycle steal' from the
CPU, causing it to be forced to wait.] Normally, the 680x0 on the
Amiga only needs the bus every alternate clock cycle in order to
run full speed...thus the other cycles not used are taken up by the
custom chips. However, when the blitter is in use, or the coproces-
sor (COPPER), you see some of this cycle stealing. As a result, the
CPU can usually run quite close to full speed on the CHIP RAM bus,
but there is almost always some activity which slows it down a bit.
And of course any heavy graphics use will cause considerable slow-
ing if the CPU is forced to run code out of the CHIP RAM area.
Now, with FAST RAM on the system, the CPU can generally run full
speed, provided the code/data being accessed is in FAST RAM, be-
cause the custom chips cannot access this memory medium, and are
not using it's bus.
32 bit RAM There is no difference in the chips themselves.
What IS different is how they are accessed. On a 16 bit bus (16-bit
memory), 16 bits of data can be operated on at one time
(transferred about, etc...). The 32-bit bus can work with 32-bits
of data at a time. Thus if you are running two different buses...on
16-bit and one 32-bit, the 32-bit bus can handle more data at a
given interval (assuming appropriate processors for each and
equivalent bus speeds). This is handled at the interface logic and
bus level, not within the memory chips themselves.
RAM waitstates You will run into having to have wait states if
the memory being utilized is slower than the speed at which the
processor needs it to come back. For instance, FAST RAM on the
A2000 (68000) is usually rated at 120-100ns...this is perfectly
fine for zero-wait state operation on that bus. The processor is
incapable of "asking for" the data any faster. Putting 80ns memory
here would be a waste of money, as the processor will not be able
to access it any faster. [The processor/bus is running at a certain
speed. It will not speed up for faster memory]. Now, if you were to
put 200ns parts on a FAST RAM expansion board, you would have to
put some wait states into that.
FastMemFirst Memory on the Amiga is prioritized. Now, normal-
ly CHIP RAM is given a priority on the system of -10. This is to
insure it is not used by programs requesting simply "I want a chunk
of memory", and not saying "and it needs to be CHIP". This helps to
prevent CHIP RAM from being used for things which do not need to be
there.
Now, FastMemFirst is special. On Amigas with 512KBytes of CHIP RAM,
the other 512KBytes which make up the 1 MByte std. complement is
what is called "SLOW-FAST" RAM. This is because, while the custom
chips cannot use it, it is still subject to the bus contention for
CHIP RAM, as it is in fact on that bus. [When you upgrade to the
1-MByte Agnus, this "SLOW-FAST" memory is what becomes the other
512KBytes of CHIP RAM.] FastMemFirst is useful if you have this
"SLOW-FAST" memory, and also have true FAST memory on the system.
What it does is place your "SLOW-FAST" memory at the same -10
priority as CHIP RAM. Since most true FAST RAM will default to a
priority of 0, it places your true FAST RAM ahead of the CHIP and
SLOW-FAST memory on the memory lists. This is so programs which do
not need to use CHIP RAM (and a program's actual CODE never does
for the most part) will be placed in you FAST RAM, and run somewhat
faster. SLOW-FAST and CHIP will only be used when either requested
specifically by a program, or when your FAST RAM is filled.
1.8. On boot time on an AMIGA 2000 the first key pressed isn't
read.
This can be caused by the fact that the computer thinks that a special
key is being held down. E.g. CTRL LEFT-A, in the last case the m and n
(LEFT-A n and m do swap screens.) won't work. This can be solved by
pressing the CTRL of LEFT-A key yourself.
To really solve the problem it might be needed to adjust the computer
hardware. (Cutting two capacitors on the motherboard.) Your dealer
should be able to help you in this case.
1.9. What is done upon boot time?
The following thing are done: [See also question 1.4..]
Clear Chips
Disable DMA and Interrupts
Clear the Screen
Check the Hardware
Pass or fail the Hardware to the Screen
Checksum the ROMs
Pass or fail the ROMs to the Screen
System setup
Check the for RAM at $C00000
Move SYS_BASE to $C00000 if it exists
RAM Test
Pass or fail the RAM to the Screen
Check the Software
Pass or fail the Software to the Screen
Set up the RAM
Link the Libraries
Find External RAM and link it to the list
Set up Interrupts and DMA
Start default Task
Check for 68010, 68020, and 68881
Check for an Exception
System Reset
Answers about SOFTWARE questions.
2.1. Who is Fred Fish and what are the AmigaLibDisks?
The AmigaLibDisks are disks with public-domain software and shareware
programs (If possible with sources.) assembled by Fred Fish. It is the
largest set of public-domain disks available for the AMIGA. You can find
hundreds of utilities and games on these disks often with their sources
included.
These disks are available from Fred Fish (See postings in
comp.sys.amiga.announce.) and are available by anonymous ftp on the fol-
lowing sites:
abcfd20.larc.nasa.gov / 128.155.23.64 Directories: [?]
cs.utah.edu / 128.110.4.21 Directories: [?]
[European site adresses wanted.]
Answers about COMMUNICATION questions.
3.1. How can I exchange disks between a UNIX system and the AMIGA?
The most common [and only?] way to exchange floppies between a UNIX
machine and the AMIGA is by writing them in MS-DOS format.
Programs and utilities for this are:
UNIX utilities:
MTOOL (Available in archives for the newsgroups:)
comp.sources.misc
comp.sources.unix
(and via anonymous ftp from:)
[?]
Usage:
1) Log into a SUN 3/80 or SPARCstation and add the directory of mtools
to your path:
set path = ($path [path to mtools]) ; rehash
2) Insert a floppy into the drive. To format the disk at high-density
and install an MS-DOS file system on it, type
mkdfs -f -h
If you want to use a low-density 720K disk instead (what you normally
want if you use if for AMIGA conversion), type
mkdfs -f
You only need to put a file system on the disk the first time you use it
as an MS-DOS diskette; you definitely want to reformat the disk if it
has previously been used for another filesystem.
3) To copy files to and from a formatted and initialized floppy, use the
mcopy program. For example, to copy the files file1, file2, and file3 to
the root of the MS-DOS file system on the floppy, type
mcopy file1 file2 file3 a:/
To copy a single file on the MS-DOS floppy to your Unix directory, type
mcopy a:/file1 .
The data in the file is copied AS-IS, with no format translation; you
can use the -t option to mcopy to translate text files into the MS-DOS
notion of a text file, and vice versa.
4) You can use the mdir command to list files on the MS-DOS floppy
mdir
5) You can also remove files
mdel mdsos-filename
6) To eject the disk, type
eject
AMIGA utilities:
Dos2dos: (commercial product)
MSH (messydos):(FishDisk #327)
This is a utility that gives you the needed files and programs so you
can add a device to your Mountlist which makes any floppy drive use-able
with MS-DOS formatted disks.
3.2. How can I post articles if I'm not on usenet?
You can send news to all seven main newsgroups by sending it to
news-group-name@ucbvax.berkeley.edu
where news-group-name is the name with the character - instead of .
For example to send something to misc.forsale.computers e-mail it with:
mail misc.forsale.computers@ucbvax.berkeley.edu
3.3. How can I read the comp.sys.amiga.* newsgroups when I'm not
on usenet?
[Information about mailing lists for the groups needed.]
3.4. How can I ftp by mail?
[Information about mailservers needed.]
3.5. What file transfer protocols are there for a modem?
The absolutely simplest way for an executable file to come to you is in
raw, binary mode, exactly the file you want to execute. This is most
unusual. Normally they are converted [See question 3.6..].
To download such a file, you have to start getting concerned with the
method you use to download it, called the protocol, since many (most)
communications lines are not directly capable of transporting a raw
binary file. (They tend to use some of the possible bit combinations as
control signals for the line software and hardware.)
Here are some protocols your terminal program may support: ASCII, xmo-
dem, ymodem, zmodem, umodem, kermit. (There are others.)
ASCII protocol is used to transmit only printable characters. The eight
bits that form a character can represent decimal integer values from
zero to two hundred fifty five. The printable ones are the ones from 32
(space) to 126 (tilda), plus the codes for tab, newline, and carriage
return (the latter only in older systems). This won't work for raw
binary data, whether your executable files or other kinds of binary.
The x,y,z,u-modem protocols are a family of ever more capable protocols,
which are capable (with some tricks you can ignore) of transmitting all
256 possible character values. One, xmodem, is not especially good for
transmitting executable Amiga programs, though. It is left over from the
days of the old CP/M operating system, when all files were allocated in
blocks of 128 bytes (characters), with a special code in the last block
at the correct point after the last data character (byte) to indicate
the end of file, and junk after that mark filling out the rest of the
block. This extra junk makes the Amiga executable program loader program
"sick", because it does "scatter loading" (puts parts of programs in
parts of memory that don't necessarily "touch"), and it tries to inter-
pret the junk (it doesn't know about the old CP/M file format) as
scatter loading instructions. This problem with xmodem can be one of the
reasons a file you download doesn't "work" after it is downloaded.
The next difficulty can come because these programs are written to do
file transfers among both MS-DOS and Unix computers. It happens that,
for printed text, many older systems, including the IBM-PC MS-DOS ones,
use two characters (carriage return, line feed) to indicate the end of a
line, while newer systems, including Unix and AmigaOS, use a single
character (now called "newline", but the same code as the old line feed)
to indicate the end of a line. To "simplify" transferring text files,
the x,y,z,u-modem and kermit transfer protocols automatically translate
the two characters to the one character when copying files between cer-
tain systems, and this translation is the _default_ operation of these
protocols. In each one, to transfer an archive (below) or an executable
file, you have to do whatever is appropriate to the protocol to specify
*binary* or *image* transfer mode.
3.6. In what forms can files be transferred if I load them with my
modem?
To make it easier to transfer files they might be stored in special
ways. For example with only printable characters. (For ASCII transfer.)
More often several program are packed together in a special large ar-
chive to be able to transfer them in one go.
Because so many older communications systems had trouble transferring
raw binary data, there are a couple of ways to translate raw binary
files into (bigger) printable files, move the printable files from com-
puter to computer until at the destination or the next host above it,
and then translate the printable data back to raw binary data. There are
two common translation pairs:
uuencode <-> uudecode
btoa <-> atob
you will rarely see the latter, even though it is a few percent more ef-
ficient.
You can recognize a uuencoded (and now printable) file, often embedded
in a larger file such as a news article, by a first line like
begin nnn filename
where "nnn" is some three digit octal number for the Unix file protec-
tion bits to apply to the back-translated raw binary file, and
"filename" is the name the file should have when it is translated back
to binary. Sometimes there are two lines ahead of this one with the key-
word "table" and some characters that require special care when tran-
sporting a file from ASCII machines to EBCDIC (IBM mainframe) machines,
but again, except for including it in what you pass to the uudecode pro-
gram, you can ignore this most times.
Where the uuencoded file is not part of a larger file, it will almost
always have a name ending in either "uu" or "uue" (depending on a minor
difference in which flavor of uuencode is used to create it - ignor-
able); more on this below.
Three other considerations affect the way you find a file packaged.
First, files contain lots of "redundant" information, which causes them
to take up a larger than necessary amount of storage space and transfer
time. So called "compression" programs attempt to squeeze files into
less space using various tricks. In almost every case, the output is a
smaller, raw binary file which is not executable. Common programs used
to compress files that you might want to transfer to the Amiga for your
use are:
compress <-> uncompress
arc
zoo
lharc
lhwarp
pkazip
Second, files often occur in groups, which should be kept together, such
as the source, documentation, executable, icon, data, and control files
for the same program. Many archive methods exist to group many small
files into one larger file. Ones you are likely to encounter trying to
get software to your Amiga are:
shar <-> unshar
arc
zoo
lharc
lhwarp
pkazip
Third, groups of files often have some (tree shaped) file structure,
just like the directory of your disk, which you would like to preserve
from where the files are packaged in an archive to where they are un-
packaged for use. Archive methods that can recreate a directory struc-
ture that you will encounter are:
shar <-> unshar (sometimes)
zoo
lharc
lhwarp (it actually packages a whole floppy disk trackwise)
Moreover, combinations of the various packaging methods can be used;
among the most common combinations are:
FILES -> uuencode -> shar -> TRANSFER -> unshar -> uudecode -> USE
FILES -> shar -> compress -> TRANSFER -> uncompress -> unshar -> USE
FILES -> arc -a -> uuencode -> TRANSFER -> uudecode -> arc -x -> USE
FILES -> zoo a -> uuencode -> TRANSFER -> uudecode -> zoo e// -> USE
FILES -> lharc a -> uuencode -> TRANSFER -> uudecode -> lharc x -> USE
normally, shar files have names ending in .sh, compressed files in .Z,
compressed uuencoded files in .Z.uu (or .Z.uue), arced files in .arc,
arced uuencoded files in .arc.uu, (or rarely .auc), zooed files in .zoo,
zooed uuencoded files in .zuu, lharced files in .lzh, lharced uuencoded
files in .lzh.uu, lhwarped files in .lzw, and pkazipped files in .zip.
Since the uuencoded file includes the other file's name, sometimes the
compound names like .arc.uu are not used and just .uu is used instead.
So if you have one of the news articles with a uuencoded file in it,
your first step, on your host system, is to edit it and cut off the news
article header and any introductory material, and any signature file at
the end. If the file was published in several news articles (many
comp.binary.amiga file archives are), you have to trim the trash off all
the articles, then join the files that result into one file. On a Unix
system, this is done by saying something like:
cat filename1 filename2 filename3 > wholefilename.uu
while on an Amiga, this would be done by saying:
join filename1 filename2 filename3 as wholefilename.uu
instead.
When you have a file that starts with (the optional table and) a begin
line, and ends with an end line, you can then say, on a Unix system:
uudecode wholefilename.uu
and it will create a file with whatever name and permissions are on the
begin line, while, if you have the Amiga uudecode program, it works just
the same, but the permissions are ignored (they're wrong for an Amiga).
While if the file was instead a shar file, you would have started with:
unshar filename
perhaps after trimming off the news header depending upon how clever
your unshar program is. This is the usual way to do the
comp.sources.amiga articles.
If you are still on your host system, you will either have, if uudecod-
ing, created (normally) a .zoo or .lzh file, or, if unsharing, created a
(subdirectory tree) of files. If the latter, and your host site has zoo
or the Unix lharc patched for the Amiga, get in the top directory creat-
ed by/from the shar, and say either:
find * -print | zoo aI somefilename.zoo
or
lharc aA *
to make respectively a .zoo or .lzh archive of all the files.
Transfer it to your machine using one of y,z,umodem or kermit, in binary
mode.
Use the zoo or lharc program from the directory/disk where you want the
program files to live, like
zoo e// pathtofile/somefilename.zoo
or
lharc -x -m x pathtofile/somefilename.lzh
(for files packed on a Unix system, or
lharc -a -x -m x pathtofile/somefilename.lzh
for files packaged on an Amiga).
You can find all of the programs and documentation for them on the Fred
Fish public domain software collection. [See question 2.1..]
----------8<----------8<----------8<----------8<----------8<----------
___ ___ ___ ___ _ _ _ _
( _)( _)( ,) ( ,)( \/ )|( \/\/ )riting software takes twice as long
) _) ) _) ) \ ) \ \ / | \ / as you expect it to take...
(_) (___)(_)\_)(_)\_)(_/ | \/\/ Even if you keep this in mind!
e-mail: ferry@chorus.fr or ferry%chorus.fr@mcsun.EU.net