![David Youd](/img/default-banner.jpg)
- 124
- 2 336 627
David Youd
United States
Registrace 17. 08. 2007
Silicon Warrior mystery: Intro to Retro Debugger and 6502Bench
Exploring a 40-year-old C64 game mystery using the reversing tools Retro Debugger and 6502Bench.
Updates:
- 16 hours after I posted this video, Markus Fritze analyzed the Atari version of Silicon Warrior in Ghidra, and posted that the black hole logic is as simple as add 3 then mod 25, WAY easier to predict than the Commodore 64 version. Thanks Markus!
- The Retro Debugger's Debug Events comments bug has been fixed (in 5/25/24 release)
Links:
Retro Debugger (v0.64.66 with embedded Vice 3.1 in video)
- download: github.com/slajerek/RetroDebugger/releases/
- documentation: github.com/slajerek/RetroDebugger/blob/master/docs/README-C64-65XE-NES-Debugger.txt
- donation link: tinyurl.com/C64Debugger-PayPal
6502bench (v1.8.5 in video)
- download: github.com/fadden/6502bench/releases
- documentation:
-- reference manual: 6502bench.com/sgmanual/index.html
-- tutorial: 6502bench.com/sgtutorial/
Silicon Warrior (Epyx / The Connelley Group, Atari 1983, Commodore 64 1984)
- Atari manual: archive.org/details/silicon-warrior-epyx/mode/2up
- C64 manual: archive.org/details/silicon-warrior-c-64-manual
Updates:
- 16 hours after I posted this video, Markus Fritze analyzed the Atari version of Silicon Warrior in Ghidra, and posted that the black hole logic is as simple as add 3 then mod 25, WAY easier to predict than the Commodore 64 version. Thanks Markus!
- The Retro Debugger's Debug Events comments bug has been fixed (in 5/25/24 release)
Links:
Retro Debugger (v0.64.66 with embedded Vice 3.1 in video)
- download: github.com/slajerek/RetroDebugger/releases/
- documentation: github.com/slajerek/RetroDebugger/blob/master/docs/README-C64-65XE-NES-Debugger.txt
- donation link: tinyurl.com/C64Debugger-PayPal
6502bench (v1.8.5 in video)
- download: github.com/fadden/6502bench/releases
- documentation:
-- reference manual: 6502bench.com/sgmanual/index.html
-- tutorial: 6502bench.com/sgtutorial/
Silicon Warrior (Epyx / The Connelley Group, Atari 1983, Commodore 64 1984)
- Atari manual: archive.org/details/silicon-warrior-epyx/mode/2up
- C64 manual: archive.org/details/silicon-warrior-c-64-manual
zhlédnutí: 1 103
Video
Alter Ego, Explained in 64 Seconds
zhlédnutí 164Před 4 měsíci
Alter Ego, explained in 64 seconds. Created by Dr. Peter J Favaro. Links: - Dr. Favaro's books: www.goodreads.com/author/list/1344083.Peter_J_Favaro Alter Ego Reviews: - Digital Antiquarian's take: www.filfre.net/2014/11/alter-ego/ - Digital Antiquarian's wife's take on the female version: www.filfre.net/2014/11/dortes-view-alter-ego/ - www.c64-wiki.com/wiki/Alter_Ego - www.thealmightyguru.com/...
CRX2023: Mark Lemmert, Nox Archaist technical deep dive
zhlédnutí 270Před 10 měsíci
Mark Lemmert gives a deep dive into some of the technical underpinnings of Nox Archaist. Topics include A* search for NPC schedules, data compression, performance optimization, and 5-bit sound on a 1-bit Apple II speaker. Links: - www.crxevent.com/ - www.6502workshop.com/p/nox-archaist.html
CRX2023: Piracy AI vs. a Python script
zhlédnutí 235Před 10 měsíci
A discussion on the algorithms used in 8-bit game AIs; uses the game Piracy as a concrete example. Links for stuff mentioned in the talk: CRX 2023: - www.crxevent.com/ The python script: - github.com/c64cryptoboy/explainedIn64Seconds/blob/main/piracy/piracyAI.py Piracy game: - Piracy, Explained in 64 Seconds: czcams.com/video/_Nb6iEZDy18/video.html - Scans of the instructions are here, for both...
Piracy, Explained in 64 Seconds
zhlédnutí 725Před 10 měsíci
Piracy (game), explained in 64 seconds. Programmed by Clive Barrett. Notes: - Scans of the instructions are here, for both the C64 game and boardgame versions: archive.org/details/piracyInstructionsC64GameAndBoardgame - C64 game instructions say you win by blowing out all the enemy port holes. I tested this, and it does not generate an immediate win against a 2nd player, only killing all pirate...
DIY Musicbox River Lullaby - Prince of Egypt (1998)
zhlédnutí 1,2KPřed rokem
Music box arrangement of the song Jochedbed sings to her child as she sends him away on the river Nile, saving him from the Pharaoh's decree to kill all newborn Hebrew males. River Lullaby was composed by Hans Zimmer/Stephen Schwartz for the animated film Prince of Egypt (DreamWorks 1998). Ruby Noosa requested the music strip pattern, so here it is: youdzone.com/music/riverLullabyeV1.0.jpg
Introduction to Ghidra: Commodore 64 Copy Protection Analysis
zhlédnutí 3,5KPřed rokem
TOC: 0:00 Introduction 3:11 Basics of Ghidra and 6502 assembly 11:12 Introducing floppy disk copy protection schemes 16:39 Start of Robots of Dawn copy protection analysis 25:52 Using python window to perform deobfuscation 30:13 Introducing custom scripts 34:57 Crash course in CBM DOS calls 39:45 Code relocation using the python window 42:35 Searching binary for strings 54:11 Protection reveale...
Juke Box, Explained in 64 Seconds
zhlédnutí 156Před rokem
Many thanks to my fellow youtuber, retro-gamer, and music buddy Glenn Case for donating this episode. :) Glenn links: - CZcams video games: www.youtube.com/@glenncase-videogames421/videos - CZcams music: www.youtube.com/@glenncase/videos - Glenn has a ginormous internet footprint, here's the best place to get started: glenncase.com (or linktr.ee/glenncase) Juke Box manual: archive.org/details/j...
Make Your Own Murder Party, Explained in 64 Seconds
zhlédnutí 280Před rokem
Make Your Own Murder Party, Explained in 64 Seconds
Sword of Fargoal (VIC-20), Explained in 64 Seconds
zhlédnutí 697Před rokem
Sword of Fargoal (VIC-20), Explained in 64 Seconds
Music Construction Set, Explained in 64 Seconds
zhlédnutí 580Před rokem
Music Construction Set, Explained in 64 Seconds
Realm of Impossibility, Explained in 64 Seconds
zhlédnutí 405Před rokem
Realm of Impossibility, Explained in 64 Seconds
Lords of Conquest, Explained in 64 Seconds
zhlédnutí 630Před rokem
Lords of Conquest, Explained in 64 Seconds
8-Bit Symphony: Kentilla (Rob Hubbard)
zhlédnutí 343Před 2 lety
8-Bit Symphony: Kentilla (Rob Hubbard)
CRX2021: Chris Abbott interview "The Little Book of Sound Chips"
zhlédnutí 126Před 2 lety
CRX2021: Chris Abbott interview "The Little Book of Sound Chips"
Anastasia DIY Music Box "Once Upon a December"
zhlédnutí 3,8KPřed 3 lety
Anastasia DIY Music Box "Once Upon a December"
Sheet music excerpts from C64 JollyDisk Yule Log Juke Box
zhlédnutí 349Před 3 lety
Sheet music excerpts from C64 JollyDisk Yule Log Juke Box
World of Commodore 2020: Chris Abbott Interview
zhlédnutí 299Před 3 lety
World of Commodore 2020: Chris Abbott Interview
Candy Fun Tube (social-distanced trick-or-treating)
zhlédnutí 1,1KPřed 3 lety
Candy Fun Tube (social-distanced trick-or-treating)
I'm not a C64 guy but I am an 8-bit era guy and a reverse engineering guy and a Ghidra guy and this video hits all of those spots! I'm now working on my own bunch of stuff for using Ghidra with Retro systems just for fun.
Archon is the most confusing game ever.
This video is a diamond in the rough. So much to unpack.
I played this game so many times, all the music is burned forever into my mind. ;D
awesome rendition!
VC-20 Gorf has such a distinct "PEW" sound for your laser that it stands out amongst all of the versions. Pretty good port for such a limited computer.
Yah, Commodore did a great job with both the Gorf and Omega Race ports on the VIC-20. One of these days, I'm going to disassemble one (or both) to see what clever soft-sprite techniques they may have used.
Loved this game!
One of my favorite games. Thanks for the video.
Hey, I see you just dropped a new Lode Runner video yourself. :) Watching now...
Excellent
Those were the times programmers could get away with stuff like that.
The 1st part of the Wander was my friends old nokia phone song.
The Power of Jim is the only parameter anyone ever needs
Thanks
Works every time😂🤙
Beach Head, Castles of Dr Creep, Lode Runner, and Jumpman were some of my favorites as a kid.
You could’ve also used goats blood.
I remember those days like it was yesteryear. Pro tip, use goats. Less hurt for you and the C64 can't tell the difference
Raid Over Moscow anyone? Or can I not mention that game?
Fortunately my copy program never failed.
Unexpected solution!!! :O
Nice video, thanks.
Whenever that Logo appeared on my C64, I knew that a fun game with good quality was about to start. Electronic Arts was a good game company at that time. Good old times.
One of the best game tunes in history..
This is the best song))))
Intuitive is not a word l have ever seen used to describe Retro Debugger.
:D Maybe it's the kind of intuitive that means "easy to remember once you know" as opposed to "easy to discover". Either way, I found it more friendly than I expected.
This is awesome! Great example of working with a disassembler and debugger together. I just wanted to mention a couple of things. - 1:28:45 there's currently no facility to apply a rewrite function (e.g. XOR) to obfuscated portions of the binary in SourceGen. (It's on the to-do list.) - 1:02:15 you can toggle the byte-combining behavior project-wide with Toggle Data Scan (Ctrl+D) when you just want to format something quickly. - 1:00:07 pre-labels are meant to provide access to the pre-relocation address for relocated sections, so the label stuff doesn't happen automatically. (I have a "label alias" item on the to-do list that might be what you want; for now you just have to put the group label on the first byte.) - 44:13 I often turn off "seek nearby targets". Maybe it shouldn't be on by default? It's either really handy or really annoying. - 36:47 if you're uncertain about a label, you can stick a '?' on the end. (If you don't feel like writing out "unknown".) - you can regain some horizontal screen space when recording a video by collapsing Flags and Attr, which are rarely useful.
Lastly I would like to propose an answer to your question about what to do with leftover code up concerning the 6502. I personally would renew, reuse and recycle all electricity that comes out of intelligent work. Because it gains knowledge the same as we do. So use those magic squares. Start by arranging those numbered tiles in silicon warrior according to the art. And the Black hole(a) will guide you in the ways of proper handling the now coherent electricity.
So if one takes the 3 magic squares and multiples each number by 3. You get 9, 12, 15. Add those together and you get 36. Which stands for 369 degrees also ,6*6. The 3 rd 6 comes from 15 not being able to divide into 36 evenly and so leaves a remainder of 6. Now add those 6's together and you get 18. Well 1+8=9 and 3 is the square root of 9..
Wow you are so amazing. I have been watching this video 1-3 times a day since finding it 4 days ago. I do have a hopeful piece of info that should lead to something phenomenal. Those tiles are ,5 wide and five deep. That is a magic square. There are 3 magic squares total that are currently known. And because these magic squares can be added or subtracted from each other. They make up all other squares. I believe the other 2 magic squares are 4 and 3. How many power pyramids are there on that screen. Also how many sides? 4 if you count the bottom. Lol
Very great work. What a pleasure to remind soft old days when playing Ultima III as a teen.
That rewind to last read/write of a particular location would be amazingly useful. All this new-fangled stuff, it's going to put us all out of jobs!
You are definitely a computer scientist. In a way, you are treating this entire video as a puzzle solving a game like Zork's twisty little passages. LOL! I have learned more about assembly language from THIS video than I did back in college. BTW- I hated coding at such a low level but it was a required course. Changing the labels makes it much easier to understand. Fun video watching how your puzzle solving mind works.
Awesome video. Retro debugger looks super fun
Hey old friend, long time no see. Yah, try out Retro Debugger on some old favorite game, you'll like it.
Thanks for the video. I learned some good stuff that I will definitely try out. I use this program all the time but I guess didn't rtfm enough!
Thanks again for such an informative video. For the heck of it, I've looked at the Atari code (with Ghidra and my Atari8BitGhidra plugin - it's on GitHub): completely different! I guess there was no shared source code - that was quite common at that time. The "rule of 3" on the Atari implementation: at game launch the variable for the black hole tile is set to 0. When a black hole should appear, the tile index is incremented by 3 and that's where the hole will appear. At 25 it wraps around. So, years, trivially to predict. And the comment suddenly makes sense.
Whoa, thank you for so quickly answering the question I posed at the end of the video! I just found a youtube video showing the black holes on Atari gameplay, and yes, it's really as simple as t=(t+3)%25 in the original. :D I find it fascinating that (you determined that) the Commodore port didn't use any code from the Connelley Group's Atari original. Does anyone know who the original programmer is? Yes, Ghidra is quickly becoming well-suited for 6502 work. The most useful thing to me is the pcode emulation, which allows large windows of self-modifying 6502 code (common in copy protection) to update itself in the Ghidra dissessembly, just as it would on the 8-bit machine. On my c64_ghidra github, I wrote a rudimentary Ghidra emulator harness that gets the emulation job done, but it could certainly be improved upon. Once again, thanks for looking into this; you sir have officially put the nagging black hole question to rest. :)
I added your findings to the video description in the updates section.
@@DavidYoud You video about Ghidra I still watch ever now and then. It is such a well done video on how to approach reverse engineering C64 code. I didn't know about 6502Bench, but I am on a Mac, so I try to avoid Windows.
@@DavidYoud It was quite common to _not_ have the code for a port. Often the license for a specific platform was sold and the company then was looking for developers to write the code. If you were lucky, you had access to the original version, so you could see. That combined with schedules counted in weeks, it often resulted in quick ports. Also: we can't forget that often the development happened on the original machine as well. A machine without enough memory. So you see code with 1-character symbols and no comments at all. Today some old code can be found at GitHub, like Fort Apocalypse - it is really written to be compact. Been there, done that… Later (Atari ST, Amiga) cross-development was more common. I've developed an assembler (TurboAss) for the ST, which supported an output API. This was used to transfer via parallel cable code to e.g. an Amiga with a minimal stub. Crashes were caught and the TurboAss supported not just "GOTO line number", but also "GOTO address", so you could just enter the crash address to see where the crash happened. Turn-Arround times were less then 30s, not bad at the time.
@@markusfritze I'm going to pin this thread to keep it on the top of the comments. :)
Did you get the chicken?
floppy disk plastic only blocks visible light; it's completely transparent to the infrared that'll REALLY fuck your eyes up. it's like one of those cheap green laser pointers that lacks an IR filter: not enough visible light to produce pain or force your pupils to constrict, but more than enough IR light to fry your retinas. actually staring at the sun with your bare eyeballs would be better for you.
Amazing
Oh nutz would have been nice to know about this trick before the eclipse 😮
I'm not sure if it's eyeball-safe, but it's 8-bit fun. ;)
Had all the nurses outside with the floppies too 😂
Niiiiice!!!!
super
Thank you! Please more of that
From the wiki entry: Alter Ego was the first game that was also released in a "female version". Furthermore, it was the first game to get a "parental warning". Sounds like something everyone should play at ~14. Bonus points for not being woke =)
Explain Mama Llama in 64 seconds.
Favorito amei esto🎁
legendary
Hey! Nice work. I produced and developed this, and wrote The Big Kill. Thanks for your review!
I'm so pleased that you dropped by! Thanks for adding this fun memory to my childhood. :)
Fairly good SID interpolation but feels slightly different than what I remember on hardware?
Woah this is so cool!