---
name: "ucsim_f8"
section: "1"
platform: "linux"
package: "sdcc-ucsim"
version: "4.5.0+dfsg-1"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/ucsim"
---

# ucsim\_f8(1)

8051, AVR and Z80 microcontrollers simulator for SDCC.

Part of [ucsim(1)](/ucsim/1.md).

## NAME

s51, savr, sz80 - 8051, AVR and Z80 microcontrollers simulator for SDCC.

## SYNOPSIS

**s51** *\[options\] filenames*\
 **savr** *\[options\] filenames*\
 **sz80** *\[options\] filenames*

## WARNING

The information in this man page is an extract from the full documentation of  **SDCC** , and is limited to the meaning of the options.

For complete and current documentation, refer to the **ucSim simulator User Guide** .

## DESCRIPTION

**ucSim**  is a microcontroller simulator. It is extensible to support different microcontroller families.

**MCS51**  family is simulated by**s51** .\
 **AVR**  family is simulated by **savr** .\
 **Z80**  processor is simulated by  **sz80** .

Specified files must be names of Intel hex files. Simulator loads them in  specified order into the ROM of the simulated system.

## OPTIONS

- **-t** *CPU*

  Type of CPU. Recognized types are: 51, 8051, 8751, C51, 80C51, 87C51, 31, 8031, C31, 80C31, 52, 8052, 8752, C52, 80C52, 87C52, 32, 8032, C32, 80C32, 51R, 51RA, 51RB, 51RC, C51R, C51RA, C51RB, C51RC, 89C51R, 251, C251, DS390, DS390F. Note  that recongition of a CPU type as option does not mean that the simulator can  simulate that kind of CPU. Default type is C51. DS390 supports Dallas DS80C390  dual-dptr operations, DS390F supports minimal flat24 mode code and dual-dptr  operations.

- **-X** *freq\[k\|M\]*

  XTAL frequency is  *freq*  Hertz.  **k**  or **M**  can be used to specify frequency in kHZ or MHz. Space is not allowed between the number and the  **k**  or **M** . Default value is 11059200 Hz.

- **-c** *file*

  Open command console on  *file* . Command consoles are on standard input and output by default. Using this option the console can be opened on any file for example on the serial interface of the computer.

- **-Z** *portnum*

  Listen for incoming connections on port  *portnum* . Using this option uCsim can  serve multiple consoles. You can get a console by simply telnet into machine  running  **uCsim** to port  *portnumber* . This option is not available on platforms which doesn't support BSD  networking.

- **-s** *file*

  Connect serial interface of the simulated microcontroller to the  *file* . Nothing is used by default which means that characters transmitted by  serial interface of the simulated microcontroller go to nowhere and it will  never receive anything. If you are going to communicate with serial interface  interactively the best idea is to specify a teminal with  **-s**  option.

- **-S** *in=file,out=file*

  Using this option you can specify different files for input and output streams  that  **uCsim**  uses to simulate microprocessor's serial interface.

- **-p prompt**

  Using this option you can specify any string to be the prompt of command  interpreter, for example:

  ```
  $ s51 -p "s51> "
  ucsim 0.2.12, Copyright (C) 1997 Daniel Drotos, Talker Bt.
  ucsim comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
  This is free software, and you are welcome to redistribute it
  under certain conditions; type `show c' for details.
  s51>
  ```

- **-P**

  Prompt will be a null ('\\0') character. This feature can be useful for  programs which controls simulator through a pipe.

- **-V**

  Verbose mode. The simulator notifies you about some kind of internal actions  for example interrupts. Messages are printed on command console.

- **-v**

  Print out version number and stop.

- **-H**

  Print out types of known CPUs. Names printed out by this option can be used to  determine CPU type using -t option.

- **-h**

  Print out a short help about the options and stop.

## COPYING

ucSim is distributed under the GNU General Public License.

## SEE ALSO

[sdcc(1)](/sdcc/1.md), [s51(1)](/s51/1.md), [savr(1)](/savr/1.md), [sz80(1)](/sz80/1.md).

## AUTHOR

This manual page was written by Aurelien Jarno \<aurel32@debian.org\>, for the Debian GNU/Linux system (but may be used by others).
