This is not the offical Sony 9-pin protocol. It is a summary for reference puroposes only. To obtain the protocol document, contact Sony directly.
Updated 6/16/96. Fixed the Prog Speed formula. Added Tables. Added all group 20 descriptions, more info on status bits, and most of the group 40 commands.
The protocol is based on the EIA RS-422-A signal standard, usually at 38.4 kBit/s. The data are sent as 1 start bit + 8 data bits + 1 parity bit + 1 stop bit. Parity is odd: the bitwise sum of data bits 0 -7 and the parity bit is an odd number.
The controlling device and the controlled device communicate through the interchange of command blocks. The bytes in each command block are assigned as follows:
- CMD-1/DATA COUNT. CMD-1 is the upper 4 bits, DATA COUNT is the lower 4.
- CMD-2.
- DATA-1 up to DATA-N, where n is the value in data count
- CHECKSUM
Indicates the function and direction of the command, according to:
Value | Function |
---|---|
0 | System control (Master->Slave) |
1 | Return for 0,2, or 4 of cmd-1 (Slave->Master) |
2 | Transport Control (Master->Slave) |
4 | Preset/Select control (Master->Slave) |
6 | Sense Request (Master->Slave) |
7 | Sense Return (Slave->Master) |
Indicates the number of bytes ( max 15 ) inserted between CMD-2 and CHECKSUM
Designates the command. Refer to the command table for definitions. Ex. CMD-1=0 and CMD-2=0C means LOCAL DISABLE.
Data which correspond to those indicated by the command. Refer to the command table for data formats.
Lower eight bits of the sum of the bytes in the command block.
The protocol is initiated by the master. The slave should return a response within 9 msec. The response may be:
- NAK + Error Data: Undefined command or communication error
- COMMAND + Data: if Command requested data
- ACK: if Command did not request data
The master should not send another command until receiving a response from the slave device. The master must also insure that no more than 10 msec lapses between bytes in a command block. The master must immediatly stop sending data when it receives a NAK + Error Data message. If the Error Data contains "Undefined Command" the master may immediatley send another command, otherwise it must wait at least 10 msec before sending another command. When the master does not receive a response from the slave within the 10 msec timeout, it may assume that communications have ceased and take appropriate measures.
The pin assignments for the 9-pin cable are as follows:
Pin | Master | Slave |
---|---|---|
1 | Ground | Ground |
2 | Rcv A | Xmit A |
3 | Xmit B | Rcv B |
4 | Xmit Common | Rcv Common |
5 | Spare | Spare |
6 | Rcv Common | Xmit Common |
7 | Rcv B | Xmit B |
8 | Xmit A | Rcv A |
9 | Ground | Ground |
Auth - this varies alot: contact individual manufacturers for pinouts.
This is the command table for the DVR-2000/2100. It is summarised here for reference purposes only. If you want to order it from Sony call the Kansas City supply center and hope you get someone who knows the part number for the recorder whose protocol you want to use.
Disables operation of the slave device from its control panel.
Slave Responds with
message, with 2 bytes of data:
Model | Data |
---|---|
BVU-800 | 10 00 |
BVW-10 | 2X 00 |
BVW-11 | 2X 02 |
BVW-15 | 2X 03 |
BVW-35 | 2X 10 |
BVW-40 | 2X 01 |
BVW-50 | 2X 30 |
BVW-60 | 2X 20 |
BVW-65 | 2X 21 |
BVW-95 | 2X 22 |
BVW-96 | 2X 23 |
BVW-70 | 2X 24 |
BVW-75 | 2X 25 |
BVW-D75 | 2X 46 |
BVW-9000 | 2X 47 |
PVW-2600 | 2X 40 |
PVW-2800 | 2X 41 |
BVW-35PM | 20 18 |
BVW-65PM | 20 29 |
BVW-95PM | 20 2A |
BVW-75PM | 20 2D |
BVW-85P | 21 26 |
BVW-70S | 21 2C |
BVW-75S | 21 2D |
WBR-700 | 21 2D |
DVR-2000 | 3X 10 |
DVR-2100 | 3X 11 |
Where X=0 for NTSC/PAL-M (525) models and 1 for PAL/SECAM models.
Enable operation of slave device from local panel according to the local enable map set by the "4X B8" Local Key Map command.
Slave Sends this when it receives a command from Master.
When a communication error is detected, the slave sends this command with a "1" in the following position indicating the appropriate error condition:
7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
---|---|---|---|---|---|---|---|
Time Out | Framing Error | Overrun Error | Parity Error | X | Checksum Error | X | Undefined command |
Slave stops current motion.
Slave Starts to play from current location. When the "Sync play" mode is selected from the System menu on the slave, "Play" has the same effect as 20.34 "Sync Play".
Slave begins recording. Exactly what happens depends on Auto Mode, record lockout, and edit presets.
Turns off standby mode. For VTR, this causes the machine to unthread in stop. Affects EE/Tape selection. Available only in Stop mode.
Turns on standby mode. For VTR, this causes the machine to stay threaded when in stop. Affects EE/Tape selection.
When this command is received, the slave will eject the tape.
When this command is received, the slave device will run in fast forward mode. The speed depends on the VTR; for the DVR2000 series it is 50 x play speed.
When these commands are received the slave device will move forward with the speed indicated by DATA-1 and DATA-2.
When only DATA-1 is given, the speed wil be given by
Tape Speed = 10^((N/32)-2) x play speed.
where N is the value of DATA-1. Some sample values are:
Speed | Speed Data |
---|---|
0.1 | 32 (20H) |
1.0 | 64 (40H) |
2.9 | 79 (4FH) |
48.7 | 118 (76H) |
When a more precise speed value is required, then DATA-2 will be added. The speed formula for this case is
Tape Speed = 10^((N/32)-2) + N'/256*(10^(((N+1)/32)-2)-10^((N/32)-2))
where N is the value of DATA-1 and N' is the value of DATA-2.
auth - in more standard terms, the formula says that DATA-2 is used to linealy interpolate between the value given by N and that of N+1.
The maximum jog speed is set in the System:System menu. The maximum Var speed is 3X play speed. The maximum shuttle speed is 50X play speed.
auth - There is considerable controversy over the minimum speed. For a speed value of 0, the above formula with only DATA-1 gives 10^-2, or .01 x play speed. The standard states that when a speed between 0 and the minumum is given, the slave moves at minimum speed. In fact, many editors and control systems intend a "Shuttle 0" command ( 21 13 00 ) to pause the device and have it stop without disengaging. Devices which fail to do so will creep about 1 frame/second in this situation.
When it receives this command, the slave runs in reverse at maximum speed: on the DVR2000, this is 50xplay speed.
When receiving one of the above commands, the slave will start running in accordance with the speed data defined by DATA-1 and DATA-2. For the maximum and minimum speed see the 2X.12 Shuttle Fwd command.
When this command is received the slave will search to the preroll position defined as the value obtained by subtracting the preroll time set by the 44.31 Preroll Time Preset command from the IN POINT data stored in the IN ENTRY memory by the 40.10 In Entry command.
Cues the slave to the indicated time. Time is formatted as follows:
data-1 | data-2 | data-3 | data-4 |
---|---|---|---|
Frame | Seconds | minutes | hours |
10 1 | 10 1 | 10 1 | 10 1 |
auth - this is how time is represented in all commands and responses using a time code. The numbers indicate that the 10s value is stored in the high nibble and the 1s value in the low nibble. This is not to be confused with the 80-bit SMPTE timecode which is present in the analog timecode track on tape, or with the VITC timecode.
Prerolls the slave for the preset preroll time, then enters play mode.
These commands play back the slave device in steps of 0.1% within the range of +/- 25.5% of play speed. DATA-1 contains an 8-bit speed value. The deviation from nominal play speed is
Deviation(%)=0.2 x speed value
When one of these commands is received the slave goes into the indicated mode.
This is all the spec states here. What actually happens is determined by the edit presets, in and out point selections, and ee/tape settings. Basically, all three set the device to the preroll position, and run at play speed up to the in point. In Preview, the slave switches to EE mode at the in point, and out at the out point, simulating the edit without disturbing the recording media. In review, the slave simply continues to play at the in point and rolls to the outpoint. In Auto Edit, the channels indicated by the edit presets are put into record at the in point and the recoding proceeds to the out point.
Sends transport to preset out point if insert mode is preset.
Disables the anti-clog timer. This timer is responsible for unthreading the tape upon timeout to save wear on the heads. If a system disables this timer, it should take responsibility for head wear avoidance itself.
Enables anti-clog timer.
Clears all channels from EE mode regardless of EDIT PRESET channels assigned by the 41.30 EDIT PRESET command. It takes the slave 5 frames to perform this operation after it receieves the command.
Sets all channels to EE mode regardless of EDIT PRESET channels assigned by the 41.30 EDIT PRESET command. It takes the slave 5 frames to perform this operation after it receieves the command.
This command sets only the preset channels assigned by the 41.30 Edit Preset command to EE mode. The EE mode is cleared by the 20.64 Edit Off command. It takes the slave 5 frames to perform this operation after receiving the command.
This command will stop recording without affecting the state of motion of the device. Any channels in record will come out in response to this command, after 5 frames of delay. This command also clears the Manual Edit Record mode and the Select EE mode.
This command is used to actually initiate recording. When the device is playing, and the edit presets set by the 4X 30 Edit Preset command are in place, the preset channels will enter record a fixed delay after this command is received. The slave will enter Edit Rec mode at this point. It takes the slave 5 frames to enter Edit Rec after receiving this command.
This command un-freezes the output of the device.
This command freezes the output of the device. There is usually a 2-5 frame delay associcated with the actual freeze.
Sets the Timer-1 value to the time code indicated by DATA-1 thru DATA-4. For the time format see the 24.31 Cue Up With Data command.
Sets the Time Code Generator value to the time code indicated by DATA-1 thru DATA-4. The data format is as per the 24.31 Cue Up With Data command, with two additional bits to indicate Color Frame and Drop Frame mode as follows:
Data-1 Bit 7 | CF | Data-1 Bit 6 | DF |
---|---|---|---|
0 | Off | 0 | Off |
1 | On | 1 | On |
This command presets the value given by DATA-1 through DATA-4 to the User Bits of the Time Code Generator
| DATA-1 | | DATA-2 | | DATA-3 | | DATA-4 | |-----------|-----------|-----------|-----------|-----------|-----------|-----------|---------- | MSD | LSD | MSD | LSD | MSD | LSD | MSD | LSD | Bin Grp 2 | Bin Grp 1 | Bin Grp 4 | Bin Grp 3 | Bin Grp 6 | Bin Grp 5 | Bin Grp 8 | Bin Grp 7
Clears Tape timer 1 to 0
Sets the video in point to the value displayed on the slave. This is the value of the selected tape timer.
Sets the video out point to the value displayed on the slave. This is the value of the selected tape timer.
Sets the audio in point to the value displayed on the slave. This is the value of the selected tape timer.
Sets the audio out point to the value displayed on the slave. This is the value of the selected tape timer.
Set the Video In Point to the value indicated by DATA-1 thru DATA-4. The time format is as per the 24.31 Cue Up With Data command.
Set the Video Out Point to the value indicated by DATA-1 thru DATA-4. The time format is as per the 24.31 Cue Up With Data command.
Set the Audio In Point to the value indicated by DATA-1 thru DATA-4. The time format is as per the 24.31 Cue Up With Data command.
Set the Audio Out Point to the value indicated by DATA-1 thru DATA-4. The time format is as per the 24.31 Cue Up With Data command.
Increments the Video in point by one frame.
Decrements the Video in point by one frame.
Increments the Video out point by one frame.
Decrements the Video out point by one frame.
Increments the Audio in point by one frame.
Decrements the Audio in point by one frame.
Increments the Audio out point by one frame.
Decrements the Audio out point by one frame.
Turn off the In Entry, Out Entry Audio In, and Audio Out lamps.
auth - do these have any effect on the status bits?
Turn on the In Entry, Out Entry Audio In, and Audio Out lamps.
Resets ( sets to 0 ) the Data-8/Bit-6 Lost Lock bit in the 7X.20 status data . The LOST LOCK staus will be set when the servo is unlocked in the Play, Rec, or Edit mode.
This command is used for selecting the edit mode and selection of preset audio and video channels. These values are used by the Edit On and Edit Off comands.
Byte | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
---|---|---|---|---|---|---|---|---|
DATA-1: | X | Insert | Assemble | Video | X | TC | A2 (Cue) | A1 (Cue) |
DATA-2: | X | X | X | X | DA4 | DA3 | DA2 | DA1 |
when the 41.30 command is used, the audio channels are set as per the table in the Edit:Setup menu. When the 42.30 command is used and Bit1 or Bit0 of Data-1 are "1", the Cue channel is selected.
Presets the preroll time given by DATA-1 thru DATA-4. Only the seconds digit int DATA-2 is used, and must be in the range of 0-59. The time format is as per the 24.31 Cue Up With Data command.
the Tape/EE mode is seleted by DATA-1 as follows:
DATA-1 | Mode |
---|---|
00 | Auto ( Tape/EE ) |
01 | Tape |
FF | Follows the mode set in the STATE MAP on the SYSTEM menu in Local. |
Selects the SERVO REFERENCE signal according to DATA-1:
DATA-1 | State |
---|---|
00 | Auto |
01 | External |
02 | Input |
FF | Follows the mode set in REFERENCE on the SYSTEM:SYSTEM menu in Local. |
auth - this command is not implemented by the DVR2000, but many other systems use it to to select playback/record heads. On the DVR2000 the selection is automatic.
Sets the COLOR FRAME mode of the servo system according to DATA-1:
DATA-1 | State |
---|---|
01 | 2 Field |
02 | 4 Field |
03 | 8 Field |
FF | Follows the mode set in LOCK FIELD on the SYSTEM:SYSTEM menu in Local. |
Selects the TIMER system used in AUTO mode, and for display of the IN ENTRY, OUT ENTRY, IN PRESET, OUT PRESET, PREROLL, and CUE UP WITH DATA, etc. according to DATA-1:
DATA-1 | Mode |
---|---|
00 | TIME CODE |
01 | TIMER-1 |
02 | TIMER-2 |
FF | Follows the mode set in F6:CRNT TM on the HOME menu in Local. |
Switches the INPUT CHECK mode on/off as per DATA-1:
DATA-1 | Mode |
---|---|
00 | INPUT CHECK off |
01 | INPUT signals sent out VIDEO and MONITOR AUDIO OUTPUT connectors. |
Assigns the field on which to start the EDIT as per DATA-1:
DATA-1 | Mode |
---|---|
00 | Field1/Field2: The edit will start on the field the command was received on |
01 | Field 1 |
02 | Field 2 |
FF | Follows the mode set in F4:TIMING on the EDIT SETUP menu in Local. |
The following commands use the field selection:
Assigns the contents of the freeze picture to be field or frame as per DATA-1:
DATA-1 | Mode |
---|---|
00 | Field-1 or Field-2 ( not fixed ) |
01 | Field 1 |
10 | Field 2 |
11 | Frame |
These commands switch the AUTO mode off and on.
These commands switch the spot erase mode off and on.
These commands switch the audio split mode off and on.
Sets the output Horizontal phase. The 40.98 command sets the H Phase to 0, whereas the 41.98 command sets the H phase according to
H Phase = DATA_1 * 148 nsec
where DATA_1 is interpreted as a twos complement binary number in the range of -127 to 127.
4X 9B Output Video Phase Sets the output sync phase. The 40.9B command sets the output sync phase to 0 whereas the 41.9B command sets the output sync phase according to
Sync Phase = DATA_1 * 74 nsec
where DATA_1 is interpreted as a twos complement binary number in the range of -127 to 127.
Controls the audio input level. The control mode is assigned by bit 7 of DATA-1. , and the channel to be controled is assigned by bit 6 to bit 0 of DATA-1. When the 41 A0 command is received, the audio input levels of the channels assigned by DATA-1 will be set to their reference levels. When CMDLEN is not 1, the level data will be composed of two bytes per assigned channel in the order DA1, DA2, DA3, DA4, CUE. The DATA-1 bits look like:
Bit | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
---|---|---|---|---|---|---|---|---|
Value | Mode | X | X | Cue | DA4 | DA3 | DA2 | DA1 |
For Example, when the DATA-1 is 0x11, the command looks like:
DATA-1 | DATA-2 | DATA-3 | DATA-4 | DATA-5 |
---|---|---|---|---|
11 | DA1 LSB | DA1 MSB | CUE LSB | CUE MSB |
The level data are interpreted as per the formula:
Input Level = 20 log [(Level Data)/(4000h)] (dB)
Which gives coverage over the range of +12dB to -infinity.
Controls the audio output level. When the 41 A1 command is received, the audio output level of the channels selected in DATA-1 will be set to the reference level. Otherwise, it operates as per the 4X.A0 Audio input level command.
Controls the audio advance level. When the 41 A2 (fixed doc error here) command is received, the audio advance level of the channels selectd by DATA-1 will be set to the reference level. Otherwise, it operates as per the 4X.A0 Audio input level command.
Sets the autdio output phase. The 42.A8 command determines the audio output phase according to the 16-bit value encoded with the low byte in DATA-1 and the high byte in DATA-2. The values are interpreted as 2s complement binary, and currently have a range of +/- 80 samples. When the 40.A8 command is received, the slave will set the audio ouput phase to its nominal value.
Sets the Advance audio output phase. The 42.A9 command determines the audio advance phase according to the 16-bit value encoded with the low byte in DATA-1 and the high byte in DATA-2. The values are interpreted as 2s complement binary, and currently have a range of +0/-50 samples. the 40.A9 will set the audio advance phase to its nominal value.
When the slave receives the 00.1D Local Enable command, the control panel may be used according to the local key map that was set by this command. When the slave receives the 00.0C Local Disable command all the keys, buttons, and adjustment controls on the control panel are disabled. The Eject button can always be used. If the slave receives the 41.B8 command, the local key map is preset by the block level in accordance with DATA-1. IF it receives the 4X.B8 command ( X > 2 ) The local key map is preset by the Switch level.
Block Level switches:
Bit 7 | Bit 6 | Bit 5 | Bit 4 | Bit 3 | Bit 2 | Bit 1 | Bit 0 |
---|---|---|---|---|---|---|---|
Tracking Control | Monitor Control | Audio Control | Video Control | Transport Control |
- "1": This function will be enabled when in remote
- "0": This function will be disabled in remote.
When DATA-2 or more are added, control data with two bytes per each block assigned by DATA-1 are added following DATA-1.
At present the transport switches are defined as follows:
Bit | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
---|---|---|---|---|---|---|---|---|
1st Byte | Execute | Preroll | Search | Rec | Play | Stop | Standby | |
2nd Byte | Var | Jog | Shuttle |
None of the other blocks have any switches assigned, but rather operate as follows:
Video Control: Video phase and Sync phase can be adjusted on the system menu in remote mode.
Audio Control: Audio levels and output phase can be adjusted on the Audio:DA out menu in remote mode.
Monitor Control: the wfm monitor output selection on the system:wfm monitor menu and the montior level adjustments and monitor out selection on the system:audio monitor menu can be adjusted in remote mode.
Tracking Control: Tracking adjustments in the system:tracking menu can be made in remote mode.
Requests the TIME DATA or USER BITS. Slave responds as per DATA-1:
Bit 7 | Bit 6 | Bit 5 | Bit 4 | Bit 3 | Bit 2 | Bit 1 | Bit 0 |
---|---|---|---|---|---|---|---|
VITC UB | LTC UB | TIMER 2 | TIMER 1 | VITC TIME | LTC TIME |
That is to say that the response follows the bit set in DATA-1 as per the following table
Request | Response |
---|---|
DATA-1=01 LTC TIME | 74.04: LTC TIME DATA |
74.14: CORRECTED LTC TIME DATA | |
DATA-1=02 VITC TIME | 74.06: VITC TIME DATA |
74.16: HOLD VITC TIME DATA | |
DATA-1=04 TIMER-1 | 74.00: TIMER-1 DATA |
DATA-1=08 TIMER-2 | 74.01: TIMER-2 DATA |
DATA-1=10 LTC UB | 74.05: UB (LTC) DATA |
74.15: HOLD UB (LTC) DATA | |
DATA-1=20 VITC UB | 74.07: UB (VITC) DATA |
74.17: HOLD UB (VITC) DATA |
Now, when requesting timecode, the results depend on the tape speed because at very low speeds ( less than .25 play speed ) it may not be possible to recover timecode. However, if VITC is present, that may be used instead. To automate this decision process, Sony has provided the special 61.0C.03 command which will return the best source of time code as per the table below. Note that when both LTC and VITC are not good you get back the 74.14 corrected LTC data. In this case, the time is actually the last good LTC time corrected by the tape timer.
LTC Status | VITC Status | Return Data | Return code |
---|---|---|---|
OK | OK | LTC | 74.04 XX XX XX XX |
NG | OK | VITC | 74.06 XX XX XX XX |
OK | NG | LTC | 74.04 XX XX XX XX |
NG | NG | LTC(*) | 74.14 XX XX XX XX |
LTC Status | VITC Status | Return Data | Return code |
---|---|---|---|
OK | OK | VITC | 74.06 XX XX XX XX |
NG | OK | VITC | 74.06 XX XX XX XX |
OK | NG | LTC | 74.04 XX XX XX XX |
NG | NG | LTC(*) | 74.14 XX XX XX XX |
When the slave receives a 61.20 Status Sense command, it will respond with a 74 20 Status Data response. The starting byte number and number of bytes requested are encoded in DATA-1, with the starting reg in the high nibble (bits 7-4) and the requested byte count in the low nibble ( bits 3-0 ).
DATA-1 thru DATA-4 contain the timer-1 data formatted as per the 24.31 Cue up with data command
DATA-1 thru DATA-4 contain the timer-2 data formatted as per the 24.31 Cue up with data command
DATA-1 thru DATA-4 contain the LTC data formatted as per the 24.31 Cue up with data command
DATA-1 thru DATA-4 contain the LTC User bits data formatted at per the 44.05 User Bit Preset command.
DATA-1 thru DATA-4 contain the VITC data formatted as per the 24.31 Cue up with data command
DATA-1 thru DATA-4 contain the VITC User bits data formatted at per the 44.05 User Bit Preset command.
DATA-1 thru DATA-4 contain the Time code generator data formatted as per the 24.31 Cue up with data command
DATA-1 thru DATA-4 contain the Time code generator User bits data formatted at per the 44.05 User Bit Preset command.
When the slave receives a 61.20 Status Sense command, the following data will be sent back in response according to the request:
Byte No. | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
---|---|---|---|---|---|---|---|---|
0 | X | X | Tape Out | Servo Ref Missing | X | X | X | Local |
1 | Standby | X | Stop | Eject | Rewind | Fast Fwd | Record | Play |
2 | Servo Lock | TSO Mode | Shuttle | Jog | Var | Tape Dir | Still | Cue Up |
3 | Auto Mode | Freeze On | X | CF Mode | A Out | A In | Out | In |
4 | Select EE | Full EE | X | Edit | Review | Auto Edit | Preview | Preroll |
5 | X | Insert | Assemble | Video | A4 | A3 | A2 | A1 |
6 | X | Lamp Still | Lamp Fwd | Lamp Rev | Srch LED 8 | Srch LED 4 | Srch LED 2 | Srch LED 1 |
7 | X | X | Aud Split | Sync Act | X | Spot Erase | X | In/Out |
8 | Buzzer | Lost lock | Near EO T | EOT | CF Lock | Svo Alarm | Sys Alarm | Rec Inhib |
9 | Fnc Abort | X | X | X | X | X | X | X |
**Description of Bits: **
Data 0:
- Bit 5: Tape Unthreaded (Cassette Out) When the tape is threaded, this is 0. When it is completely unthreaded this is 1. When threading or unthreading, who knows what it is.
- Bit 4: Servo Ref Missing When servo reference is absent this is 1.
- Bit 0: Local When remote operation is inhibited by the "remote/local" switch on the panel this is 1.
Data 1:
- Bit 7: Standby When the tape is threaded and the scanner is locked but the tape is stopped, this is 1.
- Bit 5: Stop When the machine is in full stop, this is 1. The thread state depends on the tape/ee and standby settings.
- Bit 4: Eject When the tape is ejecting this is 1.
- Bit 3: Rewind When the machine is in fast reverse this is 1.
- Bit 2: Fast Fwd When the machine is in fast forward this is 1.
- Bit 1: Record This bit goes from 0 to 1 some number of frames after the machine starts recording. For the DVR2000 we measured 5 frames. Others have varying delays on the record status.
- Bit 0: Play This bit goes from 0 to 1 some number of frames after the machine starts playing. For the DVR2000 we measured 5 frames. Others have varying delays on the play status.
Data 2:
- Bit 7: Servo Lock 1 indicates servos are locked. This is a necessary condition for an edit to occur correctly.
- Bit 6: TSO Mode Bit is 1 in tape speed override: in this mode, audio and video are still locked though speed is off play speed by +/- up to 15%.
- Bit 5: Shuttle
- Bit 4: Jog
- Bit 3: Var
- Bit 2: Tape Dir
- Bit 1: Still
- Bit 0: Cue Up
Data 3:
- Bit 7: Auto Mode
- Bit 6: Freeze On
- Bit 4: CF Mode
- Bit 3: A Out
- Bit 2: A In
- Bit 1: Out
- Bit 0: In
Data 4:
- Bit 7: Select EE
- Bit 6: Full EE
- Bit 4: Edit
- Bit 3: Review
- Bit 2: Auto Edit
- Bit 1: Preview
- Bit 0: Preroll
Data 5:
- Bit 6: Insert
- Bit 5: Assemble
- Bit 4: Video
- Bit 3: A4
- Bit 2: A3
- Bit 1: A2
- Bit 0: A1
Data 6:
- Bit 6: Lamp Still
- Bit 5: Lamp Fwd
- Bit 4: Lamp Rev
- Bit 3: Srch LED 8
- Bit 2: Srch LED 4
- Bit 1: Srch LED 2
- Bit 0: Srch LED 1
Data 7:
- Bit 5: Aud Split
- Bit 4: Sync Act
- Bit 2: Spot Erase
- Bit 0: In/Out
Data 8:
- Bit 7: Buzzer
- Bit 6: Lost lock This bit is controled by the Lost Lock Reset command. It is set when the servos are unlocked in the PLAY, REC, or EDIT modes.
- Bit 5: Near EOT
- Bit 4: EOT
- Bit 3: CF Lock
- Bit 2: Svo Alarm
- Bit 1: Sys Alarm
- Bit 0: Rec Inhib
Data 9:
auth - here's a code snippet for you c-heads.
char *StatusBitStrings[][8] =
{
// Data 0
{" "," ","Unthread ","Svo Ref ",
" "," "," ","Local "},
// Data 1
{"Standby "," ","Stop ","Eject ",
"Rewind ","Fast Fwd ","Record ","Play "},
// Data 2
{"Servo Lock","TSO Mode ","Shuttle ","Jog ",
"Variable ","Tape Rev ","Still ","Cue "},
// Data 3
{"Auto Mode ","Freeze On "," ","CF Mode ",
"A Out ","A In ","Out ","In "},
// Data 4
{"Select EE ","Full EE "," ","Edit ",
"Review ","Auto Edit ","Preview ","Preroll "},
// Data 5
{" ","Insert ","Assemble ","Video ",
"A4 ","A3 ","A2 ","A1 "},
// Data 6
{" ","Lamp Still","Lamp Fwd ","Lamp Rev ",
"Srch LED 8","Srch LED 4","Srch LED 2","Srch LED 1"},
// Data 7
{" "," ","Aud Split ","Sync Act ",
" ","Spot Erase"," ","In/Out "},
// Data 8
{"Buzzer ","Lost lock ","Near EOT ","EOT ",
"CF Lock ","Svo Alarm ","Sys Alarm ","Rec Inhib "},
// Data 9
{"Fnc Abort "," "," "," ",
" "," "," "," "},
};
The Status bits communicate much about the progress of a motion command. The precise timing of each signal varies almost from machine to machine, and many edit controlers expect certain timing behaviour of these signals. Herein lie many of the problems associated with edit controllers, edit timing, and just plain wacky transport behavior.