Difference between revisions of "DS-Xtreme OpenSource Firmware Project"
Line 15: | Line 15: | ||
Please remember that this wiki is updated and maintained by YOU - '''Please help out where you can!''' | Please remember that this wiki is updated and maintained by YOU - '''Please help out where you can!''' | ||
− | <div><span style="color:# | + | <div><span style="color:#f4ae08;">Donate your dead DS-X cartridges to this project PM reveng @gbatemp</span></div> |
|} | |} | ||
|- | |- | ||
Line 46: | Line 46: | ||
'''11)''' Using the knowledge gained make some schematics of the DS-X cartridge. | '''11)''' Using the knowledge gained make some schematics of the DS-X cartridge. | ||
− | This order was chosen because the firmware "'''update.bin'''" is one large zipped?, binary file. So first we have to decompile the updater application to understand how its zipped and what parts make up the USB, FPGA and NDS launcher.... | + | This order was chosen because the firmware "'''[[:image:V112_update.bin| update.bin]]'''" is one large zipped?, binary file. So first we have to decompile the updater application to understand how its zipped and what parts make up the USB, FPGA and NDS launcher.... |
|} | |} | ||
Line 58: | Line 58: | ||
Initial viewing of the PC Updater tool yields the following information. | Initial viewing of the PC Updater tool yields the following information. | ||
− | 1) The updater was coded with Borland Delphi development enviroment in C/C++. | + | 1) The updater was coded with [http://www.codegear.com/products/delphi/win32 Borland Delphi] development enviroment in C/C++. |
− | 2) The updater contains ZLIB compression librarys (probabily for the firmware). | + | 2) The updater contains [http://zlib.net/ ZLIB compression librarys] (probabily for the firmware). |
− | 3) The updater contains Altera Jam FPGA communication librarys (maybe for the JTAG connector on the circuit board). | + | 3) The updater contains [https://www.altera.com/support/software/download/programming/jam/jam-index.html Altera Jam] FPGA communication librarys (maybe for the JTAG connector on the circuit board). |
4) The updater contains Mozilla/3.0 (compatible; Indy Library). | 4) The updater contains Mozilla/3.0 (compatible; Indy Library). | ||
5) The Updater contains Cypress USB communication librarys. | 5) The Updater contains Cypress USB communication librarys. | ||
− | On running the updater, it uses windows sockets api to download '''update.txt''' and '''update.bin''' from the DSX server. The mozilla api is probabily the wrapper to call the windows sockets api, for platform independancy. Delphi also has wrappers for the application windows. The applications resources can easily be pulled out with XN Resource editor. I've also noticed on some of the disassembly that the updater looks like it can take command line arguments? | + | On running the updater, it uses windows sockets api to download '''[[:image:V112_update.txt| update.txt]]''' and '''[[:image:V112_update.bin| update.bin]]''' from the DSX server. The mozilla api is probabily the wrapper to call the windows sockets api, for platform independancy. Delphi also has wrappers for the application windows. The applications resources can easily be pulled out with XN Resource editor. I've also noticed on some of the disassembly that the updater looks like it can take command line arguments? |
Line 73: | Line 73: | ||
Firmware and other files moved to a seperate wiki page, and descriptions added for the files. | Firmware and other files moved to a seperate wiki page, and descriptions added for the files. | ||
− | Link to the initial hardware explorations added. | + | Link to the initial hardware explorations and files added. |
Some terminology corrected | Some terminology corrected | ||
Line 79: | Line 79: | ||
ToDo: | ToDo: | ||
− | I'm currently trying out a few disassemblers on the .exe to see which gives me the best results. | + | I'm currently trying out a few disassemblers on the[[:image:V112_UpdaterTool.rar| PC updater application .exe]] to see which gives me the best results. |
The hardware investigations need putting on the wiki on a seperate page. | The hardware investigations need putting on the wiki on a seperate page. | ||
Get hold of the NDS launcher that was aquired with NO$GB and the wifi homebrew. This could be usefull to find out where in- | Get hold of the NDS launcher that was aquired with NO$GB and the wifi homebrew. This could be usefull to find out where in- |
Revision as of 19:51, 7 January 2008
| |||
|
Work In Progress Log
5th January 2008:
Initial viewing of the PC Updater tool yields the following information.
1) The updater was coded with Borland Delphi development enviroment in C/C++. 2) The updater contains ZLIB compression librarys (probabily for the firmware). 3) The updater contains Altera Jam FPGA communication librarys (maybe for the JTAG connector on the circuit board). 4) The updater contains Mozilla/3.0 (compatible; Indy Library). 5) The Updater contains Cypress USB communication librarys.
On running the updater, it uses windows sockets api to download update.txt and update.bin from the DSX server. The mozilla api is probabily the wrapper to call the windows sockets api, for platform independancy. Delphi also has wrappers for the application windows. The applications resources can easily be pulled out with XN Resource editor. I've also noticed on some of the disassembly that the updater looks like it can take command line arguments?
7th January 2008:
main page redesigned for clarity.
Firmware and other files moved to a seperate wiki page, and descriptions added for the files.
Link to the initial hardware explorations and files added.
Some terminology corrected
ToDo:
I'm currently trying out a few disassemblers on the PC updater application .exe to see which gives me the best results. The hardware investigations need putting on the wiki on a seperate page. Get hold of the NDS launcher that was aquired with NO$GB and the wifi homebrew. This could be usefull to find out where in- - the update.bin the NDS launcher resides. This log need moving to the discussion page.
All in all not bad going for a weak lameass like me :)