Okay That's it. We're here Welcome to progressive discussions It is what is the high for that's for today 31 31 and when the low is in the 20s Fahrenheit, right? No tonight. It's gonna be eight eight degrees Fahrenheit Well, we sure need our seven seven lucky bells for the show But this week's progressive discussions Everything you hear politically is part of our series Crapitalism in a conch shell. There's the conch Feel that conch energy Thing Neptune is on hiatus I'm getting his voicemail Don't bother him when he's on vacation. Hey, he's been taken not as many vacations as Donald Trump But he's been taken okay Now I don't want to jump ahead with holidays the next holiday would be st. Patrick's Day and Greetings to General manager or perhaps even the owner patty of the Xavier gifts dot com for the finest in Irish imports I Sent her an email asking her when the When will you be getting a restock of the longer? Blackthorn chilele walking sticks because I'm a tall guy and the ones that they have are for short to average height man or women Women don't usually Have them So you figure well, I'm six foot one. So I need the second or the Longest one which will be which is I believe 37 inches to 39 inches. Those are the two longest ones Because I have a tricky lower back, you know, I have an old lower back lumbar injury That goes away, but sneaks up on me and comes back occasionally You know just like you know some days your joints don't hurt and some days they hurt a lot Anyway Mr Stephen of New Jersey did that one of the gentlemen that had issues with welfare Food stamps, Medicaid, etc. etc social security disability, of course he had many of his issues Fixed thanks to Acquiring the services of the social security attorney Okay, so he was happy to give him a plug bender and bender all right bender and bender He all right bender and bender helps Stephen out. He's very happy paying the fee It was supposed to be 25% but social security refuses to give a lawyer any more than $6,000 You know what you know, it's weird. How do these laws come from you know what? But this is this is my problem You got You got lawyers That Specialized in different things just like you have doctors as specialized in different things and then you have supposed musically Progressive Democrats I'm being sarcastic in Washington That they know what's going on They know what's going on as opposed to and they're supposed to protect you Right now do they when do they get ferocious like James B. Medina?  Oh, no, he he don't pull no punches. He's like George Carlin with profanity God rest his soul. I was watching some some really good George Carlin videos two of them on political correctness Funny as hell, but also true God rest his soul George Carlin and Frank Zappa ahead of their time They they knew what was going on You know political correct correctness is a great stand-up comedy routine because you know It's all based on the fact that you are really afraid of offending someone and therefore you walk on eggshells To make a long story short. Anyway, getting back to Steven All right, he's happy and all of a sudden he finds out his food stamps went from a hundred ninety four Dollars a month down to a microscopic Amoeba Paramecium E. Coli whatever you want to call it sixteen dollars a month.  You tell me and this is what kills me They think that people that live on a fixed income that are getting let's say Seven hundred and sixty dollars a month or a thousand dollars a month. Oh, they think you're living high on a hog Oh, yeah, they want to stop you from buying steaks and no, but they think you could they think you can not only pay for your Cost of living cost of living But they think you can go and buy your groceries with that money You can't even pay rent. You can't even pay rate. You need rent subsidy. You need section eight with that Hold on.  I knew this was gonna happen. Come on Any any other devils? Oh, no, no What do you call the cat needs to call the cats the devil's familiars? Yes. All right.   Go buy yourself something It's it's a candy bar Yeah, two dollars.  Oh, he's dead now.   Oh, he's like he must be like like like Like a like a member of the Trump family.  He's got a poor anyway Yeah, so It's it's ludicrous That people on a fixed income are expected to buy groceries with that money plus utility pay for utilities and So on and so forth and another thing Stephen went to the Walmart pharmacy and the pharmacist says you better call a Medicaid because you know even though you You most likely when you reapply you'll still have something He says the product he says what what's going on one day. I run it through and it pays for your prescriptions It accepts it Including your Horizon affordable care act horizon of New Jersey. It still has a little more time left on all right One day it goes through it's accepted the next day. It's rejected then it accepts it again. Then it's rejected He says Medicaid called the pharmacist and says you must be doing something wrong You don't know how to put it through he says I've been a pharmacist for a long time I know how to run the through The state anything that has to do with the state and yes, the federal government to you all I'm not saying I Don't think a person with that kind of a job Can have that kind of a job and be that stupid. I think it's deliberate I think you are the they are Reverend Bill.  I want to apply Will not because they want don't want to go through this shit No, the words state like like Billy Billy Morrill says they play the numbers game Just social security underhanded with the doing social security found out about that a long time ago and put it into policy You know like if you get a part like if you get a part-time job on the ticket to work and self-sufficiency Program, which reminds me of once you get a job. You're no longer disabled. They understand the law That's the part. They don't tell you in the letter Of course not they you know what they tell you in the letter the law You know what it says in the letter You don't have to worry about losing your your fixed income you check for the maybe for the time you're you know Learning or whatever that's what you get the job That's like that's like the the god the Gotham steel Titanium and ceramic skillet that I bought from the infomercial After the 90 I didn't realize it was a 90 day warranty on a 60 or 90 day warranty Oh, it's guaranteed not to scratch your chip within the warranty amount of time Well, guess what it eventually chipped and scratched Went into the garbage. Ooh, and now I have been using my old-fashioned trusty cast iron rectangular griddle and I Have no idea why I never used it Before for app for everything because it's fantastic. I love it. Oh, I know why I didn't use it for everything Because my sister kept on buying non-stick T-Fall type of skillets, you know women usually don't like cast iron because you know you got to lift it You know, it's got weight to it.  It fits over two jets. I love it It it the blacker it gets the better it cooks It's incredible. It's it outperforms anything else and you could only you can leave it to other Relatives when you croak. I mean, it's good if you take care of it Only the last it should last for generations Maybe indefinitely if the jabroni you leave it to takes care of it.  You don't need welfare You don't need social services go to your relatives in your local church and ask them for help Can't it doesn't work It won't work Plain and simple it will not work That kind of funding is just not there and They want to leave it up to the states because they they are dead They are obsessed with shrinking government down to nothing And let's accept the part of government that helps people Yeah, the part you see you mr. Trump already raised the military 54 billion dollars because we're not strong enough of course not Well the part that helps people is the part Of government they have a problem The part that helps corporations and the military industrial complex that they're all for that You know, I mean that's or giving themselves a raise every single year Beautiful.  You in other words you you can be way beyond the middle-class Main street business owner or whatever, you know So and then you can be part of the oligarchy that you could be part of the top one percent and you can be even more wicked than the corporate ceo that happens to be running You know a famous company a blue chip company. So the different degrees of evil. There are different degrees of uh Of you know greed and whatever and uh That's that it's like the it's like the old monarch or it's like the old monarchies when you had feudalism and everything You know, it's the same mentality It's the same mentality mentality now now donald trump's wife Is it malaria trump malania malania made a ridiculous statement that says The poor They don't need the affordable care act. Just educate them on how to use natural Uh prevention uh with herbs and nutrition something of that nature. They still gotta buy that stuff But how is that going to assure that you're gonna get you're gonna get adequate health coverage when you need it It doesn't guarantee anything Absolutely not All right, I'm let's say. Oh, I I can afford. Yeah, that's right. You got to pay out of pocket for supplements Let's say I got let's say i'm a poor guy and I got supplements Let's let's say i'm lucky enough to buy it Let's say i'm taking the best vitamin c going right And then some somebody shakes my hand after they cough shakes my hand And I get sick from them. Yeah, what am I gonna do? All right, I let's I I I could take a chance And yeah, I could take 10 10 grams of vitamin c and try to blow the cold out or whatever I have What if I have something more severe more serious than just The common cold or or an influenza, okay What if somebody with the the bird flu or the uh one of those exotic flus from the influenza is from asia or something Or, you know, all right, or Ebola or whatever You still you got to go to the doctor you got you have to get medical attention What if somebody gets an eye infection they have to get medical attention broken bone She doesn't see the long she doesn't see The overall picture because it's not her problem You see that they they have theirs and they don't care if you have nothing And they know that they can dip into their money pot And pay for anything they need it. It's very easy when you have it Yes to to And that's the capitalist system system. Yes, sir.  I have the salute Scandinavia northern europe including iceland Which was a colony of the danmark, I believe the migraines.  No, I'm not You know, they'll yeah, well justice is served in scandinavia. Yeah, you know, uh, uh, Well, when when hillary clinton said during the debate to bernie sand is well, we're not sweden I was waiting for bernie to make a comeback which he didn't do Yes, hillary. I know we're definitely not sweden sweden cares about his people That would have been the perfect comeback. He didn't do it because he's got to be nice to his democratic colleagues See, this is the part of this is the part of ultra liberalism The other trouble is they got to be nice to their Republic and colleagues. That's even worse. Uh-huh This is the problem with politically correct. Ultra liberalism or neo.  Can't we be friends? Can't we? Why can't we be friends? Why can't we be friends? Why can't we be friends?  Where do we?  It doesn't matter. You got to make a decision. Boom the gavel comes down That's what this reminds me of too. It's like it's like my gavel But that's true. You've got to make a decision And the decision is kind of like old man Leonard Neemoy God rest his soul the needs of the many outweigh the needs of the few or the one however big problem is that Our government works uncompromised Why or it doesn't work at all?  Yeah, but Oh, I love seeing that the the party That has the most people that They rule And then to absolutely rule They need a coalition with some other parties And that's how it's not same thing here. In other words, if the republicans own the house And they own the senate You're not going to get anything done without their help. So ultimately Ultimately you could you could rumble and get into all the boxing matches you want The voting is the voting ultimately the votes Will take place and whoever's out voted That's it Did you know the next election now? Did you know that not only Not only the election year of november for uh november 2014, but the election year of november uh 2016 You know how many people did not vote at all in both in both A lot nobody learned their lesson from To that at november 2014 An enormous amount of you despicable Americans did not vote The last counting I heard Was that trump got 60 millions votes and Hillary Not 62.8. Well, I saw the pie chart. Oh, you missed the percentage Of people that didn't either that had apathy again voter apathy. So that combined is 163.8 million people But there are hell of a lot more people registered than that So they didn't vote they didn't bother to vote but they sure looked to go on social media and show everyone how brilliant they are with their comments in fact they had some Um, they interviewed some people that were at the trump rallies against him And occasionally they would ask one that well, did you vote for Anybody they said no, I didn't vote If you don't listen an old jewish man told me James James if you don't vote if you if you don't vote you have no right to complain I mean not me per se. He was usually he was talking to another person You have no right to complain and he was absolutely right. Absolutely. That's right now. Yeah speaking to slum lord. I want to thank uh Mr. Um Paul anthony amantia accomplished, uh guitarist and tenants rights activists who has organizations web pages about Uh, tenant the tenant versus landlord issues where where you have a scumbag a piece of shit Uh, uh slum lord mentality landlord and you have issues. Yes. Yes. There are laws There are laws that protect tenants, but the big but is Mr. Paul um, anthony Amantia who did a show with me the last night live on youtube live stream, too He um like he explained He's a yankee boy living in the jacksonville southern cracker northern florida jacksonville florida area where the The wealthy landlord Has a lot of connections knows everybody and nobody did a damn thing to help Paul anthony amantia and his and his girlfriend had to live In an apartment that was extremely unsafe for any tenant to live in Whether it be the electrical wiring whether it be leaky leaky whatever leaky holes in a wall leaky roof cockroaches It was it was it had violations after violation after after violations It so and guess what the the the the legal system The judicial system in jacksonville florida did nothing because the man Is well connected and very well known And you know And it's and they called him a yankee boy Yankee boy. So oh, so I kind of figured it's you know, it's it's uh northern florida Well, they're probably wpix channel 11 here on tv help me howard help me howard and Help me monica. Oh, he came up. He's from bra. He's from the bronx. Paul. He says they wouldn't that would never fly in new york city you kidding me that would they wouldn't even they Action would have would have been taken so quickly Justice would have would have been But the trouble is you have to get people like that to go on your side to help you sometimes When you shouldn't have to do that and remember arnold ds. He's another good Hey, help me howard will be banging on your door. Say hey, why haven't you done this that and the other thing? How come you're not answering the door?  Are you kidding me? That uh issues with slum lords. I mean there are slum lords in new york city Don't get me wrong. You know donald trump's father was one of them.  He sounds like uh, like maybe uh, uh, mitch mcconnell or paul ryan or any of those southern Any of those southern conservatives who like to stuff their pocket That but don't want to help anybody, uh, but their own kind and of course in the long run None of that none of those people understand That when you help the down person downtrodden. Yeah the down person you are helping the economy Well, there's more spending on there you go And with more spending there's more investment in people Creating businesses. Well, yeah, you have to get a little bitter that scratch man scratch. Yeah You have to think long you have to have the ability to think long term Exactly and you have to have the well first you have to have the the ability to think period Then you think you look at the overall picture Then you think long term which conservatives don't do but I just wanted to say thank you and greetings to uh Tennis rights activist paul anthony manthia and and and greetings to his girlfriend too to both these and uh, thank you for the show um Last night and uh, it's yes. It is on youtube and yes Uh names were definitely mentioned And attorneys are are starting to contact Paul anthony manthia But the you know, you Is it let me ask you a question is the term kangaroo core in the dictionary It should be now a kangaroo core is is is a is an old wild west Term for a rig system, right? Yeah The red dictionary right there. I didn't bring my reading glasses. Oh, I'll have to I'll have to go to the When I'm finished reading you can drop it off there and I have to go to the Miriam webster Online dictionary.  Is that his name? Miriam, it's his first name is Miriam. Yeah, what's wrong with his parents name it a Miriam. Well, what about uh, Oh, johnny cash Name and his son sue How do you do? He really did that that's his song one of his songs, but he's really sue No, he ain't his real kid. It's his song. Hey, you have a you have a real man's name William William, I have a man's name james. Yeah, james james johnny cash said he named him that because That will teach him that will teach him To fight for his what he wants and et cetera and life Yeah, but the poor kid It's kind of cruel, you know, I mean, I mean, uh, what about uh, uh, a smart man like frank zappa His his his daughter was moon unit moon unit and and and his son was dweezel zappa. Well anybody with the name of dweezel come on You're not doing him any favors All right, you know what let us seek our teeth into these readings because we were very long winded Why can't we be friends? Why can't we be friends? Let me see what I got here Uh, let's see if I have enough it is called it in a witch's titty outside. Yes, it is. Okay Two members of congress with the power Under a 1924 law to demand copies Of president donald trump's tax returns from the treasury department Say they won't do that Because it would abuse their authority and endanger citizen privacy In other words, they cut him a break didn't they It said they had the power to do it the rejection came in a joint letter from senator oren hatch Republican of utah. Was he a chicken farmer at one time oren hatch hatch Hold up a second These are the levity bells chairman of the senate finance committee and representative kevin brady of texas chairman of the house ways and means committee the two republicans scum Were responsible Oh responding to a request Sent Wednesday by democratic representative bill pascral of new jersey. Hey bill pascral these are ways are Is he a senator or congressman congress congressman of our district bill pascral Senators dab debbie stabinow of michigan and ron wyden of oregon stabinow and other members of the finance committee yikes The proposed use of the committee's statutory authority Sets forth a dangerous precedent that could allow congress to Improperly access the tax returns of any american Regardless of whether or not the individual authorized their disclosures hatch and brady wrote in the letter Trump is the least private citizen in our country pascral said thursday And hatch and brady are dead wrong Pascral a member of the ways and means committee said he approached brady In early february about obtaining ty trump's tax returns He said he wanted to find out if the president's failure To completely divest himself from his business empire Leaves him with conflicts of interest Including potential violations of the clause in the constitution That prohibits federal officials from receiving gifts or other emoluments Or things of value from foreign governments. Oh, you mean I'm getting getting your palms greased. That's correct. The bribe taking the bribe brady rejected pascral's request privately Then publicly in the committee hearing, you know, I never heard bill pascral give a speech In in washington. I've met him. I've chatted with him in a pub In the sport pub 46 and clipped in new jersey, but I've never seen him in action On monday pascral used a procedure known as A privileged resolution To try to force the issue on the house floor And was voted down in a largely party-line vote Two republicans have simply voted present Rather than know On that resolution or joining pascral In a letter that he said he will send thursday to hatch It has been signed by 162 house members 1924 law Section 6103 Of the internal revenue code Allows the chairman of the finance committee ways and means committee And joint committee on taxation Made up of members of finance and ways and means to request a financial tax information That can be reviewed by the committees in private The committees then could vote to make the information available to the full congress And making it public These authorities have typically only been used To investigate specific allegations Of misconduct by federal officials And as necessary for the committees to carry out their legislative responsibilities And conduct oversight of the executive branch To date We have not seen or received Any specific allegations Of tax related misconduct By federal officials or abuses Of taxpayer rights that would lead us to invoke Ascral Responding Respectfully The chairman in this letter Are dead wrong Using this authority in this manner Is not unprecedented We did it in 1974 With president nixon's tax returns They further say There have been no allegations Of tax misconduct Against trump But we know The irs find trump And the trump foundation For violating Self-dealing rules So the republicans protected, okay? Yeah, kangaroo court Kangaroo court Crony-crapitalism Rig system continues Because they got the votes They have the votes And the democrats can jump up and down screaming yell all they want But unless you have the votes That's what I mean I just want to remind everyone that Not next year, but I think the year after Many, many Congressional and senatorial seats Are supposedly up for reelection Now, what does that mean? Does that mean that That Does that mean that That all of the inbred Redneck Right wing Evangelical pieces of shit will somehow See the light and grow brain cells and And and and not and elect the right people Even though they're living in squalor Squalor Which they are living in squalor Like what is that wolf county, kentucky and enjoying the obama care But then the I believe it's the x-cover The x-cover is Saying that obama care does not work you never work in not kentucky. Oh really? Yeah, what does working kentucky death? Obama care Right now. Well, you still you Those of you that are watching the show will see the funny cartoon of uh, donald trump um In a pain of visit to someone in a hospital And and and covering his face with a blanket saying don't worry.  You're covered. I got you. You know what I mean? You're covered. Yeah, you're covered. You're going to the morgue Yeah, you're gonna be tied a toe tag. Yeah. Yeah. All right. We're gonna break for lunch. We have uh how to defeat a conservative, um Bible verses you can hit the pause button read and learn Followed by promo and then we'll be back hard-hitting podcasts holistic health talk and progressive discussions I want to talk about the very foundation of our entire organization the newsletter That was founded by my co-host and mentor the reverend doctor william j eisman in 1977 and that newsletter is called censored Newsletter censored is truth and news fighting censorship and conservative propaganda We believe we are living in the end times and you need newsletter censored Newsletter censor provides the kind of truth that most people are afraid to hear. Can you handle it? newsletter censored is for the independent critical free thinker with an open mind besides the reading of censored newsletter censored also has The god project and how to defeat a conservative There is nothing in the mainstream media or the press like newsletter censored So simply go to www.newslettercensored.com And with your gift to support this work get your free annual subscription To the newsletter that started it all in 1977 newsletter censored you need newsletter censored. That's www.newslettercensored.com Greetings, this is james p. Madonna of mega life 21 hard-hitting podcasts holistic health talk and progressive discussions I want to talk about the very foundation of our entire organization the newsletter That was founded by my co-host and mentor the reverend doctor william j eisman in 1977 And that newsletter is called censored Newsletters censored is truth and news fighting censorship and conservative propaganda We believe we are living in the end times and you need newsletter censored newsletter censored Provides the kind of truth that most people are afraid to hear can you handle it? newsletter censored is for the Independent critical free thinker With an open mind Besides the reading of censored Newsletter censored also has The God project and how to defeat a conservative There is nothing in the mainstream media or the press like newsletter censored So simply go to www.newslettercensored.com And with your gift to support this work get your free annual subscription To the newsletter that started it all in 1977 newsletter censored you need newsletter censored. That's www.newslettercensored.com Okay, we're back As I was saying before we went to break to lunch Um, uh, something was about to piss me off and um, I just decided Not to say anything In case you're wondering why I did not finish my sense Somebody was staring down my co-host and mentor Uh, uh, tapping her fingers and there's one thing I it drives me crazy And women like to do that is When they want they want attention they want to get their way And they want it. They want you to count out to them. They will They will stare and tap their fingers And they do that.  The oldest the ulna the wrist the ulna Yeah Carpo, right. Oh, yeah the humerus would be the entire upper arm bone the humerus Funny bone. Yeah, I don't know why it's humerus Anyway, I don't want to dig this All right Let us return to the show. Are there any, uh Well, I know march 17th the st. Patrick's Day, but we still have a little time before that happens, right? So there's really nothing going on This coming week as up as far as holidays go, right? When is it the 12th or the 17th? I think it's March 7th. March 7th. He's up on the 12th. I don't know what it says Well, there's no national holidays coming up this week, you know red Hold on I swear to god you you say anything about me getting up during the show off my seat. I'm going to go ballistic Remember Reverend Bill's telling me to check it out Well I swear to christ you say anything.  Yeah, I gotta change You know what? I'm glad I'm glad I'm glad The subject came up.  And you know not every state Recognizes what do you know a couple states? I think arizona and they're gonna pull out Or half pull out. That's like, uh, what do you call that coitus interruptus? Pull out daylight saving time interrupted They believe it alone. So what if 5 a.m. In the winter it's it's pitch black out. Well, they got again. They got a coddle these american kids Well, that's what it was poor babies have to get up to school in the dark What about the kids in scant they live in the Arctic Circle in Scandinavia?  They're crossing everybody adults Kids that are in their their mid 20s adult people I don't mind if it's a senior citizen or or a disabled person But for god's sake able-bodied adult people need a crossing guard and I gotta stop my car That's probably the part that bothers I gotta stop my car A thousand times when some moron Should know perfectly well how to cross the street during during uh when school school was season All right, go ahead Change of pace tomato paste Three decades after being all but wiped out Of all the old Population continues to grow in New Jersey and it come back With a record 172 couples And 216 chicks Spotted last year, you know what I gotta salute the american ball I don't know how I don't know how such a beautiful Bird and such a symbolic bird was allowed to become In endangered I really don't know. I don't understand this. It's probably due to pollution. I really don't know But it used to be in danger You know alligators used to be in danger now there's way too many Hey, the swamp people will take care of that Oh, that oh that guy's so funny. I love the the father, you know, he's got that Cajun accent. Yeah. Yeah. Oh, yeah, and you know what? Gators are frigging huge as hell with the full problem over a thousand pounds And and and I think their bike was measured at over 25,000. Uh, I'm sorry. No 2,500 pounds per square inch on the bike 2,500 Pounds per square inch The news Was celebrated by birders and state Environmental officials about the Autobahn society. I'm sorry who say The resurgence of bald eagles in this significant bellwether Of the garden state's recovering environment an eagle's nest Was even found recently in Paterson Making it the most urban area of new jersey For a pair of eagles to settle in Don Torino President of the Bergen County Autobahn design It's a success story Beyond belief This did not happen overnight It was because people fought for this decades ago After almost being wiped out by the pesticide Dig the tee Aha, I know why The American bald eagle has experienced a resurgence In new jersey and the rest of the name From a single nesting pair In the garden state in 1982 The numbers increased to 59 Eagle pairs 10 years ago By 2011 there were 113 In 2015 there were 161 Most of the 11 new pairs discovered last year by state workers Partnering with a non-profit group were in southern New Jersey Eagles have made homes everywhere from the palisades To the Oradell Reservoir To the Highlands of Monarchy What amazes me is how all those wild parrots Survived and they didn't migrate south I'm talking about parrots that didn't like their owners They were probably assholes or neglective And then they flew to Coop Like the Bernie Bird did They were even primers Anyway, they flew to Coop and they all found each other and they survived the winter Now my hunch is that there is heat coming out of those transformers Up on telephone poles Absolutely And they huddled together Because birds amazingly are warm-blooded even though they hatch from eggs They huddled huddled together in between their body heat and the transformers But then there remains a question What do they eat? About 50 Eagles were spotted last month around a Ridgefield Park nest Next to Overpeck Creek Said Gil Hawkins of Leonia Who has led an effort to restore Nearby dumping grounds to a nature preserve That nest belongs to Al and Alice A pair of eagles that have become an attraction For the for birders across the region Well, I'm very happy When any endangered animal of beauty Makes a comeback. I know the peregrine falcon Made a huge comeback That the world's fastest living creature The peregrine falcon was endangered a long time ago And you know people help out They put bird houses on top of skyscrapers Which are like man-made cliffs Cliffs for falcons You know what I like to do? Are you familiar with the purple martin bird?  How much Is an old dried out piece of mold worth? Well, if it's an old dried out piece of mold on some brie cheese, which I happen to love I will eat it apparently more than 14600 dollars If it was created by the doctor who discovered penicillin There you go They nearly 90 year old swatch Of mold as a rather extraordinary history It came from the laboratory of dr. Alexander Fleming That's right whose revolutionary discovery brought the world its first antibiotic Unfortunately, he's the core fuffle out of that disgusting yellow Liquid from his lungs, but you know Fleming alexander Fleming with equal sputum credited with saving millions of lives worldwide yukis The patchy bit of mold from his nieces collection Was auctioned wednesday in london for 14,617 dollars The buyer was not identified The mold It's preserved in a round glass case And features an inscription by Fleming on the back You know bread mold is I hear the same mold that's used to make a a a tofu A soybean product from um indonesia Called tempeh. I think it's indonesian and malaysia It is a fermented um a soybean product That they just let it get moldy That that's the same kind of mold Fleming described it As the mold that first made penicillin that however may be a stretch The scottish born doctor Likely made at least dozens of such mold momentos Derived from his original sample of the fungus Fleming sent these samples out to dignitaries and to people in the scientific world Almost as a kind of holy relic He noted Dr. Matthew Haley did That other bits of mold were given to pope pious the a12 Winston Churchill and marlena Dietrich pope pious pious. Yeah, okay, perhaps in a discoverer Excuse me, perhaps in an effort To cement Fleming's legacy as the discoverer Of penicillin in 1928 Before the discovery infections like pneumonia rheumatic fever were near-death sentences When it first became available penicillin was called a miracle drug Said kevin brown archivist at the alexander fleming laboratory museum Its discovery began a new lifesaving era in medicine In some ways the discovery was accidental Fleming found mold Growing in an experiment When he returned to his lab after a stay at his country house One petri dish Was full of bacteria except For an area where mold was growing Wow He later realized the mold A rare strain of penicillin was killing The bacteria around it Fleming noticed something that other people would have missed Saw the potential of penicillin To treat patients Scientists at oxford university Further developed penicillin And production was ramped up so That enough of the antibiotic would be available for the allied invasion on d-day in 1944 Fleming and oxford scientists earnest boris chain and Howard Walter Flory Were awarded the Nobel peace prize In medicine in 1945 Brown noted that not everybody was thrilled To receive the preserved mold medallions And that some got multiple copies Including queen elizabeth's husband brince filip every time he met fleming He got another one of these things Brown said I know I know uh Rapp wise in his kumadin and I love to shove it down the throats of some people. I know The blood thinner kumadin, right?  Killed is it yeah president trump Mosted on tuesday night About military cost savings And corporate job expansion.  It's meaningless Just like with immigrants from mexico. Why are you blaming the poor? Mexicans trying to feed their their family to take care of their kids and survive Go after the american companies that are hiring illegal immigrants So they get cheap labor. Oh, no, they don't go after them I just had to say that Well, here are a few of The trouble Shall we say lies? Oh, there are plenty of them or whatever According to the national academy of science Our current immigration system Costs america's taxpayers Many billions of dollars a year. That's what trump said the fact That's not exactly what that report says It says immigrants contribute To government finances By paying taxes And add expenditures by consuming public service The report found that while First generation immigrants Are more expensive to governments from their native born counterparts Primarily at the state and local level immigrants children Are among the strongest economic and fiscal contributors In the population the report found that the long run fiscal impact of immigrants And their children Would probably be seen as more positive if their role In sustaining labor force growth And contributing to innovation And entrepreneurial activity Were taken into account Trump we say We have saved taxpayers Hundreds of millions of dollars By bringing down the price Of the f-35 Jet fighter There's there's there's really plenty of wasteful blow in the military Just spending more money than he thinks if he if he sincerely Wanted to cut out the waste more money than he can ever imagine He will say The cost savings he persists in bragging about Were secured in full Or large part before he became president The head of the air force program announced Significant price reductions In the contract for the Lockheed F-35 fighter Yet December the 19th I remember watching the documentary about the Lockheed versus Boeing for the government contract They were competing They wanted they wanted a more um They wanted a a lower cost fixed wing Aircraft and it was Boeing versus Lockheed and Lockheed one The government contract so I guess maybe this is the You think this might be the fiasco plane? That was a problem. Yes, that way. Yes. This is that plane fixed wing. Yeah, but the cost reductions were in Before he became president. Yeah, he became president on January 20 The costs for reductions were in by December 19, so he took the credit But it wasn't him who did it Oh, he's such a you know, he just lines up those comedians with material He is he is an ego beyond ego After trump had tweeted Of course about the cost But weeks before he met the company ceo about it, of course he tweeted Pentagon managers took action And even before the election to save money On the contract Richard albalafia An analyst with the aerospace consulting firm teal group said There is no evidence Of any additional cost savings As a result of trump's actions We also said Since my election Ford Fiat chrysler General motors Sprint Software bank Lockheed Intel Walmart and many others have announced They will invest billions of dollars In the united states And we'll create tens of thousands of new american jobs It's unlikely trump is the sole Or even primary reason For the expected hiring he cites Many of the announcements reflect corporate decisions That predate his election In the case of intel Construction of the chandler Arizona factory referred to by trump Actually began during garap obama's presence The project was delayed by Insufficient demand for intel's high-powered computer chips But the company now expects to finish the factory Within four years because it anticipates business growth or importance Even as some companies create jobs others are laying off workers This measure of whether or more jobs are actually being created Is the monthly employment report issued by The labor department which nets out those gains and loss Of saying his budget plan Will offer one of the largest increases in national defense spending In american history Three times in recent years Congress raised defense budgets By larger percentages Than 54 billion or 10 percent The increase that trump imposed The base defense budget grew By 41 billion Or 14.3 percent In 2002 By 37 billion or 11.3 percent in 2003 And by 47 billion or 10.9 percent in 2008 Trump said We will provide massive tax relief For the middle planet I'm going to have to speak so softly because it's noisy What you just said I heard you but Because of That that that I barely heard you actually Microphone is here Well, I hope they got it and it turns out like you say Well, it would never have any trouble in the past Yeah, it's true So, uh Getting back where you ended off Well, you probably didn't get it Trump Has provided little detail on how this would happen Independent analysis of his campaigns tax proposals Found the most Of the benefits would flow to the Wealthiest of them Of course Wealthy est Of families The richest one percent would see an average tax cut of nearly two Hundred and Fifteen thousand dollars Amen They do what they do because they can Because no one is held accountable by we the people While the middle one fifth of the cut of just One thousand and ten dollars Trump Say Ninety four million Americans are out of the labor force There's also a percentage That have just simply Given up or they're living in tents somewhere's or In other words, there's the government projection of what the unemployed is And then there's the real amount Of how many people that are destitute Homeless. Yes. Yes. Yes The homeless they're still human beings. They should they're still part of the uh Of those that are that are unemployed fact That's true. Yeah, but For the vast majority of them, it's because they choose to be Okay, we've got so many we've got so much opportunity in the united states now, sure Oh, yeah, the economy's great. The job market is great That 94 million figure includes everyone age 16 and older who doesn't have a job isn't looking for one So it includes retirees Well that includes uh newborn babies, right? Parents who are staying home to raise children.  You're still in the womb. Oh, no, we'll take care of you.  You're born already.   Get out of here.  When president obama took over This country was in a dire situation We were losing thousands of jobs monthly And unemployment was at 10 or higher and the deficit was uh astronomical Banks Investment organizations you got to be careful now because when trump talks about the the debt He talks about the uh, what is it up to 20 trillion now? The national debt he doesn't talk about the deficit Which obama brought down by two-thirds Well, nobody from the republican party is going to give Barack obama credit for any damn thing. No, of course not but But uh, you know the the 20 trillion dollars I mean, who do we owe that to? You know It's not obama's fault for that. That's that's the fault of the republicans who will not pay For certain things that come into the budget, right? Like for for instance, when they were fighting years ago uh over Not not extending our credit and blah blah blah blah Well, what happens was every year Whether you do something Let's just take uh, let's say for instance. Let's take snap food stamps. Okay Every year whether you do something or don't do something the price of that program is going to rise Mm-hmm by a percentage point two or three, whatever If you don't pay that That year You're gonna get the three percent next year. You don't pay it you get another three percent now you're down six percent That's what they do They don't pay For programs that they have vote for Regarding journalists are not the enemy of the people Today it seems we get as much poor journalism as good journalism Even on the front page As an example the column sites russian and french murderers A past president who went rogue With a plumber's unit designed to stop leaks And a communist chinese leader all of whom did terrible things Also our current president is suggested As being on the same level as those bad hombres By not mentioning one act he did to harm us This is an inaccurate parallel If journalists and the media Are called out For factual reasons then they need to take real stock of themselves The press is not voted in The president is And his credentials are reviewed by the citizenry every four years There's a reason approval ratings of the media are low It would be nobler for the author To write an article titled On by his journalists are not the enemy of the people Rather than stretching a comparison to include some of the worst people in history And regarding trump Blast Unnamed sources The headline soft pedals the story that follows The hypocrisy Of the trump white house will Well reported in the story itself calls for a headline such as White house demands Media rely on officials Anomalous statements This administration Ignores its own Contradictory statements Repeats falsehoods Even when confronted with contrary evidence And appears to believe Okay, it has no obligation to speak truthful And to the public Freedom of the press Is essential In a democracy The record Our local newspaper Needs to use every headline To emphasize trump's threats To freeze speed It's about that time We've got like uh one more to the road at least one more to the road Yeah, because all the trump readings are Are uh both equally humorous and equally upsetting And they they're really You know they're very they're kind of redundant because There's nothing positive about having republicans controlled In the country Unless you're stingy greedy and rich I am a 20-year-old woman Well, I mean yeah, okay Who has been in a two-year relationship with a guy Who has been my good friend for seven years Last summer We were apart for three months When I moved across the country for an internship Things were rough I was very lonely And I had a drunken one-knife stand Oh, it's a known fact that alcohol is the best aphrodisiac for a woman Uh even more so than kissing her up and down her neck I didn't care about the person I was just lonely No, you were drunk I feel so guilty You were you were in lust momentarily I never told my boyfriend about my infidelity If I didn't tell him He would know slightly and never find out They're they're monogamous I guess It's not infidelity unless you're you're monogamous They're not married Yeah, well, it's yeah You can't call it infidelity if uh You know some people that are dating Actually Delusionally act like they're married couple their married couple was I know it's a couple Females like that, you know, they they think they're always my guy. What is it? But it's just possession. You're not married to them I hate that I did something that would hurt him I was a friend through his years in foster care And the incarceration of both of his parents I have been the shoulder to cry on And his supports us I betrayed the most important person in my life And I failed him I have seen people cause him pain And I don't want to be the cause Of war I want to be with this man for the rest of my life Yeah, yeah, yeah, yeah, you want to be with him for the rest of your life But I also accept that it would be entirely my fault Well, what does he want to be with you for the rest of his life if I told him and he left?  Hey Millennials 20-something people get loaded every weekend for god's sakes And and she makes it sound like she committed murder or something Does this episode speak to some sort of deep seated problem?  Oh, she should be committed. All right. She's only 20. She has her whole life ahead of her If it was the latter so to see then you should keep this to yourself This might be one of those times When you should carry out your own Guilt privately rather than relieve it By unloading onto your boyfriend And burdening him with the dilemma Of what to do about your behavior Carrying this burden And choosing to wise up The head differently is the consequence of this episode If you find that you're guilty Over this continues to interfere with your relationship Then you should tell your boyfriend Do not expect him to appreciate your truth Applaud your unburdening heart forgive you right away One risk of having an outside sexual experience even a one night stand Is contracting an std You should visit your doctor Mirrors planned parenthood cleaning So like the old saying they were just two ships passing in the night It was a secluded rendezvous across the avenue Cocktails for two Yeah All right, listen people People have a have a good have a good weekend and week Safe, of course have a safe one Oh boy, oh boy Once I once I I get really good At My dividing rods that you will see more of them on my new series All progressive discussions after dark And I've been doing the show So far with My friend and co-host Mick von Raven And uh It's done at night, of course after dark and it's done, uh in a totally different Um Surrounding than what we have here completely different. So it's dark. It's macabre It's gothic looking and uh It's after dark. What do you want for me? Anyway, we'll see you get a double I might as well give greetings to mcvon raven. Hello there mcvon raven Yeah, yeah, I saw you all right. We'll see you. Don't worry. This is it. This is it


Tell us more about ReNoot now. Thank you very much for joining us. Well, thank you for having me, Mario. So for those of you who are out there who are on a lower bandwidth connection, if you want to follow along, these slides are available on the internet p.zobbs.io. This will actually synchronize with the presentation that we're doing so you can follow along if you can't get the video feed. Just a little bit about me, Mario gave a pretty good introduction. I'm here based in Singapore. And as he mentioned, I tend to do weird hardware. There's a picture there of FOMU. Probably the world's smallest FPGA development board can fit inside of a USB port. There's also the Chibutronics, which is a circuit stickers project we did that actually lets you program the device via audio. And you can actually program and see Arduino style language using your phone. Lately, I've been working with the Betrusted Secure Communication Platform, which is multiple FPGAs working together with the CPU and all the logic written in high level language that gets compiled down to Verilog and runs entirely on this open platform. This talk is going to be about ReNode. I do not work for Antmicro, the people who create ReNode. I just find it really useful software and I hope that by the end of this, maybe you'll find it useful too. Now, Mario did mention that this talk is about weird hardware and what do I mean when I say weird hardware? Weird hardware to me is hardware that there is only one of in the world or maybe just a few, usually because you just made it. Possibly you're in beginning production or it's something special for a particular project you have, but for whatever reason, it's somewhat bespoke and there isn't another person in the world who has your exact hardware. Weird hardware could also be just something you have that you found somewhere that you're trying to understand, possibly reverse engineer. Now just be clear, when I say weird hardware, I'm referring to devices that have an ARM, i3-886 PowerPC, RISC-5, Spark or Extensa core inside. Unfortunately, ReNode only supports those platforms. It doesn't support anything like a CS2-230 or an 8051. Unfortunately, those sorts of devices can't be emulated in real time on ReNode. You'll have to use something else or just build a simulated model of that particular device. ReNode itself is a multi-node emulator. It's extensible with C-Sharp and Python, very similar to how OpenTap is extensible in C-Sharp and Python. It is available and can run fully on Windows, Mac and Linux, and it's MIT licensed so you don't have to worry too much about GPL or anything like that. And here's just a picture of what the ReNode console ends up looking like. Now I'm going to start just by asking a question. When I say emulator, what comes to mind? For a lot of people, it's going to be something like a whole system emulator. This is a picture of a Nintendo emulator running on my PC. It's called FCEUX, and it lets me play games that were written for the Nintendo Entertainment System, which is a console from the 80s. As far as the game is concerned, it's running on a real Nintendo. It thinks it's outputting to a CRT screen. It thinks it's reading a gamepad. When in actuality, it's outputting to a window on my desktop, and it's reading from my keyboard. This emulator means that software that was written a long time ago is not going to be obsolete. It means we can still use it today as if it were the 80s. In fact, you can see it says copyright 1985, Nintendo. So in addition to preserving software, emulators can give us greater insight into the software that we're running. For example, this is the same emulator with the debug window opened up. You can see here we can have a live disassembly of the game as it's running. We can see the memory as it's running. This is the sort of thing that would be difficult or impossible to get working on the real hardware. By having an emulator, we can actually get greater insight into the system than if we had real hardware. Now, asking the question again, what is an emulator? Is this an emulator? I would say yes. I don't mean the BBS that I'm dialing into right there. I mean the window on the outside is an emulator that is emulating this guy. This is a DEC VT-100 glass teletype from 1978. I believe this is from the Computer History Museum. It is an alternative to what was prevalent at the time, which was typewriters and printers. So instead of wasting paper, you can connect a glass terminal, a VT-100, to your mainframe and type commands in real time that way. Now, the previous page, this is in no way emulating this. This comes from an era when they would publish the schematics in the reference manual and this is what it actually looks like on the inside. It's got video control circuitry, it's got something to read the keyboard. This is not the sort of thing that you really need to emulate when you are typing in a terminal on your desktop. You don't need to be emulating the firmware of the original Intel 8080. You just want to get enough commands. You want to be able to understand the commands such as move the cursor around or input the colors if that is supported. So basically, emulation depends on your goals. For a VT-100 terminal, usually the emulation is to be able to get the other side to give you the commands that it intends, which is another way of saying that emulation is actually a lie. We're lying to the game that says we're a real Nintendo. We're lying to the thing we're connecting to, saying that we're a real VT-100, even though I'm sure most people have never actually used one. Myself included, if I'm honest. So with that in mind, emulation is a lie. We want to emulate a computer. We can ask the next question, what is a computer? What does it mean for a device to be a computer? Well, I'm just going to say that in my mind, a computer is a system of devices, one or more processors, one or more buses, one or more blocks of memory. And if we're not building a Turing machine that is an infinite paper tape, it has some input and output. And for this purpose, I am going to refer to this guy, which is a Blue Energy 2. It's a Bluetooth chip. It's fairly simple, low power, but I would argue that it is a microcontroller, a system on a chip. For our purposes, it is a computer. And when you work with a microcontroller, you can usually get a PDF, which usually starts with something like this that gives you the bullet points of the chip, followed by a lot of information about how the chip works. And this is from the reference manual for the Blue Energy. If you open the manual and you go to one of the first few chapters, you'll get this. Now, it's really not so important what the blocks are, but you do get a block diagram that tells you how the chip is arranged on the inside. I'm just going to prefix this by saying, currently Reno does not support the Blue Energy. This is a chip that is unknown to Reno. So we're going to figure out what it would take for Reno to be able to understand this sort of chip. Now, when you're looking at a block diagram like this, there does seem to be a lot there, and there's a lot that we would have to get working in order to get this working with an emulator. Except not really. It turns out we can actually ignore anything that I've crossed out in red here. Things like there is a Bluetooth modulator and a Bluetooth demodulator that go from the Bluetooth encoder to the antenna. We don't really need to emulate that. We don't need to do all of the real-time calculations, the IQ encoders and decoders. We can just cross that out. This also has a bunch of bridges that go from, for example, the HB bus to the AXI bus. We don't need to emulate those for our purpose. In fact, if you're writing code for this chip, you rarely need to know about those to begin with. So we'll just cross them off, ignore them. Great. We have in yellow here a CPU, a Cortex M0, which is great because that is a standard ARM M0 CPU. So that is going to be well supported by most emulators out there, including Renode. So great. We have one CPU. We have things in green that are memory. There's the SRAM 212 kilobyte banks. There's a 1 kilobyte of, for some reason, I guess it's public key memory that's dedicated to that. And there's 256K of flash. Now I'm going to treat all of this as memory. It's just bits and bytes in a memory array that isn't really doing much except storing data. So there's nothing special about these areas of memory, except the flash happens to be read only and the SRAM can go away when it goes into a low power state. It doesn't matter. For our purposes, this is just memory.  And these are peripherals. These are the spice that gives a chip its specialness. Every chip is going to have a different set of peripherals and a different set of addresses. And these are what separates one particular microcontroller from another. Now the way you access all of these memories and peripherals is by memory. So most modern systems are memory mapped. There are port mapped systems, but most modern devices are memory mapped where things like flash and RAM are just addresses in memory. But also the peripherals are memory as well. You can see on the screen starting at address 400000, we have GPIOs. These are input-output pins. So depending on the configuration, reading and writing to these areas of memory will cause pins to either go high or low. There's also some other peripherals on here. For example, the flash controller, the system controller, UART, which is just another name for a serial port, and so on. There's so many peripherals. Each one of them gets its own address that I ran out of space on the bottom of the screen, which means we can boil that complicated diagram down to basically a CPU on one side, some sort of memory bus in the middle, and then devices on that bus on the right, RAM, flash, UART, SPI, and so on. Now, how does this relate to ReNode? Well, it turns out to be really easy to define at least the skeleton of this in ReNode. For start, we have the flash and the SRAM, and we're using the memory.mapped memory block here, and we're just placing it on that system bus. The first one is at offset 1004000, and we give it a size that we get from the reference manual. And the same thing, SRAM is at offset 2000000. We're just copying these numbers straight out of the datasheet. Notice how we don't specify that flash is read-only. It might be that there is an option in the mapped memory block to specify flash is read-only, but it turns out that in practice, that doesn't matter because very few real programs try to write to flash because that would be an error. It could be that if we want to test that that doesn't work, we can add that as a feature. But for now, I'm not going to bother because we just want to get something working. Then we add the CPU to the SysBus. So remember, with this, we can have multiple CPUs sitting on the bus at the same time. We specify its CPU type, Cortex M0+, which, again, is a very common low-end microcontroller that you find in all sorts of very tiny devices. We specify the performance here, and this is just a number that you can get either out of the datasheet or just invent one. You don't want it to be too high because then you're simulating a device that's much faster than the one you're actually simulating. But 24 is usually good enough. Usually, it's about one megahertz, one MIPS per megahertz, depending on the architecture you're using. And then at the end, we actually attach what's called an NVIC. And this is kind of a quirk of ARM Cortex devices. One of the nice things that ARM has done is that they've said for the M series, they're going to give a standard set of peripherals. And the NVIC is one of those. That's the nested, vectored interrupt controller that is a standard way of handling interrupts. It also has things like a SysTick timer that is a universal way of firing interrupts and it's this combination of NVIC plus SysTick plus some other peripherals that actually makes it really easy to port operating systems from one Cortex M chip to another even across different vendors. So we put these all together in a file called bluenrg1.repl that is the re-node platform file that defines our platform. Now, there are a couple of things that we need to talk about. What about loading firmware? And what about adding those peripherals in purple? Because remember, peripherals are going to be a lot more challenging than memory. Well, rhetorical question, what is firmware? Well, you might say that firmware is a series of instructions that are executed by the CPU in order to accomplish a task. And I think that's an overly complicated definition. For our purposes, firmware is memory. It doesn't really matter what it does. It doesn't even have to be valid. It could be you're emulating an emulator in which case it's not real instructions. It doesn't matter. The firmware is just memory that happens to be loaded somewhere. So in re-node, it's actually really easy to load firmware. If you're developing, you build it, your compiler tool chain usually develops, generates an elf file.  File names are prefixed by at in re-node. So this is saying sysbus load elf, the file called firmware.elf. And what that will do is it will use the elf loader built into re-node to unpack your elf file into memory. So for example, it may be that flash is at one address and then the data section is another. This will do all of that unpacking for you so your image will be ready to run in memory and you can just jump to the start address. If you don't have an elf file, if you just have a bin file, for example, off of an SPI flash chip or maybe that's what your developer tool generates, you can specify sysbus load binary and then give it a file name and an offset. Remember that flash was located at one zero zero four, zero zero zero zero on our target blue energy one. So that's why I've specified sysbus load binary one zero zero four, zero zero zero zero. And this, you need to ask the question, how does this interact with the random developer vendor tool that you've got? Hopefully it produces elf files. And if not, we'll just use the load binary to load the hex or the binary file. Unfortunately, if your tool generates a custom firmware file format like updaters or something like that, you'll need to unpack them first before fading it into renode. But for the most part, just treat it as bytes that get loaded into memory somewhere. What about new peripherals? When doing any sort of big project like emulating a brand new device, it really is all about the small victories. If you can make something that is, gives a high reward, the most value you can get for the least amount of effort will at least get you started on the project. If your goal is to emulate the entire system, you're going to burn out before you get anywhere close to emulating the whole system. So start small. And it turns out that serial ports are super rewarding because you can get text out and see what's going on and run a lot of software very quickly. They're also usually very simple and they're easy to script once you get a serial port written. So going back to this document, this table from the reference manual, we can see that address 4030000 is a UART. And that is where the UART peripheral lives. And the UART peripheral is full of registers. Now, what is a register? A register is just an area of memory that has some special property when you read or write. And in the UART register section of the reference manual, we have two registers here. There was a page break after this, so I only copied two registers, but you could see address zero is DR. That's the data register. And offset four is the RSR, the receive status register. And these are going to be at 4030000 and 40300004. What do these special addresses mean? Well, even further down, there is a documentation for each individual register. So this is the documentation for DR. We could see that bits zero through seven are the data register. You read from that to read data. You write to that to transmit data. And then there's some other flags as well. Okay, that is useful. So we can think that if we want to create a peripheral, we want to make it so that when they write to this address, we send it out the serial port. And when they read from it, we get the data that the user typed in or the test harness wrote or something like that. But there's an interesting thing there. Address zero is DR, address four is RSR. Those numbers look kind of familiar. This is the reference manual from CC2538, which is a chip from a different vendor that has a radio in it. And we look at their UART. Address zero is this thing called DR. Address four is this thing called UART RSR. And address four, they also have this thing called UART ECR. Hmm, okay. Looking at a Raspberry Pi, the Broadcom chip that is used in the Raspberry Pi has the same thing. Address zero is the data register. Address four is this register they've called RSR ECR. And then they have some other registers below. And a hint as to what's going on is actually up at the top. It says the PL011 USRT is mapped onto the base address. And if you look that up, you can actually see that the PL011 is a prime cell UART from ARM. And they have the technical reference manual for it. Because what happens is it's really hard to design a chip. And what chip designers do is they want to reuse as much intellectual property, as much IP as they can. So companies such as ARM not only will sell you the CPU core, they'll also sell you peripherals that go around it. And so because ARM makes the prime cell UART and most companies don't want to design their own UART, they just buy the IP from ARM, slot it into their system, and now they have a UART any other chip that uses a PL011. And this is such a common core that ReNode actually ships with a PL011 driver. So in order to instantiate a PL011 onto our SysBus, we just say UART.PL011 at SysBus 4030 000. We also specify the NVIC interrupt is 10, and we get that from a different area in the reference manual. So now we want to set up ReNode. First we load the platform definition file that we just defined. Then we load a binary of DLA chat server. Now you'll notice I'm loading a binary here and not an elf file. And that's because these demonstration programs came directly from ST. I didn't actually compile the source because I wasn't sure how to set up their developer environment, but I knew that this code ran on real hardware, so I just decided to load it into the emulator at address 100400000, just like the bootloader would do in the real device. Then you do some ARM-specific things, setting the vector table offset, which is where the interrupts live. Most of the time this will be at address zero, but because on this particular chip, the firmware lives at 1004, we need to reset the vector table offset. It's just a single command. Then we set the stack pointer and program counter. Again, this is the sort of thing that any ARM chip does. The hardware actually does this on its own, except it usually sets SP to the value at address zero and the PC to address four. It's just because Flash is at a weird place on this chip that it is at this weird address. Remember, this is all about getting weird hardware to work. This is really the extent of the weirdness, because at the end we hit start, and there's our whole setup. We're going to call this blueenergy1.resc, that is the re-node script, and we feed this into re-node, and there we go. We get output. We get the firmware that comes from ST running in our virtual system, outputting a message that says it managed to initialize the UART. That's cool. That's huge. Before re-node, you'd have to do something like recompile QMU in order to get this working, and it wouldn't work on Windows, Mac, or Linux. You'd have to have a different version for each platform. This is just some scripting that we do in order to get it working. Number one, always check for block reuse, because companies frequently use blocks across different designs, and that can save you from just having to re-implement it from scratch. It may be that a block is slightly different, in which case you'll have to copy the existing design and modify it slightly. Maybe the addresses are different, but try and use a design if you can. Now, peripherals can be developed surprisingly quickly. I was skeptical until I saw this, but I was at the Hackaday SuperCon in 2019, and we were just bringing up the Betrusted platform. This is an early Betrusted prototype. It is on the left. On the right is a Raspberry Pi with a debug hat that we use for serial I.O. and also SPI flash. What would happen is you do the development on your desktop, upload it to the Raspberry Pi, which would then program the flash chip in the Betrusted and give you feedback over serial as to how this device was running. You can see here, this is Bunny in Singapore running a demo that is a ball bouncing and is also reading some values and putting them on the screen. This is 17th November, 2019. Very early stuff. I was at Hackaday SuperCon and the micro people were there and they said, yeah, we could emulate that, no problem. It should be doable. Risk 5 CPU core, okay. Now, with Betrusted because it's an FPGA, we actually have to do everything ourselves. We use Litex SoC in order to design the FPGA and as part of the build process, we actually generate our own reference manuals. This is an example of what our reference manuals look like. There's a link at the bottom in case you want to go take a look, ci.betrusted.io. These are actually generated every time we rebuild the firmware. I sent this to the Reno guys. I gave them the flash image that Bunny was using here. Instead of sending it to the device in the Raspberry Pi, he just sent it to me over Telegram. So I gave that to the Renoed people who were at Hackaday. I gave them a link to this reference manual and I told them a little bit about the layout of the screen and the frame buffer and all that. She said, yeah, we can do that in a day. It'll take a day, no problem. I said, a day, really? Okay. Then I went to go see a conference or a talk and an hour later, I get a call and he says, let me, I got something to show you. I go over to his desk and he has this running in his machine after an hour. So it turns out that it's really easy to create new peripherals. This isn't even a really a patched version of Reno. This is a stock version of Reno that he's running here. He's got our software loaded. He's got the frame buffer working. He's got the timer working. It's a bit slow compared to real hardware but that's just because the peripherals are completely unoptimized. He managed to get it working in an hour and I've just never seen anything so amazing. You got the ball bouncing working. It's delightful. Okay, this is a cool piece of software and so that is actually what started to get me to use it for the Betrusted project. Remember we had the Nintendo emulator that gives you access visibility into the system. There are some things that you can get with emulation that you can't get with real hardware. One of the things is that in the real hardware we have one serial port because it's a Raspberry Pi. There's only one serial port that's brought out to the device on your test and so to get around that there is this register called UART cell where you can select which one of the logical UARTs inside the system on our chip in Betrusted will get sent to the Raspberry Pi. There's two bits which gives you four options. With ReNode I don't bother to emulate that. I just open up two serial ports. I can put as many serial ports on the screen as you want. Just open up another window. This is something you can't do in real hardware because you're limited to the number of wires but in emulation we can have as many serial ports as you want. One other story about this, getting hardware to users it's a lot easier to send somebody a download link than it is to send them hardware. In fact it's easier to patch ReNode or even an FPGA hardware than it is to patch real hardware. This mess of wires is what we call the engine. It is a cryptographic acceleration engine because modern cryptographic primitives particularly ED25519 requires a lot of 256-bit multipliers and those can be very difficult to do on a 32-bit RISC5 core. We offload it to a DSP that Bunny ended up designing. I emulated this in ReNode as a peripheral so we can run the engine's firmware as if it were running on real hardware and we check this in and somebody checked it out this person named Fabian Weisberg checked it out and added these vectors from Google Project Whiteproof which basically tests the engine a little bit better than we had done. It's additional test vectors that we didn't test before. He checked them in, ran it under ReNode they passed, submitted the pull request and then they got added to the repository. Now the amazing thing is Bunny checked them out himself built them on hardware and discovered a bug. It turns out that his implementation didn't properly propagate the 17th bit. So he was failing on some of the tests that ended up passing in ReNode and because this person managed to add these test vectors we were able to catch them. Now if you look at the date here 7th September 2021 it is now 9th April 2022 we just got users real hardware three weeks ago. This is months ago that this person managed to download the software and find this bug and contribute to the project. So again emulation brings more eyes to the project because it's easier to download software. ReNode also supports robot framework and this is where the CI part of the talk title the original talk title comes from. If you're familiar with robot this should look very familiar. If you're familiar with COBOL this might look familiar as well but robot is a common test framework that lets you run various test cases in CI. This is actually from ReNodes built in test cases the way robot works is you have sections this is the settings section most of this is going to be the same across all of the tests you see it just says how to set up the particular test case then you have the variables section there's all the variables that are used with all the tests in particular here you can see we're actually defining a REPL file a ReNode platform file here where we're using the recursion feature where we're actually just saying this device under test it's just a Nordic NRF 52840 core which is a very standard Bluetooth core that comes built in with ReNode and what we're going to do is we're going to add this accelerometer this LIS2DS12 which is the device we're interested in testing we're going to add it on the TWI1 that is the two-wire interface otherwise known as I2C bus at address 1C and we're going to hook this accelerometer sensor up to GPIO0 port 28 so this is something that might vary from board to board which GPIO port it's connected to which address it is which I2C device it's connected to but you can see it's very easy to change that just in this one text file down below we have the keyword section which is essentially functions that can be called my test cases in this case we have a keyword that creates a new machine for testing so you can create a machine very easily just say mock create you load the platform definition from what we divided up above as a string and then you load an L file and finally we test to make sure that it can read the acceleration we're actually calling C sharp functions on the accelerometer so acceleration X is a C function that is defined on the accelerometer chip and then we start the emulation and make sure that the UART prints out the correct values you can actually see we're also testing the rounding of this particular C library just to make sure that it hasn't changed possibly due to a new version of lib C this also means you can throw this into GitHub Actions and test your firmware every time you push code just as you would test any other desktop application Reno does also use for reverse engineering there's other things you could do for example there's this standard called SVD which is an XML file that most chip vendors have that describes the chip it's essentially an XML version of the reference manual except everybody follows the same standard so it starts out with the vendor section with things like the name of the chip down below we have things like the peripherals so you can see here this is the random number generator of the blue energy you have the name here description which isn't always very useful but more importantly we have the base address for this peripheral so we can use this to assign information to the system that's being emulated we also have the individual registers including their name the offset so in this in case of the the UR this would be DR address offset 0 we have the different fields here so this is actually really interesting because within a single register remember there was that individual registers section we saw in the reference manual we also get individual bits here as well so crucially we also have the reset value so the SVD will tell you when the chip starts up what is the default value and this becomes particularly interesting for chips that have version information and software that looks for that version information to determine which version the chip is running on so that will have a reset value that depends on the exact version of the chip you have that we can actually pass this into Reno we can apply the SVD file to our sys bus which means that when you run your code if there's a register that's unimplemented Reno can now log what block which register and which peripheral it's reading and writing from for example the first one on the screen it's trying to read from the data register on GPIO if you didn't have that you would just say 400 and you'd have to look in the register manual manually here you can just let Reno take care of it for you and relabel everything and you can see the last read on the screen there from clock gen underscore BLE it's filled in the default value for us which probably means something like clock was reset due to system start I'm guessing you can also load an L file and have it log function names as it executes various functions so this is an example of logging function calls on the embedded controller for betrusted because betrusted was loaded from a bin file from an SPI flash I didn't have functions on there so I just loaded symbols from an L file and started logging and you can see it entering the function it tries to join the Wi-Fi then it tries to configure IPv4 and then it requests the DHCP address also cool is that this is actually Rust code that it's running so it doesn't matter that it's Rust it's going to still print out the function names that it gets from the L file if that wasn't enough you can also debug the emulated system with GDB just say machine start GDB server give it a port number and attach GDB to it specify the port and you can start disassembling code right away can disassemble from the program counter on you can print the registers you can examine memory it works pretty well notice I started GDB here without symbols because for this particular device I didn't have symbols what you can do is you can just create an L file this is probably a whole other talking itself but you can actually feed binary files into this lovely software called Ghidra that has a really nice decompiler you can label you can rename functions to give function names that make sense to you then you can generate an L file and load those into both Reno and GDB to make debugging on the device that you're testing much more understandable we've also got multi system emulation this is what we would do with Betrusted where we actually have two different chips that are running in lockstep one of them is 10 times as fast as the other there's the EC on one side that's connected to wifi there's the SOC that's on the other that's connected to things like the keyboard and the display and we they communicate over a COM bus and so we can actually run all of these in lockstep together and get a whole system emulated running short on time but there's some other fun things that Reno can do you can load peripherals at runtime you don't actually need a C compiler or a C sharp compiler it'll load C sharp files natively so this is just me including a C sharp file and Reno will take that compile it and give me access to that peripheral at runtime and these peripherals are cross platform so you don't need to recompile Reno for Windows Mac or Linux you just include your C sharp file with your distribution include it this way and you should be able to add it as a peripheral on your device peripherals are also relatively easy to create remember I said he created a display in an hour that's not unreasonable at all when you create a peripheral at runtime you would do something like this you have an enum with all the registers that comes straight from the reference manual then you have this function called define registers this is an example of something that has two bits we define each bit differently because doing bit shifts is really hard because it's prone for error so we say bit number zero is a callback closure that just returns true because in this case this is a random number generator and because we're emulating this we can lie and say that we always have random numbers the second bit here is whether or not the random number generator has available data again we're just going to lie here and return the bit true the flag feature makes it very easy because again you don't have to worry the data field on this particular random number generator is not a flag it is a value in fact I make it a 32 bit value and I pass to the function value provider callback which is again a C sharp closure and I just use the system random number generator because it's C sharp is the full language it comes with things like a random number generator so this is the entirety of the random number generator implementation plus a little bit more glue to add this as a C sharp class you can load this into your running emulated system at runtime it will compile it and then you can use it in your target system this is C sharp to answer the question you can also because Microsoft created C sharp they also created visual studio code you don't need to get a full visual studio install you can actually use visual studio code and get auto complete with the C sharp because the reno binary itself contains a lot of debug symbol information you can just point visual studio at reno and it will give you all of the library information that reno uses for example here I'm doing auto complete on what a double word register value looks like and you can see that there's a function called change callback that takes two arguments this makes it really nice for debugging new peripherals because if the IDE says that your code is good it's going to run the first time it may not make sense logically but they'll at least be free of syntax errors and you get auto complete which is huge you could also do networking with tap now tap is a device for doing adding virtual network devices that you can use to bridge to your ethernet device started in linux in 2000 it's been ported to windows and there's a version of on the Mac you can create an emulated switch using this command you can create a tap on your system using this command and what this will do is this will create a new network interface or ethernet device on your system which you can then bridge or run that and then you can connect the host system that is running re-node to an ethernet device that your device under test may have if you don't want to connect it to your host system using tap you can also connect it to a small network that is entirely emulated an earlier version of this just had me emulating a linux system already on arm that was providing DHCP information but with this you can actually get your emulated system working on the internet to the point where you can actually send and receive pings you can do everything you would in a real system running on your desktop so the bottom line re-node is free software it's MIT licensed give it a try I think it's underappreciated I think more people need to know about it because it's really cool stuff it's really good really easy to make new peripherals and thank you for joining I'll put some links up here there's re-node.io which is the software that we've been running betrusted.io which is the embedded which is the secure communications device there's the link again to this talk if you'd like to see it after the fact the source to this talk is also up on that git page if you'd like to download that that's all any questions okay thank you very much yeah that was just so deep like I already get a lot of feedback from people and we have time for one question so this from Nilek he says it's partly a philosophical question can an emulator be better than the original hardware or is the original device per definition the best solution how about fixing bugs of the original hardware oh that is a great question again it really comes back to what your goals are if your goal is to for example with the Nintendo nothing can emulate the feeling that you get when you're 8 years old playing with a game on Christmas morning it's there's nothing that can come close to that but it is a lot harder to attach debug probes to a real Nintendo system so it depends on what you're looking to do for a lot of what we want to do in terms of development an emulator can be better than the real system a practical example is that a Cortex M0 usually comes with two flash patch points which let you insert breakpoints on read only flash as soon as you exceed two gdb will throw lots of fits saying you can't continue because it can't add breakpoints and this happens a lot when you have code that's been heavily inline so a single line of code might equal 20 different lines in the flash file if it's a particularly hot function things like locking disabling interrupts that's generally a single function that gets lined everywhere so if you try to insert a breakpoint on that and your system will refuse to run with an emulator that's no problem because flash is emulated so you can insert as many breakpoints as you want so if you're developing emulators possibly are better especially when the hardware is still changing but nothing beats the real thing so we do have real hardware that is connected to a Jenkins machine with be trusted that is running all these tests on real hardware but because we have access to the cloud we can now run 5, 10, 15 infinite number of emulated systems in the cloud which scales a lot better than just the one or two devices we have connected to hardware here in Singapore. Thank you Sean, it's been an absolute pleasure having you here again at the Fossager Summit and I hope we can catch up sometime soon personally in person. Definitely looking forward to that thank you for having me. Good evening, thank you very much, bye bye.