Slashdot Mirror


HD Emulation Mod Makes 'Mode 7' SNES Games Look Like New (arstechnica.com)

An anonymous reader quotes a report from Ars Technica: Gamers of a certain age probably remember being wowed by the quick, smooth scaling and rotation effects of the Super Nintendo's much-ballyhooed "Mode 7" graphics. Looking back, though, those gamers might also notice how chunky and pixelated those background transformations could end up looking, especially when viewed on today's high-end screens. Emulation to the rescue. A modder going by the handle DerKoun has released an "HD Mode 7" patch for the accuracy-focused SNES emulator bsnes. In their own words, the patch "performs Mode 7 transformations... at up to 4 times the horizontal and vertical resolution" of the original hardware.

The results, as you can see in the above gallery and the below YouTube video, are practically miraculous. Pieces of Mode 7 maps that used to be boxy smears of color far in the distance are now sharp, straight lines with distinct borders and distinguishable features. It's like looking at a brand-new game. Perhaps the most impressive thing about these effects is that they take place on original SNES ROM and graphics files; DerKoun has said that "no artwork has been modified" in the games since the project was just a proof of concept a month ago. That makes this project different from upscaling emulation efforts for the N64 and other retro consoles, which often require hand-drawn HD texture packs to make old art look good at higher resolutions.

44 comments

  1. Been done before by Stormwatch · · Score: 1

    ZSNES has the option to do something like that, although not as high-res. (And by modern standards it is a very inaccurate emulator.)

    1. Re:Been done before by Anonymous Coward · · Score: 1

      IIRC, older versions of snes9x had it too. But as you say not nearly as high-res nor AFAIK with all the efforts to potentially correct for 3D distortion. If you've got some actual screenshot comparisons, though, I'd love to see them. Also note that this is being developed for bsnes. So, it's very much the polar opposites of accuracy.

    2. Re:Been done before by Anonymous Coward · · Score: 0

      Not like this. Stop being stupid.

  2. ZSNES did this as well by HalAtWork · · Score: 1

    ZSNES was one of the first good SNES emulators along with snes9x. ZSNES had a high resolution mode 7 setting as well nearly 20 years ago in v0.915

    https://zsnes.zophar.net/shrin...

    1. Re: ZSNES did this as well by Anonymous Coward · · Score: 0

      Mode 7 is back ground rotation scaling.

      The change of scaling on each scan line that does the perspective illusion is done by the game code itself, the hardware or emulator just draws the scan line of the back ground.

      So the is a big difference in having a higher resolution mode 7, and actually having a higher resolution mode 7 using perspective by changing scaling on each scan line.

      To implement higher resolution With the depth trick you have to both change the emulator and the games code by keeping track of scaling at each scan line and inserting ones with in between scaling etc.

  3. Cool project by nwaack · · Score: 0

    Too bad it'll probably be sued into oblivion by Nintendo.

    1. Re:Cool project by Anonymous Coward · · Score: 0

      Why? Emulation is legal. Math is legal. They're not distributing anything with a copyright.

    2. Re:Cool project by mark-t · · Score: 1

      That won't stop Nintendo from trying to litigate in any jurisdiction that they can. They *HATE* emulators.

    3. Re: Cool project by Anonymous Coward · · Score: 0

      Probably not, but Nintendo has already lost one battle, such a precedent makes it easier to throw Nintendo's cases out before they cost the developer any money.

      Its not a business, so the developer won't close shop if their website is down for a few days.

      Licensed games change the situation dramatically, especially when combined with whatever is left of the DMCA and its protections against circumventing DRM. Nintendo can get get a site shut down over publishing licensed content. But hardware emulation is fair game.

    4. Re: Cool project by Anonymous Coward · · Score: 0

      The irony is that inside of Japan thousands and thousands of companys use/take Nintendo's IP/trademarked/registered content and Nintendo doesn't really do anything about it there. But everywhere else they come down with an iron hammer.

  4. Video by Kunedog · · Score: 1

    The YT video mentioned in the summary:
    https://www.youtube.com/watch?...

    1. Re:Video by drew_kime · · Score: 1

      After watching that, all I can think is how pissed off the artists must have been who actually created decent maps and sprites, only to have them completely butchered by the rendering system.

      --
      Nope, no sig
    2. Re:Video by aitikin · · Score: 1

      I bet they were impressed with what could be done at that point in time...

      --
      "Don't meddle in the affairs of a patent dragon, for thou art tasty and good with ketchup." ~ohcrapitssteve
    3. Re:Video by Stormwatch · · Score: 5, Insightful

      Keep in mind, those artists worked with old TVs and coaxial cable in mind. Their intention was not the sharp pixels we see in emulators, but this.

    4. Re:Video by drew_kime · · Score: 1

      Keep in mind, those artists worked with old TVs and coaxial cable in mind. Their intention was not the sharp pixels we see in emulators, but this.

      That makes sense. Looking at the video above I didn't remember things looking that bad, but I've seen so many "lo-fi indie" games that I've probably forgotten what things really looked like. Has anyone come up with a mod that also emulates the display characteristics of 80s-era TVs?

      --
      Nope, no sig
    5. Re:Video by Anonymous Coward · · Score: 0

      Some games had nice waterfall animations that looked nicely transparent on old screens and are just a pixelated mess on anything modern.

  5. What about Low DPI mode? by jellomizer · · Score: 4, Informative

    One thing I saw when I upgraded my Amstrad CPC 1512 to a 486 with a SVGA Display 320x200 16 color games just didn't look as good any more. Mainly the high resolution high DPI monitor made these pixel nice little squares. Where the Amstrad had a low DPI where each pixel were a bit rounded and a little grainy. This made dithered 16 color graphics look much more realistic, when the EGA dithered the colors, it felt like a 128 color display.
    So now with 4k displays, We should be able to emulated the old low DPI displays and see the games much closer to to how we use to see them.

    --
    If something is so important that you feel the need to post it on the internet... It probably isn't that important.
    1. Re:What about Low DPI mode? by AmiMoJo · · Score: 3, Informative

      Can confirm the fake CRT effect looks good on 4k.

      This is an impressive hack. The effect being enhanced is actually a hack on the SNES. Mode 7 only does rotation and scaling, to get the ground plane effect you have to adjust the parameters on a scanline by scanline basis using CPU interrupts.

      So for the emulator to do this it must be more than just hacking the mode 7 code. It must interpolate the parameters between scanlines too.

      --
      const int one = 65536; (Silvermoon, Texture.cs)
      SJW, n: "Someone I don't like, and by the way I'm a fuckwit" - AC
    2. Re:What about Low DPI mode? by Anonymous Coward · · Score: 0

      Or it can just use the old mode seven parameters but use more scan lines per screen (higher vertical resolution) and perform more samples per scan line (higher horizontal resolution)...

    3. Re:What about Low DPI mode? by Anonymous Coward · · Score: 0

      You're kidding, right?

    4. Re:What about Low DPI mode? by Anonymous Coward · · Score: 0

      Wait... do you seriously not understand that modern emulators often use modern rendering methods that were not available in the original system?

      Because all of the popular emulators support a variety of output modes, and the "true to the original rendering path" methods all look like crap on modern displays.

    5. Re:What about Low DPI mode? by Anonymous Coward · · Score: 0

      Eh? What is most likely is that the new raster code remembers the settings for the previous scanline and interpolates the values for each scanline of the rendertarget.

    6. Re:What about Low DPI mode? by AC-x · · Score: 1

      I assume you're the original AC here, mode 7 only supports linear 2D matrix transformations so on its own it can't do perspective.

      To show perspective effects in mode 7 the SNES uses its HDMA to modify the matrix transform every scanline to create a psudo-3D effect.

      That HDMA corresponds to the ~224 emulated SNES scanlines, not highres PC scanlines. So while the rotation and scaling is trivial to upscale, the "perspective" would still have a stepped appearance without using some extra tricks.

    7. Re: What about Low DPI mode? by Anonymous Coward · · Score: 0

      What your not getting is that the change in dazzling each scan line is done by software, is not a video mode. The is no mode where you take a back ground and display it tilted into the 3rd dimension.

      Rather the scaling parameter is changed by software scan line.

      So you would have to somehow know what values are being used and draw intermediate lines with scaling values between the previous line but ahead of the next line.

  6. Mode 7 was really impressive at that time! by Parker+Lewis · · Score: 4, Informative

    I was a Segamaniac on that time, but I was really impressed that Nintendo could get mode 7 and zoom using a processor with a clock a way lower than Genesis. To add those 2 features on SegaCD, Sega engineers said they required to add an additional M6800 processor. Anyway, I've wrote a (alert: very fanboy and passionate) history about SNES here: https://raelcunha.com/snes-his...

    1. Re:Mode 7 was really impressive at that time! by Anonymous Coward · · Score: 0

      I always thought Mode7 looked cheap. Never liked it.

    2. Re:Mode 7 was really impressive at that time! by _merlin · · Score: 2

      The CPU doesn't do it on the SNES - the graphics chip itself can do rotate/zoom effects on a single tilemap layer. It can't do it on sprites. Super Mario World (ab)uses it in boss fights by making the boss a tilemap layer so the bosses can do backflips and appear to move towards/away from the screen.

      The MegaCD rotate/zoom works differently. You have to do it on individual tiles and then upload them to the VDP, which is fairly expensive. The bandwidth constraints mean you can't upload enough tiles for a full-resolution layer every frame, which is why you can't rotate/zoom an entire full-screen layer (or play full-screen video) with the MegaCD. However, it allows you to rotate/zoom individual sprites independently which the SNES can't do.

      The SNES and Mega Drive CPU clock speeds aren't really comparable, as the SNES 65816 can do more per clock than the Mega Drive 68000. But the SNES was designed around having a weaker CPU and more powerful graphics chip, and allowing powerful add-on chips in cartridges. The SuperFX can DMA an entire 15-bit planar RGB layer every frame. The SNES actually can support an add-on providing full-screen FMV.

    3. Re:Mode 7 was really impressive at that time! by Anonymous Coward · · Score: 0

      I've wrote a (alert: very fanboy and passionate) history about SNES here: https://raelcunha.com/snes-his...

      I need to point out that you write that 37% of Japanese homes had a NES, but this is not true. They had Famicom. While the Famicom is the predecessor of the NES, and they're in large parts binary compatible, they are different enough that they're not considered to be the same console.

    4. Re:Mode 7 was really impressive at that time! by Anonymous Coward · · Score: 0

      This is why Slashdot's moderation system is a fucking joke. Parker Lewis clearly has no idea what he's talking about. Your post is actually informative, but his post was modded "+5 informative." That's why I never registered a username.

    5. Re:Mode 7 was really impressive at that time! by Anonymous Coward · · Score: 0

      Pilot Wings was good. These games never dropped a frame. The alternative back then was flat shaded 3D polygons running slowly on a 386SX mostly played on the keyboard (or doing that even more slowly on Amiga, Atari ST).

  7. F-Zero is BEATIFUL! by cfalcon · · Score: 1

    Oh yea, this is great.

    I'm absolutely pumped to play F-Zero with this mod. Good grief that Mute City is so pretty! This stuff looks like a lost generation of games now.

  8. They are not SUPPOSED to "look as new"... by Anonymous Coward · · Score: 0

    The whole *point* is that modern games suck and we don't want the real games (so-called "retro" ones) to be anything like that. Fucking cunts. Stop ruining these beautiful pieces of art with your retarded artificial increasing of resolution and all kinds of idiotic filters. All emulators I've ever tried or seen are absolutely *worthless* and don't look or play *at all* like the real thing, on a proper CRT television set. Anyone who disagrees with this is both blind and deaf. Fuck off.

    1. Re:They are not SUPPOSED to "look as new"... by Anonymous Coward · · Score: 1

      Old news, everyone in the emulation scene already knows that those games are meant to be played on CRT with a correct aspect ratio. Since these CRTs aren't really being produced anymore, these filters are meant to try making them look good on LCDs and filter out the moire that's more likely to impact artisitc vision compared to the CRT blur.

      Also, you don't speak for the authors of said works.

    2. Re:They are not SUPPOSED to "look as new"... by Anonymous Coward · · Score: 0

      Oh, yes I do...

    3. Re:They are not SUPPOSED to "look as new"... by Anonymous Coward · · Score: 0

      Uh, there's lots of good modern games. Just not from the big game companies anymore. It's really been that way since 2002 or so. Also, emulators are great and CRTs give me migraines so good riddance.

  9. what happened? by Anonymous Coward · · Score: 0

    I thought nintendo had cracked down on emulators. These are ok to use still?

    1. Re:what happened? by cheesybagel · · Score: 1

      There have been several lawsuits against emulators and they always fail.
      Now distributing ROMs that's another thing.

  10. Don't tell minecraft by Anonymous Coward · · Score: 0

    Don't tell Minecraft

  11. It was done elsewhere by HalAtWork · · Score: 1

    With clever programming, the Sega Genesis/Mega Drive does not need extra processing power to pull off these effects. Here is someone pulling off the same effects as F-Zero on the Genesis.

    G-Zero: https://m.youtube.com/watch?v=...

    The road on the SNES uses mode 7 to add perspective to a bitmap plane and shift/rotate it to simulate a road. The effect is replicated on the Genesis/Mega Drive in software.

    Other games like Mega Turrican, Gunstar Heroes, and Red Zone demonstrate these effects in actual gameplay.

    The Sega CD's added hardware allowed the system to go far beyond what the SNES could acheive. In the game AH3 Thunderstrike, the Segs CD can use the same effects to scale and rotate multiple objects, but the SNES is limited to using this effect on a single bitmap plane at a time.

    Thunderstrike: https://m.youtube.com/watch?v=...

    However some developers did great things with the SNES hardware. Rare's Donkey Kong Country 2 is a great example, where multiple parallax levels and clever raster effects as well as transparencies are used copiously and beyond what I've seen in other games around the time.

    1. Re:It was done elsewhere by Anonymous Coward · · Score: 0

      With clever programming, the Sega Genesis/Mega Drive does not need extra processing power to pull off these effects. Here is someone pulling off the same effects as F-Zero on the Genesis.

      G-Zero: https://m.youtube.com/watch?v=...

      Not sure if you're aware (it's not obvious) that F-Zero doesn't have any extra processor (besides the video chip's built in multiplier/affline transformation support). So yes, nearly 30 years later, the Genesis can do something similar to the SNES.. except it's at half the frame rate.. and half the resolution.. and seemingly with less "draw distance" so you can't see much of the track ahead.. and it's a tech demo. I mean It's cool and all for what it is, but it's hardly "the same effects as F-Zero".

      Mario Kart is the mode-7 racer with an extra DSP chip in it, as did Pilot Wings. From what I've seen, it's debatable if those games truly needed the chip or not. Most likely I'd bet it was more important to get the games out there and released instead of working on micro-optimizing everything.

      FWIW I'm a former SNES developer (not commercial games though), and certainly biased!

    2. Re:It was done elsewhere by HalAtWork · · Score: 1

      Very impressive considering the Genesis is much earlier hardware with no specific acceleration for such tasks. Whether it was done 30 years later or not has nothing to do with whether it's possible on the raw hardware.

      But this road-like effect isn't the only thing mode 7 was used for, it was used to scale and rotate objects such as characters in the game like in Mario World. In the other games I pointed out you see the Genesis pulling this off smoothly on multiple objects at a time, something the SNES could not do.

      If you look at Gunstar Heroes you'll see multiple full screen backgrounds and objects rotating simultaneously, in Mega Turrican multiple enemies will be rotating and scaling at the same time.

      Yes, F-Zero does not use any additional hardware, just the built-in VDP acceleration of the SNES. From what I understand Mario Kart might have been done without the DSP but they were using it to track the various sprites on the tracks, such as roadside objects as well as the other characters racing around. F-Zero only had four cars on the track, MK had 8 as well as other objects.

      Personally I'd think if they could cut a piece of hardware in favor of software optimization they'd do that. This was the company that was paying engineers for each component they were able to omit from hardware designs in order to optimize and save money in production.

  12. Remarkable Achiement. by corezz · · Score: 1

    Nicely done. As a kid when this came out i cringed at the aliasing effects of this fake-3D rotations on the SNES. Always fascinating to see old hardware/software being updated to bring it up to modern times. Brings back memories. I miss my Amiga computer.