home *** CD-ROM | disk | FTP | other *** search
/ Current Shareware 1994 January / SHAR194.ISO / utility / irdc10.zip / IRDC.DOC < prev    next >
Text File  |  1993-10-18  |  38KB  |  842 lines

  1. ────────────────────────────────────────────────────────────────────
  2. IRDC ∙ INFRA-RED Direct Control
  3. ────────────────────────────────────────────────────────────────────
  4. Version 1.0
  5. October 1993
  6.  
  7. Copyright 1993 ∙ D.Huras ∙ All Rights Reserved
  8.  
  9. ────────────────────────────────────────────────IRDC.DOC v1.00──────
  10. CONTENTS
  11. ────────────────────────────────────────────────────────────────────
  12.  1. DESCRIPTION
  13.  2. WARNING
  14.  3. WARRANTY
  15.  4. FEATURE OVERVIEW
  16.  5. REQUIREMENTS
  17.  6. INSTALLATION INSTRUCTIONS
  18.  7. COMMAND LINE ARGUMENTS
  19.  8. COMMUNICATION PORTS
  20.  9. PROGRAM OVERVIEW
  21. 10. KEYBOARD USAGE
  22. 11. APPLICATIONS
  23. 12. ONE FOR ALL REMOTES
  24. 13. PROBLEM RESOLUTION
  25. 14. REGISTRATION INFORMATION
  26. 15. UPGRADE INFORMATION
  27. 16. RELEASE HISTORY
  28.  
  29. 1. DESCRIPTION
  30. ────────────────────────────────────────────────────────────────────
  31. IRDC is a program that sends commands to a ONE FOR ALL (*1) Remote
  32. Control that instruct the remote control to emit INFRA RED (I/R)
  33. signals.  Essentially, IRDC emulates a person pressing buttons on
  34. the remote control keypad.  Any button sequence that can be
  35. physically entered on the remote control keypad can be emulated with
  36. the IRDC program including setting the Device type.
  37.  
  38. IRDC will only operate with ONE FOR ALL remote controls that have an
  39. external port; the ONE FOR ALL 6(*1) and ONE FOR ALL 12(*1) are
  40. currently the only models with an external port.  A special serial
  41. cable with a 3-pin male connector at one end (that plugs into the
  42. ONE FOR ALL external port) and an RS232 9-pin female connector on
  43. the other end (that plugs into a PC serial port) is used to allow
  44. the software to communicate with the remote control.  (This cable
  45. can be ordered from the author --- see REGISTRATION INFORMATION).
  46. The external port is located under the battery cover and its
  47. primary purpose is for upgrading the remote control (ie. loading
  48. new I/R signals into the remote control).  The ONE FOR ALL remote
  49. controls cannot "learn" new I/R signals; however, they can be "force
  50. fed" new I/R signals through the external port.  This may be
  51. necessary if you acquire new electronic equipment with I/R signals
  52. that are not defined within your ONE FOR ALL remote control.
  53.  
  54. Unless your electronic equipment is located near your PC and you can
  55. "aim" the ONE FOR ALL remote control appropriately, then the
  56. benefits of IRDC may not be readily apparent.  To get the most out
  57. of IRDC, you really need an I/R extender such as the X-10 Powermid
  58. product.  This enables you to locate your PC and remote control
  59. anywhere in your home or apartment and distribute I/R signals to
  60. other locations.  See the 'APPLICATIONS' section of this document
  61. for further information.
  62.  
  63. IRDC is a DOS program that uses a simple point & click user
  64. interface.  (A Mouse though not required is highly recommended).
  65. IRDC is designed to be robust software that is processor speed
  66. independent.  This program is shareware and you are invited to
  67. evaluate it for 30 days. If you continue to use the program after
  68. the 30 day evaluation period you are asked to register it.  The
  69. author retains all rights to the program.
  70.  
  71. ────
  72. (*1) ONE FOR ALL, ONE FOR ALL 6, ONE FOR ALL 12, and The "Universal"
  73.      Remote are trademarks of Universal Electronics Inc.
  74.  
  75. 2. WARNING
  76. ────────────────────────────────────────────────────────────────────
  77. ONE FOR ALL Remote Controls are sensitive devices; using a ONE FOR
  78. ALL Remote Control with a Special Serial Cable connected to a PC
  79. Serial Port could alter the memory contents of the Remote Control
  80. possibly rendering it inoperable if the following precautions are
  81. not adhered to:
  82.  
  83. 1) Ensure that the PC is powered-off.
  84. 2) Plug the Special Serial Cable into the PC Serial Port.
  85. 3) Plug the Special Serial Cable into the ONE-FOR-ALL Remote
  86.    Control.
  87. 4) Ensure that there are no loose connections.
  88. 5) Power on the PC and run the software.
  89. 6) VERY IMPORTANT: DO NOT TOUCH ANY BUTTONS on the remote control
  90.    when using the software.
  91. 7) Do not disconnect the Special Serial Cable until the PC is
  92.    powered off.
  93.  
  94. The author assumes no liability for damages, direct or
  95. consequential, which may result from the use of IRDC.
  96.  
  97. NOTES:
  98. ──────
  99. ∙ If you follow these precautions you should not encounter any
  100.   problems using your remote control with the software or manually.
  101.  
  102. ∙ If you physically press buttons on the keypad while the software
  103.   is communicating with the remote control strange things can
  104.   happen that could affect the operability of your remote control.
  105.   If the memory contents of your remote control are altered then the
  106.   only way to restore it to normal operation is to have it reloaded
  107.   by Universal Electronics or a local Service Dealer.
  108.  
  109. 3. WARRANTY
  110. ────────────────────────────────────────────────────────────────────
  111. IRDC is supplied AS IS.  The author disclaims all warranties,
  112. expressed or implied, including, without limitation, the warranties
  113. of merchantability and of fitness for any purpose.  The author
  114. assumes no liability for damages, direct or consequential, which may
  115. result from the use of IRDC.
  116.  
  117. 4. FEATURE OVERVIEW
  118. ────────────────────────────────────────────────────────────────────
  119. ∙ User-Friendly full screen point & click DOS character-based
  120.   Interface; your PC screen becomes a large remote keypad.
  121.  
  122. ∙ All program functions can be controlled using a mouse; no keyboard
  123.   intervention is required.
  124.  
  125. ∙ Supports Standard CommPorts 1 thru 4 and a User Defined CommPort
  126.   which can support any IRQ between 1 & 15 (inclusive) and any
  127.   Base I/O Address.
  128.  
  129. ∙ Optional comprehensive on-line Help sub-system.
  130.  
  131. ∙ All program parameters can be stored within an INI file thereby
  132.   obviating the need for any command line arguments.
  133.  
  134. ∙ Extended Remote Codes can also be defined within the INI file
  135.   and presented in a List Box along with your description.  (Eg. TV
  136.   10  Surround ON).  You can simply double click on the list box
  137.   entry instead of trying to remember the extended code and then
  138.   clicking TV,A,1,0.  The entries in the list box are unsorted and
  139.   added in the same order as they are encountered within the INI
  140.   file.  This allows you to arrange the list in the order that you
  141.   prefer.
  142.  
  143. ∙ The program WILL load without a ONE FOR ALL remote control
  144.   connected.  It will still attempt to use the serial CommPort; in
  145.   most cases (eg. if you have a modem attached to the serial port)
  146.   the results will be innocuous.  However, be aware that any device
  147.   connected to the CommPort configured for use with IRDC will
  148.   receive serial transmissions.
  149.  
  150. 5. REQUIREMENTS
  151. ────────────────────────────────────────────────────────────────────
  152. ∙ An IBM-Compatible PC with at least 1 serial port.
  153.  
  154. ∙ A ONE FOR ALL 6 (URC-4000-2) or ONE FOR ALL 12 (URC-5000-2) remote
  155.   control.  IRDC does not currently support the 1st generation of
  156.   these remote controls (URC-4000-1 & URC-5000-1) respectively.
  157.   Support may be added in the future if user demand warrants it.
  158.   (The 2nd generation remote controls have different keypad layouts,
  159.   see the 'ONE FOR ALL REMOTES' section if you are unsure if your
  160.   remote is a 1st or 2nd generation model).
  161.  
  162. ∙ A Special Serial Cable to connect the ONE FOR ALL remote to a PC
  163.   Serial Port.  (Can be ordered from author --- see REGISTRATION
  164.   INFORMATION).
  165.  
  166. ∙ A Colour adapter/display is recommended although the program
  167.   should run with a monochrome display/adapter.  If you
  168.   experience problems with the default colors, then try the /BW
  169.   command line argument which will set everything to Black &
  170.   White.
  171.  
  172. The program requires approximately 360K available conventional memory
  173. to run.  The memory requirements will increase as you add Extended
  174. Remote Code definitions to the IRDC.INI file.  (eg. 100 definitions
  175. will require an additional 6.5K of memory --- approximately).
  176.  
  177. 6. INSTALLATION INSTRUCTIONS
  178. ────────────────────────────────────────────────────────────────────
  179. There are no special installation instructions; simply copy the
  180. program to a sub-directory of your choice and run it.  The program
  181. will look for 2 files in the directory it is run from.  However,
  182. the program will run with or without the following 2 files:
  183.  
  184.   1) IRDC.HLP
  185.      IRDC retrieves the on-line help text from this file. If the
  186.      file is not found then IRDC will disable the 'Help' command
  187.      button and the Help feature will be unavailable.  The program
  188.      will load slightly faster when the help sub-system is not
  189.      loaded; if you decide that you no longer require the online
  190.      help you can simply delete or rename the IRDC.HLP file.
  191.  
  192.   2) IRDC.INI
  193.      IRDC will look for an IRDC.INI file in the current
  194.      directory.  All program parameters can be defined within
  195.      this file as well as Extended Remote Code definitions.  Any
  196.      errors found within the IRDC.INI file will be reported and
  197.      the program will be terminated.  IRDC will generate an
  198.      IRDC.INI file (or overwrite an existing IRDC.INI file) when
  199.      the 'Save' button on the Configuration panel is clicked.
  200.      Note that Command Line Args will ALWAYS OVERRIDE
  201.      conflicting parameters within the IRDC.INI file.  A sample
  202.      IRDC.INI file, generated by IRDC, is shown below:
  203.  
  204. ;
  205. ;IRDC.INI File Created: 10-02-1993 07:37:33
  206. ;
  207. ; All Lines prefixed with ; are ignored
  208. ; Program Options
  209. ; ---------------
  210. ; CommPort=1,2,3 OR 4  DEFAULT=1
  211. ; Model=6 or 12        DEFAULT=6
  212. ; BW=YES or NO         DEFAULT=NO (Colour)
  213. ; WARNING=YES or NO    DEFAULT=YES
  214. ;
  215. Model=6
  216. BW=NO
  217. WARNING=YES
  218. ;
  219. ; User Defined CommPort
  220. ; ---------------------
  221. ; IRQ and Base_IO_Address apply to User Defined CommPort ONLY
  222. ;
  223. ; IRQ=1-15                 DEFAULT=4; IF Base_IO_Address is set
  224. ; Base_IO_Address=nnnn(n)  DEFAULT=1016; IF IRQ is set
  225. ;
  226. ; NOTE: The presence of either IRQ or Base_IO_Address in the
  227. ;       INI file will enable the 'User Defined CommPort'
  228. ;
  229. IRQ=4
  230. Base_IO_Address=1016
  231. ;
  232. ; Extended Remote Codes
  233. ; ---------------------
  234. ;
  235. ; The codes applicable to your I/R devices can be found in your
  236. ; your ONE FOR ALL manual.  These codes range from A10 - 78
  237. ;
  238. CODE=TV,10,DISPLAY
  239. CODE=TV,11,MTS
  240. CODE=TV,12,PICTURE +
  241. CODE=TV,13,PICTURE -
  242. CODE=TV,14,SLEEP
  243. CODE=TV,15,TV/VIDEO
  244. CODE=TV,15,ANTENNA/AUX
  245. CODE=TV,18,COLOUR UP
  246. CODE=TV,19,COLOUR DOWN
  247. CODE=TV,20,BRIGHT UP
  248. CODE=TV,21,BRIGHT DOWN
  249. CODE=TV,22,HUE UP
  250. CODE=TV,23,HUE DOWN
  251. CODE=TV,24,MATRIX/SURROUND
  252. CODE=VCR,10,SLOW SRCH UP
  253. CODE=VCR,11,SLOW SRCH DN
  254. CODE=VCR,12,MENU
  255. CODE=VCR,13,SELECT
  256. CODE=VCR,14,ON SCREEN
  257. CODE=VCR,15,CANCEL/SKIP
  258. CODE=VCR,16,TIMER
  259. ;
  260. ; End of IRDC.INI (07:37:33)
  261.  
  262. 7. COMMAND LINE ARGUMENTS
  263. ────────────────────────────────────────────────────────────────────
  264. DEFAULTS:  If the program is run without any command line arguments
  265.            it will default to COMMPORT 1,MODEL 6,COLOUR DISPLAY &
  266.            WARNING=YES.  Note that CommPort, Model & Display can
  267.            be toggled from within the program.
  268.  
  269. The following command line arguments can be entered in any order:
  270.  
  271. /Annnn(n) ∙ Base I/O Address applicable to User Defined CommPort
  272.             (Must be specified as a decimal number)
  273.             If /I argument is present, but /A is not; then Base
  274.             I/O Address will default to 1016 (3F8 Hex).
  275.  
  276. /BW  ∙ Use Black & White colours
  277. /BW- ∙ Use Colour (You would only use this argument to override
  278.        an INI BW=YES)
  279.  
  280. /Cn  ∙ COMMPORT where n = 1,2,3 & 4
  281.  
  282. /In  ∙ IRQ applicable to User Defined CommPort where n = 1 - 15
  283.        If /A argument is present, but /I is not; then IRQ
  284.        will default to 4.
  285.  
  286. /Mn  ∙ MODEL where n = 6 or 12
  287.  
  288. /NW  ∙ Suppress the program reminder to read the WARNING within Help
  289.        (This command line argument is not required if you have
  290.        elected to forego the online help by renaming or deleting
  291.        IRDC.HLP).
  292. /NW- ∙ Display Warning (You would only use this argument to override
  293.        an INI WARNING=NO)
  294.  
  295. /?   ∙ Display Command Line Arguments
  296.  
  297. NOTE: ∙ COMMAND LINE OPTIONS OVERRIDE IRDC.INI SETTINGS
  298.       ∙ MULTIPLE OCCURRENCES OF THE SAME COMMAND LINE ARGUMENT
  299.         ARE ACCEPTED; THE LAST INSTANCE WILL BE USED BY IRDC.
  300.  
  301. 8. COMMUNICATION PORTS
  302. ────────────────────────────────────────────────────────────────────
  303. IRDC supports "pseudo standard" CommPorts 1 thru 4 using the
  304. following settings:
  305.  
  306.             ┌──────────┬──────┬──────────────────┐
  307.             │          │      │ Base I/O Address │
  308.             │ CommPort │ IRQ  ├─────────┬────────┤
  309.             │          │      │ Decimal │  HEX.  │
  310.             ├──────────┼──────┼─────────┼────────┤
  311.             │    1     │   4  │  1016   │  3F8   │
  312.             ├──────────┼──────┼─────────┼────────┤
  313.             │    2     │   3  │   760   │  2F8   │
  314.             ├──────────┼──────┼─────────┼────────┤
  315.             │    3     │   4  │  1000   │  3E8   │
  316.             ├──────────┼──────┼─────────┼────────┤
  317.             │    4     │   3  │   744   │  2E8   │
  318.             └──────────┴──────┴─────────┴────────┘
  319.  
  320. If one of these CommPort settings matches your hardware
  321. configuration simply use the /C command line argument with the
  322. appropriate CommPort.  The CommPort= IRDC.INI directive can also be
  323. used.   Note that if IRDC is run without the /I (IRQ) or /A (Base
  324. I/O Address) Command Line arguments then the 'User Defined CommPort'
  325. is "undefined" and cannot be selected from the Configuration panel.
  326.  
  327. If your hardware configuration differs from the table above, then
  328. you can define your own CommPort by using the /I and /A command line
  329. arguments (or IRQ= & Base_IO_Address= IRDC.INI file directives).
  330. IRQ can be set to any value between 1 and 15 (inclusive).  Base I/O
  331. Address can be set to any value greater than zero.  CAUTION: your
  332. hardware may "lock up" if incorrect settings are used.  You should
  333. supply both arguments (/A & /I), however, if you only supply one of
  334. the arguments then the defaults applicable to CommPort 1 will apply
  335. to the other argument.  (eg. if only the /I5 argument is supplied,
  336. then the /A argument defaults to 1016).  If either the /I or /A
  337. argument is supplied, then the 'User Defined Commport' on the
  338. Configuration panel becomes enabled.
  339.  
  340. NOTES: 1) The Program will accept any combination of /C,/I,/A
  341.           command line arguments and CommPort=,IRQ=,& Base_IO_Address=
  342.           IRDC.INI settings.  The presence of any of the User Defined
  343.           CommPort parameters will enable the 'User Defined CommPort'.
  344.           However, the startup (or active) CommPort will always be
  345.           the last CommPort setting.  For example, if IRQ=7 is defined
  346.           in the INI file, but COMMPORT=3 is also defined later on
  347.           in the file, then CommPort 3 becomes the startup CommPort.
  348.           In the same scenario, if /A3220 is specified on the Command
  349.           Line, then the startup CommPort becomes the User Defined
  350.           CommPort where IRQ=7 and Base I/O Address=3220.  The
  351.           CommPort is NOT opened until a remote keypad button is
  352.           'clicked'.
  353.  
  354.        2) THE BASE I/O ADDRESS MUST BE SPECIFIED IN DECIMAL NOTATION.
  355.  
  356.           IBM PS/2 CommPort Parameters are shown below:
  357.             ┌──────────┬──────┬──────────────────┐
  358.             │   PS/2   │      │ Base I/O Address │
  359.             │ CommPort │ IRQ  ├─────────┬────────┤
  360.             │          │      │ Decimal │  HEX.  │
  361.             ├──────────┼──────┼─────────┼────────┤
  362.             │    1     │   4  │  1016   │  3F8   │
  363.             │    2     │   3  │   760   │  2F8   │
  364.             │    3     │   3  │ 12832   │ 3220   │
  365.             │    4     │   3  │ 12840   │ 3228   │
  366.             │    5     │   3  │ 16928   │ 4220   │
  367.             │    6     │   3  │ 16936   │ 4228   │
  368.             │    7     │   3  │ 21024   │ 5220   │
  369.             │    8     │   3  │ 21032   │ 5228   │
  370.             └──────────┴──────┴─────────┴────────┘
  371.           A User Defined CommPort must be used for
  372.           PS/2 CommPorts 3-8.
  373.  
  374.  
  375. 9. PROGRAM OVERVIEW
  376. ────────────────────────────────────────────────────────────────────
  377. When the program loads, it looks for an IRDC.INI file in the current
  378. directory and then proceeds to parse it if one is found.  If any
  379. errors are detected within the INI file the program will terminate
  380. with an appropriate message, otherwise it will parse the command
  381. line arguments (which override any conflicting INI directives).
  382. Once again, if any errors are found it will terminate with an
  383. appropriate message.  Finally, it will look for a IRDC.HLP file and
  384. activate the online Help if the file is found.  The IRDC full screen
  385. interface will then be presented with the remote keypad displayed on
  386. the right and the various program controls displayed on the left.
  387. The upper left button of the remote keypad is the "active" control
  388. at this time.  The program DOES NOT open the CommPort until you
  389. actually press one of the remote keypad buttons; this allows you to
  390. confirm the active CommPort before actually using it.
  391.  
  392. The Status Window on the upper left side of the screen will display
  393. all remote keypad button activity as it is executed.  In addition
  394. it will display a message each time a CommPort is opened.  (eg. the
  395. first time you press a remote keypad button there will be a very
  396. brief delay as the CommPort must be opened first).  There is also
  397. a small LED indicator in the middle of the screen which will flash
  398. briefly whenever a remote keypad button is clicked/pressed.
  399.  
  400. When the configuration button is clicked, the Configuration panel is
  401. overlaid on the left side of the screen.  The current settings for
  402. the Model, CommPort, Display and the Warning Flag are indicated with
  403. option buttons.  If you change the Model or Display settings the
  404. screen will immediately reflect the new settings.  To make your
  405. settings permanent, click on Save; all current settings (including
  406. any Extended Remote Code definitions) will be written to the
  407. IRDC.INI file.  If an IRDC.INI already exists, the program will
  408. display an Overwrite Confirmation before overwriting the existing
  409. IRDC.INI file.  To continue with these new settings for the current
  410. session only, click on OK; to restore the prior settings, click on
  411. Cancel (or press ESCAPE).
  412.  
  413. As stated earlier, a mouse is highly recommended; you can simply
  414. click on the remote keypad buttons, the control buttons and the
  415. Extended Remote Code List Box scroll bars to perform program
  416. functions.  To execute an Extended Remote Code contained within the
  417. Extended Remote Code list box, simply Double Click on it.
  418.  
  419. 10. KEYBOARD USAGE
  420. ────────────────────────────────────────────────────────────────────
  421. Use the TAB/Shift-TAB keys to move among the various remote keypad
  422. buttons and the control buttons (eg. Configure, Help & About).  The
  423. Up/Down arrows can be used to move up and down the Extended Remote
  424. Code List Boxes.  Use the Space Bar key to select the current List
  425. Box item, check/uncheck a check box, or invoke a command button.
  426. (The Enter key can also be used for all controls except the Extended
  427. Remote Code list box; the space bar must be used.) The ESCAPE key
  428. will exit the current function or the program if no other windows
  429. are visible.
  430.  
  431. The cursor keys can be used to navigate within the keypad area; you
  432. can jump to adjacent buttons by pressing the appropriate key.  The
  433. program will jump over 1 blank row/button if an ajacent button is
  434. not present.
  435.  
  436. The following quick access keys are applicable when
  437. the Configuration Panel IS NOT displayed:
  438.  
  439.       Configure ∙ Alt-c
  440.            Help ∙ Alt-h
  441.            Exit ∙ Alt-x
  442.    Remote Codes ∙ Alt-d
  443.  
  444. The following quick access keys are applicable when the Configuration
  445. Panel IS displayed:
  446.  
  447.           Model ∙ Alt-m
  448.        CommPort ∙ Alt-p
  449.         Display ∙ Alt-d
  450.         Warning ∙ Alt-w
  451.              OK ∙ Alt-o
  452.            Save ∙ Alt-s
  453.          Cancel ∙ Alt-a
  454.  
  455. 11. APPLICATIONS
  456. ────────────────────────────────────────────────────────────────────
  457. After experimenting a little with IRDC you may find yourself
  458. thinking: "its a neat 'toy' but what practical uses does it have?"
  459. This section attempts to describe the practical applications for
  460. this type of software.
  461.  
  462. Generating I/R Signals & IRDQ.EXE
  463. ═════════════════════════════════
  464. IRDC allows you to generate I/R signals simply by clicking the
  465. buttons on the on-screen remote keypad.  It also allows you to build
  466. a list box of those 'difficult to remember' Extended Remote Codes
  467. which you can invoke with a double click.  It offers convenience
  468. since you can leave it running in a window when working in a
  469. multi-tasking or task-switching environment and simply switch to it
  470. as required.  However, it does require 'human' intervention since
  471. you have to physically click your mouse button in order to generate
  472. I/R signals.  This is where IRDQ.EXE comes into play; IRDQ is a
  473. command line driven version of IRDC that instructs ONE FOR ALL
  474. remotes to emit I/R signals based on a button name passed on the
  475. command line.  Alternatively, it will 'press' a series of buttons
  476. that are contained within a file when the filename is passed to IRDQ
  477. on the command line.  This means you can build "macros" by creating
  478. files of the button names to be pressed.  In addition, it means the
  479. entire library of ONE-FOR-ALL I/R codes is at your disposal because
  480. you can dynamically set the device type at anytime.  For example,
  481. you could build a button file containing the following button
  482. names:
  483.  
  484.      ;
  485.      ; IRDQ Button File - Turn on both TV's
  486.      ; Note: lines prefixed with ";" are ignored
  487.      ;
  488.      ; Assign TV Code: 000 (Sony TV)
  489.      TV
  490.      A
  491.      B
  492.      C
  493.      0
  494.      0
  495.      0
  496.      ; The Wait button name does not exist,but instructs IRDQ
  497.      ; to wait for 1/2 second to allow the ONE FOR ALL remote
  498.      ; to 'catch up'
  499.      Wait
  500.      ; The SONY TV has an Extended Remote Code to turn the POWER ON
  501.      ; use this code rather than the POWER button which is just
  502.      ; a toggle
  503.      A
  504.      6
  505.      8
  506.      Wait
  507.      ; Assign TV Code: 047 (GE TV)
  508.      TV
  509.      A
  510.      B
  511.      C
  512.      0
  513.      4
  514.      7
  515.      Wait
  516.      ; The GE TV has an Extended Remote Code to turn the POWER ON
  517.      ; use this code rather than the POWER button which is just
  518.      ; a toggle
  519.      A
  520.      1
  521.      8
  522.  
  523. The end result being you can build a virtually unlimited library
  524. of I/R signal sequences and generate them simply by invoking a
  525. program from the DOS command prompt.
  526.  
  527. I/R Signal Distribution
  528. ═══════════════════════
  529. The range of the I/R signals that the remote control generates based
  530. on instructions from the software is limited to the same room as
  531. where your PC is located.  This limitation is severe enough that the
  532. program would not be very useful at all unless you happened to
  533. locate all of your I/R electronic equipment in the same room as your
  534. PC.  This is obviously unrealistic, but fortunately there is a
  535. relatively inexpensive solution that will enable you to distribute
  536. I/R signals to virtually anywhere in your home or apartment.  An I/R
  537. extender can be used to "read" I/R signals from one location,
  538. translate them into radio waves and beam them to one or more other
  539. locations where they'll be translated back into I/R signals and sent
  540. to the targeted electronic equipment.  The entire process takes
  541. milliseconds and is virtually instantaneous.  The X-10 Powermid is
  542. an I/R Extender; it has 2 components, a unit that receives the I/R
  543. signals and transmits them via radio waves, and a unit that picks up
  544. the radio signals and transmits the I/R signals.  Both units are
  545. small 3" x 3" x 3" pyramid-shaped devices enclosed within a black
  546. plastic casing.  You can install multiple Receiver/I.R emitters that
  547. are sourced by the same Transmitter; this allows you to distribute
  548. I/R signals to multiple locations.  Recoton also markets an IR
  549. Extender.  To use an I/R extender with IRDC/IRDQ, you'd simply aim
  550. the ONE FOR ALL remote at the I/R Transceiver.
  551.  
  552. Scheduling I/R Signals
  553. ══════════════════════
  554. With IRDC/IRDQ, a ONE-FOR-ALL Remote & an I/R Extender you have the
  555. capability to easily generate & distribute an I/R signal for just
  556. about any electronic equipment that exists to virtually anywhere
  557. within your home.  The capability to schedule I/R signal
  558. transmissions at predetermined times would be a step closer towards
  559. a completely automated I/R system.  Since IRDQ can be driven from
  560. the DOS command prompt you could accomplish this through the use of
  561. any DOS-based scheduler.  For example, a Scheduler is bundled with
  562. Central Point's PC Tools.  You lodge the dates & times of the
  563. programs you want to run and then load the resident portion of the
  564. Scheduler into memory as a TSR from your AUTOEXEC.BAT.  The
  565. Scheduler will kick in at the predetermined times and run the programs
  566. you've defined.  If you happen to be working on your computer at a
  567. scheduled program time, the scheduler will ask you if you want to
  568. run the Scheduled program now or delay it; if you proceed to run it
  569. the Scheduler will save the memory image of your current working
  570. environment and restore it after it has run the scheduled program.
  571. There are many other DOS schedulers around including several fine
  572. shareware products.  Back'n Forth, a shareware Task-Switcher, has
  573. many features including a built in scheduler.
  574.  
  575. Event-Driven I/R Signal Generation
  576. ══════════════════════════════════
  577. A truly automated I/R system should support event-driven I/R signal
  578. generation.  The transmission of I/R signals should not be limited
  579. to scheduled times, but rather, should be driven by events such as
  580. the reception of X-10 signals, changes in temperature, motion
  581. detection, contact closure, etc.  Most PC-based home automation
  582. systems which react to received events support 'shelling to DOS' to
  583. execute programs based on the events you specify; so IRDQ could be
  584. used with these programs to integrate I/R signal generation.  The
  585. HC2000 program is an example of a home automation system that is
  586. based on 2-way X-10 communications.
  587.  
  588. The HC2000 Home Automation Program
  589. ══════════════════════════════════
  590. HC2000 is a software-based X-10 home automation system.  It requires
  591. a dedicated PC but will run quite satisfactorily on a 4.77 MHz XT.
  592. If you've upgraded your PC and have an older machine that is
  593. collecting dust as a paperweight somewhere then HC2000 will allow
  594. you to put it to good use as the 'brain' of your home automation
  595. system.
  596.  
  597. HC2000 requires a TW523 device which is a two-way X-10 module that
  598. sends and receives X-10 signals.  An Editor is supplied with HC2000
  599. that allows you to build your home automation program.  You can
  600. send X-10 signals at scheduled times, or when other X-10 commands
  601. are received (allowing you to build remote 'macros'), or based on
  602. the values of user variables that you define and manipulate.  In
  603. addition to having the program respond to events by sending X-10
  604. commands, you can also run DOS programs.  This means you can use
  605. IRDQ.EXE to emit I/R signals based on the events that are trapped
  606. by HC2000.  For example, you could define an X-10 command that would
  607. invoke the button sequence to turn on the two TV's that was defined
  608. earlier in this section; the following steps outline how you could
  609. accomplish this:
  610.  
  611. 1) Create the Button File: TURNTVS.ON
  612.  
  613. 2) Start up the HC2000 editor and create a User Variable entitled
  614.    'DOS IRDQ.EXE TURNTVS.ON'.
  615.  
  616. 3) Add an X-10 remote command using the House/Unit Code that you
  617.    want to define and add a 'LOG' statement using the User Variable
  618.    you defined in step 2: eg:
  619.  
  620.      ■ A1 ON {Turn on both TVs} ::=
  621.        Log "DOS IRDQ.EXE TURNTVS.ON'
  622.  
  623.    (This command would respond to House Code A, Unit 1.)
  624.  
  625. 4) Exit the HC2000 editor and run HCDOS; HCDOS checks all of the
  626.    messages that HC2000 logs and when it encounters the IRDQ.EXE
  627.    message it will execute IRDQ.EXE and pass it the TURNTVS.ON
  628.    parameter.
  629.  
  630. IRDQ.EXE has been successfully tested with HC2000.
  631.  
  632. 12. ONE FOR ALL REMOTES
  633. ────────────────────────────────────────────────────────────────────
  634. IRDC supports ONE FOR ALL 6 and ONE FOR ALL 12 remote controls,
  635. specifically, models URC-4000-2 and URC-5000-2 respectively.  It
  636. does NOT currently support 1st generation models, URC-4000-1 &
  637. URC-5000-1.  The differences between the "-1" and "-2" models are
  638. summarized below:
  639.  
  640.    URC-4000-1 vs. URC-4000-2
  641.    ─────────────────────────
  642.    The URC-4000-1 does not have buttons labelled:
  643.        AUX1, AUX2 or CD.
  644.  
  645.    URC-5000-1 vs. URC-5000-2
  646.    ─────────────────────────
  647.    The URC-5000-1 does not have buttons labelled:
  648.        VCR, Sat, Aux, Amp, Tuner, F1, F2, F3, F4, Recall, Sleep,
  649.        Display, A/B, Audio, Video, Sleep, or Pgm.
  650.  
  651.    The URC-5000-2 does not have buttons labelled:
  652.        VCR1, VCR2, DO1, DO2, TV/VCR, Do, D, E, F, G, H.
  653.  
  654. 13. PROBLEM RESOLUTION
  655. ────────────────────────────────────────────────────────────────────
  656. The ONE FOR ALL remote control PC interface deploys a relatively
  657. simple communications protocol and you should not experience any
  658. problems provided that your special serial cable is in good
  659. condition and there are no loose connections.  However, the timing
  660. of the serial communications is very critical and there is not much
  661. tolerance for even minor deviation.  Any resident software that
  662. tampers with the system clock could throw the serial communications
  663. out of sync.
  664.  
  665. If IRDC does not appear to be working at all, then read through the
  666. following checklist to confirm your hardware/software setup.
  667.  
  668. 1) Verify that your remote control is supported; currently only the
  669.    URC-4000-2 and URC-5000-2 are supported.  (See the ONE FOR ALL
  670.    section for details on identifying your remote control model.)
  671.  
  672. 2) Ensure that you are using the correct CommPort; click on the
  673.    Configuration button and verify that the active CommPort is
  674.    correct.
  675.  
  676. 3) Ensure that the special serial cable connections are firm and
  677.    that the cable is not bent or stretched; The most likely cause is
  678.    the 3-pin serial connector not being seated properly in the
  679.    external port of the ONE FOR ALL remote.  In some cases, it may
  680.    appear to be properly seated but in fact it is not.  It may be
  681.    necessary to tape the connection to ensure that it is sound.
  682.  
  683. 4) Ensure that memory resident software is not conflicting with
  684.    IRDC by booting your PC without any Device Drivers or TSR's.
  685.    (ie. use a stripped down CONFIG.SYS and AUTOEXEC.BAT).
  686.  
  687. If IRDC appears to be working but you run into a situation where the
  688. LED on the remote control stays ON with an amber colour and will not
  689. turn off, then communications between the remote control and the
  690. software have been disrupted. The most likely cause for this is a
  691. loose connection.  The remote control is in Serial Execution mode;
  692. power OFF your PC, check cable connections, power ON your PC and
  693. reload IRDC.  Click on a remote button and the LED should flicker
  694. amber, then green, then turn off.  If your remote consistently
  695. becomes stuck in Serial Execution mode, then it is probably the
  696. result of a timing problem; please contact the author in this case,
  697. adjustments can be made to the software to work around this.
  698.  
  699. If the ONE FOR REMOTE becomes "unresponsive" to IRDC, it could be
  700. because commands were sent to it while it was executing a macro.
  701. This only applies to a ONE FOR ALL 12 which will not act on commands
  702. sent while it is executing a macro; you should wait for the macro
  703. to complete before sending more commands.
  704.  
  705. If your problems persist, then please report your problem to the
  706. author who will attempt to resolve any problems you encounter.
  707.  
  708. The open architecture of the PC compatible operating environment and
  709. the near infinite combinations of hardware and software complicate
  710. the compatibility of applications software.  While every effort has
  711. been made to ensure that IRDC is compatible with as many hardware
  712. and software combinations as possible, there may be operating
  713. environments in which IRDC will not run properly.
  714.  
  715. Problems can be reported to:
  716.  
  717.    David Huras
  718.    37 Ruddell Crescent
  719.    Georgetown, Ont. L7G 5N4
  720.    CANADA
  721.  
  722.    FAX: 905-873-6429
  723.    CIS: 72767,472
  724.    Internet: david.huras@canrem.com
  725.  
  726. 14. REGISTRATION INFORMATION
  727. ────────────────────────────────────────────────────────────────────
  728. IRDC is currently supplied as fully functioning software without
  729. built-in delays or "nag" screens prompting you to register. However,
  730. the program will timeout after 10 minutes.  This limitation does
  731. not apply to the Registered version.
  732.  
  733. A significant amount of time and effort went into this program;
  734. please register the program if you intend to use it beyond the 30
  735. day evaluation period.  Registered Users will be shipped a printed
  736. manual and a 3½" diskette (if you would prefer a 5¼" diskette please
  737. advise) containing the Registered Version of the IRDC.
  738.  
  739. Registered Users will also receive IRDQ.EXE, a command line driven
  740. version of IRDC.  With IRDQ you can press buttons on ONE FOR ALL
  741. remote keypads simply by entering commands at the DOS prompt, for
  742. example you would type IRDQ POWER to press the POWER button.
  743. Alternatively you can pass a file name containing a list of button
  744. names to IRDQ, eg.  IRDQ /F:BUTTON.FIL where BUTTON.FIL contains
  745.  
  746.   AUX
  747.   WAIT
  748.   POWER
  749.   TV
  750.   WAIT
  751.   POWER
  752.   VCR
  753.   WAIT
  754.   POWER
  755.   "<<"
  756.  
  757. This "macro" would turn on your Receiver, TV & VCR and rewind the
  758. tape in the VCR.  IRDQ is a compact program which was designed to be
  759. interfaced with software based home automation systems like HC2000.
  760. You could also "grow your own" home automation system by using IRDQ
  761. with a DOS-based program scheduler like the one provided with
  762. Central Point's PC Tools.  All IRDQ program options can be imbedded
  763. within the DOS environment thereby eliminating the need for any
  764. command line arguments other than button names or a filename
  765. containing button names.  (See the APPLICATIONS section for further
  766. information about IRDQ).
  767.  
  768. You can also order the Special Serial Cable directly from the
  769. author; these cables can be difficult to find and I cannot
  770. guarantee that I will always have stock.  Please feel free to
  771. check on availability by contacting me via Email --- see PROBLEM
  772. RESOLUTION section for Email addresses.  You may be able to find
  773. these cables at a marginally lower cost from other suppliers; (I
  774. have to acquire these cables at 'retail' prices and am charging a
  775. price that merely allows me to break even).
  776.  
  777.                                          Shipping Destination
  778.                                         USA*    CANADA*   OTHER*
  779.                                        ------   ------    -----
  780. IRDC Registration Fee (includes IRDQ): $25.00   $25.00   $25.00 US$
  781. IRDC Shipping:                           0.00     0.00     2.00 US$
  782.  
  783. Special Serial Cable:                  $20.00   $20.00   $20.00 US$
  784. Special Serial Cable Shipping:           2.50     2.00     4.00 US$
  785.  
  786. * USA Prices are quoted in U.S. Dollars.
  787.   CANADIAN Prices are quoted in Canadian Dollars.
  788.   OTHER Prices are quoted in U.S. Dollars.
  789.  
  790. Complete the REGISTRATION FORM contained in the REGISTER.FRM
  791. file and send with your cheque*/money order to:
  792.  
  793.    David Huras
  794.    37 Ruddell Crescent
  795.    Georgetown, Ont. L7G 5N4
  796.    CANADA
  797.  
  798. * Only cheques drawn on Canadian & US Banks will be accepted.
  799.   Money Orders must accompany International Orders.
  800.  
  801.   -=OR=-
  802.  
  803. You can register IRDC by using the CompuServe Shareware Registration
  804. Service.  The $25 USD registration fee will be billed to your CIS
  805. account.  GO SWREG, the Registration ID for IRDC is #1449.  You are
  806. assured that the latest version of the software will be shipped
  807. within one business day when you use the CompuServe Shareware
  808. Registration Service.  (Special Serial Cables must be ordered
  809. directly from the author).
  810.  
  811. 15. UPGRADE INFORMATION
  812. ────────────────────────────────────────────────────────────────────
  813. ╔══════════════════════════════════════════════════════════════╗
  814. ║REGISTERED USERS of prior versions of IRDC can upgrade to the ║
  815. ║current version at ANY TIME by simply sending a diskette      ║
  816. ║containing their registered version of the software to the    ║
  817. ║address above.                                                ║
  818. ╚══════════════════════════════════════════════════════════════╝
  819.  
  820. 16. RELEASE HISTORY ∙ IRDC Shareware/Registered Version
  821. ────────────────────────────────────────────────────────────────────
  822.  Date      Version     Changes
  823. ------   ----------   ----------------------------------------------
  824.  
  825. OCT'93      1.00      First Public Release
  826.                       ∙Configuration Panel Re-organized
  827.                        -SAVE Button Added
  828.                        -Warning CheckBox Added
  829.                       ∙'F1' Key to invoke Help added
  830.                       ∙Cursor Key navigation added to keypad area
  831.                        (cursor keys will navigate to adjacent
  832.                         buttons - will skip 1 row or button if
  833.                         no adjacent button).
  834.                       ∙OFA-12 Button Definition Problems Corrected
  835.                        (Mode Buttons, A,B,C, Power, CH+,CH-)
  836.                       ∙OFA-12 Extended Remote Code support added
  837.                        for F1 - F4.
  838.                       ∙European Date Format Support Added
  839. SEP'93      1.00ß     Beta Test
  840.  
  841. ──────
  842.