CompuPhase product information

Skip to main content (skip navigation menu)
Letterhead logo






Product information

 

CompuPhase produces hardware and software products. A brief overview of our products is listed below. Note that CompuPhase can also develop customized versions of its products, or create products or applications per your specifications. Contact us for more information.

Hardware products

 

Programmable Audio players

Our solid-state audio players are suitable for embedding in scale models, game consoles and kiosk applications, as well as to be part of high-quality broadcast or narrowcast systems. These sturdy and high-quality players are programmable by the end user (or site owner) through a scripting language. As a result, the audio players can fit into almost any design for which you need high-quality audio.

The original programmable MP3 player, model H0420
The original programmable MP3 player, model H0420
Starling audio player, model H0440 with dual decoder
Starling audio player, model H0440 with dual decoder

LED effect lighting

We offer a few lighting solutions for scale models, indicator lights, displays, or other functions. These products are based on high-efficiency LEDs.

Twinkler: programmable RGB LED
Twinkler: programmable RGB LED

Software products

 

CompuPhase actively develops and commercializes several software tools and development libraries. Most of them are targeted to programmers and professional end users. A few of our products are freeware or open source; other products are commercial. Full source code to our commercial products is usually available.

Programming languages and systems

icon EGO for Windows EGO for Windows
EGO for Windows is a very complete authoring system to develop applications for training, presentation and simulation.
Look also at the "Application notes on EGO, for detailed information that supplements the manual.
icon Small "pawn": embedded scripting language
Open source A tiny and fast programming languages for computer games, animations and embedded applications. It may also be used as a general scripting system.

Libraries and components (for developers)

icon for minIni minIni: a minimal INI file parser
Open source minIni is a programmer's library to read and write "INI" files in embedded systems. minIni takes little resources and can be configured for various kinds of file I/O libraries. minIni provides functionality for reading, writing and deleting keys from an INI file, all in a tiny and easy to port library.
icon Rosette Rosette - internationalize applications
Rosette helps with the creation and maintenance of applications that must be presented in multiple languages.
icon other products More libraries and components...
A few older software products of this categorie are listed here.

Applications & Utilities

icon PaletteMaker PaletteMaker - optimal colour palettes
PaletteMaker is a professional tool to create optimal colour palettes from a series of "True Color" images. The utility has many configuration options and uses state-of-the art algorithms.
logo Termite Termite - a simple RS232 terminal for Microsoft Windows
Freeware Termite is an RS232 terminal that is very easy to configure and use (developers can pre-configure it too, so that it runs out of the box).
logo SYLT Editor The SYLT Editor - create/edit synchronized lyrics
Freeware The SYLT Editor is a self-contained utility to create or modify SYLT frames in an MP3 track (or, more accurately: a SYLT frame is inside an ID3 tag, which in turn is prefixed to an MP3 track). A SYLT frame contains text (e.g. the lyrics of a song) plus time-stamps attached to each line, word or syllable. Versions of the SYLT Editor are available for Microsoft Windows and for Linux.
terminal icon SvnRev - a programmers' tool for Subversion and CVS/RCS
Open source SvnRev is a little program that writes the current revision number of project into a C/C++ header file or a Java package file. This revision number is stored in constants (macros in the case of C/C++, both as a number and as a string. SvnRev is specifically designed for the Subversion version control system, but it can also be used with CVS and RCS.
    Most recent update: Support for the new "working copy" of Subversion 1.7; relaxed requirement for RCS keywords in source files (on Subversion 1.7 working copies).
icon other products More applications and utilities....
A few older software products of this categorie are listed here.

Electronic design

logo VisualPlace VisualPlace
Freeware VisualPlace assists in (manual or automated) PCB assembly. Component placement is extracted from files generated from the EDA suite —notably the Gerber files, the centroid file(s) and the bill-of-materials.

Screen-shot of the VisualPlace application The application visualizes the component placement and converts the files (with corrections, where applicable) for further automated processing. Creating placement information (with semi-automatic centre-finding for the centroid markers) is also possible.

Due to a plug-in architecture, VisualPlace works with many EDA suites, and more can be added.

icon librarian KiCad Librarian
Open Source A utility to move & copy footprints or schematic symbols from one library to another, and to optionally adjust the parameters of these footprint/symbols. This program supports the KiCad EDA suite.
icon other products DrillFile: drill file creator for KiCad
Open Source KiCad is an open-source EDA-suite. This "DrillFile" utility creates either one or two drill files in Excellon format, optionally separating plated-through holes from non-plated holes. It comes as both a GUI and a console utility. Documentation and source code are included in the download.
DrillFile user interface DrillFile user interface (click on the picture to zoom in)
Nota Bene: The latest version of KiCad allows holes to be marked as "mechanical" and creates a separate "NPTH" drill file for these. Earlier versions of KiCad always stored all holes in a single drill file. The DrillFile utility allows you to select either option, for any version of KiCad.

section separator

A note on the source code

The source code includes makefiles and other support files. The configuration options are set in the makefile via macros. If you use the same C/C++ compiler(s) that the product was built with, it should compile straight from the installation, after adjusting the paths in the makefile macros.

Some of our products come with a "light" version of our APIguard debugging tool. This tool assists in tracing parameter errors in the retail version of the products, without requiring the source code of the products. APIguard is not considered part of the product. Source code of APIguard is not provided.

EGI, AniSprite and Panodome are programmer's libraries for which the source code is available as an option. The products are primarily "function libraries" that are carefully crafted and pre-compiled for maximum performance and stability. The products are not marketed as optimally portable source code archives.

That is, we do not support recompilation of the product's source code by every compiler that you may work with, and we have no intent to do so.

More concretely, the products are written in C and C++ (mostly decorated with in-line assembler snippets). Although the DLLs can be called from Visual Basic and from Borland Delphi, the source code for the products themselves are still in C/C++. We do not provide source code for the products in Basic or in Delphi. You cannot recompile the source code if you only have Delphi or Visual Basic.

That may sound obvious (I hope it does), but there is more: C/C++ compilers differ (slightly) in their methods of making DLL functions accessible from the outside, the interface with the operating system, and other details. While we tend to have both a "production" compiler and a "backup" compiler for a product (for testing purposes), the final (retail) product is ultimately tested with one compiler. If you use a different compiler than we do, you should expect to fix function prototypes, compiler options, and other details. You may also have to rewrite or to remove the (in-line) assembler code.