Content area
Full Text
Red Hot Software, Mojo Designs and Cirrus Logic used a combination of open-source CIS, GUI tools and interface library, and Maveric processor.
In MP3 player that is among the first designs based on Cirrus Logic's Maveric EP7212 processor has been built by Red Hat Software, Mojo Designs and Cirrus Logic. The three teamed up to use a combination of open-source operating system and graphical-- user-interface tools with a proprietary graphical-interface library. They gave the player a small-footprint LCD touch screen as well as familiar icons for stopping, rewinding, fast-forwarding and playing music, and a simple address book and to-do list manager as well as an "About" screen that describes its various software and hardware components.
The player was built using the Red Hat GNUPro development kit, DSP library and eCos real-time operating system (RTOS). It employs the latest version of Mojo Designs' Eyele GUI, a graphical-interface library developed from the ground up for low-cost, highperformance embedded systems.
Red Hat's products were the obvious choice for the player's core software components. The first reason was that Red Hat was one of only a handful of vendors ready to support the sophisticated Cirrus EP7212 chip when the project began.
Though theywere still being developed at the beginning of the project, it was found that GNUPro, the DSP library and eCos RTOS already were the answer. In particular, eCos' extensive list of configuration points allows it to be precisely tailored to the target application without source code modification.
Using these configuration points, Mojo developers tuned and retuned the RTOS features they needed most and completely removed features they didn't need at all. The results speak for themselves: The eCos kernel and device drivers occupy only 50 kbytes of RAM in the application's 400-kbyte footprint.
Because it is so similar to the approach used in popular desktop operating systems like Linux, cCos' driver interface makes it possible for code that needs device I/O to be tested on the desktop, using simulated driver stubs or PC versions...