Commodore 64 Emulator Version 0.1 Readme
(C) 1993-4 Earle F. Philhower III (st916w9r@dunx1.ocs.drexel.edu)
You MUST own a Commodore 64 to use this program, as it contains
the Commodore 64 ROMs, which are (C)CBM Corp., within its code.

You should also have recieved this package with a file called
"COPYING" which contains the GPL license which it is distributed under.


    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation; either version 2 of the License, or
    (at your option) any later version.

    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.

    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
    Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.

----- 0.1 README -----
Read the 0.1 Beta section below first...
Updates/Bug Fixes:
	Only a 68000 version supplied.  The 020 version wasn't any faster. :<
	Improved Keyboard Mapping:
		DELETE	=	C64 delete
		ESC	=	RUN/STOP
		`	=	RUN/STOP-RESTORE
	When in emulation mode, COMMAND-<key> is in effect, and you
	  can now bring up menus w/o stopping the emulation.
	When placed into the background, emulation is automagically suspended.
	No longer hogs 100% of CPU time when emulating (for updates/network.etc)
	Window is snapped onto a BYTE grid horizontally for faster BITBLITS
	When an unimplemented instruction is encountered, only the C64 will
	  crash, and not the whole MacOS (I was taking the emulation a bit too
	  far ;-> )
	Hi-Res mode now works properly, and won't crash MacOS.
	Printer Support:
	  Device #4 (CBM Printer) is directed to a Mac file called "PRINTER"
	  in the directory the program is run from.  This will be changed
	  in a later release.
	Doesn't hog CPU when displaying ABOUT box.
	BRK instruction now jumps to the IRQ address, as it should!
Unfixed Bugs/Unimplemented Features:
	***The whole FILE and EDIT menus are just there for looks***
	***I haven't written or debugged the code to do those functions***
	Hard Drive (#9) support seems to be flakey, and there are no $ or *
	  support yet.
	1541 (#8) still uses c1541 disk images.  This WILL change to .D64
	  images (not a big change, but will allow the use of all of the IBM
	  transferred software (!!!) on the emulator)
	Typing a key 2 times in a row looks to the computer as if you had
	  held the key down for 2x as long, not hitting the key 2x.
	Double-Clicking on a 1541 image starts the emulator, but I haven't
	  added Apple Event support to load that image.  Coming RSN!
	Keyboard is not fully mapped from MAC -> C64.  This includes some
	  CTL and all COMMODORE key combos.
	I'm looking into a pixel-doubling algorithm to make the VIC screen
	  2x normal size, so all you rich people with real Macs can run
	  the emulator w/o eyestrain. ;->
	Possibly mapping in CHARROM to the processor space (via addr. 1) may
	  do bad things.  I haven't tested this yet.
	Undocumented opcodes aren't implemented yet.  This too will change.
	SPEED SPEED SPEED SPEED:
	  I have received the 68K source for a 6502 emulator from
	  Pieter van Leuven, who has a Vic-20 emulator available for the Ami.
	  I've looked at it, and I think I could either hack his, or write my
	  own code w/o too much effort.
	Documentation:
	  This documentation sucks.  If you check the time on this file you will
	  see that I am writing it at 12:20am on a Monday morning/Sunday nite.
	  I'm not really keen on writing a lot of docs on a program that's
	  being revamped every two weeks, so this README is all you're gonna
	  get, spelling and grammar errors et. al!
*****
My email addresses:
	ephilhow@motown.ge.com:            Will be valid until Mar 30, 1994.
	st916w9r@dunx1.ocs.drexel.edu:     Valid until 1996.
If you've got to get in touch with me, use the .ge.com address until Mar 30,
but after that date I'll be using the .drexel.edu address.

----- 0.1 Beta README -----
This is a *preliminary* version of my Commodore 64 emulator.  This release
is more of a "hacker's release" than a "end-user" one.  Not all of the
routines are bullet-proof, or even implemented :).


To run the 64 emulator:
	If you have a 68000 series Macintosh (Classic, SE, Plus) run:
			Commodore 64-000
	If you have a 68020+ series Macintosh run:
			Commodore 64-020
			
You'll be presented with a splash screen identifying the (C) and GPL,
and then the Commodore 64 window will be brought up and run.  Just type
and fool around in your *very expensive* C64!

The emulator has support for c1541 (x64) type floppy disk images.  To
attach a floppy to drive#8 simply use the "Devices" menu and select
either "Select Floppy Image" or "Create Floppy Image" to create a blank,
formatted 1541 image.  After attaching an image, just do your usual
LOAD "$",8; OPEN 1,8,0,"FILE,S"; etc.

Also supported is a "hard drive" interface to your Macintosh HD.  It is
accessed via device #9 and *only* supports LOAD/SAVE/OPEN/PRINT# commands.
No directory support is provided (LOAD"$",9 gives a "File Not Found" error")

No joystick or paddle support is available yet, and the printer support
is not nearly usable.  There is no SID chip simulation, this may be done
in the near future.  ***There is no, and will not be, color support for
the VIC chip unless someone else can program it as I only have a Mac
Classic to work with.***  But if someone wants to donate an old LC or
Mac II I'd be more than happy to reprogram my simulation ;>.

The VIC chip doesn't have sprite/sprite or sprite/char collisions, but
these would not be too hard to implement using my present code.  VIC
raster interrupts *are* simulated, but the screen is only updated by the
full 200 lines, so split-screen gfx don't work well at all.

------------
"Commodore 64 Emulator...
It's not much, but it's the *only* Commodore 64 you can run on your Mac!"

Any user suggestions, bug-fixes, updates please email to the above address
(st916w9r@dunx1.ocs.drexel.edu).  I'm especially interested in any 68000
based 6510 simulators.  The current code was written for portability
(It took me all of 15 mins to get this code running on my 486 Linux box!),
not breakneck speed.
