The AMX Prototyping System

The AMX Prototyping System (TAPSTM) is a Windows® utility for testing embedded systems developed using any of KADAK's 32-bit AMX Real-Time Multitasking Kernels. Using TAPS, your AMX application can be coded and tested prior to moving to the actual target hardware platform.


CPU Pentium (or better) at 100 MHz (or greater)
with 32 Mb of RAM
OS Any Windows 32-bit OS including:
Windows 95, 98, NT 4.0, 2000 or XP
Tools Microsoft Visual C++ 6.0 or later

  Multitasking Model

A TAPS application runs as a single thread within a Win32 application. TAPS includes a fully functional AMX implementation which does not use Win32 services to simulate multitasking operation.

Instead, TAPS provides a complete AMX multitasking environment which operates within the single TAPS Win32 thread. The TAPS version of AMX executes in a non-preemptive manner without support for interrupts.

As with any AMX implementation, the current task will always be the highest priority task which is ready for execution. However, under TAPS, the current task cannot be preempted by an external event such as an interrupt. The current task will only be suspended if it calls some AMX function which forces the task to wait for some event.

When used with TAPS, your application tasks must not be compute bound. Any compute bound task will prevent TAPS from generating its simulated AMX clock ticks, thereby precluding the use of AMX timing services. If a task must "spin", it must call the AMX function to briefly delay from time to time for at least one AMX tick.

  External Event Simulation

External events are simulated by the TAPS Event Generator, a function which is called by the TAPS Control Task, a built-in task that runs at the lowest AMX priority. The TAPS Event Generator simulates "hardware" clock ticks at the frequency specified in your application's AMX System Configuration Module.

Device I/O operations can be simulated if your application uses the low level I/O functions provided by AMX. These low-level I/O operations are funneled through the TAPS I/O Access Procedure which can be modified to mimic the results of I/O operations on your hardware.

  Simulated Hardware Devices

The TAPS Library provides support for two simulated hardware devices: a real-time clock and a serial I/O device (UART).

The simulated clock device provides timing based on the Windows Performance Counters. These counters provide a very accurate timing source. Since TAPS does not support interrupts, AMX clock ticks are generated at the required intervals by calls from the TAPS Event Generator.

The simulated serial I/O device is a polled (not interrupt driven) device that is accessed via the simple AMX serial I/O interface provided with the AMX Sample Program. Character input is read from the stdin data stream and written to the stdout data stream. These are the standard data streams available to all Win32 console applications.

  Additional Materials

You can also download the complete TAPS User's Guide. This on-line HTML guide describes how to use TAPS to test an AMX application on the Windows desktop.

Copyright © 1996-2013

File System
White Papers
Site Map
Get Info