Homebrew RELEASE Noexs Remote Debugger

phonz

Well-Known Member
Member
Joined
May 1, 2018
Messages
278
Trophies
0
XP
1,868
Country
Canada
  • Like
Reactions: Bibiz

xiaye

New Member
Newbie
Joined
Oct 17, 2019
Messages
3
Trophies
0
Age
34
XP
53
Country
China
I use it and it said:
Not enough free space for Dump

could someone tell me how to do?
(My English isn't very well sorry)
 

Smoker1

Well-Known Member
Member
Joined
Feb 17, 2015
Messages
5,035
Trophies
1
Location
California
XP
6,029
Country
United States
Slight Issue -
My Computer has 202GB (C) and 215GB(D) available on it. I also have 32GB Memory. Yet when I was trying to find a Time Code, it kept saying there was no Space available. How is that??
 

Deleted member 474010

Well-Known Member
Member
Joined
Dec 17, 2018
Messages
297
Trophies
0
XP
1,288
In regards to the previous error I was having there could be a possible way to fix it, but someone would have to program it into the tool. I don't know how to do that.

Here's the error I'm talking about:
me.mdbell.noexs.core.ConnectionException: Result{mod=1, desc=106}
at me.mdbell.noexs.core.Debugger.readmem(Debugger.java:274)
at me.mdbell.noexs.ui.services.MemorySearchService$SearchTask.createDump(MemorySearchService.java:373)
at me.mdbell.noexs.ui.services.MemorySearchService$SearchTask.refineSearch(MemorySearchService.java:211)
at me.mdbell.noexs.ui.services.MemorySearchService$SearchTask.call(MemorySearchService.java:187)
at me.mdbell.noexs.ui.services.MemorySearchService$SearchTask.call(MemorySearchService.java:172)
at javafx.graphics/javafx.concurrent.Task$TaskCallable.call(Unknown Source)
at java.base/java.util.concurrent.FutureTask.run(Unknown Source)
at javafx.graphics/javafx.concurrent.Service.lambda$executeTask$6(Unknown Source)
at java.base/java.security.AccessController.doPrivileged(Native Method)
at javafx.graphics/javafx.concurrent.Service.lambda$executeTask$7(Unknown Source)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.base/java.lang.Thread.run(Unknown Source)

The Part I'm Likely Correct On:
Matt said it was likely due to deallocated memory. I think it's due to differing RAM Dump sizes (thus, also deallocated memory). I noticed that whenever I got a ConnectionException that the next RAM dump had a different size than the original dump from the search. Let's suppose on our first scan we get a ram dump that's the size of 1024MB. The game suddenly deallocates memory, taking us down to 1023MB. Likewise, let's say the game takes up more memory, taking us up to 1025MB. The error is thrown because of two reasons. In the sceneario that memory is deallocated, Noexs attempts to read memory that is not there, throwing an exception. Likewise, whenever the dump is larger than normal, it tries to reference memory that is not there in the first address results, throwing an exception.

The Theoretical Fix (I Could Be Wrong):
I've also noticed I could use Cheat Engine to search for the correct address, even though memory size changes. That suggests to me that when these size changes occur, memory is added or subtracted from the end of the dump. I guess that the solution would lie in changing the results files based on RAM changes. Let's say in our first dump the final address is 0x80000000. In the next dump the final address is 0x7999999C, making for a difference in four bytes. Here, we could potentially fix this by only attempting to look at memory up to 0x7999999C, dropping off the last four bytes. Let's say we now have a first dump whose final address is 0x80000000 and a second dump whose final address is 0x80000004. We could exclude the last four values here, reading up to 0x80000000 instead. Now, let's say we have three dumps. One final is 0x80000000, second final is 0x80000004, and third final is 0x7999999C. The problem here would be fixed by reading only up to 0x7999999C. In this case, the minimal amount of memory was preferred. Finally, if all three dumps were 0x80000000, no change should be needed. In the case I'm wrong about where memory is added, you could attempt to exclude memory changes other than the one's you're looking for, attempting to make the dump as much like the original as possible, just excluding values that were randomy added or fixing values that were shifted left or right.
 
Last edited by Deleted member 474010,

linuxares

The inadequate, autocratic beast!
Global Moderator
Joined
Aug 5, 2007
Messages
13,285
Trophies
2
XP
18,107
Country
Sweden
In regards to the previous error I was having there could be a possible way to fix it, but someone would have to program it into the tool. I don't know how to do that.

Here's the error I'm talking about:
me.mdbell.noexs.core.ConnectionException: Result{mod=1, desc=106}
at me.mdbell.noexs.core.Debugger.readmem(Debugger.java:274)
at me.mdbell.noexs.ui.services.MemorySearchService$SearchTask.createDump(MemorySearchService.java:373)
at me.mdbell.noexs.ui.services.MemorySearchService$SearchTask.refineSearch(MemorySearchService.java:211)
at me.mdbell.noexs.ui.services.MemorySearchService$SearchTask.call(MemorySearchService.java:187)
at me.mdbell.noexs.ui.services.MemorySearchService$SearchTask.call(MemorySearchService.java:172)
at javafx.graphics/javafx.concurrent.Task$TaskCallable.call(Unknown Source)
at java.base/java.util.concurrent.FutureTask.run(Unknown Source)
at javafx.graphics/javafx.concurrent.Service.lambda$executeTask$6(Unknown Source)
at java.base/java.security.AccessController.doPrivileged(Native Method)
at javafx.graphics/javafx.concurrent.Service.lambda$executeTask$7(Unknown Source)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.base/java.lang.Thread.run(Unknown Source)

The Part I'm Likely Correct On:
Matt said it was likely due to deallocated memory. I think it's due to differing RAM Dump sizes (thus, also deallocated memory). I noticed that whenever I got a ConnectionException that the next RAM dump had a different size than the original dump from the search. Let's suppose on our first scan we get a ram dump that's the size of 1024MB. The game suddenly deallocates memory, taking us down to 1023MB. Likewise, let's say the game takes up more memory, taking us up to 1025MB. The error is thrown because of two reasons. In the sceneario that memory is deallocated, Noexs attempts to read memory that is not there, throwing an exception. Likewise, whenever the dump is larger than normal, it tries to reference memory that is not there in the first address results, throwing an exception.

The Theoretical Fix (I Could Be Wrong):
I've also noticed I could use Cheat Engine to search for the correct address, even though memory size changes. That suggests to me that when these size changes occur, memory is added or subtracted from the end of the dump. I guess that the solution would lie in changing the results files based on RAM changes. Let's say in our first dump the final address is 0x80000000. In the next dump the final address is 0x7999999C, making for a difference in four bytes. Here, we could potentially fix this by only attempting to look at memory up to 0x7999999C, dropping off the last four bytes. Let's say we now have a first dump whose final address is 0x80000000 and a second dump whose final address is 0x80000004. We could exclude the last four values here, reading up to 0x80000000 instead. Now, let's say we have three dumps. One final is 0x80000000, second final is 0x80000004, and third final is 0x7999999C. The problem here would be fixed by reading only up to 0x7999999C. In this case, the minimal amount of memory was preferred. Finally, if all three dumps were 0x80000000, no change should be needed. In the case I'm wrong about where memory is added, you could attempt to exclude memory changes other than the one's you're looking for, attempting to make the dump as much like the original as possible, just excluding values that were randomy added or fixing values that were shifted left or right.
Problem is that it's an older Java that is probably crashing with the latest java versions (no javafx). This is why I like Python so much more. You can easily run python 2 and python 3 on the same system. Javafx seem to cause so much problem of late. Especially on Linux.
 

Deleted member 474010

Well-Known Member
Member
Joined
Dec 17, 2018
Messages
297
Trophies
0
XP
1,288
Problem is that it's an older Java that is probably crashing with the latest java versions (no javafx). This is why I like Python so much more. You can easily run python 2 and python 3 on the same system. Javafx seem to cause so much problem of late. Especially on Linux.
I'm using the version compiled with JDK11 that was forked from the original noexs branch. I also don't have any other versions of Java on my system as that caused me problems before, so I uninstalled them. Issue persists and occurs only whenever RAM dumps are of different size. Otherwise, it works fine.
 
Last edited by Deleted member 474010,

linuxares

The inadequate, autocratic beast!
Global Moderator
Joined
Aug 5, 2007
Messages
13,285
Trophies
2
XP
18,107
Country
Sweden
Hmm then I'm out of ideas. I think @phonz did a compilation of Quark that worked on Linux systems. So... maybe he is the man? I know so little about Java it's silly. I tried to learn to program it. I hated to program for it. Because the compilers where shit... C++ and C# where were it was at.
 

phonz

Well-Known Member
Member
Joined
May 1, 2018
Messages
278
Trophies
0
XP
1,868
Country
Canada
Hmm then I'm out of ideas. I think @phonz did a compilation of Quark that worked on Linux systems. So... maybe he is the man? I know so little about Java it's silly. I tried to learn to program it. I hated to program for it. Because the compilers where shit... C++ and C# where were it was at.

No, sorry that wasn't me.
I also have no issues regarding RAM dumps.
I am currently using Jnoexs JDK10, Switch firmware 8.1.0, and noexs sysmodule (not kip).
 

Deleted member 474010

Well-Known Member
Member
Joined
Dec 17, 2018
Messages
297
Trophies
0
XP
1,288
No, sorry that wasn't me.
I also have no issues regarding RAM dumps.
I am currently using Jnoexs JDK10, Switch firmware 8.1.0, and noexs sysmodule (not kip).
I'm using the JDK11 version of the tool, Switch Firmware 9.0.1, and I'm using the noexs sysmodule too. I've tried JDK10 before and whenever it was working, it always gave me the same issue. Matt said it something in his tool that needed to be fixed whenever he got around to it. Also, I was trying to hack Smash Brothers. @Stoned told me Noexs did the same thing to him, so Noexs doesn't seem to like that game.
 
Last edited by Deleted member 474010,

Stoned

Well-Known Member
Member
Joined
Mar 26, 2014
Messages
2,763
Trophies
2
Age
45
XP
4,372
Country
Germany
I'm using the JDK11 version of the tool, Switch Firmware 9.0.1, and I'm using the noexs sysmodule too. I've tried JDK10 before and whenever it was working, it always gave me the same issue. Matt said it something in his tool that needed to be fixed whenever he got around to it. Also, I was trying to hack Smash Brothers. @Stoned told me Noexs did the same thing to him, so Noexs doesn't seem to like that game.

Correct. Since i have Fw 9.x Noexes fucked me hard whit Errors.

So i use Alternative Edizon Editor. It can make Pointers too and it's faster. But cant do Unknown Searches.
 

Smoker1

Well-Known Member
Member
Joined
Feb 17, 2015
Messages
5,035
Trophies
1
Location
California
XP
6,029
Country
United States
I am guessing JNoexs will not work on Windows 7? Just get this Windows coming up for a split second, then it goes away and nothing. I also Installed Java 13. Still nothing
JNoexs Problem W7 with Java12.jpg
 
Last edited by Smoker1,

Smoker1

Well-Known Member
Member
Joined
Feb 17, 2015
Messages
5,035
Trophies
1
Location
California
XP
6,029
Country
United States
Yeah I am finally able to get Results now. However, I would like to add a couple suggestions.....

Able to use 2 or more Memory Dumps for increased Accuracy. Will require 2 or more Addresses and MAIN Starting Addresses in order to map out the Results.
Able to Sort the Pointer Results by smallest first, or more likely first
Might need to allow more Memory to the Program. I tried going for a 4 or 5 Depth Search, and it got stuck.
Also, I have 200+GB of Storage Space, and 32GB Memory, but a few times, I got a Error Message saying there was not enough Storage.
 

Deleted member 474010

Well-Known Member
Member
Joined
Dec 17, 2018
Messages
297
Trophies
0
XP
1,288
Yeah I am finally able to get Results now. However, I would like to add a couple suggestions.....

Able to use 2 or more Memory Dumps for increased Accuracy. Will require 2 or more Addresses and MAIN Starting Addresses in order to map out the Results.
Able to Sort the Pointer Results by smallest first, or more likely first
Might need to allow more Memory to the Program. I tried going for a 4 or 5 Depth Search, and it got stuck.
Also, I have 200+GB of Storage Space, and 32GB Memory, but a few times, I got a Error Message saying there was not enough Storage.

I've heard that Noexs has a two-depth pointer limit, so that could explain why. Find your value once then do a pointer search for it. Export the list of pointers. Afterwards, restart your Switch, find your value again, and then do a pointer search. Export that list too. If you want to see commonalities between dumps, simply dump the results for pointer depth 1 and 2 for both dumps and then use a program to compare between the lists (I prefer this online tool: http://www.molbiotools.com/listcompare.html). A pointer on both lists is a pointer likely to work. No common pointer means to increase the possible offset size. If you bring your offset up so high that noexs begins to be unable to carry out the search/takes forever on a search, doing a HEAP pointer search could be wise as you might have a non-MAIN pointer.
 
Last edited by Deleted member 474010,

Smoker1

Well-Known Member
Member
Joined
Feb 17, 2015
Messages
5,035
Trophies
1
Location
California
XP
6,029
Country
United States
I've heard that Noexs has a two-depth pointer limit, so that could explain why. Find your value once then do a pointer search for it. Export the list of pointers. Afterwards, restart your Switch, find your value again, and then do a pointer search. Export that list too. If you want to see commonalities between dumps, simply dump the results for pointer depth 1 and 2 for both dumps and then use a program to compare between the lists (I prefer this online tool: http://www.molbiotools.com/listcompare.html). A pointer on both lists is a pointer likely to work. No common pointer means to increase the possible offset size. If you bring your offset up so high that noexs begins to be unable to carry out the search/takes forever on a search, doing a HEAP pointer search could be wise as you might have a non-MAIN pointer.
It can do a 3 Depth actually, but it depends on the Game/Dump. That is how @patjenova and I were able to to start looking for MK11 Health/Super/Interaction for the latest Update. Now that I am getting used to it, I should be able to look for it next time faster.
There are some Issues though......

When I know the Value, I run a Search, there are times when I get a Out of Bounds Error (??). Or for some reason, I have FULL SIGNAL, and the Connection gets Interrupted or cuts out for no reason. It might be the Switch though, because there have been times when it refuses to Connect, even though there is perfect Signal, and NO, the Password has NOT been changed.
 

Deleted member 474010

Well-Known Member
Member
Joined
Dec 17, 2018
Messages
297
Trophies
0
XP
1,288
It can do a 3 Depth actually, but it depends on the Game/Dump. That is how @patjenova and I were able to to start looking for MK11 Health/Super/Interaction for the latest Update. Now that I am getting used to it, I should be able to look for it next time faster.
There are some Issues though......

When I know the Value, I run a Search, there are times when I get a Out of Bounds Error (??). Or for some reason, I have FULL SIGNAL, and the Connection gets Interrupted or cuts out for no reason. It might be the Switch though, because there have been times when it refuses to Connect, even though there is perfect Signal, and NO, the Password has NOT been changed.

Are you getting ConnectionExceptions by any chance? If so, that means the RAM Size has suddenly changed. Noexs doesn't seem to know what to do with that. That just means Noexs doesn't work well with that game. Smash Brothers does the same thing to me.
 
  • Like
Reactions: Smoker1

Ktmdude64

New Member
Newbie
Joined
Oct 3, 2016
Messages
4
Trophies
0
Age
33
XP
95
Country
Thailand
I have finally got Noexes to work on the PC with Java 10.0.1. But I can’t seem to connect it to my switch from Network or usb.

Please Any help would be awesome.

--------------------- MERGED ---------------------------

New to Noexs. For some reason it wont connect. I dont get the option of choosing noexs and cfw in the other firmware boot option. Tried to follow what was on page 9 but still am a bit confused.
Edit
Redid the hekate.ini file and double checked to make sure that java 10 was installed. Port 7331 is open. The kip file is on the root of my sd card. When I load cfw what should I load? By that i mean just your basic cfw or is there a special cfw i need to run?
Edit 2.
Got it to run and connect. Should be fun.

How did you get to connect with your switch?
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
    BakerMan @ BakerMan: idk, i don't have one