I used to program professionally C-64's in the mid 80's, doing, you guessed it, games, or graphics simulations! You missed one really cleaver trick we did. The C-64 only had 8 HW sprites. It also had the ability to trigger an interrupt at a certain scan line as it rendered. So, given the size of the sprite, the speed of the machine, the time to switch sprites etc, we had 3 sets of 8 sprites, for a pseudo total of 24, 8 in the top third, 8 in the middle and 8 in the bottom. It did take careful management, and it was not suitable for all games - things would start to flicker then the overlaps got too close. Oh, and one more thing, these were tied to the scan rate/frequency of the display, so US NTSC was 60Hz, 30 frames a sec, and PAL was 50Hz, 25 frames a sec. So you had less time to do things in the US... Ah the joys of small memory sizes. Bank switching could only get you so far! And the last game I downloaded was 12Gb!...
As a hobby programmer I was pretty screwed, since I only had the C64 basic at hand. The possibilities were sooo little... Just last weekend, my son used Scratch to programm "Space Invaders". Within one weekend he got way further than what was ever possible for me on the C64. I was clearly born too early :-)
@@FetterCheckerchef You just had to learn 6502 assembly back in the day. It might not be for everyone, though. A contemporary vintage alternative was _Garry Kitchen's GameMaker_ .
This was an awesome video. That pixel art at 3:25 actually completely blew my mind. The artists who were able to make such detail with such a limitation had to have been on another level. I seriously couldnt imagine how hard that must be
I did them on the MSX. I was wondering how many people coming here already new this stuff but clicked on it anyway for nostalgic reasons, you confirmed my suspicions :). Now i'm building a synthesizer that runs on webgl2 in the videocard to make sound for fun, guess i haven't changed.
the sinclair spectrum did not natively support spites, although it did have UDG user defined graphics, but no sprite control at all that would associate with real sprites.
Very fascinating. I was born in 2003, and I’ve been making games using GameMaker 2, which gives me the luxury of sprite and sound editors. But my dad would always tell me that you had to do absolutely everything through text back in the 1980’s. I knew most of the limitations before watching this video, but some of them were quite interesting and shocking. I’ve always loved old games, and this just shows how much effort was put into them. I guess it’s time to go pop in an NES cartridge and wonder how they managed to pull it all off.
@@radicalthunder5740 did you have to say that you chould have just ignored tthe comment Also you should have got yourself a pfp before saying "Booorring"
4:26 _But the Machine rewards you for your sacrifice_ PRAISE THE MACHINE ༼ つ ◕_◕ ༽つ For it is kind and fair to us filthy humans! *_*makes offerings*_* *_*bows down before golden Machine statue*_*
Funny, just watched this 7-year-old video. You have learned a thing or two about filming, framing, and editing, that's very obvious. The content is presented perfectly and stands up today. IMHO.
Anders Kaare being an old(er) guy - : ) - i remember writing raster interrupt routines on the c64. it really opened my eyes to how fast electronics worked. it was really amazing, at the time.... : ) thanks for the video!
bill rowland , actually its rather fantastic to think that the 6502 processor was "good enough" for many systems for almost 15 years or so. A 1 MHz processor coupled with some decent display and sound hardware worked brilliantly. How long does a generation of processors last today in comparison? :)
bill rowland Were you one of those that literally spent hours padding the H-blank with NOPs to make sure that it happened in the border? Only to have it ruined when a hardware sprite crossed over it, and pushed it over into the next line... at which point you'd cry. :D I really miss being able to switch border colours to see how much raster time your routines took up, it was mesmerising watching all the pretty colours go up and down and up and down. :)
YouTougle , I still do that when I develop C64 games. :) - A good sprite raster routine will be able to keep track of which raster lines are touched by the sprites and hence you can adjust timings accordingly. - Although not covered in this video, the fact that the VIC-II graphics chip and CPU shared the same bus required them to share it and esssentially having less cycles available per raster line. Which is why its best to turn off the display completely in the VIC-II before doing something computationally heavy to have more cycles available.
It's all about optimization, but I guess it's better to work on improving the hardware and making things easier instead. It's power and comfort vs. efficiency, and efficiency can't win that battle since we are humans.
Yeah the old starwars movies were better off because of the limitations they had. I have many mental limitations as in im stupid so maybe im actually really awesome.
Alen Mustlovski That's not how it works, sorry. If you are stupid, then you are just stupid. It's just that when you are limited, you need to figure out and find new ways of doing things, and this effort is what raises ingenuity.
just that you can't do anything with 'modern gaming pcs and smartphones' due to them keeping everything secret, and it's not worth trying all too hard because that hardware will all be broken 2-5 years from now due to bad quality production anyway. by the time you have reverse engineered let's say a samsung-S8 to the point that your code can actually DO stuff on it they already have the next model which is completely incompatible. :P so that's pretty much a dead end street. something much like a nintendo however, you can just build in your garage. out of transistors if need be. and therefore is not an ending path.
unfortunately, more than enough :P and it's time to take it back to the physical quality standards it all had before. rather than just 'speed' and flimsy disposable crap all over the place.
hardware should always be easily repairable, built to last, multivendor, fully documented, and provide software compatibility on the hardware level without 'drivers'. only then can one archieve sales numbers that surpass the atari 2600 and c64. (although for the first, it wasn't on purpose that everyone started making them lolol ;)
time to stop trying to make a buck on selling the games and start making a buck on selling the computers again. for periods of oh eh 40 years in a row. while deliberatley encouraging competitors to make the exact same thing to grow the platform. long term planning. lets others write the games.
So fun to watch, I remember dealing with those limitations, and I'm glad you've explained it in such a way to give props to the artists and designers and devs and programmers who had to deal with all this.
+komodosp Yea, my parents were too cheap to buy me that expensive graph paper just to draw on. They'd give me a stack of thin dollar store printer paper and say, "Use this instead."
I really really really really, love this channel, when I was young I wanted to be a 8 bit programmer, these videos make me smile, with all the nostalgic information. 😄😄😄👍
JanetFunkYeah It’s because when your laying in bed. Here’s my times 11:25 AM (11:25) wake up 12:00 PM (12:00) go on computer 10:50 PM (22:50) get off computer 11:00 PM (23:00) pee on my kid 11:10 PM (23:10) go on iphone xi 3:30 AM (3:30) Go to sleep REPEAT
Really interesting, yeah! Makes you glad that game development is comparatively simpler to get into and work with nowadays, without having to worry so much about the limitations of the hardware. Thanks for the video!
I really wish I'd learnt coding back in the day, when it was about genuinely understanding code at the lowest level-basically understanding the 1s and 0s as it were. I think it really would be helpful to me trying to make games today.
I took a class that touched on BASIC back in 1987 I was instantly hooked. "I have to tell it everything-?" But having some idea of what's happening behind the scenes, subroutines, calls to resources- does empower one.
inceptional Programming in assembler language was good fun, but the concept of shadow RAM was a brain killer. When I think of the fun of trying to lever every available byte out of the C64, it was truly satisfying when you managed it. Redirecting the display list on the fly with self-modifying code, oh the fun we had. :DI still have the greatest respect for the guys (and girls) that were the true gurus of that time... they managed to make the seemingly impossible, very possible on a regular occasion. I remember the first time we saw Hawkeye's static background behind a smooth scrolling platform layer on the C64... pure genius. Borderless displays on the C64, remarkable. Multiplexed sprites = mind blowing and when you had multiplexed overlaid hi-res/multi-colour sprites, things got truly spectacular.
This is my favourite video in the whole UA-cam. I come back to watch it every now and then. I, too, have spent tons of hours drawing sprites on graph paper, as a kid.
This is still one of my favorite videos of all time. Especially with those demonstrations of beautiful artwork made with such hardware limitations. Its just so fascinating how people were able to figure this out and work with it to make art that the original creators of the technology probably didn't even think was possible.
The fun part is, the NES only has a little over 2k of dedicated video memory, but manages to look much more colorful than the home computers. This is because the tiles themselves could be stored on a separate ROM or RAM chip inside the cartridge, so it didn't take any RAM away from the CPU.
@@nugget6635 The Famicom version of Castlevania III is a good example of this. The cartridge actually had a specialized chip that allowed it to make use of the greater number of sound channels offered by the Famicom
When I hear people complaining how modern consoles don't have very long life spans I like to bring this up. The NES basically got to cheat fate, due to the nature of cartridge based hardware and the growth potential of technology in the 80s. It couldn't be reproduced today even with cartridges, being the quality of difference you could cram onto cartridge chips wouldn't be nearly as noticeable on modern hardware. Vanilla NES hardware hit its wall with SMB1 in 1985, yet mapper chips effectively doubled the console's lifespan.
@@mresturk9336 Hardware in cartridge is totally cheating. It's like selling a screen and then selling "games" as individual computers to connect to it lol
@@jatoxoyeah i do agree with that,just imagine you came up with a console wich is not all that much powerful then your competitor’s console systems,BUT you wanna convince your costumers that your console is waaay more capable then that of the rest so what you gonna do,you sneakingly gonna add extra chips in the cartride for extra ram and rom,better graphics and sounds,and you will trick those pepless that way, The nes tricked us because for what we didn’t know for years that the stock nes couldn’t handle games such as mario 3 or zelda oh no,as it turns out,our beloved nes became much weaker then we ever tout it was,hack we didn’t know that some previous generation systems were in some cases more powerful then the nes,for instance the atari 5200 did had a 256 colorpallet and it had more ram then the nes,the intelevision did had a 16bit cpu, So the stock nes was not halve that powerful as those commercials did make you believe, Same thing with the snes,nintendo did sneakingly used chips inside many of their games,so we didn’t know that the stock snes couldn’t handle mario kart on it’s own,it couldn’t handle supermario rpg on it’s own etc,,,, Same thing with the gameboy,for years we didn’t know that the stock gameboy couldn’t handle supermarioland 2 and wario land etc, Because the gameboy also needed an extra chip for it, So into conclusion those terms from their commercials like ‘now you playing with,super,portiblor (normal) power were just BULLSHIT. eventrough it did work despite games with those enhancement chips inside them did became more expensive,it just didn’t hold back and stop people just buying it,they just bought thrm anyway,,,but still,,
The very nice house is drawn using normal highres bitmap mode allowing two colours per character cell as the video explains brilliantly. The C64 also has character mode where you can make custom character sets of 256 custom characters (taking 2kb of memory). But in that mode you can only have one colour per character cell and one shared background colour for the whole screen. Of course you can use multi colour mode to get 2 pixel wide "pixels" also shown in the video. But still in highres character mode there are some nice possibilities to create fantastic graphics on the C64. You can change the character set anywhere during the screen redraw, enabling you to have several character sets as long as you split them vertically. So many games would have one character set for the game area, and another for the status/score area. In addition you can use the same raster interrupts (as they are called) to switch background colour anywhere too (as well as border). You can also change multi colours as well if you use that mode. Finally another trick that is often used is sprite overlays and underlays. You can control whether sprites are shown on the top of the characters or underneath - so with some smart use you can add extra colour and detail anywhere with these. Furthermore, sprites can be stretched vertically and horizontally by 2 - so instead of covering 24x21 pixels they can cover 48x42 pixels. So with the 8 sprites available in the C64, you can cover the whole 320 pixels width of one set of raster lines equal to the height of the sprites. And then using smart raster routines you can swap out the pointers of the sprites anywhere after the last line of the previous sprites, essentially enabling you a "sprite bitmap" to cover the whole screen. Very few games went to this extreme though, but today effects using sprites and character mode is used heavily in demos and a few of the newer homebrew games. Character mode was extensively used in games though because it enabled smooth scrolling as you have to copy much less data than scrolling a bitmap screen. What the C64 actually has is smooth scrolling registers that enabled you to shift the whole screen 1 pixel at a time up to 8 pixels. And when you reached the end you set it back to the other side again and copied all the characters one row to the left or right (or up or down if you were scrolling up/down). In character mode there is so little data to copy so you have enough time to do it while the raster is outside the display area, hence avoiding the player to "see" the copying in anyway (tearing). It's rather amazing that this 1 MHz computer was able to do all these things, the engineers who made it were truly brilliant!
Engineers back then didn't had it easy. It wasn't just C# scripting in Unity, you had to understand some low level stuff to make simple things happen. It is a VERY interesting topic that is kinda hard to find information about it. Thank you so much for sharing it!
I am currently 2.5 years into building a game and when I see how crazy and how much more work it was back then to build a game compared to now it blows my mind. We are truly spoiled now. Thank you for this video!
I implemented a MOS 6567 (VIC II) video chip in an FPGA a long while back. Very interesting exercise. Right now I am doing a video series on doing Ben Eater's 8 Bit Computer in an FPGA.
Graphics were so cool in the 80s. It took a lot of work for a picture with few colors and resolution, but it was very satisfying to finish something that looked nice and there was a certain kind of simplicity that really challenged your skill.
Florentin ist so cool, der interessiert sich immer für so Sachen mit Commodore und Nintendo und so. Der würde sich sowas jetzt auch nach Verflixxte Klixx noch privat nochmal reinziehen weil das ist voll der interessante junge Mann der Florentin Will.
This is probably the first video I've seen from this guy. The only reason I continued watching his videos is, because he makes it entertaining compared to being bored to death like a lot of people on UA-cam.
Mister, I'm a lay man, however, I grew up in this era and I'm not savvy with how it all came together. Thank you for explaining it. I really appreciate your channel, thank you! I'm subbed.
I'm just discovering this channel, and I love it. It makes my inner geek happy. You know, as opposed to my...outer geek? Ah, who am I kidding...I'm all geek! :3
Yea, I have no inner geek either because I wear my geek on my sleeve. No, really, I have a velcro patch that says "Geek" that I wear on my sleeve. ... No I don't, but now that I've thought of it, I really want one.
There is an old saying Every Geek is 3 Geeks 1. The Geek he thinks he is 2. The Geek that people see him as 3. The Geek that he actually is Actually the original proverb is Every Man is 3 men and YES this actually has a point THE POINT OF THE PROVERB IS................. MAKE IT SO THAT THE 3 MEN (or Geeks) are the same man.......THINK ABOUT IT hehe
I'll leave that open to your imagination :P - I had to know decimal numbers, though. Those numers had to be entered as decimals in BASIC source code... 5000 DATA 1,252,0,6,3,0,8,112,128,16,112,64,16,48,64,32,240,32,33,48,32,127,255,240,63,255,224,31,255,192,4,1,0,8,0,128
Base 2 is actually pretty easy to learn. I've learned it myself when I was in 5th grade. My 6th grade math teacher also happened to teach us about binary, but only how to count it.
About the fromt image of the game known as Super mario 2 in western world. It say spirtes 1, 2 and 3. Actually spirtes 1 and 3 is one and the same. the NES can mirror sprites veirtical and horisontal (and both way simlutanius), but it cant rotate. The rotate effects is made by mirroring in seqvens. Making it fast looks like its rotating. The sprites on pech head is quite obviously mirrored. Intrestingly NES can hardware pair two sprites into a 8 by 16 pixel sprites, making the famous musroum grow of mario
Well you're right that there is mirroring used so that the same tile index in the character rom chip can be used for both sides of the mushroom. But each is going to take up a sprite slot in object attribute memory (i.e. what sprites currently exist on screen and where) regardless.
Great video! When I was 14 in 1980 my dad got us a TRaSh-80 CoCo and I started playing with animated graphics. If you wanted more pages you had less color and resolution. The more pages, the smoother the animation looked. At the time I was doing animation of the Jupiter 2 from Lost in Space moving across the screen while a gosub routine played the 8 bit theme. Then I did one of Star Trek where the Enterprise and a Klingon Bird of Prey flew by hitting each other with phasers while the theme played. In the late 80’s I saw Pink Floyd on the Delicate Sound of Thunder tour and I started trying to do animation of their light show! Thanks for the trip down “memory” lane!
Really makes you appreciate the incredible work programmers did back in the day with such limited hardware. Today's developers are almost spoiled by comparison. Whatever they think of, they can essentially do. Sure, there are limitations, but they're hardly restricted by limited memory or limiting the number of colors on screen.
Your vid's are great, but this one really is a time machine for me. I remember the (very long) sprite-design program (in basic, with a few assembler snippets) I wrote in those days... I included the multicolor mode as well! Thank you for the many hours you will have spend making these.
Wow this video is awesome. I was looking for a website that could explain this, but so far you are the only person who could articulate this process. Thanks for making this video.
***** I noticed you guys have over 2 million subscribers. I'm actually homeless and have a heroin addiction. Can you give me some words of encouragement?
You need to get certified and offer credits fo your lectures. This is the most informative site on the web when it comes to the history of computing. My cousin had a "Terminator" game for his computer in 1990. He had to have a special boot disk for it because it took up so many resources that the standard boot would not work. I think I understand why now. Thank you.
Don't know if anybody will read this, but if you're watching this video you might find this interesting. The sprites on the NES are 8 pixels by 8 pixels, and each sprite can only use three colors at a time. Notice at 6:45 that Mario in Super Mario Brothers 2 has whites around his eyes. It's been a long time since I checked, but I believe the whites and his eyes are actually a separate sprite laid on top of his face. The people who programmed video games back then used all kinds of clever tricks like this. it really makes you appreciate the amount of thought and attention to detail that went into programming video games back then.
Working within limitations breeds the greatest creativity. modern programmers nowadays have no idea because they have all the memory they could ever need.
Totally agree. Sometimes I wonder how some modern games manage to take up sooooooo much space, considering the amount of stuff that are in them. I'm a VR developer myself, and it still puzzles me how some modern game developers are so incredibly inefficient.
Lol true. 20 years later, we'll be wondering how the f*** did they manage to make complex simulations of things like lighting or fluids on just 3GHz and 8GB of RAM. But not 100% of the time, there are certain things that still need heavy optimization to run feasibly, for example the simulations still don't run smoothly unless you sacrifice something (like sacrificing color placement freedom on the Commodore 64 in the 80s), but it's more or less the same thing. Also, there will never be enough speed/performance to the point we don't have to care. If you brought someone from the 2000's and shown them some crappy (for modern standards) 2Mb per second internet, they would be absolutely blown away, and think that there's zero need for faster internet anyway. Then you show them how we stream video in realtime and that 2Mb is in fact painfully slow, and they would probably understand, because streaming realtime 1080p or sometimes even 4K video is as otherwordly for them as 2Mb internet. But back then, 50Kb/s dial-up wasn't all that terrible, and you could use it reasonably, because websites and stuff were designed for it, just like the current-day internet is made so it runs reasonably well on today's speeds. Likewise, if you took a time machine to 2030, you'd be blown away by their 2Tb/s internet, only to realize that they stream accurate volumentric representations of entire rooms so they can be projected as a colorful hologram for the viewers. Then 2Tb/s would turn out to be just another crappy cheap home connection, not really fit for streaming volumetric rooms, and proper internet is at something like 8Tb/s. People would show you how they have molecular-level water simulations, accurate ray-tracing, and sometimes even direct computer-brain interfaces for games and NPCs with AI so advanced you can play multiplayer with them almost as if they were humans, and you would be just as blown away as a 80s-90s person would be by current-day games. And the people of 2030 will be remembering how much limitations we had in 2018, and how much optimizations and weird stuff we had to do to get something that they just waste 17GHz of their 2.1THz CPU for, and don't even care, just like we do with things that were serious programming challendges in the 80s-90s, but trivial things today. Just like we compare how rich games were back then with just 2MHz, compared to the crap you can make today and use up 2GHz, they will look at how we managed to do all the things we have today with such limited computers, and how we care so much about using something better than Bubble sort for sorting (the bubble sort thing might be a bit of an exaggeration, but people like the kids learning to program using things like Scratch won't be advised against it as much as they are today). And they will compare it to the quite empty stuff some of their devs can make while using up 122GB of RAM, compared to our stuff we can cram into our current computers with limited performance. They'll also be running Windows 10 on emulators, just like we do with NES, Nintendo64, etc. today. But there will be things that are challenging for them, for example their games designed for computer-brain interfaces that use all the 5 senses will take huge amounts of processing power, and they will have to do weird stuff like we did with color in the 80s just to make it work feasibly. Fast-forward a few decades, and they'll be laughing at how they barely managed to simulate all 5 senses, and so inaccurately, but at that point they will be struggling with thought-reading as an alternative to using controllers, and once they figure that out, they look forward to even more ridiculous stuff which would have been unthinkable in the past. Oh and they won't just render graphics into pixels, that would be old-school. Instead, they just use their computer-brain stuff to do something like computer-controlled dreams, and let the brain "render" the details, and the computer won't have to care that much about graphics, only about the physics and stuff that isn't intuitive for the brain. In the 80s, nobody would see fluid simulations or AI coming. ...And the loop goes on, until we hit the hard limits imposed by physics (unless we somehow modify physics, but even that must have it's limits, and if we'd ever get to such a level of technology, it would just be easier to upload our consciousnesses into computers, and program them to feel good 24/7). Note that the futuristic cases are just examples, I don't have a working crystal ball, the future might be very different from what i used as an example. Some people like Ray Kurtzweil (hope i spelled that correctly) extrapolate current technological advancement rates (idk how accurately though, some of his predictions have already sorta failed, we don't have mouse brain simulations yet, and probably won't for at least 5 years. He predicted them for around 2020, which is not that far into the future, but some of his predictions came kinda true ~5 years later, so i'd give him a chance) and say that by 2100, we will almost surely have an artificial superintelligence that does everything for us, so... Wait, how did this become such a wall of text?
Dave Mire you sound like an old man "in my times we didnt had that fancy 16 GB ram and 1 terabyte of space to work with, instead we had to work hard" thats basically all the coments in this video
"I'm going to create a sprite on a graph paper, calculate the mask, and type it into the database" shows just how much progress has been made in gamedev thanks to the tools alone... :D
Back in the 80s, a C64 programming book told me that it would NEVER be possible to capture or display realtime TV or even hi res motion pictures on a computer screen since the demands of video memory would be "astronomic". Today I use to watch 4K movies on my computer while recording from a HD TV window at the same time. Never say "never"... 🙂👍
Very well done, thanks. We would get a magazine like Byte magazine, and it would have about thirty pages of code, so you could type it into your commodore 64 (or vic 20, or TI-99, or the trash 80) and it took me all summer to get one game to play. It was beachhead I believe. And we saved them on cassette tapes. Then 5 1/4 floppies, then the 3.5s and zip drives. I have been very glad to have been a part of it since the late 70s. Thanks!
+TheVox I know this is a few weeks old but I'll answer your question. The resolution is 320x200 pixels and you need one bit to represent each pixel. So 320x200 = 64,000 bits. When we are dealing with computers we usually refer to memory in bytes. Eight bits equals one byte so we take 64,0000 and divide it by 8. 64,000/8 = 8,000 or 8k Hope that helps.
Hello from the future 8 bit! Feb 2020👋 Your room had me thinking you were inside a nintendo motherboard. Dope setup! Amazing video. I’m currently learning pixel art & game dev on a old school virtual console. You helped understand pixels, cells and coloring. Appreciate grid lines for conceptualizing. Subscribed!
+Jan Hasebos Modern computers don't have hardware sprite support, so no. Even if the did, the operating system is in the way from making it like he did in the video. You could always just make program that renders it in software or hardware if you have 2 flat polygons to make a square or whatever.
theblueyoshi33866 I have no experience dealing with any sort of operating system because I've never programmed for anything that wasn't the SNES, but would it have to be in a window or full screen, or could it just be it's own thing floating out in space? I guess it also depends on the operating system. Actually, there's a clock thing you can add on the desktop, so I guess you could do whatever you wanted to.
3:25
holy shit
2 colors per cell
the artists back then were pretty hardcore to work with this kind of medium
@IHateCheese what drawing software are you talking about?
edit: seems like the comment I was replying to was deleted
@@Kensuke0987 wdym
@@juliana.b-clashroyale1125 if you mean my comment under my comment, it was meant as a reply to another comment that seems to be deleted now.
Whoever deleted the comment should smell a fart
Except for gbc artists
extremely well made visuals. i really felt like i learned something
iDubbbzTV nice seeing you here :D
iDubbbzTV Time to update think or swim?
iDubbbzTV idu big booty bitcheztv!
+Nerd Massa Drop the bass
+iDubbbzTV i dubbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbzzzzzzzzzzzzzzzzzzzzzzzzzzzzz 4 preziddents > kayne+trump
This was awesome. Great explanation of 8-bit hardware color palettes and such, looking forward to part 2!
Fucking cool! Very interesting!
Lazy Game Reviews Hey Clint! It's a small world, huh? :D
Hey Clint, huge fan.
Connor Murphy Wicked Mouse Small world indeed. Thanks, glad to hear it :)
Is it weird that I'm 13 and I watch your videos?
I used to program professionally C-64's in the mid 80's, doing, you guessed it, games, or graphics simulations! You missed one really cleaver trick we did. The C-64 only had 8 HW sprites. It also had the ability to trigger an interrupt at a certain scan line as it rendered. So, given the size of the sprite, the speed of the machine, the time to switch sprites etc, we had 3 sets of 8 sprites, for a pseudo total of 24, 8 in the top third, 8 in the middle and 8 in the bottom. It did take careful management, and it was not suitable for all games - things would start to flicker then the overlaps got too close. Oh, and one more thing, these were tied to the scan rate/frequency of the display, so US NTSC was 60Hz, 30 frames a sec, and PAL was 50Hz, 25 frames a sec. So you had less time to do things in the US... Ah the joys of small memory sizes. Bank switching could only get you so far! And the last game I downloaded was 12Gb!...
So, can I blame you for my misspent youth? ( A rockstar ate my hamster )
As a hobby programmer I was pretty screwed, since I only had the C64 basic at hand. The possibilities were sooo little... Just last weekend, my son used Scratch to programm "Space Invaders". Within one weekend he got way further than what was ever possible for me on the C64. I was clearly born too early :-)
@@FetterCheckerchef You just had to learn 6502 assembly back in the day. It might not be for everyone, though. A contemporary vintage alternative was _Garry Kitchen's GameMaker_ .
Thank you! I wish I knew that 25 years ago... You made my day!
Maniac Mansion used this trick to have more characters on screen (with some limitations).
This was an awesome video. That pixel art at 3:25 actually completely blew my mind. The artists who were able to make such detail with such a limitation had to have been on another level. I seriously couldnt imagine how hard that must be
Oh dear the hand-programmed sprites. I remember working those out as a kid when learning to program my Sinclair ZX Spectrum.
Loilo92 I did them on a TI-99/4a as a kid.
I did them on the MSX. I was wondering how many people coming here already new this stuff but clicked on it anyway for nostalgic reasons, you confirmed my suspicions :). Now i'm building a synthesizer that runs on webgl2 in the videocard to make sound for fun, guess i haven't changed.
Can you shutup about yourself?
@@Salty5ailor you forgot to add boomer and please
the sinclair spectrum did not natively support spites, although it did have UDG user defined graphics, but no sprite control at all that would associate with real sprites.
Very fascinating. I was born in 2003, and I’ve been making games using GameMaker 2, which gives me the luxury of sprite and sound editors. But my dad would always tell me that you had to do absolutely everything through text back in the 1980’s. I knew most of the limitations before watching this video, but some of them were quite interesting and shocking. I’ve always loved old games, and this just shows how much effort was put into them. I guess it’s time to go pop in an NES cartridge and wonder how they managed to pull it all off.
Booring
@@radicalthunder5740 did you have to say that you chould have just ignored tthe comment
Also you should have got yourself a pfp before saying "Booorring"
@@radicalthunder5740 loser
Retro computing is actuall art.
You do computer science or something?
That house painting blew my fucking mind.
4:26 _But the Machine rewards you for your sacrifice_
PRAISE THE MACHINE ༼ つ ◕_◕ ༽つ For it is kind and fair to us filthy humans! *_*makes offerings*_* *_*bows down before golden Machine statue*_*
* the raise of c64 - 2019 *
get 4 colors in a cell with half the horizontal resolution while using the same amount of memory
Funny, just watched this 7-year-old video. You have learned a thing or two about filming, framing, and editing, that's very obvious. The content is presented perfectly and stands up today. IMHO.
Cool video! Raster interrupts were also a neat way of circumventing the color limitations on C64 (and other machines).
Anders Kaare - I am actually hoping to cover that when I get to CPU driven graphics modes at the end of part II.
Anders Kaare being an old(er) guy - : ) - i remember writing raster interrupt routines on the c64. it really opened my eyes to how fast electronics worked. it was really amazing, at the time.... : )
thanks for the video!
bill rowland , actually its rather fantastic to think that the 6502 processor was "good enough" for many systems for almost 15 years or so. A 1 MHz processor coupled with some decent display and sound hardware worked brilliantly. How long does a generation of processors last today in comparison? :)
bill rowland Were you one of those that literally spent hours padding the H-blank with NOPs to make sure that it happened in the border? Only to have it ruined when a hardware sprite crossed over it, and pushed it over into the next line... at which point you'd cry. :D I really miss being able to switch border colours to see how much raster time your routines took up, it was mesmerising watching all the pretty colours go up and down and up and down. :)
YouTougle , I still do that when I develop C64 games. :) - A good sprite raster routine will be able to keep track of which raster lines are touched by the sprites and hence you can adjust timings accordingly. - Although not covered in this video, the fact that the VIC-II graphics chip and CPU shared the same bus required them to share it and esssentially having less cycles available per raster line. Which is why its best to turn off the display completely in the VIC-II before doing something computationally heavy to have more cycles available.
It's a truth that limitations raise ingenuity.
if we limited computers I bet we could get more out of the graphics cards we have now-a-days
It's all about optimization, but I guess it's better to work on improving the hardware and making things easier instead. It's power and comfort vs. efficiency, and efficiency can't win that battle since we are humans.
Yeah the old starwars movies were better off because of the limitations they had. I have many mental limitations as in im stupid so maybe im actually really awesome.
Alen Mustlovski
That's not how it works, sorry. If you are stupid, then you are just stupid. It's just that when you are limited, you need to figure out and find new ways of doing things, and this effort is what raises ingenuity.
haha thanks for the tip.
Modern (gaming) PCs and smartphones blow your mind if you think about the progress over the last 20-30 years.
just that you can't do anything with 'modern gaming pcs and smartphones' due to them keeping everything secret, and it's not worth trying all too hard because that hardware will all be broken 2-5 years from now due to bad quality production anyway. by the time you have reverse engineered let's say a samsung-S8 to the point that your code can actually DO stuff on it they already have the next model which is completely incompatible. :P so that's pretty much a dead end street. something much like a nintendo however, you can just build in your garage. out of transistors if need be. and therefore is not an ending path.
Sven Olaf Kamphuis Uhhh you have any understanding of how Consoles and Gaming PCs are made?
unfortunately, more than enough :P and it's time to take it back to the physical quality standards it all had before. rather than just 'speed' and flimsy disposable crap all over the place.
hardware should always be easily repairable, built to last, multivendor, fully documented, and provide software compatibility on the hardware level without 'drivers'. only then can one archieve sales numbers that surpass the atari 2600 and c64. (although for the first, it wasn't on purpose that everyone started making them lolol ;)
time to stop trying to make a buck on selling the games and start making a buck on selling the computers again. for periods of oh eh 40 years in a row. while deliberatley encouraging competitors to make the exact same thing to grow the platform. long term planning. lets others write the games.
i don't know why, but i have watched this video about 15 times and still watching it
❤️
This mind blown watching this 5 years after I first saw it
So fun to watch, I remember dealing with those limitations, and I'm glad you've explained it in such a way to give props to the artists and designers and devs and programmers who had to deal with all this.
This is definitely well worth the watch. Makes me appreciate older games just that much more.
+GVGINU The house at 3:24 is actual art for me now
Didn't know he still made vids- I've always was a fan of his older stuff.
Good find, GVGINU!!
Making sprites on graph paper....that takes me back, I think I was 8 when i first did this on my C64.
Graph paper? You lucky b*****d! I had to draw my own grid on blank paper!
+komodosp
Yea, my parents were too cheap to buy me that expensive graph paper just to draw on. They'd give me a stack of thin dollar store printer paper and say, "Use this instead."
+komodosp blank paper?? ha! I had to cut my own tree and make paper out of the pulp! lol
Dragon10101011
Was that before or after you had to walk uphill both ways in 6 foot snow to get to the tree? lol!
He had to grow it first...
This really takes me back. I had a C=64, and I spent many hours designing graphics on graph paper.
@lego craft probally some secret that we dont know.
The Commodore logo is frequently written in text as "C=". Look it up and you'll see it's a close resemblance :)
4:26
_The machine rewards you for your sacrifice_
Praise the 8-bit God.
@@Wooksley 😂
I really really really really, love this channel, when I was young I wanted to be a 8 bit programmer, these videos make me smile, with all the nostalgic information. 😄😄😄👍
Watching the video on a phone in the dark, the pixel grid zooming at 2:05 was a trippy optical illusion
Yep.... Same thing just happened to me!
MaxOfS2D (Maxime Lebled) IKR i think i saw myself but pixel!
Same here !
Does no one use a proper desktop computer anymore? Is this a millennial thing, to use a tiny pocket computer, even when you're home?
JanetFunkYeah
It’s because when your laying in bed. Here’s my times
11:25 AM (11:25) wake up
12:00 PM (12:00) go on computer
10:50 PM (22:50) get off computer
11:00 PM (23:00) pee on my kid
11:10 PM (23:10) go on iphone xi
3:30 AM (3:30) Go to sleep
REPEAT
Really interesting, yeah! Makes you glad that game development is comparatively simpler to get into and work with nowadays, without having to worry so much about the limitations of the hardware. Thanks for the video!
I really wish I'd learnt coding back in the day, when it was about genuinely understanding code at the lowest level-basically understanding the 1s and 0s as it were. I think it really would be helpful to me trying to make games today.
inceptional you don't fully understand something until you can explain it to someone else
Jesse Miller Exactly.
I took a class that touched on BASIC back in 1987 I was instantly hooked. "I have to tell it everything-?" But having some idea of what's happening behind the scenes, subroutines, calls to resources- does empower one.
inceptional Programming in assembler language was good fun, but the concept of shadow RAM was a brain killer. When I think of the fun of trying to lever every available byte out of the C64, it was truly satisfying when you managed it. Redirecting the display list on the fly with self-modifying code, oh the fun we had. :DI still have the greatest respect for the guys (and girls) that were the true gurus of that time... they managed to make the seemingly impossible, very possible on a regular occasion. I remember the first time we saw Hawkeye's static background behind a smooth scrolling platform layer on the C64... pure genius. Borderless displays on the C64, remarkable. Multiplexed sprites = mind blowing and when you had multiplexed overlaid hi-res/multi-colour sprites, things got truly spectacular.
YouTougle Yeah, I can see how that Hawkweye game was really impressive for its time and the hardware it was running on.
This is my favourite video in the whole UA-cam.
I come back to watch it every now and then.
I, too, have spent tons of hours drawing sprites on graph paper, as a kid.
This is still one of my favorite videos of all time. Especially with those demonstrations of beautiful artwork made with such hardware limitations. Its just so fascinating how people were able to figure this out and work with it to make art that the original creators of the technology probably didn't even think was possible.
The fun part is, the NES only has a little over 2k of dedicated video memory, but manages to look much more colorful than the home computers. This is because the tiles themselves could be stored on a separate ROM or RAM chip inside the cartridge, so it didn't take any RAM away from the CPU.
@LeoDaBoss - El youtuber no tan -animado- . true, some cartridges do also add their own processor and/or ram to allow additional functionality.
@@nugget6635 The Famicom version of Castlevania III is a good example of this. The cartridge actually had a specialized chip that allowed it to make use of the greater number of sound channels offered by the Famicom
When I hear people complaining how modern consoles don't have very long life spans I like to bring this up. The NES basically got to cheat fate, due to the nature of cartridge based hardware and the growth potential of technology in the 80s. It couldn't be reproduced today even with cartridges, being the quality of difference you could cram onto cartridge chips wouldn't be nearly as noticeable on modern hardware. Vanilla NES hardware hit its wall with SMB1 in 1985, yet mapper chips effectively doubled the console's lifespan.
@@mresturk9336 Hardware in cartridge is totally cheating. It's like selling a screen and then selling "games" as individual computers to connect to it lol
@@jatoxoyeah i do agree with that,just imagine you came up with a console wich is not all that much powerful then your competitor’s console systems,BUT you wanna convince your costumers that your console is waaay more capable then that of the rest so what you gonna do,you sneakingly gonna add extra chips in the cartride for extra ram and rom,better graphics and sounds,and you will trick those pepless that way,
The nes tricked us because for what we didn’t know for years that the stock nes couldn’t handle games such as mario 3 or zelda oh no,as it turns out,our beloved nes became much weaker then we ever tout it was,hack we didn’t know that some previous generation systems were in some cases more powerful then the nes,for instance the atari 5200 did had a 256 colorpallet and it had more ram then the nes,the intelevision did had a 16bit cpu,
So the stock nes was not halve that powerful as those commercials did make you believe,
Same thing with the snes,nintendo did sneakingly used chips inside many of their games,so we didn’t know that the stock snes couldn’t handle mario kart on it’s own,it couldn’t handle supermario rpg on it’s own etc,,,,
Same thing with the gameboy,for years we didn’t know that the stock gameboy couldn’t handle supermarioland 2 and wario land etc,
Because the gameboy also needed an extra chip for it,
So into conclusion those terms from their commercials like ‘now you playing with,super,portiblor (normal) power were just BULLSHIT.
eventrough it did work despite games with those enhancement chips inside them did became more expensive,it just didn’t hold back and stop people just buying it,they just bought thrm anyway,,,but still,,
You should do a video on how the Nintendo 64 did 3D. Interesting stuff in there.
Doesn't it just use rasterisation like OpenGL and DirectX?
also used to reduce the staircase effect of certain textures.
said 3 point filter also makes it an utter pain to code an emulator for...
Polys, Hell of a ton of Polys
U should ask the 64-bit guy to do that
The very nice house is drawn using normal highres bitmap mode allowing two colours per character cell as the video explains brilliantly. The C64 also has character mode where you can make custom character sets of 256 custom characters (taking 2kb of memory). But in that mode you can only have one colour per character cell and one shared background colour for the whole screen. Of course you can use multi colour mode to get 2 pixel wide "pixels" also shown in the video.
But still in highres character mode there are some nice possibilities to create fantastic graphics on the C64. You can change the character set anywhere during the screen redraw, enabling you to have several character sets as long as you split them vertically. So many games would have one character set for the game area, and another for the status/score area. In addition you can use the same raster interrupts (as they are called) to switch background colour anywhere too (as well as border). You can also change multi colours as well if you use that mode. Finally another trick that is often used is sprite overlays and underlays. You can control whether sprites are shown on the top of the characters or underneath - so with some smart use you can add extra colour and detail anywhere with these. Furthermore, sprites can be stretched vertically and horizontally by 2 - so instead of covering 24x21 pixels they can cover 48x42 pixels. So with the 8 sprites available in the C64, you can cover the whole 320 pixels width of one set of raster lines equal to the height of the sprites. And then using smart raster routines you can swap out the pointers of the sprites anywhere after the last line of the previous sprites, essentially enabling you a "sprite bitmap" to cover the whole screen.
Very few games went to this extreme though, but today effects using sprites and character mode is used heavily in demos and a few of the newer homebrew games.
Character mode was extensively used in games though because it enabled smooth scrolling as you have to copy much less data than scrolling a bitmap screen. What the C64 actually has is smooth scrolling registers that enabled you to shift the whole screen 1 pixel at a time up to 8 pixels. And when you reached the end you set it back to the other side again and copied all the characters one row to the left or right (or up or down if you were scrolling up/down). In character mode there is so little data to copy so you have enough time to do it while the raster is outside the display area, hence avoiding the player to "see" the copying in anyway (tearing). It's rather amazing that this 1 MHz computer was able to do all these things, the engineers who made it were truly brilliant!
Engineers back then didn't had it easy. It wasn't just C# scripting in Unity, you had to understand some low level stuff to make simple things happen. It is a VERY interesting topic that is kinda hard to find information about it. Thank you so much for sharing it!
This was the video that got me hooked to this channel, now I can't stop watching these videos!
1:52
Your wall cables are very neat and ordered and make me feel fuzzy and happy inside
the commador just made drawing with java look easy
2:04 woah, that's trippy
Super! :3 how are you everywhere?
I am currently 2.5 years into building a game and when I see how crazy and how much more work it was back then to build a game compared to now it blows my mind. We are truly spoiled now. Thank you for this video!
Well researched quality content for tech enthusiasts. Never get bored of your content.
3:49 Damn, that looks like an acrylic painting, only very rough.
Just about everything you said taught me something new.
More videos like this, please :)
I implemented a MOS 6567 (VIC II) video chip in an FPGA a long while back. Very interesting exercise. Right now I am doing a video series on doing Ben Eater's 8 Bit Computer in an FPGA.
Graphics were so cool in the 80s. It took a lot of work for a picture with few colors and resolution, but it was very satisfying to finish something that looked nice and there was a certain kind of simplicity that really challenged your skill.
Nice reinterpretation of John Carpenter's Escape from New York Theme at 2:35 +
Florentin ist so cool, der interessiert sich immer für so Sachen mit Commodore und Nintendo und so. Der würde sich sowas jetzt auch nach Verflixxte Klixx noch privat nochmal reinziehen weil das ist voll der interessante junge Mann der Florentin Will.
Very good explanation! Now I understand why some hardwares like Capcom's CPS makes use of weird resolution set rather than 4:3 ratio.
This is probably the first video I've seen from this guy. The only reason I continued watching his videos is, because he makes it entertaining compared to being bored to death like a lot of people on UA-cam.
This is a brilliant video, it was fascinating! The zoom in visuals are really well done - thank you!
love your videos , keep em comming :D
Oh my god, I never thought I would find oldschool graphics and stuff so ineteresting.
Holy shit. I actually learned something that tech class never taught me.
It's really heartwarming that such channel has millions of views :-) Love your breakdowns.
Mister, I'm a lay man, however, I grew up in this era and I'm not savvy with how it all came together. Thank you for explaining it. I really appreciate your channel, thank you! I'm subbed.
I'm just discovering this channel, and I love it. It makes my inner geek happy. You know, as opposed to my...outer geek?
Ah, who am I kidding...I'm all geek! :3
same
Yea, I have no inner geek either because I wear my geek on my sleeve. No, really, I have a velcro patch that says "Geek" that I wear on my sleeve.
...
No I don't, but now that I've thought of it, I really want one.
And i m all Greek.
There is an old saying
Every Geek is 3 Geeks
1. The Geek he thinks he is
2. The Geek that people see him as
3. The Geek that he actually is
Actually the original proverb is Every Man is 3 men
and YES this actually has a point
THE POINT OF THE PROVERB IS................. MAKE IT SO THAT THE 3 MEN (or Geeks) are the same man.......THINK ABOUT IT
hehe
@@martinkuliza STFU (x3)
Good old days. Sprites... That's exactly how I learned how binary worked at the age of 10 :)
You learned how binary worked at 10 decimal or 10 binary (2 years)????
It kinda almost make sense to learn a two-number system as a toddler before you can even handle a decimal system... Doesn't it? :D
I'll leave that open to your imagination :P - I had to know decimal numbers, though. Those numers had to be entered as decimals in BASIC source code...
5000 DATA 1,252,0,6,3,0,8,112,128,16,112,64,16,48,64,32,240,32,33,48,32,127,255,240,63,255,224,31,255,192,4,1,0,8,0,128
101001010101010110001010110101011001010101001010101010101 100101011110010100101010101010101
Base 2 is actually pretty easy to learn. I've learned it myself when I was in 5th grade. My 6th grade math teacher also happened to teach us about binary, but only how to count it.
About the fromt image of the game known as Super mario 2 in western world. It say spirtes 1, 2 and 3.
Actually spirtes 1 and 3 is one and the same. the NES can mirror sprites veirtical and horisontal (and both way simlutanius), but it cant rotate. The rotate effects is made by mirroring in seqvens. Making it fast looks like its rotating. The sprites on pech head is quite obviously mirrored.
Intrestingly NES can hardware pair two sprites into a 8 by 16 pixel sprites, making the famous musroum grow of mario
Well you're right that there is mirroring used so that the same tile index in the character rom chip can be used for both sides of the mushroom. But each is going to take up a sprite slot in object attribute memory (i.e. what sprites currently exist on screen and where) regardless.
awesome video! I loved your graph paper calculations + very comfy background music!
This is one of my favorite videos from this channel
Great exposition but... you're kind of way too close to the camera. O.O
Very interesting video!
Reddit has earned you a new subscriber!
+MixJunkie360 cringe
+Fredrick Fedory™. 139 IQ. why the cringe?
Fredrick Fedory™. 139 IQ. Fedora, IQ in YT name. Ultra-cringe.
ACoolStupidDog Trademarked their _name_. *shudders*
+ACoolStupidDog its satire/circlejerk
Great video! When I was 14 in 1980 my dad got us a TRaSh-80 CoCo and I started playing with animated graphics. If you wanted more pages you had less color and resolution. The more pages, the smoother the animation looked. At the time I was doing animation of the Jupiter 2 from Lost in Space moving across the screen while a gosub routine played the 8 bit theme. Then I did one of Star Trek where the Enterprise and a Klingon Bird of Prey flew by hitting each other with phasers while the theme played. In the late 80’s I saw Pink Floyd on the Delicate Sound of Thunder tour and I started trying to do animation of their light show! Thanks for the trip down “memory” lane!
I love coming across a YT video and creator that actually earns their subscriptions. GJ
1:47 Nintendo misspelled with t - Nintento, found it funny :D
+Randomroutine nobody actually cares but you're right it's kinda funny
Suleyman Smits you obviously cared enough to comment
*nintento
nintento mayro
Really makes you appreciate the incredible work programmers did back in the day with such limited hardware. Today's developers are almost spoiled by comparison. Whatever they think of, they can essentially do. Sure, there are limitations, but they're hardly restricted by limited memory or limiting the number of colors on screen.
Corristo89 nor do they have to worry about programming the movement of every Individual pixel
how many times iam going to watch this video :| i really like it
Your vid's are great, but this one really is a time machine for me. I remember the (very long) sprite-design program (in basic, with a few assembler snippets) I wrote in those days... I included the multicolor mode as well!
Thank you for the many hours you will have spend making these.
The knowledge shared in this video is undescribably fantastic. I loved it!
thank you ! I've learned binary exactly while I was making my 1st sprites .. i was 10 :D
This is the best video ever and thats a fact.
Great video but what i really wanted to say was... I love the shirt, that is awesome. haha
The shirt? I want such a wall with tech stuff attached to it ^.^
+Dayjaby that's nice too haha
Awesome channel! subscribed due to the high quality production and the amazing educational value.
Wow this video is awesome. I was looking for a website that could explain this, but so far you are the only person who could articulate this process. Thanks for making this video.
Why do you not have a patreon? I want to support this on patreon! Awesome content. -John
***** I noticed you guys have over 2 million subscribers. I'm actually homeless and have a heroin addiction. Can you give me some words of encouragement?
he's not in for the dolla dolla cazh gold
***** Jeez. Are comment replies when you two post on other people's videos always like these? The internet constantly astounds me.
+Fredrick Fedory™. 139 IQ. :D sir i am truly sorry to break it to you but no troll has an IQ of 139 so neither have you :)
+AkibaMV .. That's the troll, genius.
I have no idea what IRQs and DMAs are. There. I said it
NO ONE DOES ( O.O)
This man is an absolute genius
surfitlive shut the fuck up
Thanks so much, man. The material was well explained, and your easy-going demeanor helps with the dry material.
Keep 'em coming, please...
You need to get certified and offer credits fo your lectures.
This is the most informative site on the web when it comes to the history of computing.
My cousin had a "Terminator" game for his computer in 1990. He had to have a special boot disk for it because it took up so many resources that the standard boot would not work. I think I understand why now.
Thank you.
Don't know if anybody will read this, but if you're watching this video you might find this interesting. The sprites on the NES are 8 pixels by 8 pixels, and each sprite can only use three colors at a time. Notice at 6:45 that Mario in Super Mario Brothers 2 has whites around his eyes. It's been a long time since I checked, but I believe the whites and his eyes are actually a separate sprite laid on top of his face. The people who programmed video games back then used all kinds of clever tricks like this. it really makes you appreciate the amount of thought and attention to detail that went into programming video games back then.
Working within limitations breeds the greatest creativity. modern programmers nowadays have no idea because they have all the memory they could ever need.
No joke, even the simplest applications these days are bloated as hell.
Totally agree. Sometimes I wonder how some modern games manage to take up sooooooo much space, considering the amount of stuff that are in them. I'm a VR developer myself, and it still puzzles me how some modern game developers are so incredibly inefficient.
Lol true. 20 years later, we'll be wondering how the f*** did they manage to make complex simulations of things like lighting or fluids on just 3GHz and 8GB of RAM.
But not 100% of the time, there are certain things that still need heavy optimization to run feasibly, for example the simulations still don't run smoothly unless you sacrifice something (like sacrificing color placement freedom on the Commodore 64 in the 80s), but it's more or less the same thing. Also, there will never be enough speed/performance to the point we don't have to care.
If you brought someone from the 2000's and shown them some crappy (for modern standards) 2Mb per second internet, they would be absolutely blown away, and think that there's zero need for faster internet anyway. Then you show them how we stream video in realtime and that 2Mb is in fact painfully slow, and they would probably understand, because streaming realtime 1080p or sometimes even 4K video is as otherwordly for them as 2Mb internet. But back then, 50Kb/s dial-up wasn't all that terrible, and you could use it reasonably, because websites and stuff were designed for it, just like the current-day internet is made so it runs reasonably well on today's speeds.
Likewise, if you took a time machine to 2030, you'd be blown away by their 2Tb/s internet, only to realize that they stream accurate volumentric representations of entire rooms so they can be projected as a colorful hologram for the viewers. Then 2Tb/s would turn out to be just another crappy cheap home connection, not really fit for streaming volumetric rooms, and proper internet is at something like 8Tb/s. People would show you how they have molecular-level water simulations, accurate ray-tracing, and sometimes even direct computer-brain interfaces for games and NPCs with AI so advanced you can play multiplayer with them almost as if they were humans, and you would be just as blown away as a 80s-90s person would be by current-day games.
And the people of 2030 will be remembering how much limitations we had in 2018, and how much optimizations and weird stuff we had to do to get something that they just waste 17GHz of their 2.1THz CPU for, and don't even care, just like we do with things that were serious programming challendges in the 80s-90s, but trivial things today. Just like we compare how rich games were back then with just 2MHz, compared to the crap you can make today and use up 2GHz, they will look at how we managed to do all the things we have today with such limited computers, and how we care so much about using something better than Bubble sort for sorting (the bubble sort thing might be a bit of an exaggeration, but people like the kids learning to program using things like Scratch won't be advised against it as much as they are today). And they will compare it to the quite empty stuff some of their devs can make while using up 122GB of RAM, compared to our stuff we can cram into our current computers with limited performance. They'll also be running Windows 10 on emulators, just like we do with NES, Nintendo64, etc. today.
But there will be things that are challenging for them, for example their games designed for computer-brain interfaces that use all the 5 senses will take huge amounts of processing power, and they will have to do weird stuff like we did with color in the 80s just to make it work feasibly. Fast-forward a few decades, and they'll be laughing at how they barely managed to simulate all 5 senses, and so inaccurately, but at that point they will be struggling with thought-reading as an alternative to using controllers, and once they figure that out, they look forward to even more ridiculous stuff which would have been unthinkable in the past.
Oh and they won't just render graphics into pixels, that would be old-school. Instead, they just use their computer-brain stuff to do something like computer-controlled dreams, and let the brain "render" the details, and the computer won't have to care that much about graphics, only about the physics and stuff that isn't intuitive for the brain.
In the 80s, nobody would see fluid simulations or AI coming.
...And the loop goes on, until we hit the hard limits imposed by physics (unless we somehow modify physics, but even that must have it's limits, and if we'd ever get to such a level of technology, it would just be easier to upload our consciousnesses into computers, and program them to feel good 24/7).
Note that the futuristic cases are just examples, I don't have a working crystal ball, the future might be very different from what i used as an example. Some people like Ray Kurtzweil (hope i spelled that correctly) extrapolate current technological advancement rates (idk how accurately though, some of his predictions have already sorta failed, we don't have mouse brain simulations yet, and probably won't for at least 5 years. He predicted them for around 2020, which is not that far into the future, but some of his predictions came kinda true ~5 years later, so i'd give him a chance) and say that by 2100, we will almost surely have an artificial superintelligence that does everything for us, so...
Wait, how did this become such a wall of text?
Dave Mire you sound like an old man "in my times we didnt had that fancy 16 GB ram and 1 terabyte of space to work with, instead we had to work hard" thats basically all the coments in this video
"I'm going to create a sprite on a graph paper, calculate the mask, and type it into the database" shows just how much progress has been made in gamedev thanks to the tools alone... :D
You are definitely very good at what you do my friend. Always enjoy watching your videos, thank you.
3 years after watching and never forgot a single detail. You rock, David!
thanks for subs in spanish :D
It was done by this person: (the link is found in video's description)
m.ua-cam.com/channels/hha_EvAClw1wYuHK_grNbA.html
0:03 Press restore to restore a broken C64
Went down the rabbit hole and found this...awesome page!
Fascinating! So glad I stumbled on this. The nes and C64 were my first consoles as a kid, and designs have fascinated me.
Back in the 80s, a C64 programming book told me that it would NEVER be possible to capture or display realtime TV or even hi res motion pictures on a computer screen since the demands of video memory would be "astronomic". Today I use to watch 4K movies on my computer while recording from a HD TV window at the same time. Never say "never"... 🙂👍
_Never_ misuse the words "use to".
6:10 first its Pac-Man but grey
Then it’s just Pac-Man
The iBookGuy where can I find the credits song Spellunkish by David Murray?
dpcnull I couldn't find it either
***** Mmhmm.
dpcnull
His soundcloud
soundcloud.com/8-bitkeys/pss470-project4-8-bit-keys-theme-music
WorldsFirstFuckTard The song isn't on there.
This is awesome info. I always love how simple he made complex technical subjects: this guy is a genius.
Very well done, thanks. We would get a magazine like Byte magazine, and it would have about thirty pages of code, so you could type it into your commodore 64 (or vic 20, or TI-99, or the trash 80) and it took me all summer to get one game to play. It was beachhead I believe. And we saved them on cassette tapes. Then 5 1/4 floppies, then the 3.5s and zip drives. I have been very glad to have been a part of it since the late 70s. Thanks!
How did you calculate the 8K? 0:48
+TheVox I know this is a few weeks old but I'll answer your question. The resolution is 320x200 pixels and you need one bit to represent each pixel. So 320x200 = 64,000 bits. When we are dealing with computers we usually refer to memory in bytes. Eight bits equals one byte so we take 64,0000 and divide it by 8. 64,000/8 = 8,000 or 8k
Hope that helps.
*OttoMoBiehl*
_Eight bits equals one byte so we take _*_64,0000_*_ and divide it by 8. 64,000/8 = 8,000 or 8k._
Oops, one extra zero
8KBytes
Here’s what everything stands for.
(Short) (Long)
1b - 1 Bit
1N - 1 Nibble
1B - 1 Byte
1KB - 1 Kilobyte
1MB - 1 Megabyte
1GB - 1 Gigabyte
1TB - 1 Terabyte
1PB - 1 Petabyte
1EB - 1 Exabyte
1ZB - 1 Zettabyte
1YB - 1 Yottabyte
1GB - 1 Googolbyte
A Googolbyte is the biggest type of byte.
1:45 NINTENTO
This is the best comment section ever so many intellectually stimulating comments
Great video! Brings me back to my BASIC days...I learned a lot, thank you!
Fantastic video, your infographics and editing are so well done!
1:21 - Garth and Wayne voice: extreme close up! woooaaaaaaaaahhhhhh!
You are great man
Can you put subtle in Spanish?
1:33 You spelled Nintendo wrong.
NintenTo
Maybe it was nintentional.
@@rbrtck how?
@@Persvicx I was just making a dumb joke.
@@rbrtck oh I'm so dumb I didn't even notice the joke, I'm so stupid lmao
probably the most topical youtube video OF ALL TIME. Also, nice shirt!
Hello from the future 8 bit! Feb 2020👋 Your room had me thinking you were inside a nintendo motherboard. Dope setup!
Amazing video. I’m currently learning pixel art & game dev on a old school virtual console. You helped understand pixels, cells and coloring. Appreciate grid lines for conceptualizing. Subscribed!
Do you still have that sprite chart thing? Is there software to make something with it and display it on a modern computer?
+Jan Hasebos Yeah. I am really curious about it as well.
As am I.
+Jan Hasebos Modern computers don't have hardware sprite support, so no. Even if the did, the operating system is in the way from making it like he did in the video. You could always just make program that renders it in software or hardware if you have 2 flat polygons to make a square or whatever.
I'm sure I could just code something in Scratch using basic math to generate sprites on a grid array. I might do that one day
theblueyoshi33866 I have no experience dealing with any sort of operating system because I've never programmed for anything that wasn't the SNES, but would it have to be in a window or full screen, or could it just be it's own thing floating out in space? I guess it also depends on the operating system. Actually, there's a clock thing you can add on the desktop, so I guess you could do whatever you wanted to.