Gecko dotNET release thread (version 0.65 now!)

Started by Link, January 03, 2010, 01:33:37 PM

Previous topic - Next topic

Link

Quote from: Mal1t1a on January 24, 2010, 06:17:29 PM
If you were to write it completely for Windows 7/Vista, and just drop the support for everything else (this is just theory), would you be able to increase Search Speeds, and make it alot better than WiiRd GUI?

lol, making it "alot better" - that depends on people's opinions.. I already got myself enemies because I will outsource pointer search.. and yes, this will happen, no pointer search in gecko dotNET.. for search speeds.. the biggest speed issue about searches is the dump speed.. WiiRd has an optimized block based dump.. I plan to develop something similar.. not just with fixed dump sizes but a little more varied (the idea is: it will only do dumps if the possible addresses follow each other in less than 256 Kilobytes of memory distance.. in WiiRd in worst cases it dumped 1 MB because of 2 addresses within this 1 MB block).. so if my theory on paper works it will be faster.. but those are just ideas..

Planned features certainly are:
1. Variable dump searches
2. Saving searches
3. Undo (will be linked to saving)
4. Conditional breakpoints
5. Deactivating certain lines in codes
6. A special dump format containing both dumps of 80 and 90 areas.. this would be used for the external pointer search application so that this one can search both areas at once (a major limitation in WiiRd right now)

wiiztec

Quote from: Link on January 24, 2010, 05:59:03 PM
Quote from: Mal1t1a on January 24, 2010, 04:32:37 PM
For the WiiRd GUI, did it ever lock-up on you? I'm running Windows 7 32 bit, and the WiiRd GUI is what locks up all the time. I'm always using gecko dotNet, and it hasn't locked up on me yet. I think I have left it running for more than one hour. Also, the only bugs I have found I have made a topic. Click Here. Other than that, there isn't really anything wrong with it. If you coded it in Windows 7, then it could be the .Net Framework (mabye).

WiiRd GUI certainly locks up all the time on Vista and 7.. WiiRd GUI is based on GCNrd GUI which was written with Windows 98 in mind back in 2001.. and well.. WiiRd originally was even developed in Delphi 6 but the Delphi 6 compiles just completely didn't work on Vista x64 (I assume they wouldn't work on 7 x64 either).. thus the code was ported to Delphi 2006 which compiles and runs fine on Windows Vista x64 - however, the core is the same and it's still like 85% old GCNrd code and 15% WiiRd code.. the result is well.. instable on modern Vista and 7 platforms.. it's sad but yeah.. I would port the code properly however kenobi's code is more or less unreadable to me.. so I can only do very minor changes here and there but most of the suggestions for WiiRd - I'd simply be unable to perform them (believe me, I'd happily do!).

Gecko dotNET is a rewrite.. no code from the original WiiRd has been taken.. it is developed on Windows 7.. as Windows 7 and Windows Vista are very much alike I doubt Gecko dotNET will show any malfunctions on Vista.. as it is compiled against .NET 2.0 it should theoretically be backwards compatible until Windows 98 however, it was not tested on Win98 (I started it once and saw that it kinda works)! As it compiles against Mono on Linux I am happy but Linux users should accept that Linux is no real priority.. I do some compile checks here and there but year.. stable Linux ports will only come if the Windows version is finished and stable.. and I repeat: the Windows version was developed with Windows Vista and 7 in priority.. I did test it on Windows 2000 and XP.. it should run on them fine.. Windows 98 and ME work but they are certainly completely unsupported so if you use them.. please please switch!

Well that explains why WiiRd never locks up on me, I use XP
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

Romaap

I used to have Windows XP and it froze like a million times.

Zetta_X

I  had two computers, I bought a nice gaming rig which happened to be Windows 7. Wiird would crash and freeze and not work all the time on gaming rig so I always proceeded to use my Windows XP laptop. The unfortunate part is it fell because someone tripped on the power cord and now I get an unmountable_boot volume error and the harddrive is fried, can't be read and toast.  So I was basically at a disadvantage with wiird. I have used geckodotnet and it is working more than perfect for my current needs with games :)

Cory321

Could you add the Save Searches function in a way that we will be able to save 10 (or more if you can!) per game?, just as you did with the notes stuff.

Also, could you make it so we can name the searches? Sometimes I don't know what is the search I'm looking for... :S

I'll appreciate it a lot!  ;)

Link

Quote from: Cory321 on February 01, 2010, 01:13:22 AM
Could you add the Save Searches function in a way that we will be able to save 10 (or more if you can!) per game?, just as you did with the notes stuff.

Also, could you make it so we can name the searches? Sometimes I don't know what is the search I'm looking for... :S

I'll appreciate it a lot!  ;)

Saving searches is quite easy to add, and yes, I indeed do plan do add that feature!

Zetta_X

Quote from: Link on February 01, 2010, 05:54:26 AM
Quote from: Cory321 on February 01, 2010, 01:13:22 AM
Could you add the Save Searches function in a way that we will be able to save 10 (or more if you can!) per game?, just as you did with the notes stuff.

Also, could you make it so we can name the searches? Sometimes I don't know what is the search I'm looking for... :S

I'll appreciate it a lot!  ;)

Saving searches is quite easy to add, and yes, I indeed do plan do add that feature!

Looking promising :)

Does Geckodotnet have an automatic update feature or do we watch this space for new updates?

Link

Well.. just to give you a status update.. Life kept me a bit busy but I finally was able to do some coding (no new beta yet)..

what has been implemented:
-code lines can be deactivated.. just add a "-" or "/" somewhere in the code and the line is parsed as deactivated.. when you select a code disabled lines start with "--" (pretty much like LUA comments)
-memory searches have got a block dump option.. this block dump was an idea I came up with today - it works totally different than the WiiRd one but it should be even more effecient.. this is what WiiRd do in comparison:

Split the range from the start to the end address into block of 1M in size... if values were found within this block the block gets dumped from its lowest value to its highest..
Worst case scenario: each block has exactly 2 results.. one very much at the beginning and one at the end.. WiiRd will end up dumping the complete block.

Gecko dotNET way: dynamic blocks! First of all it will ask the OS for memory (as large as begin of the dump to the end of the dump).. however it will only fill parts within it.. if two former results differ in distance by more than 128K (less than 128K would take long, as gecko dotNET always has to reinitialize dumps which would take time) they will be dumped seperately.. fact is that Gecko dotNET will create much more smaller blocks than WiiRd did.. the worst case scenario for gecko dotNET would be that all results are less than 128K next to each other.. it will only create one big block then (but WiiRd would more or less behave identically).

Result so far: very very fast search!

Panda On Smack


Zetta_X

Quote from: wiiztec on January 23, 2010, 06:14:46 PM
I felt I needed to say something when somebody was talking about changing the identity of the site because Gecko.net was now the "main tool" when a lot of people still use WiiRD

What do you see being updated more often?

Link

Gecko dotNET is still not the main tool, I think.. it will probably never be a replacement either as I'll never be able to 100% match up all of WiiRd's features.. so I wouldn't complain at all if they end up existing side by side (well, that's actually the plan)

Panda On Smack

Quote from: Link on February 07, 2010, 04:41:28 PM
Well.. just to give you a status update.. Life kept me a bit busy but I finally was able to do some coding (no new beta yet)..

what has been implemented:
-code lines can be deactivated.. just add a "-" or "/" somewhere in the code and the line is parsed as deactivated.. when you select a code disabled lines start with "--" (pretty much like LUA comments)
-memory searches have got a block dump option.. this block dump was an idea I came up with today - it works totally different than the WiiRd one but it should be even more effecient.. this is what WiiRd do in comparison:

Split the range from the start to the end address into block of 1M in size... if values were found within this block the block gets dumped from its lowest value to its highest..
Worst case scenario: each block has exactly 2 results.. one very much at the beginning and one at the end.. WiiRd will end up dumping the complete block.

Gecko dotNET way: dynamic blocks! First of all it will ask the OS for memory (as large as begin of the dump to the end of the dump).. however it will only fill parts within it.. if two former results differ in distance by more than 128K (less than 128K would take long, as gecko dotNET always has to reinitialize dumps which would take time) they will be dumped seperately.. fact is that Gecko dotNET will create much more smaller blocks than WiiRd did.. the worst case scenario for gecko dotNET would be that all results are less than 128K next to each other.. it will only create one big block then (but WiiRd would more or less behave identically).

Result so far: very very fast search!

Have you uploaded your latest build?

Link

Not yet, so far there is one issue with the breakpoint tab (internal stuff, adding extensions for conditional breakpoints).. I'll doubt they'll make it in the GUI but I'll release a working build once that is fixed

Romaap

I just tried Gecko dotNET with Pokemon Rumble (WiiWare) but it didn't load the game-id correct, so the NotePad and GCT didn't work.
My theory is that Gecko dotNET looks for the game-id in 0x80000000, but that only works for disc games, the game-id can also be found at 0x80001800 and that's the only place where the WiiWare game-id is.

Panda On Smack

Link, a feature that is useful in WiiRd is in the memory tab. You can search for a value and because it does it in small dumps my games don't 'time out' like they would do if I dumped all of the 80 range in one go

Is that possible to add?