--- uae/docs/FAQ 2018/04/24 16:38:39 1.1 +++ uae/docs/FAQ 2018/04/24 16:41:51 1.1.1.4 @@ -1,22 +1,70 @@ Some Frequently Asked Questions. Please read this carefully if you have problems. -Q: Will there be a Windows version? -A: I'll never write a non-commercial program for DOS/Windows again. I hate - having to reboot after mistakes. - I included the DOS port because a) a DOS version can achieve similar - speeds as the Linux/SVGA version b) it didn't messify too much of the code, - and c) more people told me they would port it to DOS and I wanted to save - them the effort. I don't think a Windows port will fit in as cleanly as the - DOS port, nor do I think it can be efficient. If you want, you can try to - prove me wrong, but I will be very reluctant to include Windows code. The - same goes for code to support a bazillion soundcards for DOS, or similar - nightmares. +** COMMON PROBLEMS + +Q: Sometimes, after UAE exits, there is no autorepeat for the keys! +A: Do "xset r on" (happens only in X, apparently mainly on Solaris boxes. + Dunno why.). [Should be fixed by now. Note that this always happens when + UAE crashes] + +Q: When UAE starts up, it says "Illegal instruction: 4e7b". Why? +A: That's normal, it's just the Kickstart CPU type test. + +Q: When UAE starts up, it says "Illegal instruction: 00f8" (many times). Why? +A: That's because your Kickstart ROM was compiled for the 68020. + (could also happen when there's a bug in UAE) + +Q: When UAE loads it says "Non-standard sync". +A: Your favourite game is copy-protected. There are ways to transfer such + disks, but it's complicated and I won't help you because it would be much + too time-consuming to figure out all sorts of copy-protection schemes. + I hope there will be a general solution some day, but for now you're + unlucky. + +Q: While it compiles, it says "xxx illegals generated" or "16 mismatches". + Is this a problem? +A: No. I can use this information to tell whether there is a problem, and + there isn't. + +Q: How can I produce an @ symbol (or any other sign)? On my PC keyboard it's + AltGr+Q, but that doesn't seem to work. +A: Look at the keyboard of your Amiga. Use the same combination that you would + need on a real Amiga. These combinations differ across countries. Make sure + you have loaded the right keyboard translation table for AmigaOS (e.g. in + Germany, make sure there's a "setmap de" command in the startup-sequence) + You can probably create a @ sign by pressing Alt+2, or Shift+2. + + +** INCOMPATIBILITIES + +Q: UAE does not work with my Kickstart 1.2 image. +A: You may need to turn off the harddisk and fastmem emulation with the "-a" + parameter. Kick 1.2 doesn't support the autoboot features that the harddisk + emulation requires. + You can tell that you are suffering from this problem if UAE gives you the + message "filesys_bput called". + +Q: What do I do if a game/demo/application doesn't work? +A: If you're trying to run a game or a demo, enable some slow RAM, and try + running it again. Some older software has compatability problems which + slow RAM can sometimes fix. If it's an application, check for obvious + things like Kickstart version requirements, RAM, etc. Also make sure the + software you're trying to run isn't for AGA equipped machines. + You can also try changing various other options, like the CPU type. For + games, sometimes "-C0c" will make it work. + + +** AMIGA DISKS, DISK IMAGES, HARDDISKS, CDROMS Q: Is it possible to read Amiga disks with a PC? -A: Ask that in comp.emulators.misc :-) The answer is: NO! Unless you invent - and build some extra hardware yourself, which no one appears to have done - yet. +A: No, and yes. No, with a standard PC it's impossible. However, with some + additional hardware (i.e. a new floppy controller) it is possible. I + currently know of two solutions, the AFR package which consists of a small + parallel port interface that you have to build yourself and some software, + and the Catweasel controller which is available as an ISA card and comes + with DOS software that can create disk files. I have a Catweasel here, and + it does in fact work. Q: Couldn't I attach an Amiga floppy drive to the PC somehow, and use that to read Amiga disks? @@ -24,103 +72,132 @@ A: You can attach Amiga (low-density) dr completely identical to PC drives. This won't help you, because the problem is not the drive, but the PC floppy controller. You have to live with it. -Q: But... -A: No way. +Q: But the PC can read 11-sector formats! +A: Yes, but those sectors look a little different to the hardware. -Q: The linker says "final link failed: Bad value" -A: Please upgrade your Linux installation with the latest files that you find - on sunsite.unc.edu:pub/Linux/GCC, but read the release_* files carefully - before you install anything. It seems that a linker bug causes this - problem. The package you need is binutils-2.6.0.2 or better. - -Q: The assembler chokes with something about "operand doesn't match size". -A: I don't know yet whether it's a bug in GCC, UAE or in the latest binutils. - Try downgrading to binutils-2.6 (binutils-2.6.0.14 for Linux users). +Q: But the Amiga can read PC disks! +A: So what? -Q: What about sound emulation in the DOS version? -A: Recent versions of DOS UAE support sound. +Q: But the PC can read Atari ST disks! +A: So what? -Q: How can I change diskfiles? -A: Read the "Installation" section in the README to find out what you need to - use the X GUI. +Q: But... +A: No way. If you still are convinced that it must be possible, prove it. + Write a program to read Amiga disks with a standard PC controller, and I + will apologize in public. + +Q: How can I use DMS images? +A: Run DMS under UAE and use it just like you would on a real Amiga. + Decompressing a DMS file to DF0: will overwrite the .adf file that is + currently used to emulate df0:. + +Q: How can I transfer non-DOS disks that are used by many demos? +A: With transdisk. The fact that they are unreadable by AmigaDOS does not + mean they are unreadble by transdisk. + Long explanation: There are two things to consider when talking about the + "format" of a disk. First, the low-level format which divides each track + into sectors in a special way. Most Amiga disks are in the standard Amiga + format which has 11 sectors with 512 bytes each per track, with a total of + 880K per disk. There's also some extra information outside the sectors so + that the floppy controller can find the sectors. PC disks use a different + format, which is the reason why a PC controller can't read Amiga disks. + If a disk is formatted this way, it can be copied with the normal AmigaDOS + diskcopy program or the Workbench equivalent, and transdisk can handle it. + Copy-protected disks have a different track layout (sometimes, they don't + divide the tracks into sectors at all, or use more sectors, or put + different things between the sectors. This type of thing can't be handled + by diskcopy or by transdisk. + Now, the second part of the "format" of a disk is the filesystem. If you + want to put files and directories on a disk, you have to write some special + information into some of the sectors on the disk. That information includes + (for example) the name of the disk (e.g. "Workbench1.3"), and what files it + contains. This information is called a "filesystem". The Amiga knows about + several filesystems: There is the original filesystem (called OFS), and the + newer Fast Filesystem (FFS) which was introduced with Kickstart 1.3. + If you don't put a filesystem on the disk, the data in the sectors can still + be read by programs like transdisk or diskcopy, but the data makes no sense + to them. The point is, it doesn't have to. It only has to make sense for + the Workbench which tries to determine what files there are on a disk. If + the Workbench can't find a filesystem it knows about on the disk, it will + be marked as a non-DOS disk (as opposed to an "unreadable" disk which you + get if the low-level format is different from the standard). -Q: The "configure" script does not find Tcl/Tk, but I have it installed! -A: The script checks for an executable called "wish4.0". There is currently - no better test. Unfortunately, this executable is not always present, - even though Tk 4.0 is installed. If that is the case, find the "wish" - executable, go into the directory where you found it and type - "ln -s wish wish4.0" (provided you have write rights in that directory, - i.e. you are super-user). Then go back to the UAE directory, remove the - file config.cache and rerun "configure". That should do the trick. +Q: How can I change diskfiles? +A: Your version of UAE may have a user interface (the X11 version does) which + enables you to do this. Read your system-specific README file for details. + You can also use the "uaectrl" programs from the "amiga" subdirectory. + +Q: Why is the floppy emulation so slow, after all the disk image is on a + harddisk? +A: Because the disk rotation is emulated. This is necessary. Use the harddisk + emulation wherever possible. + +Q: +A: Don't use the hardfile. Use the filesystem emulation ("-m" option). + +Q: How can I read Amiga CD-ROMs? +A: With the harddisk emulation. Give UAE the parameter "-M CD:/cdrom" if you + are using a Linux system with the CD mounted at /cdrom, or "-m CD:D:\" if + you are using DOS and D: is your CD-ROM drive (and if you have a different + system you should be able to figure out what to do) Q: Is it possible to read Amiga harddisks with a PC? A: Yes. Linux 2.0 has an Amiga filesystem that can reportedly read Amiga - OFS/FFS harddisks. Since Linux 2.0.7, it's also possible to mount .adf - files. Just say (for example) - mount wb13.adf /mnt -t affs -o loop - to mount the file wb13.adf at /mnt. You'll need to configure the loop - device and the affs filesystem into the kernel, and you'll need to say - yes to the question about experimental drivers at the beginning of the - kernel configuration. You'll also need a reasonably new version of the - mount program. + OFS/FFS harddisks. Please don't ask for details, I didn't write the thing, + and I don't use it (yet). I did use it to read .adf disk images, though. -Q: When UAE starts up, it says "Illegal instruction: 4e7b". Why? -A: That's normal, it's just the Kickstart CPU type test. -Q: When UAE starts up, it says "Illegal instruction: 00f8" (many times). Why? -A: That's because your Kickstart ROM was compiled for the 68020. +** FUTURE PLANS -Q: When UAE loads it says "Non-standard sync". -A: Your favourite game is copy-protected. There are ways to transfer such - disks, but it's complicated and I won't help you because it would be much - too time-consuming to figure out all sorts of copy-protection schemes. - I hope there will be a general solution some day, but for now you're - unlucky. +Q: When will the next version come out, and what will be in it? +A: It will come out when it's done. -Q: While it compiles, it says "xxx illegals generated" or "16 mismatches". - Is this a problem? -A: No. I can use this information to tell whether there is a problem, and - there isn't. +Q: Will there be a shareware version or some registration fee for future + versions of UAE? +A: No. -Q: Why is there a blank area on the left side of the screen? -A: The Amiga can display graphics there, but usually doesn't because this - would disable some sprites. The area is only used by some overscan demos. - Normal screens are off-center. I'm not going to do anything about that. - If you can't stand it, you can try to use 320x200 resolution, which will - attempt to center the screen. This is near impossible to get right for - every program. If your screen doesn't fit in 320x200, use 800x600. +Q: Couldn't you use ARDI's CPU emulation to speed it up? +A: UAE is free software. It comes with sourcecode. ARDI's Executor is + proprietary and sold commercially. ARDI has no reason at all to give away + their code for free, because they wouldn't make any more money if they did. + (yes, I really get asked this kind of thing! I don't know where people take + these ideas from). -Q: Benchmark program gives weird results. -A: Amiga programs run by the emulator think the Amiga timers can be used to - measure real time. But in UAE, they only measure "emulation time". Sysinfo, - for example, gives the same results on all machines. So don't run - benchmarks to test the emulator speed. - Some benchmarks also use tight loops of DIV or MUL instructinos to measure - CPU speed, and in "emulation time" these instructions take as much time - as any other instructions, and you'll get much too high values. -Q: Wasn't this called the Unusable Amiga Emulator? -A: Yes. But no one thought the name was very fitting anymore, though. It was - only really appropriate for v0.1, which couldn't even boot. +** UAE SPEED -Q: Sometimes, after UAE exits, there is no autorepeat for the keys! -A: Do "xset r on" (happens only in X, apparently mainly on Solaris boxes. - Dunno why.). +Q: I don't get steady sound output! I only have a 486DX40, could this be + related? +A: Try a Pentium-II-300, these things are reported to do better. Q: Would it be possible to speed it up by emulating the CPU native on, say, a 68k Mac? A: I doubt it. UAE needs to be able to interrupt the CPU emulation anytime to - perform tasks necessary for emulating the hardware. + perform tasks necessary for emulating the hardware. So you can't just let + it run all by itself. Q: Would it be possible to speed it up by using graphics accelerator boards for example by using the blitter in S3 chips? -A: I doubt it. If the S3 blitter worked in similar way as the Amiga blitter, - which is unlikely, it might work; but you'd have to keep all Amiga chip +A: I doubt it. I'm no PC graphics card expert, but probably the only thing the + S3 blitter and the Amiga blitter have in common are seven lowercase + letters. Even if they were similar you'd have to keep all Amiga chip RAM in the graphics memory and that would most likely make everything painfully slow. -Q: Wouldn't it be better to translate MC68000 code to x86 assembly? -A: Yes. It would also be slightly more difficult. +Q: How about adding special support for the GUS/other wavetable boards that + uses hardware features to speed up the sound emulation? +A: Again, due to the differences in Amiga and PC (in this case: GUS) hardware, + this isn't really feasible. You _might_ get something like this to work in + some special cases (ProTracker modules might be a case that could be made + to work), but I don't think you can come up with something that emulates + all of the Amiga sound hardware. + The problem is that by just examining the values a program writes into the + audio hardware registers, you can hardly figure out what a program is + trying to do, and what it is going to do in the future. In contrast to + that, it's easy to write a SoundTracker module player for GUS cards because + you know exactly what you are playing, and how you have to do it. + (That doesn't mean you can't use the GUS for sound output; you just can't + use it to _speed up_ the sound output) Q: Emulating all the hardware is a bad idea. Why don't you just emulate the OS? After all, that's what makes the Amiga the Amiga. @@ -153,7 +230,73 @@ A: Short answer: I disagree. other nightmares. The AmigaOS wasn't designed with portability in mind either. -Q: How can I transfer non-DOS disks that are used by many demos? -A: With transdisk. The fact that they are unreadable by AmigaDOS does not - mean they are unreadble by transdisk. Only copy-protected disks can't be - transferred that way. +Q: How fast is it? +A: It depends. + For crunching files with PowerPacker, UAE is 17 times faster than my A500 + on my K6-233. + For playing Turrican I, it's running at about full speed (with sound). + For playing Turrican III, it is slightly slower than the A500. + For some (not many) demos, it's a fair bit slower than the A500. + Rule of thumb: Sound emulation really takes time; so do copper effects and + scrolling. If you don't need either, you're fine. + +Q: How can I make it faster? +A: Run the emulator in the lowest screen mode (320x200), set it to 256 colors, + make sure aspect correction is disabled, and set the frame rate to every 3rd + frame. Finally, disable sound (if you have a version that lets you compile + your own executable, set "DONT_WANT_SOUND" in config.h). It won't look very + nice, but it will run as fast as your machine allows. + If you are running the X version, make sure you use the "-T" option. Not + using this option is "safer", but makes the emulator very slow. Even better, + when you run configure, say "configure --enable-dga" if your X server + (XFree86 3.2 or higher) supports it. + It's especially important that you don't use 24 bit or 32 bit color modes. + + +** MISCELLANEOUS + +Q: Do I need a real Amiga to use this program? +A: Yes, unless you have some other way of legally getting ROM files and system + software, such as the Cloanto Amiga Forever CD. + +Q: Where can I download a Kickstart ROM/Amiga games? +A: Read the docs again. You can't. It would be illegal to put a ROM image or + other copyrighted software on the net (yes, even if you once bought a + specific Amiga game and sold it together with the computer, downloading the + same game now would still be illegal. Sorry.) + +Q: Does UAE run on the DEC Alpha/Sparcstations/SGIs/whatever? +A: UAE should run on all Unix systems that have at least X11R5 and a decent + C compiler installed. So the answer is probably yes. Just use the generic + Unix source and follow the instructions in README.UNIX to compile it. + However, using GCC and the GNU binutils can improve your chances. + +Q: Why is there a blank area on the left side of the screen? +A: The Amiga can display graphics there, but usually doesn't because this + would disable some sprites. The area is only used by some overscan demos. + Normal screens are off-center. I'm not going to do anything about that. + If you can't stand it, you can try to use 320x200 or 640x480 resolution, + which will attempt to center the screen. This is near impossible to get + right for every program. If your screen doesn't fit in lower resolutions, + use 800x600. + +Q: Where is a complete summary of all command line switches ? +A: In the README files. You can also generate it yourself by typing: + uae -h > uae-help.txt + +Q: Benchmark program gives weird results. +A: Amiga programs run by the emulator think the Amiga timers can be used to + measure real time. But in UAE, they only measure "emulation time". Sysinfo, + for example, gives the same results on all machines. So don't run + benchmarks to test the emulator speed. + Some benchmarks also use tight loops of DIV or MUL instructions to measure + CPU speed, and in "emulation time" these instructions take as much time + as any other instructions, and you'll get much too high values. + If you enabled the "HAVE_RDTSC" option, running benchmarks makes some more + sense. Still not a lot, since there is a minimum speed that the benchmark + will report on every machine. The faster the machine, the more accurate + will your results be. + +Q: Wasn't this called the Unusable Amiga Emulator? +A: Yes. But no one thought the name was very fitting anymore, though. It was + only really appropriate for v0.1, which couldn't even boot.