Fun fact: Bleem's case set a precedent and it's because that precedent you can use and develop emulators legally nowdays. Don't know if that's what they wanted or not, but Bleem went out of business to save the emulation community.
Imagine Randy pulling up at ID Software like: "Ayyyyy i have a complete port of Doom for the SNES and it actually runs, pretty cool huh? wanna release it or what?"
Lobotomy Software did the same thing on the Sega Saturn with Quake. Instead of porting the Quake Engine to the Saturn, they were using their very own custom-written "Powerslave" engine, which they originally used to port "Exhumed" (aka Powerslave) to the Saturn. Not only did they make the impossible possible, they even added dynamic lighting. Something the original Quake Engine didn't even have.
Yup, I remember it being on Snes and thinking 'omg this is barely playable' back in those days, but for some of us it was the only way to play Doom. I had Doom on the Sega 32X and thought it was so much better there, not knowing the music was messed up (I preferred the 32X music because of that), but Doom on 32X was missing levels sadly
As a teenager in the 90's, I can confirm that this cartridge was a blast. Yes, very underwhelming compared to the PC version, but for most of the kids of that era, that didn't had access to computers, the Snes port was a blast to play. It looked great, because anything 3d related to 16bit consoles were impressive.
It had its quirks, but honestly, I prefer most of SNES doom's music to the original MIDI versions. Besides, it took me and my dad an entire day once, of leaving the console on, playing from E1M1 all the way to E3M8. No deaths. My dad's last rocket was fired, just before the spider demon killed him. That final rocket, killed the spider. Game was won. We cheered VERY LOUDLY. One of my best childhood memories.
It's interesting to me that people forget: 1. DOOM was a cutting edge PC game for it's time. Even if you had a machine good enough to run it, you probably weren't running it max window size at 60FPS a la modern source ports. 2. Low FPS 3D games on console was the norm and expected. Look at any SuperFX game, look at Hard/Race Drivin' or any quasi flight sim on the 16 bit systems, look at the fondly remembered SNES Jurassic Park with it's first person sections that arguably run worse than Doom. 3. MouseLook wasn't a thing yet. You could use a mouse to control Doom ; but it was for analog *movement*, not aiming. Even when DN3D came along and had it as a basic feature, you still had to contend with the nauseating perspective distortion that came with this era of "fake" 3D.
I played this on XBAND back in the day. Once I remember being terrified when I ended up face-to-face with my opponent while unarmed only to realize that he wasn't actually facing me, since the engine does not draw any other angles for enemies. They are always rendered facing you even if the other player is looking somewhere else!
I usually don't use the word "genius" loosely, but this guy is for sure a genius programmer and engineer too to be able to make his own devkit, and everything from scratch, this require some badass skills. Im in awe, plain and simple. Thanks for sharing this story MVG, i had no clues of all the secrets behind this incredible port.
Seeing this video made me wonder how much better Doom on the SNES could have been if it was 2D with mode 7 and some layers. But I suppose impressive graphics come first when it comes to Doom.
@@kneesnap1041 I was thinking kinda like the top-down stages in Contra 3. Mode 7 would be used to rotate the background below the player. Additionally I would suggest using foreground masks for a cone of vision and lighting effects. So essentially the map in Doom haha!
Developers in the 90s: I ported the most significant game of the year to a 16 bit console with a custom built engine a chip and a piece of paper Developers now: buy better PC.
Hopefully not for long. We'll pretty much hit the wall in terms of Cpu speeds, I think. Hopefully this means software developers will start caring more about performance instead of making everything a wasteful web app packaged with Google Chrome
That's generally what I like about consoles: the specs are the same on everyone's system. That's why the game publisher can't expect the users to upgrade the systems, but instead the publisher itself has to optimize things best it can.
I will never forget when I was a little kid probably around 8? years old the first time seeing Doom on my neighbor's computer was the coolest thing I had ever seen in my life. I remember later on when I had it for SNES that I preferred the PC version on my neighbor's computer because when you picked up the shotgun he smiled, which he didn't do on the SNES.
I played the Atari Jaguar version first and thought it was great until I saw the pc version and realised how cut down it was (it didnt have any music or the cool lighting effects). I ditched my trusty Amiiga and bought a pc the day after seeing doom running on a friends pc. It was so far ahead of anything on the Amiga that I knew the future of gaming on home computers lay in the pc.
I remember paying price of a snes console for that game when it was released, still got that cib copy of the game. It seemed impossible to play doom on snes back then
@@carbonara2144 At the time even the beefed up Amigas couldn't match a pc and Accelerators and rtg cards were not cost effective compared to just buying a cheap 486. The Amiga was a wonderful machine but Commodore didn't capitalise on the lead they had. The Amiga could be where the Mac is now, a distant second format but still profitable if Commodore hadn't half arsed things and asset stripped the company.
@@Paultimate7 subs don't really count that much. you could have a million subscribers while only having like 10 thousand views per video, and im not specifying mvg don't worry.
"bleem would win on all counts but it forced them out of business" just the idea of that happening seems so obvious that the justice system can be abused. great video as always.
Sad reality, a lot of the times even if you're in the right and know you'll win a case, it's usually cheaper to settle out of court. Unless you're talking millions or billions, where the legal fees are dwarfed by the actual litigation amount.
@@rsmith02 no need to be a dick, I'm asking because that situation is nearly unheard of. When id agreed to the port, why wouldn't they give him the source to study?
@@MikeDawson1 if you used the source there's a danger you might use it and be taken for copyright, so for legal reasons he would want to avoid it, plus he would be having to change significant amounts to get it to run on there anyway.
I see, if you did watch the video and are just searching for additional info, then I apologize. Here's an interview where he talks about starting the project independently. www.gamasutra.com/view/news/343989/Inside_the_work_to_get_Doom_on_the_Super_Nintendo.php
@9:57 The reason the SinTable has **1280 entries** instead of the usual 1024 entries (360°) is because the Sin and Cos table **share common data.** The CosTable starts at offset 90° because Randal made use of the Trigonometric identity: _cos(x) = sin(x + 90°)_ A normal sin table has 360° divided into 1024 sub-divisions but since cos starts at offset 90° we need **an extra 90°** worth of data. Thus, 1024 + 90/360*1024 = 1024 + 256 = 1280 entries. It is created via DOOM-FX/source/mksin.c
That doesn't really make sense though because that extra 90 degrees would be identical to the first 90 degrees. So all you would need to do is mod it by the table size?
@@smeezekitty that extra step makes the lookup for COS take longer than SIN. Asymmetry of the timings may have been an issue, or just trying to save every cycle possible trading off a little more cart space
@@smeezekittyIt is a classic **speed vs size** trade-off. 1. The fastest way takes the most data and the least code. a) sin = SinTable[ angle ] b) cos = CosTable[ angle ] 2. If we want to use a single table then we need extra code. This is _slightly slower._ a) sin = SinTable[ angle ] b) cos = SinTable[ (angle + 256) % 1024 ] Note: 256 represents 90° in our table lookup.
@@MichaelPohoreski Its surprising that there would be a noticable performance penality doing that though. Especially becasue the mod by 1024 would be reduced to bitwise & 1023
@@smeezekitty You have been spoiled by GHz CPUs. Back when CPUs only ran at a few MHz _every_ cycle matters -- _especially_ for 3D math. **Even today** Intel is bringing out Advanced Matrix Extension (AMX). fuse.wikichip.org/news/3600/the-x86-advanced-matrix-extension-amx-brings-matrix-operations-to-debut-with-sapphire-rapids/
When a friend of mine showed me this game on the SNES, I thought it looked/ was crap. Faster-forward ~25 years and now a software developer. I think it is seriously impressive! Funny how perspective changes... 🤔
I mean, it still looks like crap and is the second worst version of Doom in existence, it's just also very impressive that it exists at all. A game being impressive doesn't actually make it good.
If you change the oscillator clock crystal for the SuperFX 2 chip on the cart to around 27Mhz, the performance is way better and there is little to no input lag on the game. You can actually do that with the real cart without changing or altering the SNES itself. I honestly think you should try it and make a video on your findings. Good work, like usual.
Why was this never considered on hardware? Was it just a case of Nintendo discouraging tampering with their proprietary chips? I wonder how an XBAND game of Doom would run with two 27MHz carts?
@@nimblenavigator9520 Presumably not all Super FX chips would run reliably at that speed. It's over-clocking, since the SuperFX is an actual CPU. The chips cost a lot to make, if only 80% of them work at 27MHz, then you'd have to throw away the other 20%. But if instead you run it at 21MHz, over 99.9% work fine. That's just an example, though in fact they did run the chip at 21MHz. So 27MHz isn't too much of an extra squeeze, but even if it caused 2% of cartridges to fail, that's thousands and thousands of returns, and they all cost money. 2% of a million is 20,000 for example. So they run these things conservatively.
I really really hope the early version of doom for the saturn gets leaked, was changed as even though it had a smooth frame rate carmack did not like Texture warping....and we got the port we did
@DPAD-FTW Carmack, like many that become successful in the games industry, has an ego. In hindsight, I'd imagine he's realized what a mistake Saturn Doom was and that he should have just left it alone.
@@IanThatMetalBassist - John Carmack isn't an idiot and you're not aware of the entire story - that original Saturn 'port' ran fast but looked like absolute shit - it was half res, it suffered from very bad texture warping and the controls, speed - the entire gameplay - was totally unlike Doom. Carmack is responsible for so, so many fundamentals in modern game coding - give the guy some credit and stop glorifying a shitty port that you've never seen.
I can see why Carmack would have been intensely skeptical about the texture warping at the time. If you've read the book "Masters of Doom," it's clear how much he wanted those textures to be seamless and depth to be readily apparent. The high quality textures, smooth transitions, and lighting was more the crowning achievement of the Doom engine rather than the framerate itself.
Carmack did later admit he made the wrong call on the Saturn port. And that more work should have been put into making better use of the consoles acceleration.
@@herakets3259 - Exactly. There were other FPSs - Terminator - Decent etc - what made Doom was its graphics. its gameplay. If a port takes those two things away? then it's no longer Doom. Of course you can make Doom run fast if you use incorrect perspective mapping, disable all the lighting, lower the resolution and remove half the enemies - you can also make a 747 fly faster by removing all the passengers - kinda defeats the purpose though. I mean - it's hardly like the Doom engine wasn't optimized! it's John fucking Carmack lol - if your engine is faster? its because its not as capable.
This video was too short which is a clear sign of me enjoying it. My hope for the scene actually is that they get SNES Mouse support to work, I think way too few games actually have support for it (I'm looking at you, SimCity!).
The mouse does work with snes Doom. With an original snes mouse, at least. (he did mention that he only tried it with a hyperkin one) It's only basic support, though. For example, in Wolfenstein 3d for the snes, the right button was mapped so that holding it walked forward and double-clicking opened doors. You could also use the controller and mouse in tandem. Which might sound awkward, but worked surprisingly well. In Doom, it's mouse only... if you decide to use it. Also the buttons only have one function. Left shoots, right is the use button. Just a novelty, since you have to keep sweeping the mouse upward to walk forward. Couldn't imagine playing the whole game like that. Just tested it with both on real hardware to refresh my memory. Hadn't tried playing with the mouse in years.
@@RunLikeAVillain Oh nice to know, thank you 👀 I can't verify that sadly since I don't have Doom for SNES or a Mario Paint mouse in my collection and by going the emulator route, it is pretty much meaningless since Doom has so much better ports on PC anyway.
At the X-Band video gaming network, we had to reverse engineer this title. It was the only way to make it work with our network stack. Disassembled it. Figured it out. Patched it. This title was a work of genius. THANK YOU FOR THE SHOUT OUT!
I first heard of Randy Linden when I was researching Bleem. The guy is a legend. Ironically, I believe he went on to work for Sony for a bit after Bleemcast. I think some people mix up/assume that Doom on SNES supports the mouse because of Wolfenstein's support for it. Great video as usual and thanks for the shout-out.
I think the SNES version of Doom is the only game I ever returned to a store! I'd played the PC version at a friends house and bought a SNES copy for myself, but the tiny window and poor framerate made me return it. It's great to understand that it was a technical marvel, but.... it's not a good game to play. Still fascinating though!
Man you really make some of the best videos. I am part of the Tribes Revengeance community and we have modded and tweaked the game fairly heavily over the years to keep it up to date with modern computers and to add lots of features that make the multiplayer more balanced for today's super experienced and advanced players. The game came with a level editor and is more open to modding and editing than many games, so it's nice to see that the thought was there since, and this is a whole separate topic, but games that are developed with community asset creation and modding in mind are almost always better games in the long run because the community forms around it and makes all sorts of awesome content and tweaks long after the devs are done with it (the most successful example was probably CS 1.6 which was a free mod originally and for over 6 years was the most popular multiplayer online game outright). The one thing that still really bothers me about Tribes Vengeance that the community hasn't figured out yet is the view or fogging distance. This game takes place at such a high speed and over such great distances because of the skill level of today's players, often somebody will go from being totally not visible from fog to at your flag stand and then gone to the other side of the map and if you aren't watching your radar you really only get a second or two from when they leave the fog to when they get your flag and if you could only increase the view / fog distance in my opinion it would make it almost a perfect game for what it is. Obviously the limitation was put in place because back when the game was made computers just didn't have the power to render that far smoothly. I don't know if maybe you can help us Modern Vintage Gamer, but the source code was never released and from what I've heard it will take source code to increase the view distance. Aren't there tools out there now that decompile games? And the hard part is just naming all of the functions to be descriptive since the decompiler can't do that yet? If there is any way you could help us figure this out, that would be so awesome. There are lots of T:V videos on my channel if you want to see some of the action and if anybody wants to join us you can download the game for free at tribesrevengeance.net Thanks MVG! Keep up the awesome content.
That was the first type of PC that I tried Doom on as well. I couldn’t believe the game actually booted. I remember using cheat codes to turn off the enemies and just look around. The graphics and game engine were definitely impressive at the time.
Same, and I didnt like it much. I wouldn't come back to it properly till I got Doom64 on switch which led me to playing then pc games with gzdoom and extra gore. Man I was addicted to quake, but damn Doom was such a good game I missed out on in its heyday. It's even better today with all the mods and shit. Cant put it down. Makes me want to replay Dark Forces.
They were like: We'll leave you here in the middle of the desert. Here are all the parts you need to make a working car to go back, but none of them fit together and we won't explain how they work, good luck.
Apart from 50Hz we also got the lame color in EU. I have spent many hours on this port on a PAL SNES. Imagine when I saw the PSX version and much later the PC...
Yeah we europeans were always treated as videogame third-world… Something that actually still hasn't changed all that much… even though it got a little better over the years.
Even as someone who doesn't understand programming very well (tried my hand at a game making course and didn't do so well) I always like how you make your videos and explain them, and your passion is heard in everything. Thank you for your work MVG!
johntrevy1 because it was only a coprocessor, there’s a chance the main CPU just waited for it to be told the coprocessor was done, then continue from there. I’d say there’d be a bigger issue with memory timing, especially if DMA in involved
@@johntrevy1 I've personally overclock all my Super FX games and the overclocking only effects the game speed and frame rate from what I've seen. I'm pretty confident that the sound is done by the Super Nintendo side as sound always appear to be the same.
@referral madness An oscillator is just a chip with a crystal like quartz that acts as a clock for a device, basically telling it at which speed to go. If you can change it, there's a chance it works without breaking everything.
Uhm ok. But if changing the oscillator is all it's needed to increase the performance of a superfx cartdrige, why they didn't do it in the first place?
My first time really playing through Doom was the SNES version. I had played a little bit of Doom 2 on the PC already, but I was just messing around playing one or two levels with some cheat codes while I was at my dad's office. As far as sitting down and playing through the game properly, the SNES version was how I did it. I don't think people properly acknowledge how truly important this port was. Back then, it was almost impossible to find someone with a PC in their house, especially a PC capable of playing Doom. You couldn't buy computers or PC games at a place like wal-mart. Talk to anyone from this era and they will all tell you about how the first time they got to play Doom or Quake was at their college, or at someone's work. Getting to play a game like this was NOT something the average person could do. For most gamers, their introduction to Doom came through console ports on the SNES, Saturn, and PS1. These were not just impressive achievements, but they were also a big reason why PC gaming is even a thing today.
I think you're being just a bit hyperbolic - it's true that computers were more expensive back then, but as a middle-class kid, we had a decent computer, and I knew several other friends/classmates that had one. They were also sold in departments stores like Sears etc. They weren't THAT uncommon, just less common than they are today.
Same experience here. I had a PC and Doom on it but I never quite liked it because it was so easy to cheat on it. Once a friend lent me his copy of Doom for SNES and that's when I truly saw how great of a game it was. And the whole reason was that it didn't have any cheat codes! Love the SNES port so much. Respect to awesome devs for pullling it off!
When he said limitations of bandwidth at 11:57 my internet legit cut out for a few seconds and I thought it was an editing trick, then I realised I just fooled myself.
I’m actually very intrigued by this. The snes is one of my favorite consoles and the Snes version despite being not the best version is one of the most technically impressive ports and I love crazy impressive ports
It really is. Even though the game was kinda crappy in of itself. yeah, I bought it back in 95...... And I think I played it for all of about 30 minutes and gave up on it. I really didn't like how it controlled and what not.. The PC version spoiled me.
@@thehunterator520 Maybe. The SNES version has the resolution of a mail stamp, though. So even if that is true, that doesn't excuse the SNES version out potentially being the worst playing port.
@@thehunterator520 I don't deny how amazing of a technical feat SNES Doom is. Because it most definitely is. It's incredible to see how they managed to pull it off. Still. If you're talking about the game itself, this is probably overall the worst port if you want to actually play the game.
Videos like this are nothing short of GOLD to me. As a retro gamer who grew up on Doom and also a software developer and sysadmin who has a lifelong passion for computing since age 5, you can't get much better content than this. Thank you!!
I first played doom on the PS1 but 2 years later got to try the snes version and was impressed with what it could do and it was my fist time hearing what the PC style music was like, it was a big surprise and the only other time I got a surprise was when I heard the Japanese Opening for Fist of the North Star as it was a completely different tone.
There are very few YT channels that make me this happy when I see a new upload. I never thought I’d enjoy watching mini-docs on YT, but MVG does such a great job of making his vids interesting and professional, and they keep my attention the whole time.
My girlfriend actually bought me an excellent condition Doom SNES cartridge for Christmas, gaming isn't her strongest field and as a result she had no idea about the gamepad delay which sadly makes this port uncomfortable to play, however, this video has truly helped redeem it's place in my collection, such an impressive development story!
This was my first experience of Doom and i enjoyed it despite the framerate and pixelate aspect, i really enjoyed it that much. And for the other port i think it was the most faithful experience from PC, Ps1, Jaguar and 32X port lack OG texture and style of map. The mood is here too.
I appreciated owning this game as a 15 year old. Yes it was sluggish and yes the graphics weren’t perfect but I still loved it. No1 mentions the music on the snes version of doom but it was the one thing that made it stand out from other versions imo. Nice video!
Doom for the SNES had fully working mouse support. I own an official SNES mouse and i've played it before on my copy of doom and it's nearly identical to mouse control from the DOS, so very hard to control. Also, the game forgot to implement a way to actually get past the menu with the mouse, so either you wait it out or you can only play E1M1. it's really broken.
I remember being "stuck" at the end of the first act, not realizing the end of the act was the end, and merely thought I was just getting killed all the time by going down that green hole. Spent a day replaying that, not realizing the game was supposed to be that way and that you were supposed to start the 2nd act after.
I played Doom in SNES long time ago, I remember until today hpw it felt when 2 baros appeard as the bosses of first level. Challenger levels and that powerful music marked my teenage. Thank you mr Linden! Thank you Vintage Gamer for this nice video!
Using a lookup table for trigonomic functions was quite common back in the day. I've used it myself when making a demo, although I generated the data on startup to save bytes. Also, to make it even faster I translated it all to 256 degrees, which was plenty of resolution for what I needed.
Great video! Just a minor fix, DOOM isn't actually 3D, it's a 2D game with only 2D calculations. The technique used by the engine is called Raycasting, it basically shoots multiple rays (or vectors) from a given point (in this case the player's position) in a 2D map and draws in the screen a 3D view with depth, but internally all the math is bidimensional. That's why in the game there cannot be one floor in top of another.
Man, this game was the first exposure I ever had to Doom as a series, back in 2007 on the Nintendo Wii with Homebrew. My best friend had managed to softmod his Wii (and I subsequently went ahead and softmodded my own wii) and loaded up SNES9x and Doom was one of the roms he nabbed online. Eventually I found out that it was actually a port of a PC game, and that it was a huge series - over 10 years later, I own doom on every system I can buy it for and it has become my favorite game series of all time. Of course, the first copy of Doom I bought HAD to be the SNES port. Last year, I followed some slightly sketchy guide and installed a faster clock crystal into my Doom cart, so now it's slightly overclocked and plays with much less input lag and a more steady framerate. Doom SNES gets a lot of hate, but I truly love this port. The colors and textures and such are mostly all there (despite floors and ceilings, but even they have the right colors) and in my opinion look way better than the cleaner but fugly brown and green snoozefest of the other console ports. I still play it from time to time out of nostalgia, and I really appreciate the work Randy did on this. Thanks for exploring the source code and story behind this. I really loved seeing more info about this game and how it was created.
The music that plays at 13:25 is called Suspence. Doom 3do has an amazing version of this track, doom 3do might have been a rushed port but the music in that game is superior to all other doom versions. Check it out. It was literally made by the ceo of art data who published the game, guy was in a band so they made the music for the game
I had this, as I could never get Doom to run on my 486sx with 4 MB of RAM. The red cartridge of the NA release was eye catching, and really stood out on the shelf among all the gray cartridges. I had no idea Linden also wrote Bleem. I had a retail copy of that too, but it got set aside pretty quickly as better PS1 emulators came out.
From someone who loves Doom and played the snot out of it on the SNES as a kid, I thank you for this vid. Really enjoyed how my fav game was made to work on my fav console.
"And then there's the developer that makes the impossible happen" If you think *this* is impossible, wait till you hear about the utter horror story that was DOOM 3DO.
That was caused by the CEO of the company handling the port being an ignorant asshole who didn't know how porting worked. I say the Saturn Port got more of a raw deal since programmer Jim Bagley was trying to write the Doom engine with hardware acceleration in mind using the Saturn's dual Hitachi SH2 VDP chips. It showed enormous potential and would've allowed the game to run at 60 fps on consoles and he wanted to include both Doom 1 and 2 in a single release. But John Carmack got his panties in a twist because the VDPs caused texture warping on the walls and floors so he vetoed the prototype and demanded the whole thing be redone. He's since stated he regrets being an asshole about something most players probably wouldn't have noticed in the first place and should've let it go.
@@Anomaly188 That's what happens when you ask the main engine programmer behind doom if you can release a version of doom that doesn't actually get the graphics technology he worked hard on right. Romero was on vacation at the time, and probably would have approved the original version otherwise, since he was the person that was normally contacted. I'd be really surprised if it hit 60fps though, and not 30-40 on average. Also, the SH2 weren't "VDP" chips, the saturn had two SH-2 CPUs, and two VDP graphics chips (VDP1 handled sprite and quads, VDP2 backgrounds). Anyway, I think a lot of people really overhype this prototype version, especially since nobody commenting on it has ever seen it, and it was never finished. It could have been in a really rough state when shown to iD.
I really want to see what the amazing community into porting Doom to everything gonna do with this knowledge. I've heard of versions with the patches are running well even into original hardware via Everdrive. So, with the source code, lots of things can be recoded and improved, for honor this impossible port. I'm really excited with the possibilities
when inquisitive programming mind, that equals Carmack's, asks for a challenge - build your own devkit just for fun and port a game or two in assembler, instead of high level bloatware. i appreciate [bows]
I loved to hear that there is a link to the demoscene, and with the Amiga especially. Incidentally, the SuperFX 2 (GSU-2) in Doom is essentially the original chip running at full capacity and so packaged in a larger physical form. This one wasn't what was in the Star Fox cart although, thinking about it, I suppose the study of that first chip could have provided the same knowledge needed to use the second.
Great video! But you forgot to mention that Randy developed this game in secret because he thought ID wouldn't approve of it, and he only presented it to ID when it was completed. That's why he didn't have source code or development tools. When he showed it to ID and asked if he could publish it, they said "Hell yeah!".
Awesome video. Using Sin, Cos, and Tan tables are very common for that time. I remember Wolfenstein 3D uses these tables for the same reasons (Not everyone has a math-coprocessor :)
You’re right about the missing sprites. When I played this way back when, I noticed all monsters moved about facing toward you. No side or rear facing enemies.
@@Lovingisnecessary A frequent set of schoolyard videogame rumours often started with "my uncle works at Nintendo " hence why the kid had knowledge of upcoming games, rumours like catching Mew in Pokemon, or non existent cheats. Apparently it was a worldwide phenomenon with kids, because it happened in Australia too.
Doom for the SNES was actually my FIRST legal copy of the game i ever owned and it was the first time for me to ever get in touch with the game again after having been blown away at the 3D gameplay when watching it running on the private PC of one of my fathers co-workers back in 1993. I got my SNES Cartridge in 1999 at a videogame convention and even till this day it is one of my favorite ports. Especially for the music. I didn't even know there was a version of Doom for the SNES until i saw the cartridge laying around and HAD to have it. It cost me 30 DM back then (just the naked PAL cartridge) but i didn't care. Money well spent. :)
I was surprised to hear the mention of "Metal Combat" in this episode. I'm glad: It was one of the best games on the SNES, despite its limited scope. A detail-oriented boss rush shooter, it was extremely fun and even managed to include an asymmetrical 2-player mode.
Lookup tables always remind me of the IBM 1620, a 1959 "personal" computer (in that it was meant for a sole operator, and may indeed be the world's first such machine) that lived in a big desk and actually did simple arithmetic by way of lookup tables. It had the internal development name of "CADET", and this got out into the wild and it came to be that it was said this stood for "Can't Add, Doesn't Even Try".
When you said it was assembly I thought it would be impossible to read, but that code looks extremely well documented and organized! I might have to take a look.
i don't know a damn thing about programming, but i love this channel cause it teaches me a little about that world. i did however teach myself a bit of code when making an eggdrop bot for mirc when i was about 17, i couldn't get alot of the scripts to work so i sort rewrote and joined a couple of TCL scripts to that it could update the metadata from a shoutcast audio broadcast and send it to the irc channels, i only got it to work once, but it took a bunch of learning just by looking at scripts themselves and looking a few things here and there. eventually i moved on years later to the same type of thing but with updates to site for music, which turned out much easier because html is so simple. :)
This was like a punchig weight chapter. I Hope MVG with his style do a vídeo about Velez and Dubail, people Who Make amazing Jobs on constrained consoles.
I was late to the Doom party as I was still a hardcore Amiga user at the time as far as computers went so the SNES port of Doom is actually the first version I ever played. Without the hands-on context of proper PC Doom, I didn't think the SNES version was all that bad and it was a genuinely impressive feat of coding. I appreciate that fact a lot more now after watching your video, MVG. Knowing that Randy Linden was also responsible for the Amiga Dragon's Lair and Bleem, I have nothing but absolute respect and admiration for his skills.
So let me get this straight: this ONE MAN ported one of the most influential games of all time to vastly inferior hardware, using an engine which was built from the ground up in one of the most notoriously difficult programming languages, without ANY of the original source code, and did it all with a homemade devkit? Holy. Fucking. Shit. I'm in genuine awe. I'm struggling to believe it all
Apart from the slightly messy abandoned control methods, and the sloppy inputs section (I suspect he updated both of those sections so often that he was afraid he'd break something somewhere if he messed with it, so he just left it a bit messy) there's very little wasted in this code. It's remarkable.
I bought bleem at EB back in the day, blew my mind seeing it there on the shelf... reading what it claimed to do. First time I played RE2 was via bleem and a PS disc, and it made it look SO much better. Same with MGS. I later got the PC version of both, which brought the presentation even further along, higher res, more options.... but bleem did offer quite a bit to improve the PS games. What a time.
This dude was like "I didn't know it was impossible. So i just did it anyway." I miss the time when Coders ACTUALLY did innovative things and OPTIMIZED their code to the max… A time that is now long gone… except maybe still only exists in the scene. Nowdays every code has to get worse and worse with every update, packed with new features nobody needs and all that at the cost of insanely increasing CPU and RAM usage…
Bullshit. Look at uncharted2 on the ps3, uncharted4 on the ps4, halo4 on the x360 or forza horizon 4 on the xbone. Than look at the average game on these consoles. Then... think again.
@@nattila7713 we are taking application coders here, not exclusive game devs that are contractualy obligated to do the most possible with the shit console hardware
It's not the best port to play, but it is a technical marvel. And it does go some way to proving how much of a genius Linden is. I mean, writing his own engine and making his own development kit? That's some kind of brilliance right there.
One of the few things I anticipate is that a recompiled port of this engine for ultra low end cpus. Basically another option for those who want a fast as hell port of doom for pretty much everything.
You'd pretty much have to rewrite it . This source is all in superfx and 65c816 assembly. There's a relatively recent port of prboom to GBA that would be a lot more useful for that purpose. github.com/Kippykip/GBADoom
@@jc_dogen Prboom is pretty much the fastest Doom engine out there (in terms of using less resources and preserving all visual aspects of the original game) Prboom is actually one of the few that remain a true "port" since the other most popular ones are pretty much re-design clones, not proper ports in the true meaning of the term
I remember hearing about bleemcast, like 2 decades ago. MVG strikes with the nostalgia. EDIT: it's hard to believe dreamcast is over 20 years old now.. dreamcasts graphics are dated, but the REAL WORLD performance still holds up to this day.. it was ahead of it's time.
What is more surprising than overcoming the technical limitations of SNES is the fact that Nintendo licensed a game like Doom. It's not exactly child friendly.
As a modest modder myself, modding a game that don't originally support modding, i fully appreciate this work. You have to get super creative about how to get things to work in a way they were not meant to, creating new tooling, etc. It's quite a challenge and it's one that i love to face. :)
8:03 _"If anyone has any experience in getting mouse controls to work on Doom for the SNES please let me know on the comments below"_ I'm here in the comments to let you know that nobody does. You're welcome.
Not many people know this but T2 Arcade game on the SNES you could actually use two yes two mouses to play the game with 2 players or as I did one player and two guns and two cursors, I thought you might wanna know, hardly anyone but me knows this, because I happened to get two copies of mario paint at my house one was my sisters boyfriends copy. This is legit I'm not some youth pullin yer leg.
I have extensively played doom snes with the mouse, you can look left, right, move back and forth, shoot and open doors. You cannot switch weapons... Its an interesting expierence. You really have to quick swap the controller to change guns and to occasionally strafe Love doom snes and mvg
Hi MVG! The SNES Doom port is also quite infamously known for not having cheats. However @8:25 when you're talking about the Superscope support, you can also see a line referring to cheat codes right below. This really confuses me, so I was hoping that you had an explanation to this. Maybe cheats were intended to be present but the lack of space didn't allow for them to be there? Or is there any other explanation that makes more sense? As usual, great video. Thanks and have a good one!
Im guessing its just a flag he could use in code to make debugging easier and there wasnt time or the need to expose the switch in-game. with only 16 bytes left maybe there wasnt enough space to fit a graphical cheat menu or command line. Just guessing though.
there's nothing in the available source that references the useCHEATS or useSCOPE variables other than that initial setting to 0, as-is it doesn't look like the retail source had any hidden code to interact with the scope nor the cheat enabler /DOOM-FX$ egrep 'useSCOPE|useCHEATS' * -r source/rage.i:useSCOPE equ 0 ; 1=Enable SUPERSCOPE source/rage.i:useCHEATS equ 0 ; 1=Enable CHEAT Codes
@@DodongoVideos Maybe both were actually coded but had to be cut to fit in memory and all that is left is two commented out variables. I don't think anyone could ask him?
@@KuK137 That could very well be the case. 16 bits of space left don't leave you much space to work with, so in that case, it would be better just not bother.
Corrections: 2:37 - Gran Turismo 2, not 3
Another correcrion:
6:09 You mixed up the horizontal and the vertical amount of pixels!
It's ok, we still love you 😉
Running on the Dreamcast it looked like it could be a grand turismo 3 right 😉
we can live with that :)
Someone should take this source code, and make it run on an Amiga
Fun fact: Bleem's case set a precedent and it's because that precedent you can use and develop emulators legally nowdays. Don't know if that's what they wanted or not, but Bleem went out of business to save the emulation community.
Bleem should be added to retroarch and developed further as a open source project..
@@garystinten9339 That's pretty pointless though, we already have very good PS1 emulation.
@@garystinten9339 since modern PS1 emulators make Bleem obsolete, it might be better to just add a "special thanks" in the the credits somewhere.
@@garystinten9339 epsx is the open source bleem.
To everyone who responded..
I didn't realise that it was opensource and that's awesome..
Imagine Randy pulling up at ID Software like: "Ayyyyy i have a complete port of Doom for the SNES and it actually runs, pretty cool huh? wanna release it or what?"
Yes Pants!
From what I know of John Carmack.... He'd immediately respect Randy after that.
That kinda happened actually
given id did literally the same with their pc port of super mario to nintendo i consider it normal
Hh@@SomeBlokeOrWhatever
This guy is a legitimate genius. Writes his own dev tools to make the impossible game, what an amazing talent.
@@DeepFriedOreoOffline I think that was specifically Wolfenstein 3d not Doom
@@droogie1xp Actually, I remembered that and deleted the comment lol. I guess you got to it before I did, lol. Phone just beeped at me.
I was about to comment that. This video isnt down playing it but wtf? Who does this?
Lobotomy Software did the same thing on the Sega Saturn with Quake. Instead of porting the Quake Engine to the Saturn, they were using their very own custom-written "Powerslave" engine, which they originally used to port "Exhumed" (aka Powerslave) to the Saturn. Not only did they make the impossible possible, they even added dynamic lighting. Something the original Quake Engine didn't even have.
In the old days (pre microcomputer), the guys who could do stuff at this level were called "neckbeards" (-:
So Doom on the SNES was the orginal "Can it run doom" Proof of concept?
I was thinking the same thing lol
Doom was ported to SNES so you could later play it on your fridge. What a concept.
Doom is my favorite ATM game
Yup, I remember it being on Snes and thinking 'omg this is barely playable' back in those days, but for some of us it was the only way to play Doom. I had Doom on the Sega 32X and thought it was so much better there, not knowing the music was messed up (I preferred the 32X music because of that), but Doom on 32X was missing levels sadly
No devkit, no engine, extremely weak hardware. Randy Liden total legend.
... Then that makes it a fair fight
Shows how bad ass people are. Also no dev kit holy balls.
Yeah the MSDOS version of Wacom C and Borland C never had any devkits until the late 90's when DirectX and 3DFX started getting popular.
Wasn't extremely weak hardware, but it wasn't enough to run Doom.
@@blank6477 genesis can run doom and wolf3d without sweat check youtube vids
As a teenager in the 90's, I can confirm that this cartridge was a blast. Yes, very underwhelming compared to the PC version, but for most of the kids of that era, that didn't had access to computers, the Snes port was a blast to play. It looked great, because anything 3d related to 16bit consoles were impressive.
It had its quirks, but honestly, I prefer most of SNES doom's music to the original MIDI versions.
Besides, it took me and my dad an entire day once, of leaving the console on, playing from E1M1 all the way to E3M8. No deaths. My dad's last rocket was fired, just before the spider demon killed him. That final rocket, killed the spider. Game was won. We cheered VERY LOUDLY. One of my best childhood memories.
Arnie, COOL STORY BRO
It's interesting to me that people forget:
1. DOOM was a cutting edge PC game for it's time. Even if you had a machine good enough to run it, you probably weren't running it max window size at 60FPS a la modern source ports.
2. Low FPS 3D games on console was the norm and expected. Look at any SuperFX game, look at Hard/Race Drivin' or any quasi flight sim on the 16 bit systems, look at the fondly remembered SNES Jurassic Park with it's first person sections that arguably run worse than Doom.
3. MouseLook wasn't a thing yet. You could use a mouse to control Doom ; but it was for analog *movement*, not aiming. Even when DN3D came along and had it as a basic feature, you still had to contend with the nauseating perspective distortion that came with this era of "fake" 3D.
I still have mine and pull it out every once in a while to play it on the SNES.
my cartridge didn't look like the one shown here, it was normal sized, but red
I played this on XBAND back in the day. Once I remember being terrified when I ended up face-to-face with my opponent while unarmed only to realize that he wasn't actually facing me, since the engine does not draw any other angles for enemies. They are always rendered facing you even if the other player is looking somewhere else!
It's pretty remarkable how this was the first console FPS with online multiplayer, over half a decade before Xbox Live was a thing.
@@chemergency FPS like Outtrigger had LAN and online multiplayer on the Dreamcast a couple of years before Xbox live.
Its slowly coming back... ruclips.net/video/EY_9OCRLq0E/видео.html
How laggy was XBAND back in the day.
@Moogle Midgar that doesn't mean he didn't play it, he could have just been one of those few people
I usually don't use the word "genius" loosely, but this guy is for sure a genius programmer and engineer too to be able to make his own devkit, and everything from scratch, this require some badass skills. Im in awe, plain and simple. Thanks for sharing this story MVG, i had no clues of all the secrets behind this incredible port.
Dude is a genius. But Terry Davis is the best programmer who ever lived. (No really check out his work... Just filter out the crazy parts)
@@bogartwilleyno, keep the crazy part, it is what makes terry, the terry we know
"Its not about the quality of the port, its about flexing your coding skills"
Seeing this video made me wonder how much better Doom on the SNES could have been if it was 2D with mode 7 and some layers. But I suppose impressive graphics come first when it comes to Doom.
@@johanrosenberg6342 What? How in the world could mode 7 be utilized for that?
@@kneesnap1041 I was thinking kinda like the top-down stages in Contra 3. Mode 7 would be used to rotate the background below the player. Additionally I would suggest using foreground masks for a cone of vision and lighting effects. So essentially the map in Doom haha!
@@johanrosenberg6342 I see. That could be kind of interesting. I bet someone is going to take the source code and make some improvements like that.
Its like randy came from the future with his own optimized port of doom so it could run.
Developers in the 90s: I ported the most significant game of the year to a 16 bit console with a custom built engine a chip and a piece of paper
Developers now: buy better PC.
sadly true
you forgot to add "made in assembly", to add more salt
Hopefully not for long. We'll pretty much hit the wall in terms of Cpu speeds, I think. Hopefully this means software developers will start caring more about performance instead of making everything a wasteful web app packaged with Google Chrome
That's generally what I like about consoles: the specs are the same on everyone's system. That's why the game publisher can't expect the users to upgrade the systems, but instead the publisher itself has to optimize things best it can.
@@9a3eedi ye, we sacrificed too munch power for lazyness.
I will never forget when I was a little kid probably around 8? years old the first time seeing Doom on my neighbor's computer was the coolest thing I had ever seen in my life. I remember later on when I had it for SNES that I preferred the PC version on my neighbor's computer because when you picked up the shotgun he smiled, which he didn't do on the SNES.
I played the Atari Jaguar version first and thought it was great until I saw the pc version and realised how cut down it was (it didnt have any music or the cool lighting effects). I ditched my trusty Amiiga and bought a pc the day after seeing doom running on a friends pc. It was so far ahead of anything on the Amiga that I knew the future of gaming on home computers lay in the pc.
@@meetoo594 Doom runs on Amiga but it sure needs to be beefed up. ruclips.net/video/TcdMwaf-WoM/видео.html
I first played Doom 2 at friends house in 1996,my mind was blown away.
I remember paying price of a snes console for that game when it was released, still got that cib copy of the game. It seemed impossible to play doom on snes back then
@@carbonara2144 At the time even the beefed up Amigas couldn't match a pc and Accelerators and rtg cards were not cost effective compared to just buying a cheap 486. The Amiga was a wonderful machine but Commodore didn't capitalise on the lead they had. The Amiga could be where the Mac is now, a distant second format but still profitable if Commodore hadn't half arsed things and asset stripped the company.
This channel is basically another hidden gem on RUclips. Your content is always very unique and interesting.
Vibhu Chaudhary he literally doesn’t miss.
He's killing it week after week. Without question one of the best channels.
"hidden" gem that has 500k subs? Uhh..
@@Paultimate7 subs don't really count that much. you could have a million subscribers while only having like 10 thousand views per video, and im not specifying mvg don't worry.
"bleem would win on all counts but it forced them out of business" just the idea of that happening seems so obvious that the justice system can be abused. great video as always.
Sad reality, a lot of the times even if you're in the right and know you'll win a case, it's usually cheaper to settle out of court. Unless you're talking millions or billions, where the legal fees are dwarfed by the actual litigation amount.
Yes user reviews
@@JimBob1937 just imagine if they had settled this, emulation would probably be a crime to this day
depends on the country. wouldnt happen everywhere
Yet another reason why many people will not buy any SONY products.
am I understanding correctly that he wasn't given the source code for DOOM and had to basically write his own engine from scratch that played like it?
Yes
It's almost as if you watched this video.
@@rsmith02 no need to be a dick, I'm asking because that situation is nearly unheard of. When id agreed to the port, why wouldn't they give him the source to study?
@@MikeDawson1 if you used the source there's a danger you might use it and be taken for copyright, so for legal reasons he would want to avoid it, plus he would be having to change significant amounts to get it to run on there anyway.
I see, if you did watch the video and are just searching for additional info, then I apologize.
Here's an interview where he talks about starting the project independently.
www.gamasutra.com/view/news/343989/Inside_the_work_to_get_Doom_on_the_Super_Nintendo.php
This is a testament to the "if you want to, you can do it"
Very impressive
I absolutely loved doom on SNES and never ever complained about the frame rate.
Why would you with that beastly rendition of the music?
Better than than no music cough Jaguar
@9:57 The reason the SinTable has **1280 entries** instead of the usual 1024 entries (360°) is because the Sin and Cos table **share common data.** The CosTable starts at offset 90° because Randal made use of the Trigonometric identity: _cos(x) = sin(x + 90°)_
A normal sin table has 360° divided into 1024 sub-divisions but since cos starts at offset 90° we need **an extra 90°** worth of data.
Thus, 1024 + 90/360*1024 = 1024 + 256 = 1280 entries.
It is created via DOOM-FX/source/mksin.c
That doesn't really make sense though because that extra 90 degrees would be identical to the first 90 degrees. So all you would need to do is mod it by the table size?
@@smeezekitty that extra step makes the lookup for COS take longer than SIN. Asymmetry of the timings may have been an issue, or just trying to save every cycle possible trading off a little more cart space
@@smeezekittyIt is a classic **speed vs size** trade-off.
1. The fastest way takes the most data and the least code.
a) sin = SinTable[ angle ]
b) cos = CosTable[ angle ]
2. If we want to use a single table then we need extra code. This is _slightly slower._
a) sin = SinTable[ angle ]
b) cos = SinTable[ (angle + 256) % 1024 ]
Note: 256 represents 90° in our table lookup.
@@MichaelPohoreski Its surprising that there would be a noticable performance penality doing that though. Especially becasue the mod by 1024 would be reduced to bitwise & 1023
@@smeezekitty You have been spoiled by GHz CPUs. Back when CPUs only ran at a few MHz _every_ cycle matters -- _especially_ for 3D math.
**Even today** Intel is bringing out Advanced Matrix Extension (AMX).
fuse.wikichip.org/news/3600/the-x86-advanced-matrix-extension-amx-brings-matrix-operations-to-debut-with-sapphire-rapids/
When a friend of mine showed me this game on the SNES, I thought it looked/ was crap. Faster-forward ~25 years and now a software developer. I think it is seriously impressive!
Funny how perspective changes... 🤔
I mean, it still looks like crap and is the second worst version of Doom in existence, it's just also very impressive that it exists at all. A game being impressive doesn't actually make it good.
@@hoodedman6579 Thank you.
@@hoodedman6579 I never said it looked any better! 😉
@@hoodedman6579 It also has an excellent soundtrack.
If you change the oscillator clock crystal for the SuperFX 2 chip on the cart to around 27Mhz, the performance is way better and there is little to no input lag on the game.
You can actually do that with the real cart without changing or altering the SNES itself.
I honestly think you should try it and make a video on your findings.
Good work, like usual.
Seems like a job for Voultar
You also speed up the game, though (or at least that's the case with StarFox)
@@rsmith02 That's the point. Better frame rate and less input lag. You are just speeding up the game.
Why was this never considered on hardware? Was it just a case of Nintendo discouraging tampering with their proprietary chips? I wonder how an XBAND game of Doom would run with two 27MHz carts?
@@nimblenavigator9520 Presumably not all Super FX chips would run reliably at that speed. It's over-clocking, since the SuperFX is an actual CPU. The chips cost a lot to make, if only 80% of them work at 27MHz, then you'd have to throw away the other 20%. But if instead you run it at 21MHz, over 99.9% work fine. That's just an example, though in fact they did run the chip at 21MHz. So 27MHz isn't too much of an extra squeeze, but even if it caused 2% of cartridges to fail, that's thousands and thousands of returns, and they all cost money. 2% of a million is 20,000 for example. So they run these things conservatively.
Randy Linden the unsung hero, or at least the one who dared to challenge.
The other Randy, however...
@Alejandro Herrera Barboza Randy Scott, the disastermind behind the infamous 3DO port of Doom.
Pitchford?
Randy Bobandy and the tale of Aliens Colonial Marines?
@@ModernVintageGamer Must be, there's only 1 Randy so infamous he could ruin the name for everyone.
Neuman?
This Randy Linden guy was clearly pretty much a genius. Also, this is probably one of the best gaming related channels, if not the best currently.
I really really hope the early version of doom for the saturn gets leaked, was changed as even though it had a smooth frame rate carmack did not like Texture warping....and we got the port we did
@DPAD-FTW Carmack, like many that become successful in the games industry, has an ego. In hindsight, I'd imagine he's realized what a mistake Saturn Doom was and that he should have just left it alone.
@@IanThatMetalBassist - John Carmack isn't an idiot and you're not aware of the entire story - that original Saturn 'port' ran fast but looked like absolute shit - it was half res, it suffered from very bad texture warping and the controls, speed - the entire gameplay - was totally unlike Doom. Carmack is responsible for so, so many fundamentals in modern game coding - give the guy some credit and stop glorifying a shitty port that you've never seen.
I can see why Carmack would have been intensely skeptical about the texture warping at the time. If you've read the book "Masters of Doom," it's clear how much he wanted those textures to be seamless and depth to be readily apparent. The high quality textures, smooth transitions, and lighting was more the crowning achievement of the Doom engine rather than the framerate itself.
Carmack did later admit he made the wrong call on the Saturn port. And that more work should have been put into making better use of the consoles acceleration.
@@herakets3259 - Exactly. There were other FPSs - Terminator - Decent etc - what made Doom was its graphics. its gameplay. If a port takes those two things away? then it's no longer Doom. Of course you can make Doom run fast if you use incorrect perspective mapping, disable all the lighting, lower the resolution and remove half the enemies - you can also make a 747 fly faster by removing all the passengers - kinda defeats the purpose though. I mean - it's hardly like the Doom engine wasn't optimized! it's John fucking Carmack lol - if your engine is faster? its because its not as capable.
"no source code, no problem!
I can make my own!"
the moto of this hero.
This video was too short which is a clear sign of me enjoying it.
My hope for the scene actually is that they get SNES Mouse support to work, I think way too few games actually have support for it (I'm looking at you, SimCity!).
I hope the super scope will be supported as well too.
Doesn't doom already support the mouse and super scope?
@@greenandeievui7834 Strange, on my snes emulator the mouse and scope worked :|
The mouse does work with snes Doom. With an original snes mouse, at least. (he did mention that he only tried it with a hyperkin one)
It's only basic support, though.
For example, in Wolfenstein 3d for the snes, the right button was mapped so that holding it walked forward and double-clicking opened doors. You could also use the controller and mouse in tandem. Which might sound awkward, but worked surprisingly well.
In Doom, it's mouse only... if you decide to use it. Also the buttons only have one function. Left shoots, right is the use button. Just a novelty, since you have to keep sweeping the mouse upward to walk forward. Couldn't imagine playing the whole game like that.
Just tested it with both on real hardware to refresh my memory. Hadn't tried playing with the mouse in years.
@@RunLikeAVillain Oh nice to know, thank you 👀
I can't verify that sadly since I don't have Doom for SNES or a Mario Paint mouse in my collection and by going the emulator route, it is pretty much meaningless since Doom has so much better ports on PC anyway.
At the X-Band video gaming network, we had to reverse engineer this title.
It was the only way to make it work with our network stack.
Disassembled it.
Figured it out.
Patched it.
This title was a work of genius.
THANK YOU FOR THE SHOUT OUT!
I first heard of Randy Linden when I was researching Bleem. The guy is a legend. Ironically, I believe he went on to work for Sony for a bit after Bleemcast.
I think some people mix up/assume that Doom on SNES supports the mouse because of Wolfenstein's support for it. Great video as usual and thanks for the shout-out.
I think the SNES version of Doom is the only game I ever returned to a store! I'd played the PC version at a friends house and bought a SNES copy for myself, but the tiny window and poor framerate made me return it. It's great to understand that it was a technical marvel, but.... it's not a good game to play. Still fascinating though!
I agree 100%. A remarkable achievement it was. A great port, it never was.
It's a great technical achievement and some of us couldn't afford half a pc back in 95 so it was play snes doom or naffin'.
Man you really make some of the best videos. I am part of the Tribes Revengeance community and we have modded and tweaked the game fairly heavily over the years to keep it up to date with modern computers and to add lots of features that make the multiplayer more balanced for today's super experienced and advanced players. The game came with a level editor and is more open to modding and editing than many games, so it's nice to see that the thought was there since, and this is a whole separate topic, but games that are developed with community asset creation and modding in mind are almost always better games in the long run because the community forms around it and makes all sorts of awesome content and tweaks long after the devs are done with it (the most successful example was probably CS 1.6 which was a free mod originally and for over 6 years was the most popular multiplayer online game outright).
The one thing that still really bothers me about Tribes Vengeance that the community hasn't figured out yet is the view or fogging distance. This game takes place at such a high speed and over such great distances because of the skill level of today's players, often somebody will go from being totally not visible from fog to at your flag stand and then gone to the other side of the map and if you aren't watching your radar you really only get a second or two from when they leave the fog to when they get your flag and if you could only increase the view / fog distance in my opinion it would make it almost a perfect game for what it is. Obviously the limitation was put in place because back when the game was made computers just didn't have the power to render that far smoothly.
I don't know if maybe you can help us Modern Vintage Gamer, but the source code was never released and from what I've heard it will take source code to increase the view distance. Aren't there tools out there now that decompile games? And the hard part is just naming all of the functions to be descriptive since the decompiler can't do that yet? If there is any way you could help us figure this out, that would be so awesome. There are lots of T:V videos on my channel if you want to see some of the action and if anybody wants to join us you can download the game for free at tribesrevengeance.net
Thanks MVG! Keep up the awesome content.
I remember back in the day having to run doom on the smallest window size possible because my slow 386sx @ 16mhz wasn't able to handle it at all
That was the first type of PC that I tried Doom on as well. I couldn’t believe the game actually booted. I remember using cheat codes to turn off the enemies and just look around. The graphics and game engine were definitely impressive at the time.
I had to run it from DOS because booting windows (3.1? Would that be right?) took some of the required RAM.
Growing up in a home without PCs, my first experience with Doom was on the Sega 32X hehe
lol the fart version
@@seraph4581 totally, man! but i fucking loved it, regardless
You poor soul, I never could afford the 32x, glad I couldn't tho
Oh man, I remember playing that version as a kid at my uncle's place. Too young to know better. Always did like it better on the PS1 though...
Same, and I didnt like it much. I wouldn't come back to it properly till I got Doom64 on switch which led me to playing then pc games with gzdoom and extra gore. Man I was addicted to quake, but damn Doom was such a good game I missed out on in its heyday.
It's even better today with all the mods and shit. Cant put it down. Makes me want to replay Dark Forces.
They were like: We'll leave you here in the middle of the desert. Here are all the parts you need to make a working car to go back, but none of them fit together and we won't explain how they work, good luck.
Hey wait, wasn't the DOOM SNES cart red?
EDIT: oooo the PAL version wasn't. Neat.
Neither the PAL version nor the Japanese version had the red cart. Only the NTSC-USA version was.
Apart from 50Hz we also got the lame color in EU. I have spent many hours on this port on a PAL SNES. Imagine when I saw the PSX version and much later the PC...
not neat, red is the RAD color. grey is for CHUMPS
I never knew that PAL SNES carts were shaped like Super Famicom carts 🤔
Yeah we europeans were always treated as videogame third-world… Something that actually still hasn't changed all that much… even though it got a little better over the years.
Even as someone who doesn't understand programming very well (tried my hand at a game making course and didn't do so well) I always like how you make your videos and explain them, and your passion is heard in everything. Thank you for your work MVG!
I overclocked my SNES cartridge with an oszilator! The framerate is improved a little bit
Doesn't it mess the sound and music up though, since games back then had very strict timings?
johntrevy1 because it was only a coprocessor, there’s a chance the main CPU just waited for it to be told the coprocessor was done, then continue from there.
I’d say there’d be a bigger issue with memory timing, especially if DMA in involved
@@johntrevy1 I've personally overclock all my Super FX games and the overclocking only effects the game speed and frame rate from what I've seen. I'm pretty confident that the sound is done by the Super Nintendo side as sound always appear to be the same.
@referral madness An oscillator is just a chip with a crystal like quartz that acts as a clock for a device, basically telling it at which speed to go. If you can change it, there's a chance it works without breaking everything.
Uhm ok. But if changing the oscillator is all it's needed to increase the performance of a superfx cartdrige, why they didn't do it in the first place?
The SNES audio chip was an absolute gem. A huge reason why i preferred it to a genesis: it made the midi absolutely pop.
My first time really playing through Doom was the SNES version.
I had played a little bit of Doom 2 on the PC already, but I was just messing around playing one or two levels with some cheat codes while I was at my dad's office. As far as sitting down and playing through the game properly, the SNES version was how I did it.
I don't think people properly acknowledge how truly important this port was. Back then, it was almost impossible to find someone with a PC in their house, especially a PC capable of playing Doom. You couldn't buy computers or PC games at a place like wal-mart. Talk to anyone from this era and they will all tell you about how the first time they got to play Doom or Quake was at their college, or at someone's work. Getting to play a game like this was NOT something the average person could do. For most gamers, their introduction to Doom came through console ports on the SNES, Saturn, and PS1. These were not just impressive achievements, but they were also a big reason why PC gaming is even a thing today.
First time i played Doom was 1996 at friend house.Most of people at time time still played NES.
I'm not sure how true that is....more computers had doom than windows at one point. i think that's just your experience.
I think you're being just a bit hyperbolic - it's true that computers were more expensive back then, but as a middle-class kid, we had a decent computer, and I knew several other friends/classmates that had one. They were also sold in departments stores like Sears etc. They weren't THAT uncommon, just less common than they are today.
@@diablofn Definitely just his experience, PCs were definitely not "impossible" to find, they were fairly common.
Same experience here. I had a PC and Doom on it but I never quite liked it because it was so easy to cheat on it. Once a friend lent me his copy of Doom for SNES and that's when I truly saw how great of a game it was. And the whole reason was that it didn't have any cheat codes! Love the SNES port so much. Respect to awesome devs for pullling it off!
When he said limitations of bandwidth at 11:57 my internet legit cut out for a few seconds and I thought it was an editing trick, then I realised I just fooled myself.
I’m actually very intrigued by this. The snes is one of my favorite consoles and the Snes version despite being not the best version is one of the most technically impressive ports and I love crazy impressive ports
It really is. Even though the game was kinda crappy in of itself. yeah, I bought it back in 95...... And I think I played it for all of about 30 minutes and gave up on it. I really didn't like how it controlled and what not.. The PC version spoiled me.
I saw a video comparing the different ports and it has a better frame rate than on 3do and isn't as delayed on the controls.
@@thehunterator520 Maybe.
The SNES version has the resolution of a mail stamp, though. So even if that is true, that doesn't excuse the SNES version out potentially being the worst playing port.
@@FamilyTeamGaming you know that was porting a 32 bit game onto 16 bit hardware so for the SNES so it shouldn't even have been possible to exist.
@@thehunterator520 I don't deny how amazing of a technical feat SNES Doom is. Because it most definitely is. It's incredible to see how they managed to pull it off.
Still. If you're talking about the game itself, this is probably overall the worst port if you want to actually play the game.
Videos like this are nothing short of GOLD to me. As a retro gamer who grew up on Doom and also a software developer and sysadmin who has a lifelong passion for computing since age 5, you can't get much better content than this. Thank you!!
I first played doom on the PS1 but 2 years later got to try the snes version and was impressed with what it could do and it was my fist time hearing what the PC style music was like, it was a big surprise and the only other time I got a surprise was when I heard the Japanese Opening for Fist of the North Star as it was a completely different tone.
There are very few YT channels that make me this happy when I see a new upload. I never thought I’d enjoy watching mini-docs on YT, but MVG does such a great job of making his vids interesting and professional, and they keep my attention the whole time.
Linden isn't just a great programmer, he's a hero to the emulation community and video game historians alike.
My girlfriend actually bought me an excellent condition Doom SNES cartridge for Christmas, gaming isn't her strongest field and as a result she had no idea about the gamepad delay which sadly makes this port uncomfortable to play, however, this video has truly helped redeem it's place in my collection, such an impressive development story!
This was my first experience of Doom and i enjoyed it despite the framerate and pixelate aspect, i really enjoyed it that much. And for the other port i think it was the most faithful experience from PC, Ps1, Jaguar and 32X port lack OG texture and style of map. The mood is here too.
I appreciated owning this game as a 15 year old. Yes it was sluggish and yes the graphics weren’t perfect but I still loved it. No1 mentions the music on the snes version of doom but it was the one thing that made it stand out from other versions imo. Nice video!
Doom for the SNES had fully working mouse support. I own an official SNES mouse and i've played it before on my copy of doom and it's nearly identical to mouse control from the DOS, so very hard to control. Also, the game forgot to implement a way to actually get past the menu with the mouse, so either you wait it out or you can only play E1M1. it's really broken.
Can you show us a video of it?
me: "Finally I can print text to console with my RSS 232"
Linden: "That's cute"
*Also Linden: develop doom on a dishwasher*
I remember renting DOOM for the SNES. The cartridge was red which was awesome.
I remember being "stuck" at the end of the first act, not realizing the end of the act was the end, and merely thought I was just getting killed all the time by going down that green hole. Spent a day replaying that, not realizing the game was supposed to be that way and that you were supposed to start the 2nd act after.
@@spikester :) I love this. I miss those days because even a game like Doom set us in an immersive world that was as real to us as modern VR feels.
I played Doom in SNES long time ago, I remember until today hpw it felt when 2 baros appeard as the bosses of first level. Challenger levels and that powerful music marked my teenage.
Thank you mr Linden! Thank you Vintage Gamer for this nice video!
Using a lookup table for trigonomic functions was quite common back in the day. I've used it myself when making a demo, although I generated the data on startup to save bytes. Also, to make it even faster I translated it all to 256 degrees, which was plenty of resolution for what I needed.
Great video!
Just a minor fix, DOOM isn't actually 3D, it's a 2D game with only 2D calculations.
The technique used by the engine is called Raycasting, it basically shoots multiple rays (or vectors) from a given point (in this case the player's position) in a 2D map and draws in the screen a 3D view with depth, but internally all the math is bidimensional.
That's why in the game there cannot be one floor in top of another.
glad this popped up in my reccomended feed! subscribed, and im gonna binge watch your videos now. cheers!
Man, this game was the first exposure I ever had to Doom as a series, back in 2007 on the Nintendo Wii with Homebrew. My best friend had managed to softmod his Wii (and I subsequently went ahead and softmodded my own wii) and loaded up SNES9x and Doom was one of the roms he nabbed online. Eventually I found out that it was actually a port of a PC game, and that it was a huge series - over 10 years later, I own doom on every system I can buy it for and it has become my favorite game series of all time. Of course, the first copy of Doom I bought HAD to be the SNES port. Last year, I followed some slightly sketchy guide and installed a faster clock crystal into my Doom cart, so now it's slightly overclocked and plays with much less input lag and a more steady framerate. Doom SNES gets a lot of hate, but I truly love this port. The colors and textures and such are mostly all there (despite floors and ceilings, but even they have the right colors) and in my opinion look way better than the cleaner but fugly brown and green snoozefest of the other console ports. I still play it from time to time out of nostalgia, and I really appreciate the work Randy did on this.
Thanks for exploring the source code and story behind this. I really loved seeing more info about this game and how it was created.
The music that plays at 13:25 is called Suspence. Doom 3do has an amazing version of this track, doom 3do might have been a rushed port but the music in that game is superior to all other doom versions. Check it out. It was literally made by the ceo of art data who published the game, guy was in a band so they made the music for the game
I had this, as I could never get Doom to run on my 486sx with 4 MB of RAM. The red cartridge of the NA release was eye catching, and really stood out on the shelf among all the gray cartridges.
I had no idea Linden also wrote Bleem. I had a retail copy of that too, but it got set aside pretty quickly as better PS1 emulators came out.
am I the only one that has a habit of coming to this channel every monday? Watching MVG on mondays has pretty much become a routine. 🤘
Same!
Yep! Morning coffee, constitution while watching mvg
Same here!
I watch it on my water resistant phone in the shower haha
Yep used to be spawn wave but mvg took that spot
From someone who loves Doom and played the snot out of it on the SNES as a kid, I thank you for this vid. Really enjoyed how my fav game was made to work on my fav console.
"And then there's the developer that makes the impossible happen"
If you think *this* is impossible, wait till you hear about the utter horror story that was DOOM 3DO.
tell me more!
There's a recorded livestream of the developer telling the story, just search burger time doom
That was caused by the CEO of the company handling the port being an ignorant asshole who didn't know how porting worked. I say the Saturn Port got more of a raw deal since programmer Jim Bagley was trying to write the Doom engine with hardware acceleration in mind using the Saturn's dual Hitachi SH2 VDP chips. It showed enormous potential and would've allowed the game to run at 60 fps on consoles and he wanted to include both Doom 1 and 2 in a single release. But John Carmack got his panties in a twist because the VDPs caused texture warping on the walls and floors so he vetoed the prototype and demanded the whole thing be redone. He's since stated he regrets being an asshole about something most players probably wouldn't have noticed in the first place and should've let it go.
@@Anomaly188 That's what happens when you ask the main engine programmer behind doom if you can release a version of doom that doesn't actually get the graphics technology he worked hard on right. Romero was on vacation at the time, and probably would have approved the original version otherwise, since he was the person that was normally contacted. I'd be really surprised if it hit 60fps though, and not 30-40 on average. Also, the SH2 weren't "VDP" chips, the saturn had two SH-2 CPUs, and two VDP graphics chips (VDP1 handled sprite and quads, VDP2 backgrounds). Anyway, I think a lot of people really overhype this prototype version, especially since nobody commenting on it has ever seen it, and it was never finished. It could have been in a really rough state when shown to iD.
@@Ehal256 Someone could just ask Jim Bagley, if they want to know about it.
I really want to see what the amazing community into porting Doom to everything gonna do with this knowledge.
I've heard of versions with the patches are running well even into original hardware via Everdrive.
So, with the source code, lots of things can be recoded and improved, for honor this impossible port. I'm really excited with the possibilities
when inquisitive programming mind, that equals Carmack's, asks for a challenge - build your own devkit just for fun and port a game or two in assembler, instead of high level bloatware.
i appreciate [bows]
I loved to hear that there is a link to the demoscene, and with the Amiga especially. Incidentally, the SuperFX 2 (GSU-2) in Doom is essentially the original chip running at full capacity and so packaged in a larger physical form. This one wasn't what was in the Star Fox cart although, thinking about it, I suppose the study of that first chip could have provided the same knowledge needed to use the second.
Nice! Fantastic content man, honestly really enjoy all of your videos.
Great video! But you forgot to mention that Randy developed this game in secret because he thought ID wouldn't approve of it, and he only presented it to ID when it was completed. That's why he didn't have source code or development tools. When he showed it to ID and asked if he could publish it, they said "Hell yeah!".
461k subscribers! - I remember discovering this channel at 20k. Before that I remember using your emulators on OG Xbox. Well done man, much love.
Awesome video. Using Sin, Cos, and Tan tables are very common for that time. I remember Wolfenstein 3D uses these tables for the same reasons (Not everyone has a math-coprocessor :)
Further pushing DOOM's release on EVERYTHING. Can't wait to run it on my smart fridge!
smart fridge? i expected you to say a toaster or something cuz smart someone probably did that already
It actually ported onto my 2003 Nissan 350z and I don't know how to get it off
@@NickTaylorRickPowers let is be. If demons should ever come, this car is the safest space there is.
@@thomask5434 it's more a bunker than car as the clutch is deader than the SNES port of doom
I bet any smart fridge can run it if a Thermomix can. www.reddit.com/r/itrunsdoom/comments/by5x1n/oc_made_a_thermomix_clone_run_doom_with_a_friend/
You’re right about the missing sprites. When I played this way back when, I noticed all monsters moved about facing toward you. No side or rear facing enemies.
At this rate I'm starting to get suspicious that someone's uncle is actually working at Nintendo
What does your comment mean exactly?
@@Lovingisnecessary A frequent set of schoolyard videogame rumours often started with "my uncle works at Nintendo " hence why the kid had knowledge of upcoming games, rumours like catching Mew in Pokemon, or non existent cheats. Apparently it was a worldwide phenomenon with kids, because it happened in Australia too.
Doom for the SNES was actually my FIRST legal copy of the game i ever owned and it was the first time for me to ever get in touch with the game again after having been blown away at the 3D gameplay when watching it running on the private PC of one of my fathers co-workers back in 1993. I got my SNES Cartridge in 1999 at a videogame convention and even till this day it is one of my favorite ports. Especially for the music. I didn't even know there was a version of Doom for the SNES until i saw the cartridge laying around and HAD to have it. It cost me 30 DM back then (just the naked PAL cartridge) but i didn't care. Money well spent. :)
I was surprised to hear the mention of "Metal Combat" in this episode. I'm glad: It was one of the best games on the SNES, despite its limited scope. A detail-oriented boss rush shooter, it was extremely fun and even managed to include an asymmetrical 2-player mode.
I love that game
despite its limited superscope*
Lookup tables always remind me of the IBM 1620, a 1959 "personal" computer (in that it was meant for a sole operator, and may indeed be the world's first such machine) that lived in a big desk and actually did simple arithmetic by way of lookup tables. It had the internal development name of "CADET", and this got out into the wild and it came to be that it was said this stood for "Can't Add, Doesn't Even Try".
That source code is a legitimate piece of art, IMO
This is one hell of an achievement and, as you so aptly put it, needs to be preserved. Awesome video, thanks for the closer look at the code.
Dude I literally just downloaded snes9gx for my modded wii and played the SNES port of doom.
Perfect timing my dude
I watch these videos to fall asleep, MVG's voice is HYPNOTIC
I remember when that port came out there were rumors that the cartridge contained some extra chips that made running Doom possible :-)
When you said it was assembly I thought it would be impossible to read, but that code looks extremely well documented and organized! I might have to take a look.
I'm curious why you didn't reach out to the developer to get answers to many of the questions and ponderings you had throughout the video.
He probably did, maybe they have stuff going on in their lives that prevented them from responding
He is in his github account and seems to be a pretty cool dude, he was worried nobody would look at the code when released
Victor Castillo thats pretty cool
Sometimes. It's best to leave questions unanswered and find your own. 😉
i don't know a damn thing about programming, but i love this channel cause it teaches me a little about that world.
i did however teach myself a bit of code when making an eggdrop bot for mirc when i was about 17, i couldn't get alot of the scripts to work so i sort rewrote and joined a couple of TCL scripts to that it could update the metadata from a shoutcast audio broadcast and send it to the irc channels, i only got it to work once, but it took a bunch of learning just by looking at scripts themselves and looking a few things here and there. eventually i moved on years later to the same type of thing but with updates to site for music, which turned out much easier because html is so simple. :)
Experience with a weird accessory? That sounds like you need Stop Skeletons from Fighting.
This was like a punchig weight chapter. I Hope MVG with his style do a vídeo about Velez and Dubail, people Who Make amazing Jobs on constrained consoles.
If someone got Derek a copy of Doom that actually worked with the Super Scope he may actually die of happiness.
I was late to the Doom party as I was still a hardcore Amiga user at the time as far as computers went so the SNES port of Doom is actually the first version I ever played. Without the hands-on context of proper PC Doom, I didn't think the SNES version was all that bad and it was a genuinely impressive feat of coding. I appreciate that fact a lot more now after watching your video, MVG. Knowing that Randy Linden was also responsible for the Amiga Dragon's Lair and Bleem, I have nothing but absolute respect and admiration for his skills.
So let me get this straight: this ONE MAN ported one of the most influential games of all time to vastly inferior hardware, using an engine which was built from the ground up in one of the most notoriously difficult programming languages, without ANY of the original source code, and did it all with a homemade devkit?
Holy. Fucking. Shit. I'm in genuine awe. I'm struggling to believe it all
lol that about sums it up
Outstanding stuff as always. I will never let my MGS Bleemcast go, its a work of art.
This code is so insanely clean, yandere dev could learn something from this.
“Are ya coding son?”
Let me just calculate the size of the sun 5 time every frame.
if
Apart from the slightly messy abandoned control methods, and the sloppy inputs section (I suspect he updated both of those sections so often that he was afraid he'd break something somewhere if he messed with it, so he just left it a bit messy) there's very little wasted in this code. It's remarkable.
I bought bleem at EB back in the day, blew my mind seeing it there on the shelf... reading what it claimed to do. First time I played RE2 was via bleem and a PS disc, and it made it look SO much better. Same with MGS. I later got the PC version of both, which brought the presentation even further along, higher res, more options.... but bleem did offer quite a bit to improve the PS games. What a time.
I also highly recommend reading "Game Engine Black Book: Doom" by Fabien Sanglard
Modern Vintage Gamer, you have finally made Monday morning worth getting up for. I get out of bed so much faster knowing there's a new upload.
This dude was like "I didn't know it was impossible. So i just did it anyway." I miss the time when Coders ACTUALLY did innovative things and OPTIMIZED their code to the max… A time that is now long gone… except maybe still only exists in the scene. Nowdays every code has to get worse and worse with every update, packed with new features nobody needs and all that at the cost of insanely increasing CPU and RAM usage…
Just throw more CPU cycles at it.
As a programmer I have to say you're right.
Bullshit. Look at uncharted2 on the ps3, uncharted4 on the ps4, halo4 on the x360 or forza horizon 4 on the xbone. Than look at the average game on these consoles. Then... think again.
@@nattila7713 we are taking application coders here, not exclusive game devs that are contractualy obligated to do the most possible with the shit console hardware
You've never heard about embedded systems i guess.
It's not the best port to play, but it is a technical marvel. And it does go some way to proving how much of a genius Linden is. I mean, writing his own engine and making his own development kit? That's some kind of brilliance right there.
One of the few things I anticipate is that a recompiled port of this engine for ultra low end cpus. Basically another option for those who want a fast as hell port of doom for pretty much everything.
You'd pretty much have to rewrite it . This source is all in superfx and 65c816 assembly. There's a relatively recent port of prboom to GBA that would be a lot more useful for that purpose. github.com/Kippykip/GBADoom
@@jc_dogen Prboom is pretty much the fastest Doom engine out there (in terms of using less resources and preserving all visual aspects of the original game) Prboom is actually one of the few that remain a true "port" since the other most popular ones are pretty much re-design clones, not proper ports in the true meaning of the term
imgur.com/user/hcueiwb47vndhs84
@@FeelingShred yea prboom is awesome
I remember hearing about bleemcast, like 2 decades ago. MVG strikes with the nostalgia. EDIT: it's hard to believe dreamcast is over 20 years old now.. dreamcasts graphics are dated, but the REAL WORLD performance still holds up to this day.. it was ahead of it's time.
BEGIN THE REALITY ENGINE PORTS OF OTHER ID TECH 1 GAMES!
Imagine Quake
What is more surprising than overcoming the technical limitations of SNES is the fact that Nintendo licensed a game like Doom. It's not exactly child friendly.
As a modest modder myself, modding a game that don't originally support modding, i fully appreciate this work.
You have to get super creative about how to get things to work in a way they were not meant to, creating new tooling, etc.
It's quite a challenge and it's one that i love to face. :)
As of today, the complete source code+assets+xband code has been uploaded to IA.
I had the honor of archiving the floppies. :)
8:03 _"If anyone has any experience in getting mouse controls to work on Doom for the SNES please let me know on the comments below"_
I'm here in the comments to let you know that nobody does. You're welcome.
Not many people know this but T2 Arcade game on the SNES you could actually use two yes two mouses to play the game with 2 players or as I did one player and two guns and two cursors, I thought you might wanna know, hardly anyone but me knows this, because I happened to get two copies of mario paint at my house one was my sisters boyfriends copy. This is legit I'm not some youth pullin yer leg.
I have extensively played doom snes with the mouse, you can look left, right, move back and forth, shoot and open doors. You cannot switch weapons...
Its an interesting expierence. You really have to quick swap the controller to change guns and to occasionally strafe
Love doom snes and mvg
I heard that in order for you to change weapons, you need to hold the left mouse button and move the mouse back
Hi MVG! The SNES Doom port is also quite infamously known for not having cheats. However @8:25 when you're talking about the Superscope support, you can also see a line referring to cheat codes right below. This really confuses me, so I was hoping that you had an explanation to this. Maybe cheats were intended to be present but the lack of space didn't allow for them to be there? Or is there any other explanation that makes more sense? As usual, great video. Thanks and have a good one!
Im guessing its just a flag he could use in code to make debugging easier and there wasnt time or the need to expose the switch in-game. with only 16 bytes left maybe there wasnt enough space to fit a graphical cheat menu or command line. Just guessing though.
there's nothing in the available source that references the useCHEATS or useSCOPE variables other than that initial setting to 0, as-is it doesn't look like the retail source had any hidden code to interact with the scope nor the cheat enabler
/DOOM-FX$ egrep 'useSCOPE|useCHEATS' * -r
source/rage.i:useSCOPE equ 0 ; 1=Enable SUPERSCOPE
source/rage.i:useCHEATS equ 0 ; 1=Enable CHEAT Codes
@@DodongoVideos Maybe both were actually coded but had to be cut to fit in memory and all that is left is two commented out variables. I don't think anyone could ask him?
@@KuK137 That could very well be the case. 16 bits of space left don't leave you much space to work with, so in that case, it would be better just not bother.
Trigonometric look-up tables were very common back in the day. Even Super Mario 64 used a look-up table to calculate physics.