home *** CD-ROM | disk | FTP | other *** search
- Archive-name: commodore/8bit-emulation-faq
- Author: Peter Weighill (stuce@csv.warwick.ac.uk)
-
-
- + CBM EMULATION FAQ - (Version 1.8b 23/04/94)
- =================
-
- This faq is posted once a month on the 4th day of the month to comp.sys.cbm.
-
- Lines preceeded by a '+' have been added or modified since the last version
- was posted.
-
- ---------------------------------------------------------------------------
-
- Table of Contents
- -----------------
-
- 1. Introduction.
-
- 2. What is available?
- 2.1 C64 Emulators.
- 2.2 VIC20 Emulators.
- 2.3 C128 Emulators.
- 2.4 PET Emulators.
- 2.5 Non-Emulators.
- 2.6 Other utilities & files.
- 2.6.1 Utilities
- 2.6.2 Data files.
-
- 3. A list of ftp sites where emulation programs can be obtained.
- 3.1 C64 Emulators.
- 3.2 VIC20 Emulators.
- 3.3 C128 Emulators.
- 3.4 PET Emulators.
- 3.5 Non-Emulators.
- 3.6 Other utilities & files.
- 3.6.1 Utilities
- 3.6.2 Data files.
-
- 4. Emulator File Formats.
- 4.1 C64 Emulators.
-
- 5. How to extract the Rom images required by the emulators.
- 5.1 C64 roms - Basic, Kernal & Charset.
- 5.2 1541 rom.
-
- 6. Other information.
- 6.1 Newsgroups worth reading.
- 6.2 C64 Kernal rom versions.
-
- 7. Credits.
-
- ---------------------------------------------------------------------------
-
- 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.
- The faq is maintained by Peter Weighill (stuce@csv.warwick.ac.uk) and may
- be obtained from the following ftp sites:
-
- ftp.csv.warwick.ac.uk : /tmp/c64 (try here first for newest version)
- ftp.funet.fi : /pub/cbm/faq
- watson.mbb.sfu.ca : /c64/faq
- ccnga.uwaterloo.ca : /pub/cbm/comp.sys.cbm
-
-
- 2. What is 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.
-
-
- 2.1 C64 Emulators.
-
- PROGRAM: TheA64Package.lha
- + VERSION: 2.0 shareware, 3.0 not.
- MACHINE: Commodore Amiga
- AUTHOR: Cliff Dugan, Christopher P. Zura & Douglas Decicco
- DETAILS: Sid: ?
- Vic: ?
- 6510: ?
- Peripherals: 1541 & printer via hardware interface with
- registered version.
- Other: Different character sets available instead of default.
- COMMENTS: C64 emulator.
-
- PROGRAM: PlaySID2.2.lha
- + VERSION: 2.2
- + OLD FILES: PlaySID-2.0.lha, PlaySID2.1.dms
- MACHINE: Commodore Amiga
- AUTHORS: Hakan Sundell & Ron Birk (d89-rbi@nada.kth.se)
- DETAILS: Sid: Yes, all except filter, also works with multi-tasking.
- Vic: No.
- 6510: Yes with Undocumented opcodes.
- Peripherals: No.
- COMMENTS: C64 Sid chip emulator.
-
- PROGRAM: 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. Documetation in German.
-
- PROGRAM: c64s09c.exe
- + VERSION: 09c
- + OLD FILES: c64s09a.lzh / c64emu.zip, c64s09b.arj
- MACHINE: IBM PC running DOS
- AUTHOR: Miha Peternel
- REQUIRES: 386 and VGA.
- DETAILS: Sid: Yes - To pc speaker or soundcard, but no filters
- Vic: Sprites, All screen modes, raster effects.
- 6510: Yes with Undocumented opcodes.
- Peripherals: Tape, 1541 & joystick emulation.
- via interface with registered version.
- COMMENTS: 100% machine language. New version in March/April 94.
-
- PROGRAM: ???? (Still in development)
- 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.
-
- PROGRAM: c64alive.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% machine language.
-
- + PROGRAM: c64neu.zip
- + VERSION:
- + MACHINE: IBM PC running DOS
- + AUTHOR: Wolfgang Lorenz (CIS 100112,220)
- + REQUIRES:
- + Details: Sid Yes to Adlib.
- + Vic: Sprites, screen modes & basic rasters.
- + 6510: Yes.
- + Peripherals: 1541 via PC filesystem.
- + COMMENTS: Documentation in german, but large help file.
-
- + PROGRAM: sallyC64.zip (Sally Emulator)
- + MACHINE: IBM PC running DOS
- + AUTHOR: Morten Welinder (terra@didu.uk)
- + 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.
-
- PROGRAM: 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.
-
- + PROGRAM: MAC64-03.HQX
- + VERSION: 3
- + OLD FILES: mac64sea.hqx, mac64col.hqx, mac-02.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.
-
- PROGRAM: x64-0.2.1.tar.gz
- + VERSION: 0.2.1
- + OLD FILES: x64-0.1.tar.gz, x64-0.2.0.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 (undocumented).
- Joystick #1 to cursor keys.
- Reu ram expansion supported.
- Other: Basic lister/cruncher program.
- Machine code monitor & runtime trace.
- Kernal rom patcher vers 0 & 3.
- COMMENTS: C source code included. 65xx/8502 CPU documentation included.
-
-
- 2.2 VIC20 Emulators.
-
- PROGRAM: vic-emu.lha
- MACHINE: Commodore Amiga
- AUTHOR: Pieter van Leuven (etmpile@crosby.ericsson.se)
- DETAILS: 6502: Yes.
- Ram expansions:
- COMMENTS:
-
- PROGRAM 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.
-
- Two C128 emulators are (planned/in development) at the moment.
-
-
- 2.4 PET Emulators.
-
- + PROGRAM: "PET EMULATOR
- + MACHINE: Commodore 64
- + AUTHOR:
- + DETAILS: Emulates 2001 series, 4032 series & basic 4.0
- + COMMENTS:
-
-
- 2.5 Non-Emulators.
-
- PROGRAM: C64Emulator.lha / C64Emul.lha
- MACHINE: Commodore Amiga
- AUTHOR: Eddy Carroll
- COMMENTS: Joke C64 emulator written on April 1st. Source code included.
-
- PROGRAM: 64blaz76.exe
- MACHINE: IBM PC running DOS
- AUTHOR: Mark D. Rejhon (mdrejhon@descartes.uwaterloo.ca)
- REQUIRES: 286 with EGA/VGA.
- COMMENTS: CBM modem terminal with CBM graphics in colour.
-
-
- 2.6 Other utilities & files.
-
- There are many different transfrer programs which you can use to transfer
- data from a c64 to another machine. In this section I will only be listing
- those which transfer who disk images. I will also be lisiting utilities for
- the emulators and 'ready to run' data files that are available.
-
- 2.6.1 Utilities
-
- disk64e.arj - Creates .d64 files using 1541 for IBM 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 !*zip files 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.
-
- 2.6.2 Data files.
-
- The ftp site watson.mbb.sfu.ca has a selection of .t64 * .d64 disk images.
-
- Also available for PlaySID for the AMIGA are a number of music collections:
- C64MusicShow-1.lha
- C64MusicShow-2.lha
- Addition.lha
- C64Sounds.lha
-
-
- 3. 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 the read the ftp list
- which is posted to this comp.sys.cbm regularly by Howard Herman
- (72560.3467@CompuServe.COM).
-
- Format for listing:
-
- Site.Name /Directory
- MACHINE - program name
-
-
- 3.1 C64 Emulators.
-
- watson.mbb.sfu.ca /c64/emulator
- IBM PC - c64.zip
- - c64s09a.zip
- c64s09b.arj
- c64s09c.exe
- - c64alive.zip
- - sallyc64.zip
- - c64neu.zip
- AMIGA - thea64package.lha
- - PlaySID-2.0.lha
- PlaySID2.2.lha
- ATARI ST - c64-st.lzh
- + APPLE MAC - MAC64-03.HQX
- UNIX/X - x64-0.1.tar.gz
- x64-0.2.1.tar.gz
- faui43.informatik.uni-erlangen.de /mounts/faui45/atari/applications/
- emulators/c64
- ATARI ST - c64.lha
- ftp.funet.fi /pub/cbm/c64/emulation
- IBM PC - c64.zip
- - c64emu.zip
- c64s09b.arj
- AMIGA - TheA64Package.lha
- ATARI ST - c64.lzh
- UNIX/X - x64-0.2.1.tar.gz
- ftp.funet.fi /pub/amiga/audio/apps/playback
- AMIGA - PlaySID-2.0.lha
- cnam.cnam.fr /pub/Amiga/mus/play
- AMIGA - PlaySID2.2.lha
- ftp.germany.eu.net /pub/comp/amiga/music
- AMIGA - PlaySID2.1.dms
- ccnga.uwaterloo.ca /pub/cbm/emulation
- IBM PC - c64.zip
- AMIGA - thea64package.lha
- UNIX/X - x64-0.1.tar.Z
- x64-0.2.0.tar.Z
- wilbur.stanford.edu /pub/emulators/c64
- IBM PC - c64.zip
- UNIX/X - x64-0.1.tar.gz
- x64-0.2.0.tar.gz
- x64-0.2.1.tar.gz
- src.doc.ic.ac.uk /packages/aminet/misc/emu
- AMIGA - C64Emulator.lha
- 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.wustl.edu /systems/amiga/boing/utilities/emulators/c64
- AMIGA - a64v2d1.lzh & a64v2d2.lzh (TheA64Package.lha)
-
-
- 3.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
-
-
- 3.3 C128 Emulators.
-
- No emulators availble yet.
-
-
- 3.4 PET Emulators.
-
- No sites known.
-
-
- 3.5 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)
- watson.mbb.sfu.ca /c64/emulator
- IBM PC - 64blaz76.exe
-
-
- 3.6 Other utilities & files.
-
- 3.6.1 Utilities
-
- watson.mbb.sfu.ca /c64/emulator
- IBM PC - disk64e.arj
- c64uti5.zip
- maketape.arj
- copy2d64.arj
- zip2d64.arj
- + d64util.zip
- + d64_10.zip
- + d64zipcode.c
- 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
-
- 3.6.2 Data files.
-
- watson.mbb.sfu.ca /c64/games/ (.t64 * .d64 files)
- watson.mbb.sfu.ca /c64/misc/ (.t64 * .d64 files)
- watson.mbb.sfu.ca /c64/sidmusic/ (PlaySID music)
- AMIGA - C64MusicShow-1.lha
- C64MusicShow-2.lha
- Addition.lha
- nic.funet.fi /pub/amiga/audio/misc/sid-tunes
- AMIGA - C64MusicShow-1.lha (for use with PlaySID)
- C64MusicShow-2.lha
- Addition.lha
- ftp.cnam.fr /pub2/Amiga/mods/PlaySid
- AMIGA - C64MusicShow-1.lha (for use with PlaySID)
- C64MusicShow-2.lha
- Addition.lha
- ftp.cs.tu-berlin.de /pub/amiga/audio/mods-c64
- AMIGA - C64Sounds.lha (for use with PlaySid)
-
-
- 4. Emulator File Formats.
- -------------------------
-
- 4.1 C64 Emulators.
-
- Program File type Identification Contents
- (name or method)
-
- + c64.zip (PC) disk image VC1541.000 683 pcs 256-byte sectors
- + tape image - not used
-
- c64s09 (PC) basic rom } contains binary data for:
- kernel rom }- romcode.c64 VC1541 (16386 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 ?
-
- + sallyc64.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
-
- + c64neu.zip basic rom *.64B 8192 bytes of binary data
- + (PC) kernel rom *.64C 8192 bytes of binary data
- + chargen rom *.64K 4096 bytes of binary data
- + disk drive rom - not used
- + program *.P00 C64 program with load address
- + preceded by 24 byte header.
- + disk image - not used
- + 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
-
- + (1) Includes load address.
- + (2) Default load address allowed.
-
-
- 5. 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 colud get TheA64Package.lha and extract the file called
- TheA64Package/64Prgs/SaveROMs. This will extract the basic and kernal roms
- from a C64.
-
-
- 5.1 C64 roms - Basic, Kernal & Charset.
-
- 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 D=36864:POKE56334,0:POKE1,51
- 20 FORX=16384 TO 18431
- 30 POKE X,PEEK(X+D):NEXT
- 40 POKE1,55:POKE56334,1
- 50 OPEN5,8,5,"0:CHRROM,S,W"
- 60 FOR X=16384 TO 18431
- 70 A$=CHR$(PEEK(X))
- 80 PRINT#5,A$;:NEXT
- 90 CLOSE5
-
-
- 5.2 1541 rom.
-
- C1541 ROM extractor:
-
- Extract area $C000-$FFFF
-
- 100 B=16384:I=B:Z$=CHR$(0)
- 110 OPEN1,8,15
- 120 FORH=192 TO 255:PRINT H;
- 130 FORL=0 TO 255
- 140 PRINT#1,"M-R";CHR$(L);CHR$(H)
- 150 GET#1,A$:X=ASC(A$+Z$)
- + 155 Z=FRE(0)
- 160 POKE I,X:I=I+1:NEXTL
- 170 NEXTH
- 180 CLOSE1
- 200 OPEN5,8,5,"0:C1541ROM,S,W"
- 210 FORX=B TO I-1
- 220 A$=CHR$(PEEK(X))
- + 225 Z=FRE(0)
- 230 PRINT#5,A$;:NEXT
- 240 CLOSE5
-
- If you just want the rom without the extra $100 bytes of baggage (the area
- from $C100-$FFFF only) then change the 192 in line 120 to 193.
-
-
- 6. Other information.
- ---------------------
-
- 6.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.sys.cbm :)
- Also worth a quick look is comp.sys.amiga.emulations, but this covers any
- emulator for the Amiga, not just cbm ones.
-
-
- 6.2 C64 Kernal rom versions.
-
- Below is the information on differences between kernal revsions 0 & 3.
- Are there any others?
- I would also be interested in looking at the rom from an SX64 if anyone
- has that.
-
- Format for list:
-
- Address: <rev0 bytes>
- <rev3 bytes>
-
- E4AC: 5C
- 81
-
- E4D3: AA, AA, AA, AA, AA, AA, AA, AD, 21, D0
- 85, A9, A9, 01, 85, AB, 60, AD, 86, 02
-
- E57C: B5, D9, 29, 03, 0D, 88, 02, 85, D2, BD, F0, EC, 85, D1, A9, 27, E8,
- 20, F0, E9, A9, 27, E8, B4, D9, 30, 06, 18, 69, 28, E8, 10, F6, 85,
-
- -: B4, D9, 30, 06, 18, 69, 28, E8, 10, F6, 85, D5, 60
- D5, 4C, 24, EA, E4, C9, F0, 03, 4C, ED, E6, 60, EA
-
- E622: ED, E6
- 91, E5
-
- EA07: A9, 20, 91, D1, 20, DA, E4, EA, 88, 10, F5, 60
- 20, DA, E4, A9, 20, 91, D1, 88, 10, F6, 60, EA
-
- EF94: 85, A9, 60
- 4C, D3, E4
-
- FF80: 00 (revision number)
- 03
-
-
- 7. 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.
- ftp.funet.fi : ftp site
- - For having a large selection of emulators available.
- watson.mbb.sfu.ca : ftp site
- - For having a large selection of emulators available.
- 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 "4. Emulator File Formats" section.
- 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
- - For noticing some mistyped words and additions for 2.6.
- + Fredrik Ekman : D91FE@rby.hk-r.se
- + - For info on Pet emulators
-
- Bye,
- Peter Weighill - stuce@csv.warwick.ac.uk
-
- ---------------------------------------------------------------------------