Technology Connections - did you get chance to read any of the twitter threads by foone yet? They did a full disassembly of the TV Guardian code. ;) EDIT: I may have been wrong about the full "disassembly", but I haven't looked at it in-depth again for a while. They also just bought one of the newer devices two weeks ago, and dumped the ROM from that. A very interesting device, and also hilarious.
Reminds me a story: Many years ago, as a joke, my high school programming teacher had a program spit out "DONT TOUCH ME THERE" when a certain button was clicked. It made it to a non-technical user who freaked out. I'd love to put "DONT TOUCH ME THERE" on a ROM
First Im like "oh, cool, this guy likes Technology Connections, he must be smart and cool". Then I'm impressed by your knowledge and soldering skills. Then I'm intimidated by your programming skills. Finally I am humbled by your other-worldly spreadsheet mastery. You're some sort of Nerd God.
@@morganfreeman8208 This video literally made me go take a shit in consternation as i was just trying to fathom wtf he just did in excel....Did he invent Excel?
@@CalebFuelgo watch him make a graphics card on a breadboard, it's incredibly humbling stuff and fucking *_fascinating_* to see him build it from the ground up
@@tingtang9302 No shit Sherlock. Isn't it funnier to think that the guy who created the device is in control of all sales of his device, and sees 2 random sales of The Guardian in 2022, and it makes him scratch his head? C'mon man, imagine!
This feels like i asked a wizard a question and now I've been listening to them talk about things beyond mortal comprehension. Also huge props to maintaining the pacing of the video. This is slow stuff and keeping it snappy is really cool
I'm at the "I know what all of those words mean, individually" stage. Sure, I've used microcontrollers, I've played around with doing digital read/write operations on an Arduino. I've seen LM358s and 393s, I've done spreadsheet formulas. But putting them all together in a cohesive hackable format to make a high quality video? Never done before in the real world.
Imagine being one in said board room and coming across this decades later~~~backk to the future~~and sad how far we have come in not caring about those words ,i use to get belted if i used most of them lol.
@@MichaelRogersJesusrulesI was the same as a kid. Eventually my parents just said as I got older that there is a time and place. I barely swear now unless I’m pain lol
In Technology Connection's video (at time 7:07), you can see that the Guardian removes articles attached to the foul word (in that cases it censores "What the fuck is that?" into "What is that?"). The whitelisted words are all articles (the, that, those) that would have to be removed to maintain the sense of the phrase. Probably for the microcontroller firmware, the fact that the word is whitelisted and has a substition bit (0x1) flags it as "if encountered before a foul work, also remove that article"
@@inothome Nah, the solution is obvious. Its for dick and woody(the two words with a 01 after them). If they have any of these words in front of them, they are blocked, if not, they are used as names and not blocked.
Background: I had seen the Technology Connections video back when it came out; I'm a BSEE/MSEE with 20 years in industry who (for some reason) only stumbled upon Ben Eater's channel this evening. I had trouble explaining to my wife just now why I was laughing so hard... "No, because when they were testing it, it would have turned Dick Van Dyke's name into Jerk Van Gay and they would have seen that and said a bunch of things they'd need to censor." It's the kind of ridiculous secondary problem you only truly appreciate as an engineer, and it rises above foul language.
@@chaz720 And it made me wonder, did they catch this in testing- "let's test against wholesome shows our customer probably watches in case it produces false positives" and Dick Van Dyke is what came to mind or did they get customer complaints (from customers watching wholesome shows like Dick Van Dyke) or when the engineer added d*ck their mind led them to think, "gee... that, you knoelw, could be a valid name.... like Dick Van Dyke.... oh geez!". Ben is right, that is a hilarious rabbit hole the engineer had to deal with.
It's hilarious to me that in the effort to keep (arbitrarily) naughty words out of one's home, you could buy a device that sat quietly in your home, secretly filled with profanities and blasphemy, whispering them to itself every cycle
Ultra Christian household having their secretly heretical little tool sitting by their TV... slowly infiltrating. Of course they're in strict mode, and when watching their favorite televangelist hold another one of their hypocritical sermons, suddenly every mention of Christ gets censored. Lol.
Jonathan, That's the internal part of human progress. The external part is that at the wavelength of television, Earth is a bright star. To the rest of the galaxy we are the proud proclaimers of Hitler opening the Olympic Games, followed by a generation of "I Love lucy."
Watched the original video on how it works. I think for “the”, if it is before a “naughty word”, it will eliminate it. So “what the f” just becomes “what”. But if no naughty word follows, then “the” is allowed. Possibly the 01 and 02 could indicate searching for a naughty word after or before the regular word. Hence “F you” would return blank, instead of “you”. Now, with that said, if you enable write on the chip, you could create a reverse device that takes pg rated dialogue and spices it up a bit! What does the other chip do?
If you check out the spreadsheet, "the fuck" is already explicitly listed. It seems like if they had a general method for removing particles before censored words, they wouldn't need that entry.
@EebstertheGreat maybe "the fuck" warranted a specific substitution but others like "the shit" or "the hell" benefited from more general substitutions. If we saw the code, I'm sure there would be a priority order of operations, where it looks to make substitutions in a certain order. Was kinda hoping he was going to tinker with the substitution list haha.
I grew up in a strict, religious household, and we had one of these for a while. My siblings and I frequently found the word replacements pretty funny, and sometimes completely nonsensical. Of course, the whole concept of this device is nonsensical to me now. 😂 Any way, it is super cool to see under the hood of this contraption decades later. Thanks for posting this! 👍😊
I'm assuming since live programming has such delayed closed captioning that the audio censoring wouldn't activate at the right time (or wrong time, depending on how you see it). Was that the case?
Came here for this question! Cc does not always follow the audio. How does it know when to replace the naughty word? Then, how did it “play” the word? Was there a voice synthesizer?
@@kurtnowak8895 It just cut off audio for the duration of the CC prompt output that contained one or more of the filtered terms and removed or replaced it in the CC output. Voice synthesizers in the 1980s would've needed beefy hardware and even then it would've sounded like Stephen Hawking.
I started watching your videos about three years ago and my reaction was usually, "what sorcery is this!" I am now finishing my second year in electrical and electronics engineering (you can guess who is partly to blame for this decision 😂) and for the first time, I can say that I understood everything you did. You are such an inspiration. A role model too while at it. You sort of make embedded systems accessible en masse. Like an adult explaining a math problem to you, but it involves ICs and bitwise operations. lol ❤
@@MadScientist267 I beg to differ Mr. Mad S. there definitely are ways to learn something in school that you can use in real life! Oh, I'm in Europe, maybe there's no point... but seriously, back then, I was a teen in the 80s, in high school (I guess, we call it middle school, age 14-18) i was studying to be an electronics technician. Didn't make much of it, after all it was in a slightly underdeveloped country where the proliferation of tech progress was sort of tied to political affiliations so the teachers were not super motivated to invest into really getting us up to spot. But, there were ways to get past that, for example if i only knew how important the proper instruments were, including soldering stations with all the gadgets, we could have organized so every one in class gets what we can and organize sharing equipment that was too expensive to get individually. And go on with sourcing chips and other stuff that goes on a pcb from throwaway stuff. Even in Yugoslavia it was not impossible to get microprocessors from the 70s, if I only knew how important that was, alas I saw most of it as a chore to chew through, ofc lamenting that we had to study so much other stuff, like history and biology and whatnot. I was envious of the american school system, at least what we saw in movies, they seem much more project oriented as opposed to pronounced "ex cathedra" teaching that I experienced, but there were ways to hack oneself to proper education. I think even today it helps if a kid that's bright but not too fond of school (like my 11yo) focuses on the 2-4 teachers and their subjects that they like and treats the others like assistants. And there you have real life, figuring out how to talk to teachers is much like later talking to colleagues and superiors.
@@florkgagga Schools teach principles. Not real world. I'm sorry but it's just how it is. I'm not negating their place in the mix... But attempts to blow smoke up my ass aren't going to work, when I've seen time after time after time where it failed to meet expectations in the real world. As an old boss put it more than once, "take the paperwork into the bathroom, it'll serve better there". His point was you can't teach critical thinking, and all the school in the world can't make up the difference. People either got it or they don't, and the information alone is useless. Without the critical thinking, watching someone try to apply the knowledge would be much funnier if it wasn't so sad. People pigeon hole themselves into positions they can't handle all the time... I've seen enough of it that I don't even care to work anymore until the educational systems are reformed. Passionate usually wins over educated in my experience. The difference is in what the drive is for... One is seeking to expand their universe and make a difference in ours in the process, the other just saw the numbers and wanted the check.
I work in the closed captioning industry developing hardware and its really cool to see how things were handled then vs now with relatively simple hardware!
CC is an example of an disability assistive service that has had a massive benefit to all of society. Thank you for fostering the value CC gives all of us.
@@voidex136 I’d have to go back through the whole video again, but I think the device has the ability to silence the audio when it detects a “bad word” I’m suspicious of this because I don’t think the audio and closed captioning would be perfectly synced as to bleep words right when they’re happening…. It would instead have to block a whole section of rendered CC, or take really difficult to calculate guess as to when that particular word was said. I don’t think CC is encoded with enough granularity to pull it off… I’m sure a few things i said here are incorrect so i hope someone can give you a better answer. (It’ll probably help us both to just go watch Technology Connection’s video because he apparently showcased exactly what this device does!)
@@voidex136 just got to watching the referenced video - and indeed, if there’s ever a detected bad word in a rendered “chunk” of closed captioning, it mutes the ENTIRE duration corresponding that chunk. So yeah, it generally mutes when there’s a bad word detected. But its granularity is limited to the entire “chunk” of Closed Captioning rendered to the screen at once (often a whole sentence), so… it mutes large gaps. But of course, it gives you some very inoffensive text to read during that time 😆 and that’s what it set out to achieve
I got a kick out of Technology Connections' coverage of this device and was thrilled to see it examined further here. What a nostalgic surprise to learn a PIC is at its heart. The reverse circuit engineering reminds me of the work Big Clive does on his channel. I wonder if we can get him to puzzle out the purpose of the comparator? Imagine that: my three favorite YT channels all dissecting the same device! A nerd's dream, come true.
I couldn't stand Big Clive once he started posting too much about alcohol consumption, the sound of him smacking his lips and such. Keep it in the bar dude
Mad props to you for... 1: Not having a stupid and LOUD intro. 2: Immediately getting to the point. 3: Giving all the creds to Technology Connections and rerouting traffic to his channel. People in general despise those who just keep surfing on others work.
This is why Ben Eater is great, definitely check out his other stuff, or if you are curious about his background check out the Ben, Ben, and Blue podcast which is also amazing
@@thisaccountisntreal107 You can safely cut toward your hand if the thing being cut is soft enough (i.e., the cutting force is low enough) that there is little risk of explosive cut-through.
I’m a big fan of Technology Connections so even seeing this video 8 months after you made it, I still appreciate that you picked up on what he talked about and ran with it. Thank you!
Now that we know how this works, it wouldn't be too hard to rewrite the EEPROM to basically make a reversal device that would take G-rated words and replace them with unsavory ones. Run your old tapes of Barney the dinosaur through that version and never sleep well again. I suppose if you did that and then twitch streamed it, you could make some good money.
Actually, we do not _quite_ know how this works. There's no explanation in the Z86129 datasheet of how one reads the captions display RAM through the serial port. There are serial port commands for writing new/replacement captions in, but it's not immediately apparent how the originals from the video source are read out.
At a glance, I would say the 0x2 is telling it to look at the prior word, to sensor both. Which is why 'Balls' has a 0x2, to sensor, say, 'Hairy Balls' or whatever. However 'Tennis B' is explicitly whitelisted as an exemption. 0x01 probably does the same but for the word after, so 'Dick' would block 'Dick Head', which explains the exemption for 'Dick van'.
You would need to whitelist those anyway, because "tennis balls" would match the filtered word "balls," muting the audio and turning it into "tennis tail." Same with "jerk van." 01 only marks "dick" and "woody," which are also names. I wonder if there is a connection there. For instance, it might check if the word is capitalized, in which case it's probably a name. I can't see a connection for 02 words. I don't think it censors words that come before them. In your example, "hairy tail" is totally acceptable, and it wouldn't make sense for "Now you're pissing me off" to be replaced by "Now teeing me off," for instance.
@@EebstertheGreat "I've just teed myself. My pants are soaked in tee." "Dick Van Door-to-Door Dildo supplies ltd" would be another nice one to slip past. "Our lesbian orgy is due to start in 5 minutes and everyone forgot to bring toys!" "Time to call... the dick van dyke!"
woody back when this was made was a slang word for penis. See the Sega game - "Wild Woody". I am sure the swear jargon this was programmed to is dated in and of itself. @@DustyyBoi
The PIC microcontroller used only has 2K of program memory. Besides doing the word substitution, it also interfaces with the CC decoder IC, on screen display IC, and mutes the audio. All in 2K. That's some neat and tight coding.
Would love to see a dump of the PIC code that's analyzed. I imagine that certain things like the plural forms of many of the words can be accounted for in the code rather than have to have separate entries in the ROM.
If you think that's tight coding, it might only be because modern code is so bloated. I'm willing to bet the Arduino code featured in this video compiled to over 2K, but could be hand written in AVR assembly in under 200 bytes... programmers these days take GUIs and smart compilers for granted!
loved how you explained it thoroughly and easily. It's refreshing to see someone trying to honestly educate being informative without being pretentious or arrogant. Good video man helped me think of a couple of projects for my arduino, thanks.
I love that your videos go in detail and explain everything that you're doing. There are a lot of videos that would just say "I did some testing and coding and here are the results". I learned a lot from this video!
This video was amazing. All praise nerd sniping, I've been a TC subscriber for years. He really does answer the questions of history and modern tech in a wholesome humorous way. Don't forget to turn on CC he writes himself "ridiculously smooth jazz playing"
Now that you have that eeprom out of the board you can reprogram the word lists so that it will make any perfectly normal text as naughty as possible. Then put back the chip and see how well it works and complain how useless the device is. :D
that is a whole nother level of nerd troll and I love it. imagine how shocked some grandma would be back in the early 90's if her guardian only made things worse
@@brandonjob2202 *late 90s The original version of the TVGuardian was first released in 1998 and was most likely sold well into the early 00s. In the early 1990s, the PIC microcontroller line had only just released (in 1993 to be exact) Most of the datasheets for the PIC16C622A microcontroller in this specific unit have dates ranging from 1995 to 1998. The manufacture date on the PIC in this unit is between February 7 and 13 of 2000. And the EEPROM, despite being covered with some sort of blue paint, I can make out the manufacture of the EEPROM was between November 29 to December 5, 1999. So, this unit was definitely made in January or February 2000. Don't judge me, I just like correcting people. Bonus: my dad used to have this cable TV hacking device in the late 90s/early 00s generically called the "Quick Board" and used a very similar PIC microcontroller (the PIC16C56-RC/P), which has a manufacture date of August 14 - 20, 1995 (33rd week of 1995). If I still had some of the original cable equipment, I would have been able to test the circuit board based on a chip that's a few days older than Windows 95. Because I can't find anything on Google, I am going to assume that the Quick Board was in limited production (
Dude started explaining how a transistor works and now we are on a complete master level of understanding data, never understood a thing, but loved your videos!!!
He probably already had an idea of how to write the code and recorded him writing it in. Or just experiences enough, because I had to sit and think what "data
Regardless. Still pretty amazing. My head exploded when he started moving the blocks of code around, making subroutines out of it and manipulating the bits and bytes at the speed of light. Yes, I know it was sped up in places. But still. And if that wasn’t enough, he then had to shame all of us by just destroying that spreadsheet. Massive geek-fu.
Sometimes I wonder if his videos are pre-recorded videos with a voice-over. Then for the 3829492th time, "oh its real time". I've been watching him for years and even knowing that everything is real-time, this question still comes up in my mind. It's so funny
@@conkerconk3 I dont think so - he explicitly left the part in where he got a compiler error because he coded in the wrong return for his read function, including the classic "oh... Wtf" noise he made. He was doing it in real time, my man's a wizard
My parents had this when I was growing up. It was incredibly stupid to anyone who enjoys cinema or is unoffended by some bad words, and basically the best invention ever for the over protective parent.
I’m studying engineering and we just learned about interfacing and communicating with PIC microcontrollers, and it was so cool to see you doing so much of the stuff we learned about. I must have written a program very similar to yours about 100 times this semester! 😂
I love the range of what Technology Connections considers "tech." From juke box mechanical song selection memory to kerosene hurricane lanterns to the product mentioned on this video. A nice reminder that some things in their day were "cutting edge."
if he filmed all the hundreds, if not thousands, of times it took to get there, we'd have a pretty long video. You get to enjoy the result of a lot of practice and hard work. Important to remember.
@@abritabroadinthephilippines I think he was referring to the idea that probably he already has done this MANY times for work/hobby already, so he is Experienced and we get to see the result of that experience, not talking about the video being multiple edits.
For those of you not familiar with any of the integrated circuits that have HC on them, those are CMOS chips and are very easily fried if they are touched. Always wear a grounding strap coonected to metal when you are working with these or any other CMOS technology. The TTL technology is a little more resistant to the electrostatic discharges but can still be taken out as well under the wrong conditions.
Really cool videos and got knows how much youtube I watch. Someone who can use a soldering iron and end up with an excel spreadsheet, doing Arduino in-between is an absolute renaissance man.
This is the coolest thing I’ve seen in awhile! As a student working with electronics it’s super neat to see the reverse engineering, and the fact that things we learn are actually used in the real world haha
That was actually fun and interesting to follow along. I'm not technically educated on bit/bits and even I got the majority of what you were talking about. Thanks.
I absolutely LOVE this. I haven't seen anyone do this sort of this since the old Amiga days when people were making stuff to sell at shows. I am very happy that you did this. You brought back some memories of friends I had in the 1980s and the fun every day brought to inquisitive minds. You made my day.
So, do you have any plans to modify the word list and make a follow-up video? I think it would be funny to have a TV guardian which replaces common words with profanity
This would be a perfect conclusion to the story. Here it might be a way into deciphering the exact replacement scheme, or if Technology Connections wants to colab it also fits the discussion of wider social impact
And then use a text to speech software to dub over the video. Then you can automate the entire process and have a device that automatically generates youtube videos for you. The uploading to youtube can also be automated. But of course you'll get a ton of copyright strikes and be demonetized for containing swear words. It still will be fun tho
the unidentified bits could be a way to produce a "grammar accurate output" by combining words, adding a, that etc to the replacement. I lost it when you got that 1st 100 bytes :D
As someone who doesnt find enough motivation to learn programming i really appreciate the pseudo Code explanation to make it understandable for everyone. Really enjoyed that Video!
holy cow this is incredibly sophisticated for the 80s okay, maybe not the software and the library itself, but the fact that you got closed captions on your tv as a default and it put the two together live in front of you, making all of this even possible in the first place...i grew up in a non-english speaking country so defo had none of this going on even in the early '00s which is when i quit watching tv for good. i'm impressed and now once again wished i was born earlier, eventhough i know it's better to be born later for many more important reasons.
@@phillyphakename1255 it really is. fun fact: early pro gamers continued using giant crt monitors instead of early lcd bc of the noticable delay the liquid crystals used to have. if you move your mouse rapidly left and right, you'll notice how the pointer on screen lags behind the mouse in your hand. crt monitors never had this problem bc they were working with the literal speed of light. well, unless your computer was just too slow to calculate the mouse movements, that is. and let's be real, everyone had all kinds of malware and bloatware everywhere. god windows 2000 sucked. and i've used the constantly crashing windows 95, too. 98 reigned supreme till xp, the real g that never let me down unlike literally every other windows version out there.
My mind is blown away, not by the product, but by the work you did. Amazing stuff. Looks like a lot of people called Richard will be known as Jerk under this too.
This video showed up in my “recommended” and I was floored with how much information was coming at me. The knowledge, skill, and speed was jarring (in a good way). I actually started laughing because I was so impressed. I’m definitely going to be watching more.
I wish I could like this video twice. This is such a nice, condensed collection of knowledge and skills combined with a practical demonstration of their use. I feel like you could develop a whole curriculum just based on this video. Not a Masterclass, but an inspiration for designing a class or, more likely, set of classes that result in the ability to perform the tasks in this video. (This is all from the perspective of someone who has spent decades watching, listening, and reading about other people doing interesting things, but never learning them myself. I feel worried that anyone with expertise is rolling their eyes at this effusive praise, but this video just clicked for me in a way that made me feel like there is a path that I can still follow to get there too. Sorry for dumping my insecurities out. Unfortunate habit of mine. But the venting helps. Writing long, rambly, meandering TH-cam comments is mostly harmless and feels like free therapy sometimes.)
I am finishing off a computer engineering degree and the concepts in here were covered this year, such as what a PIC is, an SPI, a breadboard, reading input/output/clock, timing diagrams, reading datasheets, seeing the data in a table of hex and ascii in the format he showed, microcontrollers, shifting, binary addresses, etc. Seeing it applied so practically is insane to me and I wish this was used as a consistent example throughout our studies to make it more meaningful than the confusing projects we got.
What's wild is how much he got done using just a damn spreadsheet. I switched careers from information technology and went back to college for a science degree. I barely touched Excel working in IT, but doing science things, we use it constantly. I guess you bring it full circle when you start doing computer science!
When I first watched this video, I barely knew what you was typing. But know, I'm happy I can recognise atleast sone of it even though I don't know a single programming language
I thought I was just going to see something interesting today but I think you've taught me how to read data off of a microcontroller and the sheer godlike power that Excel has over data conversion.
Coming from being a technology connections fan. This video is absolutely mind blowing and yet so confusing. It's just so fascinating hearing you narrate the code you write and it's incredible it all works. You have earned a fan and I'm so impressed by the whole process. Have a awesome day sir and thank you
This video was randomly recommended to me by TH-cam's algorithm, and I'm beyond delighted that it did - this was easily my favourite video for a very long time. What a fantastic process to witness.
Thanks for the step-by-step walkthrough of how you approached this (compilation errors included!) instead of just jumping to the end. And for not using the chip programmer! Really top notch.
I guess you got nerdsniped twice, Foone did a similar teardown of it on twitter, on the 9th. It's absolutely awesome to see all three of you discuss the same topic. Like a crossover episode 😄
Aah! I see I was scooped! Very cool thread though. Seems like we're both confused about the same parts of the ROM, but Foone is apparently working on injecting closed captioning into the thing to tease out its behavior. Very cool! Can't wait to see the result.
@darkshoxx FYI nerd sniping refers to being laid low by a problem so fascinating (read: nerdy) that you drop everything to solve it. It doesn't mean that someone solved it before you. Search XKCD Nerd Sniping for the context :)
It would be interesting to put the eeprom back and capture how the microchip searches for words. Since they are ordered I'd expect a binary search, but maybe inside the pic ROM there's data that makes it even faster (eg: storing the positions where every character starts, so the binary search requires less readings).
I'm sure this is just an iterated list down the line until it gets a hit, or falls out of the bottom and just gets passed on. CC isn't high bandwidth, I mean the scheme is done in just a few video lines, and tracking spoken paces, this thing is *still* spending most of its time in a sleep. Just scans that address range upon receiving each word, comparing them whole. That's how I'd do it, not much code, and raw speed isn't necessary. One hint this may be the case is the "dick van" case... It has "dick" stored twice there for one, but also would need another bit to do things like exceptions/qualifiers... Either cutting the sub list further or sacrificing another function. Watching it in situ would prove it out of course, but while I'm not privy to the finer details of CC, I'm sure if they used fancier tricks, they'd also be capitalizing on the protocol of the original CC... So that would be a place to look for other clues as to their thought process.
They would need to do it in some kind of order, otherwise if you search for "FUCK" before "THE FUCK" you could end up replacing "What the fuck is this?" with "What the wow is this" which makes no grammatical sense. Conversely if you could replace "Why don't you just fuck off?" with "Why don't you just wow off?" rather than "Why don't you just go away?"
With the limited space in the PIC I would guess that that is a simple block table that provides an index into the 256 byte blocks found in the EPROM. So words starting A-C would index to block 0 and so on. As they seem to be on rev 5 of the firmware it would explain why one of the word blocks on the EPROM is full - they have added words and features without completely re-indexing the blocks.
@@Hyxtryx ... it searches the whole table and stores a pointer to the last match ... therefore (for example) Dick van Dyke is found last and overwrites the Dick pointer and skips over Dyke too. Reading this again it could be changed into some lines of description in a porno film! 😳
@Isaac Alonso. The PIC microcontroller does not have enough program memory to have a lookup address for each bad word. I think they broke up the words into groups within 256 byte blocks (why we see a lot of NULLs or 00's at the end of each block), then took the first two letters of each word to start a rough search in a specific block in the EEPROM library and then complete the search after finding a 2 character match. This way 'ASS' and, say, 'SHIT' could each be looked up quite quickly, 'AS' starts the search in the first 256 byte bank, and 'SH' starts the search in its appropriate bank (several blocks deeper in EEPROM), thereby skipping the blocks it knows it won't find it. My ZX-81 computer did something similar for variables, I can call a variable pretty much anything that I wanted, but only the first two characters are used to look up the variable: 'APPLE' , and 'APE' would not be allowed in that case. The PIC is using the same first two character to select a bank and look for matches based on the flag bytes that follow the dictionary words.
As to the comparator, it wouldn't surprise me if it's taking the output of the re-write chip and only replacing it in the video blanking window if one of the switches on the back is at the position that requests it. The idea being that if you are watching TV with Little Joe, and Grandpa Joe, if Little Joe can't read, and Grandpa Joe can't hear, he can at least read the original dialog, but little Joe doesn't get either.
The only viable use for this I can think of is for waiting rooms where there is a TV to distract waiting people, but its on mute to prevent the TV from interfereing with the secretary's work. The chip would keep things mostly G-rated.
Not gonna lie.... not once in my life, since I've been doodling with electronics, have I ever opened up a device and been able to identify every IC that was attached to the PCB! Not only that, but even if I could read the imprints and/or figure out what it is, only about 20% of the time am I able to find a datasheet for it. Must be nice! Lots of times a Google search of a chip will only lead to one link that directs you to a Chinese website that describes a gadget of some sort that contains the same chip, but those rarely tell you what it is/what it does either!
Yeah there are lots of weird Chinese clone chips around, plenty of datasheets that need google translate, and a load that just don't seem to have any available data. It's a pain for reverse engineering things but you can often work out what these things are by looking at what it seems to be doing.
Somebody probably already mentioned this, but "foone" on Twitter (and others) did a full disassembly of the ROM from the original TV Guardian. I believe foone also bought one of the newer devices only two weeks ago, and dumped the ROM from that as well. Their twitter threads always make for an interesting read. Lots of nerdy tech details.
@@SianaGearz I could have *sworn* foone said they'd done a full disassem, or somebody else did. You might have to look at the recent tweets to find it. It's possible I was mistaken, and they only extracted the dictionary so far. Or maybe the disassem just isn't public atm?
It would be great to see a follow up on how it reads the closed caption data and sends the mute signal / injects the cleaned up strings. This was really cool to see though! You're awesome!
Weirdly I learned more about spreadsheets in this video than in my entire life (of avoiding them) up till now! I tend to just write software to perform the calculations on CSVs :) In this case I probably would have performed the data processing in code and added it to serial output but it was interesting to see how the spreadsheet does it!
@@youdontknowme5969 wdym not designed for? that's what secretaries used to be paid for, nowadays a company will instead pay another company to make a web service for something the secretary used to do in excel..(edit: in excel or lotus or whatever.. you can also have it fetch and dump to a database and stuff)
@@lasskinn474 Fun fact, at a previous job where I was mainly an admin over a UNIX/Oracle DB farm I converted some hellish Excel spreadsheets that had grown over years in the accounts team, into a complete mess of tables and single-file databases, to a web interface pulling from Oracle. The spreadsheet would take literally 10 minutes to update, and the DB would do it almost instantly. It was even faster when I added a bunch of MySQL slave servers to Oracle (using triggers in the Oracle DB to push updates, inserts and deletes to MySQL and optimised them for the type of queries they received. I don't know anything about spreadsheets, but clearly they have limits to what's sensible with them.
@@Stabby666 Let me tell you, I know limits of spreadsheets. The company I work for has a lot of their design docs in Excel with photos of PCBs and charts of connections instead of schematics. Drives me up the freaking wall!!
Of all of the programming tutorials I have seen online, I have never seen someone who can walk through code so fast while also making it completely understandable for newbies. I wish I had a teacher like you for my intro to programming classes.
Analyzing the rom really shows both some clever ways they were pulling this off as well as how much they had to work around the limitations of their hardware. Great vid!
Very good job on this one Ben. After high school, back in 1974 I went to DeVry tech for basic electronics. This was before MCU`s and MPU`s. So I really did not get a deep understanding of digital stuff. But I managed to work in electronics the rest of my life. Mostly as a test technician at the factory level in circuit board assembly plants. Most of these places make circuit boards for many different customers, so I do get to see and test a wide variety of circuit boards. You are the kind of brain I need when I have boards that fail test and i`m just lost. LOL.
Thanks to Arduinos I have slowly been teaching myself basic electrical engineering. But seeing stuff like this, I feel I got a lot to improve on (then again that was a good datasheet they offered, a lot easier to read then usually what I try to learn off)
I just love your video content and the methodical way you present them. I can imagine they’re quite time consuming to make, but would love to see more. Thanks.
@@rajveersingh2056 You're right. It's just a cliche. Marketers have "normalized" pricing to that some people don't even think of even-dollar prices anymore. Just look at gasoline: 2.919 so it doesn't look like 2.92.
This was amazing to watch. I do only a little programming in C every now and then. And watching how you do bit manipulation with ease is very satisfying.
Thanks for this. I've been putting viewing of this video off for a couple weeks as didn't want to distract myself while working on other things. Finally sat down and watched. Thoroughly enjoyed it! Seeing the process one would go through in a nutshell like this is highly valuable to educating newbies from school age and up. Great stuff!
@@Xnoob545 I used to play an online game in which one of the classes was "assassin" but people couldn't tell you they were playing that class because they got censored. Twice.
This is exactly what I wanted to see after the Technology Connections video! I knew that there had to be someone on TH-cam who could just pull the chip and dump its contents and document exactly what the thing censors and how it goes about it!
I've been watching through your old videos, particularly the 6502 series. It brings me so much joy to see that you're still making videos. Keep it up, amazing work!
This was a godsend. I personally hold an AAS in electrical engineering technology from my local community college, so I could follow along with the material presented (part sheets, desoldering, the Arduino code, and so on). I thought it was great that the material was presented in such a careful, formal manner that it was on par with (if not exceedingly with) the higher education classes for my Associate's degree. And after the initial presentation, which was on par with college education, the end result was just a list of bad words. I don't know if it was genuine poetic irony or just my own personal immaturity, but that contrast was the best thing that I've ever seen in an electronics video. I loved it.
This is one of the best rom hacking videos EVER. Its also telling that some of these words would be controversial as censored words today. For example: “gay” is one of the words listed.
So happy to have come across your channel; Way too many channels are very light on the technical stuff.... but as someone very familiar with the technical end due to years in R&D; This is really refreshing and has been very enjoyable to find and watch. Keep up the great work!
You, as well as several other technology youtubers, make looking at a bit stream look really simple. I love it and feel like I learn something with each video.
Well, this is ' delightful! A triumph for science. Thank you!
Unexpected interaction 👀
This is the crossover I didn't know I wanted
Lol I was going to send this video to you, glad I checked the comments first
Technology Connections - did you get chance to read any of the twitter threads by foone yet?
They did a full disassembly of the TV Guardian code. ;)
EDIT: I may have been wrong about the full "disassembly", but I haven't looked at it in-depth again for a while.
They also just bought one of the newer devices two weeks ago, and dumped the ROM from that.
A very interesting device, and also hilarious.
Ay you are here!
Is anyone gonna mention the amount of skill this man has with spreadsheet functions?
I decided a long time ago that he's omniscient.
Given everything we know about his programming ability, I'm not surprised in the slightest.
No bit is safe from Ben's fingertips.
I imagine Matt Parker would be quite pleased with this demonstration.
Im astounded
13:04 I don't know what I was expecting, but I've never seen a chip respond with such hostility to being probed
Reminds me a story: Many years ago, as a joke, my high school programming teacher had a program spit out "DONT TOUCH ME THERE" when a certain button was clicked. It made it to a non-technical user who freaked out. I'd love to put "DONT TOUCH ME THERE" on a ROM
I was laughing to myself the whole time it built up to that imagining him running the program and the console just saying "Fuck"
Underrated comment. I HOWLED with laughter at this. I have never seen such an angry chip :P
Huh, imagine how a person feels after being beamed aboard, tagged and released.😀
@@csours UuuUuUu. Ive put ominous short msgs in the remaining bytes of a rom.
Fun 🙃
I wanna see the TV attacker.
It just replaces every third word with obscenities.
Introducing, the TV Terrorist!
@@Gary-EngI need this to exist! I don't even watch TV but I'd be sold on just the name!
I'd hack it change every word to an obscenity, then re-pack it and sell it on ebay!🤣🤣🤣
I just did a mwah ha ha at the prospect of it existing (or someone bringing it to existence)
i can just imagine mr. roger’s neighborhood
“It’s a SHITTY day in the HELLHOLE”
Ah, yes, my favorite classic film actor, Jerk van Gay
Clbuttic!
almost as good as Penus van Lesbian
"It's the >bleep< van >bleep< show, starring >bleep< van >bleep
@@ohasis8331 #WhoseLine!
His Jerkney accent in Mary Poppins was terrible, though.
First Im like "oh, cool, this guy likes Technology Connections, he must be smart and cool". Then I'm impressed by your knowledge and soldering skills. Then I'm intimidated by your programming skills. Finally I am humbled by your other-worldly spreadsheet mastery. You're some sort of Nerd God.
he is the final boss
Frfr I’m shitting and crying rn
Wait until you see the breadboards
@@morganfreeman8208 This video literally made me go take a shit in consternation as i was just trying to fathom wtf he just did in excel....Did he invent Excel?
@@CalebFuelgo watch him make a graphics card on a breadboard, it's incredibly humbling stuff and fucking *_fascinating_* to see him build it from the ground up
Can you imagine the guy who built and sold the TV Guardian, seeing a sudden jump in sales 30 years later...
@@nsa3967 yep. 3 dots on the comment -> report -> spam
ebay sales? cmon man think
@@tingtang9302 No shit Sherlock. Isn't it funnier to think that the guy who created the device is in control of all sales of his device, and sees 2 random sales of The Guardian in 2022, and it makes him scratch his head? C'mon man, imagine!
@@yellowticket9673 MEGA FUNNY HAHA
He'd Say... "HOLY BEEEEEEEEP"
This feels like i asked a wizard a question and now I've been listening to them talk about things beyond mortal comprehension. Also huge props to maintaining the pacing of the video. This is slow stuff and keeping it snappy is really cool
I'm at the "I know what all of those words mean, individually" stage.
Sure, I've used microcontrollers, I've played around with doing digital read/write operations on an Arduino. I've seen LM358s and 393s, I've done spreadsheet formulas.
But putting them all together in a cohesive hackable format to make a high quality video? Never done before in the real world.
Stargate
O'Neill: Carter. Use little words. OK?
You got it… straight over my head 😂
@@phillyphakename1255 For a moment, I thought you were referring to the words in the word list. 😂
This was a really elaborate way to slap a whole bunch of "bad words" in a youtube video. Nice work.
Imagine being one in said board room and coming across this decades later~~~backk to the future~~and sad how far we have come in not caring about those words ,i use to get belted if i used most of them lol.
@@MichaelRogersJesusrulesI was the same as a kid. Eventually my parents just said as I got older that there is a time and place. I barely swear now unless I’m pain lol
He's reacting to the bad words in the medium of spreadsheet.
I'm more interested in seeing this thing work?
My friends from IT put even more effort to attach some tits into scientific publication XD
you are the only one who breaks down technology every bit by bit, just to let us understand. Thank you man, you are the best teacher.
quite literally
@@ArmiaKhairy I get it!
Pun intended
Byte by byte ;]
Hey now, not the only one. Technology connections goes just as in depth. Theres definitely a reason he featured him at the beginning of this video
In Technology Connection's video (at time 7:07), you can see that the Guardian removes articles attached to the foul word (in that cases it censores "What the fuck is that?" into "What is that?"). The whitelisted words are all articles (the, that, those) that would have to be removed to maintain the sense of the phrase. Probably for the microcontroller firmware, the fact that the word is whitelisted and has a substition bit (0x1) flags it as "if encountered before a foul work, also remove that article"
No. As I mentioned in another comment, "the fuck" is explicitly detected and replaced. There's no grammar analysis going on.
You may be on to something there!
@@inothome Nah, the solution is obvious.
Its for dick and woody(the two words with a 01 after them).
If they have any of these words in front of them, they are blocked, if not, they are used as names and not blocked.
@@jort93z Up vote. This is the reasonable conclusion.
@@jort93z ... which suggests that "Dick Van" needs to be explicitly whitelisted only to handle cases like "The Dick Van Dyke Show."
Ben just casually talking Computer Science with all those words on the screen was too funny 😂
Jerk van Gay made me laugh far more than it should have.
Great video. Hats off to you, sir.
this might move into my daily vocabulary
That was hilarious :D:D
Background: I had seen the Technology Connections video back when it came out; I'm a BSEE/MSEE with 20 years in industry who (for some reason) only stumbled upon Ben Eater's channel this evening.
I had trouble explaining to my wife just now why I was laughing so hard... "No, because when they were testing it, it would have turned Dick Van Dyke's name into Jerk Van Gay and they would have seen that and said a bunch of things they'd need to censor." It's the kind of ridiculous secondary problem you only truly appreciate as an engineer, and it rises above foul language.
Likewise. It was so unexpected.
@@chaz720 And it made me wonder, did they catch this in testing- "let's test against wholesome shows our customer probably watches in case it produces false positives" and Dick Van Dyke is what came to mind or did they get customer complaints (from customers watching wholesome shows like Dick Van Dyke) or when the engineer added d*ck their mind led them to think, "gee... that, you knoelw, could be a valid name.... like Dick Van Dyke.... oh geez!". Ben is right, that is a hilarious rabbit hole the engineer had to deal with.
It's hilarious to me that in the effort to keep (arbitrarily) naughty words out of one's home, you could buy a device that sat quietly in your home, secretly filled with profanities and blasphemy, whispering them to itself every cycle
the FUCKSHITPISS machine in the corner
Ultra Christian household having their secretly heretical little tool sitting by their TV... slowly infiltrating. Of course they're in strict mode, and when watching their favorite televangelist hold another one of their hypocritical sermons, suddenly every mention of Christ gets censored. Lol.
😂🤭
Jonathan,
That's the internal part of human progress.
The external part is that at the wavelength of television, Earth is a bright star.
To the rest of the galaxy we are the proud proclaimers of Hitler opening the Olympic Games, followed by a generation of "I Love lucy."
@@TheDavidlloydjones Guhhee.. *attempts what little he recalls of that anxious collar tug-jerk reaction lucy does?*
Watched the original video on how it works. I think for “the”, if it is before a “naughty word”, it will eliminate it. So “what the f” just becomes “what”. But if no naughty word follows, then “the” is allowed. Possibly the 01 and 02 could indicate searching for a naughty word after or before the regular word. Hence “F you” would return blank, instead of “you”.
Now, with that said, if you enable write on the chip, you could create a reverse device that takes pg rated dialogue and spices it up a bit!
What does the other chip do?
this is what i was hoping "hacking" it entailed when i clicked on the video
@@helloimbrettgreen yea imagine spongebob 🤣
@@gavmansworkshop5624 what the f### are you doing Patrick? Oh Im fu##### the dog
If you check out the spreadsheet, "the fuck" is already explicitly listed. It seems like if they had a general method for removing particles before censored words, they wouldn't need that entry.
@EebstertheGreat maybe "the fuck" warranted a specific substitution but others like "the shit" or "the hell" benefited from more general substitutions.
If we saw the code, I'm sure there would be a priority order of operations, where it looks to make substitutions in a certain order.
Was kinda hoping he was going to tinker with the substitution list haha.
I grew up in a strict, religious household, and we had one of these for a while. My siblings and I frequently found the word replacements pretty funny, and sometimes completely nonsensical. Of course, the whole concept of this device is nonsensical to me now. 😂 Any way, it is super cool to see under the hood of this contraption decades later. Thanks for posting this! 👍😊
bc 2/10
I'm assuming since live programming has such delayed closed captioning that the audio censoring wouldn't activate at the right time (or wrong time, depending on how you see it). Was that the case?
Came here for this question! Cc does not always follow the audio. How does it know when to replace the naughty word? Then, how did it “play” the word? Was there a voice synthesizer?
@@kurtnowak8895 It just cut off audio for the duration of the CC prompt output that contained one or more of the filtered terms and removed or replaced it in the CC output. Voice synthesizers in the 1980s would've needed beefy hardware and even then it would've sounded like Stephen Hawking.
@@williampotter3369 Using Mariachi is like "This is what happens when you find a stranger in the alps"
I started watching your videos about three years ago and my reaction was usually, "what sorcery is this!" I am now finishing my second year in electrical and electronics engineering (you can guess who is partly to blame for this decision 😂) and for the first time, I can say that I understood everything you did. You are such an inspiration. A role model too while at it. You sort of make embedded systems accessible en masse. Like an adult explaining a math problem to you, but it involves ICs and bitwise operations. lol ❤
I remember those days. Thankfully there is so much to learn that even two years after graduating there are still many tricks you can pick up
Where was this channel in the 80s when I'd have really been using most of it...
Oh right.. 🤣
@@SpaghettiEnterprises Schools don't cover real life.
@@MadScientist267 I beg to differ Mr. Mad S. there definitely are ways to learn something in school that you can use in real life! Oh, I'm in Europe, maybe there's no point... but seriously, back then, I was a teen in the 80s, in high school (I guess, we call it middle school, age 14-18) i was studying to be an electronics technician. Didn't make much of it, after all it was in a slightly underdeveloped country where the proliferation of tech progress was sort of tied to political affiliations so the teachers were not super motivated to invest into really getting us up to spot. But, there were ways to get past that, for example if i only knew how important the proper instruments were, including soldering stations with all the gadgets, we could have organized so every one in class gets what we can and organize sharing equipment that was too expensive to get individually. And go on with sourcing chips and other stuff that goes on a pcb from throwaway stuff. Even in Yugoslavia it was not impossible to get microprocessors from the 70s, if I only knew how important that was, alas I saw most of it as a chore to chew through, ofc lamenting that we had to study so much other stuff, like history and biology and whatnot. I was envious of the american school system, at least what we saw in movies, they seem much more project oriented as opposed to pronounced "ex cathedra" teaching that I experienced, but there were ways to hack oneself to proper education. I think even today it helps if a kid that's bright but not too fond of school (like my 11yo) focuses on the 2-4 teachers and their subjects that they like and treats the others like assistants. And there you have real life, figuring out how to talk to teachers is much like later talking to colleagues and superiors.
@@florkgagga Schools teach principles. Not real world. I'm sorry but it's just how it is. I'm not negating their place in the mix... But attempts to blow smoke up my ass aren't going to work, when I've seen time after time after time where it failed to meet expectations in the real world.
As an old boss put it more than once, "take the paperwork into the bathroom, it'll serve better there". His point was you can't teach critical thinking, and all the school in the world can't make up the difference.
People either got it or they don't, and the information alone is useless. Without the critical thinking, watching someone try to apply the knowledge would be much funnier if it wasn't so sad. People pigeon hole themselves into positions they can't handle all the time... I've seen enough of it that I don't even care to work anymore until the educational systems are reformed.
Passionate usually wins over educated in my experience. The difference is in what the drive is for... One is seeking to expand their universe and make a difference in ours in the process, the other just saw the numbers and wanted the check.
I'm working with a lot of serial at my job recently and it feels so fucking cool to actually keep pace and understand COMPLETELY what you're doing.
I work in the closed captioning industry developing hardware and its really cool to see how things were handled then vs now with relatively simple hardware!
CC is an example of an disability assistive service that has had a massive benefit to all of society. Thank you for fostering the value CC gives all of us.
What is the point of this device if it only removes captions, but audio stays the same
@@voidex136 I’d have to go back through the whole video again, but I think the device has the ability to silence the audio when it detects a “bad word”
I’m suspicious of this because I don’t think the audio and closed captioning would be perfectly synced as to bleep words right when they’re happening…. It would instead have to block a whole section of rendered CC, or take really difficult to calculate guess as to when that particular word was said. I don’t think CC is encoded with enough granularity to pull it off…
I’m sure a few things i said here are incorrect so i hope someone can give you a better answer.
(It’ll probably help us both to just go watch Technology Connection’s video because he apparently showcased exactly what this device does!)
@@Michael-kp4bd that makes sense, thank you
@@voidex136 just got to watching the referenced video - and indeed, if there’s ever a detected bad word in a rendered “chunk” of closed captioning, it mutes the ENTIRE duration corresponding that chunk.
So yeah, it generally mutes when there’s a bad word detected. But its granularity is limited to the entire “chunk” of Closed Captioning rendered to the screen at once (often a whole sentence), so… it mutes large gaps. But of course, it gives you some very inoffensive text to read during that time 😆 and that’s what it set out to achieve
I got a kick out of Technology Connections' coverage of this device and was thrilled to see it examined further here. What a nostalgic surprise to learn a PIC is at its heart.
The reverse circuit engineering reminds me of the work Big Clive does on his channel. I wonder if we can get him to puzzle out the purpose of the comparator? Imagine that: my three favorite YT channels all dissecting the same device! A nerd's dream, come true.
I doubt he'd do it since he's in a PAL region.
If there was a PAL version, then maybe..
Can I second this?
@@ceneblock it probably can be imported (or sent by fans) and TVs for a long time work with basically any widespread signal standard
I was thinking about Clive while watching this too.
I couldn't stand Big Clive once he started posting too much about alcohol consumption, the sound of him smacking his lips and such. Keep it in the bar dude
Mad props to you for...
1: Not having a stupid and LOUD intro.
2: Immediately getting to the point.
3: Giving all the creds to Technology Connections and rerouting traffic to his channel. People in general despise those who just keep surfing on others work.
This is why Ben Eater is great, definitely check out his other stuff, or if you are curious about his background check out the Ben, Ben, and Blue podcast which is also amazing
You have found perfection
He loses a point for cutting towards his hands with that razor blade
@@thisaccountisntreal107 You can safely cut toward your hand if the thing being cut is soft enough (i.e., the cutting force is low enough) that there is little risk of explosive cut-through.
I’m a big fan of Technology Connections so even seeing this video 8 months after you made it, I still appreciate that you picked up on what he talked about and ran with it. Thank you!
Now that we know how this works, it wouldn't be too hard to rewrite the EEPROM to basically make a reversal device that would take G-rated words and replace them with unsavory ones. Run your old tapes of Barney the dinosaur through that version and never sleep well again. I suppose if you did that and then twitch streamed it, you could make some good money.
Damn what a classy idea! 👊
Actually, we do not _quite_ know how this works. There's no explanation in the Z86129 datasheet of how one reads the captions display RAM through the serial port. There are serial port commands for writing new/replacement captions in, but it's not immediately apparent how the originals from the video source are read out.
Live YTP lol
@@JdeBP Sure, but to change the words, this is not required
Perfection
At a glance, I would say the 0x2 is telling it to look at the prior word, to sensor both. Which is why 'Balls' has a 0x2, to sensor, say, 'Hairy Balls' or whatever. However 'Tennis B' is explicitly whitelisted as an exemption. 0x01 probably does the same but for the word after, so 'Dick' would block 'Dick Head', which explains the exemption for 'Dick van'.
You would need to whitelist those anyway, because "tennis balls" would match the filtered word "balls," muting the audio and turning it into "tennis tail." Same with "jerk van."
01 only marks "dick" and "woody," which are also names. I wonder if there is a connection there. For instance, it might check if the word is capitalized, in which case it's probably a name. I can't see a connection for 02 words. I don't think it censors words that come before them. In your example, "hairy tail" is totally acceptable, and it wouldn't make sense for "Now you're pissing me off" to be replaced by "Now teeing me off," for instance.
@@EebstertheGreat "I've just teed myself. My pants are soaked in tee." "Dick Van Door-to-Door Dildo supplies ltd" would be another nice one to slip past. "Our lesbian orgy is due to start in 5 minutes and everyone forgot to bring toys!" "Time to call... the dick van dyke!"
@@EebstertheGreatWoody from toy story 1 got censored
woody back when this was made was a slang word for penis. See the Sega game - "Wild Woody". I am sure the swear jargon this was programmed to is dated in and of itself. @@DustyyBoi
Yes but the replacement word that this version assigns is "notion" , a different one than what people recall.@@DustyyBoi
The PIC microcontroller used only has 2K of program memory. Besides doing the word substitution, it also interfaces with the CC decoder IC, on screen display IC, and mutes the audio. All in 2K. That's some neat and tight coding.
Would love to see a dump of the PIC code that's analyzed. I imagine that certain things like the plural forms of many of the words can be accounted for in the code rather than have to have separate entries in the ROM.
@@somejoe7777 You're in luck! Ben Eater just dumped the EEPROM contents in his video 'Hacking a weird TV censoring device'.
@@JohnJones-oy3md um....
@@mrb5217 "He's standing right behind me, isn't he?"
If you think that's tight coding, it might only be because modern code is so bloated. I'm willing to bet the Arduino code featured in this video compiled to over 2K, but could be hand written in AVR assembly in under 200 bytes... programmers these days take GUIs and smart compilers for granted!
The video is so good, that I've watched it last year, forgot about it, and watched it now again. Totally worth it!
loved how you explained it thoroughly and easily. It's refreshing to see someone trying to honestly educate being informative without being pretentious or arrogant. Good video man helped me think of a couple of projects for my arduino, thanks.
@David Tate Sr you would need a separate drive just to work with the word doc of blacklisted words.
Bro if you like your arduino use raspberry pi
I love that your videos go in detail and explain everything that you're doing. There are a lot of videos that would just say "I did some testing and coding and here are the results". I learned a lot from this video!
The reverse engineering we never knew we needed :)) great video! This has the potential of a series, no doubt about that
This video was amazing. All praise nerd sniping, I've been a TC subscriber for years. He really does answer the questions of history and modern tech in a wholesome humorous way. Don't forget to turn on CC he writes himself "ridiculously smooth jazz playing"
In your data dump, near the credits for The Guardian, it showed version 1.05, which is what was printed on the other chip. 👍
Now that you have that eeprom out of the board you can reprogram the word lists so that it will make any perfectly normal text as naughty as possible.
Then put back the chip and see how well it works and complain how useless the device is. :D
lol i'd like to try that next time I watch a Studio Ghibli film with my 5-year-old son, who can't quite read yet...
that is a whole nother level of nerd troll and I love it. imagine how shocked some grandma would be back in the early 90's if her guardian only made things worse
@@brandonjob2202 *late 90s
The original version of the TVGuardian was first released in 1998 and was most likely sold well into the early 00s.
In the early 1990s, the PIC microcontroller line had only just released (in 1993 to be exact)
Most of the datasheets for the PIC16C622A microcontroller in this specific unit have dates ranging from 1995 to 1998. The manufacture date on the PIC in this unit is between February 7 and 13 of 2000.
And the EEPROM, despite being covered with some sort of blue paint, I can make out the manufacture of the EEPROM was between November 29 to December 5, 1999. So, this unit was definitely made in January or February 2000.
Don't judge me, I just like correcting people.
Bonus: my dad used to have this cable TV hacking device in the late 90s/early 00s generically called the "Quick Board" and used a very similar PIC microcontroller (the PIC16C56-RC/P), which has a manufacture date of August 14 - 20, 1995 (33rd week of 1995). If I still had some of the original cable equipment, I would have been able to test the circuit board based on a chip that's a few days older than Windows 95. Because I can't find anything on Google, I am going to assume that the Quick Board was in limited production (
Thinking for a second, It would be real easy to do a search and replace for words in the .srt file (the subtitle file)
@@casultaser I was just about to comment that the PIC came out in '93 so no way this box is from the 80's. Then you go and drop a full research paper.
It's so funny seeing someone as chill as ben talk casually as there's such violent profanity in the background 😂
Also hilarious that a device for censorship device leads to this casual display of profanity.
I am sad because it didn't contain my favorite words.
"violent profanity" for this stuff ... only Americans.
It is.. it's one of those thing you realize words are just data.. it's the intent that is offensive.
@@roseCatcher_ what are your fav words?😁😁
Dude started explaining how a transistor works and now we are on a complete master level of understanding data, never understood a thing, but loved your videos!!!
Mate you code at the speed of light.
You are one of those people who can ACTUALLY CODE and kill everybody else's self-esteem.
Good job
He probably already had an idea of how to write the code and recorded him writing it in. Or just experiences enough, because I had to sit and think what "data
Regardless. Still pretty amazing. My head exploded when he started moving the blocks of code around, making subroutines out of it and manipulating the bits and bytes at the speed of light. Yes, I know it was sped up in places. But still.
And if that wasn’t enough, he then had to shame all of us by just destroying that spreadsheet.
Massive geek-fu.
Sometimes I wonder if his videos are pre-recorded videos with a voice-over. Then for the 3829492th time, "oh its real time". I've been watching him for years and even knowing that everything is real-time, this question still comes up in my mind. It's so funny
This isn't his first time doing this. He's programmed his Arduino plenty of times.
@@conkerconk3 I dont think so - he explicitly left the part in where he got a compiler error because he coded in the wrong return for his read function, including the classic "oh... Wtf" noise he made. He was doing it in real time, my man's a wizard
As an owner of the TV Guardian, and a tech guy, this was a delightful deep dive. I will be rewatching this video several times. Thank you.👍🏾👍🏾👍🏾
why do you own this? are you a snowflake?
What this device do? It replaces words in running string in tv signal?
For what it was used?
@@phoneaccount6907 It mutes the sound when profanity is used, and places a closed caption replacement statement on the screen without the profanity.
@@GwonkReefkeeping It might be possible to generate real time audio using the same voices now.
poo bum
bet your TV Guardian did not get that one.
💌
My parents had this when I was growing up. It was incredibly stupid to anyone who enjoys cinema or is unoffended by some bad words, and basically the best invention ever for the over protective parent.
I’m studying engineering and we just learned about interfacing and communicating with PIC microcontrollers, and it was so cool to see you doing so much of the stuff we learned about. I must have written a program very similar to yours about 100 times this semester! 😂
I found this absolutely fascinating!
Hey, someone has a birthday coming up.
for pete's sake!
Yes, but only in Strict Mode.
... You were shadowbanned man!
@@markgreco1962 Bruh, I read this in a voice and tone that made me DIE laughing 🤣🤣🤦...
I love the range of what Technology Connections considers "tech." From juke box mechanical song selection memory to kerosene hurricane lanterns to the product mentioned on this video. A nice reminder that some things in their day were "cutting edge."
One of my favorite technologies he covered was good old reflectors.
I am so envious of how he can just type out a search line of code without any pause just like a little machine gun.
if he filmed all the hundreds, if not thousands, of times it took to get there, we'd have a pretty long video. You get to enjoy the result of a lot of practice and hard work. Important to remember.
@@hglbrg I don't think so m8 this guy knows what he's doing.
@@abritabroadinthephilippines I think he was referring to the idea that probably he already has done this MANY times for work/hobby already, so he is Experienced and we get to see the result of that experience, not talking about the video being multiple edits.
It helps that he’s an android, he it only takes a tiny fraction of a second for his positronic brain to retrieve the relevant information
@@ivansciacca7810 ok my bad.
For those of you not familiar with any of the integrated circuits that have HC on them, those are CMOS chips and are very easily fried if they are touched. Always wear a grounding strap coonected to metal when you are working with these or any other CMOS technology. The TTL technology is a little more resistant to the electrostatic discharges but can still be taken out as well under the wrong conditions.
Really cool videos and got knows how much youtube I watch. Someone who can use a soldering iron and end up with an excel spreadsheet, doing Arduino in-between is an absolute renaissance man.
Goat got
Oh really? I heard the renaissance men are coming to town actually. Newspaper said they're coming soon. Really soon.
This is the coolest thing I’ve seen in awhile! As a student working with electronics it’s super neat to see the reverse engineering, and the fact that things we learn are actually used in the real world haha
Can confirm I am now using all of those words in day-to-day conversations.
That was actually fun and interesting to follow along. I'm not technically educated on bit/bits and even I got the majority of what you were talking about.
Thanks.
a bit is a value of 0 or 1. a byte is eight bits.
I used to think I understand technology, now I'm not sure
Not sure how I ran across your video, but it was really awesome to see how you did that and the logic behind it very cool video..
I absolutely LOVE this. I haven't seen anyone do this sort of this since the old Amiga days when people were making stuff to sell at shows. I am very happy that you did this. You brought back some memories of friends I had in the 1980s and the fun every day brought to inquisitive minds.
You made my day.
So, do you have any plans to modify the word list and make a follow-up video? I think it would be funny to have a TV guardian which replaces common words with profanity
market it as the tv defiler or something :P
I support this! I mean what is a simple ground wire between pins right?
This would be a perfect conclusion to the story. Here it might be a way into deciphering the exact replacement scheme, or if Technology Connections wants to colab it also fits the discussion of wider social impact
And then use a text to speech software to dub over the video. Then you can automate the entire process and have a device that automatically generates youtube videos for you.
The uploading to youtube can also be automated. But of course you'll get a ton of copyright strikes and be demonetized for containing swear words.
It still will be fun tho
Hahahaha thats the best option.
the unidentified bits could be a way to produce a "grammar accurate output" by combining words, adding a, that etc to the replacement. I lost it when you got that 1st 100 bytes :D
This is the first one of your videos I have watched. Your absolute step by step is so entertaining to watch. Thank you for being so thorough!
As someone who doesnt find enough motivation to learn programming i really appreciate the pseudo Code explanation to make it understandable for everyone. Really enjoyed that Video!
Yeah, this makes me wish I got into programming as a teen... This man can FLY through the commands!
@@volvo09 I have a 35 year hole between BASIC/FORTRAN and C (arduino simplified) I'm working to fill. I feel your pain.
holy cow this is incredibly sophisticated for the 80s
okay, maybe not the software and the library itself, but the fact that you got closed captions on your tv as a default and it put the two together live in front of you, making all of this even possible in the first place...i grew up in a non-english speaking country so defo had none of this going on even in the early '00s which is when i quit watching tv for good.
i'm impressed and now once again wished i was born earlier, eventhough i know it's better to be born later for many more important reasons.
Old fashioned TV is almost magical to me. The NTSC protocol, live editing of video/audio with very simple chips, all of it.
@@phillyphakename1255 it really is. fun fact: early pro gamers continued using giant crt monitors instead of early lcd bc of the noticable delay the liquid crystals used to have. if you move your mouse rapidly left and right, you'll notice how the pointer on screen lags behind the mouse in your hand. crt monitors never had this problem bc they were working with the literal speed of light. well, unless your computer was just too slow to calculate the mouse movements, that is. and let's be real, everyone had all kinds of malware and bloatware everywhere. god windows 2000 sucked. and i've used the constantly crashing windows 95, too. 98 reigned supreme till xp, the real g that never let me down unlike literally every other windows version out there.
@@nevermindmeijustinjectedaw9988 I had a competitive gamer friend like that
@@nevermindmeijustinjectedaw9988
CRT displays are still preferred for Super Smash Bros tournaments.
@@spht9ng why? the time of sub-4ms lag on non-crt displays has long come
Please do more things like this. I love it. I also love seeing how products were programmed.
My mind is blown away, not by the product, but by the work you did. Amazing stuff. Looks like a lot of people called Richard will be known as Jerk under this too.
Y'know, I kind of like the idea of reversing the operation of the device...
Just for Gits n Shiggles of course.
+1... TV evil parrot
This video showed up in my “recommended” and I was floored with how much information was coming at me. The knowledge, skill, and speed was jarring (in a good way). I actually started laughing because I was so impressed. I’m definitely going to be watching more.
I wish I could like this video twice.
This is such a nice, condensed collection of knowledge and skills combined with a practical demonstration of their use.
I feel like you could develop a whole curriculum just based on this video.
Not a Masterclass, but an inspiration for designing a class or, more likely, set of classes that result in the ability to perform the tasks in this video.
(This is all from the perspective of someone who has spent decades watching, listening, and reading about other people doing interesting things, but never learning them myself. I feel worried that anyone with expertise is rolling their eyes at this effusive praise, but this video just clicked for me in a way that made me feel like there is a path that I can still follow to get there too. Sorry for dumping my insecurities out. Unfortunate habit of mine. But the venting helps. Writing long, rambly, meandering TH-cam comments is mostly harmless and feels like free therapy sometimes.)
I am finishing off a computer engineering degree and the concepts in here were covered this year, such as what a PIC is, an SPI, a breadboard, reading input/output/clock, timing diagrams, reading datasheets, seeing the data in a table of hex and ascii in the format he showed, microcontrollers, shifting, binary addresses, etc. Seeing it applied so practically is insane to me and I wish this was used as a consistent example throughout our studies to make it more meaningful than the confusing projects we got.
What's wild is how much he got done using just a damn spreadsheet. I switched careers from information technology and went back to college for a science degree. I barely touched Excel working in IT, but doing science things, we use it constantly. I guess you bring it full circle when you start doing computer science!
true, I was fiddling with arduino for some time based on theoretical practices&examples, this thing totally blew my mind
When I first watched this video, I barely knew what you was typing. But know, I'm happy I can recognise atleast sone of it even though I don't know a single programming language
I thought I was just going to see something interesting today but I think you've taught me how to read data off of a microcontroller and the sheer godlike power that Excel has over data conversion.
Coming from being a technology connections fan. This video is absolutely mind blowing and yet so confusing. It's just so fascinating hearing you narrate the code you write and it's incredible it all works. You have earned a fan and I'm so impressed by the whole process. Have a awesome day sir and thank you
This video was randomly recommended to me by TH-cam's algorithm, and I'm beyond delighted that it did - this was easily my favourite video for a very long time. What a fantastic process to witness.
That was some satisfying keyboard sounds. Very interesting video well beyond my capabilities. Thank you!
Thanks for the step-by-step walkthrough of how you approached this (compilation errors included!) instead of just jumping to the end. And for not using the chip programmer! Really top notch.
I guess you got nerdsniped twice, Foone did a similar teardown of it on twitter, on the 9th. It's absolutely awesome to see all three of you discuss the same topic. Like a crossover episode 😄
can you link that here? I don't use twitter.
Aah! I see I was scooped! Very cool thread though. Seems like we're both confused about the same parts of the ROM, but Foone is apparently working on injecting closed captioning into the thing to tease out its behavior. Very cool! Can't wait to see the result.
@@BenEater aaaaaaand they just retweeted your video 😆
Live crossover in the making
@darkshoxx FYI nerd sniping refers to being laid low by a problem so fascinating (read: nerdy) that you drop everything to solve it. It doesn't mean that someone solved it before you. Search XKCD Nerd Sniping for the context :)
It would be interesting to put the eeprom back and capture how the microchip searches for words. Since they are ordered I'd expect a binary search, but maybe inside the pic ROM there's data that makes it even faster (eg: storing the positions where every character starts, so the binary search requires less readings).
I'm sure this is just an iterated list down the line until it gets a hit, or falls out of the bottom and just gets passed on. CC isn't high bandwidth, I mean the scheme is done in just a few video lines, and tracking spoken paces, this thing is *still* spending most of its time in a sleep. Just scans that address range upon receiving each word, comparing them whole. That's how I'd do it, not much code, and raw speed isn't necessary. One hint this may be the case is the "dick van" case... It has "dick" stored twice there for one, but also would need another bit to do things like exceptions/qualifiers... Either cutting the sub list further or sacrificing another function.
Watching it in situ would prove it out of course, but while I'm not privy to the finer details of CC, I'm sure if they used fancier tricks, they'd also be capitalizing on the protocol of the original CC... So that would be a place to look for other clues as to their thought process.
They would need to do it in some kind of order, otherwise if you search for "FUCK" before "THE FUCK" you could end up replacing "What the fuck is this?" with "What the wow is this" which makes no grammatical sense. Conversely if you could replace "Why don't you just fuck off?" with "Why don't you just wow off?" rather than "Why don't you just go away?"
With the limited space in the PIC I would guess that that is a simple block table that provides an index into the 256 byte blocks found in the EPROM. So words starting A-C would index to block 0 and so on. As they seem to be on rev 5 of the firmware it would explain why one of the word blocks on the EPROM is full - they have added words and features without completely re-indexing the blocks.
@@Hyxtryx ... it searches the whole table and stores a pointer to the last match ... therefore (for example) Dick van Dyke is found last and overwrites the Dick pointer and skips over Dyke too.
Reading this again it could be changed into some lines of description in a porno film! 😳
@Isaac Alonso. The PIC microcontroller does not have enough program memory to have a lookup address for each bad word. I think they broke up the words into groups within 256 byte blocks (why we see a lot of NULLs or 00's at the end of each block), then took the first two letters of each word to start a rough search in a specific block in the EEPROM library and then complete the search after finding a 2 character match. This way 'ASS' and, say, 'SHIT' could each be looked up quite quickly, 'AS' starts the search in the first 256 byte bank, and 'SH' starts the search in its appropriate bank (several blocks deeper in EEPROM), thereby skipping the blocks it knows it won't find it.
My ZX-81 computer did something similar for variables, I can call a variable pretty much anything that I wanted, but only the first two characters are used to look up the variable: 'APPLE' , and 'APE' would not be allowed in that case. The PIC is using the same first two character to select a bank and look for matches based on the flag bytes that follow the dictionary words.
I’ve never even heard of you before, this randomly appeared on my recommended - absolutely loved it!
As to the comparator, it wouldn't surprise me if it's taking the output of the re-write chip and only replacing it in the video blanking window if one of the switches on the back is at the position that requests it. The idea being that if you are watching TV with Little Joe, and Grandpa Joe, if Little Joe can't read, and Grandpa Joe can't hear, he can at least read the original dialog, but little Joe doesn't get either.
The only viable use for this I can think of is for waiting rooms where there is a TV to distract waiting people, but its on mute to prevent the TV from interfereing with the secretary's work. The chip would keep things mostly G-rated.
Not gonna lie.... not once in my life, since I've been doodling with electronics, have I ever opened up a device and been able to identify every IC that was attached to the PCB! Not only that, but even if I could read the imprints and/or figure out what it is, only about 20% of the time am I able to find a datasheet for it. Must be nice!
Lots of times a Google search of a chip will only lead to one link that directs you to a Chinese website that describes a gadget of some sort that contains the same chip, but those rarely tell you what it is/what it does either!
"Not going to lie" because I lie a lot to most people. For you in this case I will give you some truth.
Yeah there are lots of weird Chinese clone chips around, plenty of datasheets that need google translate, and a load that just don't seem to have any available data. It's a pain for reverse engineering things but you can often work out what these things are by looking at what it seems to be doing.
Absolutely amazing!
Thank you. your understanding of patterns is something to be envious of.
This is so cool!!! I loved seeing what the signals were doing in the scope! Nice job deciphering that data too!
Somebody probably already mentioned this, but "foone" on Twitter (and others) did a full disassembly of the ROM from the original TV Guardian.
I believe foone also bought one of the newer devices only two weeks ago, and dumped the ROM from that as well.
Their twitter threads always make for an interesting read. Lots of nerdy tech details.
"59 seconds ago" wow, I'm here early
their* twitter threads
Disassembly? Can't see it. I can see the same exact analysis as here from the dictionary dump.
@@SianaGearz I could have *sworn* foone said they'd done a full disassem, or somebody else did.
You might have to look at the recent tweets to find it.
It's possible I was mistaken, and they only extracted the dictionary so far.
Or maybe the disassem just isn't public atm?
It would be great to see a follow up on how it reads the closed caption data and sends the mute signal / injects the cleaned up strings.
This was really cool to see though! You're awesome!
Just reprogram the eeprom to sub in ghetto language
Technology Connections vids are amazing. Glad you made this complementary video about it. 2 excelent youtubers with excelent content!
This Is Splendid Explaining, I'm lucky to be on this side of youtube, You've earned yourself a sub
Weirdly I learned more about spreadsheets in this video than in my entire life (of avoiding them) up till now! I tend to just write software to perform the calculations on CSVs :) In this case I probably would have performed the data processing in code and added it to serial output but it was interesting to see how the spreadsheet does it!
OMG I love using Excel in ways it wasn't designed for 🤓
@@youdontknowme5969 wdym not designed for? that's what secretaries used to be paid for, nowadays a company will instead pay another company to make a web service for something the secretary used to do in excel..(edit: in excel or lotus or whatever.. you can also have it fetch and dump to a database and stuff)
@@lasskinn474 Fun fact, at a previous job where I was mainly an admin over a UNIX/Oracle DB farm I converted some hellish Excel spreadsheets that had grown over years in the accounts team, into a complete mess of tables and single-file databases, to a web interface pulling from Oracle. The spreadsheet would take literally 10 minutes to update, and the DB would do it almost instantly. It was even faster when I added a bunch of MySQL slave servers to Oracle (using triggers in the Oracle DB to push updates, inserts and deletes to MySQL and optimised them for the type of queries they received. I don't know anything about spreadsheets, but clearly they have limits to what's sensible with them.
@@Stabby666 Let me tell you, I know limits of spreadsheets. The company I work for has a lot of their design docs in Excel with photos of PCBs and charts of connections instead of schematics. Drives me up the freaking wall!!
ok we're all glad you're a little less dumber today
Love the stuff Ben!
"They make sure 'Dick Van Dyke' doesn't turn into 'Jerk Van.... Gay'" - 20:01
Of all of the programming tutorials I have seen online, I have never seen someone who can walk through code so fast while also making it completely understandable for newbies. I wish I had a teacher like you for my intro to programming classes.
Amazing explanation. Was very intimidated by hardware coming from a CS background, but you broke everything down nicely!
Analyzing the rom really shows both some clever ways they were pulling this off as well as how much they had to work around the limitations of their hardware. Great vid!
"Pulling this off". Fnarr! Fnarr!
Very good job on this one Ben. After high school, back in 1974 I went to DeVry tech for basic electronics. This was before MCU`s and MPU`s. So I really did not get a deep understanding of digital stuff. But I managed to work in electronics the rest of my life. Mostly as a test technician at the factory level in circuit board assembly plants. Most of these places make circuit boards for many different customers, so I do get to see and test a wide variety of circuit boards. You are the kind of brain I need when I have boards that fail test and i`m just lost. LOL.
The most unlikely crossover.
But also the best crossover.
Thanks to Arduinos I have slowly been teaching myself basic electrical engineering. But seeing stuff like this, I feel I got a lot to improve on (then again that was a good datasheet they offered, a lot easier to read then usually what I try to learn off)
I just love your video content and the methodical way you present them. I can imagine they’re quite time consuming to make, but would love to see more. Thanks.
Why 4.99,
That's a pricing strategy, used malls to make it seem not $5... So it feels cheaper...
What's your reasoning.
@cbhiii
@@rajveersingh2056 You're right. It's just a cliche. Marketers have "normalized" pricing to that some people don't even think of even-dollar prices anymore. Just look at gasoline: 2.919 so it doesn't look like 2.92.
Who cares? @@rajveersingh2056
This was amazing to watch. I do only a little programming in C every now and then. And watching how you do bit manipulation with ease is very satisfying.
16:36 - some good r/nocontext material here
oh hi Jeff 👋
can someone explain?
I was thinking that you three definitely need to collaborate on something and here you in the comments! Definitely a trio to look out for!
Hi Jeff
I have absolutely NO idea what is happening in this video but I LOVE it!!
Thanks for this. I've been putting viewing of this video off for a couple weeks as didn't want to distract myself while working on other things. Finally sat down and watched. Thoroughly enjoyed it! Seeing the process one would go through in a nutshell like this is highly valuable to educating newbies from school age and up. Great stuff!
This shows exactly why I enjoy watching your content. Despite knowing little about this stuff, I was able to follow along very easily. Thank you!
Agreed
Terrific video, thank you for the clear progression from chip part numbers to dumping and TAILysis! It was very instructive!
"TAILysis" Nice!
@@electronicengineer ah yes, the clbuttic Scunthorpe problem
@@Xnoob545 I used to play an online game in which one of the classes was "assassin" but people couldn't tell you they were playing that class because they got censored. Twice.
Love the way you explain and the programming . Thanks Ben Eater !
Woah, the spreadsheet formulas are super interesting. Need to look into those. Thank you for an awesome video, as always.
19:56 the comment about the company going out of their way not to censor Dick van Dyke had me cracking up...
This is exactly what I wanted to see after the Technology Connections video! I knew that there had to be someone on TH-cam who could just pull the chip and dump its contents and document exactly what the thing censors and how it goes about it!
This video has been one of the best I’ve seen for simply showing how chips work. A+ effort thank you!
This was fascinating. Also very good to see a master at his craft, when you were coding. Thanks.
I've been watching through your old videos, particularly the 6502 series. It brings me so much joy to see that you're still making videos. Keep it up, amazing work!
This was a godsend.
I personally hold an AAS in electrical engineering technology from my local community college, so I could follow along with the material presented (part sheets, desoldering, the Arduino code, and so on). I thought it was great that the material was presented in such a careful, formal manner that it was on par with (if not exceedingly with) the higher education classes for my Associate's degree. And after the initial presentation, which was on par with college education, the end result was just a list of bad words. I don't know if it was genuine poetic irony or just my own personal immaturity, but that contrast was the best thing that I've ever seen in an electronics video. I loved it.
This is one of the best rom hacking videos EVER. Its also telling that some of these words would be controversial as censored words today. For example: “gay” is one of the words listed.
So happy to have come across your channel; Way too many channels are very light on the technical stuff.... but as someone very familiar with the technical end due to years in R&D; This is really refreshing and has been very enjoyable to find and watch. Keep up the great work!
You, as well as several other technology youtubers, make looking at a bit stream look really simple. I love it and feel like I learn something with each video.