Hey everybody, thank you so much for all the awesome comments! I’m seeing a lot of similar questions, so I figured I’d answer them all in one go here: Why not use the tractor feed punch for a clock? Primarily, the entire paper tape portion of the build is a massive question mark right now. At the bare minimum I know I have to have 8-bits coming in and that’s it. So, I wanted to design the system to work with the absolute bare minimum in case we run into troubles designing the paper tape interface from scratch. What about losing your NOP0 instruction? The processor actually has two NOP instructions, one at 0000 and another at 1111, both have external flags they set (Flag 0 and Flag F) and both are currently unused. Losing the NOP0 instruction doesn’t actually hinder the processor in this case. Paper tape isn't random access, so you can’t do branching instructions! Actually, you totally can. The MC14500 (and thereby UE14500) was designed to work with any sort of crazy program control you could think of, so instead of branching instructions being done by jumping the program counter, they are instead done by masking input and output. Every instruction is actually executed, just the instructions we want to skip don’t produce any results or have any effect on anything. The Minimal ICU System on the PCB that I show at the beginning does use a ROM, but the PC isn’t jumpable at all, yet we still managed some tricky stuff with it (like playing Kill the Bit). Your design won’t work at higher speeds! No worries, the rest of the processor is so poorly designed that it won’t work at higher speeds either, haha. Seriously, I’m aiming for 45.5 Hz clock speed. That’s just 4-inches per second, which is glacial for both paper tape and the computer. Because of this, we have a lot of leeway.
I'm curious then, are loops possible without an infinite supply of tape? Or is ignoring select instructions while going forward the only control possible? (In this context, should that be "Paper tape is NOT random access..."? Being able to reverse the tape would be cool.)
What I'd probably look into doing is making the jump instruction work by forcing the CPU to receive NOP instructions instead of the actual instruction recorded on tape, until the tape comes around to the location the CPU was supposed to jump to. The tape would run as a loop of course, although if none of your loops were very long, you could theoretically just repeat the loop instructions on the tape and jump past code which wasn't required on that iteration. This would make for a long tape, and it would still have to be manually re-wound so you couldn't have a program running endlessly without a loop. Edit: I see from your reply to another comment that you are already 'way ahead of me. 😄
the sprocket hole was frequently used to clock data from a paper tape. notice that it's smaller than the data holes? this gives some setup and hold time in the data.
@@ashleydawson5070do not underestimate how common paper tape was .. most minicomputers used it as well as both ASCII and baudot teletypes and telex machines.
Currently, I'm not sure how the paper tape itself is going to shape up. I won't be using anything off-the-shelf or existing, I'll be making it all from scratch. It seemed easier to build in a slight delay using two tubes than it would be to add more complexity to the paper tape reader itself. As for losing the NOP instruction, the processor actually has two NOP instructions, one at 0000 and another at 1111, both have external flags they set (Flag 0 and Flag F) and both are currently unused. Losing the NOP0 instruction doesn’t actually hinder the processor in this case. Ultimately though, if it appears to be unnecessary, I can always remove and recut that little display board for future changes!
@@UsagiElectric I'm afraid you can face problem if the holes in tape/photocells are not precisely aligned, and/or the tape is moving slowly, and photocells don't settle all bits within those ~0.3ms delay you made.
Remembering Colossus was clocked by the tape too, although it was designed to run off the tape clock to avoid having to clock everything else from anything else. And it ran considerably faster. But it still warms my heart to see that that’s how you’re doing it. :)
I won't lie, about 60% of what you say and do in your videos is totally beyond my skillset. It's your passion, enthusiasm, and eternal tinkering that keep me coming back for every single video. The fact that you even mill your own boards just adds to that. Love your content, dude!
Awwh! The kitty break was sweet! ❤ It amazes me how this is simultaneously so simple yet so complex. I keep struggling to wrap my head around it but if you isolate any single piece it seems so simple.
I just about remember using paper tape and it's always been kinda "iconic" to me.... so your drawer full of vintage paper tape is, to me, the most wonderful vintage collectable you could have... I love it!
Interestingly, those all came with the Litton, though I'm not 100% positive they all go with the Litton. One of these days I'll build a paper tape reader that can back the tape up into binary files on the PC and then we can dig through them in more detail to see what's on them. But, I agree, paper tape is so cool!
We did an exercise at school in the 80s... our maths textbooks had a picture of paper tape on the cover (I said "iconic") we decoded the binary to decimal and did "the substitution code trick" to decode it (this was before we'd heard of ASCII) ... turns out it was the book title.
I was like #256. :) It still amazes me that there are people building new computer systems using vacuum tubes. Definitely good progress going on. Yes, our cats run the household. When they want something we humans have to drop what we are doing and see to their wants/needs.
It's okay to drop what we're doing because they often reward us with pets and snuggles! Sue was a sweetheart who just sat back and relaxed and let me pet him for a good long while.
Your design looks great on paper but as soon as you load.. well.. actual paper, you will notice "phantom signals" when one hole already reached the beam but adjacent one didn't. And while tubes are a lot slower than FETs, the speed is counted in nanoseconds - many orders of magnitude faster than the tape. Things get even trickier when the punch reader reaches its design speeds of a few meters of tape per second aka "finger-dismemberment speed" (beware surprise catastrophic paper tears and jams BTW). "the delay circuit" can provide debouncing needed but you should carefully tune the delay. It should ideally be set to a maximum transition interval (time needed to pull the tape from one set of holes to the next and stop there) plus a bit more - see your punch reader docs if you have any or experiment. But more importantly the punch reader hardware itself should require tape pull (clocking) signal and probably provide a "ready to read" signal (though yours may work differently). That last one should be used as read clocking input. Please make sense of it *before* constructing any supporting circuitry. Although adjustable delay will most likely still be required. As others suggested below some punchtape systems have special smaller holes just for synchronization aka clocking. Yes you can still do it your way but I don't really see the need for a dozen of extra tubes and supporting circuitry
Even if you get the paper tape working, I’m not sure how you’re going to get it to work with your tube computer. The problem is that ROM/RAM are random access (you can put in any address in the address space, and get a byte out), but paper tape is ISAM (Indexed Sequential-Access Method) storage; you can step (index) forward to a specific spot on the tape, then read the data there, but if you have to go back and re-read a byte, you have to rewind the entire tape. Plus, it’s more like a CD-ROM; once you punch a hole, you can’t unpunch it, so it’s fine for program storage (like a flash EEPROM), but not for data storage (unless you put in a new, blank spool of paper tape, and your teletype can write as well as read.) 🤔
Every Usagi video is peppered with laughter and wonder and curiosity. Even the setbacks are met with "now that's interesting..." instead of "oh no, it's broken". Exactly as it should be. When he says "we", I absolutely feel included, and really on board (pun intended), even though there is no way I could rebuild and troubleshoot these systems, I certainly don't have the space. But it's a blast to watch someone else do it, who clearly enjoys every moment. I might even be learning something, although I am not sure whether it's anything useful.
When you said "get out the 'scope" I envisioned a modern DSO ... but hoped for something analogue with tubes. Thank you for that pleasurable surprise !
Be careful your cat isn’t trying to turn you into a Blofeld 😉 The thought crossed my mind about using the sprocket hole of the tape for a clock (which I see is mentioned already) might’ve got you your NOP back. Not that you can do much with a NOP beyond code delays. As always, loving how this is coming together 😊
Haha, if I start going bald, we gotta worry! Currently, I'm not sure how the paper tape itself is going to shape up. I won't be using anything off-the-shelf or existing, I'll be making it all from scratch. It seemed easier to build in a slight delay using two tubes than it would be to add more complexity to the paper tape reader itself. As for losing the NOP instruction, the processor actually has two NOP instructions, one at 0000 and another at 1111, both have external flags they set (Flag 0 and Flag F) and both are currently unused. Losing the NOP0 instruction doesn’t actually hinder the processor in this case as we still have the NOPF instruction if we need it.
"30 minutes of petting the neko-chan later..." You just built a nice vacuum tube fuzz or distortion effect :) So nice to see the 150A back in action! All this restoration effort, it didn't go for nothing... we'll be back with another episode on that :) Good to see your PCB fab process improve - and a nice tee from Jeri too! I also love the straight-up headers and jumper boards for connecting the PCBs. I hope the system will survive crashes (the literal kind) better from now on. Waiting for some road tests :).
The 150A popped a fuse, not sure why, and both channels had to be adjusted vertically quite far, so some things have drifted it seems and some power thing may be not quite right, but we'll get it back up! Gotta represent Tilt 5 and Jeri, she's awesome!
So it will be able to branch forward but not backward. I am imagining how I would code in such an evironment but my brain exploded. I anxiously awake further developments. Well done!
When I put together my MC14500 based design I had timing issues when the 8-bits from the stored instruction and data in an EEPROM arrived at the 14500 and when the timer clock 'clocked' the instruction in. Solved the issue using the delayed clock approach in your paper tape interface, with the master clock feeding a few schmitt triggers and an RC circuit to clock the 14500. Introduced a sizeable delay, but at a clock speed range of 1hz to 2khz it works fine. Enjoying this series - always something to learn. Cheers. N
Most old 'tube' scopes used the filament supply voltage to light up the 'power on' indicator. Since your power on indicator is dead, I'd be checking the mains fuse to see if it died from 'metal fatigue' (as opposed to a more violent cause - the difference is fairly obvious). OTHER possibilities include: - The power transformer itself. This is often a 'terminal illness' since an old scope xformer is VERY unique with a fairly high voltage (a few kV) CRT final anode winding - Mains wiring (well duh!) - Internal tube short (Often the CRT itself making it rather 'terminal') I look forward to this repair even more than the 'choob-putah' itself
Pulse digital switching waveforms by Millman Taub page 441, says adding diodes in series with coupling capacitors of the 12au7 multivibrator squares up the output waveform
For use in a bright room, it might help to have some smoked acrylic plate over the VFD tubes. Do you coat the milled PCBs you produce with anything to keep the copper traces from oxidizing? (Something like a sprayed-on conformal coating?)
That's a good idea! Currently, I don't spray anything on the back to prevent corrosion. Texas generally isn't that bad about corroding exposed copper. Some of the boards are 2+ years old and still look totally fine.
@@UsagiElectric I have projects with bare copper pcbs that i made 10 years ago. They still work fine. They look realy brown and corroded, but they look stable in that condition. Also we have winters, and moist air.
@@edgeeffect I did that on many smaller boards I made. Just lots of flux and painting solder with soldering iron over it. Excess is removed with soldering wick. Only downside, that it tends to warp bigger board with lots off copper area a little. I dont intend this as advertisement, and my videos are in lithuanian, but here is my video about it. Begining of the video shows all steps I used to do. th-cam.com/video/qhLJpAeM6vY/w-d-xo.htmlsi=5AHsaD7r55gECvWu
Love your projects, if it is the Bendix or the Centurion or the VTC or everything in between. Thank you for this very entertaining, interesting and educating content.
You sir are an absolute nutter, in the best way - converting silicon circuits into tube circuits - I've not seen the rest of this series (obviously seen many of your videos) so I don't (yet) know why you're dong this but from what I would surmise - because you can! I shall certainly delve into the earlier videos 👍
It’s so fuckin Cool to see how the same sorta tubes I use to get my guitar sounds can be used in other applications. I’m used to just goosing these motherfuckers SO HARD & clipping the FUCK outta any signal going through, so seeing it in SUCH a different context is neat as hell!!
If you ever need that NOP0, remember that the normal (7,4) Hamming code fits 4 bits into 7, leaving an extra bit for synchronization while also providing some resiliency to errors.
The sudden feline interruption perfectly displays how life is with a cat 😂! The rest of the video was the good stuff I am used from you, always a pleasure to see you tinkering!
That's a great scope probe isn't it! It's the AC-21 probe that came with the HP-150A originally. Mine didn't have it, but I managed to find a replacement on eBay for a decent price, and I absolutely love it!
it's months of work, mostly mechanical. Keyboard is easy, punching tape is much trickier to do right, and printing is trickier plus the sheer work to produce working mallets/matrices/daisy wheels with every printable character. Electric typing machines are expensive but they are well worth their money in labor.
when I played with paper tape in the late 80's... (60's vintage cnc) the center paper tape sprocket was the trigger for the read. the hole was smaller than the actual data bits that it made a perfect delay...
I have used that model HP scope. I still have nightmares. When testing a thingy I like to have my test equipment in arms reach. Using those big boat anchors makes it harder to work on things because you run out of room fast. Think of how far you can reach when seated in a chair without wheels. Even with all the space in the world you can only reach so far. I like the pretty colors in the new scope. Looks good on video.
looking forward to seeing your repair of the hp oscilloscope; i recently found a COSSOR 1049 in my late grandad's house, and am planning on taking it home soon to see if it'll start up. it's a similar weight to yours so still working out how to transport it!
Going with an optical reader or a mechanical one? Some of the old punch-tape readers for things like marquee signs were optical, as there were no contact brushes and such to wear out and the punch paper itself would last much longer with nothing dragging over it. Photoresistors pre-date vacuum tubes, so it would be "period correct" as some element of a retro-designed system. Just thought that may be worth a mention.
With all this talk here of making a paper-tape reader for your machine, it suddenly made me wonder: Have you ever thought of creating a device to read a stack of punch-cards from back in the day? I'm talking about the sort of punch cards that computerists stored programs on, or other sorts of data, up to perhaps the 1970s or so. What would be really neat would be something with USB at the other end, and you simply insert a stack of punch cards into it, mash a button, and it runs all the cards in sequence through the reader and spits the data from them out through the USB connection into, say, a laptop to be saved into a textfile. How cool would that be?!?? :D :D
You shouldn't be having any issues building a shifted phase clock in logi Sim... I've built several 8 bit CPU in Logi Sim from discrete logic gates... all using a single clock with a nested phase (an Output enable with a nested write phase within it). to "simulate this delay" for your design you simply need to use the clock in logisim to run a counter... like a 4017 decade counter. then use RS flip Flops connected to carious points along the 4017s outputs to create the clock phases to match what you have in your design. The outputs of the RS flip flops are then what you use as your defacto Clock for the Vac CPU. logisim can do anything, you just need to know how to work around its limitations. Now you wont be using the digital circuit with FFs and 4017 in the vacuum CPU ... its just for simulating your clock in the rest of the CPU design in logisim. keep in mind you'll need to build the 4017 in logisim and save it as its own sub circuit
That RC delay between two inverters reminds me of something Atari did with their 8 bit 400 and 800 computers. A Californian company called PCA electronics made delay lines which were a 74LS14 hex inverter chip with some RC or maybe LC delays between the gates all in an epoxy potted package. This was because to drive an asynchronous DRAM you need /RAS, MUX, /CAS. /RAS and /CAS go to the DRAM and MUX goes to the multiplexor chip which selects high order address bits or low order. You need a short delay between each step. /RAS is for the row address and /CAS is for the column address. So it's the same idea but done with TTL chips. People have reverse engineered this so you can put a 74xx14 inverter on a board with some surface mount capacitors and resistors and replace the Atari/PCA part which for some reason tends to fail after a few decades.
Run a continuous loop of tape that has like 512 bytes on it. Just need a motor driver you can stop on a "halt" and restart the same way you would the pc. Clock comes from the sprockets. It will be more capable than the single board PC that was limited to 8 bits (256 instructions).
While Sue was begging you to pet her, my cat Stars was begging me to feed her. By digging her claws into my leg. Despite the fact that her dinnertime isn't for two hours yet.
Could the difference of adjusting the clock delay come from the breadboard itself? For what I understand breadboards can have some capacitance because of how they are constructed.
@@magnusnordlund3787isn’t there this other clock? Didn’t we already ( or someone else) build a (dynamic) shift register out of two tubes per bit? Also I love tubes so much. CRT with telecentric optic into a mask and the transmitted beam reverse deflected back into an anode. Clock runs to a counter to a R2R DAC. Also: electric motor and tape as internal means of computation is like Conrad Zuse Z1. It is not really period correct for tubes ( Eniac). Modern signal tubes are much more reliable than the analog radio tubes. Fun fact: with binary, tubes would have been on much more and would have lasted longer. Powered up, but gated completely, is what damaged them. Analog tubes work around a point. ECL would have been the right choice.
This is a very good question. With paper tape, you have only a sequential memory, not a random-access memory. Therefore you cannot execute complex programs with branching instructions, and the computer is not a "modern electronic computer". This is a big limitation.
I think you should check out the design of the vintage Oliver Audio Engineering Paper Tape Reader from the 1970s era. It is pretty much a minimal paper tape reader.
Thank you! Currently, I'm not sure how the paper tape itself is going to shape up. I won't be using anything off-the-shelf or existing unit, I'll be making it all from scratch. It seemed easier to build in a slight delay using two tubes than it would be to add more complexity to the paper tape reader itself.
@@UsagiElectric All you would need is a roller attached to a sort of blade being turned by the tape with some sort of light sensor. It's 20 past 12 in the morning and I'm a bit drunk. Nite nite.
Oh hey, I was just thinking about your vacuum tube computer over the weekend. I wanted to ask about the pin sockets you use on your PCB boards. You obviously buy them in bulk, so I'm curious where you get them from? I'm designing a circuit that uses soviet era VFD tubes, and the only reasonably priced PCB pin sockets I've found are made by Harwin, part # H3161, and the silicon-based electronics vendor sells them for $0.30 Aussie dollary doos each for 10+ quantities. Not so cheap if you need them in bulk.
If you want to go completely insane, why not make a "ROM" out of a monoscope tube? You would have to find someone to do the glass blowing, but most of the rest of the electrode structure could be borrowed from something like a scope tube, just with the screen replaced with a metal plate with insulating paint on it. Then use a bunch of R2R DACs to drive the beam around and sense ones and zeros based on the cathode current. You would have to read out the "ROM" in serial format and latch the data, but if you could manage a 64x64 array (I.E. 6 bit DACs on both X and Y) it would give you 512 bytes of ROM storage.
I'm asking a few TH-camr's this question. I need to replace the filter capacitors in my reel to reel tape deck, one is 1250uf 40V and the other is 2500uf 64V. (this capacitor is on a 45V rail) I can't find either of these capacitors, I'm wondering what would be the best replacements. I have found 1200uf 63V and 2200uf 63V capacitors, can I use these for long term use instead ?
I'm curious why you didn't use 9 bits for the tape. You could have used the 9'th bit as the clock and also adjusted it's delay and phase based of the hole size and location.
You going to bring it to VCF East in April? That's really too far for you to drive, but it was so cool seeing you there this last time. It would be cool to see this thing working in person.
Hello. Thanks for your videos, I really like your channel. With a paper tape, you cannot do RANDOM access. Branch instructions are therefore impossible. This is a huge limitation, and the result is not really a "computer", without branch instruction. It was not possible to build or use a CORE-ROPE memory for the ROM, for storing the program?
Thanks! Actually, despite not being random access, we can do branch instructions. I talk about this a bit in previous videos as well as in the video showcasing the MC14500 Minimal ICU on the single PCB. The MC14500 and UE14500 both have the ability to mask input and output. Every instruction is technically executed, just whichever instructions we want to skip over don't produce any meaningful results or changes. Just set the IEN or OEN registers based on a stored value in the Scratch register and you can effectively conditionally turn the processor off for however many instructions you want, skipping over and jumping ahead. Now, we can't jump backwards, unless we loop the tape, which is easy enough to do. So, it's actually quite a lot more capable than it at first seems. Making core-rope memory for the ROM is something I considered, but size constraints put a dash to that pretty quickly. In order to jump I need a binary counter (a 6-tube D Flip Flop per bit), a register to store the return address in (another 6-tube D Flip Flop per bit), the supporting circuitry to enact the jump (a whole lot of tubes), and the core rope itself. Just to enact something like an 8-bit counter for a mere 256 instructions, it would be at least another 200 vacuum tubes and one, maybe two more full backing boards. The only way to keep it as compact as I wanted (just two boards), was to use paper tape and the maskable inputs and outputs.
@@UsagiElectric Thanks so much for taking time to answer with such details. I really appreciate. Of course, that makes sense. Random-Access memory would bring a huge complexity, with a counter, decoder; I realize it now. One crazy option could be bi-directional paper-tape, plus dekatron for counting with "relative" jump instructions; For ex: "jump 12 instructions backward". I like dekatron. But it is still much more complex than your design; this would require a new additional sequential logic for managing the tape movements; or a "microcode" architecture which is even more complex.
It's funny that when your cat, Sue, interrupted your video shoot, one of our girl cats, CJ, came up to me and started bunting my leg. I thought I would watch the video and then give CJ her pets and kisses, bu then you put up that "30 Minutes Later" and I felt guilty about not giving CJ love right then and there. So I stopped the video and about 20 minutes later after CJ decided to run off and attack her brother, I was watching your video again.
LOL! I can totally see a way of using actual, physical rope, with knots tied in it, as a type of serial-bit program memory. Not worth doing though, due to the difficulty of aligning the knots correctly, but still an interesting idea. (And yes, I'm fairly sure you were talking about magnetic core memory and not physical rope, but it's still funny).
@@melkiorwiseman5234 - You're right, some people don't get the joke and will get all upset. Fortunately, I think this audience knows better.. like you did.
Hey everybody, thank you so much for all the awesome comments!
I’m seeing a lot of similar questions, so I figured I’d answer them all in one go here:
Why not use the tractor feed punch for a clock?
Primarily, the entire paper tape portion of the build is a massive question mark right now. At the bare minimum I know I have to have 8-bits coming in and that’s it. So, I wanted to design the system to work with the absolute bare minimum in case we run into troubles designing the paper tape interface from scratch.
What about losing your NOP0 instruction?
The processor actually has two NOP instructions, one at 0000 and another at 1111, both have external flags they set (Flag 0 and Flag F) and both are currently unused. Losing the NOP0 instruction doesn’t actually hinder the processor in this case.
Paper tape isn't random access, so you can’t do branching instructions!
Actually, you totally can. The MC14500 (and thereby UE14500) was designed to work with any sort of crazy program control you could think of, so instead of branching instructions being done by jumping the program counter, they are instead done by masking input and output. Every instruction is actually executed, just the instructions we want to skip don’t produce any results or have any effect on anything. The Minimal ICU System on the PCB that I show at the beginning does use a ROM, but the PC isn’t jumpable at all, yet we still managed some tricky stuff with it (like playing Kill the Bit).
Your design won’t work at higher speeds!
No worries, the rest of the processor is so poorly designed that it won’t work at higher speeds either, haha. Seriously, I’m aiming for 45.5 Hz clock speed. That’s just 4-inches per second, which is glacial for both paper tape and the computer. Because of this, we have a lot of leeway.
I'm curious then, are loops possible without an infinite supply of tape? Or is ignoring select instructions while going forward the only control possible? (In this context, should that be "Paper tape is NOT random access..."? Being able to reverse the tape would be cool.)
What I'd probably look into doing is making the jump instruction work by forcing the CPU to receive NOP instructions instead of the actual instruction recorded on tape, until the tape comes around to the location the CPU was supposed to jump to. The tape would run as a loop of course, although if none of your loops were very long, you could theoretically just repeat the loop instructions on the tape and jump past code which wasn't required on that iteration. This would make for a long tape, and it would still have to be manually re-wound so you couldn't have a program running endlessly without a loop.
Edit: I see from your reply to another comment that you are already 'way ahead of me. 😄
,,,,,,,,,,,,
6:49 channel rename. UsagiElectric henceforth to be known as NekoElectric.
The processor isn't poorly designed, you just have design goals other than speed.
the sprocket hole was frequently used to clock data from a paper tape. notice that it's smaller than the data holes? this gives some setup and hold time in the data.
LOL @ "frequently used"
@@ashleydawson5070do not underestimate how common paper tape was .. most minicomputers used it as well as both ASCII and baudot teletypes and telex machines.
Currently, I'm not sure how the paper tape itself is going to shape up. I won't be using anything off-the-shelf or existing, I'll be making it all from scratch. It seemed easier to build in a slight delay using two tubes than it would be to add more complexity to the paper tape reader itself. As for losing the NOP instruction, the processor actually has two NOP instructions, one at 0000 and another at 1111, both have external flags they set (Flag 0 and Flag F) and both are currently unused. Losing the NOP0 instruction doesn’t actually hinder the processor in this case.
Ultimately though, if it appears to be unnecessary, I can always remove and recut that little display board for future changes!
@jack417k no, no -- I was laughing at the terminology... "frequently used" and using it for a clock. Made me giggle...
@@UsagiElectric I'm afraid you can face problem if the holes in tape/photocells are not precisely aligned, and/or the tape is moving slowly, and photocells don't settle all bits within those ~0.3ms delay you made.
Remembering Colossus was clocked by the tape too, although it was designed to run off the tape clock to avoid having to clock everything else from anything else. And it ran considerably faster. But it still warms my heart to see that that’s how you’re doing it. :)
I won't lie, about 60% of what you say and do in your videos is totally beyond my skillset. It's your passion, enthusiasm, and eternal tinkering that keep me coming back for every single video. The fact that you even mill your own boards just adds to that. Love your content, dude!
same here, The enthusiasm is infectious.
Awwh! The kitty break was sweet! ❤
It amazes me how this is simultaneously so simple yet so complex. I keep struggling to wrap my head around it but if you isolate any single piece it seems so simple.
I just about remember using paper tape and it's always been kinda "iconic" to me.... so your drawer full of vintage paper tape is, to me, the most wonderful vintage collectable you could have... I love it!
Interestingly, those all came with the Litton, though I'm not 100% positive they all go with the Litton. One of these days I'll build a paper tape reader that can back the tape up into binary files on the PC and then we can dig through them in more detail to see what's on them.
But, I agree, paper tape is so cool!
We did an exercise at school in the 80s... our maths textbooks had a picture of paper tape on the cover (I said "iconic") we decoded the binary to decimal and did "the substitution code trick" to decode it (this was before we'd heard of ASCII) ... turns out it was the book title.
Dude this is so damn cool. Really amazing to see old systems like paper tape and vacuum tube computers rebuilt!
Thank you so much!
I was like #256. :) It still amazes me that there are people building new computer systems using vacuum tubes. Definitely good progress going on. Yes, our cats run the household. When they want something we humans have to drop what we are doing and see to their wants/needs.
It's okay to drop what we're doing because they often reward us with pets and snuggles! Sue was a sweetheart who just sat back and relaxed and let me pet him for a good long while.
Your design looks great on paper but as soon as you load.. well.. actual paper, you will notice "phantom signals" when one hole already reached the beam but adjacent one didn't. And while tubes are a lot slower than FETs, the speed is counted in nanoseconds - many orders of magnitude faster than the tape.
Things get even trickier when the punch reader reaches its design speeds of a few meters of tape per second aka "finger-dismemberment speed" (beware surprise catastrophic paper tears and jams BTW).
"the delay circuit" can provide debouncing needed but you should carefully tune the delay. It should ideally be set to a maximum transition interval (time needed to pull the tape from one set of holes to the next and stop there) plus a bit more - see your punch reader docs if you have any or experiment.
But more importantly the punch reader hardware itself should require tape pull (clocking) signal and probably provide a "ready to read" signal (though yours may work differently). That last one should be used as read clocking input. Please make sense of it *before* constructing any supporting circuitry. Although adjustable delay will most likely still be required.
As others suggested below some punchtape systems have special smaller holes just for synchronization aka clocking.
Yes you can still do it your way but I don't really see the need for a dozen of extra tubes and supporting circuitry
Even if you get the paper tape working, I’m not sure how you’re going to get it to work with your tube computer. The problem is that ROM/RAM are random access (you can put in any address in the address space, and get a byte out), but paper tape is ISAM (Indexed Sequential-Access Method) storage; you can step (index) forward to a specific spot on the tape, then read the data there, but if you have to go back and re-read a byte, you have to rewind the entire tape. Plus, it’s more like a CD-ROM; once you punch a hole, you can’t unpunch it, so it’s fine for program storage (like a flash EEPROM), but not for data storage (unless you put in a new, blank spool of paper tape, and your teletype can write as well as read.) 🤔
Every Usagi video is peppered with laughter and wonder and curiosity. Even the setbacks are met with "now that's interesting..." instead of "oh no, it's broken". Exactly as it should be. When he says "we", I absolutely feel included, and really on board (pun intended), even though there is no way I could rebuild and troubleshoot these systems, I certainly don't have the space.
But it's a blast to watch someone else do it, who clearly enjoys every moment. I might even be learning something, although I am not sure whether it's anything useful.
Happy to see that your PCB making is getting better over time. Beautiful work! Can't wait to see the paper tape working.
Thank you! I love it when a PCB just cuts clean and smooth, it's so satisfying!
You truly are an artist: The layout of your PCBs is beautiful, as is the overall placement of the components and boards. Great stuff!
Thank you so much!
This is as much an art project as it is a homebrew computer, so I definitely want it to be attractive to look at!
When you said "get out the 'scope" I envisioned a modern DSO ... but hoped for something analogue with tubes.
Thank you for that pleasurable surprise !
Be careful your cat isn’t trying to turn you into a Blofeld 😉 The thought crossed my mind about using the sprocket hole of the tape for a clock (which I see is mentioned already) might’ve got you your NOP back. Not that you can do much with a NOP beyond code delays. As always, loving how this is coming together 😊
Haha, if I start going bald, we gotta worry!
Currently, I'm not sure how the paper tape itself is going to shape up. I won't be using anything off-the-shelf or existing, I'll be making it all from scratch. It seemed easier to build in a slight delay using two tubes than it would be to add more complexity to the paper tape reader itself. As for losing the NOP instruction, the processor actually has two NOP instructions, one at 0000 and another at 1111, both have external flags they set (Flag 0 and Flag F) and both are currently unused. Losing the NOP0 instruction doesn’t actually hinder the processor in this case as we still have the NOPF instruction if we need it.
I really like when you use the vacuum tube scope 😁
Paper tape has a feed hole. You can use the feed hole as the clock and eliminate the NOR gate as well as the delay.
I am super looking forward to the paper tape reader component! I love that sort of mechanical-electrical interface design.
Good to see your kitties have you trained as well as mine have trained me... lol
It's cats being cats, doing cat things. Mine does it too.
Especially Sue, he knows how to sweet talk me into anything!
When you need your daily dose of toxoplasmosis, they deliver
@@UsagiElectric yeah, an advantage on all charisma rolls :)
It's good to see you back in an area where you are competent, and I am learning something, rather than just watching you flail your arms. Good video.
"30 minutes of petting the neko-chan later..."
You just built a nice vacuum tube fuzz or distortion effect :)
So nice to see the 150A back in action! All this restoration effort, it didn't go for nothing... we'll be back with another episode on that :)
Good to see your PCB fab process improve - and a nice tee from Jeri too!
I also love the straight-up headers and jumper boards for connecting the PCBs. I hope the system will survive crashes (the literal kind) better from now on. Waiting for some road tests :).
The 150A popped a fuse, not sure why, and both channels had to be adjusted vertically quite far, so some things have drifted it seems and some power thing may be not quite right, but we'll get it back up!
Gotta represent Tilt 5 and Jeri, she's awesome!
I don’t think this would be possible without the cat….. my theory is that petting and playing with cats unlocks our minds…
So it will be able to branch forward but not backward. I am imagining how I would code in such an evironment but my brain exploded. I anxiously awake further developments. Well done!
When I put together my MC14500 based design I had timing issues when the 8-bits from the stored instruction and data in an EEPROM arrived at the 14500 and when the timer clock 'clocked' the instruction in. Solved the issue using the delayed clock approach in your paper tape interface, with the master clock feeding a few schmitt triggers and an RC circuit to clock the 14500. Introduced a sizeable delay, but at a clock speed range of 1hz to 2khz it works fine. Enjoying this series - always something to learn. Cheers. N
Most old 'tube' scopes used the filament supply voltage to light up the 'power on' indicator. Since your power on indicator is dead, I'd be checking the mains fuse to see if it died from 'metal fatigue' (as opposed to a more violent cause - the difference is fairly obvious).
OTHER possibilities include:
- The power transformer itself. This is often a 'terminal illness' since an old scope xformer is VERY unique with a fairly high voltage (a few kV) CRT final anode winding
- Mains wiring (well duh!)
- Internal tube short (Often the CRT itself making it rather 'terminal')
I look forward to this repair even more than the 'choob-putah' itself
I absolutely love your curvy tracks, very vintage....
Also, can't wait to see what you do for the paper tape section.
N64 has them also.
I really enjoy your project, vacuum tubes Rule! Thank you.
Pulse digital switching waveforms by Millman Taub
page 441, says adding diodes in series with coupling capacitors of the 12au7 multivibrator squares up the output waveform
6:52 you are truly a wonderful human being.
For use in a bright room, it might help to have some smoked acrylic plate over the VFD tubes. Do you coat the milled PCBs you produce with anything to keep the copper traces from oxidizing? (Something like a sprayed-on conformal coating?)
That's a good idea!
Currently, I don't spray anything on the back to prevent corrosion. Texas generally isn't that bad about corroding exposed copper. Some of the boards are 2+ years old and still look totally fine.
@@UsagiElectric I have projects with bare copper pcbs that i made 10 years ago. They still work fine. They look realy brown and corroded, but they look stable in that condition. Also we have winters, and moist air.
I'm sure I've seen copper boards wiped with a tin compound which then leaves them plated with a thin thin thin layer of tin.
@@edgeeffect I did that on many smaller boards I made. Just lots of flux and painting solder with soldering iron over it. Excess is removed with soldering wick. Only downside, that it tends to warp bigger board with lots off copper area a little. I dont intend this as advertisement, and my videos are in lithuanian, but here is my video about it. Begining of the video shows all steps I used to do. th-cam.com/video/qhLJpAeM6vY/w-d-xo.htmlsi=5AHsaD7r55gECvWu
The UE1 is a fantastic project and I am looking forward to seeing it in function! Keep going!
The next Episode should be to fix the HP Oscilloscope!
Love your projects, if it is the Bendix or the Centurion or the VTC or everything in between. Thank you for this very entertaining, interesting and educating content.
I built an optical reader using 555 timers about a decade ago. It was a fun project.
I enjoy watching your channel. Your work has inspired me too attempt a relay-based processing unit. 😸
subbed
You sir are an absolute nutter, in the best way - converting silicon circuits into tube circuits - I've not seen the rest of this series (obviously seen many of your videos) so I don't (yet) know why you're dong this but from what I would surmise - because you can! I shall certainly delve into the earlier videos 👍
Brings to mind a certain game outro theme, "We do what we must, because we can."
Came for the paper tape...stayed for the cat!
The kitties always steal the show!
Very clever, I love it!!
Never apologise for taking time out for some kitty love, however important the thing is that you're working on.
In the 70s I worked with paper tape, and the optical readers I used used the smaller sprocket hole for the clock.
It’s so fuckin Cool to see how the same sorta tubes I use to get my guitar sounds can be used in other applications. I’m used to just goosing these motherfuckers SO HARD & clipping the FUCK outta any signal going through, so seeing it in SUCH a different context is neat as hell!!
For Usagi's NEXTY trick, adding a finch drive interface to system :)
If you ever need that NOP0, remember that the normal (7,4) Hamming code fits 4 bits into 7, leaving an extra bit for synchronization while also providing some resiliency to errors.
The sudden feline interruption perfectly displays how life is with a cat 😂!
The rest of the video was the good stuff I am used from you, always a pleasure to see you tinkering!
Awesome progress. What is that awesome clamping tip scope probe, and where did you get it?
That's a great scope probe isn't it!
It's the AC-21 probe that came with the HP-150A originally. Mine didn't have it, but I managed to find a replacement on eBay for a decent price, and I absolutely love it!
Sweet! Thanks for that. There was one on Ebay. It's mine now!
Master* Ken Shirriff
We demand 20 minute video of Usagi Electric playing with cats !
With the advent of 3D printing and home mills, would you consider building your own teletype from scratch?
it's months of work, mostly mechanical. Keyboard is easy, punching tape is much trickier to do right, and printing is trickier plus the sheer work to produce working mallets/matrices/daisy wheels with every printable character.
Electric typing machines are expensive but they are well worth their money in labor.
I'm looking forward to you loading the game "Kill the Bit" off paper tape.
when I played with paper tape in the late 80's... (60's vintage cnc) the center paper tape sprocket was the trigger for the read. the hole was smaller than the actual data bits that it made a perfect delay...
Plus - then it would read the NOPO code... If needed..
and use a few less tubes.. LOL - I will shut up now..
I have used that model HP scope. I still have nightmares. When testing a thingy I like to have my test equipment in arms reach. Using those big boat anchors makes it harder to work on things because you run out of room fast. Think of how far you can reach when seated in a chair without wheels. Even with all the space in the world you can only reach so far. I like the pretty colors in the new scope. Looks good on video.
looking forward to seeing your repair of the hp oscilloscope; i recently found a COSSOR 1049 in my late grandad's house, and am planning on taking it home soon to see if it'll start up. it's a similar weight to yours so still working out how to transport it!
Going with an optical reader or a mechanical one? Some of the old punch-tape readers for things like marquee signs were optical, as there were no contact brushes and such to wear out and the punch paper itself would last much longer with nothing dragging over it. Photoresistors pre-date vacuum tubes, so it would be "period correct" as some element of a retro-designed system. Just thought that may be worth a mention.
If that were my cat, he'd steal your seat while it was still warm. The cat at the door would be a diversion.
With all this talk here of making a paper-tape reader for your machine, it suddenly made me wonder: Have you ever thought of creating a device to read a stack of punch-cards from back in the day? I'm talking about the sort of punch cards that computerists stored programs on, or other sorts of data, up to perhaps the 1970s or so. What would be really neat would be something with USB at the other end, and you simply insert a stack of punch cards into it, mash a button, and it runs all the cards in sequence through the reader and spits the data from them out through the USB connection into, say, a laptop to be saved into a textfile. How cool would that be?!?? :D :D
I wish I could give two thumbs up, one for epic project and one fot cat
Came for the computer, stayed for the bunny.
You shouldn't be having any issues building a shifted phase clock in logi Sim... I've built several 8 bit CPU in Logi Sim from discrete logic gates... all using a single clock with a nested phase (an Output enable with a nested write phase within it). to "simulate this delay" for your design you simply need to use the clock in logisim to run a counter... like a 4017 decade counter. then use RS flip Flops connected to carious points along the 4017s outputs to create the clock phases to match what you have in your design. The outputs of the RS flip flops are then what you use as your defacto Clock for the Vac CPU. logisim can do anything, you just need to know how to work around its limitations. Now you wont be using the digital circuit with FFs and 4017 in the vacuum CPU ... its just for simulating your clock in the rest of the CPU design in logisim. keep in mind you'll need to build the 4017 in logisim and save it as its own sub circuit
Love this channel! Thanks a lot!
That RC delay between two inverters reminds me of something Atari did with their 8 bit 400 and 800 computers. A Californian company called PCA electronics made delay lines which were a 74LS14 hex inverter chip with some RC or maybe LC delays between the gates all in an epoxy potted package. This was because to drive an asynchronous DRAM you need /RAS, MUX, /CAS. /RAS and /CAS go to the DRAM and MUX goes to the multiplexor chip which selects high order address bits or low order. You need a short delay between each step. /RAS is for the row address and /CAS is for the column address.
So it's the same idea but done with TTL chips. People have reverse engineered this so you can put a 74xx14 inverter on a board with some surface mount capacitors and resistors and replace the Atari/PCA part which for some reason tends to fail after a few decades.
The cat is very cute, the video should have been you, playing with the kitty; adorable ❤😊. Cute rabbit eating at the end; you like your animals.
> It's getting bigger and bigger
> It's getting tighter and tighter
"That's what she said"
Run a continuous loop of tape that has like 512 bytes on it. Just need a motor driver you can stop on a "halt" and restart the same way you would the pc. Clock comes from the sprockets. It will be more capable than the single board PC that was limited to 8 bits (256 instructions).
While Sue was begging you to pet her, my cat Stars was begging me to feed her. By digging her claws into my leg. Despite the fact that her dinnertime isn't for two hours yet.
Could the difference of adjusting the clock delay come from the breadboard itself? For what I understand breadboards can have some capacitance because of how they are constructed.
Pardon a possibly stupid question, but wouldn't rope memory be an option for recreating the ROM? Not that paper tape readers aren't cool though. :)
Got it - need the paper tape to make the clock pulse. Would have been a challenge with rope memory.
@@magnusnordlund3787isn’t there this other clock? Didn’t we already ( or someone else) build a (dynamic) shift register out of two tubes per bit?
Also I love tubes so much. CRT with telecentric optic into a mask and the transmitted beam reverse deflected back into an anode. Clock runs to a counter to a R2R DAC.
Also: electric motor and tape as internal means of computation is like Conrad Zuse Z1. It is not really period correct for tubes ( Eniac). Modern signal tubes are much more reliable than the analog radio tubes. Fun fact: with binary, tubes would have been on much more and would have lasted longer. Powered up, but gated completely, is what damaged them. Analog tubes work around a point. ECL would have been the right choice.
This is a very good question. With paper tape, you have only a sequential memory, not a random-access memory. Therefore you cannot execute complex programs with branching instructions, and the computer is not a "modern electronic computer". This is a big limitation.
I think you should check out the design of the vintage Oliver Audio Engineering Paper Tape Reader from the 1970s era. It is pretty much a minimal paper tape reader.
25:00 Sounds like a job for Meccano🙂
6:51. This man has his priorities set correctly.
The vacuum tube computer will certainly be a cool thing in it's own right. What are your future use plans for the machine?
to warm up his house during the winter...
Cats always take precedence...good to see you have interrupts implemented well (Katurrupt ?).
That's awesome.
Wouldn't the paper-tape reader have a mechanical clock switch of it's own that makes contact with each new byte ?
Thank you!
Currently, I'm not sure how the paper tape itself is going to shape up. I won't be using anything off-the-shelf or existing unit, I'll be making it all from scratch. It seemed easier to build in a slight delay using two tubes than it would be to add more complexity to the paper tape reader itself.
@@UsagiElectric All you would need is a roller attached to a sort of blade being turned by the tape with some sort of light sensor. It's 20 past 12 in the morning and I'm a bit drunk. Nite nite.
I couldn't help noticing that those VFD's are indicating not-holes. (But your backing board is too nice a piece of wood to have knot-holes!)
Dont think you should lose your NOP instruction. You may need this operation to allow for prop delay on your system.
Oh hey, I was just thinking about your vacuum tube computer over the weekend. I wanted to ask about the pin sockets you use on your PCB boards. You obviously buy them in bulk, so I'm curious where you get them from? I'm designing a circuit that uses soviet era VFD tubes, and the only reasonably priced PCB pin sockets I've found are made by Harwin, part # H3161, and the silicon-based electronics vendor sells them for $0.30 Aussie dollary doos each for 10+ quantities. Not so cheap if you need them in bulk.
Hello, can you tell me what machine is shown in the intro that mills PCBs?
Oh wow, those clock edges... is that what engineers had to deal with back in the 60s ?
Came for the Paper Tape Interface, stayed for the cat
If you want to go completely insane, why not make a "ROM" out of a monoscope tube? You would have to find someone to do the glass blowing, but most of the rest of the electrode structure could be borrowed from something like a scope tube, just with the screen replaced with a metal plate with insulating paint on it. Then use a bunch of R2R DACs to drive the beam around and sense ones and zeros based on the cathode current.
You would have to read out the "ROM" in serial format and latch the data, but if you could manage a 64x64 array (I.E. 6 bit DACs on both X and Y) it would give you 512 bytes of ROM storage.
Definitely cannot avoid the cat tax
Do you use lead based soldering wire or silver based ?
BONUS CAT FOOTAGE!
You were lucky the others were not lined up at the door waiting their turn. 🐈🐈⬛🐕🐇🐈
Sounds like fun. Back to the future?
This is so cool. Now it just needs some core memory…
cant you lag interleave the two clock signals from one clock signal, or signal duplication/modification
Isn’t there a c,lock/sync track in the middle of the paper tape?
Is there a way to modify a vacum tube to use them with lowpower ex: 9volt batteries
I'm asking a few TH-camr's this question.
I need to replace the filter capacitors in my reel to reel tape deck,
one is 1250uf 40V and the other is 2500uf 64V. (this capacitor is on a 45V rail)
I can't find either of these capacitors, I'm wondering what would be the best replacements.
I have found 1200uf 63V and 2200uf 63V capacitors,
can I use these for long term use instead ?
Those definitely seem close enough to be alright to me!
@@UsagiElectric That's great, thank you.
I've just noticed my previous drunken comment from a day ago. I appologise for that.
You might want to consider a 2700uF 63V cap to replace the 2500.
"cat tax paid", I like it
I'm curious why you didn't use 9 bits for the tape. You could have used the 9'th bit as the clock and also adjusted it's delay and phase based of the hole size and location.
You going to bring it to VCF East in April? That's really too far for you to drive, but it was so cool seeing you there this last time. It would be cool to see this thing working in person.
How about VCF Midwest next September? Last weekend's show was great, overwhelming.
Sawtooth wave.
I look forward to an episode in a few years time, where you construct a spinning drum memory for this, similar to the Bendix's.
I'm not even joking! 😇
Do you suppose it would be possible to interface a paper tape reader/punch to the Centurion ?
He responded to one of my posts last week, and one of his plans a a paper tape reader, but nothing mentioned about a punch.
Hello. Thanks for your videos, I really like your channel.
With a paper tape, you cannot do RANDOM access. Branch instructions are therefore impossible. This is a huge limitation, and the result is not really a "computer", without branch instruction.
It was not possible to build or use a CORE-ROPE memory for the ROM, for storing the program?
Thanks!
Actually, despite not being random access, we can do branch instructions. I talk about this a bit in previous videos as well as in the video showcasing the MC14500 Minimal ICU on the single PCB. The MC14500 and UE14500 both have the ability to mask input and output. Every instruction is technically executed, just whichever instructions we want to skip over don't produce any meaningful results or changes. Just set the IEN or OEN registers based on a stored value in the Scratch register and you can effectively conditionally turn the processor off for however many instructions you want, skipping over and jumping ahead.
Now, we can't jump backwards, unless we loop the tape, which is easy enough to do. So, it's actually quite a lot more capable than it at first seems.
Making core-rope memory for the ROM is something I considered, but size constraints put a dash to that pretty quickly. In order to jump I need a binary counter (a 6-tube D Flip Flop per bit), a register to store the return address in (another 6-tube D Flip Flop per bit), the supporting circuitry to enact the jump (a whole lot of tubes), and the core rope itself. Just to enact something like an 8-bit counter for a mere 256 instructions, it would be at least another 200 vacuum tubes and one, maybe two more full backing boards. The only way to keep it as compact as I wanted (just two boards), was to use paper tape and the maskable inputs and outputs.
@@UsagiElectric Thanks so much for taking time to answer with such details. I really appreciate.
Of course, that makes sense. Random-Access memory would bring a huge complexity, with a counter, decoder; I realize it now.
One crazy option could be bi-directional paper-tape, plus dekatron for counting with "relative" jump instructions; For ex: "jump 12 instructions backward". I like dekatron. But it is still much more complex than your design; this would require a new additional sequential logic for managing the tape movements; or a "microcode" architecture which is even more complex.
It's funny that when your cat, Sue, interrupted your video shoot, one of our girl cats, CJ, came up to me and started bunting my leg. I thought I would watch the video and then give CJ her pets and kisses, bu then you put up that "30 Minutes Later" and I felt guilty about not giving CJ love right then and there. So I stopped the video and about 20 minutes later after CJ decided to run off and attack her brother, I was watching your video again.
Nice !!!!!!!!
I don't mind kitty breaks, btw.
Paper Tape? Luxury. Why, in my age we had to use ROPE memory, and we were happy to have that. 🙂
LOL! I can totally see a way of using actual, physical rope, with knots tied in it, as a type of serial-bit program memory. Not worth doing though, due to the difficulty of aligning the knots correctly, but still an interesting idea.
(And yes, I'm fairly sure you were talking about magnetic core memory and not physical rope, but it's still funny).
@@melkiorwiseman5234 - You're right, some people don't get the joke and will get all upset. Fortunately, I think this audience knows better.. like you did.