.TOPIC:
Contents
──────────────────────────────────────────────────────────┤v1.10
 GENERAL INFORMATION      PROGRAM USAGE       PROGRAM FEATURES
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀│▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀│▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
X-10 Background    │Command Line Args  │Undocumented CP290
CP290 Description  │Communication Ports│Intelligent Edit
CP290 Event Data   │Keyboard Usage     │Start Up Options
CP290 Icon Storage │Menu Bar           │Sun Time Options
X10.DATFile Format │RECYCLE Process    │Screen Colours
X10.EXE Program   │UPLOAD FILE Process│Save Options
X-10 BBS Sources   │Problem Resolution │Help on Help!
Author Information │Compatibility      │
▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄             ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
▌REGISTRATION INFORMATION▐   X10DC   ▌UPGRADE INFORMATION▐
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀   X10WC   ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
.TOPIC:
X-10 Background
────────────────────────────────────────────────────────────────
     The X-10 group manufactures and markets a wide variety of
home automation products that are relatively inexpensive and
easy to install.  The product line consists of 'controllers'
that send signals over existing home wiring to receiver
'modules' that control lights & appliances.
     X-10 technology was developed by a group of engineers in
Glenrothes Scotland, who began designing microelectronic chips
when Large Scale Integrated Circuits were first introduced
commercially in 1969. From 1976 to the present, all X-10 product
design and development has been performed by this same
organization, Pico Electronics Ltd., a subsidiary of X-10 Ltd.
     The first X-10 products were announced in the U.S. on
September 22, 1978. Prior to this introduction, two private
label agreements had already been concluded, one with Sears
Roebuck and the other with Radio Shack. Significant shipments to
Radio Shack and Sears began in 1979.  More recent private label
customers include Stanley Home automation and Heath Zenith.
X-10 Ltd ships to other major customers in addition to X-10
(USA) Inc. including Leviton Manufacturing Co. Inc.
     Prior to July 1, 1984, X-10 products were marketed by BSR,
as a result of a joint venture between the X-10 developers and
BSR International PLC, parent of BSR (USA) Ltd. and BSR Canada
Ltd.  On July 1st, 1984, X-10 (USA) Inc. was established to take
over all North American business activities formerly conducted
by the X-10 division of BSR (USA) Ltd. and BSR Canada. In
November 1987, X-10 Ltd.  acquired BSR's interest in the
company, and is also X-10 (USA)'s parent company.
───────────────────────<End of Topic>───────────────────────────
.TOPIC:
CP290 Description
────────────────────────────────────────────────────────────────
     The CP290 is encased in a white plastic box about 5" wide x
7" deep x 2" high.  There are 8 rocker buttons on the top of the
unit which will send ON/OFF commands to Unit Codes 1-8 of the
Base HouseCode. A red LED flashes when you press the rocker
buttons.  The unit plugs into a 110 volt AC wall outlet and is
also supplied with an interface cable which plugs into the back
of the unit and into a 9 pin serial port.  A micro-computer
communicates with the device via this serial connection.  The
unit also has a 9-volt battery backup that will retain the
information stored within the unit in case of a power failure.
     The serial connection to a micro-computer is only active
when the micro-computer and CP290 are communicating; it can be
disconnected once the CP290 Event Data has been loaded. For
this reason, the CP290 is a good candidate to share a serial
port with another serial device using a switch box.
     The primary purpose of the CP290 is to store a schedule of
events and issue X-10 commands at the scheduled times.  Up to
128 events can be stored within the device.  The CP290 is
supplied with the program X10.EXE that allows the user to
define devices and create a schedule of events. X10.EXE saves
this information each time it is updated to an X10.DAT file.
X10EC is file compatible (see Compatibility Topic) with
X10.EXE since it can read/write X10.DAT files.  This provides
you with the opportunity to experiment with X10EC and fallback
to X10.EXE at any time.
     The CP290 also accepts 'immediate' commands; X10DC sends
its X-10 command directives to the CP290 in this 'immediate'
mode.
───────────────────────<End of Topic>───────────────────────────
.TOPIC:
X10DC
────────────────────────────────────────────────────────────────
                      X10DC ∙ X-10 Direct Control
                            Version 1.60
                       (c) 1993-1995 D.Huras
────────────────────────────────────────────────────────────────
     This program is a real time controller for the X-10 CP290
Computer Interface and uses the same DOS character-based point &
click interface as X10EC.  Immediate commands (including the 5
undocumented commands supported by X10EC) can be sent to any
House/Unit address.  X10DC also supports
 ■ X10.DAT file (Device Descriptions)
 ■ Synchronize CP290/PC Time
 ■ Change Base House Code w/Event Preservation*
 ■ CP290 Diagnostic Self-Test w/Event Preservation*
 ■ Signal Test Generator
 ■ CP290 Transmission Logging
*IMPORTANT NOTE: Version 1.42 and all prior versions of X10DC
will not preserve the Sunrise/Sunset data stored in the CP290 by
X10EC; All later versions of X10DC can optionally preserve this
data.
   X10DC can be registered using
CompuServe Shareware Registration Program ID# 620.
───────────────────────<End of Topic>───────────────────────────
.TOPIC:
X10WC
────────────────────────────────────────────────────────────────
                      X10WC ∙ X-10 Windows Control
                            Version 1.00
                       (c) 1994-1995 D.Huras
────────────────────────────────────────────────────────────────
     This program is a Microsoft Windows program that combines
the features of the X10DC & X10EC DOS programs.  X10WC Version
1.00 is file compatible with X10EC hence X10EC & X10WC can share
the same X10.DAT file.
   X10WC can be registered using
CompuServe Shareware Registration Program ID# 5226.
───────────────────────<End of Topic>───────────────────────────
.TOPIC:
CP290 Event Data
────────────────────────────────────────────────────────────────
     The CP290 will store up to 128 Events.  The following data
is stored for each Event:
   DAY(S) OF WEEK ∙ Monday,Tuesday...
             TIME ∙ Hour & Minute
             MODE ∙ Repeat each week,
                    Repeat each week but randomize time +/- 30
                      minutes (as a security measure)
                    Today ONLY
                    Tomorrow ONLY
        HOUSECODE ∙ eg. A -> P
     UNIT CODE(S) ∙ 1-16
     Events scheduled for TODAY/TOMORROW are cleared from memory
at 4 minutes after midnight on the day they were scheduled.  In
addition to Event Data the CP290 also stores Time of Day, Day of
Week and Base HouseCode. X10EC extends the storage capability of
the CP290 by using the CP290 Icon Storage area.
───────────────────────<End of Topic>───────────────────────────
.TOPIC:
CP290 Icon Storage
────────────────────────────────────────────────────────────────
     The CP290 also has memory set aside for Icon storage.  The
DOS character-based software does not display any graphical
Icons hence this storage area is unused when the CP290 is used
with the X10.EXE program.  X10EC uses this memory area to
store Sunrise/Sunset (see Sun Time Options) information
applicable to the scheduled Events as well as the 'Last Upload'
Date/Time and other information.  Hence, all Event Information
including Sunrise/Sunset Offset information is stored within the
device.  This means whenever you download Event Information from
the CP290 the Sunrise/Sunset offset information is also
downloaded; you do not have to 'match' or 'associate' the
downloaded events with a data file in order to translate the
'Absolute' Time of Day back to a 'Relative' (Sunrise/Sunset +/-
Offset) Time.  This also provides a complete backup to the Event
Information stored in an X10.DAT file.
     You can elect not to use the CP290 Icon Storage area by
unchecking the 'Support Sunrise/Sunset' box on the
Start Up Options screen.
───────────────────────<End of Topic>───────────────────────────
.TOPIC:
X10.DAT
────────────────────────────────────────────────────────────────
     The X10.DAT File Format is used by the X10.EXE program
that is supplied with the CP290 Computer Interface.  If you have
used the X10.EXE program then you will have created an X10.DAT
that contains all of the device definitions (ie.  House Code,
Unit Code, Location, Description) that you 'INSTALL'ed using
X10.EXE.  (The X10.DAT file will store up to 256 device
definitions.) X10EC will read in an X10.DAT file, locate all of
your device definitions, sort them by House & Unit Code and
present them in a scrollable list box in the DEVICES window.
     The X10.DAT file also stores event information; up to 128
events can be stored in the file.  X10EC will read all of the
Events stored within the X10.DAT file and present them in a
scrollable list box in the EVENTS window.  These Events are
displayed in the same order as they are found in the file,
however you can re-sort the Events using one of 3 sort
criteria's supported by X10EC.
     You can also merge Device Descriptions and Events from any
number of X10.DAT files and save them in a single X10.DAT file.
     X10EC 'extends' the X10.DAT file by also storing the
Sunrise/Sunset Offset information within it.  This additional
data is transparent to X10.EXE, however, X10.EXE will
eliminate it from the file if you overwrite the file using
X10.EXE.  (see Compatibility Topic).
───────────────────────<End of Topic>───────────────────────────
.TOPIC:
X10.EXE
────────────────────────────────────────────────────────────────
     X10.EXE is supplied with the X-10 CP290 Computer Interface
and provides a means to define devices and schedule events.
There are a significant number of limitations associated with
X10.EXE that X10EC improves upon, eg:
  ∙ Clumsy FUNCTION key driven Interface - no mouse support
  ∙ EVENTS once scheduled cannot be modified.
  ∙ DEVICES once INSTALL'd cannot be renamed or modified.
  ∙ No facility to view/scroll a complete listing of EVENTS.
  ∙ No control over CP290 Uploads/Downloads
  ∙ EVENTS are tightly coupled with the X10.DAT file; loading
    the wrong X10.DAT file can have unpredictable results.
  ∙ CP290 ICON Storage area is not utilized
  ∙ No support for Sunrise/Sunset Relative Times
  ∙ No support for Undocumented CP290 Commands
  ∙ No support for Last Upload Date/Time
  ∙ No support for EGA/VGA 43/50 line mode
  ∙ Very limited Screen Colour Support
───────────────────────<End of Topic>───────────────────────────
.TOPIC:
X-10 BBS Sources
────────────────────────────────────────────────────────────────
     The following BBS's are primarily dedicated to Home
Automation and are good sources of both X-10 software and
documentation.
 ADVANCED HOME AUTOMATION INC....................905-655-5844
 AUTOMATIC MANSION...............................604-872-8407
 BARAN-HARPER HOME AUTOMATION BBS...905-471-9574/905-471-0469
 HOME AUTOMATION LABS............................404-410-0003
 PRACTICAL HOME AUTOMATION.......................303-680-3864
     There is also a Home Automation section within the Consumer
Electronics:General Forum (CEGENERA) on CompuServe.  If you are
aware of other BBS's that should be included in this list,
please contact the author.
───────────────────────<End of Topic>───────────────────────────
.TOPIC:
Help On Help!
────────────────────────────────────────────────────────────────
Selecting a Help link:
══════════════════════
  Mouse    ∙ Click on phrases outlined by two triangles.
  Keyboard ∙ Press TAB or Shift-TAB to select a link.
             Press ENTER to jump to that topic.
Scrolling the Help window:
══════════════════════════
  Mouse    ∙ Click on the horizontal or vertical scroll bars.
  Keyboard ∙ Press the cursor navigation keys.
Command Buttons:
════════════════
  Mouse    ∙ Click button
  Keyboard ∙ Press key mentioned below.

  CONTENTS ∙ displays a table of contents for the application's
             Help.  Press C to select Contents.
  SEARCH   ∙ opens a dialog box that lists all available Help
             topics.  Select a topic from the list box and press
             ENTER.  Press S to select Search.
  BACK     ∙ jumps to the last Help topic viewed. Press B to
             select Back.
  EXIT     ∙ Closes the Help Window.  Press X to select Exit.
───────────────────────<End of Topic>───────────────────────────
.TOPIC:
Command Line Args
────────────────────────────────────────────────────────────────
The following arguments can be entered in any order:
  /Annnnn ∙ Base I/O Address ..see User Defined CommPort
  /BYD∙ Bypass DEVICE Load (ignore LoadDevices INI directive)
  /BYE∙ Bypass EVENT Load (ignore LoadEvents INI directive)
  /BW ∙ Use Monochrome colours
  /F:[d]\filename ∙ X10.DAT FILE SPECIFICATION
        where [d] = drivespec eg. /F:C:\X10\X10.DAT
        overrides Start Up X10 File
  /Cn ∙ COMMPORT where n = 1,2,3 or 4 [Default: 1]
  /In ∙ IRQ where n=1-15 ...see User Defined CommPort
  /NH ∙ Do Not Load HELP Sub-System
  /NH-∙ Load HELP Sub-System (Override INI directive)
  /RECYCLEnn ∙ Run X10EC in batch mode (see RECYCLE Process)
        where nn = 0 - 99 (Elapsed Days since last RECYCLE)
  /UF:[d]\filename ∙ Clear CP290 Event memory and upload file
        where [d] = drivespec eg. /F:C:\X10\X10.DAT
        (see UPLOAD FILE Process
  /?  ∙ Display Command Line Arguments
■COMMAND LINE OPTIONS OVERRIDE CONTRADICTING X10EC.INI SETTINGS■
───────────────────────<End of Topic>───────────────────────────
.TOPIC:
Communication Ports
────────────────────────────────────────────────────────────────
     X10EC supports "pseudo standard" CommPorts 1 thru 4 using
the following settings:
  ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
  █          │      ├─ Base I/O Addr.──█  FOR PS/2 Settings
  █ CommPort │ IRQ  │ Decimal │  HEX.  █  see PS/2 CommPorts
  █──────────┼──────┼─────────┼────────█
  █    1     │   4  │  1016   │  3F8   █
  █    2     │   3  │   760   │  2F8   █
  █    3     │   4  │  1000   │  3E8   █
  █    4     │   3  │   744   │  2E8   █
  ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
     If one of these CommPort settings matches your hardware
configuration simply select the appropriate CommPort from the
Communications Options screen.  If your hardware configuration
differs from the table above, then can define your own
CommPort;see User Defined CommPort
───────────────────────<End of Topic>───────────────────────────
.TOPIC:
User Defined CommPort
────────────────────────────────────────────────────────────────
     You can define your own CommPort by selecting User Defined
CommPort from the Communications Options screen and setting the
IRQ interrupt and Base I/O Address.  (You could also use the /I
and /A Command Line Args or IRQ= & Base_IO_Address= X10EC.INI
file directives).  IRQ can be set to any value between 1 and 15
(inclusive).  Base I/O Address can be set to any value greater
than zero.  CAUTION: your hardware may "lock up" if incorrect
settings are used.  Once you have enabled communications with
the CP290, then use the 'Save Options' menu item to save the
information to the X10EC.INI file.
■THE BASE I/O ADDRESS MUST BE SPECIFIED IN DECIMAL NOTATION.■
───────────────────────<End of Topic>───────────────────────────
.TOPIC:
PS/2 CommPorts
────────────────────────────────────────────────────────────────
   ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
   █   PS/2   │      ├─ Base I/O Addr.──█ NOTE: A User Defined
   █ CommPort │ IRQ  │ Decimal │  HEX.  █       CommPort must be
   █──────────┼──────┼─────────┼────────█       used for PS/2
   █    1     │   4  │  1016   │  3F8   █       CommPorts 3-8
   █    2     │   3  │   760   │  2F8   █
   █    3     │   3  │ 12832   │ 3220   █
   █    4     │   3  │ 12840   │ 3228   █
   █    5     │   3  │ 16928   │ 4220   █
   █    6     │   3  │ 16936   │ 4228   █
   █    7     │   3  │ 21024   │ 5220   █
   █    8     │   3  │ 21032   │ 5228   █
   ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
───────────────────────<End of Topic>───────────────────────────
.TOPIC:
Keyboard Usage
────────────────────────────────────────────────────────────────
     Use the TAB/Shift-TAB keys to move among the various
controls.  The Up/Down arrows can be used to move up and down
List Boxes; the Spacebar can be used to select the current List
Box item.  The Enter key can be used to check/uncheck a check
box, or invoke a command button.  The ESCAPE key will exit the
current function or the program if no other windows are visible.
Most Command Buttons and controls have quick access keys which
you can identify by the highlighted character in the
button/control name; press the ALT key + the quick access key to
invoke the action.
───────────────────────<End of Topic>───────────────────────────
.TOPIC:
Menu Bar
────────────────────────────────────────────────────────────────
     Press & release the ALT key to activate the Menu Bar.  Menu
items can be selected by pressing the highlighted key (when
applicable), or by positioning the highlight bar using the
up/down arrow keys and pressing ENTER.
Short-cut Keys have been defined for many menu items.
───────────────────────<End of Topic>───────────────────────────
.TOPIC:
Short-cut Keys
────────────────────────────────────────────────────────────────
   *NOTE: This is not a complete list of menu items; only
    menu items with Short-cut Keys are listed here.
─<FILE Menu>─
   Open X10 File
     Retrieve Devices/Events ∙ Ctrl-R
   Save X10 File             ∙ Ctrl-S
   Save X10 File AS          ∙ Ctrl-A
   Print Report
     Print Event Listing     ∙ Ctrl-P
   Unconditional Exit        ∙ Ctrl-Q
   Exit                      ∙ Ctrl-X
─<ACTIONS Menu>─
   Refresh Updated
     Devices Name            ∙ F2
     Event Counts            ∙ F3
   Sort Events By
     Location,Description    ∙ Shift-F1
     Housecode,UnitCode      ∙ Shift-F2
     Day,Time                ∙ Shift-F3
   ReCycle Sun Times         ∙ F4
   Show Sun Times            ∙ Ctrl-T
   Set CP290 Clock
     Enter Time              ∙ Ctrl-K
─<TRANSFER Menu>─
   Upload Events TO CP290
     All Events              ∙ Ctrl-U
─<OPTIONS Menu>─
   Communications            ∙ Ctrl-C
   Display                   ∙ Ctrl-G
   Startup                   ∙ Ctrl-B
   Save Options              ∙ Ctrl-O
─<WINDOW Menu>─
   Devices                   ∙ Ctrl-D
   Events                    ∙ Ctrl-E
   Split
     Horizontal              ∙ Ctrl-H
     Vertical                ∙ Ctrl-V
     Swap                    ∙ Ctrl-W
─<HELP MENU>─
   Help Information          ∙ F1
   About                     ∙ Ctrl-F1
───────────────────────<End of Topic>───────────────────────────
.TOPIC:
RECYCLE Process
────────────────────────────────────────────────────────────────
    The RECYCLE Process runs X10EC in Batch Mode and updates any
Events that have been scheduled with Relative Times (ie.
Sunset/Sunrise +/- Offsets).  You can specify how many days must
elapse between each RECYCLE Process by using the nn parameter
with the /RECYCLE command line argument.  When X10EC encounters
the /RECYCLEnn argument it checks the last run date contained
within the X10EC.LOG file and compares it with today's date; if
the number of days that have elapsed does not exceed nn then the
program will immediately terminate.  To run the RECYCLE Process
unconditionally use the the /RECYCLE0 or /RECYCLE command line
argument.  When the RECYCLE Process is invoked, X10EC will
perform the following steps.
  ∙ Calculate Sunset/Sunrise Times for the upcoming 7 Days
  ∙ Download Event Information from the CP290
  ∙ Download Sunset/Sunrise Offset Information from the CP290
  ∙ Update Events with Sunset/Sunrise relative times
  ∙ Optionally synchronize the CP290 or PC Clock
  ∙ Upload any updated Events to the CP290
  ∙ Backup the old X10EC.LOG to X10EC_B.LOG
  ∙ Log all activity to X10EC.LOG
───────────────────────<End of Topic>───────────────────────────
.TOPIC:
UPLOAD FILE Process
────────────────────────────────────────────────────────────────
     If you simply want to replace the Events Stored within the
CP290 (ie. you may have an X10.DAT file that you use to
randomly turn lights ON & OFF as a security measure while you're
on vacation) then you can use the /UF:[d]\filename command line
argument.  X10EC will perform the following steps:
  ∙ Calculate Sunset/Sunrise Times for the upcoming 7 Days
  ∙ Read Events from X10.DAT filename passed on the command line
  ∙ Update Events with Sunset/Sunrise relative times
  ∙ Optionally synchronize the CP290 or PC Clock
  ∙ Clear the CP290 Event Memory
  ∙ Upload all Events to the CP290
  ∙ Backup the old X10EC.LOG to X10EC_B.LOG
  ∙ Log all activity to X10EC.LOG
───────────────────────<End of Topic>───────────────────────────
.TOPIC:
Problem Resolution
────────────────────────────────────────────────────────────────
     Generally, if your CP290 works with the X-10 supplied
software then you should have no problems running X10EC.  X10EC
has been successfully tested under Microsoft Windows v3.1 and
OS/2 v2.1.  Common problems & solutions are listed below:

Interrupt Conflict
══════════════════
  If you're using a COMMPORT that shares an interrupt with
  another COMMPORT (eg. 1 & 3, 2 & 4), then you must ensure that
  no memory resident software (eg. a FAX TSR) that uses the
  other COMMPORT is loaded as it will not release the
  interrupt.
Serial Mouse Drivers
════════════════════
  If you use a Serial Mouse, this may cause a conflict if X10EC
  attempts to communicate with a CP290 on the same CommPort.
  X10EC will not run properly if it attempts to communicate with
  a COMMPORT that has been initialized with a Mouse Driver (ie.
  you cannot use a switchbox between the CP290 and a Mouse
  unless you reboot without loading the Mouse Driver).
X10EC Encryption
════════════════
  The X10EC executable file is encrypted and there is a remote
  possibility that the decryption process may fail with certain
  processors; a blank screen immediately after attempting to run
  the program typifies this problem.  Please contact the
  author if you encounter this problem.
Clock Refresh Rate
══════════════════
  The clocks are refreshed in the background and the refresh
  process requires serial I/O; if your CP290 is not connected
  or you are using a slow processor the refresh process can
  interrupt the foreground processing to the point where the
  program seems to be unresponsive; if you experience this
  problem then try a Clock Refresh Rate of 0.
CP290 Failure
═════════════
  If you suspect that your CP290 is failing, you should try
  using the diagnostic/debug features provided by X10DC.
X-10 Transmission Collisions
════════════════════════════
  In some cases X10EC may report communication errors (ie.
  time-outs, unmatched checksums, etc).  This may occur when
  scheduled Events collide with CP290 Uploads/Downloads that are
  in progress.  (The CP290 transmits onto the serial port line
  whenever a scheduled event occurs and when you press the
  rocker buttons on the CP290).  X10EC attempts to minimize
  collisions by discarding unexpected serial input, however the
  possibility still exists.  You should just re-invoke the
  interrupted action to recover from this type of problem.
PLEASE REPORT ANY PROBLEMS YOU EXPERIENCE TO THE AUTHOR.
───────────────────────<End of Topic>───────────────────────────
.TOPIC:
Author
────────────────────────────────────────────────────────────────
You can contact the author via Letter Mail, FAX, or E-Mail:
 ┌──────────────────────────┐┌─────────────────────────────────┐
 │ David Huras              ││ FAX: 905-873-6429               │
 │ 37 Ruddell Crescent      ││ CompuServe: 72767,472           │
 │ Georgetown, Ont. L7G 5N4 ││ Internet: david.huras@canrem.com│
 │ CANADA                   ││                                 │
 └──────────────────────────┘└─────────────────────────────────┘
.TOPIC:
Compatibility
────────────────────────────────────────────────────────────────
FILE COMPATIBILITY
══════════════════
  X10.EXE will read and interpret the X10.DAT files created
  by X10EC that include X10EC extensions.  Of course, the
  extensions added by X10EC will be transparent to X10.EXE,
  however, they will be lost if X10.EXE overwrites the file.
  (Extensions include Sunrise/Sunset information and Last Upload
  Date/Time).  For this reason, it is recommended that you
  create an X10.DAT file for the exclusive use of X10.EXE
  rather than sharing X10.DAT files among the two programs.
FREEZE
══════
  X10EC is file compatible with X10.EXE but there are some
  limitations associated with partially 'Frozen' Group Events.
  X10.EXE allows you to partially freeze Group Events, that is
  some units within the group can be frozen whereas other remain
  scheduled Events.  X10EC does not support this level of
  granularity for Frozen Events; it considers any Event either
  Frozen or Thawed (ie. Not Frozen) and this applies to single
  unit Events and multiple unit Events alike.  If a multiple
  unit Event is Frozen by X10EC then all units defined to the
  Event will be Frozen.
───────────────────────<End of Topic>───────────────────────────
.TOPIC:
Undocumented CP290
────────────────────────────────────────────────────────────────
X10EC supports the following undocumented CP290 commands:
   Fade OFF   ■ DIMS Light(s) to 0 then turns Unit(s) OFF
                (Can target multiple units for this command)
   X-Light ON ■ Exclusive Light ON - Issues an ALL LIGHTS OFF
                then Brightens selected Unit(s)
                (Can target multiple units for this command)
   ALL Lights ON  ■ All Lights on selected House Code set ON
   ALL Lights OFF ■ All Lights on selected House Code set OFF
   ALL Units OFF  ■ All Units on selected House Code set OFF
NOTES■Storing Events with these undocumented commands MAY CAUSE
      problems with some CP290 Event Schedulers.  These commands
      will be transparent to X10.EXE; however, X10.EXE can only
      display ON/OFF/DIM.  If X10.EXE encounters one of these
      undocumented commands it will display it as blank.
     ■X-10 Light Switches usually respond to the ALL LIGHTS ON
      command; however, some Lamp Modules appear to ignore it;
      increasing the DIM level when using this command
      occasionally resolves this apparent hardware problem.
───────────────────────<End of Topic>───────────────────────────
.TOPIC:
Intelligent Edit
────────────────────────────────────────────────────────────────
     X10EC offers some degree of referential integrity when
you're editing Device Names:
■ If you modify a Device Address (ie. House and/or Unit Code)
  X10EC can optionally examine all of the scheduled Events and
  update* any that target the Device to reflect the new
  house/unit code.
■ If you Delete a Device Description X10EC can optionally
  examine all of the scheduled Events and purge* any that are
  specifically targetted for the deleted Device.
■ If you change a Device Name; any Events which target the
  Device will be updated to reflect the new Device Name the
  next time the Event list gets focus. (IF AUTOREFRESH Device
  Names is checked - otherwise you can press F2 at any time to
  refresh Device Names).
─────
* Group and Global Events are left intact; only single unit
Events will be purged/modified.
.TOPIC:
Start Up Options
────────────────────────────────────────────────────────────────
DEVICES & EVENTS
════════════════
  The DEVICES Window and EVENTS Window are always opened each
  time you start X10EC.  You can setup X10EC to automatically
  populate these Windows by clicking the appropriate option
  buttons.  The only source to populate the DEVICES Window is an
  X10.DAT file; the EVENTS Window can be populated from either
  an X10.DAT file or a CP290 download.  Only one X10.DAT
  startup file can be identified and it will source both the
  DEVICES Window and the EVENTS Window (if applicable).
CLOCK
═════
  The CP290 or PC Clocks can be synchronized to each other every
  time you upload Events.  To synchronize the CP290 Clock to your
  PC Clock, select 'Sync CP290 on Upload'; this option will
  examine the PC clock and then wait until the seconds are at
  zero before setting the CP290 Clock (the CP290 Clock
  resolution is limited to minutes). If you elect to 'Sync PC
  on Upload' then the PC Clock will be set immediately just
  prior to uploading Events.  You can also bypass all Clock
  Sync'ing by choosing 'Do Not Sychronize'.
GENERAL OPTIONS
═══════════════
  General options can be modified at any time while X10EC is
  executing and the effect will be immediate.
  ■ SUNRISE/SUNSET SUPPORT: Uncheck if you DO NOT want X10EC to
    use the ICON memory area of the CP290.
  ■ LOAD HELP SUBSYSTEM: Uncheck to save memory and speed up
    program load time.
  ■ CONFIRM DELETE REQUESTS: Uncheck to delete without
    confirmation.
  ■ AUTOREFRESH DEVICE NAMES: On slower machines it could become
    a nuisance to wait for the program to refresh the Device
    Names in the EVENT Window whenever a Device Name is
    modified. You may want to Refresh 'ON DEMAND' instead by
    using F2.
  ■ AUTOREFRESH EVENT COUNTS: Uncheck to Refresh 'ON DEMAND'
    (F3).
  ■ SAVE X-10 FILE UPON RECYCLE: The recycle process works
    exclusively with the CP290 (ie. Events are downloaded from
    the CP290, Suntimes are refreshed, and the Events are
    re-uploaded).  Checking this box will instruct X10EC to
    save the recycled Events to the RECYCLE.DAT file.
  ■ CLOCK REFRESH RATE:  The PC Time & CP290 Time are
    displayed in the screen header and can be refreshed
    periodically by setting a refresh rate greater than 0.
    NOTE:
    ════
    THE FIELD WIDTH IS ONLY 1 CHARACTER AND THE COMPILER
    DEFAULTS TO KEYBOARD 'INSERT MODE'; PRESS THE INSERT KEY TO
    TOGGLE THE KEYBOARD TO 'TYPEOVER MODE' TO CHANGE REFRESH
    VALUE.
  ■ LINES PER REPORT PAGE: Valid Range is 10-99.
  ■ PRINT IBM BOX CHARACTERS: If your printer is set up to print
    the IBM ASCII character set you can improve the appearance
    of the DEVICE & EVENT printed reports by checking this box
───────────────────────<End of Topic>───────────────────────────
.TOPIC:
Sun Time Options
────────────────────────────────────────────────────────────────
     This screen under the 'Options' menu allows you to set the
Longitude, Latitude & GMT Offset parameters specific to your
location.  These parameters are used to calculate your local
Sunrise and Sunset times.  The calculated Sunrise/Sunset times
will be accurate to within a minute or two.  Sample Longitude &
Latitude parameters for a limited selection of cities can be set
by using the combo box (click on the down arrow or press F4 to
expand the list box).  THE GMT OFFSET MUST BE EXPLICITLY SET; it
can vary depending on whether Daylight Savings Time is in effect
or not.  eg. for the Eastern Time Zone the GMT Offset is -4 when
Daylight Savings Time is in effect and -5 when it is not.  Check
'Observe DST' to have X10EC automatically vary the GMT Offset
while Daylight Savings Time is in effect [the first Sunday in
April through the last Sunday in October].  When this option is
checked the 'effective' GMT Offset will be displayed below the
checkbox.  When 'Observe DST' is checked the GMT Offset you set
should be for Standard Time since X10EC will adjust it for
Daylight Savings Time.  Note that when X10EC calculates
Sunrise/Sunset times for the next 7 days it will not adjust the
GMT OffSet if Daylight Savings Time begins or ends in the middle
of this period.  It is recommended that you RECYCLE each Sunday
so that your Sunrise/Sunset times are always accurate.
───────────────────────<End of Topic>───────────────────────────
.TOPIC:
Screen Colours
────────────────────────────────────────────────────────────────
     This feature allows the user to choose their own screen
colours.  A list of screen elements is presented on the left
side of the screen and all of the available Foreground and
Background (when applicable) colours are displayed next to the
screen elements.  To change a colour, simply select the screen
element you wish to change and click on the preferred
Foreground/Background colours.  The Colour defaults can be
restored by clicking on the Colour button, similarly Black &
White colours can be selected by clicking on the Monochrome
button.  Note: some colour combinations will render the screen
unreadable, if this happens press the [Esc] key to exit the
dialogue and restore the colours to their previous setting.
Once you are satisfied with your colour selections the
Save Options command can be used to store them so that X10EC
always starts up with your selected colours.
     The colours for message boxes cannot be changed (always
black on white;compiler limitation).
     The Graphic Gauges setting is also set from this screen.
───────────────────────<End of Topic>───────────────────────────
.TOPIC:
Graphic Gauges
────────────────────────────────────────────────────────────────
     The Graphic Gauges checkbox determines whether or not
graphical EGA/VGA characters are used to construct the sliding
percentage complete gauge.  If this causes problems with your
screen display, then uncheck the box; the ASCII character '█'
219 will be used to paint the gauges instead.
───────────────────────<End of Topic>───────────────────────────
.TOPIC:
Save Options
────────────────────────────────────────────────────────────────
     This menu option saves all of the current program settings
to the X10EC.INI file.  If an X10EC.INI file exists, the program
will display a Warning Message and confirm that you wish to
overwrite the existing X10EC.INI file before proceeding.  The
X10EC.INI file that X10EC generates is a plain ASCII file that
you can edit using your favourite editor.  X10EC will notify you
of any errors within the X10EC.INI by displaying the offending
line along with a  message indicating it will be ignored.  Note
that the X10EC.INI file is parsed before command line arguments
and therefore will be overridden by conflicting command line
arguments.
───────────────────────<End of Topic>───────────────────────────
.TOPIC:
REGISTRATION INFORMATION
────────────────────────────────────────────────────────────────
     The registration fee for X10EC is $25. (US Dollars for US
shipping addresses, CDN Dollars for Canadian shipping
addresses).  X10EC is currently supplied as functioning software
without built-in delays or obtrusive "nag" screens prompting you
to register.  The Relative Time feature (ie. Sunrise/Sunset
support) is the only feature not supported in the shareware
version of X10EC.  A SIGNIFICANT amount of time and effort went
into this program; please register the program if you intend to
use it beyond the 30-day evaluation period.  Registered Users
will be shipped a printed manual and a 3.5" diskette (if you
would prefer a 5.25" diskette please advise) containing the
registered version of the program.  Registration Benefits:
■ Full support for the Relative Time feature which allows you
  to schedule Events relative to your local Sunset/Sunrise time
  offset by up to +/- 255 minutes.
■ BONUS PROGRAMS: Registered Users will also receive 2 bonus
  programs:
  1) X10DAT reads an X10.DAT file and prepares a report
     listing all installed devices and scheduled events
     including "frozen" events and multiple unit events.
     See the X10DAT.RPT file for a report sample.
  2) XDC issues immediate X-10 command directives to the
     CP290 directly from the DOS prompt.  Alternatively,
     you can pass a filename to XDC containing 'batched'
     X-10 command directives.  XDC supports the 5
     Undocumented CP290 commands that are supported by
     X10EC & X10DC. See the XDC.DOC file for additonal
     information.
■ DISCOUNTED REGISTRATION FEE for X10DC; X-10 Direct Control.
  Registered Users can register X10DC for $15; the regular
  registration fee is $20.
■ DISCOUNTED REGISTRATION FEE for X10WC; X-10 Windows Control.
  Registered Users can register X10WC for $22; the regular
  registration fee is $32.
     To expedite your registration, you may wish to register
using CompuServe Shareware Registration; you will receive a
Registration Key via CompuServe E-Mail within 1 business day
that will enable the registered program features. (See
CompuServe Shareware Registration.  Alternatively, you can
charge the Registration Fee to your VISA, Master Card, or
American Express.  (See PsL Shareware Registration Program
below).  If you elect to use either of methods your software will
ship within 1 business day.

If you do not wish to
register via CompuServe Shareware Registration
or PsL Shareware Registration Program then complete the order
form in the REGISTER.FRM file and send with your payment to the
author.

───────────────────────<End of Topic>───────────────────────────
.TOPIC:
Compuserve Shareware Registration
────────────────────────────────────────────────────────────────
     You can register X10EC, X10DC or BOTH using CompuServe
Shareware Registration.  The Registration Fee will be charged to
your CompuServe billing account and the latest version of the
software along with a printed User Guide will be shipped within
one business day.  In addition, you will receive a Registration
Key via CompuServe E-Mail (within one business day) that will
immediately allow you to run X10EC with the registered version
features enabled while you wait for your diskette to arrive.  GO
SWREG while on CompuServe to use Shareware Registration.
PROGRAM TITLE         PROGRAM NAME    PROGRAM ID#   CHARGE
═══════════════════   ════════════    ═══════════   ═══════
X-10 Event Control       X10EC            1774       $25.00
X-10 Direct Control     X10DC            620       $20.00

X-10 Control Bundle      X10CB            1775       $40.00
(X10DC + X10EC)

     X-10 Windows Control,X10WC can also be registered using
this method; see X10WC CompuServe Registration
     Shareware Registration (SWREG) will prompt you through the
registration process; you can register programs by referring to
them by program name or ID #.  SWREG will display a description
of the program and prompt you to confirm the registration order;
you have the opportunity to abandon the registration process at
any time.
───────────────────────<End of Topic>───────────────────────────
.TOPIC:
X10WC CompuServe Registration
────────────────────────────────────────────────────────────────
You can also register X10WC using CompuServe Shareware
Registration.  The Registration Fee will be charged to your
CompuServe billing account and a Registration Key File will be
forwarded to you via Compuserve E-Mail within 1 business day.
This Registration Key File will immediately allow you to run
the current and future versions of X10WC with all of the
registered features enabled.  A diskette will NOT be shipped to
you if you elect to register using Compuserve Shareware
Registration, however, once you are a registered user you can
order a diskette upgrade at any time for $2.00; see
DISKETTE.FRM.  GO SWREG to access CompuServe Shareware
Registration.

Program Title          Program Name    Program ID#   Charge
═══════════════════   ════════════    ═══════════   ═══════
X-10 Windows Control      X10WC           5226       $32.00
X10EC -> X10WC Upgrade*   X10EW           5227       $22.00
  -----
* To use the X10EC-> X10WC upgrade you must have registered
  X10EC (or X10CB) using CompuServe Shareware Registration.
───────────────────────<End of Topic>───────────────────────────
.TOPIC:
PsL Shareware Registration Program
────────────────────────────────────────────────────────────────
     Charge the Registration Fee to your Visa, Master Card, or
American Express by ordering X10DC or X10EC (specify Program #
below) from Public (software) Library, call 800-242-4PsL
(713-524-6394 overseas) or FAX your order to 713-524-6398.  PsL
will forward your order to me via Compuserve E-Mail and your
order will be shipped within one business day.  Note, these
phone numbers are for ordering only.  ALL OTHER INQUIRIES (eg.
technical support, volume discounts site licensing) should be
directed to the author.

Program Title         Name  Program #  Charge   Handling  Total
═══════════════════  ══════ ═════════  ══════   ════════ ══════
X-10 Event Control   X10EC   11595     $25.00    $1.00   $26.00
X-10 Direct Control  X10DC   10924     $20.00    $0.00   $20.00
───────────────────────<End of Topic>───────────────────────────
.TOPIC:
UPGRADE INFORMATION
────────────────────────────────────────────────────────────────
QUICK UPGRADE
═════════════
  REGISTERED USERS of prior versions of X10EC can immediately
  run the shareware version of X10EC v1.10 and all future
  shareware versions of X10EC with the registered features
  enabled.  X10EC will look in the current sub-directory for the
  X10EC.KEY file; if the file is found and is valid then X10EC
  will enable all registered program features.  This means you
  can upgrade by downloading the latest shareware version of
  X10EC and ensuring that your X10EC.KEY file resides in the
  same sub-directory.
EXISTING REGISTERED USERS
═════════════════════════
  If you registered a version of X10EC prior to 1.10; then you
  are entitled to an X10EC.KEY file that will enable you to
  immediately use the shareware version of X10EC v1.10 with the
  registered features enabled.  Your X10EC.KEY can be forwarded
  via CompuServe E-Mail, Internet E-Mail, or you can download it
  directly from the author.  Please contact the author via
  E-Mail or FAX to arrange for the delivery of your X10EC.KEY
  file.
DISKETTE UPGRADE
════════════════
 REGISTERED USERS of X10EC can request a diskette containing
 the current version of the software at ANY TIME by
 completing the order form in the DISKETTE.FRM file and
 sending it along with $2 for postage to the author.
───────────────────────<End of Topic>───────────────────────────
.TOPIC:
Special Thanks
────────────────────────────────────────────────────────────────
SPECIAL THANKS to Gary Soles & Douglas Johnson, Beta Testers.
───────────────────────<End of Topic>───────────────────────────
