New features in AVR Studio 3.22 =============================== - It is now possible to override the memory settings of a certain device. This is intended for debug builds of projects, which are often larger than the finished project, and may not fit in the actual device. - Version 1.50 of the AVR Assembler has been released and is included in the AVR Studio 3.22 release. The command line in this version has been modified. Type 'avrasm32' on the command line to see an explanation of the command line format. New features in AVR Studio 3.21 =============================== - None. New features in AVR Studio 3.20 =============================== - Support for the STK500 development kit. New features in AVR Studio 3.10 =============================== - Support for the ASIC On-Chip Debug System. - Support for non-emulated external SRAM access for the ICE30/asicICE. - Individually configurable display mode for watches in the watch window. - Simulator support for the ATtiny15 Timer1. Known issues in AVR Studio 3.22 =============================== Issue: The current version of AVR Studio does not read the UBROF8 object file format generated by the IAR ICC Linker. Force the linker tool to generate UBROF6 output. Issue: Lines containg tabs in files compiled with the IAR Assembler or Compiler, will have incorrect source code marking during debugging. This is because of erronous information in the generated object file. Use spaces instead of tabs in the source code. The IAR Embedded Workbench has a setting for this under the Editor section in the Options->Settings menu. Issue: If you load an object file in AVR Studio, and the reset address is beyond the highest program address (e.g. if the BOOTRST fuses are accidentally set to the wrong vector), no dissassembly window appear. This is mainly a problem for the ICE30. Issue: AVR Studio handles the timer "Clear on Compare Match" feature equally for all devices. When using the prescaler, there are some differences in how the actual devices handle this feature. Issue: External Interrupt on "Logical Change on Pin" is not simulated correctly for the devices which supports it. Issue: In the actual devices, several 16- bit IO register pairs share a temporary high-byte register. This is not handled by the AVR Studio simulator. Issue: When printing, the font sizes on the the printed copy are to small. Issue: Double clicking on an apr file, or on an object file in the Windows Explorer, will issue an error message when AVR Studio is started. Issue: When an emulator or the simulator is configured with "Device ATXXXXX with 64K internal SRAM", the simulated XRAM is accessible even if the SRE bit in MCUCR is not enabled. Issue: It is possible to put breakpoints where there is no code. Issue: The EEPROM write operation in AVR Studio does not halt the processor. The real devices are halted for two cycles when a write operation is issued. Issue: The port stimuli files are locked during execution. Issue: The port logging output files are only updated when the project is closed or when the port logging feature is unchecked. Issue: The coff file specification rounds the size of the text (code) segment up to the nearest 4 byte boundary, possibly filling in 0-3 extra 0xFF bytes at the end of the code. This can be critical for CRC checking. Issue: There is no way to initialize unused program memory to a specific value. Issue: When the object file parser cannot locate source files referenced in the object files, it asks for an alternative location. Next time a source file is not found, it does not check this location automatically. Issue: From version 3.10, the object files must contain the full path of the source files to be able to corrrectly map breakpoints between the source code and the program memory. This may be a problem when using the IAR command line compiler, which refers to source files in the object file the same way as the user did on the command line, i.e. with or without the full path. The EWB uses the full path of the source files, thus it is not affected by this issue. Problems fixed in AVR Studio 3.22 ================================= Problem: On object files generated with the 1.41 version of the IAR Compiler, the 'pluss sign' on expandable watches will dissappear. It is still expandable using the keyboard though (right arrow). Fix: This problem has been fixed. Problem: Even if "Break enabled during step over..." in the debug options dialog is checked, AVR Studio does not break at breakpoints set in functions being stepped over or out of. Fix: This problem has been fixed. Problem: ATtiny28, when selected, was configured with a software stack while it is supposed to have a hardware stack. Fix: This problem has been fixed. Problem: When enabling trace in another window than the one which contains the active execution mark, AVR Studio would crash. Fix: This problem has been fixed. Problem: For the 4434 and the 8535, the ADC Convertion Complete interrupt were not executed even though the ADIF flag was set (It was erronously reported as fixed for the 3.10 Beta). Fix: This problem has been fixed. Problem: Having selected 'Use Flash Contents' as the source of programming data in the STK500 dialog in Studio, then reloading the object file, the source of programming data would change to 'Use File'. Fix: This problem has been fixed. Problem: When changing between source-level mode and disassembly mode, the synchronize points ('S' marks) in the trace window could not be updated accordingly until the next debug operation. Fix: When changing to source-level mode, the synchronize points will now reflect the start of each source-level statement. When changing to disassembly mode, the syncronize points will reflect all low-level instructions in the code. Problem: When double-clicking a synchronize point in trace mode, the disassembly view would be cleared or the code marker would indicate the wrong code. Fix: This problem has been fixed. Problem: The vertical scrollbar of the trace window would disappear and re-appear every second the window was resized. Fix: This has been fixed. Problem: The 'Add file to project' dialog was titled 'Open' and it was only possible add one source file at the time to the project with it. Fix: The title of the dialog is now 'Add files'. It is now possible to add multiple files to the project with it. Problem: The 'Open Project' dialog did not remember the last path that was accessed. Fix: This has been improved. Problem: When expanding arrays that contains more than 100 entries in the watch window, a dialog pops up, asking the user if he wants to display all items. Confirming this, only the value of the first 100 entries would be displayed. Problem: On some occations, adding watches to a watch window would cause AVR Studio to crash. Fix: This problem has been fixed. Problem: On some occations, When modifying breakpoints in an AVR Assembler project in AVR Studio, then selecting build and run, the modifications to the breakpoints would be lost. Fix: The breakpoint handling in this situation has been improved. Problem: The ISC2 bit in the MCUCSR register for the ATmega32 IO-view was set up with 0 as IO address. Fix: This has been fixed. Problem: The EICR register was missing from the ATmega103 IO-view configuration. Fix: This has been fixed. Problem: The ADFR bit was missing from the AT90S8535 and AT90S4434 IO-view configuration. Fix: This has been fixed. Problem: The tab order of some of the dialogs in AVR Studio (e.g. the 'Create Project' dialog) was not in a logical sequence. Fix: The tab order of these dialogs has been changed to a more logical sequence. Problem: If the path or file name of the assembled file contained more dots ('.') than the one in the extention, the assembler would not generate .obj or .hex output files. Fix: This problem is fixed in AVR Asm 1.50, included in this release. Problem: Intel extended hex files were not generated correctly above the 64K boundary by the AVR Studio assembler. Fix: This problem is fixed in AVRAsm 1.50, included in this release. Problem: The AVR Assembler did not warn the user when erronous use of the .org statement would cause code segments to overlap. Fix: AVRAsm 1.50 now warns the user then code segments overlap. Problem: The AVR Assembler did not generate output files when the source file only contained .dw or .db statements. Fix: This has been fixed in AVRAsm 1.50. Problem: When the offset of RCALL was exactly 0x800 and the wrap relative jump option was activated, a "relative branch out of reach" message was generated. Fix: This problem has been fixed in AVRAsm 1.50. Problem: The AVR Assembler did not generate correct output for code that exceeded 64KB in size. Fix: This problem has been fixed in AVRAsm 1.50. Problem: When using undefined symbols in an .EQU statement, the AVR assembler would treat the symbol as having the value 0, instead of generating an error message. Fix: AVRAsm 1.50 generates a warning message in this situation. Problem: When using floating point numbers in .EQU statements, the AVR assembler would hang. Fix: Floating point numbers are illegal in .EQU statements. The assembler now generates an error message. Problems fixed in AVR Studio 3.21 ================================= Problem: On some occations, when editing a source file in a project, then building by pressing F7, then running by pressing F5, Studio would ask if the project and all source files should be closed. Fix: This has been fixed. Problems fixed in AVR Studio 3.20 ================================= Problem: There has been some reports about rendering of the windows in AVR Studio on Windows 2000/NT systems. Fix: This problem was caused by a font distributed with the installation being erronously installed on Windows 2000 and Windows NT. The problem is fixed in this release. Problem: The instruction NOP displays NOP[][] after the op-code in the trace window. Fix: The trace window now correctly displays the instruction. Problem: The instructions MULS, FMULS, FMULSU, FMUL displayed [][] after the op-code in the trace window. The instructions are displayed for both of the cycles they take to execute. Fix: The trace window now correctly displays the instructions. The instructions are still displayed for both the cycles they take to execute. Problem: When pressing F8 on a selected line to set trace/trig, the set items were not remembered. To be able to start e.g. trace, the user had to first press F8 and OK, then double click the trace icon and set the trace. Fix: This has been fixed, but the current execution point need to be in the same module as of which the tracepoint is set or modified. Problem: Toolbars did fall back to their initial positions when recompiling the project. Fix: This problem has been fixed. Problem: The current directory and the project root path were not remembered correctly in all file dialogs that appear in AVR Studio. This made project management tedious. Fix: This problem has been fixed. Problem: When selecting "Clear all Trace and triggers" from the menu, trace points and trigger points were cleared in the emulator, but not removed from the source window. Fix: This problem has been fixed. Problem: When issuing a debug reset, the I/O view configuration was reset and the bias in the memory view was lost. Fix: This problem has been fixed. Problem: When debugging without a project loaded, opening then closing a memory window would make Studio act anomalous (possibly crash) on the next debug operation. Fix: This problem has been fixed. Problem: The pop-up tip text on some toolbar buttons were erronous, and some tip texts appeared only under certain conditions. Fix: This problem has been fixed. Problem: The port log/stimuli options dialog always presented 4 I/O ports, which are not in accordance with all devices. Fix: This problem has been fixed. Problem: The timer/counter 1 "Clear on Compare Match" feature cleared the timer/counter register on the value OCR1A-1 instead of the value OCR1A. This applied to AT90S8515 and all devices simulated with the same timer/ counter module. Fix: This problem has been fixed. Problem: When a file was opened as read-only (i.e. following the opening of an object file, without a project loaded), it was not possible to copy text from the source window. Fix: This problem has been fixed. Problem: Creation of a new project or a new file promted the user for a project of file name, but the project or file were not automatically saved. Fix: Projects and ext files are now saved automatically upon creation. Problem: Shortcut keys for opening the debug windows did not work when the source window was active. Fix: This problem has been fixed. Problem: When the entry file of an AVR assembly project do not have an extention, the AVR assembler generates output files with errounous extensions. This led to AVR Studio not finding the appropriate object file to load into the debugger. Fix: AVR Studio will no longer permit the setting of a file without extension as the assembler entry file. Problem: In the File Menu -> Up/Download Memories, trying to download Intel Hex files with more than 24 bytes in one data record would make Studio crash. Fix: This problem has been fixed. Problem: In AVR Studio 3.10, loading an Intel Hex file as an object file could in some cases make Studio act anomalious. Fix: This problem has been fixed. Problems fixed in AVR Studio 3.10 ================================= Problem: In a project with multiple source files, there were problems setting breakpoints and trac/triggerpoints in other files than the currently executed module. Fix: The problem has been solved. Note: There is still an issue with the trace/triggersetting having to be set twice to be activated. Problem: In 3.10 Beta, there was problems opening the project settings dialog for an assembler project. Fix: This has been fixed. Problem: Regarding the XRAM access using the ICE30/asicICE, there was problems accessing the memory location 0xffff. Fix: Location 0xffff is now accessible. Problem: It was possible to set/clear breakpoints while running code, but they was not be activated/removed before the execution was stopped and restarted. Fix: It is now not possible to set breakpoint or trig/tracepoints while running code. Problem: Watching the program memory in the memory window, resizing the window then scrolling in it, AVR Studio generated a GPF. Fix: This has been fixed. Problem: Dragging and dropping an item in the IO window, the data of the item would on some occations loos its current value. Fix: The value on an item is now refreshed when it is being dragged. Problem: On the AVR Studio 3.10 beta distribution, a DLL file (msvcirt.dll) which was needed by Studio was not included in the distribution. This would make Studio unable to start on machines without this DLL. Fix: The Studio 3.10 release is not dependant of this file. Problem: On windows NT, installing AVR Studio as an administrator and using it as a common user, there were problems accessing neccessary registry keys (neccessary e.g. to open IO window config. files). Fix: This has been fixed. Problems fixed in AVR Studio 3.10 Beta ====================================== Problem: When forcing the com port for the emulator to a specific port (com port settings in the file menu), AVR Studio would freeze if the emulator was not found at the given port. The settings were also saved in the registry, so subsequent openings before changing the com port settings back would also make AVR Studio freeze. Fix: AVR Studio now detects correctly that an emulator is not attached to the given port, and starts in simulator mode. Problem: For an AVR Assembler project, the AVR Studio simulator would not behave correctly when additional source was included in the assembler entry file using the ".include" statement. Fix: Multiple assembly files can now be included in the assembler entry file. Problem: For all devices, the UART RXC flag was cleared when the RX complete interrupt was executed. Fix: The RXC flag is now cleared by reading the the UART UDR register only. Problem: Adresses for the TOIE2, OCIE2, TOV2 and OCF2 flags for the ATmega161 were incorrect in the IO window. Fix: The addresses for the flags has been corrected. Problem: When changing to disassembly mode for the first time during a debugging session, the cursor was not placed at the current execution point. Fix: The cursor is now set correctly when changing to disassembly mode. Problem: There were some problems editing the X- Y- and Z-pointers in the processor window. Fix: The pointers can now be edited correctly. Uppder bound is the current program memory size. Request: Regarding the IO window configuration for ATmega163 and ATmega32; The mask for the ADC leftadjusted result, low bits should be bits 7, 6, and 5. (Currently only bits 7 and 6). Fix: The mask has been set according to the request. Problem: When reloading a project or a debug session, the display mode settings in the watch window would be lost. Fix: The display mode settings are now correclty serialized. Note that watches display mode is now individually configurable. Problem: When expanding arrays in the watch window, only the first 100 elements in the array would be displayed. Fix: If an array contains more than 100 elements, AVR Studio now asks the user if he wants to display a) all elements, b) the first 100 elements or c) abort the expansion of the array. Problem: When running an AVR Assembler project, .def's and .define's would be possible to monitor in the watch window, but .DEF's and .DEFINE's was not. Fix: It is now possible to monitor also .DEF's and .DEFINE's in the watch Problem: For the AT90S2333 and the AT90S4433, the SPI pins MISO, MOSI, SCK and SS was mapped to the wrong port pins in the simulator. Fix: The SPI pins are now mapped to the correct port poins. Problem: When running on an emulator, it was not possible to edit variables on the C stack in the watch window. Fix: Variables on the stack are now editable also when running the emulators. Problem: For the ICE30, the fuses for ATmega161 were mapped to wrong bits. Fix: Fuses are now mapped to the correct bits. Problem: When recompiling a assembler project, the debugger would start executing code even if there were problems (e.g. the assembler path was not set correctly or compile errors occured) during compilation. Fix: The debugger will now not start until the the code compiles successfully. Problem: When a floating point value was watched in the watch window, it would be rounded to zero below a certain value. Also, large values would be displayed with all digits. Fix: The watch window now toggles to scientific display of floating point numbers when the value is less than 1E-4 or greater than 1E6. Problem: The ATtiny22 was configured with a hardware stack in the AVR Studio simulator. Fix: It is now configured correctly with a software stack. Problem: It was not possible to open text/source files in the AVR Studio environment unless they were part of a project. Fix: It is now possible to open text/source files in AVR even if they are not part of a project. Problem: It was possible to open more than one project at the time in AVR Studio. Multiple projects open at the time would cause problems when trying to run and debug code. Fix: It is now only possible to open one project at the time in AVR Studio. Problem: For the AT90S2313, 4414, 8515, 4434 and the 8535, the ADC Convertion Complete interrupt were not executed even though the ADIF flag was set. Fix: The ADC Convertion Complete interrupt now executes when the ADIF flag is set (and the neccessary conditions are present). Note that the AD Converter is not handled in the simulator, and that the ADIF flag must be manually set to trigger the intrerrupt. Problem: If the assembler entry file in an assembler project did not have an file extention (e.g no .asm) the assembler would generate an object file with a name not expected by the AVR Studio, and hence it could not be found. Fix: AVR Studio can now locate the generated object file successfully. Request: There has been requests for "Save " and "Save All" buttons on the tool bars. Fix: This request has been implemented