C64 Demos peek - Layers
12:49
16 сағат бұрын
C64 Games memories - Rampage - Bonus
16:33
C64 Games memories - Rampage
23:31
14 күн бұрын
C64 Games memories - Bandits 1983
31:50
C64 Games memories - Scarabaeus
39:10
C64 Games memories - Skool Daze
43:55
C64 Games memories - Barbarian
26:16
C64 Games memories - Nebulus
45:37
C64 Games memories - Bubble Bobble
42:54
Пікірлер
@luxocrates
@luxocrates 10 сағат бұрын
Really appreciate these demo technique dissections. Would love to see more!
@MartinPiper6502
@MartinPiper6502 4 сағат бұрын
Thank you kindly for the support :)
@c64customs
@c64customs Күн бұрын
Thanks!
@MartinPiper6502
@MartinPiper6502 Күн бұрын
Thank you kindly :)
@JamesGood
@JamesGood Күн бұрын
Thanks, always wondered how these things worked!
@MartinPiper6502
@MartinPiper6502 Күн бұрын
Glad to help!
@em00k
@em00k Күн бұрын
C64 debuggers are on another level.
@MartinPiper6502
@MartinPiper6502 Күн бұрын
Yeah it really helps make these things much easier to understand
@OlivierSimpleLife
@OlivierSimpleLife Күн бұрын
Thank you so much for explaining how this great effect works !!! Also à million thanks for sharing the code !!! That's just so kind !!!!
@MartinPiper6502
@MartinPiper6502 Күн бұрын
No problem. Sharing is caring. :)
@BobbyCharlz
@BobbyCharlz Күн бұрын
So these effects can be used in a proper video game context, or might I need to watch this again (like I’ll do anyway ;)? Space shooter immediately comes to mind.
@MartinPiper6502
@MartinPiper6502 Күн бұрын
Yes, this can be used in a game. Some games use the horizontal scrolling method, like Creatures.
@BobbyCharlz
@BobbyCharlz Күн бұрын
@@MartinPiper6502 understood, thank you. I’ll have to take a closer look at the game you’ve mentioned. Great channel and great episodes you’ve got here. I really appreciate the DemoScene decomps that you walk us through. They’re very informative.
@MartinPiper6502
@MartinPiper6502 Күн бұрын
I had a video about Creatures using this effect at 24 minutes... kzbin.info/www/bejne/en6WdZtpr7yikJo
@BobbyCharlz
@BobbyCharlz 23 сағат бұрын
@@MartinPiper6502 Very cool, thank you. Much appreciated.
@ProBloggerWorld
@ProBloggerWorld Күн бұрын
The demo‘ed effect is top notch. Timing is hard, getting scrolling right with the mapping as well.
@MartinPiper6502
@MartinPiper6502 Күн бұрын
yeah the timing is quite tricky, especially for the horizontal movement.
@retro_noix
@retro_noix 2 күн бұрын
Interesting video ... great to see you venture into investigating demo code tricks! 👍
@MartinPiper6502
@MartinPiper6502 2 күн бұрын
Glad you enjoyed it!
@beelinkk
@beelinkk 2 күн бұрын
hahahahaha
@MartinPiper6502
@MartinPiper6502 2 күн бұрын
Haha
@beelinkk
@beelinkk 2 күн бұрын
@@MartinPiper6502hahaha
@MartinPiper6502
@MartinPiper6502 2 күн бұрын
Hahahahaha
@maxusboostus
@maxusboostus 2 күн бұрын
Some demo coders say that using VSP can damage some of the old VIC chips. I assume they have proof of this to believe it. The demo called "Next Level" by Performers boasts it doesn't use VSP.
@MartinPiper6502
@MartinPiper6502 Күн бұрын
I've never seen any reliable evidence of the C64 VIC being harmed by this. There was a poke on the old Commodore PET that could cause damage due to video hardware timing, but that's not going to work on the C64 since the video hardware is different.
@TheStuffMade
@TheStuffMade 2 күн бұрын
Interesting technique, I learned something new today 👍 I always assumed these large bouncing logos were made from character graphics and moved around using traditional scrolling.
@MartinPiper6502
@MartinPiper6502 2 күн бұрын
I love this machine. :)
@delgilchrist
@delgilchrist 2 күн бұрын
Does this hardware trick work on all c64 hardware revisions?
@MartinPiper6502
@MartinPiper6502 2 күн бұрын
Almost all. Some get corrupted memory.
@joecincotta5805
@joecincotta5805 2 күн бұрын
Awesome awesome awesome awesome awesome 😎 ...this video is my happy place.
@MartinPiper6502
@MartinPiper6502 2 күн бұрын
Thank you so much 😀
@michaeljarcher
@michaeljarcher 2 күн бұрын
imagine if they put a set of h/w base memory offsets for the screen for the VIC, would of saved a shit load of code for block copying zillions of scrolling games. But such was life! then the C64 would of been like some of the arcade hardware, thought they tended to have larger character windows to allow large tile plotting which wrapped correctly. And many were only 32 or 64 characters wide so width/heights memory wrapping was nicely handled. Something name gives a good insight into with it's f4 debug overlay!.
@MartinPiper6502
@MartinPiper6502 2 күн бұрын
@@michaeljarcher all they needed to do was expose the internal vcbase counter to a couple of external registers
@michaeljarcher
@michaeljarcher 2 күн бұрын
@@MartinPiper6502 Yep, I wonder why they never thought about that. When they put in x y scroll, they must have had some thoughts about it, actual games and scrolling. Hidesight is never a clear thing. It would have made the demo scene a little more boring! If it did everything perfectly. :-)
@aNdy_AL_C0S
@aNdy_AL_C0S 2 күн бұрын
I've not commented on your videos much recently as I'm knee deep in my own C64 projects, but I'm still watching, enjoying and learning. Have a couple of £ and have a coffee or similar on me!
@MartinPiper6502
@MartinPiper6502 2 күн бұрын
Thank you kindly for the coffee :)
@Mr.1.i
@Mr.1.i 3 күн бұрын
Its says in debug....standard text mode........but it looks quite crisp is .its 2 colors and if its interupting the resolution is 320x400
@MartinPiper6502
@MartinPiper6502 3 күн бұрын
@Mr.1.i yes it's in hires text mode
@Mr.1.i
@Mr.1.i 3 күн бұрын
@MartinPiper6502 there are pokes that allow you to use the boarder for graphical instruction
@MartinPiper6502
@MartinPiper6502 3 күн бұрын
@@Mr.1.i yes I'll be getting into those in another video
@martinhertog5357
@martinhertog5357 3 күн бұрын
Does this demo work on a VICE emulator, I know it is very good but this demo will test it for sure.
@MartinPiper6502
@MartinPiper6502 3 күн бұрын
Yes, even old Vice in ICU64 runs the demo.
@der.Schtefan
@der.Schtefan 4 күн бұрын
I think Steve Mould showed in a video how every rotation is just a couple of integer translations and sheering operations
@igork3522
@igork3522 6 күн бұрын
Great video! Thank you.
@JustWasted3HoursHere
@JustWasted3HoursHere 6 күн бұрын
Still pretty darn clever. Shows the flexibility of the VIC-II chip for sure. Still finding new ways to do things with the VIC-II and the SID chip as well, even 40+ years later.
@MartinPiper6502
@MartinPiper6502 2 күн бұрын
I'm very sure new effects are yet to be found.
@JustWasted3HoursHere
@JustWasted3HoursHere 2 күн бұрын
@@MartinPiper6502 Yep. I can remember vividly the first time I saw a demo with the top and bottom borders opened up. I wonder who was the first demo coder to figure that one out?
@MartinPiper6502
@MartinPiper6502 2 күн бұрын
This page seems to have a list of first use of effects codebase64.org/doku.php?id=base:demo_world_records_and_world_firsts#border_top_bottom
@JustWasted3HoursHere
@JustWasted3HoursHere 2 күн бұрын
@@MartinPiper6502 I'll check it out. Thanks!
@JustWasted3HoursHere
@JustWasted3HoursHere 2 күн бұрын
@@MartinPiper6502 Funny it took the coders 6 more months to figure out side borders. Sadly I have no idea what some of the effects listed are, such as FLD and VSP. I guess this is a page for demo-sceners so that makes sense.
@blengi
@blengi 6 күн бұрын
can't wait to see what kind of c64 demos and games gpt8 comes up with, where it optimizes every byte of memory and cycle mixing every mode in combinations in space and time, in ways no human would conceive of, to facilitate surprising game types and depth never imagined on the old hardware, generated anew on demand and personalised, 24/7...
@OlivierSimpleLife
@OlivierSimpleLife 6 күн бұрын
Really nice deep dive ! More demo effects deep dive would of course be welcome :)
@MartinPiper6502
@MartinPiper6502 6 күн бұрын
Glad you like it. More to come!
@BashingDinosaurs
@BashingDinosaurs 6 күн бұрын
@@MartinPiper6502 Excellent news! Thanks, I love these kind of deep dives.
@DaPutz
@DaPutz 6 күн бұрын
you forget to mention that it actually wasnt MTs last game on the C64 ;-)
@MartinPiper6502
@MartinPiper6502 6 күн бұрын
Indeed, I will probably cover Enforcer: Fullmetal Megablaster later on :)
@demoscenes
@demoscenes 6 күн бұрын
I am so glad you took a turn on this part of the demo. I hope to see more demos being pick a part like this. Next Level 100 games part would be fun to see.
@MartinPiper6502
@MartinPiper6502 6 күн бұрын
I plan to do more demos. The tricky thing is to make them understandable.
@demoscenes
@demoscenes 5 күн бұрын
@@MartinPiper6502 The way you explain makes it easy to follow along and get into all the details. Been following you for a loooong time now and it's like C-64 meditation to watch/listen how you explain all. :)
@markuszeller_official
@markuszeller_official 6 күн бұрын
FIG are C=64 Killer Machines
@delgilchrist
@delgilchrist 6 күн бұрын
great stuff
@ModernVintageGamer
@ModernVintageGamer 6 күн бұрын
what is this sorcery?!
@LordmonkeyTRM
@LordmonkeyTRM 6 күн бұрын
I just watched your WinCE video before this one 😂❤
@demoscenes
@demoscenes 6 күн бұрын
It is the magic of Serato. He is a crazy man.
@MartinPiper6502
@MartinPiper6502 6 күн бұрын
I know right? :) This is effect is quite new, it's done differently to other similar visual effects, I have no doubt there are other new C64 VIC effects waiting to be found.
@phill6859
@phill6859 6 күн бұрын
​@@MartinPiper6502it's a similar effect to m.kzbin.info/www/bejne/h2bMooawgL6NpbM
@MartinPiper6502
@MartinPiper6502 6 күн бұрын
yes very much like that
@fredriksandebert7450
@fredriksandebert7450 6 күн бұрын
Thanks! 🙂
@MartinPiper6502
@MartinPiper6502 6 күн бұрын
Thank you for the kind support :)
@750kv8
@750kv8 6 күн бұрын
What a demo! Someone had a LOT of thoughts on this one. Subbed!
@MartinPiper6502
@MartinPiper6502 6 күн бұрын
Yeah it's a really cool effect.
@LogrusUK
@LogrusUK 6 күн бұрын
So good watching this - thanks, Dude!
@MartinPiper6502
@MartinPiper6502 6 күн бұрын
Glad you enjoyed it!
@luxocrates
@luxocrates 7 күн бұрын
This is awesome! Would love to see more analyses of demos.
@MartinPiper6502
@MartinPiper6502 6 күн бұрын
More to come!
@herrbonk3635
@herrbonk3635 4 күн бұрын
I've written some rotating "demos" in asm and high level languages on 286-486 computers, and have at least some knowledge of the VIC-computer internals. But I understood almost nothing of this during my first watch. Probably need to look up the word shear, or similar :)
@Emulous79
@Emulous79 8 күн бұрын
I always liked this game as much as it drove me insane.
@alanbenson1505
@alanbenson1505 11 күн бұрын
Thank you. I appreciate you doing this one, Martin.
@MartinPiper6502
@MartinPiper6502 11 күн бұрын
No problem. :) It's a nice game. Good memories.
@michaeljarcher
@michaeljarcher 12 күн бұрын
I would like to see a video on the tools. While I've loaded them up, they do seem to offer a great deal of cool stuff. Keep up the good work always entertaining.
@LogrusUK
@LogrusUK 12 күн бұрын
I, too, would like to see a video on your work setup and how you start / pause / warp the game. That would be interesting. Love Gribbly's great game. Not sure about it being simple. I always recall there being a lot going on. 😂
@MartinPiper6502
@MartinPiper6502 11 күн бұрын
Yes, this is on my list. I'm just wondering how to make it interesting. :)
@fredriksandebert7450
@fredriksandebert7450 12 күн бұрын
What a great game to take a look at - thanks! Have you considered doing a breakdown of effects in (somewhat) recent C64 demos; they seem to do impossible things sometimes. 😊
@MartinPiper6502
@MartinPiper6502 11 күн бұрын
Also, on my list of things to do. They can often be very technical though.
@fredriksandebert7450
@fredriksandebert7450 11 күн бұрын
@@MartinPiper6502 Yeah, I can imagine. That's why I thought just looking at a single effect might be plenty for a video.
@fredriksandebert7450
@fredriksandebert7450 8 күн бұрын
@@MartinPiper6502 Just a quick follow-up. This is the demo I was thinking of. I mean, the initial, big scroller... How on earth? kzbin.info/www/bejne/qobchq2hZr2sfrc
@MartinPiper6502
@MartinPiper6502 7 күн бұрын
Here you go: kzbin.info/www/bejne/m3KcaZqtdpiGiJo
@c64customs
@c64customs 15 күн бұрын
Thanks a lot :)
@MartinPiper6502
@MartinPiper6502 15 күн бұрын
Thank you for the support :)
@japangamejunk
@japangamejunk 16 күн бұрын
This stuff is seriously interesting. Huge respect to the people who not only understand this stuff but can help someone like me understand it too!
@rwxdesigns
@rwxdesigns 18 күн бұрын
The U.S. version of Rampage is a much better game.
@MartinPiper6502
@MartinPiper6502 17 күн бұрын
I think I need to have a look at that version at some point :)
@rwxdesigns
@rwxdesigns 16 күн бұрын
@@MartinPiper6502 yes, the sampled sound and better animation on the main characters also helps the game beat the UK version.
@Mr.1.i
@Mr.1.i 19 күн бұрын
and then the structure of games was re invented when nintendo launched the famicom
@michaeljarcher
@michaeljarcher 19 күн бұрын
I was the game's programmer, and if anyone wants to know. I released all the source code to this and all my other C64 games on GitHub a few years ago. It was my suggestion for this game. I know it a little Vaniety lol. Actually, I forgot some of the stuff I had to do. So it's always interesting watching this content! And there were, at the time, very few people who understood how this was achievable. Quite possibly, this is one of the few titles that have achieved so many sprites! I'm not sure if anyone has questions, but Ill try to answer as best I can.
@MartinPiper6502
@MartinPiper6502 19 күн бұрын
Oh splendid, it's always great to find an old developer from back in the day.
@MartinPiper6502
@MartinPiper6502 19 күн бұрын
This repository? github.com/milkeybabes/Rampage
@michaeljarcher
@michaeljarcher 19 күн бұрын
@@MartinPiper6502 Yes, this is the one. Sorry not many comments, but there was never the time to do such things when you are sleeping on a floor working 20 hours to finished a game. 😄
@MartinPiper6502
@MartinPiper6502 19 күн бұрын
I sometimes used to sleep under the desk at Argonaut's offices. Back then being 19 years old, didn't need much sleep really.
@michaeljarcher
@michaeljarcher 19 күн бұрын
@@MartinPiper6502 Lol Jez never was about much. Not seen him in a long time.
@michaeljarcher
@michaeljarcher 19 күн бұрын
Thanks!
@MartinPiper6502
@MartinPiper6502 19 күн бұрын
Thank you for the very generous support. :)
@JustWasted3HoursHere
@JustWasted3HoursHere 19 күн бұрын
Some very clever programming for the sprites in this. I used wonder why programmers didn't just use 8 spites in a row on a horizontal line and then before the raster beam finishes drawing the 8th sprite (but after drawing the others), just redefine and move the first sprite to a position after the 8th sprite so that you could have more than 8 on a line, but apparently the hardware cannot do this. Not sure if it's a limitation of the VIC-II chip or the clock speed of the hardware.
@MartinPiper6502
@MartinPiper6502 19 күн бұрын
If I recall correctly, the video chip will only clock out the pixels for each sprite once per horizontal line, when the sprite X position reaches the currently displayed pixel position in the horizontal line. This means even if sprite0 has an X position on the left of the screen, then halfway during the horizontal line the X position is moved to the right, the sprite won't be displayed again on that line. The latches for when to clock out the sprite pixels are reset for each horizontal line.
@JustWasted3HoursHere
@JustWasted3HoursHere 18 күн бұрын
@@MartinPiper6502 That sounds about right. Perhaps the VIC-II chip has a one-line buffer that it constructs the next line in and only scans the sprite info once before updating that buffer. I knew there was a reason that coders didn't do it, though they did discover the open-borders glitch, so who knows what capabilities are still lurking inside that old chip? ;)
@alanbenson1505
@alanbenson1505 19 күн бұрын
I'm 8 seconds in... and I know this is going to be good!!
@MartinPiper6502
@MartinPiper6502 19 күн бұрын
Glad you liked it :)
@alanbenson1505
@alanbenson1505 18 күн бұрын
@@MartinPiper6502 I love the 6502 on your name, Martin. I've just noticed it!! Have you done a Gribbly's day out video? I'd be interested to see if Braybrook used similar techniques to what he did in Paradroid in the scrolling routine.
@MartinPiper6502
@MartinPiper6502 18 күн бұрын
I will add it to the list :)
@alanbenson1505
@alanbenson1505 15 күн бұрын
@@MartinPiper6502 Thanks!
@GuybrushThreepwoodNZ
@GuybrushThreepwoodNZ 19 күн бұрын
A technically impressive, faithful rendition of a very addictive arcade game.
@MartinPiper6502
@MartinPiper6502 19 күн бұрын
Yeah I'm really quite surprised at how accurate it is.
@cpu_UP
@cpu_UP 19 күн бұрын
Thanks!
@MartinPiper6502
@MartinPiper6502 19 күн бұрын
Thank you for the continued support. :)
@jackmf3960
@jackmf3960 20 күн бұрын
Great episode. Thank you. I was curious how the big characters are solved. It's completely different here than in Barbarian. Duplicate sprites are a cool technique. It's strange that the processor has so much graphics copying. And yet it works. The programmer had to optimize it well. :)
@MartinPiper6502
@MartinPiper6502 19 күн бұрын
The regular spacing of the sprite grids help, because the code can more easily organise when to update the sprite registers for the next part of the sheet. It really is a good effect for the time period when this game was released.
@michaeljarcher
@michaeljarcher 19 күн бұрын
@@MartinPiper6502 Ánd the IRQ handler was re-written one week before the completions to save about 6 CPU cycles / IRQ. This is why the IRQ handler as absolute values and not form memory addresses, the IRQ was poked all over all the time critical, and zero flicker. I could of gone on to larger sprites, but memory limits make it somewhat impossible.
@cpu_UP
@cpu_UP 25 күн бұрын
Thanks, for this very interesting analysis. I did not know the game, but it is a pleasure to see these hidden gems and dissect their code to understand how they were doing.
@MartinPiper6502
@MartinPiper6502 25 күн бұрын
Glad you liked it and thank you for the super thanks :)
@gfdggdfgdgf
@gfdggdfgdgf 26 күн бұрын
"Hey boss do you want me to cleanup and optimize the code?" "Ah don't bother, it's not like anyone is going to analyze the code 40 years from now"
@MartinPiper6502
@MartinPiper6502 25 күн бұрын
lol