Virtual Micro Design

The original UMPS page

Universal Microprocessor Program Simulator
The best microcontroller simulator.

What is UMPS ?

    UMPS is a universal microcontroller simulator, it runs under Windows 95, Windows 3.11 or Windows NT in a MDI environment. UMPS simulates a microcontroller with its external environment (we call this « resources »). You can simulate a whole system such a clock with:
      - a LCD panel
      - a real time I2C clock,
      - 4 push button,
      - a microcontroller.

    UMPS is able to simulate external components connected to the microcontroller. Then, debug step is dramatically reduced. UMPS is not dedicated to only one microcontroller family, it can simulate all kind of microcontrollers. The main limitation is to have less than 64K-Bytes of RAM and ROM space and the good microcontroller library.
    UMPS include an integrated universal assembler/disassembler but is able to use external assembler and compiler and to show source code and variables. UMPS resources can be simply extended if you do not find the external resource you need. There is a complete documentation and example to write your own resources in « C » or « PASCAL » language.
    There is already two libraries which allows UMPS to use external compiler/assembler instead of its own integrated assembler:

Why use UMPS ?

    The benefit of using UMPS is its ability to replace external circuitry and thereby SAVE YOU MONEY.
    UMPS provides all the facilities other low-cost simulator does not have.
    It offers the user to see the "real effect" of a program and a way to change the microcontroller family without changing IDE.
      - How to evaluate a program solution, why choose a PIC instead of a 8031 or a 68HC11 ?
      - Why my LCD panel does not show the ASCII line I want to display, why the I2C item does not run properly ?
      - Will a 8031 do the mathematical function fast enough ?

    UMPS provides a low-cost solution to these problems. UMPS is really the best solution to your evaluation problem.

    You are French ? pas de problemes,
    une version française existe aussi,
    cliquez ici pour obtenir les pages en français: [FR version]

CPU & Circuitry that UMPS can simulate:

    CPU Target:

    MICROCHIP Microcontroller:

      - PIC12C508, PIC12C509
      - PIC16C52, PIC16C54, PIC16C55, PIC16C56, PIC16C57, PIC16C58
      - PIC16C84, PIC16F84, PIC16F83, PIC16C554, PIC16C556, PIC16C558
      - PIC12C671, PIC12C672
      - PIC16C710, PIC16C71, PIC16C711

    MOTOROLA Microcontroller:
      - 68HC705, 68HC705J1A, 68HC705P9, 68HC705B5, 68HC705B16, 68HC705B32
      - 68HC11

    8051 Compatible Microcontroller:
      - 8031, 8051, 8032, 8052, AT89C1051, AT89C2051, DS80C310, DS80C320

    SGS-THOMSON Microcontroller:
      - ST6210, ST6215, ST6220, ST6225
      - ST6252, ST6253
      - ST6260, ST6262, ST6263, ST6265

    National-Semiconductor Microcontroller:
      - COP820C

    Virtual Circuitry:
    • Switch/Push-button
    • 7 segment LED display
    • Rectangle Generator
    • Digital to Analog Converter
    • Analog to Digital Slider
    • I2C Display (SAA1064)
    • Serial Link (RX/TX)
    • Serial Access PLL (MC145170)
    • External instance connection
    • PWM Indicator/Recorder
    • PWM Converter
    • CD4017, CD4094
    • Led
    • Logical Function (AND,OR,NOT,XOR)
    • Digital Recorder/Player
    • Analog to Digital Converter
    • I2C Clock with RAM (PCF8583)
    • LCD Panel
    • Serial EEPROM (93C06, ..., 93C86)
    • 74LS138, 74LS139
    • 74LS374, 74LS373
    • ... everything (write an appropriate DLL)

UMPS key feature:

    - The speed, UMPS can run as fast as 1/5 the real microcontroller speed. No need to wait 2 days to see the result of a LCD routine access. All the microcontroller parts are simulated, interrupts, communication protocol, parallel handshake, timer and so on.

    - The possibility to build a virtual board on the screen. You can connect a logical analyzer/generator, a LCD panel, a I2C circuit, etc. You can see the result of an access directly on the screen, what are you writing on the I2C EPROM, the result of a LCD command, etc.

    - UMPS show you the result of a « real action » in a real graphical environment, no need to decode, just look at the result.

    - UMPS has an integrated assembler/disassembler and debugger. It is able to accept an external assembler or compiler. It has a text editor which is not limited to 64K-bytes and shows keyword with color. It can also communicate with an external compiler to integrate all the debug facilities you need.

    - UMPS is universal, it can easily be extended to other microcontroller with a library. Ask us for toolkit development.

    - External resource simulation is not limited. It can be extended to your proper needs by writing your own DLL.

    - UMPS allows you to evaluate at the lowest cost the possibility to build a microcontroller project without any cable.

    - UMPS include a complete documentation on each microcontroller which describe special registers and each instruction.

  • Back to Virtual Micro Design Home page
  • Version Française
  • If you have any questions, please send E-mail to

    Copyright © P. TECHER. 1995-1997. All Rights Reserved