Readme for CB64 WinCE Port for Compaq IPAQ
==========================================

(c)1999-2000 by Domenico Dato (dato@di.unipi.it)

(version 0.4 Alpha)


This file contains basic information for CB64-IPAQ, the Windows CE
port of Comeback 64 to the Compaq IPAQ PocketPC.
Please, read all sections before you start. It will answer some 
basic questions and contains a small FAQ as well. 

1. Contents
-----------

	1. Contents
	2. Basic Overview
	3. Getting started
	4. FAQ
	5. Acknowledgements
	6. Contact

2. Basic Overview
-----------------

CB64 is a software emulator for the Commodore 64 computer. The newest
version of CB64 is available at http://www.cb64.com/. If you
don't know whether you are using the newest version, please check there.
Although we try our utmost, it is quite a fact that it is impossible to
code an emulator which is 100%ly compatible with the original. If one
of your programs doesn't run correctly, its maybe because of this. CB64
is only a C64 emulator and not a C64 Peripherals emulator. It does NOT
emulate the 1541 so far, but anyway we are thinking of that and 
additonal hardware support. 

3. Getting Started
------------------

Just connect your CE device to the desktop PC and copy the cb64ce.exe file
to your Compaq IPAQ. CB64CE for IPAQ requires GAPI library from Microsoft
to work. You can download the library at the following link location:

http://www.microsoft.com/POCKETPC/downloads/devdownloads.asp

Copy the required GX.DLL into the "Windows" directory of your Pocket PC


CB64-IPAQ currently supports .CRT (Cartridge), .P00/.PRG (Program files)
and .T64 (Tape images) formats. If you have a .D64 image file, please check 
at the homepage too and have a look at the FAQ there to see how you can make 
use of those images. 
 
To start a program is quite easy: just use the menu to open it (Goto 
File/Load Program or File/Load T64). To load a cartridge dump, use the 
menu as well (Goto File/Load Cartridge). 
To Reset the emulator look at the menu (Goto Emulation/Reset). 
From the Emulation menu you can also choose between two different types
of sprite draw routines. 
       
Joysticks are emulated using IPAQ joypad for movement and any of the two
right launcher buttons as fire. You can also use fire pushing the joypad:
this is the only way to avoid the already famous button issue of the IPAQ
(move and fire at the same time).

Check the Joystick1 or Joystick2 item under the Emulation menu to activate 
it. 
If you check the keyboard menu item, the joystick emulation is excluded and
all the keys will act as normal (i.e. cursor movement).

Other important keys:

Left launcher buttons = RUN/STOP
REC (on the left side of the IPAQ) = Rotate screen (full 320x200 is displayed)


4. FAQ
------

Q: Is it legal to get copyrighted games for the C64 for free on the net?
A: Good question.  It is true that most of the games on the net are still 
   copyrighted, and will be for a long while.  However, the companies 
   and authors that hold these copyrights have not taken any action 
   against anyone offering games via ftp or www.      
   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, it's mostly up to your sense
   of morality to decide whether to support these sites.  

Q: Is any program provided with CB64?
A: Yes, just look at the main site of CB64.

Q: Where do I get the latest version of CB64 for various platforms?
A: Point your Webbrowser to: http//www.cb64.com

Q: I want to participate in the WinCE Port. How?
A: Look at the end of this readme in the contact section. If you want to
   take part please provide information about your skills.

Q: I want to distribute CB64 WindowsCE Port. May I?
A: Yes and no. As long as you do just for fun and not for any commercial
   purposes you are allowed. If there is a commercial background of any kind
   ask before you do. CB64 WindowsCE Port is *free*. You are not allowed to sell
   it!!

Q. Is the source code of the WinCE port available ?
A. At this time it's not available. I plan to release it in the future.

Q. Are PPC devices supported ?
A. Actually only Cassiopeia E-105 is supported. Send me an email if you want
   support for other PPC.

Q. Are other PocketPC devices supported ?
A. Only IPAQ is supported at the moment. Working on other PocketPC devices is in
   progress.

Q. Are the HPC devices supported ?
A. Yes. CB64CE is available for HPC with MIPS,SH3 and ARM processors. 

Q: How .....???
A: Look at http://www.cb64.com


5. Acknowledgements
-------------------

The WindowsCE port of CB64 was written by me, Domenico Dato (dato@di.unipi.it), 
using Microsoft Embedded Toolkit and starting from the Win32 source code by 
J.Fitie, B.Martin, and D.Luxen. 

The 6510 cpu emulation code is written by Fabrice Frances (thanks Fabrice!).

I also would like to thank Panutat Tejasen (Jimmy) for the help he gave me 
in the first stage of development.


6. Contact
----------

If you want to contact me, send an email to Domenico Dato (dato@di.unipi.it): 
i'll be happy to hear comments and suggestions. If you make a review of 
CB64-IPAQ, please let me know.


History
-------

Version 0.1

 o First public version (released for ARM processors only)


Version 0.2

 o Added Joystick1 & Joystick2 emulation
 o Added new 6510 cpu core (thanks to Fabrice Frances)
 o Removed CIA2 emulation (to improve speed)
 o Improved Sprite routines
 o Improved Emulatecycle() function  
 o Optimized RAM access 
 

Version 0.3

 o Added Fast/Accurate sprite draw routines
 o Added partial .T64 image format support
 o Added DSA (Direct Screen Access) mode for fast screen display.


Version 0.4  (first IPAQ public release)

 o Rewrote source to use Microsoft GAPI for DSA
 o Added screen rotation support 
 o Optmized CPU core (now speed is 100%)
 o Fixed minor CPU bugs
 
