TASVideos

Tool-assisted game movies
When human skills are just not enough

Bizhawk / C64

<< Bizhawk

Released and approved for TASVideos submissions

The commodore 64 core is written primarily by Saxxon with substantial contributions by Alyosha

Currently disk, tape and cartridges are supported.

C64Hawk is written in C# and licensed as MIT

Table of contents [expand all] [collapse all]

Introductory Guide to Commodore C64 TASing in BizHawk

C64 Tasing is a bit more complicated than cartridge/optical disc based systems which automatically load a ROM from power-on.

Most of the time (but not always) some form of syntax is necessary to properly load the game. This syntax will vary depending on the type of media on which the game's data is stored. More details on this later.

Media Format

There are three media formats that the C64 commonly used for games: Disks, Tapes, Cartridges.

Common image files of these formats are as follows follows:

  • Recognized by BizHawk
    • .d64 – disk image
    • .g64 – also a disk image (sometimes used for games with disk format based copy protection)
    • .tap – tape image
    • .crt – cartridge image
    • .prg – commodore 64 program file
  • NOT Recognized by BizHawk, but may be by other emulators
    • .t64 – another tape image (data is stored differently than a .tap file)
    • .wav – audio file that may be usable as a tape image by some emulators

Choosing a Game Format

It's quite common to find a particular C64 game available in more than one of the above formats. If original images of C64 games can't be found/proven, TASvideos does allow cracked versions of C64 games. However, for TASvideos purposes, maintaining as much authenticity as possible is the primary factor in choosing from which format to TAS. If a game was released on multiple formats, use the one that loads the fastest (see below). For submissions, only use an image format on which the game was officially released.

  • Cartridge: In general use a cartridge version if an official cartridge release exists. These will load instantly upon power-on similar to other cartridge based systems like the NES.

  • Disk/Tape: Generally disks load faster than tapes of the same game, so use a disk image if the game was released on disk. Only use a tape image if it was the only release format.

  • .PRG file: While BizHawk recognizes this format for mounting games, it does not represent a particular media format. It's the raw C64 program data that would be stored on a Disk/Tape. As it's not a specific format do not use it for TASing. For casual play, BizHawk treats .prg files as disks, so loading syntax is the same as a disk.

Region (NTSC vs. PAL)

The C64 system itself saw both PAL and NTSC releases with the necessary hardware differences to work in a particular region. While each C64 was designed for one region or the other, the C64 system itself did not have a region lock as is common with console systems like the NES.

Because of this, software from one region tends to run equally well on a system of the other region. Usually the only notable difference in using one region over the other is the speed at which the software runs. The NTSC version of the C64 had a faster processor than the PAL version. This in conjunction with the higher screen refresh rate of NTSC tends to make games/software run slightly faster on NTSC systems than it does on PAL systems.

Due to this common ability to use software in either region regardless of where the software was created/released, as well as lack of reliable region information for a given game image, TASvideos generally allows submissions of C64 games to be run using NTSC sync settings. This usually results in a faster run.

The exception to this guideline is if a PAL game exhibits glitches (or outright fails to run) in NTSC mode that wouldn't also be present in the PAL mode. In such cases, TAS the game in PAL sync settings.

Some games/software were specifically coded to match a particular region's screen refresh rate. Trying to use these games in the wrong region may introduce additional glitches or may simply fail to work at all in the wrong region. But these types of games are much less common than ones that work equally well in both regions.

Setting Up the TASing Environment

  1. Open BizHawk
  2. Ensure you have the appropriate C64 firmwares set in the menu Config > Firmwares
  3. Open the game you want to TAS
  4. Click the C64 > Settings menu
  5. Select the "Sync Settings" tab
  6. Set VIC Type to the appropriate region (usually NTSC)


  7. The other settings can usually be left at their defaults.
  8. If any sync settings are changed; reboot the core by pressing Ctrl-R or clicking emulation > Reboot Core.
  9. Open TAStudio (optionally)
  10. TAS your game!

Loading Syntax

Each media type requires different loading syntax.

Cartridge

None. These will boot automatically into the game when opening them.

Disk

Type L<shift + O>"*",8<RETURN> or L<shift + O>"*",8,1<RETURN>
  • These look like this:
  • The ,1 is not typically necessary but will cause some games to automatically run once they are loaded.

Tape

Press <shift + RUN/STOP>
  • Some tape games will automatically run after loading, others will require an additional run command after the game loads (see below).

After a game loads, if it doesn't automatically run, a secondary "READY." prompt will show up. Here type R<shift + U><RETURN> to run the game.
Looks like this

Often further loading will take place at this point as the game starts to run, but rarely requires additional syntax input.

TL;DR

For submissions, TAS the game (regardless of its region of release) using NTSC sync settings unless the game doesn't run properly....then use PAL settings.

For image format, us an image that matches an official release format. Loading speed follows this order: Cartridge is fastest, then Disk, then Tape.

Use appropriate syntax to load and run the game. If using disk or tape format...make yourself a milkshake while you wait for the game to load.

Enjoy C64 TASing!



Combined RSS Feed
Bizhawk/C64 last edited by feos on 2019-06-22 06:08:00
Page info and history | Latest diff | List referrers | View Source