home *** CD-ROM | disk | FTP | other *** search
/ ARM Club 3 / TheARMClub_PDCD3.iso / programs / emulaton / uae / Docs / FAQ < prev    next >
Text File  |  1997-06-01  |  20KB  |  356 lines

  1. Some Frequently Asked Questions. Please read this carefully if you have
  2. problems.
  3.  
  4. ** COMMON PROBLEMS
  5.  
  6. Q: Sometimes, after UAE exits, there is no autorepeat for the keys!
  7. A: Do "xset r on" (happens only in X, apparently mainly on Solaris boxes.
  8.    Dunno why.). [Should be fixed by now. Note that this always happens when
  9.    UAE crashes]
  10.  
  11. Q: When UAE starts up, it says "Illegal instruction: 4e7b". Why?
  12. A: That's normal, it's just the Kickstart CPU type test.
  13.  
  14. Q: When UAE starts up, it says "Illegal instruction: 00f8" (many times). Why?
  15. A: That's because your Kickstart ROM was compiled for the 68020.
  16.    (could also happen when there's a bug in UAE)
  17.  
  18. Q: When UAE loads <insert your favourite game> it says "Non-standard sync".
  19. A: Your favourite game is copy-protected. There are ways to transfer such
  20.    disks, but it's complicated and I won't help you because it would be much
  21.    too time-consuming to figure out all sorts of copy-protection schemes.
  22.    I hope there will be a general solution some day, but for now you're
  23.    unlucky.
  24.  
  25. Q: While it compiles, it says "xxx illegals generated" or "16 mismatches".
  26.    Is this a problem?
  27. A: No. I can use this information to tell whether there is a problem, and
  28.    there isn't.
  29.  
  30. Q: How can I produce an @ symbol (or any other sign)? On my PC keyboard it's 
  31.    AltGr+Q, but that doesn't seem to work.
  32. A: Look at the keyboard of your Amiga. Use the same combination that you would
  33.    need on a real Amiga. These combinations differ across countries. Make sure
  34.    you have loaded the right keyboard translation table for AmigaOS (e.g. in
  35.    Germany, make sure there's a "setmap de" command in the startup-sequence)
  36.    You can probably create a @ sign by pressing Alt+2, or Shift+2.
  37.  
  38. Q: The "configure" script does not find Tcl/Tk, but I have it installed!
  39. A: The script checks for an executable called "wish4.0". There is currently
  40.    no better test. Unfortunately, this executable is not always present,
  41.    even though Tk 4.0 is installed. If that is the case, find the "wish"
  42.    executable, go into the directory where you found it and type 
  43.    "ln -s wish wish4.0" (provided you have write rights in that directory,
  44.    i.e. you are super-user). Then go back to the UAE directory, remove the
  45.    file config.cache and rerun "configure". That should do the trick.
  46.  
  47.  
  48. ** INCOMPATIBILITIES
  49.  
  50. Q: UAE does not work with my Kickstart 1.2 image.
  51. A: You may need to turn off the harddisk and fastmem emulation with the "-a"
  52.    parameter. Kick 1.2 doesn't support the autoboot features that the harddisk
  53.    emulation requires.
  54.    You can tell that you are suffering from this problem if UAE gives you the
  55.    message "filesys_bput called".
  56.  
  57. Q: What do I do if a game/demo/application doesn't work?
  58. A: If you're trying to run a game or a demo, enable some slow RAM, and try
  59.    running it again.  Some older software has compatability problems which 
  60.    slow RAM can sometimes fix.  If it's an application, check for obvious
  61.    things like Kickstart version requirements, RAM, etc.  Also make sure the
  62.    software you're trying to run isn't for AGA equipped machines.
  63.  
  64.  
  65. ** AMIGA DISKS, DISK IMAGES, HARDDISKS, CDROMS
  66.  
  67. Q: Is it possible to read Amiga disks with a PC?
  68. A: Ask that in comp.emulators.misc :-) The answer is: NO! Unless you invent
  69.    and build some extra hardware yourself, which no one appears to have done
  70.    yet. You'd also need some extra software driver; the whole setup would be
  71.    similar to the X1541 cable/software for C64 emulators.
  72.    Some people have pointed out that you can buy a controller named "Catweasl"
  73.    which apparently can read all sorts of disks on a PC, including Amiga
  74.    disks. Please don't ask for details, I don't have the thing and I can't
  75.    tell whether it works.
  76.  
  77. Q: Couldn't I attach an Amiga floppy drive to the PC somehow, and use that to 
  78.    read Amiga disks?
  79. A: You can attach Amiga (low-density) drives to the PC, because they are
  80.    completely identical to PC drives. This won't help you, because the problem
  81.    is not the drive, but the PC floppy controller. You have to live with it.
  82.  
  83. Q: But the PC can read 11-sector formats!
  84. A: Yes, but those sectors look a little different to the hardware.
  85.  
  86. Q: But the Amiga can read PC disks!
  87. A: So what?
  88.  
  89. Q: But the PC can read Atari ST disks!
  90. A: So what?
  91.  
  92. Q: But...
  93. A: No way. If you still are convinced that it must be possible, prove it. 
  94.    Write a program to read Amiga disks with a standard PC controller, and I
  95.    will apologize in public.
  96.  
  97. Q: How can I use DMS images?
  98. A: Run DMS under UAE and use it just like you would on a real Amiga.
  99.    Decompressing a DMS file to DF0: will overwrite the .adf file that is
  100.    currently used to emulate df0:.
  101.  
  102. Q: How can I transfer non-DOS disks that are used by many demos?
  103. A: With transdisk. The fact that they are unreadable by AmigaDOS does not
  104.    mean they are unreadble by transdisk. 
  105.    Long explanation: There are two things to consider when talking about the
  106.    "format" of a disk. First, the low-level format which divides each track
  107.    into sectors in a special way. Most Amiga disks are in the standard Amiga
  108.    format which has 11 sectors with 512 bytes each per track, with a total of 
  109.    880K per disk. There's also some extra information outside the sectors so
  110.    that the floppy controller can find the sectors. PC disks use a different 
  111.    format, which is the reason why a PC controller can't read Amiga disks.
  112.    If a disk is formatted this way, it can be copied with the normal AmigaDOS
  113.    diskcopy program or the Workbench equivalent, and transdisk can handle it.
  114.    Copy-protected disks have a different track layout (sometimes, they don't
  115.    divide the tracks into sectors at all, or use more sectors, or put
  116.    different things between the sectors. This type of thing can't be handled
  117.    by diskcopy or by transdisk.
  118.    Now, the second part of the "format" of a disk is the filesystem. If you
  119.    want to put files and directories on a disk, you have to write some special
  120.    information into some of the sectors on the disk. That information includes
  121.    (for example) the name of the disk (e.g. "Workbench1.3"), and what files it
  122.    contains. This information is called a "filesystem". The Amiga knows about
  123.    several filesystems: There is the original filesystem (called OFS), and the
  124.    newer Fast Filesystem (FFS) which was introduced with Kickstart 1.3.
  125.    If you don't put a filesystem on the disk, the data in the sectors can still
  126.    be read by programs like transdisk or diskcopy, but the data makes no sense
  127.    to them. The point is, it doesn't have to. It only has to make sense for
  128.    the Workbench which tries to determine what files there are on a disk. If
  129.    the Workbench can't find a filesystem it knows about on the disk, it will
  130.    be marked as a non-DOS disk (as opposed to an "unreadable" disk which you
  131.    get if the low-level format is different from the standard).
  132.  
  133. Q: How can I change diskfiles?
  134. A: Your version of UAE may have a user interface (the X11 version does) which
  135.    enables you to do this. Read your system-specific README file for details.
  136.    You can also use the "uaectrl" programs from the "amiga" subdirectory.
  137.  
  138. Q: Why is the floppy emulation so slow, after all the disk image is on a
  139.    harddisk?
  140. A: Because the disk rotation is emulated. This is necessary. Use the harddisk
  141.    emulation wherever possible.
  142.  
  143. Q: <insert your favourite problem with the hardfile emulation here>
  144. A: Don't use the hardfile. Use the filesystem emulation ("-m" option).
  145.  
  146. Q: How can I read Amiga CD-ROMs?
  147. A: With the harddisk emulation. Give UAE the parameter "-M CD:/cdrom" if you
  148.    are using a Linux system with the CD mounted at /cdrom, or "-m CD:D:\" if
  149.    you are using DOS and D: is your CD-ROM drive (and if you have a different
  150.    system you should be able to figure out what to do)
  151.  
  152. Q: Is it possible to read Amiga harddisks with a PC?
  153. A: Yes. Linux 2.0 has an Amiga filesystem that can reportedly read Amiga
  154.    OFS/FFS harddisks. Please don't ask for details, I didn't write the thing,
  155.    and I don't use it (yet). I did use it to read .adf disk images, though.
  156.  
  157.  
  158. ** FUTURE PLANS
  159.  
  160. Q: When will version 1.0 come out, and what will be in it?
  161. A: Rather soon, I hope. I have done almost all I wanted to do in 0.6.x, and
  162.    for 0.7.x I'm only planning to repair the copper so it runs with some
  163.    resemblance of speed. After that, there might be a 1.0 version.
  164.  
  165. Q: Will there be a shareware version or some registration fee for future
  166.    versions of UAE?
  167. A: No.
  168.  
  169. Q: Will you support CyberGFX (or some other standard) to make the Workbench
  170.    run in a higher resolution?
  171.    Couldn't you use ARDI's CPU emulation to speed it up?
  172. A: UAE is free software. It comes with sourcecode. ARDI's Executor, and as 
  173.    far as I know all the Amiga graphics card "standards" are proprietary and
  174.    sold commercially. The companies that make these programs have no reason at
  175.    all to give away their code for free, because they wouldn't make any more
  176.    money if they did.
  177.    The only option for better graphics support is to rewrite the graphics
  178.    library with a native equivalent. That's a huge amount of work.
  179.    (yes, I really get asked this kind of thing! I don't know where people take
  180.    these ideas from).
  181.  
  182. Q: Will there be any form of support for high-resolution graphics modes
  183.    (e.g. Workbench in 1024x768)?
  184. A: I don't know yet. I hope so, but there are some technical difficulties.
  185.    There are several options how it might be implemented:
  186.      - reimplement parts or all of the Amiga OS: Painful.
  187.      - emulate graphics card hardware: _should_ be rather easy, once you get
  188.        chipset documentation (maybe steal from Linux/68k, I think they have
  189.        some support for graphics cards in their X server). You'd still need
  190.        some form of commercial support software, i.e. a CyberGFX or EGS driver
  191.        or whatever for the particular graphics card model that's emulated.
  192.  
  193.  
  194. ** UAE SPEED
  195.  
  196. Q: Would it be possible to speed it up by emulating the CPU native on, say,
  197.    a 68k Mac?
  198. A: I doubt it. UAE needs to be able to interrupt the CPU emulation anytime to
  199.    perform tasks necessary for emulating the hardware. So you can't just let
  200.    it run all by itself.
  201.  
  202. Q: Would it be possible to speed it up by using graphics accelerator boards
  203.    for example by using the blitter in S3 chips?
  204. A: I doubt it. I'm no PC graphics card expert, but probably the only thing the
  205.    S3 blitter and the Amiga blitter have in common are seven lowercase
  206.    letters. Even if they were similar you'd have to keep all Amiga chip
  207.    RAM in the graphics memory and that would most likely make everything
  208.    painfully slow.
  209.  
  210. Q: How about adding special support for the GUS/other wavetable boards that 
  211.    uses hardware features to speed up the sound emulation?
  212. A: Again, due to the differences in Amiga and PC (in this case: GUS) hardware,
  213.    this isn't really feasible. You _might_ get something like this to work in
  214.    some special cases (ProTracker modules might be a case that could be made
  215.    to work), but I don't think you can come up with something that emulates
  216.    all of the Amiga sound hardware.
  217.    The problem is that by just examining the values a program writes into the
  218.    audio hardware registers, you can hardly figure out what a program is
  219.    trying to do, and what it is going to do in the future. In contrast to
  220.    that, it's easy to write a SoundTracker module player for GUS cards because
  221.    you know exactly what you are playing, and how you have to do it.
  222.    (That doesn't mean you can't use the GUS for sound output; you just can't
  223.    use it to _speed up_ the sound output)
  224.  
  225. Q: Emulating all the hardware is a bad idea. Why don't you just emulate the
  226.    OS? After all, that's what makes the Amiga the Amiga.
  227. A: Short answer: I disagree. 
  228.    Long answer: The OS is half of what makes the Amiga the Amiga. It is a very
  229.    nice OS, and there are some features that I miss in any other OS, but it is
  230.    also severely lacking in terms of (for example) memory protection and
  231.    filesystem performance. 
  232.    The other thing that made the Amiga special back in the 1980s is the custom 
  233.    chip architecture. If you look into old (1985) computer magazines, you will 
  234.    find that the capabilites of the Amiga OS are only mentioned as a side
  235.    note, because people were not aware that it was revolutionary for a home 
  236.    computer. They were aware, though, that the Amiga could display 4096 colors 
  237.    at the same time and that it had a blitter and a copper that could do all
  238.    sorts of stuff, like bouncing balls for instance. And I think it was the
  239.    superiority of the hardware that made the Amiga a success.
  240.    I see UAE as a program that is similar to C64 emulators: it allows you to
  241.    run some old games and other programs that you can't replace with better
  242.    equivalents on the PC. As such, it can already be used to run non-action
  243.    games (like Monkey Island or Bard's Tale) at a satisfactory speed. Faster
  244.    CPUs will eventually make it possible to run action games, just like faster
  245.    CPUs have made it possible to emulate a C64 at full speed on a PC. UAE is 
  246.    not (primarily) meant for the Amiga PowerUser who is running high quality
  247.    applications on his A4000 with a 68060 board, but for people like me who
  248.    switched from an A500 to the PC a few years ago because they wanted to make
  249.    money by developing software.
  250.    Besides, emulating an OS is far more difficult IMHO. Especially if the
  251.    platform you are emulating it on is completely different than the platform
  252.    that is being emulated. You'd have to mess with endianness conversions and
  253.    other nightmares. The AmigaOS wasn't designed with portability in mind 
  254.    either.
  255.  
  256. Q: How fast is it?
  257. A: This is the most difficult question to answer. The easy way to answer is
  258.    "It depends", but I'll try to do better. All timings I give here were 
  259.    measured on my machine, a P90, using SVGAlib, with the FASTER_CPU and 
  260.    DONT_WANT_SOUND options. Note that different versions of UAE generally run
  261.    at different speeds, so take these timings with a grain of salt.
  262.    The MC68000 emulation is more than twice as fast as a real A500. I measured
  263.    this by letting PowerPacker try to compress itself (it already was 
  264.    compressed). It took UAE about 6 minutes, my A500 took about 15. You can
  265.    get about twice the speed of an A500 for this type of program (not much
  266.    graphics activity) or if you set the frame skip rate to a high value.
  267.    For games and demos, the CPU speed does not matter, but the average frame
  268.    time is important. UAE can calculate this automatically. The SVGAlib 
  269.    version gives the number when you exit the emulator, to obtain the value
  270.    with the X version you need to interrupt it and type "c" in the debugger.
  271.    A real A500 has a constant frame time of 20ms (50 Hz).
  272.    If you have a game/demo that has lots of blitter activity, many copper/
  273.    sprite effects, dual playfields and scrolling, no one can help you.
  274.    Fortunately, this case is extremely rare. Normal games that have a number
  275.    of blitter objects, scrolling and maybe some sprites run at 1/3-1/4 the
  276.    speed of an A500 in the worst case, some run at 1/2 the speed. Lowering 
  277.    the frame rate helps enormously here, and at 1/5 frame rate, about 
  278.    everything runs somewhere between 50% and 100% the speed of an A500.
  279.    This still isn't the full story (I bet you start to see why the question is
  280.    hard to answer). A real A500 without fast memory gets slowed down to about
  281.    half its speed in Hires 16 color mode. More bitplanes also slow UAE down,
  282.    but not quite as much, so it can be several times faster than an A500 in 
  283.    that mode.
  284.    Finally, some remarks about the m68k->i386 code compiler that is available
  285.    in the Linux version of UAE. It shouldn't be used for games, it will
  286.    completely kill your frame rate. It's possible to use it for Workbench 
  287.    applications, though, and the frame rate shouldn't be a problem in this 
  288.    case.
  289.    I measured PowerPacker the same way as described above, and the time when 
  290.    using the compiler is slightly above 1 minute (10-15 times an A500). With 
  291.    the USER_PROGRAMS_BEHAVE option, it's as low as 40 seconds. I've also run
  292.    the BeachBall benchmark from AIBB 6.5. This takes around 10 minutes on an
  293.    A500, UAE is 3 times faster with the compiler. For some benchmarks that
  294.    use function calls heavily, the compiler isn't a win (although the current 
  295.    version should no longer be slower like previous ones). I have little 
  296.    "real world" data, please let me know if you made any experiences with the
  297.    compiler.
  298.  
  299. Q: How can I make it faster?
  300. A: Run the emulator in the lowest screen mode (320x200), set it to 256 colors,
  301.    make sure aspect correction is disabled, and set the frame rate to every 3rd
  302.    frame.  Finally, disable sound (if you have a version that lets you compile
  303.    your own executable, set "DONT_WANT_SOUND" in config.h). It won't look very
  304.    nice, but it will run as fast as your machine allows.
  305.    If you are running the X version, make sure you have commented out
  306.    DONT_WANT_SHM in config.h. This option is "safer", but makes the emulator
  307.    very slow. Even better, when you run configure, say "configure
  308.    --enable-dga" if your X server (XFree86 3.2 or higher) supports it.
  309.  
  310.  
  311. ** MISCELLANEOUS
  312.  
  313. Q: Do I need a real Amiga to use this program?
  314. A: Yes.
  315.  
  316. Q: Where can I download a Kickstart ROM/Amiga games?
  317. A: Read the docs again. You can't. It would be illegal to put a ROM image or
  318.    other copyrighted software on the net (yes, even if you once bought a
  319.    specific Amiga game and sold it together with the computer, downloading the
  320.    same game now would still be illegal. Sorry.)
  321.  
  322. Q: Does UAE run on the DEC Alpha/Sparcstations/SGIs/whatever?
  323. A: UAE should run on all Unix systems that have at least X11R5 and a decent
  324.    C compiler installed. So the answer is probably yes. Just use the generic
  325.    Unix source and follow the instructions in README.UNIX to compile it.
  326.  
  327. Q: Why is there a blank area on the left side of the screen?
  328. A: The Amiga can display graphics there, but usually doesn't because this
  329.    would disable some sprites. The area is only used by some overscan demos.
  330.    Normal screens are off-center. I'm not going to do anything about that.
  331.    If you can't stand it, you can try to use 320x200 or 640x480 resolution,
  332.    which will attempt to center the screen. This is near impossible to get
  333.    right for every program. If your screen doesn't fit in lower resolutions,
  334.    use 800x600.
  335.  
  336. Q: Where is a complete summary of all command line switches ?
  337. A: In the README files. You can also generate it yourself by typing:
  338.    uae -h > uae-help.txt
  339.  
  340. Q: Benchmark program <insert your favourite benchmark> gives weird results.
  341. A: Amiga programs run by the emulator think the Amiga timers can be used to
  342.    measure real time. But in UAE, they only measure "emulation time". Sysinfo,
  343.    for example, gives the same results on all machines. So don't run
  344.    benchmarks to test the emulator speed.
  345.    Some benchmarks also use tight loops of DIV or MUL instructions to measure
  346.    CPU speed, and in "emulation time" these instructions take as much time
  347.    as any other instructions, and you'll get much too high values.
  348.    If you enabled the "HAVE_RDTSC" option, running benchmarks makes some more
  349.    sense. Still not a lot, since there is a minimum speed that the benchmark
  350.    will report on every machine. The faster the machine, the more accurate
  351.    will your results be.
  352.  
  353. Q: Wasn't this called the Unusable Amiga Emulator?
  354. A: Yes. But no one thought the name was very fitting anymore, though. It was
  355.    only really appropriate for v0.1, which couldn't even boot.
  356.