• PS3 Hacks , 24.01.2013

    PS3HaX Member anaria has compiled a code to help with the checking of Nor Dumps, here is a quote from his thread:

    Hi Guys,I’m no dev nor a PS3 expert, but I’d like to try some stuff in there…
    So I’ve wrote few lines of code in order to help me, and who else want, to validated and analyse a PS3 NOR dump.

    I’ve read what I could from ps3devwiki as well as on ps3hax in order to gather as much as possible information to help me in writing my lines.

    I’d come to it shortly, but first I’d like to thanks all of you who participate to this scene, I’m not good at naming people and I’m worry to forget some.

    Now my code may not look beautiful and may definitely be improved/enhanced, but as of today it seems useful to me and I hope it can be for others, so please enjoy it as much as you want.

    I have no pretension for it but I’d like from anyone who enjoy it, to keep it as an opensource project, if this code or any part of it is used for another application I ask you to make it public as well, if you like this code and write some changes please share it with everyone.

    I’d also appreciate if anyone want to propose some code and English correction.

    Download

    Thanks anaria

    Discuss in Forums (155)


  • 155 Comments

    1. katsuru
      01-21-2013
      06:56 AM
      1

      great initiative ^^

      I thought of this already, but my Java skills did not make me confident enough to try it out.

      Just let us know if we can help you in anyway.

      I will look at your code later this evening when I get home.

    2. Sarah1331
      01-21-2013
      07:12 AM
      2

      Just make a simple app that i can call and it extract a hex value or string that i ask and ill do the rest


      Sent from my iPhone 5 using Tapatalk

    3. anaria
      01-21-2013
      08:10 AM
      3

      [MENTION=220459]katsuru[/MENTION] I've used C as it's fastest simplest best way to build a command line app, if you like to migrate it to java and make a GUI you are welcome to do so, otherwise you may stick to the C and add functions

      [MENTION=245343]Sarah1331[/MENTION] the function ReadSection does this, we can just add another option the argument and call it with the proper parameters to do what you'd like.

    4. Sarah1331
      01-21-2013
      08:46 AM
      4

      I have no idea on how to compile such code but if I can help in anyway let me know


      Sent from my iPhone 5 using Tapatalk

    5. 3absiso
      01-21-2013
      08:50 AM
      5

      This is good, hope an executable application will be released, to help validating the dump.
      although i think i will always go back to HxD to make sure

    6. Sarah1331
      01-21-2013
      08:54 AM
      6

      Originally Posted by 3absiso View Post
      This is good, hope an executable application will be released, to help validating the dump.
      although i think i will always go back to HxD to make sure
      That's why I asked for what I did then I can script a quick batch script to extract revelant info and check


      Sent from my iPhone 5 using Tapatalk

    7. anaria
      01-21-2013
      09:15 AM
      7

      ATM I can only compile it for you for Mac you'd have to wait tomorrow that I get my hand on a PC, otherwise it's really simple to compile:

      gcc sourcefile.c -o appname -lcrypto

    8. Sarah1331
      01-21-2013
      09:20 AM
      8

      Would be grateful if you compile for my "noob" abilities


      Sent from my iPhone 5 using Tapatalk

    9. Mistawes
      01-21-2013
      09:53 AM
      9

      Working a treat on my RasPi, thanks a lot!

      (Tested on known bad dump, warns not to flash)

    10. zecoxao
      01-21-2013
      09:53 AM
      10

      wow. it has been a while since i actually saw such a clean C code if that makes [MENTION=131344]euss[/MENTION] happy then i guess it'll make a decent terminal app to use :D

    11. anaria
      01-21-2013
      09:53 AM
      11

      Here you go for a compiled version on Mac: www dot sendspace dot com/file/1sdabq
      I'm looking at cross compile stuff now and it hurts my brain ...

    12. zecoxao
      01-21-2013
      10:16 AM
      12

      http://dl.dropbox.com/u/35197530/nor...checker.tar.gz

      I have added a Makefile for it for linux and put it as a binary application, if it's ok with the OP

    13. anaria
      01-21-2013
      12:27 PM
      13

      [MENTION=202826]zecoxao[/MENTION] no problem you are welcome to do so, thanks for your support.

    14. underwurlde
      01-21-2013
      04:19 PM
      14

      Well written, well structured coding.

      10/10

      A

    15. anaria
      01-21-2013
      11:50 PM
      15

      Some notes for anyone who want to compile it but have no idea about it:

      There are many solution out there but as I only wrote and tested it on a POSIX platform I'd stick to it.

      For windows user:
      I suggest to install cygwin with developer packages.
      You can then compile with the command:
      gcc sourcefile.c -o appname -lcrypto
      to run it from cygwin shell just type ./appname
      to run it from the dos you'll need to copy required cygwin dll
      you can also use the tgz from [MENTION=202826]zecoxao[/MENTION] and do a make as on any other POSIX system within cygwin of course.

      For Linux users:
      well you know that already :P

      For Mac users:
      I hope you know that too... otherwise the simplest is to install xcode in order to have gcc and all includes then follow same steps as in cygwin.

      For any other POSIX platform:
      I'm sure you know that already.

      For Amiga users:
      go with gcc, google will tell you

      For Atari ST users:
      I suggest you to exchange it with an Amiga...:D, arf of course yes you can find something.

      Any other exotic platform: you'll have to find by yourself

      [MENTION=245343]Sarah1331[/MENTION], I've added especially for you :P the -D option some examples below under windows and cygwin:

      $ ./NORDumpTool.exe nordump.bin -D 0x820 0x10 A
      ******************************
      * NOR Dump Tool *
      ******************************

      Open source project aimed to help to validate PS3 NOR dumps
      At the moment (January 2013) the code is probably able
      to give you a validation status of roughly 90%!?
      It's anyway better to do additionnal checking by your own,
      unless the code of this tool is fully validated by experts!!!

      Section: Start at '0x00000820' of size '0x10': read metldr

      $ ./NORDumpTool.exe nordump.bin -D 0x820 0x10 H
      ******************************
      * NOR Dump Tool *
      ******************************

      Open source project aimed to help to validate PS3 NOR dumps
      At the moment (January 2013) the code is probably able
      to give you a validation status of roughly 90%!?
      It's anyway better to do additionnal checking by your own,
      unless the code of this tool is fully validated by experts!!!

      Section: Start at '0x00000820' of size '0x10': read 6D65746C647200000000000000000000

      Binaries:
      Windows with cygwin dlls: www dot sendspace dot com/file/d74gcd
      Linux: [MENTION=202826]zecoxao[/MENTION], I'll be grateful again if you proceed with it
      Mac: .... wait few hours...

      Note: I hope this code is clear enough to be evolved in treating NAND dump as well, I'll have a look later if no one does it first, but I'll then have to put my hand on a NAND dump to try it.

    16. MD Krie
      01-22-2013
      04:12 AM
      16

      what developer package i need to install for cygwin?

      sorry noob question

    17. judges
      01-22-2013
      05:09 AM
      17

      Nice work!

      Made a native win32 version (linked statically, nothing else required):
      http://www.mediafire.com/?cfp29xc0xgbs5dk

      -- judges

      Btw, I guess "IDPSTargetID = malloc(2);" should be "IDPSTargetID = malloc(3);"...

    18. 3absiso
      01-22-2013
      05:21 AM
      18

      Originally Posted by judges View Post
      Nice work!

      Made a native win32 version (linked statically, nothing else required):
      http://www.mediafire.com/?cfp29xc0xgbs5dk

      -- judges

      Btw, I guess "IDPSTargetID = malloc(2);" should be "IDPSTargetID = malloc(3);"...
      Nice, tested it and working,
      but always check your Dump with HxD i feel more comfortable that way.
      but this is a good App

      thanx [MENTION=41726]anaria[/MENTION] for the code
      thanx [MENTION=193105]judges[/MENTION] for the compiled version

    19. anaria
      01-22-2013
      05:56 AM
      19

      [MENTION=250000]MD Krie[/MENTION], I'm not sure of the exact minimum required, it should be around packages like gcc-core, g++, openssl.
      If you have enough space (like about 200MB) just install the category Devel, otherwise you can select it to be installed then go in to remove other compiler not related to C/C++ like gcc-java/ada/fortran... mingw is not required either.

      [MENTION=193105]judges[/MENTION], exact I've counted 1 byte instead of 2

    20. Sarah1331
      01-22-2013
      05:59 AM
      20

      Your a good man thank you


      Sent from my iPhone 5 using Tapatalk

    21. guerrierodipace
      01-22-2013
      07:06 AM
      21

      thanks to all people for give us some more pratical tools
      great work


    22. anaria
      01-23-2013
      05:48 AM
      22

      I've edited the first post with a new code, I've added the checking of area where FF or 00 are supposed to be found.
      Use the option "-F" to execute it on a dump.
      It's also part of the default options, which means that if you run this on a dump with no options you will check its statistics, generic data found in a dump, per console information and area filled with 00 and FF.

      Apologies if I did not take time to compile it for you.

    23. Sarah1331
      01-23-2013
      06:50 AM
      23

      Originally Posted by anaria View Post
      I've edited the first post with a new code, I've added the checking of area where FF or 00 are supposed to be found.
      Use the option "-F" to execute it on a dump.
      It's also part of the default options, which means that if you run this on a dump with no options you will check its statistics, generic data found in a dump, per console information and area filled with 00 and FF.

      Apologies if I did not take time to compile it for you.
      I know you don't want to put your dump is valid in big green letters but it could have more - verified on the itemisation bits if you get me

      Please don't take it as an attack I love the app


      Sent from my iPhone 5 using Tapatalk

    24. guerrierodipace
      01-23-2013
      07:46 AM
      24

      thanks so much

    25. judges
      01-23-2013
      07:49 AM
      25

      Originally Posted by anaria View Post
      I've edited the first post with a new code, I've added the checking of area where FF or 00 are supposed to be found.
      Use the option "-F" to execute it on a dump.
      It's also part of the default options, which means that if you run this on a dump with no options you will check its statistics, generic data found in a dump, per console information and area filled with 00 and FF.

      Apologies if I did not take time to compile it for you.
      Here you go (win32 v0.93):
      http://www.mediafire.com/?b3g679tg5hvzf5t

      -- judges

    26. anaria
      01-23-2013
      08:07 AM
      26

      Originally Posted by Sarah1331 View Post
      I know you don't want to put your dump is valid in big green letters but it could have more - verified on the itemisation bits if you get me

      Please don't take it as an attack I love the app
      No problem any kind of feedback are welcome.

      And yes you are right this is going to be better than some stuff I saw on the web out there, just kidding :P

      Ok I'll increase the percentage of trust, I'd say now it has reach a good 97%, but even after further updates I'll not go over 99.9% unless I receive the green light from the big bosses, and get validation from the many of us knowing about properly validating a NOR.
      And then I promise to make it THE app

      Again if anyone want to see some additional feature, just ask and I'll see what can be done, but you are anyway welcome to give an update yourself and that's one of the reason for it to be open.

    27. Sarah1331
      01-23-2013
      08:22 AM
      27

      I have swapped face off deadbeef for deadeeef and it didn't detect it just to point it out


      Sent from my iPhone 5 using Tapatalk

    28. anaria
      01-23-2013
      08:33 AM
      28

      Originally Posted by Sarah1331 View Post
      I have swapped face off deadbeef for deadeeef and it didn't detect it just to point it out
      Thanks for trying this, I may have introduce a bug when cleaning the code I suppose, I'll look at it and fix this.

    29. Sarah1331
      01-23-2013
      08:36 AM
      29

      Am only trying to help I changed to face off deaeeeef and it flagged it
      But deadeeee it doesn't detect either

      Sent from my iPhone 5 using Tapatalk

    30. anaria
      01-23-2013
      09:11 AM
      30

      Code fixed in ReadSection, I don't know why I wanted to have both quartet of one byte to be fail to raise it ans not just one of them...
      My mistake was about the use of a logical and instead of a or.

      Thx again [MENTION=245343]Sarah1331[/MENTION], btw I'll stick it to 90% as you see I like bugs :P

      To all, do not hesitate to push this to the limit, I didn't share it to receive roses but to be sure it will profit to all, and also aas you may know it's always better to have someone else check your on work for validation, at least that's what we do when building test solution in my company.

    31. playerkp420
      01-23-2013
      09:25 AM
      31

      Originally Posted by judges View Post
      Here you go (win32 v0.93):
      http://www.mediafire.com/?b3g679tg5hvzf5t

      -- judges
      I drag n drop the dump and I see in the cmd window it checking everything. But when it is done the window disappears.

      Is that because I am on Windows 7 64bit?

      I did try changing the compatibility in properties, and run as admin.

    32. Sarah1331
      01-23-2013
      09:26 AM
      32

      Originally Posted by playerkp420 View Post
      I drag n drop the dump and I see in the cmd window it checking everything. But when it is done the window disappears.

      Is that because I am on Windows 7 64bit?

      I did try changing the compatibility in properties, and run as admin.
      Run it from cmd line


      Sent from my iPhone 5 using Tapatalk

    33. playerkp420
      01-23-2013
      09:38 AM
      33

      Originally Posted by Sarah1331 View Post
      Run it from cmd line


      Sent from my iPhone 5 using Tapatalk
      I tried that. I must be doing something wrong. The only way I can get it to do anything, is to drag n drop the dump onto the .exe. Then I see it do all the checks, but then the window disappears.

      Any other way I try the window just flashes and disappears.

    34. anaria
      01-23-2013
      09:39 AM
      34

      Guys, you may want to use it only starting version 0.9.4 as previous have a serious lack of byte comparison.

    35. Sarah1331
      01-23-2013
      09:44 AM
      35

      I have

      Check.exe dump.bin
      Pause

      From script obviousley


      Sent from my iPhone 5 using Tapatalk

    36. anaria
      01-23-2013
      10:05 AM
      36

      You may or may not be familiar with gcc, but if you are using windows, I really suggest you to install cygwin, then you can easily compile and execute it, you may even be able in that case to quickly try changes in the code and see what it does.

      Again I did code it on my Mac and only used a PC with cygwin to rework it and test it.

    37. haz367
      01-23-2013
      10:57 AM
      37

      thx for the "open source" source code [MENTION=41726]anaria[/MENTION]...great idea and tool

      also thx to judges for the compiled build, as this code compile noob could not get it compiled even with the ease HOWTO

      error i was getting on "full Cygwin" =

      Code:
      sourcefile.c:1:0: fatal error: can’t open /tmp/cc5IphhP.s for writing: No such file or directory
      compilation terminated
      cygwin not full afterall i guess...if u could explain howto fix this "small"? error that would be appreciated ..thx anyway!

    38. judges
      01-23-2013
      11:12 AM
      38

      Originally Posted by anaria View Post
      Guys, you may want to use it only starting version 0.9.4 as previous have a serious lack of byte comparison.
      Here's the win32 v0.94:
      http://www.mediafire.com/?wbl3wdm1df4cs16

      -- judges
      ************* [ - Post Merged - ] *************
      Originally Posted by playerkp420 View Post
      I tried that. I must be doing something wrong. The only way I can get it to do anything, is to drag n drop the dump onto the .exe. Then I see it do all the checks, but then the window disappears.

      Any other way I try the window just flashes and disappears.
      Then you didn't open a command window. Start -> All Programs -> Accessories -> Command Prompt.

    39. donkey-punch
      01-23-2013
      11:59 AM
      39

      Originally Posted by judges View Post
      Here's the win32 v0.94:
      http://www.mediafire.com/?wbl3wdm1df4cs16

      -- judges
      ************* [ - Post Merged - ] *************


      Then you didn't open a command window. Start -> All Programs -> Accessories -> Command Prompt.
      How can I get this to work with windows 7 64 bit? I opened a cmd prompt dragged and dropped the exe into it and then dragged and dropped the dump into cmd prompt, but it just opens a new cmd prompt for a split second and nothing happens. Ok so I drag and droppped the exe hit return and I get a list of options, excuse my thickness but where do I go from there?

    40. guerrierodipace
      01-23-2013
      12:01 PM
      40

      Originally Posted by donkey-punch View Post
      How can I get this to work with windows 7 64 bit? I opened a cmd prompt dragged and dropped the exe into it and then dragged and dropped the dump into cmd prompt, but it just opens a new cmd prompt for a split second and nothing happens.
      you have to write commands inside the prompt not "drag in"

    41. donkey-punch
      01-23-2013
      12:08 PM
      41

      Originally Posted by guerrierodipace View Post
      you have to write commands inside the prompt not "drag in"
      So what is the .exe for that [MENTION=193105]judges[/MENTION] uploaded?

    42. guerrierodipace
      01-23-2013
      12:17 PM
      42

      Originally Posted by donkey-punch View Post
      So what is the .exe for that [MENTION=193105]judges[/MENTION] uploaded?
      you have to open it via "cmd" command

      from wikipedia:
      Cygwin is a Unix-like environment and command-line interface for Microsoft Windows. Cygwin provides native integration of Windows-based applications, data, and other system resources with applications, software tools, and data of the Unix-like environment. Thus it is possible to launch Windows applications from the Cygwin environment, as well as to use Cygwin tools and applications within the Windows operating context.

      You can't use like win ".exe" you must use "command prompt" in windows

    43. donkey-punch
      01-23-2013
      12:22 PM
      43

      Originally Posted by guerrierodipace View Post
      you have to open it via "cmd" command

      from wikipedia:
      Cygwin is a Unix-like environment and command-line interface for Microsoft Windows. Cygwin provides native integration of Windows-based applications, data, and other system resources with applications, software tools, and data of the Unix-like environment. Thus it is possible to launch Windows applications from the Cygwin environment, as well as to use Cygwin tools and applications within the Windows operating context.

      You can't use like win ".exe" you must use "command prompt" in windows
      Ok so could you set me an example of the commands I need to put in the cmd prompt. I have it opened and when I drag and drop the exe into it and hit enter it brings up a list of options option: -P give percentage of bytes and so on. SO what do I need to do next.

    44. guerrierodipace
      01-23-2013
      12:27 PM
      44

      Originally Posted by donkey-punch View Post
      Ok so could you set me an example of the commands I need to put in the cmd prompt. I have it opened and when I drag and drop the exe into it and hit enter it brings up a list of options option: -P give percentage of bytes and so on. SO what do I need to do next.
      Don't use drag and drop!!!!!

      look my screenshot here
      http://www.ps3hax.net/showpost.php?p...3&postcount=22

      push shift and right button mouse inside the folder (on blank space) and open command prompt here,after then write:
      anaria_norvalidator.exe namedump.bin

    45. haz367
      01-23-2013
      12:30 PM
      45

      damn..i'm a noob..nvm...thx again

    46. donkey-punch
      01-23-2013
      12:37 PM
      46

      Originally Posted by guerrierodipace View Post
      Don't use drag and drop!!!!!

      look my screenshot here
      http://www.ps3hax.net/showpost.php?p...3&postcount=22

      push shift and right button mouse inside the folder (on blank space) and open command prompt here,after then write:
      anaria_norvalidator.exe namedump.bin
      super star Thanks for the help
      ************* [ - Post Merged - ] *************
      Ok I have checked a few bad dumps I had on my laptop with this tool and I have checked good ones and this thing really seems to work. So is this safe to use or is this still to early to confirm safe and should I keep checking dumps manually?

    47. madman158
      01-23-2013
      01:13 PM
      47

      Originally Posted by donkey-punch View Post
      super star Thanks for the help
      ************* [ - Post Merged - ] *************
      Ok I have checked a few bad dumps I had on my laptop with this tool and I have checked good ones and this thing really seems to work. So is this safe to use or is this still to early to confirm safe and should I keep checking dumps manually?
      I will keep checking dumps just to be safe but it does look to be real soild.

    48. 6ar
      01-23-2013
      01:37 PM
      48

      This is great!! You're the best, hope it becomes THE 'official' application to check dumps

    49. afzoo3hax
      01-23-2013
      02:46 PM
      49

      Originally Posted by anaria View Post
      Hi Guys,
      I'm no dev nor a PS3 expert, but
      This alone qualifies you to be an expert. At least as far as these best-efforts verification tools go. It is pretty darn awesome.

      There are probably more little bugs and wiggle room for extra detection and rejection improvement. Even so, it already seems good enough (in quality) as any of the other verification tools that are officially referred to at the PS3DevWiki.

      Here is a list of possible next steps you might consider:

      * Add your tool to "other verification tools" section of "Verifying FLash Dumps" PS3 wiki page. Or indeed as one of the primary tools!

      * If you want to propose the changes, but without it being official just yet. Then you can always add your stuff temporarily into the "Talk" Tab until other Wiki people will formally approve it.

      * You might have no suitable place to permanmently host the download (and your latest source code too!). This is important to have a good permanment link for the official Wiki to point to. BwE might be able to offer your tool a coveted place next to the other verification tools on his website (betterwayelectronics dot com). You should really ask him about that.

      * You can talk to BwE and many of the others who oversee the official PS3DevWiki by logging in to the #ps3downgrade channel. But you must first log in to EFNet irc servers!! (otherwise you will be alone and see nobody on there).

      * Stay logged in to irc and collect for people posting their failed dumps. With a failed dump you can improve upon the rejection capabilities of your tool. For example to detect bad address lines.

      * Command line switches should be added in the --help.

      * Maybe Judges' win32 build are worth to include too. If it doesn't depend on Cygwin. Otherwise write that as a dependency requirement for windows, i suppose ? Or maybe BwE can help you convert this to a proper standalone Windows binary for you. I have no idea.

      And 1 Last request: This is an important issue, so I hope you will consider it.

      * Our Problem: All these verification tools is they are great: but they are not trusted. None of us users know how much of the verification they actually are doing. Where? In that same table we all go to. Help us know exactly how comprehensive your tool is. And build a stronger trust of the automation when using it.

      * Suggestion: Go back to the big table of offsets in PS3DevWiki. And add a new column to the very right of that table. Make the title of the column the same name of your cmd line tool "NORDumpTool".

      * For each row (offset location) in that list, if your automated tool checks for it, then to make a [X] or brief notes to indicate it is supported. We want to clearly see exactly which of the offsets that we usually manually check for - were also automatically checked for. Then we can manually check ourselves any remaining (not supported or newly added) offset.

      And thanks again!

    50. anaria
      01-23-2013
      10:57 PM
      50

      I woke up with good surprises today, thanks everyone for giving this a shot and your positive feedback and comment.

      [MENTION=249897]afzoo3hax[/MENTION], as Papa pig says "I'm a kind of expert at these things", sorry for the reference my son is addicted to Peppa pig and Shaun the sheep :P.

      Well even at work documentation is not my favorite thing but there I have no choice than writing some.

      I'll put feet in the wiki a bit later, what I'll try to do first is a short notice on how to use it as a end user and document what it does or not as per reference of the wiki.

      as for the "--help" I've been lazy in including this I instead check if no arguments are given which lead to this:

      ******************************
      * NOR Dump Tool *
      ******************************

      Open source project aimed to help to validate PS3 NOR dumps
      At the moment (January 2013) the code is probably able
      to give you a validation status of roughly 90%!?
      It's anyway better to do additional checking by your own,
      unless the code of this tool is fully validated by experts!!!

      Usage: ./NORDumpTool NorFile.bin (Options)
      Option: -P : Give percentage of bytes
      Option: -G : Check PS3 Generic information
      Option: -C : Check and display perconsole information
      Option: -F : Check areas filled with '00' or 'FF'
      Option: -S FolderName : Split some NOR section to folder 'FolderName'
      Option: -M Start Size : Run MD5 sum on file from 'Start' for 'Size' long
      Option: -E FileName Start Size : Extract specific NOR Section from 'Start' for 'Size' long
      Option: -D Start Size H/A : Display a specific NOR Section from 'Start' for 'Size' long,
      use H or A for Hexa or ASCII
      By default -P -G -C and -F will be applied if no option is given

      what I'm going to do in short term is to put it here:
      https://github.com/anaria28/NOR-Dump-Tool

      Then I'll write down a more complete readme.

      But ATM I'm still living in China for few more weeks/months, and as you may know ... well Fvcking Internet monitoring...

    51. zecoxao
      01-24-2013
      12:34 AM
      51

      [MENTION=41726]anaria[/MENTION], i can see you have natural C skills. good luck with that work, but, my guess is that your Dump Checker will be wiki's natural auto tool in a few weeks

    52. Sarah1331
      01-24-2013
      02:47 AM
      52

      Originally Posted by donkey-punch View Post
      super star Thanks for the help
      ************* [ - Post Merged - ] *************
      Ok I have checked a few bad dumps I had on my laptop with this tool and I have checked good ones and this thing really seems to work. So is this safe to use or is this still to early to confirm safe and should I keep checking dumps manually?
      Not until its fully tested and all bugs removed !

      But again its great


      Sent from my iPhone 5 using Tapatalk

    53. anaria
      01-24-2013
      06:45 AM
      53

      First post updated.

      Version 0.9.5 is out : Source + bin made with MinGW32.
      Please confirm me if the bin is running properly in the DOS as it's my first try with this, I hope it's ok because I spend few hours downloading and installing MinGW + MSYS.

      Also, please do not use any binary based on a source lower than 0.9.4.

      Cheers!!!

    54. 3absiso
      01-24-2013
      07:44 AM
      54

      Originally Posted by anaria View Post
      I woke up with good surprises today, thanks everyone for giving this a shot and your positive feedback and comment.

      [MENTION=249897]afzoo3hax[/MENTION], as Papa pig says "I'm a kind of expert at these things", sorry for the reference my son is addicted to Peppa pig and Shaun the sheep :P.

      Well even at work documentation is not my favorite thing but there I have no choice than writing some.

      I'll put feet in the wiki a bit later, what I'll try to do first is a short notice on how to use it as a end user and document what it does or not as per reference of the wiki.

      as for the "--help" I've been lazy in including this I instead check if no arguments are given which lead to this:

      ******************************
      * NOR Dump Tool *
      ******************************

      Open source project aimed to help to validate PS3 NOR dumps
      At the moment (January 2013) the code is probably able
      to give you a validation status of roughly 90%!?
      It's anyway better to do additional checking by your own,
      unless the code of this tool is fully validated by experts!!!

      Usage: ./NORDumpTool NorFile.bin (Options)
      Option: -P : Give percentage of bytes
      Option: -G : Check PS3 Generic information
      Option: -C : Check and display perconsole information
      Option: -F : Check areas filled with '00' or 'FF'
      Option: -S FolderName : Split some NOR section to folder 'FolderName'
      Option: -M Start Size : Run MD5 sum on file from 'Start' for 'Size' long
      Option: -E FileName Start Size : Extract specific NOR Section from 'Start' for 'Size' long
      Option: -D Start Size H/A : Display a specific NOR Section from 'Start' for 'Size' long,
      use H or A for Hexa or ASCII
      By default -P -G -C and -F will be applied if no option is given

      what I'm going to do in short term is to put it here:
      https://github.com/anaria28/NOR-Dump-Tool

      Then I'll write down a more complete readme.

      But ATM I'm still living in China for few more weeks/months, and as you may know ... well Fvcking Internet monitoring...
      JUST Awesome Man.
      ************* [ - Post Merged - ] *************
      Originally Posted by anaria View Post
      Hi Guys,

      I'm no dev nor a PS3 expert, but I'd like to try some stuff in there...
      So I've wrote few lines of code in order to help me, and who else want, to validated and analyse a PS3 NOR dump.

      I've read what I could from ps3devwiki as well as on ps3hax in order to gather as much as possible information to help me in writing my lines.

      I'd come to it shortly, but first I'd like to thanks all of you who participate to this scene, I'm not good at naming people and I'm worry to forget some.

      Now my code may not look beautiful and may definitely be improved/enhanced, but as of today it seems useful to me and I hope it can be for others, so please enjoy it as much as you want.

      I have no pretension for it but I'd like from anyone who enjoy it, to keep it as an opensource project, if this code or any part of it is used for another application I ask you to make it public as well, if you like this code and write some changes please share it with everyone.

      I'd also appreciate if anyone want to propose some code and English correction.

      Code:
      Source code is now to be found here : https://github.com/anaria28/NOR-Dump-Tool
      Windows binary (MinGW32) Version 0.9.5 : http://www.sendspace.com/file/8nwxe7
      Attached the required DLL Files

    55. guerrierodipace
      01-24-2013
      08:57 AM
      55

      mirror program 0.9.5+dll fullpack


      http://www.mediafire.com/?r9i4zts9tirwap4

    56. digiprog
      01-24-2013
      10:28 AM
      56

      [MENTION=41726]anaria[/MENTION] man this is a great job
      thank you so much
      and thanks for every one that's trying to make this scene simpler and cleaner
      i feel so thankful for all of those ppl that kicks $ony each day, hope the best for you guys

    57. judges
      01-24-2013
      11:25 AM
      57

      Originally Posted by anaria View Post
      Version 0.9.5 is out : Source + bin made with MinGW32.
      Please confirm me if the bin is running properly in the DOS as it's my first try with this, I hope it's ok because I spend few hours downloading and installing MinGW + MSYS.
      I can give you my windows visual studio 2010 solution. Then you could create the standalone win version yourself (and i dont have to do that ). But if everyone is happy with the mingw version, it's fine too.

      -- judges

    58. nzie
      01-24-2013
      12:04 PM
      58

      great job [MENTION=41726]anaria[/MENTION], thanks!

    59. Sarah1331
      01-24-2013
      01:15 PM
      59

      any chance of if it failes at any part to go to a YOUR DUMP HAS FAILED

      as when testing deadeeef rather than deadbeef it shows error but at end it says

      seems good but evedu............................


      or with option to repair generic
      Then again if generic is bad who knows..

    60. digiprog
      01-24-2013
      01:24 PM
      60

      it would be beautiful to implement it with WxWigets wish i knew how

    61. GregoryRasputin
      01-24-2013
      01:43 PM
      61

      PS3HaX Memberanariahas compiled a code to help... [Read More]

    62. anaria
      01-24-2013
      08:31 PM
      62

      Big days ahead!
      I'll work more on the reliability and robustness of for a time.
      For now I'm adding some more checking in revocation and ros areas for unique bytes, I'll rework the warning messages a bit as well.
      And regarding binaries, I'll check more about MinGW32 about static options, I'm not sure what I did yesterday but I have different behaviour between the Mac and Windows version... But again all of you are welcome to fork it, port it to another language make a GUI, whatever you want, but please keep it open to ensure everyone can fully benefit of your experience, it's for me very frustrating to have a tool doing things on my files without knowing what is under the hood.
      See you then, and thanks again to all of you who are testing/reporting/giving advices ...

    63. anaria
      01-24-2013
      11:12 PM
      63

      Originally Posted by Sarah1331 View Post
      any chance of if it failes at any part to go to a YOUR DUMP HAS FAILED

      as when testing deadeeef rather than deadbeef it shows error but at end it says

      seems good but evedu............................


      or with option to repair generic
      Then again if generic is bad who knows..
      You seem to be the one to torture me :P

      No really I'm grateful for your tests and feedback, appreciate that a lot.

      I'll need you to give me more detail, you may PM me part of the output and what you would expect to see ( I sware I will not give your secrets to others :D)

      I've used the RSOD dump from ps3devwiki and changed the FACE0FF DEADBEEF see what it says to me:
      ******************************
      * NOR Dump Tool *
      ******************************

      Version 0.9.6

      Open source project aimed to help to validate PS3 NOR dumps
      At the moment (January 2013) the code is probably able
      to give you a validation status of roughly 95%!?
      It's anyway better to do additional checking by your own,
      unless the code of this tool is fully validated by experts!!!

      ******************************
      * Statistics *
      ******************************
      Bytes '00' found 4414254 times, 26.31% Good
      Bytes 'FF' found 1766242 times, 10.53% Too High
      Other bytes found 44455 times maximum, 0.26% Good
      ******************************
      * Generic Data *
      ******************************
      Section: Flash Magic Number : read 000000000FACE0FF00000000DEADDEEF ! mismatch pattern '000000000FACE0FF00000000DEADBEEF' !
      Some checking were not successful.
      You may need to check further your dump.
      But fortunately for the Generic section of the NOR it may be fixed.
      ******************************
      * Per Console Data *
      ******************************
      Section: mtldr size and rev : read 00000E8943B6EF4AE20F7400C8809E53
      Section: mtldr size and pcn : read 00000E89Censored :P
      Section: EID0 - IDPS : read Censored :P
      Section: EID0 static : read 0012000B
      Section: EID0 pcn : read Censored :P
      Section: EID3 - ckp_mgt_id : read Censored :P
      Section: EID3 static : read 000100D0
      Section: EID3 pcn : read Censored :P
      Section: EID5 - IDPS : read Censored :P
      Section: EID5 static : read 00120730
      Section: EID5 pcn : read Censored :P
      Section: PS3 MAC Address : read Censored :P
      Section: cISD1 - CID : read Censored :P
      Section: cISD1 - eCID : read Censored :P
      Section: cISD1 - board_id : read Censored :P
      Section: cISD1 - kiban_id : read Censored :P
      Section: cISD1 -0x3F0A4 Data: read 007900790106
      Section: cISD1 -0x3F0B0 Data: read 0002001100020012
      Section: cISD1 - ckp_mgt_id : read Censored :P
      Section: cvtrm - pck/puk : read Censored :P
      Section: HDD information : read TOSHIBA Censored :P
      Section: PS3 Serial Number : read Censored :P
      Section: Bootldr hdr and rev: read 00002EB392AC2C2157A577C84DDFECDB
      Section: Bootldr hdr and pcn: read 00002EBCensored :P
      Section: cvtrm hdr bis : read FFFFFFFF ! mismatch pattern '5654524D' !
      PS3 SKU : CECHLxx(VER-001) minimum FW : 2.45 (item 29 in list)
      Some checking were not successful.
      You may need to check further your dump.
      Be cautious, flashing this one may lead to a brick of your PS3.
      ******************************
      * Area filled with 00 or FF *
      ******************************
      debug: trvk_pkg0Size:'0x000002E0' trvk_pkg0FilledSize:'0x00000D00'
      debug: ros0Size:'0x0053CC88' ros0FilledSize:'0x001C3378'
      Succesfully checked 'flashformat' From '0x00000210' size: '0x000001F0' full of '0xFF'
      Succesfully checked 'asecure_loader' From '0x0000F110' size: '0x0001FEF0' full of '0x00'
      Succesfully checked 'eEID' From '0x00030DD0' size: '0x0000E230' full of '0xFF'
      Succesfully checked 'cISD' From '0x0003F270' size: '0x00000590' full of '0xFF'
      Succesfully checked 'cCSD' From '0x0003F850' size: '0x000007B0' full of '0xFF'
      Succesfully checked 'trvk_prg0' From '0x00040FF0' size: '0x0001F010' full of '0xFF'
      Succesfully checked 'trvk_prg1' From '0x00060FF0' size: '0x0001F010' full of '0xFF'
      Succesfully checked 'trvk_pkg0' From '0x00080FF0' size: '0x0001F010' full of '0xFF'
      Succesfully checked 'trvk_pkg1' From '0x000A0FF0' size: '0x0001F010' full of '0xFF'
      Succesfully checked 'CELL_EXTNOR_AREA' From '0x00F20040' size: '0x000001C0' full of '0x00'
      Succesfully checked 'CELL_EXTNOR_AREA' From '0x00F20240' size: '0x0001FDC0' full of '0x00'
      Succesfully checked 'CELL_EXTNOR_AREA' From '0x00F40030' size: '0x0001FFD0' full of '0x00'
      Succesfully checked 'CELL_EXTNOR_AREA' From '0x00F60060' size: '0x000093A0' full of '0x00'
      Succesfully checked 'CELL_EXTNOR_AREA' From '0x00F69530' size: '0x000006D0' full of '0x00'
      Succesfully checked 'CELL_EXTNOR_AREA' From '0x00F69C00' size: '0x00015400' full of '0xFF'
      Succesfully checked 'CELL_EXTNOR_AREA' From '0x00F80030' size: '0x0001FFD0' full of '0x00'
      Succesfully checked 'CELL_EXTNOR_AREA' From '0x00FA0060' size: '0x000093A0' full of '0x00'
      Succesfully checked 'CELL_EXTNOR_AREA' From '0x00FA9530' size: '0x000006D0' full of '0x00'
      Succesfully checked 'CELL_EXTNOR_AREA' From '0x00FA9C00' size: '0x00015400' full of '0xFF'
      Succesfully checked 'bootldr' From '0x00FEEB70' size: '0x00011490' full of '0xFF'
      Seems good, but you'd eventually like to be carefull!

      I've chosen to display such message "Some checking were not successful.
      You may need to check further your dump.
      But fortunately for the Generic section of the NOR it may be fixed." for any error in the generic part, because it can be fixed wihtout the need to decrypt/encrypt anything as in opposition of the per console area and as they are generic they can be replaced by existing information, of course if you know what you are doing it's better.

      At the end what I understand, is that you'd like to see in the final report one and unique message giving a global PASS/FAIL to this, no?

    64. defyboy
      01-25-2013
      01:47 AM
      64

      Thank you for this most useful tool, I'm glad my painstaking reverse engineering and documentation came in handy for someone.

      I would like to upload this to the wiki's download section if you don't mind.

      Also, just a comment on checking the 0x00 and 0xFF areas, I have a few samples where areas that usually are 0xFF are indeed 0x00. I am not sure what conditions cause this but I assume it's from different boundaries from previous firmwares.

      Basically, areas that are 0xFF will be so because NOR flash memory in it's "erased" state contains all 1's, a write operation is able to change a 1 to a 0 however a block erase operation is required to revert 0's to 1's. Areas that are 0x00 are simply where blank data has been written over an erased block, usually to fill up a boundary.

      As for a final report, it would be nice to give a pass or warnings on what specific parts of flash are incorrect.

    65. Sarah1331
      01-25-2013
      02:11 AM
      65

      I understand the generic section can be fixed am just not too sure how good of an idea it is as your dump should have no errors if you have an error anywhere I'd trash it

      I use a 25xx dump and create errors to test your checker i feel if an error has occurred it should halt and "Your dump is bad" at any point even if it could be repaired

      As most users won't read anything except seems good but you would eventually want to check

      As let's be fair if they have a error in generic data something in the wiring / clip is wrong


      Maybe for a passed dump
      Your dump is valid

      You may still want to do more tests

      But for any fail even the smallest id flag it as junk


      Sent from my iPhone 5 using Tapatalk

    66. Dolnor
      01-25-2013
      03:15 AM
      66

      Thank you, compiled for Mac and finally checked my dump.
      Appears to be ok as per this utility:

      ******************************
      * Generic Data *
      ******************************
      Seems good, but you'd eventually like to be carefull!

    67. Arcidodo
      01-25-2013
      05:30 AM
      67

      C:\Users\administrator\Desktop\anaria_norvalidator 0.9.5>NORDumpTool.exe bkpps3.bin
      ******************************
      * NOR Dump Tool *
      ******************************

      Version 0.9.5

      Open source project aimed to help to validate PS3 NOR dumps
      At the moment (January 2013) the code is probably able
      to give you a validation status of roughly 90%!?
      It's anyway better to do additional checking by your own,
      unless the code of this tool is fully validated by experts!!!

      ******************************
      * Statistics *
      ******************************
      Bytes '00' found 3367078 times, 20.07% Good
      Bytes 'FF' found 1754725 times, 10.46% Good
      Other bytes found 48187 times maximum, 0.29% Good
      Not treating byte reversed dump at the moment.

      C:\Users\administrator\Desktop\anaria_norvalidator 0.9.5>

      and with a broken one i get a lot more information. is this correct?

    68. nzie
      01-25-2013
      05:38 AM
      68

      Originally Posted by Arcidodo View Post
      C:\Users\administrator\Desktop\anaria_norvalidator 0.9.5>NORDumpTool.exe bkpps3.bin
      ******************************
      * NOR Dump Tool *
      ******************************

      Version 0.9.5

      Open source project aimed to help to validate PS3 NOR dumps
      At the moment (January 2013) the code is probably able
      to give you a validation status of roughly 90%!?
      It's anyway better to do additional checking by your own,
      unless the code of this tool is fully validated by experts!!!

      ******************************
      * Statistics *
      ******************************
      Bytes '00' found 3367078 times, 20.07% Good
      Bytes 'FF' found 1754725 times, 10.46% Good
      Other bytes found 48187 times maximum, 0.29% Good
      Not treating byte reversed dump at the moment.

      C:\Users\administrator\Desktop\anaria_norvalidator 0.9.5>

      and with a broken one i get a lot more information. is this correct?
      byte reversed ur dump 1st

    69. anaria
      01-25-2013
      05:59 AM
      69

      Originally Posted by defyboy View Post
      Thank you for this most useful tool, I'm glad my painstaking reverse engineering and documentation came in handy for someone.

      I would like to upload this to the wiki's download section if you don't mind.

      Also, just a comment on checking the 0x00 and 0xFF areas, I have a few samples where areas that usually are 0xFF are indeed 0x00. I am not sure what conditions cause this but I assume it's from different boundaries from previous firmwares.

      Basically, areas that are 0xFF will be so because NOR flash memory in it's "erased" state contains all 1's, a write operation is able to change a 1 to a 0 however a block erase operation is required to revert 0's to 1's. Areas that are 0x00 are simply where blank data has been written over an erased block, usually to fill up a boundary.

      As for a final report, it would be nice to give a pass or warnings on what specific parts of flash are incorrect.
      You're most welcome. But You are the one who deserves the thanks

      Of course, please do upload it it's my pleasure, if this is confirmed to definitely be useful I hope it can profit to all of us.

      You exactly confirm what I was scared of, this seems to be the problem in ros/revocation ...
      This means that I'll have to find a routine to check these areas for both cases, in which case I should check if we have only 00 or only FF but never other value.

      I worked on below draft but it cannot be valid in all cases.
      Code:
      uint8_t CheckFilledData (FILE *FileToRead, uint32_t *PercentCheck){
      	int Cursor=0;
      	int Cursor2=0;
      	uint32_t SizedCheck=0;
      	uint8_t Status=EXIT_SUCCESS;
      	uint8_t Status2=EXIT_SUCCESS;
      	uint32_t bootldrSize;
      	uint32_t bootldrFilledSize;
      	uint32_t metldrSize;
      	uint32_t metldrFilledSize;
      	uint32_t trvk_prg0Size;
      	uint32_t trvk_prg0FilledSize;
          uint32_t trvk_prg1Size;
      	uint32_t trvk_prg1FilledSize;
          uint32_t trvk_pkg0Size;
      	uint32_t trvk_pkg0FilledSize;
          uint32_t trvk_pkg1Size;
      	uint32_t trvk_pkg1FilledSize;
          uint32_t ros0Size;
      	uint32_t ros0FilledSize;
          uint32_t ros1Size;
      	uint32_t ros1FilledSize;
      
          uint32_t LastFileTOC;
          uint32_t LastFileOffset;
          uint32_t LastFileSize;
      
          char *DataRead;
      
      	char *metldrOffset0;
      	char *bootldrOffset0;
      	char *trvk_prg0Offset0;
          char *trvk_prg1Offset0;
          char *trvk_pkg0Offset0;
          char *trvk_pkg1Offset0;
      	//    char *ros0Offset0;
      	//    char *ros1Offset0;
          //uint32_t ros0Offset0;
          //uint32_t ros1Offset0;
      
      	DataRead = malloc(0x10);
      
      	metldrOffset0  = malloc(5);
      	bootldrOffset0  = malloc(5);
      	trvk_prg0Offset0 = malloc(5);
          trvk_prg1Offset0 = malloc(5);
          trvk_pkg0Offset0 = malloc(5);
          trvk_pkg1Offset0 = malloc(5);
      	//    ros0Offset0 = malloc(5);
      	//    ros1Offset0 = malloc(5);
      
      	printf("******************************\n");
      	printf("* Area filled with 00 or FF  *\n");
      	printf("******************************\n");
      
      	GetSection(FileToRead, SectionTOC[asecure_loader].Offset+0x42, 0x02, HexaType, metldrOffset0);	
      	metldrSize = (strtol(metldrOffset0,NULL,16))*0x10+0x40;
      	metldrFilledSize = 0x2F000 - metldrSize - SectionTOC[asecure_loader].Offset - 0x40;
      
      	GetSection(FileToRead, SectionTOC[bootldr].Offset+0x02, 0x02, HexaType, bootldrOffset0);	
      	bootldrSize = (strtol(bootldrOffset0,NULL,16))*0x10+0x40;
      	bootldrFilledSize = 0x1000000 - bootldrSize - SectionTOC[bootldr].Offset;
      
      	GetSection(FileToRead, SectionTOC[trvk_prg0].Offset+0x0E, 0x02, HexaType, trvk_prg0Offset0);
      	trvk_prg0Size = strtol(trvk_prg0Offset0,NULL,16);
      	trvk_prg0FilledSize = 0x040FF0 - trvk_prg0Size - SectionTOC[trvk_prg0].Offset - 0x10;
          printf("debug: trvk_prg0Size:'0x%08X' trvk_prg0FilledSize:'0x%08X' \n",trvk_prg0Size,trvk_prg0FilledSize);
      	
      	GetSection(FileToRead, SectionTOC[trvk_prg1].Offset+0x0E, 0x02, HexaType, trvk_prg1Offset0);
      	trvk_prg1Size = strtol(trvk_prg1Offset0,NULL,16);
      	trvk_prg1FilledSize = 0x060FF0 - trvk_prg1Size - SectionTOC[trvk_prg1].Offset - 0x10;
          printf("debug: trvk_prg1Size:'0x%08X' trvk_prg1FilledSize:'0x%08X' \n",trvk_prg1Size,trvk_prg1FilledSize);
      	
      	GetSection(FileToRead, SectionTOC[trvk_pkg0].Offset+0x0E, 0x02, HexaType, trvk_pkg0Offset0);
      	trvk_pkg0Size = strtol(trvk_pkg0Offset0,NULL,16);
      	trvk_pkg0FilledSize = 0x080FF0 - trvk_pkg0Size - SectionTOC[trvk_pkg0].Offset - 0x10;
          printf("debug: trvk_pkg0Size:'0x%08X' trvk_pkg0FilledSize:'0x%08X' \n",trvk_pkg0Size,trvk_pkg0FilledSize);
      	
      	GetSection(FileToRead, SectionTOC[trvk_pkg1].Offset+0x0E, 0x02, HexaType, trvk_pkg1Offset0);
      	trvk_pkg1Size = strtol(trvk_pkg1Offset0,NULL,16);
      	trvk_pkg1FilledSize = 0x0A0FF0 - trvk_pkg1Size - SectionTOC[trvk_pkg1].Offset - 0x10;
          printf("debug: trvk_pkg1Size:'0x%08X' trvk_pkg1FilledSize:'0x%08X' \n",trvk_pkg1Size,trvk_pkg1FilledSize);
      	//at ros0 offset + 0x14: nb of files, (nb of files) * 0x30 = size of TOC
          GetSection(FileToRead, SectionTOC[ros0].Offset+0x14, 0x04, HexaType, DataRead);
      	LastFileTOC = (strtol(DataRead,NULL,16))*0x30-0x10;
      	//last file position found at (ros0 offset) + (size of TOC) - 0x10
          GetSection(FileToRead, SectionTOC[ros0].Offset+LastFileTOC, 0x08, HexaType, DataRead);
          LastFileOffset = strtol(DataRead,NULL,16);
      	//+ 0x8 for its size.
          GetSection(FileToRead, SectionTOC[ros0].Offset+LastFileTOC+0x08, 0x08, HexaType, DataRead);
          LastFileSize = strtol(DataRead,NULL,16);
          ros0Size = 0x10 + LastFileOffset + LastFileSize;
      	//From end of last file pos + size to next section - 0x10 : full of 00
          //last 0x10 bytes are full of FF !!??
          ros0FilledSize = SectionTOC[ros1].Offset - SectionTOC[ros0].Offset - ros0Size -0x10;
          //printf("debug: ros0Size:'0x%08X' ros0FilledSize:'0x%08X' \n",ros0Size,ros0FilledSize);
      
      	//at ros1 offset + 0x14: nb of files, (nb of files) * 0x30 = size of TOC
          GetSection(FileToRead, SectionTOC[ros1].Offset+0x14, 0x04, HexaType, DataRead);
      	LastFileTOC = (strtol(DataRead,NULL,16))*0x30-0x10;
      	//last file position found at (ros1 offset) + (size of TOC) - 0x10
          GetSection(FileToRead, SectionTOC[ros1].Offset+LastFileTOC, 0x08, HexaType, DataRead);
          LastFileOffset = strtol(DataRead,NULL,16);
      	//+ 0x8 for its size.
          GetSection(FileToRead, SectionTOC[ros1].Offset+LastFileTOC+0x08, 0x08, HexaType, DataRead);
          LastFileSize = strtol(DataRead,NULL,16);
          ros1Size = 0x10 + LastFileOffset + LastFileSize;
      	//From end of last file pos + size to next section - 0x10 : full of 00
          //last 0x10 bytes are full of FF !!??
          ros1FilledSize = SectionTOC[cvtrm].Offset - SectionTOC[ros1].Offset - ros1Size -0x10;
          //printf("debug: ros1Size:'0x%08X' ros1FilledSize:'0x%08X' \n",ros1Size,ros1FilledSize);
      
      	struct Sections SectionFilled[] = {
      		{"flashformat", 0x000210, 0x01F0, HexaType+DisplayFailOnly, 1, "FF"},
      		{"asecure_loader", SectionTOC[asecure_loader].Offset+0x40+metldrSize, metldrFilledSize, HexaType+DisplayFailOnly, 1, "00"},
      		{"eEID", 0x030DD0, 0xE230, HexaType+DisplayFailOnly, 1, "FF"},
      		{"cISD", 0x03F270, 0x0590, HexaType+DisplayFailOnly, 1, "FF"},
      		{"cCSD", 0x03F850, 0x07B0, HexaType+DisplayFailOnly, 1, "FF"},
      
      		// need to investigate size at trvk_prg0 offset + 0x0E
      		// until 40FF0 : 00
      		// from 40FF0 to next section : FF
      
      		{"trvk_prg0", SectionTOC[trvk_prg0].Offset+0x10+trvk_prg0Size, trvk_prg0FilledSize, HexaType+DisplayFailOnly, 1, "00"},
      		{"trvk_prg0", 0x040FF0, 0x01F010, HexaType+DisplayFailOnly, 1, "FF"},
              {"trvk_prg1", SectionTOC[trvk_prg1].Offset+0x10+trvk_prg1Size, trvk_prg1FilledSize, HexaType+DisplayFailOnly, 1, "00"},
              {"trvk_prg1", 0x060FF0, 0x01F010, HexaType+DisplayFailOnly, 1, "FF"},
      		{"trvk_pkg0", SectionTOC[trvk_pkg0].Offset+0x10+trvk_pkg0Size, trvk_pkg0FilledSize, HexaType+DisplayFailOnly, 1, "00"},
              {"trvk_pkg0", 0x080FF0, 0x01F010, HexaType+DisplayFailOnly, 1, "FF"},
      		{"trvk_pkg1", SectionTOC[trvk_pkg1].Offset+0x10+trvk_pkg1Size, trvk_pkg1FilledSize, HexaType+DisplayFailOnly, 1, "00"},
              {"trvk_pkg1", 0x0A0FF0, 0x01F010, HexaType+DisplayFailOnly, 1, "FF"},
      
      		{"ros0", SectionTOC[ros0].Offset + ros0Size, ros0FilledSize, HexaType+DisplayFailOnly, 1, "00"},  // need to investigate
      		{"ros0", SectionTOC[ros0].Offset + ros0Size + ros0FilledSize, 0x10, HexaType+DisplayFailOnly, 1, "FF"},  // need to investigate
      		{"ros1", SectionTOC[ros1].Offset + ros1Size, ros1FilledSize, HexaType+DisplayFailOnly, 1, "00"},  // need to investigate
      		{"ros1", SectionTOC[ros1].Offset + ros1Size + ros1FilledSize, 0x10, HexaType+DisplayFailOnly, 1, "FF"},  // need to investigate
      		//{"cvtrm", 0xECxxxx, 0x0xxxxx, HexaType+DisplayFailOnly, 1, "00"},  // need to investigate
      		{"CELL_EXTNOR_AREA", 0xF20040, 0x01C0, HexaType+DisplayFailOnly, 1, "00"},
      		{"CELL_EXTNOR_AREA", 0xF20240, 0x01FDC0, HexaType+DisplayFailOnly, 1, "00"},
      		{"CELL_EXTNOR_AREA", 0xF40030, 0x01FFD0, HexaType+DisplayFailOnly, 1, "00"},
      		{"CELL_EXTNOR_AREA", 0xF60060, 0x93A0, HexaType+DisplayFailOnly, 1, "00"}, // need to calculate the correct start, size seems to be found at 0xF60000E on 2 bytes ?
      		{"CELL_EXTNOR_AREA", 0xF69530, 0x06D0, HexaType+DisplayFailOnly, 1, "00"},
      		{"CELL_EXTNOR_AREA", 0xF69C00, 0x015400, HexaType+DisplayFailOnly, 1, "FF"},
      		{"CELL_EXTNOR_AREA", 0xF80030, 0x01FFD0, HexaType+DisplayFailOnly, 1, "00"},
      		{"CELL_EXTNOR_AREA", 0xFA0060, 0x93A0, HexaType+DisplayFailOnly, 1, "00"}, // need to calculate the correct start, size seems to be found at 0xFA0000E on 2 bytes ?
      		{"CELL_EXTNOR_AREA", 0xFA9530, 0x06D0, HexaType+DisplayFailOnly, 1, "00"},
      		{"CELL_EXTNOR_AREA", 0xFA9C00, 0x015400, HexaType+DisplayFailOnly, 1, "FF"},
      		{"bootldr", SectionTOC[bootldr].Offset+bootldrSize, bootldrFilledSize, HexaType+DisplayFailOnly, 1, "FF"},
      		{NULL, 0, 0, 0, 0, NULL}
      	};
      
      	while (SectionFilled[Cursor].name!=NULL) {
      		for (Cursor2=0;Cursor2<SectionFilled[Cursor].Size;Cursor2++) {
      			if ((Status2 = ReadSection(SectionFilled[Cursor].name
      				, FileToRead
      				, SectionFilled[Cursor].Offset+Cursor2
      				, 1
      				, SectionFilled[Cursor].DisplayType
      				, SectionFilled[Cursor].Check
      				, SectionFilled[Cursor].Pattern))) {
      					printf ("Error at '0x%08X\n",SectionFilled[Cursor].Offset+Cursor2);
      			}
      			
      		}
      		if (!Status2) {
      			printf ("Succesfully checked '%s' From '0x%08X' size: '0x%08X' full of '0x%s'\n",SectionFilled[Cursor].name,SectionFilled[Cursor].Offset, SectionFilled[Cursor].Size, SectionFilled[Cursor].Pattern);
      		}
      		else {
      			printf ("Some error occured when checking '%s'\n",SectionFilled[Cursor].name);
      		}
      		Cursor++;
      		Status = Status | Status2;
      		Status2 = EXIT_SUCCESS;
      		SizedCheck = SizedCheck + SectionFilled[Cursor].Size;
      	}
      	//printf("debug: SectionTOC[trvk_prg0].Offset:'0x%08X' SectionTOC[trvk_prg0].Offset+0x10+trvk_prg0Size:'0x%08X' trvk_pkg0FilledSize:'0x%08X'\n",SectionTOC[trvk_prg0].Offset,SectionTOC[trvk_prg0].Offset+0x10+trvk_prg0Size,trvk_pkg0FilledSize);
      
      	*PercentCheck = SizedCheck;
      
          free(DataRead);
      	free(metldrOffset0);
      	free(bootldrOffset0);
          free(trvk_prg0Offset0);
          free(trvk_prg1Offset0);
          free(trvk_pkg0Offset0);
          free(trvk_pkg1Offset0);
          //free(ros0Offset0);
          //free(ros1Offset0);
      
      	return Status;
      }
      [MENTION=245343]Sarah1331[/MENTION] I've started to include a global status which should raise a FAIL or PASS after tests are completed.
      At the same time I may include a percentage indicating on how much exactly of the NOR has been analyzed.
      BTW it is for now exactly checking 30.56% of the NOR's bytes.

      [MENTION=159161]Arcidodo[/MENTION] & [MENTION=203592]nzie[/MENTION], Yep I was too lazy to treat both cases, also I was thinking that reversing is done fast and easily with good tools.

      As I mentioned before, I'll do the improvement as far as I can go then document it in accordence to the wiki.
      And then I'll have to do 2 things:
      - port it for NAND
      - evolve it for both bytes order

      and I don't know what else...

    70. digiprog
      01-25-2013
      09:01 AM
      70

      maybe of topic * NAND dump remaping for bad blocks ?
      it's a good idea :P but maybe hard i don't know ..
      but thanks [MENTION=41726]anaria[/MENTION] for the great job u did

    71. Sarah1331
      01-25-2013
      01:23 PM
      71

      Originally Posted by digiprog View Post
      maybe of topic * NAND dump remaping for bad blocks ?
      it's a good idea :P but maybe hard i don't know ..
      but thanks [MENTION=41726]anaria[/MENTION] for the great job u did
      Now there's a real proper idea


      Sent from my iPhone 5 using Tapatalk

    72. 3absiso
      01-25-2013
      01:28 PM
      72

      Originally Posted by digiprog View Post
      maybe of topic * NAND dump remaping for bad blocks ?
      it's a good idea :P but maybe hard i don't know ..
      but thanks [MENTION=41726]anaria[/MENTION] for the great job u did
      Will, I am getting NAND PS3s, but thankfully without Bad Blocks till now.
      i think it is good idea, it can be done but again i do not know how difficult it would be.

    73. baileyscream
      01-25-2013
      06:59 PM
      73

      Originally Posted by defyboy View Post
      Thank you for this most useful tool, I'm glad my painstaking reverse engineering and documentation came in handy for someone.

      I would like to upload this to the wiki's download section if you don't mind.

      Also, just a comment on checking the 0x00 and 0xFF areas, I have a few samples where areas that usually are 0xFF are indeed 0x00. I am not sure what conditions cause this but I assume it's from different boundaries from previous firmwares.

      Basically, areas that are 0xFF will be so because NOR flash memory in it's "erased" state contains all 1's, a write operation is able to change a 1 to a 0 however a block erase operation is required to revert 0's to 1's. Areas that are 0x00 are simply where blank data has been written over an erased block, usually to fill up a boundary.

      As for a final report, it would be nice to give a pass or warnings on what specific parts of flash are incorrect.
      is the download section getting re-opened then?
      otherwise its a bit pointless moving it there if it cannot be accessed.

      ^^^dont take that as a piss take or anything. its just a question

    74. arcadekidflo
      01-26-2013
      09:38 AM
      74

      I'm having an error when running the program , any ideas ? Win 7 , 32bit

    75. anaria
      01-26-2013
      10:03 AM
      75

      Originally Posted by arcadekidflo View Post
      I'm having an error when running the program , any ideas ? Win 7 , 32bit
      Honestly no, is it a binary you've download ? which one?
      or did you compile it? then did you change anything in the code?

    76. arcadekidflo
      01-26-2013
      11:18 AM
      76

      It's version 0.9.5 linked to in the first post

    77. Sarah1331
      01-26-2013
      11:39 AM
      77

      Originally Posted by arcadekidflo View Post
      It's version 0.9.5 linked to in the first post
      You didn't call a dump to open with it


      Sent from my iPhone 5 using Tapatalk

    78. anaria
      01-26-2013
      11:57 AM
      78

      Originally Posted by arcadekidflo View Post
      It's version 0.9.5 linked to in the first post
      I've not used the proper environment to compile it, therefore some dependencies are missing, see Post #55 from [MENTION=207545]3absiso[/MENTION] and #57 from [MENTION=13274]guerrierodipace[/MENTION].

      Eventually DLLs are present but not the correct version?

      Originally Posted by Sarah1331 View Post
      You didn't call a dump to open with it
      Should not be, as in the case of the app having no parameters it displays the help.

    79. arcadekidflo
      01-26-2013
      12:46 PM
      79

      Version 0.9.4 works for me . Whatever you changed between 0.9.4 and 0.9.5 causes it not to work on some systems .

    80. defyboy
      01-26-2013
      06:03 PM
      80

      Originally Posted by baileyscream View Post
      is the download section getting re-opened then?
      otherwise its a bit pointless moving it there if it cannot be accessed.

      ^^^dont take that as a piss take or anything. its just a question
      The download section will not be reopened in its previous incarnation. I will open a new section on the proviso that there is no Sony copyrighted material on there.

    81. jamesst20
      01-26-2013
      07:05 PM
      81

      Would you agree if I port this to Java or C++ (Havn't chose yet) and make a GUI for it ?

    82. digiprog
      01-26-2013
      07:42 PM
      82

      [MENTION=41726]anaria[/MENTION] made it an open source and he welcomed anyone that wants to help building the perfect tool

    83. jamesst20
      01-26-2013
      08:13 PM
      83

      Nice

      So what do you guys suggest?

      C++ with Qt or Java?

      I need a project and when I think about it, I've done nothing for PS3 Scene, times to welcome me a bit more

    84. anaria
      01-26-2013
      09:08 PM
      84

      Originally Posted by arcadekidflo View Post
      Version 0.9.4 works for me . Whatever you changed between 0.9.4 and 0.9.5 causes it not to work on some systems .
      I'm not convince about source code changes impact here, you'd see in the commit corresponding to this change (at https://github.com/anaria28/NOR-Dump...342b1886e85379 ) that it's mainly about memory waste in the structure CheckPerSKU, redefinition of mkdir to match Win32's constraints and the introduction of --help.

      I've tried both under cygwin + MingW32 on a Windows 7 64 bits and did not meet this. But definitely if a bug is present I'd be happy to get rid off.

      As I wrote and wrote my code few times, so I cannot exclude to have missed something, but the code is open and I'm not afraid to get remarks on it as lon as it permit to make it better and make all of us happy.

      Do not read me wrong I really welcome all feedback and not comlaining about any posts.

      Again, I encourage anyone using windows who want to simply install cygwin or MinGW32/MSYS and try to compile it to learn/modify/investiguate whatever you want.

      Below you'll see the output of current draft launched under cygwin but I have a lot more to include.

      Code:
      $ time ./NORDumpToolcygwin.exe Broken.bin
      ******************************
      *       NOR Dump Tool        *
      ******************************
      
      Version 0.9.6
      
      Open source project aimed to help to validate PS3 NOR dumps
      At the moment (January 2013) the code is probably able
      to give you a validation status of roughly 95%!?
      It's anyway better to do additional checking by your own,
      unless the code of this tool is fully validated by experts!!!
      
      ******************************
      *         Statistics         *
      ******************************
      Bytes '00' found 4414253 times, 26.31% Good
      Bytes 'FF' found 1766242 times, 10.53% Too High
      Other bytes found 44455 times maximum, 0.26% Good
      ******************************
      *        Generic Data        *
      ******************************
      Section: Flash Magic Number     : read '000000000FACE0FF00000000DEADDEEF' !   mismatch pattern '000000000FACE0FF00000000DEADBEEF' !
      Some checking were not successful.
      You may need to check further your dump.
      But fortunately for the Generic section of the NOR it may be fixed.
      ******************************
      *      Per Console Data      *
      ******************************
      Section: mtldr size and rev : read hidden
      Section: mtldr size and pcn : read hidden
      Section: EID0  -       IDPS : read hidden
      Section: EID0 static        : read hidden
      Section: EID0 pcn           : read hidden
      Section: EID3  - ckp_mgt_id : read hidden
      Section: EID3 static        : read hidden
      Section: EID3 pcn           : read hidden
      Section: EID5  -       IDPS : read hidden
      Section: EID5 static        : read hidden
      Section: EID5 pcn           : read hidden
      Section: PS3 MAC Address    : read hidden
      Section: cISD1 -        CID : read hidden
      Section: cISD1 -       eCID : read hidden
      Section: cISD1 -   board_id : read hidden
      Section: cISD1 -   kiban_id : read hidden
      Section: cISD1 -0x3F0A4 Data: read hidden
      Section: cISD1 -0x3F0B0 Data: read hidden
      Section: cISD1 - ckp_mgt_id : read hidden
      Section: cvtrm - pck/puk    : read hidden
      Section: HDD information    : read TOSHIBA hidden
      Section: PS3 Serial Number  : read        hidden
      Section: Bootldr hdr and rev: read hidden
      Section: Bootldr hdr and pcn: read hidden
      Section: cvtrm hdr bis      : read 'FFFFFFFF' !   mismatch pattern '5654524D' !
      PS3 SKU : CECHLxx (VER-001) minimum FW : 2.45 (item 29 in list)
      Some checking were not successful.
      You may need to check further your dump.
      Be cautious, flashing this one may lead to a brick of your PS3.
      ******************************
      * Area filled with 00 or FF  *
      ******************************
      Succesfully checked 'flashHeader' From '0x00000000' size: '0x00000010' full of '0x00'
      Succesfully checked 'flashHeader' From '0x00000030' size: '0x000001D0' full of '0x00'
      Succesfully checked 'flashformat' From '0x00000210' size: '0x000001F0' full of '0xFF'
      Succesfully checked 'asecure_loader' From '0x0000F110' size: '0x0001FEF0' full of '0x00'
      Succesfully checked 'eEID' From '0x00030DD0' size: '0x0000E230' full of '0xFF'
      Succesfully checked 'cISD' From '0x0003F270' size: '0x00000590' full of '0xFF'
      Succesfully checked 'cCSD' From '0x0003F850' size: '0x000007B0' full of '0xFF'
      Error at '0x00040400
      Some error occured when checking 'trvk_prg0'
      Succesfully checked 'trvk_prg0' From '0x00040FF0' size: '0x0001F010' full of '00' xor 'FF'
      Succesfully checked 'trvk_prg1' From '0x000602D0' size: '0x00000D20' full of '00' xor 'FF'
      Succesfully checked 'trvk_prg1' From '0x00060FF0' size: '0x0001F010' full of '00' xor 'FF'
      Succesfully checked 'trvk_pkg0' From '0x00080270' size: '0x00000D80' full of '00' xor 'FF'
      Succesfully checked 'trvk_pkg0' From '0x00080FF0' size: '0x0001F010' full of '00' xor 'FF'
      Succesfully checked 'trvk_pkg1' From '0x000A0270' size: '0x00000D80' full of '00' xor 'FF'
      Succesfully checked 'trvk_pkg1' From '0x000A0FF0' size: '0x0001F010' full of '00' xor 'FF'
      Succesfully checked 'ros0' From '0x005FCC88' size: '0x001C3378' full of '00' xor 'FF'
      Succesfully checked 'ros1' From '0x00CFCD1C' size: '0x001C32E4' full of '00' xor 'FF'
      Succesfully checked 'CELL_EXTNOR_AREA' From '0x00F20040' size: '0x000001C0' full of '0x00'
      Succesfully checked 'CELL_EXTNOR_AREA' From '0x00F20240' size: '0x0001FDC0' full of '0x00'
      Succesfully checked 'CELL_EXTNOR_AREA' From '0x00F40030' size: '0x0001FFD0' full of '0x00'
      Succesfully checked 'CELL_EXTNOR_AREA' From '0x00F60060' size: '0x000093A0' full of '0x00'
      Succesfully checked 'CELL_EXTNOR_AREA' From '0x00F69530' size: '0x000006D0' full of '0x00'
      Succesfully checked 'CELL_EXTNOR_AREA' From '0x00F69C00' size: '0x00015400' full of '0xFF'
      Succesfully checked 'CELL_EXTNOR_AREA' From '0x00F80030' size: '0x0001FFD0' full of '0x00'
      Succesfully checked 'CELL_EXTNOR_AREA' From '0x00FA0060' size: '0x000093A0' full of '0x00'
      Succesfully checked 'CELL_EXTNOR_AREA' From '0x00FA9530' size: '0x000006D0' full of '0x00'
      Succesfully checked 'CELL_EXTNOR_AREA' From '0x00FA9C00' size: '0x00015400' full of '0xFF'
      Succesfully checked 'CELL_EXTNOR_AREA' From '0x00FBF000' size: '0x00001000' full of '0xFF'
      Succesfully checked 'bootldr' From '0x00FEEB70' size: '0x00011490' full of '0xFF'
      Some checking were not successful.
      You may need to check further your dump.
      Be cautious there is something fishy in your dump.
      ******************************
      *       Not Empty Area       *
      ******************************
      Succesfully checked 'asecure_loader' From '0x00000840' size: '0x0000E8D0' not empty
      Succesfully checked 'eEID' From '0x0002F090' size: '0x00000AE0' not empty
      Succesfully checked 'eEID' From '0x0002FB90' size: '0x00000710' not empty
      Succesfully checked 'eEID' From '0x000302C0' size: '0x000000E0' not empty
      Succesfully checked 'eEID' From '0x000303A0' size: '0x00000030' not empty
      Succesfully checked 'eEID' From '0x000303F0' size: '0x000009E0' not empty
      Succesfully checked 'CELL_EXTNOR_AREA' From '0x00F20200' size: '0x00000040' not empty
      Succesfully checked 'CELL_EXTNOR_AREA' From '0x00F40000' size: '0x00000030' not empty
      Succesfully checked 'CELL_EXTNOR_AREA' From '0x00F60000' size: '0x00000060' not empty
      Succesfully checked 'CELL_EXTNOR_AREA' From '0x00F69400' size: '0x00000130' not empty
      Succesfully checked 'CELL_EXTNOR_AREA' From '0x00F7F000' size: '0x00001030' not empty
      Succesfully checked 'CELL_EXTNOR_AREA' From '0x00FA0000' size: '0x00000060' not empty
      Succesfully checked 'CELL_EXTNOR_AREA' From '0x00FA9400' size: '0x00000130' not empty
      Succesfully checked 'bootldr' From '0x00FC0040' size: '0x0002EB70' not empty
      Seems good, but you'd eventually like to be carefull!
      
              !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
              ! 31.81% of the file has been checked !
              !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
      
              Error in Statistics
                      -See report above or run again with option -P only
              Error in Generic Data Checking
                      -See report above or run again with option -G only
              Error in Per PS3 Data Checking
                      -See report above or run again with option -C only
              Error in 00/FF filled area
                      -See report above or run again with option -F only
      
              !!!!!!!!!!!!!!!!!!!!!!!!!!!!
              ! YOU FAIL come back later !
              !!!!!!!!!!!!!!!!!!!!!!!!!!!!
      
      real    0m11.531s
      user    0m11.465s
      sys     0m0.030s
      Originally Posted by jamesst20 View Post
      Nice

      So what do you guys suggest?

      C++ with Qt or Java?

      I need a project and when I think about it, I've done nothing for PS3 Scene, times to welcome me a bit more
      It really depends on which makes you more comfortable, but I guess C++ will give you better performances and requires less effort to port it.
      If I may suggest you on the GUI, I think the best to do is to make a tool which calls and parse the current code, see what has been done for scetool, in that case you do not need to rebuild it each time a new delivery is done but only if the interface changes.

    85. jamesst20
      01-27-2013
      12:31 AM
      85

      Originally Posted by anaria View Post
      It really depends on which makes you more comfortable, but I guess C++ will give you better performances and requires less effort to port it.
      If I may suggest you on the GUI, I think the best to do is to make a tool which calls and parse the current code, see what has been done for scetool, in that case you do not need to rebuild it each time a new delivery is done but only if the interface changes.
      That's right! I will try to focus to keep your code the way it is as much as I can. So yeah that way everytime you update your source code, it's gonna be a lot easier to update it

      I had chose to start in C++ so yeah here is a little preview of the first GUI right now. When we will press the validate button, it's gonna change all the layout with the détails of the dump

    86. anaria
      01-27-2013
      02:59 AM
      86

      [MENTION=166855]jamesst20[/MENTION] Good intiative.
      You may want to use github if not done already and fork my project in order to easily follow any update done, you may also look at an0nym0u5 repository as he started to clean, and help to raise some errors as well, his programming skill is definitely higher than mine and its code may become easier to read than my own

    87. guerrierodipace
      01-27-2013
      05:39 AM
      87

      I don't know if I can link here,hope so, in italian forum a guy published som part of flowrebuilder code.Maybe can help to improve also this tool and for adding NAND support

      http://www.consoleopen.com/forum/hac...urce-code.html

    88. anaria
      01-27-2013
      09:32 AM
      88

      Originally Posted by guerrierodipace View Post
      I don't know if I can link here,hope so, in italian forum a guy published som part of flowrebuilder code.Maybe can help to improve also this tool and for adding NAND support

      http://www.consoleopen.com/forum/hac...urce-code.html
      @guerrierdipace, below words are not aimed against you, it's a general way of speaking.

      But unfortunately I doubt that Flow Rebuilder is an open source project, I may be wrong.

      Why do I have this bad feeling when googling "Flow Rebuilder source code" and then I fall in a thread on another forum where guys are looking for this source code as well in order to build a dump validator and this is 2 months old!? Where is this validator?

      I've read the wiki many times, read threads here and googled a lot for a while but then I decided to start working on some coding after xmas vacations, so that's not long coding and that may explain why the code is not complete and still requires improvment, but sure I know it's sometimes hard to decide where to start when you want to get involved in something, anyhow I did it, so I hope those guys from this other forum are far away ahead of what I did and that they are going to share their work as well.

      I sure like to read source and learn from others when they allow it, but I'm not too keen in doing some copy paste randomly especially if it makes the author unhappy.

      I do not say you were wrong doing this, it would be only if you had purely 'stolen' the code, I do not either say that it's better to give an app for free but keeping the source code as a teasure.

      I personnaly do not want to run business on that and hide a code that is basically and only here thanks to guys like defyboy, euss and many others who did not keep their secret, my code is just my interpretation of the wiki.
      Months before E3 sold their stuff I was reading a lot from defyboy and was going to work on the STM32 to build my stuff, but for many bad reasons I stopped very early. But I ensure you that if I had finished it I would have release all for free and 100% open.

      Anyhow, everyone can do what he wants with what he built, it's his right to keep it secret for whatever reason it is, but I have nothing to hide and you are not going to do nasty things to me by copying/transforming my code, moreover if fail0verflow had never shared their own source code many of would have written nothing!

      ATM I'm increasing the "test coverage" (Sh!t I'm using my job's words) and also cleaning, and more important changing back strict address reference to shifts from based addresses, when it would complete I'm sure porting it to NAND would be easy as pie, the only thing I have no idea on how to manage is about NAND bad blocks...

      Note: It's not anger or hate against anyone, it's just my statements and I just finished my dinner with an imported good French red wine, and you know what we say... Froggies are grumpy bad A$$h0les.

    89. jamesst20
      01-27-2013
      02:23 PM
      89

      Originally Posted by anaria View Post
      [MENTION=166855]jamesst20[/MENTION] Good intiative.
      You may want to use github if not done already and fork my project in order to easily follow any update done, you may also look at an0nym0u5 repository as he started to clean, and help to raise some errors as well, his programming skill is definitely higher than mine and its code may become easier to read than my own
      I will also provide you something to byte reverse the dump

      Edit : There you go : http://pastebin.com/QfKc12s3 (I'm not the author, I don't do C but C++). It's poorly written but works
      Edit 2 : Cleaned a bit the code and made it easier to use. Works with C/C++ by now http://pastebin.com/y20HuRAZ but still dirty
      Edit 3 : Rewrote it entirely, didn't like the old dirty way. I don't think it's gonna work in C but yeah should be pretty easy to port it for you : http://pastebin.com/6mjZBSWJ

      Edit 4: On what Platform are you codding for ? I have no such include #include <unistd.h> in Windows

    90. anaria
      01-27-2013
      07:10 PM
      90

      Originally Posted by jamesst20 View Post
      I will also provide you something to byte reverse the dump

      Edit : There you go : http://pastebin.com/QfKc12s3 (I'm not the author, I don't do C but C++). It's poorly written but works
      Edit 2 : Cleaned a bit the code and made it easier to use. Works with C/C++ by now http://pastebin.com/y20HuRAZ but still dirty
      Edit 3 : Rewrote it entirely, didn't like the old dirty way. I don't think it's gonna work in C but yeah should be pretty easy to port it for you : http://pastebin.com/6mjZBSWJ

      Edit 4: On what Platform are you codding for ? I have no such include #include <unistd.h> in Windows
      I've started coding on a Mac but my screen is dead so I'm also using cygwin to debug it on a PC, if I've not coded it too badly it should compile easily on any POSIX like platfrom, you may find short notes in earliest posts.
      The only thing I've done to have it compile and run easily under windows and not only with cygwin was to redefine the mkdir so it can be built with MinGW32.

    91. jamesst20
      01-27-2013
      08:51 PM
      91

      Originally Posted by anaria View Post
      I've started coding on a Mac but my screen is dead so I'm also using cygwin to debug it on a PC, if I've not coded it too badly it should compile easily on any POSIX like platfrom, you may find short notes in earliest posts.
      The only thing I've done to have it compile and run easily under windows nad not only with cygwin was to redefine the mkdir so it can be built with MinGW32.
      Alright Have you seen my last edit for the byte reversing? Should be easy for you (hopefully) to port it.

      Also, i'm trying to avoid modifying all you have done on NorDumpTool.c. The way I would like it is that everytime you update it, I just need to fully copy/paste your new code from github and if needed I will fix my work wheter you have changed something that require some changes. From that said, would you mind making your code in a way that I just need to call some functions to get the Nor informations? Like a getStatistics() that would return an array [0] --> Bytes '00', [1] --> Bytes 'FF' etc.. or do it the way you wish :P, a isByteReversed(), something for the generic data (a boolean?), anything else needed so I only need to create a header file (.h) to use your class

      Thanks you sir and if you disagree, I would understand but keep in mind that would just make everything else simplier after

    92. anaria
      01-27-2013
      09:20 PM
      92

      [MENTION=166855]jamesst20[/MENTION], Yep I saw your post and codes, I'll give it a shot a bit later.

      I'm in pain reading again and again all NOR offsets and checking if each areas are variable/static data or empty (00 or FF), and make sure the code covers as much as possible of the 16777216 bytes of the NOR, for now even if it checks the most important parts, it in fact checks only 31.81% of pure bytes.

      I'll then include a byte swapping routine later but may not include it in the 0.9.6, don't know yet.

      And as for the integration of this code in your own, I will not take time to introduce this changes for now, what I was thinking of, was more about having a GUY which knows each options (-P, -F and so on) execute the binary and then parse the output to eventually fill up some fields in the GUI itself, similar to what have been done with the scetool or some others.

      I know that I've been too lazy to make it more flexible and only wrote one big C file instead of splitting it in headers and C, I'll do that later which will help you if you want to have only one app instead of a gui calling a binary.

      Also if you use GitHub and fork the project you'll get all diff each time I do some changes which will make it definitely easier for you to build your code. Finaly as you can see my app is very basic (read file->do something->printf whatever) and so very simple to adapt those printf into sprintf or anything nicer

    93. zecoxao
      01-27-2013
      09:54 PM
      93

      if i'm not mistaken, the type of byteswap used is byteswap 16 (16 bytes) in that case, naehrwert has published his ps3_hdd POC tool which includes the function in a clean and tidy way of his

      lemme see if i can fetch it.

      https://dl.dropbox.com/u/35197530/types.h

      Code:
      #include "types.h"
      
      /*! Swap u16 endianness. */
      static void _es16_buffer(u8 *buf, u32 length)
      {
      	u16 *ptr = (u16 *)buf;
      	u32 i;
      
      	for(i = 0; i < length/2; i++)
      		ptr[i] = _ES16(ptr[i]);
      }

    94. jamesst20
      01-27-2013
      11:01 PM
      94

      Originally Posted by anaria View Post
      [MENTION=166855]jamesst20[/MENTION], Yep I saw your post and codes, I'll give it a shot a bit later.

      I'm in pain reading again and again all NOR offsets and checking if each areas are variable/static data or empty (00 or FF), and make sure the code covers as much as possible of the 16777216 bytes of the NOR, for now even if it checks the most important parts, it in fact checks only 31.81% of pure bytes.

      I'll then include a byte swapping routine later but may not include it in the 0.9.6, don't know yet.

      And as for the integration of this code in your own, I will not take time to introduce this changes for now, what I was thinking of, was more about having a GUY which knows each options (-P, -F and so on) execute the binary and then parse the output to eventually fill up some fields in the GUI itself, similar to what have been done with the scetool or some others.

      I know that I've been too lazy to make it more flexible and only wrote one big C file instead of splitting it in headers and C, I'll do that later which will help you if you want to have only one app instead of a gui calling a binary.

      Also if you use GitHub and fork the project you'll get all diff each time I do some changes which will make it definitely easier for you to build your code. Finaly as you can see my app is very basic (read file->do something->printf whatever) and so very simple to adapt those printf into sprintf or anything nicer
      Alright for this alternative too That would be a lot easier I guess
      When you say it only checks for 31.81% of pure bytes, you mean that the rest is what is determined by all of your struct which are assumed ?

    95. anaria
      01-28-2013
      04:18 AM
      95

      [MENTION=166855]jamesst20[/MENTION], this current % represent for today what is really read from the dump and checked.
      The missing 68.xx % are all part for which I did not finish to write offsets length and so on, like in ros0/1 you have a lot of data but depending if you get a dump from a PS3 under OFW or CFW all can change, and then you can analyse by many ways like doing MD5 if you have a database for each OFW, but for CFW that's no use, so what I'm doing for this is adding routines to read the each ros TOC so I can analyse each files in it or eventually just their MD5 (bad idea if CFW), at least I need to check if there are data where they're supposed to be, it will then increase the % of bytes covered, it may be quite impossible to reach 100%, but what I'm work on is to be sure to meet as close as possible all what guys gave us on the ps3devwiki.

    96. guerrierodipace
      01-28-2013
      11:20 AM
      96

      Originally Posted by anaria View Post
      @guerrierdipace, below words are not aimed against you, it's a general way of speaking.

      CUT
      I am not sure to understand...english isn't my native language. That code is reversed for my knowledge and published not by me. I just reported here.

    97. anaria
      01-28-2013
      12:34 PM
      97

      Originally Posted by guerrierodipace View Post
      I am not sure to understand...english isn't my native language. That code is reversed for my knowledge and published not by me. I just reported here.
      What I was trying to say is that even if I appreciate your report and I'm happy you did, I'm just worry about seeing a source code if the author did not publish it himself, in other words I do not want to use some code if there is a risk for it to be stolen.

      But reverse Engineering is a different thing, if it's the case it can considered differently.

      And so as I knew I would write a lot of stuff I wanted first to ensure that you do not take it for yourself, I just got upset after finding some thread in that other forum...

    98. Dartban214
      01-28-2013
      01:15 PM
      98

      I know I sound like an ass but I'd try to create a header file or two(Keeps it nice and neat in my opinion). But VERY interesting....

      You have a very good code process(VERY neat). I'm not very good at C but I can understand it with the C++ I know. May have to see if I can convert it later.

    99. anaria
      01-28-2013
      09:55 PM
      99

      Originally Posted by Dartban214 View Post
      I know I sound like an ass but I'd try to create a header file or two(Keeps it nice and neat in my opinion). But VERY interesting....

      You have a very good code process(VERY neat). I'm not very good at C but I can understand it with the C++ I know. May have to see if I can convert it later.
      No pb, I welcome all comments.

      That's quite interesting, I've always been thinking of C being ten times easier to read than C++, even if you may need more lines in C than C++ to do the same thing!?

      I agree that it may be better to split it into .h and .c, but I did not put that on my priority list

    100. Dartban214
      01-28-2013
      10:58 PM
      100

      Originally Posted by anaria View Post
      No pb, I welcome all comments.

      That's quite interesting, I've always been thinking of C being ten times easier to read than C++, even if you may need more lines in C than C++ to do the same thing!?

      I agree that it may be better to split it into .h and .c, but I did not put that on my priority list
      Don't blame you lmao. Better to get the problem done than make it pretty

      C is pretty easy to read just a little more detailed than I like haha. The only major difference in C and C++ is that C++ has some shortcuts.

      The C++ I know is what? Data Structures. I haven't really gotten to the algorithms yet though. We have done a couple but not many. I'm actually a computer Science student at a university. So I'm still not the 100% best at programming I just have a hint or two

    101. time-machine
      01-29-2013
      08:16 PM
      101

      Anaria you make a good job here. I'm very happy to see how this scene grow up and make things easier for people like me.
      Did this version is running on win 7 64 bit? When will be released a GUI version?
      do we have to check the dumbs again with HxD hexedit?
      Do you think that a brick secure version is possible?
      Thanx for this genius app from a guy who dont know about validate dumps with hex

      Keep up the good work
      Greets from germany

    102. anaria
      01-30-2013
      01:54 AM
      102

      Thanks, yes I'd like it to become a tool on which we can rely to confirm that a dump is safe or not, at the current stage it cannot be, even when I think I'm finish with the code implentation we will need experts to give a green light to it, I do not want to have any PS3's blood on my hands...
      In other words, as long as you do not see anything on ps3devwiki mentionning it to be safe I sugeest you to be carefull

      Today status is:
      - Run on almost any platform if you compile it with the correct options and environment (see post #16)
      - I'm not working on a GUI, I really and definitely think that is faster and easier to use this kind of tool in a shell but it's only what I think myself, but [MENTION=166855]jamesst20[/MENTION] as started to work on a GUI, maybe some others did but I'm not aware of.
      - It's still better to use a binary editor to check the file anyway.
      - Yes I hope to be able to see one day a brick safe tool.
      - The draft version for a future 0.9.6 release has now reached a 97.29% of bytes covered, but I'm not ready to release it before next week, let say it will be a Chinese year release :D

      Sorry I'm not very fast and I only have few hours per day to code.

    103. TizzyT
      01-30-2013
      02:45 AM
      103

      Originally Posted by anaria View Post
      Thanks, yes I'd like it to become a tool on which we can rely to confirm that a dump is safe or not, at the current stage it cannot be, even when I think I'm finish with the code implentation we will need experts to give a green light to it, I do not want to have any PS3's blood on my hands...
      In other words, as long as you do not see anything on ps3devwiki mentionning it to be safe I sugeest you to be carefull

      Today status is:
      - Run on almost any platform if you compile it with the correct options and environment (see post #16)
      - I'm not working on a GUI, I really and definitely think that is faster and easier to use this kind of tool in a shell but it's only what I think myself, but [MENTION=166855]jamesst20[/MENTION] as started to work on a GUI, maybe some others did but I'm not aware of.
      - It's still better to use a binary editor to check the file anyway.
      - Yes I hope to be able to see one day a brick safe tool.
      - The draft version for a future 0.9.6 release has now reached a 97.29% of bytes covered, but I'm not ready to release it before next week, let say it will be a Chinese year release :D

      Sorry I'm not very fast and I only have few hours per day to code.
      Chinese New Years for the win. sad I don't get money anymore. Used to get money from my Chinese and Vietnamese sides.

      Back on topic. I personally think that a pretty looking GUI for any program these days is needed for a couple reasons. One it doesn't overwhelm people who aren't used to CLI. Another reason is presentation is much more organized and flexible, and not limited to text on the screen. I'm not saying create a GUI version, I'm just throwing my opinion . BTW great work .

    104. jamesst20
      01-30-2013
      02:51 AM
      104

      Originally Posted by TizzyT View Post
      Chinese New Years for the win. sad I don't get money anymore. Used to get money from my Chinese and Vietnamese sides.

      Back on topic. I personally think that a pretty looking GUI for any program these days is needed for a couple reasons. One it doesn't overwhelm people who aren't used to CLI. Another reason is presentation is much more organized and flexible, and not limited to text on the screen. I'm not saying create a GUI version, I'm just throwing my opinion . BTW great work .
      Same but I don't know why, I hate to make console program ^^

    105. deaphroat
      01-31-2013
      04:15 PM
      105

      Hello

      Thank anaria for your sharing.

      I have used it. I have write a little soft for testing Nor Dump and 2 3 nother feature.



      But i can't show you because PS3Hax refused link or picture ^^

      gueux-forum.net/index.php?/topic/271077-ps3dumpvalidating/

    106. anaria
      01-31-2013
      10:30 PM
      106

      Originally Posted by deaphroat View Post
      Hello

      Thank anaria for your sharing.

      I have used it. I have write a little soft for testing Nor Dump and 2 3 nother feature.



      But i can't show you because PS3Hax refused link or picture ^^

      gueux-forum.net/index.php?/topic/271077-ps3dumpvalidating/
      You're welcome.
      Well done for yours.

      So you are the one to use my thread to promote your tool :P (je blague pas de probleme)(just kidding no problem)

      Here is a snapshot:


      Please see my PM.

    107. jamesst20
      02-01-2013
      12:33 AM
      107

      Originally Posted by deaphroat View Post
      Hello

      Thank anaria for your sharing.

      I have used it. I have write a little soft for testing Nor Dump and 2 3 nother feature.



      But i can't show you because PS3Hax refused link or picture ^^

      gueux-forum.net/index.php?/topic/271077-ps3dumpvalidating/
      Looks like you were faster then me it what programming language is it ?

      Btw, how do you calculate the others byte percentage? 100% - FF% - 00% doesn't equal less the 0.5. Is it an average of the quantity of each single different bytes?

      Envoyé depuis mon Nexus 7 avec Tapatalk

    108. anaria
      02-01-2013
      12:53 AM
      108

      Originally Posted by jamesst20 View Post
      Btw, how do you calculate the others byte percentage? 100% - FF% - 00% doesn't equal less the 0.5. Is it an average of the quantity of each single different bytes?
      I'm not sure how [MENTION=201511]deaphroat[/MENTION] does it but this how I do (thanks again to an0nym0u5 in helping cleaning a bit the mess):
      Code:
      uint8_t Statistics(FILE *FileToRead) {
          // Calculate some statistics on bytes percentages
          uint8_t Status=EXIT_SUCCESS;
          uint32_t Cursor;
          uint16_t Counter;
          uint32_t CountOthers=0;
          uint32_t CountByte[0xFF+1];
      
          char msg_low[]  = "Too Low";
          char msg_high[] = "Too High";
          char msg_good[] = "Good";
          
          char *Status00=NULL;
          char *StatusFF=NULL;
          char *StatusOthers=NULL;
      
          printf("******************************\n");
          printf("*         Statistics         *\n");
          printf("******************************\n");
      
          fseek(FileToRead, 0, SEEK_SET);
      
          // reset all counters
          for (Counter=0x00;Counter<0xFF+1;Counter++)
              CountByte[Counter]=0;
      
          //count how many of each bytes are found
          for (Cursor=0;Cursor<NOR_FILE_SIZE;Cursor++)
              CountByte[fgetc(FileToRead)]+=1;
      
          // for all bytes value from 0x01 to 0xFE check which one has the highest count
          for (Counter=0x01;Counter<0xFF;Counter++) {
              if (CountOthers<CountByte[Counter])
                  CountOthers=CountByte[Counter];
          }
      
          if (CountByte[0x00]<MIN00) {
              Status00=msg_low;
              Status = EXIT_FAILURE;
          }
          else if (CountByte[0x00]>MAX00) {
              Status00=msg_high;
              Status = EXIT_FAILURE;
          }
          else
              Status00=msg_good;
      
          if (CountByte[0xFF]<MINFF) {
              StatusFF=msg_low;
              Status = EXIT_FAILURE;
          }
          else if (CountByte[0xFF]>MAXFF) {
              StatusFF=msg_high;
              Status = EXIT_FAILURE;
          }
          else
              StatusFF=msg_good;
      
          if (CountOthers>MAXOTHERS) {
              StatusOthers=msg_high;
              Status = EXIT_FAILURE;
          }
          else
              StatusOthers=msg_good;
      
          printf ("Bytes '00' found %d times, %2.2f%% %s\n"         , CountByte[0x00], (double)CountByte[0x00]*100/(double)NOR_FILE_SIZE, Status00);
          printf ("Bytes 'FF' found %d times, %2.2f%% %s\n"         , CountByte[0xFF], (double)CountByte[0xFF]*100/(double)NOR_FILE_SIZE, StatusFF);
          printf ("Other bytes found %d times maximum, %2.2f%% %s\n", CountOthers    , (double)CountOthers    *100/(double)NOR_FILE_SIZE, StatusOthers);
          
          return Status;
      }

    109. deaphroat
      02-01-2013
      05:04 PM
      109

      @ anaria

      you share, i use it ^^

      I don't want became famous, just learn and sharing. And now i adapte your code for Nand. And my own, check if the dump is reversed.... ^^

      And for the percentage, in first i have my function but yours is more faster...

      i filled up a array of int with every byte, and make 256 count on it ^^.... It's not good with a nand 256 Mb ^^

      So i take yours....Thank again.

      @ jamesst20

      I have begin 3, 4 month ago... I have just use the anaria code for 2 new test...

      It's in C++/ Qt, compatible with Mac and Linux and I give source code for respect the Qt License.



      Source code : ps3.gx-mod.com/images/news/softwares/nandTool/SourcePs3DumpValidating.rar

    110. anaria
      02-02-2013
      01:28 AM
      110

      [MENTION=201511]deaphroat[/MENTION], again well done for your work.

      I'vwe wasted my time a bit, but I’m still working on this, I’ve made some fix/improvement which hopefully should be useful.

      For instance the MD5 function was only valid if you were running it on a full size file but gave wrong sum for a part of a file, I’ve asked google how I should because I know nothing about hashing and so on.

      At the moment I trying to fill up a list of MD5 You can eventually help…

      You may have a look here I’ve uploaded some code I use to help me in my dev, especially for all the MD5 stuff, it’s basically some copy/paste from my 0.9.6 main draft with few debugging things in it, if you want to use a MD5 routine from my code use the one from this one not from the older 0.9.5 of the NOR Dump Tool code as this old one is wrong.

      In PS3Data.h you'll see that I've started to build a MD5 db based on the wiki plus some comments where I tried to get sum for each FW files, you may complete it and share your findings :D


      PS: !!! I forgot to mention that in this dev-debugging code there no control for the NOR itself so do not use it as it is to confirm anything. it is just for debugging and dev, IT'S NOT VALIDATING ANYTHING !!!

    111. BwE
      02-02-2013
      02:34 AM
      111

      Originally Posted by anaria View Post
      [MENTION=201511]deaphroat[/MENTION], again well done for your work.

      I'vwe wasted my time a bit, but I’m still working on this, I’ve made some fix/improvement which hopefully should be useful.

      For instance the MD5 function was only valid if you were running it on a full size file but gave wrong sum for a part of a file, I’ve asked google how I should because I know nothing about hashing and so on.

      At the moment I trying to fill up a list of MD5 You can eventually help…

      You may have a look here I’ve uploaded some code I use to help me in my dev, especially for all the MD5 stuff, it’s basically some copy/paste from my 0.9.6 main draft with few debugging things in it, if you want to use a MD5 routine from my code use the one from this one not from the older 0.9.5 of the NOR Dump Tool code as this old one is wrong.

      In PS3Data.h you'll see that I've started to build a MD5 db based on the wiki plus some comments where I tried to get sum for each FW files, you may complete it and share your findings :D


      PS: !!! I forgot to mention that in this dev-debugging code there no control for the NOR itself so do not use it as it is to confirm anything. it is just for debugging and dev, IT'S NOT VALIDATING ANYTHING !!!
      no credit to me or anybody else? gee thanks.

      if you want md5 validation one of my public apps does that.

    112. deaphroat
      02-02-2013
      05:25 AM
      112

      Thank BwE and thanks all ^^

      For comparing dump, i don't use md5, i make a array of bit and make == on it ^^

      But it's nod a good idea for Nand... Maybe i will use a md5...

      I have already use Aes et Sha1 for ps3 with hashlib et Rijndael .

    113. zecoxao
      02-02-2013
      05:42 AM
      113

      md5 is a simple digest function. it takes a message of length x and turns it into a hash of length 16 bytes (i think it's 16, someone correct me here if it's not please).

      if you change one single byte of a message, the md5 will not match the previous one.

    114. deaphroat
      02-02-2013
      07:19 AM
      114

      With Qt it's easy for make a md5, so my 2 function for test if dump are egal it's done (Nor and Nand).

    115. anaria
      02-02-2013
      07:27 AM
      115

      Originally Posted by BwE View Post
      no credit to me or anybody else? gee thanks.

      if you want md5 validation one of my public apps does that.
      Meiihh, sorry for not naming you directly, I did it indirectly in my first post
      "
      I’d come to it shortly, but first I’d like to thanks all of you who participate to this scene, I’m not good at naming people and I’m worry to forget some.
      "
      Yep if I had found your source code you can be sure I would have not scratch my heads in writing my lines, but now I think my draft is good enough for this part, I just need to make a proper do of MD5 for each possible files in the core os.

    116. BwE
      02-02-2013
      07:41 AM
      116

      Originally Posted by anaria View Post
      Meiihh, sorry for not naming you directly, I did it indirectly in my first post
      "
      I’d come to it shortly, but first I’d like to thanks all of you who participate to this scene, I’m not good at naming people and I’m worry to forget some.
      "
      Yep if I had found your source code you can be sure I would have not scratch my heads in writing my lines, but now I think my draft is good enough for this part, I just need to make a proper do of MD5 for each possible files in the core os.
      Why do that when I have it? Only thing I am missing is the tvrk_pkg MD5's from within each revision's dump (not .pup).

      As they change once installed. (As told by me on the wiki).

    117. anaria
      02-02-2013
      09:23 AM
      117

      [MENTION=202826]zecoxao[/MENTION] & @deaphrot, what I did wrong was to use [SPOILER]void MD5SumFileSection(char* SectionText, FILE *FileToRead, uint32_t Position, uint32_t Size) {
      unsigned char MD5Sum[MD5_DIGEST_LENGTH];
      int ByteSize;
      uint32_t Cursor;
      int DataWidth = 0x10;
      unsigned char DataValue[DataWidth];
      MD5_CTX mdContext;

      MD5_Init (&mdContext);

      fseek(FileToRead, Position, SEEK_SET);
      for (Cursor=0;Cursor<NOR_FILE_SIZE;Cursor+=DataWidth) {
      ByteSize = fread (DataValue, 1, DataWidth, FileToRead);
      MD5_Update (&mdContext, DataValue, ByteSize);
      }

      MD5_Final (MD5Sum,&mdContext);

      printf ("%s", SectionText);
      for(Cursor = 0; Cursor < MD5_DIGEST_LENGTH; Cursor++)
      printf("%02x", MD5Sum[Cursor]);

      printf("\n");
      }[/SPOILER]
      instead of
      [SPOILER]void MD5SumFileSection( FILE *FileToRead, uint32_t Position, uint32_t Size, uint8_t *Sum) {
      char *Buffer = malloc(Size+1);
      fseek (FileToRead, Position, SEEK_SET);
      fread (Buffer, Size, 1, FileToRead);
      MD5 (Buffer, Size, Sum);
      }

      void printMD5 (uint8_t MD5result[MD5_DIGEST_LENGTH]) {
      uint8_t Cursor;
      for(Cursor = 0; Cursor < MD5_DIGEST_LENGTH; Cursor++)
      printf("%02x",MD5result[Cursor]);
      }[/SPOILER]

      the result given with the first routine is valid only if you perform it on a full size but not on some part it, which is ok with the second one.


      Originally Posted by BwE View Post
      Why do that when I have it? Only thing I am missing is the tvrk_pkg MD5's from within each revision's dump (not .pup).

      As they change once installed. (As told by me on the wiki).
      Sure I've read your comments here

      But I 've found no reference of any MD5 for each files of each version of the CORE OS.

      But wath you are doing is not what I'm loking for for exmaple you check the MD5 of both ros0 and ros1, what I want to do is to check each files from both of them for example (probably not correct i still need to establish a correct db:
      Code:
      {"emer_init.self" , "3.55","ca9bbc99c645173e1f98aa66c47a4500"},
      {"isoldr" , "3.55","5c7436bffc7e8d0a8e210bd0ca83cdf2"},
      {"manu_info_spu_module.self" , "3.55","09a1d434dbd7197e7c3af8a7c28ca38b"},
      {"aim_spu_module.self" ,"3.55", "b0ad88ee637311ae5196f1b11d43be0a"},
      {"appldr" , "9d670b662be696c8460449b7efdd803e"},
      {"mc_iso_spu_module.self" ,"3.55", "b5f54d9a11d1eae71f35b5907c6b9d3a"},
      {"creserved_0" ,"3.55", "c1dc055ef0d6082580ac066e2b0a3c38"},
      {"sb_iso_spu_module.self" ,"3.55", "811329ecdb677181b9fc5cc3564d9047"},
      {"sv_iso_spu_module.self" ,"3.55", "ff6753184d15f45508c5330a6144a4d9"},
      {"sc_iso.self" ,"3.55", "bc6b000f5ac5db94daee47720d0bfe6b"},
      {"spu_pkg_rvk_verifier.self" ,"3.55", "e9ae2a62b4cc31750d4e56c7d5ffdd6f"},
      {"lv2ldr" ,"3.55", "a597aa3d8101674856eef83ac1d0ef28"},
      {"eurus_fw.bin" ,"3.55", "413b0666736e87929b346ca2b712284d"},
      {"lv1.self" ,"3.55", "65a3eee4c48716674cb1c29609b5f54d"},
      {"spp_verifier.self" ,"3.55", "5ffb33a6cecb99081e54a0e36e3c61af"},
      {"lv2_kernel.self" ,"3.55", "3b15c14770d654fef9987e2517616d89"},
      {"spu_token_processor.self" ,"3.55", "b39e13fbd6b07f65616a0355ef5cb262"},
      {"me_iso_spu_module.self" ,"3.55", "d7edca0ed3749f11ee34f0f532cf5aa7"},
      {"lv1ldr" ,"3.55", "3da12e2cb472eb8193309b663d7c913a"},
      {"hdd_copy.self" , "90d1c8a45f6fee52219e1b14ff8c9765"},
      {"spu_utoken_processor.self" ,"3.55", "b76b7244b19032a9518787d9ec827f3c"},
      {"default.spp" ,"3.55", "22ababcfc027f892ad2cf4e1c9fd925c"},
      {"sdk_version" ,"3.55", "0e5a2e8a68fe09481d728c227dc5a165"},
      {"lv0" ,"3.55", "368f2d290c00f3cb3c5a5c8cfe584534"},

    118. jamesst20
      02-03-2013
      01:54 AM
      118

      Originally Posted by deaphroat View Post
      @ anaria

      you share, i use it ^^

      I don't want became famous, just learn and sharing. And now i adapte your code for Nand. And my own, check if the dump is reversed.... ^^

      And for the percentage, in first i have my function but yours is more faster...

      i filled up a array of int with every byte, and make 256 count on it ^^.... It's not good with a nand 256 Mb ^^

      So i take yours....Thank again.

      @ jamesst20

      I have begin 3, 4 month ago... I have just use the anaria code for 2 new test...

      It's in C++/ Qt, compatible with Mac and Linux and I give source code for respect the Qt License.



      Source code : ps3.gx-mod.com/images/news/softwares/nandTool/SourcePs3DumpValidating.rar
      It's funny because I've played for fun with Java and it calculates faster then both of you :P I would say around 0.5 sec to calculate statistics :P

      Envoyé depuis mon Nexus 7 avec Tapatalk

    119. anaria
      02-03-2013
      04:57 AM
      119

      Originally Posted by jamesst20 View Post
      It's funny because I've played for fun with Java and it calculates faster then both of you :P I would say around 0.5 sec to calculate statistics :P

      Envoyé depuis mon Nexus 7 avec Tapatalk
      How come Java being faster than C/C++ :P
      I suppose it's because your file is in buffer RAM and not a direct read from the disk !?

    120. BwE
      02-03-2013
      05:38 AM
      120

      Originally Posted by anaria View Post

      But I 've found no reference of any MD5 for each files of each version of the CORE OS.
      Checking the entire CoreOS would encompass what you're doing, so why do it?

    121. anaria
      02-03-2013
      08:22 AM
      121

      Originally Posted by BwE View Post
      Checking the entire CoreOS would encompass what you're doing, so why do it?
      And why not
      So I have and want to do this for many good or bad reasons:
      1st I have no db of any MD5 for each ros version, so if I want to do the same way as you I need to establish a list of MD5 for this.
      2nd doing MD5 for the whole ROS is valid only if done on a known format like OFW and eventually few CFW, but it can exist many cases where the ros is 100% valid but its MD5 unkown because it's a MFW which as never been calculated.
      3rd doing it on each files of the ros can be as problematic as fopr the ros itself in case of a CFW/MFW, but at least there are only few files which are impacted when not having a OFW, also I don't want to solely give a report of the ros being fail if I can more over give to the user whihc file in the ros is problematic or unkown.
      4th maybe a better way would be to use your method for known MD5 then go in the detail if there's a mismatch.

    122. jamesst20
      02-03-2013
      11:22 AM
      122

      Originally Posted by anaria View Post
      How come Java being faster than C/C++ :P
      I suppose it's because your file is in buffer RAM and not a direct read from the disk !?
      I don't know how exactly it's done but I use BufferedInputStream Last time I used another object for looking the bytes and it would take 17 sec lol

    123. BwE
      02-04-2013
      02:16 AM
      123

      Originally Posted by anaria View Post
      4th maybe a better way would be to use your method for known MD5 then go in the detail if there's a mismatch.
      Euss harassed me about this. However, my list does cover some CFW and debug, but not everything.

      But realistically, you validate when you downgrade, you downgrade when you're on OFW.

    124. anaria
      02-04-2013
      03:33 AM
      124

      Originally Posted by BwE View Post
      Euss harassed me about this. However, my list does cover some CFW and debug, but not everything.

      But realistically, you validate when you downgrade, you downgrade when you're on OFW.
      And I think he is right

      Honestly, folks will do what they want with this code when finish, but if I can finalise it correctly, it will not be aimed to only permit anyone to just validate a NOR for future downgrade, at least I will not use it for that.
      For example you can see at the moment that it displays some per console information and generic things from the dump.

      As for the validation itself, again if I can have a list of MD5 per ros I would be more than happy to include this in the code and then yes I would be able to implement this 4th point.

      EDIT: 0.9.6 is on github
      Still a lot is to be done but even if it's not really clean or out of bug, I've uploaded what I've done recenty.
      new stuff have been introduced:
      Added percentage indicator
      Added global status
      Added Fixed of some part of the code & cleaning from an0nym0u5
      Changed MD5 function, the first one was only valid if done on a full file not on inner sections.
      Added report for trvk and ros' files MD5
      move part of the definitons in PS3Data.h

      As per the MD5 things, it's not complete but it should help to start going further on this.
      You will also note that I've increased the status to 97%, but it does not mean that a dump can be considered good if you are green...
      I cannot garanty that it really covers critical parts.
      For example when you check some per console zone, the code can tell if the header or the size of a region is correct,then it checks if the region is full of data, BUT IT DOES NOT CHECK that the data in it are valide.

      Be aware that you cannot rely 100% on this to validate your dump, remember it is aimed to help you validate but it's not able to do all the job for you.

      The most important is that you can learn from this code if you want and make your own tools for what ever purpose if you like some part of this.

      You will also notice that I have added some lines of MD5 sums in PS3Data.h for example:
      [SPOILER] // FW 3.41 Files
      {"creserved_0" , "3.41" , "09A1D434DBD7197E7C3AF8A7C28CA38B"},
      {"sdk_version" , "3.41" , "7A2595AECEDE95C9338C710CF8DBBA99"},
      {"lv1ldr" , "3.41" , "C7BF42F12A3EE32E694EB9FE46E1DB51"},
      {"lv2ldr" , "3.41" , "C8777688BF00F42E6C73DE336E10A25A"},
      {"isoldr" , "3.41" , "54490521B6965BD0E95D93928C1B4056"},
      {"appldr" , "3.41" , "CF08E9B3421E4B1AA665717C555ED670"},
      {"spu_pkg_rvk_verifier.self" , "3.41" , "964A28D0F0E6AA3423A4FF1DA4598C21"},
      {"spu_token_processor.self" , "3.41" , "7D71C9C119989446766442E8127BA0CB"},
      {"spu_utoken_processor.self" , "3.41" , "92913EAD973B8AA24BFF4F38FE66927E"},
      {"sc_iso.self" , "3.41" , "7E9938FF024C809DE3CC950B61E01F6B"},
      {"aim_spu_module.self" , "3.41" , "8C3DF66C7BCFCB291221884EE46CB351"},
      {"spp_verifier.self" , "3.41" , "A60518DDF46B904E7F8B4ADC96F60342"},
      {"mc_iso_spu_module.self" , "3.41" , "07DDFE013304965BF7EB63D9AC5BD0C2"},
      {"me_iso_spu_module.self" , "3.41" , "A237F20A0491149B1C0890B0FCE8E0CE"},
      {"sv_iso_spu_module.self" , "3.41" , "7D20C0D5F382EEB31E6B830EA1ED4B8F"},
      {"sb_iso_spu_module.self" , "3.41" , "5A219A19D772E26F41A86BCB8449093E"},
      {"default.spp" , "3.41" , "4E78EA91BE73C71012930C4144B50CC1"},
      {"lv1.self" , "3.41" , "200A67508DF9C6B2F47A7A93FF2160CA"},
      {"lv0" , "3.41" , "C0C71AE21AEC6A6116464B8A7DF4D534"},
      {"lv2_kernel.self" , "3.41" , "9DBFDC3B026622E83398554B783E1CEC"},
      {"eurus_fw.bin" , "3.41" , "B5F54D9A11D1EAE71F35B5907C6B9D3A"},
      {"emer_init.self" , "3.41" , "D5F6040AAB1B27E29461E847CFFDA08E"},
      {"hdd_copy.self" , "3.41" , "F1142B43BCD76C0EC9A0CBF1BE8BE407"},[/SPOILER]

      This list is of course not complete but it's not validated either, so I would appreciate anyone willing to report any additional sums, and prompt me those which are wrong.

      You can use both codes from my second repo here to generate your own list of sums.

      Unfortunately for those who want to know more about what it does and what is the exact soucre of information, I did not fill in enough comments...

    125. anaria
      02-07-2013
      06:45 PM
      125

      As you can see I'm good turtle on this... :P

      I've started this coding, but it does not mean I have to be the only one to work on it, I made it open for that, and I do not consider it as my property, so if there are any smart folks willing to put line to that it would be benefic to all.

      I'm just asking to anyone who does so to not copy/paste some part of it to put in their stuff and then lock it in a close source to be sure noone else can build a software similar to his!

      Remember, we have brainies on the wiki who finds thing then share it so every one can find something useful.

      So, for this code you for sure can notice that the 0.9.6 enhance the coverage but it's not doing everything perfectly.

      I'm trying to follow smoe advices from [MENTION=131344]euss[/MENTION] and [MENTION=193105]judges[/MENTION], but unfortunately my brain has a lack of space

      most of the method used in the code are very simple: read some bytes cehck if they are at 00 or FF when supposed to, check if they are not when it's supposed to be data, compare some string/bytes, and do some MD5 sums...

      One very good suggestion I got from euss is, instead of doing some hash checking as it require to build a huge list of possibilities, to decrypt the RVK and other selfs in the ros to check them, which definitely makes more sens as you do not need to build a list of thousands of MD5 and also it permit to check something which is not known to date.
      I don't think I'm writing this the correct way...

      And because I'm a stupid ass regarding encryption, if someone has an idea on how to emplement such thing I hope he would like to put few lines of code to this, of course it does not mean I'm not reading the wiki and example for fail0verflow to try to do it myself, but it may takes weeks for me and seconds for others.

      Finally, I've wrote earlier that this code is aimed to help validating a dump, so yes it can help, but I guess I made a mistake writing it this way.
      Please do not consider ti as a full validator or something, it will you for that, but you can use it for something else it's your choice, and that's reason I just named it "NOR Dump Tool", anyway it''s open you do as you like

      Cheers, time to go buy my new MAC :P

    126. deaphroat
      02-19-2013
      02:43 PM
      126

      Hello

      Thanks BWE ^^

      ps3.gx-mod.com/modules/news/article.php?storyid=3197

    127. 3absiso
      02-19-2013
      04:54 PM
      127

      Originally Posted by deaphroat View Post
      Hello

      Thanks BWE ^^

      ps3.gx-mod.com/modules/news/article.php?storyid=3197
      [MENTION=114939]BwE[/MENTION]
      your validator is leaked, by you or what? your main page still says coming soon

      [MENTION=177623]baileyscream[/MENTION] , [MENTION=204330]MJ999[/MENTION] , [MENTION=245343]Sarah1331[/MENTION] , [MENTION=211522]playerkp420[/MENTION]
      check this tool it is very good

    128. playerkp420
      02-19-2013
      05:05 PM
      128

      Originally Posted by 3absiso View Post
      [MENTION=114939]BwE[/MENTION]
      your validator is leaked, by you or what? your main page still says coming soon

      [MENTION=177623]baileyscream[/MENTION] , [MENTION=204330]MJ999[/MENTION] , [MENTION=245343]Sarah1331[/MENTION] , [MENTION=211522]playerkp420[/MENTION]
      check this tool it is very good
      I have been trying it out. It is very nice. It checks a lot. Really cool.

      It has been on the wiki, for a few days now.

    129. baileyscream
      02-19-2013
      05:26 PM
      129

      Originally Posted by 3absiso View Post
      [MENTION=114939]BwE[/MENTION]
      your validator is leaked, by you or what? your main page still says coming soon

      [MENTION=177623]baileyscream[/MENTION] , [MENTION=204330]MJ999[/MENTION] , [MENTION=245343]Sarah1331[/MENTION] , [MENTION=211522]playerkp420[/MENTION]
      check this tool it is very good
      yea i saw it on the wiki a few days ago
      i havent been able to get it to run i assume its something on my laptop stopping it from running
      i get the annoying music though!!! why put that on it i dont know. i would have thought BwE would be the sort to hate that type of thing. ah well each to there own.

      btw i'm on win7 32bit (finaly got rid of the stupid win8)

    130. jamesst20
      02-19-2013
      05:27 PM
      130

      Nice Actually what does it all test?

      Sent from my Nexus 7 using Tapatalk 2

    131. 3absiso
      02-19-2013
      05:38 PM
      131

      Originally Posted by baileyscream View Post
      yea i saw it on the wiki a few days ago
      i havent been able to get it to run i assume its something on my laptop stopping it from running
      i get the annoying music though!!! why put that on it i dont know. i would have thought BwE would be the sort to hate that type of thing. ah well each to there own.

      btw i'm on win7 32bit (finaly got rid of the stupid win8)
      the music is annoying,
      reminds me with cracking programs software. good have a mute button for it

    132. BwE
      02-19-2013
      11:15 PM
      132

      Originally Posted by baileyscream View Post
      i get the annoying music though!!! why put that on it i dont know. i would have thought BwE would be the sort to hate that type of thing. ah well each to there own.
      Originally Posted by 3absiso View Post
      the music is annoying,
      reminds me with cracking programs software. good have a mute button for it
      I love it

    133. MJ999
      02-20-2013
      12:25 AM
      133

      Originally Posted by 3absiso View Post
      [MENTION=114939]BwE[/MENTION]
      your validator is leaked, by you or what? your main page still says coming soon

      [MENTION=177623]baileyscream[/MENTION] , [MENTION=204330]MJ999[/MENTION] , [MENTION=245343]Sarah1331[/MENTION] , [MENTION=211522]playerkp420[/MENTION]
      check this tool it is very good
      Can you give me the link ?

    134. BwE
      02-20-2013
      04:16 AM
      134

      Originally Posted by MJ999 View Post
      Can you give me the link ?
      its on the wiki/my website

    135. baileyscream
      02-20-2013
      05:32 AM
      135

      Originally Posted by BwE View Post
      I love it
      lol try starting it up when your pc has its volume set on full.
      i nearly had a heart attack lol..

      how about making a version without or atleast with the sound off at default then have a tick box if you want it on.

      lol funny that this is all i can find wrong with it

    136. BwE
      02-20-2013
      05:38 AM
      136

      Originally Posted by baileyscream View Post
      lol try starting it up when your pc has its volume set on full.
      i nearly had a heart attack lol..

      how about making a version without or atleast with the sound off at default then have a tick box if you want it on.

      lol funny that this is all i can find wrong with it
      theres a mute button (by request of the beta testers) thats the best ill do

      take it or leave it

    137. haz367
      02-20-2013
      06:28 AM
      137

      to bad my sound is *** keygen music? love it...great work and thx for the share...and a new sig there...ur on a roll huh

    138. anaria
      02-20-2013
      09:11 AM
      138

      Glad to see that the thread speaking about opensource tool and open weeks ago is not dead...

    139. BwE
      02-20-2013
      10:08 PM
      139

      i find it funny not many people know about my validator, which is the plan.

      i originally put it just on the wiki for the sole purpose for people who actually have the brain to go look for it there deserve to use it

    140. anaria
      02-20-2013
      10:52 PM
      140

      Originally Posted by BwE View Post
      i find it funny not many people know about my validator, which is the plan.
      I guess it's your Australijan sense of humour

      Originally Posted by BwE View Post
      i originally put it just on the wiki for the sole purpose for people who actually have the brain to go look for it there deserve to use it
      People deserve what they are looking for, sure.

      Good job anyway.

      Few comments:
      7MB+ is a bit big for such tool, any plan to split it in 2 parts like exe + data, so those who do not want to use it for patching, or eventually for later, can download only what they'd like?

      On the job's PC (Win7 x64) the memory usage climbs to about 300MB !? But I did not try on my old small config (Win2k 256MB) so maybe it allocates dynamically??

      Only WIN32? or ....?

    141. BwE
      02-20-2013
      11:18 PM
      141

      Originally Posted by anaria View Post
      7MB+ is a bit big for such tool, any plan to split it in 2 parts like exe + data, so those who do not want to use it for patching, or eventually for later, can download only what they'd like?

      On the job's PC (Win7 x64) the memory usage climbs to about 300MB !? But I did not try on my old small config (Win2k 256MB) so maybe it allocates dynamically??

      Only WIN32? or ....?
      7mb is good considering it patches regardless of byte orientation.
      Best I can do is make a version that doesn't patch which would make it 1-1.5mb.

      300mb isn't much (plus I have never checked or noticed an issue).

      Its for both 32 and 64bit.

    142. anaria
      02-21-2013
      01:16 AM
      142

      Originally Posted by BwE View Post
      300mb isn't much (plus I have never checked or noticed an issue).
      hmmm well it is, what if one do want to use an old crappy PIII with 256MB on a dirty workbench and not a brand new quadcore 6GB?

      Originally Posted by BwE View Post
      Its for both 32 and 64bit.
      ok so it should run on any OSX and Linux... ah no you meant WinStuff 32/64 :P

      Anyway it doesn't matter as you already plan to release the source sooner or later anyone would then port it to what he wants

      By the way, do you plan to change the input parameter option as all your tools just read the first toto.bin file they find, it would be better if this can be overrode, no?

    143. BwE
      02-21-2013
      01:19 AM
      143

      Originally Posted by anaria View Post
      hmmm well it is, what if one do want to use an old crappy PIII with 256MB on a dirty workbench and not a brand new quadcore 6GB?


      ok so it should run on any OSX and Linux... ah no you meant WinStuff 32/64 :P

      Anyway it doesn't matter as you already plan to release the source sooner or later anyone would then port it to what he wants

      By the way, do you plan to change the input parameter option as all your tools just read the first toto.bin file they find, it would be better if this can be overrode, no?
      Windows yes.

      Input parameter option? All of my tools read the first .bin? No?

      My NOR Validator will read automatically if there is only ONE .bin in the directory. If there is more than one it will prompt you to select which one.

    144. playerkp420
      02-21-2013
      01:42 AM
      144

      What is 7MB, in this world of TB? LOL

      You gonna add 3 musketeers patches, or you don't believe in that?

    145. BwE
      02-21-2013
      02:20 AM
      145

      Originally Posted by playerkp420 View Post
      What is 7MB, in this world of TB? LOL

      You gonna add 3 musketeers patches, or you don't believe in that?
      I didn't due to keeping it @ 7mb and its lack of popularity

    146. anaria
      02-21-2013
      07:50 AM
      146

      Originally Posted by BwE View Post
      I didn't due to keeping it @ 7mb and its lack of popularity
      Well it's just me and my nostalgia of this great multitask OS running from a floppy disk less than 880KB, it actually doesn't matter.

      Also the fact that when we maintain soft for production we have to face some manager who do not want to invest a penny in new PCs if you can upgrade the test software running on an old PIII with 128 MB of RAM and a 20GB HDD, so you get the habit to build 100KB when you can instead Megsss.

      Regarding a command line options it clearly seems that we do not have the same view, in my opinion the way it's done in your case is exactly what you would expect from a GUI, do things for the user then propose some options, but for a pure command line you need to allow the user to enter parameters like -i <input file> -o <output file> -whatyouwant option blabla so it can easily be used in a script/batch, otherwise it's a GUI with no window in a shell no more, but that's only my view of a command line and I do not force anyone to think the same
      Sure we have different view as you are running a business and I'm just an employee. :P

    147. BwE
      02-21-2013
      08:19 AM
      147

      Originally Posted by anaria View Post
      Regarding a command line options it clearly seems that we do not have the same view, in my opinion the way it's done in your case is exactly what you would expect from a GUI, do things for the user then propose some options, but for a pure command line you need to allow the user to enter parameters like -i <input file> -o <output file> -whatyouwant option blabla so it can easily be used in a script/batch, otherwise it's a GUI with no window in a shell no more, but that's only my view of a command line and I do not force anyone to think the same
      Sure we have different view as you are running a business and I'm just an employee. :P
      The original was all in the console. But I felt it to be tiresome to scroll up to read the result and I also felt the desire to be able to jump to sections of the flash.

      I was going to also have a hex editor style gui also, but I could not be bothered to do it.

      As for actual command line inputs, that is just pointless. You are after one thing, the flash to be validated. Anything else is just boring. Output name/location etc? Who cares, it does it for you - everything is simple because only simple people will use my program.

      If you want something done your way you would have validated it yourself.

    148. anaria
      02-21-2013
      09:03 AM
      148

      Originally Posted by BwE View Post
      The original was all in the console. But I felt it to be tiresome to scroll up to read the result and I also felt the desire to be able to jump to sections of the flash.

      I was going to also have a hex editor style gui also, but I could not be bothered to do it.

      As for actual command line inputs, that is just pointless. You are after one thing, the flash to be validated. Anything else is just boring. Output name/location etc? Who cares, it does it for you - everything is simple because only simple people will use my program.

      If you want something done your way you would have validated it yourself.

      Yeah well that sounds fair.
      Sorry I'm a complex bad ass :D

      Nop if I want something done my way I'll ask my code to do it for me as I'm a lazy fat ass and I have no brain able to do the job

    149. BwE
      02-21-2013
      10:30 AM
      149

      Originally Posted by anaria View Post
      Yeah well that sounds fair.
      Sorry I'm a complex bad ass :D

      Nop if I want something done my way I'll ask my code to do it for me as I'm a lazy fat ass and I have no brain able to do the job
      rightio

    150. anaria
      02-21-2013
      11:18 AM
      150

      Originally Posted by BwE View Post
      rightio
      Sorry I've only tried to learn proper British English at school, do not know how I should read you:
      http://www.urbandictionary.com/define.php?term=rightio
      ?

    151. arcadekidflo
      02-21-2013
      06:14 PM
      151

      Is version 0.9.6 available ?

    152. anaria
      02-21-2013
      07:33 PM
      152

      Originally Posted by arcadekidflo View Post
      Is version 0.9.6 available ?
      I've not compiled it but the source code is available for 2 weeks: http://www.ps3hax.net/showpost.php?p...&postcount=125

    153. anaria
      03-02-2013
      06:15 AM
      153

      Hi Guys, draft for release 0.9.7 is available on github.

      I did few validation but surely not enough, if you are interested in testing this draft you can sync the last commit or download the binaries I've compiled.

      I've just compiled 2 binaries for windows one runs under cygwin and the other one should run under a standard dos (at least it did in my VM of XP).

      Interestingly for the same code it seems to be much faster with cygwin...

      I've also started to publish some documentation on the wiki, this can be found here

    154. 3absiso
      03-02-2013
      06:22 AM
      154

      Originally Posted by anaria View Post
      Hi Guys, draft for release 0.9.7 is available on github.

      I did few validation but surely not enough, if you are interested in testing this draft you can sync the last commit or download the binaries I've compiled.

      I've just compiled 2 binaries for windows one runs under cygwin and the other one should run under a standard dos (at least it did in my VM of XP).

      Interestingly for the same code it seems to be much faster with cygwin...

      I've also started to publish some documentation on the wiki, this can be found here
      Glad to an update for your tool

      Edit:
      Attached Full DLL + 0.97 Version
      http://www.4shared.com/rar/Am18djoE/...l-pre_097.html
      i see a lot of improvement on it
      Thanx

    155. anaria
      03-02-2013
      08:56 AM
      155

      [MENTION=207545]3absiso[/MENTION]

      I'm trying to add improvement and bugs fix as much as I can
      Also I'm now using Code::Blocks as it make things easier when trying to compile for Win32, but I want to keep it multi-platform.

      Also you've uploaded the binary with DLLs for cygwin does it mean that you were not able to run the second binary found in the NORDumpTool-pre0.9.7-WIN32.7z archive without adding DLLs to it?

      EDIT: I forgot to mention that the WIN32 version should only require install of openssl (Win32openssl binary)