Tape Storage for a Breadboard Computer - KCS Part 1 - The Curious Place 001

Поделиться
HTML-код
  • Опубликовано: 14 окт 2024

Комментарии • 66

  • @PaulDriverPlus
    @PaulDriverPlus Год назад +4

    oh my, I remember building one of these in 1979 at 13yrs of age with my neighbor who programmed embedded computers for industrial systems.
    I was lucky to have Tom as a customer on my paper route.

  • @AndersNielsenAA
    @AndersNielsenAA 2 года назад +4

    Subscribed :)
    Kudos for going the discrete logic way about this. When I went through this a few months ago I realized Don Lancaster didn’t really have a 6502 in mind when he made his circuits for tape. That’s why I decided I would do the decoding in software on the 6502 instead - that way all you need is a comparator IC for input from tape and a low pass filter for converting squares to sines.
    That’s turned into a nice little 1.5x4cm board with a mini jack on one end and IO on the other end that’s easily connected to the 6522 VIA - you can check out my video using it to save to 7” tape reels if you didn’t already :)

  • @melkiorwiseman5234
    @melkiorwiseman5234 Год назад

    I have only seen two methods used for tape storage.
    The first method was identical to the MFM storage method used on hard drives: All bits recorded took exactly the same time to record, with the time divided into four portions. Only portion 3 would change for 0 and 1 bits. First there was a clock pulse of a fixed length, then a pause of the same length, then the data bit which would either be a second pulse of the same length as the first or a pause the same length as the clock pulse, then there would be a pause of the same length. The advantage of this method is that the timing could "drift" slightly but the CPU could re-synchronise with each leading clock pulse, so any drift would not accumulate.
    The other method was Frequency Shift Keying which recorded two different frequencies and in at least one system I saw, used a Phase-Locked Loop to detect one of the two frequencies so that it would put out the correct bit at the right time. This method required that there be a re-synchronisation periodically to take care of any drift in the tape speed, which was taken care of by the "stop" bits and the "start" bit.
    The MFM method was notably used by the TRS-80 and due to an error in the cassette timing code, reading back tapes was nowhere near as reliable as it should have been. A later correction to the code fixed this mistake by adjusting the read timing, but by then the computer had earned its eternal nickname of "trash-80" and the lack of reliable cassette recording played a large part in that.

  • @BalugaWhale37
    @BalugaWhale37 2 года назад +5

    This is a great presentation. You must have put a lot of work into illustrating the concepts. When I first read the description of the number of cycles for each symbol, I did not understand why they had different cycle counts. But your illustration showed me that the time of each symbol, so defined, is the same. Brilliant.

    • @GregStrike
      @GregStrike  2 года назад +1

      Hey Eric! I'm glad you enjoyed it! Thanks for the feedback. It means a ton!

  • @randkeyboards
    @randkeyboards 2 года назад +2

    Very cool video! Thanks for the info

  • @TastyBusiness
    @TastyBusiness 2 года назад +2

    Sure, first few Altairs were just the front panel and a minimal RAM configuration, but most folks upgraded their machines in short order to be more interactive.
    Glad to see the classic KSC being given some time, and low level examination. I look forward to seeing how this progresses.

  • @Curt-0001
    @Curt-0001 2 года назад +3

    Wow, this is great! Thanks for taking the time to make this.

    • @GregStrike
      @GregStrike  2 года назад

      Thanks Curt! I'm really glad you liked it!

  • @stuartsmith6777
    @stuartsmith6777 Год назад +2

    I was thinking where to go next with my Ben Eater 6502. I would definitely be interested in a kit. looking forward to the next video.

    • @GregStrike
      @GregStrike  Год назад

      Hey Stuart! It's been a while since you left this comment, but, I wanted to let you know that I did end up making the kits!

  • @BastetFurry
    @BastetFurry Год назад +2

    >lists 6502 computers
    >Forgots THE 6502 computer, the Commodore 64
    Duuuuude!

  • @RussellPolo
    @RussellPolo 2 года назад +4

    Back in the day I knew the sound of the data-on tape, but never knew how it was encoded. Thanks for this info.

  • @rallymax2
    @rallymax2 2 года назад +3

    Saw this on beneater Reddit!
    I think it’s super interesting that it’s 2400Hz FSK because around the same time, Linear Time Code was defined and it’s the same modulation and speed (for ntsc).
    (Oh, and subscribed and added the playlist. I’m gonna also try to adapt this circuit to my LTC project!)

    • @GregStrike
      @GregStrike  2 года назад +1

      Oh that's interesting! Would love to hear more about what you're doing. Will you share on Reddit? If you Google some of the peoples names from the symposium in the video, you'll see that they were all pretty involved across the computer scene. I wouldn't be surprised if the similarities were purposeful. Even the stream of data on tape is just standard UART, so they definitely adapted proven methods that already existed.

    • @rallymax2
      @rallymax2 2 года назад

      @@GregStrike I’ll comment on your Reddit post.

  • @petrisz
    @petrisz 3 месяца назад +1

    fascinating.

  • @javabeanz8549
    @javabeanz8549 2 года назад +2

    The pictured Atari wasn't actually using the 6502 itself, but a derivative of it. The 400 and 800 Atari computers did use the 6502, as well as the Apple II, in several versions, and all the clones of the Apple II that I have ever encountered.

    • @billywallace1360
      @billywallace1360 2 года назад +3

      Similarly the "BBC Micro" pictured was actually an Acorn Electron. Same manufacturer that also had a 6502, plus it used a variant of KCS called CUTS to store data on cassette tapes - see the Wikipedia page for more info.

    • @nobytes2
      @nobytes2 Год назад

      if you listen carefully, he said some of the atari models...

  • @vanhetgoor
    @vanhetgoor Год назад

    For a brief moment in time all computers could read each others cassettes and write cassettes that could be read by all other computers. What a joy it must have been to live in a that glorious era of early computing.
    And then it all was spoiled by some people who thought they knew better.
    Oh what a tragedy!

    • @melkiorwiseman5234
      @melkiorwiseman5234 Год назад +1

      Are you perchance referring to the TRS-80 which used MFM instead of FSK? That was a debacle mostly because whoever programmed the timing got it wrong, and it took a year or more before it was corrected for new TRS-80s but by that time, other systems with more reliable tape storage and better graphics had become popular.

  • @DigitLineEletronica
    @DigitLineEletronica Год назад

    Fantastic presentation and very didactic, I was looking for videos like this. Thank you very much. +1 subscribed.

    • @GregStrike
      @GregStrike  Год назад

      Hey! Thanks for the kind words and for being here! It seriously means a lot. There are a few more videos on this and am working on the last one now. I've also made this into a kit (ruclips.net/user/shortsCVAkuIm3Mp4) and will release the final Kansas City Standard video when the kit is ready.

  • @colonelbarker
    @colonelbarker 2 года назад +1

    Interesting! I wonder if you could use a L4LS221 for the detection? It seems ideally suited. Perhaps with a 74LS14 at the front to square off the signal?
    I'm here thanks to the reddit post, BTW. Some great content you have here!

    • @johnm2012
      @johnm2012 Год назад +2

      Is the '221 retriggerable? I've never used one. My go-to monostable chip is the '123, which is retriggerable but doesn't have Schmitt inputs, so will definitely need a '14.

    • @colonelbarker
      @colonelbarker Год назад

      @@johnm2012 I thought it was just a pair of 123s in the same package iirc

  • @garycroftsmicroscopy
    @garycroftsmicroscopy Год назад +2

    Brilliant, for some bizarre reason I’d love to connect a raspberry pi to a tape and save python programs to it just to mirror old times…

    • @GregStrike
      @GregStrike  Год назад +2

      Hey Gary, glad you liked it! :) Not sure if you saw, but there are three other videos in the KCS series. In the last one, I released a kit to do just that. And yes, it is bizarre... So bizarre and I love it! :)

    • @garycroftsmicroscopy
      @garycroftsmicroscopy Год назад

      @@GregStrike great will take a look thanks

  • @UFO_researcher
    @UFO_researcher Год назад +1

    You need to pull down the logic with a 10k resistor connected to ground to prevent it floating when the voltage is changing.

  • @mskk2004
    @mskk2004 Год назад +1

    I would do it completely by software. The only hardware thing needed is a zero-cross detector feeding pulse to CPU when signal crosses zero voltage point. CPU can easily determine freqency by counting pulses in constant time or counting time between pulses. Zero-crossing detection is far better because it is not affected by signal level and low affected by noise in signal. This is BTW how it worked in C64 datasette for example.
    You also need some kind of synchronization logic (also doable in software) which offers a way to compensate for varying tape speed and possible difference of recording and playback speed (when recording is done on the different recorder than playback) which affects frequency.

    • @GregStrike
      @GregStrike  Год назад +2

      Hey mskk2004! If you haven't seen it yet, check out Ander's Universal Modem (ruclips.net/video/KLn8S8x0VVo/видео.html ), he's doing it very much that way which also provides the ability to have multiple baud rates. My next video will be covering the synchronization to the start bit and the latching, with the added bonus of being able to teach some of the electrical/logical concepts. Thanks for being here man!

  • @drivers99
    @drivers99 Год назад

    Oooh. I’d be interested in a kit. If not, a schematic and parts list are cool too.

    • @GregStrike
      @GregStrike  Год назад

      Hey Donald, Thanks for the feedback. Kits are coming soon!

    • @GregStrike
      @GregStrike  Год назад

      Here's the first look at the kit! I plan to release the schematic at the same time as the kit. I had a timing issue that's taken a long time for me to resolve. Just want to make sure it's all good beforehand!
      ruclips.net/user/shortsCVAkuIm3Mp4

    • @GregStrike
      @GregStrike  Год назад

      Hey Donald! I finally posted the last video on this and along with it RELEASED the kits!! A schematic is also available now too!

    • @drivers99
      @drivers99 Год назад

      @@GregStrike whoa cool, can’t wait to check out the new video, kits and schematics tonight! Glad to see your reply notification

    • @drivers99
      @drivers99 Год назад

      @@GregStrike correction: I just ordered the kit and will check out the video tonight haha

  • @NicStrike
    @NicStrike 2 года назад

    Awesome explanation! :D

    • @clemke1044
      @clemke1044 2 года назад

      You missed your calling! where were you when I was having to sit through Russian History in 6th grade! You made this so interesting!

  • @HelloKittyFanMan
    @HelloKittyFanMan 9 месяцев назад

    "He did this using only transistors."
    Oh? When did they make transistors whose model numbers you could read basically like the values of through-hole resistors, and some that even look like capacitors, then? And are those resistor-looking ones BJTs or FETs?

  • @HelloKittyFanMan
    @HelloKittyFanMan 9 месяцев назад

    So for highs, what's Mr. Monostable's usual drug of choice?

  • @ImaginationToForm
    @ImaginationToForm Год назад

    I used Zx81 and C64 cassettes way back when, why on Earth would you put your self through this? I was so glad when I was able to get my first floppy drive and leave cassettes behind.

  • @HelloKittyFanMan
    @HelloKittyFanMan 9 месяцев назад

    "But it wasn't too long after that that computers became usable."
    They already were for decades; just not much by the general population.

  • @HelloKittyFanMan
    @HelloKittyFanMan 9 месяцев назад

    "When the first start playing..."
    But not the 2nd, 3rd, or 4th+ times you play them from there?

  • @stigtheghost
    @stigtheghost Год назад

    we use this PSK in ham radio to send data in data modes, packet radio

    • @GregStrike
      @GregStrike  Год назад +1

      Well hello there fellow ham! :). 73!

    • @stigtheghost
      @stigtheghost Год назад

      @@GregStrike yes I pretty mush like only data modes :)

  • @johnmarks714
    @johnmarks714 Год назад +1

    I want a kit to build this

    • @GregStrike
      @GregStrike  Год назад

      Nice! Check out my latest short and posting on my channel. Kits are coming soon! I turned it into a soldering kit vs a breadboard. What do you think?

    • @GregStrike
      @GregStrike  Год назад

      Here's the first look at the kit. Schematic's not up yet. I plan to release the schematic at the same time as the kit. I had a timing issue that's taken a long time for me to resolve. Just want to make sure it's all good beforehand!
      ruclips.net/user/shortsCVAkuIm3Mp4

    • @GregStrike
      @GregStrike  Год назад +1

      Hey John! I just wanted to follow up and let you know that the latest video is up and the KITS ARE FINALLY available! Thanks for being here man!

  • @HelloKittyFanMan
    @HelloKittyFanMan 9 месяцев назад

    "How to read data off a cassette tape."
    That's strange. Why would they want to remove the data while reading it, instead of merely reading it *FROM* the tape?

  • @josephlunderville3195
    @josephlunderville3195 2 года назад +1

    Huh, pretty amateur of them to specify frequencies that are integer multiples -- distortion will create harmonics so the 1200 Hz carrier will trigger the 2400 Hz detector as well. Obviously it works well enough but if there's noise or degradation of the signal it probably would have worked better to choose e.g. 2100 or 2700 instead of 2400...

    • @a1nelson
      @a1nelson 2 года назад

      Seems like a good example of digital is not analog, but actually it is. That is, from the perspective of someone practiced in analog design (or who understands Fourier/freq space well), harmonics are obvious. If one comes at the problem from the perspective of pushing discrete bits across a bus (for example), harmonics are essentially, or completely, invisible.

    • @JaenEngineering
      @JaenEngineering 2 года назад +1

      Especially considering that DTMF already existed. They could have either encoded each frequency as a bit (non telephone compatible and technically no longer DTMF but more efficient), or each telephone key as a 4-bit nibble (telephone compatible but half the tape data capacity)
      en.m.wikipedia.org/wiki/Dual-tone_multi-frequency_signaling

    • @deang5622
      @deang5622 Год назад

      Turns out we used tape based recordings for years and this wasn't a problem.

  • @HelloKittyFanMan
    @HelloKittyFanMan 9 месяцев назад

    "Until 30... _has_ passed...? Oops.

  • @HelloKittyFanMan
    @HelloKittyFanMan 9 месяцев назад

    "Now... now..."?

  • @deyaniragonzales7515
    @deyaniragonzales7515 Год назад

    Jo s

  • @HelloKittyFanMan
    @HelloKittyFanMan 9 месяцев назад

    "Two thousand eighteen..." Guess what: there's an easier way to say years like 2018: Remember how you said 1975 as "NINETEEN-seventy-five" instead of "one thousand..." (blah blah blahh)? Why do you think we say it that way? Is it incorrect to say "one thousand, nine hundred..." (whatever)? No. But why bother saying it that way when there's an easier way? Why not say the years from _this_ century that way too, then? Enter "TWENTY-eighteen." See how it has fewer syllables, just like "nineteen-seventy-five" does? So try it today, and have a happy Christmas!