Article 5392 of comp.emulators.cbm:
From: kgifford@netaxs.com ('tsr')
Subject: COMP.EMULATORS.CBM: Emulation FAQ for Commodore 8bit Computers (1/4)
Date: 19 Jun 1995 16:53:37 GMT
Organization: Net Access - Philadelphia's Internet Connection
Message-ID: <3s4a2h$iss@netaxs.com>
Summary: Emulation FAQ for Commodore 8bit Computers.
Keywords: cbm commodore 8bit emulation faq CBM FAQ


Archive-name: 8bit-emulation-faq/part1
Comp-answers-archive-name: commodore/8bit-emulation-faq/part1
News-answers-archive-name: commodore/8bit-emulation-faq/part1
Comp-emulators-cbm-archive-name: 8bit-emulation-faq/part1
Posting-Frequency: twice a month (monthly to news.answers)
Version: 2.21

  CBM EMULATION FAQ - (Version 2.3 19 June 1995)
  =================

  This FAQ is usually posted twice a month on the 4th and 19th to 
  comp.emulators.cbm.  Since comp.emulators.cbm was set up to remove the
  emulator discussion from comp.sys.cbm, this FAQ will not be posted there.

  Lines preceeded by a '+' have been added or modified since the last version
  was posted.

  The FAQ is in four parts due to its size.
  Part 1 is general information and a list of available emulators.
  Part 2 is questions and answers.
  Part 3 is mostly data.
  Part 4 is basically reviews of various emulators.

  ---------------------------------------------------------------------------

  PART 1 - Table of Contents.
  ---------------------------

  1. Introduction

  1.1 What's new this time..

  2. What emulators are available?

  2.1 C64 Emulator List

  2.1.1 C64 Emulators for the Amiga
  2.1.2 C64 Emulators for the PC
  2.1.3 C64 Emulators for the Atari
  2.1.4 C64 Emulators for the Macintosh
  2.1.5 C64 Emulators for Unix
  2.1.6 C64 Emulators for the SNES

  2.2 VIC20 Emulators
  2.3 C128 Emulators
  2.4 PET Emulators
  2.5 SID Emulators
  2.6 Non-Emulators

  2.7 Other utilities & files
  2.7.1 Utilities
  2.7.2 Data files

  (Part 2).
  ---------

  3. Questions & Answers
  3.1 General
  3.2 C64S
  3.3 PC64
  3.4 Other emulator specific questions

  (Part 3).
  ---------

  3.5 How-to... (moved from Appendix B)
     1. Infocom adventures with PC64
     2. Running multi-disk games with C64S 1.0c
     3. Using VIC-EMU
     4. Getting certain games to work 
   
  4. A list of ftp sites where emulation programs can be obtained

  4.0.1 Site Maintainers
  4.0.2 Site IP addresses
  4.0.3 Site info
  4.0.4 WWW info
  4.1 Locations of C64 Emulators
  4.2 VIC20 Emulators
  4.3 C128 Emulators
  4.4 PET Emulators
  4.5 SID Emulators
  4.6 Non-Emulators
  4.7 Other utilities & files
  4.7.1 Utilities
  4.7.2 Data files

  5. Emulator File Formats

  5.1 C64 Emulators standard files - overview
  5.2 Table of supported file formats
  5.3 Standard data files - internal formats
  5.4 Converting between file formats

  6. How to extract the Rom images required by the emulators

  6.1 C64 roms - Basic, Kernal & Charset
  6.2 1541 rom

  7. Other information

  7.1 Newsgroups worth reading
  7.2 Emulator benchmarks
      (C64 Kernal rom versions has been moved to part 2 of the FAQ)
  7.3 Emulator detection
  7.4 Other sources of information

  (Part 4).
  ---------

  8. Credits

  9. Data

  9.1 C64 Kernal rom versions
  9.2 C128 BASIC rom versions

 
  Appendices:

  A. Reviews of emulators
+ B. Advertisements
   

  ---------------------------------------------------------------------------

   1. Introduction
   ---------------

  Welcome to the "cbm emulation FAQ".  This file covers any program that
  emulates any features of any of the 8-bit Commodore range of computers,
  such as the C-16, C-64, and C-128, on all platforms, and tries its best to
  answer the Frequently Asked Questions that appear in the comp.emulators.cbm
  newsgroup.

  Important Note:
  ===============
  There is -no- such thing as an Amiga emulator for the PC, and it's 
  unlikely that you'll find one for any home computer for at least several
  years.  This FAQ is concerned with emulation of Commodore's 8-bit 
  computers only, in any case.

  This FAQ is maintained by Kevin Gifford (kgifford@netaxs.com).
  You will always be able to get it from these ftp-sites:

  ftp.funet.fi : /pub/cbm/faq
  frodo.hiof.no : /pub/c64/faq
  ccnga.uwaterloo.ca : /pub/cbm/comp.sys.cbm

  Also available via the C=Hacking mailserver.. simply send a message to
  "duck@pembvax1.pembroke.edu" with a subject line of "MAILSERV" and then
  with "send emulation.faq" in the body of the mail message.

  You can now obtain the FAQ via world wide web. Use the URLs:

  http://http.ecn.bgu.edu/users/xavf/cbm.emu.faq.toc.html
  http://www.hut.fi/~msmakela/faq/

  The HTML version of the FAQ is maintained by Adrian Forte (gforte@bgu.edu)
  He would like any Commodore related GIFs to enhance the FAQ.

  A copy of the last posted FAQ is also available from the previous author's
  machine.
  Simply send a message to "c65list-request@dce.vic.gov.au" with a subject of
  "send latest/cec.faq1 latest/cec.faq2 latest/cec.faq3 latest/cec.faq4".



   1.1 What's new this time

  This is the "pre-france" version of the FAQ; that is to say, it's the
  version I'm posting just before leaving for France to search for PAL
  C64s, monitors, and cheap games.  I'm not sure I'll be too successful. :)

  Did lots more re-editing.  Started a section in part 3 on how to get
  certain games to work (only the most-asked ones right now, such as Racing
  Destruction Set etc.)  Added an entry here and there.

  Added an advertisements section at the end.  If you're selling any product
  that you think could fit in there, feel free to email me and I'll put 
  it in the next version.

  I'll be in France from roughly the 28th of June until the 24th of July, so
  you won't get any response from me if you email me until I come back.

  Oh, almost forgot; the FAQ is now a part of the news.answers archives!
  What that means is, it now gets posted to news.answers and comp.answers
  once a month, and can be gotten via ftp from any news.answers site 
  (rtfm.mit.edu is one of them).

  -kevin



   2. What emulators are available?
   --------------------------------

  The list of emulators is as comprehensive as possible, with some brief
  decriptions of what is emulated, and although something may be emulated
  it may not be 100% compatible with the original.  More detailed "reviews",
  including author's notes, of some of the emulators may be found in the
  second part of this FAQ.


   2.1 C64 Emulators.

   2.1.1 C64 Emulators for the Amiga.

  PROGRAM: The A64 Package
  VERSION: 2.0 shareware, 3.01d demo, 3.?? commercial.
  FILE: TheA64Package.lha
  MACHINE: Commodore Amiga
  AUTHOR: Cliff Dugan, Christopher P. Zura & Douglas Decicco
  COMMERCIAL CONTACT:
      QuesTronix
      P.O. Box 340265
      Hartford, CT 06134-0265
      U.S.A.
      Phone: (203)296-6037 (voice and fax)
  DETAILS: Sid: Yes (no filter).
           Vic: Yes.
           6510: Yes, with Undocumented opcodes.
           Peripherals: 1541 & printer via hardware interface with
                        registered version.
           Other: Different character sets available instead of default.
  COMMENTS: The emulator is pretty fast and includes: Monitor, support for
            Amiga drives (HD, Ram disk, floppys, etc), expansion Ram.
            Demo on aminet in misc/emu/TheA64Package.lha restricted to 10
            minutes.

  PROGRAM: Go-64!
  FILE: unknown
  MACHINE: Commodore Amiga
  AUTHOR: Chris Zura & Cliff Dugan
  DETAILS: Unknown.
  COMMENTS: A precursor to A64.

  PROGRAM: Sys
  VERSION: 1.0 (1.5.94)
  FILE: sys.lha and sys.readme
  MACHINE: Commodore Amiga
  AUTHOR: Michael Bauer (bauermichael@student.uni-tuebingen.de)
  DETAILS: Unknown.
  COMMENTS: A new, very small part of a C64 emulator.

  PROGRAM: The 64 Emulator
  FILE: unknown
  MACHINE: Commodore Amiga
  AUTHOR: Randy Linden
  DETAILS: Peripherals: Disk drives and printers supported by serial bus
           adaptor (up to 4 units).  1764 RAM expander emulation.
  COMMENTS: Reported by Jason J. Tucker, from Ahoy! Feb. 1988.  Believed to
            have been superseded by The 64 Emulator II.

  PROGRAM: AXF-64
  VERSION: Alpha 16
  FILE:    AXF-64.a16.lha
  MACHINE: Commodore Amiga, 68020 or higher.
  AUTHOR:  Borge Nost (borgen@hstud2.cs.uit.no)
  COMMENT: You need the Kernal, Basic, and Font rom files from a real C= 64
           to use this!  No sound, no multicolor mode, no bitmap mode. Sorry,
           this is an alpha version that I decided to release because I might
           not be able to finish my project in a long time.
           You can try the included 'bars2' file to see the emulator working:
           LOAD"BARS2",8,1
           SYS49152
  REVIEW:  Yes.

  PROGRAM: Frodo
  VERSION: First post-beta release
  FILE:    Frodo.lha
  MACHINE: Commodore Amiga
  AUTHOR:  Christian Bauer (cebix@ng-box.wwb.sub.de)
  COMMENT: OS2.1 and a 68020 (or better) are required, as well as copys of
           the original C64 ROMs, which are not included.
           This emulator focuses on the exact reproduction of special graphical
           effects possible on the 64, and is therefore not very fast (using a
           68040/25 and a Piccolo card gives about half of the original C64
           speed).

           However, using a line-based VIC model, it is capable of running most
           games and demos correctly, even those with FLI, FLD, DYCP, open
           top/bottom borders, multiplexed sprites etc. (but not AFLI and other
           effects depending on exact VIC/6510 synchronization).
           EGS and Picasso graphics cards are supported for faster display.
           Using Amiga modes is possible, but slower.
           Some small demo programs and the full source code in assembler are
           included in the archive.



   2.1.2 C64 Emulators for the PC.

  PROGRAM: c64.zip
  FILE: c64.zip
  MACHINE: IBM PC running DOS
  AUTHOR: Johannes Kiehl (hannes%complx.stgt.sub.org@ira.uka.de)
  REQUIRES: Hercules graphics card.
  DETAILS: Sid: No.
           Vic: Text mode only.
           6510: No, Interpreted Basic commands only.
           Peripherals: 1541.
  COMMENTS: Very primitive. Documentation in German, although a partial
            English translation exists.

+ PROGRAM: c64s PD / commercial
+ VERSION: 1.1c commercial, 1.1b shareware
+ FILE: C64S11BD.ZIP & c64s11bd.exe
  MACHINE: IBM PC running DOS
  AUTHOR: Miha Peternel
          Try the following addresses:
          miha@hermes.si
          miha.peternel@bbs.abm.si (formerly ...@abm.gn.apc.org)
          miha@ferlin.fer.uni-lj.si
          dominikl@luz.fer.uni-lj.si (use this one when all of the above fail)
  COMMERCIAL CONTACT:
   For sales and support in North America, contact Seattle Lab:
      Seattle Lab
      214 First St.
      Kirkland, WA 98033
      U.S.A.
      Phone:   206.828.9001
      Fax:  206.828.9011
      Email:   lab@seattle.wa.as.com
      CompuServe: 71202,560
+     FTP:  ftp.seattlelab.com (204.250.45.1)
      WWW:  http://www.seattlelab.com/c64s.htm
  REQUIRES: 386 or better, VGA, and about 500k low RAM free.
  DETAILS: Sid: Yes - To pc speaker, Sound Blaster, GUS, Covox, and Pro
                Audio Spectrum.  No filters except on GUS.
           Vic: Sprites, All screen modes, raster effects.
           6510: Yes, with Undocumented opcodes.
           Peripherals: Tape, 1541 & joystick emulation.  Commercial release
                        supports analogue joysticks.
  COMMENTS: 100% in assembler. Commercial release contains several utilities
            to help read real C64 tapes and disks.

            The demo version of C64S v1.1c quits automatically after ten
            minutes.  Previous demo versions had different limitations..
            1.0c allowed the use of TESTTAPE.T64 and TESTDISK.D64 only, 
            and 1.0e did not allow you to test your own software.

            Price is $70 with cable and printed manual or $60 without.

  PROGRAM: ????    (Still in development)
  FILE: ????
  MACHINE: IBM PC running DOS
  AUTHOR: Peter Andersson (pand@kullmar.se)
  REQUIRES: DOS2.0, 386, 512k memory and VGA.
  DETAILS: Sid:
           Vic:
           6510: Yes, with Undocumented opcodes.
           Peripherals:
  COMMENTS: Alpha testing. Source code included.  Author recently had 2 hard
             drive crashes, which has slowed work considerably.

  PROGRAM: C64 Alive
  VERSION: 0.9ax
  FILE: c64a09as.zip
  MACHINE: IBM PC running DOS
  AUTHOR: Frank Littmann (jochen@mubo.saar.de)
  REQUIRES: 386, 256k memory + 2560k XMS and VGA.
  DETAILS: Sid: Yes - To soundcard.
           Vic: Sprites, Basic raster & sprite collision
           6510: Yes, with Undocumented opcodes.
           Peripherals: Joystick, Printer, Disk2Dos drive,
                        Reu ram expansion supported.
           Other: Machine code monitor.
  COMMENTS: 100% in assembler. Get from ftp.uni-kl.de /pub/pc/dos/misc
            Very incompatible with most machines.

  PROGRAM: Personal C64 (PC64)
  VERSION: 1.14
  FILES: pc64_d.zip (German) or pc64_e.zip with English desktop
  OLD FILES: c64.zip, c64neu.zip, mc64.zip, pc64.zip, pc64sh.zip
  MACHINE: IBM PC/AT 386 (486DX2-66 recommended), DOS 3.3 or higher,
           Windows 3.1, OS/2 2.1, Windows NT 3.1,
           Linux 1.1.62/63 with dosemu 0.53.pl32 can all be used
  AUTHOR: Wolfgang Lorenz (CIS 100112,220 = 100112.220@compuserve.com)
  CONTACT: To register in America, send $30 in cash, check, or M.O. to:

           Ted Drude            Pre-built cables and printed-out
           103 Belle Circle     copies of the manual are available at
           Madison, AL 35758    extra charges. Add $4 for COD delivery.
           (teddrude@delphi.com)

  REQUIRES: VGA in mode 13h (VLB or PCI recommended), 500 Kbyte low RAM free,
            486dx2/66 recommended for 100% speed at 50 fps
  DETAILS: SID: Voices 1-3 to Adlib, digitized samples to Soundblaster DSP.
                No filters, no syncs.
           VIC: Sprites, collisions, all screen modes, raster effects,
                optionally DMA.  No open borders, no light pen.
           CIA: Ports and directions A and B, reversed keyboard matrix,
                timers A and B, cascaded timers, TOD with alarm, userport
                mapping to external program.  No SDR, no timer-to-port
                connection, no IEC connection.
           6510: Decimal mode, all undocumented opcodes, partial $00/$01
                 emulation.  No tape connection.
           Keyboard: National keyboard driver or original C64 mapping.
           Joysticks: IBM analog, C64 digital (on PC64 cable) or keyboard
                      emulation (white arrows and right Ctrl).
           Peripherals: Harddisk emulation via PC filesystem (PC64 files,
                        *.P00), 1541 emulation via disk images (*.D64), any
                        CBM drive connected to an external C64, printer to DOS
                        file or device with CBM->ASCII translation.  No tapes.
  COMMENTS: Built-in file manager. Multiple virtual
            C64s in different windows. Trace function with commented port
            access. Multiple system ROMs and modules.

  PROGRAM: Sally c64 Emulator
  FILE: c64sally.zip
  MACHINE: IBM PC running DOS
  AUTHOR: Morten Welinder (terra@diku.dk)
  REQUIRES: 386, 280Kb memory and VGA.
  Details: Sid: No.
           Vic: Sprites & screen modes.
           6510: Yes, with Undocumented opcodes.
           Peripherals: Joystick, 1541 via PC filesystem.
  COMMENTS: Pascal and Assembly source included.  A beta tester judged that he
            could spread it around the world.  One thing I would like to have
            corrected is that although the archive found out there includes
            the roms, that is totally against my will -- the documentation
            clearly says "get it elsewhere."  Also, by the way, the emulator
            can take rom images without the load address.
            The emulator was never completely finished -- I simply don't have
            the time for it.


   2.1.3 C64 Emulators for the Atari.

  PROGRAM: c64.tos
  VERSION: 3.0
  FILE: c64.lzh / c64.lha
  MACHINE: Atari ST
  AUTHOR: Uwe Seimet
  DETAILS: Sid: No.
           Vic: No, just text mode with screen at $0400
           6510: Yes.
           Peripherals: EPSON printer, disk drive (limited 1541 emulation)/
  COMMENTS: Very rough emulation. No banking, no shadow I/O.
            The documentation is in German only. Assembly source included.


   2.1.4 C64 Emulators for the Macintosh.

  PROGRAM: Mac 64
  VERSION: 4
  FILE: mac64-04.hqx
  OLD FILES: mac64sea.hqx, mac64col.hqx, mac64-02.hqx, mac64-03.hqx
  MACHINE: Apple Macintosh
  AUTHOR: Earle F. Philhower III (st916w9r@dunx1.ocs.drexel.edu)
  DETAILS: Sid: No.
           Vic: Hi-res gfx, sprites, scrolling.
           6510: Yes.
           Peripherals: 1541 emulation, hard drive & printer, tape images.
  COMMENTS: Source code included.  Work has stopped on the emulator;
            however, there are at least two other Macintosh C64 
            emulators in the works by others.


   2.1.5 C64 Emulators for Unix.

  PROGRAM: x64
  VERSION: 0.3.0
  FILES: x64-0.3.0.tar.gz
  OLD FILES: x64-0.1.tar.gz, x64-0.2.{0,1,2}.tar.gz
  MACHINE: Unix with X windows
  AUTHORS: Jarkko Sonninen (sonninen@lut.fi)
           Jouko Valta     (jopi@stekt.oulu.fi)
           Teemu Rantanen  (tvr@cs.hut.fi)
  DETAILS: Sid: No.
           Vic: Mono Sprites, All screen modes except multi-colour.
           6510: Yes, with Undocumented opcodes.
           Peripherals: 1541 emulation with disk images.
                        Access to filesystem via drive 9.
                        Joystick #1 to cursor keys.
                        Reu ram expansion supported.
                        ROM modules supported too.
           Other: Basic lister/cruncher program.
                  Machine code monitor & runtime trace.
                  Kernal rom patcher vers 0, 3, 67, 100.
                  Option to copy T64 tape images into x64 disk images.
                  Separate x64 Disk Manager program.
                  Linux joystick support. (Cursor-key stick removed.)
                  C128 emulator included.
  COMMENTS: ANSI C source code included. 65xx/8502 CPU documentation included. 
            Uses Xt and Xaw libraries.
            Has different xdebugger and arg-parser modules for portability.
            ROMs not included! See the dox for details in extracting them.
            Offical World wide web site for x64 at:
            http://stekt.oulu.fi/~jopi/x64.html 



   2.2 VIC20 Emulators.

  PROGRAM: vic-emu
  FILE: vic-emu.lha (programs are vic-00 and vic-20)
  MACHINE: Commodore Amiga
  AUTHOR: Pieter van Leuven (etmpile@crosby.ericsson.se)
  DETAILS: 6502: Yes.
           Ram expansions: 
  COMMENTS: vic-00 is for 68000s and vic-20 for 68020/30/40s.

  PROGRAM vic-emulator
  FILE: vic-emulatorC64.lnx
  MACHINE: Commodore 64
  AUTHOR: Fausto Ibarra
  DETAILS: Ram expansions: 3k, 8k, 16k & 24k.
  COMMENTS: Screen size not emulated.


   2.3 C128 Emulators.

-

  PROGRAM: x128
  VERSION: 0.3.0
  FILES: x64-0.3.0.tar.gz
  DETAILS: See the x64 entry for details.
           Vdc: No.
           MMU: Bank switching only.
  COMMENTS: The first version was released on April 1st, and there are many
           things still unimplemented. Basically it's just the 64 emulator
           with MMU bank switching and hard-coded shared RAM.
           ROMs not included. See the documents for details.


   2.4 PET Emulators.

  PROGRAM: "The PET Emulator"
  FILE: ???
  MACHINE: Commodore 64
  AUTHOR: Commodore 64 Software Bonus Pack
  DETAILS: Emulates 2001 series, 4032 series & basic 4.0
  COMMENTS: From their blurb:  "The PET Emulator allows most existing
            PET programs written in BASIC to be RUN on the Commodore 64".


   2.5 SID Emulators.

  Programs of this kind emulate the Sound Interface Device chip (MOS 6581),
  the Micro Processor Unit (MOS 6510) and few additional hardware components
  of the C64/128 on machines where these chips don't exist. Their only aim is
  to give you the possibility to listen to many unforgettable soundtracks
  from C64 games and demonstrations. This is done by executing 6510-machine
  code routines that access the SID chip to produce music or sound output.
  In general these subroutines are independent fragments of code and data
  which can be ripped from games and demonstration programs and are
  transfered directly from the C64.

  The quality of a SID emulator's sound output is very machine dependent,
  but due to the fact that only the necessary hardware components are
  emulated, the sound quality should be higher and more realistic than the
  output of the average C64 emulator.

  Refer to chapter 2.7.2 and 4.7.2 of this FAQ on where to find more than
  1000 music files for the SID emulators.

  PROGRAM: Play SID
  VERSION: 3.0
  FILE: PlaySID3.0.lha
  OLD FILES: PlaySID-2.0.lha, PlaySID2.1.dms, PlaySID2.2.lha
  MACHINE: Commodore Amiga
  AUTHORS: Haakan Sundell & Ron Birk <d89-rbi@nada.kth.se>, <rbk@ios.se>
  DETAILS: Sid: Yes, all except filter, also works with multi-tasking.
           6510: Yes, with Undocumented opcodes.
  COMMENTS: C64 Sid chip emulator.3.0 supports viewing of most C64 picture
            formats, has a realtime waveform/envelope display, supports
            "multiselect" in filerequester and has some other nice improvements.
            PlaySID has full AREXX support.  See a full review in the
            appendix.

  PROGRAM: SIDPLAY
  VERSION: 1.24, 1.25b
  FILE: sidpl124.zip
  OLD FILES: sidpl???.zip (where ??? is the version number)
  MACHINE: IBM PC running DOS
  AUTHOR:  Michael Schwendt (3schwend@informatik.uni-hamburg.de)
  DETAILS: SID: Yes, to Soundblaster or Pro Audio Spectrum compatible card.
           6510: Yes, with undocumented opcodes.
  COMMENTS: C64 SID-chip emulator. Compatible to PlaySid (Amiga) music
            data files.  This program is not related to Compute!'s sidplayer
            on the C64.

  PROGRAM: Midi Music Maker
  VERSION: v2.26
  FILE: mmm226.lzh
  MACHINE: Atari ST
  AUTHOR: Dave Henry
  DETAILS: Plays Sid Player Music (including stereo and lyrics ) & Master
           Composer files.
  COMMENTS: Also plays music from other computer systems.


   2.6 Non-Emulators.

  PROGRAM: C64Emulator
  FILE: 64Emulator.lha / C64Emul.lha
  MACHINE: Commodore Amiga
  AUTHOR: Eddy Carroll
  COMMENTS: Joke C64 emulator written on April 1st. Source code included.

  PROGRAM: 64blaz76.exe
  FILE: 64blaz76.exe
  MACHINE: IBM PC running DOS
  AUTHOR: Mark D. Rejhon (mdrejhon@magi.com / ag115@freenet.carleton.ca)
  REQUIRES: 286 with EGA/VGA.
  COMMENTS: CBM modem terminal with CBM graphics in colour.


   2.7 Other utilities & files.

  There are many different transfer programs which you can use to transfer
  data from a c64 to another machine.  This section lists some and gives
  in-depth looks to the more popular ones.

   2.7.1 Utilities

  disk64e.arj  - Creates .d64 files using 1541 for IBM PC.
  x1541.zip    - Copy files directly from 1541 to PC.
  c64uti5.zip  - Disk utilities for c64s09 emulator for IBM PC.
  maketape.arj - A tape utility for c64s09 emulator for IBM PC.
  copy2d64.arj - Convert files into .d64 inmages.
  zip2d64.arj  - Convert C64 zip-files (1!, 2!,..) into .d64 images.
  d64.lha      - Utility for AMIGA.
  maketape.arj - Makes .t64 files, includes source.
  dir_d64.zip  - List catalog of .d64 files for IBM PC.
  d64util.zip  - .d64 utils.
  d64_10.zip   - Transfer files between standard, .t64 & .d64 on IMB PC.
  d64zipcode.c - Convert d64 files back to zipcode files.
  unt.lzh      - Tape utility for Amiga.

+ tr64_119.zip - Trans64 v1.19 - main features are:
     - transfer files between 1541, virtual disks, virtual tapes, dos and
       PC64 format.  Supports C64S 1.0E encrypted disks.
     - transfer whole disks between 1541 and virtual disks. Added an
       error detection to continue after a read error.
     - fastloader for 1541 and 1581 (problems from version 1.02 are fixed)
     - German and English user interface
     - Source is in tr_src11.zip
     Author is Bernhard Schwall (schwall@athene.informatik.uni-bonn.de)

+ scbeta6.zip  - The Star Commander - beta version .61
+    - outlook, colors, hotkeys and controls just like in The Norton 
+      Commander 
+    - high speed routines handle the disk and tape images of C64S
+    - handling files and disks on a real 1541 drive connected via the 
+      X1541 cable
+    - three modes for transferring disks from and to the 1541 drive: normal
+      (reads a disk in 7:50, writes in 9:55), turbo (2:25, 2:25) and 
+      warp (1:25, 1:20)
+    - two modes for transferring files from and to the 1541 drive: normal 
+      (reads a 210 block file in 2:20, writes in 2:25) and turbo (1:00, 1:00)
+    - fast execution of 1541 commands and some extended 1541 commands
+    - support for monochrome VGA, CGA and Hercules monitors; full mouse support
+    - no external data files, only the online help and the configuration file
+    - many configuration options for total comfort
+    - works fine under the DOS emulator of OS/2 3.00 Warp
+  Don't forget to read the documentation and the online help and rerun the new
+  calibrator whenever you start using a new release! Have fun!
     Author: Joe Forster/STA (sta@ludens.elte.hu)

  fvcbm20.zip  - List directories of Commodore archives.
     I've just released ver. 2.0 of fvcbm, a program which lists the directories
     of Commodore archives.  This new version handles many new archive formats -
     all the ones I could find which are usable on the Commodore 64 and 128 or
     Commodore 64 emulators.
     The supported formats are:
             ARC230 (ARC)
             self-extracting ARC230 (SDA)
             Lynx
             CS-DOS (LZH)
             self-extracting CS-DOS (SFX)
             PC64 emulator files (R/S/U/P00)
             emulator tape images (T64)
             emulator disk images (D64 and X64)
     The C source is public domain and has been tested under MS-DOS, SCO UNIX,
     and Linux.  The program requires a little-endian CPU to run so Sparc and
     most other workstation users are out of luck.
     The package is available from
        ftp://ftp.wimsey.com/pub/msdos/misc/fvcbm20.zip
     (anonymous uucp from van-bc is also available). The man page can also be
     found <A HREF="http://www.wimsey.com/~danf/fvcbm(1).html">here</A>.
     If you know of an archive type that isn't supported, please send me an
     example and I'll look into adding it.
     Author is Daniel Fandrich (dan@fch.wimsey.bc.ca)


   2.7.2 Data files.

  The ftp-sites frodo.hiof.no and lennon.engr.wisc.edu both have a huge
  selection of .t64 & .d64 disk images.  Section 4.7.2 also lists some other 
  sites that may be of interest.


Archive-name: 8bit-emulation-faq/part2
Comp-answers-archive-name: commodore/8bit-emulation-faq/part2
News-answers-archive-name: commodore/8bit-emulation-faq/part2
Comp-emulators-cbm-archive-name: 8bit-emulation-faq/part2
Posting-Frequency: twice a month (monthly to news.answers)
Version: 2.21

  CBM EMULATION FAQ - (Version 2.3 19 June 1995)
  =================

  This FAQ is usually posted twice a month on the 4th and 19th to 
  comp.emulators.cbm.  Since comp.emulators.cbm was set up to remove the
  emulator discussion from comp.sys.cbm, this FAQ will not be posted there.

  Lines preceeded by a '+' have been added or modified since the last version
  was posted.

  The FAQ is in four parts due to its size.
  Part 1 is general information and a list of available emulators.
  Part 2 is questions and answers.
  Part 3 is mostly data.
  Part 4 is basically reviews of various emulators.

  ---------------------------------------------------------------------------

   3. Questions & Answers
   ----------------------

   A section to answer common questions that emulator users pose.  Please
   forward any questions or answers you think would be appropriate for this
   section to the faq maintainer, or just post to the newsgroup!

  3.1 General.


+  Q: Aren't the games on the ftp sites copyrighted software, and if so, 
+     wouldn't it be software piracy to make these games publicly
+     available?
+  A: That's a good question, and it is one that gets discussed fairly often
+     on the newsgroup.  It is true that most of the games on frodo, etc.
+     are still copyrighted, and will still be copyrighted for several
+     decades.  However, it is also true that the companies and authors that
+     hold these copyrights have not taken any action against the ftp sites,
+     which have been in existence for over a year.  

+     So, it seems that most copyright holders of old C64 games do not
+     especially care about what happens to those games which are not
+     selling anymore.  As a result, at this point it is up to your sense
+     of morality to decide whether to support these sites.

+     Both major ftp sites keep a list ("00no-no.txt") of files that should
+     not be uploaded, since they are still commercially available.  
+     Generally, it would probably be a good idea to not upload anything
+     commercial dated 1993 or later, since chances are good that that
+     software is still commercially available.

   Q: The ftp sites are down/unreachable.  Can somebody post X to the
      newsgroup please?
   A: No!  If you do, some newsservers will drop this newsgroup!  Besides,
      sending probably copyrighted material around is sure to raise the ire
      of certain individuals/organisations, who might otherwise turn a blind
      eye to the whole emulator concept.

   Q: Why would you want to emulate a CBM 8 bit computer?
   A: 1. Why not?
      2. As an intellectual exercise, to prove it can be done.
      3. Nostalgia.
      4. Convenience - why pull out the 64, disk drive, and monitor, when
         you can just start up an emulator?
+     5. You don't have to worry about your hardware breaking or your disks
+        going bad.

   Q: Is there a way to read C64 disks on an IBM PC drive?
   A: No.  The PC's disk controller is too "dumb" to be able to be
      programmed to read non-MFM disks.  The C64 uses GCR.  This limitation
      is why the PC cannot read Amiga disks either.

   Q: So, how can I get my C64 disks from the C64 to the PC, then?
   A: One possibility is to set up a NULL MODEM cable between the 64 and
      the emulator machine, and use a serial transfer.  If you have a 1571 or
      1581, then you can use either the Big Blue Reader (BBR) or the Little
      Red Reader (LRR) to read/write DOS formatted disks.  BBR is commercial 
      and can still be bought, and LRR is a freeware version of BBR.

      There are packages available that allow you to access a 1541 drive 
      from your emulator machine, eg Trans64.  It requires a special
      cable that connects to your PC's parallel port.  The schematic for
      this cable can be found in the docs for most emulators, and in the
      transfer programs themselves.

      It is possible to read/write DOS formatted disks with a 1541, which 
      requires a small hardware modification to the 1541, and a program 
      like 1541-dos.  

      Finally, utilities like 64NET allow you to copy files from the 64 
      to the PC's disk drives, and as a matter of convenience allow you to 
      access your D64 files from the 64.
 
   Q: Which is the best emulator?
   A: You really know how to start a flame war, don't you?  :)
      Opinion varies, naturally.  Since the major emulators are all share-
      ware, your best bet is to download those that interest you and
      register the one you like the most.

      The main two PC emulators used are C64S and PC64 (aka C64NEU & MC64).
      C64S is good, emulates borders correctly and so forth, but some think
      that it's way to expensive.  Others say that PC64 is too unwieldy to
      use.

   Q: Has game X been converted to filetype Y and uploaded anywhere?
   A: Your best option is to have a look in the index files kept on each
      site. (00index.txt)

   Q: Would somebody please upload my favourite program X to an ftp-site?
   A: There's an unofficial "Most Wanted" list moderated and updated by
      Lane T. Denson (rim_0002@frank.mtsu.edu or Pancake1@aol.com).
      Please read that list if you are looking for a particular program and
      can't find it - email Lane if you want to add a program.  Feel free to
      reduce the list by uploading something that's been requested!  :)

   Q: How to use more than one disk at a time on either PC64 or C64S?
   A: Have both disks in your dir, for instance:
         disk-1.d64
         disk-2.d64
      when the game asks for disk 2, hit F9 and change disk to disk-2.d64 or
      whatever the diskname. When hitting enter on the disk, it will change it.

   Q: How do I get a listing of what's contained in my C64 games archives?
      The utility DIR64.EXE works similar to the DOS dir command, but goes
      into D64 and T64 files and lists their contents. It also lists the
      PC64/P00 files with their full 16 char name. To get a complete listing
      of all your C64 programs, type
         dir64 c:\ /s >c64.dir
      at the DOS command line. You can then look into C64.DIR with a text
      browser when you search a certain C64 file.

   Q: Can I use a joystick and/or gamepad?
   A: Yes, in the commercial versions.  Otherwise you will have to settle
      for keyboard emulation of the C64 joystick.

   Q: Can somebody post me the BASIC and KERNEL ROM code in order to get my
      C64 emulator working?
   A: Grab the file roms02.zip from /pub/c64/emulator on frodo etc.
      It has all the ROMs you need to get X64 working.

   Q: Does anyone know if there is an msdos based utility in existance that
      will convert a C64 .LNX file (Created with Lynx 17, Ultimate Lynx Etc.)
      into a .D64 Image (C64S)?
   A: If you have C64s Version 1.1b (the latest) registered or unregistered
      you can use it to dissolve .LNX files. Put the .LNX file on a .d64, 
      then get a copy of Lynx for the C64 (you can get it from ftp.funet.fi).
      Then simply run Lynx on the .LNX file.


  3.2 C64S.

      Note that most of these answers have been provided
      by C64S author, Miha Peternel, to comp.emulators.cbm.

   Q: Is there a program out there that will allow me to capture
      screens from one of the C64 emulators and dump it into a PCX file?
   A: In C64S, hitting PRINT SCREEN puts a .bmp file (C64S0000.BMP) into
      your emulator directory.  Alternatively you can use a "screen
      grabber" utility such as Screen Thief (st101.zip).

   Q: How do I run other .d64 files with the C64S emulator demo version 1.0c?
   A: Just rename the .d64 file you are interested in to testdisk.d64.  It
      will work just fine under c64s10cd.

   Q: OK, but how do I get multi-disk games to work in C64S shareware v1.0c?
   A: Patrick (pcwitteman@et.tudelft.nl) writes:
      Create a number of sub-directories, containing the .d64 files of the
      game you want to play in the c64s10ed. rename them all to testdisk.d64
      (use trans64 1.14 to create the new format). Use the subst command in
      DOS to substitute those sub-dirs with drive letters.
      For example: subst e: c:\c64s\disk2
      When your game asks you to change the disk, use the CD command in
      the alt-F9 disk menu to change the disk and press E. Then return to
      the game and press space or whatever to continue loading.

      Keep in mind that none of this is necessary with C64S v1.1b, since 
      it allows you to select any disk you want.    

   Q: Which is faster, PC64 or C64S?
   A: C64S reaches 100% speed on a 486-33, but with a lowered frame rate.
      On a 486-66 it runs at 100% with 1/1 or 1/2 frame rate, depending on
      the program. Of course, you can set the speed to maximum which is
      up to 500% on a 486-66 with screen refresh disabled, that is 250%+
      with lower frame rate like 1/17. I wish VGA's were faster.

   Q: There are some objects on the screen that you will just pass through
      as if they didn't exist.  I noticed it on Miner 2049'er and Jumpman.
      Is this fixable or just a bug?
   A: Read the docs! If the screen refresh is not set to Original, some games
      may not detect all collisions correctly.

   Q: What's in store for the next version of c64s?
   A: The new version will come out as soon as fastloaders work ok. This
      is the most critical emulation problem at the moment, I think most
      of you will agree. Apart from that many graphics problems will be
      solved as well.

      The new version will also introduce a new .D64 format (it will
      use/make the old one, too), so a disk image will also contain GCR
      coded tracks where necessary (for the correct loading of copy-
      protected programs).

   Q: Shouldn't it be possible to stick all the C64 games in one HUGE .T64
      file, and thus have easy access w/ descriptions to all the games?
   A: Theoretically it is possible; however, for practicial reasons (DOS is
      low on memory etc.) C64S limits the maximum number to 64. 



  3.3 PC64.

      Note that most, if not all, of these answers have been provided
      by PC64's author, Wolfgang Lorenz, to comp.emulators.cbm.

   Q: I don't know how to use the fire joystick with the keyboard..
   A: Fire is <Right Ctrl>, and the directions are the white arrows.  Don't
      forget to turn <Num-Lock> off.

   Q: Can you use a printer with PC64?
   A: You can connect the devices 4..7 either to a device like PRN or a DOS
      file.  There are 4 code mappings CBM -> ASCII:
         channel 0 = big letters, channel 7 = small, rest = unchanged
         all big letters
         all small letters
         leave everything unchanged
     If you want mapping *AND* graphics, you can open 2 files with
     different channels (e.g. 7 and 1).

   Q: Can PC64 do PC speaker sound?
   A: Sorry, no. The SID voices 1 to 3 are mapped to the Adlib FM part of a
      Soundblaster compliant card, and the samples over $D018 go to the DSP.

   Q: Is there a way to get an analog IBM compatible joystick to work in pc64?
   A: IBM analog joysticks on a game card and C64 digital joysticks on the PC64
      cable are supported only in the registered version.

   Q: Do ISEPICed files work with PC64?
   A: ISEPICed files work with PC64 if they not on a D64 disk image but simple
      P00 files. The loader tries to read some location in the floppy via "M-R",
      and if this fails it will load the data file with the standard 
      routines.

   Q: How does the sound support work?
   A: PC64 maps SID voices 1 to 3 to Adlib and digitized samples to
      Soundblaster DAC. Voice synchronisation, ring modulation and filters
      aren't supported. The Adlib sounds a little different from the original,
      but the tunes are cleaner than the sample approach of C64S, C64Alive and
      SIDPlay. Digital drums and noises sound good, but digitized speech has
      timing problems if the <Options / Timing / Update screen every x.
      vertical refresh> is higher than 1. It sounds like a croaking raven
      then. <g>

   Q: I would like to know whether you can re-configure the keys used for
      the joystick.
   A: In version 1.x, there is no way to change the keys for the joystick
      emulation.  But you can map both joysticks to the keyboard in the
      <Options/Joysticks> dialog and exchange the keyboard between the players.

   Q: How many PC emulators include the actual 64 ROM images, including
      Microsoft BASIC?
   A: Personal C64 (ftp.rz.uni-hildesheim.de /pdsoft/pub/c64/emulation/pc64
      pc64e112.zip) comes with several system ROMs:
        r1.64k, r2.64k, r3.64k different revisions of kernal
        original.64k           kernal r3 with load default #8 and short RAM test
        sx64.64k               kernal from SX 64
        64ersys1.64k           extended kernal from 64'er magazine
        exosv3.64k             another extended kernal from 64'er magazine
        original.64b           Microsoft Basic V2
        original.64c           4K character ROM
        vc1541.64d             16K VC1541-I floppy ROM

      I've asked both the German sites of Commodore and Microsoft if they will
      allow me to distribute their ROMs with PC64. One week later, Commodore
      Germany directed me to Commodore USA. After this time I didn't hear
      anything from the two companies. So I decided to deliver the ROMs without
      explicit permission.  This strategy can be changed at any time, because
      PC64 has a built-in feature to read the ROMs from a connected C64
      (the <Manager / Read ROMs> command).

   Q: Can you please list the extra commands / features of the two kernal
      replacements that come with PC64?
   A: I don't know much about EXOS V3 as I'm mostly working with the 64'ER
      SYSTEM V1. Its features are:
      - Fast loader, about 6 times (useless on the emulators <g>). You need
        a second ROM for the 1541.
      - Additional keys:
        F1 = (directory)
        F2 = sys4096*
        F3 = list<CR>
        F4 = old, restores Basic programs after reset
        F5 = <CLS>run<CR>
        F6 = off, disables extensions
        F7 = load<CR>
        F8 = dev#8/9, sets default drive
        Ctrl+CursorDown = go to last screen line
        LeftShift = Stop scrolling
      - Shift+Run/Stop default is floppy
      - "Wedge", i.e. floppy commands and status with @
      - The 1541 @ replace bug has been fixed

   Q: How can I set PC64 up with Linux dosemu?
   A: This is an excerpt of the PC64 user manual (thanks to Marko Makela):
        Linux dosemu
      The emulator has been used on Linux with kernel versions 1.1.64 to 1.1.73
      and dosemu 0.53.35.  If you get a newer version of dosemu, you may need to
      upgrade the Linux kernel as well.
      This instruction assumes that dosemu is already running.  Note that the
      configuration file /etc/dosemu.conf must be edited to allow graphics.
      Disable the video BIOS shadowing and use the setting "allowvideoportaccess
      on". Uncomment the "video" line that corresponds to your display adapter.
      You should be able to start PC64 from the DOS command line, just like you
      would do in MS-DOS.  If you want to use the joysticks or the L64 link, you
      may need to edit /etc/dosemu.conf to grant access to the corresponding I/O
      ports.  The sound is not likely to work, even though you grant access to
      the AdLib or Soundblaster registers.  The SoundBlaster registers are at
      0x210-0x29f, depending on the jumper settings.
      ports { 0x201 }                      # analog joystick
      ports { 0x378 0x379 0x37a 0x37b }    # LPT1
      ports { 0x3bc 0x3bd 0x3be 0x3bf }    # LPT2
      ports { 0x278 0x279 0x27a 0x27b }    # LPT3
      ports { 0x2bc 0x2bd 0x2be 0x2bf }    # LPT4
      ports { 0x388 0x389 }                # AdLib
      Note that there is a bug in dosemu: If a DOS program is running in
      graphics mode, and you switch to another console with Ctrl+Alt+Function
      key (F1-F8) and back to dosemu, the graphics screen will not be updated.
      If you haven't set the option "VGA card on local bus" in Options /
      Desktop, you have to press ESC and F5 after switching back to PC64 in
      order to refresh the C64 screen.

   Q: I have not gotten sound to work..
   A: Look into <Options / Sound>. What does the detection say? Is the Adlib
      there? I'm using the original detection algorithm from Adlib, but if it
      doesn't work, I can add another switch to <Options / Desktop>. This is
      treated as an error, and errors will continue to be fixed in Version 1.x.

   Q: How can I load the p00 files that I have converted from the tape
      images(the .t64)?
   A: <Manager / New>, select the directory with the cursor keys, press <tab> to
      go into the file list, select the program and press <enter>. Or associate
      the extensions .P00, .C64 and .D64 with PC64.EXE if you are using a DOS or
      Windows shell.

   Q: How can I speed it up?  I have a dx280 and donkey kong is running a
      little slow compared to c64s.
   A: Both Donkey Kongs from Nintendo and Ocean don't use heavily scrolling so
      you should get about 200% with a 486DX2-80. PAL is about 4% slower than
      NTSC. If you have set <Options / Timing / Update screen every nth vertical
      refresh> to 1, set it back to 2. The setting 1 is only necessary for 0.5%
      of the games. You may also try to increase the <Options / Timing / Limit
      6510 performance to n percent> from 100 to 110 or somewhat.

   Q: I sometimes get the same error (CPU jam) when I run C64S (usually on EA
      games) ... Is this a problem with fastloaders or disk copy protection?
   A: There are certain illegal opcodes ($02, $22, ...) which halt the 6510
      CPU. Neither IRQ nor NMI can change this state, only a RESET works.
      When the emulators encounter such an illegal opcode, they print out
      an error message (PC64 uses some of the opcodes as ROM traps).

      If a CPU jam happens, first copy the disk image back to a 1541 and run
      the program on a real C64. If it doesn't work, it's either a copy
      protection or your disk image has been crippled. Some transfer programs
      between 1541 and PC do not use checksums.

      If the program runs on a real C64 but not on PC64, it is using C64
      features which aren't emulated yet. Try it then on C64S or C64Alive.
      The quality of the emulation in PC64 1.x will no longer be improved
      because all energy now flows into Personal C64 2.0 for Windows. The
      new versions 1.12, 1.13 and so on contain only bug fixes and
      solutions for hardware conflicts.

      You can easily detect a fast loader in PC64: Run the program and wait
      till it hangs, then press ESC once. Nothing happens? Then it has a fast
      loader. You must press ESC again to go back to the desktop. If the first
      ESC works, restart the program with SHIFT+F5. Wait 2 seconds and press
      ESC. Now watch the protocol: Are there many red lines "Userport und
      serieller IEC-Bus werden nicht unterstuetzt"? Then again, it's a fast
      loader. You can go to the next and previous error with F4 and SHIFT+F4.

      If it has no fast loader, it could hang in an endless IRQ loop. Press I
      to go to the next IRQ event. Is the command above a RTI? If yes, the
      program either uses some undocumented trick to issue an EOI or it is
      timing dependent. As the disk access on the emulator is so much faster,
      a program which expects an IRQ to clear $DC0D in the meantime will not
      always run. I'm trying to make PC64 2.0 more compatible so that most of
      the programs will run. PC64 2.0 will probably come out in Fall '95.

   Q: I can't get Impossible Mission to work right.
   A: Impossible Mission works if you increase <Options / Timing / VIC report
      new line at x percent> from 80 to 100. This is automatically done if the
      name of the game is IMPOSSIBLE MISS. and you start it from the manager.
      If your Impossible Mission has another name, PC64 will remember the
      settings the next time and set the 100 percent itself. Just run it from
      the manager and not by typing in LOAD"IMP*",8 by hand.

   Q: What are all the timing settings(what do they do and mean?)...
   A:

                     Update screen every nth vertical refresh
      A C64 updates the screen 50 (PAL) or 60 (NTSC) times per second. One
      Update is called "vertical refresh". As the VIC consumes 80% of the
      emulation time, you can increase speed by increasing this value. If
      you set it to 60, the screen updates once per second. Then you get 500
      percent on a 486DX2-66. This is only useful for applications. For games,
      use settings between 1 and 5. The default is 2 which means 25 fps
      (frames per second).

                       Limit 6510 performance to n percent
      A C64 is always 100 percent fast. The emulator will run as fast as
      possible, e.g. 150 percent on a 486DX2-66 with schreen refresh 1:2.
      To get original C64 speed, you should set this value to 100 percent.
      The PC will then waste the 50 percent difference between 150 and 100
      with waiting.

                          Use VideoCounter algorithm #n
      If a game doesn't scroll correctly (Boulder Dash, Rambo, 1942), then
      try settings 2 or 3.

                        Start of interrupt consumes n cycles
                       VIC[12h]: Report new line at n percent
      The first setting is for Raster IRQ, the second for Raster Polling.
      Change them if there is a single wrong line at the beginning or at
      the end of a screen switch (scolling region <-> non scrolling region
      or text <-> graphics) or if there is a single flickering line. The
      shortcuts are <Ctrl+Grey+/-> and <Alt+Grey+/->.

                             Enable char and sprite DMA
      Takes away 43 cycles from the CPU on a bad line and 2 cycles for
      each visible sprite in the current line. Switch it on if a game uses
      C(h?)opper Bars, i.e. every raster line has another background. It
      will also remove ghost sprites on some games.

                                       Video
      Leave that to PAL and switch it only to NTSC if a game doesn't run.
      PAL consumes less time for VIC emulation.

                                      Real time
      If the emulation doesn't run with 100 percent, you can set certain
      IO chips to work with real time. I.e. if you run with 500 percent
      and your program uses IRQ music, you can hear it at original speed by
      selecting real time for Timer 1A.

                           Default for new emulator windows
      If you click this checkbox and press OK, the current settings will
      be the new default settings for all unknown programs, e.g. <Emulator /
      New>. Otherwise only the settings for the program in the title bar
      of the dialog box will be saved.

   Q: Are there plans to optimize some of the code?
   A: The code is already written in optimized 32 bit 386 assembler. As the
      big performance killer is the VIC, you can increase <Options / Timing /
      Update screen every nth vertical refresh> to 3 or 4.

+  Q: So, what can I expect in v2.0 of PC64?
+  A: PC64 2.0 will run in Windows 95, Windows NT or OS/2 3.0, and is due 
+     out around the fall of 1995.  Here's what's in store: 
+
+     - individual keyboard and joystick mappings for each program
+     - fast-loader support
+     - some GCR-based copy protection support
+     - .t64 support
+     - realtime X1541 cable support
+     - assignment of both PC joystick buttons possible
+     - new program storage format that defines whether to use NTSC or PAL,
+       you can put a textfile in with documentation, etc.
+     - ..and much, much more (as soon as I find out what.. <g>)

      All programming efforts now are going into PC64 2.0; there may be an
      interim version to fix some bugs.



  3.4 Other emulator specific.

   Q: I have problems extracting the files from AMIGA .lha sidtune archives,
      which I downloaded from Ami-Net or <frodo.hiof.no>, on my PC running
      DOS ! Further I can't get SIDPLAY to accept the extracted files !
   A: Consult the FAQ to SIDPLAY. It is available in the latest SIDPLAY
      package or by asking the author <3schwend@informatik.uni-hamburg.de>
      to send you the latest version (SIDPLAY v1.25b handles fixed
      *.INF/*.info files).

   Q: Has anyone been able to get the A64 emulator for the Amiga running?
      Every time I start it up, the system crashes.
   A: What version? If it's V2, then it always crashes under Kickstart 3.1.
      V2 works under Kickstart 3.0, but not if you use the OCS/ECS chips
      (using AGA scrambles the display :-P). Can someone please fix this?
      To be sure of getting A64 to work you have to use Kickstart 2.0.

   Q: Anyone ever get C64 Alive working?  I can't seem to figure out what to 
      call the ROM files, and the docs are of no help.
   A: (Part 1) You don't have to call ROM files, just type 'c64alive.exe' - if
      this doesn't work - for me it works fine - there must be some other
      problem like the extended video mode (on my Speedstar 24 (ET4000)) C64S
      does not run instead ...
      BTW, c64a09ah.zip is a shareware demo version that terminates after 5 min.
      (Part 2) Load NO drivers except himem.sys.  It worked fine from there.
      It only loads single files, and in raw format which trans64 converted
      fine.  (from George A Neal <gneal916@netcom.com>)

   Q: I'm running A64 v3 on my AGA machine and the sprites are messed up!
   A: Questronix fix: Set your sprite pointer to lo-res.
      BETTER FIX: Use the PD utility KILLAGA to trick your Amiga!
         1) From the CLI, type ED A64!     (Be sure to specify directory!)
         2) Type    KILLAGA A64            (specify directory of KILLAGA)
         3) Save A64!                      (In same place as A64)
         4) Go into ICONEDIT and save A64!.icon as a PROJECT
         5) Go to Workbench and get info on A64!. Enter ICONX as the default
            tool.

   Q: I'm having some trouble getting Trans64 to work.
   A: Don't just press the "test" button once, press it ten times and 
      if any one of the test's fail then adjust your delay. I use 10 because
      if your delay is not long enough it will show up in one of the 10 tests.
      I have the delay set to 40. The machine I have is a 486 DX/2 66 and
      my parallel port comes off one of these vesa local bus ide multi i/o 
      cards. 
      If I drop the delay to less than 40 then sometimes I get unpredictable
      result with the test.

   ===========================================================================


Archive-name: 8bit-emulation-faq/part3
Comp-answers-archive-name: commodore/8bit-emulation-faq/part3
News-answers-archive-name: commodore/8bit-emulation-faq/part3
Comp-emulators-cbm-archive-name: 8bit-emulation-faq/part3
Posting-Frequency: twice a month (monthly to news.answers)
Version: 2.21

  CBM EMULATION FAQ - (Version 2.3 19 June 1995)
  =================

  This FAQ is usually posted twice a month on the 4th and 19th to 
  comp.emulators.cbm.  Since comp.emulators.cbm was set up to remove the
  emulator discussion from comp.sys.cbm, this FAQ will not be posted there.

  Lines preceeded by a '+' have been added or modified since the last version
  was posted.

  The FAQ is in four parts due to its size.
  Part 1 is general information and a list of available emulators.
  Part 2 is questions and answers.
  Part 3 is mostly data.
  Part 4 is basically reviews of various emulators.

  ---------------------------------------------------------------------------

  3.5 How-to... (moved from Appendix B).

     1. Infocom adventures with PC64
     2. Playing multi-disk-image games with C64S 1.0C
     3. Using VIC-EMU.
     4. Running certain games.

   ==========================================================

     1. Infocom adventures with PC64

        Author Peter Yew (p.yew@BoM.GOV.AU)

   I have figured out how to save and restore Infocom adventure games in PC64.
   Now I don't have to do the game in one sitting!

   This is what I did:

   First in PC64 directory, create a clean sub-directory: Infocom
   In that put gamename.d64 (as the STORY disk) and a clean save.d64 (as the
   SAVE disk).

   To load game:
   1) Choose Manager, select New
   2) Find and click Infocom directory
   3) Find and click gamename.d64 and double click it to load the game.
      (Answer N at "Loading from a C1541 disk drive?" prompt)
      While in PC64 , press f5 as often as needed to refresh directory
      reading.

   To save game while adventuring:
   1) Type save
   2) At "Position 1-5 (Default 1)>", type 1 (or what you can remember later)
   3) At "Drive 8 or 9 (Default 8) >", type 8 (don't try 9, or it will crash)^?
   4) At "Are You Sure (Y/N) >", type y (why waste time if you answer no?)
   5) At "Insert SAVE disk into Drive 8. Press [RETURN] to continue >",
      press alt + f9 to PC64 dialog box, click save.d64, click OK and
      come back to C64 game screen, then press ENTER key. You
      should have "saving position 1 ..." message and then
   6) At "Insert STORY disk into Drive 8. Press [RETURN] to continue >",
      press alt + f9 to PC64 dialog box again, click gamename.d64, OK and
      come back to C64 game screen, then press ENTER key.
      Now you can continue the game.

   To restore game anytime:
   1) Type restore
   2) Give number of position: 1 (if you can remember?)
   3) Give number of drive: 8 (don't try 9, or it will crash)
   4) At Are You Sure (Y/N): y (why waste time if you ask no?)
   5) At Insert SAVE disk .....: press alt + f9, click save.d64, click OK &
      come back to C64 game screen, then press ENTER key. You
      should have position restoring .... message.
   6) At Insert STORY disk ...: press alt + f9, click gamename.d64, OK &
      come back to C64 game screen, then press ENTER key.
      Now you can continue the game.
   
   Instead of saving to a separate disk, one can also use <Emulator / Save as>
   to "freeze" the virtual C64 into a *.C64 file. Later you can <Emulator /
   Open> this file or simply type it at the command line. This works also for
   games which have no built-in saving capabilities. A shortcut for Save is
   <Shift+F11>. If you lost your life and want to restore the game to the last
   saved state, simply press <F11>.

   ---------------------------------------------------------------------------

     2. Playing multi-disk-image games with C64S 1.0C

  [Note that v1.1b of C64S allows multi-disk games without hassle.  I 
  include this since some people may not like the time limit in the
  shareware version of C64S 1.1b/c.  -tsr]

  J. Kevin Wells - nstn1297@fox.nstn.ca writes:

  There is a method of playing multi-disk-image games with C64S 1.0C shareware.
  The method is a bit cumbersome and works best with games that involve
  infrequent disk changes.

  1. Copy the first disk-image file as TESTDISK.D64.
  2. Start C64S.
  3. Load and play the game until you are prompted for a new disk.
  4. Press F9 to bring up the utility options. Press Alt-T to enter the 
     tape-image section and press enter on TESTTAPE.T64.
  5. Press F to select the Freeze option and type in a file name. Your game 
     will be saved to the tape drive. If the tape drive is full, delete a file 
     you do not need. 
  6. Press ESC to exit to the C64 emulator.
  7. Press CTRL-BREAK to quit C64S and exit to DOS.
  8. If the game has altered the disk-image in any way (saved your game to the 
     disk, for example), copy TESTDISK.D64 back to its original file name from 
     step 1.
  9. Copy the requested disk-image file (usually Disk 2) to TESTDISK.D64
  10. Start C64S again.
  11. Press F9. Press Alt-T to enter the tape-image section and press enter on 
      TESTTAPE.T64.
  12. Select the file you froze in step 5. Press ESC to exit to the emulator.
  13. Press Shift-TAB to load and run the frozen program. The game should be 
      at the point where it is requesting the disk change. Follow the program's 
      instruction for signaling that you've changed the disk.
  14. When prompted for another disk, repeat the process at Step 4.

  One thing to keep in mind is that the Frozen program is kept on the tape 
  drive until you delete it. You might want to delete the frozen file when 
  you're finished playing the game, or between disk swaps. Remember that you 
  can use this frozen file to restore your game at the point it was frozen 
  again and again. The Freeze option is a very powerful feature, similar to 
  the Snapshot cartridge on the original C64. You can use it to save virtually 
  any program at any point - even games that don't have a save function.

  I haven't tested this method of using multiple disks with every game out 
  there, but the ones I did try seemed to work. Try the method out with a 
  particular game, if possible, before getting into any heavy gaming sessions.

  [note, again, that none of this stuff needs to be done with C64S 1.1b, 
  since it allows multi-disk games without hassle.  The information is
  included just in case you find the ten-minute timer on C64S 1.1b annoying.]

   ---------------------------------------------------------------------------

     3. Using VIC-EMU.

   Question:
   Hi, I'm currently trying to use Peiter van Leuven's VIC-EMU to run some 
   VIC-20 software on my AMIGA.  I have some VIC files on Amiga Formatted 
   floppy's as well, but the documentation doesn't say how to run it with the 
   emulator!  It does suggest that you have to use memory addresses, but how 
   do us non-programmers know what memory addresses to use for a binary file 
   or a BASIC file?  I've had no success.  The command structure is like this;

   vic-00 $???? filename

   What is the proper address for ???? in order to get a program to run?

   -------

   Answer 1:
   Well, you might be asking about at what position Basic starts on the VIC.
   On an unexpanded machine, it starts at $1000 (and load file at $1001).
   On a +3k machine (as the emulator default), it starts at $0400 ($0401)
   On a +8k machine and more, Basic starts at $1200. (load at $1201)

   Binary files normally load with LOAD "name",device,1 and you have to
   find out where to load it yourself. (I know there's a method by looking
   at the first bytes of the file, but I don't know how).

   BTW: The version of VIC-EMU doesn't seem to load files inside the emulator
        very well (e.g the load-command hangs, and there's no RESTORE key).

   -------

   Answer 2:
   Well, Pieter sent me a message letting me know how to load a BASIC or 
   disk image file into the VIC-EMU.  There is a way to find out what position 
   a file starts at, you look at the first four bytes of the file and then 
   switch them around, or something to that effect.  Once you have done that you
   use that number as the memory address:

   vic-20 $1000 filename

   Then from the VIC emulator screen you type LOAD "filename",8 and it will 
   load it.  However, my problem is that from the CLI command, I'm not clear 
   on what filename I'm supposed to include!  The filename for the program I 
   want to load or what?  The emulator won't activate unless you include a 
   filename in the CLI command, but putting the filename for the disk-image 
   file you want doesn't seem to do anything, you still have to load it the 
   old fashioned way (LOAD "",8) to get it to show up.  I guess my question 
   is; how do I just make the emulator activate (i.e. just like a vic after 
   power up) without having it run a program, etc

   ---------------------------------------------------------------------------

   4. Getting certain games to work.

   a. Racing Destruction Set

      Oh, I bet I know what your Racing Destruction Set problem is.  It's the
      one that the game tells you to flip to side two, but it never tells you
      to flip to side one.  It's understood that you flip back to side one at
      every significant pause in disk acess.  In particular, if you modify a
      car, then flip the disk back to side one before you leave the car
      modification menu.  After loading a track from side two, when you want to
      return to the menu, flip back to side one BEFORE telling it to go back,
      because it will hapilly try and load the menu from side two and crash.
      From: Chuck Cochems (zaphod@camelot.bradley.edu)

   b. Mail Order Monsters

      This is a hint that works wonders on the 64 version of the game:
      Copy your original disk (obviously not necessary for the emulators) and
      change the disk name and ID (with a disk editor or utility program) to
      "ownerdisk,ea"  This makes your master disk an owner disk (there's ~100
      blocks free on the original, each owner takes ~1 block of Commie disk
      space, so you'll probably not have to worry about running out of 
      disk space.)
      I have about 9 owners on a copy of the disk, and we have a lot of fun with
      this game.  Just keep hitting RETURN when it wants a disk.  Enjoy. 
      From: Michael Miller (mmiller3@gac.edu)

   c. Bruce Lee

      Actually, I have yet to find a version of this game which doesn't crash
      on a real C64 (NTSC or PAL).  So, my advice is to reset and try again
      if the game crashes on you.




   4. A list of ftp sites where emulation programs can be obtained.
   ----------------------------------------------------------------

  Some of the emulation programs are duplicated at other sites. I have not
  listed every site that has a certain emulator, although I may have listed
  more than one site that has that emulator.

  If you would like to more about other cbm ftp sites then read the ftp list
  which is posted to comp.sys.cbm regularly by Howard Herman
  (72560.3467@CompuServe.COM).

  Any site maintainer who wishes their site listed here only needs to send
  me mail advising me of that fact!


  Format for listing:

  Site.Name              /Directory
   MACHINE - program name


   4.0.1 Site Maintainers.

   If you have any questions about specific emulator sites, then please
   contact the person named below.

   Site:
   -----
   ftp.funet.fi         cbm-adm@ftp.funet.fi
   frodo.hiof.no        c64@hiof.no (Inge Morten Lillesand)
+  lennon.engr.wisc.edu conover@lennon.engr.wisc.edu (Joel Conover)
   ftp.seattlelab.com   ds@seattlelab.com (Derek Smith)
   ftp.giga.or.at       Guenther.Bauer@giga.or.at (Guenther Bauer)

+  Note that the ftp-site watson.mbb.sfu.ca is down permanently.  The
+  site had been listed in several "warez" lists and Jeff Bryer (the admin)
+  was forced to close the site down by the SFU's sysadmins as a result.

+  -- Let us pause in reading the FAQ for a moment of silence... ...

   4.0.2 Site IP addresses.

   Site:
   -----

   frodo.hiof.no       158.36.33.4
+  ftp.seattlelab.com  204.250.145.1

   4.0.3 Site Info.

   This section provides a little information about each site, gathered from
   wherever possible.

   Site:
   -----

   frodo.hiof.no
   -------------
   The archive contains nearly the whole Watson-site. There's a bit missing
   in the misc directory I believe, but I hope to get these files later.
   Total archive contents is about 92 mb. At the moment, the capacity is
   about 380mb. All of this space is granted to c64-emulation, but might
   later be devoted to some true c64 users, if there's no need for that
   much extra space.  We'll see..

   User access is limited to 10 users.  I know that is not a lot, but please
   be patient, and let us experiment a little.  This computer is also being used
   by 80 local users, so we'll have to see how much we can offer for the
   ftp-users.  Hopefully, it will rise to 20 or 30.  There is much heavy
   activity at this computer from 08 - 16 CET, and I recommend all users
   to use this site from 16 - 08 CET.

   Users have write access to "/incoming", so please put all software there,
   together with information about where I should put it, which emulators it
   supports, etc.  Same as for Watson.  It will help me a lot, and will make
   this site stay up longer.  I have very little spare time to administer
   this site, but I'll try to tidy up two times a week.


   ftp.giga.or.at
   --------------
   You searched and could not find any reasonable collection of C64
   demos/emulators/geos stuff/etc. ?

   Stop your frustration!
   -And ftp to:
                            ftp.giga.or.at

   One hell of a GIGA time... (don't get too horny...)


   4.0.4 WWW Info.

   With the rapid proliferation of Web sites having CBM info., it seems
   fitting that they have their own section.

   http://www.hut.fi/~msmakela/cbm <Marko Makela (Fi) C64 Homepage
   http://www.cs.umd.edu/users/fms/comp/Emulation/Commodore.html <U. Maryland 
                C64 Homepage
   http://www.nada.kth.se/~d93-alo/c64/ <Adam Lorentzon, (Se) C64 files Homepage
   http://www.infinet.com/~rbatina <Roberto's Homepage
   http://http.ecn.bgu.edu/users/gforte/cbm.emu.faq.toc.html <Adrian Forte's
          (Emulator FAQ Homepage)
   http://www.csd.uu.se/~d94aca/vic20.html <Anders Carlsson, (Se) Vic 20 files
          Homepage
   http://131.188.190.131/~poldi/c64.html <Daniel Dallmann, Stuttgart, (De),
          aka "Poldi", C64 files Homepage
   http://stekt.oulu.fi/~jopi/ <Jouko Valta, (Fi) C64 files Homepage
   http://129.96.42.3:2374/~gardners/ <Paul Gardner-Stephen, Flinders U. (AU)
          C64 files Homepage
   http://www.seattlelab.com/c64s.htm <C64S Emulator @ SeattleLab.Com
   HTTP://WWW.ENGR.WISC.EDU/~conover/c64.html <Joel Conover

   http://stud1.tuwein.ac.at/~e9426444/index.html
         This is the SID homepage, dedicated to music and stuff on the C64.


   4.1 C64 Emulators.

   Note: faui43.informatik.uni-erlangen.de:
                         /mounts/epix/public/pub/pc/msdos/emulators/c64
         appears to be mirroring frodo's /c64/emulator directory,
         and they're therefore listed together.


   4.1.1 C64 Emulators for the Amiga.

  faui43.informatik.uni-erlangen.de
                         /mounts/epix/public/pub/pc/msdos/emulators/c64

  ftp.funet.fi           /pub/cbm/c64/emulation
   AMIGA - TheA64Package.lha

  ccnga.uwaterloo.ca     /pub/cbm/emulation
   AMIGA - thea64package.lha

  src.doc.ic.ac.uk       /packages/aminet/misc/emu
   AMIGA - C64Emulator.lha

  ftp.wustl.edu          /systems/amiga/boing/utilities/emulators/c64
   AMIGA - a64v2d1.lzh & a64v2d2.lzh  (TheA64Package.lha)
                         /systems/amiga/aminet/misc/emu
   AMIGA - sys.lha and sys.readme
                         /pub/aminet/misc/emu
   AMIGA - Frodo.lha

   4.1.2 C64 Emulators for the PC.

  faui43.informatik.uni-erlangen.de
                         /mounts/epix/public/pub/pc/msdos/emulators/c64
  frodo.hiof.no
                         /pub/c64/utils

+ * Note that frodo is an official mirror site of seattlelabs ftp site
+   (204.250.145.1)
    It is legal for him (and others) to continue to distribute the old
    versions of C64S (v0.9a(b,c)).  I will NOT be distributing the
    registered version of C64S (like anyone thought I would).
    Seattlelab is aware of the existance of frodo and it's collection
    of software.  Hopefully they will find it useful for testing purposes..

   IBM PC - c64.zip
          - c64s09a.zip
            c64s09b.arj
            c64s09c.exe
          - c64alive.zip
            c64a09ah.zip
          - c64sally.zip
          - c64neu.zip

  ftp.funet.fi           /pub/cbm/c64/emulation
   IBM PC - c64.zip
          - c64emu.zip
            c64s09b.arj

  ftp.uni-kl.de          /pub/pc/dos/misc
   IBM PC - C64ALIVE.ZIP
            C64_09AS.ZIP
          - c64_emu.zip
            c64s09b.arj

  ccnga.uwaterloo.ca     /pub/cbm/emulation
   IBM PC - c64.zip

  wilbur.stanford.edu    /pub/emulators/c64
   IBM PC - c64.zip

  ftp.uni-passau.de      /pub/ibmpc/msdos/emulator
   IBM PC - C64S09B.ZIP
          - c64alive.zip

  ftp.uni-giessen.de     /pub/incoming/pc
   IBM PC - c64s09b.arj
          - c64alive.zip

  ftp.rz.uni-hildesheim.de
                         /pdsoft/pub/c64/emlators/pc64
   IBM PC - pc64_d.zip
          - pc64_e.zip

  CompuServe             Magna forum, Library 4 (DOS programs)
   IBM PC - pc64_d.zip
          - pc64_e.zip


   4.1.3 C64 Emulators for the Atari.

  faui43.informatik.uni-erlangen.de
                         /mounts/epix/public/pub/pc/msdos/emulators/c64
  frodo.hiof.no          /pub/c64/utils
   ATARI ST - c64-st.lzh

  faui43.informatik.uni-erlangen.de
                         /mounts/faui45/atari/applications/emulators/c64
   ATARI ST - c64.lha

  ftp.funet.fi           /pub/cbm/c64/emulation
   ATARI ST - c64.lzh


   4.1.4 C64 Emulators for the Macintosh.

  faui43.informatik.uni-erlangen.de
                         /mounts/epix/public/pub/pc/msdos/emulators/c64
  frodo.hiof.no          /pub/c64/utils
   APPLE MAC - MAC64-04.HQX

  ftp.funet.fi           /pub/cbm/c64/emulation
   APPLE MAC - mac64-04.hqx


   4.1.5 C64 Emulators for Unix.

  faui43.informatik.uni-erlangen.de
                         /mounts/epix/public/pub/pc/msdos/emulators/c64
  frodo.hiof.no          /pub/c64/utils
   UNIX/X - x64-0.2.2.tar.gz

  ftp.funet.fi           /pub/cbm/c64/emulation
   UNIX/X - x64-0.2.2.tar.gz

  ccnga.uwaterloo.ca     /pub/cbm/emulation
   UNIX/X - x64-0.2.2.tar.gz

  wilbur.stanford.edu    /pub/emulators/c64
   UNIX/X - x64-0.2.2.tar.gz

  http://stekt.oulu.fi:/~jopi/x64.html
   x64 emulator documents, not the program itself.


   4.2 VIC20 Emulators.

  ftp.hrz.uni-kassel.de  /pub/machines/vic-20/vic-emulator
   AMIGA - vic-emu.lha

  src.doc.ic.ac.uk       /packages/aminet/misc/emu
   AMIGA - vic-emu.lha

  ccnga.uwaterloo.ca     /pub/cbm/util64
   C64 - vic-emulatorC64.lnx


   4.3 C128 Emulators.

  See section 4.1.5.  X128 comes with the X64 emulator.


   4.4 PET Emulators.

  No sites known.
  

   4.5 SID Emulators.
  
  frodo.hiof.no      /pub/c64/sidmusic
   IBM PC - sidpl???.zip
   AMIGA  - playsid3.lha
            delisid.lha
   ATARI ST - mmm226.lzh

  cnam.cnam.fr           /pub/Amiga/mus/play
   AMIGA - PlaySID2.2.lha

  ftp.germany.eu.net     /pub/comp/amiga/music
   AMIGA - PlaySID2.1.dms

  ftp.uni-hamburg.de     /pub/dos/incoming
   IBM PC - sidpl???.zip

  ftp.funet.fi           /pub/amiga/audio/apps/playback
   AMIGA - PlaySID-2.0.lha

  ftp.uni-paderborn.de  /pub/pc-demos/music/programs/players
   IBM PC - sidpl???.zip


   4.6 Non-Emulators.

  nic.funet.fi          /pub/cbm/c64/emulation
   AMIGA - C64Emulator.lha

  ftp.cnam.fr           /pub2/Amiga/emu
   AMIGA - C64Emulator.lha

  ftp.germany.eu.net    /pub/newsarchive/comp.sources.amiga/volume89/fun
   AMIGA - c64.1.Z  (C64Emulator.lha)


   4.7 Other utilities & files.

   4.7.1 Utilities

  frodo.hiof.no         /pub/c64/utils
   IBM PC - disk64e.arj
            c64uti5.zip
            maketape.arj
            copy2d64.arj
            zip2d64.arj
            d64util.zip
            d64_10.zip
            d64zipcode.c
            tr64_114.zip
            tr_src11.zip
            and many, many others..
   AMIGA - maketape.arj
           unt.lzh

  ftp.funet.fi          /pub/msdos/utilities/diskutil
   IBM PC - copy2d64.arj
            zip2d64.arj

  ftp.funet.fi          /pub/cbm/emulation
   AMIGA - d64.lha
   IBM PC - dir_d64.zip

  cnam.cnam.fr          /pub2/Amiga/emu
   AMIGA - d64.lha

  ccnga.uwaterloo.ca
   IBM PC - tr64_114.zip
            tr_src11.zip
            64copy20.zip

   4.7.2 Data files.

  frodo.hiof.no         /c64/games/   (.t64 * .d64 files)
  frodo.hiof.no         /c64/misc/    (.t64 * .d64 files)

  lennon.engr.wisc.edu  /pub/c64/games
                        /pub/c64/misc 

  nic.funet.fi          /pub/amiga/audio/misc/sid-tunes
   AMIGA - C64MusicShow-1.lha  (for use with PlaySID/sidplay)
           C64MusicShow-2.lha
           Addition.lha

  ftp.cnam.fr           /pub2/Amiga/mods/PlaySid
   AMIGA - C64MusicShow-1.lha  (for use with PlaySID/sidplay)
           C64MusicShow-2.lha
           Addition.lha

  ftp.cs.tu-berlin.de   /pub/amiga/audio/mods-c64
   AMIGA - C64Sounds.lha  (for use with PlaySid/sidplay)

  ftp://ftp.wustl.edu/systems/amiga/aminet/mods/chip/
  ftp://src.doc.ic.ac.uk/packages/aminet/mods/chip/
   AMIGA - NemeSIDs-*  (collection of C64 music)
   - note: these at just some of the aminet sites where the files should be
           available.

  frodo.hiof.no         /pub/c64/sidmusic
    AMIGA or
    IBM PC - NemeSIDs*.lha      (The biggest collection so far)
             rippoff5.zip       (New tunes not included anywhere else)
             demo_new.lha       -"-
             game_new.lha       -"-

  Also take a look at the SIDPLAY FAQ covering a list of Ami-Net FTP servers
  and sidtunes related information.


  =====================================================================


   5. Emulator File Formats.
   -------------------------

      As there are several emulators for different platforms, they all
      cannot be made directly usable by other emulators, unless the author
      has provided that facility.  Utilities to convert back into CBM
      binary generally exist fortunately.

   5.1 C64 Emulators standard files - overview.

     This section shows the "normal" files used by each emulator.


  Program       File type      Identification   Contents
                               (name or method)

  c64.zip (PC)  disk image       VC1541.000     683 pcs 256-byte sectors
                tape image       -              not used

  C64S   (PC)   basic rom     }                 contains binary data for:
                kernel rom    }- romcode.c64    VC1541 (16384 bytes), chargen 
                chargen rom   }                 (4096),basic (8192) and kernel
                disk drive rom}                 (8192) = total 36864 bytes
                program          -              not used
                disk image 09c   *.d64          683 pcs 256-byte sectors
                           09a,b testdisk.d64
                tape image       *.t64          ?

                 Note: the kernel part is modified.

  c64sally.zip  basic rom        A000BFFF.64F   8194 bytes of binary data (1)
   (PC)         kernel rom       D000DFFF.64P   8194 bytes of binary data (1)
                chargen rom      E000FFFF.64P   4098 bytes of binary data (1)
                disk drive rom   -              not used
                program          *.64P          C64 program with load address
                                                also SEQ files via *.64S
                disk image       -              not used
                tape image       -              not used

  pc64*.zip     basic rom        *.64B          8192 bytes of binary data
   (PC)         kernel rom       *.64K          8192 bytes of binary data
                chargen rom      *.64C          4096 bytes of binary data
                module at $8000  *.64M          8192 or 16384 bytes of binary
                                                data (8K at $A000 = *.64B)
                disk drive rom   VC1541.64D     16384 bytes of binary data
                program          *.P00          C64 program with load address
                                                preceded by 24 byte header.
                SEQ data file    *.S00          same as *.P00 with different
                USR data file    *.U00          | extensions. The 00 can be
                DEL data file    *.D00          | any numbers if the 16-to-8
                REL data file    *.R00          | mapping leads to duplicates.
                disk image       *.D64          683 pcs 256-byte sectors, plus
                                                optionally 683 bytes error info
                tape image       -              not used

  c64.lzh (ST)  basic rom        c64/_basic     8192 bytes of binary data
                kernel rom       c64/_kernal    8192 bytes of binary data
                chargen rom      c64/_font      4096 bytes of binary data
                disk drive rom   -              not used
                program          -              C64 program with load address
                disk image       -              not used
                tape image       -              not used

  x64 (UNIX)    basic rom        basic          8192 bytes of binary data (2)
                kernel rom       kernel         8192 bytes of binary data (2)
                chargen rom      -              not used
                disk drive rom   -              not used
                program          -              C64 program with load address
                disk image       magic header   64 byte magic header and
                                                683 pcs 256-byte sectors
                tape image       -              not used
                 rom module       filename       8192 or 16384 byte cartridge,
                                                 stored in binary format
                ram image        ram            RAMSIZE + 4103
                   (x64 will load a ram image, eg. "the contents of RAM as
                    in warm start" at startup, if one exists)
                   Only the RAM is loaded at startup. CPU registers and I/O
                   are loaded only via 'undump' in the monitor. (That way it
                   won't keep crashing all the time.)

                (1) Includes load address.
                (2) Default load address allowed.


   5.2 Table of supported file formats.

     This section shows which emulators can access which file formats,
     unaltered.  It is quite incomplete!

     Legend used in table:
       (Legend changed for fast grasp, thanks Wolfgang!)

       x = yes, fully supported, c = convertor provided, - = no, and
       empty = unknown.

                     x64dsk   d64   t64   p00   CBM
       X64              x      c                 x
       PC64 1.10        -      x     c     x     c
       C64S 1.1A        -      x     x     c     c
       C64Alive 0.9ah   -      -     -     -     x


   5.3 Standard data files - internal formats.

     This section shows the internal format used by each filetype.  Most of
     it was taken from the compatibility section of the x64 manual, and was
     provided by Jouko 'Jopi' Valta.  That section is based on the information
     acquired from news articles written by:
      blohm@mathematik.uni-ulm.de (Guntram Blohm)
      kbrisley@tsegw.tse.com      (Kevin Brisley)


       File:  ram (x64)         Total Size: RAMSIZE + 4013
       ---------------------------------------------------
       Offset   Bytes      Description
       0        RAMSIZE    contents of the RAM

     The following data is not included yet:
       RAMSIZE   4096      I/O area with shadows
       7                  CPU Registers: PC (LO/HI), AC, XR, YR, PS, SP


        File:  x64 Disk File      Total Size: 174912
       ------------------------------------------
       Offset   Bytes      Description
        0          4         Magic header: 'C',0x15, 0x41, 0x64

        4          4         Header Version:
                         C1541 Version Major
                         C1541 Version Minor
                         Device Type:   0 = 1541
                         Max Tracks:   35  (from disks v1.2 upwards)

       64      256 byte sectors


       File:  *.d64 disk image   Total Size: 174878
       ------------------------------------------
      D64 File Structure was developed by Miha Peternel for use in C64S.

      D64 file contains all sectors as they appear on the 1541 formatted disk.
      Each sector is 256 bytes long. Error information (1 byte per sector)
      can be added in the end of file.

      __________________________________
      File types currently supported

      174848 bytes = 35 tracks
      175531 bytes = 35 tracks + 683 bytes error information
      196608 bytes = 40 tracks
      197376 bytes = 40 tracks + 768 bytes error information

      _______________
      Track sizes

      Tracks, size
        1-17   21 sectors * 256 bytes
       18-24   19 sectors * 256 bytes
       25-30   18 sectors * 256 bytes
       31-35   17 sectors * 256 bytes
      *36-40*  17 sectors * 256 bytes

      Tracks 36-40 are non-standard.

      ____________________________________
      Actual layout for 35 track image

       Offset, size, description
        0*256, 256   track 1, sector 0
        1*256, 256   track 1, sector 1
         ...
       20*256, 256   track 1, sector 20
       21*256, 256   track 2, sector 0
         ...
      682*256, 256   track 35, sector 16
      683*256, 683   error info (byte per sector in the same order)

Sectors are 256 bytes. Sector 0 is at offset $00000 in the .d64 file.
Sector 1 is at offset $00100 in the .d64 file, and so on.

A normal 1541-format disk is divided into 4 'zones' -
zone 1 = tracks 1-17 with 21 sectors (numbered 0-20)
zone 2 = tracks 18-24 with 19 sectors (numbered 0-18)
zone 3 = tracks 25-30 with 18 sectors (numbered 0-17)
zone 4 = tracks 31-35 with 17 sectors (numbered 0-16)

  The directory lies on track 18.  The following info is for
  track 18 -
  sector 0 =      Block Availability Map (bytes 00-8f, bitmapped)
                  bytes 90-9f = disk name (16 chars, space padded)
                  The first 2 bytes are track and sector to the
                  first directory block. Usually the first directory
                  block is the very next block on the disk
  directory blocks:
                  byte 0 = track of next directory block
                  byte 1 = sector of next directory block
                  bytes 2-31 = file entry #1
                  bytes 32-33 = unused (should be 0)
                  bytes 34-63 = file entry #2
                  bytes 64-65 = unused,  etc etc
  The first byte of a file entry is the type of file ($82 = PRG,
  $81 = SEQ, $83 = USR, $80 = DEL, $84 = REL).  The next two bytes
  point to the track & sector of the first sector of the file.
  The next 16 bytes is the filename (padded).  The last two bytes
  (i.e. bytes 30 & 31) gives the block count of the file (in low
  byte/high byte format).

  Each file block has 254 bytes of data, unless it is the last block. The
  first 2 bytes of each block are the track and sector of the next block.
  If the track is zero then this is the last block, and the sector # really
  tells the number of bytes used out of the 254 possible. The use count is
  the number of bytes used plus 1--so if the sector # has a $05, then really
  only $04 bytes were used out of the last block.

  The directory is at offset $16500 in the .d64 files. Tracks references
  start at 1. Sector references start at 0. So if the first 2 bytes of a
  block are $06 04, the absolute location is at
      5 * $1500 + 4 * $100.
  (5 because that's $06 minus 1. $1500 because at track $06 there are 21
  sectors per track, or $1500 bytes. 4 because that is the sector number,
  and $100 because that's the number of bytes in a sector.)

  The disk has a total of 35 tracks. There are 17 trachs with 21 sectors (357
  sectors total), 7 tracks with 19 sectors (133 sectors total), 6 tracks
  with 18 sectors (108 sectors total), and 5 tracks with 17 sectors (85
  sectors total). So total sectors per disk (or .d64 image) is
    357+133+108+85 = 683 total, or 174,848 bytes total, which is the exact
  size of the .d64 files.


       File:  *.t64 tape image Total Size: Varies
       ------------------------------------------
       Offset   Bytes      Description
        0         64          Tape Record:
        0         32            Tape description + EOF (for type)
       32          2            Tape version: $0100
       34          2            Max number of files, in LO/HI
       36          2            Number of existing files, in LO/HI
       38          2             -
       40         24            User description, as displayed in file menu

       64         32*n       File Record(s) for each of n files:
        +0       1            Slot allocation flag:
                              00 = free entry
                              01 = normal tape file
                              03 = memory snapshot v0.9, uncompressed
                              02..FF = reserved for memory snapshots
        +1       1            File type
        +2       2            Start address in C64 memory, in LO/HI
        +4       2            End address in C64 memory, in LO/HI
        +6       2             -
        +8       4            File start address on the image, in LO/HI
       +12       4             -
       +16      16            C64 filename

      64+32*n   ???      File contents.


   Wolfgang Lorenz (author of PC64) posted the following in an open letter
   to Miha Peternel (author of C64S).  AFAIK there's been no reply.

   There is some ambiguity in the T64 file format. Could you please make a
   statement if the following assumptions are correct?

   Tape Record

   Offset, size, description
        0, 32    DOS tape description, ASCII charset, contains either
                 "C64S tape file",13,10,"Demo tape",26,"......" (no 0!) or
                 "C64S tape image file",0,0,0,0,0,0,0,0,0,0,0,0 or
                 "C64 tape image file",13,10,0,0,0,0,0,0,0,0,0,0,0
                 To identify a T64 file, search for the sub-strings "C64" and
                 "tape".
       32, 2     tape version, currently $0100 or $0101
       34, 2     number of directory entries, mostly $001E
       36, 2     number of used entries (0 for unknown)
       38, 2     free
       40, 24    user description as displayed in tape menu, CBM charset,
                 padded with space

   File Record

   Offset, size, description
        0, 1     entry type
                 0 = free entry
                 1 = normal tape file
                 3 = memory snapshot v0.9, uncompressed
                 2..255 reserved (for memory snapshots...)
        1, 1     C64 secondary address, mostly 1
        2, 2     start address
        4, 2     end address
        6, 2     free
        8, 4     offset of file contents start within T64 file
       12, 4     free
       16, 16    C64 file name, CBM charset, padded with space

   Example Structure Definitions for C and C++

   struct {
     char acTag[32];
     word wVersion;
     word wEntries;
     word wUsedEntries;
     word wReserved;
     byte abName[24];
   } T64Header;

   struct {
     byte bType;
     byte bSecAdr;
     word wStartAdr;
     word wEndAdr;
     word wReserved;
     long lOffset;
     long lReserved;
     byte abName[16];
   } T64Entry;


       File:  CBM Files      Total Size: Varies
       ---------------------------------------
       Offset   Bytes      Description
        0          2          Load address in LO/HI format.


       File:  *.p00 file image Total Size: Varies
       ------------------------------------------
       Offset   Bytes      Description
        0          9         String "C64File" terminated by 00.
        9         17         Original C64 Filename.
       10          1         Record size for REL files.
       26                  Original file


  5.4 Converting between file formats.

  Instructions on how to interconvert between all of the formats used
  by the various C64 emulators.

  Formats:

  1) .d64 - Disk image used by C64s 
  2) .t64 - Tape image used by C64s
  3) .p00 - image format used by PC64

  Conversions:

  1) .p00 to .t64
   a) Start PC64
   b) First get a "Manager" window up
   c) Place the cursor on the *.P00 file you want converted
   d) Then use "Manager/Export" (ALT-M-E). This will save it as a *.PRG.
   e) Then use MAKETAPE.EXE to make a *.t64 file.

  2) .t64 to .p00
   Use t64top00.exe, which comes with PC64 and creates p00 copies of all the
   t64 files in a directory tree.



   6. How to extract the Rom images required by the emulators.
   -----------------------------------------------------------

  Type in the following files on your C64 and run them to get the rom image
  files. Then transfer those files onto the machine that you require.
  See the comp.sys.cbm FAQ section 7 for some details on transfers.

  Alternatively, You could get TheA64Package.lha and extract the file called
  TheA64Package/64Prgs/SaveROMs. This will extract the basic and kernal roms
  from a C64.

  Note that this stuff is only required if your emulator doesn't come with
  ROMs.  Both C64S and PC64 come with ROMS, so don't worry about that.

   6.1 C64 roms - Basic, Kernal & Charset.

  C64 BASIC ROM extractor:

   10 OPEN 5,8,2,"64BASIC,P,W"
   20 FOR X=40960 TO 49151:PRINT#2,CHR$(PEEK(X));:NEXT
   30 CLOSE 5

  C64 KERNEL ROM extractor:

   10 OPEN 5,8,2,"64KERNEL,P,W"
   20 FOR X=57344 TO 65535:PRINT#2,CHR$(PEEK(X));:NEXT
   30 CLOSE 5

  C64 BASIC and Kernal ROM extractor:

   10 OPEN5,8,5,"0:C64ROM,S,W"
   20 FOR X=40960 TO 49151
   30 A$=CHR$(PEEK(X))
   40 PRINT#5,A$;:NEXT
   50 FOR X=57344 TO 65535
   60 A$=CHR$(PEEK(X))
   70 PRINT#5,A$;:NEXT
   90 CLOSE5

  C64 Character ROM extractor:

   10 POKE 56334,0:POKE 1,51
   20 FOR X=16384 TO 20479:POKE X,PEEK(X+36864):NEXT
   30 POKE 1,55:POKE 56334,1
   40 OPEN 5,8,5,"64CHARGEN,P,W"
   50 FOR X=16384 TO 20479
   60 PRINT#5,CHR$(PEEK(X));:NEXT
   70 CLOSE 5

   6.2 VIC20 roms - Basic, Kernel & Charset.

  VIC20 BASIC ROM extractor:

   10 OPEN 5,8,2,"V20BASIC,P,W"
   20 FOR X=49152 TO 57343:PRINT#5,CHR$(PEEK(X));:NEXT
   30 CLOSE 5

  VIC20 KERNEL ROM extractor:

   10 OPEN 5,8,2,"V20KERNEL,P,W"
   20 FOR X=57344 TO 65535:PRINT#5,CHR$(PEEK(X));:NEXT
   30 CLOSE 5

  VIC20 Character ROM extractor:

   10 OPEN 5,8,2,"V20CHARGEN,P,W"
   20 FOR X=32768 TO 36863:PRINT#5,CHR$(PEEK(X));:NEXT
   30 CLOSE 5


   6.3 1541 rom.

  C1541 ROM extractor:

  Extract area $C000-$FFFF

   100 B=16384:I=B
   110 OPEN 15,8,15
   120 FOR H=192 TO 255:PRINT H;
   130 FOR L=0 TO 255
   140 PRINT#15,"M-R";CHR$(L);CHR$(H)
   150 GET#15,A$
   160 Z=FRE(0)
   170 POKE I,ASC(A$+CHR$(0))
   180 I=I+1:NEXT L
   190 NEXT H
   200 CLOSE 15
   210 OPEN 5,8,5,"0:C1541ROM,P,W"
   220 FOR X=B TO I-1:PRINT#5,CHR$(PEEK(X));:NEXT
   230 CLOSE 5



   7. Other information.
   ---------------------

   7.1 Newsgroups worth reading.

  If you are wanting as a question about an emulator or read what other
  people are saying, then I recommend that you read comp.emulators.cbm :)
  Another good group to read for general info about Commodore 8bit machines
  is comp.sys.cbm.


   7.2 Emulator benchmarks.

  Some people are interested in the relative speed of the emulators with
  respect to the actual machine it's emulating.  So far, only the following
  simple test program has been used in benchmarking emulators.  More tests
  and more machines are needed!

  Benchmark test #1.

  10 a = ti
  20 print "[clr/home]"
  30 for i = 1 to 1000
  40 print "[up][up]"; i ; i * i
  50 next
  60 print "[down][down] time = "; ti -a

  Results:

  "Machine"               "Config"     "Software"   "Score"

  C128                    64 mode      CBM BASIC     1590
  C128                    40 col       CBM BASIC     2226
  C128                    40 col fast  CBM BASIC     1071 (1)
  C128                    80 col       CBM BASIC     4072
  C128                    80 col fast  CBM BASIC     2062
  Sun SPARC IPC           8Mb RAM      x64-0.2.2     1452 (2)
  Osborne 486 DX2/50      16Mb RAM     c64hercules    286
  Osborne 486 DX2/50      16Mb RAM     c64sally       234
  Osborne 486 DX2/50      16Mb RAM     c64s10cd      1486
  Osborne 486 DX2/50      16Mb RAM     c64neu        2985
  Osborne 486 DX2/50      16Mb RAM     c64alive       --- (3)
  Amiga 3000/25           6Mb RAM      A64v2          788
  Atari 1040 STfm	        Hi-res	    	c64.tos  3567 (58 s real)
  Atari 1040 STfm	        Low-res		c64.tos	 3624 (58 s real)

  Notes:
  (1) Screen automatically blanked during test.
  (2) "ti" clock doesn't necessarilly keep real time in x64.  In x64 the ti
      clock is relative to the virtual speed, not the wall clock time.
  (3) c64alive wouldn't run on test machine. Doh.


   7.3 Emulator detection.

  Writers of software on the C64 or emulators may wish to know whether the
  "machine" their code is executing on is a real C64, or not.  A small
  BASIC program was written by Wolfgang Lorenz, and posted by Paul David
  Doherty, which tests this.

  Critical addresses for the PIA expansion
 
  The critical addresses of the device are 57216--57343 ($DF80--$DFFF).
  There is the PIA chip to which you POKE the values to switch memory
  blocks. The PIA does not have 128 registers, as one might think. There
  are sixteen copies of its 4 addresses in that memory area. For instance,
  the addresses 57216, 57284, 57288 and 57340 are equivalent to each
  other.

   here's a small CBM-BASIC program by Wolfgang Lorenz which tests 
   whether it is running on a real C-64 or on an emulator.  It also
   contains a suggested method for emulators to allow other programs
   to detect them.  This detection method is already implemented 
   in the PC64 and C64S emulators; it would be nice if other emulators
   (A64, MAC64, C64ALIVE, X64) would adhere to it too.
 
   100 rem *** where am i? ***
   105 rem -------------------------------
   110 rem this is the recommended method
   115 rem how to detect a c64 emulator,
   120 rem e.g. for disabling fast loaders
   125 rem
   130 rem - the byte at $dfff changes
   135 rem   between $55 and $aa
   140 rem - the byte at $dffe contains
   145 rem   the manufacturer code letter:
   150 rem   a = c64alive
   155 rem   l = mc64 beta 10-12, now free
   160 rem   m = mc64 beta 13-17, now free
   161 rem   p = personal c64
   175 rem   s = c64 software emulator
   180 rem   x = x64
   185 rem - the word at $dffc contains
   190 rem   the emulator version number,
   195 rem   e.g. $0120 for version 1.2
   200 rem - the bytes from $dfa0 contain
   205 rem   a copyright string with
   210 rem   emulator name and version,
   215 rem   $0d, copyright and $00. this
   220 rem   was at $df00 in early mc64
   225 rem   betas, but had to be moved
   230 rem   because $df00 is reserved for
   235 rem   ram expansion units
   240 :
   245 print:x=57343:if peek(x)<>85 then if peek(x)<>85 then 360
   250 if peek(x)<>170 then 360
   255 if peek(x)<>85 then 360
   260 if peek(x)<>170 then 360
   265 m$=chr$(peek(57342)):print "manufacturer = '";m$;"' ";
   270 if m$="a" then print "(c64alive)";
   275 if m$="p" then print "(pc64)";
   285 if m$="s" then print "(c64s)";
   290 if m$="x" then print "(x64)";
   295 print:v=peek(57340)+peek(57341)*256
   300 for i=0 to 3:v$=mid$("0123456789abcdef",1+(v and 15),1)+v$:v=int(v/16):next
   305 print "version = $";v$
   310 print:poke 780,160
   315 if (m$="m" or m$="l") and v$="0100" and peek(60686)<>2 then poke 780,0
   320 poke 782,223:sys 43806:print:end
   325 :
   330 rem -------------------------------
   335 rem these are manufacturer-specific
   340 rem workarounds, which should be
   345 rem replaced with the official
   350 rem emulator detection method
   355 :
   360 if peek(60682)<>0 then 385
   365 print "c64 software emulator"
   370 print "(c)1991-94 miha peternel"
   375 end
   380 :
+  385 if peek(60736)<>0 then 410:rem untested
   390 print "x64 (version 1 or 2)"
   395 print "(c)1993-94 j.sonninen/t.rantanen/j.valta"
   400 end
   405 :
   410 x=57087:if peek(x)+peek(x)+peek(x)<>0 then 435
   415 print "c64alive"
   420 print "(c)1993-94 f.littmann developments"
   425 end
   430 :
   435 print "this is an original c64 or c128"

  You can distinquish a real C128 from C64 by testing the VDC status register
  at $D600/$D601: If the value written to $D601 remains intact, its a C128 in
  either mode, otherwise a real C64.  There is no way (or need) to tell C64
  from C64c though.


   7.4 Other sources of information.

   There are a number of WWW addresses that may be of interest...

  - The Commodore 64 WWW Server.
    (Has a few c64s and x64 documents)
    http://www.hut.fi/~msmakela/c64.html

  - WWW Personal Computing and Emulation Homepage
    (General emulator pages, not just Commodore)
    http://www.cs.umd.edu/users/fms/comp/

  - Commodore emulation
    (The Commodore section from the link above)
    http://www.cs.umd.edu/users/fms/comp/Emulation/Commodore.html

  - X64 Emulator / Simulator For Unix
    (Offical site for x64)
    http://stekt.oulu.fi/~jopi/x64.html

  - Commodore 64 computing
    (Home of the comp.sys.cbm FAQ)
    http://www.msen.com/~brain

  - Seattle Labs
    (Marketers of C64S)
    http://www.seattlelab.com/c64s.htm


  =========================================================================


Archive-name: 8bit-emulation-faq/part4
Comp-answers-archive-name: commodore/8bit-emulation-faq/part4
News-answers-archive-name: commodore/8bit-emulation-faq/part4
Comp-emulators-cbm-archive-name: 8bit-emulation-faq/part4
Posting-Frequency: twice a month (monthly to news.answers)
Version: 2.21

  CBM EMULATION FAQ - (Version 2.3 19 June 1995)
  =================

  This FAQ is usually posted twice a month on the 4th and 19th to 
  comp.emulators.cbm.  Since comp.emulators.cbm was set up to remove the
  emulator discussion from comp.sys.cbm, this FAQ will not be posted there.

  Lines preceeded by a '+' have been added or modified since the last version
  was posted.

  The FAQ is in four parts due to its size.
  Part 1 is general information and a list of available emulators.
  Part 2 is questions and answers.
  Part 3 is mostly data.
  Part 4 is basically reviews of various emulators.

  ---------------------------------------------------------------------------

   8. Credits.
   -----------

  If anyone has a better description for any of these emulators then send me a
  copy, also if you know of any other emulators or ftp sites then send me them
  as well so that I can update the information.
  Is any one out there thinking of making an emulator for a machine other than
  a C64. (eg C128, VIC20, Plus4, C16, PET) I will add this to the list also.

  Thanks to: 
             All the emulator authors
              - For writing your emulator;
             All the utility authors
              - For writing your utility! :)
             
             frodo, lennon, funet, etc.
              - For keeping the emulators and stuff online!

             Jim Sloan : jsloan@u.washington.edu
              - For posting the rom extraction routines on comp.sys.cbm.
             Jouko Valta : jopi@stekt.oulu.fi
              - For sending me some documentation on the ATARI-ST emulator,
                the rom extraction routines, and comments.
              - For "5. Emulator File Formats" section.
              - For sending me the updated Kernal ROM section.
              - For sending me the regualr updates!
             Jim Brain : brain@msen.com
              - For his comments & questions on version number.
             Jens-Uwe Rumstich : rumstich@informatik.hu-berlin.de
              - For pointing out some German ftp sites & c64alive emu.
             
             Eli Mackenzie : eli.mackenzie@fleming.edu
             Fredrik Ekman : D91FE@rby.hk-r.se
             Eric Brown : brown@sme.siemens.com
              - For info on Pet emulators
             Caronni : caronni@tik.ethz.ch
              - For SX-64 rom information.
             Per Olofsson : cl3polof@cling.gu.se
              - For info on A64 emulator.
             Marko Samuli Makela : Marko.Makela@hut.fi
              - For PET 64 aka 4064 aka Educator 64 kernel rom differences
              - For writing the C64 Kernal ROM revision section.
             Wolfgang Lorenz
              - For the program and description of emulator detection.
              - For answering so many questions.
             Paul David Doherty (h0142kdd@fx2800.rz.hu-berlin.de)
              - For posting the detection program and suggestions for standard
                file formats for the emulators.
             Guntram Blohm (blohm@mathematik.uni-ulm.de)
              - For description of the P00 file format and converting it.
             Kevin Brisley (kbrisley@tsegw.tse.com)
              - For description of the T64 file format and converting it.
             Michael Schwendt (3schwend@informatik.uni-hamburg.de)
              - For the excellant new intro to SID emulators.
  
And extra special thanks to:
             Peter Weighill - stuce@csv.warwick.ac.uk
              - For all the hard work he put into getting this FAQ going.
              - For all the hard work he puts in to providing updates to the
                information presented here.  :)


  9. Data.

  9.1 C64 KERNAL ROM versions.
  9.2 C128 BASIC ROM versions.

  --------------------------------------------------------------------------

  9. Data.

   9.1 Commodore 64 KERNAL ROM versions.

  Below is information on differences between the Commodore 64
  KERNAL revisions R1, R2, R3 and the Commodore SX-64 and the
  Commodore 4064 ROMs.  The chronological order must be R1, R2, 4064,
  R3 and SX-64.

  The KERNAL ROM R1 was obviously used only in early NTSC systems.
  It lacks the PAL/NTSC detection, and always uses white color while
  clearing the screen.  The white color feature is from the VIC-20
  ROM, but the VIC had a white background by default.  Thus, this
  feature can be listed as a bug.  The CIA 1 timer A will always
  divide the system clock through $411C == 16668.  The other ROMs use
  the values $4026 an $4296, depending on the system version
  (PAL/NTSC), so their interrupt frequency is 985248 Hz / 16422 ==
  59.996 Hz or 1022727 Hz / 17046 == 59.998 Hz.  Note that both
  clock divisor values differ from the value used in the KERNAL R1.

  The PAL/NTSC flag ($2A6) affects the RS-232 timer settings as well.
  It seems that the new RS-232 tables for the PAL have been created on
  the upper BASIC interpreter area ($E000--$E4FF), from the address
  $E4EC on. Surprisingly also the original NTSC tables have been
  changed.  Very probably the units running the KERNAL R1 had a slower
  clock frequency.  Extrapolating from the interrupt timer values,
  they ran at 1.0000 MHz.  Now this makes sense, since the first
  (NTSC) video chips had 262 lines per frame and 64 cycles per line.
  The frame rate was thus 1 MHz / 262 / 64 == 59.637 Hz.  The newer
  NTSC units run at 1022727 Hz and draw 263 lines per frame and use 65
  cycles per line.  This produces a frame rate of 59.826 Hz.  Well,
  now it is very obvious that there has been at least one mother board
  type that has only been used on NTSC units.  Probably the processor
  clock was created from a 8 MHz chrystal frequency, which served as
  the dot clock.  The latter NTSC units generate the processor clock
  by dividing the chrystal frequency of 14318181 Hz by 14, and the dot
  clock will be generated by octacoupling the processor clock.

  The PAL systems have been developed later, and they always run at
  the same clock frequency, 17734472 Hz / 18.  The frame rate has
  always been 17734472 Hz / 312 / 63 == 50.125 Hz on those puppies.

  The changes in the latter ROM revisions were mainly cosmetical.
  There were some bugs corrected in the R3 revision, though.

  Format for list:

  Address: 901227-01 (Commodore 64 KERNAL R1, $FF80 content $AA)
           901227-02 (Commodore 64 KERNAL R2, $FF80 content $00)
           901227-03 (Commodore 64 KERNAL R3, $FF80 content $03)
           ??????-?? (SX-64 or DX-64 KERNAL, $FF80 content $43)
           ??????-?? (4064 aka PET 64 aka Educator 64, $FF80 content $64)
 
  E119:  C9 FF
         AD E4 
         AD E4 
         AD E4 
         AD E4

  E42D:  20 1E AB
         20 1E AB
         20 1E AB
         20 1E AB
         4C 41 E4

  E477:  20 20 2A 2A 2A 2A 20 43 4F 4D 4D 4F 44 4F 52 45 20 36 34 20 42 41
         20 20 2A 2A 2A 2A 20 43 4F 4D 4D 4F 44 4F 52 45 20 36 34 20 42 41
         20 20 2A 2A 2A 2A 20 43 4F 4D 4D 4F 44 4F 52 45 20 36 34 20 42 41
         20 20 20 2A 2A 2A 2A 2A 20 20 53 58 2D 36 34 20 42 41 53 49 43 20
         2A 2A 2A 2A 20 43 4F 4D 4D 4F 44 4F 52 45 20 34 30 36 34 20 20 42

  -:     53 49 43 20 56 32 20 2A 2A 2A 2A 0D 0D 20 36 34 4B 20 52 41 4D 20
         53 49 43 20 56 32 20 2A 2A 2A 2A 0D 0D 20 36 34 4B 20 52 41 4D 20
         53 49 43 20 56 32 20 2A 2A 2A 2A 0D 0D 20 36 34 4B 20 52 41 4D 20
         56 32 2E 30 20 20 2A 2A 2A 2A 2A 0D 0D 20 36 34 4B 20 52 41 4D 20
         41 53 49 43 20 56 32 2E 30 20 2A 2A 2A 2A 0D 0D 00 20 20 20 20 20

  -:     53 59 53 54 45 4D 20 20 00 2B
         53 59 53 54 45 4D 20 20 00 5C
         53 59 53 54 45 4D 20 20 00 81
         53 59 53 54 45 4D 20 20 00 B3
         20 20 20 20 20 20 20 20 20 63

  E4AD:  AA AA AA AA AA AA AA AA AA AA
         48 20 C9 FF AA 68 90 01 8A 60
         48 20 C9 FF AA 68 90 01 8A 60
         48 20 C9 FF AA 68 90 01 8A 60
         48 20 C9 FF AA 68 90 01 8A 60

  E4C8:  AA AA AA AA AA AA AA AA AA AA AA AA AA AA AA AA AA AA AA AA AA AA
         AA AA AA AA AA AA AA AA AA AA AA AA AA AA AA AA AA AA AD 21 D0 91
         AA AA AA AA AA AA AA AA AA AA AA 85 A9 A9 01 85 AB 60 AD 86 02 91
         AA AA AA AA AA AA AA AA AA AA AA 85 A9 A9 01 85 AB 60 AD 86 02 91
         2C 86 02 30 0A A9 00 A2 0E 9D 20 D0 CA 10 FA 4C AA AA AD 21 D0 91

  -:     AA AA AA AA AA AA AA AA AA AA AA AA AA AA AA AA AA AA AA AA AA AA
         F3 60 69 02 A4 91 C8 D0 04 C5 A1 D0 F7 60 19 26 44 19 1A 11 E8 0D
         F3 60 69 02 A4 91 C8 D0 04 C5 A1 D0 F7 60 19 26 44 19 1A 11 E8 0D
         F3 60 69 02 A4 91 C8 D0 04 C5 A1 D0 F7 60 19 26 44 19 1A 11 E8 0D
         F3 60 69 02 A4 91 C8 D0 04 C5 A1 D0 F7 60 19 26 44 19 1A 11 E8 0D

  -:     AA AA AA AA AA AA AA AA AA AA AA AA
         70 0C 06 06 D1 02 37 01 AE 00 69 00
         70 0C 06 06 D1 02 37 01 AE 00 69 00
         70 0C 06 06 D1 02 37 01 AE 00 69 00
         70 0C 06 06 D1 02 37 01 AE 00 69 00

  E535:  0E
         0E
         0E
         06
         01

  E57C:  B5 D9 29 03 0D 88 02 85 D2 BD F0 EC 85 D1 A9 27 E8 B4 D9 30 06 18
         B5 D9 29 03 0D 88 02 85 D2 BD F0 EC 85 D1 A9 27 E8 B4 D9 30 06 18
         20 F0 E9 A9 27 E8 B4 D9 30 06 18 69 28 E8 10 F6 85 D5 4C 24 EA E4
         20 F0 E9 A9 27 E8 B4 D9 30 06 18 69 28 E8 10 F6 85 D5 4C 24 EA E4
         20 F0 E9 A9 27 E8 B4 D9 30 06 18 69 28 E8 10 F6 85 D5 4C 24 EA E4

  -:     69 28 E8 10 F6 85 D5 60
         69 28 E8 10 F6 85 D5 60
         C9 F0 03 4C ED E6 60 EA
         C9 F0 03 4C ED E6 60 EA
         C9 F0 03 4C ED E6 60 EA

  E5EF:  09
         09
         09
         0F
         09

  E5F4:  E6 EC
         E6 EC
         E6 EC
         D7 F0
         E6 EC

  E622:  ED E6
         ED E6
         91 E5
         91 E5
         91 E5

  EA07:  A9 20 91 D1 A9 01 91 F3 88 10 F5 60
         A9 20 91 D1 20 DA E4 EA 88 10 F5 60
         20 DA E4 A9 20 91 D1 88 10 F6 60 EA
         20 DA E4 A9 20 91 D1 88 10 F6 60 EA
         A9 20 91 D1 20 DA E4 EA 88 10 F5 60

  ECCA:  1B 00
         9B 37
         9B 37
         9B 37
         9B 37

  ECD2:  00
         0F
         0F
         0F
         0F

  ECD9:  0E 06 01 02 03 04 00 01 02 03 04 05 06 07
         0E 06 01 02 03 04 00 01 02 03 04 05 06 07
         0E 06 01 02 03 04 00 01 02 03 04 05 06 07
         03 01 01 02 03 04 00 01 02 03 04 05 06 07
         00 00 00 00 00 00 00 00 00 00 00 00 00 00

  EF94:  85 A9 60
         85 A9 60
         4C D3 E4
         4C D3 E4
         85 A9 60

  F0D8:  0D 50 52 45 53 53 20 50 4C 41 59 20 4F 4E 20
         0D 50 52 45 53 53 20 50 4C 41 59 20 4F 4E 20
         0D 50 52 45 53 53 20 50 4C 41 59 20 4F 4E 20
         4C 4F 41 44 22 3A 2A 22 2C 38 0D 52 55 4E 0D
         0D 50 52 45 53 53 20 50 4C 41 59 20 4F 4E 20

  F387:  03
         03
         03
         08
         03

  F428:  D0 0B AD 95 02 0A A8 AD 96 02 4C 3F F4 0A AA BD C0 FE 0A A8 BD C1
         F0 1C 0A AA AD A6 02 D0 09 BC C1 FE BD C0 FE 4C 40 F4 BC EB E4 BD
         F0 1C 0A AA AD A6 02 D0 09 BC C1 FE BD C0 FE 4C 40 F4 BC EB E4 BD
         F0 1C 0A AA AD A6 02 D0 09 BC C1 FE BD C0 FE 4C 40 F4 BC EB E4 BD
         F0 1C 0A AA AD A6 02 D0 09 BC C1 FE BD C0 FE 4C 40 F4 BC EB E4 BD

  -:     FE 2A 48 98 69 C8 8D 99 02 68 69 00 8D 9A 02
         EA E4 8C 96 02 8D 95 02 AD 95 02 0A 20 2E FF
         EA E4 8C 96 02 8D 95 02 AD 95 02 0A 20 2E FF
         EA E4 8C 96 02 8D 95 02 AD 95 02 0A 20 2E FF
         EA E4 8C 96 02 8D 95 02 AD 95 02 0A 20 2E FF

  F459:  4C
         20
         20
         20
         20

  F4B7:  7B
         7B
         7B
         F7
         7B

  F5F9:  5F
         5F
         5F
         F7
         5F

  F762:  91 C9 FF F0 FA
         A1 20 E0 E4 EA
         A1 20 E0 E4 EA
         A1 20 E0 E4 EA
         A1 20 E0 E4 EA

  F81F:  2F
         2F
         2F
         2F
         2B

  F82C:  2F
         2F
         2F
         2F
         2B

  FCFC:  18 E5
         5B FF
         5B FF
         5B FF
         5B FF

  FDDD:  A9 1B 8D 04 DC A9 41 8D 05 DC A9 81 8D 0D DC AD 0E DC 29 80 09 11
         AD A6 02 F0 0A A9 25 8D 04 DC A9 40 4C F3 FD A9 95 8D 04 DC A9 42
         AD A6 02 F0 0A A9 25 8D 04 DC A9 40 4C F3 FD A9 95 8D 04 DC A9 42
         AD A6 02 F0 0A A9 25 8D 04 DC A9 40 4C F3 FD A9 95 8D 04 DC A9 42
         AD A6 02 F0 0A A9 25 8D 04 DC A9 40 4C F3 FD A9 95 8D 04 DC A9 42

  -:     8D 0E DC 4C 8E EE
         8D 05 DC 4C 6E FF
         8D 05 DC 4C 6E FF
         8D 05 DC 4C 6E FF
         8D 05 DC 4C 6E FF

  FEC2:  AC 26 A7 19 5D 11 1F 0E A1 0C 1F 06 DD 02 3D 01 B2 00 6C
         C1 27 3E 1A C5 11 74 0E ED 0C 45 06 F0 02 46 01 B8 00 71
         C1 27 3E 1A C5 11 74 0E ED 0C 45 06 F0 02 46 01 B8 00 71
         C1 27 3E 1A C5 11 74 0E ED 0C 45 06 F0 02 46 01 B8 00 71
         C1 27 3E 1A C5 11 74 0E ED 0C 45 06 F0 02 46 01 B8 00 71

  FF08:  93 02 29 0F D0 0C AD 95 02 8D 06 DD AD 96 02 4C 25 FF 0A AA BD C0
         95 02 8D 06 DD AD 96 02 8D 07 DD A9 11 8D 0F DD A9 12 4D A1 02 8D
         95 02 8D 06 DD AD 96 02 8D 07 DD A9 11 8D 0F DD A9 12 4D A1 02 8D
         95 02 8D 06 DD AD 96 02 8D 07 DD A9 11 8D 0F DD A9 12 4D A1 02 8D
         95 02 8D 06 DD AD 96 02 8D 07 DD A9 11 8D 0F DD A9 12 4D A1 02 8D

  -:     FE 8D 06 DD BD C1 FE 8D 07 DD A9 11 8D 0F DD A9 12 4D A1 02 8D A1
         A1 02 A9 FF 8D 06 DD 8D 07 DD AE 98 02 86 A8 60 AA AD 96 02 2A A8
         A1 02 A9 FF 8D 06 DD 8D 07 DD AE 98 02 86 A8 60 AA AD 96 02 2A A8
         A1 02 A9 FF 8D 06 DD 8D 07 DD AE 98 02 86 A8 60 AA AD 96 02 2A A8
         A1 02 A9 FF 8D 06 DD 8D 07 DD AE 98 02 86 A8 60 AA AD 96 02 2A A8

  -:     02 A9 FF 8D 06 DD 8D 07 DD AE 98 02 86 A8 60
         8A 69 C8 8D 99 02 98 69 00 8D 9A 02 60 EA EA
         8A 69 C8 8D 99 02 98 69 00 8D 9A 02 60 EA EA
         8A 69 C8 8D 99 02 98 69 00 8D 9A 02 60 EA EA
         8A 69 C8 8D 99 02 98 69 00 8D 9A 02 60 EA EA

  FF5B:  AA AA AA AA AA AA AA AA AA AA AA AA AA AA AA AA AA AA AA AA AA AA
         20 18 E5 AD 12 D0 D0 FB AD 19 D0 29 01 8D A6 02 4C DD FD A9 81 8D
         20 18 E5 AD 12 D0 D0 FB AD 19 D0 29 01 8D A6 02 4C DD FD A9 81 8D
         20 18 E5 AD 12 D0 D0 FB AD 19 D0 29 01 8D A6 02 4C DD FD A9 81 8D
         20 18 E5 AD 12 D0 D0 FB AD 19 D0 29 01 8D A6 02 4C DD FD A9 81 8D

  -:     AA AA AA AA AA AA AA AA AA AA AA AA AA AA AA
         0D DC AD 0E DC 29 80 09 11 8D 0E DC 4C 8E EE
         0D DC AD 0E DC 29 80 09 11 8D 0E DC 4C 8E EE
         0D DC AD 0E DC 29 80 09 11 8D 0E DC 4C 8E EE
         0D DC AD 0E DC 29 80 09 11 8D 0E DC 4C 8E EE

  FF80:  AA
         00
         03
         43
         64

  FF82:  18 E5
         53 FF
         53 FF
         53 FF
         53 FF

  FFF8:  42 59
         42 59
         42 59
         42 59
         00 00


   9.2 Commodore 128 BASIC ROM versions.

  Below is information on differences between the Commodore 128
  BASIC releases 1985 and 1986.

  Format for list:

  Address: 1985 release
           1986 release

  41F0:  35
         36

  4D70:  8E 0C 12
         20 D1 7E

  5C87:  8F 5C
         8E 7E

  5ED7:  C8 D0 F8 E6 62 E6 27 AD 11 12 C5 27 B0 ED
         E6 61 D0 02 E6 62 20 94 7E 90 F0 EA EA EA

  5EF8:  4C 37 4D
         60 00 00

  5F02:  0C
         2E

  66A5:  8D 57 11 08 A2 23 20 4A 9D 28 B0 11 AD 54 11 8D
         B0 11 AD 54 11 8d 56 11 AD 55 11 24 D8 10 04 0E

  66B7:  AD 55 11 24 D8 10 04 0E 56 11 2A 8D 57 11
         2A 8D 57 11 A2 23 20 4A 9D EA EA EA EA EA

  6839:  8D 92
         82 7E

  6845:  0C C0
         88 7E

  6860:  0C C0
         88 7E

  6F45:  BD 05 70
         20 A6 7E

  6FF9:  2F B6 83 99 FC D1 BD 25 EF 20 BE D1 4C 50 55 5A 5F 65 6B 72 78 80
         0F 0C 45 BF 7D 83 D6 79 73 C7 7C 97 43 47 4B 4F 54 59 5E 64 6A 70

  -:     87 8F
         77 7E

  7A31:  B7 FF
         51 92

  7E82:  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
         20 45 A8 4C F0 FF 20 45 A8 4C 0C C0 20 8F 5C 4C 86 03 E6 26 D0 02

  -:     FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
         E6 27 38 A5 26 ED 10 12 A5 27 ED 11 12 60 2C 03 0A 30 04 BD 05 70

  -:     FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
         60 BD B9 7E 8D 2D 12 BD C5 7E 60 9C BF 22 C8 B4 EB 71 4C 7F 12 08

  -:     FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
         68 45 49 4E 52 57 5C 62 68 6E 75 7C 83 8E 0C 12 A2 1B 86 18 60

  7FC0:  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
         28 43 29 31 39 38 36 20 43 4F 4D 4D 4F 44 4F 52 45 20 45 4C 45 43

  -:     FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
         54 52 4F 4E 49 43 53 2C 20 4C 54 44 2E 20 41 4C 4C 20 52 49 47 48

  -:     FF FF FF FF FF FF FF FF FF FF FF FF
         54 53 20 52 45 53 45 52 56 45 44 2E

  7FFC:  FF FF 00 4C
         EF 8D 01 61

  8323:  10
         08

  839C:  10
         08

  8A3C:  55
         5B

  8A4B:  55
         5B

  8A57:  38
         EA

  98BB:  38 6E 25 01
         20 6E AA EA

  9F18:  12 88
         C0 6D

  A153:  38 4C 75 92
         EA 4C B2 A3

  AA6E:  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
         20 D3 42 C9 2C D0 07 AD 33 01 20 EB 98 C8 38 6E 25 01 60

  BFC0:  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
         28 43 29 31 39 38 36 20 43 4F 4D 4D 4F 44 4F 52 45 20 45 4C 45 43

  -:     FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
         54 52 4F 4E 49 43 53 2C 20 4C 54 44 2E 20 41 4C 4C 20 52 49 47 48

  -:     FF FF FF FF FF FF FF FF FF FF FF FF
         54 53 20 52 45 53 45 52 56 45 44 2E

  BFFC:  FF FF 00 3A
         C8 CD 01 C5

  ===================================================================


  Appendices:

     The things that don't really belong in the body of the faq, such as:

  A. Reviews:

     Lengthier comments about particular emulators, as they come to hand.
     These may, or may not, be "biased"!  You are invited to add to or
     correct what is here.

     1. PC64
     2. A64 V3
     3. C64S (commercial)
     4. PlaySID V3.0
     5. PC64 vs C64S
     6. AXF-64.a16

  ---------------------------------------------------------------------
     1. PC64
 
      This review was deleted at the request of the emulator author, as it
      contained outdated information.  He has, however, provided some
      additional information for the Q&A section.  A "new" review would be most
      welcome!


  ---------------------------------------------------------------------------
      2. A64 V3.

      Review 1:

         Review by:
            James O. Shank Jr.     HEE!      v131p9t3@ubvms.cc.buffalo.edu
            AKA: Ninstar Cybermage  I  or    shank@acsu.buffalo.edu
            Black Phoenix Rising... A  or    aa247@freenet.acsu.buffalo.edu

            as posted in comp.sys.cbm, 16 Jun 1994.


  I've recently had the opportunity to play around with a copy of A64 V3.

  I've found that alot of programs run.  Not necessarily as well as on a c64,
  and slow, but alot more programs work than under version 2.  On the other
  hand, some programs which worked fine under version 2 (times of lore, for
  example) do not work under version 3 because the graphics emulation, though
  faster, does not handle multiple graphics banks very well.  Those of you who
  know alot about graphics are going "Uh-Oh" right now, but the problem doesn't
  seem to appear in all that many programs.  One thing I've noticed is that the
  graphics Emulation runs a bit slower than the rest of the emulator at times, 
  which means that if you play something very complicated, like a flight 
  simulator, the input will be processed faster than the graphics, meaning that 
  you can make a 90 degree angle turn between two frames.

  The convert software can solve alot of these problems by skipping the middle
  man where processing is concerned, and speeding up things by letting the
  Amiga do the work without the emulations help.  It basically looks for the
  densest blocks of code and converts them into Amiga assembly language.
  Whenever the program tries to emulate a block that was translated, it
  executes the Amiga block instead.  Under V2, this was a long and complicated
  process that most people lacked the expertise to perform, as you had to
  search through the assembly language yourself and tell the computer which
  blocks it had to convert.  Under version 3, the entire process is automated,
  allowing you to load a memory map, tell the computer to convert it, and
  watch it go.  I like the results I've had thus far, though I lack the
  memory(stock amiga 600) to do any large programs.  The code files tend to
  be large.  

  The sound emulation is much better.  Under version 2, you needed an
  accelerated machine to get decent sound and often the sound was horrible
  anyway.  Under V3, the sound is still distorted by speed at times, but the
  tones and sounds are mostly right on the money.  If the program doesn't do
  a great deal of other processing, the sound is nearly perfect.  Sidplayer,
  for example, was great, running almost up to speed with graphics and at
  speed without.  Sidplayer can run at speed with graphics on if you boost
  the CIA rate, but occasionally the graphics will cause timing problems
  which make a note last a little too long or too short, etc.

  Advice:  Run A64 on an accelerated machine if possible.  Though it is
  possible to get enjoyment from games on a slower machine if you fiddle with
  the settings long enough and use convert, having an accelerated machine will
  make your life easier.  If you're going to be using C64 roms and converting
  alot, then you may want to pick up an extra Meg of Memory.  2 Meg should be
  enough, though you can emulate the ram expanders if you have 3 or four 8-).
  (one Meg ram disk on a C64, who would have thought 8-) ).


      Review 2:

  From: korczyns@oasys.dt.navy.mil (Joseph Korczynski)
  Newsgroups: comp.sys.amiga.reviews
  Subject: REVIEW: The A64 Package, version 3.0
  Date: 11 May 1994 19:29:31 GMT

  REVIEW

   The A64 Package is a hardware and software product.  The hardware
  consists of a small box which has a male DB25 and 8 pin DIN connectors along
  with some special circuitry.  This box connects to your parallel port and
  allows you to connect Commodore 8-bit serial peripherals such as the 15XX
  series disk drives and printers.  NEVER PLUG THE INTERFACE INTO YOUR AMIGA
  WHILE THE AMIGA IS TURNED ON.  You could damage your Amiga and peripherals
  by doing so.  If you have an Amiga 1000 you will require an additional cable
  specifically made to connect A500/2000 devices to an A1000 parallel port.
  The hardware interface can stay plugged in at all times without interfering
  with any programs on your Amiga as long as they do not use the parallel
  port.  If you want to use your parallel port with some other pieces of
  hardware like a printer or digitizer, you must either remove the hardware
  interface and install the other device or use an A-B switch box (Centronics
  parallel with female connectors).

   The software is a collection of Amiga programs which lets you access
  and run C64 software. The main program, A64, is the Commodore 64 emulator.
  The other programs allow you to transfer files between the C64 and Amiga
  disks (with 15XX disk drives).

   After you install The A64 Package and run the A64 program, you will
  notice that the BASIC startup screen is different from that of a real C64.
  This is because the Commodore 64 ROMs (two computer chips located inside a
  real C64 which contain the operating system) are not present in A64.  The C64
  ROMs are not included because they are copyrighted by Commodore. The A64
  contains a complete C64 ROM emulation which allows A64 to run most C64
  programs. A64 ROM emulation is very compatible with the C64 ROMs, but there
  may be some C64 programs that will not run because of the lack of real C64
  ROMs. The A64 Package utilities includes a C64 BASIC program which can be
  transferred to a real C64 via a 15XX disk drive connected to the A64
  hardware interface. This program when run on the C64 will dump the C64 ROMs
  to a file which can then be transferred back to the Amiga and used in the
  A64 emulation.

   A64 is a complete Commodore 64 emulator. Sound, graphics, BASIC and
  machine language are all emulated. A64 fully integrates with the Amiga by
  allowing you to use Amiga disk drives, hard drives, ram drives, printers and
  modems.

   A64 operates in two modes:  Pause Mode and C64 Mode.  When in Pause
  Mode, you have access to the A64 Prefs (preferences) and A64Mon (machine
  language monitor). The current C64 program that A64 is running will be
  paused. Pause Mode gives you complete access to the Amiga system, and
  multitasking is completely functional. The C64 Mode runs the C64 program. In
  C64 mode you do not have access to the Amiga system.  Multitasking is not
  disabled, but A64 controls a majority of the Amiga system.  To enter Pause
  mode from C64 Mode, press the two ALT keys simultaneously.

   A64 emulation speed will depend on the program you are running and
  the type of microprocessor that your Amiga uses. On 68000 based Amigas, A64
  is not capable of running all programs at usable speed. Accelerated Amigas
  can see emulation speeds over 300%.  Most games will not run over 100% no
  matter how fast your Amiga is.

   I've done most of my evaluation of A64 with public domain software.
  I have been able to run everything I can throw at it. I do enjoy browsing
  the ABCUG user group monthly C64 public domain program disk.

   A great deal of effort was spent trying to make the A64 as
  compatible as possible. The biggest problem with compatibility is related to
  disk I/O and custom disk drive routines. Custom disk drive routines "Fast
  Loaders" are extremely time critical and must run at exactly 100% speed in
  order to function properly. "Fast Loaders" vary from program to program. The
  only way to emulate "Fast Loaders" is to write a custom loader for each
  program which is impossible since there are hundreds of variations. A64 V3.0
  supports some "Fast Loaders" using Patch Files. There are Patch Files for
  ISEPICed archived programs, SID/PIC V3.4, SIDPlayer, and GEOS.  (GEOS is
  supported only on 68000 Amigas and 1541/1571 disk drives because of the
  time-critical nature of the GEOS operating system.)

   One method of speeding up A64 emulation is to convert the C64
  program from 6510 opcodes to 68000 opcodes. This has the potential to double
  your emulation speed. This is accomplished with a utility called "CONVERT".
  The CONVERT utility converts C64 machine language into Amiga machine
  language. This conversion process eliminates a lot of work the A64 has do
  while running the emulation.

   A64Tools is the file transfer and file conversion utility. It allows
  you to copy, convert and print files using any combination of Amiga and C64
  disk drives and printers. Text files can easily be converted between
  PetASCII and ASCII. Amiga drives only support PRG and SEQ files under A64
  emulation. ":" and "/" are illegal characters for Amiga filenames. When
  A64Tools encounters on of these characters in a filename, the character will
  automatically be changed to a "-".

   As an original A64 V2.0 registered user, I am impressed with the
  enhanced SID chip support, increased speed and compatibility. I also welcome
  the addition of Patch Files for "Fast Loader" support along with support for
  GEOS. It was worth the $25 upgrade fee.

  DOCUMENTATION

   Documentations consists of a professionally printed softbound
  manual. It has an extensive index and table of contents.  The manual assumes
  that you are familiar with the basic operation of the Amiga and the terms
  used to describe it. The manual also assumes you are familiar with the basic
  use of the Commodore 64.

  LIKES AND DISLIKES

   I like the professionally bound manual. 
   I like the patch file support.
   I like the improved SID support.

   I dislike the software not working in native AGA graphic mode.

   I would like to see 1581 emulation using native Amiga disk drives.

  CONCLUSIONS

   I enjoy the ability to emulate other computers. As Newsletter Editor
  the ABCUG user group which supports the Amiga and Commodore 64/128 computer
  users, I find A64 a valuable tool for reviewing C64 public domain software
  and writing tutorials for the monthly newsletter. Understanding the
  limitations of software emulation, I give this product **** (4 out of 5
  stars).

  COPYRIGHT NOTICE

   Copyright 1994 Joseph F. Korczynski.  All rights reserved.



  ---------------------------------------------------------------------------
      3. C64S commercial.

         Reviews by:
         1. Paul David Doherty (h0142kdd@fx2800.rz.hu-berlin.de)
               As posted in comp.emulators.cbm,4 Jul 1994.
         2. Robert Rusbasan (rrusbasa@nyx10.cs.du.edu)
               As posted in comp.emulators.cbm, 20 Jun 1994.

  Review 1. by Paul David Doherty.

   I have spent an hour testing software which didn't work with the
   0.9x versions of C64S, and none of them works with the 1.0c
   demo version, so I'd say that compatibility has not improved much.
   There are lots of cosmetic changes, but the emulator core seems
   to be the same as in the 0.9 versions.
   
   Some games I have tested:
   - Fahrenheit 451 (with copy protection AND fastloader removed)
       = doesn't work
   - Critical Mass (adventure) = the graphics are still messed up, no
       matter whether I chose NTSC or PAL mode
   - Masquerade = still doesn't show the pictures
   
   A new feature (?) seems to be a requester "CPU JAM AT ... : PRESS ANY KEY"
   which pops up with some games (Mask of the Sun, Amnesia) instead of
   crashing the emulator.  However, C64S still crashes pretty often (and
   this means that neither will CTRL-ALT-INS reset the emulator, nor will
   you be able to leave it with CTRL-PAUSE, nor will you be able to reset
   your PC with CTRL-ALT-DEL!  The only way out is the reset button.) 
   This never happens with MC64/C64NEU, and it's a shame that Miha wasn't
   able to fix it.  (As a rule of thumb, whenever "DISK IO" appears in
   the lower right corner of the screen you can press the reset button :-)
   
   Games which crashed totally in the above described way:
   - Infocom games (only if you use the fastloader)
   - Buckaroo Banzai
   - Fantastic Four (if you use the fastloader)
   - Lane Mastodon (and the other InfoComics)
   
   To put it straight, I don't expect C64S to support fastloaders (yet), but 
   it shouldn't crash and lock up the PC.  Besides, some of the games that
   don't work run flawlessly on MC64 (Lane Mastodon, Fahrenheit 451), so
   it's not just a fast loader issue.
   
   All in all, I'm not terribly impressed.  If others found significant
   compatibility improvements, maybe they could post their experiences.


  Review 2. by Robert Rusbasan.

  Although I have generally preferred the C64NEU emulator, I got my tax
  return today and thought I'd call Seattle Lab and give them a chance
  to talk me into getting their commercial version of C64S.

  I was generally pleased with what I heard.

  The person I talked with seemed competent enough.  When I told him that
  I had been impressed but also frustrated by the public version of C64S
  that Miha had released, he assured me that they have made a *lot* of
  changes.  He said the pre-beta releases and the commercial release
  were "like night and day".

  I told him that I couldn't get my analog joystick to work, and the keyboard
  joystick emulation only seems to make sense to the author since I have yet
  to run across anyone that likes it.  He replied that the analog joystick
  support has been radically improved, and that you can map the joystick to
  any keys you want in the commercial release.

  He said that it supports limited disk protection schemes, and they are going
  to continue to work on this.

  I whined that I and others have been unable to get any kind of response
  from Miha and asked if they planned to support the product.  He told
  me they are going to have *strong* support for it, including phone, fax,
  email, and an ftp site!  I asked if the ftp site was up now, and he said
  it sure was.  You can access it at as.seattlelab.wa.com (204.29.31.1).
  Since it is very new, you might have to use the IP address.

  So far they only have the docs at the ftp site, but the list of enhancements
  indicates that there may indeed be some merit to the "night and day" claim.
  In particular, the sound and timing seems to have been improved.  It
  seems you don't have to guess at the speed anymore, since you can set it to
  run at the original Commodore 64 speed, as fast as possible, or at a custom
  speed.  Version 0.9 basically just gave you the custom speed and let you try
  to match the C64's original speed.  Unfortunately, the docs still list
  Miha's email addresses as the source of email support.  I assume that is
  out of date and they will have a Seattle Lab address soon.

  He also told me that there *will* be a new shareware version of the product
  out soon, and it will be put on the ftp site.  That is a very smart move,
  in my opinion, because currently the people who found the program floating
  around have no way of knowing about the commercial version at all.

  I decided to go for it, which got me a bit of negative news.  Right now
  they only ship COD, which adds $5 and brings the price to $60.  He told
  me that they'll be able to take credit card payment shortly and offered
  to put my name on a list and call me when they could process my order
  that way, but I told him to go ahead and ship it COD.

  If anyone wants to take the plunge now, here is the order info:

  Seattle Lab
  214 1st St.
  Kirkland, WA 98033
  (206) 828-9001 (Voice)
  (206) 828-9011 (Fax)
  $55.00

  ---------------------------------------------------------------------------
      4. PlaySID.

  Short:    Version 3.0 of the famous SID emulator
  Author:   rbk@ios.se (Ron Birk)
  Uploader: kunath@informatik.uni-muenchen.de (Peter Kunath)
  Type:     mus/play


  NEW FEATURES:

     V3.0 (1994)

     * Uses PLAYSID.LIBRARY (please read separate docs)
     * Support of XPK Data Compression
     * Realtime waveform and envelope display (uses low priority task)
     * Shows C64 pictures (Koala, Blazing Paddles, Doodle, Adv Art Studio etc.)
     * TV System detection and selection
     * Channel on/off selection
     * PlaySID is now a commodity
     * Uses a config file for settings
     * Multifile selection (music and pictures)
     * Ability to show and hide PlaySID windows
     * Second PlaySID instance redirect modules to the running one
     * PlaySID font removed
     * More arexx commands
     * Many major bugs corrected


  PRODUCT INFO:

     This is a utility which uses the playsid.library to emulate the SID
     and 6510 chip. The SID chip is the component in the C64 computer that
     handles sound. The 6510 chip is the CPU of the C64, that means the
     component that actually executes all programs. Because the Amiga
     does not have these chips and others, you can't run C64 programs
     directly on Amiga.

     Now this utility lets you play all those C64 programs that produce
     sound. As you probably know, the C64 has three sound channels (the
     amiga has four). But this utility also allows use of the fourth
     channel. This channel is the product of some special programming on
     the C64, it isn't really a channel.

     The purpose of this product is to make the best conversion of C64
     sound on Amiga ever possible. If you think some sound isn't correctly
     converted please let us know.

     This utility is designed to work with true multitasking, under any
     system version and any amiga model. It can be run from both Workbench
     and CLI/Shell. It should work with any other program that don't use
     sound or timing. If this isn't the fact please let us know.

     Some time ago we released a similar product called "The 100 most
     remembered C64 game-tunes". This product is the version 3.0 of that
     program. The tunes on that demonstration disk are now also available
     to this version. And up to date there are more than 400 tunes
     available. We and others are also working with more.

  ---------------------------------------------------------------------------

   6. PC64 vs C64S.

      Article by Jeremy Blackman, AKA Ranma Saotome <ranma@eskimo.com>
      in comp.emulators.cbm, 18 Feb '95.

  Q:I am thinking about buying a C64 emulator, but I need some advice which
    C64 emulator to buy, the PC64 or the C64s? All the emulators on net are
    demos, and do not work completely, isn't that so? Or do they work just
    fine? I would appreciate any help. 

  A:* Both C64S (my personal choice, cause PC64 don't support GUS for sound)
      and PC64 have ALMOST fully working demo versions.  The limitations are
      that on C64S you cannot use an analog joystick until you register, you
      must use keyboard controls to simulate a joystick, and on PC64 you 
      cannot use a joystick, nor can you access directly off a Commodore drive,
      which you can in the registered version.

    TO compare the two:

    * C64S is nice in that it supports GUS, which none of the others do 
      (hey, PC64 person...hint hint hint <grin>).  It has a fairly easy-to-
      understand setup and interface, and overall works fairly well.
      I have run across a few games that don't work on it, for example,
      I cannot get the T64 of "Pharoah's Curse" to run on C64S, any version,
      though it runs on PC64.  C64S also supports .D64 disk images, which is
      very nice.  This allows you to use games which require swapping disks,
      like Adventure Construction Set, the Last Ninja (hey, why does this game
      die after the first level?), Racing Destruction Set, etc.

    * PC64 has a much less intuitive interface, but many more options.  I 
      particular like the option of using some of the alternative ROM set
      images, such as the 64SX image and the EXOSV3 images.  (I've almost got
      a copy of EXOSV3 hacked into C64S...<grin>...little side project.  It
      sometimes crashes however, so I'm working on it).  It however only
      supports Soundblaster, where C64S also supports GUS.  It also refuses
      to acknowledge a GUS in SB mode, and also refuses to work off the SB
      clones (sound16a) in the other machine here.  So for sound, C64S wins
      hands down.  This emulator has shown more success in loading certain 
      games, but due to the lack of support for .D64 type disk images, it can
      be a _REAL_ pain to run multidisk games, or games that require saved
      data disks.  I current have written a program to take a .D64 and extract
      it into a directory so you can use the Manager for PC64 to set up 
      subdirectories to fake the disk sides.  Unfortunately, some games check
      the disk volume label, and PC64 automatically has the volume label be
      the DOS drive and path.  So it cannot run some of these games.

    * Neither C64S nor PC64 can load Fastloader games at the present time, 
      though there ARE programs out there to shut off Fastloader support.
      (I had one for use on my C64 since I had a Super Snapshot cartridge
       which was very much faster than any of those fastloaders, and it 
       could conflict).  Unfortunately, I have not seen any of these
      programs put out as D64 or T64 or P00 files.

    * PC64 appears to have support for cartridge images, but I'm not sure.
      (Could someone confirm or deny this?)  If it does, it'd be nice if
       someone could take an image of the Super Snapshot cartridge...

    * It is possible to get VIC chip problems, such as flickering (try MULE,
      leave it on the title screen long enough and the credits begin to flicker,
      and Realm of Impossiblity loses the stat bar to static on rare occasions)
      on C64S.  I have not managed to get these errors on PC64, and the video
      refresh is sometimes smoother.  I have a 486DX2/66 before you ask, and 
      local bus video.  I am running under MSDOS, not Linux.  I didn't feel like
      playing with Dosemu. <grin>  

    In summary - I like C64S's simplicity of interface, and it wins by far on 
    disk system since it supports those D64 images (though it'd be nice to 
    have support for multiple disk drives, so you could select a disk image 
    for drive 8, one for 9, etc...) and it wins by far on sound since it 
    supports GUS.  PC64 has more power, with the ROM set options, the Charset 
    and Basic options (hey, I want some of those enhanced basic sets, anyone 
    got an image?), but I have not gotten sound to work and I don't like the 
    disk system as much, though the ability to set up multiple drives is very 
    nice.

    PC64 has much more expandability, since it can use those ROM images (hey, 
    anyone got a ROM image of the Commodore 65DX?  I have the support and 
    demo disks for it, and I'd love to play with the thing...I somehow doubt 
    the hardware was 100% compatible, though.).  C64S is the easier one to 
    get up, running, and playing games with.

    So, for the moment, I leave both on.  PC64 is for playing with hacking 
    around on, and C64S is for the games.

  ---------------------------------------------------------------------------

   7. AXF-64.a16

   Here's some details on AXF-64.a16 which is a c64 emulator for the Amiga.
   It is from an aminet ftp site.


   Short:    C= 64 emulator, alpha 16
   Author:   borgen@hstud2.cs.uit.no (Bxrge Nxst)
   Uploader: kjelli@stud.cs.uit.no (Kjell Irgens)
   Type:     misc/emu


   WHAT:
   Emulator of C= 64 for Amiga computers with 68020 or higher.

   WHY:
   Because A64 (both 2.0 and 3.0) sucks IMO. And I think the Amiga deserves
   good emulators like the PC has. (Update: I've seen Frodo now - good try,
   but way slower than mine... I think I can beat it.)

   HOW:
   First you need 3 files: C64.BASIC, C64.KERNAL, C64.CHARSET.
   These must be exactly 8192, 8192, and 4096 bytes big.
   These are just dumps of real C= 64 roms. They are not included for legal
   reasons, but I think several other emulators actually include them.
   Put these files in the current directory or in the same directory you store
   the executable.
   You can now start the emulator. You can LOAD files that are in RAM: or C64:
   (assign it where you have you your files). The fileformat is the same as
   A64 uses. Disk images are not supported.
   The keyboard is mapped nearly 100% like a real C= 64 so the keys wont
   always match the Amiga keyboard. The RESTORE key is not mapped at all.
   The joystick port of your Amiga maps to both C= 64 joystick ports.
   Bank switching is supported.
   Hires character mode is the only mode supported.
   Sound isn't supported.
   There is no restart option, you have to quit the emulator with the ESCAPE
   key or left mouse button.

   SPEED:
   No. Unless you have an 040/060 that can write 7M/s to chipram. Then perhaps.
   Unlike many other emulators (but like Frodo!) the relative speed of the
   screen update and the cpu speed does not change, it will always run
   internally like a 1MHz PAL C= 64, and never faster than a real C= 64.
   (Later versions might have adjustable speeds here.)

   WHY SELECT AXF-64:
   It does a few things that A64 doesn't. It can do raster bars. It can do
   raster interrupts and screen changes on a per line basis. It was made with
   big cpus in mind.

   TODO:
   First to come is multicolour character mode. I have ideas and all, but I
   need to test a little to see if I can make it fast enough.
   AGA support. Not only align bitplanes for more DMA time under AGA, but also
   use other algorithms to reduce chip bus activity.
   Sprites. I have code and ideas for that too.
   Bitmap modes.
   All timers. I have ready code for that too.
   Sound. Not sure what to do with this. Perhaps kludge in something with
   PlaySID?
   Support disk images.
   Make different screen update modes for different configurations.

   New in Alpha 15:
   Oooops! Sorry to all who downloaded Alpha 13. It relied on my patched Kernal
   to sniff LOADing :(((. Fixed now, and tested with the ROM that comes with
   Frodo.
   Copperlist building logic improved.
   Code simplified giving smaller size and more speed (a case of blowing the
   040 caches methinks).

   New in Alpha 16:
   Redid the bankswitch logic for the VIC II chip. Seems to work better now,
   but I still have some unresolved cases for what to do when $D000 ram is
   banked in.
   Looked at raster interrupts, and they don't look good :-(.
   I got it a little better, but it still needs work...

   Since I'm doing my military service at the moment updates may be far and
   few between, and I wont have any email until summer 1995.
   I'll snailmail new updates to a friend of mine who will upload them.

   -Berge Nast

   ========================================================================

  B. Advertisements.

   This is a catchall place for any product out on the market which isn't an
   emulator or such but still has something to do with C64-emulation.  The
   views expressed here are not necessarily the views of the FAQ author!

   If you have something you think could fit in here please feel free to 
   email the FAQ maintainer.  You don't have to pay anything :)

  --------------------------------------------

  1. The High Voltage C64 CD.

   Have you ever stared at all those stacks of disks you have in the
   corner of your bedroom, trying to figure out where that one game or
   demo is?  Have you ever had a disk go bad on you, without any backup
   available?  Have you ever wished you could have your whole collection
   in one place for a change?

   Well, two members of the c64 'scene' have put together a CDROM for PCs
   and Amigas that try to solve these problems.  

   This disk contains a huge amount of files dating across the C64's 
   timeline.  It contains over 600mb of software stored in about 3200 .d64
   files.  There's a grand total of about 4400 games from 1982-1995, 
   7700 demos from 1985-1995, and about 700 utilities.  The most recent
   files are dated 4/14/1995, the day the CD was mastered.

   There are also many tools for the Amiga and PC to manipulate the files.

   The CD sells for 35 British pounds (that's about $55), and is available
   through September 15, 1995, so hurry up and order..

   For ordering information email darren@talent.demon.co.uk .
   For a list of the files on the CD as well as a C64-executable file with
   more information go to the ftp-site pitel_lnx.ibk.hvu.nl and go to the
   directory /pub/C64_CD.


  2. Patch for GEOS to work with emulators

   Note that this patch is for the German version of GEOS v2 only.

   You can get this patch program by sending 5DM, a self-addressed stamped
   envelope, and a blank disk to:

   Falk Rehwagen
   Wintergartenstr. 2/107
   04103 Leipzig
   Germany

==========================================================================



