1
\$\begingroup\$

I have a retro EMCO F1P CNC machine with a matching M1 controller that comes with mini data cassettes containing the "Machine State Data" which must be fed into registers of the controller before operation.

Unfortunately my cassette is missing, but I have managed to find this MP3 recording of it online.

The machine also supports RS232 input of this data. So my question is thus, is the format of the audio in the mp3 recognizable, and would it be possible to deduct simply by looking at the audio in the MP3 to determine how to format the equivalent RS232 data?

Some hints are to be found on page 9 in the service manual of the machine:

RS232c interface (V24 and 20mA), 150 - 2400 bd tape recorder (Phillips MDCR) 600 signs/sec. (corresponds to 6 kbaud)

This way I would avoid having to find equipment to record the MP3 to a cassette, instead I could simply craft a binary file to send over TTY from my laptop, and even better, write a small software that would craft this file on the fly based on parameters selectable from an UI.

EDIT: Here is a picture of the cassette player:

enter image description here

\$\endgroup\$
2
\$\begingroup\$

Well, maybe. It might be helpful to look at the circuitry that processes the audio data to try to figure out what it's doing. You mentioned the spec is 600 signs per second, corresponding to 6 k baud. That seems to me like they are using some method of multiplexing 10 bits into each 'sign'. This is could well be some sort of multitone modulation where each bit is represented by a different frequency. The trick would be figuring out the specifics of how the symbols are constructed and then how to re-frame that data for transmission over the serial interface. tl;dr - it may be doable, but it will require some reverse-engineering.

Edit: after opening up the file in Audacity, it actually looks like it may be some sort of NRZ code. Looks like a 3 level format of some sort.

I'm not sure what the name is for the encoding, but it seems that it's a series of positive and negative going pulses with gaps inserted between the pulses that represent the data bits. I believe these gaps represent 1s as there are several long segments of pulses with no gaps, and it's far more likely for a binary file to have a long section of 0s than it is to have a long section of 1s. It would not be very difficult to write a script to extract the data. However, I am not sure if that data will be in the correct format to transmit via the serial port.

Success! This looks like a description of a very similar format: http://www.unige.ch/medecine/nouspikel/ti99/cassette.htm#Cassette%20tape%20format

encoding

The timings are a bit different and I think the bit levels might be inverted from what they are on your tape, but it seems like a very similar format.

\$\endgroup\$
1
  • \$\begingroup\$ Excellent! Now I just have to write a program to parse it ... \$\endgroup\$ – Lennart Rolland Apr 7 '15 at 9:53
1
\$\begingroup\$

Why can't you simply play your file into the decoder? You already have the system complete with cassette player - simply inject the audio into the decoder somewhere after the playback amplifier.

Unless the cassette player is directly reading digital data from the tape (unlikely), this should be fairly easy.

\$\endgroup\$
1
  • \$\begingroup\$ Smart idea! This might solve the problem, but it doesn't answer the question, which out of pure curiosity I really would like to find out. \$\endgroup\$ – Lennart Rolland Apr 7 '15 at 2:38
1
\$\begingroup\$

I scanned the service manual. It seems unclear on the MDCR tape player; specifically, is it part of your machine or does it connect to it. I see no audio connector on the interface panel so if it is separate, it must have connected to the RS232 port.

Unfortunately, listening to the MP3, it doesn't sound like any modem I've ever heard. I suspect the MDCR has a non-standard audio to RS232 decoder. I think the MP3 is probably worthless to you.

Edit: based on the added photograph, I see that the MDCR is part of the unit. You may be able to open up the console and find an audio cable from the MDCR to the controller. If so and it is a standard connector (probably RCA or BNC), you may be able to hook up an external MP3 player to the controller.

The service manual also notes that the configuration is provided on paper tape for RS232 upload. (This would have probably been through an ASR33 teletypewriter such as below.) ASR33

If you can find a file read from the paper tape, this would be suitable for sending to the RS232 input. You would need a PC with a serial port (or a USB to serial adapter) and a program to upload the file to the serial port.

\$\endgroup\$
1
  • \$\begingroup\$ Nice! I have added a picture of the cassette player to the question. It is built in to the controller. Also I am not sure if the cassette player has an RS232 interface, but the machine accepts RS232 in addition to it. \$\endgroup\$ – Lennart Rolland Apr 7 '15 at 4:00

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.