Fantasy console

From homebrew.pixelbath
Jump to navigation Jump to search

A fantasy console is a console that has no physical implementation; it only exists as a virtual machine. Like programming languages, fantasy hardware is sometimes built for entertainment purposes. The idea has recently gained popularity as the retrocomputing movement has gained steam with the resurgence of 80s nostalgia.

CHIP-8

CHIP-8 is an interpreted programming language developed by Joseph Weisbecker. It runs in a virtual machine with a display resolution of 64x32 and 1 bit of color (on or off).

One of the first computers in add support for CHIP-8 as the COSMAC VIP, sold by RCA in the late 70s. This computer had a processor also made by RCA with a speed of about 1.77 MHz and 2 kB of RAM. The operating system contained a CHIP-8 interpreter that allowed the system to run games using the CHIP-8 language.

The TELMAC also had a second version of CHIP-8 called CHIP-82 that used a 64x64 resolution. Given its limited market, most CHIP-8 programs use only the standard resolution of 64x32.

SUPER-CHIP (SCHIP)

In the early 1990s, technology had advanced to the point where the HP48 calculator was capable of executing interpreted scripts. Because of the HP48's native LCD resolution, the SUPER-CHIP standard emerged with a 128x64 pixel resolution and some new instructions to ease programming.

PICO-8

PICO-8 is a proprietary virtual console developed by Lexaloffle Games. It comes packaged free with the purchase of Voxatron, or available for purchase as a standalone program. The software also comes preinstalled on the PocketCHIP hardware.

The console is notable for its severe restrictions, limiting the programmer to a fixed palette of 16 colors, 32k of memory (Lua tokens), and rudimentary sound.

Specs

  • Display: 128x128, 16 color
  • Memory: 32KB of Lua
  • Sound: 4-channel
  • Input: 6 buttons

Development

The language of PICO-8 is Lua. The PICO-8 software itself comes with a sprite and map editor, code editor, and the ability to build "cartridges" for distribution. Cartridge code is encoded into a PNG file in the last 3 bytes of every pixel. The Lexaloffle website runs cartridges in the browser when distributed via their forum.

PICOLOVE is an open-source project emulating the PICO-8 in Love2D, a graphical Lua framework.

Lexaloffle website

Support and Community

The development community surrounding PICO-8 is robust despite its proprietary status.

LIKO-12

The LIKO-12 project started as an open-source version of PICO-8. It features the ability to load PICO-8 cartridges, but features a 192x128 display for LIKO-12 projects. Since its inception, LIKO-12 has evolved to become a full-fledged fantasy computer, complete with a virtual peripherals system with emulated hard disks and peripherals in addition to its terminal console.

Specs

  • Display: 192x128, 16 color (PICO-8 palette)
  • Storage: Two emulated 50MB hard disks
  • Sound: 4-channel
  • Input: Keyboard and mouse

LIKO-12 GitHub page

TIC-80

Comes with a code, sprite, map, sound effect, and music editor.

Specs

  • Display: 240x136, 16 color compile-time selectable
  • Memory: 64KB of Lua or Moonscript
  • Sound: 4 channels (select square, triangle or noise)
  • Input: 2 gamepads with 6 buttons / mouse

Main TIC-80 website

PixelVision8

The main goal of PixelVision seems similar to PICO-8, to encourage development of games with platform limitations. PixelVision allows customizable parameters when creating a new game, such as CPU speed, palette, sprite limitations, sound channels, and other system features. Scripting for all virtual machines is done in Lua.

The retail version is planned for $14.95, with the prerelease version around $10.

PixelVision 8 website