[Tiptoi] FW-Bastel
Sven A. Huerlimann
sh at sighup.ch
Mo Okt 26 00:37:05 CET 2015
Guten Abend.
Ich denke es ist besser, wenn ich meine Bastel-Ergebnisse abseits der
Liste dokumentiere..
Aber einen hab ich noch (reset_vector):
[0x08000000]> s 0x08000034
[0x08000034]> pdf
/ (fcn) fcn.08000034 48
| ;-- fcn.08000034:
| 0x08000034 7c009fe5 ldr r0, [pc, 0x7c]
; [0x80000b8:4]=REG_INT_IRQ
| 0x08000038 0010a0e3 mov r1, 0
| 0x0800003c 001080e5 str r1, [r0]
| 0x08000040 1200a0e3 mov r0, 0x12
| 0x08000044 00f029e1 msr cpsr_fc, r0
| 0x08000048 6c109fe5 ldr r1, [pc, 0x6c]
; [0x80000bc:4]=0x802d000
| 0x0800004c 01d0a0e1 mov sp, r1
| 0x08000050 1300a0e3 mov r0, 0x13
| 0x08000054 00f029e1 msr cpsr_fc, r0
| 0x08000058 60109fe5 ldr r1, [pc, 0x60]
; [0x80000c0:4]=0x802b000
| 0x0800005c 01d0a0e1 mov sp, r1
\ 0x08000060 5cf09fe5 ldr pc, [pc, 0x5c]
; [0x80000c4:4]=event_loop
Und der event_loop (sinngemäss):
void event_loop()
{
l2_config();
printf("asic freq: %d\n", get_asic_freq());
some_initialisation_routine_probably_uart(115200, get_asic_freq());
printf("malloc init\n");
setup_Rambuffer();
setup_SomeCallbacks();
setup_SomeMoreCallbacks();
printf("Open USB interrupt\r\n");
REG_INT_IRQ |= 0x40;
init_USBController();
printf("\r\nEnter event loop ...... \r\n");
while ( 1 )
{
while (!always_return_0_maybe_patch_location());
...
event_loop_do_hard_work(&v1);
}
}
printf ist wahrscheinlich nutzlos.. Ich hab den Verdacht, dass der
Chomptech ASIC gar keinen UART-Block hat.
Grüsse shue
Mehr Informationen über die Mailingliste tiptoi