The Museum of HP Calculators


Tape Deck Counter to Time Converter For the HP-67/97

This program is Copyright © 1997 by John H. Meyer and is used here by permission.

This program is supplied without representation or warranty of any kind. The author and The Museum of HP Calculators therefore assume no responsibility and shall have no liability, consequential or otherwise, of any kind arising from the use of this program material or any part thereof.

Card Labels
Tape Deck Counter to Time Converter
Shift Input first counter calibration Input first time calibration Input second
counter calibration
Input second time calibration Run calibration routine
Label Counter to Time Time to Counter Input counter, Enter:
Input incr. Time.
Compute new counter
Add times in X, Y registers Subtract times in X, Y registers
Key A B C D E

Overview And Instructions

This program converts from the non-linear reading of a mechanical video or audio tape deck counter to elapsed time, and vice versa. For instance, if the tape counter reads 250, the program will compute that 19 minutes and 18 seconds have elapsed. Or, if the counter reading is 325 and a 4 minute 25 second track is to be recorded, the program computes that the counter reading will be 396 at the end of the passage.

The basic equation used is:

       t = K1θ - K2θ2

where:
t = elapsed time
θ= tape counter reading (assumed to have been reset to zero at beginning of tape)
K1, K2 = constants which depend on tape deck and tape cassette (or video tape deck). These constants are determined automatically by the calibration routine in the program

For best results when running calibration program, read counter at two different times: Approximately half-way through the tape, and near the end of the tape. Program displays "error" if counter or time reading are greater than allowed by tape deck-tape combination (e.g., input 53 minutes for a 46 minute tape will give an error). All times are expressed in "minutes.seconds". Calibration factors can be stored on seconds side of card.

Examples

Example 1

You have a TDK SA-90 cassette (46 minutes per side, nominal). At 23 minutes into the tape (approximately half way), the counter reads 305. At 44 minutes (near the end), the counter reads 704. Compute K1 and K2.

  1. Type "305" and press [f] [A].
  2. Type "23" and press [f] [B].
  3. Type "704" and press [f] [C].
  4. Type "44" and press [f] [D].
  5. Press [f] [E] to compute the constants.
  6. Optional: [RCL] [8] to recall K1.
  7. Optional: [RCL] [9] to recall K2.

Example 2

Tape reads 423. How much time has elapsed?

Type "423". Press [A]. The display shows "30.17" (i.e., 30 min., 17 sec. has elapsed.)

Example 3

Tape reads 490. You have a record with an eleven minute twenty-seven second cut. How much time is left on the tape (i.e., will the passage fit?). What will the counter reading be after the new recording is added?

Type "46". Press "Enter". Type "490". Press [A]. Press [E] (to subtract the two times). Answer (with calibration factors shown above): 11 minutes, 59 seconds.

To get counter reading, type "490". Press "Enter". Type "11.27". Press [C]. The answer is 742 (again assuming the calibration factors computed above).

You can save the calibration factors for future, typically on the second side of the card you use for the program (which uses only one side). To do this, make sure your calibration factors are in registers 8 and 9. Then, enter the following:

[f] [CHS]
[f] [EEX]
[f] [CHS]
[f] [ENTER]

The display will indicate: Crd. Insert your card into the reader.

The next time you use the program, load both sides of the card, and you won't need to re-calibrate.

The Program

LINE    CODE      KEYS       KEYSTROKES (67)  COMMENTS
001   31 25 11    Label A    [f] [LBL] [A]
002      33 07    STO7       [STO] [7]
003      34 08    RCL8       [RCL] [8]
004         71    ×          [×]              Compute t
005      34 07    RCL7       [RCL] [7]
006      32 54    x2         [g] [X2]
007      34 09    RCL9       [RCL] [9]
008         71    ×          [×]
009         51    -          [-]
010      32 74    →H.MS      [g] [→H.MS]
011      23 02    Display 2  [DSP] [2]
012      35 22    RTN        [h] [RTN]
013   31 25 12    Label B    [f] [LBL] [B]
014      31 74    H.MS→      [f] [H ←]
015      34 09    RCL9       [RCL] [9]
016         71    ×          [×]              Compute q
017         04    4          [4]
018         71    ×          [×]
019      34 08    RCL8       [RCL] [8]
020      32 54    X2         [g] [X2]
021      35 52    X⇔Y        [h] [X⇔Y]
022         51    -          [-]
023      31 54    √x         [f] [√x]
024      34 08    RCL8       [RCL] [8]
025      35 52    X⇔Y        [h] [X⇔Y]
026         51    -          [-]
027         02    2          [2]
028         81    ÷          [÷]
029      34 09    RCL9       [RCL] [9]
030         81    ÷          [÷]
031      23 00    Display 0  [DSP] [0]
032      35 22    RTN        [h] [RTN]
033   31 25 13    Label C    [f] [LBL] [C]
034      35 52    X⇔Y        [h] [X⇔Y]
035   31 22 11    GSBA       [f] [GSB] [A]
036      35 83    H.MS+      [h] [H.MS+]
037   31 22 12    GSBB       [f] [GSB] [B]    Compute q'
038      23 00    Display 0  [DSP] [0]
039      35 22    RTN        [h] [RTN]
040   31 25 15    Label E    [f] [LBL] [E]    Compute t1-t2
041         42    CHS        [CHS]
042   31 25 14    Label D    [f] [LBL] [D]    Compute t1+t2
043      35 83    H.MS+      [h] [H.MS+]
044      23 02    Display 2  [DSP] [2]
045      35 22    RTN        [h] [RTN]
046   32 25 15    Label e    [g] [LBL f] [e]  Solve two
047      34 12    RCLB       [RCL] [B]        simultaneous
048      31 74    H.MS→      [f] [H←]         equations
049      33 06    STO6       [STO] [6]        for
050      34 14    RCLD       [RCL] [D]        K1 and K2
051      31 74    H.MS→      [f] [H←]
052      33 07    STO7       [STO] [7]
053      34 11    RCLA       [RCL] [A]
054      32 54    X2         [g] [X2]
055      34 13    RCLC       [RCL] [C]
056         71    ×          [×]
057      34 13    RCLC       [RCL] [C]
058      32 54    X2         [g] [X2]
059      34 11    RCLA       [RCL] [A]
060         71    ×          [×]
061         51    -          [-]
062      34 11    RCLA       [RCL] [A]
063      32 54    X2         [g] [X2]
064      34 07    RCL7       [RCL] [7]
065         71    ×          [×]
066      34 13    RCLC       [RCL] [C]
067      32 54    X2         [g] [X2]
068      34 06    RCL6       [RCL] [6]
069         71    ×          [×]
070         51    -          [-]
071      35 52    X⇔Y        [h] [X⇔Y]
072         81    ÷          [÷]
073      33 08    STO8       [STO] [8]
074      35 53    R↓         [h] [R↓]
075      34 11    RCLA       [RCL] [A]
076      34 07    RCL7       [RCL] [7]
077         71    ×          [×]
078      34 06    RCL6       [RCL] [6]
079      34 13    RCLC       [RCL] [C]
080         71    ×          [×]
081         51    -          [-]
082      35 52    X⇔Y        [h] [X⇔Y]
083         81    ÷          [÷]
084      33 09    STO9       [STO] [9]
085      35 22    RTN        [h] [RTN]
086   32 25 11    Label a    [g] [LBL f] [a]   Store θ1
087      33 11    STOA       [STO] [A]
088      35 22    RTN        [h] [RTN]
089   32 25 12    Label b    [g] [LBL f] [b]   Store t1
090      33 12    STOB       [STO] [B]
091      35 22    RTN        [h] [RTN]
092   32 25 13    Label c    [g] [LBL f] [c]   Store θ2
093      33 13    STOC       [STO] [C]
094      35 22    RTN        [h] [RTN]
095   32 25 14    Label d    [g] [LBL f] [d]   Store t2
096      33 14    STOD       [STO] [D]
097      35 22    RTN        [h] [RTN]

Go back to the software library
Go back to the main exhibit hall