s51(1) 8051, AVR and Z80 microcontrollers simulator for SDCC.

Other Alias

savr, sz80


s51 [options] filenames
savr [options] filenames
sz80 [options] filenames


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.


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

MCS51 family is simulated bys51.
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.


-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 uCsimto 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.
Prompt will be a null ('\0') character. This feature can be useful for programs which controlls simulator through a pipe.
Verbose mode. The simulator notifies you about some kind of internal actions for example interrupts. Messages are printed on command console.
Print out version number and stop.
Print out types of known CPUs. Names printed out by this option can be used to determine CPU type using -t option.
Print out a short help about the options and stop.


ucSim is distributed under the GNU General Public License.


This manual page was written by Aurelien Jarno <[email protected]>, for the Debian GNU/Linux system (but may be used by others).