[comp.sys.amiga.introduction] MONTHLY POSTING: Frequently Asked Questions and Answers

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