Gecko dotNET Bugs and Requests

Started by Mal1t1a, January 19, 2010, 12:08:54 AM

Previous topic - Next topic

dcx2

Was the disassembly tab source a dump?  If so, the dump was modified, and the BP tab was likely reading its disasm from the dump instead of the USB Gecko.  It probably shouldn't, but oh well, you'll just have to remember to set the disasm source to USB Gecko.

When the disasm source is a dump, it is both read from and written to.  The main purpose for assembling dumps is so you can write "absolute branches" into the assembler and it will calculate the offset from the instruction being changed to the address you're trying to branch to.  Otherwise, you need some sort of calculator and some bit masking.

If you want to open a dump while using the USB Gecko, I recommend opening *two* instances of Gecko.NET.  One trick is holding shift while opening the second instance, which prevents it from trying to connect to the USB Gecko.  Then, set the first instance's disasm source to the USB Gecko, and the second instance to a dump.  This also allows you to open multiple dumps as well, by loading third/fourth/etc instances.

Stuff

hmm...I was looking at a dump before setting this breakpoint, but I switched to usbgecko. The dump looks untouched. I checked all three just incase. They're untouched. I remember noping a branch and doing that li. They're not in there. Maybe it was reading memory and writing to nothing because I had a dump open before. >.> Sounds like a bug anyway.

Quote from: dcx2 on September 28, 2011, 05:06:43 PMOne trick is holding shift while opening the second instance, which prevents it from trying to connect to the USB Gecko.
That's awesome. I think you mentioned this before, but I never actually used it. It would be nice if some other button did this though. Like ctrl. You can press it after double clicking the .exe. And you know. Windows does that shift thing.

Another possible bug that wasted 15mins of my life(oh noes). In the search tab, I was doing specific search and every time I refined, it started a new search instead. I noticed after feeling that it was taking too long doing this 5th/6th search. So the next search I noticed that it went from 900ish pages to 1000ish pages. That's not right >.<. And then I realized it wasn't showing anything in the old results column. I think this happened because I started with an unknown search, didn't continue, and hit restart to start a specific search. That was the last thing I did. I had to close gecko.net to get some valid searches.
.make Stuff happen.
Dropbox. If you don't have one, get it NOW! +250MB free if you follow my link :p.

Mod code Generator ~50% complete but very usable:
http://dl.dropbox.com/u/24514984/modcodes/modcodes.htm

Bully@Wiiplaza

#707
Quote from: Stuff on September 28, 2011, 07:24:44 PM
Another possible bug that wasted 15mins of my life(oh noes). In the search tab, I was doing specific search and every time I refined, it started a new search instead. I noticed after feeling that it was taking too long doing this 5th/6th search. So the next search I noticed that it went from 900ish pages to 1000ish pages. That's not right >.<. And then I realized it wasn't showing anything in the old results column. I think this happened because I started with an unknown search, didn't continue, and hit restart to start a specific search. That was the last thing I did. I had to close gecko.net to get some valid searches.
yeah, often happened to me that the search never takes previous results and always starts a new search on refine.
It seems like it happens when one cancels an existing search and starts a new one (unknown value).
Well, happens pretty randomly also :( But once it happens, one can fix it by closing gecko.net.
I noticed that gecko.net sometimes freezes after one search was completed. Probably when one "spams" refines or something like that.
One can´t push any button and the application doesn´t recover also. Only way to close it is task manager and the search obviously gets lost. :rolleyes:
Maybe you can add an option to "remember" search results on gecko.net next time it´s opened until one restarts the search?
Address remembering on disassembly doesn´t work right. Each time I boot the app, it get´s to a low 8000XXXX address that contains a branch instruction. Above it, there are only .word´s. (Same for any game I tried)
And if one opens a mem90 dump, everything gets recognised as mem80 addresses.
If I ctrl + M a mem90 address on gct codes tab, it always guides me to mem80 in memory.
Example: 92345678 will guide me to -> 80345678 but since my input is an mem 90 address, it should go there instead of thinking that 92 was a mem80 codestype.

Thanks,
Bully
My Wii hacking site...
http://bullywiihacks.com/

My youtube account with a lot of hacking videos...
http://www.youtube.com/user/BullyWiiPlaza

~Bully

The D3mon

Do not know if this request was posted before or if it is possible.
I was thinking how nice it would be to memory view a set of address you want to look at at the same time it would be simialar to the multi poke. With exception of in memory viewer.
To explain this better You do a search usually can get it done to 20 or so address. Then ctrl select the 20 or so address right click and select memory view when you get to memoryview you only see the address you want to see. I think this would help narrow down some address easily instead of poking a address that may cause a freeze. 

dcx2

I think the Watch List tab does that already.  It can be a little flakey, though.

The D3mon

I have yet to realy need to use the watch tab but will check it out. I think I might have used it once but has been awhile

giantpune

Something with recent versions of geckoDotNET has slaughtered the rebooter.

start geckoOS 1.9.3.1
select paused start, OSThreadSleep hook
start the rebooter
start geckoDotNET on the computer
press "run game"

using 0.64.3 the system menu will start up like it is supposed to.  using 0.65, it just hangs forever with a blackscreen

dcx2

#712
Weird, I never tried rebooter.

0.65 is old, though.  I never updated the first post.  You should use 0.66.8 instead.

http://wiird.l0nk.org/forum/index.php/topic,4886.msg73292.html#msg73292

EDIT:

I tried rebooter and I had no problem connecting to it.  But you have to wait until the system menu is running before you can connect to it.

Bully@Wiiplaza

#713
I find it interesting that you avoided my typo fixed gecko.net, dcx2.
I didn´t do anything else to it, except for changing the version number and fixing "availible" :P

[spoiler][/spoiler]

Hope there will be updated builts again some time like e.g. moving the "Codes saved!" message to the status bar.
My Wii hacking site...
http://bullywiihacks.com/

My youtube account with a lot of hacking videos...
http://www.youtube.com/user/BullyWiiPlaza

~Bully

Stuff

actually, "0.66.9" was a little slower for some reason. Still, I thought it was interesting that you did that, so it's not on my shift+del queue. But I do use 0.66.8 still and now I always notice "availible" XD.
.make Stuff happen.
Dropbox. If you don't have one, get it NOW! +250MB free if you follow my link :p.

Mod code Generator ~50% complete but very usable:
http://dl.dropbox.com/u/24514984/modcodes/modcodes.htm

Bully@Wiiplaza

Quote from: Stuff on October 23, 2011, 05:59:35 PM
actually, "0.66.9" was a little slower for some reason. Still, I thought it was interesting that you did that, so it's not on my shift+del queue. But I do use 0.66.8 still and now I always notice "availible" XD.
-___-
uhm... how can it be slower? :confused:
That makes no sense ;D

I don´t have the source code, but I can still edit the application... which is funny to do.
Actually, I always use 0.66.9. and I´m happy to see "available" spelled correctly. xD
My Wii hacking site...
http://bullywiihacks.com/

My youtube account with a lot of hacking videos...
http://www.youtube.com/user/BullyWiiPlaza

~Bully

giantpune

with the newer games coming out that require 1000s of patches, our gameconfig.txt may become really huge.  it is also a bit of a headache to put the SD card in the computer to edit this file.  what do you think about a button somewhere in geckoDotNET to perform some of the functions of the gameconfig.txt?  i guess really the poke/searchandpoke/pokeifequal functionality would be the parts that would make sense to have.

matt123337

Anyway we could get the latest source code? I'm trying to migrate away from windows (into linux) and having a really outdated version of GDN is annoying.

Bully@Wiiplaza

#718
we really need gecko.net´s newest source code, but dcx2 doesn´t seem to bother with it... not giving us the chance to mess with it, while he retired from updating anything. I don´t see the actual point at doing so. Isn´t sharing progress? The app still has some glitches that are worth to be fixed. :-\
My Wii hacking site...
http://bullywiihacks.com/

My youtube account with a lot of hacking videos...
http://www.youtube.com/user/BullyWiiPlaza

~Bully

wiiztec

I just updated to the newest Gecko.NET from using r115 for the longest time, and I went to test if saving a loading searches finally work and I got this error message when I tried to load the search I just saved

object reference not set to an instance of an object

details v
See the end of this message for details on invoking
just-in-time (JIT) debugging instead of this dialog box.

************** Exception Text **************
System.NullReferenceException: Object reference not set to an instance of an object.
   at GeckoApp.MemSearch.PrintPageAlt()
   at GeckoApp.MemSearch.UpdateGridViewPage(Boolean ResizeGridView)
   at GeckoApp.MainForm.buttonLoadSearch_Click(Object sender, EventArgs e)
   at System.Windows.Forms.Control.OnClick(EventArgs e)
   at System.Windows.Forms.Button.OnClick(EventArgs e)
   at System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)
   at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
   at System.Windows.Forms.Control.WndProc(Message& m)
   at System.Windows.Forms.ButtonBase.WndProc(Message& m)
   at System.Windows.Forms.Button.WndProc(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
   at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)


************** Loaded Assemblies **************
mscorlib
    Assembly Version: 2.0.0.0
    Win32 Version: 2.0.50727.3625 (GDR.050727-3600)
    CodeBase: file:///C:/WINDOWS/Microsoft.NET/Framework/v2.0.50727/mscorlib.dll
----------------------------------------
Gecko dNet
    Assembly Version: 1.0.0.0
    Win32 Version: 1.0.0.0
    CodeBase:

file:///E:/Documents%20and%20Settings/HP/My%20Documents/Wii%20homebrew/game%20hacking%20utilities/Wiird%20%26%20Gecko%20.NET/Gec

ko%20dNet.exe
----------------------------------------
System.Windows.Forms
    Assembly Version: 2.0.0.0
    Win32 Version: 2.0.50727.3623 (GDR.050727-3600)
    CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Windows.Forms/2.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System
    Assembly Version: 2.0.0.0
    Win32 Version: 2.0.50727.3624 (GDR.050727-3600)
    CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System/2.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Drawing
    Assembly Version: 2.0.0.0
    Win32 Version: 2.0.50727.3053 (netfxsp.050727-3000)
    CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Drawing/2.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------
System.Configuration
    Assembly Version: 2.0.0.0
    Win32 Version: 2.0.50727.3053 (netfxsp.050727-3000)
    CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Configuration/2.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll
----------------------------------------
System.Xml
    Assembly Version: 2.0.0.0
    Win32 Version: 2.0.50727.3082 (QFE.050727-3000)
    CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Xml/2.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------

************** JIT Debugging **************
To enable just-in-time (JIT) debugging, the .config file for this
application or computer (machine.config) must have the
jitDebugging value set in the system.windows.forms section.
The application must also be compiled with debugging
enabled.

For example:

<configuration>
    <system.windows.forms jitDebugging="true" />
</configuration>

When JIT debugging is enabled, any unhandled exception
will be sent to the JIT debugger registered on the computer
rather than be handled by this dialog box.


Also I noticed it now has a pointer search tab, does that have a max offset limit? if so what is it?
If there's any code at all that you want to be button activated, or even able to toggle on & off, and I have the game, just PM me and I'll make it happen