WiiColEm

From WiiBrew
Jump to navigation Jump to search
WiiColEm
WiiColEm.png
General
Author(s)Raz0red
TypeConsole emulator
Version0.1-pre
Links
Website
Peripherals
WiiMote2.svg Nunchuck alternative.svg ClassicController.svg GameCube Controller Loads files from the Front SD slot


Overview

WiiColEm is a port of the ColEm ColecoVision emulator version 2.5.2 developed by Marat Fayzullin.

The following additions/modifications were made to the core emulation code:

  • "The Heist" now works correctly (memory initialization bug).
  • Added support for Opcode RAM expansion.
  • Added support for "Lord of the Dungeon".
  • Mode 2 masking now works correctly (supports Daniel Bienvenu games).
  • Mode 0 and Mode 3 now work correctly ("Cabbage Patch Kids Picture Show" and "Smurf: Paint 'n Play Workshop" now work correctly).
  • Fixed graphic corruption that would occur when switching between games (VRAM and related state were not being reset correctly).
  • Fixed save/load state bug where the emulator would incorrectly report that the save was invalid (memory was not being cleared correctly).

Known Issues

  • Speed dial roller is not working (Super action controller)
  • Zip files are not supported

Installation

To install WiiColEm, simply extract the zip file directly to your SD card (retain the hierarchical structure exactly).

Cartridge images should be placed in the roms directory (/wiicolem/roms).

Status

  • First preview release available for testing --Raz0red 23:58, 12 January 2010 (UTC)
  • Currently working on:
    • Tilt Wiimote (motion) driving controller support
    • Adding option to pause emulation when keypad is displayed (per cartridge w/ global default)
    • Speed dial roller support (Super action controller)
    • Zip file support

Cartridge Database

WiiColem ships with a database that contains recommended settings for most commercial cartridges. These settings cover controls mappings, keypad button descriptions, and advanced settings (whether the cartridge requires the Opcode RAM expansion, etc.).

To see the settings applied for a particular cartridge perform the following steps:

  • Load the cartridge (via the "Load cartridge" menu item)
  • Return to the WiiColem menu
  • Select "Cartridge settings (current cartridge)" menu item
  • Examine the "Control settings" and "Advanced" settings for the cartridge

For more information on mapping controls and creating and/or customizing cartridge settings, see Cartridge Settings.

Default Controls

The following section controls the "default" control mappings for WiiColEm.

It is important to note that if the cartridge that is being loaded exists in the Cartridge Database it may contain non-default mappings.

WiiColEm menu

Wiimote.svg Wiimote.svg + Nunchuck alternative.svg ClassicController.svg GameCube Controller Action
Wiimote D-Pad Up / Wiimote D-Pad Down Wiimote D-Pad Up / Wiimote D-Pad Down or Nunchuck Control Stick Classic D-Pad Up / Classic D-Pad Down or Classic Left Control Stick Gamecube D-Pad Up / Gamecube D-Pad Down or GameCube Control Stick Scroll through the Menu
Wiimote D-Pad Left / Wiimote D-Pad Right Wiimote D-Pad Left / Wiimote D-Pad Right or Nunchuck Control Stick Classic D-Pad Left / Classic D-Pad Right or Classic Left Control Stick Gamecube D-Pad Left / Gamecube D-Pad Right or GameCube Control Stick Page through the Menu
Wiimote A Button Wiimote A Button or Nunchuck C Button Classic a Button Gamecube A Button Select menu item
Wiimote B Button Wiimote B Button or Nunchuck Z Button Classic b Button Gamecube B Button Previous menu
Wiimote HOME Button Wiimote HOME Button Classic HOME Button GameCube Z Button Exit to Homebrew channel

In-game (Keypad)

The keypad allows you to press keys on the ColecoVision controller keypads. If a description has been provided for the currently selected key it will be displayed above the keypad.

It is also important to note that commonly used keys can be mapped to Wii controller buttons (see Cartridge Settings).

WiimoteHorizontal.svg Wiimote.svg + Nunchuck alternative.svg ClassicController.svg GameCube Controller Action
Wiimote D-Pad Nunchuck Control Stick or Wiimote D-Pad Classic D-Pad or Classic Left Control Stick or Classic Right Control Stick GameCube D-Pad or GameCube Control Stick or Gamecube C Control Stick Choose Key
Wiimote 2 Button or Wiimote 1 Button or Wiimote A Button or Wiimote B Button Nunchuck C Button or Nunchuck Z Button or Wiimote A Button or Wiimote B Button Classic a Button or Classic b Button Gamecube A Button or Gamecube B Button Press Key
Wiimote + Button Wiimote + Button Classic + Button GameCube START Button Close Keypad

In-game (Standard)

WiimoteHorizontal.svg Wiimote.svg + Nunchuck alternative.svg ClassicController.svg GameCube Controller Action
Wiimote D-Pad Nunchuck Control Stick or Wiimote D-Pad Classic D-Pad or Classic Left Control Stick or Classic Right Control Stick GameCube D-Pad or GameCube Control Stick or Gamecube C Control Stick Move
Wiimote 2 Button Nunchuck C Button Classic a Button Gamecube A Button Left Fire Button
Wiimote 1 Button Nunchuck Z Button Classic b Button Gamecube B Button Right Fire Button
Wiimote + Button Wiimote + Button Classic + Button GameCube START Button Toggle Keypad
Wiimote HOME Button Wiimote HOME Button Classic HOME Button GameCube Z Button Display WiiColEm menu (see above)

In-game (Super action)

Wiimote.svg + Nunchuck alternative.svg ClassicController.svg GameCube Controller Action
Nunchuck Control Stick or Wiimote D-Pad Classic Left Control Stick or Classic Right Control Stick GameCube Control Stick or Gamecube C Control Stick Move (If speed roller dial is disabled)
Wiimote D-Pad Classic Left Control Stick GameCube Control Stick Move (If speed roller dial is enabled)
Nunchuck Control Stick Classic Right Control Stick Gamecube C Control Stick Speed roller dial (If enabled)
Nunchuck C Button or Wiimote 2 Button Classic a Button or Classic R Trigger Gamecube A Button or GameCube R Trigger Yellow button
Nunchuck Z Buttonor Wiimote 1 Button Classic b Button or Classic L Trigger Gamecube B Button or GameCube L Trigger Orange button
Wiimote A Button Classic x Button or Classic ZR Button Gamecube X Button Blue button
Wiimote B Button Classic y Button or Classic ZL Button Gamecube Y Button Purple button
Wiimote + Button Classic + Button GameCube START Button Toggle Keypad
Wiimote HOME Button Classic HOME Button GameCube Z Button Display WiiColEm menu (see above)

In-game (Driving)

Wiimote.svg + Nunchuck alternative.svg ClassicController.svg GameCube Controller Action
Nunchuck Control Stick Classic Right Control Stick Gamecube C Control Stick Move
Wiimote D-Pad Classic D-Pad GameCube D-Pad Shift
Nunchuck C Button or Wiimote 2 Button Classic a Button Gamecube A Button Gas
Nunchuck Z Buttonor Wiimote 1 Button Classic b Button Gamecube B Button Brake
Wiimote + Button Classic + Button GameCube START Button Toggle Keypad
Wiimote HOME Button Classic HOME Button GameCube Z Button Display WiiColEm menu (see above)

In-game (Roller)

Wiimote.svg + Nunchuck alternative.svg ClassicController.svg GameCube Controller Action
Nunchuck Control Stick Classic Left Control Stick GameCube Control Stick Move
Nunchuck C Button or Wiimote 2 Button Classic a Button Gamecube A Button Left Fire (2p)
Nunchuck Z Buttonor Wiimote 1 Button Classic b Button Gamecube B Button Right Fire (2p)
Wiimote A Button Classic x Button Gamecube X Button Left Fire
Wiimote B Button Classic y Button Gamecube Y Button Right Fire
Wiimote + Button Classic + Button GameCube START Button Toggle Keypad
Wiimote HOME Button Classic HOME Button GameCube Z Button Display WiiColEm menu (see above)

Cartridge Settings

WiiColEm contains the ability to manage per-cartridge settings. The settings that can be edited include:

  • Control settings
  • Advanced settings (Whether it requires Opcode memory expansion, etc.)

Control Settings

The following control options are available:

  • The controller type (standard, super action, driving, roller)
  • Wiimote orientation
  • ColecoVision keypad and controller button mappings

When mapping buttons, you map a ColecoVision keypad or controller button to one of the "button groups" listed below. This allows you to map a button once across the different Wii controllers.

You can use the "(View as)" menu item to toggle how the ColecoVision buttons are mapped to a particular Wii controller (Wiimote, Nunchuk, Classic, and GameCube).

Group Wiimote.svg Nunchuck alternative.svg ClassicController.svg GameCube Controller
Button 1 Wiimote 2 Button Nunchuck C Button Classic a Button Gamecube A Button
Button 2 Wiimote 1 Button Nunchuck Z Button Classic b Button Gamecube B Button
Button 3 Wiimote A Button (n/a) Classic x Button Gamecube X Button
Button 4 Wiimote B Button (n/a) Classic y Button Gamecube Y Button
Button 5 (n/a) (n/a) Classic R Trigger GameCube R Trigger
Button 6 (n/a) (n/a) Classic L Trigger GameCube L Trigger
Button 7 (n/a) (n/a) Classic ZR Button (n/a)
Button 8 (n/a) (n/a) Classic ZL Button (n/a)


Screenshots

Special thanks

  • Tantric ~ Menu example code
  • Yurkie ~ Testing
  • munky6 ~ Testing
  • Daniel Bienvenu (newcoleco) ~ For helping resolve the Mode 2 issues

Changelog

0.1-pre1 - January 12, 2010

  • Initial preview release