|
#1
|
||||
|
||||
![]()
I have found the code that sets the frameskip in Banjo-Tooie (U).
Here it is. No Frameskipping 8007913C 0080 You can find it by searching equal to... 0/4 before/after getting hurt in the cloud-cuckooland cheese room. I used this cheat in the emucr leaked v1.7.0.50 b23 (yes,I know 2.0/2.1 is out). Edit:IT ALWAYS WORKS!!!!! UPDATE:Many new codes! master 81092BE0 0804 81092BE2 8000 81120200 03E0 81120202 0008 Never Slide On Slopes 81120000 3C0E 81120002 0000 81120004 AC8E 81120006 07C8 Requires the master code. Other codes that require the master code like this one are on pages 12 and higher. Last edited by retroben; 19th February 2014 at 11:47 PM. Reason: AWESOMENESS!!! |
#2
|
||||
|
||||
![]()
Frame skipping?
Like, that option in Rice's Video Plugin that says "Skip frame", for skipping every other video drawing frame? I'm amazed you can actually have a GS code for something like that lol, if I'm reading you properly.
__________________
http://theoatmeal.com/comics/cat_vs_internet |
#3
|
||||
|
||||
![]() Quote:
This crappy frame skipping is well known on the actual physical game in your N64 console when talon trotting in jinjo village with Super Banjo enabled. This code's hex address is very close to the beta devil bottles code found by RWP. If you ever entered the CCL cheese room on PJ64,you would notice very fluid skipless animation,at least until you get hurt on the spiked onion,which causes the frame skip to be set to four (how I found the code). I recommend using the old 1.5.2 Jabo D3D plugin for flawless 60fps. The code also works on v1.6 of PJ64,it runs even smoother than 1.7. Add/enable the cheat in the BT's edit cheats context menu then start the game,and you will notice how smoothly the title sequence moves. It will also be extremely noticable in Banjo's house,and whenever you get launched by a CCL flower. If you want to,you can set it to any higher number like 9 to make it look like your computer sucks at emulation. This code improves the overall playability of Banjo-Tooie. I would love to see someone make a YouTube video of this Gameshark code in action on an actual N64 console,if there is anyone that has Banjo-Tooie and an N64 gameshark willing to make that video. Or at least someone make a video of it in action in PJ64. |
#4
|
||||
|
||||
![]()
Also have you tried setting the pointed address value to 0x99999999, or 0x9999, instead of just 9 at the lowest byte, to make sure the cheat code is targeting only an 8-bit field instead of maybe a 16-bit one?
__________________
http://theoatmeal.com/comics/cat_vs_internet |
#5
|
||||
|
||||
![]()
???
I think 09 would make it skip nine frames in one digit. I am sure there is only one digit space for this code to work on since the next byte on the right is normally an eighty like so--->04 80 ## ## LOL byte,and right I am rhyming! *me making dummy voice*--->duugh me coonfewsd uhbowte poynter theeng yuu arr tawlkeeyng uhbowte. All I can say is that the code works perfectly fine for me in its current state. Please tell me about your experiences with it after you try it out. To me,with the code on,it looks like a high end,fast motion w/machine guns,First Person Shooter game. I can't think of any specific game with smooth high speed gameplay. Fact?:Banjo-Kazooie does not have BT's frame skipping issue. |
#6
|
|||
|
|||
![]()
Wow... this actually works indeed! I just put that code in PJ v2.1 with Glide and checked fps counter to see the exact frame rate and... BAM! 60fps! (in fact, fps counter isn't needed, anyone can see it with his own eyes how smooth it actually is)
Problem is, my computer is a Pentium 4 3.0ghz so after the title screen (which runs at 60fps) the rest of the game runs in slow motion and my CPU at 100% but i still get 40-50fps from the game. Which means if my computer was faster, i would definitely get 60fps. This is awesome and i wonder if this can be done in other games. I know that Goldeneye and Perfect Dark can be run at 60fps using 1964 ultrafast, so i am thinking that maybe something similar can be done with a gameshark code? And what would happen if someone sets this code on a real N64? I don't think it would work since the frame limit was there in the first place because the console can't handle smoother frame rate with this game and its there to maintain the frame rate at a steadier, but lower frame rate with no huge ups and downs. Also, do you know if this messes up the timing in the game overall (time limit games, etc)? Anyway, great job Retroben. This is indeed very interesting. You mean on the N64? At 60fps? F-Zero X is the only one i know. Last edited by Tasoulis; 19th July 2013 at 09:29 AM. |
#7
|
||||
|
||||
![]() Quote:
I mean from right-to-left. MIPS is a big-endian machine, so your code: 8007913F 0000 writes 8 bits, 0x00, to *(DRAM + 0x07913F). However, this is an un-aligned byte address. It's very likely that 0x7913E is also part of the data segment you're writing to. So if you set 0x07913F to 0x00, it does not always guarantee frame skip is set to 0. If you set 0x07913E to 1, 2 or whatever, then it's 256 TIMES the value at ...3E, plus whatever you put in 3F. I haven't had a chance to try out the code yet since I'm not at my home computer, but I'll try it eventually. Good work regardless.
__________________
http://theoatmeal.com/comics/cat_vs_internet |
#8
|
||||
|
||||
![]()
If you know how,you can search for a cheat with PJ64 debugger in Goldeneye and/or Perfect Dark.
If you can't switch between two different areas immediately,you will have to manipulate save states. All you have to do is first go to a point in the game where it skips frames,make a savestate,go to a place that the game runs with less/no frames skipped,and make a different savestate. Now to find the cheat,you search in unchanged,then changed after you load each savestate over the other one. You could also progress into another area normally and load back if you know the next area is more/less choppy than the previous one. If you know of an area in the game that can run flawlessly with no choppy speeds,you can search for equal to zero in this area to shorten your search. If you run out of cheats to find,after your first search,look at the 50000th/last result's address,you can put this part in the "start addr." box for your next search. (e.g 50,000--->8007653C:0078--->this would be the highest possible found address in your search limit,put this in the starting address to search further down.) Warning:the 2.0/2.1 versions of PJ64 crash on memory search for an unknown reason,you will have to use 1.6/1.7/or some other clean 1.7 version for it to search without immediately crashing. EDIT:I have just encountered a non mapped space error when getting to file select on PJ64 v1.6 if you run the game with "no frameskip" already enabled before starting emulation. This crash does not happen in 1.7 versions,at least not in the beta 23 emucr leak. Last edited by retroben; 19th July 2013 at 05:20 PM. |
#9
|
||||
|
||||
![]()
Well I finally got around to trying the code out.
![]() It seems your update about using offset - 3 was correct. This is actually a sign-extended 32-bit word. So doing *(INT32 *)(DRAM + 0x07913C) = 0x80000000 .. 0xFFFFFFFF implies a negative skip. It would be the same thing as just zeroing it like you tried to do. If we add the following line before yours in the code, your method should fail to zero the frame skip: Code:
8107913C 7FFF 8007913F 0000 Code:
8107913C 0000 // if you set this to 0x8000 to 0xFFFF it's negative, // and the game seems to just treat that as if you set it to 0 instead, so, same 8107913E 0000
__________________
http://theoatmeal.com/comics/cat_vs_internet |
#10
|
||||
|
||||
![]()
If you like you could also make this into a user-modifiable cheat code.
Try: Code:
8107913C 0000 8107913E ???? I guess I would do: Code:
0000 skips no frames 0001 skips 1 frame 0002 2 frames 0003 3 frames 0004 4 frames 0008 8 frames 0010 16 frames Anyway nice code, glad you found out about it.
__________________
http://theoatmeal.com/comics/cat_vs_internet |
![]() |
Tags |
banjo-tooie, gameshark |
Thread Tools | |
Display Modes | |
|
|