Complete Beta Development History

  • fix: (compiler) preprocessor function „defined()“ using library-keyword/identifiers
  • fix: (lavrc.library) asm error „missing label _Conv…toSingle“ and reverse
  • fix: (ide) dokuField copy to clipboard using ctrl-c
  • fix: (ide) lib editor crash by wrong link syntax in doku
  • fix: (ide) Find/Replace window: lost the focus to the editfield if it has changed
  • fix: (ide) Find/Replace window: closed/opened instead of show only when open
  • fix: (ide) Luna Share: message (chat) window: text field lost his focus after send message
  • fix: (ide) Luna Share: drawing/position of progressbar showing account space
  • fix: (ide) Luna Share: display dlcount in user content list
  • fix: (ide) Luna Share: display only the users with public content in the public list
  • fix: (ide) Luna Share: download of public content when logged in
  • add: (ide) Luna Share: moving of user files/folders in the users content list
  • fix: (compiler) crash by incomplete #if constructs
  • fix: (compiler) avr.device returned a wrong double quoted string in constant expressions
  • fix: (compiler) wrong encoding conversion in constant string parsing.
  • fix: (lavrc.library) missed declarations for sptr/eptr values using structure set.
  • fix: (keyMgr.interface) jmp/call atomic mistake in KeyMgr.KeyShortPress(), doku updated.
  • upd: (taskmgr.interface) doku updated
  • upd: (tasktimer.interface) doku updated
  • upd: (twi.interface) doku updated
  • upd: (adc.interface) doku updated
  • chg: (ide) interprocess communication removed (makes multiple instances possible again)
  • chg: (ide) Luna Share enabled - !!test mode!!
  • fix: (compiler) last „fix“ of inline code label localization: undo
  • fix: (lavrc.library) missed declaration for flash-value read using structure set for type longint/int32
  • fix: (ide) find/replace window: redraw of checkbox „replace“
  • fix: (compiler) library inline code: multiple use results in label error
  • chg: (compiler) shift left as inline code instead of sub routine call if optimal choice
  • chg: (ide) Search/Replace Dialog extended - options for floating (always on top) or normal, save position, F3-Key for Next Action
  • chg: (ide) doku renderer optimized (much faster), now usable on slower machines
  • chg: (ide) default doku template for new created libraries
  • fix: (lavrc.library) conversion routine (u)int24 to single wrong label
  • fix: (ide) find/replace dialog - back to the roots and improved (set focus, position, use selected phrase from editfield, ..)
  • fix: (ide) F3 (Find next) menu key command
  • fix: (ide) back switch to own doku renderer (originally for debugging purpose) instead of doku parser and libwebkit (libwebkit under linux not longer required!)
  • fix: (ide:linux) High idle CPU load caused by a bad thread scheduler of the crossDev which the LunaAVR Suite is created by. Replaced by a own scheduler. Reduces the CPU load in idle mode to normal 0-1%. (linux update 1)
  • fix: (compiler constantParser) !!rewritten - possible fail determining arguments!!
  • fix: (compiler constantParser) wrong string value identification
  • fix: (compiler constantParser) function defined() possible wrong result
  • fix: (TaskTimer.interface) wrong string values in error message.
  • fix: (TaskKernel.interface) wrong string values in error message.
  • upd: (ide) doku viewer debug code removed (10 x faster).
  • fix: (compiler) macro processing with named parameters
  • fix: (compiler) wrong extending of byte to int24
  • fix: (compiler) 24 bit constants not loaded correctly
  • fix: (compiler) add/sub operations with mixed data types (outsourced to compiler library)
  • fix: (compiler) corrected type check for constant values
  • fix: (compiler) casting improved
  • fix: (compiler) integer math possible out o range calculation (add, mul) using mixed datatypes
  • fix: (compiler) one of the optimizing pattern possible continuous loop
  • fix: (ide) search/replace of editor for external librarys unusual, reworked
  • fix: (ide) search/replace dialog reworked
  • fix: (ide) library doku editor icons more visibility enabled/disabled
  • fix: (ide) library doku updated for all libraries
  • fix: (ide) library doku syntax higlighter for inline code
  • fix: (compiler) immediate integer math possible wrong calculation with big constant values
  • fix: (compiler) disabled processing in asm optimizer of inline methods from library code
  • chg: (compiler) #includedata (flash) now with optional hard storage address
  • fix: (compiler) immediate integer math possible wrong calculation
  • fix: (ide) documentary editor shows only one time.
  • fix: (compiler) asm error message by 256 byte eeprom object size
  • fix: (compiler) immediate integer math possible wrong calculation
  • chg: (lavrc.library) higher accuracy for floating point math
  • chg: (lavrc.library) delay macro higher accuracy (by uwe)
  • add: (lavrc.library) new controller: attiny441/841, atmega165/325/645/a/pa/v [fuses pending] (by uwe)
  • add: (ide) library documentary now in each library itself! documentary directly editable in the library editor.
  • fix: (lavrc.library) TCNT3, OCR3A/B define was missed
  • fix: (lavrc.library) wrong intVectorSize for atmega controllers (library make fail in the last build)
  • fix: (ide) InterProcessCommunication to open „double clicked“ registered files and prevent double-launch of the application.
  • fix: (ide) library editor name of method parameters not editable under linux.
  • fix: (lavrc.library) macro PortMode for xmega (by horst)
  • fix: (lavrc.library) intVectorSize corrected (by horst)
  • fix: (iGraphics.interface) wrong shared method calls (by horst)
  • fix: (compiler) check for attached library with preprocessor function defined(), e.g. „.if defined(graphics.object)“
  • fix: (compiler) float destination forces now a complete float calculation (like 2014.r2.4)
  • fix: (compiler) store to avr io-ports (e.g. „avr.TCNT1.word = value“) in correct order (high-byte first)
  • fix: (ide) possible crash when closing a project tab
  • fix: (ide) crash when opening a entry in the compiler-library editor
  • fix: (ide) drag & drop of source files and text onto a project
  • fix: (ide,projectmanager) wrong visible textfield elements on linux version
  • chg: (ide,projectmanager) extended auto-complete and instant-source-info.
  • fix: (compiler) possible wrong optimization by compare with zero
  • fix: (compiler) mul with array indexed argument, overwritten argument register
  • fix: (ide,library-editor) no assignment possible for isr properties
  • fix: (ide,library-editor) wrong display of different pages
  • chg: (ide,projectmanager) new element order for avr class, event „Run“ must be the first for valid controller constant values
  • chg: (ide,projectmanager) correct import of objects with space separated statements like „end proc“ and so on.
  • chg: (ide,projectmanager) correct method declaration editing
  • chg: (ide,projectmanager) constant changes can now applied
  • fix: (compiler) double defined string constants in the flash
  • fix: (compiler) wrong calculation immediate math and fmath sub, div with left constant argument
  • fix: (compiler) switch to floating point calculation with immediate math float constant
  • fix: (compiler) timer.xx.value possible asm error message for unknown register
  • fix: (lavrc.library) float-decimal conversion 7 instead of 5 post decimal positions
  • chg: (ide,projectmanager) cut/copy/paste/delete now functional
  • chg: (ide,projectmanager) jump to the affected objects from error log entrys
  • chg: (ide,projectmanager) bug icons for the error-elements
  • fix: (compiler) immediate math with all datatypes
  • fix: (compiler) initialvalue with class propertys
  • chg: (compiler) improved logical scan for return value warning of functions
  • chg: (ide:projectmanager) new functions and context menu for elements (add and delete)
  • chg: (ide:projectmanager) element changes auto-commit
  • chg: (ide:projectmanager) element error check
  • fix: (lavrc.library) Eeprom Write disabled all interrupts after access.
  • fix: (lavrc.library) temporary stack pointer for local space (again) on controllers without GPIOR
  • fix: (compiler) wrong optimizing for a variant of the 16-bit division with 8-bit divisor
  • chg: (ide) project management activated (experimental!)
  • fix: (compiler) struct as parameter with class name e.g. „procedure test(byRef a as avr.mystruct)“
  • fix: (compiler) dataset value false/true: wrong assignment
  • fix: (compiler) data object value (.db,.dw,..) with false/true: wrong error message
  • fix: (compiler) pragma optimizecodeenable/disable worked not properly
  • fix: (compiler) optimization of load/store to same value/port removed (needed for interrupt flag clearance)
  • fix: (compiler) Array element acces (byte) with constant index.
  • add: (compiler) warning and error message if a specified return is missing in a function.
  • upd: (Adc.interface) update by de0508 (uwe)
  • upd: (INTn.interface) update by de0508 (uwe)
  • new: (INTn-tiny84.interface) by de0508 (uwe)
  • fix: (ide) Selection move fails when short mouseclick (block moved to first line).
  • add: (ide) MouseWheel Delta setting for Editfield.
  • chg: (ide) Tokenizing optimized.
  • chg: (ide) Parser editor modified. Token type „command“ now just a list of keywords.
  • chg: (ide) Parser editor now resizeable.
  • chg: (ide) Autocomplete completely reworked, distinguishes between different expression types, selects the correct possible/valid elements for the given expression and more.
  • chg: (ide) SyntaxInfo completely reworked, better syntax information (mouse cursor points to a source element).
  • fix: preprocessor string constant vars failed
  • fix: bit read/write functions for compatibility
  • fix: asr n,bits does not work (error message)
  • fix: asr() does not work (error message)
  • fix: bool operations for compatibility
  • opt: linker processing optimized
  • upd: library INTn (by uwe)
  • add: library INTn-tiny84 (by uwe)
  • fix: wrong sram start address set in startup code (crash)
  • fix: wrong error message „invalid operation for boolean value“ with operators „and“/„or“
  • fix: no match in two of the struct optimizing patterns (was disabled for debug run)
  • fix: void <libraryfunction> - wrong error message „use void instead“
  • fix: shl/shr <structelement> shift - wrong error message
  • fix: controllers original without GPIOR0/1: local stack pointer corruption, sram start was set to the wrong memory address (2 bytes to low)
  • fix: „port.mode output,low“ set the port pins not correct
  • chg: Function default value for returnment removed.
  • add: new optimizing patterns
  • fix: avr.<struct>[.<element>].addr could result in a error message
  • fix: structVar1 = structvar2 (assignment of complete equal type structures) results in error message
  • fix: (compiler) reset command jumped to the wrong start address (bootloaders would not work)
  • fix: (compiler) structure superimposing with class named structures
  • new: (ide) 64 bit launcher application for linux systems
  • fix: (compiler) string elements in structures are not allocated in memory
  • fix: (compiler) Exception OutOfBoundsMemory causes a crash
  • add: (compiler) structure declarations accessible within class name e.g. „dim var as myclass.mystruct“, this makes possible to use any structure declaration within the complete program.
  • del: (compiler) global structures declaration removed (test implementation in the last beta, now obsolete)
  • fix: (compiler) umlauts in file path
  • fix: (compiler) complete sizeof of structures
  • fix: (ide) umlauts in log files, shell outputs and error messages
  • fix: (lcd4.interface) lcd4.text assembler error message
  • fix: (assembler) wrong error message like „<label>,signed“
  • fix: (lavrc.library) ignored stream io redirection (e.g. used from SoftUart).
  • fix: (compiler) wrong error message „sql error“ parsing library elements.
  • add: (compiler) global structures
  • fix: (lavrc.library) wrong type conversion from int8 to boolean value
  • fix: (code optimizer) possible wrong element access with byRef array (byte) and constant index value
  • fix: (code optimizer) improved for math and bit operations
  • fix: format() failed with constants (while Preprocessor processing).
  • fix: Strings in dynamic rather than static structures were placed within the structure.
  • fix: Asm optimization within asm endasm automatically disabled.
  • fix: Unnecessary application of a return parameter variable fixed in methods.
  • add: Implemented Assignment for Luna methods.
  • add: Library instantiable objects implemented (object classes).
  • add: New Pragma OptimizeCodeEnabled/Disabled to manually turn on / off the optimizer for certain areas of code.
  • add: Statement #ide implemented to control the IDE from the source code.
  • chg: Graphics object outsourced as an external library object „Library/Graphics.object“.
  • chg: Memory management revised (stability, error detection).
  • chg: Return objects from methods revised: Detection of all object types and secure return processing (eg, string, memoryblock, library objects, …).
  • chg: Recognition of the referenced object parameters in methods, create an instance and issue a warning if the referenced parameter is simultaneously used as a return parameter. In principle, nonsensical processing, but in individual cases necessary and possible now.
  • chg: Folder „LibraryStd“ contains libraries whose functionalities are automatically included.
  • chg: Standard string functions in module outsourced (LibraryStd).
  • chg: Optimization of the build process (4-6x faster).
  • fix: (compiler) Fehlermeldung bei eeprom object access.
  • fix: (lavrc.library) Atxmega: Fehlende EBI Definitionen nachgetragen (EBIOUT, EVOUTSEL).
  • chg: (lavrc.library) Graphics Objekt erweitert zur Verwendung von Fonts an Flash-Position > 64k
  • add: (compiler) Bits lesen/setzen von Strukturelementen.
  • add: (compiler) InitialValue bei Dimensionierung und Methodenparameter möglich: dim a as byte = 123.
  • add: (compiler) Methoden-Überladen implementiert.