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