LXDC V0.32 Controlling the Kodak DC20 digital camera from the 100LX/200LX Copyright (C) 1996 by Eiichiroh Itoh (mailto:GHC02331@niftyserve.or.jp) ===== Copyright, Distribution Policy and Disclaimer ===== This program is a copyrighted freeware. Its copyright is owned by its author Eiichiroh Itoh. You may use it freely, but you are not permitted to use it for any commercial purpose. If you want to post this program to any other BBS, ftp site or network, or if you want to bundle it to another program or publication, you should receive prior permission from its author. The author is in no way liable to any damage, which may be caused by the use of or inability to use this software. ========================================================= 1.Introduction LXDC is a program to control the Kodak DC20 digital camera from the 100LX/200LX. With a small form factor, the DC20 is a good companion to the 100LX/200LX. However it has an internal storage capacity of only 8 frames (or 16 frames in "snap" mode). Sometimes this quantity is not sufficient. The goal of LXDC is to transfer the pictures you have taken from the DC20 to your 100LX/200LX for storage, so you can take more than 8 pictures. Notes: (1) This version of LXDC cannot create BMP or TIFF files. You can convert to such formats on your PCs or MACs running software bundled with the DC20 or ES-1000. A 100LX/200LX connected to such PCs will transfer full color images via its serial interface. (2) The Kodak DC20 and the Chinon ES-1000 are almost identical products with small differences. One difference is that the ES-1000 has a unique Camera ID and thus its bundled software does not connect to LXDC in the DC-20 Server mode. In this case you should specify which Camera you are using in the configuration file. Please refer to 3.Installation. 2.Interconnection cable You need a cable to connect the 100LX/200LX to the DC20. You can make one yourself relatively easily (see Appendix). You do not need to make a cable yourself, if you combine the following cables and adapters. - A F1015A cable (10 pin to 9 pin) from HP - A 9-pin male to 9-pin male null modem adapter, supplied in the Connectivity Pack from HP (the black adaptor) - A DC20-to-PC cable, supplied with the DC20 It is bulky but it works. Even if you use a self-made cable, I recommend you to test first with this bulky combination. 3.Installation Decompress the archive, place LXDC.EXM to your preferred directory and register it to MoreEXM or System Manager. Place LXDC.INI to A:\_DAT or C:\_DAT. You need to create a directory for LXDC to store images (example: A:\LXDC). One image consumes approximately 125 KB. You may prefer A: drive to C: as generally A: (flash disk) provide more unused disk space. Edit LXDC.INI on A:\_DAT or C:\_DAT and make an entry to define the image storage directory (which you have just created) by the following line: D=A:\LXDC Just add the directory name after "D=". Note: If LXDC does not find LXDC.INI, it assumes that the storage directory is C:\ and creates LXDC.INI on C:\_DAT when it is closed. You can edit it by using the build-in Memo editor. You can move it from C:\_DAT to A:\_DAT. If there is a file LXDC.INI on C:\_DAT and on A:\_DAT, LXDC uses the one on A:\_DAT. If your camera is the Chinon ES-1000, additional modification of LXDC.INI is necessary. Below "d=..." line, you should add one line which reads: e=1 It makes the software bundled with the ES-1000 to recognize LXDC. Now you can start LXDC by pressing the start key you selected at the installation. 4. Connecting a Camera After start-up LXDC displays 8 frames on screen. These are the areas displaying the pictures stored in the DC20. Since the pictures are not acquired yet, all the frames are vacant at start-up. Connect the DC20 camera to the 100LX/200LX by a cable and then switch the DC20 on. Press {F1}. A progress indicator appears for a while, disappears and the screen then displays the number of frames you have taken and the number of vacant (unexposed) frames you now have on your Camera. (The status line indicator, at the upper left area of the display, "Version ---- Taken/Rest --/--" at the startup, now shows the actual values after pressing {F1}.) If the progress indicator screen does not disappear after 10 seconds, it indicates that the DC20 is not powered up or the cable connection is not correct. Check the camera, cable and connector. Note: Key input is disabled while the progress indicator is displayed. You can exit from this status by pressing {ESC} key and wait for a while. After the connection is established, press {F2} to transfer the thumbnail images from the camera. An error message will be displayed if there are no pictures in the DC20. Move the cursor (the frame surrounding a thumbnail image) with the arrow keys to select the picture you like to store as full color image data. Press {F4}. The progress of the data transfer is shown. After completion, a file name "IMGxx" is displayed below the thumbnail image, where xx is a frame number. The file IMGxx.IMG contains the data transferred from the Camera. You should rename an image file, if you do not want it to be overwritten or deleted when a new image is transferred. Move the cursor to the picture you want to rename, press {Menu} f r (Menu-File-Rename) and then enter a name into the "Rename" dialog box. (Do not use a file name starting with "IMG". It would confuse LXDC and would give you a risk of accidental loss of stored images.) Notes: (1) If the transfer rate is too slow, you can increase it to 19200, 38400 or 57600, by pressing {Menu} o (Menu-Option). Selecting 115200 may cause too much errors and retries, making the overall rate slower. If you are lucky, 115200 will give you a satisfactory transfer anyway. (2) LXDC does NOT check the available disk space by itself. You should check the free space on your flash disk (or RAM disk) before downloading new thumbnail images or full color images. A full color image occupies 130048 bytes. A CMT file is 125056 bytes. The image data transfer from the Camera, as explained above, can be summarized as follows: 1. Connect with the camera with {F1} 2. Get the thumbnail images with {F2} 3. Select an image with a cursor 4. Get the full image with {F4} 5. Rename the image filename with {F5} Note: The last step "Rename the image filename with {F5}" can be substituted by "Save the image file in CMT format with {F7}", if you are using the ES-1000. Do not forget that CMT file cannot be transferred to you PC or Mac with LXDC running in Server Mode (see below). Display of thumbnail pictures can be controlled by the following keys. {TAB} ...... Expanded (double size) view. The thumbnail picture is expanded by a factor of 2. + - * / .... Adjust brightness of expanded view {F8} ....... Save the expanded picture in PCX format. It should be pressed while the catalogue of thumbnail pictures are on screen. 5. Operation modes (Camera mode and Local mode) After start-up LXDC operates in "Camera mode". When LXDC is in this mode, it displays only the 8 image files in the storage directory, with filenames IMG00.IMG to IMG07.IMG. They correspond exactly to the 8 internal images in the Camera. If you switch to "Local mode", you can view all the images in the storage directory, including IMG00.IMG to IMG08.IMG. However, you cannot control the operation of the Camera remotely any more. Images can be saved (in PCX or CMT format) or renamed in this mode. The images viewable in Local mode can be sent to your PC or MAC, when LXDC operates in Server mode (See below). {f9} switches between Camera mode and Local mode. Note: Please switch back to Camera mode, if you are going to use a function listed under Camera Menu. 6. Transfer your data to your PC or MAC (LXDC in Server mode) Connect your 100LX/200LX with your PC or MAC with a serial cable. Press {F10} or {Menu} s s (Menu-Special-Server). Run the graphic software that came bundled with the camera on your PC or MAC and activate a function for getting data from the Camera. Then LXDC simulates the behavior of the DC20 and start talking with the bundled software. In the same manner as when connected to the DC20, you can get camera images from the full color image files on the 100LX/200LX. If you have the ES-1000 bundled software, you can use the CMT format files created on your 100LX/200LX directly. In LXDC, move the cursor to the thumbnail image for which you want to save a full color image data and press {Menu}f s (Menu-File- Save as CMT). You should then enter a file name (with extension .CMT) to the input dialog box. A file in CMT format is created and can be copied to your PC or MAC e.g.using the connectivity pack and can be directly loaded by the ES-1000 software. Troubles and solutions: The most problematic area of operation with LXDC is the file transfer to your PC or MAC. The main cause of failure is that the receiving speed on the serial port of the 100LX/ 200LX is not fast enough to cope with the speed of your PC or MAC.Some of the bundled software seems to have too short a response time limit and thus tends to create instability in transfer. Currently, troubles are seen when you use the following hardware: 1. If your 100LX/200LX has normal speed crystal. 2. If your 100LX/200LX is connected to Macintosh. If you encounter instability with the 100LX/200LX with a normal speed crystal, a reduction of the communication speed on your PC will most probably solve the problem. Reduce the baud rate of the TWAIN driver running on your PC (This is NOT the baud rate setting on your 100LX/200LX). If you use PhotoEnhancer, you should select "Acquire image by TWAIN" and then select "Acquire" menu and "User setting"item to get to the baud rate setting. If you encounter problems on the Macintosh, a simple reduction of baud rate may not work. First solution is to adjust the timing value on the 200LX by modifying the "c=" setting on LXDC.INI to a value larger than 10. I received a report that too large a value does not work, but c=2275 works fine. Another solution is to use Kai's Power Goo, instead of PhotoEnhancer. The problem here is that Kai's Power Goo has a PowerMac version only. The other functions, such as camera remote control, are self- explanatory. Please play with them. Following is a menu tree of LXDC with a concise description of each function. File Save as CMT ... Save to a file in CMT format. Save as PCX ... Save to a file in PCX format (thumbnail). Delete ... Delete a file. Rename ... Rename a file. Exit ... Exit from LXDC Camera All Full ... Get all the images and then rename. Save as CMT... Get all the images and save to files in CMT format. Rename ... Rename all the acquired images Info ... Get status information of the Camera Table ... Get all the thumbnail images of the Camera. Take ... Take a picture (shutter) Timer ... Take a picture with a timer Erase ... Erase all pictures in the Camera Image ... Get thumbnail image of the frame selected by the cursor. Full ... Get full image of the frame selected by the cursor Special Redraw ... Redraw the screen Local ... Go to Local mode Camera ... Go to Camera mode Server ... Go to Server mode 2x Image ... Display double sized (expanded) image Option Setup ... set various parameters 9600 ... set baud rates 19200 38400 57600 115200 Quit ... Quit. Help About ... Show copyright information. 7. Limitation and Version History Following are the limitations of the current version. o LXDC cannot create BMP or TIFF files directly on 100LX/200LX. o Snap mode (taking pictures and transferring images) is not supported. o Maximum number of images to be displayed is 120 in local mode. o Maximum number of imaged to be transferred to PC (or MAC) is 120 in Server mode. o Available disk space is NOT checked. Loss of images can happen if disk is full. Version History is as follows: V0.01 1996/08/21 First version V0.26 1996/09/10 Released first beta. V0.27 1996/09/14 Made the sleep time adjustable before receiving data in Server mode (for MAC). V0.28 1996/09/14 Added a function of getting all the images and renaming all the files in one action. V0.31 1996/09/23 Added option for ES-1000. Removed bug from progress indicator. V0.32 1996/09/27 Removed unused message area. 8. Acknowledgement I am happy to have this software finally released, based of my analysis of the DC20 I started some time ago. I would like to thank the following people, who read my Analysis Diary on my home page and encouraged me by e-mail: o Mr Tamotsu Aoki (aoki@geocities.com) o Mr Hideki Yoshida (hideki@yk.rim.or.jp) I would also thank to Mr Yoshida and the following people who helped my by testing with the ES-1000. o Mr Taiden (HGG02660@niftyserve.or.jp) o Mr Yoboruda (PFA03106@niftyserve.or.jp) o Mr Akinobu Yamada (GFC01252@niftyserve.or.jp) Also I would like to thank o Mr Hidemichi Yuasa (MXE05064@niftyserve.or.jp) for doing tests on Mac repeatedly. I extend my thanks to members of the forums FHPPC and FJAMEP of NIFTY-Serve who welcome this program with warm messages, when I first released it. And finally, many thanks to my wife, who always encourages me in creating free software. 9. Miscelaneous Requests and bug reports are always welcome. This software is not complete,since the analysis of full image is not finished yet. However, I suppose it reached the level of practical usage. If you are interested, please refer to my home page (http://www.asahi-net.or.jp/~HL1E-ITU) for stories involving the analysis of DC20 (in Japanese). This program is supported on Section 7, Forum FHPPC, NIFTY- Serve or by e-mail. Source code is not released since it is still in beta. If you need it, please contact me by email. I plan to release the source code of the official release. 10. Important notice o The copyright of the program in this package is owned by its author Eiichiroh Itoh (GHC02331@niftyserve.or.jp). o The author is in no way responsible for any damage, which may be caused by the use of, or inability to use, the program in this archive. The author has no obligations for fixing any defects, which may be found in the program in this package. o Please send your bug reports or requests by posting a message on Section 7, Forum FHPPC, NIFTY-Serve or by e-mail to the author. o No redistribution is permitted. o No modification is permitted on the EXM file. o If you would like to redistribute or report this program, first contact the author. o If you would like to describe about this software in publications other than periodicals, you should first contact the author. Appendix: How to make a cable Cable connection is as follows (this cable is compatible with the cable supplied with the camera). Please do not simply copy everything below. Check by yourself!! The author is not responsible if you damage your PC or DC20 by the cable you have made. A cable for PC (D-SUB 9-pin) PC Serial 3pin Plug +--+ pin 2 (RxD) =============> | | |--| pin 3 (TxD) =============> | | |--| pin 5 (GND) =============> | | +--+--+--+ | | The following pins can be connected together on its connector side. (If it is directly connected to the 100LX/200LX, you do not need to connect them together). o pin 1 (CD) o pin 6 (DSR) o pin 7 (RTS) o pin 8 (CTS) I have gotten a stereo mini plug from an earphone (made by Sony), connected it to DSUB 9-pin male connector and thus made a cable assembly with a length of 10 cm (4 inches). It is used together with a self made cable (DSUB 9-pin female and 10-pin female for 200LX). Entire length is approximately 15 cm (6 inches). If you are going to make a cable to connect the DC20 directly to a 100LX/200LX with a 10-pin connector, please refer to the pin assignment described in the user's guide of the 100LX/200LX. Note: Mr Yoshida reported that connecting of these pins 1, 6, 7 and 8 is not necessary, if it is directly connected to 100LX/200LX via 10-pin connector. If you have difficulties to find a 10 pin connector for the 100LX/200LX, you can use the serial cable F1015A. However, the above connection will not work, since F1015A is a null modem cable. You should connect it as follows. Again, please do not simply copy everything below. Check by yourself!! The author is not responsible if you damage your PC or DC20 by the cable you have made. A cable for use with F1015A (D-SUB 9- pin male) F1015A 3pin Plug +--+ pin 3 (TxD) =============> | | |--| pin 2 (RxD) =============> | | |--| pin 5 (GND) =============> | | +--+--+--+ | | Following pins should be connected together on connector side. o 1pin 1 (CD) o 4pin 4 (DTR) o 7pin 7 (RTS) o 8pin 8 (CTS) LXDC Copyright (C) 1996, Eiichiroh Itoh [ Translated from Japanese by: ] [ Toshiki Sasabe (Janbe) ] [ 73560.524@compuserve.com ] Note from the translator: I would like to thank to Mr. Jerome Marot-Lassauzaie and Mr.Beverly Howard who kindly pointed out errors in my first translation and kindly rewrite the whole thing.