Router Boxes being Analyzed
Home Page

Opened Boxes

My Robots


Visitors : 12862


Analyzing Router Platforms

My goal here was inspired by seeing the many sites implementing public source/firmwares for assorted routers (besides other devices). I had wanted to add my own ideas and modifications into my own router, such as for I/O Devices, and possibly use it for a developement platform. After studying some of these, I found it a major task (needing to compile the whole router system firmware under Linux -varying about 100MB).

My goal is to develop a simple Assembler and C-Compiler for these Platforms. So that developers can compile patches to quickly embed into their own Platforms using Serial-Port or JTAG.



DIR-615 Router



Chips found :
* Cpu : Marvel 88F5180NB1-C500 - ARM926E 500MHz
* Ram : a2s28d40ctp (x2) - DDR SDRAM (2x)16Mx8
* Flash Ls28f640 - Flash 16Mx8/x16
* LAN : 88e6061-Laj1
* WAN : PCI / 88w8361p-bem1

* Pad 'CON4' : 'CON4' 20pin ICE ?
* Pad 'CON5' : 'CON5:1VCC,TX,RX,GND' 4pin - UART:115200,8N1

DIR-615 Router Web Page
Marvel 88F5180 Processor Web Page



UART Serial Boot Loader Output :




Writing Programs/Code :

You can write ASM Command Programs by using the 'echo' command as shown at the end of the Box above.
echo "test" > /tmp/test
But, you need to use \Escape codes to enter the code as Hex.
echo "\0101 prints an A"
You also need to embed your code into an EXE Code Block. I had dissassembled a number of Programs from /bin to find a standard format. (I believe the first 512 bytes were Header Data and not Code) Seems complicated, but I was successful. I just need to dig up my notes and find it.

To Disassemble some EXE files, use the hexdump command :
/usr/bin/hexdump /bin/rm
-or-
/usr/bin/hexdump /bin/ps
Can somebody dump a bunch of these files onto the UART -and post them or email them to me ?

Common OpCodes :

EA FF FF FE B (-2)
0A .. .. .. BEQ _
1A .. .. .. BNE _
8A .. .. .. BHI _
EB .. .. .. BL _
E2 80 30 nn ADD R3,R0,#nn
E2 03 30 nn AND R3,R3,#nn
E2 4B B0 01 SUB R11,R11,#1
E3 50 00 nn CMP R0,#nn
E3 53 00 nn CMP R3,#nn
E3 A0 B0 DB LDR R11,#DB
E5 95 30 00 LDR R3,[R5]
E5 D4 00 nn LDRB R0,[R4,#nn]
E5 87 00 00 STR R0,[R7]
E1 50 00 01 MOV R0,R0,#1
E2 80 00 04 ADD R0,R0,#4
E3 83 30 0C ORR R3,R3,#0C
E1 A0 00 00 NOP
E1 A0 F0 0E RET


Also check for updates here: OpenWrt DIR615


Send an email

Links to Related Sites :

- Links -


Notes
Note: All of the notes here are taken from unfinished Analysis, and may include Inaccuracies or Errors or missing info. No resposibility or guarantee are assumed from Info on this page nor from the author.

Help would be appreciated
Looking for Binaries such as Bootloader for analysis. Also looking for specs for CPUs in these these Routers, including OpCodes for the Assembler. The Assemblers and C-Compilers are hoped to be posted here in the future.

Any Questions:



http://jlc.iwarp.com/home.html