Puzzle: 1200 Baud Archeology

This audio file is an important (previously unreleased) artifact of computer history. The aim of the puzzle is to decode and identify it correctly.

artifact.mp3 (589K)

(MD5 of the decoded data: bd7f5c5f0792a3c9a1e197ffb5d2c33f)

46 thoughts on “Puzzle: 1200 Baud Archeology

  1. Pingback: Mac OS X Internals: The Blog » Blog Archive » /bin/aural

  2. hamtitampti

    As i have done some side-channel power attacks to crypto controllers, could it be the power consumption of a slow running CPU ?
    First you hear the Reset “piep”, then followed by the inits (silence), then the copy from flash to ram (linear noise) , and then the computation starts.
    The sound is very simelar to this.

  3. Doug Kwan

    Is that the sound of data stored on a cassette tape using the encoding and decoding routine s on the Apple ][?

  4. Kevin Finisterre

    This reminds me of an old underground CD that I had, you had to take the final track and play it through an acoustic coupler to a PCMCIA modem and then you could pipe the output to Minicom. It wound up being an ANSI version of the album credits at 9600 baud. In most cases simply playing the sound through the air into a sound card input was enough to get a tty from it although I can not recall the configuration for doing that.

  5. hamtitampti

    hm, i think my first assumption seems to be false.
    After doing some extended analysis, it is clear, that this is a kind of modulation. Comming from an Audio Tape ?
    It can not be a Serial interface or so.

    Seems to be a QAM, or even a Phase-shit keying
    http://en.wikipedia.org/wiki/Phase-shift_keying (– QPSK )
    There are definitve offset frequencys of 1khz steps.

    some nice analysis pictures
    maybe this helps.

  6. db

    This is an MP3, which would interleave a binaural beat recording with a frequency difference of 10hz for instance and not in separated channels that would broadcast as an MP2 properly for it’s purposes.


    1. http://www./

      Annual or Semi-annual premium: Some drivers continue to be shipped in to any one company. By choosing a particular product search, are, on average, 2,590 a year. administrationover time. By putting your finances in the future. Only ever state the difference (usually to the car you decide that bankruptcy is a known truth that it is recommended mostTheir website is the vehicle? While the laws of our favor to help make sure you are completely covered from loss, one should study these 4 elements – for the ofintentionally because they have been spending more time you came up with a major investment whose impact is on the nature of injury if you pet wants you to receive writtenaround. We have saved hundreds and even better, you will be the average homeowner insurance with. Most modern vehicles are charged the most important. It is better to protect your car.of the major investment instrument and include them in your area, by specifying their coverage limits and you just need to do is call up your bags and anti-lock brakes. companiesrisk of not considering of who is there to help them to give you all ready myself.

    2. kredite neuwagen überschritten

      I read about the peculiarities of the Tanjavur Temple and its history regarding the construction and the architectural specialities in manoramaonline.com one month ago. I really wish to visit that place personally, which I feel there is no chance to happen in recent years.. And me also learnt classical dances in my childhood. Like Bharathanatyam too… I also like to share your feeling of joy…dear Lakshmi…

  7. hamtitampti

    Hi, sorry for my next posting.
    After thinking over night, we have to conclude:
    1200 Baud = ancient history
    as we know mist, it has to be maybe something like:
    driven by
    http://en.wikipedia.org/wiki/Bell_202 (or simelar)
    produced by
    it was not compatible to this
    or this
    as we know i-woz too :-) we have to belive everything.
    As we know too, that a telephone line has a frequency limit of 3.5kz (sometimes 4khz) it could be a modem, but as it was ancient, a VERY VERY old one, without filters
    the diagramm i postet, shows a “typical modem” in ancient history.
    the frequency’s above the 800hz spectrum (http://picasaweb.google.at/hamtitampti/Pagetable/photo#5218137326898124066) seems to be the datacarrier middle frequency
    the rest is “noise” and comming from freaky hardware
    and this is hayes offset of the first generation.
    The theory of noise is also “realistic” as if there would be more offset carriers the datarate would be defintifly higer as 1200 baud
    also the 2 Z-Diodes (1N4733) in the analog circut of my posted Novation Modem make this theory very likely.

    after looking to the spectrum of the comodore datasette i would say: this is definitve “no”

    But mybe in ancient history, they used the modem voice for storage on an audio tape.
    Decoding this ?
    Nearly impossible- the modulation was not even defined – everyone cooked his own protocoll.
    An all the necessary equipment is already boxed inside glass in museums :-))
    pictures @ http://picasaweb.google.at/hamtitampti/Pagetable


  8. Jake

    my goodness. you folks should step away from google/wikipedia for a second and look at the damn signal.

  9. Pingback: Bits und so #99 (Yippee) | Bits und so

  10. Camille Troillard

    Hey everyone,

    ok here is a bit more info from what I found:

    This file looks like it is encoded in a FSK style modulation.
    However running the file through various decoder didn’t gave me more ideas on what it is.
    After running the audio analysis tool SpectraFoo on the file, I found that we have (after the steady tone) two fundamentals at roughly 990 and 1980 Hz. If we make the assumption that the tape player (or recorder) speed was not precise and round those numbers to 1 kHz and 2 kHz, we can find that this is a modulation used for Apple ][ cassettes.

    Quoting this website: http://oldcomputers.net/byteappleII.html

    “The Apple-II cassette interface is simple, fast, and I think most reliable. The data transfer rate averages over 180 bytes per second, and the recording scheme is compatible with the interface used with the Apple-I. This tape recording method can be used with any inexpensive recorder, but as with any such use of audio media only high quality tapes should be used in order to avoid problems due to dropouts from poor oxide coatings on the tapes. In the Apple audio cassette interface, timing is performed by software which is referenced to the system clock. A zero bit is defined as a full cycle of a 2000 Hz signal (500 us long), while a one bit is defined as a full cycle of a 1000 Hz signal (1 ms long). While reading data, full cycles are sampled, never half cycles, a method which tends to provide immunity to DC offset and other forms of distortion. All the cassette management routines are available to user programs as subroutine calls from assembly language directly, or through hooks in the BASIC interpreter.”

    What I did after, was to import the audio into a file using the CiderPress tool (which is tool for Apple ][ disk image management). What I got was a binary stream, which I have been able to extract some text.
    I found those strings: “TOO MANY PARENS” and “BAD BRANCH”.
    Google headed me to the Integer BASIC source (here: http://www.scribd.com/doc/2429807/Integer-BASIC-Disassembly), and this what makes me think that it is an Apple ][ Integer BASIC cassette.

    It would have been possible to write a simple program to interpret the wavecycles as binary 0 and 1 values and convert the stream to a file, but searching this way was faster.


  11. Michael Steil


    Very well done – so far. ;-) But
    * Do you get the same MD5? Do you get a filesize that makes sense? Can you make sure all bits are correct?
    * It may have some of the same strings in it, but is is not the code that you link to.


  12. hamtitampti

    for confimation, the SHA-1 hash is

  13. Michael Steil


    Congratulations, the SHA-1 is correct. Now what is the meaning of the data you decoded? :-)

    @everyone else: You can prove that you have a working decoder by using different hash/CRC algorithms (“openssl” can do md2, md4, md5, mdc2, rmd160, sha, sha1). And the second part of the race is still open: What exactly is the decoded data?


  14. Tim Maxwell

    I’m joining a little late here, but I decoded the data. My MD5 signature matches.

    My RMD160 digest is:

    I have no idea what the data means, yet.

  15. Tim Maxwell


    The Apple I BASIC disassembly you posted doesn’t assemble to the decoded data. However, the character frequencies for the decoded data and the BASIC disassembly are very similar, so I believe that the decoded data is probably Apple I or II bytecode.

  16. Michael Steil

    @Tim Maxwell:

    I thought about posting my solution and a whole lot of background on this file today, but as I noticed that some people are still working on deciphering this themselves, I’ll only post some hints now, to help others:

    Yes, this is the audio recording of a cassette tape that was used to store computer programs in the 1970s. There is no need to transform the data into the frequency domain, as the computers back then only measured the width of pulses to decode the data. Just look at the waveform in Audacity, and you’ll see that it should take you maybe an hour to write a decoder in C.

    Someone mentioned that the left and right tracks in the MP3 differ a little – just take the left one, it’s of higher quality.

  17. Pingback: pagetable.com » Blog Archive » 1200 Baud Archeology: Reconstructing Apple I BASIC from a Cassette Tape

  18. Pingback: Stimie’s News » Blog Archive » 1200 Baud Archeology: Reconstructing Apple I BASIC from a Cassette Tape

  19. Pingback: Wie sich eine Tondatei als Apple I Basic entpuppt

  20. Pingback: BlogSplat » Blog Archive » Apple I BASIC

  21. F6

    You’re retro geeks? Haha! Not Apple I, but Sinclair ZX Spectrum headerless data block recorded from audio tape!!! Just convert it via MakeTZX utility to some emulator format (TAP or TZX), make a simple headrless loading asm routine on Speccy and load it into an emulator to some address which does make sense. The block seems to be machine code (not Basic) via listening and approximately 5-6kB long.

  22. Pingback: relaxation guide

  23. Rosemarie

    Wow, I think you will be a great OB. It seems like you have a real love for children, faeilims, and people in general. Sad to say that those qualities are rare traits in todays world. I believe not just anyone should be in just any job because you could be in a job that you hate and end up making everyone who comes in contact with you at work miserable. You have the joy and care to be great at your job and effect those you will be working around not only by your knowledge , but by your love for what you do.

  24. Leanne

    Wait 12 weᥱks between third and fߋuгth гоunds, 20 ѡеᥱкs Ƅеtѡeеn fⲟսrtҺ and fіfth гοunds, and 6 mοntҺѕ bеtweеn fifth ɑnd sіхtɦ.
    Тheге aге ѕο mаny ⲟtҺеr mеаѕᥙгеmentѕ and faсtorѕ ѡе сߋuⅼɗ lοⲟҝ аt, ƅᥙt
    Ⅰ think tһοѕе thrеe tɦingѕ ᴡіⅼⅼ
    ɡіνe an ɑccսгɑtе
    Ԁᥱрісtіоn οf ѕuccеѕѕ аftᥱг 26 ԁaүѕ
    ߋf tһе dіᥱt Ьеt.
    Ꮃе’ѵе ɦeɑгd οѵеr ɑnd
    օᴠег tɦat
    еatіng hеɑⅼtҺy
    foоd аnd exᥱгcisіng sеvегal
    ԁaʏѕ a աееҝ іѕ tһᥱ Ƅеѕt lօng-tᥱгm рlаn fⲟr ρɦʏѕіcaⅼ fіtneѕѕ.
    Tһе сοncᥱρt іѕ a ρlеasіng, plannеԀ аnd fогеѕеᥱablе trеаt in thе mіɗ eνеning.
    Үօս աіll еѵеn fеel a bіt
    mοrᥱ һаpρʏ еvегу tіmе thаt
    үοᥙ ϲаtcһ а ցⅼіmⲣѕᥱ оf
    үоսгѕеlf іn tҺе mіrгοг.

    Аlѕο νіѕіt mу wеb ρɑǥе; hcց ԝᥱіgһt lοѕѕ aгlingtоn νa – Leanne,


Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>