Change Log for Amulet OS version 3.2
Change Log for Amulet OS version 3.1x Build13
Change Log for Amulet OS version 3.1x Build12
Change Log for Amulet OS version 3.1x Build10
Change Log for Amulet OS version 3.1x Build9
Change Log for Amulet OS version 3.1x Build2
Change Log for Amulet OS version 3.1x Build1
Change Log for Amulet OS version 3.0.4
Change Log for Amulet OS version 3.0.3
Change
Log for Amulet OS version 3.0.1
Change
Log for Amulet OS version 3.0
Change
Log for Amulet OS version 2.1.9
Change
Log for Amulet OS version 2.1.8
Change
Log for Amulet OS version 2.1.7
Change
Log for Amulet OS version 2.1
Change
Log for Amulet OS version 2.0
New Feature, |
Description |
Bug Fix |
Fixed bug associated with Amulet master messages and time outs. Introduced with Build13 when fixing the bug described below. If no communication from the slave, it was possible to have the Amulet get into a state where it would no longer transmit any further master messages. |
Bug Fix |
Fixed bug with Amulet Font Converter. Some very large font glyphs could be corrupted. Most likely to be found in size 36 fixed width fonts or larger. |
Enhancement |
Added new Function/Custom Button methods buttonDown() and buttonUp() used to change the visual state of a button.. |
New Feature, |
Description |
Bug Fix |
Fixed bug associated with Amulet master messages. There was a race condition that could happen when the transmit buffer wrapped. It caused a single message to not be added to the outgoing buffer, meaning that message would not be transmitted. |
Enhancement |
Added OS support for software controlled contrast and backlight adjustment. |
New Feature, |
Description |
Bug Fix |
Fixed bug with byte and word array serial communications. Introduced in Build 10. |
Bug Fix |
Fixed bug with <B> bold tag when used within a sentence. Introduced in Build 11. |
Bug Fix |
Fixed bug with communications. If erroneous message starting with 0xFF was received by the Amulet, it was possible for the Amulet to get into a condition where it would stop sending master messages. |
Enhancement |
Added quasi-software handshaking using the XON/XOFF opcodes. |
New Feature, |
Description |
Enhancement |
Added TRIGGER.NEQ so META Refresh Objects and Anchors can now trigger on not equal to, as well as equal to, greater than and less than a given value. |
Enhancement |
META Refresh Objects and Anchor trigger values are no longer limited to a byte. Trigger values can now be a byte, word or a value specified by either an InternalRAM byte or word variable. |
Enhancement |
InternalRAM byte variables can now be used as variable indices. For example, the following is now a valid href: Amulet:InternalRAM.string(internalRAM.byte(0)).value(), which will return the value of the Internal RAM string variable specified by the value of Internal RAM byte variable 0. |
Enhancement |
Function and Custom Buttons have a new attribute called dualAction. This allows the button to launch its href function(s) twice, once upon touching the button and again upon releasing the button. |
Enhancement |
Strings can now be sent to the Amulet which contain font style attributes embedded in the string. This allows you to send over a string via the serial port which contains a word or sequence of words which can have a different font style (bold, underline, italic, etc...) than the rest of the string. Styles can also be initialized inside an initInternalRAM file. |
Enhancement |
The HTMLCompiler can now open and program a .pdb file generated by the HTMLCompiler. |
Enhancement |
A new attribute, called enableVertical, has been added to the Line Graph Widget. If set to true, then each x-coordinate has two y-coordinates, thus allowing for vertical lines to appear in the Line Graph Widget. |
Bug Fix |
Fixed bug with Amulet Simulator version 3.1x Build 9, which could not open a serial port if running Windows XP. |
New Feature, |
Description |
Enhancement |
Added ability to use a mask to filter an incoming value by using the maskedValue(y) method. |
Enhancement |
New File options in HTMLCompiler. Including Open Last and the saving of the last 5 files opened. New keyboard shortcuts have been added as well. |
Enhancement |
Ability to specify the size of the serial data flash on the Easy GUI module within the HTMLCompiler. |
Enhancement |
Macro preprocessor upgraded to be much more powerful and flexible. |
Enhancement |
Added ability to create a single custom OS file comprised of a raw Amulet OS and a previously saved .uht project file using a .AmuletOS script file. |
Enhancement |
HTMLCompiler now requires a JVM to run. Upgrades can be downloaded with or without the JVM. Now shipping with Sun's 1.4.2_03. Dramatically improves the compile time of HTML projects. |
Enhancement |
Stronger error checking within the HTMLCompiler as far as href functions are concerned. View widgets now must use view widget functions and control widgets must use control widget functions. |
Enhancement |
HTMLCompiler Skin menu item added under Settings. Allows you to change the skin (look and feel) of the HTMLCompiler. |
Bug Fix |
Certain serial ports will send out a bogus byte upon opening. This would cause the Amulet Easy GUI module to not program if in Program Mode. HTMLCompiler now handles the case where the opening of the serial ports sends out a bogus byte. |
Bug Fix |
Lone checkboxes no longer require a groupName. The documentation always said this, but if the groupName was left off, initHref might not work as expected. |
New Feature, |
Description |
Bug Fix |
Fixed bug with dual master communications. Possible to miss Amulet master messages after receiving a master message from the external processor. This was a bug that was introduced in beta version 3.1x Build1. |
New Feature, |
Description |
New Feature |
Added a macro preprocessor to the HTMLCompiler which allows you to use names for your variables used in the href, url or onvar parameters. |
New Feature |
Added Custom Slider Widget, which allows you to specify the images used as the slider "handle", "trackingHandle" and the slider "channel". |
New Feature |
Added Linear Gauge Widget, which is a view widget comprised of a background image and a pointer icon which can travel linearly either horizontally or vertically along the background image, based upon a value returned from a function call. |
New Feature |
Added Line Graph Widget, which is a view widget similar to the Line Plot Widget. But instead of a live graph, the Line Graph is given an array of bytes (or words) and plots the points. |
Enhancement |
Added OR, AND, XOR, MUL and DIV methods for Internal RAM bytes and words. |
Enhancement |
Added stringToByte() and stringToWord() methods for Internal RAM strings. Converts the ASCII string of a decimal number stored in an Internal RAM string to an actual number to be stored in either Internal RAM bytes or words. |
Enhancement |
Added a warning to the HTMLCompiler when a single page of a project gets too large for the Amulet's memory space. If too large, it will run into the InternalRAM string fields, and give you the choice of not using those string variables or making the offending page smaller. |
Enhancement |
Added a warning to the HTMLCompiler when a project has too many files within a project. |
Bug Fix |
Fixed bug in the Numeric Field widget regarding the printf attribute and the use of the '+' or '#' flag used in conjunction with the '0' flag. The 0 padding would erroneously show up prior to the plus sign or the '0x'. |
Bug Fix |
Fixed bug with the Line Plot Widget and the reset() IWC method. The method did nothing when called. |
Bug Fix |
Fixed alignment bug with both the Radio Button Widget and the Check Box Widget. They were erroneously shifted two pixels to the right on left hand aligned images and two pixels to the left on right hand aligned images. The images are now flush with both boundaries. New images have been created in the Configuration/Widgets/RadioButton and Configuration/Widgets/CheckBox folders if the old alignment needs to be preserved. |
Bug Fix |
Fixed bug in HTMLCompiler with single IWC function calls that had a leading space. |
New Feature, |
Description |
Bug Fix |
Fixed bug with multiple hrefs set up in a specific order. Problem occurs when an InvokeRPC(x) or byteOut(x) function precedes an Amulet:UART.type(x).setValue(y) in a multiple href. Results in the UART command being sent as if the function was Amulet:UART.type(0).setValue(y), instead of using the variable number specified by x. |
New Feature, |
Description |
Bug Fix |
Fixed bug with the HTMLCompiler regarding older undocumented nomenclature. Caused the OS to request the wrong variable number. Introduced in version 3.0.1. |
Bug Fix |
Fixed HTMLCompiler to accept the function Amulet:internal.lostCommByte.Value(). Was still looking for old nomenclature of Amulet:internal.lostComm.byteValue(). |
Bug Fix |
Fixed bug with Numeric Field Widget and the waitForInit attribute. If set to true, the Numeric Field wouldn't update if sent a 0x00. As soon as a non-zero number was sent to it, the Numeric Field would start updating. |
Enhancement |
Removed the BASICStamp pages from the EasyAs123 project and added pages for the two new widgets, Dynamic Image Widget and Scribble Widget. |
New Feature, |
Description |
Enhancement |
Added the waitForInit attribute for the Image Sequence Widget. |
Enhancement |
Added ability to use InternalRAM.byte(x) as argument for the byteOut() function. |
Bug Fix |
Fixed bug with the reappear() method when used on the StringField Widget. StringField Widget would only reappear upon a new string being sent to it. |
Bug Fix |
Fixed bug with the fromInitHref attribute for the Check Box Widget. |
Bug Fix |
Fixed bug with the byteOut() function when used as the only Amulet master command. Erroneously had a maximum of 51 bytes that could be sent out. Also, the response to an external processor's master command would have extra bytes appended to it. |
Bug Fix |
Fixed bug with the slaveAckRsp META command. Caused intermittant bugs depending upon the master message being sent to the Amulet. |
Bug Fix |
Changed help documentation regarding the Scribble and Dynamic Image Widgets. The canvas attribute only accepts .gif images, not .jpg. |
New Feature, |
Description |
New Feature |
Added dual port RAM called Amulet Internal RAM, which can be accessed by both Amulet Widgets and an external processor. The RAM has persistence from page to page and can also be saved to the serial data flash. |
New Feature |
Two new methods, setX(x) and setY(x) have been added. Allows for placement of any object or widget anywhere on the LCD at run-time. |
New Feature |
Added a new communications protocol which allows for an external processor to send unsolicited messages to the Amulet. Projects can be set up where the Amulet is the master, where the external processor is the master, or as a dual master system. |
New Feature |
For systems where the Amulet is only a slave, Remote Procedure Calls can be sent to an RPC buffer which can be read by the master via serial requests. |
New Feature |
The Amulet serial command opcodes have changed, but they can be changed by including an initialization file into any project. |
New Feature |
Added Scribble Widget, which allows for freehand drawing. Image data, in the Amulet Bitmap Format, can be transferred to an external processor using an xmodem protocol. |
New Feature |
Added Dynamic Image Widget, which allows for images to be uploaded to the LCD at run-time. |
New Feature |
Graphic primitives can be sent unsolicited to the Amulet. The graphic primitives include line, rectangle, filled rectangle and pixel. |
New Feature |
HTMLCompiler can take a screenshot of any LCD screen on the Amulet. Image saved in .bmp format. Useful for documentation purposes. |
New Feature |
New function added, Amulet:UART.byteOut(x), which allows for sending a single raw byte out the UART. No Amulet command opcodes are sent out and no response is expected. |
New Feature |
New function added, Amulet:SPI(z).byteOut(x), which allows for sending a single byte out on the SPI bus, while holding low the Slave Select line z. |
New Feature |
New function added, Amulet:internal.setCalPOC(). Sets the software calibration bit in the flash memory. Causes Amulet to go into touchscreen calibration mode upon a soft or hard reset, regardless of the state of DIP switch 4. |
New Feature |
Upon loading the Amulet OS Files, touchscreen calibration is required. For applications that do NOT have a touchscreen, a second Amulet OS file is included which does not require the touchscreen calibration. |
New Feature |
Control widgets can have WORDs and STRINGs as intrinsic values in addition to BYTEs. |
New Feature |
Control widgets can now send out setString and setWord messages. |
New Feature |
Added new method, togglePolarity, which toggles the display polarity from positive to negative and vice versa. Result gets saved into flash, so polarity is retained even after power down. |
New Feature |
Added trigger.gt and trigger.lt attributes for Anchors, Area Maps and Meta Refresh Tags. Allows for triggering of function calls based on values being greater than or less than. Adds to the existing trigger attribute, which triggers on a value be equal to. |
New Feature |
Added new method, setTrigger(x), which sets the trigger, trigger.gt or trigger.lt value of an Anchor, Area Map or Meta Refresh Tag. |
New Feature |
Added new function, Amulet:internal.OSVersionString.value() which returns a string of the current Amulet OS version. |
New Feature |
All Widgets/Objects have a new attribute, invisible, which allows them to be invisible at the time of page loading. Being invisible is the same as if the disappear() method was performed on it, and can be made visible by using the reappear() method. |
New Feature |
Added new function, Amulet:fileNumber(x), which allows for hyperlinking to a page within the project using Amulet's internal file number, as opposed to using the name of the html file. |
New Feature |
Added new function, Amulet:internal.fileNumber.value(), which returns Amulet's internal file number. |
New Feature |
HTMLCompiler now generates a link map after saving or programming a project. The resulting .map file has all the files and images used within the project, as well as their sizes and their internal file number. |
New Feature |
Added the setOnVarVariableNumber(x) method, which allows for setting the byte, word or string variable number of the OnVar function within a Meta Refresh Tag. |
New Feature |
Amulet OS now checks the version of the project loaded into its flash. If the version of the HTMLCompiler used to compile the project is different than the version of the Amulet OS, an error screen will show up. |
New Feature |
New Meta tag attributes, nullTerminate, UARTDelay, BASICStamp, slaveAckRsp and slaveNoRsp added to give more control over the Amulet protocol. |
New Feature |
Communication algorithm changed, so time-outs now cause the Amulet to re-send the previous message. After ten attempts, the Amulet will flush its transmit buffer and reset all its UART variables. |
Enhancement |
Communication time-outs on the Amulet side now user defined within the META tag. |
Enhancement |
The Meta tag attribute BasicStamp now makes the Amulet null terminate all messages, so the BASIC Stamp can look for the null termination character. Old style had the Amulet messages all be the same length. Now with the addition of strings, that method is inadequate. |
Enhancement |
Nomenclature of most UART commands has been changed to allow for consistency with Internal RAM variables. The previous nomenclature is still supported by the HTMLCompiler, its just not documented any longer. |
Enhancement |
Images and most widgets will now clip within the LCD region instead of wrapping to the other side of the LCD or even worse, crashing the OS. Becomes useful when using the setX(x) and setY(x) methods. |
Enhancement |
Radio Buttons and Function/Custom Buttons have had their Button Value attributes removed. With the addition of the new nomenclature, there is no need for the attribute, all intrinsic values should be included in the function call itself. |
Enhancement |
The IWC method setUpdateRate() can now be used by Anchors/Area Maps and META refresh tags. |
Enhancement |
The IWC method forceUpdate() can now be used by Anchors/Area Maps and META refresh tags. |
Enhancement |
Slider Widgets have a new parameter minAt. Slider value can increase as handle moves from top-to-bottom, bottom-to-top, left-to-right or right-to-left. |
Enhancement |
HTMLCompiler has a new RS232 setting for the "auto wake-up" baud rate as well as the programming baud rate. This allows you to program your module even if your html pages are setup to communicate at a different baud rate than your programming baud rate, without setting DIP switch 1 to the program mode. |
Enhancement |
Amulet Serial Protocol Simulator can send over "master" messages as well as being the slave to the Amulet. |
Enhancement |
Amulet Serial Protocol Simulator can now send out a line feed (\n) in the middle of strings. |
Enhancement |
Added color attribute to the font tag. Only handles black and white. |
Enhancement |
Added new Slider attribute, hrefEvent. Allows for determining when the href function is sent out, either onChange or onPenUp. |
Enhancement |
StringField Widget can now support user-defined wraps along with auto-wrapping. Earlier versions only supported one or the other, not both. |
Enhancement |
Anchors/Area Maps and Meta Refresh tags can all be use the reappear() and disappear() methods, which make them "hittable" or not. |
Enhancement |
Slider Widget's min attribute value can now be greater than the max attribute value. Uses the minAt attribute. |
Bug Fix |
StringField widgets now have a maximum precision of 250 characters instead of 128. Previous documentation erroneously was stated as 255. |
Bug Fix |
Fixed grouped check box bug. Grouped check boxes didn't send out the OR'ed value of all checked boxes. Instead, they sent out the OR'ed internal number of each checked box. Internal numbers are assigned in the order the check boxes are found in the HTML. |
Bug Fix |
Fixed bug in StringField when user sends a user-defined line feed (0x0A). The height of the StringField needed to be tall enough to handle one line more than was actually used. If not, the Amulet truncated the text at the line feed instead of actually wrapping. |
Bug Fix |
Fixed bug with the Amulet:internal.lostCommByte.value(). Intermittantly would send a word value with improper Most Significant Byte. MSByte should always be 0 since it should only return a byte value. |
Bug Fix |
Meta Refresh Tags can now span multiple lines within the HTML. |
Bug Fix |
HTMLCompiler now throws an error if Bargraph widget is 2 pixels or less in height or width. Prior to this, the HTMLCompiler would allow it, but the OS would crash. |
New Feature, |
Description |
Enhancement |
Added new IWC method forceUpdate() for all View Widgets. Allows for asynchronous updating of View Widgets. |
Bug Fix |
Fixed bug in Numeric Field widget. Could not display any floating point numbers (printf flag %f). Introduced in version 2.1.8. |
New Feature, |
Description |
Bug Fix |
Fixed bug in lineplot widget. If lineWeight>1 potential to crash OS. |
Bug Fix |
Fixed bug in HTMLCompiler when dealing with stringField widgets. HTMLCompiler would give compile time error if the intrinsic value of the string used for the initialCondition was different than the relative position of the string within the options list. |
Bug Fix |
Fixed bug in Numeric Field widget. Could not display negative integers or decimals (printf flags %i or %d). Introduced in version 2.1.7 |
New Feature, |
Description |
New Feature |
Added Amulet Font Converter and the ability to display any TrueType font (HTML sizes 1-7) on the Amulet LCD. |
New Feature |
Added new attribute "font" for all Amulet Widgets that contain font information. |
New Feature |
Added ability to save project as a Palm DataBase file (.pdb). Used with Palm software created by Amulet, allows for programming Amulet flash through a Palm handheld. |
New Feature |
Added ability to change display polarity through the HTML compiler. |
Enhancement |
Much faster programming of Amulet flash. Delay between programming files now down to 10ms. |
Enhancement |
Added Appendix C in the help. Gives a detailed listing of all internal methods for all widgets and objects. |
Enhancement |
Anchors, Area Maps, and META Refresh Tags can now use both the setMethod() and setOnvarMethod() IWC methods to change the method of either the href or the ONVAR attribute. |
Enhancement |
StringField Widget text can now have inverted color. (White on black) |
Enhancement |
Slider Widget can now use setByteValue() IWC method. |
Enhancement |
Radio Button/Check Box widgets can now have a null string as the label. |
Enhancement |
BACKGROUND attribute added to the <TABLE> tag. |
Bug Fix |
Lineplots can now have an "xSamples" value greater than 255. |
Bug Fix |
Fixed intermittant "could not open serial port" error. Would occur in the middle of programming a project into the Amulet flash. |
Bug Fix |
When using Win2000 OS, it is now possible to launch the help through the HTMLCompiler. |
New Feature, |
Description |
New Feature |
Added custom button widget. |
New Feature |
Added ability to drive monochrome displays with resolutions up to 640 x 480. |
New Feature |
A single lineplot widget can now draw multiple plots simultaneously within the same lineplot dimensions. |
New Feature | Custom/function button widgets can be setup to be a spring-loaded button or a toggle button. |
New Feature |
Added ability to make custom/function buttons perform an auto-repeat while keeping the button in the pen down state. |
New Feature |
Custom/function button widgets can now have the button label dynamically entered at runtime by the server. |
New Feature |
StringField and custom/function button widgets now have auto text wrap. User defined wraps can also be specified. |
New Feature |
StringField, numeric field and custom/function button widgets can now horizontally and vertically align their text within their dimensions. |
New Feature |
Added borders around StringField and numeric field widgets. |
New Feature |
Added sequenced function calls. |
Enhancement |
Button labels no longer go beyond the dimensions of the button, any extraneous text will either wrap, if possible, or truncate to fit. |
Enhancement |
Lineplot widget plots can be drawn in one of four patterns. |
Enhancement |
Control widgets can now use the setMethod() method on other control widgets. Version 2.0 only let control widgets use setMethod() on view widgets. |
Bug Fix |
Fixed bug in sliders that have a min attribute greater than zero. If a horizontal slider, it caused slider handle to jump to the right of where the pen down event occurred. If a vertical slider, handle would teleport to the bottom when handle reached the top. Also caused the handle to flicker when all the way at the bottom. |
Bug Fix |
Fixed bug in horizontal sliders that are wider than 256 pixels. Caused slider handle to teleport to the far left when touching to the right of pixel 256. |
Bug Fix |
Fixed bug with view widgets placed in a table within a table. Depending upon the layout of the page, view widget may not have updated. |
Bug Fix |
Fixed bug in HTML Compiler with extra spaces being displayed between words. Caused by the combination within the HTML [text1][space][CR][LF][space][text2]. Browsers disregard the second space. |
Bug Fix |
Fixed bug with image compression. For every 63 consecutive rows, one row would be deleted from the bottom of the image. |
New Feature, |
Description |
New Feature |
Added slider widget. |
New Feature |
Added radio button and check box widgets. |
New Feature |
Made OS hardware constants configurable to different size displays. |
New Feature | Added ability to specify LCD dimensions and refresh rate through the compiler. |
New Feature |
User-defined images can be specified for all three images of the check box and radio button widgets. |
New Feature |
List widget items can now be given user-assigned values. Previously, a list had to begin with a zero (0) value and increase each item value by 1. |
New Feature |
Added href function Amulet:calibrate, which takes you directly to the touchscreen calibration pages. Returns to calling page when successfully calibrated. |
New Feature |
Compiler now supports the BACKGROUND attribute of the <TD> tag, thus allowing background images in individual table cells. |
New Feature |
Added multiple function call capability to Control Widgets (list widgets, slider widgets, radio buttons, checkboxes and function buttons). |
New Feature |
Added StringField widget. |
New Feature |
Added Inter Widget Communication; widgets can now communicate with each other. |
New Feature |
Added the ability to Flash program without changing the "boot mode" DIP switch position. Requires "current page" baud rate to be same as the compiler baud rate. |
New Feature |
Compiler now supports multi-level tables for improved layout capability. |
Enhancement |
All widget href fields can now use any of the available functions. |
Enhancement |
Improved layout ability by adding pixel-by-pixel, X-coordinate control to bitmaps; previously bitmap X-coordinate was rounded-up in 8-pixel increments. |
Enhancement |
Added 16-bit capability to NumericField, Bargraph, Lineplot, Image Sequence, and Image Bar widgets. |
Enhancement |
Anchor and META objects can now specify "request time" for ONVAR function. Previously, only 500 ms was available. |
Enhancement |
Added TRIGGER attribute to Anchor and META objects; thus, adding selectable trigger values to ONVAR attribute. Previously, only 0xff trigger was available. |
Enhancement |
Changed serial protocol command bytes to be non-ASCII. Implemented to support new StringField widget (ability to receive an ASCII string) and differentiate between command bytes and data bytes. |
Enhancement |
Image maps now support ONVAR, ONTIME, TRIGGER and VALUE. |
Enhancement |
Added native support for Animated GIF's; previously required ANIM attribute. |
Enhancement |
Added "depress" or "invert" option to Function Button Widget. |
Bug Fix |
Fixed bug in compiler regarding "ONVAR" for anchors and META REFRESH tags. UART was set up to request the external variable immediately upon loading and then once every 11 minutes, instead of the desired every 500 ms. |
Bug Fix |
Fixed problem with bold and italic in the numeric field widget. Numeric field didn't clear itself correctly, so numbers got mangled. |
Bug Fix |
Fixed bug in text strings that have underline, strikethrough or anchor_underline AND spaces. Spaces were one pixel too large. |