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, unkn4; 23 cam_ptp_data_chunk pdc[MAX_CHUNKS_FOR_FWT]; 24 int seek_flag; 25 char name[32]; // open stage: sub_FFA52A4C (1.00f) --> "ADD R7, R4, #0x54" 26 // offset of 'name' from start = 0x54 = 84 bytes = 21 words 27 } fwt_data_struct; 28 #define FWT_MUSTSEEK 2 // value of the masked seek_flag indicating seek is required 29 #define FWT_SEEKMASK 0xffffffff // masks out unneeded bits of seek_flag 30 31 #include "../../../generic/filewrite.c"