Version 1.50.01 -- Release date 05 JUL 2006
- Added Word (16-bit) variables
- 16-bit pseudo-ports: RBC (SX28/48/52), RCD (SX48/52), RDE (SX48/52)
- Added defined functions (FUNC) to return up to four bytes
- Improved and updated instructions for compatibility with Word variables
- New SX/B instructions
-- Pin commands (SX48/52 only): PULLUP, SCHMITT, CMOS, TLL
-- COMPARE
-- COUNT
-- ON expression GOTO | GOSUB
-- TIMER1 and TIMER2 (SX48/52 only)
-- WDATA directive
Version 1.42.01 -- Release date 17 OCT 2005
- Improved: DATA does not have to appear in listing before it is used
- Improved: __PARAMx storage for SX48/52 during interrupts
-- SX48/52 now has 216 array elements
- Fixed: LOOKUP jump
- Fixed: __REMAINDER for SX18
- Fixed: __PARAMCNT for SX48/52
- Fixed: RETURNINT var for SX48/52
Version 1.42 -- Release date 29 AUG 2005
- Fixed: Error with foo(bar) = SUBROUTINE_NAME
Version 1.41 -- Release date 08 AUG 2005
- Fixed: Error with >> and << operators.
- Fixed: Order of Label/String address values to offset, base
-- now Little Endian
- Improved: Removed redundant instructions from READ.
Version 1.40 -- Release date 03 AUG 2005
- Improved: Baud rate performance for SERIN/SEROUT
- Added: Error raised if SERIN/SEROUT baud rate too high for
target FREQ
- Added: Support for stored and inline strings (see READ)
- Fixed: foo(1) = foo(1) + bar(1).7
- Fixed: foo(1) = foo(1) - bar(1)
- Fixed: bitVar = foo(1).7
- Fixed Error: UNKNOWN COMMAND "LET" when using unknown variable name
- Fixed Error: When unknown variable is used with PAUSEUS
Version 1.31 -- Release date 08 JUL 2005
- Fixed: INTURRUPT and RETURN bug that affected SX48 and SX52
- Removed: MOV W, #0 when RETURN used without value
- Improved: PWM Duration timing accuracy
- Added: Checks FREQ directive against DEVICE setting
Version 1.30 -- Release date 01 JUL 2005
- Added: ID directive
- Added: Subroutines can behave like functions, returning a value directly
to a variable
-- Example: foo = SubName
- PAUSE and PAUSEUS now allow fractional constants
- Allow bitVar = byteVar
-- bitVar = 0 when byteVar = 0;
bitVar = 1 when byteVar <> 0
- Fixed: bitVar = ~bitVar error
Version 1.22 -- Release date 9 MAY 2005
- Documented: DJNZ, and SWAP
- BANK directive updated -- may be used without parameters
- Added: EXIT for FOR...NEXT and DO...LOOP
- Fixed: Run-time error with LOAD
Version 1.21 -- Release date 27 APR 2005
Version 1.20 -- Release date 22 APR 2005
- Improved: SX/B supports all SX micros (SX18, SX20, SX28, SX48, and SX52)
- Added: Subroutine (SUB) declaration simplifies programming
- Added: Code pages handled automatically
- Added: IF...THEN...ELSE...ENDIF
- Added: Commands for Philips I2C® communications
(master only)
- Added: Commands for Dallas/Maxim 1-Wire® communications
- Added: SWAP and DJNZ commands
- Added: BANK support (for SASM) -- simplifies access to non-global
variables
Version 1.2 embodies major structual improvements and simplification over version
1.1, specifically in the area of declared subroutines and the automatic handling
of code pages. Most programs written for version 1.1 will compile without change,
however, it is recommended that these programs be updated to version 1.2
specifications to take full advantage of the SX/B compiler.
Version 1.10 -- Release date 15 DEC 2004
- Allow BRANCH to use @ with Label
- Allow RETURNINT ByteVar
- Added FOR...NEXT overflow checking
- Added NOPRESERVE option to INTERRUPT
- Allows bits to be passed as parameters (sets __PARAMx to 0 or 1)
- Added __RAM() system array (use with '@' RAM addresses)
- Allows computed constants (SASM only, not for SX/B commands)
- Improved timing accuracy of PAUSE, PAUSEUS, PULSIN,
PULSOUT, SERIN, and SEROUT
Version 1.00 -- Release date 01 NOV 2004