All right, welcome back to operating systems. I guess it's too hot today. Not that many survivors left Yeah It's 28 degrees It'll get horrible later. All right so page tables where we left off we left off at a Gigantic page table size. It was a gigabyte Not not that useful So what can we do it do about it most programs don't really use all their virtual memory space So what could we do to take advantage of that any suggestions? so well like our page tables before we're like gig a gigabyte because Even with the 39 bit virtual address It was gigantic So most programs don't actually use all their virtual memory space. So what can we do about it? Well, yeah Dynamically size our page table Yeah, so we still need a page table dynamically resizing it Would get tricky So we got another suggestion for hash tables So we won't use hash tables for the same reason we didn't use hash tables before they're actually hash tables are basically just Arrays that are slightly slower So for this generally we want to just use arrays if we can just do quick little lookups and everything like that so the first easiest thing to do It's just make the page table smaller right, so One technique that actually makes things a lot easier is if we make a page table fit to the Exact size of a page So if we do that We'll see as we make this more complicated that that turns out to be a very nice property to have so in this case, I will just shrink the virtual address space in this example to 29 or 21 bits, so I will have a Essentially only use nine bits for my index because I want to make this page table right here fit on a page So we're still going to argue about page sizes of 4096 which is 2 the 12 So if we work backwards our page table entry is 8 bytes, which is 2 the 3 So if we want to figure out how many entries need to be in a page table such that it is the same size as a page Well, we just need to figure out 2 to the what times 2 to the 3 equals 2 to the 12 so 2 the 9 is The number of entries we would need and then this would fit exactly on a page, right? be small so Our page table exactly a size of a page We just make it smaller. Otherwise it works exactly the same as in the last lecture We just use the page table for the actual translation which holds our physical page number Nothing else change. Nothing else is different. So any problems with this Otherwise exact same process as before you might have noticed I changed the index to be L zero That's because we get into the real pain point where people's heads start to explode Because it looks like this So there are multiple levels of page tables and that is where we get our dynamic scaling So our dynamic scaling for page tables is going to be how many page tables we have at each Individual level and that will allow us to essentially Dynamically figure out how many page tables we have and they will be in increments of pages so This is what it actually looks like and this is Thankfully Thankfully, this is as complicated as it gets. So this is what happens on the real system So we are going to be talking about this all day So what it does is it divides that 39-bit virtual address into different levels of page tables So we still have our 12 bits for the offset Thankfully, we don't have to do anything different with that it stays the same and then what we previously had here as 27 bits for the virtual page number we divide it into levels and each level will have nine bits Because our page tables are going to be the exact size of a page We argued that here that it would have to be nine bits so the only difference here is that we have three different levels of them and You can do the addition here to figure out that this is 39 so Now in order to do the translation you would be given this L2 page table given by a register or something So this would be the page table where you start at So how you actually translate do the full translation for the address is you would take these nine bits for The L2 or the highest level of the page table use that as an index to figure out what entry in this L2 page table you need to look up and This would still have page table entries But the only difference here is instead of at the last step here where that page table Corresponded to the physical page number of the address We were actually interested for the physical page number here is going to be the physical page number of The L1 page table So it will tell you which page table to hop to next a level down and that is why It is nice to make them the size of a page Because we don't have to fool around with the offset or do anything like that Each of these page tables would start at offset zero and fill an entire page So we're not wasting anything does that make sense kind of Yeah, so this is yeah, the question is immediately why the hell am I doing this? This seems insanely complicated so before When we had a single page table and it was like two to 27 that page table was one gigabyte, right? To translate a single address So now whoops if we have something like this to translate a single address at minimum We only need one L2 page table One L1 page table and one L0 page table So we only need three pages to translate an address Which is only 12 12 kilobytes Right, so to translate a single address We only need 12 kilobytes as opposed to one gigabyte So that is why we're that is the primary reason why we are doing this Because we do not want to waste a gigabyte per process Otherwise, we would run out of memory just with page tables So Yeah, so here again the translation Starts off. We use the index in the L2 page table or the highest one We would be given where this starts at by a register or something This would be called like the root table register in arm or sorry risk five. It's called SATP It's basically the root the L2 page table pointer Then in that would have a bunch of page table entries we index it by this L2 here and It would give us the physical page number of the L1 page table and then we do the same process So using this page table given by the previous address We look at the index given by L1 It gives us a physical page number and it tells us where the L0 page table is Then in the L0 page table Mercifully it is the same as we did before that hopefully we all understood where you just look up the index from the L0 And then that physical page number is what you use for the translation So then it's finally done. Yep Why can't go from L0 directly to what sorry? So the primary reason for dividing it into different levels is because we don't want a page table. That's a gigabyte So here if each of these levels only occupies a page if I need to translate a single address I only need one L2 page table I only need one L1 page table and I only need one L0 page table So I only need three or 12 kilobytes of memory for those three page tables as opposed to a gigabyte Yeah, yeah, so also with this eventually I could have in my L2 page table it could point to two to the Nine different L1 page tables and then each of those could point to however many L0 page tables So the drawback of this is if you actually use your entire address space This is going to actually waste slightly more memory because we have we're using different levels and We'll see that in a little bit. Yeah Yeah, ideally if you want to waste as little memory as possible all your All your L0 entries should get full first Then as soon as that's full you make another L0 and then you would just have another entry in your L1 that points to that other one and then You could you could be like super Unlucky where the addresses are super spread around and then you have to have a different entry in Like if you have different entries in your L2 then you point to a bunch of different L1s.  So they're only primarily. It's just the physical page number So they can only point to one One huge page table Yeah, so on average most programs don't use 512 gigabytes Which would mean you have a full page table and you need a whole gigabyte to keep track of all the mappings But generally programs don't use 512 gigs Your programs you wrote probably use like a few kilobytes megabytes. Maybe You don't need that much room for page tables in that case So that's why we separate them that Yeah, yeah, so page tables well Primarily only for RAM so we can do little tricks with page tables where if you run out of physical memory Which we'll see way later in the course you can actually move pages to your hard drive and Make the illusion that you have way more memory than you actually physically have on your system But it's just gonna be slower because it writes it to disk, but we'll see that later But primarily page tables are just for mapping virtual addresses to physical ones Yeah, yeah Yeah, yeah, so we just have one L2 page table It can point up to two the nine things and each of the L1 page tables also can point to two the nine things The L0s to the nine things so it's to the nine to the power of three all to the power of three Which is to the 27 so we can still do all the mappings. We just had we just made it more complicated Primarily to get rid of that whole gigabyte page table thing That's the only reason because looking at this Does this look more complicated than what we had before? Kind of sorta would this be a lot slower than what we had before Probably right. So if I just had one page table, how many memory accesses do I actually need to do the translation? One I find the page table entry. I Read it. I'm done. How many memory accesses do I need here? Yeah, three I read L1 I read L2 so I'm taking a lot of penalties just to reduce that size so this is Way slower, so this is three memory accesses instead of one and at the end of the day You'll also have your original memory accesses so To use a virtual address here. You're taking one Memory access if you just directly use the physical address and turn it into two one for the translation Then one for accessing physical memory and this case. I turned it into a total of four so just by doing it I made it twice as slow as Already being twice as slow because it's now four times as slow seems really bad, right? So Don't worry we can cash that so that's this we'll get into that I believe in the next lecture because we'll actually see it in effect Doing allocations of pages because they are fixed size is actually really easy And it just uses a link list or sometimes they just called a free link or a free list So all that means is you divide your memory just into physical pages and then the operating system just Maintains a list of all them so when you boot up your system it would just put a pointer on each page to the next free block and Initially all the physical memory is free and then there's just a link list It is actually really fast to add things To the head or to remove them So whenever you need a new page it just has to Check Figure out what the next pointer in the free list is and then I use that physical page That's it and then whenever I free memory Well one page is just add it back to the free list and then you can reuse it for other purposes So because we have fixed size blocks of memory our memory allocator is dead simple It's just a free list every block is the same as any other block Doesn't really matter because if you're Implementing malloc or something like that which we'll do later on in the course and you have variable sizes of memory that is actually a giant pain and You have to do something way more complicated, but if everything's the same size Dead easy link list so that was our insight to use a page for each smaller page table and Again, this is why there are Two to the nine entries because we wanted each of them to fit on a single page and the rule behind this is well We could extend this as much as we wanted to so for each level Given how many levels we have well level end just points to the page table for the next lowest level So L2 the entry there would point to L1 L1 would point to L0 No matter how many levels you have eventually whatever you get to L0 It's just the translation. We had before which is just a single look up. So yeah Yeah, so in the L2 page table there are physical addresses and that's the physical location of the L1 page table Yeah, and so for this if we wanted to add another level that's easy We would just add L4 L3 to this so we could extend If we added another level to this it would be another nine bits So we would have a virtual address of like 48 bits in this case, right? So we just add another level. It's pretty easy to do, but it's just gonna be slower so on Some CPUs. It's a tall like it is a configurable thing your kernel can set whenever it boots It could use 48-bit virtual addresses But most of them use 39 bits because it is good enough and if we went up to the next Level of page tables, it would just make it slower for no reason and Also waste slightly more space So just to reiterate, I think we kind of got it so the smaller page tables and Page tables in general are just like a raise Same thing. They're not really that special. So instead of like int page table Two fifth or five hundred and twelve which we should know the size of this, right? What's the size of what's the size of an int? How many bytes is an int? Four bytes. So how big is this array? 2048 or two kilobytes, whatever you want to call it. So Other question is well if we access the element at page table at index two or the third integer What is the offset? So the offset is the number of bytes eight Eight, right. So if each element is four bytes or four bytes and We're using it like an array. Our offset remember is just the number of bytes to the beginning So the first the zeroth element would be offset zero starts at the beginning the first element or one Index would be at four bytes because each L four bytes and then index two would be at eight bytes so same thing this This isn't all you have to imagine is that instead of an int there's a page table entry there So as part of the questions you'll be given generally they'll always say what a page how big the page table entry size is or Otherwise you should be able to come up with it if I tell you how big, you know The physical address space is and you can guess at least how big it is so it would need Your page table entry remember when we talked about the important parts of it it would at least need enough room for this physical page number and then probably at least three flags like valid read and write Pass that you know you could argue that you don't need the rest of them so for all of This scheme the size of the page table should be equal to the size of the page size So in this case if I have a page table of 512 elements and my pte is eight bytes Well, that should mean that the size of the page table. It's just the same thing eight bytes times five hundred and twelve So it should be four thousand ninety-six, which is equal to the page size So if this if you're doing a question in this course for multi-level page table, and this isn't true You screwed up and you should probably fix it so that should be the property that always happens if we are trying to fit our page tables exactly on a page and also it should Be the same thing as this the size of the page table is the same thing we have learned for arrays It's the number of things in the array times the size of whatever that element is So in this case the size of the page table entry For the real system. We're looking at right now is eight bytes All right, cool. So let's see how that works in a translation. So if we just For the purposes of not Just writing more we can just consider one additional level so you can just have two levels of page tables So we'll just have an L zero and an L one So now if we have virtual address 3 f f f f 0 0 8 well It's the same thing as our translation. We can argue about the offset again. So the offset is 12 12 bits Which would be the same as three hex characters So I don't have to translate that zero zero eight at the end Otherwise I should probably write it out in binary because nine bits doesn't quite work with the size of some hex values so if I write it out in Hex this would be like a 30-bit number Or sorry if I write out in binary This would be it in binary where I just directly translate each hex character to binary and then on this step I just group them into L zero Or sorry L one then L zero and then the offset So these are the lower 12 bits that correspond to the offset and these are all of the bits The nine bits for the L zero index and then these are the nine bits for the L one index So in this case we also Yeah, so in this case all we would at minimum need is two page tables and Here let's go to it Oops new page So in this case we have what not one one one one one one one one one One one one one one So these were the nine bits for L one Yeah, is that nine now? Okay, so those are the nine bits for L one these are the nine bits for L two I won't write out the bits for the offset because I can just keep them in hex I don't really have to translate them and they were zero zero eight So how we translate something like this well We would be given the highest level page table, so there would be an L zero page table Or sorry an L one page table to use a different color So here is my L one page table. It would be somewhere in memory So it might be on like physical page number seven or something like that You would probably be given it or you could look it up or something like that So it would be in memory somewhere and it would have a bunch of entries So it would go all the way from zero up to 511 Because that's to the power of nine minus one so within this L zero or L one page table This number as the index all months to five hundred and Eleven so there would have to be a page table entry at this index So this page table entry Would probably have something like a physical page number and then like let's just assume a valid bit so right now It could have a valid bit and then it would be physical page number We could you would just be given it. It would be managed. We can make something up So we could just say that it starts at physical page number eight So Yeah, so now there's a question do they overlap so do they overlap? Yeah, so these are the sizes of page So they do not overlap because if our physical page number is seven the actual addresses that represents is Well starts with seven and then for the offset It would start like it's the size of a page. So we have three hex characters. So it would start at 7-0-0-0 and then go all the way to 7x the last one would be F F F Right, so Physical page number seven corresponds to this range of memory Which if you double check that this is 4096 bytes that address range So if I write out physical page number seven its addresses seven thousand to almost eight thousand Right make sense Okay, so that means that if I look into my L One page table and I see that I have a valid entry and the physical page number is eight Well, that means I have an L zero page table Starting at physical page number eight and That would represent addresses, you know, eight thousand all the way to eight F F F So If I need to follow this translation inside here, I would use this number here This in this as my index into this L zero page table So inside of here there would have to be an entry for 511 again because it's all ones and It would look like the same thing. So it would have physical page number and then a valid bit So in order to succeed with this translation It would have to be a valid bit of one and then the physical page number could be something I don't know it could be something like C F Or C a fe just to make it fun and in this case This would be the RL zero page table. So we just replace this So we just replace the virtual page number with the physical page number or otherwise Just slap that in front of the offset. Yeah, sorry Yeah, so so yeah, so zero zero eight is the offset so Here since we are in the L zero page table, that is the physical page number of our final physical address so Like what we had here We would use that as a physical page number and then we don't touch the offset. So we keep the offset the same So in this case, we finally looked it up We figured out that the physical page number was C a Fe and then the offset was zero zero eight. So this is our physical address sorry Yeah, so so this L one page table just points directly to that one Yeah, so this is only two levels of page table. So we only have an L one and an L zero Yeah, so what we did was this was our original virtual address, right? So we took that This is part of the offset that we don't have to translate and then all these bits are 18 bits that in this case We are only doing 30-bit virtual addresses.  This is the virtual address Yeah, so the only real memory that exists is physical memory So we need to change this virtual address the MMU we talked about later That does the translation and figures out where to access stuff It takes your virtual address then takes the page tables Yeah, and then using this it would follow the page tables and figure out that Well following the page tables for this address. I can translate it to cafe zero zero eight and then so Here right your Your kernel is your MMU is using the page table and the kernel is managing these page tables So if the kernel wanted to change in that process whatever Whatever physical memory that that address points to all it has to do is be like, okay. Well, I don't like it being there anymore I'll just change it to I don't know a A B something like that in which case my page tables look like this. I get the address a B zero zero eight and The process your process still uses virtual memory all your processes only use virtual memory Still using the same virtual address, but you can map it to any physical address you really want Well any page you want not any physical address because you don't translate the offset So any questions about that So you might have noticed even with this You can kind of see how it would waste more space, right? so If I had all of these entries Filled with things so say I had valid entries for each of these then Each of those would point to an L zero page table. So there would be essentially Two to the nine entries pointing to different L zero page tables and each L zero page table would take up a page So I would have two to the nine I Would have to the nine L zero page tables and then this case I would also need one times L one page table so if you go calculate the memory of that well each of these page tables is two to the 12 and this is also two to the 12 So in actuality we actually waste a little bit of space Right, so if we just had oh My god is hot in here So in this case Wait Yeah Wait, I screwed up the math. I might screw up the math So here. Let's just follow this line So if we have our 30-bit virtual address and their page size of that if we just had a single big page table Like we were arguing about before well, we would need to the 18 Which is the number of entries in that page table times the page table entry size So that would be two to the three bytes. So we would need what's that? two Two megabytes if we just had one big large page table Well instead if all our entries were full we would have one four kilobyte L one page table Which is just the size of a page and then we would have four kilobyte page tables times One thought or times to the nine So if you crunch the numbers for all that well We're going to waste or Yeah, we're going to waste two megabytes on that plus that four kilobyte L one page table But if we only have a single address, we are translating we only need one L one page table And we only need one L two page table. So we only need eight kilobyte So one of each page instead of having that big two megabyte table So you can see that this gets out. This isn't that bad for like a two-level page table Probably not worth it two megabytes isn't that big of a deal, but once you have three levels. It's a big deal So any questions about that before I have a heat stroke. This is like a prison. All right, cool So here's here's that Translating that again So if we figure out which index at which bits represent one index and then change them to decimal We keep them in hex however you want This is how we did the translation. So we looked up in our L one page table at index 511 where the physical page number was this case it was eight then you would start at the L zero page table starting at Address 8,000. There'd also be an entry where we have our since it's the L zero page table where we would have our final lookup So we have the physical address CAFE 008 All right any questions with that Yeah, so in this case where we just have two levels of page table There would just be one L one page table and then it could point up to two to the nine or five hundred and twelve L zero page tables Well in actuality once we have this so this is our actual system We'll have we'll have one L zero page or one L two page table Then they can point to two the nine L one page tables and then each of those L one page tables can point to another two the nine L zero page tables All right. Yeah Like what is actually doing using them? Yeah, so the colonel is the thing that chooses So you will get to simulate what the colonel does and manage page tables yourself So the colonel's responsibility is to manage page tables each process Right would get its own L To page table and it's stored in this register even so now we know another thing that a context which has to do is it has to change the page table to that process and The colonel gets to manage all these page tables and the MMU, which is like the physical hardware in your machine Uses those page tables in order to figure out where in physical memory and virtual address should map to All right, cool. We can we can do We can do lab Three now so we can play around with some code or we can do whatever so Here's a fun example. Let's see how far we can get into it. So this is going to be our own MMU simulator. So this is Going to do the job of walking through the page tables and that is written for you So it will do the translation of the addresses and in here we can just play with the page tables So in here, I just have a little assert that my page size is what I think it is and Otherwise, I'm just going to allocate page tables. All this function does is just give me a new page So I create a new page. I need an L to page table so in order for that I would All your MMU needs is where to start which is like the root page table So I set a global variable called root page table to this L2 page table Then if I want to actually translate an address I'm going to have to create an L1 page table and then in here I Need to add an entry to my L2 page table so I will add an entry at index what zero and I will create a page table entry from this all this does is figure out where this L1 page table starts and then sets the physical page number in the page table entry so this Little helper function plays with the bits and creates a page table entry for you Then I have to create an L0 page table here. I will create it in L1 I will point to it from index 5 So L1 at index 5 points to this new L0 page table and in this L0 page table I will put something at index 188 and in there I will create a page table entry directly from a physical page number and I'll just call it C-A-F-E so This MMU function is going to just simulate Walking the page tables and figuring out what the address is so if I go ahead and compile this Should be compiled And I run MMU sim Well, it will tell me The virtual address I used and then walk all these page tables to figure out what that Physical address is supposed to be Kind of neat so let us figure out What that is so all right any questions about that translation or steps that it must have taken Yeah Yeah, MMU is on your CPU Yeah, so the kernel would have to know how to set up the page tables that the MMU uses so like this right here Setting up all these page tables. This is done by the kernel the MMU is actually going to use them and How the MMU uses them is all it needs is the root page table to use and then it's off to the races So it will use that root page table and then just walk it down. Yep Yeah, so the question is does 5 and 188 matter in this translation. Well, we can see So if I change this to 187 or something like that and I try and compile it and run it says page fault Because I can't look it up anymore. Yeah, where did I pull these numbers from? so We would have to do the exact same thing we saw previously Except now we have a large virtual address So in here This is the address. We are translating a b c d e f So same rules apply. This is our offset the last three hex digits Don't have to translate that Otherwise we need to write it out in Probably binary because we have to group them into groups of nine So it's kind of a pain So a if we remember my shortcut from last lecture, what is a in binary? 10 10 So 1 0 1 0 that's a so b shouldn't be that hard to figure out because you just add 1 to 10 So it should be 1 0 1 1. That's be right Hopefully next one if we just add another one to that should be 1 1 0 0 so that's C so now If we work backwards and we figure out what our L 0 index is going to be in our L 1 index Well, we have to group of 9. That's 8 That's 9 so this would be our L 0 index and Then here The you know the rest of them are all leading 0 so this would be 0 0 0 0 0 So in here, this would be our L 1 index What is 1 0 1? 5 this would be our L 2 index so this would be 0 and If we go through all of this and translate this well spoiler alert. This is a hundred and eighty eight So that's why the entry has to exist. Otherwise. It's not going to work so if We wanted to make a valid translation. So say We change Let's go the other way So say we wanted to do something like this 180 we changed this from 188 to 189 so In here, we only it should be a page fault again if we want this to map to an actual page What is a valid virtual address now? Yeah, a b D Right, so this should line up. I just added I essentially just added one Here So I just changed this to a one It's just going to increase the hex number by one. So it should be a D. So if I make it valid it should be a Db Wow that so many letters a D a be God a Bddf I know my alphabet. So yeah, see now this address successfully translate so you can see Play with the number you need to follow all the entries all the way down. So any questions from this? Yeah, no, we're good. Okay So The L zero in here our L zero index or sorry the L zero index. Oh like why I increased it by one Why my there we go like why increase this by one? so before When I had something like this, right? It looked it looked like this So that mean we use L zero index 188 So in the code all I did was instead of 188 having the translation. I translated or I made the I made the entry with the translation equal to 189 So in order to get 189 out of this L zero index it just means that this number has to be a one and Now these nine bytes here equal 189 Yeah, if it if it uses all the indexes and it can't follow them all the way to a valid entry It's going to say page fault can't do the translation So that is also why if your process Does Uses random memory that it doesn't have mapped Colonel is going to know about because it will generate like you might have noticed. It's a page fault That will generate a interrupt to the kernel the kernel will see that your process is being bad and using memory It doesn't have access to and then it will give you a seg fault, which as we learned before Seg fault doesn't actually mean anything You don't use segments anymore. It just means you have invalid memory So other fun things we can do what other fun things can we do? Yeah, any other questions about this? Because this also is flexible and gives us the opportunity to really weird things. Oh, yeah core core dump means that it essentially takes a Snapshot of your memory and saves it to disk so you can see what the hell your program look like when it died That's why core dump is Which unfortunately we probably won't see but so other fun things well What happens if I do something like this or what happens if I do I Could do this too, so if I have two entries there and I'm mapping two different addresses Well, guess what? Now suddenly two different virtual addresses mapped to the same physical address Cool, huh? Not cool. I have data races. I The only thing you will have is more fun So Things like this curl can do We'll see that later. So just remember fooling for you. We're all in this together


So, welcome DEF CON 21. Last year was DEF CON 20. This is 21. Welcome. We thought about calling it DEF CON 20 plus plus. So, last year, surrounding the badges, there's always this little bit of panic here. So you guys aren't getting any audio, are you? So this is me saying basically this is my empty lanyard. This was Wednesday afternoon last year right before the conference started and me holding up the lanyards and saying, yeah, where's my badges? Where are they? That's the kind of stress and panic that usually surrounds the creation process with the DEF CON badges. We try and keep pretty tight security because every year we have people that try and figure out where we're going to fabricate. We've had people contact the PCB FAB houses that we've used before and actually social engineered them into making a set of badges for themselves pre-CON. We've had people contact the PCB houses post-CON and get Uber badges fabricated. So it's been quite an adventure trying to maintain security just around the badges themselves. And with a security conference, it's kind of, you know, it's not really malicious per se. It's more of a trophy and a demonstration of skill. But it's, you know, it's fun stuff. So this year, I've had quite a few discussions with Jeff, dark tangent. For those of you who are not familiar with some of the traditions and things surrounding DEF CON, how many of you have been to DEF CON for more than five years? So the noobs outnumber the seasoned vets here by quite a number based on the hands that you guys have been raising. So one of the things that you'll notice with the DEF CON iconography is we've traditionally had a series of three what I call pips associated with us, which are the rotary dial. Those of you in high school, you know what that is, right? Yeah. So if you see the goon badge, the rotary dial actually is a brass knuckle. But so hello. So the rotary, are you getting this? It sounds like when I talk, it cuts out. The rotary dial was part of our culture because back in the day when we didn't have yield internets, we were all using BBSs and phone lines.   So it became a really big part of hacker culture to be able to get free long distance. The smiley face with the skull and crossbones has kind of become kind of ubiquitous with DEF CON as well and kind of our traditional symbol kind of ties into the whole piracy security aspect. And then of course the floppy disk and again all you high school guys out there, you know what that is, right? And then it's a later disk. Oh wait, I mean zip disk. You guys don't remember those, right?  Yeah. Anybody still using one? Yeah. I'm sorry.  It's more just a tradition. We need a fourth. We need to round out the trifecta here. And so I asked Jeff's permission to introduce a new symbol that will become part of the DEF CON iconography. And I did this pre all of the Snowden garbage that's going on right now which is really scary that it happened on the timing. And so I've introduced the keyhole. Now when I went to Jeff with the keyhole I said, I think it's timeless. And it fits in several different aspects of our hacker culture. I said first of all, we've got physical security. We do the lock-picking stuff. The lock is indicative of that. Locks and keys and keyholes are also usually represented to represent cryptography. So I think that we've got the crypto aspect. And I said there are also a lot of times peeking through the keyhole, listening at the keyhole. A lot of mystery novels you'll see will have the magnifying glass and then a keyhole in the guy, you know, up there or you'll see the eyeball peeking through. So I thought that it was appropriate to introduce. And so from this point forward, when we do all of our designs and everything else, instead of the three circle symbols, we will have the fourth. So you guys are really quiet. So another tradition that I'm going to break. Oh, and side tangent.  And he did that so that the same magicians couldn't keep reusing the old crap over and over again. This year with this breaking of traditions was kind of my foray into, okay, I've been doing a lot of the stuff for many, many years for DEF CON now. But my personal challenge is to try and best myself every year with badge design, crypto, game design and all the things that I touch. And one of the ways I'm motivating myself to do some really good things moving forward is to do this as kind of my DEF CON's greatest secrets revealed so that I can't keep pulling the same old stuff out and keep retreading because I think it's a cop out. So one of the things that we also never do every year is we always hold the Uber badge and information regarding the Uber badge back until the last day of the conference on Sunday when they're awarded. How many of you have no concept of what the Uber badge is at DEF CON? Okay, so when you attend DEF CON you get badges that basically say I paid for the conference. They say what level you are and you'll hear us say human and inhuman. That's because the general attendants and populists are referred to as humans and everyone else are inhumans. That would be vendors, the press, the speakers, I'm getting there with the press, just wait. And so you have the human and the human but you also have a very special badge every year that is known as the Uber badge. Now we like DEF CON to be a very interactive conference.  It's like everybody talks about a big game. Everybody is hacked to Gibson. Everyone has trained with Bruce Lee that does martial arts, right? So we like to have audience participation. We have more contests than I believe any conference at different points we have between 40 and 80 contests running. Some of them are incredibly difficult and challenging. Some are just for fun and you'll see them going on as we go. You may have noticed some of the crypto that's involved on the graphics on the floor out and in the program and in your lanyards.  To give you an idea how rare they are, last year we had roughly 15,000 people attend and we gave out about 15 Uber badges. So it's a very elite club to have a black Uber badge. It's more bragging rights in the community than anything. But it's kind of a token of appreciation for people who share or demonstrate skill. But the Uber badge, because it's awarded at the end of the conference, you usually don't get to see them or know anything about them until Sunday at the closing ceremonies. And you'll see people that have Uber badges will often wear them from that point forward. So you'll see some folks that have badges that look like they don't match within the theme of a year. That's probably an Uber badge from previous years. Excuse me, I'm going to grab some water. So breaking with another tradition, I said, hey, Jeff, I want to show the Uber badge on Thursday. And he's like, man, what are you doing to me, Ryan? He's like, you're adding key holes, you're going to want to show the Uber badge, you didn't dye your hair this year, you're not wearing a hat. He's like, the world is changing, I guess. So if you've noticed on your map, there is a room listed as 1057. That is the room that I will be in and I will have Uber badges on display for people to handle and look at. And we'll get more into what they are later on. Before I move forward in that, the final interest, I'm getting feedback here.  So those of you came here expecting an electronic badge this year. This is kind of my, it's electronic but not electronic. I wanted to do a TikTok cycle on badge design where I do a year electronic and a year non-electronic. So this one is kind of faux electronic in some ways. It is a PCB. But the reason I want to do that is it becomes passe.  We started with the Blinky LEDs and we moved up from there all the way to last year where we had a processor with 832 bit cores on a single dye with a propeller chip. So I don't want it to get people come expecting, oh, where's my electronic badge? Because for my competitions, if you know what to expect, it gives you an unfair advantage to those who are new. And ironically, the year that I did the titanium badges that were non-electronic, I had far greater participation by the attendees in the competition than I did last year with the electronic badges. And I asked people that and it appears as though people just don't want to mess with the electronics at the conference. It's a very small subset, about 10 percent. Because if you're not familiar with an architecture or the language or the tool chain for a new chip, you don't want to come to DEF CON and use up your three days here, you know, sitting at a laptop trying to figure that out. So I went to DEF CON and said, you know, one of the really iconic parts of DEF CON is the badge. And we keep it secret every single year until the conference starts. And I go, I want to tell them about DEF CON 22's badge at DEF CON 21 so that they have a year to prepare. And he didn't get back to me for a while. He said he had to think about it. And he said, you know what, let's give them partial information. Let's give them a little bit of information because next year's badge will be an electronic badge. The games will be every bit as intense as they are this year and as they were last year and the year before. But we want people to be able to get exposure to the tool chain and the chip and the architecture. So we're also going to release a monthly blog that's kind of a mini how-to on how to develop or program for those of you who are just straight coders for what the badge will be next year. We won't give you the details and specs on what it does. I had prepared to announce what the architecture was today. However, I was told and it was actually pretty exciting because it's a processor that is not yet released. And I was going to be able to say, hey, we're going to be one of the first groups to get our hands on this new architecture. I've just been told that based on their last engineering run, they're not quite sure they will be able to deliver chips to me in time to get next year's badge produced. That being said, I've got to wait to tell you what that architecture is because if they can't get me that architecture before next year, then obviously I can't do it. So I can either confirm nor deny that. So I've actually kind of set a deadline that by December this year, if that information hasn't been really ‑‑ if they haven't told me that they can source that chip for me by December, then I'm just going to pick a different architecture. And I can tell you that my fallback architecture will most likely be an MSP430 or something in that series from TI. So anyway, secret information, you're already seeing where it's kind of like my doc dump. You guys have like hacked into my system and you're getting all the secrets in my information. So I'm going to have to go back and rethink my security cycle like us. So here on the screen you'll see some of the CAD work that was done for the Uber badge this year. And I normally use Altium for my design stuff, for those of you who are familiar with the toolchain. But I wanted to use software that would be able to be accessible for free to everyone. So all of the badges this year were actually designed on the free version of Eagle. And for those of you who do design work, you know that's like that's in a door over and over again. It wasn't fun. And I found some really cool errors in Eagle. Like there's an error that comes up occasionally that says too many pixels in the Y direction.  It's like a PC load letter. And being a hacker, and it was also in German underneath.  There's not. I still don't know why I got that error because I couldn't reproduce it just by because then of course you start reducing at a time to find out where that extreme is, right? So this year's badge, the Uber badge specifically is an homage to my grandfather. My grandfather was a watchmaker. He told me that when he was in watchmaking school they would basically hand them raw metal stock and they had to make a watch. That included making the screws, the springs, the case, everything. Since this is something I just started doing since last DEF CON, I didn't have that level of skill or the equipment to do that. So I ordered some of the parts preassembled but then assembled those parts for those of you familiar with watchmaking. I couldn't possibly do the hairspring to the balance wheel myself so those came assembled. If you look at the graphic that's on the bottom there, most mechanical watch movements only have five main components and I had this whole cool spiel prepared to show how we could map security and hacking using the watch to move that forward but then I decided I can't share that with you yet because it will ruin some of the badge that is happening this year. But if you go across the bottom you've got basically a mainspring and then your gears to transfer the energy from the mainspring then you've got your balance wheel and your escapement which control how that energy is released so that's kind of like your firewall and then at the end the five and the six are displayed to show you the time. So all of the glass that's on the Uber badge is an actual, they're actual watch crystals on them on the front and the back. I don't know so it's really hard to sleep when you have 30 of these ticking in your room. And I'm getting to the point now where I've just started blocking the noise out because I've been working on these for so many months I just tick tick tick tick all the time. So there's some of the movements out with the PCB on top, one of my desks. Thank you somebody clap. Yeah, they were just a little bit of work. So all of them were hand assembled by myself for the Ubers and that's why I can only do the Ubers like this because there's no way I could possibly get 15,000 badges done for all you guys, sorry. There's a few more pictures and I'm going to leave that one up there for a minute in case anybody is participating in the badge challenge because I thought they might want to get a picture of the code that's on the back there. Geez you guys are quiet. This is AFKON. You know, the people that are new here you're supposed to make noise and yell at me and throw things and yeah, thank you. This is not Black Hat. I mean this is not an infomercial or a trade show. What's that? Are you done? No? Yes? 10 seconds. By the way, the copper that's underneath the solder mask doesn't quite show up in the picture but it does. Some of you may have noticed that on your own badges. There's some... We'll get to that in a minute. One of the other things we did this year more variations on the badge than ever. Up until the time I started doing the badge design we always did here's your human badge, here's your press badge, here's your speaker badge and there was only one human badge. I started because I'm a masochist I guess doing multiple human variant designs and variety and flavor and it gave me more of a palette space for the crypto challenges that I was creating for you guys. So this year there are more I won't tell you how many because that's part of the game is for you to figure that out. There are more human variations than we have ever had. In addition to that there's us doing some of the sorting of badges then to make sure that when we distribute them there was a mixture because one year last year actually the registration desk we're taking the boxes as they came in and of course even though there were multiple designs they came grouped together so all of a particular badge were going out like on Thursday and all on Friday and it prevented people from moving forward in the game because they couldn't find the other variants. So we actually hand mixed up all of the badges this year. So like I mentioned before we have these things we call non-human badges. You will notice that all of the non-human badges this year are in fact face cards with the exception of one. That would be the press badge. The press badge is a deuce.  Oh deuce, I get it. It's spelled differently. So the one on your left is the vendor badge that's why he has the bitcoin. The one in the middle you got to figure it out but the base behind him is a G and L base. So I added two new card types because no poker game would be complete without the ability to get the hack hand. So I introduced the hacker card and the crypto card in place of the two jokers.  So the intent there was to add some variation to other card games and things like that. By the way, those of you who have purchased some of those decks they came with two hackers in them because they did a misprint because everything I do seems to get screwed up in production somehow. We actually got the crypto cards printed and overnighted and we have them. I'm going to have them in my 1057 room. So if you bought one of those decks bring it in there, show me the deck and I will give you one of those crypto cards. So there's your hack hand. Is that one? Yeah. Limited number. I think we made like 2000 or something like that so there's not very many. In fact if you guys like them we may just do a blank run for next year or whatever. So big things in store for next year. So I've already been talking with Neil and we've been talking with DT. We think we've got a theme picked out. I won't release what the theme is but I was very excited that Jeff actually gave me permission to tell you guys that we're going to release information about the badges and it feels kind of wrong and kind of dirty to be breaking tradition like that that we've been doing this for so long. But I also think it's time to move forward on some things. And just like in this security field if we don't continue to innovate and move forward we'll stagnate. And I think that's starting to happen in some areas. So I really think we need to push the envelope and I hope that's what we do here at DEF CON as well as you do when you go back to your respective schools and places of business. So, well, thanks. People are finally clapping for me. Yeah, come on. Innovate.  Come on. So if you take a look at your badges some of them, not very many but some of them are four layer boards not two. And I won't tell you which ones they are but they are the ones generally the general populist badges are a two-layer PCB with exposed copper and a solder mask and we're designed in eagle the artwork could be done as vector art in free program like Inkscape. So technically the entire process of fabricating your own creation which is what I'm hoping to inspire you to do those of you who've never even thought of it you can go download free tools basically crank out a circuit board like the one you have around your neck a circuit board which is what they are they're printed circuit boards, PCBs maybe there may be other things it's copper you can solder to it just because it doesn't look like a pad doesn't mean it might not be so anyway you guys like them?


Sustainable food and agriculture are at the heart of the 2030 Agenda for Sustainable Development. One of the ways of achieving the Sustainable Development Goals is through Agroecology. Agroecology helps ensure food and nutritional security, reduce poverty, mitigate climate change and restore ecosystems by promoting farming practices that increase crop resilience and biodiversity, sequestering carbon in soils and improving local livelihoods. FAO and its partners contribute to the global efforts by providing training and policy support on Agroecology. Today Agroecology has reached 3,000 villagers. In the next 5 to 7 years, we plan to reach all 6 million farmers in the state of Andhra Pradesh and cover the 8 million hectares of land in the state of Andhra Pradesh into the Agroecology program. We are experiencing tremendous benefits through Agroecology, better livelihoods and better health and better health of our soils and more biodiversity in our fields. Farmers are able to reduce their costs of cultivation, reduce their risk and increase their yields and also the price realization. The most important innovation in this program has been the farmer to farmer extension. So the best practicing farmer or the champion farmer is the most important trainer. And we are very thankful to FAO for the concept of farmer field schools. This innovation is helping us immensely in making knowledge dissemination not so much as a top-down approach but where the participants are discovering together the various agroecological principles. The second major innovation is the extremely critical role played by the women self-help groups and the women self-help groups in the state of Andhra Pradesh have been nurtured over the last 20 years. So they are very mature and very experienced collectives. So through these women's collectives, the Agroecology program is receiving tremendous boost. We have a lot of benefits from the Agroecology program. We are able to grow the Agroecology program in a small field. We are very lucky to be able to grow the Agroecology program in our market. We are able to grow the Agroecology program in the market in a small field. We are very proud of it. We are able to grow the Agroecology program in a small field. We are able to grow the Agroecology program in a small field. We are able to grow the Agroecology program in a small field. Agroecology has the potential to accelerate the transition to sustainable food systems and contribute to ecosystem's restoration.


Welcome to Jalassa News, taking top stories in crypto and bringing out a bite-sized piece as today just as the thumbnail suggests there is a upgrade coming forth with Ethereum 2.0. It's going to happen tomorrow and we're going to take a look at what that entails and why it's a pretty big deal for validators but it is just one step in the ever expanding steps of getting to Ethereum 2.0. I'll also take a look at a major bank is urging Ireland to increase or up their crypto regulation and what they want to do there as opposed to what's going on in the U and finally we'll take a look at a trillion asset manager is getting ready to start trading cryptocurrencies as if the news just couldn't get any better so we'll do all those things but first take a look at what's going on the market so today another pretty good day I'll be honest with you it's a Tuesday beautiful day here in Puerto Rico and we've got 2.6 trillion for the total market somewhere around there 2.63 2.68 depending where you look at but the Bitcoin price hasn't really budged it's been around 625 621 somewhere around there and it's going pretty good in all honesty October is looking like that rebound case I expect again fireworks November December and we'll also take a look at real quick just as far as like what we're doing as far as like the last 24 hours and there's been some pretty big gainers I'll be honest with you Ethereum well not in the not in the top 10 or so something like that but again Shiba Inu leaving the charge at 15% Terra 9% 6% for Avalanche 12% for Polygon 15% for Cosmos I mean if you're making some pretty big gains they are outside the top 10 but it always goes in this fashion things flow into Bitcoin then they flow into some more of the altcoins down below the top 10 and top 20 and then top 50 and then top 100 and then as things get rocky they go right back into Bitcoin and it's just a cycle that repeats over and over again also we're using trade the chain for sentiment analysis so if you want to take a look at the trader side of us we'll take a look at the projected range and with 90% assurance we're looking at a next hour between 5% to 2% for why don't they look at Bitcoin cash maybe that's going to be a big pumper go chain I don't know what that is golem algorand I can see that engine coin and reave in the sandbox so something definitely to take a look at also if we want to take a look at what's going on the market as far as the price action here we have the four hour candles and just so you know let me put this in so we actually see everything I want to see as far as the ISI we're right in the middle and it seemed like a couple days ago throughout the weekend at any time it would actually flow down to around 60,000 it just got picked right back up by the bulls and it seemed like they would not let it go to that 59 spot and then of course it rises up we can see that everything's in the Bollinger Band range the MACD's Divergent Convergence of course it's crossed over here and now we're getting ready to cross over again but I think the floor is around 61.5, 61.2 somewhere around there even 61.9 you take a look at here so I see us trading a little bit sideways and tell us some more action comes in where is the money going to come from we'll get into that in a second and then lastly before we take off to the top stories the this is the ETF the BITO for pro shares and again just trading sideways not much action but keeping it where it's reasonable not taking huge dips to people were like ITF is a failure just awful which I don't really think it's that big a deal anyhow I mean it's a good it's a great thing that actually got approved don't get me wrong but as far as like where to invest I would not be investing investing into an ETF futures for Bitcoin I rather hold on myself and then lastly as far as the Valkyrie ETF that one's doing pretty well too trading sideways a little bit of peaks and values so normal day SEC approved Bitcoin ETFs doing just fine no massive manipulation now Gary it's time for you to approve the spot ETF all right so that's what's going on in the market let's get to today's well top story for me real quick I made a little error a little mess up as far as unstoppable domains yesterday I was talking about that unstoppable domains was going to have their dot wallet you were able to buy instead of like having a dot crypto dot zil dot coin now you can have like a dot wallet so instead of having that big long hash for your for your cryptocurrency address you could just say just send it to rob dot wallet and there'll be and you can send whatever most cryptos as you can send to it and I said it was actually went live yesterday sorry it went live this morning there was which I'm glad I actually to tell you yesterday because there was so much volume that it actually crashed the website but the website is up and just so you know if you want to get into that links in the description so instead of having somebody go hey what's your address oh it's 0x blah blah blah and having them email to you say what's your address it's air johnson dot wallet or whatever or joe blow dot wallet and that's it so that's what you got anyhow so sorry about that little uh foobar our little error so let's get into the big news e2.0 so real quick um this is an ongoing process and um just like we you saw in the title in the thumbnail this is big news I think it's big but it's not like the end all be all this is a long process for Ethereum I for one I know people say uh Robbie just a big shill for Cardano that's true but on top of that I'm also a big shill for Ethereum too because on this channel I'm pretty biased and everything I talk about is exactly what I own so I own a lot of Ethereum actually one two and three my portfolio Bitcoin Ethereum Cardano so uh it's not like I don't like Ethereum I just think it's got its air it's uh it's problems and you know everything's got its problems I think they'll fix it at some point but the question is when we'll hear is a step in the right direction so what do we have here so I'll tear upgrades set to activate on Ethereum mainnet they say this month that actually it is tomorrow this is an old article October 5th but uh the upgrade represents a low stakes warm up to prepare for the beacon chain we'll get that in a second developers and client teams for the coming merge we'll go over all that stuff so this is what's happening the upgrade represents low stakes to prepare beacon chain developers and client teams for the coming merge when Ethereum will transition from proof of work to proof of stake everybody's waiting for this but in all honesty the Ethereum foundation really has to it's like changing the engine while you're going down the highway kind of tough to do because everything's in full motion and that's what exactly what's going on it will provide the beacon chain with an increase just one part in slashing severity and cleanups to validator rewards so slashing severity if you're a validator and you're not aligning long enough they will they have these slashing rewards or if you do some kind of like unnecessary type of actions then they can slash your rewards used to be 0.25 now it's going to be 0.5 so it's a big misstep if you make any errors as far as validators anyone operating a beacon node or validator is required to update validators who do not update won't be able to participate in the new consensus and there's more information how to update known validators here i am not a validator i did not stake my Ethereum it was beyond what i wanted to do and want to lock it up for that long but people are making pretty good uh pretty good money just uh you know staking it but there is that part and then just so you know this is what validators can expect after this upgrade which is tomorrow october 27th so real quick just so you know that uh this is amazing to me the network participation rate is almost 100 for for this part right now uh totally staked almost 16.3 billion worth and here we go currently fully inactive validators lose roughly almost 12 percent of their staked ethereum after the upgrade they lose about 15.4 percent and again just like i talked about as far as like uh the slashing but the network the malicious behavior such as double sign or double proposing blocks will good find half an eth that's a lot of money after the hard fork activation instead of just a quarter eth which is still a lot of money i'll be honest with you as far as uh getting um reprimanded for things that you do so that is uh essentially what is going on so voltair or excuse me all tear not voltair that's for cardano all tear is the upgrade for ethereum and that is going to bring us into closer to the merge what are they talking about this is what they're talking about so just so you know these are the eth2 upgrades this is from ethereum.org i will link this in the description so you can see it so the beacon chain is already there uh that's already live uh the first eth addition of the ecosystem beacon chair brings staking the ethereum the groundwork for future upgrades and according to the new system the merge and i want you to notice that the timeline here estimate 2022 so i know people talk about like it's right on the corner it's going to happen those people are incorrect it's going to take a long time and uh it could be q1 q2 of 2022 and then of course for the next one shard chains uh that could be at the very end so the main net ethereum will need to merge with the beacon chain at some point because right now you got proof of work and proof of stake they need to bring them together this will enable staking for the entire network and single the end of energy intensive mining then when we get to the shard chains it'll expand the theorem's capacity to process transactions through our data shard themselves will gain more features over time rolled out in multiple phases so crypto i know some people look at crypto and they go this is just you know big huge get rich type scheme and it's not it's really it's the longest play it's a long play in a very short time i hope that makes sense because if you actually take a look at like traditional markets that's a really long play for some for some corporations and businesses but for cryptocurrencies the the projects that have a lot of staying power and lasting power they have a roadmap that goes out years into the future and they're doing a lot of great things and trying to bring things together we're just in i know people say we're in the third inning and fourth inning in all honesty i think we're still in the first or second i mean there's so many things that need to be done and haven't been done so that's what's going on with a theorem 2.0 let me know what you think in the comment section let's move on to our next piece these will go fast major bank urges ireland to uh to get going as far as uh cryptocurrency so bny melan urges ireland to adopt crypto rules before the EU regulations this is what's we got going on so reps and first of all who's bmy melan uh bny melan we actually talked about this a couple months ago bny melan to offer bitcoin services and bny melan is one of the oldest banks in the united states i think they're actually in the world correct me in the comments the bank of new york melan nation's oldest bank so there we go nation's oldest bank said thursday will begin financing bitcoin other digital currencies it will eventually allow digital currencies to pass through the same financial network it currently uses for more traditional holdings like us treasury bonds and equities interesting just like all the other smart banks that are doing things but who cares this is why we care it's because bny melan has 2.3 trillion assets under management that's why we care if these guys had like we got a couple million assets under management i wouldn't be talking about them oldest bank old money some may say smart money but they got a lot of assets under management that could flow into our market and that's why this is a big deal but what they're trying to say here is like look ireland we need you to uh step up and actually put forth what you want to do with cryptocurrency and not leave it to the EU if the EU comes in and does a blankets uh regulation it's not going to be good so this is what bny melan say they go look while you recognize that the european commission's crypto asset markets proposal aims to create a separate regime for assets crypto assets that are european level given the time frame for this legislation action to come into effect the national regimes quickly begin to fill up the gap with their respective jurisdictions and we believe ireland should follow suit so then bny melan expects new regulations come into effect in 2023 and one of their examples is if you can either wait for EU or you can do what the germans did we just say you know we can do this we can bring forth as far as crypto and we'll make our own regulations for our country EU you can have a great suggestion but this is what we're going to do and then lastly this was actually from ireland they said given the accelerating change happening other jurisdictions and to meet the changing needs of clients for digital assets we would be happy to have a clear and comprehensive strategy to create an ecosystem of assets and i think it's a good point to make that first of all it's kind of amazing to me the banks are coming in and saying you guys need to get regulation because you don't want to be like you know some other countries remain nameless that really can't get their act together get things done now until the union comes in and says are you EU and says do it this way you're not going to like it get it going before they do it and then lastly i didn't mention this this little sentence right here this is i think the biggest part the importance of securing a talent pool in the country's crypto and blockchain space and this is what bny melan told the irish legislature or the people in charge said look if you want to get this going you have to first secure the talent because this is going to be such a big thing and the talented people that are in blockchain and really know what's going on they're all being snatched up by big companies and entities so secure this net worth now because the most important thing you can get is the people that can bring you into the next stage so let me know what you think about that from the comment section let's move on to our last piece which is pymco so pymco uh another join assets that are management and i'm not going to read the whole article because it's kind of boring but it's it's another this is amazing to me it's just another asset manager that says we want to get into crypto which seemingly this is like every day this is actually five days old i don't care about this part what i care about is this last sentence right here actually this was from where is this pymco's chief investment officer daniel ivison nailed it it says here and this is amazing that i actually admit this but he's right he says you have to understand decentralized finance because it will be disruptive and it very well may disrupt our industry in our business in particular so this is the first time i have ever heard anybody in these type of institutions go you know what defy is a big thing and we need to get on board now before we get blockbustered and i just thought it was a resounding happening that's going on in our market so look that's what's going on there's nothing but good news out there i'm pretty happy about how things are progressing but let me know what you think in the comment section but that is it so if you stuck with me all the way in first of all thanks i appreciate it if you like today's video give it a thumbs up consider subscribing things are going to accelerate more quickly over the next two months so try to get as much information as you possibly can that's it for today so thanks so much i appreciate it see you in the next one


S... That's trunk! A couple of months ago I took a look at some Super Nintendo games that are tough to categorize because their gameplay spans a couple of different genres. And one of those games was titled Ultimate Fighter. It's an ambitious game that tries to blend traditional side-scrolling beat-em-up gameplay with boss fights that were presented like how they'd play in a one-on-one fighting game. It's a great idea, but the game itself is pretty lackluster. Thankfully, Dragon Ball took up a similar idea on the Gameboy Advance and delivered a really solid game in 2004 as Dragon Ball Advanced Adventure developed by Dimps, who also worked on the Sonic Advance series.  B is your regular attack, but B while pressing up also deflects projectiles and bounces bombs back at enemies. You can also roll the D-pad left or right in the middle of a combination attack and do some cool stuff, like toss an enemy on the end of your staff. That's always fun. A jumps and A plus a direction on the D-pad will perform a wall jump, and you double tap left or right on the D-pad to run. There's also air attacks that differ based on what direction you hit the D-pad and where you are in mid-air, sort of like in a game like Turtles in Time. The L button performs a special attack, usually involving Goku's staff, and these attacks are tethered to the keymeters you see in the lower left. When you've built up two of these, you can pull and press R, and the more keymeters you accumulate, just from beating up enemies, the more powerful your attack will be. It's pretty dang fun to use, considering four keybars means you can do a full-on Kamehameha wave. The way to earn extra keybars is by finding these doors that are hidden throughout various stages. Some are easy to find, and some not so much. Once you've obtained a few, the easiest way to build up your keymeter is through combos, and those are as simple as it gets in this game, just execute as many consecutive successful hits as you can. There's no crazy killer instik style stuff going on here, although the game does allow for juggling, which is always fun, and that brings me to the fighting mode. Eventually, when you finish each long level, the game narrows its focus to a simple one-on-one fight versus whoever, and you'll fight all sorts of characters, everybody from Yamcha to Krillin to Giren, Nam, Jackie Chan, you get the idea. These fights are a lot of fun, because they're really fast-paced, and you can launch your opponent into the air and hit all sorts of cool moves and combos while keeping in mind that your enemy can still counter. It's just super satisfying to be able to launch someone into the air like this and then spike them back into the ground. I think the excellent sound design has a lot to do with that. There's other game modes here, too, like these flying Nimbus stages, where it's the same sort of beat-em-up action, only there's no platforming.  All these game modes are tethered together on a world map screen, so you can revisit certain areas, which is nice, because there's tons of items you can collect as well. There's the key upgrades, like I said earlier, but there's also upgrades to your health, your staff, and all sorts of other stuff that pertains to the story. Speaking of which, the story mode here is just a streamlined version of the show, starting with Goku meeting Bulma up until the battle against Piccolo. There's 15 long levels and a ton of boss fights, but I will say, if you're playing this one for the story, you may be a bit disappointed because it's really rushed through. Still, the game rewards you for completing the story mode because it unlocks Krillin as a playable character. You also unlock what the game refers to as extra mode, where you can go back and play individual stages and try and collect every item and unlock every red door, which further unlocks a few mini-games you can play. Sounds kinda lame on the surface, but when you find the portrait of another character behind one of those red doors, that unlocks them as a playable character for that stage, so fans of the show should dig that. There's eventually 28 characters to unlock, and they're also available in the game's one-on-one fighting mode as well. For as much Dragon Ball Advanced Adventure has going for it, there are some pretty noticeable flaws here, the most obvious being the pacing of the regular beat'em up stages. These tend to just drag on and on, and while the combat system is fun, there are times where the game will actually stop your progress and make you beat up the same 5 or 6 enemies before moving on, plus enemies respawn like crazy. I'm talking like Ninja Gaiden NES type respawning, it just gets old after a while. So yeah, Dragon Ball Advanced Adventure makes a heck of a first impression. First, you'll notice how great the game looks, then you'll notice the fun combat, platforming and sound design, and then you'll notice how repetitive it is and the annoying enemy respawn rate. But don't let that sway you, this game still has a lot going for it, and it's one of those rare licensed games that's worth checking out even if you don't care for the Dragon Ball series. And fans will definitely enjoy this one, even if all you're interested in is the one-on-one fighting mode. You can play that on its own right from the main menu. The game only got a release for the Game Boy Advance, and it isn't available anywhere else at the moment, and the cartridge is a bit pricey at around $40, so this is another one you gotta play anyway you can. And I want to thank you for watching, and I hope you have a great rest of your day.


Westmere Group with a message for their moisture and the war of a gage. We have a report of a fire near the core of the moisture and the war of a road. Could the war and the maroon of a gage please turn out as soon as possible and any private units in that area could be also please turn out. That was Jonathan Coot, so comms officer for Westmere Group, putting out a call for a fire call for Westmere Group with a call for private units. Jonathan runs one of the seven sub bases within Westmere Group and every fire during summer will get that call for private units. My name is Bernie Fred, I'm the Operations Manager for District 16 and we're here today with Westmere Group which is almost the spiritual home of private units. To talk to the group officer and the DJ is about the importance of private units and how to see if they can support the group and other groups around the state in making sure that they're there for the long term. I'd like to welcome the new group of Westmere Group and Westmere Group covers the power of million acres of predominantly farmland and grassland from roughly the edge of Ballarat right through to the rambians. We have a very big private tanker network consisting of about 400 private tankers all up. So really, private tankers are the backbone of our group. A lot of them are actually private tankers which is very important to our group and they're still coming on board it, they become available, private landowners are going by them and a lot of others are just trucks off purchase to set up themselves. So rather than men having to get in their cars, come into camp, get a truck and go back there, you've got a whole fleet of trucks at the ready, in panic or at properties with people close by. Absolutely and every brigade has a number of private tankers. On a total 5N day we'll run a scare at 10 o'clock in the morning and the first thing that each captain has to do is let the comms on and the group know how many private tankers and what are their lights or heavies are available to that day. So as we know it's a total 5N day to come to the law and Anthony Hurd will say okay we've got 10 lights and 25 heavies available today and that's on top of the sea. They're all crude, ready to go. Bearing in mind that our group is predominantly cropping down at the agriculture, there used to be a lot of rising amounts of money cropping so we're right now summer months with a lot of machinery in paddocks, a lot of heavies double lows, hell of a flyer and for every landowner there's got at least one private unit. Okay I'm here with David Allen from Warndew who is a deputy group officer with the West Mead Group. We've already heard from right about the importance of private units to first attack. Now West Mead Group do an awful lot of roadside burning and protection of their community. So Dave what is your private unit's duty? They're an integral part of private burning, burning the roads rather than burning the West Mead Group burn about 480 kilometres of roads every year and at my brigade Warndew we burn about 60 to 70 kilometres and the reason we burn the roads is fuel reduction primarily but also ecological benefits and another big added benefit is the training value for young or new firefighters. So the use of private tankers is really important to make all that happen in an easy and seamless sort of operation. Here with Anthony Heard, Anthony's the captain of the Law Review and a pretty clean member of the West Mead Group as well. Now Anthony is a haters in CFA, I've got a bit of a view that private units are rusty farm trucks generally run by old man in shorts and telly-telling hats. You've got a very different view of that. Probably couldn't be any further from the truth there Bernie. Apple Law really conduct an annual unit inspection where units of pumps are tested, people give their trucks a run so general road work in this sort of things are looked at. All the trucks have a UHF radio in them so there is communication with the group. So when fire calls go out over the group command channel people have got listening sets in the trucks as well so they're getting updates. So people know what's going on in the fire ground so they can respond to calling. We've heard from the West Mead Group people about how important they see the private units are. There's a couple of brochures here operating guidelines and the checklists for private units. If you need more information on private units go into your district headquarters and you can get those brochures. In closing, critical that we are able to manage these private units. It does create a certain risk for the controllers at fires but the benefits far outweigh those risks providing you take the time to engage them. Make sure they're part of your comms plan, part of your incident structure and remember everyone needs to go home safe. Thanks very much.