Here is the place to
To start download, click on the appropriate button on
the left. To find out what those products are, please,
visit the products page.
To review what is included in the download packages,
please, find the information below.
You can also download
- Embedded Systems Conference
West 2000 (San Jose, CA): the
paper and handouts of Class #347 "Managing
Constant Data in ROMable Applications." This is a
rather involved treatment of a case where a good
macroassembler can be used in place of Unimal.
- DesignCon 2001
(Santa Clara, CA): handout of
TecForum HP-TF2 "Improving code maintainability
and saving ROM using Unified Macro Language." The
handout contains motivational examples on using
- Embedded Systems Conference
Boston 2008 (Boston, MA): the
paper and slides of Class #443 "Doing C (and
C++) unit testing on a shoestring." This is a
presentation of a method of instrumenting code by
abusing the C preprocessor inspired by Maestra.
We do not require you to
register in order to gain access to downloads but we
would appreciate if you send an acknowledgment email to
A reference implementation
of the unit test environment is available for download.
It is free for use for any purpose. Don't be surprised,
however, if you find you need to customize it to better
match your environment.
The download file, maestra.zip
- "C code unit testing on
a shoestring" - a PDF document describing the free
unit testing environment vs. commercial tools
- maestra.pdf - brief
source code with an example
Note that this is an
updated version; see the Maestra
page and/or release notes in maetra.pdf for
details. Some original implementations are still worth
preserving; they are available for download as maestra-original.zip.
The full version of Snob
is available for download. Its use, however, is
restricted by the license agreement. Basically, you
cannot distribute your code obfuscated with Snob without
purchasing a distribution license.
The download file, snob.zip,
- snob.exe - Win32
- snobman.pdf -
documentation, including license agreement, and
- snobtut.pdf - Snob
- snobre.pdf - Regular
- basic C language
configuration files, C*.snob
- subdirectory Sample
containing a toy Bark project used in the tutorial
Currently, basic language
configuration files are available for C. They are
included in the distribution.
Any working configurations contributed to the Snob
project will be posted here.
full version download (for
Full version of Unimal 2.1
(Build 231) for Win32 platforms is available for
download for evaluation with no time limit. If you need
to evaluate Unimal on Linux, simply send a request to email@example.com.
downloading Unimal, you agree to use it for evaluation
purposes only: no Unimal output file (whether directly
or after any postprocessing) can be used in any
product build without purchasing a license.
The download file, unimal2.zip,
- General information on the Unimal
- The Win32 console application (Unimal.exe). Note
that your target platform does not have to be Windows;
iit can be anything.
- Complete documentation in PDF format
(Unimal2.1.pdf) with accompanying sample files in
- Four Application Notes in
PDF format (appnote1.pdf to
appnote4.pdf) and accompanying sample
files in their respective
Samples\AppNotes\1 to Samples\AppNotes\4
2.0 evaluation version download
Sorry, in the evaluation
version the implementation is partially hidden by name
obfuscation. Other than that, the evaluation version is
Note: If your C compiler
is not sufficiently compliant with ISO/ANSI standrad
(you can test compliance with compileme.c)
you may want to re-read a
note on compiler compatibility and get the Unimal
add-on for C-SLang and its documentation.
Included in the csl2_eval.zip
- readme.txt ?
description of limitations of the evaluation version
- C-SLang2.pdf ?
documentation of the complete version, ver. 2.0
- csllib.lib ? library
support of the evaluation version (not needed in full
- csl_opt.h ? C header
file defining the C types of the variables
- cslpubl.h, csldef.h ?
public headers of C-SLang
- cslpriv.h ? a private
header of C-SLang
- sample1.c, sample2.c,
sample3.c ? sample C-SLang scripts
- samplesvirm.c, sample.h
? a simple implementation of the self-test running the
supplied sample scripts
eval_files.dsp ? a sample C
main() and a
Visual Studio 6.0 project wrapping the self-test for
- test.log ? output of
the self-test (can be used for regression test of your