Is it possible to disable anti-aliasing in N64 games via GameShark cheats?

Discussion in 'Nintendo Game Development' started by mdmx, Feb 4, 2016.

  1. MRKane05

    MRKane05 Active Member

    Joined:
    May 16, 2016
    Messages:
    35
    Likes Received:
    11
    Cheers for the heads up - I'm in a funny situation where I can't get access to the net at home and so couldn't test on the N64!

    The AA effect can be turned on using the code I've got down the bottom - but disabling the memory pack leaves this at a disadvantage as the game makes good use of it, and I don't feel the game is any easier to follow despite assorted combinations. Might have to learn how to patch it next if I find a combination that's aesthetically pleasing - but it does also rather defeat the point of this entire thread! So I should start hitting up the list of games that won't patch I guess...

    800A7A6D 0130
    800A7A9D 0130
     
  2. saturnu

    saturnu Spirited Member

    Joined:
    Dec 8, 2011
    Messages:
    143
    Likes Received:
    29
    Pokemon Snap (US)
    Master Code
    DE000400 0000
    F103D8A0 2400

    silhouette AA off
    81042e5c 0000
    81042e5e 0212
    81042e8c 0000
    81042e8e 0212
    8104875c 0000
    8104875e 0212
    810487ac 0000
    810487ae 0212
     
  3. Alek

    Alek Newly Registered

    Joined:
    Jun 1, 2016
    Messages:
    1
    Likes Received:
    0
    Hi guys!

    Thanks for all the work you are doing with removing the blur. All of this got me thinking of possibilities of improving the image in other ways using GameShark. Specifically, resolution.

    I know this is a long-shot, but bear with me for a few mins, because I need this to be digged into for real before I can put it to rest. I just love my N64 too much and I my eyes hurt when staring at 240p.

    Most games run in 240p, but the console is capable of running 480i (Perfect Dark, Excitebike 64). So is it possible to mod games to run as 480i using GameShark?

    There is at least a hint that it might be possible. One of the VI registers stores the amount of horizontal pixels the game outputs: VI_WIDTH_REG. In Super Mario 64, this is set to 00000140. That's 320 in decimal, which corresponds to a resolution of 320x480 (320p). I can't find a value for the height, tho, so I'm just hoping there's some automagic scaling.

    So, can we increase the resolution by increasing this number? Probably not, but I want to be sure.

    The first problem is that A LOT of addresses contain this number (00000140). In Super Mario 64, there's 22 addresses containing this number at all times. Changing all of them to 00000280 (hex for 640) will probably crash the game.

    00064C68
    00335018
    00335068
    003350B8
    00335108
    00335158
    003351A8
    003351F8
    00335258
    00335478
    003354C8
    00335518
    00335568
    003355B8
    00335608
    00335658
    003356A8
    00335AA8
    00335A78
    0033BAB8
    00396D50
    003B3320

    Unfortunately I'm unable to test the GameShark codes I created, as I don't have a flashcart or GameShark. All emulator's seem to ignore all VI register values. Here's the GameShark codes I created for Super Mario 64 (U). I'm new at this, so they are likely wrong, and they change ALL addresses containing 140, so it'll likely crash everything:

    00064C68 0000
    00064C6A 0240
    00335018 0000
    0033501A 0240
    00335068 0000
    0033506A 0240
    003350B8 0000
    003350BA 0240
    00335108 0000
    0033510A 0240
    00335158 0000
    0033515A 0240
    003351A8 0000
    003351AA 0240
    003351F8 0000
    003351FA 0240
    00335258 0000
    0033525A 0240
    00335478 0000
    0033547A 0240
    003354C8 0000
    003354CA 0240
    00335518 0000
    0033551A 0240
    00335568 0000
    0033556A 0240
    003355B8 0000
    003355BA 0240
    00335608 0000
    0033560A 0240
    00335658 0000
    0033565A 0240
    003356A8 0000
    003356AA 0240
    00335AA8 0000
    00335AAA 0240
    00335A78 0000
    00335A7A 0240
    0033BAB8 0000
    0033BABA 0240
    00396D50 0000
    00396D52 0240
    003B3320 0000
    003B3322 0240

    Now, here's the thing. Even if this would magically work, the framerate would probably drop to the floor. Luckily, people found in this thread that disabling AA increases the framerate a bit. It probably wouldn't be enough, tho. In that case, could we do some memory editing to make games use the Expansion Pak, so framerate would improve?

    Again, I know this is a long shot, but I gotta dream :)
     
    Last edited: Jun 3, 2016
  4. axel201

    axel201 Newly Registered

    Joined:
    Jun 7, 2016
    Messages:
    1
    Likes Received:
    3
    I have been making some tests with Perfect Dark NTSC USA and Nemu64 and every time I change the High resolution option I saw a few values changing near A4400000 (1.png):

    1.png

    and many more in other memory addresses (2.png):

    2.png

    from 000140 to 000280

    0x0008DCC8
    0X0008DD18
    0X0008DD70
    0X0008DDC0
    0X003FFD14
    0X003FFD30

    -------------------------------
    from 000200 to 000400

    0X000608D0
    0X00060900
    0X0008DA74
    0X0008DCE0
    0X0008DD30
    0X0008DD88
    0X0008DDD8

    But I don't know How can I set those values in Mario64.

    Thanks.
     
    MRKane05, Alek and bobster like this.
  5. a_gizmo

    a_gizmo Newly Registered

    Joined:
    Jun 18, 2016
    Messages:
    1
    Likes Received:
    0
    Hi Everyone,

    Discovered this thread from My Life in Gaming and RetroRGB recently. I wanted to share codes for games from my collection.

    Blast Corp (US) - The dithering is pretty bad
    80306D2D 0000
    80306D5D 0000
    80306D2E 0032
    80306D5E 0032

    Cruis'n USA V1.2 (US) - Dithering filter is already disabled
    8013ADCE 0032
    8013ADFE 0032

    Nascar 99 (US)
    8004C19D 0000
    8004C1CD 0000
    8004C19E 0032
    8004C1CE 0032

    Pilot Wings 64 (US)
    8024C11D 0000
    8024C14D 0000
    8024C11E 0032
    8024C14E 0032

    Star Wars Rogue Squadron (US)
    Not required. Dithering filter is already disabled and AA is set to "resamp only"

    Rush 2 Extreme Racing USA (US)
    8001BA4D 0000
    8001BA7D 0000
    8001BA4E 0032
    8001BA7E 0032

    Super Mario 64 (US)
    803359CD 0000
    803359FD 0000
    803359CE 0032
    803359FE 0032

    Wave Race 64 (US)
    800E8DDD 0000
    800E8E0D 0000
    800E8DDE 0032
    800E8E0E 0032

    Wayne Gretzky 3D Hockey '98
    800CFF55 0000
    800CFF85 0000
    800CFF56 0032
    800CFF86 0032

    I also have a copy of Top Gear Rally, but the codes are not sticking. Not sure what the problem is. However, there is a cheat code that will disable bi-linear filtering and make the game look like it's playing on a PSone.
     
  6. Berezau

    Berezau Newly Registered

    Joined:
    Jun 26, 2016
    Messages:
    1
    Likes Received:
    0
    Hi Poregon,

    I've seen your great work with the NTSC no-AA .aps files. But how would I go about create .aps files to do the same patching job on PAL roms?

    Cheers
     
  7. Spellman

    Spellman Newly Registered

    Joined:
    Jun 28, 2016
    Messages:
    2
    Likes Received:
    0
    Its a very, very good discovering.

    Now, viewing that is possible to disable AA thanks to GS codes, It will be possible to disable shadows too?
    The last games released on that system before it was discontinued, has a very low FPS.
    I would love to see some games with more smooth frame rate in my original N64 console.
     
  8. rso

    rso °

    Joined:
    Mar 26, 2010
    Messages:
    2,210
    Likes Received:
    472
    Shadows aren't a hardware feature like AA is, so that's unlikely. Why not try overclocking instead?
     
  9. Spellman

    Spellman Newly Registered

    Joined:
    Jun 28, 2016
    Messages:
    2
    Likes Received:
    0
    At the moment, you can only overclock the CPU (I think) and the problem is the GPU that need more Mhz or whatever it needs.

    Overclocking the CPU you Get as a result kind of "frame Skip" (Like in the emulators). The enviroment is fast, but the music and voices don't. (In some Games)

    Sory, my english is bad.
     
  10. rso

    rso °

    Joined:
    Mar 26, 2010
    Messages:
    2,210
    Likes Received:
    472
    You can overclock the RCP by switching out an oscillator. That'll screw up your video signal though, so it's not useful by itself - but apparently if you then pile an HDMI mod on top of that everything's gonna work.

    That's a topic for another thread though.
     
  11. retrorgb

    retrorgb Spirited Member

    Joined:
    Jul 20, 2013
    Messages:
    160
    Likes Received:
    39
    Please start that thread...sounds very interesting.
     
  12. eb1560

    eb1560 <B>Site Supporter 2014</B>

    Joined:
    Apr 7, 2014
    Messages:
    61
    Likes Received:
    24
    I started a thread in 2014 on that topic, I can only seem to find it on a Google search, a lot of info would need to be corrected and updated. Its title got corrupted too apparently:

    http://assemblergames.com/l/threads/mapping-n64-“overclockabilityâ€￾-–-achieved-3-0x-multiplier-but-not-3-0x-speed.51656/

    One crystal (X1) controls the video and audio timings (bandwidth) of RCP, DACs, and video encoder (regional and revision differences). The other crystal (X2) controls the clock for the RDRAM, RCP, CPU, PIF, and CIC - upping this clock messes the video output. To avoid getting too much off topic, I will just say that with some modification (including on X2) on the right board revisions, the RCP can clock stably almost up to 90 MHz if the CPU is set at 1.0x ratio. I am quite interested in what happens when you put the HDMI mod on it to correct the video.

    When you disable AA through GS the framerate improvement is quite minimal, you get anywhere from 5% to 10% improvement on a game such as Shadows of the Empire. The debug menu can display a counter.
     
    Last edited: Jul 1, 2016
  13. GeorgeTHPS

    GeorgeTHPS Newly Registered

    Joined:
    Jul 5, 2016
    Messages:
    2
    Likes Received:
    0
    I've made several attempts at making a Gameshark code to disable AA for Tony Hawk's Pro Skater US 1.0 to no avail. During gameplay the value at A4400000 is 00013016, but for some reason BizHawk isn't letting me use RAM Search on System Bus addresses, so I haven't had luck in locating where it's mirrored. I've made a few guesses for codes, but nothing's worked.

    So I guess this is a code request. :)
     
  14. saturnu

    saturnu Spirited Member

    Joined:
    Dec 8, 2011
    Messages:
    143
    Likes Received:
    29
    maybe you still need a master code

    81011B6C 0000
    81011B6E 3216

    81011B9C 0000
    81011B9E 3216
     
  15. GeorgeTHPS

    GeorgeTHPS Newly Registered

    Joined:
    Jul 5, 2016
    Messages:
    2
    Likes Received:
    0
    That worked. I'm just terrible, I guess since I wasn't even close. It actually looks close to the Playstation version now just with some added dither. Additionally, it seems to reduce a lot of the slowdown in the game too.
     
  16. r3trogam3r

    r3trogam3r Newly Registered

    Joined:
    Jul 26, 2016
    Messages:
    1
    Likes Received:
    0
    Hello. I just discovered this method for disabling AA and it looks fantastic through RGB on my Sony PVM. I am looking for codes to disable AA in Zelda: Ocarina of Time and Conker's Bad Fur Day. Anyone discovered them? Thanks.
     
  17. rso

    rso °

    Joined:
    Mar 26, 2010
    Messages:
    2,210
    Likes Received:
    472
    [​IMG]
    Btw, what's wrong with the two GS codes (for 1.1 + 1.2) provided here?
     
    Last edited: Aug 1, 2016
    Roareye likes this.
  18. MajoraMan

    MajoraMan Newly Registered

    Joined:
    Aug 16, 2016
    Messages:
    1
    Likes Received:
    0
    The 1.1 and 1.2 codes for Ocarina of Time don't work for version 1.0.

    On a similar note, has/can anyone find the codes for the US versions of F-Zero X, Perfect Dark, or Ocarina of Time v1.0? I'd very much like to turn off the AA for those games. Been looking for the best possible video quality.
     
  19. inspectah

    inspectah Member

    Joined:
    May 29, 2013
    Messages:
    5
    Likes Received:
    0
    How can I create IPS/APS patches from the GS codes?
     
  20. saturnu

    saturnu Spirited Member

    Joined:
    Dec 8, 2011
    Messages:
    143
    Likes Received:
    29

Share This Page