SLCD43, SLCD+, SLCD6 Application Firmware RELEASE NOTES To contact Technical Support please email: techsupport@reachtech.com. VERSION 2.10.0 Production Release (changes since version 2.9.28): -------------------------------------------------------------------------------- - Added debounce functionality to Ocular PCAP. - Added AT050CRC target. - Added scrolling text box commands. - Added timing fix for SGD panels to fix flicker problem. - Fixed bug when using Command CRC with DRAW RECTANGLE command. - Backed out part of fix in version 2.9.19 (in RT_macros.c) that introduced ":macro string too long" error. - Fixed dumpSitronixStatus() to properly display raw controller register information for *pcapstat command. - Fenced out I2C commands with I2C_RW_COMMANDS_FEATURE. Made sure all current SLCD43-based builds have SCROLL_TEXTBOX_FEATURE and I2C_RW_COMMANDS_FEATURE enabled. - Added 10 more 'i' variables. Now range from i0 to i19. - Imported hotspot/button "no beep" feature from SLCD5 code base. - Imported "get ssb" command from SLCD5 code base. - Fixed bug in "k" command when y0 parameter was 0 for the 'd' option - firmware would hang. - Fixed bug with using colons in macro parameters. - Fixed bug with hotspots rotating with *orient command but not the screen contents (hotspots shouldn't rotate). - Added "all" and range options to xe and xd commands. - Fixed bug with cdb not allowing chart to be drawn at far right-hand side or at bottom (off-by-one calc error). - Fixed bug with button text being drawn in slightly wrong color. - Fixed bug where macros with 'empty' labels would "fall through" into subsequent labels. - Fixed bug where control-port autoswitch didn't work when module was running a looping macro. - Added support for Optrex LED panel (T-55265GD057J-LW-ACN). - Fixed bug where 'tf' command was sometimes showing text with incorrect colors. - Added *aptnb command ("allow previous touch, no beep") - button redefined on press now sees the release of the new button, but without 'beep' on redefine as in the *apt command. - Fixed *sdelim command to print current setting when given with no parameters. - Fixed size of 'emi' array in vers command. - Commented-out unreachable 'baudRestore' command, added proper return(0) for invalid baud rate in 'baudTry'. VERSION 2.9.28 Interim Release (changes since version 2.9.15): -------------------------------------------------------------------------------- - Added bbmp binary bmp upload command - Reverted portions of previous bdld changes to revision 2.9.15 to fix bug with uninitialized index value - Fixed handling of 'offset' parameter in bdld for regions 0-3. - Added code in lsmac to prevent printing excessively long strings to catch problems from incorrectly downloaded macros. Ditto for macro execution. - Added support for Ocular PCAP touch panel on Luminex display. Added at043_opcap build targets. - Added support for Sitronix PCAP touch screen. Added at043_spcap build targets. - Fixed bug that caused a failure to use large collections of bitmaps and/or fonts if the combined size was larger than 3meg but less than the 4meg-64k limit *and* no macros were present. - Added support for New Haven Displays with FocalTech PCAP touch panel. Added nhd43_ftpcap build targets. - Added test for frame rate (testing pixel clock indirectly) to set pixel clock correctly for SLCD43H with 66MHz clock. - Added commands i2cr and i2cw commands for host controller to use for I2C commands. - Worked on Sitronix driver to make more reliable and improve performance. VERSION 2.9.15 Interim Release (changes since version 2.9.0): -------------------------------------------------------------------------------- - added support for flash banking; command to set bank is xmb; not volatile for now to avoid EEPROM issue - added new make targets for Innolux 4.3" panel with new SLCD43 board.- fixed Incident #1264 ('w' command doesn't work immediately after a button is touched); problem caused by wvr() using gpTimer, wvr() gets called just before the button's bitmap gets updated. - capturing WIP fixing Defect #420 (Macro Notify query) - capturing changes to optimize updating data blob (only erase and program changed sectors). - implemented Chart Features #182, 184, 185 - added "get" function to "p" command - fixed SGD 3.5" with SLCD+, timing was off by 1 pixel H and V - fixed special debounce handling for sliders; made tracing of touch state machine and/or wvr() optional; each can be separately enabled with its own #define; increased size of trace buffer. - fixed Defect #383: ensured all sscanf()'s use field length limits when scanning into a char buffer; fixed those that didn't. - fixed output formatting to allow field width and precision specifiers to be 2 digits each, 1-79 (80 is buf limit of string vars; need room for \0) See Incident #1024. - added *EEC command to reset all of EEPROM to 0xFF (erased state) - added 'b' parameter to "ain#" commands to output the rx'd data in binary, preceded by a byte indicating the number of data bytes to follow - added build option lb043_emi; turns off U6 osc. and changes pixel clock to 22/2 = 11MHz (22/3=7.3MHz out of spec for LB043). SLCD43 only. - fixed SLCD+ Hitachi 5.7 Portrait HC build. VERSION 2.9.0 Production Release (changes since version 2.8.25): -------------------------------------------------------------------------------- - added variables "e0"-"ef", to access USER EEPROM data locations 0x0-0xF - imported new variable expansion and math processing from SLCD5 - added support for a ":default" label in macros - added support for 3.5" display (SGD35) - added "bcv" command (Binary Chart Value) - added "*speedtest" command - fixed meterDefineBand() to draw full band in background color before drawing initial band - fixed 'xa' command to not generate an error when called with no macro args - fixed "touch on/off" so if a press is held throughout turning touch off, defining buttons, and turning touch back on, the touch will be ignored - fixed "xio" command to work properly with Origin - fixed macro arg bug (parsing quit after finding an empty string given as an arg) - fixed Origin bug in RT_Slider_Setup() - changed "xmc" timeout to 200 seconds (max spec, typical is 40) - changed VT from 325 to 280 for PrimeView and SGD panels VERSION 2.8.25 Interim Release (changes since version 2.8.8): -------------------------------------------------------------------------------- - fixed Defect #354 (*MFGRESET doesn't clear 2nd copy of EEPROM data) - fixed Defect #331 (increase macro arg storage capacity and mod "xa" command to output bytes available if no args) - Removed error for unrecognized Text Mode arg from "t" command, to maintain backwards compatibility - Implemented Feature 157 (allow a break in a chart line when cv is given a minus sign instead of a pen value) - fixed CHART DEFINE to give an error if a pen width is <1, and documented the max number of pens for a chart, the pen width range, and the new chart line-break behavior. - fixed "tm" command not reporting current text mode correctly after it's been changed by a text mode setting given to the "t" command. - fixed "tf" command (removed "tm" command, text mode does not persist after a yield; was always deleting animation 1) - implemented Feature #169 (add special form of xbbs command to allow exceeding min/max briteness limits). - fixed Defect #269 (Commands which only work on uncompressed bitmaps should indicate error) - fixed panel timings for new Kyocera 5.7 QVGA panel (TCG057QV1DB, old is TCG057QV1AB) - imported SLCD5 "typematic" command - fixed Macro Arg Storage assignMacroArgs() to properly reuse a storage slot (was overwriting end of storage) - imported SLCD5 implementation of "sc" - fixed "macro specified by index" case of *comwdt command - implemented "mpush" fixes from SLCD5 ver 1.2.28 code. - fixed DeleteAnimation(); was copying too many bytes and overwriting data past the end of anibuf. - fixed off by one bug in reporting of animation size. - fixed meter, meter with band commands to complain if bitmap is compressed. - fixed "label not found" bug (shows up in Reach Logo Bounce demo and in Fast Drawing demo on SLCD6 PrimeView Portrait) VERSION 2.8.8 (Defects) NA Fixed Incident #485 (unable to set slider to some values within its legal range) NA Fixed Incident #484 (block cursor char missing from some fonts) 343 Fixed Macro Argument processing NA Fixed Macro Arg Storage Management; added smart reuse of released storage VERSION 2.8.3 (Defects) NA Fixed button 0 release bug (release bitmap not drawn) 332 Fixed ("bd" cmd at end of macro label section causes next label to execute too) 286 Fixed (sending a chart values after the screen has been cleared "freezes" the display) NA Fixed "slider demo"; no longer allows brightness to go to 0, which makes screen all black. NA Fixed erase bug introduced in ver 1.2 of the BootLoader (only present in 2.8.0 release). VERSION 2.8.0 (Chronological order. Most recent first) (Features) 94 Added optional index parameter to ls, lsmac, and lsbmp commands. 53 Added error message to *macdebug mode when maximum macro nested calling depth is exceeded. 48 Added "text in a box" mode to "t" command. 105 Added support for anti-aliased fonts (2bpp and 4bpp). NA Added manual section detailing use of variables and formatting them for output. NA Added support for creating a hotspot that returns the absolute and releative X,Y values of the touch. (Defects) 300 Fixed "ss" and "sr" commands to work when used outside a macro. 299 Fixed "anid" command; now stops on given yield point (if present) or immediately (if not present). 249 Fixed touch handling to igore a press that is already present when a touch spot is defined, and to ignore the release that follows. 152 Fixed handling of right edge of strip chart when pen width is greater than 1. 170 Changed *paneladj to report vertical values in lines, not pixels. 114 Fixed handling of indents in "macros.txt" file. 257 Optimized handling of EEPROM data storage update to minimize data loss if power is lost during EEPROM write. 221 Fixed limitation of 3M usable external Flash when 4M parts used; now, all but 64K of the 4M part is usable. 96 Fixed "t" command to properly position the cursor when in Right-Aligned mode. 180 Fixed "out" command to work with "\x00" 182 Fixed "bdc" and "bd" commands to be consistent in expecting 2 bitmaps (one for on state, on for off) and clarified manual. 165 Removed WINDOW SAVE and WINDOW RESTORE commands from SLCD43. 213 Arc and Ellipse commands now properly observe the x,y origin set by the "o" command. NA Fixed DEFINE TOUCH commands so all parameters are reset to defaults at the start of the command. 172 Fixed crash caused by trying to use a slider indicator bitmap that doesn't fit within the slider body bitmap. 181 Fixed TOUCH CALIBRATE command to reset origin to 0,0 before attempting the calibration. 210 Added new chart type to enable defining a STRIP chart that starts drawing on the right edge. 184 Fixed command parsing to handle comments at the end of a macro command line. VERSION 2.7.0 (Chronological order. Most recent first) (Features) 85 Support strip chart type 83 Increase chart pens from 4 to 8 NA CRC for a command string 78 CRC EXTERNAL FLASH (*CEXT) command to get CRC for address range 91 Macros support up to ten parameters 52 Macro control ":LABEL"). This also includes labels used with macros assigned to hotspots/buttons. 93 Simulate touch at current cursor position NA SLCD+ supported. 68 Macro Abort command ("*abt") 67 Variables supported NA Binary Download and Window Restore Rectangle NA drawmode change for debug (d gives current mode) NA Added simple math for macro args e.g. `(`0`+1)` NA Added "*snap" command (Defects) NA Fixed implementation of Feature 85 (stripchart) to properly handle chart background color during left shift when data reaches the right edge of the chart. 151 DISPLAY CLIPPED BITMAP IMAGE (xic) offsets bitmap image with SET ORIGIN command 146 Update copyright to 2009 91 Fixed Fonts "16x32i" and "32x64" have issues with text output NA Changed the way COM3 is initialized so it is active for power-on macro 134 SAVE DRAWING ENVIRONMENT and RESTORE DRAWING ENVIRONMENT commands not macro dependent 143 Panel Adjust command has problems 144 DISPLAY CLIPPED BITMAP IMAGE command incorrectly points to wrong area of source bitmap for non-transparent) 132 TEXT FLASH ENABLE and TEXT FLASH DISABLE issues 135 SLCD RAM size over limit. Customers need to move to new SLCD+ product. 136 Panel is off 2 pixel lines (SLCD with Kyocera LCD). Vertical Non-display Period default needed reduction. NA Fixed vertical shake in HANTRONIX / VBEST QVGA LCD NA Corrected inverter value for TX14D11 (Hitachi) 133 Improve parsing of OUTPUT STRING (MAIN) command 120 Animation disable (anid) not working correctly in a macro 90 LEVELBAR DEFINE/LEVELBAR VALUE commands leave part of bar at highest level NA Found check for presence of the label not correct while macro processing NA Fixed macro name string termination when there is no embedded label NA Fixed parsing of macro name and label in Feature 52 NA Corrected format of error strings NA Error message added if a macro is executed but no commands processed. NA Minor bug fix to "ta" command 85 Slider indicator does not appear after second creation NA Changes to xmp, xme to fix incorrect arge (%x not %lx) issue NA Changed macro args, some buffer changes for better overflow handling, sepate organization of command parser. NA Delivered to Telegra for 8-bit use of Binary Download and Window Restore Rectangle NA 2.6.06 pixel stream command plus kyTft_6 (SLCD6 Kyocera TFT) NA Fixed issues with overflow of 16-bit (integer) multiplication of address offsets for UTF-8 characters NA Fixed temp sensor reading on SLCD43 VERSION 2.6.03 (Defects) 89 SCROLL SCREEN AREA command does not work in Portrait mode. This was found in the SLCD6/Primeview 5.7" product. VERSION 2.6.0 (Features) 11 Display Version should include more information 15 Macros callable by name, and human readable output includes macro names. (Defects) 22 Version of firmware is defined in more than one location. Now only in makefile. 40 "z" command does not clear meter (mv still displays indicator). 44 Macro text argument bugs not handling quoting strings correctly. 58 Slider command (sl) leaves slider control debris for non-equivalent x-y coordinates. 62 Color for rectangle fill in high color does not recognize 24 bit format RRGGBB. 65 Horizontal slider fails at very left edge of BMP. NA Reduced tearing in "xio" command with wait video refresh function. NA Intellidx bug: animation init called AFTER power-on macro, so any animation in that macro gets killed NA Added error messages for meter define arg errors NA Fixed bug in lsmac when external memory not valid NA Added Sharp 4.3" support NA xio spits out error if hi color and bitmap not 16 bit NA Fixed *PONMAC and *DEMOMAC 0 arg works again; added error if macro number invalid; changed PONMAC response to show if copyright on or off NA SLCD6 Block Erase now checks "valid address" for completion. SLCD6 Block Erase returns failure if erase error is detected on part. NA Wait Vertical Refresh now waits for start of visible frame NA reduced stack use for macro name in parse_command by 64 bytes NA error for animation w/o yield NA Last code changes for 2.6.0: xio now works in 8 bit color NA 8 bit uncompressed speedup NA "xbl" command for primeview / hantronix NA Removed "xio" command for SLCD. This was due to differenced in endianess on this processor.