CD-i

From homebrew.pixelbath
Jump to navigation Jump to search

The Philips CD-Interactive, or CD-i, is an interactive multimedia disc-based system developed in the early 1990s. Its gaming capabilities were showcased most often around full-motion video games like Dragon's Lair and Zelda: The Wand of Gamelon.

Specs

  • CPU: Motorola 68000
  • RAM: 1 MB
  • Display: 384×280 to 768×560, 16-bit palette with 32k on-screen
  • Sound: ADPCM 8-channel
  • OS: CD-RTOS (based on Microware OS-9)
  • CD: 1x CDROM

Homebrew

Various languages can be used for CD-i software development, but all are ultimately all compiled to (or in some cases interpreted by) 68000 machine language. The OS9 "memory module" file format is well-defined in the OS9 documentation; any development software that produces a valid 68000 machine language module can be used.

The CD-i has no native sprite engine, so it has to be done manually. For sprite blitting 68000 machine language is recommended, otherwise the draw rate is too slow except in the cases of a small number of sprites or not rendering at a 50Hz or 60Hz video frame rate. Best results can be achieved using a "sprite compiler" that compiles the graphics to assembly language draw calls.

Game logic can be developed in a higher-level language like C or C++.

Given the system was developed by Philips, it's nearly a given that the development documentation would be incorporated into a full book, the CD Standard Green Book. Given its age and how little it's used it's difficult to locate easily. Quoting user CDIFan, "There are digital versions floating around the net, but they are hard to read and most of the pictures are badly mangled."

The Green Book defines the CD-RTOS API, which is simply OS9 rev2.4 with a custom set of file managers and drivers for the CD-i specific hardware. The rest of the needed OS9 documentation can be found in PDF format on the ICDIA site.

Resources