root/platform/sx50hs/sub/filewrite_hdr.c

/* [<][>][^][v][top][bottom][index][help] */
   1 #include "lolevel.h"
   2 #include "platform.h"
   3 
   4 typedef struct {
   5     unsigned int address;
   6     unsigned int length;
   7 } cam_ptp_data_chunk; //camera specific structure
   8 
   9 #define MAX_CHUNKS_FOR_FWT 7 // filewritetask is prepared for this many chunks
  10 /*
  11  * fwt_data_struct: defined here as it's camera dependent
  12  * unneeded members are designated with unkn
  13  * file_offset, full_size, seek_flag only needs to be defined for DryOS>=r50 generation cameras
  14  * pdc is always required
  15  * name is not currently used
  16  */
  17 typedef struct
  18 {
  19     int unkn1;
  20     int file_offset;
  21     int full_size;
  22     int unkn2, unkn3;
  23     cam_ptp_data_chunk pdc[MAX_CHUNKS_FOR_FWT];
  24     int seek_flag;      // offset from start 0x4c = 76 bytes = 19 words
  25     int unkn4, unkn5;
  26     char name[32];      // offset from start 0x58 = 88 bytes = 22 words
  27 } fwt_data_struct;
  28 // seek_flag is different:
  29 // seek state is activated (from state 0xc, open) when
  30 // (word at 0x4c) AND 0x40
  31 // OR
  32 // write offset is not 0
  33 #define FWT_MUSTSEEK    0x40   // value of the masked seek_flag indicating seek is required
  34 #define FWT_SEEKMASK    0x40   // masks out unneeded bits of seek_flag
  35 
  36 #include "../../../generic/filewrite.c"

/* [<][>][^][v][top][bottom][index][help] */