VICE

From Spesoft/GameEx Wiki
Jump to navigation Jump to search
VICE

Emulated Systems:

Commodore 64, the C64DTV, the C128, the VIC20, practically all PET models, the PLUS4 and the CBM-II (aka C610/C510). An extra emulator is provided for C64 expanded with the CMD SuperCPU.

Emulator last updated:

Current Official Version:

Overview

Development and History

Variants and Forks

Alternative Emulators

QuickStart

Installation

Download Locations

Pre-requisites

Hardware Considerations

Installation Process

Setup

General Settings

BIOS

Available Plugins

Graphics

Audio

Controllers

Key Remaps

This is quite a convoluted area. There are two .vkm files under the relevant system folder (e.g. C64) entitled win_pos.vkm and win_sym.vkm. There are two ways to map your PC keyboard to the C64 keyboard:

- Positional (win_pos) keyboard mapping - that's where your PC keyboard keys are mapped directly onto the C64 keyboard layout (that is ketying 'minus' then 'plus' on your PC keyboard will produce "plus" then "minus" on the C64 emulator)

- Symbolic - where keyboard are matched 'symbol for symbol' i.e. if you type 'minus' on your PC keyboard you get 'minus' on the C64 screen.

I'd advise using symbolic. However, problem being that VICE comes matched to US keyboards, so if you're in the UK, your keys will be out. I've edited the standard win_sym.vkm for UK keyboards and the C64. You can download it here:

File:Win sym uk.7z

Make sure you point VICE to it in Settings>Keyboard settings>Symbolic(user) and browse to the file.

The rest of remapping is quite complicated. Basically, a map consists of 4 numbers:

1 2 3 4

e.g. in the file you'll see:

1 7 7 8 /* ESC -> Run/Stop */

The first number corresponds to the key on your PC keyboard.

The Second and Third number identify the Commodore key to map it against (row/column format). Ref here

The Fourth number tells the C64 what to do with the key (e.g. shift it first) (See the vkm file itself for guide on this)

If you change a shifted key (e.g. you change "2" to produce an "@" rather than the normal commodore shifted symbol of """ (i.e. a quote), then you have to tell it to ignore the normal shifted function of that key when first refeerencing that key and to expect the new shifted symbol on the next line. E.g.:


3 7 3 40               /*            2 -> 2            */
3 5 6 16               /*            @ -> @            */


Where 40 is the sum of 32 and 8, being:

  1. 8 key can be shifted or not with this keysym/scancode
  2. 32 another definition for this keysym/scancode follows

Netplay/Network

Operation

Hotkeys

Running Game Files

Command Line

Bugs/Glitches

Support Apps for the Emulator

Game Specific Considerations

GameEx Setup

References

External Links