home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Monster Media 1994 #1
/
monster.zip
/
monster
/
UTILS2
/
X10XA2.ZIP
/
USAGE.XA
< prev
next >
Wrap
Text File
|
1994-01-15
|
15KB
|
377 lines
DISPLAY ON # ! ! ! ! ! ! DO NOT MODIFY THIS FILE ! ! ! ! ! !
┌───────────────────────────────────────────────────────────────────┐
│ Welcome to the XA Command Interpreter ─ Version 2.1 │
│ Copyright 1991─1994 by Bruce Christensen. All Rights Reserved. │
└───────────────────────────────────────────────────────────────────┘
XA is a versatile command interpreter capable of translating English-like
sentences into commands for the X10 Computer Interface (CP-290). XA can send
direct commands (for example: "PORCH_LIGHT ON"), or utilize the CP-290's
event storage for later execution ("PORCH_LIGHT ON EVERYDAY SUNSET").
XA can read commands directly from the DOS prompt, or read a series of
commands and events from a text file. The former method is useful for
activating modules directly from the keyboard or within a batch file, the
later method is handy for maintaining your CP-290 event schedules.
DOS command line mode: C:\> XA "A1 ON"
or, file mode: C:\> XA f=filename.cmd
Please read the XA User's Guide and Reference manual for full details.
Press the <ESC> key to EXIT this screen and return to DOS, or
Press any other key for ADDITIONAL HIGHTLIGHTS and FEATURES of XA.
pause
XA HIGHLIGHTS
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
XA Version 2.1 includes the following features:
* IF/ELSE conditional programming
* Powerfail Recovery
* Enhanced DATE programming (new EXCEPT token)
* Arithmetic, Logical, Boolean, Assignment OPERATORS
* User-defined VARIABLES
* Automatic EVENT appending to existing schedules
* Support for CP-290 "undocumented" commands ALL_LIGHTS_ON, ALL_UNITS_OFF
* ...plus the standard features like SUNRISE, SUNSET, MONITOR, LOG
and much, much more...
Please read the XA User's Guide and Reference manual for full details.
Press the <ESC> key to EXIT this screen and return to DOS, or
Press any other key for XA's Syntax and Command Line Arguments.
pause
SYNTAX ─ COMMAND LINE ARGUMENTS
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
┌──────────────────────────────────────────────────────────────┐
│ XA [f=filename] [c=comm port] [i=irq] [io=io addr] [-e] │
│ [+l] [+m] [-p] [+p] [+r1] [+r2] [/?] ["commands"...] │
└──────────────────────────────────────────────────────────────┘
where:
f=filename ─ file containing the commands and events
c=comm port ─ selects the serial port used by the CP-290.
i=irq ─ selects a different IRQ interrupt from the default 4.
o=io_addrH ─ selects a different IO address from the default 3F8H.
-e ─ prevents communications to the CP-290.
Please read the XA User's Guide and Reference manual for full details.
Press the <ESC> key to EXIT this screen and return to DOS, or
Press any other key for additional Command Line Arguments.
pause
SYNTAX ─ COMMAND LINE ARGUMENTS (continued)
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
┌──────────────────────────────────────────────────────────────┐
│ XA [f=filename] [c=comm port] [i=irq] [io=io addr] [-e] │
│ [+l] [+m] [-p] [+p] [+r1] [+r2] [/?] ["commands"...] │
└──────────────────────────────────────────────────────────────┘
where:
+l ─ monitors and logs events to file XA.LOG.
+m ─ monitors events as CP-290 executes them.
+p ─ powerfail recovery (parses XACMD file first).
-p ─ powerfail recovery (no command file parsing).
+r1, +r2 ─ creates XA.RPT in two different styles.
/?, /h, /H ─ displays these help screens.
"commands" ─ direct commands or events to be sent to CP-290.
Please read the XA User's Guide and Reference manual for full details.
Press the <ESC> key to EXIT this screen and return to DOS, or
Press any other key for examples of Command Line Arguments.
pause
COMMAND LINE ARGUMENT EXAMPLES
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
* To execute direct commands (note QUOTATION marks):
XA "A1 ON"
* To execute multiple direct commands:
XA "A1 ON" "A1 OFF" "HOUSE B ALL_UNITS_OFF"
* Execute commands from a file, specify COM3, and create report file:
XA c=3 f=XA.CMD +r1
* Send an event to CP-290 for later execution:
XA "PORCH ON SUNSET WEEKDAYS" (Note: PORCH defined as A9 in XA.INI)
Please read the XA User's Guide and Reference manual for full details.
Press the <ESC> key to EXIT this screen and return to DOS, or
Press any other key for TOKEN SYNOPSIS.
pause
TOKEN SYNOPSIS
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
Action tokens
───────────────────────────────────────────────────────────────────────
ON ─ turns ON the specified modules.
OFF ─ turns OFF the specified modules.
{DIM %%} ─ DIM to a % (percentage) level of brightness.
{ALL_UNITS_OFF HOUSE x}
─ turns OFF all modules on selected HOUSEcode.
{ALL_LIGHTS_ON HOUSE x}
─ turns ON all lamp/wallswitch modules on selected HOUSEcode.
Module address tokens
───────────────────────────────────────────────────────────────────────
A1...P16 ─ HOUSE UNIT combined
{HOUSE x} ─ module HOUSEcode A...P
{UNIT z} ─ module UNITcode 1...16, ALL
Powerfail Recovery module status overrides
───────────────────────────────────────────────────────────────────────
{IGNORE HOUSE UNIT} ─ Leave module in its present state
{FORCE HOUSE-UNIT action} ─ Force module to ON, OFF, DIM state
pause
Coordinate tokens
───────────────────────────────────────────────────────────────────────
{LATITUDE dms} ─ your LATITUDE in Degrees and Minutes
{LONGITUDE dms} ─ your LONGITUDE in Degrees and Minutes
{TIMEZONE x} ─ your TIMEZONE (Standard/Daylight Savings)
DST ─ Automatic Daylight Savings adjustments
Clock tokens
───────────────────────────────────────────────────────────────────────
{SYNCHRONIZE PC (EXACT)} ─ set PC time based on X10 time
{SYNCHRONIZE X10 (EXACT)} ─ set X10 time based on PC time
Time tokens
───────────────────────────────────────────────────────────────────────
{TIME hh:mm (AM)(PM)} ─ Schedule event time
SUNRISE ─ Calculate time of sunrise
SUNSET ─ Calculate time of sunset
{OFFSET +/-hh:mm} ─ Event occurs +/- 23h59m of prog time
NORMAL ─ Event occurs at specified time
SECURITY ─ Event occurs within the hour
{RANDOM +/-hh:mm} ─ Event occurs within a random offset +/-23h59m.
{NOW hh:mm} ─ Event occurs with respect to current time.
pause
Day tokens
───────────────────────────────────────────────────────────────────────
SUNDAY, SUN ─ Specific day for event to occur
MONDAY, MON ─ "
TUESDAY, TUE ─ "
WEDNESDAY, WED ─ "
THURSDAY, THU ─ "
FRIDAY, FRI ─ "
SATURDAY, SAT ─ "
EVERYDAY ─ Event occurs everyday
TODAY ─ Event occurs once today only
TOMORROW ─ Event occurs once tomorrow only
WEEKDAY, WEEKDAYS ─ Event occurs only on weekdays
WEEKEND, WEEKENDS ─ Event occurs only on weekends
Pre-defined Variables
───────────────────────────────────────────────────────────────────────
CDAY ─ The current day
CTIME ─ The current time
CDATE ─ The current date
pause
Specific Date tokens
───────────────────────────────────────────────────────────────────────
{DATE mm/dd/yyyy}
─ Event occurs on specified date
{DATE mm/dd/yyyy THRU [DATE] mm/dd/yyyy (SUNDAY...SATURDAY)}
─ Event occurs between two dates
{EXCEPT DATE mm/dd/yyyy}
─ Event does NOT occur on specified date
{EXCEPT DATE mm/dd/yyyy THRU [DATE] mm/dd/yyyy (SUNDAY...SATURDAY)}
─ Event does NOT occur between two dates
{DATE mm/dd/yy THRU [DATE] mm/dd/yy EXCEPT DATE mm/dd/yy THRU mm/dd/yy}
─ Special exceptions within a given range.
Communication tokens
───────────────────────────────────────────────────────────────────────
{COMx} ─ send commands via COM1...COM4
{IRQ x} ─ customize IRQ level for port. IRQ 0 invokes "polling".
{IO xH} ─ customize port address (in hex).
pause
Miscellaneous tokens
───────────────────────────────────────────────────────────────────────
{BASECODE x} ─ Change BASECODE to A...P
{DEFINE x z} ─ Substitute string 'x' for 'z'
{XACMD file.cmd} ─ Specify default command file.
{INCLUDE filenme} ─ Specify another file to parse.
{CLEAR EVENT xxx} ─ Clear event xxx from CP-290 memory
{EVENT xxx} ─ Place event xxx in a known location of CP-290 memory
{DOS command} ─ Shell to DOS
{DISPLAY ON/OFF} ─ Turn XA output display on or off.
BEEP ─ Causes PC speaker to beep.
ERASE ─ Erase ALL events from CP-290 memory
DIAGNOSE - CP-290 performs internal diagnostics.
Reporting tokens
───────────────────────────────────────────────────────────────────────
LOG ─ Append event info to file XA.LOG
MONITOR ─ Watch events as the CP-290 executes them.
REPORT1 ─ Produce report file based on daily events.
REPORT2 ─ Produce report file based on a module by module basis.
pause
Direct Command Control Tokens
───────────────────────────────────────────────────────────────────────
:LABEL ─ Identify an area to "goto/gosub" later.
{GOTO label} ─ Jump to location identified by "label".
{GOSUB label} ─ Execute subroutine identified by "label".
RETURN ─ from subroutine (used with GOSUB).
STOP ─ Force XA to stop execution
:EXIT ─ Special shutdown location jumped to when <ESC> pressed.
{DELAY hh:mm:ss} ─ Wait for time to pass before executing the next cmd.
PAUSE ─ Halt execution of direct commands until key pressed,
then reset internal timer and resume direct commands.
{TIMER hh:mm:s.s}─ Wait until time elapses (relative to the internal timer).
RESET ─ Reset internal timer.
FAST ─ ignore ack message from CP-290, speeds up single cmds.
Conditional Expressions ( ** Registered Version Only ** )
───────────────────────────────────────────────────────────────────────
IF (expression) ─ When expression evaluates TRUE...
statements ...execute the following statements
[ELSE ─ Otherwise...
statements] ...optionally execute the following statements
ENDIF ─ Must always terminate conditonal statements.
pause
Arithmetic Operators ( ** Registered Version Only ** )
───────────────────────────────────────────────────────────────────────
* Multiply A = B * C
/ Divide B = A / C
+ Addition C = A + B
- Subtraction A = C - B
- Unary minus A = -B
Relational Operators ( ** Registered Version Only ** )
───────────────────────────────────────────────────────────────────────
= Assign
< Less than
> Greater than
<= Less than or equal to
<> Not equal to
>= Greater than or equal to
== Equals (not to be confused with '=' assignment operator)
pause
Logical Operators ( ** Registered Version Only ** )
───────────────────────────────────────────────────────────────────────
AND Logical AND
&& Logical AND
OR Logical OR
|| Logical OR
! NOT
┌───────────────────────────────────────────────────────────────────┐
│ A B A AND B A OR B !A │
├───────────────────────────────────────────────────────────────────┤
│ 0 0 0 0 1 │
│ 0 1 0 1 1 │
│ 1 0 0 1 0 │
│ 1 1 1 1 0 │
└───────────────────────────────────────────────────────────────────┘
Truth Table for boolean operators
Bitwise Logical Operators ( ** Registered Version Only ** )
───────────────────────────────────────────────────────────────────────
& Bit "AND"
| Bit "OR"
pause
Screen Color Control
───────────────────────────────────────────────────────────────────────
{VIDEO1 Foreground Background} ─ IF or ELSE evaluates to TRUE
{VIDEO2 Foreground Background} ─ IF or ELSE evaluates to FALSE
{VIDEO3 Foreground Background} ─ Sending DIRECT commands to CP-290
{VIDEO4 Foreground Background} ─ Sending EVENTS to CP-290
{VIDEO5 Foreground Background} ─ Important XA messages
{VIDEO6 Foreground Background} ─ Non Event/Command statements (comments)
where FOREGROUND may be any of the following:
BLACK, BLUE, GREEN, CYAN, RED, MAGENTA, BROWN,
LIGHTGRAY, DARKGRAY, LIGHTBLUE, LIGHTGREEN,
LIGHTCYAN, LIGHTRED, LIGHTMAGENTA, YELLOW, WHITE
and BACKGROUND may be any of the following:
BLACK, BLUE, GREEN, CYAN, RED, MAGENTA, BROWN, LIGHTGRAY
I/O Port Control ( ** Registered Version Only ** )
───────────────────────────────────────────────────────────────────────
{(variable =) INPORT io_port} ─ read status of port
{OUTPORT io_port value} ─ output value to port
pause
┌───────────────────────────────────────────────────────────────────┐
│ SUPPORT SHAREWARE │
│ BECOME A REGISTERED USER │
└───────────────────────────────────────────────────────────────────┘
If you are already a registered user, thanks for your support. If you would
like to become a registered user, please fill out the "REGISTER.TXT" form
included with this package and mail to the address below. You will receive
the latest complete version of XA along with a printed User's Guide.
XA continues to evolve based on suggestions from users. By registering
this software, you will also be able to receive future versions at very
special update prices.
┌────────────────────────────────────────────────────────────────────┐
│ Bruce Christensen CompuServe : 73201,1531 │
│ 6594 Hudson Ave. Prodigy ID : MHNC39A │
│ Mentor, OH. 44060-4545 America On-Line: AuggieBen │
└────────────────────────────────────────────────────────────────────┘
pause