OPALPCD.DOC This program takes an image file from a Photo CD ® disc and either displays it on an Amiga ® computer. It will display on an OpalVision ® screen and can be saved as an IFF24 file on the command line. PhotoCD is a format where negatives and slides are scanned at resolutions up to 3072x2048 and storing up to 100 of these on a compact disc. It costs between US $0.90 to $1.80 per image to transfer existing images with a ten image minimum, and gives the user access to scans done with a $35 000 scanner. It costs around US$ 12 for developing 24 exp roll and transferring it directly to cd only. As of the .30 resolution other companies are offering this service such as Best and Dale Labs, and this has brought prices down. I hope to see low cost photofinishers such as Clark and York coming out with this service soon which should really bring down costs. This version is still not complete. Resolutions 5 (3Kx2K) is not rung out yet due to decompression and memory size problems. Overviews are now implimented!. This was originally written by Hadmut Danisch for a ppm file converter. That source only file has been modified and (partially) debugged to work with IFF24 and OpalVision. There are two versions. Opalpcd requires a 68020 and 68881 and up accel- erator or an A3000 or an A4000 and is optimized for these and will crash if run on a vanilla 500, etc. For those less fortunate there is a version, opalpcd.68000 for standard machines. This uses the IEEE library in Workbench 1.3 and up. Other requirements are opal.library in libs: and an OpalVision card for viewing. Also, at least 3 meg of FAST RAM are needed, and one meg of chip RAM for Base resolution. Of course, a CD-ROM drive is required and CDROM-FS by Canadian Prototype Replicas. Do note that testing has been done with SINGLE SESSION only, I don't think the existing file systems support multission at this time. When getting images transferred it is best to pool several dozen images or several rolls to be transferred at once so all is in one session. Subsequent sessions may not be accessible. To use, type "OpalPcd [options] pcdfile [iff24file]" and return. It must be run from CLI or shell, but can be tied into a directory utility or other program. Options are the items starting with a "-" that denote size and operation. Just typing opalpcd will list these for you. There are five sizes from 1 to 5, with 3 being the base at 768 X512. This is the largest currently usable and is suitable for most Amiga applications. The next one down (-2) is 368X256 and works well with lo-res noninterlaced and loads faster(6 vs 25 sec on 68030/882). Due to floating point manipulations the conversion is slow. Data is NOT in a straight RGB format, but is in a Luma Chroma Chroma format, somewhat like HSV I think. The pcdfile must be typed except when using the slideshow mode. Look in CD0:PHOTO_CD/IMAGES for these. They are large files, 3-6 Meg. Iff24file is the filename with path for a resulting 24 bit IFF file in the same resolution as the PCD file, and omitting this will cause display only. Slideshow mode is a new mode with -p for presentation (s is already taken for sharpening). This workes with base and base/4 resolution. In the latter pictures will load and change every 20-30 sec and about 7 on the latter on an accelerated machine. To stop hold the left mouse button, and instead of changing again it will exit. It will also exit when it goes beyond the last file. The image files are numbered like frames of an animation, IMG00XX.PCD where XX is 01 for the first, 30 for the thirtyith, etc. A disk can hold a hundred or so. Due to this standard the path is fixed at CD0:PHOTO_CD/IMAGES. If your drive is NOT CD0:, try "assign CD0: CD_DRIVE" where CD_DRIVE is the name of your CD ROM device. To view an image taken with the camera tilted sideways for better vertical capture, use the -l or -r option to right the image. Newly added is the -b option to place the image as a backdrop to Amiga when exiting. /* --------------- New in V .20 10-Mar-93 --------------------- */ Resolution 4 is working now, but is very memory intensive. It requires 8 M Fast to use for cropping and about 12 for full screen output. Cropping has been added. This is to be done from CLI. Use the -c option followed by the coordinates in order: x and y of top left corner where cropping starts(in relation to full image), then the width and the height of the area to be extracted. If these are left out, the default is a 736 x 480 section from the center. This area will be displayed from the upper left of the screen and saved if desired. Cropping will only work with resolutions 3 and 4. A good way to get coordinates is to convert a size 2 picture and load it into OpalPaint. Now move the cursor over the top left corner to crop. write down the coordinates. Multiply these by four and these become the x and y coordinates. Now move to the lower right of the desired area. Again, write down the coordinates. Subtract the cursor coordinates read before from these. Now multiply these differences by four. This will become the w and h of the extracted data. Synopsis: -c x y w h Next, option -j [quality] allows saving in Jpeg format instead of IFF24. The quality is optional and can be from 1 to 100. The default is 70 and much below 40 or 50 will show degradation. Finally, a shortcut has been added to display or access the files. in place of the full filename, use the last two digits. So entering "44" in the pcd filename is like "CD0:PHOTO_CD/IMAGES/IMG0044.PCD", etc. I got tired of typing it in all the time. Note two things: 1) for numbers 1 thru 9, a leading zero is required, IE 01 and 09. 2) If the -c or -j option are used and not all possible parameters are entered, this number will be mistaken for the quality or coordinate, unless another parameter is inserted between. /* -------------------- NEW IN VERSION 0.30 19-APR-93 ----------- */ Resolution 6 has been added, this really is the same as 4 (1536x1024) BUT has a FULL chroma sampling. In Photo CD, the two chroma components are sampled at a lesser rate, usually every other pixels, in the case of resolution 4, it was every 4th pixel. The chroma for the other 3/4 of the pixels is interpolated between these sample points. Usually it is not noticable except with subject material with many changing bright colors. The sample rate in mode 6 is the same as for luma. This is accomplished by taking the chroma data for resolution 5 and add it on. Unfortunatly the program must wade throught the luma component of 5 to find this since all three points are together. This mode takes longer, typically four minutes on a 25MHz 3000. Sometimes the chroma data gets errors at the end, this is usually within a sector or two of the end of file. Not sure if it is in CDROM-FS, the drive, or this program needs some more data, or in the PCDs themselves. If it gets within a few lines it is considered complete, as the interpolated data on the last few lines won't be noticable. If an error should occur, try copying to a hard drive and working from there, else revert to resolution 4. Resolution 5 is still in the experimental stages, and will only produce a black and white at this resolution. It will not be implemented until memory reduction is employed. This will require 10-20MB free hard disk space to cache some data. The Overview mode, selected by -O, is operational. Use any 2 digit number for filename and it will look for CD0:PHOTO_CD/OVERVIEW.PCD. At this point it will load in sixteen images on a high res interlaced screen. The pictures are numbered as shown to the right. To see pictures above 16, press the 1 2 3 4 RIGHT mouse button. In 5 6 7 8 20-30 seconds the next 16 9 10 11 12 images will show. And so on. 13 14 15 16 The last screen will likely be missing some images unless you have an even multiple of images. Use add 16 to each number for the actual number. Beyond this, it reverts back to 1-16. Hit left mouse button to exit. TO DO: ( It ain't over yet..) Rewrite processing routines to work on smaller bits of the file so that less memory is required, and render them into the Virtual Opalscreen. For resolutions 4 and 5. This will do some caching to HD, but still need 8M fast. Will allow a full Opal screen in 4 at least. No longer will need both PCD and Opal in memory. Test and impliment resolution 5. Load directly to OpalPaint if even possible. OK Centaur, lets release a kit already. I heard you say so on BBS. Make it faster if possible. Whatever else I feel like adding. This program is a purely experimental venture and is being released as a service to Amiga users to gain exposure to the PhotoCD format and develop understanding therof. It may be reproduced and distributed inkeeping with Hadmut's original condition that no profit be made from this. I think a few companies may frown upon this as a commercial product too. It is freeware and may be distributed anywhere and everywhere Amigas and cameras meet. No warranties are expressed or implied whatsover and the user assumes all responsibility arising out of use thereof, including but not limited to, loss of data, damage to hardware, infringement of patents or copyrights, or even the decline of Western Civilization. No money is expected for this program, and the user may alter this and complete debugging as long as it is not for commercial gain. It is hoped the Amiga community benefits from this program. If bugs are found, mention it on major networks, and I'll eventually find out and try to fix it. Trademark and product recognition to Commodore Amiga, Centaur Development (OpalVision), and Eastman Kodak (Photo-CD), and CDROM-FS (Canadian Prototype Replicas). It has been tested with a PhotoCD processed by KodaLux, and example images from a Tempera PhotoCD access program. In over 100 images, all have successfully loaded. Gan~ar la Pelicula Hoy! -Bazz