The CD64 was developed by UFO/Success Company and released in 1998. There are a few different versions of the CD64 unit. The original CD64 had a black case, and shipped with 128 megabits of RAM. Eventually, UFO began shipping the CD64 with 256 megabits of RAM, and called it the "CD64 Plus". Later, some of the design was altered, and the case was changed from solid black to a translucent grey. These are the units that are still shipping today.
To begin with, many users have complained about low quality of the CD64, from units being DOA, to eventual problems that develop. These problems tend to be more prevalent in the earlier black units, though there are plenty of black units that are still functioning perfectly.
Anyway, with all the fixes mentioned in the CD64 help doc, you might think this is a pretty crappy unit, but the problems are pretty easy to solve, and when the unit is working fine, it is pretty nice to use.
The CD64 can load N64 programs from the CD drive (obviously) and accept sends via the parallel port. Using Ghemor by CrowTRobo, you can send or receive any save data or the cartridge ROM.
Since the CD64's BIOS runs as a N64 program, it requires a 6102 boot cart to even power on. Normally, this means that you would only be able to load 6102 programs, but fortunately, the CD64 BIOS has an excellent boot emulator built-in that will boot nearly any game with no problem. The only problem I have encountered is that occasionally a 6105 game will not detect the expansion pack. Usually this can be gotten around by re-loading the game and attempting the boot again. For Perfect Dark, however, you may have to use LaC's universal bootemu. Otherwise, the CD64 automatically detects the bootcode for a given game and runs the proper boot emulator, so the loading process is completely transparent to the user.
The CD64's save management is not a problem either. It will save EEPROM, 4X EEPROM, and FlashRAM directly to the boot cart if the boot cart has the correct save type. In addition, it comes with an SRAM Manager that will allow you to transfer SRAM to and from your controller pak and a cartridge with SRAM. (Thanks CrowTRobo.) Using Ghemor however, it is trivial to back up and restore any type of save information to and from your PC.
The CD64 also has a built in PAL-fixer. I would say that 99% of all games boot and save on the CD64 without any intervention besides matching the save cart.
One drawback to the CD64 is its susceptibility to software protection. Since it relies completely on a boot emulator to boot non-6102 carts, any carts that have software protection must be cracked, since it is physically impossible to operate the CD64 with the proper boot chip for protected software. Fortunately, these games are few and far between.
The CD64 also tops out at 256 megabits of RAM. While this is fine for the vast majority of Nintendo 64 games, some games such as Conker's, Mario Story, Ogre Battle, all Pokemon games, and Resident Evil 2 will not work on the CD64. This really isn't a big deal, and most of these games are worth buying anyhow. However, the CD64 is capable of dumping >256Mbit carts through the comms port with Ghemor, even though it can't play them.
Read this post from CrowTRobo on Dextrose to find out why the CD64 will never support 512Mbits in any way, shape or form.
Also, parallel port sends are quite slow, and will take 5 to 10 minutes for a 256Mbit game. If you're not using Ghemor, the original cd64comm utility is pretty bad at dropping sends.
Right now, the CD64 is unique in that it is the only Nintendo 64 backup unit still being sold and supported. You can buy one at www.cd64.com.
I would summarize the CD64 as the hacker's unit. It's not something I would suggest to a friend to buy, but I would not trade it for any other unit to do development or game hacking with. The CD64 is definitely best used with a PC nearby, for save management and cart dumping.
- Hex Editor function: You can edit the program by using the hex editor feature. So you can modify the game, write you own program, crack the software protection , etc. while running it.
- X-Terminator function (cheat code) those codes are compatible with Action Replay and Game Shark cheat codes. Enter any of the cheat codes before starting the game to gain extra lives, energy, power etc...
- Cheat code's parameter saved function. New cheat code that you edit by yourself can now be saved into the flash ROM bios.
- EMULATOR function. Handy for the experienced programmer. It enables the programmer to add their interpretation or program to a game, but it is a very skilful process.
- Built-in CD ROM Drive 8x speed - the system is compatible with 2x - 32x speed IDE CD ROMs.
- 128 Megabits of RAM on board, expandable to 256 Megabits. The most common RAM modules for computer are used (EDO TYPE, 72 pin SIMM 4Mx4 Ram Chip - 60ns). The end user can upgrade or replace memory as convenient.
- Transfer SRAM function (Battery Save). SRAM save data can be transferred between the cartridge used by CD64 and the Controller Pak. One standard Controller Pak can store 15s save data or 256s saved data by using compression methods.
- Multi-files function ( Can access V64 & SP64 format - swap byte )
- Backup Function to dumo game cartridges.
- Internet on-line help support (www.cd64.com)
- Low power consumption. (Use ordinary AC adapter. DC9V 800ma )
- I/O PORT for PC-Computer + Parallel Port adaptor. It can be used for uploading and downloading from the PC.
- Universal compatibility with consoles.
- Direct Joypad control. You can use the Game Console's controller to access the CD64.
- Easy feature add-ons with software upgrades.
User Manual for the On Screen Menu
Loading a Game From CD (LOAD CD64 FILE)
Insert a CD containing game or utility program into the CD drive, and then press Joypad's button A. By selecting this option, the CD64 will try to load the directory of the inserted CD. Interesting on that point is that CD64 doesn't care how you name your files but scans the whole directory and displays the filenames as well as the header name and country information. If the header is in Chinese, you will see real Chinese characters and no garbage. Now you can select a game and start loading by pressing "A" Button. After loading you may start the game or go back to Main-Menu.
* Different CD-ROM Drives will load at different speeds. It normally take 8-25 seconds to load a 64 megabit (8 megabytes) file.
Play Game (START CD64 FILE)
This option starts the ROM Image currently in the CD64’s RAM that you have just loaded using the previous menu option or dumped with the Download Option. The actual ROM Image Name is displayed on the bottom of the Menu Screen. An error is returned if no file is present.
Download Game Cartridge (DOWNLOAD CARD)
Dump the inserted Nintendo 64 Cart to the CD64 Ram by selecting this menu option. The reading progress is very fast. A 64 megabit cart takes around 14 seconds to be put into DRAM.
Play Cartridge (START CARD)
Executes the Cartridge plugged into the CD64 Slot.
SRAM transfer (MEMORY MANAGER)
Those game with SRAM battery backup save data temporarily on the boot cartridge. You can upload /download that data to / from the controlller's Controller Pak for permanent storage. Save data can be resumed from the bot cartridge transparently as long as it is still contained in the boot cart and inserted in the slot. However, saving on the Controller Pak is always recommended. One 256 Kbit Ram Card can store 15 normal saves. You may as well use an external SRAM software manager, but of course it needs to be loaded from CD/Parallel first. By using this compress program, you can store up to 256 records on a single Controller Pak.
Cheat Code Function (X-TERMINATOR)
This function is used to alter the normal game by adding more lives, unlocking levels, etc. After loading the game from CD-ROM or Game Pak you can select the built in codes or edit the code yourself; then activate the function (X-TERM : ON) and play the game.
You can also save you own parameter code into the Bios.
Utility Programs (CD64 TOOLS)
The Tools menu provide five option utility programs. It is very useful for the professional programmers.
PRO-COMM LINK - Can link to a PC by using a pro-Comm link card.
DRAM EDITOR - Hex Editor function. The HEX-Editor is used to hexedit the DRAM. It's very helpful to change a few things for advanced coders. Changes can be checksum-calculated afterwards and applied immediately
DRAM CHECKSUM - Can calculate the Dram checksum
SWAP DRAM BYTE - Swap Dram Byte
COPY CARTRIDGE HEADER - Can copy cartridge header automatically
System Tests used to check the CD64's Dram & ROM performance and status
DRAM & CARD VERIFY - User can use this function by download the cartridge data and compare the data in Dram to verify that the memory is in good condition.
CD64 INITIALZATION - You can initialize your CD64 to the original setup defaults by using this function.
XTERM BUFFER FORMAT – You can format the X-Terminator code storage buffer to the original format when you meet problem for storing the cheat-code.
CD64 CONFIGURATION – You can configure your CD64 by selecting this menu.
# CDROM SPEED – You can choose the cdrom drive access speed if supported.
# COMMS MODE – You can select the communication hardware to link to your pc ( PRO =Prom Comm Link Card, PC =Parallel Port adaptor )
# PLAY MODE – You can select the way (A button or Reset) to start a game. The default is teh A button, but some games need the Reset button to be pressed due to the hardware protection.
# MENU LANGUAGE – Select the Display Language from here.
Steps after a bad attempt in flashing the Bios: use an eeprom programer:
A. Take the eeproms out from the cd64 and don't forget the odd[O] &even[E] position.
B. Select on the programmer the eeprom type ATMEL 29c010.
C. Load the file to the programmer in binary format.
D. Burn the odd byte to eeprom marked with [O], and even byte to eeprom marked with [E].
E. If your programmer doesn't have the burning odd even byte function, you need first to split the file into odd and even format files.
# F. Put the eeproms back to it's position.
Parallel Port Adapter to communicate between the CD64 and the PC
The parallel port adaptor allows the user to communicate between the CD64 (I/O pvort) and the PC (parallel port). It is produced by UFO Company, the manufacturer of the CD64, but you can build a less expensive one if you have the right skills by looking at the schematics here.
Download CD64COMM.EXE version 2.10 Here and install the Parallel Port Adaptor at PC ECP Printer Port 1 (LPT1) to link up with the CD64; then copy the CD64COMM.EXE and DOS4GE.EXE into the C:\N64 directory. Type CD64COMM.EXE at the DOS prompt and follow the prompts. If the communication fails check your Parallel Port settings.
1. Turn off the CD64 & N64 .
2. Connect the Parallel Port Adaptor to your PC.
3. Move Parallel Port Adaptor switch to CD64.
4. Connect the cable between Parallel Port Adaptor and CD64.
5. In DOS mode, type the following command(s).
6. Turn on your CD64. ( Make sure your cd64 config are set to Parallel Port Adaptor and press START button to save the config.
7. Upload and Download start.
Type the following command line at dos prompts at C:\N64 directory to obtain the following things:
1. Upload file GAME.BIN to CD64 DRAM ADDRESS using Parallel Port Adaptor at LPT1.
C:\N64>CD64COMM -p378 -t -fgame.bin -sb4000000
2. Upload file GAME.BIN to CD64 DRAM ADDRESS and run it using Parallel Port Adaptor at LPT1.
C:\N64>CD64COMM -p378 -x -fgame.bin -sb4000000
3. Download file GAME.BIN from CD64 CARD ADDRESS length 0x800000 using Parallel Port Adaptor at LPT1.
C:\N64>CD64COMM -p378 -g -fgame.bin -sb2000000 -L800000
4. Download file GAME.BIN from CD64 DRAM ADDRESS length 0x800000 using Parallel Port Adaptor at LPT1.
C:\N64>CD64COMM -p378 -g -fgame.bin -sb4000000 -L800000
Sample output and flags for cd64comm:
CD64 Up/Download utility Ver2.00
Usage: CD64COMM -P
-P pc Port address 378-ECP PRINTER PORT
-T Transfer a block of data to CD64 but don't do anything with it
-X eXecute code after download
-G Grab game from CD64 to file
-F Filename of binary image to download\upload
-S Start address b2000000=card start, b4000000=dram start
-L Length of grab 800000=64Mb, c00000=96hMb, 1000000=128Mb, 1400000=160Mb, 1800000=192Mb, 1c00000=224Mb, 2000000=256Mb
All lengths are hex
CD64 user can get the X-terminator cheat codes from the following web-sites:
www.gametech.co.jp (Japan code)
Protected Cartridge Decoder
Almost all latest carts released for the Ningtendo 64 use software protection. This PCD (Protected Cartridge Decoder) allows you to play the game without the need for a path or crack. It simply mixes the 2 carts you have inserted into the slots: one slot is for an ordinary boot cartridge (like Super Mario 64) and the other one is for the Protected Cartridge (e.g. Snowboard 1080, Banjo Kazooie).
DS1 is an SRAM emulation adapter developed by UFO company (compatible with V64 as well) that has 256k SRAM built-in and is designed for games that requires SRAM. Most game requires 32k SRAM for saving data. DS1 is able to save up to 6 games that use 32k SRAM with the DS1 Memory Manager included in CD64's bios.
Usage for DS1
1. Just place the DS1 adapter on the N64 cartridge slot. . There is no switch or
setting to adjust, "save data" will automatically be saved into it.
2. To play a new game, use the DS1 Memory Manager to backup the SRAM to a slot before starting the new game.
3. To play back an old game, just use the DS1 Memory manager to restore the data from the respective bank before playing the game