.TOPIC:
Contents
──────────────────────────────────────────────────────────┤v1.60
 GENERAL INFORMATION      PROGRAM USAGE       PROGRAM FEATURES
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀│▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀│▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
X-10 Background    │Command Line Args  │Undocumented CP290
CP290 Description  │Communication Ports│CP290 Self Test
CP290 Event Data   │Keyboard Usage     │Signal Test
CP290 Icon Data    │Menu Bar           │Transmission Log
X10.DAT File Format│Operating Modes    │Clock Sync'ing
X-10 BBS Sources   │Debug Mode         │Set Base HouseCode
Help on Help!      │Problem Resolution │Screen Colours
Author Information │                     │Save Options
▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄  ╔═══════╗  ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
▌REGISTRATION INFORMATION▐  ║X10EC║  ▌UPGRADE INFORMATION▐
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀  ╚═══════╝  ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
.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 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 will also
accept 'immediate' commands; X10DC sends its X-10 command
directives to the CP290 in this 'immediate' mode.  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 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 a
X10.DAT file.
───────────────────────<End of Topic>───────────────────────────
.TOPIC:
CP290 Event Data
────────────────────────────────────────────────────────────────
     In addition to Time of Day, Day of Week and Base HouseCode,
the CP290 also stores Event Data.  X10DC -=DOES NOT=- manipulate
Event Data, however, it will download/upload the Event Data in
order to preserve it when performing functions which alter or
erase this data (ie. Change Base Housecode,CP290 Self Test).
X10EC (X10 Event Control) a companion program to X10DC
-=DOES=- manipulate Event Data as does X10.EXE, the program
supplied with the CP290.  There are also several other fine
shareware programs which manage 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 (for security reasons)
                    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.
X10EC extends the storage capability of the CP290 by using the
CP290 Icon Data area.
───────────────────────<End of Topic>───────────────────────────
.TOPIC:
CP290 Icon Data
────────────────────────────────────────────────────────────────
     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.  However, X10EC, a companion program
to X10DC does use the ICON storage area to store Sunrise/Sunset
Offset information as well as the 'Last Upload' Date/Time and
other information.  Consequently, if you use X10EC you will want
to be sure the Preserve ICON Data option is toggled on under the
options menu.  This will ensure that the ICON Data is preserved
if you perform a CP290 Self Test or set the Base HouseCode.
───────────────────────<End of Topic>───────────────────────────
.TOPIC:
X10EC
────────────────────────────────────────────────────────────────
                      X10EC ∙ X10 Event Control
                            Version 1.10
                       (c) 1993,1994 D.Huras
────────────────────────────────────────────────────────────────
     This program manages CP290 Event Data including
SUNRISE/SUNSET offsets and uses the same DOS character-based
point & click interface as X10DC.  Distinguishing Features:
   ∙ Supports * 5 * UNDOCUMENTED CP290 Commands
   ∙ Compatible with the X10.DAT file format used by X10.EXE
     (X10.DAT files can be read, created, updated and written)
   ∙ Supports X10.EXE 'Frozen' Events
   ∙ Supports Relative Times (Sunrise/Sunset +/- Offsets)
   ∙ All EVENT information (including Sunrise/Sunset Offsets
     and Last Upload Date/Time) is stored within the CP290
   ∙ Daylight Savings Time Support
   ∙ EVENTS can be programmed without touching the keyboard
     (using a mouse)
   ∙ EVENTS can be sorted using one of 3 sort criterias
   ∙ Program EVENTS from a DEVICE List Window -OR- an EVENT
     List Window
   ∙ 'Intelligent' Edit (referential integrity) automatically
     updates EVENTS when you change a DEVICE House/Unit code
   ∙ Merge Device Descriptions & Events from any number of
     X10.DAT files into one X10.DAT file.
   ∙ Detects and exploits EGA/VGA 43/50 line mode
   ∙ Supports ANY Commport/IRQ/Base IO Address
   X10EC can be registered using
CompuServe Shareware Registration Program ID# 1774.
───────────────────────<End of Topic>───────────────────────────
.TOPIC:
X10.DAT File
────────────────────────────────────────────────────────────────
     The X10.DAT File Format is used by the X10.EXE program that
comes 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.)
X10DC will read in an X10.DAT file, locate all of your device
definitions, and place them in a scrollable list box.  You can
then send commands to these devices.  X10DC will look for an
X10.DAT file in the current directory each time it runs unless
you specify the location with the /F:  command line argument.
You can also explicitly load an X10.DAT file from any
drive/directory by using the 'Load X10 File' menu item (CTRL-L)
when X10DC is running.  The location of the file can then be
saved to an INI file by using the 'Save Options' menu item
(CTRL-O).
     The X10.DAT file also stores event information; up to 128
events can be stored in the file.  See CP290 Event Data.
───────────────────────<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-6776
 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
  /BW ∙ Use Monochrome colours
  /Cn ∙ COMMPORT where n = 1,2,3 or 4
  /D  ∙ TURNS ON DEBUG MODE
        When DEBUG MODE is ON, the CP290 responses &
        checksums are displayed in the Command History List Box.
  /F:[d]\filename ∙ X10.DAT FILE SPECIFICATION for MODE 3
        where [d] = drivespec eg. /F:C:\X10\X10.DAT
  /In ∙ IRQ where n=1-15 ...see User Defined CommPort
  /Mn ∙ MODE where n = 1,2 or 3 ...see Operating Modes
  /NH ∙ Do Not Load HELP Sub-System
  /NH-∙ Load HELP Sub-System (Override INI directive)
  /NS ∙ No Sounds during Signal Test
  /NS-∙ Sounds during Signal Test (Override INI directive)
  /P  ∙ Toggles ON Preserve CP290 Icon Data
DEFAULTS:  If the program is run without any command line
arguments it will default to COMMPORT 1,OPERATING MODE 1,
DEBUG OFF, F:X10.DAT, Preserve ICON Data
NOTES:
1) Most Command Line directives (with the exception
   exception of /A,/I & /NH) can be modified once the
   program loads by selecting the appropriate menu items
   under the Options Menu.  Registered Users can save all
   these settings to the X10DC.INI file by using the 'Save
   Options' menu item.
2) COMMAND LINE OPTIONS OVERRIDE ALL X10DC.INI SETTINGS
───────────────────────<End of Topic>───────────────────────────
.TOPIC:
Communication Ports
────────────────────────────────────────────────────────────────
     X10DC 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= X10DC.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 X10DC.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.
     House Code ∙ Alt-o [Mode 1 & 2]
   Unit Code(s) ∙ Alt-u [Mode 1 & 2]
    Device List ∙ Alt-u [Mode 3]
            ALL ∙ Alt-l [Mode 2]
           NONE ∙ Alt-n [Mode 2]
         Action ∙ Alt-a
     Brightness ∙ Alt-b [when enabled]

          MODE² ∙ Alt-m
           SEND ∙ Alt-s
           EXIT ∙ Alt-x
           HELP ∙ Alt-h

Command History ∙ Alt-c
────
² The MODE Command Button is NOT in the TAB STOP sequence;
  Keyboard users must use ALT+character to access this button.
  (This eliminates extraneous TAB keystrokes)
───────────────────────<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.  Some screen button
functions are replicated within the menus (eg. Exit, Help).
However, there are some functions which are only available from
within menus.  CommPort, Operating Mode, Debug & Sounds can all
be set from the Options Menu; the current state of each of these
parameters is indicated on the menu itself with a '∙' character
to the left of the menu item.

     Short-cut Keys have been defined for many menu items.
───────────────────────<End of Topic>───────────────────────────
.TOPIC:
Short-cut Keys
─<FILE Menu>─
          Load X10 File ∙ Ctrl-L
                   Exit ∙ Ctrl-X (Same as Exit Button, Alt-X)
─<CLOCK Menu>─
           Set PC Clock ∙ Ctrl-T (Enter Time)
        Set CP290 Clock ∙ Ctrl-K (Synchronize w/PC)
         Refresh Clocks ∙ Ctrl-R
     Set Base HouseCode ∙ Ctrl-B (Preserve Events)
─<TEST Menu>─
        CP290 Self Test ∙ Ctrl-E
  Signal Test Generator ∙ Ctrl-N
Log CP290 Transmissions ∙ Ctrl-S
─<OPTIONS Menu>─
                 Mode 1 ∙ Shift-F1
                 Mode 2 ∙ Shift-F2
                 Mode 3 ∙ Shift-F3
          Sounds Toggle ∙ Ctrl-U
      Debug Mode Toggle ∙ Ctrl-D
     Preserve ICON Data ∙ Ctrl-I
         Communications ∙ Ctrl-C
         Screen Colours ∙ Ctrl-G
           Save Options ∙ Ctrl-O
─<HELP MENU>─
                   Help ∙ F1 (Same as Help Button, Alt-H)
                  About ∙ Ctrl-A
───────────────────────<End of Topic>───────────────────────────
.TOPIC:
Operating Modes
────────────────────────────────────────────────────────────────
     Operating Mode can be set using the 'Options' menu, the
MODE command button (cycles through the modes), or the /M
command line argument.
────────────────────────────────────────────────────────────────
MODE 1 ∙ Provides a List Box of Unit Codes; only 1 Unit Code
         can be selected.  However, this mode will be easier
         to use if you don't have a mouse since you'd have to
         TAB through all the Unit Code check boxes used in
         MODE 2.
MODE 2 ∙ Provides a Check Box for each Unit Code plus ALL and
         NONE buttons to quickly Check/Uncheck all check
         boxes.  In this mode, multiple Unit Codes can be
         targetted for the X-10 Command.
MODE 3 ∙ Provides a List Box of Devices which are read from
         an X10.DAT File; X10DC will look for "X10.DAT" in
         the current directory UNLESS the /F: command line
         argument is supplied.  If X10.DAT cannot be found,
         the program will switch to Mode 1.  Select 'Load X10
         File' under the File menu to load an X10.DAT file
         from another sub-directory. (Once the file is
         loaded, its location can be SAVEd by selecting
         'Save Options' under the Options menu.)
         NOTE: ONLY THE 1st 8 DEVICES CAN BE TARGETTED FOR
               COMMANDS WITH THE UNREGISTERED VERSION.
───────────────────────<End of Topic>───────────────────────────
.TOPIC:
Debug Mode
────────────────────────────────────────────────────────────────
┌────────────────────────────────────────────────────────────┐
│ Using COMMPORT: 2   X10 DIRECT CONTROL  CP290 Day: Tuesday │
│Base House Code: P      Version 1.50    CP290 Time: 11:51 AM│
│Mode: 1   Debug ON   (c)1993 ∙ D.Huras     PC Time: 11:52 AM│
└──────────────┼─────────────────────────────────────────────┘
               └────┐
                  ──┴─────
     When enabled, the DEBUG ON message appears in the screen
Header.  In addition, all responses from the CP290 are displayed
in the Command History List Box, as well as Checksums and Timing
Information. Debug Mode can be toggled ON/OFF from the Options
Menu.
     NOTE: Debug Mode increases program overhead; memory
requirements will be greater and program performance will be
somewhat degraded.  It is recommended that you only toggle Debug
Mode ON when necessary.
───────────────────────<End of Topic>───────────────────────────
.TOPIC:
Problem Resolution
────────────────────────────────────────────────────────────────
     Generally, if your CP290 works with the X-10 supplied
software then you should have no problems running X10DC.  X10DC
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 X10DC
  attempts to communicate with a CP290 on the same CommPort.
  X10DC 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).
X10DC Encryption
════════════════
  The X10DC 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.
CP290 Failure
═════════════
  Try using Debug mode and then scroll through the Command
  History List Box; see if the calculated checksums match; look
  at the TIMER and MaxTimer Values. If the MaxTimer Value
  exceeds the TIMER value then the program is timing out while
  waiting for X-10 responses. PLEASE REPORT ANY TIMING PROBLEMS
  TO ME; adjustments can be made to the program to improve its
  compatibility if this turns out to be a problem.  As a last
  resort, run the CP290 Self Test, but only do so if you have
  backed up your EVENT DATA using a program you are sure works
  within your operating environment.  (X10DC will preserve the
  CP290 Event Data but if you are experiencing problems with
  X10DC then this function may fail).
X-10 Transmission Collisions
════════════════════════════
  In some cases X10DC 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).  X10DC 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:
Undocumented CP290
────────────────────────────────────────────────────────────────
X10DC 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
NOTE ■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:
CP290 Self Test
────────────────────────────────────────────────────────────────
     The CP290 can perform a Self-Test to determine if there are
any detectable problems within the device.  The Self-Test will
return either a pass or fail status when it is run.  X10DC will
report the results of the test in the CP290 Status window.
Whenever a Self-Test is run the memory contents of the CP290 are
overwritten.  X10DC can preserve the CP290 Event Data and
CP290 Icon Data by downloading it from the CP290 prior to the
Self-Test and uploading it back to the CP290 after the Test.
(X10DC also allows a Self-Test to be invoked without event
preservation, but this leaves the device in a state which may
cause problems with other programs that communicate with the
CP290. It is recommended that the Self-Test always be invoked
with Event Preservation regardless of whether or not there is
any stored Event Data.)
───────────────────────<End of Topic>───────────────────────────
.TOPIC:
Signal Test
────────────────────────────────────────────────────────────────
     The Signal Test Generator is a powerful feature that
enables the user to track down and isolate X-10
transmission/reception problems and faulty modules.  This
feature will send X-10 ON/OFF commands repeatedly until the test
is ended by the user.  (Similar to the Leviton 6385 device).
The address to be targetted for commands can be a fixed House
Code and Unit Code; alternatively, either the House Code or Unit
Code (or both) can be varied. This allows you to send commands
repeatedly to:
∙ A 'Fixed' House Code & 'Fixed' Unit Code (eg. A1)
∙ A 'Fixed' House Code & 'Variable' Unit Code (eg. A1 - A16)
∙ A 'Variable' House Code & 'Variable' Unit Code (ie. A1 - P16;
  All 256 addresses would be tested in this case)
∙ A 'Variable' House Code & 'Fixed' Unit Code (eg. A1 - P1)
     When the Signal Test Generator is selected, a window is
displayed that allows you to set the House Code & Unit Code to
either 'Fixed' or 'Variable' mode; if 'Fixed' is selected then a
List Box is enabled so that the fixed code can be selected.  The
Delay between commands can be set from 0 to 60 seconds; this
delay applies to the pause between each pair of ON/OFF commands.
Once all required settings have been made the OK button becomes
enabled.  When the OK button is clicked the test will begin; the
test can be terminated by pressing [Esc].  Note, if the Delay is
set to 0, then the [Esc] key may have to be hit several times to
stop the Signal Test.  X10DC will emit a brief beep before each
ON command is sent, and another lower pitched beep before each
OFF command is sent.  These beeps can be disabled by toggling
the Sounds item on the 'Options' Menu.

'Fixed' Mode Testing
════════════════════
     Generally speaking, you would want to use the 'Fixed'
option to test the range of X-10 signal reception by starting
the Signal Test using address P1 for example (the "only" address
that the Leviton 6385 will test) and then walking around to a
variety of outlet locations within your home and plugging in a
module set to P1 to see if the ON & OFF commands are being
received at all locations.  The program attempts to let you know
when the commands are sent by beeping although you may not be
able to hear the beep from all outlet locations.
'Variable' Mode Testing
═══════════════════════
     The 'Variable'² option can be used when you suspect that an
X-10 module has trouble receiving commands targetted for
specific House and/or Unit Codes.  In this case, instead of
walking around to locations, you would adjust the House and/or
Unit Code dials on the module as the Signal Test cycles through
each combination.  You may want to toggle the Sounds off in this
case.
────
² Not available in UNREGISTERED Version
───────────────────────<End of Topic>───────────────────────────
.TOPIC:
Transmission Log
────────────────────────────────────────────────────────────────
     This diagnostic feature captures and displays the CP290
'command echoes' in a scrollable list box that can be printed at
any time.  Whenever the CP290 imposes an X-10 command onto the
powerline it also transmits a 'command echo' via the serial
interface.  The 'command echo' is transmitted for both scheduled
events and for X-10 commands initiated using the rocker keys on
top of the CP290.  This feature allows you to confirm that the
CP290 is actually transmitting X-10 commands as per the event
schedule stored in its memory.  The command echoes are captured
by X10DC and a checksum is verified before an entry is added to
the Transmission Log. Any errors detected during the serial
transmission of the command echo are also added to the
Transmission Log.  The Transmission Log can be printed at any
time by using the 'Print Log' command button.  During the
printing process transmission logging is temporarily suspended.
There are some limitations associated with the command echoes
transmitted by the CP290, specifically:
  ∙ the DIM level associated with DIM commands isn't transmitted.
  ∙ there is no distinction made between OFF (documented) and
    FADE-OFF (undocumented) command transmissions.
     The capacity of the CP290 Transmission Log is 1000 entries,
once this maximum has been reached the oldest log entry will be
deleted each time a new log entry is added.
───────────────────────<End of Topic>───────────────────────────
.TOPIC:
Clock Sync'ing
────────────────────────────────────────────────────────────────
     Clocks tend to run either fast or slow and therefore should
be synchronized periodically.  X10DC allows you to set the time
in both the PC and CP290 manually by specifying hh:mm and also
allows you to synchronize the PC and CP290 by using one of the
clocks to set the other.  When the PC clock is used to
synchronize the CP290 clock, X10DC will wait until the seconds
are at zero since the resolution of the CP290 clock is limited
to minutes.  (This wait can be cancelled by pressing the [Esc]
key).  When the CP290 is used to synchronize the PC, the hours
and minutes from the CP290 are used immediately to set the PC
Clock; since the CP290 cannot provide 'seconds', it is
recommended that a CP290->PC Clock Sync be followed by a
PC->CP290 Clock Sync.  This will ensure that both Clocks are
synchronized.
───────────────────────<End of Topic>───────────────────────────
.TOPIC:
Base HouseCode
────────────────────────────────────────────────────────────────
     The Base HouseCode stored in the CP290 is only applicable
to the rocker keys on the top of the CP290.  These keys are
labelled 1 to 8 and correspond to whatever House Code is stored
as the Base HouseCode in the CP290.  The CP290 re-initializes
itself whenever the Base HouseCode is changed; as a result, all
of the CP290 Event Data is erased.  X10DC gives you the option
of either Preserving or Erasing the Event Data whenever the Base
HouseCode is changed.  If the user elects to preserve the Event
Data, it is downloaded from the CP290 before the Base HouseCode
is changed and then uploaded back to the CP290 after the Base
HouseCode has been changed.
───────────────────────<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 X10DC
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:
Save Options
────────────────────────────────────────────────────────────────
     This menu option saves all of the current program settings
to the X10DC.INI file.  If an X10DC.INI file exists, the program
will display a Warning Message and confirm that you wish to
overwrite the existing X10DC.INI file before proceeding.  The
X10DC.INI file that X10DC generates is a plain ASCII file that
you can edit using your favourite editor.  X10DC will ignore any
errors within the X10DC.INI file (it will display a message each
time it encounters an invalid INI line).
───────────────────────<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:
REGISTRATION INFORMATION
────────────────────────────────────────────────────────────────
     The registration fee for X10DC is $20. (US Dollars for US
shipping addresses, CDN Dollars for Canadian shipping
addresses).  X10DC is currently supplied as functioning software
without built-in delays or obtrusive "nag" screens prompting you
to register.  The Signal Test Generator and Mode 3 are the only
features of the program not fully supported in the shareware
version of X10DC.  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:
■ 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 X10EC; X-10 Event Control.
  Registered Users can register X10EC for $20; the regular
  registration fee is $25.

     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 X10DC 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 Direct Control      X10DC             620       $20.00
X-10 Event Control      X10EC           1774       $25.00

X-10 Control Bundle      X10CB            1775       $40.00
(X10DC + X10EC)
     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:
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 Direct Control  X10DC   10924     $20.00    $0.00   $20.00
X-10 Event Control   X10EC   11595     $25.00    $1.00   $26.00
───────────────────────<End of Topic>───────────────────────────
.TOPIC:
UPGRADE INFORMATION
────────────────────────────────────────────────────────────────
QUICK UPGRADE
═════════════
  REGISTERED USERS of prior versions of X10DC can immediately
  run the shareware version of X10DC v1.60 and all future
  shareware versions of X10DC with the registered features
  enabled.  X10DC will look in the current sub-directory for the
  X10DC.KEY file; if the file is found and is valid then X10DC
  will enable all registered program features.  This means you
  can upgrade by downloading the latest shareware version of
  X10DC and ensuring that your X10DC.KEY file resides in the
  same sub-directory.
EXISTING REGISTERED USERS
═════════════════════════
  If you registered a version of X10DC prior to 1.60; then you
  are entitled to an X10DC.KEY file that will enable you to
  immediately use the shareware version of X10DC v1.60 with the
  registered features enabled.  Your X10DC.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 X10DC.KEY
  file.
DISKETTE UPGRADE
════════════════
  REGISTERED USERS of prior versions of X10DC can request a
  diskette containing the current version of the software at
  ANY TIME by simply sending a diskette containing their
  registered version of the software and $2 for postage to the
  author.
───────────────────────<End of Topic>───────────────────────────
.TOPIC:
Special Thanks
────────────────────────────────────────────────────────────────
SPECIAL THANKS to Gary Soles, Beta Tester.
───────────────────────<End of Topic>───────────────────────────
