CAM(OPCS) Optical Printer Control System CAM(OPCS) NAME cam - shoot frames on the camera USAGE cam [value] # run camera so many frames fwd or reverse EXAMPLES cam 12 # run camera 12 frames forward cam -12 # run camera 12 frames in reverse cam 54'11 # run camera 54 feet 11 frames cam >-32 # run camera TO counter frame -32 cam >34'8 # run camera TO counter 34 ft 8 frms cam >(108/(10+2)) # run camera 9 frames (See SYNTAX(OPCS)) DESCRIPTION This command will shoot frames on the camera at the current shutter speed set by SPD(OPCS). The value indicates the relative number of frames to shoot. Negative numbers shoot in reverse. Values can also be specified in foot/frames or as a mathematical expression (as shown above). If the value is directly preceded by '>', this tells the camera to 'go to' that absolute position on the camera counters. To do fast windoffs that don't involve exposing film, use SEEK(OPCS) which uses the camera's slewing speed. FADE/DX If there are any pending fades or dissolves, the fader will FIRST move to its next position before the camera exposes a frame. AUTOFILT/FEED If AUTOFILT(OPCS) is enabled, the camera will first expose the filter in the gate before moving the filter wheel. (As with the projector, when the system is idle, the frame in the gate is /about/ to be shot) If FEED(OPCS) is enabled, the motors will /first/ move to position before the camera exposes a frame. (Similar to fade/dx) ALLSTOP Hitting the ALLSTOP button, usually the (`) key, will halt the motors at the nearest frame. ALLSTOP is safe during shooting; it does not affect exposure, and always leaves the shutter closed after stopping. The allstop key can be redefined by ALLSTOP(OPCSDEFS). BUCKLE/VIEWER The camera WILL NOT RUN if the buckle is tripped. When exposing film, it also won't run if the viewer is open. If either condition occurs while the camera is shooting, the motors will stop with an error at the nearest frame, similar to ALLSTOP. If 'hardware no' is in effect, the buckle/viewer state is ignored, so that the OPCS software can run on remote computers that are not pysically connected to an optical printer. TENSION MOTORS Before the camera or projector move, the appropriate tension motors are enabled, to ensure take-ups are in correct modes for film motion. COUNTER OVERFLOWS The software internally manages frame numbers in 32-bits, and therefore can handle values in the range of +/-2 billion. However, the counter /display/ has a digit limit, and the counters will 'clock over' (similar to a car's odometer) if the number of digits goes beyond the display's limits. For 'bigcounters yes' (See BIGCOUNTERS(OPCSDEFS)), the limit is 6 digits, i.e. -99,999 thru 999,999. For 'bigcounters nixie', in K2.10 and up supports 8 digits, i.e. -9,999,999 thru 99,999,999. In either case, when the counter overflows, it 'clocks over' to zero. In version K2.10 and up, a hash flag appears to the left of the counters warning of counter overflow, e.g. ..or in "ASCII art", that would be: ###################################################################### #### ## ## ## ### ## ## #### ## ## ## ## # ## ## ## ## ## ## ## ## ## ## #### ## ## ## ## ## ### ## ## ## ## ## ## ## ## # ## ## ## ## ## ## ## #### ## #### ## ## ## ###################################################################### Similarly, negative underflows (counts below zero) unclock to zero displaying a negative sign prefix. For 'bigcounters yes', counter progression works this way, where '//' represents the hashmark: Actual Frame 'bigcounter yes' Display ------------ ------------------------ -100,002 // -2 <-- wraps to -2, shows hashmark -100,001 // -1 <-- wraps to -1, shows hashmark -100,000 // 0 <-- wraps to -0, shows hashmark -99,999 -99,999 -98,999 -98,999 : : -1 -1 0 0 1 1 : : 999,998 999,998 999,999 999,999 1,000,000 // 0 <-- wraps to 0, shows hashmark 1,000,001 // 1 <-- wraps to 1, shows hashmark : : For 'bigcounters nixie', in version K2.10 and up, counter progression works this way: Actual Frame 'bigcounters nixie' Display ------------ --------------------------- : : -10,000,002 // -2 <-- wraps to -2, shows hashmark -10,000,001 // -1 <-- wraps to -1, shows hashmark -10,000,000 // -0 <-- wraps to -0, shows hashmark -9,999,999 -9,999,999 -9,999,998 -9,999,998 : : -1 -1 0 0 1 1 : : 99,999,998 99,999,998 99,999,999 99,999,999 100,000,000 // 0 <-- wraps to 0, shows hashmark 100,000,001 // 1 <-- wraps to 1, shows hashmark 100,000,002 // 2 <-- wraps to 2, shows hashmark : : This 'clock over' behavior is only true of the display.. the software still internally keeps track of actual positions, so that commands like 'cam >2000000' will still work correctly. Note that 'bigcounters small' and 'bigcounters mocon' does not clip digits at all, and can display the full abilities of 32bit numbers. > Use 'bigcounters small' to maximize operator's screen history (21 lines of screen history) > Use 'bigcounters mocon' monitors all channels for motion control moves. (18 lines of screen history) > Use 'bigcounters nixie' for normal printing and medium sized counters. (14 lines of screen history) > Use 'bigcounters large' for normal printing and largest counters. (12 lines of screen history) SEE ALSO -- Operator Commands (OPCS) -- PRO / CAM - run frames on the projector / camera RAT, REP - tandem shooting (interlock) RES - reset computer's pro/cam counters to new values CHK - check if the pro/cam/shu counters are at certain values SEEK - run the camera/projector at slewing speeds FEED - feed motion control moves to motors every camera frame VELREP - special purpose velocities for tandem shoots (eg. YCM) AUTOFILT - enable/disable the auto-wedging filter wheel SHU - send the fader shutter to absolute position in degrees OPN, CLS - open/close the fader shutter DXI, DXO - set up an dissolve FDI, FDO - set up an fade MATH(DOCS) - math expressions (for use in frame specifications) SYNTAX(OPCS) - online calculator and OPCS math expression syntax MOTORS - enable/disable motor hardware for debugging scripts -- Setup/Definitions (OPCSDEFS) -- SPDINTERP - configure exposure speed interpolations SPD - configure camera's default exposure and slewing speeds RAMP - configure camera's maximum acclerations and velocities MRP - configure 'maximum ramp pulses' for shutter motors PPR - configure 'pulses per revolution' for a motor BIGCOUNTERS - enable/disable the large counter display FPF - configure the 'frames-per-foot' (16mm, 35mm, Vista..) BUCKLE, VIEWER - configure buckle/viewer sensor's ports and bitmasks TENSION - configure tension motors ALLSTOP - define the ALLSTOP key HARDWARE - enable/disable using printer hardware HISTORY This command was in the first version of OPCS (Apple ][+). ORIGIN Gregory Ercolano, Los Feliz California 12/18/89