CHDK_DE Vorschauversion  Trunk Rev. 6014
 Alle Datenstrukturen Dateien Funktionen Variablen Typdefinitionen Aufzählungen Aufzählungswerte Makrodefinitionen
boot.c-Dateireferenz
#include "lolevel.h"
#include "platform.h"
#include "core.h"
+ Include-Abhängigkeitsdiagramm für boot.c:

gehe zum Quellcode dieser Datei

Funktionen

void __attribute__ ((naked, noinline))
 *-------------------------------------------------------------------— Mehr ...
 
void taskCreateHook (int *p)
 
void boot ()
 

Variablen

const char *const new_sa = &_end
 

Dokumentation der Funktionen

void __attribute__ ( (naked, noinline)  )

*-------------------------------------------------------------------—

!!

IS_ERROR( hSoundHandle )

IS_ERROR( RetCode )

IS_ERROR( RetCode )

IS_ERROR( RetCode )

IS_ERROR( RetCode )

"MOV R3, #0\n" "STR R3, [R9]\n"

TODO! below is from sd400

"MOV R3, #0\n" "STR R3, [R9]\n"

TODO! below is from sd400

Definiert in Zeile 10 der Datei boot.c.

15  {
16  _CreateTask("SpyTask", 0x19, 0x2000, core_spytask, 0);
17 };
void boot ( )

Definiert in Zeile 32 der Datei boot.c.

33 {
34  long *canon_data_src = (void*)0xFFB1E3B0;
35  long *canon_data_dst = (void*)0x1900;
36  long canon_data_len = 0xF160 - 0x1900; // data_end - data_start
37  long *canon_bss_start = (void*)0xF160; // just after data
38  long canon_bss_len = 0xCBD40 - 0xF160;
39 
40  long i;
41 
42 
43  // Enable CPU caches and MPU
44  asm volatile (
45  "MRC p15, 0, R0,c1,c0\n"
46  "ORR R0, R0, #0x1000\n"
47  "ORR R0, R0, #4\n"
48  "ORR R0, R0, #1\n"
49  "MCR p15, 0, R0,c1,c0\n"
50  :::"r0");
51 
52  for(i=0;i<canon_data_len/4;i++)
53  canon_data_dst[i]=canon_data_src[i];
54 
55  for(i=0;i<canon_bss_len/4;i++)
56  canon_bss_start[i]=0;
57 
58  // jump to init-sequence that follows the data-copy-routine
59  asm volatile ("B sub_FF8101A4_my\n");
60 };
void taskCreateHook ( int *  p)

Definiert in Zeile 21 der Datei boot.c.

21  {
22  p-=16;
23  if (p[0]==(int)0xFF821ACC) p[0]=(int)mykbd_task;
24  if (p[0]==(int)0xFF842A44) p[0]=(int)jogdial_task_my;
25  if (p[0]==(int)0xFF85A004) p[0]=(int)movie_record_task;
26  if (p[0]==(int)0xFF85E03C) p[0]=(int)capt_seq_task;
27  if (p[0]==(int)0xFF878F84) p[0]=(int)init_file_modules_task;
28  if (p[0]==(int)0xFF8B6864) p[0]=(int)exp_drv_task;
29  if (p[0]==(int)0xFFA10248) p[0]=(int)filewritetask;
30 }

Variablen-Dokumentation

const char* const new_sa = &_end

Definiert in Zeile 8 der Datei boot.c.