RealTime IT News

Contiki Bringing New Life to 8-bit Systems?

Putting a new twist on some old technology, a Swedish computer networking researcher Monday unwrapped an Internet-enabled operating system and desktop environment which may boast the world's first true Web browser for an 8-bit system.

Adam Dunkels, a computer networking researcher at the Swedish Institute of Computer Science in Kista, released the first version of Contiki, originally written for the Commodore 64 system. The C64, a favorite of hackers in its day, boasts a 1 MHz 8-bit 6510 CPU and 64K of RAM.

While the C64 was superceded long ago -- as were other systems for which developers are creating Contiki ports, including 8-bit Nintendo Entertainment System, the VIC-20, 8-bit Atari, Atari Jaguar, Atari Lynx, the Tandy CoCo and the Apple -- Dunkels said Contiki is not about nostalgia.

"This is not about playing old games to revive childhood memories," he said. "It is about pushing the limits and doing things previously thought impossible."

Indeed, Dunkels' Open Source Contiki packs a multi-tasking kernel, a windowing system and themeable GUI toolkit, a screen saver, a TCP/IP stack, a personal web server and a web browser into a single, fully self-contained, 42kb binary.

"In short, Contiki is the software needed to access the Internet and browse the Web," Dunkels said. "What makes Contiki special is that it makes it possible to do this even from really constrained systems, which previously have been believed to be too small to be able to run this kind of software."

Dunkels said a system running Contiki does not require any expansion boards, CPU accelerators, extra memory cards or a disk drive. All it needs is an RS-232 (serial) card or an Ethernet connection to access the Internet, and 20kb of RAM for base functionality. For full functionality, including desktop icons, the web browser and web server, it requires about 50 kb of RAM.

While other programs have allowed 8-bit systems to browser the Web, Dunkels pointed out that those programs require a powerful Unix or Linux server to translate the Internet content into a simpler format which an 8-bit system can understand.

A developer is currently working on PPP support for Contiki, which would allow users to utilize a modem and a dial-up Internet account with the operating system. It already supports broadband if used with an Ethernet card.

Dunkels said Contiki may have a home in very small networked systems. "The small size of Contiki could make it useful in small networked systems which are required to be very inexpensive," he said. "Such a system could be comprised of a low-cost, low-power, 8-bit microcontroller like an AVR, an Ethernet chip such as the CS8900a, an LCD display and three touch buttons -- perhaps something similar to the Mosaic Industries EtherSmart Controller. Contiki would make it possible to surf the Web from a device with only a small low-cost 8-bit microcontroller, without needing to use an expensive 32-bit CPU."

However, he noted that the operating system is probably not suited to end-user devices like PDAs or mobile phones, because it doesn't support the kind of features expected from a browsing environment today. It doesn't support Java, Flash or images.