Platform Colecovision - z88dk/z88dk GitHub Wiki

Machine Specifications

  • CPU: Z80 @ 3.579 Mhz
  • VDP: TMS9918, 16k VRAM
  • PSG: SN76489
  • RAM: 1k
  • ROM: 8k

Classic library support (+coleco)

  • Native console output
  • Native console input
  • ANSI vt100 engine
  • Generic console
    • Redefinable font
    • UDG support
    • Paper colour
    • Ink colour
    • Inverse attribute
    • Bold attribute
    • Underline attribute
  • Lores graphics
  • Hires graphics
  • PSG sound
    • ETracker (SAA tracker)
    • PSG Lib (SN76489)
    • Arkos2 Player (AY)
    • WYZ Player (AY)
    • Vortex tracker (AY)
  • One bit sound
  • Inkey driver (bit90)
  • Hardware joystick
  • File I/O
  • Interrupts
  • RS232

Of the same family:

  • Chuang Zao Zhe (50, Dina, Professional Arcade)
  • Spectravideo SVI 603 - Coleco game adapter

Compilation

zcc +coleco world.c -create-app

A 32k ROM file will be generated that can be inserted into the emulator.

Support

The VDP used by the ColecoVision is the same as the one in the MSX, as such many MSX examples will work. However, the machine is not particularly well equipped with memory so care must be taken.

You can reduce RAM usage by making static data const where possible - this will keep it ROM rather than copying to RAM.

Keypads and joypads

The Colecovision controller has a joystick as well as keypad with 12 keys. The joypad and two of the fire buttons are supported by the joystick() function with indices 1 and 2.

The keypad is additionally supported by joystick() with indices 3 and 4. In this mode, the joypad is returned in the lower byte and the upper byte contains an ascii value relating to the key that has been pressed: '0' - '9', '#', '*', 'C', 'D'

Bit90 computer (-subtype=bit90)

The Bit90 computer is effectively a Colecovision with a keyboard and a BASIC ROM. z88dk supports the keyboard using the -subtype=bit90 option to the Colecovision port. For the bit90 subtype, keyboard joysticks are available.

Upto 32k of RAM is available on the Bit90. Use mame -window bit90 -ramsize 32k

Links