The AVR simulator target interface provides access to CrossStudio's AVR simulator. This target interface supports program loading and debugging. The simulator supports the instruction set as defined in the document ATMEL AVR Instruction Set - Rex. 0856B-06/99. Addtionally the simulator will also simulate EEPROM memory access and provides an extension mechanism to enable device simulation using JavaScript.

Target property group
Device Type
The detected type of the currently connected target interface.
Diagnostic property group
Jump Counting Enabled
Enables the simulator to count jump instructions.
Jump Tracing Enabled
Enables the simulator to trace jump instructions.
Memory property group
Default Memory Value
The default byte value that the simulator's data memory is initialized to.
Simulator property group
Data Size
The size (in bytes) of the simulated data memory.
Data Start
The start address of the simulated data memory. Addresses below this are treated as peripheral registers.
Device Name
The name of the simulated device. Changing this will set the other simulator properties on connect.
EECR IO Address
The IO address of the simulated EECR register. The simulated EEDR, EEARL and EEARH registers are located at IO address one, two and three bytes after the simulated EECR register respectively.
EEPROM Size
The size in bytes of the EE memory.
EIND IO Address
The IO address of the simulated EIND register.
Num IV
The number of interrupt vectors to be simulated.
Program Size
The size in bytes of the simulated program memory.
RAMPD IO Address
The IO address of the simulated RAMPD register.
RAMPX IO Address
The IO address of the simulated RAMPX register.
RAMPY IO Address
The IO address of the simulated RAMPY register.
RAMPZ IO Address
The IO address of the simulated RAMPZ register.
SPL IO Address
The IO address of the simulated SPL register. The simulated SPH register is located at the IO address one byte after the simulated SPL register.
SREG IO Address
The IO address of the simulated SREG register.
Peripherals property group
Enable Peripheral File
Enables the Peripheral File property.
Interrupt poll interval
The number of cycles that are executed between checks for an interrupt.
Peripheral File
The file containing the JavaScript peripheral simulation. This file is executed when the simulator is connected to. This file must contain JavaScript functions as specified below.
JavaScript peripheral simulation

The JavaScript file that simulates peripherals must define:

Please refer to the default peripheral simulation file contained in the targets/avrperipherals.js for an example that simulates some Timer0 capabilities.