CodeWheels - Early Anti-Piracy that was easy to bypass | MVG
Vložit
- čas přidán 17. 06. 2024
- By the late 80's, Manual based copy protection has become trivial to bypass by simply photocopying the manual itself. In an attempt to mitigate piracy and with the increasing reliance on hard disk installations, publishers introduced a new method - The CodeWheel. In this episode we take a look CodeWheel anti-piracy , with examples of how they evolved. We also take a look at how to crack CodeWheel protection with a Commodore Amiga an Action Replay Cartridge.
► Consider supporting me - / modernvintagegamer
TimeStamps:
00:00 - 02:49 Introduction to Manual Protection
02:50 - 08:40 CodeWheels and their Evolution
08:41 - 16:09 Cracking Codewheel Protection
16:10 - 17:32 Suummary
Sources/Credits:
► Online Codewheels - www.oldgames.sk/codewheel/
► MobyGames - www.mobygames.com/game-group/...
Social Media Links :
► Check me out on Facebook : / modernvintagegamer
► BandCamp : modernvintagegamer.bandcamp.com/
► The Real MVP Podcast : player.fm/series/the-real-mvp
► Follow me on Twitter : / modernvintageg - Hry
Oh yes, the good old days when copy protection didn't mean "let's infect our paying customers' computers with rootkits".
Considering this definition (I bet you're talking about current crap like Denuvo, and rightfully so), I think the good old days died around ~2004 or when was it that they introduced StarForce
You are thinking of anti cheat.
@@SourceCodeDeleted Maybe, but if you look at games like the new Doom game, it's not even multi-player, so what's the point of having anti-cheat? I believe that has one of those rootkit DRM setups, and you can't play w/o installing it.
@@MrSlowestD16 it is multiplayer, it's also very competitive, it needs anti heat.
@@MrSlowestD16 anticheat *
There are a ton of channels out there that cover computing history, but I've never seen them reverse-engineer live assembly code. That sort of thing keeps you interesting and stands out from the sea of talking heads!
I was hoping to see something like this in this video. MVG does not disappoint. Highly interesting to me.
Mistakes WERE MADE
The worst is watching computing/gaming history channels and hearing these people who clearly didnt play these games or use these systems, but try to comment on them.
Yup, MVG knows his stuff and shows actual examples, not the usual "I think this is how they did it" on other channels. Fascinating stuff.
the only text mode debugger I’ve seen is GDB, and that’s on a modern x86 Linux system, not an Amiga.
One day I'm going to pay you to read me a bed time story with your calming voice. Love your content
Mistakes WERE MADE
I didn't know I needed this until I saw this
Modern Vintage Storytime
Lmao
Creepy bro
My dad would bring home pirated floppy disk games somewhat frequently, and we had a drawer full of photocopied manuals and wheels.
You disgusting criminals!!! But yeah.. I remember kinda the same, tho it didnt last long as it was just about when CDs started flooding the market, then we were looking for keygens and no-cd fix.. obviously :D
Great dad. I for one didn't really give a flying f if the game was pirated or not when I was a kid, the most important thing was that I played them. I remember that 75-1 NES cart very good and Contra on it was the same game without robots as our neighbors legit Probotector. Later I found out why.
Back then my dad had:
• Connectix vgs (modchip version)
• Visual boy advance (trash)
And also bought ROMs on CD-R for GBA, and the bootleg PS1 games
@Pablo S. this might be unknown modchip present on my ps2. It boots but doesn't show any modchip info unlike matrix
When I was a kid back in the 80's all the games I had for my Atari 8-bit were pirated, simply because there was no alternative under communist regime and no copyright laws whatsoever. You'd buy cassettes full of pirated stuff at all kinds of places and exchange gatherings and you could even get sort-of-manuals, which instead of being a copy a the legit manual was a bunch of general info and tips about the game written by some rando (the 80's equivalent of gamefaqs, basically ;D) on a typewriter and then copied on a garbage, 80's communism-grade photocopier - half the time you couldn't even read this crap, especially if whoever was printing those decided to slap on some graphics/logos. Fun times.
"I have no f-"
Bruh that was hilarious lol. Normally this channel is well presented and mature so a joke like that was like a punch out of nowhere.
Oh yeah, the pretty standard reply to these questions.
And the audacity when the game replied in kind :p
also, not drawing attention to it made it better.
I remember "brute forcing" Monkey Island with random dates that I thought were correct for the period and it usually took me from 15 minutes to 1 hour.
That alone is a game on its own
I love how at 0:46 he's just talking normally while typing "I have no fucking clue"
I missed it, thanks :D
I have no fun*
Good spot...We've all done that in adventure games,
Well, the video is dubbed over but ya still hilarious lol
I thought it was "I have no friends"
I wonder how many of those CodeWheels became unusable from wear and tear, or maybe just by being exposed to the elements?
:o Mario him self!!! /Salute to both
I played pool of radiance on the PC a ton when I was a kid. memorized about a half dozen codes from the code wheel. could use them to brute force into the game...
POR and Hilsfar and possibly others had a command line to execute them, and if you set an additional instruction after POR or whatever the executable was, it would just straight up bypass the copy protection
also, with the other gold box games, the wheel is identical but the codes are mostly different... however you have enough space slightly to the side of the code to pencil write the code from another code wheel.. that would let you have one wheel for both champion of krynn and PoR/Hilsfar
I had a few code wheels often with big adventure titles like Starflight. Mine lasted through the time I played. I think some of the busted ones were people taking them apart and trying to photocopy the segments and making their own wheel.
@@retropuffer2986 Some for sure, but I can bet that not everyone had the same temperature and humidity conditions at home, so some might have just died without abuse. It is after all just paper (would die even if it was plastic after all).
NOP! One of the more useful instructions, sometimes doing nothing is exactly what you want.
This honestly hasn't changed. When debugging modern games you still sometimes need to change how the game branches on the fly, and knowing op code for NOP saves you a lot of trouble. Though, many instructions on modern X64 are multi-byte, so sometimes you have to insert several NOPs. Fortunately, you can just check disassembly to see that the rest of the instructions have not changed, just like MVG does here.
Also the key to countless 8-bit immortality POKEs.
Some CPUs have multi-byte NOP instructions... which saved a bit of thought. These things were there for instruction alignment which helped with efficiency.
Memories of Dial-A-Pirate. Fun stuff compared to some of the other crap at the time like that god awful lenslok you covered (only ever had one game that used that).
Mistakes WERE MADE
having to calibrate the damn thing sure was stupid...
Good ol MVG with breakfast, always my preferred ways to start my Monday mornings.
Same lmao
Well, I am using the bathroom while watching. 🤷🏽♂️👍🏽
I'm enjoying it too!
that's unless ur in the uk. Then It would be 12-1pm
@@HypeTV_Official that’s when I get up in the UK!
15:33 You've just "mastered" or "freed" a game of it's copy in front of my eyes! Brilliant! That felt so satisfying
The first game I remember using one of these wheels was Rocket Ranger on the C64 - which was completely unplayable without the wheel, even if it was 'cracked'. To get from one place in the game to another you had to enter how much fuel to use, info you got that from the wheel. I never thought about it as copy protection as a kid, it was just part of the game.
Love these copy protection vids! Watching from Pakistan while eating Biryani 😊
Perfect lunch time upload. Doing the same here!
Second reply to verified comment btw I watch you
@@GoatStormChaser thanks 🙏
H
@@KarlRock H
My favorite anti-piracy method in the 90's was an impossible astronomy quiz, for example, "what is the rotational velocity of Jupiter?" Then, Wikipedia comes out 10 years later. (The information there also works) XD
The "let's be a nuisance to our paying customers while pirates will just NOP through it anyway" school of anti-piracy has a very long history lol.
The Elder Scrolls Arena, the first one, had copy protection that used it's manual, but was different than just looking up a word on a specific page. the game, once you got through the first part, would ask you a random question you would have to look up the answer to in the manual. Like "what is the cost of using fireball?" or "what is the attack power of a diakatana?". It's manual was quite big too and indeed had charts for most of the games weapons, armor, etc.
same "crack" method as shown here applies. you would type in any answer and because the CMP or TST was NOPed, it would always return true
@@mopkrayz i was merely pointing out it was a thing because it was unique and different than ones in the video. the game is fully free nowadays and needs no crack.
Civilization had a similar one, asking the player to specify what the prerequisites of a given technology are, expecting the player to simply look it up on the tech tree poster. This copy protection is, naturally, completely useless on anyone who played a lot of Civilization.
Wow... Trip down memory lane! Totally forgot about these! Great content MVG, really enjoy these!
I still have an Amiga Monkey Island, Dial-a-Pirate code wheel. Great nostalgia. One of my mates got his mum to copy the colour codes for Jet Set Willy 2 on graph paper... It took her a week.
I lost mine years ago :( EDIT: pc version, kixx rerelease. However mi2 was cracked, had the mojo screen but anything worked. Oh Kixx
I just started learning some assembly late last year to do something useful while unemployed. Primarily Z80, but some 6502 as well. This was absolutely freaking cool to watch while having just a basic understanding of what it's all about! Awesome video!
MVG videos take the sting out of Mondays. Great content!
i love watching you explain things while coding its soo interesting ! Amazing video
I'm very impressed with the way your channel brings genuine technical competence to a field (retro-computing) that is dominated by the spectacle of nostalgia.
You really are a great technology communicator, definitely embodying the archetype of the elder hacker telling you how it _actually_ works.
Xcopy! - sheds nostalgic tear -
It looked so futuristic. Also back then when my family migrated from amiga to PC I was quite befuddled that the file copy command under Dos was xcopy.
This really brings me back to my university days, where one of my assignments was to change the timer in Chase the Chuckwagon on the Atari 2600. Well done video!
"I have no f-"
MVG! Keep it PG!!!!!
Come on... it was hilarious!
@@zgolkar For sure
He clearly was typing "I have no final answer". What were you thinking he was typing? ;)
He clearly only wanted to type "I have no friends".
-standard disclaimer for jokes which might be infuriating: I do not think he has no friends-
@@Ze_eT lol I genuinely thought he was gonna type "no friends"
Super interesting, as always. Especially the "live" cracking session :)
For some reason I encountered code wheels twice in my PC gaming youth: the Gold Box game Curse of the Azure Bonds and Monkey Island II: LeChuck's Revenge.
Curse had a habit of popping up a code wheel check at random times when traversing the world map, too, and it did so with a clear homage to Monty Python and the Holy Grail.
Great video mate, that X Copy screen is too nostalgic!
I enjoyed the live cracking part, I hope you'll do that again!
Good stuff as always. I can't remember if any of the games I played as a kid had code wheels, but I definitely remember the manual "Manual" protection.
I purchased "Space Ace" for PC back in around 1991 which came with a code look up table (dark background dark text) which I manually copied out onto a plain text document! That took a while, but a learned to type faster through that experience! Actually buying and owning original games back in the day was such a special experience that the younger generation will never know about! Great video.
Cool to see a video on these. I helped create an ARG for an event a couple years ago and finding multiple pieces of 2 code wheels. I actually used the Another World and Monkey Island layouts as templates for the two of them!
The disassembler stuff was great! More of that please! :)
The gold-box SSI games were a gold mine for learning these kinds of things- not just copy protection, but also hex-editing save games to change stats, exp, etc.
7:05 whoa, I totally forgot about this game. That was a huge nostalgia trip. not to mention the Assembly, which was my first programming language.
Thanks for the fun video mate
Love that you showed the disassembly steps
Great Video MVG
These videos never cease to entertain me
FA18 Interceptor is the reason I still set all my gamepads to inverted. :-)
Also, I just made an NES emulator in the last couple months, so I learned a lot about 6502 Assembly. That was really fun watching you reverse-engineer the protection code!
Very glad to hear the older theme intro/outro themes!
Wow I forgot about these, thank you for this video!
Codewheels were awesome. Much better than looking up pages in the manual.
Thank you for taking me through the debug and crack process. As a child in the 80's; i had tried it out of desperation but didn't have enough knowledge or documentation even in late high school to be successful. I had enough knowledge to see the path to the goal; but not the skills to make it there myself. VERY interesting for a nerd like me.
Real examples are what I tune into this channel for! Keep up the sick hacks man!
Loved the live cracking. Thanks MVG
Thank you very much yet again. Fascinating stuff I haven't seen since my dos assembly days. You're very impressive
Thank you for another video. We love you MVG.
I was always wonder how they are cracking amiga games. Thank you for that!
That was super interesting, it would be good to see some more cracking stuff.
Very nice work 👍 Always love to watch cracking and reverse engineering stuff!
Man, this is the first time I’m seeing a video from this awesome guy less than an hour after dropping. It’s kind of exciting LOL
tbh i did understand nothing of the cracking part, but was amusing to see lmao, great video as always, MVG!
So interesting once again. Thank you for keep making video's! Will join Patreon soon
Wow, seeing that Interceptor codewheel again takes me back to Christmas 1988, playing the game with my Dad in the big, downstairs TV! Great memories!
your broad level of knowledge and ability to explain it at a high level is entertaining! cool vid as always
You are my inspiration for data preservation. I've found my passion because of you. I'm indebted to you mate.
You said it in the summary, it was nice to get the box, code wheel, manual and such with the legitimate copy.
Those assembly cracking parts of the video are so interesting
Agreed!! We need more of that!!!
Those custom Amiga icons are so cool! They even change when you click on the program!
Love the nitty gritty as a fan of cryptography - amazing to see the standards of the way-before my time! Keep up the great content :)
Thank you MVG for all your content.
Love these longer videos man
Loving this channel, keep up the great work!
It's always a good day when MVG releases a new video :)
I remembered I had the entire Gunship 2000 manual photocopied, and although the actual codes were only present on a few pages the manual had so much interesting stuff in it that it really needs to be included.
As 40 yo man, that one brought great memories, we used to borrow games from one another and disassemble the wheels and copy them with pen and paper sometimes it took hours but it was fun to do with friends instead of homwwork
Maybe if you'd done your homework, your English would have improved.
@@Ndlanding internet grammar police is not wished here ... or anywhere else
@@zozzinator Place yourself under arrest!
You know what I love about MVG, is he busts into code and shows you examples.
Another world looks so cool man I really love your videos they are always entertaining
Amazing! Thanks for the memories!
Take care!
Loved the video. I cracked my first and only game by doing just that. I wold love to see more videos on the subject
Love that Windjammers shirt! A masterpiece and a piece of my childhood.
Love these videos man, great stuff. More please 😃👍
Nothing makes me click faster than a video on copy-protection and, hopefully, how it's been defeated. As far as that goes, yours are always top knotch. The little assembly tutorial was especially welcome, since I'm just getting into machine code level rom hacking
13:11 Whoever put in the code "VULCAN" in that AD&D game must be a Trekkie.
That or referencing the volcano on the Italian peninsula of the same name, or the Roman god of the same name. Lotta things named 'Vulcan', surprisingly.
I know some of the guys who programmed and designed SSI games, and yes, they are. In fact, the reason I know them is because I worked with one of them on a Star Trek game.
Might have just been a fan of the amazing british Vulcan bomber also...
Great vid MVG, thanks my man. I loved my C64 but don't remember any codewheels or anything for any of the games I had - Feel like I missed out haha :P
I love watching this stuff while drinking my morning coffee 👍
That was super interesting. Love your stuff
Ah remember those code wheels, especially the monkey island ones. :) really appreciate the live cracking session!
back when i was a kid in the late 80's/early 90's i used to have a drawer full of these. well, these and those clear red plastic lenses that you used to read the hidden messages in game manuals in order to get a password to start the game.
Great video as always!
Today on MVG: "Now let's fire up an emulator and reverse-engineer the copy protection."
Tomorrow on MVG: "This week, we're doing cracktros."
My man really just pulled out assembly. This is why i subscribe to your git repos.
This is really interesting and fun to watch. More videos like this :)
That was fascinating. A method even from many years ago, still useful.
This might be the best MVG video to date.
Here in the UK, around this time I remember the photocopier in the library was 5p per copy, a lot of money at the time when you add up all the pages. That was why I manually copied all the info I needed from Zaks's Programming The Z80 into a notebook rather than photocopy it (it was in the reference section too which meant it couldn't be borrowed out. That was a lot of sessions after school/on Saturday to get it all done).
"Nobody will ever bypass this"
MVG: lol NOP
The first game I owned that had a code wheel was Legacy of the Ancients for the Apple II from 1987.
This discussion reminds me, anyone remember the variety of hint books for the old Sierra adventure games? The earlier ones were printed in invisible ink and you had a marker that would reveal the answers (so you could only get the hints you need without spoiling everything). Later hint books had a red film "adventure window" to reveal the clues which were obscured with red ink.
This is the kind of tutorial. I will never, ever need but dam right I will sit through and learn.
13:20 after ADDA.L D1,A0 the register A0 points to the actual codewort for the currently asked combination - which you can compare using the M command (followed by the contents of A0) and the codewheel (which also can be found online). Just 4 fun ;)
I love seeing people play around with memory and commands and hacking programs. It shows you just how broad hacking is. You have to know low level code, high level code, binary, hex, common coding practices, a basic knowledge of the program you’re hacking, etc. there’s just sooo much to it. A good hacker has experience with all that and so much more and can apply that knowledge in many different strategies to accomplish some goal of bypassing security measure or changing data
Excellent video, as usual.
Another game that had a fun method of copy protection was Rocket Ranger. It was clever as it was integrated in the design of the game. In the game you had to fly from a place to another, and to do it you had to choose the destination. But to select the destination you had to provide the exact amount of fuel (Lunarium) necessary to go from your current location to your destination, which of course should be read on a hard-to-photocopy table that came in the box. If you put a random number you would land at a random place at best, or more likely you would fatally crash on the ground. If you hadn't seen the original copy of the game, that would be very confusing as you had no idea why you kept dying :)
I don't know anything about coding, and I know absolutely nothing about software development. I still find these videos sooo interesting. Thanks MVG!
... I needed this video 30 years ago when I was playing Pool of Radiance all the time
One of the coolest vids in a while.
since it was just a bend of compare, several steps still are open:
a) check if some more compares are used.
b) go some routines up to set the jump to starting point (the jump after the compare)and not to jump in the function. that would skip the check and askings completely and make the modify more clean.
c) modify the executable, to match up changes in memory
d) make some nice intro for the demo scene.
i've seen assembler code last time a long long time in past ... thanks for the reminiscence
Nice to know about this topic by a programmer/Dev perspective while showing code.
Always a nice game content !!
For Wing Commander you had the manual and also those postersize Blueprints of spaceships as a protection. genius.
Very interesting. More of this type of content!
Nigel Mansell World Championship and Lotus 3 for the PC also happened to use the same code wheel! :)
I also got a budget copy of Formula One World Championship that just had all the manual word selections on a single sheet of paper!
Wow this brings back memories... I had a code wheel, that I used to learn the irregular verbs when studying English :D.