Dune:Firmware

From Lundman Wiki
Jump to: navigation, search

Dune Firmware

The dune firmware has an unknown header of 0x100 bytes, consisting of string identifier and several large integers. Most likely file-size, offsets and checksums.

00000000  44 55 4e 45 20 46 49 52  4d 57 41 52 45 20 46 49  |DUNE FIRMWARE FI|
00000010  4c 45 20 5b 62 64 70 72  69 6d 65 5f 73 6f 6e 79  |LE [bdprime_sony|
00000020  5d 00 66 6f 72 6d 61 74  31 00 30 38 31 32 32 36  |].format1.081226|
00000030  5f 31 32 31 36 00 33 33  35 35 34 39 34 34 00 32  |_1216.33554944.2|
00000040  33 37 37 31 32 35 37 33  00 37 31 33 38 33 30 35  |37712573.7138305|
00000050  34 00 34 38 36 38 37 36  37 37 00 36 39 38 35 39  |4.48687677.69859|
00000060  35 37 38 00 35 39 37 33  32 35 31 00 31 32 34 34  |578.5973251.1244|
00000070  31 34 37 38 00 37 36 36  31 34 31 38 30 00 32 30  |1478.76614180.20|
00000080  35 31 37 35 39 37 00 35  35 36 34 36 30 39 38 00  |517597.55646098.|
00000090  34 30 34 38 34 33 37 39  00 37 37 30 37 36 38 34  |40484379.7707684|
000000a0  32 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |2...............|
000000b0  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|

Inside the large file we have several parts. In no particular order, vmlinux.gz, which has the rootfs cpio attached, the main cramfs file-system as well as the usual romfs for SMP ucodes.

-rw-r--r--  1 lundman lundman   44943512 2009-01-20 17:24 cramfs.bin
-rw-r--r--  1 lundman lundman    7669760 2009-01-20 16:35 kernelfs.cpio
-rw-r--r--  1 lundman lundman   18073752 2009-01-20 19:32 rom1fs3.bin
-rw-r--r--  1 lundman lundman   49522546 2009-01-23 16:02 vmlinux.gz

The file-sizes are not correct, I just dd from the right point until the end.

TODO: Check for uh.. checksum and algorithm.

TODO: Look at the .dsf (Dune service file) which can arbitrarily execute files. Here is a .dsf header:

00000000  44 55 4e 45 20 53 45 52  56 49 43 45 20 46 49 4c  |DUNE SERVICE FIL|
00000010  45 00 38 36 36 37 33 36  38 37 00 35 34 31 33 39  |E.86673687.54139|
00000020  32 36 32 00 35 33 31 35  31 34 38 37 00 35 30 38  |262.53151487.508|
00000030  35 32 35 33 38 00 33 38  31 35 35 33 31 30 00 39  |52538.38155310.9|
00000040  30 34 37 34 36 38 00 34  36 39 33 35 31 30 34 00  |047468.46935104.|
00000050  36 34 36 35 38 34 36 31  00 36 34 30 30 37 32 30  |64658461.6400720|
00000060  38 00 39 33 35 35 36 37  33 37 00 38 38 34 37 38  |8.93556737.88478|
00000070  35 35 36 00 36 31 39 35  39 31 35 00 36 37 37 38  |556.6195915.6778|
00000080  38 33 00 39 38 35 31 30  37 31 00 38 32 35 38 39  |83.9851071.82589|
00000090  38 38 34 00 38 31 39 35  33 32 34 35 00 00 00 00  |884.81953245....|
000000a0  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
*
00000100  1d 25 7a e4 27 ff e9 8c  58 0a 8b 18 70 bb f2 87  |.%z.'...X...p...|