Listing of Amulet OS changes

Change Log for Amulet OS version 3.3.5
Change Log for Amulet OS version 3.3.4
Change Log for Amulet OS version 3.3.3
Change Log for Amulet OS version 3.3.2
Change Log for Amulet OS version 3.3.1
Change Log for Amulet OS version 3.3
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


Changes for Amulet OS version 3.3.5

New Feature,
Enhancement,
or Bug Fix?

Description

Enhancement

RadioButton attribute "internalNumber" now has a range of 0-255. Range used to be 1-255. 0 is now a valid "internalNumber".

Enhancement

Made the HTMLCompiler and Simulator "Vista Compatible". Previous versions would not work on Windows Vista operating system.

Bug Fix

Absolute positioning <DIV> tags with a border can be used to draw vertical lines (by making the width:1px) anywhere on the display. Horizontal lines worked in previous versions, but vertical lines didn't display correctly.



Changes for Amulet OS version 3.3.4

New Feature,
Enhancement,
or Bug Fix?

Description

Bug Fix

HTMLCompiler can now open a .pdb file that is Read Only.

Bug Fix

Added "pause" as a valid "initialCondition" for animated image objects. It was documented as such earlier, but the HTMLCompiler did not recognize it.

Bug Fix

Fixed bug in sliders that made the handle appear to "teleport" from the top to the bottom if touching the touchpanel near the top edge of the display.

Bug Fix

Fixed bug if using one slider to move another slider's handle. Once the handle was released, the other slider's handle remained grayed out.

Bug Fix

The value 0x7F is now a valid string character to send the Amulet. Although 0x7F is not a valid ASCII character, 0x7F is required to be sent if sending a 0xDF using Amulet's DLE escape byte, which would look like 0x10 0x7F.

Bug Fix

The "hrefOnHitOnly" attribute erroneously only worked on Radio Buttons and Check Boxes if the "initalCondition" attribute was set to "fromInitHref". Now, regardless of the the "initialCondition", "hrefOnHitOnly" will work as expected.

Bug Fix

Strings with upper-ASCII characters using the DLE escape byte (0x10) did not truncate correctly if the string was too long for the given area.

Bug Fix

Strings with upper-ASCII character 0x80 using the DLE escape byte, which would look like 0x10 0x20, did not wrap correctly.

Bug Fix

Fixed bug if "Always Program Settings" checked in the Settings > LCD menu, and the LCD Type is the same as the .ini file already saved in a .uht or .pdb file. Previously, the HTMLCompiler would throw an error when saving or programming either a .uht, .pdb, or .AmuletOS file when the above conditions were met.

Bug Fix

Some characters in some fonts, when placed at the far left pixel, resulted in the character not displaying in the correct place on the display. One specific character that exhibited this behavior was the 'W' in the Arial size 1 font.


Changes for Amulet OS version 3.3.3

New Feature,
Enhancement,
or Bug Fix?

Description

Enhancement

Macro META is now relative to the file it is included in, as opposed to being relative to the main file.

Enhancement

HTMLCompiler can now handle more than one Macro META per project. Macro include files no longer need to reside in the same directory as the calling page.

Enhancement

HTMLCompiler can now compile pages created by Adobe GoLive 6.0 using Layout Grids, which uses absolute positioning.

Enhancement

Added the colon (:) to the list of word separators when dealing with the macro preprocessor. Allows for using Amulet:%macroDef%.value(), where %macroDef% is equivalent to InternalRAM.byte(x) or UART.byte(x).

Enhancement

Added new attribute name for all Control Widgets called seqFuncName. This allows you to use the reset() method on a sequenced function object, which resets the function pointer back to the first function within the sequence. Only applicable if the Control Widget has functions separated by a semi-colon.

Bug Fix

Fixed rounding bug with all ImageBar widgets. Depending upon the number of pixels in the images used and the span between the min and max values, the imageBar could be off by one pixel in either direction.

Bug Fix

When ImageBar widget was given a reappear() method, it would always start out with the empty image. Now upon a reappear() method, the ImageBar widget will display based on the last updated value.

Bug Fix

Fixed bug in the List widget and the previousEntry() and nextEntry() IWC methods. If either of these methods were called multiple times with less than a 450ms delay, some of the method calls might be ignored. Now, no delay is needed in calling previousEntry() or nextEntry().

Bug Fix

Fixed bug with the HTMLCompiler and a special case of META Refresh tags. If the META Refresh used an ONVAR and a TRIGGER and if the URL was a single function using either the setUpdateRate() or setMethod() methods, then either the TRIGGER value would be stored incorrectly if the TRIGGER value was a decimal number or the HTMLCompiler would throw an error if the TRIGGER value was a hex number.

Bug Fix

Fixed bug in NumericField widget. When the min value was non-zero and anything that caused a repaint, such as the reappear() method, was called, the numericField would initially display the wrong value until the next data refresh.

Bug Fix

Fixed potential bug in the soft reset serial command. If any extra bytes were sent to the Amulet immediately following a soft reset serial command, the Amulet would lock up.

Bug Fix

Fixed bug in the UARTDelay META modifier. Instead of adding a 2-3ms interbyte delay between each byte in the message, there was only a 2-3ms delay between the last byte of the incoming message and the first byte of the outgoing message. Now there is a true 2-3ms interbyte delay between each byte of an outgoing message.


Changes for Amulet OS version 3.3.2

New Feature,
Enhancement,
or Bug Fix?

Description

Enhancement

Greatly sped up the word wrap algorithm used by stringFields and button labels.

Enhancement

Made the Numeric Field Widget no longer requires a fixed width font in NumFont. Warnings will now be given if the numbers are not fixed width. A warning will also be given if the negative sign is not the same width as the numbers, but only if the negative sign is actually used.

Enhancement

New auto-baud feature when programming the Amulet module.The HTMLCompiler now will attempt to wake up the Amulet at the user specified baud rate, but if that times out, it will then try all four baud rates to wake up the Amulet.

Enhancement

The HTMLCompiler will now throw an error if the allotted characters in the Numeric Field Widget printf attribute is less than that required by the minFld and maxFld attributes.

Enhancement

Added the hrefOnHitOnly parameter to the slider and Custom Slider widgets.

Enhancement

Deprecated the Amulet META attributes "DRAW=" and "TRANSITION=" and replaced with "BufferFull", "NoClearLCD", and "GrayLCD".

Enhancement

The Amulet META attributes (BufferFull, NoClearLCD, GrayLCD, SlaveNoRsp, SlaveACKRsp, UARTDelay, NullTerminate and BASICStamp) now have dot modifiers of .Project, .Page, and .NotThisPage. This makes it more determinant as to the scope of the META attributes as well as giving you the ability to specify these special attributes on a per page basis if needed. Example usage: BufferFull.Project

Enhancement

The Amulet META attributes of TimeOut= and Baud= now have dot modifiers of .Project and .Page, thus allowing you to specify the timeOut and Baud on a per page basis, if need. Example usage: TimeOut.Page=0.3

Bug Fix

Fixed alignment issues when non-breaking spaces (0xA0) are sent to a stringField via the serial link.

Bug Fix

Fixed bug in Numeric Field Widget when dealing with floating point numbers used as the minFld and maxFld. It was an intermittent bug that resulted in the value being displayed being slightly wrong.

Bug Fix

Fixed bug in horizontally sweeping imageBar widgets. When the minimum was hit, the first column of the full image still appeared. And when the maximum was hit, the last column displayed the last column of the empty image.

Bug Fix

Put in check to keep Amulet OS from trying to display a non-valid uHTML page. If the Amulet was sent a "Jump to page" command that resulted in the OS trying to load a non-valid uHTML page, this would have resulted in the OS getting lost and locking up.



Changes for Amulet OS version 3.3.1

New Feature,
Enhancement,
or Bug Fix?

Description

Bug Fix

Fixed bug with background images in table cells that also have align="center" or align="right". Resulted in error -1. Introduced in version 3.3.

Bug Fix

Fixed bug with the stringField Widget. If /n/n was part of the string (dynamic or static), only one linefeed was registered instead of two.



Changes for Amulet OS version 3.3

New Feature,
Enhancement,
or Bug Fix?

Description

New Feature

Added support for the <EMBED> tag. Enables the use of include files to ease the duplication of code along multiple HTML pages.

New Feature

Added the <DIV> style attributes (known as CSS), which allows for absolute positioning of any object anywhere on the page.

Enhancement

Added ability to use any font size from 8pt-99pt, both in all widgets and in static text when using the <SPAN> tag. The Amulet Font Converter now saves those files as well.

Enhancement

Fonts can be saved in the root directory or root\Fonts directory as well as the default of the Amulet\Configurations\Fonts directory. Allows for saving fonts specific to a project in that project's directory.

Enhancement

Added a new File menu option called Reload Amulet OS. Loads and programs the current Amulet OS without navigating through the Open menu option.

Enhancement

META Refresh URLs can now use sequenced function calls.

Enhancement

Individual objects can now have their own horizontal alignment within a table cell. Prior to this release all objects within a cell all used the same horizontal alignment as the last object within the cell.

Enhancement

Added ability to save or program project without the large internalRAM.bin file by using the META attribute "noInternalRAM".

Enhancement

Numeric Field Widget now supports inverseStringColor, normalStringColor, and toggleStringColor methods.

Bug Fix

Fixed annoying flicker associated with the Numeric Field when the value has changed, but the resultant numeric display hasn't.

Bug Fix

Added support for Windows 2003 Server OS.

Bug Fix

Amulet Font Converter can now successfully save a single character .amf file.


Changes for Amulet OS version 3.2

New Feature,
Enhancement,
or Bug Fix?

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..



Changes for Amulet OS version 3.1x Build13

New Feature,
Enhancement,
or Bug Fix?

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.



Changes for Amulet OS version 3.1x Build12

New Feature,
Enhancement,
or Bug Fix?

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.



  Changes for Amulet OS version 3.1x Build10

New Feature,
Enhancement,
or Bug Fix?

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.


  Changes for Amulet OS version 3.1x Build9

New Feature,
Enhancement,
or Bug Fix?

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.



  Changes for Amulet OS version 3.1x Build2

New Feature,
Enhancement,
or Bug Fix?

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.



Changes for Amulet OS version 3.1x Build1

New Feature,
Enhancement,
or Bug Fix?

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.



 Changes for Amulet OS version 3.0.4

New Feature,
Enhancement,
or Bug Fix?

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.



 Changes for Amulet OS version 3.0.3

New Feature,
Enhancement,
or Bug Fix?

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.



Changes for Amulet OS version 3.0.1

New Feature,
Enhancement,
or Bug Fix?

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.


 

Changes for Amulet OS version 3.0

New Feature,
Enhancement,
or Bug Fix?

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.



Changes for Amulet OS version 2.1.9

New Feature,
Enhancement,
or Bug Fix?

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.



Changes for Amulet OS version 2.1.8

New Feature,
Enhancement,
or Bug Fix?

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



  Changes for Amulet OS version 2.1.7

New Feature,
Enhancement,
or Bug Fix?

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.



Changes for Amulet OS version 2.1

New Feature,
Enhancement,
or Bug Fix?

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.



Changes for Amulet OS version 2.0

New Feature,
Enhancement,
or Bug Fix?

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.