Changes

m
no edit summary
Line 1: Line 1:  +
'''If you have photos or frames in the */100NIN01 folder, can you send me your pit.bin file please at <ludolacost_gm@il_com> ?'''
 +
 +
 
== File Header ==
 
== File Header ==
  8 : Magic
+
{| class="wikitable" border="1"
  2 : Block-Size
+
|-
  2 : UNKNOWN : 1
+
!  OFFSET (bytes)
  2 : UNKNOWN : 1
+
!  SIZE (bytes)
  2 : # of Photos
+
!  DESCRIPTION (common value)
  2 : UNKNOWN : Always zeroes
+
|-
  2 : # of Frames
+
|  0x00
  2 : CRC16 of whole file
+
|  4
  2 : Offset to entries
+
| Magic ("0TIP")
It is known that if the offset to entries is pushed passed the end of the file, the system freezes, it is not known wether this is exploitable or not.
+
|-
 +
|  0x04
 +
|  4
 +
|  UNKNOWN ("_1""00" LE, maybe number of first folder or max number of photos per folder)
 +
|-
 +
|  0x08
 +
| 2
 +
|  # slots in the file (3000)
 +
|-
 +
|  0x0A
 +
| 2
 +
|  Folder counter; hundreds' digit (?)
 +
|-
 +
|  0x0C
 +
| 2
 +
|  Folder counter; tens' digits (i.e. : next folder's number will be ++foldercounter)
 +
|-
 +
|  0x0E
 +
| 2
 +
|  Photo counter (i.e. : next photo's number will be ++photocounter)
 +
|-
 +
|  0x10
 +
| 2
 +
UNKNOWN (0x0000)
 +
|-
 +
|  0x12
 +
| 2
 +
|  Frame counter (i.e. : next frame's number will be ++framecounter)
 +
|-
 +
|  0x14
 +
| 2
 +
CRC16 of whole file
 +
|-
 +
|  0x16
 +
| 2
 +
|  Size of header (0x0018)
 +
|}
 +
It is known that if the offset to entries (size of header) is pushed passed the end of the file, the system freezes, it is not known wether this is exploitable or not. Infact any change which makes it read passed the end of the file makes it crash.
    
== Each entry (16 bytes) ==
 
== Each entry (16 bytes) ==
  4 : Date  
+
{| class="wikitable" border="1"
  8 : Zeroes
+
|-
  1 : Type (1: Frame, 3: Photo)
+
!  OFFSET (bytes)
  1 : UNKNOWN : 8 * n
+
!  SIZE (bytes)
  1 : Sticker (0: None, 4: Star, 8: Clover, 12: Heart, 16: Frame)
+
!  DESCRIPTION (common value)
  1 : UNKNOWN : Always zero
+
|-
 +
|  0x00
 +
| 4
 +
Date (# seconds since Jan/1/2000)
 +
|-
 +
|  0x04
 +
| 8
 +
|  UNKNOWN (0x00 8 times)
 +
|-
 +
|  0x0C
 +
|  4
 +
| flags (see below)
 +
|}
 +
 
 +
=== flags field ===
 +
{| class="wikitable" border="1"
 +
|-
 +
!  OFFSET (bits)
 +
!  SIZE (bits)
 +
!  DESCRIPTION (common value)
 +
|-
 +
|  0
 +
1
 +
|  # folder where the photo is; hundreds' digit (?)
 +
|-
 +
| 1
 +
|  7
 +
|  # folder where the photo is; tens' digits
 +
|-
 +
|  8
 +
|  3
 +
UNKNOWN (000b)
 +
|-
 +
|  11
 +
|  7
 +
| Photo's number minus 1
 +
|-
 +
|  18
 +
|  2
 +
Sticker (0: None, 1: Star, 2: Clover, 3: Heart)
 +
|-
 +
|  20
 +
|  1
 +
|  Type of the entry (0: Photo, 1: Frame)
 +
|-
 +
|  21
 +
|  11
 +
| UNKNOWN (0b 11 times)
 +
|}
    
== Misc information ==
 
== Misc information ==
Line 26: Line 114:  
* SD:\private\ds\app\484E494A\DCIM\100NIN01
 
* SD:\private\ds\app\484E494A\DCIM\100NIN01
 
* SD:\private\ds\app\484E494A\DCIM\100NIN02
 
* SD:\private\ds\app\484E494A\DCIM\100NIN02
 +
 +
== See also ==
 +
* [[User:Ludo6431/pit-read.c | pit.bin file reader]]
 +
* [[User:Remark/Pit-fixcrc.c | pit.bin crc fixer]]
71

edits